diff --git a/disclaimers.json b/disclaimers.json index 4dd8c8e1d84..36121d9591b 100644 --- a/disclaimers.json +++ b/disclaimers.json @@ -83,10 +83,6 @@ "api": "bigquerymigration", "package": "@google-cloud/bigquery-migration" }, - { - "api": "bigtable", - "package": "@google-cloud/bigtable" - }, { "api": "cloudbilling", "package": "@google-cloud/billing" @@ -215,10 +211,6 @@ "api": "domains", "package": "@google-cloud/domains" }, - { - "api": "clouderrorreporting", - "package": "@google-cloud/error-reporting" - }, { "api": "essentialcontacts", "package": "@google-cloud/essential-contacts" @@ -311,10 +303,6 @@ "api": "livestream", "package": "@google-cloud/livestream" }, - { - "api": "logging", - "package": "@google-cloud/logging" - }, { "api": "logging", "package": "@google-cloud/logging-winston" @@ -431,10 +419,6 @@ "api": "policysimulator", "package": "@google-cloud/policysimulator" }, - { - "api": "pubsub", - "package": "@google-cloud/pubsub" - }, { "api": "publicca", "package": "@google-cloud/publicca" @@ -679,6 +663,10 @@ "api": "datalabeling", "package": "@google-cloud/datalabeling" }, + { + "api": "datalineage", + "package": "@google-cloud/configmanagement" + }, { "api": "datamanager", "package": "@google-ads/datamanager" @@ -711,6 +699,10 @@ "api": "gdchardwaremanagement", "package": "@google-cloud/gdchardwaremanagement" }, + { + "api": "ces", + "package": "@google-cloud/ces" + }, { "api": "generativelanguage", "package": "@google-ai/generativelanguage" @@ -807,6 +799,10 @@ "api": "modelarmor", "package": "@google-cloud/modelarmor" }, + { + "api": "navigationconnect", + "package": "@google-cloud/navconnect" + }, { "api": "oracledatabase", "package": "@google-cloud/oracledatabase" @@ -870,5 +866,13 @@ { "api": "vectorsearch", "package": "@google-cloud/vectorsearch" + }, + { + "api": "visionai", + "package": "@google-cloud/visionai" + }, + { + "api": "workloadmanager", + "package": "@google-cloud/workloadmanager" } ] \ No newline at end of file diff --git a/discovery/accesscontextmanager-v1.json b/discovery/accesscontextmanager-v1.json index f8dbcb02671..88f22cf45f0 100644 --- a/discovery/accesscontextmanager-v1.json +++ b/discovery/accesscontextmanager-v1.json @@ -896,7 +896,7 @@ ] }, "replaceAll": { - "description": "Replace all existing service perimeters in an access policy with the service perimeters provided. This is done atomically. The long-running operation from this RPC has a successful status after all replacements propagate to long-lasting storage. Replacements containing errors result in an error response for the first error encountered. Upon an error, replacement are cancelled and existing service perimeters are not affected. The Operation.response field contains ReplaceServicePerimetersResponse.", + "description": "Replace all existing service perimeters in an access policy with the service perimeters provided. This is done atomically. The long-running operation from this RPC has a successful status after all replacements propagate to long-lasting storage. Replacements containing errors result in an error response for the first error encountered. Upon an error, replacements are cancelled and existing service perimeters are not affected. The Operation.response field contains ReplaceServicePerimetersResponse.", "flatPath": "v1/accessPolicies/{accessPoliciesId}/servicePerimeters:replaceAll", "httpMethod": "POST", "id": "accesscontextmanager.accessPolicies.servicePerimeters.replaceAll", @@ -1247,20 +1247,20 @@ "permissions": { "methods": { "list": { - "description": "Lists all supported permissions in VPCSC Granular Controls.", + "description": "Lists all supported permissions in VPC Service Controls ingress and egress rules for Granular Controls.", "flatPath": "v1/permissions", "httpMethod": "GET", "id": "accesscontextmanager.permissions.list", "parameterOrder": [], "parameters": { "pageSize": { - "description": "Optional. This flag specifies the maximum number of services to return per page. Default is 100.", + "description": "Optional. This flag specifies the maximum number of services to return per page. Default value is 100.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Optional. Token to start on a later page. Default is the first page.", + "description": "Optional. Use this token to retrieve a specific page of results. Default is the first page.", "location": "query", "type": "string" } @@ -1309,13 +1309,13 @@ "parameterOrder": [], "parameters": { "pageSize": { - "description": "This flag specifies the maximum number of services to return per page. Default is 100.", + "description": "This flag specifies the maximum number of services to return per page. Default value is 100.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Token to start on a later page. Default is the first page.", + "description": "Use this token to retrieve a specific page of results. Default is the first page.", "location": "query", "type": "string" } @@ -1331,7 +1331,7 @@ } } }, - "revision": "20260215", + "revision": "20260426", "rootUrl": "https://accesscontextmanager.googleapis.com/", "schemas": { "AccessContextManagerOperationMetadata": { @@ -1786,7 +1786,7 @@ "id": "EgressFrom", "properties": { "identities": { - "description": "A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported.", + "description": "A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.", "items": { "type": "string" }, @@ -2011,7 +2011,7 @@ "id": "IngressFrom", "properties": { "identities": { - "description": "A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported.", + "description": "A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.", "items": { "type": "string" }, @@ -2225,11 +2225,11 @@ "id": "ListSupportedPermissionsResponse", "properties": { "nextPageToken": { - "description": "The pagination token to retrieve the next page of results. If the value is empty, no further results remain.", + "description": "Use this pagination token to retrieve the next page of results. An empty value indicates that no further results are available.", "type": "string" }, "supportedPermissions": { - "description": "List of VPC-SC supported permissions.", + "description": "List of VPC Service Controls supported permissions.", "items": { "type": "string" }, @@ -2243,7 +2243,7 @@ "id": "ListSupportedServicesResponse", "properties": { "nextPageToken": { - "description": "The pagination token to retrieve the next page of results. If the value is empty, no further results remain.", + "description": "Use this pagination token to retrieve the next page of results. An empty value indicates that no further results are available.", "type": "string" }, "supportedServices": { diff --git a/discovery/adexchangebuyer2-v2beta1.json b/discovery/adexchangebuyer2-v2beta1.json index 91cff05e188..40b50550dac 100644 --- a/discovery/adexchangebuyer2-v2beta1.json +++ b/discovery/adexchangebuyer2-v2beta1.json @@ -12,7 +12,7 @@ "baseUrl": "https://adexchangebuyer.googleapis.com/", "batchPath": "batch", "canonicalName": "AdExchangeBuyerII", - "description": "Accesses the latest features for managing Authorized Buyers accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals.", + "description": "Access the latest features for managing Authorized Buyers accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals.", "discoveryVersion": "v1", "documentationLink": "https://developers.google.com/authorized-buyers/apis/reference/rest/", "icons": { @@ -3115,7 +3115,7 @@ } } }, - "revision": "20251203", + "revision": "20260319", "rootUrl": "https://adexchangebuyer.googleapis.com/", "schemas": { "AbsoluteDateRange": { diff --git a/discovery/admin-directory_v1.json b/discovery/admin-directory_v1.json index 49f7cf8525c..992ad8e59fd 100644 --- a/discovery/admin-directory_v1.json +++ b/discovery/admin-directory_v1.json @@ -454,7 +454,7 @@ "type": "string" }, "query": { - "description": "Search string in the format given at https://developers.google.com/workspace/admin/directory/v1/list-query-operators", + "description": "Search string in the format given at [List query operators](https://developers.google.com/workspace/admin/directory/v1/list-query-operators).", "location": "query", "type": "string" }, @@ -657,7 +657,7 @@ "type": "string" }, "filter": { - "description": "Optional. Search string in the format given at https://developers.google.com/workspace/admin/directory/v1/list-query-operators", + "description": "Optional. Search string in the format given at [List query operators](https://developers.google.com/workspace/admin/directory/v1/list-query-operators).", "location": "query", "type": "string" }, @@ -3890,7 +3890,7 @@ "users": { "methods": { "createGuest": { - "description": "Create a guest user with access to a [subset of Workspace capabilities](https://support.google.com/a/answer/16558545?hl=en). This feature is currently in Alpha. Please reach out to support if you are interested in trying this feature.", + "description": "Create a guest user with access to a [subset of Workspace capabilities](https://support.google.com/a/answer/16558545). This feature is currently in Alpha. Please reach out to support if you are interested in trying this feature.", "flatPath": "admin/directory/v1/users:createGuest", "httpMethod": "POST", "id": "directory.users.createGuest", @@ -4729,7 +4729,7 @@ } } }, - "revision": "20260210", + "revision": "20260421", "rootUrl": "https://admin.googleapis.com/", "schemas": { "Alias": { @@ -8491,7 +8491,7 @@ "id": "UserLocation", "properties": { "area": { - "description": "Textual location. This is most useful for display purposes to concisely describe the location. For example 'Mountain View, CA', 'Near Seattle', 'US-NYC-9TH 9A209A.''", + "description": "Required. Textual location. This is most useful for display purposes to concisely describe the location. For example 'Mountain View, CA', 'Near Seattle', 'US-NYC-9TH 9A209A.''", "type": "string" }, "buildingId": { diff --git a/discovery/admin-reports_v1.json b/discovery/admin-reports_v1.json index 4455ba5d23d..b941036aa46 100644 --- a/discovery/admin-reports_v1.json +++ b/discovery/admin-reports_v1.json @@ -247,6 +247,11 @@ "pattern": "(id:[a-z0-9]+(,id:[a-z0-9]+)*)", "type": "string" }, + "includeSensitiveData": { + "description": "Optional. When set to `true`, this field allows sensitive user-generated content to be included in the returned audit logs. This parameter is supported only for Rules (DLP) and Chat applications; using it with any other application will result in a permission error.", + "location": "query", + "type": "boolean" + }, "maxResults": { "default": "1000", "description": "Determines how many activity records are shown on each response page. For example, if the request sets `maxResults=1` and the report has two activities, the report has two pages. The response's `nextPageToken` property has the token to the second page. The `maxResults` query string is optional in the request. The default value is 1000.", @@ -681,7 +686,7 @@ } } }, - "revision": "20260223", + "revision": "20260317", "rootUrl": "https://admin.googleapis.com/", "schemas": { "Activities": { @@ -844,6 +849,76 @@ }, "type": "array" }, + "sensitiveParameters": { + "description": "Includes sensitive parameter value pairs for various applications.", + "items": { + "properties": { + "boolValue": { + "description": "Boolean value of the parameter.", + "type": "boolean" + }, + "intValue": { + "description": "Integer value of the parameter.", + "format": "int64", + "type": "string" + }, + "messageValue": { + "description": "Nested parameter value pairs associated with this parameter. Complex value type for a parameter are returned as a list of parameter values. For example, the address parameter may have a value as `[{parameter: [{name: city, value: abc}]}]`", + "properties": { + "parameter": { + "description": "Parameter values", + "items": { + "$ref": "NestedParameter" + }, + "type": "array" + } + }, + "type": "object" + }, + "multiIntValue": { + "description": "Integer values of the parameter.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "multiMessageValue": { + "description": "List of `messageValue` objects.", + "items": { + "properties": { + "parameter": { + "description": "Parameter values", + "items": { + "$ref": "NestedParameter" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "multiValue": { + "description": "String values of the parameter.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The name of the parameter.", + "type": "string" + }, + "value": { + "description": "String value of the parameter.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, "status": { "$ref": "ActivityEventsStatus", "description": "Status of the event. Note: Not all events have status." @@ -1033,6 +1108,17 @@ }, "type": "object" }, + "CustomerIdentity": { + "description": "Identity of the Google Workspace customer who owns the resource.", + "id": "CustomerIdentity", + "properties": { + "id": { + "description": "Customer id.", + "type": "string" + } + }, + "type": "object" + }, "Date": { "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp", "id": "Date", @@ -1191,6 +1277,21 @@ }, "type": "object" }, + "GroupIdentity": { + "description": "Identity of the group who owns the resource.", + "id": "GroupIdentity", + "properties": { + "groupEmail": { + "description": "Group email.", + "type": "string" + }, + "id": { + "description": "Group gaia id.", + "type": "string" + } + }, + "type": "object" + }, "NestedParameter": { "description": "JSON template for a parameter used in various reports.", "id": "NestedParameter", @@ -1237,6 +1338,43 @@ }, "type": "object" }, + "OwnerDetails": { + "description": "Details of the owner of the resource.", + "id": "OwnerDetails", + "properties": { + "ownerIdentity": { + "description": "Identity details of the owner(s) of the resource.", + "items": { + "$ref": "OwnerIdentity" + }, + "type": "array" + }, + "ownerType": { + "description": "Type of the owner of the resource.", + "type": "string" + } + }, + "type": "object" + }, + "OwnerIdentity": { + "description": "Identity details of the owner of the resource.", + "id": "OwnerIdentity", + "properties": { + "customerIdentity": { + "$ref": "CustomerIdentity", + "description": "Identity of the Google Workspace customer who owns the resource." + }, + "groupIdentity": { + "$ref": "GroupIdentity", + "description": "Identity of the group who owns the resource." + }, + "userIdentity": { + "$ref": "UserIdentity", + "description": "Identity of the user who owns the resource." + } + }, + "type": "object" + }, "Reason": { "description": "The reason why the label/field was applied.", "id": "Reason", @@ -1260,9 +1398,13 @@ "type": "array" }, "id": { - "description": "Identifier of the resource.", + "description": "Identifier of the resource, such as a doc_id for a Drive document, a conference_id for a Meet conference, or a \"gaia_id/rfc2822_message_id\" for an email.", "type": "string" }, + "ownerDetails": { + "$ref": "OwnerDetails", + "description": "Owner details of the resource." + }, "relation": { "description": "Defines relationship of the resource to the events", "type": "string" @@ -1438,6 +1580,21 @@ } }, "type": "object" + }, + "UserIdentity": { + "description": "Identity of the user who owns the resource.", + "id": "UserIdentity", + "properties": { + "id": { + "description": "User gaia id.", + "type": "string" + }, + "userEmail": { + "description": "User email.", + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/discovery/agentregistry-v1alpha.json b/discovery/agentregistry-v1alpha.json new file mode 100644 index 00000000000..87089f460bf --- /dev/null +++ b/discovery/agentregistry-v1alpha.json @@ -0,0 +1,2068 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/agentregistry.read-only": { + "description": "See your Google Cloud Agent Registry data and the email address of your Google Account" + }, + "https://www.googleapis.com/auth/agentregistry.read-write": { + "description": "See, edit, configure, and delete your Google Cloud Agent Registry data and see the email address for your Google Account" + }, + "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." + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud services and see the email address of your Google Account" + } + } + } + }, + "basePath": "", + "baseUrl": "https://agentregistry.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Agent Registry", + "description": "Agent Registry is a centralized, unified catalog that lets you store, discover, and govern Model Context Protocol (MCP) servers, tools, and AI agents within Google Cloud.", + "discoveryVersion": "v1", + "documentationLink": "https://docs.cloud.google.com/agent-registry/overview", + "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": "agentregistry:v1alpha", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://agentregistry.mtls.googleapis.com/", + "name": "agentregistry", + "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": "agentregistry.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": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", + "flatPath": "v1alpha/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "agentregistry.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "extraLocationTypes": { + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", + "location": "query", + "repeated": true, + "type": "string" + }, + "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": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "agents": { + "methods": { + "get": { + "description": "Gets details of a single Agent.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}", + "httpMethod": "GET", + "id": "agentregistry.projects.locations.agents.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Agent" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists Agents in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/agents", + "httpMethod": "GET", + "id": "agentregistry.projects.locations.agents.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 ListAgentsRequest", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/agents", + "response": { + "$ref": "ListAgentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "search": { + "description": "Searches Agents in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/agents:search", + "httpMethod": "POST", + "id": "agentregistry.projects.locations.agents.search", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Parent value for SearchAgentsRequest. Format: `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/agents:search", + "request": { + "$ref": "SearchAgentsRequest" + }, + "response": { + "$ref": "SearchAgentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + }, + "bindings": { + "methods": { + "create": { + "description": "Creates a new Binding in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/bindings", + "httpMethod": "POST", + "id": "agentregistry.projects.locations.bindings.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "bindingId": { + "description": "Required. The ID to use for the binding, which will become the final component of the binding's resource name. This value should be 4-63 characters, and must conform to RFC-1034. Specifically, it must match the regular expression `^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$`.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location to create the Binding in. Expected format: `projects/{project}/locations/{location}`.", + "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" + } + }, + "path": "v1alpha/{+parent}/bindings", + "request": { + "$ref": "Binding" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Binding.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/bindings/{bindingsId}", + "httpMethod": "DELETE", + "id": "agentregistry.projects.locations.bindings.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Binding. Format: `projects/{project}/locations/{location}/bindings/{binding}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/bindings/[^/]+$", + "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/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "fetchAvailable": { + "description": "Fetches available Bindings.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/bindings:fetchAvailable", + "httpMethod": "GET", + "id": "agentregistry.projects.locations.bindings.fetchAvailable", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. Page size is 500 if unspecified and is capped at `500` even if a larger value is given.", + "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. The parent, in the format `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "sourceIdentifier": { + "description": "The identifier of the source Agent. Format: * `urn:agent:{publisher}:{namespace}:{name}`", + "location": "query", + "type": "string" + }, + "targetIdentifier": { + "description": "Optional. The identifier of the target Agent, MCP Server, or Endpoint. Format: * `urn:agent:{publisher}:{namespace}:{name}` * `urn:mcp:{publisher}:{namespace}:{name}` * `urn:endpoint:{publisher}:{namespace}:{name}`", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+parent}/bindings:fetchAvailable", + "response": { + "$ref": "FetchAvailableBindingsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "get": { + "description": "Gets details of a single Binding.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/bindings/{bindingsId}", + "httpMethod": "GET", + "id": "agentregistry.projects.locations.bindings.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Binding. Format: `projects/{project}/locations/{location}/bindings/{binding}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/bindings/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Binding" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists Bindings in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/bindings", + "httpMethod": "GET", + "id": "agentregistry.projects.locations.bindings.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A query string used to filter the list of bindings returned. The filter expression must follow AIP-160 syntax.", + "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. Page size is 500 if unspecified and is capped at `500` even if a larger value is given.", + "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. The project and location to list bindings in. Expected format: `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/bindings", + "response": { + "$ref": "ListBindingsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the parameters of a single Binding.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/bindings/{bindingsId}", + "httpMethod": "PATCH", + "id": "agentregistry.projects.locations.bindings.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Identifier. The resource name of the Binding. Format: `projects/{project}/locations/{location}/bindings/{binding}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/bindings/[^/]+$", + "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 Binding 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 present in the request will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "request": { + "$ref": "Binding" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "endpoints": { + "methods": { + "get": { + "description": "Gets details of a single Endpoint.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/endpoints/{endpointsId}", + "httpMethod": "GET", + "id": "agentregistry.projects.locations.endpoints.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the endpoint to retrieve. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/endpoints/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Endpoint" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists Endpoints in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/endpoints", + "httpMethod": "GET", + "id": "agentregistry.projects.locations.endpoints.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A query string used to filter the list of endpoints returned. The filter expression must follow AIP-160 syntax. Filtering is supported on the `name`, `display_name`, `description`, `version`, and `interfaces` fields. Some examples: * `name = \"projects/p1/locations/l1/endpoints/e1\"` * `display_name = \"my-endpoint\"` * `description = \"my-endpoint-description\"` * `version = \"v1\"` * `interfaces.transport = \"HTTP_JSON\"`", + "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. The project and location to list endpoints in. Expected format: `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/endpoints", + "response": { + "$ref": "ListEndpointsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + }, + "mcpServers": { + "methods": { + "get": { + "description": "Gets details of a single McpServer.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/mcpServers/{mcpServersId}", + "httpMethod": "GET", + "id": "agentregistry.projects.locations.mcpServers.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/mcpServers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "McpServer" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists McpServers in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/mcpServers", + "httpMethod": "GET", + "id": "agentregistry.projects.locations.mcpServers.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 ListMcpServersRequest. Format: `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/mcpServers", + "response": { + "$ref": "ListMcpServersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "search": { + "description": "Searches McpServers in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/mcpServers:search", + "httpMethod": "POST", + "id": "agentregistry.projects.locations.mcpServers.search", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Parent value for SearchMcpServersRequest. Format: `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/mcpServers:search", + "request": { + "$ref": "SearchMcpServersRequest" + }, + "response": { + "$ref": "SearchMcpServersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + }, + "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": "agentregistry.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/agentregistry.read-write", + "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": "agentregistry.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/agentregistry.read-write", + "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": "agentregistry.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/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "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": "agentregistry.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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+name}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "services": { + "methods": { + "create": { + "description": "Creates a new Service in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/services", + "httpMethod": "POST", + "id": "agentregistry.projects.locations.services.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project and location to create the Service in. Expected format: `projects/{project}/locations/{location}`.", + "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" + }, + "serviceId": { + "description": "Required. The ID to use for the service, which will become the final component of the service's resource name. This value should be 4-63 characters, and valid characters are `/a-z-/`.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+parent}/services", + "request": { + "$ref": "Service" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Service.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/services/{servicesId}", + "httpMethod": "DELETE", + "id": "agentregistry.projects.locations.services.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Service. Format: `projects/{project}/locations/{location}/services/{service}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", + "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/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Service.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/services/{servicesId}", + "httpMethod": "GET", + "id": "agentregistry.projects.locations.services.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Service. Format: `projects/{project}/locations/{location}/services/{service}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Service" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists Services in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/services", + "httpMethod": "GET", + "id": "agentregistry.projects.locations.services.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A query string used to filter the list of services returned. The filter expression must follow AIP-160 syntax. Filtering is supported on the `name`, `display_name`, `description`, and `labels` fields. Some examples: * `name = \"projects/p1/locations/l1/services/s1\"` * `display_name = \"my-service\"` * `description : \"myservice description\"` * `labels.env = \"prod\"`", + "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. The project and location to list services in. Expected format: `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/services", + "response": { + "$ref": "ListServicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-only", + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the parameters of a single Service.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/services/{servicesId}", + "httpMethod": "PATCH", + "id": "agentregistry.projects.locations.services.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name of the Service. Format: `projects/{project}/locations/{location}/services/{service}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", + "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 Service 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 present in the request will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "request": { + "$ref": "Service" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/agentregistry.read-write", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20260430", + "rootUrl": "https://agentregistry.googleapis.com/", + "schemas": { + "Agent": { + "description": "Represents an Agent. \"A2A\" below refers to the Agent-to-Agent protocol.", + "id": "Agent", + "properties": { + "agentId": { + "description": "Output only. A stable, globally unique identifier for agents.", + "readOnly": true, + "type": "string" + }, + "attributes": { + "additionalProperties": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "description": "Output only. Attributes of the Agent. Valid values: * `agentregistry.googleapis.com/system/Framework`: {\"framework\": \"google-adk\"} - the agent framework used to develop the Agent. Example values: \"google-adk\", \"langchain\", \"custom\". * `agentregistry.googleapis.com/system/RuntimeIdentity`: {\"principal\": \"principal://...\"} - the runtime identity associated with the Agent. * `agentregistry.googleapis.com/system/RuntimeReference`: {\"uri\": \"//...\"} - the URI of the underlying resource hosting the Agent, for example, the Reasoning Engine URI.", + "readOnly": true, + "type": "object" + }, + "card": { + "$ref": "Card", + "description": "Output only. Full Agent Card payload, when available.", + "readOnly": true + }, + "createTime": { + "description": "Output only. Create time.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Output only. The description of the Agent, often obtained from the A2A Agent Card. Empty if Agent Card has no description.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Output only. The display name of the agent, often obtained from the A2A Agent Card.", + "readOnly": true, + "type": "string" + }, + "location": { + "description": "Output only. The location where agent is hosted. The value is defined by the hosting environment (i.e. cloud provider).", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of an Agent. Format: `projects/{project}/locations/{location}/agents/{agent}`.", + "type": "string" + }, + "protocols": { + "description": "Output only. The connection details for the Agent.", + "items": { + "$ref": "Protocol" + }, + "readOnly": true, + "type": "array" + }, + "skills": { + "description": "Output only. Skills the agent possesses, often obtained from the A2A Agent Card.", + "items": { + "$ref": "Skill" + }, + "readOnly": true, + "type": "array" + }, + "uid": { + "description": "Output only. A universally unique identifier for the Agent.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "version": { + "description": "Output only. The version of the Agent, often obtained from the A2A Agent Card. Empty if Agent Card has no version or agent is not an A2A Agent.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "AgentSpec": { + "description": "The spec of the agent.", + "id": "AgentSpec", + "properties": { + "content": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The content of the Agent spec in the JSON format. This payload is validated against the schema for the specified type. The content size is limited to `10KB`.", + "type": "object" + }, + "type": { + "description": "Required. The type of the agent spec content.", + "enum": [ + "TYPE_UNSPECIFIED", + "NO_SPEC", + "A2A_AGENT_CARD" + ], + "enumDescriptions": [ + "Unspecified type.", + "There is no spec for the Agent. The `content` field must be empty.", + "The content is an A2A Agent Card following the A2A specification. The `interfaces` field must be empty." + ], + "type": "string" + } + }, + "type": "object" + }, + "Annotations": { + "description": "Annotations describing the characteristics and behavior of a tool or operation.", + "id": "Annotations", + "properties": { + "destructiveHint": { + "description": "Output only. If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates. NOTE: This property is meaningful only when `read_only_hint == false` Default: true", + "readOnly": true, + "type": "boolean" + }, + "idempotentHint": { + "description": "Output only. If true, calling the tool repeatedly with the same arguments will have no additional effect on its environment. NOTE: This property is meaningful only when `read_only_hint == false` Default: false", + "readOnly": true, + "type": "boolean" + }, + "openWorldHint": { + "description": "Output only. If true, this tool may interact with an \"open world\" of external entities. If false, the tool's domain of interaction is closed. For example, the world of a web search tool is open, whereas that of a memory tool is not. Default: true", + "readOnly": true, + "type": "boolean" + }, + "readOnlyHint": { + "description": "Output only. If true, the tool does not modify its environment. Default: false", + "readOnly": true, + "type": "boolean" + }, + "title": { + "description": "Output only. A human-readable title for the tool.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "AuthProviderBinding": { + "description": "The AuthProvider of the Binding.", + "id": "AuthProviderBinding", + "properties": { + "authProvider": { + "description": "Required. The resource name of the target AuthProvider. Format: * `projects/{project}/locations/{location}/authProviders/{auth_provider}`", + "type": "string" + }, + "continueUri": { + "description": "Optional. The continue URI of the AuthProvider. The URI is used to reauthenticate the user and finalize the managed OAuth flow.", + "type": "string" + }, + "scopes": { + "description": "Optional. The list of OAuth2 scopes of the AuthProvider.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Binding": { + "description": "Represents a user-defined Binding.", + "id": "Binding", + "properties": { + "authProviderBinding": { + "$ref": "AuthProviderBinding", + "description": "The binding for AuthProvider." + }, + "createTime": { + "description": "Output only. Timestamp when this binding was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. User-defined description of a Binding. Can have a maximum length of `2048` characters.", + "type": "string" + }, + "displayName": { + "description": "Optional. User-defined display name for the Binding. Can have a maximum length of `63` characters.", + "type": "string" + }, + "name": { + "description": "Required. Identifier. The resource name of the Binding. Format: `projects/{project}/locations/{location}/bindings/{binding}`.", + "type": "string" + }, + "source": { + "$ref": "Source", + "description": "Required. The target Agent of the Binding." + }, + "target": { + "$ref": "Target", + "description": "Required. The target Agent Registry Resource of the Binding." + }, + "updateTime": { + "description": "Output only. Timestamp when this binding was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" + }, + "Card": { + "description": "Full Agent Card payload, often obtained from the A2A Agent Card.", + "id": "Card", + "properties": { + "content": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. The content of the agent card.", + "readOnly": true, + "type": "object" + }, + "type": { + "description": "Output only. The type of agent card.", + "enum": [ + "TYPE_UNSPECIFIED", + "A2A_AGENT_CARD" + ], + "enumDescriptions": [ + "Unspecified type.", + "Indicates that the card is an A2A Agent Card." + ], + "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", + "properties": {}, + "type": "object" + }, + "Endpoint": { + "description": "Represents an Endpoint.", + "id": "Endpoint", + "properties": { + "attributes": { + "additionalProperties": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "description": "Output only. Attributes of the Endpoint. Valid values: * `agentregistry.googleapis.com/system/RuntimeReference`: {\"uri\": \"//...\"} - the URI of the underlying resource hosting the Endpoint, for example, the GKE Deployment.", + "readOnly": true, + "type": "object" + }, + "createTime": { + "description": "Output only. Create time.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Output only. Description of an Endpoint.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Output only. Display name for the Endpoint.", + "readOnly": true, + "type": "string" + }, + "endpointId": { + "description": "Output only. A stable, globally unique identifier for Endpoint.", + "readOnly": true, + "type": "string" + }, + "interfaces": { + "description": "Required. The connection details for the Endpoint.", + "items": { + "$ref": "Interface" + }, + "type": "array" + }, + "name": { + "description": "Identifier. The resource name of the Endpoint. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "EndpointSpec": { + "description": "The spec of the endpoint.", + "id": "EndpointSpec", + "properties": { + "content": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The content of the endpoint spec. Reserved for future use.", + "type": "object" + }, + "type": { + "description": "Required. The type of the endpoint spec content.", + "enum": [ + "TYPE_UNSPECIFIED", + "NO_SPEC" + ], + "enumDescriptions": [ + "Unspecified type.", + "There is no spec for the Endpoint. The `content` field must be empty." + ], + "type": "string" + } + }, + "type": "object" + }, + "FetchAvailableBindingsResponse": { + "description": "Message for response to fetching available Bindings.", + "id": "FetchAvailableBindingsResponse", + "properties": { + "bindings": { + "description": "The list of Bindings.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + } + }, + "type": "object" + }, + "Interface": { + "description": "Represents the connection details for an Agent or MCP Server.", + "id": "Interface", + "properties": { + "protocolBinding": { + "description": "Required. The protocol binding of the interface.", + "enum": [ + "PROTOCOL_BINDING_UNSPECIFIED", + "JSONRPC", + "GRPC", + "HTTP_JSON" + ], + "enumDescriptions": [ + "Unspecified transport protocol.", + "JSON-RPC specification.", + "gRPC specification.", + "HTTP+JSON specification." + ], + "type": "string" + }, + "url": { + "description": "Required. The destination URL.", + "type": "string" + } + }, + "type": "object" + }, + "ListAgentsResponse": { + "description": "Message for response to listing Agents", + "id": "ListAgentsResponse", + "properties": { + "agents": { + "description": "The list of Agents.", + "items": { + "$ref": "Agent" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + } + }, + "type": "object" + }, + "ListBindingsResponse": { + "description": "Message for response to listing Bindings", + "id": "ListBindingsResponse", + "properties": { + "bindings": { + "description": "The list of Binding resources matching the parent and filter criteria in the request. Each Binding resource follows the format: `projects/{project}/locations/{location}/bindings/{binding}`.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return. Used in page_token.", + "type": "string" + } + }, + "type": "object" + }, + "ListEndpointsResponse": { + "description": "Message for response to listing Endpoints", + "id": "ListEndpointsResponse", + "properties": { + "endpoints": { + "description": "The list of Endpoint resources matching the parent and filter criteria in the request. Each Endpoint resource follows the format: `projects/{project}/locations/{location}/endpoints/{endpoint}`.", + "items": { + "$ref": "Endpoint" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return. Used in page_token.", + "type": "string" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListMcpServersResponse": { + "description": "Message for response to listing McpServers", + "id": "ListMcpServersResponse", + "properties": { + "mcpServers": { + "description": "The list of McpServers.", + "items": { + "$ref": "McpServer" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + } + }, + "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" + }, + "unreachable": { + "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListServicesResponse": { + "description": "Message for response to listing Services", + "id": "ListServicesResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return. Used in page_token.", + "type": "string" + }, + "services": { + "description": "The list of Service resources matching the parent and filter criteria in the request. Each Service resource follows the format: `projects/{project}/locations/{location}/services/{service}`.", + "items": { + "$ref": "Service" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents a Google Cloud location.", + "id": "Location", + "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" + }, + "McpServer": { + "description": "Represents an MCP (Model Context Protocol) Server.", + "id": "McpServer", + "properties": { + "attributes": { + "additionalProperties": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "description": "Output only. Attributes of the MCP Server. Valid values: * `agentregistry.googleapis.com/system/RuntimeIdentity`: {\"principal\": \"principal://...\"} - the runtime identity associated with the MCP Server. * `agentregistry.googleapis.com/system/RuntimeReference`: {\"uri\": \"//...\"} - the URI of the underlying resource hosting the MCP Server, for example, the GKE Deployment.", + "readOnly": true, + "type": "object" + }, + "createTime": { + "description": "Output only. Create time.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Output only. The description of the MCP Server.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Output only. The display name of the MCP Server.", + "readOnly": true, + "type": "string" + }, + "interfaces": { + "description": "Output only. The connection details for the MCP Server.", + "items": { + "$ref": "Interface" + }, + "readOnly": true, + "type": "array" + }, + "mcpServerId": { + "description": "Output only. A stable, globally unique identifier for MCP Servers.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the MCP Server. Format: `projects/{project}/locations/{location}/mcpServers/{mcp_server}`.", + "type": "string" + }, + "tools": { + "description": "Output only. Tools provided by the MCP Server.", + "items": { + "$ref": "Tool" + }, + "readOnly": true, + "type": "array" + }, + "updateTime": { + "description": "Output only. Update time.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "McpServerSpec": { + "description": "The spec of the MCP Server.", + "id": "McpServerSpec", + "properties": { + "content": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The content of the MCP Server spec. This payload is validated against the schema for the specified type. The content size is limited to `10KB`.", + "type": "object" + }, + "type": { + "description": "Required. The type of the MCP Server spec content.", + "enum": [ + "TYPE_UNSPECIFIED", + "NO_SPEC", + "TOOL_SPEC" + ], + "enumDescriptions": [ + "Unspecified type.", + "There is no spec for the MCP Server. The `content` field must be empty.", + "The content is a MCP Tool Spec following the One MCP specification. The payload is the same as the `tools/list` response." + ], + "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 been cancelled successfully have google.longrunning.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" + }, + "Protocol": { + "description": "Represents the protocol of an Agent.", + "id": "Protocol", + "properties": { + "interfaces": { + "description": "Output only. The connection details for the Agent.", + "items": { + "$ref": "Interface" + }, + "readOnly": true, + "type": "array" + }, + "protocolVersion": { + "description": "Output only. The version of the protocol, for example, the A2A Agent Card version.", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Output only. The type of the protocol.", + "enum": [ + "TYPE_UNSPECIFIED", + "A2A_AGENT", + "CUSTOM" + ], + "enumDescriptions": [ + "Unspecified type.", + "The interfaces point to an A2A Agent following the A2A specification.", + "Agent does not follow any standard protocol." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "SearchAgentsRequest": { + "description": "Message for searching Agents", + "id": "SearchAgentsRequest", + "properties": { + "pageSize": { + "description": "Optional. The maximum number of search results to return per page. The page size is capped at `100`, even if a larger value is specified. A negative value will result in an `INVALID_ARGUMENT` error. If unspecified or set to `0`, a default value of `20` will be used. The server may return fewer results than requested.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "Optional. If present, retrieve the next batch of results from the preceding call to this method. `page_token` must be the value of `next_page_token` from the previous response. The values of all other method parameters, must be identical to those in the previous call.", + "type": "string" + }, + "searchString": { + "description": "Optional. Search criteria used to select the Agents to return. If no search criteria is specified then all accessible Agents will be returned. Search expressions can be used to restrict results based upon searchable fields, where the operators can be used along with the suffix wildcard symbol `*`. See [instructions](https://docs.cloud.google.com/agent-registry/search-agents-and-tools) for more details. Allowed operators: `=`, `:`, `NOT`, `AND`, `OR`, and `()`. Searchable fields: | Field | `=` | `:` | `*` | Keyword Search | |--------------------|-----|-----|-----|----------------| | agentId | Yes | Yes | Yes | Included | | name | No | Yes | Yes | Included | | displayName | No | Yes | Yes | Included | | description | No | Yes | No | Included | | skills | No | Yes | No | Included | | skills.id | No | Yes | No | Included | | skills.name | No | Yes | No | Included | | skills.description | No | Yes | No | Included | | skills.tags | No | Yes | No | Included | | skills.examples | No | Yes | No | Included | Examples: * `agentId=\"urn:agent:projects-123:projects:123:locations:us-central1:reasoningEngines:1234\"` to find the agent with the specified agent ID. * `name:important` to find agents whose name contains `important` as a word. * `displayName:works*` to find agents whose display name contains words that start with `works`. * `skills.tags:test` to find agents whose skills tags contain `test`. * `planner OR booking` to find agents whose metadata contains the words `planner` or `booking`.", + "type": "string" + } + }, + "type": "object" + }, + "SearchAgentsResponse": { + "description": "Message for response to searching Agents", + "id": "SearchAgentsResponse", + "properties": { + "agents": { + "description": "A list of Agents that match the `search_string`.", + "items": { + "$ref": "Agent" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If there are more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`.", + "type": "string" + } + }, + "type": "object" + }, + "SearchMcpServersRequest": { + "description": "Message for searching MCP Servers", + "id": "SearchMcpServersRequest", + "properties": { + "pageSize": { + "description": "Optional. The maximum number of search results to return per page. The page size is capped at `100`, even if a larger value is specified. A negative value will result in an `INVALID_ARGUMENT` error. If unspecified or set to `0`, a default value of `20` will be used. The server may return fewer results than requested.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "Optional. If present, retrieve the next batch of results from the preceding call to this method. `page_token` must be the value of `next_page_token` from the previous response. The values of all other method parameters, must be identical to those in the previous call.", + "type": "string" + }, + "searchString": { + "description": "Optional. Search criteria used to select the MCP Servers to return. If no search criteria is specified then all accessible MCP Servers will be returned. Search expressions can be used to restrict results based upon searchable fields, where the operators can be used along with the suffix wildcard symbol `*`. See [instructions](https://docs.cloud.google.com/agent-registry/search-agents-and-tools) for more details. Allowed operators: `=`, `:`, `NOT`, `AND`, `OR`, and `()`. Searchable fields: | Field | `=` | `:` | `*` | Keyword Search | |--------------------|-----|-----|-----|----------------| | mcpServerId | Yes | Yes | Yes | Included | | name | No | Yes | Yes | Included | | displayName | No | Yes | Yes | Included | Examples: * `mcpServerId=\"urn:mcp:projects-123:projects:123:locations:us-central1:agentregistry:services:service-id\"` to find the MCP Server with the specified MCP Server ID. * `name:important` to find MCP Servers whose name contains `important` as a word. * `displayName:works*` to find MCP Servers whose display name contains words that start with `works`. * `planner OR booking` to find MCP Servers whose metadata contains the words `planner` or `booking`. * `mcpServerId:service-id AND (displayName:planner OR displayName:booking)` to find MCP Servers whose MCP Server ID contains `service-id` and whose display name contains `planner` or `booking`.", + "type": "string" + } + }, + "type": "object" + }, + "SearchMcpServersResponse": { + "description": "Message for response to searching MCP Servers", + "id": "SearchMcpServersResponse", + "properties": { + "mcpServers": { + "description": "A list of McpServers that match the `search_string`.", + "items": { + "$ref": "McpServer" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If there are more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`.", + "type": "string" + } + }, + "type": "object" + }, + "Service": { + "description": "Represents a user-defined Service.", + "id": "Service", + "properties": { + "agentSpec": { + "$ref": "AgentSpec", + "description": "Optional. The spec of the Agent. When `agent_spec` is set, the type of the service is Agent." + }, + "createTime": { + "description": "Output only. Create time.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. User-defined description of an Service. Can have a maximum length of `2048` characters.", + "type": "string" + }, + "displayName": { + "description": "Optional. User-defined display name for the Service. Can have a maximum length of `63` characters.", + "type": "string" + }, + "endpointSpec": { + "$ref": "EndpointSpec", + "description": "Optional. The spec of the Endpoint. When `endpoint_spec` is set, the type of the service is Endpoint." + }, + "interfaces": { + "description": "Optional. The connection details for the Service.", + "items": { + "$ref": "Interface" + }, + "type": "array" + }, + "mcpServerSpec": { + "$ref": "McpServerSpec", + "description": "Optional. The spec of the MCP Server. When `mcp_server_spec` is set, the type of the service is MCP Server." + }, + "name": { + "description": "Identifier. The resource name of the Service. Format: `projects/{project}/locations/{location}/services/{service}`.", + "type": "string" + }, + "registryResource": { + "description": "Output only. The resource name of the resulting Agent, MCP Server, or Endpoint. Format: * `projects/{project}/locations/{location}/mcpServers/{mcp_server}` * `projects/{project}/locations/{location}/agents/{agent}` * `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Skill": { + "description": "Represents the skills of an Agent.", + "id": "Skill", + "properties": { + "description": { + "description": "Output only. A more detailed description of the skill.", + "readOnly": true, + "type": "string" + }, + "examples": { + "description": "Output only. Example prompts or scenarios this skill can handle.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "id": { + "description": "Output only. A unique identifier for the agent's skill.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Output only. A human-readable name for the agent's skill.", + "readOnly": true, + "type": "string" + }, + "tags": { + "description": "Output only. Keywords describing the skill.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "Source": { + "description": "The source of the Binding.", + "id": "Source", + "properties": { + "identifier": { + "description": "The identifier of the source Agent. Format: * `urn:agent:{publisher}:{namespace}:{name}`", + "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" + }, + "Target": { + "description": "The target of the Binding.", + "id": "Target", + "properties": { + "identifier": { + "description": "The identifier of the target Agent, MCP Server, or Endpoint. Format: * `urn:agent:{publisher}:{namespace}:{name}` * `urn:mcp:{publisher}:{namespace}:{name}` * `urn:endpoint:{publisher}:{namespace}:{name}`", + "type": "string" + } + }, + "type": "object" + }, + "Tool": { + "description": "Represents a single tool provided by an MCP Server.", + "id": "Tool", + "properties": { + "annotations": { + "$ref": "Annotations", + "description": "Output only. Annotations associated with the tool.", + "readOnly": true + }, + "description": { + "description": "Output only. Description of what the tool does.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Output only. Human-readable name of the tool.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Agent Registry API", + "version": "v1alpha", + "version_module": true +} \ No newline at end of file diff --git a/discovery/aiplatform-v1.json b/discovery/aiplatform-v1.json index 8fc73858c6a..1a5bb182641 100644 --- a/discovery/aiplatform-v1.json +++ b/discovery/aiplatform-v1.json @@ -15,7 +15,7 @@ "baseUrl": "https://aiplatform.googleapis.com/", "batchPath": "batch", "canonicalName": "Aiplatform", - "description": "Train high-quality custom machine learning models with minimal machine learning expertise and effort.", + "description": "Build, scale, govern, and optimize sophisticated agents and models.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/vertex-ai/", "endpoints": [ @@ -2201,7 +2201,7 @@ ] }, "predict": { - "description": "Perform an online prediction.", + "description": "", "flatPath": "v1/endpoints/{endpointsId}:predict", "httpMethod": "POST", "id": "aiplatform.endpoints.predict", @@ -6315,6 +6315,62 @@ "resources": { "locations": { "methods": { + "askContexts": { + "description": "Agentic Retrieval Ask API for RAG.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:askContexts", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.askContexts", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location from which to retrieve RagContexts. The users must have permission to make a call in the project. Format: `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}:askContexts", + "request": { + "$ref": "GoogleCloudAiplatformV1AskContextsRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1AskContextsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "asyncRetrieveContexts": { + "description": "Asynchronous API to retrieves relevant contexts for a query.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:asyncRetrieveContexts", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.asyncRetrieveContexts", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location from which to retrieve RagContexts. The users must have permission to make a call in the project. Format: `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}:asyncRetrieveContexts", + "request": { + "$ref": "GoogleCloudAiplatformV1AsyncRetrieveContextsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "augmentPrompt": { "description": "Given an input prompt, it returns augmented prompt from vertex rag store to guide LLM towards generating grounded responses.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:augmentPrompt", @@ -6484,7 +6540,7 @@ ] }, "generateSyntheticData": { - "description": "Generates synthetic data based on the provided configuration.", + "description": "Generates synthetic (artificial) data based on a description", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:generateSyntheticData", "httpMethod": "POST", "id": "aiplatform.projects.locations.generateSyntheticData", @@ -6493,7 +6549,7 @@ ], "parameters": { "location": { - "description": "Required. The resource name of the Location to run the job. Format: `projects/{project}/locations/{location}`", + "description": "Required. The geographic location where the synthetic data generation request is processed. This should be in the format `projects/{project}/locations/{location}`. For example, `projects/my-project/locations/us-central1`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -6562,7 +6618,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "aiplatform.projects.locations.list", @@ -6571,7 +6627,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -10024,7 +10080,7 @@ ] }, "predict": { - "description": "Perform an online prediction.", + "description": "", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpoints/{endpointsId}:predict", "httpMethod": "POST", "id": "aiplatform.projects.locations.endpoints.predict", @@ -10488,6 +10544,40 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ] + }, + "responses": { + "description": "Forwards arbitrary HTTP requests for both streaming and non-streaming cases. To use this method, invoke_route_prefix must be set to allow the paths that will be specified in the request.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpoints/openapi/responses", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.endpoints.openapi.responses", + "parameterOrder": [ + "endpoint" + ], + "parameters": { + "deployedModelId": { + "description": "ID of the DeployedModel that serves the invoke request.", + "location": "query", + "type": "string" + }, + "endpoint": { + "description": "Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/endpoints/openapi$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+endpoint}/responses", + "request": { + "$ref": "GoogleApiHttpBody" + }, + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] } } }, @@ -18089,7 +18179,7 @@ ], "parameters": { "name": { - "description": "The resource name of the Model.", + "description": "Identifier. The resource name of the Model.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$", "required": true, @@ -21125,7 +21215,7 @@ ] }, "predict": { - "description": "Perform an online prediction.", + "description": "", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/publishers/{publishersId}/models/{modelsId}:predict", "httpMethod": "POST", "id": "aiplatform.projects.locations.publishers.models.predict", @@ -22095,6 +22185,34 @@ }, "reasoningEngines": { "methods": { + "asyncQuery": { + "description": "Async query using a reasoning engine.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}:asyncQuery", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.asyncQuery", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:asyncQuery", + "request": { + "$ref": "GoogleCloudAiplatformV1AsyncQueryReasoningEngineRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "create": { "description": "Creates a reasoning engine.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines", @@ -22440,6 +22558,11 @@ "parent" ], "parameters": { + "memoryId": { + "description": "Optional. The user defined ID to use for memory, which will become the final component of the memory resource name. If not provided, Vertex AI will generate a value for this ID. This value may be up to 63 characters, and valid characters are `[a-z0-9-]`. The first character must be a letter, and the last character must be a letter or number.", + "location": "query", + "type": "string" + }, "parent": { "description": "Required. The resource name of the ReasoningEngine to create the Memory under. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", @@ -22593,7 +22716,7 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", + "description": "Identifier. Represents the resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/memories/[^/]+$", "required": true, @@ -23087,49 +23210,81 @@ } } }, - "sandboxEnvironments": { + "runtimeRevisions": { "methods": { - "create": { - "description": "Creates a SandboxEnvironment in a given reasoning engine.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments", + "query": { + "description": "Queries using a reasoning engine.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}:query", "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.create", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.query", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "parent": { - "description": "Required. The resource name of the reasoning engine to create the SandboxEnvironment in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`.", + "name": { + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/sandboxEnvironments", + "path": "v1/{+name}:query", "request": { - "$ref": "GoogleCloudAiplatformV1SandboxEnvironment" + "$ref": "GoogleCloudAiplatformV1QueryReasoningEngineRequest" }, "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleCloudAiplatformV1QueryReasoningEngineResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, + "streamQuery": { + "description": "Streams queries using a reasoning engine.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}:streamQuery", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.streamQuery", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:streamQuery", + "request": { + "$ref": "GoogleCloudAiplatformV1StreamQueryReasoningEngineRequest" + }, + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "sandboxEnvironmentSnapshots": { + "methods": { "delete": { - "description": "Deletes the specific SandboxEnvironment.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}", + "description": "Deletes the specific SandboxEnvironmentSnapshot.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}", "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.delete", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.delete", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the SandboxEnvironment to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", + "description": "Required. The resource name of the SandboxEnvironmentSnapshot to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+$", "required": true, "type": "string" } @@ -23142,64 +23297,271 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "execute": { - "description": "Executes using a sandbox environment.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}:execute", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.execute", + "get": { + "description": "Gets details of the specific SandboxEnvironmentSnapshot.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the sandbox environment to execute. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", + "description": "Required. The resource name of the sandbox environment snapshot. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+name}:execute", + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentSnapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists SandboxEnvironmentSnapshots in a given reasoning engine.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of SandboxEnvironmentSnapshots to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentSnapshots will be returned. Values above 100 will be coerced to 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironmentSnapshots` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/sandboxEnvironmentSnapshots", + "response": { + "$ref": "GoogleCloudAiplatformV1ListSandboxEnvironmentSnapshotsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "sandboxEnvironmentTemplates": { + "methods": { + "create": { + "description": "Creates a SandboxEnvironmentTemplate in a given reasoning engine.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the reasoning engine to create the SandboxEnvironmentTemplate in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/sandboxEnvironmentTemplates", "request": { - "$ref": "GoogleCloudAiplatformV1ExecuteSandboxEnvironmentRequest" + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentTemplate" }, "response": { - "$ref": "GoogleCloudAiplatformV1ExecuteSandboxEnvironmentResponse" + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specific SandboxEnvironmentTemplate.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the SandboxEnvironmentTemplate to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentTemplates/{sandbox_environment_template}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "get": { - "description": "Gets details of the specific SandboxEnvironment.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}", + "description": "Gets details of the specific SandboxEnvironmentTemplate.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}", "httpMethod": "GET", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.get", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the sandbox environment. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", + "description": "Required. The resource name of the sandbox environment template. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentTemplates/{sandbox_environment_template}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+$", "required": true, "type": "string" } }, "path": "v1/{+name}", "response": { - "$ref": "GoogleCloudAiplatformV1SandboxEnvironment" + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentTemplate" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Lists SandboxEnvironments in a given reasoning engine.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments", + "description": "Lists SandboxEnvironmentTemplates in a given reasoning engine.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates", "httpMethod": "GET", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.list", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.list", "parameterOrder": [ "parent" ], @@ -23210,27 +23572,27 @@ "type": "string" }, "pageSize": { - "description": "Optional. The maximum number of SandboxEnvironments to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironments will be returned.", + "description": "Optional. The maximum number of SandboxEnvironmentTemplates to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentTemplates will be returned.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironments` call. Provide this to retrieve the subsequent page.", + "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironmentTemplates` call. Provide this to retrieve the subsequent page.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "description": "Required. The resource name of the reasoning engine to list sandbox environment templates from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/sandboxEnvironments", + "path": "v1/{+parent}/sandboxEnvironmentTemplates", "response": { - "$ref": "GoogleCloudAiplatformV1ListSandboxEnvironmentsResponse" + "$ref": "GoogleCloudAiplatformV1ListSandboxEnvironmentTemplatesResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -23242,9 +23604,9 @@ "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}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}:cancel", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.cancel", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.operations.cancel", "parameterOrder": [ "name" ], @@ -23252,7 +23614,7 @@ "name": { "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -23267,9 +23629,9 @@ }, "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}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.delete", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.operations.delete", "parameterOrder": [ "name" ], @@ -23277,7 +23639,7 @@ "name": { "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -23292,9 +23654,9 @@ }, "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}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.get", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.operations.get", "parameterOrder": [ "name" ], @@ -23302,7 +23664,7 @@ "name": { "description": "The name of the operation resource.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -23317,9 +23679,9 @@ }, "wait": { "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}:wait", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}:wait", "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.wait", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.operations.wait", "parameterOrder": [ "name" ], @@ -23327,7 +23689,298 @@ "name": { "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "sandboxEnvironments": { + "methods": { + "create": { + "description": "Creates a SandboxEnvironment in a given reasoning engine.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the reasoning engine to create the SandboxEnvironment in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/sandboxEnvironments", + "request": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironment" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specific SandboxEnvironment.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the SandboxEnvironment to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "execute": { + "description": "Executes using a sandbox environment.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}:execute", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.execute", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the sandbox environment to execute. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:execute", + "request": { + "$ref": "GoogleCloudAiplatformV1ExecuteSandboxEnvironmentRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1ExecuteSandboxEnvironmentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of the specific SandboxEnvironment.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the sandbox environment. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists SandboxEnvironments in a given reasoning engine.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of SandboxEnvironments to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironments will be returned.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironments` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/sandboxEnvironments", + "response": { + "$ref": "GoogleCloudAiplatformV1ListSandboxEnvironmentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "snapshot": { + "description": "Snapshots the specific SandboxEnvironment resource and creates a SandboxEnvironmentSnapshot resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}:snapshot", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.snapshot", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the sandbox environment to snapshot. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:snapshot", + "request": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentSnapshot" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", "required": true, "type": "string" }, @@ -23395,6 +24048,11 @@ "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", "required": true, "type": "string" + }, + "sessionId": { + "description": "Optional. The user defined ID to use for session, which will become the final component of the session resource name. If not provided, Vertex AI will generate a value for this ID. This value may be up to 63 characters, and valid characters are `[a-z0-9-]`. The first and last characters must be a letter or number.", + "location": "query", + "type": "string" } }, "path": "v1/{+parent}/sessions", @@ -23478,7 +24136,7 @@ "type": "string" }, "pageSize": { - "description": "Optional. The maximum number of sessions to return. The service may return fewer than this value. If unspecified, at most 100 sessions will be returned.", + "description": "Optional. The maximum number of sessions to return. The service may return fewer than this value. If unspecified, the default page size is 100. Values greater than 100 will be capped at 100.", "format": "int32", "location": "query", "type": "integer" @@ -24126,6 +24784,166 @@ } } }, + "skills": { + "resources": { + "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}/skills/{skillsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.skills.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/skills/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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}/skills/{skillsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.skills.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/skills/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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}/skills/{skillsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.skills.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/skills/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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}/skills/{skillsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.skills.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/[^/]+/skills/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/skills/{skillsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.skills.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/skills/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, "specialistPools": { "methods": { "create": { @@ -27588,7 +28406,7 @@ ] }, "predict": { - "description": "Perform an online prediction.", + "description": "", "flatPath": "v1/publishers/{publishersId}/models/{modelsId}:predict", "httpMethod": "POST", "id": "aiplatform.publishers.models.predict", @@ -28160,6 +28978,34 @@ }, "reasoningEngines": { "methods": { + "asyncQuery": { + "description": "Async query using a reasoning engine.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}:asyncQuery", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.asyncQuery", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:asyncQuery", + "request": { + "$ref": "GoogleCloudAiplatformV1AsyncQueryReasoningEngineRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "create": { "description": "Creates a reasoning engine.", "flatPath": "v1/reasoningEngines", @@ -28712,6 +29558,508 @@ } } }, + "runtimeRevisions": { + "methods": { + "query": { + "description": "Queries using a reasoning engine.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}:query", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.runtimeRevisions.query", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:query", + "request": { + "$ref": "GoogleCloudAiplatformV1QueryReasoningEngineRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1QueryReasoningEngineResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "streamQuery": { + "description": "Streams queries using a reasoning engine.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}:streamQuery", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.runtimeRevisions.streamQuery", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:streamQuery", + "request": { + "$ref": "GoogleCloudAiplatformV1StreamQueryReasoningEngineRequest" + }, + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "sandboxEnvironmentSnapshots": { + "methods": { + "delete": { + "description": "Deletes the specific SandboxEnvironmentSnapshot.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the SandboxEnvironmentSnapshot to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of the specific SandboxEnvironmentSnapshot.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the sandbox environment snapshot. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentSnapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists SandboxEnvironmentSnapshots in a given reasoning engine.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of SandboxEnvironmentSnapshots to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentSnapshots will be returned. Values above 100 will be coerced to 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironmentSnapshots` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/sandboxEnvironmentSnapshots", + "response": { + "$ref": "GoogleCloudAiplatformV1ListSandboxEnvironmentSnapshotsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "sandboxEnvironmentTemplates": { + "methods": { + "create": { + "description": "Creates a SandboxEnvironmentTemplate in a given reasoning engine.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the reasoning engine to create the SandboxEnvironmentTemplate in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/sandboxEnvironmentTemplates", + "request": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentTemplate" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specific SandboxEnvironmentTemplate.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the SandboxEnvironmentTemplate to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentTemplates/{sandbox_environment_template}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of the specific SandboxEnvironmentTemplate.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the sandbox environment template. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentTemplates/{sandbox_environment_template}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists SandboxEnvironmentTemplates in a given reasoning engine.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of SandboxEnvironmentTemplates to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentTemplates will be returned.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironmentTemplates` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the reasoning engine to list sandbox environment templates from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/sandboxEnvironmentTemplates", + "response": { + "$ref": "GoogleCloudAiplatformV1ListSandboxEnvironmentTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, "sandboxEnvironments": { "methods": { "create": { @@ -28860,6 +30208,34 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "snapshot": { + "description": "Snapshots the specific SandboxEnvironment resource and creates a SandboxEnvironmentSnapshot resource.", + "flatPath": "v1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}:snapshot", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.sandboxEnvironments.snapshot", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the sandbox environment to snapshot. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:snapshot", + "request": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentSnapshot" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { @@ -29297,6 +30673,166 @@ } } }, + "skills": { + "resources": { + "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/skills/{skillsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.skills.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^skills/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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/skills/{skillsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.skills.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^skills/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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/skills/{skillsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.skills.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^skills/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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/skills/{skillsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.skills.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": "^skills/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1/skills/{skillsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.skills.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^skills/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, "specialistPools": { "resources": { "operations": { @@ -30765,9 +32301,94 @@ } } }, - "revision": "20260217", + "revision": "20260427", "rootUrl": "https://aiplatform.googleapis.com/", "schemas": { + "CloudAiLargeModelsVisionGenerateVideoExperiments": { + "description": "Experimental parameters for video generation.", + "id": "CloudAiLargeModelsVisionGenerateVideoExperiments", + "properties": { + "conditioningFrames": { + "description": "Conditioning frames for veo experimental models ONLY, not to be confused with keyframes (ID:31) in GenerateVideoRequest.", + "items": { + "$ref": "CloudAiLargeModelsVisionGenerateVideoExperimentsConditioningFrame" + }, + "type": "array" + }, + "humanPose": { + "$ref": "CloudAiLargeModelsVisionHumanPose", + "description": "Human pose parameters for Pose Control" + }, + "modelName": { + "description": "Model names, as defined in: xyz ", + "type": "string" + }, + "numDiffusionSteps": { + "description": "Number of diffusion steps", + "format": "int32", + "type": "integer" + }, + "promptInputs": { + "$ref": "CloudAiLargeModelsVisionPromptInputs", + "description": "Prompt chunks for \"ProModel\" prompting. If set, the prompt will not be rewritten, and top-level prompt ignored." + }, + "requestOriginTag": { + "description": "Optional tag for tracking the source of this request. Allowed values: \"colab\", \"comfyui\", \"curl\", \"flowresearch\", \"vertexstudio\". Unrecognized tags are recorded as \"unknown\" in metrics. Tags do not affect video generation behavior. Up to 16 characters, ASCII alphanumeric, hyphens, and underscores only.", + "type": "string" + }, + "truncateInputVideo": { + "description": "If true (default), truncate input videos that exceed the model's maximum frame count by applying a frame_selection_config to __video_file__ inputs. Set to false to preserve the existing fail-fast behavior.", + "type": "boolean" + }, + "videoTransformMaskGcsUri": { + "description": "GCS URI of the grayscale video mask for Differential Diffusion. Maps to sdedit_video_tmax_scale_map ", + "type": "string" + }, + "videoTransformStrength": { + "description": "SDEdit: Scalar noise level (0.0 to 1.0) Maps to sdedit_tmax ", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "CloudAiLargeModelsVisionGenerateVideoExperimentsConditioningFrame": { + "id": "CloudAiLargeModelsVisionGenerateVideoExperimentsConditioningFrame", + "properties": { + "frameNum": { + "description": "The index of the frame, starts with zero and must be a multiple of 8.", + "format": "int32", + "type": "integer" + }, + "image": { + "$ref": "CloudAiLargeModelsVisionGenerateVideoRequestImage", + "description": "The image data for this conditioning frame." + } + }, + "type": "object" + }, + "CloudAiLargeModelsVisionGenerateVideoRequestImage": { + "description": "The image bytes or Cloud Storage URI to make the prediction on.", + "id": "CloudAiLargeModelsVisionGenerateVideoRequestImage", + "properties": { + "blobId": { + "description": "Blob ID of the image. This is used for storing the large images in the request.", + "type": "string" + }, + "bytesBase64Encoded": { + "description": "Base64 encoded bytes string representing the image.", + "type": "string" + }, + "gcsUri": { + "type": "string" + }, + "mimeType": { + "description": "The MIME type of the content of the image. Only the images in below listed MIME types are supported. - image/jpeg - image/png", + "type": "string" + } + }, + "type": "object" + }, "CloudAiLargeModelsVisionGenerateVideoResponse": { "description": "Generate video response.", "id": "CloudAiLargeModelsVisionGenerateVideoResponse", @@ -30808,6 +32429,10 @@ "description": "Base64 encoded bytes string representing the video.", "type": "string" }, + "experimentsMetadata": { + "$ref": "CloudAiLargeModelsVisionGenerateVideoExperiments", + "description": "Optional metadata returned from experimental requests. Likely only includes the rewritten prompt chunks." + }, "gcsUri": { "description": "Cloud Storage URI where the generated video is written.", "type": "string" @@ -30819,6 +32444,26 @@ }, "type": "object" }, + "CloudAiLargeModelsVisionHumanPose": { + "id": "CloudAiLargeModelsVisionHumanPose", + "properties": { + "bodyLandmarksGcsUri": { + "deprecated": true, + "description": "GCS URI of the human pose video to condition video generation.", + "type": "string" + }, + "faceLandmarksGcsUri": { + "deprecated": true, + "description": "GCS URI of the face landmarks video to condition video generation.", + "type": "string" + }, + "perfMeshGcsUri": { + "description": "GCS URI of the performance mesh to condition video generation.", + "type": "string" + } + }, + "type": "object" + }, "CloudAiLargeModelsVisionImage": { "description": "Image.", "id": "CloudAiLargeModelsVisionImage", @@ -30951,6 +32596,36 @@ }, "type": "object" }, + "CloudAiLargeModelsVisionPromptInputs": { + "description": "\"Direct\" prompting for Experimental Video Generation. These will be sent directly to the LDM without being rewritten.", + "id": "CloudAiLargeModelsVisionPromptInputs", + "properties": { + "audioPrompt": { + "description": "Description of audio content in the video, without speech.", + "type": "string" + }, + "negativeAudioPrompt": { + "description": "Negative description of audio content in the video.", + "type": "string" + }, + "negativePrompt": { + "description": "Single negative prompt for what not to generate.", + "type": "string" + }, + "promptChunks": { + "description": "2s, 256 tokens per chunk, 4 total chunks. Required.", + "items": { + "type": "string" + }, + "type": "array" + }, + "transcript": { + "description": "Spoken transcript of the video for characters.", + "type": "string" + } + }, + "type": "object" + }, "CloudAiLargeModelsVisionRaiInfo": { "description": "Next ID: 6", "id": "CloudAiLargeModelsVisionRaiInfo", @@ -31577,6 +33252,39 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1AskContextsRequest": { + "description": "Agentic Retrieval Ask API for RAG. Request message for VertexRagService.AskContexts.", + "id": "GoogleCloudAiplatformV1AskContextsRequest", + "properties": { + "query": { + "$ref": "GoogleCloudAiplatformV1RagQuery", + "description": "Required. Single RAG retrieve query." + }, + "tools": { + "description": "Optional. The tools to use for AskContexts.", + "items": { + "$ref": "GoogleCloudAiplatformV1Tool" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1AskContextsResponse": { + "description": "Response message for VertexRagService.AskContexts.", + "id": "GoogleCloudAiplatformV1AskContextsResponse", + "properties": { + "contexts": { + "$ref": "GoogleCloudAiplatformV1RagContexts", + "description": "The contexts of the query." + }, + "response": { + "description": "The Retrieval Response.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1AssignNotebookRuntimeOperationMetadata": { "description": "Metadata information for NotebookService.AssignNotebookRuntime.", "id": "GoogleCloudAiplatformV1AssignNotebookRuntimeOperationMetadata", @@ -31611,6 +33319,39 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1AsyncQueryReasoningEngineRequest": { + "description": "Request message for ReasoningEngineExecutionService.AsyncQueryReasoningEngine.", + "id": "GoogleCloudAiplatformV1AsyncQueryReasoningEngineRequest", + "properties": { + "inputGcsUri": { + "description": "Optional. Input Cloud Storage URI for the Async query.", + "type": "string" + }, + "outputGcsUri": { + "description": "Optional. Output Cloud Storage URI for the Async query.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1AsyncRetrieveContextsRequest": { + "description": "Request message for VertexRagService.AsyncRetrieveContexts.", + "id": "GoogleCloudAiplatformV1AsyncRetrieveContextsRequest", + "properties": { + "query": { + "$ref": "GoogleCloudAiplatformV1RagQuery", + "description": "Required. Single RAG retrieve query." + }, + "tools": { + "description": "Optional. The tools to use for AskContexts.", + "items": { + "$ref": "GoogleCloudAiplatformV1Tool" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1Attribution": { "description": "Attribution that explains a particular prediction output.", "id": "GoogleCloudAiplatformV1Attribution", @@ -33279,7 +35020,7 @@ "type": "object" }, "GoogleCloudAiplatformV1CodeExecutionResult": { - "description": "Result of executing the [ExecutableCode]. Only generated when using the [CodeExecution] tool, and always follows a `part` containing the [ExecutableCode].", + "description": "Result of executing the ExecutableCode. Generated only when the `CodeExecution` tool is used.", "id": "GoogleCloudAiplatformV1CodeExecutionResult", "properties": { "outcome": { @@ -33292,9 +35033,9 @@ ], "enumDescriptions": [ "Unspecified status. This value should not be used.", - "Code execution completed successfully.", - "Code execution finished but with a failure. `stderr` should contain the reason.", - "Code execution ran for too long, and was cancelled. There may or may not be a partial output present." + "Code execution completed successfully. `output` contains the stdout, if any.", + "Code execution failed. `output` contains the stderr and stdout, if any.", + "Code execution ran for too long, and was cancelled. There may or may not be a partial `output` present." ], "type": "string" }, @@ -33747,6 +35488,10 @@ "description": "Request message for ModelService.CopyModel.", "id": "GoogleCloudAiplatformV1CopyModelRequest", "properties": { + "customServiceAccount": { + "description": "Optional. The user-provided custom service account to use to do the copy model. If empty, [Vertex AI Service Agent](https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) will be used to access resources needed to upload the model. This account must belong to the destination project where the model is copied to, i.e., the project specified in the `parent` field of this request and have the Vertex AI Service Agent role in the source project. Requires the user copying the Model to have the `iam.serviceAccounts.actAs` permission on this service account.", + "type": "string" + }, "encryptionSpec": { "$ref": "GoogleCloudAiplatformV1EncryptionSpec", "description": "Customer-managed encryption key options. If this is set, then the Model copy will be encrypted with the provided encryption key." @@ -34835,6 +36580,21 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1DatasetCustomMetric": { + "description": "Defines a custom dataset-level aggregation.", + "id": "GoogleCloudAiplatformV1DatasetCustomMetric", + "properties": { + "aggregationFunction": { + "description": "Required. The Python code string containing the aggregation function. Expected function signature: `def aggregate(instances: list[dict[str, Any]]) -> dict[str, float]:` The `instances` argument is a list of dictionaries, where each dictionary represents a single evaluation result item. The structure of each dictionary corresponds to the fields in the `EvaluationResult` message. This includes: - `\"request\"`: Contains the original input data and model inputs (from `EvaluationResult.EvaluationRequest`). - `\"candidate_results\"`: Contains the results of any instance-level metrics (from `EvaluationResult.CandidateResults`). Example of a single item in the `instances` list: { \"request\": { \"prompt\": {\"text\": \"What is the capital of France?\"}, \"golden_response\": {\"text\": \"Paris\"}, \"candidate_responses\": [{\"candidate\": \"model-v1\", \"text\": \"Paris\"}] }, \"candidate_results\": [ {\"metric\": \"exact_match\", \"score\": 1.0}, {\"metric\": \"bleu\", \"score\": 0.9} ] }", + "type": "string" + }, + "displayName": { + "description": "Optional. A display name for this custom summary metric. Used to prefix keys in the output summaryMetrics map. If not provided, a default name like \"dataset_custom_metric_1\", \"dataset_custom_metric_2\", etc., will be generated based on the order in the repeated field.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1DatasetDistribution": { "description": "Distribution computed over a tuning dataset.", "id": "GoogleCloudAiplatformV1DatasetDistribution", @@ -35903,20 +37663,27 @@ "id": "GoogleCloudAiplatformV1EmbedContentRequest", "properties": { "autoTruncate": { - "description": "Optional. Whether to silently truncate the input content if it's longer than the maximum sequence length.", + "deprecated": true, + "description": "Optional. Deprecated: Please use EmbedContentConfig.auto_truncate instead. Whether to silently truncate the input content if it's longer than the maximum sequence length.", "type": "boolean" }, "content": { "$ref": "GoogleCloudAiplatformV1Content", - "description": "Required. Input content to be embedded. Required." + "description": "Required. The content to be embedded." + }, + "embedContentConfig": { + "$ref": "GoogleCloudAiplatformV1EmbedContentRequestEmbedContentConfig", + "description": "Optional. Configuration for the EmbedContent request." }, "outputDimensionality": { - "description": "Optional. Optional reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end.", + "deprecated": true, + "description": "Optional. Deprecated: Please use EmbedContentConfig.output_dimensionality instead. Reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end.", "format": "int32", "type": "integer" }, "taskType": { - "description": "Optional. The task type of the embedding.", + "deprecated": true, + "description": "Optional. Deprecated: Please use EmbedContentConfig.task_type instead. The task type of the embedding.", "enum": [ "UNSPECIFIED", "RETRIEVAL_QUERY", @@ -35942,7 +37709,62 @@ "type": "string" }, "title": { - "description": "Optional. An optional title for the text.", + "deprecated": true, + "description": "Optional. Deprecated: Please use EmbedContentConfig.title instead. The title for the text.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1EmbedContentRequestEmbedContentConfig": { + "description": "Configurations for the EmbedContent API.", + "id": "GoogleCloudAiplatformV1EmbedContentRequestEmbedContentConfig", + "properties": { + "audioTrackExtraction": { + "description": "Optional. Whether to extract audio from video content.", + "type": "boolean" + }, + "autoTruncate": { + "description": "Optional. Whether to silently truncate the input content if it's longer than the maximum sequence length. Only applicable to text-only embedding models.", + "type": "boolean" + }, + "documentOcr": { + "description": "Optional. Whether to enable OCR for document content.", + "type": "boolean" + }, + "outputDimensionality": { + "description": "Optional. Reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end.", + "format": "int32", + "type": "integer" + }, + "taskType": { + "description": "Optional. The task type of the embedding. Only applicable to text-only embedding models.", + "enum": [ + "UNSPECIFIED", + "RETRIEVAL_QUERY", + "RETRIEVAL_DOCUMENT", + "SEMANTIC_SIMILARITY", + "CLASSIFICATION", + "CLUSTERING", + "QUESTION_ANSWERING", + "FACT_VERIFICATION", + "CODE_RETRIEVAL_QUERY" + ], + "enumDescriptions": [ + "Unset value, which will default to one of the other enum values.", + "Specifies the given text is a query in a search/retrieval setting.", + "Specifies the given text is a document from the corpus being searched.", + "Specifies the given text will be used for STS.", + "Specifies that the given text will be classified.", + "Specifies that the embeddings will be used for clustering.", + "Specifies that the embeddings will be used for question answering.", + "Specifies that the embeddings will be used for fact verification.", + "Specifies that the embeddings will be used for code retrieval." + ], + "type": "string" + }, + "title": { + "description": "Optional. The title for the text. Only applicable to text-only embedding models.", "type": "string" } }, @@ -35962,7 +37784,7 @@ }, "usageMetadata": { "$ref": "GoogleCloudAiplatformV1UsageMetadata", - "description": "Metadata about the response(s)." + "description": "Usage metadata about the response(s)." } }, "type": "object" @@ -36334,6 +38156,39 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1EvaluateDatasetRun": { + "description": "Evaluate Dataset Run Result for Tuning Job.", + "id": "GoogleCloudAiplatformV1EvaluateDatasetRun", + "properties": { + "checkpointId": { + "description": "Output only. The checkpoint id used in the evaluation run. Only populated when evaluating checkpoints.", + "readOnly": true, + "type": "string" + }, + "error": { + "$ref": "GoogleRpcStatus", + "description": "Output only. The error of the evaluation run if any.", + "readOnly": true + }, + "evaluateDatasetResponse": { + "$ref": "GoogleCloudAiplatformV1EvaluateDatasetResponse", + "description": "Output only. Results for EvaluationService.", + "readOnly": true + }, + "evaluationRun": { + "description": "Output only. The resource name of the evaluation run. Format: `projects/{project}/locations/{location}/evaluationRuns/{evaluation_run_id}`.", + "readOnly": true, + "type": "string" + }, + "operationName": { + "deprecated": true, + "description": "Output only. Deprecated: The updated architecture uses evaluation_run instead.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1EvaluateInstancesRequest": { "description": "Request message for EvaluationService.EvaluateInstances.", "id": "GoogleCloudAiplatformV1EvaluateInstancesRequest", @@ -36378,6 +38233,13 @@ "description": "Required. The resource name of the Location to evaluate the instances. Format: `projects/{project}/locations/{location}`", "type": "string" }, + "metricSources": { + "description": "Optional. The metrics (either inline or registered) used for evaluation. Currently, we only support evaluating a single metric. If multiple metrics are provided, only the first one will be evaluated.", + "items": { + "$ref": "GoogleCloudAiplatformV1MetricSource" + }, + "type": "array" + }, "metrics": { "description": "The metrics used for evaluation. Currently, we only support evaluating a single metric. If multiple metrics are provided, only the first one will be evaluated.", "items": { @@ -36709,6 +38571,39 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1EvaluationConfig": { + "description": "Evaluation Config for Tuning Job.", + "id": "GoogleCloudAiplatformV1EvaluationConfig", + "properties": { + "autoraterConfig": { + "$ref": "GoogleCloudAiplatformV1AutoraterConfig", + "description": "Optional. Autorater config for evaluation." + }, + "datasetCustomMetrics": { + "description": "Optional. Specifications for custom dataset-level aggregations.", + "items": { + "$ref": "GoogleCloudAiplatformV1DatasetCustomMetric" + }, + "type": "array" + }, + "inferenceGenerationConfig": { + "$ref": "GoogleCloudAiplatformV1GenerationConfig", + "description": "Optional. Configuration options for inference generation and outputs. If not set, default generation parameters are used." + }, + "metrics": { + "description": "Required. The metrics used for evaluation.", + "items": { + "$ref": "GoogleCloudAiplatformV1Metric" + }, + "type": "array" + }, + "outputConfig": { + "$ref": "GoogleCloudAiplatformV1OutputConfig", + "description": "Required. Config for evaluation output." + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1EvaluationDataset": { "description": "The dataset used for evaluation.", "id": "GoogleCloudAiplatformV1EvaluationDataset", @@ -36729,17 +38624,13 @@ "id": "GoogleCloudAiplatformV1EvaluationInstance", "properties": { "agentData": { - "$ref": "GoogleCloudAiplatformV1EvaluationInstanceAgentData", + "$ref": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentData", "deprecated": true, - "description": "Optional. Deprecated. Use `agent_eval_data` instead. Data used for agent evaluation." - }, - "agentEvalData": { - "$ref": "GoogleCloudAiplatformV1EvaluationInstanceAgentData", - "description": "Optional. Data used for agent evaluation." + "description": "Optional. Deprecated: Use `agent_eval_data` instead. Data used for agent evaluation." }, "otherData": { "$ref": "GoogleCloudAiplatformV1EvaluationInstanceMapInstance", - "description": "Optional. Other data used to populate placeholders based on their key." + "description": "Optional. Other data used to populate placeholders based on their key. If a key conflicts with a field in the EvaluationInstance (e.g. `prompt`), the value of the field will take precedence over the value in other_data." }, "prompt": { "$ref": "GoogleCloudAiplatformV1EvaluationInstanceInstanceData", @@ -36763,10 +38654,10 @@ }, "type": "object" }, - "GoogleCloudAiplatformV1EvaluationInstanceAgentConfig": { + "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfig": { "deprecated": true, - "description": "Configuration for an Agent.", - "id": "GoogleCloudAiplatformV1EvaluationInstanceAgentConfig", + "description": "Deprecated: Use `google.cloud.aiplatform.master.AgentConfig` in `agent_eval_data` instead. Configuration for an Agent.", + "id": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfig", "properties": { "agentId": { "description": "Optional. Unique identifier of the agent. This ID is used to refer to this agent, e.g., in AgentEvent.author, or in the `sub_agents` field. It must be unique within the `agents` map.", @@ -36792,7 +38683,7 @@ "type": "array" }, "tools": { - "$ref": "GoogleCloudAiplatformV1EvaluationInstanceAgentConfigTools", + "$ref": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfigTools", "description": "List of tools." }, "toolsText": { @@ -36802,9 +38693,9 @@ }, "type": "object" }, - "GoogleCloudAiplatformV1EvaluationInstanceAgentConfigTools": { + "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfigTools": { "description": "Represents a list of tools for an agent.", - "id": "GoogleCloudAiplatformV1EvaluationInstanceAgentConfigTools", + "id": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfigTools", "properties": { "tool": { "description": "Optional. List of tools: each tool can have multiple function declarations.", @@ -36816,18 +38707,18 @@ }, "type": "object" }, - "GoogleCloudAiplatformV1EvaluationInstanceAgentData": { + "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentData": { "deprecated": true, - "description": "Contains data specific to agent evaluations.", - "id": "GoogleCloudAiplatformV1EvaluationInstanceAgentData", + "description": "Deprecated: Use `agent_eval_data` instead. Contains data specific to agent evaluations.", + "id": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentData", "properties": { "agentConfig": { - "$ref": "GoogleCloudAiplatformV1EvaluationInstanceAgentConfig", - "description": "Optional. Agent configuration." + "$ref": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfig", + "description": "Optional. Deprecated: Use `agent_eval_data` instead. Agent configuration." }, "agents": { "additionalProperties": { - "$ref": "GoogleCloudAiplatformV1EvaluationInstanceAgentConfig" + "$ref": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfig" }, "description": "Optional. The static Agent Configuration. This map defines the graph structure of the agent system. Key: agent_id (matches the `author` field in events). Value: The static configuration of the agent (tools, instructions, sub-agents).", "type": "object" @@ -36835,14 +38726,14 @@ "developerInstruction": { "$ref": "GoogleCloudAiplatformV1EvaluationInstanceInstanceData", "deprecated": true, - "description": "Optional. Deprecated. A field containing instructions from the developer for the agent. Please use `agents.developer_instruction` or `turns.events.active_instruction` instead." + "description": "Optional. Deprecated: Use `agents.developer_instruction` or `turns.events.active_instruction` instead. A field containing instructions from the developer for the agent." }, "events": { - "$ref": "GoogleCloudAiplatformV1EvaluationInstanceAgentDataEvents", + "$ref": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataEvents", "description": "A list of events." }, "tools": { - "$ref": "GoogleCloudAiplatformV1EvaluationInstanceAgentDataTools", + "$ref": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataTools", "deprecated": true, "description": "List of tools." }, @@ -36854,16 +38745,16 @@ "turns": { "description": "Optional. The chronological list of conversation turns. Each turn represents a logical execution cycle (e.g., User Input -> Agent Response).", "items": { - "$ref": "GoogleCloudAiplatformV1EvaluationInstanceAgentDataConversationTurn" + "$ref": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataConversationTurn" }, "type": "array" } }, "type": "object" }, - "GoogleCloudAiplatformV1EvaluationInstanceAgentDataAgentEvent": { + "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataAgentEvent": { "description": "A single event in the execution trace.", - "id": "GoogleCloudAiplatformV1EvaluationInstanceAgentDataAgentEvent", + "id": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataAgentEvent", "properties": { "activeTools": { "description": "Optional. The list of tools that were active/available to the agent at the time of this event. This overrides the `AgentConfig.tools` if set.", @@ -36896,14 +38787,14 @@ }, "type": "object" }, - "GoogleCloudAiplatformV1EvaluationInstanceAgentDataConversationTurn": { + "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataConversationTurn": { "description": "Represents a single turn/invocation in the conversation.", - "id": "GoogleCloudAiplatformV1EvaluationInstanceAgentDataConversationTurn", + "id": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataConversationTurn", "properties": { "events": { "description": "Optional. The list of events that occurred during this turn.", "items": { - "$ref": "GoogleCloudAiplatformV1EvaluationInstanceAgentDataAgentEvent" + "$ref": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataAgentEvent" }, "type": "array" }, @@ -36919,9 +38810,9 @@ }, "type": "object" }, - "GoogleCloudAiplatformV1EvaluationInstanceAgentDataEvents": { + "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataEvents": { "description": "Represents a list of events for an agent.", - "id": "GoogleCloudAiplatformV1EvaluationInstanceAgentDataEvents", + "id": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataEvents", "properties": { "event": { "description": "Optional. A list of events.", @@ -36933,9 +38824,9 @@ }, "type": "object" }, - "GoogleCloudAiplatformV1EvaluationInstanceAgentDataTools": { - "description": "Deprecated. Represents a list of tools for an agent.", - "id": "GoogleCloudAiplatformV1EvaluationInstanceAgentDataTools", + "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataTools": { + "description": "Deprecated: Use `agent_eval_data` instead. Represents a list of tools for an agent.", + "id": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataTools", "properties": { "tool": { "deprecated": true, @@ -37055,6 +38946,28 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1EvaluationParserConfig": { + "description": "Config for parsing LLM responses. It can be used to parse the LLM response to be evaluated, or the LLM response from LLM-based metrics/Autoraters.", + "id": "GoogleCloudAiplatformV1EvaluationParserConfig", + "properties": { + "customCodeParserConfig": { + "$ref": "GoogleCloudAiplatformV1EvaluationParserConfigCustomCodeParserConfig", + "description": "Optional. Use custom code to parse the LLM response." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1EvaluationParserConfigCustomCodeParserConfig": { + "description": "Configuration for parsing the LLM response using custom code.", + "id": "GoogleCloudAiplatformV1EvaluationParserConfigCustomCodeParserConfig", + "properties": { + "parsingFunction": { + "description": "Required. Python function for parsing results. The function should be defined within this string. The function takes a list of strings (LLM responses) and should return either a list of dictionaries (for rubrics) or a single dictionary (for a metric result). Example function signature: def parse(responses: list[str]) -> list[dict[str, Any]] | dict[str, Any]: When parsing rubrics, return a list of dictionaries, where each dictionary represents a Rubric. Example for rubrics: [ { \"content\": {\"property\": {\"description\": \"The response is factual.\"}}, \"type\": \"FACTUALITY\", \"importance\": \"HIGH\" }, { \"content\": {\"property\": {\"description\": \"The response is fluent.\"}}, \"type\": \"FLUENCY\", \"importance\": \"MEDIUM\" } ] When parsing critique results, return a dictionary representing a MetricResult. Example for a metric result: { \"score\": 0.8, \"explanation\": \"The model followed most instructions.\", \"rubric_verdicts\": [...] } ... code for result extraction and aggregation", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1EvaluationPrompt": { "description": "Prompt to be evaluated. This can represent a single-turn prompt or a multi-turn conversation for agent evaluations.", "id": "GoogleCloudAiplatformV1EvaluationPrompt", @@ -37216,7 +39129,7 @@ }, "evaluationConfig": { "$ref": "GoogleCloudAiplatformV1EvaluationRunEvaluationConfig", - "description": "Required. The configuration used for the evaluation." + "description": "Optional. The configuration used for the evaluation. Optional when analysis_configs is provided." }, "evaluationResults": { "$ref": "GoogleCloudAiplatformV1EvaluationResults", @@ -37260,7 +39173,8 @@ "FAILED", "CANCELLED", "INFERENCE", - "GENERATING_RUBRICS" + "GENERATING_RUBRICS", + "GENERATING_LOSS_CLUSTERS" ], "enumDescriptions": [ "Unspecified state.", @@ -37270,7 +39184,8 @@ "The evaluation run has failed.", "The evaluation run has been cancelled.", "The evaluation run is performing inference.", - "The evaluation run is performing rubric generation." + "The evaluation run is performing rubric generation.", + "The evaluation run is performing loss analysis." ], "readOnly": true, "type": "string" @@ -37301,6 +39216,13 @@ "$ref": "GoogleCloudAiplatformV1EvaluationRunEvaluationConfigAutoraterConfig", "description": "Optional. The autorater config for the evaluation run." }, + "datasetCustomMetrics": { + "description": "Optional. Specifications for custom dataset-level aggregations.", + "items": { + "$ref": "GoogleCloudAiplatformV1DatasetCustomMetric" + }, + "type": "array" + }, "metrics": { "description": "Required. The metrics to be calculated in the evaluation run.", "items": { @@ -37377,15 +39299,89 @@ "type": "object" }, "GoogleCloudAiplatformV1EvaluationRunInferenceConfig": { - "description": "An inference config used for model inference during the evaluation run.", + "description": "Defines the configuration for a candidate model or agent being evaluated. `InferenceConfig` encapsulates all the necessary information to invoke or scrape the candidate during the evaluation run. This includes direct model inference parameters, agent execution settings, and multi-turn scraping configurations (such as user simulators). It serves as the primary representation of the candidate across different stages of the evaluation process.", "id": "GoogleCloudAiplatformV1EvaluationRunInferenceConfig", "properties": { + "agentRunConfig": { + "$ref": "GoogleCloudAiplatformV1EvaluationRunInferenceConfigAgentRunConfig", + "description": "Optional. Agent run config." + }, "generationConfig": { "$ref": "GoogleCloudAiplatformV1GenerationConfig", "description": "Optional. Generation config." }, "model": { - "description": "Optional. The fully qualified name of the publisher model or endpoint to use. Publisher model format: `projects/{project}/locations/{location}/publishers/*/models/*` Endpoint format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "description": "Optional. The fully qualified name of the publisher model or endpoint to use. Anthropic and Llama third-party models are also supported through Model Garden. Publisher model format: `projects/{project}/locations/{location}/publishers/*/models/*` Third-party model formats: `projects/{project}/locations/{location}/publishers/anthropic/models/{model}` or `projects/{project}/locations/{location}/publishers/llama/models/{model}` Endpoint format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "type": "string" + }, + "parallelism": { + "description": "Optional. The parallelism of the evaluation run for the inference step. If not specified, the default parallelism will be used.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1EvaluationRunInferenceConfigAgentRunConfig": { + "description": "Configuration for Agent Run.", + "id": "GoogleCloudAiplatformV1EvaluationRunInferenceConfigAgentRunConfig", + "properties": { + "agentEngine": { + "description": "Optional. The resource name of the Agent Engine. Format: projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine} For example: projects/123/locations/us-central1/reasoningEngines/456", + "type": "string" + }, + "sessionInput": { + "$ref": "GoogleCloudAiplatformV1EvaluationRunInferenceConfigSessionInput", + "description": "Optional. The session input to get agent running results." + }, + "userSimulatorConfig": { + "$ref": "GoogleCloudAiplatformV1EvaluationRunInferenceConfigAgentRunConfigUserSimulatorConfig", + "description": "The configuration for a user simulator that uses an LLM to generate messages on behalf of the user." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1EvaluationRunInferenceConfigAgentRunConfigUserSimulatorConfig": { + "description": "Used for multi-turn agent scraping. Contains configuration for a user simulator that uses an LLM to generate messages on behalf of the user.", + "id": "GoogleCloudAiplatformV1EvaluationRunInferenceConfigAgentRunConfigUserSimulatorConfig", + "properties": { + "maxTurn": { + "description": "Maximum number of invocations allowed by the multi-turn agent scraping. This property allows us to stop a run-off conversation, where the agent and the user simulator get into a never ending loop. The initial fixed prompt is also counted as an invocation.", + "format": "int32", + "type": "integer" + }, + "modelConfig": { + "$ref": "GoogleCloudAiplatformV1GenerationConfig", + "description": "The configuration for the model." + }, + "modelName": { + "description": "The model name to use for multi-turn agent scraping to get next user message, e.g. \"gemini-3-flash-preview\".", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1EvaluationRunInferenceConfigSessionInput": { + "description": "Session input to run an Agent.", + "id": "GoogleCloudAiplatformV1EvaluationRunInferenceConfigSessionInput", + "properties": { + "parameters": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Additional parameters for the session, like app_name, etc. For example, {\"app_name\": \"my-app\"}.", + "type": "object" + }, + "sessionState": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. Session specific memory which stores key conversation points.", + "type": "object" + }, + "userId": { + "description": "Optional. The user id for the agent session. The ID can be up to 128 characters long.", "type": "string" } }, @@ -37411,6 +39407,10 @@ "$ref": "GoogleCloudAiplatformV1Metric", "description": "The metric config." }, + "metricResourceName": { + "description": "Optional. The resource name of the metric definition.", + "type": "string" + }, "predefinedMetricSpec": { "$ref": "GoogleCloudAiplatformV1EvaluationRunMetricPredefinedMetricSpec", "description": "Spec for a pre-defined metric." @@ -37556,6 +39556,10 @@ "description": "Specification for how rubrics should be generated.", "id": "GoogleCloudAiplatformV1EvaluationRunMetricRubricGenerationSpec", "properties": { + "metricResourceName": { + "description": "Optional. Resource name of the metric definition.", + "type": "string" + }, "modelConfig": { "$ref": "GoogleCloudAiplatformV1EvaluationRunEvaluationConfigAutoraterConfig", "description": "Optional. Configuration for the model used in rubric generation. Configs including sampling count and base model can be specified here. Flipping is not supported for rubric generation." @@ -37734,6 +39738,10 @@ "$ref": "GoogleCloudAiplatformV1GroundingMetadata", "description": "Optional. Metadata returned to client when grounding is enabled." }, + "inputTranscription": { + "$ref": "GoogleCloudAiplatformV1Transcription", + "description": "Optional. Audio transcription of user input." + }, "interrupted": { "description": "Optional. Flag indicating that LLM was interrupted when generating the content. Usually it's due to user interruption during a bidi streaming.", "type": "boolean" @@ -37745,6 +39753,10 @@ }, "type": "array" }, + "outputTranscription": { + "$ref": "GoogleCloudAiplatformV1Transcription", + "description": "Optional. Audio transcription of model output." + }, "partial": { "description": "Optional. Indicates whether the text content is part of a unfinished text stream. Only used for streaming mode and when the content is plain text.", "type": "boolean" @@ -37938,7 +39950,7 @@ "type": "object" }, "GoogleCloudAiplatformV1ExecutableCode": { - "description": "Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the [CodeExecution] tool, in which the code will be automatically executed, and a corresponding [CodeExecutionResult] will also be generated.", + "description": "Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the `CodeExecution` tool, in which the code will be automatically executed, and a corresponding CodeExecutionResult will also be generated.", "id": "GoogleCloudAiplatformV1ExecutableCode", "properties": { "code": { @@ -40587,7 +42599,7 @@ "type": "object" }, "GoogleCloudAiplatformV1FunctionCall": { - "description": "A predicted [FunctionCall] returned from the model that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing the parameters and their values.", + "description": "A predicted FunctionCall returned from the model that contains a string representing the FunctionDeclaration.name and a structured JSON object containing the parameters and their values.", "id": "GoogleCloudAiplatformV1FunctionCall", "properties": { "args": { @@ -40595,11 +42607,11 @@ "description": "Properties of the object.", "type": "any" }, - "description": "Optional. The function parameters and values in JSON object format. See [FunctionDeclaration.parameters] for parameter details.", + "description": "Optional. The function parameters and values in JSON object format. See FunctionDeclaration.parameters for parameter details.", "type": "object" }, "name": { - "description": "Optional. The name of the function to call. Matches [FunctionDeclaration.name].", + "description": "Optional. The name of the function to call. Matches FunctionDeclaration.name.", "type": "string" }, "partialArgs": { @@ -40621,7 +42633,7 @@ "id": "GoogleCloudAiplatformV1FunctionCallingConfig", "properties": { "allowedFunctionNames": { - "description": "Optional. Function names to call. Only set when the Mode is ANY. Function names should match [FunctionDeclaration.name]. With mode set to ANY, model will predict a function call from the set of function names provided.", + "description": "Optional. Function names to call. Only set when the Mode is ANY. Function names should match FunctionDeclaration.name. With mode set to ANY, model will predict a function call from the set of function names provided.", "items": { "type": "string" }, @@ -40633,18 +42645,20 @@ "MODE_UNSPECIFIED", "AUTO", "ANY", - "NONE" + "NONE", + "VALIDATED" ], "enumDescriptions": [ "Unspecified function calling mode. This value should not be used.", "Default model behavior, model decides to predict either function calls or natural language response.", "Model is constrained to always predicting function calls only. If \"allowed_function_names\" are set, the predicted function calls will be limited to any one of \"allowed_function_names\", else the predicted function calls will be any one of the provided \"function_declarations\".", - "Model will not predict any function calls. Model behavior is same as when not passing any function declarations." + "Model will not predict any function calls. Model behavior is same as when not passing any function declarations.", + "Model is constrained to predict either function calls or natural language response. If \"allowed_function_names\" are set, the predicted function calls will be limited to any one of \"allowed_function_names\", else the predicted function calls will be any one of the provided \"function_declarations\"." ], "type": "string" }, "streamFunctionCallArguments": { - "description": "Optional. When set to true, arguments of a single function call will be streamed out in multiple parts/contents/responses. Partial parameter results will be returned in the [FunctionCall.partial_args] field.", + "description": "Optional. When set to true, arguments of a single function call will be streamed out in multiple parts/contents/responses. Partial parameter results will be returned in the `FunctionCall.partial_args` field.", "type": "boolean" } }, @@ -40659,7 +42673,7 @@ "type": "string" }, "name": { - "description": "Required. The name of the function to call. Must start with a letter or an underscore. Must be a-z, A-Z, 0-9, or contain underscores, dots, colons and dashes, with a maximum length of 64.", + "description": "Required. The name of the function to call. Must start with a letter or an underscore. Must be a-z, A-Z, 0-9, or contain underscores, dots, colons and dashes, with a maximum length of 128.", "type": "string" }, "parameters": { @@ -40682,11 +42696,11 @@ "type": "object" }, "GoogleCloudAiplatformV1FunctionResponse": { - "description": "The result output from a [FunctionCall] that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a [FunctionCall] made based on model prediction.", + "description": "The result output from a FunctionCall that contains a string representing the FunctionDeclaration.name and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a `FunctionCall` made based on model prediction.", "id": "GoogleCloudAiplatformV1FunctionResponse", "properties": { "name": { - "description": "Required. The name of the function to call. Matches [FunctionDeclaration.name] and [FunctionCall.name].", + "description": "Required. The name of the function to call. Matches FunctionDeclaration.name and FunctionCall.name.", "type": "string" }, "parts": { @@ -41130,7 +43144,7 @@ "id": "GoogleCloudAiplatformV1GenerateInstanceRubricsRequest", "properties": { "agentConfig": { - "$ref": "GoogleCloudAiplatformV1EvaluationInstanceAgentConfig", + "$ref": "GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfig", "description": "Optional. Agent configuration, required for agent-based rubric generation." }, "contents": { @@ -41144,6 +43158,10 @@ "description": "Required. The resource name of the Location to generate rubrics from. Format: `projects/{project}/locations/{location}`", "type": "string" }, + "metricResourceName": { + "description": "Optional. The resource name of a registered metric. Rubric generation using predefined metric spec or LLMBasedMetricSpec is supported. If this field is set, the configuration provided in this field is used for rubric generation. The `predefined_rubric_generation_spec` and `rubric_generation_spec` fields will be ignored.", + "type": "string" + }, "predefinedRubricGenerationSpec": { "$ref": "GoogleCloudAiplatformV1PredefinedMetricSpec", "description": "Optional. Specification for using the rubric generation configs of a pre-defined metric, e.g. \"generic_quality_v1\" and \"instruction_following_v1\". Some of the configs may be only used in rubric generation and not supporting evaluation, e.g. \"fully_customized_generic_quality_v1\". If this field is set, the `rubric_generation_spec` field will be ignored." @@ -41174,6 +43192,13 @@ "description": "Request message for MemoryBankService.GenerateMemories. Maximum size is 8 MB.", "id": "GoogleCloudAiplatformV1GenerateMemoriesRequest", "properties": { + "allowedTopics": { + "description": "Optional. Restricts memory generation to a subset of memory topics.", + "items": { + "$ref": "GoogleCloudAiplatformV1MemoryTopicId" + }, + "type": "array" + }, "directContentsSource": { "$ref": "GoogleCloudAiplatformV1GenerateMemoriesRequestDirectContentsSource", "description": "Defines a direct source of content as the source content from which to generate memories." @@ -41323,23 +43348,23 @@ "type": "object" }, "GoogleCloudAiplatformV1GenerateSyntheticDataRequest": { - "description": "Request message for DataFoundryService.GenerateSyntheticData.", + "description": "Request message for DataFoundryService.GenerateSyntheticData. It contains the settings and information needed to generate synthetic data.", "id": "GoogleCloudAiplatformV1GenerateSyntheticDataRequest", "properties": { "count": { - "description": "Required. The number of synthetic examples to generate. For this stateless API, the count is limited to a small number.", + "description": "Required. The number of synthetic examples to generate. For this stateless API, you can generate up to 50 examples in a single request.", "format": "int32", "type": "integer" }, "examples": { - "description": "Optional. A list of few-shot examples to guide the model's output style and format.", + "description": "Optional. A list of few-shot examples that help the model understand the desired style, tone, and format of the generated synthetic data. Providing these few-shot examples can significantly improve the quality and relevance of the output.", "items": { "$ref": "GoogleCloudAiplatformV1SyntheticExample" }, "type": "array" }, "outputFieldSpecs": { - "description": "Required. The schema of the desired output, defined by a list of fields.", + "description": "Required. Defines the schema of each synthetic example to be generated, defined by a list of fields.", "items": { "$ref": "GoogleCloudAiplatformV1OutputFieldSpec" }, @@ -41347,17 +43372,17 @@ }, "taskDescription": { "$ref": "GoogleCloudAiplatformV1TaskDescriptionStrategy", - "description": "Generate data from a high-level task description." + "description": "Generates synthetic data based on a high-level description of the task or data you want." } }, "type": "object" }, "GoogleCloudAiplatformV1GenerateSyntheticDataResponse": { - "description": "The response containing the generated data.", + "description": "The response message for the `GenerateSyntheticData` method, containing the synthetic examples generated by the Gen AI evaluation service.", "id": "GoogleCloudAiplatformV1GenerateSyntheticDataResponse", "properties": { "syntheticExamples": { - "description": "A list of generated synthetic examples.", + "description": "A list of generated synthetic examples, each containing a complete synthetic data instance generated based on your request.", "items": { "$ref": "GoogleCloudAiplatformV1SyntheticExample" }, @@ -41485,7 +43510,7 @@ "type": "boolean" }, "responseMimeType": { - "description": "Optional. The IANA standard MIME type of the response. The model will generate output that conforms to this MIME type. Supported values include 'text/plain' (default) and 'application/json'. The model needs to be prompted to output the appropriate response type, otherwise the behavior is undefined. This is a preview feature.", + "description": "Optional. The IANA standard MIME type of the response. The model will generate output that conforms to this MIME type. Supported values include 'text/plain' (default) and 'application/json'. The model needs to be prompted to output the appropriate response type, otherwise the behavior is undefined.", "type": "string" }, "responseModalities": { @@ -41495,13 +43520,15 @@ "MODALITY_UNSPECIFIED", "TEXT", "IMAGE", - "AUDIO" + "AUDIO", + "VIDEO" ], "enumDescriptions": [ "Unspecified modality. Will be processed as text.", "Text modality.", "Image modality.", - "Audio modality." + "Audio modality.", + "Video modality." ], "type": "string" }, @@ -41805,6 +43832,10 @@ "description": "A piece of evidence that supports a claim made by the model. This is used to show a citation for a claim made by the model. When grounding is enabled, the model returns a `GroundingChunk` that contains a reference to the source of the information.", "id": "GoogleCloudAiplatformV1GroundingChunk", "properties": { + "image": { + "$ref": "GoogleCloudAiplatformV1GroundingChunkImage", + "description": "A grounding chunk from an image search result. See the `Image` message for details." + }, "maps": { "$ref": "GoogleCloudAiplatformV1GroundingChunkMaps", "description": "A grounding chunk from Google Maps. See the `Maps` message for details." @@ -41820,6 +43851,29 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1GroundingChunkImage": { + "description": "An `Image` chunk is a piece of evidence that comes from an image search result. It contains the URI of the image search result and the URI of the image. This is used to provide the user with a link to the source of the information.", + "id": "GoogleCloudAiplatformV1GroundingChunkImage", + "properties": { + "domain": { + "description": "The domain of the image search result page.", + "type": "string" + }, + "imageUri": { + "description": "The URI of the image.", + "type": "string" + }, + "sourceUri": { + "description": "The URI of the image search result page.", + "type": "string" + }, + "title": { + "description": "The title of the image search result page.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1GroundingChunkMaps": { "description": "A `Maps` chunk is a piece of evidence that comes from Google Maps, containing information about places or routes. This is used to provide the user with rich, location-based information.", "id": "GoogleCloudAiplatformV1GroundingChunkMaps", @@ -41832,6 +43886,11 @@ "description": "This Place's resource name, in `places/{place_id}` format. This can be used to look up the place in the Google Maps API.", "type": "string" }, + "route": { + "$ref": "GoogleCloudAiplatformV1GroundingChunkMapsRoute", + "description": "Output only. Route information.", + "readOnly": true + }, "text": { "description": "The text of the place answer.", "type": "string" @@ -41880,6 +43939,27 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1GroundingChunkMapsRoute": { + "description": "Route information from Google Maps.", + "id": "GoogleCloudAiplatformV1GroundingChunkMapsRoute", + "properties": { + "distanceMeters": { + "description": "The total distance of the route, in meters.", + "format": "int32", + "type": "integer" + }, + "duration": { + "description": "The total duration of the route.", + "format": "google-duration", + "type": "string" + }, + "encodedPolyline": { + "description": "An encoded polyline of the route. See https://developers.google.com/maps/documentation/utilities/polylinealgorithm", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1GroundingChunkRetrievedContext": { "description": "Context retrieved from a data source to ground the model's response. This is used when a retrieval tool fetches information from a user-provided corpus or a public dataset.", "id": "GoogleCloudAiplatformV1GroundingChunkRetrievedContext", @@ -41950,6 +44030,13 @@ }, "type": "array" }, + "imageSearchQueries": { + "description": "Optional. The image search queries that were used to generate the content. This field is populated only when the grounding source is Google Search with the Image Search search_type enabled.", + "items": { + "type": "string" + }, + "type": "array" + }, "retrievalMetadata": { "$ref": "GoogleCloudAiplatformV1RetrievalMetadata", "description": "Optional. Output only. Metadata related to the retrieval grounding source.", @@ -41993,7 +44080,7 @@ "type": "object" }, "GoogleCloudAiplatformV1GroundingSupport": { - "description": "A collection of supporting references for a segment of the model's response.", + "description": "A collection of supporting references for a segment or part of the model's response.", "id": "GoogleCloudAiplatformV1GroundingSupport", "properties": { "confidenceScores": { @@ -42012,6 +44099,14 @@ }, "type": "array" }, + "renderedParts": { + "description": "Indices into the `rendered_parts` field of the `GroundingMetadata` message. These indices specify which rendered parts are associated with this support message.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, "segment": { "$ref": "GoogleCloudAiplatformV1Segment", "description": "The content segment that this support message applies to." @@ -42194,6 +44289,20 @@ "Prevents the model from generating images of people." ], "type": "string" + }, + "prominentPeople": { + "description": "Optional. Controls whether prominent people (celebrities) generation is allowed. If used with personGeneration, personGeneration enum would take precedence. For instance, if ALLOW_NONE is set, all person generation would be blocked. If this field is unspecified, the default behavior is to allow prominent people.", + "enum": [ + "PROMINENT_PEOPLE_UNSPECIFIED", + "ALLOW_PROMINENT_PEOPLE", + "BLOCK_PROMINENT_PEOPLE" + ], + "enumDescriptions": [ + "Unspecified value. The model will proceed with the default behavior, which is to allow generation of prominent people.", + "Allows the model to generate images of prominent people.", + "Prevents the model from generating images of prominent people." + ], + "type": "string" } }, "type": "object" @@ -42974,10 +45083,24 @@ "description": "An extracted memory that is the intermediate result before consolidation.", "id": "GoogleCloudAiplatformV1IntermediateExtractedMemory", "properties": { + "context": { + "description": "Output only. Represents the explanation of why the information was extracted from the source content.", + "readOnly": true, + "type": "string" + }, "fact": { - "description": "Output only. The fact of the extracted memory.", + "description": "Output only. Represents the fact of the extracted memory.", "readOnly": true, "type": "string" + }, + "structuredData": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. Represents the structured value of the extracted memory.", + "readOnly": true, + "type": "object" } }, "type": "object" @@ -43044,6 +45167,38 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1KeepAliveProbe": { + "description": "Represents the configuration for keep-alive probe. Contains configuration on a specified endpoint that a deployment host should use to keep the container alive based on the probe settings.", + "id": "GoogleCloudAiplatformV1KeepAliveProbe", + "properties": { + "httpGet": { + "$ref": "GoogleCloudAiplatformV1KeepAliveProbeHttpGet", + "description": "Optional. Specifies the HTTP GET configuration for the probe." + }, + "maxSeconds": { + "description": "Optional. Specifies the maximum duration (in seconds) to keep the instance alive via this probe. Can be a maximum of 3600 seconds (1 hour).", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1KeepAliveProbeHttpGet": { + "description": "Specifies the HTTP GET configuration for the probe.", + "id": "GoogleCloudAiplatformV1KeepAliveProbeHttpGet", + "properties": { + "path": { + "description": "Required. Specifies the path of the HTTP GET request (e.g., `\"/is_busy\"`).", + "type": "string" + }, + "port": { + "description": "Optional. Specifies the port number on the container to which the request is sent.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1LLMBasedMetricSpec": { "description": "Specification for an LLM based metric.", "id": "GoogleCloudAiplatformV1LLMBasedMetricSpec", @@ -43068,6 +45223,10 @@ "$ref": "GoogleCloudAiplatformV1PredefinedMetricSpec", "description": "Dynamically generate rubrics using a predefined spec." }, + "resultParserConfig": { + "$ref": "GoogleCloudAiplatformV1EvaluationParserConfig", + "description": "Optional. The parser config for the metric result." + }, "rubricGenerationSpec": { "$ref": "GoogleCloudAiplatformV1RubricGenerationSpec", "description": "Dynamically generate rubrics using this specification." @@ -43987,6 +46146,42 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1ListSandboxEnvironmentSnapshotsResponse": { + "description": "Response message for SandboxEnvironmentService.ListSandboxEnvironmentSnapshots.", + "id": "GoogleCloudAiplatformV1ListSandboxEnvironmentSnapshotsResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as ListSandboxEnvironmentSnapshotsRequest.page_token to retrieve the next page. Absence of this field indicates there are no subsequent pages.", + "type": "string" + }, + "sandboxEnvironmentSnapshots": { + "description": "The SandboxEnvironmentSnapshots matching the request.", + "items": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentSnapshot" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1ListSandboxEnvironmentTemplatesResponse": { + "description": "Response message for SandboxEnvironmentService.ListSandboxEnvironmentTemplates.", + "id": "GoogleCloudAiplatformV1ListSandboxEnvironmentTemplatesResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as ListSandboxEnvironmentTemplatesRequest.page_token to retrieve the next page. Absence of this field indicates there are no subsequent pages.", + "type": "string" + }, + "sandboxEnvironmentTemplates": { + "description": "The SandboxEnvironmentTemplates matching the request.", + "items": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentTemplate" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1ListSandboxEnvironmentsResponse": { "description": "Response message for SandboxEnvironmentService.ListSandboxEnvironments.", "id": "GoogleCloudAiplatformV1ListSandboxEnvironmentsResponse", @@ -44468,45 +46663,45 @@ "id": "GoogleCloudAiplatformV1Memory", "properties": { "createTime": { - "description": "Output only. Timestamp when this Memory was created.", + "description": "Output only. Represents the timestamp when this Memory was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "Optional. Description of the Memory.", + "description": "Optional. Represents the description of the Memory.", "type": "string" }, "disableMemoryRevisions": { - "description": "Optional. Input only. If true, no revision will be created for this request.", + "description": "Optional. Input only. Indicates whether no revision will be created for this request.", "type": "boolean" }, "displayName": { - "description": "Optional. Display name of the Memory.", + "description": "Optional. Represents the display name of the Memory.", "type": "string" }, "expireTime": { - "description": "Optional. Timestamp of when this resource is considered expired. This is *always* provided on output when `expiration` is set on input, regardless of whether `expire_time` or `ttl` was provided.", + "description": "Optional. Represents the timestamp of when this resource is considered expired. This is *always* provided on output when `expiration` is set on input, regardless of whether `expire_time` or `ttl` was provided.", "format": "google-datetime", "type": "string" }, "fact": { - "description": "Required. Semantic knowledge extracted from the source content.", + "description": "Optional. Represents semantic knowledge extracted from the source content.", "type": "string" }, "metadata": { "additionalProperties": { "$ref": "GoogleCloudAiplatformV1MemoryMetadataValue" }, - "description": "Optional. User-provided metadata for the Memory. This information was provided when creating, updating, or generating the Memory. It was not generated by Memory Bank.", + "description": "Optional. Represents user-provided metadata for the Memory. This information was provided when creating, updating, or generating the Memory. It was not generated by Memory Bank.", "type": "object" }, "name": { - "description": "Identifier. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", + "description": "Identifier. Represents the resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", "type": "string" }, "revisionExpireTime": { - "description": "Optional. Input only. Timestamp of when the revision is considered expired. If not set, the memory revision will be kept until manually deleted.", + "description": "Optional. Input only. Represents the timestamp of when the revision is considered expired. If not set, the memory revision will be kept until manually deleted.", "format": "google-datetime", "type": "string" }, @@ -44514,11 +46709,11 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. Input only. The labels to apply to the Memory Revision created as a result of this request.", + "description": "Optional. Input only. Represents the labels to apply to the Memory Revision created as a result of this request.", "type": "object" }, "revisionTtl": { - "description": "Optional. Input only. The TTL for the revision. The expiration time is computed: now + TTL.", + "description": "Optional. Input only. Represents the TTL for the revision. The expiration time is computed: now + TTL.", "format": "google-duration", "type": "string" }, @@ -44526,23 +46721,23 @@ "additionalProperties": { "type": "string" }, - "description": "Required. Immutable. The scope of the Memory. Memories are isolated within their scope. The scope is defined when creating or generating memories. Scope values cannot contain the wildcard character '*'.", + "description": "Required. Immutable. Represents the scope of the Memory. Memories are isolated within their scope. The scope is defined when creating or generating memories. Scope values cannot contain the wildcard character '*'.", "type": "object" }, "topics": { - "description": "Optional. The Topics of the Memory.", + "description": "Optional. Represents the Topics of the Memory.", "items": { "$ref": "GoogleCloudAiplatformV1MemoryTopicId" }, "type": "array" }, "ttl": { - "description": "Optional. Input only. The TTL for this resource. The expiration time is computed: now + TTL.", + "description": "Optional. Input only. Represents the TTL for this resource. The expiration time is computed: now + TTL.", "format": "google-duration", "type": "string" }, "updateTime": { - "description": "Output only. Timestamp when this Memory was most recently updated.", + "description": "Output only. Represents the timestamp when this Memory was most recently updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -44551,29 +46746,37 @@ "type": "object" }, "GoogleCloudAiplatformV1MemoryBankCustomizationConfig": { - "description": "Configuration for organizing memories for a particular scope.", + "description": "Represents configuration for organizing natural language memories for a particular scope.", "id": "GoogleCloudAiplatformV1MemoryBankCustomizationConfig", "properties": { + "consolidationConfig": { + "$ref": "GoogleCloudAiplatformV1MemoryBankCustomizationConfigConsolidationConfig", + "description": "Optional. Represents configuration for customizing how memories are consolidated together." + }, + "disableNaturalLanguageMemories": { + "description": "Optional. Indicates whether natural language memory generation should be disabled for all requests. By default, natural language memory generation is enabled. Set this to `true` when you only want to generate structured memories.", + "type": "boolean" + }, "enableThirdPersonMemories": { - "description": "Optional. If true, then the memories will be generated in the third person (i.e. \"The user generates memories with Memory Bank.\"). By default, the memories will be generated in the first person (i.e. \"I generate memories with Memory Bank.\")", + "description": "Optional. Indicates whether the memories will be generated in the third person (i.e. \"The user generates memories with Memory Bank.\"). By default, the memories will be generated in the first person (i.e. \"I generate memories with Memory Bank.\")", "type": "boolean" }, "generateMemoriesExamples": { - "description": "Optional. Examples of how to generate memories for a particular scope.", + "description": "Optional. Provides examples of how to generate memories for a particular scope.", "items": { "$ref": "GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExample" }, "type": "array" }, "memoryTopics": { - "description": "Optional. Topics of information that should be extracted from conversations and stored as memories. If not set, then Memory Bank's default topics will be used.", + "description": "Optional. Represents topics of information that should be extracted from conversations and stored as memories. If not set, then Memory Bank's default topics will be used.", "items": { "$ref": "GoogleCloudAiplatformV1MemoryBankCustomizationConfigMemoryTopic" }, "type": "array" }, "scopeKeys": { - "description": "Optional. The scope keys (i.e. 'user_id') for which to use this config. A request's scope must include all of the provided keys for the config to be used (order does not matter). If empty, then the config will be used for all requests that do not have a more specific config. Only one default config is allowed per Memory Bank.", + "description": "Optional. Represents the scope keys (i.e. 'user_id') for which to use this config. A request's scope must include all of the provided keys for the config to be used (order does not matter). If empty, then the config will be used for all requests that do not have a more specific config. Only one default config is allowed per Memory Bank.", "items": { "type": "string" }, @@ -44582,6 +46785,18 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1MemoryBankCustomizationConfigConsolidationConfig": { + "description": "Represents configuration for customizing how memories are consolidated.", + "id": "GoogleCloudAiplatformV1MemoryBankCustomizationConfigConsolidationConfig", + "properties": { + "revisionsPerCandidateCount": { + "description": "Optional. Represents the maximum number of revisions to consider for each candidate memory. If not set, then the default value (1) will be used, which means that only the latest revision will be considered.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExample": { "description": "An example of how to generate memories for a particular scope.", "id": "GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExample", @@ -44591,7 +46806,7 @@ "description": "A conversation source for the example." }, "generatedMemories": { - "description": "Optional. The memories that are expected to be generated from the input conversation. An empty list indicates that no memories are expected to be generated for the input conversation.", + "description": "Optional. Represents the memories that are expected to be generated from the input conversation. An empty list indicates that no memories are expected to be generated for the input conversation.", "items": { "$ref": "GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleGeneratedMemory" }, @@ -44605,7 +46820,7 @@ "id": "GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleConversationSource", "properties": { "events": { - "description": "Optional. The input conversation events for the example.", + "description": "Optional. Represents the input conversation events for the example.", "items": { "$ref": "GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleConversationSourceEvent" }, @@ -44620,7 +46835,7 @@ "properties": { "content": { "$ref": "GoogleCloudAiplatformV1Content", - "description": "Required. The content of the event." + "description": "Required. Represents the content of the event." } }, "type": "object" @@ -44630,11 +46845,11 @@ "id": "GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleGeneratedMemory", "properties": { "fact": { - "description": "Required. The fact to generate a memory from.", + "description": "Required. Represents the fact to generate a memory from.", "type": "string" }, "topics": { - "description": "Optional. The list of topics that the memory should be associated with. For example, use `custom_memory_topic_label = \"jargon\"` if the extracted memory is an example of memory extraction for the custom topic `jargon`.", + "description": "Optional. Represents the list of topics that the memory should be associated with. For example, use `custom_memory_topic_label = \"jargon\"` if the extracted memory is an example of memory extraction for the custom topic `jargon`.", "items": { "$ref": "GoogleCloudAiplatformV1MemoryTopicId" }, @@ -44663,11 +46878,11 @@ "id": "GoogleCloudAiplatformV1MemoryBankCustomizationConfigMemoryTopicCustomMemoryTopic", "properties": { "description": { - "description": "Required. Description of the memory topic. This should explain what information should be extracted for this topic.", + "description": "Required. Represents the description of the memory topic. This should explain what information should be extracted for this topic.", "type": "string" }, "label": { - "description": "Required. The label of the topic.", + "description": "Required. Represents the label of the topic.", "type": "string" } }, @@ -44678,7 +46893,7 @@ "id": "GoogleCloudAiplatformV1MemoryBankCustomizationConfigMemoryTopicManagedMemoryTopic", "properties": { "managedTopicEnum": { - "description": "Required. The managed topic.", + "description": "Required. Represents the managed topic.", "enum": [ "MANAGED_TOPIC_ENUM_UNSPECIFIED", "USER_PERSONAL_INFO", @@ -44687,11 +46902,11 @@ "EXPLICIT_INSTRUCTIONS" ], "enumDescriptions": [ - "Unspecified topic. This value should not be used.", - "Significant personal information about the User like first names, relationships, hobbies, important dates.", - "Stated or implied likes, dislikes, preferred styles, or patterns.", - "Important milestones or conclusions within the dialogue.", - "Information that the user explicitly requested to remember or forget." + "Represents an unspecified topic. This value should not be used.", + "Represents significant personal information about the User like first names, relationships, hobbies, important dates.", + "Represents stated or implied likes, dislikes, preferred styles, or patterns.", + "Represents important milestones or conclusions within the dialogue.", + "Represents information that the user explicitly requested to remember or forget." ], "type": "string" } @@ -44703,7 +46918,7 @@ "id": "GoogleCloudAiplatformV1MemoryConjunctionFilter", "properties": { "filters": { - "description": "Filters that will combined using AND logic.", + "description": "Represents filters that will be combined using AND logic.", "items": { "$ref": "GoogleCloudAiplatformV1MemoryFilter" }, @@ -44717,15 +46932,15 @@ "id": "GoogleCloudAiplatformV1MemoryFilter", "properties": { "key": { - "description": "Key of the filter. For example, \"author\" would apply to `metadata` entries with the key \"author\".", + "description": "Represents the key of the filter. For example, \"author\" would apply to `metadata` entries with the key \"author\".", "type": "string" }, "negate": { - "description": "If true, the filter will be negated.", + "description": "Indicates whether the filter will be negated.", "type": "boolean" }, "op": { - "description": "Operator to apply to the filter. If not set, then EQUAL will be used.", + "description": "Represents the operator to apply to the filter. If not set, then EQUAL will be used.", "enum": [ "OPERATOR_UNSPECIFIED", "EQUAL", @@ -44733,7 +46948,7 @@ "LESS_THAN" ], "enumDescriptions": [ - "Unspecified operator. Defaults to EQUAL.", + "Represents an unspecified operator. Defaults to EQUAL.", "Equal to.", "Greater than.", "Less than." @@ -44742,7 +46957,40 @@ }, "value": { "$ref": "GoogleCloudAiplatformV1MemoryMetadataValue", - "description": "Value to compare to." + "description": "Represents the value to compare to." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1MemoryGenerationTriggerConfig": { + "description": "Represents configuration for triggering generation.", + "id": "GoogleCloudAiplatformV1MemoryGenerationTriggerConfig", + "properties": { + "generationRule": { + "$ref": "GoogleCloudAiplatformV1MemoryGenerationTriggerConfigGenerationTriggerRule", + "description": "Optional. Represents the active rule that determines when to flush the buffer. If not set, then the stream will be force flushed immediately." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1MemoryGenerationTriggerConfigGenerationTriggerRule": { + "description": "Represents the active rule that determines when to flush the buffer.", + "id": "GoogleCloudAiplatformV1MemoryGenerationTriggerConfigGenerationTriggerRule", + "properties": { + "eventCount": { + "description": "Optional. Specifies to trigger generation when the event count reaches this limit.", + "format": "int32", + "type": "integer" + }, + "fixedInterval": { + "description": "Optional. Specifies to trigger generation at a fixed interval. The duration must have a minute-level granularity.", + "format": "google-duration", + "type": "string" + }, + "idleDuration": { + "description": "Optional. Specifies to trigger generation if the stream is inactive for the specified duration after the most recent event. The duration must have a minute-level granularity.", + "format": "google-duration", + "type": "string" } }, "type": "object" @@ -44752,20 +47000,20 @@ "id": "GoogleCloudAiplatformV1MemoryMetadataValue", "properties": { "boolValue": { - "description": "Boolean value.", + "description": "Represents a boolean value.", "type": "boolean" }, "doubleValue": { - "description": "Double value.", + "description": "Represents a double value.", "format": "double", "type": "number" }, "stringValue": { - "description": "String value.", + "description": "Represents a string value.", "type": "string" }, "timestampValue": { - "description": "Timestamp value. When filtering on timestamp values, only the seconds field will be compared.", + "description": "Represents a timestamp value. When filtering on timestamp values, only the seconds field will be compared.", "format": "google-datetime", "type": "string" } @@ -44777,19 +47025,19 @@ "id": "GoogleCloudAiplatformV1MemoryRevision", "properties": { "createTime": { - "description": "Output only. Timestamp when this Memory Revision was created.", + "description": "Output only. Represents the timestamp when this Memory Revision was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "expireTime": { - "description": "Output only. Timestamp of when this resource is considered expired.", + "description": "Output only. Represents the timestamp of when this resource is considered expired.", "format": "google-datetime", "readOnly": true, "type": "string" }, "extractedMemories": { - "description": "Output only. The extracted memories from the source content before consolidation when the memory was updated via GenerateMemories. This information was used to modify an existing Memory via Consolidation.", + "description": "Output only. Represents the extracted memories from the source content before consolidation when the memory was updated via GenerateMemories. This information was used to modify an existing Memory via Consolidation.", "items": { "$ref": "GoogleCloudAiplatformV1IntermediateExtractedMemory" }, @@ -44797,7 +47045,7 @@ "type": "array" }, "fact": { - "description": "Output only. The fact of the Memory Revision. This corresponds to the `fact` field of the parent Memory at the time of revision creation.", + "description": "Output only. Represents the fact of the Memory Revision. This corresponds to the `fact` field of the parent Memory at the time of revision creation.", "readOnly": true, "type": "string" }, @@ -44805,13 +47053,22 @@ "additionalProperties": { "type": "string" }, - "description": "Output only. The labels of the Memory Revision. These labels are applied to the MemoryRevision when it is created based on `GenerateMemoriesRequest.revision_labels`.", + "description": "Output only. Represents the labels of the Memory Revision. These labels are applied to the MemoryRevision when it is created based on `GenerateMemoriesRequest.revision_labels`.", "readOnly": true, "type": "object" }, "name": { - "description": "Identifier. The resource name of the Memory Revision. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}/revisions/{memory_revision}`", + "description": "Identifier. Represents the resource name of the Memory Revision. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}/revisions/{memory_revision}`", "type": "string" + }, + "structuredData": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. Represents the structured value of the memory at the time of revision creation.", + "readOnly": true, + "type": "object" } }, "type": "object" @@ -44821,11 +47078,11 @@ "id": "GoogleCloudAiplatformV1MemoryTopicId", "properties": { "customMemoryTopicLabel": { - "description": "Optional. The custom memory topic label.", + "description": "Optional. Represents the custom memory topic label.", "type": "string" }, "managedMemoryTopic": { - "description": "Optional. The managed memory topic.", + "description": "Optional. Represents the managed memory topic.", "enum": [ "MANAGED_TOPIC_ENUM_UNSPECIFIED", "USER_PERSONAL_INFO", @@ -44834,11 +47091,11 @@ "EXPLICIT_INSTRUCTIONS" ], "enumDescriptions": [ - "Unspecified topic. This value should not be used.", - "Significant personal information about the User like first names, relationships, hobbies, important dates.", - "Stated or implied likes, dislikes, preferred styles, or patterns.", - "Important milestones or conclusions within the dialogue.", - "Information that the user explicitly requested to remember or forget." + "Represents an unspecified topic. This value should not be used.", + "Represents significant personal information about the User like first names, relationships, hobbies, important dates.", + "Represents stated or implied likes, dislikes, preferred styles, or patterns.", + "Represents important milestones or conclusions within the dialogue.", + "Represents information that the user explicitly requested to remember or forget." ], "type": "string" } @@ -45041,6 +47298,10 @@ "$ref": "GoogleCloudAiplatformV1LLMBasedMetricSpec", "description": "Spec for an LLM based metric." }, + "metadata": { + "$ref": "GoogleCloudAiplatformV1MetricMetadata", + "description": "Optional. Metadata about the metric, used for visualization and organization." + }, "pairwiseMetricSpec": { "$ref": "GoogleCloudAiplatformV1PairwiseMetricSpec", "description": "Spec for pairwise metric." @@ -45060,6 +47321,55 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1MetricMetadata": { + "description": "Metadata about the metric, used for visualization and organization.", + "id": "GoogleCloudAiplatformV1MetricMetadata", + "properties": { + "otherMetadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. Flexible metadata for user-defined attributes.", + "type": "object" + }, + "scoreRange": { + "$ref": "GoogleCloudAiplatformV1MetricMetadataScoreRange", + "description": "Optional. The range of possible scores for this metric, used for plotting." + }, + "title": { + "description": "Optional. The user-friendly name for the metric. If not set for a registered metric, it will default to the metric's display name.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1MetricMetadataScoreRange": { + "description": "The range of possible scores for this metric, used for plotting.", + "id": "GoogleCloudAiplatformV1MetricMetadataScoreRange", + "properties": { + "description": { + "description": "Optional. The description of the score explaining the directionality etc.", + "type": "string" + }, + "max": { + "description": "Required. The maximum value of the score range (inclusive).", + "format": "double", + "type": "number" + }, + "min": { + "description": "Required. The minimum value of the score range (inclusive).", + "format": "double", + "type": "number" + }, + "step": { + "description": "Optional. The distance between discrete steps in the range. If unset, the range is assumed to be continuous.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1MetricResult": { "description": "Result for a single metric on a single instance.", "id": "GoogleCloudAiplatformV1MetricResult", @@ -45091,6 +47401,21 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1MetricSource": { + "description": "The metric source used for evaluation.", + "id": "GoogleCloudAiplatformV1MetricSource", + "properties": { + "metric": { + "$ref": "GoogleCloudAiplatformV1Metric", + "description": "Inline metric config." + }, + "metricResourceName": { + "description": "Optional. Resource name for registered metric.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1MetricxInput": { "description": "Input for MetricX metric.", "id": "GoogleCloudAiplatformV1MetricxInput", @@ -45185,7 +47510,8 @@ }, "dataLabelingDataset": { "$ref": "GoogleCloudAiplatformV1MigratableResourceDataLabelingDataset", - "description": "Output only. Represents one Dataset in datalabeling.googleapis.com.", + "deprecated": true, + "description": "Output only. Deprecated: Data Labeling Dataset migration is no longer supported. Represents one Dataset in datalabeling.googleapis.com.", "readOnly": true }, "lastMigrateTime": { @@ -45539,7 +47865,7 @@ "readOnly": true }, "name": { - "description": "The resource name of the Model.", + "description": "Identifier. The resource name of the Model.", "type": "string" }, "originalModelInfo": { @@ -48038,11 +50364,11 @@ "type": "object" }, "GoogleCloudAiplatformV1OutputFieldSpec": { - "description": "Defines a specification for a single output field.", + "description": "Specifies the properties of a single field that are included in each generated synthetic example. This helps the model understand what kind of data to generate for each field.", "id": "GoogleCloudAiplatformV1OutputFieldSpec", "properties": { "fieldName": { - "description": "Required. The name of the output field.", + "description": "Required. The name of this field in the generated synthetic data, such as \"email_subject\" or \"customer_review\".", "type": "string" }, "fieldType": { @@ -48055,16 +50381,16 @@ "AUDIO" ], "enumDescriptions": [ - "Field type is unspecified.", - "Arbitrary content field type.", - "Text field type.", - "Image field type.", - "Audio field type." + "The field type is not specified. Defaults to CONTENT.", + "The field can contain any type of content, including text, images, and audio.", + "The field contains only text.", + "The field contains image data.", + "The field contains audio data." ], "type": "string" }, "guidance": { - "description": "Optional. Optional, but recommended. Additional guidance specific to this field to provide targeted instructions for the LLM to generate the content of a single output field. While the LLM can sometimes infer content from the field name, providing explicit guidance is preferred.", + "description": "Optional. Specific instructions for the large language model on how to generate content for this particular field. While the LLM can sometimes infer content from the field name, providing explicit guidance is preferred. For example, for a field named \"review\", the guidance could be \"A positive review about a coffee maker.\"", "type": "string" } }, @@ -49325,6 +51651,13 @@ }, "type": "array" }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels with user-defined metadata for the request. It is used for billing and reporting only. Label keys and values can be no longer than 63 characters (Unicode codepoints) and can only contain lowercase letters, numeric characters, underscores, and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter.", + "type": "object" + }, "parameters": { "description": "Optional. The parameters that govern the prediction. The schema of the parameters may be specified via Endpoint's DeployedModels' Model's PredictSchemata's parameters_schema_uri.", "type": "any" @@ -49870,7 +52203,7 @@ "type": "string" }, "name": { - "description": "Output only. The resource name of the PublisherModel.", + "description": "Output only. Identifier. The resource name of the PublisherModel.", "readOnly": true, "type": "string" }, @@ -51762,8 +54095,12 @@ "description": "Configuration for how to generate memories.", "id": "GoogleCloudAiplatformV1ReasoningEngineContextSpecMemoryBankConfigGenerationConfig", "properties": { + "generationTriggerConfig": { + "$ref": "GoogleCloudAiplatformV1MemoryGenerationTriggerConfig", + "description": "Optional. Specifies the default trigger configuration for generating memories using `IngestEvents`." + }, "model": { - "description": "Required. The model used to generate memories. Format: `projects/{project}/locations/{location}/publishers/google/models/{model}`.", + "description": "Optional. The model used to generate memories. Format: `projects/{project}/locations/{location}/publishers/google/models/{model}`.", "type": "string" } }, @@ -51842,6 +54179,10 @@ }, "type": "array" }, + "containerSpec": { + "$ref": "GoogleCloudAiplatformV1ReasoningEngineSpecContainerSpec", + "description": "Deploy from a container image with a defined entrypoint and commands." + }, "deploymentSpec": { "$ref": "GoogleCloudAiplatformV1ReasoningEngineSpecDeploymentSpec", "description": "Optional. The specification of a Reasoning Engine deployment." @@ -51880,6 +54221,17 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1ReasoningEngineSpecContainerSpec": { + "description": "Specification for deploying from a container image.", + "id": "GoogleCloudAiplatformV1ReasoningEngineSpecContainerSpec", + "properties": { + "imageUri": { + "description": "Required. The Artifact Registry Docker image URI (e.g., us-central1-docker.pkg.dev/my-project/my-repo/my-image:tag) of the container image that is to be run on each worker replica.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1ReasoningEngineSpecDeploymentSpec": { "description": "The specification of a Reasoning Engine deployment.", "id": "GoogleCloudAiplatformV1ReasoningEngineSpecDeploymentSpec", @@ -51896,13 +54248,17 @@ }, "type": "array" }, + "keepAliveProbe": { + "$ref": "GoogleCloudAiplatformV1KeepAliveProbe", + "description": "Optional. Specifies the configuration for keep-alive probe. Contains configuration on a specified endpoint that a deployment host should use to keep the container alive based on the probe settings." + }, "maxInstances": { "description": "Optional. The maximum number of application instances that can be launched to handle increased traffic. Defaults to 100. Range: [1, 1000]. If VPC-SC or PSC-I is enabled, the acceptable range is [1, 100].", "format": "int32", "type": "integer" }, "minInstances": { - "description": "Optional. The minimum number of application instances that will be kept running at all times. Defaults to 1. Range: [0, 10].", + "description": "Optional. The minimum number of application instances that will be kept running at all times. Defaults to 1. Range: [0, 75].", "format": "int32", "type": "integer" }, @@ -51954,6 +54310,10 @@ "description": "Specification for deploying from source code.", "id": "GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpec", "properties": { + "agentConfigSource": { + "$ref": "GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSource", + "description": "Source code is generated from the agent config." + }, "developerConnectSource": { "$ref": "GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecDeveloperConnectSource", "description": "Source code is in a Git repository managed by Developer Connect." @@ -51973,6 +54333,36 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSource": { + "description": "Specification for the deploying from agent config.", + "id": "GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSource", + "properties": { + "adkConfig": { + "$ref": "GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSourceAdkConfig", + "description": "Required. The ADK configuration." + }, + "inlineSource": { + "$ref": "GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecInlineSource", + "description": "Optional. Any additional files needed to interpret the config. If a `requirements.txt` file is present in the `inline_source`, the corresponding packages will be installed. If no `requirements.txt` file is present in `inline_source`, then the latest version of `google-adk` will be installed for interpreting the ADK config." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSourceAdkConfig": { + "description": "Configuration for the Agent Development Kit (ADK).", + "id": "GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSourceAdkConfig", + "properties": { + "jsonConfig": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Required. The value of the ADK config in JSON format.", + "type": "object" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecDeveloperConnectConfig": { "description": "Specifies the configuration for fetching source code from a Git repository that is managed by Developer Connect. This includes the repository, revision, and directory to use.", "id": "GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecDeveloperConnectConfig", @@ -52438,6 +54828,23 @@ }, "type": "array" }, + "memoryTypes": { + "description": "Optional. Specifies the types of memories to retrieve. If this field is empty or not provided, the request will default to retrieving only memories of type `NATURAL_LANGUAGE_COLLECTION`. If populated, the request will retrieve memories matching any of the specified `MemoryType` values.", + "items": { + "enum": [ + "MEMORY_TYPE_UNSPECIFIED", + "NATURAL_LANGUAGE_COLLECTION", + "STRUCTURED_PROFILE" + ], + "enumDescriptions": [ + "Represents an unspecified memory type. This value should not be used.", + "Indicates belonging to a collection of natural language memories.", + "Indicates belonging to a structured profile." + ], + "type": "string" + }, + "type": "array" + }, "scope": { "additionalProperties": { "type": "string" @@ -53181,10 +55588,27 @@ "format": "google-datetime", "type": "string" }, + "latestSandboxEnvironmentSnapshot": { + "description": "Output only. The resource name of the latest snapshot taken for this SandboxEnvironment.", + "readOnly": true, + "type": "string" + }, "name": { "description": "Identifier. The name of the SandboxEnvironment.", "type": "string" }, + "owner": { + "description": "Optional. Owner information for this sandbox environment. A Sandbox can only be restored from a snapshot that belongs to the same owner. If not set, sandbox will be created as the default owner.", + "type": "string" + }, + "sandboxEnvironmentSnapshot": { + "description": "Optional. The resource name of the SandboxEnvironmentSnapshot to use for creating this SandboxEnvironment. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot}`", + "type": "string" + }, + "sandboxEnvironmentTemplate": { + "description": "Optional. The name of the SandboxEnvironmentTemplate specified in the parent Agent Engine resource that this SandboxEnvironment is created from. Only one of `sandbox_environment_template` and `spec` should be set.", + "type": "string" + }, "spec": { "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentSpec", "description": "Optional. The configuration of the SandboxEnvironment." @@ -53238,6 +55662,16 @@ "readOnly": true, "type": "string" }, + "routingToken": { + "description": "Output only. The routing token for the SandboxEnvironment.", + "readOnly": true, + "type": "string" + }, + "sandboxHostname": { + "description": "Output only. The hostname of the SandboxEnvironment.", + "readOnly": true, + "type": "string" + }, "sandboxInternalIp": { "description": "Output only. The internal IP address of the SandboxEnvironment.", "readOnly": true, @@ -53246,6 +55680,76 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1SandboxEnvironmentSnapshot": { + "description": "SandboxEnvironmentSnapshot is a snapshot of the SandboxEnvironment.", + "id": "GoogleCloudAiplatformV1SandboxEnvironmentSnapshot", + "properties": { + "createTime": { + "description": "Output only. The timestamp when this SandboxEnvironmentSnapshot was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Required. The display name of the SandboxEnvironmentSnapshot.", + "type": "string" + }, + "expireTime": { + "description": "Optional. Timestamp in UTC of when this SandboxEnvironmentSnapshot is considered expired. This is *always* provided on output, regardless of what `expiration` was sent on input.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the SandboxEnvironmentSnapshot. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot}`", + "type": "string" + }, + "owner": { + "description": "Optional. Owner information for this sandbox snapshot. Different owners will have isolations on snapshot storage and identity. If not set, snapshot will be created as the default owner.", + "type": "string" + }, + "parentSnapshot": { + "description": "Output only. The resource name of the parent SandboxEnvironmentSnapshot. Empty if this is a root Snapshot (the first snapshot from a newly created sandbox). Can be used to reconstruct the whole ancestry tree of snapshots.", + "readOnly": true, + "type": "string" + }, + "postSnapshotAction": { + "description": "Optional. Input only. Action to take on the source SandboxEnvironment after the snapshot is taken. This field is only used in CreateSandboxEnvironmentSnapshotRequest and it is not stored in the resource.", + "enum": [ + "POST_SNAPSHOT_ACTION_UNSPECIFIED", + "RUNNING", + "PAUSE" + ], + "enumDescriptions": [ + "The default value. This value is unused.", + "Sandbox environment will continue to run after snapshot is taken.", + "Sandbox environment will be paused after snapshot is taken." + ], + "type": "string" + }, + "sizeBytes": { + "description": "Optional. Output only. Size of the snapshot data in bytes.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "sourceSandboxEnvironment": { + "description": "Required. The resource name of the source SandboxEnvironment this snapshot was taken from.", + "type": "string" + }, + "ttl": { + "description": "Optional. Input only. The TTL for the sandbox environment snapshot. The expiration time is computed: now + TTL.", + "format": "google-duration", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when this SandboxEnvironment was most recently updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1SandboxEnvironmentSpec": { "description": "The specification of a SandboxEnvironment.", "id": "GoogleCloudAiplatformV1SandboxEnvironmentSpec", @@ -53290,6 +55794,176 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1SandboxEnvironmentTemplate": { + "description": "The specification of a SandboxEnvironmentTemplate. A SandboxEnvironmentTemplate defines a template for creating SandboxEnvironments.", + "id": "GoogleCloudAiplatformV1SandboxEnvironmentTemplate", + "properties": { + "createTime": { + "description": "Output only. The timestamp when this SandboxEnvironmentTemplate was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "customContainerEnvironment": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateCustomContainerEnvironment", + "description": "The sandbox environment for custom container workloads." + }, + "defaultContainerEnvironment": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateDefaultContainerEnvironment", + "description": "The sandbox environment for default container workloads." + }, + "displayName": { + "description": "Required. The display name of the SandboxEnvironmentTemplate.", + "type": "string" + }, + "egressControlConfig": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateEgressControlConfig", + "description": "Optional. The configuration for egress control of this template." + }, + "name": { + "description": "Identifier. The resource name of the SandboxEnvironmentTemplate. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentTemplates/{sandbox_environment_template}`", + "type": "string" + }, + "state": { + "description": "Output only. The state of the sandbox environment template.", + "enum": [ + "UNSPECIFIED", + "PROVISIONING", + "ACTIVE", + "DEPROVISIONING", + "DELETED", + "FAILED" + ], + "enumDescriptions": [ + "The default value. This value is unused.", + "Runtime resources are being allocated for the sandbox environment.", + "Sandbox runtime is ready for serving.", + "Sandbox runtime is halted, performing tear down tasks.", + "Sandbox has terminated with underlying runtime failure.", + "Sandbox has failed to provision." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when this SandboxEnvironmentTemplate was most recently updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1SandboxEnvironmentTemplateCustomContainerEnvironment": { + "description": "The customized sandbox runtime environment for BYOC.", + "id": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateCustomContainerEnvironment", + "properties": { + "customContainerSpec": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateCustomContainerSpec", + "description": "The specification of the custom container environment." + }, + "ports": { + "description": "Ports to expose from the container.", + "items": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateNetworkPort" + }, + "type": "array" + }, + "resources": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateResourceRequirements", + "description": "Resource requests and limits for the container." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1SandboxEnvironmentTemplateCustomContainerSpec": { + "description": "Specification for deploying from a custom container image.", + "id": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateCustomContainerSpec", + "properties": { + "imageUri": { + "description": "Required. The Artifact Registry Docker image URI (e.g., us-central1-docker.pkg.dev/my-project/my-repo/my-image:tag) of the container image that is to be run on each worker replica.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1SandboxEnvironmentTemplateDefaultContainerEnvironment": { + "description": "The default sandbox runtime environment for default container workloads.", + "id": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateDefaultContainerEnvironment", + "properties": { + "defaultContainerCategory": { + "description": "Required. The category of the default container image.", + "enum": [ + "DEFAULT_CONTAINER_CATEGORY_UNSPECIFIED", + "DEFAULT_CONTAINER_CATEGORY_COMPUTER_USE" + ], + "enumDescriptions": [ + "The default value. This value is unused.", + "The default container image for Computer Use." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1SandboxEnvironmentTemplateEgressControlConfig": { + "description": "Configuration for egress control of sandbox instances.", + "id": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateEgressControlConfig", + "properties": { + "internetAccess": { + "description": "Optional. Whether to allow internet access.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1SandboxEnvironmentTemplateNetworkPort": { + "description": "Represents a network port in a container.", + "id": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateNetworkPort", + "properties": { + "port": { + "description": "Optional. Port number to expose. This must be a valid port number, between 1 and 65535.", + "format": "int32", + "type": "integer" + }, + "protocol": { + "description": "Optional. Protocol for port. Defaults to TCP if not specified.", + "enum": [ + "PROTOCOL_UNSPECIFIED", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "Unspecified protocol. Defaults to TCP.", + "TCP protocol.", + "UDP protocol." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1SandboxEnvironmentTemplateResourceRequirements": { + "description": "Message to define resource requests and limits (mirroring Kubernetes) for each sandbox instance created from this template.", + "id": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateResourceRequirements", + "properties": { + "limits": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The maximum amounts of compute resources allowed. Keys are resource names (e.g., \"cpu\", \"memory\"). Values are quantities (e.g., \"500m\", \"1Gi\").", + "type": "object" + }, + "requests": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The requested amounts of compute resources. Keys are resource names (e.g., \"cpu\", \"memory\"). Values are quantities (e.g., \"250m\", \"512Mi\").", + "type": "object" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1SavedQuery": { "description": "A SavedQuery is a view of the dataset. It references a subset of annotations by problem type and filters.", "id": "GoogleCloudAiplatformV1SavedQuery", @@ -53573,7 +56247,7 @@ "type": "object" }, "description": { - "description": "Optional. Description of the schema.", + "description": "Optional. Describes the data. The model uses this field to understand the purpose of the schema and how to use it. It is a best practice to provide a clear and descriptive explanation for the schema and its properties here, rather than in the prompt.", "type": "string" }, "enum": { @@ -55599,6 +58273,20 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1SchemaPromptSpecInteractionData": { + "description": "Defines data for an interaction prompt.", + "id": "GoogleCloudAiplatformV1SchemaPromptSpecInteractionData", + "properties": { + "interactionIds": { + "description": "Optional. Lists interaction IDs associated with the prompt. This maps 1:1 to PromptMessage.contents. If InteractionData is present, every prompt message has an interaction ID.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1SchemaPromptSpecMultimodalPrompt": { "description": "Prompt variation that embeds preambles to prompt string.", "id": "GoogleCloudAiplatformV1SchemaPromptSpecMultimodalPrompt", @@ -55731,6 +58419,10 @@ }, "type": "array" }, + "interactionData": { + "$ref": "GoogleCloudAiplatformV1SchemaPromptSpecInteractionData", + "description": "Data for interaction use case." + }, "outputPrefixes": { "description": "Preamble: The output prefixes before each example output.", "items": { @@ -58224,6 +60916,14 @@ "description": "Identifier. The resource name of the event. Format:`projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}/events/{event}`.", "type": "string" }, + "rawEvent": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. Weakly typed raw event data in proto struct format.", + "type": "object" + }, "timestamp": { "description": "Required. Timestamp when the event was created on client side.", "format": "google-datetime", @@ -59716,6 +62416,10 @@ "description": "Tuning Spec for Supervised Tuning for first party models.", "id": "GoogleCloudAiplatformV1SupervisedTuningSpec", "properties": { + "evaluationConfig": { + "$ref": "GoogleCloudAiplatformV1EvaluationConfig", + "description": "Optional. Evaluation Config for Tuning Job." + }, "exportLastCheckpointOnly": { "description": "Optional. If set to true, disable intermediate checkpoints for SFT and only the last checkpoint will be exported. Otherwise, enable intermediate checkpoints for SFT. Default is false.", "type": "boolean" @@ -59753,7 +62457,7 @@ "type": "object" }, "GoogleCloudAiplatformV1SyntheticExample": { - "description": "Represents a single synthetic example, composed of multiple fields. Used for providing few-shot examples in the request and for returning generated examples in the response.", + "description": "A single instance of generated synthetic data. Each example is made up of one or more named fields, as defined in `OutputFieldSpec`. These examples are used as few-shot examples to show the model what you want (in `GenerateSyntheticDataRequest.examples`) and to return generated examples in the response (in `GenerateSyntheticDataResponse.synthetic_examples`).", "id": "GoogleCloudAiplatformV1SyntheticExample", "properties": { "fields": { @@ -59767,15 +62471,15 @@ "type": "object" }, "GoogleCloudAiplatformV1SyntheticField": { - "description": "Represents a single named field within a SyntheticExample.", + "description": "Represents a single named field within a synthetic example, consisting of a name and the actual content.", "id": "GoogleCloudAiplatformV1SyntheticField", "properties": { "content": { "$ref": "GoogleCloudAiplatformV1Content", - "description": "Required. The content of the field." + "description": "Required. The actual content or value for this field. This can be text, images, or other types of data." }, "fieldName": { - "description": "Optional. The name of the field.", + "description": "Optional. The name of the specific field, such as \"product_name\" or \"review_text\".", "type": "string" } }, @@ -59793,11 +62497,11 @@ "type": "object" }, "GoogleCloudAiplatformV1TaskDescriptionStrategy": { - "description": "Defines a generation strategy based on a high-level task description.", + "description": "Defines a generation strategy based on a general task description.", "id": "GoogleCloudAiplatformV1TaskDescriptionStrategy", "properties": { "taskDescription": { - "description": "Required. A high-level description of the synthetic data to be generated.", + "description": "Required. A general description of the type of synthetic data you want to generate. For example, \"Generate customer reviews for a new smartphone.\"", "type": "string" } }, @@ -60504,7 +63208,7 @@ "type": "object" }, "GoogleCloudAiplatformV1ToolCodeExecution": { - "description": "Tool that executes code generated by the model, and automatically returns the result to the model. See also [ExecutableCode]and [CodeExecutionResult] which are input and output to this tool.", + "description": "Tool that executes code generated by the model, and automatically returns the result to the model. See also ExecutableCode and CodeExecutionResult, which are input and output to this tool.", "id": "GoogleCloudAiplatformV1ToolCodeExecution", "properties": {}, "type": "object" @@ -60582,10 +63286,41 @@ "type": "string" }, "type": "array" + }, + "searchTypes": { + "$ref": "GoogleCloudAiplatformV1ToolGoogleSearchSearchTypes", + "description": "Optional. The set of search types to enable. If not set, web search is enabled by default." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1ToolGoogleSearchImageSearch": { + "description": "Image search for grounding and related configurations.", + "id": "GoogleCloudAiplatformV1ToolGoogleSearchImageSearch", + "properties": {}, + "type": "object" + }, + "GoogleCloudAiplatformV1ToolGoogleSearchSearchTypes": { + "description": "Different types of search that can be enabled on the GoogleSearch tool.", + "id": "GoogleCloudAiplatformV1ToolGoogleSearchSearchTypes", + "properties": { + "imageSearch": { + "$ref": "GoogleCloudAiplatformV1ToolGoogleSearchImageSearch", + "description": "Optional. Setting this field enables image search. Image bytes are returned." + }, + "webSearch": { + "$ref": "GoogleCloudAiplatformV1ToolGoogleSearchWebSearch", + "description": "Optional. Setting this field enables web search. Only text results are returned." } }, "type": "object" }, + "GoogleCloudAiplatformV1ToolGoogleSearchWebSearch": { + "description": "Standard web search for grounding and related configurations. Only text results are returned.", + "id": "GoogleCloudAiplatformV1ToolGoogleSearchWebSearch", + "properties": {}, + "type": "object" + }, "GoogleCloudAiplatformV1ToolNameMatchInput": { "description": "Input for tool name match metric.", "id": "GoogleCloudAiplatformV1ToolNameMatchInput", @@ -61352,6 +64087,21 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1Transcription": { + "description": "Audio transcription in Server Content.", + "id": "GoogleCloudAiplatformV1Transcription", + "properties": { + "finished": { + "description": "Optional. The bool indicates the end of the transcription.", + "type": "boolean" + }, + "text": { + "description": "Optional. Transcription text.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1Trial": { "description": "A message representing a Trial. A Trial contains a unique set of Parameters that has been or will be evaluated, along with the objective metrics got by running the Trial.", "id": "GoogleCloudAiplatformV1Trial", @@ -61598,6 +64348,14 @@ "description": "Output only. Only populated when job's state is `JOB_STATE_FAILED` or `JOB_STATE_CANCELLED`.", "readOnly": true }, + "evaluateDatasetRuns": { + "description": "Output only. Evaluation runs for the Tuning Job.", + "items": { + "$ref": "GoogleCloudAiplatformV1EvaluateDatasetRun" + }, + "readOnly": true, + "type": "array" + }, "experiment": { "description": "Output only. The Experiment associated with this TuningJob.", "readOnly": true, @@ -62920,7 +65678,7 @@ } }, "servicePath": "", - "title": "Vertex AI API", + "title": "Agent Platform API", "version": "v1", "version_module": true } \ No newline at end of file diff --git a/discovery/aiplatform-v1beta1.json b/discovery/aiplatform-v1beta1.json index a5d6d42d8f9..164043fb653 100644 --- a/discovery/aiplatform-v1beta1.json +++ b/discovery/aiplatform-v1beta1.json @@ -15,7 +15,7 @@ "baseUrl": "https://aiplatform.googleapis.com/", "batchPath": "batch", "canonicalName": "Aiplatform", - "description": "Train high-quality custom machine learning models with minimal machine learning expertise and effort.", + "description": "Build, scale, govern, and optimize sophisticated agents and models.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/vertex-ai/", "endpoints": [ @@ -2682,7 +2682,7 @@ ] }, "predict": { - "description": "Perform an online prediction.", + "description": "", "flatPath": "v1beta1/endpoints/{endpointsId}:predict", "httpMethod": "POST", "id": "aiplatform.endpoints.predict", @@ -7684,6 +7684,166 @@ } } }, + "onlineEvaluators": { + "resources": { + "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": "v1beta1/onlineEvaluators/{onlineEvaluatorsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.onlineEvaluators.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^onlineEvaluators/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/onlineEvaluators/{onlineEvaluatorsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.onlineEvaluators.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^onlineEvaluators/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/onlineEvaluators/{onlineEvaluatorsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.onlineEvaluators.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^onlineEvaluators/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/onlineEvaluators/{onlineEvaluatorsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.onlineEvaluators.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": "^onlineEvaluators/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/onlineEvaluators/{onlineEvaluatorsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.onlineEvaluators.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^onlineEvaluators/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, "operations": { "methods": { "cancel": { @@ -8268,6 +8428,62 @@ "resources": { "locations": { "methods": { + "askContexts": { + "description": "Agentic Retrieval Ask API for RAG.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}:askContexts", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.askContexts", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location from which to retrieve RagContexts. The users must have permission to make a call in the project. Format: `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}:askContexts", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1AskContextsRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1AskContextsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "asyncRetrieveContexts": { + "description": "Asynchronous API to retrieves relevant contexts for a query.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}:asyncRetrieveContexts", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.asyncRetrieveContexts", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location from which to retrieve RagContexts. The users must have permission to make a call in the project. Format: `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}:asyncRetrieveContexts", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1AsyncRetrieveContextsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "augmentPrompt": { "description": "Given an input prompt, it returns augmented prompt from vertex rag store to guide LLM towards generating grounded responses.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}:augmentPrompt", @@ -8465,8 +8681,36 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "generateLossClusters": { + "description": "Generates loss clusters from evaluation results. This is a statelss API method that would not modify the EvaluationSet resource.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}:generateLossClusters", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.generateLossClusters", + "parameterOrder": [ + "location" + ], + "parameters": { + "location": { + "description": "Required. The resource name of the Location. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+location}:generateLossClusters", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1GenerateLossClustersRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "generateSyntheticData": { - "description": "Generates synthetic data based on the provided configuration.", + "description": "Generates synthetic (artificial) data based on a description", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}:generateSyntheticData", "httpMethod": "POST", "id": "aiplatform.projects.locations.generateSyntheticData", @@ -8475,7 +8719,7 @@ ], "parameters": { "location": { - "description": "Required. The resource name of the Location to run the job. Format: `projects/{project}/locations/{location}`", + "description": "Required. The geographic location where the synthetic data generation request is processed. This should be in the format `projects/{project}/locations/{location}`. For example, `projects/my-project/locations/us-central1`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -8493,6 +8737,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "generateUserScenarios": { + "description": "Generates user scenarios for agent evaluation.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}:generateUserScenarios", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.generateUserScenarios", + "parameterOrder": [ + "location" + ], + "parameters": { + "location": { + "description": "Required. The resource name of the Location to run the job. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+location}:generateUserScenarios", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1GenerateUserScenariosRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1GenerateUserScenariosResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "Gets information about a location.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}", @@ -8544,7 +8816,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "aiplatform.projects.locations.list", @@ -8553,7 +8825,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -12597,7 +12869,7 @@ ] }, "predict": { - "description": "Perform an online prediction.", + "description": "", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/endpoints/{endpointsId}:predict", "httpMethod": "POST", "id": "aiplatform.projects.locations.endpoints.predict", @@ -13120,6 +13392,40 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ] + }, + "responses": { + "description": "Forwards arbitrary HTTP requests for both streaming and non-streaming cases. To use this method, invoke_route_prefix must be set to allow the paths that will be specified in the request.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/endpoints/openapi/responses", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.endpoints.openapi.responses", + "parameterOrder": [ + "endpoint" + ], + "parameters": { + "deployedModelId": { + "description": "ID of the DeployedModel that serves the invoke request.", + "location": "query", + "type": "string" + }, + "endpoint": { + "description": "Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/endpoints/openapi$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+endpoint}/responses", + "request": { + "$ref": "GoogleApiHttpBody" + }, + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] } } }, @@ -13543,6 +13849,137 @@ } }, "evaluationMetrics": { + "methods": { + "create": { + "description": "Creates an EvaluationMetric.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/evaluationMetrics", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.evaluationMetrics.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "evaluationMetricId": { + "description": "Optional. The ID to use for the EvaluationMetric, which will become the final component of the EvaluationMetric's resource name. This value should be 1-63 characters, and valid characters are /a-z-/. The first character must be a lowercase letter, and the last character must be a lowercase letter or number.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Location to create the EvaluationMetric in. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/evaluationMetrics", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1EvaluationMetric" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1EvaluationMetric" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an EvaluationMetric.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/evaluationMetrics/{evaluationMetricsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.evaluationMetrics.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the EvaluationMetric resource to be deleted. Format: `projects/{project}/locations/{location}/evaluationMetrics/{evaluation_metric}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/evaluationMetrics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an EvaluationMetric.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/evaluationMetrics/{evaluationMetricsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.evaluationMetrics.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the EvaluationMetric resource. Format: `projects/{project}/locations/{location}/evaluationMetrics/{evaluation_metric}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/evaluationMetrics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1EvaluationMetric" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists EvaluationMetrics.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/evaluationMetrics", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.evaluationMetrics.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filter expression that matches a subset of the EvaluationMetrics to show. For field names both snake_case and camelCase are supported. For more information about filter syntax, see [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order by default. Use `desc` after a field name for descending.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of EvaluationMetrics to return.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListEvaluationMetrics` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Location from which to list the EvaluationMetrics. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/evaluationMetrics", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListEvaluationMetricsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, "resources": { "operations": { "methods": { @@ -23363,7 +23800,7 @@ ], "parameters": { "name": { - "description": "The resource name of the Model.", + "description": "Identifier. The resource name of the Model.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/models/[^/]+$", "required": true, @@ -25483,76 +25920,29 @@ } } }, - "operations": { + "onlineEvaluators": { "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "activate": { + "description": "Activates an OnlineEvaluator.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/onlineEvaluators/{onlineEvaluatorsId}:activate", "httpMethod": "POST", - "id": "aiplatform.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": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.operations.delete", + "id": "aiplatform.projects.locations.onlineEvaluators.activate", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The name of the operation resource to be deleted.", + "description": "Required. The name of the OnlineEvaluator to activate. Format: projects/{project}/locations/{location}/onlineEvaluators/{id}.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/onlineEvaluators/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", - "httpMethod": "GET", - "id": "aiplatform.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": "v1beta1/{+name}:activate", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1ActivateOnlineEvaluatorRequest" }, - "path": "v1beta1/{+name}", "response": { "$ref": "GoogleLongrunningOperation" }, @@ -25560,112 +25950,26 @@ "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations", - "httpMethod": "GET", - "id": "aiplatform.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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1beta1/{+name}/operations", - "response": { - "$ref": "GoogleLongrunningListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:wait", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.operations.wait", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to wait on.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}:wait", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, - "persistentResources": { - "methods": { "create": { - "description": "Creates a PersistentResource.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources", + "description": "Creates an OnlineEvaluator in the given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/onlineEvaluators", "httpMethod": "POST", - "id": "aiplatform.projects.locations.persistentResources.create", + "id": "aiplatform.projects.locations.onlineEvaluators.create", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The resource name of the Location to create the PersistentResource in. Format: `projects/{project}/locations/{location}`", + "description": "Required. The parent resource where the OnlineEvaluator will be created. Format: projects/{project}/locations/{location}.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" - }, - "persistentResourceId": { - "description": "Required. The ID to use for the PersistentResource, which become the final component of the PersistentResource's resource name. The maximum length is 63 characters, and valid characters are `/^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$/`.", - "location": "query", - "type": "string" } }, - "path": "v1beta1/{+parent}/persistentResources", + "path": "v1beta1/{+parent}/onlineEvaluators", "request": { - "$ref": "GoogleCloudAiplatformV1beta1PersistentResource" + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluator" }, "response": { "$ref": "GoogleLongrunningOperation" @@ -25675,18 +25979,18 @@ ] }, "delete": { - "description": "Deletes a PersistentResource.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}", + "description": "Deletes an OnlineEvaluator.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/onlineEvaluators/{onlineEvaluatorsId}", "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.persistentResources.delete", + "id": "aiplatform.projects.locations.onlineEvaluators.delete", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the PersistentResource to be deleted. Format: `projects/{project}/locations/{location}/persistentResources/{persistent_resource}`", + "description": "Required. The name of the OnlineEvaluator to delete. Format: projects/{project}/locations/{location}/onlineEvaluators/{id}.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/onlineEvaluators/[^/]+$", "required": true, "type": "string" } @@ -25700,84 +26004,94 @@ ] }, "get": { - "description": "Gets a PersistentResource.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}", + "description": "Gets details of an OnlineEvaluator.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/onlineEvaluators/{onlineEvaluatorsId}", "httpMethod": "GET", - "id": "aiplatform.projects.locations.persistentResources.get", + "id": "aiplatform.projects.locations.onlineEvaluators.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the PersistentResource resource. Format: `projects/{project_id_or_number}/locations/{location_id}/persistentResources/{persistent_resource_id}`", + "description": "Required. The name of the OnlineEvaluator to retrieve. Format: projects/{project}/locations/{location}/onlineEvaluators/{id}.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/onlineEvaluators/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleCloudAiplatformV1beta1PersistentResource" + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluator" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Lists PersistentResources in a Location.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources", + "description": "Lists the OnlineEvaluators for the given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/onlineEvaluators", "httpMethod": "GET", - "id": "aiplatform.projects.locations.persistentResources.list", + "id": "aiplatform.projects.locations.onlineEvaluators.list", "parameterOrder": [ "parent" ], "parameters": { + "filter": { + "description": "Optional. Standard list filter. Supported fields: * `create_time` * `update_time` * `agent_resource` Example: `create_time>\"2026-01-01T00:00:00-04:00\"` where the timestamp is in RFC 3339 format) Based on aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. A comma-separated list of fields to order by. The default sorting order is ascending. Use \"desc\" after a field name for descending. Supported fields: * `create_time` * `update_time` Example: `create_time desc`. Based on aip.dev/132.", + "location": "query", + "type": "string" + }, "pageSize": { - "description": "Optional. The standard list page size.", + "description": "Optional. The maximum number of OnlineEvaluators to return. The service may return fewer than this value. If unspecified, at most 50 OnlineEvaluators will be returned. The maximum value is 100; values above 100 will be coerced to 100. Based on aip.dev/158.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Optional. The standard list page token. Typically obtained via ListPersistentResourcesResponse.next_page_token of the previous PersistentResourceService.ListPersistentResource call.", + "description": "Optional. A token identifying a page of results the server should return. Based on aip.dev/158.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The resource name of the Location to list the PersistentResources from. Format: `projects/{project}/locations/{location}`", + "description": "Required. The parent resource of the OnlineEvaluators to list. Format: projects/{project}/locations/{location}.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/persistentResources", + "path": "v1beta1/{+parent}/onlineEvaluators", "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListPersistentResourcesResponse" + "$ref": "GoogleCloudAiplatformV1beta1ListOnlineEvaluatorsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Updates a PersistentResource.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}", + "description": "Updates the fields of an OnlineEvaluator.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/onlineEvaluators/{onlineEvaluatorsId}", "httpMethod": "PATCH", - "id": "aiplatform.projects.locations.persistentResources.patch", + "id": "aiplatform.projects.locations.onlineEvaluators.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Immutable. Resource name of a PersistentResource.", + "description": "Identifier. The resource name of the OnlineEvaluator. Format: projects/{project}/locations/{location}/onlineEvaluators/{id}.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/onlineEvaluators/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "Required. Specify the fields to be overwritten in the PersistentResource by the update method.", + "description": "Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -25785,7 +26099,7 @@ }, "path": "v1beta1/{+name}", "request": { - "$ref": "GoogleCloudAiplatformV1beta1PersistentResource" + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluator" }, "response": { "$ref": "GoogleLongrunningOperation" @@ -25794,26 +26108,26 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "reboot": { - "description": "Reboots a PersistentResource.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}:reboot", + "suspend": { + "description": "Suspends an OnlineEvaluator. When an OnlineEvaluator is suspended, it won't run any evaluations until it is activated again.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/onlineEvaluators/{onlineEvaluatorsId}:suspend", "httpMethod": "POST", - "id": "aiplatform.projects.locations.persistentResources.reboot", + "id": "aiplatform.projects.locations.onlineEvaluators.suspend", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the PersistentResource resource. Format: `projects/{project_id_or_number}/locations/{location_id}/persistentResources/{persistent_resource_id}`", + "description": "Required. The name of the OnlineEvaluator to suspend. Format: projects/{project}/locations/{location}/onlineEvaluators/{id}.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/onlineEvaluators/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}:reboot", + "path": "v1beta1/{+name}:suspend", "request": { - "$ref": "GoogleCloudAiplatformV1beta1RebootPersistentResourceRequest" + "$ref": "GoogleCloudAiplatformV1beta1SuspendOnlineEvaluatorRequest" }, "response": { "$ref": "GoogleLongrunningOperation" @@ -25828,9 +26142,9 @@ "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}:cancel", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/onlineEvaluators/{onlineEvaluatorsId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.projects.locations.persistentResources.operations.cancel", + "id": "aiplatform.projects.locations.onlineEvaluators.operations.cancel", "parameterOrder": [ "name" ], @@ -25838,7 +26152,7 @@ "name": { "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/onlineEvaluators/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -25853,9 +26167,9 @@ }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/onlineEvaluators/{onlineEvaluatorsId}/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.persistentResources.operations.delete", + "id": "aiplatform.projects.locations.onlineEvaluators.operations.delete", "parameterOrder": [ "name" ], @@ -25863,7 +26177,7 @@ "name": { "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/onlineEvaluators/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -25878,9 +26192,9 @@ }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/onlineEvaluators/{onlineEvaluatorsId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.projects.locations.persistentResources.operations.get", + "id": "aiplatform.projects.locations.onlineEvaluators.operations.get", "parameterOrder": [ "name" ], @@ -25888,7 +26202,7 @@ "name": { "description": "The name of the operation resource.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/onlineEvaluators/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -25903,9 +26217,9 @@ }, "list": { "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/onlineEvaluators/{onlineEvaluatorsId}/operations", "httpMethod": "GET", - "id": "aiplatform.projects.locations.persistentResources.operations.list", + "id": "aiplatform.projects.locations.onlineEvaluators.operations.list", "parameterOrder": [ "name" ], @@ -25918,7 +26232,506 @@ "name": { "description": "The name of the operation's parent resource.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/onlineEvaluators/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/onlineEvaluators/{onlineEvaluatorsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.onlineEvaluators.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/onlineEvaluators/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.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": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.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": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.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": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "persistentResources": { + "methods": { + "create": { + "description": "Creates a PersistentResource.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.persistentResources.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location to create the PersistentResource in. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "persistentResourceId": { + "description": "Required. The ID to use for the PersistentResource, which become the final component of the PersistentResource's resource name. The maximum length is 63 characters, and valid characters are `/^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$/`.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/persistentResources", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1PersistentResource" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a PersistentResource.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.persistentResources.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the PersistentResource to be deleted. Format: `projects/{project}/locations/{location}/persistentResources/{persistent_resource}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a PersistentResource.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.persistentResources.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the PersistentResource resource. Format: `projects/{project_id_or_number}/locations/{location_id}/persistentResources/{persistent_resource_id}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1PersistentResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists PersistentResources in a Location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.persistentResources.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token. Typically obtained via ListPersistentResourcesResponse.next_page_token of the previous PersistentResourceService.ListPersistentResource call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Location to list the PersistentResources from. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/persistentResources", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListPersistentResourcesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a PersistentResource.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}", + "httpMethod": "PATCH", + "id": "aiplatform.projects.locations.persistentResources.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. Resource name of a PersistentResource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Specify the fields to be overwritten in the PersistentResource by the update method.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1PersistentResource" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "reboot": { + "description": "Reboots a PersistentResource.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}:reboot", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.persistentResources.reboot", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the PersistentResource resource. Format: `projects/{project_id_or_number}/locations/{location_id}/persistentResources/{persistent_resource_id}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:reboot", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1RebootPersistentResourceRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.persistentResources.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.persistentResources.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.persistentResources.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/persistentResources/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/persistentResources/{persistentResourcesId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.persistentResources.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/[^/]+/persistentResources/[^/]+$", "required": true, "type": "string" }, @@ -26604,7 +27417,7 @@ ] }, "predict": { - "description": "Perform an online prediction.", + "description": "", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/publishers/{publishersId}/models/{modelsId}:predict", "httpMethod": "POST", "id": "aiplatform.projects.locations.publishers.models.predict", @@ -27993,6 +28806,34 @@ }, "reasoningEngines": { "methods": { + "asyncQuery": { + "description": "Async query using a reasoning engine.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}:asyncQuery", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.asyncQuery", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:asyncQuery", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1AsyncQueryReasoningEngineRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "create": { "description": "Creates a reasoning engine.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines", @@ -28328,7 +29169,436 @@ }, "resources": { "a2a": { + "methods": { + "card": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2a/card", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.a2a.card", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^card$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "extendedAgentCard": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2a/extendedAgentCard", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.a2a.extendedAgentCard", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^extendedAgentCard$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "tasks": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2a/tasks", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.a2a.tasks", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, "resources": { + "message": { + "methods": { + "send": { + "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2a/message:send", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.a2a.message.send", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", + "location": "path", + "pattern": "^message$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:send", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "stream": { + "description": "Streams queries using a reasoning engine instance via the A2A streaming protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2a/message:stream", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.a2a.message.stream", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. e.g., v1/message:stream.", + "location": "path", + "pattern": "^message$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:stream", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "tasks": { + "methods": { + "a2aGetReasoningEngine": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2a/tasks/{tasksId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.a2a.tasks.a2aGetReasoningEngine", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "cancel": { + "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2a/tasks/{tasksId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.a2a.tasks.cancel", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:cancel", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "pushNotificationConfigs": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2a/tasks/{tasksId}/pushNotificationConfigs", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.a2a.tasks.pushNotificationConfigs", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "subscribe": { + "description": "Stream get request for reasoning engine instance via the A2A stream get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2a/tasks/{tasksId}:subscribe", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.a2a.tasks.subscribe", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123:subscribe`.", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:subscribe", + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "pushNotificationConfigs": { + "methods": { + "a2aGetReasoningEngine": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2a/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.a2a.tasks.pushNotificationConfigs.a2aGetReasoningEngine", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, "v1": { "methods": { "card": { @@ -28372,6 +29642,90 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "extendedAgentCard": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2a/v1/extendedAgentCard", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.a2a.v1.extendedAgentCard", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/extendedAgentCard$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "tasks": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2a/v1/tasks", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.a2a.v1.tasks", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/tasks$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { @@ -28680,46 +30034,259 @@ } } }, - "examples": { - "resources": { - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/examples/{examplesId}/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.examples.operations.cancel", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/examples/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/examples/{examplesId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.reasoningEngines.examples.operations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", + "a2aTasks": { + "methods": { + "appendEvents": { + "description": "Appends TaskEvents to an A2aTask.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2aTasks/{a2aTasksId}:appendEvents", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.a2aTasks.appendEvents", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the A2aTask to append events to. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/a2aTasks/{a2a_task}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/a2aTasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:appendEvents", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1AppendA2aTaskEventsRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1AppendA2aTaskEventsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates an A2aTask.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2aTasks", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.a2aTasks.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "a2aTaskId": { + "description": "Required. User-defined ID of the A2aTask. This ID must be unique within the ReasoningEngine. It must be 1-63 characters, start with a lowercase letter or number, end with a lowercase letter or number, and only contain lowercase letters, numbers, and hyphens [AIP-122](https://google.aip.dev/122). Starting with a number is allowed for compatibility with the auto-generated UUID from A2A SDK.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the ReasoningEngine to create the A2aTask under. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/a2aTasks", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1A2aTask" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1A2aTask" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an A2aTask.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2aTasks/{a2aTasksId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.reasoningEngines.a2aTasks.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the A2aTask to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/a2aTasks/{a2a_task}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/a2aTasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an A2aTask.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2aTasks/{a2aTasksId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.a2aTasks.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the A2aTask. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/a2aTasks/{a2a_task}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/a2aTasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1A2aTask" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists A2aTasks for a ReasoningEngine.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2aTasks", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.a2aTasks.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). Supported fields: * `context_id` * `state` Example: `context_id=\"abc\"`, `state=\"WORKING\"`.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending. If this field is omitted, the default ordering is `create_time` descending. More detail in [AIP-132](https://google.aip.dev/132). Supported fields: * `create_time` * `update_time` Example: `create_time desc`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of tasks to return. The service may return fewer than this value. If unspecified, at most 10 tasks will be returned. The maximum value is 100; values above 100 will hit exception.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list AgentEngineTaskStoreService.ListA2aTasks call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the ReasoningEngine to list the A2aTasks under. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/a2aTasks", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListA2aTasksResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "events": { + "methods": { + "list": { + "description": "Lists TaskEvents for an A2aTask.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/a2aTasks/{a2aTasksId}/events", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.a2aTasks.events.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter. Supported fields: * `create_time` range (i.e. `create_time>=\"2025-01-31T11:30:00-04:00\"` where the timestamp is in RFC 3339 format) More detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. A comma-separated list of fields to order the results by. If this field is omitted, the results will be ordered by `event_sequence_number` in descending order. For each field, the default sort order is ascending. To specify descending order for a field, append a ` desc` suffix. For example: `create_time desc`. Supported fields: * `create_time` * `event_sequence_number`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of events to return. The service may return fewer than this value. If unspecified, at most 100 events will be returned. The maximum value is 100; values above 100 will hit exception.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list AgentEngineTaskStoreService.ListA2aTaskEvents call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the A2aTask to list the TaskEvents under. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/a2aTasks/{a2a_task}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/a2aTasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/events", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListA2aTaskEventsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "examples": { + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/examples/{examplesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.examples.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/examples/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/examples/{examplesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.reasoningEngines.examples.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/examples/[^/]+/operations/[^/]+$", "required": true, @@ -28965,6 +30532,11 @@ "parent" ], "parameters": { + "memoryId": { + "description": "Optional. The user defined ID to use for memory, which will become the final component of the memory resource name. If not provided, Vertex AI will generate a value for this ID. This value may be up to 63 characters, and valid characters are `[a-z0-9-]`. The first character must be a letter, and the last character must be a letter or number.", + "location": "query", + "type": "string" + }, "parent": { "description": "Required. The resource name of the ReasoningEngine to create the Memory under. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", @@ -29062,6 +30634,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "ingestEvents": { + "description": "Ingests events for a Memory Bank.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/memories:ingestEvents", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.memories.ingestEvents", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the ReasoningEngine to ingest events to. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/memories:ingestEvents", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1IngestEventsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "list": { "description": "List Memories.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/memories", @@ -29118,7 +30718,7 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", + "description": "Identifier. Represents the resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/memories/[^/]+$", "required": true, @@ -29198,6 +30798,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "retrieveProfiles": { + "description": "Retrieves profiles.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/memories:retrieveProfiles", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.memories.retrieveProfiles", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the ReasoningEngine to retrieve profiles from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/memories:retrieveProfiles", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1RetrieveProfilesRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1RetrieveProfilesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "rollback": { "description": "Rollback Memory to a specific revision.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}:rollback", @@ -29612,29 +31240,26 @@ } } }, - "sandboxEnvironments": { + "runtimeRevisions": { "methods": { - "create": { - "description": "Creates a SandboxEnvironment in a given reasoning engine.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.create", + "delete": { + "description": "Deletes a reasoning engine revision.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.delete", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "parent": { - "description": "Required. The resource name of the reasoning engine to create the SandboxEnvironment in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`.", + "name": { + "description": "Required. The name of the ReasoningEngineRuntimeRevision resource to be deleted. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/runtimeRevisions/{runtime_revision}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/sandboxEnvironments", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironment" - }, + "path": "v1beta1/{+name}", "response": { "$ref": "GoogleLongrunningOperation" }, @@ -29642,120 +31267,123 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "delete": { - "description": "Deletes the specific SandboxEnvironment.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.delete", + "get": { + "description": "Gets a reasoning engine runtime revision.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the SandboxEnvironment to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", + "description": "Required. The name of the ReasoningEngineRuntimeRevision resource. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/runtimeRevisions/{runtimeRevision}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineRuntimeRevision" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "execute": { - "description": "Executes using a sandbox environment.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}:execute", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.execute", + "list": { + "description": "Lists runtime revisions in a reasoning engine.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.list", "parameterOrder": [ - "name" + "parent" ], "parameters": { - "name": { - "description": "Required. The resource name of the sandbox environment to execute. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", + "filter": { + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of ReasoningEngineRuntimeRevisions to return. The service may return fewer than this value. If unspecified, at most 50 revisions will be returned. The maximum value is 100; values above 100 will be coerced to 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the ReasoningEngine to list the ReasoningEngineRuntimeRevisions from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}:execute", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1ExecuteSandboxEnvironmentRequest" - }, + "path": "v1beta1/{+parent}/runtimeRevisions", "response": { - "$ref": "GoogleCloudAiplatformV1beta1ExecuteSandboxEnvironmentResponse" + "$ref": "GoogleCloudAiplatformV1beta1ListReasoningEngineRuntimeRevisionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "get": { - "description": "Gets details of the specific SandboxEnvironment.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.get", + "query": { + "description": "Queries using a reasoning engine.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}:query", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.query", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the sandbox environment. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}", + "path": "v1beta1/{+name}:query", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1QueryReasoningEngineRequest" + }, "response": { - "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironment" + "$ref": "GoogleCloudAiplatformV1beta1QueryReasoningEngineResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "list": { - "description": "Lists SandboxEnvironments in a given reasoning engine.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.list", + "streamQuery": { + "description": "Streams queries using a reasoning engine.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}:streamQuery", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.streamQuery", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "filter": { - "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Optional. The maximum number of SandboxEnvironments to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironments will be returned.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironments` call. Provide this to retrieve the subsequent page.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "name": { + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/sandboxEnvironments", + "path": "v1beta1/{+name}:streamQuery", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1StreamQueryReasoningEngineRequest" + }, "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentsResponse" + "$ref": "GoogleApiHttpBody" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -29763,461 +31391,929 @@ } }, "resources": { - "operations": { + "a2a": { "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.cancel", + "card": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/card", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.card", "parameterOrder": [ - "name" + "name", + "a2aEndpoint" ], "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "pattern": "^card$", "required": true, "type": "string" - } - }, - "path": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, "name": { - "description": "The name of the operation resource to be deleted.", + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}", + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", "response": { - "$ref": "GoogleProtobufEmpty" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}", + "extendedAgentCard": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/extendedAgentCard", "httpMethod": "GET", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.get", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.extendedAgentCard", "parameterOrder": [ - "name" + "name", + "a2aEndpoint" ], "parameters": { - "name": { - "description": "The name of the operation resource.", + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "pattern": "^extendedAgentCard$", "required": true, "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.list", - "parameterOrder": [ - "name" - ], - "parameters": { - "filter": { - "description": "The standard list filter.", + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", "location": "query", "type": "string" }, "name": { - "description": "The name of the operation's parent resource.", + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" } }, - "path": "v1beta1/{+name}/operations", + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", "response": { - "$ref": "GoogleLongrunningListOperationsResponse" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}:wait", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.wait", + "tasks": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/tasks", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.tasks", "parameterOrder": [ - "name" + "name", + "a2aEndpoint" ], "parameters": { - "name": { - "description": "The name of the operation resource to wait on.", + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "pattern": "^tasks$", "required": true, "type": "string" }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", "location": "query", "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" } }, - "path": "v1beta1/{+name}:wait", + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", "response": { - "$ref": "GoogleLongrunningOperation" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] } - } - } - } - }, - "sessions": { - "methods": { - "appendEvent": { - "description": "Appends an event to a given session.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}:appendEvent", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.sessions.appendEvent", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the session to append event to. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:appendEvent", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1SessionEvent" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1AppendEventResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "description": "Creates a new Session.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.sessions.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The resource name of the location to create the session in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/sessions", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1Session" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Deletes details of the specific Session.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.reasoningEngines.sessions.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the session. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets details of the specific Session.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.reasoningEngines.sessions.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the session. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Session" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists Sessions in a given reasoning engine.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.reasoningEngines.sessions.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Optional. The standard list filter. Supported fields: * `display_name` * `user_id` * `labels` Example: `display_name=\"abc\"`, `user_id=\"123\"`, `labels.key=\"value\"`.", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending. Supported fields: * `create_time` * `update_time` Example: `create_time desc`.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Optional. The maximum number of sessions to return. The service may return fewer than this value. If unspecified, at most 100 sessions will be returned.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. The next_page_token value returned from a previous list SessionService.ListSessions call.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the location to list sessions from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/sessions", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListSessionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "patch": { - "description": "Updates the specific Session.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}", - "httpMethod": "PATCH", - "id": "aiplatform.projects.locations.reasoningEngines.sessions.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Identifier. The resource name of the session. Format: 'projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}'.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+$", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1Session" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Session" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "events": { - "methods": { - "list": { - "description": "Lists Events in a given session.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/events", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.reasoningEngines.sessions.events.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Optional. The standard list filter. Supported fields: * `timestamp` range (i.e. `timestamp>=\"2025-01-31T11:30:00-04:00\"` where the timestamp is in RFC 3339 format) More detail in [AIP-160](https://google.aip.dev/160).", - "location": "query", - "type": "string" + "resources": { + "message": { + "methods": { + "send": { + "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/message:send", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.message.send", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", + "location": "path", + "pattern": "^message$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:send", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "orderBy": { - "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending. Supported fields: * `timestamp` Example: `timestamp desc`.", - "location": "query", - "type": "string" + "stream": { + "description": "Streams queries using a reasoning engine instance via the A2A streaming protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/message:stream", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.message.stream", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. e.g., v1/message:stream.", + "location": "path", + "pattern": "^message$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:stream", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "tasks": { + "methods": { + "a2aGetReasoningEngine": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/tasks/{tasksId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.tasks.a2aGetReasoningEngine", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "pageSize": { - "description": "Optional. The maximum number of events to return. The service may return fewer than this value. If unspecified, at most 100 events will be returned. These events are ordered by timestamp in ascending order.", - "format": "int32", - "location": "query", - "type": "integer" + "cancel": { + "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/tasks/{tasksId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.tasks.cancel", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:cancel", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "pageToken": { - "description": "Optional. The next_page_token value returned from a previous list SessionService.ListEvents call.", - "location": "query", - "type": "string" + "pushNotificationConfigs": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/tasks/{tasksId}/pushNotificationConfigs", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.tasks.pushNotificationConfigs", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "parent": { - "description": "Required. The resource name of the session to list events from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/events", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListEventsResponse" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.sessions.operations.cancel", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.reasoningEngines.sessions.operations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" + "subscribe": { + "description": "Stream get request for reasoning engine instance via the A2A stream get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/tasks/{tasksId}:subscribe", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.tasks.subscribe", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123:subscribe`.", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:subscribe", + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.reasoningEngines.sessions.operations.get", + "resources": { + "pushNotificationConfigs": { + "methods": { + "a2aGetReasoningEngine": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.tasks.pushNotificationConfigs.a2aGetReasoningEngine", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "v1": { + "methods": { + "card": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/card", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.v1.card", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/card$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "extendedAgentCard": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/extendedAgentCard", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.v1.extendedAgentCard", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/extendedAgentCard$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "tasks": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/tasks", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.v1.tasks", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/tasks$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "message": { + "methods": { + "send": { + "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/message:send", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.v1.message.send", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", + "location": "path", + "pattern": "^v1/message$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:send", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "stream": { + "description": "Streams queries using a reasoning engine instance via the A2A streaming protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/message:stream", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.v1.message.stream", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. e.g., v1/message:stream.", + "location": "path", + "pattern": "^v1/message$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:stream", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "tasks": { + "methods": { + "a2aGetReasoningEngine": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/tasks/{tasksId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.v1.tasks.a2aGetReasoningEngine", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/tasks/[^/]+$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "cancel": { + "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/tasks/{tasksId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.v1.tasks.cancel", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", + "location": "path", + "pattern": "^v1/tasks/[^/]+$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:cancel", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "pushNotificationConfigs": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/tasks/{tasksId}/pushNotificationConfigs", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.v1.tasks.pushNotificationConfigs", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/tasks/[^/]+/pushNotificationConfigs$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "subscribe": { + "description": "Stream get request for reasoning engine instance via the A2A stream get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/tasks/{tasksId}:subscribe", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.v1.tasks.subscribe", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123:subscribe`.", + "location": "path", + "pattern": "^v1/tasks/[^/]+$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:subscribe", + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "pushNotificationConfigs": { + "methods": { + "a2aGetReasoningEngine": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.a2a.v1.tasks.pushNotificationConfigs.a2aGetReasoningEngine", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/tasks/[^/]+/pushNotificationConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.operations.get", "parameterOrder": [ "name" ], @@ -30225,7 +32321,7 @@ "name": { "description": "The name of the operation resource.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -30240,9 +32336,9 @@ }, "list": { "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/operations", "httpMethod": "GET", - "id": "aiplatform.projects.locations.reasoningEngines.sessions.operations.list", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.operations.list", "parameterOrder": [ "name" ], @@ -30255,7 +32351,7 @@ "name": { "description": "The name of the operation's parent resource.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" }, @@ -30286,9 +32382,9 @@ }, "wait": { "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}:wait", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/operations/{operationsId}:wait", "httpMethod": "POST", - "id": "aiplatform.projects.locations.reasoningEngines.sessions.operations.wait", + "id": "aiplatform.projects.locations.reasoningEngines.runtimeRevisions.operations.wait", "parameterOrder": [ "name" ], @@ -30296,7 +32392,7 @@ "name": { "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/runtimeRevisions/[^/]+/operations/[^/]+$", "required": true, "type": "string" }, @@ -30318,1389 +32414,711 @@ } } } - } - } - }, - "schedules": { - "methods": { - "create": { - "description": "Creates a Schedule.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.schedules.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The resource name of the Location to create the Schedule in. Format: `projects/{project}/locations/{location}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/schedules", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1Schedule" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Schedule" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Deletes a Schedule.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.schedules.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the Schedule resource to be deleted. Format: `projects/{project}/locations/{location}/schedules/{schedule}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets a Schedule.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.schedules.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the Schedule resource. Format: `projects/{project}/locations/{location}/schedules/{schedule}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Schedule" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] }, - "list": { - "description": "Lists Schedules in a Location.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.schedules.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Lists the Schedules that match the filter expression. The following fields are supported: * `display_name`: Supports `=`, `!=` comparisons, and `:` wildcard. * `state`: Supports `=` and `!=` comparisons. * `request`: Supports existence of the check. (e.g. `create_pipeline_job_request:*` --> Schedule has create_pipeline_job_request). * `create_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. Values must be in RFC 3339 format. * `start_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. Values must be in RFC 3339 format. * `end_time`: Supports `=`, `!=`, `<`, `>`, `<=`, `>=` comparisons and `:*` existence check. Values must be in RFC 3339 format. * `next_run_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. Values must be in RFC 3339 format. Filter expressions can be combined together using logical operators (`NOT`, `AND` & `OR`). The syntax to define filter expression is based on https://google.aip.dev/160. Examples: * `state=\"ACTIVE\" AND display_name:\"my_schedule_*\"` * `NOT display_name=\"my_schedule\"` * `create_time>\"2021-05-18T00:00:00Z\"` * `end_time>\"2021-05-18T00:00:00Z\" OR NOT end_time:*` * `create_pipeline_job_request:*`", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "A comma-separated list of fields to order by. The default sort order is in ascending order. Use \"desc\" after a field name for descending. You can have multiple order_by fields provided. For example, using \"create_time desc, end_time\" will order results by create time in descending order, and if there are multiple schedules having the same create time, order them by the end time in ascending order. If order_by is not specified, it will order by default with create_time in descending order. Supported fields: * `create_time` * `start_time` * `end_time` * `next_run_time`", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "The standard list page size. Default to 100 if not specified.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "The standard list page token. Typically obtained via ListSchedulesResponse.next_page_token of the previous ScheduleService.ListSchedules call.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the Location to list the Schedules from. Format: `projects/{project}/locations/{location}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/schedules", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListSchedulesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "patch": { - "description": "Updates an active or paused Schedule. When the Schedule is updated, new runs will be scheduled starting from the updated next execution time after the update time based on the time_specification in the updated Schedule. All unstarted runs before the update time will be skipped while already created runs will NOT be paused or canceled.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}", - "httpMethod": "PATCH", - "id": "aiplatform.projects.locations.schedules.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Immutable. The resource name of the Schedule.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+$", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "Required. The update mask applies to the resource. See google.protobuf.FieldMask.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1Schedule" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Schedule" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "pause": { - "description": "Pauses a Schedule. Will mark Schedule.state to 'PAUSED'. If the schedule is paused, no new runs will be created. Already created runs will NOT be paused or canceled.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}:pause", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.schedules.pause", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the Schedule resource to be paused. Format: `projects/{project}/locations/{location}/schedules/{schedule}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:pause", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1PauseScheduleRequest" - }, - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "resume": { - "description": "Resumes a paused Schedule to start scheduling new runs. Will mark Schedule.state to 'ACTIVE'. Only paused Schedule can be resumed. When the Schedule is resumed, new runs will be scheduled starting from the next execution time after the current time based on the time_specification in the Schedule. If Schedule.catch_up is set up true, all missed runs will be scheduled for backfill first.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}:resume", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.schedules.resume", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the Schedule resource to be resumed. Format: `projects/{project}/locations/{location}/schedules/{schedule}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:resume", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1ResumeScheduleRequest" - }, - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "operations": { + "sandboxEnvironmentSnapshots": { "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.schedules.operations.cancel", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}/operations/{operationsId}", + "description": "Deletes the specific SandboxEnvironmentSnapshot.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}", "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.schedules.operations.delete", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.delete", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The name of the operation resource to be deleted.", + "description": "Required. The resource name of the SandboxEnvironmentSnapshot to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleProtobufEmpty" + "$ref": "GoogleLongrunningOperation" }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}/operations/{operationsId}", + "description": "Gets details of the specific SandboxEnvironmentSnapshot.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}", "httpMethod": "GET", - "id": "aiplatform.projects.locations.schedules.operations.get", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The name of the operation resource.", + "description": "Required. The resource name of the sandbox environment snapshot. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentSnapshot" }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}/operations", + "description": "Lists SandboxEnvironmentSnapshots in a given reasoning engine.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots", "httpMethod": "GET", - "id": "aiplatform.projects.locations.schedules.operations.list", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.list", "parameterOrder": [ - "name" + "parent" ], "parameters": { "filter": { - "description": "The standard list filter.", + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", "location": "query", "type": "string" }, - "name": { - "description": "The name of the operation's parent resource.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+$", - "required": true, - "type": "string" - }, "pageSize": { - "description": "The standard list page size.", + "description": "Optional. The maximum number of SandboxEnvironmentSnapshots to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentSnapshots will be returned. Values above 100 will be coerced to 100.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The standard list page token.", + "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironmentSnapshots` call. Provide this to retrieve the subsequent page.", "location": "query", "type": "string" }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" + "parent": { + "description": "Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" } }, - "path": "v1beta1/{+name}/operations", + "path": "v1beta1/{+parent}/sandboxEnvironmentSnapshots", "response": { - "$ref": "GoogleLongrunningListOperationsResponse" + "$ref": "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentSnapshotsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}/operations/{operationsId}:wait", + } + }, + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.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/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "sandboxEnvironmentTemplates": { + "methods": { + "create": { + "description": "Creates a SandboxEnvironmentTemplate in a given reasoning engine.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates", "httpMethod": "POST", - "id": "aiplatform.projects.locations.schedules.operations.wait", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.create", "parameterOrder": [ - "name" + "parent" ], "parameters": { - "name": { - "description": "The name of the operation resource to wait on.", + "parent": { + "description": "Required. The resource name of the reasoning engine to create the SandboxEnvironmentTemplate in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", "required": true, "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" } }, - "path": "v1beta1/{+name}:wait", + "path": "v1beta1/{+parent}/sandboxEnvironmentTemplates", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplate" + }, "response": { "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - } - } - } - } - }, - "solvers": { - "resources": { - "operations": { - "methods": { + }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/solvers/{solversId}/operations/{operationsId}", + "description": "Deletes the specific SandboxEnvironmentTemplate.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}", "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.solvers.operations.delete", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.delete", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The name of the operation resource to be deleted.", + "description": "Required. The resource name of the SandboxEnvironmentTemplate to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentTemplates/{sandbox_environment_template}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/solvers/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleProtobufEmpty" + "$ref": "GoogleLongrunningOperation" }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/solvers/{solversId}/operations/{operationsId}", + "description": "Gets details of the specific SandboxEnvironmentTemplate.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}", "httpMethod": "GET", - "id": "aiplatform.projects.locations.solvers.operations.get", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The name of the operation resource.", + "description": "Required. The resource name of the sandbox environment template. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentTemplates/{sandbox_environment_template}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/solvers/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplate" }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/solvers/{solversId}/operations", + "description": "Lists SandboxEnvironmentTemplates in a given reasoning engine.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates", "httpMethod": "GET", - "id": "aiplatform.projects.locations.solvers.operations.list", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.list", "parameterOrder": [ - "name" + "parent" ], "parameters": { "filter": { - "description": "The standard list filter.", + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", "location": "query", "type": "string" }, - "name": { - "description": "The name of the operation's parent resource.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/solvers/[^/]+$", - "required": true, - "type": "string" - }, "pageSize": { - "description": "The standard list page size.", + "description": "Optional. The maximum number of SandboxEnvironmentTemplates to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentTemplates will be returned.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The standard list page token.", + "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironmentTemplates` call. Provide this to retrieve the subsequent page.", "location": "query", "type": "string" }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" + "parent": { + "description": "Required. The resource name of the reasoning engine to list sandbox environment templates from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" } }, - "path": "v1beta1/{+name}/operations", + "path": "v1beta1/{+parent}/sandboxEnvironmentTemplates", "response": { - "$ref": "GoogleLongrunningListOperationsResponse" + "$ref": "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentTemplatesResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] } - } - } - } - }, - "specialistPools": { - "methods": { - "create": { - "description": "Creates a SpecialistPool.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.specialistPools.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The parent Project name for the new SpecialistPool. The form is `projects/{project}/locations/{location}`.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/specialistPools", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1SpecialistPool" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Deletes a SpecialistPool as well as all Specialists in the pool.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.specialistPools.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "force": { - "description": "If set to true, any specialist managers in this SpecialistPool will also be deleted. (Otherwise, the request will only work if the SpecialistPool has no specialist managers.)", - "location": "query", - "type": "boolean" - }, - "name": { - "description": "Required. The resource name of the SpecialistPool to delete. Format: `projects/{project}/locations/{location}/specialistPools/{specialist_pool}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets a SpecialistPool.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.specialistPools.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the SpecialistPool resource. The form is `projects/{project}/locations/{location}/specialistPools/{specialist_pool}`.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1SpecialistPool" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists SpecialistPools in a Location.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.specialistPools.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "The standard list page token. Typically obtained by ListSpecialistPoolsResponse.next_page_token of the previous SpecialistPoolService.ListSpecialistPools call. Return first page if empty.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The name of the SpecialistPool's parent resource. Format: `projects/{project}/locations/{location}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "readMask": { - "description": "Mask specifying which fields to read. FieldMask represents a set of", - "format": "google-fieldmask", - "location": "query", - "type": "string" + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.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/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } - }, - "path": "v1beta1/{+parent}/specialistPools", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListSpecialistPoolsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + } }, - "patch": { - "description": "Updates a SpecialistPool.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}", - "httpMethod": "PATCH", - "id": "aiplatform.projects.locations.specialistPools.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the SpecialistPool.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+$", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "Required. The update mask applies to the resource.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1SpecialistPool" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "operations": { + "sandboxEnvironments": { "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}/operations/{operationsId}:cancel", + "create": { + "description": "Creates a SandboxEnvironment in a given reasoning engine.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments", "httpMethod": "POST", - "id": "aiplatform.projects.locations.specialistPools.operations.cancel", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.create", "parameterOrder": [ - "name" + "parent" ], "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", + "parent": { + "description": "Required. The resource name of the reasoning engine to create the SandboxEnvironment in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}:cancel", + "path": "v1beta1/{+parent}/sandboxEnvironments", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironment" + }, "response": { - "$ref": "GoogleProtobufEmpty" + "$ref": "GoogleLongrunningOperation" }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}/operations/{operationsId}", + "description": "Deletes the specific SandboxEnvironment.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}", "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.specialistPools.operations.delete", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.delete", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The name of the operation resource to be deleted.", + "description": "Required. The resource name of the SandboxEnvironment to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleProtobufEmpty" + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "execute": { + "description": "Executes using a sandbox environment.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}:execute", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.execute", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the sandbox environment to execute. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:execute", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1ExecuteSandboxEnvironmentRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ExecuteSandboxEnvironmentResponse" }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}/operations/{operationsId}", + "description": "Gets details of the specific SandboxEnvironment.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}", "httpMethod": "GET", - "id": "aiplatform.projects.locations.specialistPools.operations.get", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The name of the operation resource.", + "description": "Required. The resource name of the sandbox environment. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironment" }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}/operations", + "description": "Lists SandboxEnvironments in a given reasoning engine.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments", "httpMethod": "GET", - "id": "aiplatform.projects.locations.specialistPools.operations.list", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.list", "parameterOrder": [ - "name" + "parent" ], "parameters": { "filter": { - "description": "The standard list filter.", + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", "location": "query", "type": "string" }, - "name": { - "description": "The name of the operation's parent resource.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+$", - "required": true, - "type": "string" - }, "pageSize": { - "description": "The standard list page size.", + "description": "Optional. The maximum number of SandboxEnvironments to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironments will be returned.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The standard list page token.", + "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironments` call. Provide this to retrieve the subsequent page.", "location": "query", "type": "string" }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" + "parent": { + "description": "Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", + "required": true, + "type": "string" } }, - "path": "v1beta1/{+name}/operations", + "path": "v1beta1/{+parent}/sandboxEnvironments", "response": { - "$ref": "GoogleLongrunningListOperationsResponse" + "$ref": "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}/operations/{operationsId}:wait", + "snapshot": { + "description": "Snapshots the specific SandboxEnvironment resource and creates a SandboxEnvironmentSnapshot resource.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}:snapshot", "httpMethod": "POST", - "id": "aiplatform.projects.locations.specialistPools.operations.wait", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.snapshot", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The name of the operation resource to wait on.", + "description": "Required. The resource name of the sandbox environment to snapshot. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", "required": true, "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" } }, - "path": "v1beta1/{+name}:wait", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } - }, - "studies": { - "methods": { - "create": { - "description": "Creates a Study. A resource name will be generated after creation of the Study.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The resource name of the Location to create the CustomJob in. Format: `projects/{project}/locations/{location}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/studies", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1Study" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Study" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Deletes a Study.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.studies.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the Study resource to be deleted. Format: `projects/{project}/locations/{location}/studies/{study}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets a Study by name.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.studies.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the Study resource. Format: `projects/{project}/locations/{location}/studies/{study}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Study" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists all the studies in a region for an associated project.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.studies.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "pageSize": { - "description": "Optional. The maximum number of studies to return per \"page\" of results. If unspecified, service will pick an appropriate default.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. A page token to request the next page of results. If unspecified, there are no subsequent pages.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the Location to list the Study from. Format: `projects/{project}/locations/{location}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/studies", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListStudiesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "lookup": { - "description": "Looks a study up using the user-defined display_name field instead of the fully qualified resource name.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies:lookup", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.lookup", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The resource name of the Location to get the Study from. Format: `projects/{project}/locations/{location}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/studies:lookup", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1LookupStudyRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Study" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.operations.cancel", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.studies.operations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/operations/{operationsId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.studies.operations.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/operations", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.studies.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/[^/]+/studies/[^/]+$", - "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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1beta1/{+name}/operations", - "response": { - "$ref": "GoogleLongrunningListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/operations/{operationsId}:wait", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.operations.wait", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to wait on.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}:wait", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, - "trials": { - "methods": { - "addTrialMeasurement": { - "description": "Adds a measurement of the objective metrics to a Trial. This measurement is assumed to have been taken before the Trial is complete.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}:addTrialMeasurement", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.trials.addTrialMeasurement", - "parameterOrder": [ - "trialName" - ], - "parameters": { - "trialName": { - "description": "Required. The name of the trial to add measurement. Format: `projects/{project}/locations/{location}/studies/{study}/trials/{trial}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+trialName}:addTrialMeasurement", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1AddTrialMeasurementRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Trial" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "checkTrialEarlyStoppingState": { - "description": "Checks whether a Trial should stop or not. Returns a long-running operation. When the operation is successful, it will contain a CheckTrialEarlyStoppingStateResponse.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}:checkTrialEarlyStoppingState", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.trials.checkTrialEarlyStoppingState", - "parameterOrder": [ - "trialName" - ], - "parameters": { - "trialName": { - "description": "Required. The Trial's name. Format: `projects/{project}/locations/{location}/studies/{study}/trials/{trial}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+trialName}:checkTrialEarlyStoppingState", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1CheckTrialEarlyStoppingStateRequest" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "complete": { - "description": "Marks a Trial as complete.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}:complete", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.trials.complete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The Trial's name. Format: `projects/{project}/locations/{location}/studies/{study}/trials/{trial}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:complete", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1CompleteTrialRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Trial" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "description": "Adds a user provided Trial to a Study.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.trials.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The resource name of the Study to create the Trial in. Format: `projects/{project}/locations/{location}/studies/{study}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/trials", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1Trial" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Trial" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Deletes a Trial.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.studies.trials.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The Trial's name. Format: `projects/{project}/locations/{location}/studies/{study}/trials/{trial}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets a Trial.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.studies.trials.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the Trial resource. Format: `projects/{project}/locations/{location}/studies/{study}/trials/{trial}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Trial" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists the Trials associated with a Study.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.studies.trials.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "pageSize": { - "description": "Optional. The number of Trials to retrieve per \"page\" of results. If unspecified, the service will pick an appropriate default.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. A page token to request the next page of results. If unspecified, there are no subsequent pages.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the Study to list the Trial from. Format: `projects/{project}/locations/{location}/studies/{study}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/trials", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListTrialsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "listOptimalTrials": { - "description": "Lists the pareto-optimal Trials for multi-objective Study or the optimal Trials for single-objective Study. The definition of pareto-optimal can be checked in wiki page. https://en.wikipedia.org/wiki/Pareto_efficiency", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials:listOptimalTrials", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.trials.listOptimalTrials", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The name of the Study that the optimal Trial belongs to.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/trials:listOptimalTrials", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1ListOptimalTrialsRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListOptimalTrialsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "stop": { - "description": "Stops a Trial.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}:stop", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.trials.stop", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The Trial's name. Format: `projects/{project}/locations/{location}/studies/{study}/trials/{trial}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:stop", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1StopTrialRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Trial" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "suggest": { - "description": "Adds one or more Trials to a Study, with parameter values suggested by Vertex AI Vizier. Returns a long-running operation associated with the generation of Trial suggestions. When this long-running operation succeeds, it will contain a SuggestTrialsResponse.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials:suggest", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.trials.suggest", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The project and location that the Study belongs to. Format: `projects/{project}/locations/{location}/studies/{study}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/trials:suggest", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1SuggestTrialsRequest" - }, + "path": "v1beta1/{+name}:snapshot", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentSnapshot" + }, "response": { "$ref": "GoogleLongrunningOperation" }, @@ -31714,9 +33132,9 @@ "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}/operations/{operationsId}:cancel", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.trials.operations.cancel", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.cancel", "parameterOrder": [ "name" ], @@ -31724,7 +33142,7 @@ "name": { "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -31739,9 +33157,9 @@ }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}/operations/{operationsId}", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.studies.trials.operations.delete", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.delete", "parameterOrder": [ "name" ], @@ -31749,7 +33167,7 @@ "name": { "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -31764,9 +33182,9 @@ }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}/operations/{operationsId}", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.projects.locations.studies.trials.operations.get", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.get", "parameterOrder": [ "name" ], @@ -31774,7 +33192,7 @@ "name": { "description": "The name of the operation resource.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -31789,9 +33207,9 @@ }, "list": { "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}/operations", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations", "httpMethod": "GET", - "id": "aiplatform.projects.locations.studies.trials.operations.list", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.list", "parameterOrder": [ "name" ], @@ -31804,7 +33222,7 @@ "name": { "description": "The name of the operation's parent resource.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", "required": true, "type": "string" }, @@ -31835,9 +33253,9 @@ }, "wait": { "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}/operations/{operationsId}:wait", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}:wait", "httpMethod": "POST", - "id": "aiplatform.projects.locations.studies.trials.operations.wait", + "id": "aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.operations.wait", "parameterOrder": [ "name" ], @@ -31845,7 +33263,7 @@ "name": { "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", "required": true, "type": "string" }, @@ -31867,336 +33285,83 @@ } } } - } - } - }, - "tensorboards": { - "methods": { - "batchRead": { - "description": "Reads multiple TensorboardTimeSeries' data. The data point number limit is 1000 for scalars, 100 for tensors and blob references. If the number of data points stored is less than the limit, all data is returned. Otherwise, the number limit of data points is randomly selected from this time series and returned.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}:batchRead", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.batchRead", - "parameterOrder": [ - "tensorboard" - ], - "parameters": { - "tensorboard": { - "description": "Required. The resource name of the Tensorboard containing TensorboardTimeSeries to read data from. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`. The TensorboardTimeSeries referenced by time_series must be sub resources of this Tensorboard.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", - "required": true, - "type": "string" - }, - "timeSeries": { - "description": "Required. The resource names of the TensorboardTimeSeries to read data from. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`", - "location": "query", - "repeated": true, - "type": "string" - } - }, - "path": "v1beta1/{+tensorboard}:batchRead", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1BatchReadTensorboardTimeSeriesDataResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "description": "Creates a Tensorboard.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The resource name of the Location to create the Tensorboard in. Format: `projects/{project}/locations/{location}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/tensorboards", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1Tensorboard" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] }, - "delete": { - "description": "Deletes a Tensorboard.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.tensorboards.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the Tensorboard to be deleted. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets a Tensorboard.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the Tensorboard resource. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1Tensorboard" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "list": { - "description": "Lists Tensorboards in a Location.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Lists the Tensorboards that match the filter expression.", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "Field to use to sort the list.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of Tensorboards to return. The service may return fewer than this value. If unspecified, at most 100 Tensorboards are returned. The maximum value is 100; values above 100 are coerced to 100.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "A page token, received from a previous TensorboardService.ListTensorboards call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboards must match the call that provided the page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the Location to list Tensorboards. Format: `projects/{project}/locations/{location}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "readMask": { - "description": "Mask specifying which fields to read.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+parent}/tensorboards", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListTensorboardsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "patch": { - "description": "Updates a Tensorboard.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}", - "httpMethod": "PATCH", - "id": "aiplatform.projects.locations.tensorboards.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Output only. Name of the Tensorboard. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the Tensorboard resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1Tensorboard" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "readSize": { - "description": "Returns the storage size for a given TensorBoard instance.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}:readSize", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.readSize", - "parameterOrder": [ - "tensorboard" - ], - "parameters": { - "tensorboard": { - "description": "Required. The name of the Tensorboard resource. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+tensorboard}:readSize", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ReadTensorboardSizeResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "readUsage": { - "description": "Returns a list of monthly active users for a given TensorBoard instance.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}:readUsage", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.readUsage", - "parameterOrder": [ - "tensorboard" - ], - "parameters": { - "tensorboard": { - "description": "Required. The name of the Tensorboard resource. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+tensorboard}:readUsage", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ReadTensorboardUsageResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "experiments": { + "sessions": { "methods": { - "batchCreate": { - "description": "Batch create TensorboardTimeSeries that belong to a TensorboardExperiment.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}:batchCreate", + "appendEvent": { + "description": "Appends an event to a given session.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}:appendEvent", "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.batchCreate", + "id": "aiplatform.projects.locations.reasoningEngines.sessions.appendEvent", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "parent": { - "description": "Required. The resource name of the TensorboardExperiment to create the TensorboardTimeSeries in. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` The TensorboardRuns referenced by the parent fields in the CreateTensorboardTimeSeriesRequest messages must be sub resources of this TensorboardExperiment.", + "name": { + "description": "Required. The resource name of the session to append event to. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}:batchCreate", + "path": "v1beta1/{+name}:appendEvent", "request": { - "$ref": "GoogleCloudAiplatformV1beta1BatchCreateTensorboardTimeSeriesRequest" + "$ref": "GoogleCloudAiplatformV1beta1SessionEvent" }, "response": { - "$ref": "GoogleCloudAiplatformV1beta1BatchCreateTensorboardTimeSeriesResponse" + "$ref": "GoogleCloudAiplatformV1beta1AppendEventResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "create": { - "description": "Creates a TensorboardExperiment.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments", + "description": "Creates a new Session.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions", "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.create", + "id": "aiplatform.projects.locations.reasoningEngines.sessions.create", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The resource name of the Tensorboard to create the TensorboardExperiment in. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", + "description": "Required. The resource name of the location to create the session in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", "required": true, "type": "string" }, - "tensorboardExperimentId": { - "description": "Required. The ID to use for the Tensorboard experiment, which becomes the final component of the Tensorboard experiment's resource name. This value should be 1-128 characters, and valid characters are `/a-z-/`.", + "sessionId": { + "description": "Optional. The user defined ID to use for session, which will become the final component of the session resource name. If not provided, Vertex AI will generate a value for this ID. This value may be up to 63 characters, and valid characters are `[a-z0-9-]`. The first and last characters must be a letter or number.", "location": "query", "type": "string" } }, - "path": "v1beta1/{+parent}/experiments", + "path": "v1beta1/{+parent}/sessions", "request": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardExperiment" + "$ref": "GoogleCloudAiplatformV1beta1Session" }, "response": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardExperiment" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "delete": { - "description": "Deletes a TensorboardExperiment.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}", + "description": "Deletes details of the specific Session.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}", "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.tensorboards.experiments.delete", + "id": "aiplatform.projects.locations.reasoningEngines.sessions.delete", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the TensorboardExperiment to be deleted. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`", + "description": "Required. The resource name of the session. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+$", "required": true, "type": "string" } @@ -32210,102 +33375,94 @@ ] }, "get": { - "description": "Gets a TensorboardExperiment.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}", + "description": "Gets details of the specific Session.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}", "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.get", + "id": "aiplatform.projects.locations.reasoningEngines.sessions.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the TensorboardExperiment resource. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`", + "description": "Required. The resource name of the session. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardExperiment" + "$ref": "GoogleCloudAiplatformV1beta1Session" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Lists TensorboardExperiments in a Location.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments", + "description": "Lists Sessions in a given reasoning engine.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions", "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.list", + "id": "aiplatform.projects.locations.reasoningEngines.sessions.list", "parameterOrder": [ "parent" ], "parameters": { "filter": { - "description": "Lists the TensorboardExperiments that match the filter expression.", + "description": "Optional. The standard list filter. Supported fields: * `display_name` * `user_id` * `labels` Example: `display_name=\"abc\"`, `user_id=\"123\"`, `labels.key=\"value\"`.", "location": "query", "type": "string" }, "orderBy": { - "description": "Field to use to sort the list.", + "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending. Supported fields: * `create_time` * `update_time` Example: `create_time desc`.", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of TensorboardExperiments to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardExperiments are returned. The maximum value is 1000; values above 1000 are coerced to 1000.", + "description": "Optional. The maximum number of sessions to return. The service may return fewer than this value. If unspecified, the default page size is 100. Values greater than 100 will be capped at 100.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous TensorboardService.ListTensorboardExperiments call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardExperiments must match the call that provided the page token.", + "description": "Optional. The next_page_token value returned from a previous list SessionService.ListSessions call.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The resource name of the Tensorboard to list TensorboardExperiments. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", + "description": "Required. The resource name of the location to list sessions from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+$", "required": true, "type": "string" - }, - "readMask": { - "description": "Mask specifying which fields to read.", - "format": "google-fieldmask", - "location": "query", - "type": "string" } }, - "path": "v1beta1/{+parent}/experiments", + "path": "v1beta1/{+parent}/sessions", "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListTensorboardExperimentsResponse" + "$ref": "GoogleCloudAiplatformV1beta1ListSessionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Updates a TensorboardExperiment.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}", + "description": "Updates the specific Session.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}", "httpMethod": "PATCH", - "id": "aiplatform.projects.locations.tensorboards.experiments.patch", + "id": "aiplatform.projects.locations.reasoningEngines.sessions.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Output only. Name of the TensorboardExperiment. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`", + "description": "Identifier. The resource name of the session. Format: 'projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}'.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the TensorboardExperiment resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified.", + "description": "Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -32313,38 +33470,10 @@ }, "path": "v1beta1/{+name}", "request": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardExperiment" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardExperiment" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "write": { - "description": "Write time series data points of multiple TensorboardTimeSeries in multiple TensorboardRun's. If any data fail to be ingested, an error is returned.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}:write", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.write", - "parameterOrder": [ - "tensorboardExperiment" - ], - "parameters": { - "tensorboardExperiment": { - "description": "Required. The resource name of the TensorboardExperiment to write data to. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+tensorboardExperiment}:write", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1WriteTensorboardExperimentDataRequest" + "$ref": "GoogleCloudAiplatformV1beta1Session" }, "response": { - "$ref": "GoogleCloudAiplatformV1beta1WriteTensorboardExperimentDataResponse" + "$ref": "GoogleCloudAiplatformV1beta1Session" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -32352,13 +33481,63 @@ } }, "resources": { + "events": { + "methods": { + "list": { + "description": "Lists Events in a given session.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/events", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.reasoningEngines.sessions.events.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter. Supported fields: * `timestamp` range (i.e. `timestamp>=\"2025-01-31T11:30:00-04:00\"` where the timestamp is in RFC 3339 format) More detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending. Supported fields: * `timestamp` Example: `timestamp desc`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of events to return. The service may return fewer than this value. If unspecified, at most 100 events will be returned. These events are ordered by timestamp in ascending order.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list SessionService.ListEvents call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the session to list events from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/events", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListEventsResponse" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/operations/{operationsId}:cancel", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.operations.cancel", + "id": "aiplatform.projects.locations.reasoningEngines.sessions.operations.cancel", "parameterOrder": [ "name" ], @@ -32366,7 +33545,7 @@ "name": { "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -32381,9 +33560,9 @@ }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/operations/{operationsId}", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.tensorboards.experiments.operations.delete", + "id": "aiplatform.projects.locations.reasoningEngines.sessions.operations.delete", "parameterOrder": [ "name" ], @@ -32391,7 +33570,7 @@ "name": { "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -32406,9 +33585,9 @@ }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/operations/{operationsId}", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.operations.get", + "id": "aiplatform.projects.locations.reasoningEngines.sessions.operations.get", "parameterOrder": [ "name" ], @@ -32416,7 +33595,7 @@ "name": { "description": "The name of the operation resource.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -32431,9 +33610,9 @@ }, "list": { "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/operations", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations", "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.operations.list", + "id": "aiplatform.projects.locations.reasoningEngines.sessions.operations.list", "parameterOrder": [ "name" ], @@ -32446,7 +33625,7 @@ "name": { "description": "The name of the operation's parent resource.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+$", "required": true, "type": "string" }, @@ -32477,9 +33656,9 @@ }, "wait": { "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/operations/{operationsId}:wait", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}:wait", "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.operations.wait", + "id": "aiplatform.projects.locations.reasoningEngines.sessions.operations.wait", "parameterOrder": [ "name" ], @@ -32487,7 +33666,7 @@ "name": { "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", "required": true, "type": "string" }, @@ -32507,1136 +33686,5938 @@ ] } } + } + } + } + } + }, + "schedules": { + "methods": { + "create": { + "description": "Creates a Schedule.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.schedules.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location to create the Schedule in. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/schedules", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1Schedule" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Schedule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a Schedule.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.schedules.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Schedule resource to be deleted. Format: `projects/{project}/locations/{location}/schedules/{schedule}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a Schedule.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.schedules.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Schedule resource. Format: `projects/{project}/locations/{location}/schedules/{schedule}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Schedule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Schedules in a Location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.schedules.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Lists the Schedules that match the filter expression. The following fields are supported: * `display_name`: Supports `=`, `!=` comparisons, and `:` wildcard. * `state`: Supports `=` and `!=` comparisons. * `request`: Supports existence of the check. (e.g. `create_pipeline_job_request:*` --> Schedule has create_pipeline_job_request). * `create_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. Values must be in RFC 3339 format. * `start_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. Values must be in RFC 3339 format. * `end_time`: Supports `=`, `!=`, `<`, `>`, `<=`, `>=` comparisons and `:*` existence check. Values must be in RFC 3339 format. * `next_run_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. Values must be in RFC 3339 format. Filter expressions can be combined together using logical operators (`NOT`, `AND` & `OR`). The syntax to define filter expression is based on https://google.aip.dev/160. Examples: * `state=\"ACTIVE\" AND display_name:\"my_schedule_*\"` * `NOT display_name=\"my_schedule\"` * `create_time>\"2021-05-18T00:00:00Z\"` * `end_time>\"2021-05-18T00:00:00Z\" OR NOT end_time:*` * `create_pipeline_job_request:*`", + "location": "query", + "type": "string" }, - "runs": { - "methods": { - "batchCreate": { - "description": "Batch create TensorboardRuns.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs:batchCreate", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.batchCreate", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The resource name of the TensorboardExperiment to create the TensorboardRuns in. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` The parent field in the CreateTensorboardRunRequest messages must match this field.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/runs:batchCreate", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1BatchCreateTensorboardRunsRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1BatchCreateTensorboardRunsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "description": "Creates a TensorboardRun.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The resource name of the TensorboardExperiment to create the TensorboardRun in. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", - "required": true, - "type": "string" - }, - "tensorboardRunId": { - "description": "Required. The ID to use for the Tensorboard run, which becomes the final component of the Tensorboard run's resource name. This value should be 1-128 characters, and valid characters are `/a-z-/`.", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+parent}/runs", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardRun" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardRun" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "orderBy": { + "description": "A comma-separated list of fields to order by. The default sort order is in ascending order. Use \"desc\" after a field name for descending. You can have multiple order_by fields provided. For example, using \"create_time desc, end_time\" will order results by create time in descending order, and if there are multiple schedules having the same create time, order them by the end time in ascending order. If order_by is not specified, it will order by default with create_time in descending order. Supported fields: * `create_time` * `start_time` * `end_time` * `next_run_time`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size. Default to 100 if not specified.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token. Typically obtained via ListSchedulesResponse.next_page_token of the previous ScheduleService.ListSchedules call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Location to list the Schedules from. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/schedules", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListSchedulesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates an active or paused Schedule. When the Schedule is updated, new runs will be scheduled starting from the updated next execution time after the update time based on the time_specification in the updated Schedule. All unstarted runs before the update time will be skipped while already created runs will NOT be paused or canceled.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}", + "httpMethod": "PATCH", + "id": "aiplatform.projects.locations.schedules.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. The resource name of the Schedule.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The update mask applies to the resource. See google.protobuf.FieldMask.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1Schedule" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Schedule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "pause": { + "description": "Pauses a Schedule. Will mark Schedule.state to 'PAUSED'. If the schedule is paused, no new runs will be created. Already created runs will NOT be paused or canceled.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}:pause", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.schedules.pause", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Schedule resource to be paused. Format: `projects/{project}/locations/{location}/schedules/{schedule}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:pause", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1PauseScheduleRequest" + }, + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "resume": { + "description": "Resumes a paused Schedule to start scheduling new runs. Will mark Schedule.state to 'ACTIVE'. Only paused Schedule can be resumed. When the Schedule is resumed, new runs will be scheduled starting from the next execution time after the current time based on the time_specification in the Schedule. If Schedule.catch_up is set up true, all missed runs will be scheduled for backfill first.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}:resume", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.schedules.resume", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Schedule resource to be resumed. Format: `projects/{project}/locations/{location}/schedules/{schedule}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:resume", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1ResumeScheduleRequest" + }, + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.schedules.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.schedules.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.schedules.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.schedules.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" }, - "delete": { - "description": "Deletes a TensorboardRun.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the TensorboardRun to be deleted. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+$", + "required": true, + "type": "string" }, - "get": { - "description": "Gets a TensorboardRun.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the TensorboardRun resource. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardRun" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" }, - "list": { - "description": "Lists TensorboardRuns in a Location.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Lists the TensorboardRuns that match the filter expression.", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "Field to use to sort the list.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of TensorboardRuns to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardRuns are returned. The maximum value is 1000; values above 1000 are coerced to 1000.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "A page token, received from a previous TensorboardService.ListTensorboardRuns call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardRuns must match the call that provided the page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the TensorboardExperiment to list TensorboardRuns. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", - "required": true, - "type": "string" - }, - "readMask": { - "description": "Mask specifying which fields to read.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+parent}/runs", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListTensorboardRunsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" }, - "patch": { - "description": "Updates a TensorboardRun.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}", - "httpMethod": "PATCH", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Output only. Name of the TensorboardRun. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the TensorboardRun resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardRun" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardRun" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/schedules/{schedulesId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.schedules.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/schedules/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" }, - "write": { - "description": "Write time series data points into multiple TensorboardTimeSeries under a TensorboardRun. If any data fail to be ingested, an error is returned.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}:write", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.write", - "parameterOrder": [ - "tensorboardRun" - ], - "parameters": { - "tensorboardRun": { - "description": "Required. The resource name of the TensorboardRun to write data to. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+tensorboardRun}:write", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1WriteTensorboardRunDataRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1WriteTensorboardRunDataResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" } }, - "resources": { - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.operations.cancel", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.operations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/operations/{operationsId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.operations.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/operations", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.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/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", - "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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1beta1/{+name}/operations", - "response": { - "$ref": "GoogleLongrunningListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/operations/{operationsId}:wait", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.operations.wait", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to wait on.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}:wait", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "semanticGovernancePolicies": { + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicies/{semanticGovernancePoliciesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.semanticGovernancePolicies.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicies/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicies/{semanticGovernancePoliciesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.semanticGovernancePolicies.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicies/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicies/{semanticGovernancePoliciesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.semanticGovernancePolicies.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicies/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicies/{semanticGovernancePoliciesId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.semanticGovernancePolicies.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" }, - "timeSeries": { - "methods": { - "create": { - "description": "Creates a TensorboardTimeSeries.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The resource name of the TensorboardRun to create the TensorboardTimeSeries in. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", - "required": true, - "type": "string" - }, - "tensorboardTimeSeriesId": { - "description": "Optional. The user specified unique ID to use for the TensorboardTimeSeries, which becomes the final component of the TensorboardTimeSeries's resource name. This value should match \"a-z0-9{0, 127}\"", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+parent}/timeSeries", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardTimeSeries" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardTimeSeries" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Deletes a TensorboardTimeSeries.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the TensorboardTimeSeries to be deleted. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "exportTensorboardTimeSeries": { - "description": "Exports a TensorboardTimeSeries' data. Data is returned in paginated responses.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}:exportTensorboardTimeSeries", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.exportTensorboardTimeSeries", - "parameterOrder": [ - "tensorboardTimeSeries" - ], - "parameters": { - "tensorboardTimeSeries": { - "description": "Required. The resource name of the TensorboardTimeSeries to export data from. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+tensorboardTimeSeries}:exportTensorboardTimeSeries", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1ExportTensorboardTimeSeriesDataRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ExportTensorboardTimeSeriesDataResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets a TensorboardTimeSeries.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the TensorboardTimeSeries resource. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardTimeSeries" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "list": { - "description": "Lists TensorboardTimeSeries in a Location.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Lists the TensorboardTimeSeries that match the filter expression.", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "Field to use to sort the list.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of TensorboardTimeSeries to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardTimeSeries are returned. The maximum value is 1000; values above 1000 are coerced to 1000.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "A page token, received from a previous TensorboardService.ListTensorboardTimeSeries call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardTimeSeries must match the call that provided the page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the TensorboardRun to list TensorboardTimeSeries. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", - "required": true, - "type": "string" - }, - "readMask": { - "description": "Mask specifying which fields to read.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+parent}/timeSeries", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListTensorboardTimeSeriesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "patch": { - "description": "Updates a TensorboardTimeSeries.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}", - "httpMethod": "PATCH", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Output only. Name of the TensorboardTimeSeries.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the TensorboardTimeSeries resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardTimeSeries" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1TensorboardTimeSeries" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "read": { - "description": "Reads a TensorboardTimeSeries' data. By default, if the number of data points stored is less than 1000, all data is returned. Otherwise, 1000 data points is randomly selected from this time series and returned. This value can be changed by changing max_data_points, which can't be greater than 10k.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}:read", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.read", - "parameterOrder": [ - "tensorboardTimeSeries" - ], - "parameters": { - "filter": { - "description": "Reads the TensorboardTimeSeries' data that match the filter expression.", - "location": "query", - "type": "string" - }, - "maxDataPoints": { - "description": "The maximum number of TensorboardTimeSeries' data to return. This value should be a positive integer. This value can be set to -1 to return all data.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "tensorboardTimeSeries": { - "description": "Required. The resource name of the TensorboardTimeSeries to read data from. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+tensorboardTimeSeries}:read", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ReadTensorboardTimeSeriesDataResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "readBlobData": { - "description": "Gets bytes of TensorboardBlobs. This is to allow reading blob data stored in consumer project's Cloud Storage bucket without users having to obtain Cloud Storage access permission.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}:readBlobData", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.readBlobData", - "parameterOrder": [ - "timeSeries" - ], - "parameters": { - "blobIds": { - "description": "IDs of the blobs to read.", - "location": "query", - "repeated": true, - "type": "string" - }, - "timeSeries": { - "description": "Required. The resource name of the TensorboardTimeSeries to list Blobs. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+timeSeries}:readBlobData", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ReadTensorboardBlobDataResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - } - }, - "resources": { - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.cancel", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}/operations/{operationsId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}/operations", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.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/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", - "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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1beta1/{+name}/operations", - "response": { - "$ref": "GoogleLongrunningListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}/operations/{operationsId}:wait", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.wait", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to wait on.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}:wait", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicies/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" } - } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicies/{semanticGovernancePoliciesId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.semanticGovernancePolicies.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicies/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "semanticGovernancePolicyEngine": { + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicyEngine/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.semanticGovernancePolicyEngine.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicyEngine/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicyEngine/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.semanticGovernancePolicyEngine.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicyEngine/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicyEngine/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.semanticGovernancePolicyEngine.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicyEngine/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicyEngine/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.semanticGovernancePolicyEngine.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/[^/]+/semanticGovernancePolicyEngine$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicyEngine/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.semanticGovernancePolicyEngine.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicyEngine/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "skills": { + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/skills/{skillsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.skills.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/skills/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/skills/{skillsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.skills.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/skills/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/skills/{skillsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.skills.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/skills/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/skills/{skillsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.skills.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/[^/]+/skills/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/skills/{skillsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.skills.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/skills/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "solvers": { + "resources": { + "operations": { + "methods": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/solvers/{solversId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.solvers.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/solvers/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/solvers/{solversId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.solvers.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/solvers/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/solvers/{solversId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.solvers.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/[^/]+/solvers/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "specialistPools": { + "methods": { + "create": { + "description": "Creates a SpecialistPool.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.specialistPools.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent Project name for the new SpecialistPool. The form is `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/specialistPools", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SpecialistPool" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a SpecialistPool as well as all Specialists in the pool.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.specialistPools.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "force": { + "description": "If set to true, any specialist managers in this SpecialistPool will also be deleted. (Otherwise, the request will only work if the SpecialistPool has no specialist managers.)", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. The resource name of the SpecialistPool to delete. Format: `projects/{project}/locations/{location}/specialistPools/{specialist_pool}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a SpecialistPool.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.specialistPools.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the SpecialistPool resource. The form is `projects/{project}/locations/{location}/specialistPools/{specialist_pool}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1SpecialistPool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists SpecialistPools in a Location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.specialistPools.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token. Typically obtained by ListSpecialistPoolsResponse.next_page_token of the previous SpecialistPoolService.ListSpecialistPools call. Return first page if empty.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the SpecialistPool's parent resource. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "readMask": { + "description": "Mask specifying which fields to read. FieldMask represents a set of", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/specialistPools", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListSpecialistPoolsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a SpecialistPool.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}", + "httpMethod": "PATCH", + "id": "aiplatform.projects.locations.specialistPools.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the SpecialistPool.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The update mask applies to the resource.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SpecialistPool" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.specialistPools.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.specialistPools.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.specialistPools.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.specialistPools.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/[^/]+/specialistPools/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/specialistPools/{specialistPoolsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.specialistPools.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/specialistPools/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "studies": { + "methods": { + "create": { + "description": "Creates a Study. A resource name will be generated after creation of the Study.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location to create the CustomJob in. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/studies", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1Study" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Study" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a Study.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.studies.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Study resource to be deleted. Format: `projects/{project}/locations/{location}/studies/{study}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a Study by name.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.studies.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Study resource. Format: `projects/{project}/locations/{location}/studies/{study}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Study" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all the studies in a region for an associated project.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.studies.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of studies to return per \"page\" of results. If unspecified, service will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token to request the next page of results. If unspecified, there are no subsequent pages.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Location to list the Study from. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/studies", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListStudiesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "lookup": { + "description": "Looks a study up using the user-defined display_name field instead of the fully qualified resource name.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies:lookup", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.lookup", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location to get the Study from. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/studies:lookup", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1LookupStudyRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Study" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.studies.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.studies.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.studies.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/[^/]+/studies/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "trials": { + "methods": { + "addTrialMeasurement": { + "description": "Adds a measurement of the objective metrics to a Trial. This measurement is assumed to have been taken before the Trial is complete.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}:addTrialMeasurement", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.trials.addTrialMeasurement", + "parameterOrder": [ + "trialName" + ], + "parameters": { + "trialName": { + "description": "Required. The name of the trial to add measurement. Format: `projects/{project}/locations/{location}/studies/{study}/trials/{trial}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+trialName}:addTrialMeasurement", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1AddTrialMeasurementRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Trial" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "checkTrialEarlyStoppingState": { + "description": "Checks whether a Trial should stop or not. Returns a long-running operation. When the operation is successful, it will contain a CheckTrialEarlyStoppingStateResponse.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}:checkTrialEarlyStoppingState", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.trials.checkTrialEarlyStoppingState", + "parameterOrder": [ + "trialName" + ], + "parameters": { + "trialName": { + "description": "Required. The Trial's name. Format: `projects/{project}/locations/{location}/studies/{study}/trials/{trial}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+trialName}:checkTrialEarlyStoppingState", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1CheckTrialEarlyStoppingStateRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "complete": { + "description": "Marks a Trial as complete.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}:complete", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.trials.complete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The Trial's name. Format: `projects/{project}/locations/{location}/studies/{study}/trials/{trial}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:complete", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1CompleteTrialRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Trial" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Adds a user provided Trial to a Study.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.trials.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Study to create the Trial in. Format: `projects/{project}/locations/{location}/studies/{study}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/trials", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1Trial" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Trial" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a Trial.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.studies.trials.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The Trial's name. Format: `projects/{project}/locations/{location}/studies/{study}/trials/{trial}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a Trial.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.studies.trials.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Trial resource. Format: `projects/{project}/locations/{location}/studies/{study}/trials/{trial}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Trial" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists the Trials associated with a Study.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.studies.trials.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The number of Trials to retrieve per \"page\" of results. If unspecified, the service will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token to request the next page of results. If unspecified, there are no subsequent pages.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Study to list the Trial from. Format: `projects/{project}/locations/{location}/studies/{study}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/trials", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListTrialsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "listOptimalTrials": { + "description": "Lists the pareto-optimal Trials for multi-objective Study or the optimal Trials for single-objective Study. The definition of pareto-optimal can be checked in wiki page. https://en.wikipedia.org/wiki/Pareto_efficiency", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials:listOptimalTrials", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.trials.listOptimalTrials", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the Study that the optimal Trial belongs to.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/trials:listOptimalTrials", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1ListOptimalTrialsRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListOptimalTrialsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "stop": { + "description": "Stops a Trial.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}:stop", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.trials.stop", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The Trial's name. Format: `projects/{project}/locations/{location}/studies/{study}/trials/{trial}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:stop", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1StopTrialRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Trial" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "suggest": { + "description": "Adds one or more Trials to a Study, with parameter values suggested by Vertex AI Vizier. Returns a long-running operation associated with the generation of Trial suggestions. When this long-running operation succeeds, it will contain a SuggestTrialsResponse.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials:suggest", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.trials.suggest", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project and location that the Study belongs to. Format: `projects/{project}/locations/{location}/studies/{study}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/trials:suggest", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SuggestTrialsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.trials.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.studies.trials.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.studies.trials.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.studies.trials.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/[^/]+/studies/[^/]+/trials/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.studies.trials.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, + "tensorboards": { + "methods": { + "batchRead": { + "description": "Reads multiple TensorboardTimeSeries' data. The data point number limit is 1000 for scalars, 100 for tensors and blob references. If the number of data points stored is less than the limit, all data is returned. Otherwise, the number limit of data points is randomly selected from this time series and returned.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}:batchRead", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.batchRead", + "parameterOrder": [ + "tensorboard" + ], + "parameters": { + "tensorboard": { + "description": "Required. The resource name of the Tensorboard containing TensorboardTimeSeries to read data from. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`. The TensorboardTimeSeries referenced by time_series must be sub resources of this Tensorboard.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", + "required": true, + "type": "string" + }, + "timeSeries": { + "description": "Required. The resource names of the TensorboardTimeSeries to read data from. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "v1beta1/{+tensorboard}:batchRead", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1BatchReadTensorboardTimeSeriesDataResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a Tensorboard.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location to create the Tensorboard in. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/tensorboards", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1Tensorboard" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a Tensorboard.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.tensorboards.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Tensorboard to be deleted. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a Tensorboard.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Tensorboard resource. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Tensorboard" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists Tensorboards in a Location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Lists the Tensorboards that match the filter expression.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Field to use to sort the list.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of Tensorboards to return. The service may return fewer than this value. If unspecified, at most 100 Tensorboards are returned. The maximum value is 100; values above 100 are coerced to 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous TensorboardService.ListTensorboards call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboards must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Location to list Tensorboards. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "readMask": { + "description": "Mask specifying which fields to read.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/tensorboards", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListTensorboardsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates a Tensorboard.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}", + "httpMethod": "PATCH", + "id": "aiplatform.projects.locations.tensorboards.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. Name of the Tensorboard. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Field mask is used to specify the fields to be overwritten in the Tensorboard resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1Tensorboard" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "readSize": { + "description": "Returns the storage size for a given TensorBoard instance.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}:readSize", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.readSize", + "parameterOrder": [ + "tensorboard" + ], + "parameters": { + "tensorboard": { + "description": "Required. The name of the Tensorboard resource. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+tensorboard}:readSize", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ReadTensorboardSizeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "readUsage": { + "description": "Returns a list of monthly active users for a given TensorBoard instance.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}:readUsage", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.readUsage", + "parameterOrder": [ + "tensorboard" + ], + "parameters": { + "tensorboard": { + "description": "Required. The name of the Tensorboard resource. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+tensorboard}:readUsage", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ReadTensorboardUsageResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "experiments": { + "methods": { + "batchCreate": { + "description": "Batch create TensorboardTimeSeries that belong to a TensorboardExperiment.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}:batchCreate", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.batchCreate", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the TensorboardExperiment to create the TensorboardTimeSeries in. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` The TensorboardRuns referenced by the parent fields in the CreateTensorboardTimeSeriesRequest messages must be sub resources of this TensorboardExperiment.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}:batchCreate", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1BatchCreateTensorboardTimeSeriesRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1BatchCreateTensorboardTimeSeriesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a TensorboardExperiment.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Tensorboard to create the TensorboardExperiment in. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", + "required": true, + "type": "string" + }, + "tensorboardExperimentId": { + "description": "Required. The ID to use for the Tensorboard experiment, which becomes the final component of the Tensorboard experiment's resource name. This value should be 1-128 characters, and valid characters are `/a-z-/`.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/experiments", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardExperiment" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardExperiment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a TensorboardExperiment.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.tensorboards.experiments.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the TensorboardExperiment to be deleted. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a TensorboardExperiment.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the TensorboardExperiment resource. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardExperiment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists TensorboardExperiments in a Location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Lists the TensorboardExperiments that match the filter expression.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Field to use to sort the list.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of TensorboardExperiments to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardExperiments are returned. The maximum value is 1000; values above 1000 are coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous TensorboardService.ListTensorboardExperiments call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardExperiments must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Tensorboard to list TensorboardExperiments. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+$", + "required": true, + "type": "string" + }, + "readMask": { + "description": "Mask specifying which fields to read.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/experiments", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListTensorboardExperimentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates a TensorboardExperiment.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}", + "httpMethod": "PATCH", + "id": "aiplatform.projects.locations.tensorboards.experiments.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. Name of the TensorboardExperiment. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Field mask is used to specify the fields to be overwritten in the TensorboardExperiment resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardExperiment" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardExperiment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "write": { + "description": "Write time series data points of multiple TensorboardTimeSeries in multiple TensorboardRun's. If any data fail to be ingested, an error is returned.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}:write", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.write", + "parameterOrder": [ + "tensorboardExperiment" + ], + "parameters": { + "tensorboardExperiment": { + "description": "Required. The resource name of the TensorboardExperiment to write data to. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+tensorboardExperiment}:write", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1WriteTensorboardExperimentDataRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1WriteTensorboardExperimentDataResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.tensorboards.experiments.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.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/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "runs": { + "methods": { + "batchCreate": { + "description": "Batch create TensorboardRuns.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs:batchCreate", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.batchCreate", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the TensorboardExperiment to create the TensorboardRuns in. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` The parent field in the CreateTensorboardRunRequest messages must match this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/runs:batchCreate", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1BatchCreateTensorboardRunsRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1BatchCreateTensorboardRunsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a TensorboardRun.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the TensorboardExperiment to create the TensorboardRun in. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "required": true, + "type": "string" + }, + "tensorboardRunId": { + "description": "Required. The ID to use for the Tensorboard run, which becomes the final component of the Tensorboard run's resource name. This value should be 1-128 characters, and valid characters are `/a-z-/`.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/runs", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardRun" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardRun" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a TensorboardRun.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the TensorboardRun to be deleted. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a TensorboardRun.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the TensorboardRun resource. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardRun" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists TensorboardRuns in a Location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Lists the TensorboardRuns that match the filter expression.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Field to use to sort the list.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of TensorboardRuns to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardRuns are returned. The maximum value is 1000; values above 1000 are coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous TensorboardService.ListTensorboardRuns call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardRuns must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the TensorboardExperiment to list TensorboardRuns. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+$", + "required": true, + "type": "string" + }, + "readMask": { + "description": "Mask specifying which fields to read.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/runs", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListTensorboardRunsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates a TensorboardRun.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}", + "httpMethod": "PATCH", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. Name of the TensorboardRun. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Field mask is used to specify the fields to be overwritten in the TensorboardRun resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardRun" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardRun" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "write": { + "description": "Write time series data points into multiple TensorboardTimeSeries under a TensorboardRun. If any data fail to be ingested, an error is returned.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}:write", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.write", + "parameterOrder": [ + "tensorboardRun" + ], + "parameters": { + "tensorboardRun": { + "description": "Required. The resource name of the TensorboardRun to write data to. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+tensorboardRun}:write", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1WriteTensorboardRunDataRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1WriteTensorboardRunDataResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.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/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "timeSeries": { + "methods": { + "create": { + "description": "Creates a TensorboardTimeSeries.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the TensorboardRun to create the TensorboardTimeSeries in. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", + "required": true, + "type": "string" + }, + "tensorboardTimeSeriesId": { + "description": "Optional. The user specified unique ID to use for the TensorboardTimeSeries, which becomes the final component of the TensorboardTimeSeries's resource name. This value should match \"a-z0-9{0, 127}\"", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/timeSeries", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardTimeSeries" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardTimeSeries" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a TensorboardTimeSeries.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the TensorboardTimeSeries to be deleted. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "exportTensorboardTimeSeries": { + "description": "Exports a TensorboardTimeSeries' data. Data is returned in paginated responses.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}:exportTensorboardTimeSeries", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.exportTensorboardTimeSeries", + "parameterOrder": [ + "tensorboardTimeSeries" + ], + "parameters": { + "tensorboardTimeSeries": { + "description": "Required. The resource name of the TensorboardTimeSeries to export data from. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+tensorboardTimeSeries}:exportTensorboardTimeSeries", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1ExportTensorboardTimeSeriesDataRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ExportTensorboardTimeSeriesDataResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a TensorboardTimeSeries.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the TensorboardTimeSeries resource. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardTimeSeries" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists TensorboardTimeSeries in a Location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Lists the TensorboardTimeSeries that match the filter expression.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Field to use to sort the list.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of TensorboardTimeSeries to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardTimeSeries are returned. The maximum value is 1000; values above 1000 are coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token, received from a previous TensorboardService.ListTensorboardTimeSeries call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardTimeSeries must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the TensorboardRun to list TensorboardTimeSeries. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+$", + "required": true, + "type": "string" + }, + "readMask": { + "description": "Mask specifying which fields to read.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/timeSeries", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListTensorboardTimeSeriesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates a TensorboardTimeSeries.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}", + "httpMethod": "PATCH", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. Name of the TensorboardTimeSeries.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Field mask is used to specify the fields to be overwritten in the TensorboardTimeSeries resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardTimeSeries" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TensorboardTimeSeries" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "read": { + "description": "Reads a TensorboardTimeSeries' data. By default, if the number of data points stored is less than 1000, all data is returned. Otherwise, 1000 data points is randomly selected from this time series and returned. This value can be changed by changing max_data_points, which can't be greater than 10k.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}:read", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.read", + "parameterOrder": [ + "tensorboardTimeSeries" + ], + "parameters": { + "filter": { + "description": "Reads the TensorboardTimeSeries' data that match the filter expression.", + "location": "query", + "type": "string" + }, + "maxDataPoints": { + "description": "The maximum number of TensorboardTimeSeries' data to return. This value should be a positive integer. This value can be set to -1 to return all data.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "tensorboardTimeSeries": { + "description": "Required. The resource name of the TensorboardTimeSeries to read data from. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+tensorboardTimeSeries}:read", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ReadTensorboardTimeSeriesDataResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "readBlobData": { + "description": "Gets bytes of TensorboardBlobs. This is to allow reading blob data stored in consumer project's Cloud Storage bucket without users having to obtain Cloud Storage access permission.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}:readBlobData", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.readBlobData", + "parameterOrder": [ + "timeSeries" + ], + "parameters": { + "blobIds": { + "description": "IDs of the blobs to read.", + "location": "query", + "repeated": true, + "type": "string" + }, + "timeSeries": { + "description": "Required. The resource name of the TensorboardTimeSeries to list Blobs. Format: `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+timeSeries}:readBlobData", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ReadTensorboardBlobDataResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + }, + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.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/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/experiments/{experimentsId}/runs/{runsId}/timeSeries/{timeSeriesId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/experiments/[^/]+/runs/[^/]+/timeSeries/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.tensorboards.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tensorboards.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/[^/]+/tensorboards/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tensorboards.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "trainingPipelines": { + "methods": { + "cancel": { + "description": "Cancels a TrainingPipeline. Starts asynchronous cancellation on the TrainingPipeline. The server makes a best effort to cancel the pipeline, but success is not guaranteed. Clients can use PipelineService.GetTrainingPipeline or other methods to check whether the cancellation succeeded or whether the pipeline completed despite cancellation. On successful cancellation, the TrainingPipeline is not deleted; instead it becomes a pipeline with a TrainingPipeline.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`, and TrainingPipeline.state is set to `CANCELLED`.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.trainingPipelines.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the TrainingPipeline to cancel. Format: `projects/{project}/locations/{location}/trainingPipelines/{training_pipeline}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1CancelTrainingPipelineRequest" + }, + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a TrainingPipeline. A created TrainingPipeline right away will be attempted to be run.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.trainingPipelines.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location to create the TrainingPipeline in. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/trainingPipelines", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1TrainingPipeline" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TrainingPipeline" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a TrainingPipeline.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.trainingPipelines.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the TrainingPipeline resource to be deleted. Format: `projects/{project}/locations/{location}/trainingPipelines/{training_pipeline}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a TrainingPipeline.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.trainingPipelines.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the TrainingPipeline resource. Format: `projects/{project}/locations/{location}/trainingPipelines/{training_pipeline}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TrainingPipeline" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists TrainingPipelines in a Location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.trainingPipelines.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "The standard list filter. Supported fields: * `display_name` supports `=`, `!=` comparisons, and `:` wildcard. * `state` supports `=`, `!=` comparisons. * `training_task_definition` `=`, `!=` comparisons, and `:` wildcard. * `create_time` supports `=`, `!=`,`<`, `<=`,`>`, `>=` comparisons. `create_time` must be in RFC 3339 format. * `labels` supports general map functions that is: `labels.key=value` - key:value equality `labels.key:* - key existence Some examples of using the filter are: * `state=\"PIPELINE_STATE_SUCCEEDED\" AND display_name:\"my_pipeline_*\"` * `state!=\"PIPELINE_STATE_FAILED\" OR display_name=\"my_pipeline\"` * `NOT display_name=\"my_pipeline\"` * `create_time>\"2021-05-18T00:00:00Z\"` * `training_task_definition:\"*automl_text_classification*\"`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token. Typically obtained via ListTrainingPipelinesResponse.next_page_token of the previous PipelineService.ListTrainingPipelines call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Location to list the TrainingPipelines from. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "readMask": { + "description": "Mask specifying which fields to read.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/trainingPipelines", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListTrainingPipelinesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.trainingPipelines.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.trainingPipelines.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.trainingPipelines.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}/operations", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.trainingPipelines.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/[^/]+/trainingPipelines/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.trainingPipelines.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "tuningJobs": { + "methods": { + "cancel": { + "description": "Cancels a tuning job. Starts an asynchronous cancellation request. The server makes a best effort to cancel the job, but success is not guaranteed. Clients can use GenAiTuningService.GetTuningJob or other methods to check whether the cancellation succeeded or whether the job completed despite cancellation. On successful cancellation, the tuning job is not deleted. Instead, its state is set to `CANCELLED`, and `error` is set to a status with a `google.rpc.Status.code` of 1, corresponding to `Code.CANCELLED`.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs/{tuningJobsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tuningJobs.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the tuning job to cancel. Format: `projects/{project}/locations/{location}/tuningJobs/{tuning_job}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tuningJobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1CancelTuningJobRequest" + }, + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a tuning job. A created tuning job will be subsequently executed to start the model tuning process.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tuningJobs.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the location to create the tuning job in. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/tuningJobs", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1TuningJob" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TuningJob" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a tuning job.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs/{tuningJobsId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tuningJobs.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the tuning job to retrieve. Format: `projects/{project}/locations/{location}/tuningJobs/{tuning_job}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tuningJobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1TuningJob" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists tuning jobs in a location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.tuningJobs.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token. Typically obtained from ListTuningJobsResponse.next_page_token of the previous GenAiTuningService.ListTuningJobs call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the location to list the tuning jobs from. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/tuningJobs", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListTuningJobsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "optimizePrompt": { + "description": "Optimizes a prompt. Given a prompt, this method returns a stream of optimized prompts expanded from the original prompt.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs:optimizePrompt", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tuningJobs.optimizePrompt", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the location to optimize the prompt in. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/tuningJobs:optimizePrompt", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1OptimizePromptRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1OptimizePromptResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "rebaseTunedModel": { + "description": "Rebase a tuned model. A rebase operation takes a model that was previously tuned on a base model version, and retunes it on a new base model version. The rebase operation creates a new tuning job and a new tuned model.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs:rebaseTunedModel", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tuningJobs.rebaseTunedModel", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the location in which to rebase the Model. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/tuningJobs:rebaseTunedModel", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1RebaseTunedModelRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "operations": { + "methods": { + "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs/{tuningJobsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.tuningJobs.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tuningJobs/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, + "modelGardenEula": { + "methods": { + "accept": { + "description": "Accepts the EULA acceptance status of a publisher model.", + "flatPath": "v1beta1/projects/{projectsId}/modelGardenEula:accept", + "httpMethod": "POST", + "id": "aiplatform.projects.modelGardenEula.accept", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project requesting access for named model. The format is `projects/{project}`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/modelGardenEula:accept", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1AcceptPublisherModelEulaRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1PublisherModelEulaAcceptance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "check": { + "description": "Checks the EULA acceptance status of a publisher model.", + "flatPath": "v1beta1/projects/{projectsId}/modelGardenEula:check", + "httpMethod": "POST", + "id": "aiplatform.projects.modelGardenEula.check", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The project requesting access for named model. The format is `projects/{project}`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/modelGardenEula:check", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1CheckPublisherModelEulaAcceptanceRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1PublisherModelEulaAcceptance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "publishers": { + "resources": { + "models": { + "methods": { + "enableModel": { + "description": "Enables model for the project if prerequisites are met (e.g. completed questionnaire and consents, or an active Private Offer).", + "flatPath": "v1beta1/projects/{projectsId}/publishers/{publishersId}/models/{modelsId}:enableModel", + "httpMethod": "POST", + "id": "aiplatform.projects.publishers.models.enableModel", + "parameterOrder": [ + "parent", + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the PublisherModel resource. Format: `publishers/{publisher}/models/{publisher_model}`", + "location": "path", + "pattern": "^publishers/[^/]+/models/[^/]+$", + "required": true, + "type": "string" + }, + "parent": { + "description": "Required. The project requesting access for named model. Format: `projects/{project}`", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/{+name}:enableModel", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1EnableModelRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1EnableModelResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, + "publishers": { + "resources": { + "models": { + "methods": { + "computeTokens": { + "description": "Return a list of tokens based on the input text.", + "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:computeTokens", + "httpMethod": "POST", + "id": "aiplatform.publishers.models.computeTokens", + "parameterOrder": [ + "endpoint" + ], + "parameters": { + "endpoint": { + "description": "Required. The name of the Endpoint requested to get lists of tokens and token ids.", + "location": "path", + "pattern": "^publishers/[^/]+/models/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+endpoint}:computeTokens", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1ComputeTokensRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ComputeTokensResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "countTokens": { + "description": "Perform a token counting.", + "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:countTokens", + "httpMethod": "POST", + "id": "aiplatform.publishers.models.countTokens", + "parameterOrder": [ + "endpoint" + ], + "parameters": { + "endpoint": { + "description": "Required. The name of the Endpoint requested to perform token counting. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "location": "path", + "pattern": "^publishers/[^/]+/models/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+endpoint}:countTokens", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1CountTokensRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1CountTokensResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "fetchPredictOperation": { + "description": "Fetch an asynchronous online prediction operation.", + "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:fetchPredictOperation", + "httpMethod": "POST", + "id": "aiplatform.publishers.models.fetchPredictOperation", + "parameterOrder": [ + "endpoint" + ], + "parameters": { + "endpoint": { + "description": "Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}` or `projects/{project}/locations/{location}/publishers/{publisher}/models/{model}`", + "location": "path", + "pattern": "^publishers/[^/]+/models/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+endpoint}:fetchPredictOperation", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1FetchPredictOperationRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "generateContent": { + "description": "Generate content with multimodal inputs.", + "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:generateContent", + "httpMethod": "POST", + "id": "aiplatform.publishers.models.generateContent", + "parameterOrder": [ + "model" + ], + "parameters": { + "model": { + "description": "Required. The fully qualified name of the publisher model or tuned model endpoint to use. Publisher model format: `projects/{project}/locations/{location}/publishers/*/models/*` Tuned model endpoint format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "location": "path", + "pattern": "^publishers/[^/]+/models/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+model}:generateContent", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1GenerateContentRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1GenerateContentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "get": { + "description": "Gets a Model Garden publisher model.", + "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}", + "httpMethod": "GET", + "id": "aiplatform.publishers.models.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "huggingFaceToken": { + "description": "Optional. Token used to access Hugging Face gated models.", + "location": "query", + "type": "string" + }, + "includeEquivalentModelGardenModelDeploymentConfigs": { + "description": "Optional. Whether to cnclude the deployment configs from the equivalent Model Garden model if the requested model is a Hugging Face model.", + "location": "query", + "type": "boolean" + }, + "isHuggingFaceModel": { + "description": "Optional. Boolean indicates whether the requested model is a Hugging Face model.", + "location": "query", + "type": "boolean" + }, + "languageCode": { + "description": "Optional. The IETF BCP-47 language code representing the language in which the publisher model's text information should be written in.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The name of the PublisherModel resource. Format: `publishers/{publisher}/models/{publisher_model}`", + "location": "path", + "pattern": "^publishers/[^/]+/models/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. PublisherModel view specifying which fields to read.", + "enum": [ + "PUBLISHER_MODEL_VIEW_UNSPECIFIED", + "PUBLISHER_MODEL_VIEW_BASIC", + "PUBLISHER_MODEL_VIEW_FULL", + "PUBLISHER_MODEL_VERSION_VIEW_BASIC" + ], + "enumDescriptions": [ + "The default / unset value. The API will default to the BASIC view.", + "Include basic metadata about the publisher model, but not the full contents.", + "Include everything.", + "Include: VersionId, ModelVersionExternalName, and SupportedActions." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1PublisherModel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists publisher models in Model Garden.", + "flatPath": "v1beta1/publishers/{publishersId}/models", + "httpMethod": "GET", + "id": "aiplatform.publishers.models.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter.", + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "Optional. The IETF BCP-47 language code representing the language in which the publisher models' text information should be written in. If not set, by default English (en).", + "location": "query", + "type": "string" + }, + "listAllVersions": { + "description": "Optional. List all publisher model versions if the flag is set to true.", + "location": "query", + "type": "boolean" + }, + "orderBy": { + "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token. Typically obtained via ListPublisherModelsResponse.next_page_token of the previous ModelGardenService.ListPublisherModels call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the Publisher from which to list the PublisherModels. Format: `publishers/{publisher}`", + "location": "path", + "pattern": "^publishers/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. PublisherModel view specifying which fields to read.", + "enum": [ + "PUBLISHER_MODEL_VIEW_UNSPECIFIED", + "PUBLISHER_MODEL_VIEW_BASIC", + "PUBLISHER_MODEL_VIEW_FULL", + "PUBLISHER_MODEL_VERSION_VIEW_BASIC" + ], + "enumDescriptions": [ + "The default / unset value. The API will default to the BASIC view.", + "Include basic metadata about the publisher model, but not the full contents.", + "Include everything.", + "Include: VersionId, ModelVersionExternalName, and SupportedActions." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/models", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListPublisherModelsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "predict": { + "description": "", + "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:predict", + "httpMethod": "POST", + "id": "aiplatform.publishers.models.predict", + "parameterOrder": [ + "endpoint" + ], + "parameters": { + "endpoint": { + "description": "Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "location": "path", + "pattern": "^publishers/[^/]+/models/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+endpoint}:predict", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1PredictRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1PredictResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "predictLongRunning": { + "description": "", + "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:predictLongRunning", + "httpMethod": "POST", + "id": "aiplatform.publishers.models.predictLongRunning", + "parameterOrder": [ + "endpoint" + ], + "parameters": { + "endpoint": { + "description": "Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}` or `projects/{project}/locations/{location}/publishers/{publisher}/models/{model}`", + "location": "path", + "pattern": "^publishers/[^/]+/models/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+endpoint}:predictLongRunning", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1PredictLongRunningRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "streamGenerateContent": { + "description": "Generate content with multimodal inputs with streaming support.", + "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:streamGenerateContent", + "httpMethod": "POST", + "id": "aiplatform.publishers.models.streamGenerateContent", + "parameterOrder": [ + "model" + ], + "parameters": { + "model": { + "description": "Required. The fully qualified name of the publisher model or tuned model endpoint to use. Publisher model format: `projects/{project}/locations/{location}/publishers/*/models/*` Tuned model endpoint format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "location": "path", + "pattern": "^publishers/[^/]+/models/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+model}:streamGenerateContent", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1GenerateContentRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1GenerateContentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + } + } + }, + "ragCorpora": { + "resources": { + "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": "v1beta1/ragCorpora/{ragCorporaId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.ragCorpora.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^ragCorpora/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/ragCorpora/{ragCorporaId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.ragCorpora.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^ragCorpora/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/ragCorpora/{ragCorporaId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.ragCorpora.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^ragCorpora/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/ragCorpora/{ragCorporaId}/operations", + "httpMethod": "GET", + "id": "aiplatform.ragCorpora.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": "^ragCorpora/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/ragCorpora/{ragCorporaId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.ragCorpora.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^ragCorpora/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "ragFiles": { + "resources": { + "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": "v1beta1/ragCorpora/{ragCorporaId}/ragFiles/{ragFilesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.ragCorpora.ragFiles.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^ragCorpora/[^/]+/ragFiles/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" } - } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/ragCorpora/{ragCorporaId}/ragFiles/{ragFilesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.ragCorpora.ragFiles.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^ragCorpora/[^/]+/ragFiles/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/ragCorpora/{ragCorporaId}/ragFiles/{ragFilesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.ragCorpora.ragFiles.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^ragCorpora/[^/]+/ragFiles/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/ragCorpora/{ragCorporaId}/ragFiles/{ragFilesId}/operations", + "httpMethod": "GET", + "id": "aiplatform.ragCorpora.ragFiles.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": "^ragCorpora/[^/]+/ragFiles/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/ragCorpora/{ragCorporaId}/ragFiles/{ragFilesId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.ragCorpora.ragFiles.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^ragCorpora/[^/]+/ragFiles/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, + "ragEngineConfig": { + "resources": { + "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": "v1beta1/ragEngineConfig/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.ragEngineConfig.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^ragEngineConfig/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/ragEngineConfig/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.ragEngineConfig.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^ragEngineConfig/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/ragEngineConfig/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.ragEngineConfig.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^ragEngineConfig/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/ragEngineConfig/operations", + "httpMethod": "GET", + "id": "aiplatform.ragEngineConfig.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": "^ragEngineConfig$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/ragEngineConfig/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.ragEngineConfig.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^ragEngineConfig/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "reasoningEngines": { + "methods": { + "asyncQuery": { + "description": "Async query using a reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}:asyncQuery", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.asyncQuery", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:asyncQuery", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1AsyncQueryReasoningEngineRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a reasoning engine.", + "flatPath": "v1beta1/reasoningEngines", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.create", + "parameterOrder": [], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location to create the ReasoningEngine in. Format: `projects/{project}/locations/{location}`", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/reasoningEngines", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngine" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "force": { + "description": "Optional. If set to true, child resources of this reasoning engine will also be deleted. Otherwise, the request will fail with FAILED_PRECONDITION error when the reasoning engine has undeleted child resources.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the ReasoningEngine resource to be deleted. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "executeCode": { + "description": "Executes code statelessly.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}:executeCode", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.executeCode", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the sandbox environment to execute. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:executeCode", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1ExecuteCodeRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ExecuteCodeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the ReasoningEngine resource. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngine" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists reasoning engines in a location.", + "flatPath": "v1beta1/reasoningEngines", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.list", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Location to list the ReasoningEngines from. Format: `projects/{project}/locations/{location}`", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/reasoningEngines", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListReasoningEnginesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}", + "httpMethod": "PATCH", + "id": "aiplatform.reasoningEngines.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name of the ReasoningEngine. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Mask specifying which fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngine" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "query": { + "description": "Queries using a reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}:query", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.query", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:query", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1QueryReasoningEngineRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1QueryReasoningEngineResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "streamQuery": { + "description": "Streams queries using a reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}:streamQuery", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.streamQuery", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:streamQuery", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1StreamQueryReasoningEngineRequest" + }, + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "a2a": { + "methods": { + "card": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/card", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.a2a.card", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^card$", + "required": true, + "type": "string" }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.operations.cancel", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "extendedAgentCard": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/extendedAgentCard", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.a2a.extendedAgentCard", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^extendedAgentCard$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "tasks": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/tasks", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.a2a.tasks", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "message": { + "methods": { + "send": { + "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/message:send", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.a2a.message.send", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", + "location": "path", + "pattern": "^message$", + "required": true, + "type": "string" }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.tensorboards.operations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:send", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/operations/{operationsId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.operations.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "type": "object" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "list": { - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/operations", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tensorboards.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/[^/]+/tensorboards/[^/]+$", - "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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1beta1/{+name}/operations", - "response": { - "$ref": "GoogleLongrunningListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "stream": { + "description": "Streams queries using a reasoning engine instance via the A2A streaming protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/message:stream", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.a2a.message.stream", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. e.g., v1/message:stream.", + "location": "path", + "pattern": "^message$", + "required": true, + "type": "string" }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tensorboards/{tensorboardsId}/operations/{operationsId}:wait", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tensorboards.operations.wait", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to wait on.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorboards/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}:wait", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" } - } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:stream", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } }, - "trainingPipelines": { + "tasks": { "methods": { + "a2aGetReasoningEngine": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/tasks/{tasksId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.a2a.tasks.a2aGetReasoningEngine", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "cancel": { - "description": "Cancels a TrainingPipeline. Starts asynchronous cancellation on the TrainingPipeline. The server makes a best effort to cancel the pipeline, but success is not guaranteed. Clients can use PipelineService.GetTrainingPipeline or other methods to check whether the cancellation succeeded or whether the pipeline completed despite cancellation. On successful cancellation, the TrainingPipeline is not deleted; instead it becomes a pipeline with a TrainingPipeline.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`, and TrainingPipeline.state is set to `CANCELLED`.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}:cancel", + "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/tasks/{tasksId}:cancel", "httpMethod": "POST", - "id": "aiplatform.projects.locations.trainingPipelines.cancel", + "id": "aiplatform.reasoningEngines.a2a.tasks.cancel", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:cancel", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "pushNotificationConfigs": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/tasks/{tasksId}/pushNotificationConfigs", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.a2a.tasks.pushNotificationConfigs", "parameterOrder": [ - "name" + "name", + "a2aEndpoint" ], "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, "name": { - "description": "Required. The name of the TrainingPipeline to cancel. Format: `projects/{project}/locations/{location}/trainingPipelines/{training_pipeline}`", + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}:cancel", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1CancelTrainingPipelineRequest" - }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", "response": { - "$ref": "GoogleProtobufEmpty" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "create": { - "description": "Creates a TrainingPipeline. A created TrainingPipeline right away will be attempted to be run.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.trainingPipelines.create", + "subscribe": { + "description": "Stream get request for reasoning engine instance via the A2A stream get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/tasks/{tasksId}:subscribe", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.a2a.tasks.subscribe", "parameterOrder": [ - "parent" + "name", + "a2aEndpoint" ], "parameters": { - "parent": { - "description": "Required. The resource name of the Location to create the TrainingPipeline in. Format: `projects/{project}/locations/{location}`", + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123:subscribe`.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/trainingPipelines", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1TrainingPipeline" - }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:subscribe", "response": { - "$ref": "GoogleCloudAiplatformV1beta1TrainingPipeline" + "$ref": "GoogleApiHttpBody" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - }, - "delete": { - "description": "Deletes a TrainingPipeline.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.trainingPipelines.delete", + } + }, + "resources": { + "pushNotificationConfigs": { + "methods": { + "a2aGetReasoningEngine": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.a2a.tasks.pushNotificationConfigs.a2aGetReasoningEngine", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "v1": { + "methods": { + "card": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/card", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.a2a.v1.card", "parameterOrder": [ - "name" + "name", + "a2aEndpoint" ], "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/card$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, "name": { - "description": "Required. The name of the TrainingPipeline resource to be deleted. Format: `projects/{project}/locations/{location}/trainingPipelines/{training_pipeline}`", + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}", + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", "response": { - "$ref": "GoogleLongrunningOperation" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "get": { - "description": "Gets a TrainingPipeline.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}", + "extendedAgentCard": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/extendedAgentCard", "httpMethod": "GET", - "id": "aiplatform.projects.locations.trainingPipelines.get", + "id": "aiplatform.reasoningEngines.a2a.v1.extendedAgentCard", "parameterOrder": [ - "name" + "name", + "a2aEndpoint" ], "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/extendedAgentCard$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, "name": { - "description": "Required. The name of the TrainingPipeline resource. Format: `projects/{project}/locations/{location}/trainingPipelines/{training_pipeline}`", + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}", + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", "response": { - "$ref": "GoogleCloudAiplatformV1beta1TrainingPipeline" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "list": { - "description": "Lists TrainingPipelines in a Location.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines", + "tasks": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/tasks", "httpMethod": "GET", - "id": "aiplatform.projects.locations.trainingPipelines.list", + "id": "aiplatform.reasoningEngines.a2a.v1.tasks", "parameterOrder": [ - "parent" + "name", + "a2aEndpoint" ], "parameters": { - "filter": { - "description": "The standard list filter. Supported fields: * `display_name` supports `=`, `!=` comparisons, and `:` wildcard. * `state` supports `=`, `!=` comparisons. * `training_task_definition` `=`, `!=` comparisons, and `:` wildcard. * `create_time` supports `=`, `!=`,`<`, `<=`,`>`, `>=` comparisons. `create_time` must be in RFC 3339 format. * `labels` supports general map functions that is: `labels.key=value` - key:value equality `labels.key:* - key existence Some examples of using the filter are: * `state=\"PIPELINE_STATE_SUCCEEDED\" AND display_name:\"my_pipeline_*\"` * `state!=\"PIPELINE_STATE_FAILED\" OR display_name=\"my_pipeline\"` * `NOT display_name=\"my_pipeline\"` * `create_time>\"2021-05-18T00:00:00Z\"` * `training_task_definition:\"*automl_text_classification*\"`", - "location": "query", + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/tasks$", + "required": true, "type": "string" }, - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "The standard list page token. Typically obtained via ListTrainingPipelinesResponse.next_page_token of the previous PipelineService.ListTrainingPipelines call.", + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", "location": "query", "type": "string" }, - "parent": { - "description": "Required. The resource name of the Location to list the TrainingPipelines from. Format: `projects/{project}/locations/{location}`", + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" - }, - "readMask": { - "description": "Mask specifying which fields to read.", - "format": "google-fieldmask", - "location": "query", - "type": "string" } }, - "path": "v1beta1/{+parent}/trainingPipelines", + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListTrainingPipelinesResponse" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -33644,187 +39625,333 @@ } }, "resources": { - "operations": { + "message": { "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}/operations/{operationsId}:cancel", + "send": { + "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/message:send", "httpMethod": "POST", - "id": "aiplatform.projects.locations.trainingPipelines.operations.cancel", + "id": "aiplatform.reasoningEngines.a2a.v1.message.send", "parameterOrder": [ - "name" + "name", + "a2aEndpoint" ], "parameters": { + "a2aEndpoint": { + "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", + "location": "path", + "pattern": "^v1/message$", + "required": true, + "type": "string" + }, "name": { - "description": "The name of the operation resource to be cancelled.", + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}:cancel", + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:send", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, "response": { - "$ref": "GoogleProtobufEmpty" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.trainingPipelines.operations.delete", + "stream": { + "description": "Streams queries using a reasoning engine instance via the A2A streaming protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/message:stream", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.a2a.v1.message.stream", "parameterOrder": [ - "name" + "name", + "a2aEndpoint" ], "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. e.g., v1/message:stream.", + "location": "path", + "pattern": "^v1/message$", + "required": true, + "type": "string" + }, "name": { - "description": "The name of the operation resource to be deleted.", + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}", + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:stream", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, "response": { - "$ref": "GoogleProtobufEmpty" + "$ref": "GoogleApiHttpBody" }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}/operations/{operationsId}", + } + } + }, + "tasks": { + "methods": { + "a2aGetReasoningEngine": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/tasks/{tasksId}", "httpMethod": "GET", - "id": "aiplatform.projects.locations.trainingPipelines.operations.get", + "id": "aiplatform.reasoningEngines.a2a.v1.tasks.a2aGetReasoningEngine", "parameterOrder": [ - "name" + "name", + "a2aEndpoint" ], "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/tasks/[^/]+$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, "name": { - "description": "The name of the operation resource.", + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}", + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", "response": { - "$ref": "GoogleLongrunningOperation" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" }, "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}/operations", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.trainingPipelines.operations.list", + "cancel": { + "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/tasks/{tasksId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.a2a.v1.tasks.cancel", "parameterOrder": [ - "name" + "name", + "a2aEndpoint" ], "parameters": { - "filter": { - "description": "The standard list filter.", - "location": "query", + "a2aEndpoint": { + "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", + "location": "path", + "pattern": "^v1/tasks/[^/]+$", + "required": true, "type": "string" }, "name": { - "description": "The name of the operation's parent resource.", + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:cancel", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "location": "query", - "type": "integer" + "type": "object" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "pageToken": { - "description": "The standard list page token.", - "location": "query", + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "pushNotificationConfigs": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/tasks/{tasksId}/pushNotificationConfigs", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.a2a.v1.tasks.pushNotificationConfigs", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/tasks/[^/]+/pushNotificationConfigs$", + "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", "location": "query", - "type": "boolean" + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" } }, - "path": "v1beta1/{+name}/operations", + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", "response": { - "$ref": "GoogleLongrunningListOperationsResponse" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/trainingPipelines/{trainingPipelinesId}/operations/{operationsId}:wait", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.trainingPipelines.operations.wait", + "subscribe": { + "description": "Stream get request for reasoning engine instance via the A2A stream get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/tasks/{tasksId}:subscribe", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.a2a.v1.tasks.subscribe", "parameterOrder": [ - "name" + "name", + "a2aEndpoint" ], "parameters": { - "name": { - "description": "The name of the operation resource to wait on.", + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123:subscribe`.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/trainingPipelines/[^/]+/operations/[^/]+$", + "pattern": "^v1/tasks/[^/]+$", "required": true, "type": "string" }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, "type": "string" } }, - "path": "v1beta1/{+name}:wait", + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:subscribe", "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleApiHttpBody" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] } + }, + "resources": { + "pushNotificationConfigs": { + "methods": { + "a2aGetReasoningEngine": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.a2a.v1.tasks.pushNotificationConfigs.a2aGetReasoningEngine", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/tasks/[^/]+/pushNotificationConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } } } - }, - "tuningJobs": { + } + } + }, + "examples": { + "resources": { + "operations": { "methods": { "cancel": { - "description": "Cancels a tuning job. Starts an asynchronous cancellation request. The server makes a best effort to cancel the job, but success is not guaranteed. Clients can use GenAiTuningService.GetTuningJob or other methods to check whether the cancellation succeeded or whether the job completed despite cancellation. On successful cancellation, the tuning job is not deleted. Instead, its state is set to `CANCELLED`, and `error` is set to a status with a `google.rpc.Status.code` of 1, corresponding to `Code.CANCELLED`.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs/{tuningJobsId}: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": "v1beta1/reasoningEngines/{reasoningEnginesId}/examples/{examplesId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.projects.locations.tuningJobs.cancel", + "id": "aiplatform.reasoningEngines.examples.operations.cancel", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the tuning job to cancel. Format: `projects/{project}/locations/{location}/tuningJobs/{tuning_job}`", + "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tuningJobs/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/examples/[^/]+/operations/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}:cancel", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1CancelTuningJobRequest" - }, "response": { "$ref": "GoogleProtobufEmpty" }, @@ -33832,286 +39959,242 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "create": { - "description": "Creates a tuning job. A created tuning job will be subsequently executed to start the model tuning process.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tuningJobs.create", + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/examples/{examplesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.examples.operations.delete", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "parent": { - "description": "Required. The resource name of the location to create the tuning job in. Format: `projects/{project}/locations/{location}`", + "name": { + "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/examples/[^/]+/operations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/tuningJobs", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1TuningJob" - }, + "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleCloudAiplatformV1beta1TuningJob" + "$ref": "GoogleProtobufEmpty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "get": { - "description": "Gets a tuning job.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs/{tuningJobsId}", + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/examples/{examplesId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.projects.locations.tuningJobs.get", + "id": "aiplatform.reasoningEngines.examples.operations.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the tuning job to retrieve. Format: `projects/{project}/locations/{location}/tuningJobs/{tuning_job}`", + "description": "The name of the operation resource.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tuningJobs/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/examples/[^/]+/operations/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleCloudAiplatformV1beta1TuningJob" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "list": { - "description": "Lists tuning jobs in a location.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.tuningJobs.list", + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/examples/{examplesId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.examples.operations.wait", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "filter": { - "description": "Optional. The standard list filter.", - "location": "query", + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/examples/[^/]+/operations/[^/]+$", + "required": true, "type": "string" }, - "pageSize": { - "description": "Optional. The standard list page size.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. The standard list page token. Typically obtained from ListTuningJobsResponse.next_page_token of the previous GenAiTuningService.ListTuningJobs call.", + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", "location": "query", "type": "string" - }, - "parent": { - "description": "Required. The resource name of the location to list the tuning jobs from. Format: `projects/{project}/locations/{location}`", + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "feedbackEntries": { + "resources": { + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/feedbackEntries/{feedbackEntriesId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.feedbackEntries.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/feedbackEntries/[^/]+/operations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/tuningJobs", + "path": "v1beta1/{+name}:cancel", "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListTuningJobsResponse" + "$ref": "GoogleProtobufEmpty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "optimizePrompt": { - "description": "Optimizes a prompt. Given a prompt, this method returns a stream of optimized prompts expanded from the original prompt.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs:optimizePrompt", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tuningJobs.optimizePrompt", + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/feedbackEntries/{feedbackEntriesId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.feedbackEntries.operations.delete", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "parent": { - "description": "Required. The resource name of the location to optimize the prompt in. Format: `projects/{project}/locations/{location}`", + "name": { + "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/feedbackEntries/[^/]+/operations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/tuningJobs:optimizePrompt", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1OptimizePromptRequest" - }, + "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleCloudAiplatformV1beta1OptimizePromptResponse" + "$ref": "GoogleProtobufEmpty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "rebaseTunedModel": { - "description": "Rebase a tuned model. A rebase operation takes a model that was previously tuned on a base model version, and retunes it on a new base model version. The rebase operation creates a new tuning job and a new tuned model.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs:rebaseTunedModel", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.tuningJobs.rebaseTunedModel", + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/feedbackEntries/{feedbackEntriesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.feedbackEntries.operations.get", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "parent": { - "description": "Required. The resource name of the location in which to rebase the Model. Format: `projects/{project}/locations/{location}`", + "name": { + "description": "The name of the operation resource.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/feedbackEntries/[^/]+/operations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/tuningJobs:rebaseTunedModel", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1RebaseTunedModelRequest" - }, + "path": "v1beta1/{+name}", "response": { "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - } - }, - "resources": { - "operations": { - "methods": { - "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": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs/{tuningJobsId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.tuningJobs.operations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tuningJobs/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } - } - } - }, - "modelGardenEula": { - "methods": { - "accept": { - "description": "Accepts the EULA acceptance status of a publisher model.", - "flatPath": "v1beta1/projects/{projectsId}/modelGardenEula:accept", - "httpMethod": "POST", - "id": "aiplatform.projects.modelGardenEula.accept", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The project requesting access for named model. The format is `projects/{project}`.", - "location": "path", - "pattern": "^projects/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/modelGardenEula:accept", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1AcceptPublisherModelEulaRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1PublisherModelEulaAcceptance" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "check": { - "description": "Checks the EULA acceptance status of a publisher model.", - "flatPath": "v1beta1/projects/{projectsId}/modelGardenEula:check", - "httpMethod": "POST", - "id": "aiplatform.projects.modelGardenEula.check", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The project requesting access for named model. The format is `projects/{project}`.", - "location": "path", - "pattern": "^projects/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/modelGardenEula:check", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1CheckPublisherModelEulaAcceptanceRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1PublisherModelEulaAcceptance" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, - "publishers": { - "resources": { - "models": { - "methods": { - "enableModel": { - "description": "Enables model for the project if prerequisites are met (e.g. completed questionnaire and consents, or an active Private Offer).", - "flatPath": "v1beta1/projects/{projectsId}/publishers/{publishersId}/models/{modelsId}:enableModel", - "httpMethod": "POST", - "id": "aiplatform.projects.publishers.models.enableModel", + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/feedbackEntries/{feedbackEntriesId}/operations", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.feedbackEntries.operations.list", "parameterOrder": [ - "parent", "name" ], "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, "name": { - "description": "Required. The name of the PublisherModel resource. Format: `publishers/{publisher}/models/{publisher_model}`", + "description": "The name of the operation's parent resource.", "location": "path", - "pattern": "^publishers/[^/]+/models/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/feedbackEntries/[^/]+$", "required": true, "type": "string" }, - "parent": { - "description": "Required. The project requesting access for named model. Format: `projects/{project}`", + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/feedbackEntries/{feedbackEntriesId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.feedbackEntries.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^projects/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/feedbackEntries/[^/]+/operations/[^/]+$", "required": true, "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" } }, - "path": "v1beta1/{+parent}/{+name}:enableModel", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1EnableModelRequest" - }, + "path": "v1beta1/{+name}:wait", "response": { - "$ref": "GoogleCloudAiplatformV1beta1EnableModelResponse" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -34120,503 +40203,333 @@ } } } - } - } - }, - "publishers": { - "resources": { - "models": { + }, + "memories": { "methods": { - "computeTokens": { - "description": "Return a list of tokens based on the input text.", - "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:computeTokens", - "httpMethod": "POST", - "id": "aiplatform.publishers.models.computeTokens", - "parameterOrder": [ - "endpoint" - ], - "parameters": { - "endpoint": { - "description": "Required. The name of the Endpoint requested to get lists of tokens and token ids.", - "location": "path", - "pattern": "^publishers/[^/]+/models/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+endpoint}:computeTokens", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1ComputeTokensRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ComputeTokensResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "countTokens": { - "description": "Perform a token counting.", - "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:countTokens", + "create": { + "description": "Create a Memory.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories", "httpMethod": "POST", - "id": "aiplatform.publishers.models.countTokens", + "id": "aiplatform.reasoningEngines.memories.create", "parameterOrder": [ - "endpoint" + "parent" ], "parameters": { - "endpoint": { - "description": "Required. The name of the Endpoint requested to perform token counting. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", - "location": "path", - "pattern": "^publishers/[^/]+/models/[^/]+$", - "required": true, + "memoryId": { + "description": "Optional. The user defined ID to use for memory, which will become the final component of the memory resource name. If not provided, Vertex AI will generate a value for this ID. This value may be up to 63 characters, and valid characters are `[a-z0-9-]`. The first character must be a letter, and the last character must be a letter or number.", + "location": "query", "type": "string" - } - }, - "path": "v1beta1/{+endpoint}:countTokens", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1CountTokensRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1CountTokensResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "fetchPredictOperation": { - "description": "Fetch an asynchronous online prediction operation.", - "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:fetchPredictOperation", - "httpMethod": "POST", - "id": "aiplatform.publishers.models.fetchPredictOperation", - "parameterOrder": [ - "endpoint" - ], - "parameters": { - "endpoint": { - "description": "Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}` or `projects/{project}/locations/{location}/publishers/{publisher}/models/{model}`", + }, + "parent": { + "description": "Required. The resource name of the ReasoningEngine to create the Memory under. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^publishers/[^/]+/models/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+endpoint}:fetchPredictOperation", + "path": "v1beta1/{+parent}/memories", "request": { - "$ref": "GoogleCloudAiplatformV1beta1FetchPredictOperationRequest" + "$ref": "GoogleCloudAiplatformV1beta1Memory" }, "response": { "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "generateContent": { - "description": "Generate content with multimodal inputs.", - "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:generateContent", - "httpMethod": "POST", - "id": "aiplatform.publishers.models.generateContent", - "parameterOrder": [ - "model" - ], - "parameters": { - "model": { - "description": "Required. The fully qualified name of the publisher model or tuned model endpoint to use. Publisher model format: `projects/{project}/locations/{location}/publishers/*/models/*` Tuned model endpoint format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", - "location": "path", - "pattern": "^publishers/[^/]+/models/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+model}:generateContent", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1GenerateContentRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1GenerateContentResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ] - }, - "get": { - "description": "Gets a Model Garden publisher model.", - "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}", - "httpMethod": "GET", - "id": "aiplatform.publishers.models.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "huggingFaceToken": { - "description": "Optional. Token used to access Hugging Face gated models.", - "location": "query", - "type": "string" - }, - "includeEquivalentModelGardenModelDeploymentConfigs": { - "description": "Optional. Whether to cnclude the deployment configs from the equivalent Model Garden model if the requested model is a Hugging Face model.", - "location": "query", - "type": "boolean" - }, - "isHuggingFaceModel": { - "description": "Optional. Boolean indicates whether the requested model is a Hugging Face model.", - "location": "query", - "type": "boolean" - }, - "languageCode": { - "description": "Optional. The IETF BCP-47 language code representing the language in which the publisher model's text information should be written in.", - "location": "query", - "type": "string" - }, - "name": { - "description": "Required. The name of the PublisherModel resource. Format: `publishers/{publisher}/models/{publisher_model}`", - "location": "path", - "pattern": "^publishers/[^/]+/models/[^/]+$", - "required": true, - "type": "string" - }, - "view": { - "description": "Optional. PublisherModel view specifying which fields to read.", - "enum": [ - "PUBLISHER_MODEL_VIEW_UNSPECIFIED", - "PUBLISHER_MODEL_VIEW_BASIC", - "PUBLISHER_MODEL_VIEW_FULL", - "PUBLISHER_MODEL_VERSION_VIEW_BASIC" - ], - "enumDescriptions": [ - "The default / unset value. The API will default to the BASIC view.", - "Include basic metadata about the publisher model, but not the full contents.", - "Include everything.", - "Include: VersionId, ModelVersionExternalName, and SupportedActions." - ], - "location": "query", + }, + "delete": { + "description": "Delete a Memory.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.memories.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the Memory to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/memories/[^/]+$", + "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleCloudAiplatformV1beta1PublisherModel" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "list": { - "description": "Lists publisher models in Model Garden.", - "flatPath": "v1beta1/publishers/{publishersId}/models", - "httpMethod": "GET", - "id": "aiplatform.publishers.models.list", + "generate": { + "description": "Generate memories.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories:generate", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.memories.generate", "parameterOrder": [ "parent" ], "parameters": { - "filter": { - "description": "Optional. The standard list filter.", - "location": "query", - "type": "string" - }, - "languageCode": { - "description": "Optional. The IETF BCP-47 language code representing the language in which the publisher models' text information should be written in. If not set, by default English (en).", - "location": "query", - "type": "string" - }, - "listAllVersions": { - "description": "Optional. List all publisher model versions if the flag is set to true.", - "location": "query", - "type": "boolean" - }, - "orderBy": { - "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Optional. The standard list page size.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. The standard list page token. Typically obtained via ListPublisherModelsResponse.next_page_token of the previous ModelGardenService.ListPublisherModels call.", - "location": "query", - "type": "string" - }, "parent": { - "description": "Required. The name of the Publisher from which to list the PublisherModels. Format: `publishers/{publisher}`", + "description": "Required. The resource name of the ReasoningEngine to generate memories for. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^publishers/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" - }, - "view": { - "description": "Optional. PublisherModel view specifying which fields to read.", - "enum": [ - "PUBLISHER_MODEL_VIEW_UNSPECIFIED", - "PUBLISHER_MODEL_VIEW_BASIC", - "PUBLISHER_MODEL_VIEW_FULL", - "PUBLISHER_MODEL_VERSION_VIEW_BASIC" - ], - "enumDescriptions": [ - "The default / unset value. The API will default to the BASIC view.", - "Include basic metadata about the publisher model, but not the full contents.", - "Include everything.", - "Include: VersionId, ModelVersionExternalName, and SupportedActions." - ], - "location": "query", - "type": "string" } }, - "path": "v1beta1/{+parent}/models", + "path": "v1beta1/{+parent}/memories:generate", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1GenerateMemoriesRequest" + }, "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListPublisherModelsResponse" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "predict": { - "description": "Perform an online prediction.", - "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:predict", - "httpMethod": "POST", - "id": "aiplatform.publishers.models.predict", + "get": { + "description": "Get a Memory.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.memories.get", "parameterOrder": [ - "endpoint" + "name" ], "parameters": { - "endpoint": { - "description": "Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "name": { + "description": "Required. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", "location": "path", - "pattern": "^publishers/[^/]+/models/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/memories/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+endpoint}:predict", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1PredictRequest" - }, + "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleCloudAiplatformV1beta1PredictResponse" + "$ref": "GoogleCloudAiplatformV1beta1Memory" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ] }, - "predictLongRunning": { - "description": "", - "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:predictLongRunning", + "ingestEvents": { + "description": "Ingests events for a Memory Bank.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories:ingestEvents", "httpMethod": "POST", - "id": "aiplatform.publishers.models.predictLongRunning", + "id": "aiplatform.reasoningEngines.memories.ingestEvents", "parameterOrder": [ - "endpoint" + "parent" ], "parameters": { - "endpoint": { - "description": "Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}` or `projects/{project}/locations/{location}/publishers/{publisher}/models/{model}`", + "parent": { + "description": "Required. The resource name of the ReasoningEngine to ingest events to. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^publishers/[^/]+/models/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+endpoint}:predictLongRunning", + "path": "v1beta1/{+parent}/memories:ingestEvents", "request": { - "$ref": "GoogleCloudAiplatformV1beta1PredictLongRunningRequest" + "$ref": "GoogleCloudAiplatformV1beta1IngestEventsRequest" }, "response": { "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ] }, - "streamGenerateContent": { - "description": "Generate content with multimodal inputs with streaming support.", - "flatPath": "v1beta1/publishers/{publishersId}/models/{modelsId}:streamGenerateContent", - "httpMethod": "POST", - "id": "aiplatform.publishers.models.streamGenerateContent", + "list": { + "description": "List Memories.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.memories.list", "parameterOrder": [ - "model" + "parent" ], "parameters": { - "model": { - "description": "Required. The fully qualified name of the publisher model or tuned model endpoint to use. Publisher model format: `projects/{project}/locations/{location}/publishers/*/models/*` Tuned model endpoint format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "filter": { + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). Supported fields: * `scope` (as a JSON string with equality match only) * `topics` (i.e. `topics.custom_memory_topic_label: \"example topic\" OR topics.managed_memory_topic: USER_PREFERENCES`)", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. The standard list order by string. If not specified, the default order is `create_time desc`. If specified, the default sorting order of provided fields is ascending. More detail in [AIP-132](https://google.aip.dev/132). Supported fields: * `create_time` * `update_time`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the ReasoningEngine to list the Memories under. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^publishers/[^/]+/models/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+model}:streamGenerateContent", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1GenerateContentRequest" - }, + "path": "v1beta1/{+parent}/memories", "response": { - "$ref": "GoogleCloudAiplatformV1beta1GenerateContentResponse" + "$ref": "GoogleCloudAiplatformV1beta1ListMemoriesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ] - } - } - } - } - }, - "ragCorpora": { - "resources": { - "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": "v1beta1/ragCorpora/{ragCorporaId}/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.ragCorpora.operations.cancel", + }, + "patch": { + "description": "Update a Memory.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}", + "httpMethod": "PATCH", + "id": "aiplatform.reasoningEngines.memories.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The name of the operation resource to be cancelled.", + "description": "Identifier. Represents the resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", "location": "path", - "pattern": "^ragCorpora/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/memories/[^/]+$", "required": true, "type": "string" + }, + "updateMask": { + "description": "Optional. Mask specifying which fields to update. Supported fields: * `display_name` * `description` * `fact`", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, - "path": "v1beta1/{+name}:cancel", + "path": "v1beta1/{+name}", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1Memory" + }, "response": { - "$ref": "GoogleProtobufEmpty" + "$ref": "GoogleLongrunningOperation" }, "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": "v1beta1/ragCorpora/{ragCorporaId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.ragCorpora.operations.delete", + "purge": { + "description": "Purge memories.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories:purge", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.memories.purge", "parameterOrder": [ - "name" + "parent" ], "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", + "parent": { + "description": "Required. The resource name of the ReasoningEngine to purge memories from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^ragCorpora/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}", + "path": "v1beta1/{+parent}/memories:purge", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1PurgeMemoriesRequest" + }, "response": { - "$ref": "GoogleProtobufEmpty" + "$ref": "GoogleLongrunningOperation" }, "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": "v1beta1/ragCorpora/{ragCorporaId}/operations/{operationsId}", - "httpMethod": "GET", - "id": "aiplatform.ragCorpora.operations.get", + "retrieve": { + "description": "Retrieve memories.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories:retrieve", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.memories.retrieve", "parameterOrder": [ - "name" + "parent" ], "parameters": { - "name": { - "description": "The name of the operation resource.", + "parent": { + "description": "Required. The resource name of the ReasoningEngine to retrieve memories from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^ragCorpora/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}", + "path": "v1beta1/{+parent}/memories:retrieve", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1RetrieveMemoriesRequest" + }, "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleCloudAiplatformV1beta1RetrieveMemoriesResponse" }, "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": "v1beta1/ragCorpora/{ragCorporaId}/operations", - "httpMethod": "GET", - "id": "aiplatform.ragCorpora.operations.list", + "retrieveProfiles": { + "description": "Retrieves profiles.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories:retrieveProfiles", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.memories.retrieveProfiles", "parameterOrder": [ - "name" + "parent" ], "parameters": { - "filter": { - "description": "The standard list filter.", - "location": "query", - "type": "string" - }, - "name": { - "description": "The name of the operation's parent resource.", + "parent": { + "description": "Required. The resource name of the ReasoningEngine to retrieve profiles from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^ragCorpora/[^/]+$", + "pattern": "^reasoningEngines/[^/]+$", "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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" } }, - "path": "v1beta1/{+name}/operations", + "path": "v1beta1/{+parent}/memories:retrieveProfiles", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1RetrieveProfilesRequest" + }, "response": { - "$ref": "GoogleLongrunningListOperationsResponse" + "$ref": "GoogleCloudAiplatformV1beta1RetrieveProfilesResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/ragCorpora/{ragCorporaId}/operations/{operationsId}:wait", + "rollback": { + "description": "Rollback Memory to a specific revision.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}:rollback", "httpMethod": "POST", - "id": "aiplatform.ragCorpora.operations.wait", + "id": "aiplatform.reasoningEngines.memories.rollback", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The name of the operation resource to wait on.", + "description": "Required. The resource name of the Memory to rollback. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", "location": "path", - "pattern": "^ragCorpora/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/memories/[^/]+$", "required": true, "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" } }, - "path": "v1beta1/{+name}:wait", + "path": "v1beta1/{+name}:rollback", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1RollbackMemoryRequest" + }, "response": { "$ref": "GoogleLongrunningOperation" }, @@ -34624,17 +40537,15 @@ "https://www.googleapis.com/auth/cloud-platform" ] } - } - }, - "ragFiles": { + }, "resources": { "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": "v1beta1/ragCorpora/{ragCorporaId}/ragFiles/{ragFilesId}/operations/{operationsId}:cancel", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.ragCorpora.ragFiles.operations.cancel", + "id": "aiplatform.reasoningEngines.memories.operations.cancel", "parameterOrder": [ "name" ], @@ -34642,7 +40553,7 @@ "name": { "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^ragCorpora/[^/]+/ragFiles/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/memories/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -34657,9 +40568,9 @@ }, "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": "v1beta1/ragCorpora/{ragCorporaId}/ragFiles/{ragFilesId}/operations/{operationsId}", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.ragCorpora.ragFiles.operations.delete", + "id": "aiplatform.reasoningEngines.memories.operations.delete", "parameterOrder": [ "name" ], @@ -34667,7 +40578,7 @@ "name": { "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^ragCorpora/[^/]+/ragFiles/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/memories/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -34682,9 +40593,9 @@ }, "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": "v1beta1/ragCorpora/{ragCorporaId}/ragFiles/{ragFilesId}/operations/{operationsId}", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.ragCorpora.ragFiles.operations.get", + "id": "aiplatform.reasoningEngines.memories.operations.get", "parameterOrder": [ "name" ], @@ -34692,7 +40603,7 @@ "name": { "description": "The name of the operation resource.", "location": "path", - "pattern": "^ragCorpora/[^/]+/ragFiles/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/memories/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -34707,9 +40618,9 @@ }, "list": { "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/ragCorpora/{ragCorporaId}/ragFiles/{ragFilesId}/operations", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/operations", "httpMethod": "GET", - "id": "aiplatform.ragCorpora.ragFiles.operations.list", + "id": "aiplatform.reasoningEngines.memories.operations.list", "parameterOrder": [ "name" ], @@ -34722,7 +40633,7 @@ "name": { "description": "The name of the operation's parent resource.", "location": "path", - "pattern": "^ragCorpora/[^/]+/ragFiles/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/memories/[^/]+$", "required": true, "type": "string" }, @@ -34753,9 +40664,9 @@ }, "wait": { "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/ragCorpora/{ragCorporaId}/ragFiles/{ragFilesId}/operations/{operationsId}:wait", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/operations/{operationsId}:wait", "httpMethod": "POST", - "id": "aiplatform.ragCorpora.ragFiles.operations.wait", + "id": "aiplatform.reasoningEngines.memories.operations.wait", "parameterOrder": [ "name" ], @@ -34763,7 +40674,7 @@ "name": { "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^ragCorpora/[^/]+/ragFiles/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/memories/[^/]+/operations/[^/]+$", "required": true, "type": "string" }, @@ -34783,20 +40694,86 @@ ] } } + }, + "revisions": { + "methods": { + "get": { + "description": "Get a Memory Revision.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/revisions/{revisionsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.memories.revisions.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the Memory Revision to retrieve. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}/revisions/{revision}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/memories/[^/]+/revisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1MemoryRevision" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "List Memory Revisions for a Memory.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/revisions", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.memories.revisions.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). Supported fields (equality match only): * `labels`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Memory to list revisions for. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/memories/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/revisions", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListMemoryRevisionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } } - } - } - }, - "ragEngineConfig": { - "resources": { + }, "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": "v1beta1/ragEngineConfig/operations/{operationsId}:cancel", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.ragEngineConfig.operations.cancel", + "id": "aiplatform.reasoningEngines.operations.cancel", "parameterOrder": [ "name" ], @@ -34804,7 +40781,7 @@ "name": { "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^ragEngineConfig/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -34819,9 +40796,9 @@ }, "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": "v1beta1/ragEngineConfig/operations/{operationsId}", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.ragEngineConfig.operations.delete", + "id": "aiplatform.reasoningEngines.operations.delete", "parameterOrder": [ "name" ], @@ -34829,7 +40806,7 @@ "name": { "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^ragEngineConfig/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -34844,9 +40821,9 @@ }, "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": "v1beta1/ragEngineConfig/operations/{operationsId}", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.ragEngineConfig.operations.get", + "id": "aiplatform.reasoningEngines.operations.get", "parameterOrder": [ "name" ], @@ -34854,7 +40831,7 @@ "name": { "description": "The name of the operation resource.", "location": "path", - "pattern": "^ragEngineConfig/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -34869,9 +40846,9 @@ }, "list": { "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/ragEngineConfig/operations", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/operations", "httpMethod": "GET", - "id": "aiplatform.ragEngineConfig.operations.list", + "id": "aiplatform.reasoningEngines.operations.list", "parameterOrder": [ "name" ], @@ -34884,7 +40861,7 @@ "name": { "description": "The name of the operation's parent resource.", "location": "path", - "pattern": "^ragEngineConfig$", + "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" }, @@ -34905,296 +40882,114 @@ "type": "boolean" } }, - "path": "v1beta1/{+name}/operations", + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "runtimeRevisions": { + "methods": { + "query": { + "description": "Queries using a reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}:query", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.runtimeRevisions.query", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:query", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1QueryReasoningEngineRequest" + }, "response": { - "$ref": "GoogleLongrunningListOperationsResponse" + "$ref": "GoogleCloudAiplatformV1beta1QueryReasoningEngineResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/ragEngineConfig/operations/{operationsId}:wait", + "streamQuery": { + "description": "Streams queries using a reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}:streamQuery", "httpMethod": "POST", - "id": "aiplatform.ragEngineConfig.operations.wait", + "id": "aiplatform.reasoningEngines.runtimeRevisions.streamQuery", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The name of the operation resource to wait on.", + "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^ragEngineConfig/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" } }, - "path": "v1beta1/{+name}:wait", + "path": "v1beta1/{+name}:streamQuery", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1StreamQueryReasoningEngineRequest" + }, "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleApiHttpBody" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] } - } - } - } - }, - "reasoningEngines": { - "methods": { - "create": { - "description": "Creates a reasoning engine.", - "flatPath": "v1beta1/reasoningEngines", - "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.create", - "parameterOrder": [], - "parameters": { - "parent": { - "description": "Required. The resource name of the Location to create the ReasoningEngine in. Format: `projects/{project}/locations/{location}`", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/reasoningEngines", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngine" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Deletes a reasoning engine.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}", - "httpMethod": "DELETE", - "id": "aiplatform.reasoningEngines.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "force": { - "description": "Optional. If set to true, child resources of this reasoning engine will also be deleted. Otherwise, the request will fail with FAILED_PRECONDITION error when the reasoning engine has undeleted child resources.", - "location": "query", - "type": "boolean" - }, - "name": { - "description": "Required. The name of the ReasoningEngine resource to be deleted. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", - "location": "path", - "pattern": "^reasoningEngines/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "executeCode": { - "description": "Executes code statelessly.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}:executeCode", - "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.executeCode", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the sandbox environment to execute. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", - "location": "path", - "pattern": "^reasoningEngines/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:executeCode", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1ExecuteCodeRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ExecuteCodeResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets a reasoning engine.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}", - "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the ReasoningEngine resource. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", - "location": "path", - "pattern": "^reasoningEngines/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngine" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists reasoning engines in a location.", - "flatPath": "v1beta1/reasoningEngines", - "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.list", - "parameterOrder": [], - "parameters": { - "filter": { - "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Optional. The standard list page size.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. The standard list page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the Location to list the ReasoningEngines from. Format: `projects/{project}/locations/{location}`", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/reasoningEngines", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListReasoningEnginesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "patch": { - "description": "Updates a reasoning engine.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}", - "httpMethod": "PATCH", - "id": "aiplatform.reasoningEngines.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Identifier. The resource name of the ReasoningEngine. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", - "location": "path", - "pattern": "^reasoningEngines/[^/]+$", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "Optional. Mask specifying which fields to update.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngine" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "query": { - "description": "Queries using a reasoning engine.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}:query", - "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.query", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", - "location": "path", - "pattern": "^reasoningEngines/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:query", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1QueryReasoningEngineRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1QueryReasoningEngineResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "streamQuery": { - "description": "Streams queries using a reasoning engine.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}:streamQuery", - "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.streamQuery", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the ReasoningEngine resource to use. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", - "location": "path", - "pattern": "^reasoningEngines/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:streamQuery", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1StreamQueryReasoningEngineRequest" - }, - "response": { - "$ref": "GoogleApiHttpBody" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "a2a": { "resources": { - "v1": { + "a2a": { "methods": { "card": { "description": "Get request for reasoning engine instance via the A2A get protocol apis.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/card", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/card", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.a2a.v1.card", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.card", "parameterOrder": [ "name", "a2aEndpoint" @@ -35203,7 +40998,7 @@ "a2aEndpoint": { "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", "location": "path", - "pattern": "^v1/card$", + "pattern": "^card$", "required": true, "type": "string" }, @@ -35215,7 +41010,91 @@ "name": { "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^reasoningEngines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "extendedAgentCard": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/extendedAgentCard", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.extendedAgentCard", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^extendedAgentCard$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "tasks": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/tasks", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.tasks", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } @@ -35238,9 +41117,9 @@ "methods": { "send": { "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/message:send", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/message:send", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.a2a.v1.message.send", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.message.send", "parameterOrder": [ "name", "a2aEndpoint" @@ -35249,14 +41128,14 @@ "a2aEndpoint": { "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", "location": "path", - "pattern": "^v1/message$", + "pattern": "^message$", "required": true, "type": "string" }, "name": { "description": "Required. The full resource path of the reasoning engine, captured from the URL.", "location": "path", - "pattern": "^reasoningEngines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } @@ -35282,9 +41161,9 @@ }, "stream": { "description": "Streams queries using a reasoning engine instance via the A2A streaming protocol apis.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/message:stream", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/message:stream", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.a2a.v1.message.stream", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.message.stream", "parameterOrder": [ "name", "a2aEndpoint" @@ -35293,14 +41172,14 @@ "a2aEndpoint": { "description": "Required. The http endpoint extracted from the URL path. e.g., v1/message:stream.", "location": "path", - "pattern": "^v1/message$", + "pattern": "^message$", "required": true, "type": "string" }, "name": { "description": "Required. The full resource path of the reasoning engine, captured from the URL.", "location": "path", - "pattern": "^reasoningEngines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } @@ -35326,9 +41205,9 @@ "methods": { "a2aGetReasoningEngine": { "description": "Get request for reasoning engine instance via the A2A get protocol apis.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/tasks/{tasksId}", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/tasks/{tasksId}", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.a2a.v1.tasks.a2aGetReasoningEngine", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.tasks.a2aGetReasoningEngine", "parameterOrder": [ "name", "a2aEndpoint" @@ -35337,7 +41216,7 @@ "a2aEndpoint": { "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", "location": "path", - "pattern": "^v1/tasks/[^/]+$", + "pattern": "^tasks/[^/]+$", "required": true, "type": "string" }, @@ -35349,7 +41228,7 @@ "name": { "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^reasoningEngines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } @@ -35368,9 +41247,9 @@ }, "cancel": { "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/tasks/{tasksId}:cancel", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/tasks/{tasksId}:cancel", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.a2a.v1.tasks.cancel", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.tasks.cancel", "parameterOrder": [ "name", "a2aEndpoint" @@ -35379,26 +41258,195 @@ "a2aEndpoint": { "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", "location": "path", - "pattern": "^v1/tasks/[^/]+$", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:cancel", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "pushNotificationConfigs": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/tasks/{tasksId}/pushNotificationConfigs", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.tasks.pushNotificationConfigs", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "subscribe": { + "description": "Stream get request for reasoning engine instance via the A2A stream get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/tasks/{tasksId}:subscribe", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.tasks.subscribe", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123:subscribe`.", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:subscribe", + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "pushNotificationConfigs": { + "methods": { + "a2aGetReasoningEngine": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.tasks.pushNotificationConfigs.a2aGetReasoningEngine", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "v1": { + "methods": { + "card": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/card", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.v1.card", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/card$", "required": true, "type": "string" }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, "name": { - "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^reasoningEngines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:cancel", - "request": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "type": "object" - }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", "response": { "additionalProperties": { "description": "Properties of the object.", @@ -35410,11 +41458,11 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "pushNotificationConfigs": { + "extendedAgentCard": { "description": "Get request for reasoning engine instance via the A2A get protocol apis.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/tasks/{tasksId}/pushNotificationConfigs", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/extendedAgentCard", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.a2a.v1.tasks.pushNotificationConfigs", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.v1.extendedAgentCard", "parameterOrder": [ "name", "a2aEndpoint" @@ -35423,7 +41471,7 @@ "a2aEndpoint": { "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", "location": "path", - "pattern": "^v1/tasks/[^/]+/pushNotificationConfigs$", + "pattern": "^v1/extendedAgentCard$", "required": true, "type": "string" }, @@ -35435,7 +41483,7 @@ "name": { "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^reasoningEngines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } @@ -35452,34 +41500,43 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "subscribe": { - "description": "Stream get request for reasoning engine instance via the A2A stream get protocol apis.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/tasks/{tasksId}:subscribe", + "tasks": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/tasks", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.a2a.v1.tasks.subscribe", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.v1.tasks", "parameterOrder": [ "name", "a2aEndpoint" ], "parameters": { "a2aEndpoint": { - "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123:subscribe`.", + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", "location": "path", - "pattern": "^v1/tasks/[^/]+$", + "pattern": "^v1/tasks$", "required": true, "type": "string" }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, "name": { - "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^reasoningEngines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:subscribe", + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", "response": { - "$ref": "GoogleApiHttpBody" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -35487,13 +41544,101 @@ } }, "resources": { - "pushNotificationConfigs": { + "message": { + "methods": { + "send": { + "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/message:send", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.v1.message.send", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", + "location": "path", + "pattern": "^v1/message$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:send", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "stream": { + "description": "Streams queries using a reasoning engine instance via the A2A streaming protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/message:stream", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.v1.message.stream", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. e.g., v1/message:stream.", + "location": "path", + "pattern": "^v1/message$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:stream", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "tasks": { "methods": { "a2aGetReasoningEngine": { "description": "Get request for reasoning engine instance via the A2A get protocol apis.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/a2a/v1/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/tasks/{tasksId}", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.a2a.v1.tasks.pushNotificationConfigs.a2aGetReasoningEngine", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.v1.tasks.a2aGetReasoningEngine", "parameterOrder": [ "name", "a2aEndpoint" @@ -35502,7 +41647,7 @@ "a2aEndpoint": { "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", "location": "path", - "pattern": "^v1/tasks/[^/]+/pushNotificationConfigs/[^/]+$", + "pattern": "^v1/tasks/[^/]+$", "required": true, "type": "string" }, @@ -35514,7 +41659,93 @@ "name": { "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", - "pattern": "^reasoningEngines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "cancel": { + "description": "Send post request for reasoning engine instance via the A2A post protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/tasks/{tasksId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.v1.tasks.cancel", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The a2a endpoint path, captured from the URL. e.g., v1/message:send", + "location": "path", + "pattern": "^v1/tasks/[^/]+$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:cancel", + "request": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "pushNotificationConfigs": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/tasks/{tasksId}/pushNotificationConfigs", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.v1.tasks.pushNotificationConfigs", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/tasks/[^/]+/pushNotificationConfigs$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", "required": true, "type": "string" } @@ -35530,24 +41761,354 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "subscribe": { + "description": "Stream get request for reasoning engine instance via the A2A stream get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/tasks/{tasksId}:subscribe", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.v1.tasks.subscribe", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123:subscribe`.", + "location": "path", + "pattern": "^v1/tasks/[^/]+$", + "required": true, + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}:subscribe", + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "pushNotificationConfigs": { + "methods": { + "a2aGetReasoningEngine": { + "description": "Get request for reasoning engine instance via the A2A get protocol apis.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/a2a/v1/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.runtimeRevisions.a2a.v1.tasks.pushNotificationConfigs.a2aGetReasoningEngine", + "parameterOrder": [ + "name", + "a2aEndpoint" + ], + "parameters": { + "a2aEndpoint": { + "description": "Required. The http endpoint extracted from the URL path. i.e. `v1/tasks/123`", + "location": "path", + "pattern": "^v1/tasks/[^/]+/pushNotificationConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "historyLength": { + "description": "Optional. The optional query parameter for the getTask endpoint. Mapped from \"?history_length=\". This indicates how many turns of history to return. If not set, the default value is 0, which means all the history will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The full resource path of the reasoning engine, captured from the URL. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}/a2a/{+a2aEndpoint}", + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.runtimeRevisions.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.runtimeRevisions.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.runtimeRevisions.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.runtimeRevisions.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": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/runtimeRevisions/{runtimeRevisionsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.runtimeRevisions.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/runtimeRevisions/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } } }, - "examples": { + "sandboxEnvironmentSnapshots": { + "methods": { + "delete": { + "description": "Deletes the specific SandboxEnvironmentSnapshot.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the SandboxEnvironmentSnapshot to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of the specific SandboxEnvironmentSnapshot.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the sandbox environment snapshot. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentSnapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists SandboxEnvironmentSnapshots in a given reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of SandboxEnvironmentSnapshots to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentSnapshots will be returned. Values above 100 will be coerced to 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironmentSnapshots` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/sandboxEnvironmentSnapshots", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentSnapshotsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, "resources": { "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/examples/{examplesId}/operations/{operationsId}:cancel", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.examples.operations.cancel", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.operations.cancel", "parameterOrder": [ "name" ], @@ -35555,7 +42116,7 @@ "name": { "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/examples/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -35570,9 +42131,9 @@ }, "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/examples/{examplesId}/operations/{operationsId}", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.reasoningEngines.examples.operations.delete", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.operations.delete", "parameterOrder": [ "name" ], @@ -35580,7 +42141,7 @@ "name": { "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/examples/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -35595,9 +42156,9 @@ }, "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/examples/{examplesId}/operations/{operationsId}", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.examples.operations.get", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.operations.get", "parameterOrder": [ "name" ], @@ -35605,14 +42166,60 @@ "name": { "description": "The name of the operation resource.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/examples/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.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": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+$", "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" } }, - "path": "v1beta1/{+name}", + "path": "v1beta1/{+name}/operations", "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleLongrunningListOperationsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -35620,9 +42227,9 @@ }, "wait": { "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/examples/{examplesId}/operations/{operationsId}:wait", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentSnapshots/{sandboxEnvironmentSnapshotsId}/operations/{operationsId}:wait", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.examples.operations.wait", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.operations.wait", "parameterOrder": [ "name" ], @@ -35630,7 +42237,7 @@ "name": { "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/examples/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentSnapshots/[^/]+/operations/[^/]+$", "required": true, "type": "string" }, @@ -35653,15 +42260,136 @@ } } }, - "feedbackEntries": { + "sandboxEnvironmentTemplates": { + "methods": { + "create": { + "description": "Creates a SandboxEnvironmentTemplate in a given reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the reasoning engine to create the SandboxEnvironmentTemplate in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/sandboxEnvironmentTemplates", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplate" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the specific SandboxEnvironmentTemplate.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the SandboxEnvironmentTemplate to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentTemplates/{sandbox_environment_template}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of the specific SandboxEnvironmentTemplate.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the sandbox environment template. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentTemplates/{sandbox_environment_template}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists SandboxEnvironmentTemplates in a given reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of SandboxEnvironmentTemplates to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentTemplates will be returned.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironmentTemplates` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the reasoning engine to list sandbox environment templates from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/sandboxEnvironmentTemplates", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, "resources": { "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/feedbackEntries/{feedbackEntriesId}/operations/{operationsId}:cancel", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.feedbackEntries.operations.cancel", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.cancel", "parameterOrder": [ "name" ], @@ -35669,7 +42397,7 @@ "name": { "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/feedbackEntries/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -35684,9 +42412,9 @@ }, "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/feedbackEntries/{feedbackEntriesId}/operations/{operationsId}", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.reasoningEngines.feedbackEntries.operations.delete", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.delete", "parameterOrder": [ "name" ], @@ -35694,7 +42422,7 @@ "name": { "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/feedbackEntries/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -35709,9 +42437,9 @@ }, "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/feedbackEntries/{feedbackEntriesId}/operations/{operationsId}", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.feedbackEntries.operations.get", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.get", "parameterOrder": [ "name" ], @@ -35719,7 +42447,7 @@ "name": { "description": "The name of the operation resource.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/feedbackEntries/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -35734,9 +42462,9 @@ }, "list": { "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/feedbackEntries/{feedbackEntriesId}/operations", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.feedbackEntries.operations.list", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.list", "parameterOrder": [ "name" ], @@ -35749,7 +42477,7 @@ "name": { "description": "The name of the operation's parent resource.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/feedbackEntries/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+$", "required": true, "type": "string" }, @@ -35780,9 +42508,9 @@ }, "wait": { "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/feedbackEntries/{feedbackEntriesId}/operations/{operationsId}:wait", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironmentTemplates/{sandboxEnvironmentTemplatesId}/operations/{operationsId}:wait", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.feedbackEntries.operations.wait", + "id": "aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.wait", "parameterOrder": [ "name" ], @@ -35790,7 +42518,7 @@ "name": { "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/feedbackEntries/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironmentTemplates/[^/]+/operations/[^/]+$", "required": true, "type": "string" }, @@ -35813,28 +42541,28 @@ } } }, - "memories": { + "sandboxEnvironments": { "methods": { "create": { - "description": "Create a Memory.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories", + "description": "Creates a SandboxEnvironment in a given reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.memories.create", + "id": "aiplatform.reasoningEngines.sandboxEnvironments.create", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The resource name of the ReasoningEngine to create the Memory under. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "description": "Required. The resource name of the reasoning engine to create the SandboxEnvironment in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`.", "location": "path", "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/memories", + "path": "v1beta1/{+parent}/sandboxEnvironments", "request": { - "$ref": "GoogleCloudAiplatformV1beta1Memory" + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironment" }, "response": { "$ref": "GoogleLongrunningOperation" @@ -35844,18 +42572,18 @@ ] }, "delete": { - "description": "Delete a Memory.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}", + "description": "Deletes the specific SandboxEnvironment.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}", "httpMethod": "DELETE", - "id": "aiplatform.reasoningEngines.memories.delete", + "id": "aiplatform.reasoningEngines.sandboxEnvironments.delete", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the Memory to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", + "description": "Required. The resource name of the SandboxEnvironment to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", "location": "path", - "pattern": "^reasoningEngines/[^/]+/memories/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", "required": true, "type": "string" } @@ -35868,159 +42596,343 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "generate": { - "description": "Generate memories.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories:generate", + "execute": { + "description": "Executes using a sandbox environment.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}:execute", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.memories.generate", + "id": "aiplatform.reasoningEngines.sandboxEnvironments.execute", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "parent": { - "description": "Required. The resource name of the ReasoningEngine to generate memories for. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "name": { + "description": "Required. The resource name of the sandbox environment to execute. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", "location": "path", - "pattern": "^reasoningEngines/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/memories:generate", + "path": "v1beta1/{+name}:execute", "request": { - "$ref": "GoogleCloudAiplatformV1beta1GenerateMemoriesRequest" + "$ref": "GoogleCloudAiplatformV1beta1ExecuteSandboxEnvironmentRequest" }, "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleCloudAiplatformV1beta1ExecuteSandboxEnvironmentResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "get": { - "description": "Get a Memory.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}", + "description": "Gets details of the specific SandboxEnvironment.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.memories.get", + "id": "aiplatform.reasoningEngines.sandboxEnvironments.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", + "description": "Required. The resource name of the sandbox environment. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", "location": "path", - "pattern": "^reasoningEngines/[^/]+/memories/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleCloudAiplatformV1beta1Memory" + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironment" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "List Memories.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories", + "description": "Lists SandboxEnvironments in a given reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.memories.list", + "id": "aiplatform.reasoningEngines.sandboxEnvironments.list", "parameterOrder": [ "parent" ], "parameters": { "filter": { - "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). Supported fields: * `scope` (as a JSON string with equality match only) * `topics` (i.e. `topics.custom_memory_topic_label: \"example topic\" OR topics.managed_memory_topic: USER_PREFERENCES`)", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "Optional. The standard list order by string. If not specified, the default order is `create_time desc`. If specified, the default sorting order of provided fields is ascending. More detail in [AIP-132](https://google.aip.dev/132). Supported fields: * `create_time` * `update_time`", + "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", "location": "query", "type": "string" }, "pageSize": { - "description": "Optional. The standard list page size.", + "description": "Optional. The maximum number of SandboxEnvironments to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironments will be returned.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Optional. The standard list page token.", + "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironments` call. Provide this to retrieve the subsequent page.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The resource name of the ReasoningEngine to list the Memories under. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "description": "Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/memories", + "path": "v1beta1/{+parent}/sandboxEnvironments", "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListMemoriesResponse" + "$ref": "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "patch": { - "description": "Update a Memory.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}", - "httpMethod": "PATCH", - "id": "aiplatform.reasoningEngines.memories.patch", + "snapshot": { + "description": "Snapshots the specific SandboxEnvironment resource and creates a SandboxEnvironmentSnapshot resource.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}:snapshot", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.sandboxEnvironments.snapshot", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Identifier. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", + "description": "Required. The resource name of the sandbox environment to snapshot. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/memories/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", "required": true, "type": "string" + } + }, + "path": "v1beta1/{+name}:snapshot", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentSnapshot" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.sandboxEnvironments.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "updateMask": { - "description": "Optional. Mask specifying which fields to update. Supported fields: * `display_name` * `description` * `fact`", - "format": "google-fieldmask", - "location": "query", + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.sandboxEnvironments.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironments.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sandboxEnvironments.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": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.sandboxEnvironments.operations.wait", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to wait on.", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}:wait", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "sessions": { + "methods": { + "appendEvent": { + "description": "Appends an event to a given session.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}:appendEvent", + "httpMethod": "POST", + "id": "aiplatform.reasoningEngines.sessions.appendEvent", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the session to append event to. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+$", + "required": true, "type": "string" } }, - "path": "v1beta1/{+name}", + "path": "v1beta1/{+name}:appendEvent", "request": { - "$ref": "GoogleCloudAiplatformV1beta1Memory" + "$ref": "GoogleCloudAiplatformV1beta1SessionEvent" }, "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleCloudAiplatformV1beta1AppendEventResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "purge": { - "description": "Purge memories.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories:purge", + "create": { + "description": "Creates a new Session.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.memories.purge", + "id": "aiplatform.reasoningEngines.sessions.create", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The resource name of the ReasoningEngine to purge memories from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "description": "Required. The resource name of the location to create the session in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" + }, + "sessionId": { + "description": "Optional. The user defined ID to use for session, which will become the final component of the session resource name. If not provided, Vertex AI will generate a value for this ID. This value may be up to 63 characters, and valid characters are `[a-z0-9-]`. The first and last characters must be a letter or number.", + "location": "query", + "type": "string" } }, - "path": "v1beta1/{+parent}/memories:purge", + "path": "v1beta1/{+parent}/sessions", "request": { - "$ref": "GoogleCloudAiplatformV1beta1PurgeMemoriesRequest" + "$ref": "GoogleCloudAiplatformV1beta1Session" }, "response": { "$ref": "GoogleLongrunningOperation" @@ -36029,57 +42941,131 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "retrieve": { - "description": "Retrieve memories.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories:retrieve", - "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.memories.retrieve", + "delete": { + "description": "Deletes details of the specific Session.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}", + "httpMethod": "DELETE", + "id": "aiplatform.reasoningEngines.sessions.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the session. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of the specific Session.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sessions.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the session. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1Session" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Sessions in a given reasoning engine.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sessions.list", "parameterOrder": [ "parent" ], "parameters": { + "filter": { + "description": "Optional. The standard list filter. Supported fields: * `display_name` * `user_id` * `labels` Example: `display_name=\"abc\"`, `user_id=\"123\"`, `labels.key=\"value\"`.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending. Supported fields: * `create_time` * `update_time` Example: `create_time desc`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of sessions to return. The service may return fewer than this value. If unspecified, the default page size is 100. Values greater than 100 will be capped at 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list SessionService.ListSessions call.", + "location": "query", + "type": "string" + }, "parent": { - "description": "Required. The resource name of the ReasoningEngine to retrieve memories from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "description": "Required. The resource name of the location to list sessions from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", "location": "path", "pattern": "^reasoningEngines/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/memories:retrieve", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1RetrieveMemoriesRequest" - }, + "path": "v1beta1/{+parent}/sessions", "response": { - "$ref": "GoogleCloudAiplatformV1beta1RetrieveMemoriesResponse" + "$ref": "GoogleCloudAiplatformV1beta1ListSessionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "rollback": { - "description": "Rollback Memory to a specific revision.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}:rollback", - "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.memories.rollback", + "patch": { + "description": "Updates the specific Session.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}", + "httpMethod": "PATCH", + "id": "aiplatform.reasoningEngines.sessions.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the Memory to rollback. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", + "description": "Identifier. The resource name of the session. Format: 'projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}'.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/memories/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+$", "required": true, "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, - "path": "v1beta1/{+name}:rollback", + "path": "v1beta1/{+name}", "request": { - "$ref": "GoogleCloudAiplatformV1beta1RollbackMemoryRequest" + "$ref": "GoogleCloudAiplatformV1beta1Session" }, "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleCloudAiplatformV1beta1Session" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -36087,13 +43073,63 @@ } }, "resources": { + "events": { + "methods": { + "list": { + "description": "Lists Events in a given session.", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/events", + "httpMethod": "GET", + "id": "aiplatform.reasoningEngines.sessions.events.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. The standard list filter. Supported fields: * `timestamp` range (i.e. `timestamp>=\"2025-01-31T11:30:00-04:00\"` where the timestamp is in RFC 3339 format) More detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending. Supported fields: * `timestamp` Example: `timestamp desc`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of events to return. The service may return fewer than this value. If unspecified, at most 100 events will be returned. These events are ordered by timestamp in ascending order.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list SessionService.ListEvents call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the session to list events from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", + "location": "path", + "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/events", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListEventsResponse" + }, + "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/operations/{operationsId}:cancel", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.memories.operations.cancel", + "id": "aiplatform.reasoningEngines.sessions.operations.cancel", "parameterOrder": [ "name" ], @@ -36101,7 +43137,7 @@ "name": { "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/memories/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -36116,9 +43152,9 @@ }, "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/operations/{operationsId}", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.reasoningEngines.memories.operations.delete", + "id": "aiplatform.reasoningEngines.sessions.operations.delete", "parameterOrder": [ "name" ], @@ -36126,7 +43162,7 @@ "name": { "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/memories/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -36141,9 +43177,9 @@ }, "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/operations/{operationsId}", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.memories.operations.get", + "id": "aiplatform.reasoningEngines.sessions.operations.get", "parameterOrder": [ "name" ], @@ -36151,7 +43187,7 @@ "name": { "description": "The name of the operation resource.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/memories/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -36166,9 +43202,9 @@ }, "list": { "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/operations", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.memories.operations.list", + "id": "aiplatform.reasoningEngines.sessions.operations.list", "parameterOrder": [ "name" ], @@ -36181,7 +43217,7 @@ "name": { "description": "The name of the operation's parent resource.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/memories/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+$", "required": true, "type": "string" }, @@ -36212,9 +43248,9 @@ }, "wait": { "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/operations/{operationsId}:wait", + "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}:wait", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.memories.operations.wait", + "id": "aiplatform.reasoningEngines.sessions.operations.wait", "parameterOrder": [ "name" ], @@ -36222,7 +43258,7 @@ "name": { "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/memories/[^/]+/operations/[^/]+$", + "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", "required": true, "type": "string" }, @@ -36242,86 +43278,20 @@ ] } } - }, - "revisions": { - "methods": { - "get": { - "description": "Get a Memory Revision.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/revisions/{revisionsId}", - "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.memories.revisions.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the Memory Revision to retrieve. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}/revisions/{revision}`", - "location": "path", - "pattern": "^reasoningEngines/[^/]+/memories/[^/]+/revisions/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1MemoryRevision" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "List Memory Revisions for a Memory.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/memories/{memoriesId}/revisions", - "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.memories.revisions.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). Supported fields (equality match only): * `labels`", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Optional. The standard list page size.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. The standard list page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the Memory to list revisions for. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", - "location": "path", - "pattern": "^reasoningEngines/[^/]+/memories/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/revisions", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListMemoryRevisionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } } } - }, + } + } + }, + "schedules": { + "resources": { "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/operations/{operationsId}:cancel", + "flatPath": "v1beta1/schedules/{schedulesId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.operations.cancel", + "id": "aiplatform.schedules.operations.cancel", "parameterOrder": [ "name" ], @@ -36329,7 +43299,7 @@ "name": { "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/operations/[^/]+$", + "pattern": "^schedules/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -36344,9 +43314,9 @@ }, "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/operations/{operationsId}", + "flatPath": "v1beta1/schedules/{schedulesId}/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.reasoningEngines.operations.delete", + "id": "aiplatform.schedules.operations.delete", "parameterOrder": [ "name" ], @@ -36354,7 +43324,7 @@ "name": { "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/operations/[^/]+$", + "pattern": "^schedules/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -36369,9 +43339,9 @@ }, "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/operations/{operationsId}", + "flatPath": "v1beta1/schedules/{schedulesId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.operations.get", + "id": "aiplatform.schedules.operations.get", "parameterOrder": [ "name" ], @@ -36379,7 +43349,7 @@ "name": { "description": "The name of the operation resource.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/operations/[^/]+$", + "pattern": "^schedules/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -36394,9 +43364,9 @@ }, "list": { "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/operations", + "flatPath": "v1beta1/schedules/{schedulesId}/operations", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.operations.list", + "id": "aiplatform.schedules.operations.list", "parameterOrder": [ "name" ], @@ -36409,7 +43379,7 @@ "name": { "description": "The name of the operation's parent resource.", "location": "path", - "pattern": "^reasoningEngines/[^/]+$", + "pattern": "^schedules/[^/]+$", "required": true, "type": "string" }, @@ -36440,9 +43410,9 @@ }, "wait": { "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/operations/{operationsId}:wait", + "flatPath": "v1beta1/schedules/{schedulesId}/operations/{operationsId}:wait", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.operations.wait", + "id": "aiplatform.schedules.operations.wait", "parameterOrder": [ "name" ], @@ -36450,7 +43420,7 @@ "name": { "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/operations/[^/]+$", + "pattern": "^schedules/[^/]+/operations/[^/]+$", "required": true, "type": "string" }, @@ -36470,725 +43440,338 @@ ] } } - }, - "sandboxEnvironments": { + } + } + }, + "semanticGovernancePolicies": { + "resources": { + "operations": { "methods": { - "create": { - "description": "Creates a SandboxEnvironment in a given reasoning engine.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments", + "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": "v1beta1/semanticGovernancePolicies/{semanticGovernancePoliciesId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.sandboxEnvironments.create", + "id": "aiplatform.semanticGovernancePolicies.operations.cancel", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "parent": { - "description": "Required. The resource name of the reasoning engine to create the SandboxEnvironment in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`.", + "name": { + "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^reasoningEngines/[^/]+$", + "pattern": "^semanticGovernancePolicies/[^/]+/operations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/sandboxEnvironments", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironment" - }, + "path": "v1beta1/{+name}:cancel", "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleProtobufEmpty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "delete": { - "description": "Deletes the specific SandboxEnvironment.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}", + "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": "v1beta1/semanticGovernancePolicies/{semanticGovernancePoliciesId}/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.reasoningEngines.sandboxEnvironments.delete", + "id": "aiplatform.semanticGovernancePolicies.operations.delete", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the SandboxEnvironment to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", + "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "pattern": "^semanticGovernancePolicies/[^/]+/operations/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "execute": { - "description": "Executes using a sandbox environment.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}:execute", - "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.sandboxEnvironments.execute", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the sandbox environment to execute. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", - "location": "path", - "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:execute", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1ExecuteSandboxEnvironmentRequest" - }, - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ExecuteSandboxEnvironmentResponse" + "$ref": "GoogleProtobufEmpty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "get": { - "description": "Gets details of the specific SandboxEnvironment.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}", + "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": "v1beta1/semanticGovernancePolicies/{semanticGovernancePoliciesId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.sandboxEnvironments.get", + "id": "aiplatform.semanticGovernancePolicies.operations.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the sandbox environment. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironments/{sandbox_environment}`", + "description": "The name of the operation resource.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", + "pattern": "^semanticGovernancePolicies/[^/]+/operations/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironment" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists SandboxEnvironments in a given reasoning engine.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments", - "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.sandboxEnvironments.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160).", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Optional. The maximum number of SandboxEnvironments to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironments will be returned.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. The standard list page token, received from a previous `ListSandboxEnvironments` call. Provide this to retrieve the subsequent page.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", - "location": "path", - "pattern": "^reasoningEngines/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/sandboxEnvironments", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.sandboxEnvironments.operations.cancel", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "location": "path", - "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.reasoningEngines.sandboxEnvironments.operations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "location": "path", - "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}", - "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.sandboxEnvironments.operations.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "location": "path", - "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations", - "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.sandboxEnvironments.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": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+$", - "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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1beta1/{+name}/operations", - "response": { - "$ref": "GoogleLongrunningListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sandboxEnvironments/{sandboxEnvironmentsId}/operations/{operationsId}:wait", - "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.sandboxEnvironments.operations.wait", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to wait on.", - "location": "path", - "pattern": "^reasoningEngines/[^/]+/sandboxEnvironments/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}:wait", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } - }, - "sessions": { - "methods": { - "appendEvent": { - "description": "Appends an event to a given session.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}:appendEvent", - "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.sessions.appendEvent", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v1beta1/semanticGovernancePolicies/{semanticGovernancePoliciesId}/operations", + "httpMethod": "GET", + "id": "aiplatform.semanticGovernancePolicies.operations.list", "parameterOrder": [ "name" ], "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, "name": { - "description": "Required. The resource name of the session to append event to. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", + "description": "The name of the operation's parent resource.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+$", + "pattern": "^semanticGovernancePolicies/[^/]+$", "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" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" } }, - "path": "v1beta1/{+name}:appendEvent", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1SessionEvent" - }, + "path": "v1beta1/{+name}/operations", "response": { - "$ref": "GoogleCloudAiplatformV1beta1AppendEventResponse" + "$ref": "GoogleLongrunningListOperationsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "create": { - "description": "Creates a new Session.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions", + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/semanticGovernancePolicies/{semanticGovernancePoliciesId}/operations/{operationsId}:wait", "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.sessions.create", + "id": "aiplatform.semanticGovernancePolicies.operations.wait", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "parent": { - "description": "Required. The resource name of the location to create the session in. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", + "name": { + "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^reasoningEngines/[^/]+$", + "pattern": "^semanticGovernancePolicies/[^/]+/operations/[^/]+$", "required": true, "type": "string" + }, + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", + "location": "query", + "type": "string" } }, - "path": "v1beta1/{+parent}/sessions", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1Session" - }, + "path": "v1beta1/{+name}:wait", "response": { "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + } + } + } + } + }, + "semanticGovernancePolicyEngine": { + "resources": { + "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": "v1beta1/semanticGovernancePolicyEngine/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "aiplatform.semanticGovernancePolicyEngine.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^semanticGovernancePolicyEngine/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "delete": { - "description": "Deletes details of the specific Session.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}", + "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": "v1beta1/semanticGovernancePolicyEngine/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.reasoningEngines.sessions.delete", + "id": "aiplatform.semanticGovernancePolicyEngine.operations.delete", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the session. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", + "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+$", + "pattern": "^semanticGovernancePolicyEngine/operations/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleProtobufEmpty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "get": { - "description": "Gets details of the specific Session.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}", + "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": "v1beta1/semanticGovernancePolicyEngine/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.sessions.get", + "id": "aiplatform.semanticGovernancePolicyEngine.operations.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the session. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", + "description": "The name of the operation resource.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+$", + "pattern": "^semanticGovernancePolicyEngine/operations/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleCloudAiplatformV1beta1Session" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Lists Sessions in a given reasoning engine.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions", + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "flatPath": "v1beta1/semanticGovernancePolicyEngine/operations", "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.sessions.list", + "id": "aiplatform.semanticGovernancePolicyEngine.operations.list", "parameterOrder": [ - "parent" + "name" ], "parameters": { "filter": { - "description": "Optional. The standard list filter. Supported fields: * `display_name` * `user_id` * `labels` Example: `display_name=\"abc\"`, `user_id=\"123\"`, `labels.key=\"value\"`.", + "description": "The standard list filter.", "location": "query", "type": "string" }, - "orderBy": { - "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending. Supported fields: * `create_time` * `update_time` Example: `create_time desc`.", - "location": "query", + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^semanticGovernancePolicyEngine$", + "required": true, "type": "string" }, "pageSize": { - "description": "Optional. The maximum number of sessions to return. The service may return fewer than this value. If unspecified, at most 100 sessions will be returned.", + "description": "The standard list page size.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Optional. The next_page_token value returned from a previous list SessionService.ListSessions call.", + "description": "The standard list page token.", "location": "query", "type": "string" }, - "parent": { - "description": "Required. The resource name of the location to list sessions from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}`", - "location": "path", - "pattern": "^reasoningEngines/[^/]+$", - "required": true, - "type": "string" + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" } }, - "path": "v1beta1/{+parent}/sessions", + "path": "v1beta1/{+name}/operations", "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListSessionsResponse" + "$ref": "GoogleLongrunningListOperationsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "patch": { - "description": "Updates the specific Session.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}", - "httpMethod": "PATCH", - "id": "aiplatform.reasoningEngines.sessions.patch", + "wait": { + "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", + "flatPath": "v1beta1/semanticGovernancePolicyEngine/operations/{operationsId}:wait", + "httpMethod": "POST", + "id": "aiplatform.semanticGovernancePolicyEngine.operations.wait", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Identifier. The resource name of the session. Format: 'projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}'.", + "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+$", + "pattern": "^semanticGovernancePolicyEngine/operations/[^/]+$", "required": true, "type": "string" }, - "updateMask": { - "description": "Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated.", - "format": "google-fieldmask", + "timeout": { + "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", + "format": "google-duration", "location": "query", "type": "string" } }, - "path": "v1beta1/{+name}", - "request": { - "$ref": "GoogleCloudAiplatformV1beta1Session" - }, + "path": "v1beta1/{+name}:wait", "response": { - "$ref": "GoogleCloudAiplatformV1beta1Session" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] } - }, - "resources": { - "events": { - "methods": { - "list": { - "description": "Lists Events in a given session.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/events", - "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.sessions.events.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Optional. The standard list filter. Supported fields: * `timestamp` range (i.e. `timestamp>=\"2025-01-31T11:30:00-04:00\"` where the timestamp is in RFC 3339 format) More detail in [AIP-160](https://google.aip.dev/160).", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending. Supported fields: * `timestamp` Example: `timestamp desc`.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Optional. The maximum number of events to return. The service may return fewer than this value. If unspecified, at most 100 events will be returned. These events are ordered by timestamp in ascending order.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. The next_page_token value returned from a previous list SessionService.ListEvents call.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the session to list events from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`", - "location": "path", - "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/events", - "response": { - "$ref": "GoogleCloudAiplatformV1beta1ListEventsResponse" - }, - "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.sessions.operations.cancel", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "location": "path", - "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.reasoningEngines.sessions.operations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "location": "path", - "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}", - "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.sessions.operations.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "location": "path", - "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "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": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations", - "httpMethod": "GET", - "id": "aiplatform.reasoningEngines.sessions.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": "^reasoningEngines/[^/]+/sessions/[^/]+$", - "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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1beta1/{+name}/operations", - "response": { - "$ref": "GoogleLongrunningListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/reasoningEngines/{reasoningEnginesId}/sessions/{sessionsId}/operations/{operationsId}:wait", - "httpMethod": "POST", - "id": "aiplatform.reasoningEngines.sessions.operations.wait", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to wait on.", - "location": "path", - "pattern": "^reasoningEngines/[^/]+/sessions/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}:wait", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } } } } }, - "schedules": { + "skills": { "resources": { "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": "v1beta1/schedules/{schedulesId}/operations/{operationsId}:cancel", + "flatPath": "v1beta1/skills/{skillsId}/operations/{operationsId}:cancel", "httpMethod": "POST", - "id": "aiplatform.schedules.operations.cancel", + "id": "aiplatform.skills.operations.cancel", "parameterOrder": [ "name" ], @@ -37196,7 +43779,7 @@ "name": { "description": "The name of the operation resource to be cancelled.", "location": "path", - "pattern": "^schedules/[^/]+/operations/[^/]+$", + "pattern": "^skills/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -37211,9 +43794,9 @@ }, "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": "v1beta1/schedules/{schedulesId}/operations/{operationsId}", + "flatPath": "v1beta1/skills/{skillsId}/operations/{operationsId}", "httpMethod": "DELETE", - "id": "aiplatform.schedules.operations.delete", + "id": "aiplatform.skills.operations.delete", "parameterOrder": [ "name" ], @@ -37221,7 +43804,7 @@ "name": { "description": "The name of the operation resource to be deleted.", "location": "path", - "pattern": "^schedules/[^/]+/operations/[^/]+$", + "pattern": "^skills/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -37236,9 +43819,9 @@ }, "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": "v1beta1/schedules/{schedulesId}/operations/{operationsId}", + "flatPath": "v1beta1/skills/{skillsId}/operations/{operationsId}", "httpMethod": "GET", - "id": "aiplatform.schedules.operations.get", + "id": "aiplatform.skills.operations.get", "parameterOrder": [ "name" ], @@ -37246,7 +43829,7 @@ "name": { "description": "The name of the operation resource.", "location": "path", - "pattern": "^schedules/[^/]+/operations/[^/]+$", + "pattern": "^skills/[^/]+/operations/[^/]+$", "required": true, "type": "string" } @@ -37261,9 +43844,9 @@ }, "list": { "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/schedules/{schedulesId}/operations", + "flatPath": "v1beta1/skills/{skillsId}/operations", "httpMethod": "GET", - "id": "aiplatform.schedules.operations.list", + "id": "aiplatform.skills.operations.list", "parameterOrder": [ "name" ], @@ -37276,7 +43859,7 @@ "name": { "description": "The name of the operation's parent resource.", "location": "path", - "pattern": "^schedules/[^/]+$", + "pattern": "^skills/[^/]+$", "required": true, "type": "string" }, @@ -37307,9 +43890,9 @@ }, "wait": { "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/schedules/{schedulesId}/operations/{operationsId}:wait", + "flatPath": "v1beta1/skills/{skillsId}/operations/{operationsId}:wait", "httpMethod": "POST", - "id": "aiplatform.schedules.operations.wait", + "id": "aiplatform.skills.operations.wait", "parameterOrder": [ "name" ], @@ -37317,7 +43900,7 @@ "name": { "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^schedules/[^/]+/operations/[^/]+$", + "pattern": "^skills/[^/]+/operations/[^/]+$", "required": true, "type": "string" }, @@ -38814,11 +45397,160 @@ ] } } + }, + "vertexExpress": { + "methods": { + "retrieveExpressProject": { + "description": "Retrieves the project for Vertex AI Express Mode.", + "flatPath": "v1beta1/vertexExpress:retrieveExpressProject", + "httpMethod": "GET", + "id": "aiplatform.vertexExpress.retrieveExpressProject", + "parameterOrder": [], + "parameters": { + "getDefaultApiKey": { + "description": "Optional. Whether to return the default API key string in the response.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/vertexExpress:retrieveExpressProject", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1RetrieveExpressProjectResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "signUp": { + "description": "Signs up the user for Vertex AI Express Mode. If the user is already signed up, the existing ExpressProject will be returned.", + "flatPath": "v1beta1/vertexExpress:signUp", + "httpMethod": "POST", + "id": "aiplatform.vertexExpress.signUp", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1/vertexExpress:signUp", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SignUpRequest" + }, + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ExpressProject" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "Eligibility": { + "methods": { + "check": { + "description": "Checks whether the user is eligible to sign up for Vertex AI Express Mode.", + "flatPath": "v1beta1/vertexExpress/Eligibility:check", + "httpMethod": "GET", + "id": "aiplatform.vertexExpress.Eligibility.check", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1/vertexExpress/Eligibility:check", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1CheckSignUpEligibilityResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } } }, - "revision": "20260217", + "revision": "20260427", "rootUrl": "https://aiplatform.googleapis.com/", "schemas": { + "CloudAiLargeModelsVisionGenerateVideoExperiments": { + "description": "Experimental parameters for video generation.", + "id": "CloudAiLargeModelsVisionGenerateVideoExperiments", + "properties": { + "conditioningFrames": { + "description": "Conditioning frames for veo experimental models ONLY, not to be confused with keyframes (ID:31) in GenerateVideoRequest.", + "items": { + "$ref": "CloudAiLargeModelsVisionGenerateVideoExperimentsConditioningFrame" + }, + "type": "array" + }, + "humanPose": { + "$ref": "CloudAiLargeModelsVisionHumanPose", + "description": "Human pose parameters for Pose Control" + }, + "modelName": { + "description": "Model names, as defined in: xyz ", + "type": "string" + }, + "numDiffusionSteps": { + "description": "Number of diffusion steps", + "format": "int32", + "type": "integer" + }, + "promptInputs": { + "$ref": "CloudAiLargeModelsVisionPromptInputs", + "description": "Prompt chunks for \"ProModel\" prompting. If set, the prompt will not be rewritten, and top-level prompt ignored." + }, + "requestOriginTag": { + "description": "Optional tag for tracking the source of this request. Allowed values: \"colab\", \"comfyui\", \"curl\", \"flowresearch\", \"vertexstudio\". Unrecognized tags are recorded as \"unknown\" in metrics. Tags do not affect video generation behavior. Up to 16 characters, ASCII alphanumeric, hyphens, and underscores only.", + "type": "string" + }, + "truncateInputVideo": { + "description": "If true (default), truncate input videos that exceed the model's maximum frame count by applying a frame_selection_config to __video_file__ inputs. Set to false to preserve the existing fail-fast behavior.", + "type": "boolean" + }, + "videoTransformMaskGcsUri": { + "description": "GCS URI of the grayscale video mask for Differential Diffusion. Maps to sdedit_video_tmax_scale_map ", + "type": "string" + }, + "videoTransformStrength": { + "description": "SDEdit: Scalar noise level (0.0 to 1.0) Maps to sdedit_tmax ", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "CloudAiLargeModelsVisionGenerateVideoExperimentsConditioningFrame": { + "id": "CloudAiLargeModelsVisionGenerateVideoExperimentsConditioningFrame", + "properties": { + "frameNum": { + "description": "The index of the frame, starts with zero and must be a multiple of 8.", + "format": "int32", + "type": "integer" + }, + "image": { + "$ref": "CloudAiLargeModelsVisionGenerateVideoRequestImage", + "description": "The image data for this conditioning frame." + } + }, + "type": "object" + }, + "CloudAiLargeModelsVisionGenerateVideoRequestImage": { + "description": "The image bytes or Cloud Storage URI to make the prediction on.", + "id": "CloudAiLargeModelsVisionGenerateVideoRequestImage", + "properties": { + "blobId": { + "description": "Blob ID of the image. This is used for storing the large images in the request.", + "type": "string" + }, + "bytesBase64Encoded": { + "description": "Base64 encoded bytes string representing the image.", + "type": "string" + }, + "gcsUri": { + "type": "string" + }, + "mimeType": { + "description": "The MIME type of the content of the image. Only the images in below listed MIME types are supported. - image/jpeg - image/png", + "type": "string" + } + }, + "type": "object" + }, "CloudAiLargeModelsVisionGenerateVideoResponse": { "description": "Generate video response.", "id": "CloudAiLargeModelsVisionGenerateVideoResponse", @@ -38859,6 +45591,10 @@ "description": "Base64 encoded bytes string representing the video.", "type": "string" }, + "experimentsMetadata": { + "$ref": "CloudAiLargeModelsVisionGenerateVideoExperiments", + "description": "Optional metadata returned from experimental requests. Likely only includes the rewritten prompt chunks." + }, "gcsUri": { "description": "Cloud Storage URI where the generated video is written.", "type": "string" @@ -38870,6 +45606,26 @@ }, "type": "object" }, + "CloudAiLargeModelsVisionHumanPose": { + "id": "CloudAiLargeModelsVisionHumanPose", + "properties": { + "bodyLandmarksGcsUri": { + "deprecated": true, + "description": "GCS URI of the human pose video to condition video generation.", + "type": "string" + }, + "faceLandmarksGcsUri": { + "deprecated": true, + "description": "GCS URI of the face landmarks video to condition video generation.", + "type": "string" + }, + "perfMeshGcsUri": { + "description": "GCS URI of the performance mesh to condition video generation.", + "type": "string" + } + }, + "type": "object" + }, "CloudAiLargeModelsVisionImage": { "description": "Image.", "id": "CloudAiLargeModelsVisionImage", @@ -39002,6 +45758,36 @@ }, "type": "object" }, + "CloudAiLargeModelsVisionPromptInputs": { + "description": "\"Direct\" prompting for Experimental Video Generation. These will be sent directly to the LDM without being rewritten.", + "id": "CloudAiLargeModelsVisionPromptInputs", + "properties": { + "audioPrompt": { + "description": "Description of audio content in the video, without speech.", + "type": "string" + }, + "negativeAudioPrompt": { + "description": "Negative description of audio content in the video.", + "type": "string" + }, + "negativePrompt": { + "description": "Single negative prompt for what not to generate.", + "type": "string" + }, + "promptChunks": { + "description": "2s, 256 tokens per chunk, 4 total chunks. Required.", + "items": { + "type": "string" + }, + "type": "array" + }, + "transcript": { + "description": "Spoken transcript of the video for characters.", + "type": "string" + } + }, + "type": "object" + }, "CloudAiLargeModelsVisionRaiInfo": { "description": "Next ID: 6", "id": "CloudAiLargeModelsVisionRaiInfo", @@ -39257,6 +46043,94 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1A2aTask": { + "description": "An A2aTask represents a unit of work.", + "id": "GoogleCloudAiplatformV1beta1A2aTask", + "properties": { + "contextId": { + "description": "Optional. A generic identifier for grouping related tasks (e.g., session_id, workflow_id).", + "type": "string" + }, + "createTime": { + "description": "Output only. The creation timestamp of the task.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "expireTime": { + "description": "Optional. Timestamp of when this task is considered expired. This is *always* provided on output, and is calculated based on the `ttl` if set on the request", + "format": "google-datetime", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. Arbitrary, user-defined metadata.", + "type": "object" + }, + "name": { + "description": "Identifier. The resource name of the task. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/a2aTasks/{a2a_task}`", + "type": "string" + }, + "nextEventSequenceNumber": { + "description": "Output only. The next event sequence number to be appended to the task. This value starts at 1 and is guaranteed to be monotonically increasing.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "output": { + "$ref": "GoogleCloudAiplatformV1beta1TaskOutput", + "description": "Optional. The final output of the task." + }, + "state": { + "description": "Output only. The state of the task. The state of a new task is SUBMITTED by default. The state of a task can only be updated via AppendA2aTaskEvents API.", + "enum": [ + "STATE_UNSPECIFIED", + "SUBMITTED", + "WORKING", + "COMPLETED", + "CANCELLED", + "FAILED", + "REJECTED", + "INPUT_REQUIRED", + "AUTH_REQUIRED", + "PAUSED" + ], + "enumDescriptions": [ + "Task state unspecified. Default value if not set.", + "Task is submitted and waiting to be processed.", + "Task is actively being processed.", + "Task is finished.", + "Task is cancelled.", + "Task has failed.", + "Task is rejected by the system.", + "Task requires input from the user.", + "Task requires auth (e.g. OAuth) from the user.", + "Task is paused." + ], + "readOnly": true, + "type": "string" + }, + "statusDetails": { + "$ref": "GoogleCloudAiplatformV1beta1TaskStatusDetails", + "description": "Optional. The status details of the task." + }, + "ttl": { + "description": "Optional. Input only. The TTL (Time To Live) for the task. If not set, the task will expire in 24 hours by default. Valid range: (0 seconds, 1000 days]", + "format": "google-duration", + "type": "string" + }, + "updateTime": { + "description": "Output only. The last update timestamp of the task.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1AcceptPublisherModelEulaRequest": { "description": "Request message for ModelGardenService.AcceptPublisherModelEula.", "id": "GoogleCloudAiplatformV1beta1AcceptPublisherModelEulaRequest", @@ -39268,6 +46142,23 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ActivateOnlineEvaluatorOperationMetadata": { + "description": "Metadata for the ActivateOnlineEvaluator operation.", + "id": "GoogleCloudAiplatformV1beta1ActivateOnlineEvaluatorOperationMetadata", + "properties": { + "genericMetadata": { + "$ref": "GoogleCloudAiplatformV1beta1GenericOperationMetadata", + "description": "Common part of operation metadata." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ActivateOnlineEvaluatorRequest": { + "description": "Request message for ActivateOnlineEvaluator.", + "id": "GoogleCloudAiplatformV1beta1ActivateOnlineEvaluatorRequest", + "properties": {}, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ActiveLearningConfig": { "description": "Parameters that configure the active learning pipeline. Active learning will label the data incrementally by several iterations. For every iteration, it will select a batch of data based on the sampling strategy.", "id": "GoogleCloudAiplatformV1beta1ActiveLearningConfig", @@ -39649,6 +46540,26 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1AppendA2aTaskEventsRequest": { + "description": "Request message for AgentEngineTaskStoreService.AppendA2aTaskEvents.", + "id": "GoogleCloudAiplatformV1beta1AppendA2aTaskEventsRequest", + "properties": { + "taskEvents": { + "description": "Required. The events to append. The number of events to append must be less than or equal to 100. Otherwise, an exception will be thrown.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1TaskEvent" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1AppendA2aTaskEventsResponse": { + "description": "Response message for AgentEngineTaskStoreService.AppendA2aTaskEvents.", + "id": "GoogleCloudAiplatformV1beta1AppendA2aTaskEventsResponse", + "properties": {}, + "type": "object" + }, "GoogleCloudAiplatformV1beta1AppendEventResponse": { "description": "Response message for SessionService.AppendEvent.", "id": "GoogleCloudAiplatformV1beta1AppendEventResponse", @@ -39756,6 +46667,39 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1AskContextsRequest": { + "description": "Agentic Retrieval Ask API for RAG. Request message for VertexRagService.AskContexts.", + "id": "GoogleCloudAiplatformV1beta1AskContextsRequest", + "properties": { + "query": { + "$ref": "GoogleCloudAiplatformV1beta1RagQuery", + "description": "Required. Single RAG retrieve query." + }, + "tools": { + "description": "Optional. The tools to use for AskContexts.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1Tool" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1AskContextsResponse": { + "description": "Response message for VertexRagService.AskContexts.", + "id": "GoogleCloudAiplatformV1beta1AskContextsResponse", + "properties": { + "contexts": { + "$ref": "GoogleCloudAiplatformV1beta1RagContexts", + "description": "The contexts of the query." + }, + "response": { + "description": "The Retrieval Response.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1AssembleDataRequest": { "description": "Request message for DatasetService.AssembleData. Used only for MULTIMODAL datasets.", "id": "GoogleCloudAiplatformV1beta1AssembleDataRequest", @@ -39886,6 +46830,39 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1AsyncQueryReasoningEngineRequest": { + "description": "Request message for ReasoningEngineExecutionService.AsyncQueryReasoningEngine.", + "id": "GoogleCloudAiplatformV1beta1AsyncQueryReasoningEngineRequest", + "properties": { + "inputGcsUri": { + "description": "Optional. Input Cloud Storage URI for the Async query.", + "type": "string" + }, + "outputGcsUri": { + "description": "Optional. Output Cloud Storage URI for the Async query.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1AsyncRetrieveContextsRequest": { + "description": "Request message for VertexRagService.AsyncRetrieveContexts.", + "id": "GoogleCloudAiplatformV1beta1AsyncRetrieveContextsRequest", + "properties": { + "query": { + "$ref": "GoogleCloudAiplatformV1beta1RagQuery", + "description": "Required. Single RAG retrieve query." + }, + "tools": { + "description": "Optional. The tools to use for AskContexts.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1Tool" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1Attribution": { "description": "Attribution that explains a particular prediction output.", "id": "GoogleCloudAiplatformV1beta1Attribution", @@ -41517,6 +48494,29 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1CheckSignUpEligibilityResponse": { + "description": "Response message for ExpressModeService.CheckSignUpEligibility.", + "id": "GoogleCloudAiplatformV1beta1CheckSignUpEligibilityResponse", + "properties": { + "eligibility": { + "description": "The eligibility status of the user.", + "enum": [ + "ELIGIBILITY_STATUS_UNSPECIFIED", + "ELIGIBLE", + "IN_SCOPE", + "INELIGIBLE" + ], + "enumDescriptions": [ + "The default value. This value is unused.", + "The user is eligible to sign up for Vertex AI Express Mode.", + "The user is in scope for Vertex AI Express Mode.", + "The user is ineligible to sign up for Vertex AI Express Mode." + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1CheckTrialEarlyStoppingStateMetatdata": { "description": "This message will be placed in the metadata field of a google.longrunning.Operation associated with a CheckTrialEarlyStoppingState request.", "id": "GoogleCloudAiplatformV1beta1CheckTrialEarlyStoppingStateMetatdata", @@ -41691,7 +48691,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1CodeExecutionResult": { - "description": "Result of executing the [ExecutableCode]. Only generated when using the [CodeExecution] tool, and always follows a `part` containing the [ExecutableCode].", + "description": "Result of executing the ExecutableCode. Generated only when the `CodeExecution` tool is used.", "id": "GoogleCloudAiplatformV1beta1CodeExecutionResult", "properties": { "outcome": { @@ -41704,9 +48704,9 @@ ], "enumDescriptions": [ "Unspecified status. This value should not be used.", - "Code execution completed successfully.", - "Code execution finished but with a failure. `stderr` should contain the reason.", - "Code execution ran for too long, and was cancelled. There may or may not be a partial output present." + "Code execution completed successfully. `output` contains the stdout, if any.", + "Code execution failed. `output` contains the stderr and stdout, if any.", + "Code execution ran for too long, and was cancelled. There may or may not be a partial `output` present." ], "type": "string" }, @@ -42214,6 +49214,10 @@ "description": "Request message for ModelService.CopyModel.", "id": "GoogleCloudAiplatformV1beta1CopyModelRequest", "properties": { + "customServiceAccount": { + "description": "Optional. The user-provided custom service account to use to do the copy model. If empty, [Vertex AI Service Agent](https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) will be used to access resources needed to upload the model. This account must belong to the destination project where the model is copied to, i.e., the project specified in the `parent` field of this request and have the Vertex AI Service Agent role in the source project. Requires the user copying the Model to have the `iam.serviceAccounts.actAs` permission on this service account.", + "type": "string" + }, "encryptionSpec": { "$ref": "GoogleCloudAiplatformV1beta1EncryptionSpec", "description": "Customer-managed encryption key options. If this is set, then the Model copy will be encrypted with the provided encryption key." @@ -42694,6 +49698,17 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1CreateOnlineEvaluatorOperationMetadata": { + "description": "Metadata for the CreateOnlineEvaluator operation.", + "id": "GoogleCloudAiplatformV1beta1CreateOnlineEvaluatorOperationMetadata", + "properties": { + "genericMetadata": { + "$ref": "GoogleCloudAiplatformV1beta1GenericOperationMetadata", + "description": "Common part of operation metadata." + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1CreatePersistentResourceOperationMetadata": { "description": "Details of operations that perform create PersistentResource.", "id": "GoogleCloudAiplatformV1beta1CreatePersistentResourceOperationMetadata", @@ -43392,6 +50407,21 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1DatasetCustomMetric": { + "description": "Defines a custom dataset-level aggregation.", + "id": "GoogleCloudAiplatformV1beta1DatasetCustomMetric", + "properties": { + "aggregationFunction": { + "description": "Required. The Python code string containing the aggregation function. Expected function signature: `def aggregate(instances: list[dict[str, Any]]) -> dict[str, float]:` The `instances` argument is a list of dictionaries, where each dictionary represents a single evaluation result item. The structure of each dictionary corresponds to the fields in the `EvaluationResult` message. This includes: - `\"request\"`: Contains the original input data and model inputs (from `EvaluationResult.EvaluationRequest`). - `\"candidate_results\"`: Contains the results of any instance-level metrics (from `EvaluationResult.CandidateResults`). Example of a single item in the `instances` list: { \"request\": { \"prompt\": {\"text\": \"What is the capital of France?\"}, \"golden_response\": {\"text\": \"Paris\"}, \"candidate_responses\": [{\"candidate\": \"model-v1\", \"text\": \"Paris\"}] }, \"candidate_results\": [ {\"metric\": \"exact_match\", \"score\": 1.0}, {\"metric\": \"bleu\", \"score\": 0.9} ] }", + "type": "string" + }, + "displayName": { + "description": "Optional. A display name for this custom summary metric. Used to prefix keys in the output summaryMetrics map. If not provided, a default name like \"dataset_custom_metric_1\", \"dataset_custom_metric_2\", etc., will be generated based on the order in the repeated field.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1DatasetDistribution": { "description": "Distribution computed over a tuning dataset.", "id": "GoogleCloudAiplatformV1beta1DatasetDistribution", @@ -43790,6 +50820,17 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1DeleteOnlineEvaluatorOperationMetadata": { + "description": "Metadata for the DeleteOnlineEvaluator operation.", + "id": "GoogleCloudAiplatformV1beta1DeleteOnlineEvaluatorOperationMetadata", + "properties": { + "genericMetadata": { + "$ref": "GoogleCloudAiplatformV1beta1GenericOperationMetadata", + "description": "Generic operation metadata." + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1DeleteOperationMetadata": { "description": "Details of operations that perform deletes of any entities.", "id": "GoogleCloudAiplatformV1beta1DeleteOperationMetadata", @@ -43801,6 +50842,17 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1DeleteReasoningEngineRuntimeRevisionOperationMetadata": { + "description": "Metadata associated with DeleteReasoningEngineRuntimeRevision operation.", + "id": "GoogleCloudAiplatformV1beta1DeleteReasoningEngineRuntimeRevisionOperationMetadata", + "properties": { + "genericMetadata": { + "$ref": "GoogleCloudAiplatformV1beta1GenericOperationMetadata", + "description": "The common part of the operation metadata." + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1DeployIndexOperationMetadata": { "description": "Runtime operation information for IndexEndpointService.DeployIndex.", "id": "GoogleCloudAiplatformV1beta1DeployIndexOperationMetadata", @@ -44557,11 +51609,21 @@ ], "type": "string" }, + "batchSize": { + "description": "Optional. Batch size for tuning. This feature is only available for open source models.", + "format": "int64", + "type": "string" + }, "epochCount": { "description": "Optional. Number of complete passes the model makes over the entire training dataset during training.", "format": "int64", "type": "string" }, + "learningRate": { + "description": "Optional. Specifies the learning rate for tuning. Mutually exclusive with `learning_rate_multiplier`. This feature is only available for open source models.", + "format": "double", + "type": "number" + }, "learningRateMultiplier": { "description": "Optional. Multiplier for adjusting the default learning rate.", "format": "double", @@ -44587,6 +51649,10 @@ "description": "Deprecated. A path in a Cloud Storage bucket, which will be treated as the root output directory of the distillation pipeline. It is used by the system to generate the paths of output artifacts.", "type": "string" }, + "promptDatasetUri": { + "description": "Optional. Cloud Storage path to file containing prompt dataset for distillation. The dataset must be formatted as a JSONL file.", + "type": "string" + }, "studentModel": { "deprecated": true, "description": "The student model that is being tuned, e.g., \"google/gemma-2b-1.1-it\". Deprecated. Use base_model instead.", @@ -44601,6 +51667,20 @@ "description": "The resource name of the Tuned teacher model. Format: `projects/{project}/locations/{location}/models/{model}`.", "type": "string" }, + "tuningMode": { + "description": "Optional. Specifies the tuning mode for distillation (sft part). This feature is only available for open source models.", + "enum": [ + "TUNING_MODE_UNSPECIFIED", + "TUNING_MODE_FULL", + "TUNING_MODE_PEFT_ADAPTER" + ], + "enumDescriptions": [ + "Tuning mode is unspecified.", + "Full fine-tuning mode.", + "PEFT adapter tuning mode." + ], + "type": "string" + }, "validationDatasetUri": { "description": "Optional. Cloud Storage path to file containing validation dataset for tuning. The dataset must be formatted as a JSONL file.", "type": "string" @@ -44671,20 +51751,27 @@ "id": "GoogleCloudAiplatformV1beta1EmbedContentRequest", "properties": { "autoTruncate": { - "description": "Optional. Whether to silently truncate the input content if it's longer than the maximum sequence length.", + "deprecated": true, + "description": "Optional. Deprecated: Please use EmbedContentConfig.auto_truncate instead. Whether to silently truncate the input content if it's longer than the maximum sequence length.", "type": "boolean" }, "content": { "$ref": "GoogleCloudAiplatformV1beta1Content", - "description": "Required. Input content to be embedded. Required." + "description": "Required. The content to be embedded." + }, + "embedContentConfig": { + "$ref": "GoogleCloudAiplatformV1beta1EmbedContentRequestEmbedContentConfig", + "description": "Optional. Configuration for the EmbedContent request." }, "outputDimensionality": { - "description": "Optional. Optional reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end.", + "deprecated": true, + "description": "Optional. Deprecated: Please use EmbedContentConfig.output_dimensionality instead. Reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end.", "format": "int32", "type": "integer" }, "taskType": { - "description": "Optional. The task type of the embedding.", + "deprecated": true, + "description": "Optional. Deprecated: Please use EmbedContentConfig.task_type instead. The task type of the embedding.", "enum": [ "UNSPECIFIED", "RETRIEVAL_QUERY", @@ -44710,7 +51797,62 @@ "type": "string" }, "title": { - "description": "Optional. An optional title for the text.", + "deprecated": true, + "description": "Optional. Deprecated: Please use EmbedContentConfig.title instead. The title for the text.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1EmbedContentRequestEmbedContentConfig": { + "description": "Configurations for the EmbedContent API.", + "id": "GoogleCloudAiplatformV1beta1EmbedContentRequestEmbedContentConfig", + "properties": { + "audioTrackExtraction": { + "description": "Optional. Whether to extract audio from video content.", + "type": "boolean" + }, + "autoTruncate": { + "description": "Optional. Whether to silently truncate the input content if it's longer than the maximum sequence length. Only applicable to text-only embedding models.", + "type": "boolean" + }, + "documentOcr": { + "description": "Optional. Whether to enable OCR for document content.", + "type": "boolean" + }, + "outputDimensionality": { + "description": "Optional. Reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end.", + "format": "int32", + "type": "integer" + }, + "taskType": { + "description": "Optional. The task type of the embedding. Only applicable to text-only embedding models.", + "enum": [ + "UNSPECIFIED", + "RETRIEVAL_QUERY", + "RETRIEVAL_DOCUMENT", + "SEMANTIC_SIMILARITY", + "CLASSIFICATION", + "CLUSTERING", + "QUESTION_ANSWERING", + "FACT_VERIFICATION", + "CODE_RETRIEVAL_QUERY" + ], + "enumDescriptions": [ + "Unset value, which will default to one of the other enum values.", + "Specifies the given text is a query in a search/retrieval setting.", + "Specifies the given text is a document from the corpus being searched.", + "Specifies the given text will be used for STS.", + "Specifies that the given text will be classified.", + "Specifies that the embeddings will be used for clustering.", + "Specifies that the embeddings will be used for question answering.", + "Specifies that the embeddings will be used for fact verification.", + "Specifies that the embeddings will be used for code retrieval." + ], + "type": "string" + }, + "title": { + "description": "Optional. The title for the text. Only applicable to text-only embedding models.", "type": "string" } }, @@ -44730,7 +51872,7 @@ }, "usageMetadata": { "$ref": "GoogleCloudAiplatformV1beta1UsageMetadata", - "description": "Metadata about the response(s)." + "description": "Usage metadata about the response(s)." } }, "type": "object" @@ -45166,7 +52308,8 @@ "type": "string" }, "operationName": { - "description": "Output only. The operation ID of the evaluation run. Format: `projects/{project}/locations/{location}/operations/{operation_id}`.", + "deprecated": true, + "description": "Output only. Deprecated: The updated architecture uses evaluation_run instead.", "readOnly": true, "type": "string" } @@ -45217,6 +52360,13 @@ "description": "Required. The resource name of the Location to evaluate the instances. Format: `projects/{project}/locations/{location}`", "type": "string" }, + "metricSources": { + "description": "Optional. The metrics (either inline or registered) used for evaluation. Currently, we only support evaluating a single metric. If multiple metrics are provided, only the first one will be evaluated.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1MetricSource" + }, + "type": "array" + }, "metrics": { "description": "The metrics used for evaluation. Currently, we only support evaluating a single metric. If multiple metrics are provided, only the first one will be evaluated.", "items": { @@ -45556,6 +52706,13 @@ "$ref": "GoogleCloudAiplatformV1beta1AutoraterConfig", "description": "Optional. Autorater config for evaluation." }, + "datasetCustomMetrics": { + "description": "Optional. Specifications for custom dataset-level aggregations.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1DatasetCustomMetric" + }, + "type": "array" + }, "inferenceGenerationConfig": { "$ref": "GoogleCloudAiplatformV1beta1GenerationConfig", "description": "Optional. Configuration options for inference generation and outputs. If not set, default generation parameters are used." @@ -45594,17 +52751,17 @@ "id": "GoogleCloudAiplatformV1beta1EvaluationInstance", "properties": { "agentData": { - "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentData", + "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentData", "deprecated": true, - "description": "Optional. Deprecated. Use `agent_eval_data` instead. Data used for agent evaluation." + "description": "Optional. Deprecated: Use `agent_eval_data` instead. Data used for agent evaluation." }, "agentEvalData": { - "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentData", + "$ref": "GoogleCloudAiplatformV1beta1AgentData", "description": "Optional. Data used for agent evaluation." }, "otherData": { "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceMapInstance", - "description": "Optional. Other data used to populate placeholders based on their key." + "description": "Optional. Other data used to populate placeholders based on their key. If a key conflicts with a field in the EvaluationInstance (e.g. `prompt`), the value of the field will take precedence over the value in other_data." }, "prompt": { "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceInstanceData", @@ -45628,10 +52785,10 @@ }, "type": "object" }, - "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentConfig": { + "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentConfig": { "deprecated": true, - "description": "Configuration for an Agent.", - "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentConfig", + "description": "Deprecated: Use `google.cloud.aiplatform.master.AgentConfig` in `agent_eval_data` instead. Configuration for an Agent.", + "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentConfig", "properties": { "agentId": { "description": "Optional. Unique identifier of the agent. This ID is used to refer to this agent, e.g., in AgentEvent.author, or in the `sub_agents` field. It must be unique within the `agents` map.", @@ -45657,7 +52814,7 @@ "type": "array" }, "tools": { - "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentConfigTools", + "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentConfigTools", "description": "List of tools." }, "toolsText": { @@ -45667,9 +52824,9 @@ }, "type": "object" }, - "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentConfigTools": { + "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentConfigTools": { "description": "Represents a list of tools for an agent.", - "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentConfigTools", + "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentConfigTools", "properties": { "tool": { "description": "Optional. List of tools: each tool can have multiple function declarations.", @@ -45681,18 +52838,18 @@ }, "type": "object" }, - "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentData": { + "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentData": { "deprecated": true, - "description": "Contains data specific to agent evaluations.", - "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentData", + "description": "Deprecated: Use `agent_eval_data` instead. Contains data specific to agent evaluations.", + "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentData", "properties": { "agentConfig": { - "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentConfig", - "description": "Optional. Agent configuration." + "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentConfig", + "description": "Optional. Deprecated: Use `agent_eval_data` instead. Agent configuration." }, "agents": { "additionalProperties": { - "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentConfig" + "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentConfig" }, "description": "Optional. The static Agent Configuration. This map defines the graph structure of the agent system. Key: agent_id (matches the `author` field in events). Value: The static configuration of the agent (tools, instructions, sub-agents).", "type": "object" @@ -45700,14 +52857,14 @@ "developerInstruction": { "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceInstanceData", "deprecated": true, - "description": "Optional. Deprecated. A field containing instructions from the developer for the agent. Please use `agents.developer_instruction` or `turns.events.active_instruction` instead." + "description": "Optional. Deprecated: Use `agents.developer_instruction` or `turns.events.active_instruction` instead. A field containing instructions from the developer for the agent." }, "events": { - "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentDataEvents", + "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentDataEvents", "description": "A list of events." }, "tools": { - "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentDataTools", + "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentDataTools", "deprecated": true, "description": "List of tools." }, @@ -45719,16 +52876,16 @@ "turns": { "description": "Optional. The chronological list of conversation turns. Each turn represents a logical execution cycle (e.g., User Input -> Agent Response).", "items": { - "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentDataConversationTurn" + "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentDataConversationTurn" }, "type": "array" } }, "type": "object" }, - "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentDataAgentEvent": { + "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentDataAgentEvent": { "description": "A single event in the execution trace.", - "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentDataAgentEvent", + "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentDataAgentEvent", "properties": { "activeTools": { "description": "Optional. The list of tools that were active/available to the agent at the time of this event. This overrides the `AgentConfig.tools` if set.", @@ -45761,14 +52918,14 @@ }, "type": "object" }, - "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentDataConversationTurn": { + "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentDataConversationTurn": { "description": "Represents a single turn/invocation in the conversation.", - "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentDataConversationTurn", + "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentDataConversationTurn", "properties": { "events": { "description": "Optional. The list of events that occurred during this turn.", "items": { - "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentDataAgentEvent" + "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentDataAgentEvent" }, "type": "array" }, @@ -45784,9 +52941,9 @@ }, "type": "object" }, - "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentDataEvents": { + "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentDataEvents": { "description": "Represents a list of events for an agent.", - "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentDataEvents", + "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentDataEvents", "properties": { "event": { "description": "Optional. A list of events.", @@ -45798,9 +52955,9 @@ }, "type": "object" }, - "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentDataTools": { - "description": "Deprecated. Represents a list of tools for an agent.", - "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentDataTools", + "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentDataTools": { + "description": "Deprecated: Use `agent_eval_data` instead. Represents a list of tools for an agent.", + "id": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentDataTools", "properties": { "tool": { "deprecated": true, @@ -45920,6 +53077,74 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1EvaluationMetric": { + "description": "EvaluationMetric is a resource that represents a reusable metric configuration.", + "id": "GoogleCloudAiplatformV1beta1EvaluationMetric", + "properties": { + "createTime": { + "description": "Output only. The time when the EvaluationMetric was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. A description of the EvaluationMetric.", + "type": "string" + }, + "displayName": { + "description": "Required. The user-friendly display name for the EvaluationMetric.", + "type": "string" + }, + "gcsUri": { + "description": "Optional. The Google Cloud Storage URI that stores the metric specification..", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Labels for the evaluation metric.", + "type": "object" + }, + "metric": { + "$ref": "GoogleCloudAiplatformV1beta1Metric", + "description": "Optional. The metric configuration. Only LLMMetric and CustomCodeExecutionMetric are supported." + }, + "name": { + "description": "Identifier. The resource name of the EvaluationMetric. Format: `projects/{project}/locations/{location}/evaluationMetrics/{evaluation_metric}`", + "type": "string" + }, + "updateTime": { + "description": "Output only. The time when the EvaluationMetric was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1EvaluationParserConfig": { + "description": "Config for parsing LLM responses. It can be used to parse the LLM response to be evaluated, or the LLM response from LLM-based metrics/Autoraters.", + "id": "GoogleCloudAiplatformV1beta1EvaluationParserConfig", + "properties": { + "customCodeParserConfig": { + "$ref": "GoogleCloudAiplatformV1beta1EvaluationParserConfigCustomCodeParserConfig", + "description": "Optional. Use custom code to parse the LLM response." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1EvaluationParserConfigCustomCodeParserConfig": { + "description": "Configuration for parsing the LLM response using custom code.", + "id": "GoogleCloudAiplatformV1beta1EvaluationParserConfigCustomCodeParserConfig", + "properties": { + "parsingFunction": { + "description": "Required. Python function for parsing results. The function should be defined within this string. The function takes a list of strings (LLM responses) and should return either a list of dictionaries (for rubrics) or a single dictionary (for a metric result). Example function signature: def parse(responses: list[str]) -> list[dict[str, Any]] | dict[str, Any]: When parsing rubrics, return a list of dictionaries, where each dictionary represents a Rubric. Example for rubrics: [ { \"content\": {\"property\": {\"description\": \"The response is factual.\"}}, \"type\": \"FACTUALITY\", \"importance\": \"HIGH\" }, { \"content\": {\"property\": {\"description\": \"The response is fluent.\"}}, \"type\": \"FLUENCY\", \"importance\": \"MEDIUM\" } ] When parsing critique results, return a dictionary representing a MetricResult. Example for a metric result: { \"score\": 0.8, \"explanation\": \"The model followed most instructions.\", \"rubric_verdicts\": [...] } ... code for result extraction and aggregation", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1EvaluationPrompt": { "description": "Prompt to be evaluated. This can represent a single-turn prompt or a multi-turn conversation for agent evaluations.", "id": "GoogleCloudAiplatformV1beta1EvaluationPrompt", @@ -45936,6 +53161,10 @@ "description": "Text prompt.", "type": "string" }, + "userScenario": { + "$ref": "GoogleCloudAiplatformV1beta1EvaluationPromptUserScenario", + "description": "Optional. The generated user scenario used to drive multi-turn agent running results." + }, "value": { "description": "Fields and values that can be used to populate the prompt template.", "type": "any" @@ -45957,6 +53186,21 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1EvaluationPromptUserScenario": { + "description": "User scenario to help simulate multi-turn agent running results.", + "id": "GoogleCloudAiplatformV1beta1EvaluationPromptUserScenario", + "properties": { + "conversationPlan": { + "description": "Required. The plan for the conversation, used to drive the multi-turn agent run and generate the simulated agent evaluation dataset.", + "type": "string" + }, + "startingPrompt": { + "description": "Required. The prompt that starts the conversation between the simulated user and the agent under test.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1EvaluationRequest": { "description": "A single evaluation request supporting input for both single-turn model generation and multi-turn agent execution traces. Valid input modes: 1. Inference Mode: `prompt` is set (containing text or AgentData context). 2. Offline Eval Mode: `prompt` is unset, and `candidate_responses` contains `agent_data` (the completed execution trace). Validation Rule: Either `prompt` must be set, OR at least one of the `candidate_responses` must contain `agent_data`.", "id": "GoogleCloudAiplatformV1beta1EvaluationRequest", @@ -46028,6 +53272,14 @@ "description": "The evaluation set where item level results are stored.", "type": "string" }, + "lossAnalysisResults": { + "description": "Output only. The results of the auto-loss analysis performed on the eval set associated with the run.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1LossAnalysisResult" + }, + "readOnly": true, + "type": "array" + }, "summaryMetrics": { "$ref": "GoogleCloudAiplatformV1beta1SummaryMetrics", "description": "Optional. The summary metrics for the evaluation run." @@ -46085,7 +53337,7 @@ }, "evaluationConfig": { "$ref": "GoogleCloudAiplatformV1beta1EvaluationRunEvaluationConfig", - "description": "Required. The configuration used for the evaluation." + "description": "Optional. The configuration used for the evaluation. Optional when analysis_configs is provided." }, "evaluationResults": { "$ref": "GoogleCloudAiplatformV1beta1EvaluationResults", @@ -46129,7 +53381,8 @@ "FAILED", "CANCELLED", "INFERENCE", - "GENERATING_RUBRICS" + "GENERATING_RUBRICS", + "GENERATING_LOSS_CLUSTERS" ], "enumDescriptions": [ "Unspecified state.", @@ -46139,7 +53392,8 @@ "The evaluation run has failed.", "The evaluation run has been cancelled.", "The evaluation run is performing inference.", - "The evaluation run is performing rubric generation." + "The evaluation run is performing rubric generation.", + "The evaluation run is performing loss analysis." ], "readOnly": true, "type": "string" @@ -46170,6 +53424,20 @@ "$ref": "GoogleCloudAiplatformV1beta1EvaluationRunEvaluationConfigAutoraterConfig", "description": "Optional. The autorater config for the evaluation run." }, + "datasetCustomMetrics": { + "description": "Optional. Specifications for custom dataset-level aggregations.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1DatasetCustomMetric" + }, + "type": "array" + }, + "lossAnalysisConfig": { + "description": "Optional. Specifications for loss analysis. Each config can be specified for one metric.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1LossAnalysisConfig" + }, + "type": "array" + }, "metrics": { "description": "Required. The metrics to be calculated in the evaluation run.", "items": { @@ -46246,27 +53514,83 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfig": { - "description": "An inference config used for model inference during the evaluation run.", + "description": "Defines the configuration for a candidate model or agent being evaluated. `InferenceConfig` encapsulates all the necessary information to invoke or scrape the candidate during the evaluation run. This includes direct model inference parameters, agent execution settings, and multi-turn scraping configurations (such as user simulators). It serves as the primary representation of the candidate across different stages of the evaluation process.", "id": "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfig", "properties": { "agentConfig": { - "$ref": "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigAgentConfig", - "description": "Optional. Agent config used to generate responses." + "$ref": "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigInferenceAgentConfig", + "deprecated": true, + "description": "Optional. Deprecated: Use `agents` instead. Agent config used to generate responses." + }, + "agentRunConfig": { + "$ref": "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigAgentRunConfig", + "description": "Optional. Agent run config." + }, + "agents": { + "additionalProperties": { + "$ref": "GoogleCloudAiplatformV1beta1AgentConfig" + }, + "description": "Optional. Contains the static configurations for each agent in the system. Key: agent_id (matches the `author` field in events). Value: The static configuration of the agent.", + "type": "object" }, "generationConfig": { "$ref": "GoogleCloudAiplatformV1beta1GenerationConfig", "description": "Optional. Generation config." }, "model": { - "description": "Optional. The fully qualified name of the publisher model or endpoint to use. Publisher model format: `projects/{project}/locations/{location}/publishers/*/models/*` Endpoint format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "description": "Optional. The fully qualified name of the publisher model or endpoint to use. Anthropic and Llama third-party models are also supported through Model Garden. Publisher model format: `projects/{project}/locations/{location}/publishers/*/models/*` Third-party model formats: `projects/{project}/locations/{location}/publishers/anthropic/models/{model}` or `projects/{project}/locations/{location}/publishers/llama/models/{model}` Endpoint format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "type": "string" + }, + "parallelism": { + "description": "Optional. The parallelism of the evaluation run for the inference step. If not specified, the default parallelism will be used.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigAgentRunConfig": { + "description": "Configuration for Agent Run.", + "id": "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigAgentRunConfig", + "properties": { + "agentEngine": { + "description": "Optional. The resource name of the Agent Engine. Format: projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine} For example: projects/123/locations/us-central1/reasoningEngines/456", "type": "string" + }, + "sessionInput": { + "$ref": "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigSessionInput", + "description": "Optional. The session input to get agent running results." + }, + "userSimulatorConfig": { + "$ref": "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigAgentRunConfigUserSimulatorConfig", + "description": "The configuration for a user simulator that uses an LLM to generate messages on behalf of the user." } }, "type": "object" }, - "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigAgentConfig": { + "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigAgentRunConfigUserSimulatorConfig": { + "description": "Used for multi-turn agent scraping. Contains configuration for a user simulator that uses an LLM to generate messages on behalf of the user.", + "id": "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigAgentRunConfigUserSimulatorConfig", + "properties": { + "maxTurn": { + "description": "Maximum number of invocations allowed by the multi-turn agent scraping. This property allows us to stop a run-off conversation, where the agent and the user simulator get into a never ending loop. The initial fixed prompt is also counted as an invocation.", + "format": "int32", + "type": "integer" + }, + "modelConfig": { + "$ref": "GoogleCloudAiplatformV1beta1GenerationConfig", + "description": "The configuration for the model." + }, + "modelName": { + "description": "The model name to use for multi-turn agent scraping to get next user message, e.g. \"gemini-3-flash-preview\".", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigInferenceAgentConfig": { "description": "Configuration that describes an agent.", - "id": "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigAgentConfig", + "id": "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigInferenceAgentConfig", "properties": { "developerInstruction": { "$ref": "GoogleCloudAiplatformV1beta1Content", @@ -46282,6 +53606,32 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigSessionInput": { + "description": "Session input to run an Agent.", + "id": "GoogleCloudAiplatformV1beta1EvaluationRunInferenceConfigSessionInput", + "properties": { + "parameters": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Additional parameters for the session, like app_name, etc. For example, {\"app_name\": \"my-app\"}.", + "type": "object" + }, + "sessionState": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. Session specific memory which stores key conversation points.", + "type": "object" + }, + "userId": { + "description": "Optional. The user id for the agent session. The ID can be up to 128 characters long.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1EvaluationRunMetric": { "description": "The metric used for evaluation runs.", "id": "GoogleCloudAiplatformV1beta1EvaluationRunMetric", @@ -46302,6 +53652,10 @@ "$ref": "GoogleCloudAiplatformV1beta1Metric", "description": "The metric config." }, + "metricResourceName": { + "description": "Optional. The resource name of the metric definition.", + "type": "string" + }, "predefinedMetricSpec": { "$ref": "GoogleCloudAiplatformV1beta1EvaluationRunMetricPredefinedMetricSpec", "description": "Spec for a pre-defined metric." @@ -46447,6 +53801,10 @@ "description": "Specification for how rubrics should be generated.", "id": "GoogleCloudAiplatformV1beta1EvaluationRunMetricRubricGenerationSpec", "properties": { + "metricResourceName": { + "description": "Optional. Resource name of the metric definition.", + "type": "string" + }, "modelConfig": { "$ref": "GoogleCloudAiplatformV1beta1EvaluationRunEvaluationConfigAutoraterConfig", "description": "Optional. Configuration for the model used in rubric generation. Configs including sampling count and base model can be specified here. Flipping is not supported for rubric generation." @@ -46485,6 +53843,13 @@ "description": "EvaluationSet is a collection of related EvaluationItems that are evaluated together.", "id": "GoogleCloudAiplatformV1beta1EvaluationSet", "properties": { + "agentConfigs": { + "additionalProperties": { + "$ref": "GoogleCloudAiplatformV1beta1AgentConfig" + }, + "description": "Optional. Static configurations for each agent associated with the items in this set. Key: `agent_id` (matches the `author` field in `events`). Value: The static configuration of the agent.", + "type": "object" + }, "createTime": { "description": "Output only. Timestamp when this item was created.", "format": "google-datetime", @@ -46625,6 +53990,10 @@ "$ref": "GoogleCloudAiplatformV1beta1GroundingMetadata", "description": "Optional. Metadata returned to client when grounding is enabled." }, + "inputTranscription": { + "$ref": "GoogleCloudAiplatformV1beta1Transcription", + "description": "Optional. Audio transcription of user input." + }, "interrupted": { "description": "Optional. Flag indicating that LLM was interrupted when generating the content. Usually it's due to user interruption during a bidi streaming.", "type": "boolean" @@ -46636,6 +54005,10 @@ }, "type": "array" }, + "outputTranscription": { + "$ref": "GoogleCloudAiplatformV1beta1Transcription", + "description": "Optional. Audio transcription of model output." + }, "partial": { "description": "Optional. Indicates whether the text content is part of a unfinished text stream. Only used for streaming mode and when the content is plain text.", "type": "boolean" @@ -46931,7 +54304,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1ExecutableCode": { - "description": "Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the [CodeExecution] tool, in which the code will be automatically executed, and a corresponding [CodeExecutionResult] will also be generated.", + "description": "Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the `CodeExecution` tool, in which the code will be automatically executed, and a corresponding CodeExecutionResult will also be generated.", "id": "GoogleCloudAiplatformV1beta1ExecutableCode", "properties": { "code": { @@ -47877,6 +55250,40 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ExpressProject": { + "description": "The project for Vertex AI Express Mode.", + "id": "GoogleCloudAiplatformV1beta1ExpressProject", + "properties": { + "createTime": { + "description": "Output only. The time the project was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "defaultApiKey": { + "description": "Output only. The default API key string of the project.", + "readOnly": true, + "type": "string" + }, + "projectId": { + "description": "Output only. The ID of the project.", + "readOnly": true, + "type": "string" + }, + "projectNumber": { + "description": "Output only. The number of the project.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "region": { + "description": "Output only. The region of the project.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1Extension": { "description": "Extensions are tools for large language models to access external data, run computations, etc.", "id": "GoogleCloudAiplatformV1beta1Extension", @@ -48120,6 +55527,21 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1FailedRubric": { + "description": "Represents a specific failed rubric and the associated analysis.", + "id": "GoogleCloudAiplatformV1beta1FailedRubric", + "properties": { + "classificationRationale": { + "description": "The rationale provided by the Loss Analysis Classifier for why this failure maps to this specific Loss Cluster. e.g., \"The agent claimed an action without a tool call, matching 'Hallucination of Action'.\"", + "type": "string" + }, + "rubricId": { + "description": "The unique ID of the rubric (if available from the metric source). Clients use this ID to query the corresponding rubric verdict.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1FasterDeploymentConfig": { "description": "Configuration for faster model deployment.", "id": "GoogleCloudAiplatformV1beta1FasterDeploymentConfig", @@ -50238,7 +57660,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1FunctionCall": { - "description": "A predicted [FunctionCall] returned from the model that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing the parameters and their values.", + "description": "A predicted FunctionCall returned from the model that contains a string representing the FunctionDeclaration.name and a structured JSON object containing the parameters and their values.", "id": "GoogleCloudAiplatformV1beta1FunctionCall", "properties": { "args": { @@ -50246,7 +57668,7 @@ "description": "Properties of the object.", "type": "any" }, - "description": "Optional. The function parameters and values in JSON object format. See [FunctionDeclaration.parameters] for parameter details.", + "description": "Optional. The function parameters and values in JSON object format. See FunctionDeclaration.parameters for parameter details.", "type": "object" }, "id": { @@ -50254,7 +57676,7 @@ "type": "string" }, "name": { - "description": "Optional. The name of the function to call. Matches [FunctionDeclaration.name].", + "description": "Optional. The name of the function to call. Matches FunctionDeclaration.name.", "type": "string" }, "partialArgs": { @@ -50276,7 +57698,7 @@ "id": "GoogleCloudAiplatformV1beta1FunctionCallingConfig", "properties": { "allowedFunctionNames": { - "description": "Optional. Function names to call. Only set when the Mode is ANY. Function names should match [FunctionDeclaration.name]. With mode set to ANY, model will predict a function call from the set of function names provided.", + "description": "Optional. Function names to call. Only set when the Mode is ANY. Function names should match FunctionDeclaration.name. With mode set to ANY, model will predict a function call from the set of function names provided.", "items": { "type": "string" }, @@ -50301,7 +57723,7 @@ "type": "string" }, "streamFunctionCallArguments": { - "description": "Optional. When set to true, arguments of a single function call will be streamed out in multiple parts/contents/responses. Partial parameter results will be returned in the [FunctionCall.partial_args] field.", + "description": "Optional. When set to true, arguments of a single function call will be streamed out in multiple parts/contents/responses. Partial parameter results will be returned in the `FunctionCall.partial_args` field.", "type": "boolean" } }, @@ -50316,7 +57738,7 @@ "type": "string" }, "name": { - "description": "Required. The name of the function to call. Must start with a letter or an underscore. Must be a-z, A-Z, 0-9, or contain underscores, dots, colons and dashes, with a maximum length of 64.", + "description": "Required. The name of the function to call. Must start with a letter or an underscore. Must be a-z, A-Z, 0-9, or contain underscores, dots, colons and dashes, with a maximum length of 128.", "type": "string" }, "parameters": { @@ -50339,7 +57761,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1FunctionResponse": { - "description": "The result output from a [FunctionCall] that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a [FunctionCall] made based on model prediction.", + "description": "The result output from a FunctionCall that contains a string representing the FunctionDeclaration.name and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a `FunctionCall` made based on model prediction.", "id": "GoogleCloudAiplatformV1beta1FunctionResponse", "properties": { "id": { @@ -50347,7 +57769,7 @@ "type": "string" }, "name": { - "description": "Required. The name of the function to call. Matches [FunctionDeclaration.name] and [FunctionCall.name].", + "description": "Required. The name of the function to call. Matches FunctionDeclaration.name and FunctionCall.name.", "type": "string" }, "parts": { @@ -50918,7 +58340,7 @@ "id": "GoogleCloudAiplatformV1beta1GenerateInstanceRubricsRequest", "properties": { "agentConfig": { - "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceAgentConfig", + "$ref": "GoogleCloudAiplatformV1beta1EvaluationInstanceDeprecatedAgentConfig", "description": "Optional. Agent configuration, required for agent-based rubric generation." }, "contents": { @@ -50932,6 +58354,10 @@ "description": "Required. The resource name of the Location to generate rubrics from. Format: `projects/{project}/locations/{location}`", "type": "string" }, + "metricResourceName": { + "description": "Optional. The resource name of a registered metric. Rubric generation using predefined metric spec or LLMBasedMetricSpec is supported. If this field is set, the configuration provided in this field is used for rubric generation. The `predefined_rubric_generation_spec` and `rubric_generation_spec` fields will be ignored.", + "type": "string" + }, "predefinedRubricGenerationSpec": { "$ref": "GoogleCloudAiplatformV1beta1PredefinedMetricSpec", "description": "Optional. Specification for using the rubric generation configs of a pre-defined metric, e.g. \"generic_quality_v1\" and \"instruction_following_v1\". Some of the configs may be only used in rubric generation and not supporting evaluation, e.g. \"fully_customized_generic_quality_v1\". If this field is set, the `rubric_generation_spec` field will be ignored." @@ -50958,10 +58384,83 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1GenerateLossClustersOperationMetadata": { + "description": "Operation metadata for EvaluationAnalyticsService.GenerateLossClusters.", + "id": "GoogleCloudAiplatformV1beta1GenerateLossClustersOperationMetadata", + "properties": { + "genericMetadata": { + "$ref": "GoogleCloudAiplatformV1beta1GenericOperationMetadata", + "description": "Generic operation metadata." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1GenerateLossClustersRequest": { + "description": "Request message for EvaluationAnalyticsService.GenerateLossClusters.", + "id": "GoogleCloudAiplatformV1beta1GenerateLossClustersRequest", + "properties": { + "configs": { + "description": "Required. Configuration for the analysis algorithm. Analysis for multiple metrics and multiple candidates could be specified.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1LossAnalysisConfig" + }, + "type": "array" + }, + "evaluationSet": { + "description": "Reference to a persisted EvaluationSet. The service will read items from this set.", + "type": "string" + }, + "inlineResults": { + "$ref": "GoogleCloudAiplatformV1beta1GenerateLossClustersRequestEvaluationResultList", + "description": "Inline evaluation results. Useful for ephemeral analysis in notebooks/SDKs where data isn't persisted." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1GenerateLossClustersRequestEvaluationResultList": { + "description": "A wrapper to allow providing a list of items inline.", + "id": "GoogleCloudAiplatformV1beta1GenerateLossClustersRequestEvaluationResultList", + "properties": { + "evaluationResults": { + "description": "Required. The list of evaluation results to analyze.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1EvaluationResult" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1GenerateLossClustersResponse": { + "description": "Response message for EvaluationAnalyticsService.GenerateLossClusters.", + "id": "GoogleCloudAiplatformV1beta1GenerateLossClustersResponse", + "properties": { + "analysisTime": { + "description": "The timestamp when this analysis was completed.", + "format": "google-datetime", + "type": "string" + }, + "results": { + "description": "The analysis results, one per config provided in the request.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1LossAnalysisResult" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1GenerateMemoriesRequest": { "description": "Request message for MemoryBankService.GenerateMemories. Maximum size is 8 MB.", "id": "GoogleCloudAiplatformV1beta1GenerateMemoriesRequest", "properties": { + "allowedTopics": { + "description": "Optional. Restricts memory generation to a subset of memory topics.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1MemoryTopicId" + }, + "type": "array" + }, "directContentsSource": { "$ref": "GoogleCloudAiplatformV1beta1GenerateMemoriesRequestDirectContentsSource", "description": "Defines a direct source of content as the source content from which to generate memories." @@ -51111,23 +58610,23 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1GenerateSyntheticDataRequest": { - "description": "Request message for DataFoundryService.GenerateSyntheticData.", + "description": "Request message for DataFoundryService.GenerateSyntheticData. It contains the settings and information needed to generate synthetic data.", "id": "GoogleCloudAiplatformV1beta1GenerateSyntheticDataRequest", "properties": { "count": { - "description": "Required. The number of synthetic examples to generate. For this stateless API, the count is limited to a small number.", + "description": "Required. The number of synthetic examples to generate. For this stateless API, you can generate up to 50 examples in a single request.", "format": "int32", "type": "integer" }, "examples": { - "description": "Optional. A list of few-shot examples to guide the model's output style and format.", + "description": "Optional. A list of few-shot examples that help the model understand the desired style, tone, and format of the generated synthetic data. Providing these few-shot examples can significantly improve the quality and relevance of the output.", "items": { "$ref": "GoogleCloudAiplatformV1beta1SyntheticExample" }, "type": "array" }, "outputFieldSpecs": { - "description": "Required. The schema of the desired output, defined by a list of fields.", + "description": "Required. Defines the schema of each synthetic example to be generated, defined by a list of fields.", "items": { "$ref": "GoogleCloudAiplatformV1beta1OutputFieldSpec" }, @@ -51135,17 +58634,17 @@ }, "taskDescription": { "$ref": "GoogleCloudAiplatformV1beta1TaskDescriptionStrategy", - "description": "Generate data from a high-level task description." + "description": "Generates synthetic data based on a high-level description of the task or data you want." } }, "type": "object" }, "GoogleCloudAiplatformV1beta1GenerateSyntheticDataResponse": { - "description": "The response containing the generated data.", + "description": "The response message for the `GenerateSyntheticData` method, containing the synthetic examples generated by the Gen AI evaluation service.", "id": "GoogleCloudAiplatformV1beta1GenerateSyntheticDataResponse", "properties": { "syntheticExamples": { - "description": "A list of generated synthetic examples.", + "description": "A list of generated synthetic examples, each containing a complete synthetic data instance generated based on your request.", "items": { "$ref": "GoogleCloudAiplatformV1beta1SyntheticExample" }, @@ -51154,6 +58653,46 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1GenerateUserScenariosRequest": { + "description": "Request message for DataFoundryService.GenerateUserScenarios.", + "id": "GoogleCloudAiplatformV1beta1GenerateUserScenariosRequest", + "properties": { + "agents": { + "additionalProperties": { + "$ref": "GoogleCloudAiplatformV1beta1AgentConfig" + }, + "description": "Required. A map containing the static configurations for each agent in the system. Key: agent_id (matches the `author` field in events). Value: The static configuration of the agent.", + "type": "object" + }, + "allowCrossRegionModel": { + "description": "Optional. Allows the scenario generation to use cross region models. When this flag is set, the service may route traffic to other regions if a model is unavailable in the current region (e.g., to a `global` endpoint). If a fully-qualified model endpoint resource name with a different region than the request location is provided elsewhere in the request, this flag must be set to true or the request will fail.", + "type": "boolean" + }, + "rootAgentId": { + "description": "Required. The agent id to identify the root agent.", + "type": "string" + }, + "userScenarioGenerationConfig": { + "$ref": "GoogleCloudAiplatformV1beta1UserScenarioGenerationConfig", + "description": "Required. Configuration for generating user scenarios." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1GenerateUserScenariosResponse": { + "description": "Response message for DataFoundryService.GenerateUserScenarios.", + "id": "GoogleCloudAiplatformV1beta1GenerateUserScenariosResponse", + "properties": { + "userScenarios": { + "description": "The generated user scenarios used to simulate multi-turn agent running results and agent evaluation.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1UserScenario" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1GenerateVideoResponse": { "description": "Generate video response.", "id": "GoogleCloudAiplatformV1beta1GenerateVideoResponse", @@ -51278,7 +58817,7 @@ "type": "boolean" }, "responseMimeType": { - "description": "Optional. The IANA standard MIME type of the response. The model will generate output that conforms to this MIME type. Supported values include 'text/plain' (default) and 'application/json'. The model needs to be prompted to output the appropriate response type, otherwise the behavior is undefined. This is a preview feature.", + "description": "Optional. The IANA standard MIME type of the response. The model will generate output that conforms to this MIME type. Supported values include 'text/plain' (default) and 'application/json'. The model needs to be prompted to output the appropriate response type, otherwise the behavior is undefined.", "type": "string" }, "responseModalities": { @@ -51288,13 +58827,15 @@ "MODALITY_UNSPECIFIED", "TEXT", "IMAGE", - "AUDIO" + "AUDIO", + "VIDEO" ], "enumDescriptions": [ "Unspecified modality. Will be processed as text.", "Text modality.", "Image modality.", - "Audio modality." + "Audio modality.", + "Video modality." ], "type": "string" }, @@ -51621,6 +59162,10 @@ "description": "A piece of evidence that supports a claim made by the model. This is used to show a citation for a claim made by the model. When grounding is enabled, the model returns a `GroundingChunk` that contains a reference to the source of the information.", "id": "GoogleCloudAiplatformV1beta1GroundingChunk", "properties": { + "image": { + "$ref": "GoogleCloudAiplatformV1beta1GroundingChunkImage", + "description": "A grounding chunk from an image search result. See the `Image` message for details." + }, "maps": { "$ref": "GoogleCloudAiplatformV1beta1GroundingChunkMaps", "description": "A grounding chunk from Google Maps. See the `Maps` message for details." @@ -51636,6 +59181,29 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1GroundingChunkImage": { + "description": "An `Image` chunk is a piece of evidence that comes from an image search result. It contains the URI of the image search result and the URI of the image. This is used to provide the user with a link to the source of the information.", + "id": "GoogleCloudAiplatformV1beta1GroundingChunkImage", + "properties": { + "domain": { + "description": "The domain of the image search result page.", + "type": "string" + }, + "imageUri": { + "description": "The URI of the image.", + "type": "string" + }, + "sourceUri": { + "description": "The URI of the image search result page.", + "type": "string" + }, + "title": { + "description": "The title of the image search result page.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1GroundingChunkMaps": { "description": "A `Maps` chunk is a piece of evidence that comes from Google Maps, containing information about places or routes. This is used to provide the user with rich, location-based information.", "id": "GoogleCloudAiplatformV1beta1GroundingChunkMaps", @@ -51648,6 +59216,11 @@ "description": "This Place's resource name, in `places/{place_id}` format. This can be used to look up the place in the Google Maps API.", "type": "string" }, + "route": { + "$ref": "GoogleCloudAiplatformV1beta1GroundingChunkMapsRoute", + "description": "Output only. Route information.", + "readOnly": true + }, "text": { "description": "The text of the place answer.", "type": "string" @@ -51696,6 +59269,27 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1GroundingChunkMapsRoute": { + "description": "Route information from Google Maps.", + "id": "GoogleCloudAiplatformV1beta1GroundingChunkMapsRoute", + "properties": { + "distanceMeters": { + "description": "The total distance of the route, in meters.", + "format": "int32", + "type": "integer" + }, + "duration": { + "description": "The total duration of the route.", + "format": "google-duration", + "type": "string" + }, + "encodedPolyline": { + "description": "An encoded polyline of the route. See https://developers.google.com/maps/documentation/utilities/polylinealgorithm", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1GroundingChunkRetrievedContext": { "description": "Context retrieved from a data source to ground the model's response. This is used when a retrieval tool fetches information from a user-provided corpus or a public dataset.", "id": "GoogleCloudAiplatformV1beta1GroundingChunkRetrievedContext", @@ -51766,6 +59360,13 @@ }, "type": "array" }, + "imageSearchQueries": { + "description": "Optional. The image search queries that were used to generate the content. This field is populated only when the grounding source is Google Search with the Image Search search_type enabled.", + "items": { + "type": "string" + }, + "type": "array" + }, "retrievalMetadata": { "$ref": "GoogleCloudAiplatformV1beta1RetrievalMetadata", "description": "Optional. Output only. Metadata related to the retrieval grounding source.", @@ -51816,7 +59417,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1GroundingSupport": { - "description": "A collection of supporting references for a segment of the model's response.", + "description": "A collection of supporting references for a segment or part of the model's response.", "id": "GoogleCloudAiplatformV1beta1GroundingSupport", "properties": { "confidenceScores": { @@ -51835,6 +59436,14 @@ }, "type": "array" }, + "renderedParts": { + "description": "Indices into the `rendered_parts` field of the `GroundingMetadata` message. These indices specify which rendered parts are associated with this support message.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, "segment": { "$ref": "GoogleCloudAiplatformV1beta1Segment", "description": "The content segment that this support message applies to." @@ -52017,6 +59626,20 @@ "Prevents the model from generating images of people." ], "type": "string" + }, + "prominentPeople": { + "description": "Optional. Controls whether prominent people (celebrities) generation is allowed. If used with personGeneration, personGeneration enum would take precedence. For instance, if ALLOW_NONE is set, all person generation would be blocked. If this field is unspecified, the default behavior is to allow prominent people.", + "enum": [ + "PROMINENT_PEOPLE_UNSPECIFIED", + "ALLOW_PROMINENT_PEOPLE", + "BLOCK_PROMINENT_PEOPLE" + ], + "enumDescriptions": [ + "Unspecified value. The model will proceed with the default behavior, which is to allow generation of prominent people.", + "Allows the model to generate images of prominent people.", + "Prevents the model from generating images of prominent people." + ], + "type": "string" } }, "type": "object" @@ -52440,7 +60063,8 @@ }, "ragFileMetadataConfig": { "$ref": "GoogleCloudAiplatformV1beta1RagFileMetadataConfig", - "description": "Specifies the metadata config for RagFiles. Including paths for metadata schema and metadata." + "deprecated": true, + "description": "Specifies the metadata config for RagFiles. Including paths for metadata schema and metadata. Deprecated: Not in use." }, "ragFileParsingConfig": { "$ref": "GoogleCloudAiplatformV1beta1RagFileParsingConfig", @@ -52861,6 +60485,70 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1IngestEventsRequest": { + "description": "Request message for MemoryBankService.IngestEvents.", + "id": "GoogleCloudAiplatformV1beta1IngestEventsRequest", + "properties": { + "directContentsSource": { + "$ref": "GoogleCloudAiplatformV1beta1IngestionDirectContentsSource", + "description": "Ingest events directly from the request." + }, + "forceFlush": { + "description": "Optional. Forces a flush of all pending events in the stream and triggers memory generation immediately bypassing any conditions configured in the `generation_trigger_config`.", + "type": "boolean" + }, + "generationTriggerConfig": { + "$ref": "GoogleCloudAiplatformV1beta1MemoryGenerationTriggerConfig", + "description": "Optional. Configuration for triggering memory generation from this ingestion. If not set, then the stream will be force flushed immediately." + }, + "scope": { + "additionalProperties": { + "type": "string" + }, + "description": "Required. The scope of the memories that should be generated from the stream. Memories will be consolidated across memories with the same scope. Scope values cannot contain the wildcard character '*'.", + "type": "object" + }, + "streamId": { + "description": "Optional. The ID of the stream to ingest events into. If not provided, a new one will be created.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1IngestionDirectContentsSource": { + "description": "Ingest events directly from the request.", + "id": "GoogleCloudAiplatformV1beta1IngestionDirectContentsSource", + "properties": { + "events": { + "description": "Required. The events to ingest.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1IngestionDirectContentsSourceEvent" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1IngestionDirectContentsSourceEvent": { + "description": "A single event to ingest.", + "id": "GoogleCloudAiplatformV1beta1IngestionDirectContentsSourceEvent", + "properties": { + "content": { + "$ref": "GoogleCloudAiplatformV1beta1Content", + "description": "Required. The content of the event." + }, + "eventId": { + "description": "Optional. A unique identifier for the event. If an event with the same event_id is ingested multiple times, it will be de-duplicated.", + "type": "string" + }, + "eventTime": { + "description": "Optional. The time at which the event occurred. If provided, this timestamp will be used for ordering events within a stream. If not provided, the server-side ingestion time will be used.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1InputDataConfig": { "description": "Specifies Vertex AI owned input data to be used for training, and possibly evaluating, the Model.", "id": "GoogleCloudAiplatformV1beta1InputDataConfig", @@ -52955,10 +60643,24 @@ "description": "An extracted memory that is the intermediate result before consolidation.", "id": "GoogleCloudAiplatformV1beta1IntermediateExtractedMemory", "properties": { + "context": { + "description": "Output only. Represents the explanation of why the information was extracted from the source content.", + "readOnly": true, + "type": "string" + }, "fact": { - "description": "Output only. The fact of the extracted memory.", + "description": "Output only. Represents the fact of the extracted memory.", "readOnly": true, "type": "string" + }, + "structuredData": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. Represents the structured value of the extracted memory.", + "readOnly": true, + "type": "object" } }, "type": "object" @@ -53078,6 +60780,38 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1KeepAliveProbe": { + "description": "Represents the configuration for keep-alive probe. Contains configuration on a specified endpoint that a deployment host should use to keep the container alive based on the probe settings.", + "id": "GoogleCloudAiplatformV1beta1KeepAliveProbe", + "properties": { + "httpGet": { + "$ref": "GoogleCloudAiplatformV1beta1KeepAliveProbeHttpGet", + "description": "Optional. Specifies the HTTP GET configuration for the probe." + }, + "maxSeconds": { + "description": "Optional. Specifies the maximum duration (in seconds) to keep the instance alive via this probe. Can be a maximum of 3600 seconds (1 hour).", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1KeepAliveProbeHttpGet": { + "description": "Specifies the HTTP GET configuration for the probe.", + "id": "GoogleCloudAiplatformV1beta1KeepAliveProbeHttpGet", + "properties": { + "path": { + "description": "Required. Specifies the path of the HTTP GET request (e.g., `\"/is_busy\"`).", + "type": "string" + }, + "port": { + "description": "Optional. Specifies the port number on the container to which the request is sent.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1LLMBasedMetricSpec": { "description": "Specification for an LLM based metric.", "id": "GoogleCloudAiplatformV1beta1LLMBasedMetricSpec", @@ -53102,6 +60836,10 @@ "$ref": "GoogleCloudAiplatformV1beta1PredefinedMetricSpec", "description": "Dynamically generate rubrics using a predefined spec." }, + "resultParserConfig": { + "$ref": "GoogleCloudAiplatformV1beta1EvaluationParserConfig", + "description": "Optional. The parser config for the metric result." + }, "rubricGenerationSpec": { "$ref": "GoogleCloudAiplatformV1beta1RubricGenerationSpec", "description": "Dynamically generate rubrics using this specification." @@ -53156,6 +60894,42 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ListA2aTaskEventsResponse": { + "description": "Response message for AgentEngineTaskStoreService.ListA2aTaskEvents.", + "id": "GoogleCloudAiplatformV1beta1ListA2aTaskEventsResponse", + "properties": { + "nextPageToken": { + "description": "A token to retrieve the next page of results.", + "type": "string" + }, + "taskEvents": { + "description": "List of TaskEvents in the requested page.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1TaskEvent" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ListA2aTasksResponse": { + "description": "Response message for AgentEngineTaskStoreService.ListA2aTasks.", + "id": "GoogleCloudAiplatformV1beta1ListA2aTasksResponse", + "properties": { + "a2aTasks": { + "description": "List of A2aTasks in the requested page.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1A2aTask" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token, which can be sent as ListA2aTasksRequest.page_token to retrieve the next page. Absence of this field indicates there are no subsequent pages.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ListAnnotationsResponse": { "description": "Response message for DatasetService.ListAnnotations.", "id": "GoogleCloudAiplatformV1beta1ListAnnotationsResponse", @@ -53408,6 +61182,24 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ListEvaluationMetricsResponse": { + "description": "Response message for EvaluationMetricService.ListEvaluationMetrics.", + "id": "GoogleCloudAiplatformV1beta1ListEvaluationMetricsResponse", + "properties": { + "evaluationMetrics": { + "description": "List of EvaluationMetrics in the requested page.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1EvaluationMetric" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve the next page of results.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ListEvaluationRunsResponse": { "description": "Response message for EvaluationManagementService.ListEvaluationRuns.", "id": "GoogleCloudAiplatformV1beta1ListEvaluationRunsResponse", @@ -54020,6 +61812,24 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ListOnlineEvaluatorsResponse": { + "description": "Response message for ListOnlineEvaluators.", + "id": "GoogleCloudAiplatformV1beta1ListOnlineEvaluatorsResponse", + "properties": { + "nextPageToken": { + "description": "A token to retrieve the next page. Absence of this field indicates there are no subsequent pages.", + "type": "string" + }, + "onlineEvaluators": { + "description": "A list of OnlineEvaluators matching the request.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluator" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ListOptimalTrialsRequest": { "description": "Request message for VizierService.ListOptimalTrials.", "id": "GoogleCloudAiplatformV1beta1ListOptimalTrialsRequest", @@ -54165,6 +61975,24 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ListReasoningEngineRuntimeRevisionsResponse": { + "description": "Response message for ReasoningEngineRuntimeRevisionService.ListReasoningEngineRuntimeRevisions", + "id": "GoogleCloudAiplatformV1beta1ListReasoningEngineRuntimeRevisionsResponse", + "properties": { + "nextPageToken": { + "description": "A token to retrieve the next page of results. Pass to ListReasoningEngineRuntimeRevisionsRequest.page_token to obtain that page.", + "type": "string" + }, + "reasoningEngineRuntimeRevisions": { + "description": "List of ReasoningEngineRuntimeRevisions in the requested page.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineRuntimeRevision" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ListReasoningEnginesResponse": { "description": "Response message for ReasoningEngineService.ListReasoningEngines", "id": "GoogleCloudAiplatformV1beta1ListReasoningEnginesResponse", @@ -54183,6 +62011,42 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentSnapshotsResponse": { + "description": "Response message for SandboxEnvironmentService.ListSandboxEnvironmentSnapshots.", + "id": "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentSnapshotsResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as ListSandboxEnvironmentSnapshotsRequest.page_token to retrieve the next page. Absence of this field indicates there are no subsequent pages.", + "type": "string" + }, + "sandboxEnvironmentSnapshots": { + "description": "The SandboxEnvironmentSnapshots matching the request.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentSnapshot" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentTemplatesResponse": { + "description": "Response message for SandboxEnvironmentService.ListSandboxEnvironmentTemplates.", + "id": "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentTemplatesResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as ListSandboxEnvironmentTemplatesRequest.page_token to retrieve the next page. Absence of this field indicates there are no subsequent pages.", + "type": "string" + }, + "sandboxEnvironmentTemplates": { + "description": "The SandboxEnvironmentTemplates matching the request.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplate" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentsResponse": { "description": "Response message for SandboxEnvironmentService.ListSandboxEnvironments.", "id": "GoogleCloudAiplatformV1beta1ListSandboxEnvironmentsResponse", @@ -54484,6 +62348,112 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1LossAnalysisConfig": { + "description": "Configuration for the loss analysis job.", + "id": "GoogleCloudAiplatformV1beta1LossAnalysisConfig", + "properties": { + "candidate": { + "description": "Required. The candidate model/agent to analyze (e.g., \"gemini-3.0-pro\"). This targets the specific CandidateResult within the EvaluationResult.", + "type": "string" + }, + "metric": { + "description": "Required. The metric to analyze (e.g., \"tool_use_quality\"). This filters the EvaluationItems in the EvalSet to only those where EvaluationResult.metric matches this value.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1LossAnalysisResult": { + "description": "The top-level result for loss analysis, stored within an EvalSet.", + "id": "GoogleCloudAiplatformV1beta1LossAnalysisResult", + "properties": { + "analysisTime": { + "description": "The timestamp when this analysis was performed.", + "format": "google-datetime", + "type": "string" + }, + "clusters": { + "description": "The list of identified loss clusters.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1LossCluster" + }, + "type": "array" + }, + "config": { + "$ref": "GoogleCloudAiplatformV1beta1LossAnalysisConfig", + "description": "The configuration used to generate this analysis." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1LossCluster": { + "description": "Represents a semantic grouping of failures (e.g., \"Hallucination of Action\").", + "id": "GoogleCloudAiplatformV1beta1LossCluster", + "properties": { + "clusterId": { + "description": "Unique identifier for the loss cluster within the scope of the analysis result.", + "type": "string" + }, + "examples": { + "description": "A list of examples that belong to this cluster. This links the cluster back to the specific EvaluationItems and Rubrics.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1LossExample" + }, + "type": "array" + }, + "itemCount": { + "description": "The total number of EvaluationItems falling into this cluster.", + "format": "int32", + "type": "integer" + }, + "taxonomyEntry": { + "$ref": "GoogleCloudAiplatformV1beta1LossTaxonomyEntry", + "description": "The structured definition of the loss taxonomy for this cluster." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1LossExample": { + "description": "Represents a specific example of a loss pattern.", + "id": "GoogleCloudAiplatformV1beta1LossExample", + "properties": { + "evaluationItem": { + "description": "Reference to the persisted EvalItem resource name. Format: projects/.../locations/.../evaluationItems/{item_id} Used when analysis is run on an EvalSet.", + "type": "string" + }, + "evaluationResult": { + "$ref": "GoogleCloudAiplatformV1beta1EvaluationResult", + "description": "The full evaluation result object provided inline. Used when the analysis is performed on ephemeral data (without an EvaluationSet)." + }, + "failedRubrics": { + "description": "The specific rubric(s) that failed and caused this example to be classified here. An example might fail multiple rubrics, but only specific ones trigger this loss pattern.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1FailedRubric" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1LossTaxonomyEntry": { + "description": "Defines a specific entry in the loss pattern taxonomy.", + "id": "GoogleCloudAiplatformV1beta1LossTaxonomyEntry", + "properties": { + "description": { + "description": "A detailed description of this loss pattern. Example: \"The agent verbally confirms an action without executing the tool.\"", + "type": "string" + }, + "l1Category": { + "description": "The primary category of the loss (e.g., \"Hallucination\", \"Tool Calling\"). This field is typically required.", + "type": "string" + }, + "l2Category": { + "description": "The secondary category of the loss (e.g., \"Hallucination of Action\", \"Incorrect Tool Selection\").", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1LustreMount": { "description": "Represents a mount configuration for Lustre file system.", "id": "GoogleCloudAiplatformV1beta1LustreMount", @@ -54673,45 +62643,59 @@ "id": "GoogleCloudAiplatformV1beta1Memory", "properties": { "createTime": { - "description": "Output only. Timestamp when this Memory was created.", + "description": "Output only. Represents the timestamp when this Memory was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "Optional. Description of the Memory.", + "description": "Optional. Represents the description of the Memory.", "type": "string" }, "disableMemoryRevisions": { - "description": "Optional. Input only. If true, no revision will be created for this request.", + "description": "Optional. Input only. Indicates whether no revision will be created for this request.", "type": "boolean" }, "displayName": { - "description": "Optional. Display name of the Memory.", + "description": "Optional. Represents the display name of the Memory.", "type": "string" }, "expireTime": { - "description": "Optional. Timestamp of when this resource is considered expired. This is *always* provided on output when `expiration` is set on input, regardless of whether `expire_time` or `ttl` was provided.", + "description": "Optional. Represents the timestamp of when this resource is considered expired. This is *always* provided on output when `expiration` is set on input, regardless of whether `expire_time` or `ttl` was provided.", "format": "google-datetime", "type": "string" }, "fact": { - "description": "Required. Semantic knowledge extracted from the source content.", + "description": "Optional. Represents semantic knowledge extracted from the source content.", + "type": "string" + }, + "memoryType": { + "description": "Optional. Represents the type of the memory. If not set, the `NATURAL_LANGUAGE_COLLECTION` type is used. If `STRUCTURED_COLLECTION` or `STRUCTURED_PROFILE` is used, then `structured_data` must be provided.", + "enum": [ + "MEMORY_TYPE_UNSPECIFIED", + "NATURAL_LANGUAGE_COLLECTION", + "STRUCTURED_PROFILE" + ], + "enumDescriptions": [ + "Represents an unspecified memory type. This value should not be used.", + "Indicates belonging to a collection of natural language memories.", + "Indicates belonging to a structured profile." + ], "type": "string" }, "metadata": { "additionalProperties": { "$ref": "GoogleCloudAiplatformV1beta1MemoryMetadataValue" }, - "description": "Optional. User-provided metadata for the Memory. This information was provided when creating, updating, or generating the Memory. It was not generated by Memory Bank.", + "description": "Optional. Represents user-provided metadata for the Memory. This information was provided when creating, updating, or generating the Memory. It was not generated by Memory Bank.", "type": "object" }, "name": { - "description": "Identifier. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", + "description": "Identifier. Represents the resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`", "type": "string" }, "revisionExpireTime": { - "description": "Optional. Input only. Timestamp of when the revision is considered expired. If not set, the memory revision will be kept until manually deleted.", + "description": "Optional. Input only. Represents the timestamp of when the revision is considered expired. If not set, the memory revision will be kept until manually deleted.", "format": "google-datetime", "type": "string" }, @@ -54719,11 +62703,11 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. Input only. The labels to apply to the Memory Revision created as a result of this request.", + "description": "Optional. Input only. Represents the labels to apply to the Memory Revision created as a result of this request.", "type": "object" }, "revisionTtl": { - "description": "Optional. Input only. The TTL for the revision. The expiration time is computed: now + TTL.", + "description": "Optional. Input only. Represents the TTL for the revision. The expiration time is computed: now + TTL.", "format": "google-duration", "type": "string" }, @@ -54731,23 +62715,27 @@ "additionalProperties": { "type": "string" }, - "description": "Required. Immutable. The scope of the Memory. Memories are isolated within their scope. The scope is defined when creating or generating memories. Scope values cannot contain the wildcard character '*'.", + "description": "Required. Immutable. Represents the scope of the Memory. Memories are isolated within their scope. The scope is defined when creating or generating memories. Scope values cannot contain the wildcard character '*'.", "type": "object" }, + "structuredContent": { + "$ref": "GoogleCloudAiplatformV1beta1MemoryStructuredContent", + "description": "Optional. Represents the structured content of the memory." + }, "topics": { - "description": "Optional. The Topics of the Memory.", + "description": "Optional. Represents the Topics of the Memory.", "items": { "$ref": "GoogleCloudAiplatformV1beta1MemoryTopicId" }, "type": "array" }, "ttl": { - "description": "Optional. Input only. The TTL for this resource. The expiration time is computed: now + TTL.", + "description": "Optional. Input only. Represents the TTL for this resource. The expiration time is computed: now + TTL.", "format": "google-duration", "type": "string" }, "updateTime": { - "description": "Output only. Timestamp when this Memory was most recently updated.", + "description": "Output only. Represents the timestamp when this Memory was most recently updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -54756,29 +62744,37 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfig": { - "description": "Configuration for organizing memories for a particular scope.", + "description": "Represents configuration for organizing natural language memories for a particular scope.", "id": "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfig", "properties": { + "consolidationConfig": { + "$ref": "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigConsolidationConfig", + "description": "Optional. Represents configuration for customizing how memories are consolidated together." + }, + "disableNaturalLanguageMemories": { + "description": "Optional. Indicates whether natural language memory generation should be disabled for all requests. By default, natural language memory generation is enabled. Set this to `true` when you only want to generate structured memories.", + "type": "boolean" + }, "enableThirdPersonMemories": { - "description": "Optional. If true, then the memories will be generated in the third person (i.e. \"The user generates memories with Memory Bank.\"). By default, the memories will be generated in the first person (i.e. \"I generate memories with Memory Bank.\")", + "description": "Optional. Indicates whether the memories will be generated in the third person (i.e. \"The user generates memories with Memory Bank.\"). By default, the memories will be generated in the first person (i.e. \"I generate memories with Memory Bank.\")", "type": "boolean" }, "generateMemoriesExamples": { - "description": "Optional. Examples of how to generate memories for a particular scope.", + "description": "Optional. Provides examples of how to generate memories for a particular scope.", "items": { "$ref": "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigGenerateMemoriesExample" }, "type": "array" }, "memoryTopics": { - "description": "Optional. Topics of information that should be extracted from conversations and stored as memories. If not set, then Memory Bank's default topics will be used.", + "description": "Optional. Represents topics of information that should be extracted from conversations and stored as memories. If not set, then Memory Bank's default topics will be used.", "items": { "$ref": "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigMemoryTopic" }, "type": "array" }, "scopeKeys": { - "description": "Optional. The scope keys (i.e. 'user_id') for which to use this config. A request's scope must include all of the provided keys for the config to be used (order does not matter). If empty, then the config will be used for all requests that do not have a more specific config. Only one default config is allowed per Memory Bank.", + "description": "Optional. Represents the scope keys (i.e. 'user_id') for which to use this config. A request's scope must include all of the provided keys for the config to be used (order does not matter). If empty, then the config will be used for all requests that do not have a more specific config. Only one default config is allowed per Memory Bank.", "items": { "type": "string" }, @@ -54787,6 +62783,18 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigConsolidationConfig": { + "description": "Represents configuration for customizing how memories are consolidated.", + "id": "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigConsolidationConfig", + "properties": { + "revisionsPerCandidateCount": { + "description": "Optional. Represents the maximum number of revisions to consider for each candidate memory. If not set, then the default value (1) will be used, which means that only the latest revision will be considered.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigGenerateMemoriesExample": { "description": "An example of how to generate memories for a particular scope.", "id": "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigGenerateMemoriesExample", @@ -54796,7 +62804,7 @@ "description": "A conversation source for the example." }, "generatedMemories": { - "description": "Optional. The memories that are expected to be generated from the input conversation. An empty list indicates that no memories are expected to be generated for the input conversation.", + "description": "Optional. Represents the memories that are expected to be generated from the input conversation. An empty list indicates that no memories are expected to be generated for the input conversation.", "items": { "$ref": "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigGenerateMemoriesExampleGeneratedMemory" }, @@ -54810,7 +62818,7 @@ "id": "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigGenerateMemoriesExampleConversationSource", "properties": { "events": { - "description": "Optional. The input conversation events for the example.", + "description": "Optional. Represents the input conversation events for the example.", "items": { "$ref": "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigGenerateMemoriesExampleConversationSourceEvent" }, @@ -54825,7 +62833,7 @@ "properties": { "content": { "$ref": "GoogleCloudAiplatformV1beta1Content", - "description": "Required. The content of the event." + "description": "Required. Represents the content of the event." } }, "type": "object" @@ -54835,11 +62843,11 @@ "id": "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigGenerateMemoriesExampleGeneratedMemory", "properties": { "fact": { - "description": "Required. The fact to generate a memory from.", + "description": "Required. Represents the fact to generate a memory from.", "type": "string" }, "topics": { - "description": "Optional. The list of topics that the memory should be associated with. For example, use `custom_memory_topic_label = \"jargon\"` if the extracted memory is an example of memory extraction for the custom topic `jargon`.", + "description": "Optional. Represents the list of topics that the memory should be associated with. For example, use `custom_memory_topic_label = \"jargon\"` if the extracted memory is an example of memory extraction for the custom topic `jargon`.", "items": { "$ref": "GoogleCloudAiplatformV1beta1MemoryTopicId" }, @@ -54868,11 +62876,11 @@ "id": "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigMemoryTopicCustomMemoryTopic", "properties": { "description": { - "description": "Required. Description of the memory topic. This should explain what information should be extracted for this topic.", + "description": "Required. Represents the description of the memory topic. This should explain what information should be extracted for this topic.", "type": "string" }, "label": { - "description": "Required. The label of the topic.", + "description": "Required. Represents the label of the topic.", "type": "string" } }, @@ -54883,7 +62891,7 @@ "id": "GoogleCloudAiplatformV1beta1MemoryBankCustomizationConfigMemoryTopicManagedMemoryTopic", "properties": { "managedTopicEnum": { - "description": "Required. The managed topic.", + "description": "Required. Represents the managed topic.", "enum": [ "MANAGED_TOPIC_ENUM_UNSPECIFIED", "USER_PERSONAL_INFO", @@ -54892,11 +62900,11 @@ "EXPLICIT_INSTRUCTIONS" ], "enumDescriptions": [ - "Unspecified topic. This value should not be used.", - "Significant personal information about the User like first names, relationships, hobbies, important dates.", - "Stated or implied likes, dislikes, preferred styles, or patterns.", - "Important milestones or conclusions within the dialogue.", - "Information that the user explicitly requested to remember or forget." + "Represents an unspecified topic. This value should not be used.", + "Represents significant personal information about the User like first names, relationships, hobbies, important dates.", + "Represents stated or implied likes, dislikes, preferred styles, or patterns.", + "Represents important milestones or conclusions within the dialogue.", + "Represents information that the user explicitly requested to remember or forget." ], "type": "string" } @@ -54908,7 +62916,7 @@ "id": "GoogleCloudAiplatformV1beta1MemoryConjunctionFilter", "properties": { "filters": { - "description": "Filters that will combined using AND logic.", + "description": "Represents filters that will be combined using AND logic.", "items": { "$ref": "GoogleCloudAiplatformV1beta1MemoryFilter" }, @@ -54922,15 +62930,15 @@ "id": "GoogleCloudAiplatformV1beta1MemoryFilter", "properties": { "key": { - "description": "Key of the filter. For example, \"author\" would apply to `metadata` entries with the key \"author\".", + "description": "Represents the key of the filter. For example, \"author\" would apply to `metadata` entries with the key \"author\".", "type": "string" }, "negate": { - "description": "If true, the filter will be negated.", + "description": "Indicates whether the filter will be negated.", "type": "boolean" }, "op": { - "description": "Operator to apply to the filter. If not set, then EQUAL will be used.", + "description": "Represents the operator to apply to the filter. If not set, then EQUAL will be used.", "enum": [ "OPERATOR_UNSPECIFIED", "EQUAL", @@ -54938,7 +62946,7 @@ "LESS_THAN" ], "enumDescriptions": [ - "Unspecified operator. Defaults to EQUAL.", + "Represents an unspecified operator. Defaults to EQUAL.", "Equal to.", "Greater than.", "Less than." @@ -54947,7 +62955,40 @@ }, "value": { "$ref": "GoogleCloudAiplatformV1beta1MemoryMetadataValue", - "description": "Value to compare to." + "description": "Represents the value to compare to." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1MemoryGenerationTriggerConfig": { + "description": "Represents configuration for triggering generation.", + "id": "GoogleCloudAiplatformV1beta1MemoryGenerationTriggerConfig", + "properties": { + "generationRule": { + "$ref": "GoogleCloudAiplatformV1beta1MemoryGenerationTriggerConfigGenerationTriggerRule", + "description": "Optional. Represents the active rule that determines when to flush the buffer. If not set, then the stream will be force flushed immediately." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1MemoryGenerationTriggerConfigGenerationTriggerRule": { + "description": "Represents the active rule that determines when to flush the buffer.", + "id": "GoogleCloudAiplatformV1beta1MemoryGenerationTriggerConfigGenerationTriggerRule", + "properties": { + "eventCount": { + "description": "Optional. Specifies to trigger generation when the event count reaches this limit.", + "format": "int32", + "type": "integer" + }, + "fixedInterval": { + "description": "Optional. Specifies to trigger generation at a fixed interval. The duration must have a minute-level granularity.", + "format": "google-duration", + "type": "string" + }, + "idleDuration": { + "description": "Optional. Specifies to trigger generation if the stream is inactive for the specified duration after the most recent event. The duration must have a minute-level granularity.", + "format": "google-duration", + "type": "string" } }, "type": "object" @@ -54957,44 +62998,63 @@ "id": "GoogleCloudAiplatformV1beta1MemoryMetadataValue", "properties": { "boolValue": { - "description": "Boolean value.", + "description": "Represents a boolean value.", "type": "boolean" }, "doubleValue": { - "description": "Double value.", + "description": "Represents a double value.", "format": "double", "type": "number" }, "stringValue": { - "description": "String value.", + "description": "Represents a string value.", "type": "string" }, "timestampValue": { - "description": "Timestamp value. When filtering on timestamp values, only the seconds field will be compared.", + "description": "Represents a timestamp value. When filtering on timestamp values, only the seconds field will be compared.", "format": "google-datetime", "type": "string" } }, "type": "object" }, + "GoogleCloudAiplatformV1beta1MemoryProfile": { + "description": "A memory profile.", + "id": "GoogleCloudAiplatformV1beta1MemoryProfile", + "properties": { + "profile": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Represents the profile data.", + "type": "object" + }, + "schemaId": { + "description": "Represents the ID of the schema. This ID corresponds to the `schema_id` defined inside the SchemaConfig, under StructuredMemoryCustomizationConfig.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1MemoryRevision": { "description": "A revision of a Memory.", "id": "GoogleCloudAiplatformV1beta1MemoryRevision", "properties": { "createTime": { - "description": "Output only. Timestamp when this Memory Revision was created.", + "description": "Output only. Represents the timestamp when this Memory Revision was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "expireTime": { - "description": "Output only. Timestamp of when this resource is considered expired.", + "description": "Output only. Represents the timestamp of when this resource is considered expired.", "format": "google-datetime", "readOnly": true, "type": "string" }, "extractedMemories": { - "description": "Output only. The extracted memories from the source content before consolidation when the memory was updated via GenerateMemories. This information was used to modify an existing Memory via Consolidation.", + "description": "Output only. Represents the extracted memories from the source content before consolidation when the memory was updated via GenerateMemories. This information was used to modify an existing Memory via Consolidation.", "items": { "$ref": "GoogleCloudAiplatformV1beta1IntermediateExtractedMemory" }, @@ -55002,7 +63062,7 @@ "type": "array" }, "fact": { - "description": "Output only. The fact of the Memory Revision. This corresponds to the `fact` field of the parent Memory at the time of revision creation.", + "description": "Output only. Represents the fact of the Memory Revision. This corresponds to the `fact` field of the parent Memory at the time of revision creation.", "readOnly": true, "type": "string" }, @@ -55010,12 +63070,40 @@ "additionalProperties": { "type": "string" }, - "description": "Output only. The labels of the Memory Revision. These labels are applied to the MemoryRevision when it is created based on `GenerateMemoriesRequest.revision_labels`.", + "description": "Output only. Represents the labels of the Memory Revision. These labels are applied to the MemoryRevision when it is created based on `GenerateMemoriesRequest.revision_labels`.", "readOnly": true, "type": "object" }, "name": { - "description": "Identifier. The resource name of the Memory Revision. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}/revisions/{memory_revision}`", + "description": "Identifier. Represents the resource name of the Memory Revision. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}/revisions/{memory_revision}`", + "type": "string" + }, + "structuredData": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. Represents the structured value of the memory at the time of revision creation.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1MemoryStructuredContent": { + "description": "Represents the structured value of the memory.", + "id": "GoogleCloudAiplatformV1beta1MemoryStructuredContent", + "properties": { + "data": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Required. Represents the structured value of the memory.", + "type": "object" + }, + "schemaId": { + "description": "Required. Represents the schema ID for which this structured memory belongs to.", "type": "string" } }, @@ -55026,11 +63114,11 @@ "id": "GoogleCloudAiplatformV1beta1MemoryTopicId", "properties": { "customMemoryTopicLabel": { - "description": "Optional. The custom memory topic label.", + "description": "Optional. Represents the custom memory topic label.", "type": "string" }, "managedMemoryTopic": { - "description": "Optional. The managed memory topic.", + "description": "Optional. Represents the managed memory topic.", "enum": [ "MANAGED_TOPIC_ENUM_UNSPECIFIED", "USER_PERSONAL_INFO", @@ -55039,11 +63127,11 @@ "EXPLICIT_INSTRUCTIONS" ], "enumDescriptions": [ - "Unspecified topic. This value should not be used.", - "Significant personal information about the User like first names, relationships, hobbies, important dates.", - "Stated or implied likes, dislikes, preferred styles, or patterns.", - "Important milestones or conclusions within the dialogue.", - "Information that the user explicitly requested to remember or forget." + "Represents an unspecified topic. This value should not be used.", + "Represents significant personal information about the User like first names, relationships, hobbies, important dates.", + "Represents stated or implied likes, dislikes, preferred styles, or patterns.", + "Represents important milestones or conclusions within the dialogue.", + "Represents information that the user explicitly requested to remember or forget." ], "type": "string" } @@ -55293,6 +63381,10 @@ "$ref": "GoogleCloudAiplatformV1beta1LLMBasedMetricSpec", "description": "Spec for an LLM based metric." }, + "metadata": { + "$ref": "GoogleCloudAiplatformV1beta1MetricMetadata", + "description": "Optional. Metadata about the metric, used for visualization and organization." + }, "pairwiseMetricSpec": { "$ref": "GoogleCloudAiplatformV1beta1PairwiseMetricSpec", "description": "Spec for pairwise metric." @@ -55312,6 +63404,55 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1MetricMetadata": { + "description": "Metadata about the metric, used for visualization and organization.", + "id": "GoogleCloudAiplatformV1beta1MetricMetadata", + "properties": { + "otherMetadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. Flexible metadata for user-defined attributes.", + "type": "object" + }, + "scoreRange": { + "$ref": "GoogleCloudAiplatformV1beta1MetricMetadataScoreRange", + "description": "Optional. The range of possible scores for this metric, used for plotting." + }, + "title": { + "description": "Optional. The user-friendly name for the metric. If not set for a registered metric, it will default to the metric's display name.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1MetricMetadataScoreRange": { + "description": "The range of possible scores for this metric, used for plotting.", + "id": "GoogleCloudAiplatformV1beta1MetricMetadataScoreRange", + "properties": { + "description": { + "description": "Optional. The description of the score explaining the directionality etc.", + "type": "string" + }, + "max": { + "description": "Required. The maximum value of the score range (inclusive).", + "format": "double", + "type": "number" + }, + "min": { + "description": "Required. The minimum value of the score range (inclusive).", + "format": "double", + "type": "number" + }, + "step": { + "description": "Optional. The distance between discrete steps in the range. If unset, the range is assumed to be continuous.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1MetricResult": { "description": "Result for a single metric on a single instance.", "id": "GoogleCloudAiplatformV1beta1MetricResult", @@ -55343,6 +63484,21 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1MetricSource": { + "description": "The metric source used for evaluation.", + "id": "GoogleCloudAiplatformV1beta1MetricSource", + "properties": { + "metric": { + "$ref": "GoogleCloudAiplatformV1beta1Metric", + "description": "Inline metric config." + }, + "metricResourceName": { + "description": "Optional. Resource name for registered metric.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1MetricxInput": { "description": "Input for MetricX metric.", "id": "GoogleCloudAiplatformV1beta1MetricxInput", @@ -55437,7 +63593,8 @@ }, "dataLabelingDataset": { "$ref": "GoogleCloudAiplatformV1beta1MigratableResourceDataLabelingDataset", - "description": "Output only. Represents one Dataset in datalabeling.googleapis.com.", + "deprecated": true, + "description": "Output only. Deprecated: Data Labeling Dataset migration is no longer supported. Represents one Dataset in datalabeling.googleapis.com.", "readOnly": true }, "lastMigrateTime": { @@ -55787,7 +63944,7 @@ "readOnly": true }, "name": { - "description": "The resource name of the Model.", + "description": "Identifier. The resource name of the Model.", "type": "string" }, "originalModelInfo": { @@ -59049,6 +67206,216 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1OnlineEvaluator": { + "description": "An OnlineEvaluator contains the configuration for an Online Evaluation.", + "id": "GoogleCloudAiplatformV1beta1OnlineEvaluator", + "properties": { + "agentResource": { + "description": "Required. Immutable. The name of the agent that the OnlineEvaluator evaluates periodically. This value is used to filter the traces with a matching cloud.resource_id and link the evaluation results with relevant dashboards/UIs. This field is immutable. Once set, it cannot be changed.", + "type": "string" + }, + "cloudObservability": { + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservability", + "description": "Data source for the OnlineEvaluator, based on GCP Observability stack (Cloud Trace & Cloud Logging)." + }, + "config": { + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluatorConfig", + "description": "Required. Configuration for the OnlineEvaluator." + }, + "createTime": { + "description": "Output only. Timestamp when the OnlineEvaluator was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Optional. Human-readable name for the `OnlineEvaluator`. The name doesn't have to be unique. The name can consist of any UTF-8 characters. The maximum length is `63` characters. If the display name exceeds max characters, an `INVALID_ARGUMENT` error is returned.", + "type": "string" + }, + "metricSources": { + "description": "Required. A list of metric sources to be used for evaluating samples. At least one MetricSource must be provided. Right now, only predefined metrics and registered metrics are supported. Every registered metric must have `display_name` (or `title`) and `score_range` defined. Otherwise, the evaluations will fail. The maximum number of `metric_sources` is 25.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1MetricSource" + }, + "type": "array" + }, + "name": { + "description": "Identifier. The resource name of the OnlineEvaluator. Format: projects/{project}/locations/{location}/onlineEvaluators/{id}.", + "type": "string" + }, + "state": { + "description": "Output only. The state of the OnlineEvaluator.", + "enum": [ + "STATE_UNSPECIFIED", + "ACTIVE", + "SUSPENDED", + "FAILED", + "WARNING" + ], + "enumDescriptions": [ + "Default value.", + "Indicates that the OnlineEvaluator is active.", + "Indicates that the OnlineEvaluator is suspended. In this state, the OnlineEvaluator will not evaluate any samples.", + "Indicates that the OnlineEvaluator is in a failed state. This can happen if, for example, the `log_view` or `trace_view` set on the `CloudObservability` does not exist.", + "Indicates that the OnlineEvaluator is in a warning state. This can happen if, for example, some of the metrics in the `metric_sources` are invalid. Evaluation will still run with the remaining valid metrics." + ], + "readOnly": true, + "type": "string" + }, + "stateDetails": { + "description": "Output only. Contains additional information about the state of the OnlineEvaluator. This is used to provide more details in the event of a failure.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluatorStateDetails" + }, + "readOnly": true, + "type": "array" + }, + "updateTime": { + "description": "Output only. Timestamp when the OnlineEvaluator was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservability": { + "description": "Data source for the OnlineEvaluator, based on GCP Observability stack (Cloud Trace & Cloud Logging).", + "id": "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservability", + "properties": { + "logView": { + "description": "Optional. Optional log view that will be used to query logs. If empty, the `_Default` view will be used.", + "type": "string" + }, + "openTelemetry": { + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityOpenTelemetry", + "description": "Data source follows OpenTelemetry convention." + }, + "traceScope": { + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityTraceScope", + "description": "Scope online evaluation to single traces." + }, + "traceView": { + "description": "Optional. Optional trace view that will be used to query traces. If empty, the `_Default` view will be used. NOTE: This field is not supported yet and will be ignored if set.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityNumericPredicate": { + "description": "Defines a predicate for filtering based on a numeric value.", + "id": "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityNumericPredicate", + "properties": { + "comparisonOperator": { + "description": "Required. The comparison operator to apply.", + "enum": [ + "COMPARISON_OPERATOR_UNSPECIFIED", + "LESS", + "LESS_OR_EQUAL", + "EQUAL", + "NOT_EQUAL", + "GREATER_OR_EQUAL", + "GREATER" + ], + "enumDescriptions": [ + "Unspecified comparison operator. This value should not be used.", + "Less than.", + "Less than or equal to.", + "Equal to.", + "Not equal to.", + "Greater than or equal to.", + "Greater than." + ], + "type": "string" + }, + "value": { + "description": "Required. The value to compare against.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityOpenTelemetry": { + "description": "Configuration for data source following OpenTelemetry.", + "id": "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityOpenTelemetry", + "properties": { + "semconvVersion": { + "description": "Required. Defines which version OTel Semantic Convention the data follows. Can be \"1.39.0\" or newer.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityTraceScope": { + "description": "If chosen, the online evaluator will evaluate single traces matching specified `filter`.", + "id": "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityTraceScope", + "properties": { + "filter": { + "description": "Optional. A list of predicates to filter traces. Multiple predicates are combined using AND. The maximum number of predicates is 10.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityTraceScopePredicate" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityTraceScopePredicate": { + "description": "Defines a single filter predicate.", + "id": "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityTraceScopePredicate", + "properties": { + "duration": { + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityNumericPredicate", + "description": "Filter on the duration of a trace." + }, + "totalTokenUsage": { + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluatorCloudObservabilityNumericPredicate", + "description": "Filter on the total token usage within a trace." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1OnlineEvaluatorConfig": { + "description": "Configuration for sampling behavior of the OnlineEvaluator. The OnlineEvaluator runs at a fixed interval of 10 minutes.", + "id": "GoogleCloudAiplatformV1beta1OnlineEvaluatorConfig", + "properties": { + "maxEvaluatedSamplesPerRun": { + "description": "Optional. The maximum number of evaluations to perform per run. If set to 0, the number is unbounded.", + "format": "int64", + "type": "string" + }, + "randomSampling": { + "$ref": "GoogleCloudAiplatformV1beta1OnlineEvaluatorConfigRandomSampling", + "description": "Random sampling method." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1OnlineEvaluatorConfigRandomSampling": { + "description": "Configuration for random sampling.", + "id": "GoogleCloudAiplatformV1beta1OnlineEvaluatorConfigRandomSampling", + "properties": { + "percentage": { + "description": "Required. The percentage of traces to sample for evaluation. Must be an integer between `1` and `100`.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1OnlineEvaluatorStateDetails": { + "description": "Contains additional information about the state of the OnlineEvaluator.", + "id": "GoogleCloudAiplatformV1beta1OnlineEvaluatorStateDetails", + "properties": { + "message": { + "description": "Output only. Human-readable message describing the state of the OnlineEvaluator.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1OptimizePromptRequest": { "description": "Request message for GenAiTuningService.OptimizePrompt.", "id": "GoogleCloudAiplatformV1beta1OptimizePromptRequest", @@ -59102,11 +67469,11 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1OutputFieldSpec": { - "description": "Defines a specification for a single output field.", + "description": "Specifies the properties of a single field that are included in each generated synthetic example. This helps the model understand what kind of data to generate for each field.", "id": "GoogleCloudAiplatformV1beta1OutputFieldSpec", "properties": { "fieldName": { - "description": "Required. The name of the output field.", + "description": "Required. The name of this field in the generated synthetic data, such as \"email_subject\" or \"customer_review\".", "type": "string" }, "fieldType": { @@ -59119,16 +67486,16 @@ "AUDIO" ], "enumDescriptions": [ - "Field type is unspecified.", - "Arbitrary content field type.", - "Text field type.", - "Image field type.", - "Audio field type." + "The field type is not specified. Defaults to CONTENT.", + "The field can contain any type of content, including text, images, and audio.", + "The field contains only text.", + "The field contains image data.", + "The field contains audio data." ], "type": "string" }, "guidance": { - "description": "Optional. Optional, but recommended. Additional guidance specific to this field to provide targeted instructions for the LLM to generate the content of a single output field. While the LLM can sometimes infer content from the field name, providing explicit guidance is preferred.", + "description": "Optional. Specific instructions for the large language model on how to generate content for this particular field. While the LLM can sometimes infer content from the field name, providing explicit guidance is preferred. For example, for a field named \"review\", the guidance could be \"A positive review about a coffee maker.\"", "type": "string" } }, @@ -60547,6 +68914,13 @@ }, "type": "array" }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels with user-defined metadata for the request. It is used for billing and reporting only. Label keys and values can be no longer than 63 characters (Unicode codepoints) and can only contain lowercase letters, numeric characters, underscores, and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter.", + "type": "object" + }, "parameters": { "description": "Optional. The parameters that govern the prediction. The schema of the parameters may be specified via Endpoint's DeployedModels' Model's PredictSchemata's parameters_schema_uri.", "type": "any" @@ -61121,7 +69495,7 @@ "type": "string" }, "name": { - "description": "Output only. The resource name of the PublisherModel.", + "description": "Output only. Identifier. The resource name of the PublisherModel.", "readOnly": true, "type": "string" }, @@ -62121,6 +70495,14 @@ "description": "A RagChunk includes the content of a chunk of a RagFile, and associated metadata.", "id": "GoogleCloudAiplatformV1beta1RagChunk", "properties": { + "chunkId": { + "description": "The ID of the chunk.", + "type": "string" + }, + "fileId": { + "description": "The ID of the file that the chunk belongs to.", + "type": "string" + }, "pageSpan": { "$ref": "GoogleCloudAiplatformV1beta1RagChunkPageSpan", "description": "If populated, represents where the chunk starts and ends in the document." @@ -63473,6 +71855,10 @@ "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineSpec", "description": "Optional. Configurations of the ReasoningEngine" }, + "trafficConfig": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineTrafficConfig", + "description": "Optional. Traffic distribution configuration for the Reasoning Engine." + }, "updateTime": { "description": "Output only. Timestamp when this ReasoningEngine was most recently updated.", "format": "google-datetime", @@ -63516,6 +71902,13 @@ "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineContextSpecMemoryBankConfigSimilaritySearchConfig", "description": "Optional. Configuration for how to perform similarity search on memories. If not set, the Memory Bank will use the default embedding model `text-embedding-005`." }, + "structuredMemoryConfigs": { + "description": "Optional. Configuration for organizing structured memories for a particular scope.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1StructuredMemoryConfig" + }, + "type": "array" + }, "ttlConfig": { "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineContextSpecMemoryBankConfigTtlConfig", "description": "Optional. Configuration for automatic TTL (\"time-to-live\") of the memories in the Memory Bank. If not set, TTL will not be applied automatically. The TTL can be explicitly set by modifying the `expire_time` of each Memory resource." @@ -63527,8 +71920,12 @@ "description": "Configuration for how to generate memories.", "id": "GoogleCloudAiplatformV1beta1ReasoningEngineContextSpecMemoryBankConfigGenerationConfig", "properties": { + "generationTriggerConfig": { + "$ref": "GoogleCloudAiplatformV1beta1MemoryGenerationTriggerConfig", + "description": "Optional. Specifies the default trigger configuration for generating memories using `IngestEvents`." + }, "model": { - "description": "Required. The model used to generate memories. Format: `projects/{project}/locations/{location}/publishers/google/models/{model}`.", + "description": "Optional. The model used to generate memories. Format: `projects/{project}/locations/{location}/publishers/google/models/{model}`.", "type": "string" } }, @@ -63588,6 +71985,42 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ReasoningEngineRuntimeRevision": { + "description": "ReasoningEngineRuntimeRevision is a specific version of the runtime related part of ReasoningEngine. Contains only the fields that are revision specific.", + "id": "GoogleCloudAiplatformV1beta1ReasoningEngineRuntimeRevision", + "properties": { + "createTime": { + "description": "Output only. Timestamp when this ReasoningEngineRuntimeRevision was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the ReasoningEngineRuntimeRevision. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/runtimeRevisions/{runtime_revision}`", + "type": "string" + }, + "spec": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineSpec", + "description": "Immutable. Configurations of the ReasoningEngineRuntimeRevision. Contains only revision specific fields." + }, + "state": { + "description": "Output only. The state of the revision.", + "enum": [ + "STATE_UNSPECIFIED", + "ACTIVE", + "DEPRECATED" + ], + "enumDescriptions": [ + "The unspecified state.", + "Is deployed and ready to be used.", + "Is deprecated, may not be used, only preserved for historical purposes." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ReasoningEngineSpec": { "description": "ReasoningEngine configurations", "id": "GoogleCloudAiplatformV1beta1ReasoningEngineSpec", @@ -63615,6 +72048,10 @@ }, "type": "array" }, + "containerSpec": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecContainerSpec", + "description": "Deploy from a container image with a defined entrypoint and commands." + }, "deploymentSpec": { "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecDeploymentSpec", "description": "Optional. The specification of a Reasoning Engine deployment." @@ -63653,10 +72090,25 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ReasoningEngineSpecContainerSpec": { + "description": "Specification for deploying from a container image.", + "id": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecContainerSpec", + "properties": { + "imageUri": { + "description": "Required. The Artifact Registry Docker image URI (e.g., us-central1-docker.pkg.dev/my-project/my-repo/my-image:tag) of the container image that is to be run on each worker replica.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ReasoningEngineSpecDeploymentSpec": { "description": "The specification of a Reasoning Engine deployment.", "id": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecDeploymentSpec", "properties": { + "agentGatewayConfig": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecDeploymentSpecAgentGatewayConfig", + "description": "Optional. Agent Gateway configuration for the Reasoning Engine deployment." + }, "agentServerMode": { "description": "The agent server mode.", "enum": [ @@ -63683,13 +72135,17 @@ }, "type": "array" }, + "keepAliveProbe": { + "$ref": "GoogleCloudAiplatformV1beta1KeepAliveProbe", + "description": "Optional. Specifies the configuration for keep-alive probe. Contains configuration on a specified endpoint that a deployment host should use to keep the container alive based on the probe settings." + }, "maxInstances": { "description": "Optional. The maximum number of application instances that can be launched to handle increased traffic. Defaults to 100. Range: [1, 1000]. If VPC-SC or PSC-I is enabled, the acceptable range is [1, 100].", "format": "int32", "type": "integer" }, "minInstances": { - "description": "Optional. The minimum number of application instances that will be kept running at all times. Defaults to 1. Range: [0, 10].", + "description": "Optional. The minimum number of application instances that will be kept running at all times. Defaults to 1. Range: [0, 75].", "format": "int32", "type": "integer" }, @@ -63714,6 +72170,43 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ReasoningEngineSpecDeploymentSpecAgentGatewayConfig": { + "description": "Agent Gateway configuration for a Reasoning Engine deployment.", + "id": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecDeploymentSpecAgentGatewayConfig", + "properties": { + "agentToAnywhereConfig": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecDeploymentSpecAgentGatewayConfigAgentToAnywhereConfig", + "description": "Optional. Configuration for traffic originating from the Reasoning Engine. When unset, outgoing traffic is not routed through an Agent Gateway." + }, + "clientToAgentConfig": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecDeploymentSpecAgentGatewayConfigClientToAgentConfig", + "description": "Optional. Configuration for traffic targeting the Reasoning Engine. When unset, incoming traffic is not routed through an Agent Gateway." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ReasoningEngineSpecDeploymentSpecAgentGatewayConfigAgentToAnywhereConfig": { + "description": "Configuration for traffic originating from a Reasoning Engine.", + "id": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecDeploymentSpecAgentGatewayConfigAgentToAnywhereConfig", + "properties": { + "agentGateway": { + "description": "Required. The resource name of the Agent Gateway for outbound traffic. It must be set to a Google-managed gateway whose `governed_access_path` is `AGENT_TO_ANYWHERE`. Format: `projects/{project}/locations/{location}/agentGateways/{agent_gateway}`", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ReasoningEngineSpecDeploymentSpecAgentGatewayConfigClientToAgentConfig": { + "description": "Configuration for traffic targeting a Reasoning Engine.", + "id": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecDeploymentSpecAgentGatewayConfigClientToAgentConfig", + "properties": { + "agentGateway": { + "description": "Required. The resource name of the Agent Gateway to use for inbound traffic. It must be set to a Google-managed gateway whose `governed_access_path` is `CLIENT_TO_AGENT`. Format: `projects/{project}/locations/{location}/agentGateways/{agent_gateway}`", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ReasoningEngineSpecPackageSpec": { "description": "User-provided package specification, containing pickled object and package requirements.", "id": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecPackageSpec", @@ -63741,6 +72234,10 @@ "description": "Specification for deploying from source code.", "id": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecSourceCodeSpec", "properties": { + "agentConfigSource": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecSourceCodeSpecAgentConfigSource", + "description": "Source code is generated from the agent config." + }, "developerConnectSource": { "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecSourceCodeSpecDeveloperConnectSource", "description": "Source code is in a Git repository managed by Developer Connect." @@ -63760,6 +72257,36 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ReasoningEngineSpecSourceCodeSpecAgentConfigSource": { + "description": "Specification for the deploying from agent config.", + "id": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecSourceCodeSpecAgentConfigSource", + "properties": { + "adkConfig": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecSourceCodeSpecAgentConfigSourceAdkConfig", + "description": "Required. The ADK configuration." + }, + "inlineSource": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecSourceCodeSpecInlineSource", + "description": "Optional. Any additional files needed to interpret the config. If a `requirements.txt` file is present in the `inline_source`, the corresponding packages will be installed. If no `requirements.txt` file is present in `inline_source`, then the latest version of `google-adk` will be installed for interpreting the ADK config." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ReasoningEngineSpecSourceCodeSpecAgentConfigSourceAdkConfig": { + "description": "Configuration for the Agent Development Kit (ADK).", + "id": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecSourceCodeSpecAgentConfigSourceAdkConfig", + "properties": { + "jsonConfig": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Required. The value of the ADK config in JSON format.", + "type": "object" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ReasoningEngineSpecSourceCodeSpecDeveloperConnectConfig": { "description": "Specifies the configuration for fetching source code from a Git repository that is managed by Developer Connect. This includes the repository, revision, and directory to use.", "id": "GoogleCloudAiplatformV1beta1ReasoningEngineSpecSourceCodeSpecDeveloperConnectConfig", @@ -63839,6 +72366,57 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ReasoningEngineTrafficConfig": { + "description": "Traffic distribution configuration.", + "id": "GoogleCloudAiplatformV1beta1ReasoningEngineTrafficConfig", + "properties": { + "trafficSplitAlwaysLatest": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineTrafficConfigTrafficSplitAlwaysLatest", + "description": "Optional. Traffic distribution configuration, where all traffic is sent to the latest Runtime Revision." + }, + "trafficSplitManual": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineTrafficConfigTrafficSplitManual", + "description": "Optional. Manual traffic distribution configuration, where the user specifies the Runtime Revision IDs and the percentage of traffic to send to each." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ReasoningEngineTrafficConfigTrafficSplitAlwaysLatest": { + "description": "Traffic distribution configuration, where all traffic is sent to the latest Runtime Revision.", + "id": "GoogleCloudAiplatformV1beta1ReasoningEngineTrafficConfigTrafficSplitAlwaysLatest", + "properties": {}, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ReasoningEngineTrafficConfigTrafficSplitManual": { + "description": "Manual traffic distribution configuration, where the user specifies the Runtime Revision IDs and the percentage of traffic to send to each.", + "id": "GoogleCloudAiplatformV1beta1ReasoningEngineTrafficConfigTrafficSplitManual", + "properties": { + "targets": { + "description": "A list of traffic targets for the Runtimes Revisions. The sum of percentages must equal to 100.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1ReasoningEngineTrafficConfigTrafficSplitManualTarget" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ReasoningEngineTrafficConfigTrafficSplitManualTarget": { + "description": "A single target for the traffic split, specifying a Runtime Revision and the percentage of traffic to send to it.", + "id": "GoogleCloudAiplatformV1beta1ReasoningEngineTrafficConfigTrafficSplitManualTarget", + "properties": { + "percent": { + "description": "Required. Specifies percent of the traffic to this Runtime Revision.", + "format": "int32", + "type": "integer" + }, + "runtimeRevisionName": { + "description": "Required. The Runtime Revision name to which to send this portion of traffic, if traffic allocation is by Runtime Revision.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1RebaseTunedModelRequest": { "description": "Request message for GenAiTuningService.RebaseTunedModel.", "id": "GoogleCloudAiplatformV1beta1RebaseTunedModelRequest", @@ -64446,6 +73024,17 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1RetrieveExpressProjectResponse": { + "description": "Response message for ExpressModeService.RetrieveExpressProject.", + "id": "GoogleCloudAiplatformV1beta1RetrieveExpressProjectResponse", + "properties": { + "expressProject": { + "$ref": "GoogleCloudAiplatformV1beta1ExpressProject", + "description": "The project for Vertex AI Express Mode." + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1RetrieveMemoriesRequest": { "description": "Request message for MemoryBankService.RetrieveMemories.", "id": "GoogleCloudAiplatformV1beta1RetrieveMemoriesRequest", @@ -64461,6 +73050,23 @@ }, "type": "array" }, + "memoryTypes": { + "description": "Optional. Specifies the types of memories to retrieve. If this field is empty or not provided, the request will default to retrieving only memories of type `NATURAL_LANGUAGE_COLLECTION`. If populated, the request will retrieve memories matching any of the specified `MemoryType` values.", + "items": { + "enum": [ + "MEMORY_TYPE_UNSPECIFIED", + "NATURAL_LANGUAGE_COLLECTION", + "STRUCTURED_PROFILE" + ], + "enumDescriptions": [ + "Represents an unspecified memory type. This value should not be used.", + "Indicates belonging to a collection of natural language memories.", + "Indicates belonging to a structured profile." + ], + "type": "string" + }, + "type": "array" + }, "scope": { "additionalProperties": { "type": "string" @@ -64545,6 +73151,34 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1RetrieveProfilesRequest": { + "description": "Request message for MemoryBankService.RetrieveProfiles.", + "id": "GoogleCloudAiplatformV1beta1RetrieveProfilesRequest", + "properties": { + "scope": { + "additionalProperties": { + "type": "string" + }, + "description": "Required. The scope of the profiles to retrieve.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1RetrieveProfilesResponse": { + "description": "Response message for MemoryBankService.RetrieveProfiles.", + "id": "GoogleCloudAiplatformV1beta1RetrieveProfilesResponse", + "properties": { + "profiles": { + "additionalProperties": { + "$ref": "GoogleCloudAiplatformV1beta1MemoryProfile" + }, + "description": "The retrieved structured profiles, which match the schemas under the requested scope. The key is the ID of the schema that the profile is linked with, which corresponds to the `schema_id` defined inside the `SchemaConfig`, under `StructuredMemoryCustomizationConfig`.", + "type": "object" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1RollbackMemoryRequest": { "description": "Request message for MemoryBankService.RollbackMemory.", "id": "GoogleCloudAiplatformV1beta1RollbackMemoryRequest", @@ -65335,10 +73969,27 @@ "format": "google-datetime", "type": "string" }, + "latestSandboxEnvironmentSnapshot": { + "description": "Output only. The resource name of the latest snapshot taken for this SandboxEnvironment.", + "readOnly": true, + "type": "string" + }, "name": { "description": "Identifier. The name of the SandboxEnvironment.", "type": "string" }, + "owner": { + "description": "Optional. Owner information for this sandbox environment. A Sandbox can only be restored from a snapshot that belongs to the same owner. If not set, sandbox will be created as the default owner.", + "type": "string" + }, + "sandboxEnvironmentSnapshot": { + "description": "Optional. The resource name of the SandboxEnvironmentSnapshot to use for creating this SandboxEnvironment. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot}`", + "type": "string" + }, + "sandboxEnvironmentTemplate": { + "description": "Optional. The name of the SandboxEnvironmentTemplate specified in the parent Agent Engine resource that this SandboxEnvironment is created from. Only one of `sandbox_environment_template` and `spec` should be set.", + "type": "string" + }, "spec": { "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentSpec", "description": "Optional. The configuration of the SandboxEnvironment." @@ -65392,6 +74043,16 @@ "readOnly": true, "type": "string" }, + "routingToken": { + "description": "Output only. The routing token for the SandboxEnvironment.", + "readOnly": true, + "type": "string" + }, + "sandboxHostname": { + "description": "Output only. The hostname of the SandboxEnvironment.", + "readOnly": true, + "type": "string" + }, "sandboxInternalIp": { "description": "Output only. The internal IP address of the SandboxEnvironment.", "readOnly": true, @@ -65400,6 +74061,76 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1SandboxEnvironmentSnapshot": { + "description": "SandboxEnvironmentSnapshot is a snapshot of the SandboxEnvironment.", + "id": "GoogleCloudAiplatformV1beta1SandboxEnvironmentSnapshot", + "properties": { + "createTime": { + "description": "Output only. The timestamp when this SandboxEnvironmentSnapshot was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Required. The display name of the SandboxEnvironmentSnapshot.", + "type": "string" + }, + "expireTime": { + "description": "Optional. Timestamp in UTC of when this SandboxEnvironmentSnapshot is considered expired. This is *always* provided on output, regardless of what `expiration` was sent on input.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the SandboxEnvironmentSnapshot. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot}`", + "type": "string" + }, + "owner": { + "description": "Optional. Owner information for this sandbox snapshot. Different owners will have isolations on snapshot storage and identity. If not set, snapshot will be created as the default owner.", + "type": "string" + }, + "parentSnapshot": { + "description": "Output only. The resource name of the parent SandboxEnvironmentSnapshot. Empty if this is a root Snapshot (the first snapshot from a newly created sandbox). Can be used to reconstruct the whole ancestry tree of snapshots.", + "readOnly": true, + "type": "string" + }, + "postSnapshotAction": { + "description": "Optional. Input only. Action to take on the source SandboxEnvironment after the snapshot is taken. This field is only used in CreateSandboxEnvironmentSnapshotRequest and it is not stored in the resource.", + "enum": [ + "POST_SNAPSHOT_ACTION_UNSPECIFIED", + "RUNNING", + "PAUSE" + ], + "enumDescriptions": [ + "The default value. This value is unused.", + "Sandbox environment will continue to run after snapshot is taken.", + "Sandbox environment will be paused after snapshot is taken." + ], + "type": "string" + }, + "sizeBytes": { + "description": "Optional. Output only. Size of the snapshot data in bytes.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "sourceSandboxEnvironment": { + "description": "Required. The resource name of the source SandboxEnvironment this snapshot was taken from.", + "type": "string" + }, + "ttl": { + "description": "Optional. Input only. The TTL for the sandbox environment snapshot. The expiration time is computed: now + TTL.", + "format": "google-duration", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when this SandboxEnvironment was most recently updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1SandboxEnvironmentSpec": { "description": "The specification of a SandboxEnvironment.", "id": "GoogleCloudAiplatformV1beta1SandboxEnvironmentSpec", @@ -65454,6 +74185,176 @@ "properties": {}, "type": "object" }, + "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplate": { + "description": "The specification of a SandboxEnvironmentTemplate. A SandboxEnvironmentTemplate defines a template for creating SandboxEnvironments.", + "id": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplate", + "properties": { + "createTime": { + "description": "Output only. The timestamp when this SandboxEnvironmentTemplate was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "customContainerEnvironment": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateCustomContainerEnvironment", + "description": "The sandbox environment for custom container workloads." + }, + "defaultContainerEnvironment": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateDefaultContainerEnvironment", + "description": "The sandbox environment for default container workloads." + }, + "displayName": { + "description": "Required. The display name of the SandboxEnvironmentTemplate.", + "type": "string" + }, + "egressControlConfig": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateEgressControlConfig", + "description": "Optional. The configuration for egress control of this template." + }, + "name": { + "description": "Identifier. The resource name of the SandboxEnvironmentTemplate. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sandboxEnvironmentTemplates/{sandbox_environment_template}`", + "type": "string" + }, + "state": { + "description": "Output only. The state of the sandbox environment template.", + "enum": [ + "UNSPECIFIED", + "PROVISIONING", + "ACTIVE", + "DEPROVISIONING", + "DELETED", + "FAILED" + ], + "enumDescriptions": [ + "The default value. This value is unused.", + "Runtime resources are being allocated for the sandbox environment.", + "Sandbox runtime is ready for serving.", + "Sandbox runtime is halted, performing tear down tasks.", + "Sandbox has terminated with underlying runtime failure.", + "Sandbox has failed to provision." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when this SandboxEnvironmentTemplate was most recently updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateCustomContainerEnvironment": { + "description": "The customized sandbox runtime environment for BYOC.", + "id": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateCustomContainerEnvironment", + "properties": { + "customContainerSpec": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateCustomContainerSpec", + "description": "The specification of the custom container environment." + }, + "ports": { + "description": "Ports to expose from the container.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateNetworkPort" + }, + "type": "array" + }, + "resources": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateResourceRequirements", + "description": "Resource requests and limits for the container." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateCustomContainerSpec": { + "description": "Specification for deploying from a custom container image.", + "id": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateCustomContainerSpec", + "properties": { + "imageUri": { + "description": "Required. The Artifact Registry Docker image URI (e.g., us-central1-docker.pkg.dev/my-project/my-repo/my-image:tag) of the container image that is to be run on each worker replica.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateDefaultContainerEnvironment": { + "description": "The default sandbox runtime environment for default container workloads.", + "id": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateDefaultContainerEnvironment", + "properties": { + "defaultContainerCategory": { + "description": "Required. The category of the default container image.", + "enum": [ + "DEFAULT_CONTAINER_CATEGORY_UNSPECIFIED", + "DEFAULT_CONTAINER_CATEGORY_COMPUTER_USE" + ], + "enumDescriptions": [ + "The default value. This value is unused.", + "The default container image for Computer Use." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateEgressControlConfig": { + "description": "Configuration for egress control of sandbox instances.", + "id": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateEgressControlConfig", + "properties": { + "internetAccess": { + "description": "Optional. Whether to allow internet access.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateNetworkPort": { + "description": "Represents a network port in a container.", + "id": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateNetworkPort", + "properties": { + "port": { + "description": "Optional. Port number to expose. This must be a valid port number, between 1 and 65535.", + "format": "int32", + "type": "integer" + }, + "protocol": { + "description": "Optional. Protocol for port. Defaults to TCP if not specified.", + "enum": [ + "PROTOCOL_UNSPECIFIED", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "Unspecified protocol. Defaults to TCP.", + "TCP protocol.", + "UDP protocol." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateResourceRequirements": { + "description": "Message to define resource requests and limits (mirroring Kubernetes) for each sandbox instance created from this template.", + "id": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateResourceRequirements", + "properties": { + "limits": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The maximum amounts of compute resources allowed. Keys are resource names (e.g., \"cpu\", \"memory\"). Values are quantities (e.g., \"500m\", \"1Gi\").", + "type": "object" + }, + "requests": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The requested amounts of compute resources. Keys are resource names (e.g., \"cpu\", \"memory\"). Values are quantities (e.g., \"250m\", \"512Mi\").", + "type": "object" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1SavedQuery": { "description": "A SavedQuery is a view of the dataset. It references a subset of annotations by problem type and filters.", "id": "GoogleCloudAiplatformV1beta1SavedQuery", @@ -65752,7 +74653,7 @@ "type": "object" }, "description": { - "description": "Optional. Description of the schema.", + "description": "Optional. Describes the data. The model uses this field to understand the purpose of the schema and how to use it. It is a best practice to provide a clear and descriptive explanation for the schema and its properties here, rather than in the prompt.", "type": "string" }, "enum": { @@ -66838,6 +75739,47 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1SchemaMultimodalDatasetMetadata": { + "description": "The metadata of Multimodal Datasets.", + "id": "GoogleCloudAiplatformV1beta1SchemaMultimodalDatasetMetadata", + "properties": { + "geminiRequestReadConfig": { + "$ref": "GoogleCloudAiplatformV1beta1GeminiRequestReadConfig", + "description": "The configuration for how to read Gemini requests from the dataset." + }, + "inputConfig": { + "$ref": "GoogleCloudAiplatformV1beta1SchemaMultimodalDatasetMetadataMultimodalDatasetInputConfig", + "description": "Specifies the input source and configuration." + }, + "keyColumnName": { + "description": "The name of the column in the BigQuery table that contains the keys of the rows.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1SchemaMultimodalDatasetMetadataBigQuerySource": { + "description": "Specifies the BigQuery source.", + "id": "GoogleCloudAiplatformV1beta1SchemaMultimodalDatasetMetadataBigQuerySource", + "properties": { + "uri": { + "description": "The URI of a BigQuery table. e.g. bq://project.bqDataset.bqTable", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1SchemaMultimodalDatasetMetadataMultimodalDatasetInputConfig": { + "description": "Specifies the input source and configuration.", + "id": "GoogleCloudAiplatformV1beta1SchemaMultimodalDatasetMetadataMultimodalDatasetInputConfig", + "properties": { + "bigquerySource": { + "$ref": "GoogleCloudAiplatformV1beta1SchemaMultimodalDatasetMetadataBigQuerySource", + "description": "BigQuery source table." + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1SchemaPredictInstanceImageClassificationPredictionInstance": { "description": "Prediction input format for Image Classification.", "id": "GoogleCloudAiplatformV1beta1SchemaPredictInstanceImageClassificationPredictionInstance", @@ -67778,6 +76720,20 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1SchemaPromptSpecInteractionData": { + "description": "Defines data for an interaction prompt.", + "id": "GoogleCloudAiplatformV1beta1SchemaPromptSpecInteractionData", + "properties": { + "interactionIds": { + "description": "Optional. Lists interaction IDs associated with the prompt. This maps 1:1 to PromptMessage.contents. If InteractionData is present, every prompt message has an interaction ID.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1SchemaPromptSpecMultimodalPrompt": { "description": "Prompt variation that embeds preambles to prompt string.", "id": "GoogleCloudAiplatformV1beta1SchemaPromptSpecMultimodalPrompt", @@ -67910,6 +76866,10 @@ }, "type": "array" }, + "interactionData": { + "$ref": "GoogleCloudAiplatformV1beta1SchemaPromptSpecInteractionData", + "description": "Data for interaction use case." + }, "outputPrefixes": { "description": "Preamble: The output prefixes before each example output.", "items": { @@ -70584,6 +79544,14 @@ "description": "Identifier. The resource name of the event. Format:`projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}/events/{event}`.", "type": "string" }, + "rawEvent": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. Weakly typed raw event data in proto struct format.", + "type": "object" + }, "timestamp": { "description": "Required. Timestamp when the event was created on client side.", "format": "google-datetime", @@ -70672,6 +79640,25 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1SignUpRequest": { + "description": "Request message for ExpressModeService.SignUp.", + "id": "GoogleCloudAiplatformV1beta1SignUpRequest", + "properties": { + "getDefaultApiKey": { + "description": "Optional. Whether to return the default API key string in the response.", + "type": "boolean" + }, + "region": { + "description": "Required. The desired region for the express project.", + "type": "string" + }, + "tosAccepted": { + "description": "Required. Whether the Terms of Service are accepted.", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1SlackSource": { "description": "The Slack source for the ImportRagFilesRequest.", "id": "GoogleCloudAiplatformV1beta1SlackSource", @@ -71193,6 +80180,56 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1StructuredMemoryConfig": { + "description": "Represents configuration for organizing structured memories for a particular scope.", + "id": "GoogleCloudAiplatformV1beta1StructuredMemoryConfig", + "properties": { + "schemaConfigs": { + "description": "Optional. Represents configuration of the structured memories' schemas.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1StructuredMemoryConfigSchemaConfig" + }, + "type": "array" + }, + "scopeKeys": { + "description": "Optional. Represents the scope keys (i.e. 'user_id') for which to use this config. A request's scope must include all of the provided keys for the config to be used (order does not matter). If empty, then the config will be used for all requests that do not have a more specific config. Only one default config is allowed per Memory Bank.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1StructuredMemoryConfigSchemaConfig": { + "description": "Schema configuration for structured memories.", + "id": "GoogleCloudAiplatformV1beta1StructuredMemoryConfigSchemaConfig", + "properties": { + "id": { + "description": "Required. Represents the ID of the schema. Must be 1-63 characters, start with a lowercase letter, and consist of lowercase letters, numbers, and hyphens.", + "type": "string" + }, + "memoryType": { + "description": "Optional. Represents the type of the structured memories associated with the schema. If not set, then `STRUCTURED_PROFILE` will be used.", + "enum": [ + "MEMORY_TYPE_UNSPECIFIED", + "NATURAL_LANGUAGE_COLLECTION", + "STRUCTURED_PROFILE" + ], + "enumDescriptions": [ + "Represents an unspecified memory type. This value should not be used.", + "Indicates belonging to a collection of natural language memories.", + "Indicates belonging to a structured profile." + ], + "type": "string" + }, + "schema": { + "$ref": "GoogleCloudAiplatformV1beta1Schema", + "description": "Required. Represents the OpenAPI schema of the structured memories. The schema `type` cannot be `ARRAY` when `memory_type` is `STRUCTURED_PROFILE`." + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1Study": { "description": "A message representing a Study.", "id": "GoogleCloudAiplatformV1beta1Study", @@ -72334,6 +81371,23 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1SuspendOnlineEvaluatorOperationMetadata": { + "description": "Metadata for the SuspendOnlineEvaluator operation.", + "id": "GoogleCloudAiplatformV1beta1SuspendOnlineEvaluatorOperationMetadata", + "properties": { + "genericMetadata": { + "$ref": "GoogleCloudAiplatformV1beta1GenericOperationMetadata", + "description": "Common part of operation metadata." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1SuspendOnlineEvaluatorRequest": { + "description": "Request message for SuspendOnlineEvaluator.", + "id": "GoogleCloudAiplatformV1beta1SuspendOnlineEvaluatorRequest", + "properties": {}, + "type": "object" + }, "GoogleCloudAiplatformV1beta1SyncFeatureViewRequest": { "description": "Request message for FeatureOnlineStoreAdminService.SyncFeatureView.", "id": "GoogleCloudAiplatformV1beta1SyncFeatureViewRequest", @@ -72352,7 +81406,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1SyntheticExample": { - "description": "Represents a single synthetic example, composed of multiple fields. Used for providing few-shot examples in the request and for returning generated examples in the response.", + "description": "A single instance of generated synthetic data. Each example is made up of one or more named fields, as defined in `OutputFieldSpec`. These examples are used as few-shot examples to show the model what you want (in `GenerateSyntheticDataRequest.examples`) and to return generated examples in the response (in `GenerateSyntheticDataResponse.synthetic_examples`).", "id": "GoogleCloudAiplatformV1beta1SyntheticExample", "properties": { "fields": { @@ -72366,15 +81420,15 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1SyntheticField": { - "description": "Represents a single named field within a SyntheticExample.", + "description": "Represents a single named field within a synthetic example, consisting of a name and the actual content.", "id": "GoogleCloudAiplatformV1beta1SyntheticField", "properties": { "content": { "$ref": "GoogleCloudAiplatformV1beta1Content", - "description": "Required. The content of the field." + "description": "Required. The actual content or value for this field. This can be text, images, or other types of data." }, "fieldName": { - "description": "Optional. The name of the field.", + "description": "Optional. The name of the specific field, such as \"product_name\" or \"review_text\".", "type": "string" } }, @@ -72391,17 +81445,256 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1TaskArtifact": { + "description": "Represents a single artifact produced by a task. sample: artifacts: { artifact_id: \"image-12345\" name: \"Generated Sunset Image\" description: \"A beautiful sunset over the mountains, generated by the user's request.\" parts: { inline_data: { mime_type: \"image/png\" data: \"iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAA=\" } } }", + "id": "GoogleCloudAiplatformV1beta1TaskArtifact", + "properties": { + "artifactId": { + "description": "Required. The unique identifier of the artifact within the task. This id is provided by the creator of the artifact.", + "type": "string" + }, + "description": { + "description": "Optional. A human readable description of the artifact.", + "type": "string" + }, + "displayName": { + "description": "Optional. The human-readable name of the artifact provided by the creator.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. Additional metadata for the artifact. For A2A, the URIs of the extensions that were used to produce this artifact will be stored here.", + "type": "object" + }, + "parts": { + "description": "Required. The content of the artifact.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1Part" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1TaskArtifactChange": { + "description": "Describes changes to the artifact list.", + "id": "GoogleCloudAiplatformV1beta1TaskArtifactChange", + "properties": { + "addedArtifacts": { + "description": "Optional. A list of brand-new artifacts created in this event.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1TaskArtifact" + }, + "type": "array" + }, + "deletedArtifactIds": { + "description": "Optional. A list of artifact IDs that were removed in this event.", + "items": { + "type": "string" + }, + "type": "array" + }, + "updatedArtifacts": { + "description": "Optional. A list of existing artifacts that were modified in this event.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1TaskArtifact" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1TaskDescriptionStrategy": { - "description": "Defines a generation strategy based on a high-level task description.", + "description": "Defines a generation strategy based on a general task description.", "id": "GoogleCloudAiplatformV1beta1TaskDescriptionStrategy", "properties": { "taskDescription": { - "description": "Required. A high-level description of the synthetic data to be generated.", + "description": "Required. A general description of the type of synthetic data you want to generate. For example, \"Generate customer reviews for a new smartphone.\"", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1TaskEvent": { + "description": "An event that occurred for a task. Note that TaskEvent is just a record of task's change. Hence, it's not a Cloud resource.", + "id": "GoogleCloudAiplatformV1beta1TaskEvent", + "properties": { + "createTime": { + "description": "Output only. The create time of the event.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "eventData": { + "$ref": "GoogleCloudAiplatformV1beta1TaskEventData", + "description": "Required. The delta associated with the event." + }, + "eventSequenceNumber": { + "description": "Required. The sequence number of the event. This is used to uniquely identify the event within the task and order events chronologically. This is a id generated by the SDK.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1TaskEventData": { + "description": "Data for a TaskEvent.", + "id": "GoogleCloudAiplatformV1beta1TaskEventData", + "properties": { + "metadataChange": { + "$ref": "GoogleCloudAiplatformV1beta1TaskMetadataChange", + "description": "Optional. A change to the task's metadata." + }, + "outputChange": { + "$ref": "GoogleCloudAiplatformV1beta1TaskOutputChange", + "description": "Optional. A change to the task's final outputs." + }, + "stateChange": { + "$ref": "GoogleCloudAiplatformV1beta1TaskStateChange", + "description": "Optional. A change in the task's state." + }, + "statusDetailsChange": { + "$ref": "GoogleCloudAiplatformV1beta1TaskStatusDetailsChange", + "description": "Optional. A change to the framework-specific status details." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1TaskMessage": { + "description": "Represents a single message in a conversation, compliant with the A2A specification.", + "id": "GoogleCloudAiplatformV1beta1TaskMessage", + "properties": { + "messageId": { + "description": "Required. The unique identifier of the message.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. A2A message may have extension_uris or reference_task_ids. They will be stored under metadata.", + "type": "object" + }, + "parts": { + "description": "Required. The parts of the message.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1Part" + }, + "type": "array" + }, + "role": { + "description": "Required. The role of the sender of the message. e.g. \"user\", \"agent\"", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1TaskMetadataChange": { + "description": "An event representing a change to the task's top-level metadata. example: metadata_change: { new_metadata: { \"name\": \"My task\", } update_mask: { paths: \"name\" } }", + "id": "GoogleCloudAiplatformV1beta1TaskMetadataChange", + "properties": { + "newMetadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Required. The complete state of the metadata object *after* the change.", + "type": "object" + }, + "updateMask": { + "description": "Optional. A field mask indicating which paths in the Struct were changed. If not set, all fields will be updated. go/aip-internal/cloud-standard/2412", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1TaskOutput": { + "description": "Represents the final output of a task.", + "id": "GoogleCloudAiplatformV1beta1TaskOutput", + "properties": { + "artifacts": { + "description": "Optional. A list of artifacts (files, data) produced by the task.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1TaskArtifact" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1TaskOutputChange": { + "description": "An event representing a change to the task's outputs.", + "id": "GoogleCloudAiplatformV1beta1TaskOutputChange", + "properties": { + "taskArtifactChange": { + "$ref": "GoogleCloudAiplatformV1beta1TaskArtifactChange", + "description": "Required. A granular change to the list of artifacts." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1TaskStateChange": { + "description": "A message representing a change in a task's state.", + "id": "GoogleCloudAiplatformV1beta1TaskStateChange", + "properties": { + "newState": { + "description": "Required. The new state of the task.", + "enum": [ + "STATE_UNSPECIFIED", + "SUBMITTED", + "WORKING", + "COMPLETED", + "CANCELLED", + "FAILED", + "REJECTED", + "INPUT_REQUIRED", + "AUTH_REQUIRED", + "PAUSED" + ], + "enumDescriptions": [ + "Task state unspecified. Default value if not set.", + "Task is submitted and waiting to be processed.", + "Task is actively being processed.", + "Task is finished.", + "Task is cancelled.", + "Task has failed.", + "Task is rejected by the system.", + "Task requires input from the user.", + "Task requires auth (e.g. OAuth) from the user.", + "Task is paused." + ], "type": "string" } }, "type": "object" }, + "GoogleCloudAiplatformV1beta1TaskStatusDetails": { + "description": "Represents the additional status details of a task.", + "id": "GoogleCloudAiplatformV1beta1TaskStatusDetails", + "properties": { + "taskMessage": { + "$ref": "GoogleCloudAiplatformV1beta1TaskMessage", + "description": "Optional. The message associated with the single-turn interaction between the user and the agent or agent and agent." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1TaskStatusDetailsChange": { + "description": "Represents a change to the task's status details.", + "id": "GoogleCloudAiplatformV1beta1TaskStatusDetailsChange", + "properties": { + "newTaskStatus": { + "$ref": "GoogleCloudAiplatformV1beta1TaskStatusDetails", + "description": "Required. The complete state of the task's status *after* the change." + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1Tensor": { "description": "A tensor value type.", "id": "GoogleCloudAiplatformV1beta1Tensor", @@ -73103,7 +82396,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1ToolCodeExecution": { - "description": "Tool that executes code generated by the model, and automatically returns the result to the model. See also [ExecutableCode]and [CodeExecutionResult] which are input and output to this tool.", + "description": "Tool that executes code generated by the model, and automatically returns the result to the model. See also ExecutableCode and CodeExecutionResult, which are input and output to this tool.", "id": "GoogleCloudAiplatformV1beta1ToolCodeExecution", "properties": {}, "type": "object" @@ -73181,10 +82474,41 @@ "type": "string" }, "type": "array" + }, + "searchTypes": { + "$ref": "GoogleCloudAiplatformV1beta1ToolGoogleSearchSearchTypes", + "description": "Optional. The set of search types to enable. If not set, web search is enabled by default." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ToolGoogleSearchImageSearch": { + "description": "Image search for grounding and related configurations.", + "id": "GoogleCloudAiplatformV1beta1ToolGoogleSearchImageSearch", + "properties": {}, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ToolGoogleSearchSearchTypes": { + "description": "Different types of search that can be enabled on the GoogleSearch tool.", + "id": "GoogleCloudAiplatformV1beta1ToolGoogleSearchSearchTypes", + "properties": { + "imageSearch": { + "$ref": "GoogleCloudAiplatformV1beta1ToolGoogleSearchImageSearch", + "description": "Optional. Setting this field enables image search. Image bytes are returned." + }, + "webSearch": { + "$ref": "GoogleCloudAiplatformV1beta1ToolGoogleSearchWebSearch", + "description": "Optional. Setting this field enables web search. Only text results are returned." } }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ToolGoogleSearchWebSearch": { + "description": "Standard web search for grounding and related configurations. Only text results are returned.", + "id": "GoogleCloudAiplatformV1beta1ToolGoogleSearchWebSearch", + "properties": {}, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ToolNameMatchInput": { "description": "Input for tool name match metric.", "id": "GoogleCloudAiplatformV1beta1ToolNameMatchInput", @@ -74009,6 +83333,21 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1Transcription": { + "description": "Audio transcription in Server Content.", + "id": "GoogleCloudAiplatformV1beta1Transcription", + "properties": { + "finished": { + "description": "Optional. The bool indicates the end of the transcription.", + "type": "boolean" + }, + "text": { + "description": "Optional. Transcription text.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1Trial": { "description": "A message representing a Trial. A Trial contains a unique set of Parameters that has been or will be evaluated, along with the objective metrics got by running the Trial.", "id": "GoogleCloudAiplatformV1beta1Trial", @@ -74390,6 +83729,11 @@ "description": "Output only. The tuning data statistics associated with this TuningJob.", "readOnly": true }, + "tuningJobMetadata": { + "$ref": "GoogleCloudAiplatformV1beta1TuningJobMetadata", + "description": "Output only. Tuning Job metadata.", + "readOnly": true + }, "tuningJobState": { "description": "Output only. The detail state of the tuning job (while the overall `JobState` is running).", "enum": [ @@ -74417,6 +83761,10 @@ "readOnly": true, "type": "string" }, + "veoLoraTuningSpec": { + "$ref": "GoogleCloudAiplatformV1beta1VeoLoraTuningSpec", + "description": "Tuning Spec for Veo LoRA Tuning." + }, "veoTuningSpec": { "$ref": "GoogleCloudAiplatformV1beta1VeoTuningSpec", "description": "Tuning Spec for Veo Tuning." @@ -74424,6 +83772,25 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1TuningJobMetadata": { + "description": "Tuning job metadata.", + "id": "GoogleCloudAiplatformV1beta1TuningJobMetadata", + "properties": { + "completedEpochCount": { + "description": "Output only. The number of epochs that have been completed.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "completedStepCount": { + "description": "Output only. The number of steps that have been completed. Set for Multi-Step RL.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1UndeployIndexOperationMetadata": { "description": "Runtime operation information for IndexEndpointService.UndeployIndex.", "id": "GoogleCloudAiplatformV1beta1UndeployIndexOperationMetadata", @@ -74660,6 +84027,17 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1UpdateOnlineEvaluatorOperationMetadata": { + "description": "Metadata for the UpdateOnlineEvaluator operation.", + "id": "GoogleCloudAiplatformV1beta1UpdateOnlineEvaluatorOperationMetadata", + "properties": { + "genericMetadata": { + "$ref": "GoogleCloudAiplatformV1beta1GenericOperationMetadata", + "description": "Generic operation metadata." + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1UpdatePersistentResourceOperationMetadata": { "description": "Details of operations that perform update PersistentResource.", "id": "GoogleCloudAiplatformV1beta1UpdatePersistentResourceOperationMetadata", @@ -74784,7 +84162,8 @@ }, "ragFileMetadataConfig": { "$ref": "GoogleCloudAiplatformV1beta1RagFileMetadataConfig", - "description": "Specifies the metadata config for RagFiles. Including paths for metadata schema and metadata. Alteratively, inline metadata schema and metadata can be provided." + "deprecated": true, + "description": "Optional. Specifies the metadata config for RagFiles. Including paths for metadata schema and metadata. Alteratively, inline metadata schema and metadata can be provided. Deprecated: Not in use." }, "ragFileParsingConfig": { "$ref": "GoogleCloudAiplatformV1beta1RagFileParsingConfig", @@ -75055,6 +84434,49 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1UserScenario": { + "description": "Output of user scenario generation.", + "id": "GoogleCloudAiplatformV1beta1UserScenario", + "properties": { + "conversationPlan": { + "description": "Conversation plan to drive multi-turn agent run and get simulated agent eval dataset.", + "type": "string" + }, + "startingPrompt": { + "description": "Starting prompt for the conversation between simulated user and agent under the test.", + "type": "string" + }, + "testCaseTitle": { + "description": "Represents a short 3-5 word title for eval test case.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1UserScenarioGenerationConfig": { + "description": "User scenario generation configuration.", + "id": "GoogleCloudAiplatformV1beta1UserScenarioGenerationConfig", + "properties": { + "environmentData": { + "description": "Optional. Environment data in string type.", + "type": "string" + }, + "modelName": { + "description": "Optional. The model name to use for generation. It can be model name, e.g. \"gemini-3-pro-preview\". or the fully qualified name of the publisher model or endpoint. Publisher model format: `projects/{project}/locations/{location}/publishers/*/models/*` Endpoint format: `projects/{project}/locations/{location}/endpoints/{endpoint}`", + "type": "string" + }, + "simulationInstruction": { + "description": "Optional. Simulation instruction to guide the user scenario generation.", + "type": "string" + }, + "userScenarioCount": { + "description": "Required. The number of user scenarios to generate. The maximum number of scenarios that can be generated is 100.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1UserSpecifiedMetadata": { "description": "Metadata provided by users.", "id": "GoogleCloudAiplatformV1beta1UserSpecifiedMetadata", @@ -75095,6 +84517,22 @@ "description": "Hyperparameters for Veo.", "id": "GoogleCloudAiplatformV1beta1VeoHyperParameters", "properties": { + "adapterSize": { + "description": "Optional. The adapter size for LoRA tuning.", + "enum": [ + "ADAPTER_SIZE_UNSPECIFIED", + "ADAPTER_SIZE_EIGHT", + "ADAPTER_SIZE_SIXTEEN", + "ADAPTER_SIZE_THIRTY_TWO" + ], + "enumDescriptions": [ + "Adapter size is unspecified.", + "Adapter size 8. This is the default adapter size for Veo LoRA tuning.", + "Adapter size 16.", + "Adapter size 32." + ], + "type": "string" + }, "epochCount": { "description": "Optional. Number of complete passes the model makes over the entire training dataset during training.", "format": "int64", @@ -75105,8 +84543,22 @@ "format": "double", "type": "number" }, + "tuningSpeed": { + "description": "The speed of the tuning job. Only supported for Veo 3.0 models.", + "enum": [ + "TUNING_SPEED_UNSPECIFIED", + "REGULAR", + "FAST" + ], + "enumDescriptions": [ + "The default / unset value. For Veo 3.0 models, this defaults to FAST.", + "Regular tuning speed.", + "Fast tuning speed." + ], + "type": "string" + }, "tuningTask": { - "description": "Optional. The tuning task. Either I2V or T2V.", + "description": "The tuning task for Veo.", "enum": [ "TUNING_TASK_UNSPECIFIED", "TUNING_TASK_I2V", @@ -75129,6 +84581,39 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1VeoLoraTuningSpec": { + "description": "Tuning Spec for Veo LoRA Model Tuning.", + "id": "GoogleCloudAiplatformV1beta1VeoLoraTuningSpec", + "properties": { + "hyperParameters": { + "$ref": "GoogleCloudAiplatformV1beta1VeoHyperParameters", + "description": "Optional. Hyperparameters for Veo LoRA." + }, + "trainingDatasetUri": { + "description": "Required. Training dataset used for tuning. The dataset can be specified as either a Cloud Storage path to a JSONL file or as the resource name of a Vertex Multimodal Dataset.", + "type": "string" + }, + "validationDatasetUri": { + "description": "Optional. Validation dataset used for tuning. The dataset can be specified as either a Cloud Storage path to a JSONL file or as the resource name of a Vertex Multimodal Dataset.", + "type": "string" + }, + "videoOrientation": { + "description": "Optional. The orientation of the video. Defaults to LANDSCAPE.", + "enum": [ + "VIDEO_ORIENTATION_UNSPECIFIED", + "LANDSCAPE", + "PORTRAIT" + ], + "enumDescriptions": [ + "Unspecified video orientation. Defaults to landscape.", + "Landscape orientation (e.g. 16:9, 1280x720).", + "Portrait orientation (e.g. 9:16, 720x1280)." + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1VeoTuningSpec": { "description": "Tuning Spec for Veo Model Tuning.", "id": "GoogleCloudAiplatformV1beta1VeoTuningSpec", @@ -75854,7 +85339,7 @@ } }, "servicePath": "", - "title": "Vertex AI API", + "title": "Agent Platform API", "version": "v1beta1", "version_module": true } \ No newline at end of file diff --git a/discovery/alertcenter-v1beta1.json b/discovery/alertcenter-v1beta1.json index 5c62b34719c..aba030e9c76 100644 --- a/discovery/alertcenter-v1beta1.json +++ b/discovery/alertcenter-v1beta1.json @@ -423,7 +423,7 @@ } } }, - "revision": "20251117", + "revision": "20260427", "rootUrl": "https://alertcenter.googleapis.com/", "schemas": { "AbuseDetected": { @@ -609,7 +609,12 @@ "ActionInfo": { "description": "Metadata related to the action.", "id": "ActionInfo", - "properties": {}, + "properties": { + "evidenceLockerFilePath": { + "description": "Google Cloud Storage location of the content that violated the rule. This field has format: \"/\"", + "type": "string" + } + }, "type": "object" }, "ActivityRule": { @@ -1048,6 +1053,27 @@ }, "type": "object" }, + "ClientSideEncryptionServiceUnavailable": { + "description": "Alerts for client-side encryption outages.", + "id": "ClientSideEncryptionServiceUnavailable", + "properties": { + "idpError": { + "description": "Identity providers impacted by an outage or misconfiguration.", + "items": { + "$ref": "IdentityProviderError" + }, + "type": "array" + }, + "keyServiceError": { + "description": "External key services impacted by an outage or misconfiguration.", + "items": { + "$ref": "KeyServiceError" + }, + "type": "array" + } + }, + "type": "object" + }, "CloudPubsubTopic": { "description": "A reference to a Cloud Pubsub topic. To register for notifications, the owner of the topic must grant `alerts-api-push-notifications@system.gserviceaccount.com` the `projects.topics.publish` permission.", "id": "CloudPubsubTopic", @@ -1243,6 +1269,52 @@ }, "type": "object" }, + "DriveSyncStateChanged": { + "description": "Alerts for when a user is restricted from syncing content from clients such as Drive for Desktop.", + "id": "DriveSyncStateChanged", + "properties": { + "email": { + "description": "Email of the user affected.", + "type": "string" + }, + "syncPauseStartTime": { + "description": "Time at which sync was paused.", + "format": "google-datetime", + "type": "string" + }, + "syncState": { + "description": "The current sync state.", + "enum": [ + "SYNC_STATE_UNSPECIFIED", + "PAUSED", + "RESUMED" + ], + "enumDescriptions": [ + "Unspecified state", + "Sync is paused", + "Sync is resumed" + ], + "type": "string" + }, + "syncStateChangeReason": { + "description": "The reason for the sync state change.", + "enum": [ + "SYNC_STATE_CHANGE_REASON_UNSPECIFIED", + "UNUSUAL_ACTIVITY", + "USER_FEEDBACK_TRUE_POSITIVE", + "USER_FEEDBACK_FALSE_POSITIVE" + ], + "enumDescriptions": [ + "Unspecified state change reason", + "Sync state was changed due to unusual activity, such as potential ransomware", + "The user provided feedback indicating that the initial sync state change may have been caused by unexpected activity", + "The user provided feedback indicating that the initial sync state change may have been caused by a false positive" + ], + "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", @@ -1378,6 +1450,95 @@ }, "type": "object" }, + "IdentityProviderError": { + "description": "Error related to an identity provider.", + "id": "IdentityProviderError", + "properties": { + "authorizationBaseUrl": { + "description": "Authorization base url of the identity provider.", + "type": "string" + }, + "errorCount": { + "description": "Number of similar errors encountered.", + "format": "int64", + "type": "string" + }, + "errorInfo": { + "description": "Info on the identity provider error.", + "enum": [ + "IDENTITY_PROVIDER_ERROR_INFO_UNSPECIFIED", + "EMAIL_MISMATCH", + "UNAVAILABLE_DISCOVERY_CONTENT", + "INVALID_DISCOVERY_CONTENT", + "UNAVAILABLE_CSE_CONFIGURATION_CONTENT", + "INVALID_CSE_CONFIGURATION_CONTENT", + "INVALID_ID_TOKEN", + "INVALID_OIDC_SETUP", + "UNAVAILABLE_IDP", + "AUTH_CODE_EXCHANGE_ERROR", + "AUTHENTICATION_TOKEN_MISSING_CLAIM_EMAIL" + ], + "enumDescriptions": [ + "Error info not specified.", + "Email in the ID token is different from the user's email.", + "Discovery URL was unreachable.", + "Discovery URL did not contain all the necessary information.", + "URL for client-side encryption configuration content was unreachable.", + "Client-side encryption .well-known URL did not contain all the necessary information.", + "ID token returned by the identity provider is invalid.", + "OIDC setup error.", + "Identity provider was unreachable.", + "Auth code exchange error.", + "Authentication token has no \"email\" or \"google_email\" claim." + ], + "type": "string" + } + }, + "type": "object" + }, + "KeyServiceError": { + "description": "Error related to an external key service.", + "id": "KeyServiceError", + "properties": { + "errorCount": { + "description": "Number of similar errors encountered.", + "format": "int64", + "type": "string" + }, + "errorInfo": { + "description": "Info on the key service error.", + "enum": [ + "KEY_SERVICE_ERROR_INFO_UNSPECIFIED", + "MALFORMED_JSON", + "MISSING_KEY", + "MISSING_SIGNATURE", + "MISSING_ALGORITHM_NAME", + "UNSUPPORTED_ALGORITHM", + "FETCH_REQUEST_ERROR" + ], + "enumDescriptions": [ + "Error info not specified.", + "The response has malformed JSON.", + "The response did not contain the wrapped/unwrapped key.", + "SMIME sign only: The sign response did not contain the signature.", + "SMIME only: The sign response does not include the algorithm name.", + "SMIME only: the algorithm name in the response is not supported by the client.", + "Fetch request on the client has failed." + ], + "type": "string" + }, + "httpResponseCode": { + "description": "HTTP response status code from the key service.", + "format": "int64", + "type": "string" + }, + "keyServiceUrl": { + "description": "Url of the external key service.", + "type": "string" + } + }, + "type": "object" + }, "ListAlertFeedbackResponse": { "description": "Response message for an alert feedback listing request.", "id": "ListAlertFeedbackResponse", @@ -1696,12 +1857,14 @@ "enum": [ "DATA_SOURCE_UNSPECIFIED", "DRIVE", + "GMAIL", "CHROME", "CHAT" ], "enumDescriptions": [ "Data source is unspecified.", "Drive data source.", + "Gmail data source.", "Chrome data source.", "Chat data source." ], @@ -1751,7 +1914,12 @@ "DRIVE_BLOCK_EXTERNAL_SHARING", "DRIVE_WARN_ON_EXTERNAL_SHARING", "DRIVE_RESTRICT_DOWNLOAD_PRINT_COPY", + "DRIVE_RESTRICT_DOWNLOAD_PRINT_COPY_FOR_ALL", "DRIVE_APPLY_DRIVE_LABELS", + "GMAIL_QUARANTINE_MESSAGE", + "GMAIL_BLOCK_MESSAGE", + "GMAIL_WARN_USERS", + "GMAIL_APPLY_CLASSIFICATION_LABELS", "CHROME_BLOCK_FILE_DOWNLOAD", "CHROME_WARN_FILE_DOWNLOAD", "CHROME_BLOCK_FILE_UPLOAD", @@ -1760,10 +1928,14 @@ "CHROME_WARN_WEB_CONTENT_UPLOAD", "CHROME_BLOCK_PAGE_PRINT", "CHROME_WARN_PAGE_PRINT", + "CHROME_BLOCK_FILE_TRANSFER", + "CHROME_WARN_FILE_TRANSFER", "CHROME_BLOCK_URL_VISITED", "CHROME_WARN_URL_VISITED", "CHROME_BLOCK_SCREENSHOT", "CHROME_STORE_CONTENT", + "CHROME_WATERMARK", + "CHROME_FORCE_SAVE_TO_CLOUD", "DELETE_WEBPROTECT_EVIDENCE", "CHAT_BLOCK_CONTENT", "CHAT_WARN_USER", @@ -1776,7 +1948,12 @@ "Block sharing a file externally.", "Show a warning message when sharing a file externally.", "Disable download, print, and copy for commenters and viewers in drive.", + "Disable download, print, and copy for all collaborators in drive.", "Apply customer specified Drive labels to the file.", + "Quarantine message.", + "Block message.", + "Warn users.", + "Apply classification labels.", "Chrome actions. Block file download.", "Warn user about downloaded file.", "Block file upload.", @@ -1785,10 +1962,14 @@ "Warn user about uploaded web content.", "Block page print.", "Warn user about printed page.", + "Block ChromeOS file transfer.", + "Warn user about ChromeOS file transfer.", "Block Chrome URL visit.", "Warn user about Chrome URL visited.", "Block screenshot alert.", "Store the content that violated the rule.", + "Send watermark alert", + "Force save to cloud storage.", "Delete web protect evidence file", "Chat actions. Block Chat content to be sent out.", "Warn end user about Chat content.", @@ -1805,24 +1986,30 @@ "enum": [ "TRIGGER_UNSPECIFIED", "DRIVE_SHARE", + "MAIL_BEING_SENT", "CHROME_FILE_DOWNLOAD", "CHROME_FILE_UPLOAD", "CHROME_WEB_CONTENT_UPLOAD", "CHAT_MESSAGE_SENT", "CHAT_ATTACHMENT_UPLOADED", "CHROME_PAGE_PRINT", - "CHROME_URL_VISITED" + "CHROME_URL_VISITED", + "CHROMEOS_FILE_TRANSFER", + "GEMINI_ACCESS" ], "enumDescriptions": [ "Trigger is unspecified.", "A Drive file is shared.", + "An email message is sent.", "A file being downloaded in a Chrome browser.", "A file being uploaded from a Chrome browser.", "Web content being uploaded from a Chrome browser.", "A Chat message is sent.", "A Chat attachment is uploaded.", "A page is being printed by Chrome.", - "A URL is visited within Chrome." + "A URL is visited within Chrome.", + "A file being transferred (copy or moved) between different file systems on ChromeOS.", + "Gemini access." ], "type": "string" }, @@ -1841,7 +2028,12 @@ "DRIVE_BLOCK_EXTERNAL_SHARING", "DRIVE_WARN_ON_EXTERNAL_SHARING", "DRIVE_RESTRICT_DOWNLOAD_PRINT_COPY", + "DRIVE_RESTRICT_DOWNLOAD_PRINT_COPY_FOR_ALL", "DRIVE_APPLY_DRIVE_LABELS", + "GMAIL_QUARANTINE_MESSAGE", + "GMAIL_BLOCK_MESSAGE", + "GMAIL_WARN_USERS", + "GMAIL_APPLY_CLASSIFICATION_LABELS", "CHROME_BLOCK_FILE_DOWNLOAD", "CHROME_WARN_FILE_DOWNLOAD", "CHROME_BLOCK_FILE_UPLOAD", @@ -1850,10 +2042,14 @@ "CHROME_WARN_WEB_CONTENT_UPLOAD", "CHROME_BLOCK_PAGE_PRINT", "CHROME_WARN_PAGE_PRINT", + "CHROME_BLOCK_FILE_TRANSFER", + "CHROME_WARN_FILE_TRANSFER", "CHROME_BLOCK_URL_VISITED", "CHROME_WARN_URL_VISITED", "CHROME_BLOCK_SCREENSHOT", "CHROME_STORE_CONTENT", + "CHROME_WATERMARK", + "CHROME_FORCE_SAVE_TO_CLOUD", "DELETE_WEBPROTECT_EVIDENCE", "CHAT_BLOCK_CONTENT", "CHAT_WARN_USER", @@ -1866,7 +2062,12 @@ "Block sharing a file externally.", "Show a warning message when sharing a file externally.", "Disable download, print, and copy for commenters and viewers in drive.", + "Disable download, print, and copy for all collaborators in drive.", "Apply customer specified Drive labels to the file.", + "Quarantine message.", + "Block message.", + "Warn users.", + "Apply classification labels.", "Chrome actions. Block file download.", "Warn user about downloaded file.", "Block file upload.", @@ -1875,10 +2076,14 @@ "Warn user about uploaded web content.", "Block page print.", "Warn user about printed page.", + "Block ChromeOS file transfer.", + "Warn user about ChromeOS file transfer.", "Block Chrome URL visit.", "Warn user about Chrome URL visited.", "Block screenshot alert.", "Store the content that violated the rule.", + "Send watermark alert", + "Force save to cloud storage.", "Delete web protect evidence file", "Chat actions. Block Chat content to be sent out.", "Warn end user about Chat content.", diff --git a/discovery/alloydb-v1.json b/discovery/alloydb-v1.json index 411c2cc340a..5c04bbb442a 100644 --- a/discovery/alloydb-v1.json +++ b/discovery/alloydb-v1.json @@ -357,7 +357,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "alloydb.projects.locations.list", @@ -1879,7 +1879,7 @@ } } }, - "revision": "20260219", + "revision": "20260326", "rootUrl": "https://alloydb.googleapis.com/", "schemas": { "AuthorizedNetwork": { @@ -3789,6 +3789,11 @@ "readOnly": true, "type": "string" }, + "isHotStandby": { + "description": "Output only. Indicates whether the node set up to be configured as a hot standby.", + "readOnly": true, + "type": "boolean" + }, "state": { "description": "Output only. 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.", "readOnly": true, @@ -4660,7 +4665,10 @@ "SIGNAL_TYPE_EXPOSED_TO_PUBLIC_ACCESS", "SIGNAL_TYPE_UNENCRYPTED_CONNECTIONS", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY" + "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE", + "SIGNAL_TYPE_LAST_BACKUP_OLD", + "SIGNAL_TYPE_NOT_PROTECTED_BY_AUTOMATIC_FAILOVER" ], "enumDescriptions": [ "Unspecified signal type.", @@ -4670,7 +4678,10 @@ "Represents if a resource is exposed to public access.", "Represents if a resources requires all incoming connections to use SSL or not.", "Represents if a resource version is in extended support.", - "Represents if a resource has no automated backup policy." + "Represents if a resource has no automated backup policy.", + "Represents if a resource version is nearing end of life.", + "Represents if the last backup of a resource is older than 24 hours.", + "Represents if a resource is not protected by automatic failover." ], "type": "string" } @@ -4980,7 +4991,8 @@ "SIGNAL_TYPE_DATABOOST_DISABLED", "SIGNAL_TYPE_RECOMMENDED_MAINTENANCE_POLICIES", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE" + "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE" ], "enumDeprecated": [ false, @@ -5088,6 +5100,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -5196,7 +5209,8 @@ "Databoost is disabled.", "Recommended maintenance policy.", "Resource version is in extended support.", - "Change in performance KPIs." + "Change in performance KPIs.", + "Database version nearing end of life." ], "type": "string" }, @@ -5260,7 +5274,7 @@ "type": "object" }, "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata": { - "description": "Common model for database resource instance metadata. Next ID: 31", + "description": "Common model for database resource instance metadata. Next ID: 32", "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata", "properties": { "availabilityConfiguration": { @@ -5377,6 +5391,9 @@ "SUB_RESOURCE_TYPE_SECONDARY", "SUB_RESOURCE_TYPE_READ_REPLICA", "SUB_RESOURCE_TYPE_EXTERNAL_PRIMARY", + "SUB_RESOURCE_TYPE_READ_POOL", + "SUB_RESOURCE_TYPE_RESERVATION", + "SUB_RESOURCE_TYPE_DATASET", "SUB_RESOURCE_TYPE_OTHER" ], "enumDeprecated": [ @@ -5390,6 +5407,9 @@ false, false, false, + false, + false, + false, false ], "enumDescriptions": [ @@ -5403,6 +5423,9 @@ "A cluster or an instance acting as a secondary.", "An instance acting as a read-replica.", "An instance acting as an external primary.", + "An instance acting as Read Pool.", + "Represents a reservation resource.", + "Represents a dataset resource.", "For rest of the other categories." ], "type": "string" @@ -5423,6 +5446,23 @@ "$ref": "StorageDatabasecenterPartnerapiV1mainResourceMaintenanceInfo", "description": "Optional. Maintenance info for the resource." }, + "modes": { + "description": "Optional. The modes of the database resource.", + "items": { + "enum": [ + "MODE_UNSPECIFIED", + "MODE_NATIVE", + "MODE_MONGODB_COMPATIBLE" + ], + "enumDescriptions": [ + "Default mode.", + "Native mode.", + "MongoDB compatible mode." + ], + "type": "string" + }, + "type": "array" + }, "primaryResourceId": { "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", "description": "Identifier for this resource's immediate parent/primary resource if the current resource is a replica or derived form of another Database resource. Else it would be NULL. REQUIRED if the immediate parent exists when first time resource is getting ingested, otherwise optional." @@ -5653,7 +5693,8 @@ "SIGNAL_TYPE_DATABOOST_DISABLED", "SIGNAL_TYPE_RECOMMENDED_MAINTENANCE_POLICIES", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE" + "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE" ], "enumDeprecated": [ false, @@ -5761,6 +5802,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -5869,7 +5911,8 @@ "Databoost is disabled.", "Recommended maintenance policy.", "Resource version is in extended support.", - "Change in performance KPIs." + "Change in performance KPIs.", + "Database version nearing end of life." ], "type": "string" } @@ -5877,9 +5920,14 @@ "type": "object" }, "StorageDatabasecenterPartnerapiV1mainDatabaseResourceSignalData": { - "description": "Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 7", + "description": "Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 10", "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceSignalData", "properties": { + "backupRun": { + "$ref": "StorageDatabasecenterPartnerapiV1mainBackupRun", + "deprecated": true, + "description": "Deprecated: Use signal_metadata_list instead." + }, "fullResourceName": { "description": "Required. Full Resource name of the source resource.", "type": "string" @@ -5889,14 +5937,26 @@ "format": "google-datetime", "type": "string" }, + "location": { + "description": "Resource location.", + "type": "string" + }, "resourceId": { "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", "description": "Database resource id." }, "signalBoolValue": { - "description": "Signal data for boolean signals.", + "deprecated": true, + "description": "Deprecated: Use signal_metadata_list instead.", "type": "boolean" }, + "signalMetadataList": { + "description": "This will support array of OneOf signal metadata information for a given signal type.", + "items": { + "$ref": "StorageDatabasecenterPartnerapiV1mainSignalMetadata" + }, + "type": "array" + }, "signalState": { "description": "Required. Output only. Signal state of the signal", "enum": [ @@ -5924,7 +5984,10 @@ "SIGNAL_TYPE_EXPOSED_TO_PUBLIC_ACCESS", "SIGNAL_TYPE_UNENCRYPTED_CONNECTIONS", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY" + "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE", + "SIGNAL_TYPE_LAST_BACKUP_OLD", + "SIGNAL_TYPE_NOT_PROTECTED_BY_AUTOMATIC_FAILOVER" ], "enumDescriptions": [ "Unspecified signal type.", @@ -5934,7 +5997,10 @@ "Represents if a resource is exposed to public access.", "Represents if a resources requires all incoming connections to use SSL or not.", "Represents if a resource version is in extended support.", - "Represents if a resource has no automated backup policy." + "Represents if a resource has no automated backup policy.", + "Represents if a resource version is nearing end of life.", + "Represents if the last backup of a resource is older than 24 hours.", + "Represents if a resource is not protected by automatic failover." ], "type": "string" } @@ -6349,6 +6415,21 @@ }, "type": "object" }, + "StorageDatabasecenterPartnerapiV1mainSignalMetadata": { + "description": "SignalMetadata contains one of the signal metadata proto messages associated with a SignalType. This proto will be mapped to SignalMetadata message in storage.proto. Next ID: 3", + "id": "StorageDatabasecenterPartnerapiV1mainSignalMetadata", + "properties": { + "backupRun": { + "$ref": "StorageDatabasecenterPartnerapiV1mainBackupRun", + "description": "Signal data for backup runs." + }, + "signalBoolValue": { + "description": "Signal data for boolean signals.", + "type": "boolean" + } + }, + "type": "object" + }, "StorageDatabasecenterPartnerapiV1mainTags": { "description": "Message type for storing tags. Tags provide a way to create annotations for resources, and in some cases conditionally allow or deny policies based on whether a resource has a specific tag.", "id": "StorageDatabasecenterPartnerapiV1mainTags", diff --git a/discovery/alloydb-v1alpha.json b/discovery/alloydb-v1alpha.json index 5aabbcbf02e..eb7a0cd8065 100644 --- a/discovery/alloydb-v1alpha.json +++ b/discovery/alloydb-v1alpha.json @@ -357,7 +357,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha/projects/{projectsId}/locations", "httpMethod": "GET", "id": "alloydb.projects.locations.list", @@ -366,7 +366,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1691,6 +1691,213 @@ } } }, + "endpoints": { + "methods": { + "create": { + "description": "Creates a new Endpoint in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/endpoints", + "httpMethod": "POST", + "id": "alloydb.projects.locations.endpoints.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "endpointId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The location of the new endpoint. For the required format, see the comment on the Endpoint.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 ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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}/endpoints", + "request": { + "$ref": "Endpoint" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Endpoint.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/endpoints/{endpointsId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.endpoints.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The current etag of the Endpoint. If an etag is provided and does not match the current etag of the Endpoint, 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 Endpoint.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/endpoints/[^/]+$", + "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 ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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 Endpoint.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/endpoints/{endpointsId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.endpoints.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Endpoint.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/endpoints/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Endpoint" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Endpoints in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/endpoints", + "httpMethod": "GET", + "id": "alloydb.projects.locations.endpoints.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results. This field is currently not supported, its value will be ignored if passed.", + "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 page token, received from a previous `ListEndpoints` call. This should be provided to retrieve the subsequent page. This field is currently not supported, its value will be ignored if passed.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Endpoint.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}/endpoints", + "response": { + "$ref": "ListEndpointsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Endpoint.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/endpoints/{endpointsId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.endpoints.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, update succeeds even if endpoint is not found. In that case, a new endpoint is created and `update_mask` is ignored.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. Identifier. The name of the endpoint resource with the format: * projects/{project}/locations/{region}/endpoints/{endpoint_id} where the endpoint ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the endpoint resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/endpoints/[^/]+$", + "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 ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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 Endpoint 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": "Endpoint" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "operations": { "methods": { "cancel": { @@ -1879,7 +2086,7 @@ } } }, - "revision": "20260213", + "revision": "20260423", "rootUrl": "https://alloydb.googleapis.com/", "schemas": { "AuthorizedNetwork": { @@ -2562,7 +2769,8 @@ "BOOTSTRAPPING", "MAINTENANCE", "PROMOTING", - "SWITCHOVER" + "SWITCHOVER", + "RECREATING" ], "enumDescriptions": [ "The state of the cluster is unknown.", @@ -2575,7 +2783,8 @@ "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.", - "The cluster has entered switchover state. All updates on cluster and its associated instances are restricted while the cluster is in this state." + "The cluster has entered switchover state. All updates on cluster and its associated instances are restricted while the cluster is in this state.", + "The cluster is being recreated." ], "readOnly": true, "type": "string" @@ -2931,6 +3140,21 @@ }, "type": "object" }, + "DNSConfig": { + "description": "The DNS config for the endpoint, containing the DNS record name, type and targets.", + "id": "DNSConfig", + "properties": { + "dnsName": { + "description": "The fully qualified domain name (FQDN) of the DNS record, e.g., \".location.alloydb-psa.goog\".", + "type": "string" + }, + "dnsRecordType": { + "description": "The type of the DNS record, e.g., \"A\", \"AAAA\", \"CNAME\".", + "type": "string" + } + }, + "type": "object" + }, "DataplexConfig": { "description": "Configuration for Dataplex integration.", "id": "DataplexConfig", @@ -3008,6 +3232,114 @@ }, "type": "object" }, + "Endpoint": { + "description": "Endpoint resource.", + "id": "Endpoint", + "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" + }, + "createTime": { + "description": "Output only. Create time stamp", + "format": "google-datetime", + "readOnly": true, + "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 Endpoint.", + "type": "string" + }, + "dnsConfig": { + "$ref": "DNSConfig", + "description": "Output only. The DNS config for the endpoint. Each endpoint is associated with a specific DNS name and the DNS type. The DNS targets are the IP addresses of the target instances. The dns_type is the type of the DNS record, eg. Type \"A\" or Type \"CNAME\". This field is not configurable by the user, and it is updated when user specifies the target instances.", + "readOnly": true + }, + "effectiveTargetInstances": { + "description": "Output only. The effective target instances that the endpoint is associated with. This is a list of target instance names, e.g. projects/{project_number}/locations/{location}/clusters/{cluster_id}/instances/{instance_id} For write endpoint, there is only one effective target instance which has to be a primary instance. Effective target instances are only different from target instances after a switchover or cross-region failover operation. Otherwise, effective_target_instances are the same as target_instances. Note that after a cross-region failover operation, the effective_target_instances can be stale until the operation to update the endpoint is complete.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "endpointType": { + "description": "The type of the endpoint, either write or read.", + "enum": [ + "ENDPOINT_TYPE_UNSPECIFIED", + "WRITE_ENDPOINT", + "READ_ENDPOINT" + ], + "enumDescriptions": [ + "Unspecified endpoint type", + "Write endpoint, which is associated with a primary instance.", + "Read endpoint, which is associated with read or secondary instances." + ], + "type": "string" + }, + "etag": { + "description": "For Resource freshness validation (https://google.aip.dev/154)", + "type": "string" + }, + "name": { + "description": "Output only. Identifier. The name of the endpoint resource with the format: * projects/{project}/locations/{region}/endpoints/{endpoint_id} where the endpoint ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the endpoint 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). Set to true if the current state of Endpoint does not match the user's intended state, and the service is actively updating the Endpoint 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 state of the endpoint.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "CREATING", + "UPDATING", + "DELETING" + ], + "enumDescriptions": [ + "Unspecified state", + "The endpoint is active and ready to use.", + "The endpoint is being created.", + "The endpoint is being updated.", + "The endpoint is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "targetInstances": { + "description": "The names of the target instances for the endpoint, should be of format projects/{project}/locations/{region}/clusters/{cluster}/instances/{instance}. For write endpoint, there is only one target instance which has to be a primary instance. For read endpoint, there can be multiple target instances which can be read or secondary instances. After a cross-region failover or switchover operation, the endpoint will be associated with a different target instance. This change will be reflected in the effective_target_instances field.", + "items": { + "type": "string" + }, + "type": "array" + }, + "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" + }, "ExportClusterRequest": { "description": "Export cluster request.", "id": "ExportClusterRequest", @@ -3663,6 +3995,31 @@ }, "type": "object" }, + "ListEndpointsResponse": { + "description": "Message for response to listing Endpoints", + "id": "ListEndpointsResponse", + "properties": { + "endpoints": { + "description": "The list of Endpoints", + "items": { + "$ref": "Endpoint" + }, + "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", @@ -3900,6 +4257,11 @@ "readOnly": true, "type": "string" }, + "isHotStandby": { + "description": "Output only. Indicates whether the node set up to be configured as a hot standby.", + "readOnly": true, + "type": "boolean" + }, "state": { "description": "Output only. 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.", "readOnly": true, @@ -3947,6 +4309,10 @@ "description": "Track actively running queries on the instance. If not set, this flag is \"off\" by default.", "type": "boolean" }, + "trackActiveQueryPlan": { + "description": "Indicates whether to track active query plans for an instance. If not set, the default value is \"off\". Can only be enabled if track_active_queries is enabled.", + "type": "boolean" + }, "trackClientAddress": { "description": "Track client address for an instance. If not set, default value is \"off\".", "type": "boolean" @@ -4095,6 +4461,10 @@ "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" }, + "failover": { + "description": "Optional. If set, the promote operation will attempt to recreate the original primary cluster as a secondary cluster when it comes back online. Otherwise, the promoted cluster will be a standalone cluster. Currently only supported when there is a single secondary cluster.", + "type": "boolean" + }, "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 ignores the request if it has already been completed. The server guarantees 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" @@ -4845,7 +5215,10 @@ "SIGNAL_TYPE_EXPOSED_TO_PUBLIC_ACCESS", "SIGNAL_TYPE_UNENCRYPTED_CONNECTIONS", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY" + "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE", + "SIGNAL_TYPE_LAST_BACKUP_OLD", + "SIGNAL_TYPE_NOT_PROTECTED_BY_AUTOMATIC_FAILOVER" ], "enumDescriptions": [ "Unspecified signal type.", @@ -4855,7 +5228,10 @@ "Represents if a resource is exposed to public access.", "Represents if a resources requires all incoming connections to use SSL or not.", "Represents if a resource version is in extended support.", - "Represents if a resource has no automated backup policy." + "Represents if a resource has no automated backup policy.", + "Represents if a resource version is nearing end of life.", + "Represents if the last backup of a resource is older than 24 hours.", + "Represents if a resource is not protected by automatic failover." ], "type": "string" } @@ -5165,7 +5541,8 @@ "SIGNAL_TYPE_DATABOOST_DISABLED", "SIGNAL_TYPE_RECOMMENDED_MAINTENANCE_POLICIES", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE" + "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE" ], "enumDeprecated": [ false, @@ -5273,6 +5650,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -5381,7 +5759,8 @@ "Databoost is disabled.", "Recommended maintenance policy.", "Resource version is in extended support.", - "Change in performance KPIs." + "Change in performance KPIs.", + "Database version nearing end of life." ], "type": "string" }, @@ -5445,7 +5824,7 @@ "type": "object" }, "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata": { - "description": "Common model for database resource instance metadata. Next ID: 31", + "description": "Common model for database resource instance metadata. Next ID: 32", "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata", "properties": { "availabilityConfiguration": { @@ -5562,6 +5941,9 @@ "SUB_RESOURCE_TYPE_SECONDARY", "SUB_RESOURCE_TYPE_READ_REPLICA", "SUB_RESOURCE_TYPE_EXTERNAL_PRIMARY", + "SUB_RESOURCE_TYPE_READ_POOL", + "SUB_RESOURCE_TYPE_RESERVATION", + "SUB_RESOURCE_TYPE_DATASET", "SUB_RESOURCE_TYPE_OTHER" ], "enumDeprecated": [ @@ -5575,6 +5957,9 @@ false, false, false, + false, + false, + false, false ], "enumDescriptions": [ @@ -5588,6 +5973,9 @@ "A cluster or an instance acting as a secondary.", "An instance acting as a read-replica.", "An instance acting as an external primary.", + "An instance acting as Read Pool.", + "Represents a reservation resource.", + "Represents a dataset resource.", "For rest of the other categories." ], "type": "string" @@ -5608,6 +5996,25 @@ "$ref": "StorageDatabasecenterPartnerapiV1mainResourceMaintenanceInfo", "description": "Optional. Maintenance info for the resource." }, + "modes": { + "description": "Optional. The modes of the database resource.", + "items": { + "enum": [ + "MODE_UNSPECIFIED", + "MODE_NATIVE", + "MODE_MONGODB_COMPATIBLE", + "MODE_DATASTORE" + ], + "enumDescriptions": [ + "Default mode.", + "Native mode.", + "MongoDB compatible mode.", + "Datastore mode." + ], + "type": "string" + }, + "type": "array" + }, "primaryResourceId": { "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", "description": "Identifier for this resource's immediate parent/primary resource if the current resource is a replica or derived form of another Database resource. Else it would be NULL. REQUIRED if the immediate parent exists when first time resource is getting ingested, otherwise optional." @@ -5838,7 +6245,8 @@ "SIGNAL_TYPE_DATABOOST_DISABLED", "SIGNAL_TYPE_RECOMMENDED_MAINTENANCE_POLICIES", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE" + "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE" ], "enumDeprecated": [ false, @@ -5946,6 +6354,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -6054,7 +6463,8 @@ "Databoost is disabled.", "Recommended maintenance policy.", "Resource version is in extended support.", - "Change in performance KPIs." + "Change in performance KPIs.", + "Database version nearing end of life." ], "type": "string" } @@ -6062,9 +6472,14 @@ "type": "object" }, "StorageDatabasecenterPartnerapiV1mainDatabaseResourceSignalData": { - "description": "Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 7", + "description": "Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 10", "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceSignalData", "properties": { + "backupRun": { + "$ref": "StorageDatabasecenterPartnerapiV1mainBackupRun", + "deprecated": true, + "description": "Deprecated: Use signal_metadata_list instead." + }, "fullResourceName": { "description": "Required. Full Resource name of the source resource.", "type": "string" @@ -6074,14 +6489,26 @@ "format": "google-datetime", "type": "string" }, + "location": { + "description": "Required. Resource location.", + "type": "string" + }, "resourceId": { "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", "description": "Database resource id." }, "signalBoolValue": { - "description": "Signal data for boolean signals.", + "deprecated": true, + "description": "Deprecated: Use signal_metadata_list instead.", "type": "boolean" }, + "signalMetadataList": { + "description": "This will support array of OneOf signal metadata information for a given signal type.", + "items": { + "$ref": "StorageDatabasecenterPartnerapiV1mainSignalMetadata" + }, + "type": "array" + }, "signalState": { "description": "Required. Output only. Signal state of the signal", "enum": [ @@ -6109,7 +6536,10 @@ "SIGNAL_TYPE_EXPOSED_TO_PUBLIC_ACCESS", "SIGNAL_TYPE_UNENCRYPTED_CONNECTIONS", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY" + "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE", + "SIGNAL_TYPE_LAST_BACKUP_OLD", + "SIGNAL_TYPE_NOT_PROTECTED_BY_AUTOMATIC_FAILOVER" ], "enumDescriptions": [ "Unspecified signal type.", @@ -6119,7 +6549,10 @@ "Represents if a resource is exposed to public access.", "Represents if a resources requires all incoming connections to use SSL or not.", "Represents if a resource version is in extended support.", - "Represents if a resource has no automated backup policy." + "Represents if a resource has no automated backup policy.", + "Represents if a resource version is nearing end of life.", + "Represents if the last backup of a resource is older than 24 hours.", + "Represents if a resource is not protected by automatic failover." ], "type": "string" } @@ -6534,6 +6967,21 @@ }, "type": "object" }, + "StorageDatabasecenterPartnerapiV1mainSignalMetadata": { + "description": "SignalMetadata contains one of the signal metadata proto messages associated with a SignalType. This proto will be mapped to SignalMetadata message in storage.proto. Next ID: 3", + "id": "StorageDatabasecenterPartnerapiV1mainSignalMetadata", + "properties": { + "backupRun": { + "$ref": "StorageDatabasecenterPartnerapiV1mainBackupRun", + "description": "Signal data for backup runs." + }, + "signalBoolValue": { + "description": "Signal data for boolean signals.", + "type": "boolean" + } + }, + "type": "object" + }, "StorageDatabasecenterPartnerapiV1mainTags": { "description": "Message type for storing tags. Tags provide a way to create annotations for resources, and in some cases conditionally allow or deny policies based on whether a resource has a specific tag.", "id": "StorageDatabasecenterPartnerapiV1mainTags", diff --git a/discovery/alloydb-v1beta.json b/discovery/alloydb-v1beta.json index 8d998714a74..ea5fb2c7281 100644 --- a/discovery/alloydb-v1beta.json +++ b/discovery/alloydb-v1beta.json @@ -357,7 +357,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta/projects/{projectsId}/locations", "httpMethod": "GET", "id": "alloydb.projects.locations.list", @@ -366,7 +366,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1691,6 +1691,213 @@ } } }, + "endpoints": { + "methods": { + "create": { + "description": "Creates a new Endpoint in a given project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/endpoints", + "httpMethod": "POST", + "id": "alloydb.projects.locations.endpoints.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "endpointId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The location of the new endpoint. For the required format, see the comment on the Endpoint.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 ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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}/endpoints", + "request": { + "$ref": "Endpoint" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Endpoint.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/endpoints/{endpointsId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.endpoints.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The current etag of the Endpoint. If an etag is provided and does not match the current etag of the Endpoint, 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 Endpoint.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/endpoints/[^/]+$", + "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 ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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 Endpoint.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/endpoints/{endpointsId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.endpoints.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Endpoint.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/endpoints/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "Endpoint" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Endpoints in a given project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/endpoints", + "httpMethod": "GET", + "id": "alloydb.projects.locations.endpoints.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results. This field is currently not supported, its value will be ignored if passed.", + "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 page token, received from a previous `ListEndpoints` call. This should be provided to retrieve the subsequent page. This field is currently not supported, its value will be ignored if passed.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Endpoint.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}/endpoints", + "response": { + "$ref": "ListEndpointsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Endpoint.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/endpoints/{endpointsId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.endpoints.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, update succeeds even if endpoint is not found. In that case, a new endpoint is created and `update_mask` is ignored.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. Identifier. The name of the endpoint resource with the format: * projects/{project}/locations/{region}/endpoints/{endpoint_id} where the endpoint ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the endpoint resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/endpoints/[^/]+$", + "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 ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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 Endpoint 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": "Endpoint" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "operations": { "methods": { "cancel": { @@ -1876,7 +2083,7 @@ } } }, - "revision": "20260213", + "revision": "20260423", "rootUrl": "https://alloydb.googleapis.com/", "schemas": { "AuthorizedNetwork": { @@ -2543,7 +2750,8 @@ "BOOTSTRAPPING", "MAINTENANCE", "PROMOTING", - "SWITCHOVER" + "SWITCHOVER", + "RECREATING" ], "enumDescriptions": [ "The state of the cluster is unknown.", @@ -2556,7 +2764,8 @@ "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.", - "The cluster has entered switchover state. All updates on cluster and its associated instances are restricted while the cluster is in this state." + "The cluster has entered switchover state. All updates on cluster and its associated instances are restricted while the cluster is in this state.", + "The cluster is being recreated." ], "readOnly": true, "type": "string" @@ -2912,6 +3121,21 @@ }, "type": "object" }, + "DNSConfig": { + "description": "The DNS config for the endpoint, containing the DNS record name, type and targets.", + "id": "DNSConfig", + "properties": { + "dnsName": { + "description": "The fully qualified domain name (FQDN) of the DNS record, e.g., \".location.alloydb-psa.goog\".", + "type": "string" + }, + "dnsRecordType": { + "description": "The type of the DNS record, e.g., \"A\", \"AAAA\", \"CNAME\".", + "type": "string" + } + }, + "type": "object" + }, "DataplexConfig": { "description": "Configuration for Dataplex integration.", "id": "DataplexConfig", @@ -2989,6 +3213,114 @@ }, "type": "object" }, + "Endpoint": { + "description": "Endpoint resource.", + "id": "Endpoint", + "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" + }, + "createTime": { + "description": "Output only. Create time stamp", + "format": "google-datetime", + "readOnly": true, + "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 Endpoint.", + "type": "string" + }, + "dnsConfig": { + "$ref": "DNSConfig", + "description": "Output only. The DNS config for the endpoint. Each endpoint is associated with a specific DNS name and the DNS type. The DNS targets are the IP addresses of the target instances. The dns_type is the type of the DNS record, eg. Type \"A\" or Type \"CNAME\". This field is not configurable by the user, and it is updated when user specifies the target instances.", + "readOnly": true + }, + "effectiveTargetInstances": { + "description": "Output only. The effective target instances that the endpoint is associated with. This is a list of target instance names, e.g. projects/{project_number}/locations/{location}/clusters/{cluster_id}/instances/{instance_id} For write endpoint, there is only one effective target instance which has to be a primary instance. Effective target instances are only different from target instances after a switchover or cross-region failover operation. Otherwise, effective_target_instances are the same as target_instances. Note that after a cross-region failover operation, the effective_target_instances can be stale until the operation to update the endpoint is complete.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "endpointType": { + "description": "The type of the endpoint, either write or read.", + "enum": [ + "ENDPOINT_TYPE_UNSPECIFIED", + "WRITE_ENDPOINT", + "READ_ENDPOINT" + ], + "enumDescriptions": [ + "Unspecified endpoint type", + "Write endpoint, which is associated with a primary instance.", + "Read endpoint, which is associated with read or secondary instances." + ], + "type": "string" + }, + "etag": { + "description": "For Resource freshness validation (https://google.aip.dev/154)", + "type": "string" + }, + "name": { + "description": "Output only. Identifier. The name of the endpoint resource with the format: * projects/{project}/locations/{region}/endpoints/{endpoint_id} where the endpoint ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the endpoint 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). Set to true if the current state of Endpoint does not match the user's intended state, and the service is actively updating the Endpoint 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 state of the endpoint.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "CREATING", + "UPDATING", + "DELETING" + ], + "enumDescriptions": [ + "Unspecified state", + "The endpoint is active and ready to use.", + "The endpoint is being created.", + "The endpoint is being updated.", + "The endpoint is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "targetInstances": { + "description": "The names of the target instances for the endpoint, should be of format projects/{project}/locations/{region}/clusters/{cluster}/instances/{instance}. For write endpoint, there is only one target instance which has to be a primary instance. For read endpoint, there can be multiple target instances which can be read or secondary instances. After a cross-region failover or switchover operation, the endpoint will be associated with a different target instance. This change will be reflected in the effective_target_instances field.", + "items": { + "type": "string" + }, + "type": "array" + }, + "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" + }, "ExportClusterRequest": { "description": "Export cluster request.", "id": "ExportClusterRequest", @@ -3639,6 +3971,31 @@ }, "type": "object" }, + "ListEndpointsResponse": { + "description": "Message for response to listing Endpoints", + "id": "ListEndpointsResponse", + "properties": { + "endpoints": { + "description": "The list of Endpoints", + "items": { + "$ref": "Endpoint" + }, + "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", @@ -3876,6 +4233,11 @@ "readOnly": true, "type": "string" }, + "isHotStandby": { + "description": "Output only. Indicates whether the node set up to be configured as a hot standby.", + "readOnly": true, + "type": "boolean" + }, "state": { "description": "Output only. 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.", "readOnly": true, @@ -3923,6 +4285,10 @@ "description": "Track actively running queries on the instance. If not set, this flag is \"off\" by default.", "type": "boolean" }, + "trackActiveQueryPlan": { + "description": "Indicates whether to track active query plans for an instance. If not set, the default value is \"off\". Can only be enabled if track_active_queries is enabled.", + "type": "boolean" + }, "trackClientAddress": { "description": "Track client address for an instance. If not set, default value is \"off\".", "type": "boolean" @@ -4071,6 +4437,10 @@ "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" }, + "failover": { + "description": "Optional. If set, the promote operation will attempt to recreate the original primary cluster as a secondary cluster when it comes back online. Otherwise, the promoted cluster will be a standalone cluster. Currently only supported when there is a single secondary cluster.", + "type": "boolean" + }, "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 ignores the request if it has already been completed. The server guarantees 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" @@ -4821,7 +5191,10 @@ "SIGNAL_TYPE_EXPOSED_TO_PUBLIC_ACCESS", "SIGNAL_TYPE_UNENCRYPTED_CONNECTIONS", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY" + "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE", + "SIGNAL_TYPE_LAST_BACKUP_OLD", + "SIGNAL_TYPE_NOT_PROTECTED_BY_AUTOMATIC_FAILOVER" ], "enumDescriptions": [ "Unspecified signal type.", @@ -4831,7 +5204,10 @@ "Represents if a resource is exposed to public access.", "Represents if a resources requires all incoming connections to use SSL or not.", "Represents if a resource version is in extended support.", - "Represents if a resource has no automated backup policy." + "Represents if a resource has no automated backup policy.", + "Represents if a resource version is nearing end of life.", + "Represents if the last backup of a resource is older than 24 hours.", + "Represents if a resource is not protected by automatic failover." ], "type": "string" } @@ -5141,7 +5517,8 @@ "SIGNAL_TYPE_DATABOOST_DISABLED", "SIGNAL_TYPE_RECOMMENDED_MAINTENANCE_POLICIES", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE" + "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE" ], "enumDeprecated": [ false, @@ -5249,6 +5626,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -5357,7 +5735,8 @@ "Databoost is disabled.", "Recommended maintenance policy.", "Resource version is in extended support.", - "Change in performance KPIs." + "Change in performance KPIs.", + "Database version nearing end of life." ], "type": "string" }, @@ -5421,7 +5800,7 @@ "type": "object" }, "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata": { - "description": "Common model for database resource instance metadata. Next ID: 31", + "description": "Common model for database resource instance metadata. Next ID: 32", "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata", "properties": { "availabilityConfiguration": { @@ -5538,6 +5917,9 @@ "SUB_RESOURCE_TYPE_SECONDARY", "SUB_RESOURCE_TYPE_READ_REPLICA", "SUB_RESOURCE_TYPE_EXTERNAL_PRIMARY", + "SUB_RESOURCE_TYPE_READ_POOL", + "SUB_RESOURCE_TYPE_RESERVATION", + "SUB_RESOURCE_TYPE_DATASET", "SUB_RESOURCE_TYPE_OTHER" ], "enumDeprecated": [ @@ -5551,6 +5933,9 @@ false, false, false, + false, + false, + false, false ], "enumDescriptions": [ @@ -5564,6 +5949,9 @@ "A cluster or an instance acting as a secondary.", "An instance acting as a read-replica.", "An instance acting as an external primary.", + "An instance acting as Read Pool.", + "Represents a reservation resource.", + "Represents a dataset resource.", "For rest of the other categories." ], "type": "string" @@ -5584,6 +5972,25 @@ "$ref": "StorageDatabasecenterPartnerapiV1mainResourceMaintenanceInfo", "description": "Optional. Maintenance info for the resource." }, + "modes": { + "description": "Optional. The modes of the database resource.", + "items": { + "enum": [ + "MODE_UNSPECIFIED", + "MODE_NATIVE", + "MODE_MONGODB_COMPATIBLE", + "MODE_DATASTORE" + ], + "enumDescriptions": [ + "Default mode.", + "Native mode.", + "MongoDB compatible mode.", + "Datastore mode." + ], + "type": "string" + }, + "type": "array" + }, "primaryResourceId": { "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", "description": "Identifier for this resource's immediate parent/primary resource if the current resource is a replica or derived form of another Database resource. Else it would be NULL. REQUIRED if the immediate parent exists when first time resource is getting ingested, otherwise optional." @@ -5814,7 +6221,8 @@ "SIGNAL_TYPE_DATABOOST_DISABLED", "SIGNAL_TYPE_RECOMMENDED_MAINTENANCE_POLICIES", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE" + "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE" ], "enumDeprecated": [ false, @@ -5922,6 +6330,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -6030,7 +6439,8 @@ "Databoost is disabled.", "Recommended maintenance policy.", "Resource version is in extended support.", - "Change in performance KPIs." + "Change in performance KPIs.", + "Database version nearing end of life." ], "type": "string" } @@ -6038,9 +6448,14 @@ "type": "object" }, "StorageDatabasecenterPartnerapiV1mainDatabaseResourceSignalData": { - "description": "Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 7", + "description": "Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 10", "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceSignalData", "properties": { + "backupRun": { + "$ref": "StorageDatabasecenterPartnerapiV1mainBackupRun", + "deprecated": true, + "description": "Deprecated: Use signal_metadata_list instead." + }, "fullResourceName": { "description": "Required. Full Resource name of the source resource.", "type": "string" @@ -6050,14 +6465,26 @@ "format": "google-datetime", "type": "string" }, + "location": { + "description": "Required. Resource location.", + "type": "string" + }, "resourceId": { "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", "description": "Database resource id." }, "signalBoolValue": { - "description": "Signal data for boolean signals.", + "deprecated": true, + "description": "Deprecated: Use signal_metadata_list instead.", "type": "boolean" }, + "signalMetadataList": { + "description": "This will support array of OneOf signal metadata information for a given signal type.", + "items": { + "$ref": "StorageDatabasecenterPartnerapiV1mainSignalMetadata" + }, + "type": "array" + }, "signalState": { "description": "Required. Output only. Signal state of the signal", "enum": [ @@ -6085,7 +6512,10 @@ "SIGNAL_TYPE_EXPOSED_TO_PUBLIC_ACCESS", "SIGNAL_TYPE_UNENCRYPTED_CONNECTIONS", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY" + "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE", + "SIGNAL_TYPE_LAST_BACKUP_OLD", + "SIGNAL_TYPE_NOT_PROTECTED_BY_AUTOMATIC_FAILOVER" ], "enumDescriptions": [ "Unspecified signal type.", @@ -6095,7 +6525,10 @@ "Represents if a resource is exposed to public access.", "Represents if a resources requires all incoming connections to use SSL or not.", "Represents if a resource version is in extended support.", - "Represents if a resource has no automated backup policy." + "Represents if a resource has no automated backup policy.", + "Represents if a resource version is nearing end of life.", + "Represents if the last backup of a resource is older than 24 hours.", + "Represents if a resource is not protected by automatic failover." ], "type": "string" } @@ -6510,6 +6943,21 @@ }, "type": "object" }, + "StorageDatabasecenterPartnerapiV1mainSignalMetadata": { + "description": "SignalMetadata contains one of the signal metadata proto messages associated with a SignalType. This proto will be mapped to SignalMetadata message in storage.proto. Next ID: 3", + "id": "StorageDatabasecenterPartnerapiV1mainSignalMetadata", + "properties": { + "backupRun": { + "$ref": "StorageDatabasecenterPartnerapiV1mainBackupRun", + "description": "Signal data for backup runs." + }, + "signalBoolValue": { + "description": "Signal data for boolean signals.", + "type": "boolean" + } + }, + "type": "object" + }, "StorageDatabasecenterPartnerapiV1mainTags": { "description": "Message type for storing tags. Tags provide a way to create annotations for resources, and in some cases conditionally allow or deny policies based on whether a resource has a specific tag.", "id": "StorageDatabasecenterPartnerapiV1mainTags", diff --git a/discovery/analyticsadmin-v1alpha.json b/discovery/analyticsadmin-v1alpha.json index a609d9d8406..3502b9e512b 100644 --- a/discovery/analyticsadmin-v1alpha.json +++ b/discovery/analyticsadmin-v1alpha.json @@ -124,13 +124,13 @@ "parameterOrder": [], "parameters": { "pageSize": { - "description": "The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token.", "location": "query", "type": "string" } @@ -233,13 +233,13 @@ "parameterOrder": [], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -268,7 +268,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name of this account. Format: accounts/{account} Example: \"accounts/100\"", + "description": "Identifier. Resource name of this account. Format: accounts/{account} Example: \"accounts/100\"", "location": "path", "pattern": "^accounts/[^/]+$", "required": true, @@ -856,6 +856,32 @@ "https://www.googleapis.com/auth/analytics.readonly" ] }, + "getUserProvidedDataSettings": { + "description": "Looks up settings related to user-provided data for a property.", + "flatPath": "v1alpha/properties/{propertiesId}/userProvidedDataSettings", + "httpMethod": "GET", + "id": "analyticsadmin.properties.getUserProvidedDataSettings", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the user provided data settings to retrieve. Format: properties/{property}/userProvidedDataSettings", + "location": "path", + "pattern": "^properties/[^/]+/userProvidedDataSettings$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "GoogleAnalyticsAdminV1alphaUserProvidedDataSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, "list": { "description": "Returns child Properties under the specified parent Account. Properties will be excluded if the caller does not have access. Soft-deleted (ie: \"trashed\") properties are excluded by default. Returns an empty list if no relevant properties are found.", "flatPath": "v1alpha/properties", @@ -869,13 +895,13 @@ "type": "string" }, "pageSize": { - "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -904,7 +930,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name of this property. Format: properties/{property_id} Example: \"properties/1000\"", + "description": "Identifier. Resource name of this property. Format: properties/{property_id} Example: \"properties/1000\"", "location": "path", "pattern": "^properties/[^/]+$", "required": true, @@ -1047,7 +1073,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property}/dataRetentionSettings", + "description": "Identifier. Resource name for this DataRetentionSetting resource. Format: properties/{property}/dataRetentionSettings", "location": "path", "pattern": "^properties/[^/]+/dataRetentionSettings$", "required": true, @@ -1935,7 +1961,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name for this CalculatedMetric. Format: 'properties/{property_id}/calculatedMetrics/{calculated_metric_id}'", + "description": "Identifier. Resource name for this CalculatedMetric. Format: 'properties/{property_id}/calculatedMetrics/{calculated_metric_id}'", "location": "path", "pattern": "^properties/[^/]+/calculatedMetrics/[^/]+$", "required": true, @@ -2211,13 +2237,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -2249,7 +2275,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name of this conversion event. Format: properties/{property}/conversionEvents/{conversion_event}", + "description": "Identifier. Resource name of this conversion event. Format: properties/{property}/conversionEvents/{conversion_event}", "location": "path", "pattern": "^properties/[^/]+/conversionEvents/[^/]+$", "required": true, @@ -2369,13 +2395,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + "description": "Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -2406,7 +2432,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name for this CustomDimension resource. Format: properties/{property}/customDimensions/{customDimension}", + "description": "Identifier. Resource name for this CustomDimension resource. Format: properties/{property}/customDimensions/{customDimension}", "location": "path", "pattern": "^properties/[^/]+/customDimensions/[^/]+$", "required": true, @@ -2563,7 +2589,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name for this CustomMetric resource. Format: properties/{property}/customMetrics/{customMetric}", + "description": "Identifier. Resource name for this CustomMetric resource. Format: properties/{property}/customMetrics/{customMetric}", "location": "path", "pattern": "^properties/[^/]+/customMetrics/[^/]+$", "required": true, @@ -2795,7 +2821,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name of this Data Stream. Format: properties/{property_id}/dataStreams/{stream_id} Example: \"properties/1000/dataStreams/2000\"", + "description": "Identifier. Resource name of this Data Stream. Format: properties/{property_id}/dataStreams/{stream_id} Example: \"properties/1000/dataStreams/2000\"", "location": "path", "pattern": "^properties/[^/]+/dataStreams/[^/]+$", "required": true, @@ -3316,13 +3342,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum.", + "description": "Optional. The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -3353,7 +3379,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", + "description": "Identifier. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", "location": "path", "pattern": "^properties/[^/]+/dataStreams/[^/]+/measurementProtocolSecrets/[^/]+$", "required": true, @@ -3470,13 +3496,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListSKAdNetworkConversionValueSchemas` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListSKAdNetworkConversionValueSchema` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListSKAdNetworkConversionValueSchemas` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListSKAdNetworkConversionValueSchema` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -3507,7 +3533,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name of the schema. This will be child of ONLY an iOS stream, and there can be at most one such child under an iOS stream. Format: properties/{property}/dataStreams/{dataStream}/sKAdNetworkConversionValueSchema", + "description": "Identifier. Resource name of the schema. This will be child of ONLY an iOS stream, and there can be at most one such child under an iOS stream. Format: properties/{property}/dataStreams/{dataStream}/sKAdNetworkConversionValueSchema", "location": "path", "pattern": "^properties/[^/]+/dataStreams/[^/]+/sKAdNetworkConversionValueSchema/[^/]+$", "required": true, @@ -3839,7 +3865,7 @@ ], "parameters": { "name": { - "description": "Output only. The resource name for this DisplayVideo360AdvertiserLink resource. Format: properties/{propertyId}/displayVideo360AdvertiserLinks/{linkId} Note: linkId is not the Display & Video 360 Advertiser ID", + "description": "Identifier. The resource name for this DisplayVideo360AdvertiserLink resource. Format: properties/{propertyId}/displayVideo360AdvertiserLinks/{linkId} Note: linkId is not the Display & Video 360 Advertiser ID", "location": "path", "pattern": "^properties/[^/]+/displayVideo360AdvertiserLinks/[^/]+$", "required": true, @@ -4084,13 +4110,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -4178,13 +4204,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + "description": "Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -4215,7 +4241,7 @@ ], "parameters": { "name": { - "description": "Output only. Format: properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: googleAdsLinkId is not the Google Ads customer ID.", + "description": "Identifier. Format: properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: googleAdsLinkId is not the Google Ads customer ID.", "location": "path", "pattern": "^properties/[^/]+/googleAdsLinks/[^/]+$", "required": true, @@ -4332,13 +4358,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListKeyEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListKeyEvents` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListKeyEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListKeyEvents` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -4802,7 +4828,7 @@ ], "parameters": { "name": { - "description": "Output only. The resource name for this SearchAds360Link resource. Format: properties/{propertyId}/searchAds360Links/{linkId} Note: linkId is not the Search Ads 360 advertiser ID", + "description": "Identifier. The resource name for this SearchAds360Link resource. Format: properties/{propertyId}/searchAds360Links/{linkId} Note: linkId is not the Search Ads 360 advertiser ID", "location": "path", "pattern": "^properties/[^/]+/searchAds360Links/[^/]+$", "required": true, @@ -5086,7 +5112,7 @@ } } }, - "revision": "20250820", + "revision": "20260412", "rootUrl": "https://analyticsadmin.googleapis.com/", "schemas": { "GoogleAnalyticsAdminV1alphaAccessBetweenFilter": { @@ -5505,8 +5531,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name of this account. Format: accounts/{account} Example: \"accounts/100\"", - "readOnly": true, + "description": "Identifier. Resource name of this account. Format: accounts/{account} Example: \"accounts/100\"", "type": "string" }, "regionCode": { @@ -5535,7 +5560,7 @@ "type": "string" }, "name": { - "description": "Resource name for this account summary. Format: accountSummaries/{account_id} Example: \"accountSummaries/1000\"", + "description": "Identifier. Resource name for this account summary. Format: accountSummaries/{account_id} Example: \"accountSummaries/1000\"", "type": "string" }, "propertySummaries": { @@ -6304,8 +6329,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name for this CalculatedMetric. Format: 'properties/{property_id}/calculatedMetrics/{calculated_metric_id}'", - "readOnly": true, + "description": "Identifier. Resource name for this CalculatedMetric. Format: 'properties/{property_id}/calculatedMetrics/{calculated_metric_id}'", "type": "string" }, "restrictedMetricType": { @@ -6489,6 +6513,10 @@ "subpropertySyncConfig": { "$ref": "GoogleAnalyticsAdminV1alphaSubpropertySyncConfig", "description": "A snapshot of a SubpropertySyncConfig resource in change history." + }, + "userProvidedDataSettings": { + "$ref": "GoogleAnalyticsAdminV1alphaUserProvidedDataSettings", + "description": "A snapshot of a UserProvidedDataSettings resource in change history." } }, "type": "object" @@ -6722,8 +6750,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name of this conversion event. Format: properties/{property}/conversionEvents/{conversion_event}", - "readOnly": true, + "description": "Identifier. Resource name of this conversion event. Format: properties/{property}/conversionEvents/{conversion_event}", "type": "string" } }, @@ -6856,8 +6883,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name for this CustomDimension resource. Format: properties/{property}/customDimensions/{customDimension}", - "readOnly": true, + "description": "Identifier. Resource name for this CustomDimension resource. Format: properties/{property}/customDimensions/{customDimension}", "type": "string" }, "parameterName": { @@ -6926,8 +6952,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name for this CustomMetric resource. Format: properties/{property}/customMetrics/{customMetric}", - "readOnly": true, + "description": "Identifier. Resource name for this CustomMetric resource. Format: properties/{property}/customMetrics/{customMetric}", "type": "string" }, "parameterName": { @@ -7018,8 +7043,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property}/dataRetentionSettings", - "readOnly": true, + "description": "Identifier. Resource name for this DataRetentionSetting resource. Format: properties/{property}/dataRetentionSettings", "type": "string" }, "resetUserDataOnNewActivity": { @@ -7054,8 +7078,7 @@ "id": "GoogleAnalyticsAdminV1alphaDataSharingSettings", "properties": { "name": { - "description": "Output only. Resource name. Format: accounts/{account}/dataSharingSettings Example: \"accounts/1000/dataSharingSettings\"", - "readOnly": true, + "description": "Identifier. Resource name. Format: accounts/{account}/dataSharingSettings Example: \"accounts/1000/dataSharingSettings\"", "type": "string" }, "sharingWithGoogleAnySalesEnabled": { @@ -7105,8 +7128,7 @@ "description": "Data specific to iOS app streams. Must be populated if type is IOS_APP_DATA_STREAM." }, "name": { - "description": "Output only. Resource name of this Data Stream. Format: properties/{property_id}/dataStreams/{stream_id} Example: \"properties/1000/dataStreams/2000\"", - "readOnly": true, + "description": "Identifier. Resource name of this Data Stream. Format: properties/{property_id}/dataStreams/{stream_id} Example: \"properties/1000/dataStreams/2000\"", "type": "string" }, "type": { @@ -7228,8 +7250,7 @@ "type": "boolean" }, "name": { - "description": "Output only. The resource name for this DisplayVideo360AdvertiserLink resource. Format: properties/{propertyId}/displayVideo360AdvertiserLinks/{linkId} Note: linkId is not the Display & Video 360 Advertiser ID", - "readOnly": true, + "description": "Identifier. The resource name for this DisplayVideo360AdvertiserLink resource. Format: properties/{propertyId}/displayVideo360AdvertiserLinks/{linkId} Note: linkId is not the Display & Video 360 Advertiser ID", "type": "string" } }, @@ -7266,8 +7287,7 @@ "readOnly": true }, "name": { - "description": "Output only. The resource name for this DisplayVideo360AdvertiserLinkProposal resource. Format: properties/{propertyId}/displayVideo360AdvertiserLinkProposals/{proposalId} Note: proposalId is not the Display & Video 360 Advertiser ID", - "readOnly": true, + "description": "Identifier. The resource name for this DisplayVideo360AdvertiserLinkProposal resource. Format: properties/{propertyId}/displayVideo360AdvertiserLinkProposals/{proposalId} Note: proposalId is not the Display & Video 360 Advertiser ID", "type": "string" }, "validationEmail": { @@ -7583,8 +7603,7 @@ "type": "string" }, "name": { - "description": "Output only. Example format: properties/1234/firebaseLinks/5678", - "readOnly": true, + "description": "Identifier. Example format: properties/1234/firebaseLinks/5678", "type": "string" }, "project": { @@ -7599,8 +7618,7 @@ "id": "GoogleAnalyticsAdminV1alphaGlobalSiteTag", "properties": { "name": { - "description": "Output only. Resource name for this GlobalSiteTag resource. Format: properties/{property_id}/dataStreams/{stream_id}/globalSiteTag Example: \"properties/123/dataStreams/456/globalSiteTag\"", - "readOnly": true, + "description": "Identifier. Resource name for this GlobalSiteTag resource. Format: properties/{property_id}/dataStreams/{stream_id}/globalSiteTag Example: \"properties/123/dataStreams/456/globalSiteTag\"", "type": "string" }, "snippet": { @@ -7639,8 +7657,7 @@ "type": "string" }, "name": { - "description": "Output only. Format: properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: googleAdsLinkId is not the Google Ads customer ID.", - "readOnly": true, + "description": "Identifier. Format: properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: googleAdsLinkId is not the Google Ads customer ID.", "type": "string" }, "updateTime": { @@ -8394,8 +8411,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", - "readOnly": true, + "description": "Identifier. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", "type": "string" }, "secretValue": { @@ -8553,8 +8569,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name of this property. Format: properties/{property_id} Example: \"properties/1000\"", - "readOnly": true, + "description": "Identifier. Resource name of this property. Format: properties/{property_id} Example: \"properties/1000\"", "type": "string" }, "parent": { @@ -8954,8 +8969,7 @@ "type": "boolean" }, "name": { - "description": "Output only. Resource name of the schema. This will be child of ONLY an iOS stream, and there can be at most one such child under an iOS stream. Format: properties/{property}/dataStreams/{dataStream}/sKAdNetworkConversionValueSchema", - "readOnly": true, + "description": "Identifier. Resource name of the schema. This will be child of ONLY an iOS stream, and there can be at most one such child under an iOS stream. Format: properties/{property}/dataStreams/{dataStream}/sKAdNetworkConversionValueSchema", "type": "string" }, "postbackWindowOne": { @@ -8999,8 +9013,7 @@ "type": "boolean" }, "name": { - "description": "Output only. The resource name for this SearchAds360Link resource. Format: properties/{propertyId}/searchAds360Links/{linkId} Note: linkId is not the Search Ads 360 advertiser ID", - "readOnly": true, + "description": "Identifier. The resource name for this SearchAds360Link resource. Format: properties/{propertyId}/searchAds360Links/{linkId} Note: linkId is not the Search Ads 360 advertiser ID", "type": "string" }, "siteStatsSharingEnabled": { @@ -9096,7 +9109,8 @@ "CALCULATED_METRIC", "REPORTING_DATA_ANNOTATION", "SUBPROPERTY_SYNC_CONFIG", - "REPORTING_IDENTITY_SETTINGS" + "REPORTING_IDENTITY_SETTINGS", + "USER_PROVIDED_DATA_SETTINGS" ], "enumDescriptions": [ "Resource type unknown or not specified.", @@ -9128,7 +9142,8 @@ "CalculatedMetric resource", "ReportingDataAnnotation resource", "SubpropertySyncConfig resource", - "ReportingIdentitySettings resource" + "ReportingIdentitySettings resource", + "UserProvidedDataSettings resource" ], "type": "string" }, @@ -9369,6 +9384,25 @@ }, "type": "object" }, + "GoogleAnalyticsAdminV1alphaUserProvidedDataSettings": { + "description": "Configuration for user-provided data collection. This is a singleton resource for a Google Analytics property.", + "id": "GoogleAnalyticsAdminV1alphaUserProvidedDataSettings", + "properties": { + "automaticallyDetectedDataCollectionEnabled": { + "description": "Optional. Whether this property allows a Google Tag to automatically collect user-provided data from your website. This setting only takes effect if `user_provided_data_collection_enabled` is also true.", + "type": "boolean" + }, + "name": { + "description": "Identifier. Resource name of this setting. Format: properties/{property}/userProvidedDataSettings Example: \"properties/1000/userProvidedDataSettings\"", + "type": "string" + }, + "userProvidedDataCollectionEnabled": { + "description": "Optional. Whether this property accepts user-provided data sent to it.", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleProtobufEmpty": { "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": "GoogleProtobufEmpty", diff --git a/discovery/analyticsadmin-v1beta.json b/discovery/analyticsadmin-v1beta.json index 8e9e3bc7849..ccb866cf9c0 100644 --- a/discovery/analyticsadmin-v1beta.json +++ b/discovery/analyticsadmin-v1beta.json @@ -118,13 +118,13 @@ "parameterOrder": [], "parameters": { "pageSize": { - "description": "The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token.", "location": "query", "type": "string" } @@ -227,13 +227,13 @@ "parameterOrder": [], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -262,7 +262,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name of this account. Format: accounts/{account} Example: \"accounts/100\"", + "description": "Identifier. Resource name of this account. Format: accounts/{account} Example: \"accounts/100\"", "location": "path", "pattern": "^accounts/[^/]+$", "required": true, @@ -501,13 +501,13 @@ "type": "string" }, "pageSize": { - "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -536,7 +536,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name of this property. Format: properties/{property_id} Example: \"properties/1000\"", + "description": "Identifier. Resource name of this property. Format: properties/{property_id} Example: \"properties/1000\"", "location": "path", "pattern": "^properties/[^/]+$", "required": true, @@ -599,7 +599,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property}/dataRetentionSettings", + "description": "Identifier. Resource name for this DataRetentionSetting resource. Format: properties/{property}/dataRetentionSettings", "location": "path", "pattern": "^properties/[^/]+/dataRetentionSettings$", "required": true, @@ -721,13 +721,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -759,7 +759,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name of this conversion event. Format: properties/{property}/conversionEvents/{conversion_event}", + "description": "Identifier. Resource name of this conversion event. Format: properties/{property}/conversionEvents/{conversion_event}", "location": "path", "pattern": "^properties/[^/]+/conversionEvents/[^/]+$", "required": true, @@ -879,13 +879,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + "description": "Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -916,7 +916,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name for this CustomDimension resource. Format: properties/{property}/customDimensions/{customDimension}", + "description": "Identifier. Resource name for this CustomDimension resource. Format: properties/{property}/customDimensions/{customDimension}", "location": "path", "pattern": "^properties/[^/]+/customDimensions/[^/]+$", "required": true, @@ -1073,7 +1073,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name for this CustomMetric resource. Format: properties/{property}/customMetrics/{customMetric}", + "description": "Identifier. Resource name for this CustomMetric resource. Format: properties/{property}/customMetrics/{customMetric}", "location": "path", "pattern": "^properties/[^/]+/customMetrics/[^/]+$", "required": true, @@ -1227,7 +1227,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name of this Data Stream. Format: properties/{property_id}/dataStreams/{stream_id} Example: \"properties/1000/dataStreams/2000\"", + "description": "Identifier. Resource name of this Data Stream. Format: properties/{property_id}/dataStreams/{stream_id} Example: \"properties/1000/dataStreams/2000\"", "location": "path", "pattern": "^properties/[^/]+/dataStreams/[^/]+$", "required": true, @@ -1344,13 +1344,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum.", + "description": "Optional. The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -1381,7 +1381,7 @@ ], "parameters": { "name": { - "description": "Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", + "description": "Identifier. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", "location": "path", "pattern": "^properties/[^/]+/dataStreams/[^/]+/measurementProtocolSecrets/[^/]+$", "required": true, @@ -1474,13 +1474,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -1568,13 +1568,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", + "description": "Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -1605,7 +1605,7 @@ ], "parameters": { "name": { - "description": "Output only. Format: properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: googleAdsLinkId is not the Google Ads customer ID.", + "description": "Identifier. Format: properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: googleAdsLinkId is not the Google Ads customer ID.", "location": "path", "pattern": "^properties/[^/]+/googleAdsLinks/[^/]+$", "required": true, @@ -1722,13 +1722,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", + "description": "Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListKeyEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListKeyEvents` must match the call that provided the page token.", + "description": "Optional. A page token, received from a previous `ListKeyEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListKeyEvents` must match the call that provided the page token.", "location": "query", "type": "string" }, @@ -1788,7 +1788,7 @@ } } }, - "revision": "20250307", + "revision": "20260331", "rootUrl": "https://analyticsadmin.googleapis.com/", "schemas": { "GoogleAnalyticsAdminV1betaAccessBetweenFilter": { @@ -2184,8 +2184,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name of this account. Format: accounts/{account} Example: \"accounts/100\"", - "readOnly": true, + "description": "Identifier. Resource name of this account. Format: accounts/{account} Example: \"accounts/100\"", "type": "string" }, "regionCode": { @@ -2214,7 +2213,7 @@ "type": "string" }, "name": { - "description": "Resource name for this account summary. Format: accountSummaries/{account_id} Example: \"accountSummaries/1000\"", + "description": "Identifier. Resource name for this account summary. Format: accountSummaries/{account_id} Example: \"accountSummaries/1000\"", "type": "string" }, "propertySummaries": { @@ -2420,8 +2419,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name of this conversion event. Format: properties/{property}/conversionEvents/{conversion_event}", - "readOnly": true, + "description": "Identifier. Resource name of this conversion event. Format: properties/{property}/conversionEvents/{conversion_event}", "type": "string" } }, @@ -2460,8 +2458,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name for this CustomDimension resource. Format: properties/{property}/customDimensions/{customDimension}", - "readOnly": true, + "description": "Identifier. Resource name for this CustomDimension resource. Format: properties/{property}/customDimensions/{customDimension}", "type": "string" }, "parameterName": { @@ -2530,8 +2527,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name for this CustomMetric resource. Format: properties/{property}/customMetrics/{customMetric}", - "readOnly": true, + "description": "Identifier. Resource name for this CustomMetric resource. Format: properties/{property}/customMetrics/{customMetric}", "type": "string" }, "parameterName": { @@ -2595,8 +2591,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property}/dataRetentionSettings", - "readOnly": true, + "description": "Identifier. Resource name for this DataRetentionSetting resource. Format: properties/{property}/dataRetentionSettings", "type": "string" }, "resetUserDataOnNewActivity": { @@ -2631,8 +2626,7 @@ "id": "GoogleAnalyticsAdminV1betaDataSharingSettings", "properties": { "name": { - "description": "Output only. Resource name. Format: accounts/{account}/dataSharingSettings Example: \"accounts/1000/dataSharingSettings\"", - "readOnly": true, + "description": "Identifier. Resource name. Format: accounts/{account}/dataSharingSettings Example: \"accounts/1000/dataSharingSettings\"", "type": "string" }, "sharingWithGoogleAnySalesEnabled": { @@ -2682,8 +2676,7 @@ "description": "Data specific to iOS app streams. Must be populated if type is IOS_APP_DATA_STREAM." }, "name": { - "description": "Output only. Resource name of this Data Stream. Format: properties/{property_id}/dataStreams/{stream_id} Example: \"properties/1000/dataStreams/2000\"", - "readOnly": true, + "description": "Identifier. Resource name of this Data Stream. Format: properties/{property_id}/dataStreams/{stream_id} Example: \"properties/1000/dataStreams/2000\"", "type": "string" }, "type": { @@ -2779,8 +2772,7 @@ "type": "string" }, "name": { - "description": "Output only. Example format: properties/1234/firebaseLinks/5678", - "readOnly": true, + "description": "Identifier. Example format: properties/1234/firebaseLinks/5678", "type": "string" }, "project": { @@ -2819,8 +2811,7 @@ "type": "string" }, "name": { - "description": "Output only. Format: properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: googleAdsLinkId is not the Google Ads customer ID.", - "readOnly": true, + "description": "Identifier. Format: properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: googleAdsLinkId is not the Google Ads customer ID.", "type": "string" }, "updateTime": { @@ -3105,8 +3096,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", - "readOnly": true, + "description": "Identifier. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}", "type": "string" }, "secretValue": { @@ -3231,8 +3221,7 @@ "type": "string" }, "name": { - "description": "Output only. Resource name of this property. Format: properties/{property_id} Example: \"properties/1000\"", - "readOnly": true, + "description": "Identifier. Resource name of this property. Format: properties/{property_id} Example: \"properties/1000\"", "type": "string" }, "parent": { diff --git a/discovery/analyticshub-v1.json b/discovery/analyticshub-v1.json index 6a027ec43b9..55626f38cd3 100644 --- a/discovery/analyticshub-v1.json +++ b/discovery/analyticshub-v1.json @@ -1247,7 +1247,7 @@ } } }, - "revision": "20260118", + "revision": "20260427", "rootUrl": "https://analyticshub.googleapis.com/", "schemas": { "AIInference": { @@ -1406,6 +1406,29 @@ }, "type": "object" }, + "BigtableConfig": { + "description": "Configuration for a Bigtable subscription. The Pub/Sub message will be written to a Bigtable row as follows: - row key: subscription name and message ID delimited by #. - columns: message bytes written to a single column family \"data\" with an empty-string column qualifier. - cell timestamp: the message publish timestamp.", + "id": "BigtableConfig", + "properties": { + "appProfileId": { + "description": "Optional. The app profile to use for the Bigtable writes. If not specified, the \"default\" application profile will be used. The app profile must use single-cluster routing.", + "type": "string" + }, + "serviceAccountEmail": { + "description": "Optional. The service account to use to write to Bigtable. The subscription creator or updater that specifies this field must have `iam.serviceAccounts.actAs` permission on the service account. If not specified, the Pub/Sub [service agent]({$universe.dns_names.final_documentation_domain}/iam/docs/service-agents), service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.", + "type": "string" + }, + "table": { + "description": "Optional. The unique name of the table to write messages to. Values are of the form `projects//instances//tables/`.", + "type": "string" + }, + "writeMetadata": { + "description": "Optional. When true, write the subscription name, message_id, publish_time, attributes, and ordering_key to additional columns in the table under the pubsub_metadata column family. The subscription name, message_id, and publish_time fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column.", + "type": "boolean" + } + }, + "type": "object" + }, "Binding": { "description": "Associates `members`, or principals, with a `role`.", "id": "Binding", @@ -1782,7 +1805,7 @@ "type": "object" }, "GooglePubsubV1Subscription": { - "description": "Defines the destination Pub/Sub subscription. If none of `push_config`, `bigquery_config`, `cloud_storage_config`, `pubsub_export_config`, or `pubsublite_export_config` is set, then the subscriber will pull and ack messages using API methods. At most one of these fields may be set.", + "description": "Defines the destination Pub/Sub subscription. If none of `push_config`, `bigquery_config`, `cloud_storage_config`, `bigtable_config`, `pubsub_export_config`, or `pubsublite_export_config` is set, then the subscriber will pull and ack messages using API methods. At most one of these fields may be set.", "id": "GooglePubsubV1Subscription", "properties": { "ackDeadlineSeconds": { @@ -1794,6 +1817,10 @@ "$ref": "BigQueryConfig", "description": "Optional. If delivery to BigQuery is used with this subscription, this field is used to configure it." }, + "bigtableConfig": { + "$ref": "BigtableConfig", + "description": "Optional. If delivery to Bigtable is used with this subscription, this field is used to configure it." + }, "cloudStorageConfig": { "$ref": "CloudStorageConfig", "description": "Optional. If delivery to Google Cloud Storage is used with this subscription, this field is used to configure it." @@ -1861,7 +1888,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: \"123/environment\": \"production\", \"123/costCenter\": \"marketing\"", + "description": "Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: \"123/environment\": \"production\", \"123/costCenter\": \"marketing\" See https://{$universe.dns_names.final_documentation_domain}/pubsub/docs/tags for more information on using tags with Pub/Sub resources.", "type": "object" } }, diff --git a/discovery/androidenterprise-v1.json b/discovery/androidenterprise-v1.json index f641a5cd09b..ee66d494ae4 100644 --- a/discovery/androidenterprise-v1.json +++ b/discovery/androidenterprise-v1.json @@ -180,7 +180,7 @@ ] }, "getState": { - "description": "Retrieves whether a device's access to Google services is enabled or disabled. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services. This is only supported for Google-managed users.", + "description": "Checks if a device can access Google apps and services for a user. Returns whether access is \"enabled\" or \"disabled\". A \"disabled\" state prevents the user's Managed Google Account on the device from successfully authenticating with Google. This blocks access to most Google applications and services, including Google Play, as the device cannot prove its entitlement to access them. New devices default to \"disabled\". Important: Enforcement of this state depends on the following conditions: * The user must be a managed google account. * The enterprise must be a managed google domain. * Third-party Android mobile management must be active in the Google Admin Console for the user's Organizational Unit. If these conditions aren't met, access may still be possible even in a \"disabled\" state.", "flatPath": "androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/state", "httpMethod": "GET", "id": "androidenterprise.devices.getState", @@ -249,7 +249,7 @@ ] }, "setState": { - "description": "Sets whether a device's access to Google services is enabled or disabled. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services. This is only supported for Google-managed users.", + "description": "Sets whether a device's access to Google services (including Google Play) is enabled or disabled for the specified user. Setting the state to \"enabled\" allows the Google Account to access Google services, while \"disabled\" blocks access by preventing OAuth token issuance. Preconditions for Enforcement: 1. This setting is only effective for Google-managed users. 2. The enterprise must be linked to a Google Managed Domain. 3. Enforcement requires third-party Android mobile management to be enabled within the Google Admin Console for the user's Organizational Unit. If these preconditions are not met, changes to this state may be ignored.", "flatPath": "androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/state", "httpMethod": "PUT", "id": "androidenterprise.devices.setState", @@ -2691,7 +2691,7 @@ } } }, - "revision": "20250720", + "revision": "20260422", "rootUrl": "https://androidenterprise.googleapis.com/", "schemas": { "Administrator": { @@ -4739,7 +4739,7 @@ "id": "ServiceAccountKey", "properties": { "data": { - "description": "The body of the private key credentials file, in string format. This is only populated when the ServiceAccountKey is created, and is not stored by Google.", + "description": "The body of the private key credentials file, in string format. This is only populated when the ServiceAccountKey is created, and is not stored by Google. When type is \"pkcs12\", the contents of the data field is base64 encoded and has the password \"notasecret\".", "type": "string" }, "id": { diff --git a/discovery/androidmanagement-v1.json b/discovery/androidmanagement-v1.json index 5affb640990..236897d4589 100644 --- a/discovery/androidmanagement-v1.json +++ b/discovery/androidmanagement-v1.json @@ -1265,7 +1265,7 @@ } } }, - "revision": "20260225", + "revision": "20260408", "rootUrl": "https://androidmanagement.googleapis.com/", "schemas": { "AdbShellCommandEvent": { @@ -2196,7 +2196,7 @@ "The app is blocked and can't be installed. If the app was installed under a previous policy, it will be uninstalled. This also blocks its instant app functionality.", "The app is available to install.", "The app is automatically installed and can't be removed by the user and will prevent setup from completion until installation is complete.", - "The app is automatically installed in kiosk mode: it's set as the preferred home intent and whitelisted for lock task mode. Device setup won't complete until the app is installed. After installation, users won't be able to remove the app. You can only set this installType for one app per policy. When this is present in the policy, status bar will be automatically disabled.If there is any app with KIOSK role, then this install type cannot be set for any app.", + "The app is automatically installed in kiosk mode: it's set as the preferred home intent and whitelisted for lock task mode. Device setup won't complete until the app is installed. After installation, users won't be able to remove the app. You can only set this installType for one app per policy. When this is present in the policy, status bar will be automatically disabled.On Android 11 and above, when an app has this install type, the user control is disallowed for all apps. The IT admin can set userControlSettings to USER_CONTROL_ALLOWED to allow user control for specific apps.If there is any app with KIOSK role, then this install type cannot be set for any app.", "The app can only be installed and updated via AMAPI SDK command (https://developers.google.com/android/management/extensibility-sdk-integration).Note: This only affects fully managed devices. Play related fields minimumVersionCode, accessibleTrackIds, autoUpdateMode, installConstraint and installPriority cannot be set for the app. The app isn't available in the Play Store. The app installed on the device has applicationSource set to CUSTOM. When the current installType is CUSTOM, the signing key certificate fingerprint of the existing custom app on the device must match one of the entries in ApplicationPolicy.signingKeyCerts . Otherwise, a NonComplianceDetail with APP_SIGNING_CERT_MISMATCH is reported. Changing the installType from CUSTOM to another value must match the playstore version of the application signing key certificate fingerprint. Otherwise a NonComplianceDetail with APP_SIGNING_CERT_MISMATCH is reported. Changing the installType to CUSTOM uninstalls the existing app if its signing key certificate fingerprint of the installed app doesn't match the one from the ApplicationPolicy.signingKeyCerts . Removing the app from applications doesn't uninstall the existing app if it conforms to playStoreMode. See also customAppConfig. This is different from the Google Play Custom App Publishing (https://developers.google.com/android/work/play/custom-app-api/get-started) feature." ], "type": "string" @@ -5993,7 +5993,7 @@ "type": "string" }, "screenCaptureDisabled": { - "description": "If true, screen capture is disabled for all users.", + "description": "If true, screen capture is disabled for all users. This also blocks Circle to Search (https://support.google.com/android/answer/14508957).", "type": "boolean" } }, @@ -6178,7 +6178,7 @@ "type": "boolean" }, "credentialProviderPolicyDefault": { - "description": "Controls which apps are allowed to act as credential providers on Android 14 and above. These apps store credentials, see this (https://developer.android.com/training/sign-in/passkeys) and this (https://developer.android.com/reference/androidx/credentials/CredentialManager) for details. See also credentialProviderPolicy.", + "description": "Optional. Controls which apps are allowed to act as credential providers on Android 14 and above. These apps store credentials, see this (https://developer.android.com/training/sign-in/passkeys) and this (https://developer.android.com/reference/androidx/credentials/CredentialManager) for details. See also credentialProviderPolicy.", "enum": [ "CREDENTIAL_PROVIDER_POLICY_DEFAULT_UNSPECIFIED", "CREDENTIAL_PROVIDER_DEFAULT_DISALLOWED", @@ -6274,7 +6274,7 @@ "ENTERPRISE_DISPLAY_NAME_HIDDEN" ], "enumDescriptions": [ - "Unspecified. Defaults to displaying the enterprise name that's set at the time of device setup. In future, this will default to ENTERPRISE_DISPLAY_NAME_VISIBLE.", + "Unspecified. Defaults to ENTERPRISE_DISPLAY_NAME_VISIBLE.", "The enterprise display name is visible on the device. Supported on work profiles on Android 7 and above. Supported on fully managed devices on Android 8 and above. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 7. A NonComplianceDetail with MANAGEMENT_MODE is reported on fully managed devices on Android 7.", "The enterprise display name is hidden on the device." ], @@ -6436,7 +6436,7 @@ "type": "boolean" }, "networkResetDisabled": { - "description": "Whether resetting network settings is disabled.", + "description": "Whether resetting network settings is disabled. This applies only on fully managed devices. A NonComplianceDetail with MANAGEMENT_MODE is reported for other management modes.", "type": "boolean" }, "oncCertificateProviders": { @@ -6567,7 +6567,7 @@ "type": "boolean" }, "screenCaptureDisabled": { - "description": "Whether screen capture is disabled.", + "description": "Whether screen capture is disabled. This also blocks Circle to Search (https://support.google.com/android/answer/14508957).", "type": "boolean" }, "setUserIconDisabled": { @@ -6890,7 +6890,7 @@ "id": "PrivateDnsSettings", "properties": { "privateDnsHost": { - "description": "Optional. The hostname of the DNS server. This must be set if and only if private_dns_mode is set to PRIVATE_DNS_SPECIFIED_HOST. Supported on Android 10 and above on fully managed devices. A NonComplianceDetail with MANAGEMENT_MODE is reported on other management modes. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 10. A NonComplianceDetail with PENDING is reported if the device is not connected to a network. A NonComplianceDetail with nonComplianceReason INVALID_VALUE and specificNonComplianceReason PRIVATE_DNS_HOST_NOT_SERVING is reported if the specified host is not a DNS server or not supported on Android. A NonComplianceReason with nonComplianceReason INVALID_VALUE is reported if applying this setting fails for any other reason.", + "description": "Optional. The hostname of the DNS server. This must be set if and only if private_dns_mode is set to PRIVATE_DNS_SPECIFIED_HOST. Supported on Android 10 and above on fully managed devices. A NonComplianceDetail with MANAGEMENT_MODE is reported on other management modes. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 10. A NonComplianceDetail with PENDING is reported if the device is not connected to a network. A NonComplianceDetail with nonComplianceReason INVALID_VALUE and specificNonComplianceReason PRIVATE_DNS_HOST_NOT_SERVING is reported if the specified host is not a DNS server or not supported on Android. A NonComplianceDetail with INVALID_VALUE is reported if applying this setting fails for any other reason.", "type": "string" }, "privateDnsMode": { @@ -6904,7 +6904,7 @@ "enumDescriptions": [ "Unspecified. Defaults to PRIVATE_DNS_USER_CHOICE.", "The user is allowed to configure private DNS.", - "Automatic private DNS mode. The device tries to use the network-provided DNS server over an encrypted connection before resorting to cleartext. The user is not allowed to modify this setting. Supported on Android 10 and above on fully managed devices and work profiles on company-owned devices. A NonComplianceDetail with MANAGEMENT_MODE is reported on other management modes. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 10. A NonComplianceReason with INVALID_VALUE is reported if setting this fails for any other reason.Note: For work profiles on company-owned devices, setting this mode prevents the user from changing the setting, but the active private DNS setting is not modified. A NonComplianceDetail with MANAGEMENT_MODE is reported in this case.", + "Automatic private DNS mode. The device tries to use the network-provided DNS server over an encrypted connection before resorting to cleartext. The user is not allowed to modify this setting. Supported on Android 10 and above on fully managed devices and work profiles on company-owned devices. A NonComplianceDetail with MANAGEMENT_MODE is reported on other management modes. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 10. A NonComplianceDetail with INVALID_VALUE is reported if setting this fails for any other reason.Note: For work profiles on company-owned devices, setting this mode prevents the user from changing the setting, but the active private DNS setting is not modified. A NonComplianceDetail with MANAGEMENT_MODE is reported in this case.", "The device only uses the DNS server specified in private_dns_host. The user is not allowed to modify this setting. If this is set, then private_dns_host must be set. Supported on Android 10 and above on fully managed devices. A NonComplianceDetail with MANAGEMENT_MODE is reported on other management modes. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 10." ], "type": "string" @@ -7133,7 +7133,7 @@ "enumDescriptions": [ "The role type is unspecified. This value must not be used.", "The role type for companion apps. This role enables the app as a companion app with the capability of interacting with Android Device Policy offline. This is the recommended way to configure an app as a companion app. For legacy way, see extensionConfig.On Android 14 and above, the app with this role is exempted from power and background execution restrictions, suspension and hibernation. On Android 11 and above, the user control is disallowed for the app with this role. userControlSettings cannot be set to USER_CONTROL_ALLOWED for the app with this role.Android Device Policy notifies the companion app of any local command status updates if the app has a service with . See Integrate with the AMAPI SDK (https://developers.google.com/android/management/sdk-integration) guide for more details on the requirements for the service.", - "The role type for kiosk apps. An app can have this role only if it has installType set to REQUIRED_FOR_SETUP or CUSTOM. Before adding this role to an app with CUSTOM install type, the app must already be installed on the device.The app having this role type is set as the preferred home intent and allowlisted for lock task mode. When there is an app with this role type, status bar will be automatically disabled.This is preferable to setting installType to KIOSK.On Android 11 and above, the user control is disallowed but userControlSettings can be set to USER_CONTROL_ALLOWED to allow user control for the app with this role.", + "The role type for kiosk apps. An app can have this role only if it has installType set to REQUIRED_FOR_SETUP or CUSTOM. Before adding this role to an app with CUSTOM install type, the app must already be installed on the device.The app having this role type is set as the preferred home intent and allowlisted for lock task mode. When there is an app with this role type, status bar will be automatically disabled.This is preferable to setting installType to KIOSK.On Android 11 and above, when an app has this role, the user control is disallowed for all apps. The IT admin can set userControlSettings to USER_CONTROL_ALLOWED to allow user control for specific apps.", "The role type for Mobile Threat Defense (MTD) / Endpoint Detection & Response (EDR) apps.On Android 14 and above, the app with this role is exempted from power and background execution restrictions, suspension and hibernation. On Android 11 and above, the user control is disallowed and userControlSettings cannot be set to USER_CONTROL_ALLOWED for the app with this role.", "The role type for system health monitoring apps.On Android 14 and above, the app with this role is exempted from power and background execution restrictions, suspension and hibernation. On Android 11 and above, the user control is disallowed and userControlSettings cannot be set to USER_CONTROL_ALLOWED for the app with this role." ], @@ -7572,11 +7572,6 @@ "description": "Configuration for managing system updatesNote: Google Play system updates (https://source.android.com/docs/core/ota/modular-system) (also called Mainline updates) are automatically downloaded but require a device reboot to be installed. Refer to the mainline section in Manage system updates (https://developer.android.com/work/dpc/system-updates#mainline) for further details.", "id": "SystemUpdate", "properties": { - "allowedDaysWithoutUpdate": { - "description": "If this is greater than zero, then this is the number of days after a pending update becoming available that a device can remain compliant, without taking the update. Has no effect otherwise.", - "format": "int32", - "type": "integer" - }, "endMinutes": { "description": "If the type is WINDOWED, the end of the maintenance window, measured as the number of minutes after midnight in device's local time. This value must be between 0 and 1439, inclusive. If this value is less than start_minutes, then the maintenance window spans midnight. If the maintenance window specified is smaller than 30 minutes, the actual window is extended to 30 minutes beyond the start time.", "format": "int32", diff --git a/discovery/androidpublisher-v3.json b/discovery/androidpublisher-v3.json index 627e6da4124..eda25bd3536 100644 --- a/discovery/androidpublisher-v3.json +++ b/discovery/androidpublisher-v3.json @@ -237,6 +237,39 @@ ] } } + }, + "tracks": { + "resources": { + "releases": { + "methods": { + "list": { + "description": "Returns the list of all releases for a given track. This excludes any releases that are obsolete.", + "flatPath": "androidpublisher/v3/applications/{applicationsId}/tracks/{tracksId}/releases", + "httpMethod": "GET", + "id": "androidpublisher.applications.tracks.releases.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent track, which owns this collection of releases. Format: applications/{package_name}/tracks/{track}", + "location": "path", + "pattern": "^applications/[^/]+/tracks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/{+parent}/releases", + "response": { + "$ref": "ListReleaseSummariesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + } + } } } }, @@ -418,6 +451,21 @@ "editId" ], "parameters": { + "changesInReviewBehavior": { + "description": "Optional. Specify how the API should behave if there are changes currently in review. If this value is not set, it will default to \"CANCEL_IN_REVIEW_AND_SUBMIT\", which will cancel the changes in review and then send all the changes for publishing.", + "enum": [ + "CHANGES_IN_REVIEW_BEHAVIOR_TYPE_UNSPECIFIED", + "CANCEL_IN_REVIEW_AND_SUBMIT", + "ERROR_IF_IN_REVIEW" + ], + "enumDescriptions": [ + "Defaults to CANCEL_IN_REVIEW_AND_SUBMIT.", + "If there are changes already in review, then this will cancel that review first and then send all the changes for publishing.", + "If there are changes in review, then this will return an error. Please refer to the error message sample that is returned when this happens. Note that this won't invalidate the edit. If there aren't any changes in review, then this will continue and send the new changes for publishing." + ], + "location": "query", + "type": "string" + }, "changesNotSentForReview": { "description": "When a rejection happens, the parameter will make sure that the changes in this edit won't be reviewed until they are explicitly sent for review from within the Google Play Console UI. These changes will be added to any other changes that are not yet sent for review.", "location": "query", @@ -5589,7 +5637,7 @@ } } }, - "revision": "20260204", + "revision": "20260416", "rootUrl": "https://androidpublisher.googleapis.com/", "schemas": { "Abi": { @@ -6126,6 +6174,18 @@ "properties": {}, "type": "object" }, + "ArtifactSummary": { + "description": "Summary of an artifact.", + "id": "ArtifactSummary", + "properties": { + "versionCode": { + "description": "Artifact's version code", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "AssetModuleMetadata": { "description": "Metadata of an asset module.", "id": "AssetModuleMetadata", @@ -8967,6 +9027,20 @@ }, "type": "object" }, + "ListReleaseSummariesResponse": { + "description": "Response listing all releases for a given track that are either ready to be sent for review, in review, approved, not approved or available.", + "id": "ListReleaseSummariesResponse", + "properties": { + "releases": { + "description": "List of releases for this track. A maximum of 20 releases can be returned.", + "items": { + "$ref": "ReleaseSummary" + }, + "type": "array" + } + }, + "type": "object" + }, "ListSubscriptionOffersResponse": { "description": "Response message for ListSubscriptionOffers.", "id": "ListSubscriptionOffersResponse", @@ -10993,6 +11067,50 @@ }, "type": "object" }, + "ReleaseSummary": { + "description": "Summary of a release.", + "id": "ReleaseSummary", + "properties": { + "activeArtifacts": { + "description": "List of active artifacts on this release", + "items": { + "$ref": "ArtifactSummary" + }, + "type": "array" + }, + "releaseLifecycleState": { + "description": "The lifecycle state of a release.", + "enum": [ + "RELEASE_LIFECYCLE_STATE_UNSPECIFIED", + "RELEASE_LIFECYCLE_STATE_DRAFT", + "RELEASE_LIFECYCLE_STATE_NOT_SENT_FOR_REVIEW", + "RELEASE_LIFECYCLE_STATE_IN_REVIEW", + "RELEASE_LIFECYCLE_STATE_APPROVED_NOT_PUBLISHED", + "RELEASE_LIFECYCLE_STATE_NOT_APPROVED", + "RELEASE_LIFECYCLE_STATE_PUBLISHED" + ], + "enumDescriptions": [ + "Not specified.", + "The release is not yet ready and can still be edited.", + "The release is ready to be sent for review and an action is required from developer", + "Submitted and in review", + "Passed review and is ready to be published manually by developer", + "App was rejected in review", + "Available to users on the track. This includes fully- or partially-rolled out releases and any halted release that can be resumed." + ], + "type": "string" + }, + "releaseName": { + "description": "Name of the release.", + "type": "string" + }, + "track": { + "description": "Identifier for the track. [Learn more about track names.](https://developers.google.com/android-publisher/tracks).", + "type": "string" + } + }, + "type": "object" + }, "RemoteInAppUpdate": { "description": "Object representation for Remote in-app update action type.", "id": "RemoteInAppUpdate", @@ -11598,7 +11716,7 @@ "type": "array" }, "description": { - "description": "The description of this subscription in the language of this listing. Maximum length - 80 characters. Plain text.", + "description": "The description of this subscription in the language of this listing. Maximum length - 200 characters. Plain text.", "type": "string" }, "languageCode": { diff --git a/discovery/apigateway-v1.json b/discovery/apigateway-v1.json index 3bc24f1b063..8c603caeb8f 100644 --- a/discovery/apigateway-v1.json +++ b/discovery/apigateway-v1.json @@ -134,7 +134,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "apigateway.projects.locations.list", @@ -143,7 +143,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1094,7 +1094,7 @@ } } }, - "revision": "20260127", + "revision": "20260422", "rootUrl": "https://apigateway.googleapis.com/", "schemas": { "ApigatewayApi": { diff --git a/discovery/apigateway-v1beta.json b/discovery/apigateway-v1beta.json index aaab4005607..473ad50dbad 100644 --- a/discovery/apigateway-v1beta.json +++ b/discovery/apigateway-v1beta.json @@ -134,7 +134,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta/projects/{projectsId}/locations", "httpMethod": "GET", "id": "apigateway.projects.locations.list", @@ -143,7 +143,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1094,7 +1094,7 @@ } } }, - "revision": "20260127", + "revision": "20260422", "rootUrl": "https://apigateway.googleapis.com/", "schemas": { "ApigatewayApi": { diff --git a/discovery/apigee-v1.json b/discovery/apigee-v1.json index 50da485c9c3..99e8245842c 100644 --- a/discovery/apigee-v1.json +++ b/discovery/apigee-v1.json @@ -30,6 +30,11 @@ "description": "Regional Endpoint", "endpointUrl": "https://apigee.in.rep.googleapis.com/", "location": "in" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://apigee.sa.rep.googleapis.com/", + "location": "sa" } ], "fullyEncodeReservedExpansion": true, @@ -3605,7 +3610,7 @@ "type": "string" }, "expand": { - "description": "Optional. Specifies whether to expand the results. Set to `true` to expand the results. This query parameter is not valid if you use the `count` or `startKey` query parameters.", + "description": "Optional. Specifies whether to expand the results. Set to `true` to expand the results. This query parameter is not valid if you use the `count` or `startKey` query parameters. **Note**: If set to `true`, the `apigee.developerapps.get` permission is required.", "location": "query", "type": "boolean" }, @@ -3617,7 +3622,7 @@ "type": "string" }, "shallowExpand": { - "description": "Optional. Specifies whether to expand the results in shallow mode. Set to `true` to expand the results in shallow mode.", + "description": "Optional. Specifies whether to expand the results in shallow mode. Set to `true` to expand the results in shallow mode. **Note**: If set to `true`, the `apigee.developerapps.get` permission is required.", "location": "query", "type": "boolean" }, @@ -11959,84 +11964,9 @@ } } }, - "revision": "20260218", + "revision": "20260327", "rootUrl": "https://apigee.googleapis.com/", "schemas": { - "ApiservingMcpMcpToolDataHandlingProfile": { - "description": "Profile describing the data handling characteristics of an MCP tool. When used within the McpTool.meta field, this message should be packed into a google.protobuf.Any and associated with the key: \"google.com/tool.profiles/data_handling\"", - "id": "ApiservingMcpMcpToolDataHandlingProfile", - "properties": { - "inputDataAccessLevel": { - "description": "// The data access level of the tool's inputs.", - "enum": [ - "DATA_ACCESS_LEVEL_UNSPECIFIED", - "DATA_ACCESS_LEVEL_PUBLIC", - "DATA_ACCESS_LEVEL_CONFIDENTIAL", - "DATA_ACCESS_LEVEL_NEED_TO_KNOW", - "DATA_ACCESS_LEVEL_PII", - "DATA_ACCESS_LEVEL_USER", - "DATA_ACCESS_LEVEL_NO_DATA_ACCESS" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "Public data.", - "Confidential data.", - "Need-to-know data.", - "Personally Identifiable Information (PII) data.", - "User data.", - "The tool does not access any data." - ], - "type": "string" - }, - "outputDataAccessLevel": { - "description": "The data access level of the tool's outputs.", - "enum": [ - "DATA_ACCESS_LEVEL_UNSPECIFIED", - "DATA_ACCESS_LEVEL_PUBLIC", - "DATA_ACCESS_LEVEL_CONFIDENTIAL", - "DATA_ACCESS_LEVEL_NEED_TO_KNOW", - "DATA_ACCESS_LEVEL_PII", - "DATA_ACCESS_LEVEL_USER", - "DATA_ACCESS_LEVEL_NO_DATA_ACCESS" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "Public data.", - "Confidential data.", - "Need-to-know data.", - "Personally Identifiable Information (PII) data.", - "User data.", - "The tool does not access any data." - ], - "type": "string" - } - }, - "type": "object" - }, - "ApiservingMcpMcpToolLifecycleProfile": { - "description": "Profile describing the lifecycle stage of an MCP tool. When used within the McpTool.meta field, this message should be packed into a google.protobuf.Any and associated with the key: \"google.com/tool.profiles/lifecycle\"", - "id": "ApiservingMcpMcpToolLifecycleProfile", - "properties": { - "launchState": { - "description": "Output only. The current launch state of the MCP tool.", - "enum": [ - "LAUNCH_STATE_UNSPECIFIED", - "LAUNCH_STATE_DEVELOPMENT", - "LAUNCH_STATE_PRODUCTION_PREVIEW", - "LAUNCH_STATE_GENERAL_AVAILABILITY" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "The tool is currently in development.", - "The tool is in production preview.", - "The tool is generally available." - ], - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, "EdgeConfigstoreBundleBadBundle": { "description": "Describes why a bundle is invalid. Intended for use in error details.", "id": "EdgeConfigstoreBundleBadBundle", @@ -15584,7 +15514,7 @@ "type": "integer" }, "ipHeaderName": { - "description": "Required. The name of the header to extract the client ip from. We are currently only supporting the X-Forwarded-For header.", + "description": "Required. The name of the header to extract the client ip from.", "type": "string" } }, @@ -19195,7 +19125,7 @@ "type": "object" }, "GoogleCloudApigeeV1RuntimeTraceConfig": { - "description": "NEXT ID: 9 RuntimeTraceConfig defines the configurations for distributed trace in an environment.", + "description": "NEXT ID: 10 RuntimeTraceConfig defines the configurations for distributed trace in an environment.", "id": "GoogleCloudApigeeV1RuntimeTraceConfig", "properties": { "endpoint": { @@ -19208,13 +19138,15 @@ "EXPORTER_UNSPECIFIED", "JAEGER", "CLOUD_TRACE", - "OPEN_TELEMETRY_COLLECTOR" + "OPEN_TELEMETRY_COLLECTOR", + "OPEN_TELEMETRY_CLOUD_TRACE" ], "enumDescriptions": [ "Exporter unspecified", - "Jaeger exporter", - "Cloudtrace exporter", - "Open Telemetry Collector" + "Exports events to Jaeger. Compatible with OpenCensus protocol.", + "Exports events to Cloud Trace. Compatible with OpenCensus protocol.", + "OpenTelemetry Collector. Compatible with OpenTelemetry protocol.", + "Exports events to Cloud Trace. Compatible with OpenTelemetry protocol." ], "type": "string" }, @@ -19223,7 +19155,8 @@ "type": "string" }, "openTelemetryProtocolEnabled": { - "description": "If `true`, the runtime uses OpenTelemetry Protocol (OTLP) to send trace data. Configuration Requirements (if `open_telemetry_protocol_enabled` is `true`): - Allowed `Exporter`s: `CLOUD_TRACE` or `OPEN_TELEMETRY_COLLECTOR`. - If `Exporter` is `OPEN_TELEMETRY_COLLECTOR`: - `endpoint` refers to a valid OTLP collector URL. - If `Exporter` is `CLOUD_TRACE`: - `endpoint` refers to a valid project ID", + "deprecated": true, + "description": "Optional. If `true`, the runtime uses OpenTelemetry Protocol (OTLP) to send trace data. Configuration Requirements (if `open_telemetry_protocol_enabled` is `true`): - Allowed `Exporter`s: `CLOUD_TRACE` or `OPEN_TELEMETRY_COLLECTOR`. - If `Exporter` is `OPEN_TELEMETRY_COLLECTOR`: - `endpoint` refers to a valid OTLP collector URL. - If `Exporter` is `CLOUD_TRACE`: - `endpoint` refers to a valid project ID Deprecated: Use trace_protocol instead.", "type": "boolean" }, "overrides": { @@ -19245,12 +19178,26 @@ "samplingConfig": { "$ref": "GoogleCloudApigeeV1RuntimeTraceSamplingConfig", "description": "Trace configuration for all API proxies in an environment." + }, + "traceProtocol": { + "description": "Optional. The trace protocol to use.", + "enum": [ + "TRACE_PROTOCOL_UNSPECIFIED", + "OPEN_CENSUS", + "OTLP" + ], + "enumDescriptions": [ + "Protocol unspecified. Defaults to OPEN_CENSUS.", + "Uses OpenCensus protocol.", + "Uses OpenTelemetry Protocol (OTLP)." + ], + "type": "string" } }, "type": "object" }, "GoogleCloudApigeeV1RuntimeTraceConfigOverride": { - "description": "NEXT ID: 8 Trace configuration override for a specific API proxy in an environment.", + "description": "NEXT ID: 9 Trace configuration override for a specific API proxy in an environment.", "id": "GoogleCloudApigeeV1RuntimeTraceConfigOverride", "properties": { "apiProxy": { @@ -19262,7 +19209,8 @@ "type": "string" }, "openTelemetryProtocolEnabled": { - "description": "If `true`, the runtime uses OpenTelemetry Protocol (OTLP) to send trace data. Configuration Requirements (if `open_telemetry_protocol_enabled` is `true`): - Allowed `Exporter`s: `CLOUD_TRACE` or `OPEN_TELEMETRY_COLLECTOR`. - If `Exporter` is `OPEN_TELEMETRY_COLLECTOR`: - `endpoint` refers to a valid OTLP collector URL. - If `Exporter` is `CLOUD_TRACE`: - `endpoint` refers to a valid project ID", + "deprecated": true, + "description": "Optional. If `true`, the runtime uses OpenTelemetry Protocol (OTLP) to send trace data. Configuration Requirements (if `open_telemetry_protocol_enabled` is `true`): - Allowed `Exporter`s: `CLOUD_TRACE` or `OPEN_TELEMETRY_COLLECTOR`. - If `Exporter` is `OPEN_TELEMETRY_COLLECTOR`: - `endpoint` refers to a valid OTLP collector URL. - If `Exporter` is `CLOUD_TRACE`: - `endpoint` refers to a valid project ID Deprecated: Use trace_protocol instead.", "type": "boolean" }, "revisionCreateTime": { @@ -19278,6 +19226,20 @@ "$ref": "GoogleCloudApigeeV1RuntimeTraceSamplingConfig", "description": "Trace configuration override for a specific API proxy in an environment." }, + "traceProtocol": { + "description": "Optional. The trace protocol to use.", + "enum": [ + "TRACE_PROTOCOL_UNSPECIFIED", + "OPEN_CENSUS", + "OTLP" + ], + "enumDescriptions": [ + "Protocol unspecified. Defaults to OPEN_CENSUS.", + "Uses OpenCensus protocol.", + "Uses OpenTelemetry Protocol (OTLP)." + ], + "type": "string" + }, "uid": { "description": "Unique ID for the configuration override. The ID will only change if the override is deleted and recreated. Corresponds to name's \"override\" field.", "type": "string" @@ -21256,18 +21218,20 @@ "type": "string" }, "exporter": { - "description": "Required. Exporter that is used to view the distributed trace captured using OpenCensus. An exporter sends traces to any backend that is capable of consuming them. Recorded spans can be exported by registered exporters.", + "description": "Required. Exporter that is used to view the distributed trace captured using the chosen trace protocol. An exporter sends traces to any backend that is capable of consuming them. Recorded spans can be exported by registered exporters.", "enum": [ "EXPORTER_UNSPECIFIED", "JAEGER", "CLOUD_TRACE", - "OPEN_TELEMETRY_COLLECTOR" + "OPEN_TELEMETRY_COLLECTOR", + "OPEN_TELEMETRY_CLOUD_TRACE" ], "enumDescriptions": [ "Exporter unspecified", - "Jaeger exporter", - "Cloudtrace exporter", - "Open Telemetry Collector" + "Exports events to Jaeger. Compatible with OpenCensus protocol.", + "Exports events to Cloud Trace. Compatible with OpenCensus protocol.", + "OpenTelemetry Collector. Compatible with OpenTelemetry protocol.", + "Exports events to Cloud Trace. Compatible with OpenTelemetry protocol." ], "type": "string" }, diff --git a/discovery/apihub-v1.json b/discovery/apihub-v1.json index 9cc29691fc4..e654861d6bc 100644 --- a/discovery/apihub-v1.json +++ b/discovery/apihub-v1.json @@ -210,7 +210,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "apihub.projects.locations.list", @@ -219,7 +219,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -574,6 +574,40 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "patch": { + "description": "Update an Api Hub instance. The following fields in the ApiHubInstance can be updated: * disable_search * vertex_location * agent_registry_sync_config The update_mask should be used to specify the fields being updated.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/apiHubInstances/{apiHubInstancesId}", + "httpMethod": "PATCH", + "id": "apihub.projects.locations.apiHubInstances.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. Format: `projects/{project}/locations/{location}/apiHubInstances/{apiHubInstance}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/apiHubInstances/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The list of fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudApihubV1ApiHubInstance" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } }, @@ -3220,7 +3254,7 @@ } } }, - "revision": "20260211", + "revision": "20260425", "rootUrl": "https://apihub.googleapis.com/", "schemas": { "Empty": { @@ -3399,6 +3433,17 @@ }, "type": "object" }, + "GoogleCloudApihubV1AgentRegistrySyncConfig": { + "description": "The configuration for Agent Registry sync.", + "id": "GoogleCloudApihubV1AgentRegistrySyncConfig", + "properties": { + "disabled": { + "description": "Optional. If true, the MCP data sync to the Agent Registry will be disabled. The default value is false.", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleCloudApihubV1AllDataAddonConfig": { "description": "Configuration for addons which act on all data in the API hub. This is used to specify if the addon is enabled for all data in the API hub.", "id": "GoogleCloudApihubV1AllDataAddonConfig", @@ -3745,13 +3790,11 @@ "properties": { "mcpServerView": { "$ref": "GoogleCloudApihubV1FlattenedApiVersionDeploymentView", - "description": "Output only. MCP server view.", - "readOnly": true + "description": "MCP server view." }, "mcpToolView": { "$ref": "GoogleCloudApihubV1FlattenedApiVersionOperationDeploymentView", - "description": "Output only. MCP tools view.", - "readOnly": true + "description": "MCP tools view." } }, "type": "object" @@ -4055,6 +4098,10 @@ "description": "Available configurations to provision an ApiHub Instance.", "id": "GoogleCloudApihubV1Config", "properties": { + "agentRegistrySyncConfig": { + "$ref": "GoogleCloudApihubV1AgentRegistrySyncConfig", + "description": "Optional. The configuration for syncing MCP data in the API Hub instance to the Agent Registry." + }, "cmekKeyName": { "description": "Optional. The Customer Managed Encryption Key (CMEK) used for data encryption. The CMEK name should follow the format of `projects/([^/]+)/locations/([^/]+)/keyRings/([^/]+)/cryptoKeys/([^/]+)`, where the location must match the instance location. If the CMEK is not provided, a GMEK will be created for the instance.", "type": "string" @@ -5013,15 +5060,15 @@ "properties": { "api": { "$ref": "GoogleCloudApihubV1Api", - "description": "The API." + "description": "Optional. The API." }, "deployment": { "$ref": "GoogleCloudApihubV1Deployment", - "description": "The deployment." + "description": "Optional. The deployment." }, "version": { "$ref": "GoogleCloudApihubV1Version", - "description": "The version." + "description": "Optional. The version." } }, "type": "object" @@ -5032,19 +5079,19 @@ "properties": { "api": { "$ref": "GoogleCloudApihubV1Api", - "description": "The API." + "description": "Optional. The API." }, "apiOperation": { "$ref": "GoogleCloudApihubV1ApiOperation", - "description": "The API operation." + "description": "Optional. The API operation." }, "deployment": { "$ref": "GoogleCloudApihubV1Deployment", - "description": "The deployment." + "description": "Optional. The deployment." }, "version": { "$ref": "GoogleCloudApihubV1Version", - "description": "The version." + "description": "Optional. The version." } }, "type": "object" @@ -6513,10 +6560,11 @@ "id": "GoogleCloudApihubV1RetrieveApiViewsResponse", "properties": { "apiViews": { - "description": "The list of API views.", + "description": "Output only. The list of API views.", "items": { "$ref": "GoogleCloudApihubV1ApiView" }, + "readOnly": true, "type": "array" }, "nextPageToken": { diff --git a/discovery/apikeys-v2.json b/discovery/apikeys-v2.json index c7b655f2e97..978838122d2 100644 --- a/discovery/apikeys-v2.json +++ b/discovery/apikeys-v2.json @@ -185,7 +185,7 @@ "type": "string" }, "parent": { - "description": "Required. The project in which the API key is created.", + "description": "Required. The project in which the API key is created. The parent field must be in format of \"projects//locations/global\".", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -306,7 +306,7 @@ "type": "string" }, "parent": { - "description": "Required. Lists all API keys associated with this project.", + "description": "Required. Lists all API keys associated with this project. The parent field must be in format of \"projects//locations/global\".", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -337,7 +337,7 @@ ], "parameters": { "name": { - "description": "Output only. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`.", + "description": "Identifier. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/keys/[^/]+$", "required": true, @@ -396,7 +396,7 @@ } } }, - "revision": "20260109", + "revision": "20260317", "rootUrl": "https://apikeys.googleapis.com/", "schemas": { "Operation": { @@ -584,8 +584,7 @@ "type": "string" }, "name": { - "description": "Output only. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`.", - "readOnly": true, + "description": "Identifier. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`.", "type": "string" }, "restrictions": { diff --git a/discovery/apim-v1alpha.json b/discovery/apim-v1alpha.json index f8f8feed7fa..96317f1ab2b 100644 --- a/discovery/apim-v1alpha.json +++ b/discovery/apim-v1alpha.json @@ -160,7 +160,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha/projects/{projectsId}/locations", "httpMethod": "GET", "id": "apim.projects.locations.list", @@ -169,7 +169,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -851,7 +851,7 @@ } } }, - "revision": "20260128", + "revision": "20260422", "rootUrl": "https://apim.googleapis.com/", "schemas": { "ApiObservation": { diff --git a/discovery/appengine-v1.json b/discovery/appengine-v1.json index 58d80b2ba70..08953fcb9b9 100644 --- a/discovery/appengine-v1.json +++ b/discovery/appengine-v1.json @@ -944,7 +944,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/apps/{appsId}/locations", "httpMethod": "GET", "id": "appengine.apps.locations.list", @@ -959,7 +959,7 @@ "type": "string" }, "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1301,6 +1301,47 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "exportAppImage": { + "description": "Exports a user image to Artifact Registry.", + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}:exportAppImage", + "httpMethod": "POST", + "id": "appengine.apps.services.versions.exportAppImage", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Required. Name of the App Engine version resource. Format: apps/{app}/services/{service}/versions/{version}", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}:exportAppImage", + "request": { + "$ref": "ExportAppImageRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource.", "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", @@ -2458,6 +2499,61 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "exportAppImage": { + "description": "Exports a user image to Artifact Registry.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/services/{servicesId}/versions/{versionsId}:exportAppImage", + "httpMethod": "POST", + "id": "appengine.projects.locations.applications.services.versions.exportAppImage", + "parameterOrder": [ + "projectsId", + "locationsId", + "applicationsId", + "servicesId", + "versionsId" + ], + "parameters": { + "applicationsId": { + "description": "Part of `name`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "locationsId": { + "description": "Part of `name`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "projectsId": { + "description": "Part of `name`. Required. Name of the App Engine version resource. Format: apps/{app}/services/{service}/versions/{version}", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/services/{servicesId}/versions/{versionsId}:exportAppImage", + "request": { + "$ref": "ExportAppImageRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "patch": { "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:Standard environment instance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.instance_class)automatic scaling in the standard environment: automatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling) automaticScaling.standard_scheduler_settings.max_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StandardSchedulerSettings) automaticScaling.standard_scheduler_settings.min_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StandardSchedulerSettings) automaticScaling.standard_scheduler_settings.target_cpu_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StandardSchedulerSettings) automaticScaling.standard_scheduler_settings.target_throughput_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StandardSchedulerSettings)basic scaling or manual scaling in the standard environment: serving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.serving_status) manual_scaling.instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#manualscaling)Flexible environment serving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.serving_status)automatic scaling in the flexible environment: automatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling)manual scaling in the flexible environment: manual_scaling.instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#manualscaling)", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/services/{servicesId}/versions/{versionsId}", @@ -2657,7 +2753,7 @@ } } }, - "revision": "20260202", + "revision": "20260429", "rootUrl": "https://appengine.googleapis.com/", "schemas": { "ApiConfigHandler": { @@ -3355,6 +3451,17 @@ }, "type": "object" }, + "ExportAppImageRequest": { + "description": "Request message for Versions.ExportAppImage.", + "id": "ExportAppImageRequest", + "properties": { + "destinationRepository": { + "description": "Optional. The full resource name of the AR repository to export to. Format: projects/{project}/locations/{location}/repositories/{repository} If not specified, defaults to projects/{project}/locations/{location}/repositories/gae-standard in the same region as the app. The default repository will be created if it does not exist.", + "type": "string" + } + }, + "type": "object" + }, "FeatureSettings": { "description": "The feature specific settings to be used in the application. These define behaviors that are user configurable.", "id": "FeatureSettings", diff --git a/discovery/appengine-v1alpha.json b/discovery/appengine-v1alpha.json index 6a6f0c0586f..026ba9e6592 100644 --- a/discovery/appengine-v1alpha.json +++ b/discovery/appengine-v1alpha.json @@ -584,7 +584,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha/apps/{appsId}/locations", "httpMethod": "GET", "id": "appengine.apps.locations.list", @@ -599,7 +599,7 @@ "type": "string" }, "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -757,7 +757,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha/projects/{projectsId}/locations", "httpMethod": "GET", "id": "appengine.projects.locations.list", @@ -766,7 +766,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1503,7 +1503,7 @@ } } }, - "revision": "20260126", + "revision": "20260429", "rootUrl": "https://appengine.googleapis.com/", "schemas": { "AuthorizedCertificate": { diff --git a/discovery/appengine-v1beta.json b/discovery/appengine-v1beta.json index 6cbc12d7d7c..6b6bd469f80 100644 --- a/discovery/appengine-v1beta.json +++ b/discovery/appengine-v1beta.json @@ -944,7 +944,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta/apps/{appsId}/locations", "httpMethod": "GET", "id": "appengine.apps.locations.list", @@ -959,7 +959,7 @@ "type": "string" }, "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1316,6 +1316,47 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "exportAppImage": { + "description": "Exports a user image to Artifact Registry.", + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}:exportAppImage", + "httpMethod": "POST", + "id": "appengine.apps.services.versions.exportAppImage", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Required. Name of the App Engine version resource. Format: apps/{app}/services/{service}/versions/{version}", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}:exportAppImage", + "request": { + "$ref": "ExportAppImageRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource.", "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", @@ -1729,7 +1770,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta/projects/{projectsId}/locations", "httpMethod": "GET", "id": "appengine.projects.locations.list", @@ -1738,7 +1779,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2571,6 +2612,61 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "exportAppImage": { + "description": "Exports a user image to Artifact Registry.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/services/{servicesId}/versions/{versionsId}:exportAppImage", + "httpMethod": "POST", + "id": "appengine.projects.locations.applications.services.versions.exportAppImage", + "parameterOrder": [ + "projectsId", + "locationsId", + "applicationsId", + "servicesId", + "versionsId" + ], + "parameters": { + "applicationsId": { + "description": "Part of `name`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "locationsId": { + "description": "Part of `name`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "projectsId": { + "description": "Part of `name`. Required. Name of the App Engine version resource. Format: apps/{app}/services/{service}/versions/{version}", + "location": "path", + "required": true, + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/services/{servicesId}/versions/{versionsId}:exportAppImage", + "request": { + "$ref": "ExportAppImageRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "patch": { "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:Standard environment instance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.instance_class)automatic scaling in the standard environment: automatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling) automaticScaling.standard_scheduler_settings.max_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#StandardSchedulerSettings) automaticScaling.standard_scheduler_settings.min_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#StandardSchedulerSettings) automaticScaling.standard_scheduler_settings.target_cpu_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#StandardSchedulerSettings) automaticScaling.standard_scheduler_settings.target_throughput_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#StandardSchedulerSettings)basic scaling or manual scaling in the standard environment: serving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.serving_status) manual_scaling.instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#manualscaling)Flexible environment serving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.serving_status)automatic scaling in the flexible environment: automatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling)manual scaling in the flexible environment: manual_scaling.instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#manualscaling)", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/services/{servicesId}/versions/{versionsId}", @@ -2868,7 +2964,7 @@ } } }, - "revision": "20260220", + "revision": "20260429", "rootUrl": "https://appengine.googleapis.com/", "schemas": { "ApiConfigHandler": { @@ -3617,6 +3713,17 @@ }, "type": "object" }, + "ExportAppImageRequest": { + "description": "Request message for Versions.ExportAppImage.", + "id": "ExportAppImageRequest", + "properties": { + "destinationRepository": { + "description": "Optional. The full resource name of the AR repository to export to. Format: projects/{project}/locations/{location}/repositories/{repository} If not specified, defaults to projects/{project}/locations/{location}/repositories/gae-standard in the same region as the app. The default repository will be created if it does not exist.", + "type": "string" + } + }, + "type": "object" + }, "FeatureSettings": { "description": "The feature specific settings to be used in the application. These define behaviors that are user configurable.", "id": "FeatureSettings", diff --git a/discovery/apphub-v1.json b/discovery/apphub-v1.json index 2908ba4501b..b3d9b56b448 100644 --- a/discovery/apphub-v1.json +++ b/discovery/apphub-v1.json @@ -188,7 +188,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "apphub.projects.locations.list", @@ -197,7 +197,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1486,7 +1486,7 @@ } } }, - "revision": "20260204", + "revision": "20260422", "rootUrl": "https://apphub.googleapis.com/", "schemas": { "Application": { @@ -1901,12 +1901,14 @@ "enum": [ "TYPE_UNSPECIFIED", "AGENT", - "MCP_SERVER" + "MCP_SERVER", + "ENDPOINT" ], "enumDescriptions": [ "Unspecified type.", "Agent type.", - "MCP Server type." + "MCP Server type.", + "Endpoint type." ], "readOnly": true, "type": "string" diff --git a/discovery/apphub-v1alpha.json b/discovery/apphub-v1alpha.json index fae1660fffe..c9f9fa3b799 100644 --- a/discovery/apphub-v1alpha.json +++ b/discovery/apphub-v1alpha.json @@ -188,7 +188,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha/projects/{projectsId}/locations", "httpMethod": "GET", "id": "apphub.projects.locations.list", @@ -197,7 +197,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1578,7 +1578,7 @@ } } }, - "revision": "20260204", + "revision": "20260422", "rootUrl": "https://apphub.googleapis.com/", "schemas": { "Application": { @@ -2073,12 +2073,14 @@ "enum": [ "TYPE_UNSPECIFIED", "AGENT", - "MCP_SERVER" + "MCP_SERVER", + "ENDPOINT" ], "enumDescriptions": [ "Unspecified type.", "Agent type.", - "MCP Server type." + "MCP Server type.", + "Endpoint type." ], "readOnly": true, "type": "string" diff --git a/discovery/artifactregistry-v1.json b/discovery/artifactregistry-v1.json index 7b8b69c04e6..6726566ecf8 100644 --- a/discovery/artifactregistry-v1.json +++ b/discovery/artifactregistry-v1.json @@ -437,6 +437,32 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ] }, + "getProjectConfig": { + "description": "Retrieves the project configuration.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/projectConfig", + "httpMethod": "GET", + "id": "artifactregistry.projects.locations.getProjectConfig", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the project's logging configuration: projects/{project}/locations/{location}/projectConfig", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/projectConfig$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "ProjectConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, "getVpcscConfig": { "description": "Retrieves the VPCSC Config for the Project.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/vpcscConfig", @@ -464,7 +490,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "artifactregistry.projects.locations.list", @@ -511,6 +537,40 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ] }, + "updateProjectConfig": { + "description": "Updates the project configuration.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/projectConfig", + "httpMethod": "PATCH", + "id": "artifactregistry.projects.locations.updateProjectConfig", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The name of the project's configuration. Always of the form: projects/{project}/locations/{location}/projectConfig", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/projectConfig$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask to support partial updates. See https://protobuf.dev/reference/protobuf/google.protobuf/#field-mask for more details.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "ProjectConfig" + }, + "response": { + "$ref": "ProjectConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "updateVpcscConfig": { "description": "Updates the VPCSC Config for the Project.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/vpcscConfig", @@ -549,6 +609,34 @@ "resources": { "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": "artifactregistry.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" + ] + }, "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}", @@ -2493,7 +2581,7 @@ } } }, - "revision": "20260206", + "revision": "20260320", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "AptArtifact": { @@ -2667,6 +2755,12 @@ }, "type": "object" }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" + }, "CleanupPolicy": { "description": "Artifact policy configuration for repository cleanup policies.", "id": "CleanupPolicy", @@ -4041,6 +4135,53 @@ }, "type": "object" }, + "PlatformLogsConfig": { + "description": "The platform logs config for a project or a repository.", + "id": "PlatformLogsConfig", + "properties": { + "loggingState": { + "description": "Optional. The state of the platform logs: enabled or disabled.", + "enum": [ + "LOGGING_STATE_UNSPECIFIED", + "ENABLED", + "DISABLED" + ], + "enumDescriptions": [ + "Platform logs settings for the parent resource haven't been set. This is the default state or when the user clears the settings for the parent.", + "Platform logs are enabled.", + "Platform logs are disabled." + ], + "type": "string" + }, + "severityLevel": { + "description": "Optional. The severity level for the logs. Logs will be generated if their severity level is >= than the value of the severity level mentioned here.", + "enum": [ + "SEVERITY_LEVEL_UNSPECIFIED", + "DEBUG", + "INFO", + "NOTICE", + "WARNING", + "ERROR", + "CRITICAL", + "ALERT", + "EMERGENCY" + ], + "enumDescriptions": [ + "No severity level specified, meaning everything is being logged.", + "Debug or trace information.", + "Routine information, such as ongoing status or performance.", + "Normal but significant events, such as start up, shut down, or a configuration change.", + "Warning events that might cause problems.", + "Error events that are likely to cause problems.", + "Critical events that cause more severe problems or outages.", + "Alert events that require a person must take an action immediately.", + "One or more systems are unusable." + ], + "type": "string" + } + }, + "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/).", "id": "Policy", @@ -4065,6 +4206,21 @@ }, "type": "object" }, + "ProjectConfig": { + "description": "The Artifact Registry logging configurations that apply to a Project.", + "id": "ProjectConfig", + "properties": { + "name": { + "description": "Identifier. The name of the project's configuration. Always of the form: projects/{project}/locations/{location}/projectConfig", + "type": "string" + }, + "platformLogsConfig": { + "$ref": "PlatformLogsConfig", + "description": "Optional. Configuration for platform logs." + } + }, + "type": "object" + }, "ProjectSettings": { "description": "The Artifact Registry settings that apply to a Project.", "id": "ProjectSettings", @@ -4318,6 +4474,10 @@ "description": "The name of the repository, for example: `projects/p1/locations/us-central1/repositories/repo1`. For each location in a project, repository names must be unique.", "type": "string" }, + "platformLogsConfig": { + "$ref": "PlatformLogsConfig", + "description": "Optional. Configuration for platform logs." + }, "registryUri": { "description": "Output only. The repository endpoint, for example: `us-docker.pkg.dev/my-proj/my-repo`.", "readOnly": true, diff --git a/discovery/artifactregistry-v1beta1.json b/discovery/artifactregistry-v1beta1.json index c5f984fbbfd..f9afa46a58c 100644 --- a/discovery/artifactregistry-v1beta1.json +++ b/discovery/artifactregistry-v1beta1.json @@ -376,7 +376,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "artifactregistry.projects.locations.list", @@ -1182,7 +1182,7 @@ } } }, - "revision": "20260206", + "revision": "20260320", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "Binding": { diff --git a/discovery/artifactregistry-v1beta2.json b/discovery/artifactregistry-v1beta2.json index 3d30c093185..81018a0d983 100644 --- a/discovery/artifactregistry-v1beta2.json +++ b/discovery/artifactregistry-v1beta2.json @@ -438,7 +438,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta2/projects/{projectsId}/locations", "httpMethod": "GET", "id": "artifactregistry.projects.locations.list", @@ -1450,7 +1450,7 @@ } } }, - "revision": "20260206", + "revision": "20260320", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "AptArtifact": { diff --git a/discovery/assuredworkloads-v1.json b/discovery/assuredworkloads-v1.json index fdad27e4c4d..e0042cdbc49 100644 --- a/discovery/assuredworkloads-v1.json +++ b/discovery/assuredworkloads-v1.json @@ -105,6 +105,46 @@ }, "protocol": "rest", "resources": { + "assuredworkloads": { + "methods": { + "archiveResourceEvents": { + "description": "Finds orphan ResourceEvents matching the criteria and moves them to the ArchivedResourceEvents table.", + "flatPath": "v1/assuredworkloads:archiveResourceEvents", + "httpMethod": "POST", + "id": "assuredworkloads.assuredworkloads.archiveResourceEvents", + "parameterOrder": [], + "parameters": {}, + "path": "v1/assuredworkloads:archiveResourceEvents", + "request": { + "$ref": "GoogleCloudAssuredworkloadsV1ArchiveResourceEventsRequest" + }, + "response": { + "$ref": "GoogleCloudAssuredworkloadsV1ArchiveResourceEventsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "revertArchivedResourceEvents": { + "description": "Finds matching ArchivedResourceEvents and moves them back to the ResourceEvents table.", + "flatPath": "v1/assuredworkloads:revertArchivedResourceEvents", + "httpMethod": "POST", + "id": "assuredworkloads.assuredworkloads.revertArchivedResourceEvents", + "parameterOrder": [], + "parameters": {}, + "path": "v1/assuredworkloads:revertArchivedResourceEvents", + "request": { + "$ref": "GoogleCloudAssuredworkloadsV1RevertArchivedResourceEventsRequest" + }, + "response": { + "$ref": "GoogleCloudAssuredworkloadsV1RevertArchivedResourceEventsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "organizations": { "resources": { "locations": { @@ -689,7 +729,7 @@ } } }, - "revision": "20260129", + "revision": "20260504", "rootUrl": "https://assuredworkloads.googleapis.com/", "schemas": { "GoogleCloudAssuredworkloadsV1AcknowledgeViolationRequest": { @@ -805,6 +845,54 @@ }, "type": "object" }, + "GoogleCloudAssuredworkloadsV1ArchiveResourceEventsRequest": { + "description": "Request for archiving resource events.", + "id": "GoogleCloudAssuredworkloadsV1ArchiveResourceEventsRequest", + "properties": { + "archiveTime": { + "description": "Optional. Time to set as ArchiveTime in the archive table. If not provided, the current time is used.", + "format": "google-datetime", + "type": "string" + }, + "batchSize": { + "description": "Required. The number of events to process in a single transaction batch.", + "format": "int32", + "type": "integer" + }, + "eventCutoffTime": { + "description": "Required. Only events with EventTime earlier than this cutoff will be archived.", + "format": "google-datetime", + "type": "string" + }, + "maxEventsMove": { + "description": "Required. The maximum total number of events to move in this request.", + "format": "int32", + "type": "integer" + }, + "organizationId": { + "description": "Required. The organization ID for which to archive events.", + "format": "int64", + "type": "string" + }, + "region": { + "description": "Required. The region of the workload(s) whose events should be archived. This is used to filter workloads based on AssurantWorkloadData.region.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAssuredworkloadsV1ArchiveResourceEventsResponse": { + "description": "Response for archiving resource events.", + "id": "GoogleCloudAssuredworkloadsV1ArchiveResourceEventsResponse", + "properties": { + "movedEventsCount": { + "description": "The total number of events successfully moved to the archive table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudAssuredworkloadsV1AssetMoveAnalysis": { "description": "Represents move analysis results for an asset.", "id": "GoogleCloudAssuredworkloadsV1AssetMoveAnalysis", @@ -835,30 +923,7 @@ "description": "Optional. Compliance controls that should be applied to the resources managed by the workload.", "enum": [ "COMPLIANCE_REGIME_UNSPECIFIED", - "IL4", - "CJIS", - "FEDRAMP_HIGH", - "FEDRAMP_MODERATE", - "US_REGIONAL_ACCESS", - "HIPAA", - "HITRUST", - "EU_REGIONS_AND_SUPPORT", - "CA_REGIONS_AND_SUPPORT", - "ITAR", - "AU_REGIONS_AND_US_SUPPORT", "ASSURED_WORKLOADS_FOR_PARTNERS", - "ISR_REGIONS", - "ISR_REGIONS_AND_SUPPORT", - "CA_PROTECTED_B", - "IL5", - "IL2", - "JP_REGIONS_AND_SUPPORT", - "KSA_REGIONS_AND_SUPPORT_WITH_SOVEREIGNTY_CONTROLS", - "REGIONAL_CONTROLS", - "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS", - "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS_US_SUPPORT", - "IRS_1075", - "CANADA_CONTROLLED_GOODS", "AUSTRALIA_DATA_BOUNDARY_AND_SUPPORT", "CANADA_DATA_BOUNDARY_AND_SUPPORT", "DATA_BOUNDARY_FOR_CANADA_CONTROLLED_GOODS", @@ -873,12 +938,35 @@ "DATA_BOUNDARY_FOR_ITAR", "EU_DATA_BOUNDARY_AND_SUPPORT", "ISRAEL_DATA_BOUNDARY_AND_SUPPORT", + "JAPAN_DATA_BOUNDARY", + "KSA_DATA_BOUNDARY_WITH_ACCESS_JUSTIFICATIONS", + "REGIONAL_DATA_BOUNDARY", "US_DATA_BOUNDARY_AND_SUPPORT", "US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES", "US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES_WITH_SUPPORT", - "KSA_DATA_BOUNDARY_WITH_ACCESS_JUSTIFICATIONS", - "REGIONAL_DATA_BOUNDARY", - "JAPAN_DATA_BOUNDARY" + "AU_REGIONS_AND_US_SUPPORT", + "CA_PROTECTED_B", + "CA_REGIONS_AND_SUPPORT", + "CANADA_CONTROLLED_GOODS", + "CJIS", + "EU_REGIONS_AND_SUPPORT", + "FEDRAMP_HIGH", + "FEDRAMP_MODERATE", + "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS", + "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS_US_SUPPORT", + "HIPAA", + "HITRUST", + "IL2", + "IL4", + "IL5", + "IRS_1075", + "ISR_REGIONS", + "ISR_REGIONS_AND_SUPPORT", + "ITAR", + "JP_REGIONS_AND_SUPPORT", + "KSA_REGIONS_AND_SUPPORT_WITH_SOVEREIGNTY_CONTROLS", + "REGIONAL_CONTROLS", + "US_REGIONAL_ACCESS" ], "enumDeprecated": [ false, @@ -887,8 +975,6 @@ false, false, false, - true, - true, false, false, false, @@ -915,6 +1001,8 @@ false, false, false, + true, + true, false, false, false, @@ -928,51 +1016,51 @@ false ], "enumDescriptions": [ - "Unknown compliance regime.", - "Information protection as per DoD IL4 requirements.", - "Criminal Justice Information Services (CJIS) Security policies.", - "FedRAMP High data protection controls", - "FedRAMP Moderate data protection controls", - "Assured Workloads For US Regions data protection controls", - "[DEPRECATED] Health Insurance Portability and Accountability Act controls", - "[DEPRECATED] Health Information Trust Alliance controls", - "Assured Workloads For EU Regions and Support controls", - "Assured Workloads For Canada Regions and Support controls", - "International Traffic in Arms Regulations", - "Assured Workloads for Australia Regions and Support controls", - "Assured Workloads for Partners;", - "Assured Workloads for Israel Regions", - "Assured Workloads for Israel Regions", - "Assured Workloads for Canada Protected B regime", - "Information protection as per DoD IL5 requirements.", - "Information protection as per DoD IL2 requirements.", - "Assured Workloads for Japan Regions", - "Assured Workloads Sovereign Controls KSA", - "Assured Workloads for Regional Controls", - "Healthcare and Life Science Controls", - "Healthcare and Life Science Controls with US Support", - "Internal Revenue Service 1075 controls", - "Canada Controlled Goods", + "The default value. This value is used if the control package is omitted or unknown.", + "Specifies a [Sovereign Controls by Partners](https://cloud.google.com/sovereign-controls-by-partners/docs/overview) control package. To use this control package, you must also specify the partner field from the list of Sovereign Controls by Partners.", "Australia Data Boundary and Support", "Canada Data Boundary and Support", "Data Boundary for Canada Controlled Goods", "Data Boundary for Canada Protected B", - "Data Boundary for CJIS", + "Data Boundary for Criminal Justice Information Systems (CJIS)", "Data Boundary for FedRAMP High", "Data Boundary for FedRAMP Moderate", - "Data Boundary for IL2", - "Data Boundary for IL4", - "Data Boundary for IL5", + "Data Boundary for Impact Level 2 (IL2)", + "Data Boundary for Impact Level 4 (IL4)", + "Data Boundary for Impact Level 5 (IL5)", "Data Boundary for IRS Publication 1075", - "Data Boundary for ITAR", - "Data Boundary for EU Regions and Support", - "Data Boundary for Israel Regions", - "Data Boundary for US Regions and Support", - "Data Boundary for US Healthcare and Life Sciences", - "Data Boundary for US Healthcare and Life Sciences with Support", - "KSA Data Boundary with Access Justifications", - "Regional Data Boundary", - "JAPAN Data Boundary" + "Data Boundary for International Traffic in Arms Regulations (ITAR)", + "European Union (EU) Data Boundary and Support", + "Israel Data Boundary and Support", + "Japan Data Boundary", + "Kingdom of Saudi Arabia (KSA) Data Boundary with Access Justifications", + "Data boundary for one of Assured Workloads' *Free tier* control packages. Determines the region by specifying the data location during workload creation.", + "United States (US) Data Boundary and Support", + "United States (US) Data Boundary for Healthcare and Life Sciences", + "United States (US) Data Boundary for Healthcare and Life Sciences with Support", + "Use the AUSTRALIA_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_CANADA_PROTECTED_B enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the CANADA_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_CANADA_CONTROLLED_GOODS enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_CJIS enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the EU_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_FEDRAMP_HIGH enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_FEDRAMP_MODERATE enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES_WITH_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Deprecated: Consider using the Data Boundary for US Healthcare and Life Sciences control package instead.", + "Deprecated: Consider using the Data Boundary for US Healthcare and Life Sciences control package instead.", + "Use the DATA_BOUNDARY_FOR_IL2 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_IL4 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_IL5 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_IRS_PUBLICATION_1075 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the ISRAEL_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the ISRAEL_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_ITAR enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the JAPAN_DATA_BOUNDARY enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the KSA_DATA_BOUNDARY_WITH_ACCESS_JUSTIFICATIONS enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the REGIONAL_DATA_BOUNDARY enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the US_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed." ], "type": "string" }, @@ -1244,6 +1332,54 @@ "properties": {}, "type": "object" }, + "GoogleCloudAssuredworkloadsV1RevertArchivedResourceEventsRequest": { + "description": "Request for reverting archived resource events.", + "id": "GoogleCloudAssuredworkloadsV1RevertArchivedResourceEventsRequest", + "properties": { + "archiveEndTime": { + "description": "Required. Only events within this time range will be reverted. This helps prevent reverting everything when something goes wrong.", + "format": "google-datetime", + "type": "string" + }, + "archiveStartTime": { + "description": "Required. Only events within this time range will be reverted. This helps prevent reverting everything when something goes wrong.", + "format": "google-datetime", + "type": "string" + }, + "batchSize": { + "description": "Required. The number of events to process in a single transaction batch.", + "format": "int32", + "type": "integer" + }, + "maxEventsMove": { + "description": "Required. The maximum total number of events to move in this request.", + "format": "int32", + "type": "integer" + }, + "organizationId": { + "description": "Required. The organization ID for which to revert events.", + "format": "int64", + "type": "string" + }, + "region": { + "description": "Required. The region of the workload(s) whose events should be reverted. This is used to filter workloads based on AssurantWorkloadData.region.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAssuredworkloadsV1RevertArchivedResourceEventsResponse": { + "description": "Response for reverting archived resource events.", + "id": "GoogleCloudAssuredworkloadsV1RevertArchivedResourceEventsResponse", + "properties": { + "movedEventsCount": { + "description": "The total number of events successfully moved to the original table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudAssuredworkloadsV1UpdateDetails": { "description": "The details of the update.", "id": "GoogleCloudAssuredworkloadsV1UpdateDetails", @@ -1534,30 +1670,7 @@ "description": "Required. Immutable. Compliance Regime associated with this workload.", "enum": [ "COMPLIANCE_REGIME_UNSPECIFIED", - "IL4", - "CJIS", - "FEDRAMP_HIGH", - "FEDRAMP_MODERATE", - "US_REGIONAL_ACCESS", - "HIPAA", - "HITRUST", - "EU_REGIONS_AND_SUPPORT", - "CA_REGIONS_AND_SUPPORT", - "ITAR", - "AU_REGIONS_AND_US_SUPPORT", "ASSURED_WORKLOADS_FOR_PARTNERS", - "ISR_REGIONS", - "ISR_REGIONS_AND_SUPPORT", - "CA_PROTECTED_B", - "IL5", - "IL2", - "JP_REGIONS_AND_SUPPORT", - "KSA_REGIONS_AND_SUPPORT_WITH_SOVEREIGNTY_CONTROLS", - "REGIONAL_CONTROLS", - "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS", - "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS_US_SUPPORT", - "IRS_1075", - "CANADA_CONTROLLED_GOODS", "AUSTRALIA_DATA_BOUNDARY_AND_SUPPORT", "CANADA_DATA_BOUNDARY_AND_SUPPORT", "DATA_BOUNDARY_FOR_CANADA_CONTROLLED_GOODS", @@ -1572,12 +1685,35 @@ "DATA_BOUNDARY_FOR_ITAR", "EU_DATA_BOUNDARY_AND_SUPPORT", "ISRAEL_DATA_BOUNDARY_AND_SUPPORT", + "JAPAN_DATA_BOUNDARY", + "KSA_DATA_BOUNDARY_WITH_ACCESS_JUSTIFICATIONS", + "REGIONAL_DATA_BOUNDARY", "US_DATA_BOUNDARY_AND_SUPPORT", "US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES", "US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES_WITH_SUPPORT", - "KSA_DATA_BOUNDARY_WITH_ACCESS_JUSTIFICATIONS", - "REGIONAL_DATA_BOUNDARY", - "JAPAN_DATA_BOUNDARY" + "AU_REGIONS_AND_US_SUPPORT", + "CA_PROTECTED_B", + "CA_REGIONS_AND_SUPPORT", + "CANADA_CONTROLLED_GOODS", + "CJIS", + "EU_REGIONS_AND_SUPPORT", + "FEDRAMP_HIGH", + "FEDRAMP_MODERATE", + "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS", + "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS_US_SUPPORT", + "HIPAA", + "HITRUST", + "IL2", + "IL4", + "IL5", + "IRS_1075", + "ISR_REGIONS", + "ISR_REGIONS_AND_SUPPORT", + "ITAR", + "JP_REGIONS_AND_SUPPORT", + "KSA_REGIONS_AND_SUPPORT_WITH_SOVEREIGNTY_CONTROLS", + "REGIONAL_CONTROLS", + "US_REGIONAL_ACCESS" ], "enumDeprecated": [ false, @@ -1586,8 +1722,6 @@ false, false, false, - true, - true, false, false, false, @@ -1614,6 +1748,8 @@ false, false, false, + true, + true, false, false, false, @@ -1627,51 +1763,51 @@ false ], "enumDescriptions": [ - "Unknown compliance regime.", - "Information protection as per DoD IL4 requirements.", - "Criminal Justice Information Services (CJIS) Security policies.", - "FedRAMP High data protection controls", - "FedRAMP Moderate data protection controls", - "Assured Workloads For US Regions data protection controls", - "[DEPRECATED] Health Insurance Portability and Accountability Act controls", - "[DEPRECATED] Health Information Trust Alliance controls", - "Assured Workloads For EU Regions and Support controls", - "Assured Workloads For Canada Regions and Support controls", - "International Traffic in Arms Regulations", - "Assured Workloads for Australia Regions and Support controls", - "Assured Workloads for Partners;", - "Assured Workloads for Israel Regions", - "Assured Workloads for Israel Regions", - "Assured Workloads for Canada Protected B regime", - "Information protection as per DoD IL5 requirements.", - "Information protection as per DoD IL2 requirements.", - "Assured Workloads for Japan Regions", - "Assured Workloads Sovereign Controls KSA", - "Assured Workloads for Regional Controls", - "Healthcare and Life Science Controls", - "Healthcare and Life Science Controls with US Support", - "Internal Revenue Service 1075 controls", - "Canada Controlled Goods", + "The default value. This value is used if the control package is omitted or unknown.", + "Specifies a [Sovereign Controls by Partners](https://cloud.google.com/sovereign-controls-by-partners/docs/overview) control package. To use this control package, you must also specify the partner field from the list of Sovereign Controls by Partners.", "Australia Data Boundary and Support", "Canada Data Boundary and Support", "Data Boundary for Canada Controlled Goods", "Data Boundary for Canada Protected B", - "Data Boundary for CJIS", + "Data Boundary for Criminal Justice Information Systems (CJIS)", "Data Boundary for FedRAMP High", "Data Boundary for FedRAMP Moderate", - "Data Boundary for IL2", - "Data Boundary for IL4", - "Data Boundary for IL5", + "Data Boundary for Impact Level 2 (IL2)", + "Data Boundary for Impact Level 4 (IL4)", + "Data Boundary for Impact Level 5 (IL5)", "Data Boundary for IRS Publication 1075", - "Data Boundary for ITAR", - "Data Boundary for EU Regions and Support", - "Data Boundary for Israel Regions", - "Data Boundary for US Regions and Support", - "Data Boundary for US Healthcare and Life Sciences", - "Data Boundary for US Healthcare and Life Sciences with Support", - "KSA Data Boundary with Access Justifications", - "Regional Data Boundary", - "JAPAN Data Boundary" + "Data Boundary for International Traffic in Arms Regulations (ITAR)", + "European Union (EU) Data Boundary and Support", + "Israel Data Boundary and Support", + "Japan Data Boundary", + "Kingdom of Saudi Arabia (KSA) Data Boundary with Access Justifications", + "Data boundary for one of Assured Workloads' *Free tier* control packages. Determines the region by specifying the data location during workload creation.", + "United States (US) Data Boundary and Support", + "United States (US) Data Boundary for Healthcare and Life Sciences", + "United States (US) Data Boundary for Healthcare and Life Sciences with Support", + "Use the AUSTRALIA_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_CANADA_PROTECTED_B enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the CANADA_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_CANADA_CONTROLLED_GOODS enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_CJIS enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the EU_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_FEDRAMP_HIGH enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_FEDRAMP_MODERATE enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES_WITH_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Deprecated: Consider using the Data Boundary for US Healthcare and Life Sciences control package instead.", + "Deprecated: Consider using the Data Boundary for US Healthcare and Life Sciences control package instead.", + "Use the DATA_BOUNDARY_FOR_IL2 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_IL4 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_IL5 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_IRS_PUBLICATION_1075 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the ISRAEL_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the ISRAEL_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_ITAR enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the JAPAN_DATA_BOUNDARY enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the KSA_DATA_BOUNDARY_WITH_ACCESS_JUSTIFICATIONS enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the REGIONAL_DATA_BOUNDARY enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the US_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed." ], "type": "string" }, @@ -1771,7 +1907,7 @@ "description": "Optional. Permissions granted to the AW Partner SA account for the customer workload" }, "partnerServicesBillingAccount": { - "description": "Optional. Billing account necessary for purchasing services from Sovereign Partners. This field is required for creating SIA/PSN/CNTXT partner workloads. The caller should have 'billing.resourceAssociations.create' IAM permission on this billing-account. The format of this string is billingAccounts/AAAAAA-BBBBBB-CCCCCC", + "description": "Optional. Billing account necessary for purchasing services from Sovereign Partners. This field is required for creating SIA/PSN/CNTXT/Telefonica partner workloads. The caller should have 'billing.resourceAssociations.create' IAM permission on this billing-account. The format of this string is billingAccounts/AAAAAA-BBBBBB-CCCCCC", "type": "string" }, "provisionedResourcesParent": { diff --git a/discovery/assuredworkloads-v1beta1.json b/discovery/assuredworkloads-v1beta1.json index 8ad999e10c9..46d486dcc89 100644 --- a/discovery/assuredworkloads-v1beta1.json +++ b/discovery/assuredworkloads-v1beta1.json @@ -105,6 +105,46 @@ }, "protocol": "rest", "resources": { + "assuredworkloads": { + "methods": { + "archiveResourceEvents": { + "description": "Finds orphan ResourceEvents matching the criteria and moves them to the ArchivedResourceEvents table.", + "flatPath": "v1beta1/assuredworkloads:archiveResourceEvents", + "httpMethod": "POST", + "id": "assuredworkloads.assuredworkloads.archiveResourceEvents", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1/assuredworkloads:archiveResourceEvents", + "request": { + "$ref": "GoogleCloudAssuredworkloadsV1beta1ArchiveResourceEventsRequest" + }, + "response": { + "$ref": "GoogleCloudAssuredworkloadsV1beta1ArchiveResourceEventsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "revertArchivedResourceEvents": { + "description": "Finds matching ArchivedResourceEvents and moves them back to the ResourceEvents table.", + "flatPath": "v1beta1/assuredworkloads:revertArchivedResourceEvents", + "httpMethod": "POST", + "id": "assuredworkloads.assuredworkloads.revertArchivedResourceEvents", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta1/assuredworkloads:revertArchivedResourceEvents", + "request": { + "$ref": "GoogleCloudAssuredworkloadsV1beta1RevertArchivedResourceEventsRequest" + }, + "response": { + "$ref": "GoogleCloudAssuredworkloadsV1beta1RevertArchivedResourceEventsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "organizations": { "resources": { "locations": { @@ -661,7 +701,7 @@ } } }, - "revision": "20260129", + "revision": "20260504", "rootUrl": "https://assuredworkloads.googleapis.com/", "schemas": { "GoogleCloudAssuredworkloadsV1beta1AcknowledgeViolationRequest": { @@ -777,6 +817,54 @@ }, "type": "object" }, + "GoogleCloudAssuredworkloadsV1beta1ArchiveResourceEventsRequest": { + "description": "Request for archiving resource events.", + "id": "GoogleCloudAssuredworkloadsV1beta1ArchiveResourceEventsRequest", + "properties": { + "archiveTime": { + "description": "Optional. Time to set as ArchiveTime in the archive table. If not provided, the current time is used.", + "format": "google-datetime", + "type": "string" + }, + "batchSize": { + "description": "Required. The number of events to process in a single transaction batch.", + "format": "int32", + "type": "integer" + }, + "eventCutoffTime": { + "description": "Required. Only events with EventTime earlier than this cutoff will be archived.", + "format": "google-datetime", + "type": "string" + }, + "maxEventsMove": { + "description": "Required. The maximum total number of events to move in this request.", + "format": "int32", + "type": "integer" + }, + "organizationId": { + "description": "Required. The organization ID for which to archive events.", + "format": "int64", + "type": "string" + }, + "region": { + "description": "Required. The region of the workload(s) whose events should be archived. This is used to filter workloads based on AssurantWorkloadData.region.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAssuredworkloadsV1beta1ArchiveResourceEventsResponse": { + "description": "Response for archiving resource events.", + "id": "GoogleCloudAssuredworkloadsV1beta1ArchiveResourceEventsResponse", + "properties": { + "movedEventsCount": { + "description": "The total number of events successfully moved to the archive table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudAssuredworkloadsV1beta1AssetMoveAnalysis": { "description": "Represents move analysis results for an asset.", "id": "GoogleCloudAssuredworkloadsV1beta1AssetMoveAnalysis", @@ -807,30 +895,7 @@ "description": "Optional. Compliance controls that should be applied to the resources managed by the workload.", "enum": [ "COMPLIANCE_REGIME_UNSPECIFIED", - "IL4", - "CJIS", - "FEDRAMP_HIGH", - "FEDRAMP_MODERATE", - "US_REGIONAL_ACCESS", - "HIPAA", - "HITRUST", - "EU_REGIONS_AND_SUPPORT", - "CA_REGIONS_AND_SUPPORT", - "ITAR", - "AU_REGIONS_AND_US_SUPPORT", "ASSURED_WORKLOADS_FOR_PARTNERS", - "ISR_REGIONS", - "ISR_REGIONS_AND_SUPPORT", - "CA_PROTECTED_B", - "IL5", - "IL2", - "JP_REGIONS_AND_SUPPORT", - "KSA_REGIONS_AND_SUPPORT_WITH_SOVEREIGNTY_CONTROLS", - "REGIONAL_CONTROLS", - "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS", - "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS_US_SUPPORT", - "IRS_1075", - "CANADA_CONTROLLED_GOODS", "AUSTRALIA_DATA_BOUNDARY_AND_SUPPORT", "CANADA_DATA_BOUNDARY_AND_SUPPORT", "DATA_BOUNDARY_FOR_CANADA_CONTROLLED_GOODS", @@ -845,12 +910,35 @@ "DATA_BOUNDARY_FOR_ITAR", "EU_DATA_BOUNDARY_AND_SUPPORT", "ISRAEL_DATA_BOUNDARY_AND_SUPPORT", + "JAPAN_DATA_BOUNDARY", + "KSA_DATA_BOUNDARY_WITH_ACCESS_JUSTIFICATIONS", + "REGIONAL_DATA_BOUNDARY", "US_DATA_BOUNDARY_AND_SUPPORT", "US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES", "US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES_WITH_SUPPORT", - "KSA_DATA_BOUNDARY_WITH_ACCESS_JUSTIFICATIONS", - "REGIONAL_DATA_BOUNDARY", - "JAPAN_DATA_BOUNDARY" + "AU_REGIONS_AND_US_SUPPORT", + "CA_PROTECTED_B", + "CA_REGIONS_AND_SUPPORT", + "CANADA_CONTROLLED_GOODS", + "CJIS", + "EU_REGIONS_AND_SUPPORT", + "FEDRAMP_HIGH", + "FEDRAMP_MODERATE", + "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS", + "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS_US_SUPPORT", + "HIPAA", + "HITRUST", + "IL2", + "IL4", + "IL5", + "IRS_1075", + "ISR_REGIONS", + "ISR_REGIONS_AND_SUPPORT", + "ITAR", + "JP_REGIONS_AND_SUPPORT", + "KSA_REGIONS_AND_SUPPORT_WITH_SOVEREIGNTY_CONTROLS", + "REGIONAL_CONTROLS", + "US_REGIONAL_ACCESS" ], "enumDeprecated": [ false, @@ -859,8 +947,6 @@ false, false, false, - true, - true, false, false, false, @@ -887,6 +973,8 @@ false, false, false, + true, + true, false, false, false, @@ -900,51 +988,51 @@ false ], "enumDescriptions": [ - "Unknown compliance regime.", - "Information protection as per DoD IL4 requirements.", - "Criminal Justice Information Services (CJIS) Security policies.", - "FedRAMP High data protection controls", - "FedRAMP Moderate data protection controls", - "Assured Workloads For US Regions data protection controls", - "[DEPRECATED] Health Insurance Portability and Accountability Act controls", - "[DEPRECATED] Health Information Trust Alliance controls", - "Assured Workloads For EU Regions and Support controls", - "Assured Workloads For Canada Regions and Support controls", - "International Traffic in Arms Regulations", - "Assured Workloads for Australia Regions and Support controls", - "Assured Workloads for Partners;", - "Assured Workloads for Israel Regions", - "Assured Workloads for Israel Regions", - "Assured Workloads for Canada Protected B regime", - "Information protection as per DoD IL5 requirements.", - "Information protection as per DoD IL2 requirements.", - "Assured Workloads for Japan Regions", - "Assured Workloads Sovereign Controls KSA", - "Assured Workloads for Regional Controls", - "Healthcare and Life Science Controls", - "Healthcare and Life Science Controls with US Support", - "Internal Revenue Service 1075 controls", - "Canada Controlled Goods", + "The default value. This value is used if the control package is omitted or unknown.", + "Specifies a [Sovereign Controls by Partners](https://cloud.google.com/sovereign-controls-by-partners/docs/overview) control package. To use this control package, you must also specify the partner field from the list of Sovereign Controls by Partners.", "Australia Data Boundary and Support", "Canada Data Boundary and Support", "Data Boundary for Canada Controlled Goods", "Data Boundary for Canada Protected B", - "Data Boundary for CJIS", + "Data Boundary for Criminal Justice Information Systems (CJIS)", "Data Boundary for FedRAMP High", "Data Boundary for FedRAMP Moderate", - "Data Boundary for IL2", - "Data Boundary for IL4", - "Data Boundary for IL5", + "Data Boundary for Impact Level 2 (IL2)", + "Data Boundary for Impact Level 4 (IL4)", + "Data Boundary for Impact Level 5 (IL5)", "Data Boundary for IRS Publication 1075", - "Data Boundary for ITAR", - "Data Boundary for EU Regions and Support", - "Data Boundary for Israel Regions", - "Data Boundary for US Regions and Support", - "Data Boundary for US Healthcare and Life Sciences", - "Data Boundary for US Healthcare and Life Sciences with Support", - "KSA Data Boundary with Access Justifications", - "Regional Data Boundary", - "JAPAN Data Boundary" + "Data Boundary for International Traffic in Arms Regulations (ITAR)", + "European Union (EU) Data Boundary and Support", + "Israel Data Boundary and Support", + "Japan Data Boundary", + "Kingdom of Saudi Arabia (KSA) Data Boundary with Access Justifications", + "Data boundary for one of Assured Workloads' *Free tier* control packages. Determines the region by specifying the data location during workload creation.", + "United States (US) Data Boundary and Support", + "United States (US) Data Boundary for Healthcare and Life Sciences", + "United States (US) Data Boundary for Healthcare and Life Sciences with Support", + "Use the AUSTRALIA_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_CANADA_PROTECTED_B enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the CANADA_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_CANADA_CONTROLLED_GOODS enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_CJIS enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the EU_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_FEDRAMP_HIGH enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_FEDRAMP_MODERATE enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES_WITH_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Deprecated: Consider using the Data Boundary for US Healthcare and Life Sciences control package instead.", + "Deprecated: Consider using the Data Boundary for US Healthcare and Life Sciences control package instead.", + "Use the DATA_BOUNDARY_FOR_IL2 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_IL4 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_IL5 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_IRS_PUBLICATION_1075 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the ISRAEL_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the ISRAEL_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_ITAR enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the JAPAN_DATA_BOUNDARY enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the KSA_DATA_BOUNDARY_WITH_ACCESS_JUSTIFICATIONS enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the REGIONAL_DATA_BOUNDARY enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the US_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed." ], "type": "string" }, @@ -1203,6 +1291,54 @@ "properties": {}, "type": "object" }, + "GoogleCloudAssuredworkloadsV1beta1RevertArchivedResourceEventsRequest": { + "description": "Request for reverting archived resource events.", + "id": "GoogleCloudAssuredworkloadsV1beta1RevertArchivedResourceEventsRequest", + "properties": { + "archiveEndTime": { + "description": "Required. Only events within this time range will be reverted. This helps prevent reverting everything when something goes wrong.", + "format": "google-datetime", + "type": "string" + }, + "archiveStartTime": { + "description": "Required. Only events within this time range will be reverted. This helps prevent reverting everything when something goes wrong.", + "format": "google-datetime", + "type": "string" + }, + "batchSize": { + "description": "Required. The number of events to process in a single transaction batch.", + "format": "int32", + "type": "integer" + }, + "maxEventsMove": { + "description": "Required. The maximum total number of events to move in this request.", + "format": "int32", + "type": "integer" + }, + "organizationId": { + "description": "Required. The organization ID for which to revert events.", + "format": "int64", + "type": "string" + }, + "region": { + "description": "Required. The region of the workload(s) whose events should be reverted. This is used to filter workloads based on AssurantWorkloadData.region.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAssuredworkloadsV1beta1RevertArchivedResourceEventsResponse": { + "description": "Response for reverting archived resource events.", + "id": "GoogleCloudAssuredworkloadsV1beta1RevertArchivedResourceEventsResponse", + "properties": { + "movedEventsCount": { + "description": "The total number of events successfully moved to the original table.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudAssuredworkloadsV1beta1UpdateDetails": { "description": "The details of the update.", "id": "GoogleCloudAssuredworkloadsV1beta1UpdateDetails", @@ -1504,30 +1640,7 @@ "description": "Required. Immutable. Compliance Regime associated with this workload.", "enum": [ "COMPLIANCE_REGIME_UNSPECIFIED", - "IL4", - "CJIS", - "FEDRAMP_HIGH", - "FEDRAMP_MODERATE", - "US_REGIONAL_ACCESS", - "HIPAA", - "HITRUST", - "EU_REGIONS_AND_SUPPORT", - "CA_REGIONS_AND_SUPPORT", - "ITAR", - "AU_REGIONS_AND_US_SUPPORT", "ASSURED_WORKLOADS_FOR_PARTNERS", - "ISR_REGIONS", - "ISR_REGIONS_AND_SUPPORT", - "CA_PROTECTED_B", - "IL5", - "IL2", - "JP_REGIONS_AND_SUPPORT", - "KSA_REGIONS_AND_SUPPORT_WITH_SOVEREIGNTY_CONTROLS", - "REGIONAL_CONTROLS", - "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS", - "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS_US_SUPPORT", - "IRS_1075", - "CANADA_CONTROLLED_GOODS", "AUSTRALIA_DATA_BOUNDARY_AND_SUPPORT", "CANADA_DATA_BOUNDARY_AND_SUPPORT", "DATA_BOUNDARY_FOR_CANADA_CONTROLLED_GOODS", @@ -1542,12 +1655,35 @@ "DATA_BOUNDARY_FOR_ITAR", "EU_DATA_BOUNDARY_AND_SUPPORT", "ISRAEL_DATA_BOUNDARY_AND_SUPPORT", + "JAPAN_DATA_BOUNDARY", + "KSA_DATA_BOUNDARY_WITH_ACCESS_JUSTIFICATIONS", + "REGIONAL_DATA_BOUNDARY", "US_DATA_BOUNDARY_AND_SUPPORT", "US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES", "US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES_WITH_SUPPORT", - "KSA_DATA_BOUNDARY_WITH_ACCESS_JUSTIFICATIONS", - "REGIONAL_DATA_BOUNDARY", - "JAPAN_DATA_BOUNDARY" + "AU_REGIONS_AND_US_SUPPORT", + "CA_PROTECTED_B", + "CA_REGIONS_AND_SUPPORT", + "CANADA_CONTROLLED_GOODS", + "CJIS", + "EU_REGIONS_AND_SUPPORT", + "FEDRAMP_HIGH", + "FEDRAMP_MODERATE", + "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS", + "HEALTHCARE_AND_LIFE_SCIENCES_CONTROLS_US_SUPPORT", + "HIPAA", + "HITRUST", + "IL2", + "IL4", + "IL5", + "IRS_1075", + "ISR_REGIONS", + "ISR_REGIONS_AND_SUPPORT", + "ITAR", + "JP_REGIONS_AND_SUPPORT", + "KSA_REGIONS_AND_SUPPORT_WITH_SOVEREIGNTY_CONTROLS", + "REGIONAL_CONTROLS", + "US_REGIONAL_ACCESS" ], "enumDeprecated": [ false, @@ -1556,8 +1692,6 @@ false, false, false, - true, - true, false, false, false, @@ -1584,6 +1718,8 @@ false, false, false, + true, + true, false, false, false, @@ -1597,51 +1733,51 @@ false ], "enumDescriptions": [ - "Unknown compliance regime.", - "Information protection as per DoD IL4 requirements.", - "Criminal Justice Information Services (CJIS) Security policies.", - "FedRAMP High data protection controls", - "FedRAMP Moderate data protection controls", - "Assured Workloads For US Regions data protection controls", - "[DEPRECATED] Health Insurance Portability and Accountability Act controls", - "[DEPRECATED] Health Information Trust Alliance controls", - "Assured Workloads For EU Regions and Support controls", - "Assured Workloads For Canada Regions and Support controls", - "International Traffic in Arms Regulations", - "Assured Workloads for Australia Regions and Support controls", - "Assured Workloads for Partners;", - "Assured Workloads for Israel Regions", - "Assured Workloads for Israel Regions", - "Assured Workloads for Canada Protected B regime", - "Information protection as per DoD IL5 requirements.", - "Information protection as per DoD IL2 requirements.", - "Assured Workloads for Japan Regions", - "Assured Workloads Sovereign Controls KSA", - "Assured Workloads for Regional Controls", - "Healthcare and Life Science Controls", - "Healthcare and Life Science Controls with US Support", - "Internal Revenue Service 1075 controls", - "Canada Controlled Goods", + "The default value. This value is used if the control package is omitted or unknown.", + "Specifies a [Sovereign Controls by Partners](https://cloud.google.com/sovereign-controls-by-partners/docs/overview) control package. To use this control package, you must also specify the partner field from the list of Sovereign Controls by Partners.", "Australia Data Boundary and Support", "Canada Data Boundary and Support", "Data Boundary for Canada Controlled Goods", "Data Boundary for Canada Protected B", - "Data Boundary for CJIS", + "Data Boundary for Criminal Justice Information Systems (CJIS)", "Data Boundary for FedRAMP High", "Data Boundary for FedRAMP Moderate", - "Data Boundary for IL2", - "Data Boundary for IL4", - "Data Boundary for IL5", + "Data Boundary for Impact Level 2 (IL2)", + "Data Boundary for Impact Level 4 (IL4)", + "Data Boundary for Impact Level 5 (IL5)", "Data Boundary for IRS Publication 1075", - "Data Boundary for ITAR", - "Data Boundary for EU Regions and Support", - "Data Boundary for Israel Regions", - "Data Boundary for US Regions and Support", - "Data Boundary for US Healthcare and Life Sciences", - "Data Boundary for US Healthcare and Life Sciences with Support", - "KSA Data Boundary with Access Justifications", - "Regional Data Boundary", - "JAPAN Data Boundary" + "Data Boundary for International Traffic in Arms Regulations (ITAR)", + "European Union (EU) Data Boundary and Support", + "Israel Data Boundary and Support", + "Japan Data Boundary", + "Kingdom of Saudi Arabia (KSA) Data Boundary with Access Justifications", + "Data boundary for one of Assured Workloads' *Free tier* control packages. Determines the region by specifying the data location during workload creation.", + "United States (US) Data Boundary and Support", + "United States (US) Data Boundary for Healthcare and Life Sciences", + "United States (US) Data Boundary for Healthcare and Life Sciences with Support", + "Use the AUSTRALIA_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_CANADA_PROTECTED_B enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the CANADA_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_CANADA_CONTROLLED_GOODS enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_CJIS enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the EU_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_FEDRAMP_HIGH enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_FEDRAMP_MODERATE enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the US_DATA_BOUNDARY_FOR_HEALTHCARE_AND_LIFE_SCIENCES_WITH_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Deprecated: Consider using the Data Boundary for US Healthcare and Life Sciences control package instead.", + "Deprecated: Consider using the Data Boundary for US Healthcare and Life Sciences control package instead.", + "Use the DATA_BOUNDARY_FOR_IL2 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_IL4 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_IL5 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_IRS_PUBLICATION_1075 enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the ISRAEL_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the ISRAEL_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the DATA_BOUNDARY_FOR_ITAR enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the JAPAN_DATA_BOUNDARY enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the KSA_DATA_BOUNDARY_WITH_ACCESS_JUSTIFICATIONS enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the REGIONAL_DATA_BOUNDARY enum for this control package instead, as the name of the associated Assured Workloads control package has changed.", + "Use the US_DATA_BOUNDARY_AND_SUPPORT enum for this control package instead, as the name of the associated Assured Workloads control package has changed." ], "type": "string" }, @@ -1761,7 +1897,7 @@ "description": "Optional. Permissions granted to the AW Partner SA account for the customer workload" }, "partnerServicesBillingAccount": { - "description": "Optional. Billing account necessary for purchasing services from Sovereign Partners. This field is required for creating SIA/PSN/CNTXT partner workloads. The caller should have 'billing.resourceAssociations.create' IAM permission on this billing-account. The format of this string is billingAccounts/AAAAAA-BBBBBB-CCCCCC", + "description": "Optional. Billing account necessary for purchasing services from Sovereign Partners. This field is required for creating SIA/PSN/CNTXT/Telefonica partner workloads. The caller should have 'billing.resourceAssociations.create' IAM permission on this billing-account. The format of this string is billingAccounts/AAAAAA-BBBBBB-CCCCCC", "type": "string" }, "provisionedResourcesParent": { diff --git a/discovery/authorizedbuyersmarketplace-v1.json b/discovery/authorizedbuyersmarketplace-v1.json index 5e0f5086cea..9744d1c0fdc 100644 --- a/discovery/authorizedbuyersmarketplace-v1.json +++ b/discovery/authorizedbuyersmarketplace-v1.json @@ -169,7 +169,7 @@ ], "parameters": { "filter": { - "description": "Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus", + "description": "Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus * readyToServe", "location": "query", "type": "string" }, @@ -855,7 +855,7 @@ ], "parameters": { "filter": { - "description": "Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus", + "description": "Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus * readyToServe", "location": "query", "type": "string" }, @@ -1395,7 +1395,7 @@ } } }, - "revision": "20251211", + "revision": "20260409", "rootUrl": "https://authorizedbuyersmarketplace.googleapis.com/", "schemas": { "AcceptProposalRequest": { diff --git a/discovery/authorizedbuyersmarketplace-v1alpha.json b/discovery/authorizedbuyersmarketplace-v1alpha.json index 4eb8abb3b13..b97663fe972 100644 --- a/discovery/authorizedbuyersmarketplace-v1alpha.json +++ b/discovery/authorizedbuyersmarketplace-v1alpha.json @@ -169,7 +169,7 @@ ], "parameters": { "filter": { - "description": "Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus", + "description": "Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus * readyToServe", "location": "query", "type": "string" }, @@ -1038,7 +1038,7 @@ ], "parameters": { "filter": { - "description": "Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus", + "description": "Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus * readyToServe", "location": "query", "type": "string" }, @@ -1806,7 +1806,7 @@ } } }, - "revision": "20251211", + "revision": "20260409", "rootUrl": "https://authorizedbuyersmarketplace.googleapis.com/", "schemas": { "AcceptProposalRequest": { diff --git a/discovery/backupdr-v1.json b/discovery/backupdr-v1.json index b1cde12301b..46abda55fc7 100644 --- a/discovery/backupdr-v1.json +++ b/discovery/backupdr-v1.json @@ -15,6 +15,243 @@ "description": "", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/backup-disaster-recovery", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us-west4.rep.googleapis.com/", + "location": "us-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us-west8.rep.googleapis.com/", + "location": "us-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.us.rep.googleapis.com/", + "location": "us" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://backupdr.eu.rep.googleapis.com/", + "location": "eu" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -105,6 +342,122 @@ }, "protocol": "rest", "resources": { + "folders": { + "resources": { + "locations": { + "resources": { + "resourceBackupConfigs": { + "methods": { + "fetch": { + "description": "Fetches ResourceBackupConfigs.", + "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/resourceBackupConfigs:fetch", + "httpMethod": "GET", + "id": "backupdr.folders.locations.resourceBackupConfigs.fetch", + "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 use 100 as default. Maximum value is 500 and values above 500 will be coerced to 500.", + "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. The project, folder or organization and location for which to retrieve resource backup configs. Format: 'projects/{project_id}/locations/{location}', 'folders/{folder_id}/locations/{location}', or 'organizations/{organization_id}/locations/{location}'.", + "location": "path", + "pattern": "^folders/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/resourceBackupConfigs:fetch", + "response": { + "$ref": "FetchResourceBackupConfigsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, + "organizations": { + "resources": { + "locations": { + "resources": { + "resourceBackupConfigs": { + "methods": { + "fetch": { + "description": "Fetches ResourceBackupConfigs.", + "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/resourceBackupConfigs:fetch", + "httpMethod": "GET", + "id": "backupdr.organizations.locations.resourceBackupConfigs.fetch", + "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 use 100 as default. Maximum value is 500 and values above 500 will be coerced to 500.", + "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. The project, folder or organization and location for which to retrieve resource backup configs. Format: 'projects/{project_id}/locations/{location}', 'folders/{folder_id}/locations/{location}', or 'organizations/{organization_id}/locations/{location}'.", + "location": "path", + "pattern": "^organizations/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/resourceBackupConfigs:fetch", + "response": { + "$ref": "FetchResourceBackupConfigsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, "projects": { "resources": { "locations": { @@ -160,7 +513,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "backupdr.projects.locations.list", @@ -169,7 +522,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2117,6 +2470,52 @@ }, "resourceBackupConfigs": { "methods": { + "fetch": { + "description": "Fetches ResourceBackupConfigs.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/resourceBackupConfigs:fetch", + "httpMethod": "GET", + "id": "backupdr.projects.locations.resourceBackupConfigs.fetch", + "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 use 100 as default. Maximum value is 500 and values above 500 will be coerced to 500.", + "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. The project, folder or organization and location for which to retrieve resource backup configs. Format: 'projects/{project_id}/locations/{location}', 'folders/{folder_id}/locations/{location}', or 'organizations/{organization_id}/locations/{location}'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/resourceBackupConfigs:fetch", + "response": { + "$ref": "FetchResourceBackupConfigsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "list": { "description": "Lists ResourceBackupConfigs.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/resourceBackupConfigs", @@ -2262,7 +2661,7 @@ } } }, - "revision": "20260224", + "revision": "20260423", "rootUrl": "https://backupdr.googleapis.com/", "schemas": { "AbandonBackupRequest": { @@ -2814,6 +3213,11 @@ "format": "google-datetime", "type": "string" }, + "filestoreInstanceBackupProperties": { + "$ref": "FilestoreInstanceBackupProperties", + "description": "Output only. Filestore specific backup properties.", + "readOnly": true + }, "gcpBackupPlanInfo": { "$ref": "GCPBackupPlanInfo", "description": "Output only. Configuration for a Google Cloud resource.", @@ -3269,6 +3673,10 @@ "readOnly": true, "type": "string" }, + "computeInstanceBackupPlanProperties": { + "$ref": "ComputeInstanceBackupPlanProperties", + "description": "Optional. Defines optional properties specific to backups of disk-based resources, such as Compute Engine. This includes settings like whether to perform a guest flush." + }, "createTime": { "description": "Output only. When the `BackupPlan` was created.", "format": "google-datetime", @@ -3279,6 +3687,10 @@ "description": "Optional. The description of the `BackupPlan` resource. The description allows for additional details about `BackupPlan` and its use cases to be provided. An example description is the following: \"This is a backup plan that performs a daily backup at 6pm and retains data for 3 months\". The description must be at most 2048 characters.", "type": "string" }, + "diskBackupPlanProperties": { + "$ref": "DiskBackupPlanProperties", + "description": "Optional. Defines optional properties specific to backups of disk-based resources, such as Compute Engine Persistent Disks. This includes settings like whether to perform a guest flush." + }, "etag": { "description": "Optional. `etag` is returned from the service in the response. As a user of the service, you may provide an etag value in this field to prevent stale resources.", "type": "string" @@ -3832,6 +4244,17 @@ }, "type": "object" }, + "ComputeInstanceBackupPlanProperties": { + "description": "--- ComputeInstanceBackupPlanProperties Message ---", + "id": "ComputeInstanceBackupPlanProperties", + "properties": { + "guestFlush": { + "description": "Optional. Indicates whether to perform a guest flush operation before taking a compute backup. When set to false, the system will create crash-consistent backups. Default value is false.", + "type": "boolean" + } + }, + "type": "object" + }, "ComputeInstanceBackupProperties": { "description": "ComputeInstanceBackupProperties represents Compute Engine instance backup properties.", "id": "ComputeInstanceBackupProperties", @@ -3858,6 +4281,10 @@ }, "type": "array" }, + "guestFlush": { + "description": "Optional. Indicates whether to perform a guest flush operation before taking a compute backup. When set to false, the system will create crash-consistent backups. Default value is false.", + "type": "boolean" + }, "keyRevocationActionType": { "description": "KeyRevocationActionType of the instance. Supported options are \"STOP\" and \"NONE\". The default value is \"NONE\" if it is not specified.", "enum": [ @@ -4334,6 +4761,11 @@ "$ref": "DiskDataSourceProperties", "description": "DiskDataSourceProperties has a subset of Disk properties that are useful at the Datasource level." }, + "filestoreInstanceDatasourceProperties": { + "$ref": "FilestoreInstanceDataSourceProperties", + "description": "Output only. FilestoreInstanceDataSourceProperties has a subset of FileStore instance properties that are useful at the Datasource level.", + "readOnly": true + }, "gcpResourcename": { "description": "Output only. Full resource pathname URL of the source Google Cloud resource.", "readOnly": true, @@ -4364,6 +4796,11 @@ "description": "Output only. The properties of the Cloud SQL instance.", "readOnly": true }, + "filestoreInstanceProperties": { + "$ref": "FilestoreInstanceDataSourceReferenceProperties", + "description": "Output only. The properties of the Filestore instance.", + "readOnly": true + }, "gcpResourcename": { "description": "Output only. The resource name of the Google Cloud resource. Ex: projects/{project}/zones/{zone}/instances/{instance}", "readOnly": true, @@ -4441,6 +4878,17 @@ }, "type": "object" }, + "DiskBackupPlanProperties": { + "description": "--- DiskBackupPlanProperties Message ---", + "id": "DiskBackupPlanProperties", + "properties": { + "guestFlush": { + "description": "Optional. Indicates whether to perform a guest flush operation before taking a disk backup. When set to false, the system will create crash-consistent backups. Default value is false.", + "type": "boolean" + } + }, + "type": "object" + }, "DiskBackupProperties": { "description": "DiskBackupProperties represents the properties of a Disk backup.", "id": "DiskBackupProperties", @@ -4471,6 +4919,10 @@ "description": "Indicates whether the source disk is using confidential compute mode.", "type": "boolean" }, + "guestFlush": { + "description": "Optional. Defines if the guest flush is enabled for the source disk. Default value is false.", + "type": "boolean" + }, "guestOsFeature": { "description": "A list of guest OS features that are applicable to this backup.", "items": { @@ -4896,6 +5348,24 @@ }, "type": "object" }, + "FetchResourceBackupConfigsResponse": { + "description": "Response for FetchResourceBackupConfigs.", + "id": "FetchResourceBackupConfigsResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "resourceBackupConfigs": { + "description": "The list of ResourceBackupConfigs for the specified scope.", + "items": { + "$ref": "ResourceBackupConfig" + }, + "type": "array" + } + }, + "type": "object" + }, "FetchUsableBackupVaultsResponse": { "description": "Response message for fetching usable BackupVaults.", "id": "FetchUsableBackupVaultsResponse", @@ -4934,6 +5404,54 @@ }, "type": "object" }, + "FilestoreInstanceBackupProperties": { + "description": "FilestoreInstanceBackupProperties represents the properties of a Filestore instance that are backed up by the datasource. .", + "id": "FilestoreInstanceBackupProperties", + "properties": { + "sourceInstance": { + "description": "Output only. The source instance of the backup.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "FilestoreInstanceDataSourceProperties": { + "description": "FilestoreInstanceDataSourceProperties represents the properties of a Filestore resource that are stored in the DataSource. .", + "id": "FilestoreInstanceDataSourceProperties", + "properties": { + "instanceCreateTime": { + "description": "Output only. The instance creation timestamp.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Output only. Name of the Filestore instance backed up by the datasource.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "FilestoreInstanceDataSourceReferenceProperties": { + "description": "FilestoreInstanceDataSourceReferenceProperties represents the properties of a Filestore resource that are stored in the DataSourceReference. .", + "id": "FilestoreInstanceDataSourceReferenceProperties", + "properties": { + "instanceCreateTime": { + "description": "Output only. The instance creation timestamp.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Output only. Name of the Filestore instance backed up by the datasource. Format: projects/{project}/instances/{instance}", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "FinalizeBackupRequest": { "description": "Message for finalizing a Backup.", "id": "FinalizeBackupRequest", @@ -5049,6 +5567,58 @@ }, "type": "object" }, + "GoogleCloudBackupdrV1OperationMetadata": { + "description": "Represents the metadata of the long-running operation.", + "id": "GoogleCloudBackupdrV1OperationMetadata", + "properties": { + "additionalInfo": { + "additionalProperties": { + "type": "string" + }, + "description": "Output only. AdditionalInfo contains additional Info related to backup plan association resource.", + "readOnly": true, + "type": "object" + }, + "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 google.longrunning.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" + }, "GuestOsFeature": { "description": "Feature type of the Guest OS.", "id": "GuestOsFeature", @@ -5131,6 +5701,10 @@ "resourceType": { "description": "Required. The resource type to which the default service config will be applied. Examples include, \"compute.googleapis.com/Instance\" and \"storage.googleapis.com/Bucket\".", "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, validates the request and returns the result, but does not actually run it.", + "type": "boolean" } }, "type": "object" @@ -5484,17 +6058,36 @@ "id": "LocationMetadata", "properties": { "unsupportedFeatures": { + "description": "List of features that are not supported in the location.", "items": { "enum": [ "FEATURE_UNSPECIFIED", "MANAGEMENT_SERVER", "COMPUTE_INSTANCE", - "PROTECTION_SUMMARY" + "PROTECTION_SUMMARY", + "DISK", + "CLOUD_SQL", + "ALLOY_DB", + "FILESTORE", + "BV_AF", + "CEP_MONITORING_COMPUTE_INSTANCE", + "CEP_MONITORING_DISK", + "BV_CUSTOM_PROBERS", + "FT_CUSTOM_PROBERS" ], "enumDescriptions": [ "", "", "", + "", + "", + "", + "", + "", + "", + "", + "", + "Remove once parity achieved between BV_AF and BV_CUSTOM_PROBERS.", "" ], "type": "string" @@ -5872,58 +6465,6 @@ }, "type": "object" }, - "OperationMetadata": { - "description": "Represents the metadata of the long-running operation.", - "id": "OperationMetadata", - "properties": { - "additionalInfo": { - "additionalProperties": { - "type": "string" - }, - "description": "Output only. AdditionalInfo contains additional Info related to backup plan association resource.", - "readOnly": true, - "type": "object" - }, - "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 google.longrunning.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" - }, "PitrSettings": { "description": "Point in time recovery settings of the backup configuration resource.", "id": "PitrSettings", @@ -6045,14 +6586,16 @@ "CLOUD_SQL_INSTANCE", "COMPUTE_ENGINE_VM", "COMPUTE_ENGINE_DISK", - "COMPUTE_ENGINE_REGIONAL_DISK" + "COMPUTE_ENGINE_REGIONAL_DISK", + "FILESTORE_INSTANCE" ], "enumDescriptions": [ "Resource type not set.", "Cloud SQL instance.", "Compute Engine VM.", "Compute Engine Disk.", - "Compute Engine Regional Disk." + "Compute Engine Regional Disk.", + "Filestore Instance." ], "readOnly": true, "type": "string" diff --git a/discovery/baremetalsolution-v2.json b/discovery/baremetalsolution-v2.json index 8d67d6c5656..d0f5ea9b4f4 100644 --- a/discovery/baremetalsolution-v2.json +++ b/discovery/baremetalsolution-v2.json @@ -134,7 +134,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2/projects/{projectsId}/locations", "httpMethod": "GET", "id": "baremetalsolution.projects.locations.list", @@ -1728,7 +1728,7 @@ } } }, - "revision": "20260128", + "revision": "20260319", "rootUrl": "https://baremetalsolution.googleapis.com/", "schemas": { "AllowedClient": { diff --git a/discovery/batch-v1.json b/discovery/batch-v1.json index 47cffbddc10..4a493f05ebb 100644 --- a/discovery/batch-v1.json +++ b/discovery/batch-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "batch.projects.locations.list", @@ -600,7 +600,7 @@ } } }, - "revision": "20251112", + "revision": "20260417", "rootUrl": "https://batch.googleapis.com/", "schemas": { "Accelerator": { diff --git a/discovery/beyondcorp-v1.json b/discovery/beyondcorp-v1.json index 9439154b032..db725107ace 100644 --- a/discovery/beyondcorp-v1.json +++ b/discovery/beyondcorp-v1.json @@ -271,7 +271,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "beyondcorp.projects.locations.list", @@ -343,7 +343,7 @@ "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).", + "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 the 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" }, @@ -381,7 +381,7 @@ "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).", + "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 the 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" }, @@ -523,7 +523,7 @@ "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).", + "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 the 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" }, @@ -1652,7 +1652,7 @@ "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 request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request.", + "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.", "location": "query", "type": "string" } @@ -1909,7 +1909,7 @@ } } }, - "revision": "20260128", + "revision": "20260401", "rootUrl": "https://beyondcorp.googleapis.com/", "schemas": { "AllocatedConnection": { @@ -2170,7 +2170,7 @@ "type": "object" }, "GoogleCloudBeyondcorpAppconnectionsV1AppConnection": { - "description": "A BeyondCorp AppConnection resource represents a BeyondCorp protected AppConnection to a remote application. It creates all the necessary GCP components needed for creating a BeyondCorp protected AppConnection. Multiple connectors can be authorised for a single AppConnection.", + "description": "A BeyondCorp AppConnection resource represents a BeyondCorp protected AppConnection to a remote application. It creates all the necessary GCP components needed for creating a BeyondCorp protected AppConnection. Multiple connectors can be authorized for a single AppConnection.", "id": "GoogleCloudBeyondcorpAppconnectionsV1AppConnection", "properties": { "applicationEndpoint": { @@ -2178,7 +2178,7 @@ "description": "Required. Address of the remote application endpoint for the BeyondCorp AppConnection." }, "connectors": { - "description": "Optional. List of [google.cloud.beyondcorp.v1main.Connector.name] that are authorised to be associated with this AppConnection.", + "description": "Optional. List of [google.cloud.beyondcorp.v1main.Connector.name] that are authorized to be associated with this AppConnection.", "items": { "type": "string" }, @@ -2764,7 +2764,7 @@ "type": "object" }, "GoogleCloudBeyondcorpAppconnectorsV1ResourceInfo": { - "description": "ResourceInfo represents the information/status of an app connector resource. Such as: - remote_agent - container - runtime - appgateway - appconnector - appconnection - tunnel - logagent", + "description": "ResourceInfo represents the information or status of an app connector resource component that's used to report on various parts of the system. For example, ResourceInfo can be used to convey the status of a remote_agent, including the status of an appgateway for an runtime environment in a container instance.", "id": "GoogleCloudBeyondcorpAppconnectorsV1ResourceInfo", "properties": { "id": { @@ -3474,6 +3474,12 @@ }, "type": "object" }, + "GoogleCloudBeyondcorpSecuritygatewaysV1LoggingConfig": { + "description": "Configuration for Cloud Logging.", + "id": "GoogleCloudBeyondcorpSecuritygatewaysV1LoggingConfig", + "properties": {}, + "type": "object" + }, "GoogleCloudBeyondcorpSecuritygatewaysV1ProxyProtocolConfig": { "description": "The configuration for the proxy.", "id": "GoogleCloudBeyondcorpSecuritygatewaysV1ProxyProtocolConfig", @@ -3549,6 +3555,10 @@ "description": "Optional. Map of Hubs that represents regional data path deployment with GCP region as a key.", "type": "object" }, + "logging": { + "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1LoggingConfig", + "description": "Optional. Configuration for Cloud Logging. If this field is present, the logging will be enabled." + }, "name": { "description": "Identifier. Name of the resource.", "type": "string" @@ -3643,7 +3653,7 @@ "properties": { "apiGateway": { "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1ServiceDiscoveryApiGateway", - "description": "Required. External API configuration." + "description": "Optional. External API configuration." } }, "type": "object" @@ -3654,7 +3664,7 @@ "properties": { "resourceOverride": { "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1ServiceDiscoveryApiGatewayOperationDescriptor", - "description": "Required. Enables fetching resource model updates to alter service behavior per Chrome profile." + "description": "Optional. Enables fetching resource model updates to alter service behavior per Chrome profile." } }, "type": "object" @@ -3664,7 +3674,7 @@ "id": "GoogleCloudBeyondcorpSecuritygatewaysV1ServiceDiscoveryApiGatewayOperationDescriptor", "properties": { "path": { - "description": "Required. Contains the URI path fragment where HTTP request is sent.", + "description": "Optional. Contains the URI path fragment where HTTP request is sent.", "type": "string" } }, diff --git a/discovery/beyondcorp-v1alpha.json b/discovery/beyondcorp-v1alpha.json index 2b1251f1384..d5f2ec0753d 100644 --- a/discovery/beyondcorp-v1alpha.json +++ b/discovery/beyondcorp-v1alpha.json @@ -673,7 +673,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha/projects/{projectsId}/locations", "httpMethod": "GET", "id": "beyondcorp.projects.locations.list", @@ -745,7 +745,7 @@ "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).", + "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 the 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" }, @@ -783,7 +783,7 @@ "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).", + "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 the 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" }, @@ -925,7 +925,7 @@ "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).", + "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 the 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" }, @@ -3075,7 +3075,7 @@ "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 request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request.", + "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.", "location": "query", "type": "string" } @@ -3332,7 +3332,7 @@ } } }, - "revision": "20260128", + "revision": "20260401", "rootUrl": "https://beyondcorp.googleapis.com/", "schemas": { "AllocatedConnection": { @@ -4009,7 +4009,7 @@ "type": "object" }, "GoogleCloudBeyondcorpAppconnectionsV1alphaAppConnection": { - "description": "A BeyondCorp AppConnection resource represents a BeyondCorp protected AppConnection to a remote application. It creates all the necessary GCP components needed for creating a BeyondCorp protected AppConnection. Multiple connectors can be authorised for a single AppConnection.", + "description": "A BeyondCorp AppConnection resource represents a BeyondCorp protected AppConnection to a remote application. It creates all the necessary GCP components needed for creating a BeyondCorp protected AppConnection. Multiple connectors can be authorized for a single AppConnection.", "id": "GoogleCloudBeyondcorpAppconnectionsV1alphaAppConnection", "properties": { "applicationEndpoint": { @@ -4017,7 +4017,7 @@ "description": "Required. Address of the remote application endpoint for the BeyondCorp AppConnection." }, "connectors": { - "description": "Optional. List of [google.cloud.beyondcorp.v1main.Connector.name] that are authorised to be associated with this AppConnection.", + "description": "Optional. List of [google.cloud.beyondcorp.v1main.Connector.name] that are authorized to be associated with this AppConnection.", "items": { "type": "string" }, @@ -4635,7 +4635,7 @@ "type": "object" }, "GoogleCloudBeyondcorpAppconnectorsV1alphaResourceInfo": { - "description": "ResourceInfo represents the information/status of an app connector resource. Such as: - remote_agent - container - runtime - appgateway - appconnector - appconnection - tunnel - logagent", + "description": "ResourceInfo represents the information or status of an app connector resource component that's used to report on various parts of the system. For example, ResourceInfo can be used to convey the status of a remote_agent, including the status of an appgateway for an runtime environment in a container instance.", "id": "GoogleCloudBeyondcorpAppconnectorsV1alphaResourceInfo", "properties": { "id": { @@ -5223,12 +5223,14 @@ "enum": [ "SUBSCRIBER_TYPE_UNSPECIFIED", "ONLINE", - "OFFLINE" + "OFFLINE", + "CEP_TRIAL" ], "enumDescriptions": [ "Default value. This value is unused.", "Represents an online subscription.", - "Represents an offline subscription." + "Represents an offline subscription.", + "Represents a trial subscription. This maps to the 'TRIAL' subscriber_type in the Entitler proto (google3/identity/cloud/contextawareaccess/billing/proto/enums.proto), but is named 'CEP_TRIAL' here to avoid a name collision with the 'Type' enum defined above." ], "readOnly": true, "type": "string" @@ -5628,6 +5630,12 @@ }, "type": "object" }, + "GoogleCloudBeyondcorpSecuritygatewaysV1alphaLoggingConfig": { + "description": "Configuration for Cloud Logging.", + "id": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaLoggingConfig", + "properties": {}, + "type": "object" + }, "GoogleCloudBeyondcorpSecuritygatewaysV1alphaProxyProtocolConfig": { "description": "The configuration for the proxy.", "id": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaProxyProtocolConfig", @@ -5703,6 +5711,10 @@ "description": "Optional. Map of Hubs that represents regional data path deployment with GCP region as a key.", "type": "object" }, + "logging": { + "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaLoggingConfig", + "description": "Optional. Configuration for Cloud Logging. If this field is present, the logging will be enabled." + }, "name": { "description": "Identifier. Name of the resource.", "type": "string" @@ -5797,7 +5809,7 @@ "properties": { "apiGateway": { "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaServiceDiscoveryApiGateway", - "description": "Required. External API configuration." + "description": "Optional. External API configuration." } }, "type": "object" @@ -5808,7 +5820,7 @@ "properties": { "resourceOverride": { "$ref": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaServiceDiscoveryApiGatewayOperationDescriptor", - "description": "Required. Enables fetching resource model updates to alter service behavior per Chrome profile." + "description": "Optional. Enables fetching resource model updates to alter service behavior per Chrome profile." } }, "type": "object" @@ -5818,7 +5830,7 @@ "id": "GoogleCloudBeyondcorpSecuritygatewaysV1alphaServiceDiscoveryApiGatewayOperationDescriptor", "properties": { "path": { - "description": "Required. Contains the URI path fragment where HTTP request is sent.", + "description": "Optional. Contains the URI path fragment where HTTP request is sent.", "type": "string" } }, diff --git a/discovery/bigquery-v2.json b/discovery/bigquery-v2.json index 7774a45e146..fa4a257e80d 100644 --- a/discovery/bigquery-v2.json +++ b/discovery/bigquery-v2.json @@ -2390,7 +2390,7 @@ } } }, - "revision": "20260211", + "revision": "20260314", "rootUrl": "https://bigquery.googleapis.com/", "schemas": { "AggregateClassificationMetrics": { @@ -3691,6 +3691,11 @@ }, "type": "array" }, + "catalogSource": { + "description": "Output only. The origin of the dataset, one of: * (Unset) - Native BigQuery Dataset * BIGLAKE - Dataset is backed by a namespace stored natively in Biglake", + "readOnly": true, + "type": "string" + }, "creationTime": { "description": "Output only. The time when this dataset was created, in milliseconds since the epoch.", "format": "int64", @@ -3862,7 +3867,7 @@ "type": "array" }, "type": { - "description": "Output only. Same as `type` in `ListFormatDataset`. The type of the dataset, one of: * DEFAULT - only accessible by owner and authorized accounts, * PUBLIC - accessible by everyone, * LINKED - linked dataset, * EXTERNAL - dataset with definition in external metadata catalog.", + "description": "Output only. Same as `type` in `ListFormatDataset`. The type of the dataset, one of: * DEFAULT - only accessible by owner and authorized accounts, * PUBLIC - accessible by everyone, * LINKED - linked dataset, * EXTERNAL - dataset with definition in external metadata catalog, * BIGLAKE_ICEBERG - a Biglake dataset accessible through the Iceberg API, * BIGLAKE_HIVE - a Biglake dataset accessible through the Hive API.", "readOnly": true, "type": "string" } @@ -3906,6 +3911,11 @@ "items": { "description": "A dataset resource with only a subset of fields, to be returned in a list of datasets.", "properties": { + "catalogSource": { + "description": "Output only. The origin of the dataset, one of: * (Unset) - Native BigQuery Dataset. * BIGLAKE - Dataset is backed by a namespace stored natively in Biglake.", + "readOnly": true, + "type": "string" + }, "datasetReference": { "$ref": "DatasetReference", "description": "The dataset reference. Use this property to access specific parts of the dataset's ID, such as project ID or dataset ID." @@ -3937,6 +3947,11 @@ "location": { "description": "The geographic location where the dataset resides.", "type": "string" + }, + "type": { + "description": "Output only. Same as `type` in `Dataset`. The type of the dataset, one of: * DEFAULT - only accessible by owner and authorized accounts, * PUBLIC - accessible by everyone, * LINKED - linked dataset, * EXTERNAL - dataset with definition in external metadata catalog, * BIGLAKE_ICEBERG - a Biglake dataset accessible through the Iceberg API, * BIGLAKE_HIVE - a Biglake dataset accessible through the Hive API.", + "readOnly": true, + "type": "string" } }, "type": "object" @@ -4080,6 +4095,38 @@ "readOnly": true, "type": "string" }, + "dmlMode": { + "description": "Output only. DML mode used.", + "enum": [ + "DML_MODE_UNSPECIFIED", + "COARSE_GRAINED_DML", + "FINE_GRAINED_DML" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Coarse-grained DML was used.", + "Fine-grained DML was used." + ], + "readOnly": true, + "type": "string" + }, + "fineGrainedDmlUnusedReason": { + "description": "Output only. Reason for disabling fine-grained DML if applicable.", + "enum": [ + "FINE_GRAINED_DML_UNUSED_REASON_UNSPECIFIED", + "MAX_PARTITION_SIZE_EXCEEDED", + "TABLE_NOT_ENROLLED", + "DML_IN_MULTI_STATEMENT_TRANSACTION" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Max partition size threshold exceeded. [Fine-grained DML Limitations] (https://docs.cloud.google.com/bigquery/docs/data-manipulation-language#fine-grained-dml-limitations)", + "The table is not enrolled for fine-grained DML.", + "The DML statement is part of a multi-statement transaction." + ], + "readOnly": true, + "type": "string" + }, "insertedRowCount": { "description": "Output only. Number of inserted Rows. Populated by DML INSERT and MERGE statements", "format": "int64", @@ -4679,7 +4726,7 @@ "type": "string" }, "timestampTargetPrecision": { - "description": "Precisions (maximum number of total digits in base 10) for seconds of TIMESTAMP types that are allowed to the destination table for autodetection mode. Available for the formats: CSV. For the CSV Format, Possible values include: Not Specified, [], or [6]: timestamp(6) for all auto detected TIMESTAMP columns [6, 12]: timestamp(6) for all auto detected TIMESTAMP columns that have less than 6 digits of subseconds. timestamp(12) for all auto detected TIMESTAMP columns that have more than 6 digits of subseconds. [12]: timestamp(12) for all auto detected TIMESTAMP columns. The order of the elements in this array is ignored. Inputs that have higher precision than the highest target precision in this array will be truncated.", + "description": "Precisions (maximum number of total digits in base 10) for seconds of TIMESTAMP types that are allowed to the destination table for autodetection mode. Available for the formats: CSV, PARQUET, and AVRO. Possible values include: Not Specified, [], or [6]: timestamp(6) for all auto detected TIMESTAMP columns [6, 12]: timestamp(6) for all auto detected TIMESTAMP columns that have less than 6 digits of subseconds. timestamp(12) for all auto detected TIMESTAMP columns that have more than 6 digits of subseconds. [12]: timestamp(12) for all auto detected TIMESTAMP columns. The order of the elements in this array is ignored. Inputs that have higher precision than the highest target precision in this array will be truncated.", "items": { "format": "int32", "type": "integer" @@ -4822,6 +4869,145 @@ }, "type": "object" }, + "GenAiErrorStats": { + "description": "Provides error statistics for the query job across all AI function calls.", + "id": "GenAiErrorStats", + "properties": { + "errors": { + "description": "A list of unique errors at query level (up to 5, truncated to 100 chars)", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GenAiFunctionCostOptimizationStats": { + "description": "Provides cost optimization statistics for a GenAi function call.", + "id": "GenAiFunctionCostOptimizationStats", + "properties": { + "message": { + "description": "System generated message to provide insights into cost optimization state.", + "type": "string" + }, + "numCostOptimizedRows": { + "description": "Number of rows inferred via cost optimized workflow.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GenAiFunctionErrorStats": { + "description": "Provides error statistics for a GenAi function call.", + "id": "GenAiFunctionErrorStats", + "properties": { + "errors": { + "description": "A list of unique errors at function level (up to 5, truncated to 100 chars).", + "items": { + "type": "string" + }, + "type": "array" + }, + "numFailedRows": { + "description": "Number of failed rows processed by the function", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GenAiFunctionStats": { + "description": "Provides statistics for each Ai function call within a query.", + "id": "GenAiFunctionStats", + "properties": { + "costOptimizationStats": { + "$ref": "GenAiFunctionCostOptimizationStats", + "description": "Cost optimization stats if applied on the rows processed by the function." + }, + "errorStats": { + "$ref": "GenAiFunctionErrorStats", + "description": "Error stats for the function." + }, + "functionName": { + "description": "Name of the function.", + "type": "string" + }, + "numProcessedRows": { + "description": "Number of rows processed by this GenAi function. This includes all cost_optimized, llm_inferred and failed_rows.", + "format": "int64", + "type": "string" + }, + "prompt": { + "description": "User input prompt of the function (truncated to 20 chars).", + "type": "string" + } + }, + "type": "object" + }, + "GenAiStats": { + "description": "GenAi stats for the query job.", + "id": "GenAiStats", + "properties": { + "errorStats": { + "$ref": "GenAiErrorStats", + "description": "Job level error stats across all GenAi functions" + }, + "functionStats": { + "description": "Function level stats for GenAi Functions. See https://docs.cloud.google.com/bigquery/docs/generative-ai-overview", + "items": { + "$ref": "GenAiFunctionStats" + }, + "type": "array" + } + }, + "type": "object" + }, + "GeneratedColumn": { + "description": "Optional. Definition of how values are generated for the field. Only valid for top-level schema fields (not nested fields).", + "id": "GeneratedColumn", + "properties": { + "generatedExpressionInfo": { + "$ref": "GeneratedExpressionInfo", + "description": "Definition of the expression used to generate the field." + }, + "generatedMode": { + "description": "Optional. Dictates when system generated values are used to populate the field.", + "enum": [ + "GENERATED_MODE_UNSPECIFIED", + "GENERATED_ALWAYS", + "GENERATED_BY_DEFAULT" + ], + "enumDescriptions": [ + "Unspecified GeneratedMode will default to GENERATED_ALWAYS.", + "Field can only have system generated values. Users cannot manually insert values into the field.", + "Use system generated values only if the user does not explicitly provide a value." + ], + "type": "string" + } + }, + "type": "object" + }, + "GeneratedExpressionInfo": { + "description": "Definition of the expression used to generate the field.", + "id": "GeneratedExpressionInfo", + "properties": { + "asynchronous": { + "description": "Optional. Whether the column generation is done asynchronously.", + "type": "boolean" + }, + "generationExpression": { + "description": "Optional. The generation expression (e.g. AI.EMBED(...)) used to generated the field.", + "type": "string" + }, + "stored": { + "description": "Optional. Whether the generated column is stored in the table.", + "type": "boolean" + } + }, + "type": "object" + }, "GetIamPolicyRequest": { "description": "Request message for `GetIamPolicy` method.", "id": "GetIamPolicyRequest", @@ -5901,7 +6087,7 @@ "type": "string" }, "timestampTargetPrecision": { - "description": "Precisions (maximum number of total digits in base 10) for seconds of TIMESTAMP types that are allowed to the destination table for autodetection mode. Available for the formats: CSV. For the CSV Format, Possible values include: Not Specified, [], or [6]: timestamp(6) for all auto detected TIMESTAMP columns [6, 12]: timestamp(6) for all auto detected TIMESTAMP columns that have less than 6 digits of subseconds. timestamp(12) for all auto detected TIMESTAMP columns that have more than 6 digits of subseconds. [12]: timestamp(12) for all auto detected TIMESTAMP columns. The order of the elements in this array is ignored. Inputs that have higher precision than the highest target precision in this array will be truncated.", + "description": "Precisions (maximum number of total digits in base 10) for seconds of TIMESTAMP types that are allowed to the destination table for autodetection mode. Available for the formats: CSV, PARQUET, and AVRO. Possible values include: Not Specified, [], or [6]: timestamp(6) for all auto detected TIMESTAMP columns [6, 12]: timestamp(6) for all auto detected TIMESTAMP columns that have less than 6 digits of subseconds. timestamp(12) for all auto detected TIMESTAMP columns that have more than 6 digits of subseconds. [12]: timestamp(12) for all auto detected TIMESTAMP columns. The order of the elements in this array is ignored. Inputs that have higher precision than the highest target precision in this array will be truncated.", "items": { "format": "int32", "type": "integer" @@ -6500,6 +6686,11 @@ "readOnly": true, "type": "array" }, + "genAiStats": { + "$ref": "GenAiStats", + "description": "Output only. Statistics related to GenAI usage in the query.", + "readOnly": true + }, "incrementalResultStats": { "$ref": "IncrementalResultStats", "description": "Output only. Statistics related to incremental query results, if enabled for the query. This feature is not yet available.", @@ -6563,6 +6754,14 @@ "readOnly": true, "type": "array" }, + "referencedPropertyGraphs": { + "description": "Output only. Referenced property graphs for the job. Queries that reference more than 50 property graphs will not have a complete list.", + "items": { + "$ref": "PropertyGraphReference" + }, + "readOnly": true, + "type": "array" + }, "referencedRoutines": { "description": "Output only. Referenced routines for the job.", "items": { @@ -7695,7 +7894,7 @@ "type": "string" }, "projects": { - "description": "Projects to which the user has at least READ access.", + "description": "Projects to which the user has at least READ access. This field can be omitted if `totalItems` is 0.", "items": { "description": "Information about a single project.", "properties": { @@ -7744,6 +7943,25 @@ }, "type": "object" }, + "PropertyGraphReference": { + "description": "Id path of a property graph.", + "id": "PropertyGraphReference", + "properties": { + "datasetId": { + "description": "Required. The ID of the dataset containing this property graph.", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the project containing this property graph.", + "type": "string" + }, + "propertyGraphId": { + "description": "Required. The ID of the property graph. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters.", + "type": "string" + } + }, + "type": "object" + }, "PruningStats": { "description": "The column metadata index pruning statistics.", "id": "PruningStats", @@ -8401,6 +8619,11 @@ }, "type": "array" }, + "buildStatus": { + "$ref": "RoutineBuildStatus", + "description": "Output only. The build status of the routine. This field is only applicable to Python UDFs. [Preview](https://cloud.google.com/products/#product-launch-stages)", + "readOnly": true + }, "creationTime": { "description": "Output only. The time when this routine was created, in milliseconds since the epoch.", "format": "int64", @@ -8546,6 +8769,53 @@ }, "type": "object" }, + "RoutineBuildStatus": { + "description": "The status of a routine build.", + "id": "RoutineBuildStatus", + "properties": { + "buildDuration": { + "description": "Output only. The time taken for the image build. Populated only after the build succeeds or fails.", + "format": "google-duration", + "readOnly": true, + "type": "string" + }, + "buildState": { + "description": "Output only. The current build state of the routine.", + "enum": [ + "BUILD_STATE_UNSPECIFIED", + "IN_PROGRESS", + "SUCCEEDED", + "FAILED" + ], + "enumDescriptions": [ + "Default value.", + "The build is in progress.", + "The build has succeeded.", + "The build has failed." + ], + "readOnly": true, + "type": "string" + }, + "buildStateUpdateTime": { + "description": "Output only. The time when the build state was updated last.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "errorResult": { + "$ref": "ErrorProto", + "description": "Output only. A result object that will be present only if the build has failed.", + "readOnly": true + }, + "imageSizeBytes": { + "description": "Output only. The size of the image in bytes. Populated only after the build succeeds.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "RoutineReference": { "description": "Id path of a routine.", "id": "RoutineReference", @@ -9825,6 +10095,10 @@ "description": "Optional. Definition of the foreign data type. Only valid for top-level schema fields (not nested fields). If the type is FOREIGN, this field is required.", "type": "string" }, + "generatedColumn": { + "$ref": "GeneratedColumn", + "description": "Optional. Definition of how values are generated for the field. Only valid for top-level schema fields (not nested fields)." + }, "maxLength": { "description": "Optional. Maximum length of values of this field for STRINGS or BYTES. If max_length is not specified, no maximum length constraint is imposed on this field. If type = \"STRING\", then max_length represents the maximum UTF-8 length of strings in this field. If type = \"BYTES\", then max_length represents the maximum number of bytes in this field. It is invalid to set this field if type ≠ \"STRING\" and ≠ \"BYTES\".", "format": "int64", diff --git a/discovery/bigquerydatatransfer-v1.json b/discovery/bigquerydatatransfer-v1.json index 8532b634dcd..5c0830bddf1 100644 --- a/discovery/bigquerydatatransfer-v1.json +++ b/discovery/bigquerydatatransfer-v1.json @@ -424,7 +424,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "bigquerydatatransfer.projects.locations.list", @@ -433,7 +433,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1047,6 +1047,80 @@ } } } + }, + "transferResources": { + "methods": { + "get": { + "description": "Returns a transfer resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/transferResources/{transferResourcesId}", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.transferResources.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the transfer resource in the form of: * `projects/{project}/transferConfigs/{transfer_config}/transferResources/{transfer_resource}` * `projects/{project}/locations/{location}/transferConfigs/{transfer_config}/transferResources/{transfer_resource}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/transferResources/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "TransferResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Returns information about transfer resources.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/transferResources", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.transferResources.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filter for the transfer resources. Currently supported filters include: * Resource name: `name` - Wildcard supported * Resource type: `type` * Resource destination: `destination` * Latest resource state: `latest_status_detail.state` * Last update time: `update_time` - RFC-3339 format * Parent table name: `hierarchy_detail.partition_detail.table` Multiple filters can be applied using the `AND/OR` operator. Examples: * `name=\"*123\" AND (type=\"TABLE\" OR latest_status_detail.state=\"SUCCEEDED\")` * `update_time >= \"2012-04-21T11:30:00-04:00\"` * `hierarchy_detail.partition_detail.table = \"table1\"`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of transfer resources to return. The maximum value is 1000; values above 1000 will be coerced to 1000. The default page size is the maximum value of 1000 results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListTransferResources` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTransferResources` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Name of transfer configuration for which transfer resources should be retrieved. The name should be in one of the following forms: * `projects/{project}/transferConfigs/{transfer_config}` * `projects/{project}/locations/{location_id}/transferConfigs/{transfer_config}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/transferResources", + "response": { + "$ref": "ListTransferResourcesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } } } } @@ -1497,13 +1571,87 @@ } } } + }, + "transferResources": { + "methods": { + "get": { + "description": "Returns a transfer resource.", + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/transferResources/{transferResourcesId}", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.transferConfigs.transferResources.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the transfer resource in the form of: * `projects/{project}/transferConfigs/{transfer_config}/transferResources/{transfer_resource}` * `projects/{project}/locations/{location}/transferConfigs/{transfer_config}/transferResources/{transfer_resource}`", + "location": "path", + "pattern": "^projects/[^/]+/transferConfigs/[^/]+/transferResources/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "TransferResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Returns information about transfer resources.", + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/transferResources", + "httpMethod": "GET", + "id": "bigquerydatatransfer.projects.transferConfigs.transferResources.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filter for the transfer resources. Currently supported filters include: * Resource name: `name` - Wildcard supported * Resource type: `type` * Resource destination: `destination` * Latest resource state: `latest_status_detail.state` * Last update time: `update_time` - RFC-3339 format * Parent table name: `hierarchy_detail.partition_detail.table` Multiple filters can be applied using the `AND/OR` operator. Examples: * `name=\"*123\" AND (type=\"TABLE\" OR latest_status_detail.state=\"SUCCEEDED\")` * `update_time >= \"2012-04-21T11:30:00-04:00\"` * `hierarchy_detail.partition_detail.table = \"table1\"`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of transfer resources to return. The maximum value is 1000; values above 1000 will be coerced to 1000. The default page size is the maximum value of 1000 results.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListTransferResources` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTransferResources` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Name of transfer configuration for which transfer resources should be retrieved. The name should be in one of the following forms: * `projects/{project}/transferConfigs/{transfer_config}` * `projects/{project}/locations/{location_id}/transferConfigs/{transfer_config}`", + "location": "path", + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/transferResources", + "response": { + "$ref": "ListTransferResourcesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } } } } } } }, - "revision": "20260201", + "revision": "20260423", "rootUrl": "https://bigquerydatatransfer.googleapis.com/", "schemas": { "CheckValidCredsRequest": { @@ -1803,6 +1951,21 @@ }, "type": "object" }, + "HierarchyDetail": { + "description": "Details about the hierarchy.", + "id": "HierarchyDetail", + "properties": { + "partitionDetail": { + "$ref": "PartitionDetail", + "description": "Optional. Partition details related to hierarchy." + }, + "tableDetail": { + "$ref": "TableDetail", + "description": "Optional. Table details related to hierarchy." + } + }, + "type": "object" + }, "ListDataSourcesResponse": { "description": "Returns list of supported data sources and their metadata.", "id": "ListDataSourcesResponse", @@ -1880,6 +2043,26 @@ }, "type": "object" }, + "ListTransferResourcesResponse": { + "description": "Response for the `ListTransferResources` RPC.", + "id": "ListTransferResourcesResponse", + "properties": { + "nextPageToken": { + "description": "Output only. A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "readOnly": true, + "type": "string" + }, + "transferResources": { + "description": "Output only. The transfer resources.", + "items": { + "$ref": "TransferResource" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, "ListTransferRunsResponse": { "description": "The returned list of pipelines in the project.", "id": "ListTransferRunsResponse", @@ -1940,6 +2123,17 @@ "properties": {}, "type": "object" }, + "PartitionDetail": { + "description": "Partition details related to hierarchy.", + "id": "PartitionDetail", + "properties": { + "table": { + "description": "Optional. Name of the table which has the partitions.", + "type": "string" + } + }, + "type": "object" + }, "ScheduleOptions": { "description": "Options customizing the data transfer schedule.", "id": "ScheduleOptions", @@ -2068,6 +2262,18 @@ }, "type": "object" }, + "TableDetail": { + "description": "Table details related to hierarchy.", + "id": "TableDetail", + "properties": { + "partitionCount": { + "description": "Optional. Total number of partitions being tracked within the table.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "TimeBasedSchedule": { "description": "Options customizing the time based transfer schedule. Options are migrated from the original ScheduleOptions message.", "id": "TimeBasedSchedule", @@ -2269,6 +2475,115 @@ }, "type": "object" }, + "TransferResource": { + "description": "Resource (table/partition) that is being transferred.", + "id": "TransferResource", + "properties": { + "destination": { + "description": "Optional. Resource destination.", + "enum": [ + "RESOURCE_DESTINATION_UNSPECIFIED", + "RESOURCE_DESTINATION_BIGQUERY", + "RESOURCE_DESTINATION_DATAPROC_METASTORE", + "RESOURCE_DESTINATION_BIGLAKE_METASTORE", + "RESOURCE_DESTINATION_BIGLAKE_REST_CATALOG", + "RESOURCE_DESTINATION_BIGLAKE_HIVE_CATALOG" + ], + "enumDescriptions": [ + "Default value.", + "BigQuery.", + "Dataproc Metastore.", + "BigLake Metastore.", + "BigLake REST Catalog.", + "BigLake Hive Catalog." + ], + "type": "string" + }, + "hierarchyDetail": { + "$ref": "HierarchyDetail", + "description": "Optional. Details about the hierarchy." + }, + "lastSuccessfulRun": { + "$ref": "TransferRunBrief", + "description": "Output only. Run details for the last successful run.", + "readOnly": true + }, + "latestRun": { + "$ref": "TransferRunBrief", + "description": "Optional. Run details for the latest run." + }, + "latestStatusDetail": { + "$ref": "TransferResourceStatusDetail", + "description": "Optional. Status details for the latest run." + }, + "name": { + "description": "Identifier. Resource name.", + "type": "string" + }, + "type": { + "description": "Optional. Resource type.", + "enum": [ + "RESOURCE_TYPE_UNSPECIFIED", + "RESOURCE_TYPE_TABLE", + "RESOURCE_TYPE_PARTITION" + ], + "enumDescriptions": [ + "Default value.", + "Table resource type.", + "Partition resource type." + ], + "type": "string" + }, + "updateTime": { + "description": "Output only. Time when the resource was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "TransferResourceStatusDetail": { + "description": "Status details of the resource being transferred.", + "id": "TransferResourceStatusDetail", + "properties": { + "completedPercentage": { + "description": "Output only. Percentage of the transfer completed. Valid values: 0-100.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "error": { + "$ref": "Status", + "description": "Optional. Transfer error details for the resource." + }, + "state": { + "description": "Optional. Transfer state of the resource.", + "enum": [ + "RESOURCE_TRANSFER_STATE_UNSPECIFIED", + "RESOURCE_TRANSFER_PENDING", + "RESOURCE_TRANSFER_RUNNING", + "RESOURCE_TRANSFER_SUCCEEDED", + "RESOURCE_TRANSFER_FAILED", + "RESOURCE_TRANSFER_CANCELLED" + ], + "enumDescriptions": [ + "Default value.", + "Resource is waiting to be transferred.", + "Resource transfer is running.", + "Resource transfer is a success.", + "Resource transfer failed.", + "Resource transfer was cancelled." + ], + "type": "string" + }, + "summary": { + "$ref": "TransferStatusSummary", + "description": "Optional. Transfer status summary of the resource." + } + }, + "type": "object" + }, "TransferRun": { "description": "Represents a data transfer run.", "id": "TransferRun", @@ -2371,6 +2686,91 @@ }, "type": "object" }, + "TransferRunBrief": { + "description": "Basic information about a transfer run.", + "id": "TransferRunBrief", + "properties": { + "run": { + "description": "Optional. Run URI. The format must be: `projects/{project}/locations/{location}/transferConfigs/{transfer_config}/run/{run}`", + "type": "string" + }, + "startTime": { + "description": "Optional. Start time of the transfer run.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "TransferStatusMetric": { + "description": "Metrics for tracking the transfer status.", + "id": "TransferStatusMetric", + "properties": { + "completed": { + "description": "Optional. Number of units transferred successfully.", + "format": "int64", + "type": "string" + }, + "failed": { + "description": "Optional. Number of units that failed to transfer.", + "format": "int64", + "type": "string" + }, + "pending": { + "description": "Optional. Number of units pending transfer.", + "format": "int64", + "type": "string" + }, + "total": { + "description": "Optional. Total number of units for the transfer.", + "format": "int64", + "type": "string" + }, + "unit": { + "description": "Optional. Unit for measuring progress (e.g., BYTES).", + "enum": [ + "TRANSFER_STATUS_UNIT_UNSPECIFIED", + "TRANSFER_STATUS_UNIT_BYTES", + "TRANSFER_STATUS_UNIT_OBJECTS" + ], + "enumDescriptions": [ + "Default value.", + "Bytes.", + "Objects." + ], + "type": "string" + } + }, + "type": "object" + }, + "TransferStatusSummary": { + "description": "Status summary of the resource being transferred.", + "id": "TransferStatusSummary", + "properties": { + "metrics": { + "description": "Optional. List of transfer status metrics.", + "items": { + "$ref": "TransferStatusMetric" + }, + "type": "array" + }, + "progressUnit": { + "description": "Input only. Unit based on which transfer status progress should be calculated.", + "enum": [ + "TRANSFER_STATUS_UNIT_UNSPECIFIED", + "TRANSFER_STATUS_UNIT_BYTES", + "TRANSFER_STATUS_UNIT_OBJECTS" + ], + "enumDescriptions": [ + "Default value.", + "Bytes.", + "Objects." + ], + "type": "string" + } + }, + "type": "object" + }, "UnenrollDataSourcesRequest": { "description": "A request to unenroll a set of data sources so they are no longer visible in the BigQuery UI's `Transfer` tab.", "id": "UnenrollDataSourcesRequest", diff --git a/discovery/bigqueryreservation-v1.json b/discovery/bigqueryreservation-v1.json index 4701b322488..de3e7990571 100644 --- a/discovery/bigqueryreservation-v1.json +++ b/discovery/bigqueryreservation-v1.json @@ -1282,7 +1282,7 @@ } } }, - "revision": "20260109", + "revision": "20260410", "rootUrl": "https://bigqueryreservation.googleapis.com/", "schemas": { "Assignment": { @@ -1329,6 +1329,10 @@ "readOnly": true, "type": "string" }, + "principal": { + "description": "Optional. Represents the principal for this assignment. If not empty, jobs run by this principal will utilize the associated reservation. Otherwise, jobs will fall back to using the reservation assigned to the project, folder, or organization (in that order). If no reservation is assigned at any of these levels, on-demand capacity will be used. The supported formats are: * `principal://goog/subject/USER_EMAIL_ADDRESS` for users, * `principal://iam.googleapis.com/projects/-/serviceAccounts/SA_EMAIL_ADDRESS` for service accounts, * `principal://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/subject/SUBJECT_ID` for workload identity pool identities. * The special value `unknown_or_deleted_user` represents principals which cannot be read from the user info service, for example deleted users.", + "type": "string" + }, "schedulingPolicy": { "$ref": "SchedulingPolicy", "description": "Optional. The scheduling policy to use for jobs and queries of this assignee when running under the associated reservation. The scheduling policy controls how the reservation's resources are distributed. This overrides the default scheduling policy specified on the reservation. This feature is not yet generally available." @@ -1931,7 +1935,7 @@ "enumDescriptions": [ "Default value of ScalingMode.", "The reservation will scale up only using slots from autoscaling. It will not use any idle slots even if there may be some available. The upper limit that autoscaling can scale up to will be max_slots - baseline. For example, if max_slots is 1000, baseline is 200 and customer sets ScalingMode to AUTOSCALE_ONLY, then autoscalerg will scale up to 800 slots and no idle slots will be used. Please note, in this mode, the ignore_idle_slots field must be set to true. Otherwise the request will be rejected with error code `google.rpc.Code.INVALID_ARGUMENT`.", - "The reservation will scale up using only idle slots contributed by other reservations or from unassigned commitments. If no idle slots are available it will not scale up further. If the idle slots which it is using are reclaimed by the contributing reservation(s) it may be forced to scale down. The max idle slots the reservation can be max_slots - baseline capacity. For example, if max_slots is 1000, baseline is 200 and customer sets ScalingMode to IDLE_SLOTS_ONLY, 1. if there are 1000 idle slots available in other reservations, the reservation will scale up to 1000 slots with 200 baseline and 800 idle slots. 2. if there are 500 idle slots available in other reservations, the reservation will scale up to 700 slots with 200 baseline and 300 idle slots. Please note, in this mode, the reservation might not be able to scale up to max_slots. Please note, in this mode, the ignore_idle_slots field must be set to false. Otherwise the request will be rejected with error code `google.rpc.Code.INVALID_ARGUMENT`.", + "The reservation will scale up using only idle slots contributed by other reservations or from unassigned commitments. If no idle slots are available it will not scale up further. If the idle slots which it is using are reclaimed by the contributing reservation(s) it may be forced to scale down. The max idle slots the reservation can be max_slots - baseline capacity. For example, if max_slots is 1000, baseline is 200 and customer sets ScalingMode to IDLE_SLOTS_ONLY, 1. if there are 1000 idle slots available in other reservations, the reservation will scale up to 1000 slots with 200 baseline and 800 idle slots. 2. if there are 500 idle slots available in other reservations, the reservation will scale up to 700 slots with 200 baseline and 500 idle slots. Please note, in this mode, the reservation might not be able to scale up to max_slots. Please note, in this mode, the ignore_idle_slots field must be set to false. Otherwise the request will be rejected with error code `google.rpc.Code.INVALID_ARGUMENT`.", "The reservation will scale up using all slots available to it. It will use idle slots contributed by other reservations or from unassigned commitments first. If no idle slots are available it will scale up using autoscaling. For example, if max_slots is 1000, baseline is 200 and customer sets ScalingMode to ALL_SLOTS, 1. if there are 800 idle slots available in other reservations, the reservation will scale up to 1000 slots with 200 baseline and 800 idle slots. 2. if there are 500 idle slots available in other reservations, the reservation will scale up to 1000 slots with 200 baseline, 500 idle slots and 300 autoscaling slots. 3. if there are no idle slots available in other reservations, it will scale up to 1000 slots with 200 baseline and 800 autoscaling slots. Please note, in this mode, the ignore_idle_slots field must be set to false. Otherwise the request will be rejected with error code `google.rpc.Code.INVALID_ARGUMENT`." ], "type": "string" diff --git a/discovery/bigtableadmin-v2.json b/discovery/bigtableadmin-v2.json index 3aa62745099..4e86aab41a9 100644 --- a/discovery/bigtableadmin-v2.json +++ b/discovery/bigtableadmin-v2.json @@ -833,6 +833,37 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ] }, + "getMemoryLayer": { + "description": "Gets information about the memory layer of a cluster.", + "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/clusters/{clustersId}/memoryLayer", + "httpMethod": "GET", + "id": "bigtableadmin.projects.instances.clusters.getMemoryLayer", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The unique name of the requested cluster's memory layer. Values are of the form `projects/{project}/instances/{instance}/clusters/{cluster}/memoryLayer`.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/clusters/[^/]+/memoryLayer$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "MemoryLayer" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigtable.admin", + "https://www.googleapis.com/auth/bigtable.admin.cluster", + "https://www.googleapis.com/auth/bigtable.admin.instance", + "https://www.googleapis.com/auth/cloud-bigtable.admin", + "https://www.googleapis.com/auth/cloud-bigtable.admin.cluster", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, "list": { "description": "Lists information about clusters in an instance.", "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/clusters", @@ -1315,6 +1346,51 @@ ] } } + }, + "memoryLayers": { + "methods": { + "list": { + "description": "Lists information about memory layers.", + "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/clusters/{clustersId}/memoryLayers", + "httpMethod": "GET", + "id": "bigtableadmin.projects.instances.clusters.memoryLayers.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of memory layers to return. The service may return fewer than this value.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListMemoryLayers` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMemoryLayers` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The unique name of the cluster for which a list of memory layers is requested. Values are of the form `projects/{project}/instances/{instance}/clusters/{cluster}`. Use `{cluster} = '-'` to list MemoryLayers for all Clusters in an instance, e.g., `projects/myproject/instances/myinstance/clusters/-`.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/memoryLayers", + "response": { + "$ref": "ListMemoryLayersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigtable.admin", + "https://www.googleapis.com/auth/bigtable.admin.cluster", + "https://www.googleapis.com/auth/bigtable.admin.instance", + "https://www.googleapis.com/auth/cloud-bigtable.admin", + "https://www.googleapis.com/auth/cloud-bigtable.admin.cluster", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } } }, @@ -3061,7 +3137,7 @@ "locations": { "methods": { "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2/projects/{projectsId}/locations", "httpMethod": "GET", "id": "bigtableadmin.projects.locations.list", @@ -3070,7 +3146,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -3118,7 +3194,7 @@ } } }, - "revision": "20260210", + "revision": "20260425", "rootUrl": "https://bigtableadmin.googleapis.com/", "schemas": { "AppProfile": { @@ -3134,7 +3210,7 @@ "type": "string" }, "etag": { - "description": "Strongly validated etag for optimistic concurrency control. Preserve the value returned from `GetAppProfile` when calling `UpdateAppProfile` to fail the request if there has been a modification in the mean time. The `update_mask` of the request need not include `etag` for this protection to apply. See [Wikipedia](https://en.wikipedia.org/wiki/HTTP_ETag) and [RFC 7232](https://tools.ietf.org/html/rfc7232#section-2.3) for more details.", + "description": "Strongly validated etag for optimistic concurrency control. Preserve the value returned from `GetAppProfile` when calling `UpdateAppProfile` to fail the request if there has been a modification in the meantime. The `update_mask` of the request need not include `etag` for this protection to apply. See [Wikipedia](https://en.wikipedia.org/wiki/HTTP_ETag) and [RFC 7232](https://tools.ietf.org/html/rfc7232#section-2.3) for more details.", "type": "string" }, "multiClusterRoutingUseAny": { @@ -3253,6 +3329,13 @@ "format": "google-duration", "type": "string" }, + "locations": { + "description": "Optional. A list of Cloud Bigtable zones where automated backups are allowed to be created. If empty, automated backups will be created in all zones of the instance. Locations are in the format `projects/{project}/locations/{zone}`. This field can only set for tables in Enterprise Plus instances.", + "items": { + "type": "string" + }, + "type": "array" + }, "retentionPeriod": { "description": "Required. How long the automated backups should be retained. Values must be at least 3 days and at most 90 days.", "format": "google-duration", @@ -4256,6 +4339,19 @@ }, "type": "object" }, + "GoogleBigtableAdminV2MemoryLayerMemoryConfig": { + "description": "Configuration of a memory layer.", + "id": "GoogleBigtableAdminV2MemoryLayerMemoryConfig", + "properties": { + "storageSizeGib": { + "description": "Output only. Reporting the current size of the memory layer in GiB.", + "format": "int32", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, "GoogleBigtableAdminV2TypeAggregate": { "description": "A value that combines incremental updates into a summarized value. Data is never directly written or read using type `Aggregate`. Writes provide either the `input_type` or `state_type`, and reads always return the `state_type` .", "id": "GoogleBigtableAdminV2TypeAggregate", @@ -4326,6 +4422,17 @@ "GoogleBigtableAdminV2TypeBool": { "description": "bool Values of type `Bool` are stored in `Value.bool_value`.", "id": "GoogleBigtableAdminV2TypeBool", + "properties": { + "encoding": { + "$ref": "GoogleBigtableAdminV2TypeBoolEncoding", + "description": "Specifies the encoding to use when converting to or from lower level types." + } + }, + "type": "object" + }, + "GoogleBigtableAdminV2TypeBoolEncoding": { + "description": "Defines rules used to convert to or from lower level types.", + "id": "GoogleBigtableAdminV2TypeBoolEncoding", "properties": {}, "type": "object" }, @@ -4401,6 +4508,44 @@ "properties": {}, "type": "object" }, + "GoogleBigtableAdminV2TypeInt32": { + "description": "Int32 Values of type `Int32` are stored in `Value.int_value`.", + "id": "GoogleBigtableAdminV2TypeInt32", + "properties": { + "encoding": { + "$ref": "GoogleBigtableAdminV2TypeInt32Encoding", + "description": "The encoding to use when converting to or from lower level types." + } + }, + "type": "object" + }, + "GoogleBigtableAdminV2TypeInt32Encoding": { + "description": "Rules used to convert to or from lower level types.", + "id": "GoogleBigtableAdminV2TypeInt32Encoding", + "properties": { + "bigEndianBytes": { + "$ref": "GoogleBigtableAdminV2TypeInt32EncodingBigEndianBytes", + "description": "Use `BigEndianBytes` encoding." + }, + "orderedCodeBytes": { + "$ref": "GoogleBigtableAdminV2TypeInt32EncodingOrderedCodeBytes", + "description": "Use `OrderedCodeBytes` encoding." + } + }, + "type": "object" + }, + "GoogleBigtableAdminV2TypeInt32EncodingBigEndianBytes": { + "description": "Encodes the value as a 4-byte big-endian two's complement value. Sorted mode: non-negative values are supported. Distinct mode: all values are supported. Compatible with: - BigQuery `BINARY` encoding - HBase `Bytes.toBytes` - Java `ByteBuffer.putInt()` with `ByteOrder.BIG_ENDIAN`", + "id": "GoogleBigtableAdminV2TypeInt32EncodingBigEndianBytes", + "properties": {}, + "type": "object" + }, + "GoogleBigtableAdminV2TypeInt32EncodingOrderedCodeBytes": { + "description": "Encodes the value in a variable length binary format of up to 5 bytes. Values that are closer to zero use fewer bytes. Sorted mode: all values are supported. Distinct mode: all values are supported.", + "id": "GoogleBigtableAdminV2TypeInt32EncodingOrderedCodeBytes", + "properties": {}, + "type": "object" + }, "GoogleBigtableAdminV2TypeInt64": { "description": "Int64 Values of type `Int64` are stored in `Value.int_value`.", "id": "GoogleBigtableAdminV2TypeInt64", @@ -4673,6 +4818,20 @@ "description": "Required. The descriptive name for this instance as it appears in UIs. Can be changed at any time, but should be kept globally unique to avoid confusion.", "type": "string" }, + "edition": { + "description": "Optional. The edition of the instance. See Edition for details.", + "enum": [ + "EDITION_UNSPECIFIED", + "ENTERPRISE", + "ENTERPRISE_PLUS" + ], + "enumDescriptions": [ + "The edition is unspecified. This is treated as `ENTERPRISE`.", + "The Enterprise edition. This is the default offering that is designed to meet the needs of most enterprise workloads.", + "The Enterprise Plus edition. This is a premium tier that is designed for demanding, multi-tenant workloads requiring the highest levels of performance, scale, and global availability. The nodes in the Enterprise Plus tier come at a higher cost than the Enterprise tier. Any Enterprise Plus features must be disabled before downgrading to Enterprise." + ], + "type": "string" + }, "labels": { "additionalProperties": { "type": "string" @@ -4932,6 +5091,31 @@ }, "type": "object" }, + "ListMemoryLayersResponse": { + "description": "Response message for BigtableInstanceAdmin.ListMemoryLayers.", + "id": "ListMemoryLayersResponse", + "properties": { + "failedLocations": { + "description": "Locations from which MemoryLayer information could not be retrieved, due to an outage or some other transient condition. MemoryLayers from these locations may be missing from `memory_layers`, or may only have partial information returned. Values are of the form `projects//locations/`", + "items": { + "type": "string" + }, + "type": "array" + }, + "memoryLayers": { + "description": "The list of requested memory layers.", + "items": { + "$ref": "MemoryLayer" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + } + }, + "type": "object" + }, "ListOperationsResponse": { "description": "The response message for Operations.ListOperations.", "id": "ListOperationsResponse", @@ -5081,6 +5265,50 @@ }, "type": "object" }, + "MemoryConfig": { + "description": "If set, eligible single-row requests (currently limited to ReadRows) using this app profile will be routed to the memory layer. All eligible writes populate the memory layer. MemoryConfig can only be set if the AppProfile uses single cluster routing and the configured cluster has a memory layer enabled.", + "id": "MemoryConfig", + "properties": {}, + "type": "object" + }, + "MemoryLayer": { + "description": "The memory layer of a cluster. A memory layer serves reads from memory without hitting the backing persistent data store.", + "id": "MemoryLayer", + "properties": { + "etag": { + "description": "Optional. The etag for this memory layer. This may be sent on update requests to ensure that the client has an up-to-date value before proceeding. The server returns an ABORTED error on a mismatched etag.", + "type": "string" + }, + "memoryConfig": { + "$ref": "GoogleBigtableAdminV2MemoryLayerMemoryConfig", + "description": "The configuration of this memory layer. Set an empty `memory_config` to enable the memory layer. Unset this to disable the memory layer." + }, + "name": { + "description": "Identifier. Name of the memory layer. This is always: \"projects/{project}/instances/{instance}/clusters/{cluster}/memoryLayer\".", + "type": "string" + }, + "state": { + "description": "Output only. The current state of the memory layer.", + "enum": [ + "STATE_NOT_KNOWN", + "READY", + "ENABLING", + "RESIZING", + "DISABLED" + ], + "enumDescriptions": [ + "The state of the memory layer could not be determined.", + "The memory layer has been successfully enabled and is ready to serve requests.", + "The memory layer is currently being enabled, and may be disabled if the enablement process encounters an error. A cluster may not be able to serve requests from the memory layer while being enabled.", + "The memory layer is currently being resized, and may revert to its previous storage size if the process encounters an error. The memory layer is still capable of serving requests while being resized, but may exhibit performance as if its number of allocated nodes is between the starting and requested states.", + "The memory layer is disabled. The default state for a cluster without a memory layer." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "Modification": { "description": "A create, update, or delete of a particular column family.", "id": "Modification", @@ -5457,6 +5685,10 @@ "description": "Standard options for isolating this app profile's traffic from other use cases.", "id": "StandardIsolation", "properties": { + "memoryConfig": { + "$ref": "MemoryConfig", + "description": "Optional. The memory config to use for requests sent using this app profile." + }, "priority": { "description": "The priority of requests sent using this app profile.", "enum": [ @@ -5541,7 +5773,7 @@ "type": "boolean" }, "granularity": { - "description": "Immutable. The granularity (i.e. `MILLIS`) at which timestamps are stored in this table. Timestamps not matching the granularity will be rejected. If unspecified at creation time, the value will be set to `MILLIS`. Views: `SCHEMA_VIEW`, `FULL`.", + "description": "Immutable. The granularity at which timestamps are stored in this table. Timestamps not matching the granularity will be rejected. If unspecified at creation time, the value will be set to `MILLIS`. Views: `SCHEMA_VIEW`, `FULL`.", "enum": [ "TIMESTAMP_GRANULARITY_UNSPECIFIED", "MILLIS" @@ -5729,6 +5961,10 @@ "$ref": "GoogleBigtableAdminV2TypeGeography", "description": "Geography" }, + "int32Type": { + "$ref": "GoogleBigtableAdminV2TypeInt32", + "description": "Int32" + }, "int64Type": { "$ref": "GoogleBigtableAdminV2TypeInt64", "description": "Int64" @@ -5947,6 +6183,43 @@ }, "type": "object" }, + "UpdateMemoryLayerMetadata": { + "description": "The metadata for the Operation returned by UpdateMemoryLayer.", + "id": "UpdateMemoryLayerMetadata", + "properties": { + "finishTime": { + "description": "The time at which the operation failed or was completed successfully.", + "format": "google-datetime", + "type": "string" + }, + "originalRequest": { + "$ref": "UpdateMemoryLayerRequest", + "description": "The request that prompted the initiation of this UpdateMemoryLayer operation." + }, + "requestTime": { + "description": "The time at which the original request was received.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "UpdateMemoryLayerRequest": { + "description": "Request message for BigtableInstanceAdmin.UpdateMemoryLayer.", + "id": "UpdateMemoryLayerRequest", + "properties": { + "memoryLayer": { + "$ref": "MemoryLayer", + "description": "Required. The memory layer to update. The memory layer's `name` format is as follows: `projects/{project}/instances/{instance}/clusters/{cluster}/memoryLayer`." + }, + "updateMask": { + "description": "Optional. The list of fields to update.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, "UpdateSchemaBundleMetadata": { "description": "The metadata for the Operation returned by UpdateSchemaBundle.", "id": "UpdateSchemaBundleMetadata", diff --git a/discovery/blogger-v3.json b/discovery/blogger-v3.json index 9b4c6d13cfe..2a246909179 100644 --- a/discovery/blogger-v3.json +++ b/discovery/blogger-v3.json @@ -169,6 +169,7 @@ "type": "integer" }, "view": { + "description": "Unspecified is interpreted as READER.", "enum": [ "VIEW_TYPE_UNSPECIFIED", "READER", @@ -209,6 +210,7 @@ "type": "string" }, "view": { + "description": "Unspecified is interpreted as READER.", "enum": [ "VIEW_TYPE_UNSPECIFIED", "READER", @@ -285,6 +287,7 @@ "type": "string" }, "view": { + "description": "Unspecified is interpreted as the user's role on the blog.", "enum": [ "VIEW_TYPE_UNSPECIFIED", "READER", @@ -1710,7 +1713,7 @@ } } }, - "revision": "20250524", + "revision": "20260309", "rootUrl": "https://blogger.googleapis.com/", "schemas": { "Blog": { diff --git a/discovery/businessprofileperformance-v1.json b/discovery/businessprofileperformance-v1.json index a3cad61acb5..137e2c45d6e 100644 --- a/discovery/businessprofileperformance-v1.json +++ b/discovery/businessprofileperformance-v1.json @@ -99,7 +99,7 @@ "locations": { "methods": { "fetchMultiDailyMetricsTimeSeries": { - "description": " Returns the values for each date from a given time range and optionally the sub entity type, where applicable, that are associated with the specific daily metrics. Example request: `GET https://businessprofileperformance.googleapis.com/v1/locations/12345:fetchMultiDailyMetricsTimeSeries?dailyMetrics=WEBSITE_CLICKS&dailyMetrics=CALL_CLICKS&daily_range.start_date.year=2022&daily_range.start_date.month=1&daily_range.start_date.day=1&daily_range.end_date.year=2022&daily_range.end_date.month=3&daily_range.end_date.day=31`", + "description": " Returns the values for each date from a given time range that are associated with the specific daily metrics. Note: Only daily data is available. Hourly metrics are not supported. Example request: `GET https://businessprofileperformance.googleapis.com/v1/locations/12345:fetchMultiDailyMetricsTimeSeries?dailyMetrics=WEBSITE_CLICKS&dailyMetrics=CALL_CLICKS&daily_range.start_date.year=2022&daily_range.start_date.month=1&daily_range.start_date.day=1&daily_range.end_date.year=2022&daily_range.end_date.month=3&daily_range.end_date.day=31`", "flatPath": "v1/locations/{locationsId}:fetchMultiDailyMetricsTimeSeries", "httpMethod": "GET", "id": "businessprofileperformance.locations.fetchMultiDailyMetricsTimeSeries", @@ -205,7 +205,7 @@ } }, "getDailyMetricsTimeSeries": { - "description": " Returns the values for each date from a given time range that are associated with the specific daily metric. Example request: `GET https://businessprofileperformance.googleapis.com/v1/locations/12345:getDailyMetricsTimeSeries?dailyMetric=WEBSITE_CLICKS&daily_range.start_date.year=2022&daily_range.start_date.month=1&daily_range.start_date.day=1&daily_range.end_date.year=2022&daily_range.end_date.month=3&daily_range.end_date.day=31`", + "description": " Returns the values for each date from a given time range that are associated with the specific daily metric. Note: Only daily data is available. Hourly metrics are not supported. Example request: `GET https://businessprofileperformance.googleapis.com/v1/locations/12345:getDailyMetricsTimeSeries?dailyMetric=WEBSITE_CLICKS&daily_range.start_date.year=2022&daily_range.start_date.month=1&daily_range.start_date.day=1&daily_range.end_date.year=2022&daily_range.end_date.month=3&daily_range.end_date.day=31`", "flatPath": "v1/locations/{locationsId}:getDailyMetricsTimeSeries", "httpMethod": "GET", "id": "businessprofileperformance.locations.getDailyMetricsTimeSeries", @@ -445,7 +445,7 @@ } } }, - "revision": "20251026", + "revision": "20260415", "rootUrl": "https://businessprofileperformance.googleapis.com/", "schemas": { "DailyMetricTimeSeries": { @@ -510,7 +510,7 @@ "type": "object" }, "DailySubEntityType": { - "description": "Represents all possible subentity types that are associated with DailyMetrics.", + "description": "Represents all possible subentity types that are associated with DailyMetrics. Note: Currently, all metrics are returned as daily aggregates and sub-entity breakdowns are not supported.", "id": "DailySubEntityType", "properties": { "dayOfWeek": { diff --git a/discovery/calendar-v3.json b/discovery/calendar-v3.json index cf1a56235fa..b06fbae5889 100644 --- a/discovery/calendar-v3.json +++ b/discovery/calendar-v3.json @@ -1890,7 +1890,7 @@ } } }, - "revision": "20260215", + "revision": "20260225", "rootUrl": "https://www.googleapis.com/", "schemas": { "Acl": { @@ -2948,6 +2948,10 @@ }, "type": "object" }, + "EventLabel": { + "id": "EventLabel", + "type": "object" + }, "EventOutOfOfficeProperties": { "id": "EventOutOfOfficeProperties", "properties": { @@ -3210,6 +3214,10 @@ }, "type": "object" }, + "LabelProperties": { + "id": "LabelProperties", + "type": "object" + }, "Setting": { "id": "Setting", "properties": { diff --git a/discovery/certificatemanager-v1.json b/discovery/certificatemanager-v1.json index 768924b99ca..8df399529be 100644 --- a/discovery/certificatemanager-v1.json +++ b/discovery/certificatemanager-v1.json @@ -14,7 +14,7 @@ "canonicalName": "Certificate Manager", "description": "", "discoveryVersion": "v1", - "documentationLink": "https://cloud.google.com/certificate-manager", + "documentationLink": "https://docs.cloud.google.com/certificate-manager/docs/overview", "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "certificatemanager.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1325,7 +1325,7 @@ } } }, - "revision": "20260204", + "revision": "20260427", "rootUrl": "https://certificatemanager.googleapis.com/", "schemas": { "AllowlistedCertificate": { diff --git a/discovery/ces-v1.json b/discovery/ces-v1.json index 5b9db53bff3..028f042442e 100644 --- a/discovery/ces-v1.json +++ b/discovery/ces-v1.json @@ -17,7 +17,7 @@ "canonicalName": "Customer Engagement Suite", "description": "", "discoveryVersion": "v1", - "documentationLink": "https://cloud.google.com/customer-engagement-ai/conversational-agents/ps/reference", + "documentationLink": "https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps", "endpoints": [ { "description": "Regional Endpoint", @@ -151,7 +151,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "ces.projects.locations.list", @@ -160,7 +160,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -806,13 +806,15 @@ "SOURCE_UNSPECIFIED", "LIVE", "SIMULATOR", - "EVAL" + "EVAL", + "AGENT_TOOL" ], "enumDescriptions": [ "Unspecified source.", "The conversation is from the live end user.", "The conversation is from the simulator.", - "The conversation is from the evaluation." + "The conversation is from the evaluation.", + "The conversation is from an agent tool. Agent tool runs the agent in a separate session, which is persisted for testing and debugging purposes." ], "location": "query", "type": "string" @@ -850,13 +852,15 @@ "SOURCE_UNSPECIFIED", "LIVE", "SIMULATOR", - "EVAL" + "EVAL", + "AGENT_TOOL" ], "enumDescriptions": [ "Unspecified source.", "The conversation is from the live end user.", "The conversation is from the simulator.", - "The conversation is from the evaluation." + "The conversation is from the evaluation.", + "The conversation is from an agent tool. Agent tool runs the agent in a separate session, which is persisted for testing and debugging purposes." ], "location": "query", "type": "string" @@ -909,13 +913,15 @@ "SOURCE_UNSPECIFIED", "LIVE", "SIMULATOR", - "EVAL" + "EVAL", + "AGENT_TOOL" ], "enumDescriptions": [ "Unspecified source.", "The conversation is from the live end user.", "The conversation is from the simulator.", - "The conversation is from the evaluation." + "The conversation is from the evaluation.", + "The conversation is from an agent tool. Agent tool runs the agent in a separate session, which is persisted for testing and debugging purposes." ], "location": "query", "type": "string" @@ -926,13 +932,15 @@ "SOURCE_UNSPECIFIED", "LIVE", "SIMULATOR", - "EVAL" + "EVAL", + "AGENT_TOOL" ], "enumDescriptions": [ "Unspecified source.", "The conversation is from the live end user.", "The conversation is from the simulator.", - "The conversation is from the evaluation." + "The conversation is from the evaluation.", + "The conversation is from an agent tool. Agent tool runs the agent in a separate session, which is persisted for testing and debugging purposes." ], "location": "query", "repeated": true, @@ -1095,7 +1103,7 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the deployment. Format: projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}", + "description": "Identifier. The resource name of the deployment. Format: `projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/apps/[^/]+/deployments/[^/]+$", "required": true, @@ -1513,7 +1521,7 @@ ] }, "runSession": { - "description": "Initiates a single turn interaction with the CES agent within a session.", + "description": "Initiates a single-turn interaction with the CES agent within a session.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/apps/{appsId}/sessions/{sessionsId}:runSession", "httpMethod": "POST", "id": "ces.projects.locations.apps.sessions.runSession", @@ -1540,6 +1548,35 @@ "https://www.googleapis.com/auth/ces", "https://www.googleapis.com/auth/cloud-platform" ] + }, + "streamRunSession": { + "description": "Initiates a single-turn interaction with the CES agent. Uses server-side streaming to deliver incremental results and partial responses as they are generated. By default, complete responses (e.g., messages from callbacks or full LLM responses) are sent to the client as soon as they are available. To enable streaming individual text chunks directly from the model, set enable_text_streaming to true.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/apps/{appsId}/sessions/{sessionsId}:streamRunSession", + "httpMethod": "POST", + "id": "ces.projects.locations.apps.sessions.streamRunSession", + "parameterOrder": [ + "session" + ], + "parameters": { + "session": { + "description": "Required. The unique identifier of the session. Format: `projects/{project}/locations/{location}/apps/{app}/sessions/{session}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/apps/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+session}:streamRunSession", + "request": { + "$ref": "RunSessionRequest" + }, + "response": { + "$ref": "RunSessionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ces", + "https://www.googleapis.com/auth/cloud-platform" + ] } } }, @@ -1698,7 +1735,7 @@ ], "parameters": { "name": { - "description": "Identifier. The unique identifier of the tool. Format: - `projects/{project}/locations/{location}/apps/{app}/tools/{tool}` for ## standalone tools. `projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool}` for tools retrieved from a toolset. These tools are dynamic and output-only, they cannot be referenced directly where a tool is expected.", + "description": "Identifier. The resource name of the tool. Format: * `projects/{project}/locations/{location}/apps/{app}/tools/{tool}` for standalone tools. * `projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool}` for tools retrieved from a toolset. These tools are dynamic and output-only; they cannot be referenced directly where a tool is expected.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/apps/[^/]+/tools/[^/]+$", "required": true, @@ -2246,7 +2283,7 @@ } } }, - "revision": "20260218", + "revision": "20260422", "rootUrl": "https://ces.googleapis.com/", "schemas": { "Action": { @@ -2503,6 +2540,30 @@ }, "type": "object" }, + "AgentTool": { + "description": "Represents a tool that allows the agent to call another agent.", + "id": "AgentTool", + "properties": { + "agent": { + "description": "Optional. The resource name of the agent that is the entry point of the tool. Format: `projects/{project}/locations/{location}/agents/{agent}`", + "type": "string" + }, + "description": { + "description": "Optional. Description of the tool's purpose.", + "type": "string" + }, + "name": { + "description": "Required. The name of the agent tool.", + "type": "string" + }, + "rootAgent": { + "deprecated": true, + "description": "Optional. Deprecated: Use `agent` instead. The resource name of the root agent that is the entry point of the tool. Format: `projects/{project}/locations/{location}/agents/{agent}`", + "type": "string" + } + }, + "type": "object" + }, "AgentTransfer": { "description": "Represents an event indicating the transfer of a conversation to a different agent.", "id": "AgentTransfer", @@ -2652,6 +2713,10 @@ "description": "Required. Display name of the app.", "type": "string" }, + "errorHandlingSettings": { + "$ref": "ErrorHandlingSettings", + "description": "Optional. Error handling settings of the app." + }, "etag": { "description": "Output only. Etag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.", "readOnly": true, @@ -2942,7 +3007,7 @@ "id": "BigQueryExportSettings", "properties": { "dataset": { - "description": "Optional. The BigQuery dataset to export the data to.", + "description": "Optional. The BigQuery **dataset ID** to export the data to.", "type": "string" }, "enabled": { @@ -2950,7 +3015,7 @@ "type": "boolean" }, "project": { - "description": "Optional. The project ID of the BigQuery dataset to export the data to. Note: If the BigQuery dataset is in a different project from the app, you should grant `roles/bigquery.admin` role to the CES service agent `service-@gcp-sa-ces.iam.gserviceaccount.com`.", + "description": "Optional. The **project ID** of the BigQuery dataset to export the data to. Note: If the BigQuery dataset is in a different project from the app, you should grant `roles/bigquery.admin` role to the CES service agent `service-@gcp-sa-ces.iam.gserviceaccount.com`.", "type": "string" } }, @@ -3170,13 +3235,15 @@ "MODALITY_UNSPECIFIED", "CHAT_AND_VOICE", "VOICE_ONLY", - "CHAT_ONLY" + "CHAT_ONLY", + "CHAT_VOICE_AND_VIDEO" ], "enumDescriptions": [ "Unknown modality.", "Widget supports both chat and voice input.", "Widget supports only voice input.", - "Widget supports only chat input." + "Widget supports only chat input.", + "Widget supports chat, voice, and video input." ], "type": "string" }, @@ -3239,6 +3306,10 @@ "$ref": "AgentTransfer", "description": "Optional. Agent transfer event." }, + "blob": { + "$ref": "Blob", + "description": "Optional. Blob data." + }, "defaultVariables": { "additionalProperties": { "description": "Properties of the object.", @@ -3480,6 +3551,7 @@ "enum": [ "INPUT_TYPE_UNSPECIFIED", "INPUT_TYPE_TEXT", + "INPUT_TYPE_EVENT", "INPUT_TYPE_AUDIO", "INPUT_TYPE_IMAGE", "INPUT_TYPE_BLOB", @@ -3488,12 +3560,13 @@ ], "enumDescriptions": [ "Unspecified input type.", - "The input message is text.", - "The input message is audio.", - "The input message is image.", - "The input message is blob file.", - "The input message is client function tool response.", - "The input message are variables." + "Text input.", + "Event input.", + "Audio input.", + "Image input.", + "Blob input.", + "Client function tool response input.", + "Variables input." ], "type": "string" }, @@ -3523,13 +3596,15 @@ "SOURCE_UNSPECIFIED", "LIVE", "SIMULATOR", - "EVAL" + "EVAL", + "AGENT_TOOL" ], "enumDescriptions": [ "Unspecified source.", "The conversation is from the live end user.", "The conversation is from the simulator.", - "The conversation is from the evaluation." + "The conversation is from the evaluation.", + "The conversation is from an agent tool. Agent tool runs the agent in a separate session, which is persisted for testing and debugging purposes." ], "readOnly": true, "type": "string" @@ -3563,6 +3638,11 @@ "disableConversationLogging": { "description": "Optional. Whether to disable conversation logging for the sessions.", "type": "boolean" + }, + "retentionWindow": { + "description": "Optional. Controls the retention window for the conversation. If not set, the conversation will be retained for 365 days.", + "format": "google-duration", + "type": "string" } }, "type": "object" @@ -4002,7 +4082,7 @@ "id": "Deployment", "properties": { "appVersion": { - "description": "Required. The resource name of the app version to deploy. Format: projects/{project}/locations/{location}/apps/{app}/versions/{version}", + "description": "Optional. The resource name of the app version to deploy. Format: `projects/{project}/locations/{location}/apps/{app}/versions/{version}` Use `projects/{project}/locations/{location}/apps/{app}/versions/-` to use the draft app.", "type": "string" }, "channelProfile": { @@ -4024,8 +4104,12 @@ "readOnly": true, "type": "string" }, + "experimentConfig": { + "$ref": "ExperimentConfig", + "description": "Optional. Experiment configuration for the deployment." + }, "name": { - "description": "Identifier. The resource name of the deployment. Format: projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}", + "description": "Identifier. The resource name of the deployment. Format: `projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}`", "type": "string" }, "updateTime": { @@ -4103,6 +4187,95 @@ }, "type": "object" }, + "EndpointControlPolicy": { + "description": "Defines project/location level endpoint control policy.", + "id": "EndpointControlPolicy", + "properties": { + "allowedOrigins": { + "description": "Optional. The allowed HTTP(s) origins that tools in the App are able to directly call. The enforcement depends on the value of enforcement_scope and the VPC-SC status of the project. If a port number is not provided, all ports will be allowed. Otherwise, the port number must match exactly. For example, \"https://example.com\" will match \"https://example.com:443\" and any other port. \"https://example.com:443\" will only match \"https://example.com:443\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "enforcementScope": { + "description": "Optional. The scope in which this policy's allowed_origins list is enforced.", + "enum": [ + "ENFORCEMENT_SCOPE_UNSPECIFIED", + "VPCSC_ONLY", + "ALWAYS" + ], + "enumDescriptions": [ + "Unspecified. This policy will be treated as VPCSC_ONLY.", + "This policy applies only when VPC-SC is active.", + "This policy ALWAYS applies, regardless of VPC-SC status." + ], + "type": "string" + } + }, + "type": "object" + }, + "ErrorHandlingSettings": { + "description": "Settings to describe how errors should be handled in the app.", + "id": "ErrorHandlingSettings", + "properties": { + "endSessionConfig": { + "$ref": "ErrorHandlingSettingsEndSessionConfig", + "description": "Optional. Configuration for ending the session in case of system errors (e.g. LLM errors)." + }, + "errorHandlingStrategy": { + "description": "Optional. The strategy to use for error handling.", + "enum": [ + "ERROR_HANDLING_STRATEGY_UNSPECIFIED", + "NONE", + "FALLBACK_RESPONSE", + "END_SESSION" + ], + "enumDescriptions": [ + "Unspecified error handling strategy.", + "No specific handling is enabled.", + "A fallback message will be returned to the user in case of system errors (e.g. LLM errors).", + "An EndSession signal will be emitted in case of system errors (e.g. LLM errors)." + ], + "type": "string" + }, + "fallbackResponseConfig": { + "$ref": "ErrorHandlingSettingsFallbackResponseConfig", + "description": "Optional. Configuration for handling fallback responses." + } + }, + "type": "object" + }, + "ErrorHandlingSettingsEndSessionConfig": { + "description": "Configuration for ending the session in case of system errors (e.g. LLM errors).", + "id": "ErrorHandlingSettingsEndSessionConfig", + "properties": { + "escalateSession": { + "description": "Optional. Whether to escalate the session in EndSession. If session is escalated, metadata in EndSession will contain `session_escalated = true`. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/deploy/google-telephony-platform#transfer_a_call_to_a_human_agent for details.", + "type": "boolean" + } + }, + "type": "object" + }, + "ErrorHandlingSettingsFallbackResponseConfig": { + "description": "Configuration for handling fallback responses.", + "id": "ErrorHandlingSettingsFallbackResponseConfig", + "properties": { + "customFallbackMessages": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The fallback messages in case of system errors (e.g. LLM errors), mapped by [supported language code](https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/reference/language).", + "type": "object" + }, + "maxFallbackAttempts": { + "description": "Optional. The maximum number of fallback attempts to make before the agent emitting EndSession Signal.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "EvaluationMetricsThresholds": { "description": "Threshold settings for metrics in an Evaluation.", "id": "EvaluationMetricsThresholds", @@ -4314,6 +4487,18 @@ "description": "Optional. The input parameters and values for the tool in JSON object format.", "type": "object" }, + "context": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The [ToolCallContext](https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/python#environment for details) to be passed to the Python tool.", + "type": "object" + }, + "mockConfig": { + "$ref": "MockConfig", + "description": "Optional. Mock configuration for the tool execution. If this field is set, tools that call other tools will be mocked based on the provided patterns and responses." + }, "tool": { "description": "Optional. The name of the tool to execute. Format: projects/{project}/locations/{location}/apps/{app}/tools/{tool}", "type": "string" @@ -4364,10 +4549,77 @@ }, "type": "object" }, + "ExperimentConfig": { + "description": "Experiment for the deployment.", + "id": "ExperimentConfig", + "properties": { + "versionRelease": { + "$ref": "ExperimentConfigVersionRelease", + "description": "Optional. Version release for the experiment." + } + }, + "type": "object" + }, + "ExperimentConfigVersionRelease": { + "description": "Version release for the experiment.", + "id": "ExperimentConfigVersionRelease", + "properties": { + "state": { + "description": "Optional. State of the version release.", + "enum": [ + "STATE_UNSPECIFIED", + "PENDING", + "RUNNING", + "DONE", + "EXPIRED" + ], + "enumDescriptions": [ + "Unspecified state.", + "Pending state. Experiment is pending and not valid.", + "Running state. Experiment is running and valid.", + "Done state. Experiment is done and no longer valid.", + "Expired state. Experiment is expired and no longer valid." + ], + "type": "string" + }, + "trafficAllocations": { + "description": "Optional. Traffic allocations for the version release.", + "items": { + "$ref": "ExperimentConfigVersionReleaseTrafficAllocation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ExperimentConfigVersionReleaseTrafficAllocation": { + "description": "Traffic allocation for the version release.", + "id": "ExperimentConfigVersionReleaseTrafficAllocation", + "properties": { + "appVersion": { + "description": "Optional. App version of the traffic allocation. Format: `projects/{project}/locations/{location}/apps/{app}/versions/{version}`", + "type": "string" + }, + "id": { + "description": "Optional. Id of the traffic allocation. Free format string, up to 128 characters.", + "type": "string" + }, + "trafficPercentage": { + "description": "Optional. Traffic percentage of the traffic allocation. Must be between 0 and 100.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "ExportAppRequest": { "description": "Request message for AgentService.ExportApp.", "id": "ExportAppRequest", "properties": { + "appVersion": { + "description": "Optional. The resource name of the app version to export. Format: `projects/{project}/locations/{location}/apps/{app}/versions/{version}`.", + "type": "string" + }, "exportFormat": { "description": "Required. The format to export the app in.", "enum": [ @@ -4457,6 +4709,10 @@ "description": "Required. The deployment of the app to use for the session. Format: projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}", "type": "string" }, + "liveHandoffEnabled": { + "description": "Optional. Indicates if live handoff is enabled for the session.", + "type": "boolean" + }, "recaptchaToken": { "description": "Optional. The reCAPTCHA token generated by the client-side chat widget.", "type": "string" @@ -4956,7 +5212,8 @@ "type": "boolean" }, "fallbackAction": { - "description": "Optional. The action to perform when an agent receives input in an unsupported language. This can be a predefined action or a custom tool call. Valid values are: - A tool's full resource name, which triggers a specific tool execution. - A predefined system action, such as \"escalate\" or \"exit\", which triggers an EndSession signal with corresponding metadata to terminate the conversation.", + "deprecated": true, + "description": "Optional. Deprecated: This feature is no longer supported. Use `enable_multilingual_support` instead to improve handling of multilingual input. The action to perform when an agent receives input in an unsupported language. This can be a predefined action or a custom tool call. Valid values are: - A tool's full resource name, which triggers a specific tool execution. - A predefined system action, such as \"escalate\" or \"exit\", which triggers an EndSession signal with corresponding metadata to terminate the conversation.", "type": "string" }, "supportedLanguageCodes": { @@ -5264,6 +5521,10 @@ "redactionConfig": { "$ref": "RedactionConfig", "description": "Optional. Configuration for how sensitive data should be redacted." + }, + "unredactedAudioRecordingConfig": { + "$ref": "AudioRecordingConfig", + "description": "Optional. Configures recording of unredacted audio. Use this to maintain a raw backup with restricted access when audio redaction is enabled, typically for auditing or monitoring purposes." } }, "type": "object" @@ -5276,6 +5537,13 @@ "$ref": "ApiAuthentication", "description": "Optional. Authentication information required to execute the tool against the MCP server. For bearer token authentication, the token applies only to tool execution, not to listing tools. This requires that tools can be listed without authentication." }, + "customHeaders": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The custom headers to send in the request to the MCP server. The values must be in the format `$context.variables.` and can be set in the session variables. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection for more details.", + "type": "object" + }, "description": { "description": "Optional. The description of the MCP tool.", "type": "string" @@ -5315,6 +5583,13 @@ "$ref": "ApiAuthentication", "description": "Optional. Authentication information required to access tools and execute a tool against the MCP server. For bearer token authentication, the token applies only to tool execution, not to listing tools. This requires that tools can be listed without authentication." }, + "customHeaders": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The custom headers to send in the request to the MCP server. The values must be in the format `$context.variables.` and can be set in the session variables. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection for more details.", + "type": "object" + }, "serverAddress": { "description": "Required. The address of the MCP server, for example, \"https://example.com/mcp/\". If the server is built with the MCP SDK, the url should be suffixed with \"/mcp/\". Only Streamable HTTP transport based servers are supported. See https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http for more details.", "type": "string" @@ -5364,6 +5639,70 @@ }, "type": "object" }, + "MockConfig": { + "description": "Mock tool calls configuration for the session.", + "id": "MockConfig", + "properties": { + "mockedToolCalls": { + "description": "Optional. All tool calls to mock for the duration of the session.", + "items": { + "$ref": "MockedToolCall" + }, + "type": "array" + }, + "unmatchedToolCallBehavior": { + "description": "Required. Beavhior for tool calls that don't match any args patterns in mocked_tool_calls.", + "enum": [ + "UNMATCHED_TOOL_CALL_BEHAVIOR_UNSPECIFIED", + "FAIL", + "PASS_THROUGH" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Throw an error for any tool calls that don't match a mock expected input pattern.", + "For unmatched tool calls, pass the tool call through to real tool." + ], + "type": "string" + } + }, + "type": "object" + }, + "MockedToolCall": { + "description": "A mocked tool call. Expresses the target tool + a pattern to match against that tool's args / inputs. If the pattern matches, then the mock response will be returned.", + "id": "MockedToolCall", + "properties": { + "expectedArgsPattern": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Required. A pattern to match against the args / inputs of all dispatched tool calls. If the tool call inputs match this pattern, then mock output will be returned.", + "type": "object" + }, + "mockResponse": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The mock response / output to return if the tool call args / inputs match the pattern.", + "type": "object" + }, + "tool": { + "deprecated": true, + "description": "Optional. Deprecated. Use tool_identifier instead.", + "type": "string" + }, + "toolId": { + "description": "Optional. The name of the tool to mock. Format: `projects/{project}/locations/{location}/apps/{app}/tools/{tool}`", + "type": "string" + }, + "toolset": { + "$ref": "ToolsetTool", + "description": "Optional. The toolset to mock." + } + }, + "type": "object" + }, "ModelSettings": { "description": "Model settings contains various configurations for the LLM model.", "id": "ModelSettings", @@ -6029,6 +6368,38 @@ }, "type": "object" }, + "SecuritySettings": { + "description": "Project/Location level security settings for CES.", + "id": "SecuritySettings", + "properties": { + "createTime": { + "description": "Output only. Create time of the security settings.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endpointControlPolicy": { + "$ref": "EndpointControlPolicy", + "description": "Optional. Endpoint control related settings." + }, + "etag": { + "description": "Output only. Etag of the security settings.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The unique identifier of the security settings. Format: `projects/{project}/locations/{location}/securitySettings`", + "type": "string" + }, + "updateTime": { + "description": "Output only. Last update time of the security settings.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ServiceAccountAuthConfig": { "description": "Configurations for authentication using a custom service account.", "id": "ServiceAccountAuthConfig", @@ -6072,8 +6443,12 @@ "description": "Optional. The deployment of the app to use for the session. Format: `projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}`", "type": "string" }, + "enableTextStreaming": { + "description": "Optional. Whether to enable streaming text outputs from the model. By default, text outputs from the model are collected before sending to the client. NOTE: This is only supported for text (non-voice) sessions via StreamRunSession or BidiRunSession.", + "type": "boolean" + }, "entryAgent": { - "description": "Optional. The entry agent to handle the session. If not specified, the session will be handled by the root agent of the app. Format: `projects/{project}/locations/{location}/agents/{agent}`", + "description": "Optional. The entry agent to handle the session. If not specified, the session will be handled by the root agent of the app. Format: `projects/{project}/locations/{location}/apps/{app}/agents/{agent}`", "type": "string" }, "historicalContexts": { @@ -6098,6 +6473,10 @@ "timeZone": { "description": "Optional. The time zone of the user. If provided, the agent will use the time zone for date and time related variables. Otherwise, the agent will use the time zone specified in the App.time_zone_settings. The format is the IANA Time Zone Database time zone, e.g. \"America/Los_Angeles\".", "type": "string" + }, + "useToolFakes": { + "description": "Optional. Whether to use tool fakes for the session. If this field is set, the agent will attempt use tool fakes instead of calling the real tools.", + "type": "boolean" } }, "type": "object" @@ -6387,7 +6766,7 @@ "id": "TlsConfigCaCert", "properties": { "cert": { - "description": "Required. The allowed custom CA certificates (in DER format) for HTTPS verification. This overrides the default SSL trust store. If this is empty or unspecified, CES will use Google's default trust store to verify certificates. N.B. Make sure the HTTPS server certificates are signed with \"subject alt name\". For instance a certificate can be self-signed using the following command, openssl x509 -req -days 200 -in example.com.csr \\ -signkey example.com.key \\ -out example.com.crt \\ -extfile <(printf \"\\nsubjectAltName='DNS:www.example.com'\")", + "description": "Required. The allowed custom CA certificates (in DER format) for HTTPS verification. This overrides the default SSL trust store. If this is empty or unspecified, CES will use Google's default trust store to verify certificates. N.B. Make sure the HTTPS server certificates are signed with \"subject alt name\". For instance a certificate can be self-signed using the following command: ``` openssl x509 -req -days 200 -in example.com.csr \\ -signkey example.com.key \\ -out example.com.crt \\ -extfile <(printf \"\\nsubjectAltName='DNS:www.example.com'\") ```", "format": "byte", "type": "string" }, @@ -6402,6 +6781,10 @@ "description": "A tool represents an action that the CES agent can take to achieve certain goals.", "id": "Tool", "properties": { + "agentTool": { + "$ref": "AgentTool", + "description": "Optional. The agent tool." + }, "clientFunction": { "$ref": "ClientFunction", "description": "Optional. The client function." @@ -6461,7 +6844,7 @@ "description": "Optional. The MCP tool. An MCP tool cannot be created or updated directly and is managed by the MCP toolset." }, "name": { - "description": "Identifier. The unique identifier of the tool. Format: - `projects/{project}/locations/{location}/apps/{app}/tools/{tool}` for ## standalone tools. `projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool}` for tools retrieved from a toolset. These tools are dynamic and output-only, they cannot be referenced directly where a tool is expected.", + "description": "Identifier. The resource name of the tool. Format: * `projects/{project}/locations/{location}/apps/{app}/tools/{tool}` for standalone tools. * `projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool}` for tools retrieved from a toolset. These tools are dynamic and output-only; they cannot be referenced directly where a tool is expected.", "type": "string" }, "openApiTool": { @@ -6828,6 +7211,10 @@ "description": "Represents a widget tool that the agent can invoke. When the tool is chosen by the agent, agent will return the widget to the client. The client is responsible for processing the widget and generating the next user query to continue the interaction with the agent.", "id": "WidgetTool", "properties": { + "dataMapping": { + "$ref": "WidgetToolDataMapping", + "description": "Optional. The mapping that defines how data from a source tool is mapped to the widget's input parameters." + }, "description": { "description": "Optional. The description of the widget tool.", "type": "string" @@ -6840,6 +7227,18 @@ "$ref": "Schema", "description": "Optional. The input parameters of the widget tool." }, + "textResponseConfig": { + "$ref": "WidgetToolTextResponseConfig", + "description": "Optional. Configuration for always-included text responses." + }, + "uiConfig": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. Configuration for rendering the widget.", + "type": "object" + }, "widgetType": { "description": "Optional. The type of the widget tool. If not specified, the default type will be CUSTOMIZED.", "enum": [ @@ -6876,6 +7275,78 @@ } }, "type": "object" + }, + "WidgetToolDataMapping": { + "description": "Configuration for mapping data from a source tool to the widget's input parameters.", + "id": "WidgetToolDataMapping", + "properties": { + "fieldMappings": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A map of widget input parameter fields to the corresponding output fields of the source tool.", + "type": "object" + }, + "mode": { + "description": "Optional. The mode of the data mapping.", + "enum": [ + "MODE_UNSPECIFIED", + "FIELD_MAPPING", + "PYTHON_SCRIPT" + ], + "enumDescriptions": [ + "Unspecified mode.", + "Use the `field_mappings` map for data transformation.", + "Use the `python_script` for data transformation." + ], + "type": "string" + }, + "pythonFunction": { + "$ref": "PythonFunction", + "description": "Optional. Configuration for a Python function used to transform the source tool's output into the widget's input format." + }, + "pythonScript": { + "deprecated": true, + "description": "Deprecated: Use `python_function` instead.", + "type": "string" + }, + "sourceToolName": { + "description": "Optional. The resource name of the tool that provides the data for the widget (e.g., a search tool or a custom function). Format: `projects/{project}/locations/{location}/agents/{agent}/tools/{tool}`", + "type": "string" + } + }, + "type": "object" + }, + "WidgetToolTextResponseConfig": { + "description": "Configuration for the text response returned with the widget.", + "id": "WidgetToolTextResponseConfig", + "properties": { + "staticText": { + "description": "Optional. The static text response to return when type is STATIC.", + "type": "string" + }, + "textResponseInstruction": { + "description": "Optional. Instruction for the LLM on how to generate the text response. Used as the description for the text response parameter if type is LLM_GENERATED.", + "type": "string" + }, + "type": { + "description": "Optional. The strategy for providing the text response.", + "enum": [ + "TYPE_UNSPECIFIED", + "NONE", + "LLM_GENERATED", + "STATIC" + ], + "enumDescriptions": [ + "Unspecified type.", + "The LLM dynamically decides whether to generate a text response alongside the widget based on the conversation context.", + "The LLM is explicitly required to generate a text response.", + "A pre-defined static text response is always used." + ], + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/discovery/ces-v1beta.json b/discovery/ces-v1beta.json index 9c8d9b6487e..d0623df2e3a 100644 --- a/discovery/ces-v1beta.json +++ b/discovery/ces-v1beta.json @@ -17,7 +17,7 @@ "canonicalName": "Customer Engagement Suite", "description": "", "discoveryVersion": "v1", - "documentationLink": "https://cloud.google.com/customer-engagement-ai/conversational-agents/ps/reference", + "documentationLink": "https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps", "endpoints": [ { "description": "Regional Endpoint", @@ -150,8 +150,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "getSecuritySettings": { + "description": "Retrieves the security settings for the project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/securitySettings", + "httpMethod": "GET", + "id": "ces.projects.locations.getSecuritySettings", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the security settings to retrieve. Format: `projects/{project}/locations/{location}/securitySettings`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securitySettings$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "SecuritySettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/ces", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta/projects/{projectsId}/locations", "httpMethod": "GET", "id": "ces.projects.locations.list", @@ -160,7 +186,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -197,6 +223,41 @@ "https://www.googleapis.com/auth/ces", "https://www.googleapis.com/auth/cloud-platform" ] + }, + "updateSecuritySettings": { + "description": "Updates the security settings for the project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/securitySettings", + "httpMethod": "PATCH", + "id": "ces.projects.locations.updateSecuritySettings", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The unique identifier of the security settings. Format: `projects/{project}/locations/{location}/securitySettings`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securitySettings$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "SecuritySettings" + }, + "response": { + "$ref": "SecuritySettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/ces", + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { @@ -325,6 +386,35 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "generateAppResource": { + "description": "Generates specific resources (e.g. agent) in the app using LLM assistant.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/apps/{appsId}:generateAppResource", + "httpMethod": "POST", + "id": "ces.projects.locations.apps.generateAppResource", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the app to generate the resource for.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/apps/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}:generateAppResource", + "request": { + "$ref": "GenerateAppResourceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/ces", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "Gets details of the specified app.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/apps/{appsId}", @@ -893,13 +983,15 @@ "SOURCE_UNSPECIFIED", "LIVE", "SIMULATOR", - "EVAL" + "EVAL", + "AGENT_TOOL" ], "enumDescriptions": [ "Unspecified source.", "The conversation is from the live end user.", "The conversation is from the simulator.", - "The conversation is from the evaluation." + "The conversation is from the evaluation.", + "The conversation is from an agent tool. Agent tool runs the agent in a separate session, which is persisted for testing and debugging purposes." ], "location": "query", "type": "string" @@ -966,13 +1058,15 @@ "SOURCE_UNSPECIFIED", "LIVE", "SIMULATOR", - "EVAL" + "EVAL", + "AGENT_TOOL" ], "enumDescriptions": [ "Unspecified source.", "The conversation is from the live end user.", "The conversation is from the simulator.", - "The conversation is from the evaluation." + "The conversation is from the evaluation.", + "The conversation is from an agent tool. Agent tool runs the agent in a separate session, which is persisted for testing and debugging purposes." ], "location": "query", "type": "string" @@ -1025,13 +1119,15 @@ "SOURCE_UNSPECIFIED", "LIVE", "SIMULATOR", - "EVAL" + "EVAL", + "AGENT_TOOL" ], "enumDescriptions": [ "Unspecified source.", "The conversation is from the live end user.", "The conversation is from the simulator.", - "The conversation is from the evaluation." + "The conversation is from the evaluation.", + "The conversation is from an agent tool. Agent tool runs the agent in a separate session, which is persisted for testing and debugging purposes." ], "location": "query", "type": "string" @@ -1042,13 +1138,15 @@ "SOURCE_UNSPECIFIED", "LIVE", "SIMULATOR", - "EVAL" + "EVAL", + "AGENT_TOOL" ], "enumDescriptions": [ "Unspecified source.", "The conversation is from the live end user.", "The conversation is from the simulator.", - "The conversation is from the evaluation." + "The conversation is from the evaluation.", + "The conversation is from an agent tool. Agent tool runs the agent in a separate session, which is persisted for testing and debugging purposes." ], "location": "query", "repeated": true, @@ -1211,7 +1309,7 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the deployment. Format: projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}", + "description": "Identifier. The resource name of the deployment. Format: `projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/apps/[^/]+/deployments/[^/]+$", "required": true, @@ -1767,6 +1865,35 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "export": { + "description": "Exports evaluations.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/apps/{appsId}/evaluations:export", + "httpMethod": "POST", + "id": "ces.projects.locations.apps.evaluations.export", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the app to export evaluations from. Format: `projects/{project}/locations/{location}/apps/{app}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/apps/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/evaluations:export", + "request": { + "$ref": "ExportEvaluationsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/ces", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "Gets details of the specified evaluation.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/apps/{appsId}/evaluations/{evaluationsId}", @@ -1890,6 +2017,35 @@ "https://www.googleapis.com/auth/ces", "https://www.googleapis.com/auth/cloud-platform" ] + }, + "uploadEvaluationAudio": { + "description": "Uploads audio for use in Golden Evaluations. Stores the audio in the Cloud Storage bucket defined in 'App.logging_settings.evaluation_audio_recording_config.gcs_bucket' and returns a transcript.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/apps/{appsId}/evaluations/{evaluationsId}:uploadEvaluationAudio", + "httpMethod": "POST", + "id": "ces.projects.locations.apps.evaluations.uploadEvaluationAudio", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the Evaluation for which to upload the evaluation audio. Format: `projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/apps/[^/]+/evaluations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}:uploadEvaluationAudio", + "request": { + "$ref": "UploadEvaluationAudioRequest" + }, + "response": { + "$ref": "UploadEvaluationAudioResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ces", + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { @@ -2566,7 +2722,7 @@ ] }, "runSession": { - "description": "Initiates a single turn interaction with the CES agent within a session.", + "description": "Initiates a single-turn interaction with the CES agent within a session.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/apps/{appsId}/sessions/{sessionsId}:runSession", "httpMethod": "POST", "id": "ces.projects.locations.apps.sessions.runSession", @@ -2593,6 +2749,35 @@ "https://www.googleapis.com/auth/ces", "https://www.googleapis.com/auth/cloud-platform" ] + }, + "streamRunSession": { + "description": "Initiates a single-turn interaction with the CES agent. Uses server-side streaming to deliver incremental results and partial responses as they are generated. By default, complete responses (e.g., messages from callbacks or full LLM responses) are sent to the client as soon as they are available. To enable streaming individual text chunks directly from the model, set enable_text_streaming to true.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/apps/{appsId}/sessions/{sessionsId}:streamRunSession", + "httpMethod": "POST", + "id": "ces.projects.locations.apps.sessions.streamRunSession", + "parameterOrder": [ + "session" + ], + "parameters": { + "session": { + "description": "Required. The unique identifier of the session. Format: `projects/{project}/locations/{location}/apps/{app}/sessions/{session}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/apps/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+session}:streamRunSession", + "request": { + "$ref": "RunSessionRequest" + }, + "response": { + "$ref": "RunSessionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ces", + "https://www.googleapis.com/auth/cloud-platform" + ] } } }, @@ -2751,7 +2936,7 @@ ], "parameters": { "name": { - "description": "Identifier. The unique identifier of the tool. Format: - `projects/{project}/locations/{location}/apps/{app}/tools/{tool}` for ## standalone tools. `projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool}` for tools retrieved from a toolset. These tools are dynamic and output-only, they cannot be referenced directly where a tool is expected.", + "description": "Identifier. The resource name of the tool. Format: * `projects/{project}/locations/{location}/apps/{app}/tools/{tool}` for standalone tools. * `projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool}` for tools retrieved from a toolset. These tools are dynamic and output-only; they cannot be referenced directly where a tool is expected.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/apps/[^/]+/tools/[^/]+$", "required": true, @@ -3299,7 +3484,7 @@ } } }, - "revision": "20260218", + "revision": "20260422", "rootUrl": "https://ces.googleapis.com/", "schemas": { "Action": { @@ -3556,6 +3741,30 @@ }, "type": "object" }, + "AgentTool": { + "description": "Represents a tool that allows the agent to call another agent.", + "id": "AgentTool", + "properties": { + "agent": { + "description": "Optional. The resource name of the agent that is the entry point of the tool. Format: `projects/{project}/locations/{location}/agents/{agent}`", + "type": "string" + }, + "description": { + "description": "Optional. Description of the tool's purpose.", + "type": "string" + }, + "name": { + "description": "Required. The name of the agent tool.", + "type": "string" + }, + "rootAgent": { + "deprecated": true, + "description": "Optional. Deprecated: Use `agent` instead. The resource name of the root agent that is the entry point of the tool. Format: `projects/{project}/locations/{location}/agents/{agent}`", + "type": "string" + } + }, + "type": "object" + }, "AgentTransfer": { "description": "Represents an event indicating the transfer of a conversation to a different agent.", "id": "AgentTransfer", @@ -3926,6 +4135,10 @@ "description": "Required. Display name of the app.", "type": "string" }, + "errorHandlingSettings": { + "$ref": "ErrorHandlingSettings", + "description": "Optional. Error handling settings of the app." + }, "etag": { "description": "Output only. Etag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.", "readOnly": true, @@ -4255,7 +4468,7 @@ "id": "BigQueryExportSettings", "properties": { "dataset": { - "description": "Optional. The BigQuery dataset to export the data to.", + "description": "Optional. The BigQuery **dataset ID** to export the data to.", "type": "string" }, "enabled": { @@ -4263,7 +4476,7 @@ "type": "boolean" }, "project": { - "description": "Optional. The project ID of the BigQuery dataset to export the data to. Note: If the BigQuery dataset is in a different project from the app, you should grant `roles/bigquery.admin` role to the CES service agent `service-@gcp-sa-ces.iam.gserviceaccount.com`.", + "description": "Optional. The **project ID** of the BigQuery dataset to export the data to. Note: If the BigQuery dataset is in a different project from the app, you should grant `roles/bigquery.admin` role to the CES service agent `service-@gcp-sa-ces.iam.gserviceaccount.com`.", "type": "string" } }, @@ -4483,13 +4696,15 @@ "MODALITY_UNSPECIFIED", "CHAT_AND_VOICE", "VOICE_ONLY", - "CHAT_ONLY" + "CHAT_ONLY", + "CHAT_VOICE_AND_VIDEO" ], "enumDescriptions": [ "Unknown modality.", "Widget supports both chat and voice input.", "Widget supports only voice input.", - "Widget supports only chat input." + "Widget supports only chat input.", + "Widget supports chat, voice, and video input." ], "type": "string" }, @@ -4552,6 +4767,10 @@ "$ref": "AgentTransfer", "description": "Optional. Agent transfer event." }, + "blob": { + "$ref": "Blob", + "description": "Optional. Blob data." + }, "defaultVariables": { "additionalProperties": { "description": "Properties of the object.", @@ -4793,6 +5012,7 @@ "enum": [ "INPUT_TYPE_UNSPECIFIED", "INPUT_TYPE_TEXT", + "INPUT_TYPE_EVENT", "INPUT_TYPE_AUDIO", "INPUT_TYPE_IMAGE", "INPUT_TYPE_BLOB", @@ -4801,12 +5021,13 @@ ], "enumDescriptions": [ "Unspecified input type.", - "The input message is text.", - "The input message is audio.", - "The input message is image.", - "The input message is blob file.", - "The input message is client function tool response.", - "The input message are variables." + "Text input.", + "Event input.", + "Audio input.", + "Image input.", + "Blob input.", + "Client function tool response input.", + "Variables input." ], "type": "string" }, @@ -4836,13 +5057,15 @@ "SOURCE_UNSPECIFIED", "LIVE", "SIMULATOR", - "EVAL" + "EVAL", + "AGENT_TOOL" ], "enumDescriptions": [ "Unspecified source.", "The conversation is from the live end user.", "The conversation is from the simulator.", - "The conversation is from the evaluation." + "The conversation is from the evaluation.", + "The conversation is from an agent tool. Agent tool runs the agent in a separate session, which is persisted for testing and debugging purposes." ], "readOnly": true, "type": "string" @@ -4876,6 +5099,11 @@ "disableConversationLogging": { "description": "Optional. Whether to disable conversation logging for the sessions.", "type": "boolean" + }, + "retentionWindow": { + "description": "Optional. Controls the retention window for the conversation. If not set, the conversation will be retained for 365 days.", + "format": "google-duration", + "type": "string" } }, "type": "object" @@ -5321,7 +5549,7 @@ "id": "Deployment", "properties": { "appVersion": { - "description": "Required. The resource name of the app version to deploy. Format: projects/{project}/locations/{location}/apps/{app}/versions/{version}", + "description": "Optional. The resource name of the app version to deploy. Format: `projects/{project}/locations/{location}/apps/{app}/versions/{version}` Use `projects/{project}/locations/{location}/apps/{app}/versions/-` to use the draft app.", "type": "string" }, "channelProfile": { @@ -5343,8 +5571,12 @@ "readOnly": true, "type": "string" }, + "experimentConfig": { + "$ref": "ExperimentConfig", + "description": "Optional. Experiment configuration for the deployment." + }, "name": { - "description": "Identifier. The resource name of the deployment. Format: projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}", + "description": "Identifier. The resource name of the deployment. Format: `projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}`", "type": "string" }, "updateTime": { @@ -5422,6 +5654,95 @@ }, "type": "object" }, + "EndpointControlPolicy": { + "description": "Defines project/location level endpoint control policy.", + "id": "EndpointControlPolicy", + "properties": { + "allowedOrigins": { + "description": "Optional. The allowed HTTP(s) origins that tools in the App are able to directly call. The enforcement depends on the value of enforcement_scope and the VPC-SC status of the project. If a port number is not provided, all ports will be allowed. Otherwise, the port number must match exactly. For example, \"https://example.com\" will match \"https://example.com:443\" and any other port. \"https://example.com:443\" will only match \"https://example.com:443\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "enforcementScope": { + "description": "Optional. The scope in which this policy's allowed_origins list is enforced.", + "enum": [ + "ENFORCEMENT_SCOPE_UNSPECIFIED", + "VPCSC_ONLY", + "ALWAYS" + ], + "enumDescriptions": [ + "Unspecified. This policy will be treated as VPCSC_ONLY.", + "This policy applies only when VPC-SC is active.", + "This policy ALWAYS applies, regardless of VPC-SC status." + ], + "type": "string" + } + }, + "type": "object" + }, + "ErrorHandlingSettings": { + "description": "Settings to describe how errors should be handled in the app.", + "id": "ErrorHandlingSettings", + "properties": { + "endSessionConfig": { + "$ref": "ErrorHandlingSettingsEndSessionConfig", + "description": "Optional. Configuration for ending the session in case of system errors (e.g. LLM errors)." + }, + "errorHandlingStrategy": { + "description": "Optional. The strategy to use for error handling.", + "enum": [ + "ERROR_HANDLING_STRATEGY_UNSPECIFIED", + "NONE", + "FALLBACK_RESPONSE", + "END_SESSION" + ], + "enumDescriptions": [ + "Unspecified error handling strategy.", + "No specific handling is enabled.", + "A fallback message will be returned to the user in case of system errors (e.g. LLM errors).", + "An EndSession signal will be emitted in case of system errors (e.g. LLM errors)." + ], + "type": "string" + }, + "fallbackResponseConfig": { + "$ref": "ErrorHandlingSettingsFallbackResponseConfig", + "description": "Optional. Configuration for handling fallback responses." + } + }, + "type": "object" + }, + "ErrorHandlingSettingsEndSessionConfig": { + "description": "Configuration for ending the session in case of system errors (e.g. LLM errors).", + "id": "ErrorHandlingSettingsEndSessionConfig", + "properties": { + "escalateSession": { + "description": "Optional. Whether to escalate the session in EndSession. If session is escalated, metadata in EndSession will contain `session_escalated = true`. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/deploy/google-telephony-platform#transfer_a_call_to_a_human_agent for details.", + "type": "boolean" + } + }, + "type": "object" + }, + "ErrorHandlingSettingsFallbackResponseConfig": { + "description": "Configuration for handling fallback responses.", + "id": "ErrorHandlingSettingsFallbackResponseConfig", + "properties": { + "customFallbackMessages": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The fallback messages in case of system errors (e.g. LLM errors), mapped by [supported language code](https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/reference/language).", + "type": "object" + }, + "maxFallbackAttempts": { + "description": "Optional. The maximum number of fallback attempts to make before the agent emitting EndSession Signal.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "Evaluation": { "description": "An evaluation represents all of the information needed to simulate and evaluate an agent.", "id": "Evaluation", @@ -6057,12 +6378,14 @@ "enum": [ "OUTCOME_UNSPECIFIED", "PASS", - "FAIL" + "FAIL", + "SKIPPED" ], "enumDescriptions": [ "Evaluation outcome is not specified.", "Evaluation/Expectation passed. In the case of an evaluation, this means that all expectations were met.", - "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met." + "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met.", + "Evaluation/Expectation was skipped." ], "readOnly": true, "type": "string" @@ -6145,12 +6468,14 @@ "enum": [ "OUTCOME_UNSPECIFIED", "PASS", - "FAIL" + "FAIL", + "SKIPPED" ], "enumDescriptions": [ "Evaluation outcome is not specified.", "Evaluation/Expectation passed. In the case of an evaluation, this means that all expectations were met.", - "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met." + "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met.", + "Evaluation/Expectation was skipped." ], "readOnly": true, "type": "string" @@ -6197,12 +6522,14 @@ "enum": [ "OUTCOME_UNSPECIFIED", "PASS", - "FAIL" + "FAIL", + "SKIPPED" ], "enumDescriptions": [ "Evaluation outcome is not specified.", "Evaluation/Expectation passed. In the case of an evaluation, this means that all expectations were met.", - "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met." + "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met.", + "Evaluation/Expectation was skipped." ], "readOnly": true, "type": "string" @@ -6235,12 +6562,14 @@ "enum": [ "OUTCOME_UNSPECIFIED", "PASS", - "FAIL" + "FAIL", + "SKIPPED" ], "enumDescriptions": [ "Evaluation outcome is not specified.", "Evaluation/Expectation passed. In the case of an evaluation, this means that all expectations were met.", - "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met." + "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met.", + "Evaluation/Expectation was skipped." ], "readOnly": true, "type": "string" @@ -6384,12 +6713,14 @@ "enum": [ "OUTCOME_UNSPECIFIED", "PASS", - "FAIL" + "FAIL", + "SKIPPED" ], "enumDescriptions": [ "Evaluation outcome is not specified.", "Evaluation/Expectation passed. In the case of an evaluation, this means that all expectations were met.", - "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met." + "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met.", + "Evaluation/Expectation was skipped." ], "readOnly": true, "type": "string" @@ -6426,12 +6757,14 @@ "enum": [ "OUTCOME_UNSPECIFIED", "PASS", - "FAIL" + "FAIL", + "SKIPPED" ], "enumDescriptions": [ "Evaluation outcome is not specified.", "Evaluation/Expectation passed. In the case of an evaluation, this means that all expectations were met.", - "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met." + "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met.", + "Evaluation/Expectation was skipped." ], "readOnly": true, "type": "string" @@ -6592,12 +6925,14 @@ "enum": [ "OUTCOME_UNSPECIFIED", "PASS", - "FAIL" + "FAIL", + "SKIPPED" ], "enumDescriptions": [ "Evaluation outcome is not specified.", "Evaluation/Expectation passed. In the case of an evaluation, this means that all expectations were met.", - "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met." + "Evaluation/Expectation failed. In the case of an evaluation, this means that at least one expectation was not met.", + "Evaluation/Expectation was skipped." ], "readOnly": true, "type": "string" @@ -7281,6 +7616,18 @@ "description": "Optional. The input parameters and values for the tool in JSON object format.", "type": "object" }, + "context": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The [ToolCallContext](https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/python#environment for details) to be passed to the Python tool.", + "type": "object" + }, + "mockConfig": { + "$ref": "MockConfig", + "description": "Optional. Mock configuration for the tool execution. If this field is set, tools that call other tools will be mocked based on the provided patterns and responses." + }, "tool": { "description": "Optional. The name of the tool to execute. Format: projects/{project}/locations/{location}/apps/{app}/tools/{tool}", "type": "string" @@ -7331,10 +7678,77 @@ }, "type": "object" }, + "ExperimentConfig": { + "description": "Experiment for the deployment.", + "id": "ExperimentConfig", + "properties": { + "versionRelease": { + "$ref": "ExperimentConfigVersionRelease", + "description": "Optional. Version release for the experiment." + } + }, + "type": "object" + }, + "ExperimentConfigVersionRelease": { + "description": "Version release for the experiment.", + "id": "ExperimentConfigVersionRelease", + "properties": { + "state": { + "description": "Optional. State of the version release.", + "enum": [ + "STATE_UNSPECIFIED", + "PENDING", + "RUNNING", + "DONE", + "EXPIRED" + ], + "enumDescriptions": [ + "Unspecified state.", + "Pending state. Experiment is pending and not valid.", + "Running state. Experiment is running and valid.", + "Done state. Experiment is done and no longer valid.", + "Expired state. Experiment is expired and no longer valid." + ], + "type": "string" + }, + "trafficAllocations": { + "description": "Optional. Traffic allocations for the version release.", + "items": { + "$ref": "ExperimentConfigVersionReleaseTrafficAllocation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ExperimentConfigVersionReleaseTrafficAllocation": { + "description": "Traffic allocation for the version release.", + "id": "ExperimentConfigVersionReleaseTrafficAllocation", + "properties": { + "appVersion": { + "description": "Optional. App version of the traffic allocation. Format: `projects/{project}/locations/{location}/apps/{app}/versions/{version}`", + "type": "string" + }, + "id": { + "description": "Optional. Id of the traffic allocation. Free format string, up to 128 characters.", + "type": "string" + }, + "trafficPercentage": { + "description": "Optional. Traffic percentage of the traffic allocation. Must be between 0 and 100.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "ExportAppRequest": { "description": "Request message for AgentService.ExportApp.", "id": "ExportAppRequest", "properties": { + "appVersion": { + "description": "Optional. The resource name of the app version to export. Format: `projects/{project}/locations/{location}/apps/{app}/versions/{version}`.", + "type": "string" + }, "exportFormat": { "description": "Required. The format to export the app in.", "enum": [ @@ -7372,8 +7786,115 @@ }, "type": "object" }, - "ExpressionCondition": { - "description": "Expression condition based on session state.", + "ExportEvaluationResultsResponse": { + "description": "Response message for EvaluationService.ExportEvaluationResults.", + "id": "ExportEvaluationResultsResponse", + "properties": { + "evaluationResultsContent": { + "description": "The content of the exported Evaluation Results. This will be populated if gcs_uri was not specified in the request.", + "format": "byte", + "type": "string" + }, + "evaluationResultsUri": { + "description": "The Google Cloud Storage URI folder where the exported Evaluation Results were written. This will be populated if gcs_uri was specified in the request.", + "type": "string" + } + }, + "type": "object" + }, + "ExportEvaluationRunsResponse": { + "description": "Response message for EvaluationService.ExportEvaluationRuns.", + "id": "ExportEvaluationRunsResponse", + "properties": { + "evaluationRunsContent": { + "description": "The content of the exported Evaluation Runs. This will be populated if gcs_uri was not specified in the request.", + "format": "byte", + "type": "string" + }, + "evaluationRunsUri": { + "description": "The Google Cloud Storage URI folder where the exported Evaluation Runs were written. This will be populated if gcs_uri was specified in the request.", + "type": "string" + } + }, + "type": "object" + }, + "ExportEvaluationsRequest": { + "description": "Request message for EvaluationService.ExportEvaluations.", + "id": "ExportEvaluationsRequest", + "properties": { + "exportOptions": { + "$ref": "ExportOptions", + "description": "Optional. The export options for the evaluations." + }, + "includeEvaluationResults": { + "description": "Optional. Includes evaluation results in the export. At least one of include_evaluation_results or include_evaluations must be set.", + "type": "boolean" + }, + "includeEvaluations": { + "description": "Optional. Includes evaluations in the export. At least one of include_evaluation_results or include_evaluations must be set.", + "type": "boolean" + }, + "names": { + "description": "Required. The resource names of the evaluations to export.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ExportEvaluationsResponse": { + "description": "Response message for EvaluationService.ExportEvaluations.", + "id": "ExportEvaluationsResponse", + "properties": { + "evaluationsContent": { + "description": "The content of the exported Evaluations. This will be populated if gcs_uri was not specified in the request.", + "format": "byte", + "type": "string" + }, + "evaluationsUri": { + "description": "The Google Cloud Storage URI folder where the exported evaluations were written. This will be populated if gcs_uri was specified in the request.", + "type": "string" + }, + "failedEvaluations": { + "additionalProperties": { + "type": "string" + }, + "description": "Output only. A map of evaluation resource names that could not be exported, to the reason why they failed.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, + "ExportOptions": { + "description": "Options for exporting CES evaluation resources.", + "id": "ExportOptions", + "properties": { + "exportFormat": { + "description": "Optional. The format to export the evaluation results in. Defaults to JSON if not specified.", + "enum": [ + "EXPORT_FORMAT_UNSPECIFIED", + "JSON", + "YAML" + ], + "enumDescriptions": [ + "Unspecified format.", + "JSON format.", + "YAML format." + ], + "type": "string" + }, + "gcsUri": { + "description": "Optional. The Google Cloud Storage URI to write the exported Evaluation Results to.", + "type": "string" + } + }, + "type": "object" + }, + "ExpressionCondition": { + "description": "Expression condition based on session state.", "id": "ExpressionCondition", "properties": { "expression": { @@ -7383,6 +7904,37 @@ }, "type": "object" }, + "FileContext": { + "description": "Files to be used as context. Files can be provided as raw bytes.", + "id": "FileContext", + "properties": { + "fileBytes": { + "$ref": "FileContextFileBytes", + "description": "Optional. File provided as raw bytes." + } + }, + "type": "object" + }, + "FileContextFileBytes": { + "description": "File provided as raw bytes.", + "id": "FileContextFileBytes", + "properties": { + "data": { + "description": "Required. Raw bytes of the file.", + "format": "byte", + "type": "string" + }, + "fileName": { + "description": "Required. The name of the file provided as raw bytes.", + "type": "string" + }, + "mimeType": { + "description": "Required. The IANA standard MIME type of the source data.", + "type": "string" + } + }, + "type": "object" + }, "FileSearchTool": { "description": "The file search tool allows the agent to search across the files uploaded by the app/agent developer. It has presets to give relatively good quality search over the uploaded files and summarization of the retrieved results.", "id": "FileSearchTool", @@ -7416,6 +7968,214 @@ }, "type": "object" }, + "GenerateAppResourceRequest": { + "description": "Request message for AgentService.GenerateAppResource.", + "id": "GenerateAppResourceRequest", + "properties": { + "agent": { + "$ref": "Agent", + "description": "The agent resource to be used by the LLM assistant, can be empty for generating a new agent." + }, + "appGenerationConfig": { + "$ref": "GenerateAppResourceRequestAppGenerationConfig", + "description": "Optional. The configuration to be used to generate the agents and tools." + }, + "evaluationGenerationConfig": { + "$ref": "GenerateAppResourceRequestEvaluationGenerationConfig", + "description": "Optional. The configuration to be used to generate the evaluations." + }, + "evaluationPersonasGenerationConfig": { + "$ref": "GenerateAppResourceRequestEvaluationPersonasGenerationConfig", + "description": "Optional. The configuration to be used to generate the evaluation personas." + }, + "hillClimbingFixConfig": { + "$ref": "GenerateAppResourceRequestHillClimbingFixConfig", + "description": "Optional. The configuration to be used for hill climbing fixes." + }, + "qualityReportGenerationConfig": { + "$ref": "GenerateAppResourceRequestQualityReportGenerationConfig", + "description": "Optional. The configuration to be used for quality report generation." + }, + "refineInstructions": { + "description": "Optional. List of refine instructions to be used to refine the resource.", + "items": { + "$ref": "GenerateAppResourceRequestRefineInstructions" + }, + "type": "array" + }, + "tool": { + "$ref": "Tool", + "description": "The tool resource to be used by the LLM assistant, can be empty for generating a new tool." + }, + "toolGenerationConfig": { + "$ref": "GenerateAppResourceRequestToolGenerationConfig", + "description": "Optional. The configuration to be used to generate the tool." + }, + "toolset": { + "$ref": "Toolset", + "description": "The toolset resource to be used by the LLM assistant, can be empty for generating a new toolset." + } + }, + "type": "object" + }, + "GenerateAppResourceRequestAppGenerationConfig": { + "description": "The configuration to be used to generate the app.", + "id": "GenerateAppResourceRequestAppGenerationConfig", + "properties": { + "context": { + "description": "Optional. The context which describes the requirements of the agents & tools to be generated.", + "type": "string" + }, + "datasetId": { + "description": "Optional. The insights dataset to be used to fetch conversation data for generating the agents & tools. Format: `projects/{project}/locations/{location}/datasets/{dataset}`.", + "type": "string" + }, + "fileContexts": { + "description": "Optional. The files to be used as context.", + "items": { + "$ref": "FileContext" + }, + "type": "array" + }, + "gcsLocation": { + "description": "Optional. The Cloud Storage location to store the generated question answer data to be used by the Datastore tool. This data is generated only when using conversation data as an input source. The location must be in the same project as the app. Format: `gs://...`.", + "type": "string" + }, + "generateEvaluations": { + "description": "Optional. Whether to generate the evaluations for the app. If true, the provided context will be used to generate the evaluations data.", + "type": "boolean" + } + }, + "type": "object" + }, + "GenerateAppResourceRequestEvaluationGenerationConfig": { + "description": "The configuration to be used to generate the evaluations.", + "id": "GenerateAppResourceRequestEvaluationGenerationConfig", + "properties": { + "datasetId": { + "description": "Optional. The insights dataset to be used to fetch conversation data for generating the evaluations. Format: `projects/{project}/locations/{location}/datasets/{dataset}`.", + "type": "string" + } + }, + "type": "object" + }, + "GenerateAppResourceRequestEvaluationPersonasGenerationConfig": { + "description": "The configuration to be used to generate the evaluation personas.", + "id": "GenerateAppResourceRequestEvaluationPersonasGenerationConfig", + "properties": {}, + "type": "object" + }, + "GenerateAppResourceRequestHillClimbingFixConfig": { + "description": "The configuration to be used for hill climbing fixes.", + "id": "GenerateAppResourceRequestHillClimbingFixConfig", + "properties": { + "qualityReport": { + "$ref": "QualityReport", + "description": "Required. The quality report used to inform the instruction following fix." + } + }, + "type": "object" + }, + "GenerateAppResourceRequestQualityReportGenerationConfig": { + "description": "The configuration to be used for quality report generation.", + "id": "GenerateAppResourceRequestQualityReportGenerationConfig", + "properties": { + "evaluationRun": { + "description": "Required. The evaluation run used to inform quality report analysis.", + "type": "string" + } + }, + "type": "object" + }, + "GenerateAppResourceRequestRefineInstructions": { + "description": "The instructions to be used to refine a part of the resource. The part of the resource can be specified with a start index, end index and a field mask. For example, if you want to refine a part of the agent instructions you can specify the index of the first character of the instructions, the index of the last character of the instructions and the field mask as \"instructions\".", + "id": "GenerateAppResourceRequestRefineInstructions", + "properties": { + "endIndex": { + "description": "Required. The last character (inclusive) of the text to refine.", + "format": "int64", + "type": "string" + }, + "fieldMask": { + "description": "Required. The field of the resource being refined. Only one field is allowed per RefineInstructions. If refining agent instructions, the field mask should be \"instructions\".", + "format": "google-fieldmask", + "type": "string" + }, + "instructions": { + "description": "Required. The instructions to refine the resource.", + "type": "string" + }, + "startIndex": { + "description": "Required. The first character (inclusive) of the text to refine.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GenerateAppResourceRequestToolGenerationConfig": { + "description": "The configuration to be used to generate a tool.", + "id": "GenerateAppResourceRequestToolGenerationConfig", + "properties": { + "context": { + "description": "Optional. The context which describes the tool to be generated. This can be empty if the tool request & response are provided.", + "type": "string" + }, + "fileContexts": { + "description": "Optional. The files to be used as context.", + "items": { + "$ref": "FileContext" + }, + "type": "array" + }, + "openApiToolsetGenerationConfig": { + "$ref": "GenerateAppResourceRequestToolGenerationConfigOpenApiToolsetGenerationConfig", + "description": "Optional. The configuration to be used to generate an Open API schema." + } + }, + "type": "object" + }, + "GenerateAppResourceRequestToolGenerationConfigOpenApiToolsetGenerationConfig": { + "description": "The configuration to be used to generate an Open API schema.", + "id": "GenerateAppResourceRequestToolGenerationConfigOpenApiToolsetGenerationConfig", + "properties": { + "operationGenerationConfigs": { + "description": "Required. The list of operations to be added to the Open API schema.", + "items": { + "$ref": "GenerateAppResourceRequestToolGenerationConfigOpenApiToolsetGenerationConfigOperationGenerationConfig" + }, + "type": "array" + }, + "uri": { + "description": "Required. The base uri of the tool.", + "type": "string" + } + }, + "type": "object" + }, + "GenerateAppResourceRequestToolGenerationConfigOpenApiToolsetGenerationConfigOperationGenerationConfig": { + "description": "The configuration to be used to generate an operation in the Open API schema.", + "id": "GenerateAppResourceRequestToolGenerationConfigOpenApiToolsetGenerationConfigOperationGenerationConfig", + "properties": { + "method": { + "description": "Required. The uri of the tool. This should include query and path parameters if any.", + "type": "string" + }, + "path": { + "description": "Required. The path of the tool to be appended to the base uri. This should include query and path parameters if any.", + "type": "string" + }, + "requestJson": { + "description": "Required. A sample request to the tool in JSON format. Skip if the tool does not support request body.", + "type": "string" + }, + "responseJson": { + "description": "Required. A sample response from the tool in JSON format.", + "type": "string" + } + }, + "type": "object" + }, "GenerateAppResourceResponse": { "description": "Response message for AgentService.GenerateAppResource.", "id": "GenerateAppResourceResponse", @@ -7440,6 +8200,10 @@ "$ref": "GenerateAppResourceResponseGenerateResultInfo", "description": "Additional information about the generated result." }, + "qualityReport": { + "$ref": "QualityReport", + "description": "The quality report generated by the LLM assistant." + }, "tools": { "$ref": "GenerateAppResourceResponseTools", "description": "The list of tools generated by the LLM assistant." @@ -7516,6 +8280,10 @@ "description": "Required. The deployment of the app to use for the session. Format: projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}", "type": "string" }, + "liveHandoffEnabled": { + "description": "Optional. Indicates if live handoff is enabled for the session.", + "type": "boolean" + }, "recaptchaToken": { "description": "Optional. The reCAPTCHA token generated by the client-side chat widget.", "type": "string" @@ -7556,13 +8324,15 @@ "SOURCE_UNSPECIFIED", "LIVE", "SIMULATOR", - "EVAL" + "EVAL", + "AGENT_TOOL" ], "enumDescriptions": [ "Unspecified source.", "The conversation is from the live end user.", "The conversation is from the simulator.", - "The conversation is from the evaluation." + "The conversation is from the evaluation.", + "The conversation is from an agent tool. Agent tool runs the agent in a separate session, which is persisted for testing and debugging purposes." ], "type": "string" } @@ -8096,6 +8866,30 @@ }, "type": "array" }, + "evaluationResultImportFailureCount": { + "description": "The number of evaluation results that either failed to import entirely or completed import with one or more errors.", + "format": "int32", + "type": "integer" + }, + "evaluationResults": { + "description": "The list of evaluation results that were imported into the app.", + "items": { + "$ref": "EvaluationResult" + }, + "type": "array" + }, + "evaluationRunImportFailureCount": { + "description": "The number of evaluation runs that either failed to import entirely or completed import with one or more errors.", + "format": "int32", + "type": "integer" + }, + "evaluationRuns": { + "description": "The list of evaluation runs that were imported into the app.", + "items": { + "$ref": "EvaluationRun" + }, + "type": "array" + }, "evaluations": { "description": "The list of evaluations that were imported into the app.", "items": { @@ -8104,7 +8898,7 @@ "type": "array" }, "importFailureCount": { - "description": "The number of evaluations that were not imported due to errors.", + "description": "The number of evaluations that either failed to import entirely or completed import with one or more errors.", "format": "int32", "type": "integer" } @@ -8156,7 +8950,8 @@ "type": "boolean" }, "fallbackAction": { - "description": "Optional. The action to perform when an agent receives input in an unsupported language. This can be a predefined action or a custom tool call. Valid values are: - A tool's full resource name, which triggers a specific tool execution. - A predefined system action, such as \"escalate\" or \"exit\", which triggers an EndSession signal with corresponding metadata to terminate the conversation.", + "deprecated": true, + "description": "Optional. Deprecated: This feature is no longer supported. Use `enable_multilingual_support` instead to improve handling of multilingual input. The action to perform when an agent receives input in an unsupported language. This can be a predefined action or a custom tool call. Valid values are: - A tool's full resource name, which triggers a specific tool execution. - A predefined system action, such as \"escalate\" or \"exit\", which triggers an EndSession signal with corresponding metadata to terminate the conversation.", "type": "string" }, "supportedLanguageCodes": { @@ -8731,6 +9526,10 @@ "redactionConfig": { "$ref": "RedactionConfig", "description": "Optional. Configuration for how sensitive data should be redacted." + }, + "unredactedAudioRecordingConfig": { + "$ref": "AudioRecordingConfig", + "description": "Optional. Configures recording of unredacted audio. Use this to maintain a raw backup with restricted access when audio redaction is enabled, typically for auditing or monitoring purposes." } }, "type": "object" @@ -8743,6 +9542,13 @@ "$ref": "ApiAuthentication", "description": "Optional. Authentication information required to execute the tool against the MCP server. For bearer token authentication, the token applies only to tool execution, not to listing tools. This requires that tools can be listed without authentication." }, + "customHeaders": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The custom headers to send in the request to the MCP server. The values must be in the format `$context.variables.` and can be set in the session variables. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection for more details.", + "type": "object" + }, "description": { "description": "Optional. The description of the MCP tool.", "type": "string" @@ -8782,6 +9588,13 @@ "$ref": "ApiAuthentication", "description": "Optional. Authentication information required to access tools and execute a tool against the MCP server. For bearer token authentication, the token applies only to tool execution, not to listing tools. This requires that tools can be listed without authentication." }, + "customHeaders": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The custom headers to send in the request to the MCP server. The values must be in the format `$context.variables.` and can be set in the session variables. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection for more details.", + "type": "object" + }, "serverAddress": { "description": "Required. The address of the MCP server, for example, \"https://example.com/mcp/\". If the server is built with the MCP SDK, the url should be suffixed with \"/mcp/\". Only Streamable HTTP transport based servers are supported. See https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http for more details.", "type": "string" @@ -8831,6 +9644,70 @@ }, "type": "object" }, + "MockConfig": { + "description": "Mock tool calls configuration for the session.", + "id": "MockConfig", + "properties": { + "mockedToolCalls": { + "description": "Optional. All tool calls to mock for the duration of the session.", + "items": { + "$ref": "MockedToolCall" + }, + "type": "array" + }, + "unmatchedToolCallBehavior": { + "description": "Required. Beavhior for tool calls that don't match any args patterns in mocked_tool_calls.", + "enum": [ + "UNMATCHED_TOOL_CALL_BEHAVIOR_UNSPECIFIED", + "FAIL", + "PASS_THROUGH" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Throw an error for any tool calls that don't match a mock expected input pattern.", + "For unmatched tool calls, pass the tool call through to real tool." + ], + "type": "string" + } + }, + "type": "object" + }, + "MockedToolCall": { + "description": "A mocked tool call. Expresses the target tool + a pattern to match against that tool's args / inputs. If the pattern matches, then the mock response will be returned.", + "id": "MockedToolCall", + "properties": { + "expectedArgsPattern": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Required. A pattern to match against the args / inputs of all dispatched tool calls. If the tool call inputs match this pattern, then mock output will be returned.", + "type": "object" + }, + "mockResponse": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The mock response / output to return if the tool call args / inputs match the pattern.", + "type": "object" + }, + "tool": { + "deprecated": true, + "description": "Optional. Deprecated. Use tool_identifier instead.", + "type": "string" + }, + "toolId": { + "description": "Optional. The name of the tool to mock. Format: `projects/{project}/locations/{location}/apps/{app}/tools/{tool}`", + "type": "string" + }, + "toolset": { + "$ref": "ToolsetTool", + "description": "Optional. The toolset to mock." + } + }, + "type": "object" + }, "ModelSettings": { "description": "Model settings contains various configurations for the LLM model.", "id": "ModelSettings", @@ -9323,6 +10200,72 @@ }, "type": "object" }, + "QualityReport": { + "description": "The report describing any identified quality issues in the app.", + "id": "QualityReport", + "properties": { + "evaluationRuns": { + "description": "Optional. A list of evaluation runs used to generate the quality report. Format: `projects/{project}/locations/{location}/evaluationRuns/{evaluationRun}`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "generalIssues": { + "description": "Optional. General issues not specific to any agent.", + "items": { + "$ref": "QualityReportIssue" + }, + "type": "array" + }, + "issues": { + "description": "Optional. The issues grouped by agent.", + "items": { + "$ref": "QualityReportAgentIssues" + }, + "type": "array" + } + }, + "type": "object" + }, + "QualityReportAgentIssues": { + "description": "Issues identified for a single agent.", + "id": "QualityReportAgentIssues", + "properties": { + "agent": { + "description": "Optional. The name of the agent to which the issues are related. Format: `projects/{project}/locations/{location}/apps/{app}/agents/{agent}`", + "type": "string" + }, + "issues": { + "description": "Optional. List of issues found for this agent.", + "items": { + "$ref": "QualityReportIssue" + }, + "type": "array" + } + }, + "type": "object" + }, + "QualityReportIssue": { + "description": "The issue identified.", + "id": "QualityReportIssue", + "properties": { + "description": { + "description": "Optional. Description of the issue found.", + "type": "string" + }, + "occurrenceCount": { + "description": "Optional. How many times this issue occurred.", + "format": "int32", + "type": "integer" + }, + "proposedSolution": { + "description": "Optional. Proposed solution to fix the issue by modifying instructions or tools.", + "type": "string" + } + }, + "type": "object" + }, "RedactionConfig": { "description": "Configuration to instruct how sensitive data should be handled.", "id": "RedactionConfig", @@ -9754,6 +10697,38 @@ }, "type": "object" }, + "SecuritySettings": { + "description": "Project/Location level security settings for CES.", + "id": "SecuritySettings", + "properties": { + "createTime": { + "description": "Output only. Create time of the security settings.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endpointControlPolicy": { + "$ref": "EndpointControlPolicy", + "description": "Optional. Endpoint control related settings." + }, + "etag": { + "description": "Output only. Etag of the security settings.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The unique identifier of the security settings. Format: `projects/{project}/locations/{location}/securitySettings`", + "type": "string" + }, + "updateTime": { + "description": "Output only. Last update time of the security settings.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ServiceAccountAuthConfig": { "description": "Configurations for authentication using a custom service account.", "id": "ServiceAccountAuthConfig", @@ -9797,8 +10772,12 @@ "description": "Optional. The deployment of the app to use for the session. Format: `projects/{project}/locations/{location}/apps/{app}/deployments/{deployment}`", "type": "string" }, + "enableTextStreaming": { + "description": "Optional. Whether to enable streaming text outputs from the model. By default, text outputs from the model are collected before sending to the client. NOTE: This is only supported for text (non-voice) sessions via StreamRunSession or BidiRunSession.", + "type": "boolean" + }, "entryAgent": { - "description": "Optional. The entry agent to handle the session. If not specified, the session will be handled by the root agent of the app. Format: `projects/{project}/locations/{location}/agents/{agent}`", + "description": "Optional. The entry agent to handle the session. If not specified, the session will be handled by the root agent of the app. Format: `projects/{project}/locations/{location}/apps/{app}/agents/{agent}`", "type": "string" }, "historicalContexts": { @@ -9823,6 +10802,10 @@ "timeZone": { "description": "Optional. The time zone of the user. If provided, the agent will use the time zone for date and time related variables. Otherwise, the agent will use the time zone specified in the App.time_zone_settings. The format is the IANA Time Zone Database time zone, e.g. \"America/Los_Angeles\".", "type": "string" + }, + "useToolFakes": { + "description": "Optional. Whether to use tool fakes for the session. If this field is set, the agent will attempt use tool fakes instead of calling the real tools.", + "type": "boolean" } }, "type": "object" @@ -10139,7 +11122,7 @@ "id": "TlsConfigCaCert", "properties": { "cert": { - "description": "Required. The allowed custom CA certificates (in DER format) for HTTPS verification. This overrides the default SSL trust store. If this is empty or unspecified, CES will use Google's default trust store to verify certificates. N.B. Make sure the HTTPS server certificates are signed with \"subject alt name\". For instance a certificate can be self-signed using the following command, openssl x509 -req -days 200 -in example.com.csr \\ -signkey example.com.key \\ -out example.com.crt \\ -extfile <(printf \"\\nsubjectAltName='DNS:www.example.com'\")", + "description": "Required. The allowed custom CA certificates (in DER format) for HTTPS verification. This overrides the default SSL trust store. If this is empty or unspecified, CES will use Google's default trust store to verify certificates. N.B. Make sure the HTTPS server certificates are signed with \"subject alt name\". For instance a certificate can be self-signed using the following command: ``` openssl x509 -req -days 200 -in example.com.csr \\ -signkey example.com.key \\ -out example.com.crt \\ -extfile <(printf \"\\nsubjectAltName='DNS:www.example.com'\") ```", "format": "byte", "type": "string" }, @@ -10154,6 +11137,10 @@ "description": "A tool represents an action that the CES agent can take to achieve certain goals.", "id": "Tool", "properties": { + "agentTool": { + "$ref": "AgentTool", + "description": "Optional. The agent tool." + }, "clientFunction": { "$ref": "ClientFunction", "description": "Optional. The client function." @@ -10213,7 +11200,7 @@ "description": "Optional. The MCP tool. An MCP tool cannot be created or updated directly and is managed by the MCP toolset." }, "name": { - "description": "Identifier. The unique identifier of the tool. Format: - `projects/{project}/locations/{location}/apps/{app}/tools/{tool}` for ## standalone tools. `projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool}` for tools retrieved from a toolset. These tools are dynamic and output-only, they cannot be referenced directly where a tool is expected.", + "description": "Identifier. The resource name of the tool. Format: * `projects/{project}/locations/{location}/apps/{app}/tools/{tool}` for standalone tools. * `projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool}` for tools retrieved from a toolset. These tools are dynamic and output-only; they cannot be referenced directly where a tool is expected.", "type": "string" }, "openApiTool": { @@ -10561,6 +11548,42 @@ }, "type": "object" }, + "UploadEvaluationAudioRequest": { + "description": "Request message for EvaluationService.UploadEvaluationAudio.", + "id": "UploadEvaluationAudioRequest", + "properties": { + "audioContent": { + "description": "Required. The raw audio bytes. The format of the audio must be single-channel LINEAR16 with a sample rate of 16kHz (default InputAudioConfig).", + "format": "byte", + "type": "string" + }, + "previousAudioGcsUri": { + "description": "Optional. The Google Cloud Storage URI of the previously uploaded audio file to be deleted. Format: `gs:///`", + "type": "string" + } + }, + "type": "object" + }, + "UploadEvaluationAudioResponse": { + "description": "Response message for EvaluationService.UploadEvaluationAudio.", + "id": "UploadEvaluationAudioResponse", + "properties": { + "audioGcsUri": { + "description": "The Google Cloud Storage URI where the uploaded audio file is stored. Format: `gs:///`", + "type": "string" + }, + "duration": { + "description": "The duration of the audio.", + "format": "google-duration", + "type": "string" + }, + "transcript": { + "description": "The transcript of the audio, generated by Cloud Speech-to-Text.", + "type": "string" + } + }, + "type": "object" + }, "WebSearchQuery": { "description": "Represents a single web search query and its associated search uri.", "id": "WebSearchQuery", @@ -10580,6 +11603,10 @@ "description": "Represents a widget tool that the agent can invoke. When the tool is chosen by the agent, agent will return the widget to the client. The client is responsible for processing the widget and generating the next user query to continue the interaction with the agent.", "id": "WidgetTool", "properties": { + "dataMapping": { + "$ref": "WidgetToolDataMapping", + "description": "Optional. The mapping that defines how data from a source tool is mapped to the widget's input parameters." + }, "description": { "description": "Optional. The description of the widget tool.", "type": "string" @@ -10592,6 +11619,18 @@ "$ref": "Schema", "description": "Optional. The input parameters of the widget tool." }, + "textResponseConfig": { + "$ref": "WidgetToolTextResponseConfig", + "description": "Optional. Configuration for always-included text responses." + }, + "uiConfig": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. Configuration for rendering the widget.", + "type": "object" + }, "widgetType": { "description": "Optional. The type of the widget tool. If not specified, the default type will be CUSTOMIZED.", "enum": [ @@ -10628,6 +11667,78 @@ } }, "type": "object" + }, + "WidgetToolDataMapping": { + "description": "Configuration for mapping data from a source tool to the widget's input parameters.", + "id": "WidgetToolDataMapping", + "properties": { + "fieldMappings": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A map of widget input parameter fields to the corresponding output fields of the source tool.", + "type": "object" + }, + "mode": { + "description": "Optional. The mode of the data mapping.", + "enum": [ + "MODE_UNSPECIFIED", + "FIELD_MAPPING", + "PYTHON_SCRIPT" + ], + "enumDescriptions": [ + "Unspecified mode.", + "Use the `field_mappings` map for data transformation.", + "Use the `python_script` for data transformation." + ], + "type": "string" + }, + "pythonFunction": { + "$ref": "PythonFunction", + "description": "Optional. Configuration for a Python function used to transform the source tool's output into the widget's input format." + }, + "pythonScript": { + "deprecated": true, + "description": "Deprecated: Use `python_function` instead.", + "type": "string" + }, + "sourceToolName": { + "description": "Optional. The resource name of the tool that provides the data for the widget (e.g., a search tool or a custom function). Format: `projects/{project}/locations/{location}/agents/{agent}/tools/{tool}`", + "type": "string" + } + }, + "type": "object" + }, + "WidgetToolTextResponseConfig": { + "description": "Configuration for the text response returned with the widget.", + "id": "WidgetToolTextResponseConfig", + "properties": { + "staticText": { + "description": "Optional. The static text response to return when type is STATIC.", + "type": "string" + }, + "textResponseInstruction": { + "description": "Optional. Instruction for the LLM on how to generate the text response. Used as the description for the text response parameter if type is LLM_GENERATED.", + "type": "string" + }, + "type": { + "description": "Optional. The strategy for providing the text response.", + "enum": [ + "TYPE_UNSPECIFIED", + "NONE", + "LLM_GENERATED", + "STATIC" + ], + "enumDescriptions": [ + "Unspecified type.", + "The LLM dynamically decides whether to generate a text response alongside the widget based on the conversation context.", + "The LLM is explicitly required to generate a text response.", + "A pre-defined static text response is always used." + ], + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/discovery/chat-v1.json b/discovery/chat-v1.json index bbd4fc25b8c..fe7ec2a10dc 100644 --- a/discovery/chat-v1.json +++ b/discovery/chat-v1.json @@ -23,6 +23,9 @@ "https://www.googleapis.com/auth/chat.app.memberships": { "description": "On their own behalf, apps in Google Chat can see, add, update, and remove members from conversations and spaces" }, + "https://www.googleapis.com/auth/chat.app.memberships.readonly": { + "description": "On their own behalf, apps in Google Chat can see members of conversations and spaces" + }, "https://www.googleapis.com/auth/chat.app.messages.readonly": { "description": "On their own behalf, apps in Google Chat can see all messages and their associated reactions and message content" }, @@ -32,6 +35,9 @@ "https://www.googleapis.com/auth/chat.app.spaces.create": { "description": "On their own behalf, apps in Google Chat can create conversations and spaces" }, + "https://www.googleapis.com/auth/chat.app.spaces.readonly": { + "description": "On their own behalf, apps in Google Chat can see conversations and spaces and their metadata (including history settings and access settings)" + }, "https://www.googleapis.com/auth/chat.bot": { "description": "Private Service: https://www.googleapis.com/auth/chat.bot" }, @@ -89,6 +95,12 @@ "https://www.googleapis.com/auth/chat.users.readstate.readonly": { "description": "View last read time for Google Chat conversations" }, + "https://www.googleapis.com/auth/chat.users.sections": { + "description": "View, create, update, and delete your sections in Google Chat; move and list your section items in Google Chat" + }, + "https://www.googleapis.com/auth/chat.users.sections.readonly": { + "description": "View your sections and their section items in Google Chat" + }, "https://www.googleapis.com/auth/chat.users.spacesettings": { "description": "Read and update your space settings" } @@ -491,6 +503,55 @@ "https://www.googleapis.com/auth/chat.spaces.readonly" ] }, + "findGroupChats": { + "description": "Returns all spaces with `spaceType == GROUP_CHAT`, whose human memberships contain exactly the calling user, and the users specified in `FindGroupChatsRequest.users`. Only members that have joined the conversation are supported. For an example, see [Find group chats](https://developers.google.com/workspace/chat/find-group-chats). If the calling user blocks, or is blocked by, some users, and no spaces with the entire specified set of users are found, this method returns spaces that don't include the blocked or blocking users. The specified set of users must contain only human (non-app) memberships. A request that contains non-human users doesn't return any spaces. Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following [authorization scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships`", + "flatPath": "v1/spaces:findGroupChats", + "httpMethod": "GET", + "id": "chat.spaces.findGroupChats", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of spaces to return. The service might return fewer than this value. If unspecified, at most 10 spaces are returned. The maximum value is 30. If you use a value more than 30, it's automatically changed to 30. Negative values return an `INVALID_ARGUMENT` error.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous call to find group chats. Provide this parameter to retrieve the subsequent page. When paginating, all other parameters provided should match the call that provided the token. Passing different values may lead to unexpected results.", + "location": "query", + "type": "string" + }, + "spaceView": { + "description": "Requested space view type. If unset, defaults to `SPACE_VIEW_RESOURCE_NAME_ONLY`. Requests that specify `SPACE_VIEW_EXPANDED` must include scopes that allow reading space data, for example, https://www.googleapis.com/auth/chat.spaces or https://www.googleapis.com/auth/chat.spaces.readonly.", + "enum": [ + "SPACE_VIEW_UNSPECIFIED", + "SPACE_VIEW_RESOURCE_NAME_ONLY", + "SPACE_VIEW_EXPANDED" + ], + "enumDescriptions": [ + "The default / unset value.", + "Populates only the Space resource name.", + "Populates Space resource fields. Note: the `permissionSettings` field will not be populated. Requests that specify SPACE_VIEW_EXPANDED must include scopes that allow reading space data, for example, https://www.googleapis.com/auth/chat.spaces or https://www.googleapis.com/auth/chat.spaces.readonly." + ], + "location": "query", + "type": "string" + }, + "users": { + "description": "Optional. Resource names of all human users in group chat with the calling user. Chat apps can't be included in the request. The maximum number of users that can be specified in a single request is `49`. Format: `users/{user}`, where `{user}` is either the `id` for the [person](https://developers.google.com/people/api/rest/v1/people) from the People API, or the `id` for the [user](https://developers.google.com/admin-sdk/directory/reference/rest/v1/users) in the Directory API. For example, to find all group chats with the calling user and two other users, with People API profile IDs `123456789` and `987654321`, you can use `users/123456789` and `users/987654321`. You can also use the email as an alias for `{user}`. For example, `users/example@gmail.com` where `example@gmail.com` is the email of the Google Chat user.", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "v1/spaces:findGroupChats", + "response": { + "$ref": "FindGroupChatsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/chat.memberships", + "https://www.googleapis.com/auth/chat.memberships.readonly" + ] + }, "get": { "description": "Returns details about a space. For an example, see [Get details about a space](https://developers.google.com/workspace/chat/get-spaces). Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.bot` - `https://www.googleapis.com/auth/chat.app.spaces` with [administrator approval](https://support.google.com/a?p=chat-app-auth) - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.spaces.readonly` - `https://www.googleapis.com/auth/chat.spaces` - User authentication grants administrator privileges when an administrator account authenticates, `use_admin_access` is `true`, and one of the following authorization scopes is used: - `https://www.googleapis.com/auth/chat.admin.spaces.readonly` - `https://www.googleapis.com/auth/chat.admin.spaces` App authentication has the following limitations: - `space.access_settings` is only populated when using the `chat.app.spaces` scope. - `space.predefind_permission_settings` and `space.permission_settings` are only populated when using the `chat.app.spaces` scope, and only for spaces the app created.", "flatPath": "v1/spaces/{spacesId}", @@ -642,7 +703,9 @@ }, "scopes": [ "https://www.googleapis.com/auth/chat.admin.spaces", - "https://www.googleapis.com/auth/chat.admin.spaces.readonly" + "https://www.googleapis.com/auth/chat.admin.spaces.readonly", + "https://www.googleapis.com/auth/chat.spaces", + "https://www.googleapis.com/auth/chat.spaces.readonly" ] }, "setup": { @@ -977,7 +1040,7 @@ ] }, "get": { - "description": "Returns details about a message. For an example, see [Get details about a message](https://developers.google.com/workspace/chat/get-messages). Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.bot`: When using this authorization scope, this method returns details about a message the Chat app has access to, like direct messages and [slash commands](https://developers.google.com/workspace/chat/slash-commands) that invoke the Chat app. - `https://www.googleapis.com/auth/chat.app.messages.readonly` with [administrator approval](https://support.google.com/a?p=chat-app-auth) (available in [Developer Preview](https://developers.google.com/workspace/preview)). When using this authentication scope, this method returns details about a public message in a space. - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` Note: Might return a message from a blocked member or space.", + "description": "Returns details about a message. For an example, see [Get details about a message](https://developers.google.com/workspace/chat/get-messages). Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.bot`: When using this authorization scope, this method returns details about a message the Chat app has access to, like direct messages and [slash commands](https://developers.google.com/workspace/chat/slash-commands) that invoke the Chat app. - `https://www.googleapis.com/auth/chat.app.messages.readonly` with [administrator approval](https://support.google.com/a?p=chat-app-auth). When using this authentication scope, this method returns details about a public message in a space. - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` Note: Might return a message from a blocked member or space.", "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", "httpMethod": "GET", "id": "chat.spaces.messages.get", @@ -1005,7 +1068,7 @@ ] }, "list": { - "description": "Lists messages in a space that the caller is a member of, including messages from blocked members and spaces. System messages, like those announcing new space members, aren't included. If you list messages from a space with no messages, the response is an empty object. When using a REST/HTTP interface, the response contains an empty JSON object, `{}`. For an example, see [List messages](https://developers.google.com/workspace/chat/api/guides/v1/messages/list). Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with [administrator approval](https://support.google.com/a?p=chat-app-auth) in [Developer Preview](https://developers.google.com/workspace/preview) with the authorization scope: - `https://www.googleapis.com/auth/chat.app.messages.readonly`. When using this authentication scope, this method only returns public messages in a space. It doesn't include private messages. - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` - `https://www.googleapis.com/auth/chat.import` (import mode spaces only)", + "description": "Lists messages in a space that the caller is a member of, including messages from blocked members and spaces. System messages, like those announcing new space members, aren't included. If you list messages from a space with no messages, the response is an empty object. When using a REST/HTTP interface, the response contains an empty JSON object, `{}`. For an example, see [List messages](https://developers.google.com/workspace/chat/api/guides/v1/messages/list). Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with [administrator approval](https://support.google.com/a?p=chat-app-auth) with the authorization scope: - `https://www.googleapis.com/auth/chat.app.messages.readonly`. When using this authentication scope, this method only returns public messages in a space. It doesn't include private messages. - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` - `https://www.googleapis.com/auth/chat.import` (import mode spaces only)", "flatPath": "v1/spaces/{spacesId}/messages", "httpMethod": "GET", "id": "chat.spaces.messages.list", @@ -1282,7 +1345,7 @@ "spaceEvents": { "methods": { "get": { - "description": "Returns an event from a Google Chat space. The [event payload](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.spaceEvents#SpaceEvent.FIELDS.oneof_payload) contains the most recent version of the resource that changed. For example, if you request an event about a new message but the message was later updated, the server returns the updated `Message` resource in the event payload. Note: The `permissionSettings` field is not returned in the Space object of the Space event data for this request. Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize) with an [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes) appropriate for reading the requested data: - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with [administrator approval](https://support.google.com/a?p=chat-app-auth) in [Developer Preview](https://developers.google.com/workspace/preview) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.app.spaces` - `https://www.googleapis.com/auth/chat.app.messages.readonly` - `https://www.googleapis.com/auth/chat.app.memberships` - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.spaces.readonly` - `https://www.googleapis.com/auth/chat.spaces` - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` - `https://www.googleapis.com/auth/chat.messages.reactions.readonly` - `https://www.googleapis.com/auth/chat.messages.reactions` - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` To get an event, the authenticated caller must be a member of the space. For an example, see [Get details about an event from a Google Chat space](https://developers.google.com/workspace/chat/get-space-event).", + "description": "Returns an event from a Google Chat space. The [event payload](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.spaceEvents#SpaceEvent.FIELDS.oneof_payload) contains the most recent version of the resource that changed. For example, if you request an event about a new message but the message was later updated, the server returns the updated `Message` resource in the event payload. Note: The `permissionSettings` field is not returned in the Space object of the Space event data for this request. Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize) with an [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes) appropriate for reading the requested data: - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with [administrator approval](https://support.google.com/a?p=chat-app-auth) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.app.spaces` - `https://www.googleapis.com/auth/chat.app.spaces.readonly` - `https://www.googleapis.com/auth/chat.app.messages.readonly` - `https://www.googleapis.com/auth/chat.app.memberships` - `https://www.googleapis.com/auth/chat.app.memberships.readonly` - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.spaces.readonly` - `https://www.googleapis.com/auth/chat.spaces` - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` - `https://www.googleapis.com/auth/chat.messages.reactions.readonly` - `https://www.googleapis.com/auth/chat.messages.reactions` - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` To get an event, the authenticated caller must be a member of the space. For an example, see [Get details about an event from a Google Chat space](https://developers.google.com/workspace/chat/get-space-event).", "flatPath": "v1/spaces/{spacesId}/spaceEvents/{spaceEventsId}", "httpMethod": "GET", "id": "chat.spaces.spaceEvents.get", @@ -1304,8 +1367,10 @@ }, "scopes": [ "https://www.googleapis.com/auth/chat.app.memberships", + "https://www.googleapis.com/auth/chat.app.memberships.readonly", "https://www.googleapis.com/auth/chat.app.messages.readonly", "https://www.googleapis.com/auth/chat.app.spaces", + "https://www.googleapis.com/auth/chat.app.spaces.readonly", "https://www.googleapis.com/auth/chat.memberships", "https://www.googleapis.com/auth/chat.memberships.readonly", "https://www.googleapis.com/auth/chat.messages", @@ -1317,7 +1382,7 @@ ] }, "list": { - "description": "Lists events from a Google Chat space. For each event, the [payload](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.spaceEvents#SpaceEvent.FIELDS.oneof_payload) contains the most recent version of the Chat resource. For example, if you list events about new space members, the server returns `Membership` resources that contain the latest membership details. If new members were removed during the requested period, the event payload contains an empty `Membership` resource. Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize) with an [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes) appropriate for reading the requested data: - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with [administrator approval](https://support.google.com/a?p=chat-app-auth) in [Developer Preview](https://developers.google.com/workspace/preview) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.app.spaces` - `https://www.googleapis.com/auth/chat.app.messages.readonly` - `https://www.googleapis.com/auth/chat.app.memberships` - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.spaces.readonly` - `https://www.googleapis.com/auth/chat.spaces` - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` - `https://www.googleapis.com/auth/chat.messages.reactions.readonly` - `https://www.googleapis.com/auth/chat.messages.reactions` - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` To list events, the authenticated caller must be a member of the space. For an example, see [List events from a Google Chat space](https://developers.google.com/workspace/chat/list-space-events).", + "description": "Lists events from a Google Chat space. For each event, the [payload](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.spaceEvents#SpaceEvent.FIELDS.oneof_payload) contains the most recent version of the Chat resource. For example, if you list events about new space members, the server returns `Membership` resources that contain the latest membership details. If new members were removed during the requested period, the event payload contains an empty `Membership` resource. Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize) with an [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes) appropriate for reading the requested data: - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with [administrator approval](https://support.google.com/a?p=chat-app-auth) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.app.spaces` - `https://www.googleapis.com/auth/chat.app.spaces.readonly` - `https://www.googleapis.com/auth/chat.app.messages.readonly` - `https://www.googleapis.com/auth/chat.app.memberships` - `https://www.googleapis.com/auth/chat.app.memberships.readonly` - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.spaces.readonly` - `https://www.googleapis.com/auth/chat.spaces` - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` - `https://www.googleapis.com/auth/chat.messages.reactions.readonly` - `https://www.googleapis.com/auth/chat.messages.reactions` - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` To list events, the authenticated caller must be a member of the space. For an example, see [List events from a Google Chat space](https://developers.google.com/workspace/chat/list-space-events).", "flatPath": "v1/spaces/{spacesId}/spaceEvents", "httpMethod": "GET", "id": "chat.spaces.spaceEvents.list", @@ -1355,8 +1420,10 @@ }, "scopes": [ "https://www.googleapis.com/auth/chat.app.memberships", + "https://www.googleapis.com/auth/chat.app.memberships.readonly", "https://www.googleapis.com/auth/chat.app.messages.readonly", "https://www.googleapis.com/auth/chat.app.spaces", + "https://www.googleapis.com/auth/chat.app.spaces.readonly", "https://www.googleapis.com/auth/chat.memberships", "https://www.googleapis.com/auth/chat.memberships.readonly", "https://www.googleapis.com/auth/chat.messages", @@ -1373,6 +1440,238 @@ }, "users": { "resources": { + "sections": { + "methods": { + "create": { + "description": "Creates a section in Google Chat. Sections help users group conversations and customize the list of spaces displayed in Chat navigation panel. Only sections of type `CUSTOM_SECTION` can be created. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections`", + "flatPath": "v1/users/{usersId}/sections", + "httpMethod": "POST", + "id": "chat.users.sections.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource name where the section is created. Format: `users/{user}`", + "location": "path", + "pattern": "^users/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/sections", + "request": { + "$ref": "GoogleChatV1Section" + }, + "response": { + "$ref": "GoogleChatV1Section" + }, + "scopes": [ + "https://www.googleapis.com/auth/chat.users.sections" + ] + }, + "delete": { + "description": "Deletes a section of type `CUSTOM_SECTION`. If the section contains items, such as spaces, the items are moved to Google Chat's default sections and are not deleted. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections`", + "flatPath": "v1/users/{usersId}/sections/{sectionsId}", + "httpMethod": "DELETE", + "id": "chat.users.sections.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the section to delete. Format: `users/{user}/sections/{section}`", + "location": "path", + "pattern": "^users/[^/]+/sections/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/chat.users.sections" + ] + }, + "list": { + "description": "Lists sections available to the Chat user. Sections help users group their conversations and customize the list of spaces displayed in Chat navigation panel. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections` - `https://www.googleapis.com/auth/chat.users.sections.readonly`", + "flatPath": "v1/users/{usersId}/sections", + "httpMethod": "GET", + "id": "chat.users.sections.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of sections to return. The service may return fewer than this value. If unspecified, at most 10 sections will be returned. The maximum value is 100. If you use a value more than 100, it's automatically changed to 100. Negative values return an `INVALID_ARGUMENT` error.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous list sections call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters might lead to unexpected results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent, which is the user resource name that owns this collection of sections. Only supports listing sections for the calling user. To refer to the calling user, set one of the following: - The `me` alias. For example, `users/me`. - Their Workspace email address. For example, `users/user@example.com`. - Their user id. For example, `users/123456789`. Format: `users/{user}`", + "location": "path", + "pattern": "^users/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/sections", + "response": { + "$ref": "ListSectionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/chat.users.sections", + "https://www.googleapis.com/auth/chat.users.sections.readonly" + ] + }, + "patch": { + "description": "Updates a section. Only sections of type `CUSTOM_SECTION` can be updated. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections`", + "flatPath": "v1/users/{usersId}/sections/{sectionsId}", + "httpMethod": "PATCH", + "id": "chat.users.sections.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. Resource name of the section. For system sections, the section ID is a constant string: - DEFAULT_DIRECT_MESSAGES: `users/{user}/sections/default-direct-messages` - DEFAULT_SPACES: `users/{user}/sections/default-spaces` - DEFAULT_APPS: `users/{user}/sections/default-apps` Format: `users/{user}/sections/{section}`", + "location": "path", + "pattern": "^users/[^/]+/sections/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The mask to specify which fields to update. Currently supported field paths: - `display_name`", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleChatV1Section" + }, + "response": { + "$ref": "GoogleChatV1Section" + }, + "scopes": [ + "https://www.googleapis.com/auth/chat.users.sections" + ] + }, + "position": { + "description": "Changes the sort order of a section. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections`", + "flatPath": "v1/users/{usersId}/sections/{sectionsId}:position", + "httpMethod": "POST", + "id": "chat.users.sections.position", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the section to position. Format: `users/{user}/sections/{section}`", + "location": "path", + "pattern": "^users/[^/]+/sections/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:position", + "request": { + "$ref": "PositionSectionRequest" + }, + "response": { + "$ref": "PositionSectionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/chat.users.sections" + ] + } + }, + "resources": { + "items": { + "methods": { + "list": { + "description": "Lists items in a section. Only spaces can be section items. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections` - `https://www.googleapis.com/auth/chat.users.sections.readonly`", + "flatPath": "v1/users/{usersId}/sections/{sectionsId}/items", + "httpMethod": "GET", + "id": "chat.users.sections.items.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A query filter. Currently only supports filtering by space. For example, `space = spaces/{space}`. Invalid queries are rejected with an `INVALID_ARGUMENT` error.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of section items to return. The service may return fewer than this value. If unspecified, at most 10 section items will be returned. The maximum value is 100. If you use a value more than 100, it's automatically changed to 100. Negative values return an `INVALID_ARGUMENT` error.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous list section items call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters might lead to unexpected results.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent, which is the section resource name that owns this collection of section items. Only supports listing section items for the calling user. When you're filtering by space, use the wildcard `-` to search across all sections. For example, `users/{user}/sections/-`. Format: `users/{user}/sections/{section}`", + "location": "path", + "pattern": "^users/[^/]+/sections/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/items", + "response": { + "$ref": "ListSectionItemsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/chat.users.sections", + "https://www.googleapis.com/auth/chat.users.sections.readonly" + ] + }, + "move": { + "description": "Moves an item from one section to another. For example, if a section contains spaces, this method can be used to move a space to a different section. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections`", + "flatPath": "v1/users/{usersId}/sections/{sectionsId}/items/{itemsId}:move", + "httpMethod": "POST", + "id": "chat.users.sections.items.move", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the section item to move. Format: `users/{user}/sections/{section}/items/{item}`", + "location": "path", + "pattern": "^users/[^/]+/sections/[^/]+/items/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:move", + "request": { + "$ref": "MoveSectionItemRequest" + }, + "response": { + "$ref": "MoveSectionItemResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/chat.users.sections" + ] + } + } + } + } + }, "spaces": { "methods": { "getSpaceReadState": { @@ -1535,7 +1834,7 @@ } } }, - "revision": "20260205", + "revision": "20260428", "rootUrl": "https://chat.googleapis.com/", "schemas": { "AccessSettings": { @@ -1950,7 +2249,7 @@ "type": "object" }, "CardWithId": { - "description": "A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Only Chat apps can create cards. If your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), the message can't contain cards. [Card builder](https://addons.gsuite.google.com/uikit/builder)", + "description": "A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)", "id": "CardWithId", "properties": { "card": { @@ -2440,6 +2739,24 @@ "properties": {}, "type": "object" }, + "FindGroupChatsResponse": { + "description": "A response containing group chat spaces with exactly the calling user and the requested users.", + "id": "FindGroupChatsResponse", + "properties": { + "nextPageToken": { + "description": "A token that you can send as `pageToken` to retrieve the next page of results. If empty, there are no subsequent pages.", + "type": "string" + }, + "spaces": { + "description": "List of spaces in the requested (or first) page.", + "items": { + "$ref": "Space" + }, + "type": "array" + } + }, + "type": "object" + }, "FormAction": { "description": "A form action describes the behavior when the form is submitted. For example, you can invoke Apps Script to handle the form.", "id": "FormAction", @@ -2641,7 +2958,7 @@ "type": "object" }, "GoogleAppsCardV1Card": { - "description": "A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. Any widgets beyond this limit are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app** ![Example contact card](https://developers.google.com/workspace/chat/images/card_api_reference.png) To create the sample card message in Google Chat, use the following JSON: ``` { \"cardsV2\": [ { \"cardId\": \"unique-card-id\", \"card\": { \"header\": { \"title\": \"Sasha\", \"subtitle\": \"Software Engineer\", \"imageUrl\": \"https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png\", \"imageType\": \"CIRCLE\", \"imageAltText\": \"Avatar for Sasha\" }, \"sections\": [ { \"header\": \"Contact Info\", \"collapsible\": true, \"uncollapsibleWidgetsCount\": 1, \"widgets\": [ { \"decoratedText\": { \"startIcon\": { \"knownIcon\": \"EMAIL\" }, \"text\": \"sasha@example.com\" } }, { \"decoratedText\": { \"startIcon\": { \"knownIcon\": \"PERSON\" }, \"text\": \"Online\" } }, { \"decoratedText\": { \"startIcon\": { \"knownIcon\": \"PHONE\" }, \"text\": \"+1 (555) 555-1234\" } }, { \"buttonList\": { \"buttons\": [ { \"text\": \"Share\", \"onClick\": { \"openLink\": { \"url\": \"https://example.com/share\" } } }, { \"text\": \"Edit\", \"onClick\": { \"action\": { \"function\": \"goToView\", \"parameters\": [ { \"key\": \"viewType\", \"value\": \"EDIT\" } ] } } } ] } } ] } ] } } ] } ```", + "description": "A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app** ![Example contact card](https://developers.google.com/workspace/chat/images/card_api_reference.png) To create the sample card message in Google Chat, use the following JSON: ``` { \"cardsV2\": [ { \"cardId\": \"unique-card-id\", \"card\": { \"header\": { \"title\": \"Sasha\", \"subtitle\": \"Software Engineer\", \"imageUrl\": \"https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png\", \"imageType\": \"CIRCLE\", \"imageAltText\": \"Avatar for Sasha\" }, \"sections\": [ { \"header\": \"Contact Info\", \"collapsible\": true, \"uncollapsibleWidgetsCount\": 1, \"widgets\": [ { \"decoratedText\": { \"startIcon\": { \"knownIcon\": \"EMAIL\" }, \"text\": \"sasha@example.com\" } }, { \"decoratedText\": { \"startIcon\": { \"knownIcon\": \"PERSON\" }, \"text\": \"Online\" } }, { \"decoratedText\": { \"startIcon\": { \"knownIcon\": \"PHONE\" }, \"text\": \"+1 (555) 555-1234\" } }, { \"buttonList\": { \"buttons\": [ { \"text\": \"Share\", \"onClick\": { \"openLink\": { \"url\": \"https://example.com/share\" } } }, { \"text\": \"Edit\", \"onClick\": { \"action\": { \"function\": \"goToView\", \"parameters\": [ { \"key\": \"viewType\", \"value\": \"EDIT\" } ] } } } ] } } ] } ] } } ] } ```", "id": "GoogleAppsCardV1Card", "properties": { "cardActions": { @@ -4049,6 +4366,44 @@ }, "type": "object" }, + "GoogleChatV1Section": { + "description": "Represents a [section](https://support.google.com/chat/answer/16059854) in Google Chat. Sections help users organize their spaces. There are two types of sections: 1. **System Sections:** These are predefined sections managed by Google Chat. Their resource names are fixed, and they cannot be created, deleted, or have their `display_name` modified. Examples include: * `users/{user}/sections/default-direct-messages` * `users/{user}/sections/default-spaces` * `users/{user}/sections/default-apps` 2. **Custom Sections:** These are sections created and managed by the user. Creating a custom section using `CreateSection` **requires** a `display_name`. Custom sections can be updated using `UpdateSection` and deleted using `DeleteSection`.", + "id": "GoogleChatV1Section", + "properties": { + "displayName": { + "description": "Optional. The section's display name. Only populated for sections of type `CUSTOM_SECTION`. Supports up to 80 characters. Required when creating a `CUSTOM_SECTION`.", + "type": "string" + }, + "name": { + "description": "Identifier. Resource name of the section. For system sections, the section ID is a constant string: - DEFAULT_DIRECT_MESSAGES: `users/{user}/sections/default-direct-messages` - DEFAULT_SPACES: `users/{user}/sections/default-spaces` - DEFAULT_APPS: `users/{user}/sections/default-apps` Format: `users/{user}/sections/{section}`", + "type": "string" + }, + "sortOrder": { + "description": "Output only. The order of the section in relation to other sections. Sections with a lower `sort_order` value appear before sections with a higher value.", + "format": "int32", + "type": "integer" + }, + "type": { + "description": "Required. The type of the section.", + "enum": [ + "SECTION_TYPE_UNSPECIFIED", + "CUSTOM_SECTION", + "DEFAULT_DIRECT_MESSAGES", + "DEFAULT_SPACES", + "DEFAULT_APPS" + ], + "enumDescriptions": [ + "Unspecified section type.", + "Custom section.", + "Default section containing [DIRECT_MESSAGE](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces#spacetype) between two human users or [GROUP_CHAT](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces#spacetype) spaces that don't belong to any custom section.", + "Default spaces that don't belong to any custom section.", + "Default section containing a user's installed apps." + ], + "type": "string" + } + }, + "type": "object" + }, "Group": { "description": "A Google Group in Google Chat.", "id": "Group", @@ -4384,6 +4739,42 @@ }, "type": "object" }, + "ListSectionItemsResponse": { + "description": "Response message for listing section items.", + "id": "ListSectionItemsResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "sectionItems": { + "description": "The section items from the specified section.", + "items": { + "$ref": "SectionItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListSectionsResponse": { + "description": "Response message for listing sections.", + "id": "ListSectionsResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "sections": { + "description": "The sections from the specified user.", + "items": { + "$ref": "GoogleChatV1Section" + }, + "type": "array" + } + }, + "type": "object" + }, "ListSpaceEventsResponse": { "description": "Response message for listing space events.", "id": "ListSpaceEventsResponse", @@ -4693,7 +5084,7 @@ "type": "array" }, "cardsV2": { - "description": "Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Only Chat apps can create cards. If your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), the messages can't contain cards. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)", + "description": "Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder)", "items": { "$ref": "CardWithId" }, @@ -4732,7 +5123,7 @@ "type": "string" }, "formattedText": { - "description": "Output only. Contains the message `text` with markups added to communicate formatting. This field might not capture all formatting visible in the UI, but includes the following: * [Markup syntax](https://developers.google.com/workspace/chat/format-messages) for bold, italic, strikethrough, monospace, monospace block, and bulleted list. * [User mentions](https://developers.google.com/workspace/chat/format-messages#messages-@mention) using the format ``. * Custom hyperlinks using the format `<{url}|{rendered_text}>` where the first string is the URL and the second is the rendered text—for example, ``. * Custom emoji using the format `:{emoji_name}:`—for example, `:smile:`. This doesn't apply to Unicode emoji, such as `U+1F600` for a grinning face emoji. * Bullet list items using asterisks (`*`)—for example, `* item`. For more information, see [View text formatting sent in a message](https://developers.google.com/workspace/chat/format-messages#view_text_formatting_sent_in_a_message)", + "description": "Output only. Contains the message `text` with markups added to communicate formatting. This field might not capture all formatting visible in the UI, but includes the following: * [Markup syntax](https://developers.google.com/workspace/chat/format-messages) for bold, italic, strikethrough, monospace, monospace block, bulleted list, and block quote. * [User mentions](https://developers.google.com/workspace/chat/format-messages#messages-@mention) using the format ``. * Custom hyperlinks using the format `<{url}|{rendered_text}>` where the first string is the URL and the second is the rendered text—for example, ``. * Custom emoji using the format `:{emoji_name}:`—for example, `:smile:`. This doesn't apply to Unicode emoji, such as `U+1F600` for a grinning face emoji. * Bullet list items using asterisks (`*`)—for example, `* item`. For more information, see [View text formatting sent in a message](https://developers.google.com/workspace/chat/format-messages#view_text_formatting_sent_in_a_message)", "readOnly": true, "type": "string" }, @@ -4744,7 +5135,7 @@ }, "matchedUrl": { "$ref": "MatchedUrl", - "description": "Output only. A URL in `spaces.messages.text` that matches a link preview pattern. For more information, see [Preview links](https://developers.google.com/workspace/chat/preview-links).", + "description": "Output only. A URL in the Chat message `text` field that matches a link preview pattern. For more information, see [Preview links](https://developers.google.com/workspace/chat/preview-links).", "readOnly": true }, "name": { @@ -4865,6 +5256,28 @@ }, "type": "object" }, + "MoveSectionItemRequest": { + "description": "Request message for moving a section item across sections.", + "id": "MoveSectionItemRequest", + "properties": { + "targetSection": { + "description": "Required. The resource name of the section to move the section item to. Format: `users/{user}/sections/{section}`", + "type": "string" + } + }, + "type": "object" + }, + "MoveSectionItemResponse": { + "description": "Response message for moving a section item.", + "id": "MoveSectionItemResponse", + "properties": { + "sectionItem": { + "$ref": "SectionItem", + "description": "The updated section item." + } + }, + "type": "object" + }, "OnClick": { "description": "An `onclick` action (for example, open a link).", "id": "OnClick", @@ -4950,6 +5363,43 @@ }, "type": "object" }, + "PositionSectionRequest": { + "description": "Request message for positioning a section.", + "id": "PositionSectionRequest", + "properties": { + "relativePosition": { + "description": "Optional. The relative position of the section in the list of sections.", + "enum": [ + "POSITION_UNSPECIFIED", + "START", + "END" + ], + "enumDescriptions": [ + "Unspecified position.", + "Start of the list of sections.", + "End of the list of sections." + ], + "type": "string" + }, + "sortOrder": { + "description": "Optional. The absolute position of the section in the list of sections. The position must be greater than 0. If the position is greater than the number of sections, the section will be appended to the end of the list. This operation inserts the section at the given position and shifts the original section at that position, and those below it, to the next position.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "PositionSectionResponse": { + "description": "Response message for positioning a section.", + "id": "PositionSectionResponse", + "properties": { + "section": { + "$ref": "GoogleChatV1Section", + "description": "The updated section." + } + }, + "type": "object" + }, "QuotedMessageMetadata": { "description": "Information about a message that another message quotes. When you create a message, you can quote messages within the same thread, or quote a root message to create a new root message. However, you can't quote a message reply from a different thread. When you update a message, you can't add or replace the `quotedMessageMetadata` field, but you can remove it. For example usage, see [Quote another message](https://developers.google.com/workspace/chat/create-messages#quote-a-message).", "id": "QuotedMessageMetadata", @@ -5184,6 +5634,21 @@ }, "type": "object" }, + "SectionItem": { + "description": "A user's defined section item. This is used to represent section items, such as spaces, grouped under a section.", + "id": "SectionItem", + "properties": { + "name": { + "description": "Identifier. The resource name of the section item. Format: `users/{user}/sections/{section}/items/{item}`", + "type": "string" + }, + "space": { + "description": "Optional. The space resource name. Format: `spaces/{space}`", + "type": "string" + } + }, + "type": "object" + }, "SelectionItems": { "description": "List of widget autocomplete results.", "id": "SelectionItems", diff --git a/discovery/chromemanagement-v1.json b/discovery/chromemanagement-v1.json index 3b209889877..d02008a9664 100644 --- a/discovery/chromemanagement-v1.json +++ b/discovery/chromemanagement-v1.json @@ -504,6 +504,148 @@ } } }, + "connectorConfigs": { + "methods": { + "create": { + "description": "Creates a connector config.", + "flatPath": "v1/customers/{customersId}/connectorConfigs", + "httpMethod": "POST", + "id": "chromemanagement.customers.connectorConfigs.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "connectorConfigId": { + "description": "Optional. ID to use for the connector config, which becomes the final component of the connector config's resource name. If provided, the ID must be 1-63 characters long, and contain only lowercase letters, digits, and hyphens. It must start with a letter, and end with a letter or number. If not provided, the connector config will be assigned a random UUID.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Format: customers/{customer}", + "location": "path", + "pattern": "^customers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/connectorConfigs", + "request": { + "$ref": "GoogleChromeManagementVersionsV1ConnectorConfig" + }, + "response": { + "$ref": "GoogleChromeManagementVersionsV1ConnectorConfig" + } + }, + "delete": { + "description": "Deletes a connector config.", + "flatPath": "v1/customers/{customersId}/connectorConfigs/{connectorConfigsId}", + "httpMethod": "DELETE", + "id": "chromemanagement.customers.connectorConfigs.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Format: customers/{customer}/connectorConfigs/{connector_config}", + "location": "path", + "pattern": "^customers/[^/]+/connectorConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + } + }, + "get": { + "description": "Gets a connector config with customer ID and config ID.", + "flatPath": "v1/customers/{customersId}/connectorConfigs/{connectorConfigsId}", + "httpMethod": "GET", + "id": "chromemanagement.customers.connectorConfigs.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Format: customers/{customer}/connectorConfigs/{connector_config}", + "location": "path", + "pattern": "^customers/[^/]+/connectorConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleChromeManagementVersionsV1ConnectorConfig" + } + }, + "list": { + "description": "Lists connector configs of a customer.", + "flatPath": "v1/customers/{customersId}/connectorConfigs", + "httpMethod": "GET", + "id": "chromemanagement.customers.connectorConfigs.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of connector configs to return. The default page size is 50 if page_size is unspecified, and the maximum page size allowed is 100. Values above 100 will be capped at 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListConnectorConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConnectorConfigs` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Format: customers/{customer}", + "location": "path", + "pattern": "^customers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/connectorConfigs", + "response": { + "$ref": "GoogleChromeManagementVersionsV1ListConnectorConfigsResponse" + } + }, + "patch": { + "description": "Updates a connector config.", + "flatPath": "v1/customers/{customersId}/connectorConfigs/{connectorConfigsId}", + "httpMethod": "PATCH", + "id": "chromemanagement.customers.connectorConfigs.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. Format: customers/{customer}/connectorConfigs/{connector_config}", + "location": "path", + "pattern": "^customers/[^/]+/connectorConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The update mask that can be used to specify which fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleChromeManagementVersionsV1ConnectorConfig" + }, + "response": { + "$ref": "GoogleChromeManagementVersionsV1ConnectorConfig" + } + } + } + }, "profiles": { "methods": { "delete": { @@ -1786,7 +1928,7 @@ } } }, - "revision": "20260123", + "revision": "20260424", "rootUrl": "https://chromemanagement.googleapis.com/", "schemas": { "GoogleChromeManagementV1AndroidAppInfo": { @@ -1830,6 +1972,14 @@ "readOnly": true, "type": "string" }, + "categoryIds": { + "description": "Output only. The category IDs of the app, which are the same as stored in the Web Store item. It's expected that there is only one category ID.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "chromeAppInfo": { "$ref": "GoogleChromeManagementV1ChromeAppInfo", "description": "Output only. Chrome Web Store app information.", @@ -6187,6 +6337,186 @@ "properties": {}, "type": "object" }, + "GoogleChromeManagementVersionsV1ConnectorConfig": { + "description": "A representation of a connector config.", + "id": "GoogleChromeManagementVersionsV1ConnectorConfig", + "properties": { + "details": { + "$ref": "GoogleChromeManagementVersionsV1ConnectorConfigDetails", + "description": "Required. The details of the connector config." + }, + "displayName": { + "description": "Required. The display name of the config.", + "type": "string" + }, + "name": { + "description": "Identifier. Format: customers/{customer}/connectorConfigs/{connector_config}", + "type": "string" + }, + "status": { + "$ref": "GoogleChromeManagementVersionsV1ConnectorConfigStatus", + "description": "Output only. The status of the connector config.", + "readOnly": true + }, + "type": { + "description": "Required. The type of the connector.", + "enum": [ + "CONNECTOR_TYPE_UNSPECIFIED", + "REPORTING", + "DEVICE_TRUST", + "XDR", + "IDENTITY_BASED_ENROLLMENT", + "CERTIFICATE_AUTHORITY", + "ROOT_STORE" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Reporting connector.", + "Device trust connector.", + "XDR connector.", + "Authentication connector.", + "Certificate authority connector. Not yet supported in the API.", + "Root certificate connector." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleChromeManagementVersionsV1ConnectorConfigDetails": { + "description": "The details of the connector config.", + "id": "GoogleChromeManagementVersionsV1ConnectorConfigDetails", + "properties": { + "crowdStrikeConfig": { + "$ref": "GoogleChromeManagementVersionsV1CrowdStrikeConfig", + "description": "CrowdStrike connector config." + }, + "crowdStrikeFalconNextGenConfig": { + "$ref": "GoogleChromeManagementVersionsV1CrowdStrikeFalconNextGenConfig", + "description": "CrowdStrike Falcon Next Gen connector config." + }, + "crowdStrikeXdrConfig": { + "$ref": "GoogleChromeManagementVersionsV1CrowdStrikeXdrConfig", + "description": "CrowdStrike XDR connector config." + }, + "deviceTrustConfig": { + "$ref": "GoogleChromeManagementVersionsV1DeviceTrustConfig", + "description": "Device trust connector config." + }, + "googleSecOpsConfig": { + "$ref": "GoogleChromeManagementVersionsV1GoogleSecOpsConfig", + "description": "Google SecOps connector config." + }, + "paloAltoNetworksConfig": { + "$ref": "GoogleChromeManagementVersionsV1PaloAltoNetworksConfig", + "description": "Palo Alto Networks connector config." + }, + "pubSubConfig": { + "$ref": "GoogleChromeManagementVersionsV1PubSubConfig", + "description": "Pub/Sub connector config." + }, + "pubSubXdrConfig": { + "$ref": "GoogleChromeManagementVersionsV1PubSubXdrConfig", + "description": "Pub/Sub XDR connector config." + }, + "splunkConfig": { + "$ref": "GoogleChromeManagementVersionsV1SplunkConfig", + "description": "Splunk connector config." + } + }, + "type": "object" + }, + "GoogleChromeManagementVersionsV1ConnectorConfigStatus": { + "description": "The status of the connector config.", + "id": "GoogleChromeManagementVersionsV1ConnectorConfigStatus", + "properties": { + "failureStartTime": { + "description": "Output only. Field recording time of the earliest failure since the last success event. This field is only set when the state is `DISABLED_BY_FAILURES`.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The state of the connector config. The connector state is disabled if the connector has not successfully sent an event in the last 24 hours.", + "enum": [ + "CONFIG_STATE_UNKNOWN", + "ENABLED", + "DISABLED_BY_FAILURES" + ], + "enumDescriptions": [ + "Default value.", + "The connector config is enabled.", + "The connector config is transiently disabled due to failures." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Field recording time of most recent modification of the status. For `ENABLED`, this is the time the status was changed to `ENABLED`. For `DISABLED_BY_FAILURES`, this is the time of the most recent failed attempt to send an event to this config.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleChromeManagementVersionsV1CrowdStrikeConfig": { + "description": "CrowdStrike connector config.", + "id": "GoogleChromeManagementVersionsV1CrowdStrikeConfig", + "properties": { + "apiKey": { + "description": "Required. Input only. API key to use on the ingestion API.", + "type": "string" + }, + "host": { + "description": "Required. Host to identify the customer specific server to receive the events.", + "type": "string" + }, + "reportingSettings": { + "$ref": "GoogleChromeManagementVersionsV1ReportingSettings", + "description": "Required. The reporting settings for the CrowdStrike config." + } + }, + "type": "object" + }, + "GoogleChromeManagementVersionsV1CrowdStrikeFalconNextGenConfig": { + "description": "CrowdStrike Falcon Next Gen connector config.", + "id": "GoogleChromeManagementVersionsV1CrowdStrikeFalconNextGenConfig", + "properties": { + "apiKey": { + "description": "Required. Input only. API key to use on the ingestion API.", + "type": "string" + }, + "host": { + "description": "Required. Host to identify the customer specific server to receive the events.", + "type": "string" + }, + "reportingSettings": { + "$ref": "GoogleChromeManagementVersionsV1ReportingSettings", + "description": "Required. The reporting settings for the CrowdStrike Falcon Next Gen config." + } + }, + "type": "object" + }, + "GoogleChromeManagementVersionsV1CrowdStrikeXdrConfig": { + "description": "CrowdStrike XDR connector config.", + "id": "GoogleChromeManagementVersionsV1CrowdStrikeXdrConfig", + "properties": { + "apiKey": { + "description": "Required. Input only. API key to use on the ingestion API.", + "type": "string" + }, + "host": { + "description": "Required. Host to identify the customer specific server to receive the events.", + "type": "string" + }, + "xdrSettings": { + "$ref": "GoogleChromeManagementVersionsV1XdrSettings", + "description": "Required. The XDR settings for the CrowdStrike XDR config." + } + }, + "type": "object" + }, "GoogleChromeManagementVersionsV1DeviceInfo": { "description": "Information of a device that runs a Chrome browser profile.", "id": "GoogleChromeManagementVersionsV1DeviceInfo", @@ -6222,6 +6552,69 @@ }, "type": "object" }, + "GoogleChromeManagementVersionsV1DeviceTrustConfig": { + "description": "Device trust config for device trust connectors.", + "id": "GoogleChromeManagementVersionsV1DeviceTrustConfig", + "properties": { + "scope": { + "description": "Required. The scope at which this configuration will be applied. Note that this only applies to Chrome browser, as in ChromeOS it's always applied.", + "enum": [ + "BROWSER_ENFORCEMENT_SCOPE_UNSPECIFIED", + "BROWSERS_ONLY", + "PROFILES_ONLY", + "BROWSERS_AND_PROFILES" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Only browsers are enforced.", + "Only profiles are enforced.", + "Both browsers and profiles are enforced." + ], + "type": "string" + }, + "serviceAccounts": { + "description": "Required. A list of email addresses of the service accounts which are allowed to call the Verified Access API with full access.", + "items": { + "type": "string" + }, + "type": "array" + }, + "serviceProvider": { + "description": "Optional. The service provider for the device trust connector.", + "enum": [ + "SERVICE_PROVIDER_UNSPECIFIED", + "UNIVERSAL_DEVICE_TRUST", + "OKTA", + "PING_IDENTITY", + "ONELOGIN", + "DUO", + "ZSCALER", + "OMNISSA", + "JUMPCLOUD" + ], + "enumDescriptions": [ + "Default value.", + "Universal device trust connector.", + "Okta service provider.", + "Ping Identity service provider.", + "OneLogin service provider.", + "Duo service provider.", + "Zscaler service provider.", + "Omnissa service provider.", + "JumpCloud service provider." + ], + "type": "string" + }, + "urlMatchers": { + "description": "Required. List of URLs allowed to be part of the attestation flow to get the set of signals from the machine. URLs must have HTTPS scheme, e.g. \"https://example.com\". Wildcards, *, are allowed. For detailed information on valid URL patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleChromeManagementVersionsV1GenericCaConnection": { "description": "Describes a generic Certificate Authority Connection.", "id": "GoogleChromeManagementVersionsV1GenericCaConnection", @@ -6246,6 +6639,25 @@ }, "type": "object" }, + "GoogleChromeManagementVersionsV1GoogleSecOpsConfig": { + "description": "Google SecOps connector config.", + "id": "GoogleChromeManagementVersionsV1GoogleSecOpsConfig", + "properties": { + "apiKey": { + "description": "Required. Input only. API key to use on the ingestion API.", + "type": "string" + }, + "host": { + "description": "Required. Host of ingestion API endpoint. Allows customer to upload events to servers in specific geographical regions. Existing configs that don't have this setting default to US.", + "type": "string" + }, + "reportingSettings": { + "$ref": "GoogleChromeManagementVersionsV1ReportingSettings", + "description": "Required. The reporting settings for the Google SecOps config." + } + }, + "type": "object" + }, "GoogleChromeManagementVersionsV1ListChromeBrowserProfileCommandsResponse": { "description": "Response to ListChromeBrowserProfileCommands method.", "id": "GoogleChromeManagementVersionsV1ListChromeBrowserProfileCommandsResponse", @@ -6292,6 +6704,24 @@ }, "type": "object" }, + "GoogleChromeManagementVersionsV1ListConnectorConfigsResponse": { + "description": "Response to ListConnectorConfigs method.", + "id": "GoogleChromeManagementVersionsV1ListConnectorConfigsResponse", + "properties": { + "connectorConfigs": { + "description": "The list of connector configs returned.", + "items": { + "$ref": "GoogleChromeManagementVersionsV1ConnectorConfig" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The page token used to retrieve the next page of the listing request. If the token is empty, there are no more pages to retrieve.", + "type": "string" + } + }, + "type": "object" + }, "GoogleChromeManagementVersionsV1MoveThirdPartyProfileUserRequest": { "description": "Request to MoveThirdPartyProfileUser method.", "id": "GoogleChromeManagementVersionsV1MoveThirdPartyProfileUserRequest", @@ -6315,6 +6745,55 @@ }, "type": "object" }, + "GoogleChromeManagementVersionsV1PaloAltoNetworksConfig": { + "description": "Palo Alto Networks connector config.", + "id": "GoogleChromeManagementVersionsV1PaloAltoNetworksConfig", + "properties": { + "apiKey": { + "description": "Required. Input only. API key to use on the ingestion API.", + "type": "string" + }, + "host": { + "description": "Required. Host to identify the customer specific server to receive the events.", + "type": "string" + }, + "reportingSettings": { + "$ref": "GoogleChromeManagementVersionsV1ReportingSettings", + "description": "Required. The reporting settings for the Palo Alto Networks config." + } + }, + "type": "object" + }, + "GoogleChromeManagementVersionsV1PubSubConfig": { + "description": "Pub/Sub connector config.", + "id": "GoogleChromeManagementVersionsV1PubSubConfig", + "properties": { + "reportingSettings": { + "$ref": "GoogleChromeManagementVersionsV1ReportingSettings", + "description": "Required. The reporting settings for the Pub/Sub config." + }, + "topicFullPath": { + "description": "Required. The full path to the topic to send the event to.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleChromeManagementVersionsV1PubSubXdrConfig": { + "description": "Pub/Sub XDR connector config.", + "id": "GoogleChromeManagementVersionsV1PubSubXdrConfig", + "properties": { + "topicFullPath": { + "description": "Required. The full path to the topic to send the event to.", + "type": "string" + }, + "xdrSettings": { + "$ref": "GoogleChromeManagementVersionsV1XdrSettings", + "description": "Required. The XDR settings for the Pub/Sub XDR config." + } + }, + "type": "object" + }, "GoogleChromeManagementVersionsV1ReportingData": { "description": "Reporting data of a Chrome browser profile.", "id": "GoogleChromeManagementVersionsV1ReportingData", @@ -6563,6 +7042,98 @@ }, "type": "object" }, + "GoogleChromeManagementVersionsV1ReportingSettings": { + "description": "Reporting settings for connector configs.", + "id": "GoogleChromeManagementVersionsV1ReportingSettings", + "properties": { + "enabledDefaultEvents": { + "description": "Optional. The list of user and browser events that are enabled for this connector. An empty list disables all default events, and using `ALL_DEFAULT_EVENTS` will enable all default events.", + "items": { + "enum": [ + "DEFAULT_EVENT_UNSPECIFIED", + "ALL_DEFAULT_EVENTS", + "BROWSER_CRASH_EVENT", + "BROWSER_EXTENSION_INSTALL_EVENT", + "CONTENT_TRANSFER_EVENT", + "CONTENT_UNSCANNED_EVENT", + "DATA_ACCESS_CONTROL_EVENT", + "MALWARE_TRANSFER_EVENT", + "PASSWORD_CHANGED_EVENT", + "PASSWORD_REUSE_EVENT", + "SENSITIVE_DATA_TRANSFER_EVENT", + "SUSPICIOUS_URL_EVENT", + "UNSAFE_SITE_VISIT_EVENT", + "URL_FILTERING_INTERSTITIAL_EVENT" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "All default events.", + "Browser crash event.", + "Browser extension install event.", + "Content transfer event.", + "Content unscanned event.", + "Data access control event.", + "Malware transfer event.", + "Password changed event.", + "Password reuse event.", + "Sensitive data transfer event.", + "Suspicious URL event.", + "Unsafe site visit event.", + "URL filtering interstitial event." + ], + "type": "string" + }, + "type": "array" + }, + "enabledDeviceEvents": { + "description": "Optional. The list of device events that are enabled for this config. An empty list disables all device events, and using `ALL_DEVICE_EVENTS` will enable all device events.", + "items": { + "enum": [ + "DEVICE_EVENT_UNSPECIFIED", + "ALL_DEVICE_EVENTS", + "ADD_REMOVE_USER_EVENT", + "LOGIN_LOGOUT_EVENT", + "CRD_EVENT", + "PERIPHERAL_EVENT" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "All device events.", + "Add/remove user event.", + "Login/logout event.", + "CRD event.", + "Peripheral event." + ], + "type": "string" + }, + "type": "array" + }, + "enabledOptInEvents": { + "description": "Optional. The list of opt-in events that are enabled for this config. An empty list disables all opt-in events, and using `ALL_OPT_IN_EVENTS` will enable all opt-in events.", + "items": { + "enum": [ + "OPT_IN_EVENT_UNSPECIFIED", + "ALL_OPT_IN_EVENTS", + "LOGIN_EVENT", + "PASSWORD_BREACH_EVENT", + "URL_NAVIGATION_EVENT", + "EXTENSION_TELEMETRY_EVENT" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "All opt-in events.", + "Login event.", + "Password breach event.", + "URL navigation event.", + "Extension telemetry event." + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleChromeManagementVersionsV1ScepCaConnection": { "description": "Describes a SCEP Certificate Authority Connection.", "id": "GoogleChromeManagementVersionsV1ScepCaConnection", @@ -6714,6 +7285,38 @@ }, "type": "object" }, + "GoogleChromeManagementVersionsV1SplunkConfig": { + "description": "Splunk connector config.", + "id": "GoogleChromeManagementVersionsV1SplunkConfig", + "properties": { + "hecToken": { + "description": "Required. Input only. The data input's HTTP Event Collector token to use as an Authorization header.", + "type": "string" + }, + "host": { + "description": "Required. Host to identify the customer specific server to receive the events.", + "type": "string" + }, + "portNumber": { + "description": "Optional. The port number to use. If not set, the default Splunk port is used.", + "format": "int32", + "type": "integer" + }, + "reportingSettings": { + "$ref": "GoogleChromeManagementVersionsV1ReportingSettings", + "description": "Required. The reporting settings for the Splunk config." + }, + "source": { + "description": "Optional. Optional source name to override the default one set in the Splunk admin console.", + "type": "string" + }, + "unsecureScheme": { + "description": "Optional. Whether to use an unsecure HTTP scheme. Defaults to false (HTTPS).", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleChromeManagementVersionsV1SubjectAltName": { "description": "Describes a subject alternative name.", "id": "GoogleChromeManagementVersionsV1SubjectAltName", @@ -6778,6 +7381,17 @@ "properties": {}, "type": "object" }, + "GoogleChromeManagementVersionsV1XdrSettings": { + "description": "XDR settings for connector configs.", + "id": "GoogleChromeManagementVersionsV1XdrSettings", + "properties": { + "enableAllXdrEvents": { + "description": "Required. Whether to enable all XDR events.", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleLongrunningCancelOperationRequest": { "description": "The request message for Operations.CancelOperation.", "id": "GoogleLongrunningCancelOperationRequest", diff --git a/discovery/classroom-v1.json b/discovery/classroom-v1.json index ed1f8d3935e..9fae3ce49c7 100644 --- a/discovery/classroom-v1.json +++ b/discovery/classroom-v1.json @@ -275,7 +275,7 @@ "parameterOrder": [], "parameters": { "courseStates": { - "description": "Restricts returned courses to those in one of the specified states The default value is ACTIVE, ARCHIVED, PROVISIONED, DECLINED.", + "description": "Restricts returned courses to those in one of the specified states. If unspecified, Courses in any state are returned.", "enum": [ "COURSE_STATE_UNSPECIFIED", "ACTIVE", @@ -308,12 +308,12 @@ "type": "string" }, "studentId": { - "description": "Restricts returned courses to those having a student with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `\"me\"`, indicating the requesting user", + "description": "Restricts returned courses to those having a student with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `\"me\"`, indicating the requesting user If specified, `teacher_id` must be empty.", "location": "query", "type": "string" }, "teacherId": { - "description": "Restricts returned courses to those having a teacher with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `\"me\"`, indicating the requesting user", + "description": "Restricts returned courses to those having a teacher with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `\"me\"`, indicating the requesting user If specified, `student_id` must be empty.", "location": "query", "type": "string" } @@ -4366,7 +4366,7 @@ } } }, - "revision": "20260111", + "revision": "20260414", "rootUrl": "https://classroom.googleapis.com/", "schemas": { "AddOnAttachment": { @@ -4458,6 +4458,10 @@ "Student chose to \"unsubmit\" the assignment." ], "type": "string" + }, + "userId": { + "description": "Identifier for the student that owns this submission. Requires the user to be a teacher in the course and have permission to read student submissions. Read-only.", + "type": "string" } }, "type": "object" diff --git a/discovery/cloudasset-v1.json b/discovery/cloudasset-v1.json index 7e30196af4a..53365700201 100644 --- a/discovery/cloudasset-v1.json +++ b/discovery/cloudasset-v1.json @@ -1095,7 +1095,7 @@ } } }, - "revision": "20260102", + "revision": "20260417", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AccessSelector": { @@ -1836,7 +1836,7 @@ "id": "GcsDestination", "properties": { "uri": { - "description": "The URI of the Cloud Storage object. It's the same URI that is used by gsutil. Example: \"gs://bucket_name/object_name\". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information. If the specified Cloud Storage object already exists and there is no [hold](https://cloud.google.com/storage/docs/object-holds), it will be overwritten with the exported result.", + "description": "The URI of the Cloud Storage object. It's the same URI that is used by gcloud storage. Example: \"gs://bucket_name/object_name\". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information. If the specified Cloud Storage object already exists and there is no [hold](https://cloud.google.com/storage/docs/object-holds), it will be overwritten with the exported result.", "type": "string" }, "uriPrefix": { @@ -2163,7 +2163,7 @@ "id": "GoogleCloudAssetV1GcsDestination", "properties": { "uri": { - "description": "Required. The URI of the Cloud Storage object. It's the same URI that is used by gsutil. Example: \"gs://bucket_name/object_name\". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information. If the specified Cloud Storage object already exists and there is no [hold](https://cloud.google.com/storage/docs/object-holds), it will be overwritten with the analysis result.", + "description": "Required. The URI of the Cloud Storage object. It's the same URI that is used by gcloud storage. Example: \"gs://bucket_name/object_name\". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information. If the specified Cloud Storage object already exists and there is no [hold](https://cloud.google.com/storage/docs/object-holds), it will be overwritten with the analysis result.", "type": "string" } }, @@ -2844,7 +2844,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1EgressFrom", "properties": { "identities": { - "description": "A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported.", + "description": "A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.", "items": { "type": "string" }, @@ -2964,7 +2964,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1IngressFrom", "properties": { "identities": { - "description": "A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported.", + "description": "A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.", "items": { "type": "string" }, diff --git a/discovery/cloudasset-v1beta1.json b/discovery/cloudasset-v1beta1.json index c4b1c405661..26afa618ef8 100644 --- a/discovery/cloudasset-v1beta1.json +++ b/discovery/cloudasset-v1beta1.json @@ -411,7 +411,7 @@ } } }, - "revision": "20250307", + "revision": "20260427", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AnalyzeIamPolicyLongrunningMetadata": { @@ -624,7 +624,7 @@ "id": "GcsDestination", "properties": { "uri": { - "description": "The URI of the Cloud Storage object. It's the same URI that is used by gsutil. For example: \"gs://bucket_name/object_name\". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information.", + "description": "The URI of the Cloud Storage object. It's the same URI that is used by gcloud storage. For example: \"gs://bucket_name/object_name\". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information.", "type": "string" }, "uriPrefix": { @@ -1124,7 +1124,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1EgressFrom", "properties": { "identities": { - "description": "A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported.", + "description": "A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.", "items": { "type": "string" }, @@ -1244,7 +1244,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1IngressFrom", "properties": { "identities": { - "description": "A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported.", + "description": "A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.", "items": { "type": "string" }, diff --git a/discovery/cloudasset-v1p1beta1.json b/discovery/cloudasset-v1p1beta1.json index e93e74cfff8..8b30295fe68 100644 --- a/discovery/cloudasset-v1p1beta1.json +++ b/discovery/cloudasset-v1p1beta1.json @@ -207,7 +207,7 @@ } } }, - "revision": "20250307", + "revision": "20260417", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AnalyzeIamPolicyLongrunningMetadata": { @@ -826,7 +826,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1EgressFrom", "properties": { "identities": { - "description": "A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported.", + "description": "A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.", "items": { "type": "string" }, @@ -946,7 +946,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1IngressFrom", "properties": { "identities": { - "description": "A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported.", + "description": "A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.", "items": { "type": "string" }, diff --git a/discovery/cloudasset-v1p5beta1.json b/discovery/cloudasset-v1p5beta1.json index 92f1f151852..b2055c4b354 100644 --- a/discovery/cloudasset-v1p5beta1.json +++ b/discovery/cloudasset-v1p5beta1.json @@ -177,7 +177,7 @@ } } }, - "revision": "20250307", + "revision": "20260417", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AnalyzeIamPolicyLongrunningMetadata": { @@ -831,7 +831,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1EgressFrom", "properties": { "identities": { - "description": "A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported.", + "description": "A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.", "items": { "type": "string" }, @@ -951,7 +951,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1IngressFrom", "properties": { "identities": { - "description": "A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported.", + "description": "A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.", "items": { "type": "string" }, diff --git a/discovery/cloudasset-v1p7beta1.json b/discovery/cloudasset-v1p7beta1.json index 9bf73d1bc2f..ab7e901dc59 100644 --- a/discovery/cloudasset-v1p7beta1.json +++ b/discovery/cloudasset-v1p7beta1.json @@ -167,7 +167,7 @@ } } }, - "revision": "20250627", + "revision": "20260417", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AnalyzeIamPolicyLongrunningMetadata": { @@ -422,7 +422,7 @@ "id": "GoogleCloudAssetV1p7beta1GcsDestination", "properties": { "uri": { - "description": "The URI of the Cloud Storage object. It's the same URI that is used by gsutil. Example: \"gs://bucket_name/object_name\". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information.", + "description": "The URI of the Cloud Storage object. It's the same URI that is used by gcloud storage. Example: \"gs://bucket_name/object_name\". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information.", "type": "string" }, "uriPrefix": { @@ -900,7 +900,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1EgressFrom", "properties": { "identities": { - "description": "A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported.", + "description": "A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.", "items": { "type": "string" }, @@ -1020,7 +1020,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1IngressFrom", "properties": { "identities": { - "description": "A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported.", + "description": "A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities.", "items": { "type": "string" }, diff --git a/discovery/cloudbilling-v1beta.json b/discovery/cloudbilling-v1beta.json index a4f7d156709..44b42eb3183 100644 --- a/discovery/cloudbilling-v1beta.json +++ b/discovery/cloudbilling-v1beta.json @@ -700,11 +700,174 @@ } } } + }, + "v1beta": { + "methods": { + "generateInsights": { + "description": "Analyzes cost data for a billing account and/or specific projects. Returns a natural language summary and supporting datasets.", + "flatPath": "v1beta:generateInsights", + "httpMethod": "POST", + "id": "cloudbilling.generateInsights", + "parameterOrder": [], + "parameters": {}, + "path": "v1beta:generateInsights", + "request": { + "$ref": "GenerateInsightsRequest" + }, + "response": { + "$ref": "GenerateInsightsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-billing", + "https://www.googleapis.com/auth/cloud-billing.readonly", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } }, - "revision": "20250711", + "revision": "20260320", "rootUrl": "https://cloudbilling.googleapis.com/", "schemas": { + "AgenticQueryInfo": { + "description": "A local representation of the query used to fetch the data. This is used instead of the raw QueryBillingDataRequest to avoid pulling in Cloud Policy Enforcement (CPE) resource_type annotations into the response payload, which causes ESF validation failures.", + "id": "AgenticQueryInfo", + "properties": { + "columns": { + "description": "The columns queried.", + "type": "string" + }, + "filter": { + "description": "The filter applied to the query.", + "type": "string" + }, + "groupBy": { + "description": "The group-by clause applied to the query.", + "type": "string" + }, + "limit": { + "description": "The row limit applied to the query.", + "format": "int32", + "type": "integer" + }, + "orderBy": { + "description": "The order-by clause applied to the query.", + "type": "string" + }, + "parents": { + "description": "The parents (e.g. projects, billing accounts) queried.", + "items": { + "type": "string" + }, + "type": "array" + }, + "view": { + "description": "The view queried.", + "type": "string" + } + }, + "type": "object" + }, + "Array": { + "description": "An ordered collection of elements of arbitrary count.", + "id": "Array", + "properties": { + "element": { + "description": "The elements of the array.", + "items": { + "$ref": "ValueProto" + }, + "type": "array" + } + }, + "type": "object" + }, + "BillingData": { + "description": "Encapsulates billing data.", + "id": "BillingData", + "properties": { + "columnInfo": { + "description": "Information about columns.", + "items": { + "$ref": "ColumnInfo" + }, + "type": "array" + }, + "rows": { + "description": "Rows.", + "items": { + "$ref": "Row" + }, + "type": "array" + } + }, + "type": "object" + }, + "BillingDataResource": { + "description": "Specifies a Billing data resource that can be used for authorization to access billing data.", + "id": "BillingDataResource", + "properties": { + "billingAccount": { + "description": "Optional. If not provided the billing account currently associated with the resource will be used.", + "type": "string" + }, + "resource": { + "description": "Required. Resource name for an entitity that can be used for authorization to access billing data such as `projects/{project}` or `billingAccounts/{billing_account}`", + "type": "string" + } + }, + "type": "object" + }, + "ColumnInfo": { + "description": "Represents a column header.", + "id": "ColumnInfo", + "properties": { + "column": { + "description": "Name of the column.", + "type": "string" + } + }, + "type": "object" + }, + "DataSet": { + "description": "A dataset used to support an insight, suitable for UI rendering (tables/charts).", + "id": "DataSet", + "properties": { + "billingData": { + "$ref": "BillingData", + "description": "Output only. Actual billing data returned from the Data Mart. Uses the formal message from the Billing Data Service.", + "readOnly": true + }, + "queryInfo": { + "$ref": "AgenticQueryInfo", + "description": "Output only. The query used to fetch this data.", + "readOnly": true + }, + "suggestedChart": { + "$ref": "SuggestedChart", + "description": "Output only. A suggested chart for the data set, used for UI rendering.", + "readOnly": true + } + }, + "type": "object" + }, + "Datetime": { + "description": "A datetime value.", + "id": "Datetime", + "properties": { + "bitFieldDatetimeSeconds": { + "description": "Represents bit field encoding of year/month/day/hour/minute/second. See class DatetimeValue in civil_time.h for details of encoding.", + "format": "int64", + "type": "string" + }, + "nanos": { + "description": "Non-negative fractions of a second at nanosecond resolution.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "Decimal": { "description": "A representation of a decimal value, such as 2.5. Clients may convert values into language-native decimal formats, such as Java's [BigDecimal](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/math/BigDecimal.html) or Python's [decimal.Decimal](https://docs.python.org/3/library/decimal.html).", "id": "Decimal", @@ -716,6 +879,113 @@ }, "type": "object" }, + "FinalResult": { + "description": "Encapsulates all structured data and the completed summary.", + "id": "FinalResult", + "properties": { + "dataSets": { + "description": "Output only. Data sets used to support the insights, suitable for UI rendering (tables/charts).", + "items": { + "$ref": "DataSet" + }, + "readOnly": true, + "type": "array" + }, + "fullAnalysis": { + "description": "Output only. Contains the full natural language analysis, including thoughts, reasoning, and references.", + "readOnly": true, + "type": "string" + }, + "insights": { + "description": "Output only. A list of discrete insights gleaned from the data.", + "items": { + "$ref": "Insight" + }, + "readOnly": true, + "type": "array" + }, + "interopLinks": { + "description": "Output only. Links to interoperable tools (e.g., pre-filtered Cost Reports or BQE queries).", + "items": { + "$ref": "InteropLink" + }, + "readOnly": true, + "type": "array" + }, + "suggestedQueries": { + "description": "Output only. A list of suggested follow-up queries for the user.", + "items": { + "$ref": "SuggestedQuery" + }, + "readOnly": true, + "type": "array" + }, + "summary": { + "description": "Output only. The full natural language summary (re-sent for consistency).", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GenerateInsightsRequest": { + "description": "Request for GenerateInsights.", + "id": "GenerateInsightsRequest", + "properties": { + "filter": { + "description": "Optional. Filters cost data by service id. Follows https://google.aip.dev/160 for the filter syntax. eg. filter: \"service = 'C7E2-9256-1C43'\"", + "type": "string" + }, + "overriddenMaxIterationCounts": { + "description": "Optional. Overrides the maximum iterations for any selected strategy.", + "format": "int32", + "type": "integer" + }, + "parents": { + "description": "Optional. The billing account or projects to analyze.", + "items": { + "$ref": "BillingDataResource" + }, + "type": "array" + }, + "prompt": { + "description": "Required. The natural language prompt from the user.", + "type": "string" + }, + "userContext": { + "$ref": "UserContext", + "description": "Optional. Additional context for personalization (e.g., user persona, role)." + } + }, + "type": "object" + }, + "GenerateInsightsResponse": { + "description": "Response for GenerateInsights.", + "id": "GenerateInsightsResponse", + "properties": { + "finalResult": { + "$ref": "FinalResult", + "description": "Output only. The final structured results and metadata. Usually sent as the final message in the stream.", + "readOnly": true + }, + "rejection": { + "$ref": "Rejection", + "description": "Output only. The request was rejected (e.g. out of scope).", + "readOnly": true + }, + "summaryChunk": { + "description": "Output only. A chunk of the natural language summary (customer-facing). The UI can append these chunks to provide a real-time \"typing\" effect.", + "readOnly": true, + "type": "string" + }, + "thoughtChunk": { + "description": "Output only. A chunk of the agent's internal reasoning process. The UI can use this to render a \"Thinking...\" log or status.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudBillingBillingaccountpricesV1betaAggregationInfo": { "description": "Encapsulates the aggregation information such as aggregation level and interval for a billing account price.", "id": "GoogleCloudBillingBillingaccountpricesV1betaAggregationInfo", @@ -1665,6 +1935,103 @@ }, "type": "object" }, + "Insight": { + "description": "e.g. insight: title: \"Cost Increase (The Explanation)\" description: \"Your cost increase was driven by Vertex AI Online Prediction in us-central1...\" severity: INFO", + "id": "Insight", + "properties": { + "description": { + "description": "Output only. The description of the insight.", + "readOnly": true, + "type": "string" + }, + "severity": { + "description": "Output only. The severity of the insight, used for UI rendering (e.g., color-coding).", + "enum": [ + "SEVERITY_UNSPECIFIED", + "INFO", + "WARNING", + "CRITICAL" + ], + "enumDescriptions": [ + "Default value. Should not be used.", + "The insight is useful, but no action is required.", + "The insight is useful, and some action may be required.", + "The insight is useful, and immediate action is required." + ], + "readOnly": true, + "type": "string" + }, + "title": { + "description": "Output only. The title of the insight.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "InteropLink": { + "description": "A link to interoperable tools (e.g., pre-filtered Cost Reports, BQE queries).", + "id": "InteropLink", + "properties": { + "label": { + "description": "Output only. The label of the link, suitable for UI rendering.", + "readOnly": true, + "type": "string" + }, + "linkType": { + "description": "Output only. The type of the interop link, e.g., \"COST_REPORT\", \"BQE_QUERY\", etc.", + "enum": [ + "LINK_TYPE_UNSPECIFIED", + "COST_REPORT", + "BQE_QUERY", + "FINOPS_HUB" + ], + "enumDescriptions": [ + "Default value. Should not be used.", + "A link to a Cost Report in Google Cloud Console.", + "A link to a BigQuery Export query.", + "A link to a FinOps Hub page." + ], + "readOnly": true, + "type": "string" + }, + "url": { + "description": "Output only. The URL of the link.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Map": { + "description": "An unordered mapping from key to value, represented as a collection of map entries.", + "id": "Map", + "properties": { + "entry": { + "description": "Represents the map entries in the map.", + "items": { + "$ref": "MapEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "MapEntry": { + "description": "A single entry in a Map, representing the mapping between `key` and `value`.", + "id": "MapEntry", + "properties": { + "key": { + "$ref": "ValueProto", + "description": "Represents the serialized map key for the entry." + }, + "value": { + "$ref": "ValueProto", + "description": "Represents the serialized map value of the entry." + } + }, + "type": "object" + }, "Money": { "description": "Represents an amount of money with its currency type.", "id": "Money", @@ -1685,6 +2052,297 @@ } }, "type": "object" + }, + "Range": { + "description": "A range of values, bounded by the values 'start' (inclusive) and 'end' (exclusive). A range has an element type, and values must be of this element type. A range is contiguous, ie it contains all values of the given element type starting at 'start' and ending before 'end'. A \"null\" value on start or end represents an unbounded start or end value respectively. Start and end values must always be present.", + "id": "Range", + "properties": { + "end": { + "$ref": "ValueProto", + "description": "Represents the end of the range." + }, + "start": { + "$ref": "ValueProto", + "description": "Represents the start of the range." + } + }, + "type": "object" + }, + "Rejection": { + "description": "Encapsulates details about why a request was rejected.", + "id": "Rejection", + "properties": { + "displayMessage": { + "description": "Output only. A user-facing message explaining the rejection.", + "readOnly": true, + "type": "string" + }, + "reason": { + "description": "Output only. The reason for the rejection.", + "enum": [ + "REASON_UNSPECIFIED", + "EXPLICIT_OUT_OF_SCOPE" + ], + "enumDescriptions": [ + "Default value. Should not be used.", + "The user explicitly asked about a service that is not Gemini or Vertex AI." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Row": { + "description": "Represents a row in the query result.", + "id": "Row", + "properties": { + "values": { + "description": "Values for a row in the column order.", + "items": { + "$ref": "ValueProto" + }, + "type": "array" + } + }, + "type": "object" + }, + "Struct": { + "description": "A collection of fields. The count, order, and type of the fields is determined by the type associated with this value.", + "id": "Struct", + "properties": { + "field": { + "description": "The fields in the struct", + "items": { + "$ref": "ValueProto" + }, + "type": "array" + } + }, + "type": "object" + }, + "SuggestedChart": { + "description": "A suggested chart for the data set, used for UI rendering.", + "id": "SuggestedChart", + "properties": { + "chartTitle": { + "description": "The title of the chart.", + "type": "string" + }, + "chartType": { + "description": "The type of the chart.", + "enum": [ + "CHART_TYPE_UNSPECIFIED", + "BAR_CHART", + "UNCHARTABLE", + "LINE_CHART", + "AREA_CHART" + ], + "enumDescriptions": [ + "Default value. Should not be used.", + "Represents a bar chart.", + "The data set cannot be rendered as a chart.", + "Represents a line chart. Suitable for quantitative and temporal data on the x-axis.", + "Represents an area chart." + ], + "type": "string" + }, + "seriesField": { + "description": "The field used for the series (e.g., color-coding). Optional, but recommended for time-series data.", + "type": "string" + }, + "xAxisField": { + "description": "The field used for the x-axis.", + "type": "string" + }, + "xAxisLabel": { + "description": "The label of the x-axis.", + "type": "string" + }, + "yAxisField": { + "description": "The field used for the y-axis.", + "type": "string" + }, + "yAxisLabel": { + "description": "The label of the y-axis.", + "type": "string" + } + }, + "type": "object" + }, + "SuggestedQuery": { + "description": "A suggested follow-up query for the user.", + "id": "SuggestedQuery", + "properties": { + "query": { + "description": "The natural language query.", + "type": "string" + } + }, + "type": "object" + }, + "UserContext": { + "description": "Additional context for personalization (e.g., user persona, role).", + "id": "UserContext", + "properties": { + "persona": { + "description": "Optional. The user's persona (e.g., FinOps Manager, Developer).", + "enum": [ + "PERSONA_UNSPECIFIED", + "FINOPS_MANAGER", + "DEVELOPER" + ], + "enumDescriptions": [ + "Default value. Should not be used.", + "The user is a FinOps Manager.", + "The user is a Developer." + ], + "type": "string" + }, + "role": { + "description": "Optional. The user's role (e.g., Billing Admin, Project Owner, etc.).", + "type": "string" + } + }, + "type": "object" + }, + "ValueProto": { + "description": "This is a copy of storage/googlesql/public/value.proto. ValueProto represents the serialized form of the googlesql::Value. The intention is to support multiple languages including Java and C++, so we must be sensitive to the distinction between Java Strings and byte arrays or ByteStrings. We also want to support use-cases which do not want to serialize a copy of the GoogleSQL type for every instance (which might be very repetitive). Therefore, unlike googlesql::Value, ValueProto does not carry full type information with every instance, and can only be fully interpreted with an associated TypeProto.", + "id": "ValueProto", + "properties": { + "ValueProtoSwitchMustHaveADefault": { + "description": "User code that switches on this oneoff enum must have a default case so builds won't break when new fields are added.", + "type": "boolean" + }, + "arrayValue": { + "$ref": "Array", + "description": "An array of value" + }, + "bignumericValue": { + "description": "Encoded bignumeric value. For the encoding format see documentation for BigNumericValue::SerializeAsProtoBytes().", + "format": "byte", + "type": "string" + }, + "boolValue": { + "description": "Primitive for bool.", + "type": "boolean" + }, + "bytesValue": { + "description": "Primitive for bytes.", + "format": "byte", + "type": "string" + }, + "dateValue": { + "description": "Primitive for date.", + "format": "int32", + "type": "integer" + }, + "datetimeValue": { + "$ref": "Datetime", + "description": "primitive for datetime" + }, + "doubleValue": { + "description": "Primitive for double.", + "format": "double", + "type": "number" + }, + "enumValue": { + "description": "Tag 11 was used for specifying micros timestamps as int64, now obsolete.", + "format": "int32", + "type": "integer" + }, + "floatValue": { + "description": "Primitive for float.", + "format": "float", + "type": "number" + }, + "geographyValue": { + "description": "Geography encoded using ::stlib::STGeographyEncoder", + "format": "byte", + "type": "string" + }, + "int32Value": { + "description": "Primitive value for int32.", + "format": "int32", + "type": "integer" + }, + "int64Value": { + "description": "Primitive for int64.", + "format": "int64", + "type": "string" + }, + "intervalValue": { + "description": "Encoded interval value. For the encoding format see documentation for IntervalValue::SerializeAsBytes().", + "format": "byte", + "type": "string" + }, + "jsonValue": { + "description": "Tag 22 was used for json value as bytes, now obsolete. Json value represented as a string document.", + "type": "string" + }, + "mapValue": { + "$ref": "Map", + "description": "Encoded map value. See go/googlesql_map." + }, + "numericValue": { + "description": "Encoded numeric value. For the encoding format see documentation for NumericValue::SerializeAsProtoBytes().", + "format": "byte", + "type": "string" + }, + "protoValue": { + "description": "Stores a serialized protocol message.", + "format": "byte", + "type": "string" + }, + "rangeValue": { + "$ref": "Range", + "description": "Encoded range value. See go/googlesql_range." + }, + "stringValue": { + "description": "Primitive for string.", + "type": "string" + }, + "structValue": { + "$ref": "Struct", + "description": "A struct of values" + }, + "timeValue": { + "description": "Bit field encoding of hour/minute/second/nanos. See TimeValue class for details.", + "format": "int64", + "type": "string" + }, + "timestampPicoValue": { + "description": "Encoded timestamp_pico value. For the encoding format see documentation for googlesql::TimestampPico::SerializeAsBytes().", + "format": "byte", + "type": "string" + }, + "timestampValue": { + "description": "primitive for timestamp", + "format": "google-datetime", + "type": "string" + }, + "tokenlistValue": { + "description": "Encoded tokenlist value. copybara:strip_begin(internal-comment) See //search/tokens:token_list. copybara:strip_end", + "format": "byte", + "type": "string" + }, + "uint32Value": { + "description": "Primitive for uint32.", + "format": "uint32", + "type": "integer" + }, + "uint64Value": { + "description": "Primitive for uint64.", + "format": "uint64", + "type": "string" + }, + "uuidValue": { + "description": "Encoded uuid value. For the encoding format see documentation for UuidValue::SerializeAsBytes().", + "format": "byte", + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/discovery/cloudbuild-v1.json b/discovery/cloudbuild-v1.json index c99c2175c6a..f3ce365a3a4 100644 --- a/discovery/cloudbuild-v1.json +++ b/discovery/cloudbuild-v1.json @@ -2583,7 +2583,7 @@ } } }, - "revision": "20260106", + "revision": "20260323", "rootUrl": "https://cloudbuild.googleapis.com/", "schemas": { "ApprovalConfig": { @@ -2693,6 +2693,13 @@ "description": "Artifacts produced by a build that should be uploaded upon successful completion of all build steps.", "id": "Artifacts", "properties": { + "genericArtifacts": { + "description": "Optional. A list of generic artifacts to be uploaded to Artifact Registry upon successful completion of all build steps. If any artifacts fail to be pushed, the build is marked FAILURE.", + "items": { + "$ref": "GenericArtifact" + }, + "type": "array" + }, "goModules": { "description": "Optional. A list of Go modules to be uploaded to Artifact Registry upon successful completion of all build steps. If any objects fail to be pushed, the build is marked FAILURE.", "items": { @@ -2725,6 +2732,13 @@ "$ref": "ArtifactObjects", "description": "A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the specified Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE." }, + "oci": { + "description": "Optional. A list of OCI images to be uploaded to Artifact Registry upon successful completion of all build steps. OCI images in the specified paths will be uploaded to the specified Artifact Registry repository using the builder service account's credentials. If any images fail to be pushed, the build is marked FAILURE.", + "items": { + "$ref": "Oci" + }, + "type": "array" + }, "pythonPackages": { "description": "A list of Python packages to be uploaded to Artifact Registry upon successful completion of all build steps. The build service account credentials will be used to perform the upload. If any objects fail to be pushed, the build is marked FAILURE.", "items": { @@ -3403,14 +3417,16 @@ "SHA256", "MD5", "GO_MODULE_H1", - "SHA512" + "SHA512", + "DIRSUM_SHA256" ], "enumDescriptions": [ "No hash requested.", "Use a sha256 hash.", "Use a md5 hash.", "Dirhash of a Go module's source code which is then hex-encoded.", - "Use a sha512 hash." + "Use a sha512 hash.", + "Use a dirsum_sha256 hash." ], "type": "string" }, @@ -3744,6 +3760,21 @@ "description": "Name used to push the container image to Google Container Registry, as presented to `docker push`.", "type": "string" }, + "ociMediaType": { + "description": "Output only. The OCI media type of the artifact. Non-OCI images, such as Docker images, will have an unspecified value.", + "enum": [ + "OCI_MEDIA_TYPE_UNSPECIFIED", + "IMAGE_MANIFEST", + "IMAGE_INDEX" + ], + "enumDescriptions": [ + "Default value.", + "The artifact is an image manifest, which represents a single image with all its layers.", + "The artifact is an image index, which can contain a list of image manifests." + ], + "readOnly": true, + "type": "string" + }, "pushTiming": { "$ref": "TimeSpan", "description": "Output only. Stores timing information for pushing the specified image.", @@ -4018,6 +4049,10 @@ "description": "If set to true disable all dependency fetching (ignoring the default source as well).", "type": "boolean" }, + "genericArtifact": { + "$ref": "GenericArtifactDependency", + "description": "Represents a generic artifact as a build dependency." + }, "gitSource": { "$ref": "GitSourceDependency", "description": "Represents a git repository as a build dependency." @@ -4139,6 +4174,36 @@ }, "type": "object" }, + "GenericArtifact": { + "description": "Generic artifact to upload to Artifact Registry upon successful completion of all build steps.", + "id": "GenericArtifact", + "properties": { + "folder": { + "description": "Required. Path to the generic artifact in the build's workspace to be uploaded to Artifact Registry.", + "type": "string" + }, + "registryPath": { + "description": "Required. Registry path to upload the generic artifact to, in the form projects/$PROJECT/locations/$LOCATION/repositories/$REPO/packages/$PACKAGE/versions/$VERSION", + "type": "string" + } + }, + "type": "object" + }, + "GenericArtifactDependency": { + "description": "Represents a generic artifact as a build dependency.", + "id": "GenericArtifactDependency", + "properties": { + "destPath": { + "description": "Required. Where the artifact files should be placed on the worker.", + "type": "string" + }, + "resource": { + "description": "Required. The location to download the artifact files from. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1", + "type": "string" + } + }, + "type": "object" + }, "GitConfig": { "description": "GitConfig is a configuration for git operations.", "id": "GitConfig", @@ -4649,14 +4714,16 @@ "SHA256", "MD5", "GO_MODULE_H1", - "SHA512" + "SHA512", + "DIRSUM_SHA256" ], "enumDescriptions": [ "No hash requested.", "Use a sha256 hash.", "Use a md5 hash.", "Dirhash of a Go module's source code which is then hex-encoded.", - "Use a sha512 hash." + "Use a sha512 hash.", + "Use a dirsum_sha256 hash." ], "type": "string" }, @@ -4940,6 +5007,28 @@ }, "type": "object" }, + "Oci": { + "description": "OCI image to upload to Artifact Registry upon successful completion of all build steps.", + "id": "Oci", + "properties": { + "file": { + "description": "Required. Path on the local file system where to find the container to upload. e.g. /workspace/my-image.tar", + "type": "string" + }, + "registryPath": { + "description": "Required. Registry path to upload the container to. e.g. us-east1-docker.pkg.dev/my-project/my-repo/my-image", + "type": "string" + }, + "tags": { + "description": "Optional. Tags to apply to the uploaded image. e.g. latest, 1.0.0", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "Operation": { "description": "This resource represents a long-running operation that is the result of a network API call.", "id": "Operation", @@ -5330,6 +5419,14 @@ }, "type": "array" }, + "genericArtifacts": { + "description": "Output only. Generic artifacts uploaded to Artifact Registry at the end of the build.", + "items": { + "$ref": "UploadedGenericArtifact" + }, + "readOnly": true, + "type": "array" + }, "goModules": { "description": "Optional. Go module artifacts uploaded to Artifact Registry at the end of the build.", "items": { @@ -5727,6 +5824,41 @@ }, "type": "object" }, + "UploadedGenericArtifact": { + "description": "A generic artifact uploaded to Artifact Registry using the GenericArtifact directive.", + "id": "UploadedGenericArtifact", + "properties": { + "artifactFingerprint": { + "$ref": "FileHashes", + "description": "Output only. The hash of the whole artifact.", + "readOnly": true + }, + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, + "fileHashes": { + "additionalProperties": { + "$ref": "FileHashes" + }, + "description": "Output only. The file hashes that make up the generic artifact.", + "readOnly": true, + "type": "object" + }, + "pushTiming": { + "$ref": "TimeSpan", + "description": "Output only. Stores timing information for pushing the specified artifact.", + "readOnly": true + }, + "uri": { + "description": "Output only. URI of the uploaded artifact. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "UploadedGoModule": { "description": "A Go module artifact uploaded to Artifact Registry using the GoModule directive.", "id": "UploadedGoModule", diff --git a/discovery/cloudbuild-v2.json b/discovery/cloudbuild-v2.json index 1591b1c9e4a..6f757db0e8d 100644 --- a/discovery/cloudbuild-v2.json +++ b/discovery/cloudbuild-v2.json @@ -372,7 +372,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2/projects/{projectsId}/locations", "httpMethod": "GET", "id": "cloudbuild.projects.locations.list", @@ -1097,7 +1097,7 @@ } } }, - "revision": "20260126", + "revision": "20260323", "rootUrl": "https://cloudbuild.googleapis.com/", "schemas": { "AuditConfig": { diff --git a/discovery/clouddeploy-v1.json b/discovery/clouddeploy-v1.json index e60563f8e35..f0452b92270 100644 --- a/discovery/clouddeploy-v1.json +++ b/discovery/clouddeploy-v1.json @@ -160,7 +160,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "clouddeploy.projects.locations.list", @@ -169,7 +169,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2359,7 +2359,7 @@ } } }, - "revision": "20260128", + "revision": "20260422", "rootUrl": "https://clouddeploy.googleapis.com/", "schemas": { "AbandonReleaseRequest": { @@ -2477,6 +2477,149 @@ }, "type": "object" }, + "AlertPolicyCheck": { + "description": "AlertPolicyCheck configures a set of Cloud Monitoring alerting policies that will be periodically polled for alerts. If any of the listed policies have an active alert, the analysis check will fail.", + "id": "AlertPolicyCheck", + "properties": { + "alertPolicies": { + "description": "Required. The Cloud Monitoring Alert Policies to check for active alerts. Format is `projects/{project}/alertPolicies/{alert_policy}`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "Required. The ID of the analysis check.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A set of labels to filter active alerts. If set, only alerts having all of the specified labels will be considered. Otherwise, all active alerts will be considered.", + "type": "object" + } + }, + "type": "object" + }, + "AlertPolicyCheckStatus": { + "description": "AlertPolicyCheckStatus contains information specific to a single run of an alert policy check.", + "id": "AlertPolicyCheckStatus", + "properties": { + "alertPolicies": { + "description": "Output only. The alert policies that this analysis monitors. Format is `projects/{project}/locations/{location}/alertPolicies/{alertPolicy}`.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "failedAlertPolicies": { + "description": "Output only. The alert policies that were found to be firing during this check. This will be empty if no incidents were found.", + "items": { + "$ref": "FailedAlertPolicy" + }, + "readOnly": true, + "type": "array" + }, + "failureMessage": { + "description": "Output only. Additional information about the alert policy check failure, if available. This will be empty if the alert policy check succeeded.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Output only. The ID of this analysis.", + "readOnly": true, + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Output only. The resolved labels used to filter for specific incidents.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, + "Analysis": { + "description": "Analysis contains the configuration for the set of analyses to be performed on the target.", + "id": "Analysis", + "properties": { + "customChecks": { + "description": "Optional. Custom analysis checks from 3P metric providers.", + "items": { + "$ref": "CustomCheck" + }, + "type": "array" + }, + "duration": { + "description": "Required. The amount of time in minutes the analysis on the target will last. If all analysis checks have successfully completed before the specified duration, the analysis is successful. If a check is still running while the specified duration passes, it will wait for that check to complete to determine if the analysis is successful. The maximum duration is 48 hours.", + "format": "google-duration", + "type": "string" + }, + "googleCloud": { + "$ref": "GoogleCloudAnalysis", + "description": "Optional. Google Cloud - based analysis checks." + } + }, + "type": "object" + }, + "AnalysisJob": { + "description": "An analysis Job.", + "id": "AnalysisJob", + "properties": { + "customChecks": { + "description": "Output only. Custom analysis checks from 3P metric providers that are run as part of the analysis Job.", + "items": { + "$ref": "CustomCheck" + }, + "readOnly": true, + "type": "array" + }, + "duration": { + "description": "Output only. The amount of time in minutes the analysis Job will run, up to a maximum of 48 hours. If any check in this Job is still running when the duration ends, the Job keeps running until that check completes.", + "format": "google-duration", + "readOnly": true, + "type": "string" + }, + "googleCloud": { + "$ref": "GoogleCloudAnalysis", + "description": "Output only. Google Cloud - based analysis checks that are run as part of the analysis Job.", + "readOnly": true + } + }, + "type": "object" + }, + "AnalysisJobRun": { + "description": "AnalysisJobRun contains information specific to an analysis `JobRun`.", + "id": "AnalysisJobRun", + "properties": { + "alertPolicyAnalyses": { + "description": "Output only. The status of the running alert policy checks configured for this analysis.", + "items": { + "$ref": "AlertPolicyCheckStatus" + }, + "readOnly": true, + "type": "array" + }, + "customCheckAnalyses": { + "description": "Output only. The status of the running custom checks configured for this analysis.", + "items": { + "$ref": "CustomCheckStatus" + }, + "readOnly": true, + "type": "array" + }, + "failedCheckId": { + "description": "Output only. The ID of the configured check that failed. This will always be blank while the analysis is in progress or if it succeeded.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "AnthosCluster": { "description": "Information specifying an Anthos Cluster.", "id": "AnthosCluster", @@ -3039,6 +3182,10 @@ "description": "CanaryDeployment represents the canary deployment configuration", "id": "CanaryDeployment", "properties": { + "analysis": { + "$ref": "Analysis", + "description": "Optional. Configuration for the analysis job. If configured, the analysis will run after each percentage deployment." + }, "percentages": { "description": "Required. The percentage based deployments that will occur as a part of a `Rollout`. List is expected in ascending order and each integer n is 0 <= n < 100. If the GatewayServiceMesh is configured for Kubernetes, then the range for n is 0 <= n <= 100.", "items": { @@ -3058,6 +3205,10 @@ "verify": { "description": "Optional. Whether to run verify tests after each percentage deployment via `skaffold verify`.", "type": "boolean" + }, + "verifyConfig": { + "$ref": "Verify", + "description": "Optional. Configuration for the verify job. Cannot be set if `verify` is set to true." } }, "type": "object" @@ -3175,6 +3326,11 @@ "readOnly": true, "type": "string" }, + "previousRevision": { + "description": "Output only. The previous Cloud Run Revision name associated with a `Rollout`. Only set when a canary deployment strategy is configured. Format for service is projects/{project}/locations/{location}/services/{service}/revisions/{revision}. Format for worker pool is projects/{project}/locations/{location}/workerPools/{workerpool}/revisions/{revision}.", + "readOnly": true, + "type": "string" + }, "revision": { "description": "Output only. The Cloud Run Revision id associated with a `Rollout`.", "readOnly": true, @@ -3205,6 +3361,16 @@ "description": "CloudRunRenderMetadata contains Cloud Run information associated with a `Release` render.", "id": "CloudRunRenderMetadata", "properties": { + "job": { + "description": "Output only. The name of the Cloud Run Job in the rendered manifest. Format is `projects/{project}/locations/{location}/jobs/{job}`.", + "readOnly": true, + "type": "string" + }, + "revision": { + "description": "Output only. The name of the Cloud Run Revision in the rendered manifest. Format is `projects/{project}/locations/{location}/services/{service}/revisions/{revision}`.", + "readOnly": true, + "type": "string" + }, "service": { "description": "Output only. The name of the Cloud Run Service in the rendered manifest. Format is `projects/{project}/locations/{location}/services/{service}`.", "readOnly": true, @@ -3245,6 +3411,38 @@ }, "type": "object" }, + "ContainerTask": { + "description": "This task is represented by a container that is executed in the Cloud Build execution environment.", + "id": "ContainerTask", + "properties": { + "args": { + "description": "Optional. Args is the container arguments to use. This overrides the default arguments defined in the container image.", + "items": { + "type": "string" + }, + "type": "array" + }, + "command": { + "description": "Optional. Command is the container entrypoint to use. This overrides the default entrypoint defined in the container image.", + "items": { + "type": "string" + }, + "type": "array" + }, + "env": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Environment variables that are set in the container.", + "type": "object" + }, + "image": { + "description": "Required. Image is the container image to use.", + "type": "string" + } + }, + "type": "object" + }, "CreateChildRolloutJob": { "description": "A createChildRollout Job.", "id": "CreateChildRolloutJob", @@ -3282,6 +3480,83 @@ }, "type": "object" }, + "CustomCheck": { + "description": "CustomCheck configures a third-party metric provider to run the analysis, via a Task that runs at a specified frequency.", + "id": "CustomCheck", + "properties": { + "frequency": { + "description": "Optional. The frequency at which the custom check will be run, with a minimum and default of 5 minutes.", + "format": "google-duration", + "type": "string" + }, + "id": { + "description": "Required. The ID of the custom Analysis check.", + "type": "string" + }, + "task": { + "$ref": "Task", + "description": "Required. The Task to be run for this custom check." + } + }, + "type": "object" + }, + "CustomCheckStatus": { + "description": "CustomCheckStatus contains information specific to a single iteration of a custom analysis job.", + "id": "CustomCheckStatus", + "properties": { + "failureCause": { + "description": "Output only. The reason the analysis failed. This will always be unspecified while the analysis is in progress or if it succeeded.", + "enum": [ + "FAILURE_CAUSE_UNSPECIFIED", + "CLOUD_BUILD_UNAVAILABLE", + "EXECUTION_FAILED", + "DEADLINE_EXCEEDED", + "CLOUD_BUILD_REQUEST_FAILED" + ], + "enumDescriptions": [ + "No reason for failure is specified.", + "Cloud Build is not available, either because it is not enabled or because Cloud Deploy has insufficient permissions. See [required permission](https://cloud.google.com/deploy/docs/cloud-deploy-service-account#required_permissions).", + "The analysis operation did not complete successfully; check Cloud Build logs.", + "The analysis job run did not complete within the alloted time defined in the target's execution environment configuration.", + "Cloud Build failed to fulfill Cloud Deploy's request. See failure_message for additional details." + ], + "readOnly": true, + "type": "string" + }, + "failureMessage": { + "description": "Output only. Additional information about the analysis failure, if available.", + "readOnly": true, + "type": "string" + }, + "frequency": { + "description": "Output only. The frequency in minutes at which the custom check is run.", + "format": "google-duration", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Output only. The ID of the custom check.", + "readOnly": true, + "type": "string" + }, + "latestBuild": { + "description": "Output only. The resource name of the Cloud Build `Build` object that was used to execute the latest run of this custom action check. Format is `projects/{project}/locations/{location}/builds/{build}`.", + "readOnly": true, + "type": "string" + }, + "metadata": { + "$ref": "CustomMetadata", + "description": "Output only. Custom metadata provided by the user-defined custom check operation. result.", + "readOnly": true + }, + "task": { + "$ref": "Task", + "description": "Output only. The task that ran for this custom check.", + "readOnly": true + } + }, + "type": "object" + }, "CustomMetadata": { "description": "CustomMetadata contains information from a user-defined operation.", "id": "CustomMetadata", @@ -3342,6 +3617,21 @@ }, "type": "object" }, + "CustomTargetTasks": { + "description": "CustomTargetTasks represents the `CustomTargetType` configuration using tasks.", + "id": "CustomTargetTasks", + "properties": { + "deploy": { + "$ref": "Task", + "description": "Required. The task responsible for deploy operations." + }, + "render": { + "$ref": "Task", + "description": "Optional. The task responsible for render operations. If not provided then Cloud Deploy will perform its default rendering operation." + } + }, + "type": "object" + }, "CustomTargetType": { "description": "A `CustomTargetType` resource in the Cloud Deploy API. A `CustomTargetType` defines a type of custom target that can be referenced in a `Target` in order to facilitate deploying to other systems besides the supported runtimes.", "id": "CustomTargetType", @@ -3387,6 +3677,10 @@ "description": "Identifier. Name of the `CustomTargetType`. Format is `projects/{project}/locations/{location}/customTargetTypes/{customTargetType}`. The `customTargetType` component must match `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`", "type": "string" }, + "tasks": { + "$ref": "CustomTargetTasks", + "description": "Optional. Configures render and deploy for the `CustomTargetType` using tasks." + }, "uid": { "description": "Output only. Unique identifier of the `CustomTargetType`.", "readOnly": true, @@ -3986,6 +4280,11 @@ "description": "Deployment job composition.", "id": "DeploymentJobs", "properties": { + "analysisJob": { + "$ref": "Job", + "description": "Output only. The analysis Job. Runs after a verify if there is a verify job and the verify job succeeds.", + "readOnly": true + }, "deployJob": { "$ref": "Job", "description": "Output only. The deploy Job. This is the deploy job in the phase.", @@ -4049,7 +4348,8 @@ "DEPLOY", "VERIFY", "PREDEPLOY", - "POSTDEPLOY" + "POSTDEPLOY", + "ANALYSIS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -4057,7 +4357,8 @@ "Use for deploying and deployment hooks.", "Use for deployment verification.", "Use for predeploy job execution.", - "Use for postdeploy job execution." + "Use for postdeploy job execution.", + "Use for analysis job execution." ], "type": "string" }, @@ -4097,6 +4398,26 @@ }, "type": "object" }, + "FailedAlertPolicy": { + "description": "FailedAlertPolicy contains information about an alert policy that was found to be firing during an alert policy check.", + "id": "FailedAlertPolicy", + "properties": { + "alertPolicy": { + "description": "Output only. The name of the alert policy that was found to be firing. Format is `projects/{project}/locations/{location}/alertPolicies/{alertPolicy}`.", + "readOnly": true, + "type": "string" + }, + "alerts": { + "description": "Output only. Open alerts for the alerting policies that matched the alert policy check configuration.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, "GatewayServiceMesh": { "description": "Information about the Kubernetes Gateway API service mesh configuration.", "id": "GatewayServiceMesh", @@ -4157,6 +4478,20 @@ }, "type": "object" }, + "GoogleCloudAnalysis": { + "description": "GoogleCloudAnalysis is a set of Google Cloud-based checks to perform on the deployment.", + "id": "GoogleCloudAnalysis", + "properties": { + "alertPolicyChecks": { + "description": "Optional. A list of Cloud Monitoring Alert Policy checks to perform as part of the analysis.", + "items": { + "$ref": "AlertPolicyCheck" + }, + "type": "array" + } + }, + "type": "object" + }, "IgnoreJobRequest": { "description": "The request object used by `IgnoreJob`.", "id": "IgnoreJobRequest", @@ -4194,6 +4529,11 @@ "description": "Output only. An advanceChildRollout Job.", "readOnly": true }, + "analysisJob": { + "$ref": "AnalysisJob", + "description": "Output only. An analysis Job.", + "readOnly": true + }, "createChildRolloutJob": { "$ref": "CreateChildRolloutJob", "description": "Output only. A createChildRollout Job.", @@ -4273,6 +4613,11 @@ "description": "Output only. Information specific to an advanceChildRollout `JobRun`", "readOnly": true }, + "analysisJobRun": { + "$ref": "AnalysisJobRun", + "description": "Output only. Information specific to an analysis `JobRun`.", + "readOnly": true + }, "createChildRolloutJobRun": { "$ref": "CreateChildRolloutJobRun", "description": "Output only. Information specific to a createChildRollout `JobRun`.", @@ -4456,6 +4801,28 @@ }, "type": "object" }, + "KubernetesRenderMetadata": { + "description": "KubernetesRenderMetadata contains Kubernetes information associated with a `Release` render.", + "id": "KubernetesRenderMetadata", + "properties": { + "canaryDeployment": { + "description": "Output only. Name of the canary version of the Kubernetes Deployment that will be applied to the GKE cluster. Only set if a canary deployment strategy was configured.", + "readOnly": true, + "type": "string" + }, + "deployment": { + "description": "Output only. Name of the Kubernetes Deployment that will be applied to the GKE cluster. Only set if a single Deployment was provided in the rendered manifest.", + "readOnly": true, + "type": "string" + }, + "kubernetesNamespace": { + "description": "Output only. Namespace the Kubernetes resources will be applied to in the GKE cluster. Only set if applying resources to a single namespace.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ListAutomationRunsResponse": { "description": "The response object from `ListAutomationRuns`.", "id": "ListAutomationRunsResponse", @@ -4972,6 +5339,10 @@ "description": "PhaseConfig represents the configuration for a phase in the custom canary deployment.", "id": "PhaseConfig", "properties": { + "analysis": { + "$ref": "Analysis", + "description": "Optional. Configuration for the analysis job of this phase. If this is not configured, there will be no analysis job for this phase." + }, "percentage": { "description": "Required. Percentage deployment for the phase.", "format": "int32", @@ -4999,6 +5370,10 @@ "verify": { "description": "Optional. Whether to run verify tests after the deployment via `skaffold verify`.", "type": "boolean" + }, + "verifyConfig": { + "$ref": "Verify", + "description": "Optional. Configuration for the verify job. Cannot be set if `verify` is set to true." } }, "type": "object" @@ -5123,6 +5498,13 @@ "type": "string" }, "type": "array" + }, + "tasks": { + "description": "Optional. The tasks that will run as a part of the postdeploy job. The tasks are executed sequentially in the order specified. Only one of `actions` or `tasks` can be specified.", + "items": { + "$ref": "Task" + }, + "type": "array" } }, "type": "object" @@ -5138,6 +5520,14 @@ }, "readOnly": true, "type": "array" + }, + "tasks": { + "description": "Output only. The tasks that are executed as part of the postdeploy Job.", + "items": { + "$ref": "Task" + }, + "readOnly": true, + "type": "array" } }, "type": "object" @@ -5174,6 +5564,23 @@ "description": "Output only. Additional information about the postdeploy failure, if available.", "readOnly": true, "type": "string" + }, + "metadata": { + "$ref": "PostdeployJobRunMetadata", + "description": "Output only. Metadata containing information about the postdeploy `JobRun`.", + "readOnly": true + } + }, + "type": "object" + }, + "PostdeployJobRunMetadata": { + "description": "PostdeployJobRunMetadata contains metadata about the postdeploy `JobRun`.", + "id": "PostdeployJobRunMetadata", + "properties": { + "custom": { + "$ref": "CustomMetadata", + "description": "Output only. Custom metadata provided by user-defined postdeploy operation.", + "readOnly": true } }, "type": "object" @@ -5188,6 +5595,13 @@ "type": "string" }, "type": "array" + }, + "tasks": { + "description": "Optional. The tasks that will run as a part of the predeploy job. The tasks are executed sequentially in the order specified. Only one of `actions` or `tasks` can be specified.", + "items": { + "$ref": "Task" + }, + "type": "array" } }, "type": "object" @@ -5203,6 +5617,14 @@ }, "readOnly": true, "type": "array" + }, + "tasks": { + "description": "Output only. The tasks that are executed as part of the predeploy Job.", + "items": { + "$ref": "Task" + }, + "readOnly": true, + "type": "array" } }, "type": "object" @@ -5239,6 +5661,23 @@ "description": "Output only. Additional information about the predeploy failure, if available.", "readOnly": true, "type": "string" + }, + "metadata": { + "$ref": "PredeployJobRunMetadata", + "description": "Output only. Metadata containing information about the predeploy `JobRun`.", + "readOnly": true + } + }, + "type": "object" + }, + "PredeployJobRunMetadata": { + "description": "PredeployJobRunMetadata contains metadata about the predeploy `JobRun`.", + "id": "PredeployJobRunMetadata", + "properties": { + "custom": { + "$ref": "CustomMetadata", + "description": "Output only. Custom metadata provided by user-defined predeploy operation.", + "readOnly": true } }, "type": "object" @@ -5670,6 +6109,11 @@ "$ref": "CustomMetadata", "description": "Output only. Custom metadata provided by user-defined render operation.", "readOnly": true + }, + "kubernetes": { + "$ref": "KubernetesRenderMetadata", + "description": "Output only. Metadata associated with rendering for a Kubernetes cluster (GKE or GKE Enterprise target).", + "readOnly": true } }, "type": "object" @@ -6742,6 +7186,10 @@ "description": "Standard represents the standard deployment strategy.", "id": "Standard", "properties": { + "analysis": { + "$ref": "Analysis", + "description": "Optional. Configuration for the analysis job. If this is not configured, the analysis job will not be present." + }, "postdeploy": { "$ref": "Postdeploy", "description": "Optional. Configuration for the postdeploy job. If this is not configured, the postdeploy job will not be present." @@ -6753,6 +7201,10 @@ "verify": { "description": "Optional. Whether to verify a deployment via `skaffold verify`.", "type": "boolean" + }, + "verifyConfig": { + "$ref": "Verify", + "description": "Optional. Configuration for the verify job. Cannot be set if `verify` is set to true." } }, "type": "object" @@ -7116,6 +7568,17 @@ }, "type": "object" }, + "Task": { + "description": "A Task represents a unit of work that is executed as part of a Job.", + "id": "Task", + "properties": { + "container": { + "$ref": "ContainerTask", + "description": "Optional. This task is represented by a container that is executed in the Cloud Build execution environment." + } + }, + "type": "object" + }, "TerminateJobRunRequest": { "description": "The request object used by `TerminateJobRun`.", "id": "TerminateJobRunRequest", @@ -7363,10 +7826,33 @@ }, "type": "object" }, + "Verify": { + "description": "Verify contains the verify job configuration information.", + "id": "Verify", + "properties": { + "tasks": { + "description": "Optional. The tasks that will run as a part of the verify job. The tasks are executed sequentially in the order specified.", + "items": { + "$ref": "Task" + }, + "type": "array" + } + }, + "type": "object" + }, "VerifyJob": { "description": "A verify Job.", "id": "VerifyJob", - "properties": {}, + "properties": { + "tasks": { + "description": "Output only. The tasks that are executed as part of the verify Job.", + "items": { + "$ref": "Task" + }, + "readOnly": true, + "type": "array" + } + }, "type": "object" }, "VerifyJobRun": { @@ -7413,6 +7899,23 @@ "description": "Output only. Additional information about the verify failure, if available.", "readOnly": true, "type": "string" + }, + "metadata": { + "$ref": "VerifyJobRunMetadata", + "description": "Output only. Metadata containing information about the verify `JobRun`.", + "readOnly": true + } + }, + "type": "object" + }, + "VerifyJobRunMetadata": { + "description": "VerifyJobRunMetadata contains metadata about the verify `JobRun`.", + "id": "VerifyJobRunMetadata", + "properties": { + "custom": { + "$ref": "CustomMetadata", + "description": "Output only. Custom metadata provided by user-defined verify operation.", + "readOnly": true } }, "type": "object" diff --git a/discovery/clouderrorreporting-v1beta1.json b/discovery/clouderrorreporting-v1beta1.json index caab5720979..fae8d5e8783 100644 --- a/discovery/clouderrorreporting-v1beta1.json +++ b/discovery/clouderrorreporting-v1beta1.json @@ -20,6 +20,71 @@ "description": "Regional Endpoint", "endpointUrl": "https://clouderrorreporting.us.rep.googleapis.com/", "location": "us" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.us-west8.rep.googleapis.com/", + "location": "us-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouderrorreporting.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" } ], "fullyEncodeReservedExpansion": true, @@ -735,7 +800,7 @@ } } }, - "revision": "20260206", + "revision": "20260424", "rootUrl": "https://clouderrorreporting.googleapis.com/", "schemas": { "DeleteEventsResponse": { diff --git a/discovery/cloudfunctions-v1.json b/discovery/cloudfunctions-v1.json index 2af379453c5..c78f796bee3 100644 --- a/discovery/cloudfunctions-v1.json +++ b/discovery/cloudfunctions-v1.json @@ -181,7 +181,7 @@ "locations": { "methods": { "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "cloudfunctions.projects.locations.list", @@ -190,7 +190,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -563,7 +563,7 @@ } } }, - "revision": "20260129", + "revision": "20260424", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AuditConfig": { diff --git a/discovery/cloudfunctions-v2.json b/discovery/cloudfunctions-v2.json index 6e41d83fb11..6ae559ca2b0 100644 --- a/discovery/cloudfunctions-v2.json +++ b/discovery/cloudfunctions-v2.json @@ -110,7 +110,7 @@ "locations": { "methods": { "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2/projects/{projectsId}/locations", "httpMethod": "GET", "id": "cloudfunctions.projects.locations.list", @@ -119,7 +119,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -783,7 +783,7 @@ } } }, - "revision": "20260212", + "revision": "20260424", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AbortFunctionUpgradeRequest": { diff --git a/discovery/cloudfunctions-v2alpha.json b/discovery/cloudfunctions-v2alpha.json index 90a01546aee..487d0cb7cd3 100644 --- a/discovery/cloudfunctions-v2alpha.json +++ b/discovery/cloudfunctions-v2alpha.json @@ -110,7 +110,7 @@ "locations": { "methods": { "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2alpha/projects/{projectsId}/locations", "httpMethod": "GET", "id": "cloudfunctions.projects.locations.list", @@ -119,7 +119,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -783,7 +783,7 @@ } } }, - "revision": "20260212", + "revision": "20260424", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AbortFunctionUpgradeRequest": { diff --git a/discovery/cloudfunctions-v2beta.json b/discovery/cloudfunctions-v2beta.json index 7d676e6e162..0b58175d5e0 100644 --- a/discovery/cloudfunctions-v2beta.json +++ b/discovery/cloudfunctions-v2beta.json @@ -110,7 +110,7 @@ "locations": { "methods": { "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2beta/projects/{projectsId}/locations", "httpMethod": "GET", "id": "cloudfunctions.projects.locations.list", @@ -119,7 +119,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -783,7 +783,7 @@ } } }, - "revision": "20260212", + "revision": "20260424", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AbortFunctionUpgradeRequest": { diff --git a/discovery/cloudidentity-v1beta1.json b/discovery/cloudidentity-v1beta1.json index e29bcdfe487..8b046ccfecd 100644 --- a/discovery/cloudidentity-v1beta1.json +++ b/discovery/cloudidentity-v1beta1.json @@ -2349,7 +2349,7 @@ } } }, - "revision": "20260113", + "revision": "20260317", "rootUrl": "https://cloudidentity.googleapis.com/", "schemas": { "AddIdpCredentialOperationMetadata": { @@ -2411,7 +2411,7 @@ "type": "string" }, "supportsWorkProfile": { - "description": "Whether device supports Android work profiles. If false, this service will not block access to corp data even if an administrator turns on the \"Enforce Work Profile\" policy.", + "description": "Whether the device supports Android work profiles. If false, this service will not block access to corp data even if an administrator turns on the \"Enforce Work Profile\" policy.", "type": "boolean" }, "verifiedBoot": { @@ -2470,12 +2470,12 @@ "type": "object" }, "BrowserAttributes": { - "description": "Contains information about browser profiles reported by the [Endpoint Verification extension](https://chromewebstore.google.com/detail/endpoint-verification/callobklhcbilhphinckomhgkigmfocg?pli=1).", + "description": "Contains information about browser profiles reported by the clients on the device (e.g. [Endpoint Verification extension](https://chromewebstore.google.com/detail/endpoint-verification/callobklhcbilhphinckomhgkigmfocg?pli=1)).", "id": "BrowserAttributes", "properties": { "chromeBrowserInfo": { "$ref": "BrowserInfo", - "description": "Represents the current state of the [Chrome browser attributes](https://cloud.google.com/access-context-manager/docs/browser-attributes) sent by the [Endpoint Verification extension](https://chromewebstore.google.com/detail/endpoint-verification/callobklhcbilhphinckomhgkigmfocg?pli=1)." + "description": "Represents the current state of the [Chrome browser attributes](https://cloud.google.com/access-context-manager/docs/browser-attributes) sent by the clients on the device, such as [Endpoint Verification extension](https://chromewebstore.google.com/detail/endpoint-verification/callobklhcbilhphinckomhgkigmfocg?pli=1)." }, "chromeProfileId": { "description": "Chrome profile ID that is exposed by the Chrome API. It is unique for each device.", @@ -2490,7 +2490,7 @@ "type": "object" }, "BrowserInfo": { - "description": "Browser-specific fields reported by the [Endpoint Verification extension](https://chromewebstore.google.com/detail/endpoint-verification/callobklhcbilhphinckomhgkigmfocg?pli=1).", + "description": "Browser-specific fields reported by clients on the device, such as [Endpoint Verification extension](https://chromewebstore.google.com/detail/endpoint-verification/callobklhcbilhphinckomhgkigmfocg?pli=1).", "id": "BrowserInfo", "properties": { "browserManagementState": { @@ -2573,6 +2573,14 @@ ], "type": "string" }, + "policies": { + "description": "Output only. Chrome policies information for the browser as can be seen in chrome://policy. Full possibilities of policies can be consulted in [Chrome Enterprise Policy List](https://chromeenterprise.google/policies/).", + "items": { + "$ref": "ChromePolicy" + }, + "readOnly": true, + "type": "array" + }, "safeBrowsingProtectionLevel": { "description": "Current state of [Safe Browsing protection level](https://chromeenterprise.google/policies/#SafeBrowsingProtectionLevel).", "enum": [ @@ -2729,6 +2737,77 @@ }, "type": "object" }, + "ChromePolicy": { + "description": "Represents a Chrome policy and its current state.", + "id": "ChromePolicy", + "properties": { + "conflicts": { + "description": "Output only. A list of other policy values for the same policy name that were not applied due to lower precedence. This field is empty if there were no conflicts.", + "items": { + "$ref": "PolicyConflict" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Output only. The unique name of the Chrome policy. These names correspond to the policy names listed in [Chrome Enterprise Policy List](https://chromeenterprise.google/policies/)", + "readOnly": true, + "type": "string" + }, + "scope": { + "description": "Output only. The scope at which the *applied* policy value is set (USER or MACHINE).", + "enum": [ + "SCOPE_UNKNOWN", + "USER", + "MACHINE" + ], + "enumDescriptions": [ + "Default value. The policy scope is unknown or not specified.", + "User-level policy. This scope indicates the policy applies to the specific user session or profile. For cloud policies, this is typically the signed-in Chrome profile. On some platforms like Windows, this can also refer to the OS user.", + "Machine-level policy. This scope indicates the policy applies system-wide to all users on the current machine or device." + ], + "readOnly": true, + "type": "string" + }, + "source": { + "description": "Output only. The source from which the *applied* policy value originated.", + "enum": [ + "SOURCE_UNKNOWN", + "ENTERPRISE_DEFAULT", + "CLOUD", + "ACTIVE_DIRECTORY", + "DEVICE_LOCAL_ACCOUNT_OVERRIDE_DEPRECATED", + "PLATFORM", + "PRIORITY_CLOUD_DEPRECATED", + "MERGED", + "COMMAND_LINE", + "CLOUD_FROM_ASH", + "RESTRICTED_MANAGED_GUEST_SESSION_OVERRIDE" + ], + "enumDescriptions": [ + "Default value. The policy source is unknown or not specified.", + "The policy is provided by Chrome's default settings when running in an enterprise environment.", + "The policy is managed and pushed from a cloud-based administration console, such as the Google Admin console.", + "The policy is sourced from Active Directory, primarily for Active Directory-managed ChromeOS devices.", + "Deprecated: Formerly used when a policy was overridden by ChromeOS for public sessions or kiosk mode.", + "The policy is set by OS built-in tool on desktop.", + "Deprecated: Formerly used for cloud policies with higher priority.", + "The applied policy value is the result of a merge from multiple policy sources.", + "The policy is set using a command line argument passed to the Chrome executable, usually intended for development or testing.", + "For ChromeOS, this indicates a policy set by cloud management in the Ash browser and then made available to the Lacros browser.", + "The policy is set by the restricted managed guest session override." + ], + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Output only. The currently applied value of the policy. The format depends on the policy type (e.g., boolean, string, JSON array/object).", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ClientState": { "description": "Represents the state associated with an API client calling the Devices API. Resource representing ClientState and supports updates from API users", "id": "ClientState", @@ -2957,6 +3036,13 @@ "readOnly": true, "type": "string" }, + "browserProfiles": { + "description": "Browser profiles on the device. This is a copy of the BrowserAttributes message defined in EndpointVerificationSpecificAttributes. We are replicating it here since EndpointVerification isn't the only client reporting browser profiles.", + "items": { + "$ref": "BrowserAttributes" + }, + "type": "array" + }, "buildNumber": { "description": "Output only. Build number of the device.", "readOnly": true, @@ -3102,7 +3188,7 @@ "Device is approved.", "Device is blocked.", "Device is pending approval.", - "The device is not provisioned. Device will start from this state until some action is taken (i.e. a user starts using the device).", + "The device is not provisioned. The device will start from this state until some action is taken (i.e. a user starts using the device).", "Data and settings on the device are being removed.", "All data and settings on the device are removed." ], @@ -5316,6 +5402,64 @@ }, "type": "object" }, + "PolicyConflict": { + "description": "Represents a policy value from a source that was not applied because a higher-priority source took precedence.", + "id": "PolicyConflict", + "properties": { + "scope": { + "description": "Output only. The scope at which this lower-priority policy is set (USER or MACHINE).", + "enum": [ + "SCOPE_UNKNOWN", + "USER", + "MACHINE" + ], + "enumDescriptions": [ + "Default value. The policy scope is unknown or not specified.", + "User-level policy. This scope indicates the policy applies to the specific user session or profile. For cloud policies, this is typically the signed-in Chrome profile. On some platforms like Windows, this can also refer to the OS user.", + "Machine-level policy. This scope indicates the policy applies system-wide to all users on the current machine or device." + ], + "readOnly": true, + "type": "string" + }, + "source": { + "description": "Output only. The source from which this lower-priority policy value originated.", + "enum": [ + "SOURCE_UNKNOWN", + "ENTERPRISE_DEFAULT", + "CLOUD", + "ACTIVE_DIRECTORY", + "DEVICE_LOCAL_ACCOUNT_OVERRIDE_DEPRECATED", + "PLATFORM", + "PRIORITY_CLOUD_DEPRECATED", + "MERGED", + "COMMAND_LINE", + "CLOUD_FROM_ASH", + "RESTRICTED_MANAGED_GUEST_SESSION_OVERRIDE" + ], + "enumDescriptions": [ + "Default value. The policy source is unknown or not specified.", + "The policy is provided by Chrome's default settings when running in an enterprise environment.", + "The policy is managed and pushed from a cloud-based administration console, such as the Google Admin console.", + "The policy is sourced from Active Directory, primarily for Active Directory-managed ChromeOS devices.", + "Deprecated: Formerly used when a policy was overridden by ChromeOS for public sessions or kiosk mode.", + "The policy is set by OS built-in tool on desktop.", + "Deprecated: Formerly used for cloud policies with higher priority.", + "The applied policy value is the result of a merge from multiple policy sources.", + "The policy is set using a command line argument passed to the Chrome executable, usually intended for development or testing.", + "For ChromeOS, this indicates a policy set by cloud management in the Ash browser and then made available to the Lacros browser.", + "The policy is set by the restricted managed guest session override." + ], + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Output only. The policy value from this lower-priority source.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "PolicyQuery": { "description": "PolicyQuery", "id": "PolicyQuery", diff --git a/discovery/cloudkms-v1.json b/discovery/cloudkms-v1.json index 200eed45936..de5549bee49 100644 --- a/discovery/cloudkms-v1.json +++ b/discovery/cloudkms-v1.json @@ -19,11 +19,6 @@ "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/kms/", "endpoints": [ - { - "description": "Regional Endpoint", - "endpointUrl": "https://cloudkms.europe-west3.rep.googleapis.com/", - "location": "europe-west3" - }, { "description": "Regional Endpoint", "endpointUrl": "https://cloudkms.europe-west8.rep.googleapis.com/", @@ -79,11 +74,6 @@ "endpointUrl": "https://cloudkms.us-west4.rep.googleapis.com/", "location": "us-west4" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://cloudkms.us-west8.rep.googleapis.com/", - "location": "us-west8" - }, { "description": "Regional Endpoint", "endpointUrl": "https://cloudkms.us-east5.rep.googleapis.com/", @@ -109,6 +99,16 @@ "endpointUrl": "https://cloudkms.northamerica-northeast2.rep.googleapis.com/", "location": "northamerica-northeast2" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://cloudkms.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://cloudkms.us-west8.rep.googleapis.com/", + "location": "us-west8" + }, { "description": "Regional Endpoint", "endpointUrl": "https://cloudkms.us.rep.googleapis.com/", @@ -253,7 +253,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the KeyAccessJustificationsPolicyConfig to get.", + "description": "Required. Specifies the name of the KeyAccessJustificationsPolicyConfig to get.", "location": "path", "pattern": "^folders/[^/]+/kajPolicyConfig$", "required": true, @@ -314,14 +314,14 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name for this KeyAccessJustificationsPolicyConfig in the format of \"{organizations|folders|projects}/*/kajPolicyConfig\".", + "description": "Identifier. Represents the resource name for this KeyAccessJustificationsPolicyConfig in the format of \"{organizations|folders|projects}/*/kajPolicyConfig\".", "location": "path", "pattern": "^folders/[^/]+/kajPolicyConfig$", "required": true, "type": "string" }, "updateMask": { - "description": "Optional. The list of fields to update.", + "description": "Optional. Specifies the list of fields to update.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -353,7 +353,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the KeyAccessJustificationsPolicyConfig to get.", + "description": "Required. Specifies the name of the KeyAccessJustificationsPolicyConfig to get.", "location": "path", "pattern": "^organizations/[^/]+/kajPolicyConfig$", "required": true, @@ -379,14 +379,14 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name for this KeyAccessJustificationsPolicyConfig in the format of \"{organizations|folders|projects}/*/kajPolicyConfig\".", + "description": "Identifier. Represents the resource name for this KeyAccessJustificationsPolicyConfig in the format of \"{organizations|folders|projects}/*/kajPolicyConfig\".", "location": "path", "pattern": "^organizations/[^/]+/kajPolicyConfig$", "required": true, "type": "string" }, "updateMask": { - "description": "Optional. The list of fields to update.", + "description": "Optional. Specifies the list of fields to update.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -444,7 +444,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the KeyAccessJustificationsPolicyConfig to get.", + "description": "Required. Specifies the name of the KeyAccessJustificationsPolicyConfig to get.", "location": "path", "pattern": "^projects/[^/]+/kajPolicyConfig$", "required": true, @@ -496,7 +496,7 @@ ], "parameters": { "project": { - "description": "Required. The number or id of the project to get the effective KeyAccessJustificationsEnrollmentConfig for.", + "description": "Required. Specifies the number or id of the project to get the effective KeyAccessJustificationsEnrollmentConfig for.", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -522,7 +522,7 @@ ], "parameters": { "project": { - "description": "Required. The number or id of the project to get the effective KeyAccessJustificationsPolicyConfig. In the format of \"projects/{|}\"", + "description": "Required. Specifies the number or id of the project to get the effective KeyAccessJustificationsPolicyConfig. In the format of \"projects/{|}\"", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -583,14 +583,14 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name for this KeyAccessJustificationsPolicyConfig in the format of \"{organizations|folders|projects}/*/kajPolicyConfig\".", + "description": "Identifier. Represents the resource name for this KeyAccessJustificationsPolicyConfig in the format of \"{organizations|folders|projects}/*/kajPolicyConfig\".", "location": "path", "pattern": "^projects/[^/]+/kajPolicyConfig$", "required": true, "type": "string" }, "updateMask": { - "description": "Optional. The list of fields to update.", + "description": "Optional. Specifies the list of fields to update.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -694,7 +694,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "cloudkms.projects.locations.list", @@ -703,7 +703,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2948,7 +2948,7 @@ } } }, - "revision": "20260219", + "revision": "20260423", "rootUrl": "https://cloudkms.googleapis.com/", "schemas": { "AddQuorumMember": { @@ -3399,7 +3399,7 @@ }, "keyAccessJustificationsPolicy": { "$ref": "KeyAccessJustificationsPolicy", - "description": "Optional. The policy used for Key Access Justifications Policy Enforcement. If this field is present and this key is enrolled in Key Access Justifications Policy Enforcement, the policy will be evaluated in encrypt, decrypt, and sign operations, and the operation will fail if rejected by the policy. The policy is defined by specifying zero or more allowed justification codes. https://cloud.google.com/assured-workloads/key-access-justifications/docs/justification-codes By default, this field is absent, and all justification codes are allowed." + "description": "Optional. The policy used for Key Access Justifications Policy Enforcement. If this field is present and this key is enrolled in Key Access Justifications Policy Enforcement, the policy will be evaluated in encrypt, decrypt, and sign operations, and the operation will fail if rejected by the policy. The policy is defined by specifying zero or more allowed justification codes. https://cloud.google.com/assured-workloads/key-access-justifications/docs/justification-codes By default, this field is absent, and all justification codes are allowed. If the `key_access_justifications_policy.allowed_access_reasons` is empty (zero allowed justification code), all encrypt, decrypt, and sign operations will fail." }, "labels": { "additionalProperties": { @@ -4472,26 +4472,26 @@ "type": "object" }, "KeyAccessJustificationsEnrollmentConfig": { - "description": "The configuration of a protection level for a project's Key Access Justifications enrollment.", + "description": "Represents the configuration of a protection level for a project's Key Access Justifications enrollment.", "id": "KeyAccessJustificationsEnrollmentConfig", "properties": { "auditLogging": { - "description": "Whether the project has KAJ logging enabled.", + "description": "Indicates whether the project has KAJ logging enabled.", "type": "boolean" }, "policyEnforcement": { - "description": "Whether the project is enrolled in KAJ policy enforcement.", + "description": "Indicates whether the project is enrolled in KAJ policy enforcement.", "type": "boolean" } }, "type": "object" }, "KeyAccessJustificationsPolicy": { - "description": "A KeyAccessJustificationsPolicy specifies zero or more allowed AccessReason values for encrypt, decrypt, and sign operations on a CryptoKey.", + "description": "A KeyAccessJustificationsPolicy specifies zero or more allowed AccessReason values for encrypt, decrypt, and sign operations on a CryptoKey or KeyAccessJustificationsPolicyConfig (the default Key Access Justifications policy).", "id": "KeyAccessJustificationsPolicy", "properties": { "allowedAccessReasons": { - "description": "The list of allowed reasons for access to a CryptoKey. Zero allowed access reasons means all encrypt, decrypt, and sign operations for the CryptoKey associated with this policy will fail.", + "description": "The list of allowed reasons for access to a CryptoKey. Note that empty allowed_access_reasons has a different meaning depending on where this message appears. If this is under KeyAccessJustificationsPolicyConfig, it means allow-all. If this is under CryptoKey, it means deny-all.", "items": { "enum": [ "REASON_UNSPECIFIED", @@ -4543,15 +4543,20 @@ "type": "object" }, "KeyAccessJustificationsPolicyConfig": { - "description": "A singleton configuration for Key Access Justifications policies.", + "description": "Represents a singleton configuration for Key Access Justifications policies.", "id": "KeyAccessJustificationsPolicyConfig", "properties": { "defaultKeyAccessJustificationPolicy": { "$ref": "KeyAccessJustificationsPolicy", - "description": "Optional. The default key access justification policy used when a CryptoKey is created in this folder. This is only used when a Key Access Justifications policy is not provided in the CreateCryptoKeyRequest. This overrides any default policies in its ancestry." + "description": "Optional. Specifies the default key access justifications (KAJ) policy used when a CryptoKey is created in this folder. This is only used when a Key Access Justifications policy is not provided in the CreateCryptoKeyRequest. This overrides any default policies in its ancestry. If this field is unset, or is set but contains an empty allowed_access_reasons list, no default Key Access Justifications (KAJ) policy configuration is active. In this scenario, all newly created keys will default to an \"allow-all\" policy." + }, + "defaultPolicyAvailable": { + "description": "Output only. Indicates whether this parent resource is available to default policy feature. Please consult [the prerequisite of default policy feature](https://cloud.google.com/assured-workloads/key-access-justifications/docs/set-default-policy#before) for more details.", + "readOnly": true, + "type": "boolean" }, "name": { - "description": "Identifier. The resource name for this KeyAccessJustificationsPolicyConfig in the format of \"{organizations|folders|projects}/*/kajPolicyConfig\".", + "description": "Identifier. Represents the resource name for this KeyAccessJustificationsPolicyConfig in the format of \"{organizations|folders|projects}/*/kajPolicyConfig\".", "type": "string" } }, @@ -5714,31 +5719,31 @@ "type": "object" }, "ShowEffectiveKeyAccessJustificationsEnrollmentConfigResponse": { - "description": "Response message for KeyAccessJustificationsConfig.ShowEffectiveKeyAccessJustificationsEnrollmentConfig", + "description": "Represents a response message for KeyAccessJustificationsConfig.ShowEffectiveKeyAccessJustificationsEnrollmentConfig", "id": "ShowEffectiveKeyAccessJustificationsEnrollmentConfigResponse", "properties": { "externalConfig": { "$ref": "KeyAccessJustificationsEnrollmentConfig", - "description": "The effective KeyAccessJustificationsEnrollmentConfig for external keys." + "description": "Contains the effective KeyAccessJustificationsEnrollmentConfig for external keys." }, "hardwareConfig": { "$ref": "KeyAccessJustificationsEnrollmentConfig", - "description": "The effective KeyAccessJustificationsEnrollmentConfig for hardware keys." + "description": "Contains the effective KeyAccessJustificationsEnrollmentConfig for hardware keys." }, "softwareConfig": { "$ref": "KeyAccessJustificationsEnrollmentConfig", - "description": "The effective KeyAccessJustificationsEnrollmentConfig for software keys." + "description": "Contains the effective KeyAccessJustificationsEnrollmentConfig for software keys." } }, "type": "object" }, "ShowEffectiveKeyAccessJustificationsPolicyConfigResponse": { - "description": "Response message for KeyAccessJustificationsConfig.ShowEffectiveKeyAccessJustificationsPolicyConfig.", + "description": "Represents a response message for KeyAccessJustificationsConfig.ShowEffectiveKeyAccessJustificationsPolicyConfig.", "id": "ShowEffectiveKeyAccessJustificationsPolicyConfigResponse", "properties": { "effectiveKajPolicy": { "$ref": "KeyAccessJustificationsPolicyConfig", - "description": "The effective KeyAccessJustificationsPolicyConfig." + "description": "Contains the effective KeyAccessJustificationsPolicyConfig." } }, "type": "object" @@ -5765,6 +5770,10 @@ "readOnly": true, "type": "string" }, + "keyPortabilityEnabled": { + "description": "Optional. Immutable. Indicates whether key portability is enabled for the SingleTenantHsmInstance. This can only be set at creation time. Key portability features are disabled by default and not yet available in GA.", + "type": "boolean" + }, "name": { "description": "Identifier. The resource name for this SingleTenantHsmInstance in the format `projects/*/locations/*/singleTenantHsmInstances/*`.", "type": "string" @@ -5801,7 +5810,7 @@ "type": "string" }, "unrefreshedDurationUntilDisable": { - "description": "Output only. The system-defined duration that an instance can remain unrefreshed until it is automatically disabled. This will have a value of 120 days.", + "description": "Output only. The system-defined duration that an instance can remain unrefreshed until it is automatically disabled. This will have a value of 730 days.", "format": "google-duration", "readOnly": true, "type": "string" diff --git a/discovery/cloudlocationfinder-v1.json b/discovery/cloudlocationfinder-v1.json index 7867122d6a3..5be683f2d77 100644 --- a/discovery/cloudlocationfinder-v1.json +++ b/discovery/cloudlocationfinder-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "cloudlocationfinder.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -304,7 +304,7 @@ } } }, - "revision": "20260128", + "revision": "20260422", "rootUrl": "https://cloudlocationfinder.googleapis.com/", "schemas": { "CloudLocation": { diff --git a/discovery/cloudlocationfinder-v1alpha.json b/discovery/cloudlocationfinder-v1alpha.json index fd2dfc02e7d..47c4243b382 100644 --- a/discovery/cloudlocationfinder-v1alpha.json +++ b/discovery/cloudlocationfinder-v1alpha.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha/projects/{projectsId}/locations", "httpMethod": "GET", "id": "cloudlocationfinder.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -304,7 +304,7 @@ } } }, - "revision": "20260128", + "revision": "20260422", "rootUrl": "https://cloudlocationfinder.googleapis.com/", "schemas": { "CloudLocation": { diff --git a/discovery/cloudsearch-v1.json b/discovery/cloudsearch-v1.json index b80d9a8187c..c8fb1861393 100644 --- a/discovery/cloudsearch-v1.json +++ b/discovery/cloudsearch-v1.json @@ -1015,6 +1015,11 @@ "location": "query", "type": "string" }, + "requestOptions.clientDisplayLanguageCode": { + "description": "The BCP-47 language code, such as \"pt\" or \"en\". It represents the user's preferred Display Language.", + "location": "query", + "type": "string" + }, "requestOptions.debugOptions.enableDebugging": { "description": "If you are asked by Google to help with debugging, set this field. Otherwise, ignore this field.", "location": "query", @@ -2101,7 +2106,7 @@ } } }, - "revision": "20260114", + "revision": "20260429", "rootUrl": "https://cloudsearch.googleapis.com/", "schemas": { "Action": { @@ -6788,9 +6793,32 @@ "type": "object" }, "QuerySuggestion": { - "description": "This field does not contain anything as of now and is just used as an indicator that the suggest result was a phrase completion.", "id": "QuerySuggestion", - "properties": {}, + "properties": { + "lastQueryTime": { + "description": "Last query time of the suggestion for query history suggestions.", + "format": "google-datetime", + "type": "string" + }, + "sourceCorpus": { + "description": "Source corpus of the suggestion.", + "enum": [ + "SOURCE_CORPUS_UNSPECIFIED", + "GMAIL", + "DRIVE", + "CHAT", + "CALENDAR" + ], + "enumDescriptions": [ + "Source corpus is unspecified.", + "Source corpus is Gmail.", + "Source corpus is Drive.", + "Source corpus is Chat.", + "Source corpus is Calendar." + ], + "type": "string" + } + }, "type": "object" }, "RemoveActivityRequest": { @@ -6862,6 +6890,10 @@ "description": "Shared request options for all RPC methods.", "id": "RequestOptions", "properties": { + "clientDisplayLanguageCode": { + "description": "The BCP-47 language code, such as \"pt\" or \"en\". It represents the user's preferred Display Language.", + "type": "string" + }, "debugOptions": { "$ref": "DebugOptions", "description": "Debug options of the request" @@ -7250,7 +7282,7 @@ "type": "object" }, "SearchRequest": { - "description": "The search API request. NEXT ID: 24", + "description": "The search API request. NEXT ID: 25", "id": "SearchRequest", "properties": { "contextAttributes": { diff --git a/discovery/cloudsupport-v2.json b/discovery/cloudsupport-v2.json index 39203c86920..110883f3c85 100644 --- a/discovery/cloudsupport-v2.json +++ b/discovery/cloudsupport-v2.json @@ -355,7 +355,7 @@ "type": "string" }, "query": { - "description": "An expression used to filter cases. Expressions use the following fields separated by `AND` and specified with `=`: - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. - `state`: Can be `OPEN` or `CLOSED`. - `priority`: Can be `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. You must specify either `organization` or `project`. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `\"my search\"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time>\"2020-01-01T00:00:00-05:00\"`. `update_time` only supports the greater than operator (`>`). Examples: - `organization=\"organizations/123456789\"` - `project=\"projects/my-project-id\"` - `project=\"projects/123456789\"` - `organization=\"organizations/123456789\" AND state=CLOSED` - `project=\"projects/my-project-id\" AND creator.email=\"tester@example.com\"` - `project=\"projects/my-project-id\" AND (priority=P0 OR priority=P1)`", + "description": "An expression used to filter cases. Expressions use the following fields separated by `AND` and specified with `=`: - `state`: Can be `OPEN` or `CLOSED`. - `priority`: Can be `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `\"my search\"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time>\"2020-01-01T00:00:00-05:00\"`. `update_time` only supports the greater than operator (`>`). If you are using the `v2` version of the API, you must specify the case parent in the `parent` field. If you provide an empty `query`, all cases under the parent resource will be returned. If you are using the `v2beta` version of the API, you must specify the case parent in the `query` field using one of the two fields below, which are only available for `v2beta`. The `parent` field will be ignored. - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. Examples: For `v2`: - `state=CLOSED` - `state=OPEN AND creator.email=\"tester@example.com\"` - `state=OPEN AND (priority=P0 OR priority=P1)` - `update_time>\"2020-01-01T00:00:00-05:00\"` For `v2beta`: - `organization=\"organizations/123456789\"` - `project=\"projects/my-project-id\"` - `project=\"projects/123456789\"` - `organization=\"organizations/123456789\" AND state=CLOSED` - `project=\"projects/my-project-id\" AND creator.email=\"tester@example.com\"` - `project=\"projects/my-project-id\" AND (priority=P0 OR priority=P1)`", "location": "query", "type": "string" } @@ -552,7 +552,7 @@ } } }, - "revision": "20260113", + "revision": "20260409", "rootUrl": "https://cloudsupport.googleapis.com/", "schemas": { "Actor": { @@ -909,6 +909,10 @@ "description": "# gdata.* are outside protos with mising documentation", "type": "string" }, + "fromFusionId": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, "fromHeader": { "description": "# gdata.* are outside protos with mising documentation", "type": "string" @@ -916,6 +920,11 @@ "fromUrlPath": { "description": "# gdata.* are outside protos with mising documentation", "type": "string" + }, + "fusionIdDetectionMetadata": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" } }, "type": "object" diff --git a/discovery/cloudsupport-v2beta.json b/discovery/cloudsupport-v2beta.json index 4481e5d5bae..ca0d1e0a0ff 100644 --- a/discovery/cloudsupport-v2beta.json +++ b/discovery/cloudsupport-v2beta.json @@ -381,7 +381,7 @@ "type": "string" }, "query": { - "description": "An expression used to filter cases. Expressions use the following fields separated by `AND` and specified with `=`: - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. - `state`: Can be `OPEN` or `CLOSED`. - `priority`: Can be `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. You must specify either `organization` or `project`. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `\"my search\"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time>\"2020-01-01T00:00:00-05:00\"`. `update_time` only supports the greater than operator (`>`). Examples: - `organization=\"organizations/123456789\"` - `project=\"projects/my-project-id\"` - `project=\"projects/123456789\"` - `organization=\"organizations/123456789\" AND state=CLOSED` - `project=\"projects/my-project-id\" AND creator.email=\"tester@example.com\"` - `project=\"projects/my-project-id\" AND (priority=P0 OR priority=P1)`", + "description": "An expression used to filter cases. Expressions use the following fields separated by `AND` and specified with `=`: - `state`: Can be `OPEN` or `CLOSED`. - `priority`: Can be `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `\"my search\"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time>\"2020-01-01T00:00:00-05:00\"`. `update_time` only supports the greater than operator (`>`). If you are using the `v2` version of the API, you must specify the case parent in the `parent` field. If you provide an empty `query`, all cases under the parent resource will be returned. If you are using the `v2beta` version of the API, you must specify the case parent in the `query` field using one of the two fields below, which are only available for `v2beta`. The `parent` field will be ignored. - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. Examples: For `v2`: - `state=CLOSED` - `state=OPEN AND creator.email=\"tester@example.com\"` - `state=OPEN AND (priority=P0 OR priority=P1)` - `update_time>\"2020-01-01T00:00:00-05:00\"` For `v2beta`: - `organization=\"organizations/123456789\"` - `project=\"projects/my-project-id\"` - `project=\"projects/123456789\"` - `organization=\"organizations/123456789\" AND state=CLOSED` - `project=\"projects/my-project-id\" AND creator.email=\"tester@example.com\"` - `project=\"projects/my-project-id\" AND (priority=P0 OR priority=P1)`", "location": "query", "type": "string" } @@ -669,7 +669,7 @@ } } }, - "revision": "20260113", + "revision": "20260409", "rootUrl": "https://cloudsupport.googleapis.com/", "schemas": { "Actor": { @@ -1050,6 +1050,10 @@ "description": "# gdata.* are outside protos with mising documentation", "type": "string" }, + "fromFusionId": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, "fromHeader": { "description": "# gdata.* are outside protos with mising documentation", "type": "string" @@ -1057,6 +1061,11 @@ "fromUrlPath": { "description": "# gdata.* are outside protos with mising documentation", "type": "string" + }, + "fusionIdDetectionMetadata": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" } }, "type": "object" diff --git a/discovery/cloudtasks-v2.json b/discovery/cloudtasks-v2.json index 26ce9c83ec1..169b8655997 100644 --- a/discovery/cloudtasks-v2.json +++ b/discovery/cloudtasks-v2.json @@ -160,7 +160,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2/projects/{projectsId}/locations", "httpMethod": "GET", "id": "cloudtasks.projects.locations.list", @@ -207,7 +207,7 @@ ] }, "updateCmekConfig": { - "description": "Creates or Updates a CMEK config. Updates the Customer Managed Encryption Key assotiated with the Cloud Tasks location (Creates if the key does not already exist). All new tasks created in the location will be encrypted at-rest with the KMS-key provided in the config.", + "description": "Creates or Updates a CMEK config. Updates the Customer Managed Encryption Key associated with the Cloud Tasks location (Creates if the key does not already exist). All new tasks created in the location will be encrypted at-rest with the KMS-key provided in the config.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/cmekConfig", "httpMethod": "PATCH", "id": "cloudtasks.projects.locations.updateCmekConfig", @@ -785,7 +785,7 @@ } } }, - "revision": "20251021", + "revision": "20260330", "rootUrl": "https://cloudtasks.googleapis.com/", "schemas": { "AppEngineHttpRequest": { @@ -1416,7 +1416,7 @@ "id": "RateLimits", "properties": { "maxBurstSize": { - "description": "Output only. The max burst size. Max burst size limits how fast tasks in queue are processed when many tasks are in the queue and the rate is high. This field allows the queue to have a high rate so processing starts shortly after a task is enqueued, but still limits resource usage when many tasks are enqueued in a short period of time. The [token bucket](https://wikipedia.org/wiki/Token_Bucket) algorithm is used to control the rate of task dispatches. Each queue has a token bucket that holds tokens, up to the maximum specified by `max_burst_size`. Each time a task is dispatched, a token is removed from the bucket. Tasks will be dispatched until the queue's bucket runs out of tokens. The bucket will be continuously refilled with new tokens based on max_dispatches_per_second. Cloud Tasks will pick the value of `max_burst_size` based on the value of max_dispatches_per_second. For queues that were created or updated using `queue.yaml/xml`, `max_burst_size` is equal to [bucket_size](https://cloud.google.com/appengine/docs/standard/python/config/queueref#bucket_size). Since `max_burst_size` is output only, if UpdateQueue is called on a queue created by `queue.yaml/xml`, `max_burst_size` will be reset based on the value of max_dispatches_per_second, regardless of whether max_dispatches_per_second is updated. ", + "description": "Output only. The max burst size. Max burst size limits how fast tasks in queue are processed when many tasks are in the queue and the rate is high. This field allows the queue to have a high rate so processing starts shortly after a task is enqueued, but still limits resource usage when many tasks are enqueued in a short period of time. The [token bucket](https://wikipedia.org/wiki/Token_Bucket) algorithm is used to control the rate of task dispatches. Each queue has a token bucket that holds tokens, up to the maximum specified by `max_burst_size`. Each time a task is dispatched, a token is removed from the bucket. Tasks will be dispatched until the queue's bucket runs out of tokens. The bucket will be continuously refilled with new tokens based on `max_dispatches_per_second`. Cloud Tasks automatically sets an appropriate `max_burst_size` based on the value of `max_dispatches_per_second`. The value is dynamically optimized to ensure queue stability and throughput. It is generally at least equal to `max_dispatches_per_second` but might be higher to accommodate bursts of traffic. For queues that were created or updated using `queue.yaml/xml`, `max_burst_size` is equal to [bucket_size](https://cloud.google.com/appengine/docs/standard/python/config/queueref#bucket_size). Since `max_burst_size` is output only, if UpdateQueue is called on a queue created by `queue.yaml/xml`, `max_burst_size` will be reset based on the value of `max_dispatches_per_second`, regardless of whether `max_dispatches_per_second` is updated. ", "format": "int32", "type": "integer" }, diff --git a/discovery/cloudtasks-v2beta2.json b/discovery/cloudtasks-v2beta2.json index 0a8680d289f..4e0e6a5444e 100644 --- a/discovery/cloudtasks-v2beta2.json +++ b/discovery/cloudtasks-v2beta2.json @@ -192,7 +192,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2beta2/projects/{projectsId}/locations", "httpMethod": "GET", "id": "cloudtasks.projects.locations.list", @@ -239,7 +239,7 @@ ] }, "updateCmekConfig": { - "description": "Creates or Updates a CMEK config. Updates the Customer Managed Encryption Key assotiated with the Cloud Tasks location (Creates if the key does not already exist). All new tasks created in the location will be encrypted at-rest with the KMS-key provided in the config.", + "description": "Creates or Updates a CMEK config. Updates the Customer Managed Encryption Key associated with the Cloud Tasks location (Creates if the key does not already exist). All new tasks created in the location will be encrypted at-rest with the KMS-key provided in the config.", "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/cmekConfig", "httpMethod": "PATCH", "id": "cloudtasks.projects.locations.updateCmekConfig", @@ -274,6 +274,35 @@ } }, "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": "v2beta2/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "cloudtasks.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": "v2beta2/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "queues": { "methods": { "create": { @@ -941,7 +970,7 @@ } } }, - "revision": "20251021", + "revision": "20260330", "rootUrl": "https://cloudtasks.googleapis.com/", "schemas": { "AcknowledgeTaskRequest": { @@ -1555,6 +1584,41 @@ }, "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" + }, "PathOverride": { "description": "PathOverride. Path message defines path override for HTTP targets.", "id": "PathOverride", diff --git a/discovery/cloudtasks-v2beta3.json b/discovery/cloudtasks-v2beta3.json index 7d3e741de52..1a5482103f8 100644 --- a/discovery/cloudtasks-v2beta3.json +++ b/discovery/cloudtasks-v2beta3.json @@ -160,7 +160,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2beta3/projects/{projectsId}/locations", "httpMethod": "GET", "id": "cloudtasks.projects.locations.list", @@ -207,7 +207,7 @@ ] }, "updateCmekConfig": { - "description": "Creates or Updates a CMEK config. Updates the Customer Managed Encryption Key assotiated with the Cloud Tasks location (Creates if the key does not already exist). All new tasks created in the location will be encrypted at-rest with the KMS-key provided in the config.", + "description": "Creates or Updates a CMEK config. Updates the Customer Managed Encryption Key associated with the Cloud Tasks location (Creates if the key does not already exist). All new tasks created in the location will be encrypted at-rest with the KMS-key provided in the config.", "flatPath": "v2beta3/projects/{projectsId}/locations/{locationsId}/cmekConfig", "httpMethod": "PATCH", "id": "cloudtasks.projects.locations.updateCmekConfig", @@ -797,7 +797,7 @@ } } }, - "revision": "20260115", + "revision": "20260330", "rootUrl": "https://cloudtasks.googleapis.com/", "schemas": { "AppEngineHttpQueue": { diff --git a/discovery/composer-v1.json b/discovery/composer-v1.json index 991f80bb117..0a78ce76bec 100644 --- a/discovery/composer-v1.json +++ b/discovery/composer-v1.json @@ -7,6 +7,9 @@ }, "https://www.googleapis.com/auth/cloudcomposer": { "description": "See, edit, configure, and delete your Google Cloud Composer data and see the email address for your Google Account" + }, + "https://www.googleapis.com/auth/cloudcomposer.readonly": { + "description": "See your Google Cloud Composer data and the email address of your Google Account" } } } @@ -511,7 +514,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "get": { @@ -537,7 +541,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "list": { @@ -574,7 +579,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "loadSnapshot": { @@ -667,7 +673,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "restartWebServer": { @@ -839,7 +846,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "list": { @@ -876,7 +884,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "update": { @@ -990,7 +999,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "list": { @@ -1027,7 +1037,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "update": { @@ -1102,7 +1113,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] } } @@ -1150,7 +1162,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] } } @@ -1206,7 +1219,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "list": { @@ -1253,7 +1267,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] } } @@ -1263,7 +1278,7 @@ } } }, - "revision": "20260219", + "revision": "20260325", "rootUrl": "https://composer.googleapis.com/", "schemas": { "AirflowMetadataRetentionPolicyConfig": { diff --git a/discovery/composer-v1beta1.json b/discovery/composer-v1beta1.json index d6d975ce282..77e46c52efc 100644 --- a/discovery/composer-v1beta1.json +++ b/discovery/composer-v1beta1.json @@ -7,6 +7,9 @@ }, "https://www.googleapis.com/auth/cloudcomposer": { "description": "See, edit, configure, and delete your Google Cloud Composer data and see the email address for your Google Account" + }, + "https://www.googleapis.com/auth/cloudcomposer.readonly": { + "description": "See your Google Cloud Composer data and the email address of your Google Account" } } } @@ -511,7 +514,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "get": { @@ -537,7 +541,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "list": { @@ -574,7 +579,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "loadSnapshot": { @@ -667,7 +673,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "restartWebServer": { @@ -839,7 +846,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "list": { @@ -876,7 +884,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "update": { @@ -990,7 +999,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "list": { @@ -1027,7 +1037,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "update": { @@ -1102,7 +1113,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] } } @@ -1150,7 +1162,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] } } @@ -1206,7 +1219,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] }, "list": { @@ -1253,7 +1267,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudcomposer" + "https://www.googleapis.com/auth/cloudcomposer", + "https://www.googleapis.com/auth/cloudcomposer.readonly" ] } } @@ -1263,7 +1278,7 @@ } } }, - "revision": "20260219", + "revision": "20260423", "rootUrl": "https://composer.googleapis.com/", "schemas": { "AirflowMetadataRetentionPolicyConfig": { @@ -2227,6 +2242,10 @@ "type": "string" }, "type": "array" + }, + "trafficRoutingConfig": { + "$ref": "TrafficRoutingConfig", + "description": "Optional. Configures how the environment routes traffic to other services. This field is supported for Cloud Composer environments in versions composer-3-airflow-*.*.*-build.* and newer." } }, "type": "object" @@ -2716,6 +2735,27 @@ }, "type": "object" }, + "TrafficRoutingConfig": { + "description": "Configuration for network traffic routing from the Cloud Composer environment to other services.", + "id": "TrafficRoutingConfig", + "properties": { + "cloudRunFunctionsRouting": { + "description": "Optional. Controls how network traffic to Cloud Run functions is routed.", + "enum": [ + "ROUTING_MODE_UNSPECIFIED", + "DIRECT", + "VIA_NETWORK_ATTACHMENT" + ], + "enumDescriptions": [ + "Unspecified routing mode. When provided in a create environment request, this value will be treated as `DIRECT`. When provided in an update environment request, this value will be ignored and the existing routing mode will be preserved.", + "Route traffic directly to the destination service.", + "Route traffic via connected network attachment. This mode requires that the environment has connectivity to the user's VPC network." + ], + "type": "string" + } + }, + "type": "object" + }, "TriggererResource": { "description": "Configuration for resources used by Airflow triggerers.", "id": "TriggererResource", diff --git a/discovery/compute-alpha.json b/discovery/compute-alpha.json index 9c27756d8e7..bd90f4b6464 100644 --- a/discovery/compute-alpha.json +++ b/discovery/compute-alpha.json @@ -785,6 +785,43 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] + }, + "capacityHistory": { + "description": "Gets the capacity history.", + "flatPath": "projects/{project}/regions/{region}/advice/capacityHistory", + "httpMethod": "POST", + "id": "compute.advice.capacityHistory", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/advice/capacityHistory", + "request": { + "$ref": "CapacityHistoryRequest" + }, + "response": { + "$ref": "CapacityHistoryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } } }, @@ -4108,6 +4145,9 @@ } }, "path": "projects/{project}/zones/{zone}/disks/{disk}/updateKmsKey", + "request": { + "$ref": "DiskUpdateKmsKeyRequest" + }, "response": { "$ref": "Operation" }, @@ -8374,6 +8414,11 @@ "haController" ], "parameters": { + "force": { + "description": "Force-deletes HA Controller when the Delete is stuck. Instance that is not\nprimary at the moment will also be deleted. Can only be used against the HA\nController resource that is already being deleted.", + "location": "query", + "type": "boolean" + }, "haController": { "description": "Name of the HaController resource to delete.", "location": "path", @@ -9020,6 +9065,179 @@ } } }, + "hosts": { + "methods": { + "get": { + "description": "Retrieves information about the specified host.", + "flatPath": "projects/{project}/zones/{zone}/{association}/hosts/{host}", + "httpMethod": "GET", + "id": "compute.hosts.get", + "parameterOrder": [ + "project", + "zone", + "association", + "host" + ], + "parameters": { + "association": { + "description": "The parent resource association for the Host. This field specifies the\nhierarchical context (e.g., reservation, block, sub-block) when\naccessing the host. For example, reservations/reservation_name,\nreservations/reservation_name/reservationBlocks/reservation_block_name or\nreservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name.", + "location": "path", + "required": true, + "type": "string" + }, + "host": { + "description": "The name of the host, formatted as RFC1035 or a resource ID\nnumber.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request, formatted as RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/{association}/hosts/{host}", + "response": { + "$ref": "Host" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getVersion": { + "description": "Allows customers to get SBOM versions of a host.", + "flatPath": "projects/{project}/zones/{zone}/{association}/hosts/{host}/getVersion", + "httpMethod": "POST", + "id": "compute.hosts.getVersion", + "parameterOrder": [ + "project", + "zone", + "association", + "host" + ], + "parameters": { + "association": { + "description": "The parent resource association for the Host. This field specifies the\nhierarchical context (e.g., reservation, block, sub-block) when\naccessing the host.", + "location": "path", + "required": true, + "type": "string" + }, + "host": { + "description": "The name of the host, formatted as RFC1035 or a resource ID\nnumber.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/{association}/hosts/{host}/getVersion", + "request": { + "$ref": "HostsGetVersionRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of hosts.", + "flatPath": "projects/{project}/zones/{zone}/{association}/hosts", + "httpMethod": "GET", + "id": "compute.hosts.list", + "parameterOrder": [ + "project", + "zone", + "association" + ], + "parameters": { + "association": { + "description": "The parent resource association for the Host. This field specifies the\nhierarchical context (e.g., reservation, block, sub-block) when\naccessing the host. For example, reservations/reservation_name,\nreservations/reservation_name/reservationBlocks/reservation_block_name or\nreservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name.", + "location": "path", + "required": true, + "type": "string" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "The project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "zone": { + "description": "The name of the zone for this request, formatted as RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/{association}/hosts", + "response": { + "$ref": "HostsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, "httpHealthChecks": { "methods": { "delete": { @@ -9645,6 +9863,116 @@ } } }, + "imageViews": { + "methods": { + "get": { + "description": "Returns the specified global Image resource by providing a regional\ncontext to read the metadata from the Global Clone in the region.", + "flatPath": "projects/{project}/regions/{region}/imageViews/{resourceId}", + "httpMethod": "GET", + "id": "compute.imageViews.get", + "parameterOrder": [ + "project", + "region", + "resourceId" + ], + "parameters": { + "project": { + "description": "Required. Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resourceId": { + "description": "Name of the image resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/imageViews/{resourceId}", + "response": { + "$ref": "ImageView" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of global Image resources available to the project by\nproviding a regional context to read the metadata from the Global Clone in\nthe region.", + "flatPath": "projects/{project}/regions/{region}/imageViews", + "httpMethod": "GET", + "id": "compute.imageViews.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Required. Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/imageViews", + "response": { + "$ref": "ImageViewsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, "images": { "methods": { "delete": { @@ -10640,6 +10968,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance deletion even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -10685,6 +11019,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance deletion even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -11264,6 +11604,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance recreation even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -11654,6 +12000,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance stopping even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -24704,12 +25056,6 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" - }, - "updateMask": { - "description": "update_mask indicates fields to be updated as part of this request.", - "format": "google-fieldmask", - "location": "query", - "type": "string" } }, "path": "{+organization}/global/snapshotRecycleBinPolicy", @@ -25223,6 +25569,45 @@ } } }, + "projectViews": { + "methods": { + "get": { + "description": "Returns the specified global ProjectViews resource, with a regional\ncontext.", + "flatPath": "projects/{project}/regions/{region}/projectViews", + "httpMethod": "GET", + "id": "compute.projectViews.get", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Required. Project ID for this request. This is part of the URL path.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. Name of the region for this request. This is part of the URL path.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/projectViews", + "response": { + "$ref": "ProjectView" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, "projects": { "methods": { "disableXpnHost": { @@ -30228,6 +30613,9 @@ } }, "path": "projects/{project}/regions/{region}/disks/{disk}/updateKmsKey", + "request": { + "$ref": "RegionDiskUpdateKmsKeyRequest" + }, "response": { "$ref": "Operation" }, @@ -32232,6 +32620,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance deletion even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -32277,6 +32671,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance deletion even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -32815,6 +33215,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance recreation even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -33206,6 +33612,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance stopping even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -38866,6 +39278,9 @@ } }, "path": "projects/{project}/regions/{region}/snapshots/{snapshot}/updateKmsKey", + "request": { + "$ref": "RegionSnapshotUpdateKmsKeyRequest" + }, "response": { "$ref": "Operation" }, @@ -43023,6 +43438,51 @@ }, "rollouts": { "methods": { + "advance": { + "description": "Advances a Rollout to the next wave, or completes it if no waves remain.", + "flatPath": "projects/{project}/global/rollouts/{rollout}/advance", + "httpMethod": "POST", + "id": "compute.rollouts.advance", + "parameterOrder": [ + "project", + "rollout" + ], + "parameters": { + "currentWaveNumber": { + "description": "Required. Wave number of the current wave.", + "format": "int64", + "location": "query", + "type": "string" + }, + "project": { + "description": "Required. Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollout": { + "description": "Required. Name of the Rollout resource to advance.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/rollouts/{rollout}/advance", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "cancel": { "description": "Cancels a Rollout.", "flatPath": "projects/{project}/global/rollouts/{rollout}", @@ -46161,12 +46621,6 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" - }, - "updateMask": { - "description": "update_mask indicates fields to be updated as part of this request.", - "format": "google-fieldmask", - "location": "query", - "type": "string" } }, "path": "projects/{project}/global/snapshotRecycleBinPolicy", @@ -46704,6 +47158,9 @@ } }, "path": "projects/{project}/global/snapshots/{snapshot}/updateKmsKey", + "request": { + "$ref": "SnapshotUpdateKmsKeyRequest" + }, "response": { "$ref": "Operation" }, @@ -54220,7 +54677,7 @@ "zoneVmExtensionPolicies": { "methods": { "delete": { - "description": "Deletes a specified zone VM extension policy.", + "description": "Deletes a specified zone VM extension policy within a project.", "flatPath": "projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", "httpMethod": "DELETE", "id": "compute.zoneVmExtensionPolicies.delete", @@ -54266,7 +54723,7 @@ ] }, "get": { - "description": "Retrieves details of a specific zone VM extension policy.", + "description": "Retrieves details of a specific zone VM extension policy within a project.", "flatPath": "projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", "httpMethod": "GET", "id": "compute.zoneVmExtensionPolicies.get", @@ -54309,7 +54766,7 @@ ] }, "getVmExtension": { - "description": "Retrieves details of a specific VM extension.", + "description": "Retrieves details of a specific VM extension within a project.", "flatPath": "projects/{project}/zones/{zone}/vmExtensions/{extensionName}", "httpMethod": "GET", "id": "compute.zoneVmExtensionPolicies.getVmExtension", @@ -54519,7 +54976,7 @@ ] }, "update": { - "description": "Modifies an existing zone VM extension policy.", + "description": "Modifies an existing zone VM extension policy within a project.", "flatPath": "projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", "httpMethod": "PATCH", "id": "compute.zoneVmExtensionPolicies.update", @@ -54664,7 +55121,7 @@ } } }, - "revision": "20260213", + "revision": "20260422", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -56701,7 +57158,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the disk. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT & PATCH) when\nempty.", + "description": "Input only. Resource manager tags to be bound to the disk. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT & PATCH) when\nempty.", "type": "object" }, "resourcePolicies": { @@ -57520,6 +57977,11 @@ }, "description": "Scaling schedules defined for an autoscaler. Multiple schedules\ncan be set on an autoscaler, and they can overlap. During overlapping\nperiods the greatest min_required_replicas of all scaling schedules is\napplied. Up to 128 scaling schedules are allowed.", "type": "object" + }, + "stabilizationPeriodSec": { + "description": "The number of seconds that autoscaler waits for load stabilization before\nmaking scale-in decisions. This is referred to as the\n[stabilization period](/compute/docs/autoscaler#stabilization_period).\nThis might appear as a delay in scaling in but it is an important mechanism\nfor your application to not have fluctuating size due to short term load\nfluctuations.\n\nThe default stabilization period is 600 seconds.", + "format": "int32", + "type": "integer" } }, "type": "object" @@ -58748,7 +59210,7 @@ }, "consistentHash": { "$ref": "ConsistentHashLoadBalancerSettings", - "description": "Consistent Hash-based load balancing can be used to provide soft session\naffinity based on HTTP headers, cookies or other properties. This load\nbalancing policy is applicable only for HTTP connections. The affinity to a\nparticular destination host will be lost when one or more hosts are\nadded/removed from the destination service. This field specifies parameters\nthat control consistent hashing. This field is only applicable whenlocalityLbPolicy is set to MAGLEV orRING_HASH.\n\nThis field is applicable to either:\n \n - A regional backend service with the service_protocol set to HTTP,\n HTTPS, HTTP2 or H2C, and load_balancing_scheme set to\n INTERNAL_MANAGED. \n - A global backend service with the\n load_balancing_scheme set to INTERNAL_SELF_MANAGED." + "description": "Consistent Hash-based load balancing can be used to provide soft session\naffinity based on HTTP headers, cookies or other properties. This load\nbalancing policy is applicable only for HTTP connections. The affinity to a\nparticular destination host will be lost when one or more hosts are\nadded/removed from the destination service. This field specifies parameters\nthat control consistent hashing. This field is only applicable whenlocalityLbPolicy is set to MAGLEV orRING_HASH.\n\nThis field is applicable to either:\n \n - A regional backend service with the service protocol set to HTTP,\n HTTPS, HTTP2 or H2C, and load_balancing_scheme set to\n INTERNAL_MANAGED. \n - A global backend service with the\n load_balancing_scheme set to INTERNAL_SELF_MANAGED." }, "creationTimestamp": { "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", @@ -58892,7 +59354,7 @@ "type": "array" }, "localityLbPolicy": { - "description": "The load balancing algorithm used within the scope of the locality. The\npossible values are:\n \n - ROUND_ROBIN: This is a simple policy in which each healthy\n backend is selected in round robin order. This is the default.\n - LEAST_REQUEST: An O(1) algorithm which\n selects two random healthy hosts and picks the host which has fewer active\n requests.\n - RING_HASH: The ring/modulo hash load balancer implements\n consistent hashing to backends. The algorithm has the property that the\n addition/removal of a host from a set of N hosts only affects 1/N of the\n requests.\n - RANDOM: The load balancer selects a random healthy\n host.\n - ORIGINAL_DESTINATION: Backend host is selected\n based on the client connection metadata, i.e., connections are opened to\n the same address as the destination address of the incoming connection\n before the connection was redirected to the load balancer.\n - MAGLEV: used as a drop in replacement for the ring hash\n load balancer. Maglev is not as stable as ring hash but has faster table\n lookup build times and host selection times. For more information about\n Maglev, see Maglev:\n A Fast and Reliable Software Network Load Balancer.\n - WEIGHTED_ROUND_ROBIN: Per-endpoint Weighted Round Robin\n Load Balancing using weights computed from Backend reported Custom Metrics.\n If set, the Backend Service responses are expected to contain non-standard\n HTTP response header field Endpoint-Load-Metrics. The reported\n metrics to use for computing the weights are specified via thecustomMetrics field.\n \n This field is applicable to either:\n - A regional backend service with the service_protocol set to HTTP,\n HTTPS, HTTP2 or H2C, and load_balancing_scheme set to\n INTERNAL_MANAGED. \n - A global backend service with the\n load_balancing_scheme set to INTERNAL_SELF_MANAGED, INTERNAL_MANAGED, or\n EXTERNAL_MANAGED.\n \n \n If sessionAffinity is not configured—that is, if session\n affinity remains at the default value of NONE—then the\n default value for localityLbPolicy\n is ROUND_ROBIN. If session affinity is set to a value other\n than NONE,\n then the default value for localityLbPolicy isMAGLEV.\n \n Only ROUND_ROBIN and RING_HASH are supported\n when the backend service is referenced by a URL map that is bound to\n target gRPC proxy that has validateForProxyless field set to true.\n \n localityLbPolicy cannot be specified with haPolicy.", + "description": "The load balancing algorithm used within the scope of the locality. The\npossible values are:\n \n - ROUND_ROBIN: This is a simple policy in which each healthy\n backend is selected in round robin order. This is the default.\n - LEAST_REQUEST: An O(1) algorithm which\n selects two random healthy hosts and picks the host which has fewer active\n requests.\n - RING_HASH: The ring/modulo hash load balancer implements\n consistent hashing to backends. The algorithm has the property that the\n addition/removal of a host from a set of N hosts only affects 1/N of the\n requests.\n - RANDOM: The load balancer selects a random healthy\n host.\n - ORIGINAL_DESTINATION: Backend host is selected\n based on the client connection metadata, i.e., connections are opened to\n the same address as the destination address of the incoming connection\n before the connection was redirected to the load balancer.\n - MAGLEV: used as a drop in replacement for the ring hash\n load balancer. Maglev is not as stable as ring hash but has faster table\n lookup build times and host selection times. For more information about\n Maglev, see Maglev:\n A Fast and Reliable Software Network Load Balancer.\n - WEIGHTED_ROUND_ROBIN: Per-endpoint Weighted Round Robin\n Load Balancing using weights computed from Backend reported Custom Metrics.\n If set, the Backend Service responses are expected to contain non-standard\n HTTP response header field Endpoint-Load-Metrics. The reported\n metrics to use for computing the weights are specified via thecustomMetrics field.\n \n This field is applicable to either:\n - A regional backend service with the service protocol set to HTTP,\n HTTPS, HTTP2 or H2C, and load_balancing_scheme set to\n INTERNAL_MANAGED. \n - A global backend service with the\n load_balancing_scheme set to INTERNAL_SELF_MANAGED, INTERNAL_MANAGED, or\n EXTERNAL_MANAGED.\n \n \n If sessionAffinity is not configured—that is, if session\n affinity remains at the default value of NONE—then the\n default value for localityLbPolicy\n is ROUND_ROBIN. If session affinity is set to a value other\n than NONE,\n then the default value for localityLbPolicy isMAGLEV.\n \n Only ROUND_ROBIN and RING_HASH are supported\n when the backend service is referenced by a URL map that is bound to\n target gRPC proxy that has validateForProxyless field set to true.\n \n localityLbPolicy cannot be specified with haPolicy.", "enum": [ "INVALID_LB_POLICY", "LEAST_REQUEST", @@ -58953,7 +59415,7 @@ }, "outlierDetection": { "$ref": "OutlierDetection", - "description": "Settings controlling the ejection of unhealthy backend endpoints from the\nload balancing pool of each individual proxy instance that processes the\ntraffic for the given backend service. If not set, this feature is\nconsidered disabled.\n\nResults of the outlier detection algorithm (ejection of endpoints from the\nload balancing pool and returning them back to the pool) are executed\nindependently by each proxy instance of the load balancer. In most cases,\nmore than one proxy instance handles the traffic received by a backend\nservice. Thus, it is possible that an unhealthy endpoint is detected and\nejected by only some of the proxies, and while this happens, other proxies\nmay continue to send requests to the same unhealthy endpoint until they\ndetect and eject the unhealthy endpoint.\n\nApplicable backend endpoints can be:\n \n - VM instances in an Instance Group\n - Endpoints in a Zonal NEG (GCE_VM_IP, GCE_VM_IP_PORT)\n - Endpoints in a Hybrid Connectivity NEG (NON_GCP_PRIVATE_IP_PORT)\n - Serverless NEGs, that resolve to Cloud Run, App Engine, or Cloud\n Functions Services \n - Private Service Connect NEGs, that resolve to\n Google-managed regional API endpoints or managed services published using\n Private Service Connect\n\n\n\nApplicable backend service types can be:\n \n - A global backend service with the loadBalancingScheme set to\n INTERNAL_SELF_MANAGED or EXTERNAL_MANAGED. \n - A regional backend\n service with the serviceProtocol set to HTTP, HTTPS, HTTP2 or H2C, and\n loadBalancingScheme set to INTERNAL_MANAGED or EXTERNAL_MANAGED. Not\n supported for Serverless NEGs.\n\n\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true." + "description": "Settings controlling the ejection of unhealthy backend endpoints from the\nload balancing pool of each individual proxy instance that processes the\ntraffic for the given backend service. If not set, this feature is\nconsidered disabled.\n\nResults of the outlier detection algorithm (ejection of endpoints from the\nload balancing pool and returning them back to the pool) are executed\nindependently by each proxy instance of the load balancer. In most cases,\nmore than one proxy instance handles the traffic received by a backend\nservice. Thus, it is possible that an unhealthy endpoint is detected and\nejected by only some of the proxies, and while this happens, other proxies\nmay continue to send requests to the same unhealthy endpoint until they\ndetect and eject the unhealthy endpoint.\n\nApplicable backend endpoints can be:\n \n - VM instances in an Instance Group\n - Endpoints in a Zonal NEG (GCE_VM_IP, GCE_VM_IP_PORT)\n - Endpoints in a Hybrid Connectivity NEG (NON_GCP_PRIVATE_IP_PORT)\n - Serverless NEGs, that resolve to Cloud Run, App Engine, or Cloud\n Functions Services \n - Private Service Connect NEGs, that resolve to\n Google-managed regional API endpoints or managed services published using\n Private Service Connect\n\n\n\nApplicable backend service types can be:\n \n - A global backend service with the loadBalancingScheme set to\n INTERNAL_SELF_MANAGED or EXTERNAL_MANAGED. \n - A regional backend\n service with the service protocol set to HTTP, HTTPS, HTTP2 or H2C, and\n loadBalancingScheme set to INTERNAL_MANAGED or EXTERNAL_MANAGED. Not\n supported for Serverless NEGs.\n\n\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true." }, "params": { "$ref": "BackendServiceParams", @@ -59080,18 +59542,6 @@ }, "readOnly": true, "type": "array" - }, - "vpcNetworkScope": { - "description": "The network scope of the backends that can be added to the backend\nservice. This field can be either GLOBAL_VPC_NETWORK orREGIONAL_VPC_NETWORK.\n\nA backend service with the VPC scope set to GLOBAL_VPC_NETWORK\nis only allowed to have backends in global VPC networks.\n\nWhen the VPC scope is set to REGIONAL_VPC_NETWORK the backend\nservice is only allowed to have backends in regional networks in the same\nscope as the backend service.\nNote: if not specified then GLOBAL_VPC_NETWORK will be used.", - "enum": [ - "GLOBAL_VPC_NETWORK", - "REGIONAL_VPC_NETWORK" - ], - "enumDescriptions": [ - "The backend service can only have backends in global VPCs", - "The backend service can only have backends in regional VPCs" - ], - "type": "string" } }, "type": "object" @@ -59484,7 +59934,7 @@ "id": "BackendServiceFailoverPolicy", "properties": { "disableConnectionDrainOnFailover": { - "description": "This can be set to true only if the protocol isTCP.\n\nThe default is false.", + "description": "This can be set to true if the protocol isTCP, UDP, or UNSPECIFIED.\n\nThe default is false.", "type": "boolean" }, "dropTrafficIfUnhealthy": { @@ -60735,7 +61185,7 @@ }, "snapshotGroupParameters": { "$ref": "SnapshotGroupParameters", - "description": "The parameters for the snapshot group." + "description": "The parameters for the snapshot group. The usage of snapshot group feature\nis restricted." }, "sourceConsistencyGroupPolicy": { "description": "The URL of the DiskConsistencyGroupPolicy for the group of disks to clone.\nThis may be a full or partial URL, such as:\n \n \n - \n https://www.googleapis.com/compute/v1/projects/project/regions/region/resourcePolicies/resourcePolicy\n \n - \n projects/project/regions/region/resourcePolicies/resourcePolicy\n \n - \n regions/region/resourcePolicies/resourcePolicy", @@ -60976,7 +61426,7 @@ "id": "CachePolicy", "properties": { "cacheBypassRequestHeaderNames": { - "description": "Bypass the cache when the specified request headers are matched by name,\ne.g. Pragma or Authorization headers. Values are case-insensitive. Up to 5\nheader names can be specified. The cache is bypassed for all\ncachePolicy.cacheMode settings.", + "description": "Bypass the cache when the specified request headers are matched by name,\ne.g. Pragma or Authorization headers. Values are case-insensitive. Up to 5\nheader names can be specified. The cache is bypassed for all `cacheMode`\nvalues.", "items": { "type": "string" }, @@ -60984,10 +61434,10 @@ }, "cacheKeyPolicy": { "$ref": "CachePolicyCacheKeyPolicy", - "description": "The CacheKeyPolicy for this CachePolicy." + "description": "The cache key configuration. If not specified, the default behavior depends\non the backend type: for Backend Services, the complete request URI is\nused; for Backend Buckets, the request URI is used without the protocol or\nhost, and only query parameters known to Cloud Storage are included." }, "cacheMode": { - "description": "Specifies the cache setting for all responses from this route.\nIf not specified, the default value is CACHE_ALL_STATIC.", + "description": "Specifies the cache setting for all responses from this route. If not\nspecified, Cloud CDN uses `CACHE_ALL_STATIC` mode.", "enum": [ "CACHE_ALL_STATIC", "FORCE_CACHE_ALL", @@ -61002,29 +61452,29 @@ }, "clientTtl": { "$ref": "Duration", - "description": "Specifies a separate client (e.g. browser client) maximum TTL. This is\nused to clamp the max-age (or Expires) value sent to the client. With\nFORCE_CACHE_ALL, the lesser of client_ttl and default_ttl is used for the\nresponse max-age directive, along with a \"public\" directive. For\ncacheable content in CACHE_ALL_STATIC mode, client_ttl clamps the max-age\nfrom the origin (if specified), or else sets the response max-age\ndirective to the lesser of the client_ttl and default_ttl, and also\nensures a \"public\" cache-control directive is present.\nIf a client TTL is not specified, a default value (1 hour) will be used.\nThe maximum allowed value is 31,622,400s (1 year)." + "description": "Specifies a separate client (e.g. browser client) maximum TTL for cached\ncontent. This is used to clamp the max-age (or Expires) value sent to the\nclient. With `FORCE_CACHE_ALL`, the lesser of `clientTtl` and `defaultTtl`\nis used for the response max-age directive, along with a \"public\"\ndirective. For cacheable content in `CACHE_ALL_STATIC` mode, `clientTtl`\nclamps the max-age from the origin (if specified), or else sets the\nresponse max-age directive to the lesser of the `clientTtl` and\n`defaultTtl`, and also ensures a \"public\" cache-control directive is\npresent. The maximum allowed value is 31,622,400s (1 year). If not\nspecified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` mode.\nCannot exceed `maxTtl`. Cannot be specified when `cacheMode` is\n`USE_ORIGIN_HEADERS`." }, "defaultTtl": { "$ref": "Duration", - "description": "Specifies the default TTL for cached content served by this origin for\nresponses that do not have an existing valid TTL (max-age or s-maxage).\nSetting a TTL of \"0\" means \"always revalidate\".\nThe value of defaultTTL cannot be set to a value greater than that of\nmaxTTL.\nWhen the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL\nwill overwrite the TTL set in all responses. The maximum allowed value is\n31,622,400s (1 year). Infrequently accessed objects may be evicted from\nthe cache before the defined TTL." + "description": "Specifies the default TTL for cached content for responses that do not have\nan existing valid TTL (max-age or s-maxage). Setting a TTL of \"0\" means\n\"always revalidate\". The value of `defaultTtl` cannot be set to a value\ngreater than that of `maxTtl`. When the `cacheMode` is set to\n`FORCE_CACHE_ALL`, the `defaultTtl` will overwrite the TTL set in all\nresponses. The maximum allowed value is 31,622,400s (1 year). Infrequently\naccessed objects may be evicted from the cache before the defined TTL. If\nnot specified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` and\n`FORCE_CACHE_ALL` modes. Cannot be specified when `cacheMode` is\n`USE_ORIGIN_HEADERS`." }, "maxTtl": { "$ref": "Duration", - "description": "Specifies the maximum allowed TTL for cached content served by this\norigin.\nCache directives that attempt to set a max-age or s-maxage higher than\nthis, or an Expires header more than maxTTL seconds in the future will\nbe capped at the value of maxTTL, as if it were the value of an\ns-maxage Cache-Control directive.\nHeaders sent to the client will not be modified.\nSetting a TTL of \"0\" means \"always revalidate\".\nThe maximum allowed value is 31,622,400s (1 year). Infrequently accessed\nobjects may be evicted from the cache before the defined TTL." + "description": "Specifies the maximum allowed TTL for cached content. Cache directives that\nattempt to set a max-age or s-maxage higher than this, or an Expires header\nmore than `maxTtl` seconds in the future will be capped at the value of\n`maxTtl`, as if it were the value of an s-maxage Cache-Control directive.\nHeaders sent to the client will not be modified. Setting a TTL of \"0\" means\n\"always revalidate\". The maximum allowed value is 31,622,400s (1 year).\nInfrequently accessed objects may be evicted from the cache before the\ndefined TTL. If not specified, Cloud CDN uses 86400s (1 day) for\n`CACHE_ALL_STATIC` mode. Can be specified only for `CACHE_ALL_STATIC` cache\nmode." }, "negativeCaching": { - "description": "Negative caching allows per-status code TTLs to be set, in order\nto apply fine-grained caching for common errors or redirects.\nThis can reduce the load on your origin and improve end-user\nexperience by reducing response latency.\nWhen the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS,\nnegative caching applies to responses with the specified response code\nthat lack any Cache-Control, Expires, or Pragma: no-cache directives.\nWhen the cache mode is set to FORCE_CACHE_ALL, negative caching applies\nto all responses with the specified response code, and override any\ncaching headers.\nBy default, Cloud CDN will apply the following default TTLs to these\nstatus codes:\nHTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m\nHTTP 404 (Not Found), 410 (Gone),\n451 (Unavailable For Legal Reasons): 120s\nHTTP 405 (Method Not Found), 501 (Not Implemented): 60s.\nThese defaults can be overridden in negative_caching_policy.", + "description": "Negative caching allows per-status code TTLs to be set, in order\nto apply fine-grained caching for common errors or redirects.\nThis can reduce the load on your origin and improve end-user\nexperience by reducing response latency.\nWhen the `cacheMode` is set to `CACHE_ALL_STATIC` or\n`USE_ORIGIN_HEADERS`, negative caching applies to responses with\nthe specified response code that lack any Cache-Control, Expires, or\nPragma: no-cache directives. When the `cacheMode` is set to\n`FORCE_CACHE_ALL`, negative caching applies to all responses\nwith the specified response code, and overrides any caching headers. By\ndefault, Cloud CDN applies the following TTLs to these HTTP status codes:\n\n* 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m\n* 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s\n* 405 (Method Not Found), 501 (Not Implemented): 60s\n\nThese defaults can be overridden in `negativeCachingPolicy`.\nIf not specified, Cloud CDN applies negative caching by default.", "type": "boolean" }, "negativeCachingPolicy": { - "description": "Sets a cache TTL for the specified HTTP status code.\nnegative_caching must be enabled to configure negative_caching_policy.\nOmitting the policy and leaving negative_caching enabled will use\nCloud CDN's default cache TTLs.\nNote that when specifying an explicit negative_caching_policy, you\nshould take care to specify a cache TTL for all response codes\nthat you wish to cache. Cloud CDN will not apply any default\nnegative caching when a policy exists.", + "description": "Sets a cache TTL for the specified HTTP status code.\n`negativeCaching` must be enabled to configure `negativeCachingPolicy`.\nOmitting the policy and leaving `negativeCaching` enabled will use Cloud\nCDN's default cache TTLs. Note that when specifying an explicit\n`negativeCachingPolicy`, you should take care to specify a cache TTL for\nall response codes that you wish to cache. Cloud CDN will not apply any\ndefault negative caching when a policy exists.", "items": { "$ref": "CachePolicyNegativeCachingPolicy" }, "type": "array" }, "requestCoalescing": { - "description": "If true then Cloud CDN will combine multiple concurrent cache fill\nrequests into a small number of requests to the origin.", + "description": "If true then Cloud CDN will combine multiple concurrent cache fill\nrequests into a small number of requests to the origin. If not specified,\nCloud CDN applies request coalescing by default.", "type": "boolean" }, "serveWhileStale": { @@ -61039,7 +61489,7 @@ "id": "CachePolicyCacheKeyPolicy", "properties": { "excludedQueryParameters": { - "description": "Names of query string parameters to exclude in cache keys. All other\nparameters will be included. Either specify excluded_query_parameters or\nincluded_query_parameters, not both. '&' and '=' will be percent encoded\nand not treated as delimiters.\n\nNote: This field applies to routes that use backend services. Attempting\nto set it on a route that points exclusively to Backend Buckets will\nresult in a configuration error. For routes that point to a Backend\nBucket, use includedQueryParameters to define which parameters should\nbe a part of the cache key.", + "description": "Names of query string parameters to exclude in cache keys. All other\nparameters will be included. Either specify `excludedQueryParameters`\nor `includedQueryParameters`, not both. '&' and '=' will be percent\nencoded and not treated as delimiters.\n\nNote: This field applies to routes that use backend services. Attempting\nto set it on a route that points exclusively to Backend Buckets will\nresult in a configuration error. For routes that point to a Backend\nBucket, use `includedQueryParameters` to define which parameters should\nbe part of the cache key.", "items": { "type": "string" }, @@ -61054,7 +61504,7 @@ "type": "boolean" }, "includeQueryString": { - "description": "If true, include query string parameters in the cache key according to\nincluded_query_parameters and excluded_query_parameters. If neither is\nset, the entire query string will be included. If false, the query string\nwill be excluded from the cache key entirely.\n\nNote: This field applies to routes that use backend services. Attempting\nto set it on a route that points exclusively to Backend Buckets will\nresult in a configuration error. For routes that point to a Backend\nBucket, use includedQueryParameters to define which parameters should\nbe a part of the cache key.", + "description": "If true, include query string parameters in the cache key according to\n`includedQueryParameters` and `excludedQueryParameters`. If neither\nis set, the entire query string will be included. If false, the query\nstring will be excluded from the cache key entirely.\n\nNote: This field applies to routes that use backend services. Attempting\nto set it on a route that points exclusively to Backend Buckets will\nresult in a configuration error. For routes that point to a Backend\nBucket, use `includedQueryParameters` to define which parameters should\nbe part of the cache key.", "type": "boolean" }, "includedCookieNames": { @@ -61072,7 +61522,7 @@ "type": "array" }, "includedQueryParameters": { - "description": "Names of query string parameters to include in cache keys. All other\nparameters will be excluded. Either specify included_query_parameters or\nexcluded_query_parameters, not both. '&' and '=' will be percent encoded\nand not treated as delimiters.", + "description": "Names of query string parameters to include in cache keys. All other\nparameters will be excluded. Either specify `includedQueryParameters`\nor `excludedQueryParameters`, not both. '&' and '=' will be percent\nencoded and not treated as delimiters.", "items": { "type": "string" }, @@ -61181,7 +61631,7 @@ "description": "Instance properties for this request." }, "size": { - "description": "Size of requested capacity.", + "description": "The number of VM instances to request.", "format": "int32", "type": "integer" } @@ -61189,10 +61639,11 @@ "type": "object" }, "CapacityAdviceRequestDistributionPolicy": { + "description": "Distribution policy.", "id": "CapacityAdviceRequestDistributionPolicy", "properties": { "targetShape": { - "description": "The distribution shape to which the group converges.\nYou can only specify the following values: ANY,ANY_SINGLE_ZONE,BALANCED.", + "description": "Target distribution shape. You can specify the following values:ANY, ANY_SINGLE_ZONE, or BALANCED.", "enum": [ "ANY", "ANY_SINGLE_ZONE", @@ -61200,9 +61651,9 @@ "TARGET_SHAPE_UNSPECIFIED" ], "enumDescriptions": [ - "The group picks zones for creating VM instances to fulfill the\nrequested number of VMs within present resource constraints and to\nmaximize utilization of unused zonal reservations. Recommended for\nbatch workloads that do not require high availability.", - "The group creates all VM instances within a single zone. The zone is\nselected based on the present resource constraints and to maximize\nutilization of unused zonal reservations.\nRecommended for batch workloads with heavy interprocess communication.", - "The group prioritizes acquisition of resources, scheduling VMs in zones\nwhere resources are available while distributing VMs as evenly as\npossible across selected zones to minimize the impact of zonal failure.\nRecommended for highly available serving workloads.", + "Picks zones for creating VM instances to fulfill the requested number\nof VMs within present resource constraints.", + "Creates all VM instances within a single zone. The zone is selected\nbased on the present resource constraints.", + "Prioritizes acquisition of resources, scheduling VMs in zones where\nresources are available while distributing VMs as evenly as possible\nacross selected zones to minimize the impact of zonal failure.", "" ], "type": "string" @@ -61218,6 +61669,7 @@ "type": "object" }, "CapacityAdviceRequestDistributionPolicyZoneConfiguration": { + "description": "Zone configuration for the distribution policy.", "id": "CapacityAdviceRequestDistributionPolicyZoneConfiguration", "properties": { "zone": { @@ -61228,14 +61680,14 @@ "type": "object" }, "CapacityAdviceRequestInstanceFlexibilityPolicy": { - "description": "Specification of alternative, flexible instance subsets.", + "description": "Specification of alternative, flexible instance configurations.", "id": "CapacityAdviceRequestInstanceFlexibilityPolicy", "properties": { "instanceSelections": { "additionalProperties": { "$ref": "CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelection" }, - "description": "Named instance selections configure properties.\nThe key is an arbitrary, unique RFC1035 string that identifies the\ninstance selection.", + "description": "Named instance selections to configure properties.\nThe key is an arbitrary, unique RFC1035 string that identifies the\ninstance selection.", "type": "object" } }, @@ -61245,6 +61697,20 @@ "description": "Machine specification.", "id": "CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelection", "properties": { + "disks": { + "description": "Local SSDs.", + "items": { + "$ref": "CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelectionAttachedDisk" + }, + "type": "array" + }, + "guestAccelerators": { + "description": "Accelerators configuration.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, "machineTypes": { "description": "Full machine-type names, e.g. \"n1-standard-16\".", "items": { @@ -61255,10 +61721,33 @@ }, "type": "object" }, + "CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelectionAttachedDisk": { + "description": "Attached disk configuration.", + "id": "CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelectionAttachedDisk", + "properties": { + "type": { + "description": "Specifies the type of the disk.\nThis field must be set to SCRATCH.", + "enum": [ + "DISK_TYPE_UNSPECIFIED", + "SCRATCH" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, "CapacityAdviceRequestInstanceProperties": { - "description": "Instance provisining properties.", + "description": "Instance provisioning properties.", "id": "CapacityAdviceRequestInstanceProperties", "properties": { + "acceleratorTopology": { + "description": "Input only. Specifies the topology required to create a partition for\nVMs that have interconnected GPUs or TPUs.\nExample values: 2x2 for ct5l-hightpu-4t.", + "type": "string" + }, "scheduling": { "$ref": "CapacityAdviceRequestInstancePropertiesScheduling", "description": "Specifies the scheduling options." @@ -61276,7 +61765,7 @@ "type": "string" }, "provisioningModel": { - "description": "Specifies the provisioning model of the instance.", + "description": "Specifies the provisioning model.", "enum": [ "FLEX_START", "RESERVATION_BOUND", @@ -61295,11 +61784,11 @@ "type": "object" }, "CapacityAdviceResponse": { - "description": "A response contains multiple scoring recommendations.", + "description": "A response contains scoring recommendations.", "id": "CapacityAdviceResponse", "properties": { "recommendations": { - "description": "Initially the API will provide one recommendation which balances the\nindividual scores according to service provider's preference.", + "description": "Initially the API will provide one recommendation which balances the\nindividual scores according to the service provider's preference.", "items": { "$ref": "CapacityAdviceResponseRecommendation" }, @@ -61309,12 +61798,15 @@ "type": "object" }, "CapacityAdviceResponseRecommendation": { + "description": "Recommendation.", "id": "CapacityAdviceResponseRecommendation", "properties": { "scores": { - "$ref": "CapacityAdviceResponseRecommendationScores" + "$ref": "CapacityAdviceResponseRecommendationScores", + "description": "Scores for the recommendation." }, "shards": { + "description": "Shards represent blocks of uniform capacity in recommendations.", "items": { "$ref": "CapacityAdviceResponseRecommendationShard" }, @@ -61324,11 +61816,11 @@ "type": "object" }, "CapacityAdviceResponseRecommendationScores": { - "description": "The Scores message groups information about a shard of capacity.", + "description": "Groups information about a shard of capacity.", "id": "CapacityAdviceResponseRecommendationScores", "properties": { "estimatedUptime": { - "description": "The estimated run time of the majority of Spot VMs in the request\nbefore preemption. The estimate is best-effort only. It is based on\nhistory data and current conditions.", + "description": "The estimated run time of the majority of Spot VMs in the request\nbefore preemption. The estimate is best-effort only. It is based on\nhistorical data and current conditions.", "format": "google-duration", "type": "string" }, @@ -61352,10 +61844,11 @@ "type": "object" }, "CapacityAdviceResponseRecommendationShard": { - "description": "Shards represent blocks of uniform capacity in recommendations.\nEach shard is for a single zone, single instance selection, and\na single machine shape. Each shard defines a size expressed as the\nnumber of VMs.", + "description": "Shards represent blocks of uniform capacity in recommendations.\nEach shard is for a single zone and a single machine shape. Each shard\ndefines a size expressed as the number of VMs.", "id": "CapacityAdviceResponseRecommendationShard", "properties": { "instanceCount": { + "description": "The number of instances.", "format": "int32", "type": "integer" }, @@ -61364,7 +61857,7 @@ "type": "string" }, "provisioningModel": { - "description": "The provisioning model that you want to view recommendations for.\nSet to: SPOT.\n\nFor more information, see\nCompute Engine instances provisioning models.", + "description": "The provisioning model that you want to view recommendations for.", "enum": [ "FLEX_START", "RESERVATION_BOUND", @@ -61387,6 +61880,138 @@ }, "type": "object" }, + "CapacityHistoryRequest": { + "description": "A request to get the capacity history.", + "id": "CapacityHistoryRequest", + "properties": { + "instanceProperties": { + "$ref": "CapacityHistoryRequestInstanceProperties", + "description": "Instance properties for this request." + }, + "locationPolicy": { + "$ref": "CapacityHistoryRequestLocationPolicy", + "description": "Location policy for this request." + }, + "types": { + "description": "List of history types to get capacity history for.", + "items": { + "enum": [ + "HISTORY_TYPE_UNSPECIFIED", + "PREEMPTION", + "PRICE" + ], + "enumDescriptions": [ + "", + "Preemption history.", + "Price history." + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityHistoryRequestInstanceProperties": { + "description": "Instance properties for this request.", + "id": "CapacityHistoryRequestInstanceProperties", + "properties": { + "machineType": { + "description": "The machine type for the VM, such as `n2-standard-4`.", + "type": "string" + }, + "scheduling": { + "$ref": "CapacityHistoryRequestInstancePropertiesScheduling", + "description": "Specifies the scheduling options." + } + }, + "type": "object" + }, + "CapacityHistoryRequestInstancePropertiesScheduling": { + "description": "Scheduling options.", + "id": "CapacityHistoryRequestInstancePropertiesScheduling", + "properties": { + "provisioningModel": { + "description": "The provisioning model to get capacity history for.\nThis field must be set to SPOT.\n\nFor more information, see\nCompute Engine instances provisioning models.", + "enum": [ + "FLEX_START", + "RESERVATION_BOUND", + "SPOT", + "STANDARD" + ], + "enumDescriptions": [ + "Instance is provisioned using the Flex Start provisioning model and\nhas a limited runtime.", + "Bound to the lifecycle of the reservation in which it is provisioned.", + "Heavily discounted, no guaranteed runtime.", + "Standard provisioning with user controlled runtime, no discounts." + ], + "type": "string" + } + }, + "type": "object" + }, + "CapacityHistoryRequestLocationPolicy": { + "description": "Location policy for this request.", + "id": "CapacityHistoryRequestLocationPolicy", + "properties": { + "location": { + "description": "The region or zone to get capacity history for.\n\nIt can be a partial or full URL. For example, the following are valid\nvalues: \n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone \n - projects/project/zones/zone \n - zones/zone\n\n\n\nThis field is optional.", + "type": "string" + } + }, + "type": "object" + }, + "CapacityHistoryResponse": { + "description": "Contains the capacity history.", + "id": "CapacityHistoryResponse", + "properties": { + "location": { + "readOnly": true, + "type": "string" + }, + "machineType": { + "type": "string" + }, + "preemptionHistory": { + "items": { + "$ref": "CapacityHistoryResponsePreemptionRecord" + }, + "type": "array" + }, + "priceHistory": { + "items": { + "$ref": "CapacityHistoryResponsePriceRecord" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityHistoryResponsePreemptionRecord": { + "id": "CapacityHistoryResponsePreemptionRecord", + "properties": { + "interval": { + "$ref": "Interval" + }, + "preemptionRate": { + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "CapacityHistoryResponsePriceRecord": { + "id": "CapacityHistoryResponsePriceRecord", + "properties": { + "interval": { + "$ref": "Interval" + }, + "listPrice": { + "$ref": "Money" + } + }, + "type": "object" + }, "ChannelCredentials": { "description": "[Deprecated] gRPC channel credentials to access the SDS server.\ngRPC channel credentials to access the SDS server.", "id": "ChannelCredentials", @@ -61560,6 +62185,10 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "params": { + "$ref": "CommitmentParams", + "description": "Input only. Additional params passed with the request, but not persisted\nas part of resource payload." + }, "plan": { "description": "The minimum time duration that you commit to purchasing resources.\nThe plan that you choose determines the preset term length of the\ncommitment (which is 1 year or 3 years) and affects the discount rate that\nyou receive for your resources. Committing to a longer time duration\ntypically gives you a higher discount rate. The supported values for this\nfield are TWELVE_MONTH (1 year), andTHIRTY_SIX_MONTH (3 years).", "enum": [ @@ -61650,7 +62279,7 @@ "type": "string" }, "type": { - "description": "The type of commitment; specifies the\nmachine series for which you want to commit to purchasing resources.\nThe choice of machine series affects the discount rate and the eligible\nresource types.\n\n The type must be one of the following:ACCELERATOR_OPTIMIZED, ACCELERATOR_OPTIMIZED_A3,ACCELERATOR_OPTIMIZED_A3_MEGA,COMPUTE_OPTIMIZED, COMPUTE_OPTIMIZED_C2D,\n COMPUTE_OPTIMIZED_C3, COMPUTE_OPTIMIZED_C3D,COMPUTE_OPTIMIZED_H3, GENERAL_PURPOSE,GENERAL_PURPOSE_C4, GENERAL_PURPOSE_E2,GENERAL_PURPOSE_N2, GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED, GRAPHICS_OPTIMIZED_G4,MEMORY_OPTIMIZED, MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3. For\nexample, type MEMORY_OPTIMIZED specifies a commitment that\napplies only to eligible resources of memory optimized M1 and M2 machine\nseries. Type GENERAL_PURPOSE specifies a commitment that\napplies only to eligible resources of general purpose N1 machine series.", + "description": "The type of commitment; specifies the\nmachine series for which you want to commit to purchasing resources.\nThe choice of machine series affects the discount rate and the eligible\nresource types.\n\n The type must be one of the following:ACCELERATOR_OPTIMIZED, ACCELERATOR_OPTIMIZED_A3,ACCELERATOR_OPTIMIZED_A3_MEGA,COMPUTE_OPTIMIZED, COMPUTE_OPTIMIZED_C2D,\n COMPUTE_OPTIMIZED_C3, COMPUTE_OPTIMIZED_C3D,COMPUTE_OPTIMIZED_H3, GENERAL_PURPOSE,GENERAL_PURPOSE_C4, GENERAL_PURPOSE_E2,GENERAL_PURPOSE_N2, GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED, GRAPHICS_OPTIMIZED_G4,GRAPHICS_OPTIMIZED_G4_VGPU,MEMORY_OPTIMIZED, MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3. For\nexample, type MEMORY_OPTIMIZED specifies a commitment that\napplies only to eligible resources of memory optimized M1 and M2 machine\nseries. Type GENERAL_PURPOSE specifies a commitment that\napplies only to eligible resources of general purpose N1 machine series.", "enum": [ "ACCELERATOR_OPTIMIZED", "ACCELERATOR_OPTIMIZED_A3", @@ -61678,6 +62307,7 @@ "GENERAL_PURPOSE_T2D", "GRAPHICS_OPTIMIZED", "GRAPHICS_OPTIMIZED_G4", + "GRAPHICS_OPTIMIZED_G4_VGPU", "MEMORY_OPTIMIZED", "MEMORY_OPTIMIZED_M3", "MEMORY_OPTIMIZED_M4", @@ -61727,6 +62357,7 @@ "", "", "", + "", "CUD bucket for X4 machine with 1440 vCPUs and 24TB of memory.", "", "CUD bucket for X4 machine with 1920 vCPUs and 32TB of memory.", @@ -62066,6 +62697,20 @@ }, "type": "object" }, + "CommitmentParams": { + "description": "Additional commitment params.", + "id": "CommitmentParams", + "properties": { + "resourceManagerTags": { + "additionalProperties": { + "type": "string" + }, + "description": "Input only. Resource manager tags to be bound to the commitment. Tag keys and\nvalues have the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "type": "object" + } + }, + "type": "object" + }, "CommitmentResourceStatus": { "description": "[Output Only] Contains output only fields.", "id": "CommitmentResourceStatus", @@ -64253,7 +64898,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the disk. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the disk. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -64900,6 +65545,16 @@ }, "type": "object" }, + "DiskUpdateKmsKeyRequest": { + "id": "DiskUpdateKmsKeyRequest", + "properties": { + "kmsKeyName": { + "description": "Optional. The new KMS key to replace the current one on the disk. If empty, the disk\nwill be re-encrypted using the primary version of the disk's current KMS\nkey.\n\nThe KMS key can be provided in the following formats:\n \n \n - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key\n\n\nWhere project is the project ID or\nproject number.", + "type": "string" + } + }, + "type": "object" + }, "DisksAddResourcePoliciesRequest": { "id": "DisksAddResourcePoliciesRequest", "properties": { @@ -65135,7 +65790,7 @@ "type": "string" }, "zones": { - "description": "Zones where the regional managed instance group will create and manage\nits instances.", + "description": "Zones where the regional managed instance group will create and manage\nits instances.\nBy default, a regional MIG doesn't automatically select an AI zone to create\ninstances, even if an AI zone is available in the specified region. To\ncreate instances in an AI zone in the selected region, you must explicitly\nspecify it in the distribution policy together with the other preferred\nzones.", "items": { "$ref": "DistributionPolicyZoneConfiguration" }, @@ -66302,7 +66957,7 @@ "type": "string" }, "policyType": { - "description": "The type of the firewall policy. This field can be eitherVPC_POLICY or RDMA_ROCE_POLICY.\n\nNote: if not specified then VPC_POLICY will be used.", + "description": "The type of the firewall policy. This field can be one of\nVPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.\n\nNote: if not specified then VPC_POLICY will be used.", "enum": [ "RDMA_FALCON_POLICY", "RDMA_ROCE_POLICY", @@ -67028,7 +67683,7 @@ "id": "FixedOrPercent", "properties": { "calculated": { - "description": "Output only. [Output Only] Absolute value of VM instances calculated based on the\nspecific mode.\n\n \n \n - If the value is fixed, then the calculated\n value is equal to the fixed value.\n - If the value is a percent, then the\n calculated\n value is percent/100 * targetSize. For example,\n the calculated value of a 80% of a managed instance group\n with 150 instances would be (80/100 * 150) = 120 VM instances. If there\n is a remainder, the number is rounded.", + "description": "Output only. Absolute value of VM instances calculated based on the specific mode.\n\n \n \n - If the value is fixed, then the calculated\n value is equal to the fixed value.\n - If the value is a percent, then the\n calculated\n value is percent/100 * targetSize. For example,\n the calculated value of a 80% of a managed instance group\n with 150 instances would be (80/100 * 150) = 120 VM instances. If there\n is a remainder, the number is rounded.", "format": "int32", "readOnly": true, "type": "integer" @@ -67328,6 +67983,7 @@ "pscConnectionStatus": { "enum": [ "ACCEPTED", + "ACCEPTED_LIMITED_CAPACITY", "CLOSED", "NEEDS_ATTENTION", "PENDING", @@ -67336,6 +67992,7 @@ ], "enumDescriptions": [ "The connection has been accepted by the producer.", + "The PSC connection has been accepted by the producer, but the producer\nhas allocated less capacity than the amount requested by the consumer.\nThe connection is usable, but may not be able to handle the expected\ntraffic load.", "The connection has been closed by the producer and will not serve traffic\ngoing forward.", "The connection has been accepted by the producer, but the producer needs\nto take further action before the forwarding rule can serve traffic.", "The connection is pending acceptance by the producer.", @@ -67983,6 +68640,10 @@ "description": "Name prefix for the reservations to be created at the time of\ndelivery. The name prefix must comply with RFC1035.\nMaximum allowed length for name prefix is 20. Automatically created\nreservations name format will be -date-####.", "type": "string" }, + "params": { + "$ref": "FutureReservationParams", + "description": "Input only. Additional params passed with the request, but not persisted\nas part of resource payload." + }, "planningStatus": { "description": "Planning state before being submitted for evaluation", "enum": [ @@ -68122,6 +68783,20 @@ }, "type": "object" }, + "FutureReservationParams": { + "description": "Additional future reservation params.", + "id": "FutureReservationParams", + "properties": { + "resourceManagerTags": { + "additionalProperties": { + "type": "string" + }, + "description": "Input only. Resource manager tags to be bound to the future reservation. Tag keys and\nvalues have the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "type": "object" + } + }, + "type": "object" + }, "FutureReservationSpecificSKUProperties": { "id": "FutureReservationSpecificSKUProperties", "properties": { @@ -69189,14 +69864,14 @@ "additionalProperties": { "type": "string" }, - "description": "SBOM versions currently applied to the resource. The key is the component\nname and the value is the version.", + "description": "A mapping of components to their currently-applied versions or other\nappropriate identifiers.", "type": "object" }, "targetComponentVersions": { "additionalProperties": { "type": "string" }, - "description": "SBOM versions scheduled for the next maintenance. The key is the\ncomponent name and the value is the version.", + "description": "A mapping of components to their target versions or other appropriate\nidentifiers.", "type": "object" } }, @@ -69804,7 +70479,7 @@ "id": "GlobalVmExtensionPolicyRolloutOperationRolloutInput", "properties": { "conflictBehavior": { - "description": "Optional. Specifies the behavior of the rollout if a conflict is detected in a\nproject during a rollout. This only applies to `insert` and `update`\nmethods.\n\nA conflict occurs in the following cases:\n* `insert` method: If the zonal policy already exists when the insert\n happens.\n* `update` method: If the zonal policy was modified by a zonal API call\n outside of this rollout.\n\nPossible values are the following:\n* `\"\"` (empty string): If a conflict occurs, the local value is not\n overwritten. This is the default behavior.\n* `\"overwrite\"`: If a conflict occurs, the local value is overwritten\n with the rollout value.", + "description": "Optional. Specifies the behavior of the rollout if a conflict is detected in a\nproject during a rollout. This only applies to `insert` and `update`\nmethods.\n\nA conflict occurs in the following cases:\n\n* `insert` method: If the zonal policy already exists when the insert\n happens.\n* `update` method: If the zonal policy was modified by a zonal API call\n outside of this rollout.\n\nPossible values are the following:\n\n* `\"\"` (empty string): If a conflict occurs, the local value is not\n overwritten. This is the default behavior.\n* `\"overwrite\"`: If a conflict occurs, the local value is overwritten\n with the rollout value.", "type": "string" }, "name": { @@ -69812,7 +70487,7 @@ "type": "string" }, "predefinedRolloutPlan": { - "description": "Optional. Predefined rollout plan.", + "description": "Optional. Specifies the predefined rollout plan for the policy. Valid values\nare `SLOW_ROLLOUT` and `FAST_ROLLOUT`. The recommended value is\n`SLOW_ROLLOUT` for progressive rollout. For more information, see Rollout\nplans for global policies.", "enum": [ "FAST_ROLLOUT", "ROLLOUT_PLAN_UNSPECIFIED", @@ -69854,6 +70529,14 @@ "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata": { "id": "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata", "properties": { + "locationRolloutStatus": { + "additionalProperties": { + "$ref": "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus" + }, + "description": "Output only. [Output Only] The rollout status for each location. The list of the\nlocations is the same as the list of locations in the rollout plan.", + "readOnly": true, + "type": "object" + }, "rollout": { "description": "Output only. [Output Only] The name of the rollout.\nEx. projects//locations/global/rollouts/.", "readOnly": true, @@ -69890,6 +70573,31 @@ }, "type": "object" }, + "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus": { + "id": "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus", + "properties": { + "state": { + "description": "Output only. [Output Only] The state of the location rollout.", + "enum": [ + "LOCATION_ROLLOUT_STATE_COMPLETED", + "LOCATION_ROLLOUT_STATE_FAILED", + "LOCATION_ROLLOUT_STATE_NOT_STARTED", + "LOCATION_ROLLOUT_STATE_SKIPPED", + "LOCATION_ROLLOUT_STATE_UNSPECIFIED" + ], + "enumDescriptions": [ + "The location rollout is completed.", + "The location rollout has failed.", + "The location rollout has not started.", + "The location rollout is skipped.", + "Default value. This value is unused." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GroupMaintenanceInfo": { "description": "Maintenance Info for ReservationBlocks.", "id": "GroupMaintenanceInfo", @@ -70037,7 +70745,7 @@ "id": "GuestOsFeature", "properties": { "type": { - "description": "The ID of a supported feature. To add multiple values, use commas to\nseparate values. Set to one or more of the following values:\n \n - VIRTIO_SCSI_MULTIQUEUE\n - WINDOWS\n - MULTI_IP_SUBNET\n - UEFI_COMPATIBLE\n - GVNIC\n - SEV_CAPABLE\n - SUSPEND_RESUME_COMPATIBLE\n - SEV_LIVE_MIGRATABLE_V2\n - SEV_SNP_CAPABLE\n - TDX_CAPABLE\n - IDPF\n - SNP_SVSM_CAPABLE\n\n\nFor more information, see\nEnabling guest operating system features.", + "description": "The ID of a supported feature. To add multiple values, use commas to\nseparate values. Set to one or more of the following values:\n \n - VIRTIO_SCSI_MULTIQUEUE\n - WINDOWS\n - MULTI_IP_SUBNET\n - UEFI_COMPATIBLE\n - GVNIC\n - SEV_CAPABLE\n - SUSPEND_RESUME_COMPATIBLE\n - SEV_LIVE_MIGRATABLE_V2\n - SEV_SNP_CAPABLE\n - TDX_CAPABLE\n - IDPF\n - SNP_SVSM_CAPABLE\n - CCA_CAPABLE\n\n\nFor more information, see\nEnabling guest operating system features.", "enum": [ "BARE_METAL_LINUX_COMPATIBLE", "FEATURE_TYPE_UNSPECIFIED", @@ -70678,7 +71386,7 @@ "type": "object" }, "HaControllerZoneConfigurationNodeAffinity": { - "description": "Node Affinity: the configuration of desired nodes onto which the\n Instance could be scheduled.\n This message should be an exact copy of the Instances representation\n of NodeAffinity.\nLINT.IfChange(HaControllerNodeAffinityMixer)", + "description": "Node Affinity: the configuration of desired nodes onto which the\n Instance could be scheduled.\n This message should be an exact copy of the Instances representation\n of NodeAffinity.", "id": "HaControllerZoneConfigurationNodeAffinity", "properties": { "key": { @@ -70710,13 +71418,14 @@ "type": "object" }, "HaControllerZoneConfigurationReservationAffinity": { - "description": "Specifies the reservations that this instance can consume from.\nThis message should be an exact copy of the Instances representation\nof AllocationAffinity.\nLINT.IfChange(HaControllerAllocationAffinityMixer)", + "description": "Specifies the reservations that this instance can consume from.\nThis message should be an exact copy of the Instances representation\nof AllocationAffinity.", "id": "HaControllerZoneConfigurationReservationAffinity", "properties": { "consumeReservationType": { "description": "Specifies the type of reservation from which this instance can consume\nresources: ANY_RESERVATION (default),SPECIFIC_RESERVATION, or NO_RESERVATION. See\nConsuming reserved instances for examples.", "enum": [ "ANY_RESERVATION", + "ANY_RESERVATION_THEN_FAIL", "NO_RESERVATION", "SPECIFIC_RESERVATION", "SPECIFIC_THEN_ANY_RESERVATION", @@ -70725,6 +71434,7 @@ ], "enumDescriptions": [ "Consume any allocation available.", + "Consume any reservation available, but fail if no reservation is\navailable. Will not consume from the on-demand pool.", "Do not consume from any allocated capacity.", "Must consume from a specific reservation. Must specify key value\nfields for specifying the reservations.", "Prefer to consume from a specific reservation, but still consume any\nreservation available if the specified reservation is not available\nor exhausted. Must specify key value fields for specifying the\nreservations.", @@ -73710,6 +74420,108 @@ }, "type": "object" }, + "Host": { + "description": "Represents a host resource.", + "id": "Host", + "properties": { + "aliasLinks": { + "description": "Output only. All aliases for this resource.\ne.g.\nprojects/123/zones/us-centra1-a/reservation/r1/reservationBlock/b1/hosts/h1", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "creationTimestamp": { + "description": "Output only. The creation timestamp, formatted asRFC3339 text.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource.", + "type": "string" + }, + "id": { + "description": "Output only. The unique identifier for this resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "compute#host", + "description": "Output only. The type of resource. Alwayscompute#host for hosts.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Output only. The name of the host.", + "readOnly": true, + "type": "string" + }, + "selfLink": { + "description": "Output only. The self link of the host.", + "readOnly": true, + "type": "string" + }, + "selfLinkWithId": { + "description": "Output only. The self link with id of the host.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The state of the host.", + "enum": [ + "ACTIVE", + "CREATING", + "DELETING", + "STATE_UNSPECIFIED", + "UNAVAILABLE" + ], + "enumDescriptions": [ + "The host has allocated all its resources.", + "The resources are being allocated for the host.", + "The host is currently being deleted.", + "", + "The host is currently unavailable." + ], + "readOnly": true, + "type": "string" + }, + "status": { + "$ref": "HostStatus", + "description": "Output only. The status of the host", + "readOnly": true + }, + "zone": { + "description": "Output only. The zone in which the host resides.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "HostPhysicalTopology": { + "id": "HostPhysicalTopology", + "properties": { + "block": { + "description": "The unique identifier of the capacity block within the cluster.", + "type": "string" + }, + "cluster": { + "description": "The cluster name of the reservation sub-block.", + "type": "string" + }, + "host": { + "description": "The unique identifier of the capacity host within the capacity sub-block.", + "type": "string" + }, + "subBlock": { + "description": "The unique identifier of the capacity sub-block within the capacity\nblock.", + "type": "string" + } + }, + "type": "object" + }, "HostRule": { "description": "UrlMaps\nA host-matching rule for a URL. If matched, will use the namedPathMatcher to select the BackendService.", "id": "HostRule", @@ -73732,6 +74544,212 @@ }, "type": "object" }, + "HostStatus": { + "id": "HostStatus", + "properties": { + "physicalTopology": { + "$ref": "HostPhysicalTopology", + "description": "Output only. The physical topology of the reservation sub-block, if\npresent", + "readOnly": true + }, + "runningInstances": { + "description": "Output only. The URIs of the instances currently running on this host.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "HostsGetVersionRequest": { + "id": "HostsGetVersionRequest", + "properties": { + "sbomSelections": { + "description": "The SBOM selection to return. Duplicate values in the list will be ignored.", + "items": { + "enum": [ + "SBOM_SELECTION_CURRENT", + "SBOM_SELECTION_TARGET", + "SBOM_SELECTION_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "HostsListResponse": { + "id": "HostsListResponse", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "The unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of host resources.", + "items": { + "$ref": "Host" + }, + "type": "array" + }, + "kind": { + "default": "compute#host", + "description": "The type of resource. Always compute#host for a list of hosts.", + "type": "string" + }, + "nextPageToken": { + "description": "This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "The server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "description": "Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" + }, + "type": "array" + }, + "warning": { + "description": "An informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, "HttpFaultAbort": { "description": "Specification for how requests are aborted as part of fault injection.", "id": "HttpFaultAbort", @@ -74218,7 +75236,7 @@ "properties": { "cachePolicy": { "$ref": "CachePolicy", - "description": "Cache policy for this URL Map’s route. Available only for Global\nEXTERNAL_MANAGED load balancer schemes." + "description": "Specifies the cache policy configuration for matched traffic. Available\nonly for Global `EXTERNAL_MANAGED` load balancer schemes. At least one\nproperty must be specified. This policy cannot be specified if any target\nbackend has Identity-Aware Proxy enabled." }, "corsPolicy": { "$ref": "CorsPolicy", @@ -74228,6 +75246,10 @@ "$ref": "HttpFaultInjection", "description": "The specification for fault injection introduced into traffic to test\nthe resiliency of clients to backend service failure. As part of fault\ninjection, when clients send requests to a backend service, delays can be\nintroduced by a load balancer on a percentage of requests before sending\nthose requests to the backend service. Similarly requests from clients can\nbe aborted by the load balancer for a percentage of requests.timeout and retry_policy is ignored by clients\nthat are configured with a fault_injection_policy if:\n1. The traffic is generated by fault injection AND\n2. The fault injection is not a delay fault injection.\nFault injection is not supported with the classic Application Load Balancer\n. To see which load balancers support fault injection,\nsee Load\nbalancing: Routing and traffic management features." }, + "imageOptimizationPolicy": { + "$ref": "ImageOptimizationPolicy", + "description": "Image optimization policy for this URL Map's route. Available only for\nGlobal EXTERNAL_MANAGED load balancer schemes.\nEither Cloud CDN must be enabled on the backend service or backend bucket\nserving the route, or cache policy must be configured on the same route" + }, "maxStreamDuration": { "$ref": "Duration", "description": "Specifies the maximum duration (timeout) for streams on the selected route.\nUnlike the timeout field where the timeout duration starts\nfrom the time the request has been fully processed (known as*end-of-stream*),\nthe duration in this field is computed from the beginning of the stream\nuntil the response has been processed, including all retries. A\nstream that does not complete in this duration is closed.\n\nIf not specified, this field uses the maximummaxStreamDuration value among all backend services associated\nwith the route.\n\nThis field is only allowed if the Url map is used with backend services\nwith loadBalancingScheme set toINTERNAL_SELF_MANAGED." @@ -74732,7 +75754,7 @@ "type": "string" }, "source": { - "description": "The full Google Cloud Storage URL where the raw disk image archive is\nstored.\nThe following are valid formats for the URL:\n \n - https://storage.googleapis.com/bucket_name/image_archive_name\n - https://storage.googleapis.com/bucket_name/folder_name/image_archive_name\n\n\n\nIn order to create an image, you must provide the full or partial URL of\none of the following:\n \n - The rawDisk.source URL \n - The sourceDisk URL \n - The sourceImage URL \n - The sourceSnapshot URL", + "description": "The full Google Cloud Storage URL or Artifact Registry path where the raw\ndisk image archive is stored.\nThe following are valid formats:\n \n - https://storage.googleapis.com/bucket_name/image_archive_name\n - https://storage.googleapis.com/bucket_name/folder_name/image_archive_name\n - projects/project/locations/location/repositories/repo/packages/package/versions/version_id\n - projects/project/locations/location/repositories/repo/packages/package/versions/version_id@dirsum_sha256:hex_value\n\n\n\nIn order to create an image, you must provide the full or partial URL of\none of the following:\n \n - The rawDisk.source URL \n - The sourceDisk URL \n - The sourceImage URL \n - The sourceSnapshot URL", "type": "string" } }, @@ -75010,6 +76032,27 @@ }, "type": "object" }, + "ImageOptimizationPolicy": { + "description": "The configuration for Cloud CDN's image optimization feature. This feature\ndynamically processes and delivers images from the network edge.\nImage Optimization is only available for Global External Application Load\nBalancers.\nEither Cloud CDN must be enabled on the backend service or backend bucket\nserving the route, or cache policy must be configured on the same route.", + "id": "ImageOptimizationPolicy", + "properties": { + "queryParameterInterpretation": { + "description": "Specifies whether to interpret query parameters for image optimization.", + "enum": [ + "DISABLED", + "ENABLED", + "QUERY_PARAMETER_INTERPRETATION_UNSPECIFIED" + ], + "enumDescriptions": [ + "Query parameters for image optimization are ignored.", + "Query parameters for image optimization are interpreted.", + "Default value. This field value translates to the\ndefault behavior, which is to ignore query parameters for image\noptimization." + ], + "type": "string" + } + }, + "type": "object" + }, "ImageParams": { "description": "Additional image params.", "id": "ImageParams", @@ -75018,7 +76061,183 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the image. Tag keys and values have\nthe same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the image. Tag keys and values have\nthe same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "type": "object" + } + }, + "type": "object" + }, + "ImageView": { + "description": "Represents a read-only view of a global Image resource.", + "id": "ImageView", + "properties": { + "image": { + "$ref": "Image" + } + }, + "type": "object" + }, + "ImageViewsListResponse": { + "description": "Response message for ImageViewsService.List", + "id": "ImageViewsListResponse", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Image resources.", + "items": { + "$ref": "ImageView" + }, + "type": "array" + }, + "kind": { + "default": "compute#imageViewList", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, "type": "object" } }, @@ -76095,13 +77314,13 @@ "type": "string" }, "creationTimestamp": { - "description": "Output only. [Output Only] The creation timestamp for this managed instance group inRFC3339\ntext format.", + "description": "Output only. The creation timestamp for this managed instance group inRFC3339\ntext format.", "readOnly": true, "type": "string" }, "currentActions": { "$ref": "InstanceGroupManagerActionsSummary", - "description": "Output only. [Output Only] The list of instance actions and the number of instances\nin this managed instance group that are scheduled for each of those\nactions.", + "description": "Output only. The list of instance actions and the number of instances\nin this managed instance group that are scheduled for each of those\nactions.", "readOnly": true }, "description": { @@ -76130,7 +77349,7 @@ "type": "string" }, "id": { - "description": "Output only. [Output Only] A unique identifier for this resource type. The server\ngenerates this identifier.", + "description": "Output only. A unique identifier for this resource type. The server\ngenerates this identifier.", "format": "uint64", "readOnly": true, "type": "string" @@ -76140,7 +77359,7 @@ "description": "Instance flexibility allowing MIG to create VMs from multiple\ntypes of machines.\nInstance flexibility configuration on MIG overrides instance\ntemplate configuration." }, "instanceGroup": { - "description": "Output only. [Output Only] The URL of the Instance Group resource.", + "description": "Output only. The URL of the Instance Group resource.", "readOnly": true, "type": "string" }, @@ -76154,7 +77373,7 @@ }, "kind": { "default": "compute#instanceGroupManager", - "description": "Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManager for managed instance groups.", + "description": "Output only. The resource type, which is alwayscompute#instanceGroupManager for managed instance groups.", "readOnly": true, "type": "string" }, @@ -76206,22 +77425,22 @@ "description": "Resource policies for this managed instance group." }, "satisfiesPzi": { - "description": "Output only. [Output Only] Reserved for future use.", + "description": "Output only. Reserved for future use.", "readOnly": true, "type": "boolean" }, "satisfiesPzs": { - "description": "Output only. [Output Only] Reserved for future use.", + "description": "Output only. Reserved for future use.", "readOnly": true, "type": "boolean" }, "selfLink": { - "description": "Output only. [Output Only] The URL for this managed instance group. The server defines\nthis URL.", + "description": "Output only. The URL for this managed instance group. The server defines\nthis URL.", "readOnly": true, "type": "string" }, "selfLinkWithId": { - "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", + "description": "Output only. Server-defined URL for this resource with the resource id.", "readOnly": true, "type": "string" }, @@ -76239,7 +77458,7 @@ }, "status": { "$ref": "InstanceGroupManagerStatus", - "description": "Output only. [Output Only] The status of this managed instance group.", + "description": "Output only. The status of this managed instance group.", "readOnly": true }, "targetPools": { @@ -76298,7 +77517,7 @@ "type": "array" }, "zone": { - "description": "Output only. [Output Only] The URL of azone\nwhere the managed instance group is located (for zonal resources).", + "description": "Output only. The URL of azone\nwhere the managed instance group is located (for zonal resources).", "readOnly": true, "type": "string" } @@ -76309,102 +77528,103 @@ "id": "InstanceGroupManagerActionsSummary", "properties": { "abandoning": { - "description": "Output only. [Output Only] The total number of instances in the managed instance group\nthat are scheduled to be abandoned. Abandoning an instance removes it\nfrom the managed instance group without deleting it.", + "description": "Output only. The total number of instances in the managed instance group\nthat are scheduled to be abandoned. Abandoning an instance removes it\nfrom the managed instance group without deleting it.", "format": "int32", "readOnly": true, "type": "integer" }, "adopting": { - "description": "[Output Only] The number of instances in the managed instance group that\nare scheduled to be adopted or are currently being adopted.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be adopted or are currently being adopted.", "format": "int32", + "readOnly": true, "type": "integer" }, "creating": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be created or are currently being created. If the group\nfails to create any of these instances, it tries again until it creates\nthe instance successfully.\n\nIf you have disabled creation retries, this field will not be populated;\ninstead, the creatingWithoutRetries field will be populated.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be created or are currently being created. If the group\nfails to create any of these instances, it tries again until it creates\nthe instance successfully.\n\nIf you have disabled creation retries, this field will not be populated;\ninstead, the creatingWithoutRetries field will be populated.", "format": "int32", "readOnly": true, "type": "integer" }, "creatingAtomically": { - "description": "Output only. [Output Only] The number of instances that the managed instance group\nwill attempt to create atomically, in a batch mode. If the desired count\nof instances can not be created, entire batch will be deleted and the\ngroup will decrease its targetSize value accordingly.", + "description": "Output only. The number of instances that the managed instance group\nwill attempt to create atomically, in a batch mode. If the desired count\nof instances can not be created, entire batch will be deleted and the\ngroup will decrease its targetSize value accordingly.", "format": "int32", "readOnly": true, "type": "integer" }, "creatingWithoutRetries": { - "description": "Output only. [Output Only] The number of instances that the managed instance group\nwill attempt to create. The group attempts to create each instance\nonly once. If the group fails to create any of these instances, it\ndecreases the group's targetSize value accordingly.", + "description": "Output only. The number of instances that the managed instance group\nwill attempt to create. The group attempts to create each instance\nonly once. If the group fails to create any of these instances, it\ndecreases the group's targetSize value accordingly.", "format": "int32", "readOnly": true, "type": "integer" }, "deleting": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be deleted or are currently being deleted.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be deleted or are currently being deleted.", "format": "int32", "readOnly": true, "type": "integer" }, "none": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare running and have no scheduled actions.", + "description": "Output only. The number of instances in the managed instance group that\nare running and have no scheduled actions.", "format": "int32", "readOnly": true, "type": "integer" }, "queuing": { - "description": "Output only. [Output Only] The number of instances that the managed instance group\nis currently queuing.", + "description": "Output only. The number of instances that the managed instance group\nis currently queuing.", "format": "int32", "readOnly": true, "type": "integer" }, "recreating": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be recreated or are currently being being recreated.\nRecreating an instance deletes the existing root persistent disk\nand creates a new disk from the image that is defined in the\ninstance template.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be recreated or are currently being being recreated.\nRecreating an instance deletes the existing root persistent disk\nand creates a new disk from the image that is defined in the\ninstance template.", "format": "int32", "readOnly": true, "type": "integer" }, "refreshing": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare being reconfigured with properties that do not require a restart\nor a recreate action. For example, setting or removing target\npools for the instance.", + "description": "Output only. The number of instances in the managed instance group that\nare being reconfigured with properties that do not require a restart\nor a recreate action. For example, setting or removing target\npools for the instance.", "format": "int32", "readOnly": true, "type": "integer" }, "restarting": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be restarted or are currently being restarted.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be restarted or are currently being restarted.", "format": "int32", "readOnly": true, "type": "integer" }, "restartingInPlace": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be restarted or are currently being restarted.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be restarted or are currently being restarted.", "format": "int32", "readOnly": true, "type": "integer" }, "resuming": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be resumed or are currently being resumed.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be resumed or are currently being resumed.", "format": "int32", "readOnly": true, "type": "integer" }, "starting": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be started or are currently being started.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be started or are currently being started.", "format": "int32", "readOnly": true, "type": "integer" }, "stopping": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be stopped or are currently being stopped.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be stopped or are currently being stopped.", "format": "int32", "readOnly": true, "type": "integer" }, "suspending": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be suspended or are currently being suspended.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be suspended or are currently being suspended.", "format": "int32", "readOnly": true, "type": "integer" }, "verifying": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare being verified. See the managedInstances[].currentAction\nproperty in the listManagedInstances method documentation.", + "description": "Output only. The number of instances in the managed instance group that\nare being verified. See the managedInstances[].currentAction\nproperty in the listManagedInstances method documentation.", "format": "int32", "readOnly": true, "type": "integer" @@ -76416,36 +77636,36 @@ "id": "InstanceGroupManagerAggregatedList", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, "items": { "additionalProperties": { "$ref": "InstanceGroupManagersScopedList", - "description": "Output only. [Output Only] The name of the scope that contains this set of managed\ninstance groups." + "description": "Output only. The name of the scope that contains this set of managed instance groups." }, "description": "A list of InstanceGroupManagersScopedList resources.", "type": "object" }, "kind": { "default": "compute#instanceGroupManagerAggregatedList", - "description": "Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerAggregatedList for an aggregated\nlist of managed instance groups.", + "description": "Output only. The resource type, which is alwayscompute#instanceGroupManagerAggregatedList for an aggregated\nlist of managed instance groups.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", + "description": "Output only. Unreachable resources.", "items": { "type": "string" }, @@ -76453,7 +77673,7 @@ "type": "array" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -76791,7 +78011,7 @@ "id": "InstanceGroupManagerList", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, @@ -76804,22 +78024,22 @@ }, "kind": { "default": "compute#instanceGroupManagerList", - "description": "Output only. [Output Only] The resource type, which is always\ncompute#instanceGroupManagerList for a list of managed instance groups.", + "description": "Output only. The resource type, which is always compute#instanceGroupManagerList for a\nlist of managed instance groups.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -76971,7 +78191,7 @@ "type": "integer" }, "creationTimestamp": { - "description": "Output only. [Output Only] The creation timestamp for this resize request inRFC3339\ntext format.", + "description": "Output only. The creation timestamp for this resize request inRFC3339\ntext format.", "readOnly": true, "type": "string" }, @@ -76980,7 +78200,7 @@ "type": "string" }, "id": { - "description": "Output only. [Output Only] A unique identifier for this resource type. The server\ngenerates this identifier.", + "description": "Output only. A unique identifier for this resource type. The server generates this\nidentifier.", "format": "uint64", "readOnly": true, "type": "string" @@ -76994,7 +78214,7 @@ }, "kind": { "default": "compute#instanceGroupManagerResizeRequest", - "description": "Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for\nresize requests.", + "description": "Output only. The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for resize requests.", "readOnly": true, "type": "string" }, @@ -77014,7 +78234,7 @@ "description": "This field is deprecated, ResizeRequests would not be provisioned\nimmediately and would stay in the queue until explicitly cancelled. When\nset, defines queing parameters for the requested deferred capacity. When\nunset, the request starts provisioning immediately, or fails if immediate\nprovisioning is not possible." }, "region": { - "description": "Output only. [Output Only] The URL of aregion\nwhere the resize request is located. Populated only for regional resize\nrequests.", + "description": "Output only. The URL of a region\nwhere the resize request is located. Populated only for regional resize\nrequests.", "readOnly": true, "type": "string" }, @@ -77028,17 +78248,17 @@ "type": "integer" }, "selfLink": { - "description": "Output only. [Output Only] The URL for this resize request. The server defines\nthis URL.", + "description": "Output only. The URL for this resize request. The server defines this URL.", "readOnly": true, "type": "string" }, "selfLinkWithId": { - "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", + "description": "Output only. Server-defined URL for this resource with the resource id.", "readOnly": true, "type": "string" }, "state": { - "description": "Output only. [Output only] Current state of the request.", + "description": "Output only. Current state of the request.", "enum": [ "ACCEPTED", "CANCELLED", @@ -77074,11 +78294,11 @@ }, "status": { "$ref": "InstanceGroupManagerResizeRequestStatus", - "description": "Output only. [Output only] Status of the request.", + "description": "Output only. Status of the request.", "readOnly": true }, "zone": { - "description": "Output only. [Output Only] The URL of azone\nwhere the resize request is located. Populated only for zonal resize\nrequests.", + "description": "Output only. The URL of a zone\nwhere the resize request is located. Populated only for zonal resize\nrequests.", "readOnly": true, "type": "string" } @@ -77089,7 +78309,7 @@ "id": "InstanceGroupManagerResizeRequestStatus", "properties": { "error": { - "description": "Output only. [Output only] Fatal errors encountered during the queueing or\nprovisioning phases of the ResizeRequest that caused the transition to\nthe FAILED state. Contrary to the last_attempt errors, this field is\nfinal and errors are never removed from here, as the ResizeRequest is not\ngoing to retry.", + "description": "Output only. Fatal errors encountered during the queueing or provisioning phases of\nthe ResizeRequest that caused the transition to the FAILED state.\nContrary to the last_attempt errors, this field is final and errors are\nnever removed from here, as the ResizeRequest is not going to retry.", "properties": { "errors": { "description": "[Output Only] The array of errors encountered while processing this\noperation.", @@ -77139,7 +78359,7 @@ }, "lastAttempt": { "$ref": "InstanceGroupManagerResizeRequestStatusLastAttempt", - "description": "Output only. [Output only] Information about the last attempt to fulfill the request.\nThe value is temporary since the ResizeRequest can retry, as long as it's\nstill active and the last attempt value can either be cleared or replaced\nwith a different error. Since ResizeRequest retries infrequently, the\nvalue may be stale and no longer show an active problem. The value is\ncleared when ResizeRequest transitions to the final state (becomes\ninactive). If the final state is FAILED the error describing it will be\nstorred in the \"error\" field only.", + "description": "Output only. Information about the last attempt to fulfill the request. The value is\ntemporary since the ResizeRequest can retry, as long as it's still active\nand the last attempt value can either be cleared or replaced with a\ndifferent error. Since ResizeRequest retries infrequently, the value may\nbe stale and no longer show an active problem. The value is cleared when\nResizeRequest transitions to the final state (becomes inactive). If the\nfinal state is FAILED the error describing it will be stored in the\n\"error\" field only.", "readOnly": true }, "queuingPolicy": { @@ -77211,7 +78431,7 @@ "id": "InstanceGroupManagerResizeRequestsListResponse", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, @@ -77224,22 +78444,22 @@ }, "kind": { "default": "compute#instanceGroupManagerResizeRequestList", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#instanceGroupManagerResizeRequestList for\na list of resize requests.", + "description": "Output only. Type of the resource. Alwayscompute#instanceGroupManagerResizeRequestList for\na list of resize requests.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for list requests.\nIf the number of results is larger than maxResults, use thenextPageToken as a value for the query parameterpageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -77404,11 +78624,11 @@ "properties": { "allInstancesConfig": { "$ref": "InstanceGroupManagerStatusAllInstancesConfig", - "description": "Output only. [Output only] Status of all-instances configuration on the group.", + "description": "Output only. Status of all-instances configuration on the group.", "readOnly": true }, "appliedAcceleratorTopologies": { - "description": "Output only. [Output Only] The accelerator topology applied to this MIG.\nCurrently only one accelerator topology is supported.", + "description": "Output only. The accelerator topology applied to this MIG.\nCurrently only one accelerator topology is supported.", "items": { "$ref": "InstanceGroupManagerStatusAcceleratorTopology" }, @@ -77416,33 +78636,33 @@ "type": "array" }, "autoscaler": { - "description": "Output only. [Output Only] The URL of theAutoscaler\nthat targets this instance group manager.", + "description": "Output only. The URL of theAutoscaler\nthat targets this instance group manager.", "readOnly": true, "type": "string" }, "bulkInstanceOperation": { "$ref": "InstanceGroupManagerStatusBulkInstanceOperation", - "description": "Output only. [Output Only] The status of bulk instance operation.", + "description": "Output only. The status of bulk instance operation.", "readOnly": true }, "currentInstanceStatuses": { "$ref": "InstanceGroupManagerStatusInstanceStatusSummary", - "description": "Output only. [Output Only] The list of instance statuses and the number of instances\nin this managed instance group that have the status. Currently only shown\nfor TPU MIGs", + "description": "Output only. The list of instance statuses and the number of instances\nin this managed instance group that have the status. Currently only shown\nfor TPU MIGs", "readOnly": true }, "isStable": { - "description": "Output only. [Output Only] A bit indicating whether the managed instance group is in a\nstable state. A stable state means that: none of the instances in the\nmanaged instance group is currently undergoing any type of change (for\nexample, creation, restart, or deletion); no future changes are scheduled\nfor instances in the managed instance group; and the managed instance\ngroup itself is not being modified.", + "description": "Output only. A bit indicating whether the managed instance group is in a\nstable state. A stable state means that: none of the instances in the\nmanaged instance group is currently undergoing any type of change (for\nexample, creation, restart, or deletion); no future changes are scheduled\nfor instances in the managed instance group; and the managed instance\ngroup itself is not being modified.", "readOnly": true, "type": "boolean" }, "stateful": { "$ref": "InstanceGroupManagerStatusStateful", - "description": "Output only. [Output Only] Stateful status of the given Instance Group Manager.", + "description": "Output only. Stateful status of the given Instance Group Manager.", "readOnly": true }, "versionTarget": { "$ref": "InstanceGroupManagerStatusVersionTarget", - "description": "Output only. [Output Only] A status of consistency of Instances' versions with their\ntarget version specified by version field on Instance Group\nManager.", + "description": "Output only. A status of consistency of Instances' versions with their\ntarget version specified by version field on Instance Group\nManager.", "readOnly": true } }, @@ -77452,12 +78672,12 @@ "id": "InstanceGroupManagerStatusAcceleratorTopology", "properties": { "acceleratorTopology": { - "description": "Output only. [Output Only] Topology in the format of: \"16x16\", \"4x4x4\", etc.\nThe value is the same as configured in the WorkloadPolicy.", + "description": "Output only. Topology in the format of: \"16x16\", \"4x4x4\", etc.\nThe value is the same as configured in the WorkloadPolicy.", "readOnly": true, "type": "string" }, "state": { - "description": "Output only. [Output Only] The state of the accelerator topology.", + "description": "Output only. The state of the accelerator topology.", "enum": [ "ACTIVATING", "ACTIVE", @@ -77481,7 +78701,7 @@ }, "stateDetails": { "$ref": "InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails", - "description": "Output only. [Output Only] The result of the latest accelerator topology state\ncheck.", + "description": "Output only. The result of the latest accelerator topology state\ncheck.", "readOnly": true } }, @@ -77491,7 +78711,7 @@ "id": "InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails", "properties": { "error": { - "description": "Output only. [Output Only] Encountered errors.", + "description": "Output only. Encountered errors.", "properties": { "errors": { "description": "[Output Only] The array of errors encountered while processing this\noperation.", @@ -77540,7 +78760,7 @@ "type": "object" }, "timestamp": { - "description": "Output only. [Output Only] Timestamp is shown only if there is an error. The field\nhas // RFC3339 //\ntext format.", + "description": "Output only. Timestamp is shown only if there is an error. The field\nhas // RFC3339 //\ntext format.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -77552,12 +78772,12 @@ "id": "InstanceGroupManagerStatusAllInstancesConfig", "properties": { "currentRevision": { - "description": "Output only. [Output Only] Current all-instances configuration revision.\nThis value is in RFC3339 text format.", + "description": "Output only. Current all-instances configuration revision.\nThis value is in RFC3339 text format.", "readOnly": true, "type": "string" }, "effective": { - "description": "Output only. [Output Only] A bit indicating whether this configuration has\nbeen applied to all managed instances in the group.", + "description": "Output only. A bit indicating whether this configuration has\nbeen applied to all managed instances in the group.", "readOnly": true, "type": "boolean" } @@ -77569,13 +78789,13 @@ "id": "InstanceGroupManagerStatusBulkInstanceOperation", "properties": { "inProgress": { - "description": "Output only. [Output Only] Informs whether bulk instance operation is in progress.", + "description": "Output only. Informs whether bulk instance operation is in progress.", "readOnly": true, "type": "boolean" }, "lastProgressCheck": { "$ref": "InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck", - "description": "Output only. [Output Only] Information from the last progress check of bulk instance\noperation.", + "description": "Output only. Information from the last progress check of bulk instance\noperation.", "readOnly": true } }, @@ -77585,7 +78805,7 @@ "id": "InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck", "properties": { "error": { - "description": "Output only. [Output Only] Errors encountered during bulk instance operation.", + "description": "Output only. Errors encountered during bulk instance operation.", "properties": { "errors": { "description": "[Output Only] The array of errors encountered while processing this\noperation.", @@ -77634,7 +78854,7 @@ "type": "object" }, "timestamp": { - "description": "Output only. [Output Only] Timestamp of the last progress check of bulk instance\noperation. Timestamp is in RFC3339 text format.", + "description": "Output only. Timestamp of the last progress check of bulk instance\noperation. Timestamp is in RFC3339 text format.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -77647,79 +78867,79 @@ "id": "InstanceGroupManagerStatusInstanceStatusSummary", "properties": { "deprovisioning": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have DEPROVISIONING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have DEPROVISIONING status.", "format": "int32", "readOnly": true, "type": "integer" }, "nonExistent": { - "description": "Output only. [Output Only] The number of instances that have not been created yet or\nhave been deleted. Includes only instances that would be shown in the\nlistManagedInstances method and not all instances that have been\ndeleted in the lifetime of the MIG.\nDoes not include FlexStart instances that are waiting for the resources\navailability, they are considered as 'pending'.", + "description": "Output only. The number of instances that have not been created yet or\nhave been deleted. Includes only instances that would be shown in the\nlistManagedInstances method and not all instances that have been\ndeleted in the lifetime of the MIG.\nDoes not include FlexStart instances that are waiting for the resources\navailability, they are considered as 'pending'.", "format": "int32", "readOnly": true, "type": "integer" }, "pending": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have PENDING status, that is FlexStart instances that are waiting\nfor resources. Instances that do not exist because of the other reasons\nare counted as 'non_existent'.", + "description": "Output only. The number of instances in the managed instance group\nthat have PENDING status, that is FlexStart instances that are waiting\nfor resources. Instances that do not exist because of the other reasons\nare counted as 'non_existent'.", "format": "int32", "readOnly": true, "type": "integer" }, "pendingStop": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have PENDING_STOP status.", + "description": "Output only. The number of instances in the managed instance group\nthat have PENDING_STOP status.", "format": "int32", "readOnly": true, "type": "integer" }, "provisioning": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have PROVISIONING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have PROVISIONING status.", "format": "int32", "readOnly": true, "type": "integer" }, "repairing": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have REPAIRING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have REPAIRING status.", "format": "int32", "readOnly": true, "type": "integer" }, "running": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have RUNNING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have RUNNING status.", "format": "int32", "readOnly": true, "type": "integer" }, "staging": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have STAGING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have STAGING status.", "format": "int32", "readOnly": true, "type": "integer" }, "stopped": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have STOPPED status.", + "description": "Output only. The number of instances in the managed instance group\nthat have STOPPED status.", "format": "int32", "readOnly": true, "type": "integer" }, "stopping": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have STOPPING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have STOPPING status.", "format": "int32", "readOnly": true, "type": "integer" }, "suspended": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have SUSPENDED status.", + "description": "Output only. The number of instances in the managed instance group\nthat have SUSPENDED status.", "format": "int32", "readOnly": true, "type": "integer" }, "suspending": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have SUSPENDING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have SUSPENDING status.", "format": "int32", "readOnly": true, "type": "integer" }, "terminated": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have TERMINATED status.", + "description": "Output only. The number of instances in the managed instance group\nthat have TERMINATED status.", "format": "int32", "readOnly": true, "type": "integer" @@ -77731,19 +78951,19 @@ "id": "InstanceGroupManagerStatusStateful", "properties": { "hasStatefulConfig": { - "description": "Output only. [Output Only] A bit indicating whether the managed instance group\nhas stateful configuration, that is, if you have configured any items\nin a stateful policy or in per-instance configs.\nThe group might report that it has no stateful configuration even when\nthere is still some preserved state on a managed instance, for example,\nif you have deleted all PICs but not yet applied those deletions.", + "description": "Output only. A bit indicating whether the managed instance group\nhas stateful configuration, that is, if you have configured any items\nin a stateful policy or in per-instance configs.\nThe group might report that it has no stateful configuration even when\nthere is still some preserved state on a managed instance, for example,\nif you have deleted all PICs but not yet applied those deletions.", "readOnly": true, "type": "boolean" }, "isStateful": { "deprecated": true, - "description": "Output only. [Output Only] A bit indicating whether the managed instance group\nhas stateful configuration, that is, if you have configured any items\nin a stateful policy or in per-instance configs.\nThe group might report that it has no stateful configuration even when\nthere is still some preserved state on a managed instance, for example,\nif you have deleted all PICs but not yet applied those deletions. This\nfield is deprecated in favor of has_stateful_config.", + "description": "Output only. A bit indicating whether the managed instance group\nhas stateful configuration, that is, if you have configured any items\nin a stateful policy or in per-instance configs.\nThe group might report that it has no stateful configuration even when\nthere is still some preserved state on a managed instance, for example,\nif you have deleted all PICs but not yet applied those deletions. This\nfield is deprecated in favor of has_stateful_config.", "readOnly": true, "type": "boolean" }, "perInstanceConfigs": { "$ref": "InstanceGroupManagerStatusStatefulPerInstanceConfigs", - "description": "Output only. [Output Only] Status of per-instance configurations on the instances.", + "description": "Output only. Status of per-instance configurations on the instances.", "readOnly": true } }, @@ -77764,7 +78984,7 @@ "id": "InstanceGroupManagerStatusVersionTarget", "properties": { "isReached": { - "description": "Output only. [Output Only] A bit indicating whether version target has been reached\nin this managed instance group, i.e. all instances are in their target\nversion. Instances' target version are specified byversion field on Instance Group Manager.", + "description": "Output only. A bit indicating whether version target has been reached\nin this managed instance group, i.e. all instances are in their target\nversion. Instances' target version are specified byversion field on Instance Group Manager.", "readOnly": true, "type": "boolean" } @@ -78033,6 +79253,37 @@ }, "description": "Map of accelerator topologies that should have their state changed to\nthe specified value. The key is the hashed topology locus id. It can be\nobtained from the GetAvailableAcceleratorTopologies rpc.", "type": "object" + }, + "acceleratorTopologyConfigurations": { + "additionalProperties": { + "$ref": "InstanceGroupManagersConfigureAcceleratorTopologiesRequestAcceleratorTopologyConfiguration" + }, + "description": "Map of accelerator topologies that should have their state changed to\nthe specified configuration. The map key is the hashed topology locus id.\nIt can be obtained from the GetAvailableAcceleratorTopologies rpc.", + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManagersConfigureAcceleratorTopologiesRequestAcceleratorTopologyConfiguration": { + "description": "Configuration for a single accelerator topology.", + "id": "InstanceGroupManagersConfigureAcceleratorTopologiesRequestAcceleratorTopologyConfiguration", + "properties": { + "action": { + "enum": [ + "ACCELERATOR_TOPOLOGY_ACTION_UNSPECIFIED", + "ACTIVATE", + "DEACTIVATE" + ], + "enumDescriptions": [ + "Default value. Should not be used.", + "The accelerator topology is to be activated.", + "The accelerator topology is to be deactivated." + ], + "type": "string" + }, + "externalId": { + "description": "Identifier of the accelerator topology assigned externally to\ndifferentiate who is the owner of the topology. The format needs to\nconform to RFC1035 and be unique. The uniqueness is guaranteed by the\nrequestor. If it is provided on activating the sub-slice it will have to\nbe provided on deactivating as well. This identifier is cleared on\nsuccessful deform of a sub-slice.", + "type": "string" } }, "type": "object" @@ -78117,14 +79368,12 @@ "enum": [ "DEGRADED", "HEALTHY", - "UNHEALTHY", - "UNKNOWN" + "UNHEALTHY" ], "enumDescriptions": [ "All VM are in RUNNING state, but there is an issue with\nthe inter-chip connectivity that makes this part\nof the infrastructure ready to use as a working\ninter-chip connected group only in a degraded mode.\nThis is allowed only for Instances configured with ICI\nresiliency", "All VM are in RUNNING state, there are no issues with the\ninter-chip connectivity.", - "Some VMs may not be in RUNNING state, or there is an\nissue with the inter-chip connectivity that makes this\npart of the infrastructure unsuitable for forming a\nworking inter-chip connected group.", - "No signal available" + "Some VMs may not be in RUNNING state, or there is an\nissue with the inter-chip connectivity that makes this\npart of the infrastructure unsuitable for forming a\nworking inter-chip connected group." ], "type": "string" }, @@ -78226,6 +79475,10 @@ "description": "Timestamp when the last error happened", "format": "google-datetime", "type": "string" + }, + "externalId": { + "description": "Identifier of the accelerator topology assigned externally to\ndifferentiate who is the owner of the topology. This is set in\nConfigureAcceleratorTopologies. If it is provided on activating the\nsub-slice it will have to be provided on deactivating as well.\nThis identifier is cleared on successful deform of a sub-slice.", + "type": "string" } }, "type": "object" @@ -78446,6 +79699,10 @@ "description": "If this flag is true, the managed instance group attempts to create all\ninstances initiated by this resize request only once. If there is an error\nduring creation, the managed instance group does not retry create this\ninstance, and we will decrease the targetSize of the request\ninstead. If the flag is false, the group attempts to recreate each instance\ncontinuously until it succeeds.\n\nThis flag matters only in the first attempt of creation of an instance.\nAfter an instance is successfully created while this flag is enabled, the\ninstance behaves the same way as all the other instances created with a\nregular resize request. In particular, if a running instance dies\nunexpectedly at a later time and needs to be recreated, this mode does not\naffect the recreation behavior in that scenario.\n\nThis flag is applicable only to the current resize request. It does not\ninfluence other resize requests in any way.\n\nYou can see which instances is being creating in which mode by calling\nthe get or listManagedInstances API.", "type": "boolean" }, + "scaleInProtection": { + "description": "If this flag is enabled within a request to decrease a MIG's target size,\nthen the MIG declines that request.", + "type": "boolean" + }, "targetSize": { "description": "The number of running instances that the managed instance group should\nmaintain at any given time. The group automatically adds or removes\ninstances to maintain the number of instances specified by this parameter.", "format": "int32", @@ -78471,7 +79728,7 @@ "id": "InstanceGroupManagersScopedList", "properties": { "instanceGroupManagers": { - "description": "Output only. [Output Only] The list of managed instance groups that are contained in\nthe specified project and zone.", + "description": "Output only. The list of managed instance groups that are contained in the specified\nproject and zone.", "items": { "$ref": "InstanceGroupManager" }, @@ -78479,7 +79736,7 @@ "type": "array" }, "warning": { - "description": "Output only. [Output Only] The warning that replaces the list of managed instance\ngroups when the list is empty.", + "description": "Output only. The warning that replaces the list of managed instance groups when the list\nis empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -79419,6 +80676,7 @@ "RECREATING", "REFRESHING", "RESTARTING", + "RESTARTING_IN_PLACE", "RESUMING", "STARTING", "STOPPING", @@ -79437,6 +80695,7 @@ "The managed instance group is recreating this instance.", "The managed instance group is applying configuration changes to the\ninstance without stopping it. For example, the group can update the\ntarget pool list for an instance without stopping that instance.", "The managed instance group is restarting this instance.", + "The managed instance group is restarting this instance while preserving\nits capacity and local SSDs.", "The managed instance group is resuming this instance.", "The managed instance group is starting this instance.", "The managed instance group is stopping this instance.", @@ -79501,7 +80760,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the instance. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the instance. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -79644,7 +80903,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the instance. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys must be in the format `tagKeys/{tag_key_id}`, and\nvalues are in the format `tagValues/456`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the instance. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" }, "resourcePolicies": { @@ -82832,7 +84091,7 @@ "type": "object" }, "InterconnectAttachmentGroupsCreateMembersInterconnectAttachmentInput": { - "description": "LINT.IfChange\nParameters used to create an InterconnectAttachment. This is similar to\nInterconnectAttachment, but the region field used here is not output only\nand all other output only fields are excluded.", + "description": "Parameters used to create an InterconnectAttachment. This is similar to\nInterconnectAttachment, but the region field used here is not output only\nand all other output only fields are excluded.", "id": "InterconnectAttachmentGroupsCreateMembersInterconnectAttachmentInput", "properties": { "adminEnabled": { @@ -84267,7 +85526,6 @@ "type": "object" }, "InterconnectGroupsCreateMembersInterconnectInput": { - "description": "LINT.IfChange", "id": "InterconnectGroupsCreateMembersInterconnectInput", "properties": { "adminEnabled": { @@ -85792,6 +87050,23 @@ }, "type": "object" }, + "Interval": { + "description": "Represents a time interval, encoded as a Timestamp start (inclusive) and a\nTimestamp end (exclusive).\n\nThe start must be less than or equal to the end.\nWhen the start equals the end, the interval is empty (matches no time).\nWhen both start and end are unspecified, the interval matches any time.", + "id": "Interval", + "properties": { + "endTime": { + "description": "Optional. Exclusive end of the interval.\n\nIf specified, a Timestamp matching this interval will have to be before the\nend.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Optional. Inclusive start of the interval.\n\nIf specified, a Timestamp matching this interval will have to be the same\nor after the start.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "IpAddressesList": { "id": "IpAddressesList", "properties": { @@ -86432,7 +87707,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the license. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the license. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -88346,6 +89621,7 @@ "RECREATING", "REFRESHING", "RESTARTING", + "RESTARTING_IN_PLACE", "RESUMING", "STARTING", "STOPPING", @@ -88364,6 +89640,7 @@ "The managed instance group is recreating this instance.", "The managed instance group is applying configuration changes to the\ninstance without stopping it. For example, the group can update the\ntarget pool list for an instance without stopping that instance.", "The managed instance group is restarting this instance.", + "The managed instance group is restarting this instance while preserving\nits capacity and local SSDs.", "The managed instance group is resuming this instance.", "The managed instance group is starting this instance.", "The managed instance group is stopping this instance.", @@ -88471,6 +89748,11 @@ "description": "Output only. [Output Only] Information about the termination timestamp of the instance,\nif applicable.", "readOnly": true }, + "shutdownDetails": { + "$ref": "ManagedInstanceShutdownDetails", + "description": "Output only. [Output Only] Specifies the graceful shutdown details if the instance is in\n`PENDING_STOP` state or there is a programmed stop scheduled.", + "readOnly": true + }, "sizeInUnit": { "description": "Output only. [Output only] The size of the VM represented by this Managed Instance.\nThis is how much this Managed Instance contributes to the\nsize of the group.", "format": "float", @@ -88740,6 +90022,12 @@ "ManagedInstanceScheduling": { "id": "ManagedInstanceScheduling", "properties": { + "gracefulShutdownTimestamp": { + "description": "Output only. [Output Only] The timestamp at which the underlying instance will be\ntriggered for graceful shutdown if it is configured. This is in RFC3339 text format.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "terminationTimestamp": { "description": "Output only. [Output Only] The timestamp at which the managed instance will be\nterminated. This is in RFC3339 text format.", "format": "google-datetime", @@ -88749,6 +90037,23 @@ }, "type": "object" }, + "ManagedInstanceShutdownDetails": { + "id": "ManagedInstanceShutdownDetails", + "properties": { + "maxDuration": { + "$ref": "Duration", + "description": "Output only. [Output Only] The duration for graceful shutdown. Only applicable when\nthe instance is in `PENDING_STOP` state.", + "readOnly": true + }, + "requestTimestamp": { + "description": "Output only. [Output Only] Past timestamp indicating the beginning of `PENDING_STOP`\nstate of instance in RFC3339 text format.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ManagedInstanceVersion": { "id": "ManagedInstanceVersion", "properties": { @@ -90794,6 +92099,7 @@ "description": "Type of network endpoints in this network endpoint group. Can be one ofGCE_VM_IP, GCE_VM_IP_PORT,NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT,INTERNET_IP_PORT, SERVERLESS,PRIVATE_SERVICE_CONNECT, GCE_VM_IP_PORTMAP.", "enum": [ "GCE_VM_IP", + "GCE_VM_IP_DEDICATED_BACKEND", "GCE_VM_IP_PORT", "GCE_VM_IP_PORTMAP", "INTERNET_FQDN_PORT", @@ -90804,6 +92110,7 @@ ], "enumDescriptions": [ "The network endpoint is represented by an IP address.", + "The network endpoint for targeting a specific network interface of a\nVM instance in configurations with multiple network interfaces on the\nsame network.", "The network endpoint is represented by IP address and port pair.", "The network endpoint is represented by an IP, Port and Client Destination\nPort.", "The network endpoint is represented by fully qualified domain name and\nport.", @@ -91296,6 +92603,7 @@ "description": "Output only. [Output Only] The connection status of the PSC Forwarding Rule.", "enum": [ "ACCEPTED", + "ACCEPTED_LIMITED_CAPACITY", "CLOSED", "NEEDS_ATTENTION", "PENDING", @@ -91304,6 +92612,7 @@ ], "enumDescriptions": [ "The connection has been accepted by the producer.", + "The connection has been accepted by the producer but run at a lower\ncapacity. The producer needs to take further actions to increase\ncapacity for this connection.", "The connection has been closed by the producer and will not serve\ntraffic going forward.", "The connection has been accepted by the producer, but the producer\nneeds to take further action before the forwarding rule can serve\ntraffic.", "The connection is pending acceptance by the producer.", @@ -91891,6 +93200,17 @@ }, "type": "array" }, + "aliasIpv6Ranges": { + "description": "An array of alias IPv6 ranges for this network interface.\nYou can only specify this field for network interfaces in VPC networks.", + "items": { + "$ref": "AliasIpRange" + }, + "type": "array" + }, + "dns64Eligible": { + "description": "If true, this network interface is eligible for DNS64.\nThis field is only supported for dual-stack (IPV4_IPV6) network interfaces.", + "type": "boolean" + }, "enableVpcScopedDns": { "description": "Optional. If true, DNS resolution will be enabled over this interface. Only valid\nwith network_attachment.", "type": "boolean" @@ -91956,6 +93276,10 @@ "description": "[Output Only] The name of the network interface, which is generated by the\nserver. For a VM, the network interface uses the nicN naming\nformat. Where N is a value between 0 and7. The default interface value is nic0.", "type": "string" }, + "nat64Eligible": { + "description": "If true, this network interface is eligible for NAT64.\nThis field is only supported for dual-stack (IPV4_IPV6) network interfaces.", + "type": "boolean" + }, "network": { "description": "URL of the VPC network resource for this instance. When creating an\ninstance, if neither the network nor the subnetwork is specified, the\ndefault network global/networks/default is used. If the\nselected project doesn't have the default network, you must specify a\nnetwork or subnet. If the network is not specified but the subnetwork is\nspecified, the network is inferred.\n\nIf you specify this property, you can specify the network as\na full or partial URL. For example, the following are all valid URLs:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/global/networks/network\n - projects/project/global/networks/network\n - global/networks/default", "type": "string" @@ -92304,11 +93628,15 @@ "description": "Output only. [Output Only] State for the peering.", "enum": [ "ACTIVE", - "INACTIVE" + "INACTIVE", + "NCC_MIGRATION_COMPLETE", + "NCC_MIGRATION_IN_PROGRESS" ], "enumDescriptions": [ "Matching configuration exists on the peer.", - "There is no matching configuration on the peer, including the case when\npeer does not exist." + "There is no matching configuration on the peer, including the case when\npeer does not exist.", + "The peering has been migrated to Network Connectivity Center.", + "The peering is being migrated to Network Connectivity Center." ], "readOnly": true, "type": "string" @@ -99410,6 +100738,17 @@ }, "type": "object" }, + "ProjectView": { + "description": "Represents a ProjectView resource.\n\nA ProjectView resource contains read-only project data which is available\nglobally.", + "id": "ProjectView", + "properties": { + "project": { + "$ref": "Project", + "description": "The project data." + } + }, + "type": "object" + }, "ProjectsDisableXpnResourceRequest": { "id": "ProjectsDisableXpnResourceRequest", "properties": { @@ -99615,6 +100954,24 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "networkTier": { + "description": "Network tier to be used for this prefix. All child delegated prefixes will\ninherit this field. If this field is not specified, it defaults to the\nnetwork tier of the project that the PublicAdvertisedPrefix belongs to.", + "enum": [ + "FIXED_STANDARD", + "PREMIUM", + "SELECT", + "STANDARD", + "STANDARD_OVERRIDES_FIXED_STANDARD" + ], + "enumDescriptions": [ + "Public internet quality with fixed bandwidth.", + "High quality, Google-grade network tier, support for all networking\nproducts.", + "Price competitive network tier, support for all networking products.", + "Public internet quality, only limited support for other networking\nproducts.", + "(Output only) Temporary tier for FIXED_STANDARD when fixed standard tier\nis expired or not configured." + ], + "type": "string" + }, "pdpScope": { "description": "Specifies how child public delegated prefix will be scoped. It could\nbe one of following values:\n \n \n - `REGIONAL`: The public delegated prefix is regional only. The\n provisioning will take a few minutes.\n - `GLOBAL`: The public delegated prefix is global only. The\n provisioning will take ~4 weeks.\n - `GLOBAL_AND_REGIONAL` [output only]: The public delegated prefixes is\n BYOIP V1 legacy prefix. This is output only value and no longer\n supported in BYOIP V2.", "enum": [ @@ -99962,6 +101319,24 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "networkTier": { + "description": "Network tier of the public delegated prefix. If populated, it must match\nthe network tier of the parent public advertised prefix. If not populated,\nit defaults to the network tier of the parent public advertised prefix.", + "enum": [ + "FIXED_STANDARD", + "PREMIUM", + "SELECT", + "STANDARD", + "STANDARD_OVERRIDES_FIXED_STANDARD" + ], + "enumDescriptions": [ + "Public internet quality with fixed bandwidth.", + "High quality, Google-grade network tier, support for all networking\nproducts.", + "Price competitive network tier, support for all networking products.", + "Public internet quality, only limited support for other networking\nproducts.", + "(Output only) Temporary tier for FIXED_STANDARD when fixed standard tier\nis expired or not configured." + ], + "type": "string" + }, "parentPrefix": { "description": "The URL of parent prefix. Either PublicAdvertisedPrefix or\nPublicDelegatedPrefix.", "type": "string" @@ -99974,7 +101349,7 @@ "type": "array" }, "purpose": { - "description": "The purpose of the public delegated prefix.\n\nThis field can only be set for the top-level global public delegated\nprefix. It is an output-only field for the sub-delegates that inherit the\nvalue from the top-level global public delegated prefix. Once the value is\nset, it cannot be changed.\n\nThe field cannot be set for regional public delegated prefixes.\n\nThe supported values are:\n \n \n - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public\n delegated prefix can only be used by Global External Application and\n Proxy Load Balancers to allocate addresses for forwarding rules. This is\n the default value.\n - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The\n global public delegated prefix can only be used by Global External\n Passthrough Network Load Balancers to allocate Availability Group 0\n addresses for forwarding rules.\n - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The\n global public delegated prefix can only be used by Global External\n Passthrough Network Load Balancers to allocate Availability Group 1\n addresses for forwarding rules.", + "description": "Immutable. The purpose of the public delegated prefix.\n\nThis field can only be set for the top-level global public delegated\nprefix. It is an output-only field for the sub-delegates that inherit the\nvalue from the top-level global public delegated prefix. Once the value is\nset, it cannot be changed.\n\nThe field cannot be set for regional public delegated prefixes.\n\nThe supported values are:\n \n \n - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public\n delegated prefix can only be used by Global External Application and\n Proxy Load Balancers to allocate addresses for forwarding rules. This is\n the default value.\n - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The\n global public delegated prefix can only be used by Global External\n Passthrough Network Load Balancers to allocate Availability Group 0\n addresses for forwarding rules.\n - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The\n global public delegated prefix can only be used by Global External\n Passthrough Network Load Balancers to allocate Availability Group 1\n addresses for forwarding rules.", "enum": [ "APPLICATION_AND_PROXY_LOAD_BALANCERS", "PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0", @@ -102245,12 +103620,12 @@ "description": "Encrypts the snapshot using acustomer-supplied\nencryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must\nprovide the same key if you use the snapshot later. For example, you must\nprovide the encryption key when you create a disk from the encrypted\nsnapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata\nof the snapshot.\n\nIf you do not provide an encryption key when creating the snapshot, then\nthe snapshot will be encrypted using an automatically generated key and\nyou do not need to provide a key to use the snapshot later." }, "snapshotGroupId": { - "description": "Output only. [Output Only] The unique ID of the snapshot group that this snapshot\nbelongs to.", + "description": "Output only. [Output Only] The unique ID of the snapshot group that this snapshot\nbelongs to. The usage of snapshot group feature is restricted.", "readOnly": true, "type": "string" }, "snapshotGroupName": { - "description": "Output only. [Output only] The snapshot group that this snapshot belongs to.", + "description": "Output only. [Output only] The snapshot group that this snapshot belongs to. The usage\nof snapshot group feature is restricted.", "readOnly": true, "type": "string" }, @@ -103036,6 +104411,16 @@ }, "type": "object" }, + "RegionDiskUpdateKmsKeyRequest": { + "id": "RegionDiskUpdateKmsKeyRequest", + "properties": { + "kmsKeyName": { + "description": "Optional. The new KMS key to replace the current one on the disk. If empty, the disk\nwill be re-encrypted using the primary version of the disk's current KMS\nkey.\n\nThe KMS key can be provided in the following formats:\n \n \n - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key\n\n\nWhere project is the project ID or\nproject number.", + "type": "string" + } + }, + "type": "object" + }, "RegionDisksAddResourcePoliciesRequest": { "id": "RegionDisksAddResourcePoliciesRequest", "properties": { @@ -103262,7 +104647,7 @@ "id": "RegionInstanceGroupManagerList", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, @@ -103275,22 +104660,22 @@ }, "kind": { "default": "compute#regionInstanceGroupManagerList", - "description": "Output only. [Output Only] The resource type, which is always\ncompute#instanceGroupManagerList for a list of managed instance groups that\nexist in th regional scope.", + "description": "Output only. The resource type, which is always compute#instanceGroupManagerList for a\nlist of managed instance groups that exist in th regional scope.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -103438,7 +104823,7 @@ "type": "string" }, "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, @@ -103451,22 +104836,22 @@ }, "kind": { "default": "compute#regionInstanceGroupManagerResizeRequestList", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#regionInstanceGroupManagerResizeRequestList for\na list of Resize Requests.", + "description": "Output only. Type of the resource. Alwayscompute#regionInstanceGroupManagerResizeRequestList for\na list of Resize Requests.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", + "description": "Output only. Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", "items": { "type": "string" }, @@ -103474,7 +104859,7 @@ "type": "array" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -103956,6 +105341,10 @@ "description": "If this flag is true, the managed instance group attempts to create all\ninstances initiated by this resize request only once. If there is an error\nduring creation, the managed instance group does not retry create this\ninstance, and we will decrease the targetSize of the request\ninstead. If the flag is false, the group attempts to recreate each instance\ncontinuously until it succeeds.\n\nThis flag matters only in the first attempt of creation of an instance.\nAfter an instance is successfully created while this flag is enabled, the\ninstance behaves the same way as all the other instances created with a\nregular resize request. In particular, if a running instance dies\nunexpectedly at a later time and needs to be recreated, this mode does not\naffect the recreation behavior in that scenario.\n\nThis flag is applicable only to the current resize request. It does not\ninfluence other resize requests in any way.\n\nYou can see which instances ar being created in which mode by calling\nthe get or listManagedInstances API.", "type": "boolean" }, + "scaleInProtection": { + "description": "If this flag is enabled within a request to decrease a MIG's target size,\nthen the MIG declines that request.", + "type": "boolean" + }, "targetSize": { "description": "The number of running instances that the managed instance group should\nmaintain at any given time. The group automatically adds or removes\ninstances to maintain the number of instances specified by this parameter.", "format": "int32", @@ -104567,6 +105956,16 @@ }, "type": "object" }, + "RegionSnapshotUpdateKmsKeyRequest": { + "id": "RegionSnapshotUpdateKmsKeyRequest", + "properties": { + "kmsKeyName": { + "description": "Optional. The new KMS key to replace the current one on the snapshot. If empty, the\nsnapshot will be re-encrypted using the primary version of the snapshot's\ncurrent KMS key.\n\nThe KMS key can be provided in the following formats:\n \n \n - projects/project_id/locations/region/keyRings/region/cryptoKeys/key", + "type": "string" + } + }, + "type": "object" + }, "RegionTargetHttpsProxiesSetSslCertificatesRequest": { "id": "RegionTargetHttpsProxiesSetSslCertificatesRequest", "properties": { @@ -105113,6 +106512,7 @@ "description": "Specifies the type of reservation from which this instance can consume\nresources: ANY_RESERVATION (default),SPECIFIC_RESERVATION, or NO_RESERVATION. See\nConsuming reserved instances for examples.", "enum": [ "ANY_RESERVATION", + "ANY_RESERVATION_THEN_FAIL", "NO_RESERVATION", "SPECIFIC_RESERVATION", "SPECIFIC_THEN_ANY_RESERVATION", @@ -105121,6 +106521,7 @@ ], "enumDescriptions": [ "Consume any allocation available.", + "Consume any reservation available, but fail if no reservation is\navailable. Will not consume from the on-demand pool.", "Do not consume from any allocated capacity.", "Must consume from a specific reservation. Must specify key value fields\nfor specifying the reservations.", "Prefer to consume from a specific reservation, but still consume any\nreservation available if the specified reservation is not available or\nexhausted. Must specify key value fields for specifying the reservations.", @@ -108306,6 +109707,16 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "pauseTime": { + "description": "Output only. The timestamp at which the Rollout was paused.", + "readOnly": true, + "type": "string" + }, + "resumeTime": { + "description": "Output only. The timestamp at which the Rollout was resumed.", + "readOnly": true, + "type": "string" + }, "rolloutEntity": { "$ref": "RolloutRolloutEntity", "description": "Required. The resource being rolled out." @@ -108872,6 +110283,11 @@ "readOnly": true, "type": "string" }, + "estimatedCompletionTime": { + "description": "Output only. Estimated timestamp at which the wave will complete. Extrapolated from\ncurrent progress.", + "readOnly": true, + "type": "string" + }, "estimatedTotalResourcesCount": { "description": "Output only. Estimated total count of resources.", "format": "int64", @@ -108891,6 +110307,42 @@ "format": "int64", "readOnly": true, "type": "string" + }, + "locationStatus": { + "additionalProperties": { + "$ref": "RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus" + }, + "description": "Output only. Status of each location in the wave. Map keys (locations) must be\nspecified like \"us-east1\" or \"asia-west1-a\".", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, + "RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus": { + "description": "Represents the status of a location in a wave.", + "id": "RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus", + "properties": { + "state": { + "description": "Output only. Location state of the wave.", + "enum": [ + "STATE_FAILED", + "STATE_IN_PROGRESS", + "STATE_PENDING", + "STATE_SKIPPED", + "STATE_SUCCEEDED", + "STATE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Work on the wave failed.", + "Work on the wave is in progress.", + "Work on the wave is pending.", + "Work on the wave was canceled or skipped.", + "Work on the wave succeeded.", + "Undefined default state. Should never be exposed to users." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -113031,7 +114483,7 @@ "type": "string" }, "ddosImpactedBaselineThreshold": { - "description": "DDoS Protection for Network Load Balancers (and VMs with public IPs)\nbuilds DDos mitigations that minimize collateral damage. It quantifies\nthis as the fraction of a non-abuse baseline that's inadvertently\nblocked.\n\nRules whose collateral damage exceeds ddosImpactedBaselineThreshold will\nnot be deployed. Using a lower value will prioritize keeping collateral\ndamage low, possibly at the cost of its effectiveness in rate limiting\nsome or all of the attack. It should typically be unset, so Advanced DDos\n(and Adaptive Protection) uses the best mitigation it can find. Setting\nthe threshold is advised if there are logs for false positive detections\nwith high collateral damage, and will cause Advanced DDos to attempt to\nfind a less aggressive rule that satisfies the constraint; Failing that,\nit will fall back to no mitigation (smaller attack) or to broader network\nthrottles (larger attack).", + "description": "DDoS Protection for Network Load Balancers (and VMs with public IPs)\nbuilds DDoS mitigations that minimize collateral damage. It quantifies\nthis as the fraction of a non-abuse baseline that's inadvertently\nblocked.\n\nRules whose collateral damage exceeds ddosImpactedBaselineThreshold will\nnot be deployed. Using a lower value will prioritize keeping collateral\ndamage low, possibly at the cost of its effectiveness in rate limiting\nsome or all of the attack. It should typically be unset, so Advanced DDoS\n(and Adaptive Protection) uses the best mitigation it can find. Setting\nthe threshold is advised if there are logs for false positive detections\nwith high collateral damage, and will cause Advanced DDoS to attempt to\nfind a less aggressive rule that satisfies the constraint. If a suitable\nrule cannot be found, the system falls back to either no mitigation for\nsmaller attacks or broader network throttles for larger ones.", "format": "float", "type": "number" }, @@ -114165,6 +115617,11 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "natIpsPerEndpoint": { + "description": "The number of NAT IP addresses to be allocated per connected endpoint.\nIf not specified, the default value is 1.", + "format": "uint32", + "type": "integer" + }, "natSubnets": { "description": "An array of URLs where each entry is the URL of a subnet provided\nby the service producer to use for NAT in this service attachment.", "items": { @@ -114415,6 +115872,7 @@ "description": "The status of a connected endpoint to this service attachment.", "enum": [ "ACCEPTED", + "ACCEPTED_LIMITED_CAPACITY", "CLOSED", "NEEDS_ATTENTION", "PENDING", @@ -114423,6 +115881,7 @@ ], "enumDescriptions": [ "The connection has been accepted by the producer.", + "The connection has been accepted by the producer but run at a lower\ncapacity. The producer needs to take further actions to increase\ncapacity for this connection.", "The connection has been closed by the producer.", "The connection has been accepted by the producer, but the producer\nneeds to take further action before the forwarding rule can serve\ntraffic.", "The connection is pending acceptance by the producer.", @@ -115246,12 +116705,12 @@ "description": "Encrypts the snapshot using acustomer-supplied\nencryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must\nprovide the same key if you use the snapshot later. For example, you must\nprovide the encryption key when you create a disk from the encrypted\nsnapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata\nof the snapshot.\n\nIf you do not provide an encryption key when creating the snapshot, then\nthe snapshot will be encrypted using an automatically generated key and you\ndo not need to provide a key to use the snapshot later." }, "snapshotGroupId": { - "description": "Output only. [Output Only] The unique ID of the snapshot group that this snapshot\nbelongs to.", + "description": "Output only. [Output Only] The unique ID of the snapshot group that this snapshot\nbelongs to. The usage of snapshot group feature is restricted.", "readOnly": true, "type": "string" }, "snapshotGroupName": { - "description": "Output only. [Output only] The snapshot group that this snapshot belongs to.", + "description": "Output only. [Output only] The snapshot group that this snapshot belongs to. The usage\nof snapshot group feature is restricted.", "readOnly": true, "type": "string" }, @@ -115817,7 +117276,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the snapshot. Tag keys and values have\nthe same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the snapshot. Tag keys and values have\nthe same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -115964,6 +117423,16 @@ }, "type": "object" }, + "SnapshotUpdateKmsKeyRequest": { + "id": "SnapshotUpdateKmsKeyRequest", + "properties": { + "kmsKeyName": { + "description": "Optional. The new KMS key to replace the current one on the snapshot. If empty, the\nsnapshot will be re-encrypted using the primary version of the snapshot's\ncurrent KMS key.\n\nThe KMS key can be provided in the following formats:\n \n \n - projects/project_id/locations/region/keyRings/key_ring/cryptoKeys/key", + "type": "string" + } + }, + "type": "object" + }, "SnapshotsGetEffectiveRecycleBinRuleResponse": { "id": "SnapshotsGetEffectiveRecycleBinRuleResponse", "properties": { @@ -117408,21 +118877,21 @@ "type": "string" }, "postQuantumKeyExchange": { - "description": "One of DEFAULT, ENABLED, orDEFERRED. Controls whether the load balancer allows\nnegotiating X25519MLKEM768 key exchange when clients advertise support for\nit. When set to DEFAULT, or if no SSL Policy is\nattached to the target proxy, the load balancer disallows X25519MLKEM768\nkey exchange until it is enabled by default on LBs. When set toENABLED, the load balancer will negotiate X25519MLKEM768 key\nexchange. Customers can set this to DEFERRED to temporarily\nopt-out the LB from negotiating post-quantum key exchange by default.", + "description": "One of DEFAULT, ENABLED, orDEFERRED. Controls whether the load balancer negotiates\nX25519MLKEM768 key exchange when clients advertise support for it. When set\nto DEFAULT, or if no SSL Policy is attached to the target\nproxy, the load balancer disallows X25519MLKEM768 key exchange before\nOctober 2026, and allows it afterward. When set to ENABLED,\nthe load balancer allows X25519MLKEM768 key exchange. When set toDEFERRED, the load balancer disallows X25519MLKEM768 key\nexchange until October 2027, and allows it afterward.", "enum": [ "DEFAULT", "DEFERRED", "ENABLED" ], "enumDescriptions": [ - "Post-quantum key exchange is disabled until it becomes enabled by\ndefault on LBs.", - "Post-quantum key exchange with clients is temporarily disabled.", - "Post-quantum key exchange is enabled." + "Default behavior: disabled until October 2026, enabled afterward.", + "Disabled until October 2027, enabled afterward.", + "Enabled now." ], "type": "string" }, "profile": { - "description": "Profile specifies the set of SSL features that can be used by the load\nbalancer when negotiating SSL with clients. This can be one ofCOMPATIBLE, MODERN, RESTRICTED, orCUSTOM. If using CUSTOM, the set of SSL features\nto enable must be specified in the customFeatures field.", + "description": "Profile specifies the set of SSL features that can be used by the load\nbalancer when negotiating SSL with clients. This can be one ofCOMPATIBLE, MODERN, RESTRICTED,FIPS_202205, or CUSTOM. If usingCUSTOM, the set of SSL features to enable must be specified in\nthe customFeatures field. If using FIPS_202205,\nthe min_tls_version field must be set to TLS_1_2.", "enum": [ "COMPATIBLE", "CUSTOM", @@ -117829,6 +119298,10 @@ "readOnly": true, "type": "string" }, + "shareSettings": { + "$ref": "StoragePoolShareSettings", + "description": "Share settings for the storage pool." + }, "sizeGb": { "description": "DEPRECATED -- use \"pool provisioned capacity gb\".", "format": "int64", @@ -118491,7 +119964,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the storage pool. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the storage pool. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -118613,6 +120086,31 @@ }, "type": "object" }, + "StoragePoolShareSettings": { + "description": "Share settings for the storage pool.", + "id": "StoragePoolShareSettings", + "properties": { + "projectMap": { + "additionalProperties": { + "$ref": "StoragePoolShareSettingsProjectConfig" + }, + "description": "A map of project id and project config.", + "type": "object" + } + }, + "type": "object" + }, + "StoragePoolShareSettingsProjectConfig": { + "description": "Config for each project in the share settings.", + "id": "StoragePoolShareSettingsProjectConfig", + "properties": { + "projectId": { + "description": "The project ID, should be same as the key of this project config in the\nparent map.", + "type": "string" + } + }, + "type": "object" + }, "StoragePoolType": { "id": "StoragePoolType", "properties": { @@ -119421,6 +120919,24 @@ "readOnly": true, "type": "string" }, + "ipv6NetworkTier": { + "description": "Specifies the network tier for EXTERNAL IPv6. Can only be set when\nipv6_access_type is EXTERNAL. Defaults to project defaultNetworkTier if not\nspecified during the creation of the subnetwork. This field is IMMUTABLE\nonce set with EXTERNAL IPv6.", + "enum": [ + "FIXED_STANDARD", + "PREMIUM", + "SELECT", + "STANDARD", + "STANDARD_OVERRIDES_FIXED_STANDARD" + ], + "enumDescriptions": [ + "Public internet quality with fixed bandwidth.", + "High quality, Google-grade network tier, support for all networking\nproducts.", + "Price competitive network tier, support for all networking products.", + "Public internet quality, only limited support for other networking\nproducts.", + "(Output only) Temporary tier for FIXED_STANDARD when fixed standard tier\nis expired or not configured." + ], + "type": "string" + }, "kind": { "default": "compute#subnetwork", "description": "Output only. [Output Only] Type of the resource. Always compute#subnetwork\nfor Subnetwork resources.", @@ -119515,10 +121031,14 @@ "description": "Configures subnet mask resolution for this subnetwork.", "enum": [ "ARP_ALL_RANGES", + "ARP_BROADCAST_PRIMARY_RANGE", + "ARP_BROADCAST_PRIMARY_RANGE_WITH_LEARNING", "ARP_PRIMARY_RANGE" ], "enumDescriptions": [ "All ranges assigned to the VM NIC will respond to ARP.", + "VMs will receive an ARP response from a VM instance owning the target IP\naddress within the subnetwork's primary CIDR range, if such a VM instance\nexists and is running.", + "Combines ARP_BROADCAST_PRIMARY_RANGE with MAC learning. Enables cache\nmapping between IP addresses and custom MAC addresses of instances and\nuse of it to set the correct destination MAC address. If this option is\nchosen, the subnetwork must have /24 or a smaller CIDR range.", "Only the primary range of the VM NIC will respond to ARP." ], "type": "string" @@ -120015,6 +121535,23 @@ "description": "The range of IP addresses belonging to this subnetwork secondary range.\nProvide this property when you create the subnetwork. Ranges must be\nunique and non-overlapping with all primary and secondary IP ranges\nwithin a network. Both IPv4 and IPv6 ranges are supported. For IPv4,\nthe range can be any range listed in theValid\nranges list.\n\nFor IPv6:\nThe range must have a /64 prefix length.\nThe range must be omitted, for auto-allocation from Google-defined ULA\nIPv6 range.\nFor BYOGUA internal IPv6 secondary range, the range may be specified\nalong with the `ipCollection` field.\nIf an `ipCollection` is specified, the requested ip_cidr_range must lie\nwithin the range of the PDP referenced by the `ipCollection` field for\nallocation.\nIf `ipCollection` field is specified, but ip_cidr_range is not,\nthe range is auto-allocated from the PDP referenced by the `ipCollection`\nfield.", "type": "string" }, + "ipCollection": { + "description": "Reference to a Public Delegated Prefix (PDP) for BYOIP.\nThis field should be specified for configuring BYOGUA internal IPv6\nsecondary range.\nWhen specified along with the ip_cidr_range, the ip_cidr_range must lie\nwithin the PDP referenced by the `ipCollection` field.\nWhen specified without the ip_cidr_range, the range is auto-allocated\nfrom the PDP referenced by the `ipCollection` field.", + "type": "string" + }, + "ipVersion": { + "enum": [ + "IPV4", + "IPV6", + "IP_VERSION_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "Treated as IPV4 for backward-compatibility." + ], + "type": "string" + }, "rangeName": { "description": "The name associated with this subnetwork secondary range, used when adding\nan alias IP/IPv6 range to a VM instance.\nThe name must be 1-63 characters long, and comply withRFC1035.\nThe name must be unique within the subnetwork.", "type": "string" @@ -124650,6 +126187,21 @@ "description": "The latest time for the planned maintenance window to start.\nThis timestamp value is in RFC3339 text format.", "type": "string" }, + "maintenanceMethod": { + "description": "Output only. Maintenance method for the upcoming maintenance.", + "enum": [ + "LIVE_UPDATE", + "MAINTENANCE_METHOD_UNSPECIFIED", + "TERMINATION" + ], + "enumDescriptions": [ + "VM will stay alive during maintenance", + "Maintenance method does not specify whether VM will be terminated or not", + "VM will be terminated during maintenance" + ], + "readOnly": true, + "type": "string" + }, "maintenanceOnShutdown": { "description": "Indicates whether the UpcomingMaintenance will be triggered on VM shutdown.", "type": "boolean" @@ -124837,6 +126389,11 @@ "description": "[Output Only] Server-defined URL for the resource.", "type": "string" }, + "status": { + "$ref": "UrlMapStatus", + "description": "Output only. [Output Only] The status of the URL map.", + "readOnly": true + }, "tests": { "description": "The list of expected URL mapping tests. Request to update theUrlMap succeeds only if all test cases pass. You can specify a\nmaximum of 100 tests per UrlMap.\n\nNot supported when the URL map is bound to a target gRPC proxy that\nhas validateForProxyless field set to true.", "items": { @@ -125004,6 +126561,25 @@ }, "type": "object" }, + "UrlMapQuotaUsage": { + "description": "Message representing the quota usage for a UrlMap.", + "id": "UrlMapQuotaUsage", + "properties": { + "forwardingRules": { + "description": "Output only. The number of forwarding rules that uses this UrlMap.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "units": { + "description": "Output only. The number of quota units calculated for this UrlMap.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "UrlMapReference": { "id": "UrlMapReference", "properties": { @@ -125013,6 +126589,18 @@ }, "type": "object" }, + "UrlMapStatus": { + "description": "[Output Only] The status of the URL map.", + "id": "UrlMapStatus", + "properties": { + "quotaUsage": { + "$ref": "UrlMapQuotaUsage", + "description": "Output only. Summary of quota usage for given UrlMap.", + "readOnly": true + } + }, + "type": "object" + }, "UrlMapTest": { "description": "Message for the expected URL mappings.", "id": "UrlMapTest", @@ -125090,6 +126678,11 @@ "description": "Whether the given UrlMap can be successfully loaded.\nIf false, 'loadErrors' indicates the reasons.", "type": "boolean" }, + "quotaUsage": { + "$ref": "UrlMapQuotaUsage", + "description": "Output only. Summary of quota usage for given UrlMap.", + "readOnly": true + }, "testFailures": { "items": { "$ref": "TestFailure" diff --git a/discovery/compute-beta.json b/discovery/compute-beta.json index 0e282602cfa..78eab6f9ff8 100644 --- a/discovery/compute-beta.json +++ b/discovery/compute-beta.json @@ -748,6 +748,80 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] + }, + "capacity": { + "description": "Advice on making real-time decisions (such as choosing zone or\nmachine types) during deployment to maximize your chances of obtaining\ncapacity.", + "flatPath": "projects/{project}/regions/{region}/advice/capacity", + "httpMethod": "POST", + "id": "compute.advice.capacity", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/advice/capacity", + "request": { + "$ref": "CapacityAdviceRequest" + }, + "response": { + "$ref": "CapacityAdviceResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "capacityHistory": { + "description": "Gets the capacity history.", + "flatPath": "projects/{project}/regions/{region}/advice/capacityHistory", + "httpMethod": "POST", + "id": "compute.advice.capacityHistory", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/advice/capacityHistory", + "request": { + "$ref": "CapacityHistoryRequest" + }, + "response": { + "$ref": "CapacityHistoryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } } }, @@ -3941,6 +4015,55 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] + }, + "updateKmsKey": { + "description": "Rotates the customer-managed\nencryption key to the latest version for the specified persistent disk.", + "flatPath": "projects/{project}/zones/{zone}/disks/{disk}/updateKmsKey", + "httpMethod": "POST", + "id": "compute.disks.updateKmsKey", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the Disk resource, should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/disks/{disk}/updateKmsKey", + "request": { + "$ref": "DiskUpdateKmsKeyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } } }, @@ -5382,6 +5505,18 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "view": { + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "The default view of a ForwardingRule, which includes the basic fields.", + "The full view, including the ForwardingRule.`attached_extensions` field." + ], + "location": "query", + "type": "string" } }, "path": "projects/{project}/regions/{region}/forwardingRules/{forwardingRule}", @@ -6403,6 +6538,18 @@ "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" + }, + "view": { + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "The default view of a ForwardingRule, which includes the basic fields.", + "The full view, including the ForwardingRule.`attached_extensions` field." + ], + "location": "query", + "type": "string" } }, "path": "projects/{project}/global/forwardingRules/{forwardingRule}", @@ -9774,6 +9921,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance deletion even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -9819,6 +9972,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance deletion even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -10398,6 +10557,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance recreation even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -10788,6 +10953,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance stopping even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -14591,6 +14762,11 @@ "instance" ], "parameters": { + "discardLocalSsd": { + "description": "Whether to discard local SSDs from the instance during restart\ndefault value is false.", + "location": "query", + "type": "boolean" + }, "instance": { "description": "Name of the instance resource to update.", "location": "path", @@ -17493,127 +17669,205 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.\n *Caution* This resource is intended\nfor use only by third-party partners who are creatingCloud Marketplace\nimages.", - "flatPath": "projects/{project}/global/licenseCodes/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.licenseCodes.testIamPermissions", - "parameterOrder": [ - "project", - "resource" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/global/licenseCodes/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "licenses": { - "methods": { - "delete": { - "description": "Deletes the specified license.\n *Caution* This resource is intended\nfor use only by third-party partners who are creatingCloud Marketplace\nimages.", - "flatPath": "projects/{project}/global/licenses/{license}", - "httpMethod": "DELETE", - "id": "compute.licenses.delete", - "parameterOrder": [ - "project", - "license" - ], - "parameters": { - "license": { - "description": "Name of the license resource to delete.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - } - }, - "path": "projects/{project}/global/licenses/{license}", - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "description": "Returns the specified License resource.\n *Caution* This resource is intended\nfor use only by third-party partners who are creatingCloud Marketplace\nimages.", - "flatPath": "projects/{project}/global/licenses/{license}", - "httpMethod": "GET", - "id": "compute.licenses.get", - "parameterOrder": [ - "project", - "license" - ], - "parameters": { - "license": { - "description": "Name of the License resource to return.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/global/licenses/{license}", - "response": { - "$ref": "License" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, "getIamPolicy": { "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.\n *Caution* This resource is intended\nfor use only by third-party partners who are creatingCloud Marketplace\nimages.", - "flatPath": "projects/{project}/global/licenses/{resource}/getIamPolicy", + "flatPath": "projects/{project}/global/licenseCodes/{resource}/getIamPolicy", "httpMethod": "GET", - "id": "compute.licenses.getIamPolicy", + "id": "compute.licenseCodes.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/licenseCodes/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.\n *Caution* This resource is intended\nfor use only by third-party partners who are creatingCloud Marketplace\nimages.", + "flatPath": "projects/{project}/global/licenseCodes/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.licenseCodes.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/licenseCodes/{resource}/setIamPolicy", + "request": { + "$ref": "GlobalSetPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.\n *Caution* This resource is intended\nfor use only by third-party partners who are creatingCloud Marketplace\nimages.", + "flatPath": "projects/{project}/global/licenseCodes/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.licenseCodes.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/licenseCodes/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "licenses": { + "methods": { + "delete": { + "description": "Deletes the specified license.\n *Caution* This resource is intended\nfor use only by third-party partners who are creatingCloud Marketplace\nimages.", + "flatPath": "projects/{project}/global/licenses/{license}", + "httpMethod": "DELETE", + "id": "compute.licenses.delete", + "parameterOrder": [ + "project", + "license" + ], + "parameters": { + "license": { + "description": "Name of the license resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/licenses/{license}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified License resource.\n *Caution* This resource is intended\nfor use only by third-party partners who are creatingCloud Marketplace\nimages.", + "flatPath": "projects/{project}/global/licenses/{license}", + "httpMethod": "GET", + "id": "compute.licenses.get", + "parameterOrder": [ + "project", + "license" + ], + "parameters": { + "license": { + "description": "Name of the License resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/licenses/{license}", + "response": { + "$ref": "License" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.\n *Caution* This resource is intended\nfor use only by third-party partners who are creatingCloud Marketplace\nimages.", + "flatPath": "projects/{project}/global/licenses/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.licenses.getIamPolicy", "parameterOrder": [ "project", "resource" @@ -26818,6 +27072,49 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "getHealth": { + "description": "Gets the most recent health check results for this\nregional CompositeHealthCheck.", + "flatPath": "projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}/getHealth", + "httpMethod": "GET", + "id": "compute.regionCompositeHealthChecks.getHealth", + "parameterOrder": [ + "project", + "region", + "compositeHealthCheck" + ], + "parameters": { + "compositeHealthCheck": { + "description": "Name of the CompositeHealthCheck resource to get health for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}/getHealth", + "response": { + "$ref": "CompositeHealthCheckHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "insert": { "description": "Create a CompositeHealthCheck in the specified project in the given region\nusing the parameters that are included in the request.", "flatPath": "projects/{project}/regions/{region}/compositeHealthChecks", @@ -28050,6 +28347,55 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] + }, + "updateKmsKey": { + "description": "Rotates the customer-managed\nencryption key to the latest version for the specified persistent disk.", + "flatPath": "projects/{project}/regions/{region}/disks/{disk}/updateKmsKey", + "httpMethod": "POST", + "id": "compute.regionDisks.updateKmsKey", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the Disk resource, should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/disks/{disk}/updateKmsKey", + "request": { + "$ref": "RegionDiskUpdateKmsKeyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } } }, @@ -28415,6 +28761,72 @@ }, "regionHealthCheckServices": { "methods": { + "aggregatedList": { + "description": "Retrieves the list of all HealthCheckService resources,\nregional and global, available to the specified project.\n\nTo prevent failure, it is recommended that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/healthCheckServices", + "httpMethod": "GET", + "id": "compute.regionHealthCheckServices.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/aggregated/healthCheckServices", + "response": { + "$ref": "HealthCheckServiceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "delete": { "description": "Deletes the specified regional HealthCheckService.", "flatPath": "projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}", @@ -29208,6 +29620,49 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "getHealth": { + "description": "Gets the most recent health check results for this\nregional HealthSource.", + "flatPath": "projects/{project}/regions/{region}/healthSources/{healthSource}/getHealth", + "httpMethod": "GET", + "id": "compute.regionHealthSources.getHealth", + "parameterOrder": [ + "project", + "region", + "healthSource" + ], + "parameters": { + "healthSource": { + "description": "Name of the HealthSource resource to get health for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/healthSources/{healthSource}/getHealth", + "response": { + "$ref": "HealthSourceHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "insert": { "description": "Create a HealthSource in the specified project in the given region\nusing the parameters that are included in the request.", "flatPath": "projects/{project}/regions/{region}/healthSources", @@ -29889,6 +30344,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance deletion even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -29934,6 +30395,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance deletion even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -30472,6 +30939,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance recreation even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -30863,6 +31336,12 @@ "required": true, "type": "string" }, + "noGracefulShutdown": { + "default": "false", + "description": "When set, graceful shutdown is skipped for instance stopping even if it's\nconfigured for the instances.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -34636,6 +35115,72 @@ }, "regionNotificationEndpoints": { "methods": { + "aggregatedList": { + "description": "Retrieves the list of all NotificationEndpoint resources,\nregional and global, available to the specified project.", + "flatPath": "projects/{project}/aggregated/notificationEndpoints", + "httpMethod": "GET", + "id": "compute.regionNotificationEndpoints.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/aggregated/notificationEndpoints", + "response": { + "$ref": "NotificationEndpointAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "delete": { "description": "Deletes the specified NotificationEndpoint in the given region", "flatPath": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}", @@ -36063,6 +36608,56 @@ "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] + }, + "updateKmsKey": { + "description": "Rotates the customer-managed\nencryption key to the latest version for the specified snapshot.", + "flatPath": "projects/{project}/regions/{region}/snapshots/{snapshot}/updateKmsKey", + "httpMethod": "POST", + "id": "compute.regionSnapshots.updateKmsKey", + "parameterOrder": [ + "project", + "region", + "snapshot" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "snapshot": { + "description": "Name of the snapshot resource to update. Should conform to RFC1035.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/snapshots/{snapshot}/updateKmsKey", + "request": { + "$ref": "RegionSnapshotUpdateKmsKeyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } } }, @@ -38604,6 +39199,61 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "getVersion": { + "description": "Allows customers to get SBOM versions of a reservation slot.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlocksId}/reservationSlots/{reservationSlot}/getVersion", + "httpMethod": "POST", + "id": "compute.reservationSlots.getVersion", + "parameterOrder": [ + "project", + "zone", + "parentName", + "reservationSlot" + ], + "parameters": { + "parentName": { + "description": "The name of the parent reservation and parent block. In the format of\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}/reservationSubBlocks/{reservation_sub_block_name}", + "location": "path", + "pattern": "reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "reservationSlot": { + "description": "The name of the reservation slot.\nName should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}/getVersion", + "request": { + "$ref": "ReservationSlotsGetVersionRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "list": { "description": "Retrieves a list of reservation slots under a single reservation.", "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlocksId}/reservationSlots", @@ -38853,6 +39503,61 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "getVersion": { + "description": "Allows customers to get SBOM versions of a reservation subBlock.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlock}/getVersion", + "httpMethod": "POST", + "id": "compute.reservationSubBlocks.getVersion", + "parameterOrder": [ + "project", + "zone", + "parentName", + "reservationSubBlock" + ], + "parameters": { + "parentName": { + "description": "The name of the parent reservation and parent block. In the format of\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}", + "location": "path", + "pattern": "^reservations/[^/]+/reservationBlocks/[^/]+$", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "reservationSubBlock": { + "description": "The name of the reservation subBlock.\nName should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}/getVersion", + "request": { + "$ref": "ReservationSubBlocksGetVersionRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "list": { "description": "Retrieves a list of reservation subBlocks under a single reservation.", "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks", @@ -43782,85 +44487,15 @@ "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "sslCertificates": { - "methods": { - "aggregatedList": { - "description": "Retrieves the list of all SslCertificate resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/sslCertificates", - "httpMethod": "GET", - "id": "compute.sslCertificates.aggregatedList", - "parameterOrder": [ - "project" - ], - "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, - "project": { - "description": "Name of the project scoping this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" - }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", - "type": "string" - } - }, - "path": "projects/{project}/aggregated/sslCertificates", - "response": { - "$ref": "SslCertificateAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] }, - "delete": { - "description": "Deletes the specified SslCertificate resource.", - "flatPath": "projects/{project}/global/sslCertificates/{sslCertificate}", - "httpMethod": "DELETE", - "id": "compute.sslCertificates.delete", + "updateKmsKey": { + "description": "Rotates the customer-managed\nencryption key to the latest version for the specified snapshot.", + "flatPath": "projects/{project}/global/snapshots/{snapshot}/updateKmsKey", + "httpMethod": "POST", + "id": "compute.snapshots.updateKmsKey", "parameterOrder": [ "project", - "sslCertificate" + "snapshot" ], "parameters": { "project": { @@ -43875,83 +44510,17 @@ "location": "query", "type": "string" }, - "sslCertificate": { - "description": "Name of the SslCertificate resource to delete.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/global/sslCertificates/{sslCertificate}", - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "description": "Returns the specified SslCertificate resource.", - "flatPath": "projects/{project}/global/sslCertificates/{sslCertificate}", - "httpMethod": "GET", - "id": "compute.sslCertificates.get", - "parameterOrder": [ - "project", - "sslCertificate" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "sslCertificate": { - "description": "Name of the SslCertificate resource to return.", + "snapshot": { + "description": "Name of the snapshot resource to update. Should conform to RFC1035.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/sslCertificates/{sslCertificate}", - "response": { - "$ref": "SslCertificate" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "description": "Creates a SslCertificate resource in the specified project using the data\nincluded in the request.", - "flatPath": "projects/{project}/global/sslCertificates", - "httpMethod": "POST", - "id": "compute.sslCertificates.insert", - "parameterOrder": [ - "project" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - } - }, - "path": "projects/{project}/global/sslCertificates", + "path": "projects/{project}/global/snapshots/{snapshot}/updateKmsKey", "request": { - "$ref": "SslCertificate" + "$ref": "SnapshotUpdateKmsKeyRequest" }, "response": { "$ref": "Operation" @@ -43960,109 +44529,287 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "list": { - "description": "Retrieves the list of SslCertificate resources available to the specified\nproject.", - "flatPath": "projects/{project}/global/sslCertificates", - "httpMethod": "GET", - "id": "compute.sslCertificates.list", - "parameterOrder": [ - "project" - ], - "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" - } - }, - "path": "projects/{project}/global/sslCertificates", - "response": { - "$ref": "SslCertificateList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/global/sslCertificates/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.sslCertificates.testIamPermissions", - "parameterOrder": [ - "project", - "resource" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/global/sslCertificates/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] } } }, - "sslPolicies": { + "sslCertificates": { "methods": { "aggregatedList": { - "description": "Retrieves the list of all SslPolicy resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/sslPolicies", + "description": "Retrieves the list of all SslCertificate resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/sslCertificates", "httpMethod": "GET", - "id": "compute.sslPolicies.aggregatedList", + "id": "compute.sslCertificates.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/aggregated/sslCertificates", + "response": { + "$ref": "SslCertificateAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified SslCertificate resource.", + "flatPath": "projects/{project}/global/sslCertificates/{sslCertificate}", + "httpMethod": "DELETE", + "id": "compute.sslCertificates.delete", + "parameterOrder": [ + "project", + "sslCertificate" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sslCertificate": { + "description": "Name of the SslCertificate resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/sslCertificates/{sslCertificate}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified SslCertificate resource.", + "flatPath": "projects/{project}/global/sslCertificates/{sslCertificate}", + "httpMethod": "GET", + "id": "compute.sslCertificates.get", + "parameterOrder": [ + "project", + "sslCertificate" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "sslCertificate": { + "description": "Name of the SslCertificate resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/sslCertificates/{sslCertificate}", + "response": { + "$ref": "SslCertificate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a SslCertificate resource in the specified project using the data\nincluded in the request.", + "flatPath": "projects/{project}/global/sslCertificates", + "httpMethod": "POST", + "id": "compute.sslCertificates.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/sslCertificates", + "request": { + "$ref": "SslCertificate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of SslCertificate resources available to the specified\nproject.", + "flatPath": "projects/{project}/global/sslCertificates", + "httpMethod": "GET", + "id": "compute.sslCertificates.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/sslCertificates", + "response": { + "$ref": "SslCertificateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/global/sslCertificates/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.sslCertificates.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/sslCertificates/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "sslPolicies": { + "methods": { + "aggregatedList": { + "description": "Retrieves the list of all SslPolicy resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/sslPolicies", + "httpMethod": "GET", + "id": "compute.sslPolicies.aggregatedList", "parameterOrder": [ "project" ], @@ -50711,7 +51458,7 @@ "zoneVmExtensionPolicies": { "methods": { "delete": { - "description": "Deletes a specified zone VM extension policy.", + "description": "Deletes a specified zone VM extension policy within a project.", "flatPath": "projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", "httpMethod": "DELETE", "id": "compute.zoneVmExtensionPolicies.delete", @@ -50757,7 +51504,7 @@ ] }, "get": { - "description": "Retrieves details of a specific zone VM extension policy.", + "description": "Retrieves details of a specific zone VM extension policy within a project.", "flatPath": "projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", "httpMethod": "GET", "id": "compute.zoneVmExtensionPolicies.get", @@ -50905,7 +51652,7 @@ ] }, "update": { - "description": "Modifies an existing zone VM extension policy.", + "description": "Modifies an existing zone VM extension policy within a project.", "flatPath": "projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", "httpMethod": "PATCH", "id": "compute.zoneVmExtensionPolicies.update", @@ -51050,7 +51797,7 @@ } } }, - "revision": "20260213", + "revision": "20260422", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -51866,6 +52613,8 @@ "GCE_ENDPOINT", "IPSEC_INTERCONNECT", "NAT_AUTO", + "PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0", + "PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1", "PRIVATE_SERVICE_CONNECT", "SERVERLESS", "SHARED_LOADBALANCER_VIP", @@ -51876,6 +52625,8 @@ "VM internal/alias IP, Internal LB service IP, etc.", "A regional internal IP address range reserved for the VLAN attachment\nthat is used in HA VPN over Cloud Interconnect. This regional\ninternal IP address range must not overlap with any IP address range\nof subnet/route in the VPC network and its peering networks. After the\nVLAN attachment is created with the reserved IP address range, when\ncreating a new VPN gateway, its interface IP address is allocated\nfrom the associated VLAN attachment’s IP address range.", "External IP automatically reserved for Cloud NAT.", + "The global external address can only be assigned to Global External\nPassthrough Network Load Balancer forwarding rules, as an Availability\nGroup 0 address.", + "The global external address can only be assigned to Global External\nPassthrough Network Load Balancer forwarding rules, as an Availability\nGroup 1 address.", "A private network IP address that can be used to configure Private\nService Connect. This purpose can be specified only forGLOBAL addresses of Type INTERNAL", "A regional internal IP address range reserved for Serverless.", "A private network IP address that can be shared by multiple Internal\nLoad Balancer forwarding rules.", @@ -52983,7 +53734,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the disk. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT & PATCH) when\nempty.", + "description": "Input only. Resource manager tags to be bound to the disk. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT & PATCH) when\nempty.", "type": "object" }, "resourcePolicies": { @@ -53744,6 +54495,11 @@ }, "description": "Scaling schedules defined for an autoscaler. Multiple schedules\ncan be set on an autoscaler, and they can overlap. During overlapping\nperiods the greatest min_required_replicas of all scaling schedules is\napplied. Up to 128 scaling schedules are allowed.", "type": "object" + }, + "stabilizationPeriodSec": { + "description": "The number of seconds that autoscaler waits for load stabilization before\nmaking scale-in decisions. This is referred to as the\n[stabilization period](/compute/docs/autoscaler#stabilization_period).\nThis might appear as a delay in scaling in but it is an important mechanism\nfor your application to not have fluctuating size due to short term load\nfluctuations.\n\nThe default stabilization period is 600 seconds.", + "format": "int32", + "type": "integer" } }, "type": "object" @@ -54004,6 +54760,10 @@ ], "type": "string" }, + "service": { + "description": "Represents a service backend (e.g., Cloud Run service, PSC Service\nAttachment).\ne.g.\n \"run.googleapis.com/projects/123456789/locations/us-central1/services/my-service\"\n for Cloud Run service.\n \"compute.googleapis.com/projects/123456789/regions/us-central1/serviceAttachments/my-service-attachment\"\n for PSC Service Attachment.", + "type": "string" + }, "trafficDuration": { "enum": [ "LONG", @@ -54957,7 +55717,7 @@ }, "consistentHash": { "$ref": "ConsistentHashLoadBalancerSettings", - "description": "Consistent Hash-based load balancing can be used to provide soft session\naffinity based on HTTP headers, cookies or other properties. This load\nbalancing policy is applicable only for HTTP connections. The affinity to a\nparticular destination host will be lost when one or more hosts are\nadded/removed from the destination service. This field specifies parameters\nthat control consistent hashing. This field is only applicable whenlocalityLbPolicy is set to MAGLEV orRING_HASH.\n\nThis field is applicable to either:\n \n - A regional backend service with the service_protocol set to HTTP,\n HTTPS, HTTP2 or H2C, and load_balancing_scheme set to\n INTERNAL_MANAGED. \n - A global backend service with the\n load_balancing_scheme set to INTERNAL_SELF_MANAGED." + "description": "Consistent Hash-based load balancing can be used to provide soft session\naffinity based on HTTP headers, cookies or other properties. This load\nbalancing policy is applicable only for HTTP connections. The affinity to a\nparticular destination host will be lost when one or more hosts are\nadded/removed from the destination service. This field specifies parameters\nthat control consistent hashing. This field is only applicable whenlocalityLbPolicy is set to MAGLEV orRING_HASH.\n\nThis field is applicable to either:\n \n - A regional backend service with the service protocol set to HTTP,\n HTTPS, HTTP2 or H2C, and load_balancing_scheme set to\n INTERNAL_MANAGED. \n - A global backend service with the\n load_balancing_scheme set to INTERNAL_SELF_MANAGED." }, "creationTimestamp": { "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", @@ -55076,6 +55836,7 @@ "enum": [ "EXTERNAL", "EXTERNAL_MANAGED", + "EXTERNAL_PASSTHROUGH", "INTERNAL", "INTERNAL_MANAGED", "INTERNAL_SELF_MANAGED", @@ -55084,6 +55845,7 @@ "enumDescriptions": [ "Signifies that this will be used for classic Application Load Balancers,\nglobal external proxy Network Load Balancers,\nor external passthrough Network Load Balancers.", "Signifies that this will be used for global external Application Load\nBalancers, regional external Application Load Balancers, or regional\nexternal proxy Network Load Balancers.", + "Signifies that this will be used for global external passthrough Network\nLoad Balancers.", "Signifies that this will be used for internal passthrough Network Load\nBalancers.", "Signifies that this will be used for internal Application Load Balancers.", "Signifies that this will be used by Traffic Director.", @@ -55099,7 +55861,7 @@ "type": "array" }, "localityLbPolicy": { - "description": "The load balancing algorithm used within the scope of the locality. The\npossible values are:\n \n - ROUND_ROBIN: This is a simple policy in which each healthy\n backend is selected in round robin order. This is the default.\n - LEAST_REQUEST: An O(1) algorithm which\n selects two random healthy hosts and picks the host which has fewer active\n requests.\n - RING_HASH: The ring/modulo hash load balancer implements\n consistent hashing to backends. The algorithm has the property that the\n addition/removal of a host from a set of N hosts only affects 1/N of the\n requests.\n - RANDOM: The load balancer selects a random healthy\n host.\n - ORIGINAL_DESTINATION: Backend host is selected\n based on the client connection metadata, i.e., connections are opened to\n the same address as the destination address of the incoming connection\n before the connection was redirected to the load balancer.\n - MAGLEV: used as a drop in replacement for the ring hash\n load balancer. Maglev is not as stable as ring hash but has faster table\n lookup build times and host selection times. For more information about\n Maglev, see Maglev:\n A Fast and Reliable Software Network Load Balancer.\n - WEIGHTED_ROUND_ROBIN: Per-endpoint Weighted Round Robin\n Load Balancing using weights computed from Backend reported Custom Metrics.\n If set, the Backend Service responses are expected to contain non-standard\n HTTP response header field Endpoint-Load-Metrics. The reported\n metrics to use for computing the weights are specified via thecustomMetrics field.\n \n This field is applicable to either:\n - A regional backend service with the service_protocol set to HTTP,\n HTTPS, HTTP2 or H2C, and load_balancing_scheme set to\n INTERNAL_MANAGED. \n - A global backend service with the\n load_balancing_scheme set to INTERNAL_SELF_MANAGED, INTERNAL_MANAGED, or\n EXTERNAL_MANAGED.\n \n \n If sessionAffinity is not configured—that is, if session\n affinity remains at the default value of NONE—then the\n default value for localityLbPolicy\n is ROUND_ROBIN. If session affinity is set to a value other\n than NONE,\n then the default value for localityLbPolicy isMAGLEV.\n \n Only ROUND_ROBIN and RING_HASH are supported\n when the backend service is referenced by a URL map that is bound to\n target gRPC proxy that has validateForProxyless field set to true.\n \n localityLbPolicy cannot be specified with haPolicy.", + "description": "The load balancing algorithm used within the scope of the locality. The\npossible values are:\n \n - ROUND_ROBIN: This is a simple policy in which each healthy\n backend is selected in round robin order. This is the default.\n - LEAST_REQUEST: An O(1) algorithm which\n selects two random healthy hosts and picks the host which has fewer active\n requests.\n - RING_HASH: The ring/modulo hash load balancer implements\n consistent hashing to backends. The algorithm has the property that the\n addition/removal of a host from a set of N hosts only affects 1/N of the\n requests.\n - RANDOM: The load balancer selects a random healthy\n host.\n - ORIGINAL_DESTINATION: Backend host is selected\n based on the client connection metadata, i.e., connections are opened to\n the same address as the destination address of the incoming connection\n before the connection was redirected to the load balancer.\n - MAGLEV: used as a drop in replacement for the ring hash\n load balancer. Maglev is not as stable as ring hash but has faster table\n lookup build times and host selection times. For more information about\n Maglev, see Maglev:\n A Fast and Reliable Software Network Load Balancer.\n - WEIGHTED_ROUND_ROBIN: Per-endpoint Weighted Round Robin\n Load Balancing using weights computed from Backend reported Custom Metrics.\n If set, the Backend Service responses are expected to contain non-standard\n HTTP response header field Endpoint-Load-Metrics. The reported\n metrics to use for computing the weights are specified via thecustomMetrics field.\n \n This field is applicable to either:\n - A regional backend service with the service protocol set to HTTP,\n HTTPS, HTTP2 or H2C, and load_balancing_scheme set to\n INTERNAL_MANAGED. \n - A global backend service with the\n load_balancing_scheme set to INTERNAL_SELF_MANAGED, INTERNAL_MANAGED, or\n EXTERNAL_MANAGED.\n \n \n If sessionAffinity is not configured—that is, if session\n affinity remains at the default value of NONE—then the\n default value for localityLbPolicy\n is ROUND_ROBIN. If session affinity is set to a value other\n than NONE,\n then the default value for localityLbPolicy isMAGLEV.\n \n Only ROUND_ROBIN and RING_HASH are supported\n when the backend service is referenced by a URL map that is bound to\n target gRPC proxy that has validateForProxyless field set to true.\n \n localityLbPolicy cannot be specified with haPolicy.", "enum": [ "INVALID_LB_POLICY", "LEAST_REQUEST", @@ -55160,7 +55922,7 @@ }, "outlierDetection": { "$ref": "OutlierDetection", - "description": "Settings controlling the ejection of unhealthy backend endpoints from the\nload balancing pool of each individual proxy instance that processes the\ntraffic for the given backend service. If not set, this feature is\nconsidered disabled.\n\nResults of the outlier detection algorithm (ejection of endpoints from the\nload balancing pool and returning them back to the pool) are executed\nindependently by each proxy instance of the load balancer. In most cases,\nmore than one proxy instance handles the traffic received by a backend\nservice. Thus, it is possible that an unhealthy endpoint is detected and\nejected by only some of the proxies, and while this happens, other proxies\nmay continue to send requests to the same unhealthy endpoint until they\ndetect and eject the unhealthy endpoint.\n\nApplicable backend endpoints can be:\n \n - VM instances in an Instance Group\n - Endpoints in a Zonal NEG (GCE_VM_IP, GCE_VM_IP_PORT)\n - Endpoints in a Hybrid Connectivity NEG (NON_GCP_PRIVATE_IP_PORT)\n - Serverless NEGs, that resolve to Cloud Run, App Engine, or Cloud\n Functions Services \n - Private Service Connect NEGs, that resolve to\n Google-managed regional API endpoints or managed services published using\n Private Service Connect\n\n\n\nApplicable backend service types can be:\n \n - A global backend service with the loadBalancingScheme set to\n INTERNAL_SELF_MANAGED or EXTERNAL_MANAGED. \n - A regional backend\n service with the serviceProtocol set to HTTP, HTTPS, HTTP2 or H2C, and\n loadBalancingScheme set to INTERNAL_MANAGED or EXTERNAL_MANAGED. Not\n supported for Serverless NEGs.\n\n\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true." + "description": "Settings controlling the ejection of unhealthy backend endpoints from the\nload balancing pool of each individual proxy instance that processes the\ntraffic for the given backend service. If not set, this feature is\nconsidered disabled.\n\nResults of the outlier detection algorithm (ejection of endpoints from the\nload balancing pool and returning them back to the pool) are executed\nindependently by each proxy instance of the load balancer. In most cases,\nmore than one proxy instance handles the traffic received by a backend\nservice. Thus, it is possible that an unhealthy endpoint is detected and\nejected by only some of the proxies, and while this happens, other proxies\nmay continue to send requests to the same unhealthy endpoint until they\ndetect and eject the unhealthy endpoint.\n\nApplicable backend endpoints can be:\n \n - VM instances in an Instance Group\n - Endpoints in a Zonal NEG (GCE_VM_IP, GCE_VM_IP_PORT)\n - Endpoints in a Hybrid Connectivity NEG (NON_GCP_PRIVATE_IP_PORT)\n - Serverless NEGs, that resolve to Cloud Run, App Engine, or Cloud\n Functions Services \n - Private Service Connect NEGs, that resolve to\n Google-managed regional API endpoints or managed services published using\n Private Service Connect\n\n\n\nApplicable backend service types can be:\n \n - A global backend service with the loadBalancingScheme set to\n INTERNAL_SELF_MANAGED or EXTERNAL_MANAGED. \n - A regional backend\n service with the service protocol set to HTTP, HTTPS, HTTP2 or H2C, and\n loadBalancingScheme set to INTERNAL_MANAGED or EXTERNAL_MANAGED. Not\n supported for Serverless NEGs.\n\n\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true." }, "params": { "$ref": "BackendServiceParams", @@ -55622,6 +56384,10 @@ "description": "Defines a dynamic forwarding configuration for the backend service.", "id": "BackendServiceDynamicForwarding", "properties": { + "forwardProxy": { + "$ref": "BackendServiceDynamicForwardingForwardProxy", + "description": "Dynamic Forwarding Proxy configuration." + }, "ipPortSelection": { "$ref": "BackendServiceDynamicForwardingIpPortSelection", "description": "IP:PORT based dynamic forwarding configuration." @@ -55629,6 +56395,29 @@ }, "type": "object" }, + "BackendServiceDynamicForwardingForwardProxy": { + "description": "Defines Dynamic Forwarding Proxy configuration.", + "id": "BackendServiceDynamicForwardingForwardProxy", + "properties": { + "enabled": { + "description": "A boolean flag enabling dynamic forwarding proxy.", + "type": "boolean" + }, + "proxyMode": { + "description": "Determines the dynamic forwarding proxy mode.", + "enum": [ + "CLOUD_RUN", + "DIRECT_FORWARDING" + ], + "enumDescriptions": [ + "Dynamic forwarding directly to Cloud Run services.", + "Dynamic forwarding based on the Http Host header." + ], + "type": "string" + } + }, + "type": "object" + }, "BackendServiceDynamicForwardingIpPortSelection": { "description": "Defines a IP:PORT based dynamic forwarding configuration for the backend\nservice. Some ranges are restricted: Restricted\nranges.", "id": "BackendServiceDynamicForwardingIpPortSelection", @@ -55645,7 +56434,7 @@ "id": "BackendServiceFailoverPolicy", "properties": { "disableConnectionDrainOnFailover": { - "description": "This can be set to true only if the protocol isTCP.\n\nThe default is false.", + "description": "This can be set to true if the protocol isTCP, UDP, or UNSPECIFIED.\n\nThe default is false.", "type": "boolean" }, "dropTrafficIfUnhealthy": { @@ -56835,7 +57624,7 @@ }, "snapshotGroupParameters": { "$ref": "SnapshotGroupParameters", - "description": "The parameters for the snapshot group." + "description": "The parameters for the snapshot group. The usage of snapshot group feature\nis restricted." }, "sourceConsistencyGroupPolicy": { "description": "The URL of the DiskConsistencyGroupPolicy for the group of disks to clone.\nThis may be a full or partial URL, such as:\n \n \n - \n https://www.googleapis.com/compute/v1/projects/project/regions/region/resourcePolicies/resourcePolicy\n \n - \n projects/project/regions/region/resourcePolicies/resourcePolicy\n \n - \n regions/region/resourcePolicies/resourcePolicy", @@ -57063,7 +57852,7 @@ "id": "CachePolicy", "properties": { "cacheBypassRequestHeaderNames": { - "description": "Bypass the cache when the specified request headers are matched by name,\ne.g. Pragma or Authorization headers. Values are case-insensitive. Up to 5\nheader names can be specified. The cache is bypassed for all\ncachePolicy.cacheMode settings.", + "description": "Bypass the cache when the specified request headers are matched by name,\ne.g. Pragma or Authorization headers. Values are case-insensitive. Up to 5\nheader names can be specified. The cache is bypassed for all `cacheMode`\nvalues.", "items": { "type": "string" }, @@ -57071,10 +57860,10 @@ }, "cacheKeyPolicy": { "$ref": "CachePolicyCacheKeyPolicy", - "description": "The CacheKeyPolicy for this CachePolicy." + "description": "The cache key configuration. If not specified, the default behavior depends\non the backend type: for Backend Services, the complete request URI is\nused; for Backend Buckets, the request URI is used without the protocol or\nhost, and only query parameters known to Cloud Storage are included." }, "cacheMode": { - "description": "Specifies the cache setting for all responses from this route.\nIf not specified, the default value is CACHE_ALL_STATIC.", + "description": "Specifies the cache setting for all responses from this route. If not\nspecified, Cloud CDN uses `CACHE_ALL_STATIC` mode.", "enum": [ "CACHE_ALL_STATIC", "FORCE_CACHE_ALL", @@ -57089,29 +57878,29 @@ }, "clientTtl": { "$ref": "Duration", - "description": "Specifies a separate client (e.g. browser client) maximum TTL. This is\nused to clamp the max-age (or Expires) value sent to the client. With\nFORCE_CACHE_ALL, the lesser of client_ttl and default_ttl is used for the\nresponse max-age directive, along with a \"public\" directive. For\ncacheable content in CACHE_ALL_STATIC mode, client_ttl clamps the max-age\nfrom the origin (if specified), or else sets the response max-age\ndirective to the lesser of the client_ttl and default_ttl, and also\nensures a \"public\" cache-control directive is present.\nIf a client TTL is not specified, a default value (1 hour) will be used.\nThe maximum allowed value is 31,622,400s (1 year)." + "description": "Specifies a separate client (e.g. browser client) maximum TTL for cached\ncontent. This is used to clamp the max-age (or Expires) value sent to the\nclient. With `FORCE_CACHE_ALL`, the lesser of `clientTtl` and `defaultTtl`\nis used for the response max-age directive, along with a \"public\"\ndirective. For cacheable content in `CACHE_ALL_STATIC` mode, `clientTtl`\nclamps the max-age from the origin (if specified), or else sets the\nresponse max-age directive to the lesser of the `clientTtl` and\n`defaultTtl`, and also ensures a \"public\" cache-control directive is\npresent. The maximum allowed value is 31,622,400s (1 year). If not\nspecified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` mode.\nCannot exceed `maxTtl`. Cannot be specified when `cacheMode` is\n`USE_ORIGIN_HEADERS`." }, "defaultTtl": { "$ref": "Duration", - "description": "Specifies the default TTL for cached content served by this origin for\nresponses that do not have an existing valid TTL (max-age or s-maxage).\nSetting a TTL of \"0\" means \"always revalidate\".\nThe value of defaultTTL cannot be set to a value greater than that of\nmaxTTL.\nWhen the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL\nwill overwrite the TTL set in all responses. The maximum allowed value is\n31,622,400s (1 year). Infrequently accessed objects may be evicted from\nthe cache before the defined TTL." + "description": "Specifies the default TTL for cached content for responses that do not have\nan existing valid TTL (max-age or s-maxage). Setting a TTL of \"0\" means\n\"always revalidate\". The value of `defaultTtl` cannot be set to a value\ngreater than that of `maxTtl`. When the `cacheMode` is set to\n`FORCE_CACHE_ALL`, the `defaultTtl` will overwrite the TTL set in all\nresponses. The maximum allowed value is 31,622,400s (1 year). Infrequently\naccessed objects may be evicted from the cache before the defined TTL. If\nnot specified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` and\n`FORCE_CACHE_ALL` modes. Cannot be specified when `cacheMode` is\n`USE_ORIGIN_HEADERS`." }, "maxTtl": { "$ref": "Duration", - "description": "Specifies the maximum allowed TTL for cached content served by this\norigin.\nCache directives that attempt to set a max-age or s-maxage higher than\nthis, or an Expires header more than maxTTL seconds in the future will\nbe capped at the value of maxTTL, as if it were the value of an\ns-maxage Cache-Control directive.\nHeaders sent to the client will not be modified.\nSetting a TTL of \"0\" means \"always revalidate\".\nThe maximum allowed value is 31,622,400s (1 year). Infrequently accessed\nobjects may be evicted from the cache before the defined TTL." + "description": "Specifies the maximum allowed TTL for cached content. Cache directives that\nattempt to set a max-age or s-maxage higher than this, or an Expires header\nmore than `maxTtl` seconds in the future will be capped at the value of\n`maxTtl`, as if it were the value of an s-maxage Cache-Control directive.\nHeaders sent to the client will not be modified. Setting a TTL of \"0\" means\n\"always revalidate\". The maximum allowed value is 31,622,400s (1 year).\nInfrequently accessed objects may be evicted from the cache before the\ndefined TTL. If not specified, Cloud CDN uses 86400s (1 day) for\n`CACHE_ALL_STATIC` mode. Can be specified only for `CACHE_ALL_STATIC` cache\nmode." }, "negativeCaching": { - "description": "Negative caching allows per-status code TTLs to be set, in order\nto apply fine-grained caching for common errors or redirects.\nThis can reduce the load on your origin and improve end-user\nexperience by reducing response latency.\nWhen the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS,\nnegative caching applies to responses with the specified response code\nthat lack any Cache-Control, Expires, or Pragma: no-cache directives.\nWhen the cache mode is set to FORCE_CACHE_ALL, negative caching applies\nto all responses with the specified response code, and override any\ncaching headers.\nBy default, Cloud CDN will apply the following default TTLs to these\nstatus codes:\nHTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m\nHTTP 404 (Not Found), 410 (Gone),\n451 (Unavailable For Legal Reasons): 120s\nHTTP 405 (Method Not Found), 501 (Not Implemented): 60s.\nThese defaults can be overridden in negative_caching_policy.", + "description": "Negative caching allows per-status code TTLs to be set, in order\nto apply fine-grained caching for common errors or redirects.\nThis can reduce the load on your origin and improve end-user\nexperience by reducing response latency.\nWhen the `cacheMode` is set to `CACHE_ALL_STATIC` or\n`USE_ORIGIN_HEADERS`, negative caching applies to responses with\nthe specified response code that lack any Cache-Control, Expires, or\nPragma: no-cache directives. When the `cacheMode` is set to\n`FORCE_CACHE_ALL`, negative caching applies to all responses\nwith the specified response code, and overrides any caching headers. By\ndefault, Cloud CDN applies the following TTLs to these HTTP status codes:\n\n* 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m\n* 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s\n* 405 (Method Not Found), 501 (Not Implemented): 60s\n\nThese defaults can be overridden in `negativeCachingPolicy`.\nIf not specified, Cloud CDN applies negative caching by default.", "type": "boolean" }, "negativeCachingPolicy": { - "description": "Sets a cache TTL for the specified HTTP status code.\nnegative_caching must be enabled to configure negative_caching_policy.\nOmitting the policy and leaving negative_caching enabled will use\nCloud CDN's default cache TTLs.\nNote that when specifying an explicit negative_caching_policy, you\nshould take care to specify a cache TTL for all response codes\nthat you wish to cache. Cloud CDN will not apply any default\nnegative caching when a policy exists.", + "description": "Sets a cache TTL for the specified HTTP status code.\n`negativeCaching` must be enabled to configure `negativeCachingPolicy`.\nOmitting the policy and leaving `negativeCaching` enabled will use Cloud\nCDN's default cache TTLs. Note that when specifying an explicit\n`negativeCachingPolicy`, you should take care to specify a cache TTL for\nall response codes that you wish to cache. Cloud CDN will not apply any\ndefault negative caching when a policy exists.", "items": { "$ref": "CachePolicyNegativeCachingPolicy" }, "type": "array" }, "requestCoalescing": { - "description": "If true then Cloud CDN will combine multiple concurrent cache fill\nrequests into a small number of requests to the origin.", + "description": "If true then Cloud CDN will combine multiple concurrent cache fill\nrequests into a small number of requests to the origin. If not specified,\nCloud CDN applies request coalescing by default.", "type": "boolean" }, "serveWhileStale": { @@ -57126,7 +57915,7 @@ "id": "CachePolicyCacheKeyPolicy", "properties": { "excludedQueryParameters": { - "description": "Names of query string parameters to exclude in cache keys. All other\nparameters will be included. Either specify excluded_query_parameters or\nincluded_query_parameters, not both. '&' and '=' will be percent encoded\nand not treated as delimiters.\n\nNote: This field applies to routes that use backend services. Attempting\nto set it on a route that points exclusively to Backend Buckets will\nresult in a configuration error. For routes that point to a Backend\nBucket, use includedQueryParameters to define which parameters should\nbe a part of the cache key.", + "description": "Names of query string parameters to exclude in cache keys. All other\nparameters will be included. Either specify `excludedQueryParameters`\nor `includedQueryParameters`, not both. '&' and '=' will be percent\nencoded and not treated as delimiters.\n\nNote: This field applies to routes that use backend services. Attempting\nto set it on a route that points exclusively to Backend Buckets will\nresult in a configuration error. For routes that point to a Backend\nBucket, use `includedQueryParameters` to define which parameters should\nbe part of the cache key.", "items": { "type": "string" }, @@ -57141,7 +57930,7 @@ "type": "boolean" }, "includeQueryString": { - "description": "If true, include query string parameters in the cache key according to\nincluded_query_parameters and excluded_query_parameters. If neither is\nset, the entire query string will be included. If false, the query string\nwill be excluded from the cache key entirely.\n\nNote: This field applies to routes that use backend services. Attempting\nto set it on a route that points exclusively to Backend Buckets will\nresult in a configuration error. For routes that point to a Backend\nBucket, use includedQueryParameters to define which parameters should\nbe a part of the cache key.", + "description": "If true, include query string parameters in the cache key according to\n`includedQueryParameters` and `excludedQueryParameters`. If neither\nis set, the entire query string will be included. If false, the query\nstring will be excluded from the cache key entirely.\n\nNote: This field applies to routes that use backend services. Attempting\nto set it on a route that points exclusively to Backend Buckets will\nresult in a configuration error. For routes that point to a Backend\nBucket, use `includedQueryParameters` to define which parameters should\nbe part of the cache key.", "type": "boolean" }, "includedCookieNames": { @@ -57159,7 +57948,7 @@ "type": "array" }, "includedQueryParameters": { - "description": "Names of query string parameters to include in cache keys. All other\nparameters will be excluded. Either specify included_query_parameters or\nexcluded_query_parameters, not both. '&' and '=' will be percent encoded\nand not treated as delimiters.", + "description": "Names of query string parameters to include in cache keys. All other\nparameters will be excluded. Either specify `includedQueryParameters`\nor `excludedQueryParameters`, not both. '&' and '=' will be percent\nencoded and not treated as delimiters.", "items": { "type": "string" }, @@ -57226,6 +58015,384 @@ }, "type": "object" }, + "CapacityAdviceRequest": { + "description": "A request to provide Assistant Scores. These scores determine VM\nobtainability and preemption likelihood.", + "id": "CapacityAdviceRequest", + "properties": { + "distributionPolicy": { + "$ref": "CapacityAdviceRequestDistributionPolicy", + "description": "Policy specifying the distribution of instances across\nzones within the requested region." + }, + "instanceFlexibilityPolicy": { + "$ref": "CapacityAdviceRequestInstanceFlexibilityPolicy", + "description": "Policy for instance selectors." + }, + "instanceProperties": { + "$ref": "CapacityAdviceRequestInstanceProperties", + "description": "Instance properties for this request." + }, + "size": { + "description": "The number of VM instances to request.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "CapacityAdviceRequestDistributionPolicy": { + "description": "Distribution policy.", + "id": "CapacityAdviceRequestDistributionPolicy", + "properties": { + "targetShape": { + "description": "Target distribution shape. You can specify the following values:ANY, ANY_SINGLE_ZONE, or BALANCED.", + "enum": [ + "ANY", + "ANY_SINGLE_ZONE", + "BALANCED", + "TARGET_SHAPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Picks zones for creating VM instances to fulfill the requested number\nof VMs within present resource constraints.", + "Creates all VM instances within a single zone. The zone is selected\nbased on the present resource constraints.", + "Prioritizes acquisition of resources, scheduling VMs in zones where\nresources are available while distributing VMs as evenly as possible\nacross selected zones to minimize the impact of zonal failure.", + "" + ], + "type": "string" + }, + "zones": { + "description": "Zones where Capacity Advisor looks for capacity.", + "items": { + "$ref": "CapacityAdviceRequestDistributionPolicyZoneConfiguration" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityAdviceRequestDistributionPolicyZoneConfiguration": { + "description": "Zone configuration for the distribution policy.", + "id": "CapacityAdviceRequestDistributionPolicyZoneConfiguration", + "properties": { + "zone": { + "description": "The URL of the zone. It can be a\npartial or full URL. For example, the following are valid values: \n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone \n - projects/project/zones/zone \n - zones/zone", + "type": "string" + } + }, + "type": "object" + }, + "CapacityAdviceRequestInstanceFlexibilityPolicy": { + "description": "Specification of alternative, flexible instance configurations.", + "id": "CapacityAdviceRequestInstanceFlexibilityPolicy", + "properties": { + "instanceSelections": { + "additionalProperties": { + "$ref": "CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelection" + }, + "description": "Named instance selections to configure properties.\nThe key is an arbitrary, unique RFC1035 string that identifies the\ninstance selection.", + "type": "object" + } + }, + "type": "object" + }, + "CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelection": { + "description": "Machine specification.", + "id": "CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelection", + "properties": { + "disks": { + "description": "Local SSDs.", + "items": { + "$ref": "CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelectionAttachedDisk" + }, + "type": "array" + }, + "guestAccelerators": { + "description": "Accelerators configuration.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "machineTypes": { + "description": "Full machine-type names, e.g. \"n1-standard-16\".", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelectionAttachedDisk": { + "description": "Attached disk configuration.", + "id": "CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelectionAttachedDisk", + "properties": { + "type": { + "description": "Specifies the type of the disk.\nThis field must be set to SCRATCH.", + "enum": [ + "DISK_TYPE_UNSPECIFIED", + "SCRATCH" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "CapacityAdviceRequestInstanceProperties": { + "description": "Instance provisioning properties.", + "id": "CapacityAdviceRequestInstanceProperties", + "properties": { + "scheduling": { + "$ref": "CapacityAdviceRequestInstancePropertiesScheduling", + "description": "Specifies the scheduling options." + } + }, + "type": "object" + }, + "CapacityAdviceRequestInstancePropertiesScheduling": { + "description": "Defines the instance scheduling options.", + "id": "CapacityAdviceRequestInstancePropertiesScheduling", + "properties": { + "provisioningModel": { + "description": "Specifies the provisioning model.", + "enum": [ + "FLEX_START", + "RESERVATION_BOUND", + "SPOT", + "STANDARD" + ], + "enumDescriptions": [ + "Instance is provisioned using the Flex Start provisioning model and\nhas a limited runtime.", + "Bound to the lifecycle of the reservation in which it is provisioned.", + "Heavily discounted, no guaranteed runtime.", + "Standard provisioning with user controlled runtime, no discounts." + ], + "type": "string" + } + }, + "type": "object" + }, + "CapacityAdviceResponse": { + "description": "A response contains scoring recommendations.", + "id": "CapacityAdviceResponse", + "properties": { + "recommendations": { + "description": "Initially the API will provide one recommendation which balances the\nindividual scores according to the service provider's preference.", + "items": { + "$ref": "CapacityAdviceResponseRecommendation" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityAdviceResponseRecommendation": { + "description": "Recommendation.", + "id": "CapacityAdviceResponseRecommendation", + "properties": { + "scores": { + "$ref": "CapacityAdviceResponseRecommendationScores", + "description": "Scores for the recommendation." + }, + "shards": { + "description": "Shards represent blocks of uniform capacity in recommendations.", + "items": { + "$ref": "CapacityAdviceResponseRecommendationShard" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityAdviceResponseRecommendationScores": { + "description": "Groups information about a shard of capacity.", + "id": "CapacityAdviceResponseRecommendationScores", + "properties": { + "estimatedUptime": { + "description": "The estimated run time of the majority of Spot VMs in the request\nbefore preemption. The estimate is best-effort only. It is based on\nhistorical data and current conditions.", + "format": "google-duration", + "type": "string" + }, + "obtainability": { + "description": "The obtainability score indicates the likelihood of successfully\nobtaining (provisioning) the requested number of VMs.\nThe score range is 0.0 through 1.0. Higher is better.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "CapacityAdviceResponseRecommendationShard": { + "description": "Shards represent blocks of uniform capacity in recommendations.\nEach shard is for a single zone and a single machine shape. Each shard\ndefines a size expressed as the number of VMs.", + "id": "CapacityAdviceResponseRecommendationShard", + "properties": { + "instanceCount": { + "description": "The number of instances.", + "format": "int32", + "type": "integer" + }, + "machineType": { + "description": "The machine type corresponds to the instance selection in the request.", + "type": "string" + }, + "provisioningModel": { + "description": "The provisioning model that you want to view recommendations for.", + "enum": [ + "FLEX_START", + "RESERVATION_BOUND", + "SPOT", + "STANDARD" + ], + "enumDescriptions": [ + "Instance is provisioned using the Flex Start provisioning model and\nhas a limited runtime.", + "Bound to the lifecycle of the reservation in which it is provisioned.", + "Heavily discounted, no guaranteed runtime.", + "Standard provisioning with user controlled runtime, no discounts." + ], + "type": "string" + }, + "zone": { + "description": "Output only. The zone name for this shard.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CapacityHistoryRequest": { + "description": "A request to get the capacity history.", + "id": "CapacityHistoryRequest", + "properties": { + "instanceProperties": { + "$ref": "CapacityHistoryRequestInstanceProperties", + "description": "Instance properties for this request." + }, + "locationPolicy": { + "$ref": "CapacityHistoryRequestLocationPolicy", + "description": "Location policy for this request." + }, + "types": { + "description": "List of history types to get capacity history for.", + "items": { + "enum": [ + "HISTORY_TYPE_UNSPECIFIED", + "PREEMPTION", + "PRICE" + ], + "enumDescriptions": [ + "", + "Preemption history.", + "Price history." + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityHistoryRequestInstanceProperties": { + "description": "Instance properties for this request.", + "id": "CapacityHistoryRequestInstanceProperties", + "properties": { + "machineType": { + "description": "The machine type for the VM, such as `n2-standard-4`.", + "type": "string" + }, + "scheduling": { + "$ref": "CapacityHistoryRequestInstancePropertiesScheduling", + "description": "Specifies the scheduling options." + } + }, + "type": "object" + }, + "CapacityHistoryRequestInstancePropertiesScheduling": { + "description": "Scheduling options.", + "id": "CapacityHistoryRequestInstancePropertiesScheduling", + "properties": { + "provisioningModel": { + "description": "The provisioning model to get capacity history for.\nThis field must be set to SPOT.\n\nFor more information, see\nCompute Engine instances provisioning models.", + "enum": [ + "FLEX_START", + "RESERVATION_BOUND", + "SPOT", + "STANDARD" + ], + "enumDescriptions": [ + "Instance is provisioned using the Flex Start provisioning model and\nhas a limited runtime.", + "Bound to the lifecycle of the reservation in which it is provisioned.", + "Heavily discounted, no guaranteed runtime.", + "Standard provisioning with user controlled runtime, no discounts." + ], + "type": "string" + } + }, + "type": "object" + }, + "CapacityHistoryRequestLocationPolicy": { + "description": "Location policy for this request.", + "id": "CapacityHistoryRequestLocationPolicy", + "properties": { + "location": { + "description": "The region or zone to get capacity history for.\n\nIt can be a partial or full URL. For example, the following are valid\nvalues: \n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone \n - projects/project/zones/zone \n - zones/zone\n\n\n\nThis field is optional.", + "type": "string" + } + }, + "type": "object" + }, + "CapacityHistoryResponse": { + "description": "Contains the capacity history.", + "id": "CapacityHistoryResponse", + "properties": { + "location": { + "readOnly": true, + "type": "string" + }, + "machineType": { + "type": "string" + }, + "preemptionHistory": { + "items": { + "$ref": "CapacityHistoryResponsePreemptionRecord" + }, + "type": "array" + }, + "priceHistory": { + "items": { + "$ref": "CapacityHistoryResponsePriceRecord" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityHistoryResponsePreemptionRecord": { + "id": "CapacityHistoryResponsePreemptionRecord", + "properties": { + "interval": { + "$ref": "Interval" + }, + "preemptionRate": { + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "CapacityHistoryResponsePriceRecord": { + "id": "CapacityHistoryResponsePriceRecord", + "properties": { + "interval": { + "$ref": "Interval" + }, + "listPrice": { + "$ref": "Money" + } + }, + "type": "object" + }, "CircuitBreakers": { "description": "Settings controlling the volume of requests, connections and retries to this\nbackend service.", "id": "CircuitBreakers", @@ -57336,6 +58503,10 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "params": { + "$ref": "CommitmentParams", + "description": "Input only. Additional params passed with the request, but not persisted\nas part of resource payload." + }, "plan": { "description": "The minimum time duration that you commit to purchasing resources.\nThe plan that you choose determines the preset term length of the\ncommitment (which is 1 year or 3 years) and affects the discount rate that\nyou receive for your resources. Committing to a longer time duration\ntypically gives you a higher discount rate. The supported values for this\nfield are TWELVE_MONTH (1 year), andTHIRTY_SIX_MONTH (3 years).", "enum": [ @@ -57413,7 +58584,7 @@ "type": "string" }, "type": { - "description": "The type of commitment; specifies the\nmachine series for which you want to commit to purchasing resources.\nThe choice of machine series affects the discount rate and the eligible\nresource types.\n\n The type must be one of the following:ACCELERATOR_OPTIMIZED, ACCELERATOR_OPTIMIZED_A3,ACCELERATOR_OPTIMIZED_A3_MEGA,COMPUTE_OPTIMIZED, COMPUTE_OPTIMIZED_C2D,\n COMPUTE_OPTIMIZED_C3, COMPUTE_OPTIMIZED_C3D,COMPUTE_OPTIMIZED_H3, GENERAL_PURPOSE,GENERAL_PURPOSE_C4, GENERAL_PURPOSE_E2,GENERAL_PURPOSE_N2, GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED, GRAPHICS_OPTIMIZED_G4,MEMORY_OPTIMIZED, MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3. For\nexample, type MEMORY_OPTIMIZED specifies a commitment that\napplies only to eligible resources of memory optimized M1 and M2 machine\nseries. Type GENERAL_PURPOSE specifies a commitment that\napplies only to eligible resources of general purpose N1 machine series.", + "description": "The type of commitment; specifies the\nmachine series for which you want to commit to purchasing resources.\nThe choice of machine series affects the discount rate and the eligible\nresource types.\n\n The type must be one of the following:ACCELERATOR_OPTIMIZED, ACCELERATOR_OPTIMIZED_A3,ACCELERATOR_OPTIMIZED_A3_MEGA,COMPUTE_OPTIMIZED, COMPUTE_OPTIMIZED_C2D,\n COMPUTE_OPTIMIZED_C3, COMPUTE_OPTIMIZED_C3D,COMPUTE_OPTIMIZED_H3, GENERAL_PURPOSE,GENERAL_PURPOSE_C4, GENERAL_PURPOSE_E2,GENERAL_PURPOSE_N2, GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED, GRAPHICS_OPTIMIZED_G4,GRAPHICS_OPTIMIZED_G4_VGPU,MEMORY_OPTIMIZED, MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3. For\nexample, type MEMORY_OPTIMIZED specifies a commitment that\napplies only to eligible resources of memory optimized M1 and M2 machine\nseries. Type GENERAL_PURPOSE specifies a commitment that\napplies only to eligible resources of general purpose N1 machine series.", "enum": [ "ACCELERATOR_OPTIMIZED", "ACCELERATOR_OPTIMIZED_A3", @@ -57439,6 +58610,7 @@ "GENERAL_PURPOSE_T2D", "GRAPHICS_OPTIMIZED", "GRAPHICS_OPTIMIZED_G4", + "GRAPHICS_OPTIMIZED_G4_VGPU", "MEMORY_OPTIMIZED", "MEMORY_OPTIMIZED_M3", "MEMORY_OPTIMIZED_M4", @@ -57484,6 +58656,7 @@ "", "", "", + "", "CUD bucket for X4 machine with 1440 vCPUs and 24TB of memory.", "", "CUD bucket for X4 machine with 1920 vCPUs and 32TB of memory.", @@ -57823,6 +58996,20 @@ }, "type": "object" }, + "CommitmentParams": { + "description": "Additional commitment params.", + "id": "CommitmentParams", + "properties": { + "resourceManagerTags": { + "additionalProperties": { + "type": "string" + }, + "description": "Input only. Resource manager tags to be bound to the commitment. Tag keys and\nvalues have the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "type": "object" + } + }, + "type": "object" + }, "CommitmentResourceStatus": { "description": "[Output Only] Contains output only fields.", "id": "CommitmentResourceStatus", @@ -58202,6 +59389,40 @@ }, "type": "object" }, + "CompositeHealthCheckHealth": { + "description": "Response message for RegionCompositeHealthChecks.GetHealth", + "id": "CompositeHealthCheckHealth", + "properties": { + "healthSources": { + "description": "Health sources and their corresponding health states.", + "items": { + "$ref": "CompositeHealthChecksGetHealthResponseHealthSourceHealth" + }, + "type": "array" + }, + "healthState": { + "description": "Health state of the CompositeHealthCheck.", + "enum": [ + "HEALTHY", + "UNHEALTHY", + "UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#compositeHealthCheckHealth", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#compositeHealthCheckHealth for the health of\ncomposite health checks.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "CompositeHealthCheckList": { "id": "CompositeHealthCheckList", "properties": { @@ -58357,6 +59578,30 @@ }, "type": "object" }, + "CompositeHealthChecksGetHealthResponseHealthSourceHealth": { + "id": "CompositeHealthChecksGetHealthResponseHealthSourceHealth", + "properties": { + "healthState": { + "description": "Health state of the associated HealthSource resource.", + "enum": [ + "HEALTHY", + "UNHEALTHY", + "UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "source": { + "description": "Fully qualified URL of the associated HealthSource resource.", + "type": "string" + } + }, + "type": "object" + }, "CompositeHealthChecksScopedList": { "id": "CompositeHealthChecksScopedList", "properties": { @@ -59738,7 +60983,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the disk. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the disk. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -60349,6 +61594,16 @@ }, "type": "object" }, + "DiskUpdateKmsKeyRequest": { + "id": "DiskUpdateKmsKeyRequest", + "properties": { + "kmsKeyName": { + "description": "Optional. The new KMS key to replace the current one on the disk. If empty, the disk\nwill be re-encrypted using the primary version of the disk's current KMS\nkey.\n\nThe KMS key can be provided in the following formats:\n \n \n - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key\n\n\nWhere project is the project ID or\nproject number.", + "type": "string" + } + }, + "type": "object" + }, "DisksAddResourcePoliciesRequest": { "id": "DisksAddResourcePoliciesRequest", "properties": { @@ -60575,7 +61830,7 @@ "type": "string" }, "zones": { - "description": "Zones where the regional managed instance group will create and manage\nits instances.", + "description": "Zones where the regional managed instance group will create and manage\nits instances.\nBy default, a regional MIG doesn't automatically select an AI zone to create\ninstances, even if an AI zone is available in the specified region. To\ncreate instances in an AI zone in the selected region, you must explicitly\nspecify it in the distribution policy together with the other preferred\nzones.", "items": { "$ref": "DistributionPolicyZoneConfiguration" }, @@ -61737,7 +62992,7 @@ "type": "string" }, "policyType": { - "description": "The type of the firewall policy. This field can be eitherVPC_POLICY or RDMA_ROCE_POLICY.\n\nNote: if not specified then VPC_POLICY will be used.", + "description": "The type of the firewall policy. This field can be one of\nVPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.\n\nNote: if not specified then VPC_POLICY will be used.", "enum": [ "RDMA_FALCON_POLICY", "RDMA_ROCE_POLICY", @@ -62332,7 +63587,7 @@ "id": "FixedOrPercent", "properties": { "calculated": { - "description": "Output only. [Output Only] Absolute value of VM instances calculated based on the\nspecific mode.\n\n \n \n - If the value is fixed, then the calculated\n value is equal to the fixed value.\n - If the value is a percent, then the\n calculated\n value is percent/100 * targetSize. For example,\n the calculated value of a 80% of a managed instance group\n with 150 instances would be (80/100 * 150) = 120 VM instances. If there\n is a remainder, the number is rounded.", + "description": "Output only. Absolute value of VM instances calculated based on the specific mode.\n\n \n \n - If the value is fixed, then the calculated\n value is equal to the fixed value.\n - If the value is a percent, then the\n calculated\n value is percent/100 * targetSize. For example,\n the calculated value of a 80% of a managed instance group\n with 150 instances would be (80/100 * 150) = 120 VM instances. If there\n is a remainder, the number is rounded.", "format": "int32", "readOnly": true, "type": "integer" @@ -62389,6 +63644,12 @@ "description": "IP address for which this forwarding rule accepts traffic. When a client\nsends traffic to this IP address, the forwarding rule directs the traffic\nto the referenced target or backendService.\nWhile creating a forwarding rule, specifying an IPAddress is\nrequired under the following circumstances:\n\n \n - When the target is set to targetGrpcProxy andvalidateForProxyless is set to true, theIPAddress should be set to 0.0.0.0.\n - When the target is a Private Service Connect Google APIs\n bundle, you must specify an IPAddress.\n\n\nOtherwise, you can optionally specify an IP address that references an\nexisting static (reserved) IP address resource. When omitted, Google Cloud\nassigns an ephemeral IP address.\n\nUse one of the following formats to specify an IP address while creating a\nforwarding rule:\n\n* IP address number, as in `100.1.2.3`\n* IPv6 address range, as in `2600:1234::/96`\n* Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/project_id/regions/region/addresses/address-name\n* Partial URL or by name, as in:\n \n - projects/project_id/regions/region/addresses/address-name\n - regions/region/addresses/address-name\n - global/addresses/address-name\n - address-name\n\n\n\nThe forwarding rule's target or backendService,\nand in most cases, also the loadBalancingScheme, determine the\ntype of IP address that you can use. For detailed information, see\n[IP address\nspecifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications).\n\nWhen reading an IPAddress, the API always returns the IP\naddress number.", "type": "string" }, + "IPAddresses": { + "items": { + "type": "string" + }, + "type": "array" + }, "IPProtocol": { "description": "The IP protocol to which this rule applies.\n\nFor protocol forwarding, valid\noptions are TCP, UDP, ESP,AH, SCTP, ICMP andL3_DEFAULT.\n\nThe valid IP protocols are different for different load balancing products\nas described in [Load balancing\nfeatures](https://cloud.google.com/load-balancing/docs/features#protocols_from_the_load_balancer_to_the_backends).", "enum": [ @@ -62423,6 +63684,28 @@ "description": "This is used in PSC consumer ForwardingRule to control whether the PSC\nendpoint can be accessed from another region.", "type": "boolean" }, + "attachedExtensions": { + "description": "Output only. [Output Only]. The extensions that are attached to this ForwardingRule.", + "items": { + "$ref": "ForwardingRuleAttachedExtension" + }, + "readOnly": true, + "type": "array" + }, + "availabilityGroup": { + "description": "[Output Only] Specifies the availability group of the forwarding rule. This\nfield is for use by global external passthrough load balancers (load\nbalancing scheme EXTERNAL_PASSTHROUGH) and is set for the child forwarding\nrules only.", + "enum": [ + "AVAILABILITY_GROUP0", + "AVAILABILITY_GROUP1", + "AVAILABILITY_GROUP_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, "backendService": { "description": "Identifies the backend service to which the forwarding rule sends traffic.\nRequired for internal and external passthrough Network Load Balancers;\nmust be omitted for all other load balancer types.", "type": "string" @@ -62432,6 +63715,14 @@ "readOnly": true, "type": "string" }, + "childForwardingRules": { + "description": "Output only. [Output Only] Applicable only to the parent forwarding rule of global\nexternal passthrough load balancers. This field contains the list of child\nforwarding rule URLs associated with the parent forwarding rule: one for\neach availability group. AVAILABILITY_GROUP0 will be the first element, and\nAVAILABILITY_GROUP1 will be the second element.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "creationTimestamp": { "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", "readOnly": true, @@ -62515,6 +63806,7 @@ "enum": [ "EXTERNAL", "EXTERNAL_MANAGED", + "EXTERNAL_PASSTHROUGH", "INTERNAL", "INTERNAL_MANAGED", "INTERNAL_SELF_MANAGED", @@ -62526,6 +63818,7 @@ "", "", "", + "", "" ], "type": "string" @@ -62566,6 +63859,11 @@ "description": "This is used in PSC consumer ForwardingRule to control whether it should\ntry to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use\nthis field. Once set, this field is not mutable.", "type": "boolean" }, + "parentForwardingRule": { + "description": "Output only. [Output Only] Applicable only to the child forwarding rules of global external\npassthrough load balancers. This field contains the URL of the parent\nforwarding rule.", + "readOnly": true, + "type": "string" + }, "portRange": { "description": "The ports, portRange, and allPorts\nfields are mutually exclusive. Only packets addressed to ports in the\nspecified range will be forwarded to the backends configured with this\nforwarding rule.\n\nThe portRange field has the following limitations:\n \n - It requires that the forwarding rule IPProtocol be TCP,\n UDP, or SCTP, and\n - It's applicable only to the following products: external passthrough\n Network Load Balancers, internal and external proxy Network Load Balancers,\n internal and external Application Load Balancers, external protocol\n forwarding, and Classic VPN.\n - Some products have restrictions on what ports can be used. See \n port specifications for details.\n\n\n\nFor external forwarding rules, two or more forwarding rules cannot use the\nsame [IPAddress, IPProtocol] pair, and cannot have overlappingportRanges.\n\nFor internal forwarding rules within the same VPC network, two or more\nforwarding rules cannot use the same [IPAddress, IPProtocol]\npair, and cannot have overlapping portRanges.\n\n@pattern: \\\\d+(?:-\\\\d+)?", "type": "string" @@ -62815,6 +64113,18 @@ }, "type": "object" }, + "ForwardingRuleAttachedExtension": { + "description": "Reference to an extension resource that is attached to this ForwardingRule.", + "id": "ForwardingRuleAttachedExtension", + "properties": { + "reference": { + "description": "Output only. The resource name.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ForwardingRuleList": { "description": "Contains a list of ForwardingRule resources.", "id": "ForwardingRuleList", @@ -63164,6 +64474,17 @@ "$ref": "FutureReservationCommitmentInfo", "description": "If not present, then FR will not deliver a new commitment or update an\nexisting commitment." }, + "confidentialComputeType": { + "enum": [ + "CONFIDENTIAL_COMPUTE_TYPE_TDX", + "CONFIDENTIAL_COMPUTE_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Intel Trust Domain Extensions.", + "" + ], + "type": "string" + }, "creationTimestamp": { "description": "Output only. [Output Only] The creation timestamp for this future reservation inRFC3339\ntext format.", "readOnly": true, @@ -63217,6 +64538,10 @@ "description": "Name prefix for the reservations to be created at the time of\ndelivery. The name prefix must comply with RFC1035.\nMaximum allowed length for name prefix is 20. Automatically created\nreservations name format will be -date-####.", "type": "string" }, + "params": { + "$ref": "FutureReservationParams", + "description": "Input only. Additional params passed with the request, but not persisted\nas part of resource payload." + }, "planningStatus": { "description": "Planning state before being submitted for evaluation", "enum": [ @@ -63352,6 +64677,20 @@ }, "type": "object" }, + "FutureReservationParams": { + "description": "Additional future reservation params.", + "id": "FutureReservationParams", + "properties": { + "resourceManagerTags": { + "additionalProperties": { + "type": "string" + }, + "description": "Input only. Resource manager tags to be bound to the future reservation. Tag keys and\nvalues have the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "type": "object" + } + }, + "type": "object" + }, "FutureReservationSpecificSKUProperties": { "id": "FutureReservationSpecificSKUProperties", "properties": { @@ -64376,6 +65715,35 @@ }, "type": "object" }, + "GetVersionOperationMetadata": { + "id": "GetVersionOperationMetadata", + "properties": { + "inlineSbomInfo": { + "$ref": "GetVersionOperationMetadataSbomInfo" + } + }, + "type": "object" + }, + "GetVersionOperationMetadataSbomInfo": { + "id": "GetVersionOperationMetadataSbomInfo", + "properties": { + "currentComponentVersions": { + "additionalProperties": { + "type": "string" + }, + "description": "A mapping of components to their currently-applied versions or other\nappropriate identifiers.", + "type": "object" + }, + "targetComponentVersions": { + "additionalProperties": { + "type": "string" + }, + "description": "A mapping of components to their target versions or other appropriate\nidentifiers.", + "type": "object" + } + }, + "type": "object" + }, "GlobalAddressesMoveRequest": { "id": "GlobalAddressesMoveRequest", "properties": { @@ -64790,7 +66158,7 @@ "id": "GlobalVmExtensionPolicyRolloutOperationRolloutInput", "properties": { "conflictBehavior": { - "description": "Optional. Specifies the behavior of the rollout if a conflict is detected in a\nproject during a rollout. This only applies to `insert` and `update`\nmethods.\n\nA conflict occurs in the following cases:\n* `insert` method: If the zonal policy already exists when the insert\n happens.\n* `update` method: If the zonal policy was modified by a zonal API call\n outside of this rollout.\n\nPossible values are the following:\n* `\"\"` (empty string): If a conflict occurs, the local value is not\n overwritten. This is the default behavior.\n* `\"overwrite\"`: If a conflict occurs, the local value is overwritten\n with the rollout value.", + "description": "Optional. Specifies the behavior of the rollout if a conflict is detected in a\nproject during a rollout. This only applies to `insert` and `update`\nmethods.\n\nA conflict occurs in the following cases:\n\n* `insert` method: If the zonal policy already exists when the insert\n happens.\n* `update` method: If the zonal policy was modified by a zonal API call\n outside of this rollout.\n\nPossible values are the following:\n\n* `\"\"` (empty string): If a conflict occurs, the local value is not\n overwritten. This is the default behavior.\n* `\"overwrite\"`: If a conflict occurs, the local value is overwritten\n with the rollout value.", "type": "string" }, "name": { @@ -64798,7 +66166,7 @@ "type": "string" }, "predefinedRolloutPlan": { - "description": "Optional. Predefined rollout plan.", + "description": "Optional. Specifies the predefined rollout plan for the policy. Valid values\nare `SLOW_ROLLOUT` and `FAST_ROLLOUT`. The recommended value is\n`SLOW_ROLLOUT` for progressive rollout. For more information, see Rollout\nplans for global policies.", "enum": [ "FAST_ROLLOUT", "ROLLOUT_PLAN_UNSPECIFIED", @@ -64840,6 +66208,14 @@ "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata": { "id": "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata", "properties": { + "locationRolloutStatus": { + "additionalProperties": { + "$ref": "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus" + }, + "description": "Output only. [Output Only] The rollout status for each location. The list of the\nlocations is the same as the list of locations in the rollout plan.", + "readOnly": true, + "type": "object" + }, "rollout": { "description": "Output only. [Output Only] The name of the rollout.\nEx. projects//locations/global/rollouts/.", "readOnly": true, @@ -64876,6 +66252,31 @@ }, "type": "object" }, + "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus": { + "id": "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus", + "properties": { + "state": { + "description": "Output only. [Output Only] The state of the location rollout.", + "enum": [ + "LOCATION_ROLLOUT_STATE_COMPLETED", + "LOCATION_ROLLOUT_STATE_FAILED", + "LOCATION_ROLLOUT_STATE_NOT_STARTED", + "LOCATION_ROLLOUT_STATE_SKIPPED", + "LOCATION_ROLLOUT_STATE_UNSPECIFIED" + ], + "enumDescriptions": [ + "The location rollout is completed.", + "The location rollout has failed.", + "The location rollout has not started.", + "The location rollout is skipped.", + "Default value. This value is unused." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GroupMaintenanceInfo": { "description": "Maintenance Info for ReservationBlocks.", "id": "GroupMaintenanceInfo", @@ -65004,7 +66405,7 @@ "id": "GuestOsFeature", "properties": { "type": { - "description": "The ID of a supported feature. To add multiple values, use commas to\nseparate values. Set to one or more of the following values:\n \n - VIRTIO_SCSI_MULTIQUEUE\n - WINDOWS\n - MULTI_IP_SUBNET\n - UEFI_COMPATIBLE\n - GVNIC\n - SEV_CAPABLE\n - SUSPEND_RESUME_COMPATIBLE\n - SEV_LIVE_MIGRATABLE_V2\n - SEV_SNP_CAPABLE\n - TDX_CAPABLE\n - IDPF\n - SNP_SVSM_CAPABLE\n\n\nFor more information, see\nEnabling guest operating system features.", + "description": "The ID of a supported feature. To add multiple values, use commas to\nseparate values. Set to one or more of the following values:\n \n - VIRTIO_SCSI_MULTIQUEUE\n - WINDOWS\n - MULTI_IP_SUBNET\n - UEFI_COMPATIBLE\n - GVNIC\n - SEV_CAPABLE\n - SUSPEND_RESUME_COMPATIBLE\n - SEV_LIVE_MIGRATABLE_V2\n - SEV_SNP_CAPABLE\n - TDX_CAPABLE\n - IDPF\n - SNP_SVSM_CAPABLE\n - CCA_CAPABLE\n\n\nFor more information, see\nEnabling guest operating system features.", "enum": [ "BARE_METAL_LINUX_COMPATIBLE", "FEATURE_TYPE_UNSPECIFIED", @@ -66125,6 +67526,172 @@ }, "type": "object" }, + "HealthCheckServiceAggregatedList": { + "description": "Contains a list of HealthCheckServicesScopedList.", + "id": "HealthCheckServiceAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "HealthCheckServicesScopedList", + "description": "Name of the scope containing this set of HealthCheckServices." + }, + "description": "A list of HealthCheckServicesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#healthCheckServiceAggregatedList", + "description": "Output only. Type of resource.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, "HealthCheckServiceReference": { "description": "A full or valid partial URL to a health check service. For example, the\nfollowing are valid URLs:\n \n - https://www.googleapis.com/compute/beta/projects/project-id/regions/us-west1/healthCheckServices/health-check-service\n - projects/project-id/regions/us-west1/healthCheckServices/health-check-service\n - regions/us-west1/healthCheckServices/health-check-service", "id": "HealthCheckServiceReference", @@ -66294,6 +67861,143 @@ }, "type": "object" }, + "HealthCheckServicesScopedList": { + "id": "HealthCheckServicesScopedList", + "properties": { + "resources": { + "description": "A list of HealthCheckServices contained in this scope.", + "items": { + "$ref": "HealthCheckService" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of\nbackend services when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, "HealthChecksAggregatedList": { "id": "HealthChecksAggregatedList", "properties": { @@ -66836,157 +68540,232 @@ }, "type": "object" }, - "HealthSourceList": { - "id": "HealthSourceList", + "HealthSourceHealth": { + "description": "Response message for RegionHealthSources.GetHealth", + "id": "HealthSourceHealth", + "properties": { + "healthState": { + "description": "Health state of the HealthSource.", + "enum": [ + "HEALTHY", + "UNHEALTHY", + "UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#healthSourceHealth", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#healthSourceHealth for the health of health sources.", + "readOnly": true, + "type": "string" + }, + "sources": { + "description": "Health state details of the sources.", + "items": { + "$ref": "HealthSourcesGetHealthResponseSourceInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "HealthSourceList": { + "id": "HealthSourceList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HealthSource resources.", + "items": { + "$ref": "HealthSource" + }, + "type": "array" + }, + "kind": { + "default": "compute#healthSourceList", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#healthSource for health sources.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HealthSourcesGetHealthResponseSourceInfo": { + "id": "HealthSourcesGetHealthResponseSourceInfo", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" - }, - "items": { - "description": "A list of HealthSource resources.", + "backends": { + "description": "Represents an instance group or network endpoint group behind the source\nbackend service. Only used if the sourceType of the regionHealthSource\nis BACKEND_SERVICE.", "items": { - "$ref": "HealthSource" + "$ref": "HealthSourcesGetHealthResponseSourceInfoBackendInfo" }, "type": "array" }, - "kind": { - "default": "compute#healthSourceList", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#healthSource for health sources.", - "readOnly": true, + "forwardingRule": { + "description": "Fully qualified URL of the forwarding rule associated with the source\nresource if it is a L4ILB backend service.", "type": "string" }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "source": { + "description": "Fully qualified URL of the associated source resource. This is always a\nbackend service URL.", "type": "string" + } + }, + "type": "object" + }, + "HealthSourcesGetHealthResponseSourceInfoBackendInfo": { + "id": "HealthSourcesGetHealthResponseSourceInfoBackendInfo", + "properties": { + "endpointCount": { + "description": "Total number of endpoints when determining the health of the\nregionHealthSource.", + "format": "int32", + "type": "integer" }, - "selfLink": { - "description": "[Output Only] Server-defined URL for this resource.", + "group": { + "description": "Fully qualified URL of an instance group or network endpoint group\nbehind the source backend service.", "type": "string" }, - "warning": { - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", - "LARGE_DEPLOYMENT_WARNING", - "LIST_OVERHEAD_QUOTA_EXCEED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "PARTIAL_SUCCESS", - "QUOTA_INFO_UNAVAILABLE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDeprecated": [ - false, - false, - false, - false, - false, - false, - true, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false - ], - "enumDescriptions": [ - "Warning about failed cleanup of transient changes made by a failed\noperation.", - "A link to a deprecated resource was created.", - "When deploying and at least one of the resources has a type marked as\ndeprecated", - "The user created a boot disk that is larger than image size.", - "When deploying and at least one of the resources has a type marked as\nexperimental", - "Warning that is present in an external api call", - "Warning that value of a field has been overridden.\nDeprecated unused field.", - "The operation involved use of an injected kernel, which is deprecated.", - "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", - "When deploying a deployment with a exceedingly large number of resources", - "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", - "A resource depends on a missing type", - "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", - "The route's next hop instance cannot ip forward.", - "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", - "The route's nextHopInstance URL refers to an instance that does not exist.", - "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", - "The route's next hop instance does not have a status of RUNNING.", - "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", - "No results are present on a particular list page.", - "Success is reported, but some results may be missing due to errors", - "Quota information is not available to client requests (e.g:\nregions.list).", - "The user attempted to use a resource that requires a TOS they have not\naccepted.", - "Warning that a resource is in use.", - "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", - "When a resource schema validation is ignored.", - "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", - "When undeclared properties in the schema are present", - "A given scope cannot be reached." - ], - "type": "string" - }, - "data": { - "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", - "items": { - "properties": { - "key": { - "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", - "type": "string" - }, - "value": { - "description": "[Output Only] A warning data value corresponding to the key.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "message": { - "description": "[Output Only] A human-readable description of the warning code.", - "type": "string" - } - }, - "type": "object" + "healthyEndpointCount": { + "description": "Number of endpoints considered healthy when determining health of the\nregionHealthSource.", + "format": "int32", + "type": "integer" } }, "type": "object" @@ -67793,7 +69572,7 @@ "properties": { "cachePolicy": { "$ref": "CachePolicy", - "description": "Cache policy for this URL Map’s route. Available only for Global\nEXTERNAL_MANAGED load balancer schemes." + "description": "Specifies the cache policy configuration for matched traffic. Available\nonly for Global `EXTERNAL_MANAGED` load balancer schemes. At least one\nproperty must be specified. This policy cannot be specified if any target\nbackend has Identity-Aware Proxy enabled." }, "corsPolicy": { "$ref": "CorsPolicy", @@ -68302,7 +70081,7 @@ "type": "string" }, "source": { - "description": "The full Google Cloud Storage URL where the raw disk image archive is\nstored.\nThe following are valid formats for the URL:\n \n - https://storage.googleapis.com/bucket_name/image_archive_name\n - https://storage.googleapis.com/bucket_name/folder_name/image_archive_name\n\n\n\nIn order to create an image, you must provide the full or partial URL of\none of the following:\n \n - The rawDisk.source URL \n - The sourceDisk URL \n - The sourceImage URL \n - The sourceSnapshot URL", + "description": "The full Google Cloud Storage URL or Artifact Registry path where the raw\ndisk image archive is stored.\nThe following are valid formats:\n \n - https://storage.googleapis.com/bucket_name/image_archive_name\n - https://storage.googleapis.com/bucket_name/folder_name/image_archive_name\n - projects/project/locations/location/repositories/repo/packages/package/versions/version_id\n - projects/project/locations/location/repositories/repo/packages/package/versions/version_id@dirsum_sha256:hex_value\n\n\n\nIn order to create an image, you must provide the full or partial URL of\none of the following:\n \n - The rawDisk.source URL \n - The sourceDisk URL \n - The sourceImage URL \n - The sourceSnapshot URL", "type": "string" } }, @@ -68583,7 +70362,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the image. Tag keys and values have\nthe same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the image. Tag keys and values have\nthe same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -69617,13 +71396,13 @@ "type": "string" }, "creationTimestamp": { - "description": "Output only. [Output Only] The creation timestamp for this managed instance group inRFC3339\ntext format.", + "description": "Output only. The creation timestamp for this managed instance group inRFC3339\ntext format.", "readOnly": true, "type": "string" }, "currentActions": { "$ref": "InstanceGroupManagerActionsSummary", - "description": "Output only. [Output Only] The list of instance actions and the number of instances\nin this managed instance group that are scheduled for each of those\nactions.", + "description": "Output only. The list of instance actions and the number of instances\nin this managed instance group that are scheduled for each of those\nactions.", "readOnly": true }, "description": { @@ -69652,7 +71431,7 @@ "type": "string" }, "id": { - "description": "Output only. [Output Only] A unique identifier for this resource type. The server\ngenerates this identifier.", + "description": "Output only. A unique identifier for this resource type. The server\ngenerates this identifier.", "format": "uint64", "readOnly": true, "type": "string" @@ -69662,7 +71441,7 @@ "description": "Instance flexibility allowing MIG to create VMs from multiple\ntypes of machines.\nInstance flexibility configuration on MIG overrides instance\ntemplate configuration." }, "instanceGroup": { - "description": "Output only. [Output Only] The URL of the Instance Group resource.", + "description": "Output only. The URL of the Instance Group resource.", "readOnly": true, "type": "string" }, @@ -69676,7 +71455,7 @@ }, "kind": { "default": "compute#instanceGroupManager", - "description": "Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManager for managed instance groups.", + "description": "Output only. The resource type, which is alwayscompute#instanceGroupManager for managed instance groups.", "readOnly": true, "type": "string" }, @@ -69728,17 +71507,17 @@ "description": "Resource policies for this managed instance group." }, "satisfiesPzi": { - "description": "Output only. [Output Only] Reserved for future use.", + "description": "Output only. Reserved for future use.", "readOnly": true, "type": "boolean" }, "satisfiesPzs": { - "description": "Output only. [Output Only] Reserved for future use.", + "description": "Output only. Reserved for future use.", "readOnly": true, "type": "boolean" }, "selfLink": { - "description": "Output only. [Output Only] The URL for this managed instance group. The server defines\nthis URL.", + "description": "Output only. The URL for this managed instance group. The server defines\nthis URL.", "readOnly": true, "type": "string" }, @@ -69756,7 +71535,7 @@ }, "status": { "$ref": "InstanceGroupManagerStatus", - "description": "Output only. [Output Only] The status of this managed instance group.", + "description": "Output only. The status of this managed instance group.", "readOnly": true }, "targetPools": { @@ -69803,7 +71582,7 @@ "type": "array" }, "zone": { - "description": "Output only. [Output Only] The URL of azone\nwhere the managed instance group is located (for zonal resources).", + "description": "Output only. The URL of azone\nwhere the managed instance group is located (for zonal resources).", "readOnly": true, "type": "string" } @@ -69814,84 +71593,85 @@ "id": "InstanceGroupManagerActionsSummary", "properties": { "abandoning": { - "description": "Output only. [Output Only] The total number of instances in the managed instance group\nthat are scheduled to be abandoned. Abandoning an instance removes it\nfrom the managed instance group without deleting it.", + "description": "Output only. The total number of instances in the managed instance group\nthat are scheduled to be abandoned. Abandoning an instance removes it\nfrom the managed instance group without deleting it.", "format": "int32", "readOnly": true, "type": "integer" }, "adopting": { - "description": "[Output Only] The number of instances in the managed instance group that\nare scheduled to be adopted or are currently being adopted.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be adopted or are currently being adopted.", "format": "int32", + "readOnly": true, "type": "integer" }, "creating": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be created or are currently being created. If the group\nfails to create any of these instances, it tries again until it creates\nthe instance successfully.\n\nIf you have disabled creation retries, this field will not be populated;\ninstead, the creatingWithoutRetries field will be populated.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be created or are currently being created. If the group\nfails to create any of these instances, it tries again until it creates\nthe instance successfully.\n\nIf you have disabled creation retries, this field will not be populated;\ninstead, the creatingWithoutRetries field will be populated.", "format": "int32", "readOnly": true, "type": "integer" }, "creatingWithoutRetries": { - "description": "Output only. [Output Only] The number of instances that the managed instance group\nwill attempt to create. The group attempts to create each instance\nonly once. If the group fails to create any of these instances, it\ndecreases the group's targetSize value accordingly.", + "description": "Output only. The number of instances that the managed instance group\nwill attempt to create. The group attempts to create each instance\nonly once. If the group fails to create any of these instances, it\ndecreases the group's targetSize value accordingly.", "format": "int32", "readOnly": true, "type": "integer" }, "deleting": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be deleted or are currently being deleted.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be deleted or are currently being deleted.", "format": "int32", "readOnly": true, "type": "integer" }, "none": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare running and have no scheduled actions.", + "description": "Output only. The number of instances in the managed instance group that\nare running and have no scheduled actions.", "format": "int32", "readOnly": true, "type": "integer" }, "recreating": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be recreated or are currently being being recreated.\nRecreating an instance deletes the existing root persistent disk\nand creates a new disk from the image that is defined in the\ninstance template.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be recreated or are currently being being recreated.\nRecreating an instance deletes the existing root persistent disk\nand creates a new disk from the image that is defined in the\ninstance template.", "format": "int32", "readOnly": true, "type": "integer" }, "refreshing": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare being reconfigured with properties that do not require a restart\nor a recreate action. For example, setting or removing target\npools for the instance.", + "description": "Output only. The number of instances in the managed instance group that\nare being reconfigured with properties that do not require a restart\nor a recreate action. For example, setting or removing target\npools for the instance.", "format": "int32", "readOnly": true, "type": "integer" }, "restarting": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be restarted or are currently being restarted.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be restarted or are currently being restarted.", "format": "int32", "readOnly": true, "type": "integer" }, "resuming": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be resumed or are currently being resumed.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be resumed or are currently being resumed.", "format": "int32", "readOnly": true, "type": "integer" }, "starting": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be started or are currently being started.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be started or are currently being started.", "format": "int32", "readOnly": true, "type": "integer" }, "stopping": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be stopped or are currently being stopped.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be stopped or are currently being stopped.", "format": "int32", "readOnly": true, "type": "integer" }, "suspending": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be suspended or are currently being suspended.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be suspended or are currently being suspended.", "format": "int32", "readOnly": true, "type": "integer" }, "verifying": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare being verified. See the managedInstances[].currentAction\nproperty in the listManagedInstances method documentation.", + "description": "Output only. The number of instances in the managed instance group that\nare being verified. See the managedInstances[].currentAction\nproperty in the listManagedInstances method documentation.", "format": "int32", "readOnly": true, "type": "integer" @@ -69903,36 +71683,36 @@ "id": "InstanceGroupManagerAggregatedList", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, "items": { "additionalProperties": { "$ref": "InstanceGroupManagersScopedList", - "description": "Output only. [Output Only] The name of the scope that contains this set of managed\ninstance groups." + "description": "Output only. The name of the scope that contains this set of managed instance groups." }, "description": "A list of InstanceGroupManagersScopedList resources.", "type": "object" }, "kind": { "default": "compute#instanceGroupManagerAggregatedList", - "description": "Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerAggregatedList for an aggregated\nlist of managed instance groups.", + "description": "Output only. The resource type, which is alwayscompute#instanceGroupManagerAggregatedList for an aggregated\nlist of managed instance groups.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", + "description": "Output only. Unreachable resources.", "items": { "type": "string" }, @@ -69940,7 +71720,7 @@ "type": "array" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -70228,7 +72008,7 @@ "id": "InstanceGroupManagerList", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, @@ -70241,22 +72021,22 @@ }, "kind": { "default": "compute#instanceGroupManagerList", - "description": "Output only. [Output Only] The resource type, which is always\ncompute#instanceGroupManagerList for a list of managed instance groups.", + "description": "Output only. The resource type, which is always compute#instanceGroupManagerList for a\nlist of managed instance groups.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -70408,7 +72188,7 @@ "type": "integer" }, "creationTimestamp": { - "description": "Output only. [Output Only] The creation timestamp for this resize request inRFC3339\ntext format.", + "description": "Output only. The creation timestamp for this resize request inRFC3339\ntext format.", "readOnly": true, "type": "string" }, @@ -70417,7 +72197,7 @@ "type": "string" }, "id": { - "description": "Output only. [Output Only] A unique identifier for this resource type. The server\ngenerates this identifier.", + "description": "Output only. A unique identifier for this resource type. The server generates this\nidentifier.", "format": "uint64", "readOnly": true, "type": "string" @@ -70431,7 +72211,7 @@ }, "kind": { "default": "compute#instanceGroupManagerResizeRequest", - "description": "Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for\nresize requests.", + "description": "Output only. The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for resize requests.", "readOnly": true, "type": "string" }, @@ -70446,7 +72226,7 @@ "type": "string" }, "region": { - "description": "Output only. [Output Only] The URL of aregion\nwhere the resize request is located. Populated only for regional resize\nrequests.", + "description": "Output only. The URL of a region\nwhere the resize request is located. Populated only for regional resize\nrequests.", "readOnly": true, "type": "string" }, @@ -70460,17 +72240,17 @@ "type": "integer" }, "selfLink": { - "description": "Output only. [Output Only] The URL for this resize request. The server defines\nthis URL.", + "description": "Output only. The URL for this resize request. The server defines this URL.", "readOnly": true, "type": "string" }, "selfLinkWithId": { - "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", + "description": "Output only. Server-defined URL for this resource with the resource id.", "readOnly": true, "type": "string" }, "state": { - "description": "Output only. [Output only] Current state of the request.", + "description": "Output only. Current state of the request.", "enum": [ "ACCEPTED", "CANCELLED", @@ -70503,11 +72283,11 @@ }, "status": { "$ref": "InstanceGroupManagerResizeRequestStatus", - "description": "Output only. [Output only] Status of the request.", + "description": "Output only. Status of the request.", "readOnly": true }, "zone": { - "description": "Output only. [Output Only] The URL of azone\nwhere the resize request is located. Populated only for zonal resize\nrequests.", + "description": "Output only. The URL of a zone\nwhere the resize request is located. Populated only for zonal resize\nrequests.", "readOnly": true, "type": "string" } @@ -70518,7 +72298,7 @@ "id": "InstanceGroupManagerResizeRequestStatus", "properties": { "error": { - "description": "Output only. [Output only] Fatal errors encountered during the queueing or\nprovisioning phases of the ResizeRequest that caused the transition to\nthe FAILED state. Contrary to the last_attempt errors, this field is\nfinal and errors are never removed from here, as the ResizeRequest is not\ngoing to retry.", + "description": "Output only. Fatal errors encountered during the queueing or provisioning phases of\nthe ResizeRequest that caused the transition to the FAILED state.\nContrary to the last_attempt errors, this field is final and errors are\nnever removed from here, as the ResizeRequest is not going to retry.", "properties": { "errors": { "description": "[Output Only] The array of errors encountered while processing this\noperation.", @@ -70568,7 +72348,7 @@ }, "lastAttempt": { "$ref": "InstanceGroupManagerResizeRequestStatusLastAttempt", - "description": "Output only. [Output only] Information about the last attempt to fulfill the request.\nThe value is temporary since the ResizeRequest can retry, as long as it's\nstill active and the last attempt value can either be cleared or replaced\nwith a different error. Since ResizeRequest retries infrequently, the\nvalue may be stale and no longer show an active problem. The value is\ncleared when ResizeRequest transitions to the final state (becomes\ninactive). If the final state is FAILED the error describing it will be\nstorred in the \"error\" field only.", + "description": "Output only. Information about the last attempt to fulfill the request. The value is\ntemporary since the ResizeRequest can retry, as long as it's still active\nand the last attempt value can either be cleared or replaced with a\ndifferent error. Since ResizeRequest retries infrequently, the value may\nbe stale and no longer show an active problem. The value is cleared when\nResizeRequest transitions to the final state (becomes inactive). If the\nfinal state is FAILED the error describing it will be stored in the\n\"error\" field only.", "readOnly": true } }, @@ -70634,7 +72414,7 @@ "id": "InstanceGroupManagerResizeRequestsListResponse", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, @@ -70647,22 +72427,22 @@ }, "kind": { "default": "compute#instanceGroupManagerResizeRequestList", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#instanceGroupManagerResizeRequestList for\na list of resize requests.", + "description": "Output only. Type of the resource. Alwayscompute#instanceGroupManagerResizeRequestList for\na list of resize requests.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for list requests.\nIf the number of results is larger than maxResults, use thenextPageToken as a value for the query parameterpageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -70827,52 +72607,158 @@ "properties": { "allInstancesConfig": { "$ref": "InstanceGroupManagerStatusAllInstancesConfig", - "description": "Output only. [Output only] Status of all-instances configuration on the group.", + "description": "Output only. Status of all-instances configuration on the group.", "readOnly": true }, + "appliedAcceleratorTopologies": { + "description": "Output only. The accelerator topology applied to this MIG.\nCurrently only one accelerator topology is supported.", + "items": { + "$ref": "InstanceGroupManagerStatusAcceleratorTopology" + }, + "readOnly": true, + "type": "array" + }, "autoscaler": { - "description": "Output only. [Output Only] The URL of theAutoscaler\nthat targets this instance group manager.", + "description": "Output only. The URL of theAutoscaler\nthat targets this instance group manager.", "readOnly": true, "type": "string" }, "bulkInstanceOperation": { "$ref": "InstanceGroupManagerStatusBulkInstanceOperation", - "description": "Output only. [Output Only] The status of bulk instance operation.", + "description": "Output only. The status of bulk instance operation.", "readOnly": true }, "currentInstanceStatuses": { "$ref": "InstanceGroupManagerStatusInstanceStatusSummary", - "description": "Output only. [Output Only] The list of instance statuses and the number of instances\nin this managed instance group that have the status. Currently only shown\nfor TPU MIGs", + "description": "Output only. The list of instance statuses and the number of instances\nin this managed instance group that have the status. Currently only shown\nfor TPU MIGs", "readOnly": true }, "isStable": { - "description": "Output only. [Output Only] A bit indicating whether the managed instance group is in a\nstable state. A stable state means that: none of the instances in the\nmanaged instance group is currently undergoing any type of change (for\nexample, creation, restart, or deletion); no future changes are scheduled\nfor instances in the managed instance group; and the managed instance\ngroup itself is not being modified.", + "description": "Output only. A bit indicating whether the managed instance group is in a\nstable state. A stable state means that: none of the instances in the\nmanaged instance group is currently undergoing any type of change (for\nexample, creation, restart, or deletion); no future changes are scheduled\nfor instances in the managed instance group; and the managed instance\ngroup itself is not being modified.", "readOnly": true, "type": "boolean" }, "stateful": { "$ref": "InstanceGroupManagerStatusStateful", - "description": "Output only. [Output Only] Stateful status of the given Instance Group Manager.", + "description": "Output only. Stateful status of the given Instance Group Manager.", "readOnly": true }, "versionTarget": { "$ref": "InstanceGroupManagerStatusVersionTarget", - "description": "Output only. [Output Only] A status of consistency of Instances' versions with their\ntarget version specified by version field on Instance Group\nManager.", + "description": "Output only. A status of consistency of Instances' versions with their\ntarget version specified by version field on Instance Group\nManager.", "readOnly": true } }, "type": "object" }, + "InstanceGroupManagerStatusAcceleratorTopology": { + "id": "InstanceGroupManagerStatusAcceleratorTopology", + "properties": { + "acceleratorTopology": { + "description": "Output only. Topology in the format of: \"16x16\", \"4x4x4\", etc.\nThe value is the same as configured in the WorkloadPolicy.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The state of the accelerator topology.", + "enum": [ + "ACTIVATING", + "ACTIVE", + "DEACTIVATING", + "FAILED", + "INCOMPLETE", + "REACTIVATING" + ], + "enumDescriptions": [ + "The accelerator topology is being activated.", + "The accelerator topology is active.", + "The accelerator topology is being deactivated.", + "The accelerator topology failed.", + "The configuration is incomplete and the accelerator topology cannot\nbe activated due to insufficient number of running VMs.", + "The accelerator topology is being reactivated." + ], + "readOnly": true, + "type": "string" + }, + "stateDetails": { + "$ref": "InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails", + "description": "Output only. The result of the latest accelerator topology state\ncheck.", + "readOnly": true + } + }, + "type": "object" + }, + "InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails": { + "id": "InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails", + "properties": { + "error": { + "description": "Output only. Encountered errors.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this\noperation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "errorDetails": { + "description": "[Output Only] An optional list of messages that contain the error\ndetails. There is a set of defined message types to use for providing\ndetails.The syntax depends on the error code. For example,\nQuotaExceededInfo will have details when the error code is\nQUOTA_EXCEEDED.", + "items": { + "properties": { + "errorInfo": { + "$ref": "ErrorInfo" + }, + "help": { + "$ref": "Help" + }, + "localizedMessage": { + "$ref": "LocalizedMessage" + }, + "quotaInfo": { + "$ref": "QuotaExceededInfo" + } + }, + "type": "object" + }, + "type": "array" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error.\nThis property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "readOnly": true, + "type": "object" + }, + "timestamp": { + "description": "Output only. Timestamp is shown only if there is an error. The field\nhas // RFC3339 //\ntext format.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "InstanceGroupManagerStatusAllInstancesConfig": { "id": "InstanceGroupManagerStatusAllInstancesConfig", "properties": { "currentRevision": { - "description": "Output only. [Output Only] Current all-instances configuration revision.\nThis value is in RFC3339 text format.", + "description": "Output only. Current all-instances configuration revision.\nThis value is in RFC3339 text format.", "readOnly": true, "type": "string" }, "effective": { - "description": "Output only. [Output Only] A bit indicating whether this configuration has\nbeen applied to all managed instances in the group.", + "description": "Output only. A bit indicating whether this configuration has\nbeen applied to all managed instances in the group.", "readOnly": true, "type": "boolean" } @@ -70884,13 +72770,13 @@ "id": "InstanceGroupManagerStatusBulkInstanceOperation", "properties": { "inProgress": { - "description": "Output only. [Output Only] Informs whether bulk instance operation is in progress.", + "description": "Output only. Informs whether bulk instance operation is in progress.", "readOnly": true, "type": "boolean" }, "lastProgressCheck": { "$ref": "InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck", - "description": "Output only. [Output Only] Information from the last progress check of bulk instance\noperation.", + "description": "Output only. Information from the last progress check of bulk instance\noperation.", "readOnly": true } }, @@ -70900,7 +72786,7 @@ "id": "InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck", "properties": { "error": { - "description": "Output only. [Output Only] Errors encountered during bulk instance operation.", + "description": "Output only. Errors encountered during bulk instance operation.", "properties": { "errors": { "description": "[Output Only] The array of errors encountered while processing this\noperation.", @@ -70949,7 +72835,7 @@ "type": "object" }, "timestamp": { - "description": "Output only. [Output Only] Timestamp of the last progress check of bulk instance\noperation. Timestamp is in RFC3339 text format.", + "description": "Output only. Timestamp of the last progress check of bulk instance\noperation. Timestamp is in RFC3339 text format.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -70962,79 +72848,79 @@ "id": "InstanceGroupManagerStatusInstanceStatusSummary", "properties": { "deprovisioning": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have DEPROVISIONING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have DEPROVISIONING status.", "format": "int32", "readOnly": true, "type": "integer" }, "nonExistent": { - "description": "Output only. [Output Only] The number of instances that have not been created yet or\nhave been deleted. Includes only instances that would be shown in the\nlistManagedInstances method and not all instances that have been\ndeleted in the lifetime of the MIG.\nDoes not include FlexStart instances that are waiting for the resources\navailability, they are considered as 'pending'.", + "description": "Output only. The number of instances that have not been created yet or\nhave been deleted. Includes only instances that would be shown in the\nlistManagedInstances method and not all instances that have been\ndeleted in the lifetime of the MIG.\nDoes not include FlexStart instances that are waiting for the resources\navailability, they are considered as 'pending'.", "format": "int32", "readOnly": true, "type": "integer" }, "pending": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have PENDING status, that is FlexStart instances that are waiting\nfor resources. Instances that do not exist because of the other reasons\nare counted as 'non_existent'.", + "description": "Output only. The number of instances in the managed instance group\nthat have PENDING status, that is FlexStart instances that are waiting\nfor resources. Instances that do not exist because of the other reasons\nare counted as 'non_existent'.", "format": "int32", "readOnly": true, "type": "integer" }, "pendingStop": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have PENDING_STOP status.", + "description": "Output only. The number of instances in the managed instance group\nthat have PENDING_STOP status.", "format": "int32", "readOnly": true, "type": "integer" }, "provisioning": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have PROVISIONING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have PROVISIONING status.", "format": "int32", "readOnly": true, "type": "integer" }, "repairing": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have REPAIRING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have REPAIRING status.", "format": "int32", "readOnly": true, "type": "integer" }, "running": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have RUNNING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have RUNNING status.", "format": "int32", "readOnly": true, "type": "integer" }, "staging": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have STAGING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have STAGING status.", "format": "int32", "readOnly": true, "type": "integer" }, "stopped": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have STOPPED status.", + "description": "Output only. The number of instances in the managed instance group\nthat have STOPPED status.", "format": "int32", "readOnly": true, "type": "integer" }, "stopping": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have STOPPING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have STOPPING status.", "format": "int32", "readOnly": true, "type": "integer" }, "suspended": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have SUSPENDED status.", + "description": "Output only. The number of instances in the managed instance group\nthat have SUSPENDED status.", "format": "int32", "readOnly": true, "type": "integer" }, "suspending": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have SUSPENDING status.", + "description": "Output only. The number of instances in the managed instance group\nthat have SUSPENDING status.", "format": "int32", "readOnly": true, "type": "integer" }, "terminated": { - "description": "Output only. [Output Only] The number of instances in the managed instance group\nthat have TERMINATED status.", + "description": "Output only. The number of instances in the managed instance group\nthat have TERMINATED status.", "format": "int32", "readOnly": true, "type": "integer" @@ -71046,19 +72932,19 @@ "id": "InstanceGroupManagerStatusStateful", "properties": { "hasStatefulConfig": { - "description": "Output only. [Output Only] A bit indicating whether the managed instance group\nhas stateful configuration, that is, if you have configured any items\nin a stateful policy or in per-instance configs.\nThe group might report that it has no stateful configuration even when\nthere is still some preserved state on a managed instance, for example,\nif you have deleted all PICs but not yet applied those deletions.", + "description": "Output only. A bit indicating whether the managed instance group\nhas stateful configuration, that is, if you have configured any items\nin a stateful policy or in per-instance configs.\nThe group might report that it has no stateful configuration even when\nthere is still some preserved state on a managed instance, for example,\nif you have deleted all PICs but not yet applied those deletions.", "readOnly": true, "type": "boolean" }, "isStateful": { "deprecated": true, - "description": "Output only. [Output Only] A bit indicating whether the managed instance group\nhas stateful configuration, that is, if you have configured any items\nin a stateful policy or in per-instance configs.\nThe group might report that it has no stateful configuration even when\nthere is still some preserved state on a managed instance, for example,\nif you have deleted all PICs but not yet applied those deletions. This\nfield is deprecated in favor of has_stateful_config.", + "description": "Output only. A bit indicating whether the managed instance group\nhas stateful configuration, that is, if you have configured any items\nin a stateful policy or in per-instance configs.\nThe group might report that it has no stateful configuration even when\nthere is still some preserved state on a managed instance, for example,\nif you have deleted all PICs but not yet applied those deletions. This\nfield is deprecated in favor of has_stateful_config.", "readOnly": true, "type": "boolean" }, "perInstanceConfigs": { "$ref": "InstanceGroupManagerStatusStatefulPerInstanceConfigs", - "description": "Output only. [Output Only] Status of per-instance configurations on the instances.", + "description": "Output only. Status of per-instance configurations on the instances.", "readOnly": true } }, @@ -71079,7 +72965,7 @@ "id": "InstanceGroupManagerStatusVersionTarget", "properties": { "isReached": { - "description": "Output only. [Output Only] A bit indicating whether version target has been reached\nin this managed instance group, i.e. all instances are in their target\nversion. Instances' target version are specified byversion field on Instance Group Manager.", + "description": "Output only. A bit indicating whether version target has been reached\nin this managed instance group, i.e. all instances are in their target\nversion. Instances' target version are specified byversion field on Instance Group Manager.", "readOnly": true, "type": "boolean" } @@ -71294,6 +73180,37 @@ }, "description": "Map of accelerator topologies that should have their state changed to\nthe specified value. The key is the hashed topology locus id. It can be\nobtained from the GetAvailableAcceleratorTopologies rpc.", "type": "object" + }, + "acceleratorTopologyConfigurations": { + "additionalProperties": { + "$ref": "InstanceGroupManagersConfigureAcceleratorTopologiesRequestAcceleratorTopologyConfiguration" + }, + "description": "Map of accelerator topologies that should have their state changed to\nthe specified configuration. The map key is the hashed topology locus id.\nIt can be obtained from the GetAvailableAcceleratorTopologies rpc.", + "type": "object" + } + }, + "type": "object" + }, + "InstanceGroupManagersConfigureAcceleratorTopologiesRequestAcceleratorTopologyConfiguration": { + "description": "Configuration for a single accelerator topology.", + "id": "InstanceGroupManagersConfigureAcceleratorTopologiesRequestAcceleratorTopologyConfiguration", + "properties": { + "action": { + "enum": [ + "ACCELERATOR_TOPOLOGY_ACTION_UNSPECIFIED", + "ACTIVATE", + "DEACTIVATE" + ], + "enumDescriptions": [ + "Default value. Should not be used.", + "The accelerator topology is to be activated.", + "The accelerator topology is to be deactivated." + ], + "type": "string" + }, + "externalId": { + "description": "Identifier of the accelerator topology assigned externally to\ndifferentiate who is the owner of the topology. The format needs to\nconform to RFC1035 and be unique. The uniqueness is guaranteed by the\nrequestor. If it is provided on activating the sub-slice it will have to\nbe provided on deactivating as well. This identifier is cleared on\nsuccessful deform of a sub-slice.", + "type": "string" } }, "type": "object" @@ -71371,14 +73288,12 @@ "enum": [ "DEGRADED", "HEALTHY", - "UNHEALTHY", - "UNKNOWN" + "UNHEALTHY" ], "enumDescriptions": [ "All VM are in RUNNING state, but there is an issue with\nthe inter-chip connectivity that makes this part\nof the infrastructure ready to use as a working\ninter-chip connected group only in a degraded mode.\nThis is allowed only for Instances configured with ICI\nresiliency", "All VM are in RUNNING state, there are no issues with the\ninter-chip connectivity.", - "Some VMs may not be in RUNNING state, or there is an\nissue with the inter-chip connectivity that makes this\npart of the infrastructure unsuitable for forming a\nworking inter-chip connected group.", - "No signal available" + "Some VMs may not be in RUNNING state, or there is an\nissue with the inter-chip connectivity that makes this\npart of the infrastructure unsuitable for forming a\nworking inter-chip connected group." ], "type": "string" }, @@ -71480,6 +73395,10 @@ "description": "Timestamp when the last error happened", "format": "google-datetime", "type": "string" + }, + "externalId": { + "description": "Identifier of the accelerator topology assigned externally to\ndifferentiate who is the owner of the topology. This is set in\nConfigureAcceleratorTopologies. If it is provided on activating the\nsub-slice it will have to be provided on deactivating as well.\nThis identifier is cleared on successful deform of a sub-slice.", + "type": "string" } }, "type": "object" @@ -71725,7 +73644,7 @@ "id": "InstanceGroupManagersScopedList", "properties": { "instanceGroupManagers": { - "description": "Output only. [Output Only] The list of managed instance groups that are contained in\nthe specified project and zone.", + "description": "Output only. The list of managed instance groups that are contained in the specified\nproject and zone.", "items": { "$ref": "InstanceGroupManager" }, @@ -71733,7 +73652,7 @@ "type": "array" }, "warning": { - "description": "Output only. [Output Only] The warning that replaces the list of managed instance\ngroups when the list is empty.", + "description": "Output only. The warning that replaces the list of managed instance groups when the list\nis empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -72751,7 +74670,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the instance. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the instance. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -72886,7 +74805,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the instance. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys must be in the format `tagKeys/{tag_key_id}`, and\nvalues are in the format `tagValues/456`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the instance. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" }, "resourcePolicies": { @@ -77203,7 +79122,6 @@ "type": "object" }, "InterconnectGroupsCreateMembersInterconnectInput": { - "description": "LINT.IfChange", "id": "InterconnectGroupsCreateMembersInterconnectInput", "properties": { "adminEnabled": { @@ -78647,6 +80565,23 @@ }, "type": "object" }, + "Interval": { + "description": "Represents a time interval, encoded as a Timestamp start (inclusive) and a\nTimestamp end (exclusive).\n\nThe start must be less than or equal to the end.\nWhen the start equals the end, the interval is empty (matches no time).\nWhen both start and end are unspecified, the interval matches any time.", + "id": "Interval", + "properties": { + "endTime": { + "description": "Optional. Exclusive end of the interval.\n\nIf specified, a Timestamp matching this interval will have to be before the\nend.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Optional. Inclusive start of the interval.\n\nIf specified, a Timestamp matching this interval will have to be the same\nor after the start.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "License": { "description": "Represents a License resource.\n\nA License represents billing and aggregate usage data forpublic andmarketplace images.\n *Caution* This resource is intended for\nuse only by third-party partners who are creatingCloud Marketplace\nimages.", "id": "License", @@ -78769,6 +80704,17 @@ "description": "Represents a License Code resource.\n\nA License Code is a unique identifier used to represent alicense\nresource.\n *Caution* This resource is intended for\nuse only by third-party partners who are creatingCloud Marketplace\nimages.", "id": "LicenseCode", "properties": { + "allowedReplacementLicenses": { + "description": "Specifies licenseCodes of licenses that can replace this license. Note:\nsuch replacements are allowed even if removable_from_disk is false.", + "items": { + "type": "string" + }, + "type": "array" + }, + "appendableToDisk": { + "description": "If true, this license can be appended to an existing disk's set of\nlicenses.", + "type": "boolean" + }, "creationTimestamp": { "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", "readOnly": true, @@ -78785,6 +80731,13 @@ "readOnly": true, "type": "string" }, + "incompatibleLicenses": { + "description": "Specifies licenseCodes of licenses that are incompatible with this license.\nIf a license is incompatible with this license, it cannot be attached to\nthe same disk or image.", + "items": { + "type": "string" + }, + "type": "array" + }, "kind": { "default": "compute#licenseCode", "description": "Output only. [Output Only] Type of resource. Always compute#licenseCode for\nlicenses.", @@ -78798,6 +80751,14 @@ }, "type": "array" }, + "minimumRetention": { + "$ref": "Duration", + "description": "If set, this license will be unable to be removed or replaced once attached\nto a disk until the minimum_retention period has passed." + }, + "multiTenantOnly": { + "description": "If true, this license can only be used on VMs on multi tenant nodes.", + "type": "boolean" + }, "name": { "annotations": { "required": [ @@ -78809,11 +80770,30 @@ "readOnly": true, "type": "string" }, + "osLicense": { + "description": "If true, indicates this is an OS license. Only one OS license can be\nattached to a disk or image at a time.", + "type": "boolean" + }, + "removableFromDisk": { + "description": "If true, this license can be removed from a disk's set of licenses, with no\nreplacement license needed.", + "type": "boolean" + }, + "requiredCoattachedLicenses": { + "description": "Specifies the set of permissible coattached licenseCodes of licenses that\nsatisfy the coattachment requirement of this license. At least one license\nfrom the set must be attached to the same disk or image as this license.", + "items": { + "type": "string" + }, + "type": "array" + }, "selfLink": { "description": "Output only. [Output Only] Server-defined URL for the resource.", "readOnly": true, "type": "string" }, + "soleTenantOnly": { + "description": "If true, this license can only be used on VMs on sole tenant nodes.", + "type": "boolean" + }, "state": { "description": "Output only. [Output Only] Current state of this License Code.", "enum": [ @@ -78837,6 +80817,11 @@ "description": "Output only. [Output Only] If true, the license will remain attached when creating\nimages or snapshots from disks. Otherwise, the license is not transferred.", "readOnly": true, "type": "boolean" + }, + "updateTimestamp": { + "description": "Output only. [Output Only] Last update timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" } }, "type": "object" @@ -78865,7 +80850,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the license. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the license. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -80507,6 +82492,11 @@ "description": "Output only. [Output Only] Information about the termination timestamp of the instance,\nif applicable.", "readOnly": true }, + "shutdownDetails": { + "$ref": "ManagedInstanceShutdownDetails", + "description": "Output only. [Output Only] Specifies the graceful shutdown details if the instance is in\n`PENDING_STOP` state or there is a programmed stop scheduled.", + "readOnly": true + }, "targetStatus": { "description": "Output only. [Output Only] The eventual status of the instance. The instance group\nmanager will not be identified as stable till each managed instance reaches\nits targetStatus.", "enum": [ @@ -80672,6 +82662,12 @@ "ManagedInstanceScheduling": { "id": "ManagedInstanceScheduling", "properties": { + "gracefulShutdownTimestamp": { + "description": "Output only. [Output Only] The timestamp at which the underlying instance will be\ntriggered for graceful shutdown if it is configured. This is in RFC3339 text format.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "terminationTimestamp": { "description": "Output only. [Output Only] The timestamp at which the managed instance will be\nterminated. This is in RFC3339 text format.", "format": "google-datetime", @@ -80681,6 +82677,23 @@ }, "type": "object" }, + "ManagedInstanceShutdownDetails": { + "id": "ManagedInstanceShutdownDetails", + "properties": { + "maxDuration": { + "$ref": "Duration", + "description": "Output only. [Output Only] The duration for graceful shutdown. Only applicable when\nthe instance is in `PENDING_STOP` state.", + "readOnly": true + }, + "requestTimestamp": { + "description": "Output only. [Output Only] Past timestamp indicating the beginning of `PENDING_STOP`\nstate of instance in RFC3339 text format.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ManagedInstanceVersion": { "id": "ManagedInstanceVersion", "properties": { @@ -80789,6 +82802,27 @@ }, "type": "object" }, + "Money": { + "description": "Represents an amount of money with its currency type.", + "id": "Money", + "properties": { + "currencyCode": { + "description": "The three-letter currency code defined in ISO 4217.", + "type": "string" + }, + "nanos": { + "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", + "format": "int32", + "type": "integer" + }, + "units": { + "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "MultiMig": { "description": "Multi-MIG represents a group of managed instance groups.", "id": "MultiMig", @@ -81863,6 +83897,10 @@ }, "type": "array" }, + "serviceClassId": { + "description": "The service class id of the producer service to which the IP was\nassigned.", + "type": "string" + }, "status": { "description": "The status of a connected endpoint to this network attachment.", "enum": [ @@ -83736,6 +85774,13 @@ }, "type": "array" }, + "aliasIpv6Ranges": { + "description": "An array of alias IPv6 ranges for this network interface.\nYou can only specify this field for network interfaces in VPC networks.", + "items": { + "$ref": "AliasIpRange" + }, + "type": "array" + }, "enableVpcScopedDns": { "description": "Optional. If true, DNS resolution will be enabled over this interface. Only valid\nwith network_attachment.", "type": "boolean" @@ -83842,6 +85887,10 @@ "format": "int32", "type": "integer" }, + "serviceClassId": { + "description": "Optional. Producer Service's Service class Id for the region of this network\ninterface. Can only be used with network_attachment. It is not possible to\nuse on its own however, network_attachment can be used without\nservice_class_id.", + "type": "string" + }, "stackType": { "description": "The stack type for this network interface. To assign only IPv4 addresses,\nuse IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.\n\nThis field can be both set at instance creation and update network\ninterface operations.", "enum": [ @@ -85058,6 +87107,8 @@ "GCE_ENDPOINT", "IPSEC_INTERCONNECT", "NAT_AUTO", + "PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0", + "PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1", "PRIVATE_SERVICE_CONNECT", "SERVERLESS", "SHARED_LOADBALANCER_VIP", @@ -85068,6 +87119,8 @@ "VM internal/alias IP, Internal LB service IP, etc.", "A regional internal IP address range reserved for the VLAN attachment\nthat is used in HA VPN over Cloud Interconnect. This regional\ninternal IP address range must not overlap with any IP address range\nof subnet/route in the VPC network and its peering networks. After the\nVLAN attachment is created with the reserved IP address range, when\ncreating a new VPN gateway, its interface IP address is allocated\nfrom the associated VLAN attachment’s IP address range.", "External IP automatically reserved for Cloud NAT.", + "The global external address can only be assigned to Global External\nPassthrough Network Load Balancer forwarding rules, as an Availability\nGroup 0 address.", + "The global external address can only be assigned to Global External\nPassthrough Network Load Balancer forwarding rules, as an Availability\nGroup 1 address.", "A private network IP address that can be used to configure Private\nService Connect. This purpose can be specified only forGLOBAL addresses of Type INTERNAL", "A regional internal IP address range reserved for Serverless.", "A private network IP address that can be shared by multiple Internal\nLoad Balancer forwarding rules.", @@ -85501,6 +87554,7 @@ "description": "Output only. Specifies which subnetwork purposes are supported.", "items": { "enum": [ + "CUSTOM_HARDWARE_LINK", "GLOBAL_MANAGED_PROXY", "INTERNAL_HTTPS_LOAD_BALANCER", "PEER_MIGRATION", @@ -85511,6 +87565,7 @@ "REGIONAL_MANAGED_PROXY" ], "enumDescriptions": [ + "Subnetwork used for Custom Hardware Link.", "Subnet reserved for Global Envoy-based Load Balancing.", "Subnet reserved for Internal HTTP(S) Load Balancing. This is a legacy\npurpose, please use REGIONAL_MANAGED_PROXY instead.", "Subnetwork will be used for Migration from one peered VPC to another.\n(a transient state of subnetwork\nwhile migrating resources from one project to another).", @@ -88138,6 +90193,172 @@ }, "type": "object" }, + "NotificationEndpointAggregatedList": { + "description": "Contains a list of NotificationEndpointsScopedList.", + "id": "NotificationEndpointAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "NotificationEndpointsScopedList", + "description": "Name of the scope containing this set of NotificationEndpoints." + }, + "description": "A list of NotificationEndpointsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#notificationEndpointAggregatedList", + "description": "Output only. Type of resource.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, "NotificationEndpointGrpcSettings": { "description": "Represents a gRPC setting that describes one gRPC notification endpoint and\nthe retry duration attempting to send notification to this endpoint.", "id": "NotificationEndpointGrpcSettings", @@ -88321,6 +90542,143 @@ }, "type": "object" }, + "NotificationEndpointsScopedList": { + "id": "NotificationEndpointsScopedList", + "properties": { + "resources": { + "description": "A list of NotificationEndpoints contained in this scope.", + "items": { + "$ref": "NotificationEndpoint" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of\nnotification endpoints when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, "Operation": { "description": "Represents an Operation resource.\n\nGoogle Compute Engine has three Operation resources:\n\n* [Global](/compute/docs/reference/rest/beta/globalOperations)\n* [Regional](/compute/docs/reference/rest/beta/regionOperations)\n* [Zonal](/compute/docs/reference/rest/beta/zoneOperations)\n\nYou can use an operation resource to manage asynchronous API requests.\nFor more information, readHandling\nAPI responses.\n\nOperations can be global, regional or zonal.\n \n - For global operations, use the `globalOperations`\n resource. \n - For regional operations, use the\n `regionOperations` resource. \n - For zonal operations, use\n the `zoneOperations` resource.\n\n\n\nFor more information, read\nGlobal, Regional, and Zonal Resources.\n\nNote that completed Operation resources have a limited \nretention period.", "id": "Operation", @@ -88389,6 +90747,9 @@ }, "type": "object" }, + "getVersionOperationMetadata": { + "$ref": "GetVersionOperationMetadata" + }, "httpErrorMessage": { "description": "[Output Only] If the operation fails, this field contains the HTTP error\nmessage that was returned, such as `NOT FOUND`.", "type": "string" @@ -91147,6 +93508,20 @@ }, "type": "array" }, + "purpose": { + "description": "Immutable. The purpose of the public delegated prefix.\n\nThis field can only be set for the top-level global public delegated\nprefix. It is an output-only field for the sub-delegates that inherit the\nvalue from the top-level global public delegated prefix. Once the value is\nset, it cannot be changed.\n\nThe field cannot be set for regional public delegated prefixes.\n\nThe supported values are:\n \n \n - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public\n delegated prefix can only be used by Global External Application and\n Proxy Load Balancers to allocate addresses for forwarding rules. This is\n the default value.\n - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The\n global public delegated prefix can only be used by Global External\n Passthrough Network Load Balancers to allocate Availability Group 0\n addresses for forwarding rules.\n - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The\n global public delegated prefix can only be used by Global External\n Passthrough Network Load Balancers to allocate Availability Group 1\n addresses for forwarding rules.", + "enum": [ + "APPLICATION_AND_PROXY_LOAD_BALANCERS", + "PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0", + "PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1" + ], + "enumDescriptions": [ + "The global public delegated prefix can only be used by Global External\nApplication and Proxy Load Balancers to allocate addresses for forwarding\nrules. This is the default value.", + "The global public delegated prefix can only be used by Global External\nPassthrough Network Load Balancers to allocate Availability Group 0\naddresses for forwarding rules.", + "The global public delegated prefix can only be used by Global External\nPassthrough Network Load Balancers to allocate Availability Group 1\naddresses for forwarding rules." + ], + "type": "string" + }, "region": { "description": "Output only. [Output Only] URL of the region where the public delegated prefix resides.\nThis field applies only to the region resource. You must specify this\nfield as part of the HTTP request URL. It is not settable as a field in\nthe request body.", "readOnly": true, @@ -91564,6 +93939,21 @@ "description": "The name of the sub public delegated prefix.", "type": "string" }, + "purpose": { + "description": "Output only. [Output Only] The purpose of the sub public delegated prefix. Inherited\nfrom parent prefix.", + "enum": [ + "APPLICATION_AND_PROXY_LOAD_BALANCERS", + "PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0", + "PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1" + ], + "enumDescriptions": [ + "The global public delegated prefix can only be used by Global External\nApplication and Proxy Load Balancers to allocate addresses for forwarding\nrules. This is the default value.", + "The global public delegated prefix can only be used by Global External\nPassthrough Network Load Balancers to allocate Availability Group 0\naddresses for forwarding rules.", + "The global public delegated prefix can only be used by Global External\nPassthrough Network Load Balancers to allocate Availability Group 1\naddresses for forwarding rules." + ], + "readOnly": true, + "type": "string" + }, "region": { "description": "Output only. [Output Only] The region of the sub public delegated prefix if it is\nregional. If absent, the sub prefix is global.", "readOnly": true, @@ -92684,6 +95074,16 @@ }, "type": "object" }, + "RegionDiskUpdateKmsKeyRequest": { + "id": "RegionDiskUpdateKmsKeyRequest", + "properties": { + "kmsKeyName": { + "description": "Optional. The new KMS key to replace the current one on the disk. If empty, the disk\nwill be re-encrypted using the primary version of the disk's current KMS\nkey.\n\nThe KMS key can be provided in the following formats:\n \n \n - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key\n\n\nWhere project is the project ID or\nproject number.", + "type": "string" + } + }, + "type": "object" + }, "RegionDisksAddResourcePoliciesRequest": { "id": "RegionDisksAddResourcePoliciesRequest", "properties": { @@ -92910,7 +95310,7 @@ "id": "RegionInstanceGroupManagerList", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, @@ -92923,22 +95323,22 @@ }, "kind": { "default": "compute#regionInstanceGroupManagerList", - "description": "Output only. [Output Only] The resource type, which is always\ncompute#instanceGroupManagerList for a list of managed instance groups that\nexist in th regional scope.", + "description": "Output only. The resource type, which is always compute#instanceGroupManagerList for a\nlist of managed instance groups that exist in th regional scope.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -93086,7 +95486,7 @@ "type": "string" }, "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, @@ -93099,22 +95499,22 @@ }, "kind": { "default": "compute#regionInstanceGroupManagerResizeRequestList", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#regionInstanceGroupManagerResizeRequestList for\na list of Resize Requests.", + "description": "Output only. Type of the resource. Alwayscompute#regionInstanceGroupManagerResizeRequestList for\na list of Resize Requests.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", + "description": "Output only. Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", "items": { "type": "string" }, @@ -93122,7 +95522,7 @@ "type": "array" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -94181,6 +96581,16 @@ }, "type": "object" }, + "RegionSnapshotUpdateKmsKeyRequest": { + "id": "RegionSnapshotUpdateKmsKeyRequest", + "properties": { + "kmsKeyName": { + "description": "Optional. The new KMS key to replace the current one on the snapshot. If empty, the\nsnapshot will be re-encrypted using the primary version of the snapshot's\ncurrent KMS key.\n\nThe KMS key can be provided in the following formats:\n \n \n - projects/project_id/locations/region/keyRings/region/cryptoKeys/key", + "type": "string" + } + }, + "type": "object" + }, "RegionTargetHttpsProxiesSetSslCertificatesRequest": { "id": "RegionTargetHttpsProxiesSetSslCertificatesRequest", "properties": { @@ -94237,6 +96647,17 @@ "readOnly": true, "type": "string" }, + "confidentialComputeType": { + "enum": [ + "CONFIDENTIAL_COMPUTE_TYPE_TDX", + "CONFIDENTIAL_COMPUTE_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Intel Trust Domain Extensions.", + "" + ], + "type": "string" + }, "creationTimestamp": { "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", "readOnly": true, @@ -95318,6 +97739,29 @@ }, "type": "object" }, + "ReservationSlotsGetVersionRequest": { + "id": "ReservationSlotsGetVersionRequest", + "properties": { + "sbomSelections": { + "description": "The SBOM selection to return. Duplicate values in the list will be ignored.", + "items": { + "enum": [ + "SBOM_SELECTION_CURRENT", + "SBOM_SELECTION_TARGET", + "SBOM_SELECTION_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ReservationSlotsListResponse": { "description": "A list of reservation slots within a single reservation.", "id": "ReservationSlotsListResponse", @@ -95640,6 +98084,29 @@ }, "type": "object" }, + "ReservationSubBlocksGetVersionRequest": { + "id": "ReservationSubBlocksGetVersionRequest", + "properties": { + "sbomSelections": { + "description": "The SBOM selection to return.", + "items": { + "enum": [ + "SBOM_SELECTION_CURRENT", + "SBOM_SELECTION_TARGET", + "SBOM_SELECTION_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ReservationSubBlocksListResponse": { "description": "A list of reservation subBlocks under a single reservation.", "id": "ReservationSubBlocksListResponse", @@ -97811,6 +100278,11 @@ "readOnly": true, "type": "string" }, + "estimatedCompletionTime": { + "description": "Output only. Estimated timestamp at which the wave will complete. Extrapolated from\ncurrent progress.", + "readOnly": true, + "type": "string" + }, "estimatedTotalResourcesCount": { "description": "Output only. Estimated total count of resources.", "format": "int64", @@ -97830,6 +100302,42 @@ "format": "int64", "readOnly": true, "type": "string" + }, + "locationStatus": { + "additionalProperties": { + "$ref": "RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus" + }, + "description": "Output only. Status of each location in the wave. Map keys (locations) must be\nspecified like \"us-east1\" or \"asia-west1-a\".", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, + "RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus": { + "description": "Represents the status of a location in a wave.", + "id": "RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus", + "properties": { + "state": { + "description": "Output only. Location state of the wave.", + "enum": [ + "STATE_FAILED", + "STATE_IN_PROGRESS", + "STATE_PENDING", + "STATE_SKIPPED", + "STATE_SUCCEEDED", + "STATE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Work on the wave failed.", + "Work on the wave is in progress.", + "Work on the wave is pending.", + "Work on the wave was canceled or skipped.", + "Work on the wave succeeded.", + "Undefined default state. Should never be exposed to users." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -101816,7 +104324,7 @@ "type": "string" }, "ddosImpactedBaselineThreshold": { - "description": "DDoS Protection for Network Load Balancers (and VMs with public IPs)\nbuilds DDos mitigations that minimize collateral damage. It quantifies\nthis as the fraction of a non-abuse baseline that's inadvertently\nblocked.\n\nRules whose collateral damage exceeds ddosImpactedBaselineThreshold will\nnot be deployed. Using a lower value will prioritize keeping collateral\ndamage low, possibly at the cost of its effectiveness in rate limiting\nsome or all of the attack. It should typically be unset, so Advanced DDos\n(and Adaptive Protection) uses the best mitigation it can find. Setting\nthe threshold is advised if there are logs for false positive detections\nwith high collateral damage, and will cause Advanced DDos to attempt to\nfind a less aggressive rule that satisfies the constraint; Failing that,\nit will fall back to no mitigation (smaller attack) or to broader network\nthrottles (larger attack).", + "description": "DDoS Protection for Network Load Balancers (and VMs with public IPs)\nbuilds DDoS mitigations that minimize collateral damage. It quantifies\nthis as the fraction of a non-abuse baseline that's inadvertently\nblocked.\n\nRules whose collateral damage exceeds ddosImpactedBaselineThreshold will\nnot be deployed. Using a lower value will prioritize keeping collateral\ndamage low, possibly at the cost of its effectiveness in rate limiting\nsome or all of the attack. It should typically be unset, so Advanced DDoS\n(and Adaptive Protection) uses the best mitigation it can find. Setting\nthe threshold is advised if there are logs for false positive detections\nwith high collateral damage, and will cause Advanced DDoS to attempt to\nfind a less aggressive rule that satisfies the constraint. If a suitable\nrule cannot be found, the system falls back to either no mitigation for\nsmaller attacks or broader network throttles for larger ones.", "format": "float", "type": "number" }, @@ -103853,12 +106361,12 @@ "description": "Encrypts the snapshot using acustomer-supplied\nencryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must\nprovide the same key if you use the snapshot later. For example, you must\nprovide the encryption key when you create a disk from the encrypted\nsnapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata\nof the snapshot.\n\nIf you do not provide an encryption key when creating the snapshot, then\nthe snapshot will be encrypted using an automatically generated key and you\ndo not need to provide a key to use the snapshot later." }, "snapshotGroupId": { - "description": "Output only. [Output Only] The unique ID of the snapshot group that this snapshot\nbelongs to.", + "description": "Output only. [Output Only] The unique ID of the snapshot group that this snapshot\nbelongs to. The usage of snapshot group feature is restricted.", "readOnly": true, "type": "string" }, "snapshotGroupName": { - "description": "Output only. [Output only] The snapshot group that this snapshot belongs to.", + "description": "Output only. [Output only] The snapshot group that this snapshot belongs to. The usage\nof snapshot group feature is restricted.", "readOnly": true, "type": "string" }, @@ -104424,7 +106932,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the snapshot. Tag keys and values have\nthe same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the snapshot. Tag keys and values have\nthe same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -104522,6 +107030,16 @@ }, "type": "object" }, + "SnapshotUpdateKmsKeyRequest": { + "id": "SnapshotUpdateKmsKeyRequest", + "properties": { + "kmsKeyName": { + "description": "Optional. The new KMS key to replace the current one on the snapshot. If empty, the\nsnapshot will be re-encrypted using the primary version of the snapshot's\ncurrent KMS key.\n\nThe KMS key can be provided in the following formats:\n \n \n - projects/project_id/locations/region/keyRings/key_ring/cryptoKeys/key", + "type": "string" + } + }, + "type": "object" + }, "SnapshotsScopedList": { "id": "SnapshotsScopedList", "properties": { @@ -105949,8 +108467,22 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "postQuantumKeyExchange": { + "description": "One of DEFAULT, ENABLED, orDEFERRED. Controls whether the load balancer negotiates\nX25519MLKEM768 key exchange when clients advertise support for it. When set\nto DEFAULT, or if no SSL Policy is attached to the target\nproxy, the load balancer disallows X25519MLKEM768 key exchange before\nOctober 2026, and allows it afterward. When set to ENABLED,\nthe load balancer allows X25519MLKEM768 key exchange. When set toDEFERRED, the load balancer disallows X25519MLKEM768 key\nexchange until October 2027, and allows it afterward.", + "enum": [ + "DEFAULT", + "DEFERRED", + "ENABLED" + ], + "enumDescriptions": [ + "Default behavior: disabled until October 2026, enabled afterward.", + "Disabled until October 2027, enabled afterward.", + "Enabled now." + ], + "type": "string" + }, "profile": { - "description": "Profile specifies the set of SSL features that can be used by the load\nbalancer when negotiating SSL with clients. This can be one ofCOMPATIBLE, MODERN, RESTRICTED, orCUSTOM. If using CUSTOM, the set of SSL features\nto enable must be specified in the customFeatures field.", + "description": "Profile specifies the set of SSL features that can be used by the load\nbalancer when negotiating SSL with clients. This can be one ofCOMPATIBLE, MODERN, RESTRICTED,FIPS_202205, or CUSTOM. If usingCUSTOM, the set of SSL features to enable must be specified in\nthe customFeatures field. If using FIPS_202205,\nthe min_tls_version field must be set to TLS_1_2.", "enum": [ "COMPATIBLE", "CUSTOM", @@ -106995,7 +109527,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the storage pool. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the storage pool. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -107899,6 +110431,7 @@ }, "purpose": { "enum": [ + "CUSTOM_HARDWARE_LINK", "GLOBAL_MANAGED_PROXY", "INTERNAL_HTTPS_LOAD_BALANCER", "PEER_MIGRATION", @@ -107909,6 +110442,7 @@ "REGIONAL_MANAGED_PROXY" ], "enumDescriptions": [ + "Subnetwork used for Custom Hardware Link.", "Subnet reserved for Global Envoy-based Load Balancing.", "Subnet reserved for Internal HTTP(S) Load Balancing. This is a legacy\npurpose, please use REGIONAL_MANAGED_PROXY instead.", "Subnetwork will be used for Migration from one peered VPC to another.\n(a transient state of subnetwork\nwhile migrating resources from one project to another).", @@ -108419,6 +110953,23 @@ "description": "The range of IP addresses belonging to this subnetwork secondary range.\nProvide this property when you create the subnetwork. Ranges must be\nunique and non-overlapping with all primary and secondary IP ranges\nwithin a network. Both IPv4 and IPv6 ranges are supported. For IPv4,\nthe range can be any range listed in theValid\nranges list.\n\nFor IPv6:\nThe range must have a /64 prefix length.\nThe range must be omitted, for auto-allocation from Google-defined ULA\nIPv6 range.\nFor BYOGUA internal IPv6 secondary range, the range may be specified\nalong with the `ipCollection` field.\nIf an `ipCollection` is specified, the requested ip_cidr_range must lie\nwithin the range of the PDP referenced by the `ipCollection` field for\nallocation.\nIf `ipCollection` field is specified, but ip_cidr_range is not,\nthe range is auto-allocated from the PDP referenced by the `ipCollection`\nfield.", "type": "string" }, + "ipCollection": { + "description": "Reference to a Public Delegated Prefix (PDP) for BYOIP.\nThis field should be specified for configuring BYOGUA internal IPv6\nsecondary range.\nWhen specified along with the ip_cidr_range, the ip_cidr_range must lie\nwithin the PDP referenced by the `ipCollection` field.\nWhen specified without the ip_cidr_range, the range is auto-allocated\nfrom the PDP referenced by the `ipCollection` field.", + "type": "string" + }, + "ipVersion": { + "enum": [ + "IPV4", + "IPV6", + "IP_VERSION_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "Treated as IPV4 for backward-compatibility." + ], + "type": "string" + }, "rangeName": { "description": "The name associated with this subnetwork secondary range, used when adding\nan alias IP/IPv6 range to a VM instance.\nThe name must be 1-63 characters long, and comply withRFC1035.\nThe name must be unique within the subnetwork.", "type": "string" @@ -113070,6 +115621,11 @@ "description": "[Output Only] Server-defined URL for the resource.", "type": "string" }, + "status": { + "$ref": "UrlMapStatus", + "description": "Output only. [Output Only] The status of the URL map.", + "readOnly": true + }, "tests": { "description": "The list of expected URL mapping tests. Request to update theUrlMap succeeds only if all test cases pass. You can specify a\nmaximum of 100 tests per UrlMap.\n\nNot supported when the URL map is bound to a target gRPC proxy that\nhas validateForProxyless field set to true.", "items": { @@ -113237,6 +115793,25 @@ }, "type": "object" }, + "UrlMapQuotaUsage": { + "description": "Message representing the quota usage for a UrlMap.", + "id": "UrlMapQuotaUsage", + "properties": { + "forwardingRules": { + "description": "Output only. The number of forwarding rules that uses this UrlMap.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "units": { + "description": "Output only. The number of quota units calculated for this UrlMap.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "UrlMapReference": { "id": "UrlMapReference", "properties": { @@ -113246,6 +115821,18 @@ }, "type": "object" }, + "UrlMapStatus": { + "description": "[Output Only] The status of the URL map.", + "id": "UrlMapStatus", + "properties": { + "quotaUsage": { + "$ref": "UrlMapQuotaUsage", + "description": "Output only. Summary of quota usage for given UrlMap.", + "readOnly": true + } + }, + "type": "object" + }, "UrlMapTest": { "description": "Message for the expected URL mappings.", "id": "UrlMapTest", @@ -113314,6 +115901,11 @@ "description": "Whether the given UrlMap can be successfully loaded.\nIf false, 'loadErrors' indicates the reasons.", "type": "boolean" }, + "quotaUsage": { + "$ref": "UrlMapQuotaUsage", + "description": "Output only. Summary of quota usage for given UrlMap.", + "readOnly": true + }, "testFailures": { "items": { "$ref": "TestFailure" @@ -113720,6 +116312,7 @@ }, "purpose": { "enum": [ + "CUSTOM_HARDWARE_LINK", "GLOBAL_MANAGED_PROXY", "INTERNAL_HTTPS_LOAD_BALANCER", "PEER_MIGRATION", @@ -113730,6 +116323,7 @@ "REGIONAL_MANAGED_PROXY" ], "enumDescriptions": [ + "Subnetwork used for Custom Hardware Link.", "Subnet reserved for Global Envoy-based Load Balancing.", "Subnet reserved for Internal HTTP(S) Load Balancing. This is a legacy\npurpose, please use REGIONAL_MANAGED_PROXY instead.", "Subnetwork will be used for Migration from one peered VPC to another.\n(a transient state of subnetwork\nwhile migrating resources from one project to another).", diff --git a/discovery/compute-v1.json b/discovery/compute-v1.json index 60105a4c611..6cb01d15565 100644 --- a/discovery/compute-v1.json +++ b/discovery/compute-v1.json @@ -1201,6 +1201,72 @@ "https://www.googleapis.com/auth/compute" ] }, + "aggregatedList": { + "description": "Retrieves the list of all BackendBucket resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, it is recommended that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/backendBuckets", + "httpMethod": "GET", + "id": "compute.backendBuckets.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/aggregated/backendBuckets", + "response": { + "$ref": "BackendBucketAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "delete": { "description": "Deletes the specified BackendBucket resource.", "flatPath": "projects/{project}/global/backendBuckets/{backendBucket}", @@ -1450,6 +1516,61 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "listUsable": { + "description": "Retrieves a list of all usable backend buckets in the specified project.", + "flatPath": "projects/{project}/global/backendBuckets/listUsable", + "httpMethod": "GET", + "id": "compute.backendBuckets.listUsable", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/backendBuckets/listUsable", + "response": { + "$ref": "BackendBucketListUsable" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "patch": { "description": "Updates the specified BackendBucket resource with the data included in the\nrequest. This method supportsPATCH\nsemantics and uses theJSON merge\npatch format and processing rules.", "flatPath": "projects/{project}/global/backendBuckets/{backendBucket}", @@ -3730,6 +3851,55 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] + }, + "updateKmsKey": { + "description": "Rotates the customer-managed\nencryption key to the latest version for the specified persistent disk.", + "flatPath": "projects/{project}/zones/{zone}/disks/{disk}/updateKmsKey", + "httpMethod": "POST", + "id": "compute.disks.updateKmsKey", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the Disk resource, should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/disks/{disk}/updateKmsKey", + "request": { + "$ref": "DiskUpdateKmsKeyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } } }, @@ -7084,13 +7254,13 @@ } } }, - "healthChecks": { + "globalVmExtensionPolicies": { "methods": { "aggregatedList": { - "description": "Retrieves the list of all HealthCheck resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/healthChecks", + "description": "Retrieves the list of all VM Extension Policy resources\navailable to the specified project.\n\nTo prevent failure, it's recommended that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/vmExtensionPolicies", "httpMethod": "GET", - "id": "compute.healthChecks.aggregatedList", + "id": "compute.globalVmExtensionPolicies.aggregatedList", "parameterOrder": [ "project" ], @@ -7142,9 +7312,9 @@ "type": "string" } }, - "path": "projects/{project}/aggregated/healthChecks", + "path": "projects/{project}/aggregated/vmExtensionPolicies", "response": { - "$ref": "HealthChecksAggregatedList" + "$ref": "VmExtensionPolicyAggregatedListResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -7153,19 +7323,18 @@ ] }, "delete": { - "description": "Deletes the specified HealthCheck resource.", - "flatPath": "projects/{project}/global/healthChecks/{healthCheck}", - "httpMethod": "DELETE", - "id": "compute.healthChecks.delete", + "description": "Purge scoped resources (zonal policies) from a global VM extension\npolicy, and then delete the global VM extension policy. Purge of the scoped\nresources is a pre-condition of the global VM extension policy deletion.\nThe deletion of the global VM extension policy happens after the purge\nrollout is done, so it's not a part of the LRO. It's an automatic process\nthat triggers in the backend.", + "flatPath": "projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete", + "httpMethod": "POST", + "id": "compute.globalVmExtensionPolicies.delete", "parameterOrder": [ "project", - "healthCheck" + "globalVmExtensionPolicy" ], "parameters": { - "healthCheck": { - "description": "Name of the HealthCheck resource to delete.", + "globalVmExtensionPolicy": { + "description": "Name of the global VM extension policy to purge scoped resources for.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, @@ -7182,7 +7351,10 @@ "type": "string" } }, - "path": "projects/{project}/global/healthChecks/{healthCheck}", + "path": "projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete", + "request": { + "$ref": "GlobalVmExtensionPolicyRolloutOperationRolloutInput" + }, "response": { "$ref": "Operation" }, @@ -7192,17 +7364,17 @@ ] }, "get": { - "description": "Returns the specified HealthCheck resource.", - "flatPath": "projects/{project}/global/healthChecks/{healthCheck}", + "description": "Gets details of a global VM extension policy.", + "flatPath": "projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", "httpMethod": "GET", - "id": "compute.healthChecks.get", + "id": "compute.globalVmExtensionPolicies.get", "parameterOrder": [ "project", - "healthCheck" + "globalVmExtensionPolicy" ], "parameters": { - "healthCheck": { - "description": "Name of the HealthCheck resource to return.", + "globalVmExtensionPolicy": { + "description": "Name of the GlobalVmExtensionPolicy resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -7216,9 +7388,9 @@ "type": "string" } }, - "path": "projects/{project}/global/healthChecks/{healthCheck}", + "path": "projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", "response": { - "$ref": "HealthCheck" + "$ref": "GlobalVmExtensionPolicy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -7227,10 +7399,10 @@ ] }, "insert": { - "description": "Creates a HealthCheck resource in the specified project using the data\nincluded in the request.", - "flatPath": "projects/{project}/global/healthChecks", + "description": "Creates a new project level GlobalVmExtensionPolicy.", + "flatPath": "projects/{project}/global/vmExtensionPolicies", "httpMethod": "POST", - "id": "compute.healthChecks.insert", + "id": "compute.globalVmExtensionPolicies.insert", "parameterOrder": [ "project" ], @@ -7248,9 +7420,9 @@ "type": "string" } }, - "path": "projects/{project}/global/healthChecks", + "path": "projects/{project}/global/vmExtensionPolicies", "request": { - "$ref": "HealthCheck" + "$ref": "GlobalVmExtensionPolicy" }, "response": { "$ref": "Operation" @@ -7261,10 +7433,10 @@ ] }, "list": { - "description": "Retrieves the list of HealthCheck resources available to the specified\nproject.", - "flatPath": "projects/{project}/global/healthChecks", + "description": "Lists global VM extension policies.", + "flatPath": "projects/{project}/global/vmExtensionPolicies", "httpMethod": "GET", - "id": "compute.healthChecks.list", + "id": "compute.globalVmExtensionPolicies.list", "parameterOrder": [ "project" ], @@ -7305,9 +7477,9 @@ "type": "boolean" } }, - "path": "projects/{project}/global/healthChecks", + "path": "projects/{project}/global/vmExtensionPolicies", "response": { - "$ref": "HealthCheckList" + "$ref": "GlobalVmExtensionPolicyList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -7315,20 +7487,19 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "patch": { - "description": "Updates a HealthCheck resource in the specified project using the data\nincluded in the request. This method supportsPATCH\nsemantics and uses theJSON merge\npatch format and processing rules.", - "flatPath": "projects/{project}/global/healthChecks/{healthCheck}", + "update": { + "description": "Updates a global VM extension policy.", + "flatPath": "projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", "httpMethod": "PATCH", - "id": "compute.healthChecks.patch", + "id": "compute.globalVmExtensionPolicies.update", "parameterOrder": [ "project", - "healthCheck" + "globalVmExtensionPolicy" ], "parameters": { - "healthCheck": { - "description": "Name of the HealthCheck resource to patch.", + "globalVmExtensionPolicy": { + "description": "Name of the global VM extension policy to update.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, @@ -7345,9 +7516,9 @@ "type": "string" } }, - "path": "projects/{project}/global/healthChecks/{healthCheck}", + "path": "projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", "request": { - "$ref": "HealthCheck" + "$ref": "GlobalVmExtensionPolicy" }, "response": { "$ref": "Operation" @@ -7356,103 +7527,89 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/global/healthChecks/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.healthChecks.testIamPermissions", + } + } + }, + "healthChecks": { + "methods": { + "aggregatedList": { + "description": "Retrieves the list of all HealthCheck resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/healthChecks", + "httpMethod": "GET", + "id": "compute.healthChecks.aggregatedList", "parameterOrder": [ - "project", - "resource" + "project" ], "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", "type": "string" - } - }, - "path": "projects/{project}/global/healthChecks/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "update": { - "description": "Updates a HealthCheck resource in the specified project using the data\nincluded in the request.", - "flatPath": "projects/{project}/global/healthChecks/{healthCheck}", - "httpMethod": "PUT", - "id": "compute.healthChecks.update", - "parameterOrder": [ - "project", - "healthCheck" - ], - "parameters": { - "healthCheck": { - "description": "Name of the HealthCheck resource to update.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", "type": "string" }, "project": { - "description": "Project ID for this request.", + "description": "Name of the project scoping this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", "location": "query", "type": "string" } }, - "path": "projects/{project}/global/healthChecks/{healthCheck}", - "request": { - "$ref": "HealthCheck" - }, + "path": "projects/{project}/aggregated/healthChecks", "response": { - "$ref": "Operation" + "$ref": "HealthChecksAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "httpHealthChecks": { - "methods": { + }, "delete": { - "description": "Deletes the specified HttpHealthCheck resource.", - "flatPath": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "description": "Deletes the specified HealthCheck resource.", + "flatPath": "projects/{project}/global/healthChecks/{healthCheck}", "httpMethod": "DELETE", - "id": "compute.httpHealthChecks.delete", + "id": "compute.healthChecks.delete", "parameterOrder": [ "project", - "httpHealthCheck" + "healthCheck" ], "parameters": { - "httpHealthCheck": { - "description": "Name of the HttpHealthCheck resource to delete.", + "healthCheck": { + "description": "Name of the HealthCheck resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -7471,7 +7628,7 @@ "type": "string" } }, - "path": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "path": "projects/{project}/global/healthChecks/{healthCheck}", "response": { "$ref": "Operation" }, @@ -7481,17 +7638,17 @@ ] }, "get": { - "description": "Returns the specified HttpHealthCheck resource.", - "flatPath": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "description": "Returns the specified HealthCheck resource.", + "flatPath": "projects/{project}/global/healthChecks/{healthCheck}", "httpMethod": "GET", - "id": "compute.httpHealthChecks.get", + "id": "compute.healthChecks.get", "parameterOrder": [ "project", - "httpHealthCheck" + "healthCheck" ], "parameters": { - "httpHealthCheck": { - "description": "Name of the HttpHealthCheck resource to return.", + "healthCheck": { + "description": "Name of the HealthCheck resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -7505,9 +7662,9 @@ "type": "string" } }, - "path": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "path": "projects/{project}/global/healthChecks/{healthCheck}", "response": { - "$ref": "HttpHealthCheck" + "$ref": "HealthCheck" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -7516,10 +7673,10 @@ ] }, "insert": { - "description": "Creates a HttpHealthCheck resource in the specified project using the data\nincluded in the request.", - "flatPath": "projects/{project}/global/httpHealthChecks", + "description": "Creates a HealthCheck resource in the specified project using the data\nincluded in the request.", + "flatPath": "projects/{project}/global/healthChecks", "httpMethod": "POST", - "id": "compute.httpHealthChecks.insert", + "id": "compute.healthChecks.insert", "parameterOrder": [ "project" ], @@ -7537,9 +7694,9 @@ "type": "string" } }, - "path": "projects/{project}/global/httpHealthChecks", + "path": "projects/{project}/global/healthChecks", "request": { - "$ref": "HttpHealthCheck" + "$ref": "HealthCheck" }, "response": { "$ref": "Operation" @@ -7550,10 +7707,299 @@ ] }, "list": { - "description": "Retrieves the list of HttpHealthCheck resources available to the specified\nproject.", - "flatPath": "projects/{project}/global/httpHealthChecks", + "description": "Retrieves the list of HealthCheck resources available to the specified\nproject.", + "flatPath": "projects/{project}/global/healthChecks", "httpMethod": "GET", - "id": "compute.httpHealthChecks.list", + "id": "compute.healthChecks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/healthChecks", + "response": { + "$ref": "HealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates a HealthCheck resource in the specified project using the data\nincluded in the request. This method supportsPATCH\nsemantics and uses theJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/global/healthChecks/{healthCheck}", + "httpMethod": "PATCH", + "id": "compute.healthChecks.patch", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/healthChecks/{healthCheck}", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/global/healthChecks/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.healthChecks.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/healthChecks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates a HealthCheck resource in the specified project using the data\nincluded in the request.", + "flatPath": "projects/{project}/global/healthChecks/{healthCheck}", + "httpMethod": "PUT", + "id": "compute.healthChecks.update", + "parameterOrder": [ + "project", + "healthCheck" + ], + "parameters": { + "healthCheck": { + "description": "Name of the HealthCheck resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/healthChecks/{healthCheck}", + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "httpHealthChecks": { + "methods": { + "delete": { + "description": "Deletes the specified HttpHealthCheck resource.", + "flatPath": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "httpMethod": "DELETE", + "id": "compute.httpHealthChecks.delete", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified HttpHealthCheck resource.", + "flatPath": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "httpMethod": "GET", + "id": "compute.httpHealthChecks.get", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "description": "Name of the HttpHealthCheck resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "response": { + "$ref": "HttpHealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a HttpHealthCheck resource in the specified project using the data\nincluded in the request.", + "flatPath": "projects/{project}/global/httpHealthChecks", + "httpMethod": "POST", + "id": "compute.httpHealthChecks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/httpHealthChecks", + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of HttpHealthCheck resources available to the specified\nproject.", + "flatPath": "projects/{project}/global/httpHealthChecks", + "httpMethod": "GET", + "id": "compute.httpHealthChecks.list", "parameterOrder": [ "project" ], @@ -13326,6 +13772,11 @@ "instance" ], "parameters": { + "discardLocalSsd": { + "description": "Whether to discard local SSDs from the instance during restart\ndefault value is false.", + "location": "query", + "type": "boolean" + }, "instance": { "description": "Name of the instance resource to update.", "location": "path", @@ -13615,86 +14066,20 @@ } } }, - "instantSnapshots": { + "instantSnapshotGroups": { "methods": { - "aggregatedList": { - "description": "Retrieves an aggregated list of instantSnapshots.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/instantSnapshots", - "httpMethod": "GET", - "id": "compute.instantSnapshots.aggregatedList", - "parameterOrder": [ - "project" - ], - "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" - }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", - "type": "string" - } - }, - "path": "projects/{project}/aggregated/instantSnapshots", - "response": { - "$ref": "InstantSnapshotAggregatedList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, "delete": { - "description": "Deletes the specified InstantSnapshot resource. Keep in mind that deleting\na single instantSnapshot might not necessarily delete all the data on that\ninstantSnapshot. If any data on the instantSnapshot that is marked for\ndeletion is needed for subsequent instantSnapshots, the data will be moved\nto the next corresponding instantSnapshot.\n\nFor more information, seeDeleting\ninstantSnapshots.", - "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", + "description": "deletes a Zonal InstantSnapshotGroup resource", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}", "httpMethod": "DELETE", - "id": "compute.instantSnapshots.delete", + "id": "compute.instantSnapshotGroups.delete", "parameterOrder": [ "project", "zone", - "instantSnapshot" + "instantSnapshotGroup" ], "parameters": { - "instantSnapshot": { + "instantSnapshotGroup": { "description": "Name of the InstantSnapshot resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", @@ -13721,7 +14106,7 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", + "path": "projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}", "response": { "$ref": "Operation" }, @@ -13731,18 +14116,18 @@ ] }, "get": { - "description": "Returns the specified InstantSnapshot resource in the specified zone.", - "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", + "description": "returns the specified InstantSnapshotGroup resource in the specified zone.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}", "httpMethod": "GET", - "id": "compute.instantSnapshots.get", + "id": "compute.instantSnapshotGroups.get", "parameterOrder": [ "project", "zone", - "instantSnapshot" + "instantSnapshotGroup" ], "parameters": { - "instantSnapshot": { - "description": "Name of the InstantSnapshot resource to return.", + "instantSnapshotGroup": { + "description": "Name of the InstantSnapshotGroup resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -13763,9 +14148,9 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", + "path": "projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}", "response": { - "$ref": "InstantSnapshot" + "$ref": "InstantSnapshotGroup" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -13775,9 +14160,9 @@ }, "getIamPolicy": { "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", - "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/getIamPolicy", "httpMethod": "GET", - "id": "compute.instantSnapshots.getIamPolicy", + "id": "compute.instantSnapshotGroups.getIamPolicy", "parameterOrder": [ "project", "zone", @@ -13812,7 +14197,7 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy", + "path": "projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/getIamPolicy", "response": { "$ref": "Policy" }, @@ -13823,10 +14208,10 @@ ] }, "insert": { - "description": "Creates an instant snapshot in the specified zone.", - "flatPath": "projects/{project}/zones/{zone}/instantSnapshots", + "description": "inserts a Zonal InstantSnapshotGroup resource", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshotGroups", "httpMethod": "POST", - "id": "compute.instantSnapshots.insert", + "id": "compute.instantSnapshotGroups.insert", "parameterOrder": [ "project", "zone" @@ -13844,6 +14229,11 @@ "location": "query", "type": "string" }, + "sourceConsistencyGroup": { + "description": "begin_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, "zone": { "description": "Name of the zone for this request.", "location": "path", @@ -13852,9 +14242,9 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/instantSnapshots", + "path": "projects/{project}/zones/{zone}/instantSnapshotGroups", "request": { - "$ref": "InstantSnapshot" + "$ref": "InstantSnapshotGroup" }, "response": { "$ref": "Operation" @@ -13865,10 +14255,10 @@ ] }, "list": { - "description": "Retrieves the list of InstantSnapshot resources contained within\nthe specified zone.", - "flatPath": "projects/{project}/zones/{zone}/instantSnapshots", + "description": "retrieves the list of InstantSnapshotGroup resources contained within\nthe specified zone.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshotGroups", "httpMethod": "GET", - "id": "compute.instantSnapshots.list", + "id": "compute.instantSnapshotGroups.list", "parameterOrder": [ "project", "zone" @@ -13917,9 +14307,9 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/instantSnapshots", + "path": "projects/{project}/zones/{zone}/instantSnapshotGroups", "response": { - "$ref": "InstantSnapshotList" + "$ref": "ListInstantSnapshotGroups" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -13929,9 +14319,9 @@ }, "setIamPolicy": { "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", - "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/setIamPolicy", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/setIamPolicy", "httpMethod": "POST", - "id": "compute.instantSnapshots.setIamPolicy", + "id": "compute.instantSnapshotGroups.setIamPolicy", "parameterOrder": [ "project", "zone", @@ -13960,7 +14350,7 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/setIamPolicy", + "path": "projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/setIamPolicy", "request": { "$ref": "ZoneSetPolicyRequest" }, @@ -13972,11 +14362,11 @@ "https://www.googleapis.com/auth/compute" ] }, - "setLabels": { - "description": "Sets the labels on a instantSnapshot in the given zone. To learn more about\nlabels, read the Labeling\nResources documentation.", - "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/setLabels", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/testIamPermissions", "httpMethod": "POST", - "id": "compute.instantSnapshots.setLabels", + "id": "compute.instantSnapshotGroups.testIamPermissions", "parameterOrder": [ "project", "zone", @@ -13990,11 +14380,6 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, "resource": { "description": "Name or id of the resource for this request.", "location": "path", @@ -14010,10 +14395,128 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/setLabels", + "path": "projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/testIamPermissions", "request": { - "$ref": "ZoneSetLabelsRequest" + "$ref": "TestPermissionsRequest" }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "instantSnapshots": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of instantSnapshots.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/instantSnapshots", + "httpMethod": "GET", + "id": "compute.instantSnapshots.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/aggregated/instantSnapshots", + "response": { + "$ref": "InstantSnapshotAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified InstantSnapshot resource. Keep in mind that deleting\na single instantSnapshot might not necessarily delete all the data on that\ninstantSnapshot. If any data on the instantSnapshot that is marked for\ndeletion is needed for subsequent instantSnapshots, the data will be moved\nto the next corresponding instantSnapshot.\n\nFor more information, seeDeleting\ninstantSnapshots.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", + "httpMethod": "DELETE", + "id": "compute.instantSnapshots.delete", + "parameterOrder": [ + "project", + "zone", + "instantSnapshot" + ], + "parameters": { + "instantSnapshot": { + "description": "Name of the InstantSnapshot resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", "response": { "$ref": "Operation" }, @@ -14022,11 +14525,303 @@ "https://www.googleapis.com/auth/compute" ] }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.instantSnapshots.testIamPermissions", + "get": { + "description": "Returns the specified InstantSnapshot resource in the specified zone.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", + "httpMethod": "GET", + "id": "compute.instantSnapshots.get", + "parameterOrder": [ + "project", + "zone", + "instantSnapshot" + ], + "parameters": { + "instantSnapshot": { + "description": "Name of the InstantSnapshot resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}", + "response": { + "$ref": "InstantSnapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.instantSnapshots.getIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates an instant snapshot in the specified zone.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshots", + "httpMethod": "POST", + "id": "compute.instantSnapshots.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instantSnapshots", + "request": { + "$ref": "InstantSnapshot" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of InstantSnapshot resources contained within\nthe specified zone.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshots", + "httpMethod": "GET", + "id": "compute.instantSnapshots.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instantSnapshots", + "response": { + "$ref": "InstantSnapshotList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.instantSnapshots.setIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/setIamPolicy", + "request": { + "$ref": "ZoneSetPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "description": "Sets the labels on a instantSnapshot in the given zone. To learn more about\nlabels, read the Labeling\nResources documentation.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/setLabels", + "httpMethod": "POST", + "id": "compute.instantSnapshots.setLabels", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/setLabels", + "request": { + "$ref": "ZoneSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/zones/{zone}/instantSnapshots/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.instantSnapshots.testIamPermissions", "parameterOrder": [ "project", "zone", @@ -15750,6 +16545,84 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.\n *Caution* This resource is intended\nfor use only by third-party partners who are creatingCloud Marketplace\nimages.", + "flatPath": "projects/{project}/global/licenseCodes/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.licenseCodes.getIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/licenseCodes/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.\n *Caution* This resource is intended\nfor use only by third-party partners who are creatingCloud Marketplace\nimages.", + "flatPath": "projects/{project}/global/licenseCodes/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.licenseCodes.setIamPolicy", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/licenseCodes/{resource}/setIamPolicy", + "request": { + "$ref": "GlobalSetPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "testIamPermissions": { "description": "Returns permissions that a caller has on the specified resource.\n *Caution* This resource is intended\nfor use only by third-party partners who are creatingCloud Marketplace\nimages.", "flatPath": "projects/{project}/global/licenseCodes/{resource}/testIamPermissions", @@ -18901,6 +19774,48 @@ "https://www.googleapis.com/auth/compute" ] }, + "cancelRequestRemovePeering": { + "description": "Cancel requests to remove a peering from the specified network. Applicable\nonly for PeeringConnection with update_strategy=CONSENSUS. Cancels a\nrequest to remove a peering from the specified network.", + "flatPath": "projects/{project}/global/networks/{network}/cancelRequestRemovePeering", + "httpMethod": "POST", + "id": "compute.networks.cancelRequestRemovePeering", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network resource to remove peering from.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/networks/{network}/cancelRequestRemovePeering", + "request": { + "$ref": "NetworksCancelRequestRemovePeeringRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "delete": { "description": "Deletes the specified network.", "flatPath": "projects/{project}/global/networks/{network}", @@ -23364,21 +24279,21 @@ } } }, - "regionBackendServices": { + "regionBackendBuckets": { "methods": { "delete": { - "description": "Deletes the specified regional BackendService resource.", - "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}", + "description": "Deletes the specified regional BackendBucket resource.", + "flatPath": "projects/{project}/regions/{region}/backendBuckets/{backendBucket}", "httpMethod": "DELETE", - "id": "compute.regionBackendServices.delete", + "id": "compute.regionBackendBuckets.delete", "parameterOrder": [ "project", "region", - "backendService" + "backendBucket" ], "parameters": { - "backendService": { - "description": "Name of the BackendService resource to delete.", + "backendBucket": { + "description": "Name of the BackendBucket resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -23399,12 +24314,12 @@ "type": "string" }, "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).\nend_interface: MixerMutationRequestBuilder", "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/backendServices/{backendService}", + "path": "projects/{project}/regions/{region}/backendBuckets/{backendBucket}", "response": { "$ref": "Operation" }, @@ -23414,18 +24329,18 @@ ] }, "get": { - "description": "Returns the specified regional BackendService resource.", - "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}", + "description": "Returns the specified regional BackendBucket resource.", + "flatPath": "projects/{project}/regions/{region}/backendBuckets/{backendBucket}", "httpMethod": "GET", - "id": "compute.regionBackendServices.get", + "id": "compute.regionBackendBuckets.get", "parameterOrder": [ "project", "region", - "backendService" + "backendBucket" ], "parameters": { - "backendService": { - "description": "Name of the BackendService resource to return.", + "backendBucket": { + "description": "Name of the BackendBucket resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -23446,54 +24361,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/backendServices/{backendService}", + "path": "projects/{project}/regions/{region}/backendBuckets/{backendBucket}", "response": { - "$ref": "BackendService" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getHealth": { - "description": "Gets the most recent health check results for this\nregional BackendService.", - "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}/getHealth", - "httpMethod": "POST", - "id": "compute.regionBackendServices.getHealth", - "parameterOrder": [ - "project", - "region", - "backendService" - ], - "parameters": { - "backendService": { - "description": "Name of the BackendService resource for which to get health.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "project": { - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/backendServices/{backendService}/getHealth", - "request": { - "$ref": "ResourceGroupReference" - }, - "response": { - "$ref": "BackendServiceGroupHealth" + "$ref": "BackendBucket" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -23503,9 +24373,9 @@ }, "getIamPolicy": { "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", - "flatPath": "projects/{project}/regions/{region}/backendServices/{resource}/getIamPolicy", + "flatPath": "projects/{project}/regions/{region}/backendBuckets/{resource}/getIamPolicy", "httpMethod": "GET", - "id": "compute.regionBackendServices.getIamPolicy", + "id": "compute.regionBackendBuckets.getIamPolicy", "parameterOrder": [ "project", "region", @@ -23540,7 +24410,7 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/backendServices/{resource}/getIamPolicy", + "path": "projects/{project}/regions/{region}/backendBuckets/{resource}/getIamPolicy", "response": { "$ref": "Policy" }, @@ -23551,10 +24421,10 @@ ] }, "insert": { - "description": "Creates a regional BackendService resource in the specified project using\nthe data included in the request. For more information, see\nBackend services overview.", - "flatPath": "projects/{project}/regions/{region}/backendServices", + "description": "Creates a RegionBackendBucket in the specified project in the given scope\nusing the parameters that are included in the request.", + "flatPath": "projects/{project}/regions/{region}/backendBuckets", "httpMethod": "POST", - "id": "compute.regionBackendServices.insert", + "id": "compute.regionBackendBuckets.insert", "parameterOrder": [ "project", "region" @@ -23568,7 +24438,7 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region of this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -23580,9 +24450,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/backendServices", + "path": "projects/{project}/regions/{region}/backendBuckets", "request": { - "$ref": "BackendService" + "$ref": "BackendBucket" }, "response": { "$ref": "Operation" @@ -23593,10 +24463,10 @@ ] }, "list": { - "description": "Retrieves the list of regional BackendService resources available to the\nspecified project in the given region.", - "flatPath": "projects/{project}/regions/{region}/backendServices", + "description": "Retrieves the list of BackendBucket resources available to the specified\nproject in the given region.", + "flatPath": "projects/{project}/regions/{region}/backendBuckets", "httpMethod": "GET", - "id": "compute.regionBackendServices.list", + "id": "compute.regionBackendBuckets.list", "parameterOrder": [ "project", "region" @@ -23633,7 +24503,7 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region of this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -23645,9 +24515,9 @@ "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/backendServices", + "path": "projects/{project}/regions/{region}/backendBuckets", "response": { - "$ref": "BackendServiceList" + "$ref": "BackendBucketList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -23656,10 +24526,10 @@ ] }, "listUsable": { - "description": "Retrieves a list of all usable backend services in the specified project in\nthe given region.", - "flatPath": "projects/{project}/regions/{region}/backendServices/listUsable", + "description": "Retrieves a list of all usable backend buckets in the specified project in\nthe given region.", + "flatPath": "projects/{project}/regions/{region}/backendBuckets/listUsable", "httpMethod": "GET", - "id": "compute.regionBackendServices.listUsable", + "id": "compute.regionBackendBuckets.listUsable", "parameterOrder": [ "project", "region" @@ -23698,6 +24568,7 @@ "region": { "description": "Name of the region scoping this request.\nIt must be a string that meets the requirements in RFC1035.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -23707,9 +24578,9 @@ "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/backendServices/listUsable", + "path": "projects/{project}/regions/{region}/backendBuckets/listUsable", "response": { - "$ref": "BackendServiceListUsable" + "$ref": "BackendBucketListUsable" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -23718,10 +24589,155 @@ ] }, "patch": { - "description": "Updates the specified regional BackendService resource with the data\nincluded in the request. For more information, see \nUnderstanding backend services This method\nsupports PATCH semantics and uses the JSON merge\npatch format and processing rules.", - "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}", + "description": "Updates the specified BackendBucket resource with the data included in the\nrequest. This method supportsPATCH\nsemantics and uses theJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/regions/{region}/backendBuckets/{backendBucket}", "httpMethod": "PATCH", - "id": "compute.regionBackendServices.patch", + "id": "compute.regionBackendBuckets.patch", + "parameterOrder": [ + "project", + "region", + "backendBucket" + ], + "parameters": { + "backendBucket": { + "description": "Name of the BackendBucket resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).\nend_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/backendBuckets/{backendBucket}", + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/regions/{region}/backendBuckets/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.regionBackendBuckets.setIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/backendBuckets/{resource}/setIamPolicy", + "request": { + "$ref": "RegionSetPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/backendBuckets/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.regionBackendBuckets.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/backendBuckets/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionBackendServices": { + "methods": { + "delete": { + "description": "Deletes the specified regional BackendService resource.", + "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "DELETE", + "id": "compute.regionBackendServices.delete", "parameterOrder": [ "project", "region", @@ -23729,7 +24745,358 @@ ], "parameters": { "backendService": { - "description": "Name of the BackendService resource to patch.", + "description": "Name of the BackendService resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/backendServices/{backendService}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified regional BackendService resource.", + "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "GET", + "id": "compute.regionBackendServices.get", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/backendServices/{backendService}", + "response": { + "$ref": "BackendService" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "description": "Gets the most recent health check results for this\nregional BackendService.", + "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}/getHealth", + "httpMethod": "POST", + "id": "compute.regionBackendServices.getHealth", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource for which to get health.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/backendServices/{backendService}/getHealth", + "request": { + "$ref": "ResourceGroupReference" + }, + "response": { + "$ref": "BackendServiceGroupHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/regions/{region}/backendServices/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.regionBackendServices.getIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/backendServices/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a regional BackendService resource in the specified project using\nthe data included in the request. For more information, see\nBackend services overview.", + "flatPath": "projects/{project}/regions/{region}/backendServices", + "httpMethod": "POST", + "id": "compute.regionBackendServices.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/backendServices", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of regional BackendService resources available to the\nspecified project in the given region.", + "flatPath": "projects/{project}/regions/{region}/backendServices", + "httpMethod": "GET", + "id": "compute.regionBackendServices.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/backendServices", + "response": { + "$ref": "BackendServiceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listUsable": { + "description": "Retrieves a list of all usable backend services in the specified project in\nthe given region.", + "flatPath": "projects/{project}/regions/{region}/backendServices/listUsable", + "httpMethod": "GET", + "id": "compute.regionBackendServices.listUsable", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.\nIt must be a string that meets the requirements in RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/backendServices/listUsable", + "response": { + "$ref": "BackendServiceListUsable" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified regional BackendService resource with the data\nincluded in the request. For more information, see \nUnderstanding backend services This method\nsupports PATCH semantics and uses the JSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "PATCH", + "id": "compute.regionBackendServices.patch", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "description": "Name of the BackendService resource to patch.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -24238,59 +25605,15 @@ } } }, - "regionDiskTypes": { + "regionCompositeHealthChecks": { "methods": { - "get": { - "description": "Returns the specified regional disk type.", - "flatPath": "projects/{project}/regions/{region}/diskTypes/{diskType}", - "httpMethod": "GET", - "id": "compute.regionDiskTypes.get", - "parameterOrder": [ - "project", - "region", - "diskType" - ], - "parameters": { - "diskType": { - "description": "Name of the disk type to return.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "region": { - "description": "The name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/diskTypes/{diskType}", - "response": { - "$ref": "DiskType" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "list": { - "description": "Retrieves a list of regional disk types available to the specified project.", - "flatPath": "projects/{project}/regions/{region}/diskTypes", + "aggregatedList": { + "description": "Retrieves the list of all CompositeHealthCheck resources (all\nregional) available to the specified project.\n\nTo prevent failure, it is recommended that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/compositeHealthChecks", "httpMethod": "GET", - "id": "compute.regionDiskTypes.list", + "id": "compute.regionCompositeHealthChecks.aggregatedList", "parameterOrder": [ - "project", - "region" + "project" ], "parameters": { "filter": { @@ -24298,6 +25621,11 @@ "location": "query", "type": "string" }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -24317,52 +25645,47 @@ "type": "string" }, "project": { - "description": "Project ID for this request.", + "description": "Name of the project scoping this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "region": { - "description": "The name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/diskTypes", + "path": "projects/{project}/aggregated/compositeHealthChecks", "response": { - "$ref": "RegionDiskTypeList" + "$ref": "CompositeHealthCheckAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "regionDisks": { - "methods": { - "addResourcePolicies": { - "description": "Adds existing resource policies to a regional disk. You can only add one\npolicy which will be applied to this disk for scheduling snapshot\ncreation.", - "flatPath": "projects/{project}/regions/{region}/disks/{disk}/addResourcePolicies", - "httpMethod": "POST", - "id": "compute.regionDisks.addResourcePolicies", + }, + "delete": { + "description": "Deletes the specified CompositeHealthCheck in the given region", + "flatPath": "projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}", + "httpMethod": "DELETE", + "id": "compute.regionCompositeHealthChecks.delete", "parameterOrder": [ "project", "region", - "disk" + "compositeHealthCheck" ], "parameters": { - "disk": { - "description": "The disk name for this request.", + "compositeHealthCheck": { + "description": "Name of the CompositeHealthCheck resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -24376,7 +25699,7 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -24388,10 +25711,7 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/disks/{disk}/addResourcePolicies", - "request": { - "$ref": "RegionDisksAddResourcePoliciesRequest" - }, + "path": "projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}", "response": { "$ref": "Operation" }, @@ -24400,16 +25720,24 @@ "https://www.googleapis.com/auth/compute" ] }, - "bulkInsert": { - "description": "Bulk create a set of disks.", - "flatPath": "projects/{project}/regions/{region}/disks/bulkInsert", - "httpMethod": "POST", - "id": "compute.regionDisks.bulkInsert", + "get": { + "description": "Returns the specified CompositeHealthCheck resource in the given region.", + "flatPath": "projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}", + "httpMethod": "GET", + "id": "compute.regionCompositeHealthChecks.get", "parameterOrder": [ "project", - "region" + "region", + "compositeHealthCheck" ], "parameters": { + "compositeHealthCheck": { + "description": "Name of the CompositeHealthCheck resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -24418,89 +25746,531 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/regions/{region}/disks/bulkInsert", - "request": { - "$ref": "BulkInsertDiskResource" - }, + "path": "projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}", "response": { - "$ref": "Operation" + "$ref": "CompositeHealthCheck" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "createSnapshot": { - "description": "Creates a snapshot of a specified persistent disk. For regular snapshot\ncreation, consider using snapshots.insert\ninstead, as that method supports more features, such as creating snapshots\nin a project different from the source disk project.", - "flatPath": "projects/{project}/regions/{region}/disks/{disk}/createSnapshot", - "httpMethod": "POST", - "id": "compute.regionDisks.createSnapshot", + "getHealth": { + "description": "Gets the most recent health check results for this\nregional CompositeHealthCheck.", + "flatPath": "projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}/getHealth", + "httpMethod": "GET", + "id": "compute.regionCompositeHealthChecks.getHealth", "parameterOrder": [ "project", "region", - "disk" + "compositeHealthCheck" ], "parameters": { - "disk": { - "description": "Name of the regional persistent disk to snapshot.", + "compositeHealthCheck": { + "description": "Name of the CompositeHealthCheck resource to get health for.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, "project": { - "description": "Project ID for this request.", + "description": "Name of the project scoping this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, "region": { - "description": "Name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/regions/{region}/disks/{disk}/createSnapshot", - "request": { - "$ref": "Snapshot" - }, + "path": "projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}/getHealth", "response": { - "$ref": "Operation" + "$ref": "CompositeHealthCheckHealth" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "delete": { - "description": "Deletes the specified regional persistent disk. Deleting a regional disk\nremoves all the replicas of its data permanently and is irreversible.\nHowever, deleting a disk does not delete anysnapshots\npreviously made from the disk. You must separatelydelete\nsnapshots.", - "flatPath": "projects/{project}/regions/{region}/disks/{disk}", - "httpMethod": "DELETE", - "id": "compute.regionDisks.delete", + "insert": { + "description": "Create a CompositeHealthCheck in the specified project in the given region\nusing the parameters that are included in the request.", + "flatPath": "projects/{project}/regions/{region}/compositeHealthChecks", + "httpMethod": "POST", + "id": "compute.regionCompositeHealthChecks.insert", "parameterOrder": [ "project", - "region", - "disk" + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/compositeHealthChecks", + "request": { + "$ref": "CompositeHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Lists the CompositeHealthChecks for a project in the given region.", + "flatPath": "projects/{project}/regions/{region}/compositeHealthChecks", + "httpMethod": "GET", + "id": "compute.regionCompositeHealthChecks.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/compositeHealthChecks", + "response": { + "$ref": "CompositeHealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified regional CompositeHealthCheck resource\nwith the data included in the request. This method supportsPATCH\nsemantics and uses theJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}", + "httpMethod": "PATCH", + "id": "compute.regionCompositeHealthChecks.patch", + "parameterOrder": [ + "project", + "region", + "compositeHealthCheck" + ], + "parameters": { + "compositeHealthCheck": { + "description": "Name of the CompositeHealthCheck to update. The name\nmust be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}", + "request": { + "$ref": "CompositeHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/compositeHealthChecks/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.regionCompositeHealthChecks.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/compositeHealthChecks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionDiskTypes": { + "methods": { + "get": { + "description": "Returns the specified regional disk type.", + "flatPath": "projects/{project}/regions/{region}/diskTypes/{diskType}", + "httpMethod": "GET", + "id": "compute.regionDiskTypes.get", + "parameterOrder": [ + "project", + "region", + "diskType" + ], + "parameters": { + "diskType": { + "description": "Name of the disk type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/diskTypes/{diskType}", + "response": { + "$ref": "DiskType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of regional disk types available to the specified project.", + "flatPath": "projects/{project}/regions/{region}/diskTypes", + "httpMethod": "GET", + "id": "compute.regionDiskTypes.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/diskTypes", + "response": { + "$ref": "RegionDiskTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionDisks": { + "methods": { + "addResourcePolicies": { + "description": "Adds existing resource policies to a regional disk. You can only add one\npolicy which will be applied to this disk for scheduling snapshot\ncreation.", + "flatPath": "projects/{project}/regions/{region}/disks/{disk}/addResourcePolicies", + "httpMethod": "POST", + "id": "compute.regionDisks.addResourcePolicies", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "The disk name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/disks/{disk}/addResourcePolicies", + "request": { + "$ref": "RegionDisksAddResourcePoliciesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "bulkInsert": { + "description": "Bulk create a set of disks.", + "flatPath": "projects/{project}/regions/{region}/disks/bulkInsert", + "httpMethod": "POST", + "id": "compute.regionDisks.bulkInsert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/disks/bulkInsert", + "request": { + "$ref": "BulkInsertDiskResource" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "createSnapshot": { + "description": "Creates a snapshot of a specified persistent disk. For regular snapshot\ncreation, consider using snapshots.insert\ninstead, as that method supports more features, such as creating snapshots\nin a project different from the source disk project.", + "flatPath": "projects/{project}/regions/{region}/disks/{disk}/createSnapshot", + "httpMethod": "POST", + "id": "compute.regionDisks.createSnapshot", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the regional persistent disk to snapshot.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/disks/{disk}/createSnapshot", + "request": { + "$ref": "Snapshot" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes the specified regional persistent disk. Deleting a regional disk\nremoves all the replicas of its data permanently and is irreversible.\nHowever, deleting a disk does not delete anysnapshots\npreviously made from the disk. You must separatelydelete\nsnapshots.", + "flatPath": "projects/{project}/regions/{region}/disks/{disk}", + "httpMethod": "DELETE", + "id": "compute.regionDisks.delete", + "parameterOrder": [ + "project", + "region", + "disk" ], "parameters": { "disk": { @@ -25181,6 +26951,55 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] + }, + "updateKmsKey": { + "description": "Rotates the customer-managed\nencryption key to the latest version for the specified persistent disk.", + "flatPath": "projects/{project}/regions/{region}/disks/{disk}/updateKmsKey", + "httpMethod": "POST", + "id": "compute.regionDisks.updateKmsKey", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the Disk resource, should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/disks/{disk}/updateKmsKey", + "request": { + "$ref": "RegionDiskUpdateKmsKeyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } } }, @@ -25546,6 +27365,72 @@ }, "regionHealthCheckServices": { "methods": { + "aggregatedList": { + "description": "Retrieves the list of all HealthCheckService resources,\nregional and global, available to the specified project.\n\nTo prevent failure, it is recommended that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/healthCheckServices", + "httpMethod": "GET", + "id": "compute.regionHealthCheckServices.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/aggregated/healthCheckServices", + "response": { + "$ref": "HealthCheckServiceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "delete": { "description": "Deletes the specified regional HealthCheckService.", "flatPath": "projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}", @@ -26181,161 +28066,89 @@ } } }, - "regionInstanceGroupManagers": { + "regionHealthSources": { "methods": { - "abandonInstances": { - "description": "Flags the specified instances to be immediately removed from the managed\ninstance group. Abandoning an instance does not delete the\ninstance, but it does remove the instance from any target pools that are\napplied by the managed instance group. This method reduces thetargetSize of the managed instance group by the\nnumber of instances that you abandon. This operation is marked asDONE when the action is scheduled even if the instances have\nnot yet been removed from the group. You must separately verify the\nstatus of the abandoning action with thelistmanagedinstances\nmethod.\n\nIf the group is part of a backend\nservice that has enabled\nconnection draining, it can take up to 60 seconds after the connection\ndraining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", - "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.abandonInstances", + "aggregatedList": { + "description": "Retrieves the list of all HealthSource resources (all\nregional) available to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/healthSources", + "httpMethod": "GET", + "id": "compute.regionHealthSources.aggregatedList", "parameterOrder": [ - "project", - "region", - "instanceGroupManager" + "project" ], "parameters": { - "instanceGroupManager": { - "description": "Name of the managed instance group.", - "location": "path", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", "type": "string" }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "required": true, - "type": "string" + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", "location": "query", - "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", - "request": { - "$ref": "RegionInstanceGroupManagersAbandonInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "applyUpdatesToInstances": { - "description": "Apply updates to selected instances the managed instance group.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances", - "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.applyUpdatesToInstances", - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "parameters": { - "instanceGroupManager": { - "description": "The name of the managed instance group, should conform to RFC1035.", - "location": "path", - "required": true, - "type": "string" + "minimum": "0", + "type": "integer" }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", "type": "string" }, - "region": { - "description": "Name of the region scoping this request, should conform to RFC1035.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances", - "request": { - "$ref": "RegionInstanceGroupManagersApplyUpdatesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "createInstances": { - "description": "Creates instances with per-instance configurations in this regional managed\ninstance group. Instances are created using the current instance template.\nThe create instances operation is marked DONE if\nthe createInstances request is successful. The underlying\nactions take additional time. You must separately verify the status of thecreating or actions with the listmanagedinstances\nmethod.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/createInstances", - "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.createInstances", - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "parameters": { - "instanceGroupManager": { - "description": "The name of the managed instance group.\nIt should conform to RFC1035.", - "location": "path", - "required": true, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", "type": "string" }, "project": { - "description": "Project ID for this request.", + "description": "Name of the project scoping this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "region": { - "description": "The name of theregion\nwhere the managed instance group is located.\nIt should conform to RFC1035.", - "location": "path", - "required": true, - "type": "string" + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/createInstances", - "request": { - "$ref": "RegionInstanceGroupManagersCreateInstancesRequest" - }, + "path": "projects/{project}/aggregated/healthSources", "response": { - "$ref": "Operation" + "$ref": "HealthSourceAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, "delete": { - "description": "Deletes the specified managed instance group and all of the instances\nin that group.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "description": "Deletes the specified HealthSource in the given region", + "flatPath": "projects/{project}/regions/{region}/healthSources/{healthSource}", "httpMethod": "DELETE", - "id": "compute.regionInstanceGroupManagers.delete", + "id": "compute.regionHealthSources.delete", "parameterOrder": [ "project", "region", - "instanceGroupManager" + "healthSource" ], "parameters": { - "instanceGroupManager": { - "description": "Name of the managed instance group to delete.", + "healthSource": { + "description": "Name of the HealthSource resource to delete.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, @@ -26349,6 +28162,7 @@ "region": { "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -26358,7 +28172,7 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "path": "projects/{project}/regions/{region}/healthSources/{healthSource}", "response": { "$ref": "Operation" }, @@ -26367,20 +28181,21 @@ "https://www.googleapis.com/auth/compute" ] }, - "deleteInstances": { - "description": "Flags the specified instances in the managed instance group to be\nimmediately deleted. The instances are also removed from any target\npools of which they were a member. This method reduces thetargetSize of the managed instance group by the number of\ninstances that you delete.\nThe deleteInstances operation is marked DONE if\nthe deleteInstances request is successful. The underlying\nactions take additional time. You must separately verify the status of thedeleting action with thelistmanagedinstances\nmethod.\n\nIf the group is part of a backend\nservice that has enabled\nconnection draining, it can take up to 60 seconds after the connection\ndraining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", - "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.deleteInstances", + "get": { + "description": "Returns the specified HealthSource resource in the given region.", + "flatPath": "projects/{project}/regions/{region}/healthSources/{healthSource}", + "httpMethod": "GET", + "id": "compute.regionHealthSources.get", "parameterOrder": [ "project", "region", - "instanceGroupManager" + "healthSource" ], "parameters": { - "instanceGroupManager": { - "description": "Name of the managed instance group.", + "healthSource": { + "description": "Name of the HealthSource resource to return.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, @@ -26394,89 +28209,41 @@ "region": { "description": "Name of the region scoping this request.", "location": "path", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", - "request": { - "$ref": "RegionInstanceGroupManagersDeleteInstancesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "deletePerInstanceConfigs": { - "description": "Deletes selected per-instance configurations for the managed instance\ngroup.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs", - "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.deletePerInstanceConfigs", - "parameterOrder": [ - "project", - "region", - "instanceGroupManager" - ], - "parameters": { - "instanceGroupManager": { - "description": "The name of the managed instance group. It should conform to RFC1035.", - "location": "path", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "region": { - "description": "Name of the region scoping this request, should conform to RFC1035.", - "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs", - "request": { - "$ref": "RegionInstanceGroupManagerDeleteInstanceConfigReq" - }, + "path": "projects/{project}/regions/{region}/healthSources/{healthSource}", "response": { - "$ref": "Operation" + "$ref": "HealthSource" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "get": { - "description": "Returns all of the details about the specified managed instance group.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "getHealth": { + "description": "Gets the most recent health check results for this\nregional HealthSource.", + "flatPath": "projects/{project}/regions/{region}/healthSources/{healthSource}/getHealth", "httpMethod": "GET", - "id": "compute.regionInstanceGroupManagers.get", + "id": "compute.regionHealthSources.getHealth", "parameterOrder": [ "project", "region", - "instanceGroupManager" + "healthSource" ], "parameters": { - "instanceGroupManager": { - "description": "Name of the managed instance group to return.", + "healthSource": { + "description": "Name of the HealthSource resource to get health for.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, "project": { - "description": "Project ID for this request.", + "description": "Name of the project scoping this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, @@ -26485,13 +28252,14 @@ "region": { "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "path": "projects/{project}/regions/{region}/healthSources/{healthSource}/getHealth", "response": { - "$ref": "InstanceGroupManager" + "$ref": "HealthSourceHealth" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -26500,10 +28268,10 @@ ] }, "insert": { - "description": "Creates a managed instance group using the information that you specify\nin the request. After the group is created, instances in the group are\ncreated using the specified instance template.\nThis operation is marked as DONE when the group is created\neven if the instances in the group have not yet been created. You must\nseparately verify the status of the individual instances with thelistmanagedinstances\nmethod.\n\nA regional managed instance group can contain up to 2000 instances.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers", + "description": "Create a HealthSource in the specified project in the given region\nusing the parameters that are included in the request.", + "flatPath": "projects/{project}/regions/{region}/healthSources", "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.insert", + "id": "compute.regionHealthSources.insert", "parameterOrder": [ "project", "region" @@ -26519,6 +28287,7 @@ "region": { "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -26528,9 +28297,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers", + "path": "projects/{project}/regions/{region}/healthSources", "request": { - "$ref": "InstanceGroupManager" + "$ref": "HealthSource" }, "response": { "$ref": "Operation" @@ -26541,10 +28310,10 @@ ] }, "list": { - "description": "Retrieves the list of managed instance groups that are contained\nwithin the specified region.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers", + "description": "Lists the HealthSources for a project in the given region.", + "flatPath": "projects/{project}/regions/{region}/healthSources", "httpMethod": "GET", - "id": "compute.regionInstanceGroupManagers.list", + "id": "compute.regionHealthSources.list", "parameterOrder": [ "project", "region" @@ -26583,6 +28352,7 @@ "region": { "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -26592,9 +28362,9 @@ "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers", + "path": "projects/{project}/regions/{region}/healthSources", "response": { - "$ref": "RegionInstanceGroupManagerList" + "$ref": "HealthSourceList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -26602,46 +28372,23 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "listErrors": { - "description": "Lists all errors thrown by actions on instances for a given regional\nmanaged instance group. The filter andorderBy query parameters are not supported.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listErrors", - "httpMethod": "GET", - "id": "compute.regionInstanceGroupManagers.listErrors", + "patch": { + "description": "Updates the specified regional HealthSource resource\nwith the data included in the request. This method supportsPATCH\nsemantics and uses theJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/regions/{region}/healthSources/{healthSource}", + "httpMethod": "PATCH", + "id": "compute.regionHealthSources.patch", "parameterOrder": [ "project", "region", - "instanceGroupManager" + "healthSource" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "instanceGroupManager": { - "description": "The name of the managed instance group.\nIt must be a string that meets the requirements in RFC1035, or an\nunsigned long integer: must match regexp pattern:\n(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)|1-9{0,19}.", + "healthSource": { + "description": "Name of the HealthSource to update. The name\nmust be 1-63 characters long, and comply with RFC1035.", "location": "path", "required": true, "type": "string" }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -26650,67 +28397,41 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.\nThis should conform to RFC1035.", + "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", - "type": "boolean" + "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listErrors", + "path": "projects/{project}/regions/{region}/healthSources/{healthSource}", + "request": { + "$ref": "HealthSource" + }, "response": { - "$ref": "RegionInstanceGroupManagersListErrorsResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "listManagedInstances": { - "description": "Lists the instances in the managed instance group and instances that are\nscheduled to be created. The list includes any current actions\nthat the group has scheduled for its instances. The orderBy\nquery parameter is not supported. The `pageToken` query parameter is\nsupported only if the group's `listManagedInstancesResults` field is set\nto `PAGINATED`.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/healthSources/{resource}/testIamPermissions", "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.listManagedInstances", + "id": "compute.regionHealthSources.testIamPermissions", "parameterOrder": [ "project", "region", - "instanceGroupManager" + "resource" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "instanceGroupManager": { - "description": "The name of the managed instance group.", - "location": "path", - "required": true, - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -26719,67 +28440,55 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "path": "projects/{project}/regions/{region}/healthSources/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, "response": { - "$ref": "RegionInstanceGroupManagersListInstancesResponse" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "listPerInstanceConfigs": { - "description": "Lists all of the per-instance configurations defined for the managed\ninstance group. The orderBy query parameter is not supported.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs", + } + } + }, + "regionInstanceGroupManagerResizeRequests": { + "methods": { + "cancel": { + "description": "Cancels the specified resize request.\nCancelled resize request no longer waits for the resources to be\nprovisioned. Cancel is only possible for requests that are in accepted\nstate.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel", "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.listPerInstanceConfigs", + "id": "compute.regionInstanceGroupManagerResizeRequests.cancel", "parameterOrder": [ "project", "region", - "instanceGroupManager" + "instanceGroupManager", + "resizeRequest" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, "instanceGroupManager": { - "description": "The name of the managed instance group. It should conform to RFC1035.", + "description": "The name of the managed instance group.\nName should conform to RFC1035 or be a resource ID.", "location": "path", "required": true, "type": "string" }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -26788,40 +28497,46 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request, should conform to RFC1035.", + "description": "The name of the region\nscoping this request. Name should conform to RFC1035.", "location": "path", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", - "type": "boolean" + "type": "string" + }, + "resizeRequest": { + "description": "The name of the resize request to cancel.\nName should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel", "response": { - "$ref": "RegionInstanceGroupManagersListInstanceConfigsResp" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "patch": { - "description": "Updates a managed instance group using the information that you specify\nin the request.\nThis operation is marked as DONE when the group is patched\neven if the instances in the group are still in the process of being\npatched. You must separately verify the status of the individual instances\nwith the listmanagedinstances\nmethod. This method supportsPATCH\nsemantics and uses theJSON merge\npatch format and processing rules.\n\nIf you update your group to specify a new template or instance\nconfiguration, it's possible that your intended specification for each VM\nin the group is different from the current state of that VM. To learn how\nto apply an updated configuration to the VMs in a MIG, seeUpdating instances in\na MIG.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", - "httpMethod": "PATCH", - "id": "compute.regionInstanceGroupManagers.patch", + "delete": { + "description": "Deletes the specified, inactive resize request. Requests that are still\nactive cannot be deleted. Deleting request does not delete instances that\nwere provisioned previously.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}", + "httpMethod": "DELETE", + "id": "compute.regionInstanceGroupManagerResizeRequests.delete", "parameterOrder": [ "project", "region", - "instanceGroupManager" + "instanceGroupManager", + "resizeRequest" ], "parameters": { "instanceGroupManager": { - "description": "The name of the instance group manager.", + "description": "The name of the managed instance group.\nName should conform to RFC1035 or be a resource ID.", "location": "path", "required": true, "type": "string" @@ -26834,7 +28549,7 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region\nscoping this request. Name should conform to RFC1035.", "location": "path", "required": true, "type": "string" @@ -26843,12 +28558,15 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" + }, + "resizeRequest": { + "description": "The name of the resize request to delete.\nName should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", - "request": { - "$ref": "InstanceGroupManager" - }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}", "response": { "$ref": "Operation" }, @@ -26857,19 +28575,20 @@ "https://www.googleapis.com/auth/compute" ] }, - "patchPerInstanceConfigs": { - "description": "Inserts or patches per-instance configurations for the managed instance\ngroup. perInstanceConfig.name serves as a key used to\ndistinguish whether to perform insert or patch.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs", - "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.patchPerInstanceConfigs", + "get": { + "description": "Returns all of the details about the specified resize request.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagerResizeRequests.get", "parameterOrder": [ "project", "region", - "instanceGroupManager" + "instanceGroupManager", + "resizeRequest" ], "parameters": { "instanceGroupManager": { - "description": "The name of the managed instance group.\nIt should conform to RFC1035.", + "description": "The name of the managed instance group.\nName should conform to RFC1035 or be a resource ID.", "location": "path", "required": true, "type": "string" @@ -26882,34 +28601,33 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request, should conform to RFC1035.", + "description": "The name of the region\nscoping this request. Name should conform to RFC1035.", "location": "path", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "resizeRequest": { + "description": "The name of the resize request.\nName should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs", - "request": { - "$ref": "RegionInstanceGroupManagerPatchInstanceConfigReq" - }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}", "response": { - "$ref": "Operation" + "$ref": "InstanceGroupManagerResizeRequest" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "recreateInstances": { - "description": "Flags the specified VM instances in the managed instance group to be\nimmediately recreated. Each instance is recreated using the group's current\nconfiguration. This operation is marked as DONE when the flag\nis set even if the instances have not yet been recreated. You must\nseparately verify the status of each instance by checking itscurrentAction field; for more information, see Checking\nthe status of managed instances.\n\nIf the group is part of a backend\nservice that has enabled\nconnection draining, it can take up to 60 seconds after the connection\ndraining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "insert": { + "description": "Creates a new Resize Request that starts provisioning VMs immediately\nor queues VM creation.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests", "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.recreateInstances", + "id": "compute.regionInstanceGroupManagerResizeRequests.insert", "parameterOrder": [ "project", "region", @@ -26917,7 +28635,7 @@ ], "parameters": { "instanceGroupManager": { - "description": "Name of the managed instance group.", + "description": "Name of the managed instance group to which the resize request is scoped.\nName should conform to RFC1035 or be a resource ID.", "location": "path", "required": true, "type": "string" @@ -26930,7 +28648,7 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region\nscoping this request. Name should conform to RFC1035.", "location": "path", "required": true, "type": "string" @@ -26941,9 +28659,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests", "request": { - "$ref": "RegionInstanceGroupManagersRecreateRequest" + "$ref": "InstanceGroupManagerResizeRequest" }, "response": { "$ref": "Operation" @@ -26953,24 +28671,46 @@ "https://www.googleapis.com/auth/compute" ] }, - "resize": { - "description": "Changes the intended size of the managed instance group. If you increase\nthe size, the group creates new instances using the current instance\ntemplate. If you decrease the size, the group deletes one or more\ninstances.\n\nThe resize operation is marked DONE if theresize request is successful. The underlying actions take\nadditional time. You must separately verify the status of thecreating or deleting actions with thelistmanagedinstances\nmethod.\n\nIf the group is part of a backend\nservice that has enabled\nconnection draining, it can take up to 60 seconds after the connection\ndraining duration has elapsed before the VM instance is removed or deleted.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", - "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.resize", + "list": { + "description": "Retrieves a list of Resize Requests that are contained in the\nmanaged instance group.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagerResizeRequests.list", "parameterOrder": [ "project", "region", - "instanceGroupManager", - "size" + "instanceGroupManager" ], "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, "instanceGroupManager": { - "description": "Name of the managed instance group.", + "description": "The name of the managed instance group. The name should conform to RFC1035.", "location": "path", "required": true, "type": "string" }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -26979,39 +28719,36 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region\nscoping this request. Name should conform to RFC1035.", "location": "path", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "size": { - "description": "Number of instances that should exist in this instance group\nmanager.", - "format": "int32", + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", - "minimum": "0", - "required": true, - "type": "integer" + "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests", "response": { - "$ref": "Operation" + "$ref": "RegionInstanceGroupManagerResizeRequestsListResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] - }, - "resumeInstances": { - "description": "Flags the specified instances in the managed instance group to be\nresumed. This method increases thetargetSize and decreases the targetSuspendedSize\nof the managed instance group by the number of instances that you resume.\nThe resumeInstances operation is marked DONE if\nthe resumeInstances request is successful. The underlying\nactions take additional time. You must separately verify the status of theRESUMING action with thelistmanagedinstances\nmethod.\n\nIn this request, you can only specify instances that are suspended. For\nexample, if an instance was previously suspended using the suspendInstances\nmethod, it can be resumed using the resumeInstances method.\n\nIf a health check is attached to the managed instance group, the specified\ninstances will be verified as healthy after they are resumed.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resumeInstances", + } + } + }, + "regionInstanceGroupManagers": { + "methods": { + "abandonInstances": { + "description": "Flags the specified instances to be immediately removed from the managed\ninstance group. Abandoning an instance does not delete the\ninstance, but it does remove the instance from any target pools that are\napplied by the managed instance group. This method reduces thetargetSize of the managed instance group by the\nnumber of instances that you abandon. This operation is marked asDONE when the action is scheduled even if the instances have\nnot yet been removed from the group. You must separately verify the\nstatus of the abandoning action with thelistmanagedinstances\nmethod.\n\nIf the group is part of a backend\nservice that has enabled\nconnection draining, it can take up to 60 seconds after the connection\ndraining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.resumeInstances", + "id": "compute.regionInstanceGroupManagers.abandonInstances", "parameterOrder": [ "project", "region", @@ -27043,9 +28780,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resumeInstances", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", "request": { - "$ref": "RegionInstanceGroupManagersResumeInstancesRequest" + "$ref": "RegionInstanceGroupManagersAbandonInstancesRequest" }, "response": { "$ref": "Operation" @@ -27055,11 +28792,11 @@ "https://www.googleapis.com/auth/compute" ] }, - "setInstanceTemplate": { - "description": "Sets the instance template to use when creating new instances or recreating\ninstances in this group. Existing instances are not affected.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "applyUpdatesToInstances": { + "description": "Apply updates to selected instances the managed instance group.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances", "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.setInstanceTemplate", + "id": "compute.regionInstanceGroupManagers.applyUpdatesToInstances", "parameterOrder": [ "project", "region", @@ -27067,7 +28804,7 @@ ], "parameters": { "instanceGroupManager": { - "description": "The name of the managed instance group.", + "description": "The name of the managed instance group, should conform to RFC1035.", "location": "path", "required": true, "type": "string" @@ -27080,20 +28817,15 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region scoping this request, should conform to RFC1035.", "location": "path", "required": true, "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances", "request": { - "$ref": "RegionInstanceGroupManagersSetTemplateRequest" + "$ref": "RegionInstanceGroupManagersApplyUpdatesRequest" }, "response": { "$ref": "Operation" @@ -27103,11 +28835,11 @@ "https://www.googleapis.com/auth/compute" ] }, - "setTargetPools": { - "description": "Modifies the target pools to which all new instances in this group are\nassigned. Existing instances in the group are not affected.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "createInstances": { + "description": "Creates instances with per-instance configurations in this regional managed\ninstance group. Instances are created using the current instance template.\nThe create instances operation is marked DONE if\nthe createInstances request is successful. The underlying\nactions take additional time. You must separately verify the status of thecreating or actions with the listmanagedinstances\nmethod.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/createInstances", "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.setTargetPools", + "id": "compute.regionInstanceGroupManagers.createInstances", "parameterOrder": [ "project", "region", @@ -27115,7 +28847,7 @@ ], "parameters": { "instanceGroupManager": { - "description": "Name of the managed instance group.", + "description": "The name of the managed instance group.\nIt should conform to RFC1035.", "location": "path", "required": true, "type": "string" @@ -27128,20 +28860,20 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of theregion\nwhere the managed instance group is located.\nIt should conform to RFC1035.", "location": "path", "required": true, "type": "string" }, "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/createInstances", "request": { - "$ref": "RegionInstanceGroupManagersSetTargetPoolsRequest" + "$ref": "RegionInstanceGroupManagersCreateInstancesRequest" }, "response": { "$ref": "Operation" @@ -27151,11 +28883,11 @@ "https://www.googleapis.com/auth/compute" ] }, - "startInstances": { - "description": "Flags the specified instances in the managed instance group to be\nstarted. This method increases thetargetSize and decreases the targetStoppedSize\nof the managed instance group by the number of instances that you start.\nThe startInstances operation is marked DONE if\nthe startInstances request is successful. The underlying\nactions take additional time. You must separately verify the status of theSTARTING action with thelistmanagedinstances\nmethod.\n\nIn this request, you can only specify instances that are stopped. For\nexample, if an instance was previously stopped using the stopInstances\nmethod, it can be started using the startInstances method.\n\nIf a health check is attached to the managed instance group, the specified\ninstances will be verified as healthy after they are started.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/startInstances", - "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.startInstances", + "delete": { + "description": "Deletes the specified managed instance group and all of the instances\nin that group.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "DELETE", + "id": "compute.regionInstanceGroupManagers.delete", "parameterOrder": [ "project", "region", @@ -27163,7 +28895,7 @@ ], "parameters": { "instanceGroupManager": { - "description": "Name of the managed instance group.", + "description": "Name of the managed instance group to delete.", "location": "path", "required": true, "type": "string" @@ -27187,10 +28919,7 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/startInstances", - "request": { - "$ref": "RegionInstanceGroupManagersStartInstancesRequest" - }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", "response": { "$ref": "Operation" }, @@ -27199,11 +28928,11 @@ "https://www.googleapis.com/auth/compute" ] }, - "stopInstances": { - "description": "Flags the specified instances in the managed instance group to be\nimmediately stopped. You can only specify instances that are running in\nthis request. This method reduces thetargetSize and increases the targetStoppedSize\nof the managed instance group by the number of instances that you stop.\nThe stopInstances operation is marked DONE if\nthe stopInstances request is successful. The underlying\nactions take additional time. You must separately verify the status of theSTOPPING action with thelistmanagedinstances\nmethod.\n\nIf the standbyPolicy.initialDelaySec field is set, the group\ndelays stopping the instances until initialDelaySec have\npassed from instance.creationTimestamp (that is, when the\ninstance was created). This delay gives your application time to\nset itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there\nwill be zero delay.\n\nIf the group is part of a backend\nservice that has enabled\nconnection draining, it can take up to 60 seconds after the connection\ndraining duration has elapsed before the VM instance is stopped.\n\nStopped instances can be started using the startInstances\nmethod.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/stopInstances", + "deleteInstances": { + "description": "Flags the specified instances in the managed instance group to be\nimmediately deleted. The instances are also removed from any target\npools of which they were a member. This method reduces thetargetSize of the managed instance group by the number of\ninstances that you delete.\nThe deleteInstances operation is marked DONE if\nthe deleteInstances request is successful. The underlying\nactions take additional time. You must separately verify the status of thedeleting action with thelistmanagedinstances\nmethod.\n\nIf the group is part of a backend\nservice that has enabled\nconnection draining, it can take up to 60 seconds after the connection\ndraining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.stopInstances", + "id": "compute.regionInstanceGroupManagers.deleteInstances", "parameterOrder": [ "project", "region", @@ -27211,7 +28940,7 @@ ], "parameters": { "instanceGroupManager": { - "description": "The name of the managed instance group.", + "description": "Name of the managed instance group.", "location": "path", "required": true, "type": "string" @@ -27235,9 +28964,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/stopInstances", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", "request": { - "$ref": "RegionInstanceGroupManagersStopInstancesRequest" + "$ref": "RegionInstanceGroupManagersDeleteInstancesRequest" }, "response": { "$ref": "Operation" @@ -27247,11 +28976,11 @@ "https://www.googleapis.com/auth/compute" ] }, - "suspendInstances": { - "description": "Flags the specified instances in the managed instance group to be\nimmediately suspended. You can only specify instances that are running in\nthis request. This method reduces thetargetSize and increases the targetSuspendedSize\nof the managed instance group by the number of instances that you suspend.\nThe suspendInstances operation is marked DONE if\nthe suspendInstances request is successful. The underlying\nactions take additional time. You must separately verify the status of theSUSPENDING action with thelistmanagedinstances\nmethod.\n\nIf the standbyPolicy.initialDelaySec field is set, the group\ndelays suspension of the instances until initialDelaySec have\npassed from instance.creationTimestamp (that is, when the\ninstance was created). This delay gives your application time to\nset itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there\nwill be zero delay.\n\nIf the group is part of a backend\nservice that has enabled\nconnection draining, it can take up to 60 seconds after the connection\ndraining duration has elapsed before the VM instance is suspended.\n\nSuspended instances can be resumed using the resumeInstances\nmethod.\n\nYou can specify a maximum of 1000 instances with this method per request.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/suspendInstances", + "deletePerInstanceConfigs": { + "description": "Deletes selected per-instance configurations for the managed instance\ngroup.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs", "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.suspendInstances", + "id": "compute.regionInstanceGroupManagers.deletePerInstanceConfigs", "parameterOrder": [ "project", "region", @@ -27259,7 +28988,7 @@ ], "parameters": { "instanceGroupManager": { - "description": "Name of the managed instance group.", + "description": "The name of the managed instance group. It should conform to RFC1035.", "location": "path", "required": true, "type": "string" @@ -27272,20 +29001,15 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region scoping this request, should conform to RFC1035.", "location": "path", "required": true, "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/suspendInstances", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs", "request": { - "$ref": "RegionInstanceGroupManagersSuspendInstancesRequest" + "$ref": "RegionInstanceGroupManagerDeleteInstanceConfigReq" }, "response": { "$ref": "Operation" @@ -27295,11 +29019,11 @@ "https://www.googleapis.com/auth/compute" ] }, - "updatePerInstanceConfigs": { - "description": "Inserts or updates per-instance configurations for the managed instance\ngroup. perInstanceConfig.name serves as a key used to\ndistinguish whether to perform insert or patch.", - "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs", - "httpMethod": "POST", - "id": "compute.regionInstanceGroupManagers.updatePerInstanceConfigs", + "get": { + "description": "Returns all of the details about the specified managed instance group.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagers.get", "parameterOrder": [ "project", "region", @@ -27307,7 +29031,7 @@ ], "parameters": { "instanceGroupManager": { - "description": "The name of the managed instance group.\nIt should conform to RFC1035.", + "description": "Name of the managed instance group to return.", "location": "path", "required": true, "type": "string" @@ -27320,50 +29044,32 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request, should conform to RFC1035.", + "description": "Name of the region scoping this request.", "location": "path", "required": true, "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs", - "request": { - "$ref": "RegionInstanceGroupManagerUpdateInstanceConfigReq" - }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", "response": { - "$ref": "Operation" + "$ref": "InstanceGroupManager" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "regionInstanceGroups": { - "methods": { - "get": { - "description": "Returns the specified instance group resource.", - "flatPath": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}", - "httpMethod": "GET", - "id": "compute.regionInstanceGroups.get", + }, + "insert": { + "description": "Creates a managed instance group using the information that you specify\nin the request. After the group is created, instances in the group are\ncreated using the specified instance template.\nThis operation is marked as DONE when the group is created\neven if the instances in the group have not yet been created. You must\nseparately verify the status of the individual instances with thelistmanagedinstances\nmethod.\n\nA regional managed instance group can contain up to 2000 instances.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.insert", "parameterOrder": [ "project", - "region", - "instanceGroup" + "region" ], "parameters": { - "instanceGroup": { - "description": "Name of the instance group resource to return.", - "location": "path", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -27376,23 +29082,30 @@ "location": "path", "required": true, "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}", + "path": "projects/{project}/regions/{region}/instanceGroupManagers", + "request": { + "$ref": "InstanceGroupManager" + }, "response": { - "$ref": "InstanceGroup" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, "list": { - "description": "Retrieves the list of instance group resources contained within\nthe specified region.", - "flatPath": "projects/{project}/regions/{region}/instanceGroups", + "description": "Retrieves the list of managed instance groups that are contained\nwithin the specified region.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers", "httpMethod": "GET", - "id": "compute.regionInstanceGroups.list", + "id": "compute.regionInstanceGroupManagers.list", "parameterOrder": [ "project", "region" @@ -27440,9 +29153,9 @@ "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/instanceGroups", + "path": "projects/{project}/regions/{region}/instanceGroupManagers", "response": { - "$ref": "RegionInstanceGroupList" + "$ref": "RegionInstanceGroupManagerList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -27450,15 +29163,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "listInstances": { - "description": "Lists the instances in the specified instance group and displays\ninformation about the named ports. Depending on the specified options, this\nmethod can list all instances or only the instances that are running.\nThe orderBy query parameter is not supported.", - "flatPath": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", - "httpMethod": "POST", - "id": "compute.regionInstanceGroups.listInstances", + "listErrors": { + "description": "Lists all errors thrown by actions on instances for a given regional\nmanaged instance group. The filter andorderBy query parameters are not supported.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listErrors", + "httpMethod": "GET", + "id": "compute.regionInstanceGroupManagers.listErrors", "parameterOrder": [ "project", "region", - "instanceGroup" + "instanceGroupManager" ], "parameters": { "filter": { @@ -27466,8 +29179,8 @@ "location": "query", "type": "string" }, - "instanceGroup": { - "description": "Name of the regional instance group for which we want to list the\ninstances.", + "instanceGroupManager": { + "description": "The name of the managed instance group.\nIt must be a string that meets the requirements in RFC1035, or an\nunsigned long integer: must match regexp pattern:\n(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)|1-9{0,19}.", "location": "path", "required": true, "type": "string" @@ -27498,7 +29211,7 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region scoping this request.\nThis should conform to RFC1035.", "location": "path", "required": true, "type": "string" @@ -27509,12 +29222,9 @@ "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", - "request": { - "$ref": "RegionInstanceGroupsListInstancesRequest" - }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listErrors", "response": { - "$ref": "RegionInstanceGroupsListInstances" + "$ref": "RegionInstanceGroupManagersListErrorsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -27522,23 +29232,46 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "setNamedPorts": { - "description": "Sets the named ports for the specified regional instance group.", - "flatPath": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", + "listManagedInstances": { + "description": "Lists the instances in the managed instance group and instances that are\nscheduled to be created. The list includes any current actions\nthat the group has scheduled for its instances. The orderBy\nquery parameter is not supported. The `pageToken` query parameter is\nsupported only if the group's `listManagedInstancesResults` field is set\nto `PAGINATED`.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", "httpMethod": "POST", - "id": "compute.regionInstanceGroups.setNamedPorts", + "id": "compute.regionInstanceGroupManagers.listManagedInstances", "parameterOrder": [ "project", "region", - "instanceGroup" + "instanceGroupManager" ], "parameters": { - "instanceGroup": { - "description": "The name of the regional instance group where the named ports are updated.", - "location": "path", - "required": true, - "type": "string" - }, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -27552,35 +29285,62 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", - "type": "string" + "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", - "request": { - "$ref": "RegionInstanceGroupsSetNamedPortsRequest" - }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", "response": { - "$ref": "Operation" + "$ref": "RegionInstanceGroupManagersListInstancesResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions", + "listPerInstanceConfigs": { + "description": "Lists all of the per-instance configurations defined for the managed\ninstance group. The orderBy query parameter is not supported.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs", "httpMethod": "POST", - "id": "compute.regionInstanceGroups.testIamPermissions", + "id": "compute.regionInstanceGroupManagers.listPerInstanceConfigs", "parameterOrder": [ "project", "region", - "resource" + "instanceGroupManager" ], "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group. It should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -27589,52 +29349,41 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request, should conform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs", "response": { - "$ref": "TestPermissionsResponse" + "$ref": "RegionInstanceGroupManagersListInstanceConfigsResp" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "regionInstanceTemplates": { - "methods": { - "delete": { - "description": "Deletes the specified instance template. Deleting an instance template is\npermanent and cannot be undone.", - "flatPath": "projects/{project}/regions/{region}/instanceTemplates/{instanceTemplate}", - "httpMethod": "DELETE", - "id": "compute.regionInstanceTemplates.delete", + }, + "patch": { + "description": "Updates a managed instance group using the information that you specify\nin the request.\nThis operation is marked as DONE when the group is patched\neven if the instances in the group are still in the process of being\npatched. You must separately verify the status of the individual instances\nwith the listmanagedinstances\nmethod. This method supportsPATCH\nsemantics and uses theJSON merge\npatch format and processing rules.\n\nIf you update your group to specify a new template or instance\nconfiguration, it's possible that your intended specification for each VM\nin the group is different from the current state of that VM. To learn how\nto apply an updated configuration to the VMs in a MIG, seeUpdating instances in\na MIG.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "PATCH", + "id": "compute.regionInstanceGroupManagers.patch", "parameterOrder": [ "project", "region", - "instanceTemplate" + "instanceGroupManager" ], "parameters": { - "instanceTemplate": { - "description": "The name of the instance template to delete.", + "instanceGroupManager": { + "description": "The name of the instance group manager.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, @@ -27646,9 +29395,8 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -27658,7 +29406,10 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceTemplates/{instanceTemplate}", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "request": { + "$ref": "InstanceGroupManager" + }, "response": { "$ref": "Operation" }, @@ -27667,21 +29418,20 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified instance template.", - "flatPath": "projects/{project}/regions/{region}/instanceTemplates/{instanceTemplate}", - "httpMethod": "GET", - "id": "compute.regionInstanceTemplates.get", + "patchPerInstanceConfigs": { + "description": "Inserts or patches per-instance configurations for the managed instance\ngroup. perInstanceConfig.name serves as a key used to\ndistinguish whether to perform insert or patch.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.patchPerInstanceConfigs", "parameterOrder": [ "project", "region", - "instanceTemplate" + "instanceGroupManager" ], "parameters": { - "instanceTemplate": { - "description": "The name of the instance template.", + "instanceGroupManager": { + "description": "The name of the managed instance group.\nIt should conform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, @@ -27693,33 +29443,46 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request, should conform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceTemplates/{instanceTemplate}", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs", + "request": { + "$ref": "RegionInstanceGroupManagerPatchInstanceConfigReq" + }, "response": { - "$ref": "InstanceTemplate" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "insert": { - "description": "Creates an instance template in the specified project and region using the\nglobal instance template whose URL is included in the request.", - "flatPath": "projects/{project}/regions/{region}/instanceTemplates", + "recreateInstances": { + "description": "Flags the specified VM instances in the managed instance group to be\nimmediately recreated. Each instance is recreated using the group's current\nconfiguration. This operation is marked as DONE when the flag\nis set even if the instances have not yet been recreated. You must\nseparately verify the status of each instance by checking itscurrentAction field; for more information, see Checking\nthe status of managed instances.\n\nIf the group is part of a backend\nservice that has enabled\nconnection draining, it can take up to 60 seconds after the connection\ndraining duration has elapsed before the VM instance is removed or deleted.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", "httpMethod": "POST", - "id": "compute.regionInstanceTemplates.insert", + "id": "compute.regionInstanceGroupManagers.recreateInstances", "parameterOrder": [ "project", - "region" + "region", + "instanceGroupManager" ], "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -27728,9 +29491,8 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -27740,9 +29502,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/instanceTemplates", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", "request": { - "$ref": "InstanceTemplate" + "$ref": "RegionInstanceGroupManagersRecreateRequest" }, "response": { "$ref": "Operation" @@ -27752,37 +29514,22 @@ "https://www.googleapis.com/auth/compute" ] }, - "list": { - "description": "Retrieves a list of instance templates that are contained within the\nspecified project and region.", - "flatPath": "projects/{project}/regions/{region}/instanceTemplates", - "httpMethod": "GET", - "id": "compute.regionInstanceTemplates.list", + "resize": { + "description": "Changes the intended size of the managed instance group. If you increase\nthe size, the group creates new instances using the current instance\ntemplate. If you decrease the size, the group deletes one or more\ninstances.\n\nThe resize operation is marked DONE if theresize request is successful. The underlying actions take\nadditional time. You must separately verify the status of thecreating or deleting actions with thelistmanagedinstances\nmethod.\n\nIf the group is part of a backend\nservice that has enabled\nconnection draining, it can take up to 60 seconds after the connection\ndraining duration has elapsed before the VM instance is removed or deleted.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.resize", "parameterOrder": [ "project", - "region" + "region", + "instanceGroupManager", + "size" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, "type": "string" }, "project": { @@ -27793,42 +29540,51 @@ "type": "string" }, "region": { - "description": "The name of the regions for this request.", + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", - "type": "boolean" + "type": "string" + }, + "size": { + "description": "Number of instances that should exist in this instance group\nmanager.", + "format": "int32", + "location": "query", + "minimum": "0", + "required": true, + "type": "integer" } }, - "path": "projects/{project}/regions/{region}/instanceTemplates", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", "response": { - "$ref": "InstanceTemplateList" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] - } - } - }, - "regionInstances": { - "methods": { - "bulkInsert": { - "description": "Creates multiple instances in a given region. Count specifies the number of\ninstances to create.", - "flatPath": "projects/{project}/regions/{region}/instances/bulkInsert", + }, + "resumeInstances": { + "description": "Flags the specified instances in the managed instance group to be\nresumed. This method increases thetargetSize and decreases the targetSuspendedSize\nof the managed instance group by the number of instances that you resume.\nThe resumeInstances operation is marked DONE if\nthe resumeInstances request is successful. The underlying\nactions take additional time. You must separately verify the status of theRESUMING action with thelistmanagedinstances\nmethod.\n\nIn this request, you can only specify instances that are suspended. For\nexample, if an instance was previously suspended using the suspendInstances\nmethod, it can be resumed using the resumeInstances method.\n\nIf a health check is attached to the managed instance group, the specified\ninstances will be verified as healthy after they are resumed.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resumeInstances", "httpMethod": "POST", - "id": "compute.regionInstances.bulkInsert", + "id": "compute.regionInstanceGroupManagers.resumeInstances", "parameterOrder": [ "project", - "region" + "region", + "instanceGroupManager" ], "parameters": { + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -27837,9 +29593,8 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -27849,9 +29604,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/instances/bulkInsert", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resumeInstances", "request": { - "$ref": "BulkInsertInstanceResource" + "$ref": "RegionInstanceGroupManagersResumeInstancesRequest" }, "response": { "$ref": "Operation" @@ -27860,26 +29615,21 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - } - } - }, - "regionInstantSnapshots": { - "methods": { - "delete": { - "description": "Deletes the specified InstantSnapshot resource. Keep in mind that deleting\na single instantSnapshot might not necessarily delete all the data on that\ninstantSnapshot. If any data on the instantSnapshot that is marked for\ndeletion is needed for subsequent instantSnapshots, the data will be moved\nto the next corresponding instantSnapshot.\n\nFor more information, seeDeleting\ninstantSnapshots.", - "flatPath": "projects/{project}/regions/{region}/instantSnapshots/{instantSnapshot}", - "httpMethod": "DELETE", - "id": "compute.regionInstantSnapshots.delete", + }, + "setInstanceTemplate": { + "description": "Sets the instance template to use when creating new instances or recreating\ninstances in this group. Existing instances are not affected.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.setInstanceTemplate", "parameterOrder": [ "project", "region", - "instantSnapshot" + "instanceGroupManager" ], "parameters": { - "instantSnapshot": { - "description": "Name of the InstantSnapshot resource to delete.", + "instanceGroupManager": { + "description": "The name of the managed instance group.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, @@ -27891,9 +29641,8 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -27903,7 +29652,10 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/instantSnapshots/{instantSnapshot}", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "request": { + "$ref": "RegionInstanceGroupManagersSetTemplateRequest" + }, "response": { "$ref": "Operation" }, @@ -27912,21 +29664,20 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified InstantSnapshot resource in the specified region.", - "flatPath": "projects/{project}/regions/{region}/instantSnapshots/{instantSnapshot}", - "httpMethod": "GET", - "id": "compute.regionInstantSnapshots.get", + "setTargetPools": { + "description": "Modifies the target pools to which all new instances in this group are\nassigned. Existing instances in the group are not affected.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.setTargetPools", "parameterOrder": [ "project", "region", - "instantSnapshot" + "instanceGroupManager" ], "parameters": { - "instantSnapshot": { - "description": "Name of the InstantSnapshot resource to return.", + "instanceGroupManager": { + "description": "Name of the managed instance group.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, @@ -27938,39 +29689,45 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/instantSnapshots/{instantSnapshot}", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "request": { + "$ref": "RegionInstanceGroupManagersSetTargetPoolsRequest" + }, "response": { - "$ref": "InstantSnapshot" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", - "flatPath": "projects/{project}/regions/{region}/instantSnapshots/{resource}/getIamPolicy", - "httpMethod": "GET", - "id": "compute.regionInstantSnapshots.getIamPolicy", + "startInstances": { + "description": "Flags the specified instances in the managed instance group to be\nstarted. This method increases thetargetSize and decreases the targetStoppedSize\nof the managed instance group by the number of instances that you start.\nThe startInstances operation is marked DONE if\nthe startInstances request is successful. The underlying\nactions take additional time. You must separately verify the status of theSTARTING action with thelistmanagedinstances\nmethod.\n\nIn this request, you can only specify instances that are stopped. For\nexample, if an instance was previously stopped using the stopInstances\nmethod, it can be started using the startInstances method.\n\nIf a health check is attached to the managed instance group, the specified\ninstances will be verified as healthy after they are started.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/startInstances", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.startInstances", "parameterOrder": [ "project", "region", - "resource" + "instanceGroupManager" ], "parameters": { - "optionsRequestedPolicyVersion": { - "description": "Requested IAM Policy version.", - "format": "int32", - "location": "query", - "type": "integer" + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" }, "project": { "description": "Project ID for this request.", @@ -27980,40 +29737,46 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/instantSnapshots/{resource}/getIamPolicy", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/startInstances", + "request": { + "$ref": "RegionInstanceGroupManagersStartInstancesRequest" + }, "response": { - "$ref": "Policy" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "insert": { - "description": "Creates an instant snapshot in the specified region.", - "flatPath": "projects/{project}/regions/{region}/instantSnapshots", + "stopInstances": { + "description": "Flags the specified instances in the managed instance group to be\nimmediately stopped. You can only specify instances that are running in\nthis request. This method reduces thetargetSize and increases the targetStoppedSize\nof the managed instance group by the number of instances that you stop.\nThe stopInstances operation is marked DONE if\nthe stopInstances request is successful. The underlying\nactions take additional time. You must separately verify the status of theSTOPPING action with thelistmanagedinstances\nmethod.\n\nIf the standbyPolicy.initialDelaySec field is set, the group\ndelays stopping the instances until initialDelaySec have\npassed from instance.creationTimestamp (that is, when the\ninstance was created). This delay gives your application time to\nset itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there\nwill be zero delay.\n\nIf the group is part of a backend\nservice that has enabled\nconnection draining, it can take up to 60 seconds after the connection\ndraining duration has elapsed before the VM instance is stopped.\n\nStopped instances can be started using the startInstances\nmethod.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/stopInstances", "httpMethod": "POST", - "id": "compute.regionInstantSnapshots.insert", + "id": "compute.regionInstanceGroupManagers.stopInstances", "parameterOrder": [ "project", - "region" + "region", + "instanceGroupManager" ], "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -28022,9 +29785,8 @@ "type": "string" }, "region": { - "description": "Name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -28034,9 +29796,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/instantSnapshots", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/stopInstances", "request": { - "$ref": "InstantSnapshot" + "$ref": "RegionInstanceGroupManagersStopInstancesRequest" }, "response": { "$ref": "Operation" @@ -28046,37 +29808,21 @@ "https://www.googleapis.com/auth/compute" ] }, - "list": { - "description": "Retrieves the list of InstantSnapshot resources contained within\nthe specified region.", - "flatPath": "projects/{project}/regions/{region}/instantSnapshots", - "httpMethod": "GET", - "id": "compute.regionInstantSnapshots.list", + "suspendInstances": { + "description": "Flags the specified instances in the managed instance group to be\nimmediately suspended. You can only specify instances that are running in\nthis request. This method reduces thetargetSize and increases the targetSuspendedSize\nof the managed instance group by the number of instances that you suspend.\nThe suspendInstances operation is marked DONE if\nthe suspendInstances request is successful. The underlying\nactions take additional time. You must separately verify the status of theSUSPENDING action with thelistmanagedinstances\nmethod.\n\nIf the standbyPolicy.initialDelaySec field is set, the group\ndelays suspension of the instances until initialDelaySec have\npassed from instance.creationTimestamp (that is, when the\ninstance was created). This delay gives your application time to\nset itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there\nwill be zero delay.\n\nIf the group is part of a backend\nservice that has enabled\nconnection draining, it can take up to 60 seconds after the connection\ndraining duration has elapsed before the VM instance is suspended.\n\nSuspended instances can be resumed using the resumeInstances\nmethod.\n\nYou can specify a maximum of 1000 instances with this method per request.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/suspendInstances", + "httpMethod": "POST", + "id": "compute.regionInstanceGroupManagers.suspendInstances", "parameterOrder": [ "project", - "region" + "region", + "instanceGroupManager" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, "type": "string" }, "project": { @@ -28087,39 +29833,46 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", - "type": "boolean" + "type": "string" } }, - "path": "projects/{project}/regions/{region}/instantSnapshots", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/suspendInstances", + "request": { + "$ref": "RegionInstanceGroupManagersSuspendInstancesRequest" + }, "response": { - "$ref": "InstantSnapshotList" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", - "flatPath": "projects/{project}/regions/{region}/instantSnapshots/{resource}/setIamPolicy", + "updatePerInstanceConfigs": { + "description": "Inserts or updates per-instance configurations for the managed instance\ngroup. perInstanceConfig.name serves as a key used to\ndistinguish whether to perform insert or patch.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs", "httpMethod": "POST", - "id": "compute.regionInstantSnapshots.setIamPolicy", + "id": "compute.regionInstanceGroupManagers.updatePerInstanceConfigs", "parameterOrder": [ "project", "region", - "resource" + "instanceGroupManager" ], "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group.\nIt should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -28128,43 +29881,50 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request, should conform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/instantSnapshots/{resource}/setIamPolicy", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs", "request": { - "$ref": "RegionSetPolicyRequest" + "$ref": "RegionInstanceGroupManagerUpdateInstanceConfigReq" }, "response": { - "$ref": "Policy" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "setLabels": { - "description": "Sets the labels on a instantSnapshot in the given region. To learn more\nabout labels, read the Labeling\nResources documentation.", - "flatPath": "projects/{project}/regions/{region}/instantSnapshots/{resource}/setLabels", - "httpMethod": "POST", - "id": "compute.regionInstantSnapshots.setLabels", + } + } + }, + "regionInstanceGroups": { + "methods": { + "get": { + "description": "Returns the specified instance group resource.", + "flatPath": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}", + "httpMethod": "GET", + "id": "compute.regionInstanceGroups.get", "parameterOrder": [ "project", "region", - "resource" + "instanceGroup" ], "parameters": { + "instanceGroup": { + "description": "Name of the instance group resource to return.", + "location": "path", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -28173,48 +29933,124 @@ "type": "string" }, "region": { - "description": "The region for this request.", + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}", + "response": { + "$ref": "InstanceGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of instance group resources contained within\nthe specified region.", + "flatPath": "projects/{project}/regions/{region}/instanceGroups", + "httpMethod": "GET", + "id": "compute.regionInstanceGroups.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", "location": "query", "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/instantSnapshots/{resource}/setLabels", - "request": { - "$ref": "RegionSetLabelsRequest" - }, + "path": "projects/{project}/regions/{region}/instanceGroups", "response": { - "$ref": "Operation" + "$ref": "RegionInstanceGroupList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/regions/{region}/instantSnapshots/{resource}/testIamPermissions", + "listInstances": { + "description": "Lists the instances in the specified instance group and displays\ninformation about the named ports. Depending on the specified options, this\nmethod can list all instances or only the instances that are running.\nThe orderBy query parameter is not supported.", + "flatPath": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", "httpMethod": "POST", - "id": "compute.regionInstantSnapshots.testIamPermissions", + "id": "compute.regionInstanceGroups.listInstances", "parameterOrder": [ "project", "region", - "resource" + "instanceGroup" ], "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "instanceGroup": { + "description": "Name of the regional instance group for which we want to list the\ninstances.", + "location": "path", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -28223,50 +30059,43 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/instantSnapshots/{resource}/testIamPermissions", + "path": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", "request": { - "$ref": "TestPermissionsRequest" + "$ref": "RegionInstanceGroupsListInstancesRequest" }, "response": { - "$ref": "TestPermissionsResponse" + "$ref": "RegionInstanceGroupsListInstances" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "regionNetworkEndpointGroups": { - "methods": { - "attachNetworkEndpoints": { - "description": "Attach a list of network endpoints to the specified network endpoint group.", - "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints", + }, + "setNamedPorts": { + "description": "Sets the named ports for the specified regional instance group.", + "flatPath": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", "httpMethod": "POST", - "id": "compute.regionNetworkEndpointGroups.attachNetworkEndpoints", + "id": "compute.regionInstanceGroups.setNamedPorts", "parameterOrder": [ "project", "region", - "networkEndpointGroup" + "instanceGroup" ], "parameters": { - "networkEndpointGroup": { - "description": "The name of the network endpoint group where you are attaching network\nendpoints to. It should comply with RFC1035.", + "instanceGroup": { + "description": "The name of the regional instance group where the named ports are updated.", "location": "path", "required": true, "type": "string" @@ -28279,7 +30108,7 @@ "type": "string" }, "region": { - "description": "The name of the region where\nyou want to create the network endpoint group. It should comply with\nRFC1035.", + "description": "Name of the region scoping this request.", "location": "path", "required": true, "type": "string" @@ -28290,9 +30119,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints", + "path": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", "request": { - "$ref": "RegionNetworkEndpointGroupsAttachEndpointsRequest" + "$ref": "RegionInstanceGroupsSetNamedPortsRequest" }, "response": { "$ref": "Operation" @@ -28302,23 +30131,17 @@ "https://www.googleapis.com/auth/compute" ] }, - "delete": { - "description": "Deletes the specified network endpoint group. Note that the NEG cannot be\ndeleted if it is configured as a backend of a backend service.", - "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}", - "httpMethod": "DELETE", - "id": "compute.regionNetworkEndpointGroups.delete", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.regionInstanceGroups.testIamPermissions", "parameterOrder": [ "project", "region", - "networkEndpointGroup" + "resource" ], "parameters": { - "networkEndpointGroup": { - "description": "The name of the network endpoint group to delete. It should comply with\nRFC1035.", - "location": "path", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -28327,40 +30150,52 @@ "type": "string" }, "region": { - "description": "The name of the region where\nthe network endpoint group is located. It should comply with RFC1035.", + "description": "The name of the region for this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}", + "path": "projects/{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, "response": { - "$ref": "Operation" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] - }, - "detachNetworkEndpoints": { - "description": "Detach the network endpoint from the specified network endpoint group.", - "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints", - "httpMethod": "POST", - "id": "compute.regionNetworkEndpointGroups.detachNetworkEndpoints", + } + } + }, + "regionInstanceTemplates": { + "methods": { + "delete": { + "description": "Deletes the specified instance template. Deleting an instance template is\npermanent and cannot be undone.", + "flatPath": "projects/{project}/regions/{region}/instanceTemplates/{instanceTemplate}", + "httpMethod": "DELETE", + "id": "compute.regionInstanceTemplates.delete", "parameterOrder": [ "project", "region", - "networkEndpointGroup" + "instanceTemplate" ], "parameters": { - "networkEndpointGroup": { - "description": "The name of the network endpoint group you are detaching network\nendpoints from. It should comply with RFC1035.", + "instanceTemplate": { + "description": "The name of the instance template to delete.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, @@ -28372,21 +30207,19 @@ "type": "string" }, "region": { - "description": "The name of the region where\nthe network endpoint group is located. It should comply with\nRFC1035.", + "description": "The name of the region for this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).\nend_interface: MixerMutationRequestBuilder", + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints", - "request": { - "$ref": "RegionNetworkEndpointGroupsDetachEndpointsRequest" - }, + "path": "projects/{project}/regions/{region}/instanceTemplates/{instanceTemplate}", "response": { "$ref": "Operation" }, @@ -28396,19 +30229,20 @@ ] }, "get": { - "description": "Returns the specified network endpoint group.", - "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}", + "description": "Returns the specified instance template.", + "flatPath": "projects/{project}/regions/{region}/instanceTemplates/{instanceTemplate}", "httpMethod": "GET", - "id": "compute.regionNetworkEndpointGroups.get", + "id": "compute.regionInstanceTemplates.get", "parameterOrder": [ "project", "region", - "networkEndpointGroup" + "instanceTemplate" ], "parameters": { - "networkEndpointGroup": { - "description": "The name of the network endpoint group. It should comply with RFC1035.", + "instanceTemplate": { + "description": "The name of the instance template.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, @@ -28420,15 +30254,16 @@ "type": "string" }, "region": { - "description": "The name of the region where\nthe network endpoint group is located. It should comply with RFC1035.", + "description": "The name of the region for this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}", + "path": "projects/{project}/regions/{region}/instanceTemplates/{instanceTemplate}", "response": { - "$ref": "NetworkEndpointGroup" + "$ref": "InstanceTemplate" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -28437,10 +30272,10 @@ ] }, "insert": { - "description": "Creates a network endpoint group in the specified project using the\nparameters that are included in the request.\n\nNote: Use the following APIs to manage network endpoint groups:\n \n - \n To manage NEGs with zonal scope (such as zonal NEGs, hybrid connectivity\n NEGs): zonal\n API\n - \n To manage NEGs with regional scope (such as regional internet NEGs,\n serverless NEGs, Private Service Connect NEGs): regional\n API\n - \n To manage NEGs with global scope (such as global internet NEGs):global\n API", - "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups", + "description": "Creates an instance template in the specified project and region using the\nglobal instance template whose URL is included in the request.", + "flatPath": "projects/{project}/regions/{region}/instanceTemplates", "httpMethod": "POST", - "id": "compute.regionNetworkEndpointGroups.insert", + "id": "compute.regionInstanceTemplates.insert", "parameterOrder": [ "project", "region" @@ -28454,8 +30289,9 @@ "type": "string" }, "region": { - "description": "The name of the region where\nyou want to create the network endpoint group. It should comply with\nRFC1035.", + "description": "The name of the region for this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -28465,9 +30301,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/networkEndpointGroups", + "path": "projects/{project}/regions/{region}/instanceTemplates", "request": { - "$ref": "NetworkEndpointGroup" + "$ref": "InstanceTemplate" }, "response": { "$ref": "Operation" @@ -28478,10 +30314,10 @@ ] }, "list": { - "description": "Retrieves the list of regional network endpoint groups available to the\nspecified project in the given region.", - "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups", + "description": "Retrieves a list of instance templates that are contained within the\nspecified project and region.", + "flatPath": "projects/{project}/regions/{region}/instanceTemplates", "httpMethod": "GET", - "id": "compute.regionNetworkEndpointGroups.list", + "id": "compute.regionInstanceTemplates.list", "parameterOrder": [ "project", "region" @@ -28518,8 +30354,9 @@ "type": "string" }, "region": { - "description": "The name of theregion\nwhere the network endpoint group is located. It should comply with RFC1035.", + "description": "The name of the regions for this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -28529,56 +30366,30 @@ "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/networkEndpointGroups", + "path": "projects/{project}/regions/{region}/instanceTemplates", "response": { - "$ref": "NetworkEndpointGroupList" + "$ref": "InstanceTemplateList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "listNetworkEndpoints": { - "description": "Lists the network endpoints in the specified network endpoint group.", - "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints", + } + } + }, + "regionInstances": { + "methods": { + "bulkInsert": { + "description": "Creates multiple instances in a given region. Count specifies the number of\ninstances to create.", + "flatPath": "projects/{project}/regions/{region}/instances/bulkInsert", "httpMethod": "POST", - "id": "compute.regionNetworkEndpointGroups.listNetworkEndpoints", + "id": "compute.regionInstances.bulkInsert", "parameterOrder": [ "project", - "region", - "networkEndpointGroup" + "region" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "networkEndpointGroup": { - "description": "The name of the network endpoint group from which you want to generate a\nlist of included network endpoints. It should comply with RFC1035.", - "location": "path", - "required": true, - "type": "string" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -28587,44 +30398,47 @@ "type": "string" }, "region": { - "description": "The name of theregion\nwhere the network endpoint group is located. It should comply with RFC1035.", + "description": "The name of the region for this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", - "type": "boolean" + "type": "string" } }, - "path": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints", + "path": "projects/{project}/regions/{region}/instances/bulkInsert", + "request": { + "$ref": "BulkInsertInstanceResource" + }, "response": { - "$ref": "NetworkEndpointGroupsListNetworkEndpoints" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] } } }, - "regionNetworkFirewallPolicies": { + "regionInstantSnapshotGroups": { "methods": { - "addAssociation": { - "description": "Inserts an association for the specified network firewall policy.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/addAssociation", - "httpMethod": "POST", - "id": "compute.regionNetworkFirewallPolicies.addAssociation", + "delete": { + "description": "deletes a Regional InstantSnapshotGroup resource", + "flatPath": "projects/{project}/regions/{region}/instantSnapshotGroups/{instantSnapshotGroup}", + "httpMethod": "DELETE", + "id": "compute.regionInstantSnapshotGroups.delete", "parameterOrder": [ "project", "region", - "firewallPolicy" + "instantSnapshotGroup" ], "parameters": { - "firewallPolicy": { - "description": "Name of the firewall policy to update.", + "instantSnapshotGroup": { + "description": "Name of the InstantSnapshotGroup resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -28638,27 +30452,19 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "replaceExistingAssociation": { - "description": "Indicates whether or not to replace it if an association already exists.\nThis is false by default, in which case an error will be returned if an\nassociation already exists.", - "location": "query", - "type": "boolean" - }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/addAssociation", - "request": { - "$ref": "FirewallPolicyAssociation" - }, + "path": "projects/{project}/regions/{region}/instantSnapshotGroups/{instantSnapshotGroup}", "response": { "$ref": "Operation" }, @@ -28667,36 +30473,24 @@ "https://www.googleapis.com/auth/compute" ] }, - "addRule": { - "description": "Inserts a rule into a network firewall policy.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/addRule", - "httpMethod": "POST", - "id": "compute.regionNetworkFirewallPolicies.addRule", + "get": { + "description": "returns the specified InstantSnapshotGroup resource in the specified\nregion.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshotGroups/{instantSnapshotGroup}", + "httpMethod": "GET", + "id": "compute.regionInstantSnapshotGroups.get", "parameterOrder": [ "project", "region", - "firewallPolicy" + "instantSnapshotGroup" ], "parameters": { - "firewallPolicy": { - "description": "Name of the firewall policy to update.", + "instantSnapshotGroup": { + "description": "Name of the InstantSnapshotGroup resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "maxPriority": { - "description": "When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority>.\nThis field is exclusive with rule.priority.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "minPriority": { - "description": "When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority>.\nThis field is exclusive with rule.priority.", - "format": "int32", - "location": "query", - "type": "integer" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -28705,47 +30499,39 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/addRule", - "request": { - "$ref": "FirewallPolicyRule" - }, + "path": "projects/{project}/regions/{region}/instantSnapshotGroups/{instantSnapshotGroup}", "response": { - "$ref": "Operation" + "$ref": "InstantSnapshotGroup" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "cloneRules": { - "description": "Copies rules to the specified network firewall policy.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/cloneRules", - "httpMethod": "POST", - "id": "compute.regionNetworkFirewallPolicies.cloneRules", + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.regionInstantSnapshotGroups.getIamPolicy", "parameterOrder": [ "project", "region", - "firewallPolicy" + "resource" ], "parameters": { - "firewallPolicy": { - "description": "Name of the firewall policy to update.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" }, "project": { "description": "Project ID for this request.", @@ -28755,50 +30541,40 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "sourceFirewallPolicy": { - "description": "The firewall policy from which to copy rules.", - "location": "query", + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/cloneRules", + "path": "projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/getIamPolicy", "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "delete": { - "description": "Deletes the specified network firewall policy.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}", - "httpMethod": "DELETE", - "id": "compute.regionNetworkFirewallPolicies.delete", + "insert": { + "description": "creates a Regional InstantSnapshotGroup resource", + "flatPath": "projects/{project}/regions/{region}/instantSnapshotGroups", + "httpMethod": "POST", + "id": "compute.regionInstantSnapshotGroups.insert", "parameterOrder": [ "project", - "region", - "firewallPolicy" + "region" ], "parameters": { - "firewallPolicy": { - "description": "Name of the firewall policy to delete.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -28807,7 +30583,7 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -28817,9 +30593,17 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" + }, + "sourceConsistencyGroup": { + "description": "begin_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}", + "path": "projects/{project}/regions/{region}/instantSnapshotGroups", + "request": { + "$ref": "InstantSnapshotGroup" + }, "response": { "$ref": "Operation" }, @@ -28828,69 +30612,36 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified network firewall policy.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}", + "list": { + "description": "retrieves the list of InstantSnapshotGroup resources contained within\nthe specified region.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshotGroups", "httpMethod": "GET", - "id": "compute.regionNetworkFirewallPolicies.get", + "id": "compute.regionInstantSnapshotGroups.list", "parameterOrder": [ "project", - "region", - "firewallPolicy" + "region" ], "parameters": { - "firewallPolicy": { - "description": "Name of the firewall policy to get.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", "type": "string" }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}", - "response": { - "$ref": "FirewallPolicy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getAssociation": { - "description": "Gets an association with the specified name.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/getAssociation", - "httpMethod": "GET", - "id": "compute.regionNetworkFirewallPolicies.getAssociation", - "parameterOrder": [ - "project", - "region", - "firewallPolicy" - ], - "parameters": { - "firewallPolicy": { - "description": "Name of the firewall policy to which the queried association belongs.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", "type": "string" }, - "name": { - "description": "The name of the association to get from the firewall policy.", + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", "location": "query", "type": "string" }, @@ -28902,16 +30653,21 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/getAssociation", + "path": "projects/{project}/regions/{region}/instantSnapshotGroups", "response": { - "$ref": "FirewallPolicyAssociation" + "$ref": "ListInstantSnapshotGroups" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -28919,23 +30675,17 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "getEffectiveFirewalls": { - "description": "Returns the effective firewalls on a given network.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/getEffectiveFirewalls", - "httpMethod": "GET", - "id": "compute.regionNetworkFirewallPolicies.getEffectiveFirewalls", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.regionInstantSnapshotGroups.setIamPolicy", "parameterOrder": [ "project", "region", - "network" + "resource" ], "parameters": { - "network": { - "description": "Network reference", - "location": "query", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -28944,40 +30694,43 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/getEffectiveFirewalls", + "path": "projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/setIamPolicy", + "request": { + "$ref": "RegionSetPolicyRequest" + }, "response": { - "$ref": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{resource}/getIamPolicy", - "httpMethod": "GET", - "id": "compute.regionNetworkFirewallPolicies.getIamPolicy", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.regionInstantSnapshotGroups.testIamPermissions", "parameterOrder": [ "project", "region", "resource" ], "parameters": { - "optionsRequestedPolicyVersion": { - "description": "Requested IAM Policy version.", - "format": "int32", - "location": "query", - "type": "integer" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -29000,75 +30753,41 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{resource}/getIamPolicy", + "path": "projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, "response": { - "$ref": "Policy" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "getRule": { - "description": "Gets a rule of the specified priority.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/getRule", - "httpMethod": "GET", - "id": "compute.regionNetworkFirewallPolicies.getRule", + } + } + }, + "regionInstantSnapshots": { + "methods": { + "delete": { + "description": "Deletes the specified InstantSnapshot resource. Keep in mind that deleting\na single instantSnapshot might not necessarily delete all the data on that\ninstantSnapshot. If any data on the instantSnapshot that is marked for\ndeletion is needed for subsequent instantSnapshots, the data will be moved\nto the next corresponding instantSnapshot.\n\nFor more information, seeDeleting\ninstantSnapshots.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshots/{instantSnapshot}", + "httpMethod": "DELETE", + "id": "compute.regionInstantSnapshots.delete", "parameterOrder": [ "project", "region", - "firewallPolicy" + "instantSnapshot" ], "parameters": { - "firewallPolicy": { - "description": "Name of the firewall policy to which the queried rule belongs.", + "instantSnapshot": { + "description": "Name of the InstantSnapshot resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "priority": { - "description": "The priority of the rule to get from the firewall policy.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/getRule", - "response": { - "$ref": "FirewallPolicyRule" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "description": "Creates a new network firewall policy in the specified project and region.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies", - "httpMethod": "POST", - "id": "compute.regionNetworkFirewallPolicies.insert", - "parameterOrder": [ - "project", - "region" - ], - "parameters": { "project": { "description": "Project ID for this request.", "location": "path", @@ -29077,22 +30796,19 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID\nso that if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies", - "request": { - "$ref": "FirewallPolicy" - }, + "path": "projects/{project}/regions/{region}/instantSnapshots/{instantSnapshot}", "response": { "$ref": "Operation" }, @@ -29101,37 +30817,22 @@ "https://www.googleapis.com/auth/compute" ] }, - "list": { - "description": "Lists all the network firewall policies that have been configured\nfor the specified project in the given region.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies", + "get": { + "description": "Returns the specified InstantSnapshot resource in the specified region.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshots/{instantSnapshot}", "httpMethod": "GET", - "id": "compute.regionNetworkFirewallPolicies.list", + "id": "compute.regionInstantSnapshots.get", "parameterOrder": [ "project", - "region" + "region", + "instantSnapshot" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", + "instantSnapshot": { + "description": "Name of the InstantSnapshot resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" }, "project": { @@ -29142,21 +30843,16 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies", + "path": "projects/{project}/regions/{region}/instantSnapshots/{instantSnapshot}", "response": { - "$ref": "FirewallPolicyList" + "$ref": "InstantSnapshot" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -29164,23 +30860,22 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "patch": { - "description": "Patches the specified network firewall policy.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}", - "httpMethod": "PATCH", - "id": "compute.regionNetworkFirewallPolicies.patch", + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshots/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.regionInstantSnapshots.getIamPolicy", "parameterOrder": [ "project", "region", - "firewallPolicy" + "resource" ], "parameters": { - "firewallPolicy": { - "description": "Name of the firewall policy to update.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" }, "project": { "description": "Project ID for this request.", @@ -29190,54 +30885,40 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}", - "request": { - "$ref": "FirewallPolicy" - }, + "path": "projects/{project}/regions/{region}/instantSnapshots/{resource}/getIamPolicy", "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "patchRule": { - "description": "Patches a rule of the specified priority.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/patchRule", + "insert": { + "description": "Creates an instant snapshot in the specified region.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshots", "httpMethod": "POST", - "id": "compute.regionNetworkFirewallPolicies.patchRule", + "id": "compute.regionInstantSnapshots.insert", "parameterOrder": [ "project", - "region", - "firewallPolicy" + "region" ], "parameters": { - "firewallPolicy": { - "description": "Name of the firewall policy to update.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "priority": { - "description": "The priority of the rule to patch.", - "format": "int32", - "location": "query", - "type": "integer" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -29246,7 +30927,7 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -29258,9 +30939,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/patchRule", + "path": "projects/{project}/regions/{region}/instantSnapshots", "request": { - "$ref": "FirewallPolicyRule" + "$ref": "InstantSnapshot" }, "response": { "$ref": "Operation" @@ -29270,26 +30951,36 @@ "https://www.googleapis.com/auth/compute" ] }, - "removeAssociation": { - "description": "Removes an association for the specified network firewall policy.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/removeAssociation", - "httpMethod": "POST", - "id": "compute.regionNetworkFirewallPolicies.removeAssociation", + "list": { + "description": "Retrieves the list of InstantSnapshot resources contained within\nthe specified region.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshots", + "httpMethod": "GET", + "id": "compute.regionInstantSnapshots.list", "parameterOrder": [ "project", - "region", - "firewallPolicy" + "region" ], "parameters": { - "firewallPolicy": { - "description": "Name of the firewall policy to update.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", "type": "string" }, - "name": { - "description": "Name for the association that will be removed.", + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", "location": "query", "type": "string" }, @@ -29301,51 +30992,39 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", - "type": "string" + "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/removeAssociation", + "path": "projects/{project}/regions/{region}/instantSnapshots", "response": { - "$ref": "Operation" + "$ref": "InstantSnapshotList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "removeRule": { - "description": "Deletes a rule of the specified priority.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/removeRule", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshots/{resource}/setIamPolicy", "httpMethod": "POST", - "id": "compute.regionNetworkFirewallPolicies.removeRule", + "id": "compute.regionInstantSnapshots.setIamPolicy", "parameterOrder": [ "project", "region", - "firewallPolicy" + "resource" ], "parameters": { - "firewallPolicy": { - "description": "Name of the firewall policy to update.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "priority": { - "description": "The priority of the rule to remove from the firewall policy.", - "format": "int32", - "location": "query", - "type": "integer" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -29354,32 +31033,37 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/removeRule", + "path": "projects/{project}/regions/{region}/instantSnapshots/{resource}/setIamPolicy", + "request": { + "$ref": "RegionSetPolicyRequest" + }, "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{resource}/setIamPolicy", + "setLabels": { + "description": "Sets the labels on a instantSnapshot in the given region. To learn more\nabout labels, read the Labeling\nResources documentation.", + "flatPath": "projects/{project}/regions/{region}/instantSnapshots/{resource}/setLabels", "httpMethod": "POST", - "id": "compute.regionNetworkFirewallPolicies.setIamPolicy", + "id": "compute.regionInstantSnapshots.setLabels", "parameterOrder": [ "project", "region", @@ -29394,12 +31078,17 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "The region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, "resource": { "description": "Name or id of the resource for this request.", "location": "path", @@ -29408,12 +31097,12 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{resource}/setIamPolicy", + "path": "projects/{project}/regions/{region}/instantSnapshots/{resource}/setLabels", "request": { - "$ref": "RegionSetPolicyRequest" + "$ref": "RegionSetLabelsRequest" }, "response": { - "$ref": "Policy" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -29422,9 +31111,9 @@ }, "testIamPermissions": { "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{resource}/testIamPermissions", + "flatPath": "projects/{project}/regions/{region}/instantSnapshots/{resource}/testIamPermissions", "httpMethod": "POST", - "id": "compute.regionNetworkFirewallPolicies.testIamPermissions", + "id": "compute.regionInstantSnapshots.testIamPermissions", "parameterOrder": [ "project", "region", @@ -29453,7 +31142,7 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/firewallPolicies/{resource}/testIamPermissions", + "path": "projects/{project}/regions/{region}/instantSnapshots/{resource}/testIamPermissions", "request": { "$ref": "TestPermissionsRequest" }, @@ -29468,23 +31157,22 @@ } } }, - "regionNotificationEndpoints": { + "regionNetworkEndpointGroups": { "methods": { - "delete": { - "description": "Deletes the specified NotificationEndpoint in the given region", - "flatPath": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}", - "httpMethod": "DELETE", - "id": "compute.regionNotificationEndpoints.delete", + "attachNetworkEndpoints": { + "description": "Attach a list of network endpoints to the specified network endpoint group.", + "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints", + "httpMethod": "POST", + "id": "compute.regionNetworkEndpointGroups.attachNetworkEndpoints", "parameterOrder": [ "project", "region", - "notificationEndpoint" + "networkEndpointGroup" ], "parameters": { - "notificationEndpoint": { - "description": "Name of the NotificationEndpoint resource to delete.", + "networkEndpointGroup": { + "description": "The name of the network endpoint group where you are attaching network\nendpoints to. It should comply with RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, @@ -29496,9 +31184,8 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region where\nyou want to create the network endpoint group. It should comply with\nRFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -29508,7 +31195,10 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}", + "path": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints", + "request": { + "$ref": "RegionNetworkEndpointGroupsAttachEndpointsRequest" + }, "response": { "$ref": "Operation" }, @@ -29517,21 +31207,20 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified NotificationEndpoint resource in the given region.", - "flatPath": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}", - "httpMethod": "GET", - "id": "compute.regionNotificationEndpoints.get", + "delete": { + "description": "Deletes the specified network endpoint group. Note that the NEG cannot be\ndeleted if it is configured as a backend of a backend service.", + "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}", + "httpMethod": "DELETE", + "id": "compute.regionNetworkEndpointGroups.delete", "parameterOrder": [ "project", "region", - "notificationEndpoint" + "networkEndpointGroup" ], "parameters": { - "notificationEndpoint": { - "description": "Name of the NotificationEndpoint resource to return.", + "networkEndpointGroup": { + "description": "The name of the network endpoint group to delete. It should comply with\nRFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, @@ -29543,33 +31232,43 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region where\nthe network endpoint group is located. It should comply with RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}", + "path": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}", "response": { - "$ref": "NotificationEndpoint" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "insert": { - "description": "Create a NotificationEndpoint in the specified project in the given region\nusing the parameters that are included in the request.", - "flatPath": "projects/{project}/regions/{region}/notificationEndpoints", + "detachNetworkEndpoints": { + "description": "Detach the network endpoint from the specified network endpoint group.", + "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints", "httpMethod": "POST", - "id": "compute.regionNotificationEndpoints.insert", + "id": "compute.regionNetworkEndpointGroups.detachNetworkEndpoints", "parameterOrder": [ "project", - "region" + "region", + "networkEndpointGroup" ], "parameters": { + "networkEndpointGroup": { + "description": "The name of the network endpoint group you are detaching network\nendpoints from. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -29578,21 +31277,20 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region where\nthe network endpoint group is located. It should comply with\nRFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).\nend_interface: MixerMutationRequestBuilder", "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/notificationEndpoints", + "path": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints", "request": { - "$ref": "NotificationEndpoint" + "$ref": "RegionNetworkEndpointGroupsDetachEndpointsRequest" }, "response": { "$ref": "Operation" @@ -29602,37 +31300,21 @@ "https://www.googleapis.com/auth/compute" ] }, - "list": { - "description": "Lists the NotificationEndpoints for a project in the given region.", - "flatPath": "projects/{project}/regions/{region}/notificationEndpoints", + "get": { + "description": "Returns the specified network endpoint group.", + "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}", "httpMethod": "GET", - "id": "compute.regionNotificationEndpoints.list", + "id": "compute.regionNetworkEndpointGroups.get", "parameterOrder": [ "project", - "region" + "region", + "networkEndpointGroup" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", + "networkEndpointGroup": { + "description": "The name of the network endpoint group. It should comply with RFC1035.", + "location": "path", + "required": true, "type": "string" }, "project": { @@ -29643,21 +31325,15 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region where\nthe network endpoint group is located. It should comply with RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/notificationEndpoints", + "path": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}", "response": { - "$ref": "NotificationEndpointList" + "$ref": "NetworkEndpointGroup" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -29665,15 +31341,14 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/regions/{region}/notificationEndpoints/{resource}/testIamPermissions", + "insert": { + "description": "Creates a network endpoint group in the specified project using the\nparameters that are included in the request.\n\nNote: Use the following APIs to manage network endpoint groups:\n \n - \n To manage NEGs with zonal scope (such as zonal NEGs, hybrid connectivity\n NEGs): zonal\n API\n - \n To manage NEGs with regional scope (such as regional internet NEGs,\n serverless NEGs, Private Service Connect NEGs): regional\n API\n - \n To manage NEGs with global scope (such as global internet NEGs):global\n API", + "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups", "httpMethod": "POST", - "id": "compute.regionNotificationEndpoints.testIamPermissions", + "id": "compute.regionNetworkEndpointGroups.insert", "parameterOrder": [ "project", - "region", - "resource" + "region" ], "parameters": { "project": { @@ -29684,92 +31359,60 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "The name of the region where\nyou want to create the network endpoint group. It should comply with\nRFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/notificationEndpoints/{resource}/testIamPermissions", + "path": "projects/{project}/regions/{region}/networkEndpointGroups", "request": { - "$ref": "TestPermissionsRequest" + "$ref": "NetworkEndpointGroup" }, "response": { - "$ref": "TestPermissionsResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] - } - } - }, - "regionOperations": { - "methods": { - "delete": { - "description": "Deletes the specified region-specific Operations resource.", - "flatPath": "projects/{project}/regions/{region}/operations/{operation}", - "httpMethod": "DELETE", - "id": "compute.regionOperations.delete", + }, + "list": { + "description": "Retrieves the list of regional network endpoint groups available to the\nspecified project in the given region.", + "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups", + "httpMethod": "GET", + "id": "compute.regionNetworkEndpointGroups.list", "parameterOrder": [ "project", - "region", - "operation" + "region" ], "parameters": { - "operation": { - "description": "Name of the Operations resource to delete, or its unique numeric\nidentifier.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", "type": "string" }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/operations/{operation}", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "description": "Retrieves the specified region-specific Operations resource.", - "flatPath": "projects/{project}/regions/{region}/operations/{operation}", - "httpMethod": "GET", - "id": "compute.regionOperations.get", - "parameterOrder": [ - "project", - "region", - "operation" - ], - "parameters": { - "operation": { - "description": "Name of the Operations resource to return, or its unique numeric\nidentifier.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", "type": "string" }, "project": { @@ -29780,16 +31423,20 @@ "type": "string" }, "region": { - "description": "Name of the region for this request.", + "description": "The name of theregion\nwhere the network endpoint group is located. It should comply with RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/operations/{operation}", + "path": "projects/{project}/regions/{region}/networkEndpointGroups", "response": { - "$ref": "Operation" + "$ref": "NetworkEndpointGroupList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -29797,14 +31444,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "list": { - "description": "Retrieves a list of Operation resources contained within\nthe specified region.", - "flatPath": "projects/{project}/regions/{region}/operations", - "httpMethod": "GET", - "id": "compute.regionOperations.list", + "listNetworkEndpoints": { + "description": "Lists the network endpoints in the specified network endpoint group.", + "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints", + "httpMethod": "POST", + "id": "compute.regionNetworkEndpointGroups.listNetworkEndpoints", "parameterOrder": [ "project", - "region" + "region", + "networkEndpointGroup" ], "parameters": { "filter": { @@ -29820,6 +31468,12 @@ "minimum": "0", "type": "integer" }, + "networkEndpointGroup": { + "description": "The name of the network endpoint group from which you want to generate a\nlist of included network endpoints. It should comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, "orderBy": { "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", "location": "query", @@ -29838,9 +31492,8 @@ "type": "string" }, "region": { - "description": "Name of the region for this request.", + "description": "The name of theregion\nwhere the network endpoint group is located. It should comply with RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -29850,29 +31503,33 @@ "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/operations", + "path": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints", "response": { - "$ref": "OperationList" + "$ref": "NetworkEndpointGroupsListNetworkEndpoints" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "wait": { - "description": "Waits for the specified Operation resource to return as `DONE`\nor for the request to approach the 2 minute deadline, and retrieves the\nspecified Operation resource. This method differs from the\n`GET` method in that it waits for no more than the default\ndeadline (2 minutes) and then returns the current state of the operation,\nwhich might be `DONE` or still in progress.\n\nThis method is called on a best-effort basis. Specifically:\n \n \n - In uncommon cases, when the server is overloaded, the request might\n return before the default deadline is reached, or might return after zero\n seconds.\n - If the default deadline is reached, there is no guarantee that the\n operation is actually done when the method returns. Be prepared to retry\n if the operation is not `DONE`.", - "flatPath": "projects/{project}/regions/{region}/operations/{operation}/wait", + } + } + }, + "regionNetworkFirewallPolicies": { + "methods": { + "addAssociation": { + "description": "Inserts an association for the specified network firewall policy.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/addAssociation", "httpMethod": "POST", - "id": "compute.regionOperations.wait", + "id": "compute.regionNetworkFirewallPolicies.addAssociation", "parameterOrder": [ "project", "region", - "operation" + "firewallPolicy" ], "parameters": { - "operation": { - "description": "Name of the Operations resource to return, or its unique numeric\nidentifier.", + "firewallPolicy": { + "description": "Name of the firewall policy to update.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -29886,38 +31543,65 @@ "type": "string" }, "region": { - "description": "Name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "replaceExistingAssociation": { + "description": "Indicates whether or not to replace it if an association already exists.\nThis is false by default, in which case an error will be returned if an\nassociation already exists.", + "location": "query", + "type": "boolean" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/operations/{operation}/wait", + "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/addAssociation", + "request": { + "$ref": "FirewallPolicyAssociation" + }, "response": { "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] - } - } - }, - "regionSecurityPolicies": { - "methods": { + }, "addRule": { - "description": "Inserts a rule into a security policy.", - "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/addRule", + "description": "Inserts a rule into a network firewall policy.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/addRule", "httpMethod": "POST", - "id": "compute.regionSecurityPolicies.addRule", + "id": "compute.regionNetworkFirewallPolicies.addRule", "parameterOrder": [ "project", "region", - "securityPolicy" + "firewallPolicy" ], "parameters": { + "firewallPolicy": { + "description": "Name of the firewall policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "maxPriority": { + "description": "When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority>.\nThis field is exclusive with rule.priority.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "minPriority": { + "description": "When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority>.\nThis field is exclusive with rule.priority.", + "format": "int32", + "location": "query", + "type": "integer" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -29932,22 +31616,15 @@ "required": true, "type": "string" }, - "securityPolicy": { - "description": "Name of the security policy to update.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "validateOnly": { - "description": "If true, the request will not be committed.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", - "type": "boolean" + "type": "string" } }, - "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/addRule", + "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/addRule", "request": { - "$ref": "SecurityPolicyRule" + "$ref": "FirewallPolicyRule" }, "response": { "$ref": "Operation" @@ -29957,17 +31634,24 @@ "https://www.googleapis.com/auth/compute" ] }, - "delete": { - "description": "Deletes the specified policy.", - "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}", - "httpMethod": "DELETE", - "id": "compute.regionSecurityPolicies.delete", + "cloneRules": { + "description": "Copies rules to the specified network firewall policy.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/cloneRules", + "httpMethod": "POST", + "id": "compute.regionNetworkFirewallPolicies.cloneRules", "parameterOrder": [ "project", "region", - "securityPolicy" + "firewallPolicy" ], "parameters": { + "firewallPolicy": { + "description": "Name of the firewall policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -29987,15 +31671,13 @@ "location": "query", "type": "string" }, - "securityPolicy": { - "description": "Name of the security policy to delete.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + "sourceFirewallPolicy": { + "description": "The firewall policy from which to copy rules.", + "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}", + "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/cloneRules", "response": { "$ref": "Operation" }, @@ -30004,17 +31686,24 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "List all of the ordered rules present in a single specified policy.", - "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}", - "httpMethod": "GET", - "id": "compute.regionSecurityPolicies.get", + "delete": { + "description": "Deletes the specified network firewall policy.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}", + "httpMethod": "DELETE", + "id": "compute.regionNetworkFirewallPolicies.delete", "parameterOrder": [ "project", "region", - "securityPolicy" + "firewallPolicy" ], "parameters": { + "firewallPolicy": { + "description": "Name of the firewall policy to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -30029,40 +31718,38 @@ "required": true, "type": "string" }, - "securityPolicy": { - "description": "Name of the security policy to get.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}", + "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}", "response": { - "$ref": "SecurityPolicy" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "getRule": { - "description": "Gets a rule at the specified priority.", - "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/getRule", + "get": { + "description": "Returns the specified network firewall policy.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}", "httpMethod": "GET", - "id": "compute.regionSecurityPolicies.getRule", + "id": "compute.regionNetworkFirewallPolicies.get", "parameterOrder": [ "project", "region", - "securityPolicy" + "firewallPolicy" ], "parameters": { - "priority": { - "description": "The priority of the rule to get from the security policy.", - "format": "int32", - "location": "query", - "type": "integer" + "firewallPolicy": { + "description": "Name of the firewall policy to get.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" }, "project": { "description": "Project ID for this request.", @@ -30077,18 +31764,11 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "securityPolicy": { - "description": "Name of the security policy to which the queried rule belongs.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" } }, - "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/getRule", + "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}", "response": { - "$ref": "SecurityPolicyRule" + "$ref": "FirewallPolicy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -30096,16 +31776,29 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "insert": { - "description": "Creates a new policy in the specified project using the data included in\nthe request.", - "flatPath": "projects/{project}/regions/{region}/securityPolicies", - "httpMethod": "POST", - "id": "compute.regionSecurityPolicies.insert", + "getAssociation": { + "description": "Gets an association with the specified name.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/getAssociation", + "httpMethod": "GET", + "id": "compute.regionNetworkFirewallPolicies.getAssociation", "parameterOrder": [ "project", - "region" + "region", + "firewallPolicy" ], "parameters": { + "firewallPolicy": { + "description": "Name of the firewall policy to which the queried association belongs.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "name": { + "description": "The name of the association to get from the firewall policy.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -30119,61 +31812,33 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "If true, the request will not be committed.", - "location": "query", - "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/securityPolicies", - "request": { - "$ref": "SecurityPolicy" - }, + "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/getAssociation", "response": { - "$ref": "Operation" + "$ref": "FirewallPolicyAssociation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "list": { - "description": "List all the policies that have been configured for the specified project\nand region.", - "flatPath": "projects/{project}/regions/{region}/securityPolicies", + "getEffectiveFirewalls": { + "description": "Returns the effective firewalls on a given network.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/getEffectiveFirewalls", "httpMethod": "GET", - "id": "compute.regionSecurityPolicies.list", + "id": "compute.regionNetworkFirewallPolicies.getEffectiveFirewalls", "parameterOrder": [ "project", - "region" + "region", + "network" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "network": { + "description": "Network reference", "location": "query", + "required": true, "type": "string" }, "project": { @@ -30189,16 +31854,11 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/securityPolicies", + "path": "projects/{project}/regions/{region}/firewallPolicies/getEffectiveFirewalls", "response": { - "$ref": "SecurityPolicyList" + "$ref": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -30206,17 +31866,23 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "patch": { - "description": "Patches the specified policy with the data included in the request. To\nclear fields in the policy, leave the fields empty and specify them in the\nupdateMask. This cannot be used to be update the rules in the policy.\nPlease use the per rule methods like addRule, patchRule, and removeRule\ninstead.", - "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}", - "httpMethod": "PATCH", - "id": "compute.regionSecurityPolicies.patch", + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.regionNetworkFirewallPolicies.getIamPolicy", "parameterOrder": [ "project", "region", - "securityPolicy" + "resource" ], "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -30225,56 +31891,50 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "securityPolicy": { - "description": "Name of the security policy to update.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - }, - "updateMask": { - "description": "Indicates fields to be cleared as part of this request.", - "format": "google-fieldmask", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}", - "request": { - "$ref": "SecurityPolicy" - }, + "path": "projects/{project}/regions/{region}/firewallPolicies/{resource}/getIamPolicy", "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "patchRule": { - "description": "Patches a rule at the specified priority. To clear fields in the rule,\nleave the fields empty and specify them in the updateMask.", - "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/patchRule", - "httpMethod": "POST", - "id": "compute.regionSecurityPolicies.patchRule", + "getRule": { + "description": "Gets a rule of the specified priority.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/getRule", + "httpMethod": "GET", + "id": "compute.regionNetworkFirewallPolicies.getRule", "parameterOrder": [ "project", "region", - "securityPolicy" + "firewallPolicy" ], "parameters": { + "firewallPolicy": { + "description": "Name of the firewall policy to which the queried rule belongs.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, "priority": { - "description": "The priority of the rule to patch.", + "description": "The priority of the rule to get from the firewall policy.", "format": "int32", "location": "query", "type": "integer" @@ -30292,29 +31952,51 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "securityPolicy": { - "description": "Name of the security policy to update.", + } + }, + "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/getRule", + "response": { + "$ref": "FirewallPolicyRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a new network firewall policy in the specified project and region.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies", + "httpMethod": "POST", + "id": "compute.regionNetworkFirewallPolicies.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "updateMask": { - "description": "Indicates fields to be cleared as part of this request.", - "format": "google-fieldmask", - "location": "query", + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" }, - "validateOnly": { - "description": "If true, the request will not be committed.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID\nso that if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", - "type": "boolean" + "type": "string" } }, - "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/patchRule", + "path": "projects/{project}/regions/{region}/firewallPolicies", "request": { - "$ref": "SecurityPolicyRule" + "$ref": "FirewallPolicy" }, "response": { "$ref": "Operation" @@ -30324,23 +32006,39 @@ "https://www.googleapis.com/auth/compute" ] }, - "removeRule": { - "description": "Deletes a rule at the specified priority.", - "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/removeRule", - "httpMethod": "POST", - "id": "compute.regionSecurityPolicies.removeRule", + "list": { + "description": "Lists all the network firewall policies that have been configured\nfor the specified project in the given region.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies", + "httpMethod": "GET", + "id": "compute.regionNetworkFirewallPolicies.list", "parameterOrder": [ "project", - "region", - "securityPolicy" + "region" ], "parameters": { - "priority": { - "description": "The priority of the rule to remove from the security policy.", - "format": "int32", + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", "location": "query", + "minimum": "0", "type": "integer" }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -30355,15 +32053,64 @@ "required": true, "type": "string" }, - "securityPolicy": { - "description": "Name of the security policy to update.", + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/firewallPolicies", + "response": { + "$ref": "FirewallPolicyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified network firewall policy.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}", + "httpMethod": "PATCH", + "id": "compute.regionNetworkFirewallPolicies.patch", + "parameterOrder": [ + "project", + "region", + "firewallPolicy" + ], + "parameters": { + "firewallPolicy": { + "description": "Name of the firewall policy to update.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/removeRule", + "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}", + "request": { + "$ref": "FirewallPolicy" + }, "response": { "$ref": "Operation" }, @@ -30372,17 +32119,30 @@ "https://www.googleapis.com/auth/compute" ] }, - "setLabels": { - "description": "Sets the labels on a security policy. To learn more about labels,\nread the Labeling Resources\ndocumentation.", - "flatPath": "projects/{project}/regions/{region}/securityPolicies/{resource}/setLabels", + "patchRule": { + "description": "Patches a rule of the specified priority.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/patchRule", "httpMethod": "POST", - "id": "compute.regionSecurityPolicies.setLabels", + "id": "compute.regionNetworkFirewallPolicies.patchRule", "parameterOrder": [ "project", "region", - "resource" + "firewallPolicy" ], "parameters": { + "firewallPolicy": { + "description": "Name of the firewall policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "priority": { + "description": "The priority of the rule to patch.", + "format": "int32", + "location": "query", + "type": "integer" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -30391,7 +32151,7 @@ "type": "string" }, "region": { - "description": "The region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -30401,18 +32161,11 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" - }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" } }, - "path": "projects/{project}/regions/{region}/securityPolicies/{resource}/setLabels", + "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/patchRule", "request": { - "$ref": "RegionSetLabelsRequest" + "$ref": "FirewallPolicyRule" }, "response": { "$ref": "Operation" @@ -30421,22 +32174,30 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - } - } - }, - "regionSslCertificates": { - "methods": { - "delete": { - "description": "Deletes the specified SslCertificate resource in the region.", - "flatPath": "projects/{project}/regions/{region}/sslCertificates/{sslCertificate}", - "httpMethod": "DELETE", - "id": "compute.regionSslCertificates.delete", + }, + "removeAssociation": { + "description": "Removes an association for the specified network firewall policy.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/removeAssociation", + "httpMethod": "POST", + "id": "compute.regionNetworkFirewallPolicies.removeAssociation", "parameterOrder": [ "project", "region", - "sslCertificate" + "firewallPolicy" ], "parameters": { + "firewallPolicy": { + "description": "Name of the firewall policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "name": { + "description": "Name for the association that will be removed.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -30455,16 +32216,62 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" - }, - "sslCertificate": { - "description": "Name of the SslCertificate resource to delete.", + } + }, + "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/removeAssociation", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "removeRule": { + "description": "Deletes a rule of the specified priority.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/removeRule", + "httpMethod": "POST", + "id": "compute.regionNetworkFirewallPolicies.removeRule", + "parameterOrder": [ + "project", + "region", + "firewallPolicy" + ], + "parameters": { + "firewallPolicy": { + "description": "Name of the firewall policy to update.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "priority": { + "description": "The priority of the rule to remove from the firewall policy.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/sslCertificates/{sslCertificate}", + "path": "projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/removeRule", "response": { "$ref": "Operation" }, @@ -30473,15 +32280,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified SslCertificate resource in the specified region. Get\na list of available SSL certificates by making a list()\nrequest.", - "flatPath": "projects/{project}/regions/{region}/sslCertificates/{sslCertificate}", - "httpMethod": "GET", - "id": "compute.regionSslCertificates.get", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.regionNetworkFirewallPolicies.setIamPolicy", "parameterOrder": [ "project", "region", - "sslCertificate" + "resource" ], "parameters": { "project": { @@ -30492,38 +32299,41 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "sslCertificate": { - "description": "Name of the SslCertificate resource to return.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/sslCertificates/{sslCertificate}", + "path": "projects/{project}/regions/{region}/firewallPolicies/{resource}/setIamPolicy", + "request": { + "$ref": "RegionSetPolicyRequest" + }, "response": { - "$ref": "SslCertificate" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "insert": { - "description": "Creates a SslCertificate resource in the specified project and region using\nthe data included in the request", - "flatPath": "projects/{project}/regions/{region}/sslCertificates", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/firewallPolicies/{resource}/testIamPermissions", "httpMethod": "POST", - "id": "compute.regionSslCertificates.insert", + "id": "compute.regionNetworkFirewallPolicies.testIamPermissions", "parameterOrder": [ "project", - "region" + "region", + "resource" ], "parameters": { "project": { @@ -30534,38 +32344,44 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/sslCertificates", + "path": "projects/{project}/regions/{region}/firewallPolicies/{resource}/testIamPermissions", "request": { - "$ref": "SslCertificate" + "$ref": "TestPermissionsRequest" }, "response": { - "$ref": "Operation" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] - }, - "list": { - "description": "Retrieves the list of SslCertificate resources available to the specified\nproject in the specified region.", - "flatPath": "projects/{project}/regions/{region}/sslCertificates", + } + } + }, + "regionNotificationEndpoints": { + "methods": { + "aggregatedList": { + "description": "Retrieves the list of all NotificationEndpoint resources,\nregional and global, available to the specified project.", + "flatPath": "projects/{project}/aggregated/notificationEndpoints", "httpMethod": "GET", - "id": "compute.regionSslCertificates.list", + "id": "compute.regionNotificationEndpoints.aggregatedList", "parameterOrder": [ - "project", - "region" + "project" ], "parameters": { "filter": { @@ -30573,6 +32389,11 @@ "location": "query", "type": "string" }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -30592,50 +32413,52 @@ "type": "string" }, "project": { - "description": "Project ID for this request.", + "description": "Name of the project scoping this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/sslCertificates", + "path": "projects/{project}/aggregated/notificationEndpoints", "response": { - "$ref": "SslCertificateList" + "$ref": "NotificationEndpointAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "regionSslPolicies": { - "methods": { + }, "delete": { - "description": "Deletes the specified SSL policy. The SSL policy resource can be deleted\nonly if it is not in use by any TargetHttpsProxy or TargetSslProxy\nresources.", - "flatPath": "projects/{project}/regions/{region}/sslPolicies/{sslPolicy}", + "description": "Deletes the specified NotificationEndpoint in the given region", + "flatPath": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}", "httpMethod": "DELETE", - "id": "compute.regionSslPolicies.delete", + "id": "compute.regionNotificationEndpoints.delete", "parameterOrder": [ "project", "region", - "sslPolicy" + "notificationEndpoint" ], "parameters": { + "notificationEndpoint": { + "description": "Name of the NotificationEndpoint resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -30654,15 +32477,9 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" - }, - "sslPolicy": { - "description": "Name of the SSL policy to delete. The name must be 1-63 characters long,\nand comply with RFC1035.", - "location": "path", - "required": true, - "type": "string" } }, - "path": "projects/{project}/regions/{region}/sslPolicies/{sslPolicy}", + "path": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}", "response": { "$ref": "Operation" }, @@ -30672,16 +32489,23 @@ ] }, "get": { - "description": "Lists all of the ordered rules present in a single specified policy.", - "flatPath": "projects/{project}/regions/{region}/sslPolicies/{sslPolicy}", + "description": "Returns the specified NotificationEndpoint resource in the given region.", + "flatPath": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}", "httpMethod": "GET", - "id": "compute.regionSslPolicies.get", + "id": "compute.regionNotificationEndpoints.get", "parameterOrder": [ "project", "region", - "sslPolicy" + "notificationEndpoint" ], "parameters": { + "notificationEndpoint": { + "description": "Name of the NotificationEndpoint resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -30695,17 +32519,11 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "sslPolicy": { - "description": "Name of the SSL policy to update. The name must be 1-63 characters long,\nand comply with RFC1035.", - "location": "path", - "required": true, - "type": "string" } }, - "path": "projects/{project}/regions/{region}/sslPolicies/{sslPolicy}", + "path": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}", "response": { - "$ref": "SslPolicy" + "$ref": "NotificationEndpoint" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -30714,10 +32532,10 @@ ] }, "insert": { - "description": "Creates a new policy in the specified project and region using the data\nincluded in the request.", - "flatPath": "projects/{project}/regions/{region}/sslPolicies", + "description": "Create a NotificationEndpoint in the specified project in the given region\nusing the parameters that are included in the request.", + "flatPath": "projects/{project}/regions/{region}/notificationEndpoints", "httpMethod": "POST", - "id": "compute.regionSslPolicies.insert", + "id": "compute.regionNotificationEndpoints.insert", "parameterOrder": [ "project", "region" @@ -30743,9 +32561,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/sslPolicies", + "path": "projects/{project}/regions/{region}/notificationEndpoints", "request": { - "$ref": "SslPolicy" + "$ref": "NotificationEndpoint" }, "response": { "$ref": "Operation" @@ -30756,10 +32574,10 @@ ] }, "list": { - "description": "Lists all the SSL policies that have been configured for the specified\nproject and region.", - "flatPath": "projects/{project}/regions/{region}/sslPolicies", + "description": "Lists the NotificationEndpoints for a project in the given region.", + "flatPath": "projects/{project}/regions/{region}/notificationEndpoints", "httpMethod": "GET", - "id": "compute.regionSslPolicies.list", + "id": "compute.regionNotificationEndpoints.list", "parameterOrder": [ "project", "region" @@ -30808,9 +32626,9 @@ "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/sslPolicies", + "path": "projects/{project}/regions/{region}/notificationEndpoints", "response": { - "$ref": "SslPoliciesList" + "$ref": "NotificationEndpointList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -30818,39 +32636,17 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "listAvailableFeatures": { - "description": "Lists all features that can be specified in the SSL policy when using\ncustom profile.", - "flatPath": "projects/{project}/regions/{region}/sslPolicies/listAvailableFeatures", - "httpMethod": "GET", - "id": "compute.regionSslPolicies.listAvailableFeatures", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/notificationEndpoints/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.regionNotificationEndpoints.testIamPermissions", "parameterOrder": [ "project", - "region" + "region", + "resource" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -30859,92 +32655,55 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/sslPolicies/listAvailableFeatures", + "path": "projects/{project}/regions/{region}/notificationEndpoints/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, "response": { - "$ref": "SslPoliciesListAvailableFeaturesResponse" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "patch": { - "description": "Patches the specified SSL policy with the data included in the request.", - "flatPath": "projects/{project}/regions/{region}/sslPolicies/{sslPolicy}", - "httpMethod": "PATCH", - "id": "compute.regionSslPolicies.patch", - "parameterOrder": [ - "project", - "region", - "sslPolicy" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "sslPolicy": { - "description": "Name of the SSL policy to update. The name must be 1-63 characters long,\nand comply with RFC1035.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/sslPolicies/{sslPolicy}", - "request": { - "$ref": "SslPolicy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] } } }, - "regionTargetHttpProxies": { + "regionOperations": { "methods": { "delete": { - "description": "Deletes the specified TargetHttpProxy resource.", - "flatPath": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", + "description": "Deletes the specified region-specific Operations resource.", + "flatPath": "projects/{project}/regions/{region}/operations/{operation}", "httpMethod": "DELETE", - "id": "compute.regionTargetHttpProxies.delete", + "id": "compute.regionOperations.delete", "parameterOrder": [ "project", "region", - "targetHttpProxy" + "operation" ], "parameters": { + "operation": { + "description": "Name of the Operations resource to delete, or its unique numeric\nidentifier.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -30953,87 +32712,37 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "targetHttpProxy": { - "description": "Name of the TargetHttpProxy resource to delete.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", - "response": { - "$ref": "Operation" - }, + "path": "projects/{project}/regions/{region}/operations/{operation}", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] }, "get": { - "description": "Returns the specified TargetHttpProxy resource in the specified region.", - "flatPath": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", + "description": "Retrieves the specified region-specific Operations resource.", + "flatPath": "projects/{project}/regions/{region}/operations/{operation}", "httpMethod": "GET", - "id": "compute.regionTargetHttpProxies.get", + "id": "compute.regionOperations.get", "parameterOrder": [ "project", "region", - "targetHttpProxy" + "operation" ], "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, - "targetHttpProxy": { - "description": "Name of the TargetHttpProxy resource to return.", + "operation": { + "description": "Name of the Operations resource to return, or its unique numeric\nidentifier.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", - "response": { - "$ref": "TargetHttpProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "description": "Creates a TargetHttpProxy resource in the specified project and region\nusing the data included in the request.", - "flatPath": "projects/{project}/regions/{region}/targetHttpProxies", - "httpMethod": "POST", - "id": "compute.regionTargetHttpProxies.insert", - "parameterOrder": [ - "project", - "region" - ], - "parameters": { + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -31042,35 +32751,28 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetHttpProxies", - "request": { - "$ref": "TargetHttpProxy" - }, + "path": "projects/{project}/regions/{region}/operations/{operation}", "response": { "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, "list": { - "description": "Retrieves the list of TargetHttpProxy resources available\nto the specified project in the specified region.", - "flatPath": "projects/{project}/regions/{region}/targetHttpProxies", + "description": "Retrieves a list of Operation resources contained within\nthe specified region.", + "flatPath": "projects/{project}/regions/{region}/operations", "httpMethod": "GET", - "id": "compute.regionTargetHttpProxies.list", + "id": "compute.regionOperations.list", "parameterOrder": [ "project", "region" @@ -31107,7 +32809,7 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -31119,9 +32821,9 @@ "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/targetHttpProxies", + "path": "projects/{project}/regions/{region}/operations", "response": { - "$ref": "TargetHttpProxyList" + "$ref": "OperationList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -31129,17 +32831,24 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "setUrlMap": { - "description": "Changes the URL map for TargetHttpProxy.", - "flatPath": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + "wait": { + "description": "Waits for the specified Operation resource to return as `DONE`\nor for the request to approach the 2 minute deadline, and retrieves the\nspecified Operation resource. This method differs from the\n`GET` method in that it waits for no more than the default\ndeadline (2 minutes) and then returns the current state of the operation,\nwhich might be `DONE` or still in progress.\n\nThis method is called on a best-effort basis. Specifically:\n \n \n - In uncommon cases, when the server is overloaded, the request might\n return before the default deadline is reached, or might return after zero\n seconds.\n - If the default deadline is reached, there is no guarantee that the\n operation is actually done when the method returns. Be prepared to retry\n if the operation is not `DONE`.", + "flatPath": "projects/{project}/regions/{region}/operations/{operation}/wait", "httpMethod": "POST", - "id": "compute.regionTargetHttpProxies.setUrlMap", + "id": "compute.regionOperations.wait", "parameterOrder": [ "project", "region", - "targetHttpProxy" + "operation" ], "parameters": { + "operation": { + "description": "Name of the Operations resource to return, or its unique numeric\nidentifier.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -31148,28 +32857,68 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/operations/{operation}/wait", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionSecurityPolicies": { + "methods": { + "addRule": { + "description": "Inserts a rule into a security policy.", + "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/addRule", + "httpMethod": "POST", + "id": "compute.regionSecurityPolicies.addRule", + "parameterOrder": [ + "project", + "region", + "securityPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" }, - "targetHttpProxy": { - "description": "Name of the TargetHttpProxy to set a URL map for.", + "securityPolicy": { + "description": "Name of the security policy to update.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "validateOnly": { + "description": "If true, the request will not be committed.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/addRule", "request": { - "$ref": "UrlMapReference" + "$ref": "SecurityPolicyRule" }, "response": { "$ref": "Operation" @@ -31178,20 +32927,16 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - } - } - }, - "regionTargetHttpsProxies": { - "methods": { + }, "delete": { - "description": "Deletes the specified TargetHttpsProxy resource.", - "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "description": "Deletes the specified policy.", + "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}", "httpMethod": "DELETE", - "id": "compute.regionTargetHttpsProxies.delete", + "id": "compute.regionSecurityPolicies.delete", "parameterOrder": [ "project", "region", - "targetHttpsProxy" + "securityPolicy" ], "parameters": { "project": { @@ -31213,15 +32958,15 @@ "location": "query", "type": "string" }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy resource to delete.", + "securityPolicy": { + "description": "Name of the security policy to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}", "response": { "$ref": "Operation" }, @@ -31231,14 +32976,14 @@ ] }, "get": { - "description": "Returns the specified TargetHttpsProxy resource in the specified region.", - "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "description": "List all of the ordered rules present in a single specified policy.", + "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}", "httpMethod": "GET", - "id": "compute.regionTargetHttpsProxies.get", + "id": "compute.regionSecurityPolicies.get", "parameterOrder": [ "project", "region", - "targetHttpsProxy" + "securityPolicy" ], "parameters": { "project": { @@ -31255,17 +33000,66 @@ "required": true, "type": "string" }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy resource to return.", + "securityPolicy": { + "description": "Name of the security policy to get.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}", "response": { - "$ref": "TargetHttpsProxy" + "$ref": "SecurityPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getRule": { + "description": "Gets a rule at the specified priority.", + "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/getRule", + "httpMethod": "GET", + "id": "compute.regionSecurityPolicies.getRule", + "parameterOrder": [ + "project", + "region", + "securityPolicy" + ], + "parameters": { + "priority": { + "description": "The priority of the rule to get from the security policy.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to which the queried rule belongs.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/getRule", + "response": { + "$ref": "SecurityPolicyRule" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -31274,10 +33068,10 @@ ] }, "insert": { - "description": "Creates a TargetHttpsProxy resource in the specified project and region\nusing the data included in the request.", - "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies", + "description": "Creates a new policy in the specified project using the data included in\nthe request.", + "flatPath": "projects/{project}/regions/{region}/securityPolicies", "httpMethod": "POST", - "id": "compute.regionTargetHttpsProxies.insert", + "id": "compute.regionSecurityPolicies.insert", "parameterOrder": [ "project", "region" @@ -31301,11 +33095,16 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" + }, + "validateOnly": { + "description": "If true, the request will not be committed.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/targetHttpsProxies", + "path": "projects/{project}/regions/{region}/securityPolicies", "request": { - "$ref": "TargetHttpsProxy" + "$ref": "SecurityPolicy" }, "response": { "$ref": "Operation" @@ -31316,10 +33115,10 @@ ] }, "list": { - "description": "Retrieves the list of TargetHttpsProxy resources available\nto the specified project in the specified region.", - "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies", + "description": "List all the policies that have been configured for the specified project\nand region.", + "flatPath": "projects/{project}/regions/{region}/securityPolicies", "httpMethod": "GET", - "id": "compute.regionTargetHttpsProxies.list", + "id": "compute.regionSecurityPolicies.list", "parameterOrder": [ "project", "region" @@ -31368,9 +33167,9 @@ "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/targetHttpsProxies", + "path": "projects/{project}/regions/{region}/securityPolicies", "response": { - "$ref": "TargetHttpsProxyList" + "$ref": "SecurityPolicyList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -31379,14 +33178,14 @@ ] }, "patch": { - "description": "Patches the specified regional TargetHttpsProxy resource with the data\nincluded in the request. This method supports PATCH\nsemantics and usesJSON merge\npatch format and processing rules.", - "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "description": "Patches the specified policy with the data included in the request. To\nclear fields in the policy, leave the fields empty and specify them in the\nupdateMask. This cannot be used to be update the rules in the policy.\nPlease use the per rule methods like addRule, patchRule, and removeRule\ninstead.", + "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}", "httpMethod": "PATCH", - "id": "compute.regionTargetHttpsProxies.patch", + "id": "compute.regionSecurityPolicies.patch", "parameterOrder": [ "project", "region", - "targetHttpsProxy" + "securityPolicy" ], "parameters": { "project": { @@ -31397,7 +33196,7 @@ "type": "string" }, "region": { - "description": "Name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -31408,17 +33207,23 @@ "location": "query", "type": "string" }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy resource to patch.", + "securityPolicy": { + "description": "Name of the security policy to update.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "updateMask": { + "description": "Indicates fields to be cleared as part of this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}", "request": { - "$ref": "TargetHttpsProxy" + "$ref": "SecurityPolicy" }, "response": { "$ref": "Operation" @@ -31428,17 +33233,23 @@ "https://www.googleapis.com/auth/compute" ] }, - "setSslCertificates": { - "description": "Replaces SslCertificates for TargetHttpsProxy.", - "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "patchRule": { + "description": "Patches a rule at the specified priority. To clear fields in the rule,\nleave the fields empty and specify them in the updateMask.", + "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/patchRule", "httpMethod": "POST", - "id": "compute.regionTargetHttpsProxies.setSslCertificates", + "id": "compute.regionSecurityPolicies.patchRule", "parameterOrder": [ "project", "region", - "targetHttpsProxy" + "securityPolicy" ], "parameters": { + "priority": { + "description": "The priority of the rule to patch.", + "format": "int32", + "location": "query", + "type": "integer" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -31453,22 +33264,28 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy resource to set an\nSslCertificates resource for.", + "securityPolicy": { + "description": "Name of the security policy to update.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "updateMask": { + "description": "Indicates fields to be cleared as part of this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If true, the request will not be committed.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/patchRule", "request": { - "$ref": "RegionTargetHttpsProxiesSetSslCertificatesRequest" + "$ref": "SecurityPolicyRule" }, "response": { "$ref": "Operation" @@ -31478,17 +33295,23 @@ "https://www.googleapis.com/auth/compute" ] }, - "setUrlMap": { - "description": "Changes the URL map for TargetHttpsProxy.", - "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", + "removeRule": { + "description": "Deletes a rule at the specified priority.", + "flatPath": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/removeRule", "httpMethod": "POST", - "id": "compute.regionTargetHttpsProxies.setUrlMap", + "id": "compute.regionSecurityPolicies.removeRule", "parameterOrder": [ "project", "region", - "targetHttpsProxy" + "securityPolicy" ], "parameters": { + "priority": { + "description": "The priority of the rule to remove from the security policy.", + "format": "int32", + "location": "query", + "type": "integer" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -31503,23 +33326,15 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy to set a URL map for.", + "securityPolicy": { + "description": "Name of the security policy to update.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", - "request": { - "$ref": "UrlMapReference" - }, + "path": "projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/removeRule", "response": { "$ref": "Operation" }, @@ -31527,20 +33342,16 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - } - } - }, - "regionTargetTcpProxies": { - "methods": { - "delete": { - "description": "Deletes the specified TargetTcpProxy resource.", - "flatPath": "projects/{project}/regions/{region}/targetTcpProxies/{targetTcpProxy}", - "httpMethod": "DELETE", - "id": "compute.regionTargetTcpProxies.delete", + }, + "setLabels": { + "description": "Sets the labels on a security policy. To learn more about labels,\nread the Labeling Resources\ndocumentation.", + "flatPath": "projects/{project}/regions/{region}/securityPolicies/{resource}/setLabels", + "httpMethod": "POST", + "id": "compute.regionSecurityPolicies.setLabels", "parameterOrder": [ "project", "region", - "targetTcpProxy" + "resource" ], "parameters": { "project": { @@ -31551,7 +33362,7 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -31562,15 +33373,18 @@ "location": "query", "type": "string" }, - "targetTcpProxy": { - "description": "Name of the TargetTcpProxy resource to delete.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetTcpProxies/{targetTcpProxy}", + "path": "projects/{project}/regions/{region}/securityPolicies/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, "response": { "$ref": "Operation" }, @@ -31578,16 +33392,19 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, + } + } + }, + "regionSnapshotSettings": { + "methods": { "get": { - "description": "Returns the specified TargetTcpProxy resource.", - "flatPath": "projects/{project}/regions/{region}/targetTcpProxies/{targetTcpProxy}", + "description": "Get region snapshot settings.", + "flatPath": "projects/{project}/regions/{region}/snapshotSettings", "httpMethod": "GET", - "id": "compute.regionTargetTcpProxies.get", + "id": "compute.regionSnapshotSettings.get", "parameterOrder": [ "project", - "region", - "targetTcpProxy" + "region" ], "parameters": { "project": { @@ -31598,23 +33415,16 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "targetTcpProxy": { - "description": "Name of the TargetTcpProxy resource to return.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetTcpProxies/{targetTcpProxy}", + "path": "projects/{project}/regions/{region}/snapshotSettings", "response": { - "$ref": "TargetTcpProxy" + "$ref": "SnapshotSettings" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -31622,11 +33432,11 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "insert": { - "description": "Creates a TargetTcpProxy resource in the specified project and region using\nthe data included in the request.", - "flatPath": "projects/{project}/regions/{region}/targetTcpProxies", - "httpMethod": "POST", - "id": "compute.regionTargetTcpProxies.insert", + "patch": { + "description": "Patch region snapshot settings.", + "flatPath": "projects/{project}/regions/{region}/snapshotSettings", + "httpMethod": "PATCH", + "id": "compute.regionSnapshotSettings.patch", "parameterOrder": [ "project", "region" @@ -31640,7 +33450,7 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -31650,11 +33460,17 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" + }, + "updateMask": { + "description": "update_mask indicates fields to be updated as part of this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetTcpProxies", + "path": "projects/{project}/regions/{region}/snapshotSettings", "request": { - "$ref": "TargetTcpProxy" + "$ref": "SnapshotSettings" }, "response": { "$ref": "Operation" @@ -31663,40 +33479,22 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "list": { - "description": "Retrieves a list of TargetTcpProxy resources\navailable to the specified project in a given region.", - "flatPath": "projects/{project}/regions/{region}/targetTcpProxies", - "httpMethod": "GET", - "id": "compute.regionTargetTcpProxies.list", + } + } + }, + "regionSnapshots": { + "methods": { + "delete": { + "description": "Deletes the specified Snapshot resource. Keep in mind that deleting\na single snapshot might not necessarily delete all the data on that\nsnapshot. If any data on the snapshot that is marked for deletion is\nneeded for subsequent snapshots, the data will be moved to the next\ncorresponding snapshot.\n\nFor more information, seeDeleting\nsnapshots.", + "flatPath": "projects/{project}/regions/{region}/snapshots/{snapshot}", + "httpMethod": "DELETE", + "id": "compute.regionSnapshots.delete", "parameterOrder": [ "project", - "region" + "region", + "snapshot" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -31705,41 +33503,43 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", - "type": "boolean" + "type": "string" + }, + "snapshot": { + "description": "Name of the snapshot resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetTcpProxies", + "path": "projects/{project}/regions/{region}/snapshots/{snapshot}", "response": { - "$ref": "TargetTcpProxyList" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] - } - } - }, - "regionUrlMaps": { - "methods": { - "delete": { - "description": "Deletes the specified UrlMap resource.", - "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}", - "httpMethod": "DELETE", - "id": "compute.regionUrlMaps.delete", + }, + "get": { + "description": "Returns the specified Snapshot resource.", + "flatPath": "projects/{project}/regions/{region}/snapshots/{snapshot}", + "httpMethod": "GET", + "id": "compute.regionSnapshots.get", "parameterOrder": [ "project", "region", - "urlMap" + "snapshot" ], "parameters": { "project": { @@ -31750,45 +33550,47 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "begin_interface: MixerMutationRequestBuilder\nRequest ID to support idempotency.", - "location": "query", - "type": "string" - }, - "urlMap": { - "description": "Name of the UrlMap resource to delete.", + "snapshot": { + "description": "Name of the Snapshot resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "path": "projects/{project}/regions/{region}/snapshots/{snapshot}", "response": { - "$ref": "Operation" + "$ref": "Snapshot" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "get": { - "description": "Returns the specified UrlMap resource.", - "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/regions/{region}/snapshots/{resource}/getIamPolicy", "httpMethod": "GET", - "id": "compute.regionUrlMaps.get", + "id": "compute.regionSnapshots.getIamPolicy", "parameterOrder": [ "project", "region", - "urlMap" + "resource" ], "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -31797,23 +33599,23 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "urlMap": { - "description": "Name of the UrlMap resource to return.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "path": "projects/{project}/regions/{region}/snapshots/{resource}/getIamPolicy", "response": { - "$ref": "UrlMap" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -31822,10 +33624,10 @@ ] }, "insert": { - "description": "Creates a UrlMap resource in the specified project using\nthe data included in the request.", - "flatPath": "projects/{project}/regions/{region}/urlMaps", + "description": "Creates a snapshot in the specified region using the data included\nin the request.", + "flatPath": "projects/{project}/regions/{region}/snapshots", "httpMethod": "POST", - "id": "compute.regionUrlMaps.insert", + "id": "compute.regionSnapshots.insert", "parameterOrder": [ "project", "region" @@ -31839,21 +33641,21 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, "requestId": { - "description": "begin_interface: MixerMutationRequestBuilder\nRequest ID to support idempotency.", + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/urlMaps", + "path": "projects/{project}/regions/{region}/snapshots", "request": { - "$ref": "UrlMap" + "$ref": "Snapshot" }, "response": { "$ref": "Operation" @@ -31864,10 +33666,10 @@ ] }, "list": { - "description": "Retrieves the list of UrlMap resources available to the specified\nproject in the specified region.", - "flatPath": "projects/{project}/regions/{region}/urlMaps", + "description": "Retrieves the list of Snapshot resources contained within\nthe specified region.", + "flatPath": "projects/{project}/regions/{region}/snapshots", "httpMethod": "GET", - "id": "compute.regionUrlMaps.list", + "id": "compute.regionSnapshots.list", "parameterOrder": [ "project", "region" @@ -31904,7 +33706,7 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -31916,9 +33718,9 @@ "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/urlMaps", + "path": "projects/{project}/regions/{region}/snapshots", "response": { - "$ref": "UrlMapList" + "$ref": "SnapshotList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -31926,15 +33728,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "patch": { - "description": "Patches the specified UrlMap resource with the data included in the\nrequest. This method supportsPATCH\nsemantics and usesJSON merge\npatch format and processing rules.", - "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}", - "httpMethod": "PATCH", - "id": "compute.regionUrlMaps.patch", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/regions/{region}/snapshots/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.regionSnapshots.setIamPolicy", "parameterOrder": [ "project", "region", - "urlMap" + "resource" ], "parameters": { "project": { @@ -31945,46 +33747,41 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "begin_interface: MixerMutationRequestBuilder\nRequest ID to support idempotency.", - "location": "query", - "type": "string" - }, - "urlMap": { - "description": "Name of the UrlMap resource to patch.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "path": "projects/{project}/regions/{region}/snapshots/{resource}/setIamPolicy", "request": { - "$ref": "UrlMap" + "$ref": "RegionSetPolicyRequest" }, "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] }, - "update": { - "description": "Updates the specified UrlMap resource with the data included in the\nrequest.", - "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}", - "httpMethod": "PUT", - "id": "compute.regionUrlMaps.update", + "setLabels": { + "description": "Sets the labels on a regional snapshot. To learn more about labels, read\nthe Labeling Resources\ndocumentation.", + "flatPath": "projects/{project}/regions/{region}/snapshots/{resource}/setLabels", + "httpMethod": "POST", + "id": "compute.regionSnapshots.setLabels", "parameterOrder": [ "project", "region", - "urlMap" + "resource" ], "parameters": { "project": { @@ -31995,28 +33792,28 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, "requestId": { - "description": "begin_interface: MixerMutationRequestBuilder\nRequest ID to support idempotency.", + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "urlMap": { - "description": "Name of the UrlMap resource to update.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "path": "projects/{project}/regions/{region}/snapshots/{resource}/setLabels", "request": { - "$ref": "UrlMap" + "$ref": "RegionSetLabelsRequest" }, "response": { "$ref": "Operation" @@ -32026,15 +33823,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "validate": { - "description": "Runs static validation for the UrlMap. In particular, the tests of the\nprovided UrlMap will be run. Calling this method does NOT create the\nUrlMap.", - "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}/validate", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/snapshots/{resource}/testIamPermissions", "httpMethod": "POST", - "id": "compute.regionUrlMaps.validate", + "id": "compute.regionSnapshots.testIamPermissions", "parameterOrder": [ "project", "region", - "urlMap" + "resource" ], "parameters": { "project": { @@ -32045,26 +33842,77 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "urlMap": { - "description": "Name of the UrlMap resource to be validated as.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}/validate", + "path": "projects/{project}/regions/{region}/snapshots/{resource}/testIamPermissions", "request": { - "$ref": "RegionUrlMapsValidateRequest" + "$ref": "TestPermissionsRequest" }, "response": { - "$ref": "UrlMapsValidateResponse" + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "updateKmsKey": { + "description": "Rotates the customer-managed\nencryption key to the latest version for the specified snapshot.", + "flatPath": "projects/{project}/regions/{region}/snapshots/{snapshot}/updateKmsKey", + "httpMethod": "POST", + "id": "compute.regionSnapshots.updateKmsKey", + "parameterOrder": [ + "project", + "region", + "snapshot" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "snapshot": { + "description": "Name of the snapshot resource to update. Should conform to RFC1035.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/snapshots/{snapshot}/updateKmsKey", + "request": { + "$ref": "RegionSnapshotUpdateKmsKeyRequest" + }, + "response": { + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -32073,41 +33921,66 @@ } } }, - "regionZones": { + "regionSslCertificates": { "methods": { - "list": { - "description": "Retrieves the list of Zone resources under the specific region available to\nthe specified project.", - "flatPath": "projects/{project}/regions/{region}/zones", - "httpMethod": "GET", - "id": "compute.regionZones.list", + "delete": { + "description": "Deletes the specified SslCertificate resource in the region.", + "flatPath": "projects/{project}/regions/{region}/sslCertificates/{sslCertificate}", + "httpMethod": "DELETE", + "id": "compute.regionSslCertificates.delete", "parameterOrder": [ "project", - "region" + "region", + "sslCertificate" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, "type": "string" }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, + "sslCertificate": { + "description": "Name of the SslCertificate resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/sslCertificates/{sslCertificate}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified SslCertificate resource in the specified region. Get\na list of available SSL certificates by making a list()\nrequest.", + "flatPath": "projects/{project}/regions/{region}/sslCertificates/{sslCertificate}", + "httpMethod": "GET", + "id": "compute.regionSslCertificates.get", + "parameterOrder": [ + "project", + "region", + "sslCertificate" + ], + "parameters": { "project": { "description": "Project ID for this request.", "location": "path", @@ -32116,37 +33989,35 @@ "type": "string" }, "region": { - "description": "Region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" + "sslCertificate": { + "description": "Name of the SslCertificate resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/zones", + "path": "projects/{project}/regions/{region}/sslCertificates/{sslCertificate}", "response": { - "$ref": "ZoneList" + "$ref": "SslCertificate" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "regions": { - "methods": { - "get": { - "description": "Returns the specified Region resource.\n\nTo decrease latency for this method, you can optionally omit any unneeded\ninformation from the response by using a field mask. This practice is\nespecially recommended for unused quota information (the `quotas` field).\nTo exclude one or more fields, set your request's `fields` query parameter\nto only include the fields you need. For example, to only include the `id`\nand `selfLink` fields, add the query parameter `?fields=id,selfLink` to\nyour request.\n\nThis method fails if the quota information is unavailable for the region\nand if the organization policy constraint\ncompute.requireBasicQuotaInResponse is enforced. This\nconstraint, when enforced, disables the fail-open behaviour when quota\ninformation (the `items.quotas` field) is unavailable for the region.\nIt is recommended to use the default setting\nfor the constraint unless your application requires the fail-closed\nbehaviour for this method.", - "flatPath": "projects/{project}/regions/{region}", - "httpMethod": "GET", - "id": "compute.regions.get", + }, + "insert": { + "description": "Creates a SslCertificate resource in the specified project and region using\nthe data included in the request", + "flatPath": "projects/{project}/regions/{region}/sslCertificates", + "httpMethod": "POST", + "id": "compute.regionSslCertificates.insert", "parameterOrder": [ "project", "region" @@ -32160,30 +34031,38 @@ "type": "string" }, "region": { - "description": "Name of the region resource to return.", + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}", + "path": "projects/{project}/regions/{region}/sslCertificates", + "request": { + "$ref": "SslCertificate" + }, "response": { - "$ref": "Region" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, "list": { - "description": "Retrieves the list of region resources available to the specified project.\n\nTo decrease latency for this method, you can optionally omit any unneeded\ninformation from the response by using a field mask. This practice is\nespecially recommended for unused quota information\n(the `items.quotas` field).\nTo exclude one or more fields, set your request's `fields` query parameter\nto only include the fields you need. For example, to only include the `id`\nand `selfLink` fields, add the query parameter `?fields=id,selfLink` to\nyour request.\n\nThis method fails if the quota information is unavailable for the region\nand if the organization policy constraint\ncompute.requireBasicQuotaInResponse is enforced. This\nconstraint, when enforced, disables the fail-open behaviour when quota\ninformation (the `items.quotas` field) is unavailable for the region.\nIt is recommended to use the default setting\nfor the constraint unless your application requires the fail-closed\nbehaviour for this method.", - "flatPath": "projects/{project}/regions", + "description": "Retrieves the list of SslCertificate resources available to the specified\nproject in the specified region.", + "flatPath": "projects/{project}/regions/{region}/sslCertificates", "httpMethod": "GET", - "id": "compute.regions.list", + "id": "compute.regionSslCertificates.list", "parameterOrder": [ - "project" + "project", + "region" ], "parameters": { "filter": { @@ -32216,15 +34095,22 @@ "required": true, "type": "string" }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" } }, - "path": "projects/{project}/regions", + "path": "projects/{project}/regions/{region}/sslCertificates", "response": { - "$ref": "RegionList" + "$ref": "SslCertificateList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -32234,95 +34120,106 @@ } } }, - "reservationBlocks": { + "regionSslPolicies": { "methods": { - "get": { - "description": "Retrieves information about the specified reservation block.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}", - "httpMethod": "GET", - "id": "compute.reservationBlocks.get", + "delete": { + "description": "Deletes the specified SSL policy. The SSL policy resource can be deleted\nonly if it is not in use by any TargetHttpsProxy or TargetSslProxy\nresources.", + "flatPath": "projects/{project}/regions/{region}/sslPolicies/{sslPolicy}", + "httpMethod": "DELETE", + "id": "compute.regionSslPolicies.delete", "parameterOrder": [ "project", - "zone", - "reservation", - "reservationBlock" + "region", + "sslPolicy" ], "parameters": { "project": { "description": "Project ID for this request.", "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "reservation": { - "description": "The name of the reservation.\nName should conform to RFC1035 or be a resource ID.", - "location": "path", - "required": true, - "type": "string" - }, - "reservationBlock": { - "description": "The name of the reservation block.\nName should conform to RFC1035 or be a resource ID.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "view": { - "description": "View of the Block.", - "enum": [ - "BASIC", - "BLOCK_VIEW_UNSPECIFIED", - "FULL" - ], - "enumDescriptions": [ - "This view includes basic information about the reservation block", - "The default / unset value. The API will default to the BASIC view.", - "Includes detailed topology view." - ], + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "zone": { - "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "sslPolicy": { + "description": "Name of the SSL policy to delete. The name must be 1-63 characters long,\nand comply with RFC1035.", "location": "path", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}", + "path": "projects/{project}/regions/{region}/sslPolicies/{sslPolicy}", "response": { - "$ref": "ReservationBlocksGetResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/getIamPolicy", + "get": { + "description": "Lists all of the ordered rules present in a single specified policy.", + "flatPath": "projects/{project}/regions/{region}/sslPolicies/{sslPolicy}", "httpMethod": "GET", - "id": "compute.reservationBlocks.getIamPolicy", + "id": "compute.regionSslPolicies.get", "parameterOrder": [ "project", - "zone", - "parentResource", - "resource" + "region", + "sslPolicy" ], "parameters": { - "optionsRequestedPolicyVersion": { - "description": "Requested IAM Policy version.", - "format": "int32", - "location": "query", - "type": "integer" + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" }, - "parentResource": { - "description": "Name or id of parent resource of the resource for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, + "sslPolicy": { + "description": "Name of the SSL policy to update. The name must be 1-63 characters long,\nand comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/sslPolicies/{sslPolicy}", + "response": { + "$ref": "SslPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a new policy in the specified project and region using the data\nincluded in the request.", + "flatPath": "projects/{project}/regions/{region}/sslPolicies", + "httpMethod": "POST", + "id": "compute.regionSslPolicies.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { "project": { "description": "Project ID for this request.", "location": "path", @@ -32330,40 +34227,39 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/getIamPolicy", + "path": "projects/{project}/regions/{region}/sslPolicies", + "request": { + "$ref": "SslPolicy" + }, "response": { - "$ref": "Policy" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, "list": { - "description": "Retrieves a list of reservation blocks under a single reservation.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks", + "description": "Lists all the SSL policies that have been configured for the specified\nproject and region.", + "flatPath": "projects/{project}/regions/{region}/sslPolicies", "httpMethod": "GET", - "id": "compute.reservationBlocks.list", + "id": "compute.regionSslPolicies.list", "parameterOrder": [ "project", - "zone", - "reservation" + "region" ], "parameters": { "filter": { @@ -32392,12 +34288,14 @@ "project": { "description": "Project ID for this request.", "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "reservation": { - "description": "The name of the reservation.\nName should conform to RFC1035 or be a resource ID.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -32405,17 +34303,11 @@ "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" - }, - "zone": { - "description": "Name of the zone for this request. Zone name should conform to RFC1035.", - "location": "path", - "required": true, - "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks", + "path": "projects/{project}/regions/{region}/sslPolicies", "response": { - "$ref": "ReservationBlocksListResponse" + "$ref": "SslPoliciesList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -32423,51 +34315,109 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "performMaintenance": { - "description": "Allows customers to perform maintenance on a reservation block", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}/performMaintenance", - "httpMethod": "POST", - "id": "compute.reservationBlocks.performMaintenance", + "listAvailableFeatures": { + "description": "Lists all features that can be specified in the SSL policy when using\ncustom profile.", + "flatPath": "projects/{project}/regions/{region}/sslPolicies/listAvailableFeatures", + "httpMethod": "GET", + "id": "compute.regionSslPolicies.listAvailableFeatures", "parameterOrder": [ "project", - "zone", - "reservation", - "reservationBlock" + "region" ], "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" }, - "reservation": { - "description": "The name of the reservation.\nName should conform to RFC1035 or be a resource ID.", + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/sslPolicies/listAvailableFeatures", + "response": { + "$ref": "SslPoliciesListAvailableFeaturesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified SSL policy with the data included in the request.", + "flatPath": "projects/{project}/regions/{region}/sslPolicies/{sslPolicy}", + "httpMethod": "PATCH", + "id": "compute.regionSslPolicies.patch", + "parameterOrder": [ + "project", + "region", + "sslPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "reservationBlock": { - "description": "The name of the reservation block.\nName should conform to RFC1035 or be a resource ID.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "zone": { - "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "sslPolicy": { + "description": "Name of the SSL policy to update. The name must be 1-63 characters long,\nand comply with RFC1035.", "location": "path", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}/performMaintenance", + "path": "projects/{project}/regions/{region}/sslPolicies/{sslPolicy}", "request": { - "$ref": "ReservationsBlocksPerformMaintenanceRequest" + "$ref": "SslPolicy" }, "response": { "$ref": "Operation" @@ -32476,26 +34426,22 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/setIamPolicy", - "httpMethod": "POST", - "id": "compute.reservationBlocks.setIamPolicy", + } + } + }, + "regionTargetHttpProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetHttpProxy resource.", + "flatPath": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", + "httpMethod": "DELETE", + "id": "compute.regionTargetHttpProxies.delete", "parameterOrder": [ "project", - "zone", - "parentResource", - "resource" + "region", + "targetHttpProxy" ], "parameters": { - "parentResource": { - "description": "Name or id of parent resource of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -32503,52 +34449,46 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "zone": { - "description": "The name of the zone for this request.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to delete.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/setIamPolicy", - "request": { - "$ref": "ZoneSetNestedPolicyRequest" - }, + "path": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", "response": { - "$ref": "Policy" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.reservationBlocks.testIamPermissions", + "get": { + "description": "Returns the specified TargetHttpProxy resource in the specified region.", + "flatPath": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", + "httpMethod": "GET", + "id": "compute.regionTargetHttpProxies.get", "parameterOrder": [ "project", - "zone", - "parentResource", - "resource" + "region", + "targetHttpProxy" ], "parameters": { - "parentResource": { - "description": "Name or id of parent resource of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -32556,95 +34496,81 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "zone": { - "description": "The name of the zone for this request.", + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to return.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, + "path": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", "response": { - "$ref": "TestPermissionsResponse" + "$ref": "TargetHttpProxy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "reservationSlots": { - "methods": { - "get": { - "description": "Retrieves information about the specified reservation slot.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlocksId}/reservationSlots/{reservationSlot}", - "httpMethod": "GET", - "id": "compute.reservationSlots.get", + }, + "insert": { + "description": "Creates a TargetHttpProxy resource in the specified project and region\nusing the data included in the request.", + "flatPath": "projects/{project}/regions/{region}/targetHttpProxies", + "httpMethod": "POST", + "id": "compute.regionTargetHttpProxies.insert", "parameterOrder": [ "project", - "zone", - "parentName", - "reservationSlot" + "region" ], "parameters": { - "parentName": { - "description": "The name of the parent reservation and parent block, formatted as\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}/reservationSubBlocks/{reservation_sub_block_name}", - "location": "path", - "pattern": "reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})", - "required": true, - "type": "string" - }, "project": { - "description": "The project ID for this request.", + "description": "Project ID for this request.", "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "reservationSlot": { - "description": "The name of the reservation slot, formatted as RFC1035 or a resource ID\nnumber.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "zone": { - "description": "The name of the zone for this request, formatted as RFC1035.", - "location": "path", - "required": true, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", "type": "string" } }, - "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}", + "path": "projects/{project}/regions/{region}/targetHttpProxies", + "request": { + "$ref": "TargetHttpProxy" + }, "response": { - "$ref": "ReservationSlotsGetResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, "list": { - "description": "Retrieves a list of reservation slots under a single reservation.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlocksId}/reservationSlots", + "description": "Retrieves the list of TargetHttpProxy resources available\nto the specified project in the specified region.", + "flatPath": "projects/{project}/regions/{region}/targetHttpProxies", "httpMethod": "GET", - "id": "compute.reservationSlots.list", + "id": "compute.regionTargetHttpProxies.list", "parameterOrder": [ "project", - "zone", - "parentName" + "region" ], "parameters": { "filter": { @@ -32670,16 +34596,17 @@ "location": "query", "type": "string" }, - "parentName": { - "description": "The name of the parent reservation and parent block, formatted as\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}/reservationSubBlocks/{reservation_sub_block_name}", + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "project": { - "description": "The project ID for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -32687,17 +34614,11 @@ "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" - }, - "zone": { - "description": "The name of the zone for this request, formatted as RFC1035.", - "location": "path", - "required": true, - "type": "string" } }, - "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSlots", + "path": "projects/{project}/regions/{region}/targetHttpProxies", "response": { - "$ref": "ReservationSlotsListResponse" + "$ref": "TargetHttpProxyList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -32705,53 +34626,47 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "update": { - "description": "Update a reservation slot in the specified sub-block.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlocksId}/reservationSlots/{reservationSlot}", + "setUrlMap": { + "description": "Changes the URL map for TargetHttpProxy.", + "flatPath": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}/setUrlMap", "httpMethod": "POST", - "id": "compute.reservationSlots.update", + "id": "compute.regionTargetHttpProxies.setUrlMap", "parameterOrder": [ "project", - "zone", - "parentName", - "reservationSlot" + "region", + "targetHttpProxy" ], "parameters": { - "parentName": { - "description": "The name of the sub-block resource.", - "location": "path", - "pattern": "reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})", - "required": true, - "type": "string" - }, "project": { - "description": "The project ID for this request.", + "description": "Project ID for this request.", "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "reservationSlot": { - "description": "The name of the slot resource.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "updateMask": { - "description": "The fields to be updated as part of this request.", - "format": "google-fieldmask", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "zone": { - "description": "The name of the zone for this request, formatted as RFC1035.", + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy to set a URL map for.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}", + "path": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}/setUrlMap", "request": { - "$ref": "ReservationSlot" + "$ref": "UrlMapReference" }, "response": { "$ref": "Operation" @@ -32763,137 +34678,148 @@ } } }, - "reservationSubBlocks": { + "regionTargetHttpsProxies": { "methods": { - "get": { - "description": "Retrieves information about the specified reservation subBlock.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlock}", - "httpMethod": "GET", - "id": "compute.reservationSubBlocks.get", + "delete": { + "description": "Deletes the specified TargetHttpsProxy resource.", + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "httpMethod": "DELETE", + "id": "compute.regionTargetHttpsProxies.delete", "parameterOrder": [ "project", - "zone", - "parentName", - "reservationSubBlock" + "region", + "targetHttpsProxy" ], "parameters": { - "parentName": { - "description": "The name of the parent reservation and parent block. In the format of\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}", - "location": "path", - "pattern": "^reservations/[^/]+/reservationBlocks/[^/]+$", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "reservationSubBlock": { - "description": "The name of the reservation subBlock.\nName should conform to RFC1035 or be a resource ID.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "view": { - "description": "View of the subBlock.", - "enum": [ - "SUB_BLOCK_VIEW_BASIC", - "SUB_BLOCK_VIEW_FULL", - "SUB_BLOCK_VIEW_UNSPECIFIED" - ], - "enumDescriptions": [ - "This view includes basic information about the reservation sub block", - "Includes detailed topology view.", - "The default / unset value. The API will default to the BASIC view." - ], + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "zone": { - "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to delete.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}", + "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", "response": { - "$ref": "ReservationSubBlocksGetResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{resource}/getIamPolicy", + "get": { + "description": "Returns the specified TargetHttpsProxy resource in the specified region.", + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", "httpMethod": "GET", - "id": "compute.reservationSubBlocks.getIamPolicy", + "id": "compute.regionTargetHttpsProxies.get", "parameterOrder": [ "project", - "zone", - "parentResource", - "resource" + "region", + "targetHttpsProxy" ], "parameters": { - "optionsRequestedPolicyVersion": { - "description": "Requested IAM Policy version.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "parentResource": { - "description": "Name or id of parent resource of the resource for this request.", + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "project": { - "description": "Project ID for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "response": { + "$ref": "TargetHttpsProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetHttpsProxy resource in the specified project and region\nusing the data included in the request.", + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies", + "httpMethod": "POST", + "id": "compute.regionTargetHttpsProxies.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" }, - "zone": { - "description": "The name of the zone for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/getIamPolicy", + "path": "projects/{project}/regions/{region}/targetHttpsProxies", + "request": { + "$ref": "TargetHttpsProxy" + }, "response": { - "$ref": "Policy" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, "list": { - "description": "Retrieves a list of reservation subBlocks under a single reservation.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks", + "description": "Retrieves the list of TargetHttpsProxy resources available\nto the specified project in the specified region.", + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies", "httpMethod": "GET", - "id": "compute.reservationSubBlocks.list", + "id": "compute.regionTargetHttpsProxies.list", "parameterOrder": [ "project", - "zone", - "parentName" + "region" ], "parameters": { "filter": { @@ -32919,16 +34845,17 @@ "location": "query", "type": "string" }, - "parentName": { - "description": "The name of the parent reservation and parent block. In the format of\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}", + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "^reservations/[^/]+/reservationBlocks/[^/]+$", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "project": { - "description": "Project ID for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -32936,17 +34863,11 @@ "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" - }, - "zone": { - "description": "Name of the zone for this request. Zone name should conform to RFC1035.", - "location": "path", - "required": true, - "type": "string" } }, - "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks", + "path": "projects/{project}/regions/{region}/targetHttpsProxies", "response": { - "$ref": "ReservationSubBlocksListResponse" + "$ref": "TargetHttpsProxyList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -32954,28 +34875,28 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "performMaintenance": { - "description": "Allows customers to perform maintenance on a reservation subBlock", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlock}/performMaintenance", - "httpMethod": "POST", - "id": "compute.reservationSubBlocks.performMaintenance", + "patch": { + "description": "Patches the specified regional TargetHttpsProxy resource with the data\nincluded in the request. This method supports PATCH\nsemantics and usesJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "httpMethod": "PATCH", + "id": "compute.regionTargetHttpsProxies.patch", "parameterOrder": [ "project", - "zone", - "parentName", - "reservationSubBlock" + "region", + "targetHttpsProxy" ], "parameters": { - "parentName": { - "description": "The name of the parent reservation and parent block. In the format of\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}", + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "^reservations/[^/]+/reservationBlocks/[^/]+$", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "project": { - "description": "Project ID for this request.", + "region": { + "description": "Name of the region for this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -32984,20 +34905,18 @@ "location": "query", "type": "string" }, - "reservationSubBlock": { - "description": "The name of the reservation subBlock.\nName should conform to RFC1035 or be a resource ID.", - "location": "path", - "required": true, - "type": "string" - }, - "zone": { - "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to patch.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}/performMaintenance", + "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "request": { + "$ref": "TargetHttpsProxy" + }, "response": { "$ref": "Operation" }, @@ -33006,28 +34925,28 @@ "https://www.googleapis.com/auth/compute" ] }, - "reportFaulty": { - "description": "Allows customers to report a faulty subBlock.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlock}/reportFaulty", + "setSslCertificates": { + "description": "Replaces SslCertificates for TargetHttpsProxy.", + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", "httpMethod": "POST", - "id": "compute.reservationSubBlocks.reportFaulty", + "id": "compute.regionTargetHttpsProxies.setSslCertificates", "parameterOrder": [ "project", - "zone", - "parentName", - "reservationSubBlock" + "region", + "targetHttpsProxy" ], "parameters": { - "parentName": { - "description": "The name of the parent reservation and parent block. In the format of\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}", + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "^reservations/[^/]+/reservationBlocks/[^/]+$", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "project": { - "description": "Project ID for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -33036,22 +34955,17 @@ "location": "query", "type": "string" }, - "reservationSubBlock": { - "description": "The name of the reservation subBlock.\nName should conform to RFC1035 or be a resource ID.", - "location": "path", - "required": true, - "type": "string" - }, - "zone": { - "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to set an\nSslCertificates resource for.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}/reportFaulty", + "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", "request": { - "$ref": "ReservationSubBlocksReportFaultyRequest" + "$ref": "RegionTargetHttpsProxiesSetSslCertificatesRequest" }, "response": { "$ref": "Operation" @@ -33061,25 +34975,17 @@ "https://www.googleapis.com/auth/compute" ] }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{resource}/setIamPolicy", + "setUrlMap": { + "description": "Changes the URL map for TargetHttpsProxy.", + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", "httpMethod": "POST", - "id": "compute.reservationSubBlocks.setIamPolicy", + "id": "compute.regionTargetHttpsProxies.setUrlMap", "parameterOrder": [ "project", - "zone", - "parentResource", - "resource" + "region", + "targetHttpsProxy" ], "parameters": { - "parentResource": { - "description": "Name or id of parent resource of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -33087,52 +34993,100 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "zone": { - "description": "The name of the zone for this request.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy to set a URL map for.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/setIamPolicy", + "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", "request": { - "$ref": "ZoneSetNestedPolicyRequest" + "$ref": "UrlMapReference" }, "response": { - "$ref": "Policy" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.reservationSubBlocks.testIamPermissions", + } + } + }, + "regionTargetTcpProxies": { + "methods": { + "delete": { + "description": "Deletes the specified TargetTcpProxy resource.", + "flatPath": "projects/{project}/regions/{region}/targetTcpProxies/{targetTcpProxy}", + "httpMethod": "DELETE", + "id": "compute.regionTargetTcpProxies.delete", "parameterOrder": [ "project", - "zone", - "parentResource", - "resource" + "region", + "targetTcpProxy" ], "parameters": { - "parentResource": { - "description": "Name or id of parent resource of the resource for this request.", + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/targetTcpProxies/{targetTcpProxy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified TargetTcpProxy resource.", + "flatPath": "projects/{project}/regions/{region}/targetTcpProxies/{targetTcpProxy}", + "httpMethod": "GET", + "id": "compute.regionTargetTcpProxies.get", + "parameterOrder": [ + "project", + "region", + "targetTcpProxy" + ], + "parameters": { "project": { "description": "Project ID for this request.", "location": "path", @@ -33140,45 +35094,81 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/targetTcpProxies/{targetTcpProxy}", + "response": { + "$ref": "TargetTcpProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a TargetTcpProxy resource in the specified project and region using\nthe data included in the request.", + "flatPath": "projects/{project}/regions/{region}/targetTcpProxies", + "httpMethod": "POST", + "id": "compute.regionTargetTcpProxies.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" }, - "zone": { - "description": "The name of the zone for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/testIamPermissions", + "path": "projects/{project}/regions/{region}/targetTcpProxies", "request": { - "$ref": "TestPermissionsRequest" + "$ref": "TargetTcpProxy" }, "response": { - "$ref": "TestPermissionsResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] - } - } - }, - "reservations": { - "methods": { - "aggregatedList": { - "description": "Retrieves an aggregated list of reservations.\n\nTo prevent failure, it is recommended that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/reservations", + }, + "list": { + "description": "Retrieves a list of TargetTcpProxy resources\navailable to the specified project in a given region.", + "flatPath": "projects/{project}/regions/{region}/targetTcpProxies", "httpMethod": "GET", - "id": "compute.reservations.aggregatedList", + "id": "compute.regionTargetTcpProxies.list", "parameterOrder": [ - "project" + "project", + "region" ], "parameters": { "filter": { @@ -33186,11 +35176,6 @@ "location": "query", "type": "string" }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -33216,37 +35201,42 @@ "required": true, "type": "string" }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" - }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/aggregated/reservations", + "path": "projects/{project}/regions/{region}/targetTcpProxies", "response": { - "$ref": "ReservationAggregatedList" + "$ref": "TargetTcpProxyList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, + } + } + }, + "regionUrlMaps": { + "methods": { "delete": { - "description": "Deletes the specified reservation.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}", + "description": "Deletes the specified UrlMap resource.", + "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}", "httpMethod": "DELETE", - "id": "compute.reservations.delete", + "id": "compute.regionUrlMaps.delete", "parameterOrder": [ "project", - "zone", - "reservation" + "region", + "urlMap" ], "parameters": { "project": { @@ -33256,27 +35246,27 @@ "required": true, "type": "string" }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "description": "begin_interface: MixerMutationRequestBuilder\nRequest ID to support idempotency.", "location": "query", "type": "string" }, - "reservation": { - "description": "Name of the reservation to delete.", + "urlMap": { + "description": "Name of the UrlMap resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - }, - "zone": { - "description": "Name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations/{reservation}", + "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}", "response": { "$ref": "Operation" }, @@ -33286,14 +35276,14 @@ ] }, "get": { - "description": "Retrieves information about the specified reservation.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}", + "description": "Returns the specified UrlMap resource.", + "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}", "httpMethod": "GET", - "id": "compute.reservations.get", + "id": "compute.regionUrlMaps.get", "parameterOrder": [ "project", - "zone", - "reservation" + "region", + "urlMap" ], "parameters": { "project": { @@ -33303,73 +35293,24 @@ "required": true, "type": "string" }, - "reservation": { - "description": "Name of the reservation to retrieve.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "zone": { - "description": "Name of the zone for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - } - }, - "path": "projects/{project}/zones/{zone}/reservations/{reservation}", - "response": { - "$ref": "Reservation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{resource}/getIamPolicy", - "httpMethod": "GET", - "id": "compute.reservations.getIamPolicy", - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "parameters": { - "optionsRequestedPolicyVersion": { - "description": "Requested IAM Policy version.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "urlMap": { + "description": "Name of the UrlMap resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations/{resource}/getIamPolicy", + "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}", "response": { - "$ref": "Policy" + "$ref": "UrlMap" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -33378,13 +35319,13 @@ ] }, "insert": { - "description": "Creates a new reservation. For more information, readReserving zonal\nresources.", - "flatPath": "projects/{project}/zones/{zone}/reservations", + "description": "Creates a UrlMap resource in the specified project using\nthe data included in the request.", + "flatPath": "projects/{project}/regions/{region}/urlMaps", "httpMethod": "POST", - "id": "compute.reservations.insert", + "id": "compute.regionUrlMaps.insert", "parameterOrder": [ "project", - "zone" + "region" ], "parameters": { "project": { @@ -33394,22 +35335,22 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "zone": { - "description": "Name of the zone for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "requestId": { + "description": "begin_interface: MixerMutationRequestBuilder\nRequest ID to support idempotency.", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations", + "path": "projects/{project}/regions/{region}/urlMaps", "request": { - "$ref": "Reservation" + "$ref": "UrlMap" }, "response": { "$ref": "Operation" @@ -33420,13 +35361,13 @@ ] }, "list": { - "description": "A list of all the reservations that have been configured for the\nspecified project in specified zone.", - "flatPath": "projects/{project}/zones/{zone}/reservations", + "description": "Retrieves the list of UrlMap resources available to the specified\nproject in the specified region.", + "flatPath": "projects/{project}/regions/{region}/urlMaps", "httpMethod": "GET", - "id": "compute.reservations.list", + "id": "compute.regionUrlMaps.list", "parameterOrder": [ "project", - "zone" + "region" ], "parameters": { "filter": { @@ -33459,22 +35400,22 @@ "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" - }, - "zone": { - "description": "Name of the zone for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/zones/{zone}/reservations", + "path": "projects/{project}/regions/{region}/urlMaps", "response": { - "$ref": "ReservationList" + "$ref": "UrlMapList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -33482,45 +35423,47 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "performMaintenance": { - "description": "Perform maintenance on an extended reservation", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/performMaintenance", - "httpMethod": "POST", - "id": "compute.reservations.performMaintenance", + "patch": { + "description": "Patches the specified UrlMap resource with the data included in the\nrequest. This method supportsPATCH\nsemantics and usesJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "httpMethod": "PATCH", + "id": "compute.regionUrlMaps.patch", "parameterOrder": [ "project", - "zone", - "reservation" + "region", + "urlMap" ], "parameters": { "project": { "description": "Project ID for this request.", "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "description": "begin_interface: MixerMutationRequestBuilder\nRequest ID to support idempotency.", "location": "query", "type": "string" }, - "reservation": { - "description": "The name of the reservation.\nName should conform to RFC1035 or be a resource ID.", + "urlMap": { + "description": "Name of the UrlMap resource to patch.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - }, - "zone": { - "description": "Name of the zone for this request. Zone name should conform to RFC1035.", - "location": "path", - "required": true, - "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations/{reservation}/performMaintenance", + "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}", "request": { - "$ref": "ReservationsPerformMaintenanceRequest" + "$ref": "UrlMap" }, "response": { "$ref": "Operation" @@ -33530,15 +35473,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "resize": { - "description": "Resizes the reservation (applicable to standalone reservations only). For\nmore information, readModifying\nreservations.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/resize", - "httpMethod": "POST", - "id": "compute.reservations.resize", + "update": { + "description": "Updates the specified UrlMap resource with the data included in the\nrequest.", + "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "httpMethod": "PUT", + "id": "compute.regionUrlMaps.update", "parameterOrder": [ "project", - "zone", - "reservation" + "region", + "urlMap" ], "parameters": { "project": { @@ -33548,29 +35491,29 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "reservation": { - "description": "Name of the reservation to update.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "zone": { - "description": "Name of the zone for this request.", + "requestId": { + "description": "begin_interface: MixerMutationRequestBuilder\nRequest ID to support idempotency.", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to update.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations/{reservation}/resize", + "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}", "request": { - "$ref": "ReservationsResizeRequest" + "$ref": "UrlMap" }, "response": { "$ref": "Operation" @@ -33580,15 +35523,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{resource}/setIamPolicy", - "httpMethod": "POST", - "id": "compute.reservations.setIamPolicy", + "validate": { + "description": "Runs static validation for the UrlMap. In particular, the tests of the\nprovided UrlMap will be run. Calling this method does NOT create the\nUrlMap.", + "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}/validate", + "httpMethod": "POST", + "id": "compute.regionUrlMaps.validate", "parameterOrder": [ "project", - "zone", - "resource" + "region", + "urlMap" ], "parameters": { "project": { @@ -33598,44 +35541,70 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "region": { + "description": "Name of the region scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "zone": { - "description": "The name of the zone for this request.", + "urlMap": { + "description": "Name of the UrlMap resource to be validated as.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations/{resource}/setIamPolicy", + "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}/validate", "request": { - "$ref": "ZoneSetPolicyRequest" + "$ref": "RegionUrlMapsValidateRequest" }, "response": { - "$ref": "Policy" + "$ref": "UrlMapsValidateResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.reservations.testIamPermissions", + } + } + }, + "regionZones": { + "methods": { + "list": { + "description": "Retrieves the list of Zone resources under the specific region available to\nthe specified project.", + "flatPath": "projects/{project}/regions/{region}/zones", + "httpMethod": "GET", + "id": "compute.regionZones.list", "parameterOrder": [ "project", - "zone", - "resource" + "region" ], "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -33643,50 +35612,43 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the zone for this request.", + "region": { + "description": "Region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/zones/{zone}/reservations/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, + "path": "projects/{project}/regions/{region}/zones", "response": { - "$ref": "TestPermissionsResponse" + "$ref": "ZoneList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "update": { - "description": "Update share settings of the reservation.", - "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}", - "httpMethod": "PATCH", - "id": "compute.reservations.update", + } + } + }, + "regions": { + "methods": { + "get": { + "description": "Returns the specified Region resource.\n\nTo decrease latency for this method, you can optionally omit any unneeded\ninformation from the response by using a field mask. This practice is\nespecially recommended for unused quota information (the `quotas` field).\nTo exclude one or more fields, set your request's `fields` query parameter\nto only include the fields you need. For example, to only include the `id`\nand `selfLink` fields, add the query parameter `?fields=id,selfLink` to\nyour request.\n\nThis method fails if the quota information is unavailable for the region\nand if the organization policy constraint\ncompute.requireBasicQuotaInResponse is enforced. This\nconstraint, when enforced, disables the fail-open behaviour when quota\ninformation (the `items.quotas` field) is unavailable for the region.\nIt is recommended to use the default setting\nfor the constraint unless your application requires the fail-closed\nbehaviour for this method.", + "flatPath": "projects/{project}/regions/{region}", + "httpMethod": "GET", + "id": "compute.regions.get", "parameterOrder": [ "project", - "zone", - "reservation" + "region" ], "parameters": { - "paths": { - "location": "query", - "repeated": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -33694,53 +35656,29 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "reservation": { - "description": "Name of the reservation to update.", + "region": { + "description": "Name of the region resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - }, - "updateMask": { - "description": "Update_mask indicates fields to be updated as part of this request.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - }, - "zone": { - "description": "Name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" } }, - "path": "projects/{project}/zones/{zone}/reservations/{reservation}", - "request": { - "$ref": "Reservation" - }, + "path": "projects/{project}/regions/{region}", "response": { - "$ref": "Operation" + "$ref": "Region" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "resourcePolicies": { - "methods": { - "aggregatedList": { - "description": "Retrieves an aggregated list of resource policies.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/resourcePolicies", + }, + "list": { + "description": "Retrieves the list of region resources available to the specified project.\n\nTo decrease latency for this method, you can optionally omit any unneeded\ninformation from the response by using a field mask. This practice is\nespecially recommended for unused quota information\n(the `items.quotas` field).\nTo exclude one or more fields, set your request's `fields` query parameter\nto only include the fields you need. For example, to only include the `id`\nand `selfLink` fields, add the query parameter `?fields=id,selfLink` to\nyour request.\n\nThis method fails if the quota information is unavailable for the region\nand if the organization policy constraint\ncompute.requireBasicQuotaInResponse is enforced. This\nconstraint, when enforced, disables the fail-open behaviour when quota\ninformation (the `items.quotas` field) is unavailable for the region.\nIt is recommended to use the default setting\nfor the constraint unless your application requires the fail-closed\nbehaviour for this method.", + "flatPath": "projects/{project}/regions", "httpMethod": "GET", - "id": "compute.resourcePolicies.aggregatedList", + "id": "compute.regions.list", "parameterOrder": [ "project" ], @@ -33750,11 +35688,6 @@ "location": "query", "type": "string" }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -33784,107 +35717,77 @@ "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" - }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/aggregated/resourcePolicies", + "path": "projects/{project}/regions", "response": { - "$ref": "ResourcePolicyAggregatedList" + "$ref": "RegionList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "delete": { - "description": "Deletes the specified resource policy.", - "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", - "httpMethod": "DELETE", - "id": "compute.resourcePolicies.delete", + } + } + }, + "reservationBlocks": { + "methods": { + "get": { + "description": "Retrieves information about the specified reservation block.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}", + "httpMethod": "GET", + "id": "compute.reservationBlocks.get", "parameterOrder": [ "project", - "region", - "resourcePolicy" + "zone", + "reservation", + "reservationBlock" ], "parameters": { "project": { "description": "Project ID for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "reservation": { + "description": "The name of the reservation.\nName should conform to RFC1035 or be a resource ID.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "resourcePolicy": { - "description": "Name of the resource policy to delete.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "description": "Retrieves all information of the specified resource policy.", - "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", - "httpMethod": "GET", - "id": "compute.resourcePolicies.get", - "parameterOrder": [ - "project", - "region", - "resourcePolicy" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", + "reservationBlock": { + "description": "The name of the reservation block.\nName should conform to RFC1035 or be a resource ID.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, + "view": { + "description": "View of the Block.", + "enum": [ + "BASIC", + "BLOCK_VIEW_UNSPECIFIED", + "FULL" + ], + "enumDescriptions": [ + "This view includes basic information about the reservation block", + "The default / unset value. The API will default to the BASIC view.", + "Includes detailed topology view." + ], + "location": "query", "type": "string" }, - "resourcePolicy": { - "description": "Name of the resource policy to retrieve.", + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", + "path": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}", "response": { - "$ref": "ResourcePolicy" + "$ref": "ReservationBlocksGetResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -33894,12 +35797,13 @@ }, "getIamPolicy": { "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", - "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resource}/getIamPolicy", + "flatPath": "projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/getIamPolicy", "httpMethod": "GET", - "id": "compute.resourcePolicies.getIamPolicy", + "id": "compute.reservationBlocks.getIamPolicy", "parameterOrder": [ "project", - "region", + "zone", + "parentResource", "resource" ], "parameters": { @@ -33909,17 +35813,17 @@ "location": "query", "type": "integer" }, - "project": { - "description": "Project ID for this request.", + "parentResource": { + "description": "Name or id of parent resource of the resource for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?", "required": true, "type": "string" }, - "region": { - "description": "The name of the region for this request.", + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, @@ -33929,68 +35833,34 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/resourcePolicies/{resource}/getIamPolicy", - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "description": "Creates a new resource policy.", - "flatPath": "projects/{project}/regions/{region}/resourcePolicies", - "httpMethod": "POST", - "id": "compute.resourcePolicies.insert", - "parameterOrder": [ - "project", - "region" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "zone": { + "description": "The name of the zone for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/regions/{region}/resourcePolicies", - "request": { - "$ref": "ResourcePolicy" - }, + "path": "projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/getIamPolicy", "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, "list": { - "description": "A list all the resource policies that have been configured for the\nspecified project in specified region.", - "flatPath": "projects/{project}/regions/{region}/resourcePolicies", + "description": "Retrieves a list of reservation blocks under a single reservation.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks", "httpMethod": "GET", - "id": "compute.resourcePolicies.list", + "id": "compute.reservationBlocks.list", "parameterOrder": [ "project", - "region" + "zone", + "reservation" ], "parameters": { "filter": { @@ -34019,14 +35889,12 @@ "project": { "description": "Project ID for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "reservation": { + "description": "The name of the reservation.\nName should conform to RFC1035 or be a resource ID.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -34034,11 +35902,17 @@ "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" + }, + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/resourcePolicies", + "path": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks", "response": { - "$ref": "ResourcePolicyList" + "$ref": "ReservationBlocksListResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -34046,28 +35920,21 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "patch": { - "description": "Modify the specified resource policy.", - "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", - "httpMethod": "PATCH", - "id": "compute.resourcePolicies.patch", + "performMaintenance": { + "description": "Allows customers to perform maintenance on a reservation block", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}/performMaintenance", + "httpMethod": "POST", + "id": "compute.reservationBlocks.performMaintenance", "parameterOrder": [ "project", - "region", - "resourcePolicy" + "zone", + "reservation", + "reservationBlock" ], "parameters": { "project": { "description": "Project ID for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -34076,23 +35943,28 @@ "location": "query", "type": "string" }, - "resourcePolicy": { - "description": "Id of the resource policy to patch.", + "reservation": { + "description": "The name of the reservation.\nName should conform to RFC1035 or be a resource ID.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "updateMask": { - "description": "update_mask indicates fields to be updated as part of this request.", - "format": "google-fieldmask", - "location": "query", + "reservationBlock": { + "description": "The name of the reservation block.\nName should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "location": "path", + "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", + "path": "projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}/performMaintenance", "request": { - "$ref": "ResourcePolicy" + "$ref": "ReservationsBlocksPerformMaintenanceRequest" }, "response": { "$ref": "Operation" @@ -34104,26 +35976,27 @@ }, "setIamPolicy": { "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", - "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resource}/setIamPolicy", + "flatPath": "projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/setIamPolicy", "httpMethod": "POST", - "id": "compute.resourcePolicies.setIamPolicy", + "id": "compute.reservationBlocks.setIamPolicy", "parameterOrder": [ "project", - "region", + "zone", + "parentResource", "resource" ], "parameters": { - "project": { - "description": "Project ID for this request.", + "parentResource": { + "description": "Name or id of parent resource of the resource for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?", "required": true, "type": "string" }, - "region": { - "description": "The name of the region for this request.", + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, @@ -34133,11 +36006,18 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/resourcePolicies/{resource}/setIamPolicy", + "path": "projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/setIamPolicy", "request": { - "$ref": "RegionSetPolicyRequest" + "$ref": "ZoneSetNestedPolicyRequest" }, "response": { "$ref": "Policy" @@ -34149,26 +36029,27 @@ }, "testIamPermissions": { "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resource}/testIamPermissions", + "flatPath": "projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/testIamPermissions", "httpMethod": "POST", - "id": "compute.resourcePolicies.testIamPermissions", + "id": "compute.reservationBlocks.testIamPermissions", "parameterOrder": [ "project", - "region", + "zone", + "parentResource", "resource" ], "parameters": { - "project": { - "description": "Project ID for this request.", + "parentResource": { + "description": "Name or id of parent resource of the resource for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?", "required": true, "type": "string" }, - "region": { - "description": "The name of the region for this request.", + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, @@ -34178,9 +36059,16 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/resourcePolicies/{resource}/testIamPermissions", + "path": "projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/testIamPermissions", "request": { "$ref": "TestPermissionsRequest" }, @@ -34195,38 +36083,138 @@ } } }, - "routers": { + "reservationSlots": { "methods": { - "aggregatedList": { - "description": "Retrieves an aggregated list of routers.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/routers", + "get": { + "description": "Retrieves information about the specified reservation slot.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlocksId}/reservationSlots/{reservationSlot}", "httpMethod": "GET", - "id": "compute.routers.aggregatedList", + "id": "compute.reservationSlots.get", "parameterOrder": [ - "project" + "project", + "zone", + "parentName", + "reservationSlot" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", + "parentName": { + "description": "The name of the parent reservation and parent block, formatted as\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}/reservationSubBlocks/{reservation_sub_block_name}", + "location": "path", + "pattern": "reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})", + "required": true, "type": "string" }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" + "project": { + "description": "The project ID for this request.", + "location": "path", + "required": true, + "type": "string" }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", + "reservationSlot": { + "description": "The name of the reservation slot, formatted as RFC1035 or a resource ID\nnumber.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request, formatted as RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}", + "response": { + "$ref": "ReservationSlotsGetResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getVersion": { + "description": "Allows customers to get SBOM versions of a reservation slot.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlocksId}/reservationSlots/{reservationSlot}/getVersion", + "httpMethod": "POST", + "id": "compute.reservationSlots.getVersion", + "parameterOrder": [ + "project", + "zone", + "parentName", + "reservationSlot" + ], + "parameters": { + "parentName": { + "description": "The name of the parent reservation and parent block. In the format of\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}/reservationSubBlocks/{reservation_sub_block_name}", + "location": "path", + "pattern": "reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "reservationSlot": { + "description": "The name of the reservation slot.\nName should conform to RFC1035 or be a resource ID.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}/getVersion", + "request": { + "$ref": "ReservationSlotsGetVersionRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of reservation slots under a single reservation.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlocksId}/reservationSlots", + "httpMethod": "GET", + "id": "compute.reservationSlots.list", + "parameterOrder": [ + "project", + "zone", + "parentName" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", "type": "string" }, "pageToken": { @@ -34234,10 +36222,16 @@ "location": "query", "type": "string" }, + "parentName": { + "description": "The name of the parent reservation and parent block, formatted as\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}/reservationSubBlocks/{reservation_sub_block_name}", + "location": "path", + "pattern": "reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})", + "required": true, + "type": "string" + }, "project": { - "description": "Project ID for this request.", + "description": "The project ID for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, @@ -34246,16 +36240,16 @@ "location": "query", "type": "boolean" }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", + "zone": { + "description": "The name of the zone for this request, formatted as RFC1035.", + "location": "path", + "required": true, "type": "string" } }, - "path": "projects/{project}/aggregated/routers", + "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSlots", "response": { - "$ref": "RouterAggregatedList" + "$ref": "ReservationSlotsListResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -34263,45 +36257,54 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "delete": { - "description": "Deletes the specified Router resource.", - "flatPath": "projects/{project}/regions/{region}/routers/{router}", - "httpMethod": "DELETE", - "id": "compute.routers.delete", + "update": { + "description": "Update a reservation slot in the specified sub-block.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlocksId}/reservationSlots/{reservationSlot}", + "httpMethod": "POST", + "id": "compute.reservationSlots.update", "parameterOrder": [ "project", - "region", - "router" + "zone", + "parentName", + "reservationSlot" ], "parameters": { + "parentName": { + "description": "The name of the sub-block resource.", + "location": "path", + "pattern": "reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})", + "required": true, + "type": "string" + }, "project": { - "description": "Project ID for this request.", + "description": "The project ID for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "reservationSlot": { + "description": "The name of the slot resource.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "updateMask": { + "description": "The fields to be updated as part of this request.", + "format": "google-fieldmask", "location": "query", "type": "string" }, - "router": { - "description": "Name of the Router resource to delete.", + "zone": { + "description": "The name of the zone for this request, formatted as RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}", + "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}", + "request": { + "$ref": "ReservationSlot" + }, "response": { "$ref": "Operation" }, @@ -34309,70 +36312,99 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "deleteRoutePolicy": { - "description": "Deletes Route Policy", - "flatPath": "projects/{project}/regions/{region}/routers/{router}/deleteRoutePolicy", - "httpMethod": "POST", - "id": "compute.routers.deleteRoutePolicy", + } + } + }, + "reservationSubBlocks": { + "methods": { + "get": { + "description": "Retrieves information about the specified reservation subBlock.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlock}", + "httpMethod": "GET", + "id": "compute.reservationSubBlocks.get", "parameterOrder": [ "project", - "region", - "router" + "zone", + "parentName", + "reservationSubBlock" ], "parameters": { - "policy": { - "description": "The Policy name for this request. Name must conform to RFC1035", - "location": "query", + "parentName": { + "description": "The name of the parent reservation and parent block. In the format of\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}", + "location": "path", + "pattern": "^reservations/[^/]+/reservationBlocks/[^/]+$", + "required": true, "type": "string" }, "project": { "description": "Project ID for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "reservationSubBlock": { + "description": "The name of the reservation subBlock.\nName should conform to RFC1035 or be a resource ID.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "view": { + "description": "View of the subBlock.", + "enum": [ + "SUB_BLOCK_VIEW_BASIC", + "SUB_BLOCK_VIEW_FULL", + "SUB_BLOCK_VIEW_UNSPECIFIED" + ], + "enumDescriptions": [ + "This view includes basic information about the reservation sub block", + "Includes detailed topology view.", + "The default / unset value. The API will default to the BASIC view." + ], "location": "query", "type": "string" }, - "router": { - "description": "Name of the Router resource where Route Policy is defined.", + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}/deleteRoutePolicy", + "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}", "response": { - "$ref": "Operation" + "$ref": "ReservationSubBlocksGetResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "get": { - "description": "Returns the specified Router resource.", - "flatPath": "projects/{project}/regions/{region}/routers/{router}", + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{resource}/getIamPolicy", "httpMethod": "GET", - "id": "compute.routers.get", + "id": "compute.reservationSubBlocks.getIamPolicy", "parameterOrder": [ "project", - "region", - "router" + "zone", + "parentResource", + "resource" ], "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "parentResource": { + "description": "Name or id of parent resource of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -34380,24 +36412,24 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "router": { - "description": "Name of the Router resource to return.", + "zone": { + "description": "The name of the zone for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}", + "path": "projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/getIamPolicy", "response": { - "$ref": "Router" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -34405,62 +36437,70 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "getNatIpInfo": { - "description": "Retrieves runtime NAT IP information.", - "flatPath": "projects/{project}/regions/{region}/routers/{router}/getNatIpInfo", - "httpMethod": "GET", - "id": "compute.routers.getNatIpInfo", + "getVersion": { + "description": "Allows customers to get SBOM versions of a reservation subBlock.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlock}/getVersion", + "httpMethod": "POST", + "id": "compute.reservationSubBlocks.getVersion", "parameterOrder": [ "project", - "region", - "router" + "zone", + "parentName", + "reservationSubBlock" ], "parameters": { - "natName": { - "description": "Name of the nat service to filter the NAT IP information.\nIf it is omitted, all nats for this router will be returned.\nName should conform to RFC1035.", - "location": "query", + "parentName": { + "description": "The name of the parent reservation and parent block. In the format of\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}", + "location": "path", + "pattern": "^reservations/[^/]+/reservationBlocks/[^/]+$", + "required": true, "type": "string" }, "project": { "description": "Project ID for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "reservationSubBlock": { + "description": "The name of the reservation subBlock.\nName should conform to RFC1035 or be a resource ID.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "router": { - "description": "Name of the Router resource to query for Nat IP information. The name\nshould conform to RFC1035.", + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", "location": "path", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}/getNatIpInfo", + "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}/getVersion", + "request": { + "$ref": "ReservationSubBlocksGetVersionRequest" + }, "response": { - "$ref": "NatIpInfoResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "getNatMappingInfo": { - "description": "Retrieves runtime Nat mapping information of VM endpoints.", - "flatPath": "projects/{project}/regions/{region}/routers/{router}/getNatMappingInfo", + "list": { + "description": "Retrieves a list of reservation subBlocks under a single reservation.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks", "httpMethod": "GET", - "id": "compute.routers.getNatMappingInfo", + "id": "compute.reservationSubBlocks.list", "parameterOrder": [ "project", - "region", - "router" + "zone", + "parentName" ], "parameters": { "filter": { @@ -34476,11 +36516,6 @@ "minimum": "0", "type": "integer" }, - "natName": { - "description": "Name of the nat service to filter the Nat Mapping information.\nIf it is omitted, all nats for this router will be returned.\nName should conform to RFC1035.", - "location": "query", - "type": "string" - }, "orderBy": { "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", "location": "query", @@ -34491,17 +36526,16 @@ "location": "query", "type": "string" }, - "project": { - "description": "Project ID for this request.", + "parentName": { + "description": "The name of the parent reservation and parent block. In the format of\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "^reservations/[^/]+/reservationBlocks/[^/]+$", "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -34510,17 +36544,16 @@ "location": "query", "type": "boolean" }, - "router": { - "description": "Name of the Router resource to query for Nat Mapping information of\nVM endpoints.", + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}/getNatMappingInfo", + "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks", "response": { - "$ref": "VmEndpointNatMappingsList" + "$ref": "ReservationSubBlocksListResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -34528,106 +36561,132 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "getRoutePolicy": { - "description": "Returns specified Route Policy", - "flatPath": "projects/{project}/regions/{region}/routers/{router}/getRoutePolicy", - "httpMethod": "GET", - "id": "compute.routers.getRoutePolicy", + "performMaintenance": { + "description": "Allows customers to perform maintenance on a reservation subBlock", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlock}/performMaintenance", + "httpMethod": "POST", + "id": "compute.reservationSubBlocks.performMaintenance", "parameterOrder": [ "project", - "region", - "router" + "zone", + "parentName", + "reservationSubBlock" ], "parameters": { - "policy": { - "description": "The Policy name for this request. Name must conform to RFC1035", - "location": "query", + "parentName": { + "description": "The name of the parent reservation and parent block. In the format of\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}", + "location": "path", + "pattern": "^reservations/[^/]+/reservationBlocks/[^/]+$", + "required": true, "type": "string" }, "project": { "description": "Project ID for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "reservationSubBlock": { + "description": "The name of the reservation subBlock.\nName should conform to RFC1035 or be a resource ID.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "router": { - "description": "Name of the Router resource to query for the route policy. The name should\nconform to RFC1035.", + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", "location": "path", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}/getRoutePolicy", + "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}/performMaintenance", "response": { - "$ref": "RoutersGetRoutePolicyResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "getRouterStatus": { - "description": "Retrieves runtime information of the specified router.", - "flatPath": "projects/{project}/regions/{region}/routers/{router}/getRouterStatus", - "httpMethod": "GET", - "id": "compute.routers.getRouterStatus", + "reportFaulty": { + "description": "Allows customers to report a faulty subBlock.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{reservationSubBlock}/reportFaulty", + "httpMethod": "POST", + "id": "compute.reservationSubBlocks.reportFaulty", "parameterOrder": [ "project", - "region", - "router" + "zone", + "parentName", + "reservationSubBlock" ], "parameters": { + "parentName": { + "description": "The name of the parent reservation and parent block. In the format of\nreservations/{reservation_name}/reservationBlocks/{reservation_block_name}", + "location": "path", + "pattern": "^reservations/[^/]+/reservationBlocks/[^/]+$", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "reservationSubBlock": { + "description": "The name of the reservation subBlock.\nName should conform to RFC1035 or be a resource ID.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "router": { - "description": "Name of the Router resource to query.", + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}/getRouterStatus", + "path": "projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}/reportFaulty", + "request": { + "$ref": "ReservationSubBlocksReportFaultyRequest" + }, "response": { - "$ref": "RouterStatusResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "insert": { - "description": "Creates a Router resource in the specified project and region using\nthe data included in the request.", - "flatPath": "projects/{project}/regions/{region}/routers", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{resource}/setIamPolicy", "httpMethod": "POST", - "id": "compute.routers.insert", + "id": "compute.reservationSubBlocks.setIamPolicy", "parameterOrder": [ "project", - "region" + "zone", + "parentResource", + "resource" ], "parameters": { + "parentResource": { + "description": "Name or id of parent resource of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -34635,131 +36694,110 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers", + "path": "projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/setIamPolicy", "request": { - "$ref": "Router" + "$ref": "ZoneSetNestedPolicyRequest" }, "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] }, - "list": { - "description": "Retrieves a list of Router resources available to the specified project.", - "flatPath": "projects/{project}/regions/{region}/routers", - "httpMethod": "GET", - "id": "compute.routers.list", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservationsId}/reservationBlocks/{reservationBlocksId}/reservationSubBlocks/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.reservationSubBlocks.testIamPermissions", "parameterOrder": [ "project", - "region" + "zone", + "parentResource", + "resource" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", + "parentResource": { + "description": "Name or id of parent resource of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?", + "required": true, "type": "string" }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, "type": "string" }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, - "project": { - "description": "Project ID for this request.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "zone": { + "description": "The name of the zone for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/routers", + "path": "projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, "response": { - "$ref": "RouterList" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "listBgpRoutes": { - "description": "Retrieves a list of router bgp routes available to the specified project.", - "flatPath": "projects/{project}/regions/{region}/routers/{router}/listBgpRoutes", + } + } + }, + "reservations": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of reservations.\n\nTo prevent failure, it is recommended that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/reservations", "httpMethod": "GET", - "id": "compute.routers.listBgpRoutes", + "id": "compute.reservations.aggregatedList", "parameterOrder": [ - "project", - "region", - "router" + "project" ], "parameters": { - "addressFamily": { - "default": "UNSPECIFIED_IP_VERSION", - "description": "(Required) limit results to this address family (either IPv4 or IPv6)", - "enum": [ - "IPV4", - "IPV6", - "UNSPECIFIED_IP_VERSION" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "location": "query", - "type": "string" - }, - "destinationPrefix": { - "description": "Limit results to destinations that are subnets of this CIDR range", - "location": "query", - "type": "string" - }, "filter": { "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", "location": "query", "type": "string" }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -34778,17 +36816,6 @@ "location": "query", "type": "string" }, - "peer": { - "description": "(Required) limit results to the BGP peer with the given name.\nName should conform to RFC1035.", - "location": "query", - "type": "string" - }, - "policyApplied": { - "default": "true", - "description": "When true, the method returns post-policy routes. Otherwise, it returns\npre-policy routes.", - "location": "query", - "type": "boolean" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -34796,45 +36823,21 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" }, - "routeType": { - "default": "UNSPECIFIED_ROUTE_TYPE", - "description": "(Required) limit results to this type of route (either LEARNED or\nADVERTISED)", - "enum": [ - "ADVERTISED", - "LEARNED", - "UNSPECIFIED_ROUTE_TYPE" - ], - "enumDescriptions": [ - "", - "", - "" - ], + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", "location": "query", "type": "string" - }, - "router": { - "description": "Name or id of the resource for this request.\nName should conform to RFC1035.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}/listBgpRoutes", + "path": "projects/{project}/aggregated/reservations", "response": { - "$ref": "RoutersListBgpRoutes" + "$ref": "ReservationAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -34842,40 +36845,64 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "listRoutePolicies": { - "description": "Retrieves a list of router route policy subresources available to the\nspecified project.", - "flatPath": "projects/{project}/regions/{region}/routers/{router}/listRoutePolicies", - "httpMethod": "GET", - "id": "compute.routers.listRoutePolicies", + "delete": { + "description": "Deletes the specified reservation.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}", + "httpMethod": "DELETE", + "id": "compute.reservations.delete", "parameterOrder": [ "project", - "region", - "router" + "zone", + "reservation" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, "type": "string" }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", + "reservation": { + "description": "Name of the reservation to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/reservations/{reservation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves information about the specified reservation.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}", + "httpMethod": "GET", + "id": "compute.reservations.get", + "parameterOrder": [ + "project", + "zone", + "reservation" + ], + "parameters": { "project": { "description": "Project ID for this request.", "location": "path", @@ -34883,29 +36910,24 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "reservation": { + "description": "Name of the reservation to retrieve.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" - }, - "router": { - "description": "Name or id of the resource for this request.\nName should conform to RFC1035.", + "zone": { + "description": "Name of the zone for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}/listRoutePolicies", + "path": "projects/{project}/zones/{zone}/reservations/{reservation}", "response": { - "$ref": "RoutersListRoutePolicies" + "$ref": "Reservation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -34913,17 +36935,23 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "patch": { - "description": "Patches the specified Router resource with the data included in the\nrequest. This method supportsPATCH\nsemantics and usesJSON merge\npatch format and processing rules.", - "flatPath": "projects/{project}/regions/{region}/routers/{router}", - "httpMethod": "PATCH", - "id": "compute.routers.patch", + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.reservations.getIamPolicy", "parameterOrder": [ "project", - "region", - "router" + "zone", + "resource" ], "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -34931,47 +36959,39 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "router": { - "description": "Name of the Router resource to patch.", + "zone": { + "description": "The name of the zone for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}", - "request": { - "$ref": "Router" - }, + "path": "projects/{project}/zones/{zone}/reservations/{resource}/getIamPolicy", "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "patchRoutePolicy": { - "description": "Patches Route Policy", - "flatPath": "projects/{project}/regions/{region}/routers/{router}/patchRoutePolicy", + "insert": { + "description": "Creates a new reservation. For more information, readReserving zonal\nresources.", + "flatPath": "projects/{project}/zones/{zone}/reservations", "httpMethod": "POST", - "id": "compute.routers.patchRoutePolicy", + "id": "compute.reservations.insert", "parameterOrder": [ "project", - "region", - "router" + "zone" ], "parameters": { "project": { @@ -34981,29 +37001,22 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "router": { - "description": "Name of the Router resource where Route Policy is defined.", + "zone": { + "description": "Name of the zone for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}/patchRoutePolicy", + "path": "projects/{project}/zones/{zone}/reservations", "request": { - "$ref": "RoutePolicy" + "$ref": "Reservation" }, "response": { "$ref": "Operation" @@ -35013,17 +37026,39 @@ "https://www.googleapis.com/auth/compute" ] }, - "preview": { - "description": "Preview fields auto-generated during router create andupdate operations.\nCalling this method does NOT create or update the router.", - "flatPath": "projects/{project}/regions/{region}/routers/{router}/preview", - "httpMethod": "POST", - "id": "compute.routers.preview", + "list": { + "description": "A list of all the reservations that have been configured for the\nspecified project in specified zone.", + "flatPath": "projects/{project}/zones/{zone}/reservations", + "httpMethod": "GET", + "id": "compute.reservations.list", "parameterOrder": [ "project", - "region", - "router" + "zone" ], "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -35031,27 +37066,22 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" }, - "router": { - "description": "Name of the Router resource to query.", + "zone": { + "description": "Name of the zone for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}/preview", - "request": { - "$ref": "Router" - }, + "path": "projects/{project}/zones/{zone}/reservations", "response": { - "$ref": "RoutersPreviewResponse" + "$ref": "ReservationList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -35059,28 +37089,20 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "update": { - "description": "Updates the specified Router resource with the data included in the\nrequest. This method conforms toPUT semantics, which requests that the state of the\ntarget resource be created or replaced with the state defined by the\nrepresentation enclosed in the request message payload.", - "flatPath": "projects/{project}/regions/{region}/routers/{router}", - "httpMethod": "PUT", - "id": "compute.routers.update", + "performMaintenance": { + "description": "Perform maintenance on an extended reservation", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/performMaintenance", + "httpMethod": "POST", + "id": "compute.reservations.performMaintenance", "parameterOrder": [ "project", - "region", - "router" + "zone", + "reservation" ], "parameters": { "project": { "description": "Project ID for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -35089,17 +37111,23 @@ "location": "query", "type": "string" }, - "router": { - "description": "Name of the Router resource to update.", + "reservation": { + "description": "The name of the reservation.\nName should conform to RFC1035 or be a resource ID.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "zone": { + "description": "Name of the zone for this request. Zone name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}", + "path": "projects/{project}/zones/{zone}/reservations/{reservation}/performMaintenance", "request": { - "$ref": "Router" + "$ref": "ReservationsPerformMaintenanceRequest" }, "response": { "$ref": "Operation" @@ -35109,15 +37137,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "updateRoutePolicy": { - "description": "Updates or creates new Route Policy", - "flatPath": "projects/{project}/regions/{region}/routers/{router}/updateRoutePolicy", + "resize": { + "description": "Resizes the reservation (applicable to standalone reservations only). For\nmore information, readModifying\nreservations.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/resize", "httpMethod": "POST", - "id": "compute.routers.updateRoutePolicy", + "id": "compute.reservations.resize", "parameterOrder": [ "project", - "region", - "router" + "zone", + "reservation" ], "parameters": { "project": { @@ -35127,29 +37155,29 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "router": { - "description": "Name of the Router resource where Route Policy is defined.", + "reservation": { + "description": "Name of the reservation to update.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/routers/{router}/updateRoutePolicy", + "path": "projects/{project}/zones/{zone}/reservations/{reservation}/resize", "request": { - "$ref": "RoutePolicy" + "$ref": "ReservationsResizeRequest" }, "response": { "$ref": "Operation" @@ -35158,19 +37186,16 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - } - } - }, - "routes": { - "methods": { - "delete": { - "description": "Deletes the specified Route resource.", - "flatPath": "projects/{project}/global/routes/{route}", - "httpMethod": "DELETE", - "id": "compute.routes.delete", + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.reservations.setIamPolicy", "parameterOrder": [ "project", - "route" + "zone", + "resource" ], "parameters": { "project": { @@ -35180,36 +37205,42 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" }, - "route": { - "description": "Name of the Route resource to delete.", + "zone": { + "description": "The name of the zone for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/global/routes/{route}", + "path": "projects/{project}/zones/{zone}/reservations/{resource}/setIamPolicy", + "request": { + "$ref": "ZoneSetPolicyRequest" + }, "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified Route resource.", - "flatPath": "projects/{project}/global/routes/{route}", - "httpMethod": "GET", - "id": "compute.routes.get", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.reservations.testIamPermissions", "parameterOrder": [ "project", - "route" + "zone", + "resource" ], "parameters": { "project": { @@ -35219,17 +37250,27 @@ "required": true, "type": "string" }, - "route": { - "description": "Name of the Route resource to return.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" } }, - "path": "projects/{project}/global/routes/{route}", + "path": "projects/{project}/zones/{zone}/reservations/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, "response": { - "$ref": "Route" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -35237,15 +37278,22 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "insert": { - "description": "Creates a Route resource in the specified project using the data included\nin the request.", - "flatPath": "projects/{project}/global/routes", - "httpMethod": "POST", - "id": "compute.routes.insert", + "update": { + "description": "Update share settings of the reservation.", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}", + "httpMethod": "PATCH", + "id": "compute.reservations.update", "parameterOrder": [ - "project" + "project", + "zone", + "reservation" ], "parameters": { + "paths": { + "location": "query", + "repeated": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -35257,164 +37305,49 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" - } - }, - "path": "projects/{project}/global/routes", - "request": { - "$ref": "Route" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "list": { - "description": "Retrieves the list of Route resources available to the specified project.", - "flatPath": "projects/{project}/global/routes", - "httpMethod": "GET", - "id": "compute.routes.list", - "parameterOrder": [ - "project" - ], - "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" }, - "project": { - "description": "Project ID for this request.", + "reservation": { + "description": "Name of the reservation to update.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "updateMask": { + "description": "Update_mask indicates fields to be updated as part of this request.", + "format": "google-fieldmask", "location": "query", - "type": "boolean" - } - }, - "path": "projects/{project}/global/routes", - "response": { - "$ref": "RouteList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/global/routes/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.routes.testIamPermissions", - "parameterOrder": [ - "project", - "resource" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "zone": { + "description": "Name of the zone for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/global/routes/{resource}/testIamPermissions", + "path": "projects/{project}/zones/{zone}/reservations/{reservation}", "request": { - "$ref": "TestPermissionsRequest" + "$ref": "Reservation" }, "response": { - "$ref": "TestPermissionsResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] } } }, - "securityPolicies": { + "resourcePolicies": { "methods": { - "addRule": { - "description": "Inserts a rule into a security policy.", - "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}/addRule", - "httpMethod": "POST", - "id": "compute.securityPolicies.addRule", - "parameterOrder": [ - "project", - "securityPolicy" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "securityPolicy": { - "description": "Name of the security policy to update.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "validateOnly": { - "description": "If true, the request will not be committed.", - "location": "query", - "type": "boolean" - } - }, - "path": "projects/{project}/global/securityPolicies/{securityPolicy}/addRule", - "request": { - "$ref": "SecurityPolicyRule" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, "aggregatedList": { - "description": "Retrieves the list of all SecurityPolicy resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/securityPolicies", + "description": "Retrieves an aggregated list of resource policies.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/resourcePolicies", "httpMethod": "GET", - "id": "compute.securityPolicies.aggregatedList", + "id": "compute.resourcePolicies.aggregatedList", "parameterOrder": [ "project" ], @@ -35448,7 +37381,7 @@ "type": "string" }, "project": { - "description": "Name of the project scoping this request.", + "description": "Project ID for this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, @@ -35466,9 +37399,9 @@ "type": "string" } }, - "path": "projects/{project}/aggregated/securityPolicies", + "path": "projects/{project}/aggregated/resourcePolicies", "response": { - "$ref": "SecurityPoliciesAggregatedList" + "$ref": "ResourcePolicyAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -35477,13 +37410,14 @@ ] }, "delete": { - "description": "Deletes the specified policy.", - "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}", + "description": "Deletes the specified resource policy.", + "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", "httpMethod": "DELETE", - "id": "compute.securityPolicies.delete", + "id": "compute.resourcePolicies.delete", "parameterOrder": [ "project", - "securityPolicy" + "region", + "resourcePolicy" ], "parameters": { "project": { @@ -35493,20 +37427,27 @@ "required": true, "type": "string" }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "securityPolicy": { - "description": "Name of the security policy to delete.", + "resourcePolicy": { + "description": "Name of the resource policy to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/securityPolicies/{securityPolicy}", + "path": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", "response": { "$ref": "Operation" }, @@ -35516,13 +37457,14 @@ ] }, "get": { - "description": "List all of the ordered rules present in a single specified policy.", - "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}", + "description": "Retrieves all information of the specified resource policy.", + "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", "httpMethod": "GET", - "id": "compute.securityPolicies.get", + "id": "compute.resourcePolicies.get", "parameterOrder": [ "project", - "securityPolicy" + "region", + "resourcePolicy" ], "parameters": { "project": { @@ -35532,17 +37474,24 @@ "required": true, "type": "string" }, - "securityPolicy": { - "description": "Name of the security policy to get.", + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resourcePolicy": { + "description": "Name of the resource policy to retrieve.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/securityPolicies/{securityPolicy}", + "path": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", "response": { - "$ref": "SecurityPolicy" + "$ref": "ResourcePolicy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -35550,18 +37499,19 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "getRule": { - "description": "Gets a rule at the specified priority.", - "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}/getRule", + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resource}/getIamPolicy", "httpMethod": "GET", - "id": "compute.securityPolicies.getRule", + "id": "compute.resourcePolicies.getIamPolicy", "parameterOrder": [ "project", - "securityPolicy" + "region", + "resource" ], "parameters": { - "priority": { - "description": "The priority of the rule to get from the security policy.", + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", "format": "int32", "location": "query", "type": "integer" @@ -35573,17 +37523,24 @@ "required": true, "type": "string" }, - "securityPolicy": { - "description": "Name of the security policy to which the queried rule belongs.", + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/securityPolicies/{securityPolicy}/getRule", + "path": "projects/{project}/regions/{region}/resourcePolicies/{resource}/getIamPolicy", "response": { - "$ref": "SecurityPolicyRule" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -35592,12 +37549,13 @@ ] }, "insert": { - "description": "Creates a new policy in the specified project using the data included in\nthe request.", - "flatPath": "projects/{project}/global/securityPolicies", + "description": "Creates a new resource policy.", + "flatPath": "projects/{project}/regions/{region}/resourcePolicies", "httpMethod": "POST", - "id": "compute.securityPolicies.insert", + "id": "compute.resourcePolicies.insert", "parameterOrder": [ - "project" + "project", + "region" ], "parameters": { "project": { @@ -35607,20 +37565,22 @@ "required": true, "type": "string" }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" - }, - "validateOnly": { - "description": "If true, the request will not be committed.", - "location": "query", - "type": "boolean" } }, - "path": "projects/{project}/global/securityPolicies", + "path": "projects/{project}/regions/{region}/resourcePolicies", "request": { - "$ref": "SecurityPolicy" + "$ref": "ResourcePolicy" }, "response": { "$ref": "Operation" @@ -35631,12 +37591,13 @@ ] }, "list": { - "description": "List all the policies that have been configured for the specified project.", - "flatPath": "projects/{project}/global/securityPolicies", + "description": "A list all the resource policies that have been configured for the\nspecified project in specified region.", + "flatPath": "projects/{project}/regions/{region}/resourcePolicies", "httpMethod": "GET", - "id": "compute.securityPolicies.list", + "id": "compute.resourcePolicies.list", "parameterOrder": [ - "project" + "project", + "region" ], "parameters": { "filter": { @@ -35669,15 +37630,22 @@ "required": true, "type": "string" }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" } }, - "path": "projects/{project}/global/securityPolicies", + "path": "projects/{project}/regions/{region}/resourcePolicies", "response": { - "$ref": "SecurityPolicyList" + "$ref": "ResourcePolicyList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -35685,69 +37653,71 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "listPreconfiguredExpressionSets": { - "description": "Gets the current list of preconfigured Web Application Firewall (WAF)\nexpressions.", - "flatPath": "projects/{project}/global/securityPolicies/listPreconfiguredExpressionSets", - "httpMethod": "GET", - "id": "compute.securityPolicies.listPreconfiguredExpressionSets", + "patch": { + "description": "Modify the specified resource policy.", + "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", + "httpMethod": "PATCH", + "id": "compute.resourcePolicies.patch", "parameterOrder": [ - "project" + "project", + "region", + "resourcePolicy" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, "type": "string" }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "project": { - "description": "Project ID for this request.", + "resourcePolicy": { + "description": "Id of the resource policy to patch.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "updateMask": { + "description": "update_mask indicates fields to be updated as part of this request.", + "format": "google-fieldmask", "location": "query", - "type": "boolean" + "type": "string" } }, - "path": "projects/{project}/global/securityPolicies/listPreconfiguredExpressionSets", + "path": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", + "request": { + "$ref": "ResourcePolicy" + }, "response": { - "$ref": "SecurityPoliciesListPreconfiguredExpressionSetsResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "patch": { - "description": "Patches the specified policy with the data included in the request. To\nclear fields in the policy, leave the fields empty and specify them in the\nupdateMask. This cannot be used to be update the rules in the policy.\nPlease use the per rule methods like addRule, patchRule, and removeRule\ninstead.", - "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}", - "httpMethod": "PATCH", - "id": "compute.securityPolicies.patch", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.resourcePolicies.setIamPolicy", "parameterOrder": [ "project", - "securityPolicy" + "region", + "resource" ], "parameters": { "project": { @@ -35757,53 +37727,44 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" }, - "securityPolicy": { - "description": "Name of the security policy to update.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - }, - "updateMask": { - "description": "Indicates fields to be cleared as part of this request.", - "format": "google-fieldmask", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/global/securityPolicies/{securityPolicy}", + "path": "projects/{project}/regions/{region}/resourcePolicies/{resource}/setIamPolicy", "request": { - "$ref": "SecurityPolicy" + "$ref": "RegionSetPolicyRequest" }, "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] }, - "patchRule": { - "description": "Patches a rule at the specified priority. To clear fields in the rule,\nleave the fields empty and specify them in the updateMask.", - "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}/patchRule", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resource}/testIamPermissions", "httpMethod": "POST", - "id": "compute.securityPolicies.patchRule", + "id": "compute.resourcePolicies.testIamPermissions", "parameterOrder": [ "project", - "securityPolicy" + "region", + "resource" ], "parameters": { - "priority": { - "description": "The priority of the rule to patch.", - "format": "int32", - "location": "query", - "type": "integer" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -35811,53 +37772,48 @@ "required": true, "type": "string" }, - "securityPolicy": { - "description": "Name of the security policy to update.", + "region": { + "description": "The name of the region for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "updateMask": { - "description": "Indicates fields to be cleared as part of this request.", - "format": "google-fieldmask", - "location": "query", + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" - }, - "validateOnly": { - "description": "If true, the request will not be committed.", - "location": "query", - "type": "boolean" } }, - "path": "projects/{project}/global/securityPolicies/{securityPolicy}/patchRule", + "path": "projects/{project}/regions/{region}/resourcePolicies/{resource}/testIamPermissions", "request": { - "$ref": "SecurityPolicyRule" + "$ref": "TestPermissionsRequest" }, "response": { - "$ref": "Operation" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] - }, - "removeRule": { - "description": "Deletes a rule at the specified priority.", - "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}/removeRule", - "httpMethod": "POST", - "id": "compute.securityPolicies.removeRule", + } + } + }, + "rolloutPlans": { + "methods": { + "delete": { + "description": "Deletes a RolloutPlan.", + "flatPath": "projects/{project}/global/rolloutPlans/{rolloutPlan}", + "httpMethod": "DELETE", + "id": "compute.rolloutPlans.delete", "parameterOrder": [ "project", - "securityPolicy" + "rolloutPlan" ], "parameters": { - "priority": { - "description": "The priority of the rule to remove from the security policy.", - "format": "int32", - "location": "query", - "type": "integer" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -35865,15 +37821,20 @@ "required": true, "type": "string" }, - "securityPolicy": { - "description": "Name of the security policy to update.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rolloutPlan": { + "description": "Name of the RolloutPlan resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/securityPolicies/{securityPolicy}/removeRule", + "path": "projects/{project}/global/rolloutPlans/{rolloutPlan}", "response": { "$ref": "Operation" }, @@ -35882,14 +37843,14 @@ "https://www.googleapis.com/auth/compute" ] }, - "setLabels": { - "description": "Sets the labels on a security policy. To learn more about labels,\nread the Labeling Resources\ndocumentation.", - "flatPath": "projects/{project}/global/securityPolicies/{resource}/setLabels", - "httpMethod": "POST", - "id": "compute.securityPolicies.setLabels", + "get": { + "description": "Gets details of a single project-scoped RolloutPlan.", + "flatPath": "projects/{project}/global/rolloutPlans/{rolloutPlan}", + "httpMethod": "GET", + "id": "compute.rolloutPlans.get", "parameterOrder": [ "project", - "resource" + "rolloutPlan" ], "parameters": { "project": { @@ -35899,17 +37860,49 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "rolloutPlan": { + "description": "Name of the persistent rollout plan to return.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/securityPolicies/{resource}/setLabels", + "path": "projects/{project}/global/rolloutPlans/{rolloutPlan}", + "response": { + "$ref": "RolloutPlan" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a new RolloutPlan in a given project and location.", + "flatPath": "projects/{project}/global/rolloutPlans", + "httpMethod": "POST", + "id": "compute.rolloutPlans.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/rolloutPlans", "request": { - "$ref": "GlobalSetLabelsRequest" + "$ref": "RolloutPlan" }, "response": { "$ref": "Operation" @@ -35918,16 +37911,12 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - } - } - }, - "serviceAttachments": { - "methods": { - "aggregatedList": { - "description": "Retrieves the list of all ServiceAttachment resources,\nregional and global, available to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/serviceAttachments", + }, + "list": { + "description": "Lists RolloutPlans in a given project and location.", + "flatPath": "projects/{project}/global/rolloutPlans", "httpMethod": "GET", - "id": "compute.serviceAttachments.aggregatedList", + "id": "compute.rolloutPlans.list", "parameterOrder": [ "project" ], @@ -35937,11 +37926,6 @@ "location": "query", "type": "string" }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -35961,7 +37945,7 @@ "type": "string" }, "project": { - "description": "Name of the project scoping this request.", + "description": "Project ID for this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, @@ -35971,33 +37955,30 @@ "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" - }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/aggregated/serviceAttachments", + "path": "projects/{project}/global/rolloutPlans", "response": { - "$ref": "ServiceAttachmentAggregatedList" + "$ref": "RolloutPlansListResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "delete": { - "description": "Deletes the specified ServiceAttachment in the given scope", - "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", - "httpMethod": "DELETE", - "id": "compute.serviceAttachments.delete", + } + } + }, + "rollouts": { + "methods": { + "cancel": { + "description": "Cancels a Rollout.", + "flatPath": "projects/{project}/global/rollouts/{rollout}", + "httpMethod": "PATCH", + "id": "compute.rollouts.cancel", "parameterOrder": [ "project", - "region", - "serviceAttachment" + "rollout" ], "parameters": { "project": { @@ -36007,27 +37988,25 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region of this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "serviceAttachment": { - "description": "Name of the ServiceAttachment resource to delete.", + "rollback": { + "description": "Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel\nthe rollout without taking any further actions. Note that products must\nsupport at least one of these options, however, it does not need to support\nboth.", + "location": "query", + "type": "boolean" + }, + "rollout": { + "description": "Name of the Rollout resource to cancel.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "path": "projects/{project}/global/rollouts/{rollout}", "response": { "$ref": "Operation" }, @@ -36036,15 +38015,14 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified ServiceAttachment resource in the given scope.", - "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", - "httpMethod": "GET", - "id": "compute.serviceAttachments.get", + "delete": { + "description": "Deletes a Rollout.", + "flatPath": "projects/{project}/global/rollouts/{rollout}", + "httpMethod": "DELETE", + "id": "compute.rollouts.delete", "parameterOrder": [ "project", - "region", - "serviceAttachment" + "rollout" ], "parameters": { "project": { @@ -36054,53 +38032,38 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region of this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", "type": "string" }, - "serviceAttachment": { - "description": "Name of the ServiceAttachment resource to return.", + "rollout": { + "description": "Name of the Rollout resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - }, - "showNatIps": { - "description": "Indicates whether NAT IPs should be included in the response.", - "location": "query", - "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "path": "projects/{project}/global/rollouts/{rollout}", "response": { - "$ref": "ServiceAttachment" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", - "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{resource}/getIamPolicy", + "get": { + "description": "Gets details of a single project-scoped Rollout.", + "flatPath": "projects/{project}/global/rollouts/{rollout}", "httpMethod": "GET", - "id": "compute.serviceAttachments.getIamPolicy", + "id": "compute.rollouts.get", "parameterOrder": [ "project", - "region", - "resource" + "rollout" ], "parameters": { - "optionsRequestedPolicyVersion": { - "description": "Requested IAM Policy version.", - "format": "int32", - "location": "query", - "type": "integer" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -36108,24 +38071,17 @@ "required": true, "type": "string" }, - "region": { - "description": "The name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, - "resource": { - "description": "Name or id of the resource for this request.", + "rollout": { + "description": "Name of the persistent rollout to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/serviceAttachments/{resource}/getIamPolicy", + "path": "projects/{project}/global/rollouts/{rollout}", "response": { - "$ref": "Policy" + "$ref": "Rollout" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -36133,16 +38089,38 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "insert": { - "description": "Creates a ServiceAttachment in the specified project in the given scope\nusing the parameters that are included in the request.", - "flatPath": "projects/{project}/regions/{region}/serviceAttachments", - "httpMethod": "POST", - "id": "compute.serviceAttachments.insert", + "list": { + "description": "Lists Rollouts in a given project and location.", + "flatPath": "projects/{project}/global/rollouts", + "httpMethod": "GET", + "id": "compute.rollouts.list", "parameterOrder": [ - "project", - "region" + "project" ], "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -36150,39 +38128,33 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region of this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", - "type": "string" + "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/serviceAttachments", - "request": { - "$ref": "ServiceAttachment" - }, + "path": "projects/{project}/global/rollouts", "response": { - "$ref": "Operation" + "$ref": "RolloutsListResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] - }, - "list": { - "description": "Lists the ServiceAttachments for a project in the given scope.", - "flatPath": "projects/{project}/regions/{region}/serviceAttachments", + } + } + }, + "routers": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of routers.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/routers", "httpMethod": "GET", - "id": "compute.serviceAttachments.list", + "id": "compute.routers.aggregatedList", "parameterOrder": [ - "project", - "region" + "project" ], "parameters": { "filter": { @@ -36190,6 +38162,11 @@ "location": "query", "type": "string" }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -36215,22 +38192,21 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region of this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/serviceAttachments", + "path": "projects/{project}/aggregated/routers", "response": { - "$ref": "ServiceAttachmentList" + "$ref": "RouterAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -36238,15 +38214,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "patch": { - "description": "Patches the specified ServiceAttachment resource with the data included in\nthe request. This method supports PATCH\nsemantics and usesJSON merge\npatch format and processing rules.", - "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", - "httpMethod": "PATCH", - "id": "compute.serviceAttachments.patch", + "delete": { + "description": "Deletes the specified Router resource.", + "flatPath": "projects/{project}/regions/{region}/routers/{router}", + "httpMethod": "DELETE", + "id": "compute.routers.delete", "parameterOrder": [ "project", "region", - "serviceAttachment" + "router" ], "parameters": { "project": { @@ -36257,8 +38233,9 @@ "type": "string" }, "region": { - "description": "The region scoping this request and should conform to RFC1035.", + "description": "Name of the region for this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -36267,17 +38244,15 @@ "location": "query", "type": "string" }, - "serviceAttachment": { - "description": "The resource id of the ServiceAttachment to patch. It should conform to\nRFC1035 resource name or be a string form on an unsigned long number.", + "router": { + "description": "Name of the Router resource to delete.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", - "request": { - "$ref": "ServiceAttachment" - }, + "path": "projects/{project}/regions/{region}/routers/{router}", "response": { "$ref": "Operation" }, @@ -36286,17 +38261,22 @@ "https://www.googleapis.com/auth/compute" ] }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", - "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{resource}/setIamPolicy", + "deleteRoutePolicy": { + "description": "Deletes Route Policy", + "flatPath": "projects/{project}/regions/{region}/routers/{router}/deleteRoutePolicy", "httpMethod": "POST", - "id": "compute.serviceAttachments.setIamPolicy", + "id": "compute.routers.deleteRoutePolicy", "parameterOrder": [ "project", "region", - "resource" + "router" ], "parameters": { + "policy": { + "description": "The Policy name for this request. Name must conform to RFC1035", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -36305,41 +38285,43 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "router": { + "description": "Name of the Router resource where Route Policy is defined.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/serviceAttachments/{resource}/setIamPolicy", - "request": { - "$ref": "RegionSetPolicyRequest" - }, + "path": "projects/{project}/regions/{region}/routers/{router}/deleteRoutePolicy", "response": { - "$ref": "Policy" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.serviceAttachments.testIamPermissions", + "get": { + "description": "Returns the specified Router resource.", + "flatPath": "projects/{project}/regions/{region}/routers/{router}", + "httpMethod": "GET", + "id": "compute.routers.get", "parameterOrder": [ "project", "region", - "resource" + "router" ], "parameters": { "project": { @@ -36350,57 +38332,70 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "router": { + "description": "Name of the Router resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/serviceAttachments/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, + "path": "projects/{project}/regions/{region}/routers/{router}", "response": { - "$ref": "TestPermissionsResponse" + "$ref": "Router" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "snapshotSettings": { - "methods": { - "get": { - "description": "Get snapshot settings.", - "flatPath": "projects/{project}/global/snapshotSettings", + }, + "getNatIpInfo": { + "description": "Retrieves runtime NAT IP information.", + "flatPath": "projects/{project}/regions/{region}/routers/{router}/getNatIpInfo", "httpMethod": "GET", - "id": "compute.snapshotSettings.get", + "id": "compute.routers.getNatIpInfo", "parameterOrder": [ - "project" + "project", + "region", + "router" ], "parameters": { + "natName": { + "description": "Name of the nat service to filter the NAT IP information.\nIf it is omitted, all nats for this router will be returned.\nName should conform to RFC1035.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to query for Nat IP information. The name\nshould conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" } }, - "path": "projects/{project}/global/snapshotSettings", + "path": "projects/{project}/regions/{region}/routers/{router}/getNatIpInfo", "response": { - "$ref": "SnapshotSettings" + "$ref": "NatIpInfoResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -36408,60 +38403,45 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "patch": { - "description": "Patch snapshot settings.", - "flatPath": "projects/{project}/global/snapshotSettings", - "httpMethod": "PATCH", - "id": "compute.snapshotSettings.patch", + "getNatMappingInfo": { + "description": "Retrieves runtime Nat mapping information of VM endpoints.", + "flatPath": "projects/{project}/regions/{region}/routers/{router}/getNatMappingInfo", + "httpMethod": "GET", + "id": "compute.routers.getNatMappingInfo", "parameterOrder": [ - "project" + "project", + "region", + "router" ], "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "natName": { + "description": "Name of the nat service to filter the Nat Mapping information.\nIf it is omitted, all nats for this router will be returned.\nName should conform to RFC1035.", "location": "query", "type": "string" }, - "updateMask": { - "description": "update_mask indicates fields to be updated as part of this request.", - "format": "google-fieldmask", + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", "location": "query", "type": "string" - } - }, - "path": "projects/{project}/global/snapshotSettings", - "request": { - "$ref": "SnapshotSettings" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "snapshots": { - "methods": { - "delete": { - "description": "Deletes the specified Snapshot resource. Keep in mind that deleting\na single snapshot might not necessarily delete all the data on that\nsnapshot. If any data on the snapshot that is marked for deletion is\nneeded for subsequent snapshots, the data will be moved to the next\ncorresponding snapshot.\n\nFor more information, seeDeleting\nsnapshots.", - "flatPath": "projects/{project}/global/snapshots/{snapshot}", - "httpMethod": "DELETE", - "id": "compute.snapshots.delete", - "parameterOrder": [ - "project", - "snapshot" - ], - "parameters": { + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -36469,38 +38449,52 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" }, - "snapshot": { - "description": "Name of the Snapshot resource to delete.", + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "router": { + "description": "Name of the Router resource to query for Nat Mapping information of\nVM endpoints.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/snapshots/{snapshot}", + "path": "projects/{project}/regions/{region}/routers/{router}/getNatMappingInfo", "response": { - "$ref": "Operation" + "$ref": "VmEndpointNatMappingsList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "get": { - "description": "Returns the specified Snapshot resource.", - "flatPath": "projects/{project}/global/snapshots/{snapshot}", + "getRoutePolicy": { + "description": "Returns specified Route Policy", + "flatPath": "projects/{project}/regions/{region}/routers/{router}/getRoutePolicy", "httpMethod": "GET", - "id": "compute.snapshots.get", + "id": "compute.routers.getRoutePolicy", "parameterOrder": [ "project", - "snapshot" + "region", + "router" ], "parameters": { + "policy": { + "description": "The Policy name for this request. Name must conform to RFC1035", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -36508,17 +38502,23 @@ "required": true, "type": "string" }, - "snapshot": { - "description": "Name of the Snapshot resource to return.", + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to query for the route policy. The name should\nconform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/snapshots/{snapshot}", + "path": "projects/{project}/regions/{region}/routers/{router}/getRoutePolicy", "response": { - "$ref": "Snapshot" + "$ref": "RoutersGetRoutePolicyResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -36526,22 +38526,17 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", - "flatPath": "projects/{project}/global/snapshots/{resource}/getIamPolicy", + "getRouterStatus": { + "description": "Retrieves runtime information of the specified router.", + "flatPath": "projects/{project}/regions/{region}/routers/{router}/getRouterStatus", "httpMethod": "GET", - "id": "compute.snapshots.getIamPolicy", + "id": "compute.routers.getRouterStatus", "parameterOrder": [ "project", - "resource" + "region", + "router" ], "parameters": { - "optionsRequestedPolicyVersion": { - "description": "Requested IAM Policy version.", - "format": "int32", - "location": "query", - "type": "integer" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -36549,17 +38544,24 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "region": { + "description": "Name of the region for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to query.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/snapshots/{resource}/getIamPolicy", + "path": "projects/{project}/regions/{region}/routers/{router}/getRouterStatus", "response": { - "$ref": "Policy" + "$ref": "RouterStatusResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -36568,12 +38570,13 @@ ] }, "insert": { - "description": "Creates a snapshot in the specified project using the data included\nin the request. For regular snapshot creation, consider using this method\ninstead of disks.createSnapshot,\nas this method supports more features, such as creating snapshots in a\nproject different from the source disk project.", - "flatPath": "projects/{project}/global/snapshots", + "description": "Creates a Router resource in the specified project and region using\nthe data included in the request.", + "flatPath": "projects/{project}/regions/{region}/routers", "httpMethod": "POST", - "id": "compute.snapshots.insert", + "id": "compute.routers.insert", "parameterOrder": [ - "project" + "project", + "region" ], "parameters": { "project": { @@ -36583,15 +38586,22 @@ "required": true, "type": "string" }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" } }, - "path": "projects/{project}/global/snapshots", + "path": "projects/{project}/regions/{region}/routers", "request": { - "$ref": "Snapshot" + "$ref": "Router" }, "response": { "$ref": "Operation" @@ -36602,12 +38612,13 @@ ] }, "list": { - "description": "Retrieves the list of Snapshot resources contained within\nthe specified project.", - "flatPath": "projects/{project}/global/snapshots", + "description": "Retrieves a list of Router resources available to the specified project.", + "flatPath": "projects/{project}/regions/{region}/routers", "httpMethod": "GET", - "id": "compute.snapshots.list", + "id": "compute.routers.list", "parameterOrder": [ - "project" + "project", + "region" ], "parameters": { "filter": { @@ -36640,15 +38651,22 @@ "required": true, "type": "string" }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" } }, - "path": "projects/{project}/global/snapshots", + "path": "projects/{project}/regions/{region}/routers", "response": { - "$ref": "SnapshotList" + "$ref": "RouterList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -36656,53 +38674,72 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", - "flatPath": "projects/{project}/global/snapshots/{resource}/setIamPolicy", - "httpMethod": "POST", - "id": "compute.snapshots.setIamPolicy", + "listBgpRoutes": { + "description": "Retrieves a list of router bgp routes available to the specified project.", + "flatPath": "projects/{project}/regions/{region}/routers/{router}/listBgpRoutes", + "httpMethod": "GET", + "id": "compute.routers.listBgpRoutes", "parameterOrder": [ "project", - "resource" + "region", + "router" ], "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, + "addressFamily": { + "default": "UNSPECIFIED_IP_VERSION", + "description": "(Required) limit results to this address family (either IPv4 or IPv6)", + "enum": [ + "IPV4", + "IPV6", + "UNSPECIFIED_IP_VERSION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + "destinationPrefix": { + "description": "Limit results to destinations that are subnets of this CIDR range", + "location": "query", "type": "string" - } - }, - "path": "projects/{project}/global/snapshots/{resource}/setIamPolicy", - "request": { - "$ref": "GlobalSetPolicyRequest" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setLabels": { - "description": "Sets the labels on a snapshot. To learn more about labels, read theLabeling\nResources documentation.", - "flatPath": "projects/{project}/global/snapshots/{resource}/setLabels", - "httpMethod": "POST", - "id": "compute.snapshots.setLabels", - "parameterOrder": [ - "project", - "resource" - ], - "parameters": { + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "peer": { + "description": "(Required) limit results to the BGP peer with the given name.\nName should conform to RFC1035.", + "location": "query", + "type": "string" + }, + "policyApplied": { + "default": "true", + "description": "When true, the method returns post-policy routes. Otherwise, it returns\npre-policy routes.", + "location": "query", + "type": "boolean" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -36710,75 +38747,61 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "region": { + "description": "Name of the region for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" - } - }, - "path": "projects/{project}/global/snapshots/{resource}/setLabels", - "request": { - "$ref": "GlobalSetLabelsRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/global/snapshots/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.snapshots.testIamPermissions", - "parameterOrder": [ - "project", - "resource" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "routeType": { + "default": "UNSPECIFIED_ROUTE_TYPE", + "description": "(Required) limit results to this type of route (either LEARNED or\nADVERTISED)", + "enum": [ + "ADVERTISED", + "LEARNED", + "UNSPECIFIED_ROUTE_TYPE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "location": "query", "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "router": { + "description": "Name or id of the resource for this request.\nName should conform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/snapshots/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, + "path": "projects/{project}/regions/{region}/routers/{router}/listBgpRoutes", "response": { - "$ref": "TestPermissionsResponse" + "$ref": "RoutersListBgpRoutes" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "sslCertificates": { - "methods": { - "aggregatedList": { - "description": "Retrieves the list of all SslCertificate resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/sslCertificates", + }, + "listRoutePolicies": { + "description": "Retrieves a list of router route policy subresources available to the\nspecified project.", + "flatPath": "projects/{project}/regions/{region}/routers/{router}/listRoutePolicies", "httpMethod": "GET", - "id": "compute.sslCertificates.aggregatedList", + "id": "compute.routers.listRoutePolicies", "parameterOrder": [ - "project" + "project", + "region", + "router" ], "parameters": { "filter": { @@ -36786,11 +38809,6 @@ "location": "query", "type": "string" }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -36810,27 +38828,35 @@ "type": "string" }, "project": { - "description": "Name of the project scoping this request.", + "description": "Project ID for this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", + "router": { + "description": "Name or id of the resource for this request.\nName should conform to RFC1035.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" } }, - "path": "projects/{project}/aggregated/sslCertificates", + "path": "projects/{project}/regions/{region}/routers/{router}/listRoutePolicies", "response": { - "$ref": "SslCertificateAggregatedList" + "$ref": "RoutersListRoutePolicies" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -36838,14 +38864,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "delete": { - "description": "Deletes the specified SslCertificate resource.", - "flatPath": "projects/{project}/global/sslCertificates/{sslCertificate}", - "httpMethod": "DELETE", - "id": "compute.sslCertificates.delete", + "patch": { + "description": "Patches the specified Router resource with the data included in the\nrequest. This method supportsPATCH\nsemantics and usesJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/regions/{region}/routers/{router}", + "httpMethod": "PATCH", + "id": "compute.routers.patch", "parameterOrder": [ "project", - "sslCertificate" + "region", + "router" ], "parameters": { "project": { @@ -36855,20 +38882,30 @@ "required": true, "type": "string" }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "sslCertificate": { - "description": "Name of the SslCertificate resource to delete.", + "router": { + "description": "Name of the Router resource to patch.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/sslCertificates/{sslCertificate}", + "path": "projects/{project}/regions/{region}/routers/{router}", + "request": { + "$ref": "Router" + }, "response": { "$ref": "Operation" }, @@ -36877,14 +38914,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified SslCertificate resource.", - "flatPath": "projects/{project}/global/sslCertificates/{sslCertificate}", - "httpMethod": "GET", - "id": "compute.sslCertificates.get", + "patchRoutePolicy": { + "description": "Patches Route Policy", + "flatPath": "projects/{project}/regions/{region}/routers/{router}/patchRoutePolicy", + "httpMethod": "POST", + "id": "compute.routers.patchRoutePolicy", "parameterOrder": [ "project", - "sslCertificate" + "region", + "router" ], "parameters": { "project": { @@ -36894,31 +38932,47 @@ "required": true, "type": "string" }, - "sslCertificate": { - "description": "Name of the SslCertificate resource to return.", + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "router": { + "description": "Name of the Router resource where Route Policy is defined.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/sslCertificates/{sslCertificate}", + "path": "projects/{project}/regions/{region}/routers/{router}/patchRoutePolicy", + "request": { + "$ref": "RoutePolicy" + }, "response": { - "$ref": "SslCertificate" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "insert": { - "description": "Creates a SslCertificate resource in the specified project using the data\nincluded in the request.", - "flatPath": "projects/{project}/global/sslCertificates", + "preview": { + "description": "Preview fields auto-generated during router create andupdate operations.\nCalling this method does NOT create or update the router.", + "flatPath": "projects/{project}/regions/{region}/routers/{router}/preview", "httpMethod": "POST", - "id": "compute.sslCertificates.insert", + "id": "compute.routers.preview", "parameterOrder": [ - "project" + "project", + "region", + "router" ], "parameters": { "project": { @@ -36928,157 +38982,146 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "router": { + "description": "Name of the Router resource to query.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" } }, - "path": "projects/{project}/global/sslCertificates", + "path": "projects/{project}/regions/{region}/routers/{router}/preview", "request": { - "$ref": "SslCertificate" + "$ref": "Router" }, "response": { - "$ref": "Operation" + "$ref": "RoutersPreviewResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "list": { - "description": "Retrieves the list of SslCertificate resources available to the specified\nproject.", - "flatPath": "projects/{project}/global/sslCertificates", - "httpMethod": "GET", - "id": "compute.sslCertificates.list", + "update": { + "description": "Updates the specified Router resource with the data included in the\nrequest. This method conforms toPUT semantics, which requests that the state of the\ntarget resource be created or replaced with the state defined by the\nrepresentation enclosed in the request message payload.", + "flatPath": "projects/{project}/regions/{region}/routers/{router}", + "httpMethod": "PUT", + "id": "compute.routers.update", "parameterOrder": [ - "project" + "project", + "region", + "router" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, "type": "string" }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "project": { - "description": "Project ID for this request.", + "router": { + "description": "Name of the Router resource to update.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" } }, - "path": "projects/{project}/global/sslCertificates", + "path": "projects/{project}/regions/{region}/routers/{router}", + "request": { + "$ref": "Router" + }, "response": { - "$ref": "SslCertificateList" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] - } - } - }, - "sslPolicies": { - "methods": { - "aggregatedList": { - "description": "Retrieves the list of all SslPolicy resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/sslPolicies", - "httpMethod": "GET", - "id": "compute.sslPolicies.aggregatedList", + }, + "updateRoutePolicy": { + "description": "Updates or creates new Route Policy", + "flatPath": "projects/{project}/regions/{region}/routers/{router}/updateRoutePolicy", + "httpMethod": "POST", + "id": "compute.routers.updateRoutePolicy", "parameterOrder": [ - "project" + "project", + "region", + "router" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, "type": "string" }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "project": { - "description": "Name of the project scoping this request.", + "router": { + "description": "Name of the Router resource where Route Policy is defined.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" - }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/aggregated/sslPolicies", + "path": "projects/{project}/regions/{region}/routers/{router}/updateRoutePolicy", + "request": { + "$ref": "RoutePolicy" + }, "response": { - "$ref": "SslPoliciesAggregatedList" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] - }, + } + } + }, + "routes": { + "methods": { "delete": { - "description": "Deletes the specified SSL policy. The SSL policy resource can be deleted\nonly if it is not in use by any TargetHttpsProxy or TargetSslProxy\nresources.", - "flatPath": "projects/{project}/global/sslPolicies/{sslPolicy}", + "description": "Deletes the specified Route resource.", + "flatPath": "projects/{project}/global/routes/{route}", "httpMethod": "DELETE", - "id": "compute.sslPolicies.delete", + "id": "compute.routes.delete", "parameterOrder": [ "project", - "sslPolicy" + "route" ], "parameters": { "project": { @@ -37093,14 +39136,15 @@ "location": "query", "type": "string" }, - "sslPolicy": { - "description": "Name of the SSL policy to delete. The name must be 1-63 characters long,\nand comply with RFC1035.", + "route": { + "description": "Name of the Route resource to delete.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/sslPolicies/{sslPolicy}", + "path": "projects/{project}/global/routes/{route}", "response": { "$ref": "Operation" }, @@ -37110,13 +39154,13 @@ ] }, "get": { - "description": "Lists all of the ordered rules present in a single specified policy.", - "flatPath": "projects/{project}/global/sslPolicies/{sslPolicy}", + "description": "Returns the specified Route resource.", + "flatPath": "projects/{project}/global/routes/{route}", "httpMethod": "GET", - "id": "compute.sslPolicies.get", + "id": "compute.routes.get", "parameterOrder": [ "project", - "sslPolicy" + "route" ], "parameters": { "project": { @@ -37126,16 +39170,17 @@ "required": true, "type": "string" }, - "sslPolicy": { - "description": "Name of the SSL policy to update. The name must be 1-63 characters long,\nand comply with RFC1035.", + "route": { + "description": "Name of the Route resource to return.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/sslPolicies/{sslPolicy}", + "path": "projects/{project}/global/routes/{route}", "response": { - "$ref": "SslPolicy" + "$ref": "Route" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -37144,10 +39189,10 @@ ] }, "insert": { - "description": "Returns the specified SSL policy resource.", - "flatPath": "projects/{project}/global/sslPolicies", + "description": "Creates a Route resource in the specified project using the data included\nin the request.", + "flatPath": "projects/{project}/global/routes", "httpMethod": "POST", - "id": "compute.sslPolicies.insert", + "id": "compute.routes.insert", "parameterOrder": [ "project" ], @@ -37165,9 +39210,9 @@ "type": "string" } }, - "path": "projects/{project}/global/sslPolicies", + "path": "projects/{project}/global/routes", "request": { - "$ref": "SslPolicy" + "$ref": "Route" }, "response": { "$ref": "Operation" @@ -37178,10 +39223,10 @@ ] }, "list": { - "description": "Lists all the SSL policies that have been configured for the specified\nproject.", - "flatPath": "projects/{project}/global/sslPolicies", + "description": "Retrieves the list of Route resources available to the specified project.", + "flatPath": "projects/{project}/global/routes", "httpMethod": "GET", - "id": "compute.sslPolicies.list", + "id": "compute.routes.list", "parameterOrder": [ "project" ], @@ -37222,9 +39267,9 @@ "type": "boolean" } }, - "path": "projects/{project}/global/sslPolicies", + "path": "projects/{project}/global/routes", "response": { - "$ref": "SslPoliciesList" + "$ref": "RouteList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -37232,38 +39277,16 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "listAvailableFeatures": { - "description": "Lists all features that can be specified in the SSL policy when using\ncustom profile.", - "flatPath": "projects/{project}/global/sslPolicies/listAvailableFeatures", - "httpMethod": "GET", - "id": "compute.sslPolicies.listAvailableFeatures", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/global/routes/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.routes.testIamPermissions", "parameterOrder": [ - "project" + "project", + "resource" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -37271,30 +39294,39 @@ "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" } }, - "path": "projects/{project}/global/sslPolicies/listAvailableFeatures", + "path": "projects/{project}/global/routes/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, "response": { - "$ref": "SslPoliciesListAvailableFeaturesResponse" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "patch": { - "description": "Patches the specified SSL policy with the data included in the request.", - "flatPath": "projects/{project}/global/sslPolicies/{sslPolicy}", - "httpMethod": "PATCH", - "id": "compute.sslPolicies.patch", + } + } + }, + "securityPolicies": { + "methods": { + "addRule": { + "description": "Inserts a rule into a security policy.", + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}/addRule", + "httpMethod": "POST", + "id": "compute.securityPolicies.addRule", "parameterOrder": [ "project", - "sslPolicy" + "securityPolicy" ], "parameters": { "project": { @@ -37304,21 +39336,22 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "sslPolicy": { - "description": "Name of the SSL policy to update. The name must be 1-63 characters long,\nand comply with RFC1035.", + "securityPolicy": { + "description": "Name of the security policy to update.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "validateOnly": { + "description": "If true, the request will not be committed.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/global/sslPolicies/{sslPolicy}", + "path": "projects/{project}/global/securityPolicies/{securityPolicy}/addRule", "request": { - "$ref": "SslPolicy" + "$ref": "SecurityPolicyRule" }, "response": { "$ref": "Operation" @@ -37327,16 +39360,12 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - } - } - }, - "storagePoolTypes": { - "methods": { + }, "aggregatedList": { - "description": "Retrieves an aggregated list of storage pool types.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/storagePoolTypes", + "description": "Retrieves the list of all SecurityPolicy resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/securityPolicies", "httpMethod": "GET", - "id": "compute.storagePoolTypes.aggregatedList", + "id": "compute.securityPolicies.aggregatedList", "parameterOrder": [ "project" ], @@ -37370,7 +39399,7 @@ "type": "string" }, "project": { - "description": "Project ID for this request.", + "description": "Name of the project scoping this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, @@ -37388,9 +39417,9 @@ "type": "string" } }, - "path": "projects/{project}/aggregated/storagePoolTypes", + "path": "projects/{project}/aggregated/securityPolicies", "response": { - "$ref": "StoragePoolTypeAggregatedList" + "$ref": "SecurityPoliciesAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -37398,15 +39427,53 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "delete": { + "description": "Deletes the specified policy.", + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}", + "httpMethod": "DELETE", + "id": "compute.securityPolicies.delete", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "securityPolicy": { + "description": "Name of the security policy to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/securityPolicies/{securityPolicy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "get": { - "description": "Returns the specified storage pool type.", - "flatPath": "projects/{project}/zones/{zone}/storagePoolTypes/{storagePoolType}", + "description": "List all of the ordered rules present in a single specified policy.", + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}", "httpMethod": "GET", - "id": "compute.storagePoolTypes.get", + "id": "compute.securityPolicies.get", "parameterOrder": [ "project", - "zone", - "storagePoolType" + "securityPolicy" ], "parameters": { "project": { @@ -37416,24 +39483,58 @@ "required": true, "type": "string" }, - "storagePoolType": { - "description": "Name of the storage pool type to return.", + "securityPolicy": { + "description": "Name of the security policy to get.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + } + }, + "path": "projects/{project}/global/securityPolicies/{securityPolicy}", + "response": { + "$ref": "SecurityPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getRule": { + "description": "Gets a rule at the specified priority.", + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}/getRule", + "httpMethod": "GET", + "id": "compute.securityPolicies.getRule", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "priority": { + "description": "The priority of the rule to get from the security policy.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" }, - "zone": { - "description": "The name of the zone for this request.", + "securityPolicy": { + "description": "Name of the security policy to which the queried rule belongs.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/storagePoolTypes/{storagePoolType}", + "path": "projects/{project}/global/securityPolicies/{securityPolicy}/getRule", "response": { - "$ref": "StoragePoolType" + "$ref": "SecurityPolicyRule" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -37441,14 +39542,52 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "insert": { + "description": "Creates a new policy in the specified project using the data included in\nthe request.", + "flatPath": "projects/{project}/global/securityPolicies", + "httpMethod": "POST", + "id": "compute.securityPolicies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If true, the request will not be committed.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/securityPolicies", + "request": { + "$ref": "SecurityPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "list": { - "description": "Retrieves a list of storage pool types available to the specified\nproject.", - "flatPath": "projects/{project}/zones/{zone}/storagePoolTypes", + "description": "List all the policies that have been configured for the specified project.", + "flatPath": "projects/{project}/global/securityPolicies", "httpMethod": "GET", - "id": "compute.storagePoolTypes.list", + "id": "compute.securityPolicies.list", "parameterOrder": [ - "project", - "zone" + "project" ], "parameters": { "filter": { @@ -37485,34 +39624,23 @@ "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" - }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" } }, - "path": "projects/{project}/zones/{zone}/storagePoolTypes", + "path": "projects/{project}/global/securityPolicies", "response": { - "$ref": "StoragePoolTypeList" + "$ref": "SecurityPolicyList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "storagePools": { - "methods": { - "aggregatedList": { - "description": "Retrieves an aggregated list of storage pools.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/storagePools", + }, + "listPreconfiguredExpressionSets": { + "description": "Gets the current list of preconfigured Web Application Firewall (WAF)\nexpressions.", + "flatPath": "projects/{project}/global/securityPolicies/listPreconfiguredExpressionSets", "httpMethod": "GET", - "id": "compute.storagePools.aggregatedList", + "id": "compute.securityPolicies.listPreconfiguredExpressionSets", "parameterOrder": [ "project" ], @@ -37522,11 +39650,6 @@ "location": "query", "type": "string" }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -37556,17 +39679,11 @@ "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" - }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/aggregated/storagePools", + "path": "projects/{project}/global/securityPolicies/listPreconfiguredExpressionSets", "response": { - "$ref": "StoragePoolAggregatedList" + "$ref": "SecurityPoliciesListPreconfiguredExpressionSetsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -37574,15 +39691,14 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "delete": { - "description": "Deletes the specified storage pool. Deleting a storagePool\nremoves its data permanently and is irreversible. However, deleting a\nstoragePool does not delete any snapshots previously\nmade from the storagePool. You must separately delete\nsnapshots.", - "flatPath": "projects/{project}/zones/{zone}/storagePools/{storagePool}", - "httpMethod": "DELETE", - "id": "compute.storagePools.delete", + "patch": { + "description": "Patches the specified policy with the data included in the request. To\nclear fields in the policy, leave the fields empty and specify them in the\nupdateMask. This cannot be used to be update the rules in the policy.\nPlease use the per rule methods like addRule, patchRule, and removeRule\ninstead.", + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}", + "httpMethod": "PATCH", + "id": "compute.securityPolicies.patch", "parameterOrder": [ "project", - "zone", - "storagePool" + "securityPolicy" ], "parameters": { "project": { @@ -37597,22 +39713,24 @@ "location": "query", "type": "string" }, - "storagePool": { - "description": "Name of the storage pool to delete.", + "securityPolicy": { + "description": "Name of the security policy to update.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, + "updateMask": { + "description": "Indicates fields to be cleared as part of this request.", + "format": "google-fieldmask", + "location": "query", "type": "string" } }, - "path": "projects/{project}/zones/{zone}/storagePools/{storagePool}", + "path": "projects/{project}/global/securityPolicies/{securityPolicy}", + "request": { + "$ref": "SecurityPolicy" + }, "response": { "$ref": "Operation" }, @@ -37621,17 +39739,22 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns a specified storage pool. Gets a list of available\nstorage pools by making a list() request.", - "flatPath": "projects/{project}/zones/{zone}/storagePools/{storagePool}", - "httpMethod": "GET", - "id": "compute.storagePools.get", + "patchRule": { + "description": "Patches a rule at the specified priority. To clear fields in the rule,\nleave the fields empty and specify them in the updateMask.", + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}/patchRule", + "httpMethod": "POST", + "id": "compute.securityPolicies.patchRule", "parameterOrder": [ "project", - "zone", - "storagePool" + "securityPolicy" ], "parameters": { + "priority": { + "description": "The priority of the rule to patch.", + "format": "int32", + "location": "query", + "type": "integer" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -37639,44 +39762,49 @@ "required": true, "type": "string" }, - "storagePool": { - "description": "Name of the storage pool to return.", + "securityPolicy": { + "description": "Name of the security policy to update.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, + "updateMask": { + "description": "Indicates fields to be cleared as part of this request.", + "format": "google-fieldmask", + "location": "query", "type": "string" + }, + "validateOnly": { + "description": "If true, the request will not be committed.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/zones/{zone}/storagePools/{storagePool}", + "path": "projects/{project}/global/securityPolicies/{securityPolicy}/patchRule", + "request": { + "$ref": "SecurityPolicyRule" + }, "response": { - "$ref": "StoragePool" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "getIamPolicy": { - "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", - "flatPath": "projects/{project}/zones/{zone}/storagePools/{resource}/getIamPolicy", - "httpMethod": "GET", - "id": "compute.storagePools.getIamPolicy", + "removeRule": { + "description": "Deletes a rule at the specified priority.", + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}/removeRule", + "httpMethod": "POST", + "id": "compute.securityPolicies.removeRule", "parameterOrder": [ "project", - "zone", - "resource" + "securityPolicy" ], "parameters": { - "optionsRequestedPolicyVersion": { - "description": "Requested IAM Policy version.", + "priority": { + "description": "The priority of the rule to remove from the security policy.", "format": "int32", "location": "query", "type": "integer" @@ -37688,39 +39816,31 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "securityPolicy": { + "description": "Name of the security policy to update.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" } }, - "path": "projects/{project}/zones/{zone}/storagePools/{resource}/getIamPolicy", + "path": "projects/{project}/global/securityPolicies/{securityPolicy}/removeRule", "response": { - "$ref": "Policy" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "insert": { - "description": "Creates a storage pool in the specified project using the data\nin the request.", - "flatPath": "projects/{project}/zones/{zone}/storagePools", + "setLabels": { + "description": "Sets the labels on a security policy. To learn more about labels,\nread the Labeling Resources\ndocumentation.", + "flatPath": "projects/{project}/global/securityPolicies/{resource}/setLabels", "httpMethod": "POST", - "id": "compute.storagePools.insert", + "id": "compute.securityPolicies.setLabels", "parameterOrder": [ "project", - "zone" + "resource" ], "parameters": { "project": { @@ -37730,22 +39850,17 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "zone": { - "description": "The name of the zone for this request.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/storagePools", + "path": "projects/{project}/global/securityPolicies/{resource}/setLabels", "request": { - "$ref": "StoragePool" + "$ref": "GlobalSetLabelsRequest" }, "response": { "$ref": "Operation" @@ -37754,15 +39869,18 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "list": { - "description": "Retrieves a list of storage pools contained within\nthe specified zone.", - "flatPath": "projects/{project}/zones/{zone}/storagePools", + } + } + }, + "serviceAttachments": { + "methods": { + "aggregatedList": { + "description": "Retrieves the list of all ServiceAttachment resources,\nregional and global, available to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/serviceAttachments", "httpMethod": "GET", - "id": "compute.storagePools.list", + "id": "compute.serviceAttachments.aggregatedList", "parameterOrder": [ - "project", - "zone" + "project" ], "parameters": { "filter": { @@ -37770,6 +39888,11 @@ "location": "query", "type": "string" }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -37789,7 +39912,7 @@ "type": "string" }, "project": { - "description": "Project ID for this request.", + "description": "Name of the project scoping this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, @@ -37800,17 +39923,16 @@ "location": "query", "type": "boolean" }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", "type": "string" } }, - "path": "projects/{project}/zones/{zone}/storagePools", + "path": "projects/{project}/aggregated/serviceAttachments", "response": { - "$ref": "StoragePoolList" + "$ref": "ServiceAttachmentAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -37818,40 +39940,17 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "listDisks": { - "description": "Lists the disks in a specified storage pool.", - "flatPath": "projects/{project}/zones/{zone}/storagePools/{storagePool}/listDisks", - "httpMethod": "GET", - "id": "compute.storagePools.listDisks", + "delete": { + "description": "Deletes the specified ServiceAttachment in the given scope", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "httpMethod": "DELETE", + "id": "compute.serviceAttachments.delete", "parameterOrder": [ "project", - "zone", - "storagePool" + "region", + "serviceAttachment" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -37859,45 +39958,44 @@ "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "region": { + "description": "Name of the region of this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", - "type": "boolean" + "type": "string" }, - "storagePool": { - "description": "Name of the storage pool to list disks of.", + "serviceAttachment": { + "description": "Name of the ServiceAttachment resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" } }, - "path": "projects/{project}/zones/{zone}/storagePools/{storagePool}/listDisks", + "path": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", "response": { - "$ref": "StoragePoolListDisks" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", - "flatPath": "projects/{project}/zones/{zone}/storagePools/{resource}/setIamPolicy", - "httpMethod": "POST", - "id": "compute.storagePools.setIamPolicy", + "get": { + "description": "Returns the specified ServiceAttachment resource in the given scope.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "httpMethod": "GET", + "id": "compute.serviceAttachments.get", "parameterOrder": [ "project", - "zone", - "resource" + "region", + "serviceAttachment" ], "parameters": { "project": { @@ -37907,44 +40005,53 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "region": { + "description": "Name of the region of this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "zone": { - "description": "The name of the zone for this request.", + "serviceAttachment": { + "description": "Name of the ServiceAttachment resource to return.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "showNatIps": { + "description": "Indicates whether NAT IPs should be included in the response.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/zones/{zone}/storagePools/{resource}/setIamPolicy", - "request": { - "$ref": "ZoneSetPolicyRequest" - }, + "path": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", "response": { - "$ref": "Policy" + "$ref": "ServiceAttachment" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/zones/{zone}/storagePools/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.storagePools.testIamPermissions", + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.serviceAttachments.getIamPolicy", "parameterOrder": [ "project", - "zone", + "region", "resource" ], "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -37952,27 +40059,24 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "region": { + "description": "The name of the region for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "zone": { - "description": "The name of the zone for this request.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/storagePools/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, + "path": "projects/{project}/regions/{region}/serviceAttachments/{resource}/getIamPolicy", "response": { - "$ref": "TestPermissionsResponse" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -37980,15 +40084,14 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "update": { - "description": "Updates the specified storagePool with the data included in the request.\nThe update is performed only on selected fields included as part\nof update-mask. Only the following fields can be modified:\npool_provisioned_capacity_gb, pool_provisioned_iops and\npool_provisioned_throughput.", - "flatPath": "projects/{project}/zones/{zone}/storagePools/{storagePool}", - "httpMethod": "PATCH", - "id": "compute.storagePools.update", + "insert": { + "description": "Creates a ServiceAttachment in the specified project in the given scope\nusing the parameters that are included in the request.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments", + "httpMethod": "POST", + "id": "compute.serviceAttachments.insert", "parameterOrder": [ "project", - "zone", - "storagePool" + "region" ], "parameters": { "project": { @@ -37998,35 +40101,22 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "storagePool": { - "description": "The storagePool name for this request.", + "region": { + "description": "Name of the region of this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "updateMask": { - "description": "update_mask indicates fields to be updated as part of this request.", - "format": "google-fieldmask", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" - }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" } }, - "path": "projects/{project}/zones/{zone}/storagePools/{storagePool}", + "path": "projects/{project}/regions/{region}/serviceAttachments", "request": { - "$ref": "StoragePool" + "$ref": "ServiceAttachment" }, "response": { "$ref": "Operation" @@ -38035,18 +40125,15 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - } - } - }, - "subnetworks": { - "methods": { - "aggregatedList": { - "description": "Retrieves an aggregated list of subnetworks.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/subnetworks", + }, + "list": { + "description": "Lists the ServiceAttachments for a project in the given scope.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments", "httpMethod": "GET", - "id": "compute.subnetworks.aggregatedList", + "id": "compute.serviceAttachments.list", "parameterOrder": [ - "project" + "project", + "region" ], "parameters": { "filter": { @@ -38054,11 +40141,6 @@ "location": "query", "type": "string" }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -38084,35 +40166,22 @@ "required": true, "type": "string" }, + "region": { + "description": "Name of the region of this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" - }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", - "type": "string" - }, - "views": { - "description": "Defines the extra views returned back in the subnetwork resource.\nSupported values:\n \n - WITH_UTILIZATION: Utilization data is included in the\n response.", - "enum": [ - "DEFAULT", - "WITH_UTILIZATION" - ], - "enumDescriptions": [ - "", - "Utilization data is included in the response." - ], - "location": "query", - "repeated": true, - "type": "string" } }, - "path": "projects/{project}/aggregated/subnetworks", + "path": "projects/{project}/regions/{region}/serviceAttachments", "response": { - "$ref": "SubnetworkAggregatedList" + "$ref": "ServiceAttachmentList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -38120,15 +40189,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "delete": { - "description": "Deletes the specified subnetwork.", - "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", - "httpMethod": "DELETE", - "id": "compute.subnetworks.delete", + "patch": { + "description": "Patches the specified ServiceAttachment resource with the data included in\nthe request. This method supports PATCH\nsemantics and usesJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "httpMethod": "PATCH", + "id": "compute.serviceAttachments.patch", "parameterOrder": [ "project", "region", - "subnetwork" + "serviceAttachment" ], "parameters": { "project": { @@ -38139,9 +40208,8 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The region scoping this request and should conform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, @@ -38150,15 +40218,17 @@ "location": "query", "type": "string" }, - "subnetwork": { - "description": "Name of the Subnetwork resource to delete.", + "serviceAttachment": { + "description": "The resource id of the ServiceAttachment to patch. It should conform to\nRFC1035 resource name or be a string form on an unsigned long number.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "path": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "request": { + "$ref": "ServiceAttachment" + }, "response": { "$ref": "Operation" }, @@ -38167,15 +40237,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "expandIpCidrRange": { - "description": "Expands the IP CIDR range of the subnetwork to a specified value.", - "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{resource}/setIamPolicy", "httpMethod": "POST", - "id": "compute.subnetworks.expandIpCidrRange", + "id": "compute.serviceAttachments.setIamPolicy", "parameterOrder": [ "project", "region", - "subnetwork" + "resource" ], "parameters": { "project": { @@ -38186,46 +40256,41 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "subnetwork": { - "description": "Name of the Subnetwork resource to update.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", + "path": "projects/{project}/regions/{region}/serviceAttachments/{resource}/setIamPolicy", "request": { - "$ref": "SubnetworksExpandIpCidrRangeRequest" + "$ref": "RegionSetPolicyRequest" }, "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified subnetwork.", - "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", - "httpMethod": "GET", - "id": "compute.subnetworks.get", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.serviceAttachments.testIamPermissions", "parameterOrder": [ "project", "region", - "subnetwork" + "resource" ], "parameters": { "project": { @@ -38236,37 +40301,175 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "subnetwork": { - "description": "Name of the Subnetwork resource to return.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/serviceAttachments/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "snapshotSettings": { + "methods": { + "get": { + "description": "Get snapshot settings.", + "flatPath": "projects/{project}/global/snapshotSettings", + "httpMethod": "GET", + "id": "compute.snapshotSettings.get", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/snapshotSettings", + "response": { + "$ref": "SnapshotSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patch snapshot settings.", + "flatPath": "projects/{project}/global/snapshotSettings", + "httpMethod": "PATCH", + "id": "compute.snapshotSettings.patch", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" }, - "views": { - "description": "Defines the extra views returned back in the subnetwork resource.\nSupported values:\n \n - WITH_UTILIZATION: Utilization data is included in the\n response.", - "enum": [ - "DEFAULT", - "WITH_UTILIZATION" - ], - "enumDescriptions": [ - "", - "Utilization data is included in the response." - ], + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "update_mask indicates fields to be updated as part of this request.", + "format": "google-fieldmask", "location": "query", - "repeated": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "path": "projects/{project}/global/snapshotSettings", + "request": { + "$ref": "SnapshotSettings" + }, "response": { - "$ref": "Subnetwork" + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "snapshots": { + "methods": { + "delete": { + "description": "Deletes the specified Snapshot resource. Keep in mind that deleting\na single snapshot might not necessarily delete all the data on that\nsnapshot. If any data on the snapshot that is marked for deletion is\nneeded for subsequent snapshots, the data will be moved to the next\ncorresponding snapshot.\n\nFor more information, seeDeleting\nsnapshots.", + "flatPath": "projects/{project}/global/snapshots/{snapshot}", + "httpMethod": "DELETE", + "id": "compute.snapshots.delete", + "parameterOrder": [ + "project", + "snapshot" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "snapshot": { + "description": "Name of the Snapshot resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/snapshots/{snapshot}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified Snapshot resource.", + "flatPath": "projects/{project}/global/snapshots/{snapshot}", + "httpMethod": "GET", + "id": "compute.snapshots.get", + "parameterOrder": [ + "project", + "snapshot" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "snapshot": { + "description": "Name of the Snapshot resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/snapshots/{snapshot}", + "response": { + "$ref": "Snapshot" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -38276,12 +40479,11 @@ }, "getIamPolicy": { "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", - "flatPath": "projects/{project}/regions/{region}/subnetworks/{resource}/getIamPolicy", + "flatPath": "projects/{project}/global/snapshots/{resource}/getIamPolicy", "httpMethod": "GET", - "id": "compute.subnetworks.getIamPolicy", + "id": "compute.snapshots.getIamPolicy", "parameterOrder": [ "project", - "region", "resource" ], "parameters": { @@ -38298,22 +40500,15 @@ "required": true, "type": "string" }, - "region": { - "description": "The name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "resource": { "description": "Name or id of the resource for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/subnetworks/{resource}/getIamPolicy", + "path": "projects/{project}/global/snapshots/{resource}/getIamPolicy", "response": { "$ref": "Policy" }, @@ -38324,13 +40519,12 @@ ] }, "insert": { - "description": "Creates a subnetwork in the specified project using the data\nincluded in the request.", - "flatPath": "projects/{project}/regions/{region}/subnetworks", + "description": "Creates a snapshot in the specified project using the data included\nin the request. For regular snapshot creation, consider using this method\ninstead of disks.createSnapshot,\nas this method supports more features, such as creating snapshots in a\nproject different from the source disk project.", + "flatPath": "projects/{project}/global/snapshots", "httpMethod": "POST", - "id": "compute.subnetworks.insert", + "id": "compute.snapshots.insert", "parameterOrder": [ - "project", - "region" + "project" ], "parameters": { "project": { @@ -38340,22 +40534,15 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/subnetworks", + "path": "projects/{project}/global/snapshots", "request": { - "$ref": "Subnetwork" + "$ref": "Snapshot" }, "response": { "$ref": "Operation" @@ -38366,13 +40553,12 @@ ] }, "list": { - "description": "Retrieves a list of subnetworks available to the specified\nproject.", - "flatPath": "projects/{project}/regions/{region}/subnetworks", + "description": "Retrieves the list of Snapshot resources contained within\nthe specified project.", + "flatPath": "projects/{project}/global/snapshots", "httpMethod": "GET", - "id": "compute.subnetworks.list", + "id": "compute.snapshots.list", "parameterOrder": [ - "project", - "region" + "project" ], "parameters": { "filter": { @@ -38405,36 +40591,15 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" - }, - "views": { - "description": "Defines the extra views returned back in the subnetwork resource.\nSupported values:\n \n - WITH_UTILIZATION: Utilization data is included in the\n response.", - "enum": [ - "DEFAULT", - "WITH_UTILIZATION" - ], - "enumDescriptions": [ - "", - "Utilization data is included in the response." - ], - "location": "query", - "repeated": true, - "type": "string" } }, - "path": "projects/{project}/regions/{region}/subnetworks", + "path": "projects/{project}/global/snapshots", "response": { - "$ref": "SubnetworkList" + "$ref": "SnapshotList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -38442,83 +40607,53 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "listUsable": { - "description": "Retrieves an aggregated list of all usable subnetworks in the project.", - "flatPath": "projects/{project}/aggregated/subnetworks/listUsable", - "httpMethod": "GET", - "id": "compute.subnetworks.listUsable", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/global/snapshots/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.snapshots.setIamPolicy", "parameterOrder": [ - "project" + "project", + "resource" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, "type": "string" }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, - "project": { - "description": "Project ID for this request.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" - }, - "serviceProject": { - "description": "The project id or project number in which the subnetwork is intended to be\nused. Only applied for Shared VPC. See [Shared VPC\ndocumentation](https://cloud.google.com/vpc/docs/shared-vpc/)", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/aggregated/subnetworks/listUsable", + "path": "projects/{project}/global/snapshots/{resource}/setIamPolicy", + "request": { + "$ref": "GlobalSetPolicyRequest" + }, "response": { - "$ref": "UsableSubnetworksAggregatedList" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "patch": { - "description": "Patches the specified subnetwork with the data included in the request.\nOnly certain fields can be updated with a patch request\nas indicated in the field descriptions.\nYou must specify the current fingerprint of the\nsubnetwork resource being patched.", - "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", - "httpMethod": "PATCH", - "id": "compute.subnetworks.patch", + "setLabels": { + "description": "Sets the labels on a snapshot. To learn more about labels, read theLabeling\nResources documentation.", + "flatPath": "projects/{project}/global/snapshots/{resource}/setLabels", + "httpMethod": "POST", + "id": "compute.snapshots.setLabels", "parameterOrder": [ "project", - "region", - "subnetwork" + "resource" ], "parameters": { - "drainTimeoutSeconds": { - "description": "The drain timeout specifies the upper bound in seconds on the amount of\ntime allowed to drain connections from the current ACTIVE subnetwork\nto the current BACKUP subnetwork. The drain timeout is only applicable\nwhen the following conditions are true:\n - the subnetwork being patched has purpose = INTERNAL_HTTPS_LOAD_BALANCER\n - the subnetwork being patched has role = BACKUP\n - the patch request is setting the role to ACTIVE. Note that after this\n patch operation the roles of the ACTIVE and BACKUP subnetworks will be\n swapped.", - "format": "int32", - "location": "query", - "type": "integer" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -38526,29 +40661,17 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "subnetwork": { - "description": "Name of the Subnetwork resource to patch.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "path": "projects/{project}/global/snapshots/{resource}/setLabels", "request": { - "$ref": "Subnetwork" + "$ref": "GlobalSetLabelsRequest" }, "response": { "$ref": "Operation" @@ -38558,14 +40681,13 @@ "https://www.googleapis.com/auth/compute" ] }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", - "flatPath": "projects/{project}/regions/{region}/subnetworks/{resource}/setIamPolicy", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/global/snapshots/{resource}/testIamPermissions", "httpMethod": "POST", - "id": "compute.subnetworks.setIamPolicy", + "id": "compute.snapshots.testIamPermissions", "parameterOrder": [ "project", - "region", "resource" ], "parameters": { @@ -38576,42 +40698,35 @@ "required": true, "type": "string" }, - "region": { - "description": "The name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "resource": { "description": "Name or id of the resource for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/subnetworks/{resource}/setIamPolicy", + "path": "projects/{project}/global/snapshots/{resource}/testIamPermissions", "request": { - "$ref": "RegionSetPolicyRequest" + "$ref": "TestPermissionsRequest" }, "response": { - "$ref": "Policy" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "setPrivateIpGoogleAccess": { - "description": "Set whether VMs in this subnet can access Google services without assigning\nexternal IP addresses through Private Google Access.", - "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess", + "updateKmsKey": { + "description": "Rotates the customer-managed\nencryption key to the latest version for the specified snapshot.", + "flatPath": "projects/{project}/global/snapshots/{snapshot}/updateKmsKey", "httpMethod": "POST", - "id": "compute.subnetworks.setPrivateIpGoogleAccess", + "id": "compute.snapshots.updateKmsKey", "parameterOrder": [ "project", - "region", - "subnetwork" + "snapshot" ], "parameters": { "project": { @@ -38621,29 +40736,22 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "subnetwork": { - "description": "Name of the Subnetwork resource.", + "snapshot": { + "description": "Name of the snapshot resource to update. Should conform to RFC1035.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess", + "path": "projects/{project}/global/snapshots/{snapshot}/updateKmsKey", "request": { - "$ref": "SubnetworksSetPrivateIpGoogleAccessRequest" + "$ref": "SnapshotUpdateKmsKeyRequest" }, "response": { "$ref": "Operation" @@ -38652,65 +40760,85 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/regions/{region}/subnetworks/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.subnetworks.testIamPermissions", + } + } + }, + "sslCertificates": { + "methods": { + "aggregatedList": { + "description": "Retrieves the list of all SslCertificate resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/sslCertificates", + "httpMethod": "GET", + "id": "compute.sslCertificates.aggregatedList", "parameterOrder": [ - "project", - "region", - "resource" + "project" ], "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, "project": { - "description": "Project ID for this request.", + "description": "Name of the project scoping this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "region": { - "description": "The name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/subnetworks/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, + "path": "projects/{project}/aggregated/sslCertificates", "response": { - "$ref": "TestPermissionsResponse" + "$ref": "SslCertificateAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "targetGrpcProxies": { - "methods": { + }, "delete": { - "description": "Deletes the specified TargetGrpcProxy in the given scope", - "flatPath": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", + "description": "Deletes the specified SslCertificate resource.", + "flatPath": "projects/{project}/global/sslCertificates/{sslCertificate}", "httpMethod": "DELETE", - "id": "compute.targetGrpcProxies.delete", + "id": "compute.sslCertificates.delete", "parameterOrder": [ "project", - "targetGrpcProxy" + "sslCertificate" ], "parameters": { "project": { @@ -38725,15 +40853,15 @@ "location": "query", "type": "string" }, - "targetGrpcProxy": { - "description": "Name of the TargetGrpcProxy resource to delete.", + "sslCertificate": { + "description": "Name of the SslCertificate resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", + "path": "projects/{project}/global/sslCertificates/{sslCertificate}", "response": { "$ref": "Operation" }, @@ -38743,13 +40871,13 @@ ] }, "get": { - "description": "Returns the specified TargetGrpcProxy resource in the given scope.", - "flatPath": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", + "description": "Returns the specified SslCertificate resource.", + "flatPath": "projects/{project}/global/sslCertificates/{sslCertificate}", "httpMethod": "GET", - "id": "compute.targetGrpcProxies.get", + "id": "compute.sslCertificates.get", "parameterOrder": [ "project", - "targetGrpcProxy" + "sslCertificate" ], "parameters": { "project": { @@ -38759,17 +40887,17 @@ "required": true, "type": "string" }, - "targetGrpcProxy": { - "description": "Name of the TargetGrpcProxy resource to return.", + "sslCertificate": { + "description": "Name of the SslCertificate resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", + "path": "projects/{project}/global/sslCertificates/{sslCertificate}", "response": { - "$ref": "TargetGrpcProxy" + "$ref": "SslCertificate" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -38778,10 +40906,10 @@ ] }, "insert": { - "description": "Creates a TargetGrpcProxy in the specified project in the given scope\nusing the parameters that are included in the request.", - "flatPath": "projects/{project}/global/targetGrpcProxies", + "description": "Creates a SslCertificate resource in the specified project using the data\nincluded in the request.", + "flatPath": "projects/{project}/global/sslCertificates", "httpMethod": "POST", - "id": "compute.targetGrpcProxies.insert", + "id": "compute.sslCertificates.insert", "parameterOrder": [ "project" ], @@ -38799,9 +40927,9 @@ "type": "string" } }, - "path": "projects/{project}/global/targetGrpcProxies", + "path": "projects/{project}/global/sslCertificates", "request": { - "$ref": "TargetGrpcProxy" + "$ref": "SslCertificate" }, "response": { "$ref": "Operation" @@ -38812,10 +40940,10 @@ ] }, "list": { - "description": "Lists the TargetGrpcProxies for a project in the given scope.", - "flatPath": "projects/{project}/global/targetGrpcProxies", + "description": "Retrieves the list of SslCertificate resources available to the specified\nproject.", + "flatPath": "projects/{project}/global/sslCertificates", "httpMethod": "GET", - "id": "compute.targetGrpcProxies.list", + "id": "compute.sslCertificates.list", "parameterOrder": [ "project" ], @@ -38856,67 +40984,25 @@ "type": "boolean" } }, - "path": "projects/{project}/global/targetGrpcProxies", + "path": "projects/{project}/global/sslCertificates", "response": { - "$ref": "TargetGrpcProxyList" + "$ref": "SslCertificateList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "patch": { - "description": "Patches the specified TargetGrpcProxy resource with the data included in\nthe request. This method supports PATCH\nsemantics and usesJSON merge\npatch format and processing rules.", - "flatPath": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", - "httpMethod": "PATCH", - "id": "compute.targetGrpcProxies.patch", - "parameterOrder": [ - "project", - "targetGrpcProxy" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "targetGrpcProxy": { - "description": "Name of the TargetGrpcProxy resource to patch.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", - "request": { - "$ref": "TargetGrpcProxy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] } } }, - "targetHttpProxies": { + "sslPolicies": { "methods": { "aggregatedList": { - "description": "Retrieves the list of all TargetHttpProxy resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/targetHttpProxies", + "description": "Retrieves the list of all SslPolicy resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/sslPolicies", "httpMethod": "GET", - "id": "compute.targetHttpProxies.aggregatedList", + "id": "compute.sslPolicies.aggregatedList", "parameterOrder": [ "project" ], @@ -38968,9 +41054,9 @@ "type": "string" } }, - "path": "projects/{project}/aggregated/targetHttpProxies", + "path": "projects/{project}/aggregated/sslPolicies", "response": { - "$ref": "TargetHttpProxyAggregatedList" + "$ref": "SslPoliciesAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -38979,13 +41065,13 @@ ] }, "delete": { - "description": "Deletes the specified TargetHttpProxy resource.", - "flatPath": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", + "description": "Deletes the specified SSL policy. The SSL policy resource can be deleted\nonly if it is not in use by any TargetHttpsProxy or TargetSslProxy\nresources.", + "flatPath": "projects/{project}/global/sslPolicies/{sslPolicy}", "httpMethod": "DELETE", - "id": "compute.targetHttpProxies.delete", + "id": "compute.sslPolicies.delete", "parameterOrder": [ "project", - "targetHttpProxy" + "sslPolicy" ], "parameters": { "project": { @@ -39000,15 +41086,14 @@ "location": "query", "type": "string" }, - "targetHttpProxy": { - "description": "Name of the TargetHttpProxy resource to delete.", + "sslPolicy": { + "description": "Name of the SSL policy to delete. The name must be 1-63 characters long,\nand comply with RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", + "path": "projects/{project}/global/sslPolicies/{sslPolicy}", "response": { "$ref": "Operation" }, @@ -39018,13 +41103,13 @@ ] }, "get": { - "description": "Returns the specified TargetHttpProxy resource.", - "flatPath": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", + "description": "Lists all of the ordered rules present in a single specified policy.", + "flatPath": "projects/{project}/global/sslPolicies/{sslPolicy}", "httpMethod": "GET", - "id": "compute.targetHttpProxies.get", + "id": "compute.sslPolicies.get", "parameterOrder": [ "project", - "targetHttpProxy" + "sslPolicy" ], "parameters": { "project": { @@ -39034,17 +41119,16 @@ "required": true, "type": "string" }, - "targetHttpProxy": { - "description": "Name of the TargetHttpProxy resource to return.", + "sslPolicy": { + "description": "Name of the SSL policy to update. The name must be 1-63 characters long,\nand comply with RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", + "path": "projects/{project}/global/sslPolicies/{sslPolicy}", "response": { - "$ref": "TargetHttpProxy" + "$ref": "SslPolicy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -39053,10 +41137,10 @@ ] }, "insert": { - "description": "Creates a TargetHttpProxy resource in the specified\nproject using the data included in the request.", - "flatPath": "projects/{project}/global/targetHttpProxies", + "description": "Returns the specified SSL policy resource.", + "flatPath": "projects/{project}/global/sslPolicies", "httpMethod": "POST", - "id": "compute.targetHttpProxies.insert", + "id": "compute.sslPolicies.insert", "parameterOrder": [ "project" ], @@ -39074,9 +41158,9 @@ "type": "string" } }, - "path": "projects/{project}/global/targetHttpProxies", + "path": "projects/{project}/global/sslPolicies", "request": { - "$ref": "TargetHttpProxy" + "$ref": "SslPolicy" }, "response": { "$ref": "Operation" @@ -39087,10 +41171,10 @@ ] }, "list": { - "description": "Retrieves the list of TargetHttpProxy resources available\nto the specified project.", - "flatPath": "projects/{project}/global/targetHttpProxies", + "description": "Lists all the SSL policies that have been configured for the specified\nproject.", + "flatPath": "projects/{project}/global/sslPolicies", "httpMethod": "GET", - "id": "compute.targetHttpProxies.list", + "id": "compute.sslPolicies.list", "parameterOrder": [ "project" ], @@ -39131,9 +41215,9 @@ "type": "boolean" } }, - "path": "projects/{project}/global/targetHttpProxies", + "path": "projects/{project}/global/sslPolicies", "response": { - "$ref": "TargetHttpProxyList" + "$ref": "SslPoliciesList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -39141,56 +41225,69 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "patch": { - "description": "Patches the specified TargetHttpProxy resource with the data included in\nthe request. This method supports PATCH\nsemantics and usesJSON merge\npatch format and processing rules.", - "flatPath": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", - "httpMethod": "PATCH", - "id": "compute.targetHttpProxies.patch", + "listAvailableFeatures": { + "description": "Lists all features that can be specified in the SSL policy when using\ncustom profile.", + "flatPath": "projects/{project}/global/sslPolicies/listAvailableFeatures", + "httpMethod": "GET", + "id": "compute.sslPolicies.listAvailableFeatures", "parameterOrder": [ - "project", - "targetHttpProxy" + "project" ], "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", "location": "query", "type": "string" }, - "targetHttpProxy": { - "description": "Name of the TargetHttpProxy resource to patch.", + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" } }, - "path": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", - "request": { - "$ref": "TargetHttpProxy" - }, + "path": "projects/{project}/global/sslPolicies/listAvailableFeatures", "response": { - "$ref": "Operation" + "$ref": "SslPoliciesListAvailableFeaturesResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "setUrlMap": { - "description": "Changes the URL map for TargetHttpProxy.", - "flatPath": "projects/{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", - "httpMethod": "POST", - "id": "compute.targetHttpProxies.setUrlMap", + "patch": { + "description": "Patches the specified SSL policy with the data included in the request.", + "flatPath": "projects/{project}/global/sslPolicies/{sslPolicy}", + "httpMethod": "PATCH", + "id": "compute.sslPolicies.patch", "parameterOrder": [ "project", - "targetHttpProxy" + "sslPolicy" ], "parameters": { "project": { @@ -39205,17 +41302,16 @@ "location": "query", "type": "string" }, - "targetHttpProxy": { - "description": "Name of the TargetHttpProxy to set a URL map for.", + "sslPolicy": { + "description": "Name of the SSL policy to update. The name must be 1-63 characters long,\nand comply with RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + "path": "projects/{project}/global/sslPolicies/{sslPolicy}", "request": { - "$ref": "UrlMapReference" + "$ref": "SslPolicy" }, "response": { "$ref": "Operation" @@ -39227,13 +41323,13 @@ } } }, - "targetHttpsProxies": { + "storagePoolTypes": { "methods": { "aggregatedList": { - "description": "Retrieves the list of all TargetHttpsProxy resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/targetHttpsProxies", + "description": "Retrieves an aggregated list of storage pool types.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/storagePoolTypes", "httpMethod": "GET", - "id": "compute.targetHttpsProxies.aggregatedList", + "id": "compute.storagePoolTypes.aggregatedList", "parameterOrder": [ "project" ], @@ -39267,7 +41363,7 @@ "type": "string" }, "project": { - "description": "Name of the project scoping this request.", + "description": "Project ID for this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, @@ -39285,9 +41381,9 @@ "type": "string" } }, - "path": "projects/{project}/aggregated/targetHttpsProxies", + "path": "projects/{project}/aggregated/storagePoolTypes", "response": { - "$ref": "TargetHttpsProxyAggregatedList" + "$ref": "StoragePoolTypeAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -39295,14 +41391,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "delete": { - "description": "Deletes the specified TargetHttpsProxy resource.", - "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", - "httpMethod": "DELETE", - "id": "compute.targetHttpsProxies.delete", + "get": { + "description": "Returns the specified storage pool type.", + "flatPath": "projects/{project}/zones/{zone}/storagePoolTypes/{storagePoolType}", + "httpMethod": "GET", + "id": "compute.storagePoolTypes.get", "parameterOrder": [ "project", - "targetHttpsProxy" + "zone", + "storagePoolType" ], "parameters": { "project": { @@ -39312,72 +41409,64 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "storagePoolType": { + "description": "Name of the storage pool type to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy resource to delete.", + "zone": { + "description": "The name of the zone for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "path": "projects/{project}/zones/{zone}/storagePoolTypes/{storagePoolType}", "response": { - "$ref": "Operation" + "$ref": "StoragePoolType" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "get": { - "description": "Returns the specified TargetHttpsProxy resource.", - "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "list": { + "description": "Retrieves a list of storage pool types available to the specified\nproject.", + "flatPath": "projects/{project}/zones/{zone}/storagePoolTypes", "httpMethod": "GET", - "id": "compute.targetHttpsProxies.get", + "id": "compute.storagePoolTypes.list", "parameterOrder": [ "project", - "targetHttpsProxy" + "zone" ], "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", "type": "string" }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy resource to return.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", "type": "string" - } - }, - "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", - "response": { - "$ref": "TargetHttpsProxy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "insert": { - "description": "Creates a TargetHttpsProxy resource in the specified\nproject using the data included in the request.", - "flatPath": "projects/{project}/global/targetHttpsProxies", - "httpMethod": "POST", - "id": "compute.targetHttpsProxies.insert", - "parameterOrder": [ - "project" - ], - "parameters": { + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -39385,29 +41474,38 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", + "type": "boolean" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetHttpsProxies", - "request": { - "$ref": "TargetHttpsProxy" - }, + "path": "projects/{project}/zones/{zone}/storagePoolTypes", "response": { - "$ref": "Operation" + "$ref": "StoragePoolTypeList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] - }, - "list": { - "description": "Retrieves the list of TargetHttpsProxy resources\navailable to the specified project.", - "flatPath": "projects/{project}/global/targetHttpsProxies", + } + } + }, + "storagePools": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of storage pools.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/storagePools", "httpMethod": "GET", - "id": "compute.targetHttpsProxies.list", + "id": "compute.storagePools.aggregatedList", "parameterOrder": [ "project" ], @@ -39417,6 +41515,11 @@ "location": "query", "type": "string" }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -39446,11 +41549,17 @@ "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/global/targetHttpsProxies", + "path": "projects/{project}/aggregated/storagePools", "response": { - "$ref": "TargetHttpsProxyList" + "$ref": "StoragePoolAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -39458,14 +41567,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "patch": { - "description": "Patches the specified TargetHttpsProxy resource with the data included in\nthe request. This method supports PATCH\nsemantics and usesJSON merge\npatch format and processing rules.", - "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", - "httpMethod": "PATCH", - "id": "compute.targetHttpsProxies.patch", + "delete": { + "description": "Deletes the specified storage pool. Deleting a storagePool\nremoves its data permanently and is irreversible. However, deleting a\nstoragePool does not delete any snapshots previously\nmade from the storagePool. You must separately delete\nsnapshots.", + "flatPath": "projects/{project}/zones/{zone}/storagePools/{storagePool}", + "httpMethod": "DELETE", + "id": "compute.storagePools.delete", "parameterOrder": [ "project", - "targetHttpsProxy" + "zone", + "storagePool" ], "parameters": { "project": { @@ -39480,18 +41590,22 @@ "location": "query", "type": "string" }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy resource to patch.", + "storagePool": { + "description": "Name of the storage pool to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" } }, - "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", - "request": { - "$ref": "TargetHttpsProxy" - }, + "path": "projects/{project}/zones/{zone}/storagePools/{storagePool}", "response": { "$ref": "Operation" }, @@ -39500,14 +41614,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "setCertificateMap": { - "description": "Changes the Certificate Map for TargetHttpsProxy.", - "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setCertificateMap", - "httpMethod": "POST", - "id": "compute.targetHttpsProxies.setCertificateMap", + "get": { + "description": "Returns a specified storage pool. Gets a list of available\nstorage pools by making a list() request.", + "flatPath": "projects/{project}/zones/{zone}/storagePools/{storagePool}", + "httpMethod": "GET", + "id": "compute.storagePools.get", "parameterOrder": [ "project", - "targetHttpsProxy" + "zone", + "storagePool" ], "parameters": { "project": { @@ -39517,40 +41632,48 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "storagePool": { + "description": "Name of the storage pool to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy resource whose CertificateMap is\nto be set. The name must be 1-63 characters long, and comply with RFC1035.", + "zone": { + "description": "The name of the zone for this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setCertificateMap", - "request": { - "$ref": "TargetHttpsProxiesSetCertificateMapRequest" - }, + "path": "projects/{project}/zones/{zone}/storagePools/{storagePool}", "response": { - "$ref": "Operation" + "$ref": "StoragePool" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "setQuicOverride": { - "description": "Sets the QUIC override policy for TargetHttpsProxy.", - "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setQuicOverride", - "httpMethod": "POST", - "id": "compute.targetHttpsProxies.setQuicOverride", + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/zones/{zone}/storagePools/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.storagePools.getIamPolicy", "parameterOrder": [ "project", - "targetHttpsProxy" + "zone", + "resource" ], "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -39558,38 +41681,39 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, "type": "string" }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy resource to set the QUIC override policy for.\nThe name should conform to RFC1035.", + "zone": { + "description": "The name of the zone for this request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setQuicOverride", - "request": { - "$ref": "TargetHttpsProxiesSetQuicOverrideRequest" - }, + "path": "projects/{project}/zones/{zone}/storagePools/{resource}/getIamPolicy", "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "setSslCertificates": { - "description": "Replaces SslCertificates for TargetHttpsProxy.", - "flatPath": "projects/{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "insert": { + "description": "Creates a storage pool in the specified project using the data\nin the request.", + "flatPath": "projects/{project}/zones/{zone}/storagePools", "httpMethod": "POST", - "id": "compute.targetHttpsProxies.setSslCertificates", + "id": "compute.storagePools.insert", "parameterOrder": [ "project", - "targetHttpsProxy" + "zone" ], "parameters": { "project": { @@ -39604,17 +41728,17 @@ "location": "query", "type": "string" }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy resource to set an\nSslCertificates resource for.", + "zone": { + "description": "The name of the zone for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "path": "projects/{project}/zones/{zone}/storagePools", "request": { - "$ref": "TargetHttpsProxiesSetSslCertificatesRequest" + "$ref": "StoragePool" }, "response": { "$ref": "Operation" @@ -39624,57 +41748,39 @@ "https://www.googleapis.com/auth/compute" ] }, - "setSslPolicy": { - "description": "Sets the SSL policy for TargetHttpsProxy. The SSL policy specifies the\nserver-side support for SSL features. This affects connections between\nclients and the HTTPS proxy load balancer. They do not affect the\nconnection between the load balancer and the backends.", - "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy", - "httpMethod": "POST", - "id": "compute.targetHttpsProxies.setSslPolicy", + "list": { + "description": "Retrieves a list of storage pools contained within\nthe specified zone.", + "flatPath": "projects/{project}/zones/{zone}/storagePools", + "httpMethod": "GET", + "id": "compute.storagePools.list", "parameterOrder": [ "project", - "targetHttpsProxy" + "zone" ], "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", "location": "query", "type": "string" }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy resource whose SSL policy is\nto be set. The name must be 1-63 characters long, and comply with RFC1035.", - "location": "path", - "required": true, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", "type": "string" - } - }, - "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy", - "request": { - "$ref": "SslPolicyReference" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setUrlMap": { - "description": "Changes the URL map for TargetHttpsProxy.", - "flatPath": "projects/{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", - "httpMethod": "POST", - "id": "compute.targetHttpsProxies.setUrlMap", - "parameterOrder": [ - "project", - "targetHttpsProxy" - ], - "parameters": { + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -39682,42 +41788,38 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", - "type": "string" + "type": "boolean" }, - "targetHttpsProxy": { - "description": "Name of the TargetHttpsProxy resource whose URL map is\nto be set.", + "zone": { + "description": "The name of the zone for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", - "request": { - "$ref": "UrlMapReference" - }, + "path": "projects/{project}/zones/{zone}/storagePools", "response": { - "$ref": "Operation" + "$ref": "StoragePoolList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "targetInstances": { - "methods": { - "aggregatedList": { - "description": "Retrieves an aggregated list of target instances.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/targetInstances", + }, + "listDisks": { + "description": "Lists the disks in a specified storage pool.", + "flatPath": "projects/{project}/zones/{zone}/storagePools/{storagePool}/listDisks", "httpMethod": "GET", - "id": "compute.targetInstances.aggregatedList", + "id": "compute.storagePools.listDisks", "parameterOrder": [ - "project" + "project", + "zone", + "storagePool" ], "parameters": { "filter": { @@ -39725,11 +41827,6 @@ "location": "query", "type": "string" }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -39760,16 +41857,24 @@ "location": "query", "type": "boolean" }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", + "storagePool": { + "description": "Name of the storage pool to list disks of.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" } }, - "path": "projects/{project}/aggregated/targetInstances", + "path": "projects/{project}/zones/{zone}/storagePools/{storagePool}/listDisks", "response": { - "$ref": "TargetInstanceAggregatedList" + "$ref": "StoragePoolListDisks" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -39777,15 +41882,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "delete": { - "description": "Deletes the specified TargetInstance resource.", - "flatPath": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}", - "httpMethod": "DELETE", - "id": "compute.targetInstances.delete", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/zones/{zone}/storagePools/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.storagePools.setIamPolicy", "parameterOrder": [ "project", "zone", - "targetInstance" + "resource" ], "parameters": { "project": { @@ -39795,44 +41900,42 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "targetInstance": { - "description": "Name of the TargetInstance resource to delete.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, "zone": { - "description": "Name of the zone scoping this request.", + "description": "The name of the zone for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}", + "path": "projects/{project}/zones/{zone}/storagePools/{resource}/setIamPolicy", + "request": { + "$ref": "ZoneSetPolicyRequest" + }, "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified TargetInstance resource.", - "flatPath": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}", - "httpMethod": "GET", - "id": "compute.targetInstances.get", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/zones/{zone}/storagePools/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.storagePools.testIamPermissions", "parameterOrder": [ "project", "zone", - "targetInstance" + "resource" ], "parameters": { "project": { @@ -39842,24 +41945,27 @@ "required": true, "type": "string" }, - "targetInstance": { - "description": "Name of the TargetInstance resource to return.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, "zone": { - "description": "Name of the zone scoping this request.", + "description": "The name of the zone for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}", + "path": "projects/{project}/zones/{zone}/storagePools/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, "response": { - "$ref": "TargetInstance" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -39867,14 +41973,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "insert": { - "description": "Creates a TargetInstance resource in the specified project and zone using\nthe data included in the request.", - "flatPath": "projects/{project}/zones/{zone}/targetInstances", - "httpMethod": "POST", - "id": "compute.targetInstances.insert", + "update": { + "description": "Updates the specified storagePool with the data included in the request.\nThe update is performed only on selected fields included as part\nof update-mask. Only the following fields can be modified:\npool_provisioned_capacity_gb, pool_provisioned_iops and\npool_provisioned_throughput.", + "flatPath": "projects/{project}/zones/{zone}/storagePools/{storagePool}", + "httpMethod": "PATCH", + "id": "compute.storagePools.update", "parameterOrder": [ "project", - "zone" + "zone", + "storagePool" ], "parameters": { "project": { @@ -39889,17 +41996,30 @@ "location": "query", "type": "string" }, + "storagePool": { + "description": "The storagePool name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "update_mask indicates fields to be updated as part of this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, "zone": { - "description": "Name of the zone scoping this request.", + "description": "The name of the zone for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/targetInstances", + "path": "projects/{project}/zones/{zone}/storagePools/{storagePool}", "request": { - "$ref": "TargetInstance" + "$ref": "StoragePool" }, "response": { "$ref": "Operation" @@ -39908,15 +42028,18 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "list": { - "description": "Retrieves a list of TargetInstance resources available to the specified\nproject and zone.", - "flatPath": "projects/{project}/zones/{zone}/targetInstances", + } + } + }, + "subnetworks": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of subnetworks.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/subnetworks", "httpMethod": "GET", - "id": "compute.targetInstances.list", + "id": "compute.subnetworks.aggregatedList", "parameterOrder": [ - "project", - "zone" + "project" ], "parameters": { "filter": { @@ -39924,6 +42047,11 @@ "location": "query", "type": "string" }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -39954,17 +42082,30 @@ "location": "query", "type": "boolean" }, - "zone": { - "description": "Name of the zone scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + }, + "views": { + "description": "Defines the extra views returned back in the subnetwork resource.\nSupported values:\n \n - WITH_UTILIZATION: Utilization data is included in the\n response.", + "enum": [ + "DEFAULT", + "WITH_UTILIZATION" + ], + "enumDescriptions": [ + "", + "Utilization data is included in the response." + ], + "location": "query", + "repeated": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/targetInstances", + "path": "projects/{project}/aggregated/subnetworks", "response": { - "$ref": "TargetInstanceList" + "$ref": "SubnetworkAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -39972,15 +42113,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "setSecurityPolicy": { - "description": "Sets the Google Cloud Armor security policy for the specified target\ninstance. For more information, seeGoogle\nCloud Armor Overview", - "flatPath": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}/setSecurityPolicy", - "httpMethod": "POST", - "id": "compute.targetInstances.setSecurityPolicy", + "delete": { + "description": "Deletes the specified subnetwork.", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "httpMethod": "DELETE", + "id": "compute.subnetworks.delete", "parameterOrder": [ "project", - "zone", - "targetInstance" + "region", + "subnetwork" ], "parameters": { "project": { @@ -39990,29 +42131,27 @@ "required": true, "type": "string" }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "targetInstance": { - "description": "Name of the TargetInstance resource to which the security policy should be\nset. The name should conform to RFC1035.", + "subnetwork": { + "description": "Name of the Subnetwork resource to delete.", "location": "path", - "required": true, - "type": "string" - }, - "zone": { - "description": "Name of the zone scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}/setSecurityPolicy", - "request": { - "$ref": "SecurityPolicyReference" - }, + "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", "response": { "$ref": "Operation" }, @@ -40021,65 +42160,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/zones/{zone}/targetInstances/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.targetInstances.testIamPermissions", - "parameterOrder": [ - "project", - "zone", - "resource" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/zones/{zone}/targetInstances/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - } - } - }, - "targetPools": { - "methods": { - "addHealthCheck": { - "description": "Adds health check URLs to a target pool.", - "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck", + "expandIpCidrRange": { + "description": "Expands the IP CIDR range of the subnetwork to a specified value.", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", "httpMethod": "POST", - "id": "compute.targetPools.addHealthCheck", + "id": "compute.subnetworks.expandIpCidrRange", "parameterOrder": [ "project", "region", - "targetPool" + "subnetwork" ], "parameters": { "project": { @@ -40101,17 +42190,17 @@ "location": "query", "type": "string" }, - "targetPool": { - "description": "Name of the target pool to add a health check to.", + "subnetwork": { + "description": "Name of the Subnetwork resource to update.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck", + "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", "request": { - "$ref": "TargetPoolsAddHealthCheckRequest" + "$ref": "SubnetworksExpandIpCidrRangeRequest" }, "response": { "$ref": "Operation" @@ -40121,15 +42210,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "addInstance": { - "description": "Adds an instance to a target pool.", - "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/addInstance", - "httpMethod": "POST", - "id": "compute.targetPools.addInstance", + "get": { + "description": "Returns the specified subnetwork.", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "httpMethod": "GET", + "id": "compute.subnetworks.get", "parameterOrder": [ "project", "region", - "targetPool" + "subnetwork" ], "parameters": { "project": { @@ -40146,90 +42235,31 @@ "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "targetPool": { - "description": "Name of the TargetPool resource to add instances to.", + "subnetwork": { + "description": "Name of the Subnetwork resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/addInstance", - "request": { - "$ref": "TargetPoolsAddInstanceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "aggregatedList": { - "description": "Retrieves an aggregated list of target pools.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/targetPools", - "httpMethod": "GET", - "id": "compute.targetPools.aggregatedList", - "parameterOrder": [ - "project" - ], - "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", - "location": "query", - "type": "boolean" }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", + "views": { + "description": "Defines the extra views returned back in the subnetwork resource.\nSupported values:\n \n - WITH_UTILIZATION: Utilization data is included in the\n response.", + "enum": [ + "DEFAULT", + "WITH_UTILIZATION" + ], + "enumDescriptions": [ + "", + "Utilization data is included in the response." + ], "location": "query", + "repeated": true, "type": "string" } }, - "path": "projects/{project}/aggregated/targetPools", + "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", "response": { - "$ref": "TargetPoolAggregatedList" + "$ref": "Subnetwork" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -40237,107 +42267,23 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "delete": { - "description": "Deletes the specified target pool.", - "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}", - "httpMethod": "DELETE", - "id": "compute.targetPools.delete", - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "targetPool": { - "description": "Name of the TargetPool resource to delete.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/targetPools/{targetPool}", - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "get": { - "description": "Returns the specified target pool.", - "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}", + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{resource}/getIamPolicy", "httpMethod": "GET", - "id": "compute.targetPools.get", + "id": "compute.subnetworks.getIamPolicy", "parameterOrder": [ "project", "region", - "targetPool" + "resource" ], "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "region": { - "description": "Name of the region scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" }, - "targetPool": { - "description": "Name of the TargetPool resource to return.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/targetPools/{targetPool}", - "response": { - "$ref": "TargetPool" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "getHealth": { - "description": "Gets the most recent health check results for each IP for the\ninstance that is referenced by the given target pool.", - "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/getHealth", - "httpMethod": "POST", - "id": "compute.targetPools.getHealth", - "parameterOrder": [ - "project", - "region", - "targetPool" - ], - "parameters": { "project": { "description": "Project ID for this request.", "location": "path", @@ -40346,26 +42292,23 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "targetPool": { - "description": "Name of the TargetPool resource to which the queried instance belongs.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/getHealth", - "request": { - "$ref": "InstanceReference" - }, + "path": "projects/{project}/regions/{region}/subnetworks/{resource}/getIamPolicy", "response": { - "$ref": "TargetPoolInstanceHealth" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -40374,10 +42317,10 @@ ] }, "insert": { - "description": "Creates a target pool in the specified project and region using\nthe data included in the request.", - "flatPath": "projects/{project}/regions/{region}/targetPools", + "description": "Creates a subnetwork in the specified project using the data\nincluded in the request.", + "flatPath": "projects/{project}/regions/{region}/subnetworks", "httpMethod": "POST", - "id": "compute.targetPools.insert", + "id": "compute.subnetworks.insert", "parameterOrder": [ "project", "region" @@ -40403,9 +42346,9 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetPools", + "path": "projects/{project}/regions/{region}/subnetworks", "request": { - "$ref": "TargetPool" + "$ref": "Subnetwork" }, "response": { "$ref": "Operation" @@ -40416,10 +42359,10 @@ ] }, "list": { - "description": "Retrieves a list of target pools available to the specified\nproject and region.", - "flatPath": "projects/{project}/regions/{region}/targetPools", + "description": "Retrieves a list of subnetworks available to the specified\nproject.", + "flatPath": "projects/{project}/regions/{region}/subnetworks", "httpMethod": "GET", - "id": "compute.targetPools.list", + "id": "compute.subnetworks.list", "parameterOrder": [ "project", "region" @@ -40466,11 +42409,25 @@ "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" + }, + "views": { + "description": "Defines the extra views returned back in the subnetwork resource.\nSupported values:\n \n - WITH_UTILIZATION: Utilization data is included in the\n response.", + "enum": [ + "DEFAULT", + "WITH_UTILIZATION" + ], + "enumDescriptions": [ + "", + "Utilization data is included in the response." + ], + "location": "query", + "repeated": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetPools", + "path": "projects/{project}/regions/{region}/subnetworks", "response": { - "$ref": "TargetPoolList" + "$ref": "SubnetworkList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -40478,67 +42435,83 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "removeHealthCheck": { - "description": "Removes health check URL from a target pool.", - "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", - "httpMethod": "POST", - "id": "compute.targetPools.removeHealthCheck", + "listUsable": { + "description": "Retrieves an aggregated list of all usable subnetworks in the project.", + "flatPath": "projects/{project}/aggregated/subnetworks/listUsable", + "httpMethod": "GET", + "id": "compute.subnetworks.listUsable", "parameterOrder": [ - "project", - "region", - "targetPool" + "project" ], "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", "type": "string" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", "location": "query", "type": "string" }, - "targetPool": { - "description": "Name of the target pool to remove health checks from.", + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProject": { + "description": "The project id or project number in which the subnetwork is intended to be\nused. Only applied for Shared VPC. See [Shared VPC\ndocumentation](https://cloud.google.com/vpc/docs/shared-vpc/)", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", - "request": { - "$ref": "TargetPoolsRemoveHealthCheckRequest" - }, + "path": "projects/{project}/aggregated/subnetworks/listUsable", "response": { - "$ref": "Operation" + "$ref": "UsableSubnetworksAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] }, - "removeInstance": { - "description": "Removes instance URL from a target pool.", - "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/removeInstance", - "httpMethod": "POST", - "id": "compute.targetPools.removeInstance", + "patch": { + "description": "Patches the specified subnetwork with the data included in the request.\nOnly certain fields can be updated with a patch request\nas indicated in the field descriptions.\nYou must specify the current fingerprint of the\nsubnetwork resource being patched.", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "httpMethod": "PATCH", + "id": "compute.subnetworks.patch", "parameterOrder": [ "project", "region", - "targetPool" + "subnetwork" ], "parameters": { + "drainTimeoutSeconds": { + "description": "The drain timeout specifies the upper bound in seconds on the amount of\ntime allowed to drain connections from the current ACTIVE subnetwork\nto the current BACKUP subnetwork. The drain timeout is only applicable\nwhen the following conditions are true:\n - the subnetwork being patched has purpose = INTERNAL_HTTPS_LOAD_BALANCER\n - the subnetwork being patched has role = BACKUP\n - the patch request is setting the role to ACTIVE. Note that after this\n patch operation the roles of the ACTIVE and BACKUP subnetworks will be\n swapped.", + "format": "int32", + "location": "query", + "type": "integer" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -40558,17 +42531,17 @@ "location": "query", "type": "string" }, - "targetPool": { - "description": "Name of the TargetPool resource to remove instances from.", + "subnetwork": { + "description": "Name of the Subnetwork resource to patch.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/removeInstance", + "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", "request": { - "$ref": "TargetPoolsRemoveInstanceRequest" + "$ref": "Subnetwork" }, "response": { "$ref": "Operation" @@ -40578,23 +42551,17 @@ "https://www.googleapis.com/auth/compute" ] }, - "setBackup": { - "description": "Changes a backup target pool's configurations.", - "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/setBackup", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{resource}/setIamPolicy", "httpMethod": "POST", - "id": "compute.targetPools.setBackup", + "id": "compute.subnetworks.setIamPolicy", "parameterOrder": [ "project", "region", - "targetPool" + "resource" ], "parameters": { - "failoverRatio": { - "description": "New failoverRatio value for the target pool.", - "format": "float", - "location": "query", - "type": "number" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -40603,46 +42570,41 @@ "type": "string" }, "region": { - "description": "Name of the region scoping this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "targetPool": { - "description": "Name of the TargetPool resource to set a backup pool for.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/setBackup", + "path": "projects/{project}/regions/{region}/subnetworks/{resource}/setIamPolicy", "request": { - "$ref": "TargetReference" + "$ref": "RegionSetPolicyRequest" }, "response": { - "$ref": "Operation" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] }, - "setSecurityPolicy": { - "description": "Sets the Google Cloud Armor security policy for the specified target pool.\nFor more information, seeGoogle\nCloud Armor Overview", - "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/setSecurityPolicy", + "setPrivateIpGoogleAccess": { + "description": "Set whether VMs in this subnet can access Google services without assigning\nexternal IP addresses through Private Google Access.", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess", "httpMethod": "POST", - "id": "compute.targetPools.setSecurityPolicy", + "id": "compute.subnetworks.setPrivateIpGoogleAccess", "parameterOrder": [ "project", "region", - "targetPool" + "subnetwork" ], "parameters": { "project": { @@ -40664,16 +42626,17 @@ "location": "query", "type": "string" }, - "targetPool": { - "description": "Name of the TargetPool resource to which the security policy should be\nset. The name should conform to RFC1035.", + "subnetwork": { + "description": "Name of the Subnetwork resource.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/setSecurityPolicy", + "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess", "request": { - "$ref": "SecurityPolicyReference" + "$ref": "SubnetworksSetPrivateIpGoogleAccessRequest" }, "response": { "$ref": "Operation" @@ -40685,9 +42648,9 @@ }, "testIamPermissions": { "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/regions/{region}/targetPools/{resource}/testIamPermissions", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{resource}/testIamPermissions", "httpMethod": "POST", - "id": "compute.targetPools.testIamPermissions", + "id": "compute.subnetworks.testIamPermissions", "parameterOrder": [ "project", "region", @@ -40716,7 +42679,7 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetPools/{resource}/testIamPermissions", + "path": "projects/{project}/regions/{region}/subnetworks/{resource}/testIamPermissions", "request": { "$ref": "TestPermissionsRequest" }, @@ -40731,16 +42694,16 @@ } } }, - "targetSslProxies": { + "targetGrpcProxies": { "methods": { "delete": { - "description": "Deletes the specified TargetSslProxy resource.", - "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}", + "description": "Deletes the specified TargetGrpcProxy in the given scope", + "flatPath": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", "httpMethod": "DELETE", - "id": "compute.targetSslProxies.delete", + "id": "compute.targetGrpcProxies.delete", "parameterOrder": [ "project", - "targetSslProxy" + "targetGrpcProxy" ], "parameters": { "project": { @@ -40755,15 +42718,15 @@ "location": "query", "type": "string" }, - "targetSslProxy": { - "description": "Name of the TargetSslProxy resource to delete.", + "targetGrpcProxy": { + "description": "Name of the TargetGrpcProxy resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}", + "path": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", "response": { "$ref": "Operation" }, @@ -40773,13 +42736,13 @@ ] }, "get": { - "description": "Returns the specified TargetSslProxy resource.", - "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}", + "description": "Returns the specified TargetGrpcProxy resource in the given scope.", + "flatPath": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", "httpMethod": "GET", - "id": "compute.targetSslProxies.get", + "id": "compute.targetGrpcProxies.get", "parameterOrder": [ "project", - "targetSslProxy" + "targetGrpcProxy" ], "parameters": { "project": { @@ -40789,17 +42752,17 @@ "required": true, "type": "string" }, - "targetSslProxy": { - "description": "Name of the TargetSslProxy resource to return.", + "targetGrpcProxy": { + "description": "Name of the TargetGrpcProxy resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}", + "path": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", "response": { - "$ref": "TargetSslProxy" + "$ref": "TargetGrpcProxy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -40808,10 +42771,10 @@ ] }, "insert": { - "description": "Creates a TargetSslProxy resource in the specified project using\nthe data included in the request.", - "flatPath": "projects/{project}/global/targetSslProxies", + "description": "Creates a TargetGrpcProxy in the specified project in the given scope\nusing the parameters that are included in the request.", + "flatPath": "projects/{project}/global/targetGrpcProxies", "httpMethod": "POST", - "id": "compute.targetSslProxies.insert", + "id": "compute.targetGrpcProxies.insert", "parameterOrder": [ "project" ], @@ -40829,9 +42792,9 @@ "type": "string" } }, - "path": "projects/{project}/global/targetSslProxies", + "path": "projects/{project}/global/targetGrpcProxies", "request": { - "$ref": "TargetSslProxy" + "$ref": "TargetGrpcProxy" }, "response": { "$ref": "Operation" @@ -40842,10 +42805,10 @@ ] }, "list": { - "description": "Retrieves the list of TargetSslProxy resources\navailable to the specified project.", - "flatPath": "projects/{project}/global/targetSslProxies", + "description": "Lists the TargetGrpcProxies for a project in the given scope.", + "flatPath": "projects/{project}/global/targetGrpcProxies", "httpMethod": "GET", - "id": "compute.targetSslProxies.list", + "id": "compute.targetGrpcProxies.list", "parameterOrder": [ "project" ], @@ -40886,9 +42849,9 @@ "type": "boolean" } }, - "path": "projects/{project}/global/targetSslProxies", + "path": "projects/{project}/global/targetGrpcProxies", "response": { - "$ref": "TargetSslProxyList" + "$ref": "TargetGrpcProxyList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -40896,139 +42859,14 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "setBackendService": { - "description": "Changes the BackendService for TargetSslProxy.", - "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", - "httpMethod": "POST", - "id": "compute.targetSslProxies.setBackendService", - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "targetSslProxy": { - "description": "Name of the TargetSslProxy resource whose BackendService resource\nis to be set.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", - "request": { - "$ref": "TargetSslProxiesSetBackendServiceRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setCertificateMap": { - "description": "Changes the Certificate Map for TargetSslProxy.", - "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setCertificateMap", - "httpMethod": "POST", - "id": "compute.targetSslProxies.setCertificateMap", - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "targetSslProxy": { - "description": "Name of the TargetSslProxy resource whose CertificateMap is\nto be set. The name must be 1-63 characters long, and comply with RFC1035.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setCertificateMap", - "request": { - "$ref": "TargetSslProxiesSetCertificateMapRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setProxyHeader": { - "description": "Changes the ProxyHeaderType for TargetSslProxy.", - "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", - "httpMethod": "POST", - "id": "compute.targetSslProxies.setProxyHeader", - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "targetSslProxy": { - "description": "Name of the TargetSslProxy resource whose ProxyHeader is to be set.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", - "request": { - "$ref": "TargetSslProxiesSetProxyHeaderRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSslCertificates": { - "description": "Changes SslCertificates for TargetSslProxy.", - "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", - "httpMethod": "POST", - "id": "compute.targetSslProxies.setSslCertificates", + "patch": { + "description": "Patches the specified TargetGrpcProxy resource with the data included in\nthe request. This method supports PATCH\nsemantics and usesJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", + "httpMethod": "PATCH", + "id": "compute.targetGrpcProxies.patch", "parameterOrder": [ "project", - "targetSslProxy" + "targetGrpcProxy" ], "parameters": { "project": { @@ -41043,58 +42881,17 @@ "location": "query", "type": "string" }, - "targetSslProxy": { - "description": "Name of the TargetSslProxy resource whose SslCertificate resource\nis to be set.", + "targetGrpcProxy": { + "description": "Name of the TargetGrpcProxy resource to patch.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", - "request": { - "$ref": "TargetSslProxiesSetSslCertificatesRequest" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setSslPolicy": { - "description": "Sets the SSL policy for TargetSslProxy. The SSL policy specifies the\nserver-side support for SSL features. This affects connections between\nclients and the load balancer. They do not affect the\nconnection between the load balancer and the backends.", - "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy", - "httpMethod": "POST", - "id": "compute.targetSslProxies.setSslPolicy", - "parameterOrder": [ - "project", - "targetSslProxy" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "targetSslProxy": { - "description": "Name of the TargetSslProxy resource whose SSL policy is\nto be set. The name must be 1-63 characters long, and comply with RFC1035.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy", + "path": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", "request": { - "$ref": "SslPolicyReference" + "$ref": "TargetGrpcProxy" }, "response": { "$ref": "Operation" @@ -41103,54 +42900,16 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/global/targetSslProxies/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.targetSslProxies.testIamPermissions", - "parameterOrder": [ - "project", - "resource" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/global/targetSslProxies/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] } } }, - "targetTcpProxies": { + "targetHttpProxies": { "methods": { "aggregatedList": { - "description": "Retrieves the list of all TargetTcpProxy resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/targetTcpProxies", + "description": "Retrieves the list of all TargetHttpProxy resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/targetHttpProxies", "httpMethod": "GET", - "id": "compute.targetTcpProxies.aggregatedList", + "id": "compute.targetHttpProxies.aggregatedList", "parameterOrder": [ "project" ], @@ -41202,9 +42961,9 @@ "type": "string" } }, - "path": "projects/{project}/aggregated/targetTcpProxies", + "path": "projects/{project}/aggregated/targetHttpProxies", "response": { - "$ref": "TargetTcpProxyAggregatedList" + "$ref": "TargetHttpProxyAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -41213,13 +42972,13 @@ ] }, "delete": { - "description": "Deletes the specified TargetTcpProxy resource.", - "flatPath": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}", + "description": "Deletes the specified TargetHttpProxy resource.", + "flatPath": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", "httpMethod": "DELETE", - "id": "compute.targetTcpProxies.delete", + "id": "compute.targetHttpProxies.delete", "parameterOrder": [ "project", - "targetTcpProxy" + "targetHttpProxy" ], "parameters": { "project": { @@ -41234,15 +42993,15 @@ "location": "query", "type": "string" }, - "targetTcpProxy": { - "description": "Name of the TargetTcpProxy resource to delete.", + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}", + "path": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", "response": { "$ref": "Operation" }, @@ -41252,13 +43011,13 @@ ] }, "get": { - "description": "Returns the specified TargetTcpProxy resource.", - "flatPath": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}", + "description": "Returns the specified TargetHttpProxy resource.", + "flatPath": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", "httpMethod": "GET", - "id": "compute.targetTcpProxies.get", + "id": "compute.targetHttpProxies.get", "parameterOrder": [ "project", - "targetTcpProxy" + "targetHttpProxy" ], "parameters": { "project": { @@ -41268,17 +43027,17 @@ "required": true, "type": "string" }, - "targetTcpProxy": { - "description": "Name of the TargetTcpProxy resource to return.", + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}", + "path": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", "response": { - "$ref": "TargetTcpProxy" + "$ref": "TargetHttpProxy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -41287,10 +43046,10 @@ ] }, "insert": { - "description": "Creates a TargetTcpProxy resource in the specified project using\nthe data included in the request.", - "flatPath": "projects/{project}/global/targetTcpProxies", + "description": "Creates a TargetHttpProxy resource in the specified\nproject using the data included in the request.", + "flatPath": "projects/{project}/global/targetHttpProxies", "httpMethod": "POST", - "id": "compute.targetTcpProxies.insert", + "id": "compute.targetHttpProxies.insert", "parameterOrder": [ "project" ], @@ -41308,9 +43067,9 @@ "type": "string" } }, - "path": "projects/{project}/global/targetTcpProxies", + "path": "projects/{project}/global/targetHttpProxies", "request": { - "$ref": "TargetTcpProxy" + "$ref": "TargetHttpProxy" }, "response": { "$ref": "Operation" @@ -41321,10 +43080,10 @@ ] }, "list": { - "description": "Retrieves the list of TargetTcpProxy resources\navailable to the specified project.", - "flatPath": "projects/{project}/global/targetTcpProxies", + "description": "Retrieves the list of TargetHttpProxy resources available\nto the specified project.", + "flatPath": "projects/{project}/global/targetHttpProxies", "httpMethod": "GET", - "id": "compute.targetTcpProxies.list", + "id": "compute.targetHttpProxies.list", "parameterOrder": [ "project" ], @@ -41365,9 +43124,9 @@ "type": "boolean" } }, - "path": "projects/{project}/global/targetTcpProxies", + "path": "projects/{project}/global/targetHttpProxies", "response": { - "$ref": "TargetTcpProxyList" + "$ref": "TargetHttpProxyList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -41375,14 +43134,14 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "setBackendService": { - "description": "Changes the BackendService for TargetTcpProxy.", - "flatPath": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService", - "httpMethod": "POST", - "id": "compute.targetTcpProxies.setBackendService", + "patch": { + "description": "Patches the specified TargetHttpProxy resource with the data included in\nthe request. This method supports PATCH\nsemantics and usesJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", + "httpMethod": "PATCH", + "id": "compute.targetHttpProxies.patch", "parameterOrder": [ "project", - "targetTcpProxy" + "targetHttpProxy" ], "parameters": { "project": { @@ -41397,17 +43156,17 @@ "location": "query", "type": "string" }, - "targetTcpProxy": { - "description": "Name of the TargetTcpProxy resource whose BackendService resource\nis to be set.", + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to patch.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService", + "path": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", "request": { - "$ref": "TargetTcpProxiesSetBackendServiceRequest" + "$ref": "TargetHttpProxy" }, "response": { "$ref": "Operation" @@ -41417,14 +43176,14 @@ "https://www.googleapis.com/auth/compute" ] }, - "setProxyHeader": { - "description": "Changes the ProxyHeaderType for TargetTcpProxy.", - "flatPath": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader", + "setUrlMap": { + "description": "Changes the URL map for TargetHttpProxy.", + "flatPath": "projects/{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", "httpMethod": "POST", - "id": "compute.targetTcpProxies.setProxyHeader", + "id": "compute.targetHttpProxies.setUrlMap", "parameterOrder": [ "project", - "targetTcpProxy" + "targetHttpProxy" ], "parameters": { "project": { @@ -41439,17 +43198,17 @@ "location": "query", "type": "string" }, - "targetTcpProxy": { - "description": "Name of the TargetTcpProxy resource whose ProxyHeader is to be set.", + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy to set a URL map for.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader", + "path": "projects/{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", "request": { - "$ref": "TargetTcpProxiesSetProxyHeaderRequest" + "$ref": "UrlMapReference" }, "response": { "$ref": "Operation" @@ -41458,54 +43217,16 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/global/targetTcpProxies/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.targetTcpProxies.testIamPermissions", - "parameterOrder": [ - "project", - "resource" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "resource": { - "description": "Name or id of the resource for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/global/targetTcpProxies/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, - "response": { - "$ref": "TestPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] } } }, - "targetVpnGateways": { + "targetHttpsProxies": { "methods": { "aggregatedList": { - "description": "Retrieves an aggregated list of target VPN gateways.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/targetVpnGateways", + "description": "Retrieves the list of all TargetHttpsProxy resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/targetHttpsProxies", "httpMethod": "GET", - "id": "compute.targetVpnGateways.aggregatedList", + "id": "compute.targetHttpsProxies.aggregatedList", "parameterOrder": [ "project" ], @@ -41539,7 +43260,7 @@ "type": "string" }, "project": { - "description": "Project ID for this request.", + "description": "Name of the project scoping this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, @@ -41557,9 +43278,9 @@ "type": "string" } }, - "path": "projects/{project}/aggregated/targetVpnGateways", + "path": "projects/{project}/aggregated/targetHttpsProxies", "response": { - "$ref": "TargetVpnGatewayAggregatedList" + "$ref": "TargetHttpsProxyAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -41568,14 +43289,13 @@ ] }, "delete": { - "description": "Deletes the specified target VPN gateway.", - "flatPath": "projects/{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "description": "Deletes the specified TargetHttpsProxy resource.", + "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", "httpMethod": "DELETE", - "id": "compute.targetVpnGateways.delete", + "id": "compute.targetHttpsProxies.delete", "parameterOrder": [ "project", - "region", - "targetVpnGateway" + "targetHttpsProxy" ], "parameters": { "project": { @@ -41585,27 +43305,20 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "targetVpnGateway": { - "description": "Name of the target VPN gateway to delete.", + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", "response": { "$ref": "Operation" }, @@ -41615,14 +43328,13 @@ ] }, "get": { - "description": "Returns the specified target VPN gateway.", - "flatPath": "projects/{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "description": "Returns the specified TargetHttpsProxy resource.", + "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", "httpMethod": "GET", - "id": "compute.targetVpnGateways.get", + "id": "compute.targetHttpsProxies.get", "parameterOrder": [ "project", - "region", - "targetVpnGateway" + "targetHttpsProxy" ], "parameters": { "project": { @@ -41632,24 +43344,17 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, - "targetVpnGateway": { - "description": "Name of the target VPN gateway to return.", + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", "response": { - "$ref": "TargetVpnGateway" + "$ref": "TargetHttpsProxy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -41658,13 +43363,12 @@ ] }, "insert": { - "description": "Creates a target VPN gateway in the specified project and region using\nthe data included in the request.", - "flatPath": "projects/{project}/regions/{region}/targetVpnGateways", + "description": "Creates a TargetHttpsProxy resource in the specified\nproject using the data included in the request.", + "flatPath": "projects/{project}/global/targetHttpsProxies", "httpMethod": "POST", - "id": "compute.targetVpnGateways.insert", + "id": "compute.targetHttpsProxies.insert", "parameterOrder": [ - "project", - "region" + "project" ], "parameters": { "project": { @@ -41674,22 +43378,15 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetVpnGateways", + "path": "projects/{project}/global/targetHttpsProxies", "request": { - "$ref": "TargetVpnGateway" + "$ref": "TargetHttpsProxy" }, "response": { "$ref": "Operation" @@ -41700,13 +43397,12 @@ ] }, "list": { - "description": "Retrieves a list of target VPN gateways available to the specified\nproject and region.", - "flatPath": "projects/{project}/regions/{region}/targetVpnGateways", + "description": "Retrieves the list of TargetHttpsProxy resources\navailable to the specified project.", + "flatPath": "projects/{project}/global/targetHttpsProxies", "httpMethod": "GET", - "id": "compute.targetVpnGateways.list", + "id": "compute.targetHttpsProxies.list", "parameterOrder": [ - "project", - "region" + "project" ], "parameters": { "filter": { @@ -41739,22 +43435,15 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" } }, - "path": "projects/{project}/regions/{region}/targetVpnGateways", + "path": "projects/{project}/global/targetHttpsProxies", "response": { - "$ref": "TargetVpnGatewayList" + "$ref": "TargetHttpsProxyList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -41762,15 +43451,14 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "setLabels": { - "description": "Sets the labels on a TargetVpnGateway. To learn more about labels, read theLabeling\nResources documentation.", - "flatPath": "projects/{project}/regions/{region}/targetVpnGateways/{resource}/setLabels", - "httpMethod": "POST", - "id": "compute.targetVpnGateways.setLabels", + "patch": { + "description": "Patches the specified TargetHttpsProxy resource with the data included in\nthe request. This method supports PATCH\nsemantics and usesJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "httpMethod": "PATCH", + "id": "compute.targetHttpsProxies.patch", "parameterOrder": [ "project", - "region", - "resource" + "targetHttpsProxy" ], "parameters": { "project": { @@ -41780,29 +43468,22 @@ "required": true, "type": "string" }, - "region": { - "description": "The region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to patch.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/targetVpnGateways/{resource}/setLabels", + "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", "request": { - "$ref": "RegionSetLabelsRequest" + "$ref": "TargetHttpsProxy" }, "response": { "$ref": "Operation" @@ -41811,85 +43492,56 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - } - } - }, - "urlMaps": { - "methods": { - "aggregatedList": { - "description": "Retrieves the list of all UrlMap resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/urlMaps", - "httpMethod": "GET", - "id": "compute.urlMaps.aggregatedList", + }, + "setCertificateMap": { + "description": "Changes the Certificate Map for TargetHttpsProxy.", + "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setCertificateMap", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setCertificateMap", "parameterOrder": [ - "project" + "project", + "targetHttpsProxy" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, "project": { - "description": "Name of the project scoping this request.", + "description": "Project ID for this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", - "type": "boolean" + "type": "string" }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource whose CertificateMap is\nto be set. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, "type": "string" } }, - "path": "projects/{project}/aggregated/urlMaps", + "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setCertificateMap", + "request": { + "$ref": "TargetHttpsProxiesSetCertificateMapRequest" + }, "response": { - "$ref": "UrlMapsAggregatedList" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "delete": { - "description": "Deletes the specified UrlMap resource.", - "flatPath": "projects/{project}/global/urlMaps/{urlMap}", - "httpMethod": "DELETE", - "id": "compute.urlMaps.delete", + "setQuicOverride": { + "description": "Sets the QUIC override policy for TargetHttpsProxy.", + "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setQuicOverride", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setQuicOverride", "parameterOrder": [ "project", - "urlMap" + "targetHttpsProxy" ], "parameters": { "project": { @@ -41904,15 +43556,17 @@ "location": "query", "type": "string" }, - "urlMap": { - "description": "Name of the UrlMap resource to delete.", + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to set the QUIC override policy for.\nThe name should conform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/urlMaps/{urlMap}", + "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setQuicOverride", + "request": { + "$ref": "TargetHttpsProxiesSetQuicOverrideRequest" + }, "response": { "$ref": "Operation" }, @@ -41921,14 +43575,14 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified UrlMap resource.", - "flatPath": "projects/{project}/global/urlMaps/{urlMap}", - "httpMethod": "GET", - "id": "compute.urlMaps.get", + "setSslCertificates": { + "description": "Replaces SslCertificates for TargetHttpsProxy.", + "flatPath": "projects/{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "httpMethod": "POST", + "id": "compute.targetHttpsProxies.setSslCertificates", "parameterOrder": [ "project", - "urlMap" + "targetHttpsProxy" ], "parameters": { "project": { @@ -41938,31 +43592,39 @@ "required": true, "type": "string" }, - "urlMap": { - "description": "Name of the UrlMap resource to return.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to set an\nSslCertificates resource for.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/urlMaps/{urlMap}", + "path": "projects/{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "request": { + "$ref": "TargetHttpsProxiesSetSslCertificatesRequest" + }, "response": { - "$ref": "UrlMap" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "insert": { - "description": "Creates a UrlMap resource in the specified project using\nthe data included in the request.", - "flatPath": "projects/{project}/global/urlMaps", + "setSslPolicy": { + "description": "Sets the SSL policy for TargetHttpsProxy. The SSL policy specifies the\nserver-side support for SSL features. This affects connections between\nclients and the HTTPS proxy load balancer. They do not affect the\nconnection between the load balancer and the backends.", + "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy", "httpMethod": "POST", - "id": "compute.urlMaps.insert", + "id": "compute.targetHttpsProxies.setSslPolicy", "parameterOrder": [ - "project" + "project", + "targetHttpsProxy" ], "parameters": { "project": { @@ -41976,11 +43638,17 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource whose SSL policy is\nto be set. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "required": true, + "type": "string" } }, - "path": "projects/{project}/global/urlMaps", + "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy", "request": { - "$ref": "UrlMap" + "$ref": "SslPolicyReference" }, "response": { "$ref": "Operation" @@ -41990,14 +43658,14 @@ "https://www.googleapis.com/auth/compute" ] }, - "invalidateCache": { - "description": "Initiates a cache invalidation operation, invalidating the specified path,\nscoped to the specified UrlMap.\n\nFor more information, see [Invalidating cached\ncontent](/cdn/docs/invalidating-cached-content).", - "flatPath": "projects/{project}/global/urlMaps/{urlMap}/invalidateCache", + "setUrlMap": { + "description": "Changes the URL map for TargetHttpsProxy.", + "flatPath": "projects/{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", "httpMethod": "POST", - "id": "compute.urlMaps.invalidateCache", + "id": "compute.targetHttpsProxies.setUrlMap", "parameterOrder": [ "project", - "urlMap" + "targetHttpsProxy" ], "parameters": { "project": { @@ -42012,17 +43680,17 @@ "location": "query", "type": "string" }, - "urlMap": { - "description": "Name of the UrlMap scoping this request.", + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource whose URL map is\nto be set.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/urlMaps/{urlMap}/invalidateCache", + "path": "projects/{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", "request": { - "$ref": "CacheInvalidationRule" + "$ref": "UrlMapReference" }, "response": { "$ref": "Operation" @@ -42031,12 +43699,16 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "list": { - "description": "Retrieves the list of UrlMap resources available to the specified\nproject.", - "flatPath": "projects/{project}/global/urlMaps", + } + } + }, + "targetInstances": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of target instances.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/targetInstances", "httpMethod": "GET", - "id": "compute.urlMaps.list", + "id": "compute.targetInstances.aggregatedList", "parameterOrder": [ "project" ], @@ -42046,6 +43718,11 @@ "location": "query", "type": "string" }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -42075,11 +43752,17 @@ "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/global/urlMaps", + "path": "projects/{project}/aggregated/targetInstances", "response": { - "$ref": "UrlMapList" + "$ref": "TargetInstanceAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -42087,14 +43770,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "patch": { - "description": "Patches the specified UrlMap resource with the data included in the\nrequest. This method supportsPATCH\nsemantics and uses theJSON merge\npatch format and processing rules.", - "flatPath": "projects/{project}/global/urlMaps/{urlMap}", - "httpMethod": "PATCH", - "id": "compute.urlMaps.patch", + "delete": { + "description": "Deletes the specified TargetInstance resource.", + "flatPath": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}", + "httpMethod": "DELETE", + "id": "compute.targetInstances.delete", "parameterOrder": [ "project", - "urlMap" + "zone", + "targetInstance" ], "parameters": { "project": { @@ -42109,18 +43793,22 @@ "location": "query", "type": "string" }, - "urlMap": { - "description": "Name of the UrlMap resource to patch.", + "targetInstance": { + "description": "Name of the TargetInstance resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" } }, - "path": "projects/{project}/global/urlMaps/{urlMap}", - "request": { - "$ref": "UrlMap" - }, + "path": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}", "response": { "$ref": "Operation" }, @@ -42129,14 +43817,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/global/urlMaps/{resource}/testIamPermissions", - "httpMethod": "POST", - "id": "compute.urlMaps.testIamPermissions", + "get": { + "description": "Returns the specified TargetInstance resource.", + "flatPath": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}", + "httpMethod": "GET", + "id": "compute.targetInstances.get", "parameterOrder": [ "project", - "resource" + "zone", + "targetInstance" ], "parameters": { "project": { @@ -42146,20 +43835,24 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "targetInstance": { + "description": "Name of the TargetInstance resource to return.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/global/urlMaps/{resource}/testIamPermissions", - "request": { - "$ref": "TestPermissionsRequest" - }, + "path": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}", "response": { - "$ref": "TestPermissionsResponse" + "$ref": "TargetInstance" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -42167,14 +43860,14 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "update": { - "description": "Updates the specified UrlMap resource with the data included in the\nrequest.", - "flatPath": "projects/{project}/global/urlMaps/{urlMap}", - "httpMethod": "PUT", - "id": "compute.urlMaps.update", + "insert": { + "description": "Creates a TargetInstance resource in the specified project and zone using\nthe data included in the request.", + "flatPath": "projects/{project}/zones/{zone}/targetInstances", + "httpMethod": "POST", + "id": "compute.targetInstances.insert", "parameterOrder": [ "project", - "urlMap" + "zone" ], "parameters": { "project": { @@ -42189,17 +43882,17 @@ "location": "query", "type": "string" }, - "urlMap": { - "description": "Name of the UrlMap resource to update.", + "zone": { + "description": "Name of the zone scoping this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/global/urlMaps/{urlMap}", + "path": "projects/{project}/zones/{zone}/targetInstances", "request": { - "$ref": "UrlMap" + "$ref": "TargetInstance" }, "response": { "$ref": "Operation" @@ -42209,54 +43902,14 @@ "https://www.googleapis.com/auth/compute" ] }, - "validate": { - "description": "Runs static validation for the UrlMap. In particular, the tests of the\nprovided UrlMap will be run. Calling this method does NOT create the\nUrlMap.", - "flatPath": "projects/{project}/global/urlMaps/{urlMap}/validate", - "httpMethod": "POST", - "id": "compute.urlMaps.validate", - "parameterOrder": [ - "project", - "urlMap" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "urlMap": { - "description": "Name of the UrlMap resource to be validated as.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/global/urlMaps/{urlMap}/validate", - "request": { - "$ref": "UrlMapsValidateRequest" - }, - "response": { - "$ref": "UrlMapsValidateResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - } - } - }, - "vpnGateways": { - "methods": { - "aggregatedList": { - "description": "Retrieves an aggregated list of VPN gateways.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/vpnGateways", + "list": { + "description": "Retrieves a list of TargetInstance resources available to the specified\nproject and zone.", + "flatPath": "projects/{project}/zones/{zone}/targetInstances", "httpMethod": "GET", - "id": "compute.vpnGateways.aggregatedList", + "id": "compute.targetInstances.list", "parameterOrder": [ - "project" + "project", + "zone" ], "parameters": { "filter": { @@ -42264,11 +43917,6 @@ "location": "query", "type": "string" }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -42299,16 +43947,17 @@ "location": "query", "type": "boolean" }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, "type": "string" } }, - "path": "projects/{project}/aggregated/vpnGateways", + "path": "projects/{project}/zones/{zone}/targetInstances", "response": { - "$ref": "VpnGatewayAggregatedList" + "$ref": "TargetInstanceList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -42316,15 +43965,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "delete": { - "description": "Deletes the specified VPN gateway.", - "flatPath": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}", - "httpMethod": "DELETE", - "id": "compute.vpnGateways.delete", + "setSecurityPolicy": { + "description": "Sets the Google Cloud Armor security policy for the specified target\ninstance. For more information, seeGoogle\nCloud Armor Overview", + "flatPath": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}/setSecurityPolicy", + "httpMethod": "POST", + "id": "compute.targetInstances.setSecurityPolicy", "parameterOrder": [ "project", - "region", - "vpnGateway" + "zone", + "targetInstance" ], "parameters": { "project": { @@ -42334,27 +43983,29 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "requestId": { "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "vpnGateway": { - "description": "Name of the VPN gateway to delete.", + "targetInstance": { + "description": "Name of the TargetInstance resource to which the security policy should be\nset. The name should conform to RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}", + "path": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}/setSecurityPolicy", + "request": { + "$ref": "SecurityPolicyReference" + }, "response": { "$ref": "Operation" }, @@ -42363,15 +44014,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified VPN gateway.", - "flatPath": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}", - "httpMethod": "GET", - "id": "compute.vpnGateways.get", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/zones/{zone}/targetInstances/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.targetInstances.testIamPermissions", "parameterOrder": [ "project", - "region", - "vpnGateway" + "zone", + "resource" ], "parameters": { "project": { @@ -42381,40 +44032,47 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", + "resource": { + "description": "Name or id of the resource for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "vpnGateway": { - "description": "Name of the VPN gateway to return.", + "zone": { + "description": "The name of the zone for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}", + "path": "projects/{project}/zones/{zone}/targetInstances/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, "response": { - "$ref": "VpnGateway" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "getStatus": { - "description": "Returns the status for the specified VPN gateway.", - "flatPath": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}/getStatus", - "httpMethod": "GET", - "id": "compute.vpnGateways.getStatus", + } + } + }, + "targetPools": { + "methods": { + "addHealthCheck": { + "description": "Adds health check URLs to a target pool.", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck", + "httpMethod": "POST", + "id": "compute.targetPools.addHealthCheck", "parameterOrder": [ "project", "region", - "vpnGateway" + "targetPool" ], "parameters": { "project": { @@ -42425,38 +44083,46 @@ "type": "string" }, "region": { - "description": "Name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "vpnGateway": { - "description": "Name of the VPN gateway to return.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the target pool to add a health check to.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}/getStatus", + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck", + "request": { + "$ref": "TargetPoolsAddHealthCheckRequest" + }, "response": { - "$ref": "VpnGatewaysGetStatusResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "insert": { - "description": "Creates a VPN gateway in the specified project and region using\nthe data included in the request.", - "flatPath": "projects/{project}/regions/{region}/vpnGateways", + "addInstance": { + "description": "Adds an instance to a target pool.", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/addInstance", "httpMethod": "POST", - "id": "compute.vpnGateways.insert", + "id": "compute.targetPools.addInstance", "parameterOrder": [ "project", - "region" + "region", + "targetPool" ], "parameters": { "project": { @@ -42467,7 +44133,7 @@ "type": "string" }, "region": { - "description": "Name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -42477,11 +44143,18 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to add instances to.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/vpnGateways", + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/addInstance", "request": { - "$ref": "VpnGateway" + "$ref": "TargetPoolsAddInstanceRequest" }, "response": { "$ref": "Operation" @@ -42491,14 +44164,13 @@ "https://www.googleapis.com/auth/compute" ] }, - "list": { - "description": "Retrieves a list of VPN gateways available to the specified\nproject and region.", - "flatPath": "projects/{project}/regions/{region}/vpnGateways", + "aggregatedList": { + "description": "Retrieves an aggregated list of target pools.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/targetPools", "httpMethod": "GET", - "id": "compute.vpnGateways.list", + "id": "compute.targetPools.aggregatedList", "parameterOrder": [ - "project", - "region" + "project" ], "parameters": { "filter": { @@ -42506,6 +44178,11 @@ "location": "query", "type": "string" }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -42531,22 +44208,21 @@ "required": true, "type": "string" }, - "region": { - "description": "Name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" } }, - "path": "projects/{project}/regions/{region}/vpnGateways", + "path": "projects/{project}/aggregated/targetPools", "response": { - "$ref": "VpnGatewayList" + "$ref": "TargetPoolAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -42554,15 +44230,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "setLabels": { - "description": "Sets the labels on a VpnGateway. To learn more about labels, read theLabeling\nResources documentation.", - "flatPath": "projects/{project}/regions/{region}/vpnGateways/{resource}/setLabels", - "httpMethod": "POST", - "id": "compute.vpnGateways.setLabels", + "delete": { + "description": "Deletes the specified target pool.", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}", + "httpMethod": "DELETE", + "id": "compute.targetPools.delete", "parameterOrder": [ "project", "region", - "resource" + "targetPool" ], "parameters": { "project": { @@ -42573,7 +44249,7 @@ "type": "string" }, "region": { - "description": "The region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -42584,18 +44260,15 @@ "location": "query", "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "targetPool": { + "description": "Name of the TargetPool resource to delete.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/vpnGateways/{resource}/setLabels", - "request": { - "$ref": "RegionSetLabelsRequest" - }, + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}", "response": { "$ref": "Operation" }, @@ -42604,15 +44277,58 @@ "https://www.googleapis.com/auth/compute" ] }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/regions/{region}/vpnGateways/{resource}/testIamPermissions", + "get": { + "description": "Returns the specified target pool.", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}", + "httpMethod": "GET", + "id": "compute.targetPools.get", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}", + "response": { + "$ref": "TargetPool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "description": "Gets the most recent health check results for each IP for the\ninstance that is referenced by the given target pool.", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/getHealth", "httpMethod": "POST", - "id": "compute.vpnGateways.testIamPermissions", + "id": "compute.targetPools.getHealth", "parameterOrder": [ "project", "region", - "resource" + "targetPool" ], "parameters": { "project": { @@ -42623,44 +44339,83 @@ "type": "string" }, "region": { - "description": "The name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "targetPool": { + "description": "Name of the TargetPool resource to which the queried instance belongs.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/vpnGateways/{resource}/testIamPermissions", + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/getHealth", "request": { - "$ref": "TestPermissionsRequest" + "$ref": "InstanceReference" }, "response": { - "$ref": "TestPermissionsResponse" + "$ref": "TargetPoolInstanceHealth" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "vpnTunnels": { - "methods": { - "aggregatedList": { - "description": "Retrieves an aggregated list of VPN tunnels.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/vpnTunnels", + }, + "insert": { + "description": "Creates a target pool in the specified project and region using\nthe data included in the request.", + "flatPath": "projects/{project}/regions/{region}/targetPools", + "httpMethod": "POST", + "id": "compute.targetPools.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/targetPools", + "request": { + "$ref": "TargetPool" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of target pools available to the specified\nproject and region.", + "flatPath": "projects/{project}/regions/{region}/targetPools", "httpMethod": "GET", - "id": "compute.vpnTunnels.aggregatedList", + "id": "compute.targetPools.list", "parameterOrder": [ - "project" + "project", + "region" ], "parameters": { "filter": { @@ -42668,11 +44423,6 @@ "location": "query", "type": "string" }, - "includeAllScopes": { - "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", - "location": "query", - "type": "boolean" - }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -42698,21 +44448,22 @@ "required": true, "type": "string" }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, "returnPartialSuccess": { "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", "location": "query", "type": "boolean" - }, - "serviceProjectNumber": { - "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", - "format": "int64", - "location": "query", - "type": "string" } }, - "path": "projects/{project}/aggregated/vpnTunnels", + "path": "projects/{project}/regions/{region}/targetPools", "response": { - "$ref": "VpnTunnelAggregatedList" + "$ref": "TargetPoolList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -42720,15 +44471,15 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "delete": { - "description": "Deletes the specified VpnTunnel resource.", - "flatPath": "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}", - "httpMethod": "DELETE", - "id": "compute.vpnTunnels.delete", + "removeHealthCheck": { + "description": "Removes health check URL from a target pool.", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", + "httpMethod": "POST", + "id": "compute.targetPools.removeHealthCheck", "parameterOrder": [ "project", "region", - "vpnTunnel" + "targetPool" ], "parameters": { "project": { @@ -42750,15 +44501,18 @@ "location": "query", "type": "string" }, - "vpnTunnel": { - "description": "Name of the VpnTunnel resource to delete.", + "targetPool": { + "description": "Name of the target pool to remove health checks from.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", + "request": { + "$ref": "TargetPoolsRemoveHealthCheckRequest" + }, "response": { "$ref": "Operation" }, @@ -42767,15 +44521,15 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Returns the specified VpnTunnel resource.", - "flatPath": "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}", - "httpMethod": "GET", - "id": "compute.vpnTunnels.get", + "removeInstance": { + "description": "Removes instance URL from a target pool.", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/removeInstance", + "httpMethod": "POST", + "id": "compute.targetPools.removeInstance", "parameterOrder": [ "project", "region", - "vpnTunnel" + "targetPool" ], "parameters": { "project": { @@ -42786,40 +44540,54 @@ "type": "string" }, "region": { - "description": "Name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "vpnTunnel": { - "description": "Name of the VpnTunnel resource to return.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to remove instances from.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/removeInstance", + "request": { + "$ref": "TargetPoolsRemoveInstanceRequest" + }, "response": { - "$ref": "VpnTunnel" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "insert": { - "description": "Creates a VpnTunnel resource in the specified project and region using\nthe data included in the request.", - "flatPath": "projects/{project}/regions/{region}/vpnTunnels", + "setBackup": { + "description": "Changes a backup target pool's configurations.", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/setBackup", "httpMethod": "POST", - "id": "compute.vpnTunnels.insert", + "id": "compute.targetPools.setBackup", "parameterOrder": [ "project", - "region" + "region", + "targetPool" ], "parameters": { + "failoverRatio": { + "description": "New failoverRatio value for the target pool.", + "format": "float", + "location": "query", + "type": "number" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -42828,7 +44596,7 @@ "type": "string" }, "region": { - "description": "Name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, @@ -42838,11 +44606,18 @@ "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to set a backup pool for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/vpnTunnels", + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/setBackup", "request": { - "$ref": "VpnTunnel" + "$ref": "TargetReference" }, "response": { "$ref": "Operation" @@ -42852,39 +44627,17 @@ "https://www.googleapis.com/auth/compute" ] }, - "list": { - "description": "Retrieves a list of VpnTunnel resources contained in the specified\nproject and region.", - "flatPath": "projects/{project}/regions/{region}/vpnTunnels", - "httpMethod": "GET", - "id": "compute.vpnTunnels.list", + "setSecurityPolicy": { + "description": "Sets the Google Cloud Armor security policy for the specified target pool.\nFor more information, seeGoogle\nCloud Armor Overview", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/setSecurityPolicy", + "httpMethod": "POST", + "id": "compute.targetPools.setSecurityPolicy", "parameterOrder": [ "project", - "region" + "region", + "targetPool" ], "parameters": { - "filter": { - "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", - "location": "query", - "type": "string" - }, - "maxResults": { - "default": "500", - "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", - "format": "uint32", - "location": "query", - "minimum": "0", - "type": "integer" - }, - "orderBy": { - "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", - "location": "query", - "type": "string" - }, - "pageToken": { - "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", - "location": "query", - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -42893,33 +44646,41 @@ "type": "string" }, "region": { - "description": "Name of the region for this request.", + "description": "Name of the region scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "returnPartialSuccess": { - "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", - "type": "boolean" + "type": "string" + }, + "targetPool": { + "description": "Name of the TargetPool resource to which the security policy should be\nset. The name should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" } }, - "path": "projects/{project}/regions/{region}/vpnTunnels", + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/setSecurityPolicy", + "request": { + "$ref": "SecurityPolicyReference" + }, "response": { - "$ref": "VpnTunnelList" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "setLabels": { - "description": "Sets the labels on a VpnTunnel. To learn more about labels, read theLabeling\nResources documentation.", - "flatPath": "projects/{project}/regions/{region}/vpnTunnels/{resource}/setLabels", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/targetPools/{resource}/testIamPermissions", "httpMethod": "POST", - "id": "compute.vpnTunnels.setLabels", + "id": "compute.targetPools.testIamPermissions", "parameterOrder": [ "project", "region", @@ -42934,17 +44695,12 @@ "type": "string" }, "region": { - "description": "The region for this request.", + "description": "The name of the region for this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, "resource": { "description": "Name or id of the resource for this request.", "location": "path", @@ -42953,38 +44709,33 @@ "type": "string" } }, - "path": "projects/{project}/regions/{region}/vpnTunnels/{resource}/setLabels", + "path": "projects/{project}/regions/{region}/targetPools/{resource}/testIamPermissions", "request": { - "$ref": "RegionSetLabelsRequest" + "$ref": "TestPermissionsRequest" }, "response": { - "$ref": "Operation" + "$ref": "TestPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] } } }, - "wireGroups": { + "targetSslProxies": { "methods": { "delete": { - "description": "Deletes the specified wire group in the given scope.", - "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "description": "Deletes the specified TargetSslProxy resource.", + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}", "httpMethod": "DELETE", - "id": "compute.wireGroups.delete", + "id": "compute.targetSslProxies.delete", "parameterOrder": [ "project", - "crossSiteNetwork", - "wireGroup" + "targetSslProxy" ], "parameters": { - "crossSiteNetwork": { - "location": "path", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -42993,18 +44744,19 @@ "type": "string" }, "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).\nend_interface: MixerMutationRequestBuilder", + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "wireGroup": { - "description": "Name of the wire group resource to delete.", + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource to delete.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}", "response": { "$ref": "Operation" }, @@ -43014,21 +44766,15 @@ ] }, "get": { - "description": "Gets the specified wire group resource in the given scope.", - "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "description": "Returns the specified TargetSslProxy resource.", + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}", "httpMethod": "GET", - "id": "compute.wireGroups.get", + "id": "compute.targetSslProxies.get", "parameterOrder": [ "project", - "crossSiteNetwork", - "wireGroup" + "targetSslProxy" ], "parameters": { - "crossSiteNetwork": { - "location": "path", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -43036,16 +44782,17 @@ "required": true, "type": "string" }, - "wireGroup": { - "description": "Name of the wire group resource to return.", + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource to return.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}", "response": { - "$ref": "WireGroup" + "$ref": "TargetSslProxy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -43054,20 +44801,14 @@ ] }, "insert": { - "description": "Creates a wire group in the specified project in the given scope\nusing the parameters that are included in the request.", - "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", + "description": "Creates a TargetSslProxy resource in the specified project using\nthe data included in the request.", + "flatPath": "projects/{project}/global/targetSslProxies", "httpMethod": "POST", - "id": "compute.wireGroups.insert", + "id": "compute.targetSslProxies.insert", "parameterOrder": [ - "project", - "crossSiteNetwork" + "project" ], "parameters": { - "crossSiteNetwork": { - "location": "path", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -43076,19 +44817,14 @@ "type": "string" }, "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).\nend_interface: MixerMutationRequestBuilder", + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" - }, - "validateOnly": { - "description": "[Input Only] Validate the new configuration, but don't create it.", - "location": "query", - "type": "boolean" } }, - "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", + "path": "projects/{project}/global/targetSslProxies", "request": { - "$ref": "WireGroup" + "$ref": "TargetSslProxy" }, "response": { "$ref": "Operation" @@ -43099,20 +44835,14 @@ ] }, "list": { - "description": "Lists the wire groups for a project in the given scope.", - "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", + "description": "Retrieves the list of TargetSslProxy resources\navailable to the specified project.", + "flatPath": "projects/{project}/global/targetSslProxies", "httpMethod": "GET", - "id": "compute.wireGroups.list", + "id": "compute.targetSslProxies.list", "parameterOrder": [ - "project", - "crossSiteNetwork" + "project" ], "parameters": { - "crossSiteNetwork": { - "location": "path", - "required": true, - "type": "string" - }, "filter": { "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", "location": "query", @@ -43149,9 +44879,9 @@ "type": "boolean" } }, - "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", + "path": "projects/{project}/global/targetSslProxies", "response": { - "$ref": "WireGroupList" + "$ref": "TargetSslProxyList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -43159,22 +44889,16 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "patch": { - "description": "Updates the specified wire group resource with the data included in the\nrequest. This method supportsPATCH\nsemantics and usesJSON merge\npatch format and processing rules.", - "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", - "httpMethod": "PATCH", - "id": "compute.wireGroups.patch", + "setBackendService": { + "description": "Changes the BackendService for TargetSslProxy.", + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setBackendService", "parameterOrder": [ "project", - "crossSiteNetwork", - "wireGroup" + "targetSslProxy" ], "parameters": { - "crossSiteNetwork": { - "location": "path", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -43183,31 +44907,21 @@ "type": "string" }, "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).\nend_interface: MixerMutationRequestBuilder", - "location": "query", - "type": "string" - }, - "updateMask": { - "description": "update_mask indicates fields to be updated as part of this request.", - "format": "google-fieldmask", + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, - "validateOnly": { - "description": "[Input Only] Validate the new configuration, but don't update it.", - "location": "query", - "type": "boolean" - }, - "wireGroup": { - "description": "Name of the WireGroups resource to patch.", + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose BackendService resource\nis to be set.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", "request": { - "$ref": "WireGroup" + "$ref": "TargetSslProxiesSetBackendServiceRequest" }, "response": { "$ref": "Operation" @@ -43216,29 +44930,17 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - } - } - }, - "zoneOperations": { - "methods": { - "delete": { - "description": "Deletes the specified zone-specific Operations resource.", - "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", - "httpMethod": "DELETE", - "id": "compute.zoneOperations.delete", + }, + "setCertificateMap": { + "description": "Changes the Certificate Map for TargetSslProxy.", + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setCertificateMap", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setCertificateMap", "parameterOrder": [ "project", - "zone", - "operation" + "targetSslProxy" ], "parameters": { - "operation": { - "description": "Name of the Operations resource to delete, or its unique numeric\nidentifier.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -43246,38 +44948,124 @@ "required": true, "type": "string" }, - "zone": { - "description": "Name of the zone for this request.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose CertificateMap is\nto be set. The name must be 1-63 characters long, and comply with RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/operations/{operation}", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setCertificateMap", + "request": { + "$ref": "TargetSslProxiesSetCertificateMapRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" ] }, - "get": { - "description": "Retrieves the specified zone-specific Operations resource.", - "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", - "httpMethod": "GET", - "id": "compute.zoneOperations.get", + "setProxyHeader": { + "description": "Changes the ProxyHeaderType for TargetSslProxy.", + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setProxyHeader", "parameterOrder": [ "project", - "zone", - "operation" + "targetSslProxy" ], "parameters": { - "operation": { - "description": "Name of the Operations resource to return, or its unique numeric\nidentifier.", + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose ProxyHeader is to be set.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" + } + }, + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", + "request": { + "$ref": "TargetSslProxiesSetProxyHeaderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslCertificates": { + "description": "Changes SslCertificates for TargetSslProxy.", + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setSslCertificates", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose SslCertificate resource\nis to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", + "request": { + "$ref": "TargetSslProxiesSetSslCertificatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslPolicy": { + "description": "Sets the SSL policy for TargetSslProxy. The SSL policy specifies the\nserver-side support for SSL features. This affects connections between\nclients and the load balancer. They do not affect the\nconnection between the load balancer and the backends.", + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy", + "httpMethod": "POST", + "id": "compute.targetSslProxies.setSslPolicy", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { "project": { "description": "Project ID for this request.", "location": "path", @@ -43285,32 +45073,79 @@ "required": true, "type": "string" }, - "zone": { - "description": "Name of the zone for this request.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource whose SSL policy is\nto be set. The name must be 1-63 characters long, and comply with RFC1035.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/operations/{operation}", + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy", + "request": { + "$ref": "SslPolicyReference" + }, "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/global/targetSslProxies/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.targetSslProxies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/targetSslProxies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "list": { - "description": "Retrieves a list of Operation resources contained within\nthe specified zone.", - "flatPath": "projects/{project}/zones/{zone}/operations", + } + } + }, + "targetTcpProxies": { + "methods": { + "aggregatedList": { + "description": "Retrieves the list of all TargetTcpProxy resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/targetTcpProxies", "httpMethod": "GET", - "id": "compute.zoneOperations.list", + "id": "compute.targetTcpProxies.aggregatedList", "parameterOrder": [ - "project", - "zone" + "project" ], "parameters": { "filter": { @@ -43318,6 +45153,11 @@ "location": "query", "type": "string" }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, "maxResults": { "default": "500", "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", @@ -43337,7 +45177,7 @@ "type": "string" }, "project": { - "description": "Project ID for this request.", + "description": "Name of the project scoping this request.", "location": "path", "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, @@ -43348,17 +45188,16 @@ "location": "query", "type": "boolean" }, - "zone": { - "description": "Name of the zone for request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", "type": "string" } }, - "path": "projects/{project}/zones/{zone}/operations", + "path": "projects/{project}/aggregated/targetTcpProxies", "response": { - "$ref": "OperationList" + "$ref": "TargetTcpProxyAggregatedList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -43366,24 +45205,16 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, - "wait": { - "description": "Waits for the specified Operation resource to return as `DONE`\nor for the request to approach the 2 minute deadline, and retrieves the\nspecified Operation resource. This method waits for no more than the\n2 minutes and then returns the current state of the\noperation, which might be `DONE` or still in progress.\n\nThis method is called on a best-effort basis. Specifically:\n \n \n - In uncommon cases, when the server is overloaded, the request might\n return before the default deadline is reached, or might return after zero\n seconds.\n - If the default deadline is reached, there is no guarantee that the\n operation is actually done when the method returns. Be prepared to retry\n if the operation is not `DONE`.", - "flatPath": "projects/{project}/zones/{zone}/operations/{operation}/wait", - "httpMethod": "POST", - "id": "compute.zoneOperations.wait", + "delete": { + "description": "Deletes the specified TargetTcpProxy resource.", + "flatPath": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}", + "httpMethod": "DELETE", + "id": "compute.targetTcpProxies.delete", "parameterOrder": [ "project", - "zone", - "operation" + "targetTcpProxy" ], "parameters": { - "operation": { - "description": "Name of the Operations resource to return, or its unique numeric\nidentifier.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -43391,36 +45222,36 @@ "required": true, "type": "string" }, - "zone": { - "description": "Name of the zone for this request.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource to delete.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/operations/{operation}/wait", + "path": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}", "response": { "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] - } - } - }, - "zones": { - "methods": { + }, "get": { - "description": "Returns the specified Zone resource.", - "flatPath": "projects/{project}/zones/{zone}", + "description": "Returns the specified TargetTcpProxy resource.", + "flatPath": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}", "httpMethod": "GET", - "id": "compute.zones.get", + "id": "compute.targetTcpProxies.get", "parameterOrder": [ "project", - "zone" + "targetTcpProxy" ], "parameters": { "project": { @@ -43430,17 +45261,17 @@ "required": true, "type": "string" }, - "zone": { - "description": "Name of the zone resource to return.", + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource to return.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}", + "path": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}", "response": { - "$ref": "Zone" + "$ref": "TargetTcpProxy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -43448,11 +45279,45 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "insert": { + "description": "Creates a TargetTcpProxy resource in the specified project using\nthe data included in the request.", + "flatPath": "projects/{project}/global/targetTcpProxies", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/targetTcpProxies", + "request": { + "$ref": "TargetTcpProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "list": { - "description": "Retrieves the list of Zone resources available to the specified project.", - "flatPath": "projects/{project}/zones", + "description": "Retrieves the list of TargetTcpProxy resources\navailable to the specified project.", + "flatPath": "projects/{project}/global/targetTcpProxies", "httpMethod": "GET", - "id": "compute.zones.list", + "id": "compute.targetTcpProxies.list", "parameterOrder": [ "project" ], @@ -43493,219 +45358,4845 @@ "type": "boolean" } }, - "path": "projects/{project}/zones", + "path": "projects/{project}/global/targetTcpProxies", "response": { - "$ref": "ZoneList" + "$ref": "TargetTcpProxyList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - } - } - } - }, - "revision": "20260213", - "rootUrl": "https://compute.googleapis.com/", - "schemas": { - "AWSV4Signature": { - "description": "Contains the configurations necessary to generate a signature for access to\nprivate storage buckets that support Signature Version 4 for authentication.\nThe service name for generating the authentication header will always default\nto 's3'.", - "id": "AWSV4Signature", - "properties": { - "accessKey": { - "description": "The access key used for s3 bucket authentication. Required for updating or\ncreating a backend that uses AWS v4 signature authentication, but will not\nbe returned as part of the configuration when queried with a REST API GET\nrequest.\n\n@InputOnly", - "type": "string" - }, - "accessKeyId": { - "description": "The identifier of an access key used for s3 bucket authentication.", - "type": "string" }, - "accessKeyVersion": { - "description": "The optional version identifier for the access key. You can use this to\nkeep track of different iterations of your access key.", - "type": "string" - }, - "originRegion": { - "description": "The name of the cloud region of your origin. This is a free-form field with\nthe name of the region your cloud uses to host your origin. For example,\n\"us-east-1\" for AWS or \"us-ashburn-1\" for OCI.", - "type": "string" - } - }, - "type": "object" - }, - "AcceleratorConfig": { - "description": "A specification of the type and number of accelerator cards attached to the\ninstance.", - "id": "AcceleratorConfig", - "properties": { - "acceleratorCount": { - "description": "The number of the guest accelerator cards exposed to this instance.", - "format": "int32", - "type": "integer" + "setBackendService": { + "description": "Changes the BackendService for TargetTcpProxy.", + "flatPath": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.setBackendService", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource whose BackendService resource\nis to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService", + "request": { + "$ref": "TargetTcpProxiesSetBackendServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] }, - "acceleratorType": { - "description": "Full or partial URL of the accelerator type resource to attach to this\ninstance. For example:projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100\nIf you are creating an instance template, specify only the\naccelerator name.\nSee GPUs on Compute Engine\nfor a full list of accelerator types.", - "type": "string" - } - }, - "type": "object" - }, - "AcceleratorTopologiesInfo": { - "description": "Info for accelerator topologies within a densely packed reservation.", - "id": "AcceleratorTopologiesInfo", - "properties": { - "acceleratorTopologyInfos": { - "description": "Info for each accelerator topology.", - "items": { - "$ref": "AcceleratorTopologiesInfoAcceleratorTopologyInfo" + "setProxyHeader": { + "description": "Changes the ProxyHeaderType for TargetTcpProxy.", + "flatPath": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.setProxyHeader", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource whose ProxyHeader is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } }, - "type": "array" - } - }, - "type": "object" - }, - "AcceleratorTopologiesInfoAcceleratorTopologyInfo": { - "description": "Info for a slice of a given topology.", - "id": "AcceleratorTopologiesInfoAcceleratorTopologyInfo", - "properties": { - "acceleratorTopology": { - "description": "The accelerator topology.", - "type": "string" + "path": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader", + "request": { + "$ref": "TargetTcpProxiesSetProxyHeaderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] }, - "infoPerTopologyStates": { - "description": "Info for each topology state.", - "items": { - "$ref": "AcceleratorTopologiesInfoAcceleratorTopologyInfoInfoPerTopologyState" + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/global/targetTcpProxies/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.targetTcpProxies.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } }, - "type": "array" + "path": "projects/{project}/global/targetTcpProxies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] } - }, - "type": "object" + } }, - "AcceleratorTopologiesInfoAcceleratorTopologyInfoInfoPerTopologyState": { - "description": "Info for each topology state.", - "id": "AcceleratorTopologiesInfoAcceleratorTopologyInfoInfoPerTopologyState", - "properties": { - "count": { - "description": "The number of accelerator topologies in this state.", - "format": "int32", - "type": "integer" - }, - "state": { - "description": "The state of the accelerator topology.", - "enum": [ - "AVAILABLE", - "DEGRADED", - "RUNNING", - "TOPOLOGY_STATE_UNSPECIFIED", - "UNHEALTHY" + "targetVpnGateways": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of target VPN gateways.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/targetVpnGateways", + "httpMethod": "GET", + "id": "compute.targetVpnGateways.aggregatedList", + "parameterOrder": [ + "project" ], - "enumDeprecated": [ - false, - false, + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/aggregated/targetVpnGateways", + "response": { + "$ref": "TargetVpnGatewayAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified target VPN gateway.", + "flatPath": "projects/{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "httpMethod": "DELETE", + "id": "compute.targetVpnGateways.delete", + "parameterOrder": [ + "project", + "region", + "targetVpnGateway" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetVpnGateway": { + "description": "Name of the target VPN gateway to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified target VPN gateway.", + "flatPath": "projects/{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "httpMethod": "GET", + "id": "compute.targetVpnGateways.get", + "parameterOrder": [ + "project", + "region", + "targetVpnGateway" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "targetVpnGateway": { + "description": "Name of the target VPN gateway to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "response": { + "$ref": "TargetVpnGateway" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a target VPN gateway in the specified project and region using\nthe data included in the request.", + "flatPath": "projects/{project}/regions/{region}/targetVpnGateways", + "httpMethod": "POST", + "id": "compute.targetVpnGateways.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/targetVpnGateways", + "request": { + "$ref": "TargetVpnGateway" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of target VPN gateways available to the specified\nproject and region.", + "flatPath": "projects/{project}/regions/{region}/targetVpnGateways", + "httpMethod": "GET", + "id": "compute.targetVpnGateways.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/targetVpnGateways", + "response": { + "$ref": "TargetVpnGatewayList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on a TargetVpnGateway. To learn more about labels, read theLabeling\nResources documentation.", + "flatPath": "projects/{project}/regions/{region}/targetVpnGateways/{resource}/setLabels", + "httpMethod": "POST", + "id": "compute.targetVpnGateways.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/targetVpnGateways/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "urlMaps": { + "methods": { + "aggregatedList": { + "description": "Retrieves the list of all UrlMap resources, regional and global,\navailable to the specified project.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/urlMaps", + "httpMethod": "GET", + "id": "compute.urlMaps.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/aggregated/urlMaps", + "response": { + "$ref": "UrlMapsAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified UrlMap resource.", + "flatPath": "projects/{project}/global/urlMaps/{urlMap}", + "httpMethod": "DELETE", + "id": "compute.urlMaps.delete", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/urlMaps/{urlMap}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified UrlMap resource.", + "flatPath": "projects/{project}/global/urlMaps/{urlMap}", + "httpMethod": "GET", + "id": "compute.urlMaps.get", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/urlMaps/{urlMap}", + "response": { + "$ref": "UrlMap" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a UrlMap resource in the specified project using\nthe data included in the request.", + "flatPath": "projects/{project}/global/urlMaps", + "httpMethod": "POST", + "id": "compute.urlMaps.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/urlMaps", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "invalidateCache": { + "description": "Initiates a cache invalidation operation, invalidating the specified path,\nscoped to the specified UrlMap.\n\nFor more information, see [Invalidating cached\ncontent](/cdn/docs/invalidating-cached-content).", + "flatPath": "projects/{project}/global/urlMaps/{urlMap}/invalidateCache", + "httpMethod": "POST", + "id": "compute.urlMaps.invalidateCache", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/urlMaps/{urlMap}/invalidateCache", + "request": { + "$ref": "CacheInvalidationRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of UrlMap resources available to the specified\nproject.", + "flatPath": "projects/{project}/global/urlMaps", + "httpMethod": "GET", + "id": "compute.urlMaps.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/urlMaps", + "response": { + "$ref": "UrlMapList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified UrlMap resource with the data included in the\nrequest. This method supportsPATCH\nsemantics and uses theJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/global/urlMaps/{urlMap}", + "httpMethod": "PATCH", + "id": "compute.urlMaps.patch", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/urlMaps/{urlMap}", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/global/urlMaps/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.urlMaps.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/urlMaps/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Updates the specified UrlMap resource with the data included in the\nrequest.", + "flatPath": "projects/{project}/global/urlMaps/{urlMap}", + "httpMethod": "PUT", + "id": "compute.urlMaps.update", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/urlMaps/{urlMap}", + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "validate": { + "description": "Runs static validation for the UrlMap. In particular, the tests of the\nprovided UrlMap will be run. Calling this method does NOT create the\nUrlMap.", + "flatPath": "projects/{project}/global/urlMaps/{urlMap}/validate", + "httpMethod": "POST", + "id": "compute.urlMaps.validate", + "parameterOrder": [ + "project", + "urlMap" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to be validated as.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/urlMaps/{urlMap}/validate", + "request": { + "$ref": "UrlMapsValidateRequest" + }, + "response": { + "$ref": "UrlMapsValidateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "vpnGateways": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of VPN gateways.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/vpnGateways", + "httpMethod": "GET", + "id": "compute.vpnGateways.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/aggregated/vpnGateways", + "response": { + "$ref": "VpnGatewayAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified VPN gateway.", + "flatPath": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}", + "httpMethod": "DELETE", + "id": "compute.vpnGateways.delete", + "parameterOrder": [ + "project", + "region", + "vpnGateway" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vpnGateway": { + "description": "Name of the VPN gateway to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified VPN gateway.", + "flatPath": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}", + "httpMethod": "GET", + "id": "compute.vpnGateways.get", + "parameterOrder": [ + "project", + "region", + "vpnGateway" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "vpnGateway": { + "description": "Name of the VPN gateway to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}", + "response": { + "$ref": "VpnGateway" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getStatus": { + "description": "Returns the status for the specified VPN gateway.", + "flatPath": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}/getStatus", + "httpMethod": "GET", + "id": "compute.vpnGateways.getStatus", + "parameterOrder": [ + "project", + "region", + "vpnGateway" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "vpnGateway": { + "description": "Name of the VPN gateway to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}/getStatus", + "response": { + "$ref": "VpnGatewaysGetStatusResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a VPN gateway in the specified project and region using\nthe data included in the request.", + "flatPath": "projects/{project}/regions/{region}/vpnGateways", + "httpMethod": "POST", + "id": "compute.vpnGateways.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/vpnGateways", + "request": { + "$ref": "VpnGateway" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of VPN gateways available to the specified\nproject and region.", + "flatPath": "projects/{project}/regions/{region}/vpnGateways", + "httpMethod": "GET", + "id": "compute.vpnGateways.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/vpnGateways", + "response": { + "$ref": "VpnGatewayList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on a VpnGateway. To learn more about labels, read theLabeling\nResources documentation.", + "flatPath": "projects/{project}/regions/{region}/vpnGateways/{resource}/setLabels", + "httpMethod": "POST", + "id": "compute.vpnGateways.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/vpnGateways/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/vpnGateways/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.vpnGateways.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/vpnGateways/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "vpnTunnels": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of VPN tunnels.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/vpnTunnels", + "httpMethod": "GET", + "id": "compute.vpnTunnels.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/aggregated/vpnTunnels", + "response": { + "$ref": "VpnTunnelAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified VpnTunnel resource.", + "flatPath": "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "httpMethod": "DELETE", + "id": "compute.vpnTunnels.delete", + "parameterOrder": [ + "project", + "region", + "vpnTunnel" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vpnTunnel": { + "description": "Name of the VpnTunnel resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified VpnTunnel resource.", + "flatPath": "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "httpMethod": "GET", + "id": "compute.vpnTunnels.get", + "parameterOrder": [ + "project", + "region", + "vpnTunnel" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "vpnTunnel": { + "description": "Name of the VpnTunnel resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "response": { + "$ref": "VpnTunnel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a VpnTunnel resource in the specified project and region using\nthe data included in the request.", + "flatPath": "projects/{project}/regions/{region}/vpnTunnels", + "httpMethod": "POST", + "id": "compute.vpnTunnels.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/vpnTunnels", + "request": { + "$ref": "VpnTunnel" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves a list of VpnTunnel resources contained in the specified\nproject and region.", + "flatPath": "projects/{project}/regions/{region}/vpnTunnels", + "httpMethod": "GET", + "id": "compute.vpnTunnels.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/vpnTunnels", + "response": { + "$ref": "VpnTunnelList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "description": "Sets the labels on a VpnTunnel. To learn more about labels, read theLabeling\nResources documentation.", + "flatPath": "projects/{project}/regions/{region}/vpnTunnels/{resource}/setLabels", + "httpMethod": "POST", + "id": "compute.vpnTunnels.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/vpnTunnels/{resource}/setLabels", + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "wireGroups": { + "methods": { + "delete": { + "description": "Deletes the specified wire group in the given scope.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "httpMethod": "DELETE", + "id": "compute.wireGroups.delete", + "parameterOrder": [ + "project", + "crossSiteNetwork", + "wireGroup" + ], + "parameters": { + "crossSiteNetwork": { + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).\nend_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "wireGroup": { + "description": "Name of the wire group resource to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Gets the specified wire group resource in the given scope.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "httpMethod": "GET", + "id": "compute.wireGroups.get", + "parameterOrder": [ + "project", + "crossSiteNetwork", + "wireGroup" + ], + "parameters": { + "crossSiteNetwork": { + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "wireGroup": { + "description": "Name of the wire group resource to return.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "response": { + "$ref": "WireGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a wire group in the specified project in the given scope\nusing the parameters that are included in the request.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", + "httpMethod": "POST", + "id": "compute.wireGroups.insert", + "parameterOrder": [ + "project", + "crossSiteNetwork" + ], + "parameters": { + "crossSiteNetwork": { + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).\nend_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "[Input Only] Validate the new configuration, but don't create it.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", + "request": { + "$ref": "WireGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Lists the wire groups for a project in the given scope.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", + "httpMethod": "GET", + "id": "compute.wireGroups.list", + "parameterOrder": [ + "project", + "crossSiteNetwork" + ], + "parameters": { + "crossSiteNetwork": { + "location": "path", + "required": true, + "type": "string" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", + "response": { + "$ref": "WireGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified wire group resource with the data included in the\nrequest. This method supportsPATCH\nsemantics and usesJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "httpMethod": "PATCH", + "id": "compute.wireGroups.patch", + "parameterOrder": [ + "project", + "crossSiteNetwork", + "wireGroup" + ], + "parameters": { + "crossSiteNetwork": { + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).\nend_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "update_mask indicates fields to be updated as part of this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "[Input Only] Validate the new configuration, but don't update it.", + "location": "query", + "type": "boolean" + }, + "wireGroup": { + "description": "Name of the WireGroups resource to patch.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "request": { + "$ref": "WireGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "zoneOperations": { + "methods": { + "delete": { + "description": "Deletes the specified zone-specific Operations resource.", + "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", + "httpMethod": "DELETE", + "id": "compute.zoneOperations.delete", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete, or its unique numeric\nidentifier.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves the specified zone-specific Operations resource.", + "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", + "httpMethod": "GET", + "id": "compute.zoneOperations.get", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return, or its unique numeric\nidentifier.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of Operation resources contained within\nthe specified zone.", + "flatPath": "projects/{project}/zones/{zone}/operations", + "httpMethod": "GET", + "id": "compute.zoneOperations.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "zone": { + "description": "Name of the zone for request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "wait": { + "description": "Waits for the specified Operation resource to return as `DONE`\nor for the request to approach the 2 minute deadline, and retrieves the\nspecified Operation resource. This method waits for no more than the\n2 minutes and then returns the current state of the\noperation, which might be `DONE` or still in progress.\n\nThis method is called on a best-effort basis. Specifically:\n \n \n - In uncommon cases, when the server is overloaded, the request might\n return before the default deadline is reached, or might return after zero\n seconds.\n - If the default deadline is reached, there is no guarantee that the\n operation is actually done when the method returns. Be prepared to retry\n if the operation is not `DONE`.", + "flatPath": "projects/{project}/zones/{zone}/operations/{operation}/wait", + "httpMethod": "POST", + "id": "compute.zoneOperations.wait", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return, or its unique numeric\nidentifier.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/operations/{operation}/wait", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "zoneVmExtensionPolicies": { + "methods": { + "delete": { + "description": "Deletes a specified zone VM extension policy within a project.", + "flatPath": "projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "DELETE", + "id": "compute.zoneVmExtensionPolicies.delete", + "parameterOrder": [ + "project", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the zone VM extension policy to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves details of a specific zone VM extension policy within a project.", + "flatPath": "projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "GET", + "id": "compute.zoneVmExtensionPolicies.get", + "parameterOrder": [ + "project", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the VM extension policy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "response": { + "$ref": "VmExtensionPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a new zone-level VM extension policy within a project.", + "flatPath": "projects/{project}/zones/{zone}/vmExtensionPolicies", + "httpMethod": "POST", + "id": "compute.zoneVmExtensionPolicies.insert", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/vmExtensionPolicies", + "request": { + "$ref": "VmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Lists all VM extension policies within a specific zone for a project.", + "flatPath": "projects/{project}/zones/{zone}/vmExtensionPolicies", + "httpMethod": "GET", + "id": "compute.zoneVmExtensionPolicies.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/vmExtensionPolicies", + "response": { + "$ref": "VmExtensionPolicyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Modifies an existing zone VM extension policy within a project.", + "flatPath": "projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "PATCH", + "id": "compute.zoneVmExtensionPolicies.update", + "parameterOrder": [ + "project", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the zone VM extension policy to update.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "request": { + "$ref": "VmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "zones": { + "methods": { + "get": { + "description": "Returns the specified Zone resource.", + "flatPath": "projects/{project}/zones/{zone}", + "httpMethod": "GET", + "id": "compute.zones.get", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}", + "response": { + "$ref": "Zone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of Zone resources available to the specified project.", + "flatPath": "projects/{project}/zones", + "httpMethod": "GET", + "id": "compute.zones.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/zones", + "response": { + "$ref": "ZoneList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + } + }, + "revision": "20260422", + "rootUrl": "https://compute.googleapis.com/", + "schemas": { + "AWSV4Signature": { + "description": "Contains the configurations necessary to generate a signature for access to\nprivate storage buckets that support Signature Version 4 for authentication.\nThe service name for generating the authentication header will always default\nto 's3'.", + "id": "AWSV4Signature", + "properties": { + "accessKey": { + "description": "The access key used for s3 bucket authentication. Required for updating or\ncreating a backend that uses AWS v4 signature authentication, but will not\nbe returned as part of the configuration when queried with a REST API GET\nrequest.\n\n@InputOnly", + "type": "string" + }, + "accessKeyId": { + "description": "The identifier of an access key used for s3 bucket authentication.", + "type": "string" + }, + "accessKeyVersion": { + "description": "The optional version identifier for the access key. You can use this to\nkeep track of different iterations of your access key.", + "type": "string" + }, + "originRegion": { + "description": "The name of the cloud region of your origin. This is a free-form field with\nthe name of the region your cloud uses to host your origin. For example,\n\"us-east-1\" for AWS or \"us-ashburn-1\" for OCI.", + "type": "string" + } + }, + "type": "object" + }, + "AcceleratorConfig": { + "description": "A specification of the type and number of accelerator cards attached to the\ninstance.", + "id": "AcceleratorConfig", + "properties": { + "acceleratorCount": { + "description": "The number of the guest accelerator cards exposed to this instance.", + "format": "int32", + "type": "integer" + }, + "acceleratorType": { + "description": "Full or partial URL of the accelerator type resource to attach to this\ninstance. For example:projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100\nIf you are creating an instance template, specify only the\naccelerator name.\nSee GPUs on Compute Engine\nfor a full list of accelerator types.", + "type": "string" + } + }, + "type": "object" + }, + "AcceleratorTopologiesInfo": { + "description": "Info for accelerator topologies within a densely packed reservation.", + "id": "AcceleratorTopologiesInfo", + "properties": { + "acceleratorTopologyInfos": { + "description": "Info for each accelerator topology.", + "items": { + "$ref": "AcceleratorTopologiesInfoAcceleratorTopologyInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "AcceleratorTopologiesInfoAcceleratorTopologyInfo": { + "description": "Info for a slice of a given topology.", + "id": "AcceleratorTopologiesInfoAcceleratorTopologyInfo", + "properties": { + "acceleratorTopology": { + "description": "The accelerator topology.", + "type": "string" + }, + "infoPerTopologyStates": { + "description": "Info for each topology state.", + "items": { + "$ref": "AcceleratorTopologiesInfoAcceleratorTopologyInfoInfoPerTopologyState" + }, + "type": "array" + } + }, + "type": "object" + }, + "AcceleratorTopologiesInfoAcceleratorTopologyInfoInfoPerTopologyState": { + "description": "Info for each topology state.", + "id": "AcceleratorTopologiesInfoAcceleratorTopologyInfoInfoPerTopologyState", + "properties": { + "count": { + "description": "The number of accelerator topologies in this state.", + "format": "int32", + "type": "integer" + }, + "state": { + "description": "The state of the accelerator topology.", + "enum": [ + "AVAILABLE", + "DEGRADED", + "RUNNING", + "TOPOLOGY_STATE_UNSPECIFIED", + "UNHEALTHY" + ], + "enumDeprecated": [ + false, + false, false, false, true ], "enumDescriptions": [ - "The accelerator topology is available.", - "The accelerator topology is degraded. The underlying capacity is not in a\nhealthy state and is not available.", - "The accelerator topology is running. If there are both running and\ndegraded hosts within a topology, DEGRADED state will be returned.", - "The state of the topology is unspecified.", - "This value has been deprecated and is no longer used." + "The accelerator topology is available.", + "The accelerator topology is degraded. The underlying capacity is not in a\nhealthy state and is not available.", + "The accelerator topology is running. If there are both running and\ndegraded hosts within a topology, DEGRADED state will be returned.", + "The state of the topology is unspecified.", + "This value has been deprecated and is no longer used." + ], + "type": "string" + } + }, + "type": "object" + }, + "AcceleratorType": { + "description": "Represents an Accelerator Type resource.\n\nGoogle Cloud Platform provides graphics processing units (accelerators) that\nyou can add to VM instances to improve or accelerate performance when working\nwith intensive workloads. For more information, readGPUs on Compute Engine.", + "id": "AcceleratorType", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp inRFC3339 text format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this accelerator type." + }, + "description": { + "description": "[Output Only] An optional textual description of the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#acceleratorType", + "description": "Output only. [Output Only] The type of the resource. Alwayscompute#acceleratorType for accelerator types.", + "readOnly": true, + "type": "string" + }, + "maximumCardsPerInstance": { + "description": "[Output Only] Maximum number of accelerator cards allowed per instance.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined, fully qualified URL for this resource.", + "readOnly": true, + "type": "string" + }, + "zone": { + "description": "[Output Only] The name of the zone where the accelerator type resides,\nsuch as us-central1-a.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "type": "string" + } + }, + "type": "object" + }, + "AcceleratorTypeAggregatedList": { + "id": "AcceleratorTypeAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "AcceleratorTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of accelerator types." + }, + "description": "A list of AcceleratorTypesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#acceleratorTypeAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#acceleratorTypeAggregatedList for aggregated lists of\naccelerator types.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AcceleratorTypeList": { + "description": "Contains a list of accelerator types.", + "id": "AcceleratorTypeList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of AcceleratorType resources.", + "items": { + "$ref": "AcceleratorType" + }, + "type": "array" + }, + "kind": { + "default": "compute#acceleratorTypeList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#acceleratorTypeList for lists of accelerator types.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AcceleratorTypesScopedList": { + "id": "AcceleratorTypesScopedList", + "properties": { + "acceleratorTypes": { + "description": "[Output Only] A list of accelerator types contained in this scope.", + "items": { + "$ref": "AcceleratorType" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] An informational warning that appears when the accelerator\ntypes list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AccessConfig": { + "description": "An access configuration attached to an instance's network interface.\nOnly one access config per instance is supported.", + "id": "AccessConfig", + "properties": { + "externalIpv6": { + "description": "Applies to ipv6AccessConfigs only.\nThe first IPv6 address of the external IPv6 range associated\nwith this instance, prefix length is stored inexternalIpv6PrefixLength in ipv6AccessConfig. To\nuse a static external IP address, it must be unused and in the same region\nas the instance's zone. If not specified, Google Cloud will automatically\nassign an external IPv6 address from the instance's subnetwork.", + "type": "string" + }, + "externalIpv6PrefixLength": { + "description": "Applies to ipv6AccessConfigs only. The prefix length of the\nexternal IPv6 range.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "compute#accessConfig", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of this access configuration. In accessConfigs\n(IPv4), the default and recommended name is External NAT, but\nyou can use any arbitrary string, such as My external IP orNetwork Access. In ipv6AccessConfigs, the\nrecommend name is External IPv6.", + "type": "string" + }, + "natIP": { + "description": "Applies to accessConfigs (IPv4) only. Anexternal IP\naddress associated with this instance. Specify an unused static\nexternal IP address available to the project or leave this field undefined\nto use an IP from a shared ephemeral IP address pool. If you specify a\nstatic external IP address, it must live in the same region as the zone of\nthe instance.", + "type": "string" + }, + "networkTier": { + "description": "This signifies the networking tier used for configuring this access\nconfiguration and can only take the following values: PREMIUM,STANDARD.\n\nIf an AccessConfig is specified without a valid external IP address, an\nephemeral IP will be created with this networkTier.\n\nIf an AccessConfig with a valid external IP address is specified, it must\nmatch that of the networkTier associated with the Address resource owning\nthat IP.", + "enum": [ + "FIXED_STANDARD", + "PREMIUM", + "STANDARD", + "STANDARD_OVERRIDES_FIXED_STANDARD" + ], + "enumDescriptions": [ + "Public internet quality with fixed bandwidth.", + "High quality, Google-grade network tier, support for all networking\nproducts.", + "Public internet quality, only limited support for other networking\nproducts.", + "(Output only) Temporary tier for FIXED_STANDARD when fixed standard tier\nis expired or not configured." + ], + "type": "string" + }, + "publicPtrDomainName": { + "description": "The DNS domain name for the public PTR record.\n\nYou can set this field only if the `setPublicPtr` field is enabled inaccessConfig. If this field is unspecified inipv6AccessConfig, a default PTR record will be created for\nfirst IP in associated external IPv6 range.", + "type": "string" + }, + "securityPolicy": { + "description": "The resource URL for the security policy associated with this access\nconfig.", + "type": "string" + }, + "setPublicPtr": { + "description": "Specifies whether a public DNS 'PTR' record should be created to map the\nexternal IP address of the instance to a DNS domain name.\n\nThis field is not used in ipv6AccessConfig. A default PTR\nrecord will be created if the VM has external IPv6 range associated.", + "type": "boolean" + }, + "type": { + "description": "The type of configuration. In accessConfigs (IPv4), the\ndefault and only option is ONE_TO_ONE_NAT. Inipv6AccessConfigs, the default and only option isDIRECT_IPV6.", + "enum": [ + "DIRECT_IPV6", + "ONE_TO_ONE_NAT" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "Address": { + "description": "Represents an IP Address resource.\n\nGoogle Compute Engine has two IP Address resources:\n\n* [Global (external and\ninternal)](https://cloud.google.com/compute/docs/reference/rest/v1/globalAddresses)\n* [Regional (external and\ninternal)](https://cloud.google.com/compute/docs/reference/rest/v1/addresses)\n\nFor more information, see\nReserving a static external IP address.", + "id": "Address", + "properties": { + "address": { + "description": "The static IP address represented by this resource.", + "type": "string" + }, + "addressType": { + "description": "The type of address to reserve, either INTERNAL orEXTERNAL. If unspecified, defaults to EXTERNAL.", + "enum": [ + "EXTERNAL", + "INTERNAL", + "UNSPECIFIED_TYPE" + ], + "enumDescriptions": [ + "A publicly visible external IP address.", + "A private network IP address, for use with an Instance or Internal Load\nBalancer forwarding rule.", + "" + ], + "type": "string" + }, + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this field when you\ncreate the resource.", + "type": "string" + }, + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "ipCollection": { + "description": "Reference to the source of external IPv4 addresses,\nlike a PublicDelegatedPrefix (PDP) for BYOIP.\nThe PDP must support enhanced IPv4 allocations.\n\nUse one of the following formats to specify a PDP when reserving an\nexternal IPv4 address using BYOIP.\n \n - \n Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name\n - \n Partial URL, as in\n \n \n - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name\n - regions/region/publicDelegatedPrefixes/pdp-name", + "type": "string" + }, + "ipVersion": { + "description": "The IP version that will be used by this address. Valid options areIPV4 or IPV6.", + "enum": [ + "IPV4", + "IPV6", + "UNSPECIFIED_VERSION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "ipv6EndpointType": { + "description": "The endpoint type of this address, which should be VM\nor NETLB. This is used for deciding which type of endpoint\nthis address can be used after the external IPv6 address reservation.", + "enum": [ + "NETLB", + "VM" + ], + "enumDescriptions": [ + "Reserved IPv6 address can be used on network load balancer.", + "Reserved IPv6 address can be used on VM." + ], + "type": "string" + }, + "kind": { + "default": "compute#address", + "description": "Output only. [Output Only] Type of the resource. Always compute#address for\naddresses.", + "readOnly": true, + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this Address, which is\nessentially a hash of the labels set used for optimistic locking. The\nfingerprint is initially generated by Compute Engine and changes after\nevery request to modify or update labels. You must always provide an\nup-to-date fingerprint hash in order to update or change labels,\notherwise the request will fail with error412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve an Address.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035.\nLabel values may be empty.", + "type": "object" + }, + "name": { + "annotations": { + "required": [ + "compute.addresses.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character\nmust be a lowercase letter, and all following characters (except for the\nlast character) must be a dash, lowercase letter, or digit. The last\ncharacter must be a lowercase letter or digit.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "description": "The URL of the network in which to reserve the address. This field can\nonly be used with INTERNAL type with theVPC_PEERING purpose.", + "type": "string" + }, + "networkTier": { + "description": "This signifies the networking tier used for configuring this address and\ncan only take the following values: PREMIUM orSTANDARD. Internal IP addresses are always Premium Tier;\nglobal external IP addresses are always Premium Tier; regional external IP\naddresses can be either Standard or Premium Tier.\n\nIf this field is not specified, it is assumed to be PREMIUM.", + "enum": [ + "FIXED_STANDARD", + "PREMIUM", + "STANDARD", + "STANDARD_OVERRIDES_FIXED_STANDARD" + ], + "enumDescriptions": [ + "Public internet quality with fixed bandwidth.", + "High quality, Google-grade network tier, support for all networking\nproducts.", + "Public internet quality, only limited support for other networking\nproducts.", + "(Output only) Temporary tier for FIXED_STANDARD when fixed standard tier\nis expired or not configured." + ], + "type": "string" + }, + "prefixLength": { + "description": "The prefix length if the resource represents an IP range.", + "format": "int32", + "type": "integer" + }, + "purpose": { + "description": "The purpose of this resource, which can be one of the following values:\n \n \n - GCE_ENDPOINT for addresses that are used by VM\n instances, alias IP ranges, load balancers, and similar resources.\n - DNS_RESOLVER for a DNS resolver address in a subnetwork\n for a Cloud DNS inbound\n forwarder IP addresses (regional internal IP address in a subnet of\n a VPC network)\n - VPC_PEERING for global internal IP addresses used for\n \n private services access allocated ranges.\n - NAT_AUTO for the regional external IP addresses used by\n Cloud NAT when allocating addresses using\n \n automatic NAT IP address allocation.\n - IPSEC_INTERCONNECT for addresses created from a private\n IP range that are reserved for a VLAN attachment in an\n *HA VPN over Cloud Interconnect* configuration. These addresses\n are regional resources.\n - `SHARED_LOADBALANCER_VIP` for an internal IP address that is assigned\n to multiple internal forwarding rules.\n - `PRIVATE_SERVICE_CONNECT` for a private network address that is\n used to configure Private Service Connect. Only global internal addresses\n can use this purpose.", + "enum": [ + "DNS_RESOLVER", + "GCE_ENDPOINT", + "IPSEC_INTERCONNECT", + "NAT_AUTO", + "PRIVATE_SERVICE_CONNECT", + "SERVERLESS", + "SHARED_LOADBALANCER_VIP", + "VPC_PEERING" + ], + "enumDescriptions": [ + "DNS resolver address in the subnetwork.", + "VM internal/alias IP, Internal LB service IP, etc.", + "A regional internal IP address range reserved for the VLAN attachment\nthat is used in HA VPN over Cloud Interconnect. This regional\ninternal IP address range must not overlap with any IP address range\nof subnet/route in the VPC network and its peering networks. After the\nVLAN attachment is created with the reserved IP address range, when\ncreating a new VPN gateway, its interface IP address is allocated\nfrom the associated VLAN attachment’s IP address range.", + "External IP automatically reserved for Cloud NAT.", + "A private network IP address that can be used to configure Private\nService Connect. This purpose can be specified only forGLOBAL addresses of Type INTERNAL", + "A regional internal IP address range reserved for Serverless.", + "A private network IP address that can be shared by multiple Internal\nLoad Balancer forwarding rules.", + "IP range for peer networks." + ], + "type": "string" + }, + "region": { + "description": "Output only. [Output Only] The URL of the region where a regional address resides.\nFor regional addresses, you must specify the region as a path parameter in\nthe HTTP request URL. *This field is not applicable to global\naddresses.*", + "readOnly": true, + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "Output only. [Output Only] The status of the address, which can be one ofRESERVING, RESERVED, or IN_USE.\nAn address that is RESERVING is currently in the process of\nbeing reserved. A RESERVED address is currently reserved and\navailable to use. An IN_USE address is currently being used\nby another resource and is not available.", + "enum": [ + "IN_USE", + "RESERVED", + "RESERVING" + ], + "enumDescriptions": [ + "Address is being used by another resource and is not available.", + "Address is reserved and available to use.", + "Address is being reserved." + ], + "readOnly": true, + "type": "string" + }, + "subnetwork": { + "description": "The URL of the subnetwork in which to reserve the address. If an IP address\nis specified, it must be within the subnetwork's IP range. This field can\nonly be used with INTERNAL type with aGCE_ENDPOINT or DNS_RESOLVER purpose.", + "type": "string" + }, + "users": { + "description": "[Output Only] The URLs of the resources that are using this address.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AddressAggregatedList": { + "id": "AddressAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "AddressesScopedList", + "description": "[Output Only] Name of the scope containing this set of addresses." + }, + "description": "A list of AddressesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#addressAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#addressAggregatedList for aggregated lists of\naddresses.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AddressList": { + "description": "Contains a list of addresses.", + "id": "AddressList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Address resources.", + "items": { + "$ref": "Address" + }, + "type": "array" + }, + "kind": { + "default": "compute#addressList", + "description": "Output only. [Output Only] Type of resource. Always compute#addressList for\nlists of addresses.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AddressesScopedList": { + "id": "AddressesScopedList", + "properties": { + "addresses": { + "description": "[Output Only] A list of addresses contained in this scope.", + "items": { + "$ref": "Address" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of addresses\nwhen the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AdvancedMachineFeatures": { + "description": "Specifies options for controlling advanced machine features.\nOptions that would traditionally be configured in a BIOS belong\nhere. Features that require operating system support may have\ncorresponding entries in the GuestOsFeatures of anImage (e.g., whether or not the OS in theImage supports nested virtualization being enabled or\ndisabled).", + "id": "AdvancedMachineFeatures", + "properties": { + "enableNestedVirtualization": { + "description": "Whether to enable nested virtualization or not (default is false).", + "type": "boolean" + }, + "enableUefiNetworking": { + "description": "Whether to enable UEFI networking for instance creation.", + "type": "boolean" + }, + "performanceMonitoringUnit": { + "description": "Type of Performance Monitoring Unit requested on instance.", + "enum": [ + "ARCHITECTURAL", + "ENHANCED", + "PERFORMANCE_MONITORING_UNIT_UNSPECIFIED", + "STANDARD" + ], + "enumDescriptions": [ + "Architecturally defined non-LLC events.", + "Most documented core/L2 and LLC events.", + "", + "Most documented core/L2 events." + ], + "type": "string" + }, + "threadsPerCore": { + "description": "The number of threads per physical core. To disable simultaneous\nmultithreading (SMT) set this to 1. If unset, the maximum number\nof threads supported per core by the underlying processor is\nassumed.", + "format": "int32", + "type": "integer" + }, + "turboMode": { + "description": "Turbo frequency mode to use for the instance.\nSupported modes include:\n* ALL_CORE_MAX\n\nUsing empty string or not setting this field will use the platform-specific\ndefault turbo mode.", + "type": "string" + }, + "visibleCoreCount": { + "description": "The number of physical cores to expose to an instance. Multiply by\nthe number of threads per core to compute the total number of virtual\nCPUs to expose to the instance. If unset, the number of cores is\ninferred from the instance's nominal CPU count and the underlying\nplatform's SMT width.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AliasIpRange": { + "description": "An alias IP range attached to an instance's network interface.", + "id": "AliasIpRange", + "properties": { + "ipCidrRange": { + "description": "The IP alias ranges to allocate for this interface. This IP CIDR range\nmust belong to the specified subnetwork and cannot contain IP addresses\nreserved by system or used by other network interfaces. This range may be\na single IP address (such as 10.2.3.4), a netmask (such as/24) or a CIDR-formatted string (such as10.1.2.0/24).", + "type": "string" + }, + "subnetworkRangeName": { + "description": "The name of a subnetwork secondary IP range from which to allocate an IP\nalias range. If not specified, the primary range of the subnetwork is used.", + "type": "string" + } + }, + "type": "object" + }, + "AllocationAggregateReservation": { + "description": "This reservation type is specified by total resource amounts (e.g. total\ncount of CPUs) and can account for multiple instance SKUs. In other words,\none can create instances of varying shapes against this reservation.", + "id": "AllocationAggregateReservation", + "properties": { + "inUseResources": { + "description": "Output only. [Output only] List of resources currently in use.", + "items": { + "$ref": "AllocationAggregateReservationReservedResourceInfo" + }, + "readOnly": true, + "type": "array" + }, + "reservedResources": { + "description": "List of reserved resources (CPUs, memory, accelerators).", + "items": { + "$ref": "AllocationAggregateReservationReservedResourceInfo" + }, + "type": "array" + }, + "vmFamily": { + "description": "The VM family that all instances scheduled against this reservation must\nbelong to.", + "enum": [ + "VM_FAMILY_CLOUD_TPU_DEVICE_CT3", + "VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L", + "VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP", + "VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT6E", + "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT3P", + "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P", + "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT5P", + "VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "workloadType": { + "description": "The workload type of the instances that will target this reservation.", + "enum": [ + "BATCH", + "SERVING", + "UNSPECIFIED" + ], + "enumDescriptions": [ + "Reserved resources will be optimized for BATCH workloads, such as ML\ntraining.", + "Reserved resources will be optimized for SERVING workloads, such as ML\ninference.", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AllocationAggregateReservationReservedResourceInfo": { + "id": "AllocationAggregateReservationReservedResourceInfo", + "properties": { + "accelerator": { + "$ref": "AllocationAggregateReservationReservedResourceInfoAccelerator", + "description": "Properties of accelerator resources in this reservation." + } + }, + "type": "object" + }, + "AllocationAggregateReservationReservedResourceInfoAccelerator": { + "id": "AllocationAggregateReservationReservedResourceInfoAccelerator", + "properties": { + "acceleratorCount": { + "description": "Number of accelerators of specified type.", + "format": "int32", + "type": "integer" + }, + "acceleratorType": { + "description": "Full or partial URL to accelerator type. e.g.\n\"projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l\"", + "type": "string" + } + }, + "type": "object" + }, + "AllocationReservationSharingPolicy": { + "id": "AllocationReservationSharingPolicy", + "properties": { + "serviceShareType": { + "description": "Sharing config for all Google Cloud services.", + "enum": [ + "ALLOW_ALL", + "DISALLOW_ALL", + "SERVICE_SHARE_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Allow all Google Cloud managed services to share reservations.", + "[Default] Disallow sharing with all Google Cloud services.", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AllocationResourceStatus": { + "description": "[Output Only] Contains output only fields.", + "id": "AllocationResourceStatus", + "properties": { + "healthInfo": { + "$ref": "AllocationResourceStatusHealthInfo", + "description": "[Output only] Health information for the reservation." + }, + "reservationBlockCount": { + "description": "The number of reservation blocks associated with this reservation.", + "format": "int32", + "type": "integer" + }, + "reservationMaintenance": { + "$ref": "GroupMaintenanceInfo", + "description": "Maintenance information for this reservation" + }, + "specificSkuAllocation": { + "$ref": "AllocationResourceStatusSpecificSKUAllocation", + "description": "Allocation Properties of this reservation." + } + }, + "type": "object" + }, + "AllocationResourceStatusHealthInfo": { + "description": "Health information for the reservation.", + "id": "AllocationResourceStatusHealthInfo", + "properties": { + "degradedBlockCount": { + "description": "The number of reservation blocks that are degraded.", + "format": "int32", + "type": "integer" + }, + "healthStatus": { + "description": "The health status of the reservation.", + "enum": [ + "DEGRADED", + "HEALTHY", + "HEALTH_STATUS_UNSPECIFIED" + ], + "enumDescriptions": [ + "The reservation is degraded.", + "The reservation is healthy.", + "The health status of the reservation is unspecified." + ], + "type": "string" + }, + "healthyBlockCount": { + "description": "The number of reservation blocks that are healthy.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AllocationResourceStatusSpecificSKUAllocation": { + "description": "Contains Properties set for the reservation.", + "id": "AllocationResourceStatusSpecificSKUAllocation", + "properties": { + "sourceInstanceTemplateId": { + "description": "ID of the instance template used to populate reservation properties.", + "type": "string" + }, + "utilizations": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Per service utilization breakdown. The Key is the Google Cloud managed\nservice name.", + "type": "object" + } + }, + "type": "object" + }, + "AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk": { + "id": "AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk", + "properties": { + "diskSizeGb": { + "description": "Specifies the size of the disk in base-2 GB.", + "format": "int64", + "type": "string" + }, + "interface": { + "description": "Specifies the disk interface to use for attaching this disk, which is\neither SCSI or NVME. The default isSCSI.\nFor performance characteristics of SCSI over NVMe, seeLocal SSD performance.", + "enum": [ + "NVME", + "SCSI" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AllocationSpecificSKUAllocationReservedInstanceProperties": { + "description": "Properties of the SKU instances being reserved.\nNext ID: 10", + "id": "AllocationSpecificSKUAllocationReservedInstanceProperties", + "properties": { + "guestAccelerators": { + "description": "Specifies accelerator type and count.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "localSsds": { + "description": "Specifies amount of local ssd to reserve with each instance. The type\nof disk is local-ssd.", + "items": { + "$ref": "AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk" + }, + "type": "array" + }, + "locationHint": { + "description": "An opaque location hint used to place the allocation close to other\nresources.\nThis field is for use by internal tools that use the public API.", + "type": "string" + }, + "machineType": { + "description": "Specifies type of machine (name only) which has fixed number of vCPUs\nand fixed amount of memory. This also includes specifying custom\nmachine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.", + "type": "string" + }, + "minCpuPlatform": { + "description": "Minimum cpu platform the reservation.", + "type": "string" + } + }, + "type": "object" + }, + "AllocationSpecificSKUReservation": { + "description": "This reservation type allows to pre allocate specific instance\n configuration.", + "id": "AllocationSpecificSKUReservation", + "properties": { + "assuredCount": { + "description": "Output only. [Output Only] Indicates how many instances are actually usable currently.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "count": { + "description": "Specifies the number of resources that are allocated.", + "format": "int64", + "type": "string" + }, + "inUseCount": { + "description": "Output only. [Output Only] Indicates how many instances are in use.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "instanceProperties": { + "$ref": "AllocationSpecificSKUAllocationReservedInstanceProperties", + "description": "The instance properties for the reservation." + }, + "sourceInstanceTemplate": { + "description": "Specifies the instance template to create the reservation. If you use\nthis field, you must exclude the instanceProperties field.\n\nThis field is optional, and it can be a full or partial URL. For example,\nthe following are all valid URLs to an instance template: \n \n \n - https://www.googleapis.com/compute/v1/projects/project/global/instanceTemplates/instanceTemplate\n - projects/project/global/instanceTemplates/instanceTemplate\n - global/instanceTemplates/instanceTemplate", + "type": "string" + } + }, + "type": "object" + }, + "AttachedDisk": { + "description": "An instance-attached disk resource.", + "id": "AttachedDisk", + "properties": { + "architecture": { + "description": "Output only. [Output Only] The architecture of the attached disk. Valid values are ARM64\nor X86_64.", + "enum": [ + "ARCHITECTURE_UNSPECIFIED", + "ARM64", + "X86_64" + ], + "enumDescriptions": [ + "Default value indicating Architecture is not set.", + "Machines with architecture ARM64", + "Machines with architecture X86_64" + ], + "readOnly": true, + "type": "string" + }, + "autoDelete": { + "description": "Specifies whether the disk will be auto-deleted when the instance is\ndeleted (but not when the disk is detached from the instance).", + "type": "boolean" + }, + "boot": { + "description": "Indicates that this is a boot disk. The virtual machine will use the first\npartition of the disk for its root filesystem.", + "type": "boolean" + }, + "deviceName": { + "description": "Specifies a unique device name of your choice that is reflected into the/dev/disk/by-id/google-* tree of a Linux operating system\nrunning within the instance. This name can be used to reference the device\nfor mounting, resizing, and so on, from within the instance.\n\nIf not specified, the server chooses a default device name to apply to this\ndisk, in the form persistent-disk-x, where x is a number\nassigned by Google Compute Engine. This field is only applicable for\npersistent disks.", + "type": "string" + }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts or decrypts a disk using acustomer-supplied\nencryption key.\n\nIf you are creating a new disk, this field encrypts the new disk using\nan encryption key that you provide. If you are attaching an existing\ndisk that is already encrypted, this field decrypts the disk using\nthe customer-supplied encryption key.\n\nIf you encrypt a disk using a customer-supplied key, you must provide the\nsame key again when you attempt to use this resource at a later time. For\nexample, you must provide the key when you create a snapshot or an image\nfrom the disk or when you attach the disk to a virtual machine instance.\n\nIf you do not provide an encryption key, then the disk will be encrypted\nusing an automatically generated key and you do not need to provide a key\nto use the disk later.\n\nNote:\n\nInstance templates do not storecustomer-supplied\nencryption keys, so you cannot use your own keys to encrypt disks in amanaged instance group.\n\nYou cannot create VMs that have disks with customer-supplied keys using\nthe bulk\ninsert method." + }, + "diskSizeGb": { + "description": "The size of the disk in GB.", + "format": "int64", + "type": "string" + }, + "forceAttach": { + "description": "[Input Only] Whether to force attach the regional disk even if it's\ncurrently attached to another instance. If you try to force attach a zonal\ndisk to an instance, you will receive an error.", + "type": "boolean" + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable\nonly for bootable images. Read\nEnabling guest operating system features to see a list of available\noptions.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "index": { + "description": "Output only. [Output Only] A zero-based index to this disk, where 0 is reserved for the\nboot disk. If you have many disks attached to an instance, each\ndisk would have a unique index number.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "initializeParams": { + "$ref": "AttachedDiskInitializeParams", + "description": "[Input Only] Specifies the parameters for a new disk that will be created\nalongside the new instance. Use initialization parameters to create boot\ndisks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property;\nyou can only define one or the other, but not both." + }, + "interface": { + "description": "Specifies the disk interface to use for attaching this disk, which is\neither SCSI or NVME. For most machine types, the\ndefault is SCSI. Local SSDs can use either NVME or SCSI.\nIn certain configurations, persistent disks can use NVMe. For more\ninformation, seeAbout\npersistent disks.", + "enum": [ + "NVME", + "SCSI" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#attachedDisk", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#attachedDisk for attached disks.", + "readOnly": true, + "type": "string" + }, + "licenses": { + "description": "Output only. [Output Only] Any valid publicly visible licenses.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "mode": { + "description": "The mode in which to attach this disk, either READ_WRITE orREAD_ONLY. If not specified, the default is to attach the disk\nin READ_WRITE mode.", + "enum": [ + "READ_ONLY", + "READ_WRITE" + ], + "enumDescriptions": [ + "Attaches this disk in read-only mode. Multiple virtual machines can use\na disk in read-only mode at a time.", + "*[Default]* Attaches this disk in read-write mode. Only one\nvirtual machine at a time can be attached to a disk in read-write mode." + ], + "type": "string" + }, + "savedState": { + "description": "Output only. For LocalSSD disks on VM Instances in STOPPED or SUSPENDED state, this\nfield is set to PRESERVED if the LocalSSD data has been saved\nto a persistent location by customer request. (see the\ndiscard_local_ssd option on Stop/Suspend).\nRead-only in the api.", + "enum": [ + "DISK_SAVED_STATE_UNSPECIFIED", + "PRESERVED" + ], + "enumDescriptions": [ + "*[Default]* Disk state has not been preserved.", + "Disk state has been preserved." + ], + "readOnly": true, + "type": "string" + }, + "shieldedInstanceInitialState": { + "$ref": "InitialStateConfig", + "description": "Output only. [Output Only] shielded vm initial state stored on disk", + "readOnly": true + }, + "source": { + "description": "Specifies a valid partial or full URL to an existing Persistent Disk\nresource. When creating a new instance boot disk, one ofinitializeParams.sourceImage orinitializeParams.sourceSnapshot or disks.source\nis required.\n\nIf desired, you can also attach existing non-root persistent disks using\nthis property. This field is only applicable for persistent disks.\n\nNote that for InstanceTemplate, specify the disk name for zonal disk,\nand the URL for regional disk.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the disk, either SCRATCH orPERSISTENT. If not specified, the default isPERSISTENT.", + "enum": [ + "PERSISTENT", + "SCRATCH" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "AttachedDiskInitializeParams": { + "description": "[Input Only] Specifies the parameters for a new disk that will be created\nalongside the new instance. Use initialization parameters to create boot\ndisks or local SSDs attached to the new instance.\n\nThis field is persisted and returned for instanceTemplate and not returned\nin the context of instance.\n\nThis property is mutually exclusive with the source property;\nyou can only define one or the other, but not both.", + "id": "AttachedDiskInitializeParams", + "properties": { + "architecture": { + "description": "The architecture of the attached disk. Valid values are\narm64 or x86_64.", + "enum": [ + "ARCHITECTURE_UNSPECIFIED", + "ARM64", + "X86_64" + ], + "enumDescriptions": [ + "Default value indicating Architecture is not set.", + "Machines with architecture ARM64", + "Machines with architecture X86_64" + ], + "type": "string" + }, + "description": { + "description": "An optional description. Provide this property when creating the disk.", + "type": "string" + }, + "diskName": { + "description": "Specifies the disk name. If not specified, the default is to use the name\nof the instance. If a disk with the same name already exists in the given\nregion, the existing disk is attached to the new instance and the\nnew disk is not created.", + "type": "string" + }, + "diskSizeGb": { + "description": "Specifies the size of the disk in base-2 GB. The size must be at least\n10 GB. If you specify a sourceImage, which is required for\nboot disks, the default size is the size of the sourceImage.\nIf you do not specify a sourceImage, the default disk size\nis 500 GB.", + "format": "int64", + "type": "string" + }, + "diskType": { + "description": "Specifies the disk type to use to create the instance. If not specified,\nthe default is pd-standard, specified using the full URL.\nFor example:\n\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard\n\n\nFor a full list of acceptable values, seePersistent disk\ntypes. If you specify this field when creating a VM, you can provide\neither the full or partial URL. For example, the following values are\nvalid:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n - projects/project/zones/zone/diskTypes/diskType \n - zones/zone/diskTypes/diskType\n\n\nIf you specify this field when creating or updating an instance template\nor all-instances configuration, specify the type of the disk, not the\nURL. For example: pd-standard.", + "type": "string" + }, + "enableConfidentialCompute": { + "description": "Whether this disk is using confidential compute mode.", + "type": "boolean" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this disk. These can be later modified by thedisks.setLabels method. This field is only applicable for\npersistent disks.", + "type": "object" + }, + "licenses": { + "description": "A list of publicly visible licenses. Reserved for Google's use.", + "items": { + "type": "string" + }, + "type": "array" + }, + "onUpdateAction": { + "description": "Specifies which action to take on instance update with this disk. Default\nis to use the existing disk.", + "enum": [ + "RECREATE_DISK", + "RECREATE_DISK_IF_SOURCE_CHANGED", + "USE_EXISTING_DISK" + ], + "enumDescriptions": [ + "Always recreate the disk.", + "Recreate the disk if source (image, snapshot) of this disk is different\nfrom source of existing disk.", + "Use the existing disk, this is the default behaviour." + ], + "type": "string" + }, + "provisionedIops": { + "description": "Indicates how many IOPS to provision for the disk. This sets the number\nof I/O operations per second that the disk can handle. Values must be\nbetween 10,000 and 120,000. For more details, see theExtreme persistent\ndisk documentation.", + "format": "int64", + "type": "string" + }, + "provisionedThroughput": { + "description": "Indicates how much throughput to provision for the disk. This sets the\nnumber of throughput mb per second that the disk can handle. Values must\ngreater than or equal to 1.", + "format": "int64", + "type": "string" + }, + "replicaZones": { + "description": "Required for each regional disk associated with the instance. Specify\nthe URLs of the zones where the disk should be replicated to.\nYou must provide exactly two replica zones, and one zone must be the same\nas the instance zone.", + "items": { + "type": "string" + }, + "type": "array" + }, + "resourceManagerTags": { + "additionalProperties": { + "type": "string" + }, + "description": "Input only. Resource manager tags to be bound to the disk. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT & PATCH) when\nempty.", + "type": "object" + }, + "resourcePolicies": { + "description": "Resource policies applied to this disk for automatic snapshot creations.\nSpecified using the full or partial URL. For instance template, specify\nonly the resource policy name.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceImage": { + "description": "The source image to create this disk. When creating a new instance boot\ndisk, one of initializeParams.sourceImage orinitializeParams.sourceSnapshot or disks.source\nis required.\n\nTo create a disk with one of the public operating system\nimages, specify the image by its family name. For example, specifyfamily/debian-9 to use the latest Debian 9 image:\n\nprojects/debian-cloud/global/images/family/debian-9\n\n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD\n\n\nTo create a disk with a custom image that you created, specify the\nimage name in the following format:\n\nglobal/images/my-custom-image\n\n\nYou can also specify a custom image by its image family, which returns\nthe latest version of the image in that family. Replace the image name\nwith family/family-name:\n\nglobal/images/family/my-image-family\n\n\nIf the source image is deleted later, this field will not be set.", + "type": "string" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Thecustomer-supplied\nencryption key of the source image. Required if the source image is\nprotected by a customer-supplied encryption key.\n\nInstanceTemplate and InstancePropertiesPatch do not storecustomer-supplied\nencryption keys, so you cannot create disks for instances in a managed instance group if the\nsource images are encrypted with your own keys." + }, + "sourceSnapshot": { + "description": "The source snapshot to create this disk. When creating a new instance\nboot disk, one of initializeParams.sourceSnapshot orinitializeParams.sourceImage or disks.source\nis required.\n\nTo create a disk with a snapshot that you created, specify the\nsnapshot name in the following format:\n\nglobal/snapshots/my-backup\n\n\nIf the source snapshot is deleted later, this field will not be set.\n\nNote: You cannot create VMs in bulk using a snapshot as the source. Use\nan image instead when you create VMs using\nthe bulk\ninsert method.", + "type": "string" + }, + "sourceSnapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Thecustomer-supplied\nencryption key of the source snapshot." + }, + "storagePool": { + "description": "The storage pool in which the new disk is created. You can provide\nthis as a partial or full URL to the resource. For example, the following\nare valid values:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/storagePools/storagePool\n - projects/project/zones/zone/storagePools/storagePool \n - zones/zone/storagePools/storagePool", + "type": "string" + } + }, + "type": "object" + }, + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\",\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:jose@example.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\"\n },\n {\n \"log_type\": \"ADMIN_READ\"\n }\n ]\n },\n {\n \"service\": \"sampleservice.googleapis.com\",\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\"\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:aliya@example.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts `jose@example.com` from DATA_READ logging, and\n`aliya@example.com` from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" + }, + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:jose@example.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\"\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\njose@example.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "ADMIN_READ", + "DATA_READ", + "DATA_WRITE", + "LOG_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Admin reads. Example: CloudIAM getIamPolicy", + "Data reads. Example: CloudSQL Users list", + "Data writes. Example: CloudSQL Users create", + "Default case. Should never be this." + ], + "type": "string" + } + }, + "type": "object" + }, + "Autoscaler": { + "description": "Represents an Autoscaler resource.\n\nGoogle Compute Engine has two Autoscaler resources:\n\n* [Zonal](/compute/docs/reference/rest/v1/autoscalers)\n* [Regional](/compute/docs/reference/rest/v1/regionAutoscalers)\n\nUse autoscalers to automatically add or delete instances from a\nmanaged instance group according to your defined autoscaling policy.\nFor more information, read Autoscaling Groups of Instances.\n\nFor zonal managed instance groups resource, use the autoscaler\nresource.\n\nFor regional managed instance groups, use theregionAutoscalers resource.", + "id": "Autoscaler", + "properties": { + "autoscalingPolicy": { + "$ref": "AutoscalingPolicy", + "description": "The configuration parameters for the autoscaling algorithm. You can define\none or more signals for an autoscaler: cpuUtilization,customMetricUtilizations, andloadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based oncpuUtilization to 0.6 or 60%." + }, + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "compute#autoscaler", + "description": "Output only. [Output Only] Type of the resource. Always compute#autoscaler\nfor autoscalers.", + "readOnly": true, + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.autoscalers.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "recommendedSize": { + "description": "Output only. [Output Only] Target recommended MIG size (number of instances) computed by\nautoscaler. Autoscaler calculates the recommended MIG size even when the\nautoscaling policy mode is different from ON. This field is empty when\nautoscaler is not connected to an existing managed instance group or\nautoscaler did not generate its prediction.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "region": { + "description": "Output only. [Output Only] URL of theregion\nwhere the instance group resides (for autoscalers living in regional\nscope).", + "readOnly": true, + "type": "string" + }, + "scalingScheduleStatus": { + "additionalProperties": { + "$ref": "ScalingScheduleStatus" + }, + "description": "Output only. [Output Only] Status information of existing scaling schedules.", + "readOnly": true, + "type": "object" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the autoscaler configuration. Current set of\npossible values:\n \n - PENDING:\n Autoscaler backend hasn't read new/updated configuration.\n - DELETING:\n Configuration is being deleted.\n - ACTIVE:\n Configuration is acknowledged to be effective. Some warnings might\n be present in the statusDetails field.\n - ERROR:\n Configuration has errors. Actionable for users. Details are present in\n the statusDetails field.\n\n\nNew values might be added in the future.", + "enum": [ + "ACTIVE", + "DELETING", + "ERROR", + "PENDING" + ], + "enumDescriptions": [ + "Configuration is acknowledged to be effective", + "Configuration is being deleted", + "Configuration has errors. Actionable for users.", + "Autoscaler backend hasn't read new/updated configuration" + ], + "type": "string" + }, + "statusDetails": { + "description": "[Output Only] Human-readable details about the current state of the\nautoscaler. Read the documentation forCommonly\nreturned status messages for examples of status messages you might\nencounter.", + "items": { + "$ref": "AutoscalerStatusDetails" + }, + "type": "array" + }, + "target": { + "description": "URL of the managed instance group that this autoscaler will scale. This\nfield is required when creating an autoscaler.", + "type": "string" + }, + "zone": { + "description": "Output only. [Output Only] URL of thezone\nwhere the instance group resides (for autoscalers living in zonal scope).", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "AutoscalerAggregatedList": { + "id": "AutoscalerAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "AutoscalersScopedList", + "description": "[Output Only] Name of the scope containing this set of autoscalers." + }, + "description": "A list of AutoscalersScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#autoscalerAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#autoscalerAggregatedList for aggregated lists of\nautoscalers.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AutoscalerList": { + "description": "Contains a list of Autoscaler resources.", + "id": "AutoscalerList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Autoscaler resources.", + "items": { + "$ref": "Autoscaler" + }, + "type": "array" + }, + "kind": { + "default": "compute#autoscalerList", + "description": "Output only. [Output Only] Type of resource. Always compute#autoscalerList\nfor lists of autoscalers.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "AutoscalerStatusDetails": { + "id": "AutoscalerStatusDetails", + "properties": { + "message": { + "description": "The status message.", + "type": "string" + }, + "type": { + "description": "The type of error, warning, or notice returned. Current set of possible\nvalues:\n \n - ALL_INSTANCES_UNHEALTHY (WARNING):\n All instances in the instance group are unhealthy (not in RUNNING\n state).\n - BACKEND_SERVICE_DOES_NOT_EXIST (ERROR):\n There is no backend service attached to the instance group.\n - CAPPED_AT_MAX_NUM_REPLICAS (WARNING):\n Autoscaler recommends a size greater than maxNumReplicas.\n - CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE (WARNING):\n The custom metric samples are not exported often enough to be\n a credible base for autoscaling.\n - CUSTOM_METRIC_INVALID (ERROR):\n The custom metric that was specified does not exist or does not have\n the necessary labels.\n - MIN_EQUALS_MAX (WARNING):\n The minNumReplicas is equal to maxNumReplicas. This means the\n autoscaler cannot add or remove instances from the instance group.\n - MISSING_CUSTOM_METRIC_DATA_POINTS (WARNING):\n The autoscaler did not receive any data from the custom metric\n configured for autoscaling.\n - MISSING_LOAD_BALANCING_DATA_POINTS (WARNING):\n The autoscaler is configured to scale based on a load balancing signal\n but the instance group has not received any requests from the load\n balancer.\n - MODE_OFF (WARNING):\n Autoscaling is turned off. The number of instances in the group won't\n change automatically. The autoscaling configuration is preserved.\n - MODE_ONLY_UP (WARNING):\n Autoscaling is in the \"Autoscale only out\" mode. The autoscaler can add\n instances but not remove any.\n - MORE_THAN_ONE_BACKEND_SERVICE (ERROR):\n The instance group cannot be autoscaled because it has more than one\n backend service attached to it.\n - NOT_ENOUGH_QUOTA_AVAILABLE (ERROR):\n There is insufficient quota for the necessary resources, such as CPU or\n number of instances.\n - REGION_RESOURCE_STOCKOUT (ERROR):\n Shown only for regional autoscalers: there is a resource stockout in\n the chosen region.\n - SCALING_TARGET_DOES_NOT_EXIST (ERROR):\n The target to be scaled does not exist.\n - UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION\n (ERROR): Autoscaling does not work with an HTTP/S load balancer that\n has been configured for maxRate.\n - ZONE_RESOURCE_STOCKOUT (ERROR):\n For zonal autoscalers: there is a resource stockout in the chosen zone.\n For regional autoscalers: in at least one of the zones you're using\n there is a resource stockout.\n\n\nNew values might be added in the future. Some of the values might not be\navailable in all API versions.", + "enum": [ + "ALL_INSTANCES_UNHEALTHY", + "BACKEND_SERVICE_DOES_NOT_EXIST", + "CAPPED_AT_MAX_NUM_REPLICAS", + "CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE", + "CUSTOM_METRIC_INVALID", + "MIN_EQUALS_MAX", + "MISSING_CUSTOM_METRIC_DATA_POINTS", + "MISSING_LOAD_BALANCING_DATA_POINTS", + "MODE_OFF", + "MODE_ONLY_SCALE_OUT", + "MODE_ONLY_UP", + "MORE_THAN_ONE_BACKEND_SERVICE", + "NOT_ENOUGH_QUOTA_AVAILABLE", + "REGION_RESOURCE_STOCKOUT", + "SCALING_TARGET_DOES_NOT_EXIST", + "SCHEDULED_INSTANCES_GREATER_THAN_AUTOSCALER_MAX", + "SCHEDULED_INSTANCES_LESS_THAN_AUTOSCALER_MIN", + "UNKNOWN", + "UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION", + "ZONE_RESOURCE_STOCKOUT" + ], + "enumDescriptions": [ + "All instances in the instance group are unhealthy (not in RUNNING state).", + "There is no backend service attached to the instance group.", + "Autoscaler recommends a size greater than maxNumReplicas.", + "The custom metric samples are not exported often enough to be a credible\nbase for autoscaling.", + "The custom metric that was specified does not exist or does not have the\nnecessary labels.", + "The minNumReplicas is equal to maxNumReplicas. This means the autoscaler\ncannot add or remove instances from the instance group.", + "The autoscaler did not receive any data from the custom metric configured\nfor autoscaling.", + "The autoscaler is configured to scale based on a load balancing signal\nbut the instance group has not received any requests from the load\nbalancer.", + "Autoscaling is turned off. The number of instances in the group won't\nchange automatically. The autoscaling configuration is preserved.", + "Autoscaling is in the \"Autoscale only scale out\" mode.\nInstances in the group will be only added.", + "Autoscaling is in the \"Autoscale only out\" mode. Instances in the group\nwill be only added.", + "The instance group cannot be autoscaled because it has more than one\nbackend service attached to it.", + "There is insufficient quota for the necessary resources, such as CPU or\nnumber of instances.", + "Showed only for regional autoscalers: there is a resource stockout in\nthe chosen region.", + "The target to be scaled does not exist.", + "For some scaling schedules minRequiredReplicas is greater than\nmaxNumReplicas. Autoscaler always recommends at most maxNumReplicas\ninstances.", + "For some scaling schedules minRequiredReplicas is less than\nminNumReplicas. Autoscaler always recommends at least minNumReplicas\ninstances.", + "", + "Autoscaling does not work with an HTTP/S load balancer that has been\nconfigured for maxRate.", + "For zonal autoscalers: there is a resource stockout in the chosen zone.\nFor regional autoscalers: in at least one of the zones you're using there\nis a resource stockout." ], "type": "string" } }, "type": "object" }, - "AcceleratorType": { - "description": "Represents an Accelerator Type resource.\n\nGoogle Cloud Platform provides graphics processing units (accelerators) that\nyou can add to VM instances to improve or accelerate performance when working\nwith intensive workloads. For more information, readGPUs on Compute Engine.", - "id": "AcceleratorType", - "properties": { - "creationTimestamp": { - "description": "[Output Only] Creation timestamp inRFC3339 text format.", - "type": "string" - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this accelerator type." - }, - "description": { - "description": "[Output Only] An optional textual description of the resource.", - "type": "string" - }, - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "type": "string" - }, - "kind": { - "default": "compute#acceleratorType", - "description": "Output only. [Output Only] The type of the resource. Alwayscompute#acceleratorType for accelerator types.", - "readOnly": true, - "type": "string" - }, - "maximumCardsPerInstance": { - "description": "[Output Only] Maximum number of accelerator cards allowed per instance.", - "format": "int32", - "type": "integer" - }, - "name": { - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined, fully qualified URL for this resource.", - "readOnly": true, - "type": "string" - }, - "zone": { - "description": "[Output Only] The name of the zone where the accelerator type resides,\nsuch as us-central1-a.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", - "type": "string" - } - }, - "type": "object" - }, - "AcceleratorTypeAggregatedList": { - "id": "AcceleratorTypeAggregatedList", + "AutoscalersScopedList": { + "id": "AutoscalersScopedList", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" - }, - "items": { - "additionalProperties": { - "$ref": "AcceleratorTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of accelerator types." - }, - "description": "A list of AcceleratorTypesScopedList resources.", - "type": "object" - }, - "kind": { - "default": "compute#acceleratorTypeAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#acceleratorTypeAggregatedList for aggregated lists of\naccelerator types.", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, - "type": "string" - }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", + "autoscalers": { + "description": "[Output Only] A list of autoscalers contained in this scope.", "items": { - "type": "string" + "$ref": "Autoscaler" }, - "readOnly": true, "type": "array" }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "[Output Only] Informational warning which replaces the list of autoscalers\nwhen the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -43826,29 +50317,461 @@ "type": "string" } }, - "type": "object" + "type": "object" + } + }, + "type": "object" + }, + "AutoscalingPolicy": { + "description": "Cloud Autoscaler policy.", + "id": "AutoscalingPolicy", + "properties": { + "coolDownPeriodSec": { + "description": "The number of seconds that your application takes to initialize on a VM\ninstance. This is referred to as the\n[initialization period](/compute/docs/autoscaler#cool_down_period).\nSpecifying an accurate initialization period improves\nautoscaler decisions. For example, when scaling out, the autoscaler ignores\ndata from VMs that are still initializing because those VMs might not yet\nrepresent normal usage of your application. The default initialization\nperiod is 60 seconds.\n\nInitialization periods might vary because of numerous\nfactors. We recommend that you test how long your application takes to\ninitialize. To do this, create a VM and time your application's startup\nprocess.", + "format": "int32", + "type": "integer" + }, + "cpuUtilization": { + "$ref": "AutoscalingPolicyCpuUtilization", + "description": "Defines the CPU utilization policy that allows the autoscaler to scale\nbased on the average CPU utilization of a managed instance group." + }, + "customMetricUtilizations": { + "description": "Configuration parameters of autoscaling based on a custom metric.", + "items": { + "$ref": "AutoscalingPolicyCustomMetricUtilization" + }, + "type": "array" + }, + "loadBalancingUtilization": { + "$ref": "AutoscalingPolicyLoadBalancingUtilization", + "description": "Configuration parameters of autoscaling based on load balancer." + }, + "maxNumReplicas": { + "description": "The maximum number of instances that the autoscaler can scale out to. This\nis required when creating or updating an autoscaler. The maximum number\nof replicas must not be lower than minimal number of replicas.", + "format": "int32", + "type": "integer" + }, + "minNumReplicas": { + "description": "The minimum number of replicas that the autoscaler can scale in to.\nThis cannot be less than 0. If not provided, autoscaler chooses a\ndefault value depending on maximum number of instances allowed.", + "format": "int32", + "type": "integer" + }, + "mode": { + "description": "Defines the operating mode for this policy.\nThe following modes are available:\n \n - OFF: Disables the autoscaler but maintains its\n configuration.\n - ONLY_SCALE_OUT: Restricts the autoscaler to add\n VM instances only.\n - ON: Enables all autoscaler activities according to its\n policy.\n\n\nFor more information, see \n\"Turning off or restricting an autoscaler\"", + "enum": [ + "OFF", + "ON", + "ONLY_SCALE_OUT", + "ONLY_UP" + ], + "enumDescriptions": [ + "Do not automatically scale the MIG in or out.\nThe recommended_size field contains the size of MIG that would be set if\nthe actuation mode was enabled.", + "Automatically scale the MIG in and out according to the policy.", + "Automatically create VMs according to the policy, but do not scale\nthe MIG in.", + "Automatically create VMs according to the policy, but do not scale\nthe MIG in." + ], + "type": "string" + }, + "scaleInControl": { + "$ref": "AutoscalingPolicyScaleInControl" + }, + "scalingSchedules": { + "additionalProperties": { + "$ref": "AutoscalingPolicyScalingSchedule" + }, + "description": "Scaling schedules defined for an autoscaler. Multiple schedules\ncan be set on an autoscaler, and they can overlap. During overlapping\nperiods the greatest min_required_replicas of all scaling schedules is\napplied. Up to 128 scaling schedules are allowed.", + "type": "object" + }, + "stabilizationPeriodSec": { + "description": "The number of seconds that autoscaler waits for load stabilization before\nmaking scale-in decisions. This is referred to as the\n[stabilization period](/compute/docs/autoscaler#stabilization_period).\nThis might appear as a delay in scaling in but it is an important mechanism\nfor your application to not have fluctuating size due to short term load\nfluctuations.\n\nThe default stabilization period is 600 seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AutoscalingPolicyCpuUtilization": { + "description": "CPU utilization policy.", + "id": "AutoscalingPolicyCpuUtilization", + "properties": { + "predictiveMethod": { + "description": "Indicates whether predictive autoscaling based on CPU metric is enabled.\nValid values are:\n\n* NONE (default). No predictive method is used. The autoscaler scales the\ngroup to meet current demand based on real-time metrics.\n* OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by\nmonitoring daily and weekly load patterns and scaling out ahead of\nanticipated demand.", + "enum": [ + "NONE", + "OPTIMIZE_AVAILABILITY" + ], + "enumDescriptions": [ + "No predictive method is used. The autoscaler scales the group to meet\ncurrent demand based on real-time metrics", + "Predictive autoscaling improves availability by monitoring daily and\nweekly load patterns and scaling out ahead of anticipated demand." + ], + "type": "string" + }, + "utilizationTarget": { + "description": "The target CPU utilization that the autoscaler maintains. Must be\na float value in the range (0, 1]. If not specified, the default is0.6.\n\nIf the CPU level is below the target utilization, the autoscaler scales\nin the number of instances until it reaches the minimum number of\ninstances you specified or until the average CPU of your instances\nreaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler\nscales out until it reaches the maximum number of instances you\nspecified or until the average utilization reaches the target\nutilization.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "AutoscalingPolicyCustomMetricUtilization": { + "description": "Custom utilization metric policy.", + "id": "AutoscalingPolicyCustomMetricUtilization", + "properties": { + "filter": { + "description": "A filter string, compatible with a Stackdriver Monitoringfilter string forTimeSeries.list API call. This filter is\nused to select a specific TimeSeries for the purpose of autoscaling and\nto determine whether the metric is exporting per-instance or\nper-group data.\n\nFor the filter to be valid for autoscaling purposes, the following rules\napply:\n \n \n - You can only use the AND operator for joining\n selectors.\n - You can only use direct equality comparison operator\n (=) without any functions for each selector.\n - You can specify the metric in both the filter string and in the\n metric field. However, if specified in both places, the metric must\n be identical.\n - The monitored resource type\n determines what kind of values are expected for the metric. If it is\n a gce_instance, the autoscaler expects the metric to\n include a separate TimeSeries for each instance in a group. In such a\n case, you cannot filter on resource labels.\n \n \n If the resource type is any other value, the autoscaler expects\n this metric to contain values that apply to the entire autoscaled\n instance group and resource label filtering can be performed to\n point autoscaler at the correct TimeSeries to scale upon. This is\n called a *per-group metric* for the purpose of autoscaling.\n \n If not specified, the type defaults to\n gce_instance.\n\n\n\nTry to provide a filter that is selective enough to pick just one\nTimeSeries for the autoscaled group or for each of the instances (if you\nare using gce_instance resource type). If multiple\nTimeSeries are returned upon the query execution, the autoscaler will sum\ntheir respective values to obtain its scaling value.", + "type": "string" + }, + "metric": { + "description": "The identifier (type) of the Stackdriver Monitoring metric. The metric\ncannot have negative values.\n\nThe metric must have a value type of INT64 orDOUBLE.", + "type": "string" + }, + "singleInstanceAssignment": { + "description": "If scaling is based on a per-group metric value that represents the\ntotal amount of work to be done or resource usage, set this value to an\namount assigned for a single instance of the scaled group. Autoscaler\nkeeps the number of instances proportional to the value of this\nmetric. The metric itself does not change value due to group\nresizing.\n\nA good metric to use with the target is for examplepubsub.googleapis.com/subscription/num_undelivered_messages\nor a custom metric exporting the total number of requests coming to\nyour instances.\n\nA bad example would be a metric exporting an average or median latency,\nsince this value can't include a chunk assignable to a single instance,\nit could be better used with utilization_target instead.", + "format": "double", + "type": "number" + }, + "utilizationTarget": { + "description": "The target value of the metric that autoscaler maintains. This\nmust be a positive value. A utilization metric scales number of\nvirtual machines handling requests to increase or decrease\nproportionally to the metric.\n\nFor example, a good metric to use as a utilization_target ishttps://www.googleapis.com/compute/v1/instance/network/received_bytes_count.\nThe autoscaler works to keep this value constant for each of the\ninstances.", + "format": "double", + "type": "number" + }, + "utilizationTargetType": { + "description": "Defines how target utilization value is expressed for a Stackdriver\nMonitoring metric. Either GAUGE,DELTA_PER_SECOND, or DELTA_PER_MINUTE.", + "enum": [ + "DELTA_PER_MINUTE", + "DELTA_PER_SECOND", + "GAUGE" + ], + "enumDescriptions": [ + "Sets the utilization target value for a cumulative or delta metric,\nexpressed as the rate of growth per minute.", + "Sets the utilization target value for a cumulative or delta metric,\nexpressed as the rate of growth per second.", + "Sets the utilization target value for a gauge metric. The autoscaler\nwill collect the average utilization of the virtual machines from the\nlast couple of minutes, and compare the value to the utilization\ntarget value to perform autoscaling." + ], + "type": "string" + } + }, + "type": "object" + }, + "AutoscalingPolicyLoadBalancingUtilization": { + "description": "Configuration parameters of autoscaling based on load balancing.", + "id": "AutoscalingPolicyLoadBalancingUtilization", + "properties": { + "utilizationTarget": { + "description": "Fraction of backend capacity utilization (set in HTTP(S) load balancing\nconfiguration) that the autoscaler maintains. Must be a positive float\nvalue. If not defined, the default is 0.8.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "AutoscalingPolicyScaleInControl": { + "description": "Configuration that allows for slower scale in so that even if Autoscaler\nrecommends an abrupt scale in of a MIG, it will be throttled as specified\nby the parameters below.", + "id": "AutoscalingPolicyScaleInControl", + "properties": { + "maxScaledInReplicas": { + "$ref": "FixedOrPercent", + "description": "Maximum allowed number (or %) of VMs that can be deducted from the peak\nrecommendation during the window autoscaler looks at when computing\nrecommendations. Possibly all these VMs can be deleted at once so user\nservice needs to be prepared to lose that many VMs in one step." + }, + "timeWindowSec": { + "description": "How far back autoscaling looks when computing recommendations to\ninclude directives regarding slower scale in, as described above.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AutoscalingPolicyScalingSchedule": { + "description": "Scaling based on user-defined schedule. The message describes a single\nscaling schedule. A scaling schedule changes the minimum number of VM\ninstances an autoscaler can recommend, which can trigger scaling out.", + "id": "AutoscalingPolicyScalingSchedule", + "properties": { + "description": { + "description": "A description of a scaling schedule.", + "type": "string" + }, + "disabled": { + "description": "A boolean value that specifies whether a scaling schedule can influence\nautoscaler recommendations. If set to true, then a scaling schedule has\nno effect. This field is optional, and its value is false by default.", + "type": "boolean" + }, + "durationSec": { + "description": "The duration of time intervals, in seconds, for which this\nscaling schedule is to run. The minimum allowed value is 300.\nThis field is required.", + "format": "int32", + "type": "integer" + }, + "minRequiredReplicas": { + "description": "The minimum number of VM instances that the autoscaler will\nrecommend in time intervals starting according to schedule. This field is\nrequired.", + "format": "int32", + "type": "integer" + }, + "schedule": { + "description": "The start timestamps of time intervals when this scaling\nschedule is to provide a scaling signal. This field uses the extended\ncron format (with an optional year field). The expression can describe a\nsingle timestamp if the optional year is set, in which case the scaling\nschedule runs once. The schedule is interpreted with respect to\ntime_zone. This field is required. Note: These timestamps only describe\nwhen autoscaler starts providing the scaling signal. The VMs\nneed additional time to become serving.", + "type": "string" + }, + "timeZone": { + "description": "The time zone to use when interpreting the schedule.\nThe value of this field must be a time zone name from the tz database:\nhttps://en.wikipedia.org/wiki/Tz_database. This field is assigned a\ndefault value of \"UTC\" if left empty.", + "type": "string" + } + }, + "type": "object" + }, + "Backend": { + "description": "Message containing information of one individual backend.", + "id": "Backend", + "properties": { + "balancingMode": { + "description": "Specifies how to determine whether the backend of a load balancer can\nhandle additional traffic or is fully loaded. For usage guidelines, see\nConnection balancing mode.\n\nBackends must use compatible balancing modes. For more information, see\nSupported balancing modes and target capacity settings and\nRestrictions and guidance for instance groups.\n\nNote: Currently, if you use the API to configure incompatible balancing\nmodes, the configuration might be accepted even though it has no impact\nand is ignored. Specifically, Backend.maxUtilization is ignored when\nBackend.balancingMode is RATE. In the future, this incompatible combination\nwill be rejected.", + "enum": [ + "CONNECTION", + "CUSTOM_METRICS", + "IN_FLIGHT", + "RATE", + "UTILIZATION" + ], + "enumDescriptions": [ + "Balance based on the number of simultaneous connections.", + "Based on custom defined and reported metrics.", + "Balance based on the number of in-flight requests.", + "Balance based on requests per second (RPS).", + "Balance based on the backend utilization." + ], + "type": "string" + }, + "capacityScaler": { + "description": "A multiplier applied to the backend's target capacity of its balancing\nmode.\nThe default value is 1, which means the group serves up to\n100% of its configured capacity (depending onbalancingMode). A setting of 0 means the group is\ncompletely drained, offering 0% of its available capacity. The valid ranges\nare 0.0 and [0.1,1.0].\nYou cannot configure a setting larger than 0 and smaller than0.1.\nYou cannot configure a setting of 0 when there is only one\nbackend attached to the backend service.\n\nNot available with backends that don't support using abalancingMode. This includes backends such as global\ninternet NEGs, regional serverless NEGs, and PSC NEGs.", + "format": "float", + "type": "number" + }, + "customMetrics": { + "description": "List of custom metrics that are used for CUSTOM_METRICS\nBalancingMode.", + "items": { + "$ref": "BackendCustomMetric" + }, + "type": "array" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "failover": { + "description": "This field designates whether this is a failover backend. More than one\nfailover backend can be configured for a given BackendService.", + "type": "boolean" + }, + "group": { + "description": "The fully-qualified URL of aninstance\ngroup or network endpoint\ngroup (NEG) resource. To determine what types of backends a load\nbalancer supports, see the [Backend services\noverview](https://cloud.google.com/load-balancing/docs/backend-service#backends).\n\nYou must use the *fully-qualified* URL (starting withhttps://www.googleapis.com/) to specify the instance group\nor NEG. Partial URLs are not supported.\n\nIf haPolicy is specified, backends must refer to NEG resources of type\nGCE_VM_IP.", + "type": "string" + }, + "maxConnections": { + "description": "Defines a target maximum number of simultaneous connections. For usage\nguidelines, seeConnection\nbalancing mode and Utilization\nbalancing mode. Not available if the backend'sbalancingMode is RATE.", + "format": "int32", + "type": "integer" + }, + "maxConnectionsPerEndpoint": { + "description": "Defines a target maximum number of simultaneous connections. For usage\nguidelines, seeConnection\nbalancing mode and Utilization\nbalancing mode.\n\nNot available if the backend's balancingMode isRATE.", + "format": "int32", + "type": "integer" + }, + "maxConnectionsPerInstance": { + "description": "Defines a target maximum number of simultaneous connections.\nFor usage guidelines, seeConnection\nbalancing mode and Utilization\nbalancing mode.\n\nNot available if the backend's balancingMode isRATE.", + "format": "int32", + "type": "integer" + }, + "maxInFlightRequests": { + "description": "Defines a maximum number of in-flight requests for the whole NEG or\ninstance group. Not available if backend's balancingMode isRATE or CONNECTION.", + "format": "int32", + "type": "integer" + }, + "maxInFlightRequestsPerEndpoint": { + "description": "Defines a maximum number of in-flight requests for a single endpoint.\nNot available if backend's balancingMode is RATE\nor CONNECTION.", + "format": "int32", + "type": "integer" + }, + "maxInFlightRequestsPerInstance": { + "description": "Defines a maximum number of in-flight requests for a single VM.\nNot available if backend's balancingMode is RATE\nor CONNECTION.", + "format": "int32", + "type": "integer" + }, + "maxRate": { + "description": "Defines a maximum number of HTTP requests per second (RPS). For\nusage guidelines, seeRate\nbalancing mode and Utilization\nbalancing mode.\n\nNot available if the backend's balancingMode isCONNECTION.", + "format": "int32", + "type": "integer" + }, + "maxRatePerEndpoint": { + "description": "Defines a maximum target for requests per second (RPS). For usage\nguidelines, seeRate\nbalancing mode and Utilization\nbalancing mode.\n\nNot available if the backend's balancingMode isCONNECTION.", + "format": "float", + "type": "number" + }, + "maxRatePerInstance": { + "description": "Defines a maximum target for requests per second (RPS). For usage\nguidelines, seeRate\nbalancing mode and Utilization\nbalancing mode.\n\nNot available if the backend's balancingMode isCONNECTION.", + "format": "float", + "type": "number" + }, + "maxUtilization": { + "description": "Optional parameter to define a target capacity for theUTILIZATION balancing mode. The valid range is[0.0, 1.0].\n\nFor usage guidelines, seeUtilization\nbalancing mode.", + "format": "float", + "type": "number" + }, + "orchestrationInfo": { + "$ref": "BackendBackendOrchestrationInfo", + "description": "Information about the resource or system that manages the backend." + }, + "preference": { + "description": "This field indicates whether this backend should be fully utilized before\nsending traffic to backends with default preference. The possible values\nare:\n \n - PREFERRED: Backends with this preference level will be\n filled up to their capacity limits first, based on RTT.\n - DEFAULT: If preferred backends don't have enough\n capacity, backends in this layer would be used and traffic would be\n assigned based on the load balancing algorithm you use. This is the\n default", + "enum": [ + "DEFAULT", + "PREFERENCE_UNSPECIFIED", + "PREFERRED" + ], + "enumDescriptions": [ + "No preference.", + "If preference is unspecified, we set it to the DEFAULT value", + "Traffic will be sent to this backend first." + ], + "type": "string" + }, + "trafficDuration": { + "enum": [ + "LONG", + "SHORT", + "TRAFFIC_DURATION_UNSPECIFIED" + ], + "enumDescriptions": [ + "Most of the requests are expected to take more than multiple seconds to\nfinish.", + "Most requests are expected to finish with a sub-second latency.", + "Traffic duration is unspecified." + ], + "type": "string" + } + }, + "type": "object" + }, + "BackendBackendOrchestrationInfo": { + "description": "A message containing information about the resource or system that manages\nthe backend.", + "id": "BackendBackendOrchestrationInfo", + "properties": { + "resourceUri": { + "description": "The URI of the resource or system that manages the backend.", + "type": "string" + } + }, + "type": "object" + }, + "BackendBucket": { + "description": "Represents a Cloud Storage Bucket resource.\n\nThis Cloud Storage bucket resource is referenced by a URL map of a load\nbalancer. For more information, readBackend Buckets.", + "id": "BackendBucket", + "properties": { + "bucketName": { + "description": "Cloud Storage bucket name.", + "type": "string" + }, + "cdnPolicy": { + "$ref": "BackendBucketCdnPolicy", + "description": "Cloud CDN configuration for this BackendBucket." + }, + "compressionMode": { + "description": "Compress text responses using Brotli or gzip compression, based on\nthe client's Accept-Encoding header.", + "enum": [ + "AUTOMATIC", + "DISABLED" + ], + "enumDescriptions": [ + "Automatically uses the best compression based on the Accept-Encoding\nheader sent by the client.", + "Disables compression. Existing compressed responses cached by\nCloud CDN will not be served to clients." + ], + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp inRFC3339\ntext format.", + "type": "string" + }, + "customResponseHeaders": { + "description": "Headers that the Application Load Balancer should add to proxied responses.", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client\nwhen the resource is created.", + "type": "string" + }, + "edgeSecurityPolicy": { + "description": "[Output Only] The resource URL for the edge security policy associated with\nthis backend bucket.", + "type": "string" + }, + "enableCdn": { + "description": "If true, enable Cloud CDN for this BackendBucket.", + "type": "boolean" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#backendBucket", + "description": "Output only. Type of the resource.", + "readOnly": true, + "type": "string" + }, + "loadBalancingScheme": { + "description": "The value can only be INTERNAL_MANAGED for cross-region internal layer 7\nload balancer.\n\nIf loadBalancingScheme is not specified, the backend bucket can be used by\nclassic global external load balancers, or global application external load\nbalancers, or both.", + "enum": [ + "EXTERNAL_MANAGED", + "INTERNAL_MANAGED" + ], + "enumDescriptions": [ + "Signifies that this will be used for regional external Application Load\nBalancers.", + "Signifies that this will be used for internal Application Load Balancers." + ], + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "params": { + "$ref": "BackendBucketParams", + "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." + }, + "region": { + "description": "Output only. [Output Only] URL of the region where the regional backend bucket\nresides. This field is not applicable to global backend buckets.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "readOnly": true, + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "usedBy": { + "description": "Output only. [Output Only] List of resources referencing that backend bucket.", + "items": { + "$ref": "BackendBucketUsedBy" + }, + "readOnly": true, + "type": "array" } }, "type": "object" }, - "AcceleratorTypeList": { - "description": "Contains a list of accelerator types.", - "id": "AcceleratorTypeList", + "BackendBucketAggregatedList": { + "id": "BackendBucketAggregatedList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of AcceleratorType resources.", - "items": { - "$ref": "AcceleratorType" + "additionalProperties": { + "$ref": "BackendBucketsScopedList", + "description": "Name of the scope containing this set of BackendBuckets." }, - "type": "array" + "description": "A list of BackendBucketsScopedList resources.", + "type": "object" }, "kind": { - "default": "compute#acceleratorTypeList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#acceleratorTypeList for lists of accelerator types.", + "default": "compute#backendBucketAggregatedList", + "description": "Output only. Type of resource.", "readOnly": true, "type": "string" }, @@ -43988,387 +50911,111 @@ }, "type": "object" }, - "AcceleratorTypesScopedList": { - "id": "AcceleratorTypesScopedList", + "BackendBucketCdnPolicy": { + "description": "Message containing Cloud CDN configuration for a backend bucket.", + "id": "BackendBucketCdnPolicy", "properties": { - "acceleratorTypes": { - "description": "[Output Only] A list of accelerator types contained in this scope.", + "bypassCacheOnRequestHeaders": { + "description": "Bypass the cache when the specified request headers are matched - e.g.\nPragma or Authorization headers. Up to 5 headers can be specified.\nThe cache is bypassed for all cdnPolicy.cacheMode settings.", "items": { - "$ref": "AcceleratorType" + "$ref": "BackendBucketCdnPolicyBypassCacheOnRequestHeader" }, "type": "array" }, - "warning": { - "description": "[Output Only] An informational warning that appears when the accelerator\ntypes list is empty.", - "properties": { - "code": { - "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", - "LARGE_DEPLOYMENT_WARNING", - "LIST_OVERHEAD_QUOTA_EXCEED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "PARTIAL_SUCCESS", - "QUOTA_INFO_UNAVAILABLE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDeprecated": [ - false, - false, - false, - false, - false, - false, - true, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false - ], - "enumDescriptions": [ - "Warning about failed cleanup of transient changes made by a failed\noperation.", - "A link to a deprecated resource was created.", - "When deploying and at least one of the resources has a type marked as\ndeprecated", - "The user created a boot disk that is larger than image size.", - "When deploying and at least one of the resources has a type marked as\nexperimental", - "Warning that is present in an external api call", - "Warning that value of a field has been overridden.\nDeprecated unused field.", - "The operation involved use of an injected kernel, which is deprecated.", - "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", - "When deploying a deployment with a exceedingly large number of resources", - "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", - "A resource depends on a missing type", - "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", - "The route's next hop instance cannot ip forward.", - "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", - "The route's nextHopInstance URL refers to an instance that does not exist.", - "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", - "The route's next hop instance does not have a status of RUNNING.", - "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", - "No results are present on a particular list page.", - "Success is reported, but some results may be missing due to errors", - "Quota information is not available to client requests (e.g:\nregions.list).", - "The user attempted to use a resource that requires a TOS they have not\naccepted.", - "Warning that a resource is in use.", - "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", - "When a resource schema validation is ignored.", - "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", - "When undeclared properties in the schema are present", - "A given scope cannot be reached." - ], - "type": "string" - }, - "data": { - "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", - "items": { - "properties": { - "key": { - "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", - "type": "string" - }, - "value": { - "description": "[Output Only] A warning data value corresponding to the key.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "message": { - "description": "[Output Only] A human-readable description of the warning code.", - "type": "string" - } - }, - "type": "object" - } - }, - "type": "object" - }, - "AccessConfig": { - "description": "An access configuration attached to an instance's network interface.\nOnly one access config per instance is supported.", - "id": "AccessConfig", - "properties": { - "externalIpv6": { - "description": "Applies to ipv6AccessConfigs only.\nThe first IPv6 address of the external IPv6 range associated\nwith this instance, prefix length is stored inexternalIpv6PrefixLength in ipv6AccessConfig. To\nuse a static external IP address, it must be unused and in the same region\nas the instance's zone. If not specified, Google Cloud will automatically\nassign an external IPv6 address from the instance's subnetwork.", - "type": "string" - }, - "externalIpv6PrefixLength": { - "description": "Applies to ipv6AccessConfigs only. The prefix length of the\nexternal IPv6 range.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "compute#accessConfig", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig for access configs.", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "The name of this access configuration. In accessConfigs\n(IPv4), the default and recommended name is External NAT, but\nyou can use any arbitrary string, such as My external IP orNetwork Access. In ipv6AccessConfigs, the\nrecommend name is External IPv6.", - "type": "string" - }, - "natIP": { - "description": "Applies to accessConfigs (IPv4) only. Anexternal IP\naddress associated with this instance. Specify an unused static\nexternal IP address available to the project or leave this field undefined\nto use an IP from a shared ephemeral IP address pool. If you specify a\nstatic external IP address, it must live in the same region as the zone of\nthe instance.", - "type": "string" - }, - "networkTier": { - "description": "This signifies the networking tier used for configuring this access\nconfiguration and can only take the following values: PREMIUM,STANDARD.\n\nIf an AccessConfig is specified without a valid external IP address, an\nephemeral IP will be created with this networkTier.\n\nIf an AccessConfig with a valid external IP address is specified, it must\nmatch that of the networkTier associated with the Address resource owning\nthat IP.", - "enum": [ - "FIXED_STANDARD", - "PREMIUM", - "STANDARD", - "STANDARD_OVERRIDES_FIXED_STANDARD" - ], - "enumDescriptions": [ - "Public internet quality with fixed bandwidth.", - "High quality, Google-grade network tier, support for all networking\nproducts.", - "Public internet quality, only limited support for other networking\nproducts.", - "(Output only) Temporary tier for FIXED_STANDARD when fixed standard tier\nis expired or not configured." - ], - "type": "string" - }, - "publicPtrDomainName": { - "description": "The DNS domain name for the public PTR record.\n\nYou can set this field only if the `setPublicPtr` field is enabled inaccessConfig. If this field is unspecified inipv6AccessConfig, a default PTR record will be created for\nfirst IP in associated external IPv6 range.", - "type": "string" - }, - "securityPolicy": { - "description": "The resource URL for the security policy associated with this access\nconfig.", - "type": "string" - }, - "setPublicPtr": { - "description": "Specifies whether a public DNS 'PTR' record should be created to map the\nexternal IP address of the instance to a DNS domain name.\n\nThis field is not used in ipv6AccessConfig. A default PTR\nrecord will be created if the VM has external IPv6 range associated.", - "type": "boolean" - }, - "type": { - "description": "The type of configuration. In accessConfigs (IPv4), the\ndefault and only option is ONE_TO_ONE_NAT. Inipv6AccessConfigs, the default and only option isDIRECT_IPV6.", - "enum": [ - "DIRECT_IPV6", - "ONE_TO_ONE_NAT" - ], - "enumDescriptions": [ - "", - "" - ], - "type": "string" - } - }, - "type": "object" - }, - "Address": { - "description": "Represents an IP Address resource.\n\nGoogle Compute Engine has two IP Address resources:\n\n* [Global (external and\ninternal)](https://cloud.google.com/compute/docs/reference/rest/v1/globalAddresses)\n* [Regional (external and\ninternal)](https://cloud.google.com/compute/docs/reference/rest/v1/addresses)\n\nFor more information, see\nReserving a static external IP address.", - "id": "Address", - "properties": { - "address": { - "description": "The static IP address represented by this resource.", - "type": "string" - }, - "addressType": { - "description": "The type of address to reserve, either INTERNAL orEXTERNAL. If unspecified, defaults to EXTERNAL.", - "enum": [ - "EXTERNAL", - "INTERNAL", - "UNSPECIFIED_TYPE" - ], - "enumDescriptions": [ - "A publicly visible external IP address.", - "A private network IP address, for use with an Instance or Internal Load\nBalancer forwarding rule.", - "" - ], - "type": "string" - }, - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this field when you\ncreate the resource.", - "type": "string" - }, - "id": { - "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "readOnly": true, - "type": "string" - }, - "ipCollection": { - "description": "Reference to the source of external IPv4 addresses,\nlike a PublicDelegatedPrefix (PDP) for BYOIP.\nThe PDP must support enhanced IPv4 allocations.\n\nUse one of the following formats to specify a PDP when reserving an\nexternal IPv4 address using BYOIP.\n \n - \n Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name\n - \n Partial URL, as in\n \n \n - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name\n - regions/region/publicDelegatedPrefixes/pdp-name", - "type": "string" + "cacheKeyPolicy": { + "$ref": "BackendBucketCdnPolicyCacheKeyPolicy", + "description": "The CacheKeyPolicy for this CdnPolicy." }, - "ipVersion": { - "description": "The IP version that will be used by this address. Valid options areIPV4 or IPV6.", + "cacheMode": { + "description": "Specifies the cache setting for all responses from this backend.\nThe possible values are:USE_ORIGIN_HEADERS Requires the origin to set valid caching\nheaders to cache content. Responses without these headers will not be\ncached at Google's edge, and will require a full trip to the origin on\nevery request, potentially impacting performance and increasing load on\nthe origin server.FORCE_CACHE_ALL Cache all content, ignoring any \"private\",\n\"no-store\" or \"no-cache\" directives in Cache-Control response headers.\nWarning: this may result in Cloud CDN caching private,\nper-user (user identifiable) content.CACHE_ALL_STATIC Automatically cache static content,\nincluding common image formats, media (video and audio), and web assets\n(JavaScript and CSS). Requests and responses that are marked as\nuncacheable, as well as dynamic content (including HTML), will not be\ncached.\n\nIf no value is provided for cdnPolicy.cacheMode, it defaults\nto CACHE_ALL_STATIC.", "enum": [ - "IPV4", - "IPV6", - "UNSPECIFIED_VERSION" + "CACHE_ALL_STATIC", + "FORCE_CACHE_ALL", + "INVALID_CACHE_MODE", + "USE_ORIGIN_HEADERS" ], "enumDescriptions": [ + "Automatically cache static content, including common image formats,\nmedia (video and audio), and web assets (JavaScript and CSS).\nRequests and responses that are marked as uncacheable, as well as\ndynamic content (including HTML), will not be cached.", + "Cache all content, ignoring any \"private\", \"no-store\" or \"no-cache\"\ndirectives in Cache-Control response headers.\nWarning: this may result in Cloud CDN caching private,\nper-user (user identifiable) content.", "", - "", - "" + "Requires the origin to set valid caching headers to cache content.\nResponses without these headers will not be cached at Google's edge,\nand will require a full trip to the origin on every request,\npotentially impacting performance and increasing load on the\norigin server." ], "type": "string" }, - "ipv6EndpointType": { - "description": "The endpoint type of this address, which should be VM\nor NETLB. This is used for deciding which type of endpoint\nthis address can be used after the external IPv6 address reservation.", - "enum": [ - "NETLB", - "VM" - ], - "enumDescriptions": [ - "Reserved IPv6 address can be used on network load balancer.", - "Reserved IPv6 address can be used on VM." - ], - "type": "string" + "clientTtl": { + "description": "Specifies a separate client (e.g. browser client) maximum TTL. This is\nused to clamp the max-age (or Expires) value sent to the client. With\nFORCE_CACHE_ALL, the lesser of client_ttl and default_ttl is used for the\nresponse max-age directive, along with a \"public\" directive. For\ncacheable content in CACHE_ALL_STATIC mode, client_ttl clamps the max-age\nfrom the origin (if specified), or else sets the response max-age\ndirective to the lesser of the client_ttl and default_ttl, and also\nensures a \"public\" cache-control directive is present.\nIf a client TTL is not specified, a default value (1 hour) will be used.\nThe maximum allowed value is 31,622,400s (1 year).", + "format": "int32", + "type": "integer" }, - "kind": { - "default": "compute#address", - "description": "Output only. [Output Only] Type of the resource. Always compute#address for\naddresses.", - "readOnly": true, - "type": "string" + "defaultTtl": { + "description": "Specifies the default TTL for cached content served by this origin for\nresponses that do not have an existing valid TTL (max-age or s-maxage).\nSetting a TTL of \"0\" means \"always revalidate\".\nThe value of defaultTTL cannot be set to a value greater than that of\nmaxTTL, but can be equal.\nWhen the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL\nwill overwrite the TTL set in all responses. The maximum allowed value is\n31,622,400s (1 year), noting that infrequently accessed objects may be\nevicted from the cache before the defined TTL.", + "format": "int32", + "type": "integer" }, - "labelFingerprint": { - "description": "A fingerprint for the labels being applied to this Address, which is\nessentially a hash of the labels set used for optimistic locking. The\nfingerprint is initially generated by Compute Engine and changes after\nevery request to modify or update labels. You must always provide an\nup-to-date fingerprint hash in order to update or change labels,\notherwise the request will fail with error412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve an Address.", - "format": "byte", - "type": "string" + "maxTtl": { + "description": "Specifies the maximum allowed TTL for cached content served by this\norigin.\nCache directives that attempt to set a max-age or s-maxage higher than\nthis, or an Expires header more than maxTTL seconds in the future will\nbe capped at the value of maxTTL, as if it were the value of an\ns-maxage Cache-Control directive.\nHeaders sent to the client will not be modified.\nSetting a TTL of \"0\" means \"always revalidate\".\nThe maximum allowed value is 31,622,400s (1 year), noting that\ninfrequently accessed objects may be evicted from the cache before\nthe defined TTL.", + "format": "int32", + "type": "integer" }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035.\nLabel values may be empty.", - "type": "object" + "negativeCaching": { + "description": "Negative caching allows per-status code TTLs to be set, in order\nto apply fine-grained caching for common errors or redirects.\nThis can reduce the load on your origin and improve end-user\nexperience by reducing response latency.\nWhen the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS,\nnegative caching applies to responses with the specified response code\nthat lack any Cache-Control, Expires, or Pragma: no-cache directives.\nWhen the cache mode is set to FORCE_CACHE_ALL, negative caching applies\nto all responses with the specified response code, and override any\ncaching headers.\nBy default, Cloud CDN will apply the following default TTLs to these\nstatus codes:\nHTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m\nHTTP 404 (Not Found), 410 (Gone),\n451 (Unavailable For Legal Reasons): 120s\nHTTP 405 (Method Not Found), 501 (Not Implemented): 60s.\nThese defaults can be overridden in negative_caching_policy.", + "type": "boolean" }, - "name": { - "annotations": { - "required": [ - "compute.addresses.insert" - ] + "negativeCachingPolicy": { + "description": "Sets a cache TTL for the specified HTTP status code.\nnegative_caching must be enabled to configure negative_caching_policy.\nOmitting the policy and leaving negative_caching enabled will use\nCloud CDN's default cache TTLs.\nNote that when specifying an explicit negative_caching_policy, you\nshould take care to specify a cache TTL for all response codes\nthat you wish to cache. Cloud CDN will not apply any default\nnegative caching when a policy exists.", + "items": { + "$ref": "BackendBucketCdnPolicyNegativeCachingPolicy" }, - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character\nmust be a lowercase letter, and all following characters (except for the\nlast character) must be a dash, lowercase letter, or digit. The last\ncharacter must be a lowercase letter or digit.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "network": { - "description": "The URL of the network in which to reserve the address. This field can\nonly be used with INTERNAL type with theVPC_PEERING purpose.", - "type": "string" + "type": "array" }, - "networkTier": { - "description": "This signifies the networking tier used for configuring this address and\ncan only take the following values: PREMIUM orSTANDARD. Internal IP addresses are always Premium Tier;\nglobal external IP addresses are always Premium Tier; regional external IP\naddresses can be either Standard or Premium Tier.\n\nIf this field is not specified, it is assumed to be PREMIUM.", - "enum": [ - "FIXED_STANDARD", - "PREMIUM", - "STANDARD", - "STANDARD_OVERRIDES_FIXED_STANDARD" - ], - "enumDescriptions": [ - "Public internet quality with fixed bandwidth.", - "High quality, Google-grade network tier, support for all networking\nproducts.", - "Public internet quality, only limited support for other networking\nproducts.", - "(Output only) Temporary tier for FIXED_STANDARD when fixed standard tier\nis expired or not configured." - ], - "type": "string" + "requestCoalescing": { + "description": "If true then Cloud CDN will combine multiple concurrent cache fill\nrequests into a small number of requests to the origin.", + "type": "boolean" }, - "prefixLength": { - "description": "The prefix length if the resource represents an IP range.", + "serveWhileStale": { + "description": "Serve existing content from the cache (if available) when revalidating\ncontent with the origin, or when an error is encountered when refreshing\nthe cache.\nThis setting defines the default \"max-stale\" duration for any cached\nresponses that do not specify a max-stale directive. Stale responses that\nexceed the TTL configured here will not be served. The default limit\n(max-stale) is 86400s (1 day), which will allow stale content to be\nserved up to this limit beyond the max-age (or s-maxage) of a cached\nresponse.\nThe maximum allowed value is 604800 (1 week).\nSet this to zero (0) to disable serve-while-stale.", "format": "int32", "type": "integer" }, - "purpose": { - "description": "The purpose of this resource, which can be one of the following values:\n \n \n - GCE_ENDPOINT for addresses that are used by VM\n instances, alias IP ranges, load balancers, and similar resources.\n - DNS_RESOLVER for a DNS resolver address in a subnetwork\n for a Cloud DNS inbound\n forwarder IP addresses (regional internal IP address in a subnet of\n a VPC network)\n - VPC_PEERING for global internal IP addresses used for\n \n private services access allocated ranges.\n - NAT_AUTO for the regional external IP addresses used by\n Cloud NAT when allocating addresses using\n \n automatic NAT IP address allocation.\n - IPSEC_INTERCONNECT for addresses created from a private\n IP range that are reserved for a VLAN attachment in an\n *HA VPN over Cloud Interconnect* configuration. These addresses\n are regional resources.\n - `SHARED_LOADBALANCER_VIP` for an internal IP address that is assigned\n to multiple internal forwarding rules.\n - `PRIVATE_SERVICE_CONNECT` for a private network address that is\n used to configure Private Service Connect. Only global internal addresses\n can use this purpose.", - "enum": [ - "DNS_RESOLVER", - "GCE_ENDPOINT", - "IPSEC_INTERCONNECT", - "NAT_AUTO", - "PRIVATE_SERVICE_CONNECT", - "SERVERLESS", - "SHARED_LOADBALANCER_VIP", - "VPC_PEERING" - ], - "enumDescriptions": [ - "DNS resolver address in the subnetwork.", - "VM internal/alias IP, Internal LB service IP, etc.", - "A regional internal IP address range reserved for the VLAN attachment\nthat is used in HA VPN over Cloud Interconnect. This regional\ninternal IP address range must not overlap with any IP address range\nof subnet/route in the VPC network and its peering networks. After the\nVLAN attachment is created with the reserved IP address range, when\ncreating a new VPN gateway, its interface IP address is allocated\nfrom the associated VLAN attachment’s IP address range.", - "External IP automatically reserved for Cloud NAT.", - "A private network IP address that can be used to configure Private\nService Connect. This purpose can be specified only forGLOBAL addresses of Type INTERNAL", - "A regional internal IP address range reserved for Serverless.", - "A private network IP address that can be shared by multiple Internal\nLoad Balancer forwarding rules.", - "IP range for peer networks." - ], - "type": "string" - }, - "region": { - "description": "Output only. [Output Only] The URL of the region where a regional address resides.\nFor regional addresses, you must specify the region as a path parameter in\nthe HTTP request URL. *This field is not applicable to global\naddresses.*", - "readOnly": true, - "type": "string" - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", - "type": "string" - }, - "status": { - "description": "Output only. [Output Only] The status of the address, which can be one ofRESERVING, RESERVED, or IN_USE.\nAn address that is RESERVING is currently in the process of\nbeing reserved. A RESERVED address is currently reserved and\navailable to use. An IN_USE address is currently being used\nby another resource and is not available.", - "enum": [ - "IN_USE", - "RESERVED", - "RESERVING" - ], - "enumDescriptions": [ - "Address is being used by another resource and is not available.", - "Address is reserved and available to use.", - "Address is being reserved." - ], - "readOnly": true, + "signedUrlCacheMaxAgeSec": { + "description": "Maximum number of seconds the response to a signed URL request will be\nconsidered fresh. After this time period, the response will be\nrevalidated before being served. Defaults to 1hr (3600s). When serving\nresponses to signed URL requests, Cloud CDN will internally behave as\nthough all responses from this backend had a \"Cache-Control:\npublic, max-age=[TTL]\" header, regardless of any existing\nCache-Control header. The actual headers served in responses will not be\naltered.", + "format": "int64", "type": "string" }, - "subnetwork": { - "description": "The URL of the subnetwork in which to reserve the address. If an IP address\nis specified, it must be within the subnetwork's IP range. This field can\nonly be used with INTERNAL type with aGCE_ENDPOINT or DNS_RESOLVER purpose.", + "signedUrlKeyNames": { + "description": "[Output Only] Names of the keys for signing request URLs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "BackendBucketCdnPolicyBypassCacheOnRequestHeader": { + "description": "Bypass the cache when the specified request headers are present,\ne.g. Pragma or Authorization headers. Values are case insensitive.\nThe presence of such a header overrides the cache_mode setting.", + "id": "BackendBucketCdnPolicyBypassCacheOnRequestHeader", + "properties": { + "headerName": { + "description": "The header field name to match on when bypassing cache.\nValues are case-insensitive.", "type": "string" + } + }, + "type": "object" + }, + "BackendBucketCdnPolicyCacheKeyPolicy": { + "description": "Message containing what to include in the cache key for a request for\nCloud CDN.", + "id": "BackendBucketCdnPolicyCacheKeyPolicy", + "properties": { + "includeHttpHeaders": { + "description": "Allows HTTP request headers (by name) to be used in the cache key.", + "items": { + "type": "string" + }, + "type": "array" }, - "users": { - "description": "[Output Only] The URLs of the resources that are using this address.", + "queryStringWhitelist": { + "description": "Names of query string parameters to include in cache keys. Default\nparameters are always included. '&' and '=' will be percent encoded\nand not treated as delimiters.", "items": { "type": "string" }, @@ -44377,24 +51024,41 @@ }, "type": "object" }, - "AddressAggregatedList": { - "id": "AddressAggregatedList", + "BackendBucketCdnPolicyNegativeCachingPolicy": { + "description": "Specify CDN TTLs for response error codes.", + "id": "BackendBucketCdnPolicyNegativeCachingPolicy", + "properties": { + "code": { + "description": "The HTTP status code to define a TTL against. Only HTTP status codes\n300, 301, 302, 307, 308, 404, 405, 410, 421, 451 and 501 can be\nspecified as values, and you cannot specify a status code more than\nonce.", + "format": "int32", + "type": "integer" + }, + "ttl": { + "description": "The TTL (in seconds) for which to cache responses with the\ncorresponding status code.\nThe maximum allowed value is 1800s (30 minutes), noting that\ninfrequently accessed objects may be evicted from the cache before the\ndefined TTL.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "BackendBucketList": { + "description": "Contains a list of BackendBucket resources.", + "id": "BackendBucketList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "additionalProperties": { - "$ref": "AddressesScopedList", - "description": "[Output Only] Name of the scope containing this set of addresses." + "description": "A list of BackendBucket resources.", + "items": { + "$ref": "BackendBucket" }, - "description": "A list of AddressesScopedList resources.", - "type": "object" + "type": "array" }, "kind": { - "default": "compute#addressAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#addressAggregatedList for aggregated lists of\naddresses.", + "default": "compute#backendBucketList", + "description": "Output only. Type of resource.", "readOnly": true, "type": "string" }, @@ -44403,17 +51067,9 @@ "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, - "type": "string" - }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", - "items": { - "type": "string" - }, + "description": "Output only. [Output Only] Server-defined URL for this resource.", "readOnly": true, - "type": "array" + "type": "string" }, "warning": { "description": "[Output Only] Informational warning message.", @@ -44542,24 +51198,23 @@ }, "type": "object" }, - "AddressList": { - "description": "Contains a list of addresses.", - "id": "AddressList", + "BackendBucketListUsable": { + "id": "BackendBucketListUsable", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of Address resources.", + "description": "A list of BackendBucket resources.", "items": { - "$ref": "Address" + "$ref": "BackendBucket" }, "type": "array" }, "kind": { - "default": "compute#addressList", - "description": "Output only. [Output Only] Type of resource. Always compute#addressList for\nlists of addresses.", + "default": "compute#usableBackendBucketList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#usableBackendBucketList for lists of usable backend\nbuckets.", "readOnly": true, "type": "string" }, @@ -44699,18 +51354,43 @@ }, "type": "object" }, - "AddressesScopedList": { - "id": "AddressesScopedList", + "BackendBucketParams": { + "description": "Additional Backend Bucket parameters.", + "id": "BackendBucketParams", "properties": { - "addresses": { - "description": "[Output Only] A list of addresses contained in this scope.", + "resourceManagerTags": { + "additionalProperties": { + "type": "string" + }, + "description": "Tag keys/values directly bound to this resource.\nTag keys and values have the same definition as resource\nmanager tags. The field is allowed for INSERT\nonly. The keys/values to set on the resource should be specified in\neither ID { : } or Namespaced format\n{ : }.\nFor example the following are valid inputs:\n* {\"tagKeys/333\" : \"tagValues/444\", \"tagKeys/123\" : \"tagValues/456\"}\n* {\"123/environment\" : \"production\", \"345/abc\" : \"xyz\"}\nNote:\n* Invalid combinations of ID & namespaced format is not supported. For\n instance: {\"123/environment\" : \"tagValues/444\"} is invalid.", + "type": "object" + } + }, + "type": "object" + }, + "BackendBucketUsedBy": { + "id": "BackendBucketUsedBy", + "properties": { + "reference": { + "description": "Output only. [Output Only] Server-defined URL for UrlMaps referencing that\nBackendBucket.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BackendBucketsScopedList": { + "id": "BackendBucketsScopedList", + "properties": { + "backendBuckets": { + "description": "A list of BackendBuckets contained in this scope.", "items": { - "$ref": "Address" + "$ref": "BackendBucket" }, "type": "array" }, "warning": { - "description": "[Output Only] Informational warning which replaces the list of addresses\nwhen the list is empty.", + "description": "Informational warning which replaces the list of\nbackend services when the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -44836,753 +51516,881 @@ }, "type": "object" }, - "AdvancedMachineFeatures": { - "description": "Specifies options for controlling advanced machine features.\nOptions that would traditionally be configured in a BIOS belong\nhere. Features that require operating system support may have\ncorresponding entries in the GuestOsFeatures of anImage (e.g., whether or not the OS in theImage supports nested virtualization being enabled or\ndisabled).", - "id": "AdvancedMachineFeatures", + "BackendCustomMetric": { + "description": "Custom Metrics are used for CUSTOM_METRICS balancing_mode.", + "id": "BackendCustomMetric", "properties": { - "enableNestedVirtualization": { - "description": "Whether to enable nested virtualization or not (default is false).", + "dryRun": { + "description": "If true, the metric data is collected and reported to Cloud\nMonitoring, but is not used for load balancing.", "type": "boolean" }, - "enableUefiNetworking": { - "description": "Whether to enable UEFI networking for instance creation.", - "type": "boolean" + "maxUtilization": { + "description": "Optional parameter to define a target utilization for the Custom Metrics\nbalancing mode. The valid range is [0.0, 1.0].", + "format": "float", + "type": "number" }, - "performanceMonitoringUnit": { - "description": "Type of Performance Monitoring Unit requested on instance.", + "name": { + "description": "Name of a custom utilization signal. The name must be 1-64 characters\nlong and match the regular expression\n`[a-z]([-_.a-z0-9]*[a-z0-9])?` which means that the\nfirst character must be a lowercase letter, and all following\ncharacters must be a dash, period, underscore, lowercase letter, or\ndigit, except the last character, which cannot be a dash, period, or\nunderscore. For usage guidelines, see Custom Metrics balancing mode. This\nfield can only be used for a global or regional backend service with the\nloadBalancingScheme set to EXTERNAL_MANAGED,INTERNAL_MANAGED INTERNAL_SELF_MANAGED.", + "type": "string" + } + }, + "type": "object" + }, + "BackendService": { + "description": "Represents a Backend Service resource.\n\nA backend service defines how Google Cloud load balancers distribute traffic.\nThe backend service configuration contains a set of values, such as the\nprotocol used to connect to backends, various distribution and session\nsettings, health checks, and timeouts. These settings provide fine-grained\ncontrol over how your load balancer behaves. Most of the settings have\ndefault values that allow for easy configuration if you need to get started\nquickly.\n\nBackend services in Google Compute Engine can be either regionally or\nglobally scoped.\n\n* [Global](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices)\n* [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/regionBackendServices)\n\nFor more information, seeBackend\nServices.", + "id": "BackendService", + "properties": { + "affinityCookieTtlSec": { + "description": "Lifetime of cookies in seconds. This setting is applicable to Application\nLoad Balancers and Traffic Director and requires\nGENERATED_COOKIE or HTTP_COOKIE session affinity.\n\nIf set to 0, the cookie is non-persistent and lasts only until\nthe end of the browser session (or equivalent). The maximum allowed value\nis two weeks (1,209,600).\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true.", + "format": "int32", + "type": "integer" + }, + "backends": { + "description": "The list of backends that serve this BackendService.", + "items": { + "$ref": "Backend" + }, + "type": "array" + }, + "cdnPolicy": { + "$ref": "BackendServiceCdnPolicy", + "description": "Cloud CDN configuration for this BackendService. Only available for\nspecified load balancer types." + }, + "circuitBreakers": { + "$ref": "CircuitBreakers" + }, + "compressionMode": { + "description": "Compress text responses using Brotli or gzip compression, based on\nthe client's Accept-Encoding header.", "enum": [ - "ARCHITECTURAL", - "ENHANCED", - "PERFORMANCE_MONITORING_UNIT_UNSPECIFIED", - "STANDARD" + "AUTOMATIC", + "DISABLED" ], "enumDescriptions": [ - "Architecturally defined non-LLC events.", - "Most documented core/L2 and LLC events.", - "", - "Most documented core/L2 events." + "Automatically uses the best compression based on the Accept-Encoding\nheader sent by the client.", + "Disables compression. Existing compressed responses cached by\nCloud CDN will not be served to clients." ], "type": "string" }, - "threadsPerCore": { - "description": "The number of threads per physical core. To disable simultaneous\nmultithreading (SMT) set this to 1. If unset, the maximum number\nof threads supported per core by the underlying processor is\nassumed.", - "format": "int32", - "type": "integer" + "connectionDraining": { + "$ref": "ConnectionDraining", + "description": "connectionDraining cannot be specified with haPolicy." }, - "turboMode": { - "description": "Turbo frequency mode to use for the instance.\nSupported modes include:\n* ALL_CORE_MAX\n\nUsing empty string or not setting this field will use the platform-specific\ndefault turbo mode.", - "type": "string" + "connectionTrackingPolicy": { + "$ref": "BackendServiceConnectionTrackingPolicy", + "description": "Connection Tracking configuration for this BackendService. Connection\ntracking policy settings are only available for external passthrough\nNetwork Load Balancers and internal passthrough Network Load Balancers.\n\nconnectionTrackingPolicy cannot be specified with haPolicy." }, - "visibleCoreCount": { - "description": "The number of physical cores to expose to an instance. Multiply by\nthe number of threads per core to compute the total number of virtual\nCPUs to expose to the instance. If unset, the number of cores is\ninferred from the instance's nominal CPU count and the underlying\nplatform's SMT width.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "AliasIpRange": { - "description": "An alias IP range attached to an instance's network interface.", - "id": "AliasIpRange", - "properties": { - "ipCidrRange": { - "description": "The IP alias ranges to allocate for this interface. This IP CIDR range\nmust belong to the specified subnetwork and cannot contain IP addresses\nreserved by system or used by other network interfaces. This range may be\na single IP address (such as 10.2.3.4), a netmask (such as/24) or a CIDR-formatted string (such as10.1.2.0/24).", - "type": "string" + "consistentHash": { + "$ref": "ConsistentHashLoadBalancerSettings", + "description": "Consistent Hash-based load balancing can be used to provide soft session\naffinity based on HTTP headers, cookies or other properties. This load\nbalancing policy is applicable only for HTTP connections. The affinity to a\nparticular destination host will be lost when one or more hosts are\nadded/removed from the destination service. This field specifies parameters\nthat control consistent hashing. This field is only applicable whenlocalityLbPolicy is set to MAGLEV orRING_HASH.\n\nThis field is applicable to either:\n \n - A regional backend service with the service protocol set to HTTP,\n HTTPS, HTTP2 or H2C, and load_balancing_scheme set to\n INTERNAL_MANAGED. \n - A global backend service with the\n load_balancing_scheme set to INTERNAL_SELF_MANAGED." }, - "subnetworkRangeName": { - "description": "The name of a subnetwork secondary IP range from which to allocate an IP\nalias range. If not specified, the primary range of the subnetwork is used.", + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, "type": "string" - } - }, - "type": "object" - }, - "AllocationAggregateReservation": { - "description": "This reservation type is specified by total resource amounts (e.g. total\ncount of CPUs) and can account for multiple instance SKUs. In other words,\none can create instances of varying shapes against this reservation.", - "id": "AllocationAggregateReservation", - "properties": { - "inUseResources": { - "description": "Output only. [Output only] List of resources currently in use.", + }, + "customMetrics": { + "description": "List of custom metrics that are used for theWEIGHTED_ROUND_ROBIN locality_lb_policy.", "items": { - "$ref": "AllocationAggregateReservationReservedResourceInfo" + "$ref": "BackendServiceCustomMetric" }, - "readOnly": true, "type": "array" }, - "reservedResources": { - "description": "List of reserved resources (CPUs, memory, accelerators).", + "customRequestHeaders": { + "description": "Headers that the load balancer adds to proxied requests. See [Creating\ncustom\nheaders](https://cloud.google.com/load-balancing/docs/custom-headers).", "items": { - "$ref": "AllocationAggregateReservationReservedResourceInfo" + "type": "string" }, "type": "array" }, - "vmFamily": { - "description": "The VM family that all instances scheduled against this reservation must\nbelong to.", + "customResponseHeaders": { + "description": "Headers that the load balancer adds to proxied responses. See [Creating\ncustom\nheaders](https://cloud.google.com/load-balancing/docs/custom-headers).", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "edgeSecurityPolicy": { + "description": "[Output Only] The resource URL for the edge security policy associated with\nthis backend service.", + "type": "string" + }, + "enableCDN": { + "description": "If true, enables Cloud CDN for the backend service of a\nglobal external Application Load Balancer.", + "type": "boolean" + }, + "externalManagedMigrationState": { + "description": "Specifies the canary migration state. Possible values are PREPARE,\nTEST_BY_PERCENTAGE, and TEST_ALL_TRAFFIC.\n\nTo begin the migration from EXTERNAL to EXTERNAL_MANAGED, the state must be\nchanged to PREPARE. The state must be changed to TEST_ALL_TRAFFIC before\nthe loadBalancingScheme can be changed to EXTERNAL_MANAGED. Optionally, the\nTEST_BY_PERCENTAGE state can be used to migrate traffic by percentage using\nexternalManagedMigrationTestingPercentage.\n\nRolling back a migration requires the states to be set in reverse order. So\nchanging the scheme from EXTERNAL_MANAGED to EXTERNAL requires the state to\nbe set to TEST_ALL_TRAFFIC at the same time. Optionally, the\nTEST_BY_PERCENTAGE state can be used to migrate some traffic back to\nEXTERNAL or PREPARE can be used to migrate all traffic back to EXTERNAL.", "enum": [ - "VM_FAMILY_CLOUD_TPU_DEVICE_CT3", - "VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L", - "VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP", - "VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT6E", - "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT3P", - "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P", - "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT5P", - "VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X" + "PREPARE", + "TEST_ALL_TRAFFIC", + "TEST_BY_PERCENTAGE" ], "enumDescriptions": [ - "", - "", - "", - "", - "", "", "", "" ], "type": "string" }, - "workloadType": { - "description": "The workload type of the instances that will target this reservation.", - "enum": [ - "BATCH", - "SERVING", - "UNSPECIFIED" - ], - "enumDescriptions": [ - "Reserved resources will be optimized for BATCH workloads, such as ML\ntraining.", - "Reserved resources will be optimized for SERVING workloads, such as ML\ninference.", - "" - ], - "type": "string" - } - }, - "type": "object" - }, - "AllocationAggregateReservationReservedResourceInfo": { - "id": "AllocationAggregateReservationReservedResourceInfo", - "properties": { - "accelerator": { - "$ref": "AllocationAggregateReservationReservedResourceInfoAccelerator", - "description": "Properties of accelerator resources in this reservation." - } - }, - "type": "object" - }, - "AllocationAggregateReservationReservedResourceInfoAccelerator": { - "id": "AllocationAggregateReservationReservedResourceInfoAccelerator", - "properties": { - "acceleratorCount": { - "description": "Number of accelerators of specified type.", - "format": "int32", - "type": "integer" + "externalManagedMigrationTestingPercentage": { + "description": "Determines the fraction of requests that should be processed by the Global\nexternal Application Load Balancer.\n\nThe value of this field must be in the range [0, 100].\n\nSession affinity options will slightly affect this routing behavior, for\nmore details, see:Session\nAffinity.\n\nThis value can only be set if the loadBalancingScheme in the BackendService\nis set to EXTERNAL (when using the classic Application Load Balancer) and\nthe migration state is TEST_BY_PERCENTAGE.", + "format": "float", + "type": "number" }, - "acceleratorType": { - "description": "Full or partial URL to accelerator type. e.g.\n\"projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l\"", - "type": "string" - } - }, - "type": "object" - }, - "AllocationReservationSharingPolicy": { - "id": "AllocationReservationSharingPolicy", - "properties": { - "serviceShareType": { - "description": "Sharing config for all Google Cloud services.", - "enum": [ - "ALLOW_ALL", - "DISALLOW_ALL", - "SERVICE_SHARE_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "Allow all Google Cloud managed services to share reservations.", - "[Default] Disallow sharing with all Google Cloud services.", - "" - ], + "failoverPolicy": { + "$ref": "BackendServiceFailoverPolicy", + "description": "Requires at least one backend instance group to be defined\nas a backup (failover) backend.\nFor load balancers that have configurable failover:\n[Internal passthrough Network Load\nBalancers](https://cloud.google.com/load-balancing/docs/internal/failover-overview)\nand [external passthrough Network Load\nBalancers](https://cloud.google.com/load-balancing/docs/network/networklb-failover-overview).\n\nfailoverPolicy cannot be specified with haPolicy." + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a BackendService. An up-to-date fingerprint must be provided in\norder to update the BackendService, otherwise the request will\nfail with error 412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve a BackendService.", + "format": "byte", "type": "string" - } - }, - "type": "object" - }, - "AllocationResourceStatus": { - "description": "[Output Only] Contains output only fields.", - "id": "AllocationResourceStatus", - "properties": { - "healthInfo": { - "$ref": "AllocationResourceStatusHealthInfo", - "description": "[Output only] Health information for the reservation." }, - "reservationBlockCount": { - "description": "The number of reservation blocks associated with this reservation.", - "format": "int32", - "type": "integer" + "haPolicy": { + "$ref": "BackendServiceHAPolicy", + "description": "Configures self-managed High Availability (HA) for External and Internal\nProtocol Forwarding.\n\nThe backends of this regional backend service must only specify zonal\nnetwork endpoint groups (NEGs) of type GCE_VM_IP.\n\nWhen haPolicy is set for an Internal Passthrough Network Load Balancer, the\nregional backend service must set the network field. All zonal NEGs must\nbelong to the same network. However, individual NEGs can\nbelong to different subnetworks of that network.\n\nWhen haPolicy is specified, the set of attached network endpoints across\nall backends comprise an High Availability domain from which one endpoint\nis selected as the active endpoint (the leader) that receives all\ntraffic.\n\nhaPolicy can be added only at backend service creation time. Once set up,\nit cannot be deleted.\n\nNote that haPolicy is not for load balancing, and therefore cannot be\nspecified with sessionAffinity, connectionTrackingPolicy, and\nfailoverPolicy.\n\nhaPolicy requires customers to be responsible for tracking backend\nendpoint health and electing a leader among the healthy endpoints.\nTherefore, haPolicy cannot be specified with healthChecks.\n\nhaPolicy can only be specified for External Passthrough Network Load\nBalancers and Internal Passthrough Network Load Balancers." }, - "reservationMaintenance": { - "$ref": "GroupMaintenanceInfo", - "description": "Maintenance information for this reservation" + "healthChecks": { + "description": "The list of URLs to the healthChecks, httpHealthChecks (legacy), or\nhttpsHealthChecks (legacy) resource for health checking this backend\nservice. Not all backend services support legacy health checks. See\nLoad balancer guide. Currently, at most one health check can be\nspecified for each backend service. Backend services with\ninstance group or zonal NEG backends must have a health check unless\nhaPolicy is specified. Backend services with internet or serverless NEG\nbackends must not have a health check.\n\nhealthChecks[] cannot be specified with haPolicy.", + "items": { + "type": "string" + }, + "type": "array" }, - "specificSkuAllocation": { - "$ref": "AllocationResourceStatusSpecificSKUAllocation", - "description": "Allocation Properties of this reservation." - } - }, - "type": "object" - }, - "AllocationResourceStatusHealthInfo": { - "description": "Health information for the reservation.", - "id": "AllocationResourceStatusHealthInfo", - "properties": { - "degradedBlockCount": { - "description": "The number of reservation blocks that are degraded.", - "format": "int32", - "type": "integer" + "iap": { + "$ref": "BackendServiceIAP", + "description": "The configurations for Identity-Aware Proxy on this resource.\nNot available for internal passthrough Network Load Balancers and external\npassthrough Network Load Balancers." }, - "healthStatus": { - "description": "The health status of the reservation.", + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "type": "string" + }, + "ipAddressSelectionPolicy": { + "description": "Specifies a preference for traffic sent from the proxy to the backend (or\nfrom the client to the backend for proxyless gRPC).\nThe possible values are:\n \n - IPV4_ONLY: Only send IPv4 traffic to the backends of the\n backend service (Instance Group, Managed Instance Group, Network Endpoint\n Group), regardless of traffic from the client to the proxy. Only IPv4\n health checks are used to check the health of the backends. This is the\n default setting.\n - PREFER_IPV6: Prioritize the connection to the endpoint's\n IPv6 address over its IPv4 address (provided there is a healthy IPv6\n address).\n - IPV6_ONLY: Only send IPv6 traffic to the backends of the\n backend service (Instance Group, Managed Instance Group, Network Endpoint\n Group), regardless of traffic from the client to the proxy. Only IPv6\n health checks are used to check the health of the backends.\n\n\n\nThis field is applicable to either:\n \n - Advanced global external Application Load Balancer (load balancing\n scheme EXTERNAL_MANAGED), \n - Regional external Application Load\n Balancer, \n - Internal proxy Network Load Balancer (load balancing\n scheme INTERNAL_MANAGED), \n - Regional internal Application Load\n Balancer (load balancing scheme INTERNAL_MANAGED), \n - Traffic\n Director with Envoy proxies and proxyless gRPC (load balancing scheme\n INTERNAL_SELF_MANAGED).", "enum": [ - "DEGRADED", - "HEALTHY", - "HEALTH_STATUS_UNSPECIFIED" + "IPV4_ONLY", + "IPV6_ONLY", + "IP_ADDRESS_SELECTION_POLICY_UNSPECIFIED", + "PREFER_IPV6" ], "enumDescriptions": [ - "The reservation is degraded.", - "The reservation is healthy.", - "The health status of the reservation is unspecified." + "Only send IPv4 traffic to the backends of the Backend Service\n(Instance Group, Managed Instance Group, Network Endpoint Group)\nregardless of traffic from the client to the proxy.\nOnly IPv4 health-checks are used to check the health of the backends.\nThis is the default setting.", + "Only send IPv6 traffic to the backends of the Backend Service\n(Instance Group, Managed Instance Group, Network Endpoint Group)\nregardless of traffic from the client to the proxy. Only IPv6\nhealth-checks are used to check the health of the backends.", + "Unspecified IP address selection policy.", + "Prioritize the connection to the endpoints IPv6 address\nover its IPv4 address (provided there is a healthy IPv6 address)." ], "type": "string" }, - "healthyBlockCount": { - "description": "The number of reservation blocks that are healthy.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "AllocationResourceStatusSpecificSKUAllocation": { - "description": "Contains Properties set for the reservation.", - "id": "AllocationResourceStatusSpecificSKUAllocation", - "properties": { - "sourceInstanceTemplateId": { - "description": "ID of the instance template used to populate reservation properties.", - "type": "string" - }, - "utilizations": { - "additionalProperties": { - "format": "int64", - "type": "string" - }, - "description": "Per service utilization breakdown. The Key is the Google Cloud managed\nservice name.", - "type": "object" - } - }, - "type": "object" - }, - "AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk": { - "id": "AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk", - "properties": { - "diskSizeGb": { - "description": "Specifies the size of the disk in base-2 GB.", - "format": "int64", + "kind": { + "default": "compute#backendService", + "description": "Output only. [Output Only] Type of resource. Always compute#backendService\nfor backend services.", + "readOnly": true, "type": "string" }, - "interface": { - "description": "Specifies the disk interface to use for attaching this disk, which is\neither SCSI or NVME. The default isSCSI.\nFor performance characteristics of SCSI over NVMe, seeLocal SSD performance.", + "loadBalancingScheme": { + "description": "Specifies the load balancer type. A backend service\ncreated for one type of load balancer cannot be used with another.\nFor more information, refer toChoosing\na load balancer.", "enum": [ - "NVME", - "SCSI" + "EXTERNAL", + "EXTERNAL_MANAGED", + "INTERNAL", + "INTERNAL_MANAGED", + "INTERNAL_SELF_MANAGED", + "INVALID_LOAD_BALANCING_SCHEME" ], "enumDescriptions": [ - "", + "Signifies that this will be used for classic Application Load Balancers,\nglobal external proxy Network Load Balancers,\nor external passthrough Network Load Balancers.", + "Signifies that this will be used for global external Application Load\nBalancers, regional external Application Load Balancers, or regional\nexternal proxy Network Load Balancers.", + "Signifies that this will be used for internal passthrough Network Load\nBalancers.", + "Signifies that this will be used for internal Application Load Balancers.", + "Signifies that this will be used by Traffic Director.", "" ], "type": "string" - } - }, - "type": "object" - }, - "AllocationSpecificSKUAllocationReservedInstanceProperties": { - "description": "Properties of the SKU instances being reserved.\nNext ID: 10", - "id": "AllocationSpecificSKUAllocationReservedInstanceProperties", - "properties": { - "guestAccelerators": { - "description": "Specifies accelerator type and count.", - "items": { - "$ref": "AcceleratorConfig" - }, - "type": "array" }, - "localSsds": { - "description": "Specifies amount of local ssd to reserve with each instance. The type\nof disk is local-ssd.", + "localityLbPolicies": { + "description": "A list of locality load-balancing policies to be used in order of\npreference. When you use localityLbPolicies, you must set at least one\nvalue for either the localityLbPolicies[].policy or the\nlocalityLbPolicies[].customPolicy field. localityLbPolicies overrides any\nvalue set in the localityLbPolicy field.\n\nFor an example of how to use this field, seeDefine\na list of preferred policies.\n\nCaution: This field and its children are intended for use in a service mesh\nthat includes gRPC clients only. Envoy proxies can't use backend services\nthat have this configuration.", "items": { - "$ref": "AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk" + "$ref": "BackendServiceLocalityLoadBalancingPolicyConfig" }, "type": "array" }, - "locationHint": { - "description": "An opaque location hint used to place the allocation close to other\nresources.\nThis field is for use by internal tools that use the public API.", - "type": "string" - }, - "machineType": { - "description": "Specifies type of machine (name only) which has fixed number of vCPUs\nand fixed amount of memory. This also includes specifying custom\nmachine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.", - "type": "string" - }, - "minCpuPlatform": { - "description": "Minimum cpu platform the reservation.", - "type": "string" - } - }, - "type": "object" - }, - "AllocationSpecificSKUReservation": { - "description": "This reservation type allows to pre allocate specific instance\n configuration.", - "id": "AllocationSpecificSKUReservation", - "properties": { - "assuredCount": { - "description": "Output only. [Output Only] Indicates how many instances are actually usable currently.", - "format": "int64", - "readOnly": true, - "type": "string" - }, - "count": { - "description": "Specifies the number of resources that are allocated.", - "format": "int64", - "type": "string" - }, - "inUseCount": { - "description": "Output only. [Output Only] Indicates how many instances are in use.", - "format": "int64", - "readOnly": true, - "type": "string" - }, - "instanceProperties": { - "$ref": "AllocationSpecificSKUAllocationReservedInstanceProperties", - "description": "The instance properties for the reservation." - }, - "sourceInstanceTemplate": { - "description": "Specifies the instance template to create the reservation. If you use\nthis field, you must exclude the instanceProperties field.\n\nThis field is optional, and it can be a full or partial URL. For example,\nthe following are all valid URLs to an instance template: \n \n \n - https://www.googleapis.com/compute/v1/projects/project/global/instanceTemplates/instanceTemplate\n - projects/project/global/instanceTemplates/instanceTemplate\n - global/instanceTemplates/instanceTemplate", - "type": "string" - } - }, - "type": "object" - }, - "AttachedDisk": { - "description": "An instance-attached disk resource.", - "id": "AttachedDisk", - "properties": { - "architecture": { - "description": "Output only. [Output Only] The architecture of the attached disk. Valid values are ARM64\nor X86_64.", + "localityLbPolicy": { + "description": "The load balancing algorithm used within the scope of the locality. The\npossible values are:\n \n - ROUND_ROBIN: This is a simple policy in which each healthy\n backend is selected in round robin order. This is the default.\n - LEAST_REQUEST: An O(1) algorithm which\n selects two random healthy hosts and picks the host which has fewer active\n requests.\n - RING_HASH: The ring/modulo hash load balancer implements\n consistent hashing to backends. The algorithm has the property that the\n addition/removal of a host from a set of N hosts only affects 1/N of the\n requests.\n - RANDOM: The load balancer selects a random healthy\n host.\n - ORIGINAL_DESTINATION: Backend host is selected\n based on the client connection metadata, i.e., connections are opened to\n the same address as the destination address of the incoming connection\n before the connection was redirected to the load balancer.\n - MAGLEV: used as a drop in replacement for the ring hash\n load balancer. Maglev is not as stable as ring hash but has faster table\n lookup build times and host selection times. For more information about\n Maglev, see Maglev:\n A Fast and Reliable Software Network Load Balancer.\n - WEIGHTED_ROUND_ROBIN: Per-endpoint Weighted Round Robin\n Load Balancing using weights computed from Backend reported Custom Metrics.\n If set, the Backend Service responses are expected to contain non-standard\n HTTP response header field Endpoint-Load-Metrics. The reported\n metrics to use for computing the weights are specified via thecustomMetrics field.\n \n This field is applicable to either:\n - A regional backend service with the service protocol set to HTTP,\n HTTPS, HTTP2 or H2C, and load_balancing_scheme set to\n INTERNAL_MANAGED. \n - A global backend service with the\n load_balancing_scheme set to INTERNAL_SELF_MANAGED, INTERNAL_MANAGED, or\n EXTERNAL_MANAGED.\n \n \n If sessionAffinity is not configured—that is, if session\n affinity remains at the default value of NONE—then the\n default value for localityLbPolicy\n is ROUND_ROBIN. If session affinity is set to a value other\n than NONE,\n then the default value for localityLbPolicy isMAGLEV.\n \n Only ROUND_ROBIN and RING_HASH are supported\n when the backend service is referenced by a URL map that is bound to\n target gRPC proxy that has validateForProxyless field set to true.\n \n localityLbPolicy cannot be specified with haPolicy.", "enum": [ - "ARCHITECTURE_UNSPECIFIED", - "ARM64", - "X86_64" + "INVALID_LB_POLICY", + "LEAST_REQUEST", + "MAGLEV", + "ORIGINAL_DESTINATION", + "RANDOM", + "RING_HASH", + "ROUND_ROBIN", + "WEIGHTED_GCP_RENDEZVOUS", + "WEIGHTED_MAGLEV", + "WEIGHTED_ROUND_ROBIN" ], "enumDescriptions": [ - "Default value indicating Architecture is not set.", - "Machines with architecture ARM64", - "Machines with architecture X86_64" + "", + "An O(1) algorithm which selects two random healthy hosts and\npicks the host which has fewer active requests.", + "This algorithm implements consistent hashing to backends. Maglev can be\nused as a drop in replacement for the ring hash load balancer. Maglev is\nnot as stable as ring hash but has faster table lookup build times and\nhost selection times. For more information about Maglev, seeMaglev:\nA Fast and Reliable Software Network Load Balancer.", + "Backend host is selected based on the client connection metadata, i.e.,\nconnections are opened to the same address as the destination address of\nthe incoming connection before the connection was redirected to the load\nbalancer.", + "The load balancer selects a random healthy host.", + "The ring/modulo hash load balancer implements consistent hashing to\nbackends. The algorithm has the property that the addition/removal\nof a host from a set of N hosts only affects 1/N of the requests.", + "This is a simple policy in which each healthy backend is selected\nin round robin order. This is the default.", + "Per-instance weighted Load Balancing via health check reported weights.\nIn internal passthrough network load balancing, it is weighted\nrendezvous hashing.\nThis option is only supported in internal passthrough network load\nbalancing.", + "Per-instance weighted Load Balancing via health check reported weights.\nIf set, the Backend Service must configure a non legacy HTTP-based Health\nCheck, and health check replies are expected to contain non-standard HTTP\nresponse header field X-Load-Balancing-Endpoint-Weight to specify the\nper-instance weights.\nIf set, Load Balancing is weighted based on the\nper-instance weights reported in the last processed health check replies,\nas long as every instance either reported a valid weight or had\nUNAVAILABLE_WEIGHT. Otherwise, Load Balancing remains equal-weight.\nThis option is only supported in Network Load Balancing.", + "Per-endpoint weighted round-robin Load Balancing using weights computed\nfrom Backend reported Custom Metrics. If set, the Backend Service\nresponses are expected to contain non-standard HTTP response header field\nEndpoint-Load-Metrics. The reported metrics\nto use for computing the weights are specified via the\ncustomMetrics fields." ], - "readOnly": true, "type": "string" }, - "autoDelete": { - "description": "Specifies whether the disk will be auto-deleted when the instance is\ndeleted (but not when the disk is detached from the instance).", - "type": "boolean" + "logConfig": { + "$ref": "BackendServiceLogConfig", + "description": "This field denotes the logging options for the load balancer traffic served\nby this backend service. If logging is enabled, logs will be exported to\nStackdriver." + }, + "maxStreamDuration": { + "$ref": "Duration", + "description": "Specifies the default maximum duration (timeout) for streams to this\nservice. Duration is computed from the beginning of the stream until the\nresponse has been completely processed, including all retries. A stream\nthat does not complete in this duration is closed.\n\nIf not specified, there will be no timeout limit, i.e. the maximum\nduration is infinite.\n\nThis value can be overridden in the PathMatcher configuration of the\nUrlMap that references this backend service.\n\nThis field is only allowed when the loadBalancingScheme of\nthe backend service is INTERNAL_SELF_MANAGED." + }, + "metadatas": { + "additionalProperties": { + "type": "string" + }, + "description": "Deployment metadata associated with the resource to be set by a GKE hub\ncontroller and read by the backend RCTH", + "type": "object" }, - "boot": { - "description": "Indicates that this is a boot disk. The virtual machine will use the first\npartition of the disk for its root filesystem.", - "type": "boolean" + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" }, - "deviceName": { - "description": "Specifies a unique device name of your choice that is reflected into the/dev/disk/by-id/google-* tree of a Linux operating system\nrunning within the instance. This name can be used to reference the device\nfor mounting, resizing, and so on, from within the instance.\n\nIf not specified, the server chooses a default device name to apply to this\ndisk, in the form persistent-disk-x, where x is a number\nassigned by Google Compute Engine. This field is only applicable for\npersistent disks.", + "network": { + "description": "The URL of the network to which this backend service belongs.\n\nThis field must be set for Internal Passthrough Network Load Balancers when\nthe haPolicy is enabled, and for External Passthrough Network Load\nBalancers when the haPolicy fastIpMove is enabled.\n\nThis field can only be specified when the load balancing scheme is set toINTERNAL, or when the load balancing scheme is set toEXTERNAL and haPolicy fastIpMove is enabled.", "type": "string" }, - "diskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts or decrypts a disk using acustomer-supplied\nencryption key.\n\nIf you are creating a new disk, this field encrypts the new disk using\nan encryption key that you provide. If you are attaching an existing\ndisk that is already encrypted, this field decrypts the disk using\nthe customer-supplied encryption key.\n\nIf you encrypt a disk using a customer-supplied key, you must provide the\nsame key again when you attempt to use this resource at a later time. For\nexample, you must provide the key when you create a snapshot or an image\nfrom the disk or when you attach the disk to a virtual machine instance.\n\nIf you do not provide an encryption key, then the disk will be encrypted\nusing an automatically generated key and you do not need to provide a key\nto use the disk later.\n\nNote:\n\nInstance templates do not storecustomer-supplied\nencryption keys, so you cannot use your own keys to encrypt disks in amanaged instance group.\n\nYou cannot create VMs that have disks with customer-supplied keys using\nthe bulk\ninsert method." + "networkPassThroughLbTrafficPolicy": { + "$ref": "BackendServiceNetworkPassThroughLbTrafficPolicy", + "description": "Configures traffic steering properties of internal passthrough Network\nLoad Balancers.\n\nnetworkPassThroughLbTrafficPolicy cannot be specified with haPolicy." }, - "diskSizeGb": { - "description": "The size of the disk in GB.", - "format": "int64", - "type": "string" + "orchestrationInfo": { + "$ref": "BackendServiceOrchestrationInfo", + "description": "Information about the resource or system that manages the backend service." }, - "forceAttach": { - "description": "[Input Only] Whether to force attach the regional disk even if it's\ncurrently attached to another instance. If you try to force attach a zonal\ndisk to an instance, you will receive an error.", - "type": "boolean" + "outlierDetection": { + "$ref": "OutlierDetection", + "description": "Settings controlling the ejection of unhealthy backend endpoints from the\nload balancing pool of each individual proxy instance that processes the\ntraffic for the given backend service. If not set, this feature is\nconsidered disabled.\n\nResults of the outlier detection algorithm (ejection of endpoints from the\nload balancing pool and returning them back to the pool) are executed\nindependently by each proxy instance of the load balancer. In most cases,\nmore than one proxy instance handles the traffic received by a backend\nservice. Thus, it is possible that an unhealthy endpoint is detected and\nejected by only some of the proxies, and while this happens, other proxies\nmay continue to send requests to the same unhealthy endpoint until they\ndetect and eject the unhealthy endpoint.\n\nApplicable backend endpoints can be:\n \n - VM instances in an Instance Group\n - Endpoints in a Zonal NEG (GCE_VM_IP, GCE_VM_IP_PORT)\n - Endpoints in a Hybrid Connectivity NEG (NON_GCP_PRIVATE_IP_PORT)\n - Serverless NEGs, that resolve to Cloud Run, App Engine, or Cloud\n Functions Services \n - Private Service Connect NEGs, that resolve to\n Google-managed regional API endpoints or managed services published using\n Private Service Connect\n\n\n\nApplicable backend service types can be:\n \n - A global backend service with the loadBalancingScheme set to\n INTERNAL_SELF_MANAGED or EXTERNAL_MANAGED. \n - A regional backend\n service with the service protocol set to HTTP, HTTPS, HTTP2 or H2C, and\n loadBalancingScheme set to INTERNAL_MANAGED or EXTERNAL_MANAGED. Not\n supported for Serverless NEGs.\n\n\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true." }, - "guestOsFeatures": { - "description": "A list of features to enable on the guest operating system. Applicable\nonly for bootable images. Read\nEnabling guest operating system features to see a list of available\noptions.", - "items": { - "$ref": "GuestOsFeature" - }, - "type": "array" + "params": { + "$ref": "BackendServiceParams", + "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." }, - "index": { - "description": "Output only. [Output Only] A zero-based index to this disk, where 0 is reserved for the\nboot disk. If you have many disks attached to an instance, each\ndisk would have a unique index number.", + "port": { + "deprecated": true, + "description": "Deprecated in favor of portName. The TCP port to connect on\nthe backend. The default value is 80.\nFor internal passthrough Network Load Balancers and external passthrough\nNetwork Load Balancers, omit port.", "format": "int32", - "readOnly": true, "type": "integer" }, - "initializeParams": { - "$ref": "AttachedDiskInitializeParams", - "description": "[Input Only] Specifies the parameters for a new disk that will be created\nalongside the new instance. Use initialization parameters to create boot\ndisks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property;\nyou can only define one or the other, but not both." + "portName": { + "description": "A named port on a backend instance group representing the port for\ncommunication to the backend VMs in that group. The\nnamed port must be [defined on each backend instance\ngroup](https://cloud.google.com/load-balancing/docs/backend-service#named_ports).\nThis parameter has no meaning if the backends are NEGs. For internal\npassthrough Network Load Balancers and external passthrough Network Load\nBalancers, omit port_name.", + "type": "string" }, - "interface": { - "description": "Specifies the disk interface to use for attaching this disk, which is\neither SCSI or NVME. For most machine types, the\ndefault is SCSI. Local SSDs can use either NVME or SCSI.\nIn certain configurations, persistent disks can use NVMe. For more\ninformation, seeAbout\npersistent disks.", + "protocol": { + "description": "The protocol this BackendService uses to communicate\nwith backends.\n\nPossible values are HTTP, HTTPS, HTTP2, H2C, TCP, SSL, UDP or GRPC.\ndepending on the chosen load balancer or Traffic Director configuration.\nRefer to the documentation for the load balancers or for Traffic Director\nfor more information.\n\nMust be set to GRPC when the backend service is referenced by a URL map\nthat is bound to target gRPC proxy.", "enum": [ - "NVME", - "SCSI" + "GRPC", + "H2C", + "HTTP", + "HTTP2", + "HTTPS", + "SSL", + "TCP", + "UDP", + "UNSPECIFIED" ], "enumDescriptions": [ + "gRPC (available for Traffic Director).", + "HTTP2 over cleartext", "", - "" + "HTTP/2 with SSL.", + "", + "TCP proxying with SSL.", + "TCP proxying or TCP pass-through.", + "UDP.", + "If a Backend Service has UNSPECIFIED as its protocol, it can be used with\nany L3/L4 Forwarding Rules." ], "type": "string" }, - "kind": { - "default": "compute#attachedDisk", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#attachedDisk for attached disks.", + "region": { + "description": "Output only. [Output Only] URL of the region where the regional backend service\nresides. This field is not applicable to global backend services.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", "readOnly": true, "type": "string" }, - "licenses": { - "description": "Output only. [Output Only] Any valid publicly visible licenses.", + "securityPolicy": { + "description": "[Output Only] The resource URL for the security policy associated with this\nbackend service.", + "type": "string" + }, + "securitySettings": { + "$ref": "SecuritySettings", + "description": "This field specifies the security settings that apply to this backend\nservice. This field is applicable to a global backend service with the\nload_balancing_scheme set to INTERNAL_SELF_MANAGED." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "serviceBindings": { + "description": "URLs of networkservices.ServiceBinding resources.\n\nCan only be set if load balancing scheme is INTERNAL_SELF_MANAGED.\nIf set, lists of backends and health checks must be both empty.", "items": { "type": "string" }, - "readOnly": true, "type": "array" }, - "mode": { - "description": "The mode in which to attach this disk, either READ_WRITE orREAD_ONLY. If not specified, the default is to attach the disk\nin READ_WRITE mode.", - "enum": [ - "READ_ONLY", - "READ_WRITE" - ], - "enumDescriptions": [ - "Attaches this disk in read-only mode. Multiple virtual machines can use\na disk in read-only mode at a time.", - "*[Default]* Attaches this disk in read-write mode. Only one\nvirtual machine at a time can be attached to a disk in read-write mode." - ], + "serviceLbPolicy": { + "description": "URL to networkservices.ServiceLbPolicy resource.\n\nCan only be set if load balancing scheme is EXTERNAL_MANAGED,\nINTERNAL_MANAGED or INTERNAL_SELF_MANAGED and the scope is global.", "type": "string" }, - "savedState": { - "description": "Output only. For LocalSSD disks on VM Instances in STOPPED or SUSPENDED state, this\nfield is set to PRESERVED if the LocalSSD data has been saved\nto a persistent location by customer request. (see the\ndiscard_local_ssd option on Stop/Suspend).\nRead-only in the api.", + "sessionAffinity": { + "description": "Type of session affinity to use. The default is NONE.\n\nOnly NONE and HEADER_FIELD are supported\nwhen the backend service is referenced by a URL map that is bound to\ntarget gRPC proxy that has validateForProxyless field set to true.\n\nFor more details, see:\n[Session\nAffinity](https://cloud.google.com/load-balancing/docs/backend-service#session_affinity).\n\nsessionAffinity cannot be specified with haPolicy.", "enum": [ - "DISK_SAVED_STATE_UNSPECIFIED", - "PRESERVED" + "CLIENT_IP", + "CLIENT_IP_NO_DESTINATION", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "HEADER_FIELD", + "HTTP_COOKIE", + "NONE", + "STRONG_COOKIE_AFFINITY" ], "enumDescriptions": [ - "*[Default]* Disk state has not been preserved.", - "Disk state has been preserved." + "2-tuple hash on packet's source and destination IP addresses. Connections\nfrom the same source IP address to the same destination IP address will be\nserved by the same backend VM while that VM remains healthy.", + "1-tuple hash only on packet's source IP address. Connections from the\nsame source IP address will be served by the same backend VM while that VM\nremains healthy. This option can only be used for Internal TCP/UDP\nLoad Balancing.", + "5-tuple hash on packet's source and destination IP addresses, IP protocol,\nand source and destination ports. Connections for the same IP protocol\nfrom the same source IP address and port to the same destination IP address\nand port will be served by the same backend VM while that VM remains\nhealthy. This option cannot be used for HTTP(S) load balancing.", + "3-tuple hash on packet's source and destination IP addresses, and IP\nprotocol. Connections for the same IP protocol from the same source IP\naddress to the same destination IP address will be served by the same\nbackend VM while that VM remains healthy. This option cannot be used for\nHTTP(S) load balancing.", + "Hash based on a cookie generated by the L7 loadbalancer.\nOnly valid for HTTP(S) load balancing.", + "The hash is based on a user specified header field.", + "The hash is based on a user provided cookie.", + "No session affinity. Connections from the same client IP may go\nto any instance in the pool.", + "Strong cookie-based affinity. Connections bearing the same cookie will be\nserved by the same backend VM while that VM remains healthy, as long as the\ncookie has not expired." ], - "readOnly": true, "type": "string" }, - "shieldedInstanceInitialState": { - "$ref": "InitialStateConfig", - "description": "Output only. [Output Only] shielded vm initial state stored on disk", - "readOnly": true + "strongSessionAffinityCookie": { + "$ref": "BackendServiceHttpCookie", + "description": "Describes the HTTP cookie used for stateful session affinity. This field is\napplicable and required if the sessionAffinity is set toSTRONG_COOKIE_AFFINITY." }, - "source": { - "description": "Specifies a valid partial or full URL to an existing Persistent Disk\nresource. When creating a new instance boot disk, one ofinitializeParams.sourceImage orinitializeParams.sourceSnapshot or disks.source\nis required.\n\nIf desired, you can also attach existing non-root persistent disks using\nthis property. This field is only applicable for persistent disks.\n\nNote that for InstanceTemplate, specify the disk name for zonal disk,\nand the URL for regional disk.", - "type": "string" + "subsetting": { + "$ref": "Subsetting", + "description": "subsetting cannot be specified with haPolicy." }, - "type": { - "description": "Specifies the type of the disk, either SCRATCH orPERSISTENT. If not specified, the default isPERSISTENT.", - "enum": [ - "PERSISTENT", - "SCRATCH" - ], - "enumDescriptions": [ - "", - "" - ], - "type": "string" + "timeoutSec": { + "description": "The backend service timeout has a different meaning depending on the\ntype of load balancer. For more information see,\nBackend service settings.\nThe default is 30 seconds.\nThe full range of timeout values allowed goes from 1\nthrough 2,147,483,647 seconds.\n\nThis value can be overridden in the PathMatcher configuration of the\nUrlMap that references this backend service.\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true.\nInstead, use maxStreamDuration.", + "format": "int32", + "type": "integer" + }, + "tlsSettings": { + "$ref": "BackendServiceTlsSettings", + "description": "Configuration for Backend Authenticated TLS and mTLS. May only be specified\nwhen the backend protocol is SSL, HTTPS or HTTP2." + }, + "usedBy": { + "description": "Output only. [Output Only] List of resources referencing given backend service.", + "items": { + "$ref": "BackendServiceUsedBy" + }, + "readOnly": true, + "type": "array" } }, "type": "object" }, - "AttachedDiskInitializeParams": { - "description": "[Input Only] Specifies the parameters for a new disk that will be created\nalongside the new instance. Use initialization parameters to create boot\ndisks or local SSDs attached to the new instance.\n\nThis field is persisted and returned for instanceTemplate and not returned\nin the context of instance.\n\nThis property is mutually exclusive with the source property;\nyou can only define one or the other, but not both.", - "id": "AttachedDiskInitializeParams", + "BackendServiceAggregatedList": { + "description": "Contains a list of BackendServicesScopedList.", + "id": "BackendServiceAggregatedList", "properties": { - "architecture": { - "description": "The architecture of the attached disk. Valid values are\narm64 or x86_64.", - "enum": [ - "ARCHITECTURE_UNSPECIFIED", - "ARM64", - "X86_64" - ], - "enumDescriptions": [ - "Default value indicating Architecture is not set.", - "Machines with architecture ARM64", - "Machines with architecture X86_64" - ], + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, - "description": { - "description": "An optional description. Provide this property when creating the disk.", - "type": "string" + "items": { + "additionalProperties": { + "$ref": "BackendServicesScopedList", + "description": "Name of the scope containing this set of BackendServices." + }, + "description": "A list of BackendServicesScopedList resources.", + "type": "object" }, - "diskName": { - "description": "Specifies the disk name. If not specified, the default is to use the name\nof the instance. If a disk with the same name already exists in the given\nregion, the existing disk is attached to the new instance and the\nnew disk is not created.", + "kind": { + "default": "compute#backendServiceAggregatedList", + "description": "Output only. Type of resource.", + "readOnly": true, "type": "string" }, - "diskSizeGb": { - "description": "Specifies the size of the disk in base-2 GB. The size must be at least\n10 GB. If you specify a sourceImage, which is required for\nboot disks, the default size is the size of the sourceImage.\nIf you do not specify a sourceImage, the default disk size\nis 500 GB.", - "format": "int64", + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" }, - "diskType": { - "description": "Specifies the disk type to use to create the instance. If not specified,\nthe default is pd-standard, specified using the full URL.\nFor example:\n\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard\n\n\nFor a full list of acceptable values, seePersistent disk\ntypes. If you specify this field when creating a VM, you can provide\neither the full or partial URL. For example, the following values are\nvalid:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n - projects/project/zones/zone/diskTypes/diskType \n - zones/zone/diskTypes/diskType\n\n\nIf you specify this field when creating or updating an instance template\nor all-instances configuration, specify the type of the disk, not the\nURL. For example: pd-standard.", + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, "type": "string" }, - "enableConfidentialCompute": { - "description": "Whether this disk is using confidential compute mode.", - "type": "boolean" - }, - "labels": { - "additionalProperties": { + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { "type": "string" }, - "description": "Labels to apply to this disk. These can be later modified by thedisks.setLabels method. This field is only applicable for\npersistent disks.", - "type": "object" + "readOnly": true, + "type": "array" }, - "licenses": { - "description": "A list of publicly visible licenses. Reserved for Google's use.", + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "BackendServiceCdnPolicy": { + "description": "Message containing Cloud CDN configuration for a backend service.", + "id": "BackendServiceCdnPolicy", + "properties": { + "bypassCacheOnRequestHeaders": { + "description": "Bypass the cache when the specified request headers are matched - e.g.\nPragma or Authorization headers. Up to 5 headers can be specified.\nThe cache is bypassed for all cdnPolicy.cacheMode settings.", "items": { - "type": "string" + "$ref": "BackendServiceCdnPolicyBypassCacheOnRequestHeader" }, "type": "array" }, - "onUpdateAction": { - "description": "Specifies which action to take on instance update with this disk. Default\nis to use the existing disk.", + "cacheKeyPolicy": { + "$ref": "CacheKeyPolicy", + "description": "The CacheKeyPolicy for this CdnPolicy." + }, + "cacheMode": { + "description": "Specifies the cache setting for all responses from this backend.\nThe possible values are:USE_ORIGIN_HEADERS Requires the origin to set valid caching\nheaders to cache content. Responses without these headers will not be\ncached at Google's edge, and will require a full trip to the origin on\nevery request, potentially impacting performance and increasing load on\nthe origin server.FORCE_CACHE_ALL Cache all content, ignoring any \"private\",\n\"no-store\" or \"no-cache\" directives in Cache-Control response headers.\nWarning: this may result in Cloud CDN caching private,\nper-user (user identifiable) content.CACHE_ALL_STATIC Automatically cache static content,\nincluding common image formats, media (video and audio), and web assets\n(JavaScript and CSS). Requests and responses that are marked as\nuncacheable, as well as dynamic content (including HTML), will not be\ncached.\n\nIf no value is provided for cdnPolicy.cacheMode, it defaults\nto CACHE_ALL_STATIC.", "enum": [ - "RECREATE_DISK", - "RECREATE_DISK_IF_SOURCE_CHANGED", - "USE_EXISTING_DISK" + "CACHE_ALL_STATIC", + "FORCE_CACHE_ALL", + "INVALID_CACHE_MODE", + "USE_ORIGIN_HEADERS" ], "enumDescriptions": [ - "Always recreate the disk.", - "Recreate the disk if source (image, snapshot) of this disk is different\nfrom source of existing disk.", - "Use the existing disk, this is the default behaviour." + "Automatically cache static content, including common image formats,\nmedia (video and audio), and web assets (JavaScript and CSS).\nRequests and responses that are marked as uncacheable, as well as\ndynamic content (including HTML), will not be cached.", + "Cache all content, ignoring any \"private\", \"no-store\" or \"no-cache\"\ndirectives in Cache-Control response headers.\nWarning: this may result in Cloud CDN caching private,\nper-user (user identifiable) content.", + "", + "Requires the origin to set valid caching headers to cache content.\nResponses without these headers will not be cached at Google's edge,\nand will require a full trip to the origin on every request,\npotentially impacting performance and increasing load on the\norigin server." ], "type": "string" }, - "provisionedIops": { - "description": "Indicates how many IOPS to provision for the disk. This sets the number\nof I/O operations per second that the disk can handle. Values must be\nbetween 10,000 and 120,000. For more details, see theExtreme persistent\ndisk documentation.", - "format": "int64", - "type": "string" + "clientTtl": { + "description": "Specifies a separate client (e.g. browser client) maximum TTL. This is\nused to clamp the max-age (or Expires) value sent to the client. With\nFORCE_CACHE_ALL, the lesser of client_ttl and default_ttl is used for the\nresponse max-age directive, along with a \"public\" directive. For\ncacheable content in CACHE_ALL_STATIC mode, client_ttl clamps the max-age\nfrom the origin (if specified), or else sets the response max-age\ndirective to the lesser of the client_ttl and default_ttl, and also\nensures a \"public\" cache-control directive is present.\nIf a client TTL is not specified, a default value (1 hour) will be used.\nThe maximum allowed value is 31,622,400s (1 year).", + "format": "int32", + "type": "integer" }, - "provisionedThroughput": { - "description": "Indicates how much throughput to provision for the disk. This sets the\nnumber of throughput mb per second that the disk can handle. Values must\ngreater than or equal to 1.", - "format": "int64", - "type": "string" + "defaultTtl": { + "description": "Specifies the default TTL for cached content served by this origin for\nresponses that do not have an existing valid TTL (max-age or s-maxage).\nSetting a TTL of \"0\" means \"always revalidate\".\nThe value of defaultTTL cannot be set to a value greater than that of\nmaxTTL, but can be equal.\nWhen the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL\nwill overwrite the TTL set in all responses. The maximum allowed value is\n31,622,400s (1 year), noting that infrequently accessed objects may be\nevicted from the cache before the defined TTL.", + "format": "int32", + "type": "integer" }, - "replicaZones": { - "description": "Required for each regional disk associated with the instance. Specify\nthe URLs of the zones where the disk should be replicated to.\nYou must provide exactly two replica zones, and one zone must be the same\nas the instance zone.", + "maxTtl": { + "description": "Specifies the maximum allowed TTL for cached content served by this\norigin.\nCache directives that attempt to set a max-age or s-maxage higher than\nthis, or an Expires header more than maxTTL seconds in the future will\nbe capped at the value of maxTTL, as if it were the value of an\ns-maxage Cache-Control directive.\nHeaders sent to the client will not be modified.\nSetting a TTL of \"0\" means \"always revalidate\".\nThe maximum allowed value is 31,622,400s (1 year), noting that\ninfrequently accessed objects may be evicted from the cache before\nthe defined TTL.", + "format": "int32", + "type": "integer" + }, + "negativeCaching": { + "description": "Negative caching allows per-status code TTLs to be set, in order\nto apply fine-grained caching for common errors or redirects.\nThis can reduce the load on your origin and improve end-user\nexperience by reducing response latency.\nWhen the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS,\nnegative caching applies to responses with the specified response code\nthat lack any Cache-Control, Expires, or Pragma: no-cache directives.\nWhen the cache mode is set to FORCE_CACHE_ALL, negative caching applies\nto all responses with the specified response code, and override any\ncaching headers.\nBy default, Cloud CDN will apply the following default TTLs to these\nstatus codes:\nHTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m\nHTTP 404 (Not Found), 410 (Gone),\n451 (Unavailable For Legal Reasons): 120s\nHTTP 405 (Method Not Found), 501 (Not Implemented): 60s.\nThese defaults can be overridden in negative_caching_policy.", + "type": "boolean" + }, + "negativeCachingPolicy": { + "description": "Sets a cache TTL for the specified HTTP status code.\nnegative_caching must be enabled to configure negative_caching_policy.\nOmitting the policy and leaving negative_caching enabled will use\nCloud CDN's default cache TTLs.\nNote that when specifying an explicit negative_caching_policy, you\nshould take care to specify a cache TTL for all response codes\nthat you wish to cache. Cloud CDN will not apply any default\nnegative caching when a policy exists.", "items": { - "type": "string" + "$ref": "BackendServiceCdnPolicyNegativeCachingPolicy" }, "type": "array" }, - "resourceManagerTags": { - "additionalProperties": { - "type": "string" - }, - "description": "Input only. Resource manager tags to be bound to the disk. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT & PATCH) when\nempty.", - "type": "object" + "requestCoalescing": { + "description": "If true then Cloud CDN will combine multiple concurrent cache fill\nrequests into a small number of requests to the origin.", + "type": "boolean" }, - "resourcePolicies": { - "description": "Resource policies applied to this disk for automatic snapshot creations.\nSpecified using the full or partial URL. For instance template, specify\nonly the resource policy name.", + "serveWhileStale": { + "description": "Serve existing content from the cache (if available) when revalidating\ncontent with the origin, or when an error is encountered when refreshing\nthe cache.\nThis setting defines the default \"max-stale\" duration for any cached\nresponses that do not specify a max-stale directive. Stale responses that\nexceed the TTL configured here will not be served. The default limit\n(max-stale) is 86400s (1 day), which will allow stale content to be\nserved up to this limit beyond the max-age (or s-maxage) of a cached\nresponse.\nThe maximum allowed value is 604800 (1 week).\nSet this to zero (0) to disable serve-while-stale.", + "format": "int32", + "type": "integer" + }, + "signedUrlCacheMaxAgeSec": { + "description": "Maximum number of seconds the response to a signed URL request will be\nconsidered fresh. After this time period, the response will be\nrevalidated before being served. Defaults to 1hr (3600s). When serving\nresponses to signed URL requests, Cloud CDN will internally behave as\nthough all responses from this backend had a \"Cache-Control:\npublic, max-age=[TTL]\" header, regardless of any existing\nCache-Control header. The actual headers served in responses will not be\naltered.", + "format": "int64", + "type": "string" + }, + "signedUrlKeyNames": { + "description": "[Output Only] Names of the keys for signing request URLs.", "items": { "type": "string" }, "type": "array" + } + }, + "type": "object" + }, + "BackendServiceCdnPolicyBypassCacheOnRequestHeader": { + "description": "Bypass the cache when the specified request headers are present,\ne.g. Pragma or Authorization headers. Values are case insensitive.\nThe presence of such a header overrides the cache_mode setting.", + "id": "BackendServiceCdnPolicyBypassCacheOnRequestHeader", + "properties": { + "headerName": { + "description": "The header field name to match on when bypassing cache.\nValues are case-insensitive.", + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceCdnPolicyNegativeCachingPolicy": { + "description": "Specify CDN TTLs for response error codes.", + "id": "BackendServiceCdnPolicyNegativeCachingPolicy", + "properties": { + "code": { + "description": "The HTTP status code to define a TTL against. Only HTTP status codes\n300, 301, 302, 307, 308, 404, 405, 410, 421, 451 and 501 can be\nspecified as values, and you cannot specify a status code more than\nonce.", + "format": "int32", + "type": "integer" }, - "sourceImage": { - "description": "The source image to create this disk. When creating a new instance boot\ndisk, one of initializeParams.sourceImage orinitializeParams.sourceSnapshot or disks.source\nis required.\n\nTo create a disk with one of the public operating system\nimages, specify the image by its family name. For example, specifyfamily/debian-9 to use the latest Debian 9 image:\n\nprojects/debian-cloud/global/images/family/debian-9\n\n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD\n\n\nTo create a disk with a custom image that you created, specify the\nimage name in the following format:\n\nglobal/images/my-custom-image\n\n\nYou can also specify a custom image by its image family, which returns\nthe latest version of the image in that family. Replace the image name\nwith family/family-name:\n\nglobal/images/family/my-image-family\n\n\nIf the source image is deleted later, this field will not be set.", + "ttl": { + "description": "The TTL (in seconds) for which to cache responses with the\ncorresponding status code.\nThe maximum allowed value is 1800s (30 minutes), noting that\ninfrequently accessed objects may be evicted from the cache before the\ndefined TTL.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "BackendServiceConnectionTrackingPolicy": { + "description": "Connection Tracking configuration for this BackendService.", + "id": "BackendServiceConnectionTrackingPolicy", + "properties": { + "connectionPersistenceOnUnhealthyBackends": { + "description": "Specifies connection persistence when backends are unhealthy. The default\nvalue is DEFAULT_FOR_PROTOCOL.\n\nIf set to DEFAULT_FOR_PROTOCOL, the existing connections\npersist on unhealthy backends only for connection-oriented protocols\n(TCP and SCTP) and only if the Tracking Mode isPER_CONNECTION (default tracking mode) or the Session\nAffinity is configured for 5-tuple. They do not persist forUDP.\n\nIf set to NEVER_PERSIST, after a backend becomes unhealthy,\nthe existing connections on the unhealthy backend are never persisted on\nthe unhealthy backend. They are always diverted to newly selected healthy\nbackends (unless all backends are unhealthy).\n\nIf set to ALWAYS_PERSIST, existing connections always\npersist on unhealthy backends regardless of protocol and session\naffinity. It is generally not recommended to use this mode overriding the\ndefault.\n\nFor more details, see [Connection Persistence for Network Load\nBalancing](https://cloud.google.com/load-balancing/docs/network/networklb-backend-service#connection-persistence)\nand [Connection Persistence for Internal TCP/UDP Load\nBalancing](https://cloud.google.com/load-balancing/docs/internal#connection-persistence).", + "enum": [ + "ALWAYS_PERSIST", + "DEFAULT_FOR_PROTOCOL", + "NEVER_PERSIST" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "enableStrongAffinity": { + "description": "Enable Strong Session Affinity for external passthrough Network Load\nBalancers. This option is not available publicly.", + "type": "boolean" + }, + "idleTimeoutSec": { + "description": "Specifies how long to keep a Connection Tracking entry while there is no\nmatching traffic (in seconds).\n\nFor internal passthrough Network Load Balancers:\n \n - The minimum (default) is 10 minutes and the maximum is 16 hours.\n - It can be set only if Connection Tracking is less than 5-tuple\n (i.e. Session Affinity is CLIENT_IP_NO_DESTINATION,CLIENT_IP or CLIENT_IP_PROTO, and Tracking\n Mode is PER_SESSION).\n\n\n\nFor external passthrough Network Load Balancers the default is 60\nseconds. This option is not available publicly.", + "format": "int32", + "type": "integer" + }, + "trackingMode": { + "description": "Specifies the key used for connection tracking. There are two\noptions:\n \n - PER_CONNECTION: This is the default mode. The Connection\n Tracking is performed as per the Connection Key (default Hash Method) for\n the specific protocol.\n - PER_SESSION: The Connection Tracking is performed as per\n the configured Session Affinity. It matches the configured Session\n Affinity.\n\n\n\nFor more details, see [Tracking Mode for Network Load\nBalancing](https://cloud.google.com/load-balancing/docs/network/networklb-backend-service#tracking-mode)\nand [Tracking Mode for Internal TCP/UDP Load\nBalancing](https://cloud.google.com/load-balancing/docs/internal#tracking-mode).", + "enum": [ + "INVALID_TRACKING_MODE", + "PER_CONNECTION", + "PER_SESSION" + ], + "enumDescriptions": [ + "", + "", + "" + ], "type": "string" + } + }, + "type": "object" + }, + "BackendServiceCustomMetric": { + "description": "Custom Metrics are used for WEIGHTED_ROUND_ROBIN\nlocality_lb_policy.", + "id": "BackendServiceCustomMetric", + "properties": { + "dryRun": { + "description": "If true, the metric data is not used for load balancing.", + "type": "boolean" }, - "sourceImageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Thecustomer-supplied\nencryption key of the source image. Required if the source image is\nprotected by a customer-supplied encryption key.\n\nInstanceTemplate and InstancePropertiesPatch do not storecustomer-supplied\nencryption keys, so you cannot create disks for instances in a managed instance group if the\nsource images are encrypted with your own keys." - }, - "sourceSnapshot": { - "description": "The source snapshot to create this disk. When creating a new instance\nboot disk, one of initializeParams.sourceSnapshot orinitializeParams.sourceImage or disks.source\nis required.\n\nTo create a disk with a snapshot that you created, specify the\nsnapshot name in the following format:\n\nglobal/snapshots/my-backup\n\n\nIf the source snapshot is deleted later, this field will not be set.\n\nNote: You cannot create VMs in bulk using a snapshot as the source. Use\nan image instead when you create VMs using\nthe bulk\ninsert method.", + "name": { + "description": "Name of a custom utilization signal. The name must be 1-64 characters\nlong and match the regular expression\n`[a-z]([-_.a-z0-9]*[a-z0-9])?` which means that the\nfirst character must be a lowercase letter, and all following\ncharacters must be a dash, period, underscore, lowercase letter, or\ndigit, except the last character, which cannot be a dash, period, or\nunderscore. For usage guidelines, see Custom Metrics balancing mode. This\nfield can only be used for a global or regional backend service with the\nloadBalancingScheme set to EXTERNAL_MANAGED,INTERNAL_MANAGED INTERNAL_SELF_MANAGED.", "type": "string" + } + }, + "type": "object" + }, + "BackendServiceFailoverPolicy": { + "description": "For load balancers that have configurable\nfailover:\n[Internal passthrough Network Load\nBalancers](https://cloud.google.com/load-balancing/docs/internal/failover-overview)\nand [external passthrough\nNetwork Load\nBalancers](https://cloud.google.com/load-balancing/docs/network/networklb-failover-overview).\nOn failover or failback, this field indicates whether connection draining\nwill be honored. Google Cloud has a fixed connection draining timeout of\n10 minutes. A setting of true terminates existing TCP\nconnections to the active pool during failover and failback, immediately\ndraining traffic. A setting of false allows existing TCP\nconnections to persist, even on VMs no longer in the active pool, for up\nto the duration of the connection draining timeout (10 minutes).", + "id": "BackendServiceFailoverPolicy", + "properties": { + "disableConnectionDrainOnFailover": { + "description": "This can be set to true if the protocol isTCP, UDP, or UNSPECIFIED.\n\nThe default is false.", + "type": "boolean" }, - "sourceSnapshotEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Thecustomer-supplied\nencryption key of the source snapshot." + "dropTrafficIfUnhealthy": { + "description": "If set to true, connections to the\nload balancer are dropped when all primary and all backup backend VMs are\nunhealthy.If set to false, connections are distributed\namong all primary VMs when all primary and all backup backend VMs are\n unhealthy.\nFor load balancers that have configurable\nfailover:\n[Internal passthrough\nNetwork Load\nBalancers](https://cloud.google.com/load-balancing/docs/internal/failover-overview)\nand [external passthrough\nNetwork Load\nBalancers](https://cloud.google.com/load-balancing/docs/network/networklb-failover-overview).\nThe default is false.", + "type": "boolean" }, - "storagePool": { - "description": "The storage pool in which the new disk is created. You can provide\nthis as a partial or full URL to the resource. For example, the following\nare valid values:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/storagePools/storagePool\n - projects/project/zones/zone/storagePools/storagePool \n - zones/zone/storagePools/storagePool", - "type": "string" + "failoverRatio": { + "description": "The value of the field must be in the range[0, 1]. If the value is 0, the load balancer performs a\nfailover when the number of healthy primary VMs equals zero.\nFor all other values, the load balancer performs a failover when the\ntotal number of healthy primary VMs is less than this ratio.\nFor load balancers that have configurable\nfailover:\n[Internal TCP/UDP Load\nBalancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview)\nand [external TCP/UDP Load\nBalancing](https://cloud.google.com/load-balancing/docs/network/networklb-failover-overview).", + "format": "float", + "type": "number" } }, "type": "object" }, - "AuditConfig": { - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\",\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:jose@example.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\"\n },\n {\n \"log_type\": \"ADMIN_READ\"\n }\n ]\n },\n {\n \"service\": \"sampleservice.googleapis.com\",\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\"\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:aliya@example.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts `jose@example.com` from DATA_READ logging, and\n`aliya@example.com` from DATA_WRITE logging.", - "id": "AuditConfig", + "BackendServiceGroupHealth": { + "id": "BackendServiceGroupHealth", "properties": { - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.", + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Metadata defined as annotations on the network endpoint group.", + "type": "object" + }, + "healthStatus": { + "description": "Health state of the backend instances or endpoints in requested instance or\nnetwork endpoint group, determined based on configured health checks.", "items": { - "$ref": "AuditLogConfig" + "$ref": "HealthStatus" }, "type": "array" }, - "service": { - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", + "kind": { + "default": "compute#backendServiceGroupHealth", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#backendServiceGroupHealth for the health of backend\nservices.", + "readOnly": true, "type": "string" } }, "type": "object" }, - "AuditLogConfig": { - "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:jose@example.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\"\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\njose@example.com from DATA_READ logging.", - "id": "AuditLogConfig", + "BackendServiceHAPolicy": { + "id": "BackendServiceHAPolicy", "properties": { - "exemptedMembers": { - "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", - "items": { - "type": "string" - }, - "type": "array" - }, - "logType": { - "description": "The log type that this config enables.", + "fastIPMove": { + "description": "Specifies whether fast IP move is enabled, and if so, the mechanism to\nachieve it.\n\nSupported values are:\n \n - DISABLED: Fast IP Move is disabled. You can only use the\n haPolicy.leader API to update the leader.\n - >GARP_RA: Provides a method to very quickly define a new network\n endpoint as the leader. This method is faster than updating the leader\n using the haPolicy.leader API. Fast IP move works as follows: The VM\n hosting the network endpoint that should become the new leader sends\n either a Gratuitous ARP (GARP) packet (IPv4) or an ICMPv6 Router\n Advertisement(RA) packet (IPv6). Google Cloud immediately but\n temporarily associates the forwarding rule IP address with that VM, and\n both new and in-flight packets are quickly delivered to that VM.\n\n\n\nNote the important properties of the Fast IP Move functionality:\n \n - The GARP/RA-initiated re-routing stays active for approximately 20\n minutes. After triggering fast failover, you must also\n appropriately set the haPolicy.leader.\n - The new leader instance should continue to send GARP/RA packets\n periodically every 10 seconds until at least 10 minutes after updating\n the haPolicy.leader (but stop immediately if it is no longer the leader).\n - After triggering a fast failover, we recommend that you wait at least\n 3 seconds before sending another GARP/RA packet from a different VM\n instance to avoid race conditions.\n - Don't send GARP/RA packets from different VM\n instances at the same time. If multiple instances continue to send\n GARP/RA packets, traffic might be routed to different destinations in an\n alternating order. This condition ceases when a single instance\n issues a GARP/RA packet.\n - The GARP/RA request always takes priority over the leader API.\n Using the haPolicy.leader API to change the leader to a different\n instance will have no effect until the GARP/RA request becomes\n inactive.\n - The GARP/RA packets should follow the GARP/RA\n Packet Specifications..\n - When multiple forwarding rules refer to a regional backend service,\n you need only send a GARP or RA packet for a single forwarding rule\n virtual IP. The virtual IPs for all forwarding rules targeting the same\n backend service will also be moved to the sender of the GARP or RA\n packet. \n\n\n\nThe following are the Fast IP Move limitations (that is, when fastIPMove\nis not DISABLED):\n \n - Multiple forwarding rules cannot use the same IP address if one of\n them refers to a regional backend service with fastIPMove.\n - The regional backend service must set the network field, and all\n NEGs must belong to that network. However, individual\n NEGs can belong to different subnetworks of that network. \n - The maximum number of network endpoints across all backends of a\n backend service with fastIPMove is 32.\n - The maximum number of backend services with fastIPMove that can have\n the same network endpoint attached to one of its backends is 64.\n - The maximum number of backend services with fastIPMove in a VPC in a\n region is 64.\n - The network endpoints that are attached to a backend of a backend\n service with fastIPMove cannot resolve to Gen3+ machines for IPv6.\n - Traffic directed to the leader by a static route next hop will not be\n redirected to a new leader by fast failover. Such traffic will only be\n redirected once an haPolicy.leader update has taken effect. Only traffic\n to the forwarding rule's virtual IP will be redirected to a new leader by\n fast failover.\n\n\nhaPolicy.fastIPMove can be set only at backend service creation time.\nOnce set, it cannot be updated.\n\nBy default, fastIpMove is set to DISABLED.", "enum": [ - "ADMIN_READ", - "DATA_READ", - "DATA_WRITE", - "LOG_TYPE_UNSPECIFIED" + "DISABLED", + "GARP_RA" ], "enumDescriptions": [ - "Admin reads. Example: CloudIAM getIamPolicy", - "Data reads. Example: CloudSQL Users list", - "Data writes. Example: CloudSQL Users create", - "Default case. Should never be this." + "", + "" ], "type": "string" + }, + "leader": { + "$ref": "BackendServiceHAPolicyLeader", + "description": "Selects one of the network endpoints attached to the backend NEGs of\nthis service as the active endpoint (the leader) that receives all\ntraffic.\n\nWhen the leader changes, there is no connection draining to persist\nexisting connections on the old leader.\n\nYou are responsible for selecting a suitable endpoint as the\nleader. For example, preferring a healthy endpoint over unhealthy ones.\nNote that this service does not track backend endpoint health, and\nselects the configured leader unconditionally." } }, "type": "object" }, - "Autoscaler": { - "description": "Represents an Autoscaler resource.\n\nGoogle Compute Engine has two Autoscaler resources:\n\n* [Zonal](/compute/docs/reference/rest/v1/autoscalers)\n* [Regional](/compute/docs/reference/rest/v1/regionAutoscalers)\n\nUse autoscalers to automatically add or delete instances from a\nmanaged instance group according to your defined autoscaling policy.\nFor more information, read Autoscaling Groups of Instances.\n\nFor zonal managed instance groups resource, use the autoscaler\nresource.\n\nFor regional managed instance groups, use theregionAutoscalers resource.", - "id": "Autoscaler", + "BackendServiceHAPolicyLeader": { + "id": "BackendServiceHAPolicyLeader", "properties": { - "autoscalingPolicy": { - "$ref": "AutoscalingPolicy", - "description": "The configuration parameters for the autoscaling algorithm. You can define\none or more signals for an autoscaler: cpuUtilization,customMetricUtilizations, andloadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based oncpuUtilization to 0.6 or 60%." - }, - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "id": { - "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "readOnly": true, + "backendGroup": { + "description": "A fully-qualified URL (starting with https://www.googleapis.com/)\nof the zonal Network Endpoint Group (NEG) with `GCE_VM_IP` endpoints\nthat the leader is attached to.\n\nThe leader's backendGroup must already be specified as a backend of\nthis backend service. Removing a backend that is designated as the\nleader's backendGroup is not permitted.", "type": "string" }, - "kind": { - "default": "compute#autoscaler", - "description": "Output only. [Output Only] Type of the resource. Always compute#autoscaler\nfor autoscalers.", - "readOnly": true, + "networkEndpoint": { + "$ref": "BackendServiceHAPolicyLeaderNetworkEndpoint", + "description": "The network endpoint within the leader.backendGroup that is\ndesignated as the leader.\n\nThis network endpoint cannot be detached from the NEG specified in\nthe haPolicy.leader.backendGroup until the leader is updated with\nanother network endpoint, or the leader is removed from the haPolicy." + } + }, + "type": "object" + }, + "BackendServiceHAPolicyLeaderNetworkEndpoint": { + "id": "BackendServiceHAPolicyLeaderNetworkEndpoint", + "properties": { + "instance": { + "description": "The name of the VM instance of the leader network endpoint. The\ninstance must already be attached to the NEG specified in the\nhaPolicy.leader.backendGroup.\n\nThe name must be 1-63 characters long, and comply with RFC1035.\nAuthorization requires the following IAM permission on the\nspecified resource instance: compute.instances.use", "type": "string" - }, + } + }, + "type": "object" + }, + "BackendServiceHttpCookie": { + "description": "The HTTP cookie used for stateful session affinity.", + "id": "BackendServiceHttpCookie", + "properties": { "name": { - "annotations": { - "required": [ - "compute.autoscalers.insert" - ] - }, - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the cookie.", "type": "string" }, - "recommendedSize": { - "description": "Output only. [Output Only] Target recommended MIG size (number of instances) computed by\nautoscaler. Autoscaler calculates the recommended MIG size even when the\nautoscaling policy mode is different from ON. This field is empty when\nautoscaler is not connected to an existing managed instance group or\nautoscaler did not generate its prediction.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "region": { - "description": "Output only. [Output Only] URL of theregion\nwhere the instance group resides (for autoscalers living in regional\nscope).", - "readOnly": true, + "path": { + "description": "Path to set for the cookie.", "type": "string" }, - "scalingScheduleStatus": { - "additionalProperties": { - "$ref": "ScalingScheduleStatus" - }, - "description": "Output only. [Output Only] Status information of existing scaling schedules.", - "readOnly": true, - "type": "object" - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", - "type": "string" + "ttl": { + "$ref": "Duration", + "description": "Lifetime of the cookie." + } + }, + "type": "object" + }, + "BackendServiceIAP": { + "description": "Identity-Aware Proxy", + "id": "BackendServiceIAP", + "properties": { + "enabled": { + "description": "Whether the serving infrastructure will authenticate and authorize all\nincoming requests.", + "type": "boolean" }, - "status": { - "description": "[Output Only] The status of the autoscaler configuration. Current set of\npossible values:\n \n - PENDING:\n Autoscaler backend hasn't read new/updated configuration.\n - DELETING:\n Configuration is being deleted.\n - ACTIVE:\n Configuration is acknowledged to be effective. Some warnings might\n be present in the statusDetails field.\n - ERROR:\n Configuration has errors. Actionable for users. Details are present in\n the statusDetails field.\n\n\nNew values might be added in the future.", - "enum": [ - "ACTIVE", - "DELETING", - "ERROR", - "PENDING" - ], - "enumDescriptions": [ - "Configuration is acknowledged to be effective", - "Configuration is being deleted", - "Configuration has errors. Actionable for users.", - "Autoscaler backend hasn't read new/updated configuration" - ], + "oauth2ClientId": { + "description": "OAuth2 client ID to use for the authentication flow.", "type": "string" }, - "statusDetails": { - "description": "[Output Only] Human-readable details about the current state of the\nautoscaler. Read the documentation forCommonly\nreturned status messages for examples of status messages you might\nencounter.", - "items": { - "$ref": "AutoscalerStatusDetails" - }, - "type": "array" - }, - "target": { - "description": "URL of the managed instance group that this autoscaler will scale. This\nfield is required when creating an autoscaler.", + "oauth2ClientSecret": { + "description": "OAuth2 client secret to use for the authentication flow.\nFor security reasons, this value cannot be retrieved via the API.\nInstead, the SHA-256 hash of the value is returned in the\noauth2ClientSecretSha256 field.\n\n@InputOnly", "type": "string" }, - "zone": { - "description": "Output only. [Output Only] URL of thezone\nwhere the instance group resides (for autoscalers living in zonal scope).", + "oauth2ClientSecretSha256": { + "description": "Output only. [Output Only] SHA256 hash value for the field oauth2_client_secret above.", "readOnly": true, "type": "string" } }, "type": "object" }, - "AutoscalerAggregatedList": { - "id": "AutoscalerAggregatedList", + "BackendServiceList": { + "description": "Contains a list of BackendService resources.", + "id": "BackendServiceList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "additionalProperties": { - "$ref": "AutoscalersScopedList", - "description": "[Output Only] Name of the scope containing this set of autoscalers." + "description": "A list of BackendService resources.", + "items": { + "$ref": "BackendService" }, - "description": "A list of AutoscalersScopedList resources.", - "type": "object" + "type": "array" }, "kind": { - "default": "compute#autoscalerAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#autoscalerAggregatedList for aggregated lists of\nautoscalers.", + "default": "compute#backendServiceList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#backendServiceList for lists of backend services.", "readOnly": true, "type": "string" }, @@ -45595,14 +52403,6 @@ "readOnly": true, "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -45730,24 +52530,24 @@ }, "type": "object" }, - "AutoscalerList": { - "description": "Contains a list of Autoscaler resources.", - "id": "AutoscalerList", + "BackendServiceListUsable": { + "description": "Contains a list of usable BackendService resources.", + "id": "BackendServiceListUsable", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of Autoscaler resources.", + "description": "A list of BackendService resources.", "items": { - "$ref": "Autoscaler" + "$ref": "BackendService" }, "type": "array" }, "kind": { - "default": "compute#autoscalerList", - "description": "Output only. [Output Only] Type of resource. Always compute#autoscalerList\nfor lists of autoscalers.", + "default": "compute#usableBackendServiceList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#usableBackendServiceList for lists of usable backend\nservices.", "readOnly": true, "type": "string" }, @@ -45887,76 +52687,234 @@ }, "type": "object" }, - "AutoscalerStatusDetails": { - "id": "AutoscalerStatusDetails", + "BackendServiceLocalityLoadBalancingPolicyConfig": { + "description": "Container for either a built-in LB policy supported by gRPC or Envoy or\na custom one implemented by the end user.", + "id": "BackendServiceLocalityLoadBalancingPolicyConfig", "properties": { - "message": { - "description": "The status message.", + "customPolicy": { + "$ref": "BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy" + }, + "policy": { + "$ref": "BackendServiceLocalityLoadBalancingPolicyConfigPolicy" + } + }, + "type": "object" + }, + "BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy": { + "description": "The configuration for a custom policy implemented by the user and\ndeployed with the client.", + "id": "BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy", + "properties": { + "data": { + "description": "An optional, arbitrary JSON object with configuration data, understood\nby a locally installed custom policy implementation.", "type": "string" }, - "type": { - "description": "The type of error, warning, or notice returned. Current set of possible\nvalues:\n \n - ALL_INSTANCES_UNHEALTHY (WARNING):\n All instances in the instance group are unhealthy (not in RUNNING\n state).\n - BACKEND_SERVICE_DOES_NOT_EXIST (ERROR):\n There is no backend service attached to the instance group.\n - CAPPED_AT_MAX_NUM_REPLICAS (WARNING):\n Autoscaler recommends a size greater than maxNumReplicas.\n - CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE (WARNING):\n The custom metric samples are not exported often enough to be\n a credible base for autoscaling.\n - CUSTOM_METRIC_INVALID (ERROR):\n The custom metric that was specified does not exist or does not have\n the necessary labels.\n - MIN_EQUALS_MAX (WARNING):\n The minNumReplicas is equal to maxNumReplicas. This means the\n autoscaler cannot add or remove instances from the instance group.\n - MISSING_CUSTOM_METRIC_DATA_POINTS (WARNING):\n The autoscaler did not receive any data from the custom metric\n configured for autoscaling.\n - MISSING_LOAD_BALANCING_DATA_POINTS (WARNING):\n The autoscaler is configured to scale based on a load balancing signal\n but the instance group has not received any requests from the load\n balancer.\n - MODE_OFF (WARNING):\n Autoscaling is turned off. The number of instances in the group won't\n change automatically. The autoscaling configuration is preserved.\n - MODE_ONLY_UP (WARNING):\n Autoscaling is in the \"Autoscale only out\" mode. The autoscaler can add\n instances but not remove any.\n - MORE_THAN_ONE_BACKEND_SERVICE (ERROR):\n The instance group cannot be autoscaled because it has more than one\n backend service attached to it.\n - NOT_ENOUGH_QUOTA_AVAILABLE (ERROR):\n There is insufficient quota for the necessary resources, such as CPU or\n number of instances.\n - REGION_RESOURCE_STOCKOUT (ERROR):\n Shown only for regional autoscalers: there is a resource stockout in\n the chosen region.\n - SCALING_TARGET_DOES_NOT_EXIST (ERROR):\n The target to be scaled does not exist.\n - UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION\n (ERROR): Autoscaling does not work with an HTTP/S load balancer that\n has been configured for maxRate.\n - ZONE_RESOURCE_STOCKOUT (ERROR):\n For zonal autoscalers: there is a resource stockout in the chosen zone.\n For regional autoscalers: in at least one of the zones you're using\n there is a resource stockout.\n\n\nNew values might be added in the future. Some of the values might not be\navailable in all API versions.", + "name": { + "description": "Identifies the custom policy.\n\nThe value should match the name of a custom implementation registered\non the gRPC clients. It should follow protocol buffer message naming\nconventions and include the full path (for example,\nmyorg.CustomLbPolicy). The maximum length is 256 characters.\n\nDo not specify the same custom policy more than once for a\nbackend. If you do, the configuration is rejected.\n\nFor an example of how to use this field, seeUse\na custom policy.", + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceLocalityLoadBalancingPolicyConfigPolicy": { + "description": "The configuration for a built-in load balancing policy.", + "id": "BackendServiceLocalityLoadBalancingPolicyConfigPolicy", + "properties": { + "name": { + "description": "The name of a locality load-balancing policy. Valid values include\nROUND_ROBIN and, for Java clients, LEAST_REQUEST. For information\nabout these values, see the description of localityLbPolicy.\n\nDo not specify the same policy more than once for a\nbackend. If you do, the configuration is rejected.", "enum": [ - "ALL_INSTANCES_UNHEALTHY", - "BACKEND_SERVICE_DOES_NOT_EXIST", - "CAPPED_AT_MAX_NUM_REPLICAS", - "CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE", - "CUSTOM_METRIC_INVALID", - "MIN_EQUALS_MAX", - "MISSING_CUSTOM_METRIC_DATA_POINTS", - "MISSING_LOAD_BALANCING_DATA_POINTS", - "MODE_OFF", - "MODE_ONLY_SCALE_OUT", - "MODE_ONLY_UP", - "MORE_THAN_ONE_BACKEND_SERVICE", - "NOT_ENOUGH_QUOTA_AVAILABLE", - "REGION_RESOURCE_STOCKOUT", - "SCALING_TARGET_DOES_NOT_EXIST", - "SCHEDULED_INSTANCES_GREATER_THAN_AUTOSCALER_MAX", - "SCHEDULED_INSTANCES_LESS_THAN_AUTOSCALER_MIN", - "UNKNOWN", - "UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION", - "ZONE_RESOURCE_STOCKOUT" + "INVALID_LB_POLICY", + "LEAST_REQUEST", + "MAGLEV", + "ORIGINAL_DESTINATION", + "RANDOM", + "RING_HASH", + "ROUND_ROBIN", + "WEIGHTED_GCP_RENDEZVOUS", + "WEIGHTED_MAGLEV", + "WEIGHTED_ROUND_ROBIN" ], "enumDescriptions": [ - "All instances in the instance group are unhealthy (not in RUNNING state).", - "There is no backend service attached to the instance group.", - "Autoscaler recommends a size greater than maxNumReplicas.", - "The custom metric samples are not exported often enough to be a credible\nbase for autoscaling.", - "The custom metric that was specified does not exist or does not have the\nnecessary labels.", - "The minNumReplicas is equal to maxNumReplicas. This means the autoscaler\ncannot add or remove instances from the instance group.", - "The autoscaler did not receive any data from the custom metric configured\nfor autoscaling.", - "The autoscaler is configured to scale based on a load balancing signal\nbut the instance group has not received any requests from the load\nbalancer.", - "Autoscaling is turned off. The number of instances in the group won't\nchange automatically. The autoscaling configuration is preserved.", - "Autoscaling is in the \"Autoscale only scale out\" mode.\nInstances in the group will be only added.", - "Autoscaling is in the \"Autoscale only out\" mode. Instances in the group\nwill be only added.", - "The instance group cannot be autoscaled because it has more than one\nbackend service attached to it.", - "There is insufficient quota for the necessary resources, such as CPU or\nnumber of instances.", - "Showed only for regional autoscalers: there is a resource stockout in\nthe chosen region.", - "The target to be scaled does not exist.", - "For some scaling schedules minRequiredReplicas is greater than\nmaxNumReplicas. Autoscaler always recommends at most maxNumReplicas\ninstances.", - "For some scaling schedules minRequiredReplicas is less than\nminNumReplicas. Autoscaler always recommends at least minNumReplicas\ninstances.", "", - "Autoscaling does not work with an HTTP/S load balancer that has been\nconfigured for maxRate.", - "For zonal autoscalers: there is a resource stockout in the chosen zone.\nFor regional autoscalers: in at least one of the zones you're using there\nis a resource stockout." + "An O(1) algorithm which selects two random healthy hosts and\npicks the host which has fewer active requests.", + "This algorithm implements consistent hashing to backends. Maglev can be\nused as a drop in replacement for the ring hash load balancer. Maglev is\nnot as stable as ring hash but has faster table lookup build times and\nhost selection times. For more information about Maglev, seeMaglev:\nA Fast and Reliable Software Network Load Balancer.", + "Backend host is selected based on the client connection metadata, i.e.,\nconnections are opened to the same address as the destination address of\nthe incoming connection before the connection was redirected to the load\nbalancer.", + "The load balancer selects a random healthy host.", + "The ring/modulo hash load balancer implements consistent hashing to\nbackends. The algorithm has the property that the addition/removal\nof a host from a set of N hosts only affects 1/N of the requests.", + "This is a simple policy in which each healthy backend is selected\nin round robin order. This is the default.", + "Per-instance weighted Load Balancing via health check reported weights.\nIn internal passthrough network load balancing, it is weighted\nrendezvous hashing.\nThis option is only supported in internal passthrough network load\nbalancing.", + "Per-instance weighted Load Balancing via health check reported weights.\nIf set, the Backend Service must configure a non legacy HTTP-based Health\nCheck, and health check replies are expected to contain non-standard HTTP\nresponse header field X-Load-Balancing-Endpoint-Weight to specify the\nper-instance weights.\nIf set, Load Balancing is weighted based on the\nper-instance weights reported in the last processed health check replies,\nas long as every instance either reported a valid weight or had\nUNAVAILABLE_WEIGHT. Otherwise, Load Balancing remains equal-weight.\nThis option is only supported in Network Load Balancing.", + "Per-endpoint weighted round-robin Load Balancing using weights computed\nfrom Backend reported Custom Metrics. If set, the Backend Service\nresponses are expected to contain non-standard HTTP response header field\nEndpoint-Load-Metrics. The reported metrics\nto use for computing the weights are specified via the\ncustomMetrics fields." + ], + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceLogConfig": { + "description": "The available logging options for the load balancer traffic served by this\nbackend service.", + "id": "BackendServiceLogConfig", + "properties": { + "enable": { + "description": "Denotes whether to enable logging for the load balancer\ntraffic served by this backend service. The default value is false.", + "type": "boolean" + }, + "optionalFields": { + "description": "This field can only be specified if logging is enabled for this backend\nservice and \"logConfig.optionalMode\" was set to CUSTOM. Contains a list\nof optional fields you want to include in the logs. For example:\nserverInstance, serverGkeDetails.cluster,\nserverGkeDetails.pod.podNamespace", + "items": { + "type": "string" + }, + "type": "array" + }, + "optionalMode": { + "description": "This field can only be specified if logging is enabled for this backend\nservice. Configures whether all, none or a subset of optional fields\nshould be added to the reported logs. One of [INCLUDE_ALL_OPTIONAL,\nEXCLUDE_ALL_OPTIONAL, CUSTOM]. Default is EXCLUDE_ALL_OPTIONAL.", + "enum": [ + "CUSTOM", + "EXCLUDE_ALL_OPTIONAL", + "INCLUDE_ALL_OPTIONAL" + ], + "enumDescriptions": [ + "A subset of optional fields.", + "None optional fields.", + "All optional fields." + ], + "type": "string" + }, + "sampleRate": { + "description": "This field can only be specified if logging is enabled for this backend\nservice. The value of the field must be in [0, 1]. This configures the\nsampling rate of requests to the load balancer where 1.0 means all logged\nrequests are reported and 0.0 means no logged requests are reported. The\ndefault value is 1.0.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "BackendServiceNetworkPassThroughLbTrafficPolicy": { + "id": "BackendServiceNetworkPassThroughLbTrafficPolicy", + "properties": { + "zonalAffinity": { + "$ref": "BackendServiceNetworkPassThroughLbTrafficPolicyZonalAffinity", + "description": "When configured, new connections are load balanced across healthy backend\nendpoints in the local zone." + } + }, + "type": "object" + }, + "BackendServiceNetworkPassThroughLbTrafficPolicyZonalAffinity": { + "id": "BackendServiceNetworkPassThroughLbTrafficPolicyZonalAffinity", + "properties": { + "spillover": { + "description": "This field indicates whether zonal affinity is enabled or not. The\npossible values are:\n \n - ZONAL_AFFINITY_DISABLED: Default Value. Zonal Affinity\n is disabled. The load balancer distributes new connections to all\n healthy backend endpoints across all zones.\n - ZONAL_AFFINITY_STAY_WITHIN_ZONE: Zonal Affinity is\n enabled. The load balancer distributes new connections to all healthy\n backend endpoints in the local zone only. If there are no healthy\n backend endpoints in the local zone, the load balancer distributes\n new connections to all backend endpoints in the local zone.\n - ZONAL_AFFINITY_SPILL_CROSS_ZONE: Zonal Affinity is\n enabled. The load balancer distributes new connections to all healthy\n backend endpoints in the local zone only. If there aren't enough\n healthy backend endpoints in the local zone, the load balancer\n distributes new connections to all healthy backend endpoints across all\n zones.", + "enum": [ + "ZONAL_AFFINITY_DISABLED", + "ZONAL_AFFINITY_SPILL_CROSS_ZONE", + "ZONAL_AFFINITY_STAY_WITHIN_ZONE" + ], + "enumDescriptions": [ + "", + "", + "" ], "type": "string" + }, + "spilloverRatio": { + "description": "The value of the field must be in [0, 1]. When the ratio of the count\nof healthy backend endpoints in a zone to the count of backend\nendpoints in that same zone is equal to or above this threshold, the\nload balancer distributes new connections to all healthy endpoints in\nthe local zone only. When the ratio of the count of healthy backend\nendpoints in a zone to the count of backend endpoints in that same\nzone is below this threshold, the load balancer distributes all new\nconnections to all healthy endpoints across all zones.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "BackendServiceOrchestrationInfo": { + "description": "A message containing information about the resource or system that manages\nthe backend service.", + "id": "BackendServiceOrchestrationInfo", + "properties": { + "resourceUri": { + "description": "The resource URI of the resource or system that manages the backend\nservice.", + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceParams": { + "description": "Additional Backend Service parameters.", + "id": "BackendServiceParams", + "properties": { + "resourceManagerTags": { + "additionalProperties": { + "type": "string" + }, + "description": "Tag keys/values directly bound to this resource.\nTag keys and values have the same definition as resource\nmanager tags. The field is allowed for INSERT\nonly. The keys/values to set on the resource should be specified in\neither ID { : } or Namespaced format\n{ : }.\nFor example the following are valid inputs:\n* {\"tagKeys/333\" : \"tagValues/444\", \"tagKeys/123\" : \"tagValues/456\"}\n* {\"123/environment\" : \"production\", \"345/abc\" : \"xyz\"}\nNote:\n* Invalid combinations of ID & namespaced format is not supported. For\n instance: {\"123/environment\" : \"tagValues/444\"} is invalid.", + "type": "object" + } + }, + "type": "object" + }, + "BackendServiceReference": { + "id": "BackendServiceReference", + "properties": { + "backendService": { + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceTlsSettings": { + "id": "BackendServiceTlsSettings", + "properties": { + "authenticationConfig": { + "description": "Reference to the BackendAuthenticationConfig resource from the\nnetworksecurity.googleapis.com namespace. Can be used in authenticating\nTLS connections to the backend, as specified by the authenticationMode\nfield. Can only be specified if authenticationMode is not NONE.", + "type": "string" + }, + "sni": { + "description": "Server Name Indication - see RFC3546 section 3.1. If set, the load\nbalancer sends this string as the SNI hostname in the TLS connection to\nthe backend, and requires that this string match a Subject Alternative\nName (SAN) in the backend's server certificate. With a Regional Internet\nNEG backend, if the SNI is specified here, the load balancer uses it\nregardless of whether the Regional Internet NEG is specified with FQDN or\nIP address and port. When both sni and subjectAltNames[] are specified,\nthe load balancer matches the backend certificate's SAN only to\nsubjectAltNames[].", + "type": "string" + }, + "subjectAltNames": { + "description": "A list of Subject Alternative Names (SANs) that the Load Balancer\nverifies during a TLS handshake with the backend. When the server\npresents its X.509 certificate to the Load Balancer, the Load Balancer\ninspects the certificate's SAN field, and requires that at least one SAN\nmatch one of the subjectAltNames in the list. This field is limited to 5\nentries. When both sni and subjectAltNames[] are specified, the load\nbalancer matches the backend certificate's SAN only to subjectAltNames[].", + "items": { + "$ref": "BackendServiceTlsSettingsSubjectAltName" + }, + "type": "array" + } + }, + "type": "object" + }, + "BackendServiceTlsSettingsSubjectAltName": { + "description": "A Subject Alternative Name that the load balancer matches against the SAN\nfield in the TLS certificate provided by the backend, specified as either\na DNS name or a URI, in accordance with RFC 5280 4.2.1.6", + "id": "BackendServiceTlsSettingsSubjectAltName", + "properties": { + "dnsName": { + "description": "The SAN specified as a DNS Name.", + "type": "string" + }, + "uniformResourceIdentifier": { + "description": "The SAN specified as a URI.", + "type": "string" + } + }, + "type": "object" + }, + "BackendServiceUsedBy": { + "id": "BackendServiceUsedBy", + "properties": { + "reference": { + "description": "Output only. [Output Only] Server-defined URL for resources referencing given\nBackendService like UrlMaps, TargetTcpProxies, TargetSslProxies\nand ForwardingRule.", + "readOnly": true, + "type": "string" } }, "type": "object" }, - "AutoscalersScopedList": { - "id": "AutoscalersScopedList", + "BackendServicesScopedList": { + "id": "BackendServicesScopedList", "properties": { - "autoscalers": { - "description": "[Output Only] A list of autoscalers contained in this scope.", + "backendServices": { + "description": "A list of BackendServices contained in this scope.", "items": { - "$ref": "Autoscaler" + "$ref": "BackendService" }, "type": "array" }, "warning": { - "description": "[Output Only] Informational warning which replaces the list of autoscalers\nwhen the list is empty.", + "description": "Informational warning which replaces the list of\nbackend services when the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -46082,819 +53040,819 @@ }, "type": "object" }, - "AutoscalingPolicy": { - "description": "Cloud Autoscaler policy.", - "id": "AutoscalingPolicy", + "BfdPacket": { + "id": "BfdPacket", "properties": { - "coolDownPeriodSec": { - "description": "The number of seconds that your application takes to initialize on a VM\ninstance. This is referred to as the\n[initialization period](/compute/docs/autoscaler#cool_down_period).\nSpecifying an accurate initialization period improves\nautoscaler decisions. For example, when scaling out, the autoscaler ignores\ndata from VMs that are still initializing because those VMs might not yet\nrepresent normal usage of your application. The default initialization\nperiod is 60 seconds.\n\nInitialization periods might vary because of numerous\nfactors. We recommend that you test how long your application takes to\ninitialize. To do this, create a VM and time your application's startup\nprocess.", - "format": "int32", + "authenticationPresent": { + "description": "The Authentication Present bit of the BFD packet. This is specified in\nsection 4.1 ofRFC5880", + "type": "boolean" + }, + "controlPlaneIndependent": { + "description": "The Control Plane Independent bit of the BFD packet. This is specified in\nsection 4.1 ofRFC5880", + "type": "boolean" + }, + "demand": { + "description": "The demand bit of the BFD packet. This is specified in section 4.1 ofRFC5880", + "type": "boolean" + }, + "diagnostic": { + "description": "The diagnostic code specifies the local system's reason for the last change\nin session state. This allows remote systems to determine the reason that\nthe previous session failed, for example. These diagnostic codes are\nspecified in section 4.1 ofRFC5880", + "enum": [ + "ADMINISTRATIVELY_DOWN", + "CONCATENATED_PATH_DOWN", + "CONTROL_DETECTION_TIME_EXPIRED", + "DIAGNOSTIC_UNSPECIFIED", + "ECHO_FUNCTION_FAILED", + "FORWARDING_PLANE_RESET", + "NEIGHBOR_SIGNALED_SESSION_DOWN", + "NO_DIAGNOSTIC", + "PATH_DOWN", + "REVERSE_CONCATENATED_PATH_DOWN" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "final": { + "description": "The Final bit of the BFD packet. This is specified in section 4.1 ofRFC5880", + "type": "boolean" + }, + "length": { + "description": "The length of the BFD Control packet in bytes. This is specified in section\n4.1 ofRFC5880", + "format": "uint32", "type": "integer" }, - "cpuUtilization": { - "$ref": "AutoscalingPolicyCpuUtilization", - "description": "Defines the CPU utilization policy that allows the autoscaler to scale\nbased on the average CPU utilization of a managed instance group." + "minEchoRxIntervalMs": { + "description": "The Required Min Echo RX Interval value in the BFD packet. This is\nspecified in section 4.1 ofRFC5880", + "format": "uint32", + "type": "integer" }, - "customMetricUtilizations": { - "description": "Configuration parameters of autoscaling based on a custom metric.", - "items": { - "$ref": "AutoscalingPolicyCustomMetricUtilization" - }, - "type": "array" + "minRxIntervalMs": { + "description": "The Required Min RX Interval value in the BFD packet. This is specified in\nsection 4.1 ofRFC5880", + "format": "uint32", + "type": "integer" }, - "loadBalancingUtilization": { - "$ref": "AutoscalingPolicyLoadBalancingUtilization", - "description": "Configuration parameters of autoscaling based on load balancer." + "minTxIntervalMs": { + "description": "The Desired Min TX Interval value in the BFD packet. This is specified in\nsection 4.1 ofRFC5880", + "format": "uint32", + "type": "integer" }, - "maxNumReplicas": { - "description": "The maximum number of instances that the autoscaler can scale out to. This\nis required when creating or updating an autoscaler. The maximum number\nof replicas must not be lower than minimal number of replicas.", - "format": "int32", + "multiplier": { + "description": "The detection time multiplier of the BFD packet. This is specified in\nsection 4.1 ofRFC5880", + "format": "uint32", "type": "integer" }, - "minNumReplicas": { - "description": "The minimum number of replicas that the autoscaler can scale in to.\nThis cannot be less than 0. If not provided, autoscaler chooses a\ndefault value depending on maximum number of instances allowed.", - "format": "int32", + "multipoint": { + "description": "The multipoint bit of the BFD packet. This is specified in section 4.1 ofRFC5880", + "type": "boolean" + }, + "myDiscriminator": { + "description": "The My Discriminator value in the BFD packet. This is specified in section\n4.1 ofRFC5880", + "format": "uint32", "type": "integer" }, - "mode": { - "description": "Defines the operating mode for this policy.\nThe following modes are available:\n \n - OFF: Disables the autoscaler but maintains its\n configuration.\n - ONLY_SCALE_OUT: Restricts the autoscaler to add\n VM instances only.\n - ON: Enables all autoscaler activities according to its\n policy.\n\n\nFor more information, see \n\"Turning off or restricting an autoscaler\"", + "poll": { + "description": "The Poll bit of the BFD packet. This is specified in section 4.1 ofRFC5880", + "type": "boolean" + }, + "state": { + "description": "The current BFD session state as seen by the transmitting system. These\nstates are specified in section 4.1 ofRFC5880", "enum": [ - "OFF", - "ON", - "ONLY_SCALE_OUT", - "ONLY_UP" + "ADMIN_DOWN", + "DOWN", + "INIT", + "STATE_UNSPECIFIED", + "UP" ], "enumDescriptions": [ - "Do not automatically scale the MIG in or out.\nThe recommended_size field contains the size of MIG that would be set if\nthe actuation mode was enabled.", - "Automatically scale the MIG in and out according to the policy.", - "Automatically create VMs according to the policy, but do not scale\nthe MIG in.", - "Automatically create VMs according to the policy, but do not scale\nthe MIG in." + "", + "", + "", + "", + "" ], "type": "string" }, - "scaleInControl": { - "$ref": "AutoscalingPolicyScaleInControl" + "version": { + "description": "The version number of the BFD protocol, as specified in section 4.1 ofRFC5880.", + "format": "uint32", + "type": "integer" }, - "scalingSchedules": { - "additionalProperties": { - "$ref": "AutoscalingPolicyScalingSchedule" - }, - "description": "Scaling schedules defined for an autoscaler. Multiple schedules\ncan be set on an autoscaler, and they can overlap. During overlapping\nperiods the greatest min_required_replicas of all scaling schedules is\napplied. Up to 128 scaling schedules are allowed.", - "type": "object" + "yourDiscriminator": { + "description": "The Your Discriminator value in the BFD packet. This is specified in\nsection 4.1 ofRFC5880", + "format": "uint32", + "type": "integer" } }, "type": "object" }, - "AutoscalingPolicyCpuUtilization": { - "description": "CPU utilization policy.", - "id": "AutoscalingPolicyCpuUtilization", + "BfdStatus": { + "description": "Next free: 15", + "id": "BfdStatus", "properties": { - "predictiveMethod": { - "description": "Indicates whether predictive autoscaling based on CPU metric is enabled.\nValid values are:\n\n* NONE (default). No predictive method is used. The autoscaler scales the\ngroup to meet current demand based on real-time metrics.\n* OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by\nmonitoring daily and weekly load patterns and scaling out ahead of\nanticipated demand.", + "bfdSessionInitializationMode": { + "description": "The BFD session initialization mode for this BGP peer.\nIf set to ACTIVE, the Cloud Router will initiate the BFD session for\nthis BGP peer. If set to PASSIVE, the Cloud Router will wait for the\npeer router to initiate the BFD session for this BGP peer. If set to\nDISABLED, BFD is disabled for this BGP peer.", "enum": [ - "NONE", - "OPTIMIZE_AVAILABILITY" + "ACTIVE", + "DISABLED", + "PASSIVE" ], "enumDescriptions": [ - "No predictive method is used. The autoscaler scales the group to meet\ncurrent demand based on real-time metrics", - "Predictive autoscaling improves availability by monitoring daily and\nweekly load patterns and scaling out ahead of anticipated demand." + "", + "", + "" ], "type": "string" }, - "utilizationTarget": { - "description": "The target CPU utilization that the autoscaler maintains. Must be\na float value in the range (0, 1]. If not specified, the default is0.6.\n\nIf the CPU level is below the target utilization, the autoscaler scales\nin the number of instances until it reaches the minimum number of\ninstances you specified or until the average CPU of your instances\nreaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler\nscales out until it reaches the maximum number of instances you\nspecified or until the average utilization reaches the target\nutilization.", - "format": "double", - "type": "number" - } - }, - "type": "object" - }, - "AutoscalingPolicyCustomMetricUtilization": { - "description": "Custom utilization metric policy.", - "id": "AutoscalingPolicyCustomMetricUtilization", - "properties": { - "filter": { - "description": "A filter string, compatible with a Stackdriver Monitoringfilter string forTimeSeries.list API call. This filter is\nused to select a specific TimeSeries for the purpose of autoscaling and\nto determine whether the metric is exporting per-instance or\nper-group data.\n\nFor the filter to be valid for autoscaling purposes, the following rules\napply:\n \n \n - You can only use the AND operator for joining\n selectors.\n - You can only use direct equality comparison operator\n (=) without any functions for each selector.\n - You can specify the metric in both the filter string and in the\n metric field. However, if specified in both places, the metric must\n be identical.\n - The monitored resource type\n determines what kind of values are expected for the metric. If it is\n a gce_instance, the autoscaler expects the metric to\n include a separate TimeSeries for each instance in a group. In such a\n case, you cannot filter on resource labels.\n \n \n If the resource type is any other value, the autoscaler expects\n this metric to contain values that apply to the entire autoscaled\n instance group and resource label filtering can be performed to\n point autoscaler at the correct TimeSeries to scale upon. This is\n called a *per-group metric* for the purpose of autoscaling.\n \n If not specified, the type defaults to\n gce_instance.\n\n\n\nTry to provide a filter that is selective enough to pick just one\nTimeSeries for the autoscaled group or for each of the instances (if you\nare using gce_instance resource type). If multiple\nTimeSeries are returned upon the query execution, the autoscaler will sum\ntheir respective values to obtain its scaling value.", + "configUpdateTimestampMicros": { + "description": "Unix timestamp of the most recent config update.", + "format": "int64", "type": "string" }, - "metric": { - "description": "The identifier (type) of the Stackdriver Monitoring metric. The metric\ncannot have negative values.\n\nThe metric must have a value type of INT64 orDOUBLE.", - "type": "string" + "controlPacketCounts": { + "$ref": "BfdStatusPacketCounts", + "description": "Control packet counts for the current BFD session." }, - "singleInstanceAssignment": { - "description": "If scaling is based on a per-group metric value that represents the\ntotal amount of work to be done or resource usage, set this value to an\namount assigned for a single instance of the scaled group. Autoscaler\nkeeps the number of instances proportional to the value of this\nmetric. The metric itself does not change value due to group\nresizing.\n\nA good metric to use with the target is for examplepubsub.googleapis.com/subscription/num_undelivered_messages\nor a custom metric exporting the total number of requests coming to\nyour instances.\n\nA bad example would be a metric exporting an average or median latency,\nsince this value can't include a chunk assignable to a single instance,\nit could be better used with utilization_target instead.", - "format": "double", - "type": "number" + "controlPacketIntervals": { + "description": "Inter-packet time interval statistics for control packets.", + "items": { + "$ref": "PacketIntervals" + }, + "type": "array" }, - "utilizationTarget": { - "description": "The target value of the metric that autoscaler maintains. This\nmust be a positive value. A utilization metric scales number of\nvirtual machines handling requests to increase or decrease\nproportionally to the metric.\n\nFor example, a good metric to use as a utilization_target ishttps://www.googleapis.com/compute/v1/instance/network/received_bytes_count.\nThe autoscaler works to keep this value constant for each of the\ninstances.", - "format": "double", - "type": "number" + "localDiagnostic": { + "description": "The diagnostic code specifies the local system's reason for the last change\nin session state. This allows remote systems to determine the reason that\nthe previous session failed, for example. These diagnostic codes are\nspecified in section 4.1 ofRFC5880", + "enum": [ + "ADMINISTRATIVELY_DOWN", + "CONCATENATED_PATH_DOWN", + "CONTROL_DETECTION_TIME_EXPIRED", + "DIAGNOSTIC_UNSPECIFIED", + "ECHO_FUNCTION_FAILED", + "FORWARDING_PLANE_RESET", + "NEIGHBOR_SIGNALED_SESSION_DOWN", + "NO_DIAGNOSTIC", + "PATH_DOWN", + "REVERSE_CONCATENATED_PATH_DOWN" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" }, - "utilizationTargetType": { - "description": "Defines how target utilization value is expressed for a Stackdriver\nMonitoring metric. Either GAUGE,DELTA_PER_SECOND, or DELTA_PER_MINUTE.", + "localState": { + "description": "The current BFD session state as seen by the transmitting system. These\nstates are specified in section 4.1 ofRFC5880", "enum": [ - "DELTA_PER_MINUTE", - "DELTA_PER_SECOND", - "GAUGE" + "ADMIN_DOWN", + "DOWN", + "INIT", + "STATE_UNSPECIFIED", + "UP" ], "enumDescriptions": [ - "Sets the utilization target value for a cumulative or delta metric,\nexpressed as the rate of growth per minute.", - "Sets the utilization target value for a cumulative or delta metric,\nexpressed as the rate of growth per second.", - "Sets the utilization target value for a gauge metric. The autoscaler\nwill collect the average utilization of the virtual machines from the\nlast couple of minutes, and compare the value to the utilization\ntarget value to perform autoscaling." + "", + "", + "", + "", + "" ], "type": "string" + }, + "negotiatedLocalControlTxIntervalMs": { + "description": "Negotiated transmit interval for control packets.", + "format": "uint32", + "type": "integer" + }, + "rxPacket": { + "$ref": "BfdPacket", + "description": "The most recent Rx control packet for this BFD session." + }, + "txPacket": { + "$ref": "BfdPacket", + "description": "The most recent Tx control packet for this BFD session." + }, + "uptimeMs": { + "description": "Session uptime in milliseconds. Value will be 0 if session is not up.", + "format": "int64", + "type": "string" } }, "type": "object" }, - "AutoscalingPolicyLoadBalancingUtilization": { - "description": "Configuration parameters of autoscaling based on load balancing.", - "id": "AutoscalingPolicyLoadBalancingUtilization", - "properties": { - "utilizationTarget": { - "description": "Fraction of backend capacity utilization (set in HTTP(S) load balancing\nconfiguration) that the autoscaler maintains. Must be a positive float\nvalue. If not defined, the default is 0.8.", - "format": "double", - "type": "number" - } - }, - "type": "object" - }, - "AutoscalingPolicyScaleInControl": { - "description": "Configuration that allows for slower scale in so that even if Autoscaler\nrecommends an abrupt scale in of a MIG, it will be throttled as specified\nby the parameters below.", - "id": "AutoscalingPolicyScaleInControl", + "BfdStatusPacketCounts": { + "id": "BfdStatusPacketCounts", "properties": { - "maxScaledInReplicas": { - "$ref": "FixedOrPercent", - "description": "Maximum allowed number (or %) of VMs that can be deducted from the peak\nrecommendation during the window autoscaler looks at when computing\nrecommendations. Possibly all these VMs can be deleted at once so user\nservice needs to be prepared to lose that many VMs in one step." + "numRx": { + "description": "Number of packets received since the beginning of the current BFD\nsession.", + "format": "uint32", + "type": "integer" }, - "timeWindowSec": { - "description": "How far back autoscaling looks when computing recommendations to\ninclude directives regarding slower scale in, as described above.", - "format": "int32", + "numRxRejected": { + "description": "Number of packets received that were rejected because of errors since the\nbeginning of the current BFD session.", + "format": "uint32", + "type": "integer" + }, + "numRxSuccessful": { + "description": "Number of packets received that were successfully processed since the\nbeginning of the current BFD session.", + "format": "uint32", + "type": "integer" + }, + "numTx": { + "description": "Number of packets transmitted since the beginning of the current BFD\nsession.", + "format": "uint32", "type": "integer" } }, "type": "object" }, - "AutoscalingPolicyScalingSchedule": { - "description": "Scaling based on user-defined schedule. The message describes a single\nscaling schedule. A scaling schedule changes the minimum number of VM\ninstances an autoscaler can recommend, which can trigger scaling out.", - "id": "AutoscalingPolicyScalingSchedule", + "BgpRoute": { + "id": "BgpRoute", "properties": { - "description": { - "description": "A description of a scaling schedule.", - "type": "string" + "asPaths": { + "description": "Output only. [Output only] AS-PATH for the route", + "items": { + "$ref": "BgpRouteAsPath" + }, + "readOnly": true, + "type": "array" }, - "disabled": { - "description": "A boolean value that specifies whether a scaling schedule can influence\nautoscaler recommendations. If set to true, then a scaling schedule has\nno effect. This field is optional, and its value is false by default.", - "type": "boolean" + "communities": { + "description": "Output only. [Output only] BGP communities in human-readable A:B format.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" }, - "durationSec": { - "description": "The duration of time intervals, in seconds, for which this\nscaling schedule is to run. The minimum allowed value is 300.\nThis field is required.", - "format": "int32", - "type": "integer" + "destination": { + "$ref": "BgpRouteNetworkLayerReachabilityInformation", + "description": "Output only. [Output only] Destination IP range for the route, in human-readable CIDR\nformat", + "readOnly": true }, - "minRequiredReplicas": { - "description": "The minimum number of VM instances that the autoscaler will\nrecommend in time intervals starting according to schedule. This field is\nrequired.", - "format": "int32", + "med": { + "description": "Output only. [Output only] BGP multi-exit discriminator", + "format": "uint32", + "readOnly": true, "type": "integer" }, - "schedule": { - "description": "The start timestamps of time intervals when this scaling\nschedule is to provide a scaling signal. This field uses the extended\ncron format (with an optional year field). The expression can describe a\nsingle timestamp if the optional year is set, in which case the scaling\nschedule runs once. The schedule is interpreted with respect to\ntime_zone. This field is required. Note: These timestamps only describe\nwhen autoscaler starts providing the scaling signal. The VMs\nneed additional time to become serving.", - "type": "string" - }, - "timeZone": { - "description": "The time zone to use when interpreting the schedule.\nThe value of this field must be a time zone name from the tz database:\nhttps://en.wikipedia.org/wiki/Tz_database. This field is assigned a\ndefault value of \"UTC\" if left empty.", + "origin": { + "description": "Output only. [Output only] BGP origin (EGP, IGP or INCOMPLETE)", + "enum": [ + "BGP_ORIGIN_EGP", + "BGP_ORIGIN_IGP", + "BGP_ORIGIN_INCOMPLETE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "readOnly": true, "type": "string" } }, "type": "object" }, - "Backend": { - "description": "Message containing information of one individual backend.", - "id": "Backend", + "BgpRouteAsPath": { + "id": "BgpRouteAsPath", "properties": { - "balancingMode": { - "description": "Specifies how to determine whether the backend of a load balancer can\nhandle additional traffic or is fully loaded. For usage guidelines, see\nConnection balancing mode.\n\nBackends must use compatible balancing modes. For more information, see\nSupported balancing modes and target capacity settings and\nRestrictions and guidance for instance groups.\n\nNote: Currently, if you use the API to configure incompatible balancing\nmodes, the configuration might be accepted even though it has no impact\nand is ignored. Specifically, Backend.maxUtilization is ignored when\nBackend.balancingMode is RATE. In the future, this incompatible combination\nwill be rejected.", - "enum": [ - "CONNECTION", - "CUSTOM_METRICS", - "RATE", - "UTILIZATION" - ], - "enumDescriptions": [ - "Balance based on the number of simultaneous connections.", - "Based on custom defined and reported metrics.", - "Balance based on requests per second (RPS).", - "Balance based on the backend utilization." - ], - "type": "string" - }, - "capacityScaler": { - "description": "A multiplier applied to the backend's target capacity of its balancing\nmode.\nThe default value is 1, which means the group serves up to\n100% of its configured capacity (depending onbalancingMode). A setting of 0 means the group is\ncompletely drained, offering 0% of its available capacity. The valid ranges\nare 0.0 and [0.1,1.0].\nYou cannot configure a setting larger than 0 and smaller than0.1.\nYou cannot configure a setting of 0 when there is only one\nbackend attached to the backend service.\n\nNot available with backends that don't support using abalancingMode. This includes backends such as global\ninternet NEGs, regional serverless NEGs, and PSC NEGs.", - "format": "float", - "type": "number" - }, - "customMetrics": { - "description": "List of custom metrics that are used for CUSTOM_METRICS\nBalancingMode.", + "asns": { + "description": "Output only. [Output only] ASNs in the path segment. When type is SEQUENCE, these are\nordered.", "items": { - "$ref": "BackendCustomMetric" + "format": "int32", + "type": "integer" }, + "readOnly": true, "type": "array" }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "failover": { - "description": "This field designates whether this is a failover backend. More than one\nfailover backend can be configured for a given BackendService.", - "type": "boolean" - }, - "group": { - "description": "The fully-qualified URL of aninstance\ngroup or network endpoint\ngroup (NEG) resource. To determine what types of backends a load\nbalancer supports, see the [Backend services\noverview](https://cloud.google.com/load-balancing/docs/backend-service#backends).\n\nYou must use the *fully-qualified* URL (starting withhttps://www.googleapis.com/) to specify the instance group\nor NEG. Partial URLs are not supported.\n\nIf haPolicy is specified, backends must refer to NEG resources of type\nGCE_VM_IP.", - "type": "string" - }, - "maxConnections": { - "description": "Defines a target maximum number of simultaneous connections. For usage\nguidelines, seeConnection\nbalancing mode and Utilization\nbalancing mode. Not available if the backend'sbalancingMode is RATE.", - "format": "int32", - "type": "integer" - }, - "maxConnectionsPerEndpoint": { - "description": "Defines a target maximum number of simultaneous connections. For usage\nguidelines, seeConnection\nbalancing mode and Utilization\nbalancing mode.\n\nNot available if the backend's balancingMode isRATE.", - "format": "int32", - "type": "integer" - }, - "maxConnectionsPerInstance": { - "description": "Defines a target maximum number of simultaneous connections.\nFor usage guidelines, seeConnection\nbalancing mode and Utilization\nbalancing mode.\n\nNot available if the backend's balancingMode isRATE.", - "format": "int32", - "type": "integer" - }, - "maxRate": { - "description": "Defines a maximum number of HTTP requests per second (RPS). For\nusage guidelines, seeRate\nbalancing mode and Utilization\nbalancing mode.\n\nNot available if the backend's balancingMode isCONNECTION.", - "format": "int32", - "type": "integer" - }, - "maxRatePerEndpoint": { - "description": "Defines a maximum target for requests per second (RPS). For usage\nguidelines, seeRate\nbalancing mode and Utilization\nbalancing mode.\n\nNot available if the backend's balancingMode isCONNECTION.", - "format": "float", - "type": "number" - }, - "maxRatePerInstance": { - "description": "Defines a maximum target for requests per second (RPS). For usage\nguidelines, seeRate\nbalancing mode and Utilization\nbalancing mode.\n\nNot available if the backend's balancingMode isCONNECTION.", - "format": "float", - "type": "number" - }, - "maxUtilization": { - "description": "Optional parameter to define a target capacity for theUTILIZATION balancing mode. The valid range is[0.0, 1.0].\n\nFor usage guidelines, seeUtilization\nbalancing mode.", - "format": "float", - "type": "number" - }, - "orchestrationInfo": { - "$ref": "BackendBackendOrchestrationInfo", - "description": "Information about the resource or system that manages the backend." + "asns32": { + "description": "Output only. [Output only] ASNs in the path segment. This field is for better\nsupport of 32 bit ASNs as the other asns field suffers from overflow when\nthe ASN is larger. When type is SEQUENCE, these are ordered.", + "items": { + "format": "uint32", + "type": "integer" + }, + "readOnly": true, + "type": "array" }, - "preference": { - "description": "This field indicates whether this backend should be fully utilized before\nsending traffic to backends with default preference. The possible values\nare:\n \n - PREFERRED: Backends with this preference level will be\n filled up to their capacity limits first, based on RTT.\n - DEFAULT: If preferred backends don't have enough\n capacity, backends in this layer would be used and traffic would be\n assigned based on the load balancing algorithm you use. This is the\n default", + "type": { + "description": "Output only. [Output only] Type of AS-PATH segment (SEQUENCE or SET)", "enum": [ - "DEFAULT", - "PREFERENCE_UNSPECIFIED", - "PREFERRED" + "AS_PATH_TYPE_SEQUENCE", + "AS_PATH_TYPE_SET" ], "enumDescriptions": [ - "No preference.", - "If preference is unspecified, we set it to the DEFAULT value", - "Traffic will be sent to this backend first." + "", + "" ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BgpRouteNetworkLayerReachabilityInformation": { + "description": "Network Layer Reachability Information (NLRI) for a route.", + "id": "BgpRouteNetworkLayerReachabilityInformation", + "properties": { + "pathId": { + "description": "If the BGP session supports multiple paths (RFC 7911), the path\nidentifier for this route.", + "format": "uint32", + "type": "integer" + }, + "prefix": { + "description": "Human readable CIDR notation for a prefix. E.g. 10.42.0.0/16.", + "type": "string" + } + }, + "type": "object" + }, + "Binding": { + "description": "Associates `members`, or principals, with a `role`.", + "id": "Binding", + "properties": { + "condition": { + "$ref": "Expr", + "description": "The condition that is associated with this binding.\n\nIf the condition evaluates to `true`, then this binding applies to the\ncurrent request.\n\nIf the condition evaluates to `false`, then this binding does not apply to\nthe current request. However, a different role binding might grant the same\nrole to one or more of the principals in this binding.\n\nTo learn which resources support conditions in their IAM policies, see the\n[IAM\ndocumentation](https://cloud.google.com/iam/help/conditions/resource-policies)." + }, + "members": { + "description": "Specifies the principals requesting access for a Google Cloud resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n Does not include identities that come from external identity providers\n (IdPs) through identity federation.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@example.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a Google\n service account. For example,\n `my-other-app@appspot.gserviceaccount.com`.\n\n* `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An\n identifier for a\n [Kubernetes service\n account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts).\n For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n\n\n\n* `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`:\n A single identity in a workforce identity pool.\n\n* `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`:\n All workforce identities in a group.\n\n* `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`:\n All workforce identities with a specific attribute value.\n\n* `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`:\n All identities in a workforce identity pool.\n\n* `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`:\n A single identity in a workload identity pool.\n\n* `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`:\n A workload identity pool group.\n\n* `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`:\n All identities in a workload identity pool with a certain attribute.\n\n* `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`:\n All identities in a workload identity pool.\n\n* `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique\n identifier) representing a user that has been recently deleted. For\n example, `alice@example.com?uid=123456789012345678901`. If the user is\n recovered, this value reverts to `user:{emailid}` and the recovered user\n retains the role in the binding.\n\n* `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus\n unique identifier) representing a service account that has been recently\n deleted. For example,\n `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.\n If the service account is undeleted, this value reverts to\n `serviceAccount:{emailid}` and the undeleted service account retains the\n role in the binding.\n\n* `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique\n identifier) representing a Google group that has been recently\n deleted. For example, `admins@example.com?uid=123456789012345678901`. If\n the group is recovered, this value reverts to `group:{emailid}` and the\n recovered group retains the role in the binding.\n\n* `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`:\n Deleted single identity in a workforce identity pool. For example,\n `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to the list of `members`, or principals.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\n\nFor an overview of the IAM roles and permissions, see the\n[IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For\na list of the available pre-defined roles, see\n[here](https://cloud.google.com/iam/docs/understanding-roles).", "type": "string" } }, "type": "object" }, - "BackendBackendOrchestrationInfo": { - "description": "A message containing information about the resource or system that manages\nthe backend.", - "id": "BackendBackendOrchestrationInfo", + "BulkInsertDiskResource": { + "description": "A transient resource used in compute.disks.bulkInsert and\ncompute.regionDisks.bulkInsert. It is only used to process\nrequests and is not persisted.", + "id": "BulkInsertDiskResource", "properties": { - "resourceUri": { - "description": "The URI of the resource or system that manages the backend.", + "instantSnapshotGroupParameters": { + "$ref": "InstantSnapshotGroupParameters", + "description": "The parameters for the instant snapshot group." + }, + "snapshotGroupParameters": { + "$ref": "SnapshotGroupParameters", + "description": "The parameters for the snapshot group. The usage of snapshot group feature\nis restricted." + }, + "sourceConsistencyGroupPolicy": { + "description": "The URL of the DiskConsistencyGroupPolicy for the group of disks to clone.\nThis may be a full or partial URL, such as:\n \n \n - \n https://www.googleapis.com/compute/v1/projects/project/regions/region/resourcePolicies/resourcePolicy\n \n - \n projects/project/regions/region/resourcePolicies/resourcePolicy\n \n - \n regions/region/resourcePolicies/resourcePolicy", "type": "string" } }, "type": "object" }, - "BackendBucket": { - "description": "Represents a Cloud Storage Bucket resource.\n\nThis Cloud Storage bucket resource is referenced by a URL map of a load\nbalancer. For more information, readBackend Buckets.", - "id": "BackendBucket", + "BulkInsertInstanceResource": { + "description": "A transient resource used in compute.instances.bulkInsert and\ncompute.regionInstances.bulkInsert . This resource is not persisted\nanywhere, it is used only for processing the requests.", + "id": "BulkInsertInstanceResource", "properties": { - "bucketName": { - "description": "Cloud Storage bucket name.", + "count": { + "description": "The maximum number of instances to create.", + "format": "int64", "type": "string" }, - "cdnPolicy": { - "$ref": "BackendBucketCdnPolicy", - "description": "Cloud CDN configuration for this BackendBucket." - }, - "compressionMode": { - "description": "Compress text responses using Brotli or gzip compression, based on\nthe client's Accept-Encoding header.", - "enum": [ - "AUTOMATIC", - "DISABLED" - ], - "enumDescriptions": [ - "Automatically uses the best compression based on the Accept-Encoding\nheader sent by the client.", - "Disables compression. Existing compressed responses cached by\nCloud CDN will not be served to clients." - ], - "type": "string" + "instanceFlexibilityPolicy": { + "$ref": "InstanceFlexibilityPolicy", + "description": "A flexible specification of machine type of instances to create." }, - "creationTimestamp": { - "description": "[Output Only] Creation timestamp inRFC3339\ntext format.", - "type": "string" + "instanceProperties": { + "$ref": "InstanceProperties", + "description": "The instance properties defining the VM instances to be created. Required\nif sourceInstanceTemplate is not provided." }, - "customResponseHeaders": { - "description": "Headers that the Application Load Balancer should add to proxied responses.", - "items": { - "type": "string" - }, - "type": "array" + "locationPolicy": { + "$ref": "LocationPolicy", + "description": "Policy for choosing target zone. For more information, seeCreate VMs in\nbulk." }, - "description": { - "description": "An optional textual description of the resource; provided by the client\nwhen the resource is created.", + "minCount": { + "description": "The minimum number of instances to create. If no min_count is\nspecified then count is used as the default value. Ifmin_count instances cannot be created, then no instances will\nbe created and instances already created will be deleted.", + "format": "int64", "type": "string" }, - "edgeSecurityPolicy": { - "description": "[Output Only] The resource URL for the edge security policy associated with\nthis backend bucket.", + "namePattern": { + "description": "The string pattern used for the names of the VMs.\nEither name_pattern or per_instance_properties\nmust be set. The pattern must contain one continuous sequence of\nplaceholder hash characters (#) with each character corresponding to one\ndigit of the generated instance name. Example: a name_pattern\nof inst-#### generates instance names such asinst-0001 and inst-0002. If existing instances\nin the same project and zone have names that match the name pattern\nthen the generated instance numbers start after the biggest\nexisting number. For example, if there exists an instance with nameinst-0050, then instance names generated using the patterninst-#### begin with inst-0051. The name pattern\nplaceholder #...# can contain up to 18 characters.", "type": "string" }, - "enableCdn": { - "description": "If true, enable Cloud CDN for this BackendBucket.", - "type": "boolean" - }, - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "format": "uint64", - "type": "string" + "perInstanceProperties": { + "additionalProperties": { + "$ref": "BulkInsertInstanceResourcePerInstanceProperties" + }, + "description": "Per-instance properties to be set on individual instances.\nKeys of this map specify requested instance names.\nCan be empty if name_pattern is used.", + "type": "object" }, - "kind": { - "default": "compute#backendBucket", - "description": "Output only. Type of the resource.", - "readOnly": true, + "sourceInstanceTemplate": { + "description": "Specifies the instance template from which to create instances. You may\ncombine sourceInstanceTemplate withinstanceProperties to override specific values from an\nexisting instance template. Bulk API follows the semantics of JSON Merge\nPatch described by RFC\n7396.\n\nIt can be a full or partial URL. For example, the following are\nall valid URLs to an instance template: \n \n \n - https://www.googleapis.com/compute/v1/projects/project/global/instanceTemplates/instanceTemplate\n - projects/project/global/instanceTemplates/instanceTemplate\n - global/instanceTemplates/instanceTemplate\n\n\n\nThis field is optional.", "type": "string" - }, - "loadBalancingScheme": { - "description": "The value can only be INTERNAL_MANAGED for cross-region internal layer 7\nload balancer.\n\nIf loadBalancingScheme is not specified, the backend bucket can be used by\nclassic global external load balancers, or global application external load\nbalancers, or both.", - "enum": [ - "INTERNAL_MANAGED" - ], - "enumDescriptions": [ - "Signifies that this will be used for internal Application Load Balancers." - ], + } + }, + "type": "object" + }, + "BulkInsertInstanceResourcePerInstanceProperties": { + "description": "Per-instance properties to be set on individual instances.\nTo be extended in the future.", + "id": "BulkInsertInstanceResourcePerInstanceProperties", + "properties": { + "hostname": { + "description": "Specifies the hostname of the instance. More details in:\nhttps://cloud.google.com/compute/docs/instances/custom-hostname-vm#naming_convention", "type": "string" }, "name": { - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "params": { - "$ref": "BackendBucketParams", - "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", - "type": "string" - }, - "usedBy": { - "description": "Output only. [Output Only] List of resources referencing that backend bucket.", - "items": { - "$ref": "BackendBucketUsedBy" - }, + "description": "Output only. This field is only temporary. It will be removed. Do not use it.", "readOnly": true, - "type": "array" + "type": "string" } }, "type": "object" }, - "BackendBucketCdnPolicy": { - "description": "Message containing Cloud CDN configuration for a backend bucket.", - "id": "BackendBucketCdnPolicy", + "BulkInsertOperationStatus": { + "id": "BulkInsertOperationStatus", "properties": { - "bypassCacheOnRequestHeaders": { - "description": "Bypass the cache when the specified request headers are matched - e.g.\nPragma or Authorization headers. Up to 5 headers can be specified.\nThe cache is bypassed for all cdnPolicy.cacheMode settings.", - "items": { - "$ref": "BackendBucketCdnPolicyBypassCacheOnRequestHeader" - }, - "type": "array" - }, - "cacheKeyPolicy": { - "$ref": "BackendBucketCdnPolicyCacheKeyPolicy", - "description": "The CacheKeyPolicy for this CdnPolicy." - }, - "cacheMode": { - "description": "Specifies the cache setting for all responses from this backend.\nThe possible values are:USE_ORIGIN_HEADERS Requires the origin to set valid caching\nheaders to cache content. Responses without these headers will not be\ncached at Google's edge, and will require a full trip to the origin on\nevery request, potentially impacting performance and increasing load on\nthe origin server.FORCE_CACHE_ALL Cache all content, ignoring any \"private\",\n\"no-store\" or \"no-cache\" directives in Cache-Control response headers.\nWarning: this may result in Cloud CDN caching private,\nper-user (user identifiable) content.CACHE_ALL_STATIC Automatically cache static content,\nincluding common image formats, media (video and audio), and web assets\n(JavaScript and CSS). Requests and responses that are marked as\nuncacheable, as well as dynamic content (including HTML), will not be\ncached.\n\nIf no value is provided for cdnPolicy.cacheMode, it defaults\nto CACHE_ALL_STATIC.", - "enum": [ - "CACHE_ALL_STATIC", - "FORCE_CACHE_ALL", - "INVALID_CACHE_MODE", - "USE_ORIGIN_HEADERS" - ], - "enumDescriptions": [ - "Automatically cache static content, including common image formats,\nmedia (video and audio), and web assets (JavaScript and CSS).\nRequests and responses that are marked as uncacheable, as well as\ndynamic content (including HTML), will not be cached.", - "Cache all content, ignoring any \"private\", \"no-store\" or \"no-cache\"\ndirectives in Cache-Control response headers.\nWarning: this may result in Cloud CDN caching private,\nper-user (user identifiable) content.", - "", - "Requires the origin to set valid caching headers to cache content.\nResponses without these headers will not be cached at Google's edge,\nand will require a full trip to the origin on every request,\npotentially impacting performance and increasing load on the\norigin server." - ], - "type": "string" - }, - "clientTtl": { - "description": "Specifies a separate client (e.g. browser client) maximum TTL. This is\nused to clamp the max-age (or Expires) value sent to the client. With\nFORCE_CACHE_ALL, the lesser of client_ttl and default_ttl is used for the\nresponse max-age directive, along with a \"public\" directive. For\ncacheable content in CACHE_ALL_STATIC mode, client_ttl clamps the max-age\nfrom the origin (if specified), or else sets the response max-age\ndirective to the lesser of the client_ttl and default_ttl, and also\nensures a \"public\" cache-control directive is present.\nIf a client TTL is not specified, a default value (1 hour) will be used.\nThe maximum allowed value is 31,622,400s (1 year).", + "createdVmCount": { + "description": "[Output Only] Count of VMs successfully created so far.", "format": "int32", "type": "integer" }, - "defaultTtl": { - "description": "Specifies the default TTL for cached content served by this origin for\nresponses that do not have an existing valid TTL (max-age or s-maxage).\nSetting a TTL of \"0\" means \"always revalidate\".\nThe value of defaultTTL cannot be set to a value greater than that of\nmaxTTL, but can be equal.\nWhen the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL\nwill overwrite the TTL set in all responses. The maximum allowed value is\n31,622,400s (1 year), noting that infrequently accessed objects may be\nevicted from the cache before the defined TTL.", + "deletedVmCount": { + "description": "[Output Only] Count of VMs that got deleted during rollback.", "format": "int32", "type": "integer" }, - "maxTtl": { - "description": "Specifies the maximum allowed TTL for cached content served by this\norigin.\nCache directives that attempt to set a max-age or s-maxage higher than\nthis, or an Expires header more than maxTTL seconds in the future will\nbe capped at the value of maxTTL, as if it were the value of an\ns-maxage Cache-Control directive.\nHeaders sent to the client will not be modified.\nSetting a TTL of \"0\" means \"always revalidate\".\nThe maximum allowed value is 31,622,400s (1 year), noting that\ninfrequently accessed objects may be evicted from the cache before\nthe defined TTL.", + "failedToCreateVmCount": { + "description": "[Output Only] Count of VMs that started creating but encountered an\nerror.", "format": "int32", "type": "integer" }, - "negativeCaching": { - "description": "Negative caching allows per-status code TTLs to be set, in order\nto apply fine-grained caching for common errors or redirects.\nThis can reduce the load on your origin and improve end-user\nexperience by reducing response latency.\nWhen the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS,\nnegative caching applies to responses with the specified response code\nthat lack any Cache-Control, Expires, or Pragma: no-cache directives.\nWhen the cache mode is set to FORCE_CACHE_ALL, negative caching applies\nto all responses with the specified response code, and override any\ncaching headers.\nBy default, Cloud CDN will apply the following default TTLs to these\nstatus codes:\nHTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m\nHTTP 404 (Not Found), 410 (Gone),\n451 (Unavailable For Legal Reasons): 120s\nHTTP 405 (Method Not Found), 501 (Not Implemented): 60s.\nThese defaults can be overridden in negative_caching_policy.", - "type": "boolean" - }, - "negativeCachingPolicy": { - "description": "Sets a cache TTL for the specified HTTP status code.\nnegative_caching must be enabled to configure negative_caching_policy.\nOmitting the policy and leaving negative_caching enabled will use\nCloud CDN's default cache TTLs.\nNote that when specifying an explicit negative_caching_policy, you\nshould take care to specify a cache TTL for all response codes\nthat you wish to cache. Cloud CDN will not apply any default\nnegative caching when a policy exists.", - "items": { - "$ref": "BackendBucketCdnPolicyNegativeCachingPolicy" - }, - "type": "array" - }, - "requestCoalescing": { - "description": "If true then Cloud CDN will combine multiple concurrent cache fill\nrequests into a small number of requests to the origin.", - "type": "boolean" + "status": { + "description": "[Output Only] Creation status of BulkInsert operation - information\nif the flow is rolling forward or rolling back.", + "enum": [ + "CREATING", + "DONE", + "ROLLING_BACK", + "STATUS_UNSPECIFIED" + ], + "enumDescriptions": [ + "Rolling forward - creating VMs.", + "Done", + "Rolling back - cleaning up after an error.", + "" + ], + "type": "string" }, - "serveWhileStale": { - "description": "Serve existing content from the cache (if available) when revalidating\ncontent with the origin, or when an error is encountered when refreshing\nthe cache.\nThis setting defines the default \"max-stale\" duration for any cached\nresponses that do not specify a max-stale directive. Stale responses that\nexceed the TTL configured here will not be served. The default limit\n(max-stale) is 86400s (1 day), which will allow stale content to be\nserved up to this limit beyond the max-age (or s-maxage) of a cached\nresponse.\nThe maximum allowed value is 604800 (1 week).\nSet this to zero (0) to disable serve-while-stale.", + "targetVmCount": { + "description": "[Output Only] Count of VMs originally planned to be created.", "format": "int32", "type": "integer" - }, - "signedUrlCacheMaxAgeSec": { - "description": "Maximum number of seconds the response to a signed URL request will be\nconsidered fresh. After this time period, the response will be\nrevalidated before being served. Defaults to 1hr (3600s). When serving\nresponses to signed URL requests, Cloud CDN will internally behave as\nthough all responses from this backend had a \"Cache-Control:\npublic, max-age=[TTL]\" header, regardless of any existing\nCache-Control header. The actual headers served in responses will not be\naltered.", - "format": "int64", - "type": "string" - }, - "signedUrlKeyNames": { - "description": "[Output Only] Names of the keys for signing request URLs.", - "items": { - "type": "string" - }, - "type": "array" } }, "type": "object" }, - "BackendBucketCdnPolicyBypassCacheOnRequestHeader": { - "description": "Bypass the cache when the specified request headers are present,\ne.g. Pragma or Authorization headers. Values are case insensitive.\nThe presence of such a header overrides the cache_mode setting.", - "id": "BackendBucketCdnPolicyBypassCacheOnRequestHeader", + "BulkSetLabelsRequest": { + "id": "BulkSetLabelsRequest", "properties": { - "headerName": { - "description": "The header field name to match on when bypassing cache.\nValues are case-insensitive.", + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource,\nused to detect conflicts. The fingerprint is initially generated by Compute\nEngine and changes after every request to modify or update labels. You may\noptionally provide an up-to-date fingerprint hash in order to update or\nchange labels. Make a get() request to the resource to get the\nlatest fingerprint.", + "format": "byte", "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels to set for this resource.", + "type": "object" } }, "type": "object" }, - "BackendBucketCdnPolicyCacheKeyPolicy": { - "description": "Message containing what to include in the cache key for a request for\nCloud CDN.", - "id": "BackendBucketCdnPolicyCacheKeyPolicy", + "BulkZoneSetLabelsRequest": { + "id": "BulkZoneSetLabelsRequest", "properties": { - "includeHttpHeaders": { - "description": "Allows HTTP request headers (by name) to be used in the cache key.", - "items": { - "type": "string" - }, - "type": "array" - }, - "queryStringWhitelist": { - "description": "Names of query string parameters to include in cache keys. Default\nparameters are always included. '&' and '=' will be percent encoded\nand not treated as delimiters.", + "requests": { "items": { - "type": "string" + "$ref": "BulkSetLabelsRequest" }, "type": "array" } }, "type": "object" }, - "BackendBucketCdnPolicyNegativeCachingPolicy": { - "description": "Specify CDN TTLs for response error codes.", - "id": "BackendBucketCdnPolicyNegativeCachingPolicy", + "BundledLocalSsds": { + "id": "BundledLocalSsds", "properties": { - "code": { - "description": "The HTTP status code to define a TTL against. Only HTTP status codes\n300, 301, 302, 307, 308, 404, 405, 410, 421, 451 and 501 can be\nspecified as values, and you cannot specify a status code more than\nonce.", - "format": "int32", - "type": "integer" + "defaultInterface": { + "description": "The default disk interface if the interface is not specified.", + "type": "string" }, - "ttl": { - "description": "The TTL (in seconds) for which to cache responses with the\ncorresponding status code.\nThe maximum allowed value is 1800s (30 minutes), noting that\ninfrequently accessed objects may be evicted from the cache before the\ndefined TTL.", + "partitionCount": { + "description": "The number of partitions.", "format": "int32", "type": "integer" } }, "type": "object" }, - "BackendBucketList": { - "description": "Contains a list of BackendBucket resources.", - "id": "BackendBucketList", + "CacheInvalidationRule": { + "id": "CacheInvalidationRule", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" - }, - "items": { - "description": "A list of BackendBucket resources.", + "cacheTags": { + "description": "A list of cache tags used to identify cached objects.\n\n \n - Cache tags are specified when the response is first cached, by setting\n the `Cache-Tag` response header at the origin.\n - Multiple cache tags in the same invalidation request are treated as\n Boolean `OR` - for example, `tag1 OR tag2 OR tag3`.\n - If other fields are also specified, these are treated as Boolean `AND`\n with any tags.\n\n\nUp to 10 tags can be specified in a single invalidation request.", "items": { - "$ref": "BackendBucket" + "type": "string" }, "type": "array" }, - "kind": { - "default": "compute#backendBucketList", - "description": "Output only. Type of resource.", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "host": { + "description": "If set, this invalidation rule will only apply to requests with a Host\nheader matching host.", "type": "string" }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, + "path": { "type": "string" - }, - "warning": { - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", - "LARGE_DEPLOYMENT_WARNING", - "LIST_OVERHEAD_QUOTA_EXCEED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "PARTIAL_SUCCESS", - "QUOTA_INFO_UNAVAILABLE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDeprecated": [ - false, - false, - false, - false, - false, - false, - true, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false - ], - "enumDescriptions": [ - "Warning about failed cleanup of transient changes made by a failed\noperation.", - "A link to a deprecated resource was created.", - "When deploying and at least one of the resources has a type marked as\ndeprecated", - "The user created a boot disk that is larger than image size.", - "When deploying and at least one of the resources has a type marked as\nexperimental", - "Warning that is present in an external api call", - "Warning that value of a field has been overridden.\nDeprecated unused field.", - "The operation involved use of an injected kernel, which is deprecated.", - "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", - "When deploying a deployment with a exceedingly large number of resources", - "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", - "A resource depends on a missing type", - "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", - "The route's next hop instance cannot ip forward.", - "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", - "The route's nextHopInstance URL refers to an instance that does not exist.", - "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", - "The route's next hop instance does not have a status of RUNNING.", - "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", - "No results are present on a particular list page.", - "Success is reported, but some results may be missing due to errors", - "Quota information is not available to client requests (e.g:\nregions.list).", - "The user attempted to use a resource that requires a TOS they have not\naccepted.", - "Warning that a resource is in use.", - "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", - "When a resource schema validation is ignored.", - "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", - "When undeclared properties in the schema are present", - "A given scope cannot be reached." - ], - "type": "string" - }, - "data": { - "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", - "items": { - "properties": { - "key": { - "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", - "type": "string" - }, - "value": { - "description": "[Output Only] A warning data value corresponding to the key.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "message": { - "description": "[Output Only] A human-readable description of the warning code.", - "type": "string" - } - }, - "type": "object" } }, "type": "object" }, - "BackendBucketParams": { - "description": "Additional Backend Bucket parameters.", - "id": "BackendBucketParams", + "CacheKeyPolicy": { + "description": "Message containing what to include in the cache key for a request for Cloud\nCDN.", + "id": "CacheKeyPolicy", "properties": { - "resourceManagerTags": { - "additionalProperties": { + "includeHost": { + "description": "If true, requests to different hosts will be cached separately.", + "type": "boolean" + }, + "includeHttpHeaders": { + "description": "Allows HTTP request headers (by name) to be used in the cache key.", + "items": { "type": "string" }, - "description": "Tag keys/values directly bound to this resource.\nTag keys and values have the same definition as resource\nmanager tags. The field is allowed for INSERT\nonly. The keys/values to set on the resource should be specified in\neither ID { : } or Namespaced format\n{ : }.\nFor example the following are valid inputs:\n* {\"tagKeys/333\" : \"tagValues/444\", \"tagKeys/123\" : \"tagValues/456\"}\n* {\"123/environment\" : \"production\", \"345/abc\" : \"xyz\"}\nNote:\n* Invalid combinations of ID & namespaced format is not supported. For\n instance: {\"123/environment\" : \"tagValues/444\"} is invalid.", - "type": "object" + "type": "array" + }, + "includeNamedCookies": { + "description": "Allows HTTP cookies (by name) to be used in the cache key.\nThe name=value pair will be used in the cache key Cloud CDN generates.", + "items": { + "type": "string" + }, + "type": "array" + }, + "includeProtocol": { + "description": "If true, http and https requests will be cached separately.", + "type": "boolean" + }, + "includeQueryString": { + "description": "If true, include query string parameters in the cache key according to\nquery_string_whitelist and query_string_blacklist. If neither is set, the\nentire query string will be included. If false, the query string will be\nexcluded from the cache key entirely.", + "type": "boolean" + }, + "queryStringBlacklist": { + "description": "Names of query string parameters to exclude in cache keys. All other\nparameters will be included. Either specify query_string_whitelist or\nquery_string_blacklist, not both. '&' and '=' will be percent encoded and\nnot treated as delimiters.", + "items": { + "type": "string" + }, + "type": "array" + }, + "queryStringWhitelist": { + "description": "Names of query string parameters to include in cache keys. All other\nparameters will be excluded. Either specify query_string_whitelist or\nquery_string_blacklist, not both. '&' and '=' will be percent encoded and\nnot treated as delimiters.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" }, - "BackendBucketUsedBy": { - "id": "BackendBucketUsedBy", + "CachePolicy": { + "description": "Message containing CachePolicy configuration for URL Map's Route Action.", + "id": "CachePolicy", "properties": { - "reference": { - "description": "Output only. [Output Only] Server-defined URL for UrlMaps referencing that\nBackendBucket.", - "readOnly": true, + "cacheBypassRequestHeaderNames": { + "description": "Bypass the cache when the specified request headers are matched by name,\ne.g. Pragma or Authorization headers. Values are case-insensitive. Up to 5\nheader names can be specified. The cache is bypassed for all `cacheMode`\nvalues.", + "items": { + "type": "string" + }, + "type": "array" + }, + "cacheKeyPolicy": { + "$ref": "CachePolicyCacheKeyPolicy", + "description": "The cache key configuration. If not specified, the default behavior depends\non the backend type: for Backend Services, the complete request URI is\nused; for Backend Buckets, the request URI is used without the protocol or\nhost, and only query parameters known to Cloud Storage are included." + }, + "cacheMode": { + "description": "Specifies the cache setting for all responses from this route. If not\nspecified, Cloud CDN uses `CACHE_ALL_STATIC` mode.", + "enum": [ + "CACHE_ALL_STATIC", + "FORCE_CACHE_ALL", + "USE_ORIGIN_HEADERS" + ], + "enumDescriptions": [ + "Automatically cache static content, including common image formats,\nmedia (video and audio), and web assets (JavaScript and CSS).\nRequests and responses that are marked as uncacheable, as well as\ndynamic content (including HTML), will not be cached.", + "Cache all content, ignoring any \"private\", \"no-store\" or \"no-cache\"\ndirectives in Cache-Control response headers.\nWarning: this may result in Cloud CDN caching private,\nper-user (user identifiable) content.", + "Requires the origin to set valid caching headers to cache content.\nResponses without these headers will not be cached at the edge, and will\nrequire a full trip to the origin on every request, potentially impacting\nperformance and increasing load on the origin server." + ], "type": "string" - } - }, - "type": "object" - }, - "BackendCustomMetric": { - "description": "Custom Metrics are used for CUSTOM_METRICS balancing_mode.", - "id": "BackendCustomMetric", - "properties": { - "dryRun": { - "description": "If true, the metric data is collected and reported to Cloud\nMonitoring, but is not used for load balancing.", + }, + "clientTtl": { + "$ref": "Duration", + "description": "Specifies a separate client (e.g. browser client) maximum TTL for cached\ncontent. This is used to clamp the max-age (or Expires) value sent to the\nclient. With `FORCE_CACHE_ALL`, the lesser of `clientTtl` and `defaultTtl`\nis used for the response max-age directive, along with a \"public\"\ndirective. For cacheable content in `CACHE_ALL_STATIC` mode, `clientTtl`\nclamps the max-age from the origin (if specified), or else sets the\nresponse max-age directive to the lesser of the `clientTtl` and\n`defaultTtl`, and also ensures a \"public\" cache-control directive is\npresent. The maximum allowed value is 31,622,400s (1 year). If not\nspecified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` mode.\nCannot exceed `maxTtl`. Cannot be specified when `cacheMode` is\n`USE_ORIGIN_HEADERS`." + }, + "defaultTtl": { + "$ref": "Duration", + "description": "Specifies the default TTL for cached content for responses that do not have\nan existing valid TTL (max-age or s-maxage). Setting a TTL of \"0\" means\n\"always revalidate\". The value of `defaultTtl` cannot be set to a value\ngreater than that of `maxTtl`. When the `cacheMode` is set to\n`FORCE_CACHE_ALL`, the `defaultTtl` will overwrite the TTL set in all\nresponses. The maximum allowed value is 31,622,400s (1 year). Infrequently\naccessed objects may be evicted from the cache before the defined TTL. If\nnot specified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` and\n`FORCE_CACHE_ALL` modes. Cannot be specified when `cacheMode` is\n`USE_ORIGIN_HEADERS`." + }, + "maxTtl": { + "$ref": "Duration", + "description": "Specifies the maximum allowed TTL for cached content. Cache directives that\nattempt to set a max-age or s-maxage higher than this, or an Expires header\nmore than `maxTtl` seconds in the future will be capped at the value of\n`maxTtl`, as if it were the value of an s-maxage Cache-Control directive.\nHeaders sent to the client will not be modified. Setting a TTL of \"0\" means\n\"always revalidate\". The maximum allowed value is 31,622,400s (1 year).\nInfrequently accessed objects may be evicted from the cache before the\ndefined TTL. If not specified, Cloud CDN uses 86400s (1 day) for\n`CACHE_ALL_STATIC` mode. Can be specified only for `CACHE_ALL_STATIC` cache\nmode." + }, + "negativeCaching": { + "description": "Negative caching allows per-status code TTLs to be set, in order\nto apply fine-grained caching for common errors or redirects.\nThis can reduce the load on your origin and improve end-user\nexperience by reducing response latency.\nWhen the `cacheMode` is set to `CACHE_ALL_STATIC` or\n`USE_ORIGIN_HEADERS`, negative caching applies to responses with\nthe specified response code that lack any Cache-Control, Expires, or\nPragma: no-cache directives. When the `cacheMode` is set to\n`FORCE_CACHE_ALL`, negative caching applies to all responses\nwith the specified response code, and overrides any caching headers. By\ndefault, Cloud CDN applies the following TTLs to these HTTP status codes:\n\n* 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m\n* 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s\n* 405 (Method Not Found), 501 (Not Implemented): 60s\n\nThese defaults can be overridden in `negativeCachingPolicy`.\nIf not specified, Cloud CDN applies negative caching by default.", "type": "boolean" }, - "maxUtilization": { - "description": "Optional parameter to define a target utilization for the Custom Metrics\nbalancing mode. The valid range is [0.0, 1.0].", - "format": "float", - "type": "number" + "negativeCachingPolicy": { + "description": "Sets a cache TTL for the specified HTTP status code.\n`negativeCaching` must be enabled to configure `negativeCachingPolicy`.\nOmitting the policy and leaving `negativeCaching` enabled will use Cloud\nCDN's default cache TTLs. Note that when specifying an explicit\n`negativeCachingPolicy`, you should take care to specify a cache TTL for\nall response codes that you wish to cache. Cloud CDN will not apply any\ndefault negative caching when a policy exists.", + "items": { + "$ref": "CachePolicyNegativeCachingPolicy" + }, + "type": "array" }, - "name": { - "description": "Name of a custom utilization signal. The name must be 1-64 characters\nlong and match the regular expression\n`[a-z]([-_.a-z0-9]*[a-z0-9])?` which means that the\nfirst character must be a lowercase letter, and all following\ncharacters must be a dash, period, underscore, lowercase letter, or\ndigit, except the last character, which cannot be a dash, period, or\nunderscore. For usage guidelines, see Custom Metrics balancing mode. This\nfield can only be used for a global or regional backend service with the\nloadBalancingScheme set to EXTERNAL_MANAGED,INTERNAL_MANAGED INTERNAL_SELF_MANAGED.", - "type": "string" + "requestCoalescing": { + "description": "If true then Cloud CDN will combine multiple concurrent cache fill\nrequests into a small number of requests to the origin. If not specified,\nCloud CDN applies request coalescing by default.", + "type": "boolean" + }, + "serveWhileStale": { + "$ref": "Duration", + "description": "Serve existing content from the cache (if available) when revalidating\ncontent with the origin, or when an error is encountered when refreshing\nthe cache.\nThis setting defines the default \"max-stale\" duration for any cached\nresponses that do not specify a max-stale directive. Stale responses that\nexceed the TTL configured here will not be served. The default limit\n(max-stale) is 86400s (1 day), which will allow stale content to be\nserved up to this limit beyond the max-age (or s-maxage) of a cached\nresponse.\nThe maximum allowed value is 604800 (1 week).\nSet this to zero (0) to disable serve-while-stale." } }, "type": "object" }, - "BackendService": { - "description": "Represents a Backend Service resource.\n\nA backend service defines how Google Cloud load balancers distribute traffic.\nThe backend service configuration contains a set of values, such as the\nprotocol used to connect to backends, various distribution and session\nsettings, health checks, and timeouts. These settings provide fine-grained\ncontrol over how your load balancer behaves. Most of the settings have\ndefault values that allow for easy configuration if you need to get started\nquickly.\n\nBackend services in Google Compute Engine can be either regionally or\nglobally scoped.\n\n* [Global](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices)\n* [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/regionBackendServices)\n\nFor more information, seeBackend\nServices.", - "id": "BackendService", + "CachePolicyCacheKeyPolicy": { + "description": "Message containing what to include in the cache key for a request for Cache\nPolicy defined on Route Action.", + "id": "CachePolicyCacheKeyPolicy", "properties": { - "affinityCookieTtlSec": { - "description": "Lifetime of cookies in seconds. This setting is applicable to Application\nLoad Balancers and Traffic Director and requires\nGENERATED_COOKIE or HTTP_COOKIE session affinity.\n\nIf set to 0, the cookie is non-persistent and lasts only until\nthe end of the browser session (or equivalent). The maximum allowed value\nis two weeks (1,209,600).\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true.", - "format": "int32", - "type": "integer" - }, - "backends": { - "description": "The list of backends that serve this BackendService.", + "excludedQueryParameters": { + "description": "Names of query string parameters to exclude in cache keys. All other\nparameters will be included. Either specify `excludedQueryParameters`\nor `includedQueryParameters`, not both. '&' and '=' will be percent\nencoded and not treated as delimiters.\n\nNote: This field applies to routes that use backend services. Attempting\nto set it on a route that points exclusively to Backend Buckets will\nresult in a configuration error. For routes that point to a Backend\nBucket, use `includedQueryParameters` to define which parameters should\nbe part of the cache key.", "items": { - "$ref": "Backend" + "type": "string" }, "type": "array" }, - "cdnPolicy": { - "$ref": "BackendServiceCdnPolicy", - "description": "Cloud CDN configuration for this BackendService. Only available for\nspecified load balancer types." - }, - "circuitBreakers": { - "$ref": "CircuitBreakers" - }, - "compressionMode": { - "description": "Compress text responses using Brotli or gzip compression, based on\nthe client's Accept-Encoding header.", - "enum": [ - "AUTOMATIC", - "DISABLED" - ], - "enumDescriptions": [ - "Automatically uses the best compression based on the Accept-Encoding\nheader sent by the client.", - "Disables compression. Existing compressed responses cached by\nCloud CDN will not be served to clients." - ], - "type": "string" - }, - "connectionDraining": { - "$ref": "ConnectionDraining", - "description": "connectionDraining cannot be specified with haPolicy." - }, - "connectionTrackingPolicy": { - "$ref": "BackendServiceConnectionTrackingPolicy", - "description": "Connection Tracking configuration for this BackendService. Connection\ntracking policy settings are only available for external passthrough\nNetwork Load Balancers and internal passthrough Network Load Balancers.\n\nconnectionTrackingPolicy cannot be specified with haPolicy." + "includeHost": { + "description": "If true, requests to different hosts will be cached separately.\n\nNote: This setting is only applicable to routes that use a Backend\nService. It does not affect requests served by a Backend Bucket, as the\nhost is never included in a Backend Bucket's cache key. Attempting to set\nit on a route that points exclusively to Backend Buckets will result in a\nconfiguration error.", + "type": "boolean" }, - "consistentHash": { - "$ref": "ConsistentHashLoadBalancerSettings", - "description": "Consistent Hash-based load balancing can be used to provide soft session\naffinity based on HTTP headers, cookies or other properties. This load\nbalancing policy is applicable only for HTTP connections. The affinity to a\nparticular destination host will be lost when one or more hosts are\nadded/removed from the destination service. This field specifies parameters\nthat control consistent hashing. This field is only applicable whenlocalityLbPolicy is set to MAGLEV orRING_HASH.\n\nThis field is applicable to either:\n \n - A regional backend service with the service_protocol set to HTTP,\n HTTPS, HTTP2 or H2C, and load_balancing_scheme set to\n INTERNAL_MANAGED. \n - A global backend service with the\n load_balancing_scheme set to INTERNAL_SELF_MANAGED." + "includeProtocol": { + "description": "If true, http and https requests will be cached separately.\n\nNote: This setting is only applicable to routes that use a Backend\nService. It does not affect requests served by a Backend Bucket, as the\nprotocol is never included in a Backend Bucket's cache key. Attempting to\nset on a route that points exclusively to Backend Buckets will result in\na configuration error.", + "type": "boolean" }, - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" + "includeQueryString": { + "description": "If true, include query string parameters in the cache key according to\n`includedQueryParameters` and `excludedQueryParameters`. If neither\nis set, the entire query string will be included. If false, the query\nstring will be excluded from the cache key entirely.\n\nNote: This field applies to routes that use backend services. Attempting\nto set it on a route that points exclusively to Backend Buckets will\nresult in a configuration error. For routes that point to a Backend\nBucket, use `includedQueryParameters` to define which parameters should\nbe part of the cache key.", + "type": "boolean" }, - "customMetrics": { - "description": "List of custom metrics that are used for theWEIGHTED_ROUND_ROBIN locality_lb_policy.", + "includedCookieNames": { + "description": "Allows HTTP cookies (by name) to be used in the cache key.\nThe name=value pair will be used in the cache key Cloud CDN generates.\n\nNote: This setting is only applicable to routes that use a Backend\nService. It does not affect requests served by a Backend Bucket.\nAttempting to set it on a route that points exclusively to Backend\nBuckets will result in a configuration error. Up to 5 cookie names can be\nspecified.", "items": { - "$ref": "BackendServiceCustomMetric" + "type": "string" }, "type": "array" }, - "customRequestHeaders": { - "description": "Headers that the load balancer adds to proxied requests. See [Creating\ncustom\nheaders](https://cloud.google.com/load-balancing/docs/custom-headers).", + "includedHeaderNames": { + "description": "Allows HTTP request headers (by name) to be used in the cache key.", "items": { "type": "string" }, "type": "array" }, - "customResponseHeaders": { - "description": "Headers that the load balancer adds to proxied responses. See [Creating\ncustom\nheaders](https://cloud.google.com/load-balancing/docs/custom-headers).", + "includedQueryParameters": { + "description": "Names of query string parameters to include in cache keys. All other\nparameters will be excluded. Either specify `includedQueryParameters`\nor `excludedQueryParameters`, not both. '&' and '=' will be percent\nencoded and not treated as delimiters.", "items": { "type": "string" }, "type": "array" + } + }, + "type": "object" + }, + "CachePolicyNegativeCachingPolicy": { + "description": "Specify CDN TTLs for response error codes.", + "id": "CachePolicyNegativeCachingPolicy", + "properties": { + "code": { + "description": "The HTTP status code to define a TTL against. Only HTTP status codes\n300, 301, 302, 307, 308, 404, 405, 410, 421, 451 and 501 can be\nspecified as values, and you cannot specify a status code more than\nonce.", + "format": "int32", + "type": "integer" }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" + "ttl": { + "$ref": "Duration", + "description": "The TTL (in seconds) for which to cache responses with the\ncorresponding status code.\nThe maximum allowed value is 1800s (30 minutes). Infrequently accessed\nobjects may be evicted from the cache before the defined TTL." + } + }, + "type": "object" + }, + "CalendarModeAdviceRequest": { + "description": "A request to recommend the best way to consume the specified resources in the\nfuture.", + "id": "CalendarModeAdviceRequest", + "properties": { + "futureResourcesSpecs": { + "additionalProperties": { + "$ref": "FutureResourcesSpec" + }, + "description": "Specification of resources to create in the future.\nThe key of the map is an arbitrary string specified by the caller.\nValue of the map is a specification of required resources and their\nconstraints. Currently only one value is allowed in this map.", + "type": "object" + } + }, + "type": "object" + }, + "CalendarModeAdviceResponse": { + "description": "A response containing the recommended way of creating the specified resources\nin the future. It contains (will contain) multiple recommendations that can\nbe analyzed by the customer and the best one can be picked.", + "id": "CalendarModeAdviceResponse", + "properties": { + "recommendations": { + "description": "Recommendations where, how and when to create the requested resources\nin order to maximize their obtainability and minimize cost.", + "items": { + "$ref": "CalendarModeRecommendation" + }, + "type": "array" + } + }, + "type": "object" + }, + "CalendarModeRecommendation": { + "description": "A single recommendation to create requested resources. Contains detailed\nrecommendations for every future resources specification specified in\nCalendarModeAdviceRequest.", + "id": "CalendarModeRecommendation", + "properties": { + "recommendationsPerSpec": { + "additionalProperties": { + "$ref": "FutureResourcesRecommendation" + }, + "description": "Recommendations for every future resource specification passed in\nCalendarModeAdviceRequest. Keys of the map correspond to keys\nspecified in the request.", + "type": "object" + } + }, + "type": "object" + }, + "CircuitBreakers": { + "description": "Settings controlling the volume of requests, connections and retries to this\nbackend service.", + "id": "CircuitBreakers", + "properties": { + "maxConnections": { + "description": "The maximum number of connections to the backend service. If not specified,\nthere is no limit.\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true.", + "format": "int32", + "type": "integer" }, - "edgeSecurityPolicy": { - "description": "[Output Only] The resource URL for the edge security policy associated with\nthis backend service.", - "type": "string" + "maxPendingRequests": { + "description": "The maximum number of pending requests allowed to the backend service. If\nnot specified, there is no limit.\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true.", + "format": "int32", + "type": "integer" }, - "enableCDN": { - "description": "If true, enables Cloud CDN for the backend service of a\nglobal external Application Load Balancer.", + "maxRequests": { + "description": "The maximum number of parallel requests that allowed to the backend\nservice. If not specified, there is no limit.", + "format": "int32", + "type": "integer" + }, + "maxRequestsPerConnection": { + "description": "Maximum requests for a single connection to the backend service.\nThis parameter is respected by both the HTTP/1.1 and HTTP/2\nimplementations. If not specified, there is no limit. Setting this\nparameter to 1 will effectively disable keep alive.\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true.", + "format": "int32", + "type": "integer" + }, + "maxRetries": { + "description": "The maximum number of parallel retries allowed to the backend cluster. If\nnot specified, the default is 1.\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Commitment": { + "description": "Represents a regional resource-based commitment resource.\n\nCreating this commitment resource means that you are purchasing a\nresource-based committed use contract, with an explicit start and end time.\nYou can purchase resource-based commitments for both hardware and software\nresources. For more information, read\nResource-based committed use discounts", + "id": "Commitment", + "properties": { + "autoRenew": { + "description": "Specifies whether to automatically renew the commitment at the end of its\ncurrent term. The default value is false. If you set the field\nto true, each time your commitment reaches the end of its\nterm, Compute Engine automatically renews it for another term. You can\nupdate this field anytime before the commitment expires. For example, if\nthe commitment is set to expire at 12 AM UTC-8 on January 3, 2027, you can\nupdate this field until 11:59 PM UTC-8 on January 2, 2027.", "type": "boolean" }, - "externalManagedMigrationState": { - "description": "Specifies the canary migration state. Possible values are PREPARE,\nTEST_BY_PERCENTAGE, and TEST_ALL_TRAFFIC.\n\nTo begin the migration from EXTERNAL to EXTERNAL_MANAGED, the state must be\nchanged to PREPARE. The state must be changed to TEST_ALL_TRAFFIC before\nthe loadBalancingScheme can be changed to EXTERNAL_MANAGED. Optionally, the\nTEST_BY_PERCENTAGE state can be used to migrate traffic by percentage using\nexternalManagedMigrationTestingPercentage.\n\nRolling back a migration requires the states to be set in reverse order. So\nchanging the scheme from EXTERNAL_MANAGED to EXTERNAL requires the state to\nbe set to TEST_ALL_TRAFFIC at the same time. Optionally, the\nTEST_BY_PERCENTAGE state can be used to migrate some traffic back to\nEXTERNAL or PREPARE can be used to migrate all traffic back to EXTERNAL.", + "category": { + "description": "The category of the commitment; specifies whether the commitment is for\nhardware or software resources. Category MACHINE specifies\nthat you are committing to hardware machine resources such asVCPU or MEMORY, listed in resources.\nCategory LICENSE specifies that you are committing to software\nlicenses, listed in licenseResources.\nNote that if you specify MACHINE commitments, then you must\nalso specify a type to indicate the machine series of the\nhardware resource that you are committing to.", "enum": [ - "PREPARE", - "TEST_ALL_TRAFFIC", - "TEST_BY_PERCENTAGE" + "CATEGORY_UNSPECIFIED", + "LICENSE", + "MACHINE" ], "enumDescriptions": [ "", @@ -46903,278 +53861,231 @@ ], "type": "string" }, - "externalManagedMigrationTestingPercentage": { - "description": "Determines the fraction of requests that should be processed by the Global\nexternal Application Load Balancer.\n\nThe value of this field must be in the range [0, 100].\n\nSession affinity options will slightly affect this routing behavior, for\nmore details, see:Session\nAffinity.\n\nThis value can only be set if the loadBalancingScheme in the BackendService\nis set to EXTERNAL (when using the classic Application Load Balancer) and\nthe migration state is TEST_BY_PERCENTAGE.", - "format": "float", - "type": "number" + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" }, - "failoverPolicy": { - "$ref": "BackendServiceFailoverPolicy", - "description": "Requires at least one backend instance group to be defined\nas a backup (failover) backend.\nFor load balancers that have configurable failover:\n[Internal passthrough Network Load\nBalancers](https://cloud.google.com/load-balancing/docs/internal/failover-overview)\nand [external passthrough Network Load\nBalancers](https://cloud.google.com/load-balancing/docs/network/networklb-failover-overview).\n\nfailoverPolicy cannot be specified with haPolicy." + "customEndTimestamp": { + "description": "[Input Only] Optional, specifies the requested commitment end time inRFC3339 text format. Use this option when the desired\ncommitment's end date is later than the start date + term duration.", + "type": "string" }, - "fingerprint": { - "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a BackendService. An up-to-date fingerprint must be provided in\norder to update the BackendService, otherwise the request will\nfail with error 412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve a BackendService.", - "format": "byte", + "description": { + "description": "An optional description of the commitment. You can provide this property\nwhen you create the resource.", "type": "string" }, - "haPolicy": { - "$ref": "BackendServiceHAPolicy", - "description": "Configures self-managed High Availability (HA) for External and Internal\nProtocol Forwarding.\n\nThe backends of this regional backend service must only specify zonal\nnetwork endpoint groups (NEGs) of type GCE_VM_IP.\n\nWhen haPolicy is set for an Internal Passthrough Network Load Balancer, the\nregional backend service must set the network field. All zonal NEGs must\nbelong to the same network. However, individual NEGs can\nbelong to different subnetworks of that network.\n\nWhen haPolicy is specified, the set of attached network endpoints across\nall backends comprise an High Availability domain from which one endpoint\nis selected as the active endpoint (the leader) that receives all\ntraffic.\n\nhaPolicy can be added only at backend service creation time. Once set up,\nit cannot be deleted.\n\nNote that haPolicy is not for load balancing, and therefore cannot be\nspecified with sessionAffinity, connectionTrackingPolicy, and\nfailoverPolicy.\n\nhaPolicy requires customers to be responsible for tracking backend\nendpoint health and electing a leader among the healthy endpoints.\nTherefore, haPolicy cannot be specified with healthChecks.\n\nhaPolicy can only be specified for External Passthrough Network Load\nBalancers and Internal Passthrough Network Load Balancers." + "endTimestamp": { + "description": "Output only. [Output Only] Commitment end time inRFC3339\ntext format.", + "readOnly": true, + "type": "string" }, - "healthChecks": { - "description": "The list of URLs to the healthChecks, httpHealthChecks (legacy), or\nhttpsHealthChecks (legacy) resource for health checking this backend\nservice. Not all backend services support legacy health checks. See\nLoad balancer guide. Currently, at most one health check can be\nspecified for each backend service. Backend services with\ninstance group or zonal NEG backends must have a health check unless\nhaPolicy is specified. Backend services with internet or serverless NEG\nbackends must not have a health check.\n\nhealthChecks[] cannot be specified with haPolicy.", + "existingReservations": { "items": { "type": "string" }, "type": "array" }, - "iap": { - "$ref": "BackendServiceIAP", - "description": "The configurations for Identity-Aware Proxy on this resource.\nNot available for internal passthrough Network Load Balancers and external\npassthrough Network Load Balancers." - }, "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "format": "uint64", - "type": "string" - }, - "ipAddressSelectionPolicy": { - "description": "Specifies a preference for traffic sent from the proxy to the backend (or\nfrom the client to the backend for proxyless gRPC).\nThe possible values are:\n \n - IPV4_ONLY: Only send IPv4 traffic to the backends of the\n backend service (Instance Group, Managed Instance Group, Network Endpoint\n Group), regardless of traffic from the client to the proxy. Only IPv4\n health checks are used to check the health of the backends. This is the\n default setting.\n - PREFER_IPV6: Prioritize the connection to the endpoint's\n IPv6 address over its IPv4 address (provided there is a healthy IPv6\n address).\n - IPV6_ONLY: Only send IPv6 traffic to the backends of the\n backend service (Instance Group, Managed Instance Group, Network Endpoint\n Group), regardless of traffic from the client to the proxy. Only IPv6\n health checks are used to check the health of the backends.\n\n\n\nThis field is applicable to either:\n \n - Advanced global external Application Load Balancer (load balancing\n scheme EXTERNAL_MANAGED), \n - Regional external Application Load\n Balancer, \n - Internal proxy Network Load Balancer (load balancing\n scheme INTERNAL_MANAGED), \n - Regional internal Application Load\n Balancer (load balancing scheme INTERNAL_MANAGED), \n - Traffic\n Director with Envoy proxies and proxyless gRPC (load balancing scheme\n INTERNAL_SELF_MANAGED).", - "enum": [ - "IPV4_ONLY", - "IPV6_ONLY", - "IP_ADDRESS_SELECTION_POLICY_UNSPECIFIED", - "PREFER_IPV6" - ], - "enumDescriptions": [ - "Only send IPv4 traffic to the backends of the Backend Service\n(Instance Group, Managed Instance Group, Network Endpoint Group)\nregardless of traffic from the client to the proxy.\nOnly IPv4 health-checks are used to check the health of the backends.\nThis is the default setting.", - "Only send IPv6 traffic to the backends of the Backend Service\n(Instance Group, Managed Instance Group, Network Endpoint Group)\nregardless of traffic from the client to the proxy. Only IPv6\nhealth-checks are used to check the health of the backends.", - "Unspecified IP address selection policy.", - "Prioritize the connection to the endpoints IPv6 address\nover its IPv4 address (provided there is a healthy IPv6 address)." - ], + "readOnly": true, "type": "string" }, "kind": { - "default": "compute#backendService", - "description": "Output only. [Output Only] Type of resource. Always compute#backendService\nfor backend services.", + "default": "compute#commitment", + "description": "Output only. [Output Only] Type of the resource. Always compute#commitment\nfor commitments.", "readOnly": true, "type": "string" }, - "loadBalancingScheme": { - "description": "Specifies the load balancer type. A backend service\ncreated for one type of load balancer cannot be used with another.\nFor more information, refer toChoosing\na load balancer.", - "enum": [ - "EXTERNAL", - "EXTERNAL_MANAGED", - "INTERNAL", - "INTERNAL_MANAGED", - "INTERNAL_SELF_MANAGED", - "INVALID_LOAD_BALANCING_SCHEME" - ], - "enumDescriptions": [ - "Signifies that this will be used for classic Application Load Balancers,\nglobal external proxy Network Load Balancers,\nor external passthrough Network Load Balancers.", - "Signifies that this will be used for global external Application Load\nBalancers, regional external Application Load Balancers, or regional\nexternal proxy Network Load Balancers.", - "Signifies that this will be used for internal passthrough Network Load\nBalancers.", - "Signifies that this will be used for internal Application Load Balancers.", - "Signifies that this will be used by Traffic Director.", - "" - ], - "type": "string" + "licenseResource": { + "$ref": "LicenseResourceCommitment", + "description": "The license specification required as part of a license commitment." }, - "localityLbPolicies": { - "description": "A list of locality load-balancing policies to be used in order of\npreference. When you use localityLbPolicies, you must set at least one\nvalue for either the localityLbPolicies[].policy or the\nlocalityLbPolicies[].customPolicy field. localityLbPolicies overrides any\nvalue set in the localityLbPolicy field.\n\nFor an example of how to use this field, seeDefine\na list of preferred policies.\n\nCaution: This field and its children are intended for use in a service mesh\nthat includes gRPC clients only. Envoy proxies can't use backend services\nthat have this configuration.", + "mergeSourceCommitments": { + "description": "The list of source commitments that you are merging to create the new\nmerged commitment. For more information, see\nMerging commitments.", "items": { - "$ref": "BackendServiceLocalityLoadBalancingPolicyConfig" + "type": "string" }, "type": "array" }, - "localityLbPolicy": { - "description": "The load balancing algorithm used within the scope of the locality. The\npossible values are:\n \n - ROUND_ROBIN: This is a simple policy in which each healthy\n backend is selected in round robin order. This is the default.\n - LEAST_REQUEST: An O(1) algorithm which\n selects two random healthy hosts and picks the host which has fewer active\n requests.\n - RING_HASH: The ring/modulo hash load balancer implements\n consistent hashing to backends. The algorithm has the property that the\n addition/removal of a host from a set of N hosts only affects 1/N of the\n requests.\n - RANDOM: The load balancer selects a random healthy\n host.\n - ORIGINAL_DESTINATION: Backend host is selected\n based on the client connection metadata, i.e., connections are opened to\n the same address as the destination address of the incoming connection\n before the connection was redirected to the load balancer.\n - MAGLEV: used as a drop in replacement for the ring hash\n load balancer. Maglev is not as stable as ring hash but has faster table\n lookup build times and host selection times. For more information about\n Maglev, see Maglev:\n A Fast and Reliable Software Network Load Balancer.\n - WEIGHTED_ROUND_ROBIN: Per-endpoint Weighted Round Robin\n Load Balancing using weights computed from Backend reported Custom Metrics.\n If set, the Backend Service responses are expected to contain non-standard\n HTTP response header field Endpoint-Load-Metrics. The reported\n metrics to use for computing the weights are specified via thecustomMetrics field.\n \n This field is applicable to either:\n - A regional backend service with the service_protocol set to HTTP,\n HTTPS, HTTP2 or H2C, and load_balancing_scheme set to\n INTERNAL_MANAGED. \n - A global backend service with the\n load_balancing_scheme set to INTERNAL_SELF_MANAGED, INTERNAL_MANAGED, or\n EXTERNAL_MANAGED.\n \n \n If sessionAffinity is not configured—that is, if session\n affinity remains at the default value of NONE—then the\n default value for localityLbPolicy\n is ROUND_ROBIN. If session affinity is set to a value other\n than NONE,\n then the default value for localityLbPolicy isMAGLEV.\n \n Only ROUND_ROBIN and RING_HASH are supported\n when the backend service is referenced by a URL map that is bound to\n target gRPC proxy that has validateForProxyless field set to true.\n \n localityLbPolicy cannot be specified with haPolicy.", + "name": { + "description": "Name of the commitment. You must specify a name when you purchase the\ncommitment. The name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "params": { + "$ref": "CommitmentParams", + "description": "Input only. Additional params passed with the request, but not persisted\nas part of resource payload." + }, + "plan": { + "description": "The minimum time duration that you commit to purchasing resources.\nThe plan that you choose determines the preset term length of the\ncommitment (which is 1 year or 3 years) and affects the discount rate that\nyou receive for your resources. Committing to a longer time duration\ntypically gives you a higher discount rate. The supported values for this\nfield are TWELVE_MONTH (1 year), andTHIRTY_SIX_MONTH (3 years).", "enum": [ - "INVALID_LB_POLICY", - "LEAST_REQUEST", - "MAGLEV", - "ORIGINAL_DESTINATION", - "RANDOM", - "RING_HASH", - "ROUND_ROBIN", - "WEIGHTED_GCP_RENDEZVOUS", - "WEIGHTED_MAGLEV", - "WEIGHTED_ROUND_ROBIN" + "INVALID", + "THIRTY_SIX_MONTH", + "TWELVE_MONTH" ], "enumDescriptions": [ "", - "An O(1) algorithm which selects two random healthy hosts and\npicks the host which has fewer active requests.", - "This algorithm implements consistent hashing to backends. Maglev can be\nused as a drop in replacement for the ring hash load balancer. Maglev is\nnot as stable as ring hash but has faster table lookup build times and\nhost selection times. For more information about Maglev, seeMaglev:\nA Fast and Reliable Software Network Load Balancer.", - "Backend host is selected based on the client connection metadata, i.e.,\nconnections are opened to the same address as the destination address of\nthe incoming connection before the connection was redirected to the load\nbalancer.", - "The load balancer selects a random healthy host.", - "The ring/modulo hash load balancer implements consistent hashing to\nbackends. The algorithm has the property that the addition/removal\nof a host from a set of N hosts only affects 1/N of the requests.", - "This is a simple policy in which each healthy backend is selected\nin round robin order. This is the default.", - "Per-instance weighted Load Balancing via health check reported weights.\nIn internal passthrough network load balancing, it is weighted\nrendezvous hashing.\nThis option is only supported in internal passthrough network load\nbalancing.", - "Per-instance weighted Load Balancing via health check reported weights.\nIf set, the Backend Service must configure a non legacy HTTP-based Health\nCheck, and health check replies are expected to contain non-standard HTTP\nresponse header field X-Load-Balancing-Endpoint-Weight to specify the\nper-instance weights.\nIf set, Load Balancing is weighted based on the\nper-instance weights reported in the last processed health check replies,\nas long as every instance either reported a valid weight or had\nUNAVAILABLE_WEIGHT. Otherwise, Load Balancing remains equal-weight.\nThis option is only supported in Network Load Balancing.", - "Per-endpoint weighted round-robin Load Balancing using weights computed\nfrom Backend reported Custom Metrics. If set, the Backend Service\nresponses are expected to contain non-standard HTTP response header field\nEndpoint-Load-Metrics. The reported metrics\nto use for computing the weights are specified via the\ncustomMetrics fields." + "", + "" ], "type": "string" }, - "logConfig": { - "$ref": "BackendServiceLogConfig", - "description": "This field denotes the logging options for the load balancer traffic served\nby this backend service. If logging is enabled, logs will be exported to\nStackdriver." + "region": { + "description": "Output only. [Output Only] URL of the region where the commitment and committed\nresources are located.", + "readOnly": true, + "type": "string" }, - "maxStreamDuration": { - "$ref": "Duration", - "description": "Specifies the default maximum duration (timeout) for streams to this\nservice. Duration is computed from the beginning of the stream until the\nresponse has been completely processed, including all retries. A stream\nthat does not complete in this duration is closed.\n\nIf not specified, there will be no timeout limit, i.e. the maximum\nduration is infinite.\n\nThis value can be overridden in the PathMatcher configuration of the\nUrlMap that references this backend service.\n\nThis field is only allowed when the loadBalancingScheme of\nthe backend service is INTERNAL_SELF_MANAGED." + "reservations": { + "description": "The list of new reservations that you want to create and attach to this\ncommitment.\n\nYou must attach reservations to your commitment if your commitment\nspecifies any GPUs or Local SSD disks. For more information, see \nAttach reservations to resource-based commitments.\n\nSpecify this property only if you want to create new\nreservations to attach. To attach existing reservations, specify theexistingReservations property instead.", + "items": { + "$ref": "Reservation" + }, + "type": "array" }, - "metadatas": { - "additionalProperties": { - "type": "string" + "resourceStatus": { + "$ref": "CommitmentResourceStatus", + "description": "Output only. [Output Only] Status information for Commitment resource.", + "readOnly": true + }, + "resources": { + "description": "The list of all the hardware resources, with their types and amounts, that\nyou want to commit to. Specify as a separate entry in the list for each\nindividual resource type.", + "items": { + "$ref": "ResourceCommitment" }, - "description": "Deployment metadata associated with the resource to be set by a GKE hub\ncontroller and read by the backend RCTH", - "type": "object" + "type": "array" }, - "name": { - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for the resource.", + "readOnly": true, "type": "string" }, - "network": { - "description": "The URL of the network to which this backend service belongs.\n\nThis field must be set for Internal Passthrough Network Load Balancers when\nthe haPolicy is enabled, and for External Passthrough Network Load\nBalancers when the haPolicy fastIpMove is enabled.\n\nThis field can only be specified when the load balancing scheme is set toINTERNAL, or when the load balancing scheme is set toEXTERNAL and haPolicy fastIpMove is enabled.", + "splitSourceCommitment": { + "description": "The source commitment from which you are transferring resources to create\nthe new split commitment. For more information, see \nSplit commitments.", "type": "string" }, - "networkPassThroughLbTrafficPolicy": { - "$ref": "BackendServiceNetworkPassThroughLbTrafficPolicy", - "description": "Configures traffic steering properties of internal passthrough Network\nLoad Balancers.\n\nnetworkPassThroughLbTrafficPolicy cannot be specified with haPolicy." - }, - "orchestrationInfo": { - "$ref": "BackendServiceOrchestrationInfo", - "description": "Information about the resource or system that manages the backend service." - }, - "outlierDetection": { - "$ref": "OutlierDetection", - "description": "Settings controlling the ejection of unhealthy backend endpoints from the\nload balancing pool of each individual proxy instance that processes the\ntraffic for the given backend service. If not set, this feature is\nconsidered disabled.\n\nResults of the outlier detection algorithm (ejection of endpoints from the\nload balancing pool and returning them back to the pool) are executed\nindependently by each proxy instance of the load balancer. In most cases,\nmore than one proxy instance handles the traffic received by a backend\nservice. Thus, it is possible that an unhealthy endpoint is detected and\nejected by only some of the proxies, and while this happens, other proxies\nmay continue to send requests to the same unhealthy endpoint until they\ndetect and eject the unhealthy endpoint.\n\nApplicable backend endpoints can be:\n \n - VM instances in an Instance Group\n - Endpoints in a Zonal NEG (GCE_VM_IP, GCE_VM_IP_PORT)\n - Endpoints in a Hybrid Connectivity NEG (NON_GCP_PRIVATE_IP_PORT)\n - Serverless NEGs, that resolve to Cloud Run, App Engine, or Cloud\n Functions Services \n - Private Service Connect NEGs, that resolve to\n Google-managed regional API endpoints or managed services published using\n Private Service Connect\n\n\n\nApplicable backend service types can be:\n \n - A global backend service with the loadBalancingScheme set to\n INTERNAL_SELF_MANAGED or EXTERNAL_MANAGED. \n - A regional backend\n service with the serviceProtocol set to HTTP, HTTPS, HTTP2 or H2C, and\n loadBalancingScheme set to INTERNAL_MANAGED or EXTERNAL_MANAGED. Not\n supported for Serverless NEGs.\n\n\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true." - }, - "params": { - "$ref": "BackendServiceParams", - "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." - }, - "port": { - "deprecated": true, - "description": "Deprecated in favor of portName. The TCP port to connect on\nthe backend. The default value is 80.\nFor internal passthrough Network Load Balancers and external passthrough\nNetwork Load Balancers, omit port.", - "format": "int32", - "type": "integer" - }, - "portName": { - "description": "A named port on a backend instance group representing the port for\ncommunication to the backend VMs in that group. The\nnamed port must be [defined on each backend instance\ngroup](https://cloud.google.com/load-balancing/docs/backend-service#named_ports).\nThis parameter has no meaning if the backends are NEGs. For internal\npassthrough Network Load Balancers and external passthrough Network Load\nBalancers, omit port_name.", + "startTimestamp": { + "description": "Output only. [Output Only] Commitment start time inRFC3339\ntext format.", + "readOnly": true, "type": "string" }, - "protocol": { - "description": "The protocol this BackendService uses to communicate\nwith backends.\n\nPossible values are HTTP, HTTPS, HTTP2, H2C, TCP, SSL, UDP or GRPC.\ndepending on the chosen load balancer or Traffic Director configuration.\nRefer to the documentation for the load balancers or for Traffic Director\nfor more information.\n\nMust be set to GRPC when the backend service is referenced by a URL map\nthat is bound to target gRPC proxy.", + "status": { + "description": "Output only. [Output Only] Status of the commitment with regards to eventual expiration\n(each commitment has an end date defined). Status can be one of the\nfollowing values: NOT_YET_ACTIVE, ACTIVE, orEXPIRED.", "enum": [ - "GRPC", - "H2C", - "HTTP", - "HTTP2", - "HTTPS", - "SSL", - "TCP", - "UDP", - "UNSPECIFIED" + "ACTIVE", + "CANCELLED", + "CREATING", + "EXPIRED", + "NOT_YET_ACTIVE" ], "enumDescriptions": [ - "gRPC (available for Traffic Director).", - "HTTP2 over cleartext", "", - "HTTP/2 with SSL.", + "Deprecate CANCELED status. Will use separate status to differentiate\ncancel by mergeCud or manual cancellation.", "", - "TCP proxying with SSL.", - "TCP proxying or TCP pass-through.", - "UDP.", - "If a Backend Service has UNSPECIFIED as its protocol, it can be used with\nany L3/L4 Forwarding Rules." + "", + "" ], - "type": "string" - }, - "region": { - "description": "Output only. [Output Only] URL of the region where the regional backend service\nresides. This field is not applicable to global backend services.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", "readOnly": true, "type": "string" }, - "securityPolicy": { - "description": "[Output Only] The resource URL for the security policy associated with this\nbackend service.", - "type": "string" - }, - "securitySettings": { - "$ref": "SecuritySettings", - "description": "This field specifies the security settings that apply to this backend\nservice. This field is applicable to a global backend service with the\nload_balancing_scheme set to INTERNAL_SELF_MANAGED." - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", - "type": "string" - }, - "serviceBindings": { - "description": "URLs of networkservices.ServiceBinding resources.\n\nCan only be set if load balancing scheme is INTERNAL_SELF_MANAGED.\nIf set, lists of backends and health checks must be both empty.", - "items": { - "type": "string" - }, - "type": "array" - }, - "serviceLbPolicy": { - "description": "URL to networkservices.ServiceLbPolicy resource.\n\nCan only be set if load balancing scheme is EXTERNAL_MANAGED,\nINTERNAL_MANAGED or INTERNAL_SELF_MANAGED and the scope is global.", + "statusMessage": { + "description": "Output only. [Output Only] An optional, human-readable explanation of the status.", + "readOnly": true, "type": "string" }, - "sessionAffinity": { - "description": "Type of session affinity to use. The default is NONE.\n\nOnly NONE and HEADER_FIELD are supported\nwhen the backend service is referenced by a URL map that is bound to\ntarget gRPC proxy that has validateForProxyless field set to true.\n\nFor more details, see:\n[Session\nAffinity](https://cloud.google.com/load-balancing/docs/backend-service#session_affinity).\n\nsessionAffinity cannot be specified with haPolicy.", + "type": { + "description": "The type of commitment; specifies the\nmachine series for which you want to commit to purchasing resources.\nThe choice of machine series affects the discount rate and the eligible\nresource types.\n\n The type must be one of the following:ACCELERATOR_OPTIMIZED, ACCELERATOR_OPTIMIZED_A3,ACCELERATOR_OPTIMIZED_A3_MEGA,COMPUTE_OPTIMIZED, COMPUTE_OPTIMIZED_C2D,\n COMPUTE_OPTIMIZED_C3, COMPUTE_OPTIMIZED_C3D,COMPUTE_OPTIMIZED_H3, GENERAL_PURPOSE,GENERAL_PURPOSE_C4, GENERAL_PURPOSE_E2,GENERAL_PURPOSE_N2, GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED, GRAPHICS_OPTIMIZED_G4,GRAPHICS_OPTIMIZED_G4_VGPU,MEMORY_OPTIMIZED, MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3. For\nexample, type MEMORY_OPTIMIZED specifies a commitment that\napplies only to eligible resources of memory optimized M1 and M2 machine\nseries. Type GENERAL_PURPOSE specifies a commitment that\napplies only to eligible resources of general purpose N1 machine series.", "enum": [ - "CLIENT_IP", - "CLIENT_IP_NO_DESTINATION", - "CLIENT_IP_PORT_PROTO", - "CLIENT_IP_PROTO", - "GENERATED_COOKIE", - "HEADER_FIELD", - "HTTP_COOKIE", - "NONE", - "STRONG_COOKIE_AFFINITY" + "ACCELERATOR_OPTIMIZED", + "ACCELERATOR_OPTIMIZED_A3", + "ACCELERATOR_OPTIMIZED_A3_MEGA", + "ACCELERATOR_OPTIMIZED_A3_ULTRA", + "ACCELERATOR_OPTIMIZED_A4", + "COMPUTE_OPTIMIZED", + "COMPUTE_OPTIMIZED_C2D", + "COMPUTE_OPTIMIZED_C3", + "COMPUTE_OPTIMIZED_C3D", + "COMPUTE_OPTIMIZED_H3", + "COMPUTE_OPTIMIZED_H4D", + "GENERAL_PURPOSE", + "GENERAL_PURPOSE_C4", + "GENERAL_PURPOSE_C4A", + "GENERAL_PURPOSE_C4D", + "GENERAL_PURPOSE_E2", + "GENERAL_PURPOSE_N2", + "GENERAL_PURPOSE_N2D", + "GENERAL_PURPOSE_N4", + "GENERAL_PURPOSE_N4A", + "GENERAL_PURPOSE_N4D", + "GENERAL_PURPOSE_T2D", + "GRAPHICS_OPTIMIZED", + "GRAPHICS_OPTIMIZED_G4", + "GRAPHICS_OPTIMIZED_G4_VGPU", + "MEMORY_OPTIMIZED", + "MEMORY_OPTIMIZED_M3", + "MEMORY_OPTIMIZED_M4", + "MEMORY_OPTIMIZED_M4_6TB", + "MEMORY_OPTIMIZED_X4_1440_24T", + "MEMORY_OPTIMIZED_X4_16TB", + "MEMORY_OPTIMIZED_X4_1920_32T", + "MEMORY_OPTIMIZED_X4_24TB", + "MEMORY_OPTIMIZED_X4_32TB", + "MEMORY_OPTIMIZED_X4_480_6T", + "MEMORY_OPTIMIZED_X4_480_8T", + "MEMORY_OPTIMIZED_X4_960_12T", + "MEMORY_OPTIMIZED_X4_960_16T", + "STORAGE_OPTIMIZED_Z3", + "TYPE_UNSPECIFIED" ], "enumDescriptions": [ - "2-tuple hash on packet's source and destination IP addresses. Connections\nfrom the same source IP address to the same destination IP address will be\nserved by the same backend VM while that VM remains healthy.", - "1-tuple hash only on packet's source IP address. Connections from the\nsame source IP address will be served by the same backend VM while that VM\nremains healthy. This option can only be used for Internal TCP/UDP\nLoad Balancing.", - "5-tuple hash on packet's source and destination IP addresses, IP protocol,\nand source and destination ports. Connections for the same IP protocol\nfrom the same source IP address and port to the same destination IP address\nand port will be served by the same backend VM while that VM remains\nhealthy. This option cannot be used for HTTP(S) load balancing.", - "3-tuple hash on packet's source and destination IP addresses, and IP\nprotocol. Connections for the same IP protocol from the same source IP\naddress to the same destination IP address will be served by the same\nbackend VM while that VM remains healthy. This option cannot be used for\nHTTP(S) load balancing.", - "Hash based on a cookie generated by the L7 loadbalancer.\nOnly valid for HTTP(S) load balancing.", - "The hash is based on a user specified header field.", - "The hash is based on a user provided cookie.", - "No session affinity. Connections from the same client IP may go\nto any instance in the pool.", - "Strong cookie-based affinity. Connections bearing the same cookie will be\nserved by the same backend VM while that VM remains healthy, as long as the\ncookie has not expired." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "CUD bucket for X4 machine with 1440 vCPUs and 24TB of memory.", + "", + "CUD bucket for X4 machine with 1920 vCPUs and 32TB of memory.", + "", + "", + "CUD bucket for X4 machine with 480 vCPUs and 6TB of memory.", + "CUD bucket for X4 machine with 480 vCPUs and 8TB of memory.", + "CUD bucket for X4 machine with 960 vCPUs and 12TB of memory.", + "CUD bucket for X4 machine with 960 vCPUs and 16TB of memory.", + "", + "Note for internal users: When adding a new enum Type for v1, make sure\nto also add it in the comment for the `optional Type type` definition.\nThis ensures that the public documentation displays the new enum Type." ], "type": "string" - }, - "strongSessionAffinityCookie": { - "$ref": "BackendServiceHttpCookie", - "description": "Describes the HTTP cookie used for stateful session affinity. This field is\napplicable and required if the sessionAffinity is set toSTRONG_COOKIE_AFFINITY." - }, - "subsetting": { - "$ref": "Subsetting", - "description": "subsetting cannot be specified with haPolicy." - }, - "timeoutSec": { - "description": "The backend service timeout has a different meaning depending on the\ntype of load balancer. For more information see,\nBackend service settings.\nThe default is 30 seconds.\nThe full range of timeout values allowed goes from 1\nthrough 2,147,483,647 seconds.\n\nThis value can be overridden in the PathMatcher configuration of the\nUrlMap that references this backend service.\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true.\nInstead, use maxStreamDuration.", - "format": "int32", - "type": "integer" - }, - "tlsSettings": { - "$ref": "BackendServiceTlsSettings", - "description": "Configuration for Backend Authenticated TLS and mTLS. May only be specified\nwhen the backend protocol is SSL, HTTPS or HTTP2." - }, - "usedBy": { - "description": "Output only. [Output Only] List of resources referencing given backend service.", - "items": { - "$ref": "BackendServiceUsedBy" - }, - "readOnly": true, - "type": "array" } }, "type": "object" }, - "BackendServiceAggregatedList": { - "description": "Contains a list of BackendServicesScopedList.", - "id": "BackendServiceAggregatedList", + "CommitmentAggregatedList": { + "id": "CommitmentAggregatedList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", @@ -47182,15 +54093,15 @@ }, "items": { "additionalProperties": { - "$ref": "BackendServicesScopedList", - "description": "Name of the scope containing this set of BackendServices." + "$ref": "CommitmentsScopedList", + "description": "[Output Only] Name of the scope containing this set of commitments." }, - "description": "A list of BackendServicesScopedList resources.", + "description": "A list of CommitmentsScopedList resources.", "type": "object" }, "kind": { - "default": "compute#backendServiceAggregatedList", - "description": "Output only. Type of resource.", + "default": "compute#commitmentAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#commitmentAggregatedList for aggregated lists of\ncommitments.", "readOnly": true, "type": "string" }, @@ -47338,327 +54249,409 @@ }, "type": "object" }, - "BackendServiceCdnPolicy": { - "description": "Message containing Cloud CDN configuration for a backend service.", - "id": "BackendServiceCdnPolicy", + "CommitmentList": { + "description": "Contains a list of Commitment resources.", + "id": "CommitmentList", "properties": { - "bypassCacheOnRequestHeaders": { - "description": "Bypass the cache when the specified request headers are matched - e.g.\nPragma or Authorization headers. Up to 5 headers can be specified.\nThe cache is bypassed for all cdnPolicy.cacheMode settings.", - "items": { - "$ref": "BackendServiceCdnPolicyBypassCacheOnRequestHeader" - }, - "type": "array" - }, - "cacheKeyPolicy": { - "$ref": "CacheKeyPolicy", - "description": "The CacheKeyPolicy for this CdnPolicy." - }, - "cacheMode": { - "description": "Specifies the cache setting for all responses from this backend.\nThe possible values are:USE_ORIGIN_HEADERS Requires the origin to set valid caching\nheaders to cache content. Responses without these headers will not be\ncached at Google's edge, and will require a full trip to the origin on\nevery request, potentially impacting performance and increasing load on\nthe origin server.FORCE_CACHE_ALL Cache all content, ignoring any \"private\",\n\"no-store\" or \"no-cache\" directives in Cache-Control response headers.\nWarning: this may result in Cloud CDN caching private,\nper-user (user identifiable) content.CACHE_ALL_STATIC Automatically cache static content,\nincluding common image formats, media (video and audio), and web assets\n(JavaScript and CSS). Requests and responses that are marked as\nuncacheable, as well as dynamic content (including HTML), will not be\ncached.\n\nIf no value is provided for cdnPolicy.cacheMode, it defaults\nto CACHE_ALL_STATIC.", - "enum": [ - "CACHE_ALL_STATIC", - "FORCE_CACHE_ALL", - "INVALID_CACHE_MODE", - "USE_ORIGIN_HEADERS" - ], - "enumDescriptions": [ - "Automatically cache static content, including common image formats,\nmedia (video and audio), and web assets (JavaScript and CSS).\nRequests and responses that are marked as uncacheable, as well as\ndynamic content (including HTML), will not be cached.", - "Cache all content, ignoring any \"private\", \"no-store\" or \"no-cache\"\ndirectives in Cache-Control response headers.\nWarning: this may result in Cloud CDN caching private,\nper-user (user identifiable) content.", - "", - "Requires the origin to set valid caching headers to cache content.\nResponses without these headers will not be cached at Google's edge,\nand will require a full trip to the origin on every request,\npotentially impacting performance and increasing load on the\norigin server." - ], + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, - "clientTtl": { - "description": "Specifies a separate client (e.g. browser client) maximum TTL. This is\nused to clamp the max-age (or Expires) value sent to the client. With\nFORCE_CACHE_ALL, the lesser of client_ttl and default_ttl is used for the\nresponse max-age directive, along with a \"public\" directive. For\ncacheable content in CACHE_ALL_STATIC mode, client_ttl clamps the max-age\nfrom the origin (if specified), or else sets the response max-age\ndirective to the lesser of the client_ttl and default_ttl, and also\nensures a \"public\" cache-control directive is present.\nIf a client TTL is not specified, a default value (1 hour) will be used.\nThe maximum allowed value is 31,622,400s (1 year).", - "format": "int32", - "type": "integer" - }, - "defaultTtl": { - "description": "Specifies the default TTL for cached content served by this origin for\nresponses that do not have an existing valid TTL (max-age or s-maxage).\nSetting a TTL of \"0\" means \"always revalidate\".\nThe value of defaultTTL cannot be set to a value greater than that of\nmaxTTL, but can be equal.\nWhen the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL\nwill overwrite the TTL set in all responses. The maximum allowed value is\n31,622,400s (1 year), noting that infrequently accessed objects may be\nevicted from the cache before the defined TTL.", - "format": "int32", - "type": "integer" - }, - "maxTtl": { - "description": "Specifies the maximum allowed TTL for cached content served by this\norigin.\nCache directives that attempt to set a max-age or s-maxage higher than\nthis, or an Expires header more than maxTTL seconds in the future will\nbe capped at the value of maxTTL, as if it were the value of an\ns-maxage Cache-Control directive.\nHeaders sent to the client will not be modified.\nSetting a TTL of \"0\" means \"always revalidate\".\nThe maximum allowed value is 31,622,400s (1 year), noting that\ninfrequently accessed objects may be evicted from the cache before\nthe defined TTL.", - "format": "int32", - "type": "integer" - }, - "negativeCaching": { - "description": "Negative caching allows per-status code TTLs to be set, in order\nto apply fine-grained caching for common errors or redirects.\nThis can reduce the load on your origin and improve end-user\nexperience by reducing response latency.\nWhen the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS,\nnegative caching applies to responses with the specified response code\nthat lack any Cache-Control, Expires, or Pragma: no-cache directives.\nWhen the cache mode is set to FORCE_CACHE_ALL, negative caching applies\nto all responses with the specified response code, and override any\ncaching headers.\nBy default, Cloud CDN will apply the following default TTLs to these\nstatus codes:\nHTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m\nHTTP 404 (Not Found), 410 (Gone),\n451 (Unavailable For Legal Reasons): 120s\nHTTP 405 (Method Not Found), 501 (Not Implemented): 60s.\nThese defaults can be overridden in negative_caching_policy.", - "type": "boolean" - }, - "negativeCachingPolicy": { - "description": "Sets a cache TTL for the specified HTTP status code.\nnegative_caching must be enabled to configure negative_caching_policy.\nOmitting the policy and leaving negative_caching enabled will use\nCloud CDN's default cache TTLs.\nNote that when specifying an explicit negative_caching_policy, you\nshould take care to specify a cache TTL for all response codes\nthat you wish to cache. Cloud CDN will not apply any default\nnegative caching when a policy exists.", + "items": { + "description": "A list of Commitment resources.", "items": { - "$ref": "BackendServiceCdnPolicyNegativeCachingPolicy" + "$ref": "Commitment" }, "type": "array" }, - "requestCoalescing": { - "description": "If true then Cloud CDN will combine multiple concurrent cache fill\nrequests into a small number of requests to the origin.", - "type": "boolean" - }, - "serveWhileStale": { - "description": "Serve existing content from the cache (if available) when revalidating\ncontent with the origin, or when an error is encountered when refreshing\nthe cache.\nThis setting defines the default \"max-stale\" duration for any cached\nresponses that do not specify a max-stale directive. Stale responses that\nexceed the TTL configured here will not be served. The default limit\n(max-stale) is 86400s (1 day), which will allow stale content to be\nserved up to this limit beyond the max-age (or s-maxage) of a cached\nresponse.\nThe maximum allowed value is 604800 (1 week).\nSet this to zero (0) to disable serve-while-stale.", - "format": "int32", - "type": "integer" - }, - "signedUrlCacheMaxAgeSec": { - "description": "Maximum number of seconds the response to a signed URL request will be\nconsidered fresh. After this time period, the response will be\nrevalidated before being served. Defaults to 1hr (3600s). When serving\nresponses to signed URL requests, Cloud CDN will internally behave as\nthough all responses from this backend had a \"Cache-Control:\npublic, max-age=[TTL]\" header, regardless of any existing\nCache-Control header. The actual headers served in responses will not be\naltered.", - "format": "int64", + "kind": { + "default": "compute#commitmentList", + "description": "Output only. [Output Only] Type of resource. Always compute#commitmentList\nfor lists of commitments.", + "readOnly": true, "type": "string" }, - "signedUrlKeyNames": { - "description": "[Output Only] Names of the keys for signing request URLs.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "BackendServiceCdnPolicyBypassCacheOnRequestHeader": { - "description": "Bypass the cache when the specified request headers are present,\ne.g. Pragma or Authorization headers. Values are case insensitive.\nThe presence of such a header overrides the cache_mode setting.", - "id": "BackendServiceCdnPolicyBypassCacheOnRequestHeader", - "properties": { - "headerName": { - "description": "The header field name to match on when bypassing cache.\nValues are case-insensitive.", + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" - } - }, - "type": "object" - }, - "BackendServiceCdnPolicyNegativeCachingPolicy": { - "description": "Specify CDN TTLs for response error codes.", - "id": "BackendServiceCdnPolicyNegativeCachingPolicy", - "properties": { - "code": { - "description": "The HTTP status code to define a TTL against. Only HTTP status codes\n300, 301, 302, 307, 308, 404, 405, 410, 421, 451 and 501 can be\nspecified as values, and you cannot specify a status code more than\nonce.", - "format": "int32", - "type": "integer" }, - "ttl": { - "description": "The TTL (in seconds) for which to cache responses with the\ncorresponding status code.\nThe maximum allowed value is 1800s (30 minutes), noting that\ninfrequently accessed objects may be evicted from the cache before the\ndefined TTL.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "BackendServiceConnectionTrackingPolicy": { - "description": "Connection Tracking configuration for this BackendService.", - "id": "BackendServiceConnectionTrackingPolicy", - "properties": { - "connectionPersistenceOnUnhealthyBackends": { - "description": "Specifies connection persistence when backends are unhealthy. The default\nvalue is DEFAULT_FOR_PROTOCOL.\n\nIf set to DEFAULT_FOR_PROTOCOL, the existing connections\npersist on unhealthy backends only for connection-oriented protocols\n(TCP and SCTP) and only if the Tracking Mode isPER_CONNECTION (default tracking mode) or the Session\nAffinity is configured for 5-tuple. They do not persist forUDP.\n\nIf set to NEVER_PERSIST, after a backend becomes unhealthy,\nthe existing connections on the unhealthy backend are never persisted on\nthe unhealthy backend. They are always diverted to newly selected healthy\nbackends (unless all backends are unhealthy).\n\nIf set to ALWAYS_PERSIST, existing connections always\npersist on unhealthy backends regardless of protocol and session\naffinity. It is generally not recommended to use this mode overriding the\ndefault.\n\nFor more details, see [Connection Persistence for Network Load\nBalancing](https://cloud.google.com/load-balancing/docs/network/networklb-backend-service#connection-persistence)\nand [Connection Persistence for Internal TCP/UDP Load\nBalancing](https://cloud.google.com/load-balancing/docs/internal#connection-persistence).", - "enum": [ - "ALWAYS_PERSIST", - "DEFAULT_FOR_PROTOCOL", - "NEVER_PERSIST" - ], - "enumDescriptions": [ - "", - "", - "" - ], + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, "type": "string" }, - "enableStrongAffinity": { - "description": "Enable Strong Session Affinity for external passthrough Network Load\nBalancers. This option is not available publicly.", - "type": "boolean" - }, - "idleTimeoutSec": { - "description": "Specifies how long to keep a Connection Tracking entry while there is no\nmatching traffic (in seconds).\n\nFor internal passthrough Network Load Balancers:\n \n - The minimum (default) is 10 minutes and the maximum is 16 hours.\n - It can be set only if Connection Tracking is less than 5-tuple\n (i.e. Session Affinity is CLIENT_IP_NO_DESTINATION,CLIENT_IP or CLIENT_IP_PROTO, and Tracking\n Mode is PER_SESSION).\n\n\n\nFor external passthrough Network Load Balancers the default is 60\nseconds. This option is not available publicly.", - "format": "int32", - "type": "integer" - }, - "trackingMode": { - "description": "Specifies the key used for connection tracking. There are two\noptions:\n \n - PER_CONNECTION: This is the default mode. The Connection\n Tracking is performed as per the Connection Key (default Hash Method) for\n the specific protocol.\n - PER_SESSION: The Connection Tracking is performed as per\n the configured Session Affinity. It matches the configured Session\n Affinity.\n\n\n\nFor more details, see [Tracking Mode for Network Load\nBalancing](https://cloud.google.com/load-balancing/docs/network/networklb-backend-service#tracking-mode)\nand [Tracking Mode for Internal TCP/UDP Load\nBalancing](https://cloud.google.com/load-balancing/docs/internal#tracking-mode).", - "enum": [ - "INVALID_TRACKING_MODE", - "PER_CONNECTION", - "PER_SESSION" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "type": "string" + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } }, "type": "object" }, - "BackendServiceCustomMetric": { - "description": "Custom Metrics are used for WEIGHTED_ROUND_ROBIN\nlocality_lb_policy.", - "id": "BackendServiceCustomMetric", + "CommitmentParams": { + "description": "Additional commitment params.", + "id": "CommitmentParams", "properties": { - "dryRun": { - "description": "If true, the metric data is not used for load balancing.", - "type": "boolean" - }, - "name": { - "description": "Name of a custom utilization signal. The name must be 1-64 characters\nlong and match the regular expression\n`[a-z]([-_.a-z0-9]*[a-z0-9])?` which means that the\nfirst character must be a lowercase letter, and all following\ncharacters must be a dash, period, underscore, lowercase letter, or\ndigit, except the last character, which cannot be a dash, period, or\nunderscore. For usage guidelines, see Custom Metrics balancing mode. This\nfield can only be used for a global or regional backend service with the\nloadBalancingScheme set to EXTERNAL_MANAGED,INTERNAL_MANAGED INTERNAL_SELF_MANAGED.", - "type": "string" + "resourceManagerTags": { + "additionalProperties": { + "type": "string" + }, + "description": "Input only. Resource manager tags to be bound to the commitment. Tag keys and\nvalues have the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "type": "object" } }, "type": "object" }, - "BackendServiceFailoverPolicy": { - "description": "For load balancers that have configurable\nfailover:\n[Internal passthrough Network Load\nBalancers](https://cloud.google.com/load-balancing/docs/internal/failover-overview)\nand [external passthrough\nNetwork Load\nBalancers](https://cloud.google.com/load-balancing/docs/network/networklb-failover-overview).\nOn failover or failback, this field indicates whether connection draining\nwill be honored. Google Cloud has a fixed connection draining timeout of\n10 minutes. A setting of true terminates existing TCP\nconnections to the active pool during failover and failback, immediately\ndraining traffic. A setting of false allows existing TCP\nconnections to persist, even on VMs no longer in the active pool, for up\nto the duration of the connection draining timeout (10 minutes).", - "id": "BackendServiceFailoverPolicy", + "CommitmentResourceStatus": { + "description": "[Output Only] Contains output only fields.", + "id": "CommitmentResourceStatus", "properties": { - "disableConnectionDrainOnFailover": { - "description": "This can be set to true only if the protocol isTCP.\n\nThe default is false.", - "type": "boolean" - }, - "dropTrafficIfUnhealthy": { - "description": "If set to true, connections to the\nload balancer are dropped when all primary and all backup backend VMs are\nunhealthy.If set to false, connections are distributed\namong all primary VMs when all primary and all backup backend VMs are\n unhealthy.\nFor load balancers that have configurable\nfailover:\n[Internal passthrough\nNetwork Load\nBalancers](https://cloud.google.com/load-balancing/docs/internal/failover-overview)\nand [external passthrough\nNetwork Load\nBalancers](https://cloud.google.com/load-balancing/docs/network/networklb-failover-overview).\nThe default is false.", - "type": "boolean" - }, - "failoverRatio": { - "description": "The value of the field must be in the range[0, 1]. If the value is 0, the load balancer performs a\nfailover when the number of healthy primary VMs equals zero.\nFor all other values, the load balancer performs a failover when the\ntotal number of healthy primary VMs is less than this ratio.\nFor load balancers that have configurable\nfailover:\n[Internal TCP/UDP Load\nBalancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview)\nand [external TCP/UDP Load\nBalancing](https://cloud.google.com/load-balancing/docs/network/networklb-failover-overview).", - "format": "float", - "type": "number" + "customTermEligibilityEndTimestamp": { + "description": "Output only. [Output Only] Indicates the end time of customer's eligibility to send\ncustom term requests in RFC3339 text format. Term extension requests that\n(not the end time in the request) after this time will be rejected.", + "readOnly": true, + "type": "string" } }, "type": "object" }, - "BackendServiceGroupHealth": { - "id": "BackendServiceGroupHealth", + "CommitmentsScopedList": { + "id": "CommitmentsScopedList", "properties": { - "annotations": { - "additionalProperties": { - "type": "string" - }, - "description": "Metadata defined as annotations on the network endpoint group.", - "type": "object" - }, - "healthStatus": { - "description": "Health state of the backend instances or endpoints in requested instance or\nnetwork endpoint group, determined based on configured health checks.", + "commitments": { + "description": "[Output Only] The list of commitments contained in this scope.", "items": { - "$ref": "HealthStatus" + "$ref": "Commitment" }, "type": "array" }, - "kind": { - "default": "compute#backendServiceGroupHealth", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#backendServiceGroupHealth for the health of backend\nservices.", - "readOnly": true, - "type": "string" + "warning": { + "description": "[Output Only] Informational warning which replaces the list of commitments\nwhen the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } }, "type": "object" }, - "BackendServiceHAPolicy": { - "id": "BackendServiceHAPolicy", + "CompositeHealthCheck": { + "description": "Represents a composite health check.\n\nA composite health check resource specifies the health source resources and\nthe health destination resource to which the aggregated health result from\nthe health source resources is delivered.", + "id": "CompositeHealthCheck", "properties": { - "fastIPMove": { - "description": "Specifies whether fast IP move is enabled, and if so, the mechanism to\nachieve it.\n\nSupported values are:\n \n - DISABLED: Fast IP Move is disabled. You can only use the\n haPolicy.leader API to update the leader.\n - >GARP_RA: Provides a method to very quickly define a new network\n endpoint as the leader. This method is faster than updating the leader\n using the haPolicy.leader API. Fast IP move works as follows: The VM\n hosting the network endpoint that should become the new leader sends\n either a Gratuitous ARP (GARP) packet (IPv4) or an ICMPv6 Router\n Advertisement(RA) packet (IPv6). Google Cloud immediately but\n temporarily associates the forwarding rule IP address with that VM, and\n both new and in-flight packets are quickly delivered to that VM.\n\n\n\nNote the important properties of the Fast IP Move functionality:\n \n - The GARP/RA-initiated re-routing stays active for approximately 20\n minutes. After triggering fast failover, you must also\n appropriately set the haPolicy.leader.\n - The new leader instance should continue to send GARP/RA packets\n periodically every 10 seconds until at least 10 minutes after updating\n the haPolicy.leader (but stop immediately if it is no longer the leader).\n - After triggering a fast failover, we recommend that you wait at least\n 3 seconds before sending another GARP/RA packet from a different VM\n instance to avoid race conditions.\n - Don't send GARP/RA packets from different VM\n instances at the same time. If multiple instances continue to send\n GARP/RA packets, traffic might be routed to different destinations in an\n alternating order. This condition ceases when a single instance\n issues a GARP/RA packet.\n - The GARP/RA request always takes priority over the leader API.\n Using the haPolicy.leader API to change the leader to a different\n instance will have no effect until the GARP/RA request becomes\n inactive.\n - The GARP/RA packets should follow the GARP/RA\n Packet Specifications..\n - When multiple forwarding rules refer to a regional backend service,\n you need only send a GARP or RA packet for a single forwarding rule\n virtual IP. The virtual IPs for all forwarding rules targeting the same\n backend service will also be moved to the sender of the GARP or RA\n packet. \n\n\n\nThe following are the Fast IP Move limitations (that is, when fastIPMove\nis not DISABLED):\n \n - Multiple forwarding rules cannot use the same IP address if one of\n them refers to a regional backend service with fastIPMove.\n - The regional backend service must set the network field, and all\n NEGs must belong to that network. However, individual\n NEGs can belong to different subnetworks of that network. \n - The maximum number of network endpoints across all backends of a\n backend service with fastIPMove is 32.\n - The maximum number of backend services with fastIPMove that can have\n the same network endpoint attached to one of its backends is 64.\n - The maximum number of backend services with fastIPMove in a VPC in a\n region is 64.\n - The network endpoints that are attached to a backend of a backend\n service with fastIPMove cannot resolve to Gen3+ machines for IPv6.\n - Traffic directed to the leader by a static route next hop will not be\n redirected to a new leader by fast failover. Such traffic will only be\n redirected once an haPolicy.leader update has taken effect. Only traffic\n to the forwarding rule's virtual IP will be redirected to a new leader by\n fast failover.\n\n\nhaPolicy.fastIPMove can be set only at backend service creation time.\nOnce set, it cannot be updated.\n\nBy default, fastIpMove is set to DISABLED.", - "enum": [ - "DISABLED", - "GARP_RA" - ], - "enumDescriptions": [ - "", - "" - ], + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, "type": "string" }, - "leader": { - "$ref": "BackendServiceHAPolicyLeader", - "description": "Selects one of the network endpoints attached to the backend NEGs of\nthis service as the active endpoint (the leader) that receives all\ntraffic.\n\nWhen the leader changes, there is no connection draining to persist\nexisting connections on the old leader.\n\nYou are responsible for selecting a suitable endpoint as the\nleader. For example, preferring a healthy endpoint over unhealthy ones.\nNote that this service does not track backend endpoint health, and\nselects the configured leader unconditionally." - } - }, - "type": "object" - }, - "BackendServiceHAPolicyLeader": { - "id": "BackendServiceHAPolicyLeader", - "properties": { - "backendGroup": { - "description": "A fully-qualified URL (starting with https://www.googleapis.com/)\nof the zonal Network Endpoint Group (NEG) with `GCE_VM_IP` endpoints\nthat the leader is attached to.\n\nThe leader's backendGroup must already be specified as a backend of\nthis backend service. Removing a backend that is designated as the\nleader's backendGroup is not permitted.", + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", "type": "string" }, - "networkEndpoint": { - "$ref": "BackendServiceHAPolicyLeaderNetworkEndpoint", - "description": "The network endpoint within the leader.backendGroup that is\ndesignated as the leader.\n\nThis network endpoint cannot be detached from the NEG specified in\nthe haPolicy.leader.backendGroup until the leader is updated with\nanother network endpoint, or the leader is removed from the haPolicy." - } - }, - "type": "object" - }, - "BackendServiceHAPolicyLeaderNetworkEndpoint": { - "id": "BackendServiceHAPolicyLeaderNetworkEndpoint", - "properties": { - "instance": { - "description": "The name of the VM instance of the leader network endpoint. The\ninstance must already be attached to the NEG specified in the\nhaPolicy.leader.backendGroup.\n\nThe name must be 1-63 characters long, and comply with RFC1035.\nAuthorization requires the following IAM permission on the\nspecified resource instance: compute.instances.use", + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a CompositeHealthCheck. An up-to-date fingerprint\nmust be provided in order to patch the CompositeHealthCheck; Otherwise,\nthe request will fail with error 412 conditionNotMet. To see\nthe latest fingerprint, make a get() request to retrieve the\nCompositeHealthCheck.", + "format": "byte", "type": "string" - } - }, - "type": "object" - }, - "BackendServiceHttpCookie": { - "description": "The HTTP cookie used for stateful session affinity.", - "id": "BackendServiceHttpCookie", - "properties": { - "name": { - "description": "Name of the cookie.", + }, + "healthDestination": { + "description": "URL to the destination resource. Must be set. Must be aForwardingRule. The ForwardingRule must have\nload balancing scheme INTERNAL orINTERNAL_MANAGED and must be regional and in the same region\nas the CompositeHealthCheck (cross-region deployment forINTERNAL_MANAGED is not supported). Can be mutated.", "type": "string" }, - "path": { - "description": "Path to set for the cookie.", + "healthSources": { + "description": "URLs to the HealthSource resources whose results are AND'ed.\nI.e. he aggregated result is is HEALTHY only if all sources\nare HEALTHY. Must have at least 1. Must not have more than 10.\nMust be regional and in the same region as theCompositeHealthCheck. Can be mutated.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "Output only. [Output Only] A unique identifier for this resource type. The server\ngenerates this identifier.", + "format": "uint64", + "readOnly": true, "type": "string" }, - "ttl": { - "$ref": "Duration", - "description": "Lifetime of the cookie." - } - }, - "type": "object" - }, - "BackendServiceIAP": { - "description": "Identity-Aware Proxy", - "id": "BackendServiceIAP", - "properties": { - "enabled": { - "description": "Whether the serving infrastructure will authenticate and authorize all\nincoming requests.", - "type": "boolean" + "kind": { + "default": "compute#compositeHealthCheck", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#compositeHealthCheck for composite health checks.", + "readOnly": true, + "type": "string" }, - "oauth2ClientId": { - "description": "OAuth2 client ID to use for the authentication flow.", + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, - "oauth2ClientSecret": { - "description": "OAuth2 client secret to use for the authentication flow.\nFor security reasons, this value cannot be retrieved via the API.\nInstead, the SHA-256 hash of the value is returned in the\noauth2ClientSecretSha256 field.\n\n@InputOnly", + "region": { + "description": "Output only. [Output Only] URL of the region where the composite health check resides.\nThis field applies only to the regional resource. You must specify this\nfield as part of the HTTP request URL. It is not settable as a field in\nthe request body.", + "readOnly": true, "type": "string" }, - "oauth2ClientSecretSha256": { - "description": "Output only. [Output Only] SHA256 hash value for the field oauth2_client_secret above.", + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for the resource.", + "readOnly": true, + "type": "string" + }, + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL with id for the resource.", "readOnly": true, "type": "string" } }, "type": "object" }, - "BackendServiceList": { - "description": "Contains a list of BackendService resources.", - "id": "BackendServiceList", + "CompositeHealthCheckAggregatedList": { + "description": "Contains a list of CompositeHealthChecksScopedList.", + "id": "CompositeHealthCheckAggregatedList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of BackendService resources.", - "items": { - "$ref": "BackendService" + "additionalProperties": { + "$ref": "CompositeHealthChecksScopedList", + "description": "Name of the scope containing this set of CompositeHealthChecks." }, - "type": "array" + "description": "A list of CompositeHealthChecksScopedList resources.", + "type": "object" }, "kind": { - "default": "compute#backendServiceList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#backendServiceList for lists of backend services.", + "default": "compute#compositeHealthCheckAggregatedList", + "description": "Output only. Type of resource.", "readOnly": true, "type": "string" }, @@ -47671,6 +54664,14 @@ "readOnly": true, "type": "string" }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -47798,24 +54799,57 @@ }, "type": "object" }, - "BackendServiceListUsable": { - "description": "Contains a list of usable BackendService resources.", - "id": "BackendServiceListUsable", + "CompositeHealthCheckHealth": { + "description": "Response message for RegionCompositeHealthChecks.GetHealth", + "id": "CompositeHealthCheckHealth", + "properties": { + "healthSources": { + "description": "Health sources and their corresponding health states.", + "items": { + "$ref": "CompositeHealthChecksGetHealthResponseHealthSourceHealth" + }, + "type": "array" + }, + "healthState": { + "description": "Health state of the CompositeHealthCheck.", + "enum": [ + "HEALTHY", + "UNHEALTHY", + "UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#compositeHealthCheckHealth", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#compositeHealthCheckHealth for the health of\ncomposite health checks.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CompositeHealthCheckList": { + "id": "CompositeHealthCheckList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of BackendService resources.", + "description": "A list of CompositeHealthCheck resources.", "items": { - "$ref": "BackendService" + "$ref": "CompositeHealthCheck" }, "type": "array" }, "kind": { - "default": "compute#usableBackendServiceList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#usableBackendServiceList for lists of usable backend\nservices.", + "default": "compute#compositeHealthCheckList", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#compositeHealthCheck for composite health checks.", "readOnly": true, "type": "string" }, @@ -47824,8 +54858,7 @@ "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, + "description": "[Output Only] Server-defined URL for this resource.", "type": "string" }, "warning": { @@ -47955,234 +54988,380 @@ }, "type": "object" }, - "BackendServiceLocalityLoadBalancingPolicyConfig": { - "description": "Container for either a built-in LB policy supported by gRPC or Envoy or\na custom one implemented by the end user.", - "id": "BackendServiceLocalityLoadBalancingPolicyConfig", - "properties": { - "customPolicy": { - "$ref": "BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy" - }, - "policy": { - "$ref": "BackendServiceLocalityLoadBalancingPolicyConfigPolicy" - } - }, - "type": "object" - }, - "BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy": { - "description": "The configuration for a custom policy implemented by the user and\ndeployed with the client.", - "id": "BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy", - "properties": { - "data": { - "description": "An optional, arbitrary JSON object with configuration data, understood\nby a locally installed custom policy implementation.", - "type": "string" - }, - "name": { - "description": "Identifies the custom policy.\n\nThe value should match the name of a custom implementation registered\non the gRPC clients. It should follow protocol buffer message naming\nconventions and include the full path (for example,\nmyorg.CustomLbPolicy). The maximum length is 256 characters.\n\nDo not specify the same custom policy more than once for a\nbackend. If you do, the configuration is rejected.\n\nFor an example of how to use this field, seeUse\na custom policy.", - "type": "string" - } - }, - "type": "object" - }, - "BackendServiceLocalityLoadBalancingPolicyConfigPolicy": { - "description": "The configuration for a built-in load balancing policy.", - "id": "BackendServiceLocalityLoadBalancingPolicyConfigPolicy", + "CompositeHealthChecksGetHealthResponseHealthSourceHealth": { + "id": "CompositeHealthChecksGetHealthResponseHealthSourceHealth", "properties": { - "name": { - "description": "The name of a locality load-balancing policy. Valid values include\nROUND_ROBIN and, for Java clients, LEAST_REQUEST. For information\nabout these values, see the description of localityLbPolicy.\n\nDo not specify the same policy more than once for a\nbackend. If you do, the configuration is rejected.", + "healthState": { + "description": "Health state of the associated HealthSource resource.", "enum": [ - "INVALID_LB_POLICY", - "LEAST_REQUEST", - "MAGLEV", - "ORIGINAL_DESTINATION", - "RANDOM", - "RING_HASH", - "ROUND_ROBIN", - "WEIGHTED_GCP_RENDEZVOUS", - "WEIGHTED_MAGLEV", - "WEIGHTED_ROUND_ROBIN" + "HEALTHY", + "UNHEALTHY", + "UNKNOWN" ], "enumDescriptions": [ "", - "An O(1) algorithm which selects two random healthy hosts and\npicks the host which has fewer active requests.", - "This algorithm implements consistent hashing to backends. Maglev can be\nused as a drop in replacement for the ring hash load balancer. Maglev is\nnot as stable as ring hash but has faster table lookup build times and\nhost selection times. For more information about Maglev, seeMaglev:\nA Fast and Reliable Software Network Load Balancer.", - "Backend host is selected based on the client connection metadata, i.e.,\nconnections are opened to the same address as the destination address of\nthe incoming connection before the connection was redirected to the load\nbalancer.", - "The load balancer selects a random healthy host.", - "The ring/modulo hash load balancer implements consistent hashing to\nbackends. The algorithm has the property that the addition/removal\nof a host from a set of N hosts only affects 1/N of the requests.", - "This is a simple policy in which each healthy backend is selected\nin round robin order. This is the default.", - "Per-instance weighted Load Balancing via health check reported weights.\nIn internal passthrough network load balancing, it is weighted\nrendezvous hashing.\nThis option is only supported in internal passthrough network load\nbalancing.", - "Per-instance weighted Load Balancing via health check reported weights.\nIf set, the Backend Service must configure a non legacy HTTP-based Health\nCheck, and health check replies are expected to contain non-standard HTTP\nresponse header field X-Load-Balancing-Endpoint-Weight to specify the\nper-instance weights.\nIf set, Load Balancing is weighted based on the\nper-instance weights reported in the last processed health check replies,\nas long as every instance either reported a valid weight or had\nUNAVAILABLE_WEIGHT. Otherwise, Load Balancing remains equal-weight.\nThis option is only supported in Network Load Balancing.", - "Per-endpoint weighted round-robin Load Balancing using weights computed\nfrom Backend reported Custom Metrics. If set, the Backend Service\nresponses are expected to contain non-standard HTTP response header field\nEndpoint-Load-Metrics. The reported metrics\nto use for computing the weights are specified via the\ncustomMetrics fields." + "", + "" ], "type": "string" + }, + "source": { + "description": "Fully qualified URL of the associated HealthSource resource.", + "type": "string" } }, "type": "object" }, - "BackendServiceLogConfig": { - "description": "The available logging options for the load balancer traffic served by this\nbackend service.", - "id": "BackendServiceLogConfig", + "CompositeHealthChecksScopedList": { + "id": "CompositeHealthChecksScopedList", "properties": { - "enable": { - "description": "Denotes whether to enable logging for the load balancer\ntraffic served by this backend service. The default value is false.", - "type": "boolean" - }, - "optionalFields": { - "description": "This field can only be specified if logging is enabled for this backend\nservice and \"logConfig.optionalMode\" was set to CUSTOM. Contains a list\nof optional fields you want to include in the logs. For example:\nserverInstance, serverGkeDetails.cluster,\nserverGkeDetails.pod.podNamespace", + "compositeHealthChecks": { + "description": "A list of CompositeHealthChecks contained in this scope.", "items": { - "type": "string" + "$ref": "CompositeHealthCheck" }, "type": "array" }, - "optionalMode": { - "description": "This field can only be specified if logging is enabled for this backend\nservice. Configures whether all, none or a subset of optional fields\nshould be added to the reported logs. One of [INCLUDE_ALL_OPTIONAL,\nEXCLUDE_ALL_OPTIONAL, CUSTOM]. Default is EXCLUDE_ALL_OPTIONAL.", - "enum": [ - "CUSTOM", - "EXCLUDE_ALL_OPTIONAL", - "INCLUDE_ALL_OPTIONAL" - ], - "enumDescriptions": [ - "A subset of optional fields.", - "None optional fields.", - "All optional fields." - ], - "type": "string" - }, - "sampleRate": { - "description": "This field can only be specified if logging is enabled for this backend\nservice. The value of the field must be in [0, 1]. This configures the\nsampling rate of requests to the load balancer where 1.0 means all logged\nrequests are reported and 0.0 means no logged requests are reported. The\ndefault value is 1.0.", - "format": "float", - "type": "number" - } - }, - "type": "object" - }, - "BackendServiceNetworkPassThroughLbTrafficPolicy": { - "id": "BackendServiceNetworkPassThroughLbTrafficPolicy", - "properties": { - "zonalAffinity": { - "$ref": "BackendServiceNetworkPassThroughLbTrafficPolicyZonalAffinity", - "description": "When configured, new connections are load balanced across healthy backend\nendpoints in the local zone." + "warning": { + "description": "Informational warning which replaces the list of composite health checks\nwhen the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } }, "type": "object" }, - "BackendServiceNetworkPassThroughLbTrafficPolicyZonalAffinity": { - "id": "BackendServiceNetworkPassThroughLbTrafficPolicyZonalAffinity", + "ConfidentialInstanceConfig": { + "description": "A set of Confidential Instance options.", + "id": "ConfidentialInstanceConfig", "properties": { - "spillover": { - "description": "This field indicates whether zonal affinity is enabled or not. The\npossible values are:\n \n - ZONAL_AFFINITY_DISABLED: Default Value. Zonal Affinity\n is disabled. The load balancer distributes new connections to all\n healthy backend endpoints across all zones.\n - ZONAL_AFFINITY_STAY_WITHIN_ZONE: Zonal Affinity is\n enabled. The load balancer distributes new connections to all healthy\n backend endpoints in the local zone only. If there are no healthy\n backend endpoints in the local zone, the load balancer distributes\n new connections to all backend endpoints in the local zone.\n - ZONAL_AFFINITY_SPILL_CROSS_ZONE: Zonal Affinity is\n enabled. The load balancer distributes new connections to all healthy\n backend endpoints in the local zone only. If there aren't enough\n healthy backend endpoints in the local zone, the load balancer\n distributes new connections to all healthy backend endpoints across all\n zones.", + "confidentialInstanceType": { + "description": "Defines the type of technology used by the confidential instance.", "enum": [ - "ZONAL_AFFINITY_DISABLED", - "ZONAL_AFFINITY_SPILL_CROSS_ZONE", - "ZONAL_AFFINITY_STAY_WITHIN_ZONE" + "CONFIDENTIAL_INSTANCE_TYPE_UNSPECIFIED", + "SEV", + "SEV_SNP", + "TDX" ], "enumDescriptions": [ - "", - "", - "" + "No type specified. Do not use this value.", + "AMD Secure Encrypted Virtualization.", + "AMD Secure Encrypted Virtualization - Secure Nested Paging.", + "Intel Trust Domain eXtension." ], "type": "string" }, - "spilloverRatio": { - "description": "The value of the field must be in [0, 1]. When the ratio of the count\nof healthy backend endpoints in a zone to the count of backend\nendpoints in that same zone is equal to or above this threshold, the\nload balancer distributes new connections to all healthy endpoints in\nthe local zone only. When the ratio of the count of healthy backend\nendpoints in a zone to the count of backend endpoints in that same\nzone is below this threshold, the load balancer distributes all new\nconnections to all healthy endpoints across all zones.", - "format": "float", - "type": "number" + "enableConfidentialCompute": { + "description": "Defines whether the instance should have confidential compute enabled.", + "type": "boolean" } }, "type": "object" }, - "BackendServiceOrchestrationInfo": { - "description": "A message containing information about the resource or system that manages\nthe backend service.", - "id": "BackendServiceOrchestrationInfo", + "ConnectionDraining": { + "description": "Message containing connection draining configuration.", + "id": "ConnectionDraining", "properties": { - "resourceUri": { - "description": "The resource URI of the resource or system that manages the backend\nservice.", - "type": "string" + "drainingTimeoutSec": { + "description": "Configures a duration timeout for existing requests on a removed backend\ninstance. For supported load balancers and protocols, as described inEnabling\nconnection draining.", + "format": "int32", + "type": "integer" } }, "type": "object" }, - "BackendServiceParams": { - "description": "Additional Backend Service parameters.", - "id": "BackendServiceParams", + "ConsistentHashLoadBalancerSettings": { + "description": "This message defines settings for a consistent hash style load balancer.", + "id": "ConsistentHashLoadBalancerSettings", "properties": { - "resourceManagerTags": { - "additionalProperties": { - "type": "string" - }, - "description": "Tag keys/values directly bound to this resource.\nTag keys and values have the same definition as resource\nmanager tags. The field is allowed for INSERT\nonly. The keys/values to set on the resource should be specified in\neither ID { : } or Namespaced format\n{ : }.\nFor example the following are valid inputs:\n* {\"tagKeys/333\" : \"tagValues/444\", \"tagKeys/123\" : \"tagValues/456\"}\n* {\"123/environment\" : \"production\", \"345/abc\" : \"xyz\"}\nNote:\n* Invalid combinations of ID & namespaced format is not supported. For\n instance: {\"123/environment\" : \"tagValues/444\"} is invalid.", - "type": "object" + "httpCookie": { + "$ref": "ConsistentHashLoadBalancerSettingsHttpCookie", + "description": "Hash is based on HTTP Cookie. This field describes a HTTP cookie that will\nbe used as the hash key for the consistent hash load balancer. If the\ncookie is not present, it will be generated. This field is applicable if\nthe sessionAffinity is set to HTTP_COOKIE.\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true." + }, + "httpHeaderName": { + "description": "The hash based on the value of the specified header field. This field is\napplicable if the sessionAffinity is set toHEADER_FIELD.", + "type": "string" + }, + "minimumRingSize": { + "description": "The minimum number of virtual nodes to use for the hash ring. Defaults to\n1024. Larger ring sizes result in more granular load distributions. If the\nnumber of hosts in the load balancing pool is larger than the ring size,\neach host will be assigned a single virtual node.", + "format": "int64", + "type": "string" } }, "type": "object" }, - "BackendServiceReference": { - "id": "BackendServiceReference", + "ConsistentHashLoadBalancerSettingsHttpCookie": { + "description": "The information about the HTTP Cookie on which the hash function is based\nfor load balancing policies that use a consistent hash.", + "id": "ConsistentHashLoadBalancerSettingsHttpCookie", "properties": { - "backendService": { + "name": { + "description": "Name of the cookie.", + "type": "string" + }, + "path": { + "description": "Path to set for the cookie.", "type": "string" + }, + "ttl": { + "$ref": "Duration", + "description": "Lifetime of the cookie." } }, "type": "object" }, - "BackendServiceTlsSettings": { - "id": "BackendServiceTlsSettings", + "CorsPolicy": { + "description": "The specification for allowing client-side cross-origin requests. For more\ninformation about the W3C recommendation for cross-origin resource sharing\n(CORS), see Fetch API Living\nStandard.", + "id": "CorsPolicy", "properties": { - "authenticationConfig": { - "description": "Reference to the BackendAuthenticationConfig resource from the\nnetworksecurity.googleapis.com namespace. Can be used in authenticating\nTLS connections to the backend, as specified by the authenticationMode\nfield. Can only be specified if authenticationMode is not NONE.", - "type": "string" + "allowCredentials": { + "description": "In response to a preflight request, setting this to true\nindicates that\nthe actual request can include user credentials. This field translates to\nthe Access-Control-Allow-Credentials header.\n\nDefault is false.", + "type": "boolean" }, - "sni": { - "description": "Server Name Indication - see RFC3546 section 3.1. If set, the load\nbalancer sends this string as the SNI hostname in the TLS connection to\nthe backend, and requires that this string match a Subject Alternative\nName (SAN) in the backend's server certificate. With a Regional Internet\nNEG backend, if the SNI is specified here, the load balancer uses it\nregardless of whether the Regional Internet NEG is specified with FQDN or\nIP address and port. When both sni and subjectAltNames[] are specified,\nthe load balancer matches the backend certificate's SAN only to\nsubjectAltNames[].", - "type": "string" + "allowHeaders": { + "description": "Specifies the content for the Access-Control-Allow-Headers\nheader.", + "items": { + "type": "string" + }, + "type": "array" }, - "subjectAltNames": { - "description": "A list of Subject Alternative Names (SANs) that the Load Balancer\nverifies during a TLS handshake with the backend. When the server\npresents its X.509 certificate to the Load Balancer, the Load Balancer\ninspects the certificate's SAN field, and requires that at least one SAN\nmatch one of the subjectAltNames in the list. This field is limited to 5\nentries. When both sni and subjectAltNames[] are specified, the load\nbalancer matches the backend certificate's SAN only to subjectAltNames[].", + "allowMethods": { + "description": "Specifies the content for the Access-Control-Allow-Methods\nheader.", "items": { - "$ref": "BackendServiceTlsSettingsSubjectAltName" + "type": "string" + }, + "type": "array" + }, + "allowOriginRegexes": { + "description": "Specifies a regular expression that matches allowed origins. For\nmore information, see regular expression syntax. \n\nAn origin is allowed if it matches either an item inallowOrigins or an item inallowOriginRegexes.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED.", + "items": { + "type": "string" + }, + "type": "array" + }, + "allowOrigins": { + "description": "Specifies the list of origins that is allowed to do CORS requests.\n\nAn origin is allowed if it matches either an item inallowOrigins or an item inallowOriginRegexes.", + "items": { + "type": "string" + }, + "type": "array" + }, + "disabled": { + "description": "If true, disables the CORS policy.\nThe default value is false, which indicates that the CORS\npolicy is in effect.", + "type": "boolean" + }, + "exposeHeaders": { + "description": "Specifies the content for the Access-Control-Expose-Headers\nheader.", + "items": { + "type": "string" }, "type": "array" + }, + "maxAge": { + "description": "Specifies how long results of a preflight request can be cached in\nseconds. This field translates to the Access-Control-Max-Age\nheader.", + "format": "int32", + "type": "integer" } }, "type": "object" }, - "BackendServiceTlsSettingsSubjectAltName": { - "description": "A Subject Alternative Name that the load balancer matches against the SAN\nfield in the TLS certificate provided by the backend, specified as either\na DNS name or a URI, in accordance with RFC 5280 4.2.1.6", - "id": "BackendServiceTlsSettingsSubjectAltName", + "CrossSiteNetwork": { + "description": "A resource that represents a cross-site network.\n\nYou can use cross-site networks to connect your on-premises networks to\neach other through Interconnect connections.", + "id": "CrossSiteNetwork", "properties": { - "dnsName": { - "description": "The SAN specified as a DNS Name.", + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, "type": "string" }, - "uniformResourceIdentifier": { - "description": "The SAN specified as a URI.", + "description": { + "description": "An optional description of the cross-site network.", "type": "string" - } - }, - "type": "object" - }, - "BackendServiceUsedBy": { - "id": "BackendServiceUsedBy", - "properties": { - "reference": { - "description": "Output only. [Output Only] Server-defined URL for resources referencing given\nBackendService like UrlMaps, TargetTcpProxies, TargetSslProxies\nand ForwardingRule.", + }, + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource type. The server\ngenerates this identifier.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "compute#crossSiteNetwork", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#crossSiteNetwork for cross-site networks.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for the resource.", "readOnly": true, "type": "string" } }, "type": "object" }, - "BackendServicesScopedList": { - "id": "BackendServicesScopedList", + "CrossSiteNetworkList": { + "description": "Response to the list request that contains a list of cross-site networks.", + "id": "CrossSiteNetworkList", "properties": { - "backendServices": { - "description": "A list of BackendServices contained in this scope.", + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of CrossSiteNetwork resources.", "items": { - "$ref": "BackendService" + "$ref": "CrossSiteNetwork" + }, + "type": "array" + }, + "kind": { + "default": "compute#crossSiteNetwork", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#crossSiteNetwork for cross-site networks.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" }, + "readOnly": true, "type": "array" }, "warning": { - "description": "Informational warning which replaces the list of\nbackend services when the list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -48308,912 +55487,973 @@ }, "type": "object" }, - "BfdPacket": { - "id": "BfdPacket", + "CustomErrorResponsePolicy": { + "description": "Specifies the custom error response policy that must be applied when the\nbackend service or backend bucket responds with an error.", + "id": "CustomErrorResponsePolicy", "properties": { - "authenticationPresent": { - "description": "The Authentication Present bit of the BFD packet. This is specified in\nsection 4.1 ofRFC5880", - "type": "boolean" + "errorResponseRules": { + "description": "Specifies rules for returning error responses.\n\nIn a given policy, if you specify rules for both a range of error codes\nas well as rules for specific error codes then rules with specific error\ncodes have a higher priority. For example, assume that you configure a rule\nfor 401 (Un-authorized) code, and another for all 4 series\nerror codes (4XX). If the backend service returns a401, then the rule for 401 will be applied.\nHowever if the backend service returns a 403, the rule for4xx takes effect.", + "items": { + "$ref": "CustomErrorResponsePolicyCustomErrorResponseRule" + }, + "type": "array" }, - "controlPlaneIndependent": { - "description": "The Control Plane Independent bit of the BFD packet. This is specified in\nsection 4.1 ofRFC5880", - "type": "boolean" + "errorService": { + "description": "The full or partial URL to the BackendBucket resource that\ncontains the custom error content. Examples are:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket\n - compute/v1/projects/project/global/backendBuckets/myBackendBucket\n - global/backendBuckets/myBackendBucket\n\nIf errorService is not specified at lower levels likepathMatcher, pathRule and routeRule,\nan errorService specified at a higher level in theUrlMap will be used. IfUrlMap.defaultCustomErrorResponsePolicy contains one or moreerrorResponseRules[], it must specifyerrorService. \n\nIf load balancer cannot reach\nthe backendBucket, a simple Not Found Error will\nbe returned, with the original response code (oroverrideResponseCode if configured).\n\nerrorService is not supported for internal or regionalHTTP/HTTPS load balancers.", + "type": "string" + } + }, + "type": "object" + }, + "CustomErrorResponsePolicyCustomErrorResponseRule": { + "description": "Specifies the mapping between the response code that will be returned along\nwith the custom error content and the response code returned by the backend\nservice.", + "id": "CustomErrorResponsePolicyCustomErrorResponseRule", + "properties": { + "matchResponseCodes": { + "description": "Valid values include:\n \n \n - A number between 400 and 599: For example\n 401 or 503, in which case the load balancer\n applies the policy if the error code exactly matches this value.\n - 5xx: Load Balancer will apply the policy if the\n backend service responds with any response code in the range of\n 500 to 599. \n - 4xx: Load\n Balancer will apply the policy if the backend service responds with any\n response code in the range of 400 to\n 499.\n\nValues must be unique within matchResponseCodes and across allerrorResponseRules ofCustomErrorResponsePolicy.", + "items": { + "type": "string" + }, + "type": "array" }, - "demand": { - "description": "The demand bit of the BFD packet. This is specified in section 4.1 ofRFC5880", - "type": "boolean" + "overrideResponseCode": { + "description": "The HTTP status code returned with the response containing the custom\nerror content. If overrideResponseCode is not supplied, the\nsame response code returned by the original backend bucket or backend\nservice is returned to the client.", + "format": "int32", + "type": "integer" }, - "diagnostic": { - "description": "The diagnostic code specifies the local system's reason for the last change\nin session state. This allows remote systems to determine the reason that\nthe previous session failed, for example. These diagnostic codes are\nspecified in section 4.1 ofRFC5880", - "enum": [ - "ADMINISTRATIVELY_DOWN", - "CONCATENATED_PATH_DOWN", - "CONTROL_DETECTION_TIME_EXPIRED", - "DIAGNOSTIC_UNSPECIFIED", - "ECHO_FUNCTION_FAILED", - "FORWARDING_PLANE_RESET", - "NEIGHBOR_SIGNALED_SESSION_DOWN", - "NO_DIAGNOSTIC", - "PATH_DOWN", - "REVERSE_CONCATENATED_PATH_DOWN" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], + "path": { + "description": "The full path to a file within backendBucket . For example:/errors/defaultError.html \n\npath must start\nwith a leading slash. path cannot have trailing slashes.\n\nIf the file is not available in backendBucket or the\nload balancer cannot reach the BackendBucket, a simpleNot Found Error is returned to the client. \n\nThe value must\nbe from 1 to 1024 characters", + "type": "string" + } + }, + "type": "object" + }, + "CustomerEncryptionKey": { + "id": "CustomerEncryptionKey", + "properties": { + "kmsKeyName": { + "description": "The name of the encryption key that is stored in Google Cloud KMS.\nFor example:\n\n\"kmsKeyName\": \"projects/kms_project_id/locations/region/keyRings/\nkey_region/cryptoKeys/key\n\nThe fully-qualifed key name may be returned for resource GET requests. For \nexample: \n\n\"kmsKeyName\": \"projects/kms_project_id/locations/region/keyRings/\nkey_region/cryptoKeys/key\n/cryptoKeyVersions/1", "type": "string" }, - "final": { - "description": "The Final bit of the BFD packet. This is specified in section 4.1 ofRFC5880", - "type": "boolean" + "kmsKeyServiceAccount": { + "description": "The service account being used for the encryption request for the given KMS\nkey. If absent, the Compute Engine default service account is used.\nFor example:\n\n\"kmsKeyServiceAccount\": \"name@project_id.iam.gserviceaccount.com/", + "type": "string" }, - "length": { - "description": "The length of the BFD Control packet in bytes. This is specified in section\n4.1 ofRFC5880", - "format": "uint32", - "type": "integer" + "rawKey": { + "description": "Specifies a 256-bit customer-supplied\nencryption key, encoded in RFC\n4648 base64 to either encrypt or decrypt this resource. You can\nprovide either the rawKey or thersaEncryptedKey.\nFor example:\n\n\"rawKey\":\n\"SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0=\"", + "type": "string" }, - "minEchoRxIntervalMs": { - "description": "The Required Min Echo RX Interval value in the BFD packet. This is\nspecified in section 4.1 ofRFC5880", - "format": "uint32", - "type": "integer" + "rsaEncryptedKey": { + "description": "Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit\ncustomer-supplied encryption key to either encrypt or decrypt this\nresource. You can provide either the rawKey or thersaEncryptedKey.\nFor example:\n\n\"rsaEncryptedKey\":\n\"ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH\nz0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD\nD6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe==\"\n\nThe key must meet the following requirements before you can provide it to \nCompute Engine: \n \n 1. The key is wrapped using a RSA public key certificate provided by \n Google. \n 2. After being wrapped, the key must be encoded in RFC 4648 base64 \n encoding. \n\nGets the RSA public key certificate provided by Google at: \n\n\nhttps://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem", + "type": "string" }, - "minRxIntervalMs": { - "description": "The Required Min RX Interval value in the BFD packet. This is specified in\nsection 4.1 ofRFC5880", - "format": "uint32", + "sha256": { + "description": "[Output only] TheRFC\n4648 base64 encoded SHA-256 hash of the customer-supplied\nencryption key that protects this resource.", + "type": "string" + } + }, + "type": "object" + }, + "CustomerEncryptionKeyProtectedDisk": { + "id": "CustomerEncryptionKeyProtectedDisk", + "properties": { + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Decrypts data associated with the disk with acustomer-supplied\nencryption key." + }, + "source": { + "description": "Specifies a valid partial or full URL to an existing Persistent Disk\nresource. This field is only applicable for persistent disks.\nFor example:\n\n\"source\": \"/compute/v1/projects/project_id/zones/zone/disks/\ndisk_name", + "type": "string" + } + }, + "type": "object" + }, + "Date": { + "description": "Represents a whole or partial calendar date, such as a birthday. The time of\nday and time zone are either specified elsewhere or are insignificant. The\ndate is relative to the Gregorian Calendar. This can represent one of the\nfollowing:\n\n* A full date, with non-zero year, month, and day values.\n* A month and day, with a zero year (for example, an anniversary).\n* A year on its own, with a zero month and a zero day.\n* A year and month, with a zero day (for example, a credit card expiration\n date).\n\nRelated types:\n\n* google.type.TimeOfDay\n* google.type.DateTime\n* google.protobuf.Timestamp", + "id": "Date", + "properties": { + "day": { + "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0\nto specify a year by itself or a year and month where the day isn't\nsignificant.", + "format": "int32", "type": "integer" }, - "minTxIntervalMs": { - "description": "The Desired Min TX Interval value in the BFD packet. This is specified in\nsection 4.1 ofRFC5880", - "format": "uint32", + "month": { + "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a\nmonth and day.", + "format": "int32", "type": "integer" }, - "multiplier": { - "description": "The detection time multiplier of the BFD packet. This is specified in\nsection 4.1 ofRFC5880", - "format": "uint32", + "year": { + "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without\na year.", + "format": "int32", "type": "integer" + } + }, + "type": "object" + }, + "DeprecationStatus": { + "description": "Deprecation status for a public resource.", + "id": "DeprecationStatus", + "properties": { + "deleted": { + "description": "An optional RFC3339 timestamp on or after which the state of this\nresource is intended to change to DELETED. This is only\ninformational and the status will not change unless the client explicitly\nchanges it.", + "type": "string" }, - "multipoint": { - "description": "The multipoint bit of the BFD packet. This is specified in section 4.1 ofRFC5880", - "type": "boolean" + "deprecated": { + "description": "An optional RFC3339 timestamp on or after which the state of this\nresource is intended to change to DEPRECATED. This is only\ninformational and the status will not change unless the client explicitly\nchanges it.", + "type": "string" }, - "myDiscriminator": { - "description": "The My Discriminator value in the BFD packet. This is specified in section\n4.1 ofRFC5880", - "format": "uint32", - "type": "integer" + "obsolete": { + "description": "An optional RFC3339 timestamp on or after which the state of this\nresource is intended to change to OBSOLETE. This is only\ninformational and the status will not change unless the client explicitly\nchanges it.", + "type": "string" }, - "poll": { - "description": "The Poll bit of the BFD packet. This is specified in section 4.1 ofRFC5880", - "type": "boolean" + "replacement": { + "description": "The URL of the suggested replacement for a deprecated resource.\nThe suggested replacement resource must be the same kind of resource as the\ndeprecated resource.", + "type": "string" }, "state": { - "description": "The current BFD session state as seen by the transmitting system. These\nstates are specified in section 4.1 ofRFC5880", + "description": "The deprecation state of this resource. This can be ACTIVE,DEPRECATED, OBSOLETE, or DELETED.\nOperations which communicate the end of life date for an image, can useACTIVE. Operations which create a new resource using aDEPRECATED resource will return successfully, but with a\nwarning indicating the deprecated resource and recommending its\nreplacement. Operations which use OBSOLETE orDELETED resources will be rejected and result in an error.", "enum": [ - "ADMIN_DOWN", - "DOWN", - "INIT", - "STATE_UNSPECIFIED", - "UP" + "ACTIVE", + "DELETED", + "DEPRECATED", + "OBSOLETE" ], "enumDescriptions": [ "", "", "", - "", "" ], "type": "string" - }, - "version": { - "description": "The version number of the BFD protocol, as specified in section 4.1 ofRFC5880.", - "format": "uint32", - "type": "integer" - }, - "yourDiscriminator": { - "description": "The Your Discriminator value in the BFD packet. This is specified in\nsection 4.1 ofRFC5880", - "format": "uint32", - "type": "integer" } }, "type": "object" }, - "BfdStatus": { - "description": "Next free: 15", - "id": "BfdStatus", + "Disk": { + "description": "Represents a Persistent Disk resource.\n\nGoogle Compute Engine has two Disk resources:\n\n* [Zonal](/compute/docs/reference/rest/v1/disks)\n* [Regional](/compute/docs/reference/rest/v1/regionDisks)\n\nPersistent disks are required for running your VM instances.\nCreate both boot and non-boot (data) persistent disks. For more information,\nread Persistent Disks. For more\nstorage options, read Storage options.\n\nThe disks resource represents a zonal persistent disk.\nFor more information, readZonal persistent disks.\n\nThe regionDisks resource represents a\nregional persistent disk. For more information, read\nRegional resources.", + "id": "Disk", "properties": { - "bfdSessionInitializationMode": { - "description": "The BFD session initialization mode for this BGP peer.\nIf set to ACTIVE, the Cloud Router will initiate the BFD session for\nthis BGP peer. If set to PASSIVE, the Cloud Router will wait for the\npeer router to initiate the BFD session for this BGP peer. If set to\nDISABLED, BFD is disabled for this BGP peer.", + "accessMode": { + "description": "The access mode of the disk.\n \n \n - READ_WRITE_SINGLE: The default AccessMode, means the\n disk can be attached to single instance in RW mode.\n - READ_WRITE_MANY: The AccessMode means the disk can be\n attached to multiple instances in RW mode.\n - READ_ONLY_MANY: The AccessMode means the disk can be\n attached to multiple instances in RO mode.\n\n\nThe AccessMode is only valid for Hyperdisk disk types.", "enum": [ - "ACTIVE", - "DISABLED", - "PASSIVE" + "READ_ONLY_MANY", + "READ_WRITE_MANY", + "READ_WRITE_SINGLE" ], "enumDescriptions": [ - "", - "", - "" + "The AccessMode means the disk can be attached to multiple instances in RO\nmode.", + "The AccessMode means the disk can be attached to multiple instances in RW\nmode.", + "The default AccessMode, means the disk can be attached to single instance\nin RW mode." ], "type": "string" }, - "configUpdateTimestampMicros": { - "description": "Unix timestamp of the most recent config update.", - "format": "int64", + "architecture": { + "description": "The architecture of the disk. Valid values are\nARM64 or X86_64.", + "enum": [ + "ARCHITECTURE_UNSPECIFIED", + "ARM64", + "X86_64" + ], + "enumDescriptions": [ + "Default value indicating Architecture is not set.", + "Machines with architecture ARM64", + "Machines with architecture X86_64" + ], "type": "string" }, - "controlPacketCounts": { - "$ref": "BfdStatusPacketCounts", - "description": "Control packet counts for the current BFD session." + "asyncPrimaryDisk": { + "$ref": "DiskAsyncReplication", + "description": "Disk asynchronously replicated into this disk." }, - "controlPacketIntervals": { - "description": "Inter-packet time interval statistics for control packets.", + "asyncSecondaryDisks": { + "additionalProperties": { + "$ref": "DiskAsyncReplicationList" + }, + "description": "Output only. [Output Only] A list of disks this disk is asynchronously replicated to.", + "readOnly": true, + "type": "object" + }, + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the disk using a\ncustomer-supplied encryption key or a \ncustomer-managed encryption key.\n\nEncryption keys do not protect access to metadata of the disk.\n\nAfter you encrypt a disk with a customer-supplied key, you must provide the\nsame key if you use the disk later. For example, to create a disk snapshot,\nto create a disk image, to create a machine image, or to attach the disk to\na virtual machine.\n\nAfter you encrypt a disk with a customer-managed key, thediskEncryptionKey.kmsKeyName is set to a key *version*\nname once the disk is created. The disk is encrypted with this version of\nthe key. In the response, diskEncryptionKey.kmsKeyName appears\nin the following format:\n\n\"diskEncryptionKey.kmsKeyName\":\n\"projects/kms_project_id/locations/region/keyRings/\nkey_region/cryptoKeys/key\n/cryptoKeysVersions/version\n\nIf you do not provide an encryption key when creating the disk, then the \ndisk is encrypted using an automatically generated key and you don't need \nto provide a key to use the disk later." + }, + "enableConfidentialCompute": { + "description": "Whether this disk is using confidential compute mode.", + "type": "boolean" + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable\nonly for bootable images. Read\nEnabling guest operating system features to see a list of available\noptions.", "items": { - "$ref": "PacketIntervals" + "$ref": "GuestOsFeature" }, "type": "array" }, - "localDiagnostic": { - "description": "The diagnostic code specifies the local system's reason for the last change\nin session state. This allows remote systems to determine the reason that\nthe previous session failed, for example. These diagnostic codes are\nspecified in section 4.1 ofRFC5880", - "enum": [ - "ADMINISTRATIVELY_DOWN", - "CONCATENATED_PATH_DOWN", - "CONTROL_DETECTION_TIME_EXPIRED", - "DIAGNOSTIC_UNSPECIFIED", - "ECHO_FUNCTION_FAILED", - "FORWARDING_PLANE_RESET", - "NEIGHBOR_SIGNALED_SESSION_DOWN", - "NO_DIAGNOSTIC", - "PATH_DOWN", - "REVERSE_CONCATENATED_PATH_DOWN" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, "type": "string" }, - "localState": { - "description": "The current BFD session state as seen by the transmitting system. These\nstates are specified in section 4.1 ofRFC5880", - "enum": [ - "ADMIN_DOWN", - "DOWN", - "INIT", - "STATE_UNSPECIFIED", - "UP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], + "kind": { + "default": "compute#disk", + "description": "Output only. [Output Only] Type of the resource. Always compute#disk for\ndisks.", + "readOnly": true, "type": "string" }, - "negotiatedLocalControlTxIntervalMs": { - "description": "Negotiated transmit interval for control packets.", - "format": "uint32", - "type": "integer" + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this disk, which is\nessentially a hash of the labels set used for optimistic locking. The\nfingerprint is initially generated by Compute Engine and changes after\nevery request to modify or update labels. You must always provide an\nup-to-date fingerprint hash in order to update or change labels,\notherwise the request will fail with error412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve a disk.", + "format": "byte", + "type": "string" }, - "rxPacket": { - "$ref": "BfdPacket", - "description": "The most recent Rx control packet for this BFD session." + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this disk. These can be later modified by\nthe setLabels method.", + "type": "object" }, - "txPacket": { - "$ref": "BfdPacket", - "description": "The most recent Tx control packet for this BFD session." + "lastAttachTimestamp": { + "description": "Output only. [Output Only] Last attach timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" }, - "uptimeMs": { - "description": "Session uptime in milliseconds. Value will be 0 if session is not up.", + "lastDetachTimestamp": { + "description": "Output only. [Output Only] Last detach timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "licenseCodes": { + "description": "Integer license codes indicating which licenses are attached to this disk.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "licenses": { + "description": "A list of publicly visible licenses. Reserved for Google's use.", + "items": { + "type": "string" + }, + "type": "array" + }, + "locationHint": { + "description": "An opaque location hint used to place the disk close to other resources.\nThis field is for use by internal tools that use the public API.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.disks.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`\nwhich means the first character must be a lowercase letter, and all\nfollowing characters must be a dash, lowercase letter, or digit, except\nthe last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "options": { + "description": "Internal use only.", + "type": "string" + }, + "params": { + "$ref": "DiskParams", + "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." + }, + "physicalBlockSizeBytes": { + "description": "Physical block size of the persistent disk, in bytes.\nIf not present in a request, a default value is used.\nThe currently supported size is 4096, other sizes may be added in\nthe future.\nIf an unsupported value is requested, the error message will list\nthe supported values for the caller's project.", "format": "int64", "type": "string" - } - }, - "type": "object" - }, - "BfdStatusPacketCounts": { - "id": "BfdStatusPacketCounts", - "properties": { - "numRx": { - "description": "Number of packets received since the beginning of the current BFD\nsession.", - "format": "uint32", - "type": "integer" }, - "numRxRejected": { - "description": "Number of packets received that were rejected because of errors since the\nbeginning of the current BFD session.", - "format": "uint32", - "type": "integer" + "provisionedIops": { + "description": "Indicates how many IOPS to provision for the disk. This sets the number\nof I/O operations per second that the disk can handle. Values must be\nbetween 10,000 and 120,000. For more details, see theExtreme persistent\ndisk documentation.", + "format": "int64", + "type": "string" }, - "numRxSuccessful": { - "description": "Number of packets received that were successfully processed since the\nbeginning of the current BFD session.", - "format": "uint32", - "type": "integer" + "provisionedThroughput": { + "description": "Indicates how much throughput to provision for the disk. This sets the\nnumber of throughput mb per second that the disk can handle. Values must be\ngreater than or equal to 1.", + "format": "int64", + "type": "string" + }, + "region": { + "description": "Output only. [Output Only] URL of the region where the disk resides. Only applicable for\nregional resources.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "readOnly": true, + "type": "string" }, - "numTx": { - "description": "Number of packets transmitted since the beginning of the current BFD\nsession.", - "format": "uint32", - "type": "integer" - } - }, - "type": "object" - }, - "BgpRoute": { - "id": "BgpRoute", - "properties": { - "asPaths": { - "description": "Output only. [Output only] AS-PATH for the route", + "replicaZones": { + "description": "URLs of the zones where the disk should be replicated to. Only applicable\nfor regional resources.", "items": { - "$ref": "BgpRouteAsPath" + "type": "string" }, - "readOnly": true, "type": "array" }, - "communities": { - "description": "Output only. [Output only] BGP communities in human-readable A:B format.", + "resourcePolicies": { + "description": "Resource policies applied to this disk for automatic snapshot creations.", "items": { "type": "string" }, - "readOnly": true, "type": "array" }, - "destination": { - "$ref": "BgpRouteNetworkLayerReachabilityInformation", - "description": "Output only. [Output only] Destination IP range for the route, in human-readable CIDR\nformat", + "resourceStatus": { + "$ref": "DiskResourceStatus", + "description": "Output only. [Output Only] Status information for the disk resource.", "readOnly": true }, - "med": { - "description": "Output only. [Output only] BGP multi-exit discriminator", - "format": "uint32", + "satisfiesPzi": { + "description": "Output only. Reserved for future use.", "readOnly": true, - "type": "integer" + "type": "boolean" }, - "origin": { - "description": "Output only. [Output only] BGP origin (EGP, IGP or INCOMPLETE)", - "enum": [ - "BGP_ORIGIN_EGP", - "BGP_ORIGIN_IGP", - "BGP_ORIGIN_INCOMPLETE" - ], - "enumDescriptions": [ - "", - "", - "" - ], + "satisfiesPzs": { + "description": "Output only. [Output Only] Reserved for future use.", + "readOnly": true, + "type": "boolean" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", "readOnly": true, "type": "string" - } - }, - "type": "object" - }, - "BgpRouteAsPath": { - "id": "BgpRouteAsPath", - "properties": { - "asns": { - "description": "Output only. [Output only] ASNs in the path segment. When type is SEQUENCE, these are\nordered.", - "items": { - "format": "int32", - "type": "integer" - }, + }, + "sizeGb": { + "description": "Size, in GB, of the persistent disk. You can specify\nthis field when creating a persistent disk using thesourceImage, sourceSnapshot, orsourceDisk parameter, or specify it alone to create an empty\npersistent disk.\n\nIf you specify this field along with a source, the value ofsizeGb must not be less than the size of the\nsource.\nAcceptable values are greater than 0.", + "format": "int64", + "type": "string" + }, + "sourceConsistencyGroupPolicy": { + "description": "Output only. [Output Only] URL of the DiskConsistencyGroupPolicy for a secondary disk\nthat was created using a consistency group.", "readOnly": true, - "type": "array" + "type": "string" }, - "asns32": { - "description": "Output only. [Output only] ASNs in the path segment. This field is for better\nsupport of 32 bit ASNs as the other asns field suffers from overflow when\nthe ASN is larger. When type is SEQUENCE, these are ordered.", - "items": { - "format": "uint32", - "type": "integer" - }, + "sourceConsistencyGroupPolicyId": { + "description": "Output only. [Output Only] ID of the DiskConsistencyGroupPolicy for a secondary disk\nthat was created using a consistency group.", "readOnly": true, - "type": "array" + "type": "string" }, - "type": { - "description": "Output only. [Output only] Type of AS-PATH segment (SEQUENCE or SET)", + "sourceDisk": { + "description": "The source disk used to create this disk. You can provide this as a\npartial or full URL to the resource. For example, the following are valid\nvalues:\n \n \n - \n https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk\n \n - \n https://www.googleapis.com/compute/v1/projects/project/regions/region/disks/disk\n \n - \n projects/project/zones/zone/disks/disk\n \n - \n projects/project/regions/region/disks/disk\n \n - \n zones/zone/disks/disk\n \n - \n regions/region/disks/disk", + "type": "string" + }, + "sourceDiskId": { + "description": "Output only. [Output Only] The unique ID of the disk used to create this disk. This\nvalue identifies the exact disk that was used to create this persistent\ndisk. For example, if you created the persistent disk from a disk that\nwas later deleted and recreated under the same name, the source disk ID\nwould identify the exact version of the disk that was used.", + "readOnly": true, + "type": "string" + }, + "sourceImage": { + "description": "The source image used to create this disk. If the source image is\ndeleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify\nthe image by its family name. For example, specifyfamily/debian-9 to use the latest Debian 9 image:\n\nprojects/debian-cloud/global/images/family/debian-9\n\n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD\n\n\nTo create a disk with a custom image that you created, specify the\nimage name in the following format:\n\nglobal/images/my-custom-image\n\n\nYou can also specify a custom image by its image family, which returns\nthe latest version of the image in that family. Replace the image name\nwith family/family-name:\n\nglobal/images/family/my-image-family", + "type": "string" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Thecustomer-supplied\nencryption key of the source image. Required if the source image is\nprotected by a customer-supplied encryption key." + }, + "sourceImageId": { + "description": "Output only. [Output Only] The ID value of the image used to create this disk. This\nvalue identifies the exact image that was used to create this persistent\ndisk. For example, if you created the persistent disk from an image that\nwas later deleted and recreated under the same name, the source image ID\nwould identify the exact version of the image that was used.", + "readOnly": true, + "type": "string" + }, + "sourceInstantSnapshot": { + "description": "The source instant snapshot used to create this disk. You can provide\nthis as a partial or full URL to the resource. For example, the following\nare valid values:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/instantSnapshots/instantSnapshot\n - projects/project/zones/zone/instantSnapshots/instantSnapshot \n - zones/zone/instantSnapshots/instantSnapshot", + "type": "string" + }, + "sourceInstantSnapshotId": { + "description": "Output only. [Output Only] The unique ID of the instant snapshot used to create this\ndisk. This value identifies the exact instant snapshot that was used to\ncreate this persistent disk. For example, if you created the persistent\ndisk from an instant snapshot that was later deleted and recreated under\nthe same name, the source instant snapshot ID would identify the exact\nversion of the instant snapshot that was used.", + "readOnly": true, + "type": "string" + }, + "sourceSnapshot": { + "description": "The source snapshot used to create this disk. You can provide this as a\npartial or full URL to the resource. For example, the following are valid\nvalues:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot \n - projects/project/global/snapshots/snapshot\n - global/snapshots/snapshot", + "type": "string" + }, + "sourceSnapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Thecustomer-supplied\nencryption key of the source snapshot. Required if the source snapshot\nis protected by a customer-supplied encryption key." + }, + "sourceSnapshotId": { + "description": "Output only. [Output Only] The unique ID of the snapshot used to create this disk. This\nvalue identifies the exact snapshot that was used to create this persistent\ndisk. For example, if you created the persistent disk from a snapshot that\nwas later deleted and recreated under the same name, the source snapshot ID\nwould identify the exact version of the snapshot that was used.", + "readOnly": true, + "type": "string" + }, + "sourceStorageObject": { + "description": "The full Google Cloud Storage URI where the disk image is stored. This file\nmust be a gzip-compressed tarball whose name ends in .tar.gz or virtual\nmachine disk whose name ends in vmdk. Valid URIs may start with gs:// or\nhttps://storage.googleapis.com/. This flag is not optimized for creating\nmultiple disks from a source storage object. To create many disks from a\nsource storage object, use gcloud compute images\nimport instead.", + "type": "string" + }, + "status": { + "description": "Output only. [Output Only] The status of disk creation.\n \n \n - CREATING: Disk is provisioning.\n - RESTORING: Source data is being copied into the\n disk.\n - FAILED: Disk creation failed.\n - READY: Disk is ready for use.\n - DELETING: Disk is deleting.", "enum": [ - "AS_PATH_TYPE_SEQUENCE", - "AS_PATH_TYPE_SET" + "CREATING", + "DELETING", + "FAILED", + "READY", + "RESTORING", + "UNAVAILABLE" ], "enumDescriptions": [ - "", - "" + "Disk is provisioning", + "Disk is deleting.", + "Disk creation failed.", + "Disk is ready for use.", + "Source data is being copied into the disk.", + "Disk is currently unavailable and cannot be accessed, attached or\ndetached." ], "readOnly": true, "type": "string" - } - }, - "type": "object" - }, - "BgpRouteNetworkLayerReachabilityInformation": { - "description": "Network Layer Reachability Information (NLRI) for a route.", - "id": "BgpRouteNetworkLayerReachabilityInformation", - "properties": { - "pathId": { - "description": "If the BGP session supports multiple paths (RFC 7911), the path\nidentifier for this route.", - "format": "uint32", - "type": "integer" }, - "prefix": { - "description": "Human readable CIDR notation for a prefix. E.g. 10.42.0.0/16.", + "storagePool": { + "description": "The storage pool in which the new disk is created. You can provide\nthis as a partial or full URL to the resource. For example, the following\nare valid values:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/storagePools/storagePool\n - projects/project/zones/zone/storagePools/storagePool \n - zones/zone/storagePools/storagePool", "type": "string" - } - }, - "type": "object" - }, - "Binding": { - "description": "Associates `members`, or principals, with a `role`.", - "id": "Binding", - "properties": { - "condition": { - "$ref": "Expr", - "description": "The condition that is associated with this binding.\n\nIf the condition evaluates to `true`, then this binding applies to the\ncurrent request.\n\nIf the condition evaluates to `false`, then this binding does not apply to\nthe current request. However, a different role binding might grant the same\nrole to one or more of the principals in this binding.\n\nTo learn which resources support conditions in their IAM policies, see the\n[IAM\ndocumentation](https://cloud.google.com/iam/help/conditions/resource-policies)." }, - "members": { - "description": "Specifies the principals requesting access for a Google Cloud resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n Does not include identities that come from external identity providers\n (IdPs) through identity federation.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@example.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a Google\n service account. For example,\n `my-other-app@appspot.gserviceaccount.com`.\n\n* `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An\n identifier for a\n [Kubernetes service\n account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts).\n For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n\n\n\n* `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`:\n A single identity in a workforce identity pool.\n\n* `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`:\n All workforce identities in a group.\n\n* `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`:\n All workforce identities with a specific attribute value.\n\n* `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`:\n All identities in a workforce identity pool.\n\n* `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`:\n A single identity in a workload identity pool.\n\n* `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`:\n A workload identity pool group.\n\n* `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`:\n All identities in a workload identity pool with a certain attribute.\n\n* `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`:\n All identities in a workload identity pool.\n\n* `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique\n identifier) representing a user that has been recently deleted. For\n example, `alice@example.com?uid=123456789012345678901`. If the user is\n recovered, this value reverts to `user:{emailid}` and the recovered user\n retains the role in the binding.\n\n* `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus\n unique identifier) representing a service account that has been recently\n deleted. For example,\n `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.\n If the service account is undeleted, this value reverts to\n `serviceAccount:{emailid}` and the undeleted service account retains the\n role in the binding.\n\n* `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique\n identifier) representing a Google group that has been recently\n deleted. For example, `admins@example.com?uid=123456789012345678901`. If\n the group is recovered, this value reverts to `group:{emailid}` and the\n recovered group retains the role in the binding.\n\n* `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`:\n Deleted single identity in a workforce identity pool. For example,\n `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.", + "type": { + "description": "URL of the disk type resource describing which disk type to use to create\nthe disk. Provide this when creating the disk. For example:projects/project/zones/zone/diskTypes/pd-ssd. See Persistent disk\ntypes.", + "type": "string" + }, + "users": { + "description": "Output only. [Output Only] Links to the users of the disk (attached instances)\nin form:projects/project/zones/zone/instances/instance", "items": { "type": "string" }, + "readOnly": true, "type": "array" }, - "role": { - "description": "Role that is assigned to the list of `members`, or principals.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\n\nFor an overview of the IAM roles and permissions, see the\n[IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For\na list of the available pre-defined roles, see\n[here](https://cloud.google.com/iam/docs/understanding-roles).", - "type": "string" - } - }, - "type": "object" - }, - "BulkInsertDiskResource": { - "description": "A transient resource used in compute.disks.bulkInsert and\ncompute.regionDisks.bulkInsert. It is only used to process\nrequests and is not persisted.", - "id": "BulkInsertDiskResource", - "properties": { - "sourceConsistencyGroupPolicy": { - "description": "The URL of the DiskConsistencyGroupPolicy for the group of disks to clone.\nThis may be a full or partial URL, such as:\n \n \n - \n https://www.googleapis.com/compute/v1/projects/project/regions/region/resourcePolicies/resourcePolicy\n \n - \n projects/project/regions/region/resourcePolicies/resourcePolicy\n \n - \n regions/region/resourcePolicies/resourcePolicy", + "zone": { + "description": "Output only. [Output Only] URL of the zone where the disk resides.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "readOnly": true, "type": "string" } }, "type": "object" }, - "BulkInsertInstanceResource": { - "description": "A transient resource used in compute.instances.bulkInsert and\ncompute.regionInstances.bulkInsert . This resource is not persisted\nanywhere, it is used only for processing the requests.", - "id": "BulkInsertInstanceResource", + "DiskAggregatedList": { + "id": "DiskAggregatedList", "properties": { - "count": { - "description": "The maximum number of instances to create.", - "format": "int64", + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, - "instanceFlexibilityPolicy": { - "$ref": "InstanceFlexibilityPolicy", - "description": "A flexible specification of machine type of instances to create." - }, - "instanceProperties": { - "$ref": "InstanceProperties", - "description": "The instance properties defining the VM instances to be created. Required\nif sourceInstanceTemplate is not provided." + "items": { + "additionalProperties": { + "$ref": "DisksScopedList", + "description": "[Output Only] Name of the scope containing this set of disks." + }, + "description": "A list of DisksScopedList resources.", + "type": "object" }, - "locationPolicy": { - "$ref": "LocationPolicy", - "description": "Policy for choosing target zone. For more information, seeCreate VMs in\nbulk." + "kind": { + "default": "compute#diskAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#diskAggregatedList for aggregated lists of persistent\ndisks.", + "readOnly": true, + "type": "string" }, - "minCount": { - "description": "The minimum number of instances to create. If no min_count is\nspecified then count is used as the default value. Ifmin_count instances cannot be created, then no instances will\nbe created and instances already created will be deleted.", - "format": "int64", + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" }, - "namePattern": { - "description": "The string pattern used for the names of the VMs.\nEither name_pattern or per_instance_properties\nmust be set. The pattern must contain one continuous sequence of\nplaceholder hash characters (#) with each character corresponding to one\ndigit of the generated instance name. Example: a name_pattern\nof inst-#### generates instance names such asinst-0001 and inst-0002. If existing instances\nin the same project and zone have names that match the name pattern\nthen the generated instance numbers start after the biggest\nexisting number. For example, if there exists an instance with nameinst-0050, then instance names generated using the patterninst-#### begin with inst-0051. The name pattern\nplaceholder #...# can contain up to 18 characters.", + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, "type": "string" }, - "perInstanceProperties": { - "additionalProperties": { - "$ref": "BulkInsertInstanceResourcePerInstanceProperties" + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" }, - "description": "Per-instance properties to be set on individual instances.\nKeys of this map specify requested instance names.\nCan be empty if name_pattern is used.", - "type": "object" + "readOnly": true, + "type": "array" }, - "sourceInstanceTemplate": { - "description": "Specifies the instance template from which to create instances. You may\ncombine sourceInstanceTemplate withinstanceProperties to override specific values from an\nexisting instance template. Bulk API follows the semantics of JSON Merge\nPatch described by RFC\n7396.\n\nIt can be a full or partial URL. For example, the following are\nall valid URLs to an instance template: \n \n \n - https://www.googleapis.com/compute/v1/projects/project/global/instanceTemplates/instanceTemplate\n - projects/project/global/instanceTemplates/instanceTemplate\n - global/instanceTemplates/instanceTemplate\n\n\n\nThis field is optional.", - "type": "string" + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } }, "type": "object" }, - "BulkInsertInstanceResourcePerInstanceProperties": { - "description": "Per-instance properties to be set on individual instances.\nTo be extended in the future.", - "id": "BulkInsertInstanceResourcePerInstanceProperties", + "DiskAsyncReplication": { + "id": "DiskAsyncReplication", "properties": { - "hostname": { - "description": "Specifies the hostname of the instance. More details in:\nhttps://cloud.google.com/compute/docs/instances/custom-hostname-vm#naming_convention", + "consistencyGroupPolicy": { + "description": "Output only. [Output Only] URL of the DiskConsistencyGroupPolicy if replication was\nstarted on the disk as a member of a group.", + "readOnly": true, "type": "string" }, - "name": { - "description": "Output only. This field is only temporary. It will be removed. Do not use it.", + "consistencyGroupPolicyId": { + "description": "Output only. [Output Only] ID of the DiskConsistencyGroupPolicy if replication was\nstarted on the disk as a member of a group.", "readOnly": true, "type": "string" - } - }, - "type": "object" - }, - "BulkInsertOperationStatus": { - "id": "BulkInsertOperationStatus", - "properties": { - "createdVmCount": { - "description": "[Output Only] Count of VMs successfully created so far.", - "format": "int32", - "type": "integer" - }, - "deletedVmCount": { - "description": "[Output Only] Count of VMs that got deleted during rollback.", - "format": "int32", - "type": "integer" - }, - "failedToCreateVmCount": { - "description": "[Output Only] Count of VMs that started creating but encountered an\nerror.", - "format": "int32", - "type": "integer" }, - "status": { - "description": "[Output Only] Creation status of BulkInsert operation - information\nif the flow is rolling forward or rolling back.", - "enum": [ - "CREATING", - "DONE", - "ROLLING_BACK", - "STATUS_UNSPECIFIED" - ], - "enumDescriptions": [ - "Rolling forward - creating VMs.", - "Done", - "Rolling back - cleaning up after an error.", - "" - ], + "disk": { + "description": "The other disk asynchronously replicated to or from the current disk.\nYou can provide this as a partial or full URL to the resource.\nFor example, the following are valid values:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n - projects/project/zones/zone/disks/disk \n - zones/zone/disks/disk", "type": "string" }, - "targetVmCount": { - "description": "[Output Only] Count of VMs originally planned to be created.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "BulkSetLabelsRequest": { - "id": "BulkSetLabelsRequest", - "properties": { - "labelFingerprint": { - "description": "The fingerprint of the previous set of labels for this resource,\nused to detect conflicts. The fingerprint is initially generated by Compute\nEngine and changes after every request to modify or update labels. You may\noptionally provide an up-to-date fingerprint hash in order to update or\nchange labels. Make a get() request to the resource to get the\nlatest fingerprint.", - "format": "byte", + "diskId": { + "description": "Output only. [Output Only] The unique ID of the other disk asynchronously replicated\nto or from the current disk. This value identifies the exact disk that\nwas used to create this replication. For example, if you started\nreplicating the persistent disk from a disk that was later deleted and\nrecreated under the same name, the disk ID would identify the exact\nversion of the disk that was used.", + "readOnly": true, "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "The labels to set for this resource.", - "type": "object" } }, "type": "object" }, - "BulkZoneSetLabelsRequest": { - "id": "BulkZoneSetLabelsRequest", + "DiskAsyncReplicationList": { + "id": "DiskAsyncReplicationList", "properties": { - "requests": { - "items": { - "$ref": "BulkSetLabelsRequest" - }, - "type": "array" + "asyncReplicationDisk": { + "$ref": "DiskAsyncReplication" } }, "type": "object" }, - "BundledLocalSsds": { - "id": "BundledLocalSsds", + "DiskInstantiationConfig": { + "description": "A specification of the desired way to instantiate a disk in the instance\ntemplate when its created from a source instance.", + "id": "DiskInstantiationConfig", "properties": { - "defaultInterface": { - "description": "The default disk interface if the interface is not specified.", - "type": "string" + "autoDelete": { + "description": "Specifies whether the disk will be auto-deleted when the instance is\ndeleted (but not when the disk is detached from the instance).", + "type": "boolean" }, - "partitionCount": { - "description": "The number of partitions.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "CacheInvalidationRule": { - "id": "CacheInvalidationRule", - "properties": { - "cacheTags": { - "description": "A list of cache tags used to identify cached objects.\n\n \n - Cache tags are specified when the response is first cached, by setting\n the `Cache-Tag` response header at the origin.\n - Multiple cache tags in the same invalidation request are treated as\n Boolean `OR` - for example, `tag1 OR tag2 OR tag3`.\n - If other fields are also specified, these are treated as Boolean `AND`\n with any tags.\n\n\nUp to 10 tags can be specified in a single invalidation request.", - "items": { - "type": "string" - }, - "type": "array" + "customImage": { + "description": "The custom source image to be used to restore this disk when instantiating\nthis instance template.", + "type": "string" }, - "host": { - "description": "If set, this invalidation rule will only apply to requests with a Host\nheader matching host.", + "deviceName": { + "description": "Specifies the device name of the disk to which the configurations apply to.", "type": "string" }, - "path": { + "instantiateFrom": { + "description": "Specifies whether to include the disk and what image to use. Possible\nvalues are:\n \n \n - source-image: to use the same image that was used to\n create the source instance's corresponding disk. Applicable to the boot\n disk and additional read-write disks.\n - source-image-family: to use the same image family that\n was used to create the source instance's corresponding disk. Applicable\n to the boot disk and additional read-write disks.\n - custom-image: to use a user-provided image url for disk\n creation. Applicable to the boot disk and additional read-write\n disks. \n - attach-read-only: to attach a read-only\n disk. Applicable to read-only disks.\n - do-not-include: to exclude a disk from the template.\n Applicable to additional read-write disks, local SSDs, and read-only\n disks.", + "enum": [ + "ATTACH_READ_ONLY", + "BLANK", + "CUSTOM_IMAGE", + "DEFAULT", + "DO_NOT_INCLUDE", + "SOURCE_IMAGE", + "SOURCE_IMAGE_FAMILY" + ], + "enumDescriptions": [ + "Attach the existing disk in read-only mode. The request will fail if the\ndisk was attached in read-write mode on the source instance. Applicable\nto: read-only disks.", + "Create a blank disk. The disk will be created unformatted. Applicable to:\nadditional read-write disks, local SSDs.", + "Use the custom image specified in the custom_image field. Applicable to:\nboot disk, additional read-write disks.", + "Use the default instantiation option for the corresponding type of disk.\nFor boot disk and any other R/W disks, new custom images will be created\nfrom each disk. For read-only disks, they will be attached in read-only\nmode. Local SSD disks will be created as blank volumes.", + "Do not include the disk in the instance template. Applicable to:\nadditional read-write disks, local SSDs, read-only disks.", + "Use the same source image used for creation of the source instance's\ncorresponding disk. The request will fail if the source VM's disk was\ncreated from a snapshot. Applicable to: boot disk, additional read-write\ndisks.", + "Use the same source image family used for creation of the source\ninstance's corresponding disk. The request will fail if the source image\nof the source disk does not belong to any image family. Applicable to:\nboot disk, additional read-write disks." + ], "type": "string" } }, "type": "object" }, - "CacheKeyPolicy": { - "description": "Message containing what to include in the cache key for a request for Cloud\nCDN.", - "id": "CacheKeyPolicy", + "DiskList": { + "description": "A list of Disk resources.", + "id": "DiskList", "properties": { - "includeHost": { - "description": "If true, requests to different hosts will be cached separately.", - "type": "boolean" - }, - "includeHttpHeaders": { - "description": "Allows HTTP request headers (by name) to be used in the cache key.", - "items": { - "type": "string" - }, - "type": "array" + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" }, - "includeNamedCookies": { - "description": "Allows HTTP cookies (by name) to be used in the cache key.\nThe name=value pair will be used in the cache key Cloud CDN generates.", + "items": { + "description": "A list of Disk resources.", "items": { - "type": "string" + "$ref": "Disk" }, "type": "array" }, - "includeProtocol": { - "description": "If true, http and https requests will be cached separately.", - "type": "boolean" + "kind": { + "default": "compute#diskList", + "description": "Output only. [Output Only] Type of resource. Always compute#diskList for\nlists of disks.", + "readOnly": true, + "type": "string" }, - "includeQueryString": { - "description": "If true, include query string parameters in the cache key according to\nquery_string_whitelist and query_string_blacklist. If neither is set, the\nentire query string will be included. If false, the query string will be\nexcluded from the cache key entirely.", - "type": "boolean" + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" }, - "queryStringBlacklist": { - "description": "Names of query string parameters to exclude in cache keys. All other\nparameters will be included. Either specify query_string_whitelist or\nquery_string_blacklist, not both. '&' and '=' will be percent encoded and\nnot treated as delimiters.", - "items": { - "type": "string" - }, - "type": "array" + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" }, - "queryStringWhitelist": { - "description": "Names of query string parameters to include in cache keys. All other\nparameters will be excluded. Either specify query_string_whitelist or\nquery_string_blacklist, not both. '&' and '=' will be percent encoded and\nnot treated as delimiters.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "CalendarModeAdviceRequest": { - "description": "A request to recommend the best way to consume the specified resources in the\nfuture.", - "id": "CalendarModeAdviceRequest", - "properties": { - "futureResourcesSpecs": { - "additionalProperties": { - "$ref": "FutureResourcesSpec" + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } }, - "description": "Specification of resources to create in the future.\nThe key of the map is an arbitrary string specified by the caller.\nValue of the map is a specification of required resources and their\nconstraints. Currently only one value is allowed in this map.", "type": "object" } }, "type": "object" }, - "CalendarModeAdviceResponse": { - "description": "A response containing the recommended way of creating the specified resources\nin the future. It contains (will contain) multiple recommendations that can\nbe analyzed by the customer and the best one can be picked.", - "id": "CalendarModeAdviceResponse", + "DiskMoveRequest": { + "id": "DiskMoveRequest", "properties": { - "recommendations": { - "description": "Recommendations where, how and when to create the requested resources\nin order to maximize their obtainability and minimize cost.", - "items": { - "$ref": "CalendarModeRecommendation" - }, - "type": "array" + "destinationZone": { + "description": "The URL of the destination zone to move the disk. This can be a full or\npartial URL. For example, the following are all valid URLs to a zone:\n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone \n - projects/project/zones/zone \n - zones/zone", + "type": "string" + }, + "targetDisk": { + "description": "The URL of the target disk to move. This can be a full or partial URL.\nFor example, the following are all valid URLs to a disk:\n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n - projects/project/zones/zone/disks/disk \n - zones/zone/disks/disk", + "type": "string" } }, "type": "object" }, - "CalendarModeRecommendation": { - "description": "A single recommendation to create requested resources. Contains detailed\nrecommendations for every future resources specification specified in\nCalendarModeAdviceRequest.", - "id": "CalendarModeRecommendation", + "DiskParams": { + "description": "Additional disk params.", + "id": "DiskParams", "properties": { - "recommendationsPerSpec": { + "resourceManagerTags": { "additionalProperties": { - "$ref": "FutureResourcesRecommendation" + "type": "string" }, - "description": "Recommendations for every future resource specification passed in\nCalendarModeAdviceRequest. Keys of the map correspond to keys\nspecified in the request.", + "description": "Input only. Resource manager tags to be bound to the disk. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, "type": "object" }, - "CircuitBreakers": { - "description": "Settings controlling the volume of requests, connections and retries to this\nbackend service.", - "id": "CircuitBreakers", + "DiskResourceStatus": { + "id": "DiskResourceStatus", "properties": { - "maxConnections": { - "description": "The maximum number of connections to the backend service. If not specified,\nthere is no limit.\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true.", - "format": "int32", - "type": "integer" - }, - "maxPendingRequests": { - "description": "The maximum number of pending requests allowed to the backend service. If\nnot specified, there is no limit.\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true.", - "format": "int32", - "type": "integer" - }, - "maxRequests": { - "description": "The maximum number of parallel requests that allowed to the backend\nservice. If not specified, there is no limit.", - "format": "int32", - "type": "integer" - }, - "maxRequestsPerConnection": { - "description": "Maximum requests for a single connection to the backend service.\nThis parameter is respected by both the HTTP/1.1 and HTTP/2\nimplementations. If not specified, there is no limit. Setting this\nparameter to 1 will effectively disable keep alive.\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true.", - "format": "int32", - "type": "integer" + "asyncPrimaryDisk": { + "$ref": "DiskResourceStatusAsyncReplicationStatus" }, - "maxRetries": { - "description": "The maximum number of parallel retries allowed to the backend cluster. If\nnot specified, the default is 1.\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true.", - "format": "int32", - "type": "integer" + "asyncSecondaryDisks": { + "additionalProperties": { + "$ref": "DiskResourceStatusAsyncReplicationStatus" + }, + "description": "Key: disk, value: AsyncReplicationStatus message", + "type": "object" } }, "type": "object" }, - "Commitment": { - "description": "Represents a regional resource-based commitment resource.\n\nCreating this commitment resource means that you are purchasing a\nresource-based committed use contract, with an explicit start and end time.\nYou can purchase resource-based commitments for both hardware and software\nresources. For more information, read\nResource-based committed use discounts", - "id": "Commitment", + "DiskResourceStatusAsyncReplicationStatus": { + "id": "DiskResourceStatusAsyncReplicationStatus", "properties": { - "autoRenew": { - "description": "Specifies whether to automatically renew the commitment at the end of its\ncurrent term. The default value is false. If you set the field\nto true, each time your commitment reaches the end of its\nterm, Compute Engine automatically renews it for another term. You can\nupdate this field anytime before the commitment expires. For example, if\nthe commitment is set to expire at 12 AM UTC-8 on January 3, 2027, you can\nupdate this field until 11:59 PM UTC-8 on January 2, 2027.", - "type": "boolean" - }, - "category": { - "description": "The category of the commitment; specifies whether the commitment is for\nhardware or software resources. Category MACHINE specifies\nthat you are committing to hardware machine resources such asVCPU or MEMORY, listed in resources.\nCategory LICENSE specifies that you are committing to software\nlicenses, listed in licenseResources.\nNote that if you specify MACHINE commitments, then you must\nalso specify a type to indicate the machine series of the\nhardware resource that you are committing to.", + "state": { "enum": [ - "CATEGORY_UNSPECIFIED", - "LICENSE", - "MACHINE" + "ACTIVE", + "CREATED", + "STARTING", + "STATE_UNSPECIFIED", + "STOPPED", + "STOPPING" ], "enumDescriptions": [ + "Replication is active.", + "Secondary disk is created and is waiting for replication to start.", + "Replication is starting.", "", - "", - "" + "Replication is stopped.", + "Replication is stopping." ], "type": "string" - }, + } + }, + "type": "object" + }, + "DiskType": { + "description": "Represents a Disk Type resource.\n\nGoogle Compute Engine has two Disk Type resources:\n\n* [Regional](/compute/docs/reference/rest/v1/regionDiskTypes)\n* [Zonal](/compute/docs/reference/rest/v1/diskTypes)\n\nYou can choose from a variety of disk types based on your needs.\nFor more information, readStorage options.\n\nThe diskTypes resource represents disk types for a zonal\npersistent disk.\nFor more information, readZonal persistent disks.\n\nThe regionDiskTypes resource represents disk types for a\nregional persistent disk. For more information, read Regional persistent disks.", + "id": "DiskType", + "properties": { "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, + "description": "[Output Only] Creation timestamp inRFC3339\ntext format.", "type": "string" }, - "customEndTimestamp": { - "description": "[Input Only] Optional, specifies the requested commitment end time inRFC3339 text format. Use this option when the desired\ncommitment's end date is later than the start date + term duration.", + "defaultDiskSizeGb": { + "description": "[Output Only] Server-defined default disk size in GB.", + "format": "int64", "type": "string" }, - "description": { - "description": "An optional description of the commitment. You can provide this property\nwhen you create the resource.", - "type": "string" + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this disk type." }, - "endTimestamp": { - "description": "Output only. [Output Only] Commitment end time inRFC3339\ntext format.", - "readOnly": true, + "description": { + "description": "[Output Only] An optional description of this resource.", "type": "string" }, - "existingReservations": { - "items": { - "type": "string" - }, - "type": "array" - }, "id": { - "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "format": "uint64", - "readOnly": true, "type": "string" }, "kind": { - "default": "compute#commitment", - "description": "Output only. [Output Only] Type of the resource. Always compute#commitment\nfor commitments.", + "default": "compute#diskType", + "description": "Output only. [Output Only] Type of the resource. Always compute#diskType\nfor disk types.", "readOnly": true, "type": "string" }, - "licenseResource": { - "$ref": "LicenseResourceCommitment", - "description": "The license specification required as part of a license commitment." - }, - "mergeSourceCommitments": { - "description": "The list of source commitments that you are merging to create the new\nmerged commitment. For more information, see\nMerging commitments.", - "items": { - "type": "string" - }, - "type": "array" - }, "name": { - "description": "Name of the commitment. You must specify a name when you purchase the\ncommitment. The name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "description": "[Output Only] Name of the resource.", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" - }, - "plan": { - "description": "The minimum time duration that you commit to purchasing resources.\nThe plan that you choose determines the preset term length of the\ncommitment (which is 1 year or 3 years) and affects the discount rate that\nyou receive for your resources. Committing to a longer time duration\ntypically gives you a higher discount rate. The supported values for this\nfield are TWELVE_MONTH (1 year), andTHIRTY_SIX_MONTH (3 years).", - "enum": [ - "INVALID", - "THIRTY_SIX_MONTH", - "TWELVE_MONTH" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "type": "string" - }, - "region": { - "description": "Output only. [Output Only] URL of the region where the commitment and committed\nresources are located.", - "readOnly": true, - "type": "string" - }, - "reservations": { - "description": "The list of new reservations that you want to create and attach to this\ncommitment.\n\nYou must attach reservations to your commitment if your commitment\nspecifies any GPUs or Local SSD disks. For more information, see \nAttach reservations to resource-based commitments.\n\nSpecify this property only if you want to create new\nreservations to attach. To attach existing reservations, specify theexistingReservations property instead.", - "items": { - "$ref": "Reservation" - }, - "type": "array" - }, - "resourceStatus": { - "$ref": "CommitmentResourceStatus", - "description": "Output only. [Output Only] Status information for Commitment resource.", - "readOnly": true - }, - "resources": { - "description": "The list of all the hardware resources, with their types and amounts, that\nyou want to commit to. Specify as a separate entry in the list for each\nindividual resource type.", - "items": { - "$ref": "ResourceCommitment" - }, - "type": "array" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for the resource.", - "readOnly": true, - "type": "string" - }, - "splitSourceCommitment": { - "description": "The source commitment from which you are transferring resources to create\nthe new split commitment. For more information, see \nSplit commitments.", - "type": "string" - }, - "startTimestamp": { - "description": "Output only. [Output Only] Commitment start time inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "status": { - "description": "Output only. [Output Only] Status of the commitment with regards to eventual expiration\n(each commitment has an end date defined). Status can be one of the\nfollowing values: NOT_YET_ACTIVE, ACTIVE, orEXPIRED.", - "enum": [ - "ACTIVE", - "CANCELLED", - "CREATING", - "EXPIRED", - "NOT_YET_ACTIVE" - ], - "enumDescriptions": [ - "", - "Deprecate CANCELED status. Will use separate status to differentiate\ncancel by mergeCud or manual cancellation.", - "", - "", - "" - ], - "readOnly": true, - "type": "string" - }, - "statusMessage": { - "description": "Output only. [Output Only] An optional, human-readable explanation of the status.", - "readOnly": true, - "type": "string" - }, - "type": { - "description": "The type of commitment; specifies the\nmachine series for which you want to commit to purchasing resources.\nThe choice of machine series affects the discount rate and the eligible\nresource types.\n\n The type must be one of the following:ACCELERATOR_OPTIMIZED, ACCELERATOR_OPTIMIZED_A3,ACCELERATOR_OPTIMIZED_A3_MEGA,COMPUTE_OPTIMIZED, COMPUTE_OPTIMIZED_C2D,\n COMPUTE_OPTIMIZED_C3, COMPUTE_OPTIMIZED_C3D,COMPUTE_OPTIMIZED_H3, GENERAL_PURPOSE,GENERAL_PURPOSE_C4, GENERAL_PURPOSE_E2,GENERAL_PURPOSE_N2, GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED, GRAPHICS_OPTIMIZED_G4,MEMORY_OPTIMIZED, MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3. For\nexample, type MEMORY_OPTIMIZED specifies a commitment that\napplies only to eligible resources of memory optimized M1 and M2 machine\nseries. Type GENERAL_PURPOSE specifies a commitment that\napplies only to eligible resources of general purpose N1 machine series.", - "enum": [ - "ACCELERATOR_OPTIMIZED", - "ACCELERATOR_OPTIMIZED_A3", - "ACCELERATOR_OPTIMIZED_A3_MEGA", - "ACCELERATOR_OPTIMIZED_A3_ULTRA", - "ACCELERATOR_OPTIMIZED_A4", - "COMPUTE_OPTIMIZED", - "COMPUTE_OPTIMIZED_C2D", - "COMPUTE_OPTIMIZED_C3", - "COMPUTE_OPTIMIZED_C3D", - "COMPUTE_OPTIMIZED_H3", - "COMPUTE_OPTIMIZED_H4D", - "GENERAL_PURPOSE", - "GENERAL_PURPOSE_C4", - "GENERAL_PURPOSE_C4A", - "GENERAL_PURPOSE_C4D", - "GENERAL_PURPOSE_E2", - "GENERAL_PURPOSE_N2", - "GENERAL_PURPOSE_N2D", - "GENERAL_PURPOSE_N4", - "GENERAL_PURPOSE_N4A", - "GENERAL_PURPOSE_N4D", - "GENERAL_PURPOSE_T2D", - "GRAPHICS_OPTIMIZED", - "GRAPHICS_OPTIMIZED_G4", - "MEMORY_OPTIMIZED", - "MEMORY_OPTIMIZED_M3", - "MEMORY_OPTIMIZED_M4", - "MEMORY_OPTIMIZED_M4_6TB", - "MEMORY_OPTIMIZED_X4_1440_24T", - "MEMORY_OPTIMIZED_X4_16TB", - "MEMORY_OPTIMIZED_X4_1920_32T", - "MEMORY_OPTIMIZED_X4_24TB", - "MEMORY_OPTIMIZED_X4_32TB", - "MEMORY_OPTIMIZED_X4_480_6T", - "MEMORY_OPTIMIZED_X4_480_8T", - "MEMORY_OPTIMIZED_X4_960_12T", - "MEMORY_OPTIMIZED_X4_960_16T", - "STORAGE_OPTIMIZED_Z3", - "TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "CUD bucket for X4 machine with 1440 vCPUs and 24TB of memory.", - "", - "CUD bucket for X4 machine with 1920 vCPUs and 32TB of memory.", - "", - "", - "CUD bucket for X4 machine with 480 vCPUs and 6TB of memory.", - "CUD bucket for X4 machine with 480 vCPUs and 8TB of memory.", - "CUD bucket for X4 machine with 960 vCPUs and 12TB of memory.", - "CUD bucket for X4 machine with 960 vCPUs and 16TB of memory.", - "", - "Note for internal users: When adding a new enum Type for v1, make sure\nto also add it in the comment for the `optional Type type` definition.\nThis ensures that the public documentation displays the new enum Type." - ], + }, + "region": { + "description": "[Output Only] URL of the region where the disk type resides. Only\napplicable for regional resources.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "validDiskSize": { + "description": "[Output Only] An optional textual description of the valid disk size,\nsuch as \"10GB-10TB\".", + "type": "string" + }, + "zone": { + "description": "[Output Only] URL of the zone where the disk type resides.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", "type": "string" } }, "type": "object" }, - "CommitmentAggregatedList": { - "id": "CommitmentAggregatedList", + "DiskTypeAggregatedList": { + "id": "DiskTypeAggregatedList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", @@ -49221,15 +56461,15 @@ }, "items": { "additionalProperties": { - "$ref": "CommitmentsScopedList", - "description": "[Output Only] Name of the scope containing this set of commitments." + "$ref": "DiskTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of disk types." }, - "description": "A list of CommitmentsScopedList resources.", + "description": "A list of DiskTypesScopedList resources.", "type": "object" }, "kind": { - "default": "compute#commitmentAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#commitmentAggregatedList for aggregated lists of\ncommitments.", + "default": "compute#diskTypeAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#diskTypeAggregatedList.", "readOnly": true, "type": "string" }, @@ -49377,24 +56617,24 @@ }, "type": "object" }, - "CommitmentList": { - "description": "Contains a list of Commitment resources.", - "id": "CommitmentList", + "DiskTypeList": { + "description": "Contains a list of disk types.", + "id": "DiskTypeList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of Commitment resources.", + "description": "A list of DiskType resources.", "items": { - "$ref": "Commitment" + "$ref": "DiskType" }, "type": "array" }, "kind": { - "default": "compute#commitmentList", - "description": "Output only. [Output Only] Type of resource. Always compute#commitmentList\nfor lists of commitments.", + "default": "compute#diskTypeList", + "description": "Output only. [Output Only] Type of resource. Always compute#diskTypeList\nfor disk types.", "readOnly": true, "type": "string" }, @@ -49534,30 +56774,510 @@ }, "type": "object" }, - "CommitmentResourceStatus": { - "description": "[Output Only] Contains output only fields.", - "id": "CommitmentResourceStatus", + "DiskTypesScopedList": { + "id": "DiskTypesScopedList", "properties": { - "customTermEligibilityEndTimestamp": { - "description": "Output only. [Output Only] Indicates the end time of customer's eligibility to send\ncustom term requests in RFC3339 text format. Term extension requests that\n(not the end time in the request) after this time will be rejected.", - "readOnly": true, + "diskTypes": { + "description": "[Output Only] A list of disk types contained in this scope.", + "items": { + "$ref": "DiskType" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of disk types\nwhen the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DiskUpdateKmsKeyRequest": { + "id": "DiskUpdateKmsKeyRequest", + "properties": { + "kmsKeyName": { + "description": "Optional. The new KMS key to replace the current one on the disk. If empty, the disk\nwill be re-encrypted using the primary version of the disk's current KMS\nkey.\n\nThe KMS key can be provided in the following formats:\n \n \n - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key\n\n\nWhere project is the project ID or\nproject number.", + "type": "string" + } + }, + "type": "object" + }, + "DisksAddResourcePoliciesRequest": { + "id": "DisksAddResourcePoliciesRequest", + "properties": { + "resourcePolicies": { + "description": "Full or relative path to the resource policy to be added to this disk. You\ncan only specify one resource policy.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "DisksRemoveResourcePoliciesRequest": { + "id": "DisksRemoveResourcePoliciesRequest", + "properties": { + "resourcePolicies": { + "description": "Resource policies to be removed from this disk.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "DisksResizeRequest": { + "id": "DisksResizeRequest", + "properties": { + "sizeGb": { + "description": "The new size of the persistent disk, which is specified in GB.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "DisksScopedList": { + "id": "DisksScopedList", + "properties": { + "disks": { + "description": "[Output Only] A list of disks contained in this scope.", + "items": { + "$ref": "Disk" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of disks when\nthe list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "DisksStartAsyncReplicationRequest": { + "id": "DisksStartAsyncReplicationRequest", + "properties": { + "asyncSecondaryDisk": { + "description": "The secondary disk to start asynchronous replication to.\nYou can provide this as a partial or full URL to the resource. For example,\nthe following are valid values:\n \n \n - \n https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk\n \n - \n https://www.googleapis.com/compute/v1/projects/project/regions/region/disks/disk\n \n - \n projects/project/zones/zone/disks/disk\n \n - \n projects/project/regions/region/disks/disk\n \n - \n zones/zone/disks/disk\n \n - \n regions/region/disks/disk", + "type": "string" + } + }, + "type": "object" + }, + "DisksStopGroupAsyncReplicationResource": { + "description": "A transient resource used in compute.disks.stopGroupAsyncReplication and\ncompute.regionDisks.stopGroupAsyncReplication. It is only used to process\nrequests and is not persisted.", + "id": "DisksStopGroupAsyncReplicationResource", + "properties": { + "resourcePolicy": { + "description": "The URL of the DiskConsistencyGroupPolicy for the group of disks to stop.\nThis may be a full or partial URL, such as:\n \n \n - \n https://www.googleapis.com/compute/v1/projects/project/regions/region/resourcePolicies/resourcePolicy\n \n - \n projects/project/regions/region/resourcePolicies/resourcePolicy\n \n - \n regions/region/resourcePolicies/resourcePolicy", + "type": "string" + } + }, + "type": "object" + }, + "DisplayDevice": { + "description": "A set of Display Device options", + "id": "DisplayDevice", + "properties": { + "enableDisplay": { + "description": "Defines whether the instance has Display enabled.", + "type": "boolean" + } + }, + "type": "object" + }, + "DistributionPolicy": { + "id": "DistributionPolicy", + "properties": { + "targetShape": { + "description": "The distribution shape to which the group converges either proactively or\non resize events (depending on the value set inupdatePolicy.instanceRedistributionType).", + "enum": [ + "ANY", + "ANY_SINGLE_ZONE", + "BALANCED", + "EVEN" + ], + "enumDescriptions": [ + "The group picks zones for creating VM instances to fulfill the requested\nnumber of VMs within present resource constraints and to maximize\nutilization of unused zonal reservations. Recommended for batch workloads\nthat do not require high availability.", + "The group creates all VM instances within a single zone. The zone is\nselected based on the present resource constraints and to maximize\nutilization of unused zonal reservations.\nRecommended for batch workloads with heavy interprocess communication.", + "The group prioritizes acquisition of resources, scheduling VMs in zones\nwhere resources are available while distributing VMs as evenly as\npossible across selected zones to minimize the impact of zonal failure.\nRecommended for highly available serving workloads.", + "The group schedules VM instance creation and deletion to achieve and\nmaintain an even number of managed instances across the selected zones.\nThe distribution is even when the number of managed instances does not\ndiffer by more than 1 between any two zones. Recommended for highly\navailable serving workloads." + ], + "type": "string" + }, + "zones": { + "description": "Zones where the regional managed instance group will create and manage\nits instances.\nBy default, a regional MIG doesn't automatically select an AI zone to create\ninstances, even if an AI zone is available in the specified region. To\ncreate instances in an AI zone in the selected region, you must explicitly\nspecify it in the distribution policy together with the other preferred\nzones.", + "items": { + "$ref": "DistributionPolicyZoneConfiguration" + }, + "type": "array" + } + }, + "type": "object" + }, + "DistributionPolicyZoneConfiguration": { + "id": "DistributionPolicyZoneConfiguration", + "properties": { + "zone": { + "annotations": { + "required": [ + "compute.regionInstanceGroupManagers.insert" + ] + }, + "description": "The URL of thezone.\nThe zone must exist in the region where the managed instance group is\nlocated.", + "type": "string" + } + }, + "type": "object" + }, + "Duration": { + "description": "A Duration represents a fixed-length span of time represented\nas a count of seconds and fractions of seconds at nanosecond\nresolution. It is independent of any calendar and concepts like \"day\"\nor \"month\". Range is approximately 10,000 years.", + "id": "Duration", + "properties": { + "nanos": { + "description": "Span of time that's a fraction of a second at nanosecond resolution.\nDurations less than one second are represented with a 0\n`seconds` field and a positive `nanos` field. Must be from 0\nto 999,999,999 inclusive.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Span of time at a resolution of a second. Must be from 0\nto 315,576,000,000 inclusive. Note: these bounds are computed from:\n60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ErrorInfo": { + "description": "Describes the cause of the error with structured details.\n\nExample of an error when contacting the \"pubsub.googleapis.com\" API when it\nis not enabled:\n\n { \"reason\": \"API_DISABLED\"\n \"domain\": \"googleapis.com\"\n \"metadata\": {\n \"resource\": \"projects/123\",\n \"service\": \"pubsub.googleapis.com\"\n }\n }\n\nThis response indicates that the pubsub.googleapis.com API is not enabled.\n\nExample of an error that is returned when attempting to create a Spanner\ninstance in a region that is out of stock:\n\n { \"reason\": \"STOCKOUT\"\n \"domain\": \"spanner.googleapis.com\",\n \"metadata\": {\n \"availableRegions\": \"us-central1,us-east2\"\n }\n }", + "id": "ErrorInfo", + "properties": { + "domain": { + "description": "The logical grouping to which the \"reason\" belongs. The error domain\nis typically the registered service name of the tool or product that\ngenerates the error. Example: \"pubsub.googleapis.com\". If the error is\ngenerated by some common infrastructure, the error domain must be a\nglobally unique value that identifies the infrastructure. For Google API\ninfrastructure, the error domain is \"googleapis.com\".", + "type": "string" + }, + "metadatas": { + "additionalProperties": { + "type": "string" + }, + "description": "Additional structured details about this error.\n\nKeys must match a regular expression of `a-z+` but should\nideally be lowerCamelCase. Also, they must be limited to 64 characters in\nlength. When identifying the current value of an exceeded limit, the units\nshould be contained in the key, not the value. For example, rather than\n`{\"instanceLimit\": \"100/request\"}`, should be returned as,\n`{\"instanceLimitPerRequest\": \"100\"}`, if the client exceeds the number of\ninstances that can be created in a single (batch) request.", + "type": "object" + }, + "reason": { + "description": "The reason of the error. This is a constant value that identifies the\nproximate cause of the error. Error reasons are unique within a particular\ndomain of errors. This should be at most 63 characters and match a\nregular expression of `A-Z+[A-Z0-9]`, which represents\nUPPER_SNAKE_CASE.", + "type": "string" + } + }, + "type": "object" + }, + "ExchangedPeeringRoute": { + "id": "ExchangedPeeringRoute", + "properties": { + "destRange": { + "description": "The destination range of the route.", + "type": "string" + }, + "imported": { + "description": "True if the peering route has been imported from a peer. The actual import\nhappens if the field networkPeering.importCustomRoutes is true\nfor this network, and networkPeering.exportCustomRoutes is\ntrue for the peer network, and the import does not result in a route\nconflict.", + "type": "boolean" + }, + "nextHopRegion": { + "description": "The region of peering route next hop, only applies to dynamic routes.", + "type": "string" + }, + "priority": { + "description": "The priority of the peering route.", + "format": "uint32", + "type": "integer" + }, + "type": { + "description": "The type of the peering route.", + "enum": [ + "DYNAMIC_PEERING_ROUTE", + "STATIC_PEERING_ROUTE", + "SUBNET_PEERING_ROUTE" + ], + "enumDescriptions": [ + "For routes exported from local network.", + "The peering route.", + "The peering route corresponding to subnetwork range." + ], "type": "string" } }, "type": "object" }, - "CommitmentsScopedList": { - "id": "CommitmentsScopedList", + "ExchangedPeeringRoutesList": { + "id": "ExchangedPeeringRoutesList", "properties": { - "commitments": { - "description": "[Output Only] The list of commitments contained in this scope.", + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of ExchangedPeeringRoute resources.", "items": { - "$ref": "Commitment" + "$ref": "ExchangedPeeringRoute" }, "type": "array" }, + "kind": { + "default": "compute#exchangedPeeringRoutesList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#exchangedPeeringRoutesList for exchanged peering\nroutes lists.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, "warning": { - "description": "[Output Only] Informational warning which replaces the list of commitments\nwhen the list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -49683,180 +57403,132 @@ }, "type": "object" }, - "ConfidentialInstanceConfig": { - "description": "A set of Confidential Instance options.", - "id": "ConfidentialInstanceConfig", + "Expr": { + "description": "Represents a textual expression in the Common Expression Language (CEL)\nsyntax. CEL is a C-like expression language. The syntax and semantics of CEL\nare documented at https://github.com/google/cel-spec.\n\nExample (Comparison):\n\n title: \"Summary size limit\"\n description: \"Determines if a summary is less than 100 chars\"\n expression: \"document.summary.size() < 100\"\n\nExample (Equality):\n\n title: \"Requestor is owner\"\n description: \"Determines if requestor is the document owner\"\n expression: \"document.owner == request.auth.claims.email\"\n\nExample (Logic):\n\n title: \"Public documents\"\n description: \"Determine whether the document should be publicly visible\"\n expression: \"document.type != 'private' && document.type != 'internal'\"\n\nExample (Data Manipulation):\n\n title: \"Notification string\"\n description: \"Create a notification string with a timestamp.\"\n expression: \"'New message received at ' + string(document.create_time)\"\n\nThe exact variables and functions that may be referenced within an expression\nare determined by the service that evaluates it. See the service\ndocumentation for additional information.", + "id": "Expr", "properties": { - "confidentialInstanceType": { - "description": "Defines the type of technology used by the confidential instance.", - "enum": [ - "CONFIDENTIAL_INSTANCE_TYPE_UNSPECIFIED", - "SEV", - "SEV_SNP", - "TDX" - ], - "enumDescriptions": [ - "No type specified. Do not use this value.", - "AMD Secure Encrypted Virtualization.", - "AMD Secure Encrypted Virtualization - Secure Nested Paging.", - "Intel Trust Domain eXtension." - ], + "description": { + "description": "Optional. Description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", "type": "string" }, - "enableConfidentialCompute": { - "description": "Defines whether the instance should have confidential compute enabled.", - "type": "boolean" - } - }, - "type": "object" - }, - "ConnectionDraining": { - "description": "Message containing connection draining configuration.", - "id": "ConnectionDraining", - "properties": { - "drainingTimeoutSec": { - "description": "Configures a duration timeout for existing requests on a removed backend\ninstance. For supported load balancers and protocols, as described inEnabling\nconnection draining.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "ConsistentHashLoadBalancerSettings": { - "description": "This message defines settings for a consistent hash style load balancer.", - "id": "ConsistentHashLoadBalancerSettings", - "properties": { - "httpCookie": { - "$ref": "ConsistentHashLoadBalancerSettingsHttpCookie", - "description": "Hash is based on HTTP Cookie. This field describes a HTTP cookie that will\nbe used as the hash key for the consistent hash load balancer. If the\ncookie is not present, it will be generated. This field is applicable if\nthe sessionAffinity is set to HTTP_COOKIE.\n\nNot supported when the backend service is referenced by a URL map that is\nbound to target gRPC proxy that has validateForProxyless field set to true." + "expression": { + "description": "Textual representation of an expression in Common Expression Language\nsyntax.", + "type": "string" }, - "httpHeaderName": { - "description": "The hash based on the value of the specified header field. This field is\napplicable if the sessionAffinity is set toHEADER_FIELD.", + "location": { + "description": "Optional. String indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.", "type": "string" }, - "minimumRingSize": { - "description": "The minimum number of virtual nodes to use for the hash ring. Defaults to\n1024. Larger ring sizes result in more granular load distributions. If the\nnumber of hosts in the load balancing pool is larger than the ring size,\neach host will be assigned a single virtual node.", - "format": "int64", + "title": { + "description": "Optional. Title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", "type": "string" } }, "type": "object" }, - "ConsistentHashLoadBalancerSettingsHttpCookie": { - "description": "The information about the HTTP Cookie on which the hash function is based\nfor load balancing policies that use a consistent hash.", - "id": "ConsistentHashLoadBalancerSettingsHttpCookie", + "ExternalVpnGateway": { + "description": "Represents an external VPN gateway.\n\nExternal VPN gateway is the on-premises VPN gateway(s) or another cloud\nprovider's VPN gateway that connects to your Google Cloud VPN gateway.\n\nTo create a highly available VPN from Google Cloud Platform to your\nVPN gateway or another cloud provider's VPN gateway, you must create a\nexternal VPN gateway resource with information about the other gateway.\n\nFor more information about using external VPN gateways, see\nCreating an HA VPN gateway and tunnel pair to a peer VPN.", + "id": "ExternalVpnGateway", "properties": { - "name": { - "description": "Name of the cookie.", + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, "type": "string" }, - "path": { - "description": "Path to set for the cookie.", + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", "type": "string" }, - "ttl": { - "$ref": "Duration", - "description": "Lifetime of the cookie." - } - }, - "type": "object" - }, - "CorsPolicy": { - "description": "The specification for allowing client-side cross-origin requests. For more\ninformation about the W3C recommendation for cross-origin resource sharing\n(CORS), see Fetch API Living\nStandard.", - "id": "CorsPolicy", - "properties": { - "allowCredentials": { - "description": "In response to a preflight request, setting this to true\nindicates that\nthe actual request can include user credentials. This field translates to\nthe Access-Control-Allow-Credentials header.\n\nDefault is false.", - "type": "boolean" + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, + "type": "string" }, - "allowHeaders": { - "description": "Specifies the content for the Access-Control-Allow-Headers\nheader.", + "interfaces": { + "description": "A list of interfaces for this external VPN gateway.\n\nIf your peer-side gateway is an on-premises gateway and non-AWS cloud\nproviders' gateway, at most two interfaces can be provided for an external\nVPN gateway. If your peer side is an AWS virtual private gateway, four\ninterfaces should be provided for an external VPN gateway.", "items": { - "type": "string" + "$ref": "ExternalVpnGatewayInterface" }, "type": "array" }, - "allowMethods": { - "description": "Specifies the content for the Access-Control-Allow-Methods\nheader.", - "items": { - "type": "string" - }, - "type": "array" + "kind": { + "default": "compute#externalVpnGateway", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#externalVpnGateway for externalVpnGateways.", + "readOnly": true, + "type": "string" }, - "allowOriginRegexes": { - "description": "Specifies a regular expression that matches allowed origins. For\nmore information, see regular expression syntax. \n\nAn origin is allowed if it matches either an item inallowOrigins or an item inallowOriginRegexes.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED.", - "items": { + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this ExternalVpnGateway,\nwhich is essentially a hash of the labels set used for optimistic locking.\nThe fingerprint is initially generated by Compute Engine and changes after\nevery request to modify or update labels. You must always provide an\nup-to-date fingerprint hash in order to update or change labels,\notherwise the request will fail with error412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve an ExternalVpnGateway.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { "type": "string" }, - "type": "array" + "description": "Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035.\nLabel values may be empty.", + "type": "object" }, - "allowOrigins": { - "description": "Specifies the list of origins that is allowed to do CORS requests.\n\nAn origin is allowed if it matches either an item inallowOrigins or an item inallowOriginRegexes.", - "items": { - "type": "string" + "name": { + "annotations": { + "required": [ + "compute.externalVpnGateways.insert" + ] }, - "type": "array" + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" }, - "disabled": { - "description": "If true, disables the CORS policy.\nThe default value is false, which indicates that the CORS\npolicy is in effect.", - "type": "boolean" + "params": { + "$ref": "ExternalVpnGatewayParams", + "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." }, - "exposeHeaders": { - "description": "Specifies the content for the Access-Control-Expose-Headers\nheader.", - "items": { - "type": "string" - }, - "type": "array" + "redundancyType": { + "description": "Indicates the user-supplied redundancy type of this external VPN gateway.", + "enum": [ + "FOUR_IPS_REDUNDANCY", + "SINGLE_IP_INTERNALLY_REDUNDANT", + "TWO_IPS_REDUNDANCY" + ], + "enumDescriptions": [ + "The external VPN gateway has four public IP addresses; at the time of\nwriting this API, the AWS virtual private gateway is an example which has\nfour public IP addresses for high availability connections; there should\nbe two VPN connections in the AWS virtual private gateway , each AWS VPN\nconnection has two public IP addresses; please make sure to put two\npublic IP addresses from one AWS VPN connection into interfaces 0 and 1\nof this external VPN gateway, and put the other two public IP addresses\nfrom another AWS VPN connection into interfaces 2 and 3 of this external\nVPN gateway. When displaying highly available configuration status\nfor the VPN tunnels connected to FOUR_IPS_REDUNDANCY external VPN\ngateway, Google will always detect whether interfaces 0 and 1 are\nconnected on one interface of HA Cloud VPN gateway, and detect whether\ninterfaces 2 and 3 are connected to another interface of the HA Cloud VPN\ngateway.", + "The external VPN gateway has only one public IP address which internally\nprovide redundancy or failover.", + "The external VPN gateway has two public IP addresses which are redundant\nwith each other, the following two types of setup on your on-premises\nside would have this type of redundancy:\n(1) Two separate on-premises gateways, each with one public IP address,\n the two on-premises gateways are redundant with each other.\n(2) A single on-premise gateway with two public IP addresses that are\n redundant with eatch other." + ], + "type": "string" }, - "maxAge": { - "description": "Specifies how long results of a preflight request can be cached in\nseconds. This field translates to the Access-Control-Max-Age\nheader.", - "format": "int32", - "type": "integer" + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for the resource.", + "readOnly": true, + "type": "string" } }, "type": "object" }, - "CrossSiteNetwork": { - "description": "A resource that represents a cross-site network.\n\nYou can use cross-site networks to connect your on-premises networks to\neach other through Interconnect connections.", - "id": "CrossSiteNetwork", + "ExternalVpnGatewayInterface": { + "description": "The interface for the external VPN gateway.", + "id": "ExternalVpnGatewayInterface", "properties": { - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "An optional description of the cross-site network.", - "type": "string" - }, "id": { - "description": "Output only. [Output Only] The unique identifier for the resource type. The server\ngenerates this identifier.", - "format": "uint64", - "readOnly": true, - "type": "string" - }, - "kind": { - "default": "compute#crossSiteNetwork", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#crossSiteNetwork for cross-site networks.", - "readOnly": true, - "type": "string" + "description": "The numeric ID of this interface.\nThe allowed input values for this id for different redundancy types of\nexternal VPN gateway:\n \n - SINGLE_IP_INTERNALLY_REDUNDANT - 0\n - TWO_IPS_REDUNDANCY - 0, 1\n - FOUR_IPS_REDUNDANCY - 0, 1, 2, 3", + "format": "uint32", + "type": "integer" }, - "name": { - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "ipAddress": { + "description": "IP address of the interface in the external VPN gateway. Only IPv4 is\nsupported. This IP address can be either from your on-premise gateway or\nanother Cloud provider's VPN gateway, it cannot be an IP address from\nGoogle Compute Engine.", "type": "string" }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for the resource.", - "readOnly": true, + "ipv6Address": { + "description": "IPv6 address of the interface in the external VPN gateway. This IPv6\naddress can be either from your on-premise gateway or another Cloud\nprovider's VPN gateway, it cannot be an IP address from Google Compute\nEngine. Must specify an IPv6 address (not IPV4-mapped) using any format\ndescribed in RFC 4291 (e.g. 2001:db8:0:0:2d9:51:0:0). The output format\nis RFC 5952 format (e.g. 2001:db8::2d9:51:0:0).", "type": "string" } }, "type": "object" }, - "CrossSiteNetworkList": { - "description": "Response to the list request that contains a list of cross-site networks.", - "id": "CrossSiteNetworkList", + "ExternalVpnGatewayList": { + "description": "Response to the list request, and contains a list of externalVpnGateways.", + "id": "ExternalVpnGatewayList", "properties": { "etag": { "type": "string" @@ -49866,15 +57538,15 @@ "type": "string" }, "items": { - "description": "A list of CrossSiteNetwork resources.", + "description": "A list of ExternalVpnGateway resources.", "items": { - "$ref": "CrossSiteNetwork" + "$ref": "ExternalVpnGateway" }, "type": "array" }, "kind": { - "default": "compute#crossSiteNetwork", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#crossSiteNetwork for cross-site networks.", + "default": "compute#externalVpnGatewayList", + "description": "Output only. [Output Only] Type of resource. Always compute#externalVpnGatewayList for lists of externalVpnGateways.", "readOnly": true, "type": "string" }, @@ -49883,16 +57555,9 @@ "type": "string" }, "selfLink": { - "description": "[Output Only] Server-defined URL for this resource.", - "type": "string" - }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", - "items": { - "type": "string" - }, + "description": "Output only. [Output Only] Server-defined URL for this resource.", "readOnly": true, - "type": "array" + "type": "string" }, "warning": { "description": "[Output Only] Informational warning message.", @@ -50021,139 +57686,35 @@ }, "type": "object" }, - "CustomErrorResponsePolicy": { - "description": "Specifies the custom error response policy that must be applied when the\nbackend service or backend bucket responds with an error.", - "id": "CustomErrorResponsePolicy", - "properties": { - "errorResponseRules": { - "description": "Specifies rules for returning error responses.\n\nIn a given policy, if you specify rules for both a range of error codes\nas well as rules for specific error codes then rules with specific error\ncodes have a higher priority. For example, assume that you configure a rule\nfor 401 (Un-authorized) code, and another for all 4 series\nerror codes (4XX). If the backend service returns a401, then the rule for 401 will be applied.\nHowever if the backend service returns a 403, the rule for4xx takes effect.", - "items": { - "$ref": "CustomErrorResponsePolicyCustomErrorResponseRule" - }, - "type": "array" - }, - "errorService": { - "description": "The full or partial URL to the BackendBucket resource that\ncontains the custom error content. Examples are:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket\n - compute/v1/projects/project/global/backendBuckets/myBackendBucket\n - global/backendBuckets/myBackendBucket\n\nIf errorService is not specified at lower levels likepathMatcher, pathRule and routeRule,\nan errorService specified at a higher level in theUrlMap will be used. IfUrlMap.defaultCustomErrorResponsePolicy contains one or moreerrorResponseRules[], it must specifyerrorService. \n\nIf load balancer cannot reach\nthe backendBucket, a simple Not Found Error will\nbe returned, with the original response code (oroverrideResponseCode if configured).\n\nerrorService is not supported for internal or regionalHTTP/HTTPS load balancers.", - "type": "string" - } - }, - "type": "object" - }, - "CustomErrorResponsePolicyCustomErrorResponseRule": { - "description": "Specifies the mapping between the response code that will be returned along\nwith the custom error content and the response code returned by the backend\nservice.", - "id": "CustomErrorResponsePolicyCustomErrorResponseRule", + "ExternalVpnGatewayParams": { + "id": "ExternalVpnGatewayParams", "properties": { - "matchResponseCodes": { - "description": "Valid values include:\n \n \n - A number between 400 and 599: For example\n 401 or 503, in which case the load balancer\n applies the policy if the error code exactly matches this value.\n - 5xx: Load Balancer will apply the policy if the\n backend service responds with any response code in the range of\n 500 to 599. \n - 4xx: Load\n Balancer will apply the policy if the backend service responds with any\n response code in the range of 400 to\n 499.\n\nValues must be unique within matchResponseCodes and across allerrorResponseRules ofCustomErrorResponsePolicy.", - "items": { + "resourceManagerTags": { + "additionalProperties": { "type": "string" }, - "type": "array" - }, - "overrideResponseCode": { - "description": "The HTTP status code returned with the response containing the custom\nerror content. If overrideResponseCode is not supplied, the\nsame response code returned by the original backend bucket or backend\nservice is returned to the client.", - "format": "int32", - "type": "integer" - }, - "path": { - "description": "The full path to a file within backendBucket . For example:/errors/defaultError.html \n\npath must start\nwith a leading slash. path cannot have trailing slashes.\n\nIf the file is not available in backendBucket or the\nload balancer cannot reach the BackendBucket, a simpleNot Found Error is returned to the client. \n\nThe value must\nbe from 1 to 1024 characters", - "type": "string" - } - }, - "type": "object" - }, - "CustomerEncryptionKey": { - "id": "CustomerEncryptionKey", - "properties": { - "kmsKeyName": { - "description": "The name of the encryption key that is stored in Google Cloud KMS.\nFor example:\n\n\"kmsKeyName\": \"projects/kms_project_id/locations/region/keyRings/\nkey_region/cryptoKeys/key\n\nThe fully-qualifed key name may be returned for resource GET requests. For \nexample: \n\n\"kmsKeyName\": \"projects/kms_project_id/locations/region/keyRings/\nkey_region/cryptoKeys/key\n/cryptoKeyVersions/1", - "type": "string" - }, - "kmsKeyServiceAccount": { - "description": "The service account being used for the encryption request for the given KMS\nkey. If absent, the Compute Engine default service account is used.\nFor example:\n\n\"kmsKeyServiceAccount\": \"name@project_id.iam.gserviceaccount.com/", - "type": "string" - }, - "rawKey": { - "description": "Specifies a 256-bit customer-supplied\nencryption key, encoded in RFC\n4648 base64 to either encrypt or decrypt this resource. You can\nprovide either the rawKey or thersaEncryptedKey.\nFor example:\n\n\"rawKey\":\n\"SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0=\"", - "type": "string" - }, - "rsaEncryptedKey": { - "description": "Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit\ncustomer-supplied encryption key to either encrypt or decrypt this\nresource. You can provide either the rawKey or thersaEncryptedKey.\nFor example:\n\n\"rsaEncryptedKey\":\n\"ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH\nz0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD\nD6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe==\"\n\nThe key must meet the following requirements before you can provide it to \nCompute Engine: \n \n 1. The key is wrapped using a RSA public key certificate provided by \n Google. \n 2. After being wrapped, the key must be encoded in RFC 4648 base64 \n encoding. \n\nGets the RSA public key certificate provided by Google at: \n\n\nhttps://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem", - "type": "string" - }, - "sha256": { - "description": "[Output only] TheRFC\n4648 base64 encoded SHA-256 hash of the customer-supplied\nencryption key that protects this resource.", - "type": "string" - } - }, - "type": "object" - }, - "CustomerEncryptionKeyProtectedDisk": { - "id": "CustomerEncryptionKeyProtectedDisk", - "properties": { - "diskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Decrypts data associated with the disk with acustomer-supplied\nencryption key." - }, - "source": { - "description": "Specifies a valid partial or full URL to an existing Persistent Disk\nresource. This field is only applicable for persistent disks.\nFor example:\n\n\"source\": \"/compute/v1/projects/project_id/zones/zone/disks/\ndisk_name", - "type": "string" - } - }, - "type": "object" - }, - "Date": { - "description": "Represents a whole or partial calendar date, such as a birthday. The time of\nday and time zone are either specified elsewhere or are insignificant. The\ndate is relative to the Gregorian Calendar. This can represent one of the\nfollowing:\n\n* A full date, with non-zero year, month, and day values.\n* A month and day, with a zero year (for example, an anniversary).\n* A year on its own, with a zero month and a zero day.\n* A year and month, with a zero day (for example, a credit card expiration\n date).\n\nRelated types:\n\n* google.type.TimeOfDay\n* google.type.DateTime\n* google.protobuf.Timestamp", - "id": "Date", - "properties": { - "day": { - "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0\nto specify a year by itself or a year and month where the day isn't\nsignificant.", - "format": "int32", - "type": "integer" - }, - "month": { - "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a\nmonth and day.", - "format": "int32", - "type": "integer" - }, - "year": { - "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without\na year.", - "format": "int32", - "type": "integer" + "description": "Tag keys/values directly bound to this resource.\nTag keys and values have the same definition as resource\nmanager tags. The field is allowed for INSERT\nonly. The keys/values to set on the resource should be specified in\neither ID { : } or Namespaced format\n{ : }.\nFor example the following are valid inputs:\n* {\"tagKeys/333\" : \"tagValues/444\", \"tagKeys/123\" : \"tagValues/456\"}\n* {\"123/environment\" : \"production\", \"345/abc\" : \"xyz\"}\nNote:\n* Invalid combinations of ID & namespaced format is not supported. For\n instance: {\"123/environment\" : \"tagValues/444\"} is invalid.\n* Inconsistent format is not supported. For instance:\n {\"tagKeys/333\" : \"tagValues/444\", \"123/env\" : \"prod\"} is invalid.", + "type": "object" } }, "type": "object" }, - "DeprecationStatus": { - "description": "Deprecation status for a public resource.", - "id": "DeprecationStatus", + "FileContentBuffer": { + "id": "FileContentBuffer", "properties": { - "deleted": { - "description": "An optional RFC3339 timestamp on or after which the state of this\nresource is intended to change to DELETED. This is only\ninformational and the status will not change unless the client explicitly\nchanges it.", - "type": "string" - }, - "deprecated": { - "description": "An optional RFC3339 timestamp on or after which the state of this\nresource is intended to change to DEPRECATED. This is only\ninformational and the status will not change unless the client explicitly\nchanges it.", - "type": "string" - }, - "obsolete": { - "description": "An optional RFC3339 timestamp on or after which the state of this\nresource is intended to change to OBSOLETE. This is only\ninformational and the status will not change unless the client explicitly\nchanges it.", - "type": "string" - }, - "replacement": { - "description": "The URL of the suggested replacement for a deprecated resource.\nThe suggested replacement resource must be the same kind of resource as the\ndeprecated resource.", + "content": { + "description": "The raw content in the secure keys file.", + "format": "byte", "type": "string" }, - "state": { - "description": "The deprecation state of this resource. This can be ACTIVE,DEPRECATED, OBSOLETE, or DELETED.\nOperations which communicate the end of life date for an image, can useACTIVE. Operations which create a new resource using aDEPRECATED resource will return successfully, but with a\nwarning indicating the deprecated resource and recommending its\nreplacement. Operations which use OBSOLETE orDELETED resources will be rejected and result in an error.", + "fileType": { + "description": "The file type of source file.", "enum": [ - "ACTIVE", - "DELETED", - "DEPRECATED", - "OBSOLETE" + "BIN", + "UNDEFINED", + "X509" ], "enumDescriptions": [ - "", "", "", "" @@ -50163,325 +57724,182 @@ }, "type": "object" }, - "Disk": { - "description": "Represents a Persistent Disk resource.\n\nGoogle Compute Engine has two Disk resources:\n\n* [Zonal](/compute/docs/reference/rest/v1/disks)\n* [Regional](/compute/docs/reference/rest/v1/regionDisks)\n\nPersistent disks are required for running your VM instances.\nCreate both boot and non-boot (data) persistent disks. For more information,\nread Persistent Disks. For more\nstorage options, read Storage options.\n\nThe disks resource represents a zonal persistent disk.\nFor more information, readZonal persistent disks.\n\nThe regionDisks resource represents a\nregional persistent disk. For more information, read\nRegional resources.", - "id": "Disk", + "Firewall": { + "description": "Represents a Firewall Rule resource.\n\nFirewall rules allow or deny ingress traffic to, and egress traffic from your\ninstances. For more information, readFirewall rules.", + "id": "Firewall", "properties": { - "accessMode": { - "description": "The access mode of the disk.\n \n \n - READ_WRITE_SINGLE: The default AccessMode, means the\n disk can be attached to single instance in RW mode.\n - READ_WRITE_MANY: The AccessMode means the disk can be\n attached to multiple instances in RW mode.\n - READ_ONLY_MANY: The AccessMode means the disk can be\n attached to multiple instances in RO mode.\n\n\nThe AccessMode is only valid for Hyperdisk disk types.", - "enum": [ - "READ_ONLY_MANY", - "READ_WRITE_MANY", - "READ_WRITE_SINGLE" - ], - "enumDescriptions": [ - "The AccessMode means the disk can be attached to multiple instances in RO\nmode.", - "The AccessMode means the disk can be attached to multiple instances in RW\nmode.", - "The default AccessMode, means the disk can be attached to single instance\nin RW mode." - ], - "type": "string" - }, - "architecture": { - "description": "The architecture of the disk. Valid values are\nARM64 or X86_64.", - "enum": [ - "ARCHITECTURE_UNSPECIFIED", - "ARM64", - "X86_64" - ], - "enumDescriptions": [ - "Default value indicating Architecture is not set.", - "Machines with architecture ARM64", - "Machines with architecture X86_64" - ], - "type": "string" - }, - "asyncPrimaryDisk": { - "$ref": "DiskAsyncReplication", - "description": "Disk asynchronously replicated into this disk." - }, - "asyncSecondaryDisks": { - "additionalProperties": { - "$ref": "DiskAsyncReplicationList" - }, - "description": "Output only. [Output Only] A list of disks this disk is asynchronously replicated to.", - "readOnly": true, - "type": "object" - }, - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "diskEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Encrypts the disk using a\ncustomer-supplied encryption key or a \ncustomer-managed encryption key.\n\nEncryption keys do not protect access to metadata of the disk.\n\nAfter you encrypt a disk with a customer-supplied key, you must provide the\nsame key if you use the disk later. For example, to create a disk snapshot,\nto create a disk image, to create a machine image, or to attach the disk to\na virtual machine.\n\nAfter you encrypt a disk with a customer-managed key, thediskEncryptionKey.kmsKeyName is set to a key *version*\nname once the disk is created. The disk is encrypted with this version of\nthe key. In the response, diskEncryptionKey.kmsKeyName appears\nin the following format:\n\n\"diskEncryptionKey.kmsKeyName\":\n\"projects/kms_project_id/locations/region/keyRings/\nkey_region/cryptoKeys/key\n/cryptoKeysVersions/version\n\nIf you do not provide an encryption key when creating the disk, then the \ndisk is encrypted using an automatically generated key and you don't need \nto provide a key to use the disk later." - }, - "enableConfidentialCompute": { - "description": "Whether this disk is using confidential compute mode.", - "type": "boolean" - }, - "guestOsFeatures": { - "description": "A list of features to enable on the guest operating system. Applicable\nonly for bootable images. Read\nEnabling guest operating system features to see a list of available\noptions.", + "allowed": { + "description": "The list of ALLOW rules specified by this firewall. Each rule specifies a\nprotocol and port-range tuple that describes a permitted connection.", "items": { - "$ref": "GuestOsFeature" - }, - "type": "array" - }, - "id": { - "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "readOnly": true, - "type": "string" - }, - "kind": { - "default": "compute#disk", - "description": "Output only. [Output Only] Type of the resource. Always compute#disk for\ndisks.", - "readOnly": true, - "type": "string" - }, - "labelFingerprint": { - "description": "A fingerprint for the labels being applied to this disk, which is\nessentially a hash of the labels set used for optimistic locking. The\nfingerprint is initially generated by Compute Engine and changes after\nevery request to modify or update labels. You must always provide an\nup-to-date fingerprint hash in order to update or change labels,\notherwise the request will fail with error412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve a disk.", - "format": "byte", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" + "properties": { + "IPProtocol": { + "description": "The IP protocol to which this rule applies. The protocol type is\nrequired when creating a firewall rule. This value can either be one of the\nfollowing well known protocol strings (tcp, udp,icmp, esp, ah, ipip,sctp) or the IP protocol number.", + "type": "string" + }, + "ports": { + "description": "An optional list of ports to which this rule applies.\nThis field is only applicable for the UDP or TCP protocol.\nEach entry must be either an integer or a range.\nIf not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"],\nand [\"12345-12349\"].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, - "description": "Labels to apply to this disk. These can be later modified by\nthe setLabels method.", - "type": "object" - }, - "lastAttachTimestamp": { - "description": "Output only. [Output Only] Last attach timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" + "type": "array" }, - "lastDetachTimestamp": { - "description": "Output only. [Output Only] Last detach timestamp inRFC3339\ntext format.", + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", "readOnly": true, "type": "string" }, - "licenseCodes": { - "description": "Integer license codes indicating which licenses are attached to this disk.", + "denied": { + "description": "The list of DENY rules specified by this firewall. Each rule specifies a\nprotocol and port-range tuple that describes a denied connection.", "items": { - "format": "int64", - "type": "string" + "properties": { + "IPProtocol": { + "description": "The IP protocol to which this rule applies. The protocol type is\nrequired when creating a firewall rule. This value can either be one of the\nfollowing well known protocol strings (tcp, udp,icmp, esp, ah, ipip,sctp) or the IP protocol number.", + "type": "string" + }, + "ports": { + "description": "An optional list of ports to which this rule applies.\nThis field is only applicable for the UDP or TCP protocol.\nEach entry must be either an integer or a range.\nIf not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"],\nand [\"12345-12349\"].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, "type": "array" }, - "licenses": { - "description": "A list of publicly visible licenses. Reserved for Google's use.", + "description": { + "description": "An optional description of this resource. Provide this field when you\ncreate the resource.", + "type": "string" + }, + "destinationRanges": { + "description": "If destination ranges are specified, the firewall rule applies only to\ntraffic that has destination IP address in these ranges. These ranges must\nbe expressed inCIDR format. Both IPv4 and IPv6 are supported.", "items": { "type": "string" }, "type": "array" }, - "locationHint": { - "description": "An opaque location hint used to place the disk close to other resources.\nThis field is for use by internal tools that use the public API.", + "direction": { + "description": "Direction of traffic to which this firewall applies, either `INGRESS` or\n`EGRESS`. The default is `INGRESS`. For `EGRESS` traffic, you cannot\nspecify the sourceTags fields.", + "enum": [ + "EGRESS", + "INGRESS" + ], + "enumDescriptions": [ + "Indicates that firewall should apply to outgoing traffic.", + "Indicates that firewall should apply to incoming traffic." + ], + "type": "string" + }, + "disabled": { + "description": "Denotes whether the firewall rule is disabled. When set to true, the\nfirewall rule is not enforced and the network behaves as if it did not\nexist. If this is unspecified, the firewall rule will be enabled.", + "type": "boolean" + }, + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "compute#firewall", + "description": "Output only. [Output Only] Type of the resource. Always compute#firewall\nfor firewall rules.", + "readOnly": true, "type": "string" }, + "logConfig": { + "$ref": "FirewallLogConfig", + "description": "This field denotes the logging options for a particular firewall rule. If\nlogging is enabled, logs will be exported to Cloud Logging." + }, "name": { "annotations": { "required": [ - "compute.disks.insert" + "compute.firewalls.insert", + "compute.firewalls.patch" ] }, - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`\nwhich means the first character must be a lowercase letter, and all\nfollowing characters must be a dash, lowercase letter, or digit, except\nthe last character, which cannot be a dash.", + "description": "Name of the resource; provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character\nmust be a lowercase letter, and all following characters (except for the\nlast character) must be a dash, lowercase letter, or digit. The last\ncharacter must be a lowercase letter or digit.", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, - "options": { - "description": "Internal use only.", + "network": { + "description": "URL of the network resource for this firewall rule. If not\nspecified when creating a firewall rule, the default network\nis used:\n\nglobal/networks/default\n\nIf you choose to specify this field, you can specify the network as a full \nor partial URL. For example, the following are all valid URLs: \n \n - \n https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network \n - projects/myproject/global/networks/my-network \n - global/networks/default", "type": "string" }, "params": { - "$ref": "DiskParams", + "$ref": "FirewallParams", "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." }, - "physicalBlockSizeBytes": { - "description": "Physical block size of the persistent disk, in bytes.\nIf not present in a request, a default value is used.\nThe currently supported size is 4096, other sizes may be added in\nthe future.\nIf an unsupported value is requested, the error message will list\nthe supported values for the caller's project.", - "format": "int64", - "type": "string" - }, - "provisionedIops": { - "description": "Indicates how many IOPS to provision for the disk. This sets the number\nof I/O operations per second that the disk can handle. Values must be\nbetween 10,000 and 120,000. For more details, see theExtreme persistent\ndisk documentation.", - "format": "int64", - "type": "string" - }, - "provisionedThroughput": { - "description": "Indicates how much throughput to provision for the disk. This sets the\nnumber of throughput mb per second that the disk can handle. Values must be\ngreater than or equal to 1.", - "format": "int64", - "type": "string" + "priority": { + "description": "Priority for this rule.\nThis is an integer between `0` and `65535`, both inclusive.\nThe default value is `1000`.\nRelative priorities determine which rule takes effect if multiple rules\napply. Lower values indicate higher priority. For example, a rule with\npriority `0` has higher precedence than a rule with priority `1`.\nDENY rules take precedence over ALLOW rules if they have equal priority.\nNote that VPC networks have implied\nrules with a priority of `65535`. To avoid conflicts with the implied\nrules, use a priority number less than `65535`.", + "format": "int32", + "type": "integer" }, - "region": { - "description": "Output only. [Output Only] URL of the region where the disk resides. Only applicable for\nregional resources.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", - "readOnly": true, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", "type": "string" }, - "replicaZones": { - "description": "URLs of the zones where the disk should be replicated to. Only applicable\nfor regional resources.", + "sourceRanges": { + "description": "If source ranges are specified, the firewall rule applies only to traffic\nthat has a source IP address in these ranges. These ranges must be\nexpressed inCIDR format. One or both of sourceRanges\nand sourceTags may be set.\nIf both fields are set, the rule applies to traffic that has a\nsource IP address within sourceRanges OR a source IP\nfrom a resource with a matching tag listed in thesourceTags field. The connection does not need to match\nboth fields for the rule to\napply. Both IPv4 and IPv6 are supported.", "items": { "type": "string" }, "type": "array" }, - "resourcePolicies": { - "description": "Resource policies applied to this disk for automatic snapshot creations.", + "sourceServiceAccounts": { + "description": "If source service accounts are specified, the firewall rules apply only to\ntraffic originating from an instance with a service account in this list.\nSource service accounts cannot be used to control traffic to an instance's\nexternal IP address because service accounts are associated with an\ninstance, not an IP address.sourceRanges can be set at the same time assourceServiceAccounts.\nIf both are set, the firewall applies to traffic that\nhas a source IP address within the sourceRanges OR a source\nIP that belongs to an instance with service account listed insourceServiceAccount. The connection does not need to match\nboth fields for the firewall to apply.sourceServiceAccounts cannot be used at the same time assourceTags or targetTags.", "items": { "type": "string" }, "type": "array" }, - "resourceStatus": { - "$ref": "DiskResourceStatus", - "description": "Output only. [Output Only] Status information for the disk resource.", - "readOnly": true - }, - "satisfiesPzi": { - "description": "Output only. Reserved for future use.", - "readOnly": true, - "type": "boolean" - }, - "satisfiesPzs": { - "description": "Output only. [Output Only] Reserved for future use.", - "readOnly": true, - "type": "boolean" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", - "readOnly": true, - "type": "string" - }, - "sizeGb": { - "description": "Size, in GB, of the persistent disk. You can specify\nthis field when creating a persistent disk using thesourceImage, sourceSnapshot, orsourceDisk parameter, or specify it alone to create an empty\npersistent disk.\n\nIf you specify this field along with a source, the value ofsizeGb must not be less than the size of the\nsource.\nAcceptable values are greater than 0.", - "format": "int64", - "type": "string" - }, - "sourceConsistencyGroupPolicy": { - "description": "Output only. [Output Only] URL of the DiskConsistencyGroupPolicy for a secondary disk\nthat was created using a consistency group.", - "readOnly": true, - "type": "string" - }, - "sourceConsistencyGroupPolicyId": { - "description": "Output only. [Output Only] ID of the DiskConsistencyGroupPolicy for a secondary disk\nthat was created using a consistency group.", - "readOnly": true, - "type": "string" - }, - "sourceDisk": { - "description": "The source disk used to create this disk. You can provide this as a\npartial or full URL to the resource. For example, the following are valid\nvalues:\n \n \n - \n https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk\n \n - \n https://www.googleapis.com/compute/v1/projects/project/regions/region/disks/disk\n \n - \n projects/project/zones/zone/disks/disk\n \n - \n projects/project/regions/region/disks/disk\n \n - \n zones/zone/disks/disk\n \n - \n regions/region/disks/disk", - "type": "string" - }, - "sourceDiskId": { - "description": "Output only. [Output Only] The unique ID of the disk used to create this disk. This\nvalue identifies the exact disk that was used to create this persistent\ndisk. For example, if you created the persistent disk from a disk that\nwas later deleted and recreated under the same name, the source disk ID\nwould identify the exact version of the disk that was used.", - "readOnly": true, - "type": "string" - }, - "sourceImage": { - "description": "The source image used to create this disk. If the source image is\ndeleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify\nthe image by its family name. For example, specifyfamily/debian-9 to use the latest Debian 9 image:\n\nprojects/debian-cloud/global/images/family/debian-9\n\n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD\n\n\nTo create a disk with a custom image that you created, specify the\nimage name in the following format:\n\nglobal/images/my-custom-image\n\n\nYou can also specify a custom image by its image family, which returns\nthe latest version of the image in that family. Replace the image name\nwith family/family-name:\n\nglobal/images/family/my-image-family", - "type": "string" - }, - "sourceImageEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Thecustomer-supplied\nencryption key of the source image. Required if the source image is\nprotected by a customer-supplied encryption key." - }, - "sourceImageId": { - "description": "Output only. [Output Only] The ID value of the image used to create this disk. This\nvalue identifies the exact image that was used to create this persistent\ndisk. For example, if you created the persistent disk from an image that\nwas later deleted and recreated under the same name, the source image ID\nwould identify the exact version of the image that was used.", - "readOnly": true, - "type": "string" - }, - "sourceInstantSnapshot": { - "description": "The source instant snapshot used to create this disk. You can provide\nthis as a partial or full URL to the resource. For example, the following\nare valid values:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/instantSnapshots/instantSnapshot\n - projects/project/zones/zone/instantSnapshots/instantSnapshot \n - zones/zone/instantSnapshots/instantSnapshot", - "type": "string" - }, - "sourceInstantSnapshotId": { - "description": "Output only. [Output Only] The unique ID of the instant snapshot used to create this\ndisk. This value identifies the exact instant snapshot that was used to\ncreate this persistent disk. For example, if you created the persistent\ndisk from an instant snapshot that was later deleted and recreated under\nthe same name, the source instant snapshot ID would identify the exact\nversion of the instant snapshot that was used.", - "readOnly": true, - "type": "string" - }, - "sourceSnapshot": { - "description": "The source snapshot used to create this disk. You can provide this as a\npartial or full URL to the resource. For example, the following are valid\nvalues:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot \n - projects/project/global/snapshots/snapshot\n - global/snapshots/snapshot", - "type": "string" - }, - "sourceSnapshotEncryptionKey": { - "$ref": "CustomerEncryptionKey", - "description": "Thecustomer-supplied\nencryption key of the source snapshot. Required if the source snapshot\nis protected by a customer-supplied encryption key." - }, - "sourceSnapshotId": { - "description": "Output only. [Output Only] The unique ID of the snapshot used to create this disk. This\nvalue identifies the exact snapshot that was used to create this persistent\ndisk. For example, if you created the persistent disk from a snapshot that\nwas later deleted and recreated under the same name, the source snapshot ID\nwould identify the exact version of the snapshot that was used.", - "readOnly": true, - "type": "string" - }, - "sourceStorageObject": { - "description": "The full Google Cloud Storage URI where the disk image is stored. This file\nmust be a gzip-compressed tarball whose name ends in .tar.gz or virtual\nmachine disk whose name ends in vmdk. Valid URIs may start with gs:// or\nhttps://storage.googleapis.com/. This flag is not optimized for creating\nmultiple disks from a source storage object. To create many disks from a\nsource storage object, use gcloud compute images\nimport instead.", - "type": "string" - }, - "status": { - "description": "Output only. [Output Only] The status of disk creation.\n \n \n - CREATING: Disk is provisioning.\n - RESTORING: Source data is being copied into the\n disk.\n - FAILED: Disk creation failed.\n - READY: Disk is ready for use.\n - DELETING: Disk is deleting.", - "enum": [ - "CREATING", - "DELETING", - "FAILED", - "READY", - "RESTORING", - "UNAVAILABLE" - ], - "enumDescriptions": [ - "Disk is provisioning", - "Disk is deleting.", - "Disk creation failed.", - "Disk is ready for use.", - "Source data is being copied into the disk.", - "Disk is currently unavailable and cannot be accessed, attached or\ndetached." - ], - "readOnly": true, - "type": "string" - }, - "storagePool": { - "description": "The storage pool in which the new disk is created. You can provide\nthis as a partial or full URL to the resource. For example, the following\nare valid values:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/storagePools/storagePool\n - projects/project/zones/zone/storagePools/storagePool \n - zones/zone/storagePools/storagePool", - "type": "string" - }, - "type": { - "description": "URL of the disk type resource describing which disk type to use to create\nthe disk. Provide this when creating the disk. For example:projects/project/zones/zone/diskTypes/pd-ssd. See Persistent disk\ntypes.", - "type": "string" + "sourceTags": { + "description": "If source tags are specified, the firewall rule applies only to traffic\nwith source IPs that match the primary network interfaces of VM instances\nthat have the tag and are in the same VPC network.\nSource tags cannot be used to control traffic to an instance's external IP\naddress, it only applies to traffic between instances in the same virtual\nnetwork. Because tags are associated with instances, not IP addresses.\nOne or both of sourceRanges and sourceTags may be\nset. If both fields are set, the firewall applies to traffic that has a\nsource IP address within sourceRanges OR a source IP from a\nresource with a matching tag listed in the sourceTags\nfield. The connection does not need to match both fields for the\nfirewall to apply.", + "items": { + "type": "string" + }, + "type": "array" }, - "users": { - "description": "Output only. [Output Only] Links to the users of the disk (attached instances)\nin form:projects/project/zones/zone/instances/instance", + "targetServiceAccounts": { + "description": "A list of service accounts indicating sets of instances located in the\nnetwork that may make network connections as specified inallowed[].targetServiceAccounts cannot be used at the same time astargetTags or sourceTags.\nIf neither targetServiceAccounts nor targetTags\nare specified, the firewall rule applies to all instances on the specified\nnetwork.", "items": { "type": "string" }, - "readOnly": true, "type": "array" }, - "zone": { - "description": "Output only. [Output Only] URL of the zone where the disk resides.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", - "readOnly": true, - "type": "string" + "targetTags": { + "description": "A list of tags that controls which instances the firewall rule\napplies to. If targetTags are specified, then the firewall\nrule applies only to instances in the VPC network that have one of those\ntags. If no targetTags are specified, the firewall rule\napplies to all instances on the specified network.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" }, - "DiskAggregatedList": { - "id": "DiskAggregatedList", + "FirewallList": { + "description": "Contains a list of firewalls.", + "id": "FirewallList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "additionalProperties": { - "$ref": "DisksScopedList", - "description": "[Output Only] Name of the scope containing this set of disks." + "description": "A list of Firewall resources.", + "items": { + "$ref": "Firewall" }, - "description": "A list of DisksScopedList resources.", - "type": "object" + "type": "array" }, "kind": { - "default": "compute#diskAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#diskAggregatedList for aggregated lists of persistent\ndisks.", + "default": "compute#firewallList", + "description": "Output only. [Output Only] Type of resource. Always compute#firewallList\nfor lists of firewalls.", "readOnly": true, "type": "string" }, @@ -50494,16 +57912,201 @@ "readOnly": true, "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", - "items": { + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "FirewallLogConfig": { + "description": "The available logging options for a firewall rule.", + "id": "FirewallLogConfig", + "properties": { + "enable": { + "description": "This field denotes whether to enable logging for a particular firewall\nrule.", + "type": "boolean" + }, + "metadata": { + "description": "This field can only be specified for a particular firewall rule if\nlogging is enabled for that rule. This field denotes whether to include\nor exclude metadata for firewall logs.", + "enum": [ + "EXCLUDE_ALL_METADATA", + "INCLUDE_ALL_METADATA" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "FirewallParams": { + "description": "Additional firewall parameters.", + "id": "FirewallParams", + "properties": { + "resourceManagerTags": { + "additionalProperties": { "type": "string" }, + "description": "Tag keys/values directly bound to this resource.\nTag keys and values have the same definition as resource\nmanager tags. The field is allowed for INSERT\nonly. The keys/values to set on the resource should be specified in\neither ID { : } or Namespaced format\n{ : }.\nFor example the following are valid inputs:\n* {\"tagKeys/333\" : \"tagValues/444\", \"tagKeys/123\" : \"tagValues/456\"}\n* {\"123/environment\" : \"production\", \"345/abc\" : \"xyz\"}\nNote:\n* Invalid combinations of ID & namespaced format is not supported. For\n instance: {\"123/environment\" : \"tagValues/444\"} is invalid.", + "type": "object" + } + }, + "type": "object" + }, + "FirewallPoliciesListAssociationsResponse": { + "id": "FirewallPoliciesListAssociationsResponse", + "properties": { + "associations": { + "description": "A list of associations.", + "items": { + "$ref": "FirewallPolicyAssociation" + }, + "type": "array" + }, + "kind": { + "default": "compute#firewallPoliciesListAssociationsResponse", + "description": "Output only. [Output Only] Type of firewallPolicy associations. Alwayscompute#FirewallPoliciesListAssociations for lists of\nfirewallPolicy associations.", "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "FirewallPoliciesScopedList": { + "id": "FirewallPoliciesScopedList", + "properties": { + "firewallPolicies": { + "description": "A list of firewall policies contained in this scope.", + "items": { + "$ref": "FirewallPolicy" + }, "type": "array" }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "Informational warning which replaces the list of firewall policies when\nthe list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -50629,99 +58232,159 @@ }, "type": "object" }, - "DiskAsyncReplication": { - "id": "DiskAsyncReplication", + "FirewallPolicy": { + "description": "Represents a Firewall Policy resource.", + "id": "FirewallPolicy", "properties": { - "consistencyGroupPolicy": { - "description": "Output only. [Output Only] URL of the DiskConsistencyGroupPolicy if replication was\nstarted on the disk as a member of a group.", + "associations": { + "description": "A list of associations that belong to this firewall policy.", + "items": { + "$ref": "FirewallPolicyAssociation" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "displayName": { + "deprecated": true, + "description": "Deprecated, please use short name instead. User-provided name of the\nOrganization firewall policy. The name should be unique in the organization\nin which the firewall policy is created.\nThis field is not applicable to network firewall policies.\nThis name must be set on creation and cannot be changed.\nThe name must be 1-63 characters long, and comply\nwith RFC1035. Specifically, the name must be 1-63 characters\nlong and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which\nmeans the first character must be a lowercase letter, and all following\ncharacters must be a dash, lowercase letter, or digit, except the last\ncharacter, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "fingerprint": { + "description": "Specifies a fingerprint for this resource, which is essentially a hash of\nthe metadata's contents and used for optimistic locking. The\nfingerprint is initially generated by Compute Engine and changes after\nevery request to modify or update metadata. You must always provide an\nup-to-date fingerprint hash in order to update or change metadata,\notherwise the request will fail with error412 conditionNotMet.\n\nTo see the latest fingerprint, make get() request to the\nfirewall policy.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#firewallPolicy", + "description": "Output only. [Output only] Type of the resource. Alwayscompute#firewallPolicyfor firewall policies", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Name of the resource. For Organization Firewall Policies it's a\n[Output Only] numeric ID allocated by Google Cloud which uniquely\nidentifies the Organization Firewall Policy.", + "type": "string" + }, + "packetMirroringRules": { + "description": "A list of packet mirroring rules that belong to this policy.", + "items": { + "$ref": "FirewallPolicyRule" + }, + "type": "array" + }, + "parent": { + "description": "Output only. [Output Only] The parent of the firewall policy.\nThis field is not applicable to network firewall policies.", "readOnly": true, "type": "string" }, - "consistencyGroupPolicyId": { - "description": "Output only. [Output Only] ID of the DiskConsistencyGroupPolicy if replication was\nstarted on the disk as a member of a group.", + "policyType": { + "description": "The type of the firewall policy. This field can be one of\nVPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY.\n\nNote: if not specified then VPC_POLICY will be used.", + "enum": [ + "RDMA_ROCE_POLICY", + "ULL_POLICY", + "VPC_POLICY" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "region": { + "description": "Output only. [Output Only] URL of the region where the regional firewall policy resides.\nThis field is not applicable to global firewall policies.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", "readOnly": true, "type": "string" }, - "disk": { - "description": "The other disk asynchronously replicated to or from the current disk.\nYou can provide this as a partial or full URL to the resource.\nFor example, the following are valid values:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n - projects/project/zones/zone/disks/disk \n - zones/zone/disks/disk", + "ruleTupleCount": { + "description": "Output only. [Output Only] Total count of all firewall policy rule tuples. A firewall\npolicy can not exceed a set number of tuples.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "rules": { + "description": "A list of rules that belong to this policy.\nThere must always be a default rule (rule with priority 2147483647 and\nmatch \"*\"). If no rules are provided when creating a firewall policy, a\ndefault rule with action \"allow\" will be added.", + "items": { + "$ref": "FirewallPolicyRule" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", "type": "string" }, - "diskId": { - "description": "Output only. [Output Only] The unique ID of the other disk asynchronously replicated\nto or from the current disk. This value identifies the exact disk that\nwas used to create this replication. For example, if you started\nreplicating the persistent disk from a disk that was later deleted and\nrecreated under the same name, the disk ID would identify the exact\nversion of the disk that was used.", + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", "readOnly": true, "type": "string" + }, + "shortName": { + "description": "User-provided name of the Organization firewall policy. The name should be\nunique in the organization in which the firewall policy is created.\nThis field is not applicable to network firewall policies.\nThis name must be set on creation and cannot be changed. The name must be\n1-63 characters long, and comply with RFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" } }, "type": "object" }, - "DiskAsyncReplicationList": { - "id": "DiskAsyncReplicationList", - "properties": { - "asyncReplicationDisk": { - "$ref": "DiskAsyncReplication" - } - }, - "type": "object" - }, - "DiskInstantiationConfig": { - "description": "A specification of the desired way to instantiate a disk in the instance\ntemplate when its created from a source instance.", - "id": "DiskInstantiationConfig", + "FirewallPolicyAssociation": { + "id": "FirewallPolicyAssociation", "properties": { - "autoDelete": { - "description": "Specifies whether the disk will be auto-deleted when the instance is\ndeleted (but not when the disk is detached from the instance).", - "type": "boolean" + "attachmentTarget": { + "description": "The target that the firewall policy is attached to.", + "type": "string" }, - "customImage": { - "description": "The custom source image to be used to restore this disk when instantiating\nthis instance template.", + "displayName": { + "deprecated": true, + "description": "[Output Only] Deprecated, please use short name instead. The display name\nof the firewall policy of the association.", "type": "string" }, - "deviceName": { - "description": "Specifies the device name of the disk to which the configurations apply to.", + "firewallPolicyId": { + "description": "Output only. [Output Only] The firewall policy ID of the association.", + "readOnly": true, "type": "string" }, - "instantiateFrom": { - "description": "Specifies whether to include the disk and what image to use. Possible\nvalues are:\n \n \n - source-image: to use the same image that was used to\n create the source instance's corresponding disk. Applicable to the boot\n disk and additional read-write disks.\n - source-image-family: to use the same image family that\n was used to create the source instance's corresponding disk. Applicable\n to the boot disk and additional read-write disks.\n - custom-image: to use a user-provided image url for disk\n creation. Applicable to the boot disk and additional read-write\n disks. \n - attach-read-only: to attach a read-only\n disk. Applicable to read-only disks.\n - do-not-include: to exclude a disk from the template.\n Applicable to additional read-write disks, local SSDs, and read-only\n disks.", - "enum": [ - "ATTACH_READ_ONLY", - "BLANK", - "CUSTOM_IMAGE", - "DEFAULT", - "DO_NOT_INCLUDE", - "SOURCE_IMAGE", - "SOURCE_IMAGE_FAMILY" - ], - "enumDescriptions": [ - "Attach the existing disk in read-only mode. The request will fail if the\ndisk was attached in read-write mode on the source instance. Applicable\nto: read-only disks.", - "Create a blank disk. The disk will be created unformatted. Applicable to:\nadditional read-write disks, local SSDs.", - "Use the custom image specified in the custom_image field. Applicable to:\nboot disk, additional read-write disks.", - "Use the default instantiation option for the corresponding type of disk.\nFor boot disk and any other R/W disks, new custom images will be created\nfrom each disk. For read-only disks, they will be attached in read-only\nmode. Local SSD disks will be created as blank volumes.", - "Do not include the disk in the instance template. Applicable to:\nadditional read-write disks, local SSDs, read-only disks.", - "Use the same source image used for creation of the source instance's\ncorresponding disk. The request will fail if the source VM's disk was\ncreated from a snapshot. Applicable to: boot disk, additional read-write\ndisks.", - "Use the same source image family used for creation of the source\ninstance's corresponding disk. The request will fail if the source image\nof the source disk does not belong to any image family. Applicable to:\nboot disk, additional read-write disks." - ], + "name": { + "description": "The name for an association.", + "type": "string" + }, + "shortName": { + "description": "Output only. [Output Only] The short name of the firewall policy of the association.", + "readOnly": true, "type": "string" } }, "type": "object" }, - "DiskList": { - "description": "A list of Disk resources.", - "id": "DiskList", + "FirewallPolicyList": { + "id": "FirewallPolicyList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of Disk resources.", + "description": "A list of FirewallPolicy resources.", "items": { - "$ref": "Disk" + "$ref": "FirewallPolicy" }, "type": "array" }, "kind": { - "default": "compute#diskList", - "description": "Output only. [Output Only] Type of resource. Always compute#diskList for\nlists of disks.", + "default": "compute#firewallPolicyList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#firewallPolicyList for listsof FirewallPolicies", "readOnly": true, "type": "string" }, @@ -50729,11 +58392,6 @@ "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, - "type": "string" - }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -50861,94 +58519,434 @@ }, "type": "object" }, - "DiskMoveRequest": { - "id": "DiskMoveRequest", + "FirewallPolicyRule": { + "description": "Represents a rule that describes one or more match conditions along with\nthe action to be taken when traffic matches this condition (allow or deny).", + "id": "FirewallPolicyRule", "properties": { - "destinationZone": { - "description": "The URL of the destination zone to move the disk. This can be a full or\npartial URL. For example, the following are all valid URLs to a zone:\n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone \n - projects/project/zones/zone \n - zones/zone", + "action": { + "description": "The Action to perform when the client connection triggers the rule.\nValid actions for firewall rules are: \"allow\", \"deny\",\n\"apply_security_profile_group\" and \"goto_next\".\nValid actions for packet mirroring rules are: \"mirror\", \"do_not_mirror\"\nand \"goto_next\".", "type": "string" }, - "targetDisk": { - "description": "The URL of the target disk to move. This can be a full or partial URL.\nFor example, the following are all valid URLs to a disk:\n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n - projects/project/zones/zone/disks/disk \n - zones/zone/disks/disk", + "description": { + "description": "An optional description for this resource.", + "type": "string" + }, + "direction": { + "description": "The direction in which this rule applies.", + "enum": [ + "EGRESS", + "INGRESS" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "disabled": { + "description": "Denotes whether the firewall policy rule is disabled. When set to true,\nthe firewall policy rule is not enforced and traffic behaves as if it did\nnot exist. If this is unspecified, the firewall policy rule will be\nenabled.", + "type": "boolean" + }, + "enableLogging": { + "description": "Denotes whether to enable logging for a particular rule. If logging is\nenabled, logs will be exported to the configured export destination in\nStackdriver. Logs may be exported to BigQuery or Pub/Sub. Note: you\ncannot enable logging on \"goto_next\" rules.", + "type": "boolean" + }, + "kind": { + "default": "compute#firewallPolicyRule", + "description": "Output only. [Output only] Type of the resource. Returnscompute#firewallPolicyRule for firewall rules andcompute#packetMirroringRule for packet mirroring rules.", + "readOnly": true, + "type": "string" + }, + "match": { + "$ref": "FirewallPolicyRuleMatcher", + "description": "A match condition that incoming traffic is evaluated against.\nIf it evaluates to true, the corresponding 'action' is enforced." + }, + "priority": { + "description": "An integer indicating the priority of a rule in the list. The priority\nmust be a positive value between 0 and 2147483647.\nRules are evaluated from highest to lowest priority where 0 is the\nhighest priority and 2147483647 is the lowest priority.", + "format": "int32", + "type": "integer" + }, + "ruleName": { + "description": "An optional name for the rule. This field is not a unique identifier\nand can be updated.", + "type": "string" + }, + "ruleTupleCount": { + "description": "Output only. [Output Only] Calculation of the complexity of a single firewall policy\nrule.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "securityProfileGroup": { + "description": "A fully-qualified URL of a SecurityProfile resource instance.\nExample:\nhttps://networksecurity.googleapis.com/v1/projects/{project}/locations/{location}/securityProfileGroups/my-security-profile-group\nMust be specified if action is one of 'apply_security_profile_group' or\n'mirror'. Cannot be specified for other actions.", "type": "string" + }, + "targetResources": { + "description": "A list of network resource URLs to which this rule applies. This field\nallows you to control which network's VMs get this rule. If this field\nis left blank, all VMs within the organization will receive the rule.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetSecureTags": { + "description": "A list of secure tags that controls which instances the firewall rule\napplies to. If targetSecureTag are specified, then the\nfirewall rule applies only to instances in the VPC network that have one\nof those EFFECTIVE secure tags, if all the target_secure_tag are in\nINEFFECTIVE state, then this rule will be ignored.targetSecureTag may not be set at the same time astargetServiceAccounts.\nIf neither targetServiceAccounts nortargetSecureTag are specified, the firewall rule applies\nto all instances on the specified network.\nMaximum number of target label tags allowed is 256.", + "items": { + "$ref": "FirewallPolicyRuleSecureTag" + }, + "type": "array" + }, + "targetServiceAccounts": { + "description": "A list of service accounts indicating the sets of instances that are\napplied with this rule.", + "items": { + "type": "string" + }, + "type": "array" + }, + "tlsInspect": { + "description": "Boolean flag indicating if the traffic should be TLS decrypted.\nCan be set only if action = 'apply_security_profile_group' and cannot\nbe set for other actions.", + "type": "boolean" } }, "type": "object" }, - "DiskParams": { - "description": "Additional disk params.", - "id": "DiskParams", + "FirewallPolicyRuleMatcher": { + "description": "Represents a match condition that incoming traffic is evaluated against.\nExactly one field must be specified.", + "id": "FirewallPolicyRuleMatcher", "properties": { - "resourceManagerTags": { - "additionalProperties": { + "destAddressGroups": { + "description": "Address groups which should be matched against the traffic destination.\nMaximum number of destination address groups is 10.", + "items": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the disk. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", - "type": "object" + "type": "array" + }, + "destFqdns": { + "description": "Fully Qualified Domain Name (FQDN) which should be matched against\ntraffic destination.\nMaximum number of destination fqdn allowed is 100.", + "items": { + "type": "string" + }, + "type": "array" + }, + "destIpRanges": { + "description": "CIDR IP address range.\nMaximum number of destination CIDR IP ranges allowed is 5000.", + "items": { + "type": "string" + }, + "type": "array" + }, + "destNetworkContext": { + "description": "Network context of the traffic destination. Allowed values are:\n \n \n - UNSPECIFIED\n - INTERNET\n - NON_INTERNET", + "enum": [ + "INTERNET", + "INTRA_VPC", + "NON_INTERNET", + "UNSPECIFIED", + "VPC_NETWORKS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "destNetworkType": { + "description": "Network type of the traffic destination. Allowed values are:\n \n \n - UNSPECIFIED\n - INTERNET\n - NON_INTERNET", + "enum": [ + "INTERNET", + "INTRA_VPC", + "NON_INTERNET", + "UNSPECIFIED", + "VPC_NETWORKS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "destRegionCodes": { + "description": "Region codes whose IP addresses will be used to match for destination\nof traffic. Should be specified as 2 letter country code defined as per\nISO 3166 alpha-2 country codes. ex.\"US\"\nMaximum number of dest region codes allowed is 5000.", + "items": { + "type": "string" + }, + "type": "array" + }, + "destThreatIntelligences": { + "description": "Names of Network Threat Intelligence lists.\nThe IPs in these lists will be matched against traffic destination.", + "items": { + "type": "string" + }, + "type": "array" + }, + "layer4Configs": { + "description": "Pairs of IP protocols and ports that the rule should match.", + "items": { + "$ref": "FirewallPolicyRuleMatcherLayer4Config" + }, + "type": "array" + }, + "srcAddressGroups": { + "description": "Address groups which should be matched against the traffic source.\nMaximum number of source address groups is 10.", + "items": { + "type": "string" + }, + "type": "array" + }, + "srcFqdns": { + "description": "Fully Qualified Domain Name (FQDN) which should be matched against\ntraffic source.\nMaximum number of source fqdn allowed is 100.", + "items": { + "type": "string" + }, + "type": "array" + }, + "srcIpRanges": { + "description": "CIDR IP address range.\nMaximum number of source CIDR IP ranges allowed is 5000.", + "items": { + "type": "string" + }, + "type": "array" + }, + "srcNetworkContext": { + "description": "Network context of the traffic source. Allowed values are:\n \n \n - UNSPECIFIED\n - INTERNET\n - INTRA_VPC\n - NON_INTERNET\n - VPC_NETWORKS", + "enum": [ + "INTERNET", + "INTRA_VPC", + "NON_INTERNET", + "UNSPECIFIED", + "VPC_NETWORKS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "srcNetworkType": { + "description": "Network type of the traffic source. Allowed values are:\n \n \n - UNSPECIFIED\n - INTERNET\n - INTRA_VPC\n - NON_INTERNET\n - VPC_NETWORKS", + "enum": [ + "INTERNET", + "INTRA_VPC", + "NON_INTERNET", + "UNSPECIFIED", + "VPC_NETWORKS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "srcNetworks": { + "description": "Networks of the traffic source. It can be either a full or partial url.", + "items": { + "type": "string" + }, + "type": "array" + }, + "srcRegionCodes": { + "description": "Region codes whose IP addresses will be used to match for source\nof traffic. Should be specified as 2 letter country code defined as per\nISO 3166 alpha-2 country codes. ex.\"US\"\nMaximum number of source region codes allowed is 5000.", + "items": { + "type": "string" + }, + "type": "array" + }, + "srcSecureTags": { + "description": "List of secure tag values, which should be matched at the source\nof the traffic.\nFor INGRESS rule, if all the srcSecureTag are INEFFECTIVE,\nand there is no srcIpRange, this rule will be ignored.\nMaximum number of source tag values allowed is 256.", + "items": { + "$ref": "FirewallPolicyRuleSecureTag" + }, + "type": "array" + }, + "srcThreatIntelligences": { + "description": "Names of Network Threat Intelligence lists.\nThe IPs in these lists will be matched against traffic source.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" }, - "DiskResourceStatus": { - "id": "DiskResourceStatus", + "FirewallPolicyRuleMatcherLayer4Config": { + "id": "FirewallPolicyRuleMatcherLayer4Config", "properties": { - "asyncPrimaryDisk": { - "$ref": "DiskResourceStatusAsyncReplicationStatus" + "ipProtocol": { + "description": "The IP protocol to which this rule applies. The protocol type is\nrequired when creating a firewall rule. This value can either be\none of the following well known protocol strings (tcp,udp, icmp, esp,ah, ipip, sctp), or the IP\nprotocol number.", + "type": "string" + }, + "ports": { + "description": "An optional list of ports to which this rule applies. This field is\nonly applicable for UDP or TCP protocol. Each entry must be either\nan integer or a range. If not specified, this rule applies to\nconnections through any port.\n\nExample inputs include: [\"22\"],[\"80\",\"443\"], and [\"12345-12349\"].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "FirewallPolicyRuleSecureTag": { + "id": "FirewallPolicyRuleSecureTag", + "properties": { + "name": { + "description": "Name of the secure tag, created with TagManager's TagValue API.", + "pattern": "tagValues/[0-9]+", + "type": "string" + }, + "state": { + "description": "Output only. [Output Only] State of the secure tag, either `EFFECTIVE` or\n`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted\nor its network is deleted.", + "enum": [ + "EFFECTIVE", + "INEFFECTIVE" + ], + "enumDescriptions": [ + "", + "" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "FixedOrPercent": { + "description": "Encapsulates numeric value that can be either absolute or relative.", + "id": "FixedOrPercent", + "properties": { + "calculated": { + "description": "Output only. Absolute value of VM instances calculated based on the specific mode.\n\n \n \n - If the value is fixed, then the calculated\n value is equal to the fixed value.\n - If the value is a percent, then the\n calculated\n value is percent/100 * targetSize. For example,\n the calculated value of a 80% of a managed instance group\n with 150 instances would be (80/100 * 150) = 120 VM instances. If there\n is a remainder, the number is rounded.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "fixed": { + "description": "Specifies a fixed number of VM instances. This must be a positive integer.", + "format": "int32", + "type": "integer" + }, + "percent": { + "description": "Specifies a percentage of instances between 0 to 100%, inclusive. For\nexample, specify 80 for 80%.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "FlexibleTimeRange": { + "description": "Specifies a flexible time range with flexible start time and duration.\n\nIt is possible to specify a contradictory time range that cannot be matched\nby any Interval. This causes a validation error.", + "id": "FlexibleTimeRange", + "properties": { + "maxDuration": { + "format": "google-duration", + "type": "string" + }, + "minDuration": { + "format": "google-duration", + "type": "string" + }, + "startTimeNotEarlierThan": { + "format": "google-datetime", + "type": "string" + }, + "startTimeNotLaterThan": { + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "ForwardingRule": { + "description": "Represents a Forwarding Rule resource.\n\nForwarding rule resources in Google Cloud can be either regional or global in\nscope:\n\n* [Global](https://cloud.google.com/compute/docs/reference/rest/v1/globalForwardingRules)\n* [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/forwardingRules)\n\nA forwarding rule and its corresponding IP address represent the frontend\nconfiguration of a Google Cloud load balancer.\nForwarding rules can also reference target instances and Cloud VPN Classic\ngateways (targetVpnGateway).\n\nFor more information, read\nForwarding rule concepts and\nUsing protocol forwarding.", + "id": "ForwardingRule", + "properties": { + "IPAddress": { + "description": "IP address for which this forwarding rule accepts traffic. When a client\nsends traffic to this IP address, the forwarding rule directs the traffic\nto the referenced target or backendService.\nWhile creating a forwarding rule, specifying an IPAddress is\nrequired under the following circumstances:\n\n \n - When the target is set to targetGrpcProxy andvalidateForProxyless is set to true, theIPAddress should be set to 0.0.0.0.\n - When the target is a Private Service Connect Google APIs\n bundle, you must specify an IPAddress.\n\n\nOtherwise, you can optionally specify an IP address that references an\nexisting static (reserved) IP address resource. When omitted, Google Cloud\nassigns an ephemeral IP address.\n\nUse one of the following formats to specify an IP address while creating a\nforwarding rule:\n\n* IP address number, as in `100.1.2.3`\n* IPv6 address range, as in `2600:1234::/96`\n* Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/project_id/regions/region/addresses/address-name\n* Partial URL or by name, as in:\n \n - projects/project_id/regions/region/addresses/address-name\n - regions/region/addresses/address-name\n - global/addresses/address-name\n - address-name\n\n\n\nThe forwarding rule's target or backendService,\nand in most cases, also the loadBalancingScheme, determine the\ntype of IP address that you can use. For detailed information, see\n[IP address\nspecifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications).\n\nWhen reading an IPAddress, the API always returns the IP\naddress number.", + "type": "string" + }, + "IPProtocol": { + "description": "The IP protocol to which this rule applies.\n\nFor protocol forwarding, valid\noptions are TCP, UDP, ESP,AH, SCTP, ICMP andL3_DEFAULT.\n\nThe valid IP protocols are different for different load balancing products\nas described in [Load balancing\nfeatures](https://cloud.google.com/load-balancing/docs/features#protocols_from_the_load_balancer_to_the_backends).", + "enum": [ + "AH", + "ESP", + "ICMP", + "L3_DEFAULT", + "SCTP", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "allPorts": { + "description": "The ports, portRange, and allPorts\nfields are mutually exclusive. Only packets addressed to ports in the\nspecified range will be forwarded to the backends configured with this\nforwarding rule.\n\nThe allPorts field has the following limitations:\n \n - It requires that the forwarding rule IPProtocol be TCP,\n UDP, SCTP, or L3_DEFAULT.\n - It's applicable only to the following products: internal passthrough\n Network Load Balancers, backend service-based external passthrough Network\n Load Balancers, and internal and external protocol forwarding.\n - Set this field to true to allow packets addressed to any port or\n packets lacking destination port information (for example, UDP fragments\n after the first fragment) to be forwarded to the backends configured with\n this forwarding rule. The L3_DEFAULT protocol requiresallPorts be set to true.", + "type": "boolean" + }, + "allowGlobalAccess": { + "description": "If set to true, clients can access the internal passthrough Network Load\nBalancers, the regional internal Application Load Balancer, and the\nregional internal proxy Network Load Balancer from all regions.\nIf false, only allows access from the local region the load balancer is\nlocated at. Note that for INTERNAL_MANAGED forwarding rules, this field\ncannot be changed after the forwarding rule is created.", + "type": "boolean" + }, + "allowPscGlobalAccess": { + "description": "This is used in PSC consumer ForwardingRule to control whether the PSC\nendpoint can be accessed from another region.", + "type": "boolean" + }, + "backendService": { + "description": "Identifies the backend service to which the forwarding rule sends traffic.\nRequired for internal and external passthrough Network Load Balancers;\nmust be omitted for all other load balancer types.", + "type": "string" + }, + "baseForwardingRule": { + "description": "Output only. [Output Only] The URL for the corresponding base forwarding rule. By base\nforwarding rule, we mean the forwarding rule that has the same IP address,\nprotocol, and port settings with the current forwarding rule, but without\nsourceIPRanges specified.\nAlways empty if the current forwarding rule does not have sourceIPRanges\nspecified.", + "readOnly": true, + "type": "string" + }, + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" }, - "asyncSecondaryDisks": { - "additionalProperties": { - "$ref": "DiskResourceStatusAsyncReplicationStatus" - }, - "description": "Key: disk, value: AsyncReplicationStatus message", - "type": "object" - } - }, - "type": "object" - }, - "DiskResourceStatusAsyncReplicationStatus": { - "id": "DiskResourceStatusAsyncReplicationStatus", - "properties": { - "state": { + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "externalManagedBackendBucketMigrationState": { + "description": "Specifies the canary migration state for the backend buckets attached to\nthis forwarding rule. Possible values are PREPARE, TEST_BY_PERCENTAGE, and\nTEST_ALL_TRAFFIC.\n\nTo begin the migration from EXTERNAL to EXTERNAL_MANAGED, the state must be\nchanged to PREPARE. The state must be changed to TEST_ALL_TRAFFIC before\nthe loadBalancingScheme can be changed to EXTERNAL_MANAGED. Optionally, the\nTEST_BY_PERCENTAGE state can be used to migrate traffic to backend buckets\nattached to this forwarding rule by percentage using\nexternalManagedBackendBucketMigrationTestingPercentage.\n\nRolling back a migration requires the states to be set in reverse order. So\nchanging the scheme from EXTERNAL_MANAGED to EXTERNAL requires the state to\nbe set to TEST_ALL_TRAFFIC at the same time. Optionally, the\nTEST_BY_PERCENTAGE state can be used to migrate some traffic back to\nEXTERNAL or PREPARE can be used to migrate all traffic back to EXTERNAL.", "enum": [ - "ACTIVE", - "CREATED", - "STARTING", - "STATE_UNSPECIFIED", - "STOPPED", - "STOPPING" + "PREPARE", + "TEST_ALL_TRAFFIC", + "TEST_BY_PERCENTAGE" ], "enumDescriptions": [ - "Replication is active.", - "Secondary disk is created and is waiting for replication to start.", - "Replication is starting.", "", - "Replication is stopped.", - "Replication is stopping." + "", + "" ], "type": "string" - } - }, - "type": "object" - }, - "DiskType": { - "description": "Represents a Disk Type resource.\n\nGoogle Compute Engine has two Disk Type resources:\n\n* [Regional](/compute/docs/reference/rest/v1/regionDiskTypes)\n* [Zonal](/compute/docs/reference/rest/v1/diskTypes)\n\nYou can choose from a variety of disk types based on your needs.\nFor more information, readStorage options.\n\nThe diskTypes resource represents disk types for a zonal\npersistent disk.\nFor more information, readZonal persistent disks.\n\nThe regionDiskTypes resource represents disk types for a\nregional persistent disk. For more information, read Regional persistent disks.", - "id": "DiskType", - "properties": { - "creationTimestamp": { - "description": "[Output Only] Creation timestamp inRFC3339\ntext format.", - "type": "string" }, - "defaultDiskSizeGb": { - "description": "[Output Only] Server-defined default disk size in GB.", - "format": "int64", - "type": "string" - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this disk type." + "externalManagedBackendBucketMigrationTestingPercentage": { + "description": "Determines the fraction of requests to backend buckets that should be\nprocessed by the global external Application Load Balancer.\n\nThe value of this field must be in the range [0, 100].\n\nThis value can only be set if the loadBalancingScheme in the BackendService\nis set to EXTERNAL (when using the classic Application Load Balancer) and\nthe migration state is TEST_BY_PERCENTAGE.", + "format": "float", + "type": "number" }, - "description": { - "description": "[Output Only] An optional description of this resource.", + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a ForwardingRule. Include the fingerprint in patch request to\nensure that you do not overwrite changes that were applied from another\nconcurrent request.\n\nTo see the latest fingerprint, make a get() request to\nretrieve a ForwardingRule.", + "format": "byte", "type": "string" }, "id": { @@ -50956,370 +58954,226 @@ "format": "uint64", "type": "string" }, + "ipCollection": { + "description": "Resource reference of a PublicDelegatedPrefix. The PDP must\nbe a sub-PDP in EXTERNAL_IPV6_FORWARDING_RULE_CREATION mode.\n\nUse one of the following formats to specify a sub-PDP when creating an IPv6\nNetLB forwarding rule using BYOIP:\nFull resource URL, as inhttps://www.googleapis.com/compute/v1/projects/project_id/regions/region/publicDelegatedPrefixes/sub-pdp-name\nPartial URL, as in:\n \n - projects/project_id/regions/region/publicDelegatedPrefixes/sub-pdp-name\n - regions/region/publicDelegatedPrefixes/sub-pdp-name", + "type": "string" + }, + "ipVersion": { + "description": "The IP Version that will be used by this forwarding rule. Valid options\nare IPV4 or IPV6.", + "enum": [ + "IPV4", + "IPV6", + "UNSPECIFIED_VERSION" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "isMirroringCollector": { + "description": "Indicates whether or not this load balancer can be used as a collector for\npacket mirroring. To prevent mirroring loops, instances behind this\nload balancer will not have their traffic mirrored even if aPacketMirroring rule applies to them.\nThis can only be set to true for load balancers that have theirloadBalancingScheme set to INTERNAL.", + "type": "boolean" + }, "kind": { - "default": "compute#diskType", - "description": "Output only. [Output Only] Type of the resource. Always compute#diskType\nfor disk types.", + "default": "compute#forwardingRule", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#forwardingRule for forwarding rule resources.", "readOnly": true, "type": "string" }, - "name": { - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this resource, which is\nessentially a hash of the labels set used for optimistic locking. The\nfingerprint is initially generated by Compute Engine and changes after\nevery request to modify or update labels. You must always provide an\nup-to-date fingerprint hash in order to update or change labels,\notherwise the request will fail with error412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve a ForwardingRule.", + "format": "byte", "type": "string" }, - "region": { - "description": "[Output Only] URL of the region where the disk type resides. Only\napplicable for regional resources.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035.\nLabel values may be empty.", + "type": "object" + }, + "loadBalancingScheme": { + "description": "Specifies the forwarding rule type.\n\nFor more information about forwarding rules, refer to\nForwarding rule concepts.", + "enum": [ + "EXTERNAL", + "EXTERNAL_MANAGED", + "INTERNAL", + "INTERNAL_MANAGED", + "INTERNAL_SELF_MANAGED", + "INVALID" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], "type": "string" }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", + "metadataFilters": { + "description": "Opaque filter criteria used by load balancer to restrict routing\nconfiguration to a limited set of xDS\ncompliant clients. In their xDS requests to load balancer, xDS clients\npresent node\nmetadata. When there is a match, the relevant configuration\nis made available to those proxies. Otherwise, all the resources (e.g.TargetHttpProxy, UrlMap)\nreferenced by the ForwardingRule are not visible to\nthose proxies.\n\nFor each metadataFilter in this list, if itsfilterMatchCriteria is set to MATCH_ANY, at least one of thefilterLabels must match the corresponding label provided in\nthe metadata. If its filterMatchCriteria is set to\nMATCH_ALL, then all of its filterLabels must match with\ncorresponding labels provided in the metadata. If multiplemetadataFilters are specified, all of them need to be satisfied\nin order to be considered a match.\n\nmetadataFilters specified here will be applifed before\nthose specified in the UrlMap that thisForwardingRule references.\n\nmetadataFilters only applies to Loadbalancers that have\ntheir loadBalancingScheme set toINTERNAL_SELF_MANAGED.", + "items": { + "$ref": "MetadataFilter" + }, + "type": "array" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.\n\nFor Private Service Connect forwarding rules that forward traffic to Google\nAPIs, the forwarding rule name must be a 1-20 characters string with\nlowercase letters and numbers and must start with a letter.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, - "validDiskSize": { - "description": "[Output Only] An optional textual description of the valid disk size,\nsuch as \"10GB-10TB\".", + "network": { + "description": "This field is not used for global external load balancing.\n\nFor internal passthrough Network Load Balancers, this field identifies the\nnetwork that the load balanced IP should belong to for this forwarding\nrule.\nIf the subnetwork is specified, the network of the subnetwork will be used.\nIf neither subnetwork nor this field is specified, the default network will\nbe used.\n\nFor Private Service Connect forwarding rules that forward traffic to Google\nAPIs, a network must be provided.", "type": "string" }, - "zone": { - "description": "[Output Only] URL of the zone where the disk type resides.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "networkTier": { + "description": "This signifies the networking tier used for configuring\nthis load balancer and can only take the following values:PREMIUM, STANDARD.\n\nFor regional ForwardingRule, the valid values are PREMIUM andSTANDARD. For GlobalForwardingRule, the valid value isPREMIUM.\n\nIf this field is not specified, it is assumed to be PREMIUM.\nIf IPAddress is specified, this value must be equal to the\nnetworkTier of the Address.", + "enum": [ + "FIXED_STANDARD", + "PREMIUM", + "STANDARD", + "STANDARD_OVERRIDES_FIXED_STANDARD" + ], + "enumDescriptions": [ + "Public internet quality with fixed bandwidth.", + "High quality, Google-grade network tier, support for all networking\nproducts.", + "Public internet quality, only limited support for other networking\nproducts.", + "(Output only) Temporary tier for FIXED_STANDARD when fixed standard tier\nis expired or not configured." + ], "type": "string" - } - }, - "type": "object" - }, - "DiskTypeAggregatedList": { - "id": "DiskTypeAggregatedList", - "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", + }, + "noAutomateDnsZone": { + "description": "This is used in PSC consumer ForwardingRule to control whether it should\ntry to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use\nthis field. Once set, this field is not mutable.", + "type": "boolean" + }, + "portRange": { + "description": "The ports, portRange, and allPorts\nfields are mutually exclusive. Only packets addressed to ports in the\nspecified range will be forwarded to the backends configured with this\nforwarding rule.\n\nThe portRange field has the following limitations:\n \n - It requires that the forwarding rule IPProtocol be TCP,\n UDP, or SCTP, and\n - It's applicable only to the following products: external passthrough\n Network Load Balancers, internal and external proxy Network Load Balancers,\n internal and external Application Load Balancers, external protocol\n forwarding, and Classic VPN.\n - Some products have restrictions on what ports can be used. See \n port specifications for details.\n\n\n\nFor external forwarding rules, two or more forwarding rules cannot use the\nsame [IPAddress, IPProtocol] pair, and cannot have overlappingportRanges.\n\nFor internal forwarding rules within the same VPC network, two or more\nforwarding rules cannot use the same [IPAddress, IPProtocol]\npair, and cannot have overlapping portRanges.\n\n@pattern: \\\\d+(?:-\\\\d+)?", "type": "string" }, - "items": { - "additionalProperties": { - "$ref": "DiskTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of disk types." + "ports": { + "description": "The ports, portRange, and allPorts\nfields are mutually exclusive. Only packets addressed to ports in the\nspecified range will be forwarded to the backends configured with this\nforwarding rule.\n\nThe ports field has the following limitations:\n \n - It requires that the forwarding rule IPProtocol be TCP,\n UDP, or SCTP, and\n - It's applicable only to the following products: internal passthrough\n Network Load Balancers, backend service-based external passthrough Network\n Load Balancers, and internal protocol forwarding.\n - You can specify a list of up to five ports by number, separated by\n commas. The ports can be contiguous or discontiguous.\n\n\n\nFor external forwarding rules, two or more forwarding rules cannot use the\nsame [IPAddress, IPProtocol] pair if they share at least one\nport number.\n\nFor internal forwarding rules within the same VPC network, two or more\nforwarding rules cannot use the same [IPAddress, IPProtocol]\npair if they share at least one port number.\n\n@pattern: \\\\d+(?:-\\\\d+)?", + "items": { + "type": "string" }, - "description": "A list of DiskTypesScopedList resources.", - "type": "object" + "type": "array" }, - "kind": { - "default": "compute#diskTypeAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#diskTypeAggregatedList.", + "pscConnectionId": { + "description": "[Output Only] The PSC connection id of the PSC forwarding rule.", + "format": "uint64", + "type": "string" + }, + "pscConnectionStatus": { + "enum": [ + "ACCEPTED", + "CLOSED", + "NEEDS_ATTENTION", + "PENDING", + "REJECTED", + "STATUS_UNSPECIFIED" + ], + "enumDescriptions": [ + "The connection has been accepted by the producer.", + "The connection has been closed by the producer and will not serve traffic\ngoing forward.", + "The connection has been accepted by the producer, but the producer needs\nto take further action before the forwarding rule can serve traffic.", + "The connection is pending acceptance by the producer.", + "The connection has been rejected by the producer.", + "" + ], "readOnly": true, "type": "string" }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "region": { + "description": "Output only. [Output Only] URL of the region where the regional forwarding rule resides.\nThis field is not applicable to global forwarding rules.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, + "description": "[Output Only] Server-defined URL for the resource.", "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", - "items": { - "type": "string" - }, + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", "readOnly": true, - "type": "array" - }, - "warning": { - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", - "LARGE_DEPLOYMENT_WARNING", - "LIST_OVERHEAD_QUOTA_EXCEED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "PARTIAL_SUCCESS", - "QUOTA_INFO_UNAVAILABLE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDeprecated": [ - false, - false, - false, - false, - false, - false, - true, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false - ], - "enumDescriptions": [ - "Warning about failed cleanup of transient changes made by a failed\noperation.", - "A link to a deprecated resource was created.", - "When deploying and at least one of the resources has a type marked as\ndeprecated", - "The user created a boot disk that is larger than image size.", - "When deploying and at least one of the resources has a type marked as\nexperimental", - "Warning that is present in an external api call", - "Warning that value of a field has been overridden.\nDeprecated unused field.", - "The operation involved use of an injected kernel, which is deprecated.", - "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", - "When deploying a deployment with a exceedingly large number of resources", - "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", - "A resource depends on a missing type", - "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", - "The route's next hop instance cannot ip forward.", - "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", - "The route's nextHopInstance URL refers to an instance that does not exist.", - "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", - "The route's next hop instance does not have a status of RUNNING.", - "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", - "No results are present on a particular list page.", - "Success is reported, but some results may be missing due to errors", - "Quota information is not available to client requests (e.g:\nregions.list).", - "The user attempted to use a resource that requires a TOS they have not\naccepted.", - "Warning that a resource is in use.", - "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", - "When a resource schema validation is ignored.", - "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", - "When undeclared properties in the schema are present", - "A given scope cannot be reached." - ], - "type": "string" - }, - "data": { - "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", - "items": { - "properties": { - "key": { - "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", - "type": "string" - }, - "value": { - "description": "[Output Only] A warning data value corresponding to the key.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "message": { - "description": "[Output Only] A human-readable description of the warning code.", - "type": "string" - } - }, - "type": "object" - } - }, - "type": "object" - }, - "DiskTypeList": { - "description": "Contains a list of disk types.", - "id": "DiskTypeList", - "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, - "items": { - "description": "A list of DiskType resources.", + "serviceDirectoryRegistrations": { + "description": "Service Directory resources to register this forwarding rule with.\nCurrently, only supports a single Service Directory resource.", "items": { - "$ref": "DiskType" + "$ref": "ForwardingRuleServiceDirectoryRegistration" }, "type": "array" }, - "kind": { - "default": "compute#diskTypeList", - "description": "Output only. [Output Only] Type of resource. Always compute#diskTypeList\nfor disk types.", - "readOnly": true, + "serviceLabel": { + "description": "An optional prefix to the service name for this forwarding rule.\nIf specified, the prefix is the first label of the fully qualified service\nname.\n\nThe label must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the label must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.\n\nThis field is only used for internal load balancing.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "serviceName": { + "description": "[Output Only]\nThe internal fully qualified service name for this forwarding rule.\n\nThis field is only used for internal load balancing.", "type": "string" }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, + "sourceIpRanges": { + "description": "If not empty, this forwarding rule will only forward the traffic when the\nsource IP address matches one of the IP addresses or CIDR ranges set here.\nNote that a forwarding rule can only have up to 64 source IP ranges, and\nthis field can only be used with a regional forwarding rule whose scheme isEXTERNAL.\nEach source_ip_range entry should be either an IP address (for\nexample, 1.2.3.4) or a CIDR range (for example, 1.2.3.0/24).", + "items": { + "type": "string" + }, + "type": "array" + }, + "subnetwork": { + "description": "This field identifies the subnetwork that the load balanced IP should\nbelong to for this forwarding rule, used with internal load balancers and\nexternal passthrough Network Load Balancers with IPv6.\n\nIf the network specified is in auto subnet mode, this field is optional.\nHowever, a subnetwork must be specified if the network is in custom subnet\nmode or when creating external forwarding rule with IPv6.", "type": "string" }, - "warning": { - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", - "LARGE_DEPLOYMENT_WARNING", - "LIST_OVERHEAD_QUOTA_EXCEED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "PARTIAL_SUCCESS", - "QUOTA_INFO_UNAVAILABLE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDeprecated": [ - false, - false, - false, - false, - false, - false, - true, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false - ], - "enumDescriptions": [ - "Warning about failed cleanup of transient changes made by a failed\noperation.", - "A link to a deprecated resource was created.", - "When deploying and at least one of the resources has a type marked as\ndeprecated", - "The user created a boot disk that is larger than image size.", - "When deploying and at least one of the resources has a type marked as\nexperimental", - "Warning that is present in an external api call", - "Warning that value of a field has been overridden.\nDeprecated unused field.", - "The operation involved use of an injected kernel, which is deprecated.", - "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", - "When deploying a deployment with a exceedingly large number of resources", - "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", - "A resource depends on a missing type", - "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", - "The route's next hop instance cannot ip forward.", - "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", - "The route's nextHopInstance URL refers to an instance that does not exist.", - "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", - "The route's next hop instance does not have a status of RUNNING.", - "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", - "No results are present on a particular list page.", - "Success is reported, but some results may be missing due to errors", - "Quota information is not available to client requests (e.g:\nregions.list).", - "The user attempted to use a resource that requires a TOS they have not\naccepted.", - "Warning that a resource is in use.", - "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", - "When a resource schema validation is ignored.", - "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", - "When undeclared properties in the schema are present", - "A given scope cannot be reached." - ], - "type": "string" - }, - "data": { - "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", - "items": { - "properties": { - "key": { - "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", - "type": "string" - }, - "value": { - "description": "[Output Only] A warning data value corresponding to the key.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "message": { - "description": "[Output Only] A human-readable description of the warning code.", - "type": "string" - } - }, - "type": "object" + "target": { + "description": "The URL of the target resource to receive the matched traffic. For\nregional forwarding rules, this target must be in the same region as the\nforwarding rule. For global forwarding rules, this target must be a global\nload balancing resource.\n\nThe forwarded traffic must be of a type appropriate to the target object.\n \n \n - For load balancers, see the \"Target\" column in [Port specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications).\n - For Private Service Connect forwarding rules that forward traffic to Google APIs, provide the name of a supported Google API bundle:\n \n \n - vpc-sc - APIs that support VPC Service Controls. \n - all-apis - All supported Google APIs. \n \n \n - For Private Service Connect forwarding rules that forward traffic to managed services, the target must be a service attachment. The target is not mutable once set as a service attachment.", + "type": "string" } }, "type": "object" }, - "DiskTypesScopedList": { - "id": "DiskTypesScopedList", + "ForwardingRuleAggregatedList": { + "id": "ForwardingRuleAggregatedList", "properties": { - "diskTypes": { - "description": "[Output Only] A list of disk types contained in this scope.", + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "ForwardingRulesScopedList", + "description": "Name of the scope containing this set of addresses." + }, + "description": "A list of ForwardingRulesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#forwardingRuleAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#forwardingRuleAggregatedList for lists of forwarding rules.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", "items": { - "$ref": "DiskType" + "type": "string" }, + "readOnly": true, "type": "array" }, "warning": { - "description": "[Output Only] Informational warning which replaces the list of disk types\nwhen the list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -51445,55 +59299,38 @@ }, "type": "object" }, - "DisksAddResourcePoliciesRequest": { - "id": "DisksAddResourcePoliciesRequest", - "properties": { - "resourcePolicies": { - "description": "Full or relative path to the resource policy to be added to this disk. You\ncan only specify one resource policy.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "DisksRemoveResourcePoliciesRequest": { - "id": "DisksRemoveResourcePoliciesRequest", - "properties": { - "resourcePolicies": { - "description": "Resource policies to be removed from this disk.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "DisksResizeRequest": { - "id": "DisksResizeRequest", + "ForwardingRuleList": { + "description": "Contains a list of ForwardingRule resources.", + "id": "ForwardingRuleList", "properties": { - "sizeGb": { - "description": "The new size of the persistent disk, which is specified in GB.", - "format": "int64", + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" - } - }, - "type": "object" - }, - "DisksScopedList": { - "id": "DisksScopedList", - "properties": { - "disks": { - "description": "[Output Only] A list of disks contained in this scope.", + }, + "items": { + "description": "A list of ForwardingRule resources.", "items": { - "$ref": "Disk" + "$ref": "ForwardingRule" }, "type": "array" }, + "kind": { + "default": "compute#forwardingRuleList", + "description": "Output only. Type of resource.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, "warning": { - "description": "[Output Only] Informational warning which replaces the list of disks when\nthe list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -51619,189 +59456,46 @@ }, "type": "object" }, - "DisksStartAsyncReplicationRequest": { - "id": "DisksStartAsyncReplicationRequest", - "properties": { - "asyncSecondaryDisk": { - "description": "The secondary disk to start asynchronous replication to.\nYou can provide this as a partial or full URL to the resource. For example,\nthe following are valid values:\n \n \n - \n https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk\n \n - \n https://www.googleapis.com/compute/v1/projects/project/regions/region/disks/disk\n \n - \n projects/project/zones/zone/disks/disk\n \n - \n projects/project/regions/region/disks/disk\n \n - \n zones/zone/disks/disk\n \n - \n regions/region/disks/disk", - "type": "string" - } - }, - "type": "object" - }, - "DisksStopGroupAsyncReplicationResource": { - "description": "A transient resource used in compute.disks.stopGroupAsyncReplication and\ncompute.regionDisks.stopGroupAsyncReplication. It is only used to process\nrequests and is not persisted.", - "id": "DisksStopGroupAsyncReplicationResource", - "properties": { - "resourcePolicy": { - "description": "The URL of the DiskConsistencyGroupPolicy for the group of disks to stop.\nThis may be a full or partial URL, such as:\n \n \n - \n https://www.googleapis.com/compute/v1/projects/project/regions/region/resourcePolicies/resourcePolicy\n \n - \n projects/project/regions/region/resourcePolicies/resourcePolicy\n \n - \n regions/region/resourcePolicies/resourcePolicy", - "type": "string" - } - }, - "type": "object" - }, - "DisplayDevice": { - "description": "A set of Display Device options", - "id": "DisplayDevice", - "properties": { - "enableDisplay": { - "description": "Defines whether the instance has Display enabled.", - "type": "boolean" - } - }, - "type": "object" - }, - "DistributionPolicy": { - "id": "DistributionPolicy", - "properties": { - "targetShape": { - "description": "The distribution shape to which the group converges either proactively or\non resize events (depending on the value set inupdatePolicy.instanceRedistributionType).", - "enum": [ - "ANY", - "ANY_SINGLE_ZONE", - "BALANCED", - "EVEN" - ], - "enumDescriptions": [ - "The group picks zones for creating VM instances to fulfill the requested\nnumber of VMs within present resource constraints and to maximize\nutilization of unused zonal reservations. Recommended for batch workloads\nthat do not require high availability.", - "The group creates all VM instances within a single zone. The zone is\nselected based on the present resource constraints and to maximize\nutilization of unused zonal reservations.\nRecommended for batch workloads with heavy interprocess communication.", - "The group prioritizes acquisition of resources, scheduling VMs in zones\nwhere resources are available while distributing VMs as evenly as\npossible across selected zones to minimize the impact of zonal failure.\nRecommended for highly available serving workloads.", - "The group schedules VM instance creation and deletion to achieve and\nmaintain an even number of managed instances across the selected zones.\nThe distribution is even when the number of managed instances does not\ndiffer by more than 1 between any two zones. Recommended for highly\navailable serving workloads." - ], - "type": "string" - }, - "zones": { - "description": "Zones where the regional managed instance group will create and manage\nits instances.", - "items": { - "$ref": "DistributionPolicyZoneConfiguration" - }, - "type": "array" - } - }, - "type": "object" - }, - "DistributionPolicyZoneConfiguration": { - "id": "DistributionPolicyZoneConfiguration", - "properties": { - "zone": { - "annotations": { - "required": [ - "compute.regionInstanceGroupManagers.insert" - ] - }, - "description": "The URL of thezone.\nThe zone must exist in the region where the managed instance group is\nlocated.", - "type": "string" - } - }, - "type": "object" - }, - "Duration": { - "description": "A Duration represents a fixed-length span of time represented\nas a count of seconds and fractions of seconds at nanosecond\nresolution. It is independent of any calendar and concepts like \"day\"\nor \"month\". Range is approximately 10,000 years.", - "id": "Duration", - "properties": { - "nanos": { - "description": "Span of time that's a fraction of a second at nanosecond resolution.\nDurations less than one second are represented with a 0\n`seconds` field and a positive `nanos` field. Must be from 0\nto 999,999,999 inclusive.", - "format": "int32", - "type": "integer" - }, - "seconds": { - "description": "Span of time at a resolution of a second. Must be from 0\nto 315,576,000,000 inclusive. Note: these bounds are computed from:\n60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years", - "format": "int64", - "type": "string" - } - }, - "type": "object" - }, - "ErrorInfo": { - "description": "Describes the cause of the error with structured details.\n\nExample of an error when contacting the \"pubsub.googleapis.com\" API when it\nis not enabled:\n\n { \"reason\": \"API_DISABLED\"\n \"domain\": \"googleapis.com\"\n \"metadata\": {\n \"resource\": \"projects/123\",\n \"service\": \"pubsub.googleapis.com\"\n }\n }\n\nThis response indicates that the pubsub.googleapis.com API is not enabled.\n\nExample of an error that is returned when attempting to create a Spanner\ninstance in a region that is out of stock:\n\n { \"reason\": \"STOCKOUT\"\n \"domain\": \"spanner.googleapis.com\",\n \"metadata\": {\n \"availableRegions\": \"us-central1,us-east2\"\n }\n }", - "id": "ErrorInfo", + "ForwardingRuleReference": { + "id": "ForwardingRuleReference", "properties": { - "domain": { - "description": "The logical grouping to which the \"reason\" belongs. The error domain\nis typically the registered service name of the tool or product that\ngenerates the error. Example: \"pubsub.googleapis.com\". If the error is\ngenerated by some common infrastructure, the error domain must be a\nglobally unique value that identifies the infrastructure. For Google API\ninfrastructure, the error domain is \"googleapis.com\".", - "type": "string" - }, - "metadatas": { - "additionalProperties": { - "type": "string" - }, - "description": "Additional structured details about this error.\n\nKeys must match a regular expression of `a-z+` but should\nideally be lowerCamelCase. Also, they must be limited to 64 characters in\nlength. When identifying the current value of an exceeded limit, the units\nshould be contained in the key, not the value. For example, rather than\n`{\"instanceLimit\": \"100/request\"}`, should be returned as,\n`{\"instanceLimitPerRequest\": \"100\"}`, if the client exceeds the number of\ninstances that can be created in a single (batch) request.", - "type": "object" - }, - "reason": { - "description": "The reason of the error. This is a constant value that identifies the\nproximate cause of the error. Error reasons are unique within a particular\ndomain of errors. This should be at most 63 characters and match a\nregular expression of `A-Z+[A-Z0-9]`, which represents\nUPPER_SNAKE_CASE.", + "forwardingRule": { "type": "string" } }, "type": "object" }, - "ExchangedPeeringRoute": { - "id": "ExchangedPeeringRoute", + "ForwardingRuleServiceDirectoryRegistration": { + "description": "Describes the auto-registration of the forwarding rule to Service Directory.\nThe region and project of the Service Directory resource generated from\nthis registration will be the same as this forwarding rule.", + "id": "ForwardingRuleServiceDirectoryRegistration", "properties": { - "destRange": { - "description": "The destination range of the route.", + "namespace": { + "description": "Service Directory namespace to register the forwarding rule under.", "type": "string" }, - "imported": { - "description": "True if the peering route has been imported from a peer. The actual import\nhappens if the field networkPeering.importCustomRoutes is true\nfor this network, and networkPeering.exportCustomRoutes is\ntrue for the peer network, and the import does not result in a route\nconflict.", - "type": "boolean" - }, - "nextHopRegion": { - "description": "The region of peering route next hop, only applies to dynamic routes.", + "service": { + "description": "Service Directory service to register the forwarding rule under.", "type": "string" }, - "priority": { - "description": "The priority of the peering route.", - "format": "uint32", - "type": "integer" - }, - "type": { - "description": "The type of the peering route.", - "enum": [ - "DYNAMIC_PEERING_ROUTE", - "STATIC_PEERING_ROUTE", - "SUBNET_PEERING_ROUTE" - ], - "enumDescriptions": [ - "For routes exported from local network.", - "The peering route.", - "The peering route corresponding to subnetwork range." - ], + "serviceDirectoryRegion": { + "description": "[Optional] Service Directory region to register this global forwarding\nrule under. Default to \"us-central1\". Only used for PSC for Google APIs.\nAll PSC for Google APIs forwarding rules on the same network should use\nthe same Service Directory region.", "type": "string" } }, "type": "object" }, - "ExchangedPeeringRoutesList": { - "id": "ExchangedPeeringRoutesList", + "ForwardingRulesScopedList": { + "id": "ForwardingRulesScopedList", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" - }, - "items": { - "description": "A list of ExchangedPeeringRoute resources.", + "forwardingRules": { + "description": "A list of forwarding rules contained in this scope.", "items": { - "$ref": "ExchangedPeeringRoute" + "$ref": "ForwardingRule" }, "type": "array" }, - "kind": { - "default": "compute#exchangedPeeringRoutesList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#exchangedPeeringRoutesList for exchanged peering\nroutes lists.", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, - "type": "string" - }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "Informational warning which replaces the list of forwarding rules when\nthe list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -51927,503 +59621,495 @@ }, "type": "object" }, - "Expr": { - "description": "Represents a textual expression in the Common Expression Language (CEL)\nsyntax. CEL is a C-like expression language. The syntax and semantics of CEL\nare documented at https://github.com/google/cel-spec.\n\nExample (Comparison):\n\n title: \"Summary size limit\"\n description: \"Determines if a summary is less than 100 chars\"\n expression: \"document.summary.size() < 100\"\n\nExample (Equality):\n\n title: \"Requestor is owner\"\n description: \"Determines if requestor is the document owner\"\n expression: \"document.owner == request.auth.claims.email\"\n\nExample (Logic):\n\n title: \"Public documents\"\n description: \"Determine whether the document should be publicly visible\"\n expression: \"document.type != 'private' && document.type != 'internal'\"\n\nExample (Data Manipulation):\n\n title: \"Notification string\"\n description: \"Create a notification string with a timestamp.\"\n expression: \"'New message received at ' + string(document.create_time)\"\n\nThe exact variables and functions that may be referenced within an expression\nare determined by the service that evaluates it. See the service\ndocumentation for additional information.", - "id": "Expr", + "FutureReservation": { + "id": "FutureReservation", "properties": { - "description": { - "description": "Optional. Description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", - "type": "string" + "aggregateReservation": { + "$ref": "AllocationAggregateReservation", + "description": "Aggregate reservation details for the future reservation." }, - "expression": { - "description": "Textual representation of an expression in Common Expression Language\nsyntax.", + "autoCreatedReservationsDeleteTime": { + "description": "Future timestamp when the FR auto-created reservations will be deleted by\nCompute Engine. Format of this field must be a valid\nhref=\"https://www.ietf.org/rfc/rfc3339.txt\">RFC3339 value.", "type": "string" }, - "location": { - "description": "Optional. String indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.", - "type": "string" + "autoCreatedReservationsDuration": { + "$ref": "Duration", + "description": "Specifies the duration of auto-created reservations.\nIt represents relative time to future reservation start_time when\nauto-created reservations will be automatically deleted by Compute\nEngine. Duration time unit is represented as a count of seconds\nand fractions of seconds at nanosecond resolution." }, - "title": { - "description": "Optional. Title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", + "autoDeleteAutoCreatedReservations": { + "description": "Setting for enabling or disabling automatic deletion for auto-created\nreservation. If set to true, auto-created reservations will be\ndeleted at Future Reservation's end time (default) or at user's defined\ntimestamp if any of the\n[auto_created_reservations_delete_time, auto_created_reservations_duration]\nvalues is specified.\nFor keeping auto-created reservation indefinitely, this value should be set\nto false.", + "type": "boolean" + }, + "commitmentInfo": { + "$ref": "FutureReservationCommitmentInfo", + "description": "If not present, then FR will not deliver a new commitment or update an\nexisting commitment." + }, + "confidentialComputeType": { + "enum": [ + "CONFIDENTIAL_COMPUTE_TYPE_TDX", + "CONFIDENTIAL_COMPUTE_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Intel Trust Domain Extensions.", + "" + ], "type": "string" - } - }, - "type": "object" - }, - "ExternalVpnGateway": { - "description": "Represents an external VPN gateway.\n\nExternal VPN gateway is the on-premises VPN gateway(s) or another cloud\nprovider's VPN gateway that connects to your Google Cloud VPN gateway.\n\nTo create a highly available VPN from Google Cloud Platform to your\nVPN gateway or another cloud provider's VPN gateway, you must create a\nexternal VPN gateway resource with information about the other gateway.\n\nFor more information about using external VPN gateways, see\nCreating an HA VPN gateway and tunnel pair to a peer VPN.", - "id": "ExternalVpnGateway", - "properties": { + }, "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "description": "Output only. [Output Only] The creation timestamp for this future reservation inRFC3339\ntext format.", "readOnly": true, "type": "string" }, + "deploymentType": { + "description": "Type of the deployment requested as part of future reservation.", + "enum": [ + "DENSE", + "DEPLOYMENT_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "The reserved capacity is made up of densely deployed reservation blocks.", + "" + ], + "type": "string" + }, "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "description": "An optional description of this resource. Provide this property when you\ncreate the future reservation.", "type": "string" }, + "enableEmergentMaintenance": { + "description": "Indicates if this group of VMs have emergent maintenance enabled.", + "type": "boolean" + }, "id": { - "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "description": "Output only. [Output Only] A unique identifier for this future reservation. The server\ndefines this identifier.", "format": "uint64", "readOnly": true, "type": "string" }, - "interfaces": { - "description": "A list of interfaces for this external VPN gateway.\n\nIf your peer-side gateway is an on-premises gateway and non-AWS cloud\nproviders' gateway, at most two interfaces can be provided for an external\nVPN gateway. If your peer side is an AWS virtual private gateway, four\ninterfaces should be provided for an external VPN gateway.", - "items": { - "$ref": "ExternalVpnGatewayInterface" - }, - "type": "array" - }, "kind": { - "default": "compute#externalVpnGateway", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#externalVpnGateway for externalVpnGateways.", + "default": "compute#futureReservation", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#futureReservation for future reservations.", "readOnly": true, "type": "string" }, - "labelFingerprint": { - "description": "A fingerprint for the labels being applied to this ExternalVpnGateway,\nwhich is essentially a hash of the labels set used for optimistic locking.\nThe fingerprint is initially generated by Compute Engine and changes after\nevery request to modify or update labels. You must always provide an\nup-to-date fingerprint hash in order to update or change labels,\notherwise the request will fail with error412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve an ExternalVpnGateway.", - "format": "byte", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035.\nLabel values may be empty.", - "type": "object" - }, "name": { "annotations": { "required": [ - "compute.externalVpnGateways.insert" + "compute.instances.insert" ] }, - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", + "description": "The name of the resource, provided by the client when initially creating\nthe resource. The resource name must be 1-63 characters long, and comply\nwithRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "namePrefix": { + "description": "Name prefix for the reservations to be created at the time of\ndelivery. The name prefix must comply with RFC1035.\nMaximum allowed length for name prefix is 20. Automatically created\nreservations name format will be -date-####.", + "type": "string" + }, "params": { - "$ref": "ExternalVpnGatewayParams", - "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." + "$ref": "FutureReservationParams", + "description": "Input only. Additional params passed with the request, but not persisted\nas part of resource payload." }, - "redundancyType": { - "description": "Indicates the user-supplied redundancy type of this external VPN gateway.", + "planningStatus": { + "description": "Planning state before being submitted for evaluation", "enum": [ - "FOUR_IPS_REDUNDANCY", - "SINGLE_IP_INTERNALLY_REDUNDANT", - "TWO_IPS_REDUNDANCY" + "DRAFT", + "PLANNING_STATUS_UNSPECIFIED", + "SUBMITTED" ], "enumDescriptions": [ - "The external VPN gateway has four public IP addresses; at the time of\nwriting this API, the AWS virtual private gateway is an example which has\nfour public IP addresses for high availability connections; there should\nbe two VPN connections in the AWS virtual private gateway , each AWS VPN\nconnection has two public IP addresses; please make sure to put two\npublic IP addresses from one AWS VPN connection into interfaces 0 and 1\nof this external VPN gateway, and put the other two public IP addresses\nfrom another AWS VPN connection into interfaces 2 and 3 of this external\nVPN gateway. When displaying highly available configuration status\nfor the VPN tunnels connected to FOUR_IPS_REDUNDANCY external VPN\ngateway, Google will always detect whether interfaces 0 and 1 are\nconnected on one interface of HA Cloud VPN gateway, and detect whether\ninterfaces 2 and 3 are connected to another interface of the HA Cloud VPN\ngateway.", - "The external VPN gateway has only one public IP address which internally\nprovide redundancy or failover.", - "The external VPN gateway has two public IP addresses which are redundant\nwith each other, the following two types of setup on your on-premises\nside would have this type of redundancy:\n(1) Two separate on-premises gateways, each with one public IP address,\n the two on-premises gateways are redundant with each other.\n(2) A single on-premise gateway with two public IP addresses that are\n redundant with eatch other." + "Future Reservation is being drafted.", + "", + "Future Reservation has been submitted for evaluation by GCP." + ], + "type": "string" + }, + "reservationMode": { + "description": "The reservation mode which determines reservation-termination behavior and\nexpected pricing.", + "enum": [ + "CALENDAR", + "DEFAULT", + "RESERVATION_MODE_UNSPECIFIED" + ], + "enumDescriptions": [ + "The delivered reservations will delivered at specified start time and\nterminated at specified end time along with terminating the VMs running\non it.", + "The delivered reservations do not terminate VMs at the end of\nreservations. This is default mode.", + "" + ], + "type": "string" + }, + "reservationName": { + "description": "Name of reservations where the capacity is provisioned at the time of\ndelivery of future reservations. If the reservation with the given name\ndoes not exist already, it is created automatically at the time of Approval\nwith INACTIVE state till specified start-time. Either provide the\nreservation_name or a name_prefix.", + "type": "string" + }, + "schedulingType": { + "description": "Maintenance information for this reservation", + "enum": [ + "GROUPED", + "GROUP_MAINTENANCE_TYPE_UNSPECIFIED", + "INDEPENDENT" + ], + "enumDescriptions": [ + "Maintenance on all reserved instances in the reservation is synchronized.", + "Unknown maintenance type.", + "Maintenance is not synchronized for this reservation. Instead, each\ninstance has its own maintenance window." ], "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for the resource.", + "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", "readOnly": true, "type": "string" - } - }, - "type": "object" - }, - "ExternalVpnGatewayInterface": { - "description": "The interface for the external VPN gateway.", - "id": "ExternalVpnGatewayInterface", - "properties": { - "id": { - "description": "The numeric ID of this interface.\nThe allowed input values for this id for different redundancy types of\nexternal VPN gateway:\n \n - SINGLE_IP_INTERNALLY_REDUNDANT - 0\n - TWO_IPS_REDUNDANCY - 0, 1\n - FOUR_IPS_REDUNDANCY - 0, 1, 2, 3", - "format": "uint32", - "type": "integer" }, - "ipAddress": { - "description": "IP address of the interface in the external VPN gateway. Only IPv4 is\nsupported. This IP address can be either from your on-premise gateway or\nanother Cloud provider's VPN gateway, it cannot be an IP address from\nGoogle Compute Engine.", + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", + "readOnly": true, "type": "string" }, - "ipv6Address": { - "description": "IPv6 address of the interface in the external VPN gateway. This IPv6\naddress can be either from your on-premise gateway or another Cloud\nprovider's VPN gateway, it cannot be an IP address from Google Compute\nEngine. Must specify an IPv6 address (not IPV4-mapped) using any format\ndescribed in RFC 4291 (e.g. 2001:db8:0:0:2d9:51:0:0). The output format\nis RFC 5952 format (e.g. 2001:db8::2d9:51:0:0).", + "shareSettings": { + "$ref": "ShareSettings", + "description": "List of Projects/Folders to share with." + }, + "specificReservationRequired": { + "description": "Indicates whether the auto-created reservation can be consumed by VMs with\naffinity for \"any\" reservation. If the field is set, then only VMs that\ntarget the reservation by name can consume from the delivered reservation.", + "type": "boolean" + }, + "specificSkuProperties": { + "$ref": "FutureReservationSpecificSKUProperties", + "description": "Future Reservation configuration to indicate instance properties and\ntotal count." + }, + "status": { + "$ref": "FutureReservationStatus", + "description": "Output only. [Output only] Status of the Future Reservation", + "readOnly": true + }, + "timeWindow": { + "$ref": "FutureReservationTimeWindow", + "description": "Time window for this Future Reservation." + }, + "zone": { + "description": "Output only. [Output Only] URL of the Zone where this future reservation resides.", + "readOnly": true, "type": "string" } }, "type": "object" }, - "ExternalVpnGatewayList": { - "description": "Response to the list request, and contains a list of externalVpnGateways.", - "id": "ExternalVpnGatewayList", + "FutureReservationCommitmentInfo": { + "id": "FutureReservationCommitmentInfo", "properties": { - "etag": { - "type": "string" - }, - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" - }, - "items": { - "description": "A list of ExternalVpnGateway resources.", - "items": { - "$ref": "ExternalVpnGateway" - }, - "type": "array" - }, - "kind": { - "default": "compute#externalVpnGatewayList", - "description": "Output only. [Output Only] Type of resource. Always compute#externalVpnGatewayList for lists of externalVpnGateways.", - "readOnly": true, + "commitmentName": { + "description": "name of the commitment where capacity is being delivered to.", "type": "string" }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "commitmentPlan": { + "description": "Indicates if a Commitment needs to be created as part of FR delivery. If\nthis field is not present, then no\ncommitment needs to be created.", + "enum": [ + "INVALID", + "THIRTY_SIX_MONTH", + "TWELVE_MONTH" + ], + "enumDescriptions": [ + "", + "", + "" + ], "type": "string" }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, + "previousCommitmentTerms": { + "description": "Only applicable if FR is delivering to the same reservation. If set, all\nparent commitments will be extended to match the end date of the plan for\nthis commitment.", + "enum": [ + "EXTEND", + "PREVIOUSCOMMITMENTTERM_UNSPECIFIED" + ], + "enumDescriptions": [ + "All associated parent Committed Used Discount(s) end-date/term will be\nextended to the end-time of this future reservation. Default is to\nextend previous commitment(s) time to the end_time of the reservation.", + "No changes to associated parents Committed Used Discount(s) terms." + ], "type": "string" - }, - "warning": { - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", - "LARGE_DEPLOYMENT_WARNING", - "LIST_OVERHEAD_QUOTA_EXCEED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "PARTIAL_SUCCESS", - "QUOTA_INFO_UNAVAILABLE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDeprecated": [ - false, - false, - false, - false, - false, - false, - true, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false - ], - "enumDescriptions": [ - "Warning about failed cleanup of transient changes made by a failed\noperation.", - "A link to a deprecated resource was created.", - "When deploying and at least one of the resources has a type marked as\ndeprecated", - "The user created a boot disk that is larger than image size.", - "When deploying and at least one of the resources has a type marked as\nexperimental", - "Warning that is present in an external api call", - "Warning that value of a field has been overridden.\nDeprecated unused field.", - "The operation involved use of an injected kernel, which is deprecated.", - "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", - "When deploying a deployment with a exceedingly large number of resources", - "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", - "A resource depends on a missing type", - "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", - "The route's next hop instance cannot ip forward.", - "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", - "The route's nextHopInstance URL refers to an instance that does not exist.", - "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", - "The route's next hop instance does not have a status of RUNNING.", - "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", - "No results are present on a particular list page.", - "Success is reported, but some results may be missing due to errors", - "Quota information is not available to client requests (e.g:\nregions.list).", - "The user attempted to use a resource that requires a TOS they have not\naccepted.", - "Warning that a resource is in use.", - "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", - "When a resource schema validation is ignored.", - "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", - "When undeclared properties in the schema are present", - "A given scope cannot be reached." - ], - "type": "string" - }, - "data": { - "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", - "items": { - "properties": { - "key": { - "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", - "type": "string" - }, - "value": { - "description": "[Output Only] A warning data value corresponding to the key.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "message": { - "description": "[Output Only] A human-readable description of the warning code.", - "type": "string" - } - }, - "type": "object" } }, "type": "object" }, - "ExternalVpnGatewayParams": { - "id": "ExternalVpnGatewayParams", + "FutureReservationParams": { + "description": "Additional future reservation params.", + "id": "FutureReservationParams", "properties": { "resourceManagerTags": { "additionalProperties": { "type": "string" }, - "description": "Tag keys/values directly bound to this resource.\nTag keys and values have the same definition as resource\nmanager tags. The field is allowed for INSERT\nonly. The keys/values to set on the resource should be specified in\neither ID { : } or Namespaced format\n{ : }.\nFor example the following are valid inputs:\n* {\"tagKeys/333\" : \"tagValues/444\", \"tagKeys/123\" : \"tagValues/456\"}\n* {\"123/environment\" : \"production\", \"345/abc\" : \"xyz\"}\nNote:\n* Invalid combinations of ID & namespaced format is not supported. For\n instance: {\"123/environment\" : \"tagValues/444\"} is invalid.\n* Inconsistent format is not supported. For instance:\n {\"tagKeys/333\" : \"tagValues/444\", \"123/env\" : \"prod\"} is invalid.", + "description": "Input only. Resource manager tags to be bound to the future reservation. Tag keys and\nvalues have the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, "type": "object" }, - "FileContentBuffer": { - "id": "FileContentBuffer", + "FutureReservationSpecificSKUProperties": { + "id": "FutureReservationSpecificSKUProperties", "properties": { - "content": { - "description": "The raw content in the secure keys file.", - "format": "byte", + "instanceProperties": { + "$ref": "AllocationSpecificSKUAllocationReservedInstanceProperties", + "description": "Properties of the SKU instances being reserved." + }, + "sourceInstanceTemplate": { + "description": "The instance template that will be used to populate the\nReservedInstanceProperties of the future reservation", "type": "string" }, - "fileType": { - "description": "The file type of source file.", - "enum": [ - "BIN", - "UNDEFINED", - "X509" - ], - "enumDescriptions": [ - "", - "", - "" - ], + "totalCount": { + "description": "Total number of instances for which capacity assurance is requested at a\nfuture time period.", + "format": "int64", "type": "string" } }, "type": "object" }, - "Firewall": { - "description": "Represents a Firewall Rule resource.\n\nFirewall rules allow or deny ingress traffic to, and egress traffic from your\ninstances. For more information, readFirewall rules.", - "id": "Firewall", + "FutureReservationStatus": { + "description": "[Output only] Represents status related to the future reservation.", + "id": "FutureReservationStatus", "properties": { - "allowed": { - "description": "The list of ALLOW rules specified by this firewall. Each rule specifies a\nprotocol and port-range tuple that describes a permitted connection.", - "items": { - "properties": { - "IPProtocol": { - "description": "The IP protocol to which this rule applies. The protocol type is\nrequired when creating a firewall rule. This value can either be one of the\nfollowing well known protocol strings (tcp, udp,icmp, esp, ah, ipip,sctp) or the IP protocol number.", - "type": "string" - }, - "ports": { - "description": "An optional list of ports to which this rule applies.\nThis field is only applicable for the UDP or TCP protocol.\nEach entry must be either an integer or a range.\nIf not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"],\nand [\"12345-12349\"].", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "type": "array" - }, - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "amendmentStatus": { + "description": "Output only. [Output Only] The current status of the requested amendment.", + "enum": [ + "AMENDMENT_APPROVED", + "AMENDMENT_DECLINED", + "AMENDMENT_IN_REVIEW", + "AMENDMENT_STATUS_UNSPECIFIED" + ], + "enumDescriptions": [ + "The requested amendment to the Future Resevation has been approved and\napplied by GCP.", + "The requested amendment to the Future Reservation has been declined by\nGCP and the original state was restored.", + "The requested amendment to the Future Reservation is currently being\nreviewd by GCP.", + "" + ], "readOnly": true, "type": "string" }, - "denied": { - "description": "The list of DENY rules specified by this firewall. Each rule specifies a\nprotocol and port-range tuple that describes a denied connection.", + "autoCreatedReservations": { + "description": "Output only. Fully qualified urls of the automatically created reservations at\nstart_time.", "items": { - "properties": { - "IPProtocol": { - "description": "The IP protocol to which this rule applies. The protocol type is\nrequired when creating a firewall rule. This value can either be one of the\nfollowing well known protocol strings (tcp, udp,icmp, esp, ah, ipip,sctp) or the IP protocol number.", - "type": "string" - }, - "ports": { - "description": "An optional list of ports to which this rule applies.\nThis field is only applicable for the UDP or TCP protocol.\nEach entry must be either an integer or a range.\nIf not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"],\nand [\"12345-12349\"].", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" + "type": "string" }, + "readOnly": true, "type": "array" }, - "description": { - "description": "An optional description of this resource. Provide this field when you\ncreate the resource.", + "existingMatchingUsageInfo": { + "$ref": "FutureReservationStatusExistingMatchingUsageInfo", + "description": "Output only. [Output Only] Represents the existing matching usage for the future\nreservation.", + "readOnly": true + }, + "fulfilledCount": { + "description": "Output only. This count indicates the fulfilled capacity so far. This is set during\n\"PROVISIONING\" state. This count also includes capacity delivered as part\nof existing matching reservations.", + "format": "int64", + "readOnly": true, "type": "string" }, - "destinationRanges": { - "description": "If destination ranges are specified, the firewall rule applies only to\ntraffic that has destination IP address in these ranges. These ranges must\nbe expressed inCIDR format. Both IPv4 and IPv6 are supported.", - "items": { - "type": "string" - }, - "type": "array" + "lastKnownGoodState": { + "$ref": "FutureReservationStatusLastKnownGoodState", + "description": "Output only. [Output Only] This field represents the future reservation before an\namendment was requested. If the amendment is declined, the Future\nReservation will be reverted to the last known good state. The last known\ngood state is not set when updating a future reservation whose\nProcurement Status is DRAFTING.", + "readOnly": true }, - "direction": { - "description": "Direction of traffic to which this firewall applies, either `INGRESS` or\n`EGRESS`. The default is `INGRESS`. For `EGRESS` traffic, you cannot\nspecify the sourceTags fields.", + "lockTime": { + "description": "Output only. Time when Future Reservation would become LOCKED, after which no\nmodifications to Future Reservation will be allowed. Applicable only\nafter the Future Reservation is in the APPROVED state. The lock_time is\nan RFC3339 string. The procurement_status will transition to PROCURING\nstate at this time.", + "readOnly": true, + "type": "string" + }, + "procurementStatus": { + "description": "Output only. Current state of this Future Reservation", "enum": [ - "EGRESS", - "INGRESS" + "APPROVED", + "CANCELLED", + "COMMITTED", + "DECLINED", + "DRAFTING", + "FAILED", + "FAILED_PARTIALLY_FULFILLED", + "FULFILLED", + "PENDING_AMENDMENT_APPROVAL", + "PENDING_APPROVAL", + "PROCUREMENT_STATUS_UNSPECIFIED", + "PROCURING", + "PROVISIONING" ], "enumDescriptions": [ - "Indicates that firewall should apply to outgoing traffic.", - "Indicates that firewall should apply to incoming traffic." + "Future reservation is approved by GCP.", + "Future reservation is cancelled by the customer.", + "Future reservation is committed by the customer.", + "Future reservation is rejected by GCP.", + "Related status for PlanningStatus.Draft. Transitions to\nPENDING_APPROVAL upon user submitting FR.", + "Future reservation failed. No additional reservations were provided.", + "Future reservation is partially fulfilled. Additional reservations were\nprovided but did not reach total_count reserved instance slots.", + "Future reservation is fulfilled completely.", + "An Amendment to the Future Reservation has been requested. If the\nAmendment is declined, the Future Reservation will be restored to the\nlast known good state.", + "Future reservation is pending approval by GCP.", + "", + "Future reservation is being procured by GCP. Beyond this point, Future\nreservation is locked and no further modifications are allowed.", + "Future reservation capacity is being provisioned. This state will be\nentered after start_time, while reservations are being created to\nprovide total_count reserved instance slots. This state will not\npersist past start_time + 24h." ], + "readOnly": true, "type": "string" }, - "disabled": { - "description": "Denotes whether the firewall rule is disabled. When set to true, the\nfirewall rule is not enforced and the network behaves as if it did not\nexist. If this is unspecified, the firewall rule will be enabled.", - "type": "boolean" - }, - "id": { - "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", + "specificSkuProperties": { + "$ref": "FutureReservationStatusSpecificSKUProperties" + } + }, + "type": "object" + }, + "FutureReservationStatusExistingMatchingUsageInfo": { + "description": "[Output Only] Represents the existing matching usage for the future\nreservation.", + "id": "FutureReservationStatusExistingMatchingUsageInfo", + "properties": { + "count": { + "description": "Output only. Count to represent min(FR total_count,\nmatching_reserved_capacity+matching_unreserved_instances)", + "format": "int64", "readOnly": true, "type": "string" }, - "kind": { - "default": "compute#firewall", - "description": "Output only. [Output Only] Type of the resource. Always compute#firewall\nfor firewall rules.", + "timestamp": { + "description": "Output only. Timestamp when the matching usage was calculated", "readOnly": true, "type": "string" - }, - "logConfig": { - "$ref": "FirewallLogConfig", - "description": "This field denotes the logging options for a particular firewall rule. If\nlogging is enabled, logs will be exported to Cloud Logging." - }, - "name": { - "annotations": { - "required": [ - "compute.firewalls.insert", - "compute.firewalls.patch" - ] - }, - "description": "Name of the resource; provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character\nmust be a lowercase letter, and all following characters (except for the\nlast character) must be a dash, lowercase letter, or digit. The last\ncharacter must be a lowercase letter or digit.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + } + }, + "type": "object" + }, + "FutureReservationStatusLastKnownGoodState": { + "description": "The state that the future reservation will be reverted to should the\namendment be declined.", + "id": "FutureReservationStatusLastKnownGoodState", + "properties": { + "description": { + "description": "Output only. [Output Only] The description of the FutureReservation before an\namendment was requested.", + "readOnly": true, "type": "string" }, - "network": { - "description": "URL of the network resource for this firewall rule. If not\nspecified when creating a firewall rule, the default network\nis used:\n\nglobal/networks/default\n\nIf you choose to specify this field, you can specify the network as a full \nor partial URL. For example, the following are all valid URLs: \n \n - \n https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network \n - projects/myproject/global/networks/my-network \n - global/networks/default", - "type": "string" + "existingMatchingUsageInfo": { + "$ref": "FutureReservationStatusExistingMatchingUsageInfo", + "description": "Output only. [Output Only] Represents the matching usage for the future\nreservation before an amendment was requested.", + "readOnly": true }, - "params": { - "$ref": "FirewallParams", - "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." + "futureReservationSpecs": { + "$ref": "FutureReservationStatusLastKnownGoodStateFutureReservationSpecs", + "readOnly": true }, - "priority": { - "description": "Priority for this rule.\nThis is an integer between `0` and `65535`, both inclusive.\nThe default value is `1000`.\nRelative priorities determine which rule takes effect if multiple rules\napply. Lower values indicate higher priority. For example, a rule with\npriority `0` has higher precedence than a rule with priority `1`.\nDENY rules take precedence over ALLOW rules if they have equal priority.\nNote that VPC networks have implied\nrules with a priority of `65535`. To avoid conflicts with the implied\nrules, use a priority number less than `65535`.", - "format": "int32", - "type": "integer" + "lockTime": { + "description": "Output only. [Output Only] The lock time of the FutureReservation before an\namendment was requested.", + "readOnly": true, + "type": "string" }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", + "namePrefix": { + "description": "Output only. [Output Only] The name prefix of the Future Reservation before an\namendment was requested.", + "readOnly": true, "type": "string" }, - "sourceRanges": { - "description": "If source ranges are specified, the firewall rule applies only to traffic\nthat has a source IP address in these ranges. These ranges must be\nexpressed inCIDR format. One or both of sourceRanges\nand sourceTags may be set.\nIf both fields are set, the rule applies to traffic that has a\nsource IP address within sourceRanges OR a source IP\nfrom a resource with a matching tag listed in thesourceTags field. The connection does not need to match\nboth fields for the rule to\napply. Both IPv4 and IPv6 are supported.", - "items": { - "type": "string" - }, - "type": "array" + "procurementStatus": { + "description": "Output only. [Output Only] The status of the last known good state for the Future\nReservation.", + "enum": [ + "APPROVED", + "CANCELLED", + "COMMITTED", + "DECLINED", + "DRAFTING", + "FAILED", + "FAILED_PARTIALLY_FULFILLED", + "FULFILLED", + "PENDING_AMENDMENT_APPROVAL", + "PENDING_APPROVAL", + "PROCUREMENT_STATUS_UNSPECIFIED", + "PROCURING", + "PROVISIONING" + ], + "enumDescriptions": [ + "Future reservation is approved by GCP.", + "Future reservation is cancelled by the customer.", + "Future reservation is committed by the customer.", + "Future reservation is rejected by GCP.", + "Related status for PlanningStatus.Draft. Transitions to\nPENDING_APPROVAL upon user submitting FR.", + "Future reservation failed. No additional reservations were provided.", + "Future reservation is partially fulfilled. Additional reservations were\nprovided but did not reach total_count reserved instance slots.", + "Future reservation is fulfilled completely.", + "An Amendment to the Future Reservation has been requested. If the\nAmendment is declined, the Future Reservation will be restored to the\nlast known good state.", + "Future reservation is pending approval by GCP.", + "", + "Future reservation is being procured by GCP. Beyond this point, Future\nreservation is locked and no further modifications are allowed.", + "Future reservation capacity is being provisioned. This state will be\nentered after start_time, while reservations are being created to\nprovide total_count reserved instance slots. This state will not\npersist past start_time + 24h." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "FutureReservationStatusLastKnownGoodStateFutureReservationSpecs": { + "description": "The properties of the last known good state for the Future Reservation.", + "id": "FutureReservationStatusLastKnownGoodStateFutureReservationSpecs", + "properties": { + "shareSettings": { + "$ref": "ShareSettings", + "description": "Output only. [Output Only] The previous share settings of the Future Reservation.", + "readOnly": true }, - "sourceServiceAccounts": { - "description": "If source service accounts are specified, the firewall rules apply only to\ntraffic originating from an instance with a service account in this list.\nSource service accounts cannot be used to control traffic to an instance's\nexternal IP address because service accounts are associated with an\ninstance, not an IP address.sourceRanges can be set at the same time assourceServiceAccounts.\nIf both are set, the firewall applies to traffic that\nhas a source IP address within the sourceRanges OR a source\nIP that belongs to an instance with service account listed insourceServiceAccount. The connection does not need to match\nboth fields for the firewall to apply.sourceServiceAccounts cannot be used at the same time assourceTags or targetTags.", - "items": { - "type": "string" - }, - "type": "array" + "specificSkuProperties": { + "$ref": "FutureReservationSpecificSKUProperties", + "description": "Output only. [Output Only] The previous instance related properties of the\nFuture Reservation.", + "readOnly": true }, - "sourceTags": { - "description": "If source tags are specified, the firewall rule applies only to traffic\nwith source IPs that match the primary network interfaces of VM instances\nthat have the tag and are in the same VPC network.\nSource tags cannot be used to control traffic to an instance's external IP\naddress, it only applies to traffic between instances in the same virtual\nnetwork. Because tags are associated with instances, not IP addresses.\nOne or both of sourceRanges and sourceTags may be\nset. If both fields are set, the firewall applies to traffic that has a\nsource IP address within sourceRanges OR a source IP from a\nresource with a matching tag listed in the sourceTags\nfield. The connection does not need to match both fields for the\nfirewall to apply.", - "items": { - "type": "string" - }, - "type": "array" + "timeWindow": { + "$ref": "FutureReservationTimeWindow", + "description": "Output only. [Output Only] The previous time window of the Future Reservation.", + "readOnly": true + } + }, + "type": "object" + }, + "FutureReservationStatusSpecificSKUProperties": { + "description": "Properties to be set for the Future Reservation.", + "id": "FutureReservationStatusSpecificSKUProperties", + "properties": { + "sourceInstanceTemplateId": { + "description": "ID of the instance template used to populate the Future Reservation\nproperties.", + "type": "string" + } + }, + "type": "object" + }, + "FutureReservationTimeWindow": { + "id": "FutureReservationTimeWindow", + "properties": { + "duration": { + "$ref": "Duration" }, - "targetServiceAccounts": { - "description": "A list of service accounts indicating sets of instances located in the\nnetwork that may make network connections as specified inallowed[].targetServiceAccounts cannot be used at the same time astargetTags or sourceTags.\nIf neither targetServiceAccounts nor targetTags\nare specified, the firewall rule applies to all instances on the specified\nnetwork.", - "items": { - "type": "string" - }, - "type": "array" + "endTime": { + "type": "string" }, - "targetTags": { - "description": "A list of tags that controls which instances the firewall rule\napplies to. If targetTags are specified, then the firewall\nrule applies only to instances in the VPC network that have one of those\ntags. If no targetTags are specified, the firewall rule\napplies to all instances on the specified network.", - "items": { - "type": "string" - }, - "type": "array" + "startTime": { + "description": "Start time of the Future Reservation. The start_time is an RFC3339\nstring.", + "type": "string" } }, "type": "object" }, - "FirewallList": { - "description": "Contains a list of firewalls.", - "id": "FirewallList", + "FutureReservationsAggregatedListResponse": { + "description": "Contains a list of future reservations.", + "id": "FutureReservationsAggregatedListResponse", "properties": { + "etag": { + "type": "string" + }, "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of Firewall resources.", - "items": { - "$ref": "Firewall" + "additionalProperties": { + "$ref": "FutureReservationsScopedList", + "description": "Name of the scope containing this set of future reservations." }, - "type": "array" + "description": "A list of Future reservation resources.", + "type": "object" }, "kind": { - "default": "compute#firewallList", - "description": "Output only. [Output Only] Type of resource. Always compute#firewallList\nfor lists of firewalls.", + "default": "compute#futureReservationsAggregatedListResponse", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#futureReservationsAggregatedListResponse for future\nresevation aggregated list response.", "readOnly": true, "type": "string" }, @@ -52434,7 +60120,15 @@ "selfLink": { "description": "Output only. [Output Only] Server-defined URL for this resource.", "readOnly": true, - "type": "string" + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" }, "warning": { "description": "[Output Only] Informational warning message.", @@ -52563,74 +60257,48 @@ }, "type": "object" }, - "FirewallLogConfig": { - "description": "The available logging options for a firewall rule.", - "id": "FirewallLogConfig", + "FutureReservationsListResponse": { + "id": "FutureReservationsListResponse", "properties": { - "enable": { - "description": "This field denotes whether to enable logging for a particular firewall\nrule.", - "type": "boolean" + "etag": { + "type": "string" }, - "metadata": { - "description": "This field can only be specified for a particular firewall rule if\nlogging is enabled for that rule. This field denotes whether to include\nor exclude metadata for firewall logs.", - "enum": [ - "EXCLUDE_ALL_METADATA", - "INCLUDE_ALL_METADATA" - ], - "enumDescriptions": [ - "", - "" - ], + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "type": "string" - } - }, - "type": "object" - }, - "FirewallParams": { - "description": "Additional firewall parameters.", - "id": "FirewallParams", - "properties": { - "resourceManagerTags": { - "additionalProperties": { - "type": "string" - }, - "description": "Tag keys/values directly bound to this resource.\nTag keys and values have the same definition as resource\nmanager tags. The field is allowed for INSERT\nonly. The keys/values to set on the resource should be specified in\neither ID { : } or Namespaced format\n{ : }.\nFor example the following are valid inputs:\n* {\"tagKeys/333\" : \"tagValues/444\", \"tagKeys/123\" : \"tagValues/456\"}\n* {\"123/environment\" : \"production\", \"345/abc\" : \"xyz\"}\nNote:\n* Invalid combinations of ID & namespaced format is not supported. For\n instance: {\"123/environment\" : \"tagValues/444\"} is invalid.", - "type": "object" - } - }, - "type": "object" - }, - "FirewallPoliciesListAssociationsResponse": { - "id": "FirewallPoliciesListAssociationsResponse", - "properties": { - "associations": { - "description": "A list of associations.", + }, + "items": { + "description": "[Output Only] A list of future reservation resources.", "items": { - "$ref": "FirewallPolicyAssociation" + "$ref": "FutureReservation" }, "type": "array" }, "kind": { - "default": "compute#firewallPoliciesListAssociationsResponse", - "description": "Output only. [Output Only] Type of firewallPolicy associations. Alwayscompute#FirewallPoliciesListAssociations for lists of\nfirewallPolicy associations.", + "default": "compute#futureReservationsListResponse", + "description": "Output only. [Output Only] Type of resource.Alwayscompute#FutureReservationsListResponse for lists of\nreservations", "readOnly": true, "type": "string" - } - }, - "type": "object" - }, - "FirewallPoliciesScopedList": { - "id": "FirewallPoliciesScopedList", - "properties": { - "firewallPolicies": { - "description": "A list of firewall policies contained in this scope.", + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", "items": { - "$ref": "FirewallPolicy" + "type": "string" }, + "readOnly": true, "type": "array" }, "warning": { - "description": "Informational warning which replaces the list of firewall policies when\nthe list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -52756,166 +60424,18 @@ }, "type": "object" }, - "FirewallPolicy": { - "description": "Represents a Firewall Policy resource.", - "id": "FirewallPolicy", - "properties": { - "associations": { - "description": "A list of associations that belong to this firewall policy.", - "items": { - "$ref": "FirewallPolicyAssociation" - }, - "type": "array" - }, - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "displayName": { - "deprecated": true, - "description": "Deprecated, please use short name instead. User-provided name of the\nOrganization firewall policy. The name should be unique in the organization\nin which the firewall policy is created.\nThis field is not applicable to network firewall policies.\nThis name must be set on creation and cannot be changed.\nThe name must be 1-63 characters long, and comply\nwith RFC1035. Specifically, the name must be 1-63 characters\nlong and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which\nmeans the first character must be a lowercase letter, and all following\ncharacters must be a dash, lowercase letter, or digit, except the last\ncharacter, which cannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "fingerprint": { - "description": "Specifies a fingerprint for this resource, which is essentially a hash of\nthe metadata's contents and used for optimistic locking. The\nfingerprint is initially generated by Compute Engine and changes after\nevery request to modify or update metadata. You must always provide an\nup-to-date fingerprint hash in order to update or change metadata,\notherwise the request will fail with error412 conditionNotMet.\n\nTo see the latest fingerprint, make get() request to the\nfirewall policy.", - "format": "byte", - "type": "string" - }, - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "type": "string" - }, - "kind": { - "default": "compute#firewallPolicy", - "description": "Output only. [Output only] Type of the resource. Alwayscompute#firewallPolicyfor firewall policies", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "Name of the resource. For Organization Firewall Policies it's a\n[Output Only] numeric ID allocated by Google Cloud which uniquely\nidentifies the Organization Firewall Policy.", - "type": "string" - }, - "packetMirroringRules": { - "description": "A list of packet mirroring rules that belong to this policy.", - "items": { - "$ref": "FirewallPolicyRule" - }, - "type": "array" - }, - "parent": { - "description": "Output only. [Output Only] The parent of the firewall policy.\nThis field is not applicable to network firewall policies.", - "readOnly": true, - "type": "string" - }, - "policyType": { - "description": "The type of the firewall policy. This field can be eitherVPC_POLICY or RDMA_ROCE_POLICY.\n\nNote: if not specified then VPC_POLICY will be used.", - "enum": [ - "RDMA_ROCE_POLICY", - "VPC_POLICY" - ], - "enumDescriptions": [ - "", - "" - ], - "type": "string" - }, - "region": { - "description": "Output only. [Output Only] URL of the region where the regional firewall policy resides.\nThis field is not applicable to global firewall policies.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", - "readOnly": true, - "type": "string" - }, - "ruleTupleCount": { - "description": "Output only. [Output Only] Total count of all firewall policy rule tuples. A firewall\npolicy can not exceed a set number of tuples.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "rules": { - "description": "A list of rules that belong to this policy.\nThere must always be a default rule (rule with priority 2147483647 and\nmatch \"*\"). If no rules are provided when creating a firewall policy, a\ndefault rule with action \"allow\" will be added.", - "items": { - "$ref": "FirewallPolicyRule" - }, - "type": "array" - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", - "type": "string" - }, - "selfLinkWithId": { - "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", - "readOnly": true, - "type": "string" - }, - "shortName": { - "description": "User-provided name of the Organization firewall policy. The name should be\nunique in the organization in which the firewall policy is created.\nThis field is not applicable to network firewall policies.\nThis name must be set on creation and cannot be changed. The name must be\n1-63 characters long, and comply with RFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - } - }, - "type": "object" - }, - "FirewallPolicyAssociation": { - "id": "FirewallPolicyAssociation", - "properties": { - "attachmentTarget": { - "description": "The target that the firewall policy is attached to.", - "type": "string" - }, - "displayName": { - "deprecated": true, - "description": "[Output Only] Deprecated, please use short name instead. The display name\nof the firewall policy of the association.", - "type": "string" - }, - "firewallPolicyId": { - "description": "Output only. [Output Only] The firewall policy ID of the association.", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "The name for an association.", - "type": "string" - }, - "shortName": { - "description": "Output only. [Output Only] The short name of the firewall policy of the association.", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "FirewallPolicyList": { - "id": "FirewallPolicyList", + "FutureReservationsScopedList": { + "id": "FutureReservationsScopedList", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" - }, - "items": { - "description": "A list of FirewallPolicy resources.", + "futureReservations": { + "description": "A list of future reservations contained in this scope.", "items": { - "$ref": "FirewallPolicy" + "$ref": "FutureReservation" }, "type": "array" }, - "kind": { - "default": "compute#firewallPolicyList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#firewallPolicyList for listsof FirewallPolicies", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "type": "string" - }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "Informational warning which replaces the list of future reservations when\nthe list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -53041,370 +60561,127 @@ }, "type": "object" }, - "FirewallPolicyRule": { - "description": "Represents a rule that describes one or more match conditions along with\nthe action to be taken when traffic matches this condition (allow or deny).", - "id": "FirewallPolicyRule", - "properties": { - "action": { - "description": "The Action to perform when the client connection triggers the rule.\nValid actions for firewall rules are: \"allow\", \"deny\",\n\"apply_security_profile_group\" and \"goto_next\".\nValid actions for packet mirroring rules are: \"mirror\", \"do_not_mirror\"\nand \"goto_next\".", - "type": "string" - }, - "description": { - "description": "An optional description for this resource.", - "type": "string" - }, - "direction": { - "description": "The direction in which this rule applies.", - "enum": [ - "EGRESS", - "INGRESS" - ], - "enumDescriptions": [ - "", - "" - ], - "type": "string" - }, - "disabled": { - "description": "Denotes whether the firewall policy rule is disabled. When set to true,\nthe firewall policy rule is not enforced and traffic behaves as if it did\nnot exist. If this is unspecified, the firewall policy rule will be\nenabled.", - "type": "boolean" - }, - "enableLogging": { - "description": "Denotes whether to enable logging for a particular rule. If logging is\nenabled, logs will be exported to the configured export destination in\nStackdriver. Logs may be exported to BigQuery or Pub/Sub. Note: you\ncannot enable logging on \"goto_next\" rules.", - "type": "boolean" - }, - "kind": { - "default": "compute#firewallPolicyRule", - "description": "Output only. [Output only] Type of the resource. Returnscompute#firewallPolicyRule for firewall rules andcompute#packetMirroringRule for packet mirroring rules.", - "readOnly": true, - "type": "string" - }, - "match": { - "$ref": "FirewallPolicyRuleMatcher", - "description": "A match condition that incoming traffic is evaluated against.\nIf it evaluates to true, the corresponding 'action' is enforced." - }, - "priority": { - "description": "An integer indicating the priority of a rule in the list. The priority\nmust be a positive value between 0 and 2147483647.\nRules are evaluated from highest to lowest priority where 0 is the\nhighest priority and 2147483647 is the lowest priority.", - "format": "int32", - "type": "integer" - }, - "ruleName": { - "description": "An optional name for the rule. This field is not a unique identifier\nand can be updated.", - "type": "string" - }, - "ruleTupleCount": { - "description": "Output only. [Output Only] Calculation of the complexity of a single firewall policy\nrule.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "securityProfileGroup": { - "description": "A fully-qualified URL of a SecurityProfile resource instance.\nExample:\nhttps://networksecurity.googleapis.com/v1/projects/{project}/locations/{location}/securityProfileGroups/my-security-profile-group\nMust be specified if action is one of 'apply_security_profile_group' or\n'mirror'. Cannot be specified for other actions.", - "type": "string" - }, - "targetResources": { - "description": "A list of network resource URLs to which this rule applies. This field\nallows you to control which network's VMs get this rule. If this field\nis left blank, all VMs within the organization will receive the rule.", - "items": { - "type": "string" - }, - "type": "array" - }, - "targetSecureTags": { - "description": "A list of secure tags that controls which instances the firewall rule\napplies to. If targetSecureTag are specified, then the\nfirewall rule applies only to instances in the VPC network that have one\nof those EFFECTIVE secure tags, if all the target_secure_tag are in\nINEFFECTIVE state, then this rule will be ignored.targetSecureTag may not be set at the same time astargetServiceAccounts.\nIf neither targetServiceAccounts nortargetSecureTag are specified, the firewall rule applies\nto all instances on the specified network.\nMaximum number of target label tags allowed is 256.", - "items": { - "$ref": "FirewallPolicyRuleSecureTag" - }, - "type": "array" - }, - "targetServiceAccounts": { - "description": "A list of service accounts indicating the sets of instances that are\napplied with this rule.", - "items": { - "type": "string" - }, - "type": "array" - }, - "tlsInspect": { - "description": "Boolean flag indicating if the traffic should be TLS decrypted.\nCan be set only if action = 'apply_security_profile_group' and cannot\nbe set for other actions.", - "type": "boolean" - } - }, - "type": "object" - }, - "FirewallPolicyRuleMatcher": { - "description": "Represents a match condition that incoming traffic is evaluated against.\nExactly one field must be specified.", - "id": "FirewallPolicyRuleMatcher", + "FutureResourcesRecommendation": { + "description": "Recommendation for single resources specification, to be created in the\nfuture.", + "id": "FutureResourcesRecommendation", "properties": { - "destAddressGroups": { - "description": "Address groups which should be matched against the traffic destination.\nMaximum number of destination address groups is 10.", - "items": { - "type": "string" - }, - "type": "array" - }, - "destFqdns": { - "description": "Fully Qualified Domain Name (FQDN) which should be matched against\ntraffic destination.\nMaximum number of destination fqdn allowed is 100.", - "items": { - "type": "string" - }, - "type": "array" - }, - "destIpRanges": { - "description": "CIDR IP address range.\nMaximum number of destination CIDR IP ranges allowed is 5000.", - "items": { - "type": "string" - }, - "type": "array" - }, - "destNetworkContext": { - "description": "Network context of the traffic destination. Allowed values are:\n \n \n - UNSPECIFIED\n - INTERNET\n - NON_INTERNET", - "enum": [ - "INTERNET", - "INTRA_VPC", - "NON_INTERNET", - "UNSPECIFIED", - "VPC_NETWORKS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], + "endTime": { + "format": "google-datetime", "type": "string" }, - "destNetworkType": { - "description": "Network type of the traffic destination. Allowed values are:\n \n \n - UNSPECIFIED\n - INTERNET\n - NON_INTERNET", - "enum": [ - "INTERNET", - "INTRA_VPC", - "NON_INTERNET", - "UNSPECIFIED", - "VPC_NETWORKS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], + "location": { + "description": "The advised location for resource usage. When a zone, in format\n'zones/'.\nIf not set, it means that no location is recommended - see\nother_locations for details.", "type": "string" }, - "destRegionCodes": { - "description": "Region codes whose IP addresses will be used to match for destination\nof traffic. Should be specified as 2 letter country code defined as per\nISO 3166 alpha-2 country codes. ex.\"US\"\nMaximum number of dest region codes allowed is 5000.", - "items": { - "type": "string" - }, - "type": "array" - }, - "destThreatIntelligences": { - "description": "Names of Network Threat Intelligence lists.\nThe IPs in these lists will be matched against traffic destination.", - "items": { - "type": "string" - }, - "type": "array" - }, - "layer4Configs": { - "description": "Pairs of IP protocols and ports that the rule should match.", - "items": { - "$ref": "FirewallPolicyRuleMatcherLayer4Config" - }, - "type": "array" - }, - "srcAddressGroups": { - "description": "Address groups which should be matched against the traffic source.\nMaximum number of source address groups is 10.", - "items": { - "type": "string" - }, - "type": "array" - }, - "srcFqdns": { - "description": "Fully Qualified Domain Name (FQDN) which should be matched against\ntraffic source.\nMaximum number of source fqdn allowed is 100.", - "items": { - "type": "string" - }, - "type": "array" - }, - "srcIpRanges": { - "description": "CIDR IP address range.\nMaximum number of source CIDR IP ranges allowed is 5000.", - "items": { - "type": "string" + "otherLocations": { + "additionalProperties": { + "$ref": "FutureResourcesRecommendationOtherLocation" }, - "type": "array" + "description": "List of locations in the request scope that were not\nrecommended. Keys of the map are zones, in format 'zones/'.\nThe values are status information indicating the recommendation status.", + "type": "object" }, - "srcNetworkContext": { - "description": "Network context of the traffic source. Allowed values are:\n \n \n - UNSPECIFIED\n - INTERNET\n - INTRA_VPC\n - NON_INTERNET\n - VPC_NETWORKS", - "enum": [ - "INTERNET", - "INTRA_VPC", - "NON_INTERNET", - "UNSPECIFIED", - "VPC_NETWORKS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], + "recommendationId": { + "description": "Unique id of the recommendation, a UUID string generated by the API.", "type": "string" }, - "srcNetworkType": { - "description": "Network type of the traffic source. Allowed values are:\n \n \n - UNSPECIFIED\n - INTERNET\n - INTRA_VPC\n - NON_INTERNET\n - VPC_NETWORKS", + "recommendationType": { + "description": "Type of recommendation. Currently only FUTURE_RESERVATION is supported.", "enum": [ - "INTERNET", - "INTRA_VPC", - "NON_INTERNET", - "UNSPECIFIED", - "VPC_NETWORKS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "" - ], - "type": "string" - }, - "srcNetworks": { - "description": "Networks of the traffic source. It can be either a full or partial url.", - "items": { - "type": "string" - }, - "type": "array" - }, - "srcRegionCodes": { - "description": "Region codes whose IP addresses will be used to match for source\nof traffic. Should be specified as 2 letter country code defined as per\nISO 3166 alpha-2 country codes. ex.\"US\"\nMaximum number of source region codes allowed is 5000.", - "items": { - "type": "string" - }, - "type": "array" - }, - "srcSecureTags": { - "description": "List of secure tag values, which should be matched at the source\nof the traffic.\nFor INGRESS rule, if all the srcSecureTag are INEFFECTIVE,\nand there is no srcIpRange, this rule will be ignored.\nMaximum number of source tag values allowed is 256.", - "items": { - "$ref": "FirewallPolicyRuleSecureTag" - }, - "type": "array" - }, - "srcThreatIntelligences": { - "description": "Names of Network Threat Intelligence lists.\nThe IPs in these lists will be matched against traffic source.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "FirewallPolicyRuleMatcherLayer4Config": { - "id": "FirewallPolicyRuleMatcherLayer4Config", - "properties": { - "ipProtocol": { - "description": "The IP protocol to which this rule applies. The protocol type is\nrequired when creating a firewall rule. This value can either be\none of the following well known protocol strings (tcp,udp, icmp, esp,ah, ipip, sctp), or the IP\nprotocol number.", + "FUTURE_RESERVATION", + "RECOMMENDATION_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "A Future Reservation is recommended.", + "Default value, unused." + ], "type": "string" }, - "ports": { - "description": "An optional list of ports to which this rule applies. This field is\nonly applicable for UDP or TCP protocol. Each entry must be either\nan integer or a range. If not specified, this rule applies to\nconnections through any port.\n\nExample inputs include: [\"22\"],[\"80\",\"443\"], and [\"12345-12349\"].", - "items": { - "type": "string" - }, - "type": "array" + "startTime": { + "format": "google-datetime", + "type": "string" } }, "type": "object" }, - "FirewallPolicyRuleSecureTag": { - "id": "FirewallPolicyRuleSecureTag", + "FutureResourcesRecommendationOtherLocation": { + "description": "Information about recommendation status for locations\nthat were allowed but not used by the response.", + "id": "FutureResourcesRecommendationOtherLocation", "properties": { - "name": { - "description": "Name of the secure tag, created with TagManager's TagValue API.", - "pattern": "tagValues/[0-9]+", + "details": { + "description": "Details (human readable) describing the situation.\nFor example, if status is CONDITION_NOT_MET, then\ndetails contain information about the parameters of the time window\nthat did not meet the required conditions.", "type": "string" }, - "state": { - "description": "Output only. [Output Only] State of the secure tag, either `EFFECTIVE` or\n`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted\nor its network is deleted.", + "status": { + "description": "Status of recommendation in this location.", "enum": [ - "EFFECTIVE", - "INEFFECTIVE" + "CONDITIONS_NOT_MET", + "NOT_SUPPORTED", + "NO_CAPACITY", + "OTHER_LOCATION_STATUS_UNDEFINED", + "RECOMMENDED" ], "enumDescriptions": [ - "", - "" + "The requested resources are offered in this location\nbut the requested time window is does not meet the required conditions.", + "The requested resources are not offered in this location.\nRetrying the request will not change this status.", + "The requested resources are offered in this location\nand the requested time window is accepted\nbut there is no capacity within the requested time window.", + "Default value, unused.", + "The requested resources are offered in this location\nand it is possible to request them. However, another location\nwas better and was recommended." ], - "readOnly": true, "type": "string" } }, "type": "object" }, - "FixedOrPercent": { - "description": "Encapsulates numeric value that can be either absolute or relative.", - "id": "FixedOrPercent", - "properties": { - "calculated": { - "description": "Output only. [Output Only] Absolute value of VM instances calculated based on the\nspecific mode.\n\n \n \n - If the value is fixed, then the calculated\n value is equal to the fixed value.\n - If the value is a percent, then the\n calculated\n value is percent/100 * targetSize. For example,\n the calculated value of a 80% of a managed instance group\n with 150 instances would be (80/100 * 150) = 120 VM instances. If there\n is a remainder, the number is rounded.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "fixed": { - "description": "Specifies a fixed number of VM instances. This must be a positive integer.", - "format": "int32", - "type": "integer" - }, - "percent": { - "description": "Specifies a percentage of instances between 0 to 100%, inclusive. For\nexample, specify 80 for 80%.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "FlexibleTimeRange": { - "description": "Specifies a flexible time range with flexible start time and duration.\n\nIt is possible to specify a contradictory time range that cannot be matched\nby any Interval. This causes a validation error.", - "id": "FlexibleTimeRange", + "FutureResourcesSpec": { + "description": "Specification of resources to be created at some time in the future within an\noptionally specified set of locations, and within the specified time range.", + "id": "FutureResourcesSpec", "properties": { - "maxDuration": { - "format": "google-duration", + "deploymentType": { + "description": "Indicates if the reservation allocation strategy is static (DENSE) or\ndynamic (STANDARD). Defaults to DENSE.", + "enum": [ + "DENSE", + "DEPLOYMENT_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "The reserved capacity is made up of densely deployed reservation blocks.", + "" + ], "type": "string" }, - "minDuration": { - "format": "google-duration", - "type": "string" + "locationPolicy": { + "$ref": "FutureResourcesSpecLocationPolicy", + "description": "Optional location policy allowing to exclude some zone(s) in which\nthe resources must not be created." }, - "startTimeNotEarlierThan": { - "format": "google-datetime", - "type": "string" + "targetResources": { + "$ref": "FutureResourcesSpecTargetResources", + "description": "Specification of the reserved resources." }, - "startTimeNotLaterThan": { - "format": "google-datetime", - "type": "string" + "timeRangeSpec": { + "$ref": "FlexibleTimeRange", + "description": "Specification of a time range in which the resources may be created.\nThe time range specifies start of resource use and planned end of resource\nuse." } }, "type": "object" }, - "ForwardingRule": { - "description": "Represents a Forwarding Rule resource.\n\nForwarding rule resources in Google Cloud can be either regional or global in\nscope:\n\n* [Global](https://cloud.google.com/compute/docs/reference/rest/v1/globalForwardingRules)\n* [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/forwardingRules)\n\nA forwarding rule and its corresponding IP address represent the frontend\nconfiguration of a Google Cloud load balancer.\nForwarding rules can also reference target instances and Cloud VPN Classic\ngateways (targetVpnGateway).\n\nFor more information, read\nForwarding rule concepts and\nUsing protocol forwarding.", - "id": "ForwardingRule", + "FutureResourcesSpecAggregateResources": { + "id": "FutureResourcesSpecAggregateResources", "properties": { - "IPAddress": { - "description": "IP address for which this forwarding rule accepts traffic. When a client\nsends traffic to this IP address, the forwarding rule directs the traffic\nto the referenced target or backendService.\nWhile creating a forwarding rule, specifying an IPAddress is\nrequired under the following circumstances:\n\n \n - When the target is set to targetGrpcProxy andvalidateForProxyless is set to true, theIPAddress should be set to 0.0.0.0.\n - When the target is a Private Service Connect Google APIs\n bundle, you must specify an IPAddress.\n\n\nOtherwise, you can optionally specify an IP address that references an\nexisting static (reserved) IP address resource. When omitted, Google Cloud\nassigns an ephemeral IP address.\n\nUse one of the following formats to specify an IP address while creating a\nforwarding rule:\n\n* IP address number, as in `100.1.2.3`\n* IPv6 address range, as in `2600:1234::/96`\n* Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/project_id/regions/region/addresses/address-name\n* Partial URL or by name, as in:\n \n - projects/project_id/regions/region/addresses/address-name\n - regions/region/addresses/address-name\n - global/addresses/address-name\n - address-name\n\n\n\nThe forwarding rule's target or backendService,\nand in most cases, also the loadBalancingScheme, determine the\ntype of IP address that you can use. For detailed information, see\n[IP address\nspecifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications).\n\nWhen reading an IPAddress, the API always returns the IP\naddress number.", + "acceleratorCount": { + "description": "Size of the request, in accelerator (chip) count.", + "format": "int64", "type": "string" }, - "IPProtocol": { - "description": "The IP protocol to which this rule applies.\n\nFor protocol forwarding, valid\noptions are TCP, UDP, ESP,AH, SCTP, ICMP andL3_DEFAULT.\n\nThe valid IP protocols are different for different load balancing products\nas described in [Load balancing\nfeatures](https://cloud.google.com/load-balancing/docs/features#protocols_from_the_load_balancer_to_the_backends).", + "vmFamily": { + "description": "The VM family that all instances scheduled against this reservation\nmust belong to. Use for TPU reservations.", "enum": [ - "AH", - "ESP", - "ICMP", - "L3_DEFAULT", - "SCTP", - "TCP", - "UDP" + "VM_FAMILY_CLOUD_TPU_DEVICE_CT3", + "VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L", + "VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP", + "VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT6E", + "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT3P", + "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P", + "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT5P", + "VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X" ], "enumDescriptions": [ "", @@ -53413,431 +60690,458 @@ "", "", "", + "", "" ], "type": "string" }, - "allPorts": { - "description": "The ports, portRange, and allPorts\nfields are mutually exclusive. Only packets addressed to ports in the\nspecified range will be forwarded to the backends configured with this\nforwarding rule.\n\nThe allPorts field has the following limitations:\n \n - It requires that the forwarding rule IPProtocol be TCP,\n UDP, SCTP, or L3_DEFAULT.\n - It's applicable only to the following products: internal passthrough\n Network Load Balancers, backend service-based external passthrough Network\n Load Balancers, and internal and external protocol forwarding.\n - Set this field to true to allow packets addressed to any port or\n packets lacking destination port information (for example, UDP fragments\n after the first fragment) to be forwarded to the backends configured with\n this forwarding rule. The L3_DEFAULT protocol requiresallPorts be set to true.", - "type": "boolean" - }, - "allowGlobalAccess": { - "description": "If set to true, clients can access the internal passthrough Network Load\nBalancers, the regional internal Application Load Balancer, and the\nregional internal proxy Network Load Balancer from all regions.\nIf false, only allows access from the local region the load balancer is\nlocated at. Note that for INTERNAL_MANAGED forwarding rules, this field\ncannot be changed after the forwarding rule is created.", - "type": "boolean" - }, - "allowPscGlobalAccess": { - "description": "This is used in PSC consumer ForwardingRule to control whether the PSC\nendpoint can be accessed from another region.", - "type": "boolean" - }, - "backendService": { - "description": "Identifies the backend service to which the forwarding rule sends traffic.\nRequired for internal and external passthrough Network Load Balancers;\nmust be omitted for all other load balancer types.", - "type": "string" - }, - "baseForwardingRule": { - "description": "Output only. [Output Only] The URL for the corresponding base forwarding rule. By base\nforwarding rule, we mean the forwarding rule that has the same IP address,\nprotocol, and port settings with the current forwarding rule, but without\nsourceIPRanges specified.\nAlways empty if the current forwarding rule does not have sourceIPRanges\nspecified.", - "readOnly": true, - "type": "string" - }, - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "externalManagedBackendBucketMigrationState": { - "description": "Specifies the canary migration state for the backend buckets attached to\nthis forwarding rule. Possible values are PREPARE, TEST_BY_PERCENTAGE, and\nTEST_ALL_TRAFFIC.\n\nTo begin the migration from EXTERNAL to EXTERNAL_MANAGED, the state must be\nchanged to PREPARE. The state must be changed to TEST_ALL_TRAFFIC before\nthe loadBalancingScheme can be changed to EXTERNAL_MANAGED. Optionally, the\nTEST_BY_PERCENTAGE state can be used to migrate traffic to backend buckets\nattached to this forwarding rule by percentage using\nexternalManagedBackendBucketMigrationTestingPercentage.\n\nRolling back a migration requires the states to be set in reverse order. So\nchanging the scheme from EXTERNAL_MANAGED to EXTERNAL requires the state to\nbe set to TEST_ALL_TRAFFIC at the same time. Optionally, the\nTEST_BY_PERCENTAGE state can be used to migrate some traffic back to\nEXTERNAL or PREPARE can be used to migrate all traffic back to EXTERNAL.", + "workloadType": { + "description": "Workload type. Use for TPU reservations.", "enum": [ - "PREPARE", - "TEST_ALL_TRAFFIC", - "TEST_BY_PERCENTAGE" + "BATCH", + "SERVING", + "UNSPECIFIED" ], "enumDescriptions": [ - "", - "", + "Reserved resources will be optimized for BATCH workloads, such as ML\ntraining.", + "Reserved resources will be optimized for SERVING workloads, such as ML\ninference.", "" ], "type": "string" - }, - "externalManagedBackendBucketMigrationTestingPercentage": { - "description": "Determines the fraction of requests to backend buckets that should be\nprocessed by the global external Application Load Balancer.\n\nThe value of this field must be in the range [0, 100].\n\nThis value can only be set if the loadBalancingScheme in the BackendService\nis set to EXTERNAL (when using the classic Application Load Balancer) and\nthe migration state is TEST_BY_PERCENTAGE.", - "format": "float", - "type": "number" - }, - "fingerprint": { - "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a ForwardingRule. Include the fingerprint in patch request to\nensure that you do not overwrite changes that were applied from another\nconcurrent request.\n\nTo see the latest fingerprint, make a get() request to\nretrieve a ForwardingRule.", - "format": "byte", - "type": "string" - }, - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "type": "string" - }, - "ipCollection": { - "description": "Resource reference of a PublicDelegatedPrefix. The PDP must\nbe a sub-PDP in EXTERNAL_IPV6_FORWARDING_RULE_CREATION mode.\n\nUse one of the following formats to specify a sub-PDP when creating an IPv6\nNetLB forwarding rule using BYOIP:\nFull resource URL, as inhttps://www.googleapis.com/compute/v1/projects/project_id/regions/region/publicDelegatedPrefixes/sub-pdp-name\nPartial URL, as in:\n \n - projects/project_id/regions/region/publicDelegatedPrefixes/sub-pdp-name\n - regions/region/publicDelegatedPrefixes/sub-pdp-name", - "type": "string" - }, - "ipVersion": { - "description": "The IP Version that will be used by this forwarding rule. Valid options\nare IPV4 or IPV6.", + } + }, + "type": "object" + }, + "FutureResourcesSpecLocalSsdPartition": { + "id": "FutureResourcesSpecLocalSsdPartition", + "properties": { + "diskInterface": { + "description": "Disk interface. Defaults to SCSI.", "enum": [ - "IPV4", - "IPV6", - "UNSPECIFIED_VERSION" + "NVME", + "SCSI" ], "enumDescriptions": [ - "", "", "" ], "type": "string" }, - "isMirroringCollector": { - "description": "Indicates whether or not this load balancer can be used as a collector for\npacket mirroring. To prevent mirroring loops, instances behind this\nload balancer will not have their traffic mirrored even if aPacketMirroring rule applies to them.\nThis can only be set to true for load balancers that have theirloadBalancingScheme set to INTERNAL.", - "type": "boolean" - }, - "kind": { - "default": "compute#forwardingRule", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#forwardingRule for forwarding rule resources.", - "readOnly": true, - "type": "string" - }, - "labelFingerprint": { - "description": "A fingerprint for the labels being applied to this resource, which is\nessentially a hash of the labels set used for optimistic locking. The\nfingerprint is initially generated by Compute Engine and changes after\nevery request to modify or update labels. You must always provide an\nup-to-date fingerprint hash in order to update or change labels,\notherwise the request will fail with error412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve a ForwardingRule.", - "format": "byte", + "diskSizeGb": { + "description": "The size of the disk in GB.", + "format": "int64", "type": "string" - }, - "labels": { + } + }, + "type": "object" + }, + "FutureResourcesSpecLocationPolicy": { + "description": "Specification of locations to create resources in.", + "id": "FutureResourcesSpecLocationPolicy", + "properties": { + "locations": { "additionalProperties": { - "type": "string" + "$ref": "FutureResourcesSpecLocationPolicyLocation" }, - "description": "Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035.\nLabel values may be empty.", + "description": "Preferences for specified locations.\nKeys of the map are locations - zones, in format of 'zones/'.\nValues are preferences for the zones.\nIf a zone is not specified in this map, it is ALLOWed.", "type": "object" - }, - "loadBalancingScheme": { - "description": "Specifies the forwarding rule type.\n\nFor more information about forwarding rules, refer to\nForwarding rule concepts.", + } + }, + "type": "object" + }, + "FutureResourcesSpecLocationPolicyLocation": { + "description": "Preference for a single specified location.", + "id": "FutureResourcesSpecLocationPolicyLocation", + "properties": { + "preference": { + "description": "Preference for this location.", "enum": [ - "EXTERNAL", - "EXTERNAL_MANAGED", - "INTERNAL", - "INTERNAL_MANAGED", - "INTERNAL_SELF_MANAGED", - "INVALID" + "ALLOW", + "DENY", + "PREFERENCE_UNSPECIFIED" ], "enumDescriptions": [ - "", - "", - "", - "", - "", - "" + "Location is allowed for use.", + "Location is prohibited.", + "Default value, unused." ], "type": "string" + } + }, + "type": "object" + }, + "FutureResourcesSpecSpecificSKUResources": { + "id": "FutureResourcesSpecSpecificSKUResources", + "properties": { + "instanceCount": { + "description": "Size of the request, in instance count.", + "format": "int64", + "type": "string" }, - "metadataFilters": { - "description": "Opaque filter criteria used by load balancer to restrict routing\nconfiguration to a limited set of xDS\ncompliant clients. In their xDS requests to load balancer, xDS clients\npresent node\nmetadata. When there is a match, the relevant configuration\nis made available to those proxies. Otherwise, all the resources (e.g.TargetHttpProxy, UrlMap)\nreferenced by the ForwardingRule are not visible to\nthose proxies.\n\nFor each metadataFilter in this list, if itsfilterMatchCriteria is set to MATCH_ANY, at least one of thefilterLabels must match the corresponding label provided in\nthe metadata. If its filterMatchCriteria is set to\nMATCH_ALL, then all of its filterLabels must match with\ncorresponding labels provided in the metadata. If multiplemetadataFilters are specified, all of them need to be satisfied\nin order to be considered a match.\n\nmetadataFilters specified here will be applifed before\nthose specified in the UrlMap that thisForwardingRule references.\n\nmetadataFilters only applies to Loadbalancers that have\ntheir loadBalancingScheme set toINTERNAL_SELF_MANAGED.", + "localSsdPartitions": { + "description": "Local SSD partitions. You do not have to include SSD partitions that\nare built in the machine type.", "items": { - "$ref": "MetadataFilter" + "$ref": "FutureResourcesSpecLocalSsdPartition" }, "type": "array" }, - "name": { - "description": "Name of the resource; provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.\n\nFor Private Service Connect forwarding rules that forward traffic to Google\nAPIs, the forwarding rule name must be a 1-20 characters string with\nlowercase letters and numbers and must start with a letter.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "machineType": { + "description": "The machine type to use for instances that will use the reservation.\nThis field only accepts machine type names. e.g. n2-standard-4\nand does not accept machine type full or partial url. e.g.\nprojects/my-l7ilb-project/zones/us-central1-a/machineTypes/n2-standard-4.\nUse for GPU reservations.", "type": "string" + } + }, + "type": "object" + }, + "FutureResourcesSpecTargetResources": { + "description": "Specification of reserved resources.", + "id": "FutureResourcesSpecTargetResources", + "properties": { + "aggregateResources": { + "$ref": "FutureResourcesSpecAggregateResources" }, - "network": { - "description": "This field is not used for global external load balancing.\n\nFor internal passthrough Network Load Balancers, this field identifies the\nnetwork that the load balanced IP should belong to for this forwarding\nrule.\nIf the subnetwork is specified, the network of the subnetwork will be used.\nIf neither subnetwork nor this field is specified, the default network will\nbe used.\n\nFor Private Service Connect forwarding rules that forward traffic to Google\nAPIs, a network must be provided.", + "specificSkuResources": { + "$ref": "FutureResourcesSpecSpecificSKUResources" + } + }, + "type": "object" + }, + "GRPCHealthCheck": { + "id": "GRPCHealthCheck", + "properties": { + "grpcServiceName": { + "description": "The gRPC service name for the health check. This field is optional. The\nvalue of grpc_service_name has the following meanings by convention: \n\n- Empty service_name means the overall status of all services at the\nbackend. \n\n- Non-empty service_name means the health of that gRPC service, as defined\nby the owner of the service. \n\nThe grpc_service_name can only be ASCII.", "type": "string" }, - "networkTier": { - "description": "This signifies the networking tier used for configuring\nthis load balancer and can only take the following values:PREMIUM, STANDARD.\n\nFor regional ForwardingRule, the valid values are PREMIUM andSTANDARD. For GlobalForwardingRule, the valid value isPREMIUM.\n\nIf this field is not specified, it is assumed to be PREMIUM.\nIf IPAddress is specified, this value must be equal to the\nnetworkTier of the Address.", + "port": { + "description": "The TCP port number to which the health check prober sends packets. Valid\nvalues are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "portName": { + "description": "Not supported.", + "type": "string" + }, + "portSpecification": { + "description": "Specifies how a port is selected for health checking. Can be one of the\nfollowing values: \nUSE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services\nfor passthrough load balancers and backend services for proxy load\nbalancers. Not supported by target pools. The health check supports all\nbackends supported by the backend service provided the backend can be\nhealth checked. For example, GCE_VM_IP network endpoint\ngroups, GCE_VM_IP_PORT network endpoint groups, and instance\ngroup backends. \n USE_NAMED_PORT: Not supported. \nUSE_SERVING_PORT: Provides an indirect method of specifying\nthe health check port by referring to the backend service. Only supported\nby backend services for proxy load balancers. Not supported by target\npools. Not supported by backend services for passthrough load balancers.\nSupports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group\nbackends.\n\nFor GCE_VM_IP_PORT network endpoint group backends, the health\ncheck uses the port number specified for each endpoint in the network\nendpoint group. For instance group backends, the health check uses the\nport number determined by looking up the backend service's named port in\nthe instance group's list of named ports.", "enum": [ - "FIXED_STANDARD", - "PREMIUM", - "STANDARD", - "STANDARD_OVERRIDES_FIXED_STANDARD" + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" ], "enumDescriptions": [ - "Public internet quality with fixed bandwidth.", - "High quality, Google-grade network tier, support for all networking\nproducts.", - "Public internet quality, only limited support for other networking\nproducts.", - "(Output only) Temporary tier for FIXED_STANDARD when fixed standard tier\nis expired or not configured." + "The port number in the health check's port is used for health\nchecking. Applies to network endpoint group and instance group backends.", + "Not supported.", + "For network endpoint group backends, the health check uses the port number\nspecified on each endpoint in the network endpoint group. For instance\ngroup backends, the health check uses the port number specified for the\nbackend service's named port defined in the instance group's named ports." ], "type": "string" - }, - "noAutomateDnsZone": { - "description": "This is used in PSC consumer ForwardingRule to control whether it should\ntry to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use\nthis field. Once set, this field is not mutable.", - "type": "boolean" - }, - "portRange": { - "description": "The ports, portRange, and allPorts\nfields are mutually exclusive. Only packets addressed to ports in the\nspecified range will be forwarded to the backends configured with this\nforwarding rule.\n\nThe portRange field has the following limitations:\n \n - It requires that the forwarding rule IPProtocol be TCP,\n UDP, or SCTP, and\n - It's applicable only to the following products: external passthrough\n Network Load Balancers, internal and external proxy Network Load Balancers,\n internal and external Application Load Balancers, external protocol\n forwarding, and Classic VPN.\n - Some products have restrictions on what ports can be used. See \n port specifications for details.\n\n\n\nFor external forwarding rules, two or more forwarding rules cannot use the\nsame [IPAddress, IPProtocol] pair, and cannot have overlappingportRanges.\n\nFor internal forwarding rules within the same VPC network, two or more\nforwarding rules cannot use the same [IPAddress, IPProtocol]\npair, and cannot have overlapping portRanges.\n\n@pattern: \\\\d+(?:-\\\\d+)?", + } + }, + "type": "object" + }, + "GRPCTLSHealthCheck": { + "id": "GRPCTLSHealthCheck", + "properties": { + "grpcServiceName": { + "description": "The gRPC service name for the health check. This field is optional. The\nvalue of grpc_service_name has the following meanings by convention: \n\n- Empty service_name means the overall status of all services at the\nbackend. \n\n- Non-empty service_name means the health of that gRPC service, as defined\nby the owner of the service. \n\nThe grpc_service_name can only be ASCII.", "type": "string" }, - "ports": { - "description": "The ports, portRange, and allPorts\nfields are mutually exclusive. Only packets addressed to ports in the\nspecified range will be forwarded to the backends configured with this\nforwarding rule.\n\nThe ports field has the following limitations:\n \n - It requires that the forwarding rule IPProtocol be TCP,\n UDP, or SCTP, and\n - It's applicable only to the following products: internal passthrough\n Network Load Balancers, backend service-based external passthrough Network\n Load Balancers, and internal protocol forwarding.\n - You can specify a list of up to five ports by number, separated by\n commas. The ports can be contiguous or discontiguous.\n\n\n\nFor external forwarding rules, two or more forwarding rules cannot use the\nsame [IPAddress, IPProtocol] pair if they share at least one\nport number.\n\nFor internal forwarding rules within the same VPC network, two or more\nforwarding rules cannot use the same [IPAddress, IPProtocol]\npair if they share at least one port number.\n\n@pattern: \\\\d+(?:-\\\\d+)?", - "items": { - "type": "string" - }, - "type": "array" - }, - "pscConnectionId": { - "description": "[Output Only] The PSC connection id of the PSC forwarding rule.", - "format": "uint64", - "type": "string" + "port": { + "description": "The TCP port number to which the health check prober sends packets. Valid\nvalues are 1 through 65535.", + "format": "int32", + "type": "integer" }, - "pscConnectionStatus": { + "portSpecification": { + "description": "Specifies how a port is selected for health checking. Can be one of the\nfollowing values: \nUSE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services\nfor passthrough load balancers and backend services for proxy load\nbalancers. Not supported by target pools. The health check supports all\nbackends supported by the backend service provided the backend can be\nhealth checked. For example, GCE_VM_IP network endpoint\ngroups, GCE_VM_IP_PORT network endpoint groups, and instance\ngroup backends. \n USE_NAMED_PORT: Not supported. \nUSE_SERVING_PORT: Provides an indirect method of specifying\nthe health check port by referring to the backend service. Only supported\nby backend services for proxy load balancers. Not supported by target\npools. Not supported by backend services for passthrough load balancers.\nSupports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group\nbackends.\n\nFor GCE_VM_IP_PORT network endpoint group backends, the health\ncheck uses the port number specified for each endpoint in the network\nendpoint group. For instance group backends, the health check uses the\nport number determined by looking up the backend service's named port in\nthe instance group's list of named ports.", "enum": [ - "ACCEPTED", - "CLOSED", - "NEEDS_ATTENTION", - "PENDING", - "REJECTED", - "STATUS_UNSPECIFIED" + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" ], "enumDescriptions": [ - "The connection has been accepted by the producer.", - "The connection has been closed by the producer and will not serve traffic\ngoing forward.", - "The connection has been accepted by the producer, but the producer needs\nto take further action before the forwarding rule can serve traffic.", - "The connection is pending acceptance by the producer.", - "The connection has been rejected by the producer.", - "" + "The port number in the health check's port is used for health\nchecking. Applies to network endpoint group and instance group backends.", + "Not supported.", + "For network endpoint group backends, the health check uses the port number\nspecified on each endpoint in the network endpoint group. For instance\ngroup backends, the health check uses the port number specified for the\nbackend service's named port defined in the instance group's named ports." ], - "readOnly": true, - "type": "string" - }, - "region": { - "description": "Output only. [Output Only] URL of the region where the regional forwarding rule resides.\nThis field is not applicable to global forwarding rules.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", - "readOnly": true, "type": "string" + } + }, + "type": "object" + }, + "GetVersionOperationMetadata": { + "id": "GetVersionOperationMetadata", + "properties": { + "inlineSbomInfo": { + "$ref": "GetVersionOperationMetadataSbomInfo" + } + }, + "type": "object" + }, + "GetVersionOperationMetadataSbomInfo": { + "id": "GetVersionOperationMetadataSbomInfo", + "properties": { + "currentComponentVersions": { + "additionalProperties": { + "type": "string" + }, + "description": "A mapping of components to their currently-applied versions or other\nappropriate identifiers.", + "type": "object" }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", + "targetComponentVersions": { + "additionalProperties": { + "type": "string" + }, + "description": "A mapping of components to their target versions or other appropriate\nidentifiers.", + "type": "object" + } + }, + "type": "object" + }, + "GlobalAddressesMoveRequest": { + "id": "GlobalAddressesMoveRequest", + "properties": { + "description": { + "description": "An optional destination address description if intended to be different\nfrom the source.", "type": "string" }, - "selfLinkWithId": { - "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", - "readOnly": true, + "destinationAddress": { + "description": "The URL of the destination address to move to. This can be a full or\npartial URL. For example, the following are all valid URLs to a address:\n \n - https://www.googleapis.com/compute/v1/projects/project/global/addresses/address \n - projects/project/global/addresses/address\n\n\nNote that destination project must be different from the source project. So/global/addresses/address is not valid partial url.", "type": "string" - }, - "serviceDirectoryRegistrations": { - "description": "Service Directory resources to register this forwarding rule with.\nCurrently, only supports a single Service Directory resource.", + } + }, + "type": "object" + }, + "GlobalNetworkEndpointGroupsAttachEndpointsRequest": { + "id": "GlobalNetworkEndpointGroupsAttachEndpointsRequest", + "properties": { + "networkEndpoints": { + "description": "The list of network endpoints to be attached.", "items": { - "$ref": "ForwardingRuleServiceDirectoryRegistration" + "$ref": "NetworkEndpoint" + }, + "type": "array" + } + }, + "type": "object" + }, + "GlobalNetworkEndpointGroupsDetachEndpointsRequest": { + "id": "GlobalNetworkEndpointGroupsDetachEndpointsRequest", + "properties": { + "networkEndpoints": { + "description": "The list of network endpoints to be detached.", + "items": { + "$ref": "NetworkEndpoint" + }, + "type": "array" + } + }, + "type": "object" + }, + "GlobalOrganizationSetPolicyRequest": { + "id": "GlobalOrganizationSetPolicyRequest", + "properties": { + "bindings": { + "description": "Flatten Policy to create a backward compatible wire-format.\nDeprecated. Use 'policy' to specify bindings.", + "items": { + "$ref": "Binding" }, "type": "array" }, - "serviceLabel": { - "description": "An optional prefix to the service name for this forwarding rule.\nIf specified, the prefix is the first label of the fully qualified service\nname.\n\nThe label must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the label must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.\n\nThis field is only used for internal load balancing.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "etag": { + "description": "Flatten Policy to create a backward compatible wire-format.\nDeprecated. Use 'policy' to specify the etag.", + "format": "byte", "type": "string" }, - "serviceName": { - "description": "[Output Only]\nThe internal fully qualified service name for this forwarding rule.\n\nThis field is only used for internal load balancing.", + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the 'resource'. The size of\nthe policy is limited to a few 10s of KB. An empty policy is in general a\nvalid policy but certain services (like Projects) might reject them." + } + }, + "type": "object" + }, + "GlobalSetLabelsRequest": { + "id": "GlobalSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource,\nused to detect conflicts. The fingerprint is initially generated by Compute\nEngine and changes after every request to modify or update labels. You must\nalways provide an up-to-date fingerprint hash when updating or changing\nlabels, otherwise the request will fail with error412 conditionNotMet. Make a get() request to the\nresource to get the latest fingerprint.", + "format": "byte", "type": "string" }, - "sourceIpRanges": { - "description": "If not empty, this forwarding rule will only forward the traffic when the\nsource IP address matches one of the IP addresses or CIDR ranges set here.\nNote that a forwarding rule can only have up to 64 source IP ranges, and\nthis field can only be used with a regional forwarding rule whose scheme isEXTERNAL.\nEach source_ip_range entry should be either an IP address (for\nexample, 1.2.3.4) or a CIDR range (for example, 1.2.3.0/24).", + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "A list of labels to apply for this resource. Each label must comply with\nthe\nrequirements for labels. For example,\"webserver-frontend\": \"images\". A label value can also be\nempty (e.g. \"my-label\": \"\").", + "type": "object" + } + }, + "type": "object" + }, + "GlobalSetPolicyRequest": { + "id": "GlobalSetPolicyRequest", + "properties": { + "bindings": { + "description": "Flatten Policy to create a backward compatible wire-format.\nDeprecated. Use 'policy' to specify bindings.", "items": { - "type": "string" + "$ref": "Binding" }, "type": "array" }, - "subnetwork": { - "description": "This field identifies the subnetwork that the load balanced IP should\nbelong to for this forwarding rule, used with internal load balancers and\nexternal passthrough Network Load Balancers with IPv6.\n\nIf the network specified is in auto subnet mode, this field is optional.\nHowever, a subnetwork must be specified if the network is in custom subnet\nmode or when creating external forwarding rule with IPv6.", + "etag": { + "description": "Flatten Policy to create a backward compatible wire-format.\nDeprecated. Use 'policy' to specify the etag.", + "format": "byte", "type": "string" }, - "target": { - "description": "The URL of the target resource to receive the matched traffic. For\nregional forwarding rules, this target must be in the same region as the\nforwarding rule. For global forwarding rules, this target must be a global\nload balancing resource.\n\nThe forwarded traffic must be of a type appropriate to the target object.\n \n \n - For load balancers, see the \"Target\" column in [Port specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications).\n - For Private Service Connect forwarding rules that forward traffic to Google APIs, provide the name of a supported Google API bundle:\n \n \n - vpc-sc - APIs that support VPC Service Controls. \n - all-apis - All supported Google APIs. \n \n \n - For Private Service Connect forwarding rules that forward traffic to managed services, the target must be a service attachment. The target is not mutable once set as a service attachment.", - "type": "string" + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the 'resource'. The size of\nthe policy is limited to a few 10s of KB. An empty policy is in general a\nvalid policy but certain services (like Projects) might reject them." } }, "type": "object" }, - "ForwardingRuleAggregatedList": { - "id": "ForwardingRuleAggregatedList", + "GlobalVmExtensionPolicy": { + "description": "Message describing GlobalVmExtensionPolicy object.", + "id": "GlobalVmExtensionPolicy", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, "type": "string" }, - "items": { + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "extensionPolicies": { "additionalProperties": { - "$ref": "ForwardingRulesScopedList", - "description": "Name of the scope containing this set of addresses." + "$ref": "GlobalVmExtensionPolicyExtensionPolicy" }, - "description": "A list of ForwardingRulesScopedList resources.", + "description": "Required. Map from extension (eg: \"cloudops\") to its policy configuration.\nThe key is the name of the extension.", "type": "object" }, + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "instanceSelectors": { + "description": "Optional. Selector to target VMs for a policy.\nThere is a logical \"AND\" between instance_selectors.", + "items": { + "$ref": "GlobalVmExtensionPolicyInstanceSelector" + }, + "type": "array" + }, "kind": { - "default": "compute#forwardingRuleAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#forwardingRuleAggregatedList for lists of forwarding rules.", + "default": "compute#globalVmExtensionPolicy", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#globalVmExtensionPolicy for globalVmExtensionPolicies.", "readOnly": true, "type": "string" }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`\nwhich means the first character must be a lowercase letter, and all\nfollowing characters must be a dash, lowercase letter, or digit, except\nthe last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "priority": { + "description": "Optional. Used to resolve conflicts when multiple policies are active for the same\nextension. Defaults to 0.\n\nLarger the number, higher the priority. When the priority is the same,\nthe policy with the newer create time has higher priority.", + "format": "int32", + "type": "integer" + }, + "rolloutOperation": { + "$ref": "GlobalVmExtensionPolicyRolloutOperation", + "description": "Required. The rollout strategy and status." + }, + "scopedResourceStatus": { + "description": "Output only. [Output Only] The scoped resource status. It's only for tracking the\npurging status of the policy.", + "enum": [ + "SCOPED_RESOURCE_STATUS_DELETING", + "SCOPED_RESOURCE_STATUS_UNSPECIFIED" + ], + "enumDescriptions": [ + "The zonal policies are being deleted.", + "Default value. This value is unused." + ], + "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", "readOnly": true, "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", - "items": { - "type": "string" - }, + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL for this resource's resource id.", "readOnly": true, - "type": "array" + "type": "string" }, - "warning": { - "description": "[Output Only] Informational warning message.", - "properties": { - "code": { - "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", - "LARGE_DEPLOYMENT_WARNING", - "LIST_OVERHEAD_QUOTA_EXCEED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "PARTIAL_SUCCESS", - "QUOTA_INFO_UNAVAILABLE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDeprecated": [ - false, - false, - false, - false, - false, - false, - true, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false - ], - "enumDescriptions": [ - "Warning about failed cleanup of transient changes made by a failed\noperation.", - "A link to a deprecated resource was created.", - "When deploying and at least one of the resources has a type marked as\ndeprecated", - "The user created a boot disk that is larger than image size.", - "When deploying and at least one of the resources has a type marked as\nexperimental", - "Warning that is present in an external api call", - "Warning that value of a field has been overridden.\nDeprecated unused field.", - "The operation involved use of an injected kernel, which is deprecated.", - "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", - "When deploying a deployment with a exceedingly large number of resources", - "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", - "A resource depends on a missing type", - "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", - "The route's next hop instance cannot ip forward.", - "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", - "The route's nextHopInstance URL refers to an instance that does not exist.", - "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", - "The route's next hop instance does not have a status of RUNNING.", - "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", - "No results are present on a particular list page.", - "Success is reported, but some results may be missing due to errors", - "Quota information is not available to client requests (e.g:\nregions.list).", - "The user attempted to use a resource that requires a TOS they have not\naccepted.", - "Warning that a resource is in use.", - "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", - "When a resource schema validation is ignored.", - "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", - "When undeclared properties in the schema are present", - "A given scope cannot be reached." - ], - "type": "string" - }, - "data": { - "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", - "items": { - "properties": { - "key": { - "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", - "type": "string" - }, - "value": { - "description": "[Output Only] A warning data value corresponding to the key.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "message": { - "description": "[Output Only] A human-readable description of the warning code.", - "type": "string" - } + "updateTimestamp": { + "description": "Output only. [Output Only] Update timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GlobalVmExtensionPolicyExtensionPolicy": { + "description": "Policy for a single extension.", + "id": "GlobalVmExtensionPolicyExtensionPolicy", + "properties": { + "pinnedVersion": { + "description": "Optional. The version pinning for the extension.\nIf empty, the extension will be installed with the latest version\nreleased by the extension producer.", + "type": "string" + }, + "stringConfig": { + "description": "Optional. String configuration. Any string payload that the extension\nunderstands.", + "type": "string" + } + }, + "type": "object" + }, + "GlobalVmExtensionPolicyInstanceSelector": { + "description": "Selector to target VMs for a zone VM extension policy.", + "id": "GlobalVmExtensionPolicyInstanceSelector", + "properties": { + "labelSelector": { + "$ref": "GlobalVmExtensionPolicyLabelSelector", + "description": "Optional. Labels within the LabelSelector are OR'd." + } + }, + "type": "object" + }, + "GlobalVmExtensionPolicyLabelSelector": { + "description": "A LabelSelector is applicable for a VM only if it matches all labels in\nthe LabelSelector.", + "id": "GlobalVmExtensionPolicyLabelSelector", + "properties": { + "inclusionLabels": { + "additionalProperties": { + "type": "string" }, + "description": "Optional. Labels as key value pairs.\nA VM should contain all the pairs specified in this map to be selected;\nLabels within the LabelSelector are OR'ed.", "type": "object" } }, "type": "object" }, - "ForwardingRuleList": { - "description": "Contains a list of ForwardingRule resources.", - "id": "ForwardingRuleList", + "GlobalVmExtensionPolicyList": { + "description": "Response to list global VM extension policy resources.", + "id": "GlobalVmExtensionPolicyList", "properties": { + "etag": { + "type": "string" + }, "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of ForwardingRule resources.", + "description": "A list of GlobalVmExtensionPolicy resources.", "items": { - "$ref": "ForwardingRule" + "$ref": "GlobalVmExtensionPolicy" }, "type": "array" }, "kind": { - "default": "compute#forwardingRuleList", + "default": "compute#globalVmExtensionPolicyList", "description": "Output only. Type of resource.", "readOnly": true, "type": "string" @@ -53851,6 +61155,14 @@ "readOnly": true, "type": "string" }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -53978,279 +61290,171 @@ }, "type": "object" }, - "ForwardingRuleReference": { - "id": "ForwardingRuleReference", + "GlobalVmExtensionPolicyRolloutOperation": { + "description": "Represents the rollout operation", + "id": "GlobalVmExtensionPolicyRolloutOperation", "properties": { - "forwardingRule": { - "type": "string" + "rolloutInput": { + "$ref": "GlobalVmExtensionPolicyRolloutOperationRolloutInput", + "description": "Required. The rollout input which defines the rollout plan." + }, + "rolloutStatus": { + "$ref": "GlobalVmExtensionPolicyRolloutOperationRolloutStatus", + "description": "Output only. [Output Only] The rollout status of the policy.", + "readOnly": true } }, "type": "object" }, - "ForwardingRuleServiceDirectoryRegistration": { - "description": "Describes the auto-registration of the forwarding rule to Service Directory.\nThe region and project of the Service Directory resource generated from\nthis registration will be the same as this forwarding rule.", - "id": "ForwardingRuleServiceDirectoryRegistration", + "GlobalVmExtensionPolicyRolloutOperationRolloutInput": { + "id": "GlobalVmExtensionPolicyRolloutOperationRolloutInput", "properties": { - "namespace": { - "description": "Service Directory namespace to register the forwarding rule under.", + "conflictBehavior": { + "description": "Optional. Specifies the behavior of the rollout if a conflict is detected in a\nproject during a rollout. This only applies to `insert` and `update`\nmethods.\n\nA conflict occurs in the following cases:\n\n* `insert` method: If the zonal policy already exists when the insert\n happens.\n* `update` method: If the zonal policy was modified by a zonal API call\n outside of this rollout.\n\nPossible values are the following:\n\n* `\"\"` (empty string): If a conflict occurs, the local value is not\n overwritten. This is the default behavior.\n* `\"overwrite\"`: If a conflict occurs, the local value is overwritten\n with the rollout value.", "type": "string" }, - "service": { - "description": "Service Directory service to register the forwarding rule under.", + "name": { + "description": "Optional. The name of the rollout plan.\nEx.\nprojects//locations/global/rolloutPlans/.", "type": "string" }, - "serviceDirectoryRegion": { - "description": "[Optional] Service Directory region to register this global forwarding\nrule under. Default to \"us-central1\". Only used for PSC for Google APIs.\nAll PSC for Google APIs forwarding rules on the same network should use\nthe same Service Directory region.", + "predefinedRolloutPlan": { + "description": "Optional. Specifies the predefined rollout plan for the policy. Valid values\nare `SLOW_ROLLOUT` and `FAST_ROLLOUT`. The recommended value is\n`SLOW_ROLLOUT` for progressive rollout. For more information, see Rollout\nplans for global policies.", + "enum": [ + "FAST_ROLLOUT", + "ROLLOUT_PLAN_UNSPECIFIED", + "SLOW_ROLLOUT" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "retryUuid": { + "description": "Optional. The UUID that identifies a policy rollout retry attempt for update and\ndelete operations. Set this field only when retrying a rollout for an\nexisting extension policy.\n\n* `update` method: Lets you retry policy rollout without changes.\nAn error occurs if you set retry_uuid but the policy is modified.\n* `delete` method: Lets you retry policy deletion rollout if the\nprevious deletion rollout is not finished and the policy is in the\nDELETING state. If you set this field when the policy is not in the\nDELETING state, an error occurs.", "type": "string" } }, "type": "object" }, - "ForwardingRulesScopedList": { - "id": "ForwardingRulesScopedList", + "GlobalVmExtensionPolicyRolloutOperationRolloutStatus": { + "id": "GlobalVmExtensionPolicyRolloutOperationRolloutStatus", "properties": { - "forwardingRules": { - "description": "A list of forwarding rules contained in this scope.", + "currentRollouts": { + "description": "Output only. [Output Only] The current rollouts for the latest version of the\nresource. There should be only one current rollout, but for\nscalability, we make it repeated.", "items": { - "$ref": "ForwardingRule" + "$ref": "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata" }, + "readOnly": true, "type": "array" }, - "warning": { - "description": "Informational warning which replaces the list of forwarding rules when\nthe list is empty.", - "properties": { - "code": { - "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", - "LARGE_DEPLOYMENT_WARNING", - "LIST_OVERHEAD_QUOTA_EXCEED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "PARTIAL_SUCCESS", - "QUOTA_INFO_UNAVAILABLE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDeprecated": [ - false, - false, - false, - false, - false, - false, - true, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false - ], - "enumDescriptions": [ - "Warning about failed cleanup of transient changes made by a failed\noperation.", - "A link to a deprecated resource was created.", - "When deploying and at least one of the resources has a type marked as\ndeprecated", - "The user created a boot disk that is larger than image size.", - "When deploying and at least one of the resources has a type marked as\nexperimental", - "Warning that is present in an external api call", - "Warning that value of a field has been overridden.\nDeprecated unused field.", - "The operation involved use of an injected kernel, which is deprecated.", - "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", - "When deploying a deployment with a exceedingly large number of resources", - "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", - "A resource depends on a missing type", - "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", - "The route's next hop instance cannot ip forward.", - "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", - "The route's nextHopInstance URL refers to an instance that does not exist.", - "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", - "The route's next hop instance does not have a status of RUNNING.", - "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", - "No results are present on a particular list page.", - "Success is reported, but some results may be missing due to errors", - "Quota information is not available to client requests (e.g:\nregions.list).", - "The user attempted to use a resource that requires a TOS they have not\naccepted.", - "Warning that a resource is in use.", - "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", - "When a resource schema validation is ignored.", - "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", - "When undeclared properties in the schema are present", - "A given scope cannot be reached." - ], - "type": "string" - }, - "data": { - "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", - "items": { - "properties": { - "key": { - "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", - "type": "string" - }, - "value": { - "description": "[Output Only] A warning data value corresponding to the key.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "message": { - "description": "[Output Only] A human-readable description of the warning code.", - "type": "string" - } - }, - "type": "object" + "previousRollout": { + "$ref": "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata", + "description": "Output only. [Output Only] The last completed rollout resource. This field will not\nbe populated until the first rollout is completed.", + "readOnly": true } }, "type": "object" }, - "FutureReservation": { - "id": "FutureReservation", + "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata": { + "id": "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata", "properties": { - "aggregateReservation": { - "$ref": "AllocationAggregateReservation", - "description": "Aggregate reservation details for the future reservation." - }, - "autoCreatedReservationsDeleteTime": { - "description": "Future timestamp when the FR auto-created reservations will be deleted by\nCompute Engine. Format of this field must be a valid\nhref=\"https://www.ietf.org/rfc/rfc3339.txt\">RFC3339 value.", - "type": "string" - }, - "autoCreatedReservationsDuration": { - "$ref": "Duration", - "description": "Specifies the duration of auto-created reservations.\nIt represents relative time to future reservation start_time when\nauto-created reservations will be automatically deleted by Compute\nEngine. Duration time unit is represented as a count of seconds\nand fractions of seconds at nanosecond resolution." - }, - "autoDeleteAutoCreatedReservations": { - "description": "Setting for enabling or disabling automatic deletion for auto-created\nreservation. If set to true, auto-created reservations will be\ndeleted at Future Reservation's end time (default) or at user's defined\ntimestamp if any of the\n[auto_created_reservations_delete_time, auto_created_reservations_duration]\nvalues is specified.\nFor keeping auto-created reservation indefinitely, this value should be set\nto false.", - "type": "boolean" - }, - "commitmentInfo": { - "$ref": "FutureReservationCommitmentInfo", - "description": "If not present, then FR will not deliver a new commitment or update an\nexisting commitment." - }, - "creationTimestamp": { - "description": "Output only. [Output Only] The creation timestamp for this future reservation inRFC3339\ntext format.", + "locationRolloutStatus": { + "additionalProperties": { + "$ref": "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus" + }, + "description": "Output only. [Output Only] The rollout status for each location. The list of the\nlocations is the same as the list of locations in the rollout plan.", "readOnly": true, - "type": "string" - }, - "deploymentType": { - "description": "Type of the deployment requested as part of future reservation.", - "enum": [ - "DENSE", - "DEPLOYMENT_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "The reserved capacity is made up of densely deployed reservation blocks.", - "" - ], - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the future reservation.", - "type": "string" - }, - "enableEmergentMaintenance": { - "description": "Indicates if this group of VMs have emergent maintenance enabled.", - "type": "boolean" + "type": "object" }, - "id": { - "description": "Output only. [Output Only] A unique identifier for this future reservation. The server\ndefines this identifier.", - "format": "uint64", + "rollout": { + "description": "Output only. [Output Only] The name of the rollout.\nEx. projects//locations/global/rollouts/.", "readOnly": true, "type": "string" }, - "kind": { - "default": "compute#futureReservation", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#futureReservation for future reservations.", + "rolloutPlan": { + "description": "Output only. [Output Only] The name of the rollout plan.\nEx.\nprojects//locations/global/rolloutPlans/.", "readOnly": true, "type": "string" }, - "name": { - "annotations": { - "required": [ - "compute.instances.insert" - ] - }, - "description": "The name of the resource, provided by the client when initially creating\nthe resource. The resource name must be 1-63 characters long, and comply\nwithRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "namePrefix": { - "description": "Name prefix for the reservations to be created at the time of\ndelivery. The name prefix must comply with RFC1035.\nMaximum allowed length for name prefix is 20. Automatically created\nreservations name format will be -date-####.", - "type": "string" - }, - "planningStatus": { - "description": "Planning state before being submitted for evaluation", + "state": { + "description": "Output only. [Output Only] The overall state of the rollout.", "enum": [ - "DRAFT", - "PLANNING_STATUS_UNSPECIFIED", - "SUBMITTED" + "STATE_CANCELLED", + "STATE_COMPLETED", + "STATE_FAILED", + "STATE_PAUSED", + "STATE_PROCESSING", + "STATE_UNKNOWN", + "STATE_UNSPECIFIED" ], "enumDescriptions": [ - "Future Reservation is being drafted.", - "", - "Future Reservation has been submitted for evaluation by GCP." + "Iteration was explicitly cancelled.", + "Iteration completed, with all actions being successful.", + "Iteration completed, with failures.", + "The rollout is paused.", + "Iteration is in progress.", + "Impossible to determine current state of the iteration.", + "Default value. This value is unused." ], + "readOnly": true, "type": "string" - }, - "reservationMode": { - "description": "The reservation mode which determines reservation-termination behavior and\nexpected pricing.", + } + }, + "type": "object" + }, + "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus": { + "id": "GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus", + "properties": { + "state": { + "description": "Output only. [Output Only] The state of the location rollout.", "enum": [ - "CALENDAR", - "DEFAULT", - "RESERVATION_MODE_UNSPECIFIED" + "LOCATION_ROLLOUT_STATE_COMPLETED", + "LOCATION_ROLLOUT_STATE_FAILED", + "LOCATION_ROLLOUT_STATE_NOT_STARTED", + "LOCATION_ROLLOUT_STATE_SKIPPED", + "LOCATION_ROLLOUT_STATE_UNSPECIFIED" ], "enumDescriptions": [ - "The delivered reservations will delivered at specified start time and\nterminated at specified end time along with terminating the VMs running\non it.", - "The delivered reservations do not terminate VMs at the end of\nreservations. This is default mode.", - "" + "The location rollout is completed.", + "The location rollout has failed.", + "The location rollout has not started.", + "The location rollout is skipped.", + "Default value. This value is unused." ], + "readOnly": true, "type": "string" + } + }, + "type": "object" + }, + "GroupMaintenanceInfo": { + "description": "Maintenance Info for ReservationBlocks.", + "id": "GroupMaintenanceInfo", + "properties": { + "instanceMaintenanceOngoingCount": { + "description": "Describes number of instances that have ongoing maintenance.", + "format": "int32", + "type": "integer" }, - "reservationName": { - "description": "Name of reservations where the capacity is provisioned at the time of\ndelivery of future reservations. If the reservation with the given name\ndoes not exist already, it is created automatically at the time of Approval\nwith INACTIVE state till specified start-time. Either provide the\nreservation_name or a name_prefix.", - "type": "string" + "instanceMaintenancePendingCount": { + "description": "Describes number of instances that have pending maintenance.", + "format": "int32", + "type": "integer" + }, + "maintenanceOngoingCount": { + "description": "Progress for ongoing maintenance for this group of VMs/hosts.\nDescribes number of hosts in the block that have ongoing maintenance.", + "format": "int32", + "type": "integer" + }, + "maintenancePendingCount": { + "description": "Progress for ongoing maintenance for this group of VMs/hosts.\nDescribes number of hosts in the block that have pending maintenance.", + "format": "int32", + "type": "integer" }, "schedulingType": { - "description": "Maintenance information for this reservation", + "description": "The type of maintenance for the reservation.", "enum": [ "GROUPED", "GROUP_MAINTENANCE_TYPE_UNSPECIFIED", @@ -54263,368 +61467,307 @@ ], "type": "string" }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", - "readOnly": true, - "type": "string" + "subblockInfraMaintenanceOngoingCount": { + "description": "Describes number of subblock Infrastructure that has ongoing maintenance.\nHere, Subblock Infrastructure Maintenance pertains to upstream hardware\ncontained in the Subblock that is necessary for a VM Family(e.g. NVLink\nDomains). Not all VM Families will support this field.", + "format": "int32", + "type": "integer" }, - "selfLinkWithId": { - "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", + "subblockInfraMaintenancePendingCount": { + "description": "Describes number of subblock Infrastructure that has pending maintenance.\n Here, Subblock Infrastructure Maintenance pertains to upstream hardware\n contained in the Subblock that is necessary for a VM Family (e.g. NVLink\n Domains). Not all VM Families will support this field.", + "format": "int32", + "type": "integer" + }, + "upcomingGroupMaintenance": { + "$ref": "UpcomingMaintenance", + "description": "Maintenance information on this group of VMs." + } + }, + "type": "object" + }, + "GuestAttributes": { + "description": "A guest attributes entry.", + "id": "GuestAttributes", + "properties": { + "kind": { + "default": "compute#guestAttributes", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#guestAttributes for guest attributes entry.", "readOnly": true, "type": "string" }, - "shareSettings": { - "$ref": "ShareSettings", - "description": "List of Projects/Folders to share with." - }, - "specificReservationRequired": { - "description": "Indicates whether the auto-created reservation can be consumed by VMs with\naffinity for \"any\" reservation. If the field is set, then only VMs that\ntarget the reservation by name can consume from the delivered reservation.", - "type": "boolean" - }, - "specificSkuProperties": { - "$ref": "FutureReservationSpecificSKUProperties", - "description": "Future Reservation configuration to indicate instance properties and\ntotal count." + "queryPath": { + "description": "The path to be queried. This can be the default namespace ('') or a\nnested namespace ('\\/') or a specified key\n('\\/\\').", + "type": "string" }, - "status": { - "$ref": "FutureReservationStatus", - "description": "Output only. [Output only] Status of the Future Reservation", + "queryValue": { + "$ref": "GuestAttributesValue", + "description": "Output only. [Output Only] The value of the requested queried path.", "readOnly": true }, - "timeWindow": { - "$ref": "FutureReservationTimeWindow", - "description": "Time window for this Future Reservation." + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" }, - "zone": { - "description": "Output only. [Output Only] URL of the Zone where this future reservation resides.", + "variableKey": { + "description": "The key to search for.", + "type": "string" + }, + "variableValue": { + "description": "Output only. [Output Only] The value found for the requested key.", "readOnly": true, "type": "string" } }, "type": "object" }, - "FutureReservationCommitmentInfo": { - "id": "FutureReservationCommitmentInfo", + "GuestAttributesEntry": { + "description": "A guest attributes namespace/key/value entry.", + "id": "GuestAttributesEntry", "properties": { - "commitmentName": { - "description": "name of the commitment where capacity is being delivered to.", + "key": { + "description": "Key for the guest attribute entry.", "type": "string" }, - "commitmentPlan": { - "description": "Indicates if a Commitment needs to be created as part of FR delivery. If\nthis field is not present, then no\ncommitment needs to be created.", - "enum": [ - "INVALID", - "THIRTY_SIX_MONTH", - "TWELVE_MONTH" - ], - "enumDescriptions": [ - "", - "", - "" - ], + "namespace": { + "description": "Namespace for the guest attribute entry.", "type": "string" }, - "previousCommitmentTerms": { - "description": "Only applicable if FR is delivering to the same reservation. If set, all\nparent commitments will be extended to match the end date of the plan for\nthis commitment.", - "enum": [ - "EXTEND", - "PREVIOUSCOMMITMENTTERM_UNSPECIFIED" - ], - "enumDescriptions": [ - "All associated parent Committed Used Discount(s) end-date/term will be\nextended to the end-time of this future reservation. Default is to\nextend previous commitment(s) time to the end_time of the reservation.", - "No changes to associated parents Committed Used Discount(s) terms." - ], + "value": { + "description": "Value for the guest attribute entry.", "type": "string" } }, "type": "object" }, - "FutureReservationSpecificSKUProperties": { - "id": "FutureReservationSpecificSKUProperties", + "GuestAttributesValue": { + "description": "Array of guest attribute namespace/key/value tuples.", + "id": "GuestAttributesValue", "properties": { - "instanceProperties": { - "$ref": "AllocationSpecificSKUAllocationReservedInstanceProperties", - "description": "Properties of the SKU instances being reserved." - }, - "sourceInstanceTemplate": { - "description": "The instance template that will be used to populate the\nReservedInstanceProperties of the future reservation", - "type": "string" - }, - "totalCount": { - "description": "Total number of instances for which capacity assurance is requested at a\nfuture time period.", - "format": "int64", - "type": "string" + "items": { + "items": { + "$ref": "GuestAttributesEntry" + }, + "type": "array" } }, "type": "object" }, - "FutureReservationStatus": { - "description": "[Output only] Represents status related to the future reservation.", - "id": "FutureReservationStatus", + "GuestOsFeature": { + "description": "Guest OS features.", + "id": "GuestOsFeature", "properties": { - "amendmentStatus": { - "description": "Output only. [Output Only] The current status of the requested amendment.", + "type": { + "description": "The ID of a supported feature. To add multiple values, use commas to\nseparate values. Set to one or more of the following values:\n \n - VIRTIO_SCSI_MULTIQUEUE\n - WINDOWS\n - MULTI_IP_SUBNET\n - UEFI_COMPATIBLE\n - GVNIC\n - SEV_CAPABLE\n - SUSPEND_RESUME_COMPATIBLE\n - SEV_LIVE_MIGRATABLE_V2\n - SEV_SNP_CAPABLE\n - TDX_CAPABLE\n - IDPF\n - SNP_SVSM_CAPABLE\n - CCA_CAPABLE\n\n\nFor more information, see\nEnabling guest operating system features.", "enum": [ - "AMENDMENT_APPROVED", - "AMENDMENT_DECLINED", - "AMENDMENT_IN_REVIEW", - "AMENDMENT_STATUS_UNSPECIFIED" + "BARE_METAL_LINUX_COMPATIBLE", + "FEATURE_TYPE_UNSPECIFIED", + "GVNIC", + "IDPF", + "MULTI_IP_SUBNET", + "SECURE_BOOT", + "SEV_CAPABLE", + "SEV_LIVE_MIGRATABLE", + "SEV_LIVE_MIGRATABLE_V2", + "SEV_SNP_CAPABLE", + "SNP_SVSM_CAPABLE", + "TDX_CAPABLE", + "UEFI_COMPATIBLE", + "VIRTIO_SCSI_MULTIQUEUE", + "WINDOWS" ], "enumDescriptions": [ - "The requested amendment to the Future Resevation has been approved and\napplied by GCP.", - "The requested amendment to the Future Reservation has been declined by\nGCP and the original state was restored.", - "The requested amendment to the Future Reservation is currently being\nreviewd by GCP.", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ], - "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "HTTP2HealthCheck": { + "id": "HTTP2HealthCheck", + "properties": { + "host": { + "description": "The value of the host header in the HTTP/2 health check request. If left\nempty (default value), the host header is set to the destination IP address\nto which health check packets are sent. The destination IP address depends\non the type of load balancer. For details, see:\nhttps://cloud.google.com/load-balancing/docs/health-check-concepts#hc-packet-dest", "type": "string" }, - "autoCreatedReservations": { - "description": "Output only. Fully qualified urls of the automatically created reservations at\nstart_time.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, - "existingMatchingUsageInfo": { - "$ref": "FutureReservationStatusExistingMatchingUsageInfo", - "description": "Output only. [Output Only] Represents the existing matching usage for the future\nreservation.", - "readOnly": true + "port": { + "description": "The TCP port number to which the health check prober sends packets. The\ndefault value is 443. Valid values are 1 through65535.", + "format": "int32", + "type": "integer" }, - "fulfilledCount": { - "description": "Output only. This count indicates the fulfilled capacity so far. This is set during\n\"PROVISIONING\" state. This count also includes capacity delivered as part\nof existing matching reservations.", - "format": "int64", - "readOnly": true, + "portName": { + "description": "Not supported.", "type": "string" }, - "lastKnownGoodState": { - "$ref": "FutureReservationStatusLastKnownGoodState", - "description": "Output only. [Output Only] This field represents the future reservation before an\namendment was requested. If the amendment is declined, the Future\nReservation will be reverted to the last known good state. The last known\ngood state is not set when updating a future reservation whose\nProcurement Status is DRAFTING.", - "readOnly": true - }, - "lockTime": { - "description": "Output only. Time when Future Reservation would become LOCKED, after which no\nmodifications to Future Reservation will be allowed. Applicable only\nafter the Future Reservation is in the APPROVED state. The lock_time is\nan RFC3339 string. The procurement_status will transition to PROCURING\nstate at this time.", - "readOnly": true, + "portSpecification": { + "description": "Specifies how a port is selected for health checking. Can be one of the\nfollowing values: \nUSE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services\nfor passthrough load balancers and backend services for proxy load\nbalancers. Not supported by target pools. The health check supports all\nbackends supported by the backend service provided the backend can be\nhealth checked. For example, GCE_VM_IP network endpoint\ngroups, GCE_VM_IP_PORT network endpoint groups, and instance\ngroup backends. \n USE_NAMED_PORT: Not supported. \nUSE_SERVING_PORT: Provides an indirect method of specifying\nthe health check port by referring to the backend service. Only supported\nby backend services for proxy load balancers. Not supported by target\npools. Not supported by backend services for passthrough load balancers.\nSupports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group\nbackends.\n\nFor GCE_VM_IP_PORT network endpoint group backends, the health\ncheck uses the port number specified for each endpoint in the network\nendpoint group. For instance group backends, the health check uses the\nport number determined by looking up the backend service's named port in\nthe instance group's list of named ports.", + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "enumDescriptions": [ + "The port number in the health check's port is used for health\nchecking. Applies to network endpoint group and instance group backends.", + "Not supported.", + "For network endpoint group backends, the health check uses the port number\nspecified on each endpoint in the network endpoint group. For instance\ngroup backends, the health check uses the port number specified for the\nbackend service's named port defined in the instance group's named ports." + ], "type": "string" }, - "procurementStatus": { - "description": "Output only. Current state of this Future Reservation", + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the\nbackend, either NONE or PROXY_V1. The default\nis NONE.", "enum": [ - "APPROVED", - "CANCELLED", - "COMMITTED", - "DECLINED", - "DRAFTING", - "FAILED", - "FAILED_PARTIALLY_FULFILLED", - "FULFILLED", - "PENDING_AMENDMENT_APPROVAL", - "PENDING_APPROVAL", - "PROCUREMENT_STATUS_UNSPECIFIED", - "PROCURING", - "PROVISIONING" + "NONE", + "PROXY_V1" ], "enumDescriptions": [ - "Future reservation is approved by GCP.", - "Future reservation is cancelled by the customer.", - "Future reservation is committed by the customer.", - "Future reservation is rejected by GCP.", - "Related status for PlanningStatus.Draft. Transitions to\nPENDING_APPROVAL upon user submitting FR.", - "Future reservation failed. No additional reservations were provided.", - "Future reservation is partially fulfilled. Additional reservations were\nprovided but did not reach total_count reserved instance slots.", - "Future reservation is fulfilled completely.", - "An Amendment to the Future Reservation has been requested. If the\nAmendment is declined, the Future Reservation will be restored to the\nlast known good state.", - "Future reservation is pending approval by GCP.", "", - "Future reservation is being procured by GCP. Beyond this point, Future\nreservation is locked and no further modifications are allowed.", - "Future reservation capacity is being provisioned. This state will be\nentered after start_time, while reservations are being created to\nprovide total_count reserved instance slots. This state will not\npersist past start_time + 24h." + "" ], - "readOnly": true, "type": "string" }, - "specificSkuProperties": { - "$ref": "FutureReservationStatusSpecificSKUProperties" - } - }, - "type": "object" - }, - "FutureReservationStatusExistingMatchingUsageInfo": { - "description": "[Output Only] Represents the existing matching usage for the future\nreservation.", - "id": "FutureReservationStatusExistingMatchingUsageInfo", - "properties": { - "count": { - "description": "Output only. Count to represent min(FR total_count,\nmatching_reserved_capacity+matching_unreserved_instances)", - "format": "int64", - "readOnly": true, + "requestPath": { + "description": "The request path of the HTTP/2 health check request. The default value is/. Must comply withRFC3986.", "type": "string" }, - "timestamp": { - "description": "Output only. Timestamp when the matching usage was calculated", - "readOnly": true, + "response": { + "description": "Creates a content-based HTTP/2 health check. In addition to the required\nHTTP 200 (OK) status code, you can configure the health check to pass only\nwhen the backend sends this specific ASCII response string within the first\n1024 bytes of the HTTP response body. For details, see:\nhttps://cloud.google.com/load-balancing/docs/health-check-concepts#criteria-protocol-http", "type": "string" } }, "type": "object" }, - "FutureReservationStatusLastKnownGoodState": { - "description": "The state that the future reservation will be reverted to should the\namendment be declined.", - "id": "FutureReservationStatusLastKnownGoodState", + "HTTPHealthCheck": { + "id": "HTTPHealthCheck", "properties": { - "description": { - "description": "Output only. [Output Only] The description of the FutureReservation before an\namendment was requested.", - "readOnly": true, + "host": { + "description": "The value of the host header in the HTTP health check request. If left\nempty (default value), the host header is set to the destination IP address\nto which health check packets are sent. The destination IP address depends\non the type of load balancer. For details, see:\nhttps://cloud.google.com/load-balancing/docs/health-check-concepts#hc-packet-dest", "type": "string" }, - "existingMatchingUsageInfo": { - "$ref": "FutureReservationStatusExistingMatchingUsageInfo", - "description": "Output only. [Output Only] Represents the matching usage for the future\nreservation before an amendment was requested.", - "readOnly": true - }, - "futureReservationSpecs": { - "$ref": "FutureReservationStatusLastKnownGoodStateFutureReservationSpecs", - "readOnly": true + "port": { + "description": "The TCP port number to which the health check prober sends packets. The\ndefault value is 80. Valid values are 1 through65535.", + "format": "int32", + "type": "integer" }, - "lockTime": { - "description": "Output only. [Output Only] The lock time of the FutureReservation before an\namendment was requested.", - "readOnly": true, + "portName": { + "description": "Not supported.", "type": "string" }, - "namePrefix": { - "description": "Output only. [Output Only] The name prefix of the Future Reservation before an\namendment was requested.", - "readOnly": true, + "portSpecification": { + "description": "Specifies how a port is selected for health checking. Can be one of the\nfollowing values: \nUSE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services\nfor passthrough load balancers and backend services for proxy load\nbalancers. Also supported in legacy HTTP health checks for target pools.\nThe health check supports all backends supported by the backend service\nprovided the backend can be health checked. For example,GCE_VM_IP network endpoint groups, GCE_VM_IP_PORT\nnetwork endpoint groups, and instance group backends. \nUSE_NAMED_PORT: Not supported. \nUSE_SERVING_PORT: Provides an indirect method of specifying\nthe health check port by referring to the backend service. Only supported\nby backend services for proxy load balancers. Not supported by target\npools. Not supported by backend services for pass-through load balancers.\nSupports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group\nbackends.\n\nFor GCE_VM_IP_PORT network endpoint group backends, the health\ncheck uses the port number specified for each endpoint in the network\nendpoint group. For instance group backends, the health check uses the\nport number determined by looking up the backend service's named port in\nthe instance group's list of named ports.", + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "enumDescriptions": [ + "The port number in the health check's port is used for health\nchecking. Applies to network endpoint group and instance group backends.", + "Not supported.", + "For network endpoint group backends, the health check uses the port number\nspecified on each endpoint in the network endpoint group. For instance\ngroup backends, the health check uses the port number specified for the\nbackend service's named port defined in the instance group's named ports." + ], "type": "string" }, - "procurementStatus": { - "description": "Output only. [Output Only] The status of the last known good state for the Future\nReservation.", + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the\nbackend, either NONE or PROXY_V1. The default\nis NONE.", "enum": [ - "APPROVED", - "CANCELLED", - "COMMITTED", - "DECLINED", - "DRAFTING", - "FAILED", - "FAILED_PARTIALLY_FULFILLED", - "FULFILLED", - "PENDING_AMENDMENT_APPROVAL", - "PENDING_APPROVAL", - "PROCUREMENT_STATUS_UNSPECIFIED", - "PROCURING", - "PROVISIONING" + "NONE", + "PROXY_V1" ], "enumDescriptions": [ - "Future reservation is approved by GCP.", - "Future reservation is cancelled by the customer.", - "Future reservation is committed by the customer.", - "Future reservation is rejected by GCP.", - "Related status for PlanningStatus.Draft. Transitions to\nPENDING_APPROVAL upon user submitting FR.", - "Future reservation failed. No additional reservations were provided.", - "Future reservation is partially fulfilled. Additional reservations were\nprovided but did not reach total_count reserved instance slots.", - "Future reservation is fulfilled completely.", - "An Amendment to the Future Reservation has been requested. If the\nAmendment is declined, the Future Reservation will be restored to the\nlast known good state.", - "Future reservation is pending approval by GCP.", "", - "Future reservation is being procured by GCP. Beyond this point, Future\nreservation is locked and no further modifications are allowed.", - "Future reservation capacity is being provisioned. This state will be\nentered after start_time, while reservations are being created to\nprovide total_count reserved instance slots. This state will not\npersist past start_time + 24h." + "" ], - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "FutureReservationStatusLastKnownGoodStateFutureReservationSpecs": { - "description": "The properties of the last known good state for the Future Reservation.", - "id": "FutureReservationStatusLastKnownGoodStateFutureReservationSpecs", - "properties": { - "shareSettings": { - "$ref": "ShareSettings", - "description": "Output only. [Output Only] The previous share settings of the Future Reservation.", - "readOnly": true - }, - "specificSkuProperties": { - "$ref": "FutureReservationSpecificSKUProperties", - "description": "Output only. [Output Only] The previous instance related properties of the\nFuture Reservation.", - "readOnly": true - }, - "timeWindow": { - "$ref": "FutureReservationTimeWindow", - "description": "Output only. [Output Only] The previous time window of the Future Reservation.", - "readOnly": true - } - }, - "type": "object" - }, - "FutureReservationStatusSpecificSKUProperties": { - "description": "Properties to be set for the Future Reservation.", - "id": "FutureReservationStatusSpecificSKUProperties", - "properties": { - "sourceInstanceTemplateId": { - "description": "ID of the instance template used to populate the Future Reservation\nproperties.", "type": "string" - } - }, - "type": "object" - }, - "FutureReservationTimeWindow": { - "id": "FutureReservationTimeWindow", - "properties": { - "duration": { - "$ref": "Duration" }, - "endTime": { + "requestPath": { + "description": "The request path of the HTTP health check request. The default value is/. Must comply withRFC3986.", "type": "string" }, - "startTime": { - "description": "Start time of the Future Reservation. The start_time is an RFC3339\nstring.", + "response": { + "description": "Creates a content-based HTTP health check. In addition to the required\nHTTP 200 (OK) status code, you can configure the health check to pass only\nwhen the backend sends this specific ASCII response string within the first\n1024 bytes of the HTTP response body. For details, see:\nhttps://cloud.google.com/load-balancing/docs/health-check-concepts#criteria-protocol-http", "type": "string" } }, "type": "object" }, - "FutureReservationsAggregatedListResponse": { - "description": "Contains a list of future reservations.", - "id": "FutureReservationsAggregatedListResponse", + "HTTPSHealthCheck": { + "id": "HTTPSHealthCheck", "properties": { - "etag": { + "host": { + "description": "The value of the host header in the HTTPS health check request. If left\nempty (default value), the host header is set to the destination IP address\nto which health check packets are sent. The destination IP address depends\non the type of load balancer. For details, see:\nhttps://cloud.google.com/load-balancing/docs/health-check-concepts#hc-packet-dest", "type": "string" }, - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" + "port": { + "description": "The TCP port number to which the health check prober sends packets. The\ndefault value is 443. Valid values are 1 through65535.", + "format": "int32", + "type": "integer" }, - "items": { - "additionalProperties": { - "$ref": "FutureReservationsScopedList", - "description": "Name of the scope containing this set of future reservations." - }, - "description": "A list of Future reservation resources.", - "type": "object" + "portName": { + "description": "Not supported.", + "type": "string" }, - "kind": { - "default": "compute#futureReservationsAggregatedListResponse", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#futureReservationsAggregatedListResponse for future\nresevation aggregated list response.", - "readOnly": true, + "portSpecification": { + "description": "Specifies how a port is selected for health checking. Can be one of the\nfollowing values: \nUSE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services\nfor passthrough load balancers and backend services for proxy load\nbalancers. Not supported by target pools. The health check supports all\nbackends supported by the backend service provided the backend can be\nhealth checked. For example, GCE_VM_IP network endpoint\ngroups, GCE_VM_IP_PORT network endpoint groups, and instance\ngroup backends. \n USE_NAMED_PORT: Not supported. \nUSE_SERVING_PORT: Provides an indirect method of specifying\nthe health check port by referring to the backend service. Only supported\nby backend services for proxy load balancers. Not supported by target\npools. Not supported by backend services for passthrough load balancers.\nSupports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group\nbackends.\n\nFor GCE_VM_IP_PORT network endpoint group backends, the health\ncheck uses the port number specified for each endpoint in the network\nendpoint group. For instance group backends, the health check uses the\nport number determined by looking up the backend service's named port in\nthe instance group's list of named ports.", + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "enumDescriptions": [ + "The port number in the health check's port is used for health\nchecking. Applies to network endpoint group and instance group backends.", + "Not supported.", + "For network endpoint group backends, the health check uses the port number\nspecified on each endpoint in the network endpoint group. For instance\ngroup backends, the health check uses the port number specified for the\nbackend service's named port defined in the instance group's named ports." + ], "type": "string" }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the\nbackend, either NONE or PROXY_V1. The default\nis NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], "type": "string" }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, + "requestPath": { + "description": "The request path of the HTTPS health check request. The default value is/. Must comply withRFC3986.", "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", + "response": { + "description": "Creates a content-based HTTPS health check. In addition to the required\nHTTP 200 (OK) status code, you can configure the health check to pass only\nwhen the backend sends this specific ASCII response string within the first\n1024 bytes of the HTTP response body. For details, see:\nhttps://cloud.google.com/load-balancing/docs/health-check-concepts#criteria-protocol-http", + "type": "string" + } + }, + "type": "object" + }, + "HealthAggregationPoliciesScopedList": { + "id": "HealthAggregationPoliciesScopedList", + "properties": { + "healthAggregationPolicies": { + "description": "A list of HealthAggregationPolicys contained in this scope.", "items": { - "type": "string" + "$ref": "HealthAggregationPolicy" }, - "readOnly": true, "type": "array" }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "Informational warning which replaces the list of health aggregation\npolicies when the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -54750,26 +61893,100 @@ }, "type": "object" }, - "FutureReservationsListResponse": { - "id": "FutureReservationsListResponse", + "HealthAggregationPolicy": { + "description": "Represents a health aggregation policy.\n\nA health aggregation policy resource defines a policy to aggregate health.\n\nFor more information, see\nHealth checks overview.", + "id": "HealthAggregationPolicy", + "properties": { + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a HealthAggregationPolicy. An up-to-date fingerprint\nmust be provided in order to patch the HealthAggregationPolicy; Otherwise,\nthe request will fail with error 412 conditionNotMet. To see\nthe latest fingerprint, make a get() request to retrieve the\nHealthAggregationPolicy.", + "format": "byte", + "type": "string" + }, + "healthyPercentThreshold": { + "description": "Can only be set if the policyType field isBACKEND_SERVICE_POLICY. Specifies the threshold (as a\npercentage) of healthy endpoints required in order to consider the\naggregated health result HEALTHY. Defaults to 60. Must be in\nrange [0, 100]. Not applicable if the policyType field isDNB_PUBLIC_IP_POLICY. Can be mutated. This field is optional,\nand will be set to the default if unspecified. Note that both this\nthreshold and minHealthyThreshold must be satisfied in order\nfor HEALTHY to be the aggregated result. \"Endpoints\" refers to network\nendpoints within a Network Endpoint Group or instances within an Instance\nGroup.", + "format": "uint32", + "type": "integer" + }, + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "compute#healthAggregationPolicy", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#healthAggregationPolicy for health aggregation\npolicies.", + "readOnly": true, + "type": "string" + }, + "minHealthyThreshold": { + "description": "Can only be set if the policyType field isBACKEND_SERVICE_POLICY. Specifies the minimum number of\nhealthy endpoints required in order to consider the aggregated health\nresult HEALTHY. Defaults to 1. Must be positive. Not\napplicable if the policyType field isDNB_PUBLIC_IP_POLICY. Can be mutated. This field is optional,\nand will be set to the default if unspecified. Note that both this\nthreshold and healthyPercentThreshold must be satisfied in\norder for HEALTHY to be the aggregated result. \"Endpoints\" refers to\nnetwork endpoints within a Network Endpoint Group or instances within an\nInstance Group.", + "format": "uint32", + "type": "integer" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "policyType": { + "description": "Specifies the type of the healthAggregationPolicy. The only allowed value\nfor global resources is DNS_PUBLIC_IP_POLICY. The only allowed\nvalue for regional resources is BACKEND_SERVICE_POLICY. Must\nbe specified when the healthAggregationPolicy is created, and cannot be\nmutated.", + "enum": [ + "BACKEND_SERVICE_POLICY", + "DNS_PUBLIC_IP_POLICY" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "region": { + "description": "Output only. [Output Only] URL of the region where the health aggregation policy\nresides. This field applies only to the regional resource. You must specify\nthis field as part of the HTTP request URL. It is not settable as a field\nin the request body.", + "readOnly": true, + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for the resource.", + "readOnly": true, + "type": "string" + }, + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL with id for the resource.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "HealthAggregationPolicyAggregatedList": { + "description": "Contains a list of HealthAggregationPoliciesScopedList.", + "id": "HealthAggregationPolicyAggregatedList", "properties": { - "etag": { - "type": "string" - }, "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "[Output Only] A list of future reservation resources.", - "items": { - "$ref": "FutureReservation" + "additionalProperties": { + "$ref": "HealthAggregationPoliciesScopedList", + "description": "Name of the scope containing this set of HealthAggregationPolicies." }, - "type": "array" + "description": "A list of HealthAggregationPoliciesScopedList resources.", + "type": "object" }, "kind": { - "default": "compute#futureReservationsListResponse", - "description": "Output only. [Output Only] Type of resource.Alwayscompute#FutureReservationsListResponse for lists of\nreservations", + "default": "compute#healthAggregationPolicyAggregatedList", + "description": "Output only. Type of resource.", "readOnly": true, "type": "string" }, @@ -54917,18 +62134,36 @@ }, "type": "object" }, - "FutureReservationsScopedList": { - "id": "FutureReservationsScopedList", + "HealthAggregationPolicyList": { + "id": "HealthAggregationPolicyList", "properties": { - "futureReservations": { - "description": "A list of future reservations contained in this scope.", + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HealthAggregationPolicy resources.", "items": { - "$ref": "FutureReservation" + "$ref": "HealthAggregationPolicy" }, "type": "array" }, + "kind": { + "default": "compute#healthAggregationPolicyList", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#healthAggregationPolicy for health aggregation\npolicies.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, "warning": { - "description": "Informational warning which replaces the list of future reservations when\nthe list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -55019,603 +62254,139 @@ "Quota information is not available to client requests (e.g:\nregions.list).", "The user attempted to use a resource that requires a TOS they have not\naccepted.", "Warning that a resource is in use.", - "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", - "When a resource schema validation is ignored.", - "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", - "When undeclared properties in the schema are present", - "A given scope cannot be reached." - ], - "type": "string" - }, - "data": { - "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", - "items": { - "properties": { - "key": { - "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", - "type": "string" - }, - "value": { - "description": "[Output Only] A warning data value corresponding to the key.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "message": { - "description": "[Output Only] A human-readable description of the warning code.", - "type": "string" - } - }, - "type": "object" - } - }, - "type": "object" - }, - "FutureResourcesRecommendation": { - "description": "Recommendation for single resources specification, to be created in the\nfuture.", - "id": "FutureResourcesRecommendation", - "properties": { - "endTime": { - "format": "google-datetime", - "type": "string" - }, - "location": { - "description": "The advised location for resource usage. When a zone, in format\n'zones/'.\nIf not set, it means that no location is recommended - see\nother_locations for details.", - "type": "string" - }, - "otherLocations": { - "additionalProperties": { - "$ref": "FutureResourcesRecommendationOtherLocation" - }, - "description": "List of locations in the request scope that were not\nrecommended. Keys of the map are zones, in format 'zones/'.\nThe values are status information indicating the recommendation status.", - "type": "object" - }, - "recommendationId": { - "description": "Unique id of the recommendation, a UUID string generated by the API.", - "type": "string" - }, - "recommendationType": { - "description": "Type of recommendation. Currently only FUTURE_RESERVATION is supported.", - "enum": [ - "FUTURE_RESERVATION", - "RECOMMENDATION_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "A Future Reservation is recommended.", - "Default value, unused." - ], - "type": "string" - }, - "startTime": { - "format": "google-datetime", - "type": "string" - } - }, - "type": "object" - }, - "FutureResourcesRecommendationOtherLocation": { - "description": "Information about recommendation status for locations\nthat were allowed but not used by the response.", - "id": "FutureResourcesRecommendationOtherLocation", - "properties": { - "details": { - "description": "Details (human readable) describing the situation.\nFor example, if status is CONDITION_NOT_MET, then\ndetails contain information about the parameters of the time window\nthat did not meet the required conditions.", - "type": "string" - }, - "status": { - "description": "Status of recommendation in this location.", - "enum": [ - "CONDITIONS_NOT_MET", - "NOT_SUPPORTED", - "NO_CAPACITY", - "OTHER_LOCATION_STATUS_UNDEFINED", - "RECOMMENDED" - ], - "enumDescriptions": [ - "The requested resources are offered in this location\nbut the requested time window is does not meet the required conditions.", - "The requested resources are not offered in this location.\nRetrying the request will not change this status.", - "The requested resources are offered in this location\nand the requested time window is accepted\nbut there is no capacity within the requested time window.", - "Default value, unused.", - "The requested resources are offered in this location\nand it is possible to request them. However, another location\nwas better and was recommended." - ], - "type": "string" - } - }, - "type": "object" - }, - "FutureResourcesSpec": { - "description": "Specification of resources to be created at some time in the future within an\noptionally specified set of locations, and within the specified time range.", - "id": "FutureResourcesSpec", - "properties": { - "deploymentType": { - "description": "Indicates if the reservation allocation strategy is static (DENSE) or\ndynamic (STANDARD). Defaults to DENSE.", - "enum": [ - "DENSE", - "DEPLOYMENT_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "The reserved capacity is made up of densely deployed reservation blocks.", - "" - ], - "type": "string" - }, - "locationPolicy": { - "$ref": "FutureResourcesSpecLocationPolicy", - "description": "Optional location policy allowing to exclude some zone(s) in which\nthe resources must not be created." - }, - "targetResources": { - "$ref": "FutureResourcesSpecTargetResources", - "description": "Specification of the reserved resources." - }, - "timeRangeSpec": { - "$ref": "FlexibleTimeRange", - "description": "Specification of a time range in which the resources may be created.\nThe time range specifies start of resource use and planned end of resource\nuse." - } - }, - "type": "object" - }, - "FutureResourcesSpecAggregateResources": { - "id": "FutureResourcesSpecAggregateResources", - "properties": { - "acceleratorCount": { - "description": "Size of the request, in accelerator (chip) count.", - "format": "int64", - "type": "string" - }, - "vmFamily": { - "description": "The VM family that all instances scheduled against this reservation\nmust belong to. Use for TPU reservations.", - "enum": [ - "VM_FAMILY_CLOUD_TPU_DEVICE_CT3", - "VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L", - "VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP", - "VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT6E", - "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT3P", - "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P", - "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT5P", - "VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ], - "type": "string" - }, - "workloadType": { - "description": "Workload type. Use for TPU reservations.", - "enum": [ - "BATCH", - "SERVING", - "UNSPECIFIED" - ], - "enumDescriptions": [ - "Reserved resources will be optimized for BATCH workloads, such as ML\ntraining.", - "Reserved resources will be optimized for SERVING workloads, such as ML\ninference.", - "" - ], - "type": "string" - } - }, - "type": "object" - }, - "FutureResourcesSpecLocalSsdPartition": { - "id": "FutureResourcesSpecLocalSsdPartition", - "properties": { - "diskInterface": { - "description": "Disk interface. Defaults to SCSI.", - "enum": [ - "NVME", - "SCSI" - ], - "enumDescriptions": [ - "", - "" - ], - "type": "string" - }, - "diskSizeGb": { - "description": "The size of the disk in GB.", - "format": "int64", - "type": "string" - } - }, - "type": "object" - }, - "FutureResourcesSpecLocationPolicy": { - "description": "Specification of locations to create resources in.", - "id": "FutureResourcesSpecLocationPolicy", - "properties": { - "locations": { - "additionalProperties": { - "$ref": "FutureResourcesSpecLocationPolicyLocation" - }, - "description": "Preferences for specified locations.\nKeys of the map are locations - zones, in format of 'zones/'.\nValues are preferences for the zones.\nIf a zone is not specified in this map, it is ALLOWed.", - "type": "object" - } - }, - "type": "object" - }, - "FutureResourcesSpecLocationPolicyLocation": { - "description": "Preference for a single specified location.", - "id": "FutureResourcesSpecLocationPolicyLocation", - "properties": { - "preference": { - "description": "Preference for this location.", - "enum": [ - "ALLOW", - "DENY", - "PREFERENCE_UNSPECIFIED" - ], - "enumDescriptions": [ - "Location is allowed for use.", - "Location is prohibited.", - "Default value, unused." - ], - "type": "string" - } - }, - "type": "object" - }, - "FutureResourcesSpecSpecificSKUResources": { - "id": "FutureResourcesSpecSpecificSKUResources", - "properties": { - "instanceCount": { - "description": "Size of the request, in instance count.", - "format": "int64", - "type": "string" - }, - "localSsdPartitions": { - "description": "Local SSD partitions. You do not have to include SSD partitions that\nare built in the machine type.", - "items": { - "$ref": "FutureResourcesSpecLocalSsdPartition" - }, - "type": "array" - }, - "machineType": { - "description": "The machine type to use for instances that will use the reservation.\nThis field only accepts machine type names. e.g. n2-standard-4\nand does not accept machine type full or partial url. e.g.\nprojects/my-l7ilb-project/zones/us-central1-a/machineTypes/n2-standard-4.\nUse for GPU reservations.", - "type": "string" - } - }, - "type": "object" - }, - "FutureResourcesSpecTargetResources": { - "description": "Specification of reserved resources.", - "id": "FutureResourcesSpecTargetResources", - "properties": { - "aggregateResources": { - "$ref": "FutureResourcesSpecAggregateResources" - }, - "specificSkuResources": { - "$ref": "FutureResourcesSpecSpecificSKUResources" - } - }, - "type": "object" - }, - "GRPCHealthCheck": { - "id": "GRPCHealthCheck", - "properties": { - "grpcServiceName": { - "description": "The gRPC service name for the health check. This field is optional. The\nvalue of grpc_service_name has the following meanings by convention: \n\n- Empty service_name means the overall status of all services at the\nbackend. \n\n- Non-empty service_name means the health of that gRPC service, as defined\nby the owner of the service. \n\nThe grpc_service_name can only be ASCII.", - "type": "string" - }, - "port": { - "description": "The TCP port number to which the health check prober sends packets. Valid\nvalues are 1 through 65535.", - "format": "int32", - "type": "integer" - }, - "portName": { - "description": "Not supported.", - "type": "string" - }, - "portSpecification": { - "description": "Specifies how a port is selected for health checking. Can be one of the\nfollowing values: \nUSE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services\nfor passthrough load balancers and backend services for proxy load\nbalancers. Not supported by target pools. The health check supports all\nbackends supported by the backend service provided the backend can be\nhealth checked. For example, GCE_VM_IP network endpoint\ngroups, GCE_VM_IP_PORT network endpoint groups, and instance\ngroup backends. \n USE_NAMED_PORT: Not supported. \nUSE_SERVING_PORT: Provides an indirect method of specifying\nthe health check port by referring to the backend service. Only supported\nby backend services for proxy load balancers. Not supported by target\npools. Not supported by backend services for passthrough load balancers.\nSupports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group\nbackends.\n\nFor GCE_VM_IP_PORT network endpoint group backends, the health\ncheck uses the port number specified for each endpoint in the network\nendpoint group. For instance group backends, the health check uses the\nport number determined by looking up the backend service's named port in\nthe instance group's list of named ports.", - "enum": [ - "USE_FIXED_PORT", - "USE_NAMED_PORT", - "USE_SERVING_PORT" - ], - "enumDescriptions": [ - "The port number in the health check's port is used for health\nchecking. Applies to network endpoint group and instance group backends.", - "Not supported.", - "For network endpoint group backends, the health check uses the port number\nspecified on each endpoint in the network endpoint group. For instance\ngroup backends, the health check uses the port number specified for the\nbackend service's named port defined in the instance group's named ports." - ], - "type": "string" - } - }, - "type": "object" - }, - "GRPCTLSHealthCheck": { - "id": "GRPCTLSHealthCheck", - "properties": { - "grpcServiceName": { - "description": "The gRPC service name for the health check. This field is optional. The\nvalue of grpc_service_name has the following meanings by convention: \n\n- Empty service_name means the overall status of all services at the\nbackend. \n\n- Non-empty service_name means the health of that gRPC service, as defined\nby the owner of the service. \n\nThe grpc_service_name can only be ASCII.", - "type": "string" - }, - "port": { - "description": "The TCP port number to which the health check prober sends packets. Valid\nvalues are 1 through 65535.", - "format": "int32", - "type": "integer" - }, - "portSpecification": { - "description": "Specifies how a port is selected for health checking. Can be one of the\nfollowing values: \nUSE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services\nfor passthrough load balancers and backend services for proxy load\nbalancers. Not supported by target pools. The health check supports all\nbackends supported by the backend service provided the backend can be\nhealth checked. For example, GCE_VM_IP network endpoint\ngroups, GCE_VM_IP_PORT network endpoint groups, and instance\ngroup backends. \n USE_NAMED_PORT: Not supported. \nUSE_SERVING_PORT: Provides an indirect method of specifying\nthe health check port by referring to the backend service. Only supported\nby backend services for proxy load balancers. Not supported by target\npools. Not supported by backend services for passthrough load balancers.\nSupports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group\nbackends.\n\nFor GCE_VM_IP_PORT network endpoint group backends, the health\ncheck uses the port number specified for each endpoint in the network\nendpoint group. For instance group backends, the health check uses the\nport number determined by looking up the backend service's named port in\nthe instance group's list of named ports.", - "enum": [ - "USE_FIXED_PORT", - "USE_NAMED_PORT", - "USE_SERVING_PORT" - ], - "enumDescriptions": [ - "The port number in the health check's port is used for health\nchecking. Applies to network endpoint group and instance group backends.", - "Not supported.", - "For network endpoint group backends, the health check uses the port number\nspecified on each endpoint in the network endpoint group. For instance\ngroup backends, the health check uses the port number specified for the\nbackend service's named port defined in the instance group's named ports." - ], - "type": "string" - } - }, - "type": "object" - }, - "GlobalAddressesMoveRequest": { - "id": "GlobalAddressesMoveRequest", - "properties": { - "description": { - "description": "An optional destination address description if intended to be different\nfrom the source.", - "type": "string" - }, - "destinationAddress": { - "description": "The URL of the destination address to move to. This can be a full or\npartial URL. For example, the following are all valid URLs to a address:\n \n - https://www.googleapis.com/compute/v1/projects/project/global/addresses/address \n - projects/project/global/addresses/address\n\n\nNote that destination project must be different from the source project. So/global/addresses/address is not valid partial url.", - "type": "string" - } - }, - "type": "object" - }, - "GlobalNetworkEndpointGroupsAttachEndpointsRequest": { - "id": "GlobalNetworkEndpointGroupsAttachEndpointsRequest", - "properties": { - "networkEndpoints": { - "description": "The list of network endpoints to be attached.", - "items": { - "$ref": "NetworkEndpoint" - }, - "type": "array" - } - }, - "type": "object" - }, - "GlobalNetworkEndpointGroupsDetachEndpointsRequest": { - "id": "GlobalNetworkEndpointGroupsDetachEndpointsRequest", - "properties": { - "networkEndpoints": { - "description": "The list of network endpoints to be detached.", - "items": { - "$ref": "NetworkEndpoint" - }, - "type": "array" - } - }, - "type": "object" - }, - "GlobalOrganizationSetPolicyRequest": { - "id": "GlobalOrganizationSetPolicyRequest", - "properties": { - "bindings": { - "description": "Flatten Policy to create a backward compatible wire-format.\nDeprecated. Use 'policy' to specify bindings.", - "items": { - "$ref": "Binding" - }, - "type": "array" - }, - "etag": { - "description": "Flatten Policy to create a backward compatible wire-format.\nDeprecated. Use 'policy' to specify the etag.", - "format": "byte", - "type": "string" - }, - "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the 'resource'. The size of\nthe policy is limited to a few 10s of KB. An empty policy is in general a\nvalid policy but certain services (like Projects) might reject them." - } - }, - "type": "object" - }, - "GlobalSetLabelsRequest": { - "id": "GlobalSetLabelsRequest", - "properties": { - "labelFingerprint": { - "description": "The fingerprint of the previous set of labels for this resource,\nused to detect conflicts. The fingerprint is initially generated by Compute\nEngine and changes after every request to modify or update labels. You must\nalways provide an up-to-date fingerprint hash when updating or changing\nlabels, otherwise the request will fail with error412 conditionNotMet. Make a get() request to the\nresource to get the latest fingerprint.", - "format": "byte", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } }, - "description": "A list of labels to apply for this resource. Each label must comply with\nthe\nrequirements for labels. For example,\"webserver-frontend\": \"images\". A label value can also be\nempty (e.g. \"my-label\": \"\").", "type": "object" } }, "type": "object" }, - "GlobalSetPolicyRequest": { - "id": "GlobalSetPolicyRequest", - "properties": { - "bindings": { - "description": "Flatten Policy to create a backward compatible wire-format.\nDeprecated. Use 'policy' to specify bindings.", - "items": { - "$ref": "Binding" - }, - "type": "array" - }, - "etag": { - "description": "Flatten Policy to create a backward compatible wire-format.\nDeprecated. Use 'policy' to specify the etag.", - "format": "byte", - "type": "string" - }, - "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the 'resource'. The size of\nthe policy is limited to a few 10s of KB. An empty policy is in general a\nvalid policy but certain services (like Projects) might reject them." - } - }, - "type": "object" - }, - "GroupMaintenanceInfo": { - "description": "Maintenance Info for ReservationBlocks.", - "id": "GroupMaintenanceInfo", + "HealthCheck": { + "description": "Represents a health check resource.\n\nGoogle Compute Engine has two health check resources:\n\n* [Regional](/compute/docs/reference/rest/v1/regionHealthChecks)\n* [Global](/compute/docs/reference/rest/v1/healthChecks)\n\nThese health check resources can be used for load balancing and for\nautohealing VMs in a managed instance group (MIG).\n\n**Load balancing**\n\nHealth check requirements vary depending on the type of load balancer. For\ndetails about the type of health check supported for\neach load balancer and corresponding backend type,\nsee Health\nchecks overview: Load balancer guide.\n\n**Autohealing in MIGs**\n\nThe health checks that you use for autohealing VMs in a MIG can be either\nregional or global. For more information, see Set up an\napplication health check and autohealing.\n\nFor more information, seeHealth checks\noverview.", + "id": "HealthCheck", "properties": { - "instanceMaintenanceOngoingCount": { - "description": "Describes number of instances that have ongoing maintenance.", + "checkIntervalSec": { + "description": "How often (in seconds) to send a health check. The default value is 5\nseconds.", "format": "int32", "type": "integer" }, - "instanceMaintenancePendingCount": { - "description": "Describes number of instances that have pending maintenance.", - "format": "int32", - "type": "integer" + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp in3339\ntext format.", + "readOnly": true, + "type": "string" }, - "maintenanceOngoingCount": { - "description": "Progress for ongoing maintenance for this group of VMs/hosts.\nDescribes number of hosts in the block that have ongoing maintenance.", - "format": "int32", - "type": "integer" + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" }, - "maintenancePendingCount": { - "description": "Progress for ongoing maintenance for this group of VMs/hosts.\nDescribes number of hosts in the block that have pending maintenance.", - "format": "int32", - "type": "integer" + "grpcHealthCheck": { + "$ref": "GRPCHealthCheck" }, - "schedulingType": { - "description": "The type of maintenance for the reservation.", - "enum": [ - "GROUPED", - "GROUP_MAINTENANCE_TYPE_UNSPECIFIED", - "INDEPENDENT" - ], - "enumDescriptions": [ - "Maintenance on all reserved instances in the reservation is synchronized.", - "Unknown maintenance type.", - "Maintenance is not synchronized for this reservation. Instead, each\ninstance has its own maintenance window." - ], - "type": "string" + "grpcTlsHealthCheck": { + "$ref": "GRPCTLSHealthCheck" }, - "subblockInfraMaintenanceOngoingCount": { - "description": "Describes number of subblock Infrastructure that has ongoing maintenance.\nHere, Subblock Infrastructure Maintenance pertains to upstream hardware\ncontained in the Subblock that is necessary for a VM Family(e.g. NVLink\nDomains). Not all VM Families will support this field.", + "healthyThreshold": { + "description": "A so-far unhealthy instance will be marked healthy after this\nmany consecutive successes. The default value is 2.", "format": "int32", "type": "integer" }, - "subblockInfraMaintenancePendingCount": { - "description": "Describes number of subblock Infrastructure that has pending maintenance.\n Here, Subblock Infrastructure Maintenance pertains to upstream hardware\n contained in the Subblock that is necessary for a VM Family (e.g. NVLink\n Domains). Not all VM Families will support this field.", - "format": "int32", - "type": "integer" + "http2HealthCheck": { + "$ref": "HTTP2HealthCheck" }, - "upcomingGroupMaintenance": { - "$ref": "UpcomingMaintenance", - "description": "Maintenance information on this group of VMs." - } - }, - "type": "object" - }, - "GuestAttributes": { - "description": "A guest attributes entry.", - "id": "GuestAttributes", - "properties": { - "kind": { - "default": "compute#guestAttributes", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#guestAttributes for guest attributes entry.", - "readOnly": true, - "type": "string" + "httpHealthCheck": { + "$ref": "HTTPHealthCheck" }, - "queryPath": { - "description": "The path to be queried. This can be the default namespace ('') or a\nnested namespace ('\\/') or a specified key\n('\\/\\').", - "type": "string" + "httpsHealthCheck": { + "$ref": "HTTPSHealthCheck" }, - "queryValue": { - "$ref": "GuestAttributesValue", - "description": "Output only. [Output Only] The value of the requested queried path.", - "readOnly": true + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "type": "string" }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "kind": { + "default": "compute#healthCheck", + "description": "Output only. Type of the resource.", "readOnly": true, "type": "string" }, - "variableKey": { - "description": "The key to search for.", + "logConfig": { + "$ref": "HealthCheckLogConfig", + "description": "Configure logging on this health check." + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nFor example, a name that is 1-63 characters long, matches the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`, and otherwise complies with\nRFC1035. This regular expression describes a name where the first\ncharacter is a lowercase letter, and all following characters are a dash,\nlowercase letter, or digit, except the last character, which isn't a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, - "variableValue": { - "description": "Output only. [Output Only] The value found for the requested key.", + "region": { + "description": "Output only. [Output Only] Region where the health check resides. Not applicable to\nglobal health checks.", "readOnly": true, "type": "string" - } - }, - "type": "object" - }, - "GuestAttributesEntry": { - "description": "A guest attributes namespace/key/value entry.", - "id": "GuestAttributesEntry", - "properties": { - "key": { - "description": "Key for the guest attribute entry.", - "type": "string" }, - "namespace": { - "description": "Namespace for the guest attribute entry.", + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", "type": "string" }, - "value": { - "description": "Value for the guest attribute entry.", - "type": "string" - } - }, - "type": "object" - }, - "GuestAttributesValue": { - "description": "Array of guest attribute namespace/key/value tuples.", - "id": "GuestAttributesValue", - "properties": { - "items": { + "sourceRegions": { + "description": "The list of cloud regions from which health checks are performed. If any\nregions are specified, then exactly 3 regions should be specified. The\nregion names must be valid names of Google Cloud regions.\nThis can only be set for global health check.\nIf this list is non-empty, then there are restrictions\non what other health check fields are supported and what other resources\ncan use this health check:\n \n - SSL, HTTP2, and GRPC protocols are not supported.\n - The TCP request field is not supported.\n - The proxyHeader field for HTTP, HTTPS, and TCP is not\n supported.\n - The checkIntervalSec field must be at least 30.\n - The health check cannot be used with BackendService nor with managed\n instance group auto-healing.", "items": { - "$ref": "GuestAttributesEntry" + "type": "string" }, "type": "array" - } - }, - "type": "object" - }, - "GuestOsFeature": { - "description": "Guest OS features.", - "id": "GuestOsFeature", - "properties": { + }, + "sslHealthCheck": { + "$ref": "SSLHealthCheck" + }, + "tcpHealthCheck": { + "$ref": "TCPHealthCheck" + }, + "timeoutSec": { + "description": "How long (in seconds) to wait before claiming failure. The default value is\n5 seconds. It is invalid for timeoutSec to have greater\nvalue than checkIntervalSec.", + "format": "int32", + "type": "integer" + }, "type": { - "description": "The ID of a supported feature. To add multiple values, use commas to\nseparate values. Set to one or more of the following values:\n \n - VIRTIO_SCSI_MULTIQUEUE\n - WINDOWS\n - MULTI_IP_SUBNET\n - UEFI_COMPATIBLE\n - GVNIC\n - SEV_CAPABLE\n - SUSPEND_RESUME_COMPATIBLE\n - SEV_LIVE_MIGRATABLE_V2\n - SEV_SNP_CAPABLE\n - TDX_CAPABLE\n - IDPF\n - SNP_SVSM_CAPABLE\n\n\nFor more information, see\nEnabling guest operating system features.", + "description": "Specifies the type of the healthCheck, either TCP,SSL, HTTP, HTTPS,HTTP2 or GRPC. Exactly one of the\nprotocol-specific health check fields must be specified, which must matchtype field.", "enum": [ - "BARE_METAL_LINUX_COMPATIBLE", - "FEATURE_TYPE_UNSPECIFIED", - "GVNIC", - "IDPF", - "MULTI_IP_SUBNET", - "SECURE_BOOT", - "SEV_CAPABLE", - "SEV_LIVE_MIGRATABLE", - "SEV_LIVE_MIGRATABLE_V2", - "SEV_SNP_CAPABLE", - "SNP_SVSM_CAPABLE", - "TDX_CAPABLE", - "UEFI_COMPATIBLE", - "VIRTIO_SCSI_MULTIQUEUE", - "WINDOWS" + "GRPC", + "GRPC_WITH_TLS", + "HTTP", + "HTTP2", + "HTTPS", + "INVALID", + "SSL", + "TCP" ], "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", "", "", "", @@ -55626,181 +62397,315 @@ "" ], "type": "string" + }, + "unhealthyThreshold": { + "description": "A so-far healthy instance will be marked unhealthy after this many\nconsecutive failures. The default value is 2.", + "format": "int32", + "type": "integer" } }, "type": "object" }, - "HTTP2HealthCheck": { - "id": "HTTP2HealthCheck", + "HealthCheckList": { + "description": "Contains a list of HealthCheck resources.", + "id": "HealthCheckList", "properties": { - "host": { - "description": "The value of the host header in the HTTP/2 health check request. If left\nempty (default value), the host header is set to the destination IP address\nto which health check packets are sent. The destination IP address depends\non the type of load balancer. For details, see:\nhttps://cloud.google.com/load-balancing/docs/health-check-concepts#hc-packet-dest", + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, - "port": { - "description": "The TCP port number to which the health check prober sends packets. The\ndefault value is 443. Valid values are 1 through65535.", - "format": "int32", - "type": "integer" - }, - "portName": { - "description": "Not supported.", - "type": "string" + "items": { + "description": "A list of HealthCheck resources.", + "items": { + "$ref": "HealthCheck" + }, + "type": "array" }, - "portSpecification": { - "description": "Specifies how a port is selected for health checking. Can be one of the\nfollowing values: \nUSE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services\nfor passthrough load balancers and backend services for proxy load\nbalancers. Not supported by target pools. The health check supports all\nbackends supported by the backend service provided the backend can be\nhealth checked. For example, GCE_VM_IP network endpoint\ngroups, GCE_VM_IP_PORT network endpoint groups, and instance\ngroup backends. \n USE_NAMED_PORT: Not supported. \nUSE_SERVING_PORT: Provides an indirect method of specifying\nthe health check port by referring to the backend service. Only supported\nby backend services for proxy load balancers. Not supported by target\npools. Not supported by backend services for passthrough load balancers.\nSupports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group\nbackends.\n\nFor GCE_VM_IP_PORT network endpoint group backends, the health\ncheck uses the port number specified for each endpoint in the network\nendpoint group. For instance group backends, the health check uses the\nport number determined by looking up the backend service's named port in\nthe instance group's list of named ports.", - "enum": [ - "USE_FIXED_PORT", - "USE_NAMED_PORT", - "USE_SERVING_PORT" - ], - "enumDescriptions": [ - "The port number in the health check's port is used for health\nchecking. Applies to network endpoint group and instance group backends.", - "Not supported.", - "For network endpoint group backends, the health check uses the port number\nspecified on each endpoint in the network endpoint group. For instance\ngroup backends, the health check uses the port number specified for the\nbackend service's named port defined in the instance group's named ports." - ], + "kind": { + "default": "compute#healthCheckList", + "description": "Output only. Type of resource.", + "readOnly": true, "type": "string" }, - "proxyHeader": { - "description": "Specifies the type of proxy header to append before sending data to the\nbackend, either NONE or PROXY_V1. The default\nis NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ], + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" }, - "requestPath": { - "description": "The request path of the HTTP/2 health check request. The default value is/. Must comply withRFC3986.", + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, "type": "string" }, - "response": { - "description": "Creates a content-based HTTP/2 health check. In addition to the required\nHTTP 200 (OK) status code, you can configure the health check to pass only\nwhen the backend sends this specific ASCII response string within the first\n1024 bytes of the HTTP response body. For details, see:\nhttps://cloud.google.com/load-balancing/docs/health-check-concepts#criteria-protocol-http", + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HealthCheckLogConfig": { + "description": "Configuration of logging on a health check. If logging is enabled, logs\nwill be exported to Stackdriver.", + "id": "HealthCheckLogConfig", + "properties": { + "enable": { + "description": "Indicates whether or not to export logs. This is false by default, which\nmeans no health check logging will be done.", + "type": "boolean" + } + }, + "type": "object" + }, + "HealthCheckReference": { + "description": "A full or valid partial URL to a health check. For example, the following are\nvalid URLs:\n \n - https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check\n - projects/project-id/global/httpHealthChecks/health-check\n - global/httpHealthChecks/health-check", + "id": "HealthCheckReference", + "properties": { + "healthCheck": { "type": "string" } }, "type": "object" }, - "HTTPHealthCheck": { - "id": "HTTPHealthCheck", + "HealthCheckService": { + "description": "Represents a Health-Check as a Service resource.", + "id": "HealthCheckService", "properties": { - "host": { - "description": "The value of the host header in the HTTP health check request. If left\nempty (default value), the host header is set to the destination IP address\nto which health check packets are sent. The destination IP address depends\non the type of load balancer. For details, see:\nhttps://cloud.google.com/load-balancing/docs/health-check-concepts#hc-packet-dest", + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, "type": "string" }, - "port": { - "description": "The TCP port number to which the health check prober sends packets. The\ndefault value is 80. Valid values are 1 through65535.", - "format": "int32", - "type": "integer" + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" }, - "portName": { - "description": "Not supported.", + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a HealthCheckService. An up-to-date fingerprint must\nbe provided in order to patch/update the HealthCheckService; Otherwise, the\nrequest will fail with error 412 conditionNotMet. To see the\nlatest fingerprint, make a get() request to retrieve the\nHealthCheckService.", + "format": "byte", "type": "string" }, - "portSpecification": { - "description": "Specifies how a port is selected for health checking. Can be one of the\nfollowing values: \nUSE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services\nfor passthrough load balancers and backend services for proxy load\nbalancers. Also supported in legacy HTTP health checks for target pools.\nThe health check supports all backends supported by the backend service\nprovided the backend can be health checked. For example,GCE_VM_IP network endpoint groups, GCE_VM_IP_PORT\nnetwork endpoint groups, and instance group backends. \nUSE_NAMED_PORT: Not supported. \nUSE_SERVING_PORT: Provides an indirect method of specifying\nthe health check port by referring to the backend service. Only supported\nby backend services for proxy load balancers. Not supported by target\npools. Not supported by backend services for pass-through load balancers.\nSupports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group\nbackends.\n\nFor GCE_VM_IP_PORT network endpoint group backends, the health\ncheck uses the port number specified for each endpoint in the network\nendpoint group. For instance group backends, the health check uses the\nport number determined by looking up the backend service's named port in\nthe instance group's list of named ports.", + "healthChecks": { + "description": "A list of URLs to the HealthCheck resources. Must have\nat least one HealthCheck, and not more than 10 for regionalHealthCheckService, and not more than 1 for globalHealthCheckService.HealthCheck resources must haveportSpecification=USE_SERVING_PORT orportSpecification=USE_FIXED_PORT. For\nregional HealthCheckService, theHealthCheck must be regional and in the same\nregion. For global HealthCheckService,HealthCheck must be global. Mix of regional and globalHealthChecks is not supported. Multiple regionalHealthChecks must belong to the same region. RegionalHealthChecks must belong to the same region as zones ofNetworkEndpointGroups. For globalHealthCheckService using globalINTERNET_IP_PORT NetworkEndpointGroups, the\nglobal HealthChecks must specify sourceRegions,\nand HealthChecks that specify sourceRegions can\nonly be used with global INTERNET_IP_PORTNetworkEndpointGroups.", + "items": { + "type": "string" + }, + "type": "array" + }, + "healthStatusAggregationPolicy": { + "description": "Optional. Policy for how the results from multiple health checks\nfor the same endpoint are aggregated. Defaults to NO_AGGREGATION\nif unspecified.\n \n - NO_AGGREGATION. An EndpointHealth message is\n returned for each pair in the health check\n service.\n - AND. If any health check of an endpoint reportsUNHEALTHY, then UNHEALTHY is theHealthState of the endpoint. If all health checks reportHEALTHY, the HealthState of the endpoint isHEALTHY.\n\n.\nThis is only allowed with regional HealthCheckService.", "enum": [ - "USE_FIXED_PORT", - "USE_NAMED_PORT", - "USE_SERVING_PORT" + "AND", + "NO_AGGREGATION" ], "enumDescriptions": [ - "The port number in the health check's port is used for health\nchecking. Applies to network endpoint group and instance group backends.", - "Not supported.", - "For network endpoint group backends, the health check uses the port number\nspecified on each endpoint in the network endpoint group. For instance\ngroup backends, the health check uses the port number specified for the\nbackend service's named port defined in the instance group's named ports." + "If any backend's health check reports UNHEALTHY,\nthen UNHEALTHY is the HealthState of\nthe entire health check service. If all backend's are healthy,\nthe HealthState of the health check service isHEALTHY.", + "An EndpointHealth message is returned for each\nbackend in the health check service." ], "type": "string" }, - "proxyHeader": { - "description": "Specifies the type of proxy header to append before sending data to the\nbackend, either NONE or PROXY_V1. The default\nis NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ], + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "compute#healthCheckService", + "description": "Output only. [Output only] Type of the resource. Alwayscompute#healthCheckServicefor health check services.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Name of the resource. The name must be 1-63 characters long, and comply\nwith RFC1035. Specifically, the name must be 1-63 characters\nlong and match the regular expression\n`[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character\nmust be a lowercase letter, and all following characters must be a dash,\nlowercase letter, or digit, except the last character, which cannot be a\ndash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, - "requestPath": { - "description": "The request path of the HTTP health check request. The default value is/. Must comply withRFC3986.", + "networkEndpointGroups": { + "description": "A list of URLs to the NetworkEndpointGroup\nresources. Must not have more than 100. For regionalHealthCheckService, NEGs must be in\nzones in the region of the HealthCheckService. For globalHealthCheckServices, the NetworkEndpointGroups\nmust be global INTERNET_IP_PORT.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notificationEndpoints": { + "description": "A list of URLs to the NotificationEndpoint\nresources. Must not have more than 10. A list of endpoints for\nreceiving notifications of change in health status. For regionalHealthCheckService,NotificationEndpoint must be regional and in the\nsame region. For global HealthCheckService,NotificationEndpoint must be global.", + "items": { + "type": "string" + }, + "type": "array" + }, + "region": { + "description": "Output only. [Output Only] URL of the region where the health check service\nresides. This field is not applicable to global health check services.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "readOnly": true, "type": "string" }, - "response": { - "description": "Creates a content-based HTTP health check. In addition to the required\nHTTP 200 (OK) status code, you can configure the health check to pass only\nwhen the backend sends this specific ASCII response string within the first\n1024 bytes of the HTTP response body. For details, see:\nhttps://cloud.google.com/load-balancing/docs/health-check-concepts#criteria-protocol-http", + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for the resource.", + "readOnly": true, "type": "string" } }, "type": "object" }, - "HTTPSHealthCheck": { - "id": "HTTPSHealthCheck", + "HealthCheckServiceAggregatedList": { + "description": "Contains a list of HealthCheckServicesScopedList.", + "id": "HealthCheckServiceAggregatedList", "properties": { - "host": { - "description": "The value of the host header in the HTTPS health check request. If left\nempty (default value), the host header is set to the destination IP address\nto which health check packets are sent. The destination IP address depends\non the type of load balancer. For details, see:\nhttps://cloud.google.com/load-balancing/docs/health-check-concepts#hc-packet-dest", + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, - "port": { - "description": "The TCP port number to which the health check prober sends packets. The\ndefault value is 443. Valid values are 1 through65535.", - "format": "int32", - "type": "integer" - }, - "portName": { - "description": "Not supported.", - "type": "string" + "items": { + "additionalProperties": { + "$ref": "HealthCheckServicesScopedList", + "description": "Name of the scope containing this set of HealthCheckServices." + }, + "description": "A list of HealthCheckServicesScopedList resources.", + "type": "object" }, - "portSpecification": { - "description": "Specifies how a port is selected for health checking. Can be one of the\nfollowing values: \nUSE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services\nfor passthrough load balancers and backend services for proxy load\nbalancers. Not supported by target pools. The health check supports all\nbackends supported by the backend service provided the backend can be\nhealth checked. For example, GCE_VM_IP network endpoint\ngroups, GCE_VM_IP_PORT network endpoint groups, and instance\ngroup backends. \n USE_NAMED_PORT: Not supported. \nUSE_SERVING_PORT: Provides an indirect method of specifying\nthe health check port by referring to the backend service. Only supported\nby backend services for proxy load balancers. Not supported by target\npools. Not supported by backend services for passthrough load balancers.\nSupports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group\nbackends.\n\nFor GCE_VM_IP_PORT network endpoint group backends, the health\ncheck uses the port number specified for each endpoint in the network\nendpoint group. For instance group backends, the health check uses the\nport number determined by looking up the backend service's named port in\nthe instance group's list of named ports.", - "enum": [ - "USE_FIXED_PORT", - "USE_NAMED_PORT", - "USE_SERVING_PORT" - ], - "enumDescriptions": [ - "The port number in the health check's port is used for health\nchecking. Applies to network endpoint group and instance group backends.", - "Not supported.", - "For network endpoint group backends, the health check uses the port number\nspecified on each endpoint in the network endpoint group. For instance\ngroup backends, the health check uses the port number specified for the\nbackend service's named port defined in the instance group's named ports." - ], + "kind": { + "default": "compute#healthCheckServiceAggregatedList", + "description": "Output only. Type of resource.", + "readOnly": true, "type": "string" }, - "proxyHeader": { - "description": "Specifies the type of proxy header to append before sending data to the\nbackend, either NONE or PROXY_V1. The default\nis NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ], + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" }, - "requestPath": { - "description": "The request path of the HTTPS health check request. The default value is/. Must comply withRFC3986.", + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, "type": "string" }, - "response": { - "description": "Creates a content-based HTTPS health check. In addition to the required\nHTTP 200 (OK) status code, you can configure the health check to pass only\nwhen the backend sends this specific ASCII response string within the first\n1024 bytes of the HTTP response body. For details, see:\nhttps://cloud.google.com/load-balancing/docs/health-check-concepts#criteria-protocol-http", - "type": "string" - } - }, - "type": "object" - }, - "HealthAggregationPoliciesScopedList": { - "id": "HealthAggregationPoliciesScopedList", - "properties": { - "healthAggregationPolicies": { - "description": "A list of HealthAggregationPolicys contained in this scope.", + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", "items": { - "$ref": "HealthAggregationPolicy" + "type": "string" }, + "readOnly": true, "type": "array" }, "warning": { - "description": "Informational warning which replaces the list of health aggregation\npolicies when the list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -55926,105 +62831,41 @@ }, "type": "object" }, - "HealthAggregationPolicy": { - "description": "Represents a health aggregation policy.\n\nA health aggregation policy resource defines a policy to aggregate health.\n\nFor more information, see\nHealth checks overview.", - "id": "HealthAggregationPolicy", + "HealthCheckServiceReference": { + "description": "A full or valid partial URL to a health check service. For example, the\nfollowing are valid URLs:\n \n - https://www.googleapis.com/compute/beta/projects/project-id/regions/us-west1/healthCheckServices/health-check-service\n - projects/project-id/regions/us-west1/healthCheckServices/health-check-service\n - regions/us-west1/healthCheckServices/health-check-service", + "id": "HealthCheckServiceReference", "properties": { - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "fingerprint": { - "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a HealthAggregationPolicy. An up-to-date fingerprint\nmust be provided in order to patch the HealthAggregationPolicy; Otherwise,\nthe request will fail with error 412 conditionNotMet. To see\nthe latest fingerprint, make a get() request to retrieve the\nHealthAggregationPolicy.", - "format": "byte", - "type": "string" - }, - "healthyPercentThreshold": { - "description": "Can only be set if the policyType field isBACKEND_SERVICE_POLICY. Specifies the threshold (as a\npercentage) of healthy endpoints required in order to consider the\naggregated health result HEALTHY. Defaults to 60. Must be in\nrange [0, 100]. Not applicable if the policyType field isDNB_PUBLIC_IP_POLICY. Can be mutated. This field is optional,\nand will be set to the default if unspecified. Note that both this\nthreshold and minHealthyThreshold must be satisfied in order\nfor HEALTHY to be the aggregated result. \"Endpoints\" refers to network\nendpoints within a Network Endpoint Group or instances within an Instance\nGroup.", - "format": "uint32", - "type": "integer" - }, - "id": { - "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "readOnly": true, - "type": "string" - }, - "kind": { - "default": "compute#healthAggregationPolicy", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#healthAggregationPolicy for health aggregation\npolicies.", - "readOnly": true, - "type": "string" - }, - "minHealthyThreshold": { - "description": "Can only be set if the policyType field isBACKEND_SERVICE_POLICY. Specifies the minimum number of\nhealthy endpoints required in order to consider the aggregated health\nresult HEALTHY. Defaults to 1. Must be positive. Not\napplicable if the policyType field isDNB_PUBLIC_IP_POLICY. Can be mutated. This field is optional,\nand will be set to the default if unspecified. Note that both this\nthreshold and healthyPercentThreshold must be satisfied in\norder for HEALTHY to be the aggregated result. \"Endpoints\" refers to\nnetwork endpoints within a Network Endpoint Group or instances within an\nInstance Group.", - "format": "uint32", - "type": "integer" - }, - "name": { - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "policyType": { - "description": "Specifies the type of the healthAggregationPolicy. The only allowed value\nfor global resources is DNS_PUBLIC_IP_POLICY. The only allowed\nvalue for regional resources is BACKEND_SERVICE_POLICY. Must\nbe specified when the healthAggregationPolicy is created, and cannot be\nmutated.", - "enum": [ - "BACKEND_SERVICE_POLICY", - "DNS_PUBLIC_IP_POLICY" - ], - "enumDescriptions": [ - "", - "" - ], - "type": "string" - }, - "region": { - "description": "Output only. [Output Only] URL of the region where the health aggregation policy\nresides. This field applies only to the regional resource. You must specify\nthis field as part of the HTTP request URL. It is not settable as a field\nin the request body.", - "readOnly": true, - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for the resource.", - "readOnly": true, - "type": "string" - }, - "selfLinkWithId": { - "description": "Output only. [Output Only] Server-defined URL with id for the resource.", - "readOnly": true, + "healthCheckService": { "type": "string" } }, "type": "object" }, - "HealthAggregationPolicyAggregatedList": { - "description": "Contains a list of HealthAggregationPoliciesScopedList.", - "id": "HealthAggregationPolicyAggregatedList", + "HealthCheckServicesList": { + "id": "HealthCheckServicesList", "properties": { "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "readOnly": true, "type": "string" }, "items": { - "additionalProperties": { - "$ref": "HealthAggregationPoliciesScopedList", - "description": "Name of the scope containing this set of HealthAggregationPolicies." + "description": "Output only. A list of HealthCheckService resources.", + "items": { + "$ref": "HealthCheckService" }, - "description": "A list of HealthAggregationPoliciesScopedList resources.", - "type": "object" + "readOnly": true, + "type": "array" }, "kind": { - "default": "compute#healthAggregationPolicyAggregatedList", - "description": "Output only. Type of resource.", + "default": "compute#healthCheckServicesList", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#healthCheckServicesList for lists of\nHealthCheckServices.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "readOnly": true, "type": "string" }, "selfLink": { @@ -56032,14 +62873,6 @@ "readOnly": true, "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -56167,36 +63000,18 @@ }, "type": "object" }, - "HealthAggregationPolicyList": { - "id": "HealthAggregationPolicyList", + "HealthCheckServicesScopedList": { + "id": "HealthCheckServicesScopedList", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" - }, - "items": { - "description": "A list of HealthAggregationPolicy resources.", + "resources": { + "description": "A list of HealthCheckServices contained in this scope.", "items": { - "$ref": "HealthAggregationPolicy" + "$ref": "HealthCheckService" }, "type": "array" }, - "kind": { - "default": "compute#healthAggregationPolicyList", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#healthAggregationPolicy for health aggregation\npolicies.", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "type": "string" - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for this resource.", - "type": "string" - }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "Informational warning which replaces the list of\nbackend services when the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -56322,140 +63137,23 @@ }, "type": "object" }, - "HealthCheck": { - "description": "Represents a health check resource.\n\nGoogle Compute Engine has two health check resources:\n\n* [Regional](/compute/docs/reference/rest/v1/regionHealthChecks)\n* [Global](/compute/docs/reference/rest/v1/healthChecks)\n\nThese health check resources can be used for load balancing and for\nautohealing VMs in a managed instance group (MIG).\n\n**Load balancing**\n\nHealth check requirements vary depending on the type of load balancer. For\ndetails about the type of health check supported for\neach load balancer and corresponding backend type,\nsee Health\nchecks overview: Load balancer guide.\n\n**Autohealing in MIGs**\n\nThe health checks that you use for autohealing VMs in a MIG can be either\nregional or global. For more information, see Set up an\napplication health check and autohealing.\n\nFor more information, seeHealth checks\noverview.", - "id": "HealthCheck", - "properties": { - "checkIntervalSec": { - "description": "How often (in seconds) to send a health check. The default value is 5\nseconds.", - "format": "int32", - "type": "integer" - }, - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp in3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "grpcHealthCheck": { - "$ref": "GRPCHealthCheck" - }, - "grpcTlsHealthCheck": { - "$ref": "GRPCTLSHealthCheck" - }, - "healthyThreshold": { - "description": "A so-far unhealthy instance will be marked healthy after this\nmany consecutive successes. The default value is 2.", - "format": "int32", - "type": "integer" - }, - "http2HealthCheck": { - "$ref": "HTTP2HealthCheck" - }, - "httpHealthCheck": { - "$ref": "HTTPHealthCheck" - }, - "httpsHealthCheck": { - "$ref": "HTTPSHealthCheck" - }, - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "type": "string" - }, - "kind": { - "default": "compute#healthCheck", - "description": "Output only. Type of the resource.", - "readOnly": true, - "type": "string" - }, - "logConfig": { - "$ref": "HealthCheckLogConfig", - "description": "Configure logging on this health check." - }, - "name": { - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nFor example, a name that is 1-63 characters long, matches the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`, and otherwise complies with\nRFC1035. This regular expression describes a name where the first\ncharacter is a lowercase letter, and all following characters are a dash,\nlowercase letter, or digit, except the last character, which isn't a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "region": { - "description": "Output only. [Output Only] Region where the health check resides. Not applicable to\nglobal health checks.", - "readOnly": true, - "type": "string" - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", - "type": "string" - }, - "sourceRegions": { - "description": "The list of cloud regions from which health checks are performed. If any\nregions are specified, then exactly 3 regions should be specified. The\nregion names must be valid names of Google Cloud regions.\nThis can only be set for global health check.\nIf this list is non-empty, then there are restrictions\non what other health check fields are supported and what other resources\ncan use this health check:\n \n - SSL, HTTP2, and GRPC protocols are not supported.\n - The TCP request field is not supported.\n - The proxyHeader field for HTTP, HTTPS, and TCP is not\n supported.\n - The checkIntervalSec field must be at least 30.\n - The health check cannot be used with BackendService nor with managed\n instance group auto-healing.", - "items": { - "type": "string" - }, - "type": "array" - }, - "sslHealthCheck": { - "$ref": "SSLHealthCheck" - }, - "tcpHealthCheck": { - "$ref": "TCPHealthCheck" - }, - "timeoutSec": { - "description": "How long (in seconds) to wait before claiming failure. The default value is\n5 seconds. It is invalid for timeoutSec to have greater\nvalue than checkIntervalSec.", - "format": "int32", - "type": "integer" - }, - "type": { - "description": "Specifies the type of the healthCheck, either TCP,SSL, HTTP, HTTPS,HTTP2 or GRPC. Exactly one of the\nprotocol-specific health check fields must be specified, which must matchtype field.", - "enum": [ - "GRPC", - "GRPC_WITH_TLS", - "HTTP", - "HTTP2", - "HTTPS", - "INVALID", - "SSL", - "TCP" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ], - "type": "string" - }, - "unhealthyThreshold": { - "description": "A so-far healthy instance will be marked unhealthy after this many\nconsecutive failures. The default value is 2.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "HealthCheckList": { - "description": "Contains a list of HealthCheck resources.", - "id": "HealthCheckList", + "HealthChecksAggregatedList": { + "id": "HealthChecksAggregatedList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of HealthCheck resources.", - "items": { - "$ref": "HealthCheck" + "additionalProperties": { + "$ref": "HealthChecksScopedList", + "description": "Name of the scope containing this set of HealthChecks." }, - "type": "array" + "description": "A list of HealthChecksScopedList resources.", + "type": "object" }, "kind": { - "default": "compute#healthCheckList", + "default": "compute#healthChecksAggregatedList", "description": "Output only. Type of resource.", "readOnly": true, "type": "string" @@ -56469,6 +63167,14 @@ "readOnly": true, "type": "string" }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -56596,152 +63302,18 @@ }, "type": "object" }, - "HealthCheckLogConfig": { - "description": "Configuration of logging on a health check. If logging is enabled, logs\nwill be exported to Stackdriver.", - "id": "HealthCheckLogConfig", - "properties": { - "enable": { - "description": "Indicates whether or not to export logs. This is false by default, which\nmeans no health check logging will be done.", - "type": "boolean" - } - }, - "type": "object" - }, - "HealthCheckReference": { - "description": "A full or valid partial URL to a health check. For example, the following are\nvalid URLs:\n \n - https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check\n - projects/project-id/global/httpHealthChecks/health-check\n - global/httpHealthChecks/health-check", - "id": "HealthCheckReference", - "properties": { - "healthCheck": { - "type": "string" - } - }, - "type": "object" - }, - "HealthCheckService": { - "description": "Represents a Health-Check as a Service resource.", - "id": "HealthCheckService", + "HealthChecksScopedList": { + "id": "HealthChecksScopedList", "properties": { - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "fingerprint": { - "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a HealthCheckService. An up-to-date fingerprint must\nbe provided in order to patch/update the HealthCheckService; Otherwise, the\nrequest will fail with error 412 conditionNotMet. To see the\nlatest fingerprint, make a get() request to retrieve the\nHealthCheckService.", - "format": "byte", - "type": "string" - }, "healthChecks": { - "description": "A list of URLs to the HealthCheck resources. Must have\nat least one HealthCheck, and not more than 10 for regionalHealthCheckService, and not more than 1 for globalHealthCheckService.HealthCheck resources must haveportSpecification=USE_SERVING_PORT orportSpecification=USE_FIXED_PORT. For\nregional HealthCheckService, theHealthCheck must be regional and in the same\nregion. For global HealthCheckService,HealthCheck must be global. Mix of regional and globalHealthChecks is not supported. Multiple regionalHealthChecks must belong to the same region. RegionalHealthChecks must belong to the same region as zones ofNetworkEndpointGroups. For globalHealthCheckService using globalINTERNET_IP_PORT NetworkEndpointGroups, the\nglobal HealthChecks must specify sourceRegions,\nand HealthChecks that specify sourceRegions can\nonly be used with global INTERNET_IP_PORTNetworkEndpointGroups.", - "items": { - "type": "string" - }, - "type": "array" - }, - "healthStatusAggregationPolicy": { - "description": "Optional. Policy for how the results from multiple health checks\nfor the same endpoint are aggregated. Defaults to NO_AGGREGATION\nif unspecified.\n \n - NO_AGGREGATION. An EndpointHealth message is\n returned for each pair in the health check\n service.\n - AND. If any health check of an endpoint reportsUNHEALTHY, then UNHEALTHY is theHealthState of the endpoint. If all health checks reportHEALTHY, the HealthState of the endpoint isHEALTHY.\n\n.\nThis is only allowed with regional HealthCheckService.", - "enum": [ - "AND", - "NO_AGGREGATION" - ], - "enumDescriptions": [ - "If any backend's health check reports UNHEALTHY,\nthen UNHEALTHY is the HealthState of\nthe entire health check service. If all backend's are healthy,\nthe HealthState of the health check service isHEALTHY.", - "An EndpointHealth message is returned for each\nbackend in the health check service." - ], - "type": "string" - }, - "id": { - "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "readOnly": true, - "type": "string" - }, - "kind": { - "default": "compute#healthCheckService", - "description": "Output only. [Output only] Type of the resource. Alwayscompute#healthCheckServicefor health check services.", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "Name of the resource. The name must be 1-63 characters long, and comply\nwith RFC1035. Specifically, the name must be 1-63 characters\nlong and match the regular expression\n`[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character\nmust be a lowercase letter, and all following characters must be a dash,\nlowercase letter, or digit, except the last character, which cannot be a\ndash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "networkEndpointGroups": { - "description": "A list of URLs to the NetworkEndpointGroup\nresources. Must not have more than 100. For regionalHealthCheckService, NEGs must be in\nzones in the region of the HealthCheckService. For globalHealthCheckServices, the NetworkEndpointGroups\nmust be global INTERNET_IP_PORT.", - "items": { - "type": "string" - }, - "type": "array" - }, - "notificationEndpoints": { - "description": "A list of URLs to the NotificationEndpoint\nresources. Must not have more than 10. A list of endpoints for\nreceiving notifications of change in health status. For regionalHealthCheckService,NotificationEndpoint must be regional and in the\nsame region. For global HealthCheckService,NotificationEndpoint must be global.", - "items": { - "type": "string" - }, - "type": "array" - }, - "region": { - "description": "Output only. [Output Only] URL of the region where the health check service\nresides. This field is not applicable to global health check services.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", - "readOnly": true, - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for the resource.", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "HealthCheckServiceReference": { - "description": "A full or valid partial URL to a health check service. For example, the\nfollowing are valid URLs:\n \n - https://www.googleapis.com/compute/beta/projects/project-id/regions/us-west1/healthCheckServices/health-check-service\n - projects/project-id/regions/us-west1/healthCheckServices/health-check-service\n - regions/us-west1/healthCheckServices/health-check-service", - "id": "HealthCheckServiceReference", - "properties": { - "healthCheckService": { - "type": "string" - } - }, - "type": "object" - }, - "HealthCheckServicesList": { - "id": "HealthCheckServicesList", - "properties": { - "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", - "readOnly": true, - "type": "string" - }, - "items": { - "description": "Output only. A list of HealthCheckService resources.", + "description": "A list of HealthChecks contained in this scope.", "items": { - "$ref": "HealthCheckService" + "$ref": "HealthCheck" }, - "readOnly": true, "type": "array" }, - "kind": { - "default": "compute#healthCheckServicesList", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#healthCheckServicesList for lists of\nHealthCheckServices.", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "readOnly": true, - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, - "type": "string" - }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "Informational warning which replaces the list of\nbackend services when the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -56867,8 +63439,83 @@ }, "type": "object" }, - "HealthChecksAggregatedList": { - "id": "HealthChecksAggregatedList", + "HealthSource": { + "description": "Represents a health source.\n\nA health source resource specifies the source resources and the health\naggregation policy applied to the source resources to determine the\naggregated health status.", + "id": "HealthSource", + "properties": { + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a HealthSource. An up-to-date fingerprint\nmust be provided in order to patch the HealthSource; Otherwise, the request\nwill fail with error 412 conditionNotMet. To see the latest\nfingerprint, make a get() request to retrieve the\nHealthSource.", + "format": "byte", + "type": "string" + }, + "healthAggregationPolicy": { + "description": "URL to the HealthAggregationPolicy resource. Must be set. Must\nbe regional and in the same region as the HealthSource. Can be\nmutated.", + "type": "string" + }, + "id": { + "description": "Output only. [Output Only] A unique identifier for this resource type. The server\ngenerates this identifier.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "compute#healthSource", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#healthSource for health sources.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { + "description": "Output only. [Output Only] URL of the region where the health source resides.\nThis field applies only to the regional resource. You must specify this\nfield as part of the HTTP request URL. It is not settable as a field in\nthe request body.", + "readOnly": true, + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for the resource.", + "readOnly": true, + "type": "string" + }, + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL with id for the resource.", + "readOnly": true, + "type": "string" + }, + "sourceType": { + "description": "Specifies the type of the HealthSource. The only allowed value\nis BACKEND_SERVICE. Must be specified when theHealthSource is created, and cannot be mutated.", + "enum": [ + "BACKEND_SERVICE" + ], + "enumDescriptions": [ + "" + ], + "type": "string" + }, + "sources": { + "description": "URLs to the source resources. Must be size 1. Must be aBackendService if\nthe sourceType is BACKEND_SERVICE. TheBackendService must have load balancing schemeINTERNAL or INTERNAL_MANAGED and must be regional\nand in the same region as the HealthSource (cross-region\ndeployment for INTERNAL_MANAGED is not supported). TheBackendService may use only IGs, MIGs, or NEGs of typeGCE_VM_IP or GCE_VM_IP_PORT. TheBackendService may not use haPolicy. Can be\nmutated.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "HealthSourceAggregatedList": { + "description": "Contains a list of HealthSourcesScopedList.", + "id": "HealthSourceAggregatedList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", @@ -56876,14 +63523,14 @@ }, "items": { "additionalProperties": { - "$ref": "HealthChecksScopedList", - "description": "Name of the scope containing this set of HealthChecks." + "$ref": "HealthSourcesScopedList", + "description": "Name of the scope containing this set of HealthSources." }, - "description": "A list of HealthChecksScopedList resources.", + "description": "A list of HealthSourcesScopedList resources.", "type": "object" }, "kind": { - "default": "compute#healthChecksAggregatedList", + "default": "compute#healthSourceAggregatedList", "description": "Output only. Type of resource.", "readOnly": true, "type": "string" @@ -57032,18 +63679,248 @@ }, "type": "object" }, - "HealthChecksScopedList": { - "id": "HealthChecksScopedList", + "HealthSourceHealth": { + "description": "Response message for RegionHealthSources.GetHealth", + "id": "HealthSourceHealth", "properties": { - "healthChecks": { - "description": "A list of HealthChecks contained in this scope.", + "healthState": { + "description": "Health state of the HealthSource.", + "enum": [ + "HEALTHY", + "UNHEALTHY", + "UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "kind": { + "default": "compute#healthSourceHealth", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#healthSourceHealth for the health of health sources.", + "readOnly": true, + "type": "string" + }, + "sources": { + "description": "Health state details of the sources.", "items": { - "$ref": "HealthCheck" + "$ref": "HealthSourcesGetHealthResponseSourceInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "HealthSourceList": { + "id": "HealthSourceList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of HealthSource resources.", + "items": { + "$ref": "HealthSource" }, "type": "array" }, + "kind": { + "default": "compute#healthSourceList", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#healthSource for health sources.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, "warning": { - "description": "Informational warning which replaces the list of\nbackend services when the list is empty.", + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "HealthSourcesGetHealthResponseSourceInfo": { + "id": "HealthSourcesGetHealthResponseSourceInfo", + "properties": { + "backends": { + "description": "Represents an instance group or network endpoint group behind the source\nbackend service. Only used if the sourceType of the regionHealthSource\nis BACKEND_SERVICE.", + "items": { + "$ref": "HealthSourcesGetHealthResponseSourceInfoBackendInfo" + }, + "type": "array" + }, + "forwardingRule": { + "description": "Fully qualified URL of the forwarding rule associated with the source\nresource if it is a L4ILB backend service.", + "type": "string" + }, + "source": { + "description": "Fully qualified URL of the associated source resource. This is always a\nbackend service URL.", + "type": "string" + } + }, + "type": "object" + }, + "HealthSourcesGetHealthResponseSourceInfoBackendInfo": { + "id": "HealthSourcesGetHealthResponseSourceInfoBackendInfo", + "properties": { + "endpointCount": { + "description": "Total number of endpoints when determining the health of the\nregionHealthSource.", + "format": "int32", + "type": "integer" + }, + "group": { + "description": "Fully qualified URL of an instance group or network endpoint group\nbehind the source backend service.", + "type": "string" + }, + "healthyEndpointCount": { + "description": "Number of endpoints considered healthy when determining health of the\nregionHealthSource.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HealthSourcesScopedList": { + "id": "HealthSourcesScopedList", + "properties": { + "healthSources": { + "description": "A list of HealthSources contained in this scope.", + "items": { + "$ref": "HealthSource" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of\nhealth sources when the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -57813,6 +64690,10 @@ "HttpRouteAction": { "id": "HttpRouteAction", "properties": { + "cachePolicy": { + "$ref": "CachePolicy", + "description": "Specifies the cache policy configuration for matched traffic. Available\nonly for Global `EXTERNAL_MANAGED` load balancer schemes. At least one\nproperty must be specified. This policy cannot be specified if any target\nbackend has Identity-Aware Proxy enabled." + }, "corsPolicy": { "$ref": "CorsPolicy", "description": "The specification for allowing client-side cross-origin requests. For more\ninformation about the W3C recommendation for cross-origin resource sharing\n(CORS), see Fetch API Living\nStandard.\n\nNot supported when the URL map is bound to a target gRPC proxy." @@ -58302,7 +65183,7 @@ "type": "string" }, "source": { - "description": "The full Google Cloud Storage URL where the raw disk image archive is\nstored.\nThe following are valid formats for the URL:\n \n - https://storage.googleapis.com/bucket_name/image_archive_name\n - https://storage.googleapis.com/bucket_name/folder_name/image_archive_name\n\n\n\nIn order to create an image, you must provide the full or partial URL of\none of the following:\n \n - The rawDisk.source URL \n - The sourceDisk URL \n - The sourceImage URL \n - The sourceSnapshot URL", + "description": "The full Google Cloud Storage URL or Artifact Registry path where the raw\ndisk image archive is stored.\nThe following are valid formats:\n \n - https://storage.googleapis.com/bucket_name/image_archive_name\n - https://storage.googleapis.com/bucket_name/folder_name/image_archive_name\n - projects/project/locations/location/repositories/repo/packages/package/versions/version_id\n - projects/project/locations/location/repositories/repo/packages/package/versions/version_id@dirsum_sha256:hex_value\n\n\n\nIn order to create an image, you must provide the full or partial URL of\none of the following:\n \n - The rawDisk.source URL \n - The sourceDisk URL \n - The sourceImage URL \n - The sourceSnapshot URL", "type": "string" } }, @@ -58579,7 +65460,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the image. Tag keys and values have\nthe same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the image. Tag keys and values have\nthe same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -59576,13 +66457,13 @@ "type": "string" }, "creationTimestamp": { - "description": "Output only. [Output Only] The creation timestamp for this managed instance group inRFC3339\ntext format.", + "description": "Output only. The creation timestamp for this managed instance group inRFC3339\ntext format.", "readOnly": true, "type": "string" }, "currentActions": { "$ref": "InstanceGroupManagerActionsSummary", - "description": "Output only. [Output Only] The list of instance actions and the number of instances\nin this managed instance group that are scheduled for each of those\nactions.", + "description": "Output only. The list of instance actions and the number of instances\nin this managed instance group that are scheduled for each of those\nactions.", "readOnly": true }, "description": { @@ -59599,7 +66480,7 @@ "type": "string" }, "id": { - "description": "Output only. [Output Only] A unique identifier for this resource type. The server\ngenerates this identifier.", + "description": "Output only. A unique identifier for this resource type. The server\ngenerates this identifier.", "format": "uint64", "readOnly": true, "type": "string" @@ -59609,7 +66490,7 @@ "description": "Instance flexibility allowing MIG to create VMs from multiple\ntypes of machines.\nInstance flexibility configuration on MIG overrides instance\ntemplate configuration." }, "instanceGroup": { - "description": "Output only. [Output Only] The URL of the Instance Group resource.", + "description": "Output only. The URL of the Instance Group resource.", "readOnly": true, "type": "string" }, @@ -59623,7 +66504,7 @@ }, "kind": { "default": "compute#instanceGroupManager", - "description": "Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManager for managed instance groups.", + "description": "Output only. The resource type, which is alwayscompute#instanceGroupManager for managed instance groups.", "readOnly": true, "type": "string" }, @@ -59667,17 +66548,17 @@ "description": "Resource policies for this managed instance group." }, "satisfiesPzi": { - "description": "Output only. [Output Only] Reserved for future use.", + "description": "Output only. Reserved for future use.", "readOnly": true, "type": "boolean" }, "satisfiesPzs": { - "description": "Output only. [Output Only] Reserved for future use.", + "description": "Output only. Reserved for future use.", "readOnly": true, "type": "boolean" }, "selfLink": { - "description": "Output only. [Output Only] The URL for this managed instance group. The server defines\nthis URL.", + "description": "Output only. The URL for this managed instance group. The server defines\nthis URL.", "readOnly": true, "type": "string" }, @@ -59691,7 +66572,7 @@ }, "status": { "$ref": "InstanceGroupManagerStatus", - "description": "Output only. [Output Only] The status of this managed instance group.", + "description": "Output only. The status of this managed instance group.", "readOnly": true }, "targetPools": { @@ -59712,6 +66593,10 @@ "format": "int32", "type": "integer" }, + "targetSizePolicy": { + "$ref": "InstanceGroupManagerTargetSizePolicy", + "description": "The policy that specifies how the MIG creates its VMs to achieve the target\nsize." + }, "targetStoppedSize": { "description": "The target number of stopped instances for this managed instance group.\nThis number changes when you: \n \n - Stop instance using the stopInstances\n method or start instances using the startInstances\n method.\n - Manually change the targetStoppedSize using the update\n method.", "format": "int32", @@ -59734,7 +66619,7 @@ "type": "array" }, "zone": { - "description": "Output only. [Output Only] The URL of azone\nwhere the managed instance group is located (for zonal resources).", + "description": "Output only. The URL of azone\nwhere the managed instance group is located (for zonal resources).", "readOnly": true, "type": "string" } @@ -59745,79 +66630,79 @@ "id": "InstanceGroupManagerActionsSummary", "properties": { "abandoning": { - "description": "Output only. [Output Only] The total number of instances in the managed instance group\nthat are scheduled to be abandoned. Abandoning an instance removes it\nfrom the managed instance group without deleting it.", + "description": "Output only. The total number of instances in the managed instance group\nthat are scheduled to be abandoned. Abandoning an instance removes it\nfrom the managed instance group without deleting it.", "format": "int32", "readOnly": true, "type": "integer" }, "creating": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be created or are currently being created. If the group\nfails to create any of these instances, it tries again until it creates\nthe instance successfully.\n\nIf you have disabled creation retries, this field will not be populated;\ninstead, the creatingWithoutRetries field will be populated.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be created or are currently being created. If the group\nfails to create any of these instances, it tries again until it creates\nthe instance successfully.\n\nIf you have disabled creation retries, this field will not be populated;\ninstead, the creatingWithoutRetries field will be populated.", "format": "int32", "readOnly": true, "type": "integer" }, "creatingWithoutRetries": { - "description": "Output only. [Output Only] The number of instances that the managed instance group\nwill attempt to create. The group attempts to create each instance\nonly once. If the group fails to create any of these instances, it\ndecreases the group's targetSize value accordingly.", + "description": "Output only. The number of instances that the managed instance group\nwill attempt to create. The group attempts to create each instance\nonly once. If the group fails to create any of these instances, it\ndecreases the group's targetSize value accordingly.", "format": "int32", "readOnly": true, "type": "integer" }, "deleting": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be deleted or are currently being deleted.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be deleted or are currently being deleted.", "format": "int32", "readOnly": true, "type": "integer" }, "none": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare running and have no scheduled actions.", + "description": "Output only. The number of instances in the managed instance group that\nare running and have no scheduled actions.", "format": "int32", "readOnly": true, "type": "integer" }, "recreating": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be recreated or are currently being being recreated.\nRecreating an instance deletes the existing root persistent disk\nand creates a new disk from the image that is defined in the\ninstance template.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be recreated or are currently being being recreated.\nRecreating an instance deletes the existing root persistent disk\nand creates a new disk from the image that is defined in the\ninstance template.", "format": "int32", "readOnly": true, "type": "integer" }, "refreshing": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare being reconfigured with properties that do not require a restart\nor a recreate action. For example, setting or removing target\npools for the instance.", + "description": "Output only. The number of instances in the managed instance group that\nare being reconfigured with properties that do not require a restart\nor a recreate action. For example, setting or removing target\npools for the instance.", "format": "int32", "readOnly": true, "type": "integer" }, "restarting": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be restarted or are currently being restarted.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be restarted or are currently being restarted.", "format": "int32", "readOnly": true, "type": "integer" }, "resuming": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be resumed or are currently being resumed.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be resumed or are currently being resumed.", "format": "int32", "readOnly": true, "type": "integer" }, "starting": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be started or are currently being started.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be started or are currently being started.", "format": "int32", "readOnly": true, "type": "integer" }, "stopping": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be stopped or are currently being stopped.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be stopped or are currently being stopped.", "format": "int32", "readOnly": true, "type": "integer" }, "suspending": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare scheduled to be suspended or are currently being suspended.", + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be suspended or are currently being suspended.", "format": "int32", "readOnly": true, "type": "integer" }, "verifying": { - "description": "Output only. [Output Only] The number of instances in the managed instance group that\nare being verified. See the managedInstances[].currentAction\nproperty in the listManagedInstances method documentation.", + "description": "Output only. The number of instances in the managed instance group that\nare being verified. See the managedInstances[].currentAction\nproperty in the listManagedInstances method documentation.", "format": "int32", "readOnly": true, "type": "integer" @@ -59829,36 +66714,36 @@ "id": "InstanceGroupManagerAggregatedList", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, "items": { "additionalProperties": { "$ref": "InstanceGroupManagersScopedList", - "description": "Output only. [Output Only] The name of the scope that contains this set of managed\ninstance groups." + "description": "Output only. The name of the scope that contains this set of managed instance groups." }, "description": "A list of InstanceGroupManagersScopedList resources.", "type": "object" }, "kind": { "default": "compute#instanceGroupManagerAggregatedList", - "description": "Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerAggregatedList for an aggregated\nlist of managed instance groups.", + "description": "Output only. The resource type, which is alwayscompute#instanceGroupManagerAggregatedList for an aggregated\nlist of managed instance groups.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", + "description": "Output only. Unreachable resources.", "items": { "type": "string" }, @@ -59866,7 +66751,7 @@ "type": "array" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -60098,7 +66983,7 @@ "id": "InstanceGroupManagerList", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, @@ -60111,22 +66996,22 @@ }, "kind": { "default": "compute#instanceGroupManagerList", - "description": "Output only. [Output Only] The resource type, which is always\ncompute#instanceGroupManagerList for a list of managed instance groups.", + "description": "Output only. The resource type, which is always compute#instanceGroupManagerList for a\nlist of managed instance groups.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -60258,7 +67143,7 @@ "id": "InstanceGroupManagerResizeRequest", "properties": { "creationTimestamp": { - "description": "Output only. [Output Only] The creation timestamp for this resize request inRFC3339\ntext format.", + "description": "Output only. The creation timestamp for this resize request inRFC3339\ntext format.", "readOnly": true, "type": "string" }, @@ -60267,14 +67152,14 @@ "type": "string" }, "id": { - "description": "Output only. [Output Only] A unique identifier for this resource type. The server\ngenerates this identifier.", + "description": "Output only. A unique identifier for this resource type. The server generates this\nidentifier.", "format": "uint64", "readOnly": true, "type": "string" }, "kind": { "default": "compute#instanceGroupManagerResizeRequest", - "description": "Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for\nresize requests.", + "description": "Output only. The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for resize requests.", "readOnly": true, "type": "string" }, @@ -60288,6 +67173,11 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "region": { + "description": "Output only. The URL of a region\nwhere the resize request is located. Populated only for regional resize\nrequests.", + "readOnly": true, + "type": "string" + }, "requestedRunDuration": { "$ref": "Duration", "description": "Requested run duration for instances that will be created by this request.\nAt the end of the run duration instance will be deleted." @@ -60298,17 +67188,17 @@ "type": "integer" }, "selfLink": { - "description": "Output only. [Output Only] The URL for this resize request. The server defines\nthis URL.", + "description": "Output only. The URL for this resize request. The server defines this URL.", "readOnly": true, "type": "string" }, "selfLinkWithId": { - "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", + "description": "Output only. Server-defined URL for this resource with the resource id.", "readOnly": true, "type": "string" }, "state": { - "description": "Output only. [Output only] Current state of the request.", + "description": "Output only. Current state of the request.", "enum": [ "ACCEPTED", "CANCELLED", @@ -60330,11 +67220,11 @@ }, "status": { "$ref": "InstanceGroupManagerResizeRequestStatus", - "description": "Output only. [Output only] Status of the request.", + "description": "Output only. Status of the request.", "readOnly": true }, "zone": { - "description": "Output only. [Output Only] The URL of azone\nwhere the resize request is located. Populated only for zonal resize\nrequests.", + "description": "Output only. The URL of a zone\nwhere the resize request is located. Populated only for zonal resize\nrequests.", "readOnly": true, "type": "string" } @@ -60345,7 +67235,7 @@ "id": "InstanceGroupManagerResizeRequestStatus", "properties": { "error": { - "description": "Output only. [Output only] Fatal errors encountered during the queueing or\nprovisioning phases of the ResizeRequest that caused the transition to\nthe FAILED state. Contrary to the last_attempt errors, this field is\nfinal and errors are never removed from here, as the ResizeRequest is not\ngoing to retry.", + "description": "Output only. Fatal errors encountered during the queueing or provisioning phases of\nthe ResizeRequest that caused the transition to the FAILED state.\nContrary to the last_attempt errors, this field is final and errors are\nnever removed from here, as the ResizeRequest is not going to retry.", "properties": { "errors": { "description": "[Output Only] The array of errors encountered while processing this\noperation.", @@ -60395,7 +67285,7 @@ }, "lastAttempt": { "$ref": "InstanceGroupManagerResizeRequestStatusLastAttempt", - "description": "Output only. [Output only] Information about the last attempt to fulfill the request.\nThe value is temporary since the ResizeRequest can retry, as long as it's\nstill active and the last attempt value can either be cleared or replaced\nwith a different error. Since ResizeRequest retries infrequently, the\nvalue may be stale and no longer show an active problem. The value is\ncleared when ResizeRequest transitions to the final state (becomes\ninactive). If the final state is FAILED the error describing it will be\nstorred in the \"error\" field only.", + "description": "Output only. Information about the last attempt to fulfill the request. The value is\ntemporary since the ResizeRequest can retry, as long as it's still active\nand the last attempt value can either be cleared or replaced with a\ndifferent error. Since ResizeRequest retries infrequently, the value may\nbe stale and no longer show an active problem. The value is cleared when\nResizeRequest transitions to the final state (becomes inactive). If the\nfinal state is FAILED the error describing it will be stored in the\n\"error\" field only.", "readOnly": true } }, @@ -60461,7 +67351,7 @@ "id": "InstanceGroupManagerResizeRequestsListResponse", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", "readOnly": true, "type": "string" }, @@ -60474,22 +67364,22 @@ }, "kind": { "default": "compute#instanceGroupManagerResizeRequestList", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#instanceGroupManagerResizeRequestList for\na list of resize requests.", + "description": "Output only. Type of the resource. Alwayscompute#instanceGroupManagerResizeRequestList for\na list of resize requests.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for list requests.\nIf the number of results is larger than maxResults, use thenextPageToken as a value for the query parameterpageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -60654,59 +67544,338 @@ "properties": { "allInstancesConfig": { "$ref": "InstanceGroupManagerStatusAllInstancesConfig", - "description": "Output only. [Output only] Status of all-instances configuration on the group.", + "description": "Output only. Status of all-instances configuration on the group.", "readOnly": true }, + "appliedAcceleratorTopologies": { + "description": "Output only. The accelerator topology applied to this MIG.\nCurrently only one accelerator topology is supported.", + "items": { + "$ref": "InstanceGroupManagerStatusAcceleratorTopology" + }, + "readOnly": true, + "type": "array" + }, "autoscaler": { - "description": "Output only. [Output Only] The URL of theAutoscaler\nthat targets this instance group manager.", + "description": "Output only. The URL of theAutoscaler\nthat targets this instance group manager.", "readOnly": true, "type": "string" }, + "bulkInstanceOperation": { + "$ref": "InstanceGroupManagerStatusBulkInstanceOperation", + "description": "Output only. The status of bulk instance operation.", + "readOnly": true + }, + "currentInstanceStatuses": { + "$ref": "InstanceGroupManagerStatusInstanceStatusSummary", + "description": "Output only. The list of instance statuses and the number of instances\nin this managed instance group that have the status. Currently only shown\nfor TPU MIGs", + "readOnly": true + }, "isStable": { - "description": "Output only. [Output Only] A bit indicating whether the managed instance group is in a\nstable state. A stable state means that: none of the instances in the\nmanaged instance group is currently undergoing any type of change (for\nexample, creation, restart, or deletion); no future changes are scheduled\nfor instances in the managed instance group; and the managed instance\ngroup itself is not being modified.", + "description": "Output only. A bit indicating whether the managed instance group is in a\nstable state. A stable state means that: none of the instances in the\nmanaged instance group is currently undergoing any type of change (for\nexample, creation, restart, or deletion); no future changes are scheduled\nfor instances in the managed instance group; and the managed instance\ngroup itself is not being modified.", "readOnly": true, "type": "boolean" }, "stateful": { "$ref": "InstanceGroupManagerStatusStateful", - "description": "Output only. [Output Only] Stateful status of the given Instance Group Manager.", + "description": "Output only. Stateful status of the given Instance Group Manager.", "readOnly": true }, "versionTarget": { "$ref": "InstanceGroupManagerStatusVersionTarget", - "description": "Output only. [Output Only] A status of consistency of Instances' versions with their\ntarget version specified by version field on Instance Group\nManager.", + "description": "Output only. A status of consistency of Instances' versions with their\ntarget version specified by version field on Instance Group\nManager.", "readOnly": true } }, "type": "object" }, + "InstanceGroupManagerStatusAcceleratorTopology": { + "id": "InstanceGroupManagerStatusAcceleratorTopology", + "properties": { + "acceleratorTopology": { + "description": "Output only. Topology in the format of: \"16x16\", \"4x4x4\", etc.\nThe value is the same as configured in the WorkloadPolicy.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The state of the accelerator topology.", + "enum": [ + "ACTIVATING", + "ACTIVE", + "DEACTIVATING", + "FAILED", + "INCOMPLETE", + "REACTIVATING" + ], + "enumDescriptions": [ + "The accelerator topology is being activated.", + "The accelerator topology is active.", + "The accelerator topology is being deactivated.", + "The accelerator topology failed.", + "The configuration is incomplete and the accelerator topology cannot\nbe activated due to insufficient number of running VMs.", + "The accelerator topology is being reactivated." + ], + "readOnly": true, + "type": "string" + }, + "stateDetails": { + "$ref": "InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails", + "description": "Output only. The result of the latest accelerator topology state\ncheck.", + "readOnly": true + } + }, + "type": "object" + }, + "InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails": { + "id": "InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails", + "properties": { + "error": { + "description": "Output only. Encountered errors.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this\noperation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "errorDetails": { + "description": "[Output Only] An optional list of messages that contain the error\ndetails. There is a set of defined message types to use for providing\ndetails.The syntax depends on the error code. For example,\nQuotaExceededInfo will have details when the error code is\nQUOTA_EXCEEDED.", + "items": { + "properties": { + "errorInfo": { + "$ref": "ErrorInfo" + }, + "help": { + "$ref": "Help" + }, + "localizedMessage": { + "$ref": "LocalizedMessage" + }, + "quotaInfo": { + "$ref": "QuotaExceededInfo" + } + }, + "type": "object" + }, + "type": "array" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error.\nThis property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "readOnly": true, + "type": "object" + }, + "timestamp": { + "description": "Output only. Timestamp is shown only if there is an error. The field\nhas // RFC3339 //\ntext format.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "InstanceGroupManagerStatusAllInstancesConfig": { "id": "InstanceGroupManagerStatusAllInstancesConfig", "properties": { "currentRevision": { - "description": "Output only. [Output Only] Current all-instances configuration revision.\nThis value is in RFC3339 text format.", + "description": "Output only. Current all-instances configuration revision.\nThis value is in RFC3339 text format.", "readOnly": true, "type": "string" }, "effective": { - "description": "Output only. [Output Only] A bit indicating whether this configuration has\nbeen applied to all managed instances in the group.", + "description": "Output only. A bit indicating whether this configuration has\nbeen applied to all managed instances in the group.", "readOnly": true, "type": "boolean" } }, "type": "object" }, + "InstanceGroupManagerStatusBulkInstanceOperation": { + "description": "Bulk instance operation is the creation of VMs in a MIG when the\ntargetSizePolicy.mode is set to BULK.", + "id": "InstanceGroupManagerStatusBulkInstanceOperation", + "properties": { + "inProgress": { + "description": "Output only. Informs whether bulk instance operation is in progress.", + "readOnly": true, + "type": "boolean" + }, + "lastProgressCheck": { + "$ref": "InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck", + "description": "Output only. Information from the last progress check of bulk instance\noperation.", + "readOnly": true + } + }, + "type": "object" + }, + "InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck": { + "id": "InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck", + "properties": { + "error": { + "description": "Output only. Errors encountered during bulk instance operation.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this\noperation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "errorDetails": { + "description": "[Output Only] An optional list of messages that contain the error\ndetails. There is a set of defined message types to use for providing\ndetails.The syntax depends on the error code. For example,\nQuotaExceededInfo will have details when the error code is\nQUOTA_EXCEEDED.", + "items": { + "properties": { + "errorInfo": { + "$ref": "ErrorInfo" + }, + "help": { + "$ref": "Help" + }, + "localizedMessage": { + "$ref": "LocalizedMessage" + }, + "quotaInfo": { + "$ref": "QuotaExceededInfo" + } + }, + "type": "object" + }, + "type": "array" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error.\nThis property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "readOnly": true, + "type": "object" + }, + "timestamp": { + "description": "Output only. Timestamp of the last progress check of bulk instance\noperation. Timestamp is in RFC3339 text format.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "InstanceGroupManagerStatusInstanceStatusSummary": { + "description": "The list of instance statuses and the number of instances in this managed\ninstance group that have the status. For more information about how to\ninterpret each status check the instance lifecycle documentation.\nCurrently only shown for TPU MIGs.", + "id": "InstanceGroupManagerStatusInstanceStatusSummary", + "properties": { + "deprovisioning": { + "description": "Output only. The number of instances in the managed instance group\nthat have DEPROVISIONING status.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "nonExistent": { + "description": "Output only. The number of instances that have not been created yet or\nhave been deleted. Includes only instances that would be shown in the\nlistManagedInstances method and not all instances that have been\ndeleted in the lifetime of the MIG.\nDoes not include FlexStart instances that are waiting for the resources\navailability, they are considered as 'pending'.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "pending": { + "description": "Output only. The number of instances in the managed instance group\nthat have PENDING status, that is FlexStart instances that are waiting\nfor resources. Instances that do not exist because of the other reasons\nare counted as 'non_existent'.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "pendingStop": { + "description": "Output only. The number of instances in the managed instance group\nthat have PENDING_STOP status.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "provisioning": { + "description": "Output only. The number of instances in the managed instance group\nthat have PROVISIONING status.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "repairing": { + "description": "Output only. The number of instances in the managed instance group\nthat have REPAIRING status.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "running": { + "description": "Output only. The number of instances in the managed instance group\nthat have RUNNING status.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "staging": { + "description": "Output only. The number of instances in the managed instance group\nthat have STAGING status.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "stopped": { + "description": "Output only. The number of instances in the managed instance group\nthat have STOPPED status.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "stopping": { + "description": "Output only. The number of instances in the managed instance group\nthat have STOPPING status.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "suspended": { + "description": "Output only. The number of instances in the managed instance group\nthat have SUSPENDED status.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "suspending": { + "description": "Output only. The number of instances in the managed instance group\nthat have SUSPENDING status.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "terminated": { + "description": "Output only. The number of instances in the managed instance group\nthat have TERMINATED status.", + "format": "int32", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, "InstanceGroupManagerStatusStateful": { "id": "InstanceGroupManagerStatusStateful", "properties": { "hasStatefulConfig": { - "description": "Output only. [Output Only] A bit indicating whether the managed instance group\nhas stateful configuration, that is, if you have configured any items\nin a stateful policy or in per-instance configs.\nThe group might report that it has no stateful configuration even when\nthere is still some preserved state on a managed instance, for example,\nif you have deleted all PICs but not yet applied those deletions.", + "description": "Output only. A bit indicating whether the managed instance group\nhas stateful configuration, that is, if you have configured any items\nin a stateful policy or in per-instance configs.\nThe group might report that it has no stateful configuration even when\nthere is still some preserved state on a managed instance, for example,\nif you have deleted all PICs but not yet applied those deletions.", "readOnly": true, "type": "boolean" }, "perInstanceConfigs": { "$ref": "InstanceGroupManagerStatusStatefulPerInstanceConfigs", - "description": "Output only. [Output Only] Status of per-instance configurations on the instances.", + "description": "Output only. Status of per-instance configurations on the instances.", "readOnly": true } }, @@ -60727,13 +67896,33 @@ "id": "InstanceGroupManagerStatusVersionTarget", "properties": { "isReached": { - "description": "Output only. [Output Only] A bit indicating whether version target has been reached\nin this managed instance group, i.e. all instances are in their target\nversion. Instances' target version are specified byversion field on Instance Group Manager.", + "description": "Output only. A bit indicating whether version target has been reached\nin this managed instance group, i.e. all instances are in their target\nversion. Instances' target version are specified byversion field on Instance Group Manager.", "readOnly": true, "type": "boolean" } }, "type": "object" }, + "InstanceGroupManagerTargetSizePolicy": { + "id": "InstanceGroupManagerTargetSizePolicy", + "properties": { + "mode": { + "description": "The mode of target size policy based on which the MIG creates its VMs\nindividually or all at once.", + "enum": [ + "BULK", + "INDIVIDUAL", + "UNSPECIFIED_MODE" + ], + "enumDescriptions": [ + "The mode in which the MIG creates VMs all at once. In this mode, if the\nMIG is unable to create even one VM, the MIG waits until all VMs can be\ncreated at the same time.", + "The mode in which the MIG creates VMs individually. In this mode, if\nthe MIG is unable to create a VM, the MIG will continue to create the\nother VMs in the group. This is the default mode.", + "If mode is unspecified, MIG will behave as in the default `INDIVIDUAL`\nmode." + ], + "type": "string" + } + }, + "type": "object" + }, "InstanceGroupManagerUpdatePolicy": { "id": "InstanceGroupManagerUpdatePolicy", "properties": { @@ -61168,7 +68357,7 @@ "id": "InstanceGroupManagersScopedList", "properties": { "instanceGroupManagers": { - "description": "Output only. [Output Only] The list of managed instance groups that are contained in\nthe specified project and zone.", + "description": "Output only. The list of managed instance groups that are contained in the specified\nproject and zone.", "items": { "$ref": "InstanceGroupManager" }, @@ -61176,7 +68365,7 @@ "type": "array" }, "warning": { - "description": "Output only. [Output Only] The warning that replaces the list of managed instance\ngroups when the list is empty.", + "description": "Output only. The warning that replaces the list of managed instance groups when the list\nis empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -62180,7 +69369,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the instance. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the instance. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -62290,7 +69479,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the instance. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys must be in the format `tagKeys/{tag_key_id}`, and\nvalues are in the format `tagValues/456`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the instance. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" }, "resourcePolicies": { @@ -63493,6 +70682,16 @@ "readOnly": true, "type": "string" }, + "sourceInstantSnapshotGroup": { + "description": "Output only. [Output Only] URL of the source instant snapshot this instant snapshot is\npart of. Note that the source instant snapshot group must be in the same\nzone/region as the instant snapshot to be created. This can be a full or\nvalid partial URL.", + "readOnly": true, + "type": "string" + }, + "sourceInstantSnapshotGroupId": { + "description": "Output only. [Output Only] The ID value of the source instant snapshot group this\nInstantSnapshot is part of. This value may be used to determine whether the\nInstantSnapshot was created as part of an InstantSnapshotGroup creation.", + "readOnly": true, + "type": "string" + }, "status": { "description": "Output only. [Output Only] The status of the instantSnapshot. This can beCREATING, DELETING, FAILED, orREADY.", "enum": [ @@ -63685,6 +70884,128 @@ }, "type": "object" }, + "InstantSnapshotGroup": { + "description": "Represents an InstantSnapshotGroup resource.\n\nAn instant snapshot group is a set of instant snapshots that represents a\npoint in time state of a consistency group.", + "id": "InstantSnapshotGroup", + "properties": { + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "compute#instantSnapshotGroup", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#instantSnapshotGroup for InstantSnapshotGroup\nresources.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. Name of the resource; provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { + "description": "Output only. [Output Only] URL of the region where the instant snapshot group resides.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "readOnly": true, + "type": "string" + }, + "resourceStatus": { + "$ref": "InstantSnapshotGroupResourceStatus", + "readOnly": true + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for the resource.", + "readOnly": true, + "type": "string" + }, + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL for this resource's resource id.", + "readOnly": true, + "type": "string" + }, + "sourceConsistencyGroup": { + "type": "string" + }, + "status": { + "description": "Output only. [Output Only]", + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "INVALID", + "READY", + "UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "readOnly": true, + "type": "string" + }, + "zone": { + "description": "Output only. [Output Only] URL of the zone where the instant snapshot group resides.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "InstantSnapshotGroupParameters": { + "id": "InstantSnapshotGroupParameters", + "properties": { + "sourceInstantSnapshotGroup": { + "description": "The source instant snapshot group used to create disks. You can provide\nthis as a partial or full URL to the resource. For example, the following\nare valid values:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/instantSnapshotGroups/instantSnapshotGroup\n - projects/project/zones/zone/instantSnapshotGroups/instantSnapshotGroup\n - zones/zone/instantSnapshotGroups/instantSnapshotGroup", + "type": "string" + } + }, + "type": "object" + }, + "InstantSnapshotGroupResourceStatus": { + "id": "InstantSnapshotGroupResourceStatus", + "properties": { + "consistencyMembershipResolutionTime": { + "description": "Output only. [Output Only]", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "sourceInfo": { + "$ref": "InstantSnapshotGroupSourceInfo", + "description": "Output only. [Output Only]", + "readOnly": true + } + }, + "type": "object" + }, + "InstantSnapshotGroupSourceInfo": { + "id": "InstantSnapshotGroupSourceInfo", + "properties": { + "consistencyGroup": { + "readOnly": true, + "type": "string" + }, + "consistencyGroupId": { + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "InstantSnapshotList": { "description": "Contains a list of InstantSnapshot resources.", "id": "InstantSnapshotList", @@ -66425,7 +73746,6 @@ "type": "object" }, "InterconnectGroupsCreateMembersInterconnectInput": { - "description": "LINT.IfChange", "id": "InterconnectGroupsCreateMembersInterconnectInput", "properties": { "adminEnabled": { @@ -67991,6 +75311,17 @@ "description": "Represents a License Code resource.\n\nA License Code is a unique identifier used to represent alicense\nresource.\n *Caution* This resource is intended for\nuse only by third-party partners who are creatingCloud Marketplace\nimages.", "id": "LicenseCode", "properties": { + "allowedReplacementLicenses": { + "description": "Specifies licenseCodes of licenses that can replace this license. Note:\nsuch replacements are allowed even if removable_from_disk is false.", + "items": { + "type": "string" + }, + "type": "array" + }, + "appendableToDisk": { + "description": "If true, this license can be appended to an existing disk's set of\nlicenses.", + "type": "boolean" + }, "creationTimestamp": { "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", "readOnly": true, @@ -68007,6 +75338,13 @@ "readOnly": true, "type": "string" }, + "incompatibleLicenses": { + "description": "Specifies licenseCodes of licenses that are incompatible with this license.\nIf a license is incompatible with this license, it cannot be attached to\nthe same disk or image.", + "items": { + "type": "string" + }, + "type": "array" + }, "kind": { "default": "compute#licenseCode", "description": "Output only. [Output Only] Type of resource. Always compute#licenseCode for\nlicenses.", @@ -68020,6 +75358,14 @@ }, "type": "array" }, + "minimumRetention": { + "$ref": "Duration", + "description": "If set, this license will be unable to be removed or replaced once attached\nto a disk until the minimum_retention period has passed." + }, + "multiTenantOnly": { + "description": "If true, this license can only be used on VMs on multi tenant nodes.", + "type": "boolean" + }, "name": { "annotations": { "required": [ @@ -68031,11 +75377,30 @@ "readOnly": true, "type": "string" }, + "osLicense": { + "description": "If true, indicates this is an OS license. Only one OS license can be\nattached to a disk or image at a time.", + "type": "boolean" + }, + "removableFromDisk": { + "description": "If true, this license can be removed from a disk's set of licenses, with no\nreplacement license needed.", + "type": "boolean" + }, + "requiredCoattachedLicenses": { + "description": "Specifies the set of permissible coattached licenseCodes of licenses that\nsatisfy the coattachment requirement of this license. At least one license\nfrom the set must be attached to the same disk or image as this license.", + "items": { + "type": "string" + }, + "type": "array" + }, "selfLink": { "description": "Output only. [Output Only] Server-defined URL for the resource.", "readOnly": true, "type": "string" }, + "soleTenantOnly": { + "description": "If true, this license can only be used on VMs on sole tenant nodes.", + "type": "boolean" + }, "state": { "description": "Output only. [Output Only] Current state of this License Code.", "enum": [ @@ -68059,6 +75424,11 @@ "description": "Output only. [Output Only] If true, the license will remain attached when creating\nimages or snapshots from disks. Otherwise, the license is not transferred.", "readOnly": true, "type": "boolean" + }, + "updateTimestamp": { + "description": "Output only. [Output Only] Last update timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" } }, "type": "object" @@ -68087,7 +75457,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the license. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the license. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -68279,6 +75649,174 @@ }, "type": "object" }, + "ListInstantSnapshotGroups": { + "description": "Contains a list of InstantSnapshotGroup resources.", + "id": "ListInstantSnapshotGroups", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of InstantSnapshotGroup resources.", + "items": { + "$ref": "InstantSnapshotGroup" + }, + "type": "array" + }, + "kind": { + "default": "compute#instantSnapshotGroupsList", + "description": "Output only. Type of resource.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, "LocalDisk": { "id": "LocalDisk", "properties": { @@ -70086,6 +77624,10 @@ }, "type": "array" }, + "serviceClassId": { + "description": "The service class id of the producer service to which the IP was\nassigned.", + "type": "string" + }, "status": { "description": "The status of a connected endpoint to this network attachment.", "enum": [ @@ -71983,6 +79525,10 @@ "format": "int32", "type": "integer" }, + "serviceClassId": { + "description": "Optional. Producer Service's Service class Id for the region of this network\ninterface. Can only be used with network_attachment. It is not possible to\nuse on its own however, network_attachment can be used without\nservice_class_id.", + "type": "string" + }, "stackType": { "description": "The stack type for this network interface. To assign only IPv4 addresses,\nuse IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used.\n\nThis field can be both set at instance creation and update network\ninterface operations.", "enum": [ @@ -72312,13 +79858,17 @@ "enum": [ "DELETE_ACKNOWLEDGED", "DELETE_STATUS_UNSPECIFIED", + "LOCAL_CANCEL_REQUESTED", "LOCAL_DELETE_REQUESTED", + "PEER_CANCEL_REQUESTED", "PEER_DELETE_REQUESTED" ], "enumDescriptions": [ "Both network admins have agreed this consensus peering connection can\nbe deleted.", "", + "The local network admin requested to cancel their delete request\nafter DELETE_ACKNOWLEDGED.", "Network admin has requested deletion of this peering connection.", + "The peer network admin requested to cancel their delete request after\nDELETE_ACKNOWLEDGED.", "The peer network admin has requested deletion of this peering\nconnection." ], "type": "string" @@ -72831,9 +80381,11 @@ "items": { "enum": [ "RDMA_ROCE_POLICY", + "ULL_POLICY", "VPC_POLICY" ], "enumDescriptions": [ + "", "", "" ], @@ -73306,6 +80858,16 @@ }, "type": "object" }, + "NetworksCancelRequestRemovePeeringRequest": { + "id": "NetworksCancelRequestRemovePeeringRequest", + "properties": { + "name": { + "description": "Name of the peering, which should conform to RFC1035.", + "type": "string" + } + }, + "type": "object" + }, "NetworksGetEffectiveFirewallsResponse": { "id": "NetworksGetEffectiveFirewallsResponse", "properties": { @@ -74636,38 +82198,190 @@ }, "type": "object" }, - "NodeTemplateList": { - "description": "Contains a list of node templates.", - "id": "NodeTemplateList", + "NodeTemplateList": { + "description": "Contains a list of node templates.", + "id": "NodeTemplateList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of NodeTemplate resources.", + "items": { + "$ref": "NodeTemplate" + }, + "type": "array" + }, + "kind": { + "default": "compute#nodeTemplateList", + "description": "Output only. [Output Only] Type of resource.Always compute#nodeTemplateList\nfor lists of node templates.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "NodeTemplateNodeTypeFlexibility": { + "id": "NodeTemplateNodeTypeFlexibility", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "cpus": { "type": "string" }, - "items": { - "description": "A list of NodeTemplate resources.", + "localSsd": { + "type": "string" + }, + "memory": { + "type": "string" + } + }, + "type": "object" + }, + "NodeTemplatesScopedList": { + "id": "NodeTemplatesScopedList", + "properties": { + "nodeTemplates": { + "description": "[Output Only] A list of node templates contained in this scope.", "items": { "$ref": "NodeTemplate" }, "type": "array" }, - "kind": { - "default": "compute#nodeTemplateList", - "description": "Output only. [Output Only] Type of resource.Always compute#nodeTemplateList\nfor lists of node templates.", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, - "type": "string" - }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "[Output Only] An informational warning that appears when the node templates\nlist is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -74793,33 +82507,116 @@ }, "type": "object" }, - "NodeTemplateNodeTypeFlexibility": { - "id": "NodeTemplateNodeTypeFlexibility", + "NodeType": { + "description": "Represent a sole-tenant Node Type resource.\n\nEach node within a node group must have a node type. A node type specifies\nthe total amount of cores and memory for that node. Currently, the only\navailable node type is n1-node-96-624 node type that has 96\nvCPUs and 624 GB of memory, available in multiple zones. For more information\nreadNode types.", + "id": "NodeType", "properties": { - "cpus": { + "cpuPlatform": { + "description": "[Output Only] The CPU platform used by this node type.", "type": "string" }, - "localSsd": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp inRFC3339\ntext format.", "type": "string" }, - "memory": { + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this node type." + }, + "description": { + "description": "[Output Only] An optional textual description of the resource.", + "type": "string" + }, + "guestCpus": { + "description": "[Output Only] The number of virtual CPUs that are available to the node\ntype.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#nodeType", + "description": "Output only. [Output Only] The type of the resource. Alwayscompute#nodeType for node types.", + "readOnly": true, + "type": "string" + }, + "localSsdGb": { + "description": "[Output Only] Local SSD available to the node type, defined in GB.", + "format": "int32", + "type": "integer" + }, + "maxVms": { + "description": "Output only. [Output Only] Maximum number of VMs that can be created for this node type.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "memoryMb": { + "description": "[Output Only] The amount of physical memory available to the node type,\ndefined in MB.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for the resource.", + "readOnly": true, + "type": "string" + }, + "zone": { + "description": "Output only. [Output Only] The name of the zone where the node type resides,\nsuch as us-central1-a.", + "readOnly": true, "type": "string" } }, "type": "object" }, - "NodeTemplatesScopedList": { - "id": "NodeTemplatesScopedList", + "NodeTypeAggregatedList": { + "id": "NodeTypeAggregatedList", "properties": { - "nodeTemplates": { - "description": "[Output Only] A list of node templates contained in this scope.", + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "NodeTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of node types." + }, + "description": "A list of NodeTypesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#nodeTypeAggregatedList", + "description": "Output only. [Output Only] Type of resource.Alwayscompute#nodeTypeAggregatedList for aggregated lists of node\ntypes.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", "items": { - "$ref": "NodeTemplate" + "type": "string" }, + "readOnly": true, "type": "array" }, "warning": { - "description": "[Output Only] An informational warning that appears when the node templates\nlist is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -74945,94 +82742,24 @@ }, "type": "object" }, - "NodeType": { - "description": "Represent a sole-tenant Node Type resource.\n\nEach node within a node group must have a node type. A node type specifies\nthe total amount of cores and memory for that node. Currently, the only\navailable node type is n1-node-96-624 node type that has 96\nvCPUs and 624 GB of memory, available in multiple zones. For more information\nreadNode types.", - "id": "NodeType", - "properties": { - "cpuPlatform": { - "description": "[Output Only] The CPU platform used by this node type.", - "type": "string" - }, - "creationTimestamp": { - "description": "[Output Only] Creation timestamp inRFC3339\ntext format.", - "type": "string" - }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this node type." - }, - "description": { - "description": "[Output Only] An optional textual description of the resource.", - "type": "string" - }, - "guestCpus": { - "description": "[Output Only] The number of virtual CPUs that are available to the node\ntype.", - "format": "int32", - "type": "integer" - }, - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "type": "string" - }, - "kind": { - "default": "compute#nodeType", - "description": "Output only. [Output Only] The type of the resource. Alwayscompute#nodeType for node types.", - "readOnly": true, - "type": "string" - }, - "localSsdGb": { - "description": "[Output Only] Local SSD available to the node type, defined in GB.", - "format": "int32", - "type": "integer" - }, - "maxVms": { - "description": "Output only. [Output Only] Maximum number of VMs that can be created for this node type.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "memoryMb": { - "description": "[Output Only] The amount of physical memory available to the node type,\ndefined in MB.", - "format": "int32", - "type": "integer" - }, - "name": { - "description": "[Output Only] Name of the resource.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for the resource.", - "readOnly": true, - "type": "string" - }, - "zone": { - "description": "Output only. [Output Only] The name of the zone where the node type resides,\nsuch as us-central1-a.", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "NodeTypeAggregatedList": { - "id": "NodeTypeAggregatedList", + "NodeTypeList": { + "description": "Contains a list of node types.", + "id": "NodeTypeList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "additionalProperties": { - "$ref": "NodeTypesScopedList", - "description": "[Output Only] Name of the scope containing this set of node types." + "description": "A list of NodeType resources.", + "items": { + "$ref": "NodeType" }, - "description": "A list of NodeTypesScopedList resources.", - "type": "object" + "type": "array" }, "kind": { - "default": "compute#nodeTypeAggregatedList", - "description": "Output only. [Output Only] Type of resource.Alwayscompute#nodeTypeAggregatedList for aggregated lists of node\ntypes.", + "default": "compute#nodeTypeList", + "description": "Output only. [Output Only] Type of resource.Always compute#nodeTypeList for\nlists of node types.", "readOnly": true, "type": "string" }, @@ -75045,14 +82772,6 @@ "readOnly": true, "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -75180,38 +82899,18 @@ }, "type": "object" }, - "NodeTypeList": { - "description": "Contains a list of node types.", - "id": "NodeTypeList", + "NodeTypesScopedList": { + "id": "NodeTypesScopedList", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" - }, - "items": { - "description": "A list of NodeType resources.", + "nodeTypes": { + "description": "[Output Only] A list of node types contained in this scope.", "items": { "$ref": "NodeType" }, "type": "array" }, - "kind": { - "default": "compute#nodeTypeList", - "description": "Output only. [Output Only] Type of resource.Always compute#nodeTypeList for\nlists of node types.", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, - "type": "string" - }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "[Output Only] An informational warning that appears when the node types\nlist is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -75337,18 +83036,94 @@ }, "type": "object" }, - "NodeTypesScopedList": { - "id": "NodeTypesScopedList", + "NotificationEndpoint": { + "description": "Represents a notification endpoint.\n\nA notification endpoint resource defines an endpoint to receive notifications\nwhen there are status changes detected by the associated health check\nservice.\n\nFor more information, see\nHealth checks overview.", + "id": "NotificationEndpoint", "properties": { - "nodeTypes": { - "description": "[Output Only] A list of node types contained in this scope.", + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "grpcSettings": { + "$ref": "NotificationEndpointGrpcSettings", + "description": "Settings of the gRPC notification endpoint including the endpoint URL and\nthe retry duration." + }, + "id": { + "description": "Output only. [Output Only] A unique identifier for this resource type. The server\ngenerates this identifier.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "compute#notificationEndpoint", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#notificationEndpoint for notification endpoints.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { + "description": "Output only. [Output Only] URL of the region where the notification endpoint resides.\nThis field applies only to the regional resource. You must specify this\nfield as part of the HTTP request URL. It is not settable as a field in\nthe request body.", + "readOnly": true, + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for the resource.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "NotificationEndpointAggregatedList": { + "description": "Contains a list of NotificationEndpointsScopedList.", + "id": "NotificationEndpointAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "NotificationEndpointsScopedList", + "description": "Name of the scope containing this set of NotificationEndpoints." + }, + "description": "A list of NotificationEndpointsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#notificationEndpointAggregatedList", + "description": "Output only. Type of resource.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", "items": { - "$ref": "NodeType" + "type": "string" }, + "readOnly": true, "type": "array" }, "warning": { - "description": "[Output Only] An informational warning that appears when the node types\nlist is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -75474,53 +83249,6 @@ }, "type": "object" }, - "NotificationEndpoint": { - "description": "Represents a notification endpoint.\n\nA notification endpoint resource defines an endpoint to receive notifications\nwhen there are status changes detected by the associated health check\nservice.\n\nFor more information, see\nHealth checks overview.", - "id": "NotificationEndpoint", - "properties": { - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "grpcSettings": { - "$ref": "NotificationEndpointGrpcSettings", - "description": "Settings of the gRPC notification endpoint including the endpoint URL and\nthe retry duration." - }, - "id": { - "description": "Output only. [Output Only] A unique identifier for this resource type. The server\ngenerates this identifier.", - "format": "uint64", - "readOnly": true, - "type": "string" - }, - "kind": { - "default": "compute#notificationEndpoint", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#notificationEndpoint for notification endpoints.", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "region": { - "description": "Output only. [Output Only] URL of the region where the notification endpoint resides.\nThis field applies only to the regional resource. You must specify this\nfield as part of the HTTP request URL. It is not settable as a field in\nthe request body.", - "readOnly": true, - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for the resource.", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, "NotificationEndpointGrpcSettings": { "description": "Represents a gRPC setting that describes one gRPC notification endpoint and\nthe retry duration attempting to send notification to this endpoint.", "id": "NotificationEndpointGrpcSettings", @@ -75704,6 +83432,143 @@ }, "type": "object" }, + "NotificationEndpointsScopedList": { + "id": "NotificationEndpointsScopedList", + "properties": { + "resources": { + "description": "A list of NotificationEndpoints contained in this scope.", + "items": { + "$ref": "NotificationEndpoint" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of\nnotification endpoints when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, "Operation": { "description": "Represents an Operation resource.\n\nGoogle Compute Engine has three Operation resources:\n\n* [Global](/compute/docs/reference/rest/v1/globalOperations)\n* [Regional](/compute/docs/reference/rest/v1/regionOperations)\n* [Zonal](/compute/docs/reference/rest/v1/zoneOperations)\n\nYou can use an operation resource to manage asynchronous API requests.\nFor more information, readHandling\nAPI responses.\n\nOperations can be global, regional or zonal.\n \n - For global operations, use the `globalOperations`\n resource. \n - For regional operations, use the\n `regionOperations` resource. \n - For zonal operations, use\n the `zoneOperations` resource.\n\n\n\nFor more information, read\nGlobal, Regional, and Zonal Resources.\n\nNote that completed Operation resources have a limited \nretention period.", "id": "Operation", @@ -75772,6 +83637,9 @@ }, "type": "object" }, + "getVersionOperationMetadata": { + "$ref": "GetVersionOperationMetadata" + }, "httpErrorMessage": { "description": "[Output Only] If the operation fails, this field contains the HTTP error\nmessage that was returned, such as `NOT FOUND`.", "type": "string" @@ -78545,11 +86413,387 @@ "items": { "type": "string" }, - "readOnly": true, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "PublicDelegatedPrefixList": { + "id": "PublicDelegatedPrefixList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of PublicDelegatedPrefix resources.", + "items": { + "$ref": "PublicDelegatedPrefix" + }, + "type": "array" + }, + "kind": { + "default": "compute#publicDelegatedPrefixList", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#publicDelegatedPrefixList for public delegated\nprefixes.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "PublicDelegatedPrefixPublicDelegatedSubPrefix": { + "description": "Represents a sub PublicDelegatedPrefix.", + "id": "PublicDelegatedPrefixPublicDelegatedSubPrefix", + "properties": { + "allocatablePrefixLength": { + "description": "The allocatable prefix length supported by this PublicDelegatedSubPrefix.", + "format": "int32", + "type": "integer" + }, + "delegateeProject": { + "description": "Name of the project scoping this PublicDelegatedSubPrefix.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "enableEnhancedIpv4Allocation": { + "description": "Output only. [Output Only] Whether this PDP supports enhanced IPv4 allocations.\nApplicable for IPv4 PDPs only.", + "readOnly": true, + "type": "boolean" + }, + "ipCidrRange": { + "description": "The IP address range, in CIDR format, represented by this sub public\ndelegated prefix.", + "type": "string" + }, + "ipv6AccessType": { + "description": "Output only. [Output Only] The internet access type for IPv6 Public Delegated Sub\nPrefixes. Inherited from parent prefix.", + "enum": [ + "EXTERNAL", + "INTERNAL" + ], + "enumDescriptions": [ + "The parent public advertised prefix will be announced to the internet.\nAll children public delegated prefixes will have IPv6 access type as\nEXTERNAL.", + "The parent public advertised prefix will not be announced to the\ninternet. Prefix will be used privately within Cloud. All children\npublic delegated prefixes will have IPv6 access type as INTERNAL." + ], + "readOnly": true, + "type": "string" + }, + "isAddress": { + "description": "Whether the sub prefix is delegated to create Address resources in the\ndelegatee project.", + "type": "boolean" + }, + "mode": { + "description": "The PublicDelegatedSubPrefix mode for IPv6 only.", + "enum": [ + "DELEGATION", + "EXTERNAL_IPV6_FORWARDING_RULE_CREATION", + "EXTERNAL_IPV6_SUBNETWORK_CREATION", + "INTERNAL_IPV6_SUBNETWORK_CREATION" + ], + "enumDescriptions": [ + "The public delegated prefix is used for further sub-delegation only. Such\nprefixes cannot set allocatablePrefixLength.", + "The public delegated prefix is used for creating forwarding rules only.\nSuch prefixes cannot set publicDelegatedSubPrefixes. Parent public\ndelegated prefix must have IPv6 access type as EXTERNAL.", + "The public delegated prefix is used for creating dual-mode subnetworks\nonly. Such prefixes cannot set publicDelegatedSubPrefixes. Parent public\ndelegated prefix must have IPv6 access type as EXTERNAL.", + "The public delegated prefix is used for creating dual stack or IPv6-only\nsubnetwork with internal access only. Such prefixes cannot set\npublicDelegatedSubPrefixes and allocatablePrefixLength. Parent public\ndelegated prefix must have IPv6 access type as INTERNAL." + ], + "type": "string" + }, + "name": { + "description": "The name of the sub public delegated prefix.", + "type": "string" + }, + "region": { + "description": "Output only. [Output Only] The region of the sub public delegated prefix if it is\nregional. If absent, the sub prefix is global.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Output only. [Output Only] The status of the sub public delegated prefix.", + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "enumDescriptions": [ + "", + "" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "PublicDelegatedPrefixesScopedList": { + "id": "PublicDelegatedPrefixesScopedList", + "properties": { + "publicDelegatedPrefixes": { + "description": "[Output Only] A list of PublicDelegatedPrefixes contained in this scope.", + "items": { + "$ref": "PublicDelegatedPrefix" + }, "type": "array" }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "[Output Only] Informational warning which replaces the list of\npublic delegated prefixes when the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -78675,36 +86919,465 @@ }, "type": "object" }, - "PublicDelegatedPrefixList": { - "id": "PublicDelegatedPrefixList", + "Quota": { + "description": "A quotas entry.", + "id": "Quota", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "limit": { + "description": "[Output Only] Quota limit for this metric.", + "format": "double", + "type": "number" + }, + "metric": { + "description": "[Output Only] Name of the quota metric.", + "enum": [ + "A2_CPUS", + "AFFINITY_GROUPS", + "AUTOSCALERS", + "BACKEND_BUCKETS", + "BACKEND_SERVICES", + "C2D_CPUS", + "C2_CPUS", + "C3_CPUS", + "COMMITMENTS", + "COMMITTED_A2_CPUS", + "COMMITTED_C2D_CPUS", + "COMMITTED_C2_CPUS", + "COMMITTED_C3_CPUS", + "COMMITTED_CPUS", + "COMMITTED_E2_CPUS", + "COMMITTED_LICENSES", + "COMMITTED_LOCAL_SSD_TOTAL_GB", + "COMMITTED_M3_CPUS", + "COMMITTED_MEMORY_OPTIMIZED_CPUS", + "COMMITTED_N2A_CPUS", + "COMMITTED_N2D_CPUS", + "COMMITTED_N2_CPUS", + "COMMITTED_NVIDIA_A100_80GB_GPUS", + "COMMITTED_NVIDIA_A100_GPUS", + "COMMITTED_NVIDIA_H100_GPUS", + "COMMITTED_NVIDIA_K80_GPUS", + "COMMITTED_NVIDIA_L4_GPUS", + "COMMITTED_NVIDIA_P100_GPUS", + "COMMITTED_NVIDIA_P4_GPUS", + "COMMITTED_NVIDIA_T4_GPUS", + "COMMITTED_NVIDIA_V100_GPUS", + "COMMITTED_T2A_CPUS", + "COMMITTED_T2D_CPUS", + "COMMITTED_Z3_CPUS", + "CPUS", + "CPUS_ALL_REGIONS", + "DISKS_TOTAL_GB", + "E2_CPUS", + "EXTERNAL_MANAGED_FORWARDING_RULES", + "EXTERNAL_NETWORK_LB_FORWARDING_RULES", + "EXTERNAL_PROTOCOL_FORWARDING_RULES", + "EXTERNAL_VPN_GATEWAYS", + "FIREWALLS", + "FORWARDING_RULES", + "GLOBAL_EXTERNAL_MANAGED_BACKEND_SERVICES", + "GLOBAL_EXTERNAL_MANAGED_FORWARDING_RULES", + "GLOBAL_EXTERNAL_PROXY_LB_BACKEND_SERVICES", + "GLOBAL_INTERNAL_ADDRESSES", + "GLOBAL_INTERNAL_MANAGED_BACKEND_SERVICES", + "GLOBAL_INTERNAL_TRAFFIC_DIRECTOR_BACKEND_SERVICES", + "GPUS_ALL_REGIONS", + "HDB_TOTAL_GB", + "HDB_TOTAL_IOPS", + "HDB_TOTAL_THROUGHPUT", + "HEALTH_CHECKS", + "IMAGES", + "INSTANCES", + "INSTANCE_GROUPS", + "INSTANCE_GROUP_MANAGERS", + "INSTANCE_TEMPLATES", + "INTERCONNECTS", + "INTERCONNECT_ATTACHMENTS_PER_REGION", + "INTERCONNECT_ATTACHMENTS_TOTAL_MBPS", + "INTERCONNECT_TOTAL_GBPS", + "INTERNAL_ADDRESSES", + "INTERNAL_TRAFFIC_DIRECTOR_FORWARDING_RULES", + "IN_PLACE_SNAPSHOTS", + "IN_USE_ADDRESSES", + "IN_USE_BACKUP_SCHEDULES", + "IN_USE_SNAPSHOT_SCHEDULES", + "LOCAL_SSD_TOTAL_GB", + "M1_CPUS", + "M2_CPUS", + "M3_CPUS", + "MACHINE_IMAGES", + "N2A_CPUS", + "N2D_CPUS", + "N2_CPUS", + "NETWORKS", + "NETWORK_ATTACHMENTS", + "NETWORK_ENDPOINT_GROUPS", + "NETWORK_FIREWALL_POLICIES", + "NET_LB_SECURITY_POLICIES_PER_REGION", + "NET_LB_SECURITY_POLICY_RULES_PER_REGION", + "NET_LB_SECURITY_POLICY_RULE_ATTRIBUTES_PER_REGION", + "NODE_GROUPS", + "NODE_TEMPLATES", + "NVIDIA_A100_80GB_GPUS", + "NVIDIA_A100_GPUS", + "NVIDIA_K80_GPUS", + "NVIDIA_L4_GPUS", + "NVIDIA_P100_GPUS", + "NVIDIA_P100_VWS_GPUS", + "NVIDIA_P4_GPUS", + "NVIDIA_P4_VWS_GPUS", + "NVIDIA_T4_GPUS", + "NVIDIA_T4_VWS_GPUS", + "NVIDIA_V100_GPUS", + "PACKET_MIRRORINGS", + "PD_EXTREME_TOTAL_PROVISIONED_IOPS", + "PREEMPTIBLE_CPUS", + "PREEMPTIBLE_LOCAL_SSD_GB", + "PREEMPTIBLE_NVIDIA_A100_80GB_GPUS", + "PREEMPTIBLE_NVIDIA_A100_GPUS", + "PREEMPTIBLE_NVIDIA_H100_GPUS", + "PREEMPTIBLE_NVIDIA_K80_GPUS", + "PREEMPTIBLE_NVIDIA_L4_GPUS", + "PREEMPTIBLE_NVIDIA_P100_GPUS", + "PREEMPTIBLE_NVIDIA_P100_VWS_GPUS", + "PREEMPTIBLE_NVIDIA_P4_GPUS", + "PREEMPTIBLE_NVIDIA_P4_VWS_GPUS", + "PREEMPTIBLE_NVIDIA_T4_GPUS", + "PREEMPTIBLE_NVIDIA_T4_VWS_GPUS", + "PREEMPTIBLE_NVIDIA_V100_GPUS", + "PREEMPTIBLE_TPU_LITE_DEVICE_V5", + "PREEMPTIBLE_TPU_LITE_PODSLICE_V5", + "PREEMPTIBLE_TPU_PODSLICE_V4", + "PSC_ILB_CONSUMER_FORWARDING_RULES_PER_PRODUCER_NETWORK", + "PSC_INTERNAL_LB_FORWARDING_RULES", + "PUBLIC_ADVERTISED_PREFIXES", + "PUBLIC_DELEGATED_PREFIXES", + "REGIONAL_AUTOSCALERS", + "REGIONAL_EXTERNAL_MANAGED_BACKEND_SERVICES", + "REGIONAL_EXTERNAL_NETWORK_LB_BACKEND_SERVICES", + "REGIONAL_INSTANCE_GROUP_MANAGERS", + "REGIONAL_INTERNAL_LB_BACKEND_SERVICES", + "REGIONAL_INTERNAL_MANAGED_BACKEND_SERVICES", + "REGIONAL_INTERNAL_TRAFFIC_DIRECTOR_BACKEND_SERVICES", + "RESERVATIONS", + "RESOURCE_POLICIES", + "ROUTERS", + "ROUTES", + "SECURITY_POLICIES", + "SECURITY_POLICIES_PER_REGION", + "SECURITY_POLICY_ADVANCED_RULES_PER_REGION", + "SECURITY_POLICY_CEVAL_RULES", + "SECURITY_POLICY_RULES", + "SECURITY_POLICY_RULES_PER_REGION", + "SERVICE_ATTACHMENTS", + "SNAPSHOTS", + "SSD_TOTAL_GB", + "SSL_CERTIFICATES", + "SSL_POLICIES", + "STATIC_ADDRESSES", + "STATIC_BYOIP_ADDRESSES", + "STATIC_EXTERNAL_IPV6_ADDRESS_RANGES", + "SUBNETWORKS", + "T2A_CPUS", + "T2D_CPUS", + "TARGET_HTTPS_PROXIES", + "TARGET_HTTP_PROXIES", + "TARGET_INSTANCES", + "TARGET_POOLS", + "TARGET_SSL_PROXIES", + "TARGET_TCP_PROXIES", + "TARGET_VPN_GATEWAYS", + "TPU_LITE_DEVICE_V5", + "TPU_LITE_PODSLICE_V5", + "TPU_PODSLICE_V4", + "URL_MAPS", + "VARIABLE_IPV6_PUBLIC_DELEGATED_PREFIXES", + "VPN_GATEWAYS", + "VPN_TUNNELS", + "XPN_SERVICE_PROJECTS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "Guest CPUs", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "The total number of snapshots allowed for a single project.", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], "type": "string" }, - "items": { - "description": "A list of PublicDelegatedPrefix resources.", - "items": { - "$ref": "PublicDelegatedPrefix" + "owner": { + "description": "[Output Only] Owning resource. This is the resource on which this quota\nis applied.", + "type": "string" + }, + "usage": { + "description": "[Output Only] Current usage of this metric.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "QuotaExceededInfo": { + "description": "Additional details for quota exceeded error for resource quota.", + "id": "QuotaExceededInfo", + "properties": { + "dimensions": { + "additionalProperties": { + "type": "string" }, - "type": "array" + "description": "The map holding related quota dimensions.", + "type": "object" + }, + "futureLimit": { + "description": "Future quota limit being rolled out. The limit's unit depends on the quota\n type or metric.", + "format": "double", + "type": "number" + }, + "limit": { + "description": "Current effective quota limit. The limit's unit depends on the quota type\nor metric.", + "format": "double", + "type": "number" + }, + "limitName": { + "description": "The name of the quota limit.", + "type": "string" + }, + "metricName": { + "description": "The Compute Engine quota metric name.", + "type": "string" }, + "rolloutStatus": { + "description": "Rollout status of the future quota limit.", + "enum": [ + "IN_PROGRESS", + "ROLLOUT_STATUS_UNSPECIFIED" + ], + "enumDescriptions": [ + "IN_PROGRESS - A rollout is in process which will change the limit value\nto future limit.", + "ROLLOUT_STATUS_UNSPECIFIED - Rollout status is not specified. The default\nvalue." + ], + "type": "string" + } + }, + "type": "object" + }, + "Reference": { + "description": "Represents a reference to a resource.", + "id": "Reference", + "properties": { "kind": { - "default": "compute#publicDelegatedPrefixList", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#publicDelegatedPrefixList for public delegated\nprefixes.", + "default": "compute#reference", + "description": "Output only. [Output Only] Type of the resource. Always compute#reference\nfor references.", "readOnly": true, "type": "string" }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "referenceType": { + "description": "A description of the reference type with no implied semantics. Possible\nvalues include:\n \n \n 1. MEMBER_OF", "type": "string" }, - "selfLink": { - "description": "[Output Only] Server-defined URL for this resource.", + "referrer": { + "description": "URL of the resource which refers to the target.", "type": "string" }, - "warning": { - "description": "[Output Only] Informational warning message.", + "target": { + "description": "URL of the resource to which this reference points.", + "type": "string" + } + }, + "type": "object" + }, + "Region": { + "description": "Represents a Region resource.\n\nA region is a geographical area where a resource is located. For more\ninformation, readRegions\nand Zones.", + "id": "Region", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp inRFC3339\ntext format.", + "type": "string" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this region." + }, + "description": { + "description": "[Output Only] Textual description of the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#region", + "description": "Output only. [Output Only] Type of the resource. Always compute#region for\nregions.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "quotaStatusWarning": { + "description": "Output only. [Output Only] Warning of fetching the `quotas` field for this region. This\nfield is populated only if fetching of the `quotas` field fails.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -78820,112 +87493,98 @@ }, "type": "array" }, - "message": { - "description": "[Output Only] A human-readable description of the warning code.", - "type": "string" - } - }, - "type": "object" - } - }, - "type": "object" - }, - "PublicDelegatedPrefixPublicDelegatedSubPrefix": { - "description": "Represents a sub PublicDelegatedPrefix.", - "id": "PublicDelegatedPrefixPublicDelegatedSubPrefix", - "properties": { - "allocatablePrefixLength": { - "description": "The allocatable prefix length supported by this PublicDelegatedSubPrefix.", - "format": "int32", - "type": "integer" - }, - "delegateeProject": { - "description": "Name of the project scoping this PublicDelegatedSubPrefix.", - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "enableEnhancedIpv4Allocation": { - "description": "Output only. [Output Only] Whether this PDP supports enhanced IPv4 allocations.\nApplicable for IPv4 PDPs only.", - "readOnly": true, - "type": "boolean" - }, - "ipCidrRange": { - "description": "The IP address range, in CIDR format, represented by this sub public\ndelegated prefix.", - "type": "string" - }, - "ipv6AccessType": { - "description": "Output only. [Output Only] The internet access type for IPv6 Public Delegated Sub\nPrefixes. Inherited from parent prefix.", - "enum": [ - "EXTERNAL", - "INTERNAL" - ], - "enumDescriptions": [ - "The parent public advertised prefix will be announced to the internet.\nAll children public delegated prefixes will have IPv6 access type as\nEXTERNAL.", - "The parent public advertised prefix will not be announced to the\ninternet. Prefix will be used privately within Cloud. All children\npublic delegated prefixes will have IPv6 access type as INTERNAL." - ], + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, "readOnly": true, - "type": "string" - }, - "isAddress": { - "description": "Whether the sub prefix is delegated to create Address resources in the\ndelegatee project.", - "type": "boolean" - }, - "mode": { - "description": "The PublicDelegatedSubPrefix mode for IPv6 only.", - "enum": [ - "DELEGATION", - "EXTERNAL_IPV6_FORWARDING_RULE_CREATION", - "EXTERNAL_IPV6_SUBNETWORK_CREATION", - "INTERNAL_IPV6_SUBNETWORK_CREATION" - ], - "enumDescriptions": [ - "The public delegated prefix is used for further sub-delegation only. Such\nprefixes cannot set allocatablePrefixLength.", - "The public delegated prefix is used for creating forwarding rules only.\nSuch prefixes cannot set publicDelegatedSubPrefixes. Parent public\ndelegated prefix must have IPv6 access type as EXTERNAL.", - "The public delegated prefix is used for creating dual-mode subnetworks\nonly. Such prefixes cannot set publicDelegatedSubPrefixes. Parent public\ndelegated prefix must have IPv6 access type as EXTERNAL.", - "The public delegated prefix is used for creating dual stack or IPv6-only\nsubnetwork with internal access only. Such prefixes cannot set\npublicDelegatedSubPrefixes and allocatablePrefixLength. Parent public\ndelegated prefix must have IPv6 access type as INTERNAL." - ], - "type": "string" + "type": "object" }, - "name": { - "description": "The name of the sub public delegated prefix.", - "type": "string" + "quotas": { + "description": "[Output Only] Quotas assigned to this region.", + "items": { + "$ref": "Quota" + }, + "type": "array" }, - "region": { - "description": "Output only. [Output Only] The region of the sub public delegated prefix if it is\nregional. If absent, the sub prefix is global.", - "readOnly": true, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", "type": "string" }, "status": { - "description": "Output only. [Output Only] The status of the sub public delegated prefix.", + "description": "[Output Only] Status of the region, either UP orDOWN.", "enum": [ - "ACTIVE", - "INACTIVE" + "DOWN", + "UP" ], "enumDescriptions": [ "", "" ], + "type": "string" + }, + "supportsPzs": { + "description": "Output only. [Output Only] Reserved for future use.", "readOnly": true, + "type": "boolean" + }, + "zones": { + "description": "[Output Only] A list of zones available in this region, in the form of\nresource URLs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionAddressesMoveRequest": { + "id": "RegionAddressesMoveRequest", + "properties": { + "description": { + "description": "An optional destination address description if intended to be different\nfrom the source.", + "type": "string" + }, + "destinationAddress": { + "description": "The URL of the destination address to move to. This can be a full or\npartial URL. For example, the following are all valid URLs to a address:\n \n - https://www.googleapis.com/compute/v1/projects/project/regions/region/addresses/address \n - projects/project/regions/region/addresses/address\n\n\nNote that destination project must be different from the source project. So/regions/region/addresses/address is not valid partial url.", "type": "string" } }, "type": "object" }, - "PublicDelegatedPrefixesScopedList": { - "id": "PublicDelegatedPrefixesScopedList", + "RegionAutoscalerList": { + "description": "Contains a list of autoscalers.", + "id": "RegionAutoscalerList", "properties": { - "publicDelegatedPrefixes": { - "description": "[Output Only] A list of PublicDelegatedPrefixes contained in this scope.", + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Autoscaler resources.", "items": { - "$ref": "PublicDelegatedPrefix" + "$ref": "Autoscaler" }, "type": "array" }, + "kind": { + "default": "compute#regionAutoscalerList", + "description": "Output only. Type of resource.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, "warning": { - "description": "[Output Only] Informational warning which replaces the list of\npublic delegated prefixes when the list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -79051,465 +87710,253 @@ }, "type": "object" }, - "Quota": { - "description": "A quotas entry.", - "id": "Quota", + "RegionDiskTypeList": { + "id": "RegionDiskTypeList", "properties": { - "limit": { - "description": "[Output Only] Quota limit for this metric.", - "format": "double", - "type": "number" + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" }, - "metric": { - "description": "[Output Only] Name of the quota metric.", - "enum": [ - "A2_CPUS", - "AFFINITY_GROUPS", - "AUTOSCALERS", - "BACKEND_BUCKETS", - "BACKEND_SERVICES", - "C2D_CPUS", - "C2_CPUS", - "C3_CPUS", - "COMMITMENTS", - "COMMITTED_A2_CPUS", - "COMMITTED_C2D_CPUS", - "COMMITTED_C2_CPUS", - "COMMITTED_C3_CPUS", - "COMMITTED_CPUS", - "COMMITTED_E2_CPUS", - "COMMITTED_LICENSES", - "COMMITTED_LOCAL_SSD_TOTAL_GB", - "COMMITTED_M3_CPUS", - "COMMITTED_MEMORY_OPTIMIZED_CPUS", - "COMMITTED_N2A_CPUS", - "COMMITTED_N2D_CPUS", - "COMMITTED_N2_CPUS", - "COMMITTED_NVIDIA_A100_80GB_GPUS", - "COMMITTED_NVIDIA_A100_GPUS", - "COMMITTED_NVIDIA_H100_GPUS", - "COMMITTED_NVIDIA_K80_GPUS", - "COMMITTED_NVIDIA_L4_GPUS", - "COMMITTED_NVIDIA_P100_GPUS", - "COMMITTED_NVIDIA_P4_GPUS", - "COMMITTED_NVIDIA_T4_GPUS", - "COMMITTED_NVIDIA_V100_GPUS", - "COMMITTED_T2A_CPUS", - "COMMITTED_T2D_CPUS", - "COMMITTED_Z3_CPUS", - "CPUS", - "CPUS_ALL_REGIONS", - "DISKS_TOTAL_GB", - "E2_CPUS", - "EXTERNAL_MANAGED_FORWARDING_RULES", - "EXTERNAL_NETWORK_LB_FORWARDING_RULES", - "EXTERNAL_PROTOCOL_FORWARDING_RULES", - "EXTERNAL_VPN_GATEWAYS", - "FIREWALLS", - "FORWARDING_RULES", - "GLOBAL_EXTERNAL_MANAGED_BACKEND_SERVICES", - "GLOBAL_EXTERNAL_MANAGED_FORWARDING_RULES", - "GLOBAL_EXTERNAL_PROXY_LB_BACKEND_SERVICES", - "GLOBAL_INTERNAL_ADDRESSES", - "GLOBAL_INTERNAL_MANAGED_BACKEND_SERVICES", - "GLOBAL_INTERNAL_TRAFFIC_DIRECTOR_BACKEND_SERVICES", - "GPUS_ALL_REGIONS", - "HDB_TOTAL_GB", - "HDB_TOTAL_IOPS", - "HDB_TOTAL_THROUGHPUT", - "HEALTH_CHECKS", - "IMAGES", - "INSTANCES", - "INSTANCE_GROUPS", - "INSTANCE_GROUP_MANAGERS", - "INSTANCE_TEMPLATES", - "INTERCONNECTS", - "INTERCONNECT_ATTACHMENTS_PER_REGION", - "INTERCONNECT_ATTACHMENTS_TOTAL_MBPS", - "INTERCONNECT_TOTAL_GBPS", - "INTERNAL_ADDRESSES", - "INTERNAL_TRAFFIC_DIRECTOR_FORWARDING_RULES", - "IN_PLACE_SNAPSHOTS", - "IN_USE_ADDRESSES", - "IN_USE_BACKUP_SCHEDULES", - "IN_USE_SNAPSHOT_SCHEDULES", - "LOCAL_SSD_TOTAL_GB", - "M1_CPUS", - "M2_CPUS", - "M3_CPUS", - "MACHINE_IMAGES", - "N2A_CPUS", - "N2D_CPUS", - "N2_CPUS", - "NETWORKS", - "NETWORK_ATTACHMENTS", - "NETWORK_ENDPOINT_GROUPS", - "NETWORK_FIREWALL_POLICIES", - "NET_LB_SECURITY_POLICIES_PER_REGION", - "NET_LB_SECURITY_POLICY_RULES_PER_REGION", - "NET_LB_SECURITY_POLICY_RULE_ATTRIBUTES_PER_REGION", - "NODE_GROUPS", - "NODE_TEMPLATES", - "NVIDIA_A100_80GB_GPUS", - "NVIDIA_A100_GPUS", - "NVIDIA_K80_GPUS", - "NVIDIA_L4_GPUS", - "NVIDIA_P100_GPUS", - "NVIDIA_P100_VWS_GPUS", - "NVIDIA_P4_GPUS", - "NVIDIA_P4_VWS_GPUS", - "NVIDIA_T4_GPUS", - "NVIDIA_T4_VWS_GPUS", - "NVIDIA_V100_GPUS", - "PACKET_MIRRORINGS", - "PD_EXTREME_TOTAL_PROVISIONED_IOPS", - "PREEMPTIBLE_CPUS", - "PREEMPTIBLE_LOCAL_SSD_GB", - "PREEMPTIBLE_NVIDIA_A100_80GB_GPUS", - "PREEMPTIBLE_NVIDIA_A100_GPUS", - "PREEMPTIBLE_NVIDIA_H100_GPUS", - "PREEMPTIBLE_NVIDIA_K80_GPUS", - "PREEMPTIBLE_NVIDIA_L4_GPUS", - "PREEMPTIBLE_NVIDIA_P100_GPUS", - "PREEMPTIBLE_NVIDIA_P100_VWS_GPUS", - "PREEMPTIBLE_NVIDIA_P4_GPUS", - "PREEMPTIBLE_NVIDIA_P4_VWS_GPUS", - "PREEMPTIBLE_NVIDIA_T4_GPUS", - "PREEMPTIBLE_NVIDIA_T4_VWS_GPUS", - "PREEMPTIBLE_NVIDIA_V100_GPUS", - "PREEMPTIBLE_TPU_LITE_DEVICE_V5", - "PREEMPTIBLE_TPU_LITE_PODSLICE_V5", - "PREEMPTIBLE_TPU_PODSLICE_V4", - "PSC_ILB_CONSUMER_FORWARDING_RULES_PER_PRODUCER_NETWORK", - "PSC_INTERNAL_LB_FORWARDING_RULES", - "PUBLIC_ADVERTISED_PREFIXES", - "PUBLIC_DELEGATED_PREFIXES", - "REGIONAL_AUTOSCALERS", - "REGIONAL_EXTERNAL_MANAGED_BACKEND_SERVICES", - "REGIONAL_EXTERNAL_NETWORK_LB_BACKEND_SERVICES", - "REGIONAL_INSTANCE_GROUP_MANAGERS", - "REGIONAL_INTERNAL_LB_BACKEND_SERVICES", - "REGIONAL_INTERNAL_MANAGED_BACKEND_SERVICES", - "REGIONAL_INTERNAL_TRAFFIC_DIRECTOR_BACKEND_SERVICES", - "RESERVATIONS", - "RESOURCE_POLICIES", - "ROUTERS", - "ROUTES", - "SECURITY_POLICIES", - "SECURITY_POLICIES_PER_REGION", - "SECURITY_POLICY_ADVANCED_RULES_PER_REGION", - "SECURITY_POLICY_CEVAL_RULES", - "SECURITY_POLICY_RULES", - "SECURITY_POLICY_RULES_PER_REGION", - "SERVICE_ATTACHMENTS", - "SNAPSHOTS", - "SSD_TOTAL_GB", - "SSL_CERTIFICATES", - "SSL_POLICIES", - "STATIC_ADDRESSES", - "STATIC_BYOIP_ADDRESSES", - "STATIC_EXTERNAL_IPV6_ADDRESS_RANGES", - "SUBNETWORKS", - "T2A_CPUS", - "T2D_CPUS", - "TARGET_HTTPS_PROXIES", - "TARGET_HTTP_PROXIES", - "TARGET_INSTANCES", - "TARGET_POOLS", - "TARGET_SSL_PROXIES", - "TARGET_TCP_PROXIES", - "TARGET_VPN_GATEWAYS", - "TPU_LITE_DEVICE_V5", - "TPU_LITE_PODSLICE_V5", - "TPU_PODSLICE_V4", - "URL_MAPS", - "VARIABLE_IPV6_PUBLIC_DELEGATED_PREFIXES", - "VPN_GATEWAYS", - "VPN_TUNNELS", - "XPN_SERVICE_PROJECTS" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "Guest CPUs", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "The total number of snapshots allowed for a single project.", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], + "items": { + "description": "A list of DiskType resources.", + "items": { + "$ref": "DiskType" + }, + "type": "array" + }, + "kind": { + "default": "compute#regionDiskTypeList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#regionDiskTypeList for region disk types.", + "readOnly": true, "type": "string" }, - "owner": { - "description": "[Output Only] Owning resource. This is the resource on which this quota\nis applied.", + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "RegionDiskUpdateKmsKeyRequest": { + "id": "RegionDiskUpdateKmsKeyRequest", + "properties": { + "kmsKeyName": { + "description": "Optional. The new KMS key to replace the current one on the disk. If empty, the disk\nwill be re-encrypted using the primary version of the disk's current KMS\nkey.\n\nThe KMS key can be provided in the following formats:\n \n \n - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key\n\n\nWhere project is the project ID or\nproject number.", "type": "string" - }, - "usage": { - "description": "[Output Only] Current usage of this metric.", - "format": "double", - "type": "number" } }, "type": "object" }, - "QuotaExceededInfo": { - "description": "Additional details for quota exceeded error for resource quota.", - "id": "QuotaExceededInfo", + "RegionDisksAddResourcePoliciesRequest": { + "id": "RegionDisksAddResourcePoliciesRequest", "properties": { - "dimensions": { - "additionalProperties": { + "resourcePolicies": { + "description": "Resource policies to be added to this disk.", + "items": { "type": "string" }, - "description": "The map holding related quota dimensions.", - "type": "object" - }, - "futureLimit": { - "description": "Future quota limit being rolled out. The limit's unit depends on the quota\n type or metric.", - "format": "double", - "type": "number" - }, - "limit": { - "description": "Current effective quota limit. The limit's unit depends on the quota type\nor metric.", - "format": "double", - "type": "number" - }, - "limitName": { - "description": "The name of the quota limit.", - "type": "string" - }, - "metricName": { - "description": "The Compute Engine quota metric name.", - "type": "string" - }, - "rolloutStatus": { - "description": "Rollout status of the future quota limit.", - "enum": [ - "IN_PROGRESS", - "ROLLOUT_STATUS_UNSPECIFIED" - ], - "enumDescriptions": [ - "IN_PROGRESS - A rollout is in process which will change the limit value\nto future limit.", - "ROLLOUT_STATUS_UNSPECIFIED - Rollout status is not specified. The default\nvalue." - ], - "type": "string" + "type": "array" } }, "type": "object" }, - "Reference": { - "description": "Represents a reference to a resource.", - "id": "Reference", + "RegionDisksRemoveResourcePoliciesRequest": { + "id": "RegionDisksRemoveResourcePoliciesRequest", "properties": { - "kind": { - "default": "compute#reference", - "description": "Output only. [Output Only] Type of the resource. Always compute#reference\nfor references.", - "readOnly": true, - "type": "string" - }, - "referenceType": { - "description": "A description of the reference type with no implied semantics. Possible\nvalues include:\n \n \n 1. MEMBER_OF", - "type": "string" - }, - "referrer": { - "description": "URL of the resource which refers to the target.", + "resourcePolicies": { + "description": "Resource policies to be removed from this disk.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionDisksResizeRequest": { + "id": "RegionDisksResizeRequest", + "properties": { + "sizeGb": { + "description": "The new size of the regional persistent disk, which is specified in GB.", + "format": "int64", "type": "string" - }, - "target": { - "description": "URL of the resource to which this reference points.", + } + }, + "type": "object" + }, + "RegionDisksStartAsyncReplicationRequest": { + "id": "RegionDisksStartAsyncReplicationRequest", + "properties": { + "asyncSecondaryDisk": { + "description": "The secondary disk to start asynchronous replication to.\nYou can provide this as a partial or full URL to the resource. For example,\nthe following are valid values:\n \n \n - \n https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk\n \n - \n https://www.googleapis.com/compute/v1/projects/project/regions/region/disks/disk\n \n - \n projects/project/zones/zone/disks/disk\n \n - \n projects/project/regions/region/disks/disk\n \n - \n zones/zone/disks/disk\n \n - \n regions/region/disks/disk", "type": "string" } }, "type": "object" }, - "Region": { - "description": "Represents a Region resource.\n\nA region is a geographical area where a resource is located. For more\ninformation, readRegions\nand Zones.", - "id": "Region", + "RegionInstanceGroupList": { + "description": "Contains a list of InstanceGroup resources.", + "id": "RegionInstanceGroupList", "properties": { - "creationTimestamp": { - "description": "[Output Only] Creation timestamp inRFC3339\ntext format.", + "id": { + "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "readOnly": true, "type": "string" }, - "deprecated": { - "$ref": "DeprecationStatus", - "description": "[Output Only] The deprecation status associated with this region." - }, - "description": { - "description": "[Output Only] Textual description of the resource.", - "type": "string" + "items": { + "description": "A list of InstanceGroup resources.", + "items": { + "$ref": "InstanceGroup" + }, + "type": "array" }, - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", + "kind": { + "default": "compute#regionInstanceGroupList", + "description": "Output only. The resource type.", + "readOnly": true, "type": "string" }, - "kind": { - "default": "compute#region", - "description": "Output only. [Output Only] Type of the resource. Always compute#region for\nregions.", + "nextPageToken": { + "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, - "name": { - "description": "[Output Only] Name of the resource.", + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, "type": "string" }, - "quotaStatusWarning": { - "description": "Output only. [Output Only] Warning of fetching the `quotas` field for this region. This\nfield is populated only if fetching of the `quotas` field fails.", + "warning": { + "description": "Output only. [Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -79632,91 +88079,242 @@ }, "readOnly": true, "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagerDeleteInstanceConfigReq": { + "description": "RegionInstanceGroupManagers.deletePerInstanceConfigs", + "id": "RegionInstanceGroupManagerDeleteInstanceConfigReq", + "properties": { + "names": { + "description": "The list of instance names for which we want to delete per-instance configs\non this managed instance group.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagerList": { + "description": "Contains a list of managed instance groups.", + "id": "RegionInstanceGroupManagerList", + "properties": { + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "readOnly": true, + "type": "string" }, - "quotas": { - "description": "[Output Only] Quotas assigned to this region.", + "items": { + "description": "A list of InstanceGroupManager resources.", "items": { - "$ref": "Quota" + "$ref": "InstanceGroupManager" }, "type": "array" }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", + "kind": { + "default": "compute#regionInstanceGroupManagerList", + "description": "Output only. The resource type, which is always compute#instanceGroupManagerList for a\nlist of managed instance groups that exist in th regional scope.", + "readOnly": true, "type": "string" }, - "status": { - "description": "[Output Only] Status of the region, either UP orDOWN.", - "enum": [ - "DOWN", - "UP" - ], - "enumDescriptions": [ - "", - "" - ], + "nextPageToken": { + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "readOnly": true, "type": "string" }, - "supportsPzs": { - "description": "Output only. [Output Only] Reserved for future use.", + "selfLink": { + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, - "type": "boolean" + "type": "string" }, - "zones": { - "description": "[Output Only] A list of zones available in this region, in the form of\nresource URLs.", - "items": { - "type": "string" + "warning": { + "description": "Output only. Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } }, - "type": "array" + "readOnly": true, + "type": "object" } }, "type": "object" }, - "RegionAddressesMoveRequest": { - "id": "RegionAddressesMoveRequest", + "RegionInstanceGroupManagerPatchInstanceConfigReq": { + "description": "RegionInstanceGroupManagers.patchPerInstanceConfigs", + "id": "RegionInstanceGroupManagerPatchInstanceConfigReq", "properties": { - "description": { - "description": "An optional destination address description if intended to be different\nfrom the source.", - "type": "string" - }, - "destinationAddress": { - "description": "The URL of the destination address to move to. This can be a full or\npartial URL. For example, the following are all valid URLs to a address:\n \n - https://www.googleapis.com/compute/v1/projects/project/regions/region/addresses/address \n - projects/project/regions/region/addresses/address\n\n\nNote that destination project must be different from the source project. So/regions/region/addresses/address is not valid partial url.", - "type": "string" + "perInstanceConfigs": { + "description": "The list of per-instance configurations to insert or patch on this managed\ninstance group.", + "items": { + "$ref": "PerInstanceConfig" + }, + "type": "array" } }, "type": "object" }, - "RegionAutoscalerList": { - "description": "Contains a list of autoscalers.", - "id": "RegionAutoscalerList", + "RegionInstanceGroupManagerResizeRequestsListResponse": { + "id": "RegionInstanceGroupManagerResizeRequestsListResponse", "properties": { + "etag": { + "type": "string" + }, "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "description": "Output only. Unique identifier for the resource; defined by the server.", + "readOnly": true, "type": "string" }, "items": { - "description": "A list of Autoscaler resources.", + "description": "A list of Resize Request resources.", "items": { - "$ref": "Autoscaler" + "$ref": "InstanceGroupManagerResizeRequest" }, "type": "array" }, "kind": { - "default": "compute#regionAutoscalerList", - "description": "Output only. Type of resource.", + "default": "compute#regionInstanceGroupManagerResizeRequestList", + "description": "Output only. Type of the resource. Alwayscompute#regionInstanceGroupManagerResizeRequestList for\na list of Resize Requests.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "readOnly": true, "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. Server-defined URL for this resource.", "readOnly": true, "type": "string" }, + "unreachables": { + "description": "Output only. Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "Output only. Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -79837,42 +88435,156 @@ "type": "string" } }, - "type": "object" + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagerUpdateInstanceConfigReq": { + "description": "RegionInstanceGroupManagers.updatePerInstanceConfigs", + "id": "RegionInstanceGroupManagerUpdateInstanceConfigReq", + "properties": { + "perInstanceConfigs": { + "description": "The list of per-instance configurations to insert or patch on this managed\ninstance group.", + "items": { + "$ref": "PerInstanceConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersAbandonInstancesRequest": { + "id": "RegionInstanceGroupManagersAbandonInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to abandon. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersApplyUpdatesRequest": { + "description": "RegionInstanceGroupManagers.applyUpdatesToInstances", + "id": "RegionInstanceGroupManagersApplyUpdatesRequest", + "properties": { + "allInstances": { + "description": "Flag to update all instances instead of specified list of “instances”.\nIf the flag is set to true then the instances may not be specified\nin the request.", + "type": "boolean" + }, + "instances": { + "description": "The list of URLs of one or more instances for which you want to apply\nupdates. Each URL can be a full URL or a partial URL, such aszones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + }, + "minimalAction": { + "description": "The minimal action that you want to perform on each instance during the\nupdate:\n \n \n - REPLACE: At minimum, delete the instance and create it\n again. \n - RESTART: Stop the instance and start it\n again. \n - REFRESH: Do not stop the instance and limit\n disruption as much as possible. \n - NONE: Do not\n disrupt the instance at all.\n\n\nBy default, the minimum action is NONE. If your update\nrequires a more disruptive action than you set with this flag, the\nnecessary action is performed to execute the update.", + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART" + ], + "enumDescriptions": [ + "Do not perform any action.", + "Do not stop the instance.", + "(Default.) Replace the instance according to the replacement method\noption.", + "Stop the instance and start it again." + ], + "type": "string" + }, + "mostDisruptiveAllowedAction": { + "description": "The most disruptive action that you want to perform on each instance during\nthe update:\n \n \n - REPLACE: Delete the instance and create it again.\n - RESTART: Stop the instance and start it again.\n - REFRESH: Do not stop the instance and limit disruption\n as much as possible. \n - NONE: Do not disrupt the\n instance at all.\n\n\nBy default, the most disruptive allowed action is REPLACE. If\nyour update requires a more disruptive action than you set with this flag,\nthe update request will fail.", + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART" + ], + "enumDescriptions": [ + "Do not perform any action.", + "Do not stop the instance.", + "(Default.) Replace the instance according to the replacement method\noption.", + "Stop the instance and start it again." + ], + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersCreateInstancesRequest": { + "description": "RegionInstanceGroupManagers.createInstances", + "id": "RegionInstanceGroupManagersCreateInstancesRequest", + "properties": { + "instances": { + "description": "[Required] List of specifications of per-instance configs.", + "items": { + "$ref": "PerInstanceConfig" + }, + "type": "array" } }, "type": "object" }, - "RegionDiskTypeList": { - "id": "RegionDiskTypeList", + "RegionInstanceGroupManagersDeleteInstancesRequest": { + "id": "RegionInstanceGroupManagersDeleteInstancesRequest", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" + "instances": { + "description": "The URLs of one or more instances to delete. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" }, + "skipInstancesOnValidationError": { + "description": "Specifies whether the request should proceed despite the inclusion of\ninstances that are not members of the group or that are already in the\nprocess of being deleted or abandoned. If this field is set to `false` and\nsuch an instance is specified in the request, the operation fails. The\noperation always fails if the request contains a malformed instance URL or\na reference to an instance that exists in a zone or region other than the\ngroup's zone or region.", + "type": "boolean" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersListErrorsResponse": { + "id": "RegionInstanceGroupManagersListErrorsResponse", + "properties": { "items": { - "description": "A list of DiskType resources.", + "description": "[Output Only] The list of errors of the managed instance group.", "items": { - "$ref": "DiskType" + "$ref": "InstanceManagedByIgmError" }, "type": "array" }, - "kind": { - "default": "compute#regionDiskTypeList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#regionDiskTypeList for region disk types.", + "nextPageToken": { + "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersListInstanceConfigsResp": { + "id": "RegionInstanceGroupManagersListInstanceConfigsResp", + "properties": { + "items": { + "description": "Output only. [Output Only] The list of PerInstanceConfig.", + "items": { + "$ref": "PerInstanceConfig" + }, + "readOnly": true, + "type": "array" }, "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", + "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "readOnly": true, "type": "string" }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "Output only. [Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -79993,16 +88705,35 @@ "type": "string" } }, + "readOnly": true, "type": "object" } }, "type": "object" }, - "RegionDisksAddResourcePoliciesRequest": { - "id": "RegionDisksAddResourcePoliciesRequest", + "RegionInstanceGroupManagersListInstancesResponse": { + "id": "RegionInstanceGroupManagersListInstancesResponse", "properties": { - "resourcePolicies": { - "description": "Resource policies to be added to this disk.", + "managedInstances": { + "description": "A list of managed instances.", + "items": { + "$ref": "ManagedInstance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersRecreateRequest": { + "id": "RegionInstanceGroupManagersRecreateRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to recreate. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", "items": { "type": "string" }, @@ -80011,11 +88742,11 @@ }, "type": "object" }, - "RegionDisksRemoveResourcePoliciesRequest": { - "id": "RegionDisksRemoveResourcePoliciesRequest", + "RegionInstanceGroupManagersResumeInstancesRequest": { + "id": "RegionInstanceGroupManagersResumeInstancesRequest", "properties": { - "resourcePolicies": { - "description": "Resource policies to be removed from this disk.", + "instances": { + "description": "The URLs of one or more instances to resume. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", "items": { "type": "string" }, @@ -80024,30 +88755,83 @@ }, "type": "object" }, - "RegionDisksResizeRequest": { - "id": "RegionDisksResizeRequest", + "RegionInstanceGroupManagersSetTargetPoolsRequest": { + "id": "RegionInstanceGroupManagersSetTargetPoolsRequest", "properties": { - "sizeGb": { - "description": "The new size of the regional persistent disk, which is specified in GB.", - "format": "int64", + "fingerprint": { + "description": "Fingerprint of the target pools information, which is a hash of the\ncontents. This field is used for optimistic locking when you update the\ntarget pool entries. This field is optional.", + "format": "byte", "type": "string" + }, + "targetPools": { + "description": "The URL of all TargetPool resources to which instances in theinstanceGroup field are added. The target pools automatically\napply to all of the instances in the managed instance group.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" }, - "RegionDisksStartAsyncReplicationRequest": { - "id": "RegionDisksStartAsyncReplicationRequest", + "RegionInstanceGroupManagersSetTemplateRequest": { + "id": "RegionInstanceGroupManagersSetTemplateRequest", "properties": { - "asyncSecondaryDisk": { - "description": "The secondary disk to start asynchronous replication to.\nYou can provide this as a partial or full URL to the resource. For example,\nthe following are valid values:\n \n \n - \n https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk\n \n - \n https://www.googleapis.com/compute/v1/projects/project/regions/region/disks/disk\n \n - \n projects/project/zones/zone/disks/disk\n \n - \n projects/project/regions/region/disks/disk\n \n - \n zones/zone/disks/disk\n \n - \n regions/region/disks/disk", + "instanceTemplate": { + "description": "URL of the InstanceTemplate resource from which all new instances will be\ncreated.", "type": "string" } }, "type": "object" }, - "RegionInstanceGroupList": { - "description": "Contains a list of InstanceGroup resources.", - "id": "RegionInstanceGroupList", + "RegionInstanceGroupManagersStartInstancesRequest": { + "id": "RegionInstanceGroupManagersStartInstancesRequest", + "properties": { + "instances": { + "description": "The URLs of one or more instances to start. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersStopInstancesRequest": { + "id": "RegionInstanceGroupManagersStopInstancesRequest", + "properties": { + "forceStop": { + "description": "If this flag is set to true, the Instance Group Manager will proceed to\nstop the instances, skipping initialization on them.", + "type": "boolean" + }, + "instances": { + "description": "The URLs of one or more instances to stop. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersSuspendInstancesRequest": { + "id": "RegionInstanceGroupManagersSuspendInstancesRequest", + "properties": { + "forceSuspend": { + "description": "If this flag is set to true, the Instance Group Manager will proceed to\nsuspend the instances, skipping initialization on them.", + "type": "boolean" + }, + "instances": { + "description": "The URLs of one or more instances to suspend. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionInstanceGroupsListInstances": { + "id": "RegionInstanceGroupsListInstances", "properties": { "id": { "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", @@ -80055,14 +88839,14 @@ "type": "string" }, "items": { - "description": "A list of InstanceGroup resources.", + "description": "A list of InstanceWithNamedPorts resources.", "items": { - "$ref": "InstanceGroup" + "$ref": "InstanceWithNamedPorts" }, "type": "array" }, "kind": { - "default": "compute#regionInstanceGroupList", + "default": "compute#regionInstanceGroupsListInstances", "description": "Output only. The resource type.", "readOnly": true, "type": "string" @@ -80205,45 +88989,70 @@ }, "type": "object" }, - "RegionInstanceGroupManagerDeleteInstanceConfigReq": { - "description": "RegionInstanceGroupManagers.deletePerInstanceConfigs", - "id": "RegionInstanceGroupManagerDeleteInstanceConfigReq", + "RegionInstanceGroupsListInstancesRequest": { + "id": "RegionInstanceGroupsListInstancesRequest", "properties": { - "names": { - "description": "The list of instance names for which we want to delete per-instance configs\non this managed instance group.", + "instanceState": { + "description": "Instances in which state should be returned. Valid options are:\n'ALL', 'RUNNING'. By default, it lists all instances.", + "enum": [ + "ALL", + "RUNNING" + ], + "enumDescriptions": [ + "Matches any status of the instances, running, non-running and others.", + "Instance is in RUNNING state if it is running." + ], + "type": "string" + }, + "portName": { + "description": "Name of port user is interested in. It is optional. If it is set, only\ninformation about this ports will be returned. If it is not set, all the\nnamed ports will be returned.\nAlways lists all instances.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "type": "object" + }, + "RegionInstanceGroupsSetNamedPortsRequest": { + "id": "RegionInstanceGroupsSetNamedPortsRequest", + "properties": { + "fingerprint": { + "description": "The fingerprint of the named ports information for this instance group.\nUse this optional property to prevent conflicts when multiple users change\nthe named ports settings concurrently. Obtain the fingerprint with theinstanceGroups.get\nmethod. Then, include the fingerprint in your request to ensure that you\ndo not overwrite changes that were applied from another\nconcurrent request.", + "format": "byte", + "type": "string" + }, + "namedPorts": { + "description": "The list of named ports to set for this instance group.", "items": { - "type": "string" + "$ref": "NamedPort" }, "type": "array" } }, "type": "object" }, - "RegionInstanceGroupManagerList": { - "description": "Contains a list of managed instance groups.", - "id": "RegionInstanceGroupManagerList", + "RegionList": { + "description": "Contains a list of region resources.", + "id": "RegionList", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", - "readOnly": true, + "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of InstanceGroupManager resources.", + "description": "A list of Region resources.", "items": { - "$ref": "InstanceGroupManager" + "$ref": "Region" }, "type": "array" }, "kind": { - "default": "compute#regionInstanceGroupManagerList", - "description": "Output only. [Output Only] The resource type, which is always\ncompute#instanceGroupManagerList for a list of managed instance groups that\nexist in th regional scope.", + "default": "compute#regionList", + "description": "Output only. [Output Only] Type of resource. Always compute#regionList for\nlists of regions.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "readOnly": true, + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" }, "selfLink": { @@ -80252,7 +89061,7 @@ "type": "string" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -80373,170 +89182,503 @@ "type": "string" } }, + "type": "object" + } + }, + "type": "object" + }, + "RegionNetworkEndpointGroupsAttachEndpointsRequest": { + "id": "RegionNetworkEndpointGroupsAttachEndpointsRequest", + "properties": { + "networkEndpoints": { + "description": "The list of network endpoints to be attached.", + "items": { + "$ref": "NetworkEndpoint" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionNetworkEndpointGroupsDetachEndpointsRequest": { + "id": "RegionNetworkEndpointGroupsDetachEndpointsRequest", + "properties": { + "networkEndpoints": { + "description": "The list of network endpoints to be detached.", + "items": { + "$ref": "NetworkEndpoint" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse": { + "id": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse", + "properties": { + "firewallPolicys": { + "description": "Output only. [Output only] Effective firewalls from firewall policy. It applies to\nRegional Network Firewall Policies in the specified region, Global Network\nFirewall Policies and Hierachial Firewall Policies which are associated\nwith the network.", + "items": { + "$ref": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy" + }, + "readOnly": true, + "type": "array" + }, + "firewalls": { + "description": "Effective firewalls on the network.", + "items": { + "$ref": "Firewall" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy": { + "id": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy", + "properties": { + "displayName": { + "description": "Output only. [Output Only] The display name of the firewall policy.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Output only. [Output Only] The name of the firewall policy.", + "readOnly": true, + "type": "string" + }, + "packetMirroringRules": { + "description": "Output only. [Output only] The packet mirroring rules that apply to the network.", + "items": { + "$ref": "FirewallPolicyRule" + }, + "readOnly": true, + "type": "array" + }, + "priority": { + "description": "Output only. [Output only] Priority of firewall policy association. Not applicable for\ntype=HIERARCHY.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "rules": { + "description": "Output only. [Output only] The rules that apply to the network.", + "items": { + "$ref": "FirewallPolicyRule" + }, + "readOnly": true, + "type": "array" + }, + "type": { + "description": "Output only. [Output Only] The type of the firewall policy. Can be one of HIERARCHY,\nNETWORK, NETWORK_REGIONAL, SYSTEM_GLOBAL, SYSTEM_REGIONAL.", + "enum": [ + "HIERARCHY", + "NETWORK", + "NETWORK_REGIONAL", + "SYSTEM_GLOBAL", + "SYSTEM_REGIONAL", + "UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "RegionSetLabelsRequest": { + "id": "RegionSetLabelsRequest", + "properties": { + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource,\nused to detect conflicts. The fingerprint is initially generated by Compute\nEngine and changes after every request to modify or update labels. You must\nalways provide an up-to-date fingerprint hash in order to update or change\nlabels. Make a get() request to the resource to get the latest\nfingerprint.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels to set for this resource.", + "type": "object" + } + }, + "type": "object" + }, + "RegionSetPolicyRequest": { + "id": "RegionSetPolicyRequest", + "properties": { + "bindings": { + "description": "Flatten Policy to create a backwacd compatible wire-format.\nDeprecated. Use 'policy' to specify bindings.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "description": "Flatten Policy to create a backward compatible wire-format.\nDeprecated. Use 'policy' to specify the etag.", + "format": "byte", + "type": "string" + }, + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the 'resource'. The size of\nthe policy is limited to a few 10s of KB. An empty policy is in general a\nvalid policy but certain services (like Projects) might reject them." + } + }, + "type": "object" + }, + "RegionSnapshotUpdateKmsKeyRequest": { + "id": "RegionSnapshotUpdateKmsKeyRequest", + "properties": { + "kmsKeyName": { + "description": "Optional. The new KMS key to replace the current one on the snapshot. If empty, the\nsnapshot will be re-encrypted using the primary version of the snapshot's\ncurrent KMS key.\n\nThe KMS key can be provided in the following formats:\n \n \n - projects/project_id/locations/region/keyRings/region/cryptoKeys/key", + "type": "string" + } + }, + "type": "object" + }, + "RegionTargetHttpsProxiesSetSslCertificatesRequest": { + "id": "RegionTargetHttpsProxiesSetSslCertificatesRequest", + "properties": { + "sslCertificates": { + "description": "New set of SslCertificate resources to associate\nwith this TargetHttpsProxy resource.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RegionUrlMapsValidateRequest": { + "id": "RegionUrlMapsValidateRequest", + "properties": { + "resource": { + "$ref": "UrlMap", + "description": "Content of the UrlMap to be validated." + } + }, + "type": "object" + }, + "RequestMirrorPolicy": { + "description": "A policy that specifies how requests intended for the route's backends\nare shadowed to a separate mirrored backend service. The load balancer\ndoesn't wait for responses from the shadow service. Before sending traffic\nto the shadow service, the host or authority header is suffixed with-shadow.", + "id": "RequestMirrorPolicy", + "properties": { + "backendService": { + "description": "The full or partial URL to the BackendService resource being\nmirrored to.\n\nThe backend service configured for a mirroring\npolicy must reference backends that are of the same type as the original\nbackend service matched in the URL map.\n\nServerless NEG backends are not currently supported as a mirrored\nbackend service.", + "type": "string" + }, + "mirrorPercent": { + "description": "The percentage of requests to be mirrored to `backend_service`.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "Reservation": { + "description": "Represents a reservation resource. A reservation ensures that capacity is\nheld in a specific zone even if the reserved VMs are not running. For more\ninformation, read Reserving zonal\nresources.", + "id": "Reservation", + "properties": { + "advancedDeploymentControl": { + "$ref": "ReservationAdvancedDeploymentControl", + "description": "Advanced control for cluster management, applicable only to DENSE\ndeployment type reservations." + }, + "aggregateReservation": { + "$ref": "AllocationAggregateReservation", + "description": "Reservation for aggregated resources, providing shape flexibility." + }, + "commitment": { + "description": "Output only. [Output Only] Full or partial URL to a parent commitment. This field\ndisplays for reservations that are tied to a commitment.", + "readOnly": true, + "type": "string" + }, + "confidentialComputeType": { + "enum": [ + "CONFIDENTIAL_COMPUTE_TYPE_TDX", + "CONFIDENTIAL_COMPUTE_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Intel Trust Domain Extensions.", + "" + ], + "type": "string" + }, + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "deleteAfterDuration": { + "$ref": "Duration", + "description": "Duration time relative to reservation creation when Compute Engine will\nautomatically delete this resource." + }, + "deleteAtTime": { + "description": "Absolute time in future when the reservation will be\n auto-deleted by Compute Engine. Timestamp is represented inRFC3339 text format.", + "type": "string" + }, + "deploymentType": { + "description": "Specifies the deployment strategy for this reservation.", + "enum": [ + "DENSE", + "DEPLOYMENT_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "The reserved capacity is made up of densely deployed reservation blocks.", + "" + ], + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "earlyAccessMaintenance": { + "description": "Indicates the early access maintenance for the reservation.\nIf this field is absent or set to NO_EARLY_ACCESS, the reservation is not\nenrolled in early access maintenance and the standard notice applies.", + "enum": [ + "NO_EARLY_ACCESS", + "WAVE1", + "WAVE2" + ], + "enumDescriptions": [ + "No early access.", + "Wave 1: Fastest notification period", + "Wave 2: Medium notification period" + ], + "type": "string" + }, + "enableEmergentMaintenance": { + "description": "Indicates whether Compute Engine allows unplanned maintenance for your VMs;\nfor example, to fix hardware errors.", + "type": "boolean" + }, + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", "readOnly": true, - "type": "object" - } - }, - "type": "object" - }, - "RegionInstanceGroupManagerPatchInstanceConfigReq": { - "description": "RegionInstanceGroupManagers.patchPerInstanceConfigs", - "id": "RegionInstanceGroupManagerPatchInstanceConfigReq", - "properties": { - "perInstanceConfigs": { - "description": "The list of per-instance configurations to insert or patch on this managed\ninstance group.", - "items": { - "$ref": "PerInstanceConfig" - }, - "type": "array" - } - }, - "type": "object" - }, - "RegionInstanceGroupManagerUpdateInstanceConfigReq": { - "description": "RegionInstanceGroupManagers.updatePerInstanceConfigs", - "id": "RegionInstanceGroupManagerUpdateInstanceConfigReq", - "properties": { - "perInstanceConfigs": { - "description": "The list of per-instance configurations to insert or patch on this managed\ninstance group.", - "items": { - "$ref": "PerInstanceConfig" - }, - "type": "array" - } - }, - "type": "object" - }, - "RegionInstanceGroupManagersAbandonInstancesRequest": { - "id": "RegionInstanceGroupManagersAbandonInstancesRequest", - "properties": { - "instances": { - "description": "The URLs of one or more instances to abandon. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "type": "string" + }, + "kind": { + "default": "compute#reservation", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#reservations for reservations.", + "readOnly": true, + "type": "string" + }, + "linkedCommitments": { + "description": "Output only. [Output Only] Full or partial URL to parent commitments. This field\ndisplays for reservations that are tied to multiple commitments.", "items": { "type": "string" }, + "readOnly": true, "type": "array" - } - }, - "type": "object" - }, - "RegionInstanceGroupManagersApplyUpdatesRequest": { - "description": "RegionInstanceGroupManagers.applyUpdatesToInstances", - "id": "RegionInstanceGroupManagersApplyUpdatesRequest", - "properties": { - "allInstances": { - "description": "Flag to update all instances instead of specified list of “instances”.\nIf the flag is set to true then the instances may not be specified\nin the request.", - "type": "boolean" }, - "instances": { - "description": "The list of URLs of one or more instances for which you want to apply\nupdates. Each URL can be a full URL or a partial URL, such aszones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { + "name": { + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "description": "The name of the resource, provided by the client when initially creating\nthe resource. The resource name must be 1-63 characters long, and comply\nwithRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "params": { + "$ref": "ReservationParams", + "description": "Input only. Additional params passed with the request, but not persisted\nas part of resource payload." + }, + "protectionTier": { + "description": "Protection tier for the workload which specifies the workload expectations\nin the event of infrastructure failures at data center (e.g. power\nand/or cooling failures).", + "enum": [ + "CAPACITY_OPTIMIZED", + "PROTECTION_TIER_UNSPECIFIED", + "STANDARD" + ], + "enumDescriptions": [ + "CAPACITY_OPTIMIZED capacity leverages redundancies (e.g. power, cooling)\nat the data center during normal operating conditions. In the event of\ninfrastructure failures at data center (e.g. power and/or cooling\nfailures), this workload may be disrupted. As a consequence, it has a\nweaker availability SLO than STANDARD.", + "Unspecified protection tier.", + "STANDARD protection for workload that should be protected by redundancies\n(e.g. power, cooling) at the data center level. In the event of\ninfrastructure failures at data center (e.g. power and/or cooling\nfailures), this workload is expected to continue as normal using the\nredundancies." + ], + "type": "string" + }, + "reservationSharingPolicy": { + "$ref": "AllocationReservationSharingPolicy", + "description": "Specify the reservation sharing policy. If unspecified, the reservation\nwill not be shared with Google Cloud managed services." + }, + "resourcePolicies": { + "additionalProperties": { "type": "string" }, - "type": "array" + "description": "Resource policies to be added to this reservation. The key is defined by\nuser, and the value is resource policy url. This is to define placement\npolicy with reservation.", + "type": "object" }, - "minimalAction": { - "description": "The minimal action that you want to perform on each instance during the\nupdate:\n \n \n - REPLACE: At minimum, delete the instance and create it\n again. \n - RESTART: Stop the instance and start it\n again. \n - REFRESH: Do not stop the instance and limit\n disruption as much as possible. \n - NONE: Do not\n disrupt the instance at all.\n\n\nBy default, the minimum action is NONE. If your update\nrequires a more disruptive action than you set with this flag, the\nnecessary action is performed to execute the update.", + "resourceStatus": { + "$ref": "AllocationResourceStatus", + "description": "Output only. [Output Only] Status information for Reservation resource.", + "readOnly": true + }, + "satisfiesPzs": { + "description": "Output only. [Output Only] Reserved for future use.", + "readOnly": true, + "type": "boolean" + }, + "schedulingType": { + "description": "The type of maintenance for the reservation.", "enum": [ - "NONE", - "REFRESH", - "REPLACE", - "RESTART" + "GROUPED", + "GROUP_MAINTENANCE_TYPE_UNSPECIFIED", + "INDEPENDENT" ], "enumDescriptions": [ - "Do not perform any action.", - "Do not stop the instance.", - "(Default.) Replace the instance according to the replacement method\noption.", - "Stop the instance and start it again." + "Maintenance on all reserved instances in the reservation is synchronized.", + "Unknown maintenance type.", + "Maintenance is not synchronized for this reservation. Instead, each\ninstance has its own maintenance window." ], "type": "string" }, - "mostDisruptiveAllowedAction": { - "description": "The most disruptive action that you want to perform on each instance during\nthe update:\n \n \n - REPLACE: Delete the instance and create it again.\n - RESTART: Stop the instance and start it again.\n - REFRESH: Do not stop the instance and limit disruption\n as much as possible. \n - NONE: Do not disrupt the\n instance at all.\n\n\nBy default, the most disruptive allowed action is REPLACE. If\nyour update requires a more disruptive action than you set with this flag,\nthe update request will fail.", + "selfLink": { + "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", + "readOnly": true, + "type": "string" + }, + "shareSettings": { + "$ref": "ShareSettings", + "description": "Specify share-settings to create a shared reservation. This property is\noptional. For more information about the syntax and options for this\nfield and its subfields, see the guide for creating\na shared reservation." + }, + "specificReservation": { + "$ref": "AllocationSpecificSKUReservation", + "description": "Reservation for instances with specific machine shapes." + }, + "specificReservationRequired": { + "description": "Indicates whether the reservation can be consumed by VMs with affinity\nfor \"any\" reservation. If the field is set, then only VMs that target\nthe reservation by name can consume from this reservation.", + "type": "boolean" + }, + "status": { + "description": "Output only. [Output Only] The status of the reservation.\n \n \n - CREATING: Reservation resources are being\n allocated.\n - READY: Reservation resources have been allocated,\n and the reservation is ready for use.\n - DELETING: Reservation deletion is in progress.\n - UPDATING: Reservation update is in progress.", "enum": [ - "NONE", - "REFRESH", - "REPLACE", - "RESTART" + "CREATING", + "DELETING", + "INVALID", + "READY", + "UPDATING" ], "enumDescriptions": [ - "Do not perform any action.", - "Do not stop the instance.", - "(Default.) Replace the instance according to the replacement method\noption.", - "Stop the instance and start it again." + "Reservation resources are being allocated.", + "Reservation deletion is in progress.", + "", + "Reservation resources have been allocated, and the reservation is ready\nfor use.", + "Reservation update is in progress." ], + "readOnly": true, + "type": "string" + }, + "zone": { + "description": "Zone in which the reservation resides. A zone must be provided if the\nreservation is created within a commitment.", "type": "string" } }, "type": "object" }, - "RegionInstanceGroupManagersCreateInstancesRequest": { - "description": "RegionInstanceGroupManagers.createInstances", - "id": "RegionInstanceGroupManagersCreateInstancesRequest", + "ReservationAdvancedDeploymentControl": { + "description": "Advance control for cluster management, applicable only to DENSE deployment\ntype reservations.", + "id": "ReservationAdvancedDeploymentControl", "properties": { - "instances": { - "description": "[Required] List of specifications of per-instance configs.", - "items": { - "$ref": "PerInstanceConfig" - }, - "type": "array" + "reservationOperationalMode": { + "description": "Indicates chosen reservation operational mode for the reservation.", + "enum": [ + "ALL_CAPACITY", + "HIGHLY_AVAILABLE_CAPACITY", + "RESERVATION_OPERATIONAL_MODE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Google Cloud does not manage the failure of machines, but provides\nadditional capacity, which is not guaranteed to be available.", + "Google Cloud manages the failure of machines to provide high\navailability.", + "" + ], + "type": "string" } }, "type": "object" }, - "RegionInstanceGroupManagersDeleteInstancesRequest": { - "id": "RegionInstanceGroupManagersDeleteInstancesRequest", + "ReservationAffinity": { + "description": "Specifies the reservations that this instance can consume from.", + "id": "ReservationAffinity", "properties": { - "instances": { - "description": "The URLs of one or more instances to delete. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "consumeReservationType": { + "description": "Specifies the type of reservation from which this instance can consume\nresources: ANY_RESERVATION (default),SPECIFIC_RESERVATION, or NO_RESERVATION. See\nConsuming reserved instances for examples.", + "enum": [ + "ANY_RESERVATION", + "NO_RESERVATION", + "SPECIFIC_RESERVATION", + "UNSPECIFIED" + ], + "enumDescriptions": [ + "Consume any allocation available.", + "Do not consume from any allocated capacity.", + "Must consume from a specific reservation. Must specify key value fields\nfor specifying the reservations.", + "" + ], + "type": "string" + }, + "key": { + "description": "Corresponds to the label key of a reservation resource. To target aSPECIFIC_RESERVATION by name, specifygoogleapis.com/reservation-name as the key and specify\nthe name of your reservation as its value.", + "type": "string" + }, + "values": { + "description": "Corresponds to the label values of a reservation resource. This can be\neither a name to a reservation in the same project or\n\"projects/different-project/reservations/some-reservation-name\" to target a\nshared reservation in the same zone but in a different project.", "items": { "type": "string" }, "type": "array" - }, - "skipInstancesOnValidationError": { - "description": "Specifies whether the request should proceed despite the inclusion of\ninstances that are not members of the group or that are already in the\nprocess of being deleted or abandoned. If this field is set to `false` and\nsuch an instance is specified in the request, the operation fails. The\noperation always fails if the request contains a malformed instance URL or\na reference to an instance that exists in a zone or region other than the\ngroup's zone or region.", - "type": "boolean" } }, "type": "object" }, - "RegionInstanceGroupManagersListErrorsResponse": { - "id": "RegionInstanceGroupManagersListErrorsResponse", + "ReservationAggregatedList": { + "description": "Contains a list of reservations.", + "id": "ReservationAggregatedList", "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, "items": { - "description": "[Output Only] The list of errors of the managed instance group.", - "items": { - "$ref": "InstanceManagedByIgmError" + "additionalProperties": { + "$ref": "ReservationsScopedList", + "description": "Name of the scope containing this set of reservations." }, - "type": "array" + "description": "A list of Allocation resources.", + "type": "object" + }, + "kind": { + "default": "compute#reservationAggregatedList", + "description": "Output only. Type of resource.", + "readOnly": true, + "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", "readOnly": true, "type": "string" - } - }, - "type": "object" - }, - "RegionInstanceGroupManagersListInstanceConfigsResp": { - "id": "RegionInstanceGroupManagersListInstanceConfigsResp", - "properties": { - "items": { - "description": "Output only. [Output Only] The list of PerInstanceConfig.", + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", "items": { - "$ref": "PerInstanceConfig" + "type": "string" }, "readOnly": true, "type": "array" }, - "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "readOnly": true, - "type": "string" - }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -80657,164 +89799,246 @@ "type": "string" } }, - "readOnly": true, "type": "object" } }, "type": "object" }, - "RegionInstanceGroupManagersListInstancesResponse": { - "id": "RegionInstanceGroupManagersListInstancesResponse", + "ReservationBlock": { + "description": "Represents a reservation block resource.", + "id": "ReservationBlock", "properties": { - "managedInstances": { - "description": "A list of managed instances.", - "items": { - "$ref": "ManagedInstance" - }, - "type": "array" + "count": { + "description": "Output only. [Output Only] The number of resources that are allocated in this\nreservation block.", + "format": "int32", + "readOnly": true, + "type": "integer" }, - "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339 text format.", + "readOnly": true, + "type": "string" + }, + "healthInfo": { + "$ref": "ReservationBlockHealthInfo", + "description": "Output only. [Output Only] Health information for the reservation block.", + "readOnly": true + }, + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "inUseCount": { + "description": "Output only. [Output Only] The number of instances that are currently in use on this\nreservation block.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "inUseHostCount": { + "description": "Output only. Number of hosts currently in use. If there is one or more Instances running\non the host, it is considered in use.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "kind": { + "default": "compute#reservationBlock", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#reservationBlock for reservation blocks.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Output only. [Output Only] The name of this reservation block generated by Google\nCompute Engine. The name must be 1-63 characters long, and comply with\nRFC1035 @pattern [a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "readOnly": true, + "type": "string" + }, + "physicalTopology": { + "$ref": "ReservationBlockPhysicalTopology", + "description": "Output only. [Output Only] The physical topology of the reservation block.", + "readOnly": true + }, + "reservationMaintenance": { + "$ref": "GroupMaintenanceInfo", + "description": "Output only. [Output Only] Maintenance information for this reservation block.", + "readOnly": true + }, + "reservationSubBlockCount": { + "description": "Output only. [Output Only] The number of reservation subBlocks associated with this\nreservation block.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "reservationSubBlockInUseCount": { + "description": "Output only. [Output Only] The number of in-use reservation subBlocks associated with\nthis reservation block. If at least one VM is running on a subBlock, it is\nconsidered in-use.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", + "readOnly": true, + "type": "string" + }, + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Output only. [Output Only] Status of the reservation block.", + "enum": [ + "CREATING", + "DELETING", + "INVALID", + "READY" + ], + "enumDescriptions": [ + "Resources are being allocated for the reservation block.", + "Reservation block is currently being deleted.", + "", + "Reservation block has allocated all its resources." + ], + "readOnly": true, + "type": "string" + }, + "zone": { + "description": "Output only. [Output Only] Zone in which the reservation block resides.", "readOnly": true, "type": "string" } }, "type": "object" }, - "RegionInstanceGroupManagersRecreateRequest": { - "id": "RegionInstanceGroupManagersRecreateRequest", + "ReservationBlockHealthInfo": { + "description": "Health information for the reservation block.", + "id": "ReservationBlockHealthInfo", "properties": { - "instances": { - "description": "The URLs of one or more instances to recreate. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - }, - "type": "array" + "degradedSubBlockCount": { + "description": "The number of subBlocks that are degraded.", + "format": "int32", + "type": "integer" + }, + "healthStatus": { + "description": "The health status of the reservation block.", + "enum": [ + "DEGRADED", + "HEALTHY", + "HEALTH_STATUS_UNSPECIFIED" + ], + "enumDescriptions": [ + "The reservation block is degraded.", + "The reservation block is healthy.", + "The health status of the reservation block is unspecified." + ], + "type": "string" + }, + "healthySubBlockCount": { + "description": "The number of subBlocks that are healthy.", + "format": "int32", + "type": "integer" } }, "type": "object" }, - "RegionInstanceGroupManagersResumeInstancesRequest": { - "id": "RegionInstanceGroupManagersResumeInstancesRequest", + "ReservationBlockPhysicalTopology": { + "id": "ReservationBlockPhysicalTopology", "properties": { + "block": { + "description": "The hash of the capacity block within the cluster.", + "type": "string" + }, + "cluster": { + "description": "The cluster name of the reservation block.", + "type": "string" + }, "instances": { - "description": "The URLs of one or more instances to resume. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "description": "Output only. The detailed instances information for a given Block", "items": { - "type": "string" + "$ref": "ReservationBlockPhysicalTopologyInstance" }, + "readOnly": true, "type": "array" } }, "type": "object" }, - "RegionInstanceGroupManagersSetTargetPoolsRequest": { - "id": "RegionInstanceGroupManagersSetTargetPoolsRequest", + "ReservationBlockPhysicalTopologyInstance": { + "description": "The instances information for a given Block", + "id": "ReservationBlockPhysicalTopologyInstance", "properties": { - "fingerprint": { - "description": "Fingerprint of the target pools information, which is a hash of the\ncontents. This field is used for optimistic locking when you update the\ntarget pool entries. This field is optional.", - "format": "byte", + "instanceId": { + "description": "The InstanceId of the instance", + "format": "uint64", "type": "string" }, - "targetPools": { - "description": "The URL of all TargetPool resources to which instances in theinstanceGroup field are added. The target pools automatically\napply to all of the instances in the managed instance group.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "RegionInstanceGroupManagersSetTemplateRequest": { - "id": "RegionInstanceGroupManagersSetTemplateRequest", - "properties": { - "instanceTemplate": { - "description": "URL of the InstanceTemplate resource from which all new instances will be\ncreated.", + "physicalHostTopology": { + "$ref": "ReservationBlockPhysicalTopologyInstancePhysicalHostTopology", + "description": "Output only. The PhysicalHostTopology of instances within a Block resource.", + "readOnly": true + }, + "projectId": { + "description": "Project where the instance lives", + "format": "uint64", "type": "string" } }, "type": "object" }, - "RegionInstanceGroupManagersStartInstancesRequest": { - "id": "RegionInstanceGroupManagersStartInstancesRequest", - "properties": { - "instances": { - "description": "The URLs of one or more instances to start. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "RegionInstanceGroupManagersStopInstancesRequest": { - "id": "RegionInstanceGroupManagersStopInstancesRequest", + "ReservationBlockPhysicalTopologyInstancePhysicalHostTopology": { + "description": "The PhysicalHostTopology of the instance within a Block resource.", + "id": "ReservationBlockPhysicalTopologyInstancePhysicalHostTopology", "properties": { - "forceStop": { - "description": "If this flag is set to true, the Instance Group Manager will proceed to\nstop the instances, skipping initialization on them.", - "type": "boolean" + "host": { + "description": "Host hash for a given instance", + "type": "string" }, - "instances": { - "description": "The URLs of one or more instances to stop. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - }, - "type": "array" + "subBlock": { + "description": "Sub block hash for a given instance", + "type": "string" } }, "type": "object" }, - "RegionInstanceGroupManagersSuspendInstancesRequest": { - "id": "RegionInstanceGroupManagersSuspendInstancesRequest", + "ReservationBlocksGetResponse": { + "id": "ReservationBlocksGetResponse", "properties": { - "forceSuspend": { - "description": "If this flag is set to true, the Instance Group Manager will proceed to\nsuspend the instances, skipping initialization on them.", - "type": "boolean" - }, - "instances": { - "description": "The URLs of one or more instances to suspend. This can be a full URL or\na partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", - "items": { - "type": "string" - }, - "type": "array" + "resource": { + "$ref": "ReservationBlock" } }, "type": "object" }, - "RegionInstanceGroupsListInstances": { - "id": "RegionInstanceGroupsListInstances", + "ReservationBlocksListResponse": { + "description": "A list of reservation blocks under a single reservation.", + "id": "ReservationBlocksListResponse", "properties": { "id": { - "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", - "readOnly": true, + "description": "Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of InstanceWithNamedPorts resources.", + "description": "A list of reservation block resources.", "items": { - "$ref": "InstanceWithNamedPorts" + "$ref": "ReservationBlock" }, "type": "array" }, "kind": { - "default": "compute#regionInstanceGroupsListInstances", - "description": "Output only. The resource type.", - "readOnly": true, + "default": "compute#reservationBlock", + "description": "Type of the resource. Alwayscompute#reservationBlock for a list of reservation blocks.", "type": "string" }, "nextPageToken": { - "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "readOnly": true, + "description": "This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, + "description": "Server-defined URL for this resource.", "type": "string" }, "warning": { - "description": "Output only. [Output Only] Informational warning message.", + "description": "Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -80935,71 +90159,28 @@ "type": "string" } }, - "readOnly": true, "type": "object" } }, "type": "object" }, - "RegionInstanceGroupsListInstancesRequest": { - "id": "RegionInstanceGroupsListInstancesRequest", - "properties": { - "instanceState": { - "description": "Instances in which state should be returned. Valid options are:\n'ALL', 'RUNNING'. By default, it lists all instances.", - "enum": [ - "ALL", - "RUNNING" - ], - "enumDescriptions": [ - "Matches any status of the instances, running, non-running and others.", - "Instance is in RUNNING state if it is running." - ], - "type": "string" - }, - "portName": { - "description": "Name of port user is interested in. It is optional. If it is set, only\ninformation about this ports will be returned. If it is not set, all the\nnamed ports will be returned.\nAlways lists all instances.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - } - }, - "type": "object" - }, - "RegionInstanceGroupsSetNamedPortsRequest": { - "id": "RegionInstanceGroupsSetNamedPortsRequest", - "properties": { - "fingerprint": { - "description": "The fingerprint of the named ports information for this instance group.\nUse this optional property to prevent conflicts when multiple users change\nthe named ports settings concurrently. Obtain the fingerprint with theinstanceGroups.get\nmethod. Then, include the fingerprint in your request to ensure that you\ndo not overwrite changes that were applied from another\nconcurrent request.", - "format": "byte", - "type": "string" - }, - "namedPorts": { - "description": "The list of named ports to set for this instance group.", - "items": { - "$ref": "NamedPort" - }, - "type": "array" - } - }, - "type": "object" - }, - "RegionList": { - "description": "Contains a list of region resources.", - "id": "RegionList", + "ReservationList": { + "id": "ReservationList", "properties": { "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "type": "string" }, "items": { - "description": "A list of Region resources.", + "description": "[Output Only] A list of Allocation resources.", "items": { - "$ref": "Region" + "$ref": "Reservation" }, "type": "array" }, "kind": { - "default": "compute#regionList", - "description": "Output only. [Output Only] Type of resource. Always compute#regionList for\nlists of regions.", + "default": "compute#reservationList", + "description": "Output only. [Output Only] Type of resource.Always compute#reservationsList\nfor listsof reservations", "readOnly": true, "type": "string" }, @@ -81139,429 +90320,172 @@ }, "type": "object" }, - "RegionNetworkEndpointGroupsAttachEndpointsRequest": { - "id": "RegionNetworkEndpointGroupsAttachEndpointsRequest", - "properties": { - "networkEndpoints": { - "description": "The list of network endpoints to be attached.", - "items": { - "$ref": "NetworkEndpoint" - }, - "type": "array" - } - }, - "type": "object" - }, - "RegionNetworkEndpointGroupsDetachEndpointsRequest": { - "id": "RegionNetworkEndpointGroupsDetachEndpointsRequest", + "ReservationParams": { + "description": "Additional reservation params.", + "id": "ReservationParams", "properties": { - "networkEndpoints": { - "description": "The list of network endpoints to be detached.", - "items": { - "$ref": "NetworkEndpoint" + "resourceManagerTags": { + "additionalProperties": { + "type": "string" }, - "type": "array" + "description": "Input only. Resource manager tags to be bound to the reservation. Tag keys and\nvalues have the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "type": "object" } }, "type": "object" }, - "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse": { - "id": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse", + "ReservationSlot": { + "description": "Represents a reservation slot resource.", + "id": "ReservationSlot", "properties": { - "firewallPolicys": { - "description": "Output only. [Output only] Effective firewalls from firewall policy. It applies to\nRegional Network Firewall Policies in the specified region, Global Network\nFirewall Policies and Hierachial Firewall Policies which are associated\nwith the network.", - "items": { - "$ref": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy" - }, + "creationTimestamp": { + "description": "Output only. [Output Only] The creation timestamp, formatted asRFC3339 text.", "readOnly": true, - "type": "array" + "type": "string" }, - "firewalls": { - "description": "Effective firewalls on the network.", - "items": { - "$ref": "Firewall" - }, - "type": "array" - } - }, - "type": "object" - }, - "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy": { - "id": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy", - "properties": { - "displayName": { - "description": "Output only. [Output Only] The display name of the firewall policy.", + "id": { + "description": "Output only. [Output Only] The unique identifier for this resource. This identifier is\ndefined by the server.", + "format": "uint64", "readOnly": true, "type": "string" }, - "name": { - "description": "Output only. [Output Only] The name of the firewall policy.", + "kind": { + "default": "compute#reservationSlot", + "description": "Output only. [Output Only] The type of resource. Alwayscompute#reservationSlot for reservation slots.", "readOnly": true, "type": "string" }, - "packetMirroringRules": { - "description": "Output only. [Output only] The packet mirroring rules that apply to the network.", - "items": { - "$ref": "FirewallPolicyRule" - }, + "name": { + "description": "Output only. [Output Only] The name of the reservation slot.", "readOnly": true, - "type": "array" + "type": "string" }, - "priority": { - "description": "Output only. [Output only] Priority of firewall policy association. Not applicable for\ntype=HIERARCHY.", - "format": "int32", + "physicalTopology": { + "$ref": "ReservationSlotPhysicalTopology", + "deprecated": true, + "description": "Output only. [Output Only] The physical topology of the reservation slot.", + "readOnly": true + }, + "selfLink": { + "description": "Output only. [Output Only] A server-defined fully-qualified URL for this resource.", "readOnly": true, - "type": "integer" + "type": "string" }, - "rules": { - "description": "Output only. [Output only] The rules that apply to the network.", - "items": { - "$ref": "FirewallPolicyRule" - }, + "selfLinkWithId": { + "description": "Output only. [Output Only] A server-defined URL for this resource with the resource ID.", "readOnly": true, - "type": "array" + "type": "string" }, - "type": { - "description": "Output only. [Output Only] The type of the firewall policy. Can be one of HIERARCHY,\nNETWORK, NETWORK_REGIONAL, SYSTEM_GLOBAL, SYSTEM_REGIONAL.", + "shareSettings": { + "$ref": "ShareSettings", + "description": "Specify share settings to create a shared slot. Set to empty\nto inherit the share settings from a parent resource." + }, + "state": { + "description": "Output only. [Output Only] The state of the reservation slot.", "enum": [ - "HIERARCHY", - "NETWORK", - "NETWORK_REGIONAL", - "SYSTEM_GLOBAL", - "SYSTEM_REGIONAL", - "UNSPECIFIED" + "ACTIVE", + "CREATING", + "DELETING", + "STATE_UNSPECIFIED", + "UNAVAILABLE" ], "enumDescriptions": [ + "The reservation slot has allocated all its resources.", + "The resources are being allocated for the reservation slot.", + "The reservation slot is currently being deleted.", "", - "", - "", - "", - "", - "" + "The reservation slot is currently unavailable." ], "readOnly": true, "type": "string" - } - }, - "type": "object" - }, - "RegionSetLabelsRequest": { - "id": "RegionSetLabelsRequest", - "properties": { - "labelFingerprint": { - "description": "The fingerprint of the previous set of labels for this resource,\nused to detect conflicts. The fingerprint is initially generated by Compute\nEngine and changes after every request to modify or update labels. You must\nalways provide an up-to-date fingerprint hash in order to update or change\nlabels. Make a get() request to the resource to get the latest\nfingerprint.", - "format": "byte", - "type": "string" }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "The labels to set for this resource.", - "type": "object" + "status": { + "$ref": "ReservationSlotStatus", + "description": "Output only. [Output Only] The status of the reservation slot.", + "readOnly": true + }, + "zone": { + "description": "Output only. [Output Only] The zone in which the reservation slot resides.", + "readOnly": true, + "type": "string" } }, "type": "object" }, - "RegionSetPolicyRequest": { - "id": "RegionSetPolicyRequest", + "ReservationSlotPhysicalTopology": { + "id": "ReservationSlotPhysicalTopology", "properties": { - "bindings": { - "description": "Flatten Policy to create a backwacd compatible wire-format.\nDeprecated. Use 'policy' to specify bindings.", - "items": { - "$ref": "Binding" - }, - "type": "array" + "block": { + "description": "The unique identifier of the capacity block within the cluster.", + "type": "string" }, - "etag": { - "description": "Flatten Policy to create a backward compatible wire-format.\nDeprecated. Use 'policy' to specify the etag.", - "format": "byte", + "cluster": { + "description": "The cluster name of the reservation sub-block.", "type": "string" }, - "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the 'resource'. The size of\nthe policy is limited to a few 10s of KB. An empty policy is in general a\nvalid policy but certain services (like Projects) might reject them." - } - }, - "type": "object" - }, - "RegionTargetHttpsProxiesSetSslCertificatesRequest": { - "id": "RegionTargetHttpsProxiesSetSslCertificatesRequest", - "properties": { - "sslCertificates": { - "description": "New set of SslCertificate resources to associate\nwith this TargetHttpsProxy resource.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "RegionUrlMapsValidateRequest": { - "id": "RegionUrlMapsValidateRequest", - "properties": { - "resource": { - "$ref": "UrlMap", - "description": "Content of the UrlMap to be validated." - } - }, - "type": "object" - }, - "RequestMirrorPolicy": { - "description": "A policy that specifies how requests intended for the route's backends\nare shadowed to a separate mirrored backend service. The load balancer\ndoesn't wait for responses from the shadow service. Before sending traffic\nto the shadow service, the host or authority header is suffixed with-shadow.", - "id": "RequestMirrorPolicy", - "properties": { - "backendService": { - "description": "The full or partial URL to the BackendService resource being\nmirrored to.\n\nThe backend service configured for a mirroring\npolicy must reference backends that are of the same type as the original\nbackend service matched in the URL map.\n\nServerless NEG backends are not currently supported as a mirrored\nbackend service.", + "host": { + "description": "The unique identifier of the capacity host within the capacity sub-block.", "type": "string" }, - "mirrorPercent": { - "description": "The percentage of requests to be mirrored to `backend_service`.", - "format": "double", - "type": "number" + "subBlock": { + "description": "The unique identifier of the capacity sub-block within the capacity\nblock.", + "type": "string" } }, "type": "object" }, - "Reservation": { - "description": "Represents a reservation resource. A reservation ensures that capacity is\nheld in a specific zone even if the reserved VMs are not running. For more\ninformation, read Reserving zonal\nresources.", - "id": "Reservation", + "ReservationSlotStatus": { + "id": "ReservationSlotStatus", "properties": { - "advancedDeploymentControl": { - "$ref": "ReservationAdvancedDeploymentControl", - "description": "Advanced control for cluster management, applicable only to DENSE\ndeployment type reservations." - }, - "aggregateReservation": { - "$ref": "AllocationAggregateReservation", - "description": "Reservation for aggregated resources, providing shape flexibility." - }, - "commitment": { - "description": "Output only. [Output Only] Full or partial URL to a parent commitment. This field\ndisplays for reservations that are tied to a commitment.", - "readOnly": true, - "type": "string" - }, - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "deleteAfterDuration": { - "$ref": "Duration", - "description": "Duration time relative to reservation creation when Compute Engine will\nautomatically delete this resource." - }, - "deleteAtTime": { - "description": "Absolute time in future when the reservation will be\n auto-deleted by Compute Engine. Timestamp is represented inRFC3339 text format.", - "type": "string" - }, - "deploymentType": { - "description": "Specifies the deployment strategy for this reservation.", - "enum": [ - "DENSE", - "DEPLOYMENT_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "The reserved capacity is made up of densely deployed reservation blocks.", - "" - ], - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "earlyAccessMaintenance": { - "description": "Indicates the early access maintenance for the reservation.\nIf this field is absent or set to NO_EARLY_ACCESS, the reservation is not\nenrolled in early access maintenance and the standard notice applies.", - "enum": [ - "NO_EARLY_ACCESS", - "WAVE1", - "WAVE2" - ], - "enumDescriptions": [ - "No early access.", - "Wave 1: Fastest notification period", - "Wave 2: Medium notification period" - ], - "type": "string" - }, - "enableEmergentMaintenance": { - "description": "Indicates whether Compute Engine allows unplanned maintenance for your VMs;\nfor example, to fix hardware errors.", - "type": "boolean" - }, - "id": { - "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "readOnly": true, - "type": "string" - }, - "kind": { - "default": "compute#reservation", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#reservations for reservations.", - "readOnly": true, - "type": "string" - }, - "linkedCommitments": { - "description": "Output only. [Output Only] Full or partial URL to parent commitments. This field\ndisplays for reservations that are tied to multiple commitments.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, - "name": { - "annotations": { - "required": [ - "compute.instances.insert" - ] - }, - "description": "The name of the resource, provided by the client when initially creating\nthe resource. The resource name must be 1-63 characters long, and comply\nwithRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "params": { - "$ref": "ReservationParams", - "description": "Input only. Additional params passed with the request, but not persisted\nas part of resource payload." - }, - "protectionTier": { - "description": "Protection tier for the workload which specifies the workload expectations\nin the event of infrastructure failures at data center (e.g. power\nand/or cooling failures).", - "enum": [ - "CAPACITY_OPTIMIZED", - "PROTECTION_TIER_UNSPECIFIED", - "STANDARD" - ], - "enumDescriptions": [ - "CAPACITY_OPTIMIZED capacity leverages redundancies (e.g. power, cooling)\nat the data center during normal operating conditions. In the event of\ninfrastructure failures at data center (e.g. power and/or cooling\nfailures), this workload may be disrupted. As a consequence, it has a\nweaker availability SLO than STANDARD.", - "Unspecified protection tier.", - "STANDARD protection for workload that should be protected by redundancies\n(e.g. power, cooling) at the data center level. In the event of\ninfrastructure failures at data center (e.g. power and/or cooling\nfailures), this workload is expected to continue as normal using the\nredundancies." - ], - "type": "string" - }, - "reservationSharingPolicy": { - "$ref": "AllocationReservationSharingPolicy", - "description": "Specify the reservation sharing policy. If unspecified, the reservation\nwill not be shared with Google Cloud managed services." - }, - "resourcePolicies": { - "additionalProperties": { - "type": "string" - }, - "description": "Resource policies to be added to this reservation. The key is defined by\nuser, and the value is resource policy url. This is to define placement\npolicy with reservation.", - "type": "object" - }, - "resourceStatus": { - "$ref": "AllocationResourceStatus", - "description": "Output only. [Output Only] Status information for Reservation resource.", + "physicalTopology": { + "$ref": "ReservationSlotPhysicalTopology", + "description": "Output only. [Output Only] The physical topology of the reservation sub-block.", "readOnly": true }, - "satisfiesPzs": { - "description": "Output only. [Output Only] Reserved for future use.", - "readOnly": true, - "type": "boolean" - }, - "schedulingType": { - "description": "The type of maintenance for the reservation.", - "enum": [ - "GROUPED", - "GROUP_MAINTENANCE_TYPE_UNSPECIFIED", - "INDEPENDENT" - ], - "enumDescriptions": [ - "Maintenance on all reserved instances in the reservation is synchronized.", - "Unknown maintenance type.", - "Maintenance is not synchronized for this reservation. Instead, each\ninstance has its own maintenance window." - ], - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", - "readOnly": true, - "type": "string" - }, - "shareSettings": { - "$ref": "ShareSettings", - "description": "Specify share-settings to create a shared reservation. This property is\noptional. For more information about the syntax and options for this\nfield and its subfields, see the guide for creating\na shared reservation." - }, - "specificReservation": { - "$ref": "AllocationSpecificSKUReservation", - "description": "Reservation for instances with specific machine shapes." - }, - "specificReservationRequired": { - "description": "Indicates whether the reservation can be consumed by VMs with affinity\nfor \"any\" reservation. If the field is set, then only VMs that target\nthe reservation by name can consume from this reservation.", - "type": "boolean" - }, - "status": { - "description": "Output only. [Output Only] The status of the reservation.\n \n \n - CREATING: Reservation resources are being\n allocated.\n - READY: Reservation resources have been allocated,\n and the reservation is ready for use.\n - DELETING: Reservation deletion is in progress.\n - UPDATING: Reservation update is in progress.", - "enum": [ - "CREATING", - "DELETING", - "INVALID", - "READY", - "UPDATING" - ], - "enumDescriptions": [ - "Reservation resources are being allocated.", - "Reservation deletion is in progress.", - "", - "Reservation resources have been allocated, and the reservation is ready\nfor use.", - "Reservation update is in progress." - ], + "rdmaIpAddresses": { + "description": "Output only. The RDMA IP address of the physical host.", + "items": { + "type": "string" + }, "readOnly": true, - "type": "string" + "type": "array" }, - "zone": { - "description": "Zone in which the reservation resides. A zone must be provided if the\nreservation is created within a commitment.", - "type": "string" + "runningInstances": { + "description": "Output only. The URIs of the instances currently running on this slot.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" } }, "type": "object" }, - "ReservationAdvancedDeploymentControl": { - "description": "Advance control for cluster management, applicable only to DENSE deployment\ntype reservations.", - "id": "ReservationAdvancedDeploymentControl", + "ReservationSlotsGetResponse": { + "id": "ReservationSlotsGetResponse", "properties": { - "reservationOperationalMode": { - "description": "Indicates chosen reservation operational mode for the reservation.", - "enum": [ - "ALL_CAPACITY", - "HIGHLY_AVAILABLE_CAPACITY", - "RESERVATION_OPERATIONAL_MODE_UNSPECIFIED" - ], - "enumDescriptions": [ - "Google Cloud does not manage the failure of machines, but provides\nadditional capacity, which is not guaranteed to be available.", - "Google Cloud manages the failure of machines to provide high\navailability.", - "" - ], - "type": "string" + "resource": { + "$ref": "ReservationSlot" } }, "type": "object" }, - "ReservationAffinity": { - "description": "Specifies the reservations that this instance can consume from.", - "id": "ReservationAffinity", + "ReservationSlotsGetVersionRequest": { + "id": "ReservationSlotsGetVersionRequest", "properties": { - "consumeReservationType": { - "description": "Specifies the type of reservation from which this instance can consume\nresources: ANY_RESERVATION (default),SPECIFIC_RESERVATION, or NO_RESERVATION. See\nConsuming reserved instances for examples.", - "enum": [ - "ANY_RESERVATION", - "NO_RESERVATION", - "SPECIFIC_RESERVATION", - "UNSPECIFIED" - ], - "enumDescriptions": [ - "Consume any allocation available.", - "Do not consume from any allocated capacity.", - "Must consume from a specific reservation. Must specify key value fields\nfor specifying the reservations.", - "" - ], - "type": "string" - }, - "key": { - "description": "Corresponds to the label key of a reservation resource. To target aSPECIFIC_RESERVATION by name, specifygoogleapis.com/reservation-name as the key and specify\nthe name of your reservation as its value.", - "type": "string" - }, - "values": { - "description": "Corresponds to the label values of a reservation resource. This can be\neither a name to a reservation in the same project or\n\"projects/different-project/reservations/some-reservation-name\" to target a\nshared reservation in the same zone but in a different project.", + "sbomSelections": { + "description": "The SBOM selection to return. Duplicate values in the list will be ignored.", "items": { + "enum": [ + "SBOM_SELECTION_CURRENT", + "SBOM_SELECTION_TARGET", + "SBOM_SELECTION_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], "type": "string" }, "type": "array" @@ -81569,47 +90493,36 @@ }, "type": "object" }, - "ReservationAggregatedList": { - "description": "Contains a list of reservations.", - "id": "ReservationAggregatedList", + "ReservationSlotsListResponse": { + "description": "A list of reservation slots within a single reservation.", + "id": "ReservationSlotsListResponse", "properties": { "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "description": "The unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "additionalProperties": { - "$ref": "ReservationsScopedList", - "description": "Name of the scope containing this set of reservations." + "description": "A list of reservation slot resources.", + "items": { + "$ref": "ReservationSlot" }, - "description": "A list of Allocation resources.", - "type": "object" + "type": "array" }, "kind": { - "default": "compute#reservationAggregatedList", - "description": "Output only. Type of resource.", - "readOnly": true, + "default": "compute#reservationSlot", + "description": "The type of resource. Alwayscompute#reservationSlot for a list of reservation\nslots.", "type": "string" }, "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" }, "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, + "description": "The server-defined URL for this resource.", "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "An informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -81735,12 +90648,17 @@ }, "type": "object" }, - "ReservationBlock": { - "description": "Represents a reservation block resource.", - "id": "ReservationBlock", + "ReservationSubBlock": { + "description": "Represents a reservation subBlock resource.", + "id": "ReservationSubBlock", "properties": { + "acceleratorTopologiesInfo": { + "$ref": "AcceleratorTopologiesInfo", + "description": "Output only. [Output Only] Slice info for the reservation subBlock.", + "readOnly": true + }, "count": { - "description": "Output only. [Output Only] The number of resources that are allocated in this\nreservation block.", + "description": "Output only. [Output Only] The number of hosts that are allocated in this\nreservation subBlock.", "format": "int32", "readOnly": true, "type": "integer" @@ -81751,8 +90669,8 @@ "type": "string" }, "healthInfo": { - "$ref": "ReservationBlockHealthInfo", - "description": "Output only. [Output Only] Health information for the reservation block.", + "$ref": "ReservationSubBlockHealthInfo", + "description": "Output only. [Output Only] Health information for the reservation subBlock.", "readOnly": true }, "id": { @@ -81762,7 +90680,7 @@ "type": "string" }, "inUseCount": { - "description": "Output only. [Output Only] The number of instances that are currently in use on this\nreservation block.", + "description": "Output only. [Output Only] The number of instances that are currently in use on this\nreservation subBlock.", "format": "int32", "readOnly": true, "type": "integer" @@ -81774,38 +90692,26 @@ "type": "integer" }, "kind": { - "default": "compute#reservationBlock", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#reservationBlock for reservation blocks.", + "default": "compute#reservationSubBlock", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#reservationSubBlock for reservation subBlocks.", "readOnly": true, "type": "string" }, "name": { - "description": "Output only. [Output Only] The name of this reservation block generated by Google\nCompute Engine. The name must be 1-63 characters long, and comply with\nRFC1035 @pattern [a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Output only. [Output Only] The name of this reservation subBlock generated by Google\nCompute Engine. The name must be 1-63 characters long, and comply with\nRFC1035 @pattern [a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "readOnly": true, "type": "string" }, "physicalTopology": { - "$ref": "ReservationBlockPhysicalTopology", - "description": "Output only. [Output Only] The physical topology of the reservation block.", + "$ref": "ReservationSubBlockPhysicalTopology", + "description": "Output only. [Output Only] The physical topology of the reservation subBlock.", "readOnly": true }, - "reservationMaintenance": { + "reservationSubBlockMaintenance": { "$ref": "GroupMaintenanceInfo", - "description": "Output only. [Output Only] Maintenance information for this reservation block.", + "description": "Output only. Maintenance information for this reservation subBlock.", "readOnly": true }, - "reservationSubBlockCount": { - "description": "Output only. [Output Only] The number of reservation subBlocks associated with this\nreservation block.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "reservationSubBlockInUseCount": { - "description": "Output only. [Output Only] The number of in-use reservation subBlocks associated with\nthis reservation block. If at least one VM is running on a subBlock, it is\nconsidered in-use.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, "selfLink": { "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", "readOnly": true, @@ -81817,7 +90723,7 @@ "type": "string" }, "status": { - "description": "Output only. [Output Only] Status of the reservation block.", + "description": "Output only. [Output Only] Status of the reservation subBlock.", "enum": [ "CREATING", "DELETING", @@ -81825,151 +90731,403 @@ "READY" ], "enumDescriptions": [ - "Resources are being allocated for the reservation block.", - "Reservation block is currently being deleted.", + "Resources are being allocated for the reservation subBlock.", + "Reservation subBlock is currently being deleted.", "", - "Reservation block has allocated all its resources." + "Reservation subBlock has allocated all its resources." ], "readOnly": true, "type": "string" }, "zone": { - "description": "Output only. [Output Only] Zone in which the reservation block resides.", + "description": "Output only. [Output Only] Zone in which the reservation subBlock resides.", "readOnly": true, "type": "string" } }, "type": "object" }, - "ReservationBlockHealthInfo": { - "description": "Health information for the reservation block.", - "id": "ReservationBlockHealthInfo", + "ReservationSubBlockHealthInfo": { + "description": "Health information for the reservation subBlock.", + "id": "ReservationSubBlockHealthInfo", "properties": { - "degradedSubBlockCount": { - "description": "The number of subBlocks that are degraded.", + "degradedHostCount": { + "description": "The number of degraded hosts in the reservation subBlock.", + "format": "int32", + "type": "integer" + }, + "degradedInfraCount": { + "description": "The number of degraded infrastructure (e.g NV link domain) in the\nreservation subblock.", "format": "int32", "type": "integer" }, "healthStatus": { - "description": "The health status of the reservation block.", + "description": "The health status of the reservation subBlock.", "enum": [ "DEGRADED", "HEALTHY", "HEALTH_STATUS_UNSPECIFIED" ], "enumDescriptions": [ - "The reservation block is degraded.", - "The reservation block is healthy.", - "The health status of the reservation block is unspecified." + "The reservation subBlock is degraded.", + "The reservation subBlock is healthy.", + "The health status of the reservation subBlock is unspecified." ], "type": "string" }, - "healthySubBlockCount": { - "description": "The number of subBlocks that are healthy.", + "healthyHostCount": { + "description": "The number of healthy hosts in the reservation subBlock.", + "format": "int32", + "type": "integer" + }, + "healthyInfraCount": { + "description": "The number of healthy infrastructure (e.g NV link domain) in the\nreservation subblock.", "format": "int32", "type": "integer" } }, "type": "object" }, - "ReservationBlockPhysicalTopology": { - "id": "ReservationBlockPhysicalTopology", + "ReservationSubBlockPhysicalTopology": { + "id": "ReservationSubBlockPhysicalTopology", "properties": { "block": { "description": "The hash of the capacity block within the cluster.", "type": "string" }, "cluster": { - "description": "The cluster name of the reservation block.", + "description": "The cluster name of the reservation subBlock.", "type": "string" }, - "instances": { - "description": "Output only. The detailed instances information for a given Block", + "subBlock": { + "description": "The hash of the capacity sub-block within the capacity block.", + "type": "string" + } + }, + "type": "object" + }, + "ReservationSubBlocksGetResponse": { + "id": "ReservationSubBlocksGetResponse", + "properties": { + "resource": { + "$ref": "ReservationSubBlock" + } + }, + "type": "object" + }, + "ReservationSubBlocksGetVersionRequest": { + "id": "ReservationSubBlocksGetVersionRequest", + "properties": { + "sbomSelections": { + "description": "The SBOM selection to return.", "items": { - "$ref": "ReservationBlockPhysicalTopologyInstance" + "enum": [ + "SBOM_SELECTION_CURRENT", + "SBOM_SELECTION_TARGET", + "SBOM_SELECTION_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" }, - "readOnly": true, "type": "array" } }, "type": "object" }, - "ReservationBlockPhysicalTopologyInstance": { - "description": "The instances information for a given Block", - "id": "ReservationBlockPhysicalTopologyInstance", + "ReservationSubBlocksListResponse": { + "description": "A list of reservation subBlocks under a single reservation.", + "id": "ReservationSubBlocksListResponse", "properties": { - "instanceId": { - "description": "The InstanceId of the instance", - "format": "uint64", + "id": { + "description": "Unique identifier for the resource; defined by the server.", "type": "string" }, - "physicalHostTopology": { - "$ref": "ReservationBlockPhysicalTopologyInstancePhysicalHostTopology", - "description": "Output only. The PhysicalHostTopology of instances within a Block resource.", - "readOnly": true + "items": { + "description": "A list of reservation subBlock resources.", + "items": { + "$ref": "ReservationSubBlock" + }, + "type": "array" }, - "projectId": { - "description": "Project where the instance lives", - "format": "uint64", + "kind": { + "default": "compute#reservationSubBlock", + "description": "Type of the resource. Alwayscompute#reservationSubBlock for a list of reservation\nsubBlocks.", + "type": "string" + }, + "nextPageToken": { + "description": "This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ReservationSubBlocksReportFaultyRequest": { + "id": "ReservationSubBlocksReportFaultyRequest", + "properties": { + "disruptionSchedule": { + "description": "The disruption schedule for the subBlock.", + "enum": [ + "DISRUPTION_SCHEDULE_UNSPECIFIED", + "IMMEDIATE" + ], + "enumDescriptions": [ + "", + "All VMs will be disrupted immediately." + ], + "type": "string" + }, + "failureComponent": { + "description": "The component that experienced the fault.", + "enum": [ + "FAILURE_COMPONENT_UNSPECIFIED", + "MULTIPLE_FAULTY_HOSTS", + "NVLINK_SWITCH" + ], + "enumDescriptions": [ + "", + "Multiple hosts experienced the fault.", + "The NVLink switch experienced the fault." + ], "type": "string" + }, + "faultReasons": { + "description": "The reasons for the fault experienced with the subBlock.", + "items": { + "$ref": "ReservationSubBlocksReportFaultyRequestFaultReason" + }, + "type": "array" } }, "type": "object" }, - "ReservationBlockPhysicalTopologyInstancePhysicalHostTopology": { - "description": "The PhysicalHostTopology of the instance within a Block resource.", - "id": "ReservationBlockPhysicalTopologyInstancePhysicalHostTopology", + "ReservationSubBlocksReportFaultyRequestFaultReason": { + "description": "The reason for the fault experienced with the subBlock.", + "id": "ReservationSubBlocksReportFaultyRequestFaultReason", "properties": { - "host": { - "description": "Host hash for a given instance", + "behavior": { + "description": "The behavior of the fault experienced with the subBlock.", + "enum": [ + "FAULT_BEHAVIOR_UNSPECIFIED", + "GPU_ERROR", + "PERFORMANCE", + "SILENT_DATA_CORRUPTION", + "SWITCH_FAILURE" + ], + "enumDescriptions": [ + "", + "The subBlock experienced a GPU error.", + "The subBlock experienced performance issues.", + "The subBlock experienced silent data corruption.", + "The subBlock experienced a switch failure." + ], "type": "string" }, - "subBlock": { - "description": "Sub block hash for a given instance", + "description": { + "description": "The description of the fault experienced with the subBlock.", "type": "string" } }, "type": "object" }, - "ReservationBlocksGetResponse": { - "id": "ReservationBlocksGetResponse", + "ReservationsBlocksPerformMaintenanceRequest": { + "id": "ReservationsBlocksPerformMaintenanceRequest", "properties": { - "resource": { - "$ref": "ReservationBlock" + "maintenanceScope": { + "description": "Specifies if all, running or unused hosts are in scope for this request.", + "enum": [ + "ALL", + "MAINTENANCE_SCOPE_UNSPECIFIED", + "RUNNING_VMS", + "UNUSED_CAPACITY" + ], + "enumDescriptions": [ + "Trigger maintenance for all hosts belonging to this reservation\nirrespective of whether VMs are running on them or not.", + "Internal only", + "Trigger maintenance only on the hosts belonging to this reservation which\nhave VMs running on them.", + "Trigger maintenance only on the hosts belonging to this reservation which\ndo not have any VMs running on them. This is not allowed for Standard ExR" + ], + "type": "string" } }, "type": "object" }, - "ReservationBlocksListResponse": { - "description": "A list of reservation blocks under a single reservation.", - "id": "ReservationBlocksListResponse", + "ReservationsPerformMaintenanceRequest": { + "id": "ReservationsPerformMaintenanceRequest", + "properties": { + "maintenanceScope": { + "description": "Specifies if all, running or unused hosts are in scope for this request.", + "enum": [ + "ALL", + "MAINTENANCE_SCOPE_UNSPECIFIED", + "RUNNING_VMS", + "UNUSED_CAPACITY" + ], + "enumDescriptions": [ + "Trigger maintenance for all hosts belonging to this reservation\nirrespective of whether VMs are running on them or not.", + "Internal only", + "Trigger maintenance only on the hosts belonging to this reservation which\nhave VMs running on them.", + "Trigger maintenance only on the hosts belonging to this reservation which\ndo not have any VMs running on them. This is not allowed for Standard ExR" + ], + "type": "string" + } + }, + "type": "object" + }, + "ReservationsResizeRequest": { + "id": "ReservationsResizeRequest", + "properties": { + "specificSkuCount": { + "description": "Number of allocated resources can be resized with minimum = 1 and\nmaximum = 1000.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ReservationsScopedList": { + "id": "ReservationsScopedList", "properties": { - "id": { - "description": "Unique identifier for the resource; defined by the server.", - "type": "string" - }, - "items": { - "description": "A list of reservation block resources.", + "reservations": { + "description": "A list of reservations contained in this scope.", "items": { - "$ref": "ReservationBlock" + "$ref": "Reservation" }, "type": "array" }, - "kind": { - "default": "compute#reservationBlock", - "description": "Type of the resource. Alwayscompute#reservationBlock for a list of reservation blocks.", - "type": "string" - }, - "nextPageToken": { - "description": "This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "type": "string" - }, - "selfLink": { - "description": "Server-defined URL for this resource.", - "type": "string" - }, "warning": { - "description": "Informational warning message.", + "description": "Informational warning which replaces the list of reservations when\nthe list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -82095,37 +91253,62 @@ }, "type": "object" }, - "ReservationList": { - "id": "ReservationList", + "ResourceCommitment": { + "description": "Commitment for a particular hardware resource (a commitment is composed of\none or more of these).", + "id": "ResourceCommitment", "properties": { - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "acceleratorType": { + "description": "Name of the accelerator type or GPU resource. Specify this field only when\nthe type of hardware resource is ACCELERATOR.", "type": "string" }, - "items": { - "description": "[Output Only] A list of Allocation resources.", - "items": { - "$ref": "Reservation" - }, - "type": "array" - }, - "kind": { - "default": "compute#reservationList", - "description": "Output only. [Output Only] Type of resource.Always compute#reservationsList\nfor listsof reservations", - "readOnly": true, + "amount": { + "description": "The quantity of the hardware resource that you want to commit to purchasing\n(in a type-dependent unit).\n \n - For vCPUs, you must specify an integer value.\n - For memory, you specify the amount of MB that you want. The value you\n specify must be a multiple of 256 MB, with up to 6.5 GB of\n memory per every vCPU.\n - For GPUs, you must specify an integer value.\n - For Local SSD disks, you must specify the amount in GB. The size of a\n single Local SSD disk is 375 GB.", + "format": "int64", "type": "string" }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": { + "description": "The type of hardware resource that you want to specify.\nYou can specify any of the following values:\n \n - VCPU\n - MEMORY\n - LOCAL_SSD\n - ACCELERATOR\n\n\n\nSpecify as a separate entry in the list for each\nindividual resource type.", + "enum": [ + "ACCELERATOR", + "LOCAL_SSD", + "MEMORY", + "UNSPECIFIED", + "VCPU" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, + } + }, + "type": "object" + }, + "ResourceGroupReference": { + "id": "ResourceGroupReference", + "properties": { + "group": { + "description": "A URI referencing one of the instance groups or network endpoint groups\nlisted in the backend service.", "type": "string" + } + }, + "type": "object" + }, + "ResourcePoliciesScopedList": { + "id": "ResourcePoliciesScopedList", + "properties": { + "resourcePolicies": { + "description": "A list of resourcePolicies contained in this scope.", + "items": { + "$ref": "ResourcePolicy" + }, + "type": "array" }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "Informational warning which replaces the list of resourcePolicies when\nthe list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -82251,186 +91434,140 @@ }, "type": "object" }, - "ReservationParams": { - "description": "Additional reservation params.", - "id": "ReservationParams", - "properties": { - "resourceManagerTags": { - "additionalProperties": { - "type": "string" - }, - "description": "Input only. Resource manager tags to be bound to the reservation. Tag keys and\nvalues have the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", - "type": "object" - } - }, - "type": "object" - }, - "ReservationSlot": { - "description": "Represents a reservation slot resource.", - "id": "ReservationSlot", + "ResourcePolicy": { + "description": "Represents a Resource Policy resource. You can use resource policies to\nschedule actions for some Compute Engine resources. For example, you can\nuse them toschedule persistent disk\nsnapshots.", + "id": "ResourcePolicy", "properties": { "creationTimestamp": { - "description": "Output only. [Output Only] The creation timestamp, formatted asRFC3339 text.", + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", "readOnly": true, "type": "string" }, + "description": { + "type": "string" + }, + "diskConsistencyGroupPolicy": { + "$ref": "ResourcePolicyDiskConsistencyGroupPolicy", + "description": "Resource policy for disk consistency groups." + }, + "groupPlacementPolicy": { + "$ref": "ResourcePolicyGroupPlacementPolicy", + "description": "Resource policy for instances for placement configuration." + }, "id": { - "description": "Output only. [Output Only] The unique identifier for this resource. This identifier is\ndefined by the server.", + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "format": "uint64", "readOnly": true, "type": "string" }, + "instanceSchedulePolicy": { + "$ref": "ResourcePolicyInstanceSchedulePolicy", + "description": "Resource policy for scheduling instance operations." + }, "kind": { - "default": "compute#reservationSlot", - "description": "Output only. [Output Only] The type of resource. Alwayscompute#reservationSlot for reservation slots.", + "default": "compute#resourcePolicy", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#resource_policies for resource policies.", "readOnly": true, "type": "string" }, "name": { - "description": "Output only. [Output Only] The name of the reservation slot.", + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "description": "The name of the resource, provided by the client when initially creating\nthe resource. The resource name must be 1-63 characters long, and comply\nwithRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "region": { "readOnly": true, "type": "string" }, - "physicalTopology": { - "$ref": "ReservationSlotPhysicalTopology", - "deprecated": true, - "description": "Output only. [Output Only] The physical topology of the reservation slot.", + "resourceStatus": { + "$ref": "ResourcePolicyResourceStatus", + "description": "Output only. [Output Only] The system status of the resource policy.", "readOnly": true }, "selfLink": { - "description": "Output only. [Output Only] A server-defined fully-qualified URL for this resource.", - "readOnly": true, - "type": "string" - }, - "selfLinkWithId": { - "description": "Output only. [Output Only] A server-defined URL for this resource with the resource ID.", + "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", "readOnly": true, "type": "string" }, - "shareSettings": { - "$ref": "ShareSettings", - "description": "Specify share settings to create a shared slot. Set to empty\nto inherit the share settings from a parent resource." + "snapshotSchedulePolicy": { + "$ref": "ResourcePolicySnapshotSchedulePolicy", + "description": "Resource policy for persistent disks for creating snapshots." }, - "state": { - "description": "Output only. [Output Only] The state of the reservation slot.", + "status": { + "description": "Output only. [Output Only] The status of resource policy creation.", "enum": [ - "ACTIVE", "CREATING", "DELETING", - "STATE_UNSPECIFIED", - "UNAVAILABLE" + "EXPIRED", + "INVALID", + "READY" ], "enumDescriptions": [ - "The reservation slot has allocated all its resources.", - "The resources are being allocated for the reservation slot.", - "The reservation slot is currently being deleted.", + "Resource policy is being created.", + "Resource policy is being deleted.", + "Resource policy is expired and will not run again.", "", - "The reservation slot is currently unavailable." + "Resource policy is ready to be used." ], "readOnly": true, "type": "string" }, - "status": { - "$ref": "ReservationSlotStatus", - "description": "Output only. [Output Only] The status of the reservation slot.", - "readOnly": true - }, - "zone": { - "description": "Output only. [Output Only] The zone in which the reservation slot resides.", - "readOnly": true, - "type": "string" + "workloadPolicy": { + "$ref": "ResourcePolicyWorkloadPolicy", + "description": "Resource policy for defining instance placement for MIGs." } }, "type": "object" }, - "ReservationSlotPhysicalTopology": { - "id": "ReservationSlotPhysicalTopology", + "ResourcePolicyAggregatedList": { + "description": "Contains a list of resourcePolicies.", + "id": "ResourcePolicyAggregatedList", "properties": { - "block": { - "description": "The unique identifier of the capacity block within the cluster.", - "type": "string" - }, - "cluster": { - "description": "The cluster name of the reservation sub-block.", - "type": "string" - }, - "host": { - "description": "The unique identifier of the capacity host within the capacity sub-block.", - "type": "string" - }, - "subBlock": { - "description": "The unique identifier of the capacity sub-block within the capacity\nblock.", + "etag": { "type": "string" - } - }, - "type": "object" - }, - "ReservationSlotStatus": { - "id": "ReservationSlotStatus", - "properties": { - "physicalTopology": { - "$ref": "ReservationSlotPhysicalTopology", - "description": "Output only. [Output Only] The physical topology of the reservation sub-block.", - "readOnly": true - }, - "rdmaIpAddresses": { - "description": "Output only. The RDMA IP address of the physical host.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" }, - "runningInstances": { - "description": "Output only. The URIs of the instances currently running on this slot.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - } - }, - "type": "object" - }, - "ReservationSlotsGetResponse": { - "id": "ReservationSlotsGetResponse", - "properties": { - "resource": { - "$ref": "ReservationSlot" - } - }, - "type": "object" - }, - "ReservationSlotsListResponse": { - "description": "A list of reservation slots within a single reservation.", - "id": "ReservationSlotsListResponse", - "properties": { "id": { - "description": "The unique identifier for the resource; defined by the server.", + "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of reservation slot resources.", - "items": { - "$ref": "ReservationSlot" + "additionalProperties": { + "$ref": "ResourcePoliciesScopedList", + "description": "Name of the scope containing this set of resourcePolicies." }, - "type": "array" + "description": "A list of ResourcePolicy resources.", + "type": "object" }, "kind": { - "default": "compute#reservationSlot", - "description": "The type of resource. Alwayscompute#reservationSlot for a list of reservation\nslots.", + "default": "compute#resourcePolicyAggregatedList", + "description": "Output only. Type of resource.", + "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" }, "selfLink": { - "description": "The server-defined URL for this resource.", + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, "type": "string" }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "warning": { - "description": "An informational warning message.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -82556,203 +91693,171 @@ }, "type": "object" }, - "ReservationSubBlock": { - "description": "Represents a reservation subBlock resource.", - "id": "ReservationSubBlock", + "ResourcePolicyDailyCycle": { + "description": "Time window specified for daily operations.", + "id": "ResourcePolicyDailyCycle", "properties": { - "acceleratorTopologiesInfo": { - "$ref": "AcceleratorTopologiesInfo", - "description": "Output only. [Output Only] Slice info for the reservation subBlock.", - "readOnly": true - }, - "count": { - "description": "Output only. [Output Only] The number of hosts that are allocated in this\nreservation subBlock.", + "daysInCycle": { + "description": "Defines a schedule with units measured in days. The value determines\nhow many days pass between the start of each cycle.", "format": "int32", - "readOnly": true, "type": "integer" }, - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339 text format.", + "duration": { + "description": "Output only. [Output only] A predetermined duration for the window, automatically\nchosen to be the smallest possible in the given scenario.", "readOnly": true, "type": "string" }, - "healthInfo": { - "$ref": "ReservationSubBlockHealthInfo", - "description": "Output only. [Output Only] Health information for the reservation subBlock.", - "readOnly": true - }, - "id": { - "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "readOnly": true, + "startTime": { + "description": "Start time of the window. This must be in UTC format that resolves to one\nof 00:00, 04:00, 08:00,12:00, 16:00, or 20:00. For\nexample, both 13:00-5 and 08:00 are valid.", + "type": "string" + } + }, + "type": "object" + }, + "ResourcePolicyDiskConsistencyGroupPolicy": { + "description": "Resource policy for disk consistency groups.", + "id": "ResourcePolicyDiskConsistencyGroupPolicy", + "properties": {}, + "type": "object" + }, + "ResourcePolicyGroupPlacementPolicy": { + "description": "A GroupPlacementPolicy specifies resource placement configuration.\nIt specifies the failure bucket separation", + "id": "ResourcePolicyGroupPlacementPolicy", + "properties": { + "acceleratorTopologyMode": { + "description": "Specifies the connection mode for the accelerator topology. If not\nspecified, the default is AUTO_CONNECT.", + "enum": [ + "AUTO_CONNECT", + "PROVISION_ONLY" + ], + "enumDescriptions": [ + "The interconnected chips are pre-configured at the time of VM creation.", + "The interconnected chips are connected on demand. At the time of VM\ncreation, the chips are not connected." + ], "type": "string" }, - "inUseCount": { - "description": "Output only. [Output Only] The number of instances that are currently in use on this\nreservation subBlock.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "inUseHostCount": { - "description": "Output only. Number of hosts currently in use. If there is one or more Instances running\non the host, it is considered in use.", + "availabilityDomainCount": { + "description": "The number of availability domains to spread instances across. If two\ninstances are in different availability domain, they are not in the same\nlow latency network.", "format": "int32", - "readOnly": true, "type": "integer" }, - "kind": { - "default": "compute#reservationSubBlock", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#reservationSubBlock for reservation subBlocks.", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "Output only. [Output Only] The name of this reservation subBlock generated by Google\nCompute Engine. The name must be 1-63 characters long, and comply with\nRFC1035 @pattern [a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "readOnly": true, - "type": "string" - }, - "physicalTopology": { - "$ref": "ReservationSubBlockPhysicalTopology", - "description": "Output only. [Output Only] The physical topology of the reservation subBlock.", - "readOnly": true - }, - "reservationSubBlockMaintenance": { - "$ref": "GroupMaintenanceInfo", - "description": "Output only. Maintenance information for this reservation subBlock.", - "readOnly": true - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", - "readOnly": true, - "type": "string" - }, - "selfLinkWithId": { - "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", - "readOnly": true, - "type": "string" - }, - "status": { - "description": "Output only. [Output Only] Status of the reservation subBlock.", + "collocation": { + "description": "Specifies network collocation", "enum": [ - "CREATING", - "DELETING", - "INVALID", - "READY" + "COLLOCATED", + "UNSPECIFIED_COLLOCATION" ], "enumDescriptions": [ - "Resources are being allocated for the reservation subBlock.", - "Reservation subBlock is currently being deleted.", "", - "Reservation subBlock has allocated all its resources." + "" ], - "readOnly": true, "type": "string" }, - "zone": { - "description": "Output only. [Output Only] Zone in which the reservation subBlock resides.", - "readOnly": true, + "gpuTopology": { + "description": "Specifies the shape of the GPU slice, in slice based GPU families eg.\nA4X.", "type": "string" + }, + "vmCount": { + "description": "Number of VMs in this placement group. Google does not recommend that you\nuse this field unless you use a compact policy and you want your policy\nto work only if it contains this exact number of VMs.", + "format": "int32", + "type": "integer" } }, "type": "object" }, - "ReservationSubBlockHealthInfo": { - "description": "Health information for the reservation subBlock.", - "id": "ReservationSubBlockHealthInfo", + "ResourcePolicyHourlyCycle": { + "description": "Time window specified for hourly operations.", + "id": "ResourcePolicyHourlyCycle", "properties": { - "degradedHostCount": { - "description": "The number of degraded hosts in the reservation subBlock.", - "format": "int32", - "type": "integer" - }, - "degradedInfraCount": { - "description": "The number of degraded infrastructure (e.g NV link domain) in the\nreservation subblock.", - "format": "int32", - "type": "integer" - }, - "healthStatus": { - "description": "The health status of the reservation subBlock.", - "enum": [ - "DEGRADED", - "HEALTHY", - "HEALTH_STATUS_UNSPECIFIED" - ], - "enumDescriptions": [ - "The reservation subBlock is degraded.", - "The reservation subBlock is healthy.", - "The health status of the reservation subBlock is unspecified." - ], + "duration": { + "description": "Output only. [Output only] Duration of the time window, automatically chosen to be\nsmallest possible in the given scenario.", + "readOnly": true, "type": "string" }, - "healthyHostCount": { - "description": "The number of healthy hosts in the reservation subBlock.", + "hoursInCycle": { + "description": "Defines a schedule with units measured in hours. The value determines\nhow many hours pass between the start of each cycle.", "format": "int32", "type": "integer" }, - "healthyInfraCount": { - "description": "The number of healthy infrastructure (e.g NV link domain) in the\nreservation subblock.", - "format": "int32", - "type": "integer" + "startTime": { + "description": "Time within the window to start the operations.\nIt must be in format \"HH:MM\", where HH : [00-23] and MM : [00-00] GMT.", + "type": "string" } }, "type": "object" }, - "ReservationSubBlockPhysicalTopology": { - "id": "ReservationSubBlockPhysicalTopology", + "ResourcePolicyInstanceSchedulePolicy": { + "description": "An InstanceSchedulePolicy specifies when and how frequent certain\noperations are performed on the instance.", + "id": "ResourcePolicyInstanceSchedulePolicy", "properties": { - "block": { - "description": "The hash of the capacity block within the cluster.", + "expirationTime": { + "description": "The expiration time of the schedule. The timestamp is an RFC3339 string.", "type": "string" }, - "cluster": { - "description": "The cluster name of the reservation subBlock.", + "startTime": { + "description": "The start time of the schedule. The timestamp is an RFC3339 string.", "type": "string" }, - "subBlock": { - "description": "The hash of the capacity sub-block within the capacity block.", + "timeZone": { + "description": "Specifies the time zone to be used in interpreting Schedule.schedule.\nThe value of this field must be a time zone name from the tz database:\nhttps://wikipedia.org/wiki/Tz_database.", "type": "string" + }, + "vmStartSchedule": { + "$ref": "ResourcePolicyInstanceSchedulePolicySchedule", + "description": "Specifies the schedule for starting instances." + }, + "vmStopSchedule": { + "$ref": "ResourcePolicyInstanceSchedulePolicySchedule", + "description": "Specifies the schedule for stopping instances." } }, "type": "object" }, - "ReservationSubBlocksGetResponse": { - "id": "ReservationSubBlocksGetResponse", + "ResourcePolicyInstanceSchedulePolicySchedule": { + "description": "Schedule for an instance operation.", + "id": "ResourcePolicyInstanceSchedulePolicySchedule", "properties": { - "resource": { - "$ref": "ReservationSubBlock" + "schedule": { + "description": "Specifies the frequency for the operation, using the unix-cron format.", + "type": "string" } }, "type": "object" }, - "ReservationSubBlocksListResponse": { - "description": "A list of reservation subBlocks under a single reservation.", - "id": "ReservationSubBlocksListResponse", + "ResourcePolicyList": { + "id": "ResourcePolicyList", "properties": { + "etag": { + "type": "string" + }, "id": { - "description": "Unique identifier for the resource; defined by the server.", + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "type": "string" }, "items": { - "description": "A list of reservation subBlock resources.", + "description": "[Output Only] A list of ResourcePolicy resources.", "items": { - "$ref": "ReservationSubBlock" + "$ref": "ResourcePolicy" }, "type": "array" }, "kind": { - "default": "compute#reservationSubBlock", - "description": "Type of the resource. Alwayscompute#reservationSubBlock for a list of reservation\nsubBlocks.", + "default": "compute#resourcePolicyList", + "description": "Output only. [Output Only] Type of resource.Alwayscompute#resourcePoliciesList for listsof resourcePolicies", + "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" }, "selfLink": { - "description": "Server-defined URL for this resource.", + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, "type": "string" }, "warning": { - "description": "Informational warning message.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -82878,450 +91983,477 @@ }, "type": "object" }, - "ReservationSubBlocksReportFaultyRequest": { - "id": "ReservationSubBlocksReportFaultyRequest", + "ResourcePolicyResourceStatus": { + "description": "Contains output only fields.\nUse this sub-message for all output fields set on ResourcePolicy.\nThe internal structure of this \"status\" field should mimic the structure\nof ResourcePolicy proto specification.", + "id": "ResourcePolicyResourceStatus", "properties": { - "disruptionSchedule": { - "description": "The disruption schedule for the subBlock.", - "enum": [ - "DISRUPTION_SCHEDULE_UNSPECIFIED", - "IMMEDIATE" - ], - "enumDescriptions": [ - "", - "All VMs will be disrupted immediately." - ], + "instanceSchedulePolicy": { + "$ref": "ResourcePolicyResourceStatusInstanceSchedulePolicyStatus", + "description": "Output only. [Output Only] Specifies a set of output values reffering to\nthe instance_schedule_policy system status.\nThis field should have the same name as corresponding policy field.", + "readOnly": true + } + }, + "type": "object" + }, + "ResourcePolicyResourceStatusInstanceSchedulePolicyStatus": { + "id": "ResourcePolicyResourceStatusInstanceSchedulePolicyStatus", + "properties": { + "lastRunStartTime": { + "description": "Output only. [Output Only] The last time the schedule successfully ran.\nThe timestamp is an RFC3339 string.", + "readOnly": true, "type": "string" }, - "failureComponent": { - "description": "The component that experienced the fault.", + "nextRunStartTime": { + "description": "Output only. [Output Only] The next time the schedule is planned to run.\nThe actual time might be slightly different.\nThe timestamp is an RFC3339 string.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ResourcePolicySnapshotSchedulePolicy": { + "description": "A snapshot schedule policy specifies when and how frequently snapshots are\nto be created for the target disk. Also specifies how many and how long\nthese scheduled snapshots should be retained.", + "id": "ResourcePolicySnapshotSchedulePolicy", + "properties": { + "retentionPolicy": { + "$ref": "ResourcePolicySnapshotSchedulePolicyRetentionPolicy", + "description": "Retention policy applied to snapshots created by this resource policy." + }, + "schedule": { + "$ref": "ResourcePolicySnapshotSchedulePolicySchedule", + "description": "A Vm Maintenance Policy specifies what kind of infrastructure\nmaintenance we are allowed to perform on this VM and when. Schedule\nthat is applied to disks covered by this policy." + }, + "snapshotProperties": { + "$ref": "ResourcePolicySnapshotSchedulePolicySnapshotProperties", + "description": "Properties with which snapshots are created such as labels, encryption\nkeys." + } + }, + "type": "object" + }, + "ResourcePolicySnapshotSchedulePolicyRetentionPolicy": { + "description": "Policy for retention of scheduled snapshots.", + "id": "ResourcePolicySnapshotSchedulePolicyRetentionPolicy", + "properties": { + "maxRetentionDays": { + "description": "Maximum age of the snapshot that is allowed to be kept.", + "format": "int32", + "type": "integer" + }, + "onSourceDiskDelete": { + "description": "Specifies the behavior to apply to scheduled snapshots when\nthe source disk is deleted.", "enum": [ - "FAILURE_COMPONENT_UNSPECIFIED", - "MULTIPLE_FAULTY_HOSTS", - "NVLINK_SWITCH" + "APPLY_RETENTION_POLICY", + "KEEP_AUTO_SNAPSHOTS", + "UNSPECIFIED_ON_SOURCE_DISK_DELETE" ], "enumDescriptions": [ "", - "Multiple hosts experienced the fault.", - "The NVLink switch experienced the fault." + "", + "" ], "type": "string" + } + }, + "type": "object" + }, + "ResourcePolicySnapshotSchedulePolicySchedule": { + "description": "A schedule for disks where the schedueled operations are performed.", + "id": "ResourcePolicySnapshotSchedulePolicySchedule", + "properties": { + "dailySchedule": { + "$ref": "ResourcePolicyDailyCycle" }, - "faultReasons": { - "description": "The reasons for the fault experienced with the subBlock.", + "hourlySchedule": { + "$ref": "ResourcePolicyHourlyCycle" + }, + "weeklySchedule": { + "$ref": "ResourcePolicyWeeklyCycle" + } + }, + "type": "object" + }, + "ResourcePolicySnapshotSchedulePolicySnapshotProperties": { + "description": "Specified snapshot properties for scheduled snapshots created by this\npolicy.", + "id": "ResourcePolicySnapshotSchedulePolicySnapshotProperties", + "properties": { + "chainName": { + "description": "Chain name that the snapshot is created in.", + "type": "string" + }, + "guestFlush": { + "description": "Indication to perform a 'guest aware' snapshot.", + "type": "boolean" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to scheduled snapshots. These can be later modified\nby the setLabels method. Label values may be empty.", + "type": "object" + }, + "storageLocations": { + "description": "Cloud Storage bucket storage location of the auto snapshot (regional or\nmulti-regional).", "items": { - "$ref": "ReservationSubBlocksReportFaultyRequestFaultReason" + "type": "string" }, "type": "array" } }, "type": "object" }, - "ReservationSubBlocksReportFaultyRequestFaultReason": { - "description": "The reason for the fault experienced with the subBlock.", - "id": "ReservationSubBlocksReportFaultyRequestFaultReason", + "ResourcePolicyWeeklyCycle": { + "description": "Time window specified for weekly operations.", + "id": "ResourcePolicyWeeklyCycle", "properties": { - "behavior": { - "description": "The behavior of the fault experienced with the subBlock.", + "dayOfWeeks": { + "description": "Up to 7 intervals/windows, one for each day of the week.", + "items": { + "$ref": "ResourcePolicyWeeklyCycleDayOfWeek" + }, + "type": "array" + } + }, + "type": "object" + }, + "ResourcePolicyWeeklyCycleDayOfWeek": { + "id": "ResourcePolicyWeeklyCycleDayOfWeek", + "properties": { + "day": { + "description": "Defines a schedule that runs on specific days of the week. Specify\none or more days. The following options are available:\nMONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY.", "enum": [ - "FAULT_BEHAVIOR_UNSPECIFIED", - "GPU_ERROR", - "PERFORMANCE", - "SILENT_DATA_CORRUPTION", - "SWITCH_FAILURE" + "FRIDAY", + "INVALID", + "MONDAY", + "SATURDAY", + "SUNDAY", + "THURSDAY", + "TUESDAY", + "WEDNESDAY" ], "enumDescriptions": [ "", - "The subBlock experienced a GPU error.", - "The subBlock experienced performance issues.", - "The subBlock experienced silent data corruption.", - "The subBlock experienced a switch failure." + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, - "description": { - "description": "The description of the fault experienced with the subBlock.", + "duration": { + "description": "Output only. [Output only] Duration of the time window, automatically chosen to be\nsmallest possible in the given scenario.", + "readOnly": true, + "type": "string" + }, + "startTime": { + "description": "Time within the window to start the operations.\nIt must be in format \"HH:MM\", where HH : [00-23] and MM : [00-00] GMT.", "type": "string" } }, "type": "object" }, - "ReservationsBlocksPerformMaintenanceRequest": { - "id": "ReservationsBlocksPerformMaintenanceRequest", + "ResourcePolicyWorkloadPolicy": { + "description": "Represents the workload policy.", + "id": "ResourcePolicyWorkloadPolicy", "properties": { - "maintenanceScope": { - "description": "Specifies if all, running or unused hosts are in scope for this request.", + "acceleratorTopology": { + "description": "Specifies the topology required to create a partition for VMs that have\ninterconnected GPUs.", + "type": "string" + }, + "acceleratorTopologyMode": { + "description": "Specifies the connection mode for the accelerator topology. If not\nspecified, the default is AUTO_CONNECT.", "enum": [ - "ALL", - "MAINTENANCE_SCOPE_UNSPECIFIED", - "RUNNING_VMS", - "UNUSED_CAPACITY" + "AUTO_CONNECT", + "PROVISION_ONLY" ], "enumDescriptions": [ - "Trigger maintenance for all hosts belonging to this reservation\nirrespective of whether VMs are running on them or not.", - "Internal only", - "Trigger maintenance only on the hosts belonging to this reservation which\nhave VMs running on them.", - "Trigger maintenance only on the hosts belonging to this reservation which\ndo not have any VMs running on them. This is not allowed for Standard ExR" + "The interconnected chips are pre-configured at the time of VM creation.", + "The interconnected chips are connected on demand. At the time of VM\ncreation, the chips are not connected." + ], + "type": "string" + }, + "maxTopologyDistance": { + "description": "Specifies the maximum distance between instances.", + "enum": [ + "BLOCK", + "CLUSTER", + "SUBBLOCK" + ], + "enumDescriptions": [ + "VMs must be provisioned in the same block.", + "VMs must be provisioned in the same cluster.", + "VMs must be provisioned in the same subblock." + ], + "type": "string" + }, + "type": { + "description": "Specifies the intent of the instance placement in the MIG.", + "enum": [ + "HIGH_AVAILABILITY", + "HIGH_THROUGHPUT" + ], + "enumDescriptions": [ + "MIG spreads out the instances as much as possible for high availability.", + "MIG provisions instances as close to each other as possible for high\nthroughput." ], "type": "string" } }, "type": "object" }, - "ReservationsPerformMaintenanceRequest": { - "id": "ReservationsPerformMaintenanceRequest", + "ResourceStatus": { + "description": "Contains output only fields.\nUse this sub-message for actual values set on Instance attributes as compared\nto the value requested by the user (intent) in their instance CRUD calls.", + "id": "ResourceStatus", "properties": { - "maintenanceScope": { - "description": "Specifies if all, running or unused hosts are in scope for this request.", - "enum": [ - "ALL", - "MAINTENANCE_SCOPE_UNSPECIFIED", - "RUNNING_VMS", - "UNUSED_CAPACITY" - ], - "enumDescriptions": [ - "Trigger maintenance for all hosts belonging to this reservation\nirrespective of whether VMs are running on them or not.", - "Internal only", - "Trigger maintenance only on the hosts belonging to this reservation which\nhave VMs running on them.", - "Trigger maintenance only on the hosts belonging to this reservation which\ndo not have any VMs running on them. This is not allowed for Standard ExR" - ], + "effectiveInstanceMetadata": { + "$ref": "ResourceStatusEffectiveInstanceMetadata", + "description": "Output only. [Output Only] Effective metadata is a field that consolidates project,\nzonal instance settings, and instance-level predefined metadata keys to\nprovide the overridden value for those metadata keys at the instance level.", + "readOnly": true + }, + "physicalHost": { + "description": "Output only. [Output Only] The precise location of your instance within the zone's data\ncenter, including the block, sub-block, and host. The field is formatted as\nfollows: blockId/subBlockId/hostId.", + "readOnly": true, "type": "string" + }, + "physicalHostTopology": { + "$ref": "ResourceStatusPhysicalHostTopology", + "description": "Output only. [Output Only] A series of fields containing the global name of the Compute\nEngine cluster, as well as the ID of the block, sub-block, and host on\nwhich the running instance is located.", + "readOnly": true + }, + "reservationConsumptionInfo": { + "$ref": "ResourceStatusReservationConsumptionInfo", + "description": "Output only. [Output Only] Reservation information that the instance is consuming from.", + "readOnly": true + }, + "scheduling": { + "$ref": "ResourceStatusScheduling" + }, + "upcomingMaintenance": { + "$ref": "UpcomingMaintenance", + "readOnly": true } }, "type": "object" }, - "ReservationsResizeRequest": { - "id": "ReservationsResizeRequest", + "ResourceStatusEffectiveInstanceMetadata": { + "description": "Effective values of predefined metadata keys for an instance.", + "id": "ResourceStatusEffectiveInstanceMetadata", "properties": { - "specificSkuCount": { - "description": "Number of allocated resources can be resized with minimum = 1 and\nmaximum = 1000.", - "format": "int64", + "blockProjectSshKeysMetadataValue": { + "description": "Effective block-project-ssh-keys value at Instance level.", + "type": "boolean" + }, + "enableGuestAttributesMetadataValue": { + "description": "Effective enable-guest-attributes value at Instance level.", + "type": "boolean" + }, + "enableOsInventoryMetadataValue": { + "description": "Effective enable-os-inventory value at Instance level.", + "type": "boolean" + }, + "enableOsconfigMetadataValue": { + "description": "Effective enable-osconfig value at Instance level.", + "type": "boolean" + }, + "enableOsloginMetadataValue": { + "description": "Effective enable-oslogin value at Instance level.", + "type": "boolean" + }, + "gceContainerDeclarationMetadataValue": { + "description": "Effective gce-container-declaration value at Instance level.", + "type": "boolean" + }, + "serialPortEnableMetadataValue": { + "description": "Effective serial-port-enable value at Instance level.", + "type": "boolean" + }, + "serialPortLoggingEnableMetadataValue": { + "description": "Effective serial-port-logging-enable value at Instance level.", + "type": "boolean" + }, + "vmDnsSettingMetadataValue": { + "description": "Effective VM DNS setting at Instance level.", "type": "string" } }, "type": "object" }, - "ReservationsScopedList": { - "id": "ReservationsScopedList", + "ResourceStatusPhysicalHostTopology": { + "description": "Represents the physical host topology of the host on which the VM is\nrunning.", + "id": "ResourceStatusPhysicalHostTopology", "properties": { - "reservations": { - "description": "A list of reservations contained in this scope.", - "items": { - "$ref": "Reservation" - }, - "type": "array" + "block": { + "description": "[Output Only] The ID of the block in which the running instance is\nlocated. Instances within the same block experience low network latency.", + "type": "string" }, - "warning": { - "description": "Informational warning which replaces the list of reservations when\nthe list is empty.", - "properties": { - "code": { - "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", - "LARGE_DEPLOYMENT_WARNING", - "LIST_OVERHEAD_QUOTA_EXCEED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "PARTIAL_SUCCESS", - "QUOTA_INFO_UNAVAILABLE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDeprecated": [ - false, - false, - false, - false, - false, - false, - true, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false - ], - "enumDescriptions": [ - "Warning about failed cleanup of transient changes made by a failed\noperation.", - "A link to a deprecated resource was created.", - "When deploying and at least one of the resources has a type marked as\ndeprecated", - "The user created a boot disk that is larger than image size.", - "When deploying and at least one of the resources has a type marked as\nexperimental", - "Warning that is present in an external api call", - "Warning that value of a field has been overridden.\nDeprecated unused field.", - "The operation involved use of an injected kernel, which is deprecated.", - "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", - "When deploying a deployment with a exceedingly large number of resources", - "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", - "A resource depends on a missing type", - "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", - "The route's next hop instance cannot ip forward.", - "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", - "The route's nextHopInstance URL refers to an instance that does not exist.", - "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", - "The route's next hop instance does not have a status of RUNNING.", - "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", - "No results are present on a particular list page.", - "Success is reported, but some results may be missing due to errors", - "Quota information is not available to client requests (e.g:\nregions.list).", - "The user attempted to use a resource that requires a TOS they have not\naccepted.", - "Warning that a resource is in use.", - "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", - "When a resource schema validation is ignored.", - "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", - "When undeclared properties in the schema are present", - "A given scope cannot be reached." - ], - "type": "string" - }, - "data": { - "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", - "items": { - "properties": { - "key": { - "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", - "type": "string" - }, - "value": { - "description": "[Output Only] A warning data value corresponding to the key.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "message": { - "description": "[Output Only] A human-readable description of the warning code.", - "type": "string" - } - }, - "type": "object" + "cluster": { + "description": "[Output Only] The global name of the Compute Engine cluster where the\nrunning instance is located.", + "type": "string" + }, + "host": { + "description": "[Output Only] The ID of the host on which the running instance is located.\nInstances on the same host experience the lowest possible network\nlatency.", + "type": "string" + }, + "subblock": { + "description": "[Output Only] The ID of the sub-block in which the running instance is\nlocated. Instances in the same sub-block experience lower network latency\nthan instances in the same block.", + "type": "string" } }, "type": "object" }, - "ResourceCommitment": { - "description": "Commitment for a particular hardware resource (a commitment is composed of\none or more of these).", - "id": "ResourceCommitment", + "ResourceStatusReservationConsumptionInfo": { + "description": "Reservation consumption information that the instance is consuming from.", + "id": "ResourceStatusReservationConsumptionInfo", "properties": { - "acceleratorType": { - "description": "Name of the accelerator type or GPU resource. Specify this field only when\nthe type of hardware resource is ACCELERATOR.", + "consumedReservation": { + "description": "Output only. [Output Only] The full resource name of the reservation that this\ninstance is consuming from.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ResourceStatusScheduling": { + "id": "ResourceStatusScheduling", + "properties": { + "availabilityDomain": { + "description": "Specifies the availability domain to place the instance in. The value\nmust be a number between 1 and the number of availability domains\nspecified in the spread placement policy attached to the instance.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Rollout": { + "description": "Rollout resource.\n\nA Rollout is a specific instance of a RolloutPlan. It represents a single\nexecution of a strategy to roll out a specific resource. It also provides\nAPIs to interact with the rollout.", + "id": "Rollout", + "properties": { + "cancellationTime": { + "description": "Output only. The timestamp at which the Rollout was cancelled.", + "readOnly": true, + "type": "string" + }, + "completionTime": { + "description": "Output only. The timestamp at which the Rollout was completed.", + "readOnly": true, + "type": "string" + }, + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "currentWaveNumber": { + "description": "Output only. The number of the currently running wave.\nEx. 1", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", "type": "string" }, - "amount": { - "description": "The quantity of the hardware resource that you want to commit to purchasing\n(in a type-dependent unit).\n \n - For vCPUs, you must specify an integer value.\n - For memory, you specify the amount of MB that you want. The value you\n specify must be a multiple of 256 MB, with up to 6.5 GB of\n memory per every vCPU.\n - For GPUs, you must specify an integer value.\n - For Local SSD disks, you must specify the amount in GB. The size of a\n single Local SSD disk is 375 GB.", - "format": "int64", + "etag": { + "description": "Output only. etag of the Rollout\nEx. abc1234", + "readOnly": true, "type": "string" }, - "type": { - "description": "The type of hardware resource that you want to specify.\nYou can specify any of the following values:\n \n - VCPU\n - MEMORY\n - LOCAL_SSD\n - ACCELERATOR\n\n\n\nSpecify as a separate entry in the list for each\nindividual resource type.", + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "compute#rollout", + "description": "Output only. [Output Only] Type of the resource. Always compute#rollout\nfor rollouts.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`\nwhich means the first character must be a lowercase letter, and all\nfollowing characters must be a dash, lowercase letter, or digit, except\nthe last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "rolloutEntity": { + "$ref": "RolloutRolloutEntity", + "description": "Required. The resource being rolled out." + }, + "rolloutPlan": { + "description": "Required. Rollout Plan used to model the Rollout.\nEx. compute.googleapis.com/v1/projects/1234/rolloutPlans/rp1", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", + "readOnly": true, + "type": "string" + }, + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL for this resource's resource id.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The current state of the Rollout.", "enum": [ - "ACCELERATOR", - "LOCAL_SSD", - "MEMORY", - "UNSPECIFIED", - "VCPU" + "CANCELLED", + "CANCELLING", + "CANCEL_FAILED", + "COMPLETED", + "COMPLETE_FAILED", + "COMPLETING", + "FAILED", + "PAUSED", + "PAUSE_FAILED", + "PAUSING", + "PROCESSING", + "READY", + "RESUMING", + "ROLLBACK_WAVE_FAILED", + "ROLLING_BACK", + "STATE_UNSPECIFIED", + "UNINITIALIZED", + "WAVE_FAILED" ], "enumDescriptions": [ - "", - "", - "", - "", - "" + "The rollout is in a failure terminal state.", + "The rollout is being cancelled.", + "An attempted cancel operation was unsuccessful.", + "The rollout is in a successful terminal state.", + "An attempted complete operation was unsuccessful.", + "The rollout is being marked as completed.", + "The rollout completed with failures.", + "The rollout is paused.", + "An attempted pause operation was unsuccessful.", + "The rollout is being paused.", + "A wave is being processed by the product.", + "The rollout has been successfully initialized and is ready to start.", + "The rollout is being resumed after being paused.", + "An attempted rollback operation failed to complete successfully.", + "A wave rollback is in progress for this rollout.", + "Undefined default state. Should never be exposed to users.", + "The rollout has been created but is not yet ready to be started.", + "The product failed to process the wave." ], + "readOnly": true, "type": "string" - } - }, - "type": "object" - }, - "ResourceGroupReference": { - "id": "ResourceGroupReference", - "properties": { - "group": { - "description": "A URI referencing one of the instance groups or network endpoint groups\nlisted in the backend service.", - "type": "string" - } - }, - "type": "object" - }, - "ResourcePoliciesScopedList": { - "id": "ResourcePoliciesScopedList", - "properties": { - "resourcePolicies": { - "description": "A list of resourcePolicies contained in this scope.", + }, + "waveDetails": { + "description": "Output only. Details about each wave of the rollout.", "items": { - "$ref": "ResourcePolicy" + "$ref": "RolloutWaveDetails" }, + "readOnly": true, "type": "array" - }, - "warning": { - "description": "Informational warning which replaces the list of resourcePolicies when\nthe list is empty.", - "properties": { - "code": { - "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", - "enum": [ - "CLEANUP_FAILED", - "DEPRECATED_RESOURCE_USED", - "DEPRECATED_TYPE_USED", - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", - "EXPERIMENTAL_TYPE_USED", - "EXTERNAL_API_WARNING", - "FIELD_VALUE_OVERRIDEN", - "INJECTED_KERNELS_DEPRECATED", - "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", - "LARGE_DEPLOYMENT_WARNING", - "LIST_OVERHEAD_QUOTA_EXCEED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "PARTIAL_SUCCESS", - "QUOTA_INFO_UNAVAILABLE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDeprecated": [ - false, - false, - false, - false, - false, - false, - true, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false - ], - "enumDescriptions": [ - "Warning about failed cleanup of transient changes made by a failed\noperation.", - "A link to a deprecated resource was created.", - "When deploying and at least one of the resources has a type marked as\ndeprecated", - "The user created a boot disk that is larger than image size.", - "When deploying and at least one of the resources has a type marked as\nexperimental", - "Warning that is present in an external api call", - "Warning that value of a field has been overridden.\nDeprecated unused field.", - "The operation involved use of an injected kernel, which is deprecated.", - "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", - "When deploying a deployment with a exceedingly large number of resources", - "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", - "A resource depends on a missing type", - "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", - "The route's next hop instance cannot ip forward.", - "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", - "The route's nextHopInstance URL refers to an instance that does not exist.", - "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", - "The route's next hop instance does not have a status of RUNNING.", - "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", - "No results are present on a particular list page.", - "Success is reported, but some results may be missing due to errors", - "Quota information is not available to client requests (e.g:\nregions.list).", - "The user attempted to use a resource that requires a TOS they have not\naccepted.", - "Warning that a resource is in use.", - "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", - "When a resource schema validation is ignored.", - "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", - "When undeclared properties in the schema are present", - "A given scope cannot be reached." - ], - "type": "string" - }, - "data": { - "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", - "items": { - "properties": { - "key": { - "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", - "type": "string" - }, - "value": { - "description": "[Output Only] A warning data value corresponding to the key.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "message": { - "description": "[Output Only] A human-readable description of the warning code.", - "type": "string" - } - }, - "type": "object" } }, "type": "object" }, - "ResourcePolicy": { - "description": "Represents a Resource Policy resource. You can use resource policies to\nschedule actions for some Compute Engine resources. For example, you can\nuse them toschedule persistent disk\nsnapshots.", - "id": "ResourcePolicy", + "RolloutPlan": { + "description": "RolloutPlan resource.\n\nA RolloutPlan is the customer-defined strategy to divide a large-scale change\ninto smaller increments, referred to as \"waves\". Each wave targets a specific\nportion of the overall affected area and defines criteria that must be met\nbefore progressing to the subsequent wave.", + "id": "RolloutPlan", "properties": { "creationTimestamp": { "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", @@ -83329,89 +92461,248 @@ "type": "string" }, "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", "type": "string" }, - "diskConsistencyGroupPolicy": { - "$ref": "ResourcePolicyDiskConsistencyGroupPolicy", - "description": "Resource policy for disk consistency groups." - }, - "groupPlacementPolicy": { - "$ref": "ResourcePolicyGroupPlacementPolicy", - "description": "Resource policy for instances for placement configuration." - }, "id": { "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "format": "uint64", "readOnly": true, "type": "string" }, - "instanceSchedulePolicy": { - "$ref": "ResourcePolicyInstanceSchedulePolicy", - "description": "Resource policy for scheduling instance operations." - }, "kind": { - "default": "compute#resourcePolicy", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#resource_policies for resource policies.", + "default": "compute#rolloutPlan", + "description": "Output only. [Output Only] Type of the resource. Always compute#rolloutPlan\nfor rolloutPlans.", "readOnly": true, "type": "string" }, + "locationScope": { + "description": "The location scope of the rollout plan. If not specified, the location\nscope is considered as ZONAL.", + "enum": [ + "LOCATION_SCOPE_UNSPECIFIED", + "REGIONAL", + "ZONAL" + ], + "enumDescriptions": [ + "Unspecified value. Considered as ZONAL.", + "Regional scope.", + "Zonal scope." + ], + "type": "string" + }, "name": { "annotations": { "required": [ - "compute.instances.insert" + "compute.rolloutPlans.insert" ] }, - "description": "The name of the resource, provided by the client when initially creating\nthe resource. The resource name must be 1-63 characters long, and comply\nwithRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`\nwhich means the first character must be a lowercase letter, and all\nfollowing characters must be a dash, lowercase letter, or digit, except\nthe last character, which cannot be a dash.", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, - "region": { + "selfLink": { + "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", "readOnly": true, "type": "string" }, - "resourceStatus": { - "$ref": "ResourcePolicyResourceStatus", - "description": "Output only. [Output Only] The system status of the resource policy.", - "readOnly": true + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL for this resource's resource id.", + "readOnly": true, + "type": "string" }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", + "waves": { + "description": "Required. The waves included in this rollout plan.", + "items": { + "$ref": "RolloutPlanWave" + }, + "type": "array" + } + }, + "type": "object" + }, + "RolloutPlanWave": { + "description": "A single wave in a rollout plan.", + "id": "RolloutPlanWave", + "properties": { + "displayName": { + "description": "Optional. The display name of this wave of the rollout plan.", + "type": "string" + }, + "number": { + "description": "Output only. The wave number.", + "format": "int64", "readOnly": true, "type": "string" }, - "snapshotSchedulePolicy": { - "$ref": "ResourcePolicySnapshotSchedulePolicy", - "description": "Resource policy for persistent disks for creating snapshots." + "orchestrationOptions": { + "$ref": "RolloutPlanWaveOrchestrationOptions", + "description": "Optional. The orchestration options for this wave." }, - "status": { - "description": "Output only. [Output Only] The status of resource policy creation.", + "selectors": { + "description": "Required. The selectors for this wave. There is a logical AND between each selector\ndefined in a wave, so a resource must satisfy the criteria of *all* the\nspecified selectors to be in scope for the wave.", + "items": { + "$ref": "RolloutPlanWaveSelector" + }, + "type": "array" + }, + "validation": { + "$ref": "RolloutPlanWaveValidation", + "description": "Required. The validation to be performed at the end of this wave." + } + }, + "type": "object" + }, + "RolloutPlanWaveOrchestrationOptions": { + "description": "Options to control the pace of orchestration of a wave. These options are\nrequired only if the resource being rolled out follows the Orchestrated\npattern.", + "id": "RolloutPlanWaveOrchestrationOptions", + "properties": { + "delays": { + "description": "Optional. Delays, if any, to be added between batches of projects. We allow\nmultiple Delays to be specified, letting users set separate delays\nbetween batches of projects corresponding to different locations and\nbatches of projects corresponding to the same location.", + "items": { + "$ref": "RolloutPlanWaveOrchestrationOptionsDelay" + }, + "type": "array" + }, + "maxConcurrentLocations": { + "description": "Optional. Maximum number of locations to be orchestrated in parallel.", + "format": "int64", + "type": "string" + }, + "maxConcurrentResourcesPerLocation": { + "description": "Optional. Maximum number of resources to be orchestrated per location in\nparallel.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "RolloutPlanWaveOrchestrationOptionsDelay": { + "description": "Options to control the delay, if any, between batches of projects.", + "id": "RolloutPlanWaveOrchestrationOptionsDelay", + "properties": { + "delimiter": { + "description": "Optional. Controls whether the delay should only be added between batches of\nprojects corresponding to different locations, or also between\nbatches of projects corresponding to the same location.\n\nMust be set to DELIMITER_UNSPECIFIED if no delay is to be added.", "enum": [ - "CREATING", - "DELETING", - "EXPIRED", - "INVALID", - "READY" + "DELIMITER_BATCH", + "DELIMITER_LOCATION", + "DELIMITER_UNSPECIFIED" ], "enumDescriptions": [ - "Resource policy is being created.", - "Resource policy is being deleted.", - "Resource policy is expired and will not run again.", - "", - "Resource policy is ready to be used." + "The delay will also be added between batches of projects\ncorresponding to the same location.", + "The delay will only be added between batches of projects\ncorresponding to different locations.", + "No delay will be added between batches of projects. Processing will\ncontinue with the next batch as soon as the previous batch of LROs\nis done." ], - "readOnly": true, "type": "string" }, - "workloadPolicy": { - "$ref": "ResourcePolicyWorkloadPolicy", - "description": "Resource policy for defining instance placement for MIGs." + "duration": { + "description": "Optional. The duration of the delay, if any, to be added between batches of\nprojects. A zero duration corresponds to no delay.", + "format": "google-duration", + "type": "string" + }, + "type": { + "description": "Optional. Controls whether the specified duration is to be added at the end of\neach batch, or if the total processing time for each batch will be\npadded if needed to meet the specified duration.\n\nMust be set to TYPE_UNSPECIFIED if no delay is to be added.", + "enum": [ + "TYPE_MINIMUM", + "TYPE_OFFSET", + "TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "The total processing time for each batch of projects will be padded\nif needed to meet the specified delay duration.", + "The specified delay will directly be added after each batch of\nprojects as specified by the delimiter.", + "No delay will be added between batches of projects. Processing will\ncontinue with the next batch as soon as the previous batch of LROs\nis done." + ], + "type": "string" } }, "type": "object" }, - "ResourcePolicyAggregatedList": { - "description": "Contains a list of resourcePolicies.", - "id": "ResourcePolicyAggregatedList", + "RolloutPlanWaveSelector": { + "description": "A selector which specifies what resource(s) are included in a given wave.", + "id": "RolloutPlanWaveSelector", + "properties": { + "locationSelector": { + "$ref": "RolloutPlanWaveSelectorLocationSelector", + "description": "Optional. Roll out to resources by Cloud locations." + }, + "resourceHierarchySelector": { + "$ref": "RolloutPlanWaveSelectorResourceHierarchySelector", + "description": "Optional. Roll out to resources by Cloud Resource Manager resource hierarchy." + } + }, + "type": "object" + }, + "RolloutPlanWaveSelectorLocationSelector": { + "description": "Roll out to resources by location.", + "id": "RolloutPlanWaveSelectorLocationSelector", + "properties": { + "includedLocations": { + "description": "Optional. Example: \"us-central1-a\"", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RolloutPlanWaveSelectorResourceHierarchySelector": { + "description": "Roll out to resources by Cloud Resource Manager resource hierarchy\nnodes such as projects, folders, orgs.", + "id": "RolloutPlanWaveSelectorResourceHierarchySelector", + "properties": { + "includedFolders": { + "description": "Optional. Format: \"folders/{folder_id}\"", + "items": { + "type": "string" + }, + "type": "array" + }, + "includedOrganizations": { + "description": "Optional. Format: \"organizations/{organization_id}\"", + "items": { + "type": "string" + }, + "type": "array" + }, + "includedProjects": { + "description": "Optional. Format: \"projects/{project_id}\"", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RolloutPlanWaveValidation": { + "description": "The validation to be performed before progressing to the next wave.", + "id": "RolloutPlanWaveValidation", + "properties": { + "timeBasedValidationMetadata": { + "$ref": "RolloutPlanWaveValidationTimeBasedValidationMetadata", + "description": "Optional. Metadata required if type = \"time\"." + }, + "type": { + "description": "Required. The type of the validation. If a type of validation is associated with\na metadata object, the appropriate metadata field mapping to the\nvalidation type must be provided in the validation message. Possible\nvalues are in quotes below alongside an explanation:\n \"manual\": The system waits for an end-user approval API before\n progressing to the next wave.\n \"time\": The system waits for a user specified duration before\n progressing to the next wave. TimeBasedValidation must be provided.", + "type": "string" + } + }, + "type": "object" + }, + "RolloutPlanWaveValidationTimeBasedValidationMetadata": { + "description": "Metadata required if type = \"time\".", + "id": "RolloutPlanWaveValidationTimeBasedValidationMetadata", + "properties": { + "waitDuration": { + "description": "Optional. The duration that the system waits in between waves. This wait starts\nafter all changes in the wave are rolled out.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "RolloutPlansListResponse": { + "description": "Contains a list of RolloutPlan resources.", + "id": "RolloutPlansListResponse", "properties": { "etag": { "type": "string" @@ -83421,18 +92712,11 @@ "type": "string" }, "items": { - "additionalProperties": { - "$ref": "ResourcePoliciesScopedList", - "description": "Name of the scope containing this set of resourcePolicies." + "description": "A list of RolloutPlan resources.", + "items": { + "$ref": "RolloutPlan" }, - "description": "A list of ResourcePolicy resources.", - "type": "object" - }, - "kind": { - "default": "compute#resourcePolicyAggregatedList", - "description": "Output only. Type of resource.", - "readOnly": true, - "type": "string" + "type": "array" }, "nextPageToken": { "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", @@ -83444,7 +92728,7 @@ "type": "string" }, "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", + "description": "Output only. [Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", "items": { "type": "string" }, @@ -83578,160 +92862,150 @@ }, "type": "object" }, - "ResourcePolicyDailyCycle": { - "description": "Time window specified for daily operations.", - "id": "ResourcePolicyDailyCycle", + "RolloutRolloutEntity": { + "description": "Specifications of the resource to roll out.", + "id": "RolloutRolloutEntity", "properties": { - "daysInCycle": { - "description": "Defines a schedule with units measured in days. The value determines\nhow many days pass between the start of each cycle.", - "format": "int32", - "type": "integer" - }, - "duration": { - "description": "Output only. [Output only] A predetermined duration for the window, automatically\nchosen to be the smallest possible in the given scenario.", - "readOnly": true, - "type": "string" - }, - "startTime": { - "description": "Start time of the window. This must be in UTC format that resolves to one\nof 00:00, 04:00, 08:00,12:00, 16:00, or 20:00. For\nexample, both 13:00-5 and 08:00 are valid.", - "type": "string" + "orchestratedEntity": { + "$ref": "RolloutRolloutEntityOrchestratedEntity", + "description": "Optional. Entity details for products using the Orchestrated Integration model." } }, "type": "object" }, - "ResourcePolicyDiskConsistencyGroupPolicy": { - "description": "Resource policy for disk consistency groups.", - "id": "ResourcePolicyDiskConsistencyGroupPolicy", - "properties": {}, - "type": "object" - }, - "ResourcePolicyGroupPlacementPolicy": { - "description": "A GroupPlacementPolicy specifies resource placement configuration.\nIt specifies the failure bucket separation", - "id": "ResourcePolicyGroupPlacementPolicy", + "RolloutRolloutEntityOrchestratedEntity": { + "description": "This message is used if the resource type follows the Orchestrated\nintegration model with ProgressiveRollout.", + "id": "RolloutRolloutEntityOrchestratedEntity", "properties": { - "acceleratorTopologyMode": { - "description": "Specifies the connection mode for the accelerator topology. If not\nspecified, the default is AUTO_CONNECT.", - "enum": [ - "AUTO_CONNECT", - "PROVISION_ONLY" - ], - "enumDescriptions": [ - "The interconnected chips are pre-configured at the time of VM creation.", - "The interconnected chips are connected on demand. At the time of VM\ncreation, the chips are not connected." - ], + "conflictBehavior": { + "description": "Required. Specifies the behavior of the Rollout if an out of band update is\ndetected in a project during a Rollout. It can be one of the following\nvalues:\n1) overwrite : Overwrite the local value with the rollout value.\n2) no_overwrite : Do not overwrite the local value with the rollout\nvalue.", "type": "string" }, - "availabilityDomainCount": { - "description": "The number of availability domains to spread instances across. If two\ninstances are in different availability domain, they are not in the same\nlow latency network.", - "format": "int32", - "type": "integer" - }, - "collocation": { - "description": "Specifies network collocation", - "enum": [ - "COLLOCATED", - "UNSPECIFIED_COLLOCATION" - ], - "enumDescriptions": [ - "", - "" - ], + "orchestrationAction": { + "description": "Required. Orchestration action during the Rollout. It can be one of the following\nvalues:\n1) \"update\": Resources will be updated by the rollout.\n2) \"delete\": Resources will be deleted by the rollout.", "type": "string" }, - "gpuTopology": { - "description": "Specifies the shape of the GPU slice, in slice based GPU families eg.\nA4X.", + "orchestrationSource": { + "description": "Required. Fully qualified resource name of the resource which contains the source\nof truth of the configuration being rolled out across\nlocations/projects. For example, in the case of a global Rollout which\nis applied across regions, this contains the name of the global\nresource created by the user which contains a payload for a resource\nthat is orchestrated across regions. This follows the following format:\n//.googleapis.com/projects//locations/global//\ne.g.\n//osconfig.googleapis.com/projects/1/locations/global/policyOrchestrators/po1", "type": "string" - }, - "vmCount": { - "description": "Number of VMs in this placement group. Google does not recommend that you\nuse this field unless you use a compact policy and you want your policy\nto work only if it contains this exact number of VMs.", - "format": "int32", - "type": "integer" } }, "type": "object" }, - "ResourcePolicyHourlyCycle": { - "description": "Time window specified for hourly operations.", - "id": "ResourcePolicyHourlyCycle", + "RolloutWaveDetails": { + "description": "Additional metadata about the status of each wave provided by the server.", + "id": "RolloutWaveDetails", "properties": { - "duration": { - "description": "Output only. [Output only] Duration of the time window, automatically chosen to be\nsmallest possible in the given scenario.", + "orchestratedWaveDetails": { + "$ref": "RolloutWaveDetailsOrchestratedWaveDetails", + "description": "Output only. Additional details of the wave for products using the Orchestrated\nIntegration model.", + "readOnly": true + }, + "waveDisplayName": { + "description": "Output only. Wave name.\nEx. wave1", "readOnly": true, "type": "string" }, - "hoursInCycle": { - "description": "Defines a schedule with units measured in hours. The value determines\nhow many hours pass between the start of each cycle.", - "format": "int32", - "type": "integer" - }, - "startTime": { - "description": "Time within the window to start the operations.\nIt must be in format \"HH:MM\", where HH : [00-23] and MM : [00-00] GMT.", + "waveNumber": { + "description": "Output only. System generated number for the wave.", + "format": "int64", + "readOnly": true, "type": "string" } }, "type": "object" }, - "ResourcePolicyInstanceSchedulePolicy": { - "description": "An InstanceSchedulePolicy specifies when and how frequent certain\noperations are performed on the instance.", - "id": "ResourcePolicyInstanceSchedulePolicy", + "RolloutWaveDetailsOrchestratedWaveDetails": { + "description": "Details of the wave for products using the Orchestrated integration\nmodel.", + "id": "RolloutWaveDetailsOrchestratedWaveDetails", "properties": { - "expirationTime": { - "description": "The expiration time of the schedule. The timestamp is an RFC3339 string.", + "completedResourcesCount": { + "description": "Output only. Resource completed so far.", + "format": "int64", + "readOnly": true, "type": "string" }, - "startTime": { - "description": "The start time of the schedule. The timestamp is an RFC3339 string.", + "estimatedCompletionTime": { + "description": "Output only. Estimated timestamp at which the wave will complete. Extrapolated from\ncurrent progress.", + "readOnly": true, "type": "string" }, - "timeZone": { - "description": "Specifies the time zone to be used in interpreting Schedule.schedule.\nThe value of this field must be a time zone name from the tz database:\nhttps://wikipedia.org/wiki/Tz_database.", + "estimatedTotalResourcesCount": { + "description": "Output only. Estimated total count of resources.", + "format": "int64", + "readOnly": true, "type": "string" }, - "vmStartSchedule": { - "$ref": "ResourcePolicyInstanceSchedulePolicySchedule", - "description": "Specifies the schedule for starting instances." + "failedLocations": { + "description": "Output only. Locations that failed during orchestration, and ProgressiveRollout\nstopped retrying. There may be some successful resources rolled out in\nthe wave as the location may have failed later in the Rollout.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" }, - "vmStopSchedule": { - "$ref": "ResourcePolicyInstanceSchedulePolicySchedule", - "description": "Specifies the schedule for stopping instances." + "failedResourcesCount": { + "description": "Output only. Resources failed.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "locationStatus": { + "additionalProperties": { + "$ref": "RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus" + }, + "description": "Output only. Status of each location in the wave. Map keys (locations) must be\nspecified like \"us-east1\" or \"asia-west1-a\".", + "readOnly": true, + "type": "object" } }, "type": "object" }, - "ResourcePolicyInstanceSchedulePolicySchedule": { - "description": "Schedule for an instance operation.", - "id": "ResourcePolicyInstanceSchedulePolicySchedule", + "RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus": { + "description": "Represents the status of a location in a wave.", + "id": "RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus", "properties": { - "schedule": { - "description": "Specifies the frequency for the operation, using the unix-cron format.", + "state": { + "description": "Output only. Location state of the wave.", + "enum": [ + "STATE_FAILED", + "STATE_IN_PROGRESS", + "STATE_PENDING", + "STATE_SKIPPED", + "STATE_SUCCEEDED", + "STATE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Work on the wave failed.", + "Work on the wave is in progress.", + "Work on the wave is pending.", + "Work on the wave was canceled or skipped.", + "Work on the wave succeeded.", + "Undefined default state. Should never be exposed to users." + ], + "readOnly": true, "type": "string" } }, "type": "object" }, - "ResourcePolicyList": { - "id": "ResourcePolicyList", + "RolloutsListResponse": { + "id": "RolloutsListResponse", "properties": { "etag": { "type": "string" }, "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "[Output Only] A list of ResourcePolicy resources.", + "description": "A list of Rollout resources.", "items": { - "$ref": "ResourcePolicy" + "$ref": "Rollout" }, "type": "array" }, - "kind": { - "default": "compute#resourcePolicyList", - "description": "Output only. [Output Only] Type of resource.Alwayscompute#resourcePoliciesList for listsof resourcePolicies", - "readOnly": true, - "type": "string" - }, "nextPageToken": { "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" @@ -83741,6 +93015,14 @@ "readOnly": true, "type": "string" }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -83868,337 +93150,6 @@ }, "type": "object" }, - "ResourcePolicyResourceStatus": { - "description": "Contains output only fields.\nUse this sub-message for all output fields set on ResourcePolicy.\nThe internal structure of this \"status\" field should mimic the structure\nof ResourcePolicy proto specification.", - "id": "ResourcePolicyResourceStatus", - "properties": { - "instanceSchedulePolicy": { - "$ref": "ResourcePolicyResourceStatusInstanceSchedulePolicyStatus", - "description": "Output only. [Output Only] Specifies a set of output values reffering to\nthe instance_schedule_policy system status.\nThis field should have the same name as corresponding policy field.", - "readOnly": true - } - }, - "type": "object" - }, - "ResourcePolicyResourceStatusInstanceSchedulePolicyStatus": { - "id": "ResourcePolicyResourceStatusInstanceSchedulePolicyStatus", - "properties": { - "lastRunStartTime": { - "description": "Output only. [Output Only] The last time the schedule successfully ran.\nThe timestamp is an RFC3339 string.", - "readOnly": true, - "type": "string" - }, - "nextRunStartTime": { - "description": "Output only. [Output Only] The next time the schedule is planned to run.\nThe actual time might be slightly different.\nThe timestamp is an RFC3339 string.", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "ResourcePolicySnapshotSchedulePolicy": { - "description": "A snapshot schedule policy specifies when and how frequently snapshots are\nto be created for the target disk. Also specifies how many and how long\nthese scheduled snapshots should be retained.", - "id": "ResourcePolicySnapshotSchedulePolicy", - "properties": { - "retentionPolicy": { - "$ref": "ResourcePolicySnapshotSchedulePolicyRetentionPolicy", - "description": "Retention policy applied to snapshots created by this resource policy." - }, - "schedule": { - "$ref": "ResourcePolicySnapshotSchedulePolicySchedule", - "description": "A Vm Maintenance Policy specifies what kind of infrastructure\nmaintenance we are allowed to perform on this VM and when. Schedule\nthat is applied to disks covered by this policy." - }, - "snapshotProperties": { - "$ref": "ResourcePolicySnapshotSchedulePolicySnapshotProperties", - "description": "Properties with which snapshots are created such as labels, encryption\nkeys." - } - }, - "type": "object" - }, - "ResourcePolicySnapshotSchedulePolicyRetentionPolicy": { - "description": "Policy for retention of scheduled snapshots.", - "id": "ResourcePolicySnapshotSchedulePolicyRetentionPolicy", - "properties": { - "maxRetentionDays": { - "description": "Maximum age of the snapshot that is allowed to be kept.", - "format": "int32", - "type": "integer" - }, - "onSourceDiskDelete": { - "description": "Specifies the behavior to apply to scheduled snapshots when\nthe source disk is deleted.", - "enum": [ - "APPLY_RETENTION_POLICY", - "KEEP_AUTO_SNAPSHOTS", - "UNSPECIFIED_ON_SOURCE_DISK_DELETE" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "type": "string" - } - }, - "type": "object" - }, - "ResourcePolicySnapshotSchedulePolicySchedule": { - "description": "A schedule for disks where the schedueled operations are performed.", - "id": "ResourcePolicySnapshotSchedulePolicySchedule", - "properties": { - "dailySchedule": { - "$ref": "ResourcePolicyDailyCycle" - }, - "hourlySchedule": { - "$ref": "ResourcePolicyHourlyCycle" - }, - "weeklySchedule": { - "$ref": "ResourcePolicyWeeklyCycle" - } - }, - "type": "object" - }, - "ResourcePolicySnapshotSchedulePolicySnapshotProperties": { - "description": "Specified snapshot properties for scheduled snapshots created by this\npolicy.", - "id": "ResourcePolicySnapshotSchedulePolicySnapshotProperties", - "properties": { - "chainName": { - "description": "Chain name that the snapshot is created in.", - "type": "string" - }, - "guestFlush": { - "description": "Indication to perform a 'guest aware' snapshot.", - "type": "boolean" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels to apply to scheduled snapshots. These can be later modified\nby the setLabels method. Label values may be empty.", - "type": "object" - }, - "storageLocations": { - "description": "Cloud Storage bucket storage location of the auto snapshot (regional or\nmulti-regional).", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "ResourcePolicyWeeklyCycle": { - "description": "Time window specified for weekly operations.", - "id": "ResourcePolicyWeeklyCycle", - "properties": { - "dayOfWeeks": { - "description": "Up to 7 intervals/windows, one for each day of the week.", - "items": { - "$ref": "ResourcePolicyWeeklyCycleDayOfWeek" - }, - "type": "array" - } - }, - "type": "object" - }, - "ResourcePolicyWeeklyCycleDayOfWeek": { - "id": "ResourcePolicyWeeklyCycleDayOfWeek", - "properties": { - "day": { - "description": "Defines a schedule that runs on specific days of the week. Specify\none or more days. The following options are available:\nMONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY.", - "enum": [ - "FRIDAY", - "INVALID", - "MONDAY", - "SATURDAY", - "SUNDAY", - "THURSDAY", - "TUESDAY", - "WEDNESDAY" - ], - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ], - "type": "string" - }, - "duration": { - "description": "Output only. [Output only] Duration of the time window, automatically chosen to be\nsmallest possible in the given scenario.", - "readOnly": true, - "type": "string" - }, - "startTime": { - "description": "Time within the window to start the operations.\nIt must be in format \"HH:MM\", where HH : [00-23] and MM : [00-00] GMT.", - "type": "string" - } - }, - "type": "object" - }, - "ResourcePolicyWorkloadPolicy": { - "description": "Represents the workload policy.", - "id": "ResourcePolicyWorkloadPolicy", - "properties": { - "acceleratorTopology": { - "description": "Specifies the topology required to create a partition for VMs that have\ninterconnected GPUs.", - "type": "string" - }, - "maxTopologyDistance": { - "description": "Specifies the maximum distance between instances.", - "enum": [ - "BLOCK", - "CLUSTER", - "SUBBLOCK" - ], - "enumDescriptions": [ - "VMs must be provisioned in the same block.", - "VMs must be provisioned in the same cluster.", - "VMs must be provisioned in the same subblock." - ], - "type": "string" - }, - "type": { - "description": "Specifies the intent of the instance placement in the MIG.", - "enum": [ - "HIGH_AVAILABILITY", - "HIGH_THROUGHPUT" - ], - "enumDescriptions": [ - "MIG spreads out the instances as much as possible for high availability.", - "MIG provisions instances as close to each other as possible for high\nthroughput." - ], - "type": "string" - } - }, - "type": "object" - }, - "ResourceStatus": { - "description": "Contains output only fields.\nUse this sub-message for actual values set on Instance attributes as compared\nto the value requested by the user (intent) in their instance CRUD calls.", - "id": "ResourceStatus", - "properties": { - "effectiveInstanceMetadata": { - "$ref": "ResourceStatusEffectiveInstanceMetadata", - "description": "Output only. [Output Only] Effective metadata is a field that consolidates project,\nzonal instance settings, and instance-level predefined metadata keys to\nprovide the overridden value for those metadata keys at the instance level.", - "readOnly": true - }, - "physicalHost": { - "description": "Output only. [Output Only] The precise location of your instance within the zone's data\ncenter, including the block, sub-block, and host. The field is formatted as\nfollows: blockId/subBlockId/hostId.", - "readOnly": true, - "type": "string" - }, - "physicalHostTopology": { - "$ref": "ResourceStatusPhysicalHostTopology", - "description": "Output only. [Output Only] A series of fields containing the global name of the Compute\nEngine cluster, as well as the ID of the block, sub-block, and host on\nwhich the running instance is located.", - "readOnly": true - }, - "reservationConsumptionInfo": { - "$ref": "ResourceStatusReservationConsumptionInfo", - "description": "Output only. [Output Only] Reservation information that the instance is consuming from.", - "readOnly": true - }, - "scheduling": { - "$ref": "ResourceStatusScheduling" - }, - "upcomingMaintenance": { - "$ref": "UpcomingMaintenance", - "readOnly": true - } - }, - "type": "object" - }, - "ResourceStatusEffectiveInstanceMetadata": { - "description": "Effective values of predefined metadata keys for an instance.", - "id": "ResourceStatusEffectiveInstanceMetadata", - "properties": { - "blockProjectSshKeysMetadataValue": { - "description": "Effective block-project-ssh-keys value at Instance level.", - "type": "boolean" - }, - "enableGuestAttributesMetadataValue": { - "description": "Effective enable-guest-attributes value at Instance level.", - "type": "boolean" - }, - "enableOsInventoryMetadataValue": { - "description": "Effective enable-os-inventory value at Instance level.", - "type": "boolean" - }, - "enableOsconfigMetadataValue": { - "description": "Effective enable-osconfig value at Instance level.", - "type": "boolean" - }, - "enableOsloginMetadataValue": { - "description": "Effective enable-oslogin value at Instance level.", - "type": "boolean" - }, - "gceContainerDeclarationMetadataValue": { - "description": "Effective gce-container-declaration value at Instance level.", - "type": "boolean" - }, - "serialPortEnableMetadataValue": { - "description": "Effective serial-port-enable value at Instance level.", - "type": "boolean" - }, - "serialPortLoggingEnableMetadataValue": { - "description": "Effective serial-port-logging-enable value at Instance level.", - "type": "boolean" - }, - "vmDnsSettingMetadataValue": { - "description": "Effective VM DNS setting at Instance level.", - "type": "string" - } - }, - "type": "object" - }, - "ResourceStatusPhysicalHostTopology": { - "description": "Represents the physical host topology of the host on which the VM is\nrunning.", - "id": "ResourceStatusPhysicalHostTopology", - "properties": { - "block": { - "description": "[Output Only] The ID of the block in which the running instance is\nlocated. Instances within the same block experience low network latency.", - "type": "string" - }, - "cluster": { - "description": "[Output Only] The global name of the Compute Engine cluster where the\nrunning instance is located.", - "type": "string" - }, - "host": { - "description": "[Output Only] The ID of the host on which the running instance is located.\nInstances on the same host experience the lowest possible network\nlatency.", - "type": "string" - }, - "subblock": { - "description": "[Output Only] The ID of the sub-block in which the running instance is\nlocated. Instances in the same sub-block experience lower network latency\nthan instances in the same block.", - "type": "string" - } - }, - "type": "object" - }, - "ResourceStatusReservationConsumptionInfo": { - "description": "Reservation consumption information that the instance is consuming from.", - "id": "ResourceStatusReservationConsumptionInfo", - "properties": { - "consumedReservation": { - "description": "Output only. [Output Only] The full resource name of the reservation that this\ninstance is consuming from.", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "ResourceStatusScheduling": { - "id": "ResourceStatusScheduling", - "properties": { - "availabilityDomain": { - "description": "Specifies the availability domain to place the instance in. The value\nmust be a number between 1 and the number of availability domains\nspecified in the spread placement policy attached to the instance.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, "Route": { "description": "Represents a Route resource.\n\nA route defines a path from VM instances in the VPC network to a specific\ndestination. This destination can be inside or outside the VPC network.\nFor more information, read theRoutes overview.", "id": "Route", @@ -88831,6 +97782,10 @@ "description": "The url of a connected endpoint.", "type": "string" }, + "endpointWithId": { + "description": "The url of a connected endpoint with resource id.", + "type": "string" + }, "natIps": { "description": "NAT IPs of the connected PSC endpoint and those of other endpoints\npropagated from it.", "items": { @@ -88879,6 +97834,10 @@ "format": "uint32", "type": "integer" }, + "endpointUrl": { + "description": "The URL for the PSC endpoint to accept", + "type": "string" + }, "networkUrl": { "description": "The network URL for the network to set the limit for.", "type": "string" @@ -89492,6 +98451,11 @@ "$ref": "SnapshotParams", "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." }, + "region": { + "description": "Output only. [Output Only] URL of the region where the snapshot resides. Only applicable\nfor regional snapshots.", + "readOnly": true, + "type": "string" + }, "satisfiesPzi": { "description": "Output only. Reserved for future use.", "readOnly": true, @@ -89511,6 +98475,16 @@ "$ref": "CustomerEncryptionKey", "description": "Encrypts the snapshot using acustomer-supplied\nencryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must\nprovide the same key if you use the snapshot later. For example, you must\nprovide the encryption key when you create a disk from the encrypted\nsnapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata\nof the snapshot.\n\nIf you do not provide an encryption key when creating the snapshot, then\nthe snapshot will be encrypted using an automatically generated key and you\ndo not need to provide a key to use the snapshot later." }, + "snapshotGroupId": { + "description": "Output only. [Output Only] The unique ID of the snapshot group that this snapshot\nbelongs to. The usage of snapshot group feature is restricted.", + "readOnly": true, + "type": "string" + }, + "snapshotGroupName": { + "description": "Output only. [Output only] The snapshot group that this snapshot belongs to. The usage\nof snapshot group feature is restricted.", + "readOnly": true, + "type": "string" + }, "snapshotType": { "description": "Indicates the type of the snapshot.", "enum": [ @@ -89611,6 +98585,27 @@ }, "type": "object" }, + "SnapshotGroupParameters": { + "id": "SnapshotGroupParameters", + "properties": { + "replicaZones": { + "description": "URLs of the zones where disks should be replicated to. Only applicable\nfor regional resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceSnapshotGroup": { + "description": "The source snapshot group used to create disks. You can provide this as a\npartial or full URL to the resource. For example, the following are valid\nvalues:\n \n \n - https://www.googleapis.com/compute/v1/projects/project/global/snapshotGroups/snapshotGroup \n - projects/project/global/snapshotGroups/snapshotGroup\n - global/snapshotGroups/snapshotGroup", + "type": "string" + }, + "type": { + "description": "URL of the disk type resource describing which disk type to use to create\ndisks. Provide this when creating the disk. For example:projects/project/zones/zone/diskTypes/pd-ssd. See Persistent disk\ntypes.", + "type": "string" + } + }, + "type": "object" + }, "SnapshotList": { "description": "Contains a list of Snapshot resources.", "id": "SnapshotList", @@ -89776,7 +98771,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the snapshot. Tag keys and values have\nthe same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the snapshot. Tag keys and values have\nthe same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -89785,6 +98780,10 @@ "SnapshotSettings": { "id": "SnapshotSettings", "properties": { + "accessLocation": { + "$ref": "SnapshotSettingsAccessLocation", + "description": "(Regional snapshots use only)Policy of which location is allowed to access\nsnapshot." + }, "storageLocation": { "$ref": "SnapshotSettingsStorageLocationSettings", "description": "Policy of which storage location is going to be resolved, and additional\ndata that particularizes how the policy is going to be carried out." @@ -89792,6 +98791,44 @@ }, "type": "object" }, + "SnapshotSettingsAccessLocation": { + "id": "SnapshotSettingsAccessLocation", + "properties": { + "locations": { + "additionalProperties": { + "$ref": "SnapshotSettingsAccessLocationAccessLocationPreference" + }, + "description": "List of regions that can restore a regional\n snapshot from the current region", + "type": "object" + }, + "policy": { + "description": "Policy of which location is allowed to access snapshot.", + "enum": [ + "ALL_REGIONS", + "POLICY_UNSPECIFIED", + "SPECIFIC_REGIONS" + ], + "enumDescriptions": [ + "Any regions will be able to access the source location.", + "", + "Only allowlisted regions will be able to restore region scoped\nsnapshots" + ], + "type": "string" + } + }, + "type": "object" + }, + "SnapshotSettingsAccessLocationAccessLocationPreference": { + "description": "A structure for specifying an allowed target region.", + "id": "SnapshotSettingsAccessLocationAccessLocationPreference", + "properties": { + "region": { + "description": "Accessible region name", + "type": "string" + } + }, + "type": "object" + }, "SnapshotSettingsStorageLocationSettings": { "id": "SnapshotSettingsStorageLocationSettings", "properties": { @@ -89832,6 +98869,16 @@ }, "type": "object" }, + "SnapshotUpdateKmsKeyRequest": { + "id": "SnapshotUpdateKmsKeyRequest", + "properties": { + "kmsKeyName": { + "description": "Optional. The new KMS key to replace the current one on the snapshot. If empty, the\nsnapshot will be re-encrypted using the primary version of the snapshot's\ncurrent KMS key.\n\nThe KMS key can be provided in the following formats:\n \n \n - projects/project_id/locations/region/keyRings/key_ring/cryptoKeys/key", + "type": "string" + } + }, + "type": "object" + }, "SourceDiskEncryptionKey": { "id": "SourceDiskEncryptionKey", "properties": { @@ -91122,8 +100169,22 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "postQuantumKeyExchange": { + "description": "One of DEFAULT, ENABLED, orDEFERRED. Controls whether the load balancer negotiates\nX25519MLKEM768 key exchange when clients advertise support for it. When set\nto DEFAULT, or if no SSL Policy is attached to the target\nproxy, the load balancer disallows X25519MLKEM768 key exchange before\nOctober 2026, and allows it afterward. When set to ENABLED,\nthe load balancer allows X25519MLKEM768 key exchange. When set toDEFERRED, the load balancer disallows X25519MLKEM768 key\nexchange until October 2027, and allows it afterward.", + "enum": [ + "DEFAULT", + "DEFERRED", + "ENABLED" + ], + "enumDescriptions": [ + "Default behavior: disabled until October 2026, enabled afterward.", + "Disabled until October 2027, enabled afterward.", + "Enabled now." + ], + "type": "string" + }, "profile": { - "description": "Profile specifies the set of SSL features that can be used by the load\nbalancer when negotiating SSL with clients. This can be one ofCOMPATIBLE, MODERN, RESTRICTED, orCUSTOM. If using CUSTOM, the set of SSL features\nto enable must be specified in the customFeatures field.", + "description": "Profile specifies the set of SSL features that can be used by the load\nbalancer when negotiating SSL with clients. This can be one ofCOMPATIBLE, MODERN, RESTRICTED,FIPS_202205, or CUSTOM. If usingCUSTOM, the set of SSL features to enable must be specified in\nthe customFeatures field. If using FIPS_202205,\nthe min_tls_version field must be set to TLS_1_2.", "enum": [ "COMPATIBLE", "CUSTOM", @@ -92168,7 +101229,7 @@ "additionalProperties": { "type": "string" }, - "description": "Input only. Resource manager tags to be bound to the storage pool. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/456` or in namespaced\nformat such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", + "description": "Input only. Resource manager tags to be bound to the storage pool. Tag keys and values\nhave the same definition as resource\nmanager tags. Keys and values can be either in numeric format,\nsuch as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in\nnamespaced format such as `{org_id|project_id}/{tag_key_short_name}` and\n`{tag_value_short_name}`. The field is ignored (both PUT &\nPATCH) when empty.", "type": "object" } }, @@ -94240,13 +103301,407 @@ }, "type": "object" }, - "TargetHttpProxiesScopedList": { - "id": "TargetHttpProxiesScopedList", + "TargetHttpProxiesScopedList": { + "id": "TargetHttpProxiesScopedList", + "properties": { + "targetHttpProxies": { + "description": "A list of TargetHttpProxies contained in this scope.", + "items": { + "$ref": "TargetHttpProxy" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of\nbackend services when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetHttpProxy": { + "description": "Represents a Target HTTP Proxy resource.\n\nGoogle Compute Engine has two Target HTTP Proxy resources:\n\n* [Global](/compute/docs/reference/rest/v1/targetHttpProxies)\n* [Regional](/compute/docs/reference/rest/v1/regionTargetHttpProxies)\n\nA target HTTP proxy is a component of Google Cloud HTTP load balancers.\n\n* targetHttpProxies are used by global external Application Load Balancers,\n classic Application Load Balancers, cross-region internal Application Load\n Balancers, and Traffic Director.\n* regionTargetHttpProxies are used by regional internal Application Load\n Balancers and regional external Application Load Balancers.\n\nForwarding rules reference a target HTTP proxy, and the target proxy\nthen references a URL map. For more information, readUsing Target Proxies\nand \nForwarding rule concepts.", + "id": "TargetHttpProxy", + "properties": { + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a TargetHttpProxy. An up-to-date fingerprint must\nbe provided in order to patch/update the TargetHttpProxy; otherwise, the\nrequest will fail with error 412 conditionNotMet. To see the\nlatest fingerprint, make a get() request to retrieve the\nTargetHttpProxy.", + "format": "byte", + "type": "string" + }, + "httpKeepAliveTimeoutSec": { + "description": "Specifies how long to keep a connection open, after completing a response,\nwhile there is no matching traffic (in seconds). If an HTTP keep-alive is\nnot specified, a default value (610 seconds) will be used.\n\nFor global external Application Load Balancers, the minimum allowed value\nis 5 seconds and the maximum allowed value is 1200 seconds.\n\nFor classic Application Load Balancers, this option is not supported.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetHttpProxy", + "description": "Output only. [Output Only] Type of resource. Always compute#targetHttpProxy\nfor target HTTP proxies.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "proxyBind": { + "description": "This field only applies when the forwarding rule that references this\ntarget proxy has a loadBalancingScheme set toINTERNAL_SELF_MANAGED.\n\nWhen this field is set to true, Envoy proxies set up inbound\ntraffic interception and bind to the IP address and port specified in the\nforwarding rule. This is generally useful when using Traffic Director to\nconfigure Envoy as a gateway or middle proxy (in other words, not a\nsidecar proxy). The Envoy proxy listens for inbound requests and handles\nrequests when it receives them.\n\nThe default is false.", + "type": "boolean" + }, + "region": { + "description": "Output only. [Output Only] URL of the region where the regional Target HTTP Proxy\nresides. This field is not applicable to global Target HTTP Proxies.", + "readOnly": true, + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "urlMap": { + "description": "URL to the UrlMap resource that defines the mapping from URL to\nthe BackendService.", + "type": "string" + } + }, + "type": "object" + }, + "TargetHttpProxyAggregatedList": { + "id": "TargetHttpProxyAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetHttpProxiesScopedList", + "description": "Name of the scope containing this set of TargetHttpProxies." + }, + "description": "A list of TargetHttpProxiesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetHttpProxyAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetHttpProxyAggregatedList for lists of Target HTTP\nProxies.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "TargetHttpProxyList": { + "description": "A list of TargetHttpProxy resources.", + "id": "TargetHttpProxyList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetHttpProxy resources.", + "items": { + "$ref": "TargetHttpProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetHttpProxyList", + "description": "Output only. Type of resource. Always compute#targetHttpProxyList for lists\nof target HTTP proxies.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetHttpsProxiesScopedList": { + "id": "TargetHttpsProxiesScopedList", "properties": { - "targetHttpProxies": { - "description": "A list of TargetHttpProxies contained in this scope.", + "targetHttpsProxies": { + "description": "A list of TargetHttpsProxies contained in this scope.", "items": { - "$ref": "TargetHttpProxy" + "$ref": "TargetHttpsProxy" }, "type": "array" }, @@ -94377,10 +103832,61 @@ }, "type": "object" }, - "TargetHttpProxy": { - "description": "Represents a Target HTTP Proxy resource.\n\nGoogle Compute Engine has two Target HTTP Proxy resources:\n\n* [Global](/compute/docs/reference/rest/v1/targetHttpProxies)\n* [Regional](/compute/docs/reference/rest/v1/regionTargetHttpProxies)\n\nA target HTTP proxy is a component of Google Cloud HTTP load balancers.\n\n* targetHttpProxies are used by global external Application Load Balancers,\n classic Application Load Balancers, cross-region internal Application Load\n Balancers, and Traffic Director.\n* regionTargetHttpProxies are used by regional internal Application Load\n Balancers and regional external Application Load Balancers.\n\nForwarding rules reference a target HTTP proxy, and the target proxy\nthen references a URL map. For more information, readUsing Target Proxies\nand \nForwarding rule concepts.", - "id": "TargetHttpProxy", + "TargetHttpsProxiesSetCertificateMapRequest": { + "id": "TargetHttpsProxiesSetCertificateMapRequest", + "properties": { + "certificateMap": { + "description": "URL of the Certificate Map to associate with this TargetHttpsProxy.\n\n Accepted format is//certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificateMaps/{resourceName}.", + "type": "string" + } + }, + "type": "object" + }, + "TargetHttpsProxiesSetQuicOverrideRequest": { + "id": "TargetHttpsProxiesSetQuicOverrideRequest", "properties": { + "quicOverride": { + "description": "QUIC policy for the TargetHttpsProxy resource.", + "enum": [ + "DISABLE", + "ENABLE", + "NONE" + ], + "enumDescriptions": [ + "The load balancer will not attempt to negotiate QUIC with clients.", + "The load balancer will attempt to negotiate QUIC with clients.", + "No overrides to the default QUIC policy. This option is implicit if\nno QUIC override has been specified in the request." + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetHttpsProxiesSetSslCertificatesRequest": { + "id": "TargetHttpsProxiesSetSslCertificatesRequest", + "properties": { + "sslCertificates": { + "description": "New set of SslCertificate resources to associate\nwith this TargetHttpsProxy resource. At least one SSL\ncertificate must be specified. Currently, you may specify up to 15 SSL\ncertificates.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetHttpsProxy": { + "description": "Represents a Target HTTPS Proxy resource.\n\nGoogle Compute Engine has two Target HTTPS Proxy resources:\n\n* [Global](/compute/docs/reference/rest/v1/targetHttpsProxies)\n* [Regional](/compute/docs/reference/rest/v1/regionTargetHttpsProxies)\n\nA target HTTPS proxy is a component of Google Cloud HTTPS load balancers.\n\n* targetHttpsProxies are used by global external Application Load Balancers,\n classic Application Load Balancers, cross-region internal Application Load\n Balancers, and Traffic Director.\n* regionTargetHttpsProxies are used by regional internal Application Load\n Balancers and regional external Application Load Balancers.\n\nForwarding rules reference a target HTTPS proxy, and the target proxy\nthen references a URL map. For more information, readUsing Target Proxies\nand \nForwarding rule concepts.", + "id": "TargetHttpsProxy", + "properties": { + "authorizationPolicy": { + "description": "Optional. A URL referring to a networksecurity.AuthorizationPolicy resource\nthat describes how the proxy should authorize inbound traffic. If left\nblank, access will not be restricted by an authorization policy.\n\n Refer to the AuthorizationPolicy resource for additional\ndetails.\n\n authorizationPolicy only applies to a globalTargetHttpsProxy attached toglobalForwardingRules with theloadBalancingScheme set to INTERNAL_SELF_MANAGED.\n\n Note: This field currently has no impact.", + "type": "string" + }, + "certificateMap": { + "description": "URL of a certificate map that identifies a certificate map associated with\nthe given target proxy.\nThis field can only be set for Global external Application Load Balancer or\nClassic Application Load Balancer. For other products use Certificate\nManager Certificates instead.\n\nIf set, sslCertificates will be ignored.\n\n Accepted format is//certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificateMaps/{resourceName}.", + "type": "string" + }, "creationTimestamp": { "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", "readOnly": true, @@ -94391,7 +103897,7 @@ "type": "string" }, "fingerprint": { - "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a TargetHttpProxy. An up-to-date fingerprint must\nbe provided in order to patch/update the TargetHttpProxy; otherwise, the\nrequest will fail with error 412 conditionNotMet. To see the\nlatest fingerprint, make a get() request to retrieve the\nTargetHttpProxy.", + "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a TargetHttpsProxy. An up-to-date fingerprint must\nbe provided in order to patch the TargetHttpsProxy; otherwise, the request\nwill fail with error 412 conditionNotMet. To see the latest\nfingerprint, make a get() request to retrieve the\nTargetHttpsProxy.", "format": "byte", "type": "string" }, @@ -94406,8 +103912,8 @@ "type": "string" }, "kind": { - "default": "compute#targetHttpProxy", - "description": "Output only. [Output Only] Type of resource. Always compute#targetHttpProxy\nfor target HTTP proxies.", + "default": "compute#targetHttpsProxy", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetHttpsProxy for target HTTPS proxies.", "readOnly": true, "type": "string" }, @@ -94420,8 +103926,22 @@ "description": "This field only applies when the forwarding rule that references this\ntarget proxy has a loadBalancingScheme set toINTERNAL_SELF_MANAGED.\n\nWhen this field is set to true, Envoy proxies set up inbound\ntraffic interception and bind to the IP address and port specified in the\nforwarding rule. This is generally useful when using Traffic Director to\nconfigure Envoy as a gateway or middle proxy (in other words, not a\nsidecar proxy). The Envoy proxy listens for inbound requests and handles\nrequests when it receives them.\n\nThe default is false.", "type": "boolean" }, + "quicOverride": { + "description": "Specifies the QUIC override policy for this TargetHttpsProxy resource. This\nsetting determines whether the load balancer attempts to negotiate QUIC\nwith clients.\nYou can specify NONE, ENABLE, orDISABLE.\n \n - When quic-override is set to NONE,\n Google manages whether QUIC is used.\n - When quic-override is set to ENABLE, the\n load balancer uses QUIC when possible.\n - When quic-override is set to DISABLE, the\n load balancer doesn't use QUIC.\n - If the quic-override flag is not specified,NONE is implied.", + "enum": [ + "DISABLE", + "ENABLE", + "NONE" + ], + "enumDescriptions": [ + "The load balancer will not attempt to negotiate QUIC with clients.", + "The load balancer will attempt to negotiate QUIC with clients.", + "No overrides to the default QUIC policy. This option is implicit if\nno QUIC override has been specified in the request." + ], + "type": "string" + }, "region": { - "description": "Output only. [Output Only] URL of the region where the regional Target HTTP Proxy\nresides. This field is not applicable to global Target HTTP Proxies.", + "description": "Output only. [Output Only] URL of the region where the regional TargetHttpsProxy\nresides. This field is not applicable to global TargetHttpsProxies.", "readOnly": true, "type": "string" }, @@ -94429,15 +103949,46 @@ "description": "[Output Only] Server-defined URL for the resource.", "type": "string" }, + "serverTlsPolicy": { + "description": "Optional. A URL referring to a networksecurity.ServerTlsPolicy resource\nthat describes how the proxy should authenticate inbound traffic.\n\n serverTlsPolicy only applies to a globalTargetHttpsProxy attached toglobalForwardingRules with theloadBalancingScheme set to INTERNAL_SELF_MANAGED\nor EXTERNAL orEXTERNAL_MANAGED or INTERNAL_MANAGED.\nIt also applies to a regional TargetHttpsProxy attached to\nregional forwardingRules with theloadBalancingScheme set to EXTERNAL_MANAGED orINTERNAL_MANAGED. For details whichServerTlsPolicy resources are accepted withINTERNAL_SELF_MANAGED and which with EXTERNAL,INTERNAL_MANAGED, EXTERNAL_MANAGEDloadBalancingScheme consult ServerTlsPolicy\ndocumentation.\n\n If left blank, communications are not encrypted.", + "type": "string" + }, + "sslCertificates": { + "description": "URLs to SslCertificate resources that are used to authenticate\nconnections between users and the load balancer. At least one SSL\ncertificate must be specified. SslCertificates do not apply when the load\nbalancing scheme is set to INTERNAL_SELF_MANAGED.\n\nThe URLs should refer to a SSL Certificate resource or Certificate Manager\nCertificate resource. Mixing Classic Certificates and Certificate Manager\nCertificates is not allowed. Certificate Manager Certificates must include\nthe certificatemanager API namespace. Using Certificate Manager\nCertificates in this field is not supported by Global external Application\nLoad Balancer or Classic Application Load Balancer, use certificate_map\ninstead.\n\nCurrently, you may specify up to 15 Classic SSL Certificates or up to 100\nCertificate Manager Certificates.\n\nCertificate Manager Certificates accepted formats are:\n \n - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.\n - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sslPolicy": { + "description": "URL of SslPolicy resource that will be associated with the TargetHttpsProxy\nresource. If not set, the TargetHttpsProxy resource has no\nSSL policy configured.", + "type": "string" + }, + "tlsEarlyData": { + "description": "Specifies whether TLS 1.3 0-RTT Data (\"Early Data\") should be accepted\nfor this service. Early Data allows a TLS resumption handshake to include\nthe initial application payload (a HTTP request) alongside the handshake,\nreducing the effective round trips to \"zero\". This applies to TLS 1.3\nconnections over TCP (HTTP/2) as well as over UDP (QUIC/h3).\n\n\nThis can improve application performance, especially on networks where\ninterruptions may be common, such as on mobile.\n\n\nRequests with Early Data will have the \"Early-Data\" HTTP header set on\nthe request, with a value of \"1\", to allow the backend to determine whether\nEarly Data was included.\n\n\nNote: TLS Early Data may allow requests to be replayed, as the data is\nsent to the backend before the handshake has fully completed. Applications\nthat allow idempotent HTTP methods to make non-idempotent changes, such as\na GET request updating a database, should not accept Early Data on those\nrequests, and reject requests with the \"Early-Data: 1\" HTTP header by\nreturning a HTTP 425 (Too Early) status code, in order to remain RFC\ncompliant.\n\n\nThe default value is DISABLED.", + "enum": [ + "DISABLED", + "PERMISSIVE", + "STRICT", + "UNRESTRICTED" + ], + "enumDescriptions": [ + "TLS 1.3 Early Data is not advertised, and any (invalid) attempts to send\nEarly Data will be rejected by closing the connection.", + "This enables TLS 1.3 0-RTT, and only allows Early Data to be included on\nrequests with safe HTTP methods (GET, HEAD, OPTIONS, TRACE). This mode\ndoes not enforce any other limitations for requests with Early Data. The\napplication owner should validate that Early Data is acceptable for a\ngiven request path.", + "This enables TLS 1.3 0-RTT, and only allows Early Data to be included on\nrequests with safe HTTP methods (GET, HEAD, OPTIONS, TRACE) without query\nparameters. Requests that send Early Data with non-idempotent HTTP\nmethods or with query parameters will be rejected with a HTTP 425.", + "This enables TLS 1.3 Early Data for requests with any HTTP method\nincluding non-idempotent methods list POST. This mode does not enforce\nany other limitations. This may be valuable for gRPC use cases. However,\nwe do not recommend this method unless you have evaluated your security\nstance and mitigated the risk of replay attacks using other mechanisms." + ], + "type": "string" + }, "urlMap": { - "description": "URL to the UrlMap resource that defines the mapping from URL to\nthe BackendService.", + "description": "A fully-qualified or valid partial URL to the UrlMap resource that defines\nthe mapping from URL to the BackendService. For example, the following are\nall valid URLs for specifying a URL map:\n \n - https://www.googleapis.compute/v1/projects/project/global/urlMaps/url-map \n - projects/project/global/urlMaps/url-map \n - global/urlMaps/url-map", "type": "string" } }, "type": "object" }, - "TargetHttpProxyAggregatedList": { - "id": "TargetHttpProxyAggregatedList", + "TargetHttpsProxyAggregatedList": { + "id": "TargetHttpsProxyAggregatedList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", @@ -94445,15 +103996,15 @@ }, "items": { "additionalProperties": { - "$ref": "TargetHttpProxiesScopedList", - "description": "Name of the scope containing this set of TargetHttpProxies." + "$ref": "TargetHttpsProxiesScopedList", + "description": "Name of the scope containing this set of TargetHttpsProxies." }, - "description": "A list of TargetHttpProxiesScopedList resources.", + "description": "A list of TargetHttpsProxiesScopedList resources.", "type": "object" }, "kind": { - "default": "compute#targetHttpProxyAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetHttpProxyAggregatedList for lists of Target HTTP\nProxies.", + "default": "compute#targetHttpsProxyAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetHttpsProxyAggregatedList for lists of Target\nHTTP Proxies.", "readOnly": true, "type": "string" }, @@ -94473,39 +104024,6 @@ }, "readOnly": true, "type": "array" - } - }, - "type": "object" - }, - "TargetHttpProxyList": { - "description": "A list of TargetHttpProxy resources.", - "id": "TargetHttpProxyList", - "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" - }, - "items": { - "description": "A list of TargetHttpProxy resources.", - "items": { - "$ref": "TargetHttpProxy" - }, - "type": "array" - }, - "kind": { - "default": "compute#targetHttpProxyList", - "description": "Output only. Type of resource. Always compute#targetHttpProxyList for lists\nof target HTTP proxies.", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, - "type": "string" }, "warning": { "description": "[Output Only] Informational warning message.", @@ -94634,18 +104152,38 @@ }, "type": "object" }, - "TargetHttpsProxiesScopedList": { - "id": "TargetHttpsProxiesScopedList", + "TargetHttpsProxyList": { + "description": "Contains a list of TargetHttpsProxy resources.", + "id": "TargetHttpsProxyList", "properties": { - "targetHttpsProxies": { - "description": "A list of TargetHttpsProxies contained in this scope.", + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of TargetHttpsProxy resources.", "items": { "$ref": "TargetHttpsProxy" }, "type": "array" }, + "kind": { + "default": "compute#targetHttpsProxyList", + "description": "Output only. Type of resource. Always compute#targetHttpsProxyList for\nlists of target HTTPS proxies.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, "warning": { - "description": "Informational warning which replaces the list of\nbackend services when the list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -94771,61 +104309,10 @@ }, "type": "object" }, - "TargetHttpsProxiesSetCertificateMapRequest": { - "id": "TargetHttpsProxiesSetCertificateMapRequest", - "properties": { - "certificateMap": { - "description": "URL of the Certificate Map to associate with this TargetHttpsProxy.\n\n Accepted format is//certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificateMaps/{resourceName}.", - "type": "string" - } - }, - "type": "object" - }, - "TargetHttpsProxiesSetQuicOverrideRequest": { - "id": "TargetHttpsProxiesSetQuicOverrideRequest", - "properties": { - "quicOverride": { - "description": "QUIC policy for the TargetHttpsProxy resource.", - "enum": [ - "DISABLE", - "ENABLE", - "NONE" - ], - "enumDescriptions": [ - "The load balancer will not attempt to negotiate QUIC with clients.", - "The load balancer will attempt to negotiate QUIC with clients.", - "No overrides to the default QUIC policy. This option is implicit if\nno QUIC override has been specified in the request." - ], - "type": "string" - } - }, - "type": "object" - }, - "TargetHttpsProxiesSetSslCertificatesRequest": { - "id": "TargetHttpsProxiesSetSslCertificatesRequest", - "properties": { - "sslCertificates": { - "description": "New set of SslCertificate resources to associate\nwith this TargetHttpsProxy resource. At least one SSL\ncertificate must be specified. Currently, you may specify up to 15 SSL\ncertificates.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "TargetHttpsProxy": { - "description": "Represents a Target HTTPS Proxy resource.\n\nGoogle Compute Engine has two Target HTTPS Proxy resources:\n\n* [Global](/compute/docs/reference/rest/v1/targetHttpsProxies)\n* [Regional](/compute/docs/reference/rest/v1/regionTargetHttpsProxies)\n\nA target HTTPS proxy is a component of Google Cloud HTTPS load balancers.\n\n* targetHttpsProxies are used by global external Application Load Balancers,\n classic Application Load Balancers, cross-region internal Application Load\n Balancers, and Traffic Director.\n* regionTargetHttpsProxies are used by regional internal Application Load\n Balancers and regional external Application Load Balancers.\n\nForwarding rules reference a target HTTPS proxy, and the target proxy\nthen references a URL map. For more information, readUsing Target Proxies\nand \nForwarding rule concepts.", - "id": "TargetHttpsProxy", + "TargetInstance": { + "description": "Represents a Target Instance resource.\n\nYou can use a target instance to handle traffic for one or more forwarding\nrules, which is ideal for forwarding protocol traffic that is managed by a\nsingle source. For example, ESP, AH, TCP, or UDP.\nFor more information, readTarget\ninstances.", + "id": "TargetInstance", "properties": { - "authorizationPolicy": { - "description": "Optional. A URL referring to a networksecurity.AuthorizationPolicy resource\nthat describes how the proxy should authorize inbound traffic. If left\nblank, access will not be restricted by an authorization policy.\n\n Refer to the AuthorizationPolicy resource for additional\ndetails.\n\n authorizationPolicy only applies to a globalTargetHttpsProxy attached toglobalForwardingRules with theloadBalancingScheme set to INTERNAL_SELF_MANAGED.\n\n Note: This field currently has no impact.", - "type": "string" - }, - "certificateMap": { - "description": "URL of a certificate map that identifies a certificate map associated with\nthe given target proxy.\nThis field can only be set for Global external Application Load Balancer or\nClassic Application Load Balancer. For other products use Certificate\nManager Certificates instead.\n\nIf set, sslCertificates will be ignored.\n\n Accepted format is//certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificateMaps/{resourceName}.", - "type": "string" - }, "creationTimestamp": { "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", "readOnly": true, @@ -94835,24 +104322,18 @@ "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", "type": "string" }, - "fingerprint": { - "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field will be ignored when\ninserting a TargetHttpsProxy. An up-to-date fingerprint must\nbe provided in order to patch the TargetHttpsProxy; otherwise, the request\nwill fail with error 412 conditionNotMet. To see the latest\nfingerprint, make a get() request to retrieve the\nTargetHttpsProxy.", - "format": "byte", - "type": "string" - }, - "httpKeepAliveTimeoutSec": { - "description": "Specifies how long to keep a connection open, after completing a response,\nwhile there is no matching traffic (in seconds). If an HTTP keep-alive is\nnot specified, a default value (610 seconds) will be used.\n\nFor global external Application Load Balancers, the minimum allowed value\nis 5 seconds and the maximum allowed value is 1200 seconds.\n\nFor classic Application Load Balancers, this option is not supported.", - "format": "int32", - "type": "integer" - }, "id": { "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "format": "uint64", "type": "string" }, + "instance": { + "description": "A URL to the virtual machine instance that handles traffic for this target\ninstance. When creating a target instance, you can provide the\nfully-qualified URL or a valid partial URL to the desired virtual machine.\nFor example, the following are all valid URLs:\n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n - projects/project/zones/zone/instances/instance \n - zones/zone/instances/instance", + "type": "string" + }, "kind": { - "default": "compute#targetHttpsProxy", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetHttpsProxy for target HTTPS proxies.", + "default": "compute#targetInstance", + "description": "Output only. [Output Only] The type of the resource. Alwayscompute#targetInstance for target instances.", "readOnly": true, "type": "string" }, @@ -94861,73 +104342,38 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, - "proxyBind": { - "description": "This field only applies when the forwarding rule that references this\ntarget proxy has a loadBalancingScheme set toINTERNAL_SELF_MANAGED.\n\nWhen this field is set to true, Envoy proxies set up inbound\ntraffic interception and bind to the IP address and port specified in the\nforwarding rule. This is generally useful when using Traffic Director to\nconfigure Envoy as a gateway or middle proxy (in other words, not a\nsidecar proxy). The Envoy proxy listens for inbound requests and handles\nrequests when it receives them.\n\nThe default is false.", - "type": "boolean" - }, - "quicOverride": { - "description": "Specifies the QUIC override policy for this TargetHttpsProxy resource. This\nsetting determines whether the load balancer attempts to negotiate QUIC\nwith clients.\nYou can specify NONE, ENABLE, orDISABLE.\n \n - When quic-override is set to NONE,\n Google manages whether QUIC is used.\n - When quic-override is set to ENABLE, the\n load balancer uses QUIC when possible.\n - When quic-override is set to DISABLE, the\n load balancer doesn't use QUIC.\n - If the quic-override flag is not specified,NONE is implied.", + "natPolicy": { + "description": "Must have a value of NO_NAT.\nProtocol forwarding delivers packets while preserving the destination IP\naddress of the forwarding rule referencing the target instance.", "enum": [ - "DISABLE", - "ENABLE", - "NONE" + "NO_NAT" ], "enumDescriptions": [ - "The load balancer will not attempt to negotiate QUIC with clients.", - "The load balancer will attempt to negotiate QUIC with clients.", - "No overrides to the default QUIC policy. This option is implicit if\nno QUIC override has been specified in the request." + "No NAT performed." ], "type": "string" }, - "region": { - "description": "Output only. [Output Only] URL of the region where the regional TargetHttpsProxy\nresides. This field is not applicable to global TargetHttpsProxies.", - "readOnly": true, - "type": "string" - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", - "type": "string" - }, - "serverTlsPolicy": { - "description": "Optional. A URL referring to a networksecurity.ServerTlsPolicy resource\nthat describes how the proxy should authenticate inbound traffic.\n\n serverTlsPolicy only applies to a globalTargetHttpsProxy attached toglobalForwardingRules with theloadBalancingScheme set to INTERNAL_SELF_MANAGED\nor EXTERNAL orEXTERNAL_MANAGED or INTERNAL_MANAGED.\nIt also applies to a regional TargetHttpsProxy attached to\nregional forwardingRules with theloadBalancingScheme set to EXTERNAL_MANAGED orINTERNAL_MANAGED. For details whichServerTlsPolicy resources are accepted withINTERNAL_SELF_MANAGED and which with EXTERNAL,INTERNAL_MANAGED, EXTERNAL_MANAGEDloadBalancingScheme consult ServerTlsPolicy\ndocumentation.\n\n If left blank, communications are not encrypted.", + "network": { + "description": "The URL of the network this target instance uses to forward traffic.\nIf not specified, the traffic will be forwarded to the network that\nthe default network interface belongs to.", "type": "string" }, - "sslCertificates": { - "description": "URLs to SslCertificate resources that are used to authenticate\nconnections between users and the load balancer. At least one SSL\ncertificate must be specified. SslCertificates do not apply when the load\nbalancing scheme is set to INTERNAL_SELF_MANAGED.\n\nThe URLs should refer to a SSL Certificate resource or Certificate Manager\nCertificate resource. Mixing Classic Certificates and Certificate Manager\nCertificates is not allowed. Certificate Manager Certificates must include\nthe certificatemanager API namespace. Using Certificate Manager\nCertificates in this field is not supported by Global external Application\nLoad Balancer or Classic Application Load Balancer, use certificate_map\ninstead.\n\nCurrently, you may specify up to 15 Classic SSL Certificates or up to 100\nCertificate Manager Certificates.\n\nCertificate Manager Certificates accepted formats are:\n \n - //certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}.\n - https://certificatemanager.googleapis.com/v1alpha1/projects/{project}/locations/{location}/certificates/{resourceName}.", - "items": { - "type": "string" - }, - "type": "array" - }, - "sslPolicy": { - "description": "URL of SslPolicy resource that will be associated with the TargetHttpsProxy\nresource. If not set, the TargetHttpsProxy resource has no\nSSL policy configured.", + "securityPolicy": { + "description": "[Output Only] The resource URL for the security policy associated with this\ntarget instance.", "type": "string" }, - "tlsEarlyData": { - "description": "Specifies whether TLS 1.3 0-RTT Data (\"Early Data\") should be accepted\nfor this service. Early Data allows a TLS resumption handshake to include\nthe initial application payload (a HTTP request) alongside the handshake,\nreducing the effective round trips to \"zero\". This applies to TLS 1.3\nconnections over TCP (HTTP/2) as well as over UDP (QUIC/h3).\n\n\nThis can improve application performance, especially on networks where\ninterruptions may be common, such as on mobile.\n\n\nRequests with Early Data will have the \"Early-Data\" HTTP header set on\nthe request, with a value of \"1\", to allow the backend to determine whether\nEarly Data was included.\n\n\nNote: TLS Early Data may allow requests to be replayed, as the data is\nsent to the backend before the handshake has fully completed. Applications\nthat allow idempotent HTTP methods to make non-idempotent changes, such as\na GET request updating a database, should not accept Early Data on those\nrequests, and reject requests with the \"Early-Data: 1\" HTTP header by\nreturning a HTTP 425 (Too Early) status code, in order to remain RFC\ncompliant.\n\n\nThe default value is DISABLED.", - "enum": [ - "DISABLED", - "PERMISSIVE", - "STRICT", - "UNRESTRICTED" - ], - "enumDescriptions": [ - "TLS 1.3 Early Data is not advertised, and any (invalid) attempts to send\nEarly Data will be rejected by closing the connection.", - "This enables TLS 1.3 0-RTT, and only allows Early Data to be included on\nrequests with safe HTTP methods (GET, HEAD, OPTIONS, TRACE). This mode\ndoes not enforce any other limitations for requests with Early Data. The\napplication owner should validate that Early Data is acceptable for a\ngiven request path.", - "This enables TLS 1.3 0-RTT, and only allows Early Data to be included on\nrequests with safe HTTP methods (GET, HEAD, OPTIONS, TRACE) without query\nparameters. Requests that send Early Data with non-idempotent HTTP\nmethods or with query parameters will be rejected with a HTTP 425.", - "This enables TLS 1.3 Early Data for requests with any HTTP method\nincluding non-idempotent methods list POST. This mode does not enforce\nany other limitations. This may be valuable for gRPC use cases. However,\nwe do not recommend this method unless you have evaluated your security\nstance and mitigated the risk of replay attacks using other mechanisms." - ], + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", "type": "string" }, - "urlMap": { - "description": "A fully-qualified or valid partial URL to the UrlMap resource that defines\nthe mapping from URL to the BackendService. For example, the following are\nall valid URLs for specifying a URL map:\n \n - https://www.googleapis.compute/v1/projects/project/global/urlMaps/url-map \n - projects/project/global/urlMaps/url-map \n - global/urlMaps/url-map", + "zone": { + "description": "Output only. [Output Only] URL of the zone where the target instance resides.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "readOnly": true, "type": "string" } }, "type": "object" }, - "TargetHttpsProxyAggregatedList": { - "id": "TargetHttpsProxyAggregatedList", + "TargetInstanceAggregatedList": { + "id": "TargetInstanceAggregatedList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", @@ -94935,15 +104381,15 @@ }, "items": { "additionalProperties": { - "$ref": "TargetHttpsProxiesScopedList", - "description": "Name of the scope containing this set of TargetHttpsProxies." + "$ref": "TargetInstancesScopedList", + "description": "Name of the scope containing this set of target instances." }, - "description": "A list of TargetHttpsProxiesScopedList resources.", + "description": "A list of TargetInstance resources.", "type": "object" }, "kind": { - "default": "compute#targetHttpsProxyAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetHttpsProxyAggregatedList for lists of Target\nHTTP Proxies.", + "default": "compute#targetInstanceAggregatedList", + "description": "Output only. Type of resource.", "readOnly": true, "type": "string" }, @@ -95091,24 +104537,24 @@ }, "type": "object" }, - "TargetHttpsProxyList": { - "description": "Contains a list of TargetHttpsProxy resources.", - "id": "TargetHttpsProxyList", + "TargetInstanceList": { + "description": "Contains a list of TargetInstance resources.", + "id": "TargetInstanceList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of TargetHttpsProxy resources.", + "description": "A list of TargetInstance resources.", "items": { - "$ref": "TargetHttpsProxy" + "$ref": "TargetInstance" }, "type": "array" }, "kind": { - "default": "compute#targetHttpsProxyList", - "description": "Output only. Type of resource. Always compute#targetHttpsProxyList for\nlists of target HTTPS proxies.", + "default": "compute#targetInstanceList", + "description": "Output only. Type of resource.", "readOnly": true, "type": "string" }, @@ -95248,10 +104694,151 @@ }, "type": "object" }, - "TargetInstance": { - "description": "Represents a Target Instance resource.\n\nYou can use a target instance to handle traffic for one or more forwarding\nrules, which is ideal for forwarding protocol traffic that is managed by a\nsingle source. For example, ESP, AH, TCP, or UDP.\nFor more information, readTarget\ninstances.", - "id": "TargetInstance", + "TargetInstancesScopedList": { + "id": "TargetInstancesScopedList", + "properties": { + "targetInstances": { + "description": "A list of target instances contained in this scope.", + "items": { + "$ref": "TargetInstance" + }, + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when\nthe list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "TargetPool": { + "description": "Represents a Target Pool resource.\n\nTarget pools are used with external passthrough Network Load Balancers.\nA target pool references member instances, an associated legacy\nHttpHealthCheck resource, and, optionally, a backup target pool.\nFor more information, readUsing target pools.", + "id": "TargetPool", "properties": { + "backupPool": { + "description": "The server-defined URL for the resource. This field is applicable only when\nthe containing target pool is serving a forwarding rule as the primary\npool, and its failoverRatio field is properly set to a value\nbetween [0, 1].backupPool and failoverRatio together define\nthe fallback behavior of the primary target pool: if the ratio of the\nhealthy instances in the primary pool is at or belowfailoverRatio, traffic arriving at the load-balanced\nIP will be directed to the backup pool.\n\nIn case where failoverRatio and backupPool\nare not set, or all the instances in the backup pool are unhealthy,\nthe traffic will be directed back to the primary pool in the \"force\"\nmode, where traffic will be spread to the healthy instances with the\nbest effort, or to all instances when no instance is healthy.", + "type": "string" + }, "creationTimestamp": { "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", "readOnly": true, @@ -95261,18 +104848,33 @@ "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", "type": "string" }, + "failoverRatio": { + "description": "This field is applicable only when the containing target pool is serving a\nforwarding rule as the primary pool (i.e., not as a backup pool to some\nother target pool). The value of the field must be in [0, 1].\n\nIf set, backupPool must also be set. They together define\nthe fallback behavior of the primary target pool: if the ratio of the\nhealthy instances in the primary pool is at or below this number,\ntraffic arriving at the load-balanced IP will be directed to the\nbackup pool.\n\nIn case where failoverRatio is not set or all the\ninstances in the backup pool are unhealthy, the traffic will be\ndirected back to the primary pool in the \"force\" mode, where traffic\nwill be spread to the healthy instances with the\nbest effort, or to all instances when no instance is healthy.", + "format": "float", + "type": "number" + }, + "healthChecks": { + "description": "The URL of the HttpHealthCheck resource. A member instance in this\npool is considered healthy if and only if the health checks pass.\nOnly legacy HttpHealthChecks are supported. Only one health check may be\nspecified.", + "items": { + "type": "string" + }, + "type": "array" + }, "id": { "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "format": "uint64", "type": "string" }, - "instance": { - "description": "A URL to the virtual machine instance that handles traffic for this target\ninstance. When creating a target instance, you can provide the\nfully-qualified URL or a valid partial URL to the desired virtual machine.\nFor example, the following are all valid URLs:\n \n - https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n - projects/project/zones/zone/instances/instance \n - zones/zone/instances/instance", - "type": "string" + "instances": { + "description": "A list of resource URLs to the virtual machine instances serving this pool.\nThey must live in zones contained in the same region as this pool.", + "items": { + "type": "string" + }, + "type": "array" }, "kind": { - "default": "compute#targetInstance", - "description": "Output only. [Output Only] The type of the resource. Alwayscompute#targetInstance for target instances.", + "default": "compute#targetPool", + "description": "Output only. [Output Only] Type of the resource. Always compute#targetPool\nfor target pools.", "readOnly": true, "type": "string" }, @@ -95281,38 +104883,50 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, - "natPolicy": { - "description": "Must have a value of NO_NAT.\nProtocol forwarding delivers packets while preserving the destination IP\naddress of the forwarding rule referencing the target instance.", - "enum": [ - "NO_NAT" - ], - "enumDescriptions": [ - "No NAT performed." - ], - "type": "string" - }, - "network": { - "description": "The URL of the network this target instance uses to forward traffic.\nIf not specified, the traffic will be forwarded to the network that\nthe default network interface belongs to.", + "region": { + "description": "Output only. [Output Only] URL of the region where the target pool resides.", + "readOnly": true, "type": "string" }, "securityPolicy": { - "description": "[Output Only] The resource URL for the security policy associated with this\ntarget instance.", + "description": "[Output Only] The resource URL for the security policy associated with this\ntarget pool.", "type": "string" }, "selfLink": { "description": "[Output Only] Server-defined URL for the resource.", "type": "string" }, - "zone": { - "description": "Output only. [Output Only] URL of the zone where the target instance resides.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", - "readOnly": true, + "sessionAffinity": { + "description": "Session affinity option, must be one of the following values: \nNONE: Connections from the same client IP may go to any\n instance in the pool. \nCLIENT_IP: Connections from the same client IP will go\n to the same instance in\n the pool while that instance remains healthy. \nCLIENT_IP_PROTO: Connections from the same client IP\n with the same IP protocol will go to the same instance in the\n pool while that instance remains healthy.", + "enum": [ + "CLIENT_IP", + "CLIENT_IP_NO_DESTINATION", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "HEADER_FIELD", + "HTTP_COOKIE", + "NONE", + "STRONG_COOKIE_AFFINITY" + ], + "enumDescriptions": [ + "2-tuple hash on packet's source and destination IP addresses. Connections\nfrom the same source IP address to the same destination IP address will be\nserved by the same backend VM while that VM remains healthy.", + "1-tuple hash only on packet's source IP address. Connections from the\nsame source IP address will be served by the same backend VM while that VM\nremains healthy. This option can only be used for Internal TCP/UDP\nLoad Balancing.", + "5-tuple hash on packet's source and destination IP addresses, IP protocol,\nand source and destination ports. Connections for the same IP protocol\nfrom the same source IP address and port to the same destination IP address\nand port will be served by the same backend VM while that VM remains\nhealthy. This option cannot be used for HTTP(S) load balancing.", + "3-tuple hash on packet's source and destination IP addresses, and IP\nprotocol. Connections for the same IP protocol from the same source IP\naddress to the same destination IP address will be served by the same\nbackend VM while that VM remains healthy. This option cannot be used for\nHTTP(S) load balancing.", + "Hash based on a cookie generated by the L7 loadbalancer.\nOnly valid for HTTP(S) load balancing.", + "The hash is based on a user specified header field.", + "The hash is based on a user provided cookie.", + "No session affinity. Connections from the same client IP may go\nto any instance in the pool.", + "Strong cookie-based affinity. Connections bearing the same cookie will be\nserved by the same backend VM while that VM remains healthy, as long as the\ncookie has not expired." + ], "type": "string" } }, "type": "object" }, - "TargetInstanceAggregatedList": { - "id": "TargetInstanceAggregatedList", + "TargetPoolAggregatedList": { + "id": "TargetPoolAggregatedList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", @@ -95320,15 +104934,15 @@ }, "items": { "additionalProperties": { - "$ref": "TargetInstancesScopedList", - "description": "Name of the scope containing this set of target instances." + "$ref": "TargetPoolsScopedList", + "description": "Name of the scope containing this set of target pools." }, - "description": "A list of TargetInstance resources.", + "description": "A list of TargetPool resources.", "type": "object" }, "kind": { - "default": "compute#targetInstanceAggregatedList", - "description": "Output only. Type of resource.", + "default": "compute#targetPoolAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetPoolAggregatedList for aggregated lists of\ntarget pools.", "readOnly": true, "type": "string" }, @@ -95476,24 +105090,42 @@ }, "type": "object" }, - "TargetInstanceList": { - "description": "Contains a list of TargetInstance resources.", - "id": "TargetInstanceList", + "TargetPoolInstanceHealth": { + "id": "TargetPoolInstanceHealth", + "properties": { + "healthStatus": { + "items": { + "$ref": "HealthStatus" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetPoolInstanceHealth", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetPoolInstanceHealth when checking the health of\nan instance.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "TargetPoolList": { + "description": "Contains a list of TargetPool resources.", + "id": "TargetPoolList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of TargetInstance resources.", + "description": "A list of TargetPool resources.", "items": { - "$ref": "TargetInstance" + "$ref": "TargetPool" }, "type": "array" }, "kind": { - "default": "compute#targetInstanceList", - "description": "Output only. Type of resource.", + "default": "compute#targetPoolList", + "description": "Output only. [Output Only] Type of resource. Always compute#targetPoolList\nfor lists of target pools.", "readOnly": true, "type": "string" }, @@ -95633,13 +105265,65 @@ }, "type": "object" }, - "TargetInstancesScopedList": { - "id": "TargetInstancesScopedList", + "TargetPoolsAddHealthCheckRequest": { + "id": "TargetPoolsAddHealthCheckRequest", "properties": { - "targetInstances": { - "description": "A list of target instances contained in this scope.", + "healthChecks": { + "description": "The HttpHealthCheck to add to the target pool.", "items": { - "$ref": "TargetInstance" + "$ref": "HealthCheckReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsAddInstanceRequest": { + "id": "TargetPoolsAddInstanceRequest", + "properties": { + "instances": { + "description": "A full or partial URL to an instance to add to this target pool. This can\nbe a full or partial URL. For example, the following are valid URLs: \n \n - https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/instance-name \n - projects/project-id/zones/zone/instances/instance-name \n - zones/zone/instances/instance-name", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsRemoveHealthCheckRequest": { + "id": "TargetPoolsRemoveHealthCheckRequest", + "properties": { + "healthChecks": { + "description": "Health check URL to be removed. This can be a full or valid partial URL.\nFor example, the following are valid URLs:\n \n - https://www.googleapis.com/compute/beta/projects/project/global/httpHealthChecks/health-check \n - projects/project/global/httpHealthChecks/health-check\n - global/httpHealthChecks/health-check", + "items": { + "$ref": "HealthCheckReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsRemoveInstanceRequest": { + "id": "TargetPoolsRemoveInstanceRequest", + "properties": { + "instances": { + "description": "URLs of the instances to be removed from target pool.", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetPoolsScopedList": { + "id": "TargetPoolsScopedList", + "properties": { + "targetPools": { + "description": "A list of target pools contained in this scope.", + "items": { + "$ref": "TargetPool" }, "type": "array" }, @@ -95770,12 +105454,72 @@ }, "type": "object" }, - "TargetPool": { - "description": "Represents a Target Pool resource.\n\nTarget pools are used with external passthrough Network Load Balancers.\nA target pool references member instances, an associated legacy\nHttpHealthCheck resource, and, optionally, a backup target pool.\nFor more information, readUsing target pools.", - "id": "TargetPool", + "TargetReference": { + "id": "TargetReference", "properties": { - "backupPool": { - "description": "The server-defined URL for the resource. This field is applicable only when\nthe containing target pool is serving a forwarding rule as the primary\npool, and its failoverRatio field is properly set to a value\nbetween [0, 1].backupPool and failoverRatio together define\nthe fallback behavior of the primary target pool: if the ratio of the\nhealthy instances in the primary pool is at or belowfailoverRatio, traffic arriving at the load-balanced\nIP will be directed to the backup pool.\n\nIn case where failoverRatio and backupPool\nare not set, or all the instances in the backup pool are unhealthy,\nthe traffic will be directed back to the primary pool in the \"force\"\nmode, where traffic will be spread to the healthy instances with the\nbest effort, or to all instances when no instance is healthy.", + "target": { + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetBackendServiceRequest": { + "id": "TargetSslProxiesSetBackendServiceRequest", + "properties": { + "service": { + "description": "The URL of the new BackendService resource for the targetSslProxy.", + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetCertificateMapRequest": { + "id": "TargetSslProxiesSetCertificateMapRequest", + "properties": { + "certificateMap": { + "description": "URL of the Certificate Map to associate with this TargetSslProxy.\n\n Accepted format is//certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificateMaps/{resourceName}.", + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetProxyHeaderRequest": { + "id": "TargetSslProxiesSetProxyHeaderRequest", + "properties": { + "proxyHeader": { + "description": "The new type of proxy header to append before sending data to the\nbackend. NONE or PROXY_V1 are allowed.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "TargetSslProxiesSetSslCertificatesRequest": { + "id": "TargetSslProxiesSetSslCertificatesRequest", + "properties": { + "sslCertificates": { + "description": "New set of URLs to SslCertificate resources to associate with this\nTargetSslProxy. At least one SSL certificate must be specified.\nCurrently, you may specify up to 15 SSL certificates.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetSslProxy": { + "description": "Represents a Target SSL Proxy resource.\n\nA target SSL proxy is a component of a Proxy Network Load Balancer.\nThe forwarding rule references the target SSL proxy, and the target proxy\nthen references a backend service. For more information, readProxy Network\nLoad Balancer overview.", + "id": "TargetSslProxy", + "properties": { + "certificateMap": { + "description": "URL of a certificate map that identifies a certificate map associated with\nthe given target proxy.\nThis field can only be set for global target proxies.\nIf set, sslCertificates will be ignored.\n\n Accepted format is//certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificateMaps/{resourceName}.", "type": "string" }, "creationTimestamp": { @@ -95787,33 +105531,14 @@ "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", "type": "string" }, - "failoverRatio": { - "description": "This field is applicable only when the containing target pool is serving a\nforwarding rule as the primary pool (i.e., not as a backup pool to some\nother target pool). The value of the field must be in [0, 1].\n\nIf set, backupPool must also be set. They together define\nthe fallback behavior of the primary target pool: if the ratio of the\nhealthy instances in the primary pool is at or below this number,\ntraffic arriving at the load-balanced IP will be directed to the\nbackup pool.\n\nIn case where failoverRatio is not set or all the\ninstances in the backup pool are unhealthy, the traffic will be\ndirected back to the primary pool in the \"force\" mode, where traffic\nwill be spread to the healthy instances with the\nbest effort, or to all instances when no instance is healthy.", - "format": "float", - "type": "number" - }, - "healthChecks": { - "description": "The URL of the HttpHealthCheck resource. A member instance in this\npool is considered healthy if and only if the health checks pass.\nOnly legacy HttpHealthChecks are supported. Only one health check may be\nspecified.", - "items": { - "type": "string" - }, - "type": "array" - }, "id": { "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "format": "uint64", "type": "string" }, - "instances": { - "description": "A list of resource URLs to the virtual machine instances serving this pool.\nThey must live in zones contained in the same region as this pool.", - "items": { - "type": "string" - }, - "type": "array" - }, "kind": { - "default": "compute#targetPool", - "description": "Output only. [Output Only] Type of the resource. Always compute#targetPool\nfor target pools.", + "default": "compute#targetSslProxy", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#targetSslProxy for target SSL proxies.", "readOnly": true, "type": "string" }, @@ -95822,66 +105547,58 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, - "region": { - "description": "Output only. [Output Only] URL of the region where the target pool resides.", - "readOnly": true, - "type": "string" - }, - "securityPolicy": { - "description": "[Output Only] The resource URL for the security policy associated with this\ntarget pool.", + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the\nbackend, either NONE or PROXY_V1. The default\nis NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], "type": "string" }, "selfLink": { "description": "[Output Only] Server-defined URL for the resource.", "type": "string" }, - "sessionAffinity": { - "description": "Session affinity option, must be one of the following values: \nNONE: Connections from the same client IP may go to any\n instance in the pool. \nCLIENT_IP: Connections from the same client IP will go\n to the same instance in\n the pool while that instance remains healthy. \nCLIENT_IP_PROTO: Connections from the same client IP\n with the same IP protocol will go to the same instance in the\n pool while that instance remains healthy.", - "enum": [ - "CLIENT_IP", - "CLIENT_IP_NO_DESTINATION", - "CLIENT_IP_PORT_PROTO", - "CLIENT_IP_PROTO", - "GENERATED_COOKIE", - "HEADER_FIELD", - "HTTP_COOKIE", - "NONE", - "STRONG_COOKIE_AFFINITY" - ], - "enumDescriptions": [ - "2-tuple hash on packet's source and destination IP addresses. Connections\nfrom the same source IP address to the same destination IP address will be\nserved by the same backend VM while that VM remains healthy.", - "1-tuple hash only on packet's source IP address. Connections from the\nsame source IP address will be served by the same backend VM while that VM\nremains healthy. This option can only be used for Internal TCP/UDP\nLoad Balancing.", - "5-tuple hash on packet's source and destination IP addresses, IP protocol,\nand source and destination ports. Connections for the same IP protocol\nfrom the same source IP address and port to the same destination IP address\nand port will be served by the same backend VM while that VM remains\nhealthy. This option cannot be used for HTTP(S) load balancing.", - "3-tuple hash on packet's source and destination IP addresses, and IP\nprotocol. Connections for the same IP protocol from the same source IP\naddress to the same destination IP address will be served by the same\nbackend VM while that VM remains healthy. This option cannot be used for\nHTTP(S) load balancing.", - "Hash based on a cookie generated by the L7 loadbalancer.\nOnly valid for HTTP(S) load balancing.", - "The hash is based on a user specified header field.", - "The hash is based on a user provided cookie.", - "No session affinity. Connections from the same client IP may go\nto any instance in the pool.", - "Strong cookie-based affinity. Connections bearing the same cookie will be\nserved by the same backend VM while that VM remains healthy, as long as the\ncookie has not expired." - ], + "service": { + "description": "URL to the BackendService resource.", + "type": "string" + }, + "sslCertificates": { + "description": "URLs to SslCertificate resources that are used to\nauthenticate connections to Backends. At least one SSL certificate\nmust be specified. Currently, you may specify up to 15 SSL certificates.\nsslCertificates do not apply when the load balancing scheme is set to\nINTERNAL_SELF_MANAGED.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sslPolicy": { + "description": "URL of SslPolicy resource that will be associated with the TargetSslProxy\nresource. If not set, the TargetSslProxy resource will not have any\nSSL policy configured.", "type": "string" } }, "type": "object" }, - "TargetPoolAggregatedList": { - "id": "TargetPoolAggregatedList", + "TargetSslProxyList": { + "description": "Contains a list of TargetSslProxy resources.", + "id": "TargetSslProxyList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "additionalProperties": { - "$ref": "TargetPoolsScopedList", - "description": "Name of the scope containing this set of target pools." + "description": "A list of TargetSslProxy resources.", + "items": { + "$ref": "TargetSslProxy" }, - "description": "A list of TargetPool resources.", - "type": "object" + "type": "array" }, "kind": { - "default": "compute#targetPoolAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetPoolAggregatedList for aggregated lists of\ntarget pools.", + "default": "compute#targetSslProxyList", + "description": "Output only. Type of resource.", "readOnly": true, "type": "string" }, @@ -95894,14 +105611,6 @@ "readOnly": true, "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -96029,56 +105738,18 @@ }, "type": "object" }, - "TargetPoolInstanceHealth": { - "id": "TargetPoolInstanceHealth", - "properties": { - "healthStatus": { - "items": { - "$ref": "HealthStatus" - }, - "type": "array" - }, - "kind": { - "default": "compute#targetPoolInstanceHealth", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetPoolInstanceHealth when checking the health of\nan instance.", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "TargetPoolList": { - "description": "Contains a list of TargetPool resources.", - "id": "TargetPoolList", + "TargetTcpProxiesScopedList": { + "id": "TargetTcpProxiesScopedList", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" - }, - "items": { - "description": "A list of TargetPool resources.", + "targetTcpProxies": { + "description": "A list of TargetTcpProxies contained in this scope.", "items": { - "$ref": "TargetPool" + "$ref": "TargetTcpProxy" }, "type": "array" }, - "kind": { - "default": "compute#targetPoolList", - "description": "Output only. [Output Only] Type of resource. Always compute#targetPoolList\nfor lists of target pools.", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, - "type": "string" - }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "Informational warning which replaces the list of\nbackend services when the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -96204,70 +105875,135 @@ }, "type": "object" }, - "TargetPoolsAddHealthCheckRequest": { - "id": "TargetPoolsAddHealthCheckRequest", + "TargetTcpProxiesSetBackendServiceRequest": { + "id": "TargetTcpProxiesSetBackendServiceRequest", "properties": { - "healthChecks": { - "description": "The HttpHealthCheck to add to the target pool.", - "items": { - "$ref": "HealthCheckReference" - }, - "type": "array" + "service": { + "description": "The URL of the new BackendService resource for the targetTcpProxy.", + "type": "string" } }, "type": "object" }, - "TargetPoolsAddInstanceRequest": { - "id": "TargetPoolsAddInstanceRequest", + "TargetTcpProxiesSetProxyHeaderRequest": { + "id": "TargetTcpProxiesSetProxyHeaderRequest", "properties": { - "instances": { - "description": "A full or partial URL to an instance to add to this target pool. This can\nbe a full or partial URL. For example, the following are valid URLs: \n \n - https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/instance-name \n - projects/project-id/zones/zone/instances/instance-name \n - zones/zone/instances/instance-name", - "items": { - "$ref": "InstanceReference" - }, - "type": "array" + "proxyHeader": { + "description": "The new type of proxy header to append before sending data to the\nbackend. NONE or PROXY_V1 are allowed.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" } }, "type": "object" }, - "TargetPoolsRemoveHealthCheckRequest": { - "id": "TargetPoolsRemoveHealthCheckRequest", + "TargetTcpProxy": { + "description": "Represents a Target TCP Proxy resource.\n\nA target TCP proxy is a component of a Proxy Network Load Balancer.\nThe forwarding rule references the target TCP proxy, and the target proxy\nthen references a backend service. For more information, readProxy Network\nLoad Balancer overview.", + "id": "TargetTcpProxy", "properties": { - "healthChecks": { - "description": "Health check URL to be removed. This can be a full or valid partial URL.\nFor example, the following are valid URLs:\n \n - https://www.googleapis.com/compute/beta/projects/project/global/httpHealthChecks/health-check \n - projects/project/global/httpHealthChecks/health-check\n - global/httpHealthChecks/health-check", - "items": { - "$ref": "HealthCheckReference" - }, - "type": "array" + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetTcpProxy", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#targetTcpProxy for target TCP proxies.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "proxyBind": { + "description": "This field only applies when the forwarding rule that references this\ntarget proxy has a loadBalancingScheme set toINTERNAL_SELF_MANAGED.\n\nWhen this field is set to true, Envoy proxies set up inbound\ntraffic interception and bind to the IP address and port specified in the\nforwarding rule. This is generally useful when using Traffic Director to\nconfigure Envoy as a gateway or middle proxy (in other words, not a\nsidecar proxy). The Envoy proxy listens for inbound requests and handles\nrequests when it receives them.\n\nThe default is false.", + "type": "boolean" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the\nbackend, either NONE or PROXY_V1. The default\nis NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "region": { + "description": "Output only. [Output Only] URL of the region where the regional TCP proxy resides.\nThis field is not applicable to global TCP proxy.", + "readOnly": true, + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "service": { + "description": "URL to the BackendService resource.", + "type": "string" } }, "type": "object" }, - "TargetPoolsRemoveInstanceRequest": { - "id": "TargetPoolsRemoveInstanceRequest", + "TargetTcpProxyAggregatedList": { + "id": "TargetTcpProxyAggregatedList", "properties": { - "instances": { - "description": "URLs of the instances to be removed from target pool.", - "items": { - "$ref": "InstanceReference" + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetTcpProxiesScopedList", + "description": "Name of the scope containing this set of TargetTcpProxies." }, - "type": "array" - } - }, - "type": "object" - }, - "TargetPoolsScopedList": { - "id": "TargetPoolsScopedList", - "properties": { - "targetPools": { - "description": "A list of target pools contained in this scope.", + "description": "A list of TargetTcpProxiesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetTcpProxyAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetTcpProxyAggregatedList for lists of Target\nTCP Proxies.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", "items": { - "$ref": "TargetPool" + "type": "string" }, + "readOnly": true, "type": "array" }, "warning": { - "description": "Informational warning which replaces the list of addresses when\nthe list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -96393,150 +106129,23 @@ }, "type": "object" }, - "TargetReference": { - "id": "TargetReference", - "properties": { - "target": { - "type": "string" - } - }, - "type": "object" - }, - "TargetSslProxiesSetBackendServiceRequest": { - "id": "TargetSslProxiesSetBackendServiceRequest", - "properties": { - "service": { - "description": "The URL of the new BackendService resource for the targetSslProxy.", - "type": "string" - } - }, - "type": "object" - }, - "TargetSslProxiesSetCertificateMapRequest": { - "id": "TargetSslProxiesSetCertificateMapRequest", - "properties": { - "certificateMap": { - "description": "URL of the Certificate Map to associate with this TargetSslProxy.\n\n Accepted format is//certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificateMaps/{resourceName}.", - "type": "string" - } - }, - "type": "object" - }, - "TargetSslProxiesSetProxyHeaderRequest": { - "id": "TargetSslProxiesSetProxyHeaderRequest", - "properties": { - "proxyHeader": { - "description": "The new type of proxy header to append before sending data to the\nbackend. NONE or PROXY_V1 are allowed.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ], - "type": "string" - } - }, - "type": "object" - }, - "TargetSslProxiesSetSslCertificatesRequest": { - "id": "TargetSslProxiesSetSslCertificatesRequest", - "properties": { - "sslCertificates": { - "description": "New set of URLs to SslCertificate resources to associate with this\nTargetSslProxy. At least one SSL certificate must be specified.\nCurrently, you may specify up to 15 SSL certificates.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "TargetSslProxy": { - "description": "Represents a Target SSL Proxy resource.\n\nA target SSL proxy is a component of a Proxy Network Load Balancer.\nThe forwarding rule references the target SSL proxy, and the target proxy\nthen references a backend service. For more information, readProxy Network\nLoad Balancer overview.", - "id": "TargetSslProxy", - "properties": { - "certificateMap": { - "description": "URL of a certificate map that identifies a certificate map associated with\nthe given target proxy.\nThis field can only be set for global target proxies.\nIf set, sslCertificates will be ignored.\n\n Accepted format is//certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificateMaps/{resourceName}.", - "type": "string" - }, - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "type": "string" - }, - "kind": { - "default": "compute#targetSslProxy", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#targetSslProxy for target SSL proxies.", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "proxyHeader": { - "description": "Specifies the type of proxy header to append before sending data to the\nbackend, either NONE or PROXY_V1. The default\nis NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ], - "type": "string" - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", - "type": "string" - }, - "service": { - "description": "URL to the BackendService resource.", - "type": "string" - }, - "sslCertificates": { - "description": "URLs to SslCertificate resources that are used to\nauthenticate connections to Backends. At least one SSL certificate\nmust be specified. Currently, you may specify up to 15 SSL certificates.\nsslCertificates do not apply when the load balancing scheme is set to\nINTERNAL_SELF_MANAGED.", - "items": { - "type": "string" - }, - "type": "array" - }, - "sslPolicy": { - "description": "URL of SslPolicy resource that will be associated with the TargetSslProxy\nresource. If not set, the TargetSslProxy resource will not have any\nSSL policy configured.", - "type": "string" - } - }, - "type": "object" - }, - "TargetSslProxyList": { - "description": "Contains a list of TargetSslProxy resources.", - "id": "TargetSslProxyList", + "TargetTcpProxyList": { + "description": "Contains a list of TargetTcpProxy resources.", + "id": "TargetTcpProxyList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of TargetSslProxy resources.", + "description": "A list of TargetTcpProxy resources.", "items": { - "$ref": "TargetSslProxy" + "$ref": "TargetTcpProxy" }, "type": "array" }, "kind": { - "default": "compute#targetSslProxyList", + "default": "compute#targetTcpProxyList", "description": "Output only. Type of resource.", "readOnly": true, "type": "string" @@ -96677,18 +106286,146 @@ }, "type": "object" }, - "TargetTcpProxiesScopedList": { - "id": "TargetTcpProxiesScopedList", + "TargetVpnGateway": { + "description": "Represents a Target VPN Gateway resource.\n\nThe target VPN gateway resource represents a Classic Cloud VPN gateway.\nFor more information, read thethe\nCloud VPN Overview.", + "id": "TargetVpnGateway", "properties": { - "targetTcpProxies": { - "description": "A list of TargetTcpProxies contained in this scope.", + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "forwardingRules": { + "description": "[Output Only] A list of URLs to the ForwardingRule resources.\nForwardingRules are created usingcompute.forwardingRules.insert and associated with a VPN\ngateway.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#targetVpnGateway", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetVpnGateway for target VPN gateways.", + "readOnly": true, + "type": "string" + }, + "labelFingerprint": { + "description": "A fingerprint for the labels being applied to this TargetVpnGateway, which\nis essentially a hash of the labels set used for optimistic locking. The\nfingerprint is initially generated by Compute Engine and changes after\nevery request to modify or update labels. You must always provide an\nup-to-date fingerprint hash in order to update or change labels,\notherwise the request will fail with error412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve a TargetVpnGateway.", + "format": "byte", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035.\nLabel values may be empty.", + "type": "object" + }, + "name": { + "annotations": { + "required": [ + "compute.targetVpnGateways.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "network": { + "annotations": { + "required": [ + "compute.targetVpnGateways.insert" + ] + }, + "description": "URL of the network to which this VPN gateway is attached. Provided by the\nclient when the VPN gateway is created.", + "type": "string" + }, + "params": { + "$ref": "TargetVpnGatewayParams", + "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." + }, + "region": { + "description": "[Output Only] URL of the region where the target VPN gateway resides.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the VPN gateway,\nwhich can be one of the following: CREATING, READY, FAILED, or DELETING.", + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "READY" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "tunnels": { + "description": "[Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are\ncreated using the compute.vpntunnels.insert method and\nassociated with a VPN gateway.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TargetVpnGatewayAggregatedList": { + "id": "TargetVpnGatewayAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "TargetVpnGatewaysScopedList", + "description": "[Output Only] Name of the scope containing this set of target VPN gateways." + }, + "description": "A list of TargetVpnGateway resources.", + "type": "object" + }, + "kind": { + "default": "compute#targetVpnGatewayAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetVpnGateway for target VPN gateways.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", "items": { - "$ref": "TargetTcpProxy" + "type": "string" }, + "readOnly": true, "type": "array" }, "warning": { - "description": "Informational warning which replaces the list of\nbackend services when the list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -96814,113 +106551,24 @@ }, "type": "object" }, - "TargetTcpProxiesSetBackendServiceRequest": { - "id": "TargetTcpProxiesSetBackendServiceRequest", - "properties": { - "service": { - "description": "The URL of the new BackendService resource for the targetTcpProxy.", - "type": "string" - } - }, - "type": "object" - }, - "TargetTcpProxiesSetProxyHeaderRequest": { - "id": "TargetTcpProxiesSetProxyHeaderRequest", - "properties": { - "proxyHeader": { - "description": "The new type of proxy header to append before sending data to the\nbackend. NONE or PROXY_V1 are allowed.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ], - "type": "string" - } - }, - "type": "object" - }, - "TargetTcpProxy": { - "description": "Represents a Target TCP Proxy resource.\n\nA target TCP proxy is a component of a Proxy Network Load Balancer.\nThe forwarding rule references the target TCP proxy, and the target proxy\nthen references a backend service. For more information, readProxy Network\nLoad Balancer overview.", - "id": "TargetTcpProxy", - "properties": { - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "type": "string" - }, - "kind": { - "default": "compute#targetTcpProxy", - "description": "Output only. [Output Only] Type of the resource. Alwayscompute#targetTcpProxy for target TCP proxies.", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" - }, - "proxyBind": { - "description": "This field only applies when the forwarding rule that references this\ntarget proxy has a loadBalancingScheme set toINTERNAL_SELF_MANAGED.\n\nWhen this field is set to true, Envoy proxies set up inbound\ntraffic interception and bind to the IP address and port specified in the\nforwarding rule. This is generally useful when using Traffic Director to\nconfigure Envoy as a gateway or middle proxy (in other words, not a\nsidecar proxy). The Envoy proxy listens for inbound requests and handles\nrequests when it receives them.\n\nThe default is false.", - "type": "boolean" - }, - "proxyHeader": { - "description": "Specifies the type of proxy header to append before sending data to the\nbackend, either NONE or PROXY_V1. The default\nis NONE.", - "enum": [ - "NONE", - "PROXY_V1" - ], - "enumDescriptions": [ - "", - "" - ], - "type": "string" - }, - "region": { - "description": "Output only. [Output Only] URL of the region where the regional TCP proxy resides.\nThis field is not applicable to global TCP proxy.", - "readOnly": true, - "type": "string" - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", - "type": "string" - }, - "service": { - "description": "URL to the BackendService resource.", - "type": "string" - } - }, - "type": "object" - }, - "TargetTcpProxyAggregatedList": { - "id": "TargetTcpProxyAggregatedList", + "TargetVpnGatewayList": { + "description": "Contains a list of TargetVpnGateway resources.", + "id": "TargetVpnGatewayList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "additionalProperties": { - "$ref": "TargetTcpProxiesScopedList", - "description": "Name of the scope containing this set of TargetTcpProxies." + "description": "A list of TargetVpnGateway resources.", + "items": { + "$ref": "TargetVpnGateway" }, - "description": "A list of TargetTcpProxiesScopedList resources.", - "type": "object" + "type": "array" }, "kind": { - "default": "compute#targetTcpProxyAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetTcpProxyAggregatedList for lists of Target\nTCP Proxies.", + "default": "compute#targetVpnGatewayList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetVpnGateway for target VPN gateways.", "readOnly": true, "type": "string" }, @@ -96933,14 +106581,6 @@ "readOnly": true, "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -97068,38 +106708,31 @@ }, "type": "object" }, - "TargetTcpProxyList": { - "description": "Contains a list of TargetTcpProxy resources.", - "id": "TargetTcpProxyList", + "TargetVpnGatewayParams": { + "id": "TargetVpnGatewayParams", "properties": { - "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", - "type": "string" - }, - "items": { - "description": "A list of TargetTcpProxy resources.", + "resourceManagerTags": { + "additionalProperties": { + "type": "string" + }, + "description": "Tag keys/values directly bound to this resource.\nTag keys and values have the same definition as resource\nmanager tags. The field is allowed for INSERT\nonly. The keys/values to set on the resource should be specified in\neither ID { : } or Namespaced format\n{ : }.\nFor example the following are valid inputs:\n* {\"tagKeys/333\" : \"tagValues/444\", \"tagKeys/123\" : \"tagValues/456\"}\n* {\"123/environment\" : \"production\", \"345/abc\" : \"xyz\"}\nNote:\n* Invalid combinations of ID & namespaced format is not supported. For\n instance: {\"123/environment\" : \"tagValues/444\"} is invalid.\n* Inconsistent format is not supported. For instance:\n {\"tagKeys/333\" : \"tagValues/444\", \"123/env\" : \"prod\"} is invalid.", + "type": "object" + } + }, + "type": "object" + }, + "TargetVpnGatewaysScopedList": { + "id": "TargetVpnGatewaysScopedList", + "properties": { + "targetVpnGateways": { + "description": "[Output Only] A list of target VPN gateways contained in this scope.", "items": { - "$ref": "TargetTcpProxy" + "$ref": "TargetVpnGateway" }, "type": "array" }, - "kind": { - "default": "compute#targetTcpProxyList", - "description": "Output only. Type of resource.", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", - "type": "string" - }, - "selfLink": { - "description": "Output only. [Output Only] Server-defined URL for this resource.", - "readOnly": true, - "type": "string" - }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "[Output Only] Informational warning which replaces the list of addresses\nwhen the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -97225,23 +106858,236 @@ }, "type": "object" }, - "TargetVpnGateway": { - "description": "Represents a Target VPN Gateway resource.\n\nThe target VPN gateway resource represents a Classic Cloud VPN gateway.\nFor more information, read thethe\nCloud VPN Overview.", - "id": "TargetVpnGateway", + "TestFailure": { + "id": "TestFailure", + "properties": { + "actualOutputUrl": { + "description": "The actual output URL evaluated by a load balancer containing the scheme,\nhost, path and query parameters.", + "type": "string" + }, + "actualRedirectResponseCode": { + "description": "Actual HTTP status code for rule with `urlRedirect`\ncalculated by load balancer", + "format": "int32", + "type": "integer" + }, + "actualService": { + "description": "BackendService or BackendBucket returned by load\nbalancer.", + "type": "string" + }, + "expectedOutputUrl": { + "description": "The expected output URL evaluated by a load balancer containing the scheme,\nhost, path and query parameters.", + "type": "string" + }, + "expectedRedirectResponseCode": { + "description": "Expected HTTP status code for rule with `urlRedirect`\ncalculated by load balancer", + "format": "int32", + "type": "integer" + }, + "expectedService": { + "description": "Expected BackendService or BackendBucket resource\nthe given URL should be mapped to.", + "type": "string" + }, + "headers": { + "description": "HTTP headers of the request.", + "items": { + "$ref": "UrlMapTestHeader" + }, + "type": "array" + }, + "host": { + "description": "Host portion of the URL.", + "type": "string" + }, + "path": { + "description": "Path portion including query parameters in the URL.", + "type": "string" + } + }, + "type": "object" + }, + "TestPermissionsRequest": { + "id": "TestPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the 'resource'. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TestPermissionsResponse": { + "id": "TestPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Uint128": { + "id": "Uint128", + "properties": { + "high": { + "format": "uint64", + "type": "string" + }, + "low": { + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, + "UpcomingMaintenance": { + "description": "Upcoming Maintenance notification information.", + "id": "UpcomingMaintenance", + "properties": { + "canReschedule": { + "description": "Indicates if the maintenance can be customer triggered.", + "type": "boolean" + }, + "latestWindowStartTime": { + "description": "The latest time for the planned maintenance window to start.\nThis timestamp value is in RFC3339 text format.", + "type": "string" + }, + "maintenanceOnShutdown": { + "description": "Indicates whether the UpcomingMaintenance will be triggered on VM shutdown.", + "type": "boolean" + }, + "maintenanceReasons": { + "description": "The reasons for the maintenance. Only valid for vms.", + "items": { + "enum": [ + "FAILURE_DISK", + "FAILURE_GPU", + "FAILURE_GPU_MULTIPLE_FAULTY_HOSTS_CUSTOMER_REPORTED", + "FAILURE_GPU_NVLINK_SWITCH_CUSTOMER_REPORTED", + "FAILURE_GPU_TEMPERATURE", + "FAILURE_GPU_XID", + "FAILURE_INFRA", + "FAILURE_INTERFACE", + "FAILURE_MEMORY", + "FAILURE_NETWORK", + "FAILURE_NVLINK", + "FAILURE_REDUNDANT_HARDWARE_FAULT", + "FAILURE_TPU", + "INFRASTRUCTURE_RELOCATION", + "MAINTENANCE_REASON_UNKNOWN", + "PLANNED_NETWORK_UPDATE", + "PLANNED_UPDATE" + ], + "enumDescriptions": [ + "Maintenance due to disk errors.", + "Maintenance due to GPU errors.", + "Maintenance due to customer reported multiple faulty hosts via R&R\nSubblock API.", + "Maintenance due to customer reported NVLink switch failure via R&R\nSubblock API.", + "Maintenance due to high GPU temperature.", + "Maintenance due to GPU xid failure.", + "Maintenance due to infrastructure errors.", + "Maintenance due to interface errors.", + "Maintenance due to memory errors.", + "Maintenance due to network errors.", + "Maintenance due to NVLink failure.", + "Maintenance due to redundant hardware fault.", + "Maintenance due to TPU errors.", + "Maintenance due to infrastructure relocation.", + "Unknown maintenance reason. Do not use this value.", + "Maintenance due to planned network update.", + "Maintenance due to planned update to the instance." + ], + "type": "string" + }, + "type": "array" + }, + "maintenanceStatus": { + "enum": [ + "ONGOING", + "PENDING", + "UNKNOWN" + ], + "enumDescriptions": [ + "There is ongoing maintenance on this VM.", + "There is pending maintenance.", + "Unknown maintenance status. Do not use this value." + ], + "type": "string" + }, + "type": { + "description": "Defines the type of maintenance.", + "enum": [ + "MULTIPLE", + "SCHEDULED", + "UNKNOWN_TYPE", + "UNSCHEDULED" + ], + "enumDescriptions": [ + "Multiple maintenance types in one window.\nThis is only intended to be used for groups.", + "Scheduled maintenance (e.g. maintenance after uptime guarantee is\ncomplete).", + "No type specified. Do not use this value.", + "Unscheduled maintenance (e.g. emergency maintenance during\nuptime guarantee)." + ], + "type": "string" + }, + "windowEndTime": { + "description": "The time by which the maintenance disruption will be completed.\nThis timestamp value is in RFC3339 text format.", + "type": "string" + }, + "windowStartTime": { + "description": "The current start time of the maintenance window.\nThis timestamp value is in RFC3339 text format.", + "type": "string" + } + }, + "type": "object" + }, + "UrlMap": { + "description": "Represents a URL Map resource.\n\nCompute Engine has two URL Map resources:\n\n* [Global](/compute/docs/reference/rest/v1/urlMaps)\n* [Regional](/compute/docs/reference/rest/v1/regionUrlMaps)\n\nA URL map resource is a component of certain types of cloud load balancers\nand Traffic Director:\n\n* urlMaps are used by global external Application Load\nBalancers, classic Application Load Balancers, and cross-region internal\nApplication Load Balancers.\n* regionUrlMaps are used by internal Application Load Balancers,\nregional external Application Load Balancers and regional internal\nApplication Load Balancers.\n\nFor a list of supported URL map features by the load balancer type, see the\nLoad balancing features: Routing and traffic management table.\n\nFor a list of supported URL map features for Traffic Director, see the\nTraffic Director features: Routing and traffic management table.\n\nThis resource defines mappings from hostnames and URL paths to either a\nbackend service or a backend bucket.\n\nTo use the global urlMaps resource, the backend service must\nhave a loadBalancingScheme of either EXTERNAL,EXTERNAL_MANAGED, or INTERNAL_SELF_MANAGED. To use\nthe regionUrlMaps resource, the backend service must have aloadBalancingScheme of INTERNAL_MANAGED. For more\ninformation, read URL\nMap Concepts.", + "id": "UrlMap", "properties": { "creationTimestamp": { "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", "readOnly": true, "type": "string" }, + "defaultCustomErrorResponsePolicy": { + "$ref": "CustomErrorResponsePolicy", + "description": "defaultCustomErrorResponsePolicy specifies how the Load\nBalancer returns error responses when BackendServiceorBackendBucket responds with an error. \n\nThis policy takes\neffect at the load balancer level and applies only when no policy has been\ndefined for the error code at lower levels like PathMatcher, RouteRule and\nPathRule within this UrlMap. \n\nFor example, consider a UrlMap with the\nfollowing configuration:\n \n \n - defaultCustomErrorResponsePolicy containing policies for\n responding to 5xx and 4xx errors\n - A PathMatcher configured for *.example.com has\n defaultCustomErrorResponsePolicy for 4xx.\n\nIf a request for http://www.example.com/ encounters a404, the policy inpathMatcher.defaultCustomErrorResponsePolicy will be enforced.\nWhen the request for http://www.example.com/ encounters a502, the policy inUrlMap.defaultCustomErrorResponsePolicy will be enforced. When\na request that does not match any host in *.example.com such\nas http://www.myotherexample.com/, encounters a404, UrlMap.defaultCustomErrorResponsePolicy\ntakes effect. \n\nWhen used in conjunction withdefaultRouteAction.retryPolicy, retries take precedence. Only\nonce all retries are exhausted, thedefaultCustomErrorResponsePolicy is applied. While attempting\na retry, if load balancer is successful in reaching the\nservice, the defaultCustomErrorResponsePolicy is ignored and\nthe response from the service is returned to the client.\n\ndefaultCustomErrorResponsePolicy is supported only for\nglobal external Application Load Balancers." + }, + "defaultRouteAction": { + "$ref": "HttpRouteAction", + "description": "defaultRouteAction takes effect when none of the \nhostRules match. The load balancer performs advanced routing\nactions, such as URL rewrites and header transformations, before forwarding\nthe request to the selected backend.\n\n\nOnly one of defaultUrlRedirect, defaultService\nor defaultRouteAction.weightedBackendService can be set.\n\n\n URL maps for classic Application Load Balancers only support\nthe urlRewrite action within defaultRouteAction.\n\n\ndefaultRouteAction has no effect when the URL map is bound\nto a target gRPC proxy that has the validateForProxyless field\nset to true." + }, + "defaultService": { + "description": "The full or partial URL of the defaultService resource to\nwhich traffic is directed if none of the hostRules match.\nIf defaultRouteAction is also specified, advanced\nrouting actions, such as URL rewrites, take effect before sending the\nrequest to the backend.\n\n\nOnly one of defaultUrlRedirect, defaultService\nor defaultRouteAction.weightedBackendService can be set.\n\n\ndefaultService has no effect when the URL map is bound\nto a target gRPC proxy that has the validateForProxyless field\nset to true.", + "type": "string" + }, + "defaultUrlRedirect": { + "$ref": "HttpRedirectAction", + "description": "When none of the specified hostRules match, the request\nis redirected to a URL specified by defaultUrlRedirect.\n\n\nOnly one of defaultUrlRedirect, defaultService\nor defaultRouteAction.weightedBackendService can be set.\n\n\nNot supported when the URL map is bound to a target gRPC proxy." + }, "description": { "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", "type": "string" }, - "forwardingRules": { - "description": "[Output Only] A list of URLs to the ForwardingRule resources.\nForwardingRules are created usingcompute.forwardingRules.insert and associated with a VPN\ngateway.", + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field is ignored when\ninserting a UrlMap. An up-to-date fingerprint must be provided\nin order to update the UrlMap, otherwise the request will\nfail with error 412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve a UrlMap.", + "format": "byte", + "type": "string" + }, + "headerAction": { + "$ref": "HttpHeaderAction", + "description": "Specifies changes to request and response headers that need to take effect\nfor the selected backendService.\n\nThe headerAction specified here take effect afterheaderAction specified under pathMatcher.\n\nheaderAction is not supported for load balancers\nthat have\ntheir loadBalancingScheme set to EXTERNAL.\n\nNot supported when the URL map is bound to a target gRPC proxy that\nhas validateForProxyless field set to true." + }, + "hostRules": { + "description": "The list of host rules to use against the URL.", "items": { - "type": "string" + "$ref": "HostRule" }, "type": "array" }, @@ -97251,98 +107097,60 @@ "type": "string" }, "kind": { - "default": "compute#targetVpnGateway", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetVpnGateway for target VPN gateways.", + "default": "compute#urlMap", + "description": "Output only. [Output Only] Type of the resource. Always compute#urlMaps for\nurl maps.", "readOnly": true, "type": "string" }, - "labelFingerprint": { - "description": "A fingerprint for the labels being applied to this TargetVpnGateway, which\nis essentially a hash of the labels set used for optimistic locking. The\nfingerprint is initially generated by Compute Engine and changes after\nevery request to modify or update labels. You must always provide an\nup-to-date fingerprint hash in order to update or change labels,\notherwise the request will fail with error412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve a TargetVpnGateway.", - "format": "byte", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035.\nLabel values may be empty.", - "type": "object" - }, "name": { - "annotations": { - "required": [ - "compute.targetVpnGateways.insert" - ] - }, "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, - "network": { - "annotations": { - "required": [ - "compute.targetVpnGateways.insert" - ] + "pathMatchers": { + "description": "The list of named PathMatchers to use against the URL.", + "items": { + "$ref": "PathMatcher" }, - "description": "URL of the network to which this VPN gateway is attached. Provided by the\nclient when the VPN gateway is created.", - "type": "string" - }, - "params": { - "$ref": "TargetVpnGatewayParams", - "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." + "type": "array" }, "region": { - "description": "[Output Only] URL of the region where the target VPN gateway resides.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "description": "Output only. [Output Only] URL of the region where the regional URL map resides.\nThis field is not applicable to global URL maps.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", + "readOnly": true, "type": "string" }, "selfLink": { "description": "[Output Only] Server-defined URL for the resource.", "type": "string" }, - "status": { - "description": "[Output Only] The status of the VPN gateway,\nwhich can be one of the following: CREATING, READY, FAILED, or DELETING.", - "enum": [ - "CREATING", - "DELETING", - "FAILED", - "READY" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "type": "string" - }, - "tunnels": { - "description": "[Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are\ncreated using the compute.vpntunnels.insert method and\nassociated with a VPN gateway.", + "tests": { + "description": "The list of expected URL mapping tests. Request to update theUrlMap succeeds only if all test cases pass. You can specify a\nmaximum of 100 tests per UrlMap.\n\nNot supported when the URL map is bound to a target gRPC proxy that\nhas validateForProxyless field set to true.", "items": { - "type": "string" + "$ref": "UrlMapTest" }, "type": "array" } }, "type": "object" }, - "TargetVpnGatewayAggregatedList": { - "id": "TargetVpnGatewayAggregatedList", + "UrlMapList": { + "description": "Contains a list of UrlMap resources.", + "id": "UrlMapList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "additionalProperties": { - "$ref": "TargetVpnGatewaysScopedList", - "description": "[Output Only] Name of the scope containing this set of target VPN gateways." + "description": "A list of UrlMap resources.", + "items": { + "$ref": "UrlMap" }, - "description": "A list of TargetVpnGateway resources.", - "type": "object" + "type": "array" }, "kind": { - "default": "compute#targetVpnGatewayAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetVpnGateway for target VPN gateways.", + "default": "compute#urlMapList", + "description": "Output only. Type of resource.", "readOnly": true, "type": "string" }, @@ -97355,14 +107163,6 @@ "readOnly": true, "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -97485,29 +107285,119 @@ "type": "string" } }, - "type": "object" + "type": "object" + } + }, + "type": "object" + }, + "UrlMapReference": { + "id": "UrlMapReference", + "properties": { + "urlMap": { + "type": "string" + } + }, + "type": "object" + }, + "UrlMapTest": { + "description": "Message for the expected URL mappings.", + "id": "UrlMapTest", + "properties": { + "description": { + "description": "Description of this test case.", + "type": "string" + }, + "expectedOutputUrl": { + "description": "The expected output URL evaluated by the load balancer\ncontaining the scheme, host, path and query parameters.\n\nFor rules that forward requests to backends, the test passes only whenexpectedOutputUrl matches the request forwarded by\nthe load balancer to backends. For rules with urlRewrite,\nthe test verifies that the forwarded request matcheshostRewrite and pathPrefixRewrite in theurlRewrite action. When service is specified,expectedOutputUrl`s scheme is ignored.\n\nFor rules with urlRedirect, the test passes only ifexpectedOutputUrl matches the URL in the load balancer's\nredirect response. If urlRedirect specifieshttps_redirect, the test passes only if the scheme inexpectedOutputUrl is also set to HTTPS.\nIf urlRedirect specifies strip_query, the test\npasses only if expectedOutputUrl does not contain any query\nparameters. \n\nexpectedOutputUrl is optional whenservice is specified.", + "type": "string" + }, + "expectedRedirectResponseCode": { + "description": "For rules with urlRedirect, the test passes only ifexpectedRedirectResponseCode matches the HTTP status code in\nload balancer's redirect response.\n\nexpectedRedirectResponseCode cannot be set whenservice is set.", + "format": "int32", + "type": "integer" + }, + "headers": { + "description": "HTTP headers for this request. If headers contains\na host header, then host must also match the header value.", + "items": { + "$ref": "UrlMapTestHeader" + }, + "type": "array" + }, + "host": { + "description": "Host portion of the URL. If headers contains a host header,\nthen host must also match the header value.", + "type": "string" + }, + "path": { + "description": "Path portion of the URL.", + "type": "string" + }, + "service": { + "description": "Expected BackendService or BackendBucket resource\nthe given URL should be mapped to. \n\nThe service field cannot\nbe set if expectedRedirectResponseCode is set.", + "type": "string" } }, "type": "object" }, - "TargetVpnGatewayList": { - "description": "Contains a list of TargetVpnGateway resources.", - "id": "TargetVpnGatewayList", + "UrlMapTestHeader": { + "description": "HTTP headers used in UrlMapTests.", + "id": "UrlMapTestHeader", + "properties": { + "name": { + "description": "Header name.", + "type": "string" + }, + "value": { + "description": "Header value.", + "type": "string" + } + }, + "type": "object" + }, + "UrlMapValidationResult": { + "description": "Message representing the validation result for a UrlMap.", + "id": "UrlMapValidationResult", + "properties": { + "loadErrors": { + "items": { + "type": "string" + }, + "type": "array" + }, + "loadSucceeded": { + "description": "Whether the given UrlMap can be successfully loaded.\nIf false, 'loadErrors' indicates the reasons.", + "type": "boolean" + }, + "testFailures": { + "items": { + "$ref": "TestFailure" + }, + "type": "array" + }, + "testPassed": { + "description": "If successfully loaded, this field indicates whether the test passed.\nIf false, 'testFailures's indicate the reason of failure.", + "type": "boolean" + } + }, + "type": "object" + }, + "UrlMapsAggregatedList": { + "id": "UrlMapsAggregatedList", "properties": { "id": { "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "A list of TargetVpnGateway resources.", - "items": { - "$ref": "TargetVpnGateway" + "additionalProperties": { + "$ref": "UrlMapsScopedList", + "description": "Name of the scope containing this set of UrlMaps." }, - "type": "array" + "description": "A list of UrlMapsScopedList resources.", + "type": "object" }, "kind": { - "default": "compute#targetVpnGatewayList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#targetVpnGateway for target VPN gateways.", + "default": "compute#urlMapsAggregatedList", + "description": "Output only. Type of resource.", "readOnly": true, "type": "string" }, @@ -97520,6 +107410,14 @@ "readOnly": true, "type": "string" }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -97647,31 +107545,18 @@ }, "type": "object" }, - "TargetVpnGatewayParams": { - "id": "TargetVpnGatewayParams", - "properties": { - "resourceManagerTags": { - "additionalProperties": { - "type": "string" - }, - "description": "Tag keys/values directly bound to this resource.\nTag keys and values have the same definition as resource\nmanager tags. The field is allowed for INSERT\nonly. The keys/values to set on the resource should be specified in\neither ID { : } or Namespaced format\n{ : }.\nFor example the following are valid inputs:\n* {\"tagKeys/333\" : \"tagValues/444\", \"tagKeys/123\" : \"tagValues/456\"}\n* {\"123/environment\" : \"production\", \"345/abc\" : \"xyz\"}\nNote:\n* Invalid combinations of ID & namespaced format is not supported. For\n instance: {\"123/environment\" : \"tagValues/444\"} is invalid.\n* Inconsistent format is not supported. For instance:\n {\"tagKeys/333\" : \"tagValues/444\", \"123/env\" : \"prod\"} is invalid.", - "type": "object" - } - }, - "type": "object" - }, - "TargetVpnGatewaysScopedList": { - "id": "TargetVpnGatewaysScopedList", + "UrlMapsScopedList": { + "id": "UrlMapsScopedList", "properties": { - "targetVpnGateways": { - "description": "[Output Only] A list of target VPN gateways contained in this scope.", + "urlMaps": { + "description": "A list of UrlMaps contained in this scope.", "items": { - "$ref": "TargetVpnGateway" + "$ref": "UrlMap" }, "type": "array" }, "warning": { - "description": "[Output Only] Informational warning which replaces the list of addresses\nwhen the list is empty.", + "description": "Informational warning which replaces the list of\nbackend services when the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -97797,311 +107682,218 @@ }, "type": "object" }, - "TestFailure": { - "id": "TestFailure", - "properties": { - "actualOutputUrl": { - "description": "The actual output URL evaluated by a load balancer containing the scheme,\nhost, path and query parameters.", - "type": "string" - }, - "actualRedirectResponseCode": { - "description": "Actual HTTP status code for rule with `urlRedirect`\ncalculated by load balancer", - "format": "int32", - "type": "integer" - }, - "actualService": { - "description": "BackendService or BackendBucket returned by load\nbalancer.", - "type": "string" - }, - "expectedOutputUrl": { - "description": "The expected output URL evaluated by a load balancer containing the scheme,\nhost, path and query parameters.", - "type": "string" - }, - "expectedRedirectResponseCode": { - "description": "Expected HTTP status code for rule with `urlRedirect`\ncalculated by load balancer", - "format": "int32", - "type": "integer" - }, - "expectedService": { - "description": "Expected BackendService or BackendBucket resource\nthe given URL should be mapped to.", - "type": "string" - }, - "headers": { - "description": "HTTP headers of the request.", - "items": { - "$ref": "UrlMapTestHeader" - }, - "type": "array" - }, - "host": { - "description": "Host portion of the URL.", - "type": "string" - }, - "path": { - "description": "Path portion including query parameters in the URL.", - "type": "string" - } - }, - "type": "object" - }, - "TestPermissionsRequest": { - "id": "TestPermissionsRequest", + "UrlMapsValidateRequest": { + "id": "UrlMapsValidateRequest", "properties": { - "permissions": { - "description": "The set of permissions to check for the 'resource'. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed.", + "loadBalancingSchemes": { + "description": "Specifies the load balancer type(s) this validation request is for. UseEXTERNAL_MANAGED for global external Application Load\nBalancers and regional external Application Load Balancers.\nUse EXTERNAL for classic Application Load Balancers.\n\nUse INTERNAL_MANAGED for internal Application Load Balancers. For more\ninformation, refer to Choosing\na load balancer.\n\nIf unspecified, the load balancing scheme will be inferred from the backend\nservice resources this URL map references. If that can not be inferred (for\nexample, this URL map only references backend buckets, or this Url map is\nfor rewrites and redirects only and doesn't reference any backends),EXTERNAL will be used as the default type.\n\nIf specified, the scheme(s) must not conflict with the load balancing\nscheme of the backend service resources this Url map references.", "items": { + "enum": [ + "EXTERNAL", + "EXTERNAL_MANAGED", + "LOAD_BALANCING_SCHEME_UNSPECIFIED" + ], + "enumDescriptions": [ + "Signifies that this will be used for classic Application Load Balancers.", + "Signifies that this will be used for Envoy-based global external\nApplication Load Balancers.", + "If unspecified, the validation will try to infer the scheme from the\nbackend service resources this Url map references. If the inference is not\npossible, EXTERNAL will be used as the default type." + ], "type": "string" }, "type": "array" + }, + "resource": { + "$ref": "UrlMap", + "description": "Content of the UrlMap to be validated." } }, "type": "object" }, - "TestPermissionsResponse": { - "id": "TestPermissionsResponse", + "UrlMapsValidateResponse": { + "id": "UrlMapsValidateResponse", "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "items": { - "type": "string" - }, - "type": "array" + "result": { + "$ref": "UrlMapValidationResult" } }, "type": "object" }, - "Uint128": { - "id": "Uint128", + "UrlRewrite": { + "description": "The spec for modifying the path before sending the request to the matched\nbackend service.", + "id": "UrlRewrite", "properties": { - "high": { - "format": "uint64", + "hostRewrite": { + "description": "Before forwarding the request to the selected service, the request's\nhost header is replaced with contents of hostRewrite.\n\nThe value must be from 1 to 255 characters.", "type": "string" }, - "low": { - "format": "uint64", + "pathPrefixRewrite": { + "description": "Before forwarding the request to the selected backend service, the\nmatching portion of the request's path is replaced bypathPrefixRewrite.\n\nThe value must be from 1 to 1024 characters.", + "type": "string" + }, + "pathTemplateRewrite": { + "description": "If specified, the pattern rewrites the URL path (based on the :path\nheader) using the HTTP template syntax. \n\nA corresponding\npath_template_match must be specified. Any template variables must exist in\nthe path_template_match field. \n \n \n - -At least one variable must be specified in the path_template_match\n field \n - You can omit variables from the rewritten URL\n - The * and ** operators cannot be matched\n unless they have a corresponding variable name - e.g.\n {format=*} or {var=**}.\n\nFor example, a path_template_match of /static/{format=**}\ncould be rewritten as /static/content/{format} to prefix/content to the URL. Variables can also be re-ordered in a\nrewrite, so that /{country}/{format}/{suffix=**} can be\nrewritten as /content/{format}/{country}/{suffix}. \n\nAt least\none non-empty routeRules[].matchRules[].path_template_match is\nrequired. \n\nOnly one of path_prefix_rewrite orpath_template_rewrite may be specified.", "type": "string" } }, "type": "object" }, - "UpcomingMaintenance": { - "description": "Upcoming Maintenance notification information.", - "id": "UpcomingMaintenance", + "UsableSubnetwork": { + "description": "Subnetwork which the current user has compute.subnetworks.use permission on.", + "id": "UsableSubnetwork", "properties": { - "canReschedule": { - "description": "Indicates if the maintenance can be customer triggered.", - "type": "boolean" - }, - "latestWindowStartTime": { - "description": "The latest time for the planned maintenance window to start.\nThis timestamp value is in RFC3339 text format.", + "externalIpv6Prefix": { + "description": "Output only. [Output Only] The external IPv6 address range that is assigned to this\nsubnetwork.", + "readOnly": true, "type": "string" }, - "maintenanceOnShutdown": { - "description": "Indicates whether the UpcomingMaintenance will be triggered on VM shutdown.", - "type": "boolean" + "internalIpv6Prefix": { + "description": "Output only. [Output Only] The internal IPv6 address range that is assigned to this\nsubnetwork.", + "readOnly": true, + "type": "string" }, - "maintenanceReasons": { - "description": "The reasons for the maintenance. Only valid for vms.", - "items": { - "enum": [ - "FAILURE_DISK", - "FAILURE_GPU", - "FAILURE_GPU_MULTIPLE_FAULTY_HOSTS_CUSTOMER_REPORTED", - "FAILURE_GPU_NVLINK_SWITCH_CUSTOMER_REPORTED", - "FAILURE_GPU_TEMPERATURE", - "FAILURE_GPU_XID", - "FAILURE_INFRA", - "FAILURE_INTERFACE", - "FAILURE_MEMORY", - "FAILURE_NETWORK", - "FAILURE_NVLINK", - "FAILURE_REDUNDANT_HARDWARE_FAULT", - "FAILURE_TPU", - "INFRASTRUCTURE_RELOCATION", - "MAINTENANCE_REASON_UNKNOWN", - "PLANNED_NETWORK_UPDATE", - "PLANNED_UPDATE" - ], - "enumDescriptions": [ - "Maintenance due to disk errors.", - "Maintenance due to GPU errors.", - "Maintenance due to customer reported multiple faulty hosts via R&R\nSubblock API.", - "Maintenance due to customer reported NVLink switch failure via R&R\nSubblock API.", - "Maintenance due to high GPU temperature.", - "Maintenance due to GPU xid failure.", - "Maintenance due to infrastructure errors.", - "Maintenance due to interface errors.", - "Maintenance due to memory errors.", - "Maintenance due to network errors.", - "Maintenance due to NVLink failure.", - "Maintenance due to redundant hardware fault.", - "Maintenance due to TPU errors.", - "Maintenance due to infrastructure relocation.", - "Unknown maintenance reason. Do not use this value.", - "Maintenance due to planned network update.", - "Maintenance due to planned update to the instance." - ], - "type": "string" - }, - "type": "array" + "ipCidrRange": { + "description": "The range of internal addresses that are owned by this subnetwork.", + "type": "string" }, - "maintenanceStatus": { + "ipv6AccessType": { + "description": "The access type of IPv6 address this subnet holds. It's immutable and can\nonly be specified during creation or the first time the subnet is updated\ninto IPV4_IPV6 dual stack.", "enum": [ - "ONGOING", - "PENDING", - "UNKNOWN" + "EXTERNAL", + "INTERNAL" ], "enumDescriptions": [ - "There is ongoing maintenance on this VM.", - "There is pending maintenance.", - "Unknown maintenance status. Do not use this value." + "VMs on this subnet will be assigned IPv6 addresses that are accessible\nvia the Internet, as well as the VPC network.", + "VMs on this subnet will be assigned IPv6 addresses that are only\naccessible over the VPC network." ], "type": "string" }, - "type": { - "description": "Defines the type of maintenance.", + "network": { + "description": "Network URL.", + "type": "string" + }, + "purpose": { "enum": [ - "MULTIPLE", - "SCHEDULED", - "UNKNOWN_TYPE", - "UNSCHEDULED" + "GLOBAL_MANAGED_PROXY", + "INTERNAL_HTTPS_LOAD_BALANCER", + "PEER_MIGRATION", + "PRIVATE", + "PRIVATE_NAT", + "PRIVATE_RFC_1918", + "PRIVATE_SERVICE_CONNECT", + "REGIONAL_MANAGED_PROXY" ], "enumDescriptions": [ - "Multiple maintenance types in one window.\nThis is only intended to be used for groups.", - "Scheduled maintenance (e.g. maintenance after uptime guarantee is\ncomplete).", - "No type specified. Do not use this value.", - "Unscheduled maintenance (e.g. emergency maintenance during\nuptime guarantee)." + "Subnet reserved for Global Envoy-based Load Balancing.", + "Subnet reserved for Internal HTTP(S) Load Balancing. This is a legacy\npurpose, please use REGIONAL_MANAGED_PROXY instead.", + "Subnetwork will be used for Migration from one peered VPC to another.\n(a transient state of subnetwork\nwhile migrating resources from one project to another).", + "Regular user created or automatically created subnet.", + "Subnetwork used as source range for Private NAT Gateways.", + "Regular user created or automatically created subnet.", + "Subnetworks created for Private Service Connect in the producer network.", + "Subnetwork used for Regional Envoy-based Load Balancing." ], "type": "string" }, - "windowEndTime": { - "description": "The time by which the maintenance disruption will be completed.\nThis timestamp value is in RFC3339 text format.", - "type": "string" - }, - "windowStartTime": { - "description": "The current start time of the maintenance window.\nThis timestamp value is in RFC3339 text format.", - "type": "string" - } - }, - "type": "object" - }, - "UrlMap": { - "description": "Represents a URL Map resource.\n\nCompute Engine has two URL Map resources:\n\n* [Global](/compute/docs/reference/rest/v1/urlMaps)\n* [Regional](/compute/docs/reference/rest/v1/regionUrlMaps)\n\nA URL map resource is a component of certain types of cloud load balancers\nand Traffic Director:\n\n* urlMaps are used by global external Application Load\nBalancers, classic Application Load Balancers, and cross-region internal\nApplication Load Balancers.\n* regionUrlMaps are used by internal Application Load Balancers,\nregional external Application Load Balancers and regional internal\nApplication Load Balancers.\n\nFor a list of supported URL map features by the load balancer type, see the\nLoad balancing features: Routing and traffic management table.\n\nFor a list of supported URL map features for Traffic Director, see the\nTraffic Director features: Routing and traffic management table.\n\nThis resource defines mappings from hostnames and URL paths to either a\nbackend service or a backend bucket.\n\nTo use the global urlMaps resource, the backend service must\nhave a loadBalancingScheme of either EXTERNAL,EXTERNAL_MANAGED, or INTERNAL_SELF_MANAGED. To use\nthe regionUrlMaps resource, the backend service must have aloadBalancingScheme of INTERNAL_MANAGED. For more\ninformation, read URL\nMap Concepts.", - "id": "UrlMap", - "properties": { - "creationTimestamp": { - "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", - "readOnly": true, - "type": "string" - }, - "defaultCustomErrorResponsePolicy": { - "$ref": "CustomErrorResponsePolicy", - "description": "defaultCustomErrorResponsePolicy specifies how the Load\nBalancer returns error responses when BackendServiceorBackendBucket responds with an error. \n\nThis policy takes\neffect at the load balancer level and applies only when no policy has been\ndefined for the error code at lower levels like PathMatcher, RouteRule and\nPathRule within this UrlMap. \n\nFor example, consider a UrlMap with the\nfollowing configuration:\n \n \n - defaultCustomErrorResponsePolicy containing policies for\n responding to 5xx and 4xx errors\n - A PathMatcher configured for *.example.com has\n defaultCustomErrorResponsePolicy for 4xx.\n\nIf a request for http://www.example.com/ encounters a404, the policy inpathMatcher.defaultCustomErrorResponsePolicy will be enforced.\nWhen the request for http://www.example.com/ encounters a502, the policy inUrlMap.defaultCustomErrorResponsePolicy will be enforced. When\na request that does not match any host in *.example.com such\nas http://www.myotherexample.com/, encounters a404, UrlMap.defaultCustomErrorResponsePolicy\ntakes effect. \n\nWhen used in conjunction withdefaultRouteAction.retryPolicy, retries take precedence. Only\nonce all retries are exhausted, thedefaultCustomErrorResponsePolicy is applied. While attempting\na retry, if load balancer is successful in reaching the\nservice, the defaultCustomErrorResponsePolicy is ignored and\nthe response from the service is returned to the client.\n\ndefaultCustomErrorResponsePolicy is supported only for\nglobal external Application Load Balancers." - }, - "defaultRouteAction": { - "$ref": "HttpRouteAction", - "description": "defaultRouteAction takes effect when none of the \nhostRules match. The load balancer performs advanced routing\nactions, such as URL rewrites and header transformations, before forwarding\nthe request to the selected backend.\n\n\nOnly one of defaultUrlRedirect, defaultService\nor defaultRouteAction.weightedBackendService can be set.\n\n\n URL maps for classic Application Load Balancers only support\nthe urlRewrite action within defaultRouteAction.\n\n\ndefaultRouteAction has no effect when the URL map is bound\nto a target gRPC proxy that has the validateForProxyless field\nset to true." - }, - "defaultService": { - "description": "The full or partial URL of the defaultService resource to\nwhich traffic is directed if none of the hostRules match.\nIf defaultRouteAction is also specified, advanced\nrouting actions, such as URL rewrites, take effect before sending the\nrequest to the backend.\n\n\nOnly one of defaultUrlRedirect, defaultService\nor defaultRouteAction.weightedBackendService can be set.\n\n\ndefaultService has no effect when the URL map is bound\nto a target gRPC proxy that has the validateForProxyless field\nset to true.", - "type": "string" - }, - "defaultUrlRedirect": { - "$ref": "HttpRedirectAction", - "description": "When none of the specified hostRules match, the request\nis redirected to a URL specified by defaultUrlRedirect.\n\n\nOnly one of defaultUrlRedirect, defaultService\nor defaultRouteAction.weightedBackendService can be set.\n\n\nNot supported when the URL map is bound to a target gRPC proxy." - }, - "description": { - "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", - "type": "string" - }, - "fingerprint": { - "description": "Fingerprint of this resource. A hash of the contents stored in this object.\nThis field is used in optimistic locking. This field is ignored when\ninserting a UrlMap. An up-to-date fingerprint must be provided\nin order to update the UrlMap, otherwise the request will\nfail with error 412 conditionNotMet.\n\nTo see the latest fingerprint, make a get() request to\nretrieve a UrlMap.", - "format": "byte", + "role": { + "description": "The role of subnetwork. Currently, this field is only used when\npurpose is set to GLOBAL_MANAGED_PROXY orREGIONAL_MANAGED_PROXY. The value can be set toACTIVE or BACKUP. An ACTIVE\nsubnetwork is one that is currently being used for Envoy-based load\nbalancers in a region. A BACKUP subnetwork is one that is\nready to be promoted to ACTIVE or is currently draining.\nThis field can be updated with a patch request.", + "enum": [ + "ACTIVE", + "BACKUP" + ], + "enumDescriptions": [ + "The ACTIVE subnet that is currently used.", + "The BACKUP subnet that could be promoted to ACTIVE." + ], "type": "string" }, - "headerAction": { - "$ref": "HttpHeaderAction", - "description": "Specifies changes to request and response headers that need to take effect\nfor the selected backendService.\n\nThe headerAction specified here take effect afterheaderAction specified under pathMatcher.\n\nheaderAction is not supported for load balancers\nthat have\ntheir loadBalancingScheme set to EXTERNAL.\n\nNot supported when the URL map is bound to a target gRPC proxy that\nhas validateForProxyless field set to true." - }, - "hostRules": { - "description": "The list of host rules to use against the URL.", + "secondaryIpRanges": { + "description": "Secondary IP ranges.", "items": { - "$ref": "HostRule" + "$ref": "UsableSubnetworkSecondaryRange" }, "type": "array" }, - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "format": "uint64", - "type": "string" - }, - "kind": { - "default": "compute#urlMap", - "description": "Output only. [Output Only] Type of the resource. Always compute#urlMaps for\nurl maps.", - "readOnly": true, + "stackType": { + "description": "The stack type for the subnet. If set to IPV4_ONLY, new VMs\nin the subnet are assigned IPv4 addresses only. If set toIPV4_IPV6, new VMs in the subnet can be assigned both IPv4 and\nIPv6 addresses. If not specified, IPV4_ONLY is used.\n\nThis field can be both set at resource creation time and updated usingpatch.", + "enum": [ + "IPV4_IPV6", + "IPV4_ONLY", + "IPV6_ONLY" + ], + "enumDescriptions": [ + "New VMs in this subnet can have both IPv4 and IPv6 addresses.", + "New VMs in this subnet will only be assigned IPv4 addresses.", + "New VMs in this subnet will only be assigned IPv6 addresses." + ], "type": "string" }, - "name": { - "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "subnetwork": { + "description": "Subnetwork URL.", "type": "string" - }, - "pathMatchers": { - "description": "The list of named PathMatchers to use against the URL.", - "items": { - "$ref": "PathMatcher" - }, - "type": "array" - }, - "region": { - "description": "Output only. [Output Only] URL of the region where the regional URL map resides.\nThis field is not applicable to global URL maps.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", - "readOnly": true, + } + }, + "type": "object" + }, + "UsableSubnetworkSecondaryRange": { + "description": "Secondary IP range of a usable subnetwork.", + "id": "UsableSubnetworkSecondaryRange", + "properties": { + "ipCidrRange": { + "description": "The range of IP addresses belonging to this subnetwork secondary range.\nCan be Ipv4 or Ipv6 range.", "type": "string" }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", + "rangeName": { + "description": "The name associated with this subnetwork secondary range, used when adding\nan alias IP range to a VM instance.\nThe name must be 1-63 characters long, and comply withRFC1035.\nThe name must be unique within the subnetwork.", "type": "string" - }, - "tests": { - "description": "The list of expected URL mapping tests. Request to update theUrlMap succeeds only if all test cases pass. You can specify a\nmaximum of 100 tests per UrlMap.\n\nNot supported when the URL map is bound to a target gRPC proxy that\nhas validateForProxyless field set to true.", - "items": { - "$ref": "UrlMapTest" - }, - "type": "array" } }, "type": "object" }, - "UrlMapList": { - "description": "Contains a list of UrlMap resources.", - "id": "UrlMapList", + "UsableSubnetworksAggregatedList": { + "id": "UsableSubnetworksAggregatedList", "properties": { "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "type": "string" }, "items": { - "description": "A list of UrlMap resources.", + "description": "[Output] A list of usable subnetwork URLs.", "items": { - "$ref": "UrlMap" + "$ref": "UsableSubnetwork" }, "type": "array" }, "kind": { - "default": "compute#urlMapList", - "description": "Output only. Type of resource.", + "default": "compute#usableSubnetworksAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#usableSubnetworksAggregatedList for aggregated lists\nof usable subnetworks.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.\nIn special cases listUsable may return 0 subnetworks andnextPageToken which still should be used to get the\nnext page of results.", "type": "string" }, + "scopedWarnings": { + "description": "Output only. [Output Only] Informational warning messages for failures encountered from\nscopes.", + "items": { + "$ref": "SubnetworksScopedWarning" + }, + "readOnly": true, + "type": "array" + }, "selfLink": { "description": "Output only. [Output Only] Server-defined URL for this resource.", "readOnly": true, "type": "string" }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -98229,114 +108021,145 @@ }, "type": "object" }, - "UrlMapReference": { - "id": "UrlMapReference", + "UsageExportLocation": { + "description": "The location in Cloud Storage and naming method of the daily usage\nreport. Contains bucket_name and report_name prefix.", + "id": "UsageExportLocation", + "properties": { + "bucketName": { + "description": "The name of an existing bucket in Cloud Storage where the usage report\nobject is stored. The Google Service Account is granted write access to\nthis bucket. This can either be the bucket name by itself, such asexample-bucket, or the bucket name with gs://\nor https://storage.googleapis.com/ in front of it, such\nas gs://example-bucket.", + "type": "string" + }, + "reportNamePrefix": { + "description": "An optional prefix for the name of the usage report object stored inbucketName. If not supplied, defaults tousage_gce. The report is stored as a CSV file namedreport_name_prefix_gce_YYYYMMDD.csv whereYYYYMMDD is the day of the usage according to Pacific Time.\nIf you supply a prefix, it should conform to Cloud Storageobject naming\nconventions.", + "type": "string" + } + }, + "type": "object" + }, + "VmEndpointNatMappings": { + "description": "Contain information of Nat mapping for a VM endpoint (i.e., NIC).", + "id": "VmEndpointNatMappings", "properties": { - "urlMap": { + "instanceName": { + "description": "Output only. Name of the VM instance which the endpoint belongs to", + "readOnly": true, "type": "string" + }, + "interfaceNatMappings": { + "items": { + "$ref": "VmEndpointNatMappingsInterfaceNatMappings" + }, + "readOnly": true, + "type": "array" } }, "type": "object" }, - "UrlMapTest": { - "description": "Message for the expected URL mappings.", - "id": "UrlMapTest", + "VmEndpointNatMappingsInterfaceNatMappings": { + "description": "Contain information of Nat mapping for an interface of this endpoint.", + "id": "VmEndpointNatMappingsInterfaceNatMappings", "properties": { - "description": { - "description": "Description of this test case.", - "type": "string" + "drainNatIpPortRanges": { + "description": "Output only. List of all drain IP:port-range mappings assigned to this interface.\nThese ranges are inclusive, that is, both the first and the last\nports can be used for NAT. Example: [\"2.2.2.2:12345-12355\",\n\"1.1.1.1:2234-2234\"].", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" }, - "expectedOutputUrl": { - "description": "The expected output URL evaluated by the load balancer\ncontaining the scheme, host, path and query parameters.\n\nFor rules that forward requests to backends, the test passes only whenexpectedOutputUrl matches the request forwarded by\nthe load balancer to backends. For rules with urlRewrite,\nthe test verifies that the forwarded request matcheshostRewrite and pathPrefixRewrite in theurlRewrite action. When service is specified,expectedOutputUrl`s scheme is ignored.\n\nFor rules with urlRedirect, the test passes only ifexpectedOutputUrl matches the URL in the load balancer's\nredirect response. If urlRedirect specifieshttps_redirect, the test passes only if the scheme inexpectedOutputUrl is also set to HTTPS.\nIf urlRedirect specifies strip_query, the test\npasses only if expectedOutputUrl does not contain any query\nparameters. \n\nexpectedOutputUrl is optional whenservice is specified.", - "type": "string" + "natIpPortRanges": { + "description": "Output only. A list of all IP:port-range mappings assigned to this interface.\nThese ranges are inclusive, that is, both the first and the last\nports can be used for NAT. Example: [\"2.2.2.2:12345-12355\",\n\"1.1.1.1:2234-2234\"].", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" }, - "expectedRedirectResponseCode": { - "description": "For rules with urlRedirect, the test passes only ifexpectedRedirectResponseCode matches the HTTP status code in\nload balancer's redirect response.\n\nexpectedRedirectResponseCode cannot be set whenservice is set.", + "numTotalDrainNatPorts": { + "description": "Output only. Total number of drain ports across all NAT IPs allocated to this\ninterface. It equals to the aggregated port number in the field\ndrain_nat_ip_port_ranges.", "format": "int32", + "readOnly": true, "type": "integer" }, - "headers": { - "description": "HTTP headers for this request. If headers contains\na host header, then host must also match the header value.", + "numTotalNatPorts": { + "description": "Output only. Total number of ports across all NAT IPs allocated to this interface.\nIt equals to the aggregated port number in the field nat_ip_port_ranges.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "ruleMappings": { + "description": "Output only. Information about mappings provided by rules in this NAT.", "items": { - "$ref": "UrlMapTestHeader" + "$ref": "VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings" }, + "readOnly": true, "type": "array" }, - "host": { - "description": "Host portion of the URL. If headers contains a host header,\nthen host must also match the header value.", - "type": "string" - }, - "path": { - "description": "Path portion of the URL.", - "type": "string" - }, - "service": { - "description": "Expected BackendService or BackendBucket resource\nthe given URL should be mapped to. \n\nThe service field cannot\nbe set if expectedRedirectResponseCode is set.", - "type": "string" - } - }, - "type": "object" - }, - "UrlMapTestHeader": { - "description": "HTTP headers used in UrlMapTests.", - "id": "UrlMapTestHeader", - "properties": { - "name": { - "description": "Header name.", + "sourceAliasIpRange": { + "description": "Output only. Alias IP range for this interface endpoint.\nIt will be a private (RFC 1918) IP range.\nExamples: \"10.33.4.55/32\", or \"192.168.5.0/24\".", + "readOnly": true, "type": "string" }, - "value": { - "description": "Header value.", + "sourceVirtualIp": { + "description": "Output only. Primary IP of the VM for this NIC.", + "readOnly": true, "type": "string" } }, "type": "object" }, - "UrlMapValidationResult": { - "description": "Message representing the validation result for a UrlMap.", - "id": "UrlMapValidationResult", + "VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings": { + "description": "Contains information of NAT Mappings provided by a NAT Rule.", + "id": "VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings", "properties": { - "loadErrors": { + "drainNatIpPortRanges": { + "description": "Output only. List of all drain IP:port-range mappings assigned to this interface\nby this rule.\nThese ranges are inclusive, that is, both the first and the last\nports can be used for NAT. Example: [\"2.2.2.2:12345-12355\",\n\"1.1.1.1:2234-2234\"].", "items": { "type": "string" }, + "readOnly": true, "type": "array" }, - "loadSucceeded": { - "description": "Whether the given UrlMap can be successfully loaded.\nIf false, 'loadErrors' indicates the reasons.", - "type": "boolean" - }, - "testFailures": { + "natIpPortRanges": { + "description": "Output only. A list of all IP:port-range mappings assigned to this interface by this\nrule.\nThese ranges are inclusive, that is, both the first and the last\nports can be used for NAT. Example: [\"2.2.2.2:12345-12355\",\n\"1.1.1.1:2234-2234\"].", "items": { - "$ref": "TestFailure" + "type": "string" }, + "readOnly": true, "type": "array" }, - "testPassed": { - "description": "If successfully loaded, this field indicates whether the test passed.\nIf false, 'testFailures's indicate the reason of failure.", - "type": "boolean" + "numTotalDrainNatPorts": { + "description": "Output only. Total number of drain ports across all NAT IPs allocated to this\ninterface by this rule.\nIt equals the aggregated port number in the field\ndrain_nat_ip_port_ranges.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "numTotalNatPorts": { + "description": "Output only. Total number of ports across all NAT IPs allocated to this interface\nby this rule.\nIt equals the aggregated port number in the field nat_ip_port_ranges.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "ruleNumber": { + "description": "Output only. Rule number of the NAT Rule.", + "format": "int32", + "readOnly": true, + "type": "integer" } }, "type": "object" }, - "UrlMapsAggregatedList": { - "id": "UrlMapsAggregatedList", + "VmEndpointNatMappingsList": { + "description": "Contains a list of VmEndpointNatMappings.", + "id": "VmEndpointNatMappingsList", "properties": { "id": { - "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "type": "string" }, - "items": { - "additionalProperties": { - "$ref": "UrlMapsScopedList", - "description": "Name of the scope containing this set of UrlMaps." - }, - "description": "A list of UrlMapsScopedList resources.", - "type": "object" - }, "kind": { - "default": "compute#urlMapsAggregatedList", - "description": "Output only. Type of resource.", + "default": "compute#vmEndpointNatMappingsList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#vmEndpointNatMappingsList for lists of Nat mappings of\nVM endpoints.", "readOnly": true, "type": "string" }, @@ -98344,19 +108167,18 @@ "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" }, + "result": { + "description": "[Output Only] A list of Nat mapping information of VM endpoints.", + "items": { + "$ref": "VmEndpointNatMappings" + }, + "type": "array" + }, "selfLink": { "description": "Output only. [Output Only] Server-defined URL for this resource.", "readOnly": true, "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -98484,13 +108306,13 @@ }, "type": "object" }, - "UrlMapsScopedList": { - "id": "UrlMapsScopedList", + "VmExtensionPoliciesScopedList": { + "id": "VmExtensionPoliciesScopedList", "properties": { - "urlMaps": { - "description": "A list of UrlMaps contained in this scope.", + "vmExtensionPolicies": { + "description": "List of VmExtensionPolicy resources contained in this scope.", "items": { - "$ref": "UrlMap" + "$ref": "VmExtensionPolicy" }, "type": "array" }, @@ -98621,205 +108443,132 @@ }, "type": "object" }, - "UrlMapsValidateRequest": { - "id": "UrlMapsValidateRequest", - "properties": { - "loadBalancingSchemes": { - "description": "Specifies the load balancer type(s) this validation request is for. UseEXTERNAL_MANAGED for global external Application Load\nBalancers and regional external Application Load Balancers.\nUse EXTERNAL for classic Application Load Balancers.\n\nUse INTERNAL_MANAGED for internal Application Load Balancers. For more\ninformation, refer to Choosing\na load balancer.\n\nIf unspecified, the load balancing scheme will be inferred from the backend\nservice resources this URL map references. If that can not be inferred (for\nexample, this URL map only references backend buckets, or this Url map is\nfor rewrites and redirects only and doesn't reference any backends),EXTERNAL will be used as the default type.\n\nIf specified, the scheme(s) must not conflict with the load balancing\nscheme of the backend service resources this Url map references.", - "items": { - "enum": [ - "EXTERNAL", - "EXTERNAL_MANAGED", - "LOAD_BALANCING_SCHEME_UNSPECIFIED" - ], - "enumDescriptions": [ - "Signifies that this will be used for classic Application Load Balancers.", - "Signifies that this will be used for Envoy-based global external\nApplication Load Balancers.", - "If unspecified, the validation will try to infer the scheme from the\nbackend service resources this Url map references. If the inference is not\npossible, EXTERNAL will be used as the default type." - ], - "type": "string" - }, - "type": "array" - }, - "resource": { - "$ref": "UrlMap", - "description": "Content of the UrlMap to be validated." - } - }, - "type": "object" - }, - "UrlMapsValidateResponse": { - "id": "UrlMapsValidateResponse", - "properties": { - "result": { - "$ref": "UrlMapValidationResult" - } - }, - "type": "object" - }, - "UrlRewrite": { - "description": "The spec for modifying the path before sending the request to the matched\nbackend service.", - "id": "UrlRewrite", + "VmExtensionPolicy": { + "description": "Represents a VM extension policy.", + "id": "VmExtensionPolicy", "properties": { - "hostRewrite": { - "description": "Before forwarding the request to the selected service, the request's\nhost header is replaced with contents of hostRewrite.\n\nThe value must be from 1 to 255 characters.", + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, "type": "string" }, - "pathPrefixRewrite": { - "description": "Before forwarding the request to the selected backend service, the\nmatching portion of the request's path is replaced bypathPrefixRewrite.\n\nThe value must be from 1 to 1024 characters.", + "description": { + "description": "An optional description of this resource.", "type": "string" }, - "pathTemplateRewrite": { - "description": "If specified, the pattern rewrites the URL path (based on the :path\nheader) using the HTTP template syntax. \n\nA corresponding\npath_template_match must be specified. Any template variables must exist in\nthe path_template_match field. \n \n \n - -At least one variable must be specified in the path_template_match\n field \n - You can omit variables from the rewritten URL\n - The * and ** operators cannot be matched\n unless they have a corresponding variable name - e.g.\n {format=*} or {var=**}.\n\nFor example, a path_template_match of /static/{format=**}\ncould be rewritten as /static/content/{format} to prefix/content to the URL. Variables can also be re-ordered in a\nrewrite, so that /{country}/{format}/{suffix=**} can be\nrewritten as /content/{format}/{country}/{suffix}. \n\nAt least\none non-empty routeRules[].matchRules[].path_template_match is\nrequired. \n\nOnly one of path_prefix_rewrite orpath_template_rewrite may be specified.", - "type": "string" - } - }, - "type": "object" - }, - "UsableSubnetwork": { - "description": "Subnetwork which the current user has compute.subnetworks.use permission on.", - "id": "UsableSubnetwork", - "properties": { - "externalIpv6Prefix": { - "description": "Output only. [Output Only] The external IPv6 address range that is assigned to this\nsubnetwork.", + "extensionPolicies": { + "additionalProperties": { + "$ref": "VmExtensionPolicyExtensionPolicy" + }, + "description": "Required. A map of extension names (for example, \"ops-agent\") to their corresponding\npolicy configurations.", + "type": "object" + }, + "globalResourceLink": { + "description": "Optional. Output only. [Output Only] Link to the global policy that manages this zone policy, if\napplicable.", "readOnly": true, "type": "string" }, - "internalIpv6Prefix": { - "description": "Output only. [Output Only] The internal IPv6 address range that is assigned to this\nsubnetwork.", + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", "readOnly": true, "type": "string" }, - "ipCidrRange": { - "description": "The range of internal addresses that are owned by this subnetwork.", - "type": "string" + "instanceSelectors": { + "description": "Optional. Selectors to target VMs for this policy. VMs are selected if they match\n*any* of the provided selectors (logical OR). If this list is empty, the\npolicy applies to all VMs.", + "items": { + "$ref": "VmExtensionPolicyInstanceSelector" + }, + "type": "array" }, - "ipv6AccessType": { - "description": "The access type of IPv6 address this subnet holds. It's immutable and can\nonly be specified during creation or the first time the subnet is updated\ninto IPV4_IPV6 dual stack.", - "enum": [ - "EXTERNAL", - "INTERNAL" - ], - "enumDescriptions": [ - "VMs on this subnet will be assigned IPv6 addresses that are accessible\nvia the Internet, as well as the VPC network.", - "VMs on this subnet will be assigned IPv6 addresses that are only\naccessible over the VPC network." - ], + "kind": { + "default": "compute#vmExtensionPolicy", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#vmExtensionPolicy.", + "readOnly": true, "type": "string" }, - "network": { - "description": "Network URL.", - "type": "string" + "managedByGlobal": { + "description": "Optional. Output only. [Output Only] Indicates if this policy is managed by a global policy.", + "readOnly": true, + "type": "boolean" }, - "purpose": { - "enum": [ - "GLOBAL_MANAGED_PROXY", - "INTERNAL_HTTPS_LOAD_BALANCER", - "PEER_MIGRATION", - "PRIVATE", - "PRIVATE_NAT", - "PRIVATE_RFC_1918", - "PRIVATE_SERVICE_CONNECT", - "REGIONAL_MANAGED_PROXY" - ], - "enumDescriptions": [ - "Subnet reserved for Global Envoy-based Load Balancing.", - "Subnet reserved for Internal HTTP(S) Load Balancing. This is a legacy\npurpose, please use REGIONAL_MANAGED_PROXY instead.", - "Subnetwork will be used for Migration from one peered VPC to another.\n(a transient state of subnetwork\nwhile migrating resources from one project to another).", - "Regular user created or automatically created subnet.", - "Subnetwork used as source range for Private NAT Gateways.", - "Regular user created or automatically created subnet.", - "Subnetworks created for Private Service Connect in the producer network.", - "Subnetwork used for Regional Envoy-based Load Balancing." - ], + "name": { + "annotations": { + "required": [ + "compute.zoneVmExtensionPolicies.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`\nwhich means the first character must be a lowercase letter, and all\nfollowing characters must be a dash, lowercase letter, or digit, except\nthe last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, - "role": { - "description": "The role of subnetwork. Currently, this field is only used when\npurpose is set to GLOBAL_MANAGED_PROXY orREGIONAL_MANAGED_PROXY. The value can be set toACTIVE or BACKUP. An ACTIVE\nsubnetwork is one that is currently being used for Envoy-based load\nbalancers in a region. A BACKUP subnetwork is one that is\nready to be promoted to ACTIVE or is currently draining.\nThis field can be updated with a patch request.", - "enum": [ - "ACTIVE", - "BACKUP" - ], - "enumDescriptions": [ - "The ACTIVE subnet that is currently used.", - "The BACKUP subnet that could be promoted to ACTIVE." - ], + "priority": { + "description": "Optional. Priority of this policy. Used to resolve conflicts when multiple policies\napply to the same extension.\nThe policy priority is an integer from 0 to 65535, inclusive. Lower\nintegers indicate higher priorities. If you do not specify a priority when\ncreating a rule, it is assigned a priority of 1000. If priorities are\nequal, the policy with the most recent creation timestamp takes precedence.", + "format": "int32", + "type": "integer" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined fully-qualified URL for this resource.", + "readOnly": true, "type": "string" }, - "secondaryIpRanges": { - "description": "Secondary IP ranges.", - "items": { - "$ref": "UsableSubnetworkSecondaryRange" - }, - "type": "array" + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL for this resource's resource id.", + "readOnly": true, + "type": "string" }, - "stackType": { - "description": "The stack type for the subnet. If set to IPV4_ONLY, new VMs\nin the subnet are assigned IPv4 addresses only. If set toIPV4_IPV6, new VMs in the subnet can be assigned both IPv4 and\nIPv6 addresses. If not specified, IPV4_ONLY is used.\n\nThis field can be both set at resource creation time and updated usingpatch.", + "state": { + "description": "Optional. Output only. [Output Only] Current state of the policy: ACTIVE or DELETING.", "enum": [ - "IPV4_IPV6", - "IPV4_ONLY", - "IPV6_ONLY" + "ACTIVE", + "DELETING", + "STATE_UNSPECIFIED" ], "enumDescriptions": [ - "New VMs in this subnet can have both IPv4 and IPv6 addresses.", - "New VMs in this subnet will only be assigned IPv4 addresses.", - "New VMs in this subnet will only be assigned IPv6 addresses." + "The policy is active and applied to matching VMs.\nNewly created VMs that match the policy will also receive the\nextension policy.", + "The policy is in the process of being deleted. After the extension is\nremoved from all matching VMs, the policy will be deleted.", + "Default value. Do not use." ], + "readOnly": true, "type": "string" }, - "subnetwork": { - "description": "Subnetwork URL.", + "updateTimestamp": { + "description": "Output only. [Output Only] Update timestamp inRFC3339\ntext format.", + "readOnly": true, "type": "string" } }, "type": "object" }, - "UsableSubnetworkSecondaryRange": { - "description": "Secondary IP range of a usable subnetwork.", - "id": "UsableSubnetworkSecondaryRange", + "VmExtensionPolicyAggregatedListResponse": { + "description": "Response for the aggregated list of VM extension policies.", + "id": "VmExtensionPolicyAggregatedListResponse", "properties": { - "ipCidrRange": { - "description": "The range of IP addresses belonging to this subnetwork secondary range.\nCan be Ipv4 or Ipv6 range.", + "etag": { "type": "string" }, - "rangeName": { - "description": "The name associated with this subnetwork secondary range, used when adding\nan alias IP range to a VM instance.\nThe name must be 1-63 characters long, and comply withRFC1035.\nThe name must be unique within the subnetwork.", - "type": "string" - } - }, - "type": "object" - }, - "UsableSubnetworksAggregatedList": { - "id": "UsableSubnetworksAggregatedList", - "properties": { "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, "items": { - "description": "[Output] A list of usable subnetwork URLs.", - "items": { - "$ref": "UsableSubnetwork" + "additionalProperties": { + "$ref": "VmExtensionPoliciesScopedList", + "description": "Name of the scope containing this set of VmExtensionPolicies." }, - "type": "array" + "description": "A list of VmExtensionPoliciesScopedList resources.", + "type": "object" }, "kind": { - "default": "compute#usableSubnetworksAggregatedList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#usableSubnetworksAggregatedList for aggregated lists\nof usable subnetworks.", + "default": "compute#VmExtensionPolicyAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#VmExtensionPolicyAggregatedList for lists of\nVmExtensionPolicies.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.\nIn special cases listUsable may return 0 subnetworks andnextPageToken which still should be used to get the\nnext page of results.", + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", "type": "string" }, - "scopedWarnings": { - "description": "Output only. [Output Only] Informational warning messages for failures encountered from\nscopes.", - "items": { - "$ref": "SubnetworksScopedWarning" - }, - "readOnly": true, - "type": "array" - }, "selfLink": { "description": "Output only. [Output Only] Server-defined URL for this resource.", "readOnly": true, @@ -98960,166 +108709,93 @@ }, "type": "object" }, - "UsageExportLocation": { - "description": "The location in Cloud Storage and naming method of the daily usage\nreport. Contains bucket_name and report_name prefix.", - "id": "UsageExportLocation", + "VmExtensionPolicyExtensionPolicy": { + "description": "Configuration for a specific VM extension.", + "id": "VmExtensionPolicyExtensionPolicy", "properties": { - "bucketName": { - "description": "The name of an existing bucket in Cloud Storage where the usage report\nobject is stored. The Google Service Account is granted write access to\nthis bucket. This can either be the bucket name by itself, such asexample-bucket, or the bucket name with gs://\nor https://storage.googleapis.com/ in front of it, such\nas gs://example-bucket.", + "pinnedVersion": { + "description": "Optional. The specific version of the extension to install. If not set, the latest\nversion is used.", "type": "string" }, - "reportNamePrefix": { - "description": "An optional prefix for the name of the usage report object stored inbucketName. If not supplied, defaults tousage_gce. The report is stored as a CSV file namedreport_name_prefix_gce_YYYYMMDD.csv whereYYYYMMDD is the day of the usage according to Pacific Time.\nIf you supply a prefix, it should conform to Cloud Storageobject naming\nconventions.", + "stringConfig": { + "description": "Optional. String-based configuration data for the extension.", "type": "string" } }, "type": "object" }, - "VmEndpointNatMappings": { - "description": "Contain information of Nat mapping for a VM endpoint (i.e., NIC).", - "id": "VmEndpointNatMappings", + "VmExtensionPolicyInstanceSelector": { + "description": "Defines how to select VMs to apply a zone VM extension policy.", + "id": "VmExtensionPolicyInstanceSelector", "properties": { - "instanceName": { - "description": "Output only. Name of the VM instance which the endpoint belongs to", - "readOnly": true, - "type": "string" - }, - "interfaceNatMappings": { - "items": { - "$ref": "VmEndpointNatMappingsInterfaceNatMappings" - }, - "readOnly": true, - "type": "array" + "labelSelector": { + "$ref": "VmExtensionPolicyLabelSelector", + "description": "Optional. LabelSelector selects VMs based on their labels." } }, "type": "object" }, - "VmEndpointNatMappingsInterfaceNatMappings": { - "description": "Contain information of Nat mapping for an interface of this endpoint.", - "id": "VmEndpointNatMappingsInterfaceNatMappings", + "VmExtensionPolicyLabelSelector": { + "description": "A LabelSelector is applied to a VM only if it matches all the specified\nlabels.", + "id": "VmExtensionPolicyLabelSelector", "properties": { - "drainNatIpPortRanges": { - "description": "Output only. List of all drain IP:port-range mappings assigned to this interface.\nThese ranges are inclusive, that is, both the first and the last\nports can be used for NAT. Example: [\"2.2.2.2:12345-12355\",\n\"1.1.1.1:2234-2234\"].", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, - "natIpPortRanges": { - "description": "Output only. A list of all IP:port-range mappings assigned to this interface.\nThese ranges are inclusive, that is, both the first and the last\nports can be used for NAT. Example: [\"2.2.2.2:12345-12355\",\n\"1.1.1.1:2234-2234\"].", - "items": { + "inclusionLabels": { + "additionalProperties": { "type": "string" }, - "readOnly": true, - "type": "array" - }, - "numTotalDrainNatPorts": { - "description": "Output only. Total number of drain ports across all NAT IPs allocated to this\ninterface. It equals to the aggregated port number in the field\ndrain_nat_ip_port_ranges.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "numTotalNatPorts": { - "description": "Output only. Total number of ports across all NAT IPs allocated to this interface.\nIt equals to the aggregated port number in the field nat_ip_port_ranges.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "ruleMappings": { - "description": "Output only. Information about mappings provided by rules in this NAT.", - "items": { - "$ref": "VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings" - }, - "readOnly": true, - "type": "array" - }, - "sourceAliasIpRange": { - "description": "Output only. Alias IP range for this interface endpoint.\nIt will be a private (RFC 1918) IP range.\nExamples: \"10.33.4.55/32\", or \"192.168.5.0/24\".", - "readOnly": true, - "type": "string" - }, - "sourceVirtualIp": { - "description": "Output only. Primary IP of the VM for this NIC.", - "readOnly": true, - "type": "string" + "description": "Optional. A map of key-value pairs representing VM labels.\nVMs must have all of the labels specified in this map to be selected\n(logical AND).\n\ne.g. If the `inclusion_labels` are {(\"key1\", \"value1\"), (\"key2\",\n\"value2\")}, the VM labels must contain both (\"key1\", \"value1\") and\n(\"key2\", \"value2\") to be selected. If the VM labels are (\"key1\",\n\"value1\") and (\"something\", \"else\"), it will not be selected.\n\nIf the map is empty, it's considered a match.", + "type": "object" } }, "type": "object" }, - "VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings": { - "description": "Contains information of NAT Mappings provided by a NAT Rule.", - "id": "VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings", + "VmExtensionPolicyList": { + "id": "VmExtensionPolicyList", "properties": { - "drainNatIpPortRanges": { - "description": "Output only. List of all drain IP:port-range mappings assigned to this interface\nby this rule.\nThese ranges are inclusive, that is, both the first and the last\nports can be used for NAT. Example: [\"2.2.2.2:12345-12355\",\n\"1.1.1.1:2234-2234\"].", - "items": { - "type": "string" - }, + "etag": { + "description": "Output only. [Output Only] Fingerprint of this resource. A hash of the contents stored\nin this object. This field is used in optimistic locking. This field will\nbe ignored when inserting a VmExtensionPolicy. An up-to-date\nfingerprint must be provided in order to update the VmExtensionPolicy.\n\nTo see the latest value of the fingerprint, make a get() request to\nretrieve a VmExtensionPolicy.", "readOnly": true, - "type": "array" + "type": "string" }, - "natIpPortRanges": { - "description": "Output only. A list of all IP:port-range mappings assigned to this interface by this\nrule.\nThese ranges are inclusive, that is, both the first and the last\nports can be used for NAT. Example: [\"2.2.2.2:12345-12355\",\n\"1.1.1.1:2234-2234\"].", + "id": { + "description": "Output only. [Output Only] Unique identifier for the resource; defined by the server.", + "readOnly": true, + "type": "string" + }, + "items": { + "description": "Output only. [Output Only] A list of VM extension policy resources.", "items": { - "type": "string" + "$ref": "VmExtensionPolicy" }, "readOnly": true, "type": "array" }, - "numTotalDrainNatPorts": { - "description": "Output only. Total number of drain ports across all NAT IPs allocated to this\ninterface by this rule.\nIt equals the aggregated port number in the field\ndrain_nat_ip_port_ranges.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "numTotalNatPorts": { - "description": "Output only. Total number of ports across all NAT IPs allocated to this interface\nby this rule.\nIt equals the aggregated port number in the field nat_ip_port_ranges.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "ruleNumber": { - "description": "Output only. Rule number of the NAT Rule.", - "format": "int32", - "readOnly": true, - "type": "integer" - } - }, - "type": "object" - }, - "VmEndpointNatMappingsList": { - "description": "Contains a list of VmEndpointNatMappings.", - "id": "VmEndpointNatMappingsList", - "properties": { - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "type": "string" - }, "kind": { - "default": "compute#vmEndpointNatMappingsList", - "description": "Output only. [Output Only] Type of resource. Alwayscompute#vmEndpointNatMappingsList for lists of Nat mappings of\nVM endpoints.", + "default": "compute#vmExtensionPolicyList", + "description": "Output only. Type of resource.", "readOnly": true, "type": "string" }, "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "description": "Output only. [Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "readOnly": true, "type": "string" }, - "result": { - "description": "[Output Only] A list of Nat mapping information of VM endpoints.", - "items": { - "$ref": "VmEndpointNatMappings" - }, - "type": "array" - }, "selfLink": { "description": "Output only. [Output Only] Server-defined URL for this resource.", "readOnly": true, "type": "string" }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "Output only. [Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -99240,6 +108916,7 @@ "type": "string" } }, + "readOnly": true, "type": "object" } }, @@ -101578,6 +111255,7 @@ } }, "servicePath": "compute/v1/", + "serviceVersion": "v1", "title": "Compute Engine API", "version": "v1" } \ No newline at end of file diff --git a/discovery/config-v1.json b/discovery/config-v1.json index af27654b025..11f6cbc5e80 100644 --- a/discovery/config-v1.json +++ b/discovery/config-v1.json @@ -160,7 +160,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "config.projects.locations.list", @@ -169,7 +169,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -242,6 +242,333 @@ } }, "resources": { + "deploymentGroups": { + "methods": { + "create": { + "description": "Creates a DeploymentGroup The newly created DeploymentGroup will be in the `CREATING` state and can be retrieved via Get and List calls.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deploymentGroups", + "httpMethod": "POST", + "id": "config.projects.locations.deploymentGroups.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "deploymentGroupId": { + "description": "Required. The deployment group ID.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent in whose context the Deployment Group is created. The parent value is in the format: 'projects/{project_id}/locations/{location}'", + "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" + } + }, + "path": "v1/{+parent}/deploymentGroups", + "request": { + "$ref": "DeploymentGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a DeploymentGroup", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deploymentGroups/{deploymentGroupsId}", + "httpMethod": "DELETE", + "id": "config.projects.locations.deploymentGroups.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "deploymentReferencePolicy": { + "description": "Optional. Policy on how to handle referenced deployments when deleting the DeploymentGroup. If unspecified, the default behavior is to fail the deletion if any deployments currently referenced in the `deployment_units` of the DeploymentGroup or in the latest revision are not deleted.", + "enum": [ + "DEPLOYMENT_REFERENCE_POLICY_UNSPECIFIED", + "FAIL_IF_ANY_REFERENCES_EXIST", + "FAIL_IF_METADATA_REFERENCES_EXIST", + "IGNORE_DEPLOYMENT_REFERENCES" + ], + "enumDescriptions": [ + "The default behavior. If unspecified, the system will act as if `FAIL_IF_ANY_REFERENCES_EXIST` is specified.", + "Fail the deletion if any deployments currently referenced in the `deployment_units` of the DeploymentGroup or in the latest revision are not deleted.", + "Fail the deletion only if any deployments currently referenced in the `deployment_units` of the DeploymentGroup are not deleted. The deletion will proceed even if the deployments in the latest revision of the DeploymentGroup are not deleted.", + "Ignore any deployments currently referenced in the `deployment_units` of the DeploymentGroup or in the latest revision." + ], + "location": "query", + "type": "string" + }, + "force": { + "description": "Optional. If set to true, any revisions for this deployment group will also be deleted. (Otherwise, the request will only work if the deployment group has no revisions.)", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. The name of DeploymentGroup in the format projects/{project_id}/locations/{location_id}/deploymentGroups/{deploymentGroup}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/deploymentGroups/[^/]+$", + "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": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "deprovision": { + "description": "Deprovisions a deployment group. NOTE: As a first step of this operation, Infra Manager will automatically delete any Deployments that were part of the *last successful* DeploymentGroupRevision but are *no longer* included in the *current* DeploymentGroup definition (e.g., following an `UpdateDeploymentGroup` call), along with their actuated resources.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deploymentGroups/{deploymentGroupsId}:deprovision", + "httpMethod": "POST", + "id": "config.projects.locations.deploymentGroups.deprovision", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the deployment group to deprovision. Format: 'projects/{project_id}/locations/{location}/deploymentGroups/{deployment_group}'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/deploymentGroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:deprovision", + "request": { + "$ref": "DeprovisionDeploymentGroupRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Get a DeploymentGroup for a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deploymentGroups/{deploymentGroupsId}", + "httpMethod": "GET", + "id": "config.projects.locations.deploymentGroups.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the deployment group to retrieve. Format: 'projects/{project_id}/locations/{location}/deploymentGroups/{deployment_group}'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/deploymentGroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "DeploymentGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "List DeploymentGroups for a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deploymentGroups", + "httpMethod": "GET", + "id": "config.projects.locations.deploymentGroups.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Lists the DeploymentGroups that match the filter expression. A filter expression filters the deployment groups listed in the response. The expression must be of the form '{field} {operator} {value}' where operators: '<', '>', '<=', '>=', '!=', '=', ':' are supported (colon ':' represents a HAS operator which is roughly synonymous with equality). {field} can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = \"projects/foo/locations/us-central1/deploymentGroups/bar\" - Filter by labels: - Resources that have a key called 'foo' labels.foo:* - Resources that have a key called 'foo' whose value is 'bar' labels.foo = bar - Filter by state: - DeploymentGroups in CREATING state. state=CREATING", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Field to use to sort the list.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. When requesting a page of resources, 'page_size' specifies number of resources to return. If unspecified, at most 500 will be returned. The maximum value is 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Token returned by previous call to 'ListDeploymentGroups' which specifies the position in the list from where to continue listing the deployment groups.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent, which owns this collection of deployment groups. Format: 'projects/{project_id}/locations/{location}'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/deploymentGroups", + "response": { + "$ref": "ListDeploymentGroupsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a DeploymentGroup", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deploymentGroups/{deploymentGroupsId}", + "httpMethod": "PATCH", + "id": "config.projects.locations.deploymentGroups.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The name of the deployment group. Format: 'projects/{project_id}/locations/{location}/deploymentGroups/{deployment_group}'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/deploymentGroups/[^/]+$", + "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 used to specify the fields to be overwritten in the Deployment Group 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" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "DeploymentGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "provision": { + "description": "Provisions a deployment group. NOTE: As a first step of this operation, Infra Manager will automatically delete any Deployments that were part of the *last successful* DeploymentGroupRevision but are *no longer* included in the *current* DeploymentGroup definition (e.g., following an `UpdateDeploymentGroup` call), along with their actuated resources.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deploymentGroups/{deploymentGroupsId}:provision", + "httpMethod": "POST", + "id": "config.projects.locations.deploymentGroups.provision", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the deployment group to provision. Format: 'projects/{project_id}/locations/{location}/deploymentGroups/{deployment_group}'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/deploymentGroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:provision", + "request": { + "$ref": "ProvisionDeploymentGroupRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "revisions": { + "methods": { + "get": { + "description": "Gets details about a DeploymentGroupRevision.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deploymentGroups/{deploymentGroupsId}/revisions/{revisionsId}", + "httpMethod": "GET", + "id": "config.projects.locations.deploymentGroups.revisions.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the deployment group revision to retrieve. Format: 'projects/{project_id}/locations/{location}/deploymentGroups/{deployment_group}/revisions/{revision}'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/deploymentGroups/[^/]+/revisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "DeploymentGroupRevision" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists DeploymentGroupRevisions in a given DeploymentGroup.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deploymentGroups/{deploymentGroupsId}/revisions", + "httpMethod": "GET", + "id": "config.projects.locations.deploymentGroups.revisions.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. When requesting a page of resources, 'page_size' specifies number of resources to return. If unspecified, a sensible default will be used by the server. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Token returned by previous call to 'ListDeploymentGroupRevisions' which specifies the position in the list from where to continue listing the deployment group revisions. All other parameters provided to `ListDeploymentGroupRevisions` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent, which owns this collection of deployment group revisions. Format: 'projects/{project_id}/locations/{location}/deploymentGroups/{deployment_group}'.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/deploymentGroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/revisions", + "response": { + "$ref": "ListDeploymentGroupRevisionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, "deployments": { "methods": { "create": { @@ -1409,7 +1736,7 @@ } } }, - "revision": "20260128", + "revision": "20260422", "rootUrl": "https://config.googleapis.com/", "schemas": { "ApplyResults": { @@ -1738,12 +2065,149 @@ }, "type": "object" }, - "DeploymentOperationMetadata": { - "description": "Ephemeral metadata content describing the state of a deployment operation.", - "id": "DeploymentOperationMetadata", + "DeploymentGroup": { + "description": "A DeploymentGroup is a collection of DeploymentUnits that in a DAG-like structure.", + "id": "DeploymentGroup", "properties": { - "applyResults": { - "$ref": "ApplyResults", + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Arbitrary key-value metadata storage e.g. to help client tools identify deployment group during automation. See https://google.aip.dev/148#annotations for details on format and size limitations.", + "type": "object" + }, + "createTime": { + "description": "Output only. Time when the deployment group was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "deploymentUnits": { + "description": "The deployment units of the deployment group in a DAG like structure. When a deployment group is being provisioned, the deployment units are deployed in a DAG order. The provided units must be in a DAG order, otherwise an error will be returned.", + "items": { + "$ref": "DeploymentUnit" + }, + "type": "array" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. User-defined metadata for the deployment group.", + "type": "object" + }, + "name": { + "description": "Identifier. The name of the deployment group. Format: 'projects/{project_id}/locations/{location}/deploymentGroups/{deployment_group}'.", + "type": "string" + }, + "provisioningError": { + "$ref": "Status", + "description": "Output only. The error status of the deployment group provisioning or deprovisioning.", + "readOnly": true + }, + "provisioningState": { + "description": "Output only. The provisioning state of the deployment group.", + "enum": [ + "PROVISIONING_STATE_UNSPECIFIED", + "PROVISIONING", + "PROVISIONED", + "FAILED_TO_PROVISION", + "DEPROVISIONING", + "DEPROVISIONED", + "FAILED_TO_DEPROVISION" + ], + "enumDescriptions": [ + "Unspecified provisioning state.", + "The deployment group is being provisioned.", + "The deployment group is provisioned.", + "The deployment group failed to be provisioned.", + "The deployment group is being deprovisioned.", + "The deployment group is deprovisioned.", + "The deployment group failed to be deprovisioned." + ], + "readOnly": true, + "type": "string" + }, + "provisioningStateDescription": { + "description": "Output only. Additional information regarding the current provisioning state.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. Current state of the deployment group.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "ACTIVE", + "UPDATING", + "DELETING", + "FAILED", + "SUSPENDED", + "DELETED" + ], + "enumDescriptions": [ + "The default value. This value is used if the state is omitted.", + "The deployment group is being created.", + "The deployment group is healthy.", + "The deployment group is being updated.", + "The deployment group is being deleted.", + "The deployment group has encountered an unexpected error.", + "The deployment group is no longer being actively reconciled. This may be the result of recovering the project after deletion.", + "The deployment group has been deleted." + ], + "readOnly": true, + "type": "string" + }, + "stateDescription": { + "description": "Output only. Additional information regarding the current state.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Time when the deployment group was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "DeploymentGroupRevision": { + "description": "A DeploymentGroupRevision represents a snapshot of a DeploymentGroup at a given point in time, created when a DeploymentGroup is provisioned or deprovisioned.", + "id": "DeploymentGroupRevision", + "properties": { + "alternativeIds": { + "description": "Output only. The alternative IDs of the deployment group revision.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "createTime": { + "description": "Output only. Time when the deployment group revision was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The name of the deployment group revision. Format: 'projects/{project_id}/locations/{location}/deploymentGroups/{deployment_group}/revisions/{revision}'.", + "type": "string" + }, + "snapshot": { + "$ref": "DeploymentGroup", + "description": "Output only. The snapshot of the deployment group at this revision.", + "readOnly": true + } + }, + "type": "object" + }, + "DeploymentOperationMetadata": { + "description": "Ephemeral metadata content describing the state of a deployment operation.", + "id": "DeploymentOperationMetadata", + "properties": { + "applyResults": { + "$ref": "ApplyResults", "description": "Outputs and artifacts from applying a deployment." }, "build": { @@ -1793,6 +2257,227 @@ }, "type": "object" }, + "DeploymentOperationSummary": { + "description": "The summary of the deployment operation.", + "id": "DeploymentOperationSummary", + "properties": { + "artifacts": { + "description": "Output only. Location of Deployment operations artifacts in `gs://{bucket}/{object}` format.", + "readOnly": true, + "type": "string" + }, + "build": { + "description": "Output only. Cloud Build instance UUID associated with this operation.", + "readOnly": true, + "type": "string" + }, + "content": { + "description": "Output only. Location of Deployment operations content in `gs://{bucket}/{object}` format.", + "readOnly": true, + "type": "string" + }, + "deploymentStep": { + "description": "Output only. The current step the deployment operation is running.", + "enum": [ + "DEPLOYMENT_STEP_UNSPECIFIED", + "PREPARING_STORAGE_BUCKET", + "DOWNLOADING_BLUEPRINT", + "RUNNING_TF_INIT", + "RUNNING_TF_PLAN", + "RUNNING_TF_APPLY", + "RUNNING_TF_DESTROY", + "RUNNING_TF_VALIDATE", + "UNLOCKING_DEPLOYMENT", + "SUCCEEDED", + "FAILED", + "VALIDATING_REPOSITORY", + "RUNNING_QUOTA_VALIDATION" + ], + "enumDescriptions": [ + "Unspecified deployment step", + "Infra Manager is creating a Google Cloud Storage bucket to store artifacts and metadata about the deployment and revision", + "Downloading the blueprint onto the Google Cloud Storage bucket", + "Initializing Terraform using `terraform init`", + "Running `terraform plan`", + "Actuating resources using Terraform using `terraform apply`", + "Destroying resources using Terraform using `terraform destroy`", + "Validating the uploaded TF state file when unlocking a deployment", + "Unlocking a deployment", + "Operation was successful", + "Operation failed", + "Validating the provided repository.", + "Running quota validation" + ], + "readOnly": true, + "type": "string" + }, + "logs": { + "description": "Output only. Location of Deployment operations logs in `gs://{bucket}/{object}` format.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "DeploymentSource": { + "description": "Configuration for a value sourced from a Deployment.", + "id": "DeploymentSource", + "properties": { + "deployment": { + "description": "Required. The resource name of the source Deployment to import the output from. Format: projects/{project}/locations/{location}/deployments/{deployment} The source deployment must be in the same project and location.", + "type": "string" + }, + "outputName": { + "description": "Required. The name of the output variable in the source deployment's latest successfully applied revision.", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentSpec": { + "description": "Spec for a deployment to be created.", + "id": "DeploymentSpec", + "properties": { + "deployment": { + "$ref": "Deployment", + "description": "Required. The deployment to be created." + }, + "deploymentId": { + "description": "Required. The id of the deployment to be created which doesn't include the project id and location.", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentUnit": { + "description": "A DeploymentUnit is a container for a deployment and its dependencies. An existing deployment can be provided directly in the unit, or the unit can act as a placeholder to define the DAG, with the deployment specs supplied in a `provisionDeploymentRequest`.", + "id": "DeploymentUnit", + "properties": { + "dependencies": { + "description": "Required. The IDs of the deployment units within the deployment group that this unit depends on.", + "items": { + "type": "string" + }, + "type": "array" + }, + "deployment": { + "description": "Optional. The name of the deployment to be provisioned. Format: 'projects/{project_id}/locations/{location}/deployments/{deployment}'.", + "type": "string" + }, + "id": { + "description": "The id of the deployment unit. Must be unique within the deployment group.", + "type": "string" + } + }, + "type": "object" + }, + "DeploymentUnitProgress": { + "description": "The progress of a deployment unit provisioning or deprovisioning.", + "id": "DeploymentUnitProgress", + "properties": { + "deployment": { + "description": "Output only. The name of the deployment to be provisioned. Format: 'projects/{project}/locations/{location}/deployments/{deployment}'.", + "readOnly": true, + "type": "string" + }, + "deploymentOperationSummary": { + "$ref": "DeploymentOperationSummary", + "description": "Output only. The summary of the deployment operation.", + "readOnly": true + }, + "error": { + "$ref": "Status", + "description": "Output only. Holds the error status of the deployment unit provisioning.", + "readOnly": true + }, + "intent": { + "description": "Output only. The intent of the deployment unit.", + "enum": [ + "INTENT_UNSPECIFIED", + "CREATE_DEPLOYMENT", + "UPDATE_DEPLOYMENT", + "DELETE_DEPLOYMENT", + "RECREATE_DEPLOYMENT", + "CLEAN_UP", + "UNCHANGED" + ], + "enumDescriptions": [ + "Unspecified intent.", + "Create deployment in the unit from the deployment spec.", + "Update deployment in the unit.", + "Delete deployment in the unit.", + "Recreate deployment in the unit.", + "Delete deployment in latest successful revision while no longer referenced in any deployment unit in the current deployment group.", + "Expected to be unchanged." + ], + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The current step of the deployment unit provisioning.", + "enum": [ + "STATE_UNSPECIFIED", + "QUEUED", + "APPLYING_DEPLOYMENT", + "SUCCEEDED", + "FAILED", + "ABORTED", + "SKIPPED", + "DELETING_DEPLOYMENT", + "PREVIEWING_DEPLOYMENT" + ], + "enumDescriptions": [ + "The default value. This value is unused.", + "The deployment unit is queued for deployment creation or update.", + "The underlying deployment of the unit is being created or updated.", + "The underlying deployment operation of the unit has succeeded.", + "The underlying deployment operation of the unit has failed.", + "The deployment unit was aborted, likely due to failures in other dependent deployment units.", + "The deployment unit was skipped because there were no changes to apply.", + "The deployment is being deleted.", + "The deployment is being previewed." + ], + "readOnly": true, + "type": "string" + }, + "stateDescription": { + "description": "Output only. Additional information regarding the current state.", + "readOnly": true, + "type": "string" + }, + "unitId": { + "description": "Output only. The unit id of the deployment unit to be provisioned.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "DeprovisionDeploymentGroupRequest": { + "description": "The request message for the DeprovisionDeploymentGroup method.", + "id": "DeprovisionDeploymentGroupRequest", + "properties": { + "deletePolicy": { + "description": "Optional. Policy on how resources within each deployment should be handled during deletion. This policy is applied globally to the deletion of all deployments in this group. This corresponds to the 'delete_policy' field in DeleteDeploymentRequest.", + "enum": [ + "DELETE_POLICY_UNSPECIFIED", + "DELETE", + "ABANDON" + ], + "enumDescriptions": [ + "Unspecified policy, resources will be deleted.", + "Deletes resources actuated by the deployment.", + "Abandons resources and only deletes the deployment and its metadata." + ], + "type": "string" + }, + "force": { + "description": "Optional. If set to true, this option is propagated to the deletion of each deployment in the group. This corresponds to the 'force' field in DeleteDeploymentRequest.", + "type": "boolean" + } + }, + "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", @@ -1857,6 +2542,17 @@ }, "type": "object" }, + "ExternalValueSource": { + "description": "Configuration for a source of an external value.", + "id": "ExternalValueSource", + "properties": { + "deploymentSource": { + "$ref": "DeploymentSource", + "description": "A source from a Deployment." + } + }, + "type": "object" + }, "GitSource": { "description": "A set of files in a Git repository.", "id": "GitSource", @@ -1888,6 +2584,56 @@ }, "type": "object" }, + "ListDeploymentGroupRevisionsResponse": { + "description": "The response message for the ListDeploymentGroupRevisions method.", + "id": "ListDeploymentGroupRevisionsResponse", + "properties": { + "deploymentGroupRevisions": { + "description": "The deployment group revisions from the specified collection.", + "items": { + "$ref": "DeploymentGroupRevision" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to be supplied to the next ListDeploymentGroupRevisions request via `page_token` to obtain the next set of results.", + "type": "string" + }, + "unreachable": { + "description": "Unordered list. Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListDeploymentGroupsResponse": { + "description": "The response message for the ListDeploymentGroups method.", + "id": "ListDeploymentGroupsResponse", + "properties": { + "deploymentGroups": { + "description": "The deployment groups from the specified collection.", + "items": { + "$ref": "DeploymentGroup" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to be supplied to the next ListDeploymentGroups request via `page_token` to obtain the next set of results.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListDeploymentsResponse": { "id": "ListDeploymentsResponse", "properties": { @@ -2244,6 +2990,11 @@ "description": "Output only. Metadata about the preview operation state.", "readOnly": true }, + "provisionDeploymentGroupMetadata": { + "$ref": "ProvisionDeploymentGroupOperationMetadata", + "description": "Output only. Metadata about ProvisionDeploymentGroup operation state.", + "readOnly": true + }, "requestedCancellation": { "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.", "readOnly": true, @@ -2639,6 +3390,60 @@ }, "type": "object" }, + "ProvisionDeploymentGroupOperationMetadata": { + "description": "Operation metadata for `ProvisionDeploymentGroup` and `DeprovisionDeploymentGroup` long-running operations.", + "id": "ProvisionDeploymentGroupOperationMetadata", + "properties": { + "deploymentUnitProgresses": { + "description": "Output only. Progress information for each deployment unit within the operation.", + "items": { + "$ref": "DeploymentUnitProgress" + }, + "readOnly": true, + "type": "array" + }, + "step": { + "description": "Output only. The current step of the deployment group operation.", + "enum": [ + "PROVISION_DEPLOYMENT_GROUP_STEP_UNSPECIFIED", + "VALIDATING_DEPLOYMENT_GROUP", + "ASSOCIATING_DEPLOYMENTS_TO_DEPLOYMENT_GROUP", + "PROVISIONING_DEPLOYMENT_UNITS", + "DISASSOCIATING_DEPLOYMENTS_FROM_DEPLOYMENT_GROUP", + "SUCCEEDED", + "FAILED", + "DEPROVISIONING_DEPLOYMENT_UNITS" + ], + "enumDescriptions": [ + "Unspecified step.", + "Validating the deployment group.", + "Locking the deployments to the deployment group for atomic actuation.", + "Provisioning the deployment units.", + "Unlocking the deployments from the deployment group after actuation.", + "The operation has succeeded.", + "The operation has failed.", + "Deprovisioning the deployment units." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ProvisionDeploymentGroupRequest": { + "description": "The request message for the ProvisionDeploymentGroup method.", + "id": "ProvisionDeploymentGroupRequest", + "properties": { + "deploymentSpecs": { + "additionalProperties": { + "$ref": "DeploymentSpec" + }, + "description": "Optional. The deployment specs of the deployment units to be created within the same project and location of the deployment group. The key is the unit ID, and the value is the `DeploymentSpec`. Provisioning will fail if a `deployment_spec` has a `deployment_id` that matches an existing deployment in the same project and location. If an existing deployment was part of the last successful revision but is no longer in the current DeploymentGroup's `deployment_units`, it will be recreated if included in `deployment_specs`.", + "type": "object" + } + }, + "type": "object" + }, "Resource": { "description": "Resource represents a Google Cloud Platform resource actuated by IM. Resources are child resources of Revisions.", "id": "Resource", @@ -3089,6 +3894,13 @@ "description": "TerraformBlueprint describes the source of a Terraform root module which describes the resources and configs to be deployed.", "id": "TerraformBlueprint", "properties": { + "externalValues": { + "additionalProperties": { + "$ref": "ExternalValueSource" + }, + "description": "Optional. Map of input variable names in this blueprint to configurations for importing values from external sources.", + "type": "object" + }, "gcsSource": { "description": "URI of an object in Google Cloud Storage. Format: `gs://{bucket}/{object}` URI may also specify an object version for zipped objects. Format: `gs://{bucket}/{object}#{version}`", "type": "string" diff --git a/discovery/connectors-v1.json b/discovery/connectors-v1.json index c6f3ccca24d..48fa9138259 100644 --- a/discovery/connectors-v1.json +++ b/discovery/connectors-v1.json @@ -185,7 +185,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "connectors.projects.locations.list", @@ -194,7 +194,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -332,6 +332,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "fetchToolspecOverride": { + "description": "Fetches Toolspec Override for a connection for the given list of tools. Returns results from the db if the tool is already present.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:fetchToolspecOverride", + "httpMethod": "POST", + "id": "connectors.projects.locations.connections.fetchToolspecOverride", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:fetchToolspecOverride", + "request": { + "$ref": "FetchConnectionToolspecOverrideRequest" + }, + "response": { + "$ref": "FetchConnectionToolspecOverrideResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "generateToolspecOverride": { "description": "Generates Toolspec Override for a connection for the given list of entityTypes and operations. Returns results from the db if the entityType and operation are already present.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:generateToolspecOverride", @@ -2846,9 +2874,47 @@ } } }, - "revision": "20260128", + "revision": "20260427", "rootUrl": "https://connectors.googleapis.com/", "schemas": { + "AdminFilters": { + "description": "* AdminFilters defines a set of filters that can be applied to a connection. These are currently used by Gemini Enterprise connections.", + "id": "AdminFilters", + "properties": { + "filterKey": { + "description": "Required. Unique name for the filter, e.g., \"SharePointSiteURL\", \"DocumentType\", \"ChatSpaceName\".", + "type": "string" + }, + "filterType": { + "description": "Required. Type of the filter.", + "enum": [ + "FILTER_TYPE_UNSPECIFIED", + "INCLUSION", + "EXCLUSION" + ], + "enumDescriptions": [ + "Filter type is not specified.", + "Only allow items matching the configured values.", + "Disallow items matching the configured values." + ], + "type": "string" + }, + "intValue": { + "description": "Optional. A single integer value.", + "format": "int64", + "type": "string" + }, + "stringListValues": { + "$ref": "StringListValues", + "description": "Optional. List of string values." + }, + "stringValue": { + "description": "Optional. A single string value.", + "type": "string" + } + }, + "type": "object" + }, "AuditConfig": { "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.", "id": "AuditConfig", @@ -3232,15 +3298,15 @@ "id": "ConfigVariable", "properties": { "boolValue": { - "description": "Value is a bool.", + "description": "Optional. Value is a bool.", "type": "boolean" }, "encryptionKeyValue": { "$ref": "EncryptionKey", - "description": "Value is a Encryption Key." + "description": "Optional. Value is a Encryption Key." }, "intValue": { - "description": "Value is an integer", + "description": "Optional. Value is an integer", "format": "int64", "type": "string" }, @@ -3250,10 +3316,10 @@ }, "secretValue": { "$ref": "Secret", - "description": "Value is a secret." + "description": "Optional. Value is a secret." }, "stringValue": { - "description": "Value is a string.", + "description": "Optional. Value is a string.", "type": "string" } }, @@ -3388,6 +3454,13 @@ "description": "Connection represents an instance of connector.", "id": "Connection", "properties": { + "adminFilters": { + "description": "Optional. Admin filters for the connection. These are used by Gemini Enterprise.", + "items": { + "$ref": "AdminFilters" + }, + "type": "array" + }, "asyncOperationsEnabled": { "description": "Optional. Async operations enabled for the connection. If Async Operations is enabled, Connection allows the customers to initiate async long running operations using the actions API.", "type": "boolean" @@ -4513,7 +4586,7 @@ "type": "string" }, "port": { - "description": "The port is the target port number that is accepted by the destination.", + "description": "Optional. The port is the target port number that is accepted by the destination.", "format": "int32", "type": "integer" }, @@ -4530,14 +4603,14 @@ "id": "DestinationConfig", "properties": { "destinations": { - "description": "The destinations for the key.", + "description": "Optional. The destinations for the key.", "items": { "$ref": "Destination" }, "type": "array" }, "key": { - "description": "The key is the destination identifier that is supported by the Connector.", + "description": "Optional. The key is the destination identifier that is supported by the Connector.", "type": "string" } }, @@ -4720,7 +4793,7 @@ "type": "string" }, "type": { - "description": "Type.", + "description": "Optional. Specifies the type of the encryption key.", "enum": [ "TYPE_UNSPECIFIED", "GOOGLE_MANAGED", @@ -5288,6 +5361,10 @@ "description": "Optional. Event type id of the event of current EventSubscription.", "type": "string" }, + "filter": { + "description": "Optional. Filter for the event subscription. Incoming events are filtered based on the filter expression.", + "type": "string" + }, "jms": { "$ref": "JMS", "description": "Optional. JMS is the source for the event listener." @@ -5442,7 +5519,7 @@ "type": "object" }, "EventingConfig": { - "description": "Eventing Configuration of a connection next: 19", + "description": "Eventing Configuration of a connection next: 21", "id": "EventingConfig", "properties": { "additionalVariables": { @@ -5452,6 +5529,13 @@ }, "type": "array" }, + "allowedEventTypes": { + "description": "Optional. List of allowed event types for the connection.", + "items": { + "type": "string" + }, + "type": "array" + }, "authConfig": { "$ref": "AuthConfig", "description": "Optional. Auth details for the webhook adapter." @@ -5469,7 +5553,12 @@ "type": "boolean" }, "eventsListenerIngressEndpoint": { - "description": "Optional. Ingress endpoint of the event listener. This is used only when private connectivity is enabled.", + "description": "Output only. Ingress endpoint of the event listener. This is used only when private connectivity is enabled.", + "readOnly": true, + "type": "string" + }, + "globalEventFilter": { + "description": "Optional. Filter to be applied on the events to be received by the connection.", "type": "string" }, "listenerAuthConfig": { @@ -5641,6 +5730,20 @@ "readOnly": true, "type": "array" }, + "subscriptionType": { + "description": "The webhook model supported by this connector.", + "enum": [ + "SUBSCRIPTION_TYPE_UNSPECIFIED", + "SHARED", + "USER_SPECIFIC" + ], + "enumDescriptions": [ + "Default value.", + "Managed via admin credentials. Handles global or system-wide events.", + "Managed via individual user credentials. Isolates data per user." + ], + "type": "string" + }, "type": { "description": "Output only. The type of the event listener for a specific connector.", "enum": [ @@ -5794,6 +5897,31 @@ }, "type": "object" }, + "FetchConnectionToolspecOverrideRequest": { + "description": "Request message for FetchConnectionToolspecOverride API.", + "id": "FetchConnectionToolspecOverrideRequest", + "properties": { + "toolNames": { + "description": "Required. List of tools for which the tool spec override is to be generated.", + "items": { + "$ref": "ToolName" + }, + "type": "array" + } + }, + "type": "object" + }, + "FetchConnectionToolspecOverrideResponse": { + "description": "Response message for FetchConnectionToolspecOverride API.", + "id": "FetchConnectionToolspecOverrideResponse", + "properties": { + "toolspecOverride": { + "$ref": "ToolspecOverride", + "description": "Toolspec overrides for the connection." + } + }, + "type": "object" + }, "Field": { "description": "Metadata of an entity field.", "id": "Field", @@ -6425,6 +6553,29 @@ "description": "JsonSchema representation of schema metadata", "id": "JsonSchema", "properties": { + "$comment": { + "description": "A comment on the schema.", + "type": "string" + }, + "$defs": { + "additionalProperties": { + "$ref": "JsonSchema" + }, + "description": "Definitions for the schema.", + "type": "object" + }, + "$id": { + "description": "The URI defining the core schema meta-schema.", + "type": "string" + }, + "$ref": { + "description": "A reference to another schema.", + "type": "string" + }, + "$schema": { + "description": "The URI defining the schema.", + "type": "string" + }, "additionalDetails": { "additionalProperties": { "description": "Properties of the object.", @@ -6433,14 +6584,70 @@ "description": "Additional details apart from standard json schema fields, this gives flexibility to store metadata about the schema", "type": "object" }, + "additionalItems": { + "$ref": "JsonSchema", + "description": "Schema for additional items." + }, + "additionalProperties": { + "$ref": "JsonSchema", + "description": "Schema for additional properties." + }, + "allOf": { + "description": "Schema that must be valid against all of the sub-schemas.", + "items": { + "$ref": "JsonSchema" + }, + "type": "array" + }, + "anyOf": { + "description": "Schema that must be valid against at least one of the sub-schemas.", + "items": { + "$ref": "JsonSchema" + }, + "type": "array" + }, + "const": { + "description": "Const value that the data must match.", + "type": "any" + }, + "contains": { + "$ref": "JsonSchema", + "description": "Schema that applies to at least one item in an array." + }, + "contentEncoding": { + "description": "Encoding of the content.", + "type": "string" + }, + "contentMediaType": { + "description": "Media type of the content.", + "type": "string" + }, "default": { "description": "The default value of the field or object described by this schema.", "type": "any" }, + "definitions": { + "additionalProperties": { + "$ref": "JsonSchema" + }, + "description": "Definitions for the schema.", + "type": "object" + }, + "dependencies": { + "additionalProperties": { + "type": "any" + }, + "description": "Dependencies for the schema.", + "type": "object" + }, "description": { "description": "A description of this schema.", "type": "string" }, + "else": { + "$ref": "JsonSchema", + "description": "Schema that must be valid if the \"if\" schema is invalid." + }, "enum": { "description": "Possible values for an enumeration. This works in conjunction with `type` to represent types with a fixed set of legal values", "items": { @@ -6448,10 +6655,29 @@ }, "type": "array" }, + "examples": { + "description": "Examples of the value.", + "items": { + "type": "any" + }, + "type": "array" + }, + "exclusiveMaximum": { + "description": "Whether the maximum number value is exclusive.", + "type": "any" + }, + "exclusiveMinimum": { + "description": "Whether the minimum number value is exclusive.", + "type": "any" + }, "format": { "description": "Format of the value as per https://json-schema.org/understanding-json-schema/reference/string.html#format", "type": "string" }, + "if": { + "$ref": "JsonSchema", + "description": "Schema that must be valid if the \"if\" schema is valid." + }, "items": { "$ref": "JsonSchema", "description": "Schema that applies to array values, applicable only if this is of type `array`." @@ -6601,6 +6827,71 @@ ], "type": "string" }, + "maxItems": { + "description": "Maximum number of items in the array field.", + "format": "int32", + "type": "integer" + }, + "maxLength": { + "description": "Maximum length of the string field.", + "format": "int32", + "type": "integer" + }, + "maxProperties": { + "description": "Maximum number of properties.", + "format": "int32", + "type": "integer" + }, + "maximum": { + "description": "Maximum value of the number field.", + "type": "any" + }, + "minItems": { + "description": "Minimum number of items in the array field.", + "format": "int32", + "type": "integer" + }, + "minLength": { + "description": "Minimum length of the string field.", + "format": "int32", + "type": "integer" + }, + "minProperties": { + "description": "Minimum number of properties.", + "format": "int32", + "type": "integer" + }, + "minimum": { + "description": "Minimum value of the number field.", + "type": "any" + }, + "multipleOf": { + "description": "Number must be a multiple of this value.", + "format": "double", + "type": "number" + }, + "not": { + "$ref": "JsonSchema", + "description": "Schema that must not be valid." + }, + "oneOf": { + "description": "Schema that must be valid against at least one of the sub-schemas.", + "items": { + "$ref": "JsonSchema" + }, + "type": "array" + }, + "pattern": { + "description": "Regex pattern of the string field. This is a string value that describes the regular expression that the string value should match.", + "type": "string" + }, + "patternProperties": { + "additionalProperties": { + "$ref": "JsonSchema" + }, + "description": "Pattern properties for the schema.", + "type": "object" + }, "properties": { "additionalProperties": { "$ref": "JsonSchema" @@ -6608,6 +6899,14 @@ "description": "The child schemas, applicable only if this is of type `object`. The key is the name of the property and the value is the json schema that describes that property", "type": "object" }, + "propertyNames": { + "$ref": "JsonSchema", + "description": "Schema for property names." + }, + "readOnly": { + "description": "Whether the value is read-only.", + "type": "boolean" + }, "required": { "description": "Whether this property is required.", "items": { @@ -6615,12 +6914,28 @@ }, "type": "array" }, + "then": { + "$ref": "JsonSchema", + "description": "Schema that must be valid if the \"if\" schema is valid." + }, + "title": { + "description": "A title of the schema.", + "type": "string" + }, "type": { "description": "JSON Schema Validation: A Vocabulary for Structural Validation of JSON", "items": { "type": "string" }, "type": "array" + }, + "uniqueItems": { + "description": "Whether the items in the array field are unique.", + "type": "boolean" + }, + "writeOnly": { + "description": "Whether the value is write-only.", + "type": "boolean" } }, "type": "object" @@ -8000,6 +8315,10 @@ "description": "Regional Settings details.", "id": "RegionalSettings", "properties": { + "client": { + "description": "Optional. Client type for the regional settings.", + "type": "string" + }, "encryptionConfig": { "$ref": "EncryptionConfig", "description": "Optional. Regional encryption config to hold CMEK details." @@ -8935,6 +9254,20 @@ }, "type": "object" }, + "StringListValues": { + "description": "StringListValues is a message to store a list of string values.", + "id": "StringListValues", + "properties": { + "listValues": { + "description": "Required. The list of string values.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "SupportedRuntimeFeatures": { "description": "Supported runtime features of a connector version.", "id": "SupportedRuntimeFeatures", @@ -9052,6 +9385,10 @@ "description": "Toolspec overrides for a connection only holds the information that is to be displayed in the UI for admins.", "id": "ToolspecOverride", "properties": { + "baseVersion": { + "description": "Required. Represents the base version of the toolspec for which admin has added overrides.", + "type": "string" + }, "createTime": { "description": "Output only. Created time.", "format": "google-datetime", @@ -9083,7 +9420,7 @@ "id": "TrafficShapingConfig", "properties": { "duration": { - "description": "Required. * The duration over which the API call quota limits are calculated. This duration is used to define the time window for evaluating if the number of API calls made by a user is within the allowed quota limits. For example: - To define a quota sampled over 16 seconds, set `seconds` to 16 - To define a quota sampled over 5 minutes, set `seconds` to 300 (5 * 60) - To define a quota sampled over 1 day, set `seconds` to 86400 (24 * 60 * 60) and so on. It is important to note that this duration is not the time the quota is valid for, but rather the time window over which the quota is evaluated. For example, if the quota is 100 calls per 10 seconds, then this duration field would be set to 10 seconds.", + "description": "Required. Specifies the duration over which the API call quota limits are calculated. This duration is used to define the time window for evaluating if the number of API calls made by a user is within the allowed quota limits. For example: - To define a quota sampled over 16 seconds, set `seconds` to 16 - To define a quota sampled over 5 minutes, set `seconds` to 300 (5 * 60) - To define a quota sampled over 1 day, set `seconds` to 86400 (24 * 60 * 60) and so on. It is important to note that this duration is not the time the quota is valid for, but rather the time window over which the quota is evaluated. For example, if the quota is 100 calls per 10 seconds, then this duration field would be set to 10 seconds.", "format": "google-duration", "type": "string" }, @@ -9226,6 +9563,22 @@ "readOnly": true, "type": "string" }, + "eventSubscriptions": { + "description": "Output only. List of event subscriptions which are using the webhook.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "eventTypes": { + "description": "Output only. List of event types for the webhook. This is the event types subscribed by the current webhook.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "id": { "description": "Output only. ID to uniquely identify webhook.", "readOnly": true, diff --git a/discovery/connectors-v2.json b/discovery/connectors-v2.json index c7b2d1b1de9..405a76c5460 100644 --- a/discovery/connectors-v2.json +++ b/discovery/connectors-v2.json @@ -854,7 +854,7 @@ "name": { "description": "Required. Resource name of the Resource. Format: projects/{project}/locations/{location}/connections/{connection}/resources/{resource}", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/resources/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/resources/.*$", "required": true, "type": "string" } @@ -879,7 +879,7 @@ "name": { "description": "Required. Resource name of the Resource. Format: projects/{project}/locations/{location}/connections/{connection}/resources/{resource}", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/resources/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/resources/.*$", "required": true, "type": "string" } @@ -1018,7 +1018,7 @@ } } }, - "revision": "20260128", + "revision": "20260427", "rootUrl": "https://connectors.googleapis.com/", "schemas": { "AccessCredentials": { @@ -1466,6 +1466,14 @@ "description": "Response message for ConnectorAgentService.ExecuteTool", "id": "ExecuteToolResponse", "properties": { + "_meta": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Metadata for the tool execution result.", + "type": "object" + }, "metadata": { "additionalProperties": { "additionalProperties": { @@ -1727,6 +1735,14 @@ "GetResourceResponse": { "id": "GetResourceResponse", "properties": { + "_meta": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Metadata for the resource.", + "type": "object" + }, "data": { "description": "The content of the resource.", "format": "byte", @@ -2061,6 +2077,29 @@ "description": "JsonSchema representation of schema metadata", "id": "JsonSchema", "properties": { + "$comment": { + "description": "A comment on the schema.", + "type": "string" + }, + "$defs": { + "additionalProperties": { + "$ref": "JsonSchema" + }, + "description": "Definitions for the schema.", + "type": "object" + }, + "$id": { + "description": "The URI defining the core schema meta-schema.", + "type": "string" + }, + "$ref": { + "description": "A reference to another schema.", + "type": "string" + }, + "$schema": { + "description": "The URI defining the schema.", + "type": "string" + }, "additionalDetails": { "additionalProperties": { "description": "Properties of the object.", @@ -2069,14 +2108,70 @@ "description": "Additional details apart from standard json schema fields, this gives flexibility to store metadata about the schema", "type": "object" }, + "additionalItems": { + "$ref": "JsonSchema", + "description": "Schema for additional items." + }, + "additionalProperties": { + "$ref": "JsonSchema", + "description": "Schema for additional properties." + }, + "allOf": { + "description": "Schema that must be valid against all of the sub-schemas.", + "items": { + "$ref": "JsonSchema" + }, + "type": "array" + }, + "anyOf": { + "description": "Schema that must be valid against at least one of the sub-schemas.", + "items": { + "$ref": "JsonSchema" + }, + "type": "array" + }, + "const": { + "description": "Const value that the data must match.", + "type": "any" + }, + "contains": { + "$ref": "JsonSchema", + "description": "Schema that applies to at least one item in an array." + }, + "contentEncoding": { + "description": "Encoding of the content.", + "type": "string" + }, + "contentMediaType": { + "description": "Media type of the content.", + "type": "string" + }, "default": { "description": "The default value of the field or object described by this schema.", "type": "any" }, + "definitions": { + "additionalProperties": { + "$ref": "JsonSchema" + }, + "description": "Definitions for the schema.", + "type": "object" + }, + "dependencies": { + "additionalProperties": { + "type": "any" + }, + "description": "Dependencies for the schema.", + "type": "object" + }, "description": { "description": "A description of this schema.", "type": "string" }, + "else": { + "$ref": "JsonSchema", + "description": "Schema that must be valid if the \"if\" schema is invalid." + }, "enum": { "description": "Possible values for an enumeration. This works in conjunction with `type` to represent types with a fixed set of legal values", "items": { @@ -2084,10 +2179,29 @@ }, "type": "array" }, + "examples": { + "description": "Examples of the value.", + "items": { + "type": "any" + }, + "type": "array" + }, + "exclusiveMaximum": { + "description": "Whether the maximum number value is exclusive.", + "type": "any" + }, + "exclusiveMinimum": { + "description": "Whether the minimum number value is exclusive.", + "type": "any" + }, "format": { "description": "Format of the value as per https://json-schema.org/understanding-json-schema/reference/string.html#format", "type": "string" }, + "if": { + "$ref": "JsonSchema", + "description": "Schema that must be valid if the \"if\" schema is valid." + }, "items": { "$ref": "JsonSchema", "description": "Schema that applies to array values, applicable only if this is of type `array`." @@ -2237,6 +2351,71 @@ ], "type": "string" }, + "maxItems": { + "description": "Maximum number of items in the array field.", + "format": "int32", + "type": "integer" + }, + "maxLength": { + "description": "Maximum length of the string field.", + "format": "int32", + "type": "integer" + }, + "maxProperties": { + "description": "Maximum number of properties.", + "format": "int32", + "type": "integer" + }, + "maximum": { + "description": "Maximum value of the number field.", + "type": "any" + }, + "minItems": { + "description": "Minimum number of items in the array field.", + "format": "int32", + "type": "integer" + }, + "minLength": { + "description": "Minimum length of the string field.", + "format": "int32", + "type": "integer" + }, + "minProperties": { + "description": "Minimum number of properties.", + "format": "int32", + "type": "integer" + }, + "minimum": { + "description": "Minimum value of the number field.", + "type": "any" + }, + "multipleOf": { + "description": "Number must be a multiple of this value.", + "format": "double", + "type": "number" + }, + "not": { + "$ref": "JsonSchema", + "description": "Schema that must not be valid." + }, + "oneOf": { + "description": "Schema that must be valid against at least one of the sub-schemas.", + "items": { + "$ref": "JsonSchema" + }, + "type": "array" + }, + "pattern": { + "description": "Regex pattern of the string field. This is a string value that describes the regular expression that the string value should match.", + "type": "string" + }, + "patternProperties": { + "additionalProperties": { + "$ref": "JsonSchema" + }, + "description": "Pattern properties for the schema.", + "type": "object" + }, "properties": { "additionalProperties": { "$ref": "JsonSchema" @@ -2244,6 +2423,14 @@ "description": "The child schemas, applicable only if this is of type `object`. The key is the name of the property and the value is the json schema that describes that property", "type": "object" }, + "propertyNames": { + "$ref": "JsonSchema", + "description": "Schema for property names." + }, + "readOnly": { + "description": "Whether the value is read-only.", + "type": "boolean" + }, "required": { "description": "Whether this property is required.", "items": { @@ -2251,12 +2438,28 @@ }, "type": "array" }, + "then": { + "$ref": "JsonSchema", + "description": "Schema that must be valid if the \"if\" schema is valid." + }, + "title": { + "description": "A title of the schema.", + "type": "string" + }, "type": { "description": "JSON Schema Validation: A Vocabulary for Structural Validation of JSON", "items": { "type": "string" }, "type": "array" + }, + "uniqueItems": { + "description": "Whether the items in the array field are unique.", + "type": "boolean" + }, + "writeOnly": { + "description": "Whether the value is write-only.", + "type": "boolean" } }, "type": "object" @@ -2420,6 +2623,13 @@ "description": "Page token.", "type": "string" }, + "toolNames": { + "description": "List of tool names to for selective tool fetching.", + "items": { + "type": "string" + }, + "type": "array" + }, "toolSpec": { "$ref": "ToolSpec", "description": "List of tool specifications." @@ -2893,6 +3103,14 @@ "Resource": { "id": "Resource", "properties": { + "_meta": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Metadata for the resource.", + "type": "object" + }, "description": { "description": "A description of what this resource represents.", "type": "string" @@ -3197,6 +3415,14 @@ "description": "Message representing a single tool.", "id": "Tool", "properties": { + "_meta": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Metadata for the tool.", + "type": "object" + }, "annotations": { "$ref": "ToolAnnotations", "description": "Annotations for the tool." diff --git a/discovery/contactcenteraiplatform-v1alpha1.json b/discovery/contactcenteraiplatform-v1alpha1.json index 92344553581..dc24973bf91 100644 --- a/discovery/contactcenteraiplatform-v1alpha1.json +++ b/discovery/contactcenteraiplatform-v1alpha1.json @@ -163,7 +163,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "contactcenteraiplatform.projects.locations.list", @@ -172,7 +172,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -551,7 +551,7 @@ } } }, - "revision": "20260129", + "revision": "20260423", "rootUrl": "https://contactcenteraiplatform.googleapis.com/", "schemas": { "AdminUser": { @@ -710,7 +710,8 @@ "STATE_IN_GRACE_PERIOD", "STATE_FAILING_OVER", "STATE_DEGRADED", - "STATE_REPAIRING" + "STATE_REPAIRING", + "STATE_EXPIRING" ], "enumDescriptions": [ "The default value. This value is used if the state is omitted.", @@ -723,7 +724,8 @@ "State IN_GRACE_PERIOD", "State in STATE_FAILING_OVER. This State must ONLY be used by Multiregional Instances when a failover was triggered. Customers are not able to update instances in this state.", "State DEGRADED. This State must ONLY be used by Multiregional Instances after a failover was executed successfully. Customers are not able to update instances in this state.", - "State REPAIRING. This State must ONLY be used by Multiregional Instances after a fallback was triggered. Customers are not able to update instancs in this state." + "State REPAIRING. This State must ONLY be used by Multiregional Instances after a fallback was triggered. Customers are not able to update instancs in this state.", + "Flagged by an automation as soon to be expired." ], "readOnly": true, "type": "string" diff --git a/discovery/contactcenterinsights-v1.json b/discovery/contactcenterinsights-v1.json index dffca027ef8..0ff35fef156 100644 --- a/discovery/contactcenterinsights-v1.json +++ b/discovery/contactcenterinsights-v1.json @@ -193,6 +193,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "diagnoseConversations": { + "description": "Analyzes conversation data using specialized agentic workflows, such as ReAct, to diagnose issues and provide insights.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:diagnoseConversations", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.diagnoseConversations", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource where the analysis will be performed.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}:diagnoseConversations", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1DiagnoseConversationsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "generativeInsights": { "description": "Natural language based Insights which powers the next generation of dashboards in Insights. Next generation of QueryMetrics.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:generativeInsights", @@ -4479,6 +4507,101 @@ } } }, + "diagnostics": { + "methods": { + "delete": { + "description": "Deletes a diagnostic.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/diagnostics/{diagnosticsId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.diagnostics.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the diagnostic to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/diagnostics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a diagnostic.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/diagnostics/{diagnosticsId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.diagnostics.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the diagnostic to retrieve.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/diagnostics/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1Diagnostic" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists diagnostics.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/diagnostics", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.diagnostics.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A filter to apply to the list (e.g. `create_time > \"2023-01-01T00:00:00Z\"`).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of diagnostics to return. The service may return fewer than this value. If unspecified, at most 100 diagnostics will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListDiagnostics` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the diagnostics.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/diagnostics", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListDiagnosticsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "encryptionSpec": { "methods": { "initialize": { @@ -6101,151 +6224,194 @@ } } }, - "revision": "20260219", + "revision": "20260410", "rootUrl": "https://contactcenterinsights.googleapis.com/", "schemas": { - "GoogleCloudContactcenterinsightsV1Analysis": { - "description": "The analysis resource.", - "id": "GoogleCloudContactcenterinsightsV1Analysis", + "GoogleCloudCesV1mainAgentTransfer": { + "description": "Represents an event indicating the transfer of a conversation to a different agent.", + "id": "GoogleCloudCesV1mainAgentTransfer", "properties": { - "analysisResult": { - "$ref": "GoogleCloudContactcenterinsightsV1AnalysisResult", - "description": "Output only. The result of the analysis, which is populated when the analysis finishes.", - "readOnly": true - }, - "annotatorSelector": { - "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", - "description": "To select the annotators to run and the phrase matchers to use (if any). If not specified, all annotators will be run." - }, - "createTime": { - "description": "Output only. The time at which the analysis was created, which occurs when the long-running operation completes.", - "format": "google-datetime", + "displayName": { + "description": "Output only. Display name of the agent.", "readOnly": true, "type": "string" }, - "name": { - "description": "Immutable. The resource name of the analysis. Format: projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}", - "type": "string" - }, - "requestTime": { - "description": "Output only. The time at which the analysis was requested.", - "format": "google-datetime", - "readOnly": true, + "targetAgent": { + "description": "Required. The agent to which the conversation is being transferred. The agent will handle the conversation from this point forward. Format: `projects/{project}/locations/{location}/apps/{app}/agents/{agent}`", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1AnalysisResult": { - "description": "The result of an analysis.", - "id": "GoogleCloudContactcenterinsightsV1AnalysisResult", + "GoogleCloudCesV1mainBlob": { + "description": "Represents a blob input or output in the conversation.", + "id": "GoogleCloudCesV1mainBlob", "properties": { - "callAnalysisMetadata": { - "$ref": "GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata", - "description": "Call-specific metadata created by the analysis." + "data": { + "description": "Required. Raw bytes of the blob.", + "format": "byte", + "type": "string" }, - "endTime": { - "description": "The time at which the analysis ended.", - "format": "google-datetime", + "mimeType": { + "description": "Required. The IANA standard MIME type of the source data.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata": { - "description": "Call-specific metadata created during analysis.", - "id": "GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata", + "GoogleCloudCesV1mainChunk": { + "description": "A chunk of content within a message.", + "id": "GoogleCloudCesV1mainChunk", "properties": { - "annotations": { - "description": "A list of call annotations that apply to this call.", - "items": { - "$ref": "GoogleCloudContactcenterinsightsV1CallAnnotation" - }, - "type": "array" + "agentTransfer": { + "$ref": "GoogleCloudCesV1mainAgentTransfer", + "description": "Optional. Agent transfer event." }, - "entities": { + "blob": { + "$ref": "GoogleCloudCesV1mainBlob", + "description": "Optional. Blob data." + }, + "defaultVariables": { "additionalProperties": { - "$ref": "GoogleCloudContactcenterinsightsV1Entity" + "description": "Properties of the object.", + "type": "any" }, - "description": "All the entities in the call.", + "description": "A struct represents default variables at the start of the conversation, keyed by variable names.", "type": "object" }, - "intents": { + "image": { + "$ref": "GoogleCloudCesV1mainImage", + "description": "Optional. Image data." + }, + "payload": { "additionalProperties": { - "$ref": "GoogleCloudContactcenterinsightsV1Intent" + "description": "Properties of the object.", + "type": "any" }, - "description": "All the matched intents in the call.", + "description": "Optional. Custom payload data.", "type": "object" }, - "issueModelResult": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModelResult", - "description": "Overall conversation-level issue modeling result." + "text": { + "description": "Optional. Text data.", + "type": "string" }, - "phraseMatchers": { + "toolCall": { + "$ref": "GoogleCloudCesV1mainToolCall", + "description": "Optional. Tool execution request." + }, + "toolResponse": { + "$ref": "GoogleCloudCesV1mainToolResponse", + "description": "Optional. Tool execution response." + }, + "transcript": { + "description": "Optional. Transcript associated with the audio.", + "type": "string" + }, + "updatedVariables": { "additionalProperties": { - "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchData" + "description": "Properties of the object.", + "type": "any" }, - "description": "All the matched phrase matchers in the call.", + "description": "A struct represents variables that were updated in the conversation, keyed by variable names.", "type": "object" - }, - "qaScorecardResults": { - "description": "Results of scoring QaScorecards.", - "items": { - "$ref": "GoogleCloudContactcenterinsightsV1QaScorecardResult" + } + }, + "type": "object" + }, + "GoogleCloudCesV1mainEndSession": { + "description": "Indicates the session has terminated, due to either successful completion (e.g. user says \"Good bye!\" ) or an agent escalation. The agent will not process any further inputs after session is terminated and the client should half-close and disconnect after receiving all remaining responses from the agent.", + "id": "GoogleCloudCesV1mainEndSession", + "properties": { + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "type": "array" + "description": "Optional. Provides additional information about the end session signal, such as the reason for ending the session.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudCesV1mainImage": { + "description": "Represents an image input or output in the conversation.", + "id": "GoogleCloudCesV1mainImage", + "properties": { + "data": { + "description": "Required. Raw bytes of the image.", + "format": "byte", + "type": "string" }, - "sentiments": { - "description": "Overall conversation-level sentiment for each channel of the call.", + "mimeType": { + "description": "Required. The IANA standard MIME type of the source data. Supported image types includes: * image/png * image/jpeg * image/webp", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudCesV1mainMessage": { + "description": "A message within a conversation.", + "id": "GoogleCloudCesV1mainMessage", + "properties": { + "chunks": { + "description": "Optional. Content of the message as a series of chunks.", "items": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationLevelSentiment" + "$ref": "GoogleCloudCesV1mainChunk" }, "type": "array" }, - "silence": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationLevelSilence", - "description": "Overall conversation-level silence during the call." + "eventTime": { + "description": "Optional. Timestamp when the message was sent or received. Should not be used if the message is part of an example.", + "format": "google-datetime", + "type": "string" + }, + "role": { + "description": "Optional. The role within the conversation, e.g., user, agent.", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1AnalysisRule": { - "description": "The CCAI Insights project wide analysis rule. This rule will be applied to all conversations that match the filter defined in the rule. For a conversation matches the filter, the annotators specified in the rule will be run. If a conversation matches multiple rules, a union of all the annotators will be run. One project can have multiple analysis rules.", - "id": "GoogleCloudContactcenterinsightsV1AnalysisRule", + "GoogleCloudCesV1mainSpan": { + "description": "A span is a unit of work or a single operation during the request processing.", + "id": "GoogleCloudCesV1mainSpan", "properties": { - "active": { - "description": "If true, apply this rule to conversations. Otherwise, this rule is inactive and saved as a draft.", - "type": "boolean" - }, - "analysisPercentage": { - "description": "Percentage of conversations that we should apply this analysis setting automatically, between [0, 1]. For example, 0.1 means 10%. Conversations are sampled in a determenestic way. The original runtime_percentage & upload percentage will be replaced by defining filters on the conversation.", - "format": "double", - "type": "number" + "attributes": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. Key-value attributes associated with the span.", + "readOnly": true, + "type": "object" }, - "annotatorSelector": { - "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", - "description": "Selector of annotators to run and the phrase matchers to use for conversations that matches the conversation_filter. If not specified, NO annotators will be run." + "childSpans": { + "description": "Output only. The child spans that are nested under this span.", + "items": { + "$ref": "GoogleCloudCesV1mainSpan" + }, + "readOnly": true, + "type": "array" }, - "conversationFilter": { - "description": "Filter for the conversations that should apply this analysis rule. An empty filter means this analysis rule applies to all conversations. Refer to https://cloud.google.com/contact-center/insights/docs/filtering for details.", + "duration": { + "description": "Output only. The duration of the span.", + "format": "google-duration", + "readOnly": true, "type": "string" }, - "createTime": { - "description": "Output only. The time at which this analysis rule was created.", + "endTime": { + "description": "Output only. The end time of the span.", "format": "google-datetime", "readOnly": true, "type": "string" }, - "displayName": { - "description": "Display Name of the analysis rule.", - "type": "string" - }, "name": { - "description": "Identifier. The resource name of the analysis rule. Format: projects/{project}/locations/{location}/analysisRules/{analysis_rule}", + "description": "Output only. The name of the span.", + "readOnly": true, "type": "string" }, - "updateTime": { - "description": "Output only. The most recent time at which this analysis rule was updated.", + "startTime": { + "description": "Output only. The start time of the span.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -6253,16 +6419,244 @@ }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1AnnotationBoundary": { - "description": "A point in a conversation that marks the start or the end of an annotation.", - "id": "GoogleCloudContactcenterinsightsV1AnnotationBoundary", + "GoogleCloudCesV1mainToolCall": { + "description": "Request for the client or the agent to execute the specified tool.", + "id": "GoogleCloudCesV1mainToolCall", "properties": { - "transcriptIndex": { - "description": "The index in the sequence of transcribed pieces of the conversation where the boundary is located. This index starts at zero.", - "format": "int32", - "type": "integer" - }, - "wordIndex": { + "args": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The input parameters and values for the tool in JSON object format.", + "type": "object" + }, + "displayName": { + "description": "Output only. Display name of the tool.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Optional. The unique identifier of the tool call. If populated, the client should return the execution result with the matching ID in ToolResponse.", + "type": "string" + }, + "tool": { + "description": "Optional. The name of the tool to execute. Format: `projects/{project}/locations/{location}/apps/{app}/tools/{tool}`", + "type": "string" + }, + "toolsetTool": { + "$ref": "GoogleCloudCesV1mainToolsetTool", + "description": "Optional. The toolset tool to execute." + } + }, + "type": "object" + }, + "GoogleCloudCesV1mainToolResponse": { + "description": "The execution result of a specific tool from the client or the agent.", + "id": "GoogleCloudCesV1mainToolResponse", + "properties": { + "displayName": { + "description": "Output only. Display name of the tool.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Optional. The matching ID of the tool call the response is for.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Required. The tool execution result in JSON object format. Use \"output\" key to specify tool response and \"error\" key to specify error details (if any). If \"output\" and \"error\" keys are not specified, then whole \"response\" is treated as tool execution result.", + "type": "object" + }, + "tool": { + "description": "Optional. The name of the tool to execute. Format: `projects/{project}/locations/{location}/apps/{app}/tools/{tool}`", + "type": "string" + }, + "toolsetTool": { + "$ref": "GoogleCloudCesV1mainToolsetTool", + "description": "Optional. The toolset tool that got executed." + } + }, + "type": "object" + }, + "GoogleCloudCesV1mainToolsetTool": { + "description": "A tool that is created from a toolset.", + "id": "GoogleCloudCesV1mainToolsetTool", + "properties": { + "toolId": { + "description": "Optional. The tool ID to filter the tools to retrieve the schema for.", + "type": "string" + }, + "toolset": { + "description": "Required. The resource name of the Toolset from which this tool is derived. Format: `projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}`", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1Analysis": { + "description": "The analysis resource.", + "id": "GoogleCloudContactcenterinsightsV1Analysis", + "properties": { + "analysisResult": { + "$ref": "GoogleCloudContactcenterinsightsV1AnalysisResult", + "description": "Output only. The result of the analysis, which is populated when the analysis finishes.", + "readOnly": true + }, + "annotatorSelector": { + "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", + "description": "To select the annotators to run and the phrase matchers to use (if any). If not specified, all annotators will be run." + }, + "createTime": { + "description": "Output only. The time at which the analysis was created, which occurs when the long-running operation completes.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Immutable. The resource name of the analysis. Format: projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}", + "type": "string" + }, + "requestTime": { + "description": "Output only. The time at which the analysis was requested.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnalysisResult": { + "description": "The result of an analysis.", + "id": "GoogleCloudContactcenterinsightsV1AnalysisResult", + "properties": { + "callAnalysisMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata", + "description": "Call-specific metadata created by the analysis." + }, + "endTime": { + "description": "The time at which the analysis ended.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata": { + "description": "Call-specific metadata created during analysis.", + "id": "GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata", + "properties": { + "annotations": { + "description": "A list of call annotations that apply to this call.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1CallAnnotation" + }, + "type": "array" + }, + "entities": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1Entity" + }, + "description": "All the entities in the call.", + "type": "object" + }, + "intents": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1Intent" + }, + "description": "All the matched intents in the call.", + "type": "object" + }, + "issueModelResult": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueModelResult", + "description": "Overall conversation-level issue modeling result." + }, + "phraseMatchers": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchData" + }, + "description": "All the matched phrase matchers in the call.", + "type": "object" + }, + "qaScorecardResults": { + "description": "Results of scoring QaScorecards.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecardResult" + }, + "type": "array" + }, + "sentiments": { + "description": "Overall conversation-level sentiment for each channel of the call.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationLevelSentiment" + }, + "type": "array" + }, + "silence": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationLevelSilence", + "description": "Overall conversation-level silence during the call." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnalysisRule": { + "description": "The CCAI Insights project wide analysis rule. This rule will be applied to all conversations that match the filter defined in the rule. For a conversation matches the filter, the annotators specified in the rule will be run. If a conversation matches multiple rules, a union of all the annotators will be run. One project can have multiple analysis rules.", + "id": "GoogleCloudContactcenterinsightsV1AnalysisRule", + "properties": { + "active": { + "description": "If true, apply this rule to conversations. Otherwise, this rule is inactive and saved as a draft.", + "type": "boolean" + }, + "analysisPercentage": { + "description": "Percentage of conversations that we should apply this analysis setting automatically, between [0, 1]. For example, 0.1 means 10%. Conversations are sampled in a determenestic way. The original runtime_percentage & upload percentage will be replaced by defining filters on the conversation.", + "format": "double", + "type": "number" + }, + "annotatorSelector": { + "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", + "description": "Selector of annotators to run and the phrase matchers to use for conversations that matches the conversation_filter. If not specified, NO annotators will be run." + }, + "conversationFilter": { + "description": "Filter for the conversations that should apply this analysis rule. An empty filter means this analysis rule applies to all conversations. Refer to https://cloud.google.com/contact-center/insights/docs/filtering for details.", + "type": "string" + }, + "createTime": { + "description": "Output only. The time at which this analysis rule was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Display Name of the analysis rule.", + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the analysis rule. Format: projects/{project}/locations/{location}/analysisRules/{analysis_rule}", + "type": "string" + }, + "updateTime": { + "description": "Output only. The most recent time at which this analysis rule was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnnotationBoundary": { + "description": "A point in a conversation that marks the start or the end of an annotation.", + "id": "GoogleCloudContactcenterinsightsV1AnnotationBoundary", + "properties": { + "transcriptIndex": { + "description": "The index in the sequence of transcribed pieces of the conversation where the boundary is located. This index starts at zero.", + "format": "int32", + "type": "integer" + }, + "wordIndex": { "description": "The word index of this boundary with respect to the first word in the transcript piece. This index starts at zero.", "format": "int32", "type": "integer" @@ -6292,6 +6686,10 @@ "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelectorQaConfig", "description": "Configuration for the QA annotator." }, + "runAutoLabelingAnnotator": { + "description": "Optional. Whether to run the auto-labeling annotator. If true, the auto-labeling annotator will be run. This is a non-billable operation designed for fixing or backfilling custom labels.", + "type": "boolean" + }, "runEntityAnnotator": { "description": "Whether to run the entity annotator.", "type": "boolean" @@ -6714,6 +7112,11 @@ "readOnly": true, "type": "array" }, + "relabel": { + "description": "Output only. If true, the labeling rules will be re-evaluated for the conversations.", + "readOnly": true, + "type": "boolean" + }, "request": { "$ref": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest", "description": "The original request for bulk analyze." @@ -6746,6 +7149,10 @@ "parent": { "description": "Required. The parent resource to create analyses in.", "type": "string" + }, + "relabel": { + "description": "Optional. If true, the labeling rules will be re-evaluated for the conversations.", + "type": "boolean" } }, "type": "object" @@ -7268,10 +7675,43 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1CesEndSessionAnnotation": { + "description": "The CES end session annotation.", + "id": "GoogleCloudContactcenterinsightsV1CesEndSessionAnnotation", + "properties": { + "endSession": { + "$ref": "GoogleCloudCesV1mainEndSession", + "description": "End session signal from CES." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1CesTurnAnnotation": { + "description": "The CES diagnostic information.", + "id": "GoogleCloudContactcenterinsightsV1CesTurnAnnotation", + "properties": { + "messages": { + "description": "The messages in the turn.", + "items": { + "$ref": "GoogleCloudCesV1mainMessage" + }, + "type": "array" + }, + "rootSpan": { + "$ref": "GoogleCloudCesV1mainSpan", + "description": "The root span of the action processing." + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1Chart": { "description": "Configurable dashboard's widget that displays data as a chart.", "id": "GoogleCloudContactcenterinsightsV1Chart", "properties": { + "action": { + "$ref": "GoogleCloudContactcenterinsightsV1ChartAction", + "description": "Optional action to be taken when the chart is clicked." + }, "chartType": { "description": "Output only. Chart type.", "enum": [ @@ -7365,6 +7805,17 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1ChartAction": { + "description": "The action to be taken when the chart is clicked.", + "id": "GoogleCloudContactcenterinsightsV1ChartAction", + "properties": { + "redirectAction": { + "$ref": "GoogleCloudContactcenterinsightsV1RedirectAction", + "description": "Redirect action." + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1ChartDataSource": { "description": "The request data for visualizing the dataset in the chart.", "id": "GoogleCloudContactcenterinsightsV1ChartDataSource", @@ -7720,6 +8171,13 @@ "metadataUri": { "description": "Cloud Storage URI that points to a file that contains the conversation metadata.", "type": "string" + }, + "turnLevelAudios": { + "description": "Cloud Storage URIs that points to files that contain the conversation audio for each turn. Assume the order of the URIs is the same as the order of the transcript turns.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationDataSourceTurnLevelAudio" + }, + "type": "array" } }, "type": "object" @@ -7892,6 +8350,10 @@ "description": "A user-provided string indicating the outcome of the agent's segment of the call.", "type": "string" }, + "entrySubagentDisplayName": { + "description": "The entry subagent's display name.", + "type": "string" + }, "location": { "description": "The agent's location.", "type": "string" @@ -8014,6 +8476,10 @@ "description": "The text of this segment.", "type": "string" }, + "turnLevelAudio": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationDataSourceTurnLevelAudio", + "description": "Turn level audio for this transcript segment." + }, "words": { "description": "A list of the word-specific information for each word in the segment.", "items": { @@ -8490,16 +8956,287 @@ "properties": {}, "type": "object" }, - "GoogleCloudContactcenterinsightsV1DialogflowIntent": { - "description": "The data for a Dialogflow intent. Represents a detected intent in the conversation, e.g. MAKES_PROMISE.", - "id": "GoogleCloudContactcenterinsightsV1DialogflowIntent", + "GoogleCloudContactcenterinsightsV1DiagnoseConversationsMetadata": { + "description": "Metadata for a DiagnoseConversations operation.", + "id": "GoogleCloudContactcenterinsightsV1DiagnoseConversationsMetadata", "properties": { - "displayName": { - "description": "The human-readable name of the intent.", + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, "type": "string" - } - }, - "type": "object" + }, + "diagnosticReport": { + "$ref": "GoogleCloudContactcenterinsightsV1DiagnosticReport", + "description": "Output only. The diagnostic report containing metrics and intent breakdowns.", + "readOnly": true + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "fullReport": { + "description": "Output only. If true, the agent generated a full diagnostic report for all sub-agents.", + "readOnly": true, + "type": "boolean" + }, + "latestStep": { + "$ref": "GoogleCloudContactcenterinsightsV1SherlockStep", + "description": "Output only. The most recent thought or action from the agent.", + "readOnly": true + }, + "metricType": { + "description": "Output only. The type of metric being diagnosed.", + "enum": [ + "DIAGNOSTIC_METRIC_TYPE_UNSPECIFIED", + "ESCALATION", + "CONTAINMENT" + ], + "enumDescriptions": [ + "Metric type is unspecified.", + "Escalation rate.", + "Containment rate." + ], + "readOnly": true, + "type": "string" + }, + "partialTrajectories": { + "deprecated": true, + "description": "Output only. Deprecated: Use partial_trajectory_steps instead. The intermediate trajectory updates (partial trajectory).", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "partialTrajectorySteps": { + "description": "Output only. The intermediate trajectory updates. This can be used for live progress tracking of the agent's thoughts and actions as it works through the analysis.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1SherlockStep" + }, + "readOnly": true, + "type": "array" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1DiagnoseConversationsRequest", + "description": "Output only. The request that created the operation.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DiagnoseConversationsRequest": { + "description": "The request to analyze conversation data using agentic workflows. This RPC triggers a complex analysis process that may involve several steps of reasoning and tool execution.", + "id": "GoogleCloudContactcenterinsightsV1DiagnoseConversationsRequest", + "properties": { + "dryRun": { + "description": "Optional. If true, the request will be validated and a simulation of the analysis will be performed without actually executing the task.", + "type": "boolean" + }, + "filter": { + "description": "Optional. AIP-160 compliant filter for selecting target conversations.", + "type": "string" + }, + "fullReport": { + "description": "Optional. If true, the agent will generate a full diagnostic report for all sub-agents.", + "type": "boolean" + }, + "instructions": { + "description": "Optional. Specific instructions for the agent.", + "type": "string" + }, + "maxSteps": { + "description": "Optional. The maximum number of steps the agent can take during the execution of the task. Defaults to 10.", + "format": "int32", + "type": "integer" + }, + "metricType": { + "description": "Optional. The type of metric being diagnosed.", + "enum": [ + "DIAGNOSTIC_METRIC_TYPE_UNSPECIFIED", + "ESCALATION", + "CONTAINMENT" + ], + "enumDescriptions": [ + "Metric type is unspecified.", + "Escalation rate.", + "Containment rate." + ], + "type": "string" + }, + "outputConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1OutputConfig", + "description": "Optional. The configuration for the output of the task." + }, + "parent": { + "description": "Required. The parent resource where the analysis will be performed.", + "type": "string" + }, + "requestId": { + "description": "Optional. Required. A unique ID that identifies the request. If the service receives two `DiagnoseConversationsRequest`s with the same `request_id`, then the second request will be ignored; instead, the response of the first request will be returned. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "type": "string" + }, + "taskQuery": { + "description": "Optional. A natural language description of the analysis goal or question.", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If true, the request will only be validated (permissions, filter syntax, etc.) without actually triggering the analysis.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DiagnoseConversationsResponse": { + "description": "The response from a DiagnoseConversations request.", + "id": "GoogleCloudContactcenterinsightsV1DiagnoseConversationsResponse", + "properties": { + "answer": { + "description": "Output only. The final, high-level answer or diagnostic summary returned by the Sherlock worker.", + "readOnly": true, + "type": "string" + }, + "exportUri": { + "description": "Output only. If an external destination was requested, the URI of the exported data.", + "readOnly": true, + "type": "string" + }, + "fullTrajectories": { + "deprecated": true, + "description": "Output only. Deprecated: Use full_trajectory_steps instead. The complete sequence of thoughts and actions (full trajectory).", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "fullTrajectorySteps": { + "description": "Output only. The complete sequence of thoughts and actions taken by the agent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1SherlockStep" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1Diagnostic": { + "description": "The diagnostic resource.", + "id": "GoogleCloudContactcenterinsightsV1Diagnostic", + "properties": { + "analysisSummary": { + "description": "Output only. The complete sequence of thoughts and actions taken by the agent.", + "readOnly": true, + "type": "string" + }, + "conversationFilter": { + "description": "Output only. The filter used to select the conversations that were included in the diagnostic.", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. The time at which the diagnostic was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Immutable. Identifier. The resource name of the diagnostic.", + "type": "string" + }, + "report": { + "$ref": "GoogleCloudContactcenterinsightsV1DiagnosticReport", + "description": "Output only. The report containing the findings of the diagnostic.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DiagnosticReport": { + "description": "A diagnostic report containing aggregate metrics and intent breakdowns.", + "id": "GoogleCloudContactcenterinsightsV1DiagnosticReport", + "properties": { + "intentStats": { + "description": "Output only. A breakdown of metrics grouped by intent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1DiagnosticReportIntentStats" + }, + "readOnly": true, + "type": "array" + }, + "lossPatterns": { + "description": "Output only. A list of loss patterns identified for the entire project/dataset.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1LossPattern" + }, + "readOnly": true, + "type": "array" + }, + "metrics": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1MetricValue" + }, + "deprecated": true, + "description": "Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DiagnosticReportIntentStats": { + "description": "A breakdown of metrics grouped by intent.", + "id": "GoogleCloudContactcenterinsightsV1DiagnosticReportIntentStats", + "properties": { + "conversationCount": { + "description": "Output only. The number of conversations associated with this intent.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "intentDisplayName": { + "description": "Output only. The display name of the intent.", + "readOnly": true, + "type": "string" + }, + "intentId": { + "description": "Output only. The unique identifier for the intent (from Discovery Engine).", + "readOnly": true, + "type": "string" + }, + "lossPatterns": { + "description": "Output only. A list of loss patterns identified for this intent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1LossPattern" + }, + "readOnly": true, + "type": "array" + }, + "metrics": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1MetricValue" + }, + "deprecated": true, + "description": "Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DialogflowIntent": { + "description": "The data for a Dialogflow intent. Represents a detected intent in the conversation, e.g. MAKES_PROMISE.", + "id": "GoogleCloudContactcenterinsightsV1DialogflowIntent", + "properties": { + "displayName": { + "description": "The human-readable name of the intent.", + "type": "string" + } + }, + "type": "object" }, "GoogleCloudContactcenterinsightsV1DialogflowInteractionData": { "description": "Dialogflow interaction data.", @@ -8585,7 +9322,8 @@ "AGENT_ASSIST_SUPERVISOR_ID", "LABEL_KEY", "LABEL_VALUE", - "LABEL_KEY_AND_VALUE" + "LABEL_KEY_AND_VALUE", + "LAST_TRANSFER_SUB_AGENT_NAME" ], "enumDescriptions": [ "The key of the dimension is unspecified.", @@ -8608,7 +9346,8 @@ "The dimension is keyed by the supervisor ID of the assigned human supervisor for virtual agents.", "The dimension is keyed by label keys.", "The dimension is keyed by label values.", - "The dimension is keyed by label key-value pairs." + "The dimension is keyed by label key-value pairs.", + "The dimension is keyed by the last transfer sub agent name." ], "type": "string" }, @@ -10518,6 +11257,24 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1ListDiagnosticsResponse": { + "description": "The response from a ListDiagnostics request.", + "id": "GoogleCloudContactcenterinsightsV1ListDiagnosticsResponse", + "properties": { + "diagnostics": { + "description": "Optional. The diagnostics that match the request.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1Diagnostic" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Optional. A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1ListFeedbackLabelsResponse": { "description": "The response for listing feedback labels.", "id": "GoogleCloudContactcenterinsightsV1ListFeedbackLabelsResponse", @@ -10690,80 +11447,266 @@ }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1Note": { - "description": "The conversation assessment note resource.", - "id": "GoogleCloudContactcenterinsightsV1Note", + "GoogleCloudContactcenterinsightsV1LossPattern": { + "description": "A loss pattern of a virtual agent and suggested fixes.", + "id": "GoogleCloudContactcenterinsightsV1LossPattern", "properties": { - "assessmentNote": { - "$ref": "GoogleCloudContactcenterinsightsV1NoteAssessmentNote", - "description": "The note is associated to the entire parent assessment." + "conversationIds": { + "description": "Output only. A list of conversation IDs that match this loss pattern.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" }, - "content": { - "description": "The note content.", + "description": { + "description": "Output only. A markdown description of the loss pattern.", + "readOnly": true, "type": "string" }, - "conversationTurnNote": { - "$ref": "GoogleCloudContactcenterinsightsV1NoteConversationTurnNote", - "description": "The note is associated with a conversation turn." - }, - "createTime": { - "description": "Output only. The time at which the note was created.", - "format": "google-datetime", + "displayName": { + "description": "Output only. The display name of the loss pattern.", "readOnly": true, "type": "string" }, - "name": { - "description": "Identifier. The resource name of the note. Format: projects/{project}/locations/{location}/conversations/{conversation}/assessments/{assessment}/notes/{note}", + "examples": { + "description": "Output only. A markdown of loss pattern examples.", + "readOnly": true, "type": "string" }, - "noteCreator": { - "$ref": "GoogleCloudContactcenterinsightsV1UserInfo", - "description": "Output only. The user that created the note.", - "readOnly": true + "id": { + "description": "Output only. The unique identifier for the loss pattern.", + "readOnly": true, + "type": "string" }, - "qaQuestionNote": { - "$ref": "GoogleCloudContactcenterinsightsV1NoteQaQuestionNote", - "description": "The note is associated with a QA question in one of the conversation's scorecard results." + "percentage": { + "description": "Output only. The percentage of conversations that match this loss pattern.", + "format": "double", + "readOnly": true, + "type": "number" }, - "updateTime": { - "description": "Output only. The time at which the note was last updated.", - "format": "google-datetime", + "suggestedFixes": { + "description": "Output only. A markdown description of the suggested fixes.", "readOnly": true, "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1NoteAssessmentNote": { - "description": "A note about the entire parent assessment.", - "id": "GoogleCloudContactcenterinsightsV1NoteAssessmentNote", - "properties": {}, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1NoteConversationTurnNote": { - "description": "A note about a conversation turn.", - "id": "GoogleCloudContactcenterinsightsV1NoteConversationTurnNote", - "properties": { - "turnIndex": { - "description": "The conversation turn index that the note is associated with.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1NoteQaQuestionNote": { - "description": "A note about a QA question.", - "id": "GoogleCloudContactcenterinsightsV1NoteQaQuestionNote", + "GoogleCloudContactcenterinsightsV1MetricDefinition": { + "description": "A definition for a metric to be calculated during analysis.", + "id": "GoogleCloudContactcenterinsightsV1MetricDefinition", "properties": { - "qaQuestion": { - "description": "The question resource that the note is associated with.", + "displayName": { + "description": "Output only. The user-visible name of the metric (e.g., \"Containment Rate\").", + "readOnly": true, + "type": "string" + }, + "sourceId": { + "description": "Output only. The resource name of the underlying Insights primitive (e.g., Tag or QaQuestion) used to calculate this metric.", + "readOnly": true, "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1PhraseMatchData": { + "GoogleCloudContactcenterinsightsV1MetricValue": { + "deprecated": true, + "description": "Deprecated: MetricValue is no longer used for diagnostics.", + "id": "GoogleCloudContactcenterinsightsV1MetricValue", + "properties": { + "conversations": { + "description": "Output only. The list of conversation names that contributed to this metric (hits). Format: `projects/{project}/locations/{location}/conversations/{conversation}`", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "displayName": { + "description": "Output only. The user-visible name of the metric (e.g., \"Containment Rate\").", + "readOnly": true, + "type": "string" + }, + "hitCount": { + "description": "Output only. The number of positive matches (hits) for this metric.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "metricType": { + "description": "Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics.", + "enum": [ + "METRIC_TYPE_UNSPECIFIED", + "ESCALATION", + "CONTAINMENT" + ], + "enumDescriptions": [ + "Metric type is unspecified.", + "Escalation rate.", + "Containment rate." + ], + "readOnly": true, + "type": "string" + }, + "sourceId": { + "description": "Output only. The resource name of the underlying Insights primitive (e.g., Tag or QaQuestion) used to calculate this metric.", + "readOnly": true, + "type": "string" + }, + "totalCount": { + "description": "Output only. The total number of items evaluated for this metric.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "value": { + "description": "Output only. The calculated value of the metric (usually a ratio or rate 0.0 - 1.0).", + "format": "double", + "readOnly": true, + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1Note": { + "description": "The conversation assessment note resource.", + "id": "GoogleCloudContactcenterinsightsV1Note", + "properties": { + "assessmentNote": { + "$ref": "GoogleCloudContactcenterinsightsV1NoteAssessmentNote", + "description": "The note is associated to the entire parent assessment." + }, + "content": { + "description": "The note content.", + "type": "string" + }, + "conversationTurnNote": { + "$ref": "GoogleCloudContactcenterinsightsV1NoteConversationTurnNote", + "description": "The note is associated with a conversation turn." + }, + "createTime": { + "description": "Output only. The time at which the note was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the note. Format: projects/{project}/locations/{location}/conversations/{conversation}/assessments/{assessment}/notes/{note}", + "type": "string" + }, + "noteCreator": { + "$ref": "GoogleCloudContactcenterinsightsV1UserInfo", + "description": "Output only. The user that created the note.", + "readOnly": true + }, + "qaQuestionNote": { + "$ref": "GoogleCloudContactcenterinsightsV1NoteQaQuestionNote", + "description": "The note is associated with a QA question in one of the conversation's scorecard results." + }, + "updateTime": { + "description": "Output only. The time at which the note was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1NoteAssessmentNote": { + "description": "A note about the entire parent assessment.", + "id": "GoogleCloudContactcenterinsightsV1NoteAssessmentNote", + "properties": {}, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1NoteConversationTurnNote": { + "description": "A note about a conversation turn.", + "id": "GoogleCloudContactcenterinsightsV1NoteConversationTurnNote", + "properties": { + "turnIndex": { + "description": "The conversation turn index that the note is associated with.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1NoteQaQuestionNote": { + "description": "A note about a QA question.", + "id": "GoogleCloudContactcenterinsightsV1NoteQaQuestionNote", + "properties": { + "qaQuestion": { + "description": "The question resource that the note is associated with.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1OutputConfig": { + "description": "Configuration for where to export or return the analysis findings.", + "id": "GoogleCloudContactcenterinsightsV1OutputConfig", + "properties": { + "bigqueryDestination": { + "$ref": "GoogleCloudContactcenterinsightsV1OutputConfigBigQueryDestination", + "description": "Optional. Export to BigQuery." + }, + "gcsDestination": { + "$ref": "GoogleCloudContactcenterinsightsV1OutputConfigGcsDestination", + "description": "Optional. Export to a Cloud Storage bucket." + }, + "googleSheetsDestination": { + "$ref": "GoogleCloudContactcenterinsightsV1OutputConfigGoogleSheetsDestination", + "description": "Optional. Export directly to a Google Sheet." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1OutputConfigBigQueryDestination": { + "description": "BigQuery destination configuration.", + "id": "GoogleCloudContactcenterinsightsV1OutputConfigBigQueryDestination", + "properties": { + "dataset": { + "description": "Required. The name of the BigQuery dataset.", + "type": "string" + }, + "projectId": { + "description": "Optional. A project ID or number.", + "type": "string" + }, + "table": { + "description": "Required. The BigQuery table name.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1OutputConfigGcsDestination": { + "description": "Cloud Storage destination configuration.", + "id": "GoogleCloudContactcenterinsightsV1OutputConfigGcsDestination", + "properties": { + "uri": { + "description": "Required. The Cloud Storage URI to export the results to.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1OutputConfigGoogleSheetsDestination": { + "description": "Google Sheets destination configuration.", + "id": "GoogleCloudContactcenterinsightsV1OutputConfigGoogleSheetsDestination", + "properties": { + "sheet": { + "description": "Optional. The sheet name.", + "type": "string" + }, + "spreadsheetId": { + "description": "Optional. An existing Google Sheets ID.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1PhraseMatchData": { "description": "The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match.", "id": "GoogleCloudContactcenterinsightsV1PhraseMatchData", "properties": { @@ -12097,6 +13040,17 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1RedirectAction": { + "description": "The redirect action to be taken when the chart is clicked.", + "id": "GoogleCloudContactcenterinsightsV1RedirectAction", + "properties": { + "relativePath": { + "description": "The relative path to redirect to.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1RegexMatchConfig": { "description": "Regex match configuration.", "id": "GoogleCloudContactcenterinsightsV1RegexMatchConfig", @@ -12119,6 +13073,14 @@ "$ref": "GoogleCloudContactcenterinsightsV1ArticleSuggestionData", "description": "Agent Assist Article Suggestion data." }, + "cesEndSessionAnnotation": { + "$ref": "GoogleCloudContactcenterinsightsV1CesEndSessionAnnotation", + "description": "The CES end session annotation." + }, + "cesTurnAnnotation": { + "$ref": "GoogleCloudContactcenterinsightsV1CesTurnAnnotation", + "description": "The CES turn annotation." + }, "conversationSummarizationSuggestion": { "$ref": "GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData", "description": "Conversation summarization suggestion data." @@ -12373,6 +13335,10 @@ "readOnly": true, "type": "string" }, + "diagnosticMetricConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1SettingsDiagnosticMetricConfig", + "description": "Optional. Configuration for diagnostic metrics." + }, "languageCode": { "description": "A language code to be applied to each transcript segment unless the segment already specifies a language code. Language code defaults to \"en-US\" if it is neither specified on the segment nor here.", "type": "string" @@ -12400,6 +13366,10 @@ "$ref": "GoogleCloudContactcenterinsightsV1SpeechConfig", "description": "Optional. Default Speech-to-Text resources to use while ingesting audio files. Optional, CCAI Insights will create a default if not provided. This applies to conversations ingested from the `UploadConversation` and `IngestConversations` endpoints, including conversations coming from CCAI Platform." }, + "timeZone": { + "description": "Optional. The time zone applied to the project. This is a string representation of the time zone, for example, \"America/New_York\". This field follows the IANA TZ database format. See https://www.iana.org/time-zones for a list of valid values. If no value is set the user time zone will be used.", + "type": "string" + }, "updateTime": { "description": "Output only. The time at which the settings were last updated.", "format": "google-datetime", @@ -12430,6 +13400,57 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1SettingsDiagnosticMetricConfig": { + "description": "Configuration for diagnostic metrics.", + "id": "GoogleCloudContactcenterinsightsV1SettingsDiagnosticMetricConfig", + "properties": { + "metrics": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1MetricDefinition" + }, + "description": "Optional. A map of diagnostic metrics. The key is a unique identifier for the metric (e.g., \"containment\").", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1SherlockStep": { + "description": "A step in the agent's reasoning process (Trajectory Step).", + "id": "GoogleCloudContactcenterinsightsV1SherlockStep", + "properties": { + "textInput": { + "description": "Output only. Natural language input stimulus.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "thought": { + "description": "Output only. The reasoning or internal monologue of the agent.", + "readOnly": true, + "type": "string" + }, + "toolCalls": { + "description": "Output only. The tool call issued by the agent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1ToolCall" + }, + "readOnly": true, + "type": "array" + }, + "toolOutput": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. The output response from the tool execution.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1SignedAudioUris": { "description": "Signed audio URIs for a conversation.", "id": "GoogleCloudContactcenterinsightsV1SignedAudioUris", @@ -12702,6 +13723,27 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1ToolCall": { + "description": "A tool call from the agent.", + "id": "GoogleCloudContactcenterinsightsV1ToolCall", + "properties": { + "input": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. The input arguments to the tool.", + "readOnly": true, + "type": "object" + }, + "toolName": { + "description": "Output only. The name of the tool being called.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1TuneQaScorecardRevisionRequest": { "description": "Request for TuneQaScorecardRevision endpoint.", "id": "GoogleCloudContactcenterinsightsV1TuneQaScorecardRevisionRequest", @@ -13073,6 +14115,10 @@ "$ref": "GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorQaConfig", "description": "Configuration for the QA annotator." }, + "runAutoLabelingAnnotator": { + "description": "Optional. Whether to run the auto-labeling annotator. If true, the auto-labeling annotator will be run. This is a non-billable operation designed for fixing or backfilling custom labels.", + "type": "boolean" + }, "runEntityAnnotator": { "description": "Whether to run the entity annotator.", "type": "boolean" @@ -13273,6 +14319,11 @@ "readOnly": true, "type": "array" }, + "relabel": { + "description": "Output only. If true, the labeling rules will be re-evaluated for the conversations.", + "readOnly": true, + "type": "boolean" + }, "request": { "$ref": "GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRequest", "description": "The original request for bulk analyze." @@ -13305,6 +14356,10 @@ "parent": { "description": "Required. The parent resource to create analyses in.", "type": "string" + }, + "relabel": { + "description": "Optional. If true, the labeling rules will be re-evaluated for the conversations.", + "type": "boolean" } }, "type": "object" @@ -13476,6 +14531,35 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1alpha1CesEndSessionAnnotation": { + "description": "The CES end session annotation.", + "id": "GoogleCloudContactcenterinsightsV1alpha1CesEndSessionAnnotation", + "properties": { + "endSession": { + "$ref": "GoogleCloudCesV1mainEndSession", + "description": "End session signal from CES." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1CesTurnAnnotation": { + "description": "The CES diagnostic information.", + "id": "GoogleCloudContactcenterinsightsV1alpha1CesTurnAnnotation", + "properties": { + "messages": { + "description": "The messages in the turn.", + "items": { + "$ref": "GoogleCloudCesV1mainMessage" + }, + "type": "array" + }, + "rootSpan": { + "$ref": "GoogleCloudCesV1mainSpan", + "description": "The root span of the action processing." + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1alpha1ConstraintEvaluationResult": { "description": "The result of testing a constraint expression on a pair of conversations.", "id": "GoogleCloudContactcenterinsightsV1alpha1ConstraintEvaluationResult", @@ -13760,6 +14844,29 @@ "metadataUri": { "description": "Cloud Storage URI that points to a file that contains the conversation metadata.", "type": "string" + }, + "turnLevelAudios": { + "description": "Cloud Storage URIs that points to files that contain the conversation audio for each turn. Assume the order of the URIs is the same as the order of the transcript turns.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1ConversationDataSourceTurnLevelAudio" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1ConversationDataSourceTurnLevelAudio": { + "description": "A wrapper for holding the audio for any given turn.", + "id": "GoogleCloudContactcenterinsightsV1alpha1ConversationDataSourceTurnLevelAudio", + "properties": { + "audioDuration": { + "description": "The duration of the audio.", + "format": "google-duration", + "type": "string" + }, + "audioGcsUri": { + "description": "The Cloud Storage URI of the audio for any given turn.", + "type": "string" } }, "type": "object" @@ -13916,6 +15023,10 @@ "description": "A user-provided string indicating the outcome of the agent's segment of the call.", "type": "string" }, + "entrySubagentDisplayName": { + "description": "The entry subagent's display name.", + "type": "string" + }, "location": { "description": "The agent's location.", "type": "string" @@ -14038,6 +15149,10 @@ "description": "The text of this segment.", "type": "string" }, + "turnLevelAudio": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1ConversationDataSourceTurnLevelAudio", + "description": "Turn level audio for this transcript segment." + }, "words": { "description": "A list of the word-specific information for each word in the segment.", "items": { @@ -14349,6 +15464,245 @@ "properties": {}, "type": "object" }, + "GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsMetadata": { + "description": "Metadata for a DiagnoseConversations operation.", + "id": "GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsMetadata", + "properties": { + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "diagnosticReport": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1DiagnosticReport", + "description": "Output only. The diagnostic report containing metrics and intent breakdowns.", + "readOnly": true + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "fullReport": { + "description": "Output only. If true, the agent generated a full diagnostic report for all sub-agents.", + "readOnly": true, + "type": "boolean" + }, + "latestStep": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1SherlockStep", + "description": "Output only. The most recent thought or action from the agent.", + "readOnly": true + }, + "metricType": { + "description": "Output only. The type of metric being diagnosed.", + "enum": [ + "DIAGNOSTIC_METRIC_TYPE_UNSPECIFIED", + "ESCALATION", + "CONTAINMENT" + ], + "enumDescriptions": [ + "Metric type is unspecified.", + "Escalation rate.", + "Containment rate." + ], + "readOnly": true, + "type": "string" + }, + "partialTrajectories": { + "deprecated": true, + "description": "Output only. Deprecated: Use partial_trajectory_steps instead. The intermediate trajectory updates (partial trajectory).", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "partialTrajectorySteps": { + "description": "Output only. The intermediate trajectory updates. This can be used for live progress tracking of the agent's thoughts and actions as it works through the analysis.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1SherlockStep" + }, + "readOnly": true, + "type": "array" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsRequest", + "description": "Output only. The request that created the operation.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsRequest": { + "description": "The request to analyze conversation data using agentic workflows. This RPC triggers a complex analysis process that may involve several steps of reasoning and tool execution.", + "id": "GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsRequest", + "properties": { + "dryRun": { + "description": "Optional. If true, the request will be validated and a simulation of the analysis will be performed without actually executing the task.", + "type": "boolean" + }, + "filter": { + "description": "Optional. AIP-160 compliant filter for selecting target conversations.", + "type": "string" + }, + "fullReport": { + "description": "Optional. If true, the agent will generate a full diagnostic report for all sub-agents.", + "type": "boolean" + }, + "instructions": { + "description": "Optional. Specific instructions for the agent.", + "type": "string" + }, + "maxSteps": { + "description": "Optional. The maximum number of steps the agent can take during the execution of the task. Defaults to 10.", + "format": "int32", + "type": "integer" + }, + "metricType": { + "description": "Optional. The type of metric being diagnosed.", + "enum": [ + "DIAGNOSTIC_METRIC_TYPE_UNSPECIFIED", + "ESCALATION", + "CONTAINMENT" + ], + "enumDescriptions": [ + "Metric type is unspecified.", + "Escalation rate.", + "Containment rate." + ], + "type": "string" + }, + "outputConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1OutputConfig", + "description": "Optional. The configuration for the output of the task." + }, + "parent": { + "description": "Required. The parent resource where the analysis will be performed.", + "type": "string" + }, + "requestId": { + "description": "Optional. Required. A unique ID that identifies the request. If the service receives two `DiagnoseConversationsRequest`s with the same `request_id`, then the second request will be ignored; instead, the response of the first request will be returned. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "type": "string" + }, + "taskQuery": { + "description": "Optional. A natural language description of the analysis goal or question.", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If true, the request will only be validated (permissions, filter syntax, etc.) without actually triggering the analysis.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsResponse": { + "description": "The response from a DiagnoseConversations request.", + "id": "GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsResponse", + "properties": { + "answer": { + "description": "Output only. The final, high-level answer or diagnostic summary returned by the Sherlock worker.", + "readOnly": true, + "type": "string" + }, + "exportUri": { + "description": "Output only. If an external destination was requested, the URI of the exported data.", + "readOnly": true, + "type": "string" + }, + "fullTrajectories": { + "deprecated": true, + "description": "Output only. Deprecated: Use full_trajectory_steps instead. The complete sequence of thoughts and actions (full trajectory).", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "fullTrajectorySteps": { + "description": "Output only. The complete sequence of thoughts and actions taken by the agent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1SherlockStep" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1DiagnosticReport": { + "description": "A diagnostic report containing aggregate metrics and intent breakdowns.", + "id": "GoogleCloudContactcenterinsightsV1alpha1DiagnosticReport", + "properties": { + "intentStats": { + "description": "Output only. A breakdown of metrics grouped by intent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1DiagnosticReportIntentStats" + }, + "readOnly": true, + "type": "array" + }, + "lossPatterns": { + "description": "Output only. A list of loss patterns identified for the entire project/dataset.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1LossPattern" + }, + "readOnly": true, + "type": "array" + }, + "metrics": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1MetricValue" + }, + "deprecated": true, + "description": "Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1DiagnosticReportIntentStats": { + "description": "A breakdown of metrics grouped by intent.", + "id": "GoogleCloudContactcenterinsightsV1alpha1DiagnosticReportIntentStats", + "properties": { + "conversationCount": { + "description": "Output only. The number of conversations associated with this intent.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "intentDisplayName": { + "description": "Output only. The display name of the intent.", + "readOnly": true, + "type": "string" + }, + "intentId": { + "description": "Output only. The unique identifier for the intent (from Discovery Engine).", + "readOnly": true, + "type": "string" + }, + "lossPatterns": { + "description": "Output only. A list of loss patterns identified for this intent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1LossPattern" + }, + "readOnly": true, + "type": "array" + }, + "metrics": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1MetricValue" + }, + "deprecated": true, + "description": "Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1alpha1DialogflowIntent": { "description": "The data for a Dialogflow intent. Represents a detected intent in the conversation, e.g. MAKES_PROMISE.", "id": "GoogleCloudContactcenterinsightsV1alpha1DialogflowIntent", @@ -14444,7 +15798,8 @@ "AGENT_ASSIST_SUPERVISOR_ID", "LABEL_KEY", "LABEL_VALUE", - "LABEL_KEY_AND_VALUE" + "LABEL_KEY_AND_VALUE", + "LAST_TRANSFER_SUB_AGENT_NAME" ], "enumDescriptions": [ "The key of the dimension is unspecified.", @@ -14467,7 +15822,8 @@ "The dimension is keyed by the supervisor ID of the assigned human supervisor for virtual agents.", "The dimension is keyed by label keys.", "The dimension is keyed by label values.", - "The dimension is keyed by label key-value pairs." + "The dimension is keyed by label key-value pairs.", + "The dimension is keyed by the last transfer sub agent name." ], "type": "string" }, @@ -15934,15 +17290,184 @@ "description": "The response for listing feedback labels.", "id": "GoogleCloudContactcenterinsightsV1alpha1ListFeedbackLabelsResponse", "properties": { - "feedbackLabels": { - "description": "The feedback labels that match the request.", - "items": { - "$ref": "GoogleCloudContactcenterinsightsV1alpha1FeedbackLabel" - }, - "type": "array" + "feedbackLabels": { + "description": "The feedback labels that match the request.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1FeedbackLabel" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The next page token.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1LossPattern": { + "description": "A loss pattern of a virtual agent and suggested fixes.", + "id": "GoogleCloudContactcenterinsightsV1alpha1LossPattern", + "properties": { + "conversationIds": { + "description": "Output only. A list of conversation IDs that match this loss pattern.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "description": { + "description": "Output only. A markdown description of the loss pattern.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Output only. The display name of the loss pattern.", + "readOnly": true, + "type": "string" + }, + "examples": { + "description": "Output only. A markdown of loss pattern examples.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Output only. The unique identifier for the loss pattern.", + "readOnly": true, + "type": "string" + }, + "percentage": { + "description": "Output only. The percentage of conversations that match this loss pattern.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "suggestedFixes": { + "description": "Output only. A markdown description of the suggested fixes.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1MetricValue": { + "deprecated": true, + "description": "Deprecated: MetricValue is no longer used for diagnostics.", + "id": "GoogleCloudContactcenterinsightsV1alpha1MetricValue", + "properties": { + "conversations": { + "description": "Output only. The list of conversation names that contributed to this metric (hits). Format: `projects/{project}/locations/{location}/conversations/{conversation}`", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "displayName": { + "description": "Output only. The user-visible name of the metric (e.g., \"Containment Rate\").", + "readOnly": true, + "type": "string" + }, + "hitCount": { + "description": "Output only. The number of positive matches (hits) for this metric.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "metricType": { + "description": "Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics.", + "enum": [ + "METRIC_TYPE_UNSPECIFIED", + "ESCALATION", + "CONTAINMENT" + ], + "enumDescriptions": [ + "Metric type is unspecified.", + "Escalation rate.", + "Containment rate." + ], + "readOnly": true, + "type": "string" + }, + "sourceId": { + "description": "Output only. The resource name of the underlying Insights primitive (e.g., Tag or QaQuestion) used to calculate this metric.", + "readOnly": true, + "type": "string" + }, + "totalCount": { + "description": "Output only. The total number of items evaluated for this metric.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "value": { + "description": "Output only. The calculated value of the metric (usually a ratio or rate 0.0 - 1.0).", + "format": "double", + "readOnly": true, + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1OutputConfig": { + "description": "Configuration for where to export or return the analysis findings.", + "id": "GoogleCloudContactcenterinsightsV1alpha1OutputConfig", + "properties": { + "bigqueryDestination": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1OutputConfigBigQueryDestination", + "description": "Optional. Export to BigQuery." + }, + "gcsDestination": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1OutputConfigGcsDestination", + "description": "Optional. Export to a Cloud Storage bucket." + }, + "googleSheetsDestination": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1OutputConfigGoogleSheetsDestination", + "description": "Optional. Export directly to a Google Sheet." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1OutputConfigBigQueryDestination": { + "description": "BigQuery destination configuration.", + "id": "GoogleCloudContactcenterinsightsV1alpha1OutputConfigBigQueryDestination", + "properties": { + "dataset": { + "description": "Required. The name of the BigQuery dataset.", + "type": "string" + }, + "projectId": { + "description": "Optional. A project ID or number.", + "type": "string" + }, + "table": { + "description": "Required. The BigQuery table name.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1OutputConfigGcsDestination": { + "description": "Cloud Storage destination configuration.", + "id": "GoogleCloudContactcenterinsightsV1alpha1OutputConfigGcsDestination", + "properties": { + "uri": { + "description": "Required. The Cloud Storage URI to export the results to.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1OutputConfigGoogleSheetsDestination": { + "description": "Google Sheets destination configuration.", + "id": "GoogleCloudContactcenterinsightsV1alpha1OutputConfigGoogleSheetsDestination", + "properties": { + "sheet": { + "description": "Optional. The sheet name.", + "type": "string" }, - "nextPageToken": { - "description": "The next page token.", + "spreadsheetId": { + "description": "Optional. An existing Google Sheets ID.", "type": "string" } }, @@ -16734,6 +18259,14 @@ "$ref": "GoogleCloudContactcenterinsightsV1alpha1ArticleSuggestionData", "description": "Agent Assist Article Suggestion data." }, + "cesEndSessionAnnotation": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1CesEndSessionAnnotation", + "description": "The CES end session annotation." + }, + "cesTurnAnnotation": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1CesTurnAnnotation", + "description": "The CES turn annotation." + }, "conversationSummarizationSuggestion": { "$ref": "GoogleCloudContactcenterinsightsV1alpha1ConversationSummarizationSuggestionData", "description": "Conversation summarization suggestion data." @@ -16926,6 +18459,43 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1alpha1SherlockStep": { + "description": "A step in the agent's reasoning process (Trajectory Step).", + "id": "GoogleCloudContactcenterinsightsV1alpha1SherlockStep", + "properties": { + "textInput": { + "description": "Output only. Natural language input stimulus.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "thought": { + "description": "Output only. The reasoning or internal monologue of the agent.", + "readOnly": true, + "type": "string" + }, + "toolCalls": { + "description": "Output only. The tool call issued by the agent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1ToolCall" + }, + "readOnly": true, + "type": "array" + }, + "toolOutput": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. The output response from the tool execution.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1alpha1SilenceData": { "description": "The data for a silence annotation.", "id": "GoogleCloudContactcenterinsightsV1alpha1SilenceData", @@ -17112,6 +18682,27 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1alpha1ToolCall": { + "description": "A tool call from the agent.", + "id": "GoogleCloudContactcenterinsightsV1alpha1ToolCall", + "properties": { + "input": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. The input arguments to the tool.", + "readOnly": true, + "type": "object" + }, + "toolName": { + "description": "Output only. The name of the tool being called.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1alpha1UndeployIssueModelMetadata": { "description": "Metadata for undeploying an issue model.", "id": "GoogleCloudContactcenterinsightsV1alpha1UndeployIssueModelMetadata", @@ -17397,6 +18988,10 @@ "$ref": "GoogleCloudContactcenterinsightsV1mainAnnotatorSelectorQaConfig", "description": "Configuration for the QA annotator." }, + "runAutoLabelingAnnotator": { + "description": "Optional. Whether to run the auto-labeling annotator. If true, the auto-labeling annotator will be run. This is a non-billable operation designed for fixing or backfilling custom labels.", + "type": "boolean" + }, "runEntityAnnotator": { "description": "Whether to run the entity annotator.", "type": "boolean" @@ -17597,6 +19192,11 @@ "readOnly": true, "type": "array" }, + "relabel": { + "description": "Output only. If true, the labeling rules will be re-evaluated for the conversations.", + "readOnly": true, + "type": "boolean" + }, "request": { "$ref": "GoogleCloudContactcenterinsightsV1mainBulkAnalyzeConversationsRequest", "description": "The original request for bulk analyze." @@ -17629,6 +19229,10 @@ "parent": { "description": "Required. The parent resource to create analyses in.", "type": "string" + }, + "relabel": { + "description": "Optional. If true, the labeling rules will be re-evaluated for the conversations.", + "type": "boolean" } }, "type": "object" @@ -17980,6 +19584,35 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1mainCesEndSessionAnnotation": { + "description": "The CES end session annotation.", + "id": "GoogleCloudContactcenterinsightsV1mainCesEndSessionAnnotation", + "properties": { + "endSession": { + "$ref": "GoogleCloudCesV1mainEndSession", + "description": "End session signal from CES." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainCesTurnAnnotation": { + "description": "The CES diagnostic information.", + "id": "GoogleCloudContactcenterinsightsV1mainCesTurnAnnotation", + "properties": { + "messages": { + "description": "The messages in the turn.", + "items": { + "$ref": "GoogleCloudCesV1mainMessage" + }, + "type": "array" + }, + "rootSpan": { + "$ref": "GoogleCloudCesV1mainSpan", + "description": "The root span of the action processing." + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1mainConstraintEvaluationResult": { "description": "The result of testing a constraint expression on a pair of conversations.", "id": "GoogleCloudContactcenterinsightsV1mainConstraintEvaluationResult", @@ -18264,6 +19897,29 @@ "metadataUri": { "description": "Cloud Storage URI that points to a file that contains the conversation metadata.", "type": "string" + }, + "turnLevelAudios": { + "description": "Cloud Storage URIs that points to files that contain the conversation audio for each turn. Assume the order of the URIs is the same as the order of the transcript turns.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1mainConversationDataSourceTurnLevelAudio" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainConversationDataSourceTurnLevelAudio": { + "description": "A wrapper for holding the audio for any given turn.", + "id": "GoogleCloudContactcenterinsightsV1mainConversationDataSourceTurnLevelAudio", + "properties": { + "audioDuration": { + "description": "The duration of the audio.", + "format": "google-duration", + "type": "string" + }, + "audioGcsUri": { + "description": "The Cloud Storage URI of the audio for any given turn.", + "type": "string" } }, "type": "object" @@ -18420,6 +20076,10 @@ "description": "A user-provided string indicating the outcome of the agent's segment of the call.", "type": "string" }, + "entrySubagentDisplayName": { + "description": "The entry subagent's display name.", + "type": "string" + }, "location": { "description": "The agent's location.", "type": "string" @@ -18542,6 +20202,10 @@ "description": "The text of this segment.", "type": "string" }, + "turnLevelAudio": { + "$ref": "GoogleCloudContactcenterinsightsV1mainConversationDataSourceTurnLevelAudio", + "description": "Turn level audio for this transcript segment." + }, "words": { "description": "A list of the word-specific information for each word in the segment.", "items": { @@ -18760,99 +20424,338 @@ "readOnly": true, "type": "string" }, - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1mainDeleteIssueModelRequest", - "description": "The original request for deletion." - } - }, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1mainDeleteIssueModelRequest": { - "description": "The request to delete an issue model.", - "id": "GoogleCloudContactcenterinsightsV1mainDeleteIssueModelRequest", - "properties": { - "name": { - "description": "Required. The name of the issue model to delete.", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1mainDeleteIssueModelRequest", + "description": "The original request for deletion." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainDeleteIssueModelRequest": { + "description": "The request to delete an issue model.", + "id": "GoogleCloudContactcenterinsightsV1mainDeleteIssueModelRequest", + "properties": { + "name": { + "description": "Required. The name of the issue model to delete.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainDeleteQaQuestionTagMetadata": { + "description": "The metadata for deleting a QaQuestionTag Resource.", + "id": "GoogleCloudContactcenterinsightsV1mainDeleteQaQuestionTagMetadata", + "properties": { + "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" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1mainDeleteQaQuestionTagRequest", + "description": "Output only. The original request.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainDeleteQaQuestionTagRequest": { + "description": "The request for deleting a QaQuestionTag.", + "id": "GoogleCloudContactcenterinsightsV1mainDeleteQaQuestionTagRequest", + "properties": { + "name": { + "description": "Required. The name of the QaQuestionTag to delete.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainDeployIssueModelMetadata": { + "description": "Metadata for deploying an issue model.", + "id": "GoogleCloudContactcenterinsightsV1mainDeployIssueModelMetadata", + "properties": { + "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" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1mainDeployIssueModelRequest", + "description": "The original request for deployment." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainDeployIssueModelRequest": { + "description": "The request to deploy an issue model.", + "id": "GoogleCloudContactcenterinsightsV1mainDeployIssueModelRequest", + "properties": { + "name": { + "description": "Required. The issue model to deploy.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainDeployIssueModelResponse": { + "description": "The response to deploy an issue model.", + "id": "GoogleCloudContactcenterinsightsV1mainDeployIssueModelResponse", + "properties": {}, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsMetadata": { + "description": "Metadata for a DiagnoseConversations operation.", + "id": "GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsMetadata", + "properties": { + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "diagnosticReport": { + "$ref": "GoogleCloudContactcenterinsightsV1mainDiagnosticReport", + "description": "Output only. The diagnostic report containing metrics and intent breakdowns.", + "readOnly": true + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "fullReport": { + "description": "Output only. If true, the agent generated a full diagnostic report for all sub-agents.", + "readOnly": true, + "type": "boolean" + }, + "latestStep": { + "$ref": "GoogleCloudContactcenterinsightsV1mainSherlockStep", + "description": "Output only. The most recent thought or action from the agent.", + "readOnly": true + }, + "metricType": { + "description": "Output only. The type of metric being diagnosed.", + "enum": [ + "DIAGNOSTIC_METRIC_TYPE_UNSPECIFIED", + "ESCALATION", + "CONTAINMENT" + ], + "enumDescriptions": [ + "Metric type is unspecified.", + "Escalation rate.", + "Containment rate." + ], + "readOnly": true, + "type": "string" + }, + "partialTrajectories": { + "deprecated": true, + "description": "Output only. Deprecated: Use partial_trajectory_steps instead. The intermediate trajectory updates (partial trajectory).", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "partialTrajectorySteps": { + "description": "Output only. The intermediate trajectory updates. This can be used for live progress tracking of the agent's thoughts and actions as it works through the analysis.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1mainSherlockStep" + }, + "readOnly": true, + "type": "array" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsRequest", + "description": "Output only. The request that created the operation.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsRequest": { + "description": "The request to analyze conversation data using agentic workflows. This RPC triggers a complex analysis process that may involve several steps of reasoning and tool execution.", + "id": "GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsRequest", + "properties": { + "dryRun": { + "description": "Optional. If true, the request will be validated and a simulation of the analysis will be performed without actually executing the task.", + "type": "boolean" + }, + "filter": { + "description": "Optional. AIP-160 compliant filter for selecting target conversations.", + "type": "string" + }, + "fullReport": { + "description": "Optional. If true, the agent will generate a full diagnostic report for all sub-agents.", + "type": "boolean" + }, + "instructions": { + "description": "Optional. Specific instructions for the agent.", + "type": "string" + }, + "maxSteps": { + "description": "Optional. The maximum number of steps the agent can take during the execution of the task. Defaults to 10.", + "format": "int32", + "type": "integer" + }, + "metricType": { + "description": "Optional. The type of metric being diagnosed.", + "enum": [ + "DIAGNOSTIC_METRIC_TYPE_UNSPECIFIED", + "ESCALATION", + "CONTAINMENT" + ], + "enumDescriptions": [ + "Metric type is unspecified.", + "Escalation rate.", + "Containment rate." + ], + "type": "string" + }, + "outputConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1mainOutputConfig", + "description": "Optional. The configuration for the output of the task." + }, + "parent": { + "description": "Required. The parent resource where the analysis will be performed.", + "type": "string" + }, + "requestId": { + "description": "Optional. Required. A unique ID that identifies the request. If the service receives two `DiagnoseConversationsRequest`s with the same `request_id`, then the second request will be ignored; instead, the response of the first request will be returned. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "type": "string" + }, + "taskQuery": { + "description": "Optional. A natural language description of the analysis goal or question.", "type": "string" + }, + "validateOnly": { + "description": "Optional. If true, the request will only be validated (permissions, filter syntax, etc.) without actually triggering the analysis.", + "type": "boolean" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1mainDeleteQaQuestionTagMetadata": { - "description": "The metadata for deleting a QaQuestionTag Resource.", - "id": "GoogleCloudContactcenterinsightsV1mainDeleteQaQuestionTagMetadata", + "GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsResponse": { + "description": "The response from a DiagnoseConversations request.", + "id": "GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsResponse", "properties": { - "createTime": { - "description": "Output only. The time the operation was created.", - "format": "google-datetime", + "answer": { + "description": "Output only. The final, high-level answer or diagnostic summary returned by the Sherlock worker.", "readOnly": true, "type": "string" }, - "endTime": { - "description": "Output only. The time the operation finished running.", - "format": "google-datetime", + "exportUri": { + "description": "Output only. If an external destination was requested, the URI of the exported data.", "readOnly": true, "type": "string" }, - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1mainDeleteQaQuestionTagRequest", - "description": "Output only. The original request.", - "readOnly": true + "fullTrajectories": { + "deprecated": true, + "description": "Output only. Deprecated: Use full_trajectory_steps instead. The complete sequence of thoughts and actions (full trajectory).", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "fullTrajectorySteps": { + "description": "Output only. The complete sequence of thoughts and actions taken by the agent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1mainSherlockStep" + }, + "readOnly": true, + "type": "array" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1mainDeleteQaQuestionTagRequest": { - "description": "The request for deleting a QaQuestionTag.", - "id": "GoogleCloudContactcenterinsightsV1mainDeleteQaQuestionTagRequest", + "GoogleCloudContactcenterinsightsV1mainDiagnosticReport": { + "description": "A diagnostic report containing aggregate metrics and intent breakdowns.", + "id": "GoogleCloudContactcenterinsightsV1mainDiagnosticReport", "properties": { - "name": { - "description": "Required. The name of the QaQuestionTag to delete.", - "type": "string" + "intentStats": { + "description": "Output only. A breakdown of metrics grouped by intent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1mainDiagnosticReportIntentStats" + }, + "readOnly": true, + "type": "array" + }, + "lossPatterns": { + "description": "Output only. A list of loss patterns identified for the entire project/dataset.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1mainLossPattern" + }, + "readOnly": true, + "type": "array" + }, + "metrics": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1mainMetricValue" + }, + "deprecated": true, + "description": "Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics.", + "readOnly": true, + "type": "object" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1mainDeployIssueModelMetadata": { - "description": "Metadata for deploying an issue model.", - "id": "GoogleCloudContactcenterinsightsV1mainDeployIssueModelMetadata", + "GoogleCloudContactcenterinsightsV1mainDiagnosticReportIntentStats": { + "description": "A breakdown of metrics grouped by intent.", + "id": "GoogleCloudContactcenterinsightsV1mainDiagnosticReportIntentStats", "properties": { - "createTime": { - "description": "Output only. The time the operation was created.", - "format": "google-datetime", + "conversationCount": { + "description": "Output only. The number of conversations associated with this intent.", + "format": "int32", "readOnly": true, - "type": "string" + "type": "integer" }, - "endTime": { - "description": "Output only. The time the operation finished running.", - "format": "google-datetime", + "intentDisplayName": { + "description": "Output only. The display name of the intent.", "readOnly": true, "type": "string" }, - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1mainDeployIssueModelRequest", - "description": "The original request for deployment." - } - }, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1mainDeployIssueModelRequest": { - "description": "The request to deploy an issue model.", - "id": "GoogleCloudContactcenterinsightsV1mainDeployIssueModelRequest", - "properties": { - "name": { - "description": "Required. The issue model to deploy.", + "intentId": { + "description": "Output only. The unique identifier for the intent (from Discovery Engine).", + "readOnly": true, "type": "string" + }, + "lossPatterns": { + "description": "Output only. A list of loss patterns identified for this intent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1mainLossPattern" + }, + "readOnly": true, + "type": "array" + }, + "metrics": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1mainMetricValue" + }, + "deprecated": true, + "description": "Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics.", + "readOnly": true, + "type": "object" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1mainDeployIssueModelResponse": { - "description": "The response to deploy an issue model.", - "id": "GoogleCloudContactcenterinsightsV1mainDeployIssueModelResponse", - "properties": {}, - "type": "object" - }, "GoogleCloudContactcenterinsightsV1mainDialogflowIntent": { "description": "The data for a Dialogflow intent. Represents a detected intent in the conversation, e.g. MAKES_PROMISE.", "id": "GoogleCloudContactcenterinsightsV1mainDialogflowIntent", @@ -18948,7 +20851,8 @@ "AGENT_ASSIST_SUPERVISOR_ID", "LABEL_KEY", "LABEL_VALUE", - "LABEL_KEY_AND_VALUE" + "LABEL_KEY_AND_VALUE", + "LAST_TRANSFER_SUB_AGENT_NAME" ], "enumDescriptions": [ "The key of the dimension is unspecified.", @@ -18971,7 +20875,8 @@ "The dimension is keyed by the supervisor ID of the assigned human supervisor for virtual agents.", "The dimension is keyed by label keys.", "The dimension is keyed by label values.", - "The dimension is keyed by label key-value pairs." + "The dimension is keyed by label key-value pairs.", + "The dimension is keyed by the last transfer sub agent name." ], "type": "string" }, @@ -20452,6 +22357,175 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1mainLossPattern": { + "description": "A loss pattern of a virtual agent and suggested fixes.", + "id": "GoogleCloudContactcenterinsightsV1mainLossPattern", + "properties": { + "conversationIds": { + "description": "Output only. A list of conversation IDs that match this loss pattern.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "description": { + "description": "Output only. A markdown description of the loss pattern.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Output only. The display name of the loss pattern.", + "readOnly": true, + "type": "string" + }, + "examples": { + "description": "Output only. A markdown of loss pattern examples.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Output only. The unique identifier for the loss pattern.", + "readOnly": true, + "type": "string" + }, + "percentage": { + "description": "Output only. The percentage of conversations that match this loss pattern.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "suggestedFixes": { + "description": "Output only. A markdown description of the suggested fixes.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainMetricValue": { + "deprecated": true, + "description": "Deprecated: MetricValue is no longer used for diagnostics.", + "id": "GoogleCloudContactcenterinsightsV1mainMetricValue", + "properties": { + "conversations": { + "description": "Output only. The list of conversation names that contributed to this metric (hits). Format: `projects/{project}/locations/{location}/conversations/{conversation}`", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "displayName": { + "description": "Output only. The user-visible name of the metric (e.g., \"Containment Rate\").", + "readOnly": true, + "type": "string" + }, + "hitCount": { + "description": "Output only. The number of positive matches (hits) for this metric.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "metricType": { + "description": "Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics.", + "enum": [ + "METRIC_TYPE_UNSPECIFIED", + "ESCALATION", + "CONTAINMENT" + ], + "enumDescriptions": [ + "Metric type is unspecified.", + "Escalation rate.", + "Containment rate." + ], + "readOnly": true, + "type": "string" + }, + "sourceId": { + "description": "Output only. The resource name of the underlying Insights primitive (e.g., Tag or QaQuestion) used to calculate this metric.", + "readOnly": true, + "type": "string" + }, + "totalCount": { + "description": "Output only. The total number of items evaluated for this metric.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "value": { + "description": "Output only. The calculated value of the metric (usually a ratio or rate 0.0 - 1.0).", + "format": "double", + "readOnly": true, + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainOutputConfig": { + "description": "Configuration for where to export or return the analysis findings.", + "id": "GoogleCloudContactcenterinsightsV1mainOutputConfig", + "properties": { + "bigqueryDestination": { + "$ref": "GoogleCloudContactcenterinsightsV1mainOutputConfigBigQueryDestination", + "description": "Optional. Export to BigQuery." + }, + "gcsDestination": { + "$ref": "GoogleCloudContactcenterinsightsV1mainOutputConfigGcsDestination", + "description": "Optional. Export to a Cloud Storage bucket." + }, + "googleSheetsDestination": { + "$ref": "GoogleCloudContactcenterinsightsV1mainOutputConfigGoogleSheetsDestination", + "description": "Optional. Export directly to a Google Sheet." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainOutputConfigBigQueryDestination": { + "description": "BigQuery destination configuration.", + "id": "GoogleCloudContactcenterinsightsV1mainOutputConfigBigQueryDestination", + "properties": { + "dataset": { + "description": "Required. The name of the BigQuery dataset.", + "type": "string" + }, + "projectId": { + "description": "Optional. A project ID or number.", + "type": "string" + }, + "table": { + "description": "Required. The BigQuery table name.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainOutputConfigGcsDestination": { + "description": "Cloud Storage destination configuration.", + "id": "GoogleCloudContactcenterinsightsV1mainOutputConfigGcsDestination", + "properties": { + "uri": { + "description": "Required. The Cloud Storage URI to export the results to.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1mainOutputConfigGoogleSheetsDestination": { + "description": "Google Sheets destination configuration.", + "id": "GoogleCloudContactcenterinsightsV1mainOutputConfigGoogleSheetsDestination", + "properties": { + "sheet": { + "description": "Optional. The sheet name.", + "type": "string" + }, + "spreadsheetId": { + "description": "Optional. An existing Google Sheets ID.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1mainPhraseMatchData": { "description": "The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match.", "id": "GoogleCloudContactcenterinsightsV1mainPhraseMatchData", @@ -21238,6 +23312,14 @@ "$ref": "GoogleCloudContactcenterinsightsV1mainArticleSuggestionData", "description": "Agent Assist Article Suggestion data." }, + "cesEndSessionAnnotation": { + "$ref": "GoogleCloudContactcenterinsightsV1mainCesEndSessionAnnotation", + "description": "The CES end session annotation." + }, + "cesTurnAnnotation": { + "$ref": "GoogleCloudContactcenterinsightsV1mainCesTurnAnnotation", + "description": "The CES turn annotation." + }, "conversationSummarizationSuggestion": { "$ref": "GoogleCloudContactcenterinsightsV1mainConversationSummarizationSuggestionData", "description": "Conversation summarization suggestion data." @@ -21430,6 +23512,43 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1mainSherlockStep": { + "description": "A step in the agent's reasoning process (Trajectory Step).", + "id": "GoogleCloudContactcenterinsightsV1mainSherlockStep", + "properties": { + "textInput": { + "description": "Output only. Natural language input stimulus.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "thought": { + "description": "Output only. The reasoning or internal monologue of the agent.", + "readOnly": true, + "type": "string" + }, + "toolCalls": { + "description": "Output only. The tool call issued by the agent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1mainToolCall" + }, + "readOnly": true, + "type": "array" + }, + "toolOutput": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. The output response from the tool execution.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1mainSilenceData": { "description": "The data for a silence annotation.", "id": "GoogleCloudContactcenterinsightsV1mainSilenceData", @@ -21616,6 +23735,27 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1mainToolCall": { + "description": "A tool call from the agent.", + "id": "GoogleCloudContactcenterinsightsV1mainToolCall", + "properties": { + "input": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Output only. The input arguments to the tool.", + "readOnly": true, + "type": "object" + }, + "toolName": { + "description": "Output only. The name of the tool being called.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1mainUndeployIssueModelMetadata": { "description": "Metadata for undeploying an issue model.", "id": "GoogleCloudContactcenterinsightsV1mainUndeployIssueModelMetadata", diff --git a/discovery/container-v1.json b/discovery/container-v1.json index b88c8704457..e263a32e46a 100644 --- a/discovery/container-v1.json +++ b/discovery/container-v1.json @@ -902,7 +902,7 @@ ] }, "fetchNodePoolUpgradeInfo": { - "description": "Fetch upgrade information of a specific nodepool.", + "description": "Fetch upgrade information of a specific node pool.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:fetchNodePoolUpgradeInfo", "httpMethod": "GET", "id": "container.projects.locations.clusters.nodePools.fetchNodePoolUpgradeInfo", @@ -911,7 +911,7 @@ ], "parameters": { "name": { - "description": "Required. The name (project, location, cluster, nodepool) of the nodepool to get. Specified in the format `projects/*/locations/*/clusters/*/nodePools/*` or `projects/*/zones/*/clusters/*/nodePools/*`.", + "description": "Required. The name (project, location, cluster, node pool) of the node pool to get. Specified in the format `projects/*/locations/*/clusters/*/nodePools/*` or `projects/*/zones/*/clusters/*/nodePools/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", "required": true, @@ -2213,7 +2213,7 @@ ] }, "fetchNodePoolUpgradeInfo": { - "description": "Fetch upgrade information of a specific nodepool.", + "description": "Fetch upgrade information of a specific node pool.", "flatPath": "v1/projects/{projectsId}/zones/{zonesId}/clusters/{clustersId}/nodePools/{nodePoolsId}:fetchNodePoolUpgradeInfo", "httpMethod": "GET", "id": "container.projects.zones.clusters.nodePools.fetchNodePoolUpgradeInfo", @@ -2222,7 +2222,7 @@ ], "parameters": { "name": { - "description": "Required. The name (project, location, cluster, nodepool) of the nodepool to get. Specified in the format `projects/*/locations/*/clusters/*/nodePools/*` or `projects/*/zones/*/clusters/*/nodePools/*`.", + "description": "Required. The name (project, location, cluster, node pool) of the node pool to get. Specified in the format `projects/*/locations/*/clusters/*/nodePools/*` or `projects/*/zones/*/clusters/*/nodePools/*`.", "location": "path", "pattern": "^projects/[^/]+/zones/[^/]+/clusters/[^/]+/nodePools/[^/]+$", "required": true, @@ -2660,7 +2660,7 @@ } } }, - "revision": "20260209", + "revision": "20260421", "rootUrl": "https://container.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -2691,6 +2691,17 @@ }, "type": "object" }, + "AccurateTimeConfig": { + "description": "AccurateTimeConfig contains configuration for the accurate time synchronization feature.", + "id": "AccurateTimeConfig", + "properties": { + "enablePtpKvmTimeSync": { + "description": "Enables enhanced time synchronization using PTP-KVM.", + "type": "boolean" + } + }, + "type": "object" + }, "AdditionalIPRangesConfig": { "description": "AdditionalIPRangesConfig is the configuration for individual additional subnetwork attached to the cluster", "id": "AdditionalIPRangesConfig", @@ -2840,10 +2851,18 @@ "$ref": "NetworkPolicyConfig", "description": "Configuration for NetworkPolicy. This only tracks whether the addon is enabled or not on the Master, it does not track whether network policy is enabled for the nodes." }, + "nodeReadinessConfig": { + "$ref": "NodeReadinessConfig", + "description": "Optional. Configuration for NodeReadinessController add-on." + }, "parallelstoreCsiDriverConfig": { "$ref": "ParallelstoreCsiDriverConfig", "description": "Configuration for the Cloud Storage Parallelstore CSI driver." }, + "podSnapshotConfig": { + "$ref": "PodSnapshotConfig", + "description": "Optional. Configuration for the Pod Snapshot feature." + }, "rayOperatorConfig": { "$ref": "RayOperatorConfig", "description": "Optional. Configuration for Ray Operator addon." @@ -2852,6 +2871,10 @@ "$ref": "SliceControllerConfig", "description": "Optional. Configuration for the slice controller add-on." }, + "slurmOperatorConfig": { + "$ref": "SlurmOperatorConfig", + "description": "Configuration for the Slurm Operator." + }, "statefulHaConfig": { "$ref": "StatefulHAConfig", "description": "Optional. Configuration for the StatefulHA add-on." @@ -3011,6 +3034,10 @@ "description": "Autopilot is the configuration for Autopilot settings on the cluster.", "id": "Autopilot", "properties": { + "clusterPolicyConfig": { + "$ref": "ClusterPolicyConfig", + "description": "ClusterPolicyConfig denotes cluster level policies that are enforced for the cluster." + }, "enabled": { "description": "Enable Autopilot", "type": "boolean" @@ -3074,7 +3101,7 @@ "type": "object" }, "AutopilotConfig": { - "description": "AutopilotConfig contains configuration of autopilot feature for this nodepool.", + "description": "AutopilotConfig contains configuration of autopilot feature for this node pool.", "id": "AutopilotConfig", "properties": { "enabled": { @@ -3279,7 +3306,7 @@ "type": "object" }, "BootDisk": { - "description": "BootDisk specifies the boot disk configuration for nodepools.", + "description": "BootDisk specifies the boot disk configuration for node pools.", "id": "BootDisk", "properties": { "diskType": { @@ -3352,7 +3379,7 @@ "id": "CertificateAuthorityDomainConfig", "properties": { "fqdns": { - "description": "List of fully qualified domain names (FQDN). Specifying port is supported. Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000", + "description": "List of fully qualified domain names (FQDN). Specifying port is supported. Wildcards are NOT supported. Examples: - `my.customdomain.com` - `10.0.1.2:5000`", "items": { "type": "string" }, @@ -3515,6 +3542,10 @@ "$ref": "ConfidentialNodes", "description": "Configuration of Confidential Nodes. All the nodes in the cluster will be Confidential VM once enabled." }, + "controlPlaneEgress": { + "$ref": "ControlPlaneEgress", + "description": "Configuration for control plane egress control." + }, "controlPlaneEndpointsConfig": { "$ref": "ControlPlaneEndpointsConfig", "description": "Configuration for all cluster's control plane endpoints." @@ -3662,6 +3693,10 @@ "$ref": "MaintenancePolicy", "description": "Configure the maintenance policy for this cluster." }, + "managedMachineLearningDiagnosticsConfig": { + "$ref": "ManagedMachineLearningDiagnosticsConfig", + "description": "Configuration for Managed Machine Learning Diagnostics." + }, "managedOpentelemetryConfig": { "$ref": "ManagedOpenTelemetryConfig", "description": "Configuration for Managed OpenTelemetry pipeline." @@ -3774,10 +3809,18 @@ "readOnly": true, "type": "boolean" }, + "scheduleUpgradeConfig": { + "$ref": "ScheduleUpgradeConfig", + "description": "Optional. Configuration for scheduled upgrades." + }, "secretManagerConfig": { "$ref": "SecretManagerConfig", "description": "Secret CSI driver configuration." }, + "secretSyncConfig": { + "$ref": "SecretSyncConfig", + "description": "Configuration for sync Secret Manager secrets as k8s secrets." + }, "securityPostureConfig": { "$ref": "SecurityPostureConfig", "description": "Optional. Enable/Disable Security Posture API features for the cluster." @@ -3936,6 +3979,29 @@ }, "type": "object" }, + "ClusterPolicyConfig": { + "description": "ClusterPolicyConfig stores the configuration for cluster wide policies.", + "id": "ClusterPolicyConfig", + "properties": { + "noStandardNodePools": { + "description": "Denotes preventing standard node pools and requiring only autopilot node pools.", + "type": "boolean" + }, + "noSystemImpersonation": { + "description": "Denotes preventing impersonation and CSRs for GKE System users.", + "type": "boolean" + }, + "noSystemMutation": { + "description": "Denotes that preventing creation and mutation of resources in GKE managed namespaces and cluster-scoped GKE managed resources .", + "type": "boolean" + }, + "noUnsafeWebhooks": { + "description": "Denotes preventing unsafe webhooks.", + "type": "boolean" + } + }, + "type": "object" + }, "ClusterUpdate": { "description": "ClusterUpdate describes an update to the cluster. Exactly one update can be applied to a cluster with each request, so at most one field can be provided.", "id": "ClusterUpdate", @@ -3964,6 +4030,10 @@ "$ref": "AutoIpamConfig", "description": "AutoIpamConfig contains all information related to Auto IPAM" }, + "desiredAutopilotClusterPolicyConfig": { + "$ref": "ClusterPolicyConfig", + "description": "The desired autopilot cluster policies that to be enforced in the cluster." + }, "desiredAutopilotWorkloadPolicyConfig": { "$ref": "WorkloadPolicyConfig", "description": "WorkloadPolicyConfig is the configuration related to GCW workload policy" @@ -3985,6 +4055,10 @@ "$ref": "ContainerdConfig", "description": "The desired containerd config for the cluster." }, + "desiredControlPlaneEgress": { + "$ref": "ControlPlaneEgress", + "description": "The desired control plane egress control config for the cluster." + }, "desiredControlPlaneEndpointsConfig": { "$ref": "ControlPlaneEndpointsConfig", "description": "Control plane endpoints configuration." @@ -4110,6 +4184,10 @@ "description": "The logging service the cluster should use to write logs. Currently available options: * `logging.googleapis.com/kubernetes` - The Cloud Logging service with a Kubernetes-native resource model * `logging.googleapis.com` - The legacy Cloud Logging service (no longer available as of GKE 1.15). * `none` - no logs will be exported from the cluster. If left as an empty string,`logging.googleapis.com/kubernetes` will be used for GKE 1.14+ or `logging.googleapis.com` for earlier versions.", "type": "string" }, + "desiredManagedMachineLearningDiagnosticsConfig": { + "$ref": "ManagedMachineLearningDiagnosticsConfig", + "description": "The desired managed machine learning diagnostics configuration." + }, "desiredManagedOpentelemetryConfig": { "$ref": "ManagedOpenTelemetryConfig", "description": "The desired managed open telemetry configuration." @@ -4232,6 +4310,10 @@ "$ref": "SecretManagerConfig", "description": "Enable/Disable Secret Manager Config." }, + "desiredSecretSyncConfig": { + "$ref": "SecretSyncConfig", + "description": "Configuration for sync Secret Manager secrets as k8s secrets." + }, "desiredSecurityPostureConfig": { "$ref": "SecurityPostureConfig", "description": "Enable/Disable Security Posture API features for the cluster." @@ -4511,6 +4593,27 @@ }, "type": "object" }, + "ControlPlaneEgress": { + "description": "ControlPlaneEgress defines the settings needed to enable control plane egress control.", + "id": "ControlPlaneEgress", + "properties": { + "mode": { + "description": "Defines the mode of control plane egress.", + "enum": [ + "MODE_UNSPECIFIED", + "VIA_CONTROL_PLANE", + "NONE" + ], + "enumDescriptions": [ + "Default value not specified.", + "Control plane has public IP and no restriction on egress.", + "No public IP on control plane and only internal allowlisted egress." + ], + "type": "string" + } + }, + "type": "object" + }, "ControlPlaneEndpointsConfig": { "description": "Configuration for all of the cluster's control plane endpoints.", "id": "ControlPlaneEndpointsConfig", @@ -4603,6 +4706,17 @@ }, "type": "object" }, + "CustomNodeInit": { + "description": "Support for running custom init code while bootstrapping nodes.", + "id": "CustomNodeInit", + "properties": { + "initScript": { + "$ref": "InitScript", + "description": "Optional. The init script to be executed on the node." + } + }, + "type": "object" + }, "DNSConfig": { "description": "DNSConfig contains the desired set of options for configuring clusterDNS.", "id": "DNSConfig", @@ -4701,7 +4815,10 @@ "CURRENT_STATE_ENCRYPTION_PENDING", "CURRENT_STATE_ENCRYPTION_ERROR", "CURRENT_STATE_DECRYPTION_PENDING", - "CURRENT_STATE_DECRYPTION_ERROR" + "CURRENT_STATE_DECRYPTION_ERROR", + "CURRENT_STATE_ALL_OBJECTS_ENCRYPTION_ENABLED", + "CURRENT_STATE_ALL_OBJECTS_ENCRYPTION_PENDING", + "CURRENT_STATE_ALL_OBJECTS_ENCRYPTION_ERROR" ], "enumDescriptions": [ "Should never be set", @@ -4710,7 +4827,10 @@ "Encryption (or re-encryption with a different CloudKMS key) of Secrets is in progress.", "Encryption (or re-encryption with a different CloudKMS key) of Secrets in etcd encountered an error.", "De-crypting Secrets to plain text in etcd is in progress.", - "De-crypting Secrets to plain text in etcd encountered an error." + "De-crypting Secrets to plain text in etcd encountered an error.", + "Encryption of all objects in the storage is enabled. It does not guarantee that all objects in the storage are encrypted, but eventually they will be.", + "Enablement of the encryption of all objects in storage is pending.", + "Enabling encryption of all objects in storage encountered an error." ], "readOnly": true, "type": "string" @@ -4740,18 +4860,42 @@ "enum": [ "UNKNOWN", "ENCRYPTED", - "DECRYPTED" + "DECRYPTED", + "ALL_OBJECTS_ENCRYPTION_ENABLED" ], "enumDescriptions": [ "Should never be set", "Secrets in etcd are encrypted.", - "Secrets in etcd are stored in plain text (at etcd level) - this is unrelated to Compute Engine level full disk encryption." + "Secrets in etcd are stored in plain text (at etcd level) - this is unrelated to Compute Engine level full disk encryption.", + "Encryption of all objects in the storage is enabled. There is no guarantee that all objects in the storage are encrypted, but eventually they will be." ], "type": "string" } }, "type": "object" }, + "Date": { + "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp", + "id": "Date", + "properties": { + "day": { + "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + "format": "int32", + "type": "integer" + }, + "month": { + "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + "format": "int32", + "type": "integer" + }, + "year": { + "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "DedicatedLocalSsdProfile": { "description": "Provisions a new, separate local NVMe SSD exclusively for swap.", "id": "DedicatedLocalSsdProfile", @@ -5478,7 +5622,7 @@ "type": "array" }, "host": { - "description": "Host configures the registry host/mirror. It supports fully qualified domain names (FQDN) and IP addresses: Specifying port is supported. Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000", + "description": "Host configures the registry host/mirror. It supports fully qualified domain names (FQDNs) and IP addresses. Specifying scheme, port or path is supported. Scheme can only be http or https. Wildcards are NOT supported. Examples: - `my.customdomain.com` - `https://my.customdomain.com/path` - `10.0.1.2:5000`", "type": "string" }, "overridePath": { @@ -5727,6 +5871,33 @@ }, "type": "object" }, + "InitScript": { + "description": "InitScript provide a simply bash script to be executed on the node.", + "id": "InitScript", + "properties": { + "args": { + "description": "Optional. The optional arguments line to be passed to the init script.", + "items": { + "type": "string" + }, + "type": "array" + }, + "gcpSecretManagerSecretUri": { + "description": "The resource name of the secret manager secret hosting the init script. Both global and regional secrets are supported with format below: Global secret: projects/{project}/secrets/{secret}/versions/{version} Regional secret: projects/{project}/locations/{location}/secrets/{secret}/versions/{version} Example: projects/1234567890/secrets/script_1/versions/1. Accept version number only, not support version alias. User can't configure both gcp_secret_manager_secret_uri and gcs_uri.", + "type": "string" + }, + "gcsGeneration": { + "description": "The generation of the init script stored in Gloud Storage. This is the required field to identify the version of the init script. User can get the genetaion from `gcloud storage objects describe gs://BUCKET_NAME/OBJECT_NAME --format=\"value(generation)\"` or from the \"Version history\" tab of the object in the Cloud Console UI.", + "format": "int64", + "type": "string" + }, + "gcsUri": { + "description": "The Cloud Storage URI for storing the init script. Format: gs://BUCKET_NAME/OBJECT_NAME The service account on the node pool must have read access to the object. User can't configure both gcs_uri and gcp_secret_manager_secret_uri.", + "type": "string" + } + }, + "type": "object" + }, "IntraNodeVisibilityConfig": { "description": "IntraNodeVisibilityConfig contains the desired config of the intra-node visibility on this cluster.", "id": "IntraNodeVisibilityConfig", @@ -5821,6 +5992,10 @@ "description": "Parameters that can be configured on Linux nodes.", "id": "LinuxNodeConfig", "properties": { + "accurateTimeConfig": { + "$ref": "AccurateTimeConfig", + "description": "Optional. The accurate time configuration for the node pool." + }, "cgroupMode": { "description": "cgroup_mode specifies the cgroup mode to be used on the node.", "enum": [ @@ -5835,6 +6010,10 @@ ], "type": "string" }, + "customNodeInit": { + "$ref": "CustomNodeInit", + "description": "Optional. Allow users to run arbitrary bash script or container on the node." + }, "hugepages": { "$ref": "HugepagesConfig", "description": "Optional. Amounts for 2M and 1G hugepages" @@ -6051,6 +6230,10 @@ "description": "Configuration for the Lustre CSI driver.", "id": "LustreCsiDriverConfig", "properties": { + "disableMultiNic": { + "description": "When set to true, this disables multi-NIC support for the Lustre CSI driver. By default, GKE enables multi-NIC support, which allows the Lustre CSI driver to automatically detect and configure all suitable network interfaces on a node to maximize I/O performance for demanding workloads.", + "type": "boolean" + }, "enableLegacyLustrePort": { "deprecated": true, "description": "If set to true, the Lustre CSI driver will install Lustre kernel modules using port 6988. This serves as a workaround for a port conflict with the gke-metadata-server. This field is required ONLY under the following conditions: 1. The GKE node version is older than 1.33.2-gke.4655000. 2. You're connecting to a Lustre instance that has the 'gke-support-enabled' flag. Deprecated: This flag is no longer required as of GKE node version 1.33.2-gke.4655000, unless you are connecting to a Lustre instance that has the `gke-support-enabled` flag.", @@ -6130,6 +6313,10 @@ "description": "Exceptions to maintenance window. Non-emergency maintenance should not occur in these windows.", "type": "object" }, + "recurringMaintenanceWindow": { + "$ref": "RecurringMaintenanceWindow", + "description": "RecurringMaintenanceWindow specifies some number of recurring time periods for maintenance to occur. The time windows may be overlapping. If no maintenance windows are set, maintenance can occur at any time. Alternative to RecurringWindow, with renamed fields." + }, "recurringWindow": { "$ref": "RecurringTimeWindow", "description": "RecurringWindow specifies some number of recurring time periods for maintenance to occur. The time windows may be overlapping. If no maintenance windows are set, maintenance can occur at any time." @@ -6137,6 +6324,17 @@ }, "type": "object" }, + "ManagedMachineLearningDiagnosticsConfig": { + "description": "ManagedMachineLearningDiagnosticsConfig is the configuration for the GKE Managed Machine Learning Diagnostics pipeline.", + "id": "ManagedMachineLearningDiagnosticsConfig", + "properties": { + "enabled": { + "description": "Enable/Disable Managed Machine Learning Diagnostics.", + "type": "boolean" + } + }, + "type": "object" + }, "ManagedOpenTelemetryConfig": { "description": "ManagedOpenTelemetryConfig is the configuration for the GKE Managed OpenTelemetry pipeline.", "id": "ManagedOpenTelemetryConfig", @@ -6692,7 +6890,7 @@ "additionalProperties": { "type": "string" }, - "description": "The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/", + "description": "The Kubernetes labels (key/value pairs) to apply to each node. The values in this field are added to the set of default labels Kubernetes applies to nodes. This field has the following restrictions: * Labels must use a valid Kubernetes syntax and character set, as defined in https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#syntax-and-character-set. * This field supports up to 1,024 total characters in a single request. Depending on the Kubernetes version, keys in this field might conflict with the keys of the default labels, which might change which of your labels are applied to the nodes. Assume that the behavior is unpredictable and avoid label key conflicts. For more information about the default labels, see: https://kubernetes.io/docs/reference/labels-annotations-taints/", "type": "object" }, "linuxNodeConfig": { @@ -6821,6 +7019,10 @@ }, "type": "array" }, + "taintConfig": { + "$ref": "TaintConfig", + "description": "Optional. The taint configuration for the node pool." + }, "taints": { "description": "List of kubernetes taints to be applied to each node. For more information, including usage and the valid values, see: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/", "items": { @@ -6863,7 +7065,7 @@ "type": "object" }, "NodeDrainConfig": { - "description": "NodeDrainConfig contains the node drain related configurations for this nodepool.", + "description": "NodeDrainConfig contains the node drain related configurations for this node pool.", "id": "NodeDrainConfig", "properties": { "respectPdbDuringNodePoolDeletion": { @@ -7041,6 +7243,10 @@ "description": "Parameters for node pool-level network config.", "id": "NodeNetworkConfig", "properties": { + "acceleratorNetworkProfile": { + "description": "Immutable. The accelerator network profile for the node pool. For now the only valid value is \"auto\". If specified, the network configuration of the nodes in this node pool will be managed by this profile for the supported machine types, zone, etc.", + "type": "string" + }, "additionalNodeNetworkConfigs": { "description": "We specify the additional node networks for this node pool using this list. Each node network corresponds to an additional interface", "items": { @@ -7074,7 +7280,7 @@ }, "podCidrOverprovisionConfig": { "$ref": "PodCIDROverprovisionConfig", - "description": "[PRIVATE FIELD] Pod CIDR size overprovisioning config for the nodepool. Pod CIDR size per node depends on max_pods_per_node. By default, the value of max_pods_per_node is rounded off to next power of 2 and we then double that to get the size of pod CIDR block per node. Example: max_pods_per_node of 30 would result in 64 IPs (/26). This config can disable the doubling of IPs (we still round off to next power of 2) Example: max_pods_per_node of 30 will result in 32 IPs (/27) when overprovisioning is disabled." + "description": "[PRIVATE FIELD] Pod CIDR size overprovisioning config for the node pool. Pod CIDR size per node depends on max_pods_per_node. By default, the value of max_pods_per_node is rounded off to next power of 2 and we then double that to get the size of pod CIDR block per node. Example: max_pods_per_node of 30 would result in 64 IPs (/26). This config can disable the doubling of IPs (we still round off to next power of 2) Example: max_pods_per_node of 30 will result in 32 IPs (/27) when overprovisioning is disabled." }, "podIpv4CidrBlock": { "description": "The IP address range for pod IPs in this node pool. Only applicable if `create_pod_range` is true. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. `/14`) to have a range chosen with a specific netmask. Set to a [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) notation (e.g. `10.96.0.0/14`) to pick a specific range to use. Only applicable if `ip_allocation_policy.use_ip_aliases` is true. This field cannot be changed after the node pool has been created.", @@ -7269,7 +7475,7 @@ "type": "boolean" }, "locationPolicy": { - "description": "Location policy used when scaling up a nodepool.", + "description": "Location policy used when scaling up a node pool.", "enum": [ "LOCATION_POLICY_UNSPECIFIED", "BALANCED", @@ -7317,7 +7523,7 @@ "type": "object" }, "NodePoolLoggingConfig": { - "description": "NodePoolLoggingConfig specifies logging configuration for nodepools.", + "description": "NodePoolLoggingConfig specifies logging configuration for node pools.", "id": "NodePoolLoggingConfig", "properties": { "variantConfig": { @@ -7328,7 +7534,7 @@ "type": "object" }, "NodePoolUpgradeInfo": { - "description": "NodePoolUpgradeInfo contains the upgrade information of a nodepool.", + "description": "NodePoolUpgradeInfo contains the upgrade information of a node pool.", "id": "NodePoolUpgradeInfo", "properties": { "autoUpgradeStatus": { @@ -7351,11 +7557,11 @@ "type": "array" }, "endOfExtendedSupportTimestamp": { - "description": "The nodepool's current minor version's end of extended support timestamp.", + "description": "The node pool's current minor version's end of extended support timestamp.", "type": "string" }, "endOfStandardSupportTimestamp": { - "description": "The nodepool's current minor version's end of standard support timestamp.", + "description": "The node pool's current minor version's end of standard support timestamp.", "type": "string" }, "minorTargetVersion": { @@ -7397,6 +7603,17 @@ }, "type": "object" }, + "NodeReadinessConfig": { + "description": "Configuration for the GKE Node Readiness Controller.", + "id": "NodeReadinessConfig", + "properties": { + "enabled": { + "description": "Optional. Whether the GKE Node Readiness Controller is enabled for this cluster.", + "type": "boolean" + } + }, + "type": "object" + }, "NodeTaint": { "description": "Kubernetes taint is composed of three fields: key, value, and effect. Effect can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute. See [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration) for more information, including usage and the valid values.", "id": "NodeTaint", @@ -7785,6 +8002,17 @@ }, "type": "object" }, + "PodSnapshotConfig": { + "description": "PodSnapshotConfig is the configuration for GKE Pod Snapshots feature.", + "id": "PodSnapshotConfig", + "properties": { + "enabled": { + "description": "Whether or not the Pod Snapshots feature is enabled.", + "type": "boolean" + } + }, + "type": "object" + }, "PrivateClusterConfig": { "description": "Configuration options for private clusters.", "id": "PrivateClusterConfig", @@ -7900,7 +8128,7 @@ "id": "QueuedProvisioning", "properties": { "enabled": { - "description": "Denotes that this nodepool is QRM specific, meaning nodes can be only obtained through queuing via the Cluster Autoscaler ProvisioningRequest API.", + "description": "Denotes that this node pool is QRM specific, meaning nodes can be only obtained through queuing via the Cluster Autoscaler ProvisioningRequest API.", "type": "boolean" } }, @@ -7980,6 +8208,30 @@ }, "type": "object" }, + "RecurringMaintenanceWindow": { + "description": "Represents an arbitrary window of time that recurs. Will replace RecurringTimeWindow.", + "id": "RecurringMaintenanceWindow", + "properties": { + "delayUntil": { + "$ref": "Date", + "description": "Optional. Specifies the date before which will not be scheduled. Depending on the recurrence, this may be the date the first window appears. Days are measured in the UTC timezone. This setting must be used when INTERVAL>1 or FREQ=WEEKLY/MONTHLY and no BYDAY specified." + }, + "recurrence": { + "description": "Required. An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how this window recurs. For example, to have something repeat every weekday, you'd use: `FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR` To repeat some window daily (equivalent to the DailyMaintenanceWindow): `FREQ=DAILY` For the first weekend of every month: `FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU` The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.", + "type": "string" + }, + "windowDuration": { + "description": "Required. Duration of the window.", + "format": "google-duration", + "type": "string" + }, + "windowStartTime": { + "$ref": "TimeOfDay", + "description": "Required. Start time of the window on days that it is scheduled, assuming UTC timezone." + } + }, + "type": "object" + }, "RecurringTimeWindow": { "description": "Represents an arbitrary window of time that recurs.", "id": "RecurringTimeWindow", @@ -8025,7 +8277,7 @@ "type": "array" }, "server": { - "description": "Defines the host name of the registry server, which will be used to create configuration file as /etc/containerd/hosts.d//hosts.toml. It supports fully qualified domain names (FQDN) and IP addresses: Specifying port is supported. Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000", + "description": "Defines the host name of the registry server, which will be used to create configuration file as /etc/containerd/hosts.d//hosts.toml. It supports fully qualified domain names (FQDN) and IP addresses: Specifying port is supported, while scheme and path are NOT supported. Wildcards are NOT supported. Examples: - `my.customdomain.com` - `10.0.1.2:5000`", "type": "string" } }, @@ -8268,6 +8520,17 @@ }, "type": "object" }, + "ScheduleUpgradeConfig": { + "description": "Configuration for scheduled upgrades on the cluster.", + "id": "ScheduleUpgradeConfig", + "properties": { + "enabled": { + "description": "Optional. Whether or not scheduled upgrades are enabled.", + "type": "boolean" + } + }, + "type": "object" + }, "SecondaryBootDisk": { "description": "SecondaryBootDisk represents a persistent disk attached to a node with special configurations based on its mode.", "id": "SecondaryBootDisk", @@ -8312,6 +8575,21 @@ }, "type": "object" }, + "SecretSyncConfig": { + "description": "Configuration for sync Secret Manager secrets as k8s secrets.", + "id": "SecretSyncConfig", + "properties": { + "enabled": { + "description": "Enable/Disable Secret Sync Config.", + "type": "boolean" + }, + "rotationConfig": { + "$ref": "SyncRotationConfig", + "description": "Rotation config for secret manager." + } + }, + "type": "object" + }, "SecurityBulletinEvent": { "description": "SecurityBulletinEvent is a notification sent to customers when a security bulletin has been posted that they are vulnerable to.", "id": "SecurityBulletinEvent", @@ -8916,6 +9194,17 @@ }, "type": "object" }, + "SlurmOperatorConfig": { + "description": "Configuration for the Slurm Operator.", + "id": "SlurmOperatorConfig", + "properties": { + "enabled": { + "description": "When enabled, it runs a Slurm Operator that manages the set of compute pods for Slurm Cluster.", + "type": "boolean" + } + }, + "type": "object" + }, "SoleTenantConfig": { "description": "SoleTenantConfig contains the NodeAffinities to specify what shared sole tenant node groups should back the node pool.", "id": "SoleTenantConfig", @@ -9132,6 +9421,70 @@ }, "type": "object" }, + "SyncRotationConfig": { + "description": "SyncRotationConfig is config for secret manager auto rotation.", + "id": "SyncRotationConfig", + "properties": { + "enabled": { + "description": "Whether the rotation is enabled.", + "type": "boolean" + }, + "rotationInterval": { + "description": "The interval between two consecutive rotations. Default rotation interval is 2 minutes.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "TaintConfig": { + "description": "TaintConfig contains the configuration for the taints of the node pool.", + "id": "TaintConfig", + "properties": { + "architectureTaintBehavior": { + "description": "Optional. Controls architecture tainting behavior.", + "enum": [ + "ARCHITECTURE_TAINT_BEHAVIOR_UNSPECIFIED", + "NONE", + "ARM" + ], + "enumDescriptions": [ + "Specifies that the behavior is unspecified, defaults to ARM.", + "Disables default architecture taints on the node pool.", + "Taints all the nodes in the node pool with the default ARM taint." + ], + "type": "string" + } + }, + "type": "object" + }, + "TimeOfDay": { + "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": "TimeOfDay", + "properties": { + "hours": { + "description": "Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal 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 an hour. Must be greater than or equal to 0 and less than or equal to 59.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "TimeWindow": { "description": "Represents an arbitrary window of time.", "id": "TimeWindow", @@ -9386,6 +9739,10 @@ "$ref": "NetworkTags", "description": "The desired network tags to be applied to all nodes in the node pool. If this field is not present, the tags will not be changed. Otherwise, the existing network tags will be *replaced* with the provided tags." }, + "taintConfig": { + "$ref": "TaintConfig", + "description": "The taint configuration for the node pool." + }, "taints": { "$ref": "NodeTaints", "description": "The desired node taints to be applied to all nodes in the node pool. If this field is not present, the taints will not be changed. Otherwise, the existing node taints will be *replaced* with the provided taints." @@ -9623,6 +9980,7 @@ "description": "Output only. The state of the upgrade.", "enum": [ "STATE_UNSPECIFIED", + "SCHEDULED", "STARTED", "SUCCEEDED", "FAILED", @@ -9630,6 +9988,7 @@ ], "enumDescriptions": [ "STATE_UNSPECIFIED indicates the state is unspecified.", + "SCHEDULED indicates the upgrade was scheduled.", "STARTED indicates the upgrade has started.", "SUCCEEDED indicates the upgrade has completed successfully.", "FAILED indicates the upgrade has failed.", @@ -9675,7 +10034,7 @@ "Default value if unset. GKE internally defaults the update strategy to SURGE for unspecified strategies.", "blue-green upgrade.", "SURGE is the traditional way of upgrade a node pool. max_surge and max_unavailable determines the level of upgrade parallelism.", - "SHORT_LIVED is the dedicated upgrade strategy for QueuedProvisioning and flex start nodepools scaled up only by enqueueing to the Dynamic Workload Scheduler (DWS)." + "SHORT_LIVED is the dedicated upgrade strategy for QueuedProvisioning and flex start node pools scaled up only by enqueueing to the Dynamic Workload Scheduler (DWS)." ], "type": "string" } diff --git a/discovery/container-v1beta1.json b/discovery/container-v1beta1.json index 752bde7b9c6..da77b65733b 100644 --- a/discovery/container-v1beta1.json +++ b/discovery/container-v1beta1.json @@ -955,7 +955,7 @@ ] }, "fetchNodePoolUpgradeInfo": { - "description": "Fetch upgrade information of a specific nodepool.", + "description": "Fetch upgrade information of a specific node pool.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:fetchNodePoolUpgradeInfo", "httpMethod": "GET", "id": "container.projects.locations.clusters.nodePools.fetchNodePoolUpgradeInfo", @@ -964,7 +964,7 @@ ], "parameters": { "name": { - "description": "Required. The name (project, location, cluster, nodepool) of the nodepool to get. Specified in the format `projects/*/locations/*/clusters/*/nodePools/*` or `projects/*/zones/*/clusters/*/nodePools/*`.", + "description": "Required. The name (project, location, cluster, node pool) of the node pool to get. Specified in the format `projects/*/locations/*/clusters/*/nodePools/*` or `projects/*/zones/*/clusters/*/nodePools/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", "required": true, @@ -2294,7 +2294,7 @@ ] }, "fetchNodePoolUpgradeInfo": { - "description": "Fetch upgrade information of a specific nodepool.", + "description": "Fetch upgrade information of a specific node pool.", "flatPath": "v1beta1/projects/{projectsId}/zones/{zonesId}/clusters/{clustersId}/nodePools/{nodePoolsId}:fetchNodePoolUpgradeInfo", "httpMethod": "GET", "id": "container.projects.zones.clusters.nodePools.fetchNodePoolUpgradeInfo", @@ -2303,7 +2303,7 @@ ], "parameters": { "name": { - "description": "Required. The name (project, location, cluster, nodepool) of the nodepool to get. Specified in the format `projects/*/locations/*/clusters/*/nodePools/*` or `projects/*/zones/*/clusters/*/nodePools/*`.", + "description": "Required. The name (project, location, cluster, node pool) of the node pool to get. Specified in the format `projects/*/locations/*/clusters/*/nodePools/*` or `projects/*/zones/*/clusters/*/nodePools/*`.", "location": "path", "pattern": "^projects/[^/]+/zones/[^/]+/clusters/[^/]+/nodePools/[^/]+$", "required": true, @@ -2741,7 +2741,7 @@ } } }, - "revision": "20260209", + "revision": "20260421", "rootUrl": "https://container.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -2778,6 +2778,17 @@ }, "type": "object" }, + "AccurateTimeConfig": { + "description": "AccurateTimeConfig contains configuration for the accurate time synchronization feature.", + "id": "AccurateTimeConfig", + "properties": { + "enablePtpKvmTimeSync": { + "description": "Enables enhanced time synchronization using PTP-KVM.", + "type": "boolean" + } + }, + "type": "object" + }, "AdditionalIPRangesConfig": { "description": "AdditionalIPRangesConfig is the configuration for individual additional subnetwork attached to the cluster", "id": "AdditionalIPRangesConfig", @@ -2874,6 +2885,10 @@ "description": "Configuration for the addons that can be automatically spun up in the cluster, enabling additional functionality.", "id": "AddonsConfig", "properties": { + "agentSandboxConfig": { + "$ref": "AgentSandboxConfig", + "description": "Optional. Configuration for the AgentSandbox addon." + }, "cloudRunConfig": { "$ref": "CloudRunConfig", "description": "Configuration for the Cloud Run addon. The `IstioConfig` addon must be enabled in order to enable Cloud Run addon. This option can only be enabled at cluster creation time." @@ -2937,6 +2952,10 @@ "$ref": "NetworkPolicyConfig", "description": "Configuration for NetworkPolicy. This only tracks whether the addon is enabled or not on the Master, it does not track whether network policy is enabled for the nodes." }, + "nodeReadinessConfig": { + "$ref": "NodeReadinessConfig", + "description": "Optional. Configuration for NodeReadinessController add-on." + }, "parallelstoreCsiDriverConfig": { "$ref": "ParallelstoreCsiDriverConfig", "description": "Configuration for the Cloud Storage Parallelstore CSI driver." @@ -2953,6 +2972,10 @@ "$ref": "SliceControllerConfig", "description": "Optional. Configuration for the slice controller add-on." }, + "slurmOperatorConfig": { + "$ref": "SlurmOperatorConfig", + "description": "Configuration for the Slurm Operator." + }, "statefulHaConfig": { "$ref": "StatefulHAConfig", "description": "Optional. Configuration for the StatefulHA add-on." @@ -3023,6 +3046,17 @@ }, "type": "object" }, + "AgentSandboxConfig": { + "description": "Configuration for the AgentSandbox addon.", + "id": "AgentSandboxConfig", + "properties": { + "enabled": { + "description": "Optional. Whether AgentSandbox is enabled for this cluster.", + "type": "boolean" + } + }, + "type": "object" + }, "AnonymousAuthenticationConfig": { "description": "AnonymousAuthenticationConfig defines the settings needed to limit endpoints that allow anonymous authentication.", "id": "AnonymousAuthenticationConfig", @@ -3112,6 +3146,10 @@ "description": "Autopilot is the configuration for Autopilot settings on the cluster.", "id": "Autopilot", "properties": { + "clusterPolicyConfig": { + "$ref": "ClusterPolicyConfig", + "description": "ClusterPolicyConfig denotes cluster level policies that are enforced for the cluster." + }, "conversionStatus": { "$ref": "AutopilotConversionStatus", "description": "Output only. ConversionStatus shows conversion status.", @@ -3180,7 +3218,7 @@ "type": "object" }, "AutopilotConfig": { - "description": "AutopilotConfig contains configuration of autopilot feature for this nodepool.", + "description": "AutopilotConfig contains configuration of autopilot feature for this node pool.", "id": "AutopilotConfig", "properties": { "enabled": { @@ -3434,7 +3472,7 @@ "type": "object" }, "BootDisk": { - "description": "BootDisk specifies the boot disk configuration for nodepools.", + "description": "BootDisk specifies the boot disk configuration for node pools.", "id": "BootDisk", "properties": { "diskType": { @@ -3507,7 +3545,7 @@ "id": "CertificateAuthorityDomainConfig", "properties": { "fqdns": { - "description": "List of fully qualified domain names (FQDN). Specifying port is supported. Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000", + "description": "List of fully qualified domain names (FQDN). Specifying port is supported. Wildcards are NOT supported. Examples: - `my.customdomain.com` - `10.0.1.2:5000`", "items": { "type": "string" }, @@ -3674,6 +3712,10 @@ "$ref": "ConfidentialNodes", "description": "Configuration of Confidential Nodes. All the nodes in the cluster will be Confidential VM once enabled." }, + "controlPlaneEgress": { + "$ref": "ControlPlaneEgress", + "description": "Configuration for control plane egress control." + }, "controlPlaneEndpointsConfig": { "$ref": "ControlPlaneEndpointsConfig", "description": "Configuration for all cluster's control plane endpoints." @@ -3826,6 +3868,10 @@ "$ref": "MaintenancePolicy", "description": "Configure the maintenance policy for this cluster." }, + "managedMachineLearningDiagnosticsConfig": { + "$ref": "ManagedMachineLearningDiagnosticsConfig", + "description": "Configuration for managed machine learning diagnostics." + }, "managedOpentelemetryConfig": { "$ref": "ManagedOpenTelemetryConfig", "description": "Configuration for Managed OpenTelemetry pipeline." @@ -3895,6 +3941,10 @@ "$ref": "NodePoolDefaults", "description": "Default NodePool settings for the entire cluster. These settings are overridden if specified on the specific NodePool object." }, + "nodePoolUpgradeConcurrencyConfig": { + "$ref": "NodePoolUpgradeConcurrencyConfig", + "description": "The node pool upgrade concurrency config of the cluster. This field is used for auto upgrade." + }, "nodePools": { "description": "The node pools associated with this cluster. This field should not be set if \"node_config\" or \"initial_node_count\" are specified.", "items": { @@ -3965,6 +4015,10 @@ "readOnly": true, "type": "boolean" }, + "scheduleUpgradeConfig": { + "$ref": "ScheduleUpgradeConfig", + "description": "Optional. Configuration for scheduled upgrades." + }, "secretManagerConfig": { "$ref": "SecretManagerConfig", "description": "Secret CSI driver configuration." @@ -4144,6 +4198,29 @@ }, "type": "object" }, + "ClusterPolicyConfig": { + "description": "ClusterPolicyConfig stores the configuration for cluster wide policies.", + "id": "ClusterPolicyConfig", + "properties": { + "noStandardNodePools": { + "description": "Denotes preventing standard node pools and requiring only autopilot node pools.", + "type": "boolean" + }, + "noSystemImpersonation": { + "description": "Denotes preventing impersonation and CSRs for GKE System users.", + "type": "boolean" + }, + "noSystemMutation": { + "description": "Denotes that preventing creation and mutation of resources in GKE managed namespaces and cluster-scoped GKE managed resources .", + "type": "boolean" + }, + "noUnsafeWebhooks": { + "description": "Denotes preventing unsafe webhooks.", + "type": "boolean" + } + }, + "type": "object" + }, "ClusterTelemetry": { "description": "Telemetry integration for the cluster.", "id": "ClusterTelemetry", @@ -4195,6 +4272,10 @@ "$ref": "AutoIpamConfig", "description": "AutoIpamConfig contains all information related to Auto IPAM" }, + "desiredAutopilotClusterPolicyConfig": { + "$ref": "ClusterPolicyConfig", + "description": "The desired autopilot cluster policies that to be enforced in the cluster." + }, "desiredAutopilotWorkloadPolicyConfig": { "$ref": "WorkloadPolicyConfig", "description": "WorkloadPolicyConfig is the configuration related to GCW workload policy" @@ -4220,6 +4301,10 @@ "$ref": "ContainerdConfig", "description": "The desired containerd config for the cluster." }, + "desiredControlPlaneEgress": { + "$ref": "ControlPlaneEgress", + "description": "The desired control plane egress control config for the cluster." + }, "desiredControlPlaneEndpointsConfig": { "$ref": "ControlPlaneEndpointsConfig", "description": "Control plane endpoints configuration." @@ -4349,6 +4434,10 @@ "description": "The logging service the cluster should use to write logs. Currently available options: * `logging.googleapis.com/kubernetes` - The Cloud Logging service with a Kubernetes-native resource model * `logging.googleapis.com` - The legacy Cloud Logging service (no longer available as of GKE 1.15). * `none` - no logs will be exported from the cluster. If left as an empty string,`logging.googleapis.com/kubernetes` will be used for GKE 1.14+ or `logging.googleapis.com` for earlier versions.", "type": "string" }, + "desiredManagedMachineLearningDiagnosticsConfig": { + "$ref": "ManagedMachineLearningDiagnosticsConfig", + "description": "The desired managed machine learning diagnostics configuration." + }, "desiredManagedOpentelemetryConfig": { "$ref": "ManagedOpenTelemetryConfig", "description": "The desired managed open telemetry configuration." @@ -4418,6 +4507,10 @@ "$ref": "NodePoolLoggingConfig", "description": "The desired node pool logging configuration defaults for the cluster." }, + "desiredNodePoolUpgradeConcurrencyConfig": { + "$ref": "NodePoolUpgradeConcurrencyConfig", + "description": "The desired node pool upgrade concurrency configuration." + }, "desiredNodeVersion": { "description": "The Kubernetes version to change the nodes to (typically an upgrade). Users may specify either explicit versions offered by Kubernetes Engine or version aliases, which have the following behavior: - \"latest\": picks the highest valid Kubernetes version - \"1.X\": picks the highest valid patch+gke.N patch in the 1.X version - \"1.X.Y\": picks the highest valid gke.N patch in the 1.X.Y version - \"1.X.Y-gke.N\": picks an explicit Kubernetes version - \"-\": picks the Kubernetes master version", "type": "string" @@ -4484,6 +4577,10 @@ "$ref": "RollbackSafeUpgrade", "description": "The desired rollback safe upgrade configuration." }, + "desiredScheduleUpgradeConfig": { + "$ref": "ScheduleUpgradeConfig", + "description": "Optional. The desired scheduled upgrades configuration for the cluster." + }, "desiredSecretManagerConfig": { "$ref": "SecretManagerConfig", "description": "Enable/Disable Secret Manager Config." @@ -4822,6 +4919,27 @@ }, "type": "object" }, + "ControlPlaneEgress": { + "description": "ControlPlaneEgress defines the settings needed to enable control plane egress control.", + "id": "ControlPlaneEgress", + "properties": { + "mode": { + "description": "Defines the mode of control plane egress.", + "enum": [ + "MODE_UNSPECIFIED", + "VIA_CONTROL_PLANE", + "NONE" + ], + "enumDescriptions": [ + "Default value not specified.", + "Control plane has public IP and no restriction on egress.", + "No public IP on control plane and only internal allowlisted egress." + ], + "type": "string" + } + }, + "type": "object" + }, "ControlPlaneEndpointsConfig": { "description": "Configuration for all of the cluster's control plane endpoints.", "id": "ControlPlaneEndpointsConfig", @@ -4914,6 +5032,17 @@ }, "type": "object" }, + "CustomNodeInit": { + "description": "Support for running custom init code while bootstrapping nodes.", + "id": "CustomNodeInit", + "properties": { + "initScript": { + "$ref": "InitScript", + "description": "Optional. The init script to be executed on the node." + } + }, + "type": "object" + }, "DNSConfig": { "description": "DNSConfig contains the desired set of options for configuring clusterDNS.", "id": "DNSConfig", @@ -5012,7 +5141,10 @@ "CURRENT_STATE_ENCRYPTION_PENDING", "CURRENT_STATE_ENCRYPTION_ERROR", "CURRENT_STATE_DECRYPTION_PENDING", - "CURRENT_STATE_DECRYPTION_ERROR" + "CURRENT_STATE_DECRYPTION_ERROR", + "CURRENT_STATE_ALL_OBJECTS_ENCRYPTION_ENABLED", + "CURRENT_STATE_ALL_OBJECTS_ENCRYPTION_PENDING", + "CURRENT_STATE_ALL_OBJECTS_ENCRYPTION_ERROR" ], "enumDescriptions": [ "Should never be set", @@ -5021,7 +5153,10 @@ "Encryption (or re-encryption with a different CloudKMS key) of Secrets is in progress.", "Encryption (or re-encryption with a different CloudKMS key) of Secrets in etcd encountered an error.", "De-crypting Secrets to plain text in etcd is in progress.", - "De-crypting Secrets to plain text in etcd encountered an error." + "De-crypting Secrets to plain text in etcd encountered an error.", + "Encryption of all objects in the storage is enabled. It does not guarantee that all objects in the storage are encrypted, but eventually they will be.", + "Enablement of the encryption of all objects in storage is pending.", + "Enabling encryption of all objects in storage encountered an error." ], "readOnly": true, "type": "string" @@ -5051,12 +5186,14 @@ "enum": [ "UNKNOWN", "ENCRYPTED", - "DECRYPTED" + "DECRYPTED", + "ALL_OBJECTS_ENCRYPTION_ENABLED" ], "enumDescriptions": [ "Should never be set", "Secrets in etcd are encrypted.", - "Secrets in etcd are stored in plain text (at etcd level) - this is unrelated to Compute Engine level full disk encryption." + "Secrets in etcd are stored in plain text (at etcd level) - this is unrelated to Compute Engine level full disk encryption.", + "Encryption of all objects in the storage is enabled. There is no guarantee that all objects in the storage are encrypted, but eventually they will be." ], "type": "string" } @@ -5823,7 +5960,7 @@ "type": "array" }, "host": { - "description": "Host configures the registry host/mirror. It supports fully qualified domain names (FQDN) and IP addresses: Specifying port is supported. Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000", + "description": "Host configures the registry host/mirror. It supports fully qualified domain names (FQDNs) and IP addresses. Specifying scheme, port or path is supported. Scheme can only be http or https. Wildcards are NOT supported. Examples: - `my.customdomain.com` - `https://my.customdomain.com/path` - `10.0.1.2:5000`", "type": "string" }, "overridePath": { @@ -6101,6 +6238,33 @@ }, "type": "object" }, + "InitScript": { + "description": "InitScript provide a simply bash script to be executed on the node.", + "id": "InitScript", + "properties": { + "args": { + "description": "Optional. The optional arguments line to be passed to the init script.", + "items": { + "type": "string" + }, + "type": "array" + }, + "gcpSecretManagerSecretUri": { + "description": "The resource name of the secret manager secret hosting the init script. Both global and regional secrets are supported with format below: Global secret: projects/{project}/secrets/{secret}/versions/{version} Regional secret: projects/{project}/locations/{location}/secrets/{secret}/versions/{version} Example: projects/1234567890/secrets/script_1/versions/1. Accept version number only, not support version alias. User can't configure both gcp_secret_manager_secret_uri and gcs_uri.", + "type": "string" + }, + "gcsGeneration": { + "description": "The generation of the init script stored in Gloud Storage. This is the required field to identify the version of the init script. User can get the genetaion from `gcloud storage objects describe gs://BUCKET_NAME/OBJECT_NAME --format=\"value(generation)\"` or from the \"Version history\" tab of the object in the Cloud Console UI.", + "format": "int64", + "type": "string" + }, + "gcsUri": { + "description": "The Cloud Storage URI for storing the init script. Format: gs://BUCKET_NAME/OBJECT_NAME The service account on the node pool must have read access to the object. User can't configure both gcs_uri and gcp_secret_manager_secret_uri.", + "type": "string" + } + }, + "type": "object" + }, "IntraNodeVisibilityConfig": { "description": "IntraNodeVisibilityConfig contains the desired config of the intra-node visibility on this cluster.", "id": "IntraNodeVisibilityConfig", @@ -6232,6 +6396,10 @@ "description": "Parameters that can be configured on Linux nodes.", "id": "LinuxNodeConfig", "properties": { + "accurateTimeConfig": { + "$ref": "AccurateTimeConfig", + "description": "Optional. The accurate time configuration for the node pool." + }, "cgroupMode": { "description": "cgroup_mode specifies the cgroup mode to be used on the node.", "enum": [ @@ -6246,6 +6414,10 @@ ], "type": "string" }, + "customNodeInit": { + "$ref": "CustomNodeInit", + "description": "Optional. Allow users to run arbitrary bash script or container on the node." + }, "hugepages": { "$ref": "HugepagesConfig", "description": "Optional. Amounts for 2M and 1G hugepages" @@ -6509,6 +6681,10 @@ "description": "Configuration for the Lustre CSI driver.", "id": "LustreCsiDriverConfig", "properties": { + "disableMultiNic": { + "description": "When set to true, this disables multi-NIC support for the Lustre CSI driver. By default, GKE enables multi-NIC support, which allows the Lustre CSI driver to automatically detect and configure all suitable network interfaces on a node to maximize I/O performance for demanding workloads.", + "type": "boolean" + }, "enableLegacyLustrePort": { "deprecated": true, "description": "If set to true, the Lustre CSI driver will install Lustre kernel modules using port 6988. This serves as a workaround for a port conflict with the gke-metadata-server. This field is required ONLY under the following conditions: 1. The GKE node version is older than 1.33.2-gke.4655000. 2. You're connecting to a Lustre instance that has the 'gke-support-enabled' flag. Deprecated: This flag is no longer required as of GKE node version 1.33.2-gke.4655000, unless you are connecting to a Lustre instance that has the `gke-support-enabled` flag.", @@ -6588,6 +6764,10 @@ "description": "Exceptions to maintenance window. Non-emergency maintenance should not occur in these windows.", "type": "object" }, + "recurringMaintenanceWindow": { + "$ref": "RecurringMaintenanceWindow", + "description": "RecurringMaintenanceWindow specifies some number of recurring time periods for maintenance to occur. The time windows may be overlapping. If no maintenance windows are set, maintenance can occur at any time. Alternative to RecurringWindow, with renamed fields." + }, "recurringWindow": { "$ref": "RecurringTimeWindow", "description": "RecurringWindow specifies some number of recurring time periods for maintenance to occur. The time windows may be overlapping. If no maintenance windows are set, maintenance can occur at any time." @@ -6595,6 +6775,17 @@ }, "type": "object" }, + "ManagedMachineLearningDiagnosticsConfig": { + "description": "ManagedMachineLearningDiagnosticsConfig is the configuration for the GKE Managed Machine Learning Diagnostics pipeline.", + "id": "ManagedMachineLearningDiagnosticsConfig", + "properties": { + "enabled": { + "description": "Enable/Disable Managed Machine Learning Diagnostics.", + "type": "boolean" + } + }, + "type": "object" + }, "ManagedOpenTelemetryConfig": { "description": "ManagedOpenTelemetryConfig is the configuration for the GKE Managed OpenTelemetry pipeline.", "id": "ManagedOpenTelemetryConfig", @@ -7202,7 +7393,7 @@ "additionalProperties": { "type": "string" }, - "description": "The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/", + "description": "The Kubernetes labels (key/value pairs) to apply to each node. The values in this field are added to the set of default labels Kubernetes applies to nodes. This field has the following restrictions: * Labels must use a valid Kubernetes syntax and character set, as defined in https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#syntax-and-character-set. * This field supports up to 1,024 total characters in a single request. Depending on the Kubernetes version, keys in this field might conflict with the keys of the default labels, which might change which of your labels are applied to the nodes. Assume that the behavior is unpredictable and avoid label key conflicts. For more information about the default labels, see: https://kubernetes.io/docs/reference/labels-annotations-taints/", "type": "object" }, "linuxNodeConfig": { @@ -7331,6 +7522,10 @@ }, "type": "array" }, + "taintConfig": { + "$ref": "TaintConfig", + "description": "Optional. The taint configuration for the node pool." + }, "taints": { "description": "List of kubernetes taints to be applied to each node. For more information, including usage and the valid values, see: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/", "items": { @@ -7377,7 +7572,7 @@ "type": "object" }, "NodeDrainConfig": { - "description": "NodeDrainConfig contains the node drain related configurations for this nodepool.", + "description": "NodeDrainConfig contains the node drain related configurations for this node pool.", "id": "NodeDrainConfig", "properties": { "respectPdbDuringNodePoolDeletion": { @@ -7592,7 +7787,7 @@ }, "podCidrOverprovisionConfig": { "$ref": "PodCIDROverprovisionConfig", - "description": "[PRIVATE FIELD] Pod CIDR size overprovisioning config for the nodepool. Pod CIDR size per node depends on max_pods_per_node. By default, the value of max_pods_per_node is rounded off to next power of 2 and we then double that to get the size of pod CIDR block per node. Example: max_pods_per_node of 30 would result in 64 IPs (/26). This config can disable the doubling of IPs (we still round off to next power of 2) Example: max_pods_per_node of 30 will result in 32 IPs (/27) when overprovisioning is disabled." + "description": "[PRIVATE FIELD] Pod CIDR size overprovisioning config for the node pool. Pod CIDR size per node depends on max_pods_per_node. By default, the value of max_pods_per_node is rounded off to next power of 2 and we then double that to get the size of pod CIDR block per node. Example: max_pods_per_node of 30 would result in 64 IPs (/26). This config can disable the doubling of IPs (we still round off to next power of 2) Example: max_pods_per_node of 30 will result in 32 IPs (/27) when overprovisioning is disabled." }, "podIpv4CidrBlock": { "description": "The IP address range for pod IPs in this node pool. Only applicable if `create_pod_range` is true. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. `/14`) to have a range chosen with a specific netmask. Set to a [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) notation (e.g. `10.96.0.0/14`) to pick a specific range to use. Only applicable if `ip_allocation_policy.use_ip_aliases` is true. This field cannot be changed after the node pool has been created.", @@ -7787,7 +7982,7 @@ "type": "boolean" }, "locationPolicy": { - "description": "Location policy used when scaling up a nodepool.", + "description": "Location policy used when scaling up a node pool.", "enum": [ "LOCATION_POLICY_UNSPECIFIED", "BALANCED", @@ -7835,7 +8030,7 @@ "type": "object" }, "NodePoolLoggingConfig": { - "description": "NodePoolLoggingConfig specifies logging configuration for nodepools.", + "description": "NodePoolLoggingConfig specifies logging configuration for node pools.", "id": "NodePoolLoggingConfig", "properties": { "variantConfig": { @@ -7845,8 +8040,20 @@ }, "type": "object" }, + "NodePoolUpgradeConcurrencyConfig": { + "description": "NodePoolUpgradeConcurrencyConfig is the configuration for the node pool auto upgrade concurrency.", + "id": "NodePoolUpgradeConcurrencyConfig", + "properties": { + "maxCount": { + "description": "If set, no more than max_count node pools can be upgraded concurrently.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "NodePoolUpgradeInfo": { - "description": "NodePoolUpgradeInfo contains the upgrade information of a nodepool.", + "description": "NodePoolUpgradeInfo contains the upgrade information of a node pool.", "id": "NodePoolUpgradeInfo", "properties": { "autoUpgradeStatus": { @@ -7869,11 +8076,11 @@ "type": "array" }, "endOfExtendedSupportTimestamp": { - "description": "The nodepool's current minor version's end of extended support timestamp.", + "description": "The node pool's current minor version's end of extended support timestamp.", "type": "string" }, "endOfStandardSupportTimestamp": { - "description": "The nodepool's current minor version's end of standard support timestamp.", + "description": "The node pool's current minor version's end of standard support timestamp.", "type": "string" }, "minorTargetVersion": { @@ -7915,6 +8122,17 @@ }, "type": "object" }, + "NodeReadinessConfig": { + "description": "Configuration for the GKE Node Readiness Controller.", + "id": "NodeReadinessConfig", + "properties": { + "enabled": { + "description": "Optional. Whether the GKE Node Readiness Controller is enabled for this cluster.", + "type": "boolean" + } + }, + "type": "object" + }, "NodeTaint": { "description": "Kubernetes taint is composed of three fields: key, value, and effect. Effect can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute. See [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration) for more information, including usage and the valid values.", "id": "NodeTaint", @@ -8498,7 +8716,7 @@ "id": "QueuedProvisioning", "properties": { "enabled": { - "description": "Denotes that this nodepool is QRM specific, meaning nodes can be only obtained through queuing via the Cluster Autoscaler ProvisioningRequest API.", + "description": "Denotes that this node pool is QRM specific, meaning nodes can be only obtained through queuing via the Cluster Autoscaler ProvisioningRequest API.", "type": "boolean" } }, @@ -8578,6 +8796,30 @@ }, "type": "object" }, + "RecurringMaintenanceWindow": { + "description": "Represents an arbitrary window of time that recurs. Alternative to RecurringTimeWindow, with renamed fields.", + "id": "RecurringMaintenanceWindow", + "properties": { + "delayUntil": { + "$ref": "Date", + "description": "Optional. Windows will not be scheduled before that day. Depending on the recurrence, this may be the date the first window appears. Days are measured in the UTC timezone. This setting must be used when INTERVAL>1 or FREQ=WEEKLY/MONTHLY and no BYDAY specified." + }, + "recurrence": { + "description": "Required. An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how this window reccurs. For example, to have something repeat every weekday, you'd use: `FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR` To repeat some window daily (equivalent to the DailyMaintenanceWindow): `FREQ=DAILY` For the first weekend of every month: `FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU` The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.", + "type": "string" + }, + "windowDuration": { + "description": "Required. Duration of the window.", + "format": "google-duration", + "type": "string" + }, + "windowStartTime": { + "$ref": "TimeOfDay", + "description": "Required. Start time of the window on days that it is scheduled, assuming UTC timezone." + } + }, + "type": "object" + }, "RecurringTimeWindow": { "description": "Represents an arbitrary window of time that recurs.", "id": "RecurringTimeWindow", @@ -8623,7 +8865,7 @@ "type": "array" }, "server": { - "description": "Defines the host name of the registry server, which will be used to create configuration file as /etc/containerd/hosts.d//hosts.toml. It supports fully qualified domain names (FQDN) and IP addresses: Specifying port is supported. Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000", + "description": "Defines the host name of the registry server, which will be used to create configuration file as /etc/containerd/hosts.d//hosts.toml. It supports fully qualified domain names (FQDN) and IP addresses: Specifying port is supported, while scheme and path are NOT supported. Wildcards are NOT supported. Examples: - `my.customdomain.com` - `10.0.1.2:5000`", "type": "string" } }, @@ -8919,6 +9161,17 @@ }, "type": "object" }, + "ScheduleUpgradeConfig": { + "description": "Configuration for scheduled upgrades on the cluster.", + "id": "ScheduleUpgradeConfig", + "properties": { + "enabled": { + "description": "Optional. Whether or not scheduled upgrades are enabled.", + "type": "boolean" + } + }, + "type": "object" + }, "SecondaryBootDisk": { "description": "SecondaryBootDisk represents a persistent disk attached to a node with special configurations based on its mode.", "id": "SecondaryBootDisk", @@ -9589,6 +9842,17 @@ }, "type": "object" }, + "SlurmOperatorConfig": { + "description": "Configuration for the Slurm Operator.", + "id": "SlurmOperatorConfig", + "properties": { + "enabled": { + "description": "Whether the Slurm Operator is enabled in the cluster.", + "type": "boolean" + } + }, + "type": "object" + }, "SoleTenantConfig": { "description": "SoleTenantConfig contains the NodeAffinities to specify what shared sole tenant node groups should back the node pool.", "id": "SoleTenantConfig", @@ -9821,6 +10085,54 @@ }, "type": "object" }, + "TaintConfig": { + "description": "TaintConfig contains the configuration for the taints of the node pool.", + "id": "TaintConfig", + "properties": { + "architectureTaintBehavior": { + "description": "Optional. Controls architecture tainting behavior.", + "enum": [ + "ARCHITECTURE_TAINT_BEHAVIOR_UNSPECIFIED", + "NONE", + "ARM" + ], + "enumDescriptions": [ + "Specifies that the behavior is unspecified, defaults to ARM.", + "Disables default architecture taints on the node pool.", + "Taints all the nodes in the node pool with the default ARM taint." + ], + "type": "string" + } + }, + "type": "object" + }, + "TimeOfDay": { + "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": "TimeOfDay", + "properties": { + "hours": { + "description": "Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal 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 an hour. Must be greater than or equal to 0 and less than or equal to 59.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "TimeWindow": { "description": "Represents an arbitrary window of time.", "id": "TimeWindow", @@ -10095,6 +10407,10 @@ "$ref": "NetworkTags", "description": "The desired network tags to be applied to all nodes in the node pool. If this field is not present, the tags will not be changed. Otherwise, the existing network tags will be *replaced* with the provided tags." }, + "taintConfig": { + "$ref": "TaintConfig", + "description": "The taint configuration for the node pool." + }, "taints": { "$ref": "NodeTaints", "description": "The desired node taints to be applied to all nodes in the node pool. If this field is not present, the taints will not be changed. Otherwise, the existing node taints will be *replaced* with the provided taints." @@ -10356,6 +10672,7 @@ "description": "Output only. The state of the upgrade.", "enum": [ "STATE_UNSPECIFIED", + "SCHEDULED", "STARTED", "SUCCEEDED", "FAILED", @@ -10363,6 +10680,7 @@ ], "enumDescriptions": [ "STATE_UNSPECIFIED indicates the state is unspecified.", + "SCHEDULED indicates the upgrade was scheduled.", "STARTED indicates the upgrade has started.", "SUCCEEDED indicates the upgrade has completed successfully.", "FAILED indicates the upgrade has failed.", @@ -10412,7 +10730,7 @@ "Default value if unset. GKE internally defaults the update strategy to SURGE for unspecified strategies.", "blue-green upgrade.", "SURGE is the traditional way of upgrading a node pool. max_surge and max_unavailable determines the level of upgrade parallelism.", - "SHORT_LIVED is the dedicated upgrade strategy for QueuedProvisioning and flex start nodepools scaled up only by enqueueing to the Dynamic Workload Scheduler (DWS)." + "SHORT_LIVED is the dedicated upgrade strategy for QueuedProvisioning and flex start node pools scaled up only by enqueueing to the Dynamic Workload Scheduler (DWS)." ], "type": "string" } diff --git a/discovery/containeranalysis-v1.json b/discovery/containeranalysis-v1.json index 57343258186..55f9eaafe29 100644 --- a/discovery/containeranalysis-v1.json +++ b/discovery/containeranalysis-v1.json @@ -1715,9 +1715,33 @@ } } }, - "revision": "20260220", + "revision": "20260423", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { + "AISkillAnalysisNote": { + "description": "AISkillAnalysisNote provides the metadata of an AI-based skill analysis.", + "id": "AISkillAnalysisNote", + "properties": {}, + "type": "object" + }, + "AISkillAnalysisOccurrence": { + "description": "AISkillAnalysisOccurrence provides the results of an AI-based skill analysis.", + "id": "AISkillAnalysisOccurrence", + "properties": { + "findings": { + "description": "Findings produced by the analysis.", + "items": { + "$ref": "Finding" + }, + "type": "array" + }, + "skillName": { + "description": "Name of the skill that produced this analysis.", + "type": "string" + } + }, + "type": "object" + }, "AliasContext": { "description": "An alias to a repo revision.", "id": "AliasContext", @@ -2862,6 +2886,13 @@ "description": "Artifacts produced by a build that should be uploaded upon successful completion of all build steps.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts", "properties": { + "genericArtifacts": { + "description": "Optional. A list of generic artifacts to be uploaded to Artifact Registry upon successful completion of all build steps. If any artifacts fail to be pushed, the build is marked FAILURE.", + "items": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact" + }, + "type": "array" + }, "goModules": { "description": "Optional. A list of Go modules to be uploaded to Artifact Registry upon successful completion of all build steps. If any objects fail to be pushed, the build is marked FAILURE.", "items": { @@ -2894,6 +2925,13 @@ "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects", "description": "A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the specified Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE." }, + "oci": { + "description": "Optional. A list of OCI images to be uploaded to Artifact Registry upon successful completion of all build steps. OCI images in the specified paths will be uploaded to the specified Artifact Registry repository using the builder service account's credentials. If any images fail to be pushed, the build is marked FAILURE.", + "items": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci" + }, + "type": "array" + }, "pythonPackages": { "description": "A list of Python packages to be uploaded to Artifact Registry upon successful completion of all build steps. The build service account credentials will be used to perform the upload. If any objects fail to be pushed, the build is marked FAILURE.", "items": { @@ -2927,6 +2965,21 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact": { + "description": "Generic artifact to upload to Artifact Registry upon successful completion of all build steps.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact", + "properties": { + "folder": { + "description": "Required. Path to the generic artifact in the build's workspace to be uploaded to Artifact Registry.", + "type": "string" + }, + "registryPath": { + "description": "Required. Registry path to upload the generic artifact to, in the form projects/$PROJECT/locations/$LOCATION/repositories/$REPO/packages/$PACKAGE/versions/$VERSION", + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGoModule": { "description": "Go module to upload to Artifact Registry upon successful completion of all build steps. A module refers to all dependencies in a go.mod file.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGoModule", @@ -3004,6 +3057,28 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci": { + "description": "OCI image to upload to Artifact Registry upon successful completion of all build steps.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci", + "properties": { + "file": { + "description": "Required. Path on the local file system where to find the container to upload. e.g. /workspace/my-image.tar", + "type": "string" + }, + "registryPath": { + "description": "Required. Registry path to upload the container to. e.g. us-east1-docker.pkg.dev/my-project/my-repo/my-image", + "type": "string" + }, + "tags": { + "description": "Optional. Tags to apply to the uploaded image. e.g. latest, 1.0.0", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage": { "description": "Python package to upload to Artifact Registry upon successful completion of all build steps. A package can encapsulate multiple objects to be uploaded to a single repository.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage", @@ -3438,14 +3513,16 @@ "SHA256", "MD5", "GO_MODULE_H1", - "SHA512" + "SHA512", + "DIRSUM_SHA256" ], "enumDescriptions": [ "No hash requested.", "Use a sha256 hash.", "Use a md5 hash.", "Dirhash of a Go module's source code which is then hex-encoded.", - "Use a sha512 hash." + "Use a sha512 hash.", + "Use a dirsum_sha256 hash." ], "type": "string" }, @@ -3550,6 +3627,13 @@ "description": "Output only. Stores timing information for pulling this build step's builder image only.", "readOnly": true }, + "results": { + "description": "Declaration of results for this build step.", + "items": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult" + }, + "type": "array" + }, "script": { "description": "A shell script to be executed in the step. When script is provided, the user cannot specify the entrypoint or args.", "type": "string" @@ -3617,6 +3701,20 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults": { + "description": "Results for a build step.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults", + "properties": { + "results": { + "additionalProperties": { + "type": "string" + }, + "description": "Results for a build step.", + "type": "object" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning": { "description": "A non-fatal problem encountered during the execution of the build.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning", @@ -3661,6 +3759,21 @@ "description": "Name used to push the container image to Google Container Registry, as presented to `docker push`.", "type": "string" }, + "ociMediaType": { + "description": "Output only. The OCI media type of the artifact. Non-OCI images, such as Docker images, will have an unspecified value.", + "enum": [ + "OCI_MEDIA_TYPE_UNSPECIFIED", + "IMAGE_MANIFEST", + "IMAGE_INDEX" + ], + "enumDescriptions": [ + "Default value.", + "The artifact is an image manifest, which represents a single image with all its layers.", + "The artifact is an image index, which can contain a list of image manifests." + ], + "readOnly": true, + "type": "string" + }, "pushTiming": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan", "description": "Output only. Stores timing information for pushing the specified image.", @@ -3696,6 +3809,10 @@ "description": "If set to true disable all dependency fetching (ignoring the default source as well).", "type": "boolean" }, + "genericArtifact": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency", + "description": "Represents a generic artifact as a build dependency." + }, "gitSource": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGitSourceDependency", "description": "Represents a git repository as a build dependency." @@ -3703,6 +3820,21 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency": { + "description": "Represents a generic artifact as a build dependency.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency", + "properties": { + "destPath": { + "description": "Required. Where the artifact files should be placed on the worker.", + "type": "string" + }, + "resource": { + "description": "Required. The location to download the artifact files from. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1", + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGitSourceDependency": { "description": "Represents a git repository as a build dependency.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGitSourceDependency", @@ -3831,14 +3963,16 @@ "SHA256", "MD5", "GO_MODULE_H1", - "SHA512" + "SHA512", + "DIRSUM_SHA256" ], "enumDescriptions": [ "No hash requested.", "Use a sha256 hash.", "Use a md5 hash.", "Dirhash of a Go module's source code which is then hex-encoded.", - "Use a sha512 hash." + "Use a sha512 hash.", + "Use a dirsum_sha256 hash." ], "type": "string" }, @@ -3938,6 +4072,21 @@ }, "type": "array" }, + "buildStepResults": { + "additionalProperties": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults" + }, + "description": "Results for build steps. step_id -> ", + "type": "object" + }, + "genericArtifacts": { + "description": "Output only. Generic artifacts uploaded to Artifact Registry at the end of the build.", + "items": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact" + }, + "readOnly": true, + "type": "array" + }, "goModules": { "description": "Optional. Go module artifacts uploaded to Artifact Registry at the end of the build.", "items": { @@ -4104,6 +4253,25 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult": { + "description": "StepResult is the declaration of a result for a build step.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult", + "properties": { + "attestationContent": { + "description": "Optional. The content of the attestation to be generated.", + "type": "string" + }, + "attestationType": { + "description": "Optional. The type of attestation to be generated.", + "type": "string" + }, + "name": { + "description": "Required. The name of the result.", + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource": { "description": "Location of the source in an archive file in Cloud Storage.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource", @@ -4175,6 +4343,41 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact": { + "description": "A generic artifact uploaded to Artifact Registry using the GenericArtifact directive.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact", + "properties": { + "artifactFingerprint": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", + "description": "Output only. The hash of the whole artifact.", + "readOnly": true + }, + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, + "fileHashes": { + "additionalProperties": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes" + }, + "description": "Output only. The file hashes that make up the generic artifact.", + "readOnly": true, + "type": "object" + }, + "pushTiming": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan", + "description": "Output only. Stores timing information for pushing the specified artifact.", + "readOnly": true + }, + "uri": { + "description": "Output only. URI of the uploaded artifact. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGoModule": { "description": "A Go module artifact uploaded to Artifact Registry using the GoModule directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGoModule", @@ -4491,7 +4694,8 @@ "DSSE_ATTESTATION", "VULNERABILITY_ASSESSMENT", "SBOM_REFERENCE", - "SECRET" + "SECRET", + "AI_SKILL_ANALYSIS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -4507,7 +4711,8 @@ "This represents a DSSE attestation Note", "This represents a Vulnerability Assessment.", "This represents an SBOM Reference.", - "This represents a secret." + "This represents a secret.", + "This represents an AI skill analysis." ], "type": "string" } @@ -4772,6 +4977,41 @@ }, "type": "object" }, + "Finding": { + "description": "Finding provides details for a single finding within an AISkillAnalysisOccurrence.", + "id": "Finding", + "properties": { + "category": { + "description": "Category of the finding.", + "type": "string" + }, + "description": { + "description": "Detailed description of the finding.", + "type": "string" + }, + "filePath": { + "description": "Path to the file where the finding was detected.", + "type": "string" + }, + "ruleId": { + "description": "Unique identifier of the rule that produced this finding.", + "type": "string" + }, + "severity": { + "description": "Severity of the finding.", + "type": "string" + }, + "snippet": { + "description": "Code snippet relevant to the finding.", + "type": "string" + }, + "title": { + "description": "Title of the finding.", + "type": "string" + } + }, + "type": "object" + }, "Fingerprint": { "description": "A set of properties that uniquely identify a given Docker image.", "id": "Fingerprint", @@ -4924,6 +5164,11 @@ "layerDetails": { "$ref": "LayerDetails", "description": "Each package found in a file should have its own layer metadata (that is, information from the origin layer of the package)." + }, + "lineNumber": { + "description": "Line number in the file where the package was found. Optional field that only applies to source repository scanning.", + "format": "int32", + "type": "integer" } }, "type": "object" @@ -5468,6 +5713,10 @@ "description": "A type of analysis that can be done for a resource.", "id": "Note", "properties": { + "aiSkillAnalysis": { + "$ref": "AISkillAnalysisNote", + "description": "A note describing an AI skill analysis." + }, "attestation": { "$ref": "AttestationNote", "description": "A note describing an attestation role." @@ -5522,7 +5771,8 @@ "DSSE_ATTESTATION", "VULNERABILITY_ASSESSMENT", "SBOM_REFERENCE", - "SECRET" + "SECRET", + "AI_SKILL_ANALYSIS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -5538,7 +5788,8 @@ "This represents a DSSE attestation Note", "This represents a Vulnerability Assessment.", "This represents an SBOM Reference.", - "This represents a secret." + "This represents a secret.", + "This represents an AI skill analysis." ], "type": "string" }, @@ -5604,6 +5855,15 @@ "description": "An instance of an analysis type that has been found on a resource.", "id": "Occurrence", "properties": { + "advisoryPublishTime": { + "description": "The time this advisory was published by the source.", + "format": "google-datetime", + "type": "string" + }, + "aiSkillAnalysis": { + "$ref": "AISkillAnalysisOccurrence", + "description": "Describes an AI skill analysis." + }, "attestation": { "$ref": "AttestationOccurrence", "description": "Describes an attestation of an artifact." @@ -5657,7 +5917,8 @@ "DSSE_ATTESTATION", "VULNERABILITY_ASSESSMENT", "SBOM_REFERENCE", - "SECRET" + "SECRET", + "AI_SKILL_ANALYSIS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -5673,7 +5934,8 @@ "This represents a DSSE attestation Note", "This represents a Vulnerability Assessment.", "This represents an SBOM Reference.", - "This represents a secret." + "This represents a secret.", + "This represents an AI skill analysis." ], "type": "string" }, diff --git a/discovery/containeranalysis-v1alpha1.json b/discovery/containeranalysis-v1alpha1.json index a734c4e3c49..ab0a7425f2a 100644 --- a/discovery/containeranalysis-v1alpha1.json +++ b/discovery/containeranalysis-v1alpha1.json @@ -829,7 +829,8 @@ "DSSE_ATTESTATION", "VULNERABILITY_ASSESSMENT", "SBOM_REFERENCE", - "SECRET" + "SECRET", + "AI_SKILL_ANALYSIS" ], "enumDescriptions": [ "Unknown", @@ -849,7 +850,8 @@ "This represents a DSSE attestation Note", "This represents a Vulnerability Assessment.", "This represents a reference to an SBOM.", - "This represents a secret." + "This represents a secret.", + "This represents an AI skill analysis." ], "location": "query", "type": "string" @@ -1452,9 +1454,33 @@ } } }, - "revision": "20260220", + "revision": "20260423", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { + "AISkillAnalysisNote": { + "description": "AISkillAnalysisNote provides the metadata of an AI-based skill analysis.", + "id": "AISkillAnalysisNote", + "properties": {}, + "type": "object" + }, + "AISkillAnalysisOccurrence": { + "description": "AISkillAnalysisOccurrence provides the results of an AI-based skill analysis.", + "id": "AISkillAnalysisOccurrence", + "properties": { + "findings": { + "description": "Optional. Findings produced by the analysis.", + "items": { + "$ref": "Finding" + }, + "type": "array" + }, + "skillName": { + "description": "Optional. Name of the skill that produced this analysis.", + "type": "string" + } + }, + "type": "object" + }, "AnalysisCompleted": { "description": "Indicates which analysis completed successfully. Multiple types of analysis can be performed on a single resource.", "id": "AnalysisCompleted", @@ -2406,6 +2432,13 @@ "description": "Artifacts produced by a build that should be uploaded upon successful completion of all build steps.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts", "properties": { + "genericArtifacts": { + "description": "Optional. A list of generic artifacts to be uploaded to Artifact Registry upon successful completion of all build steps. If any artifacts fail to be pushed, the build is marked FAILURE.", + "items": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact" + }, + "type": "array" + }, "goModules": { "description": "Optional. A list of Go modules to be uploaded to Artifact Registry upon successful completion of all build steps. If any objects fail to be pushed, the build is marked FAILURE.", "items": { @@ -2438,6 +2471,13 @@ "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects", "description": "A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the specified Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE." }, + "oci": { + "description": "Optional. A list of OCI images to be uploaded to Artifact Registry upon successful completion of all build steps. OCI images in the specified paths will be uploaded to the specified Artifact Registry repository using the builder service account's credentials. If any images fail to be pushed, the build is marked FAILURE.", + "items": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci" + }, + "type": "array" + }, "pythonPackages": { "description": "A list of Python packages to be uploaded to Artifact Registry upon successful completion of all build steps. The build service account credentials will be used to perform the upload. If any objects fail to be pushed, the build is marked FAILURE.", "items": { @@ -2471,6 +2511,21 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact": { + "description": "Generic artifact to upload to Artifact Registry upon successful completion of all build steps.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact", + "properties": { + "folder": { + "description": "Required. Path to the generic artifact in the build's workspace to be uploaded to Artifact Registry.", + "type": "string" + }, + "registryPath": { + "description": "Required. Registry path to upload the generic artifact to, in the form projects/$PROJECT/locations/$LOCATION/repositories/$REPO/packages/$PACKAGE/versions/$VERSION", + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGoModule": { "description": "Go module to upload to Artifact Registry upon successful completion of all build steps. A module refers to all dependencies in a go.mod file.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGoModule", @@ -2548,6 +2603,28 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci": { + "description": "OCI image to upload to Artifact Registry upon successful completion of all build steps.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci", + "properties": { + "file": { + "description": "Required. Path on the local file system where to find the container to upload. e.g. /workspace/my-image.tar", + "type": "string" + }, + "registryPath": { + "description": "Required. Registry path to upload the container to. e.g. us-east1-docker.pkg.dev/my-project/my-repo/my-image", + "type": "string" + }, + "tags": { + "description": "Optional. Tags to apply to the uploaded image. e.g. latest, 1.0.0", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage": { "description": "Python package to upload to Artifact Registry upon successful completion of all build steps. A package can encapsulate multiple objects to be uploaded to a single repository.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage", @@ -2982,14 +3059,16 @@ "SHA256", "MD5", "GO_MODULE_H1", - "SHA512" + "SHA512", + "DIRSUM_SHA256" ], "enumDescriptions": [ "No hash requested.", "Use a sha256 hash.", "Use a md5 hash.", "Dirhash of a Go module's source code which is then hex-encoded.", - "Use a sha512 hash." + "Use a sha512 hash.", + "Use a dirsum_sha256 hash." ], "type": "string" }, @@ -3094,6 +3173,13 @@ "description": "Output only. Stores timing information for pulling this build step's builder image only.", "readOnly": true }, + "results": { + "description": "Declaration of results for this build step.", + "items": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult" + }, + "type": "array" + }, "script": { "description": "A shell script to be executed in the step. When script is provided, the user cannot specify the entrypoint or args.", "type": "string" @@ -3161,6 +3247,20 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults": { + "description": "Results for a build step.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults", + "properties": { + "results": { + "additionalProperties": { + "type": "string" + }, + "description": "Results for a build step.", + "type": "object" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning": { "description": "A non-fatal problem encountered during the execution of the build.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning", @@ -3205,6 +3305,21 @@ "description": "Name used to push the container image to Google Container Registry, as presented to `docker push`.", "type": "string" }, + "ociMediaType": { + "description": "Output only. The OCI media type of the artifact. Non-OCI images, such as Docker images, will have an unspecified value.", + "enum": [ + "OCI_MEDIA_TYPE_UNSPECIFIED", + "IMAGE_MANIFEST", + "IMAGE_INDEX" + ], + "enumDescriptions": [ + "Default value.", + "The artifact is an image manifest, which represents a single image with all its layers.", + "The artifact is an image index, which can contain a list of image manifests." + ], + "readOnly": true, + "type": "string" + }, "pushTiming": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan", "description": "Output only. Stores timing information for pushing the specified image.", @@ -3240,6 +3355,10 @@ "description": "If set to true disable all dependency fetching (ignoring the default source as well).", "type": "boolean" }, + "genericArtifact": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency", + "description": "Represents a generic artifact as a build dependency." + }, "gitSource": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGitSourceDependency", "description": "Represents a git repository as a build dependency." @@ -3247,6 +3366,21 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency": { + "description": "Represents a generic artifact as a build dependency.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency", + "properties": { + "destPath": { + "description": "Required. Where the artifact files should be placed on the worker.", + "type": "string" + }, + "resource": { + "description": "Required. The location to download the artifact files from. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1", + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGitSourceDependency": { "description": "Represents a git repository as a build dependency.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGitSourceDependency", @@ -3375,14 +3509,16 @@ "SHA256", "MD5", "GO_MODULE_H1", - "SHA512" + "SHA512", + "DIRSUM_SHA256" ], "enumDescriptions": [ "No hash requested.", "Use a sha256 hash.", "Use a md5 hash.", "Dirhash of a Go module's source code which is then hex-encoded.", - "Use a sha512 hash." + "Use a sha512 hash.", + "Use a dirsum_sha256 hash." ], "type": "string" }, @@ -3482,6 +3618,21 @@ }, "type": "array" }, + "buildStepResults": { + "additionalProperties": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults" + }, + "description": "Results for build steps. step_id -> ", + "type": "object" + }, + "genericArtifacts": { + "description": "Output only. Generic artifacts uploaded to Artifact Registry at the end of the build.", + "items": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact" + }, + "readOnly": true, + "type": "array" + }, "goModules": { "description": "Optional. Go module artifacts uploaded to Artifact Registry at the end of the build.", "items": { @@ -3648,6 +3799,25 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult": { + "description": "StepResult is the declaration of a result for a build step.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult", + "properties": { + "attestationContent": { + "description": "Optional. The content of the attestation to be generated.", + "type": "string" + }, + "attestationType": { + "description": "Optional. The type of attestation to be generated.", + "type": "string" + }, + "name": { + "description": "Required. The name of the result.", + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource": { "description": "Location of the source in an archive file in Cloud Storage.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource", @@ -3719,6 +3889,41 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact": { + "description": "A generic artifact uploaded to Artifact Registry using the GenericArtifact directive.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact", + "properties": { + "artifactFingerprint": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", + "description": "Output only. The hash of the whole artifact.", + "readOnly": true + }, + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, + "fileHashes": { + "additionalProperties": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes" + }, + "description": "Output only. The file hashes that make up the generic artifact.", + "readOnly": true, + "type": "object" + }, + "pushTiming": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan", + "description": "Output only. Stores timing information for pushing the specified artifact.", + "readOnly": true + }, + "uri": { + "description": "Output only. URI of the uploaded artifact. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGoModule": { "description": "A Go module artifact uploaded to Artifact Registry using the GoModule directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGoModule", @@ -4167,7 +4372,8 @@ "DSSE_ATTESTATION", "VULNERABILITY_ASSESSMENT", "SBOM_REFERENCE", - "SECRET" + "SECRET", + "AI_SKILL_ANALYSIS" ], "enumDescriptions": [ "Unknown", @@ -4187,7 +4393,8 @@ "This represents a DSSE attestation Note", "This represents a Vulnerability Assessment.", "This represents a reference to an SBOM.", - "This represents a secret." + "This represents a secret.", + "This represents an AI skill analysis." ], "type": "string" } @@ -4465,6 +4672,11 @@ "layerDetails": { "$ref": "LayerDetails", "description": "Each package found in a file should have its own layer metadata (that is, information from the origin layer of the package)." + }, + "lineNumber": { + "description": "Line number in the file where the package is found. Optional field that only applies to source repository scanning.", + "format": "int32", + "type": "integer" } }, "type": "object" @@ -4567,6 +4779,41 @@ }, "type": "object" }, + "Finding": { + "description": "Finding provides details for a single finding within an AISkillAnalysisOccurrence.", + "id": "Finding", + "properties": { + "category": { + "description": "Optional. Category of the finding.", + "type": "string" + }, + "description": { + "description": "Optional. Detailed description of the finding.", + "type": "string" + }, + "filePath": { + "description": "Optional. Path to the file where the finding was detected.", + "type": "string" + }, + "ruleId": { + "description": "Optional. Unique identifier of the rule that produced this finding.", + "type": "string" + }, + "severity": { + "description": "Optional. Severity of the finding.", + "type": "string" + }, + "snippet": { + "description": "Optional. Code snippet relevant to the finding.", + "type": "string" + }, + "title": { + "description": "Optional. Title of the finding.", + "type": "string" + } + }, + "type": "object" + }, "Fingerprint": { "description": "A set of properties that uniquely identify a given Docker image.", "id": "Fingerprint", @@ -5386,6 +5633,10 @@ "description": "Provides a detailed description of a `Note`.", "id": "Note", "properties": { + "aiSkillAnalysis": { + "$ref": "AISkillAnalysisNote", + "description": "A note describing an AI skill analysis." + }, "attestationAuthority": { "$ref": "AttestationAuthority", "description": "A note describing an attestation role." @@ -5444,7 +5695,8 @@ "DSSE_ATTESTATION", "VULNERABILITY_ASSESSMENT", "SBOM_REFERENCE", - "SECRET" + "SECRET", + "AI_SKILL_ANALYSIS" ], "enumDescriptions": [ "Unknown", @@ -5464,7 +5716,8 @@ "This represents a DSSE attestation Note", "This represents a Vulnerability Assessment.", "This represents a reference to an SBOM.", - "This represents a secret." + "This represents a secret.", + "This represents an AI skill analysis." ], "type": "string" }, @@ -5539,6 +5792,10 @@ "description": "`Occurrence` includes information about analysis occurrences for an image.", "id": "Occurrence", "properties": { + "aiSkillAnalysis": { + "$ref": "AISkillAnalysisOccurrence", + "description": "This represents an AI skill analysis occurrence" + }, "attestation": { "$ref": "Attestation", "description": "Describes an attestation of an artifact." @@ -5600,7 +5857,8 @@ "DSSE_ATTESTATION", "VULNERABILITY_ASSESSMENT", "SBOM_REFERENCE", - "SECRET" + "SECRET", + "AI_SKILL_ANALYSIS" ], "enumDescriptions": [ "Unknown", @@ -5620,7 +5878,8 @@ "This represents a DSSE attestation Note", "This represents a Vulnerability Assessment.", "This represents a reference to an SBOM.", - "This represents a secret." + "This represents a secret.", + "This represents an AI skill analysis." ], "type": "string" }, diff --git a/discovery/containeranalysis-v1beta1.json b/discovery/containeranalysis-v1beta1.json index 0fede064377..c639bb908b6 100644 --- a/discovery/containeranalysis-v1beta1.json +++ b/discovery/containeranalysis-v1beta1.json @@ -1771,9 +1771,33 @@ } } }, - "revision": "20260220", + "revision": "20260423", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { + "AISkillAnalysisNote": { + "description": "AISkillAnalysisNote provides the metadata of an AI-based skill analysis.", + "id": "AISkillAnalysisNote", + "properties": {}, + "type": "object" + }, + "AISkillAnalysisOccurrence": { + "description": "AISkillAnalysisOccurrence provides the results of an AI-based skill analysis.", + "id": "AISkillAnalysisOccurrence", + "properties": { + "findings": { + "description": "Findings produced by the analysis.", + "items": { + "$ref": "Finding" + }, + "type": "array" + }, + "skillName": { + "description": "Name of the skill that produced this analysis.", + "type": "string" + } + }, + "type": "object" + }, "AliasContext": { "description": "An alias to a repo revision.", "id": "AliasContext", @@ -2784,6 +2808,13 @@ "description": "Artifacts produced by a build that should be uploaded upon successful completion of all build steps.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts", "properties": { + "genericArtifacts": { + "description": "Optional. A list of generic artifacts to be uploaded to Artifact Registry upon successful completion of all build steps. If any artifacts fail to be pushed, the build is marked FAILURE.", + "items": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact" + }, + "type": "array" + }, "goModules": { "description": "Optional. A list of Go modules to be uploaded to Artifact Registry upon successful completion of all build steps. If any objects fail to be pushed, the build is marked FAILURE.", "items": { @@ -2816,6 +2847,13 @@ "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects", "description": "A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the specified Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE." }, + "oci": { + "description": "Optional. A list of OCI images to be uploaded to Artifact Registry upon successful completion of all build steps. OCI images in the specified paths will be uploaded to the specified Artifact Registry repository using the builder service account's credentials. If any images fail to be pushed, the build is marked FAILURE.", + "items": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci" + }, + "type": "array" + }, "pythonPackages": { "description": "A list of Python packages to be uploaded to Artifact Registry upon successful completion of all build steps. The build service account credentials will be used to perform the upload. If any objects fail to be pushed, the build is marked FAILURE.", "items": { @@ -2849,6 +2887,21 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact": { + "description": "Generic artifact to upload to Artifact Registry upon successful completion of all build steps.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact", + "properties": { + "folder": { + "description": "Required. Path to the generic artifact in the build's workspace to be uploaded to Artifact Registry.", + "type": "string" + }, + "registryPath": { + "description": "Required. Registry path to upload the generic artifact to, in the form projects/$PROJECT/locations/$LOCATION/repositories/$REPO/packages/$PACKAGE/versions/$VERSION", + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGoModule": { "description": "Go module to upload to Artifact Registry upon successful completion of all build steps. A module refers to all dependencies in a go.mod file.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGoModule", @@ -2926,6 +2979,28 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci": { + "description": "OCI image to upload to Artifact Registry upon successful completion of all build steps.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci", + "properties": { + "file": { + "description": "Required. Path on the local file system where to find the container to upload. e.g. /workspace/my-image.tar", + "type": "string" + }, + "registryPath": { + "description": "Required. Registry path to upload the container to. e.g. us-east1-docker.pkg.dev/my-project/my-repo/my-image", + "type": "string" + }, + "tags": { + "description": "Optional. Tags to apply to the uploaded image. e.g. latest, 1.0.0", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage": { "description": "Python package to upload to Artifact Registry upon successful completion of all build steps. A package can encapsulate multiple objects to be uploaded to a single repository.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage", @@ -3360,14 +3435,16 @@ "SHA256", "MD5", "GO_MODULE_H1", - "SHA512" + "SHA512", + "DIRSUM_SHA256" ], "enumDescriptions": [ "No hash requested.", "Use a sha256 hash.", "Use a md5 hash.", "Dirhash of a Go module's source code which is then hex-encoded.", - "Use a sha512 hash." + "Use a sha512 hash.", + "Use a dirsum_sha256 hash." ], "type": "string" }, @@ -3472,6 +3549,13 @@ "description": "Output only. Stores timing information for pulling this build step's builder image only.", "readOnly": true }, + "results": { + "description": "Declaration of results for this build step.", + "items": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult" + }, + "type": "array" + }, "script": { "description": "A shell script to be executed in the step. When script is provided, the user cannot specify the entrypoint or args.", "type": "string" @@ -3539,6 +3623,20 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults": { + "description": "Results for a build step.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults", + "properties": { + "results": { + "additionalProperties": { + "type": "string" + }, + "description": "Results for a build step.", + "type": "object" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning": { "description": "A non-fatal problem encountered during the execution of the build.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning", @@ -3583,6 +3681,21 @@ "description": "Name used to push the container image to Google Container Registry, as presented to `docker push`.", "type": "string" }, + "ociMediaType": { + "description": "Output only. The OCI media type of the artifact. Non-OCI images, such as Docker images, will have an unspecified value.", + "enum": [ + "OCI_MEDIA_TYPE_UNSPECIFIED", + "IMAGE_MANIFEST", + "IMAGE_INDEX" + ], + "enumDescriptions": [ + "Default value.", + "The artifact is an image manifest, which represents a single image with all its layers.", + "The artifact is an image index, which can contain a list of image manifests." + ], + "readOnly": true, + "type": "string" + }, "pushTiming": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan", "description": "Output only. Stores timing information for pushing the specified image.", @@ -3618,6 +3731,10 @@ "description": "If set to true disable all dependency fetching (ignoring the default source as well).", "type": "boolean" }, + "genericArtifact": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency", + "description": "Represents a generic artifact as a build dependency." + }, "gitSource": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGitSourceDependency", "description": "Represents a git repository as a build dependency." @@ -3625,6 +3742,21 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency": { + "description": "Represents a generic artifact as a build dependency.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency", + "properties": { + "destPath": { + "description": "Required. Where the artifact files should be placed on the worker.", + "type": "string" + }, + "resource": { + "description": "Required. The location to download the artifact files from. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1", + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGitSourceDependency": { "description": "Represents a git repository as a build dependency.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGitSourceDependency", @@ -3753,14 +3885,16 @@ "SHA256", "MD5", "GO_MODULE_H1", - "SHA512" + "SHA512", + "DIRSUM_SHA256" ], "enumDescriptions": [ "No hash requested.", "Use a sha256 hash.", "Use a md5 hash.", "Dirhash of a Go module's source code which is then hex-encoded.", - "Use a sha512 hash." + "Use a sha512 hash.", + "Use a dirsum_sha256 hash." ], "type": "string" }, @@ -3860,6 +3994,21 @@ }, "type": "array" }, + "buildStepResults": { + "additionalProperties": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults" + }, + "description": "Results for build steps. step_id -> ", + "type": "object" + }, + "genericArtifacts": { + "description": "Output only. Generic artifacts uploaded to Artifact Registry at the end of the build.", + "items": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact" + }, + "readOnly": true, + "type": "array" + }, "goModules": { "description": "Optional. Go module artifacts uploaded to Artifact Registry at the end of the build.", "items": { @@ -4026,6 +4175,25 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult": { + "description": "StepResult is the declaration of a result for a build step.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult", + "properties": { + "attestationContent": { + "description": "Optional. The content of the attestation to be generated.", + "type": "string" + }, + "attestationType": { + "description": "Optional. The type of attestation to be generated.", + "type": "string" + }, + "name": { + "description": "Required. The name of the result.", + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource": { "description": "Location of the source in an archive file in Cloud Storage.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource", @@ -4097,6 +4265,41 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact": { + "description": "A generic artifact uploaded to Artifact Registry using the GenericArtifact directive.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact", + "properties": { + "artifactFingerprint": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", + "description": "Output only. The hash of the whole artifact.", + "readOnly": true + }, + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, + "fileHashes": { + "additionalProperties": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes" + }, + "description": "Output only. The file hashes that make up the generic artifact.", + "readOnly": true, + "type": "object" + }, + "pushTiming": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan", + "description": "Output only. Stores timing information for pushing the specified artifact.", + "readOnly": true + }, + "uri": { + "description": "Output only. URI of the uploaded artifact. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGoModule": { "description": "A Go module artifact uploaded to Artifact Registry using the GoModule directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGoModule", @@ -4493,7 +4696,8 @@ "SPDX_RELATIONSHIP", "VULNERABILITY_ASSESSMENT", "SBOM_REFERENCE", - "SECRET" + "SECRET", + "AI_SKILL_ANALYSIS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -4511,7 +4715,8 @@ "This represents an SPDX Relationship.", "This represents a Vulnerability Assessment.", "This represents an SBOM Reference.", - "This represents a secret." + "This represents a secret.", + "This represents an AI skill analysis." ], "type": "string" } @@ -4891,6 +5096,41 @@ }, "type": "object" }, + "Finding": { + "description": "Finding provides details for a single finding within an AISkillAnalysisOccurrence.", + "id": "Finding", + "properties": { + "category": { + "description": "Category of the finding.", + "type": "string" + }, + "description": { + "description": "Detailed description of the finding.", + "type": "string" + }, + "filePath": { + "description": "Path to the file where the finding was detected.", + "type": "string" + }, + "ruleId": { + "description": "Unique identifier of the rule that produced this finding.", + "type": "string" + }, + "severity": { + "description": "Severity of the finding.", + "type": "string" + }, + "snippet": { + "description": "Code snippet relevant to the finding.", + "type": "string" + }, + "title": { + "description": "Title of the finding.", + "type": "string" + } + }, + "type": "object" + }, "Fingerprint": { "description": "A set of properties that uniquely identify a given Docker image.", "id": "Fingerprint", @@ -5696,6 +5936,10 @@ "description": "A type of analysis that can be done for a resource.", "id": "Note", "properties": { + "aiSkillAnalysis": { + "$ref": "AISkillAnalysisNote", + "description": "A note describing an AI Skill analysis." + }, "attestationAuthority": { "$ref": "Authority", "description": "A note describing an attestation role." @@ -5748,7 +5992,8 @@ "SPDX_RELATIONSHIP", "VULNERABILITY_ASSESSMENT", "SBOM_REFERENCE", - "SECRET" + "SECRET", + "AI_SKILL_ANALYSIS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -5766,7 +6011,8 @@ "This represents an SPDX Relationship.", "This represents a Vulnerability Assessment.", "This represents an SBOM Reference.", - "This represents a secret." + "This represents a secret.", + "This represents an AI skill analysis." ], "type": "string" }, @@ -5844,6 +6090,10 @@ "description": "An instance of an analysis type that has been found on a resource.", "id": "Occurrence", "properties": { + "aiSkillAnalysis": { + "$ref": "AISkillAnalysisOccurrence", + "description": "Describes a specific AI Skill Analysis occurrence." + }, "attestation": { "$ref": "Details", "description": "Describes an attestation of an artifact." @@ -5899,7 +6149,8 @@ "SPDX_RELATIONSHIP", "VULNERABILITY_ASSESSMENT", "SBOM_REFERENCE", - "SECRET" + "SECRET", + "AI_SKILL_ANALYSIS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -5917,7 +6168,8 @@ "This represents an SPDX Relationship.", "This represents a Vulnerability Assessment.", "This represents an SBOM Reference.", - "This represents a secret." + "This represents a secret.", + "This represents an AI skill analysis." ], "type": "string" }, diff --git a/discovery/content-v2.1.json b/discovery/content-v2.1.json index 2f1f1771709..efcfa5a1958 100644 --- a/discovery/content-v2.1.json +++ b/discovery/content-v2.1.json @@ -2635,7 +2635,7 @@ ] }, "triggeraction": { - "description": "Start an action. The action can be requested by merchants in third-party application. Before merchants can request the action, the third-party application needs to show them action specific content and display a user input form. You can request access using [Trigger action allowlist form](https://docs.google.com/forms/d/e/1FAIpQLSfeV_sBW9MBQv9BMTV6JZ1g11PGHLdHsrefca-9h0LmpU7CUg/viewform?usp=sharing). The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user.", + "description": "Start an action. The action can be requested by merchants in third-party application. Before merchants can request the action, the third-party application needs to show them action specific content and display a user input form. You can submit an allowlist request in the [Shopping API Support Form](https://support.google.com/merchants/contact/shopping_api_support_form) under \"What is the issue/question?\" to get access to this feature. The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user.", "flatPath": "{merchantId}/merchantsupport/triggeraction", "httpMethod": "POST", "id": "content.merchantsupport.triggeraction", @@ -4282,7 +4282,7 @@ } } }, - "revision": "20260118", + "revision": "20260429", "rootUrl": "https://shoppingcontent.googleapis.com/", "schemas": { "Account": { diff --git a/discovery/css-v1.json b/discovery/css-v1.json index a0689eab498..4c6f69c21cb 100644 --- a/discovery/css-v1.json +++ b/discovery/css-v1.json @@ -547,7 +547,7 @@ } } }, - "revision": "20250603", + "revision": "20260310", "rootUrl": "https://css.googleapis.com/", "schemas": { "Account": { @@ -821,6 +821,16 @@ "description": "The material of which the item is made.", "type": "string" }, + "maxRating": { + "description": "Maximum rating score of the product. Required if `rating` is provided. This field is for an upcoming feature and is not yet used.", + "format": "int64", + "type": "string" + }, + "minRating": { + "description": "Minimum rating score of the product. Required if `rating` is provided. This field is for an upcoming feature and is not yet used.", + "format": "int64", + "type": "string" + }, "mpn": { "description": "Manufacturer Part Number ([MPN](https://support.google.com/merchants/answer/188494#mpn)) of the item.", "type": "string" @@ -880,6 +890,16 @@ "$ref": "ProductDimension", "description": "The width of the product in the units provided. The value must be between 0 (exclusive) and 3000 (inclusive)." }, + "rating": { + "description": "Average rating score of the product. The value must be within the range of [`min_rating`, `max_rating`], inclusive. When displayed on the product page, this rating is normalized to a scale of [1, 5] with one decimal place. If provided, `review_count`, `min_rating`, and `max_rating` are also required. This field is for an upcoming feature and is not yet used.", + "format": "double", + "type": "number" + }, + "reviewCount": { + "description": "Number of reviews of the product. Required if `rating` is provided. This field is for an upcoming feature and is not yet used.", + "format": "int64", + "type": "string" + }, "size": { "description": "Size of the item. Only one value is allowed. For variants with different sizes, insert a separate product for each size with the same `itemGroupId` value (see [https://support.google.com/merchants/answer/6324492](size definition)).", "type": "string" @@ -889,7 +909,7 @@ "type": "string" }, "sizeTypes": { - "description": "The cut of the item. It can be used to represent combined size types for apparel items. Maximum two of size types can be provided (see [https://support.google.com/merchants/answer/6324497](size type)).", + "description": "The cut of the item. It can be used to represent combined size types for apparel items. Maximum two of size types can be provided (see [size type](https://support.google.com/merchants/answer/6324497).", "items": { "type": "string" }, diff --git a/discovery/dataflow-v1b3.json b/discovery/dataflow-v1b3.json index 8930c7cd6a5..674e6706511 100644 --- a/discovery/dataflow-v1b3.json +++ b/discovery/dataflow-v1b3.json @@ -2400,7 +2400,7 @@ } } }, - "revision": "20260213", + "revision": "20260405", "rootUrl": "https://dataflow.googleapis.com/", "schemas": { "ApproximateProgress": { @@ -3796,7 +3796,7 @@ "type": "string" }, "launcherMachineType": { - "description": "The machine type to use for launching the job. The default is n1-standard-1.", + "description": "The machine type to use for launching the job. If not set, Dataflow will select a default machine type.", "type": "string" }, "machineType": { @@ -5982,11 +5982,16 @@ "properties": { "acceptableBacklogDuration": { "deprecated": true, - "description": "Optional. Deprecated: Use `autoscaling_tier` instead. The backlog threshold duration in seconds for autoscaling. Value must be non-negative.", + "description": "Optional. Deprecated: Use `latency_tier` instead. The backlog threshold duration in seconds for autoscaling. Value must be non-negative.", "format": "google-duration", "type": "string" }, "autoscalingTier": { + "deprecated": true, + "description": "Optional. Deprecated: Use `latency_tier` instead. The backlog threshold tier for autoscaling. Value must be one of \"low-latency\", \"medium-latency\", or \"high-latency\".", + "type": "string" + }, + "latencyTier": { "description": "Optional. The backlog threshold tier for autoscaling. Value must be one of \"low-latency\", \"medium-latency\", or \"high-latency\".", "type": "string" }, diff --git a/discovery/dataform-v1.json b/discovery/dataform-v1.json index 5df3a95ad64..2ca697ca6ba 100644 --- a/discovery/dataform-v1.json +++ b/discovery/dataform-v1.json @@ -17,6 +17,223 @@ "description": "Service to develop, version control, and operationalize SQL pipelines in BigQuery.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/dataform/docs", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-west4.rep.googleapis.com/", + "location": "us-west4" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -164,7 +381,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "dataform.projects.locations.list", @@ -211,6 +428,53 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "queryUserRootContents": { + "description": "Returns the contents of a caller's root folder in a given location. The root folder contains all resources that are created by the user and not contained in any other folder.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:queryUserRootContents", + "httpMethod": "GET", + "id": "dataform.projects.locations.queryUserRootContents", + "parameterOrder": [ + "location" + ], + "parameters": { + "filter": { + "description": "Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter=\"display_name=\"MyFolder\"\"`", + "location": "query", + "type": "string" + }, + "location": { + "description": "Required. Location of the user root folder to list contents for. Format: projects/*/locations/*", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), created_at, last_modified_at. Examples: * `orderBy=\"display_name\"` * `orderBy=\"display_name desc\"`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Page token received from a previous `QueryUserRootContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryUserRootFolderContents`, with the exception of `page_size`, must match the call that provided the page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+location}:queryUserRootContents", + "response": { + "$ref": "QueryUserRootContentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "updateConfig": { "description": "Update default config for a given project and location. **Note:** *This method does not fully implement [AIP/134](https://google.aip.dev/134). The wildcard entry (\\*) is treated as a bad request, and when the `field_mask` is omitted, the request is treated as a full update on all modifiable fields.*", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/config", @@ -250,6 +514,116 @@ "resources": { "folders": { "methods": { + "create": { + "description": "Creates a new Folder in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/folders", + "httpMethod": "POST", + "id": "dataform.projects.locations.folders.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The location in which to create the Folder. Must be in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/folders", + "request": { + "$ref": "Folder" + }, + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Folder.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/folders/{foldersId}", + "httpMethod": "DELETE", + "id": "dataform.projects.locations.folders.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The Folder's name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "deleteTree": { + "description": "Deletes a Folder with its contents (Folders, Repositories, Workspaces, ReleaseConfigs, and WorkflowConfigs).", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/folders/{foldersId}:deleteTree", + "httpMethod": "POST", + "id": "dataform.projects.locations.folders.deleteTree", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The Folder's name. Format: projects/{project}/locations/{location}/folders/{folder}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:deleteTree", + "request": { + "$ref": "DeleteFolderTreeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Fetches a single Folder.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/folders/{foldersId}", + "httpMethod": "GET", + "id": "dataform.projects.locations.folders.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The Folder's name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "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": "v1/projects/{projectsId}/locations/{locationsId}/folders/{foldersId}:getIamPolicy", @@ -282,6 +656,117 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "move": { + "description": "Moves a Folder to a new Folder, TeamFolder, or the root location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/folders/{foldersId}:move", + "httpMethod": "POST", + "id": "dataform.projects.locations.folders.move", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The full resource name of the Folder to move.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:move", + "request": { + "$ref": "MoveFolderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a single Folder.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/folders/{foldersId}", + "httpMethod": "PATCH", + "id": "dataform.projects.locations.folders.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The Folder's name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/folders/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Specifies the fields to be updated in the Folder. If left unset, all fields that can be updated, will be updated. A few fields cannot be updated and will be ignored if specified in the update_mask (e.g. parent_name, team_folder_name).", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Folder" + }, + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "queryFolderContents": { + "description": "Returns the contents of a given Folder.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/folders/{foldersId}:queryFolderContents", + "httpMethod": "GET", + "id": "dataform.projects.locations.folders.queryFolderContents", + "parameterOrder": [ + "folder" + ], + "parameters": { + "filter": { + "description": "Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter=\"display_name=\"MyFolder\"\"`", + "location": "query", + "type": "string" + }, + "folder": { + "description": "Required. Resource name of the Folder to list contents for. Format: projects/*/locations/*/folders/*", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/folders/[^/]+$", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), create_time, last_modified_time. Examples: * `orderBy=\"display_name\"` * `orderBy=\"display_name desc\"`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Page token received from a previous `QueryFolderContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryFolderContents`, with the exception of `page_size`, must match the call that provided the page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+folder}:queryFolderContents", + "response": { + "$ref": "QueryFolderContentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "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": "v1/projects/{projectsId}/locations/{locationsId}/folders/{foldersId}:setIamPolicy", @@ -764,6 +1249,35 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "move": { + "description": "Moves a Repository to a new location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/repositories/{repositoriesId}:move", + "httpMethod": "POST", + "id": "dataform.projects.locations.repositories.move", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The full resource name of the repository to move.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/repositories/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:move", + "request": { + "$ref": "MoveRepositoryRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "patch": { "description": "Updates a single Repository. **Note:** *This method does not fully implement [AIP/134](https://google.aip.dev/134). The wildcard entry (\\*) is treated as a bad request, and when the `field_mask` is omitted, the request is treated as a full update on all modifiable fields.*", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/repositories/{repositoriesId}", @@ -2095,6 +2609,21 @@ "location": "query", "type": "string" }, + "view": { + "description": "Optional. Specifies the metadata to return for each directory entry. If unspecified, the default is `DIRECTORY_CONTENTS_VIEW_BASIC`. Currently the `DIRECTORY_CONTENTS_VIEW_METADATA` view is not supported by CMEK-protected workspaces.", + "enum": [ + "DIRECTORY_CONTENTS_VIEW_UNSPECIFIED", + "DIRECTORY_CONTENTS_VIEW_BASIC", + "DIRECTORY_CONTENTS_VIEW_METADATA" + ], + "enumDescriptions": [ + "The default unset value. Defaults to DIRECTORY_CONTENTS_VIEW_BASIC.", + "Includes only the file or directory name. This is the default behavior.", + "Includes all metadata for each file or directory. Currently not supported by CMEK-protected workspaces." + ], + "location": "query", + "type": "string" + }, "workspace": { "description": "Required. The workspace's name.", "location": "path", @@ -2364,38 +2893,277 @@ "https://www.googleapis.com/auth/cloud-platform" ] } - } - } - } - }, - "teamFolders": { - "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": "v1/projects/{projectsId}/locations/{locationsId}/teamFolders/{teamFoldersId}:getIamPolicy", + } + } + } + }, + "teamFolders": { + "methods": { + "create": { + "description": "Creates a new TeamFolder in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/teamFolders", + "httpMethod": "POST", + "id": "dataform.projects.locations.teamFolders.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The location in which to create the TeamFolder. Must be in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/teamFolders", + "request": { + "$ref": "TeamFolder" + }, + "response": { + "$ref": "TeamFolder" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single TeamFolder.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/teamFolders/{teamFoldersId}", + "httpMethod": "DELETE", + "id": "dataform.projects.locations.teamFolders.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The TeamFolder's name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/teamFolders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "deleteTree": { + "description": "Deletes a TeamFolder with its contents (Folders, Repositories, Workspaces, ReleaseConfigs, and WorkflowConfigs).", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/teamFolders/{teamFoldersId}:deleteTree", + "httpMethod": "POST", + "id": "dataform.projects.locations.teamFolders.deleteTree", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The TeamFolder's name. Format: projects/{project}/locations/{location}/teamFolders/{team_folder}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/teamFolders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:deleteTree", + "request": { + "$ref": "DeleteTeamFolderTreeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Fetches a single TeamFolder.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/teamFolders/{teamFoldersId}", + "httpMethod": "GET", + "id": "dataform.projects.locations.teamFolders.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The TeamFolder's name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/teamFolders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "TeamFolder" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "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": "v1/projects/{projectsId}/locations/{locationsId}/teamFolders/{teamFoldersId}:getIamPolicy", + "httpMethod": "GET", + "id": "dataform.projects.locations.teamFolders.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/[^/]+/teamFolders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a single TeamFolder.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/teamFolders/{teamFoldersId}", + "httpMethod": "PATCH", + "id": "dataform.projects.locations.teamFolders.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The TeamFolder's name.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/teamFolders/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Specifies the fields to be updated in the Folder. If left unset, all fields will be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "TeamFolder" + }, + "response": { + "$ref": "TeamFolder" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "queryContents": { + "description": "Returns the contents of a given TeamFolder.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/teamFolders/{teamFoldersId}:queryContents", "httpMethod": "GET", - "id": "dataform.projects.locations.teamFolders.getIamPolicy", + "id": "dataform.projects.locations.teamFolders.queryContents", "parameterOrder": [ - "resource" + "teamFolder" ], "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).", + "filter": { + "description": "Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter=\"display_name=\"MyFolder\"\"`", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: `display_name` (default), `create_time`, last_modified_time. Examples: * `orderBy=\"display_name\"` * `orderBy=\"display_name desc\"`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default.", "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.", + "pageToken": { + "description": "Optional. Page token received from a previous `QueryTeamFolderContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryTeamFolderContents`, with the exception of `page_size`, must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "teamFolder": { + "description": "Required. Resource name of the TeamFolder to list contents for. Format: `projects/*/locations/*/teamFolders/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/teamFolders/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+resource}:getIamPolicy", + "path": "v1/{+teamFolder}:queryContents", "response": { - "$ref": "Policy" + "$ref": "QueryTeamFolderContentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "search": { + "description": "Returns all TeamFolders in a given location that the caller has access to and match the provided filter.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/teamFolders:search", + "httpMethod": "GET", + "id": "dataform.projects.locations.teamFolders.search", + "parameterOrder": [ + "location" + ], + "parameters": { + "filter": { + "description": "Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter=\"display_name=\"MyFolder\"\"`", + "location": "query", + "type": "string" + }, + "location": { + "description": "Required. Location in which to query TeamFolders. Format: `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Optional. Field to additionally sort results by. Supported keywords: `display_name` (default), `create_time`, `last_modified_time`. Examples: * `orderBy=\"display_name\"` * `orderBy=\"display_name desc\"`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Maximum number of TeamFolders to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Page token received from a previous `SearchTeamFolders` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `SearchTeamFolders`, with the exception of `page_size`, must match the call that provided the page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+location}/teamFolders:search", + "response": { + "$ref": "SearchTeamFoldersResponse" }, "scopes": [ "https://www.googleapis.com/auth/bigquery", @@ -2467,7 +3235,7 @@ } } }, - "revision": "20260217", + "revision": "20260409", "rootUrl": "https://dataform.googleapis.com/", "schemas": { "ActionErrorTable": { @@ -2981,13 +3749,15 @@ "TOKEN_STATUS_UNSPECIFIED", "NOT_FOUND", "INVALID", - "VALID" + "VALID", + "PERMISSION_DENIED" ], "enumDescriptions": [ "Default value. This value is unused.", "The token could not be found in Secret Manager (or the Dataform Service Account did not have permission to access it).", "The token could not be used to authenticate against the Git remote.", - "The token was used successfully to authenticate against the Git remote." + "The token was used successfully to authenticate against the Git remote.", + "The token is not accessible due to permission issues." ], "type": "string" } @@ -3101,6 +3871,28 @@ "properties": {}, "type": "object" }, + "DeleteFolderTreeRequest": { + "description": "`DeleteFolderTree` request message.", + "id": "DeleteFolderTreeRequest", + "properties": { + "force": { + "description": "Optional. If `false` (default): The operation will fail if any Repository within the folder hierarchy has associated Release Configs or Workflow Configs. If `true`: The operation will attempt to delete everything, including any Release Configs and Workflow Configs linked to Repositories within the folder hierarchy. This permanently removes schedules and resources.", + "type": "boolean" + } + }, + "type": "object" + }, + "DeleteTeamFolderTreeRequest": { + "description": "`DeleteTeamFolderTree` request message.", + "id": "DeleteTeamFolderTreeRequest", + "properties": { + "force": { + "description": "Optional. If `false` (default): The operation will fail if any Repository within the folder hierarchy has associated Release Configs or Workflow Configs. If `true`: The operation will attempt to delete everything, including any Release Configs and Workflow Configs linked to Repositories within the folder hierarchy. This permanently removes schedules and resources.", + "type": "boolean" + } + }, + "type": "object" + }, "DirectoryEntry": { "description": "Represents a single entry in a directory.", "id": "DirectoryEntry", @@ -3112,6 +3904,10 @@ "file": { "description": "A file in the directory.", "type": "string" + }, + "metadata": { + "$ref": "FilesystemEntryMetadata", + "description": "Entry with metadata." } }, "type": "object" @@ -3272,6 +4068,86 @@ }, "type": "object" }, + "FilesystemEntryMetadata": { + "description": "Represents metadata for a single entry in a filesystem.", + "id": "FilesystemEntryMetadata", + "properties": { + "sizeBytes": { + "description": "Output only. Provides the size of the entry in bytes. For directories, this will be 0.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Represents the time of the last modification of the entry.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Folder": { + "description": "Represents a Dataform Folder. This is a resource that is used to organize Files and other Folders and provide hierarchical access controls.", + "id": "Folder", + "properties": { + "containingFolder": { + "description": "Optional. The containing Folder resource name. This should take the format: projects/{project}/locations/{location}/folders/{folder}, projects/{project}/locations/{location}/teamFolders/{teamFolder}, or just \"\" if this is a root Folder. This field can only be updated through MoveFolder.", + "type": "string" + }, + "createTime": { + "description": "Output only. The timestamp of when the Folder was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "creatorIamPrincipal": { + "description": "Output only. The IAM principal identifier of the creator of the Folder.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Required. The Folder's user-friendly name.", + "type": "string" + }, + "internalMetadata": { + "description": "Output only. All the metadata information that is used internally to serve the resource. For example: timestamps, flags, status fields, etc. The format of this field is a JSON string.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The Folder's name.", + "type": "string" + }, + "teamFolderName": { + "description": "Output only. The resource name of the TeamFolder that this Folder is associated with. This should take the format: projects/{project}/locations/{location}/teamFolders/{teamFolder}. If this is not set, the Folder is not associated with a TeamFolder and is a UserFolder.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp of when the Folder was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "FolderContentsEntry": { + "description": "Represents a single content entry.", + "id": "FolderContentsEntry", + "properties": { + "folder": { + "$ref": "Folder", + "description": "A subfolder." + }, + "repository": { + "$ref": "Repository", + "description": "A repository." + } + }, + "type": "object" + }, "GitRemoteSettings": { "description": "Controls Git remote configuration for a repository.", "id": "GitRemoteSettings", @@ -3281,7 +4157,7 @@ "type": "string" }, "defaultBranch": { - "description": "Required. The Git remote's default branch name.", + "description": "Required. The Git remote's default branch name. If not set, `main` will be used and stored for the repository.", "type": "string" }, "sshAuthenticationConfig": { @@ -3768,6 +4644,28 @@ "properties": {}, "type": "object" }, + "MoveFolderRequest": { + "description": "`MoveFolder` request message.", + "id": "MoveFolderRequest", + "properties": { + "destinationContainingFolder": { + "description": "Optional. The name of the Folder, TeamFolder, or root location to move the Folder to. Can be in the format of: \"\" to move into the root User folder, `projects/*/locations/*/folders/*`, `projects/*/locations/*/teamFolders/*`", + "type": "string" + } + }, + "type": "object" + }, + "MoveRepositoryRequest": { + "description": "`MoveRepository` request message.", + "id": "MoveRepositoryRequest", + "properties": { + "destinationContainingFolder": { + "description": "Optional. The name of the Folder, TeamFolder, or root location to move the repository to. Can be in the format of: \"\" to move into the root User folder, `projects/*/locations/*/folders/*`, `projects/*/locations/*/teamFolders/*`", + "type": "string" + } + }, + "type": "object" + }, "Notebook": { "description": "Represents a notebook.", "id": "Notebook", @@ -4077,6 +4975,24 @@ }, "type": "object" }, + "QueryFolderContentsResponse": { + "description": "`QueryFolderContents` response message.", + "id": "QueryFolderContentsResponse", + "properties": { + "entries": { + "description": "List of entries in the folder.", + "items": { + "$ref": "FolderContentsEntry" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + } + }, + "type": "object" + }, "QueryRepositoryDirectoryContentsResponse": { "description": "`QueryRepositoryDirectoryContents` response message.", "id": "QueryRepositoryDirectoryContentsResponse", @@ -4095,6 +5011,42 @@ }, "type": "object" }, + "QueryTeamFolderContentsResponse": { + "description": "`QueryTeamFolderContents` response message.", + "id": "QueryTeamFolderContentsResponse", + "properties": { + "entries": { + "description": "List of entries in the TeamFolder.", + "items": { + "$ref": "TeamFolderContentsEntry" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + } + }, + "type": "object" + }, + "QueryUserRootContentsResponse": { + "description": "`QueryUserRootContents` response message.", + "id": "QueryUserRootContentsResponse", + "properties": { + "entries": { + "description": "List of entries in the folder.", + "items": { + "$ref": "RootContentsEntry" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + } + }, + "type": "object" + }, "QueryWorkflowInvocationActionsResponse": { "description": "`QueryWorkflowInvocationActions` response message.", "id": "QueryWorkflowInvocationActionsResponse", @@ -4376,6 +5328,10 @@ "description": "Represents a Dataform Git repository.", "id": "Repository", "properties": { + "containingFolder": { + "description": "Optional. The name of the containing folder of the repository. The field is immutable and it can be modified via a MoveRepository operation. Format: `projects/*/locations/*/folders/*`. or `projects/*/locations/*/teamFolders/*`.", + "type": "string" + }, "createTime": { "description": "Output only. The timestamp of when the repository was created.", "format": "google-datetime", @@ -4427,6 +5383,11 @@ "description": "Optional. Input only. If set to true, the authenticated user will be granted the roles/dataform.admin role on the created repository.", "type": "boolean" }, + "teamFolderName": { + "description": "Output only. The resource name of the TeamFolder that this Repository is associated with. This should take the format: projects/{project}/locations/{location}/teamFolders/{teamFolder}. If this is not set, the Repository is not associated with a TeamFolder.", + "readOnly": true, + "type": "string" + }, "workspaceCompilationOverrides": { "$ref": "WorkspaceCompilationOverrides", "description": "Optional. If set, fields of `workspace_compilation_overrides` override the default compilation settings that are specified in dataform.json when creating workspace-scoped compilation results. See documentation for `WorkspaceCompilationOverrides` for more information." @@ -4458,6 +5419,21 @@ "properties": {}, "type": "object" }, + "RootContentsEntry": { + "description": "Represents a single content entry.", + "id": "RootContentsEntry", + "properties": { + "folder": { + "$ref": "Folder", + "description": "A subfolder." + }, + "repository": { + "$ref": "Repository", + "description": "A repository." + } + }, + "type": "object" + }, "ScheduledExecutionRecord": { "description": "A record of an attempt to create a workflow invocation for this workflow config.", "id": "ScheduledExecutionRecord", @@ -4533,6 +5509,24 @@ }, "type": "object" }, + "SearchTeamFoldersResponse": { + "description": "`SearchTeamFolders` response message.", + "id": "SearchTeamFoldersResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "results": { + "description": "List of TeamFolders that match the search query.", + "items": { + "$ref": "TeamFolderSearchResult" + }, + "type": "array" + } + }, + "type": "object" + }, "SetIamPolicyRequest": { "description": "Request message for `SetIamPolicy` method.", "id": "SetIamPolicyRequest", @@ -4630,6 +5624,69 @@ }, "type": "object" }, + "TeamFolder": { + "description": "Represents a Dataform TeamFolder. This is a resource that sits at the project level and is used to organize Repositories and Folders with hierarchical access controls. They provide a team context and stricter access controls.", + "id": "TeamFolder", + "properties": { + "createTime": { + "description": "Output only. The timestamp of when the TeamFolder was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "creatorIamPrincipal": { + "description": "Output only. The IAM principal identifier of the creator of the TeamFolder.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Required. The TeamFolder's user-friendly name.", + "type": "string" + }, + "internalMetadata": { + "description": "Output only. All the metadata information that is used internally to serve the resource. For example: timestamps, flags, status fields, etc. The format of this field is a JSON string.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The TeamFolder's name.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp of when the TeamFolder was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "TeamFolderContentsEntry": { + "description": "Represents a single content entry.", + "id": "TeamFolderContentsEntry", + "properties": { + "folder": { + "$ref": "Folder", + "description": "A subfolder." + }, + "repository": { + "$ref": "Repository", + "description": "A repository." + } + }, + "type": "object" + }, + "TeamFolderSearchResult": { + "description": "Represents a single content entry.", + "id": "TeamFolderSearchResult", + "properties": { + "teamFolder": { + "$ref": "TeamFolder", + "description": "A TeamFolder resource that is in the project / location." + } + }, + "type": "object" + }, "TestIamPermissionsRequest": { "description": "Request message for `TestIamPermissions` method.", "id": "TestIamPermissionsRequest", @@ -4899,6 +5956,10 @@ "description": "Output only. A data encryption state of a Git repository if this Workspace is protected by a KMS key.", "readOnly": true }, + "disableMoves": { + "description": "Optional. If set to true, workspaces will not be moved if its linked Repository is moved. Instead, it will be deleted.", + "type": "boolean" + }, "internalMetadata": { "description": "Output only. All the metadata information that is used internally to serve the resource. For example: timestamps, flags, status fields, etc. The format of this field is a JSON string.", "readOnly": true, diff --git a/discovery/dataform-v1beta1.json b/discovery/dataform-v1beta1.json index 3fc782ad5cc..91bdeef1401 100644 --- a/discovery/dataform-v1beta1.json +++ b/discovery/dataform-v1beta1.json @@ -17,6 +17,223 @@ "description": "Service to develop, version control, and operationalize SQL pipelines in BigQuery.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/dataform/docs", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://dataform.us-west4.rep.googleapis.com/", + "location": "us-west4" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -164,7 +381,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "dataform.projects.locations.list", @@ -221,19 +438,19 @@ ], "parameters": { "filter": { - "description": "Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: - `filter=\"display_name=\"MyFolder\"\"`", + "description": "Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter=\"display_name=\"MyFolder\"\"`", "location": "query", "type": "string" }, "location": { - "description": "Required. Location of the user root folder whose contents to list. Format: projects/*/locations/*", + "description": "Required. Location of the user root folder to list contents for. Format: projects/*/locations/*", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" }, "orderBy": { - "description": "Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), created_at, last_modified_at. Examples: - `orderBy=\"display_name\"` - `orderBy=\"display_name desc\"`", + "description": "Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), created_at, last_modified_at. Examples: * `orderBy=\"display_name\"` * `orderBy=\"display_name desc\"`", "location": "query", "type": "string" }, @@ -307,7 +524,8 @@ ], "parameters": { "folderId": { - "description": "The ID to use for the Folder, which will become the final component of the Folder's resource name.", + "deprecated": true, + "description": "Deprecated: This field is not used. The resource name is generated automatically. The ID to use for the Folder, which will become the final component of the Folder's resource name.", "location": "query", "type": "string" }, @@ -357,6 +575,35 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "deleteTree": { + "description": "Deletes a Folder with its contents (Folders, Repositories, Workspaces, ReleaseConfigs, and WorkflowConfigs).", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/folders/{foldersId}:deleteTree", + "httpMethod": "POST", + "id": "dataform.projects.locations.folders.deleteTree", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The Folder's name. Format: projects/{project}/locations/{location}/folders/{folder}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:deleteTree", + "request": { + "$ref": "DeleteFolderTreeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "Fetches a single Folder.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/folders/{foldersId}", @@ -489,19 +736,19 @@ ], "parameters": { "filter": { - "description": "Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: - `filter=\"display_name=\"MyFolder\"\"`", + "description": "Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter=\"display_name=\"MyFolder\"\"`", "location": "query", "type": "string" }, "folder": { - "description": "Required. Name of the folder whose contents to list. Format: projects/*/locations/*/folders/*", + "description": "Required. Resource name of the Folder to list contents for. Format: projects/*/locations/*/folders/*", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/folders/[^/]+$", "required": true, "type": "string" }, "orderBy": { - "description": "Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), create_time, last_modified_time. Examples: - `orderBy=\"display_name\"` - `orderBy=\"display_name desc\"`", + "description": "Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), create_time, last_modified_time. Examples: * `orderBy=\"display_name\"` * `orderBy=\"display_name desc\"`", "location": "query", "type": "string" }, @@ -2368,6 +2615,21 @@ "location": "query", "type": "string" }, + "view": { + "description": "Optional. Specifies the metadata to return for each directory entry. If unspecified, the default is `DIRECTORY_CONTENTS_VIEW_BASIC`. Currently the `DIRECTORY_CONTENTS_VIEW_METADATA` view is not supported by CMEK-protected workspaces.", + "enum": [ + "DIRECTORY_CONTENTS_VIEW_UNSPECIFIED", + "DIRECTORY_CONTENTS_VIEW_BASIC", + "DIRECTORY_CONTENTS_VIEW_METADATA" + ], + "enumDescriptions": [ + "The default unset value. Defaults to DIRECTORY_CONTENTS_VIEW_BASIC.", + "Includes only the file or directory name. This is the default behavior.", + "Includes all metadata for each file or directory. Currently not supported by CMEK-protected workspaces." + ], + "location": "query", + "type": "string" + }, "workspace": { "description": "Required. The workspace's name.", "location": "path", @@ -2660,7 +2922,8 @@ "type": "string" }, "teamFolderId": { - "description": "The ID to use for the TeamFolder, which will become the final component of the TeamFolder's resource name.", + "deprecated": true, + "description": "Deprecated: This field is not used. The resource name is generated automatically. The ID to use for the TeamFolder, which will become the final component of the TeamFolder's resource name.", "location": "query", "type": "string" } @@ -2703,6 +2966,35 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "deleteTree": { + "description": "Deletes a TeamFolder with its contents (Folders, Repositories, Workspaces, ReleaseConfigs, and WorkflowConfigs).", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/teamFolders/{teamFoldersId}:deleteTree", + "httpMethod": "POST", + "id": "dataform.projects.locations.teamFolders.deleteTree", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The TeamFolder's name. Format: projects/{project}/locations/{location}/teamFolders/{team_folder}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/teamFolders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:deleteTree", + "request": { + "$ref": "DeleteTeamFolderTreeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "Fetches a single TeamFolder.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/teamFolders/{teamFoldersId}", @@ -2806,12 +3098,12 @@ ], "parameters": { "filter": { - "description": "Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: - `filter=\"display_name=\"MyFolder\"\"`", + "description": "Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter=\"display_name=\"MyFolder\"\"`", "location": "query", "type": "string" }, "orderBy": { - "description": "Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: `display_name` (default), `create_time`, last_modified_time. Examples: - `orderBy=\"display_name\"` - `orderBy=\"display_name desc\"`", + "description": "Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: `display_name` (default), `create_time`, last_modified_time. Examples: * `orderBy=\"display_name\"` * `orderBy=\"display_name desc\"`", "location": "query", "type": "string" }, @@ -2827,7 +3119,7 @@ "type": "string" }, "teamFolder": { - "description": "Required. Name of the team_folder whose contents to list. Format: `projects/*/locations/*/teamFolders/*`.", + "description": "Required. Resource name of the TeamFolder to list contents for. Format: `projects/*/locations/*/teamFolders/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/teamFolders/[^/]+$", "required": true, @@ -2853,7 +3145,7 @@ ], "parameters": { "filter": { - "description": "Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: - `filter=\"display_name=\"MyFolder\"\"`", + "description": "Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter=\"display_name=\"MyFolder\"\"`", "location": "query", "type": "string" }, @@ -2865,7 +3157,7 @@ "type": "string" }, "orderBy": { - "description": "Optional. Field to additionally sort results by. Supported keywords: `display_name` (default), `create_time`, `last_modified_time`. Examples: - `orderBy=\"display_name\"` - `orderBy=\"display_name desc\"`", + "description": "Optional. Field to additionally sort results by. Supported keywords: `display_name` (default), `create_time`, `last_modified_time`. Examples: * `orderBy=\"display_name\"` * `orderBy=\"display_name desc\"`", "location": "query", "type": "string" }, @@ -2955,7 +3247,7 @@ } } }, - "revision": "20260217", + "revision": "20260409", "rootUrl": "https://dataform.googleapis.com/", "schemas": { "ActionErrorTable": { @@ -3469,13 +3761,15 @@ "TOKEN_STATUS_UNSPECIFIED", "NOT_FOUND", "INVALID", - "VALID" + "VALID", + "PERMISSION_DENIED" ], "enumDescriptions": [ "Default value. This value is unused.", "The token could not be found in Secret Manager (or the Dataform Service Account did not have permission to access it).", "The token could not be used to authenticate against the Git remote.", - "The token was used successfully to authenticate against the Git remote." + "The token was used successfully to authenticate against the Git remote.", + "The token is not accessible due to permission issues." ], "type": "string" } @@ -3589,6 +3883,28 @@ "properties": {}, "type": "object" }, + "DeleteFolderTreeRequest": { + "description": "`DeleteFolderTree` request message.", + "id": "DeleteFolderTreeRequest", + "properties": { + "force": { + "description": "Optional. If `false` (default): The operation will fail if any Repository within the folder hierarchy has associated Release Configs or Workflow Configs. If `true`: The operation will attempt to delete everything, including any Release Configs and Workflow Configs linked to Repositories within the folder hierarchy. This permanently removes schedules and resources.", + "type": "boolean" + } + }, + "type": "object" + }, + "DeleteTeamFolderTreeRequest": { + "description": "`DeleteTeamFolderTree` request message.", + "id": "DeleteTeamFolderTreeRequest", + "properties": { + "force": { + "description": "Optional. If `false` (default): The operation will fail if any Repository within the folder hierarchy has associated Release Configs or Workflow Configs. If `true`: The operation will attempt to delete everything, including any Release Configs and Workflow Configs linked to Repositories within the folder hierarchy. This permanently removes schedules and resources.", + "type": "boolean" + } + }, + "type": "object" + }, "DirectoryEntry": { "description": "Represents a single entry in a directory.", "id": "DirectoryEntry", @@ -3600,6 +3916,10 @@ "file": { "description": "A file in the directory.", "type": "string" + }, + "metadata": { + "$ref": "FilesystemEntryMetadata", + "description": "Entry with metadata." } }, "type": "object" @@ -3760,12 +4080,31 @@ }, "type": "object" }, + "FilesystemEntryMetadata": { + "description": "Represents metadata for a single entry in a filesystem.", + "id": "FilesystemEntryMetadata", + "properties": { + "sizeBytes": { + "description": "Output only. Provides the size of the entry in bytes. For directories, this will be 0.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Represents the time of the last modification of the entry.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "Folder": { "description": "Represents a Dataform Folder. This is a resource that is used to organize Files and other Folders and provide hierarchical access controls.", "id": "Folder", "properties": { "containingFolder": { - "description": "Optional. The containing Folder resource name. This should take the format: projects/{project}/locations/{location}/folders/{folder}, projects/{project}/locations/{location}/teamFolders/{teamFolder}, or just projects/{project}/locations/{location} if this is a root Folder. This field can only be updated through MoveFolder.", + "description": "Optional. The containing Folder resource name. This should take the format: projects/{project}/locations/{location}/folders/{folder}, projects/{project}/locations/{location}/teamFolders/{teamFolder}, or just \"\" if this is a root Folder. This field can only be updated through MoveFolder.", "type": "string" }, "createTime": { @@ -3830,7 +4169,7 @@ "type": "string" }, "defaultBranch": { - "description": "Required. The Git remote's default branch name.", + "description": "Required. The Git remote's default branch name. If not set, `main` will be used and stored for the repository.", "type": "string" }, "sshAuthenticationConfig": { diff --git a/discovery/datalineage-v1.json b/discovery/datalineage-v1.json index 979bc2ab3b5..e30430e5483 100644 --- a/discovery/datalineage-v1.json +++ b/discovery/datalineage-v1.json @@ -816,7 +816,7 @@ ], "parameters": { "allowMissing": { - "description": "If set to true and the process is not found, the request succeeds but the server doesn't perform any actions.", + "description": "Optional. If set to true and the process is not found, the request succeeds but the server doesn't perform any actions.", "location": "query", "type": "boolean" }, @@ -871,13 +871,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of processes to return. The service may return fewer than this value. If unspecified, at most 50 processes are returned. The maximum value is 100; values greater than 100 are cut to 100.", + "description": "Optional. The maximum number of processes to return. The service may return fewer than this value. If unspecified, at most 50 processes are returned. The maximum value is 100; values greater than 100 are cut to 100.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The page token received from a previous `ListProcesses` call. Specify it to get the next page. When paginating, all other parameters specified in this call must match the parameters of the call that provided the page token.", + "description": "Optional. The page token received from a previous `ListProcesses` call. Specify it to get the next page. When paginating, all other parameters specified in this call must match the parameters of the call that provided the page token.", "location": "query", "type": "string" }, @@ -907,7 +907,7 @@ ], "parameters": { "allowMissing": { - "description": "If set to true and the process is not found, the request inserts it.", + "description": "Optional. If set to true and the process is not found, the request inserts it.", "location": "query", "type": "boolean" }, @@ -924,7 +924,7 @@ "type": "string" }, "updateMask": { - "description": "The list of fields to update. Currently not used. The whole message is updated.", + "description": "Optional. The list of fields to update. Currently not used. The whole message is updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -988,7 +988,7 @@ ], "parameters": { "allowMissing": { - "description": "If set to true and the run is not found, the request succeeds but the server doesn't perform any actions.", + "description": "Optional. If set to true and the run is not found, the request succeeds but the server doesn't perform any actions.", "location": "query", "type": "boolean" }, @@ -1043,13 +1043,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of runs to return. The service may return fewer than this value. If unspecified, at most 50 runs are returned. The maximum value is 100; values greater than 100 are cut to 100.", + "description": "Optional. The maximum number of runs to return. The service may return fewer than this value. If unspecified, at most 50 runs are returned. The maximum value is 100; values greater than 100 are cut to 100.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The page token received from a previous `ListRuns` call. Specify it to get the next page. When paginating, all other parameters specified in this call must match the parameters of the call that provided the page token.", + "description": "Optional. The page token received from a previous `ListRuns` call. Specify it to get the next page. When paginating, all other parameters specified in this call must match the parameters of the call that provided the page token.", "location": "query", "type": "string" }, @@ -1079,7 +1079,7 @@ ], "parameters": { "allowMissing": { - "description": "If set to true and the run is not found, the request creates it.", + "description": "Optional. If set to true and the run is not found, the request creates it.", "location": "query", "type": "boolean" }, @@ -1091,7 +1091,7 @@ "type": "string" }, "updateMask": { - "description": "The list of fields to update. Currently not used. The whole message is updated.", + "description": "Optional. The list of fields to update. Currently not used. The whole message is updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1155,7 +1155,7 @@ ], "parameters": { "allowMissing": { - "description": "If set to true and the lineage event is not found, the request succeeds but the server doesn't perform any actions.", + "description": "Optional. If set to true and the lineage event is not found, the request succeeds but the server doesn't perform any actions.", "location": "query", "type": "boolean" }, @@ -1210,13 +1210,13 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of lineage events to return. The service may return fewer events than this value. If unspecified, at most 50 events are returned. The maximum value is 100; values greater than 100 are cut to 100.", + "description": "Optional. The maximum number of lineage events to return. The service may return fewer events than this value. If unspecified, at most 50 events are returned. The maximum value is 100; values greater than 100 are cut to 100.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The page token received from a previous `ListLineageEvents` call. Specify it to get the next page. When paginating, all other parameters specified in this call must match the parameters of the call that provided the page token.", + "description": "Optional. The page token received from a previous `ListLineageEvents` call. Specify it to get the next page. When paginating, all other parameters specified in this call must match the parameters of the call that provided the page token.", "location": "query", "type": "string" }, @@ -1247,84 +1247,9 @@ } } }, - "revision": "20260130", + "revision": "20260410", "rootUrl": "https://datalineage.googleapis.com/", "schemas": { - "ApiservingMcpMcpToolDataHandlingProfile": { - "description": "Profile describing the data handling characteristics of an MCP tool. When used within the McpTool.meta field, this message should be packed into a google.protobuf.Any and associated with the key: \"google.com/tool.profiles/data_handling\"", - "id": "ApiservingMcpMcpToolDataHandlingProfile", - "properties": { - "inputDataAccessLevel": { - "description": "// The data access level of the tool's inputs.", - "enum": [ - "DATA_ACCESS_LEVEL_UNSPECIFIED", - "DATA_ACCESS_LEVEL_PUBLIC", - "DATA_ACCESS_LEVEL_CONFIDENTIAL", - "DATA_ACCESS_LEVEL_NEED_TO_KNOW", - "DATA_ACCESS_LEVEL_PII", - "DATA_ACCESS_LEVEL_USER", - "DATA_ACCESS_LEVEL_NO_DATA_ACCESS" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "Public data.", - "Confidential data.", - "Need-to-know data.", - "Personally Identifiable Information (PII) data.", - "User data.", - "The tool does not access any data." - ], - "type": "string" - }, - "outputDataAccessLevel": { - "description": "The data access level of the tool's outputs.", - "enum": [ - "DATA_ACCESS_LEVEL_UNSPECIFIED", - "DATA_ACCESS_LEVEL_PUBLIC", - "DATA_ACCESS_LEVEL_CONFIDENTIAL", - "DATA_ACCESS_LEVEL_NEED_TO_KNOW", - "DATA_ACCESS_LEVEL_PII", - "DATA_ACCESS_LEVEL_USER", - "DATA_ACCESS_LEVEL_NO_DATA_ACCESS" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "Public data.", - "Confidential data.", - "Need-to-know data.", - "Personally Identifiable Information (PII) data.", - "User data.", - "The tool does not access any data." - ], - "type": "string" - } - }, - "type": "object" - }, - "ApiservingMcpMcpToolLifecycleProfile": { - "description": "Profile describing the lifecycle stage of an MCP tool. When used within the McpTool.meta field, this message should be packed into a google.protobuf.Any and associated with the key: \"google.com/tool.profiles/lifecycle\"", - "id": "ApiservingMcpMcpToolLifecycleProfile", - "properties": { - "launchState": { - "description": "Output only. The current launch state of the MCP tool.", - "enum": [ - "LAUNCH_STATE_UNSPECIFIED", - "LAUNCH_STATE_DEVELOPMENT", - "LAUNCH_STATE_PRODUCTION_PREVIEW", - "LAUNCH_STATE_GENERAL_AVAILABILITY" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "The tool is currently in development.", - "The tool is in production preview.", - "The tool is generally available." - ], - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, "GoogleCloudDatacatalogLineageConfigmanagementV1Config": { "description": "Configuration for Data Lineage. Defines different configuration options for Lineage customers to control behaviour of lineage systems.", "id": "GoogleCloudDatacatalogLineageConfigmanagementV1Config", @@ -1381,11 +1306,13 @@ "description": "Required. Integration to which the rule applies. This field can be used to specify the integration against which the ingestion rule should be applied.", "enum": [ "INTEGRATION_UNSPECIFIED", - "DATAPROC" + "DATAPROC", + "LOOKER_CORE" ], "enumDescriptions": [ "Integration is Unspecified", - "Dataproc" + "Dataproc", + "Looker Core" ], "type": "string" } @@ -1663,7 +1590,9 @@ "COMPOSER", "LOOKER_STUDIO", "DATAPROC", - "VERTEX_AI" + "VERTEX_AI", + "DATAFLOW", + "LOOKER_CORE" ], "enumDescriptions": [ "Source is Unspecified", @@ -1673,7 +1602,9 @@ "Composer", "Looker Studio", "Dataproc", - "Vertex AI" + "Vertex AI", + "Dataflow", + "Looker Core" ], "type": "string" } diff --git a/discovery/datamanager-v1.json b/discovery/datamanager-v1.json index ef569a4101b..5ef7d515844 100644 --- a/discovery/datamanager-v1.json +++ b/discovery/datamanager-v1.json @@ -4,6 +4,9 @@ "scopes": { "https://www.googleapis.com/auth/datamanager": { "description": "See, edit, create, import, or delete your customer data in Google Ads, Google Marketing Platform (Campaign Manager 360, Search Ads 360, Display & Video 360), and Google Analytics" + }, + "https://www.googleapis.com/auth/datamanager.partnerlink": { + "description": "View, create, or delete your partner links in Google Ads, Marketing Platform (Campaign Manager 360, Search Ads 360, Display & Video 360), and Analytics" } } } @@ -144,7 +147,7 @@ "partnerLinks": { "methods": { "create": { - "description": "Creates a partner link for the given account. Authorization Headers: This method supports the following optional headers to define how the API authorizes access for the request: * `login-account`: (Optional) The resource name of the account where the Google Account of the credentials is a user. If not set, defaults to the account of the request. Format: `accountTypes/{loginAccountType}/accounts/{loginAccountId}` * `linked-account`: (Optional) The resource name of the account with an established product link to the `login-account`. Format: `accountTypes/{linkedAccountType}/accounts/{linkedAccountId}`", + "description": "Creates a partner link for the given account. Authorization Headers: This method supports the following optional headers to define how the API authorizes access for the request: * `login-account`: (Optional) The resource name of the account where the Google Account of the credentials is a user. If not set, defaults to the account of the request. Format: `accountTypes/{loginAccountType}/accounts/{loginAccountId}`", "flatPath": "v1/accountTypes/{accountTypesId}/accounts/{accountsId}/partnerLinks", "httpMethod": "POST", "id": "datamanager.accountTypes.accounts.partnerLinks.create", @@ -168,11 +171,12 @@ "$ref": "PartnerLink" }, "scopes": [ - "https://www.googleapis.com/auth/datamanager" + "https://www.googleapis.com/auth/datamanager", + "https://www.googleapis.com/auth/datamanager.partnerlink" ] }, "delete": { - "description": "Deletes a partner link for the given account. Authorization Headers: This method supports the following optional headers to define how the API authorizes access for the request: * `login-account`: (Optional) The resource name of the account where the Google Account of the credentials is a user. If not set, defaults to the account of the request. Format: `accountTypes/{loginAccountType}/accounts/{loginAccountId}` * `linked-account`: (Optional) The resource name of the account with an established product link to the `login-account`. Format: `accountTypes/{linkedAccountType}/accounts/{linkedAccountId}`", + "description": "Deletes a partner link for the given account. Authorization Headers: This method supports the following optional headers to define how the API authorizes access for the request: * `login-account`: (Optional) The resource name of the account where the Google Account of the credentials is a user. If not set, defaults to the account of the request. Format: `accountTypes/{loginAccountType}/accounts/{loginAccountId}`", "flatPath": "v1/accountTypes/{accountTypesId}/accounts/{accountsId}/partnerLinks/{partnerLinksId}", "httpMethod": "DELETE", "id": "datamanager.accountTypes.accounts.partnerLinks.delete", @@ -193,11 +197,12 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/datamanager" + "https://www.googleapis.com/auth/datamanager", + "https://www.googleapis.com/auth/datamanager.partnerlink" ] }, "search": { - "description": "Searches for all partner links to and from a given account. Authorization Headers: This method supports the following optional headers to define how the API authorizes access for the request: * `login-account`: (Optional) The resource name of the account where the Google Account of the credentials is a user. If not set, defaults to the account of the request. Format: `accountTypes/{loginAccountType}/accounts/{loginAccountId}` * `linked-account`: (Optional) The resource name of the account with an established product link to the `login-account`. Format: `accountTypes/{linkedAccountType}/accounts/{linkedAccountId}`", + "description": "Searches for all partner links to and from a given account. Authorization Headers: This method supports the following optional headers to define how the API authorizes access for the request: * `login-account`: (Optional) The resource name of the account where the Google Account of the credentials is a user. If not set, defaults to the account of the request. Format: `accountTypes/{loginAccountType}/accounts/{loginAccountId}`", "flatPath": "v1/accountTypes/{accountTypesId}/accounts/{accountsId}/partnerLinks:search", "httpMethod": "GET", "id": "datamanager.accountTypes.accounts.partnerLinks.search", @@ -206,7 +211,7 @@ ], "parameters": { "filter": { - "description": "Optional. A [filter string](//google.aip.dev/160). All fields need to be on the left hand side of each condition (for example: `partner_link_id = 123456789`). Supported operations: - `AND` - `=` - `!=` Supported fields: - `partner_link_id` - `owning_account.account_type` - `owning_account.account_id` - `partner_account.account_type` - `partner_account.account_id` Example: `owning_account.account_type = \"GOOGLE_ADS\" AND partner_account.account_id = 987654321`", + "description": "Optional. A [filter string](https://google.aip.dev/160). All fields need to be on the left hand side of each condition (for example: `partner_link_id = 123456789`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. Supported operations: - `AND` - `=` - `!=` Supported fields: - `partner_link_id` - `owning_account.account_type` - `owning_account.account_id` - `partner_account.account_type` - `partner_account.account_id` Example: `owning_account.account_type = \"GOOGLE_ADS\" AND partner_account.account_id = 987654321`", "location": "query", "type": "string" }, @@ -234,7 +239,8 @@ "$ref": "SearchPartnerLinksResponse" }, "scopes": [ - "https://www.googleapis.com/auth/datamanager" + "https://www.googleapis.com/auth/datamanager", + "https://www.googleapis.com/auth/datamanager.partnerlink" ] } } @@ -304,7 +310,7 @@ ], "parameters": { "filter": { - "description": "Optional. Filters to apply to the list request. All fields need to be on the left hand side of each condition (for example: user_list_id = 123). **Supported Operations:** - `AND` - `=` - `!=` - `>` - `>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time`", + "description": "Optional. A [filter string](https://google.aip.dev/160) to apply to the list request. All fields need to be on the left hand side of each condition (for example: `user_list_id = 123`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. **Supported Operations:** - `AND` - `=` - `!=` - `>` - `>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time`", "location": "query", "type": "string" }, @@ -436,7 +442,7 @@ ], "parameters": { "filter": { - "description": "Optional. Filters to apply to the list request. All fields need to be on the left hand side of each condition (for example: user_list_id = 123). **Supported Operations:** - `AND` - `=` - `!=` - `>` - `>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time`", + "description": "Optional. A [filter string](https://google.aip.dev/160) to apply to the list request. All fields need to be on the left hand side of each condition (for example: `user_list_id = 123`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. **Supported Operations:** - `AND` - `=` - `!=` - `>` - `>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time`", "location": "query", "type": "string" }, @@ -515,7 +521,7 @@ ], "parameters": { "filter": { - "description": "Optional. Filters to apply to the list request. All fields need to be on the left hand side of each condition (for example: user_list_id = 123). **Supported Operations:** - `AND` - `=` - `!=` - `>` - `>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time`", + "description": "Optional. A [filter string](https://google.aip.dev/160) to apply to the list request. All fields need to be on the left hand side of each condition (for example: `user_list_id = 123`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. **Supported Operations:** - `AND` - `=` - `!=` - `>` - `>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time`", "location": "query", "type": "string" }, @@ -650,7 +656,7 @@ ], "parameters": { "filter": { - "description": "Optional. A [filter string](//google.aip.dev/160). All fields need to be on the left hand side of each condition (for example: `display_name = \"list 1\"`). Supported operations: - `AND` - `=` - `!=` - `>` - `>=` - `<` - `<=` - `:` (has) Supported fields: - `id` - `display_name` - `description` - `membership_status` - `integration_code` - `access_reason` - `ingested_user_list_info.upload_key_types`", + "description": "Optional. A [filter string](https://google.aip.dev/160). All fields need to be on the left hand side of each condition (for example: `display_name = \"list 1\"`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. Supported operations: - `AND` - `=` - `!=` - `>` - `>=` - `<` - `<=` - `:` (has) Supported fields: - `id` - `display_name` - `description` - `membership_status` - `integration_code` - `access_reason` - `ingested_user_list_info.upload_key_types`", "location": "query", "type": "string" }, @@ -814,7 +820,7 @@ } } }, - "revision": "20260225", + "revision": "20260420", "rootUrl": "https://datamanager.googleapis.com/", "schemas": { "AdIdentifiers": { @@ -1167,7 +1173,39 @@ "PROCESSING_ERROR_REASON_KEK_PERMISSION_DENIED", "PROCESSING_ERROR_REASON_AWS_AUTH_FAILED", "PROCESSING_ERROR_REASON_USER_IDENTIFIER_DECRYPTION_ERROR", - "PROCESSING_ERROR_OPERATING_ACCOUNT_MISMATCH_FOR_AD_IDENTIFIER" + "PROCESSING_ERROR_OPERATING_ACCOUNT_MISMATCH_FOR_AD_IDENTIFIER", + "PROCESSING_ERROR_REASON_ONE_PER_CLICK_CONVERSION_ACTION_NOT_PERMITTED_WITH_BRAID" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true ], "enumDescriptions": [ "The processing error reason is unknown.", @@ -1197,7 +1235,8 @@ "The system did not have the permissions needed to access the KEK.", "The system failed to authenticate with AWS.", "Failed to decrypt the UserIdentifier data using the DEK.", - "The user attempted to ingest events with an ad identifier that isn't from the operating account's ads." + "The user attempted to ingest events with an ad identifier that isn't from the operating account's ads.", + "One-per-click conversion actions cannot be used with BRAIDs." ], "type": "string" }, @@ -2035,7 +2074,7 @@ "type": "string" }, "matchRatePercentage": { - "description": "Optional. This field denotes the percentage of membership match of this user list with the corresponding publisher's first party data. Must be between 0 and 100 inclusive.", + "description": "Required. This field denotes the percentage of membership match of this user list with the corresponding publisher's first party data. Must be between 0 and 100 inclusive.", "format": "int32", "type": "integer" }, diff --git a/discovery/datamigration-v1.json b/discovery/datamigration-v1.json index fe47b3a324d..2f65a070d3c 100644 --- a/discovery/datamigration-v1.json +++ b/discovery/datamigration-v1.json @@ -15,6 +15,243 @@ "description": "Manage Cloud Database Migration Service resources on Google Cloud Platform.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/database-migration/", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-southeast3.rep.googleapis.com/", + "location": "asia-southeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west15.rep.googleapis.com/", + "location": "europe-west15" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-west4.rep.googleapis.com/", + "location": "us-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-west8.rep.googleapis.com/", + "location": "us-west8" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -171,7 +408,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "datamigration.projects.locations.list", @@ -2350,7 +2587,7 @@ } } }, - "revision": "20260127", + "revision": "20260320", "rootUrl": "https://datamigration.googleapis.com/", "schemas": { "AlloyDbConnectionProfile": { @@ -5844,6 +6081,10 @@ "description": "Optional. The name of the specific database within the host.", "type": "string" }, + "enableIamAuthentication": { + "description": "Optional. If true, Database Migration Service will use IAM database authentication to connect to the database.", + "type": "boolean" + }, "forwardSshConnectivity": { "$ref": "ForwardSshTunnelConnectivity", "description": "Forward SSH tunnel connectivity." @@ -7056,7 +7297,7 @@ "Unspecified.", "Only 'ca_certificate' specified.", "Both server ('ca_certificate'), and client ('client_key', 'client_certificate') specified.", - "Mandates SSL encryption for all connections. This doesn’t require certificate verification.", + "Mandates SSL encryption for all connections. This does not require certificate verification.", "Connection is not encrypted." ], "type": "string" diff --git a/discovery/datamigration-v1beta1.json b/discovery/datamigration-v1beta1.json index 3124addcbdd..7aca36c9c9d 100644 --- a/discovery/datamigration-v1beta1.json +++ b/discovery/datamigration-v1beta1.json @@ -15,6 +15,243 @@ "description": "Manage Cloud Database Migration Service resources on Google Cloud Platform.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/database-migration/", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.asia-southeast3.rep.googleapis.com/", + "location": "asia-southeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west15.rep.googleapis.com/", + "location": "europe-west15" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-west4.rep.googleapis.com/", + "location": "us-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datamigration.us-west8.rep.googleapis.com/", + "location": "us-west8" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -135,7 +372,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "datamigration.projects.locations.list", @@ -1060,7 +1297,7 @@ } } }, - "revision": "20260127", + "revision": "20260320", "rootUrl": "https://datamigration.googleapis.com/", "schemas": { "AuditConfig": { diff --git a/discovery/dataplex-v1.json b/discovery/dataplex-v1.json index 38e7a9fd292..cc01f70e68b 100644 --- a/discovery/dataplex-v1.json +++ b/discovery/dataplex-v1.json @@ -4,6 +4,15 @@ "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." + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud services and see the email address of your Google Account" + }, + "https://www.googleapis.com/auth/dataplex.read-write": { + "description": "See, edit, configure, and delete your Google Cloud Dataplex data and see the email address for your Google Account" + }, + "https://www.googleapis.com/auth/dataplex.readonly": { + "description": "See your Google Cloud Dataplex data and the email address of your Google Account" } } } @@ -388,7 +397,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -418,7 +428,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -443,7 +454,8 @@ "$ref": "GoogleCloudDataplexV1EncryptionConfig" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "getIamPolicy": { @@ -474,7 +486,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -520,7 +533,8 @@ "$ref": "GoogleCloudDataplexV1ListEncryptionConfigsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "patch": { @@ -554,7 +568,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -582,7 +597,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -610,7 +626,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -642,7 +659,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -667,7 +685,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -692,7 +711,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -738,7 +758,8 @@ "$ref": "GoogleLongrunningListOperationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -773,11 +794,12 @@ "$ref": "GoogleCloudLocationLocation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "dataplex.projects.locations.list", @@ -786,7 +808,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -820,7 +842,39 @@ "$ref": "GoogleCloudLocationListLocationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" + ] + }, + "lookupContext": { + "description": "Looks up LLM Context for the specified resources.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:lookupContext", + "httpMethod": "POST", + "id": "dataplex.projects.locations.lookupContext", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The project to which the request should be attributed in the following form: projects/{project}/locations/{location}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:lookupContext", + "request": { + "$ref": "GoogleCloudDataplexV1LookupContextRequest" + }, + "response": { + "$ref": "GoogleCloudDataplexV1LookupContextResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "lookupEntry": { @@ -857,7 +911,7 @@ "type": "string" }, "view": { - "description": "Optional. View to control which parts of an entry the service should return.", + "description": "Optional. View to control which parts of an entry the service should return. Please check the limitations on returned aspects in the Entry view documentation. Amount of returned aspects depends on the selected Entry View.", "enum": [ "ENTRY_VIEW_UNSPECIFIED", "BASIC", @@ -881,7 +935,10 @@ "$ref": "GoogleCloudDataplexV1Entry" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "lookupEntryLinks": { @@ -943,7 +1000,37 @@ "$ref": "GoogleCloudDataplexV1LookupEntryLinksResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" + ] + }, + "modifyEntry": { + "description": "Modifies an entry using the permission on the source system.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:modifyEntry", + "httpMethod": "POST", + "id": "dataplex.projects.locations.modifyEntry", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The project to which the request should be attributed in the following form: projects/{project}/locations/{location}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:modifyEntry", + "request": { + "$ref": "GoogleCloudDataplexV1ModifyEntryRequest" + }, + "response": { + "$ref": "GoogleCloudDataplexV1Entry" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "searchEntries": { @@ -999,7 +1086,10 @@ "$ref": "GoogleCloudDataplexV1SearchEntriesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] } }, @@ -1041,7 +1131,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -1071,7 +1162,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -1096,7 +1188,10 @@ "$ref": "GoogleCloudDataplexV1AspectType" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "getIamPolicy": { @@ -1127,7 +1222,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -1173,7 +1269,10 @@ "$ref": "GoogleCloudDataplexV1ListAspectTypesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -1212,7 +1311,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -1240,7 +1340,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -1268,7 +1369,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -1303,7 +1405,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -1331,7 +1434,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -1359,7 +1463,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -1402,7 +1507,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -1433,7 +1539,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -1459,7 +1566,8 @@ "$ref": "GoogleCloudDataplexV1DataAttributeBinding" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "getIamPolicy": { @@ -1490,7 +1598,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -1537,7 +1646,8 @@ "$ref": "GoogleCloudDataplexV1ListDataAttributeBindingsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "patch": { @@ -1577,7 +1687,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -1605,7 +1716,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -1633,7 +1745,102 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" + ] + } + } + }, + "dataDomains": { + "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": "v1/projects/{projectsId}/locations/{locationsId}/dataDomains/{dataDomainsId}:getIamPolicy", + "httpMethod": "GET", + "id": "dataplex.projects.locations.dataDomains.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/[^/]+/dataDomains/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" + ] + }, + "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": "v1/projects/{projectsId}/locations/{locationsId}/dataDomains/{dataDomainsId}:setIamPolicy", + "httpMethod": "POST", + "id": "dataplex.projects.locations.dataDomains.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/[^/]+/dataDomains/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "GoogleIamV1SetIamPolicyRequest" + }, + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" + ] + }, + "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": "v1/projects/{projectsId}/locations/{locationsId}/dataDomains/{dataDomainsId}:testIamPermissions", + "httpMethod": "POST", + "id": "dataplex.projects.locations.dataDomains.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/[^/]+/dataDomains/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "GoogleIamV1TestIamPermissionsRequest" + }, + "response": { + "$ref": "GoogleIamV1TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -1675,7 +1882,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -1710,7 +1918,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -1735,7 +1944,10 @@ "$ref": "GoogleCloudDataplexV1DataProduct" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "getIamPolicy": { @@ -1766,7 +1978,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -1812,7 +2025,10 @@ "$ref": "GoogleCloudDataplexV1ListDataProductsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -1851,7 +2067,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -1879,7 +2096,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -1907,7 +2125,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } }, @@ -1949,7 +2168,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -1984,7 +2204,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -2009,7 +2230,10 @@ "$ref": "GoogleCloudDataplexV1DataAsset" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "list": { @@ -2055,7 +2279,10 @@ "$ref": "GoogleCloudDataplexV1ListDataAssetsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -2094,7 +2321,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -2138,7 +2366,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -2168,7 +2397,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "generateDataQualityRules": { @@ -2196,7 +2426,8 @@ "$ref": "GoogleCloudDataplexV1GenerateDataQualityRulesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -2236,7 +2467,10 @@ "$ref": "GoogleCloudDataplexV1DataScan" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "getIamPolicy": { @@ -2267,7 +2501,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -2313,7 +2548,10 @@ "$ref": "GoogleCloudDataplexV1ListDataScansResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -2352,7 +2590,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "run": { @@ -2380,7 +2619,8 @@ "$ref": "GoogleCloudDataplexV1RunDataScanResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -2408,7 +2648,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -2436,13 +2677,43 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } }, "resources": { "jobs": { "methods": { + "cancel": { + "description": "Cancels a running/pending DataScan job.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}/jobs/{jobsId}:cancel", + "httpMethod": "POST", + "id": "dataplex.projects.locations.dataScans.jobs.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the DataScanJob: projects/{project_id_or_number}/locations/{location_id}/dataScans/{data_scan_id}/jobs/{data_scan_job_id} where project_id_or_number refers to a project_id or project_number and location_id refers to a Google Cloud region.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+/jobs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "request": { + "$ref": "GoogleCloudDataplexV1CancelDataScanJobRequest" + }, + "response": { + "$ref": "GoogleCloudDataplexV1CancelDataScanJobResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" + ] + }, "generateDataQualityRules": { "description": "Generates recommended data quality rules based on the results of a data profiling scan.Use the recommendations to build rules for a data quality scan.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}/jobs/{jobsId}:generateDataQualityRules", @@ -2468,7 +2739,8 @@ "$ref": "GoogleCloudDataplexV1GenerateDataQualityRulesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -2508,7 +2780,10 @@ "$ref": "GoogleCloudDataplexV1DataScanJob" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "list": { @@ -2549,7 +2824,10 @@ "$ref": "GoogleCloudDataplexV1ListDataScanJobsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] } } @@ -2593,7 +2871,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -2624,7 +2903,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -2649,7 +2929,8 @@ "$ref": "GoogleCloudDataplexV1DataTaxonomy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "getIamPolicy": { @@ -2680,7 +2961,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -2727,7 +3009,8 @@ "$ref": "GoogleCloudDataplexV1ListDataTaxonomiesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "patch": { @@ -2767,7 +3050,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -2795,7 +3079,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -2823,7 +3108,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } }, @@ -2866,7 +3152,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -2897,7 +3184,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -2923,7 +3211,8 @@ "$ref": "GoogleCloudDataplexV1DataAttribute" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "getIamPolicy": { @@ -2954,7 +3243,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -3001,7 +3291,8 @@ "$ref": "GoogleCloudDataplexV1ListDataAttributesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "patch": { @@ -3041,7 +3332,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -3069,7 +3361,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -3097,7 +3390,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -3141,7 +3435,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -3171,7 +3466,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -3196,7 +3492,10 @@ "$ref": "GoogleCloudDataplexV1EntryGroup" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "getIamPolicy": { @@ -3227,7 +3526,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -3273,7 +3573,10 @@ "$ref": "GoogleCloudDataplexV1ListEntryGroupsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -3312,7 +3615,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -3340,7 +3644,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -3368,7 +3673,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } }, @@ -3405,7 +3711,8 @@ "$ref": "GoogleCloudDataplexV1Entry" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -3430,7 +3737,8 @@ "$ref": "GoogleCloudDataplexV1Entry" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -3462,7 +3770,7 @@ "type": "string" }, "view": { - "description": "Optional. View to control which parts of an entry the service should return.", + "description": "Optional. View to control which parts of an entry the service should return. Please check the limitations on returned aspects in the Entry view documentation. Amount of returned aspects depends on the selected Entry View.", "enum": [ "ENTRY_VIEW_UNSPECIFIED", "BASIC", @@ -3486,7 +3794,10 @@ "$ref": "GoogleCloudDataplexV1Entry" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "list": { @@ -3527,7 +3838,10 @@ "$ref": "GoogleCloudDataplexV1ListEntriesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -3577,7 +3891,8 @@ "$ref": "GoogleCloudDataplexV1Entry" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -3614,7 +3929,8 @@ "$ref": "GoogleCloudDataplexV1EntryLink" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -3639,7 +3955,8 @@ "$ref": "GoogleCloudDataplexV1EntryLink" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -3664,7 +3981,48 @@ "$ref": "GoogleCloudDataplexV1EntryLink" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" + ] + }, + "patch": { + "description": "Updates an Entry Link.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/entryGroups/{entryGroupsId}/entryLinks/{entryLinksId}", + "httpMethod": "PATCH", + "id": "dataplex.projects.locations.entryGroups.entryLinks.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true and the entry link doesn't exist, the service will create it.", + "location": "query", + "type": "boolean" + }, + "aspectKeys": { + "description": "Optional. The map keys of the Aspects which the service should modify. It should be the aspect type reference in the format {project_id_or_number}.{location_id}.{aspect_type_id}.If this field is left empty, the service treats it as specifying exactly those Aspects present in the request.", + "location": "query", + "repeated": true, + "type": "string" + }, + "name": { + "description": "Output only. Immutable. Identifier. The relative resource name of the Entry Link, of the form: projects/{project_id_or_number}/locations/{location_id}/entryGroups/{entry_group_id}/entryLinks/{entry_link_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/entryGroups/[^/]+/entryLinks/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudDataplexV1EntryLink" + }, + "response": { + "$ref": "GoogleCloudDataplexV1EntryLink" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -3701,7 +4059,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -3729,7 +4088,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -3757,7 +4117,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -3799,7 +4160,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -3829,7 +4191,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -3854,7 +4217,10 @@ "$ref": "GoogleCloudDataplexV1EntryType" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "getIamPolicy": { @@ -3885,7 +4251,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -3931,7 +4298,10 @@ "$ref": "GoogleCloudDataplexV1ListEntryTypesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -3970,7 +4340,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -3998,7 +4369,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -4026,7 +4398,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -4068,7 +4441,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -4098,7 +4472,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -4123,7 +4498,10 @@ "$ref": "GoogleCloudDataplexV1Glossary" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "getIamPolicy": { @@ -4154,7 +4532,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -4200,7 +4579,10 @@ "$ref": "GoogleCloudDataplexV1ListGlossariesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -4239,7 +4621,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -4267,7 +4650,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -4295,7 +4679,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } }, @@ -4332,7 +4717,8 @@ "$ref": "GoogleCloudDataplexV1GlossaryCategory" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -4357,7 +4743,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -4382,7 +4769,10 @@ "$ref": "GoogleCloudDataplexV1GlossaryCategory" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "getIamPolicy": { @@ -4413,7 +4803,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -4459,7 +4850,10 @@ "$ref": "GoogleCloudDataplexV1ListGlossaryCategoriesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -4493,7 +4887,8 @@ "$ref": "GoogleCloudDataplexV1GlossaryCategory" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -4521,7 +4916,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -4549,7 +4945,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -4586,7 +4983,8 @@ "$ref": "GoogleCloudDataplexV1GlossaryTerm" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -4611,7 +5009,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -4636,7 +5035,10 @@ "$ref": "GoogleCloudDataplexV1GlossaryTerm" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "getIamPolicy": { @@ -4667,7 +5069,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -4713,7 +5116,10 @@ "$ref": "GoogleCloudDataplexV1ListGlossaryTermsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -4747,7 +5153,8 @@ "$ref": "GoogleCloudDataplexV1GlossaryTerm" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -4775,7 +5182,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -4803,7 +5211,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -4840,7 +5249,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -4868,7 +5278,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -4896,7 +5307,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -4938,7 +5350,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -4963,7 +5376,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -4988,7 +5402,10 @@ "$ref": "GoogleCloudDataplexV1Lake" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "getIamPolicy": { @@ -5019,7 +5436,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -5065,7 +5483,10 @@ "$ref": "GoogleCloudDataplexV1ListLakesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -5104,7 +5525,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -5132,7 +5554,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -5160,7 +5583,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } }, @@ -5200,116 +5624,114 @@ "$ref": "GoogleCloudDataplexV1ListActionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] } } }, - "content": { + "tasks": { "methods": { "create": { - "description": "Create a content.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/content", + "description": "Creates a task resource within a lake.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks", "httpMethod": "POST", - "id": "dataplex.projects.locations.lakes.content.create", + "id": "dataplex.projects.locations.lakes.tasks.create", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The resource name of the parent lake: projects/{project_id}/locations/{location_id}/lakes/{lake_id}", + "description": "Required. The resource name of the parent lake: projects/{project_number}/locations/{location_id}/lakes/{lake_id}.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+$", "required": true, "type": "string" }, + "taskId": { + "description": "Required. Task identifier.", + "location": "query", + "type": "string" + }, "validateOnly": { "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", "location": "query", "type": "boolean" } }, - "path": "v1/{+parent}/content", + "path": "v1/{+parent}/tasks", "request": { - "$ref": "GoogleCloudDataplexV1Content" + "$ref": "GoogleCloudDataplexV1Task" }, "response": { - "$ref": "GoogleCloudDataplexV1Content" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { - "description": "Delete a content.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/content/{contentId}", + "description": "Delete the task resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks/{tasksId}", "httpMethod": "DELETE", - "id": "dataplex.projects.locations.lakes.content.delete", + "id": "dataplex.projects.locations.lakes.tasks.delete", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the content: projects/{project_id}/locations/{location_id}/lakes/{lake_id}/content/{content_id}", + "description": "Required. The resource name of the task: projects/{project_number}/locations/{location_id}/lakes/{lake_id}/task/{task_id}.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/content/.*$", + "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/tasks/[^/]+$", "required": true, "type": "string" } }, "path": "v1/{+name}", "response": { - "$ref": "Empty" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { - "description": "Get a content resource.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/content/{contentId}", + "description": "Get task resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks/{tasksId}", "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.content.get", + "id": "dataplex.projects.locations.lakes.tasks.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The resource name of the content: projects/{project_id}/locations/{location_id}/lakes/{lake_id}/content/{content_id}", + "description": "Required. The resource name of the task: projects/{project_number}/locations/{location_id}/lakes/{lake_id}/tasks/{tasks_id}.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/content/.*$", + "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/tasks/[^/]+$", "required": true, "type": "string" - }, - "view": { - "description": "Optional. Specify content view to make a partial request.", - "enum": [ - "CONTENT_VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "enumDescriptions": [ - "Content view not specified. Defaults to BASIC. The API will default to the BASIC view.", - "Will not return the data_text field.", - "Returns the complete proto." - ], - "location": "query", - "type": "string" } }, "path": "v1/{+name}", "response": { - "$ref": "GoogleCloudDataplexV1Content" + "$ref": "GoogleCloudDataplexV1Task" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "getIamPolicy": { - "description": "Gets the access control policy for a contentitem resource. A NOT_FOUND error is returned if the resource does not exist. An empty policy is returned if the resource exists but does not have a policy set on it.Caller must have Google IAM dataplex.content.getIamPolicy permission on the resource.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/content/{contentId}: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": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks/{tasksId}:getIamPolicy", "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.content.getIamPolicy", + "id": "dataplex.projects.locations.lakes.tasks.getIamPolicy", "parameterOrder": [ "resource" ], @@ -5323,7 +5745,7 @@ "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/[^/]+/lakes/[^/]+/content/.*$", + "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/tasks/[^/]+$", "required": true, "type": "string" } @@ -5333,63 +5755,72 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { - "description": "List content.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/content", + "description": "Lists tasks under the given lake.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks", "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.content.list", + "id": "dataplex.projects.locations.lakes.tasks.list", "parameterOrder": [ "parent" ], "parameters": { "filter": { - "description": "Optional. Filter request. Filters are case-sensitive. The following formats are supported:labels.key1 = \"value1\" labels:key1 type = \"NOTEBOOK\" type = \"SQL_SCRIPT\"These restrictions can be coinjoined with AND, OR and NOT conjunctions.", + "description": "Optional. Filter request.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Order by fields for the result.", "location": "query", "type": "string" }, "pageSize": { - "description": "Optional. Maximum number of content to return. The service may return fewer than this value. If unspecified, at most 10 content will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "description": "Optional. Maximum number of tasks to return. The service may return fewer than this value. If unspecified, at most 10 tasks will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Optional. Page token received from a previous ListContent call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListContent must match the call that provided the page token.", + "description": "Optional. Page token received from a previous ListZones call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListZones must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The resource name of the parent lake: projects/{project_id}/locations/{location_id}/lakes/{lake_id}", + "description": "Required. The resource name of the parent lake: projects/{project_number}/locations/{location_id}/lakes/{lake_id}.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/content", + "path": "v1/{+parent}/tasks", "response": { - "$ref": "GoogleCloudDataplexV1ListContentResponse" + "$ref": "GoogleCloudDataplexV1ListTasksResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { - "description": "Update a content. Only supports full resource update.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/content/{contentId}", + "description": "Update the task resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks/{tasksId}", "httpMethod": "PATCH", - "id": "dataplex.projects.locations.lakes.content.patch", + "id": "dataplex.projects.locations.lakes.tasks.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Output only. The relative resource name of the content, of the form: projects/{project_id}/locations/{location_id}/lakes/{lake_id}/content/{content_id}", + "description": "Output only. The relative resource name of the task, of the form: projects/{project_number}/locations/{location_id}/lakes/{lake_id}/ tasks/{task_id}.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/content/.*$", + "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/tasks/[^/]+$", "required": true, "type": "string" }, @@ -5407,892 +5838,50 @@ }, "path": "v1/{+name}", "request": { - "$ref": "GoogleCloudDataplexV1Content" + "$ref": "GoogleCloudDataplexV1Task" }, "response": { - "$ref": "GoogleCloudDataplexV1Content" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified contentitem resource. Replaces any existing policy.Caller must have Google IAM dataplex.content.setIamPolicy permission on the resource.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/content/{contentId}:setIamPolicy", + "run": { + "description": "Run an on demand execution of a Task.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks/{tasksId}:run", "httpMethod": "POST", - "id": "dataplex.projects.locations.lakes.content.setIamPolicy", + "id": "dataplex.projects.locations.lakes.tasks.run", "parameterOrder": [ - "resource" + "name" ], "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.", + "name": { + "description": "Required. The resource name of the task: projects/{project_number}/locations/{location_id}/lakes/{lake_id}/tasks/{task_id}.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/content/.*$", + "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/tasks/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+resource}:setIamPolicy", + "path": "v1/{+name}:run", "request": { - "$ref": "GoogleIamV1SetIamPolicyRequest" + "$ref": "GoogleCloudDataplexV1RunTaskRequest" }, "response": { - "$ref": "GoogleIamV1Policy" + "$ref": "GoogleCloudDataplexV1RunTaskResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, - "testIamPermissions": { - "description": "Returns the caller's permissions on a resource. If the resource does not exist, an empty set of permissions is returned (a NOT_FOUND error is not returned).A caller is not required to have Google IAM permission to make this request.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": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/content/{contentId}:testIamPermissions", + "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": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks/{tasksId}:setIamPolicy", "httpMethod": "POST", - "id": "dataplex.projects.locations.lakes.content.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/[^/]+/lakes/[^/]+/content/.*$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:testIamPermissions", - "request": { - "$ref": "GoogleIamV1TestIamPermissionsRequest" - }, - "response": { - "$ref": "GoogleIamV1TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, - "contentitems": { - "methods": { - "create": { - "description": "Create a content.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/contentitems", - "httpMethod": "POST", - "id": "dataplex.projects.locations.lakes.contentitems.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The resource name of the parent lake: projects/{project_id}/locations/{location_id}/lakes/{lake_id}", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+$", - "required": true, - "type": "string" - }, - "validateOnly": { - "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1/{+parent}/contentitems", - "request": { - "$ref": "GoogleCloudDataplexV1Content" - }, - "response": { - "$ref": "GoogleCloudDataplexV1Content" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Delete a content.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/contentitems/{contentitemsId}", - "httpMethod": "DELETE", - "id": "dataplex.projects.locations.lakes.contentitems.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the content: projects/{project_id}/locations/{location_id}/lakes/{lake_id}/content/{content_id}", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/contentitems/.*$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+name}", - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Get a content resource.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/contentitems/{contentitemsId}", - "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.contentitems.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the content: projects/{project_id}/locations/{location_id}/lakes/{lake_id}/content/{content_id}", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/contentitems/.*$", - "required": true, - "type": "string" - }, - "view": { - "description": "Optional. Specify content view to make a partial request.", - "enum": [ - "CONTENT_VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "enumDescriptions": [ - "Content view not specified. Defaults to BASIC. The API will default to the BASIC view.", - "Will not return the data_text field.", - "Returns the complete proto." - ], - "location": "query", - "type": "string" - } - }, - "path": "v1/{+name}", - "response": { - "$ref": "GoogleCloudDataplexV1Content" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "getIamPolicy": { - "description": "Gets the access control policy for a contentitem resource. A NOT_FOUND error is returned if the resource does not exist. An empty policy is returned if the resource exists but does not have a policy set on it.Caller must have Google IAM dataplex.content.getIamPolicy permission on the resource.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/contentitems/{contentitemsId}:getIamPolicy", - "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.contentitems.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/[^/]+/lakes/[^/]+/contentitems/.*$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:getIamPolicy", - "response": { - "$ref": "GoogleIamV1Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "List content.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/contentitems", - "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.contentitems.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Optional. Filter request. Filters are case-sensitive. The following formats are supported:labels.key1 = \"value1\" labels:key1 type = \"NOTEBOOK\" type = \"SQL_SCRIPT\"These restrictions can be coinjoined with AND, OR and NOT conjunctions.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Optional. Maximum number of content to return. The service may return fewer than this value. If unspecified, at most 10 content will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. Page token received from a previous ListContent call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListContent must match the call that provided the page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the parent lake: projects/{project_id}/locations/{location_id}/lakes/{lake_id}", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+parent}/contentitems", - "response": { - "$ref": "GoogleCloudDataplexV1ListContentResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "patch": { - "description": "Update a content. Only supports full resource update.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/contentitems/{contentitemsId}", - "httpMethod": "PATCH", - "id": "dataplex.projects.locations.lakes.contentitems.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Output only. The relative resource name of the content, of the form: projects/{project_id}/locations/{location_id}/lakes/{lake_id}/content/{content_id}", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/contentitems/.*$", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "Required. Mask of fields to update.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1/{+name}", - "request": { - "$ref": "GoogleCloudDataplexV1Content" - }, - "response": { - "$ref": "GoogleCloudDataplexV1Content" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified contentitem resource. Replaces any existing policy.Caller must have Google IAM dataplex.content.setIamPolicy permission on the resource.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/contentitems/{contentitemsId}:setIamPolicy", - "httpMethod": "POST", - "id": "dataplex.projects.locations.lakes.contentitems.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/[^/]+/lakes/[^/]+/contentitems/.*$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:setIamPolicy", - "request": { - "$ref": "GoogleIamV1SetIamPolicyRequest" - }, - "response": { - "$ref": "GoogleIamV1Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "testIamPermissions": { - "description": "Returns the caller's permissions on a resource. If the resource does not exist, an empty set of permissions is returned (a NOT_FOUND error is not returned).A caller is not required to have Google IAM permission to make this request.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": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/contentitems/{contentitemsId}:testIamPermissions", - "httpMethod": "POST", - "id": "dataplex.projects.locations.lakes.contentitems.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/[^/]+/lakes/[^/]+/contentitems/.*$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:testIamPermissions", - "request": { - "$ref": "GoogleIamV1TestIamPermissionsRequest" - }, - "response": { - "$ref": "GoogleIamV1TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, - "environments": { - "methods": { - "create": { - "description": "Create an environment resource.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/environments", - "httpMethod": "POST", - "id": "dataplex.projects.locations.lakes.environments.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "environmentId": { - "description": "Required. Environment identifier. * Must contain only lowercase letters, numbers and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the lake.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the parent lake: projects/{project_id}/locations/{location_id}/lakes/{lake_id}.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+$", - "required": true, - "type": "string" - }, - "validateOnly": { - "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1/{+parent}/environments", - "request": { - "$ref": "GoogleCloudDataplexV1Environment" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Delete the environment resource. All the child resources must have been deleted before environment deletion can be initiated.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/environments/{environmentsId}", - "httpMethod": "DELETE", - "id": "dataplex.projects.locations.lakes.environments.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the environment: projects/{project_id}/locations/{location_id}/lakes/{lake_id}/environments/{environment_id}.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/environments/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Get environment resource.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/environments/{environmentsId}", - "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.environments.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the environment: projects/{project_id}/locations/{location_id}/lakes/{lake_id}/environments/{environment_id}.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/environments/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+name}", - "response": { - "$ref": "GoogleCloudDataplexV1Environment" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "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": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/environments/{environmentsId}:getIamPolicy", - "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.environments.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/[^/]+/lakes/[^/]+/environments/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:getIamPolicy", - "response": { - "$ref": "GoogleIamV1Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists environments under the given lake.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/environments", - "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.environments.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Optional. Filter request.", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "Optional. Order by fields for the result.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Optional. Maximum number of environments to return. The service may return fewer than this value. If unspecified, at most 10 environments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. Page token received from a previous ListEnvironments call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListEnvironments must match the call that provided the page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the parent lake: projects/{project_id}/locations/{location_id}/lakes/{lake_id}.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+parent}/environments", - "response": { - "$ref": "GoogleCloudDataplexV1ListEnvironmentsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "patch": { - "description": "Update the environment resource.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/environments/{environmentsId}", - "httpMethod": "PATCH", - "id": "dataplex.projects.locations.lakes.environments.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Output only. The relative resource name of the environment, of the form: projects/{project_id}/locations/{location_id}/lakes/{lake_id}/environment/{environment_id}", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/environments/[^/]+$", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "Required. Mask of fields to update.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1/{+name}", - "request": { - "$ref": "GoogleCloudDataplexV1Environment" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "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": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/environments/{environmentsId}:setIamPolicy", - "httpMethod": "POST", - "id": "dataplex.projects.locations.lakes.environments.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/[^/]+/lakes/[^/]+/environments/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:setIamPolicy", - "request": { - "$ref": "GoogleIamV1SetIamPolicyRequest" - }, - "response": { - "$ref": "GoogleIamV1Policy" - }, - "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": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/environments/{environmentsId}:testIamPermissions", - "httpMethod": "POST", - "id": "dataplex.projects.locations.lakes.environments.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/[^/]+/lakes/[^/]+/environments/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:testIamPermissions", - "request": { - "$ref": "GoogleIamV1TestIamPermissionsRequest" - }, - "response": { - "$ref": "GoogleIamV1TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "sessions": { - "methods": { - "list": { - "description": "Lists session resources in an environment.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/environments/{environmentsId}/sessions", - "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.environments.sessions.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Optional. Filter request. The following mode filter is supported to return only the sessions belonging to the requester when the mode is USER and return sessions of all the users when the mode is ADMIN. When no filter is sent default to USER mode. NOTE: When the mode is ADMIN, the requester should have dataplex.environments.listAllSessions permission to list all sessions, in absence of the permission, the request fails.mode = ADMIN | USER", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Optional. Maximum number of sessions to return. The service may return fewer than this value. If unspecified, at most 10 sessions will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. Page token received from a previous ListSessions call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListSessions must match the call that provided the page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the parent environment: projects/{project_number}/locations/{location_id}/lakes/{lake_id}/environment/{environment_id}.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/environments/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+parent}/sessions", - "response": { - "$ref": "GoogleCloudDataplexV1ListSessionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } - }, - "tasks": { - "methods": { - "create": { - "description": "Creates a task resource within a lake.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks", - "httpMethod": "POST", - "id": "dataplex.projects.locations.lakes.tasks.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The resource name of the parent lake: projects/{project_number}/locations/{location_id}/lakes/{lake_id}.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+$", - "required": true, - "type": "string" - }, - "taskId": { - "description": "Required. Task identifier.", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1/{+parent}/tasks", - "request": { - "$ref": "GoogleCloudDataplexV1Task" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Delete the task resource.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks/{tasksId}", - "httpMethod": "DELETE", - "id": "dataplex.projects.locations.lakes.tasks.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the task: projects/{project_number}/locations/{location_id}/lakes/{lake_id}/task/{task_id}.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/tasks/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Get task resource.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks/{tasksId}", - "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.tasks.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the task: projects/{project_number}/locations/{location_id}/lakes/{lake_id}/tasks/{tasks_id}.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/tasks/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+name}", - "response": { - "$ref": "GoogleCloudDataplexV1Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "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": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks/{tasksId}:getIamPolicy", - "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.tasks.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/[^/]+/lakes/[^/]+/tasks/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:getIamPolicy", - "response": { - "$ref": "GoogleIamV1Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists tasks under the given lake.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks", - "httpMethod": "GET", - "id": "dataplex.projects.locations.lakes.tasks.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "Optional. Filter request.", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "Optional. Order by fields for the result.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Optional. Maximum number of tasks to return. The service may return fewer than this value. If unspecified, at most 10 tasks will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. Page token received from a previous ListZones call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListZones must match the call that provided the page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource name of the parent lake: projects/{project_number}/locations/{location_id}/lakes/{lake_id}.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+parent}/tasks", - "response": { - "$ref": "GoogleCloudDataplexV1ListTasksResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "patch": { - "description": "Update the task resource.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks/{tasksId}", - "httpMethod": "PATCH", - "id": "dataplex.projects.locations.lakes.tasks.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Output only. The relative resource name of the task, of the form: projects/{project_number}/locations/{location_id}/lakes/{lake_id}/ tasks/{task_id}.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/tasks/[^/]+$", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "Required. Mask of fields to update.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1/{+name}", - "request": { - "$ref": "GoogleCloudDataplexV1Task" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "run": { - "description": "Run an on demand execution of a Task.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks/{tasksId}:run", - "httpMethod": "POST", - "id": "dataplex.projects.locations.lakes.tasks.run", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The resource name of the task: projects/{project_number}/locations/{location_id}/lakes/{lake_id}/tasks/{task_id}.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/lakes/[^/]+/tasks/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+name}:run", - "request": { - "$ref": "GoogleCloudDataplexV1RunTaskRequest" - }, - "response": { - "$ref": "GoogleCloudDataplexV1RunTaskResponse" - }, - "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": "v1/projects/{projectsId}/locations/{locationsId}/lakes/{lakesId}/tasks/{tasksId}:setIamPolicy", - "httpMethod": "POST", - "id": "dataplex.projects.locations.lakes.tasks.setIamPolicy", + "id": "dataplex.projects.locations.lakes.tasks.setIamPolicy", "parameterOrder": [ "resource" ], @@ -6313,7 +5902,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -6341,7 +5931,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } }, @@ -6373,7 +5964,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -6398,7 +5990,10 @@ "$ref": "GoogleCloudDataplexV1Job" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "list": { @@ -6434,7 +6029,10 @@ "$ref": "GoogleCloudDataplexV1ListJobsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] } } @@ -6478,7 +6076,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -6503,7 +6102,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -6528,7 +6128,10 @@ "$ref": "GoogleCloudDataplexV1Zone" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "getIamPolicy": { @@ -6559,7 +6162,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -6605,7 +6209,10 @@ "$ref": "GoogleCloudDataplexV1ListZonesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -6644,7 +6251,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -6672,7 +6280,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -6700,7 +6309,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } }, @@ -6740,7 +6350,10 @@ "$ref": "GoogleCloudDataplexV1ListActionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] } } @@ -6782,7 +6395,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -6807,7 +6421,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -6832,7 +6447,10 @@ "$ref": "GoogleCloudDataplexV1Asset" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "getIamPolicy": { @@ -6863,7 +6481,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -6909,7 +6528,10 @@ "$ref": "GoogleCloudDataplexV1ListAssetsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] }, "patch": { @@ -6948,7 +6570,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "setIamPolicy": { @@ -6976,7 +6599,8 @@ "$ref": "GoogleIamV1Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "testIamPermissions": { @@ -7004,7 +6628,8 @@ "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } }, @@ -7044,7 +6669,10 @@ "$ref": "GoogleCloudDataplexV1ListActionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/dataplex.read-write", + "https://www.googleapis.com/auth/dataplex.readonly" ] } } @@ -7083,7 +6711,8 @@ "$ref": "GoogleCloudDataplexV1Entity" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -7113,7 +6742,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -7155,7 +6785,8 @@ "$ref": "GoogleCloudDataplexV1Entity" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -7211,7 +6842,8 @@ "$ref": "GoogleCloudDataplexV1ListEntitiesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "update": { @@ -7244,7 +6876,8 @@ "$ref": "GoogleCloudDataplexV1Entity" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } }, @@ -7281,7 +6914,8 @@ "$ref": "GoogleCloudDataplexV1Partition" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -7312,7 +6946,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -7337,7 +6972,8 @@ "$ref": "GoogleCloudDataplexV1Partition" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -7378,7 +7014,8 @@ "$ref": "GoogleCloudDataplexV1ListPartitionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -7426,7 +7063,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -7451,7 +7089,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -7476,7 +7115,8 @@ "$ref": "GoogleCloudDataplexV1MetadataFeed" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -7522,7 +7162,8 @@ "$ref": "GoogleCloudDataplexV1ListMetadataFeedsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "patch": { @@ -7561,7 +7202,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -7593,7 +7235,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "create": { @@ -7631,7 +7274,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -7656,7 +7300,8 @@ "$ref": "GoogleCloudDataplexV1MetadataJob" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -7702,7 +7347,8 @@ "$ref": "GoogleCloudDataplexV1ListMetadataJobsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -7734,7 +7380,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "delete": { @@ -7759,7 +7406,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "get": { @@ -7784,7 +7432,8 @@ "$ref": "GoogleLongrunningOperation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] }, "list": { @@ -7830,98 +7479,8 @@ "$ref": "GoogleLongrunningListOperationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, - "policyIntents": { - "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": "v1/projects/{projectsId}/locations/{locationsId}/policyIntents/{policyIntentsId}:getIamPolicy", - "httpMethod": "GET", - "id": "dataplex.projects.locations.policyIntents.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/[^/]+/policyIntents/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:getIamPolicy", - "response": { - "$ref": "GoogleIamV1Policy" - }, - "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": "v1/projects/{projectsId}/locations/{locationsId}/policyIntents/{policyIntentsId}:setIamPolicy", - "httpMethod": "POST", - "id": "dataplex.projects.locations.policyIntents.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/[^/]+/policyIntents/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:setIamPolicy", - "request": { - "$ref": "GoogleIamV1SetIamPolicyRequest" - }, - "response": { - "$ref": "GoogleIamV1Policy" - }, - "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": "v1/projects/{projectsId}/locations/{locationsId}/policyIntents/{policyIntentsId}:testIamPermissions", - "httpMethod": "POST", - "id": "dataplex.projects.locations.policyIntents.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/[^/]+/policyIntents/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:testIamPermissions", - "request": { - "$ref": "GoogleIamV1TestIamPermissionsRequest" - }, - "response": { - "$ref": "GoogleIamV1TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataplex.read-write" ] } } @@ -7931,7 +7490,7 @@ } } }, - "revision": "20260213", + "revision": "20260428", "rootUrl": "https://dataplex.googleapis.com/", "schemas": { "Empty": { @@ -8150,7 +7709,7 @@ "type": "object" }, "GoogleCloudDataplexV1Aspect": { - "description": "An aspect is a single piece of metadata describing an entry.", + "description": "Represents a single piece of metadata describing an entry or entry link.", "id": "GoogleCloudDataplexV1Aspect", "properties": { "aspectSource": { @@ -8788,161 +8347,79 @@ }, "updateTime": { "description": "Last update time of the status.", - "format": "google-datetime", - "type": "string" - } - }, - "type": "object" - }, - "GoogleCloudDataplexV1BusinessGlossaryEvent": { - "description": "Payload associated with Business Glossary related log events.", - "id": "GoogleCloudDataplexV1BusinessGlossaryEvent", - "properties": { - "eventType": { - "description": "The type of the event.", - "enum": [ - "EVENT_TYPE_UNSPECIFIED", - "GLOSSARY_CREATE", - "GLOSSARY_UPDATE", - "GLOSSARY_DELETE", - "GLOSSARY_CATEGORY_CREATE", - "GLOSSARY_CATEGORY_UPDATE", - "GLOSSARY_CATEGORY_DELETE", - "GLOSSARY_TERM_CREATE", - "GLOSSARY_TERM_UPDATE", - "GLOSSARY_TERM_DELETE" - ], - "enumDescriptions": [ - "An unspecified event type.", - "Glossary create event.", - "Glossary update event.", - "Glossary delete event.", - "Glossary category create event.", - "Glossary category update event.", - "Glossary category delete event.", - "Glossary term create event.", - "Glossary term update event.", - "Glossary term delete event." - ], - "type": "string" - }, - "message": { - "description": "The log message.", - "type": "string" - }, - "resource": { - "description": "Name of the resource.", - "type": "string" - } - }, - "type": "object" - }, - "GoogleCloudDataplexV1CancelJobRequest": { - "description": "Cancel task jobs.", - "id": "GoogleCloudDataplexV1CancelJobRequest", - "properties": {}, - "type": "object" - }, - "GoogleCloudDataplexV1CancelMetadataJobRequest": { - "description": "Cancel metadata job request.", - "id": "GoogleCloudDataplexV1CancelMetadataJobRequest", - "properties": {}, - "type": "object" - }, - "GoogleCloudDataplexV1Content": { - "description": "Content represents a user-visible notebook or a sql script", - "id": "GoogleCloudDataplexV1Content", - "properties": { - "createTime": { - "description": "Output only. Content creation time.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - }, - "dataText": { - "description": "Required. Content data in string format.", - "type": "string" - }, - "description": { - "description": "Optional. Description of the content.", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. User defined labels for the content.", - "type": "object" - }, - "name": { - "description": "Output only. The relative resource name of the content, of the form: projects/{project_id}/locations/{location_id}/lakes/{lake_id}/content/{content_id}", - "readOnly": true, - "type": "string" - }, - "notebook": { - "$ref": "GoogleCloudDataplexV1ContentNotebook", - "description": "Notebook related configurations." - }, - "path": { - "description": "Required. The path for the Content file, represented as directory structure. Unique within a lake. Limited to alphanumerics, hyphens, underscores, dots and slashes.", - "type": "string" - }, - "sqlScript": { - "$ref": "GoogleCloudDataplexV1ContentSqlScript", - "description": "Sql Script related configurations." - }, - "uid": { - "description": "Output only. System generated globally unique ID for the content. This ID will be different if the content is deleted and re-created with the same name.", - "readOnly": true, - "type": "string" - }, - "updateTime": { - "description": "Output only. The time when the content was last updated.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "GoogleCloudDataplexV1ContentNotebook": { - "description": "Configuration for Notebook content.", - "id": "GoogleCloudDataplexV1ContentNotebook", - "properties": { - "kernelType": { - "description": "Required. Kernel Type of the notebook.", - "enum": [ - "KERNEL_TYPE_UNSPECIFIED", - "PYTHON3" - ], - "enumDescriptions": [ - "Kernel Type unspecified.", - "Python 3 Kernel." - ], + "format": "google-datetime", "type": "string" } }, "type": "object" }, - "GoogleCloudDataplexV1ContentSqlScript": { - "description": "Configuration for the Sql Script content.", - "id": "GoogleCloudDataplexV1ContentSqlScript", + "GoogleCloudDataplexV1BusinessGlossaryEvent": { + "description": "Payload associated with Business Glossary related log events.", + "id": "GoogleCloudDataplexV1BusinessGlossaryEvent", "properties": { - "engine": { - "description": "Required. Query Engine to be used for the Sql Query.", + "eventType": { + "description": "The type of the event.", "enum": [ - "QUERY_ENGINE_UNSPECIFIED", - "SPARK" + "EVENT_TYPE_UNSPECIFIED", + "GLOSSARY_CREATE", + "GLOSSARY_UPDATE", + "GLOSSARY_DELETE", + "GLOSSARY_CATEGORY_CREATE", + "GLOSSARY_CATEGORY_UPDATE", + "GLOSSARY_CATEGORY_DELETE", + "GLOSSARY_TERM_CREATE", + "GLOSSARY_TERM_UPDATE", + "GLOSSARY_TERM_DELETE" ], "enumDescriptions": [ - "Value was unspecified.", - "Spark SQL Query." + "An unspecified event type.", + "Glossary create event.", + "Glossary update event.", + "Glossary delete event.", + "Glossary category create event.", + "Glossary category update event.", + "Glossary category delete event.", + "Glossary term create event.", + "Glossary term update event.", + "Glossary term delete event." ], "type": "string" + }, + "message": { + "description": "The log message.", + "type": "string" + }, + "resource": { + "description": "Name of the resource.", + "type": "string" } }, "type": "object" }, + "GoogleCloudDataplexV1CancelDataScanJobRequest": { + "description": "Request message for the CancelDataScanJob method.", + "id": "GoogleCloudDataplexV1CancelDataScanJobRequest", + "properties": {}, + "type": "object" + }, + "GoogleCloudDataplexV1CancelDataScanJobResponse": { + "description": "Response message for the CancelDataScanJob method.", + "id": "GoogleCloudDataplexV1CancelDataScanJobResponse", + "properties": {}, + "type": "object" + }, + "GoogleCloudDataplexV1CancelJobRequest": { + "description": "Cancel task jobs.", + "id": "GoogleCloudDataplexV1CancelJobRequest", + "properties": {}, + "type": "object" + }, + "GoogleCloudDataplexV1CancelMetadataJobRequest": { + "description": "Cancel metadata job request.", + "id": "GoogleCloudDataplexV1CancelMetadataJobRequest", + "properties": {}, + "type": "object" + }, "GoogleCloudDataplexV1DataAccessSpec": { "description": "DataAccessSpec holds the access control configuration to be enforced on data stored within resources (eg: rows, columns in BigQuery Tables). When associated with data, the data is only accessible to principals explicitly granted access through the DataAccessSpec. Principals with access to the containing resource are not implicitly granted access.", "id": "GoogleCloudDataplexV1DataAccessSpec", @@ -9332,6 +8809,10 @@ "jsonOptions": { "$ref": "GoogleCloudDataplexV1DataDiscoverySpecStorageConfigJsonOptions", "description": "Optional. Configuration for JSON data." + }, + "unstructuredDataOptions": { + "$ref": "GoogleCloudDataplexV1DataDiscoverySpecStorageConfigUnstructuredDataOptions", + "description": "Optional. Specifies configuration for unstructured data discovery." } }, "type": "object" @@ -9379,18 +8860,67 @@ }, "type": "object" }, + "GoogleCloudDataplexV1DataDiscoverySpecStorageConfigUnstructuredDataOptions": { + "description": "Describes options for unstructured data discovery.", + "id": "GoogleCloudDataplexV1DataDiscoverySpecStorageConfigUnstructuredDataOptions", + "properties": { + "entityInferenceEnabled": { + "deprecated": true, + "description": "Optional. Deprecated: Use semantic_inference_enabled instead. Specifies whether deeper entity inference over the objects' contents using GenAI is enabled.", + "type": "boolean" + }, + "semanticInferenceEnabled": { + "description": "Optional. Specifies whether deeper semantic inference over the objects' contents using GenAI is enabled.", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1DataDocumentationResult": { "description": "The output of a DataDocumentation scan.", "id": "GoogleCloudDataplexV1DataDocumentationResult", "properties": { + "datasetResult": { + "$ref": "GoogleCloudDataplexV1DataDocumentationResultDatasetResult", + "description": "Output only. Insights for a Dataset resource.", + "readOnly": true + }, "tableResult": { "$ref": "GoogleCloudDataplexV1DataDocumentationResultTableResult", - "description": "Output only. Table result for insights.", + "description": "Output only. Insights for a Table resource.", "readOnly": true } }, "type": "object" }, + "GoogleCloudDataplexV1DataDocumentationResultDatasetResult": { + "description": "Insights for a dataset resource.", + "id": "GoogleCloudDataplexV1DataDocumentationResultDatasetResult", + "properties": { + "overview": { + "description": "Output only. Generated Dataset description.", + "readOnly": true, + "type": "string" + }, + "queries": { + "description": "Output only. Sample SQL queries for the dataset.", + "items": { + "$ref": "GoogleCloudDataplexV1DataDocumentationResultQuery" + }, + "readOnly": true, + "type": "array" + }, + "schemaRelationships": { + "description": "Output only. Relationships suggesting how tables in the dataset are related to each other, based on their schema.", + "items": { + "$ref": "GoogleCloudDataplexV1DataDocumentationResultSchemaRelationship" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1DataDocumentationResultField": { "description": "Column of a table with generated metadata and nested fields.", "id": "GoogleCloudDataplexV1DataDocumentationResultField", @@ -9448,8 +8978,78 @@ }, "type": "object" }, + "GoogleCloudDataplexV1DataDocumentationResultSchemaRelationship": { + "description": "Details of the relationship between the schema of two resources.", + "id": "GoogleCloudDataplexV1DataDocumentationResultSchemaRelationship", + "properties": { + "leftSchemaPaths": { + "$ref": "GoogleCloudDataplexV1DataDocumentationResultSchemaRelationshipSchemaPaths", + "description": "Output only. An ordered list of fields for the join from the first table. The size of this list must be the same as right_schema_paths. Each field at index i in this list must correspond to a field at the same index in the right_schema_paths list.", + "readOnly": true + }, + "rightSchemaPaths": { + "$ref": "GoogleCloudDataplexV1DataDocumentationResultSchemaRelationshipSchemaPaths", + "description": "Output only. An ordered list of fields for the join from the second table. The size of this list must be the same as left_schema_paths. Each field at index i in this list must correspond to a field at the same index in the left_schema_paths list.", + "readOnly": true + }, + "sources": { + "description": "Output only. Sources which generated the schema relation edge.", + "items": { + "enum": [ + "SOURCE_UNSPECIFIED", + "AGENT", + "QUERY_HISTORY", + "TABLE_CONSTRAINTS" + ], + "enumDescriptions": [ + "The source of the schema relationship is unspecified.", + "The source of the schema relationship is agent.", + "The source of the schema relationship is query history from the source system.", + "The source of the schema relationship is table constraints added in the source system." + ], + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "type": { + "description": "Output only. The type of relationship between the schema paths.", + "enum": [ + "TYPE_UNSPECIFIED", + "SCHEMA_JOIN" + ], + "enumDescriptions": [ + "The type of the schema relationship is unspecified.", + "Indicates a join relationship between the schema fields." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataDocumentationResultSchemaRelationshipSchemaPaths": { + "description": "Represents an ordered set of paths within a table's schema.", + "id": "GoogleCloudDataplexV1DataDocumentationResultSchemaRelationshipSchemaPaths", + "properties": { + "paths": { + "description": "Output only. An ordered set of Paths to fields within the schema of the table. For fields nested within a top level field of type record, use '.' to separate field names. Examples: Top level field - top_level Nested field - top_level.child.sub_field", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "tableFqn": { + "description": "Output only. The service-qualified full resource name of the table Ex: //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1DataDocumentationResultTableResult": { - "description": "Generated metadata about the table.", + "description": "Insights for a table resource.", "id": "GoogleCloudDataplexV1DataDocumentationResultTableResult", "properties": { "name": { @@ -9914,6 +9514,20 @@ "$ref": "GoogleCloudDataplexV1DataProfileSpecSelectedFields", "description": "Optional. The fields to include in data profile.If not specified, all fields at the time of profile scan job execution are included, except for ones listed in exclude_fields." }, + "mode": { + "description": "Optional. The execution mode for the profile scan.", + "enum": [ + "MODE_UNSPECIFIED", + "STANDARD", + "LIGHTWEIGHT" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Performs standard profiling. The behavior is controlled by other fields such as sampling_percent, row_filter, and column filters. This mode allows for full scans or custom sampling.", + "Specifies lightweight profiling mode. This mode is optimized for low-latency, low-fidelity profiling.When this mode is selected, the following fields must not be set: sampling_percent, row_filter, include_fields, and exclude_fields." + ], + "type": "string" + }, "postScanActions": { "$ref": "GoogleCloudDataplexV1DataProfileSpecPostScanActions", "description": "Optional. Actions to take upon job completion.." @@ -10172,6 +9786,13 @@ "description": "A rule captures data quality intent about a data source.", "id": "GoogleCloudDataplexV1DataQualityRule", "properties": { + "attributes": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Map of attribute name and value linked to the rule. The rules to evaluate can be filtered based on attributes provided here and a filter expression provided in the DataQualitySpec.filter field.", + "type": "object" + }, "column": { "description": "Optional. The unnested column which this rule is evaluated against.", "type": "string" @@ -10215,6 +9836,11 @@ "$ref": "GoogleCloudDataplexV1DataQualityRuleRowConditionExpectation", "description": "Row-level rule which evaluates whether each row in a table passes the specified condition." }, + "ruleSource": { + "$ref": "GoogleCloudDataplexV1DataQualityRuleRuleSource", + "description": "Output only. Contains information about the source of the rule and its relationship with the BigQuery table, where applicable.", + "readOnly": true + }, "setExpectation": { "$ref": "GoogleCloudDataplexV1DataQualityRuleSetExpectation", "description": "Row-level rule which evaluates whether each column value is contained by a specified set." @@ -10235,6 +9861,10 @@ "$ref": "GoogleCloudDataplexV1DataQualityRuleTableConditionExpectation", "description": "Aggregate rule which evaluates whether the provided expression is true for a table." }, + "templateReference": { + "$ref": "GoogleCloudDataplexV1DataQualityRuleTemplateReference", + "description": "Aggregate rule which references a rule template and provides the parameters to be substituted in the template. If any rows are returned, this rule fails." + }, "threshold": { "description": "Optional. The minimum ratio of passing_rows / total_rows required to pass this rule, with a range of 0.0, 1.0.0 indicates default value (i.e. 1.0).This field is only valid for row-level type rules.", "format": "double", @@ -10407,6 +10037,77 @@ }, "type": "object" }, + "GoogleCloudDataplexV1DataQualityRuleRuleSource": { + "description": "Represents the rule source information from Catalog.", + "id": "GoogleCloudDataplexV1DataQualityRuleRuleSource", + "properties": { + "rulePathElements": { + "description": "Output only. Rule path elements represent information about the individual items in the relationship path between the scan resource and rule origin in that order.", + "items": { + "$ref": "GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElement" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElement": { + "description": "Path Element represents the direct relationship between the rule origin (aspects) to the BigQuery Entry. Ordering of the rule relationship will be maintained such that the first entry in the list is the closest ancestor (BigQuery table itself). A blank source denotes that the rule is derived directly from the DataScan itself.", + "id": "GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElement", + "properties": { + "entryLinkSource": { + "$ref": "GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElementEntryLinkSource", + "description": "Output only. Entry link source represents information about the entry link.", + "readOnly": true + }, + "entrySource": { + "$ref": "GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElementEntrySource", + "description": "Output only. Entry source represents information about the related source entry.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElementEntryLinkSource": { + "description": "Entry link source represents information about the entry link.", + "id": "GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElementEntryLinkSource", + "properties": { + "entryLink": { + "description": "Output only. The entry link name in the form of: projects/{project_id_or_number}/locations/{location_id}/entryGroups/{entry_group_id}/entryLinks/{entry_link_id}", + "readOnly": true, + "type": "string" + }, + "entryLinkType": { + "description": "Output only. The entry link type to represent the current relationship between the entry and the next entry in the path. In the form of: projects/{project_id_or_number}/locations/{location_id}/entryLinkTypes/{entry_link_type_id}", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElementEntrySource": { + "description": "Entry source represents information about the related source entry.", + "id": "GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElementEntrySource", + "properties": { + "displayName": { + "description": "Output only. The display name of the entry.", + "readOnly": true, + "type": "string" + }, + "entry": { + "description": "Output only. The entry name in the form of: projects/{project_id_or_number}/locations/{location_id}/entryGroups/{entry_group_id}/entries/{entry_id}", + "readOnly": true, + "type": "string" + }, + "entryType": { + "description": "Output only. The entry type to represent the current characteristics of the entry in the form of: projects/{project_id_or_number}/locations/{location_id}/entryTypes/{entry-type-id}.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1DataQualityRuleSetExpectation": { "description": "Evaluates whether each column value is contained by a specified set.", "id": "GoogleCloudDataplexV1DataQualityRuleSetExpectation", @@ -10471,12 +10172,121 @@ }, "type": "object" }, - "GoogleCloudDataplexV1DataQualityRuleTableConditionExpectation": { - "description": "Evaluates whether the provided expression is true.The SQL expression needs to use GoogleSQL syntax (https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax) and should produce a scalar boolean result.Example: MIN(col1) >= 0", - "id": "GoogleCloudDataplexV1DataQualityRuleTableConditionExpectation", + "GoogleCloudDataplexV1DataQualityRuleTableConditionExpectation": { + "description": "Evaluates whether the provided expression is true.The SQL expression needs to use GoogleSQL syntax (https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax) and should produce a scalar boolean result.Example: MIN(col1) >= 0", + "id": "GoogleCloudDataplexV1DataQualityRuleTableConditionExpectation", + "properties": { + "sqlExpression": { + "description": "Optional. The SQL expression.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataQualityRuleTemplate": { + "description": "DataQualityRuleTemplate represents a template which can be reused across multiple data quality rules.", + "id": "GoogleCloudDataplexV1DataQualityRuleTemplate", + "properties": { + "capabilities": { + "description": "Output only. A list of features or properties supported by this rule template.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "dimension": { + "description": "Output only. The dimension a rule template belongs to. Rule level results are also aggregated at the dimension level.", + "readOnly": true, + "type": "string" + }, + "inputParameters": { + "additionalProperties": { + "$ref": "GoogleCloudDataplexV1DataQualityRuleTemplateParameterDescription" + }, + "description": "Output only. Description for input parameters", + "readOnly": true, + "type": "object" + }, + "name": { + "description": "Output only. The name of the rule template in the format: projects/{project_id_or_number}/locations/{location_id}/entryGroups/{entry_group_id}/entries/{entry_id}", + "readOnly": true, + "type": "string" + }, + "sqlCollection": { + "description": "Output only. Collection of SQLs for data quality rules. Currently only one SQL is supported.", + "items": { + "$ref": "GoogleCloudDataplexV1DataQualityRuleTemplateSql" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataQualityRuleTemplateParameterDescription": { + "description": "Description of the input parameter. It can include the type(s) supported by the parameter and intended usage. It is for information purposes only and does not affect the behavior of the rule template.", + "id": "GoogleCloudDataplexV1DataQualityRuleTemplateParameterDescription", + "properties": { + "defaultValue": { + "description": "Output only. The default value for the parameter if no value is provided.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Output only. Description of the input parameter. It can include the type(s) supported by the parameter and intended usage. It is for information purposes only and does not affect the behavior of the rule template.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataQualityRuleTemplateReference": { + "description": "A rule that constructs a SQL statement to evaluate using a rule template and parameter values. If the constructed statement returns any rows, this rule fails", + "id": "GoogleCloudDataplexV1DataQualityRuleTemplateReference", + "properties": { + "name": { + "description": "Required. The template entry name. Entry must be of EntryType projects/dataplex-types/locations/global/entryTypes/data-quality-rule-template and contains top-level aspect of AspectType projects/dataplex-types/locations/global/aspectTypes/data-quality-rule-template. The format is: projects/{project_id_or_number}/locations/{location_id}/entryGroups/{entry_group_id}/entries/{entry_id}", + "type": "string" + }, + "resolvedSql": { + "description": "Output only. The resolved SQL statement generated from the template with parameters substituted. It is only populated in the result.", + "readOnly": true, + "type": "string" + }, + "ruleTemplate": { + "$ref": "GoogleCloudDataplexV1DataQualityRuleTemplate", + "description": "Output only. The rule template used to resolve the rule. It is only populated in the result.", + "readOnly": true + }, + "values": { + "additionalProperties": { + "$ref": "GoogleCloudDataplexV1DataQualityRuleTemplateReferenceParameterValue" + }, + "description": "Optional. Provides the map of parameter name and value. The maximum size of the field is 120KB (encoded as UTF-8).", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataQualityRuleTemplateReferenceParameterValue": { + "description": "Represents a parameter value.", + "id": "GoogleCloudDataplexV1DataQualityRuleTemplateReferenceParameterValue", "properties": { - "sqlExpression": { - "description": "Optional. The SQL expression.", + "value": { + "description": "Required. Represents the string value of the parameter.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataQualityRuleTemplateSql": { + "description": "Templatized SQL query for data quality rules. It can have parameters that can be substituted with values when a rule is created using this template.", + "id": "GoogleCloudDataplexV1DataQualityRuleTemplateSql", + "properties": { + "query": { + "description": "Output only. Templatized SQL query for data quality rules.", + "readOnly": true, "type": "string" } }, @@ -10572,7 +10382,8 @@ "STATISTIC_RANGE_EXPECTATION", "TABLE_CONDITION_EXPECTATION", "UNIQUENESS_EXPECTATION", - "SQL_ASSERTION" + "SQL_ASSERTION", + "TEMPLATE_REFERENCE" ], "enumDescriptions": [ "An unspecified rule type.", @@ -10584,7 +10395,8 @@ "See DataQualityRule.StatisticRangeExpectation.", "See DataQualityRule.TableConditionExpectation.", "See DataQualityRule.UniquenessExpectation.", - "See DataQualityRule.SqlAssertion." + "See DataQualityRule.SqlAssertion.", + "See DataQualityRule.TemplateReference." ], "type": "string" }, @@ -10604,6 +10416,14 @@ "description": "Optional. If set, the latest DataScan job result will be published as Dataplex Universal Catalog metadata.", "type": "boolean" }, + "enableCatalogBasedRules": { + "description": "Optional. If enabled, the data scan will retrieve rules defined in the dataplex-types.global.data-rules aspect on all paths of the catalog entry corresponding to the BigQuery table resource and all attached glossary terms. The path that data-rules aspect is attached on the table entry defines the column that the rule will be evaluated against. For glossary terms, the path that the terms are attached on the table entry defines the column that the rule will be evaluated against. At the start of scan execution, the rules reflect the latest state retrieved from the catalog entry and any updates on the rules thereafter are ignored for that execution. The updates will be reflected from the next execution. Rules defined in the datascan must be empty if this field is enabled.", + "type": "boolean" + }, + "filter": { + "description": "Optional. Filter for selectively running a subset of rules. You can filter the request by the name or attribute key-value pairs defined on the rule. If not specified, all rules are run. The filter is applicable to both, the rules retrieved from catalog and explicitly defined rules in the scan. Please see filter syntax (https://docs.cloud.google.com/dataplex/docs/auto-data-quality-overview#rule-filtering) for more details.", + "type": "string" + }, "postScanActions": { "$ref": "GoogleCloudDataplexV1DataQualitySpecPostScanActions", "description": "Optional. Actions to take upon job completion." @@ -10715,7 +10535,7 @@ "type": "object" }, "GoogleCloudDataplexV1DataScan": { - "description": "Represents a user-visible job which provides the insights for the related data source.For example: Data quality: generates queries based on the rules and runs against the data to get data quality check results. For more information, see Auto data quality overview (https://cloud.google.com/dataplex/docs/auto-data-quality-overview). Data profile: analyzes the data in tables and generates insights about the structure, content and relationships (such as null percent, cardinality, min/max/mean, etc). For more information, see About data profiling (https://cloud.google.com/dataplex/docs/data-profiling-overview). Data discovery: scans data in Cloud Storage buckets to extract and then catalog metadata. For more information, see Discover and catalog Cloud Storage data (https://cloud.google.com/bigquery/docs/automatic-discovery). Data documentation: analyzes the table details and generates insights including descriptions and sample SQL queries for the table. For more information, see Generate data insights in BigQuery (https://cloud.google.com/bigquery/docs/data-insights).", + "description": "Represents a user-visible job which provides the insights for the related data source.For example: Data quality: generates queries based on the rules and runs against the data to get data quality check results. For more information, see Auto data quality overview (https://cloud.google.com/dataplex/docs/auto-data-quality-overview). Data profile: analyzes the data in tables and generates insights about the structure, content and relationships (such as null percent, cardinality, min/max/mean, etc). For more information, see About data profiling (https://cloud.google.com/dataplex/docs/data-profiling-overview). Data discovery: scans data in Cloud Storage buckets to extract and then catalog metadata. For more information, see Discover and catalog Cloud Storage data (https://cloud.google.com/bigquery/docs/automatic-discovery). Data documentation: analyzes the table or dataset metadata and generates insights. For tables, insights include descriptions and sample SQL queries. For datasets, insights include descriptions, schema relationships and sample SQL queries. For more information, see Generate data insights in BigQuery (https://cloud.google.com/bigquery/docs/data-insights).", "id": "GoogleCloudDataplexV1DataScan", "properties": { "createTime": { @@ -10772,6 +10592,10 @@ "description": "Optional. User friendly display name. Must be between 1-256 characters.", "type": "string" }, + "executionIdentity": { + "$ref": "GoogleCloudDataplexV1ExecutionIdentity", + "description": "Optional. Immutable. The identity to run the datascan. If not specified, defaults to the Dataplex Service Agent." + }, "executionSpec": { "$ref": "GoogleCloudDataplexV1DataScanExecutionSpec", "description": "Optional. DataScan execution settings.If not specified, the fields in it will use their default values." @@ -11230,6 +11054,11 @@ "readOnly": true, "type": "string" }, + "partialFailureMessage": { + "description": "Output only. A message indicating partial failure details.", + "readOnly": true, + "type": "string" + }, "startTime": { "description": "Output only. The time when the DataScanJob was started.", "format": "google-datetime", @@ -11245,7 +11074,8 @@ "CANCELLED", "SUCCEEDED", "FAILED", - "PENDING" + "PENDING", + "SUCCEEDED_WITH_ERRORS" ], "enumDescriptions": [ "The DataScanJob state is unspecified.", @@ -11254,7 +11084,8 @@ "The DataScanJob cancellation was successful.", "The DataScanJob completed successfully.", "The DataScanJob is no longer running due to an error.", - "The DataScanJob has been created but not started to run yet." + "The DataScanJob has been created but not started to run yet.", + "The DataScanJob succeeded with errors." ], "readOnly": true, "type": "string" @@ -11295,7 +11126,7 @@ "type": "string" }, "resource": { - "description": "Immutable. The service-qualified full resource name of the cloud resource for a DataScan job to scan against. The field could either be: Cloud Storage bucket for DataDiscoveryScan Format: //storage.googleapis.com/projects/PROJECT_ID/buckets/BUCKET_ID or BigQuery table of type \"TABLE\" for DataProfileScan/DataQualityScan/DataDocumentationScan Format: //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID", + "description": "Immutable. The service-qualified full resource name of the cloud resource for a DataScan job to scan against. The field could either be: Cloud Storage bucket for DataDiscoveryScan Format: //storage.googleapis.com/projects/PROJECT_ID/buckets/BUCKET_ID or BigQuery table of type \"TABLE\" for DataProfileScan/DataQualityScan/DataDocumentationScan Format: //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID or BigQuery dataset for DataDocumentationScan only Format: //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID", "type": "string" } }, @@ -11901,6 +11732,13 @@ "description": "EntryLink represents a link between two Entries.", "id": "GoogleCloudDataplexV1EntryLink", "properties": { + "aspects": { + "additionalProperties": { + "$ref": "GoogleCloudDataplexV1Aspect" + }, + "description": "Optional. The aspects that are attached to the entry link. The format of the aspect key has to be the following: {project_id_or_number}.{location_id}.{aspect_type_id} Currently, only a single aspect of a Dataplex-owned Aspect Type is allowed.", + "type": "object" + }, "createTime": { "description": "Output only. The time when the Entry Link was created.", "format": "google-datetime", @@ -11912,7 +11750,7 @@ "type": "string" }, "entryReferences": { - "description": "Required. Specifies the Entries referenced in the Entry Link. There should be exactly two entry references.", + "description": "Required. Immutable. Specifies the Entries referenced in the Entry Link. There should be exactly two entry references.", "items": { "$ref": "GoogleCloudDataplexV1EntryLinkEntryReference" }, @@ -12156,199 +11994,46 @@ }, "type": "object" }, - "GoogleCloudDataplexV1Environment": { - "description": "Environment represents a user-visible compute infrastructure for analytics within a lake.", - "id": "GoogleCloudDataplexV1Environment", - "properties": { - "createTime": { - "description": "Output only. Environment creation time.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "Optional. Description of the environment.", - "type": "string" - }, - "displayName": { - "description": "Optional. User friendly display name.", - "type": "string" - }, - "endpoints": { - "$ref": "GoogleCloudDataplexV1EnvironmentEndpoints", - "description": "Output only. URI Endpoints to access sessions associated with the Environment.", - "readOnly": true - }, - "infrastructureSpec": { - "$ref": "GoogleCloudDataplexV1EnvironmentInfrastructureSpec", - "description": "Required. Infrastructure specification for the Environment." - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. User defined labels for the environment.", - "type": "object" - }, - "name": { - "description": "Output only. The relative resource name of the environment, of the form: projects/{project_id}/locations/{location_id}/lakes/{lake_id}/environment/{environment_id}", - "readOnly": true, - "type": "string" - }, - "sessionSpec": { - "$ref": "GoogleCloudDataplexV1EnvironmentSessionSpec", - "description": "Optional. Configuration for sessions created for this environment." - }, - "sessionStatus": { - "$ref": "GoogleCloudDataplexV1EnvironmentSessionStatus", - "description": "Output only. Status of sessions created for this environment.", - "readOnly": true - }, - "state": { - "description": "Output only. Current state of the environment.", - "enum": [ - "STATE_UNSPECIFIED", - "ACTIVE", - "CREATING", - "DELETING", - "ACTION_REQUIRED" - ], - "enumDescriptions": [ - "State is not specified.", - "Resource is active, i.e., ready to use.", - "Resource is under creation.", - "Resource is under deletion.", - "Resource is active but has unresolved actions." - ], - "readOnly": true, - "type": "string" - }, - "uid": { - "description": "Output only. System generated globally unique ID for the environment. This ID will be different if the environment is deleted and re-created with the same name.", - "readOnly": true, - "type": "string" - }, - "updateTime": { - "description": "Output only. The time when the environment was last updated.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "GoogleCloudDataplexV1EnvironmentEndpoints": { - "description": "URI Endpoints to access sessions associated with the Environment.", - "id": "GoogleCloudDataplexV1EnvironmentEndpoints", - "properties": { - "notebooks": { - "description": "Output only. URI to serve notebook APIs", - "readOnly": true, - "type": "string" - }, - "sql": { - "description": "Output only. URI to serve SQL APIs", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "GoogleCloudDataplexV1EnvironmentInfrastructureSpec": { - "description": "Configuration for the underlying infrastructure used to run workloads.", - "id": "GoogleCloudDataplexV1EnvironmentInfrastructureSpec", - "properties": { - "compute": { - "$ref": "GoogleCloudDataplexV1EnvironmentInfrastructureSpecComputeResources", - "description": "Optional. Compute resources needed for analyze interactive workloads." - }, - "osImage": { - "$ref": "GoogleCloudDataplexV1EnvironmentInfrastructureSpecOsImageRuntime", - "description": "Required. Software Runtime Configuration for analyze interactive workloads." - } - }, - "type": "object" - }, - "GoogleCloudDataplexV1EnvironmentInfrastructureSpecComputeResources": { - "description": "Compute resources associated with the analyze interactive workloads.", - "id": "GoogleCloudDataplexV1EnvironmentInfrastructureSpecComputeResources", + "GoogleCloudDataplexV1ExecutionIdentity": { + "description": "The identity to run the datascan.", + "id": "GoogleCloudDataplexV1ExecutionIdentity", "properties": { - "diskSizeGb": { - "description": "Optional. Size in GB of the disk. Default is 100 GB.", - "format": "int32", - "type": "integer" + "dataplexServiceAgent": { + "$ref": "GoogleCloudDataplexV1ExecutionIdentityDataplexServiceAgent", + "description": "Optional. The Dataplex service agent associated with the user's project." }, - "maxNodeCount": { - "description": "Optional. Max configurable nodes. If max_node_count > node_count, then auto-scaling is enabled.", - "format": "int32", - "type": "integer" + "serviceAccount": { + "$ref": "GoogleCloudDataplexV1ExecutionIdentityServiceAccount", + "description": "Optional. The provided service account." }, - "nodeCount": { - "description": "Optional. Total number of nodes in the sessions created for this environment.", - "format": "int32", - "type": "integer" + "userCredential": { + "$ref": "GoogleCloudDataplexV1ExecutionIdentityUserCredential", + "description": "Optional. The credential of the calling user. Supports only ONE_TIME trigger type." } }, "type": "object" }, - "GoogleCloudDataplexV1EnvironmentInfrastructureSpecOsImageRuntime": { - "description": "Software Runtime Configuration to run Analyze.", - "id": "GoogleCloudDataplexV1EnvironmentInfrastructureSpecOsImageRuntime", - "properties": { - "imageVersion": { - "description": "Required. Dataplex Universal Catalog Image version.", - "type": "string" - }, - "javaLibraries": { - "description": "Optional. List of Java jars to be included in the runtime environment. Valid input includes Cloud Storage URIs to Jar binaries. For example, gs://bucket-name/my/path/to/file.jar", - "items": { - "type": "string" - }, - "type": "array" - }, - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. Spark properties to provide configuration for use in sessions created for this environment. The properties to set on daemon config files. Property keys are specified in prefix:property format. The prefix must be \"spark\".", - "type": "object" - }, - "pythonPackages": { - "description": "Optional. A list of python packages to be installed. Valid formats include Cloud Storage URI to a PIP installable library. For example, gs://bucket-name/my/path/to/lib.tar.gz", - "items": { - "type": "string" - }, - "type": "array" - } - }, + "GoogleCloudDataplexV1ExecutionIdentityDataplexServiceAgent": { + "description": "The Dataplex service agent associated with the user's project.", + "id": "GoogleCloudDataplexV1ExecutionIdentityDataplexServiceAgent", + "properties": {}, "type": "object" }, - "GoogleCloudDataplexV1EnvironmentSessionSpec": { - "description": "Configuration for sessions created for this environment.", - "id": "GoogleCloudDataplexV1EnvironmentSessionSpec", + "GoogleCloudDataplexV1ExecutionIdentityServiceAccount": { + "description": "The service account", + "id": "GoogleCloudDataplexV1ExecutionIdentityServiceAccount", "properties": { - "enableFastStartup": { - "description": "Optional. If True, this causes sessions to be pre-created and available for faster startup to enable interactive exploration use-cases. This defaults to False to avoid additional billed charges. These can only be set to True for the environment with name set to \"default\", and with default configuration.", - "type": "boolean" - }, - "maxIdleDuration": { - "description": "Optional. The idle time configuration of the session. The session will be auto-terminated at the end of this period.", - "format": "google-duration", + "email": { + "description": "Required. Service account email. The datascan will execute with this service account's credentials. The user calling this API must have permissions to act as this service account. Dataplex service agent must be granted iam.serviceAccounts.getAccessToken permission on this service account, for example, through the iam.serviceAccountTokenCreator role .", "type": "string" } }, "type": "object" }, - "GoogleCloudDataplexV1EnvironmentSessionStatus": { - "description": "Status of sessions created for this environment.", - "id": "GoogleCloudDataplexV1EnvironmentSessionStatus", - "properties": { - "active": { - "description": "Output only. Queries over sessions to mark whether the environment is currently active or not", - "readOnly": true, - "type": "boolean" - } - }, + "GoogleCloudDataplexV1ExecutionIdentityUserCredential": { + "description": "The credential of the calling user.", + "id": "GoogleCloudDataplexV1ExecutionIdentityUserCredential", + "properties": {}, "type": "object" }, "GoogleCloudDataplexV1GenerateDataQualityRulesRequest": { @@ -13029,24 +12714,6 @@ }, "type": "object" }, - "GoogleCloudDataplexV1ListContentResponse": { - "description": "List content response.", - "id": "GoogleCloudDataplexV1ListContentResponse", - "properties": { - "content": { - "description": "Content under the given parent lake.", - "items": { - "$ref": "GoogleCloudDataplexV1Content" - }, - "type": "array" - }, - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", - "type": "string" - } - }, - "type": "object" - }, "GoogleCloudDataplexV1ListDataAssetsResponse": { "description": "Response message for listing data assets.", "id": "GoogleCloudDataplexV1ListDataAssetsResponse", @@ -13319,24 +12986,6 @@ }, "type": "object" }, - "GoogleCloudDataplexV1ListEnvironmentsResponse": { - "description": "List environments response.", - "id": "GoogleCloudDataplexV1ListEnvironmentsResponse", - "properties": { - "environments": { - "description": "Environments under the given parent lake.", - "items": { - "$ref": "GoogleCloudDataplexV1Environment" - }, - "type": "array" - }, - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", - "type": "string" - } - }, - "type": "object" - }, "GoogleCloudDataplexV1ListGlossariesResponse": { "description": "List Glossaries Response", "id": "GoogleCloudDataplexV1ListGlossariesResponse", @@ -13523,24 +13172,6 @@ }, "type": "object" }, - "GoogleCloudDataplexV1ListSessionsResponse": { - "description": "List sessions response.", - "id": "GoogleCloudDataplexV1ListSessionsResponse", - "properties": { - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", - "type": "string" - }, - "sessions": { - "description": "Sessions under a given environment.", - "items": { - "$ref": "GoogleCloudDataplexV1Session" - }, - "type": "array" - } - }, - "type": "object" - }, "GoogleCloudDataplexV1ListTasksResponse": { "description": "List tasks response.", "id": "GoogleCloudDataplexV1ListTasksResponse", @@ -13584,6 +13215,38 @@ }, "type": "object" }, + "GoogleCloudDataplexV1LookupContextRequest": { + "description": "Lookup Context using permissions in the source system.", + "id": "GoogleCloudDataplexV1LookupContextRequest", + "properties": { + "options": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Allows to configure the context.Supported options: format - The format of the context (one of yaml, xml, json, default is yaml). context_budget - If provided, the output will be intelligently truncated on a best-effort basis to contain approximately the desired amount of characters. There is no guarantee to achieve the specific amount.", + "type": "object" + }, + "resources": { + "description": "Required. The entry names to look up the context for. The maximum number of resources for a request is limited to 10.Examples:projects/{project}/locations/{location}/entryGroups/{entry_group}/entries/{entry}", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1LookupContextResponse": { + "description": "Lookup Context response.", + "id": "GoogleCloudDataplexV1LookupContextResponse", + "properties": { + "context": { + "description": "Pre-formatted block of text containing the context for the requested resources.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1LookupEntryLinksResponse": { "description": "Response message for LookupEntryLinks.", "id": "GoogleCloudDataplexV1LookupEntryLinksResponse", @@ -14084,6 +13747,33 @@ }, "type": "object" }, + "GoogleCloudDataplexV1ModifyEntryRequest": { + "description": "Modify Entry request using permissions in the source system.", + "id": "GoogleCloudDataplexV1ModifyEntryRequest", + "properties": { + "aspectKeys": { + "description": "Optional. The aspect keys which the service should modify. It supports the following syntaxes: - matches an aspect of the given type and empty path. @path - matches an aspect of the given type and specified path. For example, to attach an aspect to a field that is specified by the schema aspect, the path should have the format Schema.. @* - matches aspects of the given type for all paths. *@path - matches aspects of all types on the given path.The service will not remove existing aspects matching the syntax unless delete_missing_aspects is set to true.If this field is left empty, the service treats it as specifying exactly those Aspects present in the request.", + "items": { + "type": "string" + }, + "type": "array" + }, + "deleteMissingAspects": { + "description": "Optional. If set to true, any aspects not specified in the request will be deleted. The default is false.", + "type": "boolean" + }, + "entry": { + "$ref": "GoogleCloudDataplexV1Entry", + "description": "Required. The entry to modify." + }, + "updateMask": { + "description": "Optional. Mask of fields to update. To update Aspects, the update_mask must contain the value \"aspects\".If the update_mask is empty, the service will update all modifiable fields present in the request.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1OperationMetadata": { "description": "Represents the metadata of a long-running operation.", "id": "GoogleCloudDataplexV1OperationMetadata", @@ -14492,48 +14182,6 @@ }, "type": "object" }, - "GoogleCloudDataplexV1Session": { - "description": "Represents an active analyze session running for a user.", - "id": "GoogleCloudDataplexV1Session", - "properties": { - "createTime": { - "description": "Output only. Session start time.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "Output only. The relative resource name of the content, of the form: projects/{project_id}/locations/{location_id}/lakes/{lake_id}/environment/{environment_id}/sessions/{session_id}", - "readOnly": true, - "type": "string" - }, - "state": { - "description": "Output only. State of Session", - "enum": [ - "STATE_UNSPECIFIED", - "ACTIVE", - "CREATING", - "DELETING", - "ACTION_REQUIRED" - ], - "enumDescriptions": [ - "State is not specified.", - "Resource is active, i.e., ready to use.", - "Resource is under creation.", - "Resource is under deletion.", - "Resource is active but has unresolved actions." - ], - "readOnly": true, - "type": "string" - }, - "userId": { - "description": "Output only. Email of user running the session.", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, "GoogleCloudDataplexV1SessionEvent": { "description": "These messages contain information about sessions within an environment. The monitored resource is 'Environment'.", "id": "GoogleCloudDataplexV1SessionEvent", diff --git a/discovery/dataproc-v1.json b/discovery/dataproc-v1.json index 57831813278..97e7db927c9 100644 --- a/discovery/dataproc-v1.json +++ b/discovery/dataproc-v1.json @@ -4,6 +4,12 @@ "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." + }, + "https://www.googleapis.com/auth/dataproc": { + "description": "See, edit, configure, and delete your Google Cloud Dataproc data and see the email address for your Google Account" + }, + "https://www.googleapis.com/auth/dataproc.read-only": { + "description": "See your Google Cloud Dataproc data and the email address of your Google Account" } } } @@ -223,7 +229,8 @@ "$ref": "AutoscalingPolicy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "delete": { @@ -248,7 +255,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "get": { @@ -273,7 +281,8 @@ "$ref": "AutoscalingPolicy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "getIamPolicy": { @@ -301,7 +310,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "list": { @@ -337,7 +347,8 @@ "$ref": "ListAutoscalingPoliciesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "setIamPolicy": { @@ -365,7 +376,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "testIamPermissions": { @@ -393,7 +405,8 @@ "$ref": "TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "update": { @@ -421,7 +434,8 @@ "$ref": "AutoscalingPolicy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] } } @@ -453,7 +467,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "create": { @@ -491,7 +506,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "delete": { @@ -516,7 +532,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "get": { @@ -541,7 +558,9 @@ "$ref": "Batch" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "list": { @@ -587,7 +606,9 @@ "$ref": "ListBatchesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] } }, @@ -621,7 +642,9 @@ "$ref": "AccessSparkApplicationResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "accessEnvironmentInfo": { @@ -651,7 +674,9 @@ "$ref": "AccessSparkApplicationEnvironmentInfoResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "accessJob": { @@ -687,7 +712,9 @@ "$ref": "AccessSparkApplicationJobResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "accessSqlPlan": { @@ -723,7 +750,9 @@ "$ref": "AccessSparkApplicationSqlSparkPlanGraphResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "accessSqlQuery": { @@ -769,7 +798,9 @@ "$ref": "AccessSparkApplicationSqlQueryResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "accessStageAttempt": { @@ -817,7 +848,9 @@ "$ref": "AccessSparkApplicationStageAttemptResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "accessStageRddGraph": { @@ -853,7 +886,9 @@ "$ref": "AccessSparkApplicationStageRddOperationGraphResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "search": { @@ -928,7 +963,9 @@ "$ref": "SearchSparkApplicationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchExecutorStageSummary": { @@ -981,7 +1018,9 @@ "$ref": "SearchSparkApplicationExecutorStageSummaryResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchExecutors": { @@ -1037,7 +1076,9 @@ "$ref": "SearchSparkApplicationExecutorsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchJobs": { @@ -1097,7 +1138,9 @@ "$ref": "SearchSparkApplicationJobsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchSqlQueries": { @@ -1148,7 +1191,9 @@ "$ref": "SearchSparkApplicationSqlQueriesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchStageAttemptTasks": { @@ -1227,7 +1272,9 @@ "$ref": "SearchSparkApplicationStageAttemptTasksResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchStageAttempts": { @@ -1280,7 +1327,9 @@ "$ref": "SearchSparkApplicationStageAttemptsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchStages": { @@ -1348,7 +1397,9 @@ "$ref": "SearchSparkApplicationStagesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "summarizeExecutors": { @@ -1378,7 +1429,9 @@ "$ref": "SummarizeSparkApplicationExecutorsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "summarizeJobs": { @@ -1408,7 +1461,9 @@ "$ref": "SummarizeSparkApplicationJobsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "summarizeStageAttemptTasks": { @@ -1450,7 +1505,9 @@ "$ref": "SummarizeSparkApplicationStageAttemptTasksResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "summarizeStages": { @@ -1480,7 +1537,9 @@ "$ref": "SummarizeSparkApplicationStagesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "write": { @@ -1508,7 +1567,8 @@ "$ref": "WriteSparkApplicationContextResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] } } @@ -1539,7 +1599,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "delete": { @@ -1564,7 +1625,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "get": { @@ -1589,7 +1651,9 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "list": { @@ -1635,7 +1699,9 @@ "$ref": "ListOperationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] } } @@ -1667,7 +1733,8 @@ "$ref": "SessionTemplate" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "delete": { @@ -1692,7 +1759,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "get": { @@ -1717,7 +1785,9 @@ "$ref": "SessionTemplate" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "list": { @@ -1758,7 +1828,9 @@ "$ref": "ListSessionTemplatesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "patch": { @@ -1786,7 +1858,8 @@ "$ref": "SessionTemplate" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] } } @@ -1828,7 +1901,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "delete": { @@ -1858,7 +1932,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "get": { @@ -1883,7 +1958,9 @@ "$ref": "Session" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "list": { @@ -1924,7 +2001,9 @@ "$ref": "ListSessionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "terminate": { @@ -1952,7 +2031,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] } }, @@ -1986,7 +2066,9 @@ "$ref": "AccessSessionSparkApplicationResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "accessEnvironmentInfo": { @@ -2016,7 +2098,9 @@ "$ref": "AccessSessionSparkApplicationEnvironmentInfoResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "accessJob": { @@ -2052,7 +2136,9 @@ "$ref": "AccessSessionSparkApplicationJobResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "accessSqlPlan": { @@ -2088,7 +2174,9 @@ "$ref": "AccessSessionSparkApplicationSqlSparkPlanGraphResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "accessSqlQuery": { @@ -2134,7 +2222,9 @@ "$ref": "AccessSessionSparkApplicationSqlQueryResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "accessStageAttempt": { @@ -2182,7 +2272,9 @@ "$ref": "AccessSessionSparkApplicationStageAttemptResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "accessStageRddGraph": { @@ -2218,7 +2310,9 @@ "$ref": "AccessSessionSparkApplicationStageRddOperationGraphResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "search": { @@ -2293,7 +2387,9 @@ "$ref": "SearchSessionSparkApplicationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchExecutorStageSummary": { @@ -2346,7 +2442,9 @@ "$ref": "SearchSessionSparkApplicationExecutorStageSummaryResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchExecutors": { @@ -2402,7 +2500,9 @@ "$ref": "SearchSessionSparkApplicationExecutorsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchJobs": { @@ -2469,7 +2569,9 @@ "$ref": "SearchSessionSparkApplicationJobsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchSqlQueries": { @@ -2526,7 +2628,9 @@ "$ref": "SearchSessionSparkApplicationSqlQueriesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchStageAttemptTasks": { @@ -2605,7 +2709,9 @@ "$ref": "SearchSessionSparkApplicationStageAttemptTasksResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchStageAttempts": { @@ -2658,7 +2764,9 @@ "$ref": "SearchSessionSparkApplicationStageAttemptsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "searchStages": { @@ -2733,7 +2841,9 @@ "$ref": "SearchSessionSparkApplicationStagesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "summarizeExecutors": { @@ -2763,7 +2873,9 @@ "$ref": "SummarizeSessionSparkApplicationExecutorsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "summarizeJobs": { @@ -2800,7 +2912,9 @@ "$ref": "SummarizeSessionSparkApplicationJobsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "summarizeStageAttemptTasks": { @@ -2842,7 +2956,9 @@ "$ref": "SummarizeSessionSparkApplicationStageAttemptTasksResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "summarizeStages": { @@ -2879,7 +2995,9 @@ "$ref": "SummarizeSessionSparkApplicationStagesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "write": { @@ -2907,7 +3025,8 @@ "$ref": "WriteSessionSparkApplicationContextResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] } } @@ -2941,7 +3060,8 @@ "$ref": "WorkflowTemplate" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "delete": { @@ -2972,7 +3092,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "get": { @@ -3003,7 +3124,9 @@ "$ref": "WorkflowTemplate" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "getIamPolicy": { @@ -3031,7 +3154,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "instantiate": { @@ -3059,7 +3183,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "instantiateInline": { @@ -3092,7 +3217,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "list": { @@ -3128,7 +3254,9 @@ "$ref": "ListWorkflowTemplatesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "setIamPolicy": { @@ -3156,7 +3284,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "testIamPermissions": { @@ -3184,7 +3313,8 @@ "$ref": "TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "update": { @@ -3212,7 +3342,8 @@ "$ref": "WorkflowTemplate" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] } } @@ -3248,7 +3379,8 @@ "$ref": "AutoscalingPolicy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "delete": { @@ -3273,7 +3405,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "get": { @@ -3298,7 +3431,8 @@ "$ref": "AutoscalingPolicy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "getIamPolicy": { @@ -3326,7 +3460,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "list": { @@ -3362,7 +3497,8 @@ "$ref": "ListAutoscalingPoliciesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "setIamPolicy": { @@ -3390,7 +3526,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "testIamPermissions": { @@ -3418,7 +3555,8 @@ "$ref": "TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "update": { @@ -3446,7 +3584,8 @@ "$ref": "AutoscalingPolicy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] } } @@ -3504,7 +3643,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "delete": { @@ -3558,7 +3698,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "diagnose": { @@ -3599,7 +3740,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "get": { @@ -3637,7 +3779,9 @@ "$ref": "Cluster" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "getIamPolicy": { @@ -3665,7 +3809,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "injectCredentials": { @@ -3709,7 +3854,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "list": { @@ -3728,13 +3874,13 @@ "type": "string" }, "pageSize": { - "description": "Optional. The standard List page size.", + "description": "Optional. The maximum number of clusters to return in each response. The service may return fewer than this value. If unspecified, the default value is 200. The maximum value is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Optional. The standard List page token.", + "description": "Optional. A page token received from a previous ListClusters call. Provide this token to retrieve the subsequent page.", "location": "query", "type": "string" }, @@ -3756,7 +3902,9 @@ "$ref": "ListClustersResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "patch": { @@ -3814,7 +3962,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "repair": { @@ -3855,7 +4004,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "setIamPolicy": { @@ -3883,7 +4033,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "start": { @@ -3924,7 +4075,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "stop": { @@ -3965,7 +4117,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "testIamPermissions": { @@ -3993,7 +4146,8 @@ "$ref": "TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] } }, @@ -4040,7 +4194,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "get": { @@ -4065,7 +4220,9 @@ "$ref": "NodeGroup" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "repair": { @@ -4093,7 +4250,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "resize": { @@ -4121,7 +4279,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] } } @@ -4168,7 +4327,8 @@ "$ref": "Job" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "delete": { @@ -4206,7 +4366,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "get": { @@ -4244,7 +4405,9 @@ "$ref": "Job" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "getIamPolicy": { @@ -4272,7 +4435,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "list": { @@ -4339,7 +4503,9 @@ "$ref": "ListJobsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "patch": { @@ -4386,7 +4552,8 @@ "$ref": "Job" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "setIamPolicy": { @@ -4414,7 +4581,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "submit": { @@ -4448,7 +4616,8 @@ "$ref": "Job" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "submitAsOperation": { @@ -4482,7 +4651,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "testIamPermissions": { @@ -4510,7 +4680,8 @@ "$ref": "TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] } } @@ -4539,7 +4710,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "delete": { @@ -4564,7 +4736,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "get": { @@ -4589,7 +4762,9 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "getIamPolicy": { @@ -4617,7 +4792,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "list": { @@ -4663,7 +4839,9 @@ "$ref": "ListOperationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "setIamPolicy": { @@ -4691,7 +4869,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "testIamPermissions": { @@ -4719,7 +4898,8 @@ "$ref": "TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] } } @@ -4751,7 +4931,8 @@ "$ref": "WorkflowTemplate" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "delete": { @@ -4782,7 +4963,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "get": { @@ -4813,7 +4995,9 @@ "$ref": "WorkflowTemplate" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "getIamPolicy": { @@ -4841,7 +5025,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "instantiate": { @@ -4869,7 +5054,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "instantiateInline": { @@ -4902,7 +5088,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "list": { @@ -4938,7 +5125,9 @@ "$ref": "ListWorkflowTemplatesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc", + "https://www.googleapis.com/auth/dataproc.read-only" ] }, "setIamPolicy": { @@ -4966,7 +5155,8 @@ "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "testIamPermissions": { @@ -4994,7 +5184,8 @@ "$ref": "TestIamPermissionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] }, "update": { @@ -5022,7 +5213,8 @@ "$ref": "WorkflowTemplate" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/dataproc" ] } } @@ -5032,7 +5224,7 @@ } } }, - "revision": "20260219", + "revision": "20260427", "rootUrl": "https://dataproc.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -5735,6 +5927,10 @@ "$ref": "PySparkBatch", "description": "Optional. PySpark batch config." }, + "pysparkNotebookBatch": { + "$ref": "PySparkNotebookBatch", + "description": "Optional. PySpark notebook batch config." + }, "runtimeConfig": { "$ref": "RuntimeConfig", "description": "Optional. Runtime configuration for the batch execution." @@ -6022,6 +6218,20 @@ "$ref": "EndpointConfig", "description": "Optional. Port/endpoint configuration for this cluster" }, + "engine": { + "description": "Optional. The cluster engine.", + "enum": [ + "ENGINE_UNSPECIFIED", + "DEFAULT", + "LIGHTNING" + ], + "enumDescriptions": [ + "The engine is not specified. Works the same as ENGINE_DEFAULT.", + "The cluster is a default engine cluster.", + "The cluster is a lightning engine cluster." + ], + "type": "string" + }, "gceClusterConfig": { "$ref": "GceClusterConfig", "description": "Optional. The shared Compute Engine config settings for all instances in a cluster." @@ -6325,6 +6535,33 @@ }, "type": "object" }, + "CohortInfo": { + "description": "Information about the cohort that the workload belongs to.", + "id": "CohortInfo", + "properties": { + "cohort": { + "description": "Output only. Final cohort that was used to tune the workload.", + "readOnly": true, + "type": "string" + }, + "cohortSource": { + "description": "Output only. Source of the cohort.", + "enum": [ + "COHORT_SOURCE_UNSPECIFIED", + "USER_PROVIDED", + "AIRFLOW" + ], + "enumDescriptions": [ + "Cohort source is unspecified.", + "Indicates that the cohort was explicitly provided.", + "Composed from the labels coming from Airflow/Composer." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ConfidentialInstanceConfig": { "description": "Confidential Instance Config for clusters using Confidential VMs (https://cloud.google.com/compute/confidential-vm/docs)", "id": "ConfidentialInstanceConfig", @@ -6631,6 +6868,13 @@ "description": "Optional. Network URI to connect workload to.", "type": "string" }, + "resourceManagerTags": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Associates Resource Manager tags with the workload nodes. There is a max limit of 30 tags. Keys and values can be either in numeric format, such as tagKeys/{tag_key_id} and tagValues/{tag_value_id}, or in namespaced format, such as {org_id|project_id}/{tag_key_short_name} and {tag_value_short_name}.", + "type": "object" + }, "serviceAccount": { "description": "Optional. Service account that used to execute workload.", "type": "string" @@ -7543,6 +7787,14 @@ "description": "Instance flexibility Policy allowing a mixture of VM shapes and provisioning models.", "id": "InstanceFlexibilityPolicy", "properties": { + "instanceMachineTypes": { + "additionalProperties": { + "type": "string" + }, + "description": "Output only. A map of instance short name to machine type. The key is the short name of the Compute Engine instance, and the value is the full machine-type name (e.g., 'n1-standard-16'). See Machine types for more information on valid machine type strings.", + "readOnly": true, + "type": "object" + }, "instanceSelectionList": { "description": "Optional. List of instance selection options that the group will use when creating new VMs.", "items": { @@ -9410,6 +9662,52 @@ }, "type": "object" }, + "PySparkNotebookBatch": { + "description": "A configuration for running a PySpark Notebook batch workload.", + "id": "PySparkNotebookBatch", + "properties": { + "archiveUris": { + "description": "Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.", + "items": { + "type": "string" + }, + "type": "array" + }, + "fileUris": { + "description": "Optional. HCFS URIs of files to be placed in the working directory of each executor", + "items": { + "type": "string" + }, + "type": "array" + }, + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notebookFileUri": { + "description": "Required. The HCFS URI of the notebook file to execute.", + "type": "string" + }, + "params": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The parameters to pass to the notebook.", + "type": "object" + }, + "pythonFileUris": { + "description": "Optional. HCFS URIs of Python files to pass to the PySpark framework.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "Quantiles": { "description": "Quantile metrics data related to Tasks. Units can be seconds, bytes, milliseconds, etc depending on the message type.", "id": "Quantiles", @@ -9912,6 +10210,11 @@ "description": "Output only. Approximate workload resource usage, calculated when the workload completes (see Dataproc Serverless pricing (https://cloud.google.com/dataproc-serverless/pricing)).Note: This metric calculation may change in the future, for example, to capture cumulative workload resource consumption during workload execution (see the Dataproc Serverless release notes (https://cloud.google.com/dataproc-serverless/docs/release-notes) for announcements, changes, fixes and other Dataproc developments).", "readOnly": true }, + "cohortInfo": { + "$ref": "CohortInfo", + "description": "Output only. Information about the cohort that the workload belongs to.", + "readOnly": true + }, "currentUsage": { "$ref": "UsageSnapshot", "description": "Output only. Snapshot of current workload resource usage.", @@ -11139,6 +11442,13 @@ "desc": { "type": "string" }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Additional metadata for the spark plan graph cluster.", + "type": "object" + }, "metrics": { "items": { "$ref": "SqlPlanMetric" @@ -11183,6 +11493,13 @@ "desc": { "type": "string" }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Additional metadata for the spark plan graph cluster.", + "type": "object" + }, "metrics": { "items": { "$ref": "SqlPlanMetric" diff --git a/discovery/datastore-v1.json b/discovery/datastore-v1.json index 3fd8cd562b9..14ae5d92382 100644 --- a/discovery/datastore-v1.json +++ b/discovery/datastore-v1.json @@ -118,11 +118,6 @@ "endpointUrl": "https://datastore.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://datastore.europe-west15.rep.googleapis.com/", - "location": "europe-west15" - }, { "description": "Regional Endpoint", "endpointUrl": "https://datastore.europe-west2.rep.googleapis.com/", @@ -338,11 +333,6 @@ "endpointUrl": "https://batch-datastore.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://batch-datastore.europe-west15.rep.googleapis.com/", - "location": "europe-west15" - }, { "description": "Regional Endpoint", "endpointUrl": "https://batch-datastore.europe-west2.rep.googleapis.com/", @@ -1121,7 +1111,7 @@ } } }, - "revision": "20260130", + "revision": "20260323", "rootUrl": "https://datastore.googleapis.com/", "schemas": { "Aggregation": { diff --git a/discovery/datastore-v1beta1.json b/discovery/datastore-v1beta1.json index dc78511b38d..3dd96195fd6 100644 --- a/discovery/datastore-v1beta1.json +++ b/discovery/datastore-v1beta1.json @@ -118,11 +118,6 @@ "endpointUrl": "https://datastore.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://datastore.europe-west15.rep.googleapis.com/", - "location": "europe-west15" - }, { "description": "Regional Endpoint", "endpointUrl": "https://datastore.europe-west2.rep.googleapis.com/", @@ -338,11 +333,6 @@ "endpointUrl": "https://batch-datastore.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://batch-datastore.europe-west15.rep.googleapis.com/", - "location": "europe-west15" - }, { "description": "Regional Endpoint", "endpointUrl": "https://batch-datastore.europe-west2.rep.googleapis.com/", @@ -630,7 +620,7 @@ } } }, - "revision": "20260130", + "revision": "20260323", "rootUrl": "https://datastore.googleapis.com/", "schemas": { "GoogleDatastoreAdminV1CommonMetadata": { diff --git a/discovery/datastore-v1beta3.json b/discovery/datastore-v1beta3.json index 7a7cb841bfd..c0c21b48a0a 100644 --- a/discovery/datastore-v1beta3.json +++ b/discovery/datastore-v1beta3.json @@ -118,11 +118,6 @@ "endpointUrl": "https://datastore.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://datastore.europe-west15.rep.googleapis.com/", - "location": "europe-west15" - }, { "description": "Regional Endpoint", "endpointUrl": "https://datastore.europe-west2.rep.googleapis.com/", @@ -338,11 +333,6 @@ "endpointUrl": "https://batch-datastore.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://batch-datastore.europe-west15.rep.googleapis.com/", - "location": "europe-west15" - }, { "description": "Regional Endpoint", "endpointUrl": "https://batch-datastore.europe-west2.rep.googleapis.com/", @@ -798,7 +788,7 @@ } } }, - "revision": "20260130", + "revision": "20260323", "rootUrl": "https://datastore.googleapis.com/", "schemas": { "Aggregation": { diff --git a/discovery/datastream-v1.json b/discovery/datastream-v1.json index 68e964112d4..28b7ddfebe7 100644 --- a/discovery/datastream-v1.json +++ b/discovery/datastream-v1.json @@ -15,6 +15,243 @@ "description": "", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/datastream/", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-southeast3.rep.googleapis.com/", + "location": "asia-southeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west15.rep.googleapis.com/", + "location": "europe-west15" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-west4.rep.googleapis.com/", + "location": "us-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-west8.rep.googleapis.com/", + "location": "us-west8" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -171,7 +408,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "datastream.projects.locations.list", @@ -180,7 +417,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1266,7 +1503,7 @@ } } }, - "revision": "20260204", + "revision": "20260426", "rootUrl": "https://datastream.googleapis.com/", "schemas": { "AppendOnly": { @@ -1328,6 +1565,11 @@ "readOnly": true, "type": "array" }, + "eventFilter": { + "$ref": "EventFilter", + "description": "Output only. The filter for performing a partial backfill.", + "readOnly": true + }, "lastEndTime": { "description": "Output only. Backfill job's end time.", "format": "google-datetime", @@ -1947,7 +2189,7 @@ "type": "string" }, "field": { - "description": "A path that leads to a field in the request body. The value will be a sequence of dot-separated identifiers that identify a protocol buffer field. Consider the following: message CreateContactRequest { message EmailAddress { enum Type { TYPE_UNSPECIFIED = 0; HOME = 1; WORK = 2; } optional string email = 1; repeated EmailType type = 2; } string full_name = 1; repeated EmailAddress email_addresses = 2; } In this example, in proto `field` could take one of the following values: * `full_name` for a violation in the `full_name` value * `email_addresses[1].email` for a violation in the `email` field of the first `email_addresses` message * `email_addresses[3].type[2]` for a violation in the second `type` value in the third `email_addresses` message. In JSON, the same values are represented as: * `fullName` for a violation in the `fullName` value * `emailAddresses[1].email` for a violation in the `email` field of the first `emailAddresses` message * `emailAddresses[3].type[2]` for a violation in the second `type` value in the third `emailAddresses` message.", + "description": "A path that leads to a field in the request body. The value will be a sequence of dot-separated identifiers that identify a protocol buffer field. Consider the following: message CreateContactRequest { message EmailAddress { enum Type { TYPE_UNSPECIFIED = 0; HOME = 1; WORK = 2; } optional string email = 1; repeated EmailType type = 2; } string full_name = 1; repeated EmailAddress email_addresses = 2; } In this example, in proto `field` could take one of the following values: * `full_name` for a violation in the `full_name` value * `email_addresses[0].email` for a violation in the `email` field of the first `email_addresses` message * `email_addresses[2].type[1]` for a violation in the second `type` value in the third `email_addresses` message. In JSON, the same values are represented as: * `fullName` for a violation in the `fullName` value * `emailAddresses[0].email` for a violation in the `email` field of the first `emailAddresses` message * `emailAddresses[2].type[1]` for a violation in the second `type` value in the third `emailAddresses` message.", "type": "string" }, "localizedMessage": { @@ -3612,7 +3854,7 @@ "id": "QuotaFailureViolation", "properties": { "apiService": { - "description": "The API Service from which the `QuotaFailure.Violation` orginates. In some cases, Quota issues originate from an API Service other than the one that was called. In other words, a dependency of the called API Service could be the cause of the `QuotaFailure`, and this field would have the dependency API service name. For example, if the called API is Kubernetes Engine API (container.googleapis.com), and a quota violation occurs in the Kubernetes Engine API itself, this field would be \"container.googleapis.com\". On the other hand, if the quota violation occurs when the Kubernetes Engine API creates VMs in the Compute Engine API (compute.googleapis.com), this field would be \"compute.googleapis.com\".", + "description": "The API Service from which the `QuotaFailure.Violation` originates. In some cases, Quota issues originate from an API Service other than the one that was called. In other words, a dependency of the called API Service could be the cause of the `QuotaFailure`, and this field would have the dependency API service name. For example, if the called API is Kubernetes Engine API (container.googleapis.com), and a quota violation occurs in the Kubernetes Engine API itself, this field would be \"container.googleapis.com\". On the other hand, if the quota violation occurs when the Kubernetes Engine API creates VMs in the Compute Engine API (compute.googleapis.com), this field would be \"compute.googleapis.com\".", "type": "string" }, "description": { @@ -4444,7 +4686,7 @@ "properties": { "eventFilter": { "$ref": "EventFilter", - "description": "Optional. Optional event filter. If not set, or empty, the backfill will be performed on the entire object. This is currently used for partial backfill and only supported for SQL Server sources." + "description": "Optional. Optional event filter. If not set, or empty, the backfill will be performed on the entire object. This is currently used for partial backfill and only supported for SQL sources." } }, "type": "object" diff --git a/discovery/datastream-v1alpha1.json b/discovery/datastream-v1alpha1.json index a3e846c3f0f..84067474f1e 100644 --- a/discovery/datastream-v1alpha1.json +++ b/discovery/datastream-v1alpha1.json @@ -15,6 +15,243 @@ "description": "", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/datastream/", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.asia-southeast3.rep.googleapis.com/", + "location": "asia-southeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west15.rep.googleapis.com/", + "location": "europe-west15" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-west4.rep.googleapis.com/", + "location": "us-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://datastream.us-west8.rep.googleapis.com/", + "location": "us-west8" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -172,7 +409,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "datastream.projects.locations.list", @@ -181,7 +418,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1235,7 +1472,7 @@ } } }, - "revision": "20260204", + "revision": "20260426", "rootUrl": "https://datastream.googleapis.com/", "schemas": { "AvroFileFormat": { @@ -1603,7 +1840,7 @@ "type": "string" }, "field": { - "description": "A path that leads to a field in the request body. The value will be a sequence of dot-separated identifiers that identify a protocol buffer field. Consider the following: message CreateContactRequest { message EmailAddress { enum Type { TYPE_UNSPECIFIED = 0; HOME = 1; WORK = 2; } optional string email = 1; repeated EmailType type = 2; } string full_name = 1; repeated EmailAddress email_addresses = 2; } In this example, in proto `field` could take one of the following values: * `full_name` for a violation in the `full_name` value * `email_addresses[1].email` for a violation in the `email` field of the first `email_addresses` message * `email_addresses[3].type[2]` for a violation in the second `type` value in the third `email_addresses` message. In JSON, the same values are represented as: * `fullName` for a violation in the `fullName` value * `emailAddresses[1].email` for a violation in the `email` field of the first `emailAddresses` message * `emailAddresses[3].type[2]` for a violation in the second `type` value in the third `emailAddresses` message.", + "description": "A path that leads to a field in the request body. The value will be a sequence of dot-separated identifiers that identify a protocol buffer field. Consider the following: message CreateContactRequest { message EmailAddress { enum Type { TYPE_UNSPECIFIED = 0; HOME = 1; WORK = 2; } optional string email = 1; repeated EmailType type = 2; } string full_name = 1; repeated EmailAddress email_addresses = 2; } In this example, in proto `field` could take one of the following values: * `full_name` for a violation in the `full_name` value * `email_addresses[0].email` for a violation in the `email` field of the first `email_addresses` message * `email_addresses[2].type[1]` for a violation in the second `type` value in the third `email_addresses` message. In JSON, the same values are represented as: * `fullName` for a violation in the `fullName` value * `emailAddresses[0].email` for a violation in the `email` field of the first `emailAddresses` message * `emailAddresses[2].type[1]` for a violation in the second `type` value in the third `emailAddresses` message.", "type": "string" }, "localizedMessage": { @@ -2535,7 +2772,7 @@ "id": "QuotaFailureViolation", "properties": { "apiService": { - "description": "The API Service from which the `QuotaFailure.Violation` orginates. In some cases, Quota issues originate from an API Service other than the one that was called. In other words, a dependency of the called API Service could be the cause of the `QuotaFailure`, and this field would have the dependency API service name. For example, if the called API is Kubernetes Engine API (container.googleapis.com), and a quota violation occurs in the Kubernetes Engine API itself, this field would be \"container.googleapis.com\". On the other hand, if the quota violation occurs when the Kubernetes Engine API creates VMs in the Compute Engine API (compute.googleapis.com), this field would be \"compute.googleapis.com\".", + "description": "The API Service from which the `QuotaFailure.Violation` originates. In some cases, Quota issues originate from an API Service other than the one that was called. In other words, a dependency of the called API Service could be the cause of the `QuotaFailure`, and this field would have the dependency API service name. For example, if the called API is Kubernetes Engine API (container.googleapis.com), and a quota violation occurs in the Kubernetes Engine API itself, this field would be \"container.googleapis.com\". On the other hand, if the quota violation occurs when the Kubernetes Engine API creates VMs in the Compute Engine API (compute.googleapis.com), this field would be \"compute.googleapis.com\".", "type": "string" }, "description": { diff --git a/discovery/deploymentmanager-alpha.json b/discovery/deploymentmanager-alpha.json index 085c881dcf8..4d98f9e089a 100644 --- a/discovery/deploymentmanager-alpha.json +++ b/discovery/deploymentmanager-alpha.json @@ -1676,7 +1676,7 @@ } } }, - "revision": "20251128", + "revision": "20260312", "rootUrl": "https://deploymentmanager.googleapis.com/", "schemas": { "AsyncOptions": { @@ -2262,6 +2262,35 @@ }, "type": "object" }, + "GetVersionOperationMetadata": { + "id": "GetVersionOperationMetadata", + "properties": { + "inlineSbomInfo": { + "$ref": "GetVersionOperationMetadataSbomInfo" + } + }, + "type": "object" + }, + "GetVersionOperationMetadataSbomInfo": { + "id": "GetVersionOperationMetadataSbomInfo", + "properties": { + "currentComponentVersions": { + "additionalProperties": { + "type": "string" + }, + "description": "SBOM versions currently applied to the resource. The key is the component name and the value is the version.", + "type": "object" + }, + "targetComponentVersions": { + "additionalProperties": { + "type": "string" + }, + "description": "SBOM versions scheduled for the next maintenance. The key is the component name and the value is the version.", + "type": "object" + } + }, + "type": "object" + }, "GlobalSetPolicyRequest": { "id": "GlobalSetPolicyRequest", "properties": { @@ -2580,6 +2609,9 @@ "firewallPolicyRuleOperationMetadata": { "$ref": "FirewallPolicyRuleOperationMetadata" }, + "getVersionOperationMetadata": { + "$ref": "GetVersionOperationMetadata" + }, "httpErrorMessage": { "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as `NOT FOUND`.", "type": "string" diff --git a/discovery/deploymentmanager-v2.json b/discovery/deploymentmanager-v2.json index a66c6e2e450..98ff23d9c0d 100644 --- a/discovery/deploymentmanager-v2.json +++ b/discovery/deploymentmanager-v2.json @@ -1028,7 +1028,7 @@ } } }, - "revision": "20251128", + "revision": "20260312", "rootUrl": "https://deploymentmanager.googleapis.com/", "schemas": { "AuditConfig": { @@ -1376,6 +1376,35 @@ }, "type": "object" }, + "GetVersionOperationMetadata": { + "id": "GetVersionOperationMetadata", + "properties": { + "inlineSbomInfo": { + "$ref": "GetVersionOperationMetadataSbomInfo" + } + }, + "type": "object" + }, + "GetVersionOperationMetadataSbomInfo": { + "id": "GetVersionOperationMetadataSbomInfo", + "properties": { + "currentComponentVersions": { + "additionalProperties": { + "type": "string" + }, + "description": "SBOM versions currently applied to the resource. The key is the component name and the value is the version.", + "type": "object" + }, + "targetComponentVersions": { + "additionalProperties": { + "type": "string" + }, + "description": "SBOM versions scheduled for the next maintenance. The key is the component name and the value is the version.", + "type": "object" + } + }, + "type": "object" + }, "GlobalSetPolicyRequest": { "id": "GlobalSetPolicyRequest", "properties": { @@ -1630,6 +1659,9 @@ "firewallPolicyRuleOperationMetadata": { "$ref": "FirewallPolicyRuleOperationMetadata" }, + "getVersionOperationMetadata": { + "$ref": "GetVersionOperationMetadata" + }, "httpErrorMessage": { "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as `NOT FOUND`.", "type": "string" diff --git a/discovery/deploymentmanager-v2beta.json b/discovery/deploymentmanager-v2beta.json index 77d56423210..af9c111fb7b 100644 --- a/discovery/deploymentmanager-v2beta.json +++ b/discovery/deploymentmanager-v2beta.json @@ -1636,7 +1636,7 @@ } } }, - "revision": "20251128", + "revision": "20260312", "rootUrl": "https://deploymentmanager.googleapis.com/", "schemas": { "AsyncOptions": { @@ -2188,6 +2188,35 @@ }, "type": "object" }, + "GetVersionOperationMetadata": { + "id": "GetVersionOperationMetadata", + "properties": { + "inlineSbomInfo": { + "$ref": "GetVersionOperationMetadataSbomInfo" + } + }, + "type": "object" + }, + "GetVersionOperationMetadataSbomInfo": { + "id": "GetVersionOperationMetadataSbomInfo", + "properties": { + "currentComponentVersions": { + "additionalProperties": { + "type": "string" + }, + "description": "SBOM versions currently applied to the resource. The key is the component name and the value is the version.", + "type": "object" + }, + "targetComponentVersions": { + "additionalProperties": { + "type": "string" + }, + "description": "SBOM versions scheduled for the next maintenance. The key is the component name and the value is the version.", + "type": "object" + } + }, + "type": "object" + }, "GlobalSetPolicyRequest": { "id": "GlobalSetPolicyRequest", "properties": { @@ -2479,6 +2508,9 @@ "firewallPolicyRuleOperationMetadata": { "$ref": "FirewallPolicyRuleOperationMetadata" }, + "getVersionOperationMetadata": { + "$ref": "GetVersionOperationMetadata" + }, "httpErrorMessage": { "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as `NOT FOUND`.", "type": "string" diff --git a/discovery/developerconnect-v1.json b/discovery/developerconnect-v1.json index 0defb35c5d8..2f06c2cf25f 100644 --- a/discovery/developerconnect-v1.json +++ b/discovery/developerconnect-v1.json @@ -187,7 +187,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "developerconnect.projects.locations.list", @@ -196,7 +196,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -325,6 +325,47 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "fetchUserRepositories": { + "description": "FetchUserRepositories returns a list of UserRepos that are available for an account connector resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/accountConnectors/{accountConnectorsId}:fetchUserRepositories", + "httpMethod": "GET", + "id": "developerconnect.projects.locations.accountConnectors.fetchUserRepositories", + "parameterOrder": [ + "accountConnector" + ], + "parameters": { + "accountConnector": { + "description": "Required. The name of the Account Connector resource in the format: `projects/*/locations/*/accountConnectors/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/accountConnectors/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Optional. Number of results to return in the list. Defaults to 20.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Page start.", + "location": "query", + "type": "string" + }, + "repository": { + "description": "Optional. The name of the repository. When specified, only the UserRepository with this name will be returned if the repository is accessible under this Account Connector for the calling user.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+accountConnector}:fetchUserRepositories", + "response": { + "$ref": "FetchUserRepositoriesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "Gets details of a single AccountConnector.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/accountConnectors/{accountConnectorsId}", @@ -1754,7 +1795,7 @@ } } }, - "revision": "20260223", + "revision": "20260426", "rootUrl": "https://developerconnect.googleapis.com/", "schemas": { "AccountConnector": { @@ -1774,6 +1815,10 @@ "readOnly": true, "type": "string" }, + "customOauthConfig": { + "$ref": "CustomOAuthConfig", + "description": "Custom OAuth config." + }, "etag": { "description": "Optional. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", "type": "string" @@ -1798,6 +1843,15 @@ "$ref": "ProviderOAuthConfig", "description": "Optional. Provider OAuth config." }, + "proxyConfig": { + "$ref": "ProxyConfig", + "description": "Optional. Configuration for the http and git proxy features." + }, + "uid": { + "description": "Output only. A system-assigned unique identifier for the Account Connector.", + "readOnly": true, + "type": "string" + }, "updateTime": { "description": "Output only. The timestamp when the accountConnector was updated.", "format": "google-datetime", @@ -2053,7 +2107,7 @@ }, "gitProxyConfig": { "$ref": "GitProxyConfig", - "description": "Optional. Configuration for the git proxy feature. Enabling the git proxy allows clients to perform git operations on the repositories linked in the connection." + "description": "Optional. Configuration for the git proxy feature. Enabling the git proxy allows clients to perform git operations on the repositories linked in the connection. [Learn more](https://docs.cloud.google.com/developer-connect/docs/configure-git-proxy)." }, "githubConfig": { "$ref": "GitHubConfig", @@ -2125,6 +2179,73 @@ }, "type": "object" }, + "CustomOAuthConfig": { + "description": "Message for a customized OAuth config.", + "id": "CustomOAuthConfig", + "properties": { + "authUri": { + "description": "Required. Immutable. The OAuth2 authorization server URL.", + "type": "string" + }, + "clientId": { + "description": "Required. The client ID of the OAuth application.", + "type": "string" + }, + "clientSecret": { + "description": "Required. Input only. The client secret of the OAuth application. It will be provided as plain text, but encrypted and stored in developer connect. As INPUT_ONLY field, it will not be included in the output.", + "type": "string" + }, + "hostUri": { + "description": "Required. The host URI of the OAuth application.", + "type": "string" + }, + "pkceDisabled": { + "description": "Optional. Disable PKCE for this OAuth config. PKCE is enabled by default.", + "type": "boolean" + }, + "scmProvider": { + "description": "Required. The type of the SCM provider.", + "enum": [ + "SCM_PROVIDER_UNKNOWN", + "GITHUB_ENTERPRISE", + "GITLAB_ENTERPRISE", + "BITBUCKET_DATA_CENTER" + ], + "enumDescriptions": [ + "The SCM is not specified or BYO Account Connector is not an SCM.", + "BYO Account Connector is an instance of GitHub Enterprise.", + "BYO Account Connector is an instance of GitLab Enterprise.", + "BYO Account Connector is an instance of Bitbucket Data Center." + ], + "type": "string" + }, + "scopes": { + "description": "Required. The scopes to be requested during OAuth.", + "items": { + "type": "string" + }, + "type": "array" + }, + "serverVersion": { + "description": "Output only. SCM server version installed at the host URI.", + "readOnly": true, + "type": "string" + }, + "serviceDirectoryConfig": { + "$ref": "ServiceDirectoryConfig", + "description": "Optional. Configuration for using Service Directory to connect to a private service." + }, + "sslCaCertificate": { + "description": "Optional. SSL certificate to use for requests to a private service.", + "type": "string" + }, + "tokenUri": { + "description": "Required. Immutable. The OAuth2 token request URL.", + "type": "string" + } + }, + "type": "object" + }, "DeploymentEvent": { "description": "The DeploymentEvent resource represents the deployment of the artifact within the InsightsConfig resource.", "id": "DeploymentEvent", @@ -2349,6 +2470,24 @@ }, "type": "object" }, + "FetchUserRepositoriesResponse": { + "description": "Response message for FetchUserRepositories.", + "id": "FetchUserRepositoriesResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "userRepos": { + "description": "The repositories that the user can access with this account connector.", + "items": { + "$ref": "UserRepository" + }, + "type": "array" + } + }, + "type": "object" + }, "FinishOAuthResponse": { "description": "Message for responding to finishing an OAuth flow.", "id": "FinishOAuthResponse", @@ -3284,6 +3423,22 @@ }, "type": "object" }, + "ProxyConfig": { + "description": "The proxy configuration.", + "id": "ProxyConfig", + "properties": { + "enabled": { + "description": "Optional. Setting this to true allows the git and http proxies to perform actions on behalf of the user configured under the account connector.", + "type": "boolean" + }, + "httpProxyBaseUri": { + "description": "Output only. The base URI for the HTTP proxy endpoint. Has the format `https://{generatedID}-a-h-{shortRegion}.developerconnect.dev` Populated only when `enabled` is set to `true`. This endpoint is used by other Google services that integrate with Developer Connect.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "RuntimeConfig": { "description": "RuntimeConfig represents the runtimes where the application is deployed.", "id": "RuntimeConfig", @@ -3482,6 +3637,28 @@ } }, "type": "object" + }, + "UserRepository": { + "description": "A user repository that can be linked to the account connector. Consists of the repo name and the git proxy URL to forward requests to this repo.", + "id": "UserRepository", + "properties": { + "cloneUri": { + "description": "Output only. The git clone URL of the repo. For example: https://github.com/myuser/myrepo.git", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Output only. The user friendly repo name (e.g., myuser/myrepo)", + "readOnly": true, + "type": "string" + }, + "gitProxyUri": { + "description": "Output only. The Git proxy URL for this repo. For example: https://us-west1-git.developerconnect.dev/a/my-proj/my-ac/myuser/myrepo.git. Populated only when `proxy_config.enabled` is set to `true` in the Account Connector. This URL is used by other Google services that integrate with Developer Connect.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/discovery/developerknowledge-v1.json b/discovery/developerknowledge-v1.json new file mode 100644 index 00000000000..468be505655 --- /dev/null +++ b/discovery/developerknowledge-v1.json @@ -0,0 +1,357 @@ +{ + "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://developerknowledge.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Developer Knowledge", + "description": "The Developer Knowledge API provides access to Google's developer knowledge.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/knowledge", + "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": "developerknowledge:v1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://developerknowledge.mtls.googleapis.com/", + "name": "developerknowledge", + "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": { + "documents": { + "methods": { + "batchGet": { + "description": "Retrieves multiple documents, each with its full Markdown content.", + "flatPath": "v1/documents:batchGet", + "httpMethod": "GET", + "id": "developerknowledge.documents.batchGet", + "parameterOrder": [], + "parameters": { + "names": { + "description": "Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`", + "location": "query", + "repeated": true, + "type": "string" + }, + "view": { + "description": "Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.BatchGetDocuments defaults to `DOCUMENT_VIEW_CONTENT`.", + "enum": [ + "DOCUMENT_VIEW_UNSPECIFIED", + "DOCUMENT_VIEW_BASIC", + "DOCUMENT_VIEW_FULL", + "DOCUMENT_VIEW_CONTENT" + ], + "enumDescriptions": [ + "The default / unset value. See each API method for its default value if DocumentView is not specified.", + "Includes only the basic metadata fields: - `name` - `uri` - `data_source` - `title` - `description` - `update_time` - `view` This is the default of view for DeveloperKnowledge.SearchDocumentChunks.", + "Includes all Document fields.", + "Includes the `DOCUMENT_VIEW_BASIC` fields and the `content` field. This is the default of view for DeveloperKnowledge.GetDocument and DeveloperKnowledge.BatchGetDocuments." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/documents:batchGet", + "response": { + "$ref": "BatchGetDocumentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves a single document with its full Markdown content.", + "flatPath": "v1/documents/{documentsId}", + "httpMethod": "GET", + "id": "developerknowledge.documents.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`", + "location": "path", + "pattern": "^documents/.*$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.GetDocument defaults to `DOCUMENT_VIEW_CONTENT`.", + "enum": [ + "DOCUMENT_VIEW_UNSPECIFIED", + "DOCUMENT_VIEW_BASIC", + "DOCUMENT_VIEW_FULL", + "DOCUMENT_VIEW_CONTENT" + ], + "enumDescriptions": [ + "The default / unset value. See each API method for its default value if DocumentView is not specified.", + "Includes only the basic metadata fields: - `name` - `uri` - `data_source` - `title` - `description` - `update_time` - `view` This is the default of view for DeveloperKnowledge.SearchDocumentChunks.", + "Includes all Document fields.", + "Includes the `DOCUMENT_VIEW_BASIC` fields and the `content` field. This is the default of view for DeveloperKnowledge.GetDocument and DeveloperKnowledge.BatchGetDocuments." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Document" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "searchDocumentChunks": { + "description": "Searches for developer knowledge across Google's developer documentation. Returns DocumentChunks based on the user's query. There may be many chunks from the same Document. To retrieve full documents, use DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments with the DocumentChunk.parent returned in the SearchDocumentChunksResponse.results.", + "flatPath": "v1/documents:searchDocumentChunks", + "httpMethod": "GET", + "id": "developerknowledge.documents.searchDocumentChunks", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "Optional. Applies a strict filter to the search results. The expression supports a subset of the syntax described at https://google.aip.dev/160. While `SearchDocumentChunks` returns DocumentChunks, the filter is applied to `DocumentChunk.document` fields. Supported fields for filtering: * `data_source` (STRING): The source of the document, e.g. `docs.cloud.google.com`. See https://developers.google.com/knowledge/reference/corpus-reference for the complete list of data sources in the corpus. * `update_time` (TIMESTAMP): The timestamp of when the document was last meaningfully updated. A meaningful update is one that changes document's markdown content or metadata. * `uri` (STRING): The document URI, e.g. `https://docs.cloud.google.com/bigquery/docs/tables`. STRING fields support `=` (equals) and `!=` (not equals) operators for **exact match** on the whole string. Partial match, prefix match, and regexp match are not supported. TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators. Timestamps must be in RFC-3339 format, e.g., `\"2025-01-01T00:00:00Z\"`. You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical operators. `OR` has higher precedence than `AND`. Use parentheses for explicit precedence grouping. Examples: * `data_source = \"docs.cloud.google.com\" OR data_source = \"firebase.google.com\"` * `data_source != \"firebase.google.com\"` * `update_time < \"2024-01-01T00:00:00Z\"` * `update_time >= \"2025-01-22T00:00:00Z\" AND (data_source = \"developer.chrome.com\" OR data_source = \"web.dev\")` * `uri = \"https://docs.cloud.google.com/release-notes\"` The `filter` string must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Specifies the maximum number of results to return. The service may return fewer than this value. If unspecified, at most 5 results will be returned. The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT error.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Contains a page token, received from a previous `SearchDocumentChunks` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "query": { + "description": "Required. Provides the raw query string provided by the user, such as \"How to create a Cloud Storage bucket?\".", + "location": "query", + "type": "string" + } + }, + "path": "v1/documents:searchDocumentChunks", + "response": { + "$ref": "SearchDocumentChunksResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, + "revision": "20260413", + "rootUrl": "https://developerknowledge.googleapis.com/", + "schemas": { + "BatchGetDocumentsResponse": { + "description": "Response message for DeveloperKnowledge.BatchGetDocuments.", + "id": "BatchGetDocumentsResponse", + "properties": { + "documents": { + "description": "Contains the documents requested.", + "items": { + "$ref": "Document" + }, + "type": "array" + } + }, + "type": "object" + }, + "Document": { + "description": "A Document represents a piece of content from the Developer Knowledge corpus.", + "id": "Document", + "properties": { + "content": { + "description": "Output only. Contains the full content of the document in Markdown format.", + "readOnly": true, + "type": "string" + }, + "dataSource": { + "description": "Output only. Specifies the data source of the document. Example data source: `firebase.google.com`", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Output only. Provides a description of the document.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. Contains the resource name of the document. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`", + "type": "string" + }, + "title": { + "description": "Output only. Provides the title of the document.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Represents the timestamp when the content or metadata of the document was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "uri": { + "description": "Output only. Provides the URI of the content, such as `docs.cloud.google.com/storage/docs/creating-buckets`.", + "readOnly": true, + "type": "string" + }, + "view": { + "description": "Output only. Specifies the DocumentView of the document.", + "enum": [ + "DOCUMENT_VIEW_UNSPECIFIED", + "DOCUMENT_VIEW_BASIC", + "DOCUMENT_VIEW_FULL", + "DOCUMENT_VIEW_CONTENT" + ], + "enumDescriptions": [ + "The default / unset value. See each API method for its default value if DocumentView is not specified.", + "Includes only the basic metadata fields: - `name` - `uri` - `data_source` - `title` - `description` - `update_time` - `view` This is the default of view for DeveloperKnowledge.SearchDocumentChunks.", + "Includes all Document fields.", + "Includes the `DOCUMENT_VIEW_BASIC` fields and the `content` field. This is the default of view for DeveloperKnowledge.GetDocument and DeveloperKnowledge.BatchGetDocuments." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "DocumentChunk": { + "description": "A DocumentChunk represents a piece of content from a Document in the DeveloperKnowledge corpus. To fetch the entire document content, pass the `parent` to DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments.", + "id": "DocumentChunk", + "properties": { + "content": { + "description": "Output only. Contains the content of the document chunk.", + "readOnly": true, + "type": "string" + }, + "document": { + "$ref": "Document", + "description": "Output only. Represents metadata about the Document this chunk is from. The DocumentView of this Document message will be set to `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients do not need to call DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments if they only need the metadata fields. Otherwise, clients should use DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments to fetch the full document content.", + "readOnly": true + }, + "id": { + "description": "Output only. Specifies the ID of this chunk within the document. The chunk ID is unique within a document, but not globally unique across documents. The chunk ID is not stable and may change over time.", + "readOnly": true, + "type": "string" + }, + "parent": { + "description": "Output only. Contains the resource name of the document this chunk is from. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "SearchDocumentChunksResponse": { + "description": "Response message for DeveloperKnowledge.SearchDocumentChunks.", + "id": "SearchDocumentChunksResponse", + "properties": { + "nextPageToken": { + "description": "Optional. Provides a token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "results": { + "description": "Contains the search results for the given query. Each DocumentChunk in this list contains a snippet of content relevant to the search query. Use the DocumentChunk.parent field of each result with DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments to retrieve the full document content.", + "items": { + "$ref": "DocumentChunk" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Developer Knowledge API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/discovery/developerknowledge-v1alpha.json b/discovery/developerknowledge-v1alpha.json new file mode 100644 index 00000000000..24012eef37b --- /dev/null +++ b/discovery/developerknowledge-v1alpha.json @@ -0,0 +1,412 @@ +{ + "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://developerknowledge.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Developer Knowledge", + "description": "The Developer Knowledge API provides access to Google's developer knowledge.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/knowledge", + "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": "developerknowledge:v1alpha", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://developerknowledge.mtls.googleapis.com/", + "name": "developerknowledge", + "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": { + "documents": { + "methods": { + "batchGet": { + "description": "Retrieves multiple documents, each with its full Markdown content.", + "flatPath": "v1alpha/documents:batchGet", + "httpMethod": "GET", + "id": "developerknowledge.documents.batchGet", + "parameterOrder": [], + "parameters": { + "names": { + "description": "Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`", + "location": "query", + "repeated": true, + "type": "string" + }, + "view": { + "description": "Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.BatchGetDocuments defaults to `DOCUMENT_VIEW_CONTENT`.", + "enum": [ + "DOCUMENT_VIEW_UNSPECIFIED", + "DOCUMENT_VIEW_BASIC", + "DOCUMENT_VIEW_FULL", + "DOCUMENT_VIEW_CONTENT" + ], + "enumDescriptions": [ + "The default / unset value. See each API method for its default value if DocumentView is not specified.", + "Includes only the basic metadata fields: - `name` - `uri` - `data_source` - `title` - `description` - `update_time` - `view` This is the default of view for DeveloperKnowledge.SearchDocumentChunks.", + "Includes all Document fields.", + "Includes the `DOCUMENT_VIEW_BASIC` fields and the `content` field. This is the default of view for DeveloperKnowledge.GetDocument and DeveloperKnowledge.BatchGetDocuments." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/documents:batchGet", + "response": { + "$ref": "BatchGetDocumentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves a single document with its full Markdown content.", + "flatPath": "v1alpha/documents/{documentsId}", + "httpMethod": "GET", + "id": "developerknowledge.documents.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`", + "location": "path", + "pattern": "^documents/.*$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.GetDocument defaults to `DOCUMENT_VIEW_CONTENT`.", + "enum": [ + "DOCUMENT_VIEW_UNSPECIFIED", + "DOCUMENT_VIEW_BASIC", + "DOCUMENT_VIEW_FULL", + "DOCUMENT_VIEW_CONTENT" + ], + "enumDescriptions": [ + "The default / unset value. See each API method for its default value if DocumentView is not specified.", + "Includes only the basic metadata fields: - `name` - `uri` - `data_source` - `title` - `description` - `update_time` - `view` This is the default of view for DeveloperKnowledge.SearchDocumentChunks.", + "Includes all Document fields.", + "Includes the `DOCUMENT_VIEW_BASIC` fields and the `content` field. This is the default of view for DeveloperKnowledge.GetDocument and DeveloperKnowledge.BatchGetDocuments." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Document" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "searchDocumentChunks": { + "description": "Searches for developer knowledge across Google's developer documentation. Returns DocumentChunks based on the user's query. There may be many chunks from the same Document. To retrieve full documents, use DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments with the DocumentChunk.parent returned in the SearchDocumentChunksResponse.results.", + "flatPath": "v1alpha/documents:searchDocumentChunks", + "httpMethod": "GET", + "id": "developerknowledge.documents.searchDocumentChunks", + "parameterOrder": [], + "parameters": { + "filter": { + "description": "Optional. Applies a strict filter to the search results. The expression supports a subset of the syntax described at https://google.aip.dev/160. While `SearchDocumentChunks` returns DocumentChunks, the filter is applied to `DocumentChunk.document` fields. Supported fields for filtering: * `data_source` (STRING): The source of the document, e.g. `docs.cloud.google.com`. See https://developers.google.com/knowledge/reference/corpus-reference for the complete list of data sources in the corpus. * `update_time` (TIMESTAMP): The timestamp of when the document was last meaningfully updated. A meaningful update is one that changes document's markdown content or metadata. * `uri` (STRING): The document URI, e.g. `https://docs.cloud.google.com/bigquery/docs/tables`. STRING fields support `=` (equals) and `!=` (not equals) operators for **exact match** on the whole string. Partial match, prefix match, and regexp match are not supported. TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators. Timestamps must be in RFC-3339 format, e.g., `\"2025-01-01T00:00:00Z\"`. You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical operators. `OR` has higher precedence than `AND`. Use parentheses for explicit precedence grouping. Examples: * `data_source = \"docs.cloud.google.com\" OR data_source = \"firebase.google.com\"` * `data_source != \"firebase.google.com\"` * `update_time < \"2024-01-01T00:00:00Z\"` * `update_time >= \"2025-01-22T00:00:00Z\" AND (data_source = \"developer.chrome.com\" OR data_source = \"web.dev\")` * `uri = \"https://docs.cloud.google.com/release-notes\"` The `filter` string must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Specifies the maximum number of results to return. The service may return fewer than this value. If unspecified, at most 5 results will be returned. The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT error.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Contains a page token, received from a previous `SearchDocumentChunks` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "query": { + "description": "Required. Provides the raw query string provided by the user, such as \"How to create a Cloud Storage bucket?\".", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/documents:searchDocumentChunks", + "response": { + "$ref": "SearchDocumentChunksResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "v1alpha": { + "methods": { + "answerQuery": { + "description": "Answers a query using grounded generation.", + "flatPath": "v1alpha:answerQuery", + "httpMethod": "POST", + "id": "developerknowledge.answerQuery", + "parameterOrder": [], + "parameters": {}, + "path": "v1alpha:answerQuery", + "request": { + "$ref": "AnswerQueryRequest" + }, + "response": { + "$ref": "AnswerQueryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + }, + "revision": "20260413", + "rootUrl": "https://developerknowledge.googleapis.com/", + "schemas": { + "Answer": { + "description": "An answer to a query.", + "id": "Answer", + "properties": { + "answerText": { + "description": "The text of the answer.", + "type": "string" + } + }, + "type": "object" + }, + "AnswerQueryRequest": { + "description": "Request message for DeveloperKnowledge.AnswerQuery.", + "id": "AnswerQueryRequest", + "properties": { + "query": { + "description": "Required. The query to answer.", + "type": "string" + } + }, + "type": "object" + }, + "AnswerQueryResponse": { + "description": "Response message for DeveloperKnowledge.AnswerQuery.", + "id": "AnswerQueryResponse", + "properties": { + "answer": { + "$ref": "Answer", + "description": "The answer to the query." + } + }, + "type": "object" + }, + "BatchGetDocumentsResponse": { + "description": "Response message for DeveloperKnowledge.BatchGetDocuments.", + "id": "BatchGetDocumentsResponse", + "properties": { + "documents": { + "description": "Contains the documents requested.", + "items": { + "$ref": "Document" + }, + "type": "array" + } + }, + "type": "object" + }, + "Document": { + "description": "A Document represents a piece of content from the Developer Knowledge corpus.", + "id": "Document", + "properties": { + "content": { + "description": "Output only. Contains the full content of the document in Markdown format.", + "readOnly": true, + "type": "string" + }, + "dataSource": { + "description": "Output only. Specifies the data source of the document. Example data source: `firebase.google.com`", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Output only. Provides a description of the document.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. Contains the resource name of the document. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`", + "type": "string" + }, + "title": { + "description": "Output only. Provides the title of the document.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Represents the timestamp when the content or metadata of the document was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "uri": { + "description": "Output only. Provides the URI of the content, such as `docs.cloud.google.com/storage/docs/creating-buckets`.", + "readOnly": true, + "type": "string" + }, + "view": { + "description": "Output only. Specifies the DocumentView of the document.", + "enum": [ + "DOCUMENT_VIEW_UNSPECIFIED", + "DOCUMENT_VIEW_BASIC", + "DOCUMENT_VIEW_FULL", + "DOCUMENT_VIEW_CONTENT" + ], + "enumDescriptions": [ + "The default / unset value. See each API method for its default value if DocumentView is not specified.", + "Includes only the basic metadata fields: - `name` - `uri` - `data_source` - `title` - `description` - `update_time` - `view` This is the default of view for DeveloperKnowledge.SearchDocumentChunks.", + "Includes all Document fields.", + "Includes the `DOCUMENT_VIEW_BASIC` fields and the `content` field. This is the default of view for DeveloperKnowledge.GetDocument and DeveloperKnowledge.BatchGetDocuments." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "DocumentChunk": { + "description": "A DocumentChunk represents a piece of content from a Document in the DeveloperKnowledge corpus. To fetch the entire document content, pass the `parent` to DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments.", + "id": "DocumentChunk", + "properties": { + "content": { + "description": "Output only. Contains the content of the document chunk.", + "readOnly": true, + "type": "string" + }, + "document": { + "$ref": "Document", + "description": "Output only. Represents metadata about the Document this chunk is from. The DocumentView of this Document message will be set to `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients do not need to call DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments if they only need the metadata fields. Otherwise, clients should use DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments to fetch the full document content.", + "readOnly": true + }, + "id": { + "description": "Output only. Specifies the ID of this chunk within the document. The chunk ID is unique within a document, but not globally unique across documents. The chunk ID is not stable and may change over time.", + "readOnly": true, + "type": "string" + }, + "parent": { + "description": "Output only. Contains the resource name of the document this chunk is from. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "SearchDocumentChunksResponse": { + "description": "Response message for DeveloperKnowledge.SearchDocumentChunks.", + "id": "SearchDocumentChunksResponse", + "properties": { + "nextPageToken": { + "description": "Optional. Provides a token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "results": { + "description": "Contains the search results for the given query. Each DocumentChunk in this list contains a snippet of content relevant to the search query. Use the DocumentChunk.parent field of each result with DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments to retrieve the full document content.", + "items": { + "$ref": "DocumentChunk" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Developer Knowledge API", + "version": "v1alpha", + "version_module": true +} \ No newline at end of file diff --git a/discovery/dfareporting-v4.json b/discovery/dfareporting-v4.json index 563e3477180..9f702265d9b 100644 --- a/discovery/dfareporting-v4.json +++ b/discovery/dfareporting-v4.json @@ -10465,7 +10465,7 @@ } } }, - "revision": "20260213", + "revision": "20260310", "rootUrl": "https://dfareporting.googleapis.com/", "schemas": { "Account": { @@ -22484,6 +22484,7 @@ "description": "The date window of the timepoint.", "enum": [ "WEEKS_UNSPECIFIED", + "DAYS_ONE", "WEEKS_ONE", "WEEKS_FOUR", "WEEKS_EIGHT", @@ -22491,6 +22492,7 @@ ], "enumDescriptions": [ "Default value, should never be set.", + "One Day.", "One week.", "Four weeks.", "Eight weeks.", diff --git a/discovery/dfareporting-v5.json b/discovery/dfareporting-v5.json index 6c12b07e539..f053ab91c38 100644 --- a/discovery/dfareporting-v5.json +++ b/discovery/dfareporting-v5.json @@ -7110,6 +7110,22 @@ "location": "query", "repeated": true, "type": "string" + }, + "tagProperties.dcDbmMacroIncluded": { + "description": "Optional. Indicates whether to include the dc_dbm macro in the generated tags. [Learn more](https://support.google.com/campaignmanager/answer/9280273) about this macro.", + "location": "query", + "type": "boolean" + }, + "tagProperties.gppMacrosIncluded": { + "description": "Optional. Indicates whether to include the GPP macro in the generated tags. [Learn more](https://support.google.com/campaignmanager/answer/10031693) about this macro.", + "location": "query", + "type": "boolean" + }, + "tagProperties.tcfGdprMacrosIncluded": { + "default": "true", + "description": "Optional. Indicates whether to include the TCF macro in the generated tags. Default true. [Learn more](https://support.google.com/campaignmanager/answer/10031693) about this macro.", + "location": "query", + "type": "boolean" } }, "path": "userprofiles/{+profileId}/placements/generatetags", @@ -9457,6 +9473,7 @@ "description": "Optional. TV data provider. If not specified, defaults to `COMSCORE_NATIONAL_US`.", "enum": [ "INVALID_TV_DATA_PROVIDER", + "INTAGE_JP", "IBOPE_AR", "IBOPE_BR", "IBOPE_CL", @@ -9475,6 +9492,7 @@ "", "", "", + "", "" ], "location": "query", @@ -9531,6 +9549,7 @@ "description": "Optional. TV data provider. If not specified, defaults to `COMSCORE_NATIONAL_US`.", "enum": [ "INVALID_TV_DATA_PROVIDER", + "INTAGE_JP", "IBOPE_AR", "IBOPE_BR", "IBOPE_CL", @@ -9549,6 +9568,7 @@ "", "", "", + "", "" ], "location": "query", @@ -10071,7 +10091,7 @@ } } }, - "revision": "20260213", + "revision": "20260310", "rootUrl": "https://dfareporting.googleapis.com/", "schemas": { "Account": { @@ -12463,6 +12483,7 @@ "items": { "enum": [ "INVALID_TV_DATA_PROVIDER", + "INTAGE_JP", "IBOPE_AR", "IBOPE_BR", "IBOPE_CL", @@ -12481,6 +12502,7 @@ "", "", "", + "", "" ], "type": "string" @@ -21451,6 +21473,7 @@ "description": "The date window of the timepoint.", "enum": [ "WEEKS_UNSPECIFIED", + "DAYS_ONE", "WEEKS_ONE", "WEEKS_FOUR", "WEEKS_EIGHT", @@ -21458,6 +21481,7 @@ ], "enumDescriptions": [ "Default value, should never be set.", + "One Day.", "One week.", "Four weeks.", "Eight weeks.", diff --git a/discovery/dialogflow-v2.json b/discovery/dialogflow-v2.json index c22053b7053..3e63b042cde 100644 --- a/discovery/dialogflow-v2.json +++ b/discovery/dialogflow-v2.json @@ -8780,7 +8780,7 @@ } } }, - "revision": "20260119", + "revision": "20260426", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -9679,6 +9679,9 @@ "displayName": { "type": "string" }, + "dtmfPattern": { + "type": "string" + }, "isFallback": { "type": "boolean" }, @@ -11709,6 +11712,9 @@ "displayName": { "type": "string" }, + "dtmfPattern": { + "type": "string" + }, "isFallback": { "type": "boolean" }, @@ -13652,6 +13658,50 @@ }, "type": "object" }, + "GoogleCloudDialogflowV2CesAppSpec": { + "id": "GoogleCloudDialogflowV2CesAppSpec", + "properties": { + "cesApp": { + "type": "string" + }, + "confirmationRequirement": { + "enum": [ + "CONFIRMATION_REQUIREMENT_UNSPECIFIED", + "REQUIRED", + "NOT_REQUIRED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2CesToolSpec": { + "id": "GoogleCloudDialogflowV2CesToolSpec", + "properties": { + "cesTool": { + "type": "string" + }, + "confirmationRequirement": { + "enum": [ + "CONFIRMATION_REQUIREMENT_UNSPECIFIED", + "REQUIRED", + "NOT_REQUIRED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata": { "id": "GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata", "properties": { @@ -13871,6 +13921,17 @@ "readOnly": true, "type": "object" }, + "initialConversationProfile": { + "$ref": "GoogleCloudDialogflowV2ConversationProfile", + "readOnly": true + }, + "initialGeneratorContexts": { + "additionalProperties": { + "$ref": "GoogleCloudDialogflowV2ConversationGeneratorContext" + }, + "readOnly": true, + "type": "object" + }, "lifecycleState": { "enum": [ "LIFECYCLE_STATE_UNSPECIFIED", @@ -14061,6 +14122,34 @@ }, "type": "object" }, + "GoogleCloudDialogflowV2ConversationGeneratorContext": { + "id": "GoogleCloudDialogflowV2ConversationGeneratorContext", + "properties": { + "generatorType": { + "enum": [ + "GENERATOR_TYPE_UNSPECIFIED", + "FREE_FORM", + "AGENT_COACHING", + "SUMMARIZATION", + "TRANSLATION", + "AGENT_FEEDBACK", + "CUSTOMER_MESSAGE_GENERATION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowV2ConversationInfo": { "id": "GoogleCloudDialogflowV2ConversationInfo", "properties": { @@ -15232,6 +15321,18 @@ "agentCoachingContext": { "$ref": "GoogleCloudDialogflowV2AgentCoachingContext" }, + "cesAppSpecs": { + "items": { + "$ref": "GoogleCloudDialogflowV2CesAppSpec" + }, + "type": "array" + }, + "cesToolSpecs": { + "items": { + "$ref": "GoogleCloudDialogflowV2CesToolSpec" + }, + "type": "array" + }, "createTime": { "format": "google-datetime", "readOnly": true, @@ -15265,6 +15366,12 @@ }, "type": "array" }, + "toolsetTools": { + "items": { + "$ref": "GoogleCloudDialogflowV2ToolsetTool" + }, + "type": "array" + }, "triggerEvent": { "enum": [ "TRIGGER_EVENT_UNSPECIFIED", @@ -16962,11 +17069,29 @@ "answerText": { "type": "string" }, + "eventSource": { + "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource" + }, "faqSource": { "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource" }, "generativeSource": { "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + }, + "playbookSource": { + "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource": { + "id": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource", + "properties": { + "event": { + "type": "string" + }, + "snippets": { + "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" } }, "type": "object" @@ -18014,9 +18139,13 @@ "ANSWER_TYPE_UNSPECIFIED", "FAQ", "GENERATIVE", - "INTENT" + "INTENT", + "PLAYBOOK", + "EVENT" ], "enumDescriptions": [ + "", + "", "", "", "", @@ -19679,6 +19808,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "createTime": { "format": "google-datetime", "readOnly": true, @@ -19726,6 +19864,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "content": { "type": "string" }, @@ -19923,6 +20070,31 @@ }, "type": "object" }, + "GoogleCloudDialogflowV2ToolsetTool": { + "id": "GoogleCloudDialogflowV2ToolsetTool", + "properties": { + "confirmationRequirement": { + "enum": [ + "CONFIRMATION_REQUIREMENT_UNSPECIFIED", + "REQUIRED", + "NOT_REQUIRED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "operationId": { + "type": "string" + }, + "toolset": { + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowV2TrainAgentRequest": { "id": "GoogleCloudDialogflowV2TrainAgentRequest", "properties": {}, @@ -21907,11 +22079,29 @@ "answerText": { "type": "string" }, + "eventSource": { + "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource" + }, "faqSource": { "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource" }, "generativeSource": { "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + }, + "playbookSource": { + "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource": { + "id": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource", + "properties": { + "event": { + "type": "string" + }, + "snippets": { + "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" } }, "type": "object" @@ -22842,6 +23032,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "createTime": { "format": "google-datetime", "readOnly": true, @@ -22889,6 +23088,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "content": { "type": "string" }, diff --git a/discovery/dialogflow-v2beta1.json b/discovery/dialogflow-v2beta1.json index d6144950304..7d8b1959ab4 100644 --- a/discovery/dialogflow-v2beta1.json +++ b/discovery/dialogflow-v2beta1.json @@ -8431,7 +8431,7 @@ } } }, - "revision": "20260216", + "revision": "20260426", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -9330,6 +9330,9 @@ "displayName": { "type": "string" }, + "dtmfPattern": { + "type": "string" + }, "isFallback": { "type": "boolean" }, @@ -11360,6 +11363,9 @@ "displayName": { "type": "string" }, + "dtmfPattern": { + "type": "string" + }, "isFallback": { "type": "boolean" }, @@ -14197,11 +14203,29 @@ "answerText": { "type": "string" }, + "eventSource": { + "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource" + }, "faqSource": { "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource" }, "generativeSource": { "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + }, + "playbookSource": { + "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource": { + "id": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource", + "properties": { + "event": { + "type": "string" + }, + "snippets": { + "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" } }, "type": "object" @@ -14957,6 +14981,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "createTime": { "format": "google-datetime", "readOnly": true, @@ -15004,6 +15037,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "content": { "type": "string" }, @@ -15992,6 +16034,50 @@ }, "type": "object" }, + "GoogleCloudDialogflowV2beta1CesAppSpec": { + "id": "GoogleCloudDialogflowV2beta1CesAppSpec", + "properties": { + "cesApp": { + "type": "string" + }, + "confirmationRequirement": { + "enum": [ + "CONFIRMATION_REQUIREMENT_UNSPECIFIED", + "REQUIRED", + "NOT_REQUIRED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1CesToolSpec": { + "id": "GoogleCloudDialogflowV2beta1CesToolSpec", + "properties": { + "cesTool": { + "type": "string" + }, + "confirmationRequirement": { + "enum": [ + "CONFIRMATION_REQUIREMENT_UNSPECIFIED", + "REQUIRED", + "NOT_REQUIRED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata": { "id": "GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata", "properties": { @@ -16246,6 +16332,17 @@ "readOnly": true, "type": "object" }, + "initialConversationProfile": { + "$ref": "GoogleCloudDialogflowV2beta1ConversationProfile", + "readOnly": true + }, + "initialGeneratorContexts": { + "additionalProperties": { + "$ref": "GoogleCloudDialogflowV2beta1ConversationGeneratorContext" + }, + "readOnly": true, + "type": "object" + }, "lifecycleState": { "enum": [ "LIFECYCLE_STATE_UNSPECIFIED", @@ -16394,6 +16491,34 @@ }, "type": "object" }, + "GoogleCloudDialogflowV2beta1ConversationGeneratorContext": { + "id": "GoogleCloudDialogflowV2beta1ConversationGeneratorContext", + "properties": { + "generatorType": { + "enum": [ + "GENERATOR_TYPE_UNSPECIFIED", + "FREE_FORM", + "AGENT_COACHING", + "SUMMARIZATION", + "TRANSLATION", + "AGENT_FEEDBACK", + "CUSTOMER_MESSAGE_GENERATION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowV2beta1ConversationPhoneNumber": { "id": "GoogleCloudDialogflowV2beta1ConversationPhoneNumber", "properties": { @@ -17304,6 +17429,18 @@ "agentCoachingContext": { "$ref": "GoogleCloudDialogflowV2beta1AgentCoachingContext" }, + "cesAppSpecs": { + "items": { + "$ref": "GoogleCloudDialogflowV2beta1CesAppSpec" + }, + "type": "array" + }, + "cesToolSpecs": { + "items": { + "$ref": "GoogleCloudDialogflowV2beta1CesToolSpec" + }, + "type": "array" + }, "createTime": { "format": "google-datetime", "readOnly": true, @@ -17337,6 +17474,12 @@ }, "type": "array" }, + "toolsetTools": { + "items": { + "$ref": "GoogleCloudDialogflowV2beta1ToolsetTool" + }, + "type": "array" + }, "triggerEvent": { "enum": [ "TRIGGER_EVENT_UNSPECIFIED", @@ -19289,11 +19432,29 @@ "answerText": { "type": "string" }, + "eventSource": { + "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource" + }, "faqSource": { "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource" }, "generativeSource": { "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + }, + "playbookSource": { + "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource": { + "id": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource", + "properties": { + "event": { + "type": "string" + }, + "snippets": { + "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" } }, "type": "object" @@ -20083,6 +20244,9 @@ "GoogleCloudDialogflowV2beta1PhoneNumber": { "id": "GoogleCloudDialogflowV2beta1PhoneNumber", "properties": { + "allowedSipTrunks": { + "$ref": "GoogleCloudDialogflowV2beta1PhoneNumberAllowedSipTrunks" + }, "conversationProfile": { "type": "string" }, @@ -20106,6 +20270,29 @@ "phoneNumber": { "readOnly": true, "type": "string" + }, + "purgeTime": { + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1PhoneNumberAllowedSipTrunks": { + "id": "GoogleCloudDialogflowV2beta1PhoneNumberAllowedSipTrunks", + "properties": { + "carrierIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "sipTrunks": { + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -20473,9 +20660,13 @@ "ANSWER_TYPE_UNSPECIFIED", "FAQ", "GENERATIVE", - "INTENT" + "INTENT", + "PLAYBOOK", + "EVENT" ], "enumDescriptions": [ + "", + "", "", "", "", @@ -22276,6 +22467,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "createTime": { "format": "google-datetime", "readOnly": true, @@ -22323,6 +22523,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "content": { "type": "string" }, @@ -22520,6 +22729,31 @@ }, "type": "object" }, + "GoogleCloudDialogflowV2beta1ToolsetTool": { + "id": "GoogleCloudDialogflowV2beta1ToolsetTool", + "properties": { + "confirmationRequirement": { + "enum": [ + "CONFIRMATION_REQUIREMENT_UNSPECIFIED", + "REQUIRED", + "NOT_REQUIRED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "operationId": { + "type": "string" + }, + "toolset": { + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowV2beta1TrainAgentRequest": { "id": "GoogleCloudDialogflowV2beta1TrainAgentRequest", "properties": {}, diff --git a/discovery/dialogflow-v3.json b/discovery/dialogflow-v3.json index 8adcbcf2628..8da94c0c477 100644 --- a/discovery/dialogflow-v3.json +++ b/discovery/dialogflow-v3.json @@ -5031,7 +5031,7 @@ } } }, - "revision": "20260119", + "revision": "20260426", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3Action": { @@ -6993,6 +6993,19 @@ }, "type": "object" }, + "GoogleCloudDialogflowCxV3FlowTraceMetadata": { + "id": "GoogleCloudDialogflowCxV3FlowTraceMetadata", + "properties": { + "displayName": { + "readOnly": true, + "type": "string" + }, + "flow": { + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowCxV3FlowTransition": { "id": "GoogleCloudDialogflowCxV3FlowTransition", "properties": { @@ -7790,6 +7803,9 @@ "displayName": { "type": "string" }, + "dtmfPattern": { + "type": "string" + }, "isFallback": { "type": "boolean" }, @@ -8889,6 +8905,19 @@ }, "type": "object" }, + "GoogleCloudDialogflowCxV3PlaybookTraceMetadata": { + "id": "GoogleCloudDialogflowCxV3PlaybookTraceMetadata", + "properties": { + "displayName": { + "readOnly": true, + "type": "string" + }, + "playbook": { + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowCxV3PlaybookTransition": { "id": "GoogleCloudDialogflowCxV3PlaybookTransition", "properties": { @@ -9102,6 +9131,12 @@ "text": { "type": "string" }, + "traceBlocks": { + "items": { + "$ref": "GoogleCloudDialogflowCxV3TraceBlock" + }, + "type": "array" + }, "transcript": { "type": "string" }, @@ -9790,6 +9825,16 @@ }, "type": "object" }, + "GoogleCloudDialogflowCxV3SpeechProcessingMetadata": { + "id": "GoogleCloudDialogflowCxV3SpeechProcessingMetadata", + "properties": { + "displayName": { + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowCxV3SpeechToTextSettings": { "id": "GoogleCloudDialogflowCxV3SpeechToTextSettings", "properties": { @@ -10379,6 +10424,71 @@ }, "type": "object" }, + "GoogleCloudDialogflowCxV3TraceBlock": { + "id": "GoogleCloudDialogflowCxV3TraceBlock", + "properties": { + "actions": { + "items": { + "$ref": "GoogleCloudDialogflowCxV3Action" + }, + "type": "array" + }, + "completeTime": { + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endState": { + "enum": [ + "OUTPUT_STATE_UNSPECIFIED", + "OUTPUT_STATE_OK", + "OUTPUT_STATE_CANCELLED", + "OUTPUT_STATE_FAILED", + "OUTPUT_STATE_ESCALATED", + "OUTPUT_STATE_PENDING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "readOnly": true, + "type": "string" + }, + "flowTraceMetadata": { + "$ref": "GoogleCloudDialogflowCxV3FlowTraceMetadata" + }, + "inputParameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "outputParameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "playbookTraceMetadata": { + "$ref": "GoogleCloudDialogflowCxV3PlaybookTraceMetadata" + }, + "speechProcessingMetadata": { + "$ref": "GoogleCloudDialogflowCxV3SpeechProcessingMetadata" + }, + "startTime": { + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowCxV3TrainFlowRequest": { "id": "GoogleCloudDialogflowCxV3TrainFlowRequest", "properties": {}, @@ -12062,6 +12172,9 @@ "displayName": { "type": "string" }, + "dtmfPattern": { + "type": "string" + }, "isFallback": { "type": "boolean" }, @@ -14899,11 +15012,29 @@ "answerText": { "type": "string" }, + "eventSource": { + "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource" + }, "faqSource": { "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource" }, "generativeSource": { "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + }, + "playbookSource": { + "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource": { + "id": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource", + "properties": { + "event": { + "type": "string" + }, + "snippets": { + "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" } }, "type": "object" @@ -15659,6 +15790,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "createTime": { "format": "google-datetime", "readOnly": true, @@ -15706,6 +15846,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "content": { "type": "string" }, @@ -17603,11 +17752,29 @@ "answerText": { "type": "string" }, + "eventSource": { + "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource" + }, "faqSource": { "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource" }, "generativeSource": { "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + }, + "playbookSource": { + "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource": { + "id": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource", + "properties": { + "event": { + "type": "string" + }, + "snippets": { + "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" } }, "type": "object" @@ -18538,6 +18705,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "createTime": { "format": "google-datetime", "readOnly": true, @@ -18585,6 +18761,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "content": { "type": "string" }, diff --git a/discovery/dialogflow-v3beta1.json b/discovery/dialogflow-v3beta1.json index dde49662eb7..3c1fe0865fb 100644 --- a/discovery/dialogflow-v3beta1.json +++ b/discovery/dialogflow-v3beta1.json @@ -5151,7 +5151,7 @@ } } }, - "revision": "20260119", + "revision": "20260426", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -6050,6 +6050,9 @@ "displayName": { "type": "string" }, + "dtmfPattern": { + "type": "string" + }, "isFallback": { "type": "boolean" }, @@ -9630,6 +9633,19 @@ }, "type": "object" }, + "GoogleCloudDialogflowCxV3beta1FlowTraceMetadata": { + "id": "GoogleCloudDialogflowCxV3beta1FlowTraceMetadata", + "properties": { + "displayName": { + "readOnly": true, + "type": "string" + }, + "flow": { + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowCxV3beta1FlowTransition": { "id": "GoogleCloudDialogflowCxV3beta1FlowTransition", "properties": { @@ -10450,6 +10466,9 @@ "displayName": { "type": "string" }, + "dtmfPattern": { + "type": "string" + }, "isFallback": { "type": "boolean" }, @@ -11731,6 +11750,19 @@ }, "type": "object" }, + "GoogleCloudDialogflowCxV3beta1PlaybookTraceMetadata": { + "id": "GoogleCloudDialogflowCxV3beta1PlaybookTraceMetadata", + "properties": { + "displayName": { + "readOnly": true, + "type": "string" + }, + "playbook": { + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowCxV3beta1PlaybookTransition": { "id": "GoogleCloudDialogflowCxV3beta1PlaybookTransition", "properties": { @@ -11955,6 +11987,12 @@ "text": { "type": "string" }, + "traceBlocks": { + "items": { + "$ref": "GoogleCloudDialogflowCxV3beta1TraceBlock" + }, + "type": "array" + }, "transcript": { "type": "string" }, @@ -12682,6 +12720,16 @@ }, "type": "object" }, + "GoogleCloudDialogflowCxV3beta1SpeechProcessingMetadata": { + "id": "GoogleCloudDialogflowCxV3beta1SpeechProcessingMetadata", + "properties": { + "displayName": { + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowCxV3beta1SpeechToTextSettings": { "id": "GoogleCloudDialogflowCxV3beta1SpeechToTextSettings", "properties": { @@ -13428,6 +13476,71 @@ }, "type": "object" }, + "GoogleCloudDialogflowCxV3beta1TraceBlock": { + "id": "GoogleCloudDialogflowCxV3beta1TraceBlock", + "properties": { + "actions": { + "items": { + "$ref": "GoogleCloudDialogflowCxV3beta1Action" + }, + "type": "array" + }, + "completeTime": { + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endState": { + "enum": [ + "OUTPUT_STATE_UNSPECIFIED", + "OUTPUT_STATE_OK", + "OUTPUT_STATE_CANCELLED", + "OUTPUT_STATE_FAILED", + "OUTPUT_STATE_ESCALATED", + "OUTPUT_STATE_PENDING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "readOnly": true, + "type": "string" + }, + "flowTraceMetadata": { + "$ref": "GoogleCloudDialogflowCxV3beta1FlowTraceMetadata" + }, + "inputParameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "outputParameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "playbookTraceMetadata": { + "$ref": "GoogleCloudDialogflowCxV3beta1PlaybookTraceMetadata" + }, + "speechProcessingMetadata": { + "$ref": "GoogleCloudDialogflowCxV3beta1SpeechProcessingMetadata" + }, + "startTime": { + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowCxV3beta1TrainFlowRequest": { "id": "GoogleCloudDialogflowCxV3beta1TrainFlowRequest", "properties": {}, @@ -15944,11 +16057,29 @@ "answerText": { "type": "string" }, + "eventSource": { + "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource" + }, "faqSource": { "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource" }, "generativeSource": { "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + }, + "playbookSource": { + "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource": { + "id": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource", + "properties": { + "event": { + "type": "string" + }, + "snippets": { + "$ref": "GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" } }, "type": "object" @@ -16704,6 +16835,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "createTime": { "format": "google-datetime", "readOnly": true, @@ -16751,6 +16891,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "content": { "type": "string" }, @@ -18648,11 +18797,29 @@ "answerText": { "type": "string" }, + "eventSource": { + "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource" + }, "faqSource": { "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource" }, "generativeSource": { "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + }, + "playbookSource": { + "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource": { + "id": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource", + "properties": { + "event": { + "type": "string" + }, + "snippets": { + "$ref": "GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource" } }, "type": "object" @@ -19583,6 +19750,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "createTime": { "format": "google-datetime", "readOnly": true, @@ -19630,6 +19806,15 @@ "answerRecord": { "type": "string" }, + "cesApp": { + "type": "string" + }, + "cesTool": { + "type": "string" + }, + "cesToolset": { + "type": "string" + }, "content": { "type": "string" }, diff --git a/discovery/discoveryengine-v1.json b/discovery/discoveryengine-v1.json index 8ceb4bda9f0..0210697a729 100644 --- a/discovery/discoveryengine-v1.json +++ b/discovery/discoveryengine-v1.json @@ -13,6 +13,9 @@ }, "https://www.googleapis.com/auth/discoveryengine.readwrite": { "description": "View, edit, create, and delete all your data associated with any Discovery Engine API product, such as Agentspace, Vertex AI Search, or NotebookLM Enterprise, including both end user data and administration or configuration data." + }, + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite": { + "description": "Interact with Discovery Engine API products, such as Agentspace, Vertex AI Search, or NotebookLM Enterprise, on your behalf. It will also allow the app to view all data that you have access to when you use or interact with a Discovery Engine API product." } } } @@ -141,6 +144,74 @@ }, "protocol": "rest", "resources": { + "billingAccounts": { + "resources": { + "billingAccountLicenseConfigs": { + "methods": { + "distributeLicenseConfig": { + "description": "Distributes a LicenseConfig from billing account level to project level.", + "flatPath": "v1/billingAccounts/{billingAccountsId}/billingAccountLicenseConfigs/{billingAccountLicenseConfigsId}:distributeLicenseConfig", + "httpMethod": "POST", + "id": "discoveryengine.billingAccounts.billingAccountLicenseConfigs.distributeLicenseConfig", + "parameterOrder": [ + "billingAccountLicenseConfig" + ], + "parameters": { + "billingAccountLicenseConfig": { + "description": "Required. Full resource name of BillingAccountLicenseConfig. Format: `billingAccounts/{billing_account}/billingAccountLicenseConfigs/{billing_account_license_config_id}`.", + "location": "path", + "pattern": "^billingAccounts/[^/]+/billingAccountLicenseConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+billingAccountLicenseConfig}:distributeLicenseConfig", + "request": { + "$ref": "GoogleCloudDiscoveryengineV1DistributeLicenseConfigRequest" + }, + "response": { + "$ref": "GoogleCloudDiscoveryengineV1DistributeLicenseConfigResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + }, + "retractLicenseConfig": { + "description": "This method is called from the billing account side to retract the LicenseConfig from the given project back to the billing account.", + "flatPath": "v1/billingAccounts/{billingAccountsId}/billingAccountLicenseConfigs/{billingAccountLicenseConfigsId}:retractLicenseConfig", + "httpMethod": "POST", + "id": "discoveryengine.billingAccounts.billingAccountLicenseConfigs.retractLicenseConfig", + "parameterOrder": [ + "billingAccountLicenseConfig" + ], + "parameters": { + "billingAccountLicenseConfig": { + "description": "Required. Full resource name of BillingAccountLicenseConfig. Format: `billingAccounts/{billing_account}/billingAccountLicenseConfigs/{billing_account_license_config_id}`.", + "location": "path", + "pattern": "^billingAccounts/[^/]+/billingAccountLicenseConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+billingAccountLicenseConfig}:retractLicenseConfig", + "request": { + "$ref": "GoogleCloudDiscoveryengineV1RetractLicenseConfigRequest" + }, + "response": { + "$ref": "GoogleCloudDiscoveryengineV1RetractLicenseConfigResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + } + } + } + } + }, "projects": { "methods": { "provision": { @@ -169,7 +240,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -199,7 +271,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getCmekConfig": { @@ -225,7 +298,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "setUpDataConnector": { @@ -255,7 +329,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "setUpDataConnectorV2": { @@ -273,7 +348,7 @@ "type": "string" }, "collectionId": { - "description": "Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. Should conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", "location": "query", "type": "string" }, @@ -295,7 +370,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "updateAclConfig": { @@ -324,7 +400,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "updateCmekConfig": { @@ -358,7 +435,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -388,7 +466,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -414,7 +493,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -440,7 +520,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -474,7 +555,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -504,7 +586,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getDataConnector": { @@ -517,7 +600,7 @@ ], "parameters": { "name": { - "description": "Required. Full resource name of DataConnector, such as `projects/{project}/locations/{location}/collections/{collection_id}/dataConnector`. If the caller does not have permission to access the DataConnector, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. If the requested DataConnector does not exist, a NOT_FOUND error is returned.", + "description": "Required. Full resource name of DataConnector, such as `projects/{project}/locations/{location}/collections/{collection_id}/dataConnector`. If the caller does not have permission to access the DataConnector, regardless of whether or not it exists, a `PERMISSION_DENIED` error is returned. If the requested DataConnector does not exist, a `NOT_FOUND` error is returned.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataConnector$", "required": true, @@ -531,7 +614,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "updateDataConnector": { @@ -544,14 +628,14 @@ ], "parameters": { "name": { - "description": "Output only. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", + "description": "Identifier. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataConnector$", "required": true, "type": "string" }, "updateMask": { - "description": "Indicates which fields in the provided DataConnector to update. Supported field paths include: - `refresh_interval` - `params` - `auto_run_disabled` - `action_config` - `action_config.action_params` - `action_config.service_name` - `destination_configs` - `blocking_reasons` - `sync_mode` - `incremental_sync_disabled` - `incremental_refresh_interval` - `data_protection_policy` Note: Support for these fields may vary depending on the connector type. For example, not all connectors support `destination_configs`. If an unsupported or unknown field path is provided, the request will return an INVALID_ARGUMENT error.", + "description": "Indicates which fields in the provided DataConnector to update. Supported field paths include: - `refresh_interval` - `params` - `auto_run_disabled` - `action_config` - `action_config.action_params` - `action_config.service_name` - `destination_configs` - `blocking_reasons` - `sync_mode` - `incremental_sync_disabled` - `incremental_refresh_interval` - `data_protection_policy` Note: Support for these fields may vary depending on the connector type. For example, not all connectors support `destination_configs`. If an unsupported or unknown field path is provided, the request will return an `INVALID_ARGUMENT` error.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -567,12 +651,73 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, "resources": { "dataConnector": { + "methods": { + "mcp": { + "description": "ServeMcpDeleteRequest serves a MCP DELETE request.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataConnector/mcp", + "httpMethod": "DELETE", + "id": "discoveryengine.projects.locations.collections.dataConnector.mcp", + "parameterOrder": [ + "projectsId", + "locationsId", + "collectionsId" + ], + "parameters": { + "collectionsId": { + "location": "path", + "required": true, + "type": "string" + }, + "contentType": { + "description": "The HTTP Content-Type header value specifying the content type of the body.", + "location": "query", + "type": "string" + }, + "data": { + "description": "The HTTP request/response body as raw binary.", + "format": "byte", + "location": "query", + "type": "string" + }, + "extensions": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Application specific response metadata. Must be set in the first response for streaming APIs.", + "location": "query", + "repeated": true, + "type": "object" + }, + "locationsId": { + "location": "path", + "required": true, + "type": "string" + }, + "projectsId": { + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataConnector/mcp", + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + } + }, "resources": { "operations": { "methods": { @@ -599,7 +744,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -646,7 +792,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -699,7 +846,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -753,7 +901,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -779,7 +928,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -805,7 +955,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getSiteSearchEngine": { @@ -831,7 +982,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -873,7 +1025,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -908,7 +1061,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "trainCustomModel": { @@ -937,7 +1091,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -979,7 +1134,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -1017,7 +1173,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -1043,7 +1200,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -1069,7 +1227,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -1098,7 +1257,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1135,7 +1295,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -1175,7 +1336,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -1204,7 +1366,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1237,7 +1400,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -1263,7 +1427,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1310,7 +1475,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1347,7 +1513,8 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud_search.query", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1381,7 +1548,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -1411,7 +1579,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1449,7 +1618,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -1475,7 +1645,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -1501,7 +1672,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1543,7 +1715,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -1578,7 +1751,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1611,7 +1785,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -1640,7 +1815,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -1666,7 +1842,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -1692,7 +1869,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1739,7 +1917,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -1774,7 +1953,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1804,7 +1984,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1836,7 +2017,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1883,7 +2065,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1915,7 +2098,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1962,7 +2146,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2000,7 +2185,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -2026,7 +2212,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -2052,7 +2239,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2089,7 +2277,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -2123,7 +2312,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -2153,7 +2343,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2200,7 +2391,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2219,7 +2411,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -2235,7 +2427,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -2269,7 +2462,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -2295,7 +2489,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -2321,7 +2516,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2358,7 +2554,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -2393,7 +2590,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recommend": { @@ -2422,7 +2620,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "search": { @@ -2452,7 +2651,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "searchLite": { @@ -2482,7 +2682,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "streamAnswer": { @@ -2495,7 +2696,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -2511,7 +2712,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2533,6 +2735,11 @@ "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+$", "required": true, "type": "string" + }, + "sessionId": { + "description": "Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61}[a-z0-9]/. If not specified, a unique ID will be generated.", + "location": "query", + "type": "string" } }, "path": "v1/{+parent}/sessions", @@ -2545,7 +2752,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -2572,7 +2780,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -2604,7 +2813,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2652,7 +2862,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -2688,7 +2899,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -2718,7 +2930,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2753,7 +2966,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "disableAdvancedSiteSearch": { @@ -2782,7 +2996,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "enableAdvancedSiteSearch": { @@ -2811,7 +3026,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "fetchDomainVerificationStatus": { @@ -2848,7 +3064,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recrawlUris": { @@ -2877,7 +3094,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -2907,7 +3125,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2954,7 +3173,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2987,7 +3207,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -3013,7 +3234,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "fetch": { @@ -3045,7 +3267,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3078,7 +3301,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -3107,7 +3331,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -3133,7 +3358,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -3159,7 +3385,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3196,7 +3423,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -3225,7 +3453,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -3255,7 +3484,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3302,7 +3532,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3340,7 +3571,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -3370,7 +3602,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3417,7 +3650,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -3447,7 +3681,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -3477,7 +3712,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "write": { @@ -3512,7 +3748,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3553,7 +3790,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -3589,7 +3827,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3629,7 +3868,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -3655,7 +3895,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -3681,7 +3922,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getIamPolicy": { @@ -3713,7 +3955,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3755,7 +3998,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -3790,7 +4034,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "setIamPolicy": { @@ -3819,7 +4064,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -3858,7 +4104,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -3885,7 +4132,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -3912,7 +4160,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3950,7 +4199,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -3986,7 +4236,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "streamAssist": { @@ -4016,97 +4267,395 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, "resources": { "agents": { - "methods": { - "getCard": { - "description": "GetAgentCard returns the agent card for the agent.", - "flatPath": "projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/card", - "httpMethod": "GET", - "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.getCard", - "parameterOrder": [ - "tenant" - ], - "parameters": { - "tenant": { - "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "{+tenant}/card", - "response": { - "$ref": "A2aV1AgentCard" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, "resources": { - "message": { - "methods": { - "send": { - "description": "Send a message to the agent. This is a blocking call that will return the task once it is completed, or a LRO if requested.", - "flatPath": "projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/message:send", - "httpMethod": "POST", - "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.message.send", - "parameterOrder": [ - "tenant" - ], - "parameters": { - "tenant": { - "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", - "required": true, - "type": "string" + "a2a": { + "resources": { + "v1": { + "methods": { + "getCard": { + "description": "GetAgentCard returns the agent card for the agent.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/a2a/v1/card", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.getCard", + "parameterOrder": [ + "tenant" + ], + "parameters": { + "tenant": { + "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+tenant}/a2a/v1/card", + "response": { + "$ref": "A2aV1AgentCard" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] } }, - "path": "{+tenant}/message:send", - "request": { - "$ref": "A2aV1SendMessageRequest" - }, - "response": { - "$ref": "A2aV1SendMessageResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "stream": { - "description": "SendStreamingMessage is a streaming call that will return a stream of task update events until the Task is in an interrupted or terminal state.", - "flatPath": "projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/message:stream", - "httpMethod": "POST", - "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.message.stream", - "parameterOrder": [ - "tenant" - ], - "parameters": { - "tenant": { - "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", - "required": true, - "type": "string" + "resources": { + "message": { + "methods": { + "send": { + "description": "Send a message to the agent. This is a blocking call that will return the task once it is completed, or a LRO if requested.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/a2a/v1/message:send", + "httpMethod": "POST", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.message.send", + "parameterOrder": [ + "tenant" + ], + "parameters": { + "tenant": { + "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+tenant}/a2a/v1/message:send", + "request": { + "$ref": "A2aV1SendMessageRequest" + }, + "response": { + "$ref": "A2aV1SendMessageResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + }, + "stream": { + "description": "SendStreamingMessage is a streaming call that will return a stream of task update events until the Task is in an interrupted or terminal state.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/a2a/v1/message:stream", + "httpMethod": "POST", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.message.stream", + "parameterOrder": [ + "tenant" + ], + "parameters": { + "tenant": { + "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+tenant}/a2a/v1/message:stream", + "request": { + "$ref": "A2aV1SendMessageRequest" + }, + "response": { + "$ref": "A2aV1StreamResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + } + } + }, + "tasks": { + "methods": { + "cancel": { + "description": "Cancel a task from the agent. If supported one should expect no more task updates for the task.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/a2a/v1/tasks/{tasksId}:cancel", + "httpMethod": "POST", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.cancel", + "parameterOrder": [ + "tenant", + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the task to cancel. Format: tasks/{task_id}", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "tenant": { + "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+tenant}/a2a/v1/{+name}:cancel", + "request": { + "$ref": "A2aV1CancelTaskRequest" + }, + "response": { + "$ref": "A2aV1Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + }, + "get": { + "description": "Get the current state of a task from the agent.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/a2a/v1/tasks/{tasksId}", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.get", + "parameterOrder": [ + "tenant", + "name" + ], + "parameters": { + "historyLength": { + "description": "The number of most recent messages from the task's history to retrieve.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "name": { + "description": "Required. The resource name of the task. Format: tasks/{task_id}", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "tenant": { + "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+tenant}/a2a/v1/{+name}", + "response": { + "$ref": "A2aV1Task" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + }, + "subscribe": { + "description": "TaskSubscription is a streaming call that will return a stream of task update events. This attaches the stream to an existing in process task. If the task is complete the stream will return the completed task (like GetTask) and close the stream.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/a2a/v1/tasks/{tasksId}:subscribe", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.subscribe", + "parameterOrder": [ + "tenant", + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the task to subscribe to. Format: tasks/{task_id}", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "tenant": { + "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+tenant}/a2a/v1/{+name}:subscribe", + "response": { + "$ref": "A2aV1StreamResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + } + }, + "resources": { + "pushNotificationConfigs": { + "methods": { + "create": { + "description": "Set a push notification config for a task.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/a2a/v1/tasks/{tasksId}/pushNotificationConfigs", + "httpMethod": "POST", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.pushNotificationConfigs.create", + "parameterOrder": [ + "tenant", + "parent" + ], + "parameters": { + "configId": { + "description": "Required. The ID for the new config.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent task resource for this config. Format: tasks/{task_id}", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs$", + "required": true, + "type": "string" + }, + "tenant": { + "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+tenant}/a2a/v1/{+parent}", + "request": { + "$ref": "A2aV1TaskPushNotificationConfig" + }, + "response": { + "$ref": "A2aV1TaskPushNotificationConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + }, + "delete": { + "description": "Delete a push notification config for a task.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/a2a/v1/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", + "httpMethod": "DELETE", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.pushNotificationConfigs.delete", + "parameterOrder": [ + "tenant", + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the config to delete. Format: tasks/{task_id}/pushNotificationConfigs/{config_id}", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "tenant": { + "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+tenant}/a2a/v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + }, + "get": { + "description": "Get a push notification config for a task.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/a2a/v1/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.pushNotificationConfigs.get", + "parameterOrder": [ + "tenant", + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the config to retrieve. Format: tasks/{task_id}/pushNotificationConfigs/{config_id}", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs/[^/]+$", + "required": true, + "type": "string" + }, + "tenant": { + "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+tenant}/a2a/v1/{+name}", + "response": { + "$ref": "A2aV1TaskPushNotificationConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + }, + "list": { + "description": "Get a list of push notifications configured for a task.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/a2a/v1/tasks/{tasksId}/pushNotificationConfigs", + "httpMethod": "GET", + "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.pushNotificationConfigs.list", + "parameterOrder": [ + "tenant", + "parent" + ], + "parameters": { + "pageSize": { + "description": "For AIP-158 these fields are present. Usually not used/needed. The maximum number of configurations to return. If unspecified, all configs will be returned.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token received from a previous ListTaskPushNotificationConfigRequest call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTaskPushNotificationConfigRequest` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent task resource. Format: tasks/{task_id}", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + }, + "tenant": { + "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+tenant}/a2a/v1/{+parent}/pushNotificationConfigs", + "response": { + "$ref": "A2aV1ListTaskPushNotificationConfigResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + } + } + } + } } - }, - "path": "{+tenant}/message:stream", - "request": { - "$ref": "A2aV1SendMessageRequest" - }, - "response": { - "$ref": "A2aV1StreamResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + } } } }, @@ -4135,279 +4684,11 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } - }, - "tasks": { - "methods": { - "cancel": { - "description": "Cancel a task from the agent. If supported one should expect no more task updates for the task.", - "flatPath": "projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/tasks/{tasksId}:cancel", - "httpMethod": "POST", - "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.cancel", - "parameterOrder": [ - "tenant", - "name" - ], - "parameters": { - "name": { - "description": "The resource name of the task to cancel. Format: tasks/{task_id}", - "location": "path", - "pattern": "^tasks/[^/]+$", - "required": true, - "type": "string" - }, - "tenant": { - "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "{+tenant}/{+name}:cancel", - "request": { - "$ref": "A2aV1CancelTaskRequest" - }, - "response": { - "$ref": "A2aV1Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Get the current state of a task from the agent.", - "flatPath": "projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/tasks/{tasksId}", - "httpMethod": "GET", - "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.get", - "parameterOrder": [ - "tenant", - "name" - ], - "parameters": { - "historyLength": { - "description": "The number of most recent messages from the task's history to retrieve.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "name": { - "description": "Required. The resource name of the task. Format: tasks/{task_id}", - "location": "path", - "pattern": "^tasks/[^/]+$", - "required": true, - "type": "string" - }, - "tenant": { - "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "{+tenant}/{+name}", - "response": { - "$ref": "A2aV1Task" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "subscribe": { - "description": "TaskSubscription is a streaming call that will return a stream of task update events. This attaches the stream to an existing in process task. If the task is complete the stream will return the completed task (like GetTask) and close the stream.", - "flatPath": "projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/tasks/{tasksId}:subscribe", - "httpMethod": "GET", - "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.subscribe", - "parameterOrder": [ - "tenant", - "name" - ], - "parameters": { - "name": { - "description": "The resource name of the task to subscribe to. Format: tasks/{task_id}", - "location": "path", - "pattern": "^tasks/[^/]+$", - "required": true, - "type": "string" - }, - "tenant": { - "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "{+tenant}/{+name}:subscribe", - "response": { - "$ref": "A2aV1StreamResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "pushNotificationConfigs": { - "methods": { - "create": { - "description": "Set a push notification config for a task.", - "flatPath": "projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/tasks/{tasksId}/pushNotificationConfigs", - "httpMethod": "POST", - "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.pushNotificationConfigs.create", - "parameterOrder": [ - "tenant", - "parent" - ], - "parameters": { - "configId": { - "description": "Required. The ID for the new config.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The parent task resource for this config. Format: tasks/{task_id}", - "location": "path", - "pattern": "^tasks/[^/]+/pushNotificationConfigs$", - "required": true, - "type": "string" - }, - "tenant": { - "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "{+tenant}/{+parent}", - "request": { - "$ref": "A2aV1TaskPushNotificationConfig" - }, - "response": { - "$ref": "A2aV1TaskPushNotificationConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Delete a push notification config for a task.", - "flatPath": "projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", - "httpMethod": "DELETE", - "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.pushNotificationConfigs.delete", - "parameterOrder": [ - "tenant", - "name" - ], - "parameters": { - "name": { - "description": "The resource name of the config to delete. Format: tasks/{task_id}/pushNotificationConfigs/{config_id}", - "location": "path", - "pattern": "^tasks/[^/]+/pushNotificationConfigs/[^/]+$", - "required": true, - "type": "string" - }, - "tenant": { - "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "{+tenant}/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Get a push notification config for a task.", - "flatPath": "projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", - "httpMethod": "GET", - "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.pushNotificationConfigs.get", - "parameterOrder": [ - "tenant", - "name" - ], - "parameters": { - "name": { - "description": "The resource name of the config to retrieve. Format: tasks/{task_id}/pushNotificationConfigs/{config_id}", - "location": "path", - "pattern": "^tasks/[^/]+/pushNotificationConfigs/[^/]+$", - "required": true, - "type": "string" - }, - "tenant": { - "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "{+tenant}/{+name}", - "response": { - "$ref": "A2aV1TaskPushNotificationConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Get a list of push notifications configured for a task.", - "flatPath": "projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/engines/{enginesId}/assistants/{assistantsId}/agents/{agentsId}/tasks/{tasksId}/pushNotificationConfigs", - "httpMethod": "GET", - "id": "discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.pushNotificationConfigs.list", - "parameterOrder": [ - "tenant", - "parent" - ], - "parameters": { - "pageSize": { - "description": "For AIP-158 these fields are present. Usually not used/needed. The maximum number of configurations to return. If unspecified, all configs will be returned.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "A page token received from a previous ListTaskPushNotificationConfigRequest call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTaskPushNotificationConfigRequest` must match the call that provided the page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "The parent task resource. Format: tasks/{task_id}", - "location": "path", - "pattern": "^tasks/[^/]+$", - "required": true, - "type": "string" - }, - "tenant": { - "description": "Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/assistants/[^/]+/agents/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "{+tenant}/{+parent}/pushNotificationConfigs", - "response": { - "$ref": "A2aV1ListTaskPushNotificationConfigResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } } } } @@ -4443,7 +4724,8 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud_search.query", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4481,7 +4763,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -4507,7 +4790,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -4533,7 +4817,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -4575,7 +4860,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -4610,7 +4896,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4643,7 +4930,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -4672,7 +4960,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -4698,7 +4987,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -4724,7 +5014,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -4771,7 +5062,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -4806,7 +5098,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4839,7 +5132,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -4865,7 +5159,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -4912,7 +5207,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4929,7 +5225,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -4945,7 +5241,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -4979,7 +5276,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -5005,7 +5303,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -5031,7 +5330,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5068,7 +5368,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -5103,7 +5404,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recommend": { @@ -5132,7 +5434,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "search": { @@ -5162,7 +5465,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "searchLite": { @@ -5192,7 +5496,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "streamAnswer": { @@ -5205,7 +5510,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -5221,7 +5526,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5243,6 +5549,11 @@ "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+$", "required": true, "type": "string" + }, + "sessionId": { + "description": "Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61}[a-z0-9]/. If not specified, a unique ID will be generated.", + "location": "query", + "type": "string" } }, "path": "v1/{+parent}/sessions", @@ -5255,7 +5566,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -5282,7 +5594,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -5314,7 +5627,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5362,7 +5676,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -5398,7 +5713,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -5428,7 +5744,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5471,7 +5788,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -5507,7 +5825,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5539,7 +5858,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5586,7 +5906,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5639,7 +5960,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -5693,7 +6015,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -5719,7 +6042,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -5745,7 +6069,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getSiteSearchEngine": { @@ -5771,7 +6096,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5813,7 +6139,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -5848,7 +6175,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -5890,7 +6218,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -5928,7 +6257,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -5954,7 +6284,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -5980,7 +6311,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -6009,7 +6341,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6046,7 +6379,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -6086,7 +6420,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -6115,7 +6450,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6148,7 +6484,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -6174,7 +6511,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6221,7 +6559,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6258,7 +6597,8 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud_search.query", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6292,7 +6632,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -6322,7 +6663,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6360,7 +6702,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -6386,7 +6729,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -6412,7 +6756,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6454,7 +6799,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -6489,7 +6835,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6522,7 +6869,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -6551,7 +6899,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -6577,7 +6926,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -6603,7 +6953,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6650,7 +7001,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -6685,7 +7037,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6717,7 +7070,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6764,7 +7118,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6796,7 +7151,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6843,7 +7199,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6881,7 +7238,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -6907,7 +7265,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -6933,7 +7292,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6970,7 +7330,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -7004,7 +7365,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7021,7 +7383,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -7037,7 +7399,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -7071,7 +7434,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -7097,7 +7461,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -7123,7 +7488,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -7160,7 +7526,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -7195,7 +7562,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recommend": { @@ -7224,7 +7592,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "search": { @@ -7254,7 +7623,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "searchLite": { @@ -7284,7 +7654,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "streamAnswer": { @@ -7297,7 +7668,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -7313,7 +7684,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7335,6 +7707,11 @@ "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+$", "required": true, "type": "string" + }, + "sessionId": { + "description": "Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61}[a-z0-9]/. If not specified, a unique ID will be generated.", + "location": "query", + "type": "string" } }, "path": "v1/{+parent}/sessions", @@ -7347,7 +7724,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -7374,7 +7752,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -7406,7 +7785,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -7454,7 +7834,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -7490,7 +7871,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -7520,7 +7902,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7555,7 +7938,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "enableAdvancedSiteSearch": { @@ -7584,7 +7968,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recrawlUris": { @@ -7613,7 +7998,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -7646,7 +8032,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -7672,7 +8059,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "fetch": { @@ -7704,7 +8092,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7737,7 +8126,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -7766,7 +8156,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -7792,7 +8183,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -7818,7 +8210,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -7855,7 +8248,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -7884,7 +8278,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7920,7 +8315,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -7950,7 +8346,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7997,7 +8394,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -8027,7 +8425,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -8057,7 +8456,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "write": { @@ -8092,7 +8492,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8133,7 +8534,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -8169,7 +8571,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8204,7 +8607,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8252,7 +8656,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -8278,7 +8683,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -8304,7 +8710,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "importIdentityMappings": { @@ -8333,7 +8740,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8370,7 +8778,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "listIdentityMappings": { @@ -8407,7 +8816,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purgeIdentityMappings": { @@ -8436,7 +8846,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -8466,7 +8877,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8513,7 +8925,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8553,7 +8966,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -8579,7 +8993,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -8614,7 +9029,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8644,7 +9060,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8691,7 +9108,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8723,7 +9141,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8758,7 +9177,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8805,7 +9225,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -8835,7 +9256,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "write": { @@ -8870,7 +9292,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8903,67 +9326,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" - ] - }, - "create": { - "description": "Creates a new User Store.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/userStores", - "httpMethod": "POST", - "id": "discoveryengine.projects.locations.userStores.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The parent collection resource name, such as `projects/{project}/locations/{location}`.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "userStoreId": { - "description": "Required. The ID of the User Store to create. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 63 characters.", - "location": "query", - "type": "string" - } - }, - "path": "v1/{+parent}/userStores", - "request": { - "$ref": "GoogleCloudDiscoveryengineV1UserStore" - }, - "response": { - "$ref": "GoogleCloudDiscoveryengineV1UserStore" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" - ] - }, - "delete": { - "description": "Deletes the User Store.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/userStores/{userStoresId}", - "httpMethod": "DELETE", - "id": "discoveryengine.projects.locations.userStores.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the User Store to delete. Format: `projects/{project}/locations/{location}/userStores/{user_store_id}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/userStores/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -8989,7 +9353,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -9024,7 +9389,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -9054,7 +9420,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -9070,8 +9437,13 @@ "parent" ], "parameters": { + "filter": { + "description": "Optional. Filter for the list request. Supported fields: * `license_assignment_state` * `user_principal` * Examples: * `license_assignment_state = ASSIGNED` to list assigned user licenses. * `license_assignment_state = NO_LICENSE` to list not licensed users. * `license_assignment_state = NO_LICENSE_ATTEMPTED_LOGIN` to list users who attempted login but no license assigned. * `license_assignment_state != NO_LICENSE_ATTEMPTED_LOGIN` to filter out users who attempted login but no license assigned. * `user_principal = user1@example.com` to list user license for `user1@example.com`.", + "location": "query", + "type": "string" + }, "orderBy": { - "description": "Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a \" desc\" suffix. Redundant space characters in the syntax are insignificant. Supported fields: * `license_assignment_state` * `user_principal` * `user_profile` * `last_login_date` * `update_time` If not set, the default ordering is by `user_principal`. Examples: * `user_principal desc` to order by `user_principal` in descending order. * `license_assignment_state` to order by `license_assignment_state` in ascending order. * `last_login_date desc` to order by `last_login_date` in descending order. * `update_time desc` to order by `update_time` in descending order. * `last_login_date desc, user_principal` to order by `last_login_date` in descending order and then by `user_principal` in ascending order.", + "description": "Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a \" desc\" suffix. Redundant space characters in the syntax are insignificant. Supported fields (only `user_principal` is supported for now): * `user_principal` If not set, the default ordering is by `user_principal`. Examples: * `user_principal` to order by `user_principal` in ascending order. * `user_principal desc` to order by `user_principal` in descending order.", "location": "query", "type": "string" }, @@ -9100,7 +9472,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -9137,7 +9510,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -9163,7 +9537,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -9210,7 +9585,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -9218,7 +9594,7 @@ } } }, - "revision": "20260226", + "revision": "20260503", "rootUrl": "https://discoveryengine.googleapis.com/", "schemas": { "A2aV1APIKeySecurityScheme": { @@ -10613,6 +10989,10 @@ "description": "Optional. Action parameters in structured json format.", "type": "object" }, + "createBapConnection": { + "description": "Optional. Whether to create a BAP connection for the connector.", + "type": "boolean" + }, "isActionConfigured": { "description": "Output only. The connector contains the necessary parameters and is configured to support actions.", "readOnly": true, @@ -10629,6 +11009,27 @@ "useStaticSecrets": { "description": "Optional. Whether to use static secrets for the connector. If true, the secrets provided in the action_params will be ignored.", "type": "boolean" + }, + "userDefinedScopesMapping": { + "additionalProperties": { + "$ref": "GoogleCloudDiscoveryengineV1ActionConfigScopeList" + }, + "description": "Optional. Mapping from operation name to the list of scopes. Only be populated if there are user specified scopes.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1ActionConfigScopeList": { + "description": "Stores a list of scopes.", + "id": "GoogleCloudDiscoveryengineV1ActionConfigScopeList", + "properties": { + "scopes": { + "description": "Optional. The list of scopes.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -10960,6 +11361,28 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1AgentGatewaySetting": { + "description": "Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise.", + "id": "GoogleCloudDiscoveryengineV1AgentGatewaySetting", + "properties": { + "defaultEgressAgentGateway": { + "$ref": "GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference", + "description": "Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference": { + "description": "Reference to an Agent Gateway resource.", + "id": "GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference", + "properties": { + "name": { + "description": "Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number}/locations/{location}/agentGateways/{agent_gateway}`.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1AlertPolicyConfig": { "description": "The connector level alert config.", "id": "GoogleCloudDiscoveryengineV1AlertPolicyConfig", @@ -12365,6 +12788,11 @@ "description": "One part of the multi-part response of the assist call.", "id": "GoogleCloudDiscoveryengineV1AssistAnswerReply", "properties": { + "createTime": { + "description": "The time when the reply was created.", + "format": "google-datetime", + "type": "string" + }, "groundedContent": { "$ref": "GoogleCloudDiscoveryengineV1AssistantGroundedContent", "description": "Possibly grounded response text or media from the assistant." @@ -12391,6 +12819,12 @@ "description": "Discovery Engine Assistant resource.", "id": "GoogleCloudDiscoveryengineV1Assistant", "properties": { + "createTime": { + "description": "Output only. Represents the time when this Assistant was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "customerPolicy": { "$ref": "GoogleCloudDiscoveryengineV1AssistantCustomerPolicy", "description": "Optional. Customer policy for the assistant." @@ -12422,6 +12856,12 @@ "description": "Immutable. Resource name of the assistant. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}` It must be a UTF-8 encoded string with a length limit of 1024 characters.", "type": "string" }, + "updateTime": { + "description": "Output only. Represents the time when this Assistant was most recently updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "webGroundingType": { "description": "Optional. The type of web grounding to use.", "enum": [ @@ -12694,6 +13134,13 @@ "$ref": "GoogleCloudDiscoveryengineV1AssistantGroundedContentTextGroundingMetadataSegment" }, "type": "array" + }, + "visualSegments": { + "description": "Grounding information for parts of the visual content.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1AssistantGroundedContentTextGroundingMetadataVisualSegment" + }, + "type": "array" } }, "type": "object" @@ -12702,6 +13149,10 @@ "description": "Referenced content and related document metadata.", "id": "GoogleCloudDiscoveryengineV1AssistantGroundedContentTextGroundingMetadataReference", "properties": { + "codeSnippet": { + "description": "Chunk of code snippet from the referenced document.", + "type": "string" + }, "content": { "description": "Referenced text content.", "type": "string" @@ -12725,6 +13176,19 @@ "description": "Domain name from the document URI. Note that the `uri` field may contain a URL that redirects to the actual website, in which case this will contain the domain name of the target site.", "type": "string" }, + "language": { + "enum": [ + "LANGUAGE_UNSPECIFIED", + "PYTHON", + "SQL" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, "mimeType": { "description": "The mime type of the document. https://www.iana.org/assignments/media-types/media-types.xhtml.", "type": "string" @@ -12778,6 +13242,25 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1AssistantGroundedContentTextGroundingMetadataVisualSegment": { + "description": "Grounding information for a visual segment.", + "id": "GoogleCloudDiscoveryengineV1AssistantGroundedContentTextGroundingMetadataVisualSegment", + "properties": { + "contentId": { + "description": "The content id of the visual segment. In order to display the citation of the visual element, this content_id needs to match with the `grounded_content.content_metadata.content_id` field.", + "type": "string" + }, + "referenceIndices": { + "description": "References for the visual segment.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1AssistantToolInfo": { "description": "Information to identify a tool.", "id": "GoogleCloudDiscoveryengineV1AssistantToolInfo", @@ -13583,6 +14066,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1CliConfig": { + "description": "The configuration for the CLI execution based connectors.", + "id": "GoogleCloudDiscoveryengineV1CliConfig", + "properties": { + "enabledActions": { + "description": "Optional. The actions enabled on the associated CLI connection.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1CloudSqlSource": { "description": "Cloud SQL source import data from.", "id": "GoogleCloudDiscoveryengineV1CloudSqlSource", @@ -14513,6 +15010,10 @@ "readOnly": true, "type": "array" }, + "cliConfig": { + "$ref": "GoogleCloudDiscoveryengineV1CliConfig", + "description": "Optional. The configuration for establishing a CLI connection." + }, "connectorModes": { "description": "Optional. The modes enabled for this connector. Default state is CONNECTOR_MODE_UNSPECIFIED.", "items": { @@ -14586,7 +15087,7 @@ "type": "string" }, "dataSource": { - "description": "Required. The name of the data source. Supported values: `salesforce`, `jira`, `confluence`, `bigquery`.", + "description": "Required. The identifier for the data source. This is a partial list of supported connectors. Please refer to the [documentation](https://docs.cloud.google.com/gemini/enterprise/docs/connectors/introduction-to-connectors-and-data-stores) for the full list of connectors. Supported first-party connectors include: * `gcs` * `bigquery` * `gcp_fhir` * `google_mail` * `google_drive` * `google_calendar` * `google_chat` Supported third-party connectors include: Generally available (GA) connectors: * `onedrive` * `outlook` * `confluence` * `jira` * `servicenow` * `sharepoint` Preview connectors: * `asana` * `azure_active_directory` * `box` * `canva` * `confluence_server` * `custom_connector` * `docusign` * `dropbox` * `dynamics365` * `github` * `gitlab` * `hubspot` * `jira_server` * `linear` * `native_cloud_identity` * `notion` * `okta` * `pagerduty` * `peoplesoft` * `salesforce` * `shopify` * `slack` * `snowflake` * `teams` * `trello` * `workday` * `zendesk`", "type": "string" }, "destinationConfigs": { @@ -14596,8 +15097,16 @@ }, "type": "array" }, + "dynamicTools": { + "description": "Output only. The dynamic tools fetched for this connector.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1DynamicTool" + }, + "readOnly": true, + "type": "array" + }, "egressFqdns": { - "description": "Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. Note: This field is derived from both the DataConnector.params, and connector source spec. It should only be used for CAIS and Org Policy evaluation purposes.", + "description": "Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs.", "items": { "type": "string" }, @@ -14671,8 +15180,7 @@ "type": "string" }, "name": { - "description": "Output only. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", - "readOnly": true, + "description": "Identifier. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", "type": "string" }, "nextSyncTime": { @@ -14791,7 +15299,7 @@ "type": "string" }, "vpcscEnabled": { - "description": "Output only. Whether the connector is created with VPC-SC enabled. This is only used for CuOP evaluation purpose.", + "description": "Output only. Whether the connector is created with VPC-SC enabled.", "readOnly": true, "type": "boolean" } @@ -15024,6 +15532,10 @@ "$ref": "GoogleCloudDiscoveryengineV1DocumentProcessingConfig", "description": "Configuration for Document understanding and enrichment." }, + "federatedSearchConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig", + "description": "Optional. If set, this DataStore is a federated search DataStore." + }, "healthcareFhirConfig": { "$ref": "GoogleCloudDiscoveryengineV1HealthcareFhirConfig", "description": "Optional. Configuration for `HEALTHCARE_FHIR` vertical." @@ -15139,6 +15651,125 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig": { + "description": "Stores information for federated search.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig", + "properties": { + "alloyDbConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig", + "description": "AlloyDB config. If set, this DataStore is connected to AlloyDB." + }, + "notebooklmConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig", + "description": "NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise." + }, + "thirdPartyOauthConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig", + "description": "Third Party OAuth config. If set, this DataStore is connected to a third party application." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig": { + "description": "Stores information for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig", + "properties": { + "alloydbAiNlConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "description": "Optional. Configuration for Magic." + }, + "alloydbConnectionConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "description": "Required. Configuration for connecting to AlloyDB." + }, + "returnedFields": { + "description": "Optional. Fields to be returned in the search results. If empty, all fields will be returned.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig": { + "description": "Configuration for AlloyDB AI Natural Language.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "properties": { + "nlConfigId": { + "description": "Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig": { + "description": "Configuration for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "properties": { + "authMode": { + "description": "Optional. Auth mode.", + "enum": [ + "AUTH_MODE_UNSPECIFIED", + "AUTH_MODE_SERVICE_ACCOUNT", + "AUTH_MODE_END_USER_ACCOUNT" + ], + "enumDescriptions": [ + "", + "Uses P4SA when VAIS talks to AlloyDB.", + "Uses EUC when VAIS talks to AlloyDB." + ], + "type": "string" + }, + "database": { + "description": "Required. The AlloyDB database to connect to.", + "type": "string" + }, + "enablePsvs": { + "description": "Optional. If true, enable PSVS for AlloyDB.", + "type": "boolean" + }, + "instance": { + "description": "Required. The AlloyDB instance to connect to.", + "type": "string" + }, + "password": { + "description": "Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + }, + "user": { + "description": "Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig": { + "description": "Config for connecting to NotebookLM Enterprise.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig", + "properties": { + "searchConfig": { + "description": "Required. Search config name. Format: projects/*/locations/global/notebookLmSearchConfigs/*", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig": { + "description": "Stores information for third party applicationOAuth.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig", + "properties": { + "appName": { + "description": "Optional. The type of the application. E.g., \"jira\", \"box\", etc.", + "type": "string" + }, + "instanceName": { + "description": "Optional. The instance name identifying the 3P app, e.g., \"vaissptbots-my\". This is different from the instance_uri which is the full URL of the 3P app e.g., \"https://vaissptbots-my.sharepoint.com\".", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1DataStoreServingConfigDataStore": { "description": "Stores information regarding the serving configurations at DataStore level.", "id": "GoogleCloudDiscoveryengineV1DataStoreServingConfigDataStore", @@ -15361,6 +15992,42 @@ "properties": {}, "type": "object" }, + "GoogleCloudDiscoveryengineV1DistributeLicenseConfigRequest": { + "description": "Request message for LicenseConfigService.DistributeLicenseConfig method.", + "id": "GoogleCloudDiscoveryengineV1DistributeLicenseConfigRequest", + "properties": { + "licenseConfigId": { + "description": "Optional. Distribute seats to this license config instead of creating a new one. If not specified, a new license config will be created from the billing account license config.", + "type": "string" + }, + "licenseCount": { + "description": "Required. The number of licenses to distribute.", + "format": "int64", + "type": "string" + }, + "location": { + "description": "Required. The target GCP project region to distribute the license config to.", + "type": "string" + }, + "projectNumber": { + "description": "Required. The target GCP project number to distribute the license config to.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DistributeLicenseConfigResponse": { + "description": "Response message for LicenseConfigService.DistributeLicenseConfig method.", + "id": "GoogleCloudDiscoveryengineV1DistributeLicenseConfigResponse", + "properties": { + "licenseConfig": { + "$ref": "GoogleCloudDiscoveryengineV1LicenseConfig", + "description": "The updated or created LicenseConfig." + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1Document": { "description": "Document captures all raw metadata information of items to be recommended or searched.", "id": "GoogleCloudDiscoveryengineV1Document", @@ -15392,7 +16059,7 @@ "readOnly": true }, "indexTime": { - "description": "Output only. The last time the document was indexed. If this field is set, the document could be returned in search results. This field is OUTPUT_ONLY. If this field is not populated, it means the document has never been indexed.", + "description": "Output only. The time when the document was last indexed. If this field is populated, it means the document has been indexed. While documents typically become searchable within seconds of indexing, it can sometimes take up to a few hours. If this field is not populated, it means the document has never been indexed.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -15488,7 +16155,7 @@ "type": "array" }, "indexTime": { - "description": "The time when the document was indexed. If this field is populated, it means the document has been indexed.", + "description": "The time when the document was indexed. If this field is populated, it means the document has been indexed. While documents typically become searchable within seconds of indexing, it can sometimes take up to a few hours.", "format": "google-datetime", "type": "string" }, @@ -15703,6 +16370,29 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1DynamicTool": { + "description": "Configuration for dynamic tools.", + "id": "GoogleCloudDiscoveryengineV1DynamicTool", + "properties": { + "description": { + "description": "Optional. The description of the tool.", + "type": "string" + }, + "displayName": { + "description": "Optional. The display name of the tool.", + "type": "string" + }, + "enabled": { + "description": "Optional. Whether the tool is enabled.", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the tool.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1EnableAdvancedSiteSearchMetadata": { "description": "Metadata related to the progress of the SiteSearchEngineService.EnableAdvancedSiteSearch operation. This will be returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1EnableAdvancedSiteSearchMetadata", @@ -15736,6 +16426,10 @@ "description": "Metadata that describes the training and serving parameters of an Engine.", "id": "GoogleCloudDiscoveryengineV1Engine", "properties": { + "agentGatewaySetting": { + "$ref": "GoogleCloudDiscoveryengineV1AgentGatewaySetting", + "description": "Optional. The agent gateway setting for the engine." + }, "appType": { "description": "Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type.", "enum": [ @@ -15820,7 +16514,7 @@ ], "type": "string" }, - "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails`", + "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills`", "type": "object" }, "industryVertical": { @@ -15890,9 +16584,12 @@ "$ref": "GoogleCloudDiscoveryengineV1ObservabilityConfig", "description": "Optional. Observability config for the engine." }, - "procurementContactEmail": { - "description": "Optional. The email of the procurement contact.", - "type": "string" + "procurementContactEmails": { + "description": "Optional. The emails of the procurement contacts.", + "items": { + "type": "string" + }, + "type": "array" }, "searchEngineConfig": { "$ref": "GoogleCloudDiscoveryengineV1EngineSearchEngineConfig", @@ -16885,8 +17582,9 @@ "type": "string" }, "updateTime": { - "description": "Operation last update time. If the operation is done, this is also the finish time.", + "description": "Output only. Operation last update time. If the operation is done, this is also the finish time.", "format": "google-datetime", + "readOnly": true, "type": "string" } }, @@ -17446,11 +18144,11 @@ "id": "GoogleCloudDiscoveryengineV1ObservabilityConfig", "properties": { "observabilityEnabled": { - "description": "Optional. Enables observability. If false, all other flags are ignored.", + "description": "Optional. Enables observability. If `false`, all other flags are ignored.", "type": "boolean" }, "sensitiveLoggingEnabled": { - "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields.", + "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields.", "type": "boolean" } }, @@ -17572,7 +18270,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus": { - "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month).", + "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation.", "id": "GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus", "properties": { "effectiveIndexingCoreThreshold": { @@ -17607,6 +18305,25 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "updateType": { + "description": "Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject.", + "enum": [ + "UPDATE_TYPE_UNSPECIFIED", + "CREATE", + "DELETE", + "SCALE_UP", + "SCALE_DOWN" + ], + "enumDescriptions": [ + "Unspecified update type.", + "Configurable billing was created/enabled.", + "Configurable billing was deleted/disabled.", + "Subscription was scaled up (thresholds increased).", + "Subscription was scaled down (thresholds decreased)." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -18078,7 +18795,7 @@ "type": "string" }, "score": { - "description": "The score of this record based on the given query and selected model. The score will be rounded to 2 decimal places. If the score is close to 0, it will be rounded to 0.0001 to avoid returning unset.", + "description": "The score of this record based on the given query and selected model. The score will be rounded to 4 decimal places. If the score is close to 0, it will be rounded to 0.00001 to avoid returning unset.", "format": "float", "type": "number" }, @@ -18207,6 +18924,37 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1RetractLicenseConfigRequest": { + "description": "Request message for LicenseConfigService.RetractLicenseConfig method.", + "id": "GoogleCloudDiscoveryengineV1RetractLicenseConfigRequest", + "properties": { + "fullRetract": { + "description": "Optional. If set to true, retract the entire license config. Otherwise, retract the specified license count.", + "type": "boolean" + }, + "licenseConfig": { + "description": "Required. Full resource name of LicenseConfig. Format: `projects/{project}/locations/{location}/licenseConfigs/{license_config_id}`.", + "type": "string" + }, + "licenseCount": { + "description": "Optional. The number of licenses to retract. Only used when full_retract is false.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1RetractLicenseConfigResponse": { + "description": "Response message for LicenseConfigService.RetractLicenseConfig method.", + "id": "GoogleCloudDiscoveryengineV1RetractLicenseConfigResponse", + "properties": { + "licenseConfig": { + "$ref": "GoogleCloudDiscoveryengineV1LicenseConfig", + "description": "The updated LicenseConfig." + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1SafetyRating": { "description": "Safety rating corresponding to the generated content.", "id": "GoogleCloudDiscoveryengineV1SafetyRating", @@ -18391,6 +19139,10 @@ }, "type": "array" }, + "customRankingParams": { + "$ref": "GoogleCloudDiscoveryengineV1SearchRequestCustomRankingParams", + "description": "Optional. Optional configuration for the Custom Ranking feature." + }, "dataStoreSpecs": { "description": "Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used.", "items": { @@ -18402,6 +19154,10 @@ "$ref": "GoogleCloudDiscoveryengineV1SearchRequestDisplaySpec", "description": "Optional. Config for display feature, like match highlighting on search results." }, + "entity": { + "description": "Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, \"Google US\", \"Google Ads\", \"Waymo\", \"google.com\", \"youtube.com\", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity.", + "type": "string" + }, "facetSpecs": { "description": "Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned.", "items": { @@ -18425,6 +19181,11 @@ "$ref": "GoogleCloudDiscoveryengineV1SearchRequestNaturalLanguageQueryUnderstandingSpec", "description": "Optional. Config for natural language query understanding capabilities, such as extracting structured field filters from the query. Refer to [this documentation](https://cloud.google.com/generative-ai-app-builder/docs/natural-language-queries) for more information. If `naturalLanguageQueryUnderstandingSpec` is not specified, no additional natural language query understanding will be done." }, + "numResultsPerDataStore": { + "description": "Optional. The maximum number of results to retrieve from each data store. If not specified, it will use the SearchRequest.DataStoreSpec.num_results if provided, otherwise there is no limit.", + "format": "int32", + "type": "integer" + }, "offset": { "description": "A 0-indexed integer that specifies the current offset (that is, starting result location, amongst the Documents deemed by the API as relevant) in search results. This field is only considered if page_token is unset. If this field is negative, an `INVALID_ARGUMENT` is returned. A large offset may be capped to a reasonable threshold.", "format": "int32", @@ -18530,7 +19291,7 @@ "description": "Search as you type configuration. Only supported for the IndustryVertical.MEDIA vertical." }, "session": { - "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call.", "type": "string" }, "sessionSpec": { @@ -18860,6 +19621,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1SearchRequestCustomRankingParams": { + "description": "Configuration parameters for the Custom Ranking feature.", + "id": "GoogleCloudDiscoveryengineV1SearchRequestCustomRankingParams", + "properties": { + "expressionsToPrecompute": { + "description": "Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1SearchRequestDataStoreSpec": { "description": "A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned.", "id": "GoogleCloudDiscoveryengineV1SearchRequestDataStoreSpec", @@ -18879,6 +19654,11 @@ "filter": { "description": "Optional. Filter specification to filter documents in the data store specified by data_store field. For more information on filtering, see [Filtering](https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata)", "type": "string" + }, + "numResults": { + "description": "Optional. The maximum number of results to retrieve from this data store. If not specified, it will use the SearchRequest.num_results_per_data_store if provided, otherwise there is no limit. If both this field and SearchRequest.num_results_per_data_store are specified, this field will be used.", + "format": "int32", + "type": "integer" } }, "type": "object" @@ -19029,7 +19809,7 @@ "type": "string" }, "geoSearchQueryDetectionFieldNames": { - "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names.", + "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`.", "items": { "type": "string" }, @@ -19098,7 +19878,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1SearchRequestSessionSpec": { - "description": "Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "Session specification.", "id": "GoogleCloudDiscoveryengineV1SearchRequestSessionSpec", "properties": { "queryId": { @@ -19524,6 +20304,14 @@ "format": "float", "type": "number" }, + "precomputedExpressionValues": { + "description": "Optional. A list of precomputed expression results for a given document, in the same order as requested in `SearchRequest.custom_ranking_params.expressions_to_precompute`.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, "relevanceScore": { "description": "Optional. Semantic relevance adjustment.", "format": "float", @@ -20015,6 +20803,10 @@ "description": "Output only. In ConversationalSearchService.GetSession API, if GetSessionRequest.include_answer_details is set to true, this field will be populated when getting assistant session.", "readOnly": true }, + "live": { + "description": "Optional. Indicates whether this turn is a live turn.", + "type": "boolean" + }, "query": { "$ref": "GoogleCloudDiscoveryengineV1Query", "description": "Optional. The user query. May not be set if this turn is merely regenerating an answer to a different turn" @@ -20044,7 +20836,7 @@ "type": "string" }, "collectionId": { - "description": "Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. Should conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", "type": "string" }, "dataConnector": { @@ -20677,6 +21469,10 @@ "description": "The Engine resource name, in the form of `projects/{project}/locations/{location}/collections/{collection_id}/engines/{engine_id}`. Optional. Only required for Engine produced user events. For example, user events from blended search.", "type": "string" }, + "entity": { + "description": "Optional. Represents the entity for customers that may run multiple different entities, domains, sites or regions, for example, `Google US`, `Google Ads`, `Waymo`, `google.com`, `youtube.com`, etc. We recommend that you set `entity` to get better per-entity search, completion, and prediction results.", + "type": "string" + }, "eventTime": { "description": "Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.", "format": "google-datetime", @@ -20750,6 +21546,10 @@ "description": "Information of an end user.", "id": "GoogleCloudDiscoveryengineV1UserInfo", "properties": { + "preciseLocation": { + "$ref": "GoogleCloudDiscoveryengineV1UserInfoPreciseLocation", + "description": "Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents." + }, "timeZone": { "description": "Optional. IANA time zone, e.g. Europe/Budapest.", "type": "string" @@ -20759,8 +21559,23 @@ "type": "string" }, "userId": { - "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", + "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1UserInfoPreciseLocation": { + "description": "Precise location info with multiple representation options. Currently only latitude and longitude point is supported.", + "id": "GoogleCloudDiscoveryengineV1UserInfoPreciseLocation", + "properties": { + "address": { + "description": "Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon.", "type": "string" + }, + "point": { + "$ref": "GoogleTypeLatLng", + "description": "Optional. Location represented by a latitude/longitude point." } }, "type": "object" @@ -21525,7 +22340,7 @@ ], "type": "string" }, - "description": "Output only. Feature config for the engine to opt in or opt out of features. Supported keys: * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails`", + "description": "Output only. Feature config for the engine to opt in or opt out of features. Supported keys: * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills`", "readOnly": true, "type": "object" }, @@ -21717,6 +22532,10 @@ "description": "Optional. Action parameters in structured json format.", "type": "object" }, + "createBapConnection": { + "description": "Optional. Whether to create a BAP connection for the connector.", + "type": "boolean" + }, "isActionConfigured": { "description": "Output only. The connector contains the necessary parameters and is configured to support actions.", "readOnly": true, @@ -21733,6 +22552,27 @@ "useStaticSecrets": { "description": "Optional. Whether to use static secrets for the connector. If true, the secrets provided in the action_params will be ignored.", "type": "boolean" + }, + "userDefinedScopesMapping": { + "additionalProperties": { + "$ref": "GoogleCloudDiscoveryengineV1alphaActionConfigScopeList" + }, + "description": "Optional. Mapping from operation name to the list of scopes. Only be populated if there are user specified scopes.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaActionConfigScopeList": { + "description": "Stores a list of scopes.", + "id": "GoogleCloudDiscoveryengineV1alphaActionConfigScopeList", + "properties": { + "scopes": { + "description": "Optional. The list of scopes.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -21770,6 +22610,28 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting": { + "description": "Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise.", + "id": "GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting", + "properties": { + "defaultEgressAgentGateway": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference", + "description": "Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference": { + "description": "Reference to an Agent Gateway resource.", + "id": "GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference", + "properties": { + "name": { + "description": "Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number}/locations/{location}/agentGateways/{agent_gateway}`.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaAlertPolicyConfig": { "description": "The connector level alert config.", "id": "GoogleCloudDiscoveryengineV1alphaAlertPolicyConfig", @@ -21922,10 +22784,11 @@ "type": "string" }, "blobAttachments": { - "description": "List of blob attachments in the answer.", + "description": "Output only. List of blob attachments in the answer.", "items": { "$ref": "GoogleCloudDiscoveryengineV1alphaAnswerBlobAttachment" }, + "readOnly": true, "type": "array" }, "citations": { @@ -22635,6 +23498,11 @@ "description": "One part of the multi-part response of the assist call.", "id": "GoogleCloudDiscoveryengineV1alphaAssistAnswerReply", "properties": { + "createTime": { + "description": "The time when the reply was created.", + "format": "google-datetime", + "type": "string" + }, "groundedContent": { "$ref": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContent", "description": "Possibly grounded response text or media from the assistant." @@ -22787,6 +23655,13 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataSegment" }, "type": "array" + }, + "visualSegments": { + "description": "Grounding information for parts of the visual content.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment" + }, + "type": "array" } }, "type": "object" @@ -22795,6 +23670,10 @@ "description": "Referenced content and related document metadata.", "id": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataReference", "properties": { + "codeSnippet": { + "description": "Chunk of code snippet from the referenced document.", + "type": "string" + }, "content": { "description": "Referenced text content.", "type": "string" @@ -22818,6 +23697,19 @@ "description": "Domain name from the document URI. Note that the `uri` field may contain a URL that redirects to the actual website, in which case this will contain the domain name of the target site.", "type": "string" }, + "language": { + "enum": [ + "LANGUAGE_UNSPECIFIED", + "PYTHON", + "SQL" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, "mimeType": { "description": "The mime type of the document. https://www.iana.org/assignments/media-types/media-types.xhtml.", "type": "string" @@ -22871,6 +23763,25 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment": { + "description": "Grounding information for a visual segment.", + "id": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment", + "properties": { + "contentId": { + "description": "The content id of the visual segment. In order to display the citation of the visual element, this content_id needs to match with the `grounded_content.content_metadata.content_id` field.", + "type": "string" + }, + "referenceIndices": { + "description": "References for the visual segment.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaBAPConfig": { "description": "The configuration for the BAP connector.", "id": "GoogleCloudDiscoveryengineV1alphaBAPConfig", @@ -23037,6 +23948,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaCliConfig": { + "description": "The configuration for the CLI execution based connectors.", + "id": "GoogleCloudDiscoveryengineV1alphaCliConfig", + "properties": { + "enabledActions": { + "description": "Optional. The actions enabled on the associated CLI connection.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaCmekConfig": { "description": "Configurations used to enable CMEK data encryption with Cloud KMS keys.", "id": "GoogleCloudDiscoveryengineV1alphaCmekConfig", @@ -23856,6 +24781,10 @@ "readOnly": true, "type": "array" }, + "cliConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaCliConfig", + "description": "Optional. The configuration for establishing a CLI connection." + }, "connectorModes": { "description": "Optional. The modes enabled for this connector. Default state is CONNECTOR_MODE_UNSPECIFIED.", "items": { @@ -23933,7 +24862,7 @@ "description": "Optional. Specifies the data protection policy for the connector." }, "dataSource": { - "description": "Required. The name of the data source. Supported values: `salesforce`, `jira`, `confluence`, `bigquery`.", + "description": "Required. The identifier for the data source. This is a partial list of supported connectors. Please refer to the [documentation](https://docs.cloud.google.com/gemini/enterprise/docs/connectors/introduction-to-connectors-and-data-stores) for the full list of connectors. Supported first-party connectors include: * `gcs` * `bigquery` * `gcp_fhir` * `google_mail` * `google_drive` * `google_calendar` * `google_chat` Supported third-party connectors include: Generally available (GA) connectors: * `onedrive` * `outlook` * `confluence` * `jira` * `servicenow` * `sharepoint` Preview connectors: * `asana` * `azure_active_directory` * `box` * `canva` * `confluence_server` * `custom_connector` * `docusign` * `dropbox` * `dynamics365` * `github` * `gitlab` * `hubspot` * `jira_server` * `linear` * `native_cloud_identity` * `notion` * `okta` * `pagerduty` * `peoplesoft` * `salesforce` * `shopify` * `slack` * `snowflake` * `teams` * `trello` * `workday` * `zendesk`", "type": "string" }, "destinationConfigs": { @@ -23943,8 +24872,16 @@ }, "type": "array" }, + "dynamicTools": { + "description": "Output only. The dynamic tools fetched for this connector.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDynamicTool" + }, + "readOnly": true, + "type": "array" + }, "egressFqdns": { - "description": "Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. Note: This field is derived from both the DataConnector.params, and connector source spec. It should only be used for CAIS and Org Policy evaluation purposes.", + "description": "Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs.", "items": { "type": "string" }, @@ -24018,8 +24955,7 @@ "type": "string" }, "name": { - "description": "Output only. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", - "readOnly": true, + "description": "Identifier. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", "type": "string" }, "nextSyncTime": { @@ -24138,7 +25074,7 @@ "type": "string" }, "vpcscEnabled": { - "description": "Output only. Whether the connector is created with VPC-SC enabled. This is only used for CuOP evaluation purpose.", + "description": "Output only. Whether the connector is created with VPC-SC enabled.", "readOnly": true, "type": "boolean" } @@ -24293,12 +25229,12 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy": { - "description": "Data protection policy config for a connector.", + "description": "Contains the data protection policy config for a DataStore or a connector.", "id": "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy", "properties": { "sensitiveDataProtectionPolicy": { "$ref": "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicySensitiveDataProtectionPolicy", - "description": "Optional. The sensitive data protection policy for the connector source." + "description": "Optional. Specifies the sensitive data protection policy for the connector source." } }, "type": "object" @@ -24308,7 +25244,7 @@ "id": "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicySensitiveDataProtectionPolicy", "properties": { "policy": { - "description": "Optional. The Sensitive Data Protection content policy resource name.", + "description": "Optional. Specifies the resource name of the Sensitive Data Protection content policy.", "type": "string" } }, @@ -24380,6 +25316,10 @@ "readOnly": true, "type": "string" }, + "dataProtectionPolicy": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy", + "description": "Optional. Specifies the data protection policy for the data store." + }, "defaultSchemaId": { "description": "Output only. The id of the default Schema associated to this data store.", "readOnly": true, @@ -24393,6 +25333,10 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaDocumentProcessingConfig", "description": "Configuration for Document understanding and enrichment." }, + "federatedSearchConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig", + "description": "Optional. If set, this DataStore is a federated search DataStore." + }, "healthcareFhirConfig": { "$ref": "GoogleCloudDiscoveryengineV1alphaHealthcareFhirConfig", "description": "Optional. Configuration for `HEALTHCARE_FHIR` vertical." @@ -24517,6 +25461,125 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig": { + "description": "Stores information for federated search.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig", + "properties": { + "alloyDbConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig", + "description": "AlloyDB config. If set, this DataStore is connected to AlloyDB." + }, + "notebooklmConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig", + "description": "NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise." + }, + "thirdPartyOauthConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig", + "description": "Third Party OAuth config. If set, this DataStore is connected to a third party application." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig": { + "description": "Stores information for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig", + "properties": { + "alloydbAiNlConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "description": "Optional. Configuration for Magic." + }, + "alloydbConnectionConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "description": "Required. Configuration for connecting to AlloyDB." + }, + "returnedFields": { + "description": "Optional. Fields to be returned in the search results. If empty, all fields will be returned.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig": { + "description": "Configuration for AlloyDB AI Natural Language.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "properties": { + "nlConfigId": { + "description": "Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig": { + "description": "Configuration for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "properties": { + "authMode": { + "description": "Optional. Auth mode.", + "enum": [ + "AUTH_MODE_UNSPECIFIED", + "AUTH_MODE_SERVICE_ACCOUNT", + "AUTH_MODE_END_USER_ACCOUNT" + ], + "enumDescriptions": [ + "", + "Uses P4SA when VAIS talks to AlloyDB.", + "Uses EUC when VAIS talks to AlloyDB." + ], + "type": "string" + }, + "database": { + "description": "Required. The AlloyDB database to connect to.", + "type": "string" + }, + "enablePsvs": { + "description": "Optional. If true, enable PSVS for AlloyDB.", + "type": "boolean" + }, + "instance": { + "description": "Required. The AlloyDB instance to connect to.", + "type": "string" + }, + "password": { + "description": "Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + }, + "user": { + "description": "Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig": { + "description": "Config for connecting to NotebookLM Enterprise.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig", + "properties": { + "searchConfig": { + "description": "Required. Search config name. Format: projects/*/locations/global/notebookLmSearchConfigs/*", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig": { + "description": "Stores information for third party applicationOAuth.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig", + "properties": { + "appName": { + "description": "Optional. The type of the application. E.g., \"jira\", \"box\", etc.", + "type": "string" + }, + "instanceName": { + "description": "Optional. The instance name identifying the 3P app, e.g., \"vaissptbots-my\". This is different from the instance_uri which is the full URL of the 3P app e.g., \"https://vaissptbots-my.sharepoint.com\".", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaDataStoreServingConfigDataStore": { "description": "Stores information regarding the serving configurations at DataStore level.", "id": "GoogleCloudDiscoveryengineV1alphaDataStoreServingConfigDataStore", @@ -24960,6 +26023,29 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaDynamicTool": { + "description": "Configuration for dynamic tools.", + "id": "GoogleCloudDiscoveryengineV1alphaDynamicTool", + "properties": { + "description": { + "description": "Optional. The description of the tool.", + "type": "string" + }, + "displayName": { + "description": "Optional. The display name of the tool.", + "type": "string" + }, + "enabled": { + "description": "Optional. Whether the tool is enabled.", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the tool.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaEnableAdvancedSiteSearchMetadata": { "description": "Metadata related to the progress of the SiteSearchEngineService.EnableAdvancedSiteSearch operation. This will be returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1alphaEnableAdvancedSiteSearchMetadata", @@ -24987,6 +26073,10 @@ "description": "Metadata that describes the training and serving parameters of an Engine.", "id": "GoogleCloudDiscoveryengineV1alphaEngine", "properties": { + "agentGatewaySetting": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting", + "description": "Optional. The agent gateway setting for the engine." + }, "appType": { "description": "Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type.", "enum": [ @@ -25071,7 +26161,7 @@ ], "type": "string" }, - "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails`", + "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills`", "type": "object" }, "industryVertical": { @@ -25141,9 +26231,12 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaObservabilityConfig", "description": "Optional. Observability config for the engine." }, - "procurementContactEmail": { - "description": "Optional. The email of the procurement contact.", - "type": "string" + "procurementContactEmails": { + "description": "Optional. The emails of the procurement contacts.", + "items": { + "type": "string" + }, + "type": "array" }, "recommendationMetadata": { "$ref": "GoogleCloudDiscoveryengineV1alphaEngineRecommendationMetadata", @@ -25814,6 +26907,26 @@ }, "type": "array" }, + "searchableFieldImportance": { + "description": "Optional. Specifies the importance of the field when `searchable_option` is `SEARCHABLE_ENABLED`. If `searchable_option` is `SEARCHABLE_DISABLED`, this field is ignored. If `searchable_option` is `SEARCHABLE_ENABLED` and this is `SEARCHABLE_FIELD_IMPORTANCE_UNSPECIFIED`, it behaves as `DEFAULT_IMPORTANCE`.", + "enum": [ + "SEARCHABLE_FIELD_IMPORTANCE_UNSPECIFIED", + "VERY_LOW_IMPORTANCE", + "LOW_IMPORTANCE", + "DEFAULT_IMPORTANCE", + "HIGH_IMPORTANCE", + "VERY_HIGH_IMPORTANCE" + ], + "enumDescriptions": [ + "Value used when unset. Behaves as `DEFAULT_IMPORTANCE` if the field is searchable.", + "Provides a tiny signal for search.", + "Indicates the field is used for search, but is less important than the default.", + "Default importance. Equivalent to previous behavior.", + "More important than default fields.", + "Most important field for search." + ], + "type": "string" + }, "searchableOption": { "description": "If searchable_option is SEARCHABLE_ENABLED, field values are searchable by text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is numerical, field values will not be searchable by text queries in SearchService.Search, as there are no text values associated to numerical fields. If searchable_option is unset, the server behavior defaults to SEARCHABLE_DISABLED for fields that support setting searchable options. Only `string` fields that have no key property mapping support setting searchable_option. For those fields that do not support setting searchable options, the server will skip searchable option setting, and setting searchable_option for those fields will throw `INVALID_ARGUMENT` error.", "enum": [ @@ -26191,8 +27304,9 @@ "type": "string" }, "updateTime": { - "description": "Operation last update time. If the operation is done, this is also the finish time.", + "description": "Output only. Operation last update time. If the operation is done, this is also the finish time.", "format": "google-datetime", + "readOnly": true, "type": "string" } }, @@ -26477,11 +27591,11 @@ "id": "GoogleCloudDiscoveryengineV1alphaObservabilityConfig", "properties": { "observabilityEnabled": { - "description": "Optional. Enables observability. If false, all other flags are ignored.", + "description": "Optional. Enables observability. If `false`, all other flags are ignored.", "type": "boolean" }, "sensitiveLoggingEnabled": { - "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields.", + "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields.", "type": "boolean" } }, @@ -26605,7 +27719,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus": { - "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month).", + "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation.", "id": "GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus", "properties": { "effectiveIndexingCoreThreshold": { @@ -26640,6 +27754,25 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "updateType": { + "description": "Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject.", + "enum": [ + "UPDATE_TYPE_UNSPECIFIED", + "CREATE", + "DELETE", + "SCALE_UP", + "SCALE_DOWN" + ], + "enumDescriptions": [ + "Unspecified update type.", + "Configurable billing was created/enabled.", + "Configurable billing was deleted/disabled.", + "Subscription was scaled up (thresholds increased).", + "Subscription was scaled down (thresholds decreased)." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -27523,6 +28656,10 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaCustomFineTuningSpec", "description": "Custom fine tuning configs. If set, it has higher priority than the configs set in ServingConfig.custom_fine_tuning_spec." }, + "customRankingParams": { + "$ref": "GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams", + "description": "Optional. Optional configuration for the Custom Ranking feature." + }, "dataStoreSpecs": { "description": "Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used.", "items": { @@ -27538,6 +28675,10 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaSearchRequestEmbeddingSpec", "description": "Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.EmbeddingSpec.EmbeddingVector.vector and the document embedding that is provided in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path. If SearchRequest.EmbeddingSpec.EmbeddingVector.field_path is not provided, it will use ServingConfig.EmbeddingConfig.field_path." }, + "entity": { + "description": "Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, \"Google US\", \"Google Ads\", \"Waymo\", \"google.com\", \"youtube.com\", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity.", + "type": "string" + }, "facetSpecs": { "description": "Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned.", "items": { @@ -27691,7 +28832,7 @@ "type": "string" }, "session": { - "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call.", "type": "string" }, "sessionSpec": { @@ -28052,6 +29193,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams": { + "description": "Configuration parameters for the Custom Ranking feature.", + "id": "GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams", + "properties": { + "expressionsToPrecompute": { + "description": "Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaSearchRequestDataStoreSpec": { "description": "A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned.", "id": "GoogleCloudDiscoveryengineV1alphaSearchRequestDataStoreSpec", @@ -28259,7 +29414,7 @@ "type": "string" }, "geoSearchQueryDetectionFieldNames": { - "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names.", + "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`.", "items": { "type": "string" }, @@ -28413,7 +29568,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1alphaSearchRequestSessionSpec": { - "description": "Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "Session specification.", "id": "GoogleCloudDiscoveryengineV1alphaSearchRequestSessionSpec", "properties": { "queryId": { @@ -28528,6 +29683,10 @@ "description": "Output only. In ConversationalSearchService.GetSession API, if GetSessionRequest.include_answer_details is set to true, this field will be populated when getting assistant session.", "readOnly": true }, + "live": { + "description": "Optional. Indicates whether this turn is a live turn.", + "type": "boolean" + }, "query": { "$ref": "GoogleCloudDiscoveryengineV1alphaQuery", "description": "Optional. The user query. May not be set if this turn is merely regenerating an answer to a different turn" @@ -28956,6 +30115,10 @@ "description": "Information of an end user.", "id": "GoogleCloudDiscoveryengineV1alphaUserInfo", "properties": { + "preciseLocation": { + "$ref": "GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation", + "description": "Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents." + }, "timeZone": { "description": "Optional. IANA time zone, e.g. Europe/Budapest.", "type": "string" @@ -28965,12 +30128,27 @@ "type": "string" }, "userId": { - "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", + "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded.", "type": "string" } }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation": { + "description": "Precise location info with multiple representation options. Currently only latitude and longitude point is supported.", + "id": "GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation", + "properties": { + "address": { + "description": "Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon.", + "type": "string" + }, + "point": { + "$ref": "GoogleTypeLatLng", + "description": "Optional. Location represented by a latitude/longitude point." + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaUserLicense": { "description": "User License information assigned by the admin.", "id": "GoogleCloudDiscoveryengineV1alphaUserLicense", @@ -29104,6 +30282,28 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaAgentGatewaySetting": { + "description": "Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise.", + "id": "GoogleCloudDiscoveryengineV1betaAgentGatewaySetting", + "properties": { + "defaultEgressAgentGateway": { + "$ref": "GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference", + "description": "Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference": { + "description": "Reference to an Agent Gateway resource.", + "id": "GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference", + "properties": { + "name": { + "description": "Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number}/locations/{location}/agentGateways/{agent_gateway}`.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaBatchCreateTargetSiteMetadata": { "description": "Metadata related to the progress of the SiteSearchEngineService.BatchCreateTargetSites operation. This will be returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1betaBatchCreateTargetSiteMetadata", @@ -29737,6 +30937,10 @@ "$ref": "GoogleCloudDiscoveryengineV1betaDocumentProcessingConfig", "description": "Configuration for Document understanding and enrichment." }, + "federatedSearchConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig", + "description": "Optional. If set, this DataStore is a federated search DataStore." + }, "healthcareFhirConfig": { "$ref": "GoogleCloudDiscoveryengineV1betaHealthcareFhirConfig", "description": "Optional. Configuration for `HEALTHCARE_FHIR` vertical." @@ -29856,6 +31060,125 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig": { + "description": "Stores information for federated search.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig", + "properties": { + "alloyDbConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig", + "description": "AlloyDB config. If set, this DataStore is connected to AlloyDB." + }, + "notebooklmConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig", + "description": "NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise." + }, + "thirdPartyOauthConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig", + "description": "Third Party OAuth config. If set, this DataStore is connected to a third party application." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig": { + "description": "Stores information for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig", + "properties": { + "alloydbAiNlConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "description": "Optional. Configuration for Magic." + }, + "alloydbConnectionConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "description": "Required. Configuration for connecting to AlloyDB." + }, + "returnedFields": { + "description": "Optional. Fields to be returned in the search results. If empty, all fields will be returned.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig": { + "description": "Configuration for AlloyDB AI Natural Language.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "properties": { + "nlConfigId": { + "description": "Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig": { + "description": "Configuration for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "properties": { + "authMode": { + "description": "Optional. Auth mode.", + "enum": [ + "AUTH_MODE_UNSPECIFIED", + "AUTH_MODE_SERVICE_ACCOUNT", + "AUTH_MODE_END_USER_ACCOUNT" + ], + "enumDescriptions": [ + "", + "Uses P4SA when VAIS talks to AlloyDB.", + "Uses EUC when VAIS talks to AlloyDB." + ], + "type": "string" + }, + "database": { + "description": "Required. The AlloyDB database to connect to.", + "type": "string" + }, + "enablePsvs": { + "description": "Optional. If true, enable PSVS for AlloyDB.", + "type": "boolean" + }, + "instance": { + "description": "Required. The AlloyDB instance to connect to.", + "type": "string" + }, + "password": { + "description": "Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + }, + "user": { + "description": "Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig": { + "description": "Config for connecting to NotebookLM Enterprise.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig", + "properties": { + "searchConfig": { + "description": "Required. Search config name. Format: projects/*/locations/global/notebookLmSearchConfigs/*", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig": { + "description": "Stores information for third party applicationOAuth.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig", + "properties": { + "appName": { + "description": "Optional. The type of the application. E.g., \"jira\", \"box\", etc.", + "type": "string" + }, + "instanceName": { + "description": "Optional. The instance name identifying the 3P app, e.g., \"vaissptbots-my\". This is different from the instance_uri which is the full URL of the 3P app e.g., \"https://vaissptbots-my.sharepoint.com\".", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaDataStoreServingConfigDataStore": { "description": "Stores information regarding the serving configurations at DataStore level.", "id": "GoogleCloudDiscoveryengineV1betaDataStoreServingConfigDataStore", @@ -30190,6 +31513,10 @@ "description": "Metadata that describes the training and serving parameters of an Engine.", "id": "GoogleCloudDiscoveryengineV1betaEngine", "properties": { + "agentGatewaySetting": { + "$ref": "GoogleCloudDiscoveryengineV1betaAgentGatewaySetting", + "description": "Optional. The agent gateway setting for the engine." + }, "appType": { "description": "Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type.", "enum": [ @@ -30274,7 +31601,7 @@ ], "type": "string" }, - "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails`", + "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills`", "type": "object" }, "industryVertical": { @@ -30344,9 +31671,12 @@ "$ref": "GoogleCloudDiscoveryengineV1betaObservabilityConfig", "description": "Optional. Observability config for the engine." }, - "procurementContactEmail": { - "description": "Optional. The email of the procurement contact.", - "type": "string" + "procurementContactEmails": { + "description": "Optional. The emails of the procurement contacts.", + "items": { + "type": "string" + }, + "type": "array" }, "searchEngineConfig": { "$ref": "GoogleCloudDiscoveryengineV1betaEngineSearchEngineConfig", @@ -31065,8 +32395,9 @@ "type": "string" }, "updateTime": { - "description": "Operation last update time. If the operation is done, this is also the finish time.", + "description": "Output only. Operation last update time. If the operation is done, this is also the finish time.", "format": "google-datetime", + "readOnly": true, "type": "string" } }, @@ -31301,11 +32632,11 @@ "id": "GoogleCloudDiscoveryengineV1betaObservabilityConfig", "properties": { "observabilityEnabled": { - "description": "Optional. Enables observability. If false, all other flags are ignored.", + "description": "Optional. Enables observability. If `false`, all other flags are ignored.", "type": "boolean" }, "sensitiveLoggingEnabled": { - "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields.", + "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields.", "type": "boolean" } }, @@ -31402,7 +32733,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus": { - "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month).", + "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation.", "id": "GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus", "properties": { "effectiveIndexingCoreThreshold": { @@ -31437,6 +32768,25 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "updateType": { + "description": "Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject.", + "enum": [ + "UPDATE_TYPE_UNSPECIFIED", + "CREATE", + "DELETE", + "SCALE_UP", + "SCALE_DOWN" + ], + "enumDescriptions": [ + "Unspecified update type.", + "Configurable billing was created/enabled.", + "Configurable billing was deleted/disabled.", + "Subscription was scaled up (thresholds increased).", + "Subscription was scaled down (thresholds decreased)." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -31824,6 +33174,10 @@ }, "type": "array" }, + "customRankingParams": { + "$ref": "GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams", + "description": "Optional. Optional configuration for the Custom Ranking feature." + }, "dataStoreSpecs": { "description": "Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used.", "items": { @@ -31839,6 +33193,10 @@ "$ref": "GoogleCloudDiscoveryengineV1betaSearchRequestEmbeddingSpec", "description": "Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.EmbeddingSpec.EmbeddingVector.vector and the document embedding that is provided in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path. If SearchRequest.EmbeddingSpec.EmbeddingVector.field_path is not provided, it will use ServingConfig.EmbeddingConfig.field_path." }, + "entity": { + "description": "Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, \"Google US\", \"Google Ads\", \"Waymo\", \"google.com\", \"youtube.com\", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity.", + "type": "string" + }, "facetSpecs": { "description": "Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned.", "items": { @@ -31992,7 +33350,7 @@ "type": "string" }, "session": { - "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call.", "type": "string" }, "sessionSpec": { @@ -32349,6 +33707,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams": { + "description": "Configuration parameters for the Custom Ranking feature.", + "id": "GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams", + "properties": { + "expressionsToPrecompute": { + "description": "Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaSearchRequestDataStoreSpec": { "description": "A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned.", "id": "GoogleCloudDiscoveryengineV1betaSearchRequestDataStoreSpec", @@ -32556,7 +33928,7 @@ "type": "string" }, "geoSearchQueryDetectionFieldNames": { - "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names.", + "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`.", "items": { "type": "string" }, @@ -32710,7 +34082,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1betaSearchRequestSessionSpec": { - "description": "Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "Session specification.", "id": "GoogleCloudDiscoveryengineV1betaSearchRequestSessionSpec", "properties": { "queryId": { @@ -33062,6 +34434,10 @@ "description": "Information of an end user.", "id": "GoogleCloudDiscoveryengineV1betaUserInfo", "properties": { + "preciseLocation": { + "$ref": "GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation", + "description": "Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents." + }, "timeZone": { "description": "Optional. IANA time zone, e.g. Europe/Budapest.", "type": "string" @@ -33071,12 +34447,27 @@ "type": "string" }, "userId": { - "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", + "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded.", "type": "string" } }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation": { + "description": "Precise location info with multiple representation options. Currently only latitude and longitude point is supported.", + "id": "GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation", + "properties": { + "address": { + "description": "Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon.", + "type": "string" + }, + "point": { + "$ref": "GoogleTypeLatLng", + "description": "Optional. Location represented by a latitude/longitude point." + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaUserLicense": { "description": "User License information assigned by the admin.", "id": "GoogleCloudDiscoveryengineV1betaUserLicense", @@ -33592,6 +34983,23 @@ }, "type": "object" }, + "GoogleTypeLatLng": { + "description": "An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges.", + "id": "GoogleTypeLatLng", + "properties": { + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, "GoogleTypeTimeZone": { "description": "Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones).", "id": "GoogleTypeTimeZone", diff --git a/discovery/discoveryengine-v1alpha.json b/discovery/discoveryengine-v1alpha.json index bd008a2bccc..28851ce1dba 100644 --- a/discovery/discoveryengine-v1alpha.json +++ b/discovery/discoveryengine-v1alpha.json @@ -13,6 +13,9 @@ }, "https://www.googleapis.com/auth/discoveryengine.readwrite": { "description": "View, edit, create, and delete all your data associated with any Discovery Engine API product, such as Agentspace, Vertex AI Search, or NotebookLM Enterprise, including both end user data and administration or configuration data." + }, + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite": { + "description": "Interact with Discovery Engine API products, such as Agentspace, Vertex AI Search, or NotebookLM Enterprise, on your behalf. It will also allow the app to view all data that you have access to when you use or interact with a Discovery Engine API product." } } } @@ -171,7 +174,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -197,7 +201,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -234,7 +239,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "retractLicenseConfig": { @@ -263,7 +269,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -295,7 +302,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -330,7 +338,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "provision": { @@ -359,7 +368,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "reportConsentChange": { @@ -388,7 +398,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -450,7 +461,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "estimateDataSize": { @@ -479,7 +491,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getAclConfig": { @@ -505,7 +518,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getCmekConfig": { @@ -531,7 +545,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "obtainCrawlRate": { @@ -560,7 +575,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "queryConfigurablePricingUsageStats": { @@ -651,7 +667,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "removeDedicatedCrawlRate": { @@ -680,7 +697,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "setDedicatedCrawlRate": { @@ -709,7 +727,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "setUpDataConnector": { @@ -739,7 +758,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "setUpDataConnectorV2": { @@ -757,7 +777,7 @@ "type": "string" }, "collectionId": { - "description": "Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. Should conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", "location": "query", "type": "string" }, @@ -779,7 +799,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "updateAclConfig": { @@ -808,7 +829,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "updateCmekConfig": { @@ -842,7 +864,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -880,7 +903,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -906,7 +930,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -932,7 +957,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -969,7 +995,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -1004,7 +1031,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1034,7 +1062,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -1060,7 +1089,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1086,7 +1116,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -1120,7 +1151,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1150,7 +1182,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -1176,7 +1209,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getDataConnector": { @@ -1189,7 +1223,7 @@ ], "parameters": { "name": { - "description": "Required. Full resource name of DataConnector, such as `projects/{project}/locations/{location}/collections/{collection_id}/dataConnector`. If the caller does not have permission to access the DataConnector, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. If the requested DataConnector does not exist, a NOT_FOUND error is returned.", + "description": "Required. Full resource name of DataConnector, such as `projects/{project}/locations/{location}/collections/{collection_id}/dataConnector`. If the caller does not have permission to access the DataConnector, regardless of whether or not it exists, a `PERMISSION_DENIED` error is returned. If the requested DataConnector does not exist, a `NOT_FOUND` error is returned.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataConnector$", "required": true, @@ -1203,7 +1237,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1245,7 +1280,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -1280,7 +1316,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "updateDataConnector": { @@ -1293,14 +1330,14 @@ ], "parameters": { "name": { - "description": "Output only. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", + "description": "Identifier. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataConnector$", "required": true, "type": "string" }, "updateMask": { - "description": "Indicates which fields in the provided DataConnector to update. Supported field paths include: - `refresh_interval` - `params` - `auto_run_disabled` - `action_config` - `action_config.action_params` - `action_config.service_name` - `destination_configs` - `blocking_reasons` - `sync_mode` - `incremental_sync_disabled` - `incremental_refresh_interval` - `data_protection_policy` Note: Support for these fields may vary depending on the connector type. For example, not all connectors support `destination_configs`. If an unsupported or unknown field path is provided, the request will return an INVALID_ARGUMENT error.", + "description": "Indicates which fields in the provided DataConnector to update. Supported field paths include: - `refresh_interval` - `params` - `auto_run_disabled` - `action_config` - `action_config.action_params` - `action_config.service_name` - `destination_configs` - `blocking_reasons` - `sync_mode` - `incremental_sync_disabled` - `incremental_refresh_interval` - `data_protection_policy` Note: Support for these fields may vary depending on the connector type. For example, not all connectors support `destination_configs`. If an unsupported or unknown field path is provided, the request will return an `INVALID_ARGUMENT` error.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1316,7 +1353,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -1350,7 +1388,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "checkRefreshToken": { @@ -1378,7 +1417,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getConnectorSecret": { @@ -1405,7 +1445,66 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + }, + "mcp": { + "description": "ServeMcpDeleteRequest serves a MCP DELETE request.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataConnector/mcp", + "httpMethod": "DELETE", + "id": "discoveryengine.projects.locations.collections.dataConnector.mcp", + "parameterOrder": [ + "projectsId", + "locationsId", + "collectionsId" + ], + "parameters": { + "collectionsId": { + "location": "path", + "required": true, + "type": "string" + }, + "contentType": { + "description": "The HTTP Content-Type header value specifying the content type of the body.", + "location": "query", + "type": "string" + }, + "data": { + "description": "The HTTP request/response body as raw binary.", + "format": "byte", + "location": "query", + "type": "string" + }, + "extensions": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Application specific response metadata. Must be set in the first response for streaming APIs.", + "location": "query", + "repeated": true, + "type": "object" + }, + "locationsId": { + "location": "path", + "required": true, + "type": "string" + }, + "projectsId": { + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataConnector/mcp", + "response": { + "$ref": "GoogleApiHttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "startConnectorRun": { @@ -1435,7 +1534,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -1452,7 +1552,7 @@ ], "parameters": { "pageSize": { - "description": "Requested page size. Server may return fewer items than requested. If unspecified, defaults to 10. The maximum value is 50; values above 50 will be coerced to 50. If this field is negative, an INVALID_ARGUMENT error is returned.", + "description": "Requested page size. Server may return fewer items than requested. If unspecified, defaults to 10. The maximum value is 50; values above 50 will be coerced to 50. If this field is negative, an `INVALID_ARGUMENT` error is returned.", "format": "int32", "location": "query", "type": "integer" @@ -1463,7 +1563,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent DataConnector resource name, such as `projects/{project}/locations/{location}/collections/{collection_id}/dataConnector`. If the caller does not have permission to list ConnectorRuns under this DataConnector, regardless of whether or not this DataConnector exists, a PERMISSION_DENIED error is returned.", + "description": "Required. The parent DataConnector resource name, such as `projects/{project}/locations/{location}/collections/{collection_id}/dataConnector`. If the caller does not have permission to list ConnectorRuns under this DataConnector, regardless of whether or not this DataConnector exists, a `PERMISSION_DENIED` error is returned.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataConnector$", "required": true, @@ -1477,7 +1577,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1507,7 +1608,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1554,7 +1656,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1589,7 +1692,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "completeQuery": { @@ -1636,7 +1740,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -1691,7 +1796,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -1718,7 +1824,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "deletePatientFilter": { @@ -1747,7 +1854,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -1774,7 +1882,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getDocumentProcessingConfig": { @@ -1800,7 +1909,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getSiteSearchEngine": { @@ -1826,7 +1936,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1868,7 +1979,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -1903,7 +2015,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "removePatientFilter": { @@ -1932,7 +2045,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "replacePatientFilter": { @@ -1961,7 +2075,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "trainCustomModel": { @@ -1990,7 +2105,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "updateDocumentProcessingConfig": { @@ -2025,7 +2141,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -2067,7 +2184,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -2108,7 +2226,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2149,7 +2268,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -2187,7 +2307,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -2213,7 +2334,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -2239,7 +2361,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getProcessedDocument": { @@ -2302,7 +2425,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -2331,7 +2455,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2368,7 +2493,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -2408,7 +2534,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -2437,7 +2564,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -2467,7 +2595,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2504,7 +2633,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2539,7 +2669,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -2565,7 +2696,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2612,7 +2744,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2649,7 +2782,8 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud_search.query", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2683,7 +2817,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -2713,7 +2848,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2751,7 +2887,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -2777,7 +2914,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -2803,7 +2941,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2845,7 +2984,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -2880,7 +3020,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2913,7 +3054,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -2942,7 +3084,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -2968,7 +3111,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -2994,7 +3138,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3041,7 +3186,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -3076,7 +3222,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3106,7 +3253,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3138,7 +3286,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3185,7 +3334,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3217,7 +3367,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3264,7 +3415,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3302,7 +3454,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -3328,7 +3481,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -3354,7 +3508,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3391,7 +3546,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -3425,7 +3581,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -3455,7 +3612,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3502,7 +3660,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3521,7 +3680,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -3538,7 +3697,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -3572,7 +3732,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -3598,7 +3759,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -3624,7 +3786,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3661,7 +3824,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -3696,7 +3860,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recommend": { @@ -3725,7 +3890,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "search": { @@ -3755,7 +3921,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "searchLite": { @@ -3785,7 +3952,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "streamAnswer": { @@ -3798,7 +3966,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -3815,7 +3983,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3837,6 +4006,11 @@ "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+$", "required": true, "type": "string" + }, + "sessionId": { + "description": "Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61}[a-z0-9]/. If not specified, a unique ID will be generated.", + "location": "query", + "type": "string" } }, "path": "v1alpha/{+parent}/sessions", @@ -3849,7 +4023,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -3876,7 +4051,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -3908,7 +4084,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3956,7 +4133,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -3992,7 +4170,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -4022,7 +4201,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4057,7 +4237,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "disableAdvancedSiteSearch": { @@ -4086,7 +4267,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "enableAdvancedSiteSearch": { @@ -4115,7 +4297,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "fetchDomainVerificationStatus": { @@ -4152,7 +4335,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getUriPatternDocumentData": { @@ -4178,7 +4362,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recrawlUris": { @@ -4207,7 +4392,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "setUriPatternDocumentData": { @@ -4236,7 +4422,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -4266,7 +4453,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -4313,7 +4501,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4346,7 +4535,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -4372,7 +4562,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "fetch": { @@ -4404,7 +4595,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4437,7 +4629,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -4466,7 +4659,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -4492,7 +4686,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -4518,7 +4713,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -4555,7 +4751,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -4584,7 +4781,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -4614,7 +4812,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -4661,7 +4860,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4699,7 +4899,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -4729,7 +4930,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4776,7 +4978,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -4806,7 +5009,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -4836,7 +5040,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "write": { @@ -4871,7 +5076,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4912,7 +5118,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -4948,7 +5155,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4988,7 +5196,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -5014,7 +5223,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -5040,7 +5250,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getIamPolicy": { @@ -5072,7 +5283,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getWorkspaceSettings": { @@ -5098,7 +5310,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5140,7 +5353,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -5175,7 +5389,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "pause": { @@ -5204,7 +5419,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "resume": { @@ -5233,7 +5449,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "setIamPolicy": { @@ -5262,7 +5479,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "tune": { @@ -5291,7 +5509,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -5324,7 +5543,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getConfig": { @@ -5350,7 +5570,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "updateConfig": { @@ -5385,7 +5606,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5424,7 +5646,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -5451,7 +5674,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -5478,7 +5702,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5516,7 +5741,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -5552,7 +5778,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "streamAssist": { @@ -5582,7 +5809,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -5616,7 +5844,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -5643,7 +5872,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -5670,7 +5900,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5682,6 +5913,11 @@ "parent" ], "parameters": { + "filter": { + "description": "Optional. Filters the Agents list. Supported fields: * `display_name`: display name of the agent. Supports `=`, `:`. * `id`: ID of the agent. Supports `=`. * `state`: state of the agent. Supports `=`. * `create_time`: timestamp when the agent was created. Supports `=`, `>`, `<`, `>=`, `<=`. * `update_time`: timestamp when the agent was last updated. Supports `=`, `>`, `<`, `>=`, `<=`. Examples: * `display_name = \"My Agent\"` * `create_time > \"2023-01-01T00:00:00Z\"`", + "location": "query", + "type": "string" + }, "orderBy": { "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending. Supported fields: * `update_time` * `is_pinned` Example: * \"update_time desc\" * \"is_pinned desc,update_time desc\": list agents by is_pinned first, then by update_time.", "location": "query", @@ -5713,7 +5949,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -5749,7 +5986,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -5783,7 +6021,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5813,7 +6052,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5854,7 +6094,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -5881,7 +6122,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -5908,7 +6150,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5951,7 +6194,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -5987,7 +6231,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6024,7 +6269,8 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud_search.query", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "removeSuggestion": { @@ -6054,7 +6300,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6092,7 +6339,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -6118,7 +6366,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -6144,7 +6393,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6186,7 +6436,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -6221,7 +6472,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6254,7 +6506,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -6283,7 +6536,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -6309,7 +6563,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -6335,7 +6590,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6382,7 +6638,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -6417,7 +6674,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6447,7 +6705,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6494,7 +6753,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6511,7 +6771,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -6528,7 +6788,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -6562,7 +6823,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -6588,7 +6850,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -6614,7 +6877,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6651,7 +6915,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -6686,7 +6951,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recommend": { @@ -6715,7 +6981,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "search": { @@ -6745,7 +7012,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "searchLite": { @@ -6775,7 +7043,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "streamAnswer": { @@ -6788,7 +7057,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -6805,7 +7074,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6827,6 +7097,11 @@ "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+$", "required": true, "type": "string" + }, + "sessionId": { + "description": "Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61}[a-z0-9]/. If not specified, a unique ID will be generated.", + "location": "query", + "type": "string" } }, "path": "v1alpha/{+parent}/sessions", @@ -6839,7 +7114,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -6866,7 +7142,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -6898,7 +7175,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6946,7 +7224,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -6982,7 +7261,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -7014,7 +7294,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7046,7 +7327,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7098,7 +7380,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7128,7 +7411,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7171,7 +7455,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -7207,7 +7492,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7239,7 +7525,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -7286,7 +7573,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7321,7 +7609,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "completeQuery": { @@ -7368,7 +7657,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -7423,7 +7713,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -7450,7 +7741,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "deletePatientFilter": { @@ -7479,7 +7771,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -7506,7 +7799,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getDocumentProcessingConfig": { @@ -7532,7 +7826,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getSiteSearchEngine": { @@ -7558,7 +7853,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -7600,7 +7896,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -7635,7 +7932,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "removePatientFilter": { @@ -7664,7 +7962,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "replacePatientFilter": { @@ -7693,7 +7992,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "updateDocumentProcessingConfig": { @@ -7728,7 +8028,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -7770,7 +8071,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -7811,7 +8113,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -7852,7 +8155,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -7890,7 +8194,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -7916,7 +8221,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -7942,7 +8248,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getProcessedDocument": { @@ -8005,7 +8312,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -8034,7 +8342,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8071,7 +8380,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -8111,7 +8421,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -8140,7 +8451,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -8170,7 +8482,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8207,7 +8520,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8242,7 +8556,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -8268,7 +8583,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8315,7 +8631,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8352,7 +8669,8 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud_search.query", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8386,7 +8704,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -8416,7 +8735,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8454,7 +8774,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -8480,7 +8801,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -8506,7 +8828,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8548,7 +8871,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -8583,7 +8907,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8616,7 +8941,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -8645,7 +8971,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -8671,7 +8998,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -8697,7 +9025,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8744,7 +9073,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -8779,7 +9109,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8811,7 +9142,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8858,7 +9190,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8890,7 +9223,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8937,7 +9271,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8975,7 +9310,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -9001,7 +9337,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -9027,7 +9364,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -9064,7 +9402,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -9098,7 +9437,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -9115,7 +9455,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -9132,7 +9472,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -9166,7 +9507,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -9192,7 +9534,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -9218,7 +9561,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -9255,7 +9599,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -9290,7 +9635,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recommend": { @@ -9319,7 +9665,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "search": { @@ -9349,7 +9696,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "searchLite": { @@ -9379,7 +9727,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "streamAnswer": { @@ -9392,7 +9741,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -9409,7 +9758,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -9431,6 +9781,11 @@ "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+$", "required": true, "type": "string" + }, + "sessionId": { + "description": "Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61}[a-z0-9]/. If not specified, a unique ID will be generated.", + "location": "query", + "type": "string" } }, "path": "v1alpha/{+parent}/sessions", @@ -9443,7 +9798,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -9470,7 +9826,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -9502,7 +9859,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -9550,7 +9908,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -9586,7 +9945,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -9616,7 +9976,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -9651,7 +10012,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "enableAdvancedSiteSearch": { @@ -9680,7 +10042,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recrawlUris": { @@ -9709,7 +10072,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -9742,7 +10106,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -9768,7 +10133,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "fetch": { @@ -9800,7 +10166,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -9833,7 +10200,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -9862,7 +10230,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -9888,7 +10257,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -9914,7 +10284,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -9951,7 +10322,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -9980,7 +10352,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -10016,7 +10389,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -10046,7 +10420,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -10093,7 +10468,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -10123,7 +10499,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -10153,7 +10530,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "write": { @@ -10188,7 +10566,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -10229,7 +10608,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -10265,7 +10645,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -10301,7 +10682,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -10327,7 +10709,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -10364,7 +10747,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "listResults": { @@ -10401,7 +10785,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -10431,7 +10816,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -10466,7 +10852,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -10514,7 +10901,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -10540,7 +10928,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -10566,7 +10955,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "importIdentityMappings": { @@ -10595,7 +10985,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -10632,7 +11023,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "listIdentityMappings": { @@ -10669,7 +11061,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purgeIdentityMappings": { @@ -10698,7 +11091,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -10728,7 +11122,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -10775,7 +11170,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -10815,7 +11211,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -10841,7 +11238,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -10876,7 +11274,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -10909,7 +11308,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -10938,7 +11338,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -10964,7 +11365,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "listRecentlyViewed": { @@ -11001,7 +11403,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "share": { @@ -11030,7 +11433,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -11063,7 +11467,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -11089,7 +11494,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -11123,7 +11529,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "batchDelete": { @@ -11152,7 +11559,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -11178,7 +11586,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -11210,7 +11619,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -11257,7 +11667,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -11289,7 +11700,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -11324,7 +11736,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -11357,7 +11770,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -11395,7 +11809,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -11421,7 +11836,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -11447,7 +11863,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -11484,7 +11901,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -11519,7 +11937,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -11549,7 +11968,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -11587,7 +12007,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -11613,7 +12034,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -11639,7 +12061,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -11668,7 +12091,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -11705,7 +12129,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -11740,7 +12165,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -11789,7 +12215,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -11819,7 +12246,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "write": { @@ -11854,7 +12282,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -11887,67 +12316,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" - ] - }, - "create": { - "description": "Creates a new User Store.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/userStores", - "httpMethod": "POST", - "id": "discoveryengine.projects.locations.userStores.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The parent collection resource name, such as `projects/{project}/locations/{location}`.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "userStoreId": { - "description": "Required. The ID of the User Store to create. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 63 characters.", - "location": "query", - "type": "string" - } - }, - "path": "v1alpha/{+parent}/userStores", - "request": { - "$ref": "GoogleCloudDiscoveryengineV1alphaUserStore" - }, - "response": { - "$ref": "GoogleCloudDiscoveryengineV1alphaUserStore" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" - ] - }, - "delete": { - "description": "Deletes the User Store.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/userStores/{userStoresId}", - "httpMethod": "DELETE", - "id": "discoveryengine.projects.locations.userStores.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the User Store to delete. Format: `projects/{project}/locations/{location}/userStores/{user_store_id}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/userStores/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1alpha/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -11973,7 +12343,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -12008,7 +12379,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -12038,7 +12410,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -12068,7 +12441,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -12115,7 +12489,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -12131,8 +12506,13 @@ "parent" ], "parameters": { + "filter": { + "description": "Optional. Filter for the list request. Supported fields: * `license_assignment_state` * `user_principal` * Examples: * `license_assignment_state = ASSIGNED` to list assigned user licenses. * `license_assignment_state = NO_LICENSE` to list not licensed users. * `license_assignment_state = NO_LICENSE_ATTEMPTED_LOGIN` to list users who attempted login but no license assigned. * `license_assignment_state != NO_LICENSE_ATTEMPTED_LOGIN` to filter out users who attempted login but no license assigned. * `user_principal = user1@example.com` to list user license for `user1@example.com`.", + "location": "query", + "type": "string" + }, "orderBy": { - "description": "Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a \" desc\" suffix. Redundant space characters in the syntax are insignificant. Supported fields: * `license_assignment_state` * `user_principal` * `user_profile` * `last_login_date` * `update_time` If not set, the default ordering is by `user_principal`. Examples: * `user_principal desc` to order by `user_principal` in descending order. * `license_assignment_state` to order by `license_assignment_state` in ascending order. * `last_login_date desc` to order by `last_login_date` in descending order. * `update_time desc` to order by `update_time` in descending order. * `last_login_date desc, user_principal` to order by `last_login_date` in descending order and then by `user_principal` in ascending order.", + "description": "Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a \" desc\" suffix. Redundant space characters in the syntax are insignificant. Supported fields (only `user_principal` is supported for now): * `user_principal` If not set, the default ordering is by `user_principal`. Examples: * `user_principal` to order by `user_principal` in ascending order. * `user_principal desc` to order by `user_principal` in descending order.", "location": "query", "type": "string" }, @@ -12161,7 +12541,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -12195,7 +12576,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -12242,7 +12624,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -12250,7 +12633,7 @@ } } }, - "revision": "20260226", + "revision": "20260503", "rootUrl": "https://discoveryengine.googleapis.com/", "schemas": { "GoogleApiDistribution": { @@ -12693,6 +13076,10 @@ "description": "Optional. Action parameters in structured json format.", "type": "object" }, + "createBapConnection": { + "description": "Optional. Whether to create a BAP connection for the connector.", + "type": "boolean" + }, "isActionConfigured": { "description": "Output only. The connector contains the necessary parameters and is configured to support actions.", "readOnly": true, @@ -12709,6 +13096,27 @@ "useStaticSecrets": { "description": "Optional. Whether to use static secrets for the connector. If true, the secrets provided in the action_params will be ignored.", "type": "boolean" + }, + "userDefinedScopesMapping": { + "additionalProperties": { + "$ref": "GoogleCloudDiscoveryengineV1ActionConfigScopeList" + }, + "description": "Optional. Mapping from operation name to the list of scopes. Only be populated if there are user specified scopes.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1ActionConfigScopeList": { + "description": "Stores a list of scopes.", + "id": "GoogleCloudDiscoveryengineV1ActionConfigScopeList", + "properties": { + "scopes": { + "description": "Optional. The list of scopes.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -12728,6 +13136,28 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1AgentGatewaySetting": { + "description": "Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise.", + "id": "GoogleCloudDiscoveryengineV1AgentGatewaySetting", + "properties": { + "defaultEgressAgentGateway": { + "$ref": "GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference", + "description": "Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference": { + "description": "Reference to an Agent Gateway resource.", + "id": "GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference", + "properties": { + "name": { + "description": "Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number}/locations/{location}/agentGateways/{agent_gateway}`.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1AlertPolicyConfig": { "description": "The connector level alert config.", "id": "GoogleCloudDiscoveryengineV1AlertPolicyConfig", @@ -12829,6 +13259,12 @@ "description": "Discovery Engine Assistant resource.", "id": "GoogleCloudDiscoveryengineV1Assistant", "properties": { + "createTime": { + "description": "Output only. Represents the time when this Assistant was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "customerPolicy": { "$ref": "GoogleCloudDiscoveryengineV1AssistantCustomerPolicy", "description": "Optional. Customer policy for the assistant." @@ -12860,6 +13296,12 @@ "description": "Immutable. Resource name of the assistant. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}` It must be a UTF-8 encoded string with a length limit of 1024 characters.", "type": "string" }, + "updateTime": { + "description": "Output only. Represents the time when this Assistant was most recently updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "webGroundingType": { "description": "Optional. The type of web grounding to use.", "enum": [ @@ -13133,6 +13575,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1CliConfig": { + "description": "The configuration for the CLI execution based connectors.", + "id": "GoogleCloudDiscoveryengineV1CliConfig", + "properties": { + "enabledActions": { + "description": "Optional. The actions enabled on the associated CLI connection.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1CmekConfig": { "description": "Configurations used to enable CMEK data encryption with Cloud KMS keys.", "id": "GoogleCloudDiscoveryengineV1CmekConfig", @@ -13684,6 +14140,10 @@ "readOnly": true, "type": "array" }, + "cliConfig": { + "$ref": "GoogleCloudDiscoveryengineV1CliConfig", + "description": "Optional. The configuration for establishing a CLI connection." + }, "connectorModes": { "description": "Optional. The modes enabled for this connector. Default state is CONNECTOR_MODE_UNSPECIFIED.", "items": { @@ -13757,7 +14217,7 @@ "type": "string" }, "dataSource": { - "description": "Required. The name of the data source. Supported values: `salesforce`, `jira`, `confluence`, `bigquery`.", + "description": "Required. The identifier for the data source. This is a partial list of supported connectors. Please refer to the [documentation](https://docs.cloud.google.com/gemini/enterprise/docs/connectors/introduction-to-connectors-and-data-stores) for the full list of connectors. Supported first-party connectors include: * `gcs` * `bigquery` * `gcp_fhir` * `google_mail` * `google_drive` * `google_calendar` * `google_chat` Supported third-party connectors include: Generally available (GA) connectors: * `onedrive` * `outlook` * `confluence` * `jira` * `servicenow` * `sharepoint` Preview connectors: * `asana` * `azure_active_directory` * `box` * `canva` * `confluence_server` * `custom_connector` * `docusign` * `dropbox` * `dynamics365` * `github` * `gitlab` * `hubspot` * `jira_server` * `linear` * `native_cloud_identity` * `notion` * `okta` * `pagerduty` * `peoplesoft` * `salesforce` * `shopify` * `slack` * `snowflake` * `teams` * `trello` * `workday` * `zendesk`", "type": "string" }, "destinationConfigs": { @@ -13767,8 +14227,16 @@ }, "type": "array" }, + "dynamicTools": { + "description": "Output only. The dynamic tools fetched for this connector.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1DynamicTool" + }, + "readOnly": true, + "type": "array" + }, "egressFqdns": { - "description": "Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. Note: This field is derived from both the DataConnector.params, and connector source spec. It should only be used for CAIS and Org Policy evaluation purposes.", + "description": "Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs.", "items": { "type": "string" }, @@ -13842,8 +14310,7 @@ "type": "string" }, "name": { - "description": "Output only. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", - "readOnly": true, + "description": "Identifier. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", "type": "string" }, "nextSyncTime": { @@ -13962,7 +14429,7 @@ "type": "string" }, "vpcscEnabled": { - "description": "Output only. Whether the connector is created with VPC-SC enabled. This is only used for CuOP evaluation purpose.", + "description": "Output only. Whether the connector is created with VPC-SC enabled.", "readOnly": true, "type": "boolean" } @@ -14195,6 +14662,10 @@ "$ref": "GoogleCloudDiscoveryengineV1DocumentProcessingConfig", "description": "Configuration for Document understanding and enrichment." }, + "federatedSearchConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig", + "description": "Optional. If set, this DataStore is a federated search DataStore." + }, "healthcareFhirConfig": { "$ref": "GoogleCloudDiscoveryengineV1HealthcareFhirConfig", "description": "Optional. Configuration for `HEALTHCARE_FHIR` vertical." @@ -14310,6 +14781,125 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig": { + "description": "Stores information for federated search.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig", + "properties": { + "alloyDbConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig", + "description": "AlloyDB config. If set, this DataStore is connected to AlloyDB." + }, + "notebooklmConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig", + "description": "NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise." + }, + "thirdPartyOauthConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig", + "description": "Third Party OAuth config. If set, this DataStore is connected to a third party application." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig": { + "description": "Stores information for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig", + "properties": { + "alloydbAiNlConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "description": "Optional. Configuration for Magic." + }, + "alloydbConnectionConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "description": "Required. Configuration for connecting to AlloyDB." + }, + "returnedFields": { + "description": "Optional. Fields to be returned in the search results. If empty, all fields will be returned.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig": { + "description": "Configuration for AlloyDB AI Natural Language.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "properties": { + "nlConfigId": { + "description": "Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig": { + "description": "Configuration for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "properties": { + "authMode": { + "description": "Optional. Auth mode.", + "enum": [ + "AUTH_MODE_UNSPECIFIED", + "AUTH_MODE_SERVICE_ACCOUNT", + "AUTH_MODE_END_USER_ACCOUNT" + ], + "enumDescriptions": [ + "", + "Uses P4SA when VAIS talks to AlloyDB.", + "Uses EUC when VAIS talks to AlloyDB." + ], + "type": "string" + }, + "database": { + "description": "Required. The AlloyDB database to connect to.", + "type": "string" + }, + "enablePsvs": { + "description": "Optional. If true, enable PSVS for AlloyDB.", + "type": "boolean" + }, + "instance": { + "description": "Required. The AlloyDB instance to connect to.", + "type": "string" + }, + "password": { + "description": "Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + }, + "user": { + "description": "Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig": { + "description": "Config for connecting to NotebookLM Enterprise.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig", + "properties": { + "searchConfig": { + "description": "Required. Search config name. Format: projects/*/locations/global/notebookLmSearchConfigs/*", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig": { + "description": "Stores information for third party applicationOAuth.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig", + "properties": { + "appName": { + "description": "Optional. The type of the application. E.g., \"jira\", \"box\", etc.", + "type": "string" + }, + "instanceName": { + "description": "Optional. The instance name identifying the 3P app, e.g., \"vaissptbots-my\". This is different from the instance_uri which is the full URL of the 3P app e.g., \"https://vaissptbots-my.sharepoint.com\".", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1DataStoreServingConfigDataStore": { "description": "Stores information regarding the serving configurations at DataStore level.", "id": "GoogleCloudDiscoveryengineV1DataStoreServingConfigDataStore", @@ -14674,6 +15264,29 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1DynamicTool": { + "description": "Configuration for dynamic tools.", + "id": "GoogleCloudDiscoveryengineV1DynamicTool", + "properties": { + "description": { + "description": "Optional. The description of the tool.", + "type": "string" + }, + "displayName": { + "description": "Optional. The display name of the tool.", + "type": "string" + }, + "enabled": { + "description": "Optional. Whether the tool is enabled.", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the tool.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1EnableAdvancedSiteSearchMetadata": { "description": "Metadata related to the progress of the SiteSearchEngineService.EnableAdvancedSiteSearch operation. This will be returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1EnableAdvancedSiteSearchMetadata", @@ -14701,6 +15314,10 @@ "description": "Metadata that describes the training and serving parameters of an Engine.", "id": "GoogleCloudDiscoveryengineV1Engine", "properties": { + "agentGatewaySetting": { + "$ref": "GoogleCloudDiscoveryengineV1AgentGatewaySetting", + "description": "Optional. The agent gateway setting for the engine." + }, "appType": { "description": "Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type.", "enum": [ @@ -14785,7 +15402,7 @@ ], "type": "string" }, - "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails`", + "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills`", "type": "object" }, "industryVertical": { @@ -14855,9 +15472,12 @@ "$ref": "GoogleCloudDiscoveryengineV1ObservabilityConfig", "description": "Optional. Observability config for the engine." }, - "procurementContactEmail": { - "description": "Optional. The email of the procurement contact.", - "type": "string" + "procurementContactEmails": { + "description": "Optional. The emails of the procurement contacts.", + "items": { + "type": "string" + }, + "type": "array" }, "searchEngineConfig": { "$ref": "GoogleCloudDiscoveryengineV1EngineSearchEngineConfig", @@ -15452,8 +16072,9 @@ "type": "string" }, "updateTime": { - "description": "Operation last update time. If the operation is done, this is also the finish time.", + "description": "Output only. Operation last update time. If the operation is done, this is also the finish time.", "format": "google-datetime", + "readOnly": true, "type": "string" } }, @@ -15635,11 +16256,11 @@ "id": "GoogleCloudDiscoveryengineV1ObservabilityConfig", "properties": { "observabilityEnabled": { - "description": "Optional. Enables observability. If false, all other flags are ignored.", + "description": "Optional. Enables observability. If `false`, all other flags are ignored.", "type": "boolean" }, "sensitiveLoggingEnabled": { - "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields.", + "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields.", "type": "boolean" } }, @@ -15687,7 +16308,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus": { - "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month).", + "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation.", "id": "GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus", "properties": { "effectiveIndexingCoreThreshold": { @@ -15722,6 +16343,25 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "updateType": { + "description": "Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject.", + "enum": [ + "UPDATE_TYPE_UNSPECIFIED", + "CREATE", + "DELETE", + "SCALE_UP", + "SCALE_DOWN" + ], + "enumDescriptions": [ + "Unspecified update type.", + "Configurable billing was created/enabled.", + "Configurable billing was deleted/disabled.", + "Subscription was scaled up (thresholds increased).", + "Subscription was scaled down (thresholds decreased)." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -16846,7 +17486,12 @@ "GoogleCloudDiscoveryengineV1alphaAcquireAccessTokenRequest": { "description": "Request message for the DataConnectorService.AcquireAccessToken method.", "id": "GoogleCloudDiscoveryengineV1alphaAcquireAccessTokenRequest", - "properties": {}, + "properties": { + "scope": { + "description": "Optional. The scope to request for the access token. Scope will override default scope if specified.", + "type": "string" + } + }, "type": "object" }, "GoogleCloudDiscoveryengineV1alphaAcquireAccessTokenResponse": { @@ -16876,6 +17521,10 @@ "description": "Optional. Action parameters in structured json format.", "type": "object" }, + "createBapConnection": { + "description": "Optional. Whether to create a BAP connection for the connector.", + "type": "boolean" + }, "isActionConfigured": { "description": "Output only. The connector contains the necessary parameters and is configured to support actions.", "readOnly": true, @@ -16892,6 +17541,27 @@ "useStaticSecrets": { "description": "Optional. Whether to use static secrets for the connector. If true, the secrets provided in the action_params will be ignored.", "type": "boolean" + }, + "userDefinedScopesMapping": { + "additionalProperties": { + "$ref": "GoogleCloudDiscoveryengineV1alphaActionConfigScopeList" + }, + "description": "Optional. Mapping from operation name to the list of scopes. Only be populated if there are user specified scopes.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaActionConfigScopeList": { + "description": "Stores a list of scopes.", + "id": "GoogleCloudDiscoveryengineV1alphaActionConfigScopeList", + "properties": { + "scopes": { + "description": "Optional. The list of scopes.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -17322,6 +17992,10 @@ "description": "Identifier. Resource name of the agent. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}/agents/{agent}`", "type": "string" }, + "observabilityConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaObservabilityConfig", + "description": "Optional. Observability config for the agent." + }, "rejectionReason": { "description": "Output only. The reason why the agent was rejected. Only set if the state is PRIVATE, and got there via rejection.", "readOnly": true, @@ -17348,7 +18022,8 @@ "DEPLOYMENT_FAILED", "PRIVATE", "ENABLED", - "SUSPENDED" + "SUSPENDED", + "CREATING" ], "enumDescriptions": [ "The state is unspecified.", @@ -17358,7 +18033,8 @@ "The agent deployment failed.", "Agent is available only to its creator..", "Agent is available for users who have access.", - "Agent is temporarily unavailable, though visible to users who have access." + "Agent is temporarily unavailable, though visible to users who have access.", + "Agent is being created." ], "readOnly": true, "type": "string" @@ -17396,6 +18072,28 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting": { + "description": "Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise.", + "id": "GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting", + "properties": { + "defaultEgressAgentGateway": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference", + "description": "Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference": { + "description": "Reference to an Agent Gateway resource.", + "id": "GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference", + "properties": { + "name": { + "description": "Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number}/locations/{location}/agentGateways/{agent_gateway}`.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaAgentImage": { "description": "Represents an image.", "id": "GoogleCloudDiscoveryengineV1alphaAgentImage", @@ -17641,10 +18339,11 @@ "type": "string" }, "blobAttachments": { - "description": "List of blob attachments in the answer.", + "description": "Output only. List of blob attachments in the answer.", "items": { "$ref": "GoogleCloudDiscoveryengineV1alphaAnswerBlobAttachment" }, + "readOnly": true, "type": "array" }, "citations": { @@ -18316,7 +19015,7 @@ }, "customFineTuningSpec": { "$ref": "GoogleCloudDiscoveryengineV1alphaCustomFineTuningSpec", - "description": "Custom fine tuning configs." + "description": "Optional. Custom fine tuning configs." }, "dataStoreSpecs": { "description": "Specs defining dataStores to filter on in a search call and configurations for those dataStores. This is only considered for engines with multiple dataStores use case. For single dataStore within an engine, they should use the specs at the top level.", @@ -19033,6 +19732,11 @@ "description": "One part of the multi-part response of the assist call.", "id": "GoogleCloudDiscoveryengineV1alphaAssistAnswerReply", "properties": { + "createTime": { + "description": "The time when the reply was created.", + "format": "google-datetime", + "type": "string" + }, "groundedContent": { "$ref": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContent", "description": "Possibly grounded response text or media from the assistant." @@ -19064,6 +19768,12 @@ "description": "Discovery Engine Assistant resource.", "id": "GoogleCloudDiscoveryengineV1alphaAssistant", "properties": { + "createTime": { + "description": "Output only. Represents the time when this Assistant was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "customerPolicy": { "$ref": "GoogleCloudDiscoveryengineV1alphaAssistantCustomerPolicy", "description": "Optional. Customer policy for the assistant." @@ -19099,6 +19809,12 @@ "description": "Immutable. Resource name of the assistant. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}` It must be a UTF-8 encoded string with a length limit of 1024 characters.", "type": "string" }, + "updateTime": { + "description": "Output only. Represents the time when this Assistant was most recently updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "webGroundingType": { "description": "Optional. The type of web grounding to use.", "enum": [ @@ -19371,6 +20087,13 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataSegment" }, "type": "array" + }, + "visualSegments": { + "description": "Grounding information for parts of the visual content.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment" + }, + "type": "array" } }, "type": "object" @@ -19379,6 +20102,10 @@ "description": "Referenced content and related document metadata.", "id": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataReference", "properties": { + "codeSnippet": { + "description": "Chunk of code snippet from the referenced document.", + "type": "string" + }, "content": { "description": "Referenced text content.", "type": "string" @@ -19402,6 +20129,19 @@ "description": "Domain name from the document URI. Note that the `uri` field may contain a URL that redirects to the actual website, in which case this will contain the domain name of the target site.", "type": "string" }, + "language": { + "enum": [ + "LANGUAGE_UNSPECIFIED", + "PYTHON", + "SQL" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, "mimeType": { "description": "The mime type of the document. https://www.iana.org/assignments/media-types/media-types.xhtml.", "type": "string" @@ -19455,6 +20195,25 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment": { + "description": "Grounding information for a visual segment.", + "id": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment", + "properties": { + "contentId": { + "description": "The content id of the visual segment. In order to display the citation of the visual element, this content_id needs to match with the `grounded_content.content_metadata.content_id` field.", + "type": "string" + }, + "referenceIndices": { + "description": "References for the visual segment.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaAssistantToolInfo": { "description": "Information to identify a tool.", "id": "GoogleCloudDiscoveryengineV1alphaAssistantToolInfo", @@ -20701,6 +21460,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaCliConfig": { + "description": "The configuration for the CLI execution based connectors.", + "id": "GoogleCloudDiscoveryengineV1alphaCliConfig", + "properties": { + "enabledActions": { + "description": "Optional. The actions enabled on the associated CLI connection.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaCloudSqlSource": { "description": "Cloud SQL source import data from.", "id": "GoogleCloudDiscoveryengineV1alphaCloudSqlSource", @@ -21920,6 +22693,10 @@ "readOnly": true, "type": "array" }, + "cliConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaCliConfig", + "description": "Optional. The configuration for establishing a CLI connection." + }, "connectorModes": { "description": "Optional. The modes enabled for this connector. Default state is CONNECTOR_MODE_UNSPECIFIED.", "items": { @@ -21997,7 +22774,7 @@ "description": "Optional. Specifies the data protection policy for the connector." }, "dataSource": { - "description": "Required. The name of the data source. Supported values: `salesforce`, `jira`, `confluence`, `bigquery`.", + "description": "Required. The identifier for the data source. This is a partial list of supported connectors. Please refer to the [documentation](https://docs.cloud.google.com/gemini/enterprise/docs/connectors/introduction-to-connectors-and-data-stores) for the full list of connectors. Supported first-party connectors include: * `gcs` * `bigquery` * `gcp_fhir` * `google_mail` * `google_drive` * `google_calendar` * `google_chat` Supported third-party connectors include: Generally available (GA) connectors: * `onedrive` * `outlook` * `confluence` * `jira` * `servicenow` * `sharepoint` Preview connectors: * `asana` * `azure_active_directory` * `box` * `canva` * `confluence_server` * `custom_connector` * `docusign` * `dropbox` * `dynamics365` * `github` * `gitlab` * `hubspot` * `jira_server` * `linear` * `native_cloud_identity` * `notion` * `okta` * `pagerduty` * `peoplesoft` * `salesforce` * `shopify` * `slack` * `snowflake` * `teams` * `trello` * `workday` * `zendesk`", "type": "string" }, "destinationConfigs": { @@ -22007,8 +22784,16 @@ }, "type": "array" }, + "dynamicTools": { + "description": "Output only. The dynamic tools fetched for this connector.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDynamicTool" + }, + "readOnly": true, + "type": "array" + }, "egressFqdns": { - "description": "Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. Note: This field is derived from both the DataConnector.params, and connector source spec. It should only be used for CAIS and Org Policy evaluation purposes.", + "description": "Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs.", "items": { "type": "string" }, @@ -22082,8 +22867,7 @@ "type": "string" }, "name": { - "description": "Output only. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", - "readOnly": true, + "description": "Identifier. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", "type": "string" }, "nextSyncTime": { @@ -22202,7 +22986,7 @@ "type": "string" }, "vpcscEnabled": { - "description": "Output only. Whether the connector is created with VPC-SC enabled. This is only used for CuOP evaluation purpose.", + "description": "Output only. Whether the connector is created with VPC-SC enabled.", "readOnly": true, "type": "boolean" } @@ -22357,12 +23141,12 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy": { - "description": "Data protection policy config for a connector.", + "description": "Contains the data protection policy config for a DataStore or a connector.", "id": "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy", "properties": { "sensitiveDataProtectionPolicy": { "$ref": "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicySensitiveDataProtectionPolicy", - "description": "Optional. The sensitive data protection policy for the connector source." + "description": "Optional. Specifies the sensitive data protection policy for the connector source." } }, "type": "object" @@ -22372,7 +23156,7 @@ "id": "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicySensitiveDataProtectionPolicy", "properties": { "policy": { - "description": "Optional. The Sensitive Data Protection content policy resource name.", + "description": "Optional. Specifies the resource name of the Sensitive Data Protection content policy.", "type": "string" } }, @@ -22444,6 +23228,10 @@ "readOnly": true, "type": "string" }, + "dataProtectionPolicy": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy", + "description": "Optional. Specifies the data protection policy for the data store." + }, "defaultSchemaId": { "description": "Output only. The id of the default Schema associated to this data store.", "readOnly": true, @@ -22457,6 +23245,10 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaDocumentProcessingConfig", "description": "Configuration for Document understanding and enrichment." }, + "federatedSearchConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig", + "description": "Optional. If set, this DataStore is a federated search DataStore." + }, "healthcareFhirConfig": { "$ref": "GoogleCloudDiscoveryengineV1alphaHealthcareFhirConfig", "description": "Optional. Configuration for `HEALTHCARE_FHIR` vertical." @@ -22581,6 +23373,125 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig": { + "description": "Stores information for federated search.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig", + "properties": { + "alloyDbConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig", + "description": "AlloyDB config. If set, this DataStore is connected to AlloyDB." + }, + "notebooklmConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig", + "description": "NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise." + }, + "thirdPartyOauthConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig", + "description": "Third Party OAuth config. If set, this DataStore is connected to a third party application." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig": { + "description": "Stores information for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig", + "properties": { + "alloydbAiNlConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "description": "Optional. Configuration for Magic." + }, + "alloydbConnectionConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "description": "Required. Configuration for connecting to AlloyDB." + }, + "returnedFields": { + "description": "Optional. Fields to be returned in the search results. If empty, all fields will be returned.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig": { + "description": "Configuration for AlloyDB AI Natural Language.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "properties": { + "nlConfigId": { + "description": "Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig": { + "description": "Configuration for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "properties": { + "authMode": { + "description": "Optional. Auth mode.", + "enum": [ + "AUTH_MODE_UNSPECIFIED", + "AUTH_MODE_SERVICE_ACCOUNT", + "AUTH_MODE_END_USER_ACCOUNT" + ], + "enumDescriptions": [ + "", + "Uses P4SA when VAIS talks to AlloyDB.", + "Uses EUC when VAIS talks to AlloyDB." + ], + "type": "string" + }, + "database": { + "description": "Required. The AlloyDB database to connect to.", + "type": "string" + }, + "enablePsvs": { + "description": "Optional. If true, enable PSVS for AlloyDB.", + "type": "boolean" + }, + "instance": { + "description": "Required. The AlloyDB instance to connect to.", + "type": "string" + }, + "password": { + "description": "Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + }, + "user": { + "description": "Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig": { + "description": "Config for connecting to NotebookLM Enterprise.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig", + "properties": { + "searchConfig": { + "description": "Required. Search config name. Format: projects/*/locations/global/notebookLmSearchConfigs/*", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig": { + "description": "Stores information for third party applicationOAuth.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig", + "properties": { + "appName": { + "description": "Optional. The type of the application. E.g., \"jira\", \"box\", etc.", + "type": "string" + }, + "instanceName": { + "description": "Optional. The instance name identifying the 3P app, e.g., \"vaissptbots-my\". This is different from the instance_uri which is the full URL of the 3P app e.g., \"https://vaissptbots-my.sharepoint.com\".", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaDataStoreServingConfigDataStore": { "description": "Stores information regarding the serving configurations at DataStore level.", "id": "GoogleCloudDiscoveryengineV1alphaDataStoreServingConfigDataStore", @@ -22960,7 +23871,7 @@ "readOnly": true }, "indexTime": { - "description": "Output only. The last time the document was indexed. If this field is set, the document could be returned in search results. This field is OUTPUT_ONLY. If this field is not populated, it means the document has never been indexed.", + "description": "Output only. The time when the document was last indexed. If this field is populated, it means the document has been indexed. While documents typically become searchable within seconds of indexing, it can sometimes take up to a few hours. If this field is not populated, it means the document has never been indexed.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -23056,7 +23967,7 @@ "type": "array" }, "indexTime": { - "description": "The time when the document was indexed. If this field is populated, it means the document has been indexed.", + "description": "The time when the document was indexed. If this field is populated, it means the document has been indexed. While documents typically become searchable within seconds of indexing, it can sometimes take up to a few hours.", "format": "google-datetime", "type": "string" }, @@ -23271,6 +24182,29 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaDynamicTool": { + "description": "Configuration for dynamic tools.", + "id": "GoogleCloudDiscoveryengineV1alphaDynamicTool", + "properties": { + "description": { + "description": "Optional. The description of the tool.", + "type": "string" + }, + "displayName": { + "description": "Optional. The display name of the tool.", + "type": "string" + }, + "enabled": { + "description": "Optional. Whether the tool is enabled.", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the tool.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaEmbeddingConfig": { "description": "Defines embedding config, used for bring your own embeddings feature.", "id": "GoogleCloudDiscoveryengineV1alphaEmbeddingConfig", @@ -23315,6 +24249,10 @@ "description": "Metadata that describes the training and serving parameters of an Engine.", "id": "GoogleCloudDiscoveryengineV1alphaEngine", "properties": { + "agentGatewaySetting": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting", + "description": "Optional. The agent gateway setting for the engine." + }, "appType": { "description": "Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type.", "enum": [ @@ -23399,7 +24337,7 @@ ], "type": "string" }, - "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails`", + "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills`", "type": "object" }, "industryVertical": { @@ -23469,9 +24407,12 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaObservabilityConfig", "description": "Optional. Observability config for the engine." }, - "procurementContactEmail": { - "description": "Optional. The email of the procurement contact.", - "type": "string" + "procurementContactEmails": { + "description": "Optional. The emails of the procurement contacts.", + "items": { + "type": "string" + }, + "type": "array" }, "recommendationMetadata": { "$ref": "GoogleCloudDiscoveryengineV1alphaEngineRecommendationMetadata", @@ -24377,6 +25318,26 @@ }, "type": "array" }, + "searchableFieldImportance": { + "description": "Optional. Specifies the importance of the field when `searchable_option` is `SEARCHABLE_ENABLED`. If `searchable_option` is `SEARCHABLE_DISABLED`, this field is ignored. If `searchable_option` is `SEARCHABLE_ENABLED` and this is `SEARCHABLE_FIELD_IMPORTANCE_UNSPECIFIED`, it behaves as `DEFAULT_IMPORTANCE`.", + "enum": [ + "SEARCHABLE_FIELD_IMPORTANCE_UNSPECIFIED", + "VERY_LOW_IMPORTANCE", + "LOW_IMPORTANCE", + "DEFAULT_IMPORTANCE", + "HIGH_IMPORTANCE", + "VERY_HIGH_IMPORTANCE" + ], + "enumDescriptions": [ + "Value used when unset. Behaves as `DEFAULT_IMPORTANCE` if the field is searchable.", + "Provides a tiny signal for search.", + "Indicates the field is used for search, but is less important than the default.", + "Default importance. Equivalent to previous behavior.", + "More important than default fields.", + "Most important field for search." + ], + "type": "string" + }, "searchableOption": { "description": "If searchable_option is SEARCHABLE_ENABLED, field values are searchable by text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is numerical, field values will not be searchable by text queries in SearchService.Search, as there are no text values associated to numerical fields. If searchable_option is unset, the server behavior defaults to SEARCHABLE_DISABLED for fields that support setting searchable options. Only `string` fields that have no key property mapping support setting searchable_option. For those fields that do not support setting searchable options, the server will skip searchable option setting, and setting searchable_option for those fields will throw `INVALID_ARGUMENT` error.", "enum": [ @@ -25367,8 +26328,9 @@ "type": "string" }, "updateTime": { - "description": "Operation last update time. If the operation is done, this is also the finish time.", + "description": "Output only. Operation last update time. If the operation is done, this is also the finish time.", "format": "google-datetime", + "readOnly": true, "type": "string" } }, @@ -26239,11 +27201,11 @@ "id": "GoogleCloudDiscoveryengineV1alphaObservabilityConfig", "properties": { "observabilityEnabled": { - "description": "Optional. Enables observability. If false, all other flags are ignored.", + "description": "Optional. Enables observability. If `false`, all other flags are ignored.", "type": "boolean" }, "sensitiveLoggingEnabled": { - "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields.", + "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields.", "type": "boolean" } }, @@ -26484,7 +27446,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus": { - "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month).", + "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation.", "id": "GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus", "properties": { "effectiveIndexingCoreThreshold": { @@ -26519,6 +27481,25 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "updateType": { + "description": "Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject.", + "enum": [ + "UPDATE_TYPE_UNSPECIFIED", + "CREATE", + "DELETE", + "SCALE_UP", + "SCALE_DOWN" + ], + "enumDescriptions": [ + "Unspecified update type.", + "Configurable billing was created/enabled.", + "Configurable billing was deleted/disabled.", + "Subscription was scaled up (thresholds increased).", + "Subscription was scaled down (thresholds decreased)." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -27290,7 +28271,7 @@ "type": "string" }, "score": { - "description": "The score of this record based on the given query and selected model. The score will be rounded to 2 decimal places. If the score is close to 0, it will be rounded to 0.0001 to avoid returning unset.", + "description": "The score of this record based on the given query and selected model. The score will be rounded to 4 decimal places. If the score is close to 0, it will be rounded to 0.00001 to avoid returning unset.", "format": "float", "type": "number" }, @@ -28220,6 +29201,10 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaCustomFineTuningSpec", "description": "Custom fine tuning configs. If set, it has higher priority than the configs set in ServingConfig.custom_fine_tuning_spec." }, + "customRankingParams": { + "$ref": "GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams", + "description": "Optional. Optional configuration for the Custom Ranking feature." + }, "dataStoreSpecs": { "description": "Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used.", "items": { @@ -28235,6 +29220,10 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaSearchRequestEmbeddingSpec", "description": "Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.EmbeddingSpec.EmbeddingVector.vector and the document embedding that is provided in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path. If SearchRequest.EmbeddingSpec.EmbeddingVector.field_path is not provided, it will use ServingConfig.EmbeddingConfig.field_path." }, + "entity": { + "description": "Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, \"Google US\", \"Google Ads\", \"Waymo\", \"google.com\", \"youtube.com\", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity.", + "type": "string" + }, "facetSpecs": { "description": "Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned.", "items": { @@ -28388,7 +29377,7 @@ "type": "string" }, "session": { - "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call.", "type": "string" }, "sessionSpec": { @@ -28749,6 +29738,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams": { + "description": "Configuration parameters for the Custom Ranking feature.", + "id": "GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams", + "properties": { + "expressionsToPrecompute": { + "description": "Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaSearchRequestDataStoreSpec": { "description": "A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned.", "id": "GoogleCloudDiscoveryengineV1alphaSearchRequestDataStoreSpec", @@ -28956,7 +29959,7 @@ "type": "string" }, "geoSearchQueryDetectionFieldNames": { - "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names.", + "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`.", "items": { "type": "string" }, @@ -29110,7 +30113,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1alphaSearchRequestSessionSpec": { - "description": "Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "Session specification.", "id": "GoogleCloudDiscoveryengineV1alphaSearchRequestSessionSpec", "properties": { "queryId": { @@ -29647,6 +30650,14 @@ "format": "float", "type": "number" }, + "precomputedExpressionValues": { + "description": "Optional. A list of precomputed expression results for a given document, in the same order as requested in `SearchRequest.custom_ranking_params.expressions_to_precompute`.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, "relevanceScore": { "description": "Optional. Semantic relevance adjustment.", "format": "float", @@ -30216,6 +31227,10 @@ "description": "Output only. In ConversationalSearchService.GetSession API, if GetSessionRequest.include_answer_details is set to true, this field will be populated when getting assistant session.", "readOnly": true }, + "live": { + "description": "Optional. Indicates whether this turn is a live turn.", + "type": "boolean" + }, "query": { "$ref": "GoogleCloudDiscoveryengineV1alphaQuery", "description": "Optional. The user query. May not be set if this turn is merely regenerating an answer to a different turn" @@ -30332,7 +31347,7 @@ "type": "string" }, "collectionId": { - "description": "Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. Should conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", "type": "string" }, "dataConnector": { @@ -31123,6 +32138,10 @@ "description": "The Engine resource name, in the form of `projects/{project}/locations/{location}/collections/{collection_id}/engines/{engine_id}`. Optional. Only required for Engine produced user events. For example, user events from blended search.", "type": "string" }, + "entity": { + "description": "Optional. Represents the entity for customers that may run multiple different entities, domains, sites or regions, for example, `Google US`, `Google Ads`, `Waymo`, `google.com`, `youtube.com`, etc. We recommend that you set `entity` to get better per-entity search, completion, and prediction results.", + "type": "string" + }, "eventTime": { "description": "Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.", "format": "google-datetime", @@ -31196,6 +32215,10 @@ "description": "Information of an end user.", "id": "GoogleCloudDiscoveryengineV1alphaUserInfo", "properties": { + "preciseLocation": { + "$ref": "GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation", + "description": "Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents." + }, "timeZone": { "description": "Optional. IANA time zone, e.g. Europe/Budapest.", "type": "string" @@ -31205,12 +32228,27 @@ "type": "string" }, "userId": { - "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", + "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded.", "type": "string" } }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation": { + "description": "Precise location info with multiple representation options. Currently only latitude and longitude point is supported.", + "id": "GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation", + "properties": { + "address": { + "description": "Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon.", + "type": "string" + }, + "point": { + "$ref": "GoogleTypeLatLng", + "description": "Optional. Location represented by a latitude/longitude point." + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaUserLicense": { "description": "User License information assigned by the admin.", "id": "GoogleCloudDiscoveryengineV1alphaUserLicense", @@ -32076,7 +33114,7 @@ ], "type": "string" }, - "description": "Output only. Feature config for the engine to opt in or opt out of features. Supported keys: * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails`", + "description": "Output only. Feature config for the engine to opt in or opt out of features. Supported keys: * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills`", "readOnly": true, "type": "object" }, @@ -32305,6 +33343,28 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaAgentGatewaySetting": { + "description": "Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise.", + "id": "GoogleCloudDiscoveryengineV1betaAgentGatewaySetting", + "properties": { + "defaultEgressAgentGateway": { + "$ref": "GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference", + "description": "Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference": { + "description": "Reference to an Agent Gateway resource.", + "id": "GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference", + "properties": { + "name": { + "description": "Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number}/locations/{location}/agentGateways/{agent_gateway}`.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaBatchCreateTargetSiteMetadata": { "description": "Metadata related to the progress of the SiteSearchEngineService.BatchCreateTargetSites operation. This will be returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1betaBatchCreateTargetSiteMetadata", @@ -32938,6 +33998,10 @@ "$ref": "GoogleCloudDiscoveryengineV1betaDocumentProcessingConfig", "description": "Configuration for Document understanding and enrichment." }, + "federatedSearchConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig", + "description": "Optional. If set, this DataStore is a federated search DataStore." + }, "healthcareFhirConfig": { "$ref": "GoogleCloudDiscoveryengineV1betaHealthcareFhirConfig", "description": "Optional. Configuration for `HEALTHCARE_FHIR` vertical." @@ -33057,6 +34121,125 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig": { + "description": "Stores information for federated search.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig", + "properties": { + "alloyDbConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig", + "description": "AlloyDB config. If set, this DataStore is connected to AlloyDB." + }, + "notebooklmConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig", + "description": "NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise." + }, + "thirdPartyOauthConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig", + "description": "Third Party OAuth config. If set, this DataStore is connected to a third party application." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig": { + "description": "Stores information for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig", + "properties": { + "alloydbAiNlConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "description": "Optional. Configuration for Magic." + }, + "alloydbConnectionConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "description": "Required. Configuration for connecting to AlloyDB." + }, + "returnedFields": { + "description": "Optional. Fields to be returned in the search results. If empty, all fields will be returned.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig": { + "description": "Configuration for AlloyDB AI Natural Language.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "properties": { + "nlConfigId": { + "description": "Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig": { + "description": "Configuration for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "properties": { + "authMode": { + "description": "Optional. Auth mode.", + "enum": [ + "AUTH_MODE_UNSPECIFIED", + "AUTH_MODE_SERVICE_ACCOUNT", + "AUTH_MODE_END_USER_ACCOUNT" + ], + "enumDescriptions": [ + "", + "Uses P4SA when VAIS talks to AlloyDB.", + "Uses EUC when VAIS talks to AlloyDB." + ], + "type": "string" + }, + "database": { + "description": "Required. The AlloyDB database to connect to.", + "type": "string" + }, + "enablePsvs": { + "description": "Optional. If true, enable PSVS for AlloyDB.", + "type": "boolean" + }, + "instance": { + "description": "Required. The AlloyDB instance to connect to.", + "type": "string" + }, + "password": { + "description": "Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + }, + "user": { + "description": "Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig": { + "description": "Config for connecting to NotebookLM Enterprise.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig", + "properties": { + "searchConfig": { + "description": "Required. Search config name. Format: projects/*/locations/global/notebookLmSearchConfigs/*", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig": { + "description": "Stores information for third party applicationOAuth.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig", + "properties": { + "appName": { + "description": "Optional. The type of the application. E.g., \"jira\", \"box\", etc.", + "type": "string" + }, + "instanceName": { + "description": "Optional. The instance name identifying the 3P app, e.g., \"vaissptbots-my\". This is different from the instance_uri which is the full URL of the 3P app e.g., \"https://vaissptbots-my.sharepoint.com\".", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaDataStoreServingConfigDataStore": { "description": "Stores information regarding the serving configurations at DataStore level.", "id": "GoogleCloudDiscoveryengineV1betaDataStoreServingConfigDataStore", @@ -33391,6 +34574,10 @@ "description": "Metadata that describes the training and serving parameters of an Engine.", "id": "GoogleCloudDiscoveryengineV1betaEngine", "properties": { + "agentGatewaySetting": { + "$ref": "GoogleCloudDiscoveryengineV1betaAgentGatewaySetting", + "description": "Optional. The agent gateway setting for the engine." + }, "appType": { "description": "Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type.", "enum": [ @@ -33475,7 +34662,7 @@ ], "type": "string" }, - "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails`", + "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills`", "type": "object" }, "industryVertical": { @@ -33545,9 +34732,12 @@ "$ref": "GoogleCloudDiscoveryengineV1betaObservabilityConfig", "description": "Optional. Observability config for the engine." }, - "procurementContactEmail": { - "description": "Optional. The email of the procurement contact.", - "type": "string" + "procurementContactEmails": { + "description": "Optional. The emails of the procurement contacts.", + "items": { + "type": "string" + }, + "type": "array" }, "searchEngineConfig": { "$ref": "GoogleCloudDiscoveryengineV1betaEngineSearchEngineConfig", @@ -34266,8 +35456,9 @@ "type": "string" }, "updateTime": { - "description": "Operation last update time. If the operation is done, this is also the finish time.", + "description": "Output only. Operation last update time. If the operation is done, this is also the finish time.", "format": "google-datetime", + "readOnly": true, "type": "string" } }, @@ -34502,11 +35693,11 @@ "id": "GoogleCloudDiscoveryengineV1betaObservabilityConfig", "properties": { "observabilityEnabled": { - "description": "Optional. Enables observability. If false, all other flags are ignored.", + "description": "Optional. Enables observability. If `false`, all other flags are ignored.", "type": "boolean" }, "sensitiveLoggingEnabled": { - "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields.", + "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields.", "type": "boolean" } }, @@ -34603,7 +35794,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus": { - "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month).", + "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation.", "id": "GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus", "properties": { "effectiveIndexingCoreThreshold": { @@ -34638,6 +35829,25 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "updateType": { + "description": "Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject.", + "enum": [ + "UPDATE_TYPE_UNSPECIFIED", + "CREATE", + "DELETE", + "SCALE_UP", + "SCALE_DOWN" + ], + "enumDescriptions": [ + "Unspecified update type.", + "Configurable billing was created/enabled.", + "Configurable billing was deleted/disabled.", + "Subscription was scaled up (thresholds increased).", + "Subscription was scaled down (thresholds decreased)." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -35025,6 +36235,10 @@ }, "type": "array" }, + "customRankingParams": { + "$ref": "GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams", + "description": "Optional. Optional configuration for the Custom Ranking feature." + }, "dataStoreSpecs": { "description": "Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used.", "items": { @@ -35040,6 +36254,10 @@ "$ref": "GoogleCloudDiscoveryengineV1betaSearchRequestEmbeddingSpec", "description": "Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.EmbeddingSpec.EmbeddingVector.vector and the document embedding that is provided in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path. If SearchRequest.EmbeddingSpec.EmbeddingVector.field_path is not provided, it will use ServingConfig.EmbeddingConfig.field_path." }, + "entity": { + "description": "Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, \"Google US\", \"Google Ads\", \"Waymo\", \"google.com\", \"youtube.com\", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity.", + "type": "string" + }, "facetSpecs": { "description": "Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned.", "items": { @@ -35193,7 +36411,7 @@ "type": "string" }, "session": { - "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call.", "type": "string" }, "sessionSpec": { @@ -35550,6 +36768,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams": { + "description": "Configuration parameters for the Custom Ranking feature.", + "id": "GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams", + "properties": { + "expressionsToPrecompute": { + "description": "Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaSearchRequestDataStoreSpec": { "description": "A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned.", "id": "GoogleCloudDiscoveryengineV1betaSearchRequestDataStoreSpec", @@ -35757,7 +36989,7 @@ "type": "string" }, "geoSearchQueryDetectionFieldNames": { - "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names.", + "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`.", "items": { "type": "string" }, @@ -35911,7 +37143,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1betaSearchRequestSessionSpec": { - "description": "Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "Session specification.", "id": "GoogleCloudDiscoveryengineV1betaSearchRequestSessionSpec", "properties": { "queryId": { @@ -36263,6 +37495,10 @@ "description": "Information of an end user.", "id": "GoogleCloudDiscoveryengineV1betaUserInfo", "properties": { + "preciseLocation": { + "$ref": "GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation", + "description": "Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents." + }, "timeZone": { "description": "Optional. IANA time zone, e.g. Europe/Budapest.", "type": "string" @@ -36272,8 +37508,23 @@ "type": "string" }, "userId": { - "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", + "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation": { + "description": "Precise location info with multiple representation options. Currently only latitude and longitude point is supported.", + "id": "GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation", + "properties": { + "address": { + "description": "Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon.", "type": "string" + }, + "point": { + "$ref": "GoogleTypeLatLng", + "description": "Optional. Location represented by a latitude/longitude point." } }, "type": "object" @@ -37588,6 +38839,23 @@ }, "type": "object" }, + "GoogleTypeLatLng": { + "description": "An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges.", + "id": "GoogleTypeLatLng", + "properties": { + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, "GoogleTypeTimeZone": { "description": "Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones).", "id": "GoogleTypeTimeZone", diff --git a/discovery/discoveryengine-v1beta.json b/discovery/discoveryengine-v1beta.json index dfee22f89b6..7e485eb2b88 100644 --- a/discovery/discoveryengine-v1beta.json +++ b/discovery/discoveryengine-v1beta.json @@ -13,6 +13,9 @@ }, "https://www.googleapis.com/auth/discoveryengine.readwrite": { "description": "View, edit, create, and delete all your data associated with any Discovery Engine API product, such as Agentspace, Vertex AI Search, or NotebookLM Enterprise, including both end user data and administration or configuration data." + }, + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite": { + "description": "Interact with Discovery Engine API products, such as Agentspace, Vertex AI Search, or NotebookLM Enterprise, on your behalf. It will also allow the app to view all data that you have access to when you use or interact with a Discovery Engine API product." } } } @@ -141,6 +144,74 @@ }, "protocol": "rest", "resources": { + "billingAccounts": { + "resources": { + "billingAccountLicenseConfigs": { + "methods": { + "distributeLicenseConfig": { + "description": "Distributes a LicenseConfig from billing account level to project level.", + "flatPath": "v1beta/billingAccounts/{billingAccountsId}/billingAccountLicenseConfigs/{billingAccountLicenseConfigsId}:distributeLicenseConfig", + "httpMethod": "POST", + "id": "discoveryengine.billingAccounts.billingAccountLicenseConfigs.distributeLicenseConfig", + "parameterOrder": [ + "billingAccountLicenseConfig" + ], + "parameters": { + "billingAccountLicenseConfig": { + "description": "Required. Full resource name of BillingAccountLicenseConfig. Format: `billingAccounts/{billing_account}/billingAccountLicenseConfigs/{billing_account_license_config_id}`.", + "location": "path", + "pattern": "^billingAccounts/[^/]+/billingAccountLicenseConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+billingAccountLicenseConfig}:distributeLicenseConfig", + "request": { + "$ref": "GoogleCloudDiscoveryengineV1betaDistributeLicenseConfigRequest" + }, + "response": { + "$ref": "GoogleCloudDiscoveryengineV1betaDistributeLicenseConfigResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + }, + "retractLicenseConfig": { + "description": "This method is called from the billing account side to retract the LicenseConfig from the given project back to the billing account.", + "flatPath": "v1beta/billingAccounts/{billingAccountsId}/billingAccountLicenseConfigs/{billingAccountLicenseConfigsId}:retractLicenseConfig", + "httpMethod": "POST", + "id": "discoveryengine.billingAccounts.billingAccountLicenseConfigs.retractLicenseConfig", + "parameterOrder": [ + "billingAccountLicenseConfig" + ], + "parameters": { + "billingAccountLicenseConfig": { + "description": "Required. Full resource name of BillingAccountLicenseConfig. Format: `billingAccounts/{billing_account}/billingAccountLicenseConfigs/{billing_account_license_config_id}`.", + "location": "path", + "pattern": "^billingAccounts/[^/]+/billingAccountLicenseConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+billingAccountLicenseConfig}:retractLicenseConfig", + "request": { + "$ref": "GoogleCloudDiscoveryengineV1betaRetractLicenseConfigRequest" + }, + "response": { + "$ref": "GoogleCloudDiscoveryengineV1betaRetractLicenseConfigResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" + ] + } + } + } + } + }, "projects": { "methods": { "provision": { @@ -169,7 +240,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -199,7 +271,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getCmekConfig": { @@ -225,7 +298,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "obtainCrawlRate": { @@ -254,7 +328,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "removeDedicatedCrawlRate": { @@ -283,7 +358,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "setDedicatedCrawlRate": { @@ -312,7 +388,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "updateAclConfig": { @@ -341,7 +418,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "updateCmekConfig": { @@ -375,7 +453,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -405,7 +484,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -431,7 +511,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -457,7 +538,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -491,7 +573,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -525,7 +608,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -572,7 +656,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -625,7 +710,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -679,7 +765,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -705,7 +792,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -731,7 +819,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getSiteSearchEngine": { @@ -757,7 +846,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -799,7 +889,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -834,7 +925,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "trainCustomModel": { @@ -863,7 +955,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -905,7 +998,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -943,7 +1037,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -969,7 +1064,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -995,7 +1091,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -1024,7 +1121,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1061,7 +1159,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -1101,7 +1200,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -1130,7 +1230,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1163,7 +1264,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -1189,7 +1291,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1236,7 +1339,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1273,7 +1377,8 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud_search.query", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1307,7 +1412,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -1337,7 +1443,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1375,7 +1482,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -1401,7 +1509,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -1427,7 +1536,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1469,7 +1579,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -1504,7 +1615,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1537,7 +1649,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -1566,7 +1679,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -1592,7 +1706,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -1618,7 +1733,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1665,7 +1781,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -1700,7 +1817,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1730,7 +1848,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1762,7 +1881,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1809,7 +1929,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1841,7 +1962,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -1888,7 +2010,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -1926,7 +2049,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -1952,7 +2076,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -1978,7 +2103,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2015,7 +2141,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -2049,7 +2176,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -2079,7 +2207,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2126,7 +2255,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2145,7 +2275,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -2161,7 +2291,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -2195,7 +2326,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -2221,7 +2353,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -2247,7 +2380,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2284,7 +2418,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -2319,7 +2454,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recommend": { @@ -2348,7 +2484,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "search": { @@ -2378,7 +2515,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "searchLite": { @@ -2408,7 +2546,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "streamAnswer": { @@ -2421,7 +2560,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -2437,7 +2576,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2459,6 +2599,11 @@ "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+$", "required": true, "type": "string" + }, + "sessionId": { + "description": "Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61}[a-z0-9]/. If not specified, a unique ID will be generated.", + "location": "query", + "type": "string" } }, "path": "v1beta/{+parent}/sessions", @@ -2471,7 +2616,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -2498,7 +2644,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -2530,7 +2677,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2578,7 +2726,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -2614,7 +2763,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -2644,7 +2794,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2679,7 +2830,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "disableAdvancedSiteSearch": { @@ -2708,7 +2860,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "enableAdvancedSiteSearch": { @@ -2737,7 +2890,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "fetchDomainVerificationStatus": { @@ -2774,7 +2928,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recrawlUris": { @@ -2803,7 +2958,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -2833,7 +2989,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -2880,7 +3037,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -2913,7 +3071,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -2939,7 +3098,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "fetch": { @@ -2971,7 +3131,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3004,7 +3165,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -3033,7 +3195,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -3059,7 +3222,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -3085,7 +3249,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3122,7 +3287,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -3151,7 +3317,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -3181,7 +3348,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3228,7 +3396,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3266,7 +3435,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -3296,7 +3466,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3343,7 +3514,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -3373,7 +3545,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -3403,7 +3576,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "write": { @@ -3438,7 +3612,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -3478,7 +3653,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -3504,7 +3680,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -3530,7 +3707,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getIamPolicy": { @@ -3562,7 +3740,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3604,7 +3783,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -3639,7 +3819,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "pause": { @@ -3668,7 +3849,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "resume": { @@ -3697,7 +3879,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "setIamPolicy": { @@ -3726,7 +3909,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "tune": { @@ -3755,7 +3939,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -3794,7 +3979,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -3821,7 +4007,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -3848,7 +4035,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -3886,7 +4074,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -3922,7 +4111,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "streamAssist": { @@ -3952,7 +4142,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -3984,7 +4175,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4023,7 +4215,8 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud_search.query", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "removeSuggestion": { @@ -4053,7 +4246,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4091,7 +4285,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -4117,7 +4312,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -4143,7 +4339,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -4185,7 +4382,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -4220,7 +4418,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4253,7 +4452,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -4282,7 +4482,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -4308,7 +4509,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -4334,7 +4536,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -4381,7 +4584,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -4416,7 +4620,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4446,7 +4651,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -4493,7 +4699,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4510,7 +4717,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -4526,7 +4733,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -4560,7 +4768,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -4586,7 +4795,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -4612,7 +4822,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -4649,7 +4860,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -4684,7 +4896,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recommend": { @@ -4713,7 +4926,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "search": { @@ -4743,7 +4957,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "searchLite": { @@ -4773,7 +4988,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "streamAnswer": { @@ -4786,7 +5002,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -4802,7 +5018,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -4824,6 +5041,11 @@ "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/engines/[^/]+$", "required": true, "type": "string" + }, + "sessionId": { + "description": "Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61}[a-z0-9]/. If not specified, a unique ID will be generated.", + "location": "query", + "type": "string" } }, "path": "v1beta/{+parent}/sessions", @@ -4836,7 +5058,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -4863,7 +5086,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -4895,7 +5119,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -4943,7 +5168,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -4979,7 +5205,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -5009,7 +5236,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5043,7 +5271,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5090,7 +5319,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5143,7 +5373,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -5197,7 +5428,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -5223,7 +5455,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -5249,7 +5482,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "getSiteSearchEngine": { @@ -5275,7 +5509,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5317,7 +5552,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -5352,7 +5588,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -5394,7 +5631,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -5432,7 +5670,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -5458,7 +5697,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -5484,7 +5724,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -5513,7 +5754,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5550,7 +5792,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -5590,7 +5833,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -5619,7 +5863,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5652,7 +5897,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -5678,7 +5924,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5725,7 +5972,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5762,7 +6010,8 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud_search.query", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5796,7 +6045,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -5826,7 +6076,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -5864,7 +6115,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -5890,7 +6142,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -5916,7 +6169,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -5958,7 +6212,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -5993,7 +6248,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6026,7 +6282,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -6055,7 +6312,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -6081,7 +6339,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -6107,7 +6366,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6154,7 +6414,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -6189,7 +6450,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6221,7 +6483,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6268,7 +6531,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6300,7 +6564,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6347,7 +6612,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6385,7 +6651,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -6411,7 +6678,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -6437,7 +6705,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6474,7 +6743,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -6508,7 +6778,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6525,7 +6796,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -6541,7 +6812,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -6575,7 +6847,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -6601,7 +6874,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -6627,7 +6901,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6664,7 +6939,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -6699,7 +6975,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recommend": { @@ -6728,7 +7005,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "search": { @@ -6758,7 +7036,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "searchLite": { @@ -6788,7 +7067,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "streamAnswer": { @@ -6801,7 +7081,7 @@ ], "parameters": { "servingConfig": { - "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search.", + "description": "Required. The resource name of the Search serving config, such as `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config`, or `projects/*/locations/global/collections/default_collection/dataStores/*/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/servingConfigs/[^/]+$", "required": true, @@ -6817,7 +7097,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -6839,6 +7120,11 @@ "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+$", "required": true, "type": "string" + }, + "sessionId": { + "description": "Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61}[a-z0-9]/. If not specified, a unique ID will be generated.", + "location": "query", + "type": "string" } }, "path": "v1beta/{+parent}/sessions", @@ -6851,7 +7137,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -6878,7 +7165,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -6910,7 +7198,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -6958,7 +7247,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -6994,7 +7284,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -7024,7 +7315,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7059,7 +7351,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "enableAdvancedSiteSearch": { @@ -7088,7 +7381,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "recrawlUris": { @@ -7117,7 +7411,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -7150,7 +7445,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -7176,7 +7472,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "fetch": { @@ -7208,7 +7505,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7241,7 +7539,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "create": { @@ -7270,7 +7569,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -7296,7 +7596,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -7322,7 +7623,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -7359,7 +7661,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -7388,7 +7691,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7424,7 +7728,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -7454,7 +7759,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7501,7 +7807,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -7531,7 +7838,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purge": { @@ -7561,7 +7869,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "write": { @@ -7596,7 +7905,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7632,7 +7942,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -7658,7 +7969,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -7695,7 +8007,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "listResults": { @@ -7732,7 +8045,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -7762,7 +8076,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7797,7 +8112,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -7845,7 +8161,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -7871,7 +8188,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -7897,7 +8215,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "importIdentityMappings": { @@ -7926,7 +8245,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -7963,7 +8283,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "listIdentityMappings": { @@ -8000,7 +8321,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "purgeIdentityMappings": { @@ -8029,7 +8351,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -8059,7 +8382,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8106,7 +8430,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8146,7 +8471,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -8172,7 +8498,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -8207,7 +8534,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8237,7 +8565,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8284,7 +8613,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8316,7 +8646,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8351,7 +8682,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8389,7 +8721,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -8415,7 +8748,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -8441,7 +8775,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8478,7 +8813,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -8513,7 +8849,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -8543,7 +8880,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8581,7 +8919,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "delete": { @@ -8607,7 +8946,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -8633,7 +8973,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -8662,7 +9003,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -8699,7 +9041,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -8734,7 +9077,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8783,7 +9127,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "import": { @@ -8813,7 +9158,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "write": { @@ -8848,7 +9194,8 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/discoveryengine.assist.readwrite", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -8881,67 +9228,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" - ] - }, - "create": { - "description": "Creates a new User Store.", - "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/userStores", - "httpMethod": "POST", - "id": "discoveryengine.projects.locations.userStores.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The parent collection resource name, such as `projects/{project}/locations/{location}`.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "userStoreId": { - "description": "Required. The ID of the User Store to create. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 63 characters.", - "location": "query", - "type": "string" - } - }, - "path": "v1beta/{+parent}/userStores", - "request": { - "$ref": "GoogleCloudDiscoveryengineV1betaUserStore" - }, - "response": { - "$ref": "GoogleCloudDiscoveryengineV1betaUserStore" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" - ] - }, - "delete": { - "description": "Deletes the User Store.", - "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/userStores/{userStoresId}", - "httpMethod": "DELETE", - "id": "discoveryengine.projects.locations.userStores.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the User Store to delete. Format: `projects/{project}/locations/{location}/userStores/{user_store_id}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/userStores/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "get": { @@ -8967,7 +9255,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "patch": { @@ -9002,7 +9291,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } }, @@ -9032,7 +9322,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -9048,8 +9339,13 @@ "parent" ], "parameters": { + "filter": { + "description": "Optional. Filter for the list request. Supported fields: * `license_assignment_state` * `user_principal` * Examples: * `license_assignment_state = ASSIGNED` to list assigned user licenses. * `license_assignment_state = NO_LICENSE` to list not licensed users. * `license_assignment_state = NO_LICENSE_ATTEMPTED_LOGIN` to list users who attempted login but no license assigned. * `license_assignment_state != NO_LICENSE_ATTEMPTED_LOGIN` to filter out users who attempted login but no license assigned. * `user_principal = user1@example.com` to list user license for `user1@example.com`.", + "location": "query", + "type": "string" + }, "orderBy": { - "description": "Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a \" desc\" suffix. Redundant space characters in the syntax are insignificant. Supported fields: * `license_assignment_state` * `user_principal` * `user_profile` * `last_login_date` * `update_time` If not set, the default ordering is by `user_principal`. Examples: * `user_principal desc` to order by `user_principal` in descending order. * `license_assignment_state` to order by `license_assignment_state` in ascending order. * `last_login_date desc` to order by `last_login_date` in descending order. * `update_time desc` to order by `update_time` in descending order. * `last_login_date desc, user_principal` to order by `last_login_date` in descending order and then by `user_principal` in ascending order.", + "description": "Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a \" desc\" suffix. Redundant space characters in the syntax are insignificant. Supported fields (only `user_principal` is supported for now): * `user_principal` If not set, the default ordering is by `user_principal`. Examples: * `user_principal` to order by `user_principal` in ascending order. * `user_principal desc` to order by `user_principal` in descending order.", "location": "query", "type": "string" }, @@ -9078,7 +9374,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -9112,7 +9409,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] }, "list": { @@ -9159,7 +9457,8 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/discoveryengine.readwrite" + "https://www.googleapis.com/auth/discoveryengine.readwrite", + "https://www.googleapis.com/auth/discoveryengine.serving.readwrite" ] } } @@ -9167,7 +9466,7 @@ } } }, - "revision": "20260226", + "revision": "20260503", "rootUrl": "https://discoveryengine.googleapis.com/", "schemas": { "GoogleApiDistribution": { @@ -9610,6 +9909,10 @@ "description": "Optional. Action parameters in structured json format.", "type": "object" }, + "createBapConnection": { + "description": "Optional. Whether to create a BAP connection for the connector.", + "type": "boolean" + }, "isActionConfigured": { "description": "Output only. The connector contains the necessary parameters and is configured to support actions.", "readOnly": true, @@ -9626,6 +9929,27 @@ "useStaticSecrets": { "description": "Optional. Whether to use static secrets for the connector. If true, the secrets provided in the action_params will be ignored.", "type": "boolean" + }, + "userDefinedScopesMapping": { + "additionalProperties": { + "$ref": "GoogleCloudDiscoveryengineV1ActionConfigScopeList" + }, + "description": "Optional. Mapping from operation name to the list of scopes. Only be populated if there are user specified scopes.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1ActionConfigScopeList": { + "description": "Stores a list of scopes.", + "id": "GoogleCloudDiscoveryengineV1ActionConfigScopeList", + "properties": { + "scopes": { + "description": "Optional. The list of scopes.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -9645,6 +9969,28 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1AgentGatewaySetting": { + "description": "Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise.", + "id": "GoogleCloudDiscoveryengineV1AgentGatewaySetting", + "properties": { + "defaultEgressAgentGateway": { + "$ref": "GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference", + "description": "Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference": { + "description": "Reference to an Agent Gateway resource.", + "id": "GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference", + "properties": { + "name": { + "description": "Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number}/locations/{location}/agentGateways/{agent_gateway}`.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1AlertPolicyConfig": { "description": "The connector level alert config.", "id": "GoogleCloudDiscoveryengineV1AlertPolicyConfig", @@ -9746,6 +10092,12 @@ "description": "Discovery Engine Assistant resource.", "id": "GoogleCloudDiscoveryengineV1Assistant", "properties": { + "createTime": { + "description": "Output only. Represents the time when this Assistant was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "customerPolicy": { "$ref": "GoogleCloudDiscoveryengineV1AssistantCustomerPolicy", "description": "Optional. Customer policy for the assistant." @@ -9777,6 +10129,12 @@ "description": "Immutable. Resource name of the assistant. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}` It must be a UTF-8 encoded string with a length limit of 1024 characters.", "type": "string" }, + "updateTime": { + "description": "Output only. Represents the time when this Assistant was most recently updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "webGroundingType": { "description": "Optional. The type of web grounding to use.", "enum": [ @@ -10050,6 +10408,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1CliConfig": { + "description": "The configuration for the CLI execution based connectors.", + "id": "GoogleCloudDiscoveryengineV1CliConfig", + "properties": { + "enabledActions": { + "description": "Optional. The actions enabled on the associated CLI connection.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1CmekConfig": { "description": "Configurations used to enable CMEK data encryption with Cloud KMS keys.", "id": "GoogleCloudDiscoveryengineV1CmekConfig", @@ -10601,6 +10973,10 @@ "readOnly": true, "type": "array" }, + "cliConfig": { + "$ref": "GoogleCloudDiscoveryengineV1CliConfig", + "description": "Optional. The configuration for establishing a CLI connection." + }, "connectorModes": { "description": "Optional. The modes enabled for this connector. Default state is CONNECTOR_MODE_UNSPECIFIED.", "items": { @@ -10674,7 +11050,7 @@ "type": "string" }, "dataSource": { - "description": "Required. The name of the data source. Supported values: `salesforce`, `jira`, `confluence`, `bigquery`.", + "description": "Required. The identifier for the data source. This is a partial list of supported connectors. Please refer to the [documentation](https://docs.cloud.google.com/gemini/enterprise/docs/connectors/introduction-to-connectors-and-data-stores) for the full list of connectors. Supported first-party connectors include: * `gcs` * `bigquery` * `gcp_fhir` * `google_mail` * `google_drive` * `google_calendar` * `google_chat` Supported third-party connectors include: Generally available (GA) connectors: * `onedrive` * `outlook` * `confluence` * `jira` * `servicenow` * `sharepoint` Preview connectors: * `asana` * `azure_active_directory` * `box` * `canva` * `confluence_server` * `custom_connector` * `docusign` * `dropbox` * `dynamics365` * `github` * `gitlab` * `hubspot` * `jira_server` * `linear` * `native_cloud_identity` * `notion` * `okta` * `pagerduty` * `peoplesoft` * `salesforce` * `shopify` * `slack` * `snowflake` * `teams` * `trello` * `workday` * `zendesk`", "type": "string" }, "destinationConfigs": { @@ -10684,8 +11060,16 @@ }, "type": "array" }, + "dynamicTools": { + "description": "Output only. The dynamic tools fetched for this connector.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1DynamicTool" + }, + "readOnly": true, + "type": "array" + }, "egressFqdns": { - "description": "Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. Note: This field is derived from both the DataConnector.params, and connector source spec. It should only be used for CAIS and Org Policy evaluation purposes.", + "description": "Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs.", "items": { "type": "string" }, @@ -10759,8 +11143,7 @@ "type": "string" }, "name": { - "description": "Output only. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", - "readOnly": true, + "description": "Identifier. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", "type": "string" }, "nextSyncTime": { @@ -10879,7 +11262,7 @@ "type": "string" }, "vpcscEnabled": { - "description": "Output only. Whether the connector is created with VPC-SC enabled. This is only used for CuOP evaluation purpose.", + "description": "Output only. Whether the connector is created with VPC-SC enabled.", "readOnly": true, "type": "boolean" } @@ -11112,6 +11495,10 @@ "$ref": "GoogleCloudDiscoveryengineV1DocumentProcessingConfig", "description": "Configuration for Document understanding and enrichment." }, + "federatedSearchConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig", + "description": "Optional. If set, this DataStore is a federated search DataStore." + }, "healthcareFhirConfig": { "$ref": "GoogleCloudDiscoveryengineV1HealthcareFhirConfig", "description": "Optional. Configuration for `HEALTHCARE_FHIR` vertical." @@ -11227,6 +11614,125 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig": { + "description": "Stores information for federated search.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig", + "properties": { + "alloyDbConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig", + "description": "AlloyDB config. If set, this DataStore is connected to AlloyDB." + }, + "notebooklmConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig", + "description": "NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise." + }, + "thirdPartyOauthConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig", + "description": "Third Party OAuth config. If set, this DataStore is connected to a third party application." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig": { + "description": "Stores information for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig", + "properties": { + "alloydbAiNlConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "description": "Optional. Configuration for Magic." + }, + "alloydbConnectionConfig": { + "$ref": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "description": "Required. Configuration for connecting to AlloyDB." + }, + "returnedFields": { + "description": "Optional. Fields to be returned in the search results. If empty, all fields will be returned.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig": { + "description": "Configuration for AlloyDB AI Natural Language.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "properties": { + "nlConfigId": { + "description": "Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig": { + "description": "Configuration for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "properties": { + "authMode": { + "description": "Optional. Auth mode.", + "enum": [ + "AUTH_MODE_UNSPECIFIED", + "AUTH_MODE_SERVICE_ACCOUNT", + "AUTH_MODE_END_USER_ACCOUNT" + ], + "enumDescriptions": [ + "", + "Uses P4SA when VAIS talks to AlloyDB.", + "Uses EUC when VAIS talks to AlloyDB." + ], + "type": "string" + }, + "database": { + "description": "Required. The AlloyDB database to connect to.", + "type": "string" + }, + "enablePsvs": { + "description": "Optional. If true, enable PSVS for AlloyDB.", + "type": "boolean" + }, + "instance": { + "description": "Required. The AlloyDB instance to connect to.", + "type": "string" + }, + "password": { + "description": "Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + }, + "user": { + "description": "Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig": { + "description": "Config for connecting to NotebookLM Enterprise.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig", + "properties": { + "searchConfig": { + "description": "Required. Search config name. Format: projects/*/locations/global/notebookLmSearchConfigs/*", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig": { + "description": "Stores information for third party applicationOAuth.", + "id": "GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig", + "properties": { + "appName": { + "description": "Optional. The type of the application. E.g., \"jira\", \"box\", etc.", + "type": "string" + }, + "instanceName": { + "description": "Optional. The instance name identifying the 3P app, e.g., \"vaissptbots-my\". This is different from the instance_uri which is the full URL of the 3P app e.g., \"https://vaissptbots-my.sharepoint.com\".", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1DataStoreServingConfigDataStore": { "description": "Stores information regarding the serving configurations at DataStore level.", "id": "GoogleCloudDiscoveryengineV1DataStoreServingConfigDataStore", @@ -11591,6 +12097,29 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1DynamicTool": { + "description": "Configuration for dynamic tools.", + "id": "GoogleCloudDiscoveryengineV1DynamicTool", + "properties": { + "description": { + "description": "Optional. The description of the tool.", + "type": "string" + }, + "displayName": { + "description": "Optional. The display name of the tool.", + "type": "string" + }, + "enabled": { + "description": "Optional. Whether the tool is enabled.", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the tool.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1EnableAdvancedSiteSearchMetadata": { "description": "Metadata related to the progress of the SiteSearchEngineService.EnableAdvancedSiteSearch operation. This will be returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1EnableAdvancedSiteSearchMetadata", @@ -11618,6 +12147,10 @@ "description": "Metadata that describes the training and serving parameters of an Engine.", "id": "GoogleCloudDiscoveryengineV1Engine", "properties": { + "agentGatewaySetting": { + "$ref": "GoogleCloudDiscoveryengineV1AgentGatewaySetting", + "description": "Optional. The agent gateway setting for the engine." + }, "appType": { "description": "Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type.", "enum": [ @@ -11702,7 +12235,7 @@ ], "type": "string" }, - "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails`", + "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills`", "type": "object" }, "industryVertical": { @@ -11772,9 +12305,12 @@ "$ref": "GoogleCloudDiscoveryengineV1ObservabilityConfig", "description": "Optional. Observability config for the engine." }, - "procurementContactEmail": { - "description": "Optional. The email of the procurement contact.", - "type": "string" + "procurementContactEmails": { + "description": "Optional. The emails of the procurement contacts.", + "items": { + "type": "string" + }, + "type": "array" }, "searchEngineConfig": { "$ref": "GoogleCloudDiscoveryengineV1EngineSearchEngineConfig", @@ -12369,8 +12905,9 @@ "type": "string" }, "updateTime": { - "description": "Operation last update time. If the operation is done, this is also the finish time.", + "description": "Output only. Operation last update time. If the operation is done, this is also the finish time.", "format": "google-datetime", + "readOnly": true, "type": "string" } }, @@ -12552,11 +13089,11 @@ "id": "GoogleCloudDiscoveryengineV1ObservabilityConfig", "properties": { "observabilityEnabled": { - "description": "Optional. Enables observability. If false, all other flags are ignored.", + "description": "Optional. Enables observability. If `false`, all other flags are ignored.", "type": "boolean" }, "sensitiveLoggingEnabled": { - "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields.", + "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields.", "type": "boolean" } }, @@ -12604,7 +13141,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus": { - "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month).", + "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation.", "id": "GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus", "properties": { "effectiveIndexingCoreThreshold": { @@ -12639,6 +13176,25 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "updateType": { + "description": "Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject.", + "enum": [ + "UPDATE_TYPE_UNSPECIFIED", + "CREATE", + "DELETE", + "SCALE_UP", + "SCALE_DOWN" + ], + "enumDescriptions": [ + "Unspecified update type.", + "Configurable billing was created/enabled.", + "Configurable billing was deleted/disabled.", + "Subscription was scaled up (thresholds increased).", + "Subscription was scaled down (thresholds decreased)." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -13741,6 +14297,10 @@ "description": "Optional. Action parameters in structured json format.", "type": "object" }, + "createBapConnection": { + "description": "Optional. Whether to create a BAP connection for the connector.", + "type": "boolean" + }, "isActionConfigured": { "description": "Output only. The connector contains the necessary parameters and is configured to support actions.", "readOnly": true, @@ -13757,6 +14317,27 @@ "useStaticSecrets": { "description": "Optional. Whether to use static secrets for the connector. If true, the secrets provided in the action_params will be ignored.", "type": "boolean" + }, + "userDefinedScopesMapping": { + "additionalProperties": { + "$ref": "GoogleCloudDiscoveryengineV1alphaActionConfigScopeList" + }, + "description": "Optional. Mapping from operation name to the list of scopes. Only be populated if there are user specified scopes.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaActionConfigScopeList": { + "description": "Stores a list of scopes.", + "id": "GoogleCloudDiscoveryengineV1alphaActionConfigScopeList", + "properties": { + "scopes": { + "description": "Optional. The list of scopes.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -13794,6 +14375,28 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting": { + "description": "Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise.", + "id": "GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting", + "properties": { + "defaultEgressAgentGateway": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference", + "description": "Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference": { + "description": "Reference to an Agent Gateway resource.", + "id": "GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference", + "properties": { + "name": { + "description": "Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number}/locations/{location}/agentGateways/{agent_gateway}`.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaAlertPolicyConfig": { "description": "The connector level alert config.", "id": "GoogleCloudDiscoveryengineV1alphaAlertPolicyConfig", @@ -13946,10 +14549,11 @@ "type": "string" }, "blobAttachments": { - "description": "List of blob attachments in the answer.", + "description": "Output only. List of blob attachments in the answer.", "items": { "$ref": "GoogleCloudDiscoveryengineV1alphaAnswerBlobAttachment" }, + "readOnly": true, "type": "array" }, "citations": { @@ -14659,6 +15263,11 @@ "description": "One part of the multi-part response of the assist call.", "id": "GoogleCloudDiscoveryengineV1alphaAssistAnswerReply", "properties": { + "createTime": { + "description": "The time when the reply was created.", + "format": "google-datetime", + "type": "string" + }, "groundedContent": { "$ref": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContent", "description": "Possibly grounded response text or media from the assistant." @@ -14811,6 +15420,13 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataSegment" }, "type": "array" + }, + "visualSegments": { + "description": "Grounding information for parts of the visual content.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment" + }, + "type": "array" } }, "type": "object" @@ -14819,6 +15435,10 @@ "description": "Referenced content and related document metadata.", "id": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataReference", "properties": { + "codeSnippet": { + "description": "Chunk of code snippet from the referenced document.", + "type": "string" + }, "content": { "description": "Referenced text content.", "type": "string" @@ -14842,6 +15462,19 @@ "description": "Domain name from the document URI. Note that the `uri` field may contain a URL that redirects to the actual website, in which case this will contain the domain name of the target site.", "type": "string" }, + "language": { + "enum": [ + "LANGUAGE_UNSPECIFIED", + "PYTHON", + "SQL" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, "mimeType": { "description": "The mime type of the document. https://www.iana.org/assignments/media-types/media-types.xhtml.", "type": "string" @@ -14895,6 +15528,25 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment": { + "description": "Grounding information for a visual segment.", + "id": "GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment", + "properties": { + "contentId": { + "description": "The content id of the visual segment. In order to display the citation of the visual element, this content_id needs to match with the `grounded_content.content_metadata.content_id` field.", + "type": "string" + }, + "referenceIndices": { + "description": "References for the visual segment.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaBAPConfig": { "description": "The configuration for the BAP connector.", "id": "GoogleCloudDiscoveryengineV1alphaBAPConfig", @@ -15061,6 +15713,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaCliConfig": { + "description": "The configuration for the CLI execution based connectors.", + "id": "GoogleCloudDiscoveryengineV1alphaCliConfig", + "properties": { + "enabledActions": { + "description": "Optional. The actions enabled on the associated CLI connection.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaCmekConfig": { "description": "Configurations used to enable CMEK data encryption with Cloud KMS keys.", "id": "GoogleCloudDiscoveryengineV1alphaCmekConfig", @@ -15880,6 +16546,10 @@ "readOnly": true, "type": "array" }, + "cliConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaCliConfig", + "description": "Optional. The configuration for establishing a CLI connection." + }, "connectorModes": { "description": "Optional. The modes enabled for this connector. Default state is CONNECTOR_MODE_UNSPECIFIED.", "items": { @@ -15957,7 +16627,7 @@ "description": "Optional. Specifies the data protection policy for the connector." }, "dataSource": { - "description": "Required. The name of the data source. Supported values: `salesforce`, `jira`, `confluence`, `bigquery`.", + "description": "Required. The identifier for the data source. This is a partial list of supported connectors. Please refer to the [documentation](https://docs.cloud.google.com/gemini/enterprise/docs/connectors/introduction-to-connectors-and-data-stores) for the full list of connectors. Supported first-party connectors include: * `gcs` * `bigquery` * `gcp_fhir` * `google_mail` * `google_drive` * `google_calendar` * `google_chat` Supported third-party connectors include: Generally available (GA) connectors: * `onedrive` * `outlook` * `confluence` * `jira` * `servicenow` * `sharepoint` Preview connectors: * `asana` * `azure_active_directory` * `box` * `canva` * `confluence_server` * `custom_connector` * `docusign` * `dropbox` * `dynamics365` * `github` * `gitlab` * `hubspot` * `jira_server` * `linear` * `native_cloud_identity` * `notion` * `okta` * `pagerduty` * `peoplesoft` * `salesforce` * `shopify` * `slack` * `snowflake` * `teams` * `trello` * `workday` * `zendesk`", "type": "string" }, "destinationConfigs": { @@ -15967,8 +16637,16 @@ }, "type": "array" }, + "dynamicTools": { + "description": "Output only. The dynamic tools fetched for this connector.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDynamicTool" + }, + "readOnly": true, + "type": "array" + }, "egressFqdns": { - "description": "Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. Note: This field is derived from both the DataConnector.params, and connector source spec. It should only be used for CAIS and Org Policy evaluation purposes.", + "description": "Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs.", "items": { "type": "string" }, @@ -16042,8 +16720,7 @@ "type": "string" }, "name": { - "description": "Output only. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", - "readOnly": true, + "description": "Identifier. The full resource name of the Data Connector. Format: `projects/*/locations/*/collections/*/dataConnector`.", "type": "string" }, "nextSyncTime": { @@ -16162,7 +16839,7 @@ "type": "string" }, "vpcscEnabled": { - "description": "Output only. Whether the connector is created with VPC-SC enabled. This is only used for CuOP evaluation purpose.", + "description": "Output only. Whether the connector is created with VPC-SC enabled.", "readOnly": true, "type": "boolean" } @@ -16317,12 +16994,12 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy": { - "description": "Data protection policy config for a connector.", + "description": "Contains the data protection policy config for a DataStore or a connector.", "id": "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy", "properties": { "sensitiveDataProtectionPolicy": { "$ref": "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicySensitiveDataProtectionPolicy", - "description": "Optional. The sensitive data protection policy for the connector source." + "description": "Optional. Specifies the sensitive data protection policy for the connector source." } }, "type": "object" @@ -16332,7 +17009,7 @@ "id": "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicySensitiveDataProtectionPolicy", "properties": { "policy": { - "description": "Optional. The Sensitive Data Protection content policy resource name.", + "description": "Optional. Specifies the resource name of the Sensitive Data Protection content policy.", "type": "string" } }, @@ -16404,6 +17081,10 @@ "readOnly": true, "type": "string" }, + "dataProtectionPolicy": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy", + "description": "Optional. Specifies the data protection policy for the data store." + }, "defaultSchemaId": { "description": "Output only. The id of the default Schema associated to this data store.", "readOnly": true, @@ -16417,6 +17098,10 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaDocumentProcessingConfig", "description": "Configuration for Document understanding and enrichment." }, + "federatedSearchConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig", + "description": "Optional. If set, this DataStore is a federated search DataStore." + }, "healthcareFhirConfig": { "$ref": "GoogleCloudDiscoveryengineV1alphaHealthcareFhirConfig", "description": "Optional. Configuration for `HEALTHCARE_FHIR` vertical." @@ -16541,6 +17226,125 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig": { + "description": "Stores information for federated search.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig", + "properties": { + "alloyDbConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig", + "description": "AlloyDB config. If set, this DataStore is connected to AlloyDB." + }, + "notebooklmConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig", + "description": "NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise." + }, + "thirdPartyOauthConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig", + "description": "Third Party OAuth config. If set, this DataStore is connected to a third party application." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig": { + "description": "Stores information for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig", + "properties": { + "alloydbAiNlConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "description": "Optional. Configuration for Magic." + }, + "alloydbConnectionConfig": { + "$ref": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "description": "Required. Configuration for connecting to AlloyDB." + }, + "returnedFields": { + "description": "Optional. Fields to be returned in the search results. If empty, all fields will be returned.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig": { + "description": "Configuration for AlloyDB AI Natural Language.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "properties": { + "nlConfigId": { + "description": "Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig": { + "description": "Configuration for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "properties": { + "authMode": { + "description": "Optional. Auth mode.", + "enum": [ + "AUTH_MODE_UNSPECIFIED", + "AUTH_MODE_SERVICE_ACCOUNT", + "AUTH_MODE_END_USER_ACCOUNT" + ], + "enumDescriptions": [ + "", + "Uses P4SA when VAIS talks to AlloyDB.", + "Uses EUC when VAIS talks to AlloyDB." + ], + "type": "string" + }, + "database": { + "description": "Required. The AlloyDB database to connect to.", + "type": "string" + }, + "enablePsvs": { + "description": "Optional. If true, enable PSVS for AlloyDB.", + "type": "boolean" + }, + "instance": { + "description": "Required. The AlloyDB instance to connect to.", + "type": "string" + }, + "password": { + "description": "Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + }, + "user": { + "description": "Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig": { + "description": "Config for connecting to NotebookLM Enterprise.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig", + "properties": { + "searchConfig": { + "description": "Required. Search config name. Format: projects/*/locations/global/notebookLmSearchConfigs/*", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig": { + "description": "Stores information for third party applicationOAuth.", + "id": "GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig", + "properties": { + "appName": { + "description": "Optional. The type of the application. E.g., \"jira\", \"box\", etc.", + "type": "string" + }, + "instanceName": { + "description": "Optional. The instance name identifying the 3P app, e.g., \"vaissptbots-my\". This is different from the instance_uri which is the full URL of the 3P app e.g., \"https://vaissptbots-my.sharepoint.com\".", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaDataStoreServingConfigDataStore": { "description": "Stores information regarding the serving configurations at DataStore level.", "id": "GoogleCloudDiscoveryengineV1alphaDataStoreServingConfigDataStore", @@ -16984,6 +17788,29 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaDynamicTool": { + "description": "Configuration for dynamic tools.", + "id": "GoogleCloudDiscoveryengineV1alphaDynamicTool", + "properties": { + "description": { + "description": "Optional. The description of the tool.", + "type": "string" + }, + "displayName": { + "description": "Optional. The display name of the tool.", + "type": "string" + }, + "enabled": { + "description": "Optional. Whether the tool is enabled.", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the tool.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaEnableAdvancedSiteSearchMetadata": { "description": "Metadata related to the progress of the SiteSearchEngineService.EnableAdvancedSiteSearch operation. This will be returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1alphaEnableAdvancedSiteSearchMetadata", @@ -17011,6 +17838,10 @@ "description": "Metadata that describes the training and serving parameters of an Engine.", "id": "GoogleCloudDiscoveryengineV1alphaEngine", "properties": { + "agentGatewaySetting": { + "$ref": "GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting", + "description": "Optional. The agent gateway setting for the engine." + }, "appType": { "description": "Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type.", "enum": [ @@ -17095,7 +17926,7 @@ ], "type": "string" }, - "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails`", + "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills`", "type": "object" }, "industryVertical": { @@ -17165,9 +17996,12 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaObservabilityConfig", "description": "Optional. Observability config for the engine." }, - "procurementContactEmail": { - "description": "Optional. The email of the procurement contact.", - "type": "string" + "procurementContactEmails": { + "description": "Optional. The emails of the procurement contacts.", + "items": { + "type": "string" + }, + "type": "array" }, "recommendationMetadata": { "$ref": "GoogleCloudDiscoveryengineV1alphaEngineRecommendationMetadata", @@ -17838,6 +18672,26 @@ }, "type": "array" }, + "searchableFieldImportance": { + "description": "Optional. Specifies the importance of the field when `searchable_option` is `SEARCHABLE_ENABLED`. If `searchable_option` is `SEARCHABLE_DISABLED`, this field is ignored. If `searchable_option` is `SEARCHABLE_ENABLED` and this is `SEARCHABLE_FIELD_IMPORTANCE_UNSPECIFIED`, it behaves as `DEFAULT_IMPORTANCE`.", + "enum": [ + "SEARCHABLE_FIELD_IMPORTANCE_UNSPECIFIED", + "VERY_LOW_IMPORTANCE", + "LOW_IMPORTANCE", + "DEFAULT_IMPORTANCE", + "HIGH_IMPORTANCE", + "VERY_HIGH_IMPORTANCE" + ], + "enumDescriptions": [ + "Value used when unset. Behaves as `DEFAULT_IMPORTANCE` if the field is searchable.", + "Provides a tiny signal for search.", + "Indicates the field is used for search, but is less important than the default.", + "Default importance. Equivalent to previous behavior.", + "More important than default fields.", + "Most important field for search." + ], + "type": "string" + }, "searchableOption": { "description": "If searchable_option is SEARCHABLE_ENABLED, field values are searchable by text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is numerical, field values will not be searchable by text queries in SearchService.Search, as there are no text values associated to numerical fields. If searchable_option is unset, the server behavior defaults to SEARCHABLE_DISABLED for fields that support setting searchable options. Only `string` fields that have no key property mapping support setting searchable_option. For those fields that do not support setting searchable options, the server will skip searchable option setting, and setting searchable_option for those fields will throw `INVALID_ARGUMENT` error.", "enum": [ @@ -18215,8 +19069,9 @@ "type": "string" }, "updateTime": { - "description": "Operation last update time. If the operation is done, this is also the finish time.", + "description": "Output only. Operation last update time. If the operation is done, this is also the finish time.", "format": "google-datetime", + "readOnly": true, "type": "string" } }, @@ -18501,11 +19356,11 @@ "id": "GoogleCloudDiscoveryengineV1alphaObservabilityConfig", "properties": { "observabilityEnabled": { - "description": "Optional. Enables observability. If false, all other flags are ignored.", + "description": "Optional. Enables observability. If `false`, all other flags are ignored.", "type": "boolean" }, "sensitiveLoggingEnabled": { - "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields.", + "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields.", "type": "boolean" } }, @@ -18629,7 +19484,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus": { - "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month).", + "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation.", "id": "GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus", "properties": { "effectiveIndexingCoreThreshold": { @@ -18664,6 +19519,25 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "updateType": { + "description": "Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject.", + "enum": [ + "UPDATE_TYPE_UNSPECIFIED", + "CREATE", + "DELETE", + "SCALE_UP", + "SCALE_DOWN" + ], + "enumDescriptions": [ + "Unspecified update type.", + "Configurable billing was created/enabled.", + "Configurable billing was deleted/disabled.", + "Subscription was scaled up (thresholds increased).", + "Subscription was scaled down (thresholds decreased)." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -19547,6 +20421,10 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaCustomFineTuningSpec", "description": "Custom fine tuning configs. If set, it has higher priority than the configs set in ServingConfig.custom_fine_tuning_spec." }, + "customRankingParams": { + "$ref": "GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams", + "description": "Optional. Optional configuration for the Custom Ranking feature." + }, "dataStoreSpecs": { "description": "Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used.", "items": { @@ -19562,6 +20440,10 @@ "$ref": "GoogleCloudDiscoveryengineV1alphaSearchRequestEmbeddingSpec", "description": "Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.EmbeddingSpec.EmbeddingVector.vector and the document embedding that is provided in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path. If SearchRequest.EmbeddingSpec.EmbeddingVector.field_path is not provided, it will use ServingConfig.EmbeddingConfig.field_path." }, + "entity": { + "description": "Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, \"Google US\", \"Google Ads\", \"Waymo\", \"google.com\", \"youtube.com\", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity.", + "type": "string" + }, "facetSpecs": { "description": "Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned.", "items": { @@ -19715,7 +20597,7 @@ "type": "string" }, "session": { - "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call.", "type": "string" }, "sessionSpec": { @@ -20076,6 +20958,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams": { + "description": "Configuration parameters for the Custom Ranking feature.", + "id": "GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams", + "properties": { + "expressionsToPrecompute": { + "description": "Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1alphaSearchRequestDataStoreSpec": { "description": "A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned.", "id": "GoogleCloudDiscoveryengineV1alphaSearchRequestDataStoreSpec", @@ -20283,7 +21179,7 @@ "type": "string" }, "geoSearchQueryDetectionFieldNames": { - "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names.", + "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`.", "items": { "type": "string" }, @@ -20437,7 +21333,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1alphaSearchRequestSessionSpec": { - "description": "Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "Session specification.", "id": "GoogleCloudDiscoveryengineV1alphaSearchRequestSessionSpec", "properties": { "queryId": { @@ -20552,6 +21448,10 @@ "description": "Output only. In ConversationalSearchService.GetSession API, if GetSessionRequest.include_answer_details is set to true, this field will be populated when getting assistant session.", "readOnly": true }, + "live": { + "description": "Optional. Indicates whether this turn is a live turn.", + "type": "boolean" + }, "query": { "$ref": "GoogleCloudDiscoveryengineV1alphaQuery", "description": "Optional. The user query. May not be set if this turn is merely regenerating an answer to a different turn" @@ -20980,6 +21880,10 @@ "description": "Information of an end user.", "id": "GoogleCloudDiscoveryengineV1alphaUserInfo", "properties": { + "preciseLocation": { + "$ref": "GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation", + "description": "Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents." + }, "timeZone": { "description": "Optional. IANA time zone, e.g. Europe/Budapest.", "type": "string" @@ -20989,8 +21893,23 @@ "type": "string" }, "userId": { - "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", + "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation": { + "description": "Precise location info with multiple representation options. Currently only latitude and longitude point is supported.", + "id": "GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation", + "properties": { + "address": { + "description": "Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon.", "type": "string" + }, + "point": { + "$ref": "GoogleTypeLatLng", + "description": "Optional. Location represented by a latitude/longitude point." } }, "type": "object" @@ -21440,6 +22359,28 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaAgentGatewaySetting": { + "description": "Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise.", + "id": "GoogleCloudDiscoveryengineV1betaAgentGatewaySetting", + "properties": { + "defaultEgressAgentGateway": { + "$ref": "GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference", + "description": "Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference": { + "description": "Reference to an Agent Gateway resource.", + "id": "GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference", + "properties": { + "name": { + "description": "Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number}/locations/{location}/agentGateways/{agent_gateway}`.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaAlloyDbSource": { "description": "AlloyDB source import data from.", "id": "GoogleCloudDiscoveryengineV1betaAlloyDbSource", @@ -21515,10 +22456,11 @@ "type": "string" }, "blobAttachments": { - "description": "List of blob attachments in the answer.", + "description": "Output only. List of blob attachments in the answer.", "items": { "$ref": "GoogleCloudDiscoveryengineV1betaAnswerBlobAttachment" }, + "readOnly": true, "type": "array" }, "citations": { @@ -22903,6 +23845,11 @@ "description": "One part of the multi-part response of the assist call.", "id": "GoogleCloudDiscoveryengineV1betaAssistAnswerReply", "properties": { + "createTime": { + "description": "The time when the reply was created.", + "format": "google-datetime", + "type": "string" + }, "groundedContent": { "$ref": "GoogleCloudDiscoveryengineV1betaAssistantGroundedContent", "description": "Possibly grounded response text or media from the assistant." @@ -22929,6 +23876,12 @@ "description": "Discovery Engine Assistant resource.", "id": "GoogleCloudDiscoveryengineV1betaAssistant", "properties": { + "createTime": { + "description": "Output only. Represents the time when this Assistant was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "customerPolicy": { "$ref": "GoogleCloudDiscoveryengineV1betaAssistantCustomerPolicy", "description": "Optional. Customer policy for the assistant." @@ -22960,6 +23913,12 @@ "description": "Immutable. Resource name of the assistant. Format: `projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}` It must be a UTF-8 encoded string with a length limit of 1024 characters.", "type": "string" }, + "updateTime": { + "description": "Output only. Represents the time when this Assistant was most recently updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "webGroundingType": { "description": "Optional. The type of web grounding to use.", "enum": [ @@ -23232,6 +24191,13 @@ "$ref": "GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataSegment" }, "type": "array" + }, + "visualSegments": { + "description": "Grounding information for parts of the visual content.", + "items": { + "$ref": "GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataVisualSegment" + }, + "type": "array" } }, "type": "object" @@ -23240,6 +24206,10 @@ "description": "Referenced content and related document metadata.", "id": "GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataReference", "properties": { + "codeSnippet": { + "description": "Chunk of code snippet from the referenced document.", + "type": "string" + }, "content": { "description": "Referenced text content.", "type": "string" @@ -23263,6 +24233,19 @@ "description": "Domain name from the document URI. Note that the `uri` field may contain a URL that redirects to the actual website, in which case this will contain the domain name of the target site.", "type": "string" }, + "language": { + "enum": [ + "LANGUAGE_UNSPECIFIED", + "PYTHON", + "SQL" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, "mimeType": { "description": "The mime type of the document. https://www.iana.org/assignments/media-types/media-types.xhtml.", "type": "string" @@ -23316,6 +24299,25 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataVisualSegment": { + "description": "Grounding information for a visual segment.", + "id": "GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataVisualSegment", + "properties": { + "contentId": { + "description": "The content id of the visual segment. In order to display the citation of the visual element, this content_id needs to match with the `grounded_content.content_metadata.content_id` field.", + "type": "string" + }, + "referenceIndices": { + "description": "References for the visual segment.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaAssistantToolInfo": { "description": "Information to identify a tool.", "id": "GoogleCloudDiscoveryengineV1betaAssistantToolInfo", @@ -25028,6 +26030,10 @@ "$ref": "GoogleCloudDiscoveryengineV1betaDocumentProcessingConfig", "description": "Configuration for Document understanding and enrichment." }, + "federatedSearchConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig", + "description": "Optional. If set, this DataStore is a federated search DataStore." + }, "healthcareFhirConfig": { "$ref": "GoogleCloudDiscoveryengineV1betaHealthcareFhirConfig", "description": "Optional. Configuration for `HEALTHCARE_FHIR` vertical." @@ -25147,6 +26153,125 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig": { + "description": "Stores information for federated search.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig", + "properties": { + "alloyDbConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig", + "description": "AlloyDB config. If set, this DataStore is connected to AlloyDB." + }, + "notebooklmConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig", + "description": "NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise." + }, + "thirdPartyOauthConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig", + "description": "Third Party OAuth config. If set, this DataStore is connected to a third party application." + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig": { + "description": "Stores information for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig", + "properties": { + "alloydbAiNlConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "description": "Optional. Configuration for Magic." + }, + "alloydbConnectionConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "description": "Required. Configuration for connecting to AlloyDB." + }, + "returnedFields": { + "description": "Optional. Fields to be returned in the search results. If empty, all fields will be returned.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig": { + "description": "Configuration for AlloyDB AI Natural Language.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig", + "properties": { + "nlConfigId": { + "description": "Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig": { + "description": "Configuration for connecting to AlloyDB.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig", + "properties": { + "authMode": { + "description": "Optional. Auth mode.", + "enum": [ + "AUTH_MODE_UNSPECIFIED", + "AUTH_MODE_SERVICE_ACCOUNT", + "AUTH_MODE_END_USER_ACCOUNT" + ], + "enumDescriptions": [ + "", + "Uses P4SA when VAIS talks to AlloyDB.", + "Uses EUC when VAIS talks to AlloyDB." + ], + "type": "string" + }, + "database": { + "description": "Required. The AlloyDB database to connect to.", + "type": "string" + }, + "enablePsvs": { + "description": "Optional. If true, enable PSVS for AlloyDB.", + "type": "boolean" + }, + "instance": { + "description": "Required. The AlloyDB instance to connect to.", + "type": "string" + }, + "password": { + "description": "Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + }, + "user": { + "description": "Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig": { + "description": "Config for connecting to NotebookLM Enterprise.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig", + "properties": { + "searchConfig": { + "description": "Required. Search config name. Format: projects/*/locations/global/notebookLmSearchConfigs/*", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig": { + "description": "Stores information for third party applicationOAuth.", + "id": "GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig", + "properties": { + "appName": { + "description": "Optional. The type of the application. E.g., \"jira\", \"box\", etc.", + "type": "string" + }, + "instanceName": { + "description": "Optional. The instance name identifying the 3P app, e.g., \"vaissptbots-my\". This is different from the instance_uri which is the full URL of the 3P app e.g., \"https://vaissptbots-my.sharepoint.com\".", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaDataStoreServingConfigDataStore": { "description": "Stores information regarding the serving configurations at DataStore level.", "id": "GoogleCloudDiscoveryengineV1betaDataStoreServingConfigDataStore", @@ -25312,6 +26437,42 @@ "properties": {}, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaDistributeLicenseConfigRequest": { + "description": "Request message for LicenseConfigService.DistributeLicenseConfig method.", + "id": "GoogleCloudDiscoveryengineV1betaDistributeLicenseConfigRequest", + "properties": { + "licenseConfigId": { + "description": "Optional. Distribute seats to this license config instead of creating a new one. If not specified, a new license config will be created from the billing account license config.", + "type": "string" + }, + "licenseCount": { + "description": "Required. The number of licenses to distribute.", + "format": "int64", + "type": "string" + }, + "location": { + "description": "Required. The target GCP project region to distribute the license config to.", + "type": "string" + }, + "projectNumber": { + "description": "Required. The target GCP project number to distribute the license config to.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaDistributeLicenseConfigResponse": { + "description": "Response message for LicenseConfigService.DistributeLicenseConfig method.", + "id": "GoogleCloudDiscoveryengineV1betaDistributeLicenseConfigResponse", + "properties": { + "licenseConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaLicenseConfig", + "description": "The updated or created LicenseConfig." + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaDocument": { "description": "Document captures all raw metadata information of items to be recommended or searched.", "id": "GoogleCloudDiscoveryengineV1betaDocument", @@ -25343,7 +26504,7 @@ "readOnly": true }, "indexTime": { - "description": "Output only. The last time the document was indexed. If this field is set, the document could be returned in search results. This field is OUTPUT_ONLY. If this field is not populated, it means the document has never been indexed.", + "description": "Output only. The time when the document was last indexed. If this field is populated, it means the document has been indexed. While documents typically become searchable within seconds of indexing, it can sometimes take up to a few hours. If this field is not populated, it means the document has never been indexed.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -25439,7 +26600,7 @@ "type": "array" }, "indexTime": { - "description": "The time when the document was indexed. If this field is populated, it means the document has been indexed.", + "description": "The time when the document was indexed. If this field is populated, it means the document has been indexed. While documents typically become searchable within seconds of indexing, it can sometimes take up to a few hours.", "format": "google-datetime", "type": "string" }, @@ -25698,6 +26859,10 @@ "description": "Metadata that describes the training and serving parameters of an Engine.", "id": "GoogleCloudDiscoveryengineV1betaEngine", "properties": { + "agentGatewaySetting": { + "$ref": "GoogleCloudDiscoveryengineV1betaAgentGatewaySetting", + "description": "Optional. The agent gateway setting for the engine." + }, "appType": { "description": "Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type.", "enum": [ @@ -25782,7 +26947,7 @@ ], "type": "string" }, - "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails`", + "description": "Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills`", "type": "object" }, "industryVertical": { @@ -25852,9 +27017,12 @@ "$ref": "GoogleCloudDiscoveryengineV1betaObservabilityConfig", "description": "Optional. Observability config for the engine." }, - "procurementContactEmail": { - "description": "Optional. The email of the procurement contact.", - "type": "string" + "procurementContactEmails": { + "description": "Optional. The emails of the procurement contacts.", + "items": { + "type": "string" + }, + "type": "array" }, "searchEngineConfig": { "$ref": "GoogleCloudDiscoveryengineV1betaEngineSearchEngineConfig", @@ -27008,8 +28176,9 @@ "type": "string" }, "updateTime": { - "description": "Operation last update time. If the operation is done, this is also the finish time.", + "description": "Output only. Operation last update time. If the operation is done, this is also the finish time.", "format": "google-datetime", + "readOnly": true, "type": "string" } }, @@ -27684,11 +28853,11 @@ "id": "GoogleCloudDiscoveryengineV1betaObservabilityConfig", "properties": { "observabilityEnabled": { - "description": "Optional. Enables observability. If false, all other flags are ignored.", + "description": "Optional. Enables observability. If `false`, all other flags are ignored.", "type": "boolean" }, "sensitiveLoggingEnabled": { - "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields.", + "description": "Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields.", "type": "boolean" } }, @@ -27876,7 +29045,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus": { - "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month).", + "description": "Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation.", "id": "GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus", "properties": { "effectiveIndexingCoreThreshold": { @@ -27911,6 +29080,25 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "updateType": { + "description": "Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject.", + "enum": [ + "UPDATE_TYPE_UNSPECIFIED", + "CREATE", + "DELETE", + "SCALE_UP", + "SCALE_DOWN" + ], + "enumDescriptions": [ + "Unspecified update type.", + "Configurable billing was created/enabled.", + "Configurable billing was deleted/disabled.", + "Subscription was scaled up (thresholds increased).", + "Subscription was scaled down (thresholds decreased)." + ], + "readOnly": true, + "type": "string" } }, "type": "object" @@ -28401,7 +29589,7 @@ "type": "string" }, "score": { - "description": "The score of this record based on the given query and selected model. The score will be rounded to 2 decimal places. If the score is close to 0, it will be rounded to 0.0001 to avoid returning unset.", + "description": "The score of this record based on the given query and selected model. The score will be rounded to 4 decimal places. If the score is close to 0, it will be rounded to 0.00001 to avoid returning unset.", "format": "float", "type": "number" }, @@ -28663,6 +29851,37 @@ "properties": {}, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaRetractLicenseConfigRequest": { + "description": "Request message for LicenseConfigService.RetractLicenseConfig method.", + "id": "GoogleCloudDiscoveryengineV1betaRetractLicenseConfigRequest", + "properties": { + "fullRetract": { + "description": "Optional. If set to true, retract the entire license config. Otherwise, retract the specified license count.", + "type": "boolean" + }, + "licenseConfig": { + "description": "Required. Full resource name of LicenseConfig. Format: `projects/{project}/locations/{location}/licenseConfigs/{license_config_id}`.", + "type": "string" + }, + "licenseCount": { + "description": "Optional. The number of licenses to retract. Only used when full_retract is false.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaRetractLicenseConfigResponse": { + "description": "Response message for LicenseConfigService.RetractLicenseConfig method.", + "id": "GoogleCloudDiscoveryengineV1betaRetractLicenseConfigResponse", + "properties": { + "licenseConfig": { + "$ref": "GoogleCloudDiscoveryengineV1betaLicenseConfig", + "description": "The updated LicenseConfig." + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaSafetyRating": { "description": "Safety rating corresponding to the generated content.", "id": "GoogleCloudDiscoveryengineV1betaSafetyRating", @@ -28935,6 +30154,10 @@ }, "type": "array" }, + "customRankingParams": { + "$ref": "GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams", + "description": "Optional. Optional configuration for the Custom Ranking feature." + }, "dataStoreSpecs": { "description": "Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used.", "items": { @@ -28950,6 +30173,10 @@ "$ref": "GoogleCloudDiscoveryengineV1betaSearchRequestEmbeddingSpec", "description": "Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.EmbeddingSpec.EmbeddingVector.vector and the document embedding that is provided in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path. If SearchRequest.EmbeddingSpec.EmbeddingVector.field_path is not provided, it will use ServingConfig.EmbeddingConfig.field_path." }, + "entity": { + "description": "Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, \"Google US\", \"Google Ads\", \"Waymo\", \"google.com\", \"youtube.com\", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity.", + "type": "string" + }, "facetSpecs": { "description": "Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned.", "items": { @@ -29103,7 +30330,7 @@ "type": "string" }, "session": { - "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is \"How did Alphabet do in 2022?\" and the current query is \"How about 2023?\", the current query will be interpreted as \"How did Alphabet do in 2023?\". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call.", "type": "string" }, "sessionSpec": { @@ -29460,6 +30687,20 @@ }, "type": "object" }, + "GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams": { + "description": "Configuration parameters for the Custom Ranking feature.", + "id": "GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams", + "properties": { + "expressionsToPrecompute": { + "description": "Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDiscoveryengineV1betaSearchRequestDataStoreSpec": { "description": "A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned.", "id": "GoogleCloudDiscoveryengineV1betaSearchRequestDataStoreSpec", @@ -29667,7 +30908,7 @@ "type": "string" }, "geoSearchQueryDetectionFieldNames": { - "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names.", + "description": "Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`.", "items": { "type": "string" }, @@ -29821,7 +31062,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1betaSearchRequestSessionSpec": { - "description": "Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team.", + "description": "Session specification.", "id": "GoogleCloudDiscoveryengineV1betaSearchRequestSessionSpec", "properties": { "queryId": { @@ -30358,6 +31599,14 @@ "format": "float", "type": "number" }, + "precomputedExpressionValues": { + "description": "Optional. A list of precomputed expression results for a given document, in the same order as requested in `SearchRequest.custom_ranking_params.expressions_to_precompute`.", + "items": { + "format": "float", + "type": "number" + }, + "type": "array" + }, "relevanceScore": { "description": "Optional. Semantic relevance adjustment.", "format": "float", @@ -30919,6 +32168,10 @@ "description": "Output only. In ConversationalSearchService.GetSession API, if GetSessionRequest.include_answer_details is set to true, this field will be populated when getting assistant session.", "readOnly": true }, + "live": { + "description": "Optional. Indicates whether this turn is a live turn.", + "type": "boolean" + }, "query": { "$ref": "GoogleCloudDiscoveryengineV1betaQuery", "description": "Optional. The user query. May not be set if this turn is merely regenerating an answer to a different turn" @@ -31630,6 +32883,10 @@ "description": "The Engine resource name, in the form of `projects/{project}/locations/{location}/collections/{collection_id}/engines/{engine_id}`. Optional. Only required for Engine produced user events. For example, user events from blended search.", "type": "string" }, + "entity": { + "description": "Optional. Represents the entity for customers that may run multiple different entities, domains, sites or regions, for example, `Google US`, `Google Ads`, `Waymo`, `google.com`, `youtube.com`, etc. We recommend that you set `entity` to get better per-entity search, completion, and prediction results.", + "type": "string" + }, "eventTime": { "description": "Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened.", "format": "google-datetime", @@ -31703,6 +32960,10 @@ "description": "Information of an end user.", "id": "GoogleCloudDiscoveryengineV1betaUserInfo", "properties": { + "preciseLocation": { + "$ref": "GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation", + "description": "Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents." + }, "timeZone": { "description": "Optional. IANA time zone, e.g. Europe/Budapest.", "type": "string" @@ -31712,8 +32973,23 @@ "type": "string" }, "userId": { - "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", + "description": "Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation": { + "description": "Precise location info with multiple representation options. Currently only latitude and longitude point is supported.", + "id": "GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation", + "properties": { + "address": { + "description": "Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon.", "type": "string" + }, + "point": { + "$ref": "GoogleTypeLatLng", + "description": "Optional. Location represented by a latitude/longitude point." } }, "type": "object" @@ -32233,6 +33509,23 @@ }, "type": "object" }, + "GoogleTypeLatLng": { + "description": "An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges.", + "id": "GoogleTypeLatLng", + "properties": { + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double", + "type": "number" + }, + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, "GoogleTypeTimeZone": { "description": "Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones).", "id": "GoogleTypeTimeZone", diff --git a/discovery/displayvideo-v2.json b/discovery/displayvideo-v2.json index 3eaeb3264c9..9554aae8d87 100644 --- a/discovery/displayvideo-v2.json +++ b/discovery/displayvideo-v2.json @@ -2200,7 +2200,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -2366,7 +2366,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", + "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3478,7 +3478,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3625,7 +3625,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -5949,198 +5949,6 @@ } } }, - "inventorySources": { - "methods": { - "create": { - "description": "Creates a new inventory source. Returns the newly created inventory source if successful.", - "flatPath": "v2/inventorySources", - "httpMethod": "POST", - "id": "displayvideo.inventorySources.create", - "parameterOrder": [], - "parameters": { - "advertiserId": { - "description": "The ID of the advertiser that the request is being made within.", - "format": "int64", - "location": "query", - "type": "string" - }, - "partnerId": { - "description": "The ID of the partner that the request is being made within.", - "format": "int64", - "location": "query", - "type": "string" - } - }, - "path": "v2/inventorySources", - "request": { - "$ref": "InventorySource" - }, - "response": { - "$ref": "InventorySource" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ] - }, - "editInventorySourceReadWriteAccessors": { - "description": "Edits read/write accessors of an inventory source. Returns the updated read_write_accessors for the inventory source.", - "flatPath": "v2/inventorySources/{inventorySourcesId}:editInventorySourceReadWriteAccessors", - "httpMethod": "POST", - "id": "displayvideo.inventorySources.editInventorySourceReadWriteAccessors", - "parameterOrder": [ - "inventorySourceId" - ], - "parameters": { - "inventorySourceId": { - "description": "Required. The ID of inventory source to update.", - "format": "int64", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v2/inventorySources/{+inventorySourceId}:editInventorySourceReadWriteAccessors", - "request": { - "$ref": "EditInventorySourceReadWriteAccessorsRequest" - }, - "response": { - "$ref": "InventorySourceAccessors" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ] - }, - "get": { - "description": "Gets an inventory source.", - "flatPath": "v2/inventorySources/{inventorySourcesId}", - "httpMethod": "GET", - "id": "displayvideo.inventorySources.get", - "parameterOrder": [ - "inventorySourceId" - ], - "parameters": { - "inventorySourceId": { - "description": "Required. The ID of the inventory source to fetch.", - "format": "int64", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - }, - "partnerId": { - "description": "Required. The ID of the DV360 partner to which the fetched inventory source is permissioned.", - "format": "int64", - "location": "query", - "type": "string" - } - }, - "path": "v2/inventorySources/{+inventorySourceId}", - "response": { - "$ref": "InventorySource" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ] - }, - "list": { - "description": "Lists inventory sources that are accessible to the current user. The order is defined by the order_by parameter. If a filter by entity_status is not specified, inventory sources with entity status `ENTITY_STATUS_ARCHIVED` will not be included in the results.", - "flatPath": "v2/inventorySources", - "httpMethod": "GET", - "id": "displayvideo.inventorySources.list", - "parameterOrder": [], - "parameters": { - "advertiserId": { - "description": "The ID of the advertiser that has access to the inventory source.", - "format": "int64", - "location": "query", - "type": "string" - }, - "filter": { - "description": "Allows filtering by inventory source fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `status.entityStatus` * `commitment` * `deliveryMethod` * `rateDetails.rateType` * `exchange` Examples: * All active inventory sources: `status.entityStatus=\"ENTITY_STATUS_ACTIVE\"` * Inventory sources belonging to Google Ad Manager or Rubicon exchanges: `exchange=\"EXCHANGE_GOOGLE_AD_MANAGER\" OR exchange=\"EXCHANGE_RUBICON\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. For example, `displayName desc`.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Requested page size. Must be between `1` and `200`. If unspecified will default to `100`.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInventorySources` method. If not specified, the first page of results will be returned.", - "location": "query", - "type": "string" - }, - "partnerId": { - "description": "The ID of the partner that has access to the inventory source.", - "format": "int64", - "location": "query", - "type": "string" - } - }, - "path": "v2/inventorySources", - "response": { - "$ref": "ListInventorySourcesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ] - }, - "patch": { - "description": "Updates an existing inventory source. Returns the updated inventory source if successful.", - "flatPath": "v2/inventorySources/{inventorySourcesId}", - "httpMethod": "PATCH", - "id": "displayvideo.inventorySources.patch", - "parameterOrder": [ - "inventorySourceId" - ], - "parameters": { - "advertiserId": { - "description": "The ID of the advertiser that the request is being made within.", - "format": "int64", - "location": "query", - "type": "string" - }, - "inventorySourceId": { - "description": "Output only. The unique ID of the inventory source. Assigned by the system.", - "format": "int64", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - }, - "partnerId": { - "description": "The ID of the partner that the request is being made within.", - "format": "int64", - "location": "query", - "type": "string" - }, - "updateMask": { - "description": "Required. The mask to control which fields to update.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v2/inventorySources/{+inventorySourceId}", - "request": { - "$ref": "InventorySource" - }, - "response": { - "$ref": "InventorySource" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ] - } - } - }, "media": { "methods": { "download": { @@ -7981,7 +7789,7 @@ } } }, - "revision": "20260224", + "revision": "20260421", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActivateManualTriggerRequest": { @@ -9280,6 +9088,10 @@ "description": "Settings that control the bid strategy. Bid strategy determines the bid price.", "id": "BiddingStrategy", "properties": { + "demandGenBid": { + "$ref": "DemandGenBiddingStrategy", + "description": "A bid strategy used by Demand Gen resources. It can only be used for a Demand Gen line item or ad group entity." + }, "fixedBid": { "$ref": "FixedBidStrategy", "description": "A strategy that uses a fixed bid price." @@ -9362,14 +9174,14 @@ "id": "BulkEditAdvertiserAssignedTargetingOptionsRequest", "properties": { "createRequests": { - "description": "The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE`", + "description": "The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", "items": { "$ref": "CreateAssignedTargetingOptionsRequest" }, "type": "array" }, "deleteRequests": { - "description": "The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE`", + "description": "The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", "items": { "$ref": "DeleteAssignedTargetingOptionsRequest" }, @@ -9908,7 +9720,8 @@ "GEO_REGION_TYPE_QUARTER", "GEO_REGION_TYPE_DIVISION", "GEO_REGION_TYPE_COMMUNE", - "GEO_REGION_TYPE_COLLOQUIAL_AREA" + "GEO_REGION_TYPE_COLLOQUIAL_AREA", + "GEO_REGION_TYPE_POST_TOWN" ], "enumDescriptions": [ "The geographic region type is unknown.", @@ -9948,7 +9761,8 @@ "The geographic region is a quarter.", "The geographic region is a division.", "The geographic region is a commune.", - "The geographic region is a colloquial area." + "The geographic region is a colloquial area.", + "The geographic region is a post town." ], "readOnly": true, "type": "string" @@ -10733,6 +10547,11 @@ "description": "The percentage of post-view conversions to count, in millis (1/1000 of a percent). Must be between 0 and 100000 inclusive. For example, to track 50% of the post-click conversions, set a value of 50000.", "format": "int64", "type": "string" + }, + "primaryAttributionModelId": { + "description": "Optional. The attribution model to use for conversion measurement. This attribution model will determine how conversions are counted. The Primary model can be set by you for a floodlight config or group. More details [here](https://support.google.com/displayvideo/answer/7409983). Only applicable to Demand Gen line items. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users.", + "format": "int64", + "type": "string" } }, "type": "object" @@ -10957,9 +10776,9 @@ true, true, true, - false, - false, - false, + true, + true, + true, false, false, false @@ -11350,61 +11169,6 @@ }, "type": "object" }, - "CreativeConfig": { - "description": "Creative requirements configuration for the inventory source.", - "id": "CreativeConfig", - "properties": { - "creativeType": { - "description": "The type of creative that can be assigned to the inventory source. Only the following types are supported: * `CREATIVE_TYPE_STANDARD` * `CREATIVE_TYPE_VIDEO`", - "enum": [ - "CREATIVE_TYPE_UNSPECIFIED", - "CREATIVE_TYPE_STANDARD", - "CREATIVE_TYPE_EXPANDABLE", - "CREATIVE_TYPE_VIDEO", - "CREATIVE_TYPE_NATIVE", - "CREATIVE_TYPE_TEMPLATED_APP_INSTALL", - "CREATIVE_TYPE_NATIVE_SITE_SQUARE", - "CREATIVE_TYPE_TEMPLATED_APP_INSTALL_INTERSTITIAL", - "CREATIVE_TYPE_LIGHTBOX", - "CREATIVE_TYPE_NATIVE_APP_INSTALL", - "CREATIVE_TYPE_NATIVE_APP_INSTALL_SQUARE", - "CREATIVE_TYPE_AUDIO", - "CREATIVE_TYPE_PUBLISHER_HOSTED", - "CREATIVE_TYPE_NATIVE_VIDEO", - "CREATIVE_TYPE_TEMPLATED_APP_INSTALL_VIDEO", - "CREATIVE_TYPE_ASSET_BASED_CREATIVE" - ], - "enumDescriptions": [ - "Type value is not specified or is unknown in this version.", - "Standard display creative. Create and update methods are supported for this creative type if the hosting_source is one of the following: * `HOSTING_SOURCE_HOSTED` * `HOSTING_SOURCE_THIRD_PARTY`", - "Expandable creative. Create and update methods are supported for this creative type if the hosting_source is `HOSTING_SOURCE_THIRD_PARTY`", - "Video creative. Create and update methods are supported for this creative type if the hosting_source is one of the following: * `HOSTING_SOURCE_HOSTED` * `HOSTING_SOURCE_THIRD_PARTY`", - "Native creative rendered by publishers with assets from advertiser. Create and update methods are supported for this creative type if the hosting_source is `HOSTING_SOURCE_HOSTED`", - "Templated app install mobile creative (banner). Create and update methods are **not** supported for this creative type.", - "Square native creative. Create and update methods are supported for this creative type if the hosting_source is `HOSTING_SOURCE_HOSTED`", - "Interstitial creative including both display and video. Create and update methods are **not** supported for this creative type.", - "Responsive and expandable Lightbox creative. Create and update methods are **not** supported for this creative type.", - "Native app install creative. Create and update methods are **not** supported for this creative type.", - "Square native app install creative. Create and update methods are **not** supported for this creative type.", - "Audio creative. Create and update methods are supported for this creative type if the hosting_source is `HOSTING_SOURCE_HOSTED`", - "Publisher hosted creative. Create and update methods are **not** supported for this creative type.", - "Native video creative. Create and update methods are supported for this creative type if the hosting_source is `HOSTING_SOURCE_HOSTED`", - "Templated app install mobile video creative. Create and update methods are **not** supported for this creative type.", - "Asset-based creative. Create and update methods are supported for this creative type if the hosting_source is `HOSTING_SOURCE_HOSTED`." - ], - "type": "string" - }, - "displayCreativeConfig": { - "$ref": "InventorySourceDisplayCreativeConfig", - "description": "The configuration for display creatives. Applicable when creative_type is `CREATIVE_TYPE_STANDARD`." - }, - "videoCreativeConfig": { - "$ref": "InventorySourceVideoCreativeConfig", - "description": "The configuration for video creatives. Applicable when creative_type is `CREATIVE_TYPE_VIDEO`." - } - }, - "type": "object" - }, "CustomBiddingAlgorithm": { "description": "A single custom bidding algorithm.", "id": "CustomBiddingAlgorithm", @@ -11763,7 +11527,7 @@ "type": "integer" }, "timeZoneResolution": { - "description": "Required. The mechanism used to determine which timezone to use for this day and time targeting setting.", + "description": "Required. The mechanism used to determine which timezone to use for this day and time targeting setting. For Demand Gen line items, this field is always `TIME_ZONE_RESOLUTION_ADVERTISER`.", "enum": [ "TIME_ZONE_RESOLUTION_UNSPECIFIED", "TIME_ZONE_RESOLUTION_END_USER", @@ -11905,6 +11669,81 @@ }, "type": "object" }, + "DemandGenBiddingStrategy": { + "description": "Settings that control the bid strategy for Demand Gen resources.", + "id": "DemandGenBiddingStrategy", + "properties": { + "effectiveBiddingValue": { + "description": "Output only. The value effectively used by the bidding strategy. This field will be the same as value if set. If value is not set and the strategy is assigned to an ad group, this field will be inherited from the line item's bidding strategy. If type is not `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA` or `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS`, this field will be 0.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "effectiveBiddingValueSource": { + "description": "Output only. Source of the effective bidding value.", + "enum": [ + "BIDDING_SOURCE_UNSPECIFIED", + "BIDDING_SOURCE_LINE_ITEM", + "BIDDING_SOURCE_AD_GROUP" + ], + "enumDescriptions": [ + "Bidding source is not specified or unknown.", + "Bidding value is inherited from the line item.", + "Bidding value is defined in the ad group." + ], + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Optional. The type of the bidding strategy. This can only be set when assigned to a line item. Ad groups will inherit this value from their line item.", + "enum": [ + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_UNSPECIFIED", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_MAXIMIZE_CONVERSIONS", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_MAXIMIZE_CONVERSION_VALUE", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_MAXIMIZE_CLICKS", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPC" + ], + "enumDescriptions": [ + "Type is not specified or unknown.", + "A bidding strategy that automatically optimizes conversions per dollar.", + "A bidding strategy that automatically maximizes revenue while averaging a specific target Return On Ad Spend (ROAS).", + "A bidding strategy that automatically maximizes number of conversions", + "A bidding strategy that automatically maximizes revenue while spending your budget.", + "A bidding strategy that automatically maximizes clicks within a given budget.", + "A bidding strategy that automatically optimizes cost per click." + ], + "type": "string" + }, + "value": { + "description": "Optional. The value used by the bidding strategy. This can be set when assigned to line items or ad groups. This field is only applicable for the following strategy types: * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPC` * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS` Value of this field is in micros of the advertiser's currency or ROAS value. For example, 1000000 represents 1.0 standard units of the currency or 100% ROAS value. If not using an applicable strategy, the value of this field will be 0.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "DemandGenSettings": { + "description": "Settings for Demand Gen line items.", + "id": "DemandGenSettings", + "properties": { + "geoLanguageTargetingEnabled": { + "description": "Optional. Immutable. Whether location and language targeting can be set at the line item level. Otherwise, relevant targeting types must be assigned directly to ad groups.", + "type": "boolean" + }, + "linkedMerchantId": { + "description": "Optional. The ID of the Merchant Center account used to provide a product feed. This Merchant Center account must already be linked to the advertiser.", + "format": "int64", + "type": "string" + }, + "thirdPartyMeasurementConfigs": { + "$ref": "ThirdPartyMeasurementConfigs", + "description": "Optional. The third party measurement settings for the Demand Gen line item." + } + }, + "type": "object" + }, "DeviceMakeModelAssignedTargetingOptionDetails": { "description": "Assigned device make and model targeting option details. This will be populated in the device_make_model_details field when targeting_type is `TARGETING_TYPE_DEVICE_MAKE_MODEL`.", "id": "DeviceMakeModelAssignedTargetingOptionDetails", @@ -12518,49 +12357,6 @@ }, "type": "object" }, - "EditInventorySourceReadWriteAccessorsRequest": { - "description": "Request message for InventorySourceService.EditInventorySourceReadWriteAccessors.", - "id": "EditInventorySourceReadWriteAccessorsRequest", - "properties": { - "advertisersUpdate": { - "$ref": "EditInventorySourceReadWriteAccessorsRequestAdvertisersUpdate", - "description": "The advertisers to add or remove from the list of advertisers that have read/write access to the inventory source. This change will remove an existing partner read/write accessor." - }, - "assignPartner": { - "description": "Set the partner context as read/write accessor of the inventory source. This will remove all other current read/write advertiser accessors.", - "type": "boolean" - }, - "partnerId": { - "description": "Required. The partner context by which the accessors change is being made.", - "format": "int64", - "type": "string" - } - }, - "type": "object" - }, - "EditInventorySourceReadWriteAccessorsRequestAdvertisersUpdate": { - "description": "Update to the list of advertisers with read/write access to the inventory source.", - "id": "EditInventorySourceReadWriteAccessorsRequestAdvertisersUpdate", - "properties": { - "addedAdvertisers": { - "description": "The advertisers to add.", - "items": { - "format": "int64", - "type": "string" - }, - "type": "array" - }, - "removedAdvertisers": { - "description": "The advertisers to remove.", - "items": { - "format": "int64", - "type": "string" - }, - "type": "array" - } - }, - "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", @@ -13747,7 +13543,8 @@ "GEO_REGION_TYPE_QUARTER", "GEO_REGION_TYPE_DIVISION", "GEO_REGION_TYPE_COMMUNE", - "GEO_REGION_TYPE_COLLOQUIAL_AREA" + "GEO_REGION_TYPE_COLLOQUIAL_AREA", + "GEO_REGION_TYPE_POST_TOWN" ], "enumDescriptions": [ "The geographic region type is unknown.", @@ -13787,7 +13584,8 @@ "The geographic region is a quarter.", "The geographic region is a division.", "The geographic region is a commune.", - "The geographic region is a colloquial area." + "The geographic region is a colloquial area.", + "The geographic region is a post town." ], "readOnly": true, "type": "string" @@ -13863,7 +13661,8 @@ "GEO_REGION_TYPE_QUARTER", "GEO_REGION_TYPE_DIVISION", "GEO_REGION_TYPE_COMMUNE", - "GEO_REGION_TYPE_COLLOQUIAL_AREA" + "GEO_REGION_TYPE_COLLOQUIAL_AREA", + "GEO_REGION_TYPE_POST_TOWN" ], "enumDescriptions": [ "The geographic region type is unknown.", @@ -13903,7 +13702,8 @@ "The geographic region is a quarter.", "The geographic region is a division.", "The geographic region is a commune.", - "The geographic region is a colloquial area." + "The geographic region is a colloquial area.", + "The geographic region is a post town." ], "readOnly": true, "type": "string" @@ -14430,6 +14230,11 @@ "description": "Meta data of an image asset.", "id": "ImageAsset", "properties": { + "assetId": { + "description": "Required. The unique ID of the asset.", + "format": "int64", + "type": "string" + }, "fileSize": { "description": "Output only. File size of the image asset in bytes.", "format": "int64", @@ -14461,7 +14266,7 @@ "additionalProperties": { "type": "string" }, - "description": "The custom parameters to pass custom values to tracking URL template.", + "description": "The custom parameters and accompanying values to add to the tracking URL.", "type": "object" } }, @@ -14630,7 +14435,7 @@ "Insertion order automation option is not specified or is unknown in this version.", "Automatic budget allocation. Allow the system to automatically shift budget to owning line items to optimize performance defined by kpi. No automation on bid settings.", "No automation of bid or budget on insertion order level. Bid and budget must be manually configured at the line item level.", - "Allow the system to automatically adjust bids and shift budget to owning line items to optimize performance defined by kpi." + "Allow the system to automatically adjust bids and shift budget to owning line items to optimize performance defined by bid_strategy." ], "type": "string" }, @@ -14905,386 +14710,6 @@ }, "type": "object" }, - "InventorySource": { - "description": "An inventory source. Next ID: 22", - "id": "InventorySource", - "properties": { - "commitment": { - "description": "Whether the inventory source has a guaranteed or non-guaranteed delivery.", - "enum": [ - "INVENTORY_SOURCE_COMMITMENT_UNSPECIFIED", - "INVENTORY_SOURCE_COMMITMENT_GUARANTEED", - "INVENTORY_SOURCE_COMMITMENT_NON_GUARANTEED" - ], - "enumDescriptions": [ - "The commitment is not specified or is unknown in this version.", - "The commitment is guaranteed delivery.", - "The commitment is non-guaranteed delivery." - ], - "type": "string" - }, - "creativeConfigs": { - "description": "The creative requirements of the inventory source. Not applicable for auction packages.", - "items": { - "$ref": "CreativeConfig" - }, - "type": "array" - }, - "dealId": { - "description": "The ID in the exchange space that uniquely identifies the inventory source. Must be unique across buyers within each exchange but not necessarily unique across exchanges.", - "type": "string" - }, - "deliveryMethod": { - "description": "The delivery method of the inventory source. * For non-guaranteed inventory sources, the only acceptable value is `INVENTORY_SOURCE_DELIVERY_METHOD_PROGRAMMATIC`. * For guaranteed inventory sources, acceptable values are `INVENTORY_SOURCE_DELIVERY_METHOD_TAG` and `INVENTORY_SOURCE_DELIVERY_METHOD_PROGRAMMATIC`.", - "enum": [ - "INVENTORY_SOURCE_DELIVERY_METHOD_UNSPECIFIED", - "INVENTORY_SOURCE_DELIVERY_METHOD_PROGRAMMATIC", - "INVENTORY_SOURCE_DELIVERY_METHOD_TAG" - ], - "enumDescriptions": [ - "The delivery method is not specified or is unknown in this version.", - "The delivery method is programmatic.", - "The delivery method is tag." - ], - "type": "string" - }, - "displayName": { - "description": "The display name of the inventory source. Must be UTF-8 encoded with a maximum size of 240 bytes.", - "type": "string" - }, - "exchange": { - "description": "The exchange to which the inventory source belongs.", - "enum": [ - "EXCHANGE_UNSPECIFIED", - "EXCHANGE_GOOGLE_AD_MANAGER", - "EXCHANGE_APPNEXUS", - "EXCHANGE_BRIGHTROLL", - "EXCHANGE_ADFORM", - "EXCHANGE_ADMETA", - "EXCHANGE_ADMIXER", - "EXCHANGE_ADSMOGO", - "EXCHANGE_ADSWIZZ", - "EXCHANGE_BIDSWITCH", - "EXCHANGE_BRIGHTROLL_DISPLAY", - "EXCHANGE_CADREON", - "EXCHANGE_DAILYMOTION", - "EXCHANGE_FIVE", - "EXCHANGE_FLUCT", - "EXCHANGE_FREEWHEEL", - "EXCHANGE_GENIEE", - "EXCHANGE_GUMGUM", - "EXCHANGE_IMOBILE", - "EXCHANGE_IBILLBOARD", - "EXCHANGE_IMPROVE_DIGITAL", - "EXCHANGE_INDEX", - "EXCHANGE_KARGO", - "EXCHANGE_MICROAD", - "EXCHANGE_MOPUB", - "EXCHANGE_NEND", - "EXCHANGE_ONE_BY_AOL_DISPLAY", - "EXCHANGE_ONE_BY_AOL_MOBILE", - "EXCHANGE_ONE_BY_AOL_VIDEO", - "EXCHANGE_OOYALA", - "EXCHANGE_OPENX", - "EXCHANGE_PERMODO", - "EXCHANGE_PLATFORMONE", - "EXCHANGE_PLATFORMID", - "EXCHANGE_PUBMATIC", - "EXCHANGE_PULSEPOINT", - "EXCHANGE_REVENUEMAX", - "EXCHANGE_RUBICON", - "EXCHANGE_SMARTCLIP", - "EXCHANGE_SMARTRTB", - "EXCHANGE_SMARTSTREAMTV", - "EXCHANGE_SOVRN", - "EXCHANGE_SPOTXCHANGE", - "EXCHANGE_STROER", - "EXCHANGE_TEADSTV", - "EXCHANGE_TELARIA", - "EXCHANGE_TVN", - "EXCHANGE_UNITED", - "EXCHANGE_YIELDLAB", - "EXCHANGE_YIELDMO", - "EXCHANGE_UNRULYX", - "EXCHANGE_OPEN8", - "EXCHANGE_TRITON", - "EXCHANGE_TRIPLELIFT", - "EXCHANGE_TABOOLA", - "EXCHANGE_INMOBI", - "EXCHANGE_SMAATO", - "EXCHANGE_AJA", - "EXCHANGE_SUPERSHIP", - "EXCHANGE_NEXSTAR_DIGITAL", - "EXCHANGE_WAZE", - "EXCHANGE_SOUNDCAST", - "EXCHANGE_SHARETHROUGH", - "EXCHANGE_FYBER", - "EXCHANGE_RED_FOR_PUBLISHERS", - "EXCHANGE_MEDIANET", - "EXCHANGE_TAPJOY", - "EXCHANGE_VISTAR", - "EXCHANGE_DAX", - "EXCHANGE_JCD", - "EXCHANGE_PLACE_EXCHANGE", - "EXCHANGE_APPLOVIN", - "EXCHANGE_CONNATIX", - "EXCHANGE_RESET_DIGITAL", - "EXCHANGE_HIVESTACK", - "EXCHANGE_DRAX", - "EXCHANGE_APPLOVIN_GBID", - "EXCHANGE_FYBER_GBID", - "EXCHANGE_UNITY_GBID", - "EXCHANGE_CHARTBOOST_GBID", - "EXCHANGE_ADMOST_GBID", - "EXCHANGE_TOPON_GBID", - "EXCHANGE_NETFLIX", - "EXCHANGE_CORE", - "EXCHANGE_COMMERCE_GRID", - "EXCHANGE_SPOTIFY", - "EXCHANGE_TUBI", - "EXCHANGE_SNAP", - "EXCHANGE_CADENT" - ], - "enumDescriptions": [ - "Exchange is not specified or is unknown in this version.", - "Google Ad Manager.", - "AppNexus.", - "BrightRoll Exchange for Video from Yahoo!.", - "Adform.", - "Admeta.", - "Admixer.", - "AdsMogo.", - "AdsWizz.", - "BidSwitch.", - "BrightRoll Exchange for Display from Yahoo!.", - "Cadreon.", - "Dailymotion.", - "Five.", - "Fluct.", - "FreeWheel SSP.", - "Geniee.", - "GumGum.", - "i-mobile.", - "iBILLBOARD.", - "Improve Digital.", - "Index Exchange.", - "Kargo.", - "MicroAd.", - "MoPub.", - "Nend.", - "ONE by AOL: Display Market Place.", - "ONE by AOL: Mobile.", - "ONE by AOL: Video.", - "Ooyala.", - "OpenX.", - "Permodo.", - "Platform One.", - "PlatformId.", - "PubMatic.", - "PulsePoint.", - "RevenueMax.", - "Rubicon.", - "SmartClip.", - "SmartRTB+.", - "SmartstreamTv.", - "Sovrn.", - "SpotXchange.", - "Ströer SSP.", - "TeadsTv.", - "Telaria.", - "TVN.", - "United.", - "Yieldlab.", - "Yieldmo.", - "UnrulyX.", - "Open8.", - "Triton.", - "TripleLift.", - "Taboola.", - "InMobi.", - "Smaato.", - "Aja.", - "Supership.", - "Nexstar Digital.", - "Waze.", - "SoundCast.", - "Sharethrough.", - "Fyber.", - "Red For Publishers.", - "Media.net.", - "Tapjoy.", - "Vistar.", - "DAX.", - "JCD.", - "Place Exchange.", - "AppLovin.", - "Connatix.", - "Reset Digital.", - "Hivestack.", - "Drax.", - "AppLovin MAX.", - "DT Fairbid.", - "Unity LevelPlay.", - "Chartboost Mediation.", - "AdMost.", - "TopOn.", - "Netflix.", - "Core.", - "Commerce Grid.", - "Spotify.", - "Tubi.", - "Snap.", - "Cadent." - ], - "type": "string" - }, - "guaranteedOrderId": { - "description": "Immutable. The ID of the guaranteed order that this inventory source belongs to. Only applicable when commitment is `INVENTORY_SOURCE_COMMITMENT_GUARANTEED`.", - "type": "string" - }, - "inventorySourceId": { - "description": "Output only. The unique ID of the inventory source. Assigned by the system.", - "format": "int64", - "readOnly": true, - "type": "string" - }, - "inventorySourceProductType": { - "description": "Output only. The product type of the inventory source, denoting the way through which it sells inventory.", - "enum": [ - "INVENTORY_SOURCE_PRODUCT_TYPE_UNSPECIFIED", - "PREFERRED_DEAL", - "PRIVATE_AUCTION", - "PROGRAMMATIC_GUARANTEED", - "TAG_GUARANTEED", - "YOUTUBE_RESERVE", - "INSTANT_RESERVE", - "GUARANTEED_PACKAGE", - "PROGRAMMATIC_TV", - "AUCTION_PACKAGE" - ], - "enumDescriptions": [ - "The product type is not specified or is unknown in this version. Modifying inventory sources of this product type are not supported via API.", - "The inventory source sells inventory through Preferred Deal.", - "The inventory source sells inventory through Private Auction.", - "The inventory source sells inventory through Programmatic Guaranteed.", - "The inventory source sells inventory through Tag Guaranteed.", - "The inventory source sells inventory through YouTube Reserve.", - "The inventory source sells inventory through Instant Reserve. Modifying inventory sources of this product type are not supported via API.", - "The inventory source sells inventory through Guaranteed Package. Modifying inventory sources of this product type are not supported via API.", - "The inventory source sells inventory through Programmtic TV. Modifying inventory sources of this product type are not supported via API.", - "The inventory source sells inventory through Auction Package. Modifying inventory sources of this product type are not supported via API." - ], - "readOnly": true, - "type": "string" - }, - "inventorySourceType": { - "description": "Denotes the type of the inventory source.", - "enum": [ - "INVENTORY_SOURCE_TYPE_UNSPECIFIED", - "INVENTORY_SOURCE_TYPE_PRIVATE", - "INVENTORY_SOURCE_TYPE_AUCTION_PACKAGE" - ], - "enumDescriptions": [ - "The inventory source type is not specified or is unknown in this version.", - "Private inventory source.", - "Auction package." - ], - "type": "string" - }, - "name": { - "description": "Output only. The resource name of the inventory source.", - "readOnly": true, - "type": "string" - }, - "publisherName": { - "description": "The publisher/seller name of the inventory source.", - "type": "string" - }, - "rateDetails": { - "$ref": "RateDetails", - "description": "Required. The rate details of the inventory source." - }, - "readAdvertiserIds": { - "description": "Output only. The IDs of advertisers with read-only access to the inventory source.", - "items": { - "format": "int64", - "type": "string" - }, - "readOnly": true, - "type": "array" - }, - "readPartnerIds": { - "description": "Output only. The IDs of partners with read-only access to the inventory source. All advertisers of partners in this field inherit read-only access to the inventory source.", - "items": { - "format": "int64", - "type": "string" - }, - "readOnly": true, - "type": "array" - }, - "readWriteAccessors": { - "$ref": "InventorySourceAccessors", - "description": "The partner or advertisers that have read/write access to the inventory source. Output only when commitment is `INVENTORY_SOURCE_COMMITMENT_GUARANTEED`, in which case the read/write accessors are inherited from the parent guaranteed order. Required when commitment is `INVENTORY_SOURCE_COMMITMENT_NON_GUARANTEED`. If commitment is `INVENTORY_SOURCE_COMMITMENT_NON_GUARANTEED` and a partner is set in this field, all advertisers under this partner will automatically have read-only access to the inventory source. These advertisers will not be included in read_advertiser_ids." - }, - "status": { - "$ref": "InventorySourceStatus", - "description": "The status settings of the inventory source." - }, - "timeRange": { - "$ref": "TimeRange", - "description": "The time range when this inventory source starts and stops serving." - }, - "updateTime": { - "description": "Output only. The timestamp when the inventory source was last updated. Assigned by the system.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "InventorySourceAccessors": { - "description": "The partner or advertisers with access to the inventory source.", - "id": "InventorySourceAccessors", - "properties": { - "advertisers": { - "$ref": "InventorySourceAccessorsAdvertiserAccessors", - "description": "The advertisers with access to the inventory source. All advertisers must belong to the same partner." - }, - "partner": { - "$ref": "InventorySourceAccessorsPartnerAccessor", - "description": "The partner with access to the inventory source." - } - }, - "type": "object" - }, - "InventorySourceAccessorsAdvertiserAccessors": { - "description": "The advertisers with access to the inventory source.", - "id": "InventorySourceAccessorsAdvertiserAccessors", - "properties": { - "advertiserIds": { - "description": "The IDs of the advertisers.", - "items": { - "format": "int64", - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "InventorySourceAccessorsPartnerAccessor": { - "description": "The partner with access to the inventory source.", - "id": "InventorySourceAccessorsPartnerAccessor", - "properties": { - "partnerId": { - "description": "The ID of the partner.", - "format": "int64", - "type": "string" - } - }, - "type": "object" - }, "InventorySourceAssignedTargetingOptionDetails": { "description": "Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE`.", "id": "InventorySourceAssignedTargetingOptionDetails", @@ -15297,17 +14722,6 @@ }, "type": "object" }, - "InventorySourceDisplayCreativeConfig": { - "description": "The configuration for display creatives.", - "id": "InventorySourceDisplayCreativeConfig", - "properties": { - "creativeSize": { - "$ref": "Dimensions", - "description": "The size requirements for display creatives that can be assigned to the inventory source." - } - }, - "type": "object" - }, "InventorySourceFilter": { "description": "A filtering option for filtering on Inventory Source entities.", "id": "InventorySourceFilter", @@ -15357,90 +14771,6 @@ }, "type": "object" }, - "InventorySourceStatus": { - "description": "The status related settings of the inventory source.", - "id": "InventorySourceStatus", - "properties": { - "configStatus": { - "description": "Output only. The configuration status of the inventory source. Only applicable for guaranteed inventory sources. Acceptable values are `INVENTORY_SOURCE_CONFIG_STATUS_PENDING` and `INVENTORY_SOURCE_CONFIG_STATUS_COMPLETED`. An inventory source must be configured (fill in the required fields, choose creatives, and select a default campaign) before it can serve.", - "enum": [ - "INVENTORY_SOURCE_CONFIG_STATUS_UNSPECIFIED", - "INVENTORY_SOURCE_CONFIG_STATUS_PENDING", - "INVENTORY_SOURCE_CONFIG_STATUS_COMPLETED" - ], - "enumDescriptions": [ - "The approval status is not specified or is unknown in this version.", - "The beginning state of a guaranteed inventory source. The inventory source in this state needs to be configured.", - "The state after the buyer configures a guaranteed inventory source." - ], - "readOnly": true, - "type": "string" - }, - "entityPauseReason": { - "description": "The user-provided reason for pausing this inventory source. Must not exceed 100 characters. Only applicable when entity_status is set to `ENTITY_STATUS_PAUSED`.", - "type": "string" - }, - "entityStatus": { - "description": "Whether or not the inventory source is servable. Acceptable values are `ENTITY_STATUS_ACTIVE`, `ENTITY_STATUS_ARCHIVED`, and `ENTITY_STATUS_PAUSED`. Default value is `ENTITY_STATUS_ACTIVE`.", - "enum": [ - "ENTITY_STATUS_UNSPECIFIED", - "ENTITY_STATUS_ACTIVE", - "ENTITY_STATUS_ARCHIVED", - "ENTITY_STATUS_DRAFT", - "ENTITY_STATUS_PAUSED", - "ENTITY_STATUS_SCHEDULED_FOR_DELETION" - ], - "enumDescriptions": [ - "Default value when status is not specified or is unknown in this version.", - "The entity is enabled to bid and spend budget.", - "The entity is archived. Bidding and budget spending are disabled. An entity can be deleted after archived. Deleted entities cannot be retrieved.", - "The entity is under draft. Bidding and budget spending are disabled.", - "Bidding and budget spending are paused for the entity.", - "The entity is scheduled for deletion." - ], - "type": "string" - }, - "sellerPauseReason": { - "description": "Output only. The seller-provided reason for pausing this inventory source. Only applicable for inventory sources synced directly from the publishers and when seller_status is set to `ENTITY_STATUS_PAUSED`.", - "readOnly": true, - "type": "string" - }, - "sellerStatus": { - "description": "Output only. The status set by the seller for the inventory source. Only applicable for inventory sources synced directly from the publishers. Acceptable values are `ENTITY_STATUS_ACTIVE` and `ENTITY_STATUS_PAUSED`.", - "enum": [ - "ENTITY_STATUS_UNSPECIFIED", - "ENTITY_STATUS_ACTIVE", - "ENTITY_STATUS_ARCHIVED", - "ENTITY_STATUS_DRAFT", - "ENTITY_STATUS_PAUSED", - "ENTITY_STATUS_SCHEDULED_FOR_DELETION" - ], - "enumDescriptions": [ - "Default value when status is not specified or is unknown in this version.", - "The entity is enabled to bid and spend budget.", - "The entity is archived. Bidding and budget spending are disabled. An entity can be deleted after archived. Deleted entities cannot be retrieved.", - "The entity is under draft. Bidding and budget spending are disabled.", - "Bidding and budget spending are paused for the entity.", - "The entity is scheduled for deletion." - ], - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "InventorySourceVideoCreativeConfig": { - "description": "The configuration for video creatives.", - "id": "InventorySourceVideoCreativeConfig", - "properties": { - "duration": { - "description": "The duration requirements for the video creatives that can be assigned to the inventory source.", - "format": "google-duration", - "type": "string" - } - }, - "type": "object" - }, "Invoice": { "description": "A single invoice.", "id": "Invoice", @@ -15552,6 +14882,13 @@ "description": "Details for assigned keyword targeting option. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_KEYWORD`.", "id": "KeywordAssignedTargetingOptionDetails", "properties": { + "exemptedPolicyNames": { + "description": "Optional. The policy names to exempt the keyword from. When attempting to target a keyword that violates a policy, the error returned will include the name of the relevant policy. Use that name in this field to exempt the targeted keyword from the policy. This field is only applicable for positively-targeted keywords assigned to Demand Gen resources. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users.", + "items": { + "type": "string" + }, + "type": "array" + }, "keyword": { "description": "Required. The keyword, for example `car insurance`. Positive keyword cannot be offensive word. Must be UTF-8 encoded with a maximum size of 255 bytes. Maximum number of characters is 80. Maximum number of words is 10.", "type": "string" @@ -15645,6 +14982,10 @@ }, "type": "array" }, + "demandGenSettings": { + "$ref": "DemandGenSettings", + "description": "Optional. Settings specific to Demand Gen line items. Only applicable to Demand Gen line items. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, "displayName": { "description": "Required. The display name of the line item. Must be UTF-8 encoded with a maximum size of 240 bytes.", "type": "string" @@ -15679,7 +15020,7 @@ }, "frequencyCap": { "$ref": "FrequencyCap", - "description": "Required. The impression frequency cap settings of the line item. The max_impressions field in this settings object must be used if assigning a limited cap." + "description": "Optional. Required if the line item type is not `LINE_ITEM_TYPE_DEMAND_GEN`. The impression frequency cap settings of the line item. The max_impressions field in this settings object must be used if assigning a limited cap." }, "insertionOrderId": { "description": "Required. Immutable. The unique ID of the insertion order that the line item belongs to.", @@ -15720,7 +15061,8 @@ "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_TARGET_FREQUENCY", "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIEW", "LINE_ITEM_TYPE_DISPLAY_OUT_OF_HOME", - "LINE_ITEM_TYPE_VIDEO_OUT_OF_HOME" + "LINE_ITEM_TYPE_VIDEO_OUT_OF_HOME", + "LINE_ITEM_TYPE_DEMAND_GEN" ], "enumDescriptions": [ "Type value is not specified or is unknown in this version. Line items of this type and their targeting cannot be created or updated using the API.", @@ -15744,7 +15086,8 @@ "The goal of this line item type is to show the YouTube ads target number of times to the same person in a certain period of time. Line items of this type and their targeting cannot be created or updated using the API.", "YouTube video ads that aim to get more views with a variety of ad formats. Line items of this type and their targeting cannot be created or updated using the API.", "Display ads served on digital-out-of-home inventory. Line items of this type and their targeting cannot be created or updated using the API.", - "Video ads served on digital-out-of-home inventory. Line items of this type and their targeting cannot be created or updated using the API." + "Video ads served on digital-out-of-home inventory. Line items of this type and their targeting cannot be created or updated using the API.", + "Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This enum value is only available to allowlisted users." ], "type": "string" }, @@ -15757,6 +15100,10 @@ "readOnly": true, "type": "string" }, + "optimizeFixedBidding": { + "description": "Optional. Whether to enable DV360's bid optimization for fixed bid line items. By default, DV360 optimizes your fixed bid by automatically lowering bids for impressions that are less likely to perform well. This optimization is enabled by default (value is true). When this field is set to `false`, this optimization is disabled, and the bid will not be lowered for any reason. This setting only applies to line items with a `bidding_strategy` of type `FIXED_BID`.", + "type": "boolean" + }, "pacing": { "$ref": "Pacing", "description": "Required. The budget spending speed setting of the line item." @@ -15868,7 +15215,7 @@ "id": "LineItemBudget", "properties": { "budgetAllocationType": { - "description": "Required. The type of the budget allocation. `LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC` is only applicable when automatic budget allocation is enabled for the parent insertion order.", + "description": "Required. The type of the budget allocation. `LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC` is only applicable when automatic budget allocation is enabled for the parent insertion order. This field must be set to `LINE_ITEM_BUDGET_ALLOCATION_TYPE_FIXED` for Demand Gen line items.", "enum": [ "LINE_ITEM_BUDGET_ALLOCATION_TYPE_UNSPECIFIED", "LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC", @@ -16207,23 +15554,6 @@ }, "type": "object" }, - "ListInventorySourcesResponse": { - "id": "ListInventorySourcesResponse", - "properties": { - "inventorySources": { - "description": "The list of inventory sources. This list will be absent if empty.", - "items": { - "$ref": "InventorySource" - }, - "type": "array" - }, - "nextPageToken": { - "description": "A token to retrieve the next page of results. Pass this value in the page_token field in the subsequent call to `ListInventorySources` method to retrieve the next page of results.", - "type": "string" - } - }, - "type": "object" - }, "ListInvoicesResponse": { "id": "ListInvoicesResponse", "properties": { @@ -16768,27 +16098,6 @@ }, "type": "object" }, - "Money": { - "description": "Represents an amount of money with its currency type.", - "id": "Money", - "properties": { - "currencyCode": { - "description": "The three-letter currency code defined in ISO 4217.", - "type": "string" - }, - "nanos": { - "description": "Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", - "format": "int32", - "type": "integer" - }, - "units": { - "description": "The whole units of the amount. For example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", - "format": "int64", - "type": "string" - } - }, - "type": "object" - }, "NativeContentPositionAssignedTargetingOptionDetails": { "description": "Details for native content position assigned targeting option. This will be populated in the native_content_position_details field when targeting_type is `TARGETING_TYPE_NATIVE_CONTENT_POSITION`. Explicitly targeting all options is not supported. Remove all native content position targeting options to achieve this effect.", "id": "NativeContentPositionAssignedTargetingOptionDetails", @@ -16918,7 +16227,7 @@ "additionalProperties": { "type": "string" }, - "description": "The custom parameters to pass custom values to tracking URL template.", + "description": "The custom parameters and accompanying values to add to the tracking URL.", "type": "object" } }, @@ -17533,7 +16842,7 @@ "type": "string" }, "markupType": { - "description": "Required. The markup type of the partner revenue model.", + "description": "Required. The markup type of the partner revenue model. This field must be set to `PARTNER_REVENUE_MODEL_MARKUP_TYPE_TOTAL_MEDIA_COST_MARKUP` for Demand Gen line items.", "enum": [ "PARTNER_REVENUE_MODEL_MARKUP_TYPE_UNSPECIFIED", "PARTNER_REVENUE_MODEL_MARKUP_TYPE_CPM", @@ -17909,47 +17218,6 @@ }, "type": "object" }, - "RateDetails": { - "description": "The rate related settings of the inventory source.", - "id": "RateDetails", - "properties": { - "inventorySourceRateType": { - "description": "The rate type. Acceptable values are `INVENTORY_SOURCE_RATE_TYPE_CPM_FIXED`, `INVENTORY_SOURCE_RATE_TYPE_CPM_FLOOR`, and `INVENTORY_SOURCE_RATE_TYPE_CPD`.", - "enum": [ - "INVENTORY_SOURCE_RATE_TYPE_UNSPECIFIED", - "INVENTORY_SOURCE_RATE_TYPE_CPM_FIXED", - "INVENTORY_SOURCE_RATE_TYPE_CPM_FLOOR", - "INVENTORY_SOURCE_RATE_TYPE_CPD", - "INVENTORY_SOURCE_RATE_TYPE_CPH", - "INVENTORY_SOURCE_RATE_TYPE_FLAT" - ], - "enumDescriptions": [ - "The rate type is not specified or is unknown in this version.", - "The rate type is CPM (Fixed).", - "The rate type is CPM (Floor).", - "The rate type is Cost per Day.", - "The rate type is Cost per Hour.", - "The rate type is Flat." - ], - "type": "string" - }, - "minimumSpend": { - "$ref": "Money", - "description": "Output only. The amount that the buyer has committed to spending on the inventory source up front. Only applicable for guaranteed inventory sources.", - "readOnly": true - }, - "rate": { - "$ref": "Money", - "description": "The rate for the inventory source." - }, - "unitsPurchased": { - "description": "Required for guaranteed inventory sources. The number of impressions guaranteed by the seller.", - "format": "int64", - "type": "string" - } - }, - "type": "object" - }, "RegionalLocationListAssignedTargetingOptionDetails": { "description": "Targeting details for regional location list. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_REGIONAL_LOCATION_LIST`.", "id": "RegionalLocationListAssignedTargetingOptionDetails", @@ -18204,9 +17472,9 @@ true, true, true, - false, - false, - false, + true, + true, + true, false, false, false @@ -18299,9 +17567,9 @@ true, true, true, - false, - false, - false, + true, + true, + true, false, false, false @@ -18631,6 +17899,10 @@ "description": "Settings that control the [optimized targeting](//support.google.com/displayvideo/answer/12060859) settings of the line item.", "id": "TargetingExpansionConfig", "properties": { + "excludeDemographicExpansion": { + "description": "Optional. Whether to exclude demographic expansion for Optimized Targeting. This field can only be set for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users.", + "type": "boolean" + }, "excludeFirstPartyAudience": { "deprecated": true, "description": "Whether to exclude first-party audiences from use in targeting expansion. This field was deprecated with the launch of [optimized targeting](//support.google.com/displayvideo/answer/12060859). This field will be set to `false`. If this field is set to `true` when deprecated, all positive first-party audience targeting assigned to this line item will be replaced with negative targeting of the same first-party audiences to ensure the continued exclusion of those audiences.", @@ -18926,6 +18198,41 @@ }, "type": "object" }, + "ThirdPartyMeasurementConfigs": { + "description": "Settings that control what third-party vendors are measuring specific line item metrics.", + "id": "ThirdPartyMeasurementConfigs", + "properties": { + "brandLiftVendorConfigs": { + "description": "Optional. The third-party vendors measuring brand lift. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_DYNATA` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_INTAGE` * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_MACROMILL`", + "items": { + "$ref": "ThirdPartyVendorConfig" + }, + "type": "array" + }, + "brandSafetyVendorConfigs": { + "description": "Optional. The third-party vendors measuring brand safety. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_ZEFR` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE`", + "items": { + "$ref": "ThirdPartyVendorConfig" + }, + "type": "array" + }, + "reachVendorConfigs": { + "description": "Optional. The third-party vendors measuring reach. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_VIDEO_RESEARCH` * `THIRD_PARTY_VENDOR_MEDIA_SCOPE` * `THIRD_PARTY_VENDOR_AUDIENCE_PROJECT` * `THIRD_PARTY_VENDOR_VIDEO_AMP` * `THIRD_PARTY_VENDOR_ISPOT_TV` * `THIRD_PARTY_VENDOR_GEMIUS`", + "items": { + "$ref": "ThirdPartyVendorConfig" + }, + "type": "array" + }, + "viewabilityVendorConfigs": { + "description": "Optional. The third-party vendors measuring viewability. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_MOAT` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_TELEMETRY` * `THIRD_PARTY_VENDOR_MEETRICS`", + "items": { + "$ref": "ThirdPartyVendorConfig" + }, + "type": "array" + } + }, + "type": "object" + }, "ThirdPartyOnlyConfig": { "description": "Settings for advertisers that use third-party ad servers only.", "id": "ThirdPartyOnlyConfig", @@ -19010,7 +18317,16 @@ "THIRD_PARTY_VENDOR_NIELSEN", "THIRD_PARTY_VENDOR_KANTAR", "THIRD_PARTY_VENDOR_DYNATA", - "THIRD_PARTY_VENDOR_TRANSUNION" + "THIRD_PARTY_VENDOR_TRANSUNION", + "THIRD_PARTY_VENDOR_ORIGIN", + "THIRD_PARTY_VENDOR_GEMIUS", + "THIRD_PARTY_VENDOR_MEDIA_SCOPE", + "THIRD_PARTY_VENDOR_AUDIENCE_PROJECT", + "THIRD_PARTY_VENDOR_VIDEO_AMP", + "THIRD_PARTY_VENDOR_ISPOT_TV", + "THIRD_PARTY_VENDOR_INTAGE", + "THIRD_PARTY_VENDOR_MACROMILL", + "THIRD_PARTY_VENDOR_VIDEO_RESEARCH" ], "enumDescriptions": [ "Unknown third-party vendor.", @@ -19024,7 +18340,16 @@ "Nielsen.", "Kantar.", "Dynata.", - "Transunion." + "Transunion.", + "Origin.", + "Gemius.", + "MediaScope.", + "Audience Project.", + "Video Amp.", + "Ispot TV.", + "Intage.", + "Macromill.", + "Video Research." ], "type": "string" } @@ -19050,23 +18375,6 @@ }, "type": "object" }, - "TimeRange": { - "description": "A time range.", - "id": "TimeRange", - "properties": { - "endTime": { - "description": "Required. The upper bound of a time range, inclusive.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "description": "Required. The lower bound of a time range, inclusive.", - "format": "google-datetime", - "type": "string" - } - }, - "type": "object" - }, "TimerEvent": { "description": "Timer event of the creative.", "id": "TimerEvent", @@ -19297,6 +18605,10 @@ "description": "Optional. Whether ads can serve as in-stream format.", "type": "boolean" }, + "allowNonSkippableInStream": { + "description": "Optional. Indicates whether ads can serve as non-skippable in-stream format.", + "type": "boolean" + }, "allowShorts": { "description": "Optional. Whether ads can serve as shorts format.", "type": "boolean" @@ -19435,7 +18747,7 @@ "additionalProperties": { "type": "string" }, - "description": "The custom parameters to pass custom values to tracking URL template.", + "description": "The custom parameters and accompanying values to add to the tracking URL.", "type": "object" }, "descriptions": { @@ -19469,7 +18781,7 @@ "type": "array" }, "longHeadlines": { - "description": "The list of lone headlines shown on the call-to-action banner.", + "description": "The list of long headlines shown on the call-to-action banner.", "items": { "type": "string" }, @@ -19868,7 +19180,7 @@ "type": "string" }, "value": { - "description": "The value used by the bidding strategy. When the bidding strategy is assigned at the line item level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_SHARE_OF_VOICE` When the bidding strategy is assigned at the ad group level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPV` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` If not using an applicable strategy, the value of this field will be 0.", + "description": "The value used by the bidding strategy. When the bidding strategy is assigned at the line item level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` When the bidding strategy is assigned at the ad group level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPV` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` If not using an applicable strategy, the value of this field will be 0.", "format": "int64", "type": "string" } @@ -19950,7 +19262,7 @@ "type": "string" }, "linkedMerchantId": { - "description": "Optional. The ID of the merchant which is linked to the line item for product feed.", + "description": "Optional. The ID of the Merchant Center account used to provide a product feed. This Merchant Center account must already be linked to the advertiser.", "format": "int64", "type": "string" }, @@ -20073,7 +19385,7 @@ "type": "string" }, "videoAssetId": { - "description": "Required. The YouTube video asset id. This is ad_asset.ad_asset_id.", + "description": "Required. The YouTube video asset id. This is the adAssetId of an AdAsset resource.", "format": "int64", "type": "string" } diff --git a/discovery/displayvideo-v3.json b/discovery/displayvideo-v3.json index dc546c5f6c5..fa9c4943e09 100644 --- a/discovery/displayvideo-v3.json +++ b/discovery/displayvideo-v3.json @@ -376,6 +376,70 @@ "resources": { "adGroupAds": { "methods": { + "create": { + "description": "Creates an ad group ad. This method is only supported for Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v3/advertisers/{advertisersId}/adGroupAds", + "httpMethod": "POST", + "id": "displayvideo.advertisers.adGroupAds.create", + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Output only. The unique ID of the advertiser the ad belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/advertisers/{+advertiserId}/adGroupAds", + "request": { + "$ref": "AdGroupAd" + }, + "response": { + "$ref": "AdGroupAd" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, + "delete": { + "description": "Deletes an ad group ad. This method is only supported for Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v3/advertisers/{advertisersId}/adGroupAds/{adGroupAdsId}", + "httpMethod": "DELETE", + "id": "displayvideo.advertisers.adGroupAds.delete", + "parameterOrder": [ + "advertiserId", + "adGroupAdId" + ], + "parameters": { + "adGroupAdId": { + "description": "Required. The ID of the ad to delete. Only Demand Gen ads are supported.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "advertiserId": { + "description": "Required. The ID of the advertiser the ad belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/advertisers/{+advertiserId}/adGroupAds/{+adGroupAdId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, "get": { "description": "Gets an ad group ad.", "flatPath": "v3/advertisers/{advertisersId}/adGroupAds/{adGroupAdsId}", @@ -457,11 +521,84 @@ "scopes": [ "https://www.googleapis.com/auth/display-video" ] + }, + "patch": { + "description": "Updates an ad group ad. This method is only supported for Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v3/advertisers/{advertisersId}/adGroupAds/{adGroupAdsId}", + "httpMethod": "PATCH", + "id": "displayvideo.advertisers.adGroupAds.patch", + "parameterOrder": [ + "advertiserId", + "adGroupAdId" + ], + "parameters": { + "adGroupAdId": { + "description": "Output only. The unique ID of the ad. Assigned by the system.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "advertiserId": { + "description": "Output only. The unique ID of the advertiser the ad belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The mask to control which fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v3/advertisers/{+advertiserId}/adGroupAds/{+adGroupAdId}", + "request": { + "$ref": "AdGroupAd" + }, + "response": { + "$ref": "AdGroupAd" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] } } }, "adGroups": { "methods": { + "bulkEditAssignedTargetingOptions": { + "description": "Bulk edits targeting options for multiple ad groups. The same set of delete and create requests will be applied to all specified ad groups. Specifically, the operation will delete the assigned targeting options provided in BulkEditAdGroupAssignedTargetingOptionsRequest.delete_requests from each ad group, and then create the assigned targeting options provided in BulkEditAdGroupAssignedTargetingOptionsRequest.create_requests. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v3/advertisers/{advertisersId}/adGroups:bulkEditAssignedTargetingOptions", + "httpMethod": "POST", + "id": "displayvideo.advertisers.adGroups.bulkEditAssignedTargetingOptions", + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Required. The ID of the advertiser the ad groups belong to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/advertisers/{+advertiserId}/adGroups:bulkEditAssignedTargetingOptions", + "request": { + "$ref": "BulkEditAdGroupAssignedTargetingOptionsRequest" + }, + "response": { + "$ref": "BulkEditAdGroupAssignedTargetingOptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, "bulkListAdGroupAssignedTargetingOptions": { "description": "Lists assigned targeting options for multiple ad groups across targeting types. Inherited assigned targeting options are not included.", "flatPath": "v3/advertisers/{advertisersId}/adGroups:bulkListAdGroupAssignedTargetingOptions", @@ -516,6 +653,70 @@ "https://www.googleapis.com/auth/display-video" ] }, + "create": { + "description": "Creates a new ad group. Returns the newly created ad group if successful. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v3/advertisers/{advertisersId}/adGroups", + "httpMethod": "POST", + "id": "displayvideo.advertisers.adGroups.create", + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Output only. The unique ID of the advertiser the ad group belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/advertisers/{+advertiserId}/adGroups", + "request": { + "$ref": "AdGroup" + }, + "response": { + "$ref": "AdGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, + "delete": { + "description": "Deletes a AdGroup. Returns error code `NOT_FOUND` if the ad group does not exist. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v3/advertisers/{advertisersId}/adGroups/{adGroupsId}", + "httpMethod": "DELETE", + "id": "displayvideo.advertisers.adGroups.delete", + "parameterOrder": [ + "advertiserId", + "adGroupId" + ], + "parameters": { + "adGroupId": { + "description": "Required. The ID of the ad group to delete.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "advertiserId": { + "description": "Required. The ID of the advertiser this ad group belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, "get": { "description": "Gets an ad group.", "flatPath": "v3/advertisers/{advertisersId}/adGroups/{adGroupsId}", @@ -597,6 +798,50 @@ "scopes": [ "https://www.googleapis.com/auth/display-video" ] + }, + "patch": { + "description": "Updates an existing ad group. Returns the updated ad group if successful. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v3/advertisers/{advertisersId}/adGroups/{adGroupsId}", + "httpMethod": "PATCH", + "id": "displayvideo.advertisers.adGroups.patch", + "parameterOrder": [ + "advertiserId", + "adGroupId" + ], + "parameters": { + "adGroupId": { + "description": "Output only. The unique ID of the ad group. Assigned by the system.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "advertiserId": { + "description": "Output only. The unique ID of the advertiser the ad group belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The mask to control which fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}", + "request": { + "$ref": "AdGroup" + }, + "response": { + "$ref": "AdGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] } }, "resources": { @@ -604,20 +849,19 @@ "resources": { "assignedTargetingOptions": { "methods": { - "get": { - "description": "Gets a single targeting option assigned to an ad group. Inherited assigned targeting options are not included.", - "flatPath": "v3/advertisers/{advertisersId}/adGroups/{adGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions/{assignedTargetingOptionsId}", - "httpMethod": "GET", - "id": "displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.get", + "create": { + "description": "Assigns a targeting option to an ad group. Returns the assigned targeting option if successful. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v3/advertisers/{advertisersId}/adGroups/{adGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions", + "httpMethod": "POST", + "id": "displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.create", "parameterOrder": [ "advertiserId", "adGroupId", - "targetingType", - "assignedTargetingOptionId" + "targetingType" ], "parameters": { "adGroupId": { - "description": "Required. The ID of the ad group the assigned targeting option belongs to.", + "description": "Required. The ID of the ad group the assigned targeting option will belong to.", "format": "int64", "location": "path", "pattern": "^[^/]+$", @@ -632,15 +876,8 @@ "required": true, "type": "string" }, - "assignedTargetingOptionId": { - "description": "Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested.", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -751,7 +988,10 @@ "type": "string" } }, - "path": "v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}", + "path": "v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions", + "request": { + "$ref": "AssignedTargetingOption" + }, "response": { "$ref": "AssignedTargetingOption" }, @@ -759,19 +999,20 @@ "https://www.googleapis.com/auth/display-video" ] }, - "list": { - "description": "Lists the targeting options assigned to an ad group. Inherited assigned targeting options are not included.", - "flatPath": "v3/advertisers/{advertisersId}/adGroups/{adGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions", - "httpMethod": "GET", - "id": "displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.list", + "delete": { + "description": "Deletes an assigned targeting option from an ad group. This method is only supported for Demand Gen ad groups with the AdGroupFormat `AD_GROUP_FORMAT_DEMAND_GEN`. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v3/advertisers/{advertisersId}/adGroups/{adGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions/{assignedTargetingOptionsId}", + "httpMethod": "DELETE", + "id": "displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.delete", "parameterOrder": [ "advertiserId", "adGroupId", - "targetingType" + "targetingType", + "assignedTargetingOptionId" ], "parameters": { "adGroupId": { - "description": "Required. The ID of the ad group to list assigned targeting options for.", + "description": "Required. The ID of the ad group the assigned targeting option belongs to.", "format": "int64", "location": "path", "pattern": "^[^/]+$", @@ -786,29 +1027,170 @@ "required": true, "type": "string" }, - "filter": { - "description": "Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field} {operator} {value}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` Examples: * `AssignedTargetingOption` resources with ID 1 or 2: `assignedTargetingOptionId=\"1\" OR assignedTargetingOptionId=\"2\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", - "location": "query", + "assignedTargetingOptionId": { + "description": "Required. The ID of the assigned targeting option to delete.", + "location": "path", + "pattern": "^[^/]+$", + "required": true, "type": "string" }, - "orderBy": { - "description": "Optional. Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `assignedTargetingOptionId desc`.", - "location": "query", + "targetingType": { + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "enum": [ + "TARGETING_TYPE_UNSPECIFIED", + "TARGETING_TYPE_CHANNEL", + "TARGETING_TYPE_APP_CATEGORY", + "TARGETING_TYPE_APP", + "TARGETING_TYPE_URL", + "TARGETING_TYPE_DAY_AND_TIME", + "TARGETING_TYPE_AGE_RANGE", + "TARGETING_TYPE_REGIONAL_LOCATION_LIST", + "TARGETING_TYPE_PROXIMITY_LOCATION_LIST", + "TARGETING_TYPE_GENDER", + "TARGETING_TYPE_VIDEO_PLAYER_SIZE", + "TARGETING_TYPE_USER_REWARDED_CONTENT", + "TARGETING_TYPE_PARENTAL_STATUS", + "TARGETING_TYPE_CONTENT_INSTREAM_POSITION", + "TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION", + "TARGETING_TYPE_DEVICE_TYPE", + "TARGETING_TYPE_AUDIENCE_GROUP", + "TARGETING_TYPE_BROWSER", + "TARGETING_TYPE_HOUSEHOLD_INCOME", + "TARGETING_TYPE_ON_SCREEN_POSITION", + "TARGETING_TYPE_THIRD_PARTY_VERIFIER", + "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", + "TARGETING_TYPE_ENVIRONMENT", + "TARGETING_TYPE_CARRIER_AND_ISP", + "TARGETING_TYPE_OPERATING_SYSTEM", + "TARGETING_TYPE_DEVICE_MAKE_MODEL", + "TARGETING_TYPE_KEYWORD", + "TARGETING_TYPE_NEGATIVE_KEYWORD_LIST", + "TARGETING_TYPE_VIEWABILITY", + "TARGETING_TYPE_CATEGORY", + "TARGETING_TYPE_INVENTORY_SOURCE", + "TARGETING_TYPE_LANGUAGE", + "TARGETING_TYPE_AUTHORIZED_SELLER_STATUS", + "TARGETING_TYPE_GEO_REGION", + "TARGETING_TYPE_INVENTORY_SOURCE_GROUP", + "TARGETING_TYPE_EXCHANGE", + "TARGETING_TYPE_SUB_EXCHANGE", + "TARGETING_TYPE_POI", + "TARGETING_TYPE_BUSINESS_CHAIN", + "TARGETING_TYPE_CONTENT_DURATION", + "TARGETING_TYPE_CONTENT_STREAM_TYPE", + "TARGETING_TYPE_NATIVE_CONTENT_POSITION", + "TARGETING_TYPE_OMID", + "TARGETING_TYPE_AUDIO_CONTENT_TYPE", + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION", + "TARGETING_TYPE_CONTENT_THEME_EXCLUSION" + ], + "enumDescriptions": [ + "Default value when type is not specified or is unknown in this version.", + "Target a channel (a custom group of related websites or apps).", + "Target an app category (for example, education or puzzle games).", + "Target a specific app (for example, Angry Birds).", + "Target a specific url (for example, quora.com).", + "Target ads during a chosen time period on a specific day.", + "Target ads to a specific age range (for example, 18-24).", + "Target ads to the specified regions on a regional location list.", + "Target ads to the specified points of interest on a proximity location list.", + "Target ads to a specific gender (for example, female or male).", + "Target a specific video player size for video ads.", + "Target user rewarded content for video ads.", + "Target ads to a specific parental status (for example, parent or not a parent).", + "Target video or audio ads in a specific content instream position (for example, pre-roll, mid-roll, or post-roll).", + "Target ads in a specific content outstream position.", + "Target ads to a specific device type (for example, tablet or connected TV).", + "Target ads to an audience or groups of audiences. Singleton field, at most one can exist on a single Lineitem at a time.", + "Target ads to specific web browsers (for example, Chrome).", + "Target ads to a specific household income range (for example, top 10%).", + "Target ads in a specific on screen position.", + "Filter web sites through third party verification (for example, IAS or DoubleVerify).", + "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", + "Target ads to a specific environment (for example, web or app).", + "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", + "Target ads to a specific operating system (for example, macOS).", + "Target ads to a specific device make or model (for example, Roku or Samsung).", + "Target ads to a specific keyword (for example, dog or retriever).", + "Target ads to a specific negative keyword list.", + "Target ads to a specific viewability (for example, 80% viewable).", + "Target ads to a specific content category (for example, arts & entertainment).", + "Purchase impressions from specific deals and auction packages.", + "Target ads to a specific language (for example, English or Japanese).", + "Target ads to ads.txt authorized sellers. If no targeting option of this type is assigned, the resource uses the \"Authorized Direct Sellers and Resellers\" option by default.", + "Target ads to a specific regional location (for example, a city or state).", + "Purchase impressions from a group of deals and auction packages.", + "Purchase impressions from specific exchanges.", + "Purchase impressions from specific sub-exchanges.", + "Target ads around a specific point of interest, such as a notable building, a street address, or latitude/longitude coordinates.", + "Target ads around locations of a business chain within a specific geo region.", + "Target ads to a specific video content duration.", + "Target ads to a specific video content stream type.", + "Target ads to a specific native content position.", + "Target ads in an Open Measurement enabled inventory.", + "Target ads to a specific audio content type.", + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video. Targeting of this type cannot be created or updated using the API. Although this targeting is inherited by child resources, **inherited targeting of this type will not be retrieveable**.", + "Target ads to a specific YouTube channel. Targeting of this type cannot be created or updated using the API. Although this targeting is inherited by child resources, **inherited targeting of this type will not be retrieveable**.", + "Target ads to a serve it in a certain position of a session. Only supported for Ad Group resources under YouTube Programmatic Reservation line items. Targeting of this type cannot be created or updated using the API.", + "Filter website content by content themes (for example, religion). Only supported for Advertiser resources. Targeting of this type cannot be created or updated using the API. This targeting is only inherited by child YouTube and Demand Gen line item resources." + ], + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, + "get": { + "description": "Gets a single targeting option assigned to an ad group. Inherited assigned targeting options are not included.", + "flatPath": "v3/advertisers/{advertisersId}/adGroups/{adGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions/{assignedTargetingOptionsId}", + "httpMethod": "GET", + "id": "displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.get", + "parameterOrder": [ + "advertiserId", + "adGroupId", + "targetingType", + "assignedTargetingOptionId" + ], + "parameters": { + "adGroupId": { + "description": "Required. The ID of the ad group the assigned targeting option belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, "type": "string" }, - "pageSize": { - "description": "Optional. Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", - "format": "int32", - "location": "query", - "type": "integer" + "advertiserId": { + "description": "Required. The ID of the advertiser the ad group belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" }, - "pageToken": { - "description": "Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned.", - "location": "query", + "assignedTargetingOptionId": { + "description": "Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested.", + "location": "path", + "pattern": "^[^/]+$", + "required": true, "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -919,99 +1301,267 @@ "type": "string" } }, - "path": "v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions", + "path": "v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}", "response": { - "$ref": "ListAdGroupAssignedTargetingOptionsResponse" + "$ref": "AssignedTargetingOption" }, "scopes": [ "https://www.googleapis.com/auth/display-video" ] - } - } - } - } - } - } - }, - "assets": { - "methods": { - "upload": { - "description": "Uploads an asset. Returns the ID of the newly uploaded asset if successful. The asset file size should be no more than 10 MB for images, 200 MB for ZIP files, and 1 GB for videos. Must be used within the [multipart media upload process](/display-video/api/guides/how-tos/upload#multipart). Examples using provided client libraries can be found in our [Creating Creatives guide](/display-video/api/guides/creating-creatives/overview#upload_an_asset).", - "flatPath": "v3/advertisers/{advertisersId}/assets", - "httpMethod": "POST", - "id": "displayvideo.advertisers.assets.upload", - "mediaUpload": { - "accept": [ - "*/*" - ], - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/v3/advertisers/{+advertiserId}/assets" - } - } - }, - "parameterOrder": [ - "advertiserId" - ], - "parameters": { - "advertiserId": { - "description": "Required. The ID of the advertiser this asset belongs to.", - "format": "int64", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v3/advertisers/{+advertiserId}/assets", - "request": { - "$ref": "CreateAssetRequest" - }, - "response": { - "$ref": "CreateAssetResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ], - "supportsMediaUpload": true - } - } - }, - "campaigns": { - "methods": { - "create": { - "description": "Creates a new campaign. Returns the newly created campaign if successful.", - "flatPath": "v3/advertisers/{advertisersId}/campaigns", - "httpMethod": "POST", - "id": "displayvideo.advertisers.campaigns.create", - "parameterOrder": [ - "advertiserId" - ], - "parameters": { - "advertiserId": { - "description": "Output only. The unique ID of the advertiser the campaign belongs to.", - "format": "int64", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v3/advertisers/{+advertiserId}/campaigns", - "request": { - "$ref": "Campaign" - }, - "response": { - "$ref": "Campaign" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video", - "https://www.googleapis.com/auth/display-video-mediaplanning" - ] - }, - "delete": { - "description": "Permanently deletes a campaign. A deleted campaign cannot be recovered. The campaign should be archived first, i.e. set entity_status to `ENTITY_STATUS_ARCHIVED`, to be able to delete it. **This method regularly experiences high latency.** We recommend [increasing your default timeout](/display-video/api/guides/best-practices/timeouts#client_library_timeout) to avoid errors.", + }, + "list": { + "description": "Lists the targeting options assigned to an ad group. Inherited assigned targeting options are not included.", + "flatPath": "v3/advertisers/{advertisersId}/adGroups/{adGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions", + "httpMethod": "GET", + "id": "displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.list", + "parameterOrder": [ + "advertiserId", + "adGroupId", + "targetingType" + ], + "parameters": { + "adGroupId": { + "description": "Required. The ID of the ad group to list assigned targeting options for.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "advertiserId": { + "description": "Required. The ID of the advertiser the ad group belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "filter": { + "description": "Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field} {operator} {value}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` Examples: * `AssignedTargetingOption` resources with ID 1 or 2: `assignedTargetingOptionId=\"1\" OR assignedTargetingOptionId=\"2\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `assignedTargetingOptionId desc`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned.", + "location": "query", + "type": "string" + }, + "targetingType": { + "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "enum": [ + "TARGETING_TYPE_UNSPECIFIED", + "TARGETING_TYPE_CHANNEL", + "TARGETING_TYPE_APP_CATEGORY", + "TARGETING_TYPE_APP", + "TARGETING_TYPE_URL", + "TARGETING_TYPE_DAY_AND_TIME", + "TARGETING_TYPE_AGE_RANGE", + "TARGETING_TYPE_REGIONAL_LOCATION_LIST", + "TARGETING_TYPE_PROXIMITY_LOCATION_LIST", + "TARGETING_TYPE_GENDER", + "TARGETING_TYPE_VIDEO_PLAYER_SIZE", + "TARGETING_TYPE_USER_REWARDED_CONTENT", + "TARGETING_TYPE_PARENTAL_STATUS", + "TARGETING_TYPE_CONTENT_INSTREAM_POSITION", + "TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION", + "TARGETING_TYPE_DEVICE_TYPE", + "TARGETING_TYPE_AUDIENCE_GROUP", + "TARGETING_TYPE_BROWSER", + "TARGETING_TYPE_HOUSEHOLD_INCOME", + "TARGETING_TYPE_ON_SCREEN_POSITION", + "TARGETING_TYPE_THIRD_PARTY_VERIFIER", + "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", + "TARGETING_TYPE_ENVIRONMENT", + "TARGETING_TYPE_CARRIER_AND_ISP", + "TARGETING_TYPE_OPERATING_SYSTEM", + "TARGETING_TYPE_DEVICE_MAKE_MODEL", + "TARGETING_TYPE_KEYWORD", + "TARGETING_TYPE_NEGATIVE_KEYWORD_LIST", + "TARGETING_TYPE_VIEWABILITY", + "TARGETING_TYPE_CATEGORY", + "TARGETING_TYPE_INVENTORY_SOURCE", + "TARGETING_TYPE_LANGUAGE", + "TARGETING_TYPE_AUTHORIZED_SELLER_STATUS", + "TARGETING_TYPE_GEO_REGION", + "TARGETING_TYPE_INVENTORY_SOURCE_GROUP", + "TARGETING_TYPE_EXCHANGE", + "TARGETING_TYPE_SUB_EXCHANGE", + "TARGETING_TYPE_POI", + "TARGETING_TYPE_BUSINESS_CHAIN", + "TARGETING_TYPE_CONTENT_DURATION", + "TARGETING_TYPE_CONTENT_STREAM_TYPE", + "TARGETING_TYPE_NATIVE_CONTENT_POSITION", + "TARGETING_TYPE_OMID", + "TARGETING_TYPE_AUDIO_CONTENT_TYPE", + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION", + "TARGETING_TYPE_CONTENT_THEME_EXCLUSION" + ], + "enumDescriptions": [ + "Default value when type is not specified or is unknown in this version.", + "Target a channel (a custom group of related websites or apps).", + "Target an app category (for example, education or puzzle games).", + "Target a specific app (for example, Angry Birds).", + "Target a specific url (for example, quora.com).", + "Target ads during a chosen time period on a specific day.", + "Target ads to a specific age range (for example, 18-24).", + "Target ads to the specified regions on a regional location list.", + "Target ads to the specified points of interest on a proximity location list.", + "Target ads to a specific gender (for example, female or male).", + "Target a specific video player size for video ads.", + "Target user rewarded content for video ads.", + "Target ads to a specific parental status (for example, parent or not a parent).", + "Target video or audio ads in a specific content instream position (for example, pre-roll, mid-roll, or post-roll).", + "Target ads in a specific content outstream position.", + "Target ads to a specific device type (for example, tablet or connected TV).", + "Target ads to an audience or groups of audiences. Singleton field, at most one can exist on a single Lineitem at a time.", + "Target ads to specific web browsers (for example, Chrome).", + "Target ads to a specific household income range (for example, top 10%).", + "Target ads in a specific on screen position.", + "Filter web sites through third party verification (for example, IAS or DoubleVerify).", + "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", + "Target ads to a specific environment (for example, web or app).", + "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", + "Target ads to a specific operating system (for example, macOS).", + "Target ads to a specific device make or model (for example, Roku or Samsung).", + "Target ads to a specific keyword (for example, dog or retriever).", + "Target ads to a specific negative keyword list.", + "Target ads to a specific viewability (for example, 80% viewable).", + "Target ads to a specific content category (for example, arts & entertainment).", + "Purchase impressions from specific deals and auction packages.", + "Target ads to a specific language (for example, English or Japanese).", + "Target ads to ads.txt authorized sellers. If no targeting option of this type is assigned, the resource uses the \"Authorized Direct Sellers and Resellers\" option by default.", + "Target ads to a specific regional location (for example, a city or state).", + "Purchase impressions from a group of deals and auction packages.", + "Purchase impressions from specific exchanges.", + "Purchase impressions from specific sub-exchanges.", + "Target ads around a specific point of interest, such as a notable building, a street address, or latitude/longitude coordinates.", + "Target ads around locations of a business chain within a specific geo region.", + "Target ads to a specific video content duration.", + "Target ads to a specific video content stream type.", + "Target ads to a specific native content position.", + "Target ads in an Open Measurement enabled inventory.", + "Target ads to a specific audio content type.", + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video. Targeting of this type cannot be created or updated using the API. Although this targeting is inherited by child resources, **inherited targeting of this type will not be retrieveable**.", + "Target ads to a specific YouTube channel. Targeting of this type cannot be created or updated using the API. Although this targeting is inherited by child resources, **inherited targeting of this type will not be retrieveable**.", + "Target ads to a serve it in a certain position of a session. Only supported for Ad Group resources under YouTube Programmatic Reservation line items. Targeting of this type cannot be created or updated using the API.", + "Filter website content by content themes (for example, religion). Only supported for Advertiser resources. Targeting of this type cannot be created or updated using the API. This targeting is only inherited by child YouTube and Demand Gen line item resources." + ], + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions", + "response": { + "$ref": "ListAdGroupAssignedTargetingOptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + } + } + } + } + } + } + }, + "assets": { + "methods": { + "upload": { + "description": "Uploads an asset. Returns the ID of the newly uploaded asset if successful. The asset file size should be no more than 10 MB for images, 200 MB for ZIP files, and 1 GB for videos. Must be used within the [multipart media upload process](/display-video/api/guides/how-tos/upload#multipart). Examples using provided client libraries can be found in our [Creating Creatives guide](/display-video/api/guides/creating-creatives/overview#upload_an_asset).", + "flatPath": "v3/advertisers/{advertisersId}/assets", + "httpMethod": "POST", + "id": "displayvideo.advertisers.assets.upload", + "mediaUpload": { + "accept": [ + "*/*" + ], + "protocols": { + "simple": { + "multipart": true, + "path": "/upload/v3/advertisers/{+advertiserId}/assets" + } + } + }, + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Required. The ID of the advertiser this asset belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/advertisers/{+advertiserId}/assets", + "request": { + "$ref": "CreateAssetRequest" + }, + "response": { + "$ref": "CreateAssetResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ], + "supportsMediaUpload": true + } + } + }, + "campaigns": { + "methods": { + "create": { + "description": "Creates a new campaign. Returns the newly created campaign if successful.", + "flatPath": "v3/advertisers/{advertisersId}/campaigns", + "httpMethod": "POST", + "id": "displayvideo.advertisers.campaigns.create", + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Output only. The unique ID of the advertiser the campaign belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/advertisers/{+advertiserId}/campaigns", + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video", + "https://www.googleapis.com/auth/display-video-mediaplanning" + ] + }, + "delete": { + "description": "Permanently deletes a campaign. A deleted campaign cannot be recovered. The campaign should be archived first, i.e. set entity_status to `ENTITY_STATUS_ARCHIVED`, to be able to delete it. **This method regularly experiences high latency.** We recommend [increasing your default timeout](/display-video/api/guides/best-practices/timeouts#client_library_timeout) to avoid errors.", "flatPath": "v3/advertisers/{advertisersId}/campaigns/{campaignsId}", "httpMethod": "DELETE", "id": "displayvideo.advertisers.campaigns.delete", @@ -2763,7 +3313,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -2931,7 +3481,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", + "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3810,7 +4360,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3959,7 +4509,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -6104,205 +6654,7 @@ } } }, - "inventorySources": { - "methods": { - "create": { - "description": "Creates a new inventory source. Returns the newly created inventory source if successful.", - "flatPath": "v3/inventorySources", - "httpMethod": "POST", - "id": "displayvideo.inventorySources.create", - "parameterOrder": [], - "parameters": { - "advertiserId": { - "description": "The ID of the advertiser that the request is being made within.", - "format": "int64", - "location": "query", - "type": "string" - }, - "partnerId": { - "description": "The ID of the partner that the request is being made within.", - "format": "int64", - "location": "query", - "type": "string" - } - }, - "path": "v3/inventorySources", - "request": { - "$ref": "InventorySource" - }, - "response": { - "$ref": "InventorySource" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ] - }, - "editInventorySourceReadWriteAccessors": { - "description": "Edits read/write accessors of an inventory source. Returns the updated read_write_accessors for the inventory source.", - "flatPath": "v3/inventorySources/{inventorySourcesId}:editInventorySourceReadWriteAccessors", - "httpMethod": "POST", - "id": "displayvideo.inventorySources.editInventorySourceReadWriteAccessors", - "parameterOrder": [ - "inventorySourceId" - ], - "parameters": { - "inventorySourceId": { - "description": "Required. The ID of inventory source to update.", - "format": "int64", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v3/inventorySources/{+inventorySourceId}:editInventorySourceReadWriteAccessors", - "request": { - "$ref": "EditInventorySourceReadWriteAccessorsRequest" - }, - "response": { - "$ref": "InventorySourceAccessors" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ] - }, - "get": { - "description": "Gets an inventory source.", - "flatPath": "v3/inventorySources/{inventorySourcesId}", - "httpMethod": "GET", - "id": "displayvideo.inventorySources.get", - "parameterOrder": [ - "inventorySourceId" - ], - "parameters": { - "advertiserId": { - "description": "Optional. The ID of the DV360 advertiser to which the fetched inventory source is permissioned. If the user only has access to the advertiser and not the parent partner, use this field to specify the relevant advertiser.", - "format": "int64", - "location": "query", - "type": "string" - }, - "inventorySourceId": { - "description": "Required. The ID of the inventory source to fetch.", - "format": "int64", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - }, - "partnerId": { - "description": "Required. The ID of the DV360 partner to which the fetched inventory source is permissioned.", - "format": "int64", - "location": "query", - "type": "string" - } - }, - "path": "v3/inventorySources/{+inventorySourceId}", - "response": { - "$ref": "InventorySource" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ] - }, - "list": { - "description": "Lists inventory sources that are accessible to the current user. The order is defined by the order_by parameter. If a filter by entity_status is not specified, inventory sources with entity status `ENTITY_STATUS_ARCHIVED` will not be included in the results.", - "flatPath": "v3/inventorySources", - "httpMethod": "GET", - "id": "displayvideo.inventorySources.list", - "parameterOrder": [], - "parameters": { - "advertiserId": { - "description": "The ID of the advertiser that has access to the inventory source.", - "format": "int64", - "location": "query", - "type": "string" - }, - "filter": { - "description": "Allows filtering by inventory source fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `status.entityStatus` * `commitment` * `deliveryMethod` * `rateDetails.rateType` * `exchange` Examples: * All active inventory sources: `status.entityStatus=\"ENTITY_STATUS_ACTIVE\"` * Inventory sources belonging to Google Ad Manager or Rubicon exchanges: `exchange=\"EXCHANGE_GOOGLE_AD_MANAGER\" OR exchange=\"EXCHANGE_RUBICON\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. For example, `displayName desc`.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Requested page size. Must be between `1` and `200`. If unspecified will default to `100`.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInventorySources` method. If not specified, the first page of results will be returned.", - "location": "query", - "type": "string" - }, - "partnerId": { - "description": "The ID of the partner that has access to the inventory source.", - "format": "int64", - "location": "query", - "type": "string" - } - }, - "path": "v3/inventorySources", - "response": { - "$ref": "ListInventorySourcesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ] - }, - "patch": { - "description": "Updates an existing inventory source. Returns the updated inventory source if successful.", - "flatPath": "v3/inventorySources/{inventorySourcesId}", - "httpMethod": "PATCH", - "id": "displayvideo.inventorySources.patch", - "parameterOrder": [ - "inventorySourceId" - ], - "parameters": { - "advertiserId": { - "description": "The ID of the advertiser that the request is being made within.", - "format": "int64", - "location": "query", - "type": "string" - }, - "inventorySourceId": { - "description": "Output only. The unique ID of the inventory source. Assigned by the system.", - "format": "int64", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - }, - "partnerId": { - "description": "The ID of the partner that the request is being made within.", - "format": "int64", - "location": "query", - "type": "string" - }, - "updateMask": { - "description": "Required. The mask to control which fields to update.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v3/inventorySources/{+inventorySourceId}", - "request": { - "$ref": "InventorySource" - }, - "response": { - "$ref": "InventorySource" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ] - } - } - }, - "media": { + "media": { "methods": { "download": { "description": "Downloads media. Download is supported on the URI `/download/{resource_name=**}?alt=media.` **Note**: Download requests will not be successful without including `alt=media` query string.", @@ -8156,7 +8508,7 @@ } } }, - "revision": "20260224", + "revision": "20260421", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActiveViewVideoViewabilityMetricConfig": { @@ -8279,7 +8631,7 @@ "id": "AdGroup", "properties": { "adGroupFormat": { - "description": "Required. The format of the ads in the ad group.", + "description": "Required. Immutable. The format of the ads in the ad group.", "enum": [ "AD_GROUP_FORMAT_UNSPECIFIED", "AD_GROUP_FORMAT_IN_STREAM", @@ -8289,7 +8641,8 @@ "AD_GROUP_FORMAT_AUDIO", "AD_GROUP_FORMAT_RESPONSIVE", "AD_GROUP_FORMAT_REACH", - "AD_GROUP_FORMAT_MASTHEAD" + "AD_GROUP_FORMAT_MASTHEAD", + "AD_GROUP_FORMAT_DEMAND_GEN" ], "enumDescriptions": [ "Format value is not specified or is unknown in this version.", @@ -8300,7 +8653,8 @@ "Non-skippable in-stream audio ads.", "Responsive ads.", "[Effective reach ad groups] (https://support.google.com/displayvideo/answer/9173684), including in-stream and bumper ads.", - "Masthead Ad that is surfaced on the top slot on the YouTube homepage." + "Masthead Ad that is surfaced on the top slot on the YouTube homepage.", + "Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This enum value is only available to allowlisted users." ], "type": "string" }, @@ -8310,6 +8664,10 @@ "readOnly": true, "type": "string" }, + "adGroupInventoryControl": { + "$ref": "AdGroupInventoryControl", + "description": "Optional. Required for Demand Gen ad groups. Specifies the inventory control of the ad group." + }, "advertiserId": { "description": "Output only. The unique ID of the advertiser the ad group belongs to.", "format": "int64", @@ -8345,7 +8703,7 @@ "type": "string" }, "lineItemId": { - "description": "Required. The unique ID of the line item that the ad group belongs to.", + "description": "Required. Immutable. The unique ID of the line item that the ad group belongs to.", "format": "int64", "type": "string" }, @@ -8376,7 +8734,7 @@ "type": "string" }, "adGroupId": { - "description": "Required. The unique ID of the ad group that the ad belongs to.", + "description": "Required. Immutable. The unique ID of the ad group that the ad belongs to.", "format": "int64", "type": "string" }, @@ -8409,6 +8767,26 @@ "description": "Output only. Details of a [non-skippable short video ad](//support.google.com/displayvideo/answer/6274216), equal to or less than 6 seconds, used for reach.", "readOnly": true }, + "dcmTrackingInfo": { + "$ref": "DcmTrackingInfo", + "description": "Optional. The DCM tracking ad info. Only valid for Demand Gen ads. To remove the DCM tracking ad info, please leave this field empty. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, + "demandGenCarouselAd": { + "$ref": "DemandGenCarouselAd", + "description": "Details of a [Demand Gen carousel ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#CarouselAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, + "demandGenImageAd": { + "$ref": "DemandGenImageAd", + "description": "Details of a [Demand Gen image ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#ImageAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, + "demandGenProductAd": { + "$ref": "DemandGenProductAd", + "description": "Details of a [Demand Gen product ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#Product-onlyAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, + "demandGenVideoAd": { + "$ref": "DemandGenVideoAd", + "description": "Details of a [Demand Gen video ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#VideoAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, "displayName": { "description": "Required. The display name of the ad. Must be UTF-8 encoded with a maximum size of 255 bytes.", "type": "string" @@ -8487,6 +8865,31 @@ }, "type": "object" }, + "AdGroupInventoryControl": { + "description": "The inventory control of the ad group.", + "id": "AdGroupInventoryControl", + "properties": { + "adGroupInventoryStrategy": { + "description": "The inventory strategy.", + "enum": [ + "AD_GROUP_INVENTORY_STRATEGY_UNSPECIFIED", + "AD_GROUP_INVENTORY_STRATEGY_ALL_GOOGLE_AND_DISPLAY_NETWORK_INVENTORY", + "AD_GROUP_INVENTORY_STRATEGY_ALL_GOOGLE_INVENTORY" + ], + "enumDescriptions": [ + "Not specified or unknown.", + "The ad group is opted-in to all Google and Display Network inventory.", + "The ad group is opted-in to all Google inventory." + ], + "type": "string" + }, + "selectedInventories": { + "$ref": "SelectedInventories", + "description": "The selected inventories." + } + }, + "type": "object" + }, "AdPolicy": { "description": "A single ad policy associated with an ad group ad.", "id": "AdPolicy", @@ -11150,6 +11553,10 @@ "description": "Settings that control the bid strategy. Bid strategy determines the bid price.", "id": "BiddingStrategy", "properties": { + "demandGenBid": { + "$ref": "DemandGenBiddingStrategy", + "description": "A bid strategy used by Demand Gen resources. It can only be used for a Demand Gen line item or ad group entity." + }, "fixedBid": { "$ref": "FixedBidStrategy", "description": "A strategy that uses a fixed bid price." @@ -11231,19 +11638,81 @@ }, "type": "object" }, + "BulkEditAdGroupAssignedTargetingOptionsRequest": { + "description": "Request message for BulkEditAdGroupAssignedTargetingOptions.", + "id": "BulkEditAdGroupAssignedTargetingOptionsRequest", + "properties": { + "adGroupIds": { + "description": "Required. The IDs of the ad groups the assigned targeting options will belong to. A maximum of 25 ad group IDs can be specified.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "createRequests": { + "description": "Optional. The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "items": { + "$ref": "CreateAssignedTargetingOptionsRequest" + }, + "type": "array" + }, + "deleteRequests": { + "description": "Optional. The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "items": { + "$ref": "DeleteAssignedTargetingOptionsRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "BulkEditAdGroupAssignedTargetingOptionsResponse": { + "description": "Response message for BulkEditAssignedTargetingOptions.", + "id": "BulkEditAdGroupAssignedTargetingOptionsResponse", + "properties": { + "errors": { + "description": "Output only. The error information for each ad group that failed to update.", + "items": { + "$ref": "Status" + }, + "readOnly": true, + "type": "array" + }, + "failedAdGroupIds": { + "description": "Output only. The IDs of the ad groups which failed to update.", + "items": { + "format": "int64", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "updatedAdGroupIds": { + "description": "Output only. The IDs of the ad groups which were successfully updated.", + "items": { + "format": "int64", + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, "BulkEditAdvertiserAssignedTargetingOptionsRequest": { "description": "Request message for BulkEditAdvertiserAssignedTargetingOptions.", "id": "BulkEditAdvertiserAssignedTargetingOptionsRequest", "properties": { "createRequests": { - "description": "The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE`", + "description": "The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", "items": { "$ref": "CreateAssignedTargetingOptionsRequest" }, "type": "array" }, "deleteRequests": { - "description": "The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE`", + "description": "The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", "items": { "$ref": "DeleteAssignedTargetingOptionsRequest" }, @@ -11782,7 +12251,8 @@ "GEO_REGION_TYPE_QUARTER", "GEO_REGION_TYPE_DIVISION", "GEO_REGION_TYPE_COMMUNE", - "GEO_REGION_TYPE_COLLOQUIAL_AREA" + "GEO_REGION_TYPE_COLLOQUIAL_AREA", + "GEO_REGION_TYPE_POST_TOWN" ], "enumDescriptions": [ "The geographic region type is unknown.", @@ -11822,7 +12292,8 @@ "The geographic region is a quarter.", "The geographic region is a division.", "The geographic region is a commune.", - "The geographic region is a colloquial area." + "The geographic region is a colloquial area.", + "The geographic region is a post town." ], "readOnly": true, "type": "string" @@ -12013,6 +12484,41 @@ }, "type": "object" }, + "CarouselCard": { + "description": "Details for a Demand Gen carousel card.", + "id": "CarouselCard", + "properties": { + "callToAction": { + "description": "Required. The text on the call-to-action button shown on the card. Must use 10 characters or less.", + "type": "string" + }, + "finalMobileUrl": { + "description": "Optional. The URL address of the webpage that people reach after they click the card on a mobile device.", + "type": "string" + }, + "finalUrl": { + "description": "Required. The URL address of the webpage that people reach after they click the card.", + "type": "string" + }, + "headline": { + "description": "Required. The headline of the card.", + "type": "string" + }, + "marketingImage": { + "$ref": "ImageAsset", + "description": "Optional. The marketing image shown on the card." + }, + "portraitMarketingImage": { + "$ref": "ImageAsset", + "description": "Optional. The portrait marketing image shown on the card." + }, + "squareMarketingImage": { + "$ref": "ImageAsset", + "description": "Optional. The square marketing image shown on the card." + } + }, + "type": "object" + }, "CarrierAndIspAssignedTargetingOptionDetails": { "description": "Details for assigned carrier and ISP targeting option. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_CARRIER_AND_ISP`.", "id": "CarrierAndIspAssignedTargetingOptionDetails", @@ -12804,6 +13310,11 @@ "description": "The percentage of post-view conversions to count, in millis (1/1000 of a percent). Must be between 0 and 100000 inclusive. For example, to track 50% of the post-click conversions, set a value of 50000.", "format": "int64", "type": "string" + }, + "primaryAttributionModelId": { + "description": "Optional. The attribution model to use for conversion measurement. This attribution model will determine how conversions are counted. The Primary model can be set by you for a floodlight config or group. More details [here](https://support.google.com/displayvideo/answer/7409983). Only applicable to Demand Gen line items. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users.", + "format": "int64", + "type": "string" } }, "type": "object" @@ -13030,9 +13541,9 @@ true, true, true, - false, - false, - false, + true, + true, + true, false, false, false @@ -13423,64 +13934,9 @@ }, "type": "object" }, - "CreativeConfig": { - "description": "Creative requirements configuration for the inventory source.", - "id": "CreativeConfig", - "properties": { - "creativeType": { - "description": "The type of creative that can be assigned to the inventory source. Only the following types are supported: * `CREATIVE_TYPE_STANDARD` * `CREATIVE_TYPE_VIDEO`", - "enum": [ - "CREATIVE_TYPE_UNSPECIFIED", - "CREATIVE_TYPE_STANDARD", - "CREATIVE_TYPE_EXPANDABLE", - "CREATIVE_TYPE_VIDEO", - "CREATIVE_TYPE_NATIVE", - "CREATIVE_TYPE_TEMPLATED_APP_INSTALL", - "CREATIVE_TYPE_NATIVE_SITE_SQUARE", - "CREATIVE_TYPE_TEMPLATED_APP_INSTALL_INTERSTITIAL", - "CREATIVE_TYPE_LIGHTBOX", - "CREATIVE_TYPE_NATIVE_APP_INSTALL", - "CREATIVE_TYPE_NATIVE_APP_INSTALL_SQUARE", - "CREATIVE_TYPE_AUDIO", - "CREATIVE_TYPE_PUBLISHER_HOSTED", - "CREATIVE_TYPE_NATIVE_VIDEO", - "CREATIVE_TYPE_TEMPLATED_APP_INSTALL_VIDEO", - "CREATIVE_TYPE_ASSET_BASED_CREATIVE" - ], - "enumDescriptions": [ - "Type value is not specified or is unknown in this version.", - "Standard display creative. Create and update methods are supported for this creative type if the hosting_source is one of the following: * `HOSTING_SOURCE_HOSTED` * `HOSTING_SOURCE_THIRD_PARTY`", - "Expandable creative. Create and update methods are supported for this creative type if the hosting_source is `HOSTING_SOURCE_THIRD_PARTY`", - "Video creative. Create and update methods are supported for this creative type if the hosting_source is one of the following: * `HOSTING_SOURCE_HOSTED` * `HOSTING_SOURCE_THIRD_PARTY`", - "Native creative rendered by publishers with assets from advertiser. Create and update methods are supported for this creative type if the hosting_source is `HOSTING_SOURCE_HOSTED`", - "Templated app install mobile creative (banner). Create and update methods are **not** supported for this creative type.", - "Square native creative. Create and update methods are supported for this creative type if the hosting_source is `HOSTING_SOURCE_HOSTED`", - "Interstitial creative including both display and video. Create and update methods are **not** supported for this creative type.", - "Responsive and expandable Lightbox creative. Create and update methods are **not** supported for this creative type.", - "Native app install creative. Create and update methods are **not** supported for this creative type.", - "Square native app install creative. Create and update methods are **not** supported for this creative type.", - "Audio creative. Create and update methods are supported for this creative type if the hosting_source is `HOSTING_SOURCE_HOSTED`", - "Publisher hosted creative. Create and update methods are **not** supported for this creative type.", - "Native video creative. Create and update methods are supported for this creative type if the hosting_source is `HOSTING_SOURCE_HOSTED`", - "Templated app install mobile video creative. Create and update methods are **not** supported for this creative type.", - "Asset-based creative. Create and update methods are supported for this creative type if the hosting_source is `HOSTING_SOURCE_HOSTED`." - ], - "type": "string" - }, - "displayCreativeConfig": { - "$ref": "InventorySourceDisplayCreativeConfig", - "description": "The configuration for display creatives. Applicable when creative_type is `CREATIVE_TYPE_STANDARD`." - }, - "videoCreativeConfig": { - "$ref": "InventorySourceVideoCreativeConfig", - "description": "The configuration for video creatives. Applicable when creative_type is `CREATIVE_TYPE_VIDEO`." - } - }, - "type": "object" - }, - "CustomBiddingAlgorithm": { - "description": "A single custom bidding algorithm.", - "id": "CustomBiddingAlgorithm", + "CustomBiddingAlgorithm": { + "description": "A single custom bidding algorithm.", + "id": "CustomBiddingAlgorithm", "properties": { "advertiserId": { "description": "Immutable. The unique ID of the advertiser that owns the custom bidding algorithm.", @@ -13994,7 +14450,7 @@ "type": "integer" }, "timeZoneResolution": { - "description": "Required. The mechanism used to determine which timezone to use for this day and time targeting setting.", + "description": "Required. The mechanism used to determine which timezone to use for this day and time targeting setting. For Demand Gen line items, this field is always `TIME_ZONE_RESOLUTION_ADVERTISER`.", "enum": [ "TIME_ZONE_RESOLUTION_UNSPECIFIED", "TIME_ZONE_RESOLUTION_END_USER", @@ -14010,6 +14466,28 @@ }, "type": "object" }, + "DcmTrackingInfo": { + "description": "Details on the DCM tracking.", + "id": "DcmTrackingInfo", + "properties": { + "creativeId": { + "description": "Required. The DCM creative id.", + "format": "int64", + "type": "string" + }, + "placementId": { + "description": "Required. The DCM placement id.", + "format": "int64", + "type": "string" + }, + "trackingAdId": { + "description": "Required. The DCM tracking ad id.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "DeleteAssignedTargetingOptionsRequest": { "description": "A request listing which assigned targeting options of a given targeting type should be deleted.", "id": "DeleteAssignedTargetingOptionsRequest", @@ -14132,101 +14610,545 @@ }, "type": "object" }, - "DeviceMakeModelAssignedTargetingOptionDetails": { - "description": "Assigned device make and model targeting option details. This will be populated in the device_make_model_details field when targeting_type is `TARGETING_TYPE_DEVICE_MAKE_MODEL`.", - "id": "DeviceMakeModelAssignedTargetingOptionDetails", + "DemandGenBiddingStrategy": { + "description": "Settings that control the bid strategy for Demand Gen resources.", + "id": "DemandGenBiddingStrategy", "properties": { - "displayName": { - "description": "Output only. The display name of the device make and model.", + "effectiveBiddingValue": { + "description": "Output only. The value effectively used by the bidding strategy. This field will be the same as value if set. If value is not set and the strategy is assigned to an ad group, this field will be inherited from the line item's bidding strategy. If type is not `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA` or `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS`, this field will be 0.", + "format": "int64", "readOnly": true, "type": "string" }, - "negative": { - "description": "Indicates if this option is being negatively targeted.", - "type": "boolean" + "effectiveBiddingValueSource": { + "description": "Output only. Source of the effective bidding value.", + "enum": [ + "BIDDING_SOURCE_UNSPECIFIED", + "BIDDING_SOURCE_LINE_ITEM", + "BIDDING_SOURCE_AD_GROUP" + ], + "enumDescriptions": [ + "Bidding source is not specified or unknown.", + "Bidding value is inherited from the line item.", + "Bidding value is defined in the ad group." + ], + "readOnly": true, + "type": "string" }, - "targetingOptionId": { - "description": "Required. The targeting_option_id field when targeting_type is `TARGETING_TYPE_DEVICE_MAKE_MODEL`.", + "type": { + "description": "Optional. The type of the bidding strategy. This can only be set when assigned to a line item. Ad groups will inherit this value from their line item.", + "enum": [ + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_UNSPECIFIED", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_MAXIMIZE_CONVERSIONS", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_MAXIMIZE_CONVERSION_VALUE", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_MAXIMIZE_CLICKS", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPC" + ], + "enumDescriptions": [ + "Type is not specified or unknown.", + "A bidding strategy that automatically optimizes conversions per dollar.", + "A bidding strategy that automatically maximizes revenue while averaging a specific target Return On Ad Spend (ROAS).", + "A bidding strategy that automatically maximizes number of conversions", + "A bidding strategy that automatically maximizes revenue while spending your budget.", + "A bidding strategy that automatically maximizes clicks within a given budget.", + "A bidding strategy that automatically optimizes cost per click." + ], + "type": "string" + }, + "value": { + "description": "Optional. The value used by the bidding strategy. This can be set when assigned to line items or ad groups. This field is only applicable for the following strategy types: * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPC` * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS` Value of this field is in micros of the advertiser's currency or ROAS value. For example, 1000000 represents 1.0 standard units of the currency or 100% ROAS value. If not using an applicable strategy, the value of this field will be 0.", + "format": "int64", "type": "string" } }, "type": "object" }, - "DeviceMakeModelTargetingOptionDetails": { - "description": "Represents a targetable device make and model. This will be populated in the device_make_model_details field of a TargetingOption when targeting_type is `TARGETING_TYPE_DEVICE_MAKE_MODEL`.", - "id": "DeviceMakeModelTargetingOptionDetails", + "DemandGenCarouselAd": { + "description": "Details for a Demand Gen carousel ad.", + "id": "DemandGenCarouselAd", "properties": { - "displayName": { - "description": "Output only. The display name of the device make and model.", + "businessName": { + "description": "Required. The business name shown on the ad.", + "type": "string" + }, + "cards": { + "description": "Required. The list of cards shown on the ad.", + "items": { + "$ref": "CarouselCard" + }, + "type": "array" + }, + "customParameters": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The custom parameters and accompanying values to add to the tracking URL.", + "type": "object" + }, + "description": { + "description": "Required. The description of the ad.", + "type": "string" + }, + "finalUrl": { + "description": "Required. The URL address of the webpage that people reach after they click the ad.", + "type": "string" + }, + "finalUrlSuffix": { + "description": "Optional. The suffix to append to landing page URLs.", + "type": "string" + }, + "headline": { + "description": "Required. The headline of the ad.", + "type": "string" + }, + "logo": { + "$ref": "ImageAsset", + "description": "Required. The logo image used by this ad." + }, + "trackingUrl": { + "description": "Output only. The URL address loaded in the background for tracking purposes.", "readOnly": true, "type": "string" + }, + "userSpecifiedTrackingUrl": { + "description": "Optional. The tracking URL specified by the user manually.", + "type": "string" } }, "type": "object" }, - "DeviceTypeAssignedTargetingOptionDetails": { - "description": "Targeting details for device type. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_DEVICE_TYPE`.", - "id": "DeviceTypeAssignedTargetingOptionDetails", + "DemandGenImageAd": { + "description": "Details for a Demand Gen image ad.", + "id": "DemandGenImageAd", "properties": { - "deviceType": { - "description": "Required. The display name of the device type.", - "enum": [ - "DEVICE_TYPE_UNSPECIFIED", - "DEVICE_TYPE_COMPUTER", - "DEVICE_TYPE_CONNECTED_TV", - "DEVICE_TYPE_SMART_PHONE", - "DEVICE_TYPE_TABLET", - "DEVICE_TYPE_CONNECTED_DEVICE" - ], - "enumDescriptions": [ - "Default value when device type is not specified in this version. This enum is a placeholder for default value and does not represent a real device type option.", - "Computer.", - "Connected TV.", - "Smart phone.", - "Tablet.", - "Connected device." - ], + "businessName": { + "description": "Required. The business name shown on the ad.", "type": "string" }, - "youtubeAndPartnersBidMultiplier": { - "description": "Output only. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items.", - "format": "double", + "callToAction": { + "description": "Required. The call-to-action button shown on the ad.", + "type": "string" + }, + "customParameters": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The custom parameters and accompanying values to add to the tracking URL.", + "type": "object" + }, + "descriptions": { + "description": "Required. The list of descriptions shown on the ad.", + "items": { + "type": "string" + }, + "type": "array" + }, + "finalMobileUrl": { + "description": "Optional. The URL address of the webpage that people reach after they click the ad on a mobile device.", + "type": "string" + }, + "finalUrl": { + "description": "Required. The URL address of the webpage that people reach after they click the ad.", + "type": "string" + }, + "finalUrlSuffix": { + "description": "Optional. The suffix to append to landing page URLs.", + "type": "string" + }, + "headlines": { + "description": "Required. The list of headlines shown on the ad.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logoImages": { + "description": "The list of logo images shown on the ad.", + "items": { + "$ref": "ImageAsset" + }, + "type": "array" + }, + "marketingImages": { + "description": "The list of marketing images shown on the ad.", + "items": { + "$ref": "ImageAsset" + }, + "type": "array" + }, + "portraitMarketingImages": { + "description": "The list of portrait marketing images shown on the ad.", + "items": { + "$ref": "ImageAsset" + }, + "type": "array" + }, + "squareMarketingImages": { + "description": "The list of square marketing images shown on the ad.", + "items": { + "$ref": "ImageAsset" + }, + "type": "array" + }, + "trackingUrl": { + "description": "Output only. The URL address loaded in the background for tracking purposes.", "readOnly": true, - "type": "number" + "type": "string" + }, + "userSpecifiedTrackingUrl": { + "description": "Optional. The tracking URL specified by the user manually.", + "type": "string" } }, "type": "object" }, - "DeviceTypeTargetingOptionDetails": { - "description": "Represents a targetable device type. This will be populated in the device_type_details field of a TargetingOption when targeting_type is `TARGETING_TYPE_DEVICE_TYPE`.", - "id": "DeviceTypeTargetingOptionDetails", + "DemandGenProductAd": { + "description": "Details for a Demand Gen product ad.", + "id": "DemandGenProductAd", "properties": { - "deviceType": { - "description": "Output only. The device type that is used to be targeted.", + "businessName": { + "description": "Required. The business name shown on the ad.", + "type": "string" + }, + "callToAction": { + "description": "Required. The call-to-action button shown on the ad. The supported values are: * `AUTOMATED` * `APPLY_NOW` * `BOOK_NOW` * `CONTACT_US` * `DOWNLOAD` * `GET_QUOTE` * `LEARN_MORE` * `SHOP_NOW` * `SIGN_UP` * `SUBSCRIBE`", "enum": [ - "DEVICE_TYPE_UNSPECIFIED", - "DEVICE_TYPE_COMPUTER", - "DEVICE_TYPE_CONNECTED_TV", - "DEVICE_TYPE_SMART_PHONE", - "DEVICE_TYPE_TABLET", - "DEVICE_TYPE_CONNECTED_DEVICE" + "CALL_TO_ACTION_UNSPECIFIED", + "AUTOMATED", + "LEARN_MORE", + "GET_QUOTE", + "APPLY_NOW", + "SIGN_UP", + "CONTACT_US", + "SUBSCRIBE", + "DOWNLOAD", + "BOOK_NOW", + "SHOP_NOW", + "BUY_NOW", + "DONATE_NOW", + "ORDER_NOW", + "PLAY_NOW", + "SEE_MORE", + "START_NOW", + "VISIT_SITE", + "WATCH_NOW" ], "enumDescriptions": [ - "Default value when device type is not specified in this version. This enum is a placeholder for default value and does not represent a real device type option.", - "Computer.", - "Connected TV.", - "Smart phone.", - "Tablet.", - "Connected device." + "Not specified or unknown.", + "Automated.", + "Learn more.", + "Get quote.", + "Apply now.", + "Sign up.", + "Contact us.", + "Subscribe.", + "Download.", + "Book now.", + "Shop now.", + "Buy now.", + "Donate now.", + "Order now.", + "Play now.", + "See more.", + "Start now.", + "Visit site.", + "Watch now." ], + "type": "string" + }, + "customParameters": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The custom parameters and accompanying values to add to the tracking URL.", + "type": "object" + }, + "description": { + "description": "Required. The description of the ad.", + "type": "string" + }, + "displayUrlBreadcrumb1": { + "description": "Optional. The first piece after the domain in the display URL.", + "type": "string" + }, + "displayUrlBreadcrumb2": { + "description": "Optional. The second piece after the domain in the display URL.", + "type": "string" + }, + "finalUrl": { + "description": "Required. The URL address of the webpage that people reach after they click the ad.", + "type": "string" + }, + "finalUrlSuffix": { + "description": "Optional. The suffix to append to landing page URLs.", + "type": "string" + }, + "headline": { + "description": "Required. The headline of the ad.", + "type": "string" + }, + "logo": { + "$ref": "ImageAsset", + "description": "Required. The logo image used by this ad." + }, + "trackingUrl": { + "description": "Output only. The URL address loaded in the background for tracking purposes.", "readOnly": true, "type": "string" + }, + "userSpecifiedTrackingUrl": { + "description": "Optional. The tracking URL specified by the user manually.", + "type": "string" } }, "type": "object" }, - "DigitalContentLabelAssignedTargetingOptionDetails": { - "description": "Targeting details for digital content label. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION`.", + "DemandGenSettings": { + "description": "Settings for Demand Gen line items.", + "id": "DemandGenSettings", + "properties": { + "geoLanguageTargetingEnabled": { + "description": "Optional. Immutable. Whether location and language targeting can be set at the line item level. Otherwise, relevant targeting types must be assigned directly to ad groups.", + "type": "boolean" + }, + "linkedMerchantId": { + "description": "Optional. The ID of the Merchant Center account used to provide a product feed. This Merchant Center account must already be linked to the advertiser.", + "format": "int64", + "type": "string" + }, + "thirdPartyMeasurementConfigs": { + "$ref": "ThirdPartyMeasurementConfigs", + "description": "Optional. The third party measurement settings for the Demand Gen line item." + } + }, + "type": "object" + }, + "DemandGenVideoAd": { + "description": "Details for a Demand Gen video ad.", + "id": "DemandGenVideoAd", + "properties": { + "businessName": { + "description": "Required. The business name shown on the ad.", + "type": "string" + }, + "callToAction": { + "description": "Required. The call-to-action button shown on the ad. The supported values are: * `AUTOMATED` * `LEARN_MORE` * `GET_QUOTE` * `APPLY_NOW` * `SIGN_UP` * `CONTACT_US` * `SUBSCRIBE` * `DOWNLOAD` * `BOOK_NOW` * `SHOP_NOW` * `BUY_NOW` * `DONATE_NOW` * `ORDER_NOW` * `PLAY_NOW` * `SEE_MORE` * `START_NOW` * `VISIT_SITE` * `WATCH_NOW`", + "enum": [ + "CALL_TO_ACTION_UNSPECIFIED", + "AUTOMATED", + "LEARN_MORE", + "GET_QUOTE", + "APPLY_NOW", + "SIGN_UP", + "CONTACT_US", + "SUBSCRIBE", + "DOWNLOAD", + "BOOK_NOW", + "SHOP_NOW", + "BUY_NOW", + "DONATE_NOW", + "ORDER_NOW", + "PLAY_NOW", + "SEE_MORE", + "START_NOW", + "VISIT_SITE", + "WATCH_NOW" + ], + "enumDescriptions": [ + "Not specified or unknown.", + "Automated.", + "Learn more.", + "Get quote.", + "Apply now.", + "Sign up.", + "Contact us.", + "Subscribe.", + "Download.", + "Book now.", + "Shop now.", + "Buy now.", + "Donate now.", + "Order now.", + "Play now.", + "See more.", + "Start now.", + "Visit site.", + "Watch now." + ], + "type": "string" + }, + "companionBanner": { + "$ref": "ImageAsset", + "description": "Optional. The companion banner used by this ad." + }, + "customParameters": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The custom parameters and accompanying values to add to the tracking URL.", + "type": "object" + }, + "descriptions": { + "description": "Required. The list of descriptions shown on the ad.", + "items": { + "type": "string" + }, + "type": "array" + }, + "displayUrlBreadcrumb1": { + "description": "Optional. The first piece after the domain in the display URL.", + "type": "string" + }, + "displayUrlBreadcrumb2": { + "description": "Optional. The second piece after the domain in the display URL.", + "type": "string" + }, + "finalMobileUrl": { + "description": "Optional. The URL address of the webpage that people reach after they click the ad on a mobile device.", + "type": "string" + }, + "finalUrl": { + "description": "Required. The URL address of the webpage that people reach after they click the ad.", + "type": "string" + }, + "finalUrlSuffix": { + "description": "Optional. The suffix to append to landing page URLs.", + "type": "string" + }, + "headlines": { + "description": "Required. The list of headlines shown on the ad.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logo": { + "$ref": "ImageAsset", + "description": "Required. The logo image used by this ad." + }, + "longHeadlines": { + "description": "Required. The list of long headlines shown on the ad.", + "items": { + "type": "string" + }, + "type": "array" + }, + "trackingUrl": { + "description": "Output only. The URL address loaded in the background for tracking purposes.", + "readOnly": true, + "type": "string" + }, + "userSpecifiedTrackingUrl": { + "description": "Optional. The tracking URL specified by the user manually.", + "type": "string" + }, + "videos": { + "description": "Required. The list of YouTube video assets used by this ad.", + "items": { + "$ref": "YoutubeVideoDetails" + }, + "type": "array" + } + }, + "type": "object" + }, + "DeviceMakeModelAssignedTargetingOptionDetails": { + "description": "Assigned device make and model targeting option details. This will be populated in the device_make_model_details field when targeting_type is `TARGETING_TYPE_DEVICE_MAKE_MODEL`.", + "id": "DeviceMakeModelAssignedTargetingOptionDetails", + "properties": { + "displayName": { + "description": "Output only. The display name of the device make and model.", + "readOnly": true, + "type": "string" + }, + "negative": { + "description": "Indicates if this option is being negatively targeted.", + "type": "boolean" + }, + "targetingOptionId": { + "description": "Required. The targeting_option_id field when targeting_type is `TARGETING_TYPE_DEVICE_MAKE_MODEL`.", + "type": "string" + } + }, + "type": "object" + }, + "DeviceMakeModelTargetingOptionDetails": { + "description": "Represents a targetable device make and model. This will be populated in the device_make_model_details field of a TargetingOption when targeting_type is `TARGETING_TYPE_DEVICE_MAKE_MODEL`.", + "id": "DeviceMakeModelTargetingOptionDetails", + "properties": { + "displayName": { + "description": "Output only. The display name of the device make and model.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "DeviceTypeAssignedTargetingOptionDetails": { + "description": "Targeting details for device type. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_DEVICE_TYPE`.", + "id": "DeviceTypeAssignedTargetingOptionDetails", + "properties": { + "deviceType": { + "description": "Required. The display name of the device type.", + "enum": [ + "DEVICE_TYPE_UNSPECIFIED", + "DEVICE_TYPE_COMPUTER", + "DEVICE_TYPE_CONNECTED_TV", + "DEVICE_TYPE_SMART_PHONE", + "DEVICE_TYPE_TABLET", + "DEVICE_TYPE_CONNECTED_DEVICE" + ], + "enumDescriptions": [ + "Default value when device type is not specified in this version. This enum is a placeholder for default value and does not represent a real device type option.", + "Computer.", + "Connected TV.", + "Smart phone.", + "Tablet.", + "Connected device." + ], + "type": "string" + }, + "youtubeAndPartnersBidMultiplier": { + "description": "Output only. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items.", + "format": "double", + "readOnly": true, + "type": "number" + } + }, + "type": "object" + }, + "DeviceTypeTargetingOptionDetails": { + "description": "Represents a targetable device type. This will be populated in the device_type_details field of a TargetingOption when targeting_type is `TARGETING_TYPE_DEVICE_TYPE`.", + "id": "DeviceTypeTargetingOptionDetails", + "properties": { + "deviceType": { + "description": "Output only. The device type that is used to be targeted.", + "enum": [ + "DEVICE_TYPE_UNSPECIFIED", + "DEVICE_TYPE_COMPUTER", + "DEVICE_TYPE_CONNECTED_TV", + "DEVICE_TYPE_SMART_PHONE", + "DEVICE_TYPE_TABLET", + "DEVICE_TYPE_CONNECTED_DEVICE" + ], + "enumDescriptions": [ + "Default value when device type is not specified in this version. This enum is a placeholder for default value and does not represent a real device type option.", + "Computer.", + "Connected TV.", + "Smart phone.", + "Tablet.", + "Connected device." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "DigitalContentLabelAssignedTargetingOptionDetails": { + "description": "Targeting details for digital content label. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION`.", "id": "DigitalContentLabelAssignedTargetingOptionDetails", "properties": { "excludedContentRatingTier": { @@ -14785,49 +15707,6 @@ }, "type": "object" }, - "EditInventorySourceReadWriteAccessorsRequest": { - "description": "Request message for InventorySourceService.EditInventorySourceReadWriteAccessors.", - "id": "EditInventorySourceReadWriteAccessorsRequest", - "properties": { - "advertisersUpdate": { - "$ref": "EditInventorySourceReadWriteAccessorsRequestAdvertisersUpdate", - "description": "The advertisers to add or remove from the list of advertisers that have read/write access to the inventory source. This change will remove an existing partner read/write accessor." - }, - "assignPartner": { - "description": "Set the partner context as read/write accessor of the inventory source. This will remove all other current read/write advertiser accessors.", - "type": "boolean" - }, - "partnerId": { - "description": "Required. The partner context by which the accessors change is being made.", - "format": "int64", - "type": "string" - } - }, - "type": "object" - }, - "EditInventorySourceReadWriteAccessorsRequestAdvertisersUpdate": { - "description": "Update to the list of advertisers with read/write access to the inventory source.", - "id": "EditInventorySourceReadWriteAccessorsRequestAdvertisersUpdate", - "properties": { - "addedAdvertisers": { - "description": "The advertisers to add.", - "items": { - "format": "int64", - "type": "string" - }, - "type": "array" - }, - "removedAdvertisers": { - "description": "The advertisers to remove.", - "items": { - "format": "int64", - "type": "string" - }, - "type": "array" - } - }, - "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", @@ -16267,7 +17146,8 @@ "GEO_REGION_TYPE_QUARTER", "GEO_REGION_TYPE_DIVISION", "GEO_REGION_TYPE_COMMUNE", - "GEO_REGION_TYPE_COLLOQUIAL_AREA" + "GEO_REGION_TYPE_COLLOQUIAL_AREA", + "GEO_REGION_TYPE_POST_TOWN" ], "enumDescriptions": [ "The geographic region type is unknown.", @@ -16307,7 +17187,8 @@ "The geographic region is a quarter.", "The geographic region is a division.", "The geographic region is a commune.", - "The geographic region is a colloquial area." + "The geographic region is a colloquial area.", + "The geographic region is a post town." ], "readOnly": true, "type": "string" @@ -16383,7 +17264,8 @@ "GEO_REGION_TYPE_QUARTER", "GEO_REGION_TYPE_DIVISION", "GEO_REGION_TYPE_COMMUNE", - "GEO_REGION_TYPE_COLLOQUIAL_AREA" + "GEO_REGION_TYPE_COLLOQUIAL_AREA", + "GEO_REGION_TYPE_POST_TOWN" ], "enumDescriptions": [ "The geographic region type is unknown.", @@ -16423,7 +17305,8 @@ "The geographic region is a quarter.", "The geographic region is a division.", "The geographic region is a commune.", - "The geographic region is a colloquial area." + "The geographic region is a colloquial area.", + "The geographic region is a post town." ], "readOnly": true, "type": "string" @@ -16966,6 +17849,11 @@ "description": "Meta data of an image asset.", "id": "ImageAsset", "properties": { + "assetId": { + "description": "Required. The unique ID of the asset.", + "format": "int64", + "type": "string" + }, "fileSize": { "description": "Output only. File size of the image asset in bytes.", "format": "int64", @@ -16997,7 +17885,7 @@ "additionalProperties": { "type": "string" }, - "description": "The custom parameters to pass custom values to tracking URL template.", + "description": "The custom parameters and accompanying values to add to the tracking URL.", "type": "object" } }, @@ -17164,7 +18052,7 @@ "Insertion order automation option is not specified or is unknown in this version.", "Automatic budget allocation. Allow the system to automatically shift budget to owning line items to optimize performance defined by kpi. No automation on bid settings.", "No automation of bid or budget on insertion order level. Bid and budget must be manually configured at the line item level.", - "Allow the system to automatically adjust bids and shift budget to owning line items to optimize performance defined by kpi." + "Allow the system to automatically adjust bids and shift budget to owning line items to optimize performance defined by bid_strategy." ], "type": "string" }, @@ -17370,458 +18258,78 @@ "enum": [ "VIOLENCE_UNSPECIFIED", "VIOLENCE_HR", - "VIOLENCE_HMR" - ], - "enumDescriptions": [ - "This enum is only a placeholder and it doesn't specify any violence options.", - "Violence - Exclude High Risk.", - "Violence - Exclude High and Moderate Risk." - ], - "type": "string" - }, - "qualitySyncCustomSegmentId": { - "description": "Optional. The quality sync custom segment ID provided by Integral Ad Science. The ID must be between `3000000` and `4999999`, inclusive.", - "items": { - "format": "int64", - "type": "string" - }, - "type": "array" - }, - "traqScoreOption": { - "description": "True advertising quality (applicable to Display line items only).", - "enum": [ - "TRAQ_UNSPECIFIED", - "TRAQ_250", - "TRAQ_500", - "TRAQ_600", - "TRAQ_700", - "TRAQ_750", - "TRAQ_875", - "TRAQ_1000" - ], - "enumDescriptions": [ - "This enum is only a placeholder and it doesn't specify any true advertising quality scores.", - "TRAQ score 250-1000.", - "TRAQ score 500-1000.", - "TRAQ score 600-1000.", - "TRAQ score 700-1000.", - "TRAQ score 750-1000.", - "TRAQ score 875-1000.", - "TRAQ score 1000." - ], - "type": "string" - }, - "videoViewability": { - "description": "Video Viewability Section (applicable to video line items only).", - "enum": [ - "VIDEO_VIEWABILITY_UNSPECIFIED", - "VIDEO_VIEWABILITY_40", - "VIDEO_VIEWABILITY_50", - "VIDEO_VIEWABILITY_60", - "VIDEO_VIEWABILITY_70" - ], - "enumDescriptions": [ - "This enum is only a placeholder and it doesn't specify any video viewability options.", - "40%+ in view (IAB video viewability standard).", - "50%+ in view (IAB video viewability standard).", - "60%+ in view (IAB video viewability standard).", - "70%+ in view (IAB video viewability standard)." - ], - "type": "string" - } - }, - "type": "object" - }, - "IntegrationDetails": { - "description": "Integration details of an entry.", - "id": "IntegrationDetails", - "properties": { - "details": { - "description": "Additional details of the entry in string format. Must be UTF-8 encoded with a length of no more than 1000 characters.", - "type": "string" - }, - "integrationCode": { - "description": "An external identifier to be associated with the entry. The integration code will show up together with the entry in many places in the system, for example, reporting. Must be UTF-8 encoded with a length of no more than 500 characters.", - "type": "string" - } - }, - "type": "object" - }, - "InventorySource": { - "description": "An inventory source. Next ID: 22", - "id": "InventorySource", - "properties": { - "commitment": { - "description": "Whether the inventory source has a guaranteed or non-guaranteed delivery.", - "enum": [ - "INVENTORY_SOURCE_COMMITMENT_UNSPECIFIED", - "INVENTORY_SOURCE_COMMITMENT_GUARANTEED", - "INVENTORY_SOURCE_COMMITMENT_NON_GUARANTEED" - ], - "enumDescriptions": [ - "The commitment is not specified or is unknown in this version.", - "The commitment is guaranteed delivery.", - "The commitment is non-guaranteed delivery." - ], - "type": "string" - }, - "creativeConfigs": { - "description": "The creative requirements of the inventory source. Not applicable for auction packages.", - "items": { - "$ref": "CreativeConfig" - }, - "type": "array" - }, - "dealId": { - "description": "The ID in the exchange space that uniquely identifies the inventory source. Must be unique across buyers within each exchange but not necessarily unique across exchanges.", - "type": "string" - }, - "deliveryMethod": { - "description": "The delivery method of the inventory source. * For non-guaranteed inventory sources, the only acceptable value is `INVENTORY_SOURCE_DELIVERY_METHOD_PROGRAMMATIC`. * For guaranteed inventory sources, acceptable values are `INVENTORY_SOURCE_DELIVERY_METHOD_TAG` and `INVENTORY_SOURCE_DELIVERY_METHOD_PROGRAMMATIC`.", - "enum": [ - "INVENTORY_SOURCE_DELIVERY_METHOD_UNSPECIFIED", - "INVENTORY_SOURCE_DELIVERY_METHOD_PROGRAMMATIC", - "INVENTORY_SOURCE_DELIVERY_METHOD_TAG" - ], - "enumDescriptions": [ - "The delivery method is not specified or is unknown in this version.", - "The delivery method is programmatic.", - "The delivery method is tag." - ], - "type": "string" - }, - "displayName": { - "description": "The display name of the inventory source. Must be UTF-8 encoded with a maximum size of 240 bytes.", - "type": "string" - }, - "exchange": { - "description": "The exchange to which the inventory source belongs.", - "enum": [ - "EXCHANGE_UNSPECIFIED", - "EXCHANGE_GOOGLE_AD_MANAGER", - "EXCHANGE_APPNEXUS", - "EXCHANGE_BRIGHTROLL", - "EXCHANGE_ADFORM", - "EXCHANGE_ADMETA", - "EXCHANGE_ADMIXER", - "EXCHANGE_ADSMOGO", - "EXCHANGE_ADSWIZZ", - "EXCHANGE_BIDSWITCH", - "EXCHANGE_BRIGHTROLL_DISPLAY", - "EXCHANGE_CADREON", - "EXCHANGE_DAILYMOTION", - "EXCHANGE_FIVE", - "EXCHANGE_FLUCT", - "EXCHANGE_FREEWHEEL", - "EXCHANGE_GENIEE", - "EXCHANGE_GUMGUM", - "EXCHANGE_IMOBILE", - "EXCHANGE_IBILLBOARD", - "EXCHANGE_IMPROVE_DIGITAL", - "EXCHANGE_INDEX", - "EXCHANGE_KARGO", - "EXCHANGE_MICROAD", - "EXCHANGE_MOPUB", - "EXCHANGE_NEND", - "EXCHANGE_ONE_BY_AOL_DISPLAY", - "EXCHANGE_ONE_BY_AOL_MOBILE", - "EXCHANGE_ONE_BY_AOL_VIDEO", - "EXCHANGE_OOYALA", - "EXCHANGE_OPENX", - "EXCHANGE_PERMODO", - "EXCHANGE_PLATFORMONE", - "EXCHANGE_PLATFORMID", - "EXCHANGE_PUBMATIC", - "EXCHANGE_PULSEPOINT", - "EXCHANGE_REVENUEMAX", - "EXCHANGE_RUBICON", - "EXCHANGE_SMARTCLIP", - "EXCHANGE_SMARTRTB", - "EXCHANGE_SMARTSTREAMTV", - "EXCHANGE_SOVRN", - "EXCHANGE_SPOTXCHANGE", - "EXCHANGE_STROER", - "EXCHANGE_TEADSTV", - "EXCHANGE_TELARIA", - "EXCHANGE_TVN", - "EXCHANGE_UNITED", - "EXCHANGE_YIELDLAB", - "EXCHANGE_YIELDMO", - "EXCHANGE_UNRULYX", - "EXCHANGE_OPEN8", - "EXCHANGE_TRITON", - "EXCHANGE_TRIPLELIFT", - "EXCHANGE_TABOOLA", - "EXCHANGE_INMOBI", - "EXCHANGE_SMAATO", - "EXCHANGE_AJA", - "EXCHANGE_SUPERSHIP", - "EXCHANGE_NEXSTAR_DIGITAL", - "EXCHANGE_WAZE", - "EXCHANGE_SOUNDCAST", - "EXCHANGE_SHARETHROUGH", - "EXCHANGE_FYBER", - "EXCHANGE_RED_FOR_PUBLISHERS", - "EXCHANGE_MEDIANET", - "EXCHANGE_TAPJOY", - "EXCHANGE_VISTAR", - "EXCHANGE_DAX", - "EXCHANGE_JCD", - "EXCHANGE_PLACE_EXCHANGE", - "EXCHANGE_APPLOVIN", - "EXCHANGE_CONNATIX", - "EXCHANGE_RESET_DIGITAL", - "EXCHANGE_HIVESTACK", - "EXCHANGE_DRAX", - "EXCHANGE_APPLOVIN_GBID", - "EXCHANGE_FYBER_GBID", - "EXCHANGE_UNITY_GBID", - "EXCHANGE_CHARTBOOST_GBID", - "EXCHANGE_ADMOST_GBID", - "EXCHANGE_TOPON_GBID", - "EXCHANGE_NETFLIX", - "EXCHANGE_CORE", - "EXCHANGE_COMMERCE_GRID", - "EXCHANGE_SPOTIFY", - "EXCHANGE_TUBI", - "EXCHANGE_SNAP", - "EXCHANGE_CADENT" - ], - "enumDescriptions": [ - "Exchange is not specified or is unknown in this version.", - "Google Ad Manager.", - "AppNexus.", - "BrightRoll Exchange for Video from Yahoo!.", - "Adform.", - "Admeta.", - "Admixer.", - "AdsMogo.", - "AdsWizz.", - "BidSwitch.", - "BrightRoll Exchange for Display from Yahoo!.", - "Cadreon.", - "Dailymotion.", - "Five.", - "Fluct.", - "FreeWheel SSP.", - "Geniee.", - "GumGum.", - "i-mobile.", - "iBILLBOARD.", - "Improve Digital.", - "Index Exchange.", - "Kargo.", - "MicroAd.", - "MoPub.", - "Nend.", - "ONE by AOL: Display Market Place.", - "ONE by AOL: Mobile.", - "ONE by AOL: Video.", - "Ooyala.", - "OpenX.", - "Permodo.", - "Platform One.", - "PlatformId.", - "PubMatic.", - "PulsePoint.", - "RevenueMax.", - "Rubicon.", - "SmartClip.", - "SmartRTB+.", - "SmartstreamTv.", - "Sovrn.", - "SpotXchange.", - "Ströer SSP.", - "TeadsTv.", - "Telaria.", - "TVN.", - "United.", - "Yieldlab.", - "Yieldmo.", - "UnrulyX.", - "Open8.", - "Triton.", - "TripleLift.", - "Taboola.", - "InMobi.", - "Smaato.", - "Aja.", - "Supership.", - "Nexstar Digital.", - "Waze.", - "SoundCast.", - "Sharethrough.", - "Fyber.", - "Red For Publishers.", - "Media.net.", - "Tapjoy.", - "Vistar.", - "DAX.", - "JCD.", - "Place Exchange.", - "AppLovin.", - "Connatix.", - "Reset Digital.", - "Hivestack.", - "Drax.", - "AppLovin MAX.", - "DT Fairbid.", - "Unity LevelPlay.", - "Chartboost Mediation.", - "AdMost.", - "TopOn.", - "Netflix.", - "Core.", - "Commerce Grid.", - "Spotify.", - "Tubi.", - "Snap.", - "Cadent." - ], - "type": "string" - }, - "guaranteedOrderId": { - "description": "Immutable. The ID of the guaranteed order that this inventory source belongs to. Only applicable when commitment is `INVENTORY_SOURCE_COMMITMENT_GUARANTEED`.", - "type": "string" - }, - "inventorySourceId": { - "description": "Output only. The unique ID of the inventory source. Assigned by the system.", - "format": "int64", - "readOnly": true, - "type": "string" - }, - "inventorySourceProductType": { - "description": "Output only. The product type of the inventory source, denoting the way through which it sells inventory.", - "enum": [ - "INVENTORY_SOURCE_PRODUCT_TYPE_UNSPECIFIED", - "PREFERRED_DEAL", - "PRIVATE_AUCTION", - "PROGRAMMATIC_GUARANTEED", - "TAG_GUARANTEED", - "YOUTUBE_RESERVE", - "INSTANT_RESERVE", - "GUARANTEED_PACKAGE", - "PROGRAMMATIC_TV", - "AUCTION_PACKAGE" - ], - "enumDescriptions": [ - "The product type is not specified or is unknown in this version. Modifying inventory sources of this product type are not supported via API.", - "The inventory source sells inventory through Preferred Deal.", - "The inventory source sells inventory through Private Auction.", - "The inventory source sells inventory through Programmatic Guaranteed.", - "The inventory source sells inventory through Tag Guaranteed.", - "The inventory source sells inventory through YouTube Reserve.", - "The inventory source sells inventory through Instant Reserve. Modifying inventory sources of this product type are not supported via API.", - "The inventory source sells inventory through Guaranteed Package. Modifying inventory sources of this product type are not supported via API.", - "The inventory source sells inventory through Programmtic TV. Modifying inventory sources of this product type are not supported via API.", - "The inventory source sells inventory through Auction Package. Modifying inventory sources of this product type are not supported via API." - ], - "readOnly": true, - "type": "string" - }, - "inventorySourceType": { - "description": "Denotes the type of the inventory source.", - "enum": [ - "INVENTORY_SOURCE_TYPE_UNSPECIFIED", - "INVENTORY_SOURCE_TYPE_PRIVATE", - "INVENTORY_SOURCE_TYPE_AUCTION_PACKAGE" + "VIOLENCE_HMR" ], "enumDescriptions": [ - "The inventory source type is not specified or is unknown in this version.", - "Private inventory source.", - "Auction package." + "This enum is only a placeholder and it doesn't specify any violence options.", + "Violence - Exclude High Risk.", + "Violence - Exclude High and Moderate Risk." ], "type": "string" }, - "name": { - "description": "Output only. The resource name of the inventory source.", - "readOnly": true, - "type": "string" - }, - "publisherName": { - "description": "The publisher/seller name of the inventory source.", - "type": "string" - }, - "rateDetails": { - "$ref": "RateDetails", - "description": "Required. The rate details of the inventory source." - }, - "readAdvertiserIds": { - "description": "Output only. The IDs of advertisers with read-only access to the inventory source.", - "items": { - "format": "int64", - "type": "string" - }, - "readOnly": true, - "type": "array" - }, - "readPartnerIds": { - "description": "Output only. The IDs of partners with read-only access to the inventory source. All advertisers of partners in this field inherit read-only access to the inventory source.", + "qualitySyncCustomSegmentId": { + "description": "Optional. The quality sync custom segment ID provided by Integral Ad Science. The ID must be between `3000000` and `4999999`, inclusive.", "items": { "format": "int64", "type": "string" }, - "readOnly": true, "type": "array" }, - "readWriteAccessors": { - "$ref": "InventorySourceAccessors", - "description": "The partner or advertisers that have read/write access to the inventory source. Output only when commitment is `INVENTORY_SOURCE_COMMITMENT_GUARANTEED`, in which case the read/write accessors are inherited from the parent guaranteed order. Required when commitment is `INVENTORY_SOURCE_COMMITMENT_NON_GUARANTEED`. If commitment is `INVENTORY_SOURCE_COMMITMENT_NON_GUARANTEED` and a partner is set in this field, all advertisers under this partner will automatically have read-only access to the inventory source. These advertisers will not be included in read_advertiser_ids." - }, - "status": { - "$ref": "InventorySourceStatus", - "description": "The status settings of the inventory source." - }, - "timeRange": { - "$ref": "TimeRange", - "description": "The time range when this inventory source starts and stops serving." + "traqScoreOption": { + "description": "True advertising quality (applicable to Display line items only).", + "enum": [ + "TRAQ_UNSPECIFIED", + "TRAQ_250", + "TRAQ_500", + "TRAQ_600", + "TRAQ_700", + "TRAQ_750", + "TRAQ_875", + "TRAQ_1000" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any true advertising quality scores.", + "TRAQ score 250-1000.", + "TRAQ score 500-1000.", + "TRAQ score 600-1000.", + "TRAQ score 700-1000.", + "TRAQ score 750-1000.", + "TRAQ score 875-1000.", + "TRAQ score 1000." + ], + "type": "string" }, - "updateTime": { - "description": "Output only. The timestamp when the inventory source was last updated. Assigned by the system.", - "format": "google-datetime", - "readOnly": true, + "videoViewability": { + "description": "Video Viewability Section (applicable to video line items only).", + "enum": [ + "VIDEO_VIEWABILITY_UNSPECIFIED", + "VIDEO_VIEWABILITY_40", + "VIDEO_VIEWABILITY_50", + "VIDEO_VIEWABILITY_60", + "VIDEO_VIEWABILITY_70" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any video viewability options.", + "40%+ in view (IAB video viewability standard).", + "50%+ in view (IAB video viewability standard).", + "60%+ in view (IAB video viewability standard).", + "70%+ in view (IAB video viewability standard)." + ], "type": "string" } }, "type": "object" }, - "InventorySourceAccessors": { - "description": "The partner or advertisers with access to the inventory source.", - "id": "InventorySourceAccessors", + "IntegrationDetails": { + "description": "Integration details of an entry.", + "id": "IntegrationDetails", "properties": { - "advertisers": { - "$ref": "InventorySourceAccessorsAdvertiserAccessors", - "description": "The advertisers with access to the inventory source. All advertisers must belong to the same partner." + "details": { + "description": "Additional details of the entry in string format. Must be UTF-8 encoded with a length of no more than 1000 characters.", + "type": "string" }, - "partner": { - "$ref": "InventorySourceAccessorsPartnerAccessor", - "description": "The partner with access to the inventory source." - } - }, - "type": "object" - }, - "InventorySourceAccessorsAdvertiserAccessors": { - "description": "The advertisers with access to the inventory source.", - "id": "InventorySourceAccessorsAdvertiserAccessors", - "properties": { - "advertiserIds": { - "description": "The IDs of the advertisers.", - "items": { - "format": "int64", - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "InventorySourceAccessorsPartnerAccessor": { - "description": "The partner with access to the inventory source.", - "id": "InventorySourceAccessorsPartnerAccessor", - "properties": { - "partnerId": { - "description": "The ID of the partner.", - "format": "int64", + "integrationCode": { + "description": "An external identifier to be associated with the entry. The integration code will show up together with the entry in many places in the system, for example, reporting. Must be UTF-8 encoded with a length of no more than 500 characters.", "type": "string" } }, @@ -17839,17 +18347,6 @@ }, "type": "object" }, - "InventorySourceDisplayCreativeConfig": { - "description": "The configuration for display creatives.", - "id": "InventorySourceDisplayCreativeConfig", - "properties": { - "creativeSize": { - "$ref": "Dimensions", - "description": "The size requirements for display creatives that can be assigned to the inventory source." - } - }, - "type": "object" - }, "InventorySourceFilter": { "description": "A filtering option for filtering on Inventory Source entities.", "id": "InventorySourceFilter", @@ -17899,90 +18396,6 @@ }, "type": "object" }, - "InventorySourceStatus": { - "description": "The status related settings of the inventory source.", - "id": "InventorySourceStatus", - "properties": { - "configStatus": { - "description": "Output only. The configuration status of the inventory source. Only applicable for guaranteed inventory sources. Acceptable values are `INVENTORY_SOURCE_CONFIG_STATUS_PENDING` and `INVENTORY_SOURCE_CONFIG_STATUS_COMPLETED`. An inventory source must be configured (fill in the required fields, choose creatives, and select a default campaign) before it can serve.", - "enum": [ - "INVENTORY_SOURCE_CONFIG_STATUS_UNSPECIFIED", - "INVENTORY_SOURCE_CONFIG_STATUS_PENDING", - "INVENTORY_SOURCE_CONFIG_STATUS_COMPLETED" - ], - "enumDescriptions": [ - "The approval status is not specified or is unknown in this version.", - "The beginning state of a guaranteed inventory source. The inventory source in this state needs to be configured.", - "The state after the buyer configures a guaranteed inventory source." - ], - "readOnly": true, - "type": "string" - }, - "entityPauseReason": { - "description": "The user-provided reason for pausing this inventory source. Must not exceed 100 characters. Only applicable when entity_status is set to `ENTITY_STATUS_PAUSED`.", - "type": "string" - }, - "entityStatus": { - "description": "Whether or not the inventory source is servable. Acceptable values are `ENTITY_STATUS_ACTIVE`, `ENTITY_STATUS_ARCHIVED`, and `ENTITY_STATUS_PAUSED`. Default value is `ENTITY_STATUS_ACTIVE`.", - "enum": [ - "ENTITY_STATUS_UNSPECIFIED", - "ENTITY_STATUS_ACTIVE", - "ENTITY_STATUS_ARCHIVED", - "ENTITY_STATUS_DRAFT", - "ENTITY_STATUS_PAUSED", - "ENTITY_STATUS_SCHEDULED_FOR_DELETION" - ], - "enumDescriptions": [ - "Default value when status is not specified or is unknown in this version.", - "The entity is enabled to bid and spend budget.", - "The entity is archived. Bidding and budget spending are disabled. An entity can be deleted after archived. Deleted entities cannot be retrieved.", - "The entity is under draft. Bidding and budget spending are disabled.", - "Bidding and budget spending are paused for the entity.", - "The entity is scheduled for deletion." - ], - "type": "string" - }, - "sellerPauseReason": { - "description": "Output only. The seller-provided reason for pausing this inventory source. Only applicable for inventory sources synced directly from the publishers and when seller_status is set to `ENTITY_STATUS_PAUSED`.", - "readOnly": true, - "type": "string" - }, - "sellerStatus": { - "description": "Output only. The status set by the seller for the inventory source. Only applicable for inventory sources synced directly from the publishers. Acceptable values are `ENTITY_STATUS_ACTIVE` and `ENTITY_STATUS_PAUSED`.", - "enum": [ - "ENTITY_STATUS_UNSPECIFIED", - "ENTITY_STATUS_ACTIVE", - "ENTITY_STATUS_ARCHIVED", - "ENTITY_STATUS_DRAFT", - "ENTITY_STATUS_PAUSED", - "ENTITY_STATUS_SCHEDULED_FOR_DELETION" - ], - "enumDescriptions": [ - "Default value when status is not specified or is unknown in this version.", - "The entity is enabled to bid and spend budget.", - "The entity is archived. Bidding and budget spending are disabled. An entity can be deleted after archived. Deleted entities cannot be retrieved.", - "The entity is under draft. Bidding and budget spending are disabled.", - "Bidding and budget spending are paused for the entity.", - "The entity is scheduled for deletion." - ], - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "InventorySourceVideoCreativeConfig": { - "description": "The configuration for video creatives.", - "id": "InventorySourceVideoCreativeConfig", - "properties": { - "duration": { - "description": "The duration requirements for the video creatives that can be assigned to the inventory source.", - "format": "google-duration", - "type": "string" - } - }, - "type": "object" - }, "Invoice": { "description": "A single invoice.", "id": "Invoice", @@ -18094,6 +18507,13 @@ "description": "Details for assigned keyword targeting option. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_KEYWORD`.", "id": "KeywordAssignedTargetingOptionDetails", "properties": { + "exemptedPolicyNames": { + "description": "Optional. The policy names to exempt the keyword from. When attempting to target a keyword that violates a policy, the error returned will include the name of the relevant policy. Use that name in this field to exempt the targeted keyword from the policy. This field is only applicable for positively-targeted keywords assigned to Demand Gen resources. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users.", + "items": { + "type": "string" + }, + "type": "array" + }, "keyword": { "description": "Required. The keyword, for example `car insurance`. Positive keyword cannot be offensive word. Must be UTF-8 encoded with a maximum size of 255 bytes. Maximum number of characters is 80. Maximum number of words is 10.", "type": "string" @@ -18263,6 +18683,10 @@ }, "type": "array" }, + "demandGenSettings": { + "$ref": "DemandGenSettings", + "description": "Optional. Settings specific to Demand Gen line items. Only applicable to Demand Gen line items. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, "displayName": { "description": "Required. The display name of the line item. Must be UTF-8 encoded with a maximum size of 240 bytes.", "type": "string" @@ -18297,7 +18721,7 @@ }, "frequencyCap": { "$ref": "FrequencyCap", - "description": "Required. The impression frequency cap settings of the line item. The max_impressions field in this settings object must be used if assigning a limited cap." + "description": "Optional. Required if the line item type is not `LINE_ITEM_TYPE_DEMAND_GEN`. The impression frequency cap settings of the line item. The max_impressions field in this settings object must be used if assigning a limited cap." }, "insertionOrderId": { "description": "Required. Immutable. The unique ID of the insertion order that the line item belongs to.", @@ -18338,7 +18762,8 @@ "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_TARGET_FREQUENCY", "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIEW", "LINE_ITEM_TYPE_DISPLAY_OUT_OF_HOME", - "LINE_ITEM_TYPE_VIDEO_OUT_OF_HOME" + "LINE_ITEM_TYPE_VIDEO_OUT_OF_HOME", + "LINE_ITEM_TYPE_DEMAND_GEN" ], "enumDescriptions": [ "Type value is not specified or is unknown in this version. Line items of this type and their targeting cannot be created or updated using the API.", @@ -18362,7 +18787,8 @@ "The goal of this line item type is to show the YouTube ads target number of times to the same person in a certain period of time. Line items of this type and their targeting cannot be created or updated using the API.", "YouTube video ads that aim to get more views with a variety of ad formats. Line items of this type and their targeting cannot be created or updated using the API.", "Display ads served on digital-out-of-home inventory. Line items of this type and their targeting cannot be created or updated using the API.", - "Video ads served on digital-out-of-home inventory. Line items of this type and their targeting cannot be created or updated using the API." + "Video ads served on digital-out-of-home inventory. Line items of this type and their targeting cannot be created or updated using the API.", + "Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This enum value is only available to allowlisted users." ], "type": "string" }, @@ -18375,6 +18801,10 @@ "readOnly": true, "type": "string" }, + "optimizeFixedBidding": { + "description": "Optional. Whether to enable DV360's bid optimization for fixed bid line items. By default, DV360 optimizes your fixed bid by automatically lowering bids for impressions that are less likely to perform well. This optimization is enabled by default (value is true). When this field is set to `false`, this optimization is disabled, and the bid will not be lowered for any reason. This setting only applies to line items with a `bidding_strategy` of type `FIXED_BID`.", + "type": "boolean" + }, "pacing": { "$ref": "Pacing", "description": "Required. The budget spending speed setting of the line item." @@ -18484,7 +18914,7 @@ "id": "LineItemBudget", "properties": { "budgetAllocationType": { - "description": "Required. The type of the budget allocation. `LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC` is only applicable when automatic budget allocation is enabled for the parent insertion order.", + "description": "Required. The type of the budget allocation. `LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC` is only applicable when automatic budget allocation is enabled for the parent insertion order. This field must be set to `LINE_ITEM_BUDGET_ALLOCATION_TYPE_FIXED` for Demand Gen line items.", "enum": [ "LINE_ITEM_BUDGET_ALLOCATION_TYPE_UNSPECIFIED", "LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC", @@ -18909,23 +19339,6 @@ }, "type": "object" }, - "ListInventorySourcesResponse": { - "id": "ListInventorySourcesResponse", - "properties": { - "inventorySources": { - "description": "The list of inventory sources. This list will be absent if empty.", - "items": { - "$ref": "InventorySource" - }, - "type": "array" - }, - "nextPageToken": { - "description": "A token to retrieve the next page of results. Pass this value in the page_token field in the subsequent call to `ListInventorySources` method to retrieve the next page of results.", - "type": "string" - } - }, - "type": "object" - }, "ListInvoicesResponse": { "id": "ListInvoicesResponse", "properties": { @@ -19366,27 +19779,6 @@ }, "type": "object" }, - "Money": { - "description": "Represents an amount of money with its currency type.", - "id": "Money", - "properties": { - "currencyCode": { - "description": "The three-letter currency code defined in ISO 4217.", - "type": "string" - }, - "nanos": { - "description": "Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.", - "format": "int32", - "type": "integer" - }, - "units": { - "description": "The whole units of the amount. For example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", - "format": "int64", - "type": "string" - } - }, - "type": "object" - }, "NativeContentPositionAssignedTargetingOptionDetails": { "description": "Details for native content position assigned targeting option. This will be populated in the native_content_position_details field when targeting_type is `TARGETING_TYPE_NATIVE_CONTENT_POSITION`. Explicitly targeting all options is not supported. Remove all native content position targeting options to achieve this effect.", "id": "NativeContentPositionAssignedTargetingOptionDetails", @@ -19516,7 +19908,7 @@ "additionalProperties": { "type": "string" }, - "description": "The custom parameters to pass custom values to tracking URL template.", + "description": "The custom parameters and accompanying values to add to the tracking URL.", "type": "object" } }, @@ -20186,7 +20578,7 @@ "type": "string" }, "markupType": { - "description": "Required. The markup type of the partner revenue model.", + "description": "Required. The markup type of the partner revenue model. This field must be set to `PARTNER_REVENUE_MODEL_MARKUP_TYPE_TOTAL_MEDIA_COST_MARKUP` for Demand Gen line items.", "enum": [ "PARTNER_REVENUE_MODEL_MARKUP_TYPE_UNSPECIFIED", "PARTNER_REVENUE_MODEL_MARKUP_TYPE_CPM", @@ -20562,47 +20954,6 @@ }, "type": "object" }, - "RateDetails": { - "description": "The rate related settings of the inventory source.", - "id": "RateDetails", - "properties": { - "inventorySourceRateType": { - "description": "The rate type. Acceptable values are `INVENTORY_SOURCE_RATE_TYPE_CPM_FIXED`, `INVENTORY_SOURCE_RATE_TYPE_CPM_FLOOR`, and `INVENTORY_SOURCE_RATE_TYPE_CPD`.", - "enum": [ - "INVENTORY_SOURCE_RATE_TYPE_UNSPECIFIED", - "INVENTORY_SOURCE_RATE_TYPE_CPM_FIXED", - "INVENTORY_SOURCE_RATE_TYPE_CPM_FLOOR", - "INVENTORY_SOURCE_RATE_TYPE_CPD", - "INVENTORY_SOURCE_RATE_TYPE_CPH", - "INVENTORY_SOURCE_RATE_TYPE_FLAT" - ], - "enumDescriptions": [ - "The rate type is not specified or is unknown in this version.", - "The rate type is CPM (Fixed).", - "The rate type is CPM (Floor).", - "The rate type is Cost per Day.", - "The rate type is Cost per Hour.", - "The rate type is Flat." - ], - "type": "string" - }, - "minimumSpend": { - "$ref": "Money", - "description": "Output only. The amount that the buyer has committed to spending on the inventory source up front. Only applicable for guaranteed inventory sources.", - "readOnly": true - }, - "rate": { - "$ref": "Money", - "description": "The rate for the inventory source." - }, - "unitsPurchased": { - "description": "Required for guaranteed inventory sources. The number of impressions guaranteed by the seller.", - "format": "int64", - "type": "string" - } - }, - "type": "object" - }, "RegionalLocationListAssignedTargetingOptionDetails": { "description": "Targeting details for regional location list. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_REGIONAL_LOCATION_LIST`.", "id": "RegionalLocationListAssignedTargetingOptionDetails", @@ -20857,9 +21208,9 @@ true, true, true, - false, - false, - false, + true, + true, + true, false, false, false @@ -20952,9 +21303,9 @@ true, true, true, - false, - false, - false, + true, + true, + true, false, false, false @@ -21036,6 +21387,37 @@ }, "type": "object" }, + "SelectedInventories": { + "description": "The inventory control of the ad group.", + "id": "SelectedInventories", + "properties": { + "allowDiscover": { + "description": "Whether the ad group is opted-in to Discover inventory.", + "type": "boolean" + }, + "allowGmail": { + "description": "Whether the ad group is opted-in to Gmail inventory.", + "type": "boolean" + }, + "allowGoogleDisplayNetwork": { + "description": "Whether the ad group is opted-in to Google Display Network inventory.", + "type": "boolean" + }, + "allowYoutubeFeed": { + "description": "Whether the ad group is opted-in to YouTube in-feed inventory.", + "type": "boolean" + }, + "allowYoutubeShorts": { + "description": "Whether the ad group is opted-in to YouTube shorts inventory.", + "type": "boolean" + }, + "allowYoutubeStream": { + "description": "Whether the ad group is opted-in to YouTube in-stream inventory.", + "type": "boolean" + } + }, + "type": "object" + }, "SensitiveCategoryAssignedTargetingOptionDetails": { "description": "Targeting details for sensitive category. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION`.", "id": "SensitiveCategoryAssignedTargetingOptionDetails", @@ -21311,6 +21693,10 @@ "enableOptimizedTargeting": { "description": "Required. Whether to enable Optimized Targeting for the line item. Optimized targeting is not compatible with all bid strategies. Attempting to set this field to `true` for a line item using the BiddingStrategy field fixed_bid or one of the following combinations of BiddingStrategy fields and BiddingStrategyPerformanceGoalType will result in an error: maximize_auto_spend_bid: * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CIVA` * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_IVO_TEN` * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_AV_VIEWED` performance_goal_auto_bid: * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_VIEWABLE_CPM` This also applies if the line item inherits one of the above bid strategies from the parent insertion order. Bid strategies set at the insertion order-level will be inherited by their line items if the `InsertionOrder` budget field automationType is set to `INSERTION_ORDER_AUTOMATION_TYPE_BUDGET` or `INSERTION_ORDER_AUTOMATION_TYPE_BID_BUDGET`.", "type": "boolean" + }, + "excludeDemographicExpansion": { + "description": "Optional. Whether to exclude demographic expansion for Optimized Targeting. This field can only be set for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users.", + "type": "boolean" } }, "type": "object" @@ -21582,28 +21968,28 @@ "id": "ThirdPartyMeasurementConfigs", "properties": { "brandLiftVendorConfigs": { - "description": "Optional. The third-party vendors measuring brand lift. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_DYNATA` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_KANTAR_MILLWARD_BROWN` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` * `THIRD_PARTY_VENDOR_INTAGE` * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_MACROMILL`", + "description": "Optional. The third-party vendors measuring brand lift. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_DYNATA` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_INTAGE` * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_MACROMILL`", "items": { "$ref": "ThirdPartyVendorConfig" }, "type": "array" }, "brandSafetyVendorConfigs": { - "description": "Optional. The third-party vendors measuring brand safety. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_ZERF` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` * `THIRD_PARTY_VENDOR_ZEFR`", + "description": "Optional. The third-party vendors measuring brand safety. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_ZEFR` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE`", "items": { "$ref": "ThirdPartyVendorConfig" }, "type": "array" }, "reachVendorConfigs": { - "description": "Optional. The third-party vendors measuring reach. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` * `THIRD_PARTY_VENDOR_KANTAR_MILLWARD_BROWN` * `THIRD_PARTY_VENDOR_VIDEO_RESEARCH` * `THIRD_PARTY_VENDOR_MEDIA_SCOPE` * `THIRD_PARTY_VENDOR_AUDIENCE_PROJECT` * `THIRD_PARTY_VENDOR_VIDEO_AMP` * `THIRD_PARTY_VENDOR_ISPOT_TV`", + "description": "Optional. The third-party vendors measuring reach. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_VIDEO_RESEARCH` * `THIRD_PARTY_VENDOR_MEDIA_SCOPE` * `THIRD_PARTY_VENDOR_AUDIENCE_PROJECT` * `THIRD_PARTY_VENDOR_VIDEO_AMP` * `THIRD_PARTY_VENDOR_ISPOT_TV` * `THIRD_PARTY_VENDOR_GEMIUS`", "items": { "$ref": "ThirdPartyVendorConfig" }, "type": "array" }, "viewabilityVendorConfigs": { - "description": "Optional. The third-party vendors measuring viewability. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_MOAT` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_TELEMETRY` * `THIRD_PARTY_VENDOR_MEETRICS` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL`", + "description": "Optional. The third-party vendors measuring viewability. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_MOAT` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_TELEMETRY` * `THIRD_PARTY_VENDOR_MEETRICS`", "items": { "$ref": "ThirdPartyVendorConfig" }, @@ -21696,7 +22082,16 @@ "THIRD_PARTY_VENDOR_NIELSEN", "THIRD_PARTY_VENDOR_KANTAR", "THIRD_PARTY_VENDOR_DYNATA", - "THIRD_PARTY_VENDOR_TRANSUNION" + "THIRD_PARTY_VENDOR_TRANSUNION", + "THIRD_PARTY_VENDOR_ORIGIN", + "THIRD_PARTY_VENDOR_GEMIUS", + "THIRD_PARTY_VENDOR_MEDIA_SCOPE", + "THIRD_PARTY_VENDOR_AUDIENCE_PROJECT", + "THIRD_PARTY_VENDOR_VIDEO_AMP", + "THIRD_PARTY_VENDOR_ISPOT_TV", + "THIRD_PARTY_VENDOR_INTAGE", + "THIRD_PARTY_VENDOR_MACROMILL", + "THIRD_PARTY_VENDOR_VIDEO_RESEARCH" ], "enumDescriptions": [ "Unknown third-party vendor.", @@ -21710,7 +22105,16 @@ "Nielsen.", "Kantar.", "Dynata.", - "Transunion." + "Transunion.", + "Origin.", + "Gemius.", + "MediaScope.", + "Audience Project.", + "Video Amp.", + "Ispot TV.", + "Intage.", + "Macromill.", + "Video Research." ], "type": "string" } @@ -21736,23 +22140,6 @@ }, "type": "object" }, - "TimeRange": { - "description": "A time range.", - "id": "TimeRange", - "properties": { - "endTime": { - "description": "Required. The upper bound of a time range, inclusive.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "description": "Required. The lower bound of a time range, inclusive.", - "format": "google-datetime", - "type": "string" - } - }, - "type": "object" - }, "TimerEvent": { "description": "Timer event of the creative.", "id": "TimerEvent", @@ -21983,6 +22370,10 @@ "description": "Optional. Whether ads can serve as in-stream format.", "type": "boolean" }, + "allowNonSkippableInStream": { + "description": "Optional. Indicates whether ads can serve as non-skippable in-stream format.", + "type": "boolean" + }, "allowShorts": { "description": "Optional. Whether ads can serve as shorts format.", "type": "boolean" @@ -22121,7 +22512,7 @@ "additionalProperties": { "type": "string" }, - "description": "The custom parameters to pass custom values to tracking URL template.", + "description": "The custom parameters and accompanying values to add to the tracking URL.", "type": "object" }, "descriptions": { @@ -22155,7 +22546,7 @@ "type": "array" }, "longHeadlines": { - "description": "The list of lone headlines shown on the call-to-action banner.", + "description": "The list of long headlines shown on the call-to-action banner.", "items": { "type": "string" }, @@ -22353,7 +22744,7 @@ "type": "string" }, "value": { - "description": "The value used by the bidding strategy. When the bidding strategy is assigned at the line item level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_SHARE_OF_VOICE` When the bidding strategy is assigned at the ad group level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPV` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` If not using an applicable strategy, the value of this field will be 0.", + "description": "The value used by the bidding strategy. When the bidding strategy is assigned at the line item level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` When the bidding strategy is assigned at the ad group level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPV` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` If not using an applicable strategy, the value of this field will be 0.", "format": "int64", "type": "string" } @@ -22427,7 +22818,7 @@ "type": "string" }, "linkedMerchantId": { - "description": "Optional. The ID of the merchant which is linked to the line item for product feed.", + "description": "Optional. The ID of the Merchant Center account used to provide a product feed. This Merchant Center account must already be linked to the advertiser.", "format": "int64", "type": "string" }, @@ -22515,7 +22906,7 @@ "type": "string" }, "videoAssetId": { - "description": "Required. The YouTube video asset id. This is ad_asset.ad_asset_id.", + "description": "Required. The YouTube video asset id. This is the adAssetId of an AdAsset resource.", "format": "int64", "type": "string" } diff --git a/discovery/displayvideo-v4.json b/discovery/displayvideo-v4.json index ff2e1733b24..b44889da37b 100644 --- a/discovery/displayvideo-v4.json +++ b/discovery/displayvideo-v4.json @@ -561,6 +561,70 @@ }, "adGroupAds": { "methods": { + "create": { + "description": "Creates an ad group ad. This method is only supported for Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v4/advertisers/{advertisersId}/adGroupAds", + "httpMethod": "POST", + "id": "displayvideo.advertisers.adGroupAds.create", + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Output only. The unique ID of the advertiser the ad belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/advertisers/{+advertiserId}/adGroupAds", + "request": { + "$ref": "AdGroupAd" + }, + "response": { + "$ref": "AdGroupAd" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, + "delete": { + "description": "Deletes an ad group ad. This method is only supported for Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v4/advertisers/{advertisersId}/adGroupAds/{adGroupAdsId}", + "httpMethod": "DELETE", + "id": "displayvideo.advertisers.adGroupAds.delete", + "parameterOrder": [ + "advertiserId", + "adGroupAdId" + ], + "parameters": { + "adGroupAdId": { + "description": "Required. The ID of the ad to delete. Only Demand Gen ads are supported.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "advertiserId": { + "description": "Required. The ID of the advertiser the ad belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/advertisers/{+advertiserId}/adGroupAds/{+adGroupAdId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, "get": { "description": "Gets an ad group ad.", "flatPath": "v4/advertisers/{advertisersId}/adGroupAds/{adGroupAdsId}", @@ -642,11 +706,84 @@ "scopes": [ "https://www.googleapis.com/auth/display-video" ] + }, + "patch": { + "description": "Updates an ad group ad. This method is only supported for Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v4/advertisers/{advertisersId}/adGroupAds/{adGroupAdsId}", + "httpMethod": "PATCH", + "id": "displayvideo.advertisers.adGroupAds.patch", + "parameterOrder": [ + "advertiserId", + "adGroupAdId" + ], + "parameters": { + "adGroupAdId": { + "description": "Output only. The unique ID of the ad. Assigned by the system.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "advertiserId": { + "description": "Output only. The unique ID of the advertiser the ad belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The mask to control which fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v4/advertisers/{+advertiserId}/adGroupAds/{+adGroupAdId}", + "request": { + "$ref": "AdGroupAd" + }, + "response": { + "$ref": "AdGroupAd" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] } } }, "adGroups": { "methods": { + "bulkEditAssignedTargetingOptions": { + "description": "Bulk edits targeting options for multiple ad groups. The same set of delete and create requests will be applied to all specified ad groups. Specifically, the operation will delete the assigned targeting options provided in BulkEditAdGroupAssignedTargetingOptionsRequest.delete_requests from each ad group, and then create the assigned targeting options provided in BulkEditAdGroupAssignedTargetingOptionsRequest.create_requests. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v4/advertisers/{advertisersId}/adGroups:bulkEditAssignedTargetingOptions", + "httpMethod": "POST", + "id": "displayvideo.advertisers.adGroups.bulkEditAssignedTargetingOptions", + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Required. The ID of the advertiser the ad groups belong to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/advertisers/{+advertiserId}/adGroups:bulkEditAssignedTargetingOptions", + "request": { + "$ref": "BulkEditAdGroupAssignedTargetingOptionsRequest" + }, + "response": { + "$ref": "BulkEditAdGroupAssignedTargetingOptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, "bulkListAssignedTargetingOptions": { "description": "Lists assigned targeting options for multiple ad groups across targeting types. Inherited assigned targeting options are not included.", "flatPath": "v4/advertisers/{advertisersId}/adGroups:bulkListAssignedTargetingOptions", @@ -701,6 +838,70 @@ "https://www.googleapis.com/auth/display-video" ] }, + "create": { + "description": "Creates a new ad group. Returns the newly created ad group if successful. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v4/advertisers/{advertisersId}/adGroups", + "httpMethod": "POST", + "id": "displayvideo.advertisers.adGroups.create", + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Output only. The unique ID of the advertiser the ad group belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/advertisers/{+advertiserId}/adGroups", + "request": { + "$ref": "AdGroup" + }, + "response": { + "$ref": "AdGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, + "delete": { + "description": "Deletes a AdGroup. Returns error code `NOT_FOUND` if the ad group does not exist. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}", + "httpMethod": "DELETE", + "id": "displayvideo.advertisers.adGroups.delete", + "parameterOrder": [ + "advertiserId", + "adGroupId" + ], + "parameters": { + "adGroupId": { + "description": "Required. The ID of the ad group to delete.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "advertiserId": { + "description": "Required. The ID of the advertiser this ad group belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, "get": { "description": "Gets an ad group.", "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}", @@ -782,6 +983,50 @@ "scopes": [ "https://www.googleapis.com/auth/display-video" ] + }, + "patch": { + "description": "Updates an existing ad group. Returns the updated ad group if successful. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}", + "httpMethod": "PATCH", + "id": "displayvideo.advertisers.adGroups.patch", + "parameterOrder": [ + "advertiserId", + "adGroupId" + ], + "parameters": { + "adGroupId": { + "description": "Output only. The unique ID of the ad group. Assigned by the system.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "advertiserId": { + "description": "Output only. The unique ID of the advertiser the ad group belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The mask to control which fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}", + "request": { + "$ref": "AdGroup" + }, + "response": { + "$ref": "AdGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] } }, "resources": { @@ -789,20 +1034,19 @@ "resources": { "assignedTargetingOptions": { "methods": { - "get": { - "description": "Gets a single targeting option assigned to an ad group. Inherited assigned targeting options are not included.", - "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions/{assignedTargetingOptionsId}", - "httpMethod": "GET", - "id": "displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.get", + "create": { + "description": "Assigns a targeting option to an ad group. Returns the assigned targeting option if successful. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions", + "httpMethod": "POST", + "id": "displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.create", "parameterOrder": [ "advertiserId", "adGroupId", - "targetingType", - "assignedTargetingOptionId" + "targetingType" ], "parameters": { "adGroupId": { - "description": "Required. The ID of the ad group the assigned targeting option belongs to.", + "description": "Required. The ID of the ad group the assigned targeting option will belong to.", "format": "int64", "location": "path", "pattern": "^[^/]+$", @@ -817,15 +1061,8 @@ "required": true, "type": "string" }, - "assignedTargetingOptionId": { - "description": "Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested.", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -936,7 +1173,10 @@ "type": "string" } }, - "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}", + "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions", + "request": { + "$ref": "AssignedTargetingOption" + }, "response": { "$ref": "AssignedTargetingOption" }, @@ -944,19 +1184,20 @@ "https://www.googleapis.com/auth/display-video" ] }, - "list": { - "description": "Lists the targeting options assigned to an ad group. Inherited assigned targeting options are not included.", - "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions", - "httpMethod": "GET", - "id": "displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.list", + "delete": { + "description": "Deletes an assigned targeting option from an ad group. This method is only supported for Demand Gen ad groups with the AdGroupFormat `AD_GROUP_FORMAT_DEMAND_GEN`. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users.", + "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions/{assignedTargetingOptionsId}", + "httpMethod": "DELETE", + "id": "displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.delete", "parameterOrder": [ "advertiserId", "adGroupId", - "targetingType" + "targetingType", + "assignedTargetingOptionId" ], "parameters": { "adGroupId": { - "description": "Required. The ID of the ad group to list assigned targeting options for.", + "description": "Required. The ID of the ad group the assigned targeting option belongs to.", "format": "int64", "location": "path", "pattern": "^[^/]+$", @@ -971,29 +1212,15 @@ "required": true, "type": "string" }, - "filter": { - "description": "Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field} {operator} {value}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` Examples: * `AssignedTargetingOption` resources with ID 1 or 2: `assignedTargetingOptionId=\"1\" OR assignedTargetingOptionId=\"2\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "Optional. Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `assignedTargetingOptionId desc`.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "Optional. Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned.", - "location": "query", + "assignedTargetingOptionId": { + "description": "Required. The ID of the assigned targeting option to delete.", + "location": "path", + "pattern": "^[^/]+$", + "required": true, "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -1104,100 +1331,28 @@ "type": "string" } }, - "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions", - "response": { - "$ref": "ListAdGroupAssignedTargetingOptionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ] - } - } - } - } - }, - "youtubeAssetTypes": { - "resources": { - "youtubeAssetAssociations": { - "methods": { - "create": { - "description": "Creates a new association between the identified resource and a YouTube asset. Returns the newly-created association. *Warning:* This method is only available to an informed subset of users.", - "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}/youtubeAssetTypes/{youtubeAssetTypesId}/youtubeAssetAssociations", - "httpMethod": "POST", - "id": "displayvideo.advertisers.adGroups.youtubeAssetTypes.youtubeAssetAssociations.create", - "parameterOrder": [ - "advertiserId", - "adGroupId", - "youtubeAssetType" - ], - "parameters": { - "adGroupId": { - "description": "The ID of an ad group.", - "format": "int64", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - }, - "advertiserId": { - "description": "Required. The ID of the advertiser that the linked entity belongs to.", - "format": "int64", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - }, - "linkedEntity.lineItemId": { - "description": "The ID of a line item.", - "format": "int64", - "location": "query", - "type": "string" - }, - "youtubeAssetType": { - "description": "Required. The type of YouTube asset associated with the resource.", - "enum": [ - "YOUTUBE_ASSET_TYPE_UNSPECIFIED", - "YOUTUBE_ASSET_TYPE_LOCATION", - "YOUTUBE_ASSET_TYPE_AFFILIATE_LOCATION", - "YOUTUBE_ASSET_TYPE_SITELINK" - ], - "enumDescriptions": [ - "YouTube asset type is not specified or is unknown in this version.", - "Location asset.", - "Affiliate location asset.", - "Sitelink asset." - ], - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/youtubeAssetTypes/{+youtubeAssetType}/youtubeAssetAssociations", - "request": { - "$ref": "YoutubeAssetAssociation" - }, + "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}", "response": { - "$ref": "YoutubeAssetAssociation" + "$ref": "Empty" }, "scopes": [ "https://www.googleapis.com/auth/display-video" ] }, - "delete": { - "description": "Deletes an existing association between the identified resource and a YouTube asset. *Warning:* This method is only available to an informed subset of users.", - "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}/youtubeAssetTypes/{youtubeAssetTypesId}/youtubeAssetAssociations/{youtubeAssetAssociationsId}", - "httpMethod": "DELETE", - "id": "displayvideo.advertisers.adGroups.youtubeAssetTypes.youtubeAssetAssociations.delete", + "get": { + "description": "Gets a single targeting option assigned to an ad group. Inherited assigned targeting options are not included.", + "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions/{assignedTargetingOptionsId}", + "httpMethod": "GET", + "id": "displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.get", "parameterOrder": [ "advertiserId", "adGroupId", - "youtubeAssetType", - "youtubeAssetAssociationId" + "targetingType", + "assignedTargetingOptionId" ], "parameters": { "adGroupId": { - "description": "The ID of an ad group.", + "description": "Required. The ID of the ad group the assigned targeting option belongs to.", "format": "int64", "location": "path", "pattern": "^[^/]+$", @@ -1205,40 +1360,125 @@ "type": "string" }, "advertiserId": { - "description": "Required. The ID of the advertiser that the linked entity belongs to.", + "description": "Required. The ID of the advertiser the ad group belongs to.", "format": "int64", "location": "path", "pattern": "^[^/]+$", "required": true, "type": "string" }, - "linkedEntity.lineItemId": { - "description": "The ID of a line item.", - "format": "int64", - "location": "query", - "type": "string" - }, - "youtubeAssetAssociationId": { - "description": "Required. The ID of the YouTube asset in the association. For `YOUTUBE_ASSET_TYPE_LOCATION` and `YOUTUBE_ASSET_TYPE_AFFILIATE_LOCATION` associations: This should be the ID of the asset set linked, or 0 if the location_asset_filter or affiliate_location_asset_filter is `DISABLED`. For `YOUTUBE_ASSET_TYPE_SITELINK` associations: This should be the ID of the sitelink asset linked.", - "format": "int64", + "assignedTargetingOptionId": { + "description": "Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested.", "location": "path", "pattern": "^[^/]+$", "required": true, "type": "string" }, - "youtubeAssetType": { - "description": "Required. The type of YouTube asset associated with the resource.", + "targetingType": { + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ - "YOUTUBE_ASSET_TYPE_UNSPECIFIED", - "YOUTUBE_ASSET_TYPE_LOCATION", - "YOUTUBE_ASSET_TYPE_AFFILIATE_LOCATION", - "YOUTUBE_ASSET_TYPE_SITELINK" + "TARGETING_TYPE_UNSPECIFIED", + "TARGETING_TYPE_CHANNEL", + "TARGETING_TYPE_APP_CATEGORY", + "TARGETING_TYPE_APP", + "TARGETING_TYPE_URL", + "TARGETING_TYPE_DAY_AND_TIME", + "TARGETING_TYPE_AGE_RANGE", + "TARGETING_TYPE_REGIONAL_LOCATION_LIST", + "TARGETING_TYPE_PROXIMITY_LOCATION_LIST", + "TARGETING_TYPE_GENDER", + "TARGETING_TYPE_VIDEO_PLAYER_SIZE", + "TARGETING_TYPE_USER_REWARDED_CONTENT", + "TARGETING_TYPE_PARENTAL_STATUS", + "TARGETING_TYPE_CONTENT_INSTREAM_POSITION", + "TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION", + "TARGETING_TYPE_DEVICE_TYPE", + "TARGETING_TYPE_AUDIENCE_GROUP", + "TARGETING_TYPE_BROWSER", + "TARGETING_TYPE_HOUSEHOLD_INCOME", + "TARGETING_TYPE_ON_SCREEN_POSITION", + "TARGETING_TYPE_THIRD_PARTY_VERIFIER", + "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", + "TARGETING_TYPE_ENVIRONMENT", + "TARGETING_TYPE_CARRIER_AND_ISP", + "TARGETING_TYPE_OPERATING_SYSTEM", + "TARGETING_TYPE_DEVICE_MAKE_MODEL", + "TARGETING_TYPE_KEYWORD", + "TARGETING_TYPE_NEGATIVE_KEYWORD_LIST", + "TARGETING_TYPE_VIEWABILITY", + "TARGETING_TYPE_CATEGORY", + "TARGETING_TYPE_INVENTORY_SOURCE", + "TARGETING_TYPE_LANGUAGE", + "TARGETING_TYPE_AUTHORIZED_SELLER_STATUS", + "TARGETING_TYPE_GEO_REGION", + "TARGETING_TYPE_INVENTORY_SOURCE_GROUP", + "TARGETING_TYPE_EXCHANGE", + "TARGETING_TYPE_SUB_EXCHANGE", + "TARGETING_TYPE_POI", + "TARGETING_TYPE_BUSINESS_CHAIN", + "TARGETING_TYPE_CONTENT_DURATION", + "TARGETING_TYPE_CONTENT_STREAM_TYPE", + "TARGETING_TYPE_NATIVE_CONTENT_POSITION", + "TARGETING_TYPE_OMID", + "TARGETING_TYPE_AUDIO_CONTENT_TYPE", + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION", + "TARGETING_TYPE_CONTENT_THEME_EXCLUSION" ], "enumDescriptions": [ - "YouTube asset type is not specified or is unknown in this version.", - "Location asset.", - "Affiliate location asset.", - "Sitelink asset." + "Default value when type is not specified or is unknown in this version.", + "Target a channel (a custom group of related websites or apps).", + "Target an app category (for example, education or puzzle games).", + "Target a specific app (for example, Angry Birds).", + "Target a specific url (for example, quora.com).", + "Target ads during a chosen time period on a specific day.", + "Target ads to a specific age range (for example, 18-24).", + "Target ads to the specified regions on a regional location list.", + "Target ads to the specified points of interest on a proximity location list.", + "Target ads to a specific gender (for example, female or male).", + "Target a specific video player size for video ads.", + "Target user rewarded content for video ads.", + "Target ads to a specific parental status (for example, parent or not a parent).", + "Target video or audio ads in a specific content instream position (for example, pre-roll, mid-roll, or post-roll).", + "Target ads in a specific content outstream position.", + "Target ads to a specific device type (for example, tablet or connected TV).", + "Target ads to an audience or groups of audiences. Singleton field, at most one can exist on a single Lineitem at a time.", + "Target ads to specific web browsers (for example, Chrome).", + "Target ads to a specific household income range (for example, top 10%).", + "Target ads in a specific on screen position.", + "Filter web sites through third party verification (for example, IAS or DoubleVerify).", + "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", + "Target ads to a specific environment (for example, web or app).", + "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", + "Target ads to a specific operating system (for example, macOS).", + "Target ads to a specific device make or model (for example, Roku or Samsung).", + "Target ads to a specific keyword (for example, dog or retriever).", + "Target ads to a specific negative keyword list.", + "Target ads to a specific viewability (for example, 80% viewable).", + "Target ads to a specific content category (for example, arts & entertainment).", + "Purchase impressions from specific deals and auction packages.", + "Target ads to a specific language (for example, English or Japanese).", + "Target ads to ads.txt authorized sellers. If no targeting option of this type is assigned, the resource uses the \"Authorized Direct Sellers and Resellers\" option by default.", + "Target ads to a specific regional location (for example, a city or state).", + "Purchase impressions from a group of deals and auction packages.", + "Purchase impressions from specific exchanges.", + "Purchase impressions from specific sub-exchanges.", + "Target ads around a specific point of interest, such as a notable building, a street address, or latitude/longitude coordinates.", + "Target ads around locations of a business chain within a specific geo region.", + "Target ads to a specific video content duration.", + "Target ads to a specific video content stream type.", + "Target ads to a specific native content position.", + "Target ads in an Open Measurement enabled inventory.", + "Target ads to a specific audio content type.", + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video. Targeting of this type cannot be created or updated using the API. Although this targeting is inherited by child resources, **inherited targeting of this type will not be retrieveable**.", + "Target ads to a specific YouTube channel. Targeting of this type cannot be created or updated using the API. Although this targeting is inherited by child resources, **inherited targeting of this type will not be retrieveable**.", + "Target ads to a serve it in a certain position of a session. Only supported for Ad Group resources under YouTube Programmatic Reservation line items. Targeting of this type cannot be created or updated using the API.", + "Filter website content by content themes (for example, religion). Only supported for Advertiser resources. Targeting of this type cannot be created or updated using the API. This targeting is only inherited by child YouTube and Demand Gen line item resources." ], "location": "path", "pattern": "^[^/]+$", @@ -1246,27 +1486,27 @@ "type": "string" } }, - "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/youtubeAssetTypes/{+youtubeAssetType}/youtubeAssetAssociations/{+youtubeAssetAssociationId}", + "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}", "response": { - "$ref": "Empty" + "$ref": "AssignedTargetingOption" }, "scopes": [ "https://www.googleapis.com/auth/display-video" ] }, "list": { - "description": "Lists the YouTube asset associations linked to the given resource.", - "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}/youtubeAssetTypes/{youtubeAssetTypesId}/youtubeAssetAssociations", + "description": "Lists the targeting options assigned to an ad group. Inherited assigned targeting options are not included.", + "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions", "httpMethod": "GET", - "id": "displayvideo.advertisers.adGroups.youtubeAssetTypes.youtubeAssetAssociations.list", + "id": "displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.list", "parameterOrder": [ "advertiserId", "adGroupId", - "youtubeAssetType" + "targetingType" ], "parameters": { "adGroupId": { - "description": "The ID of an ad group.", + "description": "Required. The ID of the ad group to list assigned targeting options for.", "format": "int64", "location": "path", "pattern": "^[^/]+$", @@ -1274,37 +1514,197 @@ "type": "string" }, "advertiserId": { - "description": "Required. The ID of the advertiser that the linked entity belongs to.", + "description": "Required. The ID of the advertiser the ad group belongs to.", "format": "int64", "location": "path", "pattern": "^[^/]+$", "required": true, "type": "string" }, - "linkedEntity.lineItemId": { - "description": "The ID of a line item.", - "format": "int64", + "filter": { + "description": "Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field} {operator} {value}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` Examples: * `AssignedTargetingOption` resources with ID 1 or 2: `assignedTargetingOptionId=\"1\" OR assignedTargetingOptionId=\"2\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", "location": "query", "type": "string" }, "orderBy": { - "description": "Optional. Field by which to sort the list. The only acceptable values are: * `linkedYoutubeAsset.locationAssetFilter.assetSetId`, * `linkedYoutubeAsset.affiliateLocationAssetFilter.assetSetId`, * `linkedYoutubeAsset.sitelinkAsset.assetId` The default sorting order is ascending. To specify descending order for a field, a suffix \" desc\" should be added to the field name. Example: `linkedYoutubeAsset.sitelinkAsset.assetId desc`.", + "description": "Optional. Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `assignedTargetingOptionId desc`.", "location": "query", "type": "string" }, "pageSize": { - "description": "Optional. Requested page size. Must be between `1` and `10000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", + "description": "Optional. Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListYoutubeAssetAssociations` method. If not specified, the first page of results will be returned.", + "description": "Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned.", + "location": "query", + "type": "string" + }, + "targetingType": { + "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "enum": [ + "TARGETING_TYPE_UNSPECIFIED", + "TARGETING_TYPE_CHANNEL", + "TARGETING_TYPE_APP_CATEGORY", + "TARGETING_TYPE_APP", + "TARGETING_TYPE_URL", + "TARGETING_TYPE_DAY_AND_TIME", + "TARGETING_TYPE_AGE_RANGE", + "TARGETING_TYPE_REGIONAL_LOCATION_LIST", + "TARGETING_TYPE_PROXIMITY_LOCATION_LIST", + "TARGETING_TYPE_GENDER", + "TARGETING_TYPE_VIDEO_PLAYER_SIZE", + "TARGETING_TYPE_USER_REWARDED_CONTENT", + "TARGETING_TYPE_PARENTAL_STATUS", + "TARGETING_TYPE_CONTENT_INSTREAM_POSITION", + "TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION", + "TARGETING_TYPE_DEVICE_TYPE", + "TARGETING_TYPE_AUDIENCE_GROUP", + "TARGETING_TYPE_BROWSER", + "TARGETING_TYPE_HOUSEHOLD_INCOME", + "TARGETING_TYPE_ON_SCREEN_POSITION", + "TARGETING_TYPE_THIRD_PARTY_VERIFIER", + "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", + "TARGETING_TYPE_ENVIRONMENT", + "TARGETING_TYPE_CARRIER_AND_ISP", + "TARGETING_TYPE_OPERATING_SYSTEM", + "TARGETING_TYPE_DEVICE_MAKE_MODEL", + "TARGETING_TYPE_KEYWORD", + "TARGETING_TYPE_NEGATIVE_KEYWORD_LIST", + "TARGETING_TYPE_VIEWABILITY", + "TARGETING_TYPE_CATEGORY", + "TARGETING_TYPE_INVENTORY_SOURCE", + "TARGETING_TYPE_LANGUAGE", + "TARGETING_TYPE_AUTHORIZED_SELLER_STATUS", + "TARGETING_TYPE_GEO_REGION", + "TARGETING_TYPE_INVENTORY_SOURCE_GROUP", + "TARGETING_TYPE_EXCHANGE", + "TARGETING_TYPE_SUB_EXCHANGE", + "TARGETING_TYPE_POI", + "TARGETING_TYPE_BUSINESS_CHAIN", + "TARGETING_TYPE_CONTENT_DURATION", + "TARGETING_TYPE_CONTENT_STREAM_TYPE", + "TARGETING_TYPE_NATIVE_CONTENT_POSITION", + "TARGETING_TYPE_OMID", + "TARGETING_TYPE_AUDIO_CONTENT_TYPE", + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION", + "TARGETING_TYPE_CONTENT_THEME_EXCLUSION" + ], + "enumDescriptions": [ + "Default value when type is not specified or is unknown in this version.", + "Target a channel (a custom group of related websites or apps).", + "Target an app category (for example, education or puzzle games).", + "Target a specific app (for example, Angry Birds).", + "Target a specific url (for example, quora.com).", + "Target ads during a chosen time period on a specific day.", + "Target ads to a specific age range (for example, 18-24).", + "Target ads to the specified regions on a regional location list.", + "Target ads to the specified points of interest on a proximity location list.", + "Target ads to a specific gender (for example, female or male).", + "Target a specific video player size for video ads.", + "Target user rewarded content for video ads.", + "Target ads to a specific parental status (for example, parent or not a parent).", + "Target video or audio ads in a specific content instream position (for example, pre-roll, mid-roll, or post-roll).", + "Target ads in a specific content outstream position.", + "Target ads to a specific device type (for example, tablet or connected TV).", + "Target ads to an audience or groups of audiences. Singleton field, at most one can exist on a single Lineitem at a time.", + "Target ads to specific web browsers (for example, Chrome).", + "Target ads to a specific household income range (for example, top 10%).", + "Target ads in a specific on screen position.", + "Filter web sites through third party verification (for example, IAS or DoubleVerify).", + "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", + "Target ads to a specific environment (for example, web or app).", + "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", + "Target ads to a specific operating system (for example, macOS).", + "Target ads to a specific device make or model (for example, Roku or Samsung).", + "Target ads to a specific keyword (for example, dog or retriever).", + "Target ads to a specific negative keyword list.", + "Target ads to a specific viewability (for example, 80% viewable).", + "Target ads to a specific content category (for example, arts & entertainment).", + "Purchase impressions from specific deals and auction packages.", + "Target ads to a specific language (for example, English or Japanese).", + "Target ads to ads.txt authorized sellers. If no targeting option of this type is assigned, the resource uses the \"Authorized Direct Sellers and Resellers\" option by default.", + "Target ads to a specific regional location (for example, a city or state).", + "Purchase impressions from a group of deals and auction packages.", + "Purchase impressions from specific exchanges.", + "Purchase impressions from specific sub-exchanges.", + "Target ads around a specific point of interest, such as a notable building, a street address, or latitude/longitude coordinates.", + "Target ads around locations of a business chain within a specific geo region.", + "Target ads to a specific video content duration.", + "Target ads to a specific video content stream type.", + "Target ads to a specific native content position.", + "Target ads in an Open Measurement enabled inventory.", + "Target ads to a specific audio content type.", + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video. Targeting of this type cannot be created or updated using the API. Although this targeting is inherited by child resources, **inherited targeting of this type will not be retrieveable**.", + "Target ads to a specific YouTube channel. Targeting of this type cannot be created or updated using the API. Although this targeting is inherited by child resources, **inherited targeting of this type will not be retrieveable**.", + "Target ads to a serve it in a certain position of a session. Only supported for Ad Group resources under YouTube Programmatic Reservation line items. Targeting of this type cannot be created or updated using the API.", + "Filter website content by content themes (for example, religion). Only supported for Advertiser resources. Targeting of this type cannot be created or updated using the API. This targeting is only inherited by child YouTube and Demand Gen line item resources." + ], + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions", + "response": { + "$ref": "ListAdGroupAssignedTargetingOptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + } + } + } + } + }, + "youtubeAssetTypes": { + "resources": { + "youtubeAssetAssociations": { + "methods": { + "create": { + "description": "Creates a new association between the identified resource and a YouTube asset. Returns the newly-created association. *Warning:* This method is only available to an informed subset of users.", + "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}/youtubeAssetTypes/{youtubeAssetTypesId}/youtubeAssetAssociations", + "httpMethod": "POST", + "id": "displayvideo.advertisers.adGroups.youtubeAssetTypes.youtubeAssetAssociations.create", + "parameterOrder": [ + "advertiserId", + "adGroupId", + "youtubeAssetType" + ], + "parameters": { + "adGroupId": { + "description": "The ID of an ad group.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "advertiserId": { + "description": "Required. The ID of the advertiser that the linked entity belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "linkedEntity.lineItemId": { + "description": "The ID of a line item.", + "format": "int64", "location": "query", "type": "string" }, "youtubeAssetType": { - "description": "Required. The type of YouTube asset being associated with the resource.", + "description": "Required. The type of YouTube asset associated with the resource.", "enum": [ "YOUTUBE_ASSET_TYPE_UNSPECIFIED", "YOUTUBE_ASSET_TYPE_LOCATION", @@ -1324,92 +1724,242 @@ } }, "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/youtubeAssetTypes/{+youtubeAssetType}/youtubeAssetAssociations", + "request": { + "$ref": "YoutubeAssetAssociation" + }, "response": { - "$ref": "ListYoutubeAssetAssociationsResponse" + "$ref": "YoutubeAssetAssociation" }, "scopes": [ "https://www.googleapis.com/auth/display-video" ] - } - } - } - } - } - } - }, - "assets": { - "methods": { - "upload": { - "description": "Uploads an asset. Returns the ID of the newly uploaded asset if successful. The asset file size should be no more than 10 MB for images, 200 MB for ZIP files, and 1 GB for videos. Must be used within the [multipart media upload process](/display-video/api/guides/how-tos/upload#multipart). Examples using provided client libraries can be found in our [Creating Creatives guide](/display-video/api/guides/creating-creatives/overview#upload_an_asset).", - "flatPath": "v4/advertisers/{advertisersId}/assets", - "httpMethod": "POST", - "id": "displayvideo.advertisers.assets.upload", - "mediaUpload": { - "accept": [ - "*/*" - ], - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/v4/advertisers/{+advertiserId}/assets" - } - } - }, - "parameterOrder": [ - "advertiserId" - ], - "parameters": { - "advertiserId": { - "description": "Required. The ID of the advertiser this asset belongs to.", - "format": "int64", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v4/advertisers/{+advertiserId}/assets", - "request": { - "$ref": "CreateAssetRequest" - }, - "response": { - "$ref": "CreateAssetResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/display-video" - ], - "supportsMediaUpload": true - } - } - }, - "campaigns": { - "methods": { - "create": { - "description": "Creates a new campaign. Returns the newly created campaign if successful.", - "flatPath": "v4/advertisers/{advertisersId}/campaigns", - "httpMethod": "POST", - "id": "displayvideo.advertisers.campaigns.create", - "parameterOrder": [ - "advertiserId" - ], - "parameters": { - "advertiserId": { - "description": "Output only. The unique ID of the advertiser the campaign belongs to.", - "format": "int64", - "location": "path", - "pattern": "^[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v4/advertisers/{+advertiserId}/campaigns", - "request": { - "$ref": "Campaign" - }, - "response": { - "$ref": "Campaign" - }, - "scopes": [ + }, + "delete": { + "description": "Deletes an existing association between the identified resource and a YouTube asset. *Warning:* This method is only available to an informed subset of users.", + "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}/youtubeAssetTypes/{youtubeAssetTypesId}/youtubeAssetAssociations/{youtubeAssetAssociationsId}", + "httpMethod": "DELETE", + "id": "displayvideo.advertisers.adGroups.youtubeAssetTypes.youtubeAssetAssociations.delete", + "parameterOrder": [ + "advertiserId", + "adGroupId", + "youtubeAssetType", + "youtubeAssetAssociationId" + ], + "parameters": { + "adGroupId": { + "description": "The ID of an ad group.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "advertiserId": { + "description": "Required. The ID of the advertiser that the linked entity belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "linkedEntity.lineItemId": { + "description": "The ID of a line item.", + "format": "int64", + "location": "query", + "type": "string" + }, + "youtubeAssetAssociationId": { + "description": "Required. The ID of the YouTube asset in the association. For `YOUTUBE_ASSET_TYPE_LOCATION` and `YOUTUBE_ASSET_TYPE_AFFILIATE_LOCATION` associations: This should be the ID of the asset set linked, or 0 if the location_asset_filter or affiliate_location_asset_filter is `DISABLED`. For `YOUTUBE_ASSET_TYPE_SITELINK` associations: This should be the ID of the sitelink asset linked.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "youtubeAssetType": { + "description": "Required. The type of YouTube asset associated with the resource.", + "enum": [ + "YOUTUBE_ASSET_TYPE_UNSPECIFIED", + "YOUTUBE_ASSET_TYPE_LOCATION", + "YOUTUBE_ASSET_TYPE_AFFILIATE_LOCATION", + "YOUTUBE_ASSET_TYPE_SITELINK" + ], + "enumDescriptions": [ + "YouTube asset type is not specified or is unknown in this version.", + "Location asset.", + "Affiliate location asset.", + "Sitelink asset." + ], + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/youtubeAssetTypes/{+youtubeAssetType}/youtubeAssetAssociations/{+youtubeAssetAssociationId}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, + "list": { + "description": "Lists the YouTube asset associations linked to the given resource.", + "flatPath": "v4/advertisers/{advertisersId}/adGroups/{adGroupsId}/youtubeAssetTypes/{youtubeAssetTypesId}/youtubeAssetAssociations", + "httpMethod": "GET", + "id": "displayvideo.advertisers.adGroups.youtubeAssetTypes.youtubeAssetAssociations.list", + "parameterOrder": [ + "advertiserId", + "adGroupId", + "youtubeAssetType" + ], + "parameters": { + "adGroupId": { + "description": "The ID of an ad group.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "advertiserId": { + "description": "Required. The ID of the advertiser that the linked entity belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "linkedEntity.lineItemId": { + "description": "The ID of a line item.", + "format": "int64", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Field by which to sort the list. The only acceptable values are: * `linkedYoutubeAsset.locationAssetFilter.assetSetId`, * `linkedYoutubeAsset.affiliateLocationAssetFilter.assetSetId`, * `linkedYoutubeAsset.sitelinkAsset.assetId` The default sorting order is ascending. To specify descending order for a field, a suffix \" desc\" should be added to the field name. Example: `linkedYoutubeAsset.sitelinkAsset.assetId desc`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Must be between `1` and `10000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListYoutubeAssetAssociations` method. If not specified, the first page of results will be returned.", + "location": "query", + "type": "string" + }, + "youtubeAssetType": { + "description": "Required. The type of YouTube asset being associated with the resource.", + "enum": [ + "YOUTUBE_ASSET_TYPE_UNSPECIFIED", + "YOUTUBE_ASSET_TYPE_LOCATION", + "YOUTUBE_ASSET_TYPE_AFFILIATE_LOCATION", + "YOUTUBE_ASSET_TYPE_SITELINK" + ], + "enumDescriptions": [ + "YouTube asset type is not specified or is unknown in this version.", + "Location asset.", + "Affiliate location asset.", + "Sitelink asset." + ], + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/youtubeAssetTypes/{+youtubeAssetType}/youtubeAssetAssociations", + "response": { + "$ref": "ListYoutubeAssetAssociationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + } + } + } + } + } + } + }, + "assets": { + "methods": { + "upload": { + "description": "Uploads an asset. Returns the ID of the newly uploaded asset if successful. The asset file size should be no more than 10 MB for images, 200 MB for ZIP files, and 1 GB for videos. Must be used within the [multipart media upload process](/display-video/api/guides/how-tos/upload#multipart). Examples using provided client libraries can be found in our [Creating Creatives guide](/display-video/api/guides/creating-creatives/overview#upload_an_asset).", + "flatPath": "v4/advertisers/{advertisersId}/assets", + "httpMethod": "POST", + "id": "displayvideo.advertisers.assets.upload", + "mediaUpload": { + "accept": [ + "*/*" + ], + "protocols": { + "simple": { + "multipart": true, + "path": "/upload/v4/advertisers/{+advertiserId}/assets" + } + } + }, + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Required. The ID of the advertiser this asset belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/advertisers/{+advertiserId}/assets", + "request": { + "$ref": "CreateAssetRequest" + }, + "response": { + "$ref": "CreateAssetResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ], + "supportsMediaUpload": true + } + } + }, + "campaigns": { + "methods": { + "create": { + "description": "Creates a new campaign. Returns the newly created campaign if successful.", + "flatPath": "v4/advertisers/{advertisersId}/campaigns", + "httpMethod": "POST", + "id": "displayvideo.advertisers.campaigns.create", + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Output only. The unique ID of the advertiser the campaign belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/advertisers/{+advertiserId}/campaigns", + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ "https://www.googleapis.com/auth/display-video", "https://www.googleapis.com/auth/display-video-mediaplanning" ] @@ -3167,7 +3717,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3335,7 +3885,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", + "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -4433,7 +4983,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -4582,7 +5132,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -8813,7 +9363,7 @@ } } }, - "revision": "20260224", + "revision": "20260421", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActiveViewVideoViewabilityMetricConfig": { @@ -8992,7 +9542,7 @@ "id": "AdGroup", "properties": { "adGroupFormat": { - "description": "Required. The format of the ads in the ad group.", + "description": "Required. Immutable. The format of the ads in the ad group.", "enum": [ "AD_GROUP_FORMAT_UNSPECIFIED", "AD_GROUP_FORMAT_IN_STREAM", @@ -9002,7 +9552,8 @@ "AD_GROUP_FORMAT_AUDIO", "AD_GROUP_FORMAT_RESPONSIVE", "AD_GROUP_FORMAT_REACH", - "AD_GROUP_FORMAT_MASTHEAD" + "AD_GROUP_FORMAT_MASTHEAD", + "AD_GROUP_FORMAT_DEMAND_GEN" ], "enumDescriptions": [ "Format value is not specified or is unknown in this version.", @@ -9013,7 +9564,8 @@ "Non-skippable in-stream audio ads.", "Responsive ads.", "[Effective reach ad groups] (https://support.google.com/displayvideo/answer/9173684), including in-stream and bumper ads.", - "Masthead Ad that is surfaced on the top slot on the YouTube homepage." + "Masthead Ad that is surfaced on the top slot on the YouTube homepage.", + "Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This enum value is only available to allowlisted users." ], "type": "string" }, @@ -9023,6 +9575,10 @@ "readOnly": true, "type": "string" }, + "adGroupInventoryControl": { + "$ref": "AdGroupInventoryControl", + "description": "Optional. Required for Demand Gen ad groups. Specifies the inventory control of the ad group." + }, "advertiserId": { "description": "Output only. The unique ID of the advertiser the ad group belongs to.", "format": "int64", @@ -9058,7 +9614,7 @@ "type": "string" }, "lineItemId": { - "description": "Required. The unique ID of the line item that the ad group belongs to.", + "description": "Required. Immutable. The unique ID of the line item that the ad group belongs to.", "format": "int64", "type": "string" }, @@ -9089,7 +9645,7 @@ "type": "string" }, "adGroupId": { - "description": "Required. The unique ID of the ad group that the ad belongs to.", + "description": "Required. Immutable. The unique ID of the ad group that the ad belongs to.", "format": "int64", "type": "string" }, @@ -9122,6 +9678,26 @@ "description": "Output only. Details of a [non-skippable short video ad](//support.google.com/displayvideo/answer/6274216), equal to or less than 6 seconds, used for reach.", "readOnly": true }, + "dcmTrackingInfo": { + "$ref": "DcmTrackingInfo", + "description": "Optional. The DCM tracking ad info. Only valid for Demand Gen ads. To remove the DCM tracking ad info, please leave this field empty. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, + "demandGenCarouselAd": { + "$ref": "DemandGenCarouselAd", + "description": "Details of a [Demand Gen carousel ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#CarouselAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, + "demandGenImageAd": { + "$ref": "DemandGenImageAd", + "description": "Details of a [Demand Gen image ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#ImageAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, + "demandGenProductAd": { + "$ref": "DemandGenProductAd", + "description": "Details of a [Demand Gen product ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#Product-onlyAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, + "demandGenVideoAd": { + "$ref": "DemandGenVideoAd", + "description": "Details of a [Demand Gen video ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#VideoAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, "displayName": { "description": "Required. The display name of the ad. Must be UTF-8 encoded with a maximum size of 255 bytes.", "type": "string" @@ -9200,6 +9776,31 @@ }, "type": "object" }, + "AdGroupInventoryControl": { + "description": "The inventory control of the ad group.", + "id": "AdGroupInventoryControl", + "properties": { + "adGroupInventoryStrategy": { + "description": "The inventory strategy.", + "enum": [ + "AD_GROUP_INVENTORY_STRATEGY_UNSPECIFIED", + "AD_GROUP_INVENTORY_STRATEGY_ALL_GOOGLE_AND_DISPLAY_NETWORK_INVENTORY", + "AD_GROUP_INVENTORY_STRATEGY_ALL_GOOGLE_INVENTORY" + ], + "enumDescriptions": [ + "Not specified or unknown.", + "The ad group is opted-in to all Google and Display Network inventory.", + "The ad group is opted-in to all Google inventory." + ], + "type": "string" + }, + "selectedInventories": { + "$ref": "SelectedInventories", + "description": "The selected inventories." + } + }, + "type": "object" + }, "AdPolicy": { "description": "A single ad policy associated with an ad group ad.", "id": "AdPolicy", @@ -11863,6 +12464,10 @@ "description": "Settings that control the bid strategy. Bid strategy determines the bid price.", "id": "BiddingStrategy", "properties": { + "demandGenBid": { + "$ref": "DemandGenBiddingStrategy", + "description": "A bid strategy used by Demand Gen resources. It can only be used for a Demand Gen line item or ad group entity." + }, "fixedBid": { "$ref": "FixedBidStrategy", "description": "A strategy that uses a fixed bid price." @@ -11972,19 +12577,81 @@ }, "type": "object" }, - "BulkEditAdvertiserAssignedTargetingOptionsRequest": { - "description": "Request message for BulkEditAdvertiserAssignedTargetingOptions.", - "id": "BulkEditAdvertiserAssignedTargetingOptionsRequest", + "BulkEditAdGroupAssignedTargetingOptionsRequest": { + "description": "Request message for BulkEditAdGroupAssignedTargetingOptions.", + "id": "BulkEditAdGroupAssignedTargetingOptionsRequest", "properties": { + "adGroupIds": { + "description": "Required. The IDs of the ad groups the assigned targeting options will belong to. A maximum of 25 ad group IDs can be specified.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, "createRequests": { - "description": "The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE`", + "description": "Optional. The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "items": { "$ref": "CreateAssignedTargetingOptionsRequest" }, "type": "array" }, "deleteRequests": { - "description": "The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE`", + "description": "Optional. The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "items": { + "$ref": "DeleteAssignedTargetingOptionsRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "BulkEditAdGroupAssignedTargetingOptionsResponse": { + "description": "Response message for BulkEditAssignedTargetingOptions.", + "id": "BulkEditAdGroupAssignedTargetingOptionsResponse", + "properties": { + "errors": { + "description": "Output only. The error information for each ad group that failed to update.", + "items": { + "$ref": "Status" + }, + "readOnly": true, + "type": "array" + }, + "failedAdGroupIds": { + "description": "Output only. The IDs of the ad groups which failed to update.", + "items": { + "format": "int64", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "updatedAdGroupIds": { + "description": "Output only. The IDs of the ad groups which were successfully updated.", + "items": { + "format": "int64", + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "BulkEditAdvertiserAssignedTargetingOptionsRequest": { + "description": "Request message for BulkEditAdvertiserAssignedTargetingOptions.", + "id": "BulkEditAdvertiserAssignedTargetingOptionsRequest", + "properties": { + "createRequests": { + "description": "The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "items": { + "$ref": "CreateAssignedTargetingOptionsRequest" + }, + "type": "array" + }, + "deleteRequests": { + "description": "The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", "items": { "$ref": "DeleteAssignedTargetingOptionsRequest" }, @@ -12523,7 +13190,8 @@ "GEO_REGION_TYPE_QUARTER", "GEO_REGION_TYPE_DIVISION", "GEO_REGION_TYPE_COMMUNE", - "GEO_REGION_TYPE_COLLOQUIAL_AREA" + "GEO_REGION_TYPE_COLLOQUIAL_AREA", + "GEO_REGION_TYPE_POST_TOWN" ], "enumDescriptions": [ "The geographic region type is unknown.", @@ -12563,7 +13231,8 @@ "The geographic region is a quarter.", "The geographic region is a division.", "The geographic region is a commune.", - "The geographic region is a colloquial area." + "The geographic region is a colloquial area.", + "The geographic region is a post town." ], "readOnly": true, "type": "string" @@ -12754,6 +13423,41 @@ }, "type": "object" }, + "CarouselCard": { + "description": "Details for a Demand Gen carousel card.", + "id": "CarouselCard", + "properties": { + "callToAction": { + "description": "Required. The text on the call-to-action button shown on the card. Must use 10 characters or less.", + "type": "string" + }, + "finalMobileUrl": { + "description": "Optional. The URL address of the webpage that people reach after they click the card on a mobile device.", + "type": "string" + }, + "finalUrl": { + "description": "Required. The URL address of the webpage that people reach after they click the card.", + "type": "string" + }, + "headline": { + "description": "Required. The headline of the card.", + "type": "string" + }, + "marketingImage": { + "$ref": "ImageAsset", + "description": "Optional. The marketing image shown on the card." + }, + "portraitMarketingImage": { + "$ref": "ImageAsset", + "description": "Optional. The portrait marketing image shown on the card." + }, + "squareMarketingImage": { + "$ref": "ImageAsset", + "description": "Optional. The square marketing image shown on the card." + } + }, + "type": "object" + }, "CarrierAndIspAssignedTargetingOptionDetails": { "description": "Details for assigned carrier and ISP targeting option. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_CARRIER_AND_ISP`.", "id": "CarrierAndIspAssignedTargetingOptionDetails", @@ -13545,6 +14249,11 @@ "description": "The percentage of post-view conversions to count, in millis (1/1000 of a percent). Must be between 0 and 100000 inclusive. For example, to track 50% of the post-click conversions, set a value of 50000.", "format": "int64", "type": "string" + }, + "primaryAttributionModelId": { + "description": "Optional. The attribution model to use for conversion measurement. This attribution model will determine how conversions are counted. The Primary model can be set by you for a floodlight config or group. More details [here](https://support.google.com/displayvideo/answer/7409983). Only applicable to Demand Gen line items. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users.", + "format": "int64", + "type": "string" } }, "type": "object" @@ -13782,9 +14491,9 @@ true, true, true, - false, - false, - false, + true, + true, + true, false, false, false @@ -14543,346 +15252,812 @@ }, "type": "object" }, - "CustomLabel": { - "description": "The key and value of a custom label.", - "id": "CustomLabel", + "CustomLabel": { + "description": "The key and value of a custom label.", + "id": "CustomLabel", + "properties": { + "key": { + "description": "The key of the label.", + "enum": [ + "CUSTOM_LABEL_KEY_UNSPECIFIED", + "CUSTOM_LABEL_KEY_0", + "CUSTOM_LABEL_KEY_1", + "CUSTOM_LABEL_KEY_2", + "CUSTOM_LABEL_KEY_3", + "CUSTOM_LABEL_KEY_4" + ], + "enumDescriptions": [ + "Not specified or unknown.", + "Key index 0.", + "Key index 1.", + "Key index 2.", + "Key index 3.", + "Key index 4." + ], + "type": "string" + }, + "value": { + "description": "The value of the label.", + "type": "string" + } + }, + "type": "object" + }, + "CustomList": { + "description": "Describes a custom list entity, such as a custom affinity or custom intent audience list.", + "id": "CustomList", + "properties": { + "customListId": { + "description": "Output only. The unique ID of the custom list. Assigned by the system.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Output only. The display name of the custom list. .", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Output only. The resource name of the custom list.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CustomListGroup": { + "description": "Details of custom list group. All custom list targeting settings are logically ‘OR’ of each other.", + "id": "CustomListGroup", + "properties": { + "settings": { + "description": "Required. All custom list targeting settings in custom list group. Repeated settings with the same id will be ignored.", + "items": { + "$ref": "CustomListTargetingSetting" + }, + "type": "array" + } + }, + "type": "object" + }, + "CustomListTargetingSetting": { + "description": "Details of custom list targeting setting.", + "id": "CustomListTargetingSetting", + "properties": { + "customListId": { + "description": "Required. Custom id of custom list targeting setting. This id is custom_list_id.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Date": { + "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp", + "id": "Date", + "properties": { + "day": { + "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + "format": "int32", + "type": "integer" + }, + "month": { + "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + "format": "int32", + "type": "integer" + }, + "year": { + "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DateRange": { + "description": "A date range.", + "id": "DateRange", + "properties": { + "endDate": { + "$ref": "Date", + "description": "The upper bound of the date range, inclusive. Must specify a positive value for `year`, `month`, and `day`." + }, + "startDate": { + "$ref": "Date", + "description": "The lower bound of the date range, inclusive. Must specify a positive value for `year`, `month`, and `day`." + } + }, + "type": "object" + }, + "DayAndTime": { + "description": "Representation of time defined by day of the week and hour of the day.", + "id": "DayAndTime", + "properties": { + "dayOfWeek": { + "description": "Required. Day of the week.", + "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" + }, + "hourOfDay": { + "description": "Required. Hour of the day.", + "format": "int32", + "type": "integer" + }, + "timeZoneResolution": { + "description": "Required. The mechanism used to determine the relevant timezone.", + "enum": [ + "TIME_ZONE_RESOLUTION_UNSPECIFIED", + "TIME_ZONE_RESOLUTION_END_USER", + "TIME_ZONE_RESOLUTION_ADVERTISER" + ], + "enumDescriptions": [ + "Time zone resolution is either unspecific or unknown.", + "Times are resolved in the time zone of the user that saw the ad.", + "Times are resolved in the time zone of the advertiser that served the ad." + ], + "type": "string" + } + }, + "type": "object" + }, + "DayAndTimeAssignedTargetingOptionDetails": { + "description": "Representation of a segment of time defined on a specific day of the week and with a start and end time. The time represented by `start_hour` must be before the time represented by `end_hour`.", + "id": "DayAndTimeAssignedTargetingOptionDetails", + "properties": { + "dayOfWeek": { + "description": "Required. The day of the week for this day and time targeting setting.", + "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" + }, + "endHour": { + "description": "Required. The end hour for day and time targeting. Must be between 1 (1 hour after start of day) and 24 (end of day).", + "format": "int32", + "type": "integer" + }, + "startHour": { + "description": "Required. The start hour for day and time targeting. Must be between 0 (start of day) and 23 (1 hour before end of day).", + "format": "int32", + "type": "integer" + }, + "timeZoneResolution": { + "description": "Required. The mechanism used to determine which timezone to use for this day and time targeting setting. For Demand Gen line items, this field is always `TIME_ZONE_RESOLUTION_ADVERTISER`.", + "enum": [ + "TIME_ZONE_RESOLUTION_UNSPECIFIED", + "TIME_ZONE_RESOLUTION_END_USER", + "TIME_ZONE_RESOLUTION_ADVERTISER" + ], + "enumDescriptions": [ + "Time zone resolution is either unspecific or unknown.", + "Times are resolved in the time zone of the user that saw the ad.", + "Times are resolved in the time zone of the advertiser that served the ad." + ], + "type": "string" + } + }, + "type": "object" + }, + "DcmTrackingInfo": { + "description": "Details on the DCM tracking.", + "id": "DcmTrackingInfo", + "properties": { + "creativeId": { + "description": "Required. The DCM creative id.", + "format": "int64", + "type": "string" + }, + "placementId": { + "description": "Required. The DCM placement id.", + "format": "int64", + "type": "string" + }, + "trackingAdId": { + "description": "Required. The DCM tracking ad id.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "DeleteAssignedTargetingOptionsRequest": { + "description": "A request listing which assigned targeting options of a given targeting type should be deleted.", + "id": "DeleteAssignedTargetingOptionsRequest", + "properties": { + "assignedTargetingOptionIds": { + "description": "Required. The assigned targeting option IDs to delete.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetingType": { + "description": "Required. Identifies the type of this assigned targeting option.", + "enum": [ + "TARGETING_TYPE_UNSPECIFIED", + "TARGETING_TYPE_CHANNEL", + "TARGETING_TYPE_APP_CATEGORY", + "TARGETING_TYPE_APP", + "TARGETING_TYPE_URL", + "TARGETING_TYPE_DAY_AND_TIME", + "TARGETING_TYPE_AGE_RANGE", + "TARGETING_TYPE_REGIONAL_LOCATION_LIST", + "TARGETING_TYPE_PROXIMITY_LOCATION_LIST", + "TARGETING_TYPE_GENDER", + "TARGETING_TYPE_VIDEO_PLAYER_SIZE", + "TARGETING_TYPE_USER_REWARDED_CONTENT", + "TARGETING_TYPE_PARENTAL_STATUS", + "TARGETING_TYPE_CONTENT_INSTREAM_POSITION", + "TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION", + "TARGETING_TYPE_DEVICE_TYPE", + "TARGETING_TYPE_AUDIENCE_GROUP", + "TARGETING_TYPE_BROWSER", + "TARGETING_TYPE_HOUSEHOLD_INCOME", + "TARGETING_TYPE_ON_SCREEN_POSITION", + "TARGETING_TYPE_THIRD_PARTY_VERIFIER", + "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", + "TARGETING_TYPE_ENVIRONMENT", + "TARGETING_TYPE_CARRIER_AND_ISP", + "TARGETING_TYPE_OPERATING_SYSTEM", + "TARGETING_TYPE_DEVICE_MAKE_MODEL", + "TARGETING_TYPE_KEYWORD", + "TARGETING_TYPE_NEGATIVE_KEYWORD_LIST", + "TARGETING_TYPE_VIEWABILITY", + "TARGETING_TYPE_CATEGORY", + "TARGETING_TYPE_INVENTORY_SOURCE", + "TARGETING_TYPE_LANGUAGE", + "TARGETING_TYPE_AUTHORIZED_SELLER_STATUS", + "TARGETING_TYPE_GEO_REGION", + "TARGETING_TYPE_INVENTORY_SOURCE_GROUP", + "TARGETING_TYPE_EXCHANGE", + "TARGETING_TYPE_SUB_EXCHANGE", + "TARGETING_TYPE_POI", + "TARGETING_TYPE_BUSINESS_CHAIN", + "TARGETING_TYPE_CONTENT_DURATION", + "TARGETING_TYPE_CONTENT_STREAM_TYPE", + "TARGETING_TYPE_NATIVE_CONTENT_POSITION", + "TARGETING_TYPE_OMID", + "TARGETING_TYPE_AUDIO_CONTENT_TYPE", + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION", + "TARGETING_TYPE_CONTENT_THEME_EXCLUSION" + ], + "enumDescriptions": [ + "Default value when type is not specified or is unknown in this version.", + "Target a channel (a custom group of related websites or apps).", + "Target an app category (for example, education or puzzle games).", + "Target a specific app (for example, Angry Birds).", + "Target a specific url (for example, quora.com).", + "Target ads during a chosen time period on a specific day.", + "Target ads to a specific age range (for example, 18-24).", + "Target ads to the specified regions on a regional location list.", + "Target ads to the specified points of interest on a proximity location list.", + "Target ads to a specific gender (for example, female or male).", + "Target a specific video player size for video ads.", + "Target user rewarded content for video ads.", + "Target ads to a specific parental status (for example, parent or not a parent).", + "Target video or audio ads in a specific content instream position (for example, pre-roll, mid-roll, or post-roll).", + "Target ads in a specific content outstream position.", + "Target ads to a specific device type (for example, tablet or connected TV).", + "Target ads to an audience or groups of audiences. Singleton field, at most one can exist on a single Lineitem at a time.", + "Target ads to specific web browsers (for example, Chrome).", + "Target ads to a specific household income range (for example, top 10%).", + "Target ads in a specific on screen position.", + "Filter web sites through third party verification (for example, IAS or DoubleVerify).", + "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", + "Target ads to a specific environment (for example, web or app).", + "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", + "Target ads to a specific operating system (for example, macOS).", + "Target ads to a specific device make or model (for example, Roku or Samsung).", + "Target ads to a specific keyword (for example, dog or retriever).", + "Target ads to a specific negative keyword list.", + "Target ads to a specific viewability (for example, 80% viewable).", + "Target ads to a specific content category (for example, arts & entertainment).", + "Purchase impressions from specific deals and auction packages.", + "Target ads to a specific language (for example, English or Japanese).", + "Target ads to ads.txt authorized sellers. If no targeting option of this type is assigned, the resource uses the \"Authorized Direct Sellers and Resellers\" option by default.", + "Target ads to a specific regional location (for example, a city or state).", + "Purchase impressions from a group of deals and auction packages.", + "Purchase impressions from specific exchanges.", + "Purchase impressions from specific sub-exchanges.", + "Target ads around a specific point of interest, such as a notable building, a street address, or latitude/longitude coordinates.", + "Target ads around locations of a business chain within a specific geo region.", + "Target ads to a specific video content duration.", + "Target ads to a specific video content stream type.", + "Target ads to a specific native content position.", + "Target ads in an Open Measurement enabled inventory.", + "Target ads to a specific audio content type.", + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video. Targeting of this type cannot be created or updated using the API. Although this targeting is inherited by child resources, **inherited targeting of this type will not be retrieveable**.", + "Target ads to a specific YouTube channel. Targeting of this type cannot be created or updated using the API. Although this targeting is inherited by child resources, **inherited targeting of this type will not be retrieveable**.", + "Target ads to a serve it in a certain position of a session. Only supported for Ad Group resources under YouTube Programmatic Reservation line items. Targeting of this type cannot be created or updated using the API.", + "Filter website content by content themes (for example, religion). Only supported for Advertiser resources. Targeting of this type cannot be created or updated using the API. This targeting is only inherited by child YouTube and Demand Gen line item resources." + ], + "type": "string" + } + }, + "type": "object" + }, + "DemandGenBiddingStrategy": { + "description": "Settings that control the bid strategy for Demand Gen resources.", + "id": "DemandGenBiddingStrategy", "properties": { - "key": { - "description": "The key of the label.", + "effectiveBiddingValue": { + "description": "Output only. The value effectively used by the bidding strategy. This field will be the same as value if set. If value is not set and the strategy is assigned to an ad group, this field will be inherited from the line item's bidding strategy. If type is not `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA` or `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS`, this field will be 0.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "effectiveBiddingValueSource": { + "description": "Output only. Source of the effective bidding value.", "enum": [ - "CUSTOM_LABEL_KEY_UNSPECIFIED", - "CUSTOM_LABEL_KEY_0", - "CUSTOM_LABEL_KEY_1", - "CUSTOM_LABEL_KEY_2", - "CUSTOM_LABEL_KEY_3", - "CUSTOM_LABEL_KEY_4" + "BIDDING_SOURCE_UNSPECIFIED", + "BIDDING_SOURCE_LINE_ITEM", + "BIDDING_SOURCE_AD_GROUP" ], "enumDescriptions": [ - "Not specified or unknown.", - "Key index 0.", - "Key index 1.", - "Key index 2.", - "Key index 3.", - "Key index 4." + "Bidding source is not specified or unknown.", + "Bidding value is inherited from the line item.", + "Bidding value is defined in the ad group." + ], + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Optional. The type of the bidding strategy. This can only be set when assigned to a line item. Ad groups will inherit this value from their line item.", + "enum": [ + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_UNSPECIFIED", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_MAXIMIZE_CONVERSIONS", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_MAXIMIZE_CONVERSION_VALUE", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_MAXIMIZE_CLICKS", + "DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPC" + ], + "enumDescriptions": [ + "Type is not specified or unknown.", + "A bidding strategy that automatically optimizes conversions per dollar.", + "A bidding strategy that automatically maximizes revenue while averaging a specific target Return On Ad Spend (ROAS).", + "A bidding strategy that automatically maximizes number of conversions", + "A bidding strategy that automatically maximizes revenue while spending your budget.", + "A bidding strategy that automatically maximizes clicks within a given budget.", + "A bidding strategy that automatically optimizes cost per click." ], "type": "string" }, "value": { - "description": "The value of the label.", + "description": "Optional. The value used by the bidding strategy. This can be set when assigned to line items or ad groups. This field is only applicable for the following strategy types: * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPC` * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS` Value of this field is in micros of the advertiser's currency or ROAS value. For example, 1000000 represents 1.0 standard units of the currency or 100% ROAS value. If not using an applicable strategy, the value of this field will be 0.", + "format": "int64", "type": "string" } }, "type": "object" }, - "CustomList": { - "description": "Describes a custom list entity, such as a custom affinity or custom intent audience list.", - "id": "CustomList", + "DemandGenCarouselAd": { + "description": "Details for a Demand Gen carousel ad.", + "id": "DemandGenCarouselAd", "properties": { - "customListId": { - "description": "Output only. The unique ID of the custom list. Assigned by the system.", - "format": "int64", - "readOnly": true, + "businessName": { + "description": "Required. The business name shown on the ad.", "type": "string" }, - "displayName": { - "description": "Output only. The display name of the custom list. .", - "readOnly": true, + "cards": { + "description": "Required. The list of cards shown on the ad.", + "items": { + "$ref": "CarouselCard" + }, + "type": "array" + }, + "customParameters": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The custom parameters and accompanying values to add to the tracking URL.", + "type": "object" + }, + "description": { + "description": "Required. The description of the ad.", "type": "string" }, - "name": { - "description": "Output only. The resource name of the custom list.", + "finalUrl": { + "description": "Required. The URL address of the webpage that people reach after they click the ad.", + "type": "string" + }, + "finalUrlSuffix": { + "description": "Optional. The suffix to append to landing page URLs.", + "type": "string" + }, + "headline": { + "description": "Required. The headline of the ad.", + "type": "string" + }, + "logo": { + "$ref": "ImageAsset", + "description": "Required. The logo image used by this ad." + }, + "trackingUrl": { + "description": "Output only. The URL address loaded in the background for tracking purposes.", "readOnly": true, "type": "string" + }, + "userSpecifiedTrackingUrl": { + "description": "Optional. The tracking URL specified by the user manually.", + "type": "string" } }, "type": "object" }, - "CustomListGroup": { - "description": "Details of custom list group. All custom list targeting settings are logically ‘OR’ of each other.", - "id": "CustomListGroup", + "DemandGenImageAd": { + "description": "Details for a Demand Gen image ad.", + "id": "DemandGenImageAd", "properties": { - "settings": { - "description": "Required. All custom list targeting settings in custom list group. Repeated settings with the same id will be ignored.", + "businessName": { + "description": "Required. The business name shown on the ad.", + "type": "string" + }, + "callToAction": { + "description": "Required. The call-to-action button shown on the ad.", + "type": "string" + }, + "customParameters": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The custom parameters and accompanying values to add to the tracking URL.", + "type": "object" + }, + "descriptions": { + "description": "Required. The list of descriptions shown on the ad.", "items": { - "$ref": "CustomListTargetingSetting" + "type": "string" }, "type": "array" - } - }, - "type": "object" - }, - "CustomListTargetingSetting": { - "description": "Details of custom list targeting setting.", - "id": "CustomListTargetingSetting", - "properties": { - "customListId": { - "description": "Required. Custom id of custom list targeting setting. This id is custom_list_id.", - "format": "int64", + }, + "finalMobileUrl": { + "description": "Optional. The URL address of the webpage that people reach after they click the ad on a mobile device.", "type": "string" - } - }, - "type": "object" - }, - "Date": { - "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp", - "id": "Date", - "properties": { - "day": { - "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", - "format": "int32", - "type": "integer" }, - "month": { - "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", - "format": "int32", - "type": "integer" + "finalUrl": { + "description": "Required. The URL address of the webpage that people reach after they click the ad.", + "type": "string" }, - "year": { - "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "DateRange": { - "description": "A date range.", - "id": "DateRange", - "properties": { - "endDate": { - "$ref": "Date", - "description": "The upper bound of the date range, inclusive. Must specify a positive value for `year`, `month`, and `day`." + "finalUrlSuffix": { + "description": "Optional. The suffix to append to landing page URLs.", + "type": "string" }, - "startDate": { - "$ref": "Date", - "description": "The lower bound of the date range, inclusive. Must specify a positive value for `year`, `month`, and `day`." + "headlines": { + "description": "Required. The list of headlines shown on the ad.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logoImages": { + "description": "The list of logo images shown on the ad.", + "items": { + "$ref": "ImageAsset" + }, + "type": "array" + }, + "marketingImages": { + "description": "The list of marketing images shown on the ad.", + "items": { + "$ref": "ImageAsset" + }, + "type": "array" + }, + "portraitMarketingImages": { + "description": "The list of portrait marketing images shown on the ad.", + "items": { + "$ref": "ImageAsset" + }, + "type": "array" + }, + "squareMarketingImages": { + "description": "The list of square marketing images shown on the ad.", + "items": { + "$ref": "ImageAsset" + }, + "type": "array" + }, + "trackingUrl": { + "description": "Output only. The URL address loaded in the background for tracking purposes.", + "readOnly": true, + "type": "string" + }, + "userSpecifiedTrackingUrl": { + "description": "Optional. The tracking URL specified by the user manually.", + "type": "string" } }, "type": "object" }, - "DayAndTime": { - "description": "Representation of time defined by day of the week and hour of the day.", - "id": "DayAndTime", + "DemandGenProductAd": { + "description": "Details for a Demand Gen product ad.", + "id": "DemandGenProductAd", "properties": { - "dayOfWeek": { - "description": "Required. Day of the week.", + "businessName": { + "description": "Required. The business name shown on the ad.", + "type": "string" + }, + "callToAction": { + "description": "Required. The call-to-action button shown on the ad. The supported values are: * `AUTOMATED` * `APPLY_NOW` * `BOOK_NOW` * `CONTACT_US` * `DOWNLOAD` * `GET_QUOTE` * `LEARN_MORE` * `SHOP_NOW` * `SIGN_UP` * `SUBSCRIBE`", "enum": [ - "DAY_OF_WEEK_UNSPECIFIED", - "MONDAY", - "TUESDAY", - "WEDNESDAY", - "THURSDAY", - "FRIDAY", - "SATURDAY", - "SUNDAY" + "CALL_TO_ACTION_UNSPECIFIED", + "AUTOMATED", + "LEARN_MORE", + "GET_QUOTE", + "APPLY_NOW", + "SIGN_UP", + "CONTACT_US", + "SUBSCRIBE", + "DOWNLOAD", + "BOOK_NOW", + "SHOP_NOW", + "BUY_NOW", + "DONATE_NOW", + "ORDER_NOW", + "PLAY_NOW", + "SEE_MORE", + "START_NOW", + "VISIT_SITE", + "WATCH_NOW" ], "enumDescriptions": [ - "The day of the week is unspecified.", - "Monday", - "Tuesday", - "Wednesday", - "Thursday", - "Friday", - "Saturday", - "Sunday" + "Not specified or unknown.", + "Automated.", + "Learn more.", + "Get quote.", + "Apply now.", + "Sign up.", + "Contact us.", + "Subscribe.", + "Download.", + "Book now.", + "Shop now.", + "Buy now.", + "Donate now.", + "Order now.", + "Play now.", + "See more.", + "Start now.", + "Visit site.", + "Watch now." ], "type": "string" }, - "hourOfDay": { - "description": "Required. Hour of the day.", - "format": "int32", - "type": "integer" + "customParameters": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The custom parameters and accompanying values to add to the tracking URL.", + "type": "object" }, - "timeZoneResolution": { - "description": "Required. The mechanism used to determine the relevant timezone.", - "enum": [ - "TIME_ZONE_RESOLUTION_UNSPECIFIED", - "TIME_ZONE_RESOLUTION_END_USER", - "TIME_ZONE_RESOLUTION_ADVERTISER" - ], - "enumDescriptions": [ - "Time zone resolution is either unspecific or unknown.", - "Times are resolved in the time zone of the user that saw the ad.", - "Times are resolved in the time zone of the advertiser that served the ad." - ], + "description": { + "description": "Required. The description of the ad.", + "type": "string" + }, + "displayUrlBreadcrumb1": { + "description": "Optional. The first piece after the domain in the display URL.", + "type": "string" + }, + "displayUrlBreadcrumb2": { + "description": "Optional. The second piece after the domain in the display URL.", + "type": "string" + }, + "finalUrl": { + "description": "Required. The URL address of the webpage that people reach after they click the ad.", + "type": "string" + }, + "finalUrlSuffix": { + "description": "Optional. The suffix to append to landing page URLs.", + "type": "string" + }, + "headline": { + "description": "Required. The headline of the ad.", + "type": "string" + }, + "logo": { + "$ref": "ImageAsset", + "description": "Required. The logo image used by this ad." + }, + "trackingUrl": { + "description": "Output only. The URL address loaded in the background for tracking purposes.", + "readOnly": true, + "type": "string" + }, + "userSpecifiedTrackingUrl": { + "description": "Optional. The tracking URL specified by the user manually.", + "type": "string" + } + }, + "type": "object" + }, + "DemandGenSettings": { + "description": "Settings for Demand Gen line items.", + "id": "DemandGenSettings", + "properties": { + "geoLanguageTargetingEnabled": { + "description": "Optional. Immutable. Whether location and language targeting can be set at the line item level. Otherwise, relevant targeting types must be assigned directly to ad groups.", + "type": "boolean" + }, + "linkedMerchantId": { + "description": "Optional. The ID of the Merchant Center account used to provide a product feed. This Merchant Center account must already be linked to the advertiser.", + "format": "int64", "type": "string" + }, + "thirdPartyMeasurementConfigs": { + "$ref": "ThirdPartyMeasurementConfigs", + "description": "Optional. The third party measurement settings for the Demand Gen line item." } }, "type": "object" }, - "DayAndTimeAssignedTargetingOptionDetails": { - "description": "Representation of a segment of time defined on a specific day of the week and with a start and end time. The time represented by `start_hour` must be before the time represented by `end_hour`.", - "id": "DayAndTimeAssignedTargetingOptionDetails", + "DemandGenVideoAd": { + "description": "Details for a Demand Gen video ad.", + "id": "DemandGenVideoAd", "properties": { - "dayOfWeek": { - "description": "Required. The day of the week for this day and time targeting setting.", + "businessName": { + "description": "Required. The business name shown on the ad.", + "type": "string" + }, + "callToAction": { + "description": "Required. The call-to-action button shown on the ad. The supported values are: * `AUTOMATED` * `LEARN_MORE` * `GET_QUOTE` * `APPLY_NOW` * `SIGN_UP` * `CONTACT_US` * `SUBSCRIBE` * `DOWNLOAD` * `BOOK_NOW` * `SHOP_NOW` * `BUY_NOW` * `DONATE_NOW` * `ORDER_NOW` * `PLAY_NOW` * `SEE_MORE` * `START_NOW` * `VISIT_SITE` * `WATCH_NOW`", "enum": [ - "DAY_OF_WEEK_UNSPECIFIED", - "MONDAY", - "TUESDAY", - "WEDNESDAY", - "THURSDAY", - "FRIDAY", - "SATURDAY", - "SUNDAY" + "CALL_TO_ACTION_UNSPECIFIED", + "AUTOMATED", + "LEARN_MORE", + "GET_QUOTE", + "APPLY_NOW", + "SIGN_UP", + "CONTACT_US", + "SUBSCRIBE", + "DOWNLOAD", + "BOOK_NOW", + "SHOP_NOW", + "BUY_NOW", + "DONATE_NOW", + "ORDER_NOW", + "PLAY_NOW", + "SEE_MORE", + "START_NOW", + "VISIT_SITE", + "WATCH_NOW" ], "enumDescriptions": [ - "The day of the week is unspecified.", - "Monday", - "Tuesday", - "Wednesday", - "Thursday", - "Friday", - "Saturday", - "Sunday" + "Not specified or unknown.", + "Automated.", + "Learn more.", + "Get quote.", + "Apply now.", + "Sign up.", + "Contact us.", + "Subscribe.", + "Download.", + "Book now.", + "Shop now.", + "Buy now.", + "Donate now.", + "Order now.", + "Play now.", + "See more.", + "Start now.", + "Visit site.", + "Watch now." ], "type": "string" }, - "endHour": { - "description": "Required. The end hour for day and time targeting. Must be between 1 (1 hour after start of day) and 24 (end of day).", - "format": "int32", - "type": "integer" + "companionBanner": { + "$ref": "ImageAsset", + "description": "Optional. The companion banner used by this ad." }, - "startHour": { - "description": "Required. The start hour for day and time targeting. Must be between 0 (start of day) and 23 (1 hour before end of day).", - "format": "int32", - "type": "integer" + "customParameters": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The custom parameters and accompanying values to add to the tracking URL.", + "type": "object" }, - "timeZoneResolution": { - "description": "Required. The mechanism used to determine which timezone to use for this day and time targeting setting.", - "enum": [ - "TIME_ZONE_RESOLUTION_UNSPECIFIED", - "TIME_ZONE_RESOLUTION_END_USER", - "TIME_ZONE_RESOLUTION_ADVERTISER" - ], - "enumDescriptions": [ - "Time zone resolution is either unspecific or unknown.", - "Times are resolved in the time zone of the user that saw the ad.", - "Times are resolved in the time zone of the advertiser that served the ad." - ], + "descriptions": { + "description": "Required. The list of descriptions shown on the ad.", + "items": { + "type": "string" + }, + "type": "array" + }, + "displayUrlBreadcrumb1": { + "description": "Optional. The first piece after the domain in the display URL.", "type": "string" - } - }, - "type": "object" - }, - "DeleteAssignedTargetingOptionsRequest": { - "description": "A request listing which assigned targeting options of a given targeting type should be deleted.", - "id": "DeleteAssignedTargetingOptionsRequest", - "properties": { - "assignedTargetingOptionIds": { - "description": "Required. The assigned targeting option IDs to delete.", + }, + "displayUrlBreadcrumb2": { + "description": "Optional. The second piece after the domain in the display URL.", + "type": "string" + }, + "finalMobileUrl": { + "description": "Optional. The URL address of the webpage that people reach after they click the ad on a mobile device.", + "type": "string" + }, + "finalUrl": { + "description": "Required. The URL address of the webpage that people reach after they click the ad.", + "type": "string" + }, + "finalUrlSuffix": { + "description": "Optional. The suffix to append to landing page URLs.", + "type": "string" + }, + "headlines": { + "description": "Required. The list of headlines shown on the ad.", "items": { "type": "string" }, "type": "array" }, - "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option.", - "enum": [ - "TARGETING_TYPE_UNSPECIFIED", - "TARGETING_TYPE_CHANNEL", - "TARGETING_TYPE_APP_CATEGORY", - "TARGETING_TYPE_APP", - "TARGETING_TYPE_URL", - "TARGETING_TYPE_DAY_AND_TIME", - "TARGETING_TYPE_AGE_RANGE", - "TARGETING_TYPE_REGIONAL_LOCATION_LIST", - "TARGETING_TYPE_PROXIMITY_LOCATION_LIST", - "TARGETING_TYPE_GENDER", - "TARGETING_TYPE_VIDEO_PLAYER_SIZE", - "TARGETING_TYPE_USER_REWARDED_CONTENT", - "TARGETING_TYPE_PARENTAL_STATUS", - "TARGETING_TYPE_CONTENT_INSTREAM_POSITION", - "TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION", - "TARGETING_TYPE_DEVICE_TYPE", - "TARGETING_TYPE_AUDIENCE_GROUP", - "TARGETING_TYPE_BROWSER", - "TARGETING_TYPE_HOUSEHOLD_INCOME", - "TARGETING_TYPE_ON_SCREEN_POSITION", - "TARGETING_TYPE_THIRD_PARTY_VERIFIER", - "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", - "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", - "TARGETING_TYPE_ENVIRONMENT", - "TARGETING_TYPE_CARRIER_AND_ISP", - "TARGETING_TYPE_OPERATING_SYSTEM", - "TARGETING_TYPE_DEVICE_MAKE_MODEL", - "TARGETING_TYPE_KEYWORD", - "TARGETING_TYPE_NEGATIVE_KEYWORD_LIST", - "TARGETING_TYPE_VIEWABILITY", - "TARGETING_TYPE_CATEGORY", - "TARGETING_TYPE_INVENTORY_SOURCE", - "TARGETING_TYPE_LANGUAGE", - "TARGETING_TYPE_AUTHORIZED_SELLER_STATUS", - "TARGETING_TYPE_GEO_REGION", - "TARGETING_TYPE_INVENTORY_SOURCE_GROUP", - "TARGETING_TYPE_EXCHANGE", - "TARGETING_TYPE_SUB_EXCHANGE", - "TARGETING_TYPE_POI", - "TARGETING_TYPE_BUSINESS_CHAIN", - "TARGETING_TYPE_CONTENT_DURATION", - "TARGETING_TYPE_CONTENT_STREAM_TYPE", - "TARGETING_TYPE_NATIVE_CONTENT_POSITION", - "TARGETING_TYPE_OMID", - "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE", - "TARGETING_TYPE_YOUTUBE_VIDEO", - "TARGETING_TYPE_YOUTUBE_CHANNEL", - "TARGETING_TYPE_SESSION_POSITION", - "TARGETING_TYPE_CONTENT_THEME_EXCLUSION" - ], - "enumDescriptions": [ - "Default value when type is not specified or is unknown in this version.", - "Target a channel (a custom group of related websites or apps).", - "Target an app category (for example, education or puzzle games).", - "Target a specific app (for example, Angry Birds).", - "Target a specific url (for example, quora.com).", - "Target ads during a chosen time period on a specific day.", - "Target ads to a specific age range (for example, 18-24).", - "Target ads to the specified regions on a regional location list.", - "Target ads to the specified points of interest on a proximity location list.", - "Target ads to a specific gender (for example, female or male).", - "Target a specific video player size for video ads.", - "Target user rewarded content for video ads.", - "Target ads to a specific parental status (for example, parent or not a parent).", - "Target video or audio ads in a specific content instream position (for example, pre-roll, mid-roll, or post-roll).", - "Target ads in a specific content outstream position.", - "Target ads to a specific device type (for example, tablet or connected TV).", - "Target ads to an audience or groups of audiences. Singleton field, at most one can exist on a single Lineitem at a time.", - "Target ads to specific web browsers (for example, Chrome).", - "Target ads to a specific household income range (for example, top 10%).", - "Target ads in a specific on screen position.", - "Filter web sites through third party verification (for example, IAS or DoubleVerify).", - "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", - "Filter website content by sensitive categories (for example, adult).", - "Target ads to a specific environment (for example, web or app).", - "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", - "Target ads to a specific operating system (for example, macOS).", - "Target ads to a specific device make or model (for example, Roku or Samsung).", - "Target ads to a specific keyword (for example, dog or retriever).", - "Target ads to a specific negative keyword list.", - "Target ads to a specific viewability (for example, 80% viewable).", - "Target ads to a specific content category (for example, arts & entertainment).", - "Purchase impressions from specific deals and auction packages.", - "Target ads to a specific language (for example, English or Japanese).", - "Target ads to ads.txt authorized sellers. If no targeting option of this type is assigned, the resource uses the \"Authorized Direct Sellers and Resellers\" option by default.", - "Target ads to a specific regional location (for example, a city or state).", - "Purchase impressions from a group of deals and auction packages.", - "Purchase impressions from specific exchanges.", - "Purchase impressions from specific sub-exchanges.", - "Target ads around a specific point of interest, such as a notable building, a street address, or latitude/longitude coordinates.", - "Target ads around locations of a business chain within a specific geo region.", - "Target ads to a specific video content duration.", - "Target ads to a specific video content stream type.", - "Target ads to a specific native content position.", - "Target ads in an Open Measurement enabled inventory.", - "Target ads to a specific audio content type.", - "Target ads to a specific content genre.", - "Target ads to a specific YouTube video. Targeting of this type cannot be created or updated using the API. Although this targeting is inherited by child resources, **inherited targeting of this type will not be retrieveable**.", - "Target ads to a specific YouTube channel. Targeting of this type cannot be created or updated using the API. Although this targeting is inherited by child resources, **inherited targeting of this type will not be retrieveable**.", - "Target ads to a serve it in a certain position of a session. Only supported for Ad Group resources under YouTube Programmatic Reservation line items. Targeting of this type cannot be created or updated using the API.", - "Filter website content by content themes (for example, religion). Only supported for Advertiser resources. Targeting of this type cannot be created or updated using the API. This targeting is only inherited by child YouTube and Demand Gen line item resources." - ], + "logo": { + "$ref": "ImageAsset", + "description": "Required. The logo image used by this ad." + }, + "longHeadlines": { + "description": "Required. The list of long headlines shown on the ad.", + "items": { + "type": "string" + }, + "type": "array" + }, + "trackingUrl": { + "description": "Output only. The URL address loaded in the background for tracking purposes.", + "readOnly": true, "type": "string" + }, + "userSpecifiedTrackingUrl": { + "description": "Optional. The tracking URL specified by the user manually.", + "type": "string" + }, + "videos": { + "description": "Required. The list of YouTube video assets used by this ad.", + "items": { + "$ref": "YoutubeVideoDetails" + }, + "type": "array" } }, "type": "object" @@ -17031,7 +18206,8 @@ "GEO_REGION_TYPE_QUARTER", "GEO_REGION_TYPE_DIVISION", "GEO_REGION_TYPE_COMMUNE", - "GEO_REGION_TYPE_COLLOQUIAL_AREA" + "GEO_REGION_TYPE_COLLOQUIAL_AREA", + "GEO_REGION_TYPE_POST_TOWN" ], "enumDescriptions": [ "The geographic region type is unknown.", @@ -17071,7 +18247,8 @@ "The geographic region is a quarter.", "The geographic region is a division.", "The geographic region is a commune.", - "The geographic region is a colloquial area." + "The geographic region is a colloquial area.", + "The geographic region is a post town." ], "readOnly": true, "type": "string" @@ -17147,7 +18324,8 @@ "GEO_REGION_TYPE_QUARTER", "GEO_REGION_TYPE_DIVISION", "GEO_REGION_TYPE_COMMUNE", - "GEO_REGION_TYPE_COLLOQUIAL_AREA" + "GEO_REGION_TYPE_COLLOQUIAL_AREA", + "GEO_REGION_TYPE_POST_TOWN" ], "enumDescriptions": [ "The geographic region type is unknown.", @@ -17187,7 +18365,8 @@ "The geographic region is a quarter.", "The geographic region is a division.", "The geographic region is a commune.", - "The geographic region is a colloquial area." + "The geographic region is a colloquial area.", + "The geographic region is a post town." ], "readOnly": true, "type": "string" @@ -17730,6 +18909,11 @@ "description": "Meta data of an image asset.", "id": "ImageAsset", "properties": { + "assetId": { + "description": "Required. The unique ID of the asset.", + "format": "int64", + "type": "string" + }, "fileSize": { "description": "Output only. File size of the image asset in bytes.", "format": "int64", @@ -17761,7 +18945,7 @@ "additionalProperties": { "type": "string" }, - "description": "The custom parameters to pass custom values to tracking URL template.", + "description": "The custom parameters and accompanying values to add to the tracking URL.", "type": "object" } }, @@ -17928,7 +19112,7 @@ "Insertion order automation option is not specified or is unknown in this version.", "Automatic budget allocation. Allow the system to automatically shift budget to owning line items to optimize performance defined by kpi. No automation on bid settings.", "No automation of bid or budget on insertion order level. Bid and budget must be manually configured at the line item level.", - "Allow the system to automatically adjust bids and shift budget to owning line items to optimize performance defined by kpi." + "Allow the system to automatically adjust bids and shift budget to owning line items to optimize performance defined by bid_strategy." ], "type": "string" }, @@ -18212,7 +19396,7 @@ "type": "object" }, "InventorySource": { - "description": "An inventory source. Next ID: 22", + "description": "An inventory source.", "id": "InventorySource", "properties": { "commitment": { @@ -18858,6 +20042,13 @@ "description": "Details for assigned keyword targeting option. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_KEYWORD`.", "id": "KeywordAssignedTargetingOptionDetails", "properties": { + "exemptedPolicyNames": { + "description": "Optional. The policy names to exempt the keyword from. When attempting to target a keyword that violates a policy, the error returned will include the name of the relevant policy. Use that name in this field to exempt the targeted keyword from the policy. This field is only applicable for positively-targeted keywords assigned to Demand Gen resources. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users.", + "items": { + "type": "string" + }, + "type": "array" + }, "keyword": { "description": "Required. The keyword, for example `car insurance`. Positive keyword cannot be offensive word. Must be UTF-8 encoded with a maximum size of 255 bytes. Maximum number of characters is 80. Maximum number of words is 10.", "type": "string" @@ -19027,6 +20218,10 @@ }, "type": "array" }, + "demandGenSettings": { + "$ref": "DemandGenSettings", + "description": "Optional. Settings specific to Demand Gen line items. Only applicable to Demand Gen line items. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users." + }, "displayName": { "description": "Required. The display name of the line item. Must be UTF-8 encoded with a maximum size of 240 bytes.", "type": "string" @@ -19061,7 +20256,7 @@ }, "frequencyCap": { "$ref": "FrequencyCap", - "description": "Required. The impression frequency cap settings of the line item. The max_impressions field in this settings object must be used if assigning a limited cap." + "description": "Optional. Required if the line item type is not `LINE_ITEM_TYPE_DEMAND_GEN`. The impression frequency cap settings of the line item. The max_impressions field in this settings object must be used if assigning a limited cap." }, "insertionOrderId": { "description": "Required. Immutable. The unique ID of the insertion order that the line item belongs to.", @@ -19102,7 +20297,8 @@ "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_TARGET_FREQUENCY", "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIEW", "LINE_ITEM_TYPE_DISPLAY_OUT_OF_HOME", - "LINE_ITEM_TYPE_VIDEO_OUT_OF_HOME" + "LINE_ITEM_TYPE_VIDEO_OUT_OF_HOME", + "LINE_ITEM_TYPE_DEMAND_GEN" ], "enumDescriptions": [ "Type value is not specified or is unknown in this version. Line items of this type and their targeting cannot be created or updated using the API.", @@ -19126,7 +20322,8 @@ "The goal of this line item type is to show the YouTube ads target number of times to the same person in a certain period of time. Line items of this type and their targeting cannot be created or updated using the API.", "YouTube video ads that aim to get more views with a variety of ad formats. Line items of this type and their targeting cannot be created or updated using the API.", "Display ads served on digital-out-of-home inventory. Line items of this type and their targeting cannot be created or updated using the API.", - "Video ads served on digital-out-of-home inventory. Line items of this type and their targeting cannot be created or updated using the API." + "Video ads served on digital-out-of-home inventory. Line items of this type and their targeting cannot be created or updated using the API.", + "Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This enum value is only available to allowlisted users." ], "type": "string" }, @@ -19139,6 +20336,10 @@ "readOnly": true, "type": "string" }, + "optimizeFixedBidding": { + "description": "Optional. Whether to enable DV360's bid optimization for fixed bid line items. By default, DV360 optimizes your fixed bid by automatically lowering bids for impressions that are less likely to perform well. This optimization is enabled by default (value is true). When this field is set to `false`, this optimization is disabled, and the bid will not be lowered for any reason. This setting only applies to line items with a `bidding_strategy` of type `FIXED_BID`.", + "type": "boolean" + }, "pacing": { "$ref": "Pacing", "description": "Required. The budget spending speed setting of the line item." @@ -19248,7 +20449,7 @@ "id": "LineItemBudget", "properties": { "budgetAllocationType": { - "description": "Required. The type of the budget allocation. `LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC` is only applicable when automatic budget allocation is enabled for the parent insertion order.", + "description": "Required. The type of the budget allocation. `LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC` is only applicable when automatic budget allocation is enabled for the parent insertion order. This field must be set to `LINE_ITEM_BUDGET_ALLOCATION_TYPE_FIXED` for Demand Gen line items.", "enum": [ "LINE_ITEM_BUDGET_ALLOCATION_TYPE_UNSPECIFIED", "LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC", @@ -20318,7 +21519,7 @@ "additionalProperties": { "type": "string" }, - "description": "The custom parameters to pass custom values to tracking URL template.", + "description": "The custom parameters and accompanying values to add to the tracking URL.", "type": "object" } }, @@ -20953,7 +22154,7 @@ "type": "string" }, "markupType": { - "description": "Required. The markup type of the partner revenue model.", + "description": "Required. The markup type of the partner revenue model. This field must be set to `PARTNER_REVENUE_MODEL_MARKUP_TYPE_TOTAL_MEDIA_COST_MARKUP` for Demand Gen line items.", "enum": [ "PARTNER_REVENUE_MODEL_MARKUP_TYPE_UNSPECIFIED", "PARTNER_REVENUE_MODEL_MARKUP_TYPE_CPM", @@ -21591,9 +22792,9 @@ true, true, true, - false, - false, - false, + true, + true, + true, false, false, false @@ -21686,9 +22887,9 @@ true, true, true, - false, - false, - false, + true, + true, + true, false, false, false @@ -21770,6 +22971,37 @@ }, "type": "object" }, + "SelectedInventories": { + "description": "The inventory control of the ad group.", + "id": "SelectedInventories", + "properties": { + "allowDiscover": { + "description": "Whether the ad group is opted-in to Discover inventory.", + "type": "boolean" + }, + "allowGmail": { + "description": "Whether the ad group is opted-in to Gmail inventory.", + "type": "boolean" + }, + "allowGoogleDisplayNetwork": { + "description": "Whether the ad group is opted-in to Google Display Network inventory.", + "type": "boolean" + }, + "allowYoutubeFeed": { + "description": "Whether the ad group is opted-in to YouTube in-feed inventory.", + "type": "boolean" + }, + "allowYoutubeShorts": { + "description": "Whether the ad group is opted-in to YouTube shorts inventory.", + "type": "boolean" + }, + "allowYoutubeStream": { + "description": "Whether the ad group is opted-in to YouTube in-stream inventory.", + "type": "boolean" + } + }, + "type": "object" + }, "SensitiveCategoryAssignedTargetingOptionDetails": { "description": "Targeting details for sensitive category. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION`.", "id": "SensitiveCategoryAssignedTargetingOptionDetails", @@ -22045,6 +23277,10 @@ "enableOptimizedTargeting": { "description": "Required. Whether to enable Optimized Targeting for the line item. Optimized targeting is not compatible with all bid strategies. Attempting to set this field to `true` for a line item using the BiddingStrategy field fixed_bid or one of the following combinations of BiddingStrategy fields and BiddingStrategyPerformanceGoalType will result in an error: maximize_auto_spend_bid: * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CIVA` * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_IVO_TEN` * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_AV_VIEWED` performance_goal_auto_bid: * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_VIEWABLE_CPM` This also applies if the line item inherits one of the above bid strategies from the parent insertion order. Bid strategies set at the insertion order-level will be inherited by their line items if the `InsertionOrder` budget field automationType is set to `INSERTION_ORDER_AUTOMATION_TYPE_BUDGET` or `INSERTION_ORDER_AUTOMATION_TYPE_BID_BUDGET`.", "type": "boolean" + }, + "excludeDemographicExpansion": { + "description": "Optional. Whether to exclude demographic expansion for Optimized Targeting. This field can only be set for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users.", + "type": "boolean" } }, "type": "object" @@ -22316,28 +23552,28 @@ "id": "ThirdPartyMeasurementConfigs", "properties": { "brandLiftVendorConfigs": { - "description": "Optional. The third-party vendors measuring brand lift. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_DYNATA` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_KANTAR_MILLWARD_BROWN` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` * `THIRD_PARTY_VENDOR_INTAGE` * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_MACROMILL`", + "description": "Optional. The third-party vendors measuring brand lift. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_DYNATA` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_INTAGE` * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_MACROMILL`", "items": { "$ref": "ThirdPartyVendorConfig" }, "type": "array" }, "brandSafetyVendorConfigs": { - "description": "Optional. The third-party vendors measuring brand safety. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_ZERF` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` * `THIRD_PARTY_VENDOR_ZEFR`", + "description": "Optional. The third-party vendors measuring brand safety. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_ZEFR` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE`", "items": { "$ref": "ThirdPartyVendorConfig" }, "type": "array" }, "reachVendorConfigs": { - "description": "Optional. The third-party vendors measuring reach. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` * `THIRD_PARTY_VENDOR_KANTAR_MILLWARD_BROWN` * `THIRD_PARTY_VENDOR_VIDEO_RESEARCH` * `THIRD_PARTY_VENDOR_MEDIA_SCOPE` * `THIRD_PARTY_VENDOR_AUDIENCE_PROJECT` * `THIRD_PARTY_VENDOR_VIDEO_AMP` * `THIRD_PARTY_VENDOR_ISPOT_TV`", + "description": "Optional. The third-party vendors measuring reach. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_VIDEO_RESEARCH` * `THIRD_PARTY_VENDOR_MEDIA_SCOPE` * `THIRD_PARTY_VENDOR_AUDIENCE_PROJECT` * `THIRD_PARTY_VENDOR_VIDEO_AMP` * `THIRD_PARTY_VENDOR_ISPOT_TV` * `THIRD_PARTY_VENDOR_GEMIUS`", "items": { "$ref": "ThirdPartyVendorConfig" }, "type": "array" }, "viewabilityVendorConfigs": { - "description": "Optional. The third-party vendors measuring viewability. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_MOAT` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_TELEMETRY` * `THIRD_PARTY_VENDOR_MEETRICS` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL`", + "description": "Optional. The third-party vendors measuring viewability. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_MOAT` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_TELEMETRY` * `THIRD_PARTY_VENDOR_MEETRICS`", "items": { "$ref": "ThirdPartyVendorConfig" }, @@ -22430,7 +23666,16 @@ "THIRD_PARTY_VENDOR_NIELSEN", "THIRD_PARTY_VENDOR_KANTAR", "THIRD_PARTY_VENDOR_DYNATA", - "THIRD_PARTY_VENDOR_TRANSUNION" + "THIRD_PARTY_VENDOR_TRANSUNION", + "THIRD_PARTY_VENDOR_ORIGIN", + "THIRD_PARTY_VENDOR_GEMIUS", + "THIRD_PARTY_VENDOR_MEDIA_SCOPE", + "THIRD_PARTY_VENDOR_AUDIENCE_PROJECT", + "THIRD_PARTY_VENDOR_VIDEO_AMP", + "THIRD_PARTY_VENDOR_ISPOT_TV", + "THIRD_PARTY_VENDOR_INTAGE", + "THIRD_PARTY_VENDOR_MACROMILL", + "THIRD_PARTY_VENDOR_VIDEO_RESEARCH" ], "enumDescriptions": [ "Unknown third-party vendor.", @@ -22444,7 +23689,16 @@ "Nielsen.", "Kantar.", "Dynata.", - "Transunion." + "Transunion.", + "Origin.", + "Gemius.", + "MediaScope.", + "Audience Project.", + "Video Amp.", + "Ispot TV.", + "Intage.", + "Macromill.", + "Video Research." ], "type": "string" } @@ -22753,6 +24007,10 @@ "description": "Optional. Whether ads can serve as in-stream format.", "type": "boolean" }, + "allowNonSkippableInStream": { + "description": "Optional. Indicates whether ads can serve as non-skippable in-stream format.", + "type": "boolean" + }, "allowShorts": { "description": "Optional. Whether ads can serve as shorts format.", "type": "boolean" @@ -22891,7 +24149,7 @@ "additionalProperties": { "type": "string" }, - "description": "The custom parameters to pass custom values to tracking URL template.", + "description": "The custom parameters and accompanying values to add to the tracking URL.", "type": "object" }, "descriptions": { @@ -22925,7 +24183,7 @@ "type": "array" }, "longHeadlines": { - "description": "The list of lone headlines shown on the call-to-action banner.", + "description": "The list of long headlines shown on the call-to-action banner.", "items": { "type": "string" }, @@ -23123,7 +24381,7 @@ "type": "string" }, "value": { - "description": "The value used by the bidding strategy. When the bidding strategy is assigned at the line item level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_SHARE_OF_VOICE` When the bidding strategy is assigned at the ad group level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPV` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` If not using an applicable strategy, the value of this field will be 0.", + "description": "The value used by the bidding strategy. When the bidding strategy is assigned at the line item level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` When the bidding strategy is assigned at the ad group level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPV` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` If not using an applicable strategy, the value of this field will be 0.", "format": "int64", "type": "string" } @@ -23197,7 +24455,7 @@ "type": "string" }, "linkedMerchantId": { - "description": "Optional. The ID of the merchant which is linked to the line item for product feed.", + "description": "Optional. The ID of the Merchant Center account used to provide a product feed. This Merchant Center account must already be linked to the advertiser.", "format": "int64", "type": "string" }, @@ -23478,7 +24736,7 @@ "type": "string" }, "videoAssetId": { - "description": "Required. The YouTube video asset id. This is ad_asset.ad_asset_id.", + "description": "Required. The YouTube video asset id. This is the adAssetId of an AdAsset resource.", "format": "int64", "type": "string" } diff --git a/discovery/dlp-v2.json b/discovery/dlp-v2.json index fd394d927ef..c069a6ce0fe 100644 --- a/discovery/dlp-v2.json +++ b/discovery/dlp-v2.json @@ -5128,7 +5128,7 @@ } } }, - "revision": "20260129", + "revision": "20260425", "rootUrl": "https://dlp.googleapis.com/", "schemas": { "GooglePrivacyDlpV2Action": { @@ -5238,7 +5238,7 @@ "type": "array" }, "matchingType": { - "description": "How the adjustment rule is applied. Only MATCHING_TYPE_PARTIAL_MATCH is supported: - Partial match: adjusts the findings of infoTypes specified in the inspection rule when they have a nonempty intersection with a finding of an infoType specified in this adjustment rule.", + "description": "How the adjustment rule is applied. Only `MATCHING_TYPE_PARTIAL_MATCH` is supported: - Partial match: adjusts the findings of infoTypes specified in the inspection rule when they have a nonempty intersection with a finding of an infoType specified in this adjustment rule.", "enum": [ "MATCHING_TYPE_UNSPECIFIED", "MATCHING_TYPE_FULL_MATCH", @@ -6521,6 +6521,10 @@ "$ref": "GooglePrivacyDlpV2ByteContentItem", "description": "Content data to inspect or redact. Replaces `type` and `data`." }, + "contentMetadata": { + "$ref": "GooglePrivacyDlpV2ContentMetadata", + "description": "User provided metadata for the content." + }, "table": { "$ref": "GooglePrivacyDlpV2Table", "description": "Structured content for inspection. See https://cloud.google.com/sensitive-data-protection/docs/inspecting-text#inspecting_a_table to learn more." @@ -6568,6 +6572,20 @@ }, "type": "object" }, + "GooglePrivacyDlpV2ContentMetadata": { + "description": "Metadata on content to be scanned.", + "id": "GooglePrivacyDlpV2ContentMetadata", + "properties": { + "properties": { + "description": "User provided key-value pairs of content metadata.", + "items": { + "$ref": "GooglePrivacyDlpV2KeyValueMetadataProperty" + }, + "type": "array" + } + }, + "type": "object" + }, "GooglePrivacyDlpV2CreateConnectionRequest": { "description": "Request message for CreateConnection.", "id": "GooglePrivacyDlpV2CreateConnectionRequest", @@ -6793,7 +6811,7 @@ "id": "GooglePrivacyDlpV2CustomInfoType", "properties": { "detectionRules": { - "description": "Set of detection rules to apply to all findings of this CustomInfoType. Rules are applied in order that they are specified. Not supported for the `surrogate_type`, `metadata_key_value_expression`, and `prompt` CustomInfoType.", + "description": "Set of detection rules to apply to all findings of this CustomInfoType. Rules are applied in the order that they are specified. Only supported for the `dictionary`, `regex`, and `stored_type` CustomInfoTypes.", "items": { "$ref": "GooglePrivacyDlpV2DetectionRule" }, @@ -6804,7 +6822,7 @@ "description": "A list of phrases to detect as a CustomInfoType." }, "exclusionType": { - "description": "If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding to be returned. It still can be used for rules matching. Not supported for the `metadata_key_value_expression` and `prompt` CustomInfoType.", + "description": "If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding to be returned. It still can be used for rules matching. Only supported for the `dictionary`, `regex`, and `stored_type` CustomInfoTypes.", "enum": [ "EXCLUSION_TYPE_UNSPECIFIED", "EXCLUSION_TYPE_EXCLUDE" @@ -6839,6 +6857,10 @@ ], "type": "string" }, + "metadataKeyValueExpression": { + "$ref": "GooglePrivacyDlpV2MetadataKeyValueExpression", + "description": "Key-value pair to detect in the metadata." + }, "regex": { "$ref": "GooglePrivacyDlpV2Regex", "description": "Regular expression based CustomInfoType." @@ -8446,6 +8468,7 @@ "SIGNAL_UNSPECIFIED", "MODEL", "TEXT_EMBEDDING", + "EMBEDDING", "VERTEX_PLUGIN", "VECTOR_PLUGIN", "SOURCE_CODE", @@ -8454,7 +8477,8 @@ "enumDescriptions": [ "Unused.", "One or more machine learning models are present.", - "A table appears to be a text embedding.", + "A table appears to contain text embeddings.", + "A table appears to contain embeddings of any type (for example, text, image, multimodal). The `TEXT_EMBEDDING` signal might also be present if the table contains text embeddings.", "The [Cloud SQL Vertex AI](https://cloud.google.com/sql/docs/postgres/integrate-cloud-sql-with-vertex-ai) plugin is installed on the database.", "Support for [Cloud SQL vector embeddings](https://cloud.google.com/sql/docs/mysql/enable-vector-search) is enabled on the database.", "Source code is present.", @@ -8615,7 +8639,7 @@ "properties": { "profileTable": { "$ref": "GooglePrivacyDlpV2BigQueryTable", - "description": "Store all profiles to BigQuery. * The system will create a new dataset and table for you if none are are provided. The dataset will be named `sensitive_data_protection_discovery` and table will be named `discovery_profiles`. This table will be placed in the same project as the container project running the scan. After the first profile is generated and the dataset and table are created, the discovery scan configuration will be updated with the dataset and table names. * See [Analyze data profiles stored in BigQuery](https://cloud.google.com/sensitive-data-protection/docs/analyze-data-profiles). * See [Sample queries for your BigQuery table](https://cloud.google.com/sensitive-data-protection/docs/analyze-data-profiles#sample_sql_queries). * Data is inserted using [streaming insert](https://cloud.google.com/blog/products/bigquery/life-of-a-bigquery-streaming-insert) and so data may be in the buffer for a period of time after the profile has finished. * The Pub/Sub notification is sent before the streaming buffer is guaranteed to be written, so data may not be instantly visible to queries by the time your topic receives the Pub/Sub notification. * The best practice is to use the same table for an entire organization so that you can take advantage of the [provided Looker reports](https://cloud.google.com/sensitive-data-protection/docs/analyze-data-profiles#use_a_premade_report). If you use VPC Service Controls to define security perimeters, then you must use a separate table for each boundary." + "description": "Store all profiles to BigQuery. * The system will create a new dataset and table for you if none are are provided. The dataset will be named `sensitive_data_protection_discovery` and table will be named `discovery_profiles`. This table will be placed in the same project as the container project running the scan. After the first profile is generated and the dataset and table are created, the discovery scan configuration will be updated with the dataset and table names. * See [Analyze data profiles stored in BigQuery](https://cloud.google.com/sensitive-data-protection/docs/analyze-data-profiles). * See [Sample queries for your BigQuery table](https://cloud.google.com/sensitive-data-protection/docs/analyze-data-profiles#sample_sql_queries). * Data is inserted using [streaming insert](https://cloud.google.com/blog/products/bigquery/life-of-a-bigquery-streaming-insert) and so data may be in the buffer for a period of time after the profile has finished. * The Pub/Sub notification is sent before the streaming buffer is guaranteed to be written, so data may not be instantly visible to queries by the time your topic receives the Pub/Sub notification. * The best practice is to use the same table for an entire organization so that you can take advantage of the [provided Data Studio reports](https://cloud.google.com/sensitive-data-protection/docs/analyze-data-profiles#use_a_premade_report). If you use VPC Service Controls to define security perimeters, then you must use a separate table for each boundary." }, "sampleFindingsTable": { "$ref": "GooglePrivacyDlpV2BigQueryTable", @@ -9858,7 +9882,7 @@ "type": "array" }, "ruleSet": { - "description": "Set of rules to apply to the findings for this InspectConfig. Exclusion rules, contained in the set are executed in the end, other rules are executed in the order they are specified for each info type.", + "description": "Set of rules to apply to the findings for this InspectConfig. Exclusion rules, contained in the set are executed in the end, other rules are executed in the order they are specified for each info type. Not supported for the `metadata_key_value_expression` CustomInfoType.", "items": { "$ref": "GooglePrivacyDlpV2InspectionRuleSet" }, @@ -10309,6 +10333,32 @@ }, "type": "object" }, + "GooglePrivacyDlpV2KeyValueMetadataLabel": { + "description": "The metadata key that contains a finding.", + "id": "GooglePrivacyDlpV2KeyValueMetadataLabel", + "properties": { + "key": { + "description": "The metadata key. The format depends on the source of the metadata. Example: - `MSIP_Label_122709e3-8f6b-4860-985f-7f722a94f61e_Enabled` (a Microsoft Purview Information Protection key example)", + "type": "string" + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2KeyValueMetadataProperty": { + "description": "A key-value pair in the Metadata.", + "id": "GooglePrivacyDlpV2KeyValueMetadataProperty", + "properties": { + "key": { + "description": "The key of the property.", + "type": "string" + }, + "value": { + "description": "The value of the property.", + "type": "string" + } + }, + "type": "object" + }, "GooglePrivacyDlpV2KindExpression": { "description": "A representation of a Datastore kind.", "id": "GooglePrivacyDlpV2KindExpression", @@ -10774,10 +10824,29 @@ "properties": {}, "type": "object" }, + "GooglePrivacyDlpV2MetadataKeyValueExpression": { + "description": "Configuration for a custom infoType that detects key-value pairs in the metadata matching the specified regular expressions.", + "id": "GooglePrivacyDlpV2MetadataKeyValueExpression", + "properties": { + "keyRegex": { + "description": "The regular expression for the key. Key should be non-empty.", + "type": "string" + }, + "valueRegex": { + "description": "The regular expression for the value. Value should be non-empty.", + "type": "string" + } + }, + "type": "object" + }, "GooglePrivacyDlpV2MetadataLocation": { "description": "Metadata Location", "id": "GooglePrivacyDlpV2MetadataLocation", "properties": { + "keyValueMetadataLabel": { + "$ref": "GooglePrivacyDlpV2KeyValueMetadataLabel", + "description": "Metadata key that contains the finding." + }, "storageLabel": { "$ref": "GooglePrivacyDlpV2StorageMetadataLabel", "description": "Storage metadata." @@ -10786,11 +10855,15 @@ "description": "Type of metadata containing the finding.", "enum": [ "METADATATYPE_UNSPECIFIED", - "STORAGE_METADATA" + "STORAGE_METADATA", + "CONTENT_METADATA", + "CLIENT_PROVIDED_METADATA" ], "enumDescriptions": [ "Unused", - "General file metadata provided by Cloud Storage." + "General file metadata provided by Cloud Storage.", + "Metadata extracted from the files.", + "Metadata provided by the client." ], "type": "string" } diff --git a/discovery/dns-v1.json b/discovery/dns-v1.json index b8f82993cdc..d79566539f5 100644 --- a/discovery/dns-v1.json +++ b/discovery/dns-v1.json @@ -1225,7 +1225,7 @@ ], "parameters": { "filter": { - "description": "Specify a filter expression to view records that exactly match the specified domain. Both the name and type parameters are not supported when you use filter and must be omitted. Your filter expression must conform to AIP-160 and you must specify a domain in the name field. Optionally, you can include the type field to filter records by type. You can also include the has_suffix function to view records that match by domain suffix. Examples: - name=\"example.com.\" - name=\"example.com.\" AND type=\"A\" - name=has_suffix(\"example.com.\") - name=has_suffix(\"example.com.\") AND type=\"A\" ", + "description": "Specify a filter expression to view records that exactly match the specified domain. Both the `name` and `type` parameters are not supported and must be omitted when you use `filter`. Your `filter` expression must conform to AIP-160 and you must specify a domain in the `name` field. Optionally, you can include the `type` field to filter records by type. You can also include the `has_suffix` function to view records that match by domain suffix. Examples: * `name`=\"example.com.\" * `name`=\"example.com.\" AND type=\"A\" * `name`=`has_suffix`(\"example.com.\") * `name`=`has_suffix`(\"example.com.\") AND type=\"A\"", "location": "query", "type": "string" }, @@ -1242,7 +1242,7 @@ "type": "integer" }, "name": { - "description": "Specify a fully qualified domain name to view only those records. The name parameter is not supported and must be omitted when you use filter.", + "description": "Specify a fully qualified domain name to view only those records. The `name` parameter is not supported and must be omitted when you use `filter`.", "location": "query", "type": "string" }, @@ -1258,7 +1258,7 @@ "type": "string" }, "type": { - "description": "Specify a record type to view only those records. You must also specify the name parameter. The type parameter is not supported and must be omitted when you use filter.", + "description": "Specify a record type to view only those records. You must also specify the `name` parameter. The `type` parameter is not supported and must be omitted when you use `filter`.", "location": "query", "type": "string" } @@ -1829,7 +1829,7 @@ } } }, - "revision": "20260219", + "revision": "20260421", "rootUrl": "https://dns.googleapis.com/", "schemas": { "Change": { @@ -2266,6 +2266,41 @@ }, "type": "object" }, + "GoogleLongrunningOperation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "GoogleLongrunningOperation", + "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" + }, "ManagedZone": { "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.", "id": "ManagedZone", @@ -3541,6 +3576,33 @@ } }, "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" } }, "servicePath": "", diff --git a/discovery/dns-v1beta2.json b/discovery/dns-v1beta2.json index e836c301481..e8542ab0764 100644 --- a/discovery/dns-v1beta2.json +++ b/discovery/dns-v1beta2.json @@ -1222,7 +1222,7 @@ ], "parameters": { "filter": { - "description": "Specify a filter expression to view records that exactly match the specified domain. Both the name and type parameters are not supported when you use filter and must be omitted. Your filter expression must conform to AIP-160 and you must specify a domain in the name field. Optionally, you can include the type field to filter records by type. You can also include the has_suffix function to view records that match by domain suffix. Examples: - name=\"example.com.\" - name=\"example.com.\" AND type=\"A\" - name=has_suffix(\"example.com.\") - name=has_suffix(\"example.com.\") AND type=\"A\" ", + "description": "Specify a filter expression to view records that exactly match the specified domain. Both the `name` and `type` parameters are not supported and must be omitted when you use `filter`. Your `filter` expression must conform to AIP-160 and you must specify a domain in the `name` field. Optionally, you can include the `type` field to filter records by type. You can also include the `has_suffix` function to view records that match by domain suffix. Examples: * `name`=\"example.com.\" * `name`=\"example.com.\" AND type=\"A\" * `name`=`has_suffix`(\"example.com.\") * `name`=`has_suffix`(\"example.com.\") AND type=\"A\"", "location": "query", "type": "string" }, @@ -1239,7 +1239,7 @@ "type": "integer" }, "name": { - "description": "Specify a fully qualified domain name to view only those records. The name parameter is not supported and must be omitted when you use filter.", + "description": "Specify a fully qualified domain name to view only those records. The `name` parameter is not supported and must be omitted when you use `filter`.", "location": "query", "type": "string" }, @@ -1255,7 +1255,7 @@ "type": "string" }, "type": { - "description": "Specify a record type to view only those records. You must also specify the name parameter. The type parameter is not supported and must be omitted when you use filter.", + "description": "Specify a record type to view only those records. You must also specify the `name` parameter. The `type` parameter is not supported and must be omitted when you use `filter`.", "location": "query", "type": "string" } @@ -1826,7 +1826,7 @@ } } }, - "revision": "20260219", + "revision": "20260421", "rootUrl": "https://dns.googleapis.com/", "schemas": { "Change": { @@ -2263,6 +2263,41 @@ }, "type": "object" }, + "GoogleLongrunningOperation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "GoogleLongrunningOperation", + "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" + }, "ManagedZone": { "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.", "id": "ManagedZone", @@ -3541,6 +3576,33 @@ } }, "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" } }, "servicePath": "", diff --git a/discovery/docs-v1.json b/discovery/docs-v1.json index 5a576134025..2295cb2ac50 100644 --- a/discovery/docs-v1.json +++ b/discovery/docs-v1.json @@ -221,7 +221,7 @@ } } }, - "revision": "20260114", + "revision": "20260427", "rootUrl": "https://docs.googleapis.com/", "schemas": { "AddDocumentTabRequest": { @@ -748,7 +748,7 @@ "id": "DateElementProperties", "properties": { "dateFormat": { - "description": "Determines how the date part of the DateElement will be displayed in the document. If unset, the default value is DATE_FORMAT_MONTH_DAY_YEAR_ABBREVIATED, indicating the DateElement will be formatted as `MMM d, y` in `en_US`, or locale specific equivalent.", + "description": "Determines how the date part of the DateElement will be displayed in the document. If unset, the default value is DATE_FORMAT_MONTH_DAY_YEAR_ABBREVIATED, indicating the DateElement will be formatted as `MMM d, y` in `en`, or locale specific equivalent.", "enum": [ "DATE_FORMAT_UNSPECIFIED", "DATE_FORMAT_CUSTOM", @@ -772,7 +772,7 @@ "type": "string" }, "locale": { - "description": "The locale of the document, as defined by the Unicode Common Locale Data Repository (CLDR) project. For example, `en_US`. If unset, the default locale is `en_US`.", + "description": "The language code of the DateElement. For example, `en`. If unset, the default locale is `en`. Limited to the following locales: `af`, `am`, `ar`, `as`, `az`, `be`, `bg`, `bn`, `ca`, `cs`, `da`, `de`, `el`, `en`, `en-CA`, `en-GB`, `es`, `es-419`, `et`, `eu`, `fa`, `fi`, `fil`, `fr`, `fr-CA`, `gl`, `gu`, `hi`, `hr`, `hu`, `hy`, `id`, `is`, `it`, `iw`, `ja`, `ka`, `kk`, `km`, `kn`, `ko`, `lo`, `lt`, `lv`, `mk`, `ml`, `mn`, `mr`, `ms`, `ne`, `nl`, `no`, `or`, `pa`, `pl`, `pt-BR`, `pt-PT`, `ro`, `ru`, `si`, `sk`, `sl`, `sq`, `sr`, `sv`, `sw`, `ta`, `te`, `th`, `tr`, `uk`, `ur`, `uz`, `vi`, `zh-CN`, `zh-HK`, `zh-TW`, `zu`, `cy`, `my`.", "type": "string" }, "timeFormat": { @@ -792,11 +792,11 @@ "type": "string" }, "timeZoneId": { - "description": "The time zone of the DateElement, as defined by the Unicode Common Locale Data Repository (CLDR) project. For example, `America/New York`. If unset, the default time zone is `etc/UTC`.", + "description": "The time zone of the DateElement, as defined by the Unicode Common Locale Data Repository (CLDR) project. For example, `America/New_York`. If unset, the default time zone is `etc/UTC`.", "type": "string" }, "timestamp": { - "description": "The point in time to represent, in seconds and nanoseconds since Unix epoch: January 1, 1970 at midnight UTC. Timestamp is expected to be in UTC. If time_zone_id is set, the timestamp is adjusted according to the time zone. For example, a timestamp of `18000` with a date format of `DATE_FORMAT_ISO8601` and time format of `TIME_FORMAT_HOUR_MINUTE` would be displayed as `1970-01-01 5:00 AM`. A timestamp of `18000` with date format of `DATE_FORMAT_8SO8601`, time format of `TIME_FORMAT_HOUR_MINUTE`, and time zone set to `America/New_York` will instead be `1970-01-01 12:00 AM`.", + "description": "The point in time to represent, in seconds and nanoseconds since Unix epoch: January 1, 1970 at midnight UTC. Timestamp is expected to be in UTC. If time_zone_id is set, the timestamp is adjusted according to the time zone. For example, a timestamp of `18000` with a date format of `DATE_FORMAT_ISO8601` and time format of `TIME_FORMAT_HOUR_MINUTE` would be displayed as `1970-01-01 5:00 AM`. A timestamp of `18000` with date format of `DATE_FORMAT_ISO8601`, time format of `TIME_FORMAT_HOUR_MINUTE`, and time zone set to `America/New_York` will instead be `1970-01-01 12:00 AM`.", "format": "google-datetime", "type": "string" } @@ -1984,6 +1984,25 @@ }, "type": "object" }, + "InsertRichLinkRequest": { + "description": "Inserts a RichLink at the specified location.", + "id": "InsertRichLinkRequest", + "properties": { + "endOfSegmentLocation": { + "$ref": "EndOfSegmentLocation", + "description": "Inserts the rich link at the end of a header, footer, footnote or the document body." + }, + "location": { + "$ref": "Location", + "description": "Inserts the rich link at a specific index in the document. The rich link must be inserted inside the bounds of an existing Paragraph. For instance, it cannot be inserted at a table's start index (i.e. between the table and its preceding paragraph). The rich link cannot be inserted inside an equation." + }, + "richLinkProperties": { + "$ref": "RichLinkProperties", + "description": "The properties of the rich link to insert." + } + }, + "type": "object" + }, "InsertSectionBreakRequest": { "description": "Inserts a section break at the given location. A newline character will be inserted before the section break.", "id": "InsertSectionBreakRequest", @@ -3326,6 +3345,10 @@ "$ref": "InsertPersonRequest", "description": "Inserts a person mention." }, + "insertRichLink": { + "$ref": "InsertRichLinkRequest", + "description": "Insert a rich link." + }, "insertSectionBreak": { "$ref": "InsertSectionBreakRequest", "description": "Inserts a section break at the specified location." @@ -3378,6 +3401,10 @@ "$ref": "UpdateDocumentTabPropertiesRequest", "description": "Updates the properties of a document tab." }, + "updateNamedStyle": { + "$ref": "UpdateNamedStyleRequest", + "description": "Updates a named style." + }, "updateParagraphStyle": { "$ref": "UpdateParagraphStyleRequest", "description": "Updates the paragraph style at the specified range." @@ -4713,6 +4740,26 @@ }, "type": "object" }, + "UpdateNamedStyleRequest": { + "description": "Updates a named style.", + "id": "UpdateNamedStyleRequest", + "properties": { + "fields": { + "description": "The NamedStyle fields that should be updated. At least `named_style_type` must be specified. The root `named_style` is implied and should not be specified. A single `\"*\"` can be used as short-hand for listing every field. For example, to update the text style to bold, set `fields` to include `\"text_style\"` and `\"text_style.bold\"`. To update the paragraph style's alignment property, set `fields` to include `\"paragraph_style\"` and `\"paragraph_style.alignment\"`. To reset a property to its default value, include its field name in the field mask but leave the field itself unset. Specifying `\"text_style\"` or `\"paragraph_style\"` with an empty TextStyle or ParagraphStyle will reset all of its nested fields.", + "format": "google-fieldmask", + "type": "string" + }, + "namedStyle": { + "$ref": "NamedStyle", + "description": "The document style to update." + }, + "tabId": { + "description": "The document tab to update. By default, the update is applied to the first tab.", + "type": "string" + } + }, + "type": "object" + }, "UpdateParagraphStyleRequest": { "description": "Update the styling of all paragraphs that overlap with the given range.", "id": "UpdateParagraphStyleRequest", diff --git a/discovery/documentai-v1.json b/discovery/documentai-v1.json index 55f5f19e136..59023e68890 100644 --- a/discovery/documentai-v1.json +++ b/discovery/documentai-v1.json @@ -50,6 +50,11 @@ "description": "Regional Endpoint", "endpointUrl": "https://documentai.europe-west2.rep.googleapis.com/", "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://documentai.europe-west3.rep.googleapis.com/", + "location": "europe-west3" } ], "fullyEncodeReservedExpansion": true, @@ -226,7 +231,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "documentai.projects.locations.list", @@ -1431,7 +1436,7 @@ } } }, - "revision": "20260224", + "revision": "20260325", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "CloudAiDocumentaiLabHifiaToolsValidationValidatorInput": { @@ -7033,6 +7038,10 @@ "format": "float", "type": "number" }, + "previousFineTunedProcessorVersionName": { + "description": "Optional. Resource name of a previously fine tuned version id to copy the overwritten configs from. The base_processor_version should be newer than the base processor version used to fine tune this provided processor version. Format: `projects/{project}/locations/{location}/processors/{processor}/processorVersions/{processorVersion}`.", + "type": "string" + }, "trainSteps": { "description": "Optional. The number of steps to run for model tuning. Valid values are between 1 and 400. If not provided, recommended steps will be used.", "format": "int32", diff --git a/discovery/documentai-v1beta3.json b/discovery/documentai-v1beta3.json index 1b371567c18..6774e51347f 100644 --- a/discovery/documentai-v1beta3.json +++ b/discovery/documentai-v1beta3.json @@ -50,6 +50,11 @@ "description": "Regional Endpoint", "endpointUrl": "https://documentai.europe-west2.rep.googleapis.com/", "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://documentai.europe-west3.rep.googleapis.com/", + "location": "europe-west3" } ], "fullyEncodeReservedExpansion": true, @@ -197,7 +202,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta3/projects/{projectsId}/locations", "httpMethod": "GET", "id": "documentai.projects.locations.list", @@ -1673,7 +1678,7 @@ } } }, - "revision": "20260224", + "revision": "20260325", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "CloudAiDocumentaiLabHifiaToolsValidationValidatorInput": { @@ -8575,6 +8580,10 @@ "format": "float", "type": "number" }, + "previousFineTunedProcessorVersionName": { + "description": "Optional. Resource name of a previously fine tuned version id to copy the overwritten configs from. The base_processor_version should be newer than the base processor version used to fine tune this provided processor version. Format: `projects/{project}/locations/{location}/processors/{processor}/processorVersions/{processorVersion}`.", + "type": "string" + }, "trainSteps": { "description": "Optional. The number of steps to run for model tuning. Valid values are between 1 and 400. If not provided, recommended steps will be used.", "format": "int32", diff --git a/discovery/domains-v1.json b/discovery/domains-v1.json index 6b373d43d78..5a3c677715f 100644 --- a/discovery/domains-v1.json +++ b/discovery/domains-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "domains.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -976,7 +976,7 @@ } } }, - "revision": "20260126", + "revision": "20260427", "rootUrl": "https://domains.googleapis.com/", "schemas": { "AuditConfig": { @@ -1127,6 +1127,10 @@ "description": "Required. The field mask describing which fields to update as a comma-separated list. For example, if only the transfer lock is being updated, the `update_mask` is `\"transfer_lock_state\"`.", "format": "google-fieldmask", "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, validates the request without actually updating the management settings.", + "type": "boolean" } }, "type": "object" diff --git a/discovery/domains-v1alpha2.json b/discovery/domains-v1alpha2.json index 12bd78dfba8..2c499e4f681 100644 --- a/discovery/domains-v1alpha2.json +++ b/discovery/domains-v1alpha2.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha2/projects/{projectsId}/locations", "httpMethod": "GET", "id": "domains.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -976,7 +976,7 @@ } } }, - "revision": "20260126", + "revision": "20260427", "rootUrl": "https://domains.googleapis.com/", "schemas": { "AuditConfig": { @@ -1127,6 +1127,10 @@ "description": "Required. The field mask describing which fields to update as a comma-separated list. For example, if only the transfer lock is being updated, the `update_mask` is `\"transfer_lock_state\"`.", "format": "google-fieldmask", "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, validates the request without actually updating the management settings.", + "type": "boolean" } }, "type": "object" diff --git a/discovery/domains-v1beta1.json b/discovery/domains-v1beta1.json index bb83c450d09..601582637fd 100644 --- a/discovery/domains-v1beta1.json +++ b/discovery/domains-v1beta1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "domains.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -976,7 +976,7 @@ } } }, - "revision": "20260126", + "revision": "20260427", "rootUrl": "https://domains.googleapis.com/", "schemas": { "AuditConfig": { @@ -1127,6 +1127,10 @@ "description": "Required. The field mask describing which fields to update as a comma-separated list. For example, if only the transfer lock is being updated, the `update_mask` is `\"transfer_lock_state\"`.", "format": "google-fieldmask", "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, validates the request without actually updating the management settings.", + "type": "boolean" } }, "type": "object" diff --git a/discovery/drive-v2.json b/discovery/drive-v2.json index 491f9ea90c8..a2dc71b284b 100644 --- a/discovery/drive-v2.json +++ b/discovery/drive-v2.json @@ -1134,7 +1134,7 @@ ] }, "list": { - "description": " Lists the user's shared drives. This method accepts the `q` parameter, which is a search query combining one or more search terms. For more information, see the [Search for shared drives](/workspace/drive/api/guides/search-shareddrives) guide.", + "description": " Lists the user's shared drives. This method accepts the `q` parameter, which is a search query combining one or more search terms. For more information, see the [Search for shared drives](https://developers.google.com/workspace/drive/api/guides/search-shareddrives) guide.", "flatPath": "drives", "httpMethod": "GET", "id": "drive.drives.list", @@ -1445,6 +1445,32 @@ "supportsMediaDownload": true, "useMediaDownloadService": true }, + "generateCseToken": { + "description": "Generates a CSE token which can be used to create or update CSE files.", + "flatPath": "files/generateCseToken", + "httpMethod": "GET", + "id": "drive.files.generateCseToken", + "parameterOrder": [], + "parameters": { + "fileId": { + "description": "The ID of the file for which the JWT should be generated. If not provided, an id will be generated.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The ID of the expected parent of the file. Used when generating a JWT for a new CSE file. If specified, the parent will be fetched, and if the parent is a shared drive item, the shared drive's policy will be used to determine the KACLS that should be used. It is invalid to specify both file_id and parent in a single request.", + "location": "query", + "type": "string" + } + }, + "path": "files/generateCseToken", + "response": { + "$ref": "GenerateCseTokenResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive" + ] + }, "generateIds": { "description": "Generates a set of file IDs which can be provided in insert or copy requests.", "flatPath": "files/generateIds", @@ -1485,7 +1511,7 @@ ] }, "get": { - "description": " Gets a file's metadata or content by ID. If you provide the URL parameter `alt=media`, then the response includes the file contents in the response body. Downloading content with `alt=media` only works if the file is stored in Drive. To download Google Docs, Sheets, and Slides use [`files.export`](/workspace/drive/api/reference/rest/v2/files/export) instead. For more information, see [Download & export files](/workspace/drive/api/guides/manage-downloads).", + "description": " Gets a file's metadata or content by ID. If you provide the URL parameter `alt=media`, then the response includes the file contents in the response body. Downloading content with `alt=media` only works if the file is stored in Drive. To download Google Docs, Sheets, and Slides use [`files.export`](https://developers.google.com/workspace/drive/api/reference/rest/v2/files/export) instead. For more information, see [Download & export files](https://developers.google.com/workspace/drive/api/guides/manage-downloads).", "flatPath": "files/{fileId}", "httpMethod": "GET", "id": "drive.files.get", @@ -1574,7 +1600,7 @@ "useMediaDownloadService": true }, "insert": { - "description": " Inserts a new file. This method supports an */upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:*`*/*` Note: Specify a valid MIME type, rather than the literal `*/*` value. The literal `*/*` is only used to indicate that any valid MIME type can be uploaded. For more information on uploading files, see [Upload file data](/workspace/drive/api/guides/manage-uploads). Apps creating shortcuts with `files.insert` must specify the MIME type `application/vnd.google-apps.shortcut`. Apps should specify a file extension in the `title` property when inserting files with the API. For example, an operation to insert a JPEG file should specify something like `\"title\": \"cat.jpg\"` in the metadata. Subsequent `GET` requests include the read-only `fileExtension` property populated with the extension originally specified in the `title` property. When a Google Drive user requests to download a file, or when the file is downloaded through the sync client, Drive builds a full filename (with extension) based on the title. In cases where the extension is missing, Drive attempts to determine the extension based on the file's MIME type.", + "description": " Inserts a new file. This method supports an */upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:*`*/*` Note: Specify a valid MIME type, rather than the literal `*/*` value. The literal `*/*` is only used to indicate that any valid MIME type can be uploaded. For more information on uploading files, see [Upload file data](https://developers.google.com/workspace/drive/api/guides/manage-uploads). Apps creating shortcuts with `files.insert` must specify the MIME type `application/vnd.google-apps.shortcut`. Apps should specify a file extension in the `title` property when inserting files with the API. For example, an operation to insert a JPEG file should specify something like `\"title\": \"cat.jpg\"` in the metadata. Subsequent `GET` requests include the read-only `fileExtension` property populated with the extension originally specified in the `title` property. When a Google Drive user requests to download a file, or when the file is downloaded through the sync client, Drive builds a full filename (with extension) based on the title. In cases where the extension is missing, Drive attempts to determine the extension based on the file's MIME type.", "flatPath": "files", "httpMethod": "POST", "id": "drive.files.insert", @@ -1696,7 +1722,7 @@ "supportsMediaUpload": true }, "list": { - "description": " Lists the user's files. For more information, see [Search for files and folders](/workspace/drive/api/guides/search-files). This method accepts the `q` parameter, which is a search query combining one or more search terms. This method returns *all* files by default, including trashed files. If you don't want trashed files to appear in the list, use the `trashed=false` query parameter to remove trashed files from the results.", + "description": " Lists the user's files. For more information, see [Search for files and folders](https://developers.google.com/workspace/drive/api/guides/search-files). This method accepts the `q` parameter, which is a search query combining one or more search terms. This method returns *all* files by default, including trashed files. If you don't want trashed files to appear in the list, use the `trashed=false` query parameter to remove trashed files from the results.", "flatPath": "files", "httpMethod": "GET", "id": "drive.files.list", @@ -2202,7 +2228,7 @@ ] }, "update": { - "description": " Updates a file's metadata, content, or both. When calling this method, only populate fields in the request that you want to modify. When updating fields, some fields might be changed automatically, such as `modifiedDate`. This method supports patch semantics. This method supports an */upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:* `*/*` (Specify a valid MIME type, rather than the literal `*/*` value. The literal `*/*` is only used to indicate that any valid MIME type can be uploaded. For more information, see [Google Workspace and Google Drive supported MIME types](/workspace/drive/api/guides/mime-types).) For more information on uploading files, see [Upload file data](/workspace/drive/api/guides/manage-uploads).", + "description": " Updates a file's metadata, content, or both. When calling this method, only populate fields in the request that you want to modify. When updating fields, some fields might be changed automatically, such as `modifiedDate`. This method supports patch semantics. This method supports an */upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:* `*/*` (Specify a valid MIME type, rather than the literal `*/*` value. The literal `*/*` is only used to indicate that any valid MIME type can be uploaded. For more information, see [Google Workspace and Google Drive supported MIME types](https://developers.google.com/workspace/drive/api/guides/mime-types).) For more information on uploading files, see [Upload file data](https://developers.google.com/workspace/drive/api/guides/manage-uploads).", "flatPath": "files/{fileId}", "httpMethod": "PUT", "id": "drive.files.update", @@ -2634,7 +2660,8 @@ "parameters": { "enforceExpansiveAccess": { "default": "false", - "description": "Whether the request should enforce expansive access rules.", + "deprecated": true, + "description": "Deprecated: All requests use the expansive access rules.", "location": "query", "type": "boolean" }, @@ -2779,7 +2806,8 @@ }, "enforceExpansiveAccess": { "default": "false", - "description": "Whether the request should enforce expansive access rules.", + "deprecated": true, + "description": "Deprecated: All requests use the expansive access rules.", "location": "query", "type": "boolean" }, @@ -2919,7 +2947,8 @@ "parameters": { "enforceExpansiveAccess": { "default": "false", - "description": "Whether the request should enforce expansive access rules.", + "deprecated": true, + "description": "Deprecated: All requests use the expansive access rules.", "location": "query", "type": "boolean" }, @@ -2991,7 +3020,8 @@ "parameters": { "enforceExpansiveAccess": { "default": "false", - "description": "Whether the request should enforce expansive access rules.", + "deprecated": true, + "description": "Deprecated: All requests use the expansive access rules.", "location": "query", "type": "boolean" }, @@ -3893,7 +3923,7 @@ } } }, - "revision": "20260118", + "revision": "20260405", "rootUrl": "https://www.googleapis.com/", "schemas": { "About": { @@ -3943,7 +3973,8 @@ "type": "boolean" }, "domainSharingPolicy": { - "description": "The domain sharing policy for the current user. Possible values are: * `allowed` * `allowedWithWarning` * `incomingOnly` * `disallowed`", + "deprecated": true, + "description": "Deprecated: Does not granularly represent allowlisted domains or Trust Rules. The domain sharing policy for the current user. Possible values are: * `allowed` * `allowedWithWarning` * `incomingOnly` * `disallowed` Note that if the user is enrolled in Trust Rules, `disallowed` will always be returned. If sharing is restricted to allowlisted domains, either `incomingOnly` or `allowedWithWarning` will be returned, depending on whether receiving files from outside the allowlisted domains is permitted.", "type": "string" }, "driveThemes": { @@ -4560,6 +4591,21 @@ }, "type": "object" }, + "ClientEncryptionDetails": { + "description": "Details about the client-side encryption applied to the file.", + "id": "ClientEncryptionDetails", + "properties": { + "decryptionMetadata": { + "$ref": "DecryptionMetadata", + "description": "The metadata used for client-side operations." + }, + "encryptionState": { + "description": "The encryption state of the file. The values expected here are: - encrypted - unencrypted ", + "type": "string" + } + }, + "type": "object" + }, "Comment": { "description": "A comment on a file in Google Drive.", "id": "Comment", @@ -4800,6 +4846,42 @@ }, "type": "object" }, + "DecryptionMetadata": { + "description": "Representation of the CSE DecryptionMetadata.", + "id": "DecryptionMetadata", + "properties": { + "aes256GcmChunkSize": { + "description": "Chunk size used if content was encrypted with the AES 256 GCM Cipher. Possible values are: - default - small ", + "type": "string" + }, + "encryptionResourceKeyHash": { + "description": "The URL-safe Base64 encoded HMAC-SHA256 digest of the resource metadata with its DEK (Data Encryption Key); see https://developers.google.com/workspace/cse/reference", + "type": "string" + }, + "jwt": { + "description": "The signed JSON Web Token (JWT) which can be used to authorize the requesting user with the Key ACL Service (KACLS). The JWT asserts that the requesting user has at least read permissions on the file.", + "type": "string" + }, + "kaclsId": { + "description": "The ID of the KACLS (Key ACL Service) used to encrypt the file.", + "format": "int64", + "type": "string" + }, + "kaclsName": { + "description": "The name of the KACLS (Key ACL Service) used to encrypt the file.", + "type": "string" + }, + "keyFormat": { + "description": "Key format for the unwrapped key. Must be `tinkAesGcmKey`.", + "type": "string" + }, + "wrappedKey": { + "description": "The URL-safe Base64 encoded wrapped key used to encrypt the contents of the file.", + "type": "string" + } + }, + "type": "object" + }, "Drive": { "description": "Representation of a shared drive. Some resource methods (such as `drives.update`) require a `driveId`. Use the `drives.list` method to retrieve the ID for a shared drive.", "id": "Drive", @@ -5221,6 +5303,10 @@ }, "type": "object" }, + "clientEncryptionDetails": { + "$ref": "ClientEncryptionDetails", + "description": "Client Side Encryption related details. Contains details about the encryption state of the file and details regarding the encryption mechanism that clients need to use when decrypting the contents of this item. This will only be present on files and not on folders or shortcuts." + }, "contentRestrictions": { "description": "Restrictions for accessing the content of the file. Only populated if such a restriction exists.", "items": { @@ -5802,6 +5888,34 @@ }, "type": "object" }, + "GenerateCseTokenResponse": { + "description": "JWT and associated metadata used to generate CSE files.", + "id": "GenerateCseTokenResponse", + "properties": { + "currentKaclsId": { + "description": "The current Key ACL Service (KACLS) ID associated with the JWT.", + "format": "int64", + "type": "string" + }, + "currentKaclsName": { + "description": "Name of the KACLs that the returned KACLs ID points to.", + "type": "string" + }, + "fileId": { + "description": "The fileId for which the JWT was generated.", + "type": "string" + }, + "jwt": { + "description": "The signed JSON Web Token (JWT) for the file.", + "type": "string" + }, + "kind": { + "description": "Output only. Identifies what kind of resource this is. Value: the fixed string `\"drive#generateCseTokenResponse\"`.", + "type": "string" + } + }, + "type": "object" + }, "GeneratedIds": { "description": "A list of generated IDs which can be provided in insert requests", "id": "GeneratedIds", diff --git a/discovery/drive-v3.json b/discovery/drive-v3.json index afd2241af84..de063a16146 100644 --- a/discovery/drive-v3.json +++ b/discovery/drive-v3.json @@ -267,8 +267,152 @@ }, "approvals": { "methods": { + "approve": { + "description": "Approves an approval. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). This is used to update the ReviewerResponse of the requesting user with a Response of `APPROVED`. If this is the last required reviewer response, this also completes the approval and sets the approval Status to `APPROVED`.", + "flatPath": "files/{fileId}/approvals/{approvalId}:approve", + "httpMethod": "POST", + "id": "drive.approvals.approve", + "parameterOrder": [ + "fileId", + "approvalId" + ], + "parameters": { + "approvalId": { + "description": "Required. The ID of the approval to approve.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "Required. The ID of the file that the approval is on.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/approvals/{approvalId}:approve", + "request": { + "$ref": "ApproveApprovalRequest" + }, + "response": { + "$ref": "Approval" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata" + ] + }, + "cancel": { + "description": "Cancels an approval. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). Updates the approval Status to `CANCELLED`. This can be called by any user with the `writer` permission on the file while the approval Status is `IN_PROGRESS`.", + "flatPath": "files/{fileId}/approvals/{approvalId}:cancel", + "httpMethod": "POST", + "id": "drive.approvals.cancel", + "parameterOrder": [ + "fileId", + "approvalId" + ], + "parameters": { + "approvalId": { + "description": "Required. The ID of the approval to cancel.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "Required. The ID of the file that the approval is on.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/approvals/{approvalId}:cancel", + "request": { + "$ref": "CancelApprovalRequest" + }, + "response": { + "$ref": "Approval" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata" + ] + }, + "comment": { + "description": "Comments on an approval. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). This sends a notification to both the initiator and the reviewers. Additionally, a message is also added to the approval activity log.", + "flatPath": "files/{fileId}/approvals/{approvalId}:comment", + "httpMethod": "POST", + "id": "drive.approvals.comment", + "parameterOrder": [ + "fileId", + "approvalId" + ], + "parameters": { + "approvalId": { + "description": "Required. The ID of the approval to comment on.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "Required. The ID of the file that the approval is on.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/approvals/{approvalId}:comment", + "request": { + "$ref": "CommentApprovalRequest" + }, + "response": { + "$ref": "Approval" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata" + ] + }, + "decline": { + "description": "Declines an approval. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). This is used to update the ReviewerResponse of the requesting user with a Response of `DECLINED`. This also completes the approval and sets the approval Status to `DECLINED`.", + "flatPath": "files/{fileId}/approvals/{approvalId}:decline", + "httpMethod": "POST", + "id": "drive.approvals.decline", + "parameterOrder": [ + "fileId", + "approvalId" + ], + "parameters": { + "approvalId": { + "description": "Required. The ID of the approval to decline.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "Required. The ID of the file that the approval is on.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/approvals/{approvalId}:decline", + "request": { + "$ref": "DeclineApprovalRequest" + }, + "response": { + "$ref": "Approval" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata" + ] + }, "get": { - "description": "Gets an Approval by ID.", + "description": "Gets an approval by ID. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals).", "flatPath": "files/{fileId}/approvals/{approvalId}", "httpMethod": "GET", "id": "drive.approvals.get", @@ -278,13 +422,13 @@ ], "parameters": { "approvalId": { - "description": "Required. The ID of the Approval.", + "description": "Required. The ID of the approval.", "location": "path", "required": true, "type": "string" }, "fileId": { - "description": "Required. The ID of the file the Approval is on.", + "description": "Required. The ID of the file that the approval is on.", "location": "path", "required": true, "type": "string" @@ -304,7 +448,7 @@ ] }, "list": { - "description": "Lists the Approvals on a file.", + "description": "Lists the approvals on a file. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals).", "flatPath": "files/{fileId}/approvals", "httpMethod": "GET", "id": "drive.approvals.list", @@ -313,19 +457,19 @@ ], "parameters": { "fileId": { - "description": "Required. The ID of the file the Approval is on.", + "description": "Required. The ID of the file that the approval is on.", "location": "path", "required": true, "type": "string" }, "pageSize": { - "description": "The maximum number of Approvals to return. When not set, at most 100 Approvals will be returned.", + "description": "The maximum number of approvals to return. When not set, at most 100 approvals are returned.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The token for continuing a previous list request on the next page. This should be set to the value of nextPageToken from a previous response.", + "description": "The token for continuing a previous list request on the next page. This should be set to the value of `nextPageToken` from a previous response.", "location": "query", "type": "string" } @@ -342,6 +486,71 @@ "https://www.googleapis.com/auth/drive.metadata.readonly", "https://www.googleapis.com/auth/drive.readonly" ] + }, + "reassign": { + "description": "Reassigns the reviewers on an approval. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). Adds or replaces reviewers in the ReviewerResponse of the approval. This can be called by any user with the `writer` permission on the file while the approval Status is `IN_PROGRESS` and the Response for the reviewer being reassigned is `NO_RESPONSE`. A user with the `reader` permission can only reassign an approval that's assigned to themselves. Removing a reviewer isn't allowed.", + "flatPath": "files/{fileId}/approvals/{approvalId}:reassign", + "httpMethod": "POST", + "id": "drive.approvals.reassign", + "parameterOrder": [ + "fileId", + "approvalId" + ], + "parameters": { + "approvalId": { + "description": "Required. The ID of the approval to reassign.", + "location": "path", + "required": true, + "type": "string" + }, + "fileId": { + "description": "Required. The ID of the file that the approval is on.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/approvals/{approvalId}:reassign", + "request": { + "$ref": "ReassignApprovalRequest" + }, + "response": { + "$ref": "Approval" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata" + ] + }, + "start": { + "description": "Starts an approval on a file. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals).", + "flatPath": "files/{fileId}/approvals:start", + "httpMethod": "POST", + "id": "drive.approvals.start", + "parameterOrder": [ + "fileId" + ], + "parameters": { + "fileId": { + "description": "Required. The ID of the file that the approval is created on.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "files/{fileId}/approvals:start", + "request": { + "$ref": "StartApprovalRequest" + }, + "response": { + "$ref": "Approval" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata" + ] } } }, @@ -1024,7 +1233,7 @@ ] }, "list": { - "description": " Lists the user's shared drives. This method accepts the `q` parameter, which is a search query combining one or more search terms. For more information, see the [Search for shared drives](/workspace/drive/api/guides/search-shareddrives) guide.", + "description": " Lists the user's shared drives. This method accepts the `q` parameter, which is a search query combining one or more search terms. For more information, see the [Search for shared drives](https://developers.google.com/workspace/drive/api/guides/search-shareddrives) guide.", "flatPath": "drives", "httpMethod": "GET", "id": "drive.drives.list", @@ -1204,7 +1413,7 @@ ] }, "create": { - "description": " Creates a file. For more information, see [Create and manage files](/workspace/drive/api/guides/create-file). This method supports an */upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:* `*/*` (Specify a valid MIME type, rather than the literal `*/*` value. The literal `*/*` is only used to indicate that any valid MIME type can be uploaded. For more information, see [Google Workspace and Google Drive supported MIME types](/workspace/drive/api/guides/mime-types).) For more information on uploading files, see [Upload file data](/workspace/drive/api/guides/manage-uploads). Apps creating shortcuts with the `create` method must specify the MIME type `application/vnd.google-apps.shortcut`. Apps should specify a file extension in the `name` property when inserting files with the API. For example, an operation to insert a JPEG file should specify something like `\"name\": \"cat.jpg\"` in the metadata. Subsequent `GET` requests include the read-only `fileExtension` property populated with the extension originally specified in the `name` property. When a Google Drive user requests to download a file, or when the file is downloaded through the sync client, Drive builds a full filename (with extension) based on the name. In cases where the extension is missing, Drive attempts to determine the extension based on the file's MIME type.", + "description": " Creates a file. For more information, see [Create and manage files](https://developers.google.com/workspace/drive/api/guides/create-file). This method supports an */upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:* `*/*` (Specify a valid MIME type, rather than the literal `*/*` value. The literal `*/*` is only used to indicate that any valid MIME type can be uploaded. For more information, see [Google Workspace and Google Drive supported MIME types](https://developers.google.com/workspace/drive/api/guides/mime-types).) For more information on uploading files, see [Upload file data](https://developers.google.com/workspace/drive/api/guides/manage-uploads). Apps creating shortcuts with the `create` method must specify the MIME type `application/vnd.google-apps.shortcut`. Apps should specify a file extension in the `name` property when inserting files with the API. For example, an operation to insert a JPEG file should specify something like `\"name\": \"cat.jpg\"` in the metadata. Subsequent `GET` requests include the read-only `fileExtension` property populated with the extension originally specified in the `name` property. When a Google Drive user requests to download a file, or when the file is downloaded through the sync client, Drive builds a full filename (with extension) based on the name. In cases where the extension is missing, Drive attempts to determine the extension based on the file's MIME type.", "flatPath": "files", "httpMethod": "POST", "id": "drive.files.create", @@ -1431,6 +1640,32 @@ "supportsMediaDownload": true, "useMediaDownloadService": true }, + "generateCseToken": { + "description": "Generates a CSE token which can be used to create or update CSE files.", + "flatPath": "files/generateCseToken", + "httpMethod": "GET", + "id": "drive.files.generateCseToken", + "parameterOrder": [], + "parameters": { + "fileId": { + "description": "The ID of the file for which the JWT should be generated. If not provided, an id will be generated.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The ID of the expected parent of the file. Used when generating a JWT for a new CSE file. If specified, the parent will be fetched, and if the parent is a shared drive item, the shared drive's policy will be used to determine the KACLS that should be used. It is invalid to specify both file_id and parent in a single request.", + "location": "query", + "type": "string" + } + }, + "path": "files/generateCseToken", + "response": { + "$ref": "GenerateCseTokenResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive" + ] + }, "generateIds": { "description": "Generates a set of file IDs which can be provided in create or copy requests. For more information, see [Create and manage files](https://developers.google.com/workspace/drive/api/guides/create-file).", "flatPath": "files/generateIds", @@ -1471,7 +1706,7 @@ ] }, "get": { - "description": " Gets a file's metadata or content by ID. For more information, see [Search for files and folders](/workspace/drive/api/guides/search-files). If you provide the URL parameter `alt=media`, then the response includes the file contents in the response body. Downloading content with `alt=media` only works if the file is stored in Drive. To download Google Docs, Sheets, and Slides use [`files.export`](/workspace/drive/api/reference/rest/v3/files/export) instead. For more information, see [Download and export files](/workspace/drive/api/guides/manage-downloads).", + "description": " Gets a file's metadata or content by ID. For more information, see [Search for files and folders](https://developers.google.com/workspace/drive/api/guides/search-files). If you provide the URL parameter `alt=media`, then the response includes the file contents in the response body. Downloading content with `alt=media` only works if the file is stored in Drive. To download Google Docs, Sheets, and Slides use [`files.export`](https://developers.google.com/workspace/drive/api/reference/rest/v3/files/export) instead. For more information, see [Download and export files](https://developers.google.com/workspace/drive/api/guides/manage-downloads).", "flatPath": "files/{fileId}", "httpMethod": "GET", "id": "drive.files.get", @@ -1534,7 +1769,7 @@ "useMediaDownloadService": true }, "list": { - "description": " Lists the user's files. For more information, see [Search for files and folders](/workspace/drive/api/guides/search-files). This method accepts the `q` parameter, which is a search query combining one or more search terms. This method returns *all* files by default, including trashed files. If you don't want trashed files to appear in the list, use the `trashed=false` query parameter to remove trashed files from the results.", + "description": " Lists the user's files. For more information, see [Search for files and folders](https://developers.google.com/workspace/drive/api/guides/search-files). This method accepts the `q` parameter, which is a search query combining one or more search terms. This method returns *all* files by default, including trashed files. If you don't want trashed files to appear in the list, use the `trashed=false` query parameter to remove trashed files from the results.", "flatPath": "files", "httpMethod": "GET", "id": "drive.files.list", @@ -1588,13 +1823,13 @@ "type": "boolean" }, "orderBy": { - "description": "A comma-separated list of sort keys. Valid keys are: * `createdTime`: When the file was created. Avoid using this key for queries on large item collections as it might result in timeouts or other issues. For time-related sorting on large item collections, use `modifiedTime` instead. * `folder`: The folder ID. This field is sorted using alphabetical ordering. * `modifiedByMeTime`: The last time the file was modified by the user. * `modifiedTime`: The last time the file was modified by anyone. * `name`: The name of the file. This field is sorted using alphabetical ordering, so 1, 12, 2, 22. * `name_natural`: The name of the file. This field is sorted using natural sort ordering, so 1, 2, 12, 22. * `quotaBytesUsed`: The number of storage quota bytes used by the file. * `recency`: The most recent timestamp from the file's date-time fields. * `sharedWithMeTime`: When the file was shared with the user, if applicable. * `starred`: Whether the user has starred the file. * `viewedByMeTime`: The last time the file was viewed by the user. Each key sorts ascending by default, but can be reversed with the `desc` modifier. Example usage: `?orderBy=folder,modifiedTime desc,name`.", + "description": "A comma-separated list of sort keys. Valid keys are: * `createdTime`: When the file was created. Avoid using this key for queries on large item collections as it might result in timeouts or other issues. For time-related sorting on large item collections, use `modifiedTime desc` instead. * `folder`: The folder ID. This field is sorted using alphabetical ordering. * `modifiedByMeTime`: The last time the file was modified by the user. * `modifiedTime`: The last time the file was modified by anyone. * `name`: The name of the file. This field is sorted using alphabetical ordering, so 1, 12, 2, 22. * `name_natural`: The name of the file. This field is sorted using natural sort ordering, so 1, 2, 12, 22. * `quotaBytesUsed`: The number of storage quota bytes used by the file. * `recency`: The most recent timestamp from the file's date-time fields. * `sharedWithMeTime`: When the file was shared with the user, if applicable. * `starred`: Whether the user has starred the file. * `viewedByMeTime`: The last time the file was viewed by the user. Each key sorts ascending by default, but can be reversed with the `desc` modifier. Example usage: `?orderBy=folder,modifiedTime desc,name`.", "location": "query", "type": "string" }, "pageSize": { "default": "100", - "description": "The maximum number of files to return per page. Partial or empty result pages are possible even before the end of the files list has been reached.", + "description": "The maximum number of files to return per page. Pages may be partial or empty even before reaching the end of the file list. If unspecified, at most 100 files are returned for shared drives, and the entire list of files for non-shared drives. The maximum value is 100; values above 100 are changed to 100.", "format": "int32", "location": "query", "maximum": "1000", @@ -1725,7 +1960,7 @@ ] }, "update": { - "description": " Updates a file's metadata, content, or both. When calling this method, only populate fields in the request that you want to modify. When updating fields, some fields might be changed automatically, such as `modifiedDate`. This method supports patch semantics. This method supports an */upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:* `*/*` (Specify a valid MIME type, rather than the literal `*/*` value. The literal `*/*` is only used to indicate that any valid MIME type can be uploaded. For more information, see [Google Workspace and Google Drive supported MIME types](/workspace/drive/api/guides/mime-types).) For more information on uploading files, see [Upload file data](/workspace/drive/api/guides/manage-uploads).", + "description": " Updates a file's metadata, content, or both. When calling this method, only populate fields in the request that you want to modify. When updating fields, some fields might be changed automatically, such as `modifiedDate`. This method supports patch semantics. This method supports an */upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:* `*/*` (Specify a valid MIME type, rather than the literal `*/*` value. The literal `*/*` is only used to indicate that any valid MIME type can be uploaded. For more information, see [Google Workspace and Google Drive supported MIME types](https://developers.google.com/workspace/drive/api/guides/mime-types).) For more information on uploading files, see [Upload file data](https://developers.google.com/workspace/drive/api/guides/manage-uploads).", "flatPath": "files/{fileId}", "httpMethod": "PATCH", "id": "drive.files.update", @@ -1945,7 +2180,8 @@ }, "enforceExpansiveAccess": { "default": "false", - "description": "Whether the request should enforce expansive access rules.", + "deprecated": true, + "description": "Deprecated: All requests use the expansive access rules.", "location": "query", "type": "boolean" }, @@ -2023,7 +2259,8 @@ "parameters": { "enforceExpansiveAccess": { "default": "false", - "description": "Whether the request should enforce expansive access rules.", + "deprecated": true, + "description": "Deprecated: All requests use the expansive access rules.", "location": "query", "type": "boolean" }, @@ -2200,7 +2437,8 @@ "parameters": { "enforceExpansiveAccess": { "default": "false", - "description": "Whether the request should enforce expansive access rules.", + "deprecated": true, + "description": "Deprecated: All requests use the expansive access rules.", "location": "query", "type": "boolean" }, @@ -2800,7 +3038,7 @@ } } }, - "revision": "20260220", + "revision": "20260428", "rootUrl": "https://www.googleapis.com/", "schemas": { "About": { @@ -2998,6 +3236,17 @@ }, "type": "object" }, + "AddReviewer": { + "description": "Representation of a reviewer addition.", + "id": "AddReviewer", + "properties": { + "addedReviewerEmail": { + "description": "Required. The email of the reviewer to add.", + "type": "string" + } + }, + "type": "object" + }, "App": { "description": "The `apps` resource provides a list of apps that a user has installed, with information about each app's supported MIME types, file extensions, and other details. Some resource methods (such as `apps.get`) require an `appId`. Use the `apps.list` method to retrieve the ID for an installed application.", "id": "App", @@ -3167,11 +3416,11 @@ "type": "object" }, "Approval": { - "description": "Metadata for an approval. An approval is a review/approve process for a Drive item.", + "description": "Metadata for an approval. An approval is a review or approve process for a Drive item.", "id": "Approval", "properties": { "approvalId": { - "description": "The Approval ID.", + "description": "The approval ID.", "type": "string" }, "completeTime": { @@ -3193,7 +3442,7 @@ }, "initiator": { "$ref": "User", - "description": "The user that requested the Approval." + "description": "The user that requested the approval." }, "kind": { "description": "This is always drive#approval.", @@ -3206,7 +3455,7 @@ "type": "string" }, "reviewerResponses": { - "description": "The responses made on the Approval by reviewers.", + "description": "The responses made on the approval by reviewers.", "items": { "$ref": "ReviewerResponse" }, @@ -3222,7 +3471,7 @@ "DECLINED" ], "enumDescriptions": [ - "Approval status has not been set or was set to an invalid value.", + "The approval status has not been set or was set to an invalid value.", "The approval process has started and not finished.", "The approval process is finished and the target was approved.", "The approval process was cancelled before it finished.", @@ -3239,11 +3488,11 @@ "type": "object" }, "ApprovalList": { - "description": "The response of an Approvals list request.", + "description": "The response of an approvals list request.", "id": "ApprovalList", "properties": { "items": { - "description": "The list of Approvals. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.", + "description": "The list of approvals. If `nextPageToken` is populated, then this list may be incomplete and an additional page of results should be fetched.", "items": { "$ref": "Approval" }, @@ -3254,7 +3503,29 @@ "type": "string" }, "nextPageToken": { - "description": "The page token for the next page of Approvals. This will be absent if the end of the Approvals list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "description": "The page token for the next page of approvals. This is absent if the end of the approvals list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ApproveApprovalRequest": { + "description": "Request for approving an approval as a reviewer.", + "id": "ApproveApprovalRequest", + "properties": { + "message": { + "description": "Optional. A message to accompany the reviewer response on the approval. This message is included in notifications for the action and in the approval activity log.", + "type": "string" + } + }, + "type": "object" + }, + "CancelApprovalRequest": { + "description": "Request for cancelling an approval as an initiator.", + "id": "CancelApprovalRequest", + "properties": { + "message": { + "description": "Optional. A message to accompany the cancellation of the approval. This message is included in notifications for the action and in the approval activity log.", "type": "string" } }, @@ -3395,6 +3666,21 @@ }, "type": "object" }, + "ClientEncryptionDetails": { + "description": "Details about the client-side encryption applied to the file.", + "id": "ClientEncryptionDetails", + "properties": { + "decryptionMetadata": { + "$ref": "DecryptionMetadata", + "description": "The metadata used for client-side operations." + }, + "encryptionState": { + "description": "The encryption state of the file. The values expected here are: - encrypted - unencrypted ", + "type": "string" + } + }, + "type": "object" + }, "Comment": { "description": "A comment on a file. Some resource methods (such as `comments.update`) require a `commentId`. Use the `comments.list` method to retrieve the ID for a comment in a file.", "id": "Comment", @@ -3485,6 +3771,17 @@ }, "type": "object" }, + "CommentApprovalRequest": { + "description": "Request for commenting on an approval.", + "id": "CommentApprovalRequest", + "properties": { + "message": { + "description": "Required. A message to comment on the approval. This message is included in notifications for the action and in the approval activity log.", + "type": "string" + } + }, + "type": "object" + }, "CommentList": { "description": "A list of comments on a file.", "id": "CommentList", @@ -3544,6 +3841,53 @@ }, "type": "object" }, + "DeclineApprovalRequest": { + "description": "Request for declining an approval as a reviewer.", + "id": "DeclineApprovalRequest", + "properties": { + "message": { + "description": "Optional. A message to accompany the reviewer response on the approval. This message is included in notifications for the action and in the approval activity log.", + "type": "string" + } + }, + "type": "object" + }, + "DecryptionMetadata": { + "description": "Representation of the CSE DecryptionMetadata.", + "id": "DecryptionMetadata", + "properties": { + "aes256GcmChunkSize": { + "description": "Chunk size used if content was encrypted with the AES 256 GCM Cipher. Possible values are: - default - small ", + "type": "string" + }, + "encryptionResourceKeyHash": { + "description": "The URL-safe Base64 encoded HMAC-SHA256 digest of the resource metadata with its DEK (Data Encryption Key); see https://developers.google.com/workspace/cse/reference", + "type": "string" + }, + "jwt": { + "description": "The signed JSON Web Token (JWT) which can be used to authorize the requesting user with the Key ACL Service (KACLS). The JWT asserts that the requesting user has at least read permissions on the file.", + "type": "string" + }, + "kaclsId": { + "description": "The ID of the KACLS (Key ACL Service) used to encrypt the file.", + "format": "int64", + "type": "string" + }, + "kaclsName": { + "description": "The name of the KACLS (Key ACL Service) used to encrypt the file.", + "type": "string" + }, + "keyFormat": { + "description": "Key format for the unwrapped key. Must be `tinkAesGcmKey`.", + "type": "string" + }, + "wrappedKey": { + "description": "The URL-safe Base64 encoded wrapped key used to encrypt the contents of the file.", + "type": "string" + } + }, + "type": "object" + }, "DownloadRestriction": { "description": "A restriction for copy and download of the file.", "id": "DownloadRestriction", @@ -3553,7 +3897,7 @@ "type": "boolean" }, "restrictedForWriters": { - "description": "Whether download and copy is restricted for writers. If `true`, download is also restricted for readers.", + "description": "Whether download and copy is restricted for writers. If true, download is also restricted for readers.", "type": "boolean" } }, @@ -3974,6 +4318,10 @@ "description": "Output only. Whether the current user can modify the sharing settings for this file.", "type": "boolean" }, + "canStartApproval": { + "description": "Whether the current user can start an approval on the file.", + "type": "boolean" + }, "canTrash": { "description": "Output only. Whether the current user can move this file to trash.", "type": "boolean" @@ -3989,6 +4337,10 @@ }, "type": "object" }, + "clientEncryptionDetails": { + "$ref": "ClientEncryptionDetails", + "description": "Client Side Encryption related details. Contains details about the encryption state of the file and details regarding the encryption mechanism that clients need to use when decrypting the contents of this item. This will only be present on files and not on folders or shortcuts." + }, "contentHints": { "description": "Additional information about the content of the file. These fields are never populated in responses.", "properties": { @@ -4217,7 +4569,7 @@ "type": "string" }, "labelInfo": { - "description": "Output only. An overview of the labels on the file.", + "description": "Label information on the file.", "properties": { "labels": { "description": "Output only. The set of labels on the file as requested by the label IDs in the `includeLabels` parameter. By default, no labels are returned.", @@ -4347,7 +4699,7 @@ "description": "Output only. The user who shared the file with the requesting user, if applicable." }, "shortcutDetails": { - "description": "Shortcut file details. Only populated for shortcut files, which have the mimeType field set to `application/vnd.google-apps.shortcut`. Can only be set on `files.create` requests.", + "description": "Information about a shortcut file.", "properties": { "targetId": { "description": "The ID of the file that this shortcut points to. Can only be set on `files.create` requests.", @@ -4395,7 +4747,7 @@ "type": "string" }, "trashed": { - "description": "Whether the file has been trashed, either explicitly or from a trashed parent folder. Only the owner may trash a file, and other users cannot see files in the owner's trash.", + "description": "Whether the file has been trashed, either explicitly or from a trashed parent folder. Only the owner may trash a file, but other users can still access the file in the owner's trash until it's permanently deleted.", "type": "boolean" }, "trashedTime": { @@ -4489,6 +4841,34 @@ }, "type": "object" }, + "GenerateCseTokenResponse": { + "description": "JWT and associated metadata used to generate CSE files.", + "id": "GenerateCseTokenResponse", + "properties": { + "currentKaclsId": { + "description": "The current Key ACL Service (KACLS) ID associated with the JWT.", + "format": "int64", + "type": "string" + }, + "currentKaclsName": { + "description": "Name of the KACLs that the returned KACLs ID points to.", + "type": "string" + }, + "fileId": { + "description": "The fileId for which the JWT was generated.", + "type": "string" + }, + "jwt": { + "description": "The signed JSON Web Token (JWT) for the file.", + "type": "string" + }, + "kind": { + "description": "Output only. Identifies what kind of resource this is. Value: the fixed string `\"drive#generateCseTokenResponse\"`.", + "type": "string" + } + }, + "type": "object" + }, "GeneratedIds": { "description": "A list of generated file IDs which can be provided in create requests.", "id": "GeneratedIds", @@ -4809,11 +5189,13 @@ "type": "string" }, "domain": { - "description": "The domain to which this permission refers.", + "description": "Output only. The domain to which this permission refers.", + "readOnly": true, "type": "string" }, "emailAddress": { - "description": "The email address of the user or group to which this permission refers.", + "description": "Output only. The email address of the user or group to which this permission refers.", + "readOnly": true, "type": "string" }, "expirationTime": { @@ -4848,6 +5230,7 @@ }, "inheritedFrom": { "description": "Output only. The ID of the item from which this permission is inherited. This is only populated for items in shared drives.", + "readOnly": true, "type": "string" }, "permissionType": { @@ -4947,6 +5330,46 @@ }, "type": "object" }, + "ReassignApprovalRequest": { + "description": "Request for reassigning an approval. Reviewers can be added or replaced, but not removed.", + "id": "ReassignApprovalRequest", + "properties": { + "addReviewers": { + "description": "Optional. The list of reviewers to add.", + "items": { + "$ref": "AddReviewer" + }, + "type": "array" + }, + "message": { + "description": "Optional. A message to send to the new reviewers. This message is included in notifications for the action and in the approval activity log.", + "type": "string" + }, + "replaceReviewers": { + "description": "Optional. The list of reviewer replacements.", + "items": { + "$ref": "ReplaceReviewer" + }, + "type": "array" + } + }, + "type": "object" + }, + "ReplaceReviewer": { + "description": "Representation of a reviewer replacement.", + "id": "ReplaceReviewer", + "properties": { + "addedReviewerEmail": { + "description": "Required. The email of the reviewer to add.", + "type": "string" + }, + "removedReviewerEmail": { + "description": "Required. The email of the reviewer to remove.", + "type": "string" + } + }, + "type": "object" + }, "Reply": { "description": "A reply to a comment on a file. Some resource methods (such as `replies.update`) require a `replyId`. Use the `replies.list` method to retrieve the ID for a reply.", "id": "Reply", @@ -5071,7 +5494,7 @@ "type": "object" }, "ReviewerResponse": { - "description": "A response on an Approval made by a specific Reviewer.", + "description": "A response on an approval made by a specific reviewer.", "id": "ReviewerResponse", "properties": { "kind": { @@ -5079,7 +5502,7 @@ "type": "string" }, "response": { - "description": "A Reviewer’s Response for the Approval.", + "description": "A reviewer’s response for the approval.", "enum": [ "RESPONSE_UNSPECIFIED", "NO_RESPONSE", @@ -5087,16 +5510,16 @@ "DECLINED" ], "enumDescriptions": [ - "Response was set to an unrecognized value.", - "The reviewer has not yet responded", - "The Reviewer has approved the item.", - "The Reviewer has declined the item." + "The response was set to an unrecognized value.", + "The reviewer hasn't responded.", + "The reviewer has approved the item.", + "The reviewer has declined the item." ], "type": "string" }, "reviewer": { "$ref": "User", - "description": "The user that is responsible for this response." + "description": "The user that's responsible for this response." } }, "type": "object" @@ -5193,6 +5616,33 @@ }, "type": "object" }, + "StartApprovalRequest": { + "description": "Allows creating an approval on a file.", + "id": "StartApprovalRequest", + "properties": { + "dueTime": { + "description": "Optional. The time that the approval is due.", + "format": "google-datetime", + "type": "string" + }, + "lockFile": { + "description": "Optional. Whether to lock the file when starting the approval.", + "type": "boolean" + }, + "message": { + "description": "Optional. A message to send to reviewers when notifying them of the approval request.", + "type": "string" + }, + "reviewerEmails": { + "description": "Required. The emails of the users who are set to review the approval.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "StartPageToken": { "id": "StartPageToken", "properties": { @@ -5236,11 +5686,11 @@ "type": "object" }, "TeamDrive": { - "description": "Deprecated: use the drive collection instead.", + "description": "Deprecated: use the drive collection instead. Next ID: 33", "id": "TeamDrive", "properties": { "backgroundImageFile": { - "description": "An image file and cropping parameters from which a background image for this Team Drive is set. This is a write only field; it can only be set on `drive.teamdrives.update` requests that don't set `themeId`. When specified, all fields of the `backgroundImageFile` must be set.", + "description": "The background image file for a Team Drive.", "properties": { "id": { "description": "The ID of an image file in Drive to use for the background image.", @@ -5284,7 +5734,8 @@ "type": "boolean" }, "canChangeDownloadRestriction": { - "description": "Whether the current user can change organizer-applied download restrictions of this shared drive.", + "description": "Output only. Whether the current user can change organizer-applied download restrictions of this shared drive.", + "readOnly": true, "type": "boolean" }, "canChangeSharingFoldersRequiresOrganizerPermissionRestriction": { diff --git a/discovery/essentialcontacts-v1.json b/discovery/essentialcontacts-v1.json index fad3b1fae12..71350f56e6f 100644 --- a/discovery/essentialcontacts-v1.json +++ b/discovery/essentialcontacts-v1.json @@ -158,7 +158,7 @@ "type": "string" }, "parent": { - "description": "Required. The name of the resource to compute contacts for. Format: organizations/{organization_id}, folders/{folder_id} or projects/{project_id}", + "description": "Required. The name of the resource to compute contacts for. Format: organizations/{organization}, folders/{folder} or projects/{project} (where {project} is the project number)", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -183,7 +183,7 @@ ], "parameters": { "parent": { - "description": "Required. The resource to save this contact for. Format: organizations/{organization_id}, folders/{folder_id} or projects/{project_id}", + "description": "Required. The resource to save this contact for. Format: organizations/{organization}, folders/{folder} or projects/{project} (where {project} is the project number)", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -211,7 +211,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the contact to delete. Format: organizations/{organization_id}/contacts/{contact_id}, folders/{folder_id}/contacts/{contact_id} or projects/{project_id}/contacts/{contact_id}", + "description": "Required. The name of the contact to delete. Format: organizations/{organization}/contacts/{contact}, folders/{folder}/contacts/{contact} or projects/{project}/contacts/{contact} (where {project} is the project number)", "location": "path", "pattern": "^folders/[^/]+/contacts/[^/]+$", "required": true, @@ -236,7 +236,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the contact to retrieve. Format: organizations/{organization_id}/contacts/{contact_id}, folders/{folder_id}/contacts/{contact_id} or projects/{project_id}/contacts/{contact_id}", + "description": "Required. The name of the contact to retrieve. Format: organizations/{organization}/contacts/{contact}, folders/{folder}/contacts/{contact} or projects/{project}/contacts/{contact} (where {project} is the project number)", "location": "path", "pattern": "^folders/[^/]+/contacts/[^/]+$", "required": true, @@ -272,7 +272,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent resource name. Format: organizations/{organization_id}, folders/{folder_id} or projects/{project_id}", + "description": "Required. The parent resource name. Format: organizations/{organization}, folders/{folder} or projects/{project} (where {project} is the project number)", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -331,7 +331,7 @@ ], "parameters": { "resource": { - "description": "Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization_id}, folders/{folder_id} or projects/{project_id}", + "description": "Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization}, folders/{folder} or projects/{project} (where {project} is the project number)", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -406,7 +406,7 @@ "type": "string" }, "parent": { - "description": "Required. The name of the resource to compute contacts for. Format: organizations/{organization_id}, folders/{folder_id} or projects/{project_id}", + "description": "Required. The name of the resource to compute contacts for. Format: organizations/{organization}, folders/{folder} or projects/{project} (where {project} is the project number)", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -431,7 +431,7 @@ ], "parameters": { "parent": { - "description": "Required. The resource to save this contact for. Format: organizations/{organization_id}, folders/{folder_id} or projects/{project_id}", + "description": "Required. The resource to save this contact for. Format: organizations/{organization}, folders/{folder} or projects/{project} (where {project} is the project number)", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -459,7 +459,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the contact to delete. Format: organizations/{organization_id}/contacts/{contact_id}, folders/{folder_id}/contacts/{contact_id} or projects/{project_id}/contacts/{contact_id}", + "description": "Required. The name of the contact to delete. Format: organizations/{organization}/contacts/{contact}, folders/{folder}/contacts/{contact} or projects/{project}/contacts/{contact} (where {project} is the project number)", "location": "path", "pattern": "^organizations/[^/]+/contacts/[^/]+$", "required": true, @@ -484,7 +484,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the contact to retrieve. Format: organizations/{organization_id}/contacts/{contact_id}, folders/{folder_id}/contacts/{contact_id} or projects/{project_id}/contacts/{contact_id}", + "description": "Required. The name of the contact to retrieve. Format: organizations/{organization}/contacts/{contact}, folders/{folder}/contacts/{contact} or projects/{project}/contacts/{contact} (where {project} is the project number)", "location": "path", "pattern": "^organizations/[^/]+/contacts/[^/]+$", "required": true, @@ -520,7 +520,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent resource name. Format: organizations/{organization_id}, folders/{folder_id} or projects/{project_id}", + "description": "Required. The parent resource name. Format: organizations/{organization}, folders/{folder} or projects/{project} (where {project} is the project number)", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -579,7 +579,7 @@ ], "parameters": { "resource": { - "description": "Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization_id}, folders/{folder_id} or projects/{project_id}", + "description": "Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization}, folders/{folder} or projects/{project} (where {project} is the project number)", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -654,7 +654,7 @@ "type": "string" }, "parent": { - "description": "Required. The name of the resource to compute contacts for. Format: organizations/{organization_id}, folders/{folder_id} or projects/{project_id}", + "description": "Required. The name of the resource to compute contacts for. Format: organizations/{organization}, folders/{folder} or projects/{project} (where {project} is the project number)", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -679,7 +679,7 @@ ], "parameters": { "parent": { - "description": "Required. The resource to save this contact for. Format: organizations/{organization_id}, folders/{folder_id} or projects/{project_id}", + "description": "Required. The resource to save this contact for. Format: organizations/{organization}, folders/{folder} or projects/{project} (where {project} is the project number)", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -707,7 +707,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the contact to delete. Format: organizations/{organization_id}/contacts/{contact_id}, folders/{folder_id}/contacts/{contact_id} or projects/{project_id}/contacts/{contact_id}", + "description": "Required. The name of the contact to delete. Format: organizations/{organization}/contacts/{contact}, folders/{folder}/contacts/{contact} or projects/{project}/contacts/{contact} (where {project} is the project number)", "location": "path", "pattern": "^projects/[^/]+/contacts/[^/]+$", "required": true, @@ -732,7 +732,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the contact to retrieve. Format: organizations/{organization_id}/contacts/{contact_id}, folders/{folder_id}/contacts/{contact_id} or projects/{project_id}/contacts/{contact_id}", + "description": "Required. The name of the contact to retrieve. Format: organizations/{organization}/contacts/{contact}, folders/{folder}/contacts/{contact} or projects/{project}/contacts/{contact} (where {project} is the project number)", "location": "path", "pattern": "^projects/[^/]+/contacts/[^/]+$", "required": true, @@ -768,7 +768,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent resource name. Format: organizations/{organization_id}, folders/{folder_id} or projects/{project_id}", + "description": "Required. The parent resource name. Format: organizations/{organization}, folders/{folder} or projects/{project} (where {project} is the project number)", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -827,7 +827,7 @@ ], "parameters": { "resource": { - "description": "Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization_id}, folders/{folder_id} or projects/{project_id}", + "description": "Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization}, folders/{folder} or projects/{project} (where {project} is the project number)", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -850,7 +850,7 @@ } } }, - "revision": "20250522", + "revision": "20260319", "rootUrl": "https://essentialcontacts.googleapis.com/", "schemas": { "GoogleCloudEssentialcontactsV1ComputeContactsResponse": { @@ -964,7 +964,7 @@ "id": "GoogleCloudEssentialcontactsV1SendTestMessageRequest", "properties": { "contacts": { - "description": "Required. The list of names of the contacts to send a test message to. Format: organizations/{organization_id}/contacts/{contact_id}, folders/{folder_id}/contacts/{contact_id} or projects/{project_id}/contacts/{contact_id}", + "description": "Required. The list of names of the contacts to send a test message to. Format: organizations/{organization}/contacts/{contact}, folders/{folder}/contacts/{contact} or projects/{project}/contacts/{contact} (where {project} is the project number)", "items": { "type": "string" }, diff --git a/discovery/eventarc-v1.json b/discovery/eventarc-v1.json index f5ff14b674b..19fe5e41c63 100644 --- a/discovery/eventarc-v1.json +++ b/discovery/eventarc-v1.json @@ -407,7 +407,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "eventarc.projects.locations.list", @@ -416,7 +416,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2627,7 +2627,7 @@ } } }, - "revision": "20260206", + "revision": "20260424", "rootUrl": "https://eventarc.googleapis.com/", "schemas": { "AuditConfig": { diff --git a/discovery/fcm-v1.json b/discovery/fcm-v1.json index e04d3686b8c..af8663d88cb 100644 --- a/discovery/fcm-v1.json +++ b/discovery/fcm-v1.json @@ -146,7 +146,7 @@ } } }, - "revision": "20260130", + "revision": "20260306", "rootUrl": "https://fcm.googleapis.com/", "schemas": { "AndroidConfig": { @@ -181,7 +181,7 @@ "description": "Notification to send to android devices." }, "priority": { - "description": "Message priority. Can take \"normal\" and \"high\" values. For more information, see [Setting the priority of a message](https://goo.gl/GjONJv).", + "description": "Message priority. Can take \"normal\" and \"high\" values. For more information, see [Setting the priority of a message](https://firebase.google.com/docs/cloud-messaging/customize-messages/setting-message-priority).", "enum": [ "NORMAL", "HIGH" @@ -238,11 +238,6 @@ "description": "The key to the body string in the app's string resources to use to localize the body text to the user's current localization. See [String Resources](https://goo.gl/NdFZGI) for more information.", "type": "string" }, - "bypassProxyNotification": { - "deprecated": true, - "description": "If set, display notifications delivered to the device will be handled by the app instead of the proxy.", - "type": "boolean" - }, "channelId": { "description": "The [notification's channel id](https://developer.android.com/guide/topics/ui/notifiers/notifications#ManageChannels) (new in Android O). The app must create a channel with this channel ID before any notification with this channel ID is received. If you don't send this channel ID in the request, or if the channel ID provided has not yet been created by the app, FCM uses the channel ID specified in the app manifest.", "type": "string" @@ -294,7 +289,7 @@ "type": "integer" }, "notificationPriority": { - "description": "Set the relative priority for this notification. Priority is an indication of how much of the user's attention should be consumed by this notification. Low-priority notifications may be hidden from the user in certain situations, while the user might be interrupted for a higher-priority notification. The effect of setting the same priorities may differ slightly on different platforms. Note this priority differs from `AndroidMessagePriority`. This priority is processed by the client after the message has been delivered, whereas [AndroidMessagePriority](https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#androidmessagepriority) is an FCM concept that controls when the message is delivered.", + "description": "Set the relative priority for this notification. Priority is an indication of how much of the user's attention should be consumed by this notification. Low-priority notifications may be hidden from the user in certain situations, while the user might be interrupted for a higher-priority notification. This parameter affects notification priority only on devices running Android 7.1 (API level 25) and lower. On Android 8.0 (API level 26) and higher, priority is ignored in favor of channel [importance](https://developer.android.com/develop/ui/views/notifications/channels#importance). Note this priority differs from `AndroidMessagePriority`. This priority is processed by the client after the message has been delivered, whereas [AndroidMessagePriority](https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#androidmessagepriority) is an FCM concept that controls when the message is delivered.", "enum": [ "PRIORITY_UNSPECIFIED", "PRIORITY_MIN", diff --git a/discovery/file-v1.json b/discovery/file-v1.json index f84db7a0ab9..653e093e0a3 100644 --- a/discovery/file-v1.json +++ b/discovery/file-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "file.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -969,7 +969,7 @@ } } }, - "revision": "20260201", + "revision": "20260422", "rootUrl": "https://file.googleapis.com/", "schemas": { "Backup": { @@ -1216,7 +1216,7 @@ "type": "string" }, "sourceBackupdrBackup": { - "description": "The resource name of the BackupDR backup, in the format `projects/{project_id}/locations/{location_id}/backupVaults/{backupvault_id}/dataSources/{datasource_id}/backups/{backup_id}`, TODO (b/443690479) - Remove visibility restrictions once the feature is ready", + "description": "The resource name of the BackupDR backup, in the format `projects/{project_id}/locations/{location_id}/backupVaults/{backupvault_id}/dataSources/{datasource_id}/backups/{backup_id}`,", "type": "string" } }, diff --git a/discovery/file-v1beta1.json b/discovery/file-v1beta1.json index f503d25fe7f..3e9cb568ac7 100644 --- a/discovery/file-v1beta1.json +++ b/discovery/file-v1beta1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "file.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1136,7 +1136,7 @@ } } }, - "revision": "20260201", + "revision": "20260422", "rootUrl": "https://file.googleapis.com/", "schemas": { "Backup": { @@ -1387,7 +1387,7 @@ "type": "string" }, "sourceBackupdrBackup": { - "description": "The resource name of the BackupDR backup, in the format `projects/{project_id}/locations/{location_id}/backupVaults/{backupvault_id}/dataSources/{datasource_id}/backups/{backup_id}`, TODO (b/443690479) - Remove visibility restrictions once the feature is ready", + "description": "The resource name of the BackupDR backup, in the format `projects/{project_id}/locations/{location_id}/backupVaults/{backupvault_id}/dataSources/{datasource_id}/backups/{backup_id}`,", "type": "string" } }, diff --git a/discovery/firebaseappcheck-v1.json b/discovery/firebaseappcheck-v1.json index 25c705217cf..e0728f83439 100644 --- a/discovery/firebaseappcheck-v1.json +++ b/discovery/firebaseappcheck-v1.json @@ -721,6 +721,11 @@ "name" ], "parameters": { + "etag": { + "description": "Optional. The checksum to be validated against the current DebugToken, to ensure the client has an up-to-date value before proceeding. This checksum is computed by the server based on the values of fields in the DebugToken object, and can be obtained from the DebugToken object received from the last CreateDebugToken, GetDebugToken, ListDebugTokens, or UpdateDebugToken call. This etag is strongly validated as defined by RFC 7232.", + "location": "query", + "type": "string" + }, "name": { "description": "Required. The relative resource name of the DebugToken to delete, in the format: ``` projects/{project_number}/apps/{app_id}/debugTokens/{debug_token_id} ```", "location": "path", @@ -1661,7 +1666,7 @@ } } }, - "revision": "20260207", + "revision": "20260403", "rootUrl": "https://firebaseappcheck.googleapis.com/", "schemas": { "GoogleFirebaseAppcheckV1AppAttestConfig": { @@ -1855,6 +1860,10 @@ "description": "Required. A human readable display name used to identify this debug token.", "type": "string" }, + "etag": { + "description": "Optional. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. This etag is strongly validated as defined by RFC 7232.", + "type": "string" + }, "name": { "description": "Required. The relative resource name of the debug token, in the format: ``` projects/{project_number}/apps/{app_id}/debugTokens/{debug_token_id} ```", "type": "string" @@ -2430,9 +2439,33 @@ ], "type": "string" }, + "etag": { + "description": "Optional. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. This etag is strongly validated as defined by RFC 7232.", + "type": "string" + }, "name": { "description": "Required. The relative resource name of the service configuration object, in the format: ``` projects/{project_number}/services/{service_id} ``` Note that the `service_id` element must be a supported service ID. Currently, the following service IDs are supported: * `firebasestorage.googleapis.com` (Cloud Storage for Firebase) * `firebasedatabase.googleapis.com` (Firebase Realtime Database) * `firestore.googleapis.com` (Cloud Firestore) * `oauth2.googleapis.com` (Google Identity for iOS)", "type": "string" + }, + "replayProtection": { + "description": "Optional. The replay protection enforcement mode for this service. Note that this field cannot be set to a level higher than the overall App Check enforcement mode. For example, if the overall App Check enforcement mode is set to `UNENFORCED`, this field cannot be set to `ENFORCED`. In order to enforce replay protection, you must first enforce App Check. An HTTP 400 error will be returned in this case. By default, this field is set to `OFF`. Setting this field to `UNENFORCED` or `ENFORCED` is considered opting into replay protection. Once opted in, requests to your protected services may experience higher latency. To opt out of replay protection after opting in, set this field to `OFF`.", + "enum": [ + "OFF", + "UNENFORCED", + "ENFORCED" + ], + "enumDescriptions": [ + "The relevant App Check protection is not enforced for the service or resource, nor are App Check metrics collected. Though the relevant App Check protection is not applied, other applicable protections, such as user authorization, are still enforced. An unconfigured protection is in this mode by default.", + "The relevant App Check protection is not enforced for the service or resource. App Check metrics are collected to help you decide when to turn on enforcement. These metrics will show the portion of traffic that is deemed invalid by the relevant App Check protection, but that traffic will not be rejected until you turn on enforcement. Though the relevant App Check protection is not enforced, other applicable protections, such as user authorization, are still enforced. Some services require certain conditions to be met before they will work with App Check, such as requiring you to upgrade to a specific service tier. Until those requirements are met for a service, this `UNENFORCED` setting will have no effect and App Check will not work with that service.", + "The relevant App Check protection is enforced for the service or resource. The service or resource will reject any traffic not accompanied by an App Check token that is deemded valid by the relevant protection. There are some exceptions depending on the service; for example, some services will still allow requests bearing the developer's privileged service account credentials without an App Check token. App Check metrics continue to be collected to help you detect issues with your App Check integration and monitor the composition of your callers. While the service is protected by App Check, other applicable protections, such as user authorization, continue to be enforced at the same time. Use caution when choosing to enforce App Check protections. If your users have not updated to a version of your app that meets the requirements of the relevant App Check protection, their app may stop working. App Check metrics can help you decide whether to enforce App Check on your services and resources. If your app has not launched yet, you should enable enforcement as soon as you verify that your App Check implementation is correct, since there are no outdated clients in use. Some services require certain conditions to be met before they will work with App Check, such as requiring you to upgrade to a specific service tier. Until those requirements are met for a service, this `ENFORCED` setting will have no effect and App Check will not work with that service." + ], + "type": "string" + }, + "updateTime": { + "description": "Output only. Timestamp when this service configuration object was most recently updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" } }, "type": "object" diff --git a/discovery/firebaseappcheck-v1beta.json b/discovery/firebaseappcheck-v1beta.json index d27992fc8db..ebe24839556 100644 --- a/discovery/firebaseappcheck-v1beta.json +++ b/discovery/firebaseappcheck-v1beta.json @@ -782,6 +782,11 @@ "name" ], "parameters": { + "etag": { + "description": "Optional. The checksum to be validated against the current DebugToken, to ensure the client has an up-to-date value before proceeding. This checksum is computed by the server based on the values of fields in the DebugToken object, and can be obtained from the DebugToken object received from the last CreateDebugToken, GetDebugToken, ListDebugTokens, or UpdateDebugToken call. This etag is strongly validated as defined by RFC 7232.", + "location": "query", + "type": "string" + }, "name": { "description": "Required. The relative resource name of the DebugToken to delete, in the format: ``` projects/{project_number}/apps/{app_id}/debugTokens/{debug_token_id} ```", "location": "path", @@ -1823,7 +1828,7 @@ } } }, - "revision": "20260207", + "revision": "20260403", "rootUrl": "https://firebaseappcheck.googleapis.com/", "schemas": { "GoogleFirebaseAppcheckV1betaAppAttestConfig": { @@ -2054,6 +2059,10 @@ "description": "Required. A human readable display name used to identify this debug token.", "type": "string" }, + "etag": { + "description": "Optional. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. This etag is strongly validated as defined by RFC 7232.", + "type": "string" + }, "name": { "description": "Required. The relative resource name of the debug token, in the format: ``` projects/{project_number}/apps/{app_id}/debugTokens/{debug_token_id} ```", "type": "string" @@ -2689,6 +2698,20 @@ "description": "Required. The relative resource name of the service configuration object, in the format: ``` projects/{project_number}/services/{service_id} ``` Note that the `service_id` element must be a supported service ID. Currently, the following service IDs are supported: * `firebasestorage.googleapis.com` (Cloud Storage for Firebase) * `firebasedatabase.googleapis.com` (Firebase Realtime Database) * `firestore.googleapis.com` (Cloud Firestore) * `identitytoolkit.googleapis.com` (Firebase Authentication with Identity Platform) * `oauth2.googleapis.com` (Google Identity for iOS)", "type": "string" }, + "replayProtection": { + "description": "Optional. The replay protection enforcement mode for this service. Note that this field cannot be set to a level higher than the overall App Check enforcement mode. For example, if the overall App Check enforcement mode is set to `UNENFORCED`, this field cannot be set to `ENFORCED`. In order to enforce replay protection, you must first enforce App Check. An HTTP 400 error will be returned in this case. By default, this field is set to `OFF`. Setting this field to `UNENFORCED` or `ENFORCED` is considered opting into replay protection. Once opted in, requests to your protected services may experience higher latency. To opt out of replay protection after opting in, set this field to `OFF`.", + "enum": [ + "OFF", + "UNENFORCED", + "ENFORCED" + ], + "enumDescriptions": [ + "The relevant App Check protection is not enforced for the service or resource, nor are App Check metrics collected. Though the relevant App Check protection is not applied, other applicable protections, such as user authorization, are still enforced. An unconfigured protection is in this mode by default.", + "The relevant App Check protection is not enforced for the service or resource. App Check metrics are collected to help you decide when to turn on enforcement. These metrics will show the portion of traffic that is deemed invalid by the relevant App Check protection, but that traffic will not be rejected until you turn on enforcement. Though the relevant App Check protection is not enforced, other applicable protections, such as user authorization, are still enforced. Some services require certain conditions to be met before they will work with App Check, such as requiring you to upgrade to a specific service tier. Until those requirements are met for a service, this `UNENFORCED` setting will have no effect and App Check will not work with that service.", + "The relevant App Check protection is enforced for the service or resource. The service or resource will reject any traffic not accompanied by an App Check token that is deemded valid by the relevant protection. There are some exceptions depending on the service; for example, some services will still allow requests bearing the developer's privileged service account credentials without an App Check token. App Check metrics continue to be collected to help you detect issues with your App Check integration and monitor the composition of your callers. While the service is protected by App Check, other applicable protections, such as user authorization, continue to be enforced at the same time. Use caution when choosing to enforce App Check protections. If your users have not updated to a version of your app that meets the requirements of the relevant App Check protection, their app may stop working. App Check metrics can help you decide whether to enforce App Check on your services and resources. If your app has not launched yet, you should enable enforcement as soon as you verify that your App Check implementation is correct, since there are no outdated clients in use. Some services require certain conditions to be met before they will work with App Check, such as requiring you to upgrade to a specific service tier. Until those requirements are met for a service, this `ENFORCED` setting will have no effect and App Check will not work with that service." + ], + "type": "string" + }, "updateTime": { "description": "Output only. Timestamp when this service configuration object was most recently updated.", "format": "google-datetime", diff --git a/discovery/firebaseappdistribution-v1.json b/discovery/firebaseappdistribution-v1.json index 02b9fc0872c..edfeb5565b7 100644 --- a/discovery/firebaseappdistribution-v1.json +++ b/discovery/firebaseappdistribution-v1.json @@ -946,7 +946,7 @@ } } }, - "revision": "20260113", + "revision": "20260430", "rootUrl": "https://firebaseappdistribution.googleapis.com/", "schemas": { "GdataBlobstore2Info": { @@ -1078,6 +1078,10 @@ "description": "The content type of the file derived from the file extension of the original file name used by the client.", "type": "string" }, + "fromFusionId": { + "description": "The content type of the file detected by Fusion ID. go/fusionid", + "type": "string" + }, "fromHeader": { "description": "The content type of the file as specified in the request headers, multipart headers, or RUPIO start request.", "type": "string" @@ -1085,6 +1089,11 @@ "fromUrlPath": { "description": "The content type of the file derived from the file extension of the URL path. The URL path is assumed to represent a file name (which is typically only true for agents that are providing a REST API).", "type": "string" + }, + "fusionIdDetectionMetadata": { + "description": "Metadata information from Fusion ID detection. Serialized FusionIdDetectionMetadata proto. Only set if from_fusion_id is set.", + "format": "byte", + "type": "string" } }, "type": "object" @@ -1402,16 +1411,20 @@ "NO_APP_WITH_GIVEN_BUNDLE_ID_IN_PLAY_ACCOUNT", "APP_NOT_PUBLISHED", "AAB_STATE_UNAVAILABLE", - "PLAY_IAS_TERMS_NOT_ACCEPTED" + "PLAY_IAS_TERMS_NOT_ACCEPTED", + "ADHOC_SHARING_KEY_NOT_GENERATED", + "ADHOC_SHARING_KEY_NOT_REGISTERED" ], "enumDescriptions": [ - "Aab integration state unspecified", - "App can receive app bundle uploads", - "Firebase project is not linked to a Play developer account", - "There is no app in linked Play developer account with the same bundle id", - "The app in Play developer account is not in a published state", - "Play App status is unavailable", - "Play IAS terms not accepted" + "AAB integration state unspecified.", + "App can receive app bundle uploads.", + "Firebase project is not linked to a Play developer account.", + "There is no app in the linked Play developer account with the same bundle ID.", + "The app in the Play developer account is not in a published state.", + "Play App status is unavailable.", + "Play in-app sharing terms not accepted.", + "The ad-hoc sharing key has not been generated for this app.", + "The ad-hoc sharing key is not yet registered in ADI for this app." ], "type": "string" }, diff --git a/discovery/firebaseappdistribution-v1alpha.json b/discovery/firebaseappdistribution-v1alpha.json index 1945f05b571..1531034b06a 100644 --- a/discovery/firebaseappdistribution-v1alpha.json +++ b/discovery/firebaseappdistribution-v1alpha.json @@ -868,7 +868,7 @@ } } }, - "revision": "20251203", + "revision": "20260504", "rootUrl": "https://firebaseappdistribution.googleapis.com/", "schemas": { "AndroidxCrawlerOutputPoint": { @@ -1060,7 +1060,7 @@ "type": "string" }, "successCriteria": { - "description": "Optional. A description of criteria the agent should use to determine if the goal has been successfully completed", + "description": "Optional. A visual description of the screen's expected state after the step has been successfully completed. This is referred to as the \"final screen assertion\" in the Firebase console and CLI tools. This field must be provided for the last step in a test case, and is optional for all other steps.", "type": "string" }, "testCase": { @@ -1516,6 +1516,26 @@ "description": "Output only. A tap action.", "readOnly": true }, + "targetFoldedState": { + "description": "Output only. The target folded state of the device in a set folded state action. The valid string values are device-dependent, and can be found using `adb shell cmd device_state print-states`.", + "readOnly": true, + "type": "string" + }, + "targetOrientation": { + "description": "Output only. The target orientation of the device in a set orientation action.", + "enum": [ + "ORIENTATION_UNSPECIFIED", + "PORTRAIT", + "LANDSCAPE" + ], + "enumDescriptions": [ + "Orientation unspecified.", + "Portrait orientation.", + "Landscape orientation." + ], + "readOnly": true, + "type": "string" + }, "textInput": { "description": "Output only. A text input action, that types some text into whatever field is currently focused, if any. Unlike `enter_text` this action requires that the field be brought into focus first, for example by emitting a tap action before this one.", "readOnly": true, @@ -1690,7 +1710,8 @@ "AAB_DEVELOPER_ACCOUNT_NOT_LINKED", "AAB_NO_APP_WITH_GIVEN_PACKAGE_NAME_IN_ACCOUNT", "AAB_UPLOAD_ERROR", - "APP_NOT_FOUND" + "APP_NOT_FOUND", + "AAB_ADHOC_SHARING_KEY_NOT_REGISTERED" ], "enumDescriptions": [ "", @@ -1715,7 +1736,8 @@ "", "", "", - "Happens if the Firebase app no longer exists by the time of extraction" + "Happens if the Firebase app no longer exists by the time of extraction", + "" ], "type": "string" }, @@ -2017,6 +2039,10 @@ "description": "The name of the release test resource. Format: `projects/{project_number}/apps/{app}/releases/{release}/tests/{test}`", "type": "string" }, + "resultsBucket": { + "description": "Optional. Input only. The custom Cloud Storage bucket where test results are stored. Format: `projects/{project_number}/buckets/{bucket}` If not provided, the default test lab bucket is used.", + "type": "string" + }, "testCase": { "description": "Optional. The test case that was used to generate this release test. Note: The test case may have changed or been deleted since the release test was created. Format: `projects/{project_number}/apps/{app}/testCases/{test_case}`", "type": "string" @@ -2188,6 +2214,10 @@ "description": "Identifier. The name of the test configuration resource. Format: `projects/{project_number}/apps/{app}/testConfig`", "type": "string" }, + "resultsBucket": { + "description": "Optional. The custom Cloud Storage bucket where test results are stored. Format: `projects/{project_number}/buckets/{bucket}` If not provided, the default test lab bucket is used.", + "type": "string" + }, "roboCrawler": { "$ref": "GoogleFirebaseAppdistroV1alphaRoboCrawler", "description": "Optional. Configuration for Robo crawler" diff --git a/discovery/firebaseapphosting-v1.json b/discovery/firebaseapphosting-v1.json index 7f2d252d1b4..aa4ebf9b133 100644 --- a/discovery/firebaseapphosting-v1.json +++ b/discovery/firebaseapphosting-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "firebaseapphosting.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1106,7 +1106,7 @@ } } }, - "revision": "20260219", + "revision": "20260423", "rootUrl": "https://firebaseapphosting.googleapis.com/", "schemas": { "ArchiveSource": { @@ -1339,7 +1339,8 @@ "DEPLOYING", "READY", "FAILED", - "SKIPPED" + "SKIPPED", + "EXPIRED" ], "enumDescriptions": [ "The build is in an unknown state.", @@ -1348,7 +1349,8 @@ "The infrastructure for this build is being set up.", "The infrastructure for this build is ready. The build may or may not be serving traffic - see `Backend.traffic` for the current state, or `Backend.traffic_statuses` for the desired state.", "The build has failed.", - "The build was skipped." + "The build was skipped.", + "The build has expired and may not be reused." ], "readOnly": true, "type": "string" @@ -2018,7 +2020,7 @@ "type": "string" }, "variable": { - "description": "Required. The name of the environment variable. - Must be a valid environment variable name (e.g. A-Z or underscores). - May not start with \"FIREBASE\" or \"GOOGLE\". - May not be a reserved environment variable for KNative/Cloud Run", + "description": "Required. The name of the environment variable. The environment variables reserved by [Cloud Run](https://docs.cloud.google.com/run/docs/configuring/services/environment-variables#reserved) should not be set. Additionally, variable names cannot start with \"X_FIREBASE_\".", "type": "string" } }, diff --git a/discovery/firebaseapphosting-v1beta.json b/discovery/firebaseapphosting-v1beta.json index 8dba0959027..95418de4b41 100644 --- a/discovery/firebaseapphosting-v1beta.json +++ b/discovery/firebaseapphosting-v1beta.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta/projects/{projectsId}/locations", "httpMethod": "GET", "id": "firebaseapphosting.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1097,13 +1097,48 @@ ] } } + }, + "supportedRuntimes": { + "methods": { + "list": { + "description": "Lists the runtimes supported by the backend. The list of runtimes may vary across projects and locations, for example, during staged rollouts of new runtime support.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/supportedRuntimes", + "httpMethod": "GET", + "id": "firebaseapphosting.projects.locations.supportedRuntimes.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The suggested number of runtimes to return. This field is ignored. We return all runtimes in a single page regardless of the page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "parent": { + "description": "Required. The parent, which owns this collection of SupportedRuntime. Format: projects/{project}/locations/{location}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/supportedRuntimes", + "response": { + "$ref": "ListSupportedRuntimesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } } } } } }, - "revision": "20260219", + "revision": "20260427", "rootUrl": "https://firebaseapphosting.googleapis.com/", "schemas": { "ArchiveSource": { @@ -1365,7 +1400,8 @@ "DEPLOYING", "READY", "FAILED", - "SKIPPED" + "SKIPPED", + "EXPIRED" ], "enumDescriptions": [ "The build is in an unknown state.", @@ -1374,7 +1410,8 @@ "The infrastructure for this build is being set up.", "The infrastructure for this build is ready. The build may or may not be serving traffic - see `Backend.traffic` for the current state, or `Backend.traffic_statuses` for the desired state.", "The build has failed.", - "The build was skipped." + "The build was skipped.", + "The build has expired and may not be reused." ], "readOnly": true, "type": "string" @@ -2044,7 +2081,7 @@ "type": "string" }, "variable": { - "description": "Required. The name of the environment variable. - Must be a valid environment variable name (e.g. A-Z or underscores). - May not start with \"FIREBASE\" or \"GOOGLE\". - May not be a reserved environment variable for KNative/Cloud Run", + "description": "Required. The name of the environment variable. The environment variables reserved by [Cloud Run](https://docs.cloud.google.com/run/docs/configuring/services/environment-variables#reserved) should not be set. Additionally, variable names cannot start with \"X_FIREBASE_\".", "type": "string" } }, @@ -2228,6 +2265,20 @@ }, "type": "object" }, + "ListSupportedRuntimesResponse": { + "description": "Response message for a list of supported runtimes.", + "id": "ListSupportedRuntimesResponse", + "properties": { + "supportedRuntimes": { + "description": "The list of supported runtimes.", + "items": { + "$ref": "SupportedRuntime" + }, + "type": "array" + } + }, + "type": "object" + }, "LiveMigrationStep": { "description": "A set of updates including ACME challenges and DNS records that allow App Hosting to create an SSL certificate and establish project ownership for your domain name before you direct traffic to App Hosting servers. Use these updates to facilitate zero downtime migrations to App Hosting from other services. After you've made the recommended updates, check your custom domain's `ownershipState` and `certState`. To avoid downtime, they should be `OWNERSHIP_ACTIVE` and `CERT_ACTIVE`, respectively, before you update your `A` and `AAAA` records.", "id": "LiveMigrationStep", @@ -2699,6 +2750,39 @@ }, "type": "object" }, + "SupportedRuntime": { + "description": "Represents a single FAH supported runtime. Although instances of this resource are parented by a project and location, the set of available runtimes may vary across projects and locations, for example, during staged rollouts of new runtime support.", + "id": "SupportedRuntime", + "properties": { + "automaticBaseImageUpdatesSupported": { + "description": "Output only. True if Automatic Base Image Updates (ABIU) is supported for this runtime.", + "readOnly": true, + "type": "boolean" + }, + "decommissionTime": { + "description": "Output only. The time at which this runtime will be decommissioned. After this date, the runtime can no longer be used for new builds.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "deprecateTime": { + "description": "Output only. The time at which this runtime will effectively be deprecated. After this date, the runtime is still usable but may not receive new features or updates.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the supported runtime. Format: projects/{project}/locations/{location}/supportedRuntimes/{runtime_id}", + "type": "string" + }, + "runtimeId": { + "description": "Output only. The identifier of the runtime, e.g., \"nodejs22\".", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "Traffic": { "description": "Controls traffic configuration for the backend.", "id": "Traffic", diff --git a/discovery/firebasedataconnect-v1.json b/discovery/firebasedataconnect-v1.json index c4e5aeacd5b..81bc35a8791 100644 --- a/discovery/firebasedataconnect-v1.json +++ b/discovery/firebasedataconnect-v1.json @@ -12,7 +12,7 @@ "baseUrl": "https://firebasedataconnect.googleapis.com/", "batchPath": "batch", "canonicalName": "Firebase Data Connect", - "description": "Firebase Data Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database.", + "description": "Firebase SQL Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database.", "discoveryVersion": "v1", "documentationLink": "https://firebase.google.com/docs/data-connect", "fullyEncodeReservedExpansion": true, @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "firebasedataconnect.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -407,7 +407,7 @@ ] }, "executeGraphql": { - "description": "Execute any GraphQL query and mutation against the Firebase Data Connect's generated GraphQL schema. Grants full read and write access to the connected data sources. Note: Use introspection query to explore the generated GraphQL schema.", + "description": "Execute any GraphQL query or mutation against the Firebase SQL Connect's generated GraphQL schema. Grants full read and write access to the connected data sources. Note: Use introspection query to explore the generated GraphQL schema.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/services/{servicesId}:executeGraphql", "httpMethod": "POST", "id": "firebasedataconnect.projects.locations.services.executeGraphql", @@ -416,7 +416,7 @@ ], "parameters": { "name": { - "description": "Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ```", + "description": "Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ```", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", "required": true, @@ -435,7 +435,7 @@ ] }, "executeGraphqlRead": { - "description": "Execute any GraphQL query against the Firebase Data Connect's generated GraphQL schema. Grants full read to the connected data sources. `ExecuteGraphqlRead` is identical to `ExecuteGraphql` except it only accepts read-only query.", + "description": "Execute any GraphQL query against the Firebase SQL Connect's generated GraphQL schema. Grants full read to the connected data sources. `ExecuteGraphqlRead` is identical to `ExecuteGraphql` except it only accepts read-only query.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/services/{servicesId}:executeGraphqlRead", "httpMethod": "POST", "id": "firebasedataconnect.projects.locations.services.executeGraphqlRead", @@ -444,7 +444,7 @@ ], "parameters": { "name": { - "description": "Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ```", + "description": "Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ```", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", "required": true, @@ -488,7 +488,7 @@ ] }, "introspectGraphql": { - "description": "Execute introspection query against the Firebase Data Connect's generated GraphQL schema. GraphQL introspection query provides metadata such as what tables the schema have, what queries and mutations can be performed on the schema, and so on. Read more at https://graphql.org/learn/introspection. IntrospectGraphql can read schema metadata but cannot read rows from Cloud SQL instance, which can be done via ExecuteGraphqlRead.", + "description": "Execute introspection query against the Firebase SQL Connect's generated GraphQL schema. GraphQL introspection query provides metadata such as what tables the schema have, what queries and mutations can be performed on the schema, and so on. Read more at https://graphql.org/learn/introspection. IntrospectGraphql can read schema metadata but cannot read rows from Cloud SQL instance, which can be done via ExecuteGraphqlRead.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/services/{servicesId}:introspectGraphql", "httpMethod": "POST", "id": "firebasedataconnect.projects.locations.services.introspectGraphql", @@ -497,7 +497,7 @@ ], "parameters": { "name": { - "description": "Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ```", + "description": "Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ```", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", "required": true, @@ -576,7 +576,7 @@ "type": "boolean" }, "name": { - "description": "Identifier. The relative resource name of the Firebase Data Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ``` Note that the service ID is specific to Firebase Data Connect and does not correspond to any of the instance IDs of the underlying data source connections.", + "description": "Identifier. The relative resource name of the Firebase SQL Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ``` Note that the service ID is specific to Firebase SQL Connect and does not correspond to any of the instance IDs of the underlying data source connections.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", "required": true, @@ -789,7 +789,7 @@ ] }, "impersonateMutation": { - "description": "Impersonate a mutation defined on a Firebase Data Connect connector. It grants the admin SDK access to mutations defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely.", + "description": "Impersonate a mutation defined on a Firebase SQL Connect connector. It grants the admin SDK access to mutations defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/services/{servicesId}/connectors/{connectorsId}:impersonateMutation", "httpMethod": "POST", "id": "firebasedataconnect.projects.locations.services.connectors.impersonateMutation", @@ -817,7 +817,7 @@ ] }, "impersonateQuery": { - "description": "Impersonate a query defined on a Firebase Data Connect connector. It grants the admin SDK access to queries defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely.", + "description": "Impersonate a query defined on a Firebase SQL Connect connector. It grants the admin SDK access to queries defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/services/{servicesId}/connectors/{connectorsId}:impersonateQuery", "httpMethod": "POST", "id": "firebasedataconnect.projects.locations.services.connectors.impersonateQuery", @@ -1165,7 +1165,7 @@ } } }, - "revision": "20260201", + "revision": "20260426", "rootUrl": "https://firebasedataconnect.googleapis.com/", "schemas": { "CancelOperationRequest": { @@ -1265,7 +1265,7 @@ "type": "object" }, "DataConnectProperties": { - "description": "Data Connect specific properties for a path under response.data.", + "description": "SQL Connect specific properties for a path under response.data.", "id": "DataConnectProperties", "properties": { "entityId": { @@ -1295,7 +1295,7 @@ "type": "object" }, "Datasource": { - "description": "A data source that backs Firebase Data Connect services.", + "description": "A data source that backs Firebase SQL Connect services.", "id": "Datasource", "properties": { "httpGraphql": { @@ -1316,7 +1316,7 @@ "type": "object" }, "ExecuteMutationRequest": { - "description": "The ExecuteMutation request to Firebase Data Connect.", + "description": "The ExecuteMutation request to Firebase SQL Connect.", "id": "ExecuteMutationRequest", "properties": { "operationName": { @@ -1335,7 +1335,7 @@ "type": "object" }, "ExecuteMutationResponse": { - "description": "The ExecuteMutation response from Firebase Data Connect.", + "description": "The ExecuteMutation response from Firebase SQL Connect.", "id": "ExecuteMutationResponse", "properties": { "data": { @@ -1361,7 +1361,7 @@ "type": "object" }, "ExecuteQueryRequest": { - "description": "The ExecuteQuery request to Firebase Data Connect.", + "description": "The ExecuteQuery request to Firebase SQL Connect.", "id": "ExecuteQueryRequest", "properties": { "operationName": { @@ -1380,7 +1380,7 @@ "type": "object" }, "ExecuteQueryResponse": { - "description": "The ExecuteQuery response from Firebase Data Connect.", + "description": "The ExecuteQuery response from Firebase SQL Connect.", "id": "ExecuteQueryResponse", "properties": { "data": { @@ -1421,7 +1421,7 @@ "type": "object" }, "GraphqlError": { - "description": "GraphqlError conforms to the GraphQL error spec. https://spec.graphql.org/draft/#sec-Errors Firebase Data Connect API surfaces `GraphqlError` in various APIs: - Upon compile error, `UpdateSchema` and `UpdateConnector` return Code.Invalid_Argument with a list of `GraphqlError` in error details. - Upon query compile error, `ExecuteGraphql`, `ExecuteGraphqlRead` and `IntrospectGraphql` return Code.OK with a list of `GraphqlError` in response body. - Upon query execution error, `ExecuteGraphql`, `ExecuteGraphqlRead`, `ExecuteMutation`, `ExecuteQuery`, `IntrospectGraphql`, `ImpersonateQuery` and `ImpersonateMutation` all return Code.OK with a list of `GraphqlError` in response body.", + "description": "GraphqlError conforms to the GraphQL error spec. https://spec.graphql.org/draft/#sec-Errors Firebase SQL Connect API surfaces `GraphqlError` in various APIs: - Upon compile error, `UpdateSchema` and `UpdateConnector` return Code.Invalid_Argument with a list of `GraphqlError` in error details. - Upon query compile error, `ExecuteGraphql`, `ExecuteGraphqlRead` and `IntrospectGraphql` return Code.OK with a list of `GraphqlError` in response body. - Upon query execution error, `ExecuteGraphql`, `ExecuteGraphqlRead`, `ExecuteMutation`, `ExecuteQuery`, `IntrospectGraphql`, `ImpersonateQuery` and `ImpersonateMutation` all return Code.OK with a list of `GraphqlError` in response body.", "id": "GraphqlError", "properties": { "extensions": { @@ -1496,7 +1496,7 @@ "type": "string" }, "debugDetails": { - "description": "More detailed error message to assist debugging. It contains application business logic that are inappropriate to leak publicly. In the emulator, Data Connect API always includes it to assist local development and debugging. In the backend, ConnectorService always hides it. GraphqlService without impersonation always include it. GraphqlService with impersonation includes it only if explicitly opted-in with `include_debug_details` in `GraphqlRequestExtensions`.", + "description": "More detailed error message to assist debugging. It contains application business logic that are inappropriate to leak publicly. In the emulator, SQL Connect API always includes it to assist local development and debugging. In the backend, ConnectorService always hides it. GraphqlService without impersonation always include it. GraphqlService with impersonation includes it only if explicitly opted-in with `include_debug_details` in `GraphqlRequestExtensions`.", "type": "string" }, "file": { @@ -1532,7 +1532,7 @@ "type": "object" }, "GraphqlRequest": { - "description": "The GraphQL request to Firebase Data Connect. It strives to match the GraphQL over HTTP spec. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#post", + "description": "The GraphQL request to Firebase SQL Connect. It strives to match the GraphQL over HTTP spec. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#post", "id": "GraphqlRequest", "properties": { "extensions": { @@ -1570,7 +1570,7 @@ "type": "object" }, "GraphqlResponse": { - "description": "The GraphQL response from Firebase Data Connect. It strives to match the GraphQL over HTTP spec. Note: Firebase Data Connect always responds with `Content-Type: application/json`. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#body", + "description": "The GraphQL response from Firebase SQL Connect. It strives to match the GraphQL over HTTP spec. Note: Firebase SQL Connect always responds with `Content-Type: application/json`. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#body", "id": "GraphqlResponse", "properties": { "data": { @@ -1600,7 +1600,7 @@ "id": "GraphqlResponseExtensions", "properties": { "dataConnect": { - "description": "Data Connect specific GraphQL extension, a list of paths and properties.", + "description": "SQL Connect specific GraphQL extension, a list of paths and properties.", "items": { "$ref": "DataConnectProperties" }, @@ -1626,7 +1626,7 @@ "type": "object" }, "ImpersonateRequest": { - "description": "The Impersonate request to Firebase Data Connect.", + "description": "The Impersonate request to Firebase SQL Connect.", "id": "ImpersonateRequest", "properties": { "extensions": { @@ -1915,10 +1915,14 @@ "type": "string" }, "ephemeral": { - "description": "Output only. Ephemeral is true if this data connect service is served from temporary in-memory emulation of Postgres. While Cloud SQL is being provisioned, the data connect service provides the ephemeral service to help developers get started. Once the Cloud SQL is provisioned, Data Connect service will transfer its data on a best-effort basis to the Cloud SQL instance. WARNING: Ephemeral data sources will expire after 24 hour. The data will be lost if they aren't transferred to the Cloud SQL instance. WARNING: When `ephemeral=true`, mutations to the database are not guaranteed to be durably persisted, even if an OK status code is returned. All or parts of the data may be lost or reverted to earlier versions.", + "description": "Output only. Ephemeral is true if this SQL Connect service is served from temporary in-memory emulation of Postgres. While Cloud SQL is being provisioned, the SQL Connect service provides the ephemeral service to help developers get started. Once the Cloud SQL is provisioned, SQL Connect service will transfer its data on a best-effort basis to the Cloud SQL instance. WARNING: Ephemeral data sources will expire after 24 hour. The data will be lost if they aren't transferred to the Cloud SQL instance. WARNING: When `ephemeral=true`, mutations to the database are not guaranteed to be durably persisted, even if an OK status code is returned. All or parts of the data may be lost or reverted to earlier versions.", "readOnly": true, "type": "boolean" }, + "schema": { + "description": "Optional. User-configured PostgreSQL schema. Defaults to \"public\" if not specified.", + "type": "string" + }, "schemaMigration": { "description": "Optional. Configure how to perform Postgresql schema migration.", "enum": [ @@ -1927,7 +1931,7 @@ ], "enumDescriptions": [ "Unspecified SQL schema migration.", - "Connect to the SQL database and identify any missing SQL resources used in the given Firebase Data Connect Schema. Automatically create necessary SQL resources (SQL table, column, etc) before deploying the schema. During migration steps, the SQL Schema must comply with the previous before_deploy setting in case the migration is interrupted. Therefore, the previous before_deploy setting must not be `schema_validation=STRICT`." + "Connect to the SQL database and identify any missing SQL resources used in the given Firebase SQL Connect Schema. Automatically create necessary SQL resources (SQL table, column, etc) before deploying the schema. During migration steps, the SQL Schema must comply with the previous before_deploy setting in case the migration is interrupted. Therefore, the previous before_deploy setting must not be `schema_validation=STRICT`." ], "type": "string" }, @@ -1943,7 +1947,7 @@ "Unspecified SQL schema validation. Default to STRICT.", "Skip no SQL schema validation. Use it with extreme caution. CreateSchema or UpdateSchema will succeed even if SQL database is unavailable or SQL schema is incompatible. Generated SQL may fail at execution time.", "Connect to the SQL database and validate that the SQL DDL matches the schema exactly. Surface any discrepancies as `FAILED_PRECONDITION` with an `IncompatibleSqlSchemaError` error detail.", - "Connect to the SQL database and validate that the SQL DDL has all the SQL resources used in the given Firebase Data Connect Schema. Surface any missing resources as `FAILED_PRECONDITION` with an `IncompatibleSqlSchemaError` error detail. Succeed even if there are unknown tables and columns." + "Connect to the SQL database and validate that the SQL DDL has all the SQL resources used in the given Firebase SQL Connect Schema. Surface any missing resources as `FAILED_PRECONDITION` with an `IncompatibleSqlSchemaError` error detail. Succeed even if there are unknown tables and columns." ], "type": "string" }, @@ -1956,7 +1960,7 @@ "type": "object" }, "Schema": { - "description": "The application schema of a Firebase Data Connect service.", + "description": "The application schema of a Firebase SQL Connect service.", "id": "Schema", "properties": { "annotations": { @@ -2023,7 +2027,7 @@ "type": "object" }, "Service": { - "description": "A Firebase Data Connect service.", + "description": "A Firebase SQL Connect service.", "id": "Service", "properties": { "annotations": { @@ -2056,7 +2060,7 @@ "type": "object" }, "name": { - "description": "Identifier. The relative resource name of the Firebase Data Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ``` Note that the service ID is specific to Firebase Data Connect and does not correspond to any of the instance IDs of the underlying data source connections.", + "description": "Identifier. The relative resource name of the Firebase SQL Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ``` Note that the service ID is specific to Firebase SQL Connect and does not correspond to any of the instance IDs of the underlying data source connections.", "type": "string" }, "reconciling": { diff --git a/discovery/firebasedataconnect-v1beta.json b/discovery/firebasedataconnect-v1beta.json index 5a020d8ca69..733e2e9ddd5 100644 --- a/discovery/firebasedataconnect-v1beta.json +++ b/discovery/firebasedataconnect-v1beta.json @@ -12,7 +12,7 @@ "baseUrl": "https://firebasedataconnect.googleapis.com/", "batchPath": "batch", "canonicalName": "Firebase Data Connect", - "description": "Firebase Data Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database.", + "description": "Firebase SQL Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database.", "discoveryVersion": "v1", "documentationLink": "https://firebase.google.com/docs/data-connect", "fullyEncodeReservedExpansion": true, @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta/projects/{projectsId}/locations", "httpMethod": "GET", "id": "firebasedataconnect.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -407,7 +407,7 @@ ] }, "executeGraphql": { - "description": "Execute any GraphQL query and mutation against the Firebase Data Connect's generated GraphQL schema. Grants full read and write access to the connected data sources. Note: Use introspection query to explore the generated GraphQL schema.", + "description": "Execute any GraphQL query or mutation against the Firebase SQL Connect's generated GraphQL schema. Grants full read and write access to the connected data sources. Note: Use introspection query to explore the generated GraphQL schema.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/services/{servicesId}:executeGraphql", "httpMethod": "POST", "id": "firebasedataconnect.projects.locations.services.executeGraphql", @@ -416,7 +416,7 @@ ], "parameters": { "name": { - "description": "Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ```", + "description": "Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ```", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", "required": true, @@ -435,7 +435,7 @@ ] }, "executeGraphqlRead": { - "description": "Execute any GraphQL query against the Firebase Data Connect's generated GraphQL schema. Grants full read to the connected data sources. `ExecuteGraphqlRead` is identical to `ExecuteGraphql` except it only accepts read-only query.", + "description": "Execute any GraphQL query against the Firebase SQL Connect's generated GraphQL schema. Grants full read to the connected data sources. `ExecuteGraphqlRead` is identical to `ExecuteGraphql` except it only accepts read-only query.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/services/{servicesId}:executeGraphqlRead", "httpMethod": "POST", "id": "firebasedataconnect.projects.locations.services.executeGraphqlRead", @@ -444,7 +444,7 @@ ], "parameters": { "name": { - "description": "Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ```", + "description": "Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ```", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", "required": true, @@ -488,7 +488,7 @@ ] }, "introspectGraphql": { - "description": "Execute introspection query against the Firebase Data Connect's generated GraphQL schema. GraphQL introspection query provides metadata such as what tables the schema have, what queries and mutations can be performed on the schema, and so on. Read more at https://graphql.org/learn/introspection. IntrospectGraphql can read schema metadata but cannot read rows from Cloud SQL instance, which can be done via ExecuteGraphqlRead.", + "description": "Execute introspection query against the Firebase SQL Connect's generated GraphQL schema. GraphQL introspection query provides metadata such as what tables the schema have, what queries and mutations can be performed on the schema, and so on. Read more at https://graphql.org/learn/introspection. IntrospectGraphql can read schema metadata but cannot read rows from Cloud SQL instance, which can be done via ExecuteGraphqlRead.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/services/{servicesId}:introspectGraphql", "httpMethod": "POST", "id": "firebasedataconnect.projects.locations.services.introspectGraphql", @@ -497,7 +497,7 @@ ], "parameters": { "name": { - "description": "Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ```", + "description": "Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ```", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", "required": true, @@ -576,7 +576,7 @@ "type": "boolean" }, "name": { - "description": "Identifier. The relative resource name of the Firebase Data Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ``` Note that the service ID is specific to Firebase Data Connect and does not correspond to any of the instance IDs of the underlying data source connections.", + "description": "Identifier. The relative resource name of the Firebase SQL Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ``` Note that the service ID is specific to Firebase SQL Connect and does not correspond to any of the instance IDs of the underlying data source connections.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/services/[^/]+$", "required": true, @@ -789,7 +789,7 @@ ] }, "impersonateMutation": { - "description": "Impersonate a mutation defined on a Firebase Data Connect connector. It grants the admin SDK access to mutations defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely.", + "description": "Impersonate a mutation defined on a Firebase SQL Connect connector. It grants the admin SDK access to mutations defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/services/{servicesId}/connectors/{connectorsId}:impersonateMutation", "httpMethod": "POST", "id": "firebasedataconnect.projects.locations.services.connectors.impersonateMutation", @@ -817,7 +817,7 @@ ] }, "impersonateQuery": { - "description": "Impersonate a query defined on a Firebase Data Connect connector. It grants the admin SDK access to queries defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely.", + "description": "Impersonate a query defined on a Firebase SQL Connect connector. It grants the admin SDK access to queries defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/services/{servicesId}/connectors/{connectorsId}:impersonateQuery", "httpMethod": "POST", "id": "firebasedataconnect.projects.locations.services.connectors.impersonateQuery", @@ -1165,7 +1165,7 @@ } } }, - "revision": "20260201", + "revision": "20260426", "rootUrl": "https://firebasedataconnect.googleapis.com/", "schemas": { "CancelOperationRequest": { @@ -1265,7 +1265,7 @@ "type": "object" }, "DataConnectProperties": { - "description": "Data Connect specific properties for a path under response.data.", + "description": "SQL Connect specific properties for a path under response.data.", "id": "DataConnectProperties", "properties": { "entityId": { @@ -1295,7 +1295,7 @@ "type": "object" }, "Datasource": { - "description": "A data source that backs Firebase Data Connect services.", + "description": "A data source that backs Firebase SQL Connect services.", "id": "Datasource", "properties": { "httpGraphql": { @@ -1316,7 +1316,7 @@ "type": "object" }, "ExecuteMutationRequest": { - "description": "The ExecuteMutation request to Firebase Data Connect.", + "description": "The ExecuteMutation request to Firebase SQL Connect.", "id": "ExecuteMutationRequest", "properties": { "operationName": { @@ -1335,7 +1335,7 @@ "type": "object" }, "ExecuteMutationResponse": { - "description": "The ExecuteMutation response from Firebase Data Connect.", + "description": "The ExecuteMutation response from Firebase SQL Connect.", "id": "ExecuteMutationResponse", "properties": { "data": { @@ -1361,7 +1361,7 @@ "type": "object" }, "ExecuteQueryRequest": { - "description": "The ExecuteQuery request to Firebase Data Connect.", + "description": "The ExecuteQuery request to Firebase SQL Connect.", "id": "ExecuteQueryRequest", "properties": { "operationName": { @@ -1380,7 +1380,7 @@ "type": "object" }, "ExecuteQueryResponse": { - "description": "The ExecuteQuery response from Firebase Data Connect.", + "description": "The ExecuteQuery response from Firebase SQL Connect.", "id": "ExecuteQueryResponse", "properties": { "data": { @@ -1421,7 +1421,7 @@ "type": "object" }, "GraphqlError": { - "description": "GraphqlError conforms to the GraphQL error spec. https://spec.graphql.org/draft/#sec-Errors Firebase Data Connect API surfaces `GraphqlError` in various APIs: - Upon compile error, `UpdateSchema` and `UpdateConnector` return Code.Invalid_Argument with a list of `GraphqlError` in error details. - Upon query compile error, `ExecuteGraphql`, `ExecuteGraphqlRead` and `IntrospectGraphql` return Code.OK with a list of `GraphqlError` in response body. - Upon query execution error, `ExecuteGraphql`, `ExecuteGraphqlRead`, `ExecuteMutation`, `ExecuteQuery`, `IntrospectGraphql`, `ImpersonateQuery` and `ImpersonateMutation` all return Code.OK with a list of `GraphqlError` in response body.", + "description": "GraphqlError conforms to the GraphQL error spec. https://spec.graphql.org/draft/#sec-Errors Firebase SQL Connect API surfaces `GraphqlError` in various APIs: - Upon compile error, `UpdateSchema` and `UpdateConnector` return Code.Invalid_Argument with a list of `GraphqlError` in error details. - Upon query compile error, `ExecuteGraphql`, `ExecuteGraphqlRead` and `IntrospectGraphql` return Code.OK with a list of `GraphqlError` in response body. - Upon query execution error, `ExecuteGraphql`, `ExecuteGraphqlRead`, `ExecuteMutation`, `ExecuteQuery`, `IntrospectGraphql`, `ImpersonateQuery` and `ImpersonateMutation` all return Code.OK with a list of `GraphqlError` in response body.", "id": "GraphqlError", "properties": { "extensions": { @@ -1496,7 +1496,7 @@ "type": "string" }, "debugDetails": { - "description": "More detailed error message to assist debugging. It contains application business logic that are inappropriate to leak publicly. In the emulator, Data Connect API always includes it to assist local development and debugging. In the backend, ConnectorService always hides it. GraphqlService without impersonation always include it. GraphqlService with impersonation includes it only if explicitly opted-in with `include_debug_details` in `GraphqlRequestExtensions`.", + "description": "More detailed error message to assist debugging. It contains application business logic that are inappropriate to leak publicly. In the emulator, SQL Connect API always includes it to assist local development and debugging. In the backend, ConnectorService always hides it. GraphqlService without impersonation always include it. GraphqlService with impersonation includes it only if explicitly opted-in with `include_debug_details` in `GraphqlRequestExtensions`.", "type": "string" }, "file": { @@ -1532,7 +1532,7 @@ "type": "object" }, "GraphqlRequest": { - "description": "The GraphQL request to Firebase Data Connect. It strives to match the GraphQL over HTTP spec. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#post", + "description": "The GraphQL request to Firebase SQL Connect. It strives to match the GraphQL over HTTP spec. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#post", "id": "GraphqlRequest", "properties": { "extensions": { @@ -1570,7 +1570,7 @@ "type": "object" }, "GraphqlResponse": { - "description": "The GraphQL response from Firebase Data Connect. It strives to match the GraphQL over HTTP spec. Note: Firebase Data Connect always responds with `Content-Type: application/json`. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#body", + "description": "The GraphQL response from Firebase SQL Connect. It strives to match the GraphQL over HTTP spec. Note: Firebase SQL Connect always responds with `Content-Type: application/json`. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#body", "id": "GraphqlResponse", "properties": { "data": { @@ -1600,7 +1600,7 @@ "id": "GraphqlResponseExtensions", "properties": { "dataConnect": { - "description": "Data Connect specific GraphQL extension, a list of paths and properties.", + "description": "SQL Connect specific GraphQL extension, a list of paths and properties.", "items": { "$ref": "DataConnectProperties" }, @@ -1626,7 +1626,7 @@ "type": "object" }, "ImpersonateRequest": { - "description": "The Impersonate request to Firebase Data Connect.", + "description": "The Impersonate request to Firebase SQL Connect.", "id": "ImpersonateRequest", "properties": { "extensions": { @@ -1915,10 +1915,14 @@ "type": "string" }, "ephemeral": { - "description": "Output only. Ephemeral is true if this data connect service is served from temporary in-memory emulation of Postgres. While Cloud SQL is being provisioned, the data connect service provides the ephemeral service to help developers get started. Once the Cloud SQL is provisioned, Data Connect service will transfer its data on a best-effort basis to the Cloud SQL instance. WARNING: Ephemeral data sources will expire after 24 hour. The data will be lost if they aren't transferred to the Cloud SQL instance. WARNING: When `ephemeral=true`, mutations to the database are not guaranteed to be durably persisted, even if an OK status code is returned. All or parts of the data may be lost or reverted to earlier versions.", + "description": "Output only. Ephemeral is true if this SQL Connect service is served from temporary in-memory emulation of Postgres. While Cloud SQL is being provisioned, the SQL Connect service provides the ephemeral service to help developers get started. Once the Cloud SQL is provisioned, SQL Connect service will transfer its data on a best-effort basis to the Cloud SQL instance. WARNING: Ephemeral data sources will expire after 24 hour. The data will be lost if they aren't transferred to the Cloud SQL instance. WARNING: When `ephemeral=true`, mutations to the database are not guaranteed to be durably persisted, even if an OK status code is returned. All or parts of the data may be lost or reverted to earlier versions.", "readOnly": true, "type": "boolean" }, + "schema": { + "description": "Optional. User-configured PostgreSQL schema. Defaults to \"public\" if not specified.", + "type": "string" + }, "schemaMigration": { "description": "Optional. Configure how to perform Postgresql schema migration.", "enum": [ @@ -1927,7 +1931,7 @@ ], "enumDescriptions": [ "Unspecified SQL schema migration.", - "Connect to the SQL database and identify any missing SQL resources used in the given Firebase Data Connect Schema. Automatically create necessary SQL resources (SQL table, column, etc) before deploying the schema. During migration steps, the SQL Schema must comply with the previous before_deploy setting in case the migration is interrupted. Therefore, the previous before_deploy setting must not be `schema_validation=STRICT`." + "Connect to the SQL database and identify any missing SQL resources used in the given Firebase SQL Connect Schema. Automatically create necessary SQL resources (SQL table, column, etc) before deploying the schema. During migration steps, the SQL Schema must comply with the previous before_deploy setting in case the migration is interrupted. Therefore, the previous before_deploy setting must not be `schema_validation=STRICT`." ], "type": "string" }, @@ -1943,7 +1947,7 @@ "Unspecified SQL schema validation. Default to STRICT.", "Skip no SQL schema validation. Use it with extreme caution. CreateSchema or UpdateSchema will succeed even if SQL database is unavailable or SQL schema is incompatible. Generated SQL may fail at execution time.", "Connect to the SQL database and validate that the SQL DDL matches the schema exactly. Surface any discrepancies as `FAILED_PRECONDITION` with an `IncompatibleSqlSchemaError` error detail.", - "Connect to the SQL database and validate that the SQL DDL has all the SQL resources used in the given Firebase Data Connect Schema. Surface any missing resources as `FAILED_PRECONDITION` with an `IncompatibleSqlSchemaError` error detail. Succeed even if there are unknown tables and columns." + "Connect to the SQL database and validate that the SQL DDL has all the SQL resources used in the given Firebase SQL Connect Schema. Surface any missing resources as `FAILED_PRECONDITION` with an `IncompatibleSqlSchemaError` error detail. Succeed even if there are unknown tables and columns." ], "type": "string" }, @@ -1956,7 +1960,7 @@ "type": "object" }, "Schema": { - "description": "The application schema of a Firebase Data Connect service.", + "description": "The application schema of a Firebase SQL Connect service.", "id": "Schema", "properties": { "annotations": { @@ -2023,7 +2027,7 @@ "type": "object" }, "Service": { - "description": "A Firebase Data Connect service.", + "description": "A Firebase SQL Connect service.", "id": "Service", "properties": { "annotations": { @@ -2056,7 +2060,7 @@ "type": "object" }, "name": { - "description": "Identifier. The relative resource name of the Firebase Data Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ``` Note that the service ID is specific to Firebase Data Connect and does not correspond to any of the instance IDs of the underlying data source connections.", + "description": "Identifier. The relative resource name of the Firebase SQL Connect service, in the format: ``` projects/{project}/locations/{location}/services/{service} ``` Note that the service ID is specific to Firebase SQL Connect and does not correspond to any of the instance IDs of the underlying data source connections.", "type": "string" }, "reconciling": { diff --git a/discovery/firebaseml-v2beta.json b/discovery/firebaseml-v2beta.json index d3189a545b6..b0e856a8b76 100644 --- a/discovery/firebaseml-v2beta.json +++ b/discovery/firebaseml-v2beta.json @@ -206,7 +206,7 @@ } } }, - "revision": "20260225", + "revision": "20260408", "rootUrl": "https://firebaseml.googleapis.com/", "schemas": { "Date": { @@ -572,7 +572,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1CodeExecutionResult": { - "description": "Result of executing the [ExecutableCode]. Only generated when using the [CodeExecution] tool, and always follows a `part` containing the [ExecutableCode].", + "description": "Result of executing the ExecutableCode. Generated only when the `CodeExecution` tool is used.", "id": "GoogleCloudAiplatformV1beta1CodeExecutionResult", "properties": { "outcome": { @@ -585,9 +585,9 @@ ], "enumDescriptions": [ "Unspecified status. This value should not be used.", - "Code execution completed successfully.", - "Code execution finished but with a failure. `stderr` should contain the reason.", - "Code execution ran for too long, and was cancelled. There may or may not be a partial output present." + "Code execution completed successfully. `output` contains the stdout, if any.", + "Code execution failed. `output` contains the stderr and stdout, if any.", + "Code execution ran for too long, and was cancelled. There may or may not be a partial `output` present." ], "type": "string" }, @@ -742,7 +742,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1ExecutableCode": { - "description": "Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the [CodeExecution] tool, in which the code will be automatically executed, and a corresponding [CodeExecutionResult] will also be generated.", + "description": "Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the `CodeExecution` tool, in which the code will be automatically executed, and a corresponding CodeExecutionResult will also be generated.", "id": "GoogleCloudAiplatformV1beta1ExecutableCode", "properties": { "code": { @@ -852,7 +852,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1FunctionCall": { - "description": "A predicted [FunctionCall] returned from the model that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing the parameters and their values.", + "description": "A predicted FunctionCall returned from the model that contains a string representing the FunctionDeclaration.name and a structured JSON object containing the parameters and their values.", "id": "GoogleCloudAiplatformV1beta1FunctionCall", "properties": { "args": { @@ -860,7 +860,7 @@ "description": "Properties of the object.", "type": "any" }, - "description": "Optional. The function parameters and values in JSON object format. See [FunctionDeclaration.parameters] for parameter details.", + "description": "Optional. The function parameters and values in JSON object format. See FunctionDeclaration.parameters for parameter details.", "type": "object" }, "id": { @@ -868,7 +868,7 @@ "type": "string" }, "name": { - "description": "Optional. The name of the function to call. Matches [FunctionDeclaration.name].", + "description": "Optional. The name of the function to call. Matches FunctionDeclaration.name.", "type": "string" }, "partialArgs": { @@ -890,7 +890,7 @@ "id": "GoogleCloudAiplatformV1beta1FunctionCallingConfig", "properties": { "allowedFunctionNames": { - "description": "Optional. Function names to call. Only set when the Mode is ANY. Function names should match [FunctionDeclaration.name]. With mode set to ANY, model will predict a function call from the set of function names provided.", + "description": "Optional. Function names to call. Only set when the Mode is ANY. Function names should match FunctionDeclaration.name. With mode set to ANY, model will predict a function call from the set of function names provided.", "items": { "type": "string" }, @@ -915,7 +915,7 @@ "type": "string" }, "streamFunctionCallArguments": { - "description": "Optional. When set to true, arguments of a single function call will be streamed out in multiple parts/contents/responses. Partial parameter results will be returned in the [FunctionCall.partial_args] field.", + "description": "Optional. When set to true, arguments of a single function call will be streamed out in multiple parts/contents/responses. Partial parameter results will be returned in the `FunctionCall.partial_args` field.", "type": "boolean" } }, @@ -930,7 +930,7 @@ "type": "string" }, "name": { - "description": "Required. The name of the function to call. Must start with a letter or an underscore. Must be a-z, A-Z, 0-9, or contain underscores, dots, colons and dashes, with a maximum length of 64.", + "description": "Required. The name of the function to call. Must start with a letter or an underscore. Must be a-z, A-Z, 0-9, or contain underscores, dots, colons and dashes, with a maximum length of 128.", "type": "string" }, "parameters": { @@ -953,7 +953,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1FunctionResponse": { - "description": "The result output from a [FunctionCall] that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a [FunctionCall] made based on model prediction.", + "description": "The result output from a FunctionCall that contains a string representing the FunctionDeclaration.name and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a `FunctionCall` made based on model prediction.", "id": "GoogleCloudAiplatformV1beta1FunctionResponse", "properties": { "id": { @@ -961,7 +961,7 @@ "type": "string" }, "name": { - "description": "Required. The name of the function to call. Matches [FunctionDeclaration.name] and [FunctionCall.name].", + "description": "Required. The name of the function to call. Matches FunctionDeclaration.name and FunctionCall.name.", "type": "string" }, "parts": { @@ -1354,7 +1354,7 @@ "type": "boolean" }, "responseMimeType": { - "description": "Optional. The IANA standard MIME type of the response. The model will generate output that conforms to this MIME type. Supported values include 'text/plain' (default) and 'application/json'. The model needs to be prompted to output the appropriate response type, otherwise the behavior is undefined. This is a preview feature.", + "description": "Optional. The IANA standard MIME type of the response. The model will generate output that conforms to this MIME type. Supported values include 'text/plain' (default) and 'application/json'. The model needs to be prompted to output the appropriate response type, otherwise the behavior is undefined.", "type": "string" }, "responseModalities": { @@ -1364,13 +1364,15 @@ "MODALITY_UNSPECIFIED", "TEXT", "IMAGE", - "AUDIO" + "AUDIO", + "VIDEO" ], "enumDescriptions": [ "Unspecified modality. Will be processed as text.", "Text modality.", "Image modality.", - "Audio modality." + "Audio modality.", + "Video modality." ], "type": "string" }, @@ -1874,6 +1876,20 @@ "Prevents the model from generating images of people." ], "type": "string" + }, + "prominentPeople": { + "description": "Optional. Controls whether prominent people (celebrities) generation is allowed. If used with personGeneration, personGeneration enum would take precedence. For instance, if ALLOW_NONE is set, all person generation would be blocked. If this field is unspecified, the default behavior is to allow prominent people.", + "enum": [ + "PROMINENT_PEOPLE_UNSPECIFIED", + "ALLOW_PROMINENT_PEOPLE", + "BLOCK_PROMINENT_PEOPLE" + ], + "enumDescriptions": [ + "Unspecified value. The model will proceed with the default behavior, which is to allow generation of prominent people.", + "Allows the model to generate images of prominent people.", + "Prevents the model from generating images of prominent people." + ], + "type": "string" } }, "type": "object" @@ -2141,6 +2157,14 @@ "description": "A RagChunk includes the content of a chunk of a RagFile, and associated metadata.", "id": "GoogleCloudAiplatformV1beta1RagChunk", "properties": { + "chunkId": { + "description": "The ID of the chunk.", + "type": "string" + }, + "fileId": { + "description": "The ID of the file that the chunk belongs to.", + "type": "string" + }, "pageSpan": { "$ref": "GoogleCloudAiplatformV1beta1RagChunkPageSpan", "description": "If populated, represents where the chunk starts and ends in the document." @@ -2826,7 +2850,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1ToolCodeExecution": { - "description": "Tool that executes code generated by the model, and automatically returns the result to the model. See also [ExecutableCode]and [CodeExecutionResult] which are input and output to this tool.", + "description": "Tool that executes code generated by the model, and automatically returns the result to the model. See also ExecutableCode and CodeExecutionResult, which are input and output to this tool.", "id": "GoogleCloudAiplatformV1beta1ToolCodeExecution", "properties": {}, "type": "object" diff --git a/discovery/firestore-v1.json b/discovery/firestore-v1.json index 7e2688afc8e..24c91ed5082 100644 --- a/discovery/firestore-v1.json +++ b/discovery/firestore-v1.json @@ -119,11 +119,6 @@ "endpointUrl": "https://firestore.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://firestore.europe-west15.rep.googleapis.com/", - "location": "europe-west15" - }, { "description": "Regional Endpoint", "endpointUrl": "https://firestore.europe-west2.rep.googleapis.com/", @@ -339,11 +334,6 @@ "endpointUrl": "https://batch-firestore.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://batch-firestore.europe-west15.rep.googleapis.com/", - "location": "europe-west15" - }, { "description": "Regional Endpoint", "endpointUrl": "https://batch-firestore.europe-west2.rep.googleapis.com/", @@ -1619,7 +1609,7 @@ ], "parameters": { "parent": { - "description": "Required. The parent document. In the format: `projects/{project_id}/databases/{database_id}/documents/{document_path}`. For example: `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`", + "description": "Required. The parent document. In the format: `projects/{project_id}/databases/{database_id}/documents/{document_path}`. For example: `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom` Use `projects/{project_id}/databases/{database_id}/documents` to list top-level collections.", "location": "path", "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.*$", "required": true, @@ -2304,7 +2294,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "firestore.projects.locations.list", @@ -2313,7 +2303,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2445,7 +2435,7 @@ } } }, - "revision": "20260212", + "revision": "20260427", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -3601,7 +3591,7 @@ "description": "Optional. Presence indicates CMEK is enabled for this database." }, "concurrencyMode": { - "description": "The concurrency control mode to use for this database. If unspecified in a CreateDatabase request, this will default based on the database edition: Optimistic for Enterprise and Pessimistic for all other databases.", + "description": "The default concurrency control mode to use for this database. If unspecified in a CreateDatabase request, this will default based on the database edition: Optimistic for Enterprise and Pessimistic for all other databases. While transactions can explicitly specify their own concurrency mode, this setting defines the default behavior when left unspecified. Important: This database-level setting is not respected for Firestore with MongoDB compatibility. All transactions through the MongoDB compatibility layer will use optimistic concurrency control, regardless of this setting.", "enum": [ "CONCURRENCY_MODE_UNSPECIFIED", "OPTIMISTIC", @@ -3691,7 +3681,7 @@ "type": "string" }, "locationId": { - "description": "The location of the database. Available locations are listed at https://cloud.google.com/firestore/docs/locations.", + "description": "Required. The location of the database. Available locations are listed at https://cloud.google.com/firestore/docs/locations.", "type": "string" }, "mongodbCompatibleDataAccessMode": { @@ -3758,7 +3748,7 @@ "type": "object" }, "type": { - "description": "The type of the database. See https://cloud.google.com/datastore/docs/firestore-or-datastore for information about how to choose.", + "description": "Required. The type of the database. See https://cloud.google.com/datastore/docs/firestore-or-datastore for information about how to choose.", "enum": [ "DATABASE_TYPE_UNSPECIFIED", "FIRESTORE_NATIVE", @@ -4193,6 +4183,10 @@ ], "type": "string" }, + "searchIndexOptions": { + "$ref": "GoogleFirestoreAdminV1SearchIndexOptions", + "description": "Optional. Options for search indexes that are at the index definition level. This field is only currently supported for indexes with MONGODB_COMPATIBLE_API ApiScope." + }, "shardCount": { "description": "Optional. The number of shards for the index.", "format": "int32", @@ -4306,6 +4300,10 @@ ], "type": "string" }, + "searchConfig": { + "$ref": "GoogleFirestoreAdminV1SearchConfig", + "description": "Indicates that this field supports search operations." + }, "vectorConfig": { "$ref": "GoogleFirestoreAdminV1VectorConfig", "description": "Indicates that this field supports nearest neighbor and distance operations on vector." @@ -4614,6 +4612,92 @@ }, "type": "object" }, + "GoogleFirestoreAdminV1SearchConfig": { + "description": "The configuration for how to index a field for search.", + "id": "GoogleFirestoreAdminV1SearchConfig", + "properties": { + "geoSpec": { + "$ref": "GoogleFirestoreAdminV1SearchGeoSpec", + "description": "Optional. The specification for building a geo search index for a field." + }, + "textSpec": { + "$ref": "GoogleFirestoreAdminV1SearchTextSpec", + "description": "Optional. The specification for building a text search index for a field." + } + }, + "type": "object" + }, + "GoogleFirestoreAdminV1SearchGeoSpec": { + "description": "The specification for how to build a geo search index for a field.", + "id": "GoogleFirestoreAdminV1SearchGeoSpec", + "properties": { + "geoJsonIndexingDisabled": { + "description": "Optional. Disables geoJSON indexing for the field. By default, geoJSON points are indexed.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleFirestoreAdminV1SearchIndexOptions": { + "description": "Options for search indexes at the definition level.", + "id": "GoogleFirestoreAdminV1SearchIndexOptions", + "properties": { + "textLanguage": { + "description": "Optional. The language to use for text search indexes. Used as the default language if not overridden at the document level by specifying the `text_language_override_field`. The language is specified as a BCP 47 language code. For indexes with MONGODB_COMPATIBLE_API ApiScope: If unspecified, the default language is English. For indexes with `ANY_API` ApiScope: If unspecified, the default behavior is autodetect.", + "type": "string" + }, + "textLanguageOverrideFieldPath": { + "description": "Optional. The field in the document that specifies which language to use for that specific document. For indexes with MONGODB_COMPATIBLE_API ApiScope: if unspecified, the language is taken from the \"language\" field if it exists or from `text_language` if it does not.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleFirestoreAdminV1SearchTextIndexSpec": { + "description": "Specification of how the field should be indexed for search text indexes.", + "id": "GoogleFirestoreAdminV1SearchTextIndexSpec", + "properties": { + "indexType": { + "description": "Required. How to index the text field value.", + "enum": [ + "TEXT_INDEX_TYPE_UNSPECIFIED", + "TOKENIZED" + ], + "enumDescriptions": [ + "The index type is unspecified. Not a valid option.", + "Field values are tokenized. This is the only way currently supported for MONGODB_COMPATIBLE_API." + ], + "type": "string" + }, + "matchType": { + "description": "Required. How to match the text field value.", + "enum": [ + "TEXT_MATCH_TYPE_UNSPECIFIED", + "MATCH_GLOBALLY" + ], + "enumDescriptions": [ + "The match type is unspecified. Not a valid option.", + "Match on any indexed field. This is the only way currently supported for MONGODB_COMPATIBLE_API." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleFirestoreAdminV1SearchTextSpec": { + "description": "The specification for how to build a text search index for a field.", + "id": "GoogleFirestoreAdminV1SearchTextSpec", + "properties": { + "indexSpecs": { + "description": "Required. Specifications for how the field should be indexed. Repeated so that the field can be indexed in multiple ways.", + "items": { + "$ref": "GoogleFirestoreAdminV1SearchTextIndexSpec" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleFirestoreAdminV1SourceEncryptionOptions": { "description": "The configuration options for using the same encryption method as the source.", "id": "GoogleFirestoreAdminV1SourceEncryptionOptions", @@ -4661,9 +4745,14 @@ "type": "object" }, "GoogleFirestoreAdminV1TtlConfig": { - "description": "The TTL (time-to-live) configuration for documents that have this `Field` set. Storing a timestamp value into a TTL-enabled field will be treated as the document's absolute expiration time. For Enterprise edition databases, the timestamp value may also be stored in an array value in the TTL-enabled field. Timestamp values in the past indicate that the document is eligible for immediate expiration. Using any other data type or leaving the field absent will disable expiration for the individual document.", + "description": "The TTL (time-to-live) configuration for documents that have this `Field` set. A timestamp stored in a TTL-enabled field will be used to determine the expiration time of the document. The expiration time is the sum of the timestamp value and the `expiration_offset`. For Enterprise edition databases, the timestamp value may alternatively be stored in an array value in the TTL-enabled field. An expiration time in the past indicates that the document is eligible for immediate expiration. Using any other data type or leaving the field absent will disable expiration for the individual document.", "id": "GoogleFirestoreAdminV1TtlConfig", "properties": { + "expirationOffset": { + "description": "Optional. The offset, relative to the timestamp value from the TTL-enabled field, used to determine the document's expiration time. `expiration_offset.seconds` must be between 0 and 2,147,483,647 inclusive. Values more precise than seconds are rejected. If unset, defaults to 0, in which case the expiration time is the same as the timestamp value from the TTL-enabled field.", + "format": "google-duration", + "type": "string" + }, "state": { "description": "Output only. The state of the TTL configuration.", "enum": [ @@ -4701,6 +4790,11 @@ "The TTL config is being removed." ], "type": "string" + }, + "expirationOffset": { + "description": "The offset, relative to the timestamp value in the TTL-enabled field, used determine the document's expiration time.", + "format": "google-duration", + "type": "string" } }, "type": "object" @@ -5224,9 +5318,23 @@ "type": "object" }, "ReadWrite": { - "description": "Options for a transaction that can be used to read and write documents. Firestore does not allow 3rd party auth requests to create read-write. transactions.", + "description": "Options for a transaction that can be used to read and write documents.", "id": "ReadWrite", "properties": { + "concurrencyMode": { + "description": "Optional. The concurrency control mode to use for this transaction. A database is able to use different concurrency modes for different transactions simultaneously. 3rd party auth requests are only allowed to create optimistic read-write transactions and must specify that here even if the database-level setting is already configured to optimistic.", + "enum": [ + "CONCURRENCY_MODE_UNSPECIFIED", + "OPTIMISTIC", + "PESSIMISTIC" + ], + "enumDescriptions": [ + "Start the transaction with the database-level default concurrency mode.", + "Use optimistic concurrency control for the new transaction.", + "Use pessimistic concurrency control for the new transaction." + ], + "type": "string" + }, "retryTransaction": { "description": "An optional transaction to retry.", "format": "byte", @@ -5482,7 +5590,7 @@ "type": "integer" }, "orderBy": { - "description": "The order to apply to the query results. Firestore allows callers to provide a full ordering, a partial ordering, or no ordering at all. In all cases, Firestore guarantees a stable ordering through the following rules: * The `order_by` is required to reference all fields used with an inequality filter. * All fields that are required to be in the `order_by` but are not already present are appended in lexicographical ordering of the field name. * If an order on `__name__` is not specified, it is appended by default. Fields are appended with the same sort direction as the last order specified, or 'ASCENDING' if no order was specified. For example: * `ORDER BY a` becomes `ORDER BY a ASC, __name__ ASC` * `ORDER BY a DESC` becomes `ORDER BY a DESC, __name__ DESC` * `WHERE a > 1` becomes `WHERE a > 1 ORDER BY a ASC, __name__ ASC` * `WHERE __name__ > ... AND a > 1` becomes `WHERE __name__ > ... AND a > 1 ORDER BY a ASC, __name__ ASC`", + "description": "The order to apply to the query results. Callers can provide a full ordering, a partial ordering, or no ordering at all. While Firestore will always respect the provided order, the behavior for queries without a full ordering is different per database edition: In Standard edition, Firestore guarantees a stable ordering through the following rules: * The `order_by` is required to reference all fields used with an inequality filter. * All fields that are required to be in the `order_by` but are not already present are appended in lexicographical ordering of the field name. * If an order on `__name__` is not specified, it is appended by default. Fields are appended with the same sort direction as the last order specified, or 'ASCENDING' if no order was specified. For example: * `ORDER BY a` becomes `ORDER BY a ASC, __name__ ASC` * `ORDER BY a DESC` becomes `ORDER BY a DESC, __name__ DESC` * `WHERE a > 1` becomes `WHERE a > 1 ORDER BY a ASC, __name__ ASC` * `WHERE __name__ > ... AND a > 1` becomes `WHERE __name__ > ... AND a > 1 ORDER BY a ASC, __name__ ASC` In Enterprise edition, Firestore does not guarantee a stable ordering. Instead it will pick the most efficient ordering based on the indexes available at the time of query execution. This will result in a different ordering for queries that are otherwise identical. To ensure a stable ordering, always include a unique field in the `order_by` clause, such as `__name__`.", "items": { "$ref": "Order" }, @@ -5713,6 +5821,10 @@ "description": "A timestamp value. Precise only to microseconds. When stored, any additional precision is rounded down.", "format": "google-datetime", "type": "string" + }, + "variableReferenceValue": { + "description": "Pointer to a variable defined elsewhere in a pipeline. Unlike `field_reference_value` which references a field within a document, this refers to a variable, defined in a separate namespace than the fields of a document.", + "type": "string" } }, "type": "object" diff --git a/discovery/firestore-v1beta1.json b/discovery/firestore-v1beta1.json index 9ef80f0c782..ed1fa1094af 100644 --- a/discovery/firestore-v1beta1.json +++ b/discovery/firestore-v1beta1.json @@ -119,11 +119,6 @@ "endpointUrl": "https://firestore.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://firestore.europe-west15.rep.googleapis.com/", - "location": "europe-west15" - }, { "description": "Regional Endpoint", "endpointUrl": "https://firestore.europe-west2.rep.googleapis.com/", @@ -339,11 +334,6 @@ "endpointUrl": "https://batch-firestore.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://batch-firestore.europe-west15.rep.googleapis.com/", - "location": "europe-west15" - }, { "description": "Regional Endpoint", "endpointUrl": "https://batch-firestore.europe-west2.rep.googleapis.com/", @@ -991,7 +981,7 @@ ], "parameters": { "parent": { - "description": "Required. The parent document. In the format: `projects/{project_id}/databases/{database_id}/documents/{document_path}`. For example: `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`", + "description": "Required. The parent document. In the format: `projects/{project_id}/databases/{database_id}/documents/{document_path}`. For example: `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom` Use `projects/{project_id}/databases/{database_id}/documents` to list top-level collections.", "location": "path", "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.*$", "required": true, @@ -1441,7 +1431,7 @@ } } }, - "revision": "20260130", + "revision": "20260427", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -3141,9 +3131,23 @@ "type": "object" }, "ReadWrite": { - "description": "Options for a transaction that can be used to read and write documents. Firestore does not allow 3rd party auth requests to create read-write. transactions.", + "description": "Options for a transaction that can be used to read and write documents.", "id": "ReadWrite", "properties": { + "concurrencyMode": { + "description": "Optional. The concurrency control mode to use for this transaction. A database is able to use different concurrency modes for different transactions simultaneously. 3rd party auth requests are only allowed to create optimistic read-write transactions and must specify that here even if the database-level setting is already configured to optimistic.", + "enum": [ + "CONCURRENCY_MODE_UNSPECIFIED", + "OPTIMISTIC", + "PESSIMISTIC" + ], + "enumDescriptions": [ + "Start the transaction with the database-level default concurrency mode.", + "Use optimistic concurrency control for the new transaction.", + "Use pessimistic concurrency control for the new transaction." + ], + "type": "string" + }, "retryTransaction": { "description": "An optional transaction to retry.", "format": "byte", @@ -3399,7 +3403,7 @@ "type": "integer" }, "orderBy": { - "description": "The order to apply to the query results. Firestore allows callers to provide a full ordering, a partial ordering, or no ordering at all. In all cases, Firestore guarantees a stable ordering through the following rules: * The `order_by` is required to reference all fields used with an inequality filter. * All fields that are required to be in the `order_by` but are not already present are appended in lexicographical ordering of the field name. * If an order on `__name__` is not specified, it is appended by default. Fields are appended with the same sort direction as the last order specified, or 'ASCENDING' if no order was specified. For example: * `ORDER BY a` becomes `ORDER BY a ASC, __name__ ASC` * `ORDER BY a DESC` becomes `ORDER BY a DESC, __name__ DESC` * `WHERE a > 1` becomes `WHERE a > 1 ORDER BY a ASC, __name__ ASC` * `WHERE __name__ > ... AND a > 1` becomes `WHERE __name__ > ... AND a > 1 ORDER BY a ASC, __name__ ASC`", + "description": "The order to apply to the query results. Callers can provide a full ordering, a partial ordering, or no ordering at all. While Firestore will always respect the provided order, the behavior for queries without a full ordering is different per database edition: In Standard edition, Firestore guarantees a stable ordering through the following rules: * The `order_by` is required to reference all fields used with an inequality filter. * All fields that are required to be in the `order_by` but are not already present are appended in lexicographical ordering of the field name. * If an order on `__name__` is not specified, it is appended by default. Fields are appended with the same sort direction as the last order specified, or 'ASCENDING' if no order was specified. For example: * `ORDER BY a` becomes `ORDER BY a ASC, __name__ ASC` * `ORDER BY a DESC` becomes `ORDER BY a DESC, __name__ DESC` * `WHERE a > 1` becomes `WHERE a > 1 ORDER BY a ASC, __name__ ASC` * `WHERE __name__ > ... AND a > 1` becomes `WHERE __name__ > ... AND a > 1 ORDER BY a ASC, __name__ ASC` In Enterprise edition, Firestore does not guarantee a stable ordering. Instead it will pick the most efficient ordering based on the indexes available at the time of query execution. This will result in a different ordering for queries that are otherwise identical. To ensure a stable ordering, always include a unique field in the `order_by` clause, such as `__name__`.", "items": { "$ref": "Order" }, @@ -3630,6 +3634,10 @@ "description": "A timestamp value. Precise only to microseconds. When stored, any additional precision is rounded down.", "format": "google-datetime", "type": "string" + }, + "variableReferenceValue": { + "description": "Pointer to a variable defined elsewhere in a pipeline. Unlike `field_reference_value` which references a field within a document, this refers to a variable, defined in a separate namespace than the fields of a document.", + "type": "string" } }, "type": "object" diff --git a/discovery/firestore-v1beta2.json b/discovery/firestore-v1beta2.json index d159a27a243..f2c09cb0080 100644 --- a/discovery/firestore-v1beta2.json +++ b/discovery/firestore-v1beta2.json @@ -119,11 +119,6 @@ "endpointUrl": "https://firestore.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://firestore.europe-west15.rep.googleapis.com/", - "location": "europe-west15" - }, { "description": "Regional Endpoint", "endpointUrl": "https://firestore.europe-west2.rep.googleapis.com/", @@ -339,11 +334,6 @@ "endpointUrl": "https://batch-firestore.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://batch-firestore.europe-west15.rep.googleapis.com/", - "location": "europe-west15" - }, { "description": "Regional Endpoint", "endpointUrl": "https://batch-firestore.europe-west2.rep.googleapis.com/", @@ -877,7 +867,7 @@ } } }, - "revision": "20260130", + "revision": "20260323", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Empty": { diff --git a/discovery/games-v1.json b/discovery/games-v1.json index 363a9ffa29f..a27802181ef 100644 --- a/discovery/games-v1.json +++ b/discovery/games-v1.json @@ -1470,13 +1470,28 @@ } } }, - "revision": "20251003", + "revision": "20260416", "rootUrl": "https://games.googleapis.com/", "schemas": { "AchievementDefinition": { "description": "An achievement definition object.", "id": "AchievementDefinition", "properties": { + "achievementLifecycleState": { + "description": "Output only. The lifecycle state of the achievement.", + "enum": [ + "ACHIEVEMENT_LIFECYCLE_STATE_UNSPECIFIED", + "ACHIEVEMENT_LIFECYCLE_STATE_ACTIVE", + "ACHIEVEMENT_LIFECYCLE_STATE_ARCHIVED" + ], + "enumDescriptions": [ + "Default value. Should not be used.", + "The achievement is active and published, and can be earned by players.", + "The achievement is archived. It cannot be earned by players, and is hidden from players who have not already unlocked it. from players who haven't unlocked it." + ], + "readOnly": true, + "type": "string" + }, "achievementType": { "description": "The type of the achievement.", "enum": [ diff --git a/discovery/gkebackup-v1.json b/discovery/gkebackup-v1.json index 029a197c885..c1baeab0533 100644 --- a/discovery/gkebackup-v1.json +++ b/discovery/gkebackup-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "gkebackup.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2338,7 +2338,7 @@ } } }, - "revision": "20260213", + "revision": "20260422", "rootUrl": "https://gkebackup.googleapis.com/", "schemas": { "AuditConfig": { @@ -2475,7 +2475,7 @@ "type": "object" }, "BDRBackupRestoreJobLog": { - "description": "Log entry for Backup and Restore Job for resources using BackupPlan based protection. Next Id: 23", + "description": "Log entry for Backup and Restore Job for resources using BackupPlan based protection. Next Id: 24", "id": "BDRBackupRestoreJobLog", "properties": { "backupConsistencyTime": { @@ -2504,6 +2504,10 @@ "description": "Full resource name backup vault name", "type": "string" }, + "dataSourceName": { + "description": "Canonical Data Source Name", + "type": "string" + }, "endTime": { "description": "End time of the job.", "format": "google-datetime", diff --git a/discovery/gkehub-v1.json b/discovery/gkehub-v1.json index d82a9dbbd8a..e5791be917f 100644 --- a/discovery/gkehub-v1.json +++ b/discovery/gkehub-v1.json @@ -15,6 +15,48 @@ "description": "", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east7.rep.googleapis.com/", + "location": "us-east7" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -183,7 +225,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "gkehub.projects.locations.list", @@ -192,7 +234,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2122,7 +2164,7 @@ } } }, - "revision": "20260215", + "revision": "20260426", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceFeatureSpec": { @@ -4646,7 +4688,7 @@ "type": "integer" }, "nodeProviderId": { - "description": "Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the node_count will be zero and the node_provider_id will be empty.", + "description": "Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE on Google Cloud), the node_count will be zero and the node_provider_id will be empty.", "readOnly": true, "type": "string" }, @@ -5173,7 +5215,7 @@ }, "gkeCluster": { "$ref": "GkeCluster", - "description": "Optional. Specific information for a GKE-on-GCP cluster." + "description": "Optional. Specific information for a GKE on Google Cloud cluster." }, "googleManaged": { "description": "Output only. Whether the lifecycle of this membership is managed by a google cluster platform service.", @@ -6344,6 +6386,7 @@ "QUOTA_EXCEEDED_HTTP_FILTERS", "QUOTA_EXCEEDED_TCP_FILTERS", "QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS", + "CONFIG_APPLY_BLOCKED", "LEGACY_MC_SECRETS", "WORKLOAD_IDENTITY_REQUIRED", "NON_STANDARD_BINARY_USAGE", @@ -6399,6 +6442,7 @@ "HTTPFilter quota exceeded error code.", "TCPFilter quota exceeded error code.", "NetworkEndpointGroup quota exceeded error code.", + "Configuration failed to apply due to fleet being blocked.", "Legacy istio secrets found for multicluster error code", "Workload identity required error code", "Non-standard binary usage error code", diff --git a/discovery/gkehub-v1alpha.json b/discovery/gkehub-v1alpha.json index 0ac73672c18..4b70db7f720 100644 --- a/discovery/gkehub-v1alpha.json +++ b/discovery/gkehub-v1alpha.json @@ -15,6 +15,48 @@ "description": "", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east7.rep.googleapis.com/", + "location": "us-east7" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -183,7 +225,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha/projects/{projectsId}/locations", "httpMethod": "GET", "id": "gkehub.projects.locations.list", @@ -192,7 +234,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1627,7 +1669,7 @@ "rolloutSequences": { "methods": { "create": { - "description": "Create a new rollout sequence resource.", + "description": "Creates a new rollout sequence resource.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/rolloutSequences", "httpMethod": "POST", "id": "gkehub.projects.locations.rolloutSequences.create", @@ -1660,7 +1702,7 @@ ] }, "delete": { - "description": "Remove a RolloutSequence.", + "description": "Removes a RolloutSequence.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/rolloutSequences/{rolloutSequencesId}", "httpMethod": "DELETE", "id": "gkehub.projects.locations.rolloutSequences.delete", @@ -1710,7 +1752,7 @@ ] }, "list": { - "description": "Retrieve the list of all rollout sequences.", + "description": "Retrieves the list of all rollout sequences.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/rolloutSequences", "httpMethod": "GET", "id": "gkehub.projects.locations.rolloutSequences.list", @@ -1751,7 +1793,7 @@ ] }, "patch": { - "description": "Update a rollout sequence.", + "description": "Updates a rollout sequence.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/rolloutSequences/{rolloutSequencesId}", "httpMethod": "PATCH", "id": "gkehub.projects.locations.rolloutSequences.patch", @@ -1788,8 +1830,36 @@ }, "rollouts": { "methods": { + "forceCompleteStage": { + "description": "Force-completes a rollout stage. Only the active stage of an active rollout can be force-completed.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}:forceCompleteStage", + "httpMethod": "POST", + "id": "gkehub.projects.locations.rollouts.forceCompleteStage", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the rollout. Format: projects/{project}/locations/{location}/rollouts/{rollout}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/rollouts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}:forceCompleteStage", + "request": { + "$ref": "ForceCompleteRolloutStageRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { - "description": "Retrieve a single rollout.", + "description": "Retrieves a single rollout.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}", "httpMethod": "GET", "id": "gkehub.projects.locations.rollouts.get", @@ -1814,7 +1884,7 @@ ] }, "list": { - "description": "Retrieve the list of all rollouts.", + "description": "Retrieves the list of all rollouts.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/rollouts", "httpMethod": "GET", "id": "gkehub.projects.locations.rollouts.list", @@ -2498,7 +2568,7 @@ } } }, - "revision": "20260215", + "revision": "20260426", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceFeatureSpec": { @@ -2613,6 +2683,17 @@ }, "type": "object" }, + "AutoUpgradeConfig": { + "description": "Configuration for automatic upgrades.", + "id": "AutoUpgradeConfig", + "properties": { + "rolloutCreationScope": { + "$ref": "RolloutCreationScope", + "description": "Optional. Specifies the scope of automation for the creation of rollouts. Represents the types of rollouts (version upgrades) the sequence should initiate automatically. If this field is `unset`, it defaults to all types. If this field is `set` but the internal `upgrade_types` list is `empty`, most automatic rollouts are disabled for this sequence. Exceptions are rollouts enforcing our security policies (e.g. such as end-of-support and outdated control plane patch enforcements). These policy enforcements cannot be disabled." + } + }, + "type": "object" + }, "BinaryAuthorizationConfig": { "description": "BinaryAuthorizationConfig defines the fleet level configuration of binary authorization feature.", "id": "BinaryAuthorizationConfig", @@ -4771,6 +4852,18 @@ }, "type": "object" }, + "ForceCompleteRolloutStageRequest": { + "description": "Request message for force-completing a rollout stage.", + "id": "ForceCompleteRolloutStageRequest", + "properties": { + "stageNumber": { + "description": "Required. The stage number to force-complete.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GenerateConnectManifestResponse": { "description": "GenerateConnectManifestResponse contains manifest information for installing/upgrading a Connect agent.", "id": "GenerateConnectManifestResponse", @@ -5269,7 +5362,7 @@ "type": "integer" }, "nodeProviderId": { - "description": "Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the node_count will be zero and the node_provider_id will be empty.", + "description": "Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE on Google Cloud), the node_count will be zero and the node_provider_id will be empty.", "readOnly": true, "type": "string" }, @@ -5857,7 +5950,7 @@ }, "gkeCluster": { "$ref": "GkeCluster", - "description": "Optional. Specific information for a GKE-on-GCP cluster." + "description": "Optional. Specific information for a GKE on Google Cloud cluster." }, "googleManaged": { "description": "Output only. Whether the lifecycle of this membership is managed by a google cluster platform service.", @@ -6954,7 +7047,7 @@ "type": "object" }, "Rollout": { - "description": "Rollout contains the Rollout metadata and configuration.", + "description": "Rollout contains the Rollout metadata and configuration. Next ID: 28", "id": "Rollout", "properties": { "completeTime": { @@ -7039,6 +7132,23 @@ "readOnly": true, "type": "string" }, + "stateReasonType": { + "description": "Output only. StateReasonType specifies the reason type of the Rollout state.", + "enum": [ + "STATE_REASON_TYPE_UNSPECIFIED", + "PAUSED_BY_USER", + "PAUSED_BY_SYSTEM_CONFIG", + "PAUSED_WAITING_FOR_NEXT_STAGE" + ], + "enumDescriptions": [ + "Unspecified state reason.", + "Paused by the user.", + "Paused by the RSv2 Orchestrator due to system config(ex. GKE freeze).", + "Paused waiting for the next stage to start." + ], + "readOnly": true, + "type": "string" + }, "uid": { "description": "Output only. Google-generated UUID for this resource. This is unique across all Rollout resources. If a Rollout resource is deleted and another resource with the same name is created, it gets a different uid.", "readOnly": true, @@ -7057,6 +7167,34 @@ }, "type": "object" }, + "RolloutCreationScope": { + "description": "The scope for automatic rollout creation.", + "id": "RolloutCreationScope", + "properties": { + "upgradeTypes": { + "description": "Optional. The list of enabled upgrade types.", + "items": { + "enum": [ + "UPGRADE_TYPE_UNSPECIFIED", + "CONTROL_PLANE_MINOR", + "CONTROL_PLANE_PATCH", + "NODE_MINOR", + "NODE_PATCH" + ], + "enumDescriptions": [ + "Default value. Should not be used.", + "Control plane minor version upgrades (e.g. 1.33 to 1.34).", + "Control plane patch version upgrades (e.g. 1.33.1 to 1.33.2).", + "Node minor version upgrades (e.g. 1.33 to 1.34 or 1.33 to 1.35).", + "Node patch version upgrades (e.g. 1.33.1 to 1.33.2)." + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "RolloutMembershipState": { "description": "Metadata about single cluster (GKE Hub membership) that's part of this Rollout.", "id": "RolloutMembershipState", @@ -7088,6 +7226,10 @@ "description": "RolloutSequence defines the desired order of upgrades.", "id": "RolloutSequence", "properties": { + "autoUpgradeConfig": { + "$ref": "AutoUpgradeConfig", + "description": "Optional. Configuration for automatic upgrades. If this message is `unset`, the system applies default behavior." + }, "createTime": { "description": "Output only. The timestamp at which the Rollout Sequence was created.", "format": "google-datetime", @@ -7104,11 +7246,20 @@ "description": "Optional. Human readable display name of the Rollout Sequence.", "type": "string" }, + "effectiveAutoUpgradeConfig": { + "$ref": "AutoUpgradeConfig", + "description": "Output only. The resolved auto-upgrade options which are in effect.", + "readOnly": true + }, "etag": { "description": "Output only. etag of the Rollout Sequence Ex. abc1234", "readOnly": true, "type": "string" }, + "ignoredClustersSelector": { + "$ref": "ClusterSelector", + "description": "Optional. Selector for clusters to exclude from the Rollout Sequence." + }, "labels": { "additionalProperties": { "type": "string" @@ -7150,19 +7301,27 @@ "description": "State and reasons of the Rollout Sequence.", "id": "RolloutSequenceState", "properties": { + "lastStateChangeTime": { + "description": "Output only. The timestamp at which the LifecycleState was last changed. Used to track how long it has been in the current state.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "lifecycleState": { "description": "Output only. Lifecycle state of the Rollout Sequence.", "enum": [ "LIFECYCLE_STATE_UNSPECIFIED", "LIFECYCLE_STATE_ACTIVE", "LIFECYCLE_STATE_WARNING", - "LIFECYCLE_STATE_ERROR" + "LIFECYCLE_STATE_ERROR", + "LIFECYCLE_STATE_INITIALIZING" ], "enumDescriptions": [ "The default value. This value is used if the state is omitted.", "The Rollout Sequence is active.", "The Rollout Sequence has warnings.", - "The Rollout Sequence has errors." + "The Rollout Sequence has errors.", + "The Rollout Sequence is being initialized." ], "readOnly": true, "type": "string" @@ -7199,45 +7358,47 @@ "id": "RolloutStage", "properties": { "endTime": { - "description": "Optional. Output only. The time at which the wave ended.", + "description": "Optional. Output only. The time at which the stage ended.", "format": "google-datetime", "readOnly": true, "type": "string" }, "soakDuration": { - "description": "Optional. Duration to soak after this wave before starting the next wave.", + "description": "Optional. Duration to soak after this stage before starting the next stage.", "format": "google-duration", "type": "string" }, "stageNumber": { - "description": "Output only. The wave number to which this status applies.", + "description": "Output only. The stage number to which this status applies.", "format": "int32", "readOnly": true, "type": "integer" }, "startTime": { - "description": "Optional. Output only. The time at which the wave started.", + "description": "Optional. Output only. The time at which the stage started.", "format": "google-datetime", "readOnly": true, "type": "string" }, "state": { - "description": "Output only. The state of the wave.", + "description": "Output only. The state of the stage.", "enum": [ "STATE_UNSPECIFIED", "PENDING", "RUNNING", "SOAKING", "COMPLETED", - "FORCED_SOAKING" + "FORCED_SOAKING", + "PAUSED" ], "enumDescriptions": [ "Default value.", - "The wave is pending.", - "The wave is running.", - "The wave is soaking.", - "The wave is completed.", - "The wave is force soaking." + "The stage is pending.", + "The stage is running.", + "The stage is soaking.", + "The stage is completed.", + "The stage is force soaking.", + "The stage is paused." ], "readOnly": true, "type": "string" @@ -7554,6 +7715,7 @@ "QUOTA_EXCEEDED_HTTP_FILTERS", "QUOTA_EXCEEDED_TCP_FILTERS", "QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS", + "CONFIG_APPLY_BLOCKED", "LEGACY_MC_SECRETS", "WORKLOAD_IDENTITY_REQUIRED", "NON_STANDARD_BINARY_USAGE", @@ -7609,6 +7771,7 @@ "HTTPFilter quota exceeded error code.", "TCPFilter quota exceeded error code.", "NetworkEndpointGroup quota exceeded error code.", + "Configuration failed to apply due to fleet being blocked.", "Legacy istio secrets found for multicluster error code", "Workload identity required error code", "Non-standard binary usage error code", @@ -7796,6 +7959,7 @@ "QUOTA_EXCEEDED_HTTP_FILTERS", "QUOTA_EXCEEDED_TCP_FILTERS", "QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS", + "CONFIG_APPLY_BLOCKED", "LEGACY_MC_SECRETS", "WORKLOAD_IDENTITY_REQUIRED", "NON_STANDARD_BINARY_USAGE", @@ -7851,6 +8015,7 @@ "HTTPFilter quota exceeded error code.", "TCPFilter quota exceeded error code.", "NetworkEndpointGroup quota exceeded error code.", + "Configuration failed to apply due to fleet being blocked.", "Legacy istio secrets found for multicluster error code.", "Workload identity required error code.", "Non-standard binary usage error code.", diff --git a/discovery/gkehub-v1beta.json b/discovery/gkehub-v1beta.json index 3fcf6640e99..eb36c22e727 100644 --- a/discovery/gkehub-v1beta.json +++ b/discovery/gkehub-v1beta.json @@ -15,6 +15,48 @@ "description": "", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east7.rep.googleapis.com/", + "location": "us-east7" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -183,7 +225,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta/projects/{projectsId}/locations", "httpMethod": "GET", "id": "gkehub.projects.locations.list", @@ -192,7 +234,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1483,7 +1525,7 @@ "rolloutSequences": { "methods": { "create": { - "description": "Create a new rollout sequence resource.", + "description": "Creates a new rollout sequence resource.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/rolloutSequences", "httpMethod": "POST", "id": "gkehub.projects.locations.rolloutSequences.create", @@ -1516,7 +1558,7 @@ ] }, "delete": { - "description": "Remove a RolloutSequence.", + "description": "Removes a RolloutSequence.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/rolloutSequences/{rolloutSequencesId}", "httpMethod": "DELETE", "id": "gkehub.projects.locations.rolloutSequences.delete", @@ -1566,7 +1608,7 @@ ] }, "list": { - "description": "Retrieve the list of all rollout sequences.", + "description": "Retrieves the list of all rollout sequences.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/rolloutSequences", "httpMethod": "GET", "id": "gkehub.projects.locations.rolloutSequences.list", @@ -1607,7 +1649,7 @@ ] }, "patch": { - "description": "Update a rollout sequence.", + "description": "Updates a rollout sequence.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/rolloutSequences/{rolloutSequencesId}", "httpMethod": "PATCH", "id": "gkehub.projects.locations.rolloutSequences.patch", @@ -1644,8 +1686,36 @@ }, "rollouts": { "methods": { + "forceCompleteStage": { + "description": "Force-completes a rollout stage. Only the active stage of an active rollout can be force-completed.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}:forceCompleteStage", + "httpMethod": "POST", + "id": "gkehub.projects.locations.rollouts.forceCompleteStage", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the rollout. Format: projects/{project}/locations/{location}/rollouts/{rollout}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/rollouts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}:forceCompleteStage", + "request": { + "$ref": "ForceCompleteRolloutStageRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { - "description": "Retrieve a single rollout.", + "description": "Retrieves a single rollout.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}", "httpMethod": "GET", "id": "gkehub.projects.locations.rollouts.get", @@ -1670,7 +1740,7 @@ ] }, "list": { - "description": "Retrieve the list of all rollouts.", + "description": "Retrieves the list of all rollouts.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/rollouts", "httpMethod": "GET", "id": "gkehub.projects.locations.rollouts.list", @@ -2354,7 +2424,7 @@ } } }, - "revision": "20260215", + "revision": "20260426", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceFeatureSpec": { @@ -2469,6 +2539,17 @@ }, "type": "object" }, + "AutoUpgradeConfig": { + "description": "Configuration for automatic upgrades.", + "id": "AutoUpgradeConfig", + "properties": { + "rolloutCreationScope": { + "$ref": "RolloutCreationScope", + "description": "Optional. Specifies the scope of automation for the creation of rollouts. Represents the types of rollouts (version upgrades) the sequence should initiate automatically. If this field is `unset`, it defaults to all types. If this field is `set` but the internal `upgrade_types` list is `empty`, most automatic rollouts are disabled for this sequence. Exceptions are rollouts enforcing our security policies (e.g. such as end-of-support and outdated control plane patch enforcements). These policy enforcements cannot be disabled." + } + }, + "type": "object" + }, "BinaryAuthorizationConfig": { "description": "BinaryAuthorizationConfig defines the fleet level configuration of binary authorization feature.", "id": "BinaryAuthorizationConfig", @@ -4467,6 +4548,18 @@ }, "type": "object" }, + "ForceCompleteRolloutStageRequest": { + "description": "Request message for force-completing a rollout stage.", + "id": "ForceCompleteRolloutStageRequest", + "properties": { + "stageNumber": { + "description": "Required. The stage number to force-complete.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GenerateConnectManifestResponse": { "description": "GenerateConnectManifestResponse contains manifest information for installing/upgrading a Connect agent.", "id": "GenerateConnectManifestResponse", @@ -4950,7 +5043,7 @@ "type": "integer" }, "nodeProviderId": { - "description": "Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the node_count will be zero and the node_provider_id will be empty.", + "description": "Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE on Google Cloud), the node_count will be zero and the node_provider_id will be empty.", "readOnly": true, "type": "string" }, @@ -5513,7 +5606,7 @@ }, "gkeCluster": { "$ref": "GkeCluster", - "description": "Optional. Specific information for a GKE-on-GCP cluster." + "description": "Optional. Specific information for a GKE on Google Cloud cluster." }, "googleManaged": { "description": "Output only. Whether the lifecycle of this membership is managed by a google cluster platform service.", @@ -6563,7 +6656,7 @@ "type": "object" }, "Rollout": { - "description": "Rollout contains the Rollout metadata and configuration.", + "description": "Rollout contains the Rollout metadata and configuration. Next ID: 28", "id": "Rollout", "properties": { "completeTime": { @@ -6648,6 +6741,23 @@ "readOnly": true, "type": "string" }, + "stateReasonType": { + "description": "Output only. StateReasonType specifies the reason type of the Rollout state.", + "enum": [ + "STATE_REASON_TYPE_UNSPECIFIED", + "PAUSED_BY_USER", + "PAUSED_BY_SYSTEM_CONFIG", + "PAUSED_WAITING_FOR_NEXT_STAGE" + ], + "enumDescriptions": [ + "Unspecified state reason.", + "Paused by the user.", + "Paused by the RSv2 Orchestrator due to system config(ex. GKE freeze).", + "Paused waiting for the next stage to start." + ], + "readOnly": true, + "type": "string" + }, "uid": { "description": "Output only. Google-generated UUID for this resource. This is unique across all Rollout resources. If a Rollout resource is deleted and another resource with the same name is created, it gets a different uid.", "readOnly": true, @@ -6666,6 +6776,34 @@ }, "type": "object" }, + "RolloutCreationScope": { + "description": "The scope for automatic rollout creation.", + "id": "RolloutCreationScope", + "properties": { + "upgradeTypes": { + "description": "Optional. The list of enabled upgrade types.", + "items": { + "enum": [ + "UPGRADE_TYPE_UNSPECIFIED", + "CONTROL_PLANE_MINOR", + "CONTROL_PLANE_PATCH", + "NODE_MINOR", + "NODE_PATCH" + ], + "enumDescriptions": [ + "Default value. Should not be used.", + "Control plane minor version upgrades (e.g. 1.33 to 1.34).", + "Control plane patch version upgrades (e.g. 1.33.1 to 1.33.2).", + "Node minor version upgrades (e.g. 1.33 to 1.34 or 1.33 to 1.35).", + "Node patch version upgrades (e.g. 1.33.1 to 1.33.2)." + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "RolloutMembershipState": { "description": "Metadata about single cluster (GKE Hub membership) that's part of this Rollout.", "id": "RolloutMembershipState", @@ -6697,6 +6835,10 @@ "description": "RolloutSequence defines the desired order of upgrades.", "id": "RolloutSequence", "properties": { + "autoUpgradeConfig": { + "$ref": "AutoUpgradeConfig", + "description": "Optional. Configuration for automatic upgrades. If this message is `unset`, the system applies default behavior." + }, "createTime": { "description": "Output only. The timestamp at which the Rollout Sequence was created.", "format": "google-datetime", @@ -6713,11 +6855,20 @@ "description": "Optional. Human readable display name of the Rollout Sequence.", "type": "string" }, + "effectiveAutoUpgradeConfig": { + "$ref": "AutoUpgradeConfig", + "description": "Output only. The resolved auto-upgrade options which are in effect.", + "readOnly": true + }, "etag": { "description": "Output only. etag of the Rollout Sequence Ex. abc1234", "readOnly": true, "type": "string" }, + "ignoredClustersSelector": { + "$ref": "ClusterSelector", + "description": "Optional. Selector for clusters to exclude from the Rollout Sequence." + }, "labels": { "additionalProperties": { "type": "string" @@ -6759,19 +6910,27 @@ "description": "State and reasons of the Rollout Sequence.", "id": "RolloutSequenceState", "properties": { + "lastStateChangeTime": { + "description": "Output only. The timestamp at which the LifecycleState was last changed. Used to track how long it has been in the current state.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, "lifecycleState": { "description": "Output only. Lifecycle state of the Rollout Sequence.", "enum": [ "LIFECYCLE_STATE_UNSPECIFIED", "LIFECYCLE_STATE_ACTIVE", "LIFECYCLE_STATE_WARNING", - "LIFECYCLE_STATE_ERROR" + "LIFECYCLE_STATE_ERROR", + "LIFECYCLE_STATE_INITIALIZING" ], "enumDescriptions": [ "The default value. This value is used if the state is omitted.", "The Rollout Sequence is active.", "The Rollout Sequence has warnings.", - "The Rollout Sequence has errors." + "The Rollout Sequence has errors.", + "The Rollout Sequence is being initialized." ], "readOnly": true, "type": "string" @@ -6808,45 +6967,47 @@ "id": "RolloutStage", "properties": { "endTime": { - "description": "Optional. Output only. The time at which the wave ended.", + "description": "Optional. Output only. The time at which the stage ended.", "format": "google-datetime", "readOnly": true, "type": "string" }, "soakDuration": { - "description": "Optional. Duration to soak after this wave before starting the next wave.", + "description": "Optional. Duration to soak after this stage before starting the next stage.", "format": "google-duration", "type": "string" }, "stageNumber": { - "description": "Output only. The wave number to which this status applies.", + "description": "Output only. The stage number to which this status applies.", "format": "int32", "readOnly": true, "type": "integer" }, "startTime": { - "description": "Optional. Output only. The time at which the wave started.", + "description": "Optional. Output only. The time at which the stage started.", "format": "google-datetime", "readOnly": true, "type": "string" }, "state": { - "description": "Output only. The state of the wave.", + "description": "Output only. The state of the stage.", "enum": [ "STATE_UNSPECIFIED", "PENDING", "RUNNING", "SOAKING", "COMPLETED", - "FORCED_SOAKING" + "FORCED_SOAKING", + "PAUSED" ], "enumDescriptions": [ "Default value.", - "The wave is pending.", - "The wave is running.", - "The wave is soaking.", - "The wave is completed.", - "The wave is force soaking." + "The stage is pending.", + "The stage is running.", + "The stage is soaking.", + "The stage is completed.", + "The stage is force soaking.", + "The stage is paused." ], "readOnly": true, "type": "string" @@ -7093,6 +7254,7 @@ "QUOTA_EXCEEDED_HTTP_FILTERS", "QUOTA_EXCEEDED_TCP_FILTERS", "QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS", + "CONFIG_APPLY_BLOCKED", "LEGACY_MC_SECRETS", "WORKLOAD_IDENTITY_REQUIRED", "NON_STANDARD_BINARY_USAGE", @@ -7148,6 +7310,7 @@ "HTTPFilter quota exceeded error code.", "TCPFilter quota exceeded error code.", "NetworkEndpointGroup quota exceeded error code.", + "Configuration failed to apply due to fleet being blocked.", "Legacy istio secrets found for multicluster error code", "Workload identity required error code", "Non-standard binary usage error code", diff --git a/discovery/gkehub-v1beta1.json b/discovery/gkehub-v1beta1.json index 52fa4147372..63b04f95478 100644 --- a/discovery/gkehub-v1beta1.json +++ b/discovery/gkehub-v1beta1.json @@ -15,6 +15,48 @@ "description": "", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east7.rep.googleapis.com/", + "location": "us-east7" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -135,7 +177,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "gkehub.projects.locations.list", @@ -144,7 +186,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -723,7 +765,7 @@ } } }, - "revision": "20260126", + "revision": "20260426", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "ApplianceCluster": { @@ -731,7 +773,7 @@ "id": "ApplianceCluster", "properties": { "resourceLink": { - "description": "Immutable. Self-link of the GCP resource for the Appliance Cluster. For example: //transferappliance.googleapis.com/projects/my-project/locations/us-west1-a/appliances/my-appliance", + "description": "Immutable. Self-link of the Google Cloud resource for the Appliance Cluster. For example: //transferappliance.googleapis.com/projects/my-project/locations/us-west1-a/appliances/my-appliance", "type": "string" } }, @@ -869,7 +911,7 @@ "id": "EdgeCluster", "properties": { "resourceLink": { - "description": "Immutable. Self-link of the GCP resource for the Edge Cluster. For example: //edgecontainer.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster", + "description": "Immutable. Self-link of the Google Cloud resource for the Edge Cluster. For example: //edgecontainer.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster", "type": "string" } }, @@ -943,7 +985,7 @@ "type": "boolean" }, "resourceLink": { - "description": "Immutable. Self-link of the GCP resource for the GKE cluster. For example: //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster Zonal clusters are also supported.", + "description": "Immutable. Self-link of the Google Cloud resource for the GKE cluster. For example: //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster Zonal clusters are also supported.", "type": "string" } }, @@ -998,7 +1040,7 @@ "type": "integer" }, "nodeProviderId": { - "description": "Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the node_count will be zero and the node_provider_id will be empty.", + "description": "Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-Google Cloud), the node_count will be zero and the node_provider_id will be empty.", "readOnly": true, "type": "string" }, @@ -1200,7 +1242,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. GCP labels for this membership. These labels are not leveraged by multi-cluster features, instead, we prefer cluster labels, which can be set on GKE cluster or other cluster types.", + "description": "Optional. Google Cloud labels for this membership. These labels are not leveraged by multi-cluster features, instead, we prefer cluster labels, which can be set on GKE cluster or other cluster types.", "type": "object" }, "lastConnectionTime": { @@ -1264,7 +1306,7 @@ }, "gkeCluster": { "$ref": "GkeCluster", - "description": "Optional. Specific information for a GKE-on-GCP cluster." + "description": "Optional. Specific information for a GKE-on-Google Cloud cluster." }, "kubernetesMetadata": { "$ref": "KubernetesMetadata", @@ -1362,7 +1404,7 @@ "type": "boolean" }, "resourceLink": { - "description": "Immutable. Self-link of the GCP resource for the GKE Multi-Cloud cluster. For example: //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/awsClusters/my-cluster //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/azureClusters/my-cluster //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/attachedClusters/my-cluster", + "description": "Immutable. Self-link of the Google Cloud resource for the GKE Multi-Cloud cluster. For example: //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/awsClusters/my-cluster //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/azureClusters/my-cluster //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/attachedClusters/my-cluster", "type": "string" } }, @@ -1400,7 +1442,7 @@ "type": "string" }, "resourceLink": { - "description": "Immutable. Self-link of the GCP resource for the GKE On-Prem cluster. For example: //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/vmwareClusters/my-cluster //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/bareMetalClusters/my-cluster", + "description": "Immutable. Self-link of the Google Cloud resource for the GKE On-Prem cluster. For example: //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/vmwareClusters/my-cluster //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/bareMetalClusters/my-cluster", "type": "string" } }, diff --git a/discovery/gkehub-v2.json b/discovery/gkehub-v2.json index a8e0b2907ab..b0da5f3b47e 100644 --- a/discovery/gkehub-v2.json +++ b/discovery/gkehub-v2.json @@ -15,6 +15,48 @@ "description": "", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east7.rep.googleapis.com/", + "location": "us-east7" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -135,7 +177,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2/projects/{projectsId}/locations", "httpMethod": "GET", "id": "gkehub.projects.locations.list", @@ -144,7 +186,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -482,7 +524,7 @@ } } }, - "revision": "20260126", + "revision": "20260426", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceState": { @@ -2411,7 +2453,7 @@ "additionalProperties": { "type": "string" }, - "description": "GCP labels for this MembershipFeature.", + "description": "Google Cloud labels for this MembershipFeature.", "type": "object" }, "lifecycleState": { @@ -3076,6 +3118,7 @@ "QUOTA_EXCEEDED_HTTP_FILTERS", "QUOTA_EXCEEDED_TCP_FILTERS", "QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS", + "CONFIG_APPLY_BLOCKED", "LEGACY_MC_SECRETS", "WORKLOAD_IDENTITY_REQUIRED", "NON_STANDARD_BINARY_USAGE", @@ -3131,6 +3174,7 @@ "HTTPFilter quota exceeded error code.", "TCPFilter quota exceeded error code.", "NetworkEndpointGroup quota exceeded error code.", + "Configuration failed to apply due to fleet being blocked.", "Legacy istio secrets found for multicluster error code", "Workload identity required error code", "Non-standard binary usage error code", diff --git a/discovery/gkehub-v2alpha.json b/discovery/gkehub-v2alpha.json index e8dfbcc6f38..0be04f9396b 100644 --- a/discovery/gkehub-v2alpha.json +++ b/discovery/gkehub-v2alpha.json @@ -15,6 +15,48 @@ "description": "", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east7.rep.googleapis.com/", + "location": "us-east7" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -135,7 +177,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2alpha/projects/{projectsId}/locations", "httpMethod": "GET", "id": "gkehub.projects.locations.list", @@ -144,7 +186,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -482,7 +524,7 @@ } } }, - "revision": "20260126", + "revision": "20260426", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceState": { @@ -2411,7 +2453,7 @@ "additionalProperties": { "type": "string" }, - "description": "GCP labels for this MembershipFeature.", + "description": "Google Cloud labels for this MembershipFeature.", "type": "object" }, "lifecycleState": { @@ -3076,6 +3118,7 @@ "QUOTA_EXCEEDED_HTTP_FILTERS", "QUOTA_EXCEEDED_TCP_FILTERS", "QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS", + "CONFIG_APPLY_BLOCKED", "LEGACY_MC_SECRETS", "WORKLOAD_IDENTITY_REQUIRED", "NON_STANDARD_BINARY_USAGE", @@ -3131,6 +3174,7 @@ "HTTPFilter quota exceeded error code.", "TCPFilter quota exceeded error code.", "NetworkEndpointGroup quota exceeded error code.", + "Configuration failed to apply due to fleet being blocked.", "Legacy istio secrets found for multicluster error code", "Workload identity required error code", "Non-standard binary usage error code", diff --git a/discovery/gkehub-v2beta.json b/discovery/gkehub-v2beta.json index 4060633cc37..9d379f03718 100644 --- a/discovery/gkehub-v2beta.json +++ b/discovery/gkehub-v2beta.json @@ -15,6 +15,48 @@ "description": "", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://gkehub.us-east7.rep.googleapis.com/", + "location": "us-east7" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -135,7 +177,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2beta/projects/{projectsId}/locations", "httpMethod": "GET", "id": "gkehub.projects.locations.list", @@ -144,7 +186,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -482,7 +524,7 @@ } } }, - "revision": "20260126", + "revision": "20260426", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceState": { @@ -2411,7 +2453,7 @@ "additionalProperties": { "type": "string" }, - "description": "GCP labels for this MembershipFeature.", + "description": "Google Cloud labels for this MembershipFeature.", "type": "object" }, "lifecycleState": { @@ -3076,6 +3118,7 @@ "QUOTA_EXCEEDED_HTTP_FILTERS", "QUOTA_EXCEEDED_TCP_FILTERS", "QUOTA_EXCEEDED_NETWORK_ENDPOINT_GROUPS", + "CONFIG_APPLY_BLOCKED", "LEGACY_MC_SECRETS", "WORKLOAD_IDENTITY_REQUIRED", "NON_STANDARD_BINARY_USAGE", @@ -3131,6 +3174,7 @@ "HTTPFilter quota exceeded error code.", "TCPFilter quota exceeded error code.", "NetworkEndpointGroup quota exceeded error code.", + "Configuration failed to apply due to fleet being blocked.", "Legacy istio secrets found for multicluster error code", "Workload identity required error code", "Non-standard binary usage error code", diff --git a/discovery/gkeonprem-v1.json b/discovery/gkeonprem-v1.json index 348213f77b9..080e75a2f36 100644 --- a/discovery/gkeonprem-v1.json +++ b/discovery/gkeonprem-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "gkeonprem.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -3163,7 +3163,7 @@ } } }, - "revision": "20251203", + "revision": "20260422", "rootUrl": "https://gkeonprem.googleapis.com/", "schemas": { "Authorization": { diff --git a/discovery/gmail-v1.json b/discovery/gmail-v1.json index 73d6ab03ad3..564e6e0b227 100644 --- a/discovery/gmail-v1.json +++ b/discovery/gmail-v1.json @@ -175,7 +175,7 @@ ] }, "stop": { - "description": "Stop receiving push notifications for the given user mailbox.", + "description": "Turn off push notification delivery for the given user mailbox. For more information, see [Configure push notifications in Gmail API](https://developers.google.com/workspace/gmail/api/guides/push).", "flatPath": "gmail/v1/users/{userId}/stop", "httpMethod": "POST", "id": "gmail.users.stop", @@ -200,7 +200,7 @@ ] }, "watch": { - "description": "Set up or update a push notification watch on the given user mailbox.", + "description": "Set up or update a push notification watch on the given user mailbox. For more information, see [Configure push notifications in Gmail API](https://developers.google.com/workspace/gmail/api/guides/push).", "flatPath": "gmail/v1/users/{userId}/watch", "httpMethod": "POST", "id": "gmail.users.watch", @@ -235,7 +235,7 @@ "drafts": { "methods": { "create": { - "description": "Creates a new draft with the `DRAFT` label.", + "description": "Creates a draft with the `DRAFT` label. For more information, see [Create and send draft emails](https://developers.google.com/workspace/gmail/api/guides/drafts).", "flatPath": "gmail/v1/users/{userId}/drafts", "httpMethod": "POST", "id": "gmail.users.drafts.create", @@ -283,7 +283,7 @@ "supportsMediaUpload": true }, "delete": { - "description": "Immediately and permanently deletes the specified draft. Does not simply trash it.", + "description": "Immediately and permanently deletes the specified draft. Does not simply trash it. For more information, see [Create and send draft emails](https://developers.google.com/workspace/gmail/api/guides/drafts).", "flatPath": "gmail/v1/users/{userId}/drafts/{id}", "httpMethod": "DELETE", "id": "gmail.users.drafts.delete", @@ -315,7 +315,7 @@ ] }, "get": { - "description": "Gets the specified draft.", + "description": "Gets the specified draft. For more information, see [Create and send draft emails](https://developers.google.com/workspace/gmail/api/guides/drafts).", "flatPath": "gmail/v1/users/{userId}/drafts/{id}", "httpMethod": "GET", "id": "gmail.users.drafts.get", @@ -368,7 +368,7 @@ ] }, "list": { - "description": "Lists the drafts in the user's mailbox.", + "description": "Lists the drafts in the user's mailbox. For more information, see [Create and send draft emails](https://developers.google.com/workspace/gmail/api/guides/drafts).", "flatPath": "gmail/v1/users/{userId}/drafts", "httpMethod": "GET", "id": "gmail.users.drafts.list", @@ -419,7 +419,7 @@ ] }, "send": { - "description": "Sends the specified, existing draft to the recipients in the `To`, `Cc`, and `Bcc` headers.", + "description": "Sends the specified, existing draft to the recipients in the `To`, `Cc`, and `Bcc` headers. For more information, see [Create and send draft emails](https://developers.google.com/workspace/gmail/api/guides/drafts).", "flatPath": "gmail/v1/users/{userId}/drafts/send", "httpMethod": "POST", "id": "gmail.users.drafts.send", @@ -467,7 +467,7 @@ "supportsMediaUpload": true }, "update": { - "description": "Replaces a draft's content.", + "description": "Replaces a draft's content. For more information, see [Create and send draft emails](https://developers.google.com/workspace/gmail/api/guides/drafts).", "flatPath": "gmail/v1/users/{userId}/drafts/{id}", "httpMethod": "PUT", "id": "gmail.users.drafts.update", @@ -526,7 +526,7 @@ "history": { "methods": { "list": { - "description": "Lists the history of all changes to the given mailbox. History results are returned in chronological order (increasing `historyId`).", + "description": "Lists the history of all changes to the given mailbox. History results are returned in chronological order (increasing `historyId`). For more information, see [Synchronize clients with Gmail](https://developers.google.com/workspace/gmail/api/guides/sync).", "flatPath": "gmail/v1/users/{userId}/history", "httpMethod": "GET", "id": "gmail.users.history.list", @@ -599,7 +599,7 @@ "labels": { "methods": { "create": { - "description": "Creates a new label.", + "description": "Creates a label. For more information, see [Manage labels](https://developers.google.com/workspace/gmail/api/guides/labels).", "flatPath": "gmail/v1/users/{userId}/labels", "httpMethod": "POST", "id": "gmail.users.labels.create", @@ -629,7 +629,7 @@ ] }, "delete": { - "description": "Immediately and permanently deletes the specified label and removes it from any messages and threads that it is applied to.", + "description": "Immediately and permanently deletes the specified label and removes it from any messages and threads that it's applied to. For more information, see [Manage labels](https://developers.google.com/workspace/gmail/api/guides/labels).", "flatPath": "gmail/v1/users/{userId}/labels/{id}", "httpMethod": "DELETE", "id": "gmail.users.labels.delete", @@ -660,7 +660,7 @@ ] }, "get": { - "description": "Gets the specified label.", + "description": "Gets the specified label. For more information, see [Manage labels](https://developers.google.com/workspace/gmail/api/guides/labels).", "flatPath": "gmail/v1/users/{userId}/labels/{id}", "httpMethod": "GET", "id": "gmail.users.labels.get", @@ -696,7 +696,7 @@ ] }, "list": { - "description": "Lists all labels in the user's mailbox.", + "description": "Lists all labels in the user's mailbox. For more information, see [Manage labels](https://developers.google.com/workspace/gmail/api/guides/labels).", "flatPath": "gmail/v1/users/{userId}/labels", "httpMethod": "GET", "id": "gmail.users.labels.list", @@ -725,7 +725,7 @@ ] }, "patch": { - "description": "Patch the specified label.", + "description": "Patch the specified label. For more information, see [Manage labels](https://developers.google.com/workspace/gmail/api/guides/labels).", "flatPath": "gmail/v1/users/{userId}/labels/{id}", "httpMethod": "PATCH", "id": "gmail.users.labels.patch", @@ -762,7 +762,7 @@ ] }, "update": { - "description": "Updates the specified label.", + "description": "Updates the specified label. For more information, see [Manage labels](https://developers.google.com/workspace/gmail/api/guides/labels).", "flatPath": "gmail/v1/users/{userId}/labels/{id}", "httpMethod": "PUT", "id": "gmail.users.labels.update", @@ -945,7 +945,7 @@ ] }, "import": { - "description": "Imports a message into only this user's mailbox, with standard email delivery scanning and classification similar to receiving via SMTP. This method doesn't perform SPF checks, so it might not work for some spam messages, such as those attempting to perform domain spoofing. This method does not send a message. Note that the maximum size of the message is 150MB.", + "description": "Imports a message into only this user's mailbox, with standard email delivery scanning and classification similar to receiving via SMTP. This method doesn't perform SPF checks, so it might not work for some spam messages, such as those attempting to perform domain spoofing. This method does not send a message. Note that the maximum size of the message is 150 MB.", "flatPath": "gmail/v1/users/{userId}/messages/import", "httpMethod": "POST", "id": "gmail.users.messages.import", @@ -1024,7 +1024,7 @@ "supportsMediaUpload": true }, "insert": { - "description": "Directly inserts a message into only this user's mailbox similar to `IMAP APPEND`, bypassing most scanning and classification. Does not send a message.", + "description": "Directly inserts a message into only this user's mailbox similar to `IMAP APPEND`, bypassing most scanning and classification. Does not send a message. For more information, see [Create and send email messages](https://developers.google.com/workspace/gmail/api/guides/sending).", "flatPath": "gmail/v1/users/{userId}/messages", "httpMethod": "POST", "id": "gmail.users.messages.insert", @@ -1091,7 +1091,7 @@ "supportsMediaUpload": true }, "list": { - "description": "Lists the messages in the user's mailbox. For example usage, see [List Gmail messages](https://developers.google.com/workspace/gmail/api/guides/list-messages).", + "description": "Lists the messages in the user's mailbox. For more information, see [List Gmail messages](https://developers.google.com/workspace/gmail/api/guides/list-messages).", "flatPath": "gmail/v1/users/{userId}/messages", "httpMethod": "GET", "id": "gmail.users.messages.list", @@ -1184,7 +1184,7 @@ ] }, "send": { - "description": "Sends the specified message to the recipients in the `To`, `Cc`, and `Bcc` headers. For example usage, see [Sending email](https://developers.google.com/workspace/gmail/api/guides/sending).", + "description": "Sends the specified message to the recipients in the `To`, `Cc`, and `Bcc` headers. For more information, see [Create and send email messages](https://developers.google.com/workspace/gmail/api/guides/sending).", "flatPath": "gmail/v1/users/{userId}/messages/send", "httpMethod": "POST", "id": "gmail.users.messages.send", @@ -1352,7 +1352,7 @@ "settings": { "methods": { "getAutoForwarding": { - "description": "Gets the auto-forwarding setting for the specified account.", + "description": "Gets the auto-forwarding setting for the specified account. For more information, see [Manage email forwarding](https://developers.google.com/workspace/gmail/api/guides/forwarding_settings).", "flatPath": "gmail/v1/users/{userId}/settings/autoForwarding", "httpMethod": "GET", "id": "gmail.users.settings.getAutoForwarding", @@ -1380,7 +1380,7 @@ ] }, "getImap": { - "description": "Gets IMAP settings.", + "description": "Gets IMAP settings. For more information, see [Configure POP and IMAP settings with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/pop_imap_settings).", "flatPath": "gmail/v1/users/{userId}/settings/imap", "httpMethod": "GET", "id": "gmail.users.settings.getImap", @@ -1408,7 +1408,7 @@ ] }, "getLanguage": { - "description": "Gets language settings.", + "description": "Gets language settings. For more information, see [Manage language settings](https://developers.google.com/workspace/gmail/api/guides/language-settings).", "flatPath": "gmail/v1/users/{userId}/settings/language", "httpMethod": "GET", "id": "gmail.users.settings.getLanguage", @@ -1436,7 +1436,7 @@ ] }, "getPop": { - "description": "Gets POP settings.", + "description": "Gets POP settings. For more information, see [Configure POP and IMAP settings with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/pop_imap_settings).", "flatPath": "gmail/v1/users/{userId}/settings/pop", "httpMethod": "GET", "id": "gmail.users.settings.getPop", @@ -1464,7 +1464,7 @@ ] }, "getVacation": { - "description": "Gets vacation responder settings.", + "description": "Gets vacation responder settings. For more information, see [Manage vacation settings with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/vacation_settings).", "flatPath": "gmail/v1/users/{userId}/settings/vacation", "httpMethod": "GET", "id": "gmail.users.settings.getVacation", @@ -1492,7 +1492,7 @@ ] }, "updateAutoForwarding": { - "description": "Updates the auto-forwarding setting for the specified account. A verified forwarding address must be specified when auto-forwarding is enabled. This method is only available to service account clients that have been delegated domain-wide authority.", + "description": "Updates the auto-forwarding setting for the specified account. A verified forwarding address must be specified when auto-forwarding is enabled. For more information, see [Manage email forwarding](https://developers.google.com/workspace/gmail/api/guides/forwarding_settings). This method is only available to service account clients that have been delegated domain-wide authority.", "flatPath": "gmail/v1/users/{userId}/settings/autoForwarding", "httpMethod": "PUT", "id": "gmail.users.settings.updateAutoForwarding", @@ -1520,7 +1520,7 @@ ] }, "updateImap": { - "description": "Updates IMAP settings.", + "description": "Updates IMAP settings. For more information, see [Configure POP and IMAP settings with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/pop_imap_settings).", "flatPath": "gmail/v1/users/{userId}/settings/imap", "httpMethod": "PUT", "id": "gmail.users.settings.updateImap", @@ -1548,7 +1548,7 @@ ] }, "updateLanguage": { - "description": "Updates language settings. If successful, the return object contains the `displayLanguage` that was saved for the user, which may differ from the value passed into the request. This is because the requested `displayLanguage` may not be directly supported by Gmail but have a close variant that is, and so the variant may be chosen and saved instead.", + "description": "Updates language settings. For more information, see [Manage language settings](https://developers.google.com/workspace/gmail/api/guides/language-settings). If successful, the return object contains the `displayLanguage` that was saved for the user, which may differ from the value passed into the request. This is because the requested `displayLanguage` may not be directly supported by Gmail but have a close variant that is, and so the variant may be chosen and saved instead.", "flatPath": "gmail/v1/users/{userId}/settings/language", "httpMethod": "PUT", "id": "gmail.users.settings.updateLanguage", @@ -1576,7 +1576,7 @@ ] }, "updatePop": { - "description": "Updates POP settings.", + "description": "Updates POP settings. For more information, see [Configure POP and IMAP settings with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/pop_imap_settings).", "flatPath": "gmail/v1/users/{userId}/settings/pop", "httpMethod": "PUT", "id": "gmail.users.settings.updatePop", @@ -1604,7 +1604,7 @@ ] }, "updateVacation": { - "description": "Updates vacation responder settings.", + "description": "Updates vacation responder settings. For more information, see [Manage vacation settings with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/vacation_settings).", "flatPath": "gmail/v1/users/{userId}/settings/vacation", "httpMethod": "PUT", "id": "gmail.users.settings.updateVacation", @@ -2031,7 +2031,7 @@ "delegates": { "methods": { "create": { - "description": "Adds a delegate with its verification status set directly to `accepted`, without sending any verification email. The delegate user must be a member of the same Google Workspace organization as the delegator user. Gmail imposes limitations on the number of delegates and delegators each user in a Google Workspace organization can have. These limits depend on your organization, but in general each user can have up to 25 delegates and up to 10 delegators. Note that a delegate user must be referred to by their primary email address, and not an email alias. Also note that when a new delegate is created, there may be up to a one minute delay before the new delegate is available for use. This method is only available to service account clients that have been delegated domain-wide authority.", + "description": "Adds a delegate with its verification status set directly to `accepted`, without sending any verification email. The delegate user must be a member of the same Google Workspace organization as the delegator user. For more information, see [Manage delegates](https://developers.google.com/workspace/gmail/api/guides/delegate_settings). Gmail imposes limitations on the number of delegates and delegators each user in a Google Workspace organization can have. These limits depend on your organization, but in general each user can have up to 25 delegates and up to 10 delegators. A delegate user must be referred to by their primary email address, and not an email alias. When a new delegate is created, there may be up to a one minute delay before the new delegate is available for use. This method is only available to service account clients that have been delegated domain-wide authority.", "flatPath": "gmail/v1/users/{userId}/settings/delegates", "httpMethod": "POST", "id": "gmail.users.settings.delegates.create", @@ -2059,7 +2059,7 @@ ] }, "delete": { - "description": "Removes the specified delegate (which can be of any verification status), and revokes any verification that may have been required for using it. Note that a delegate user must be referred to by their primary email address, and not an email alias. This method is only available to service account clients that have been delegated domain-wide authority.", + "description": "Removes the specified delegate (which can be of any verification status), and revokes any verification that may have been required for using it. For more information, see [Manage delegates](https://developers.google.com/workspace/gmail/api/guides/delegate_settings). A delegate user must be referred to by their primary email address, and not an email alias. This method is only available to service account clients that have been delegated domain-wide authority.", "flatPath": "gmail/v1/users/{userId}/settings/delegates/{delegateEmail}", "httpMethod": "DELETE", "id": "gmail.users.settings.delegates.delete", @@ -2088,7 +2088,7 @@ ] }, "get": { - "description": "Gets the specified delegate. Note that a delegate user must be referred to by their primary email address, and not an email alias. This method is only available to service account clients that have been delegated domain-wide authority.", + "description": "Gets the specified delegate. For more information, see [Manage delegates](https://developers.google.com/workspace/gmail/api/guides/delegate_settings). A delegate user must be referred to by their primary email address, and not an email alias. This method is only available to service account clients that have been delegated domain-wide authority.", "flatPath": "gmail/v1/users/{userId}/settings/delegates/{delegateEmail}", "httpMethod": "GET", "id": "gmail.users.settings.delegates.get", @@ -2123,7 +2123,7 @@ ] }, "list": { - "description": "Lists the delegates for the specified account. This method is only available to service account clients that have been delegated domain-wide authority.", + "description": "Lists the delegates for the specified account. For more information, see [Manage delegates](https://developers.google.com/workspace/gmail/api/guides/delegate_settings). This method is only available to service account clients that have been delegated domain-wide authority.", "flatPath": "gmail/v1/users/{userId}/settings/delegates", "httpMethod": "GET", "id": "gmail.users.settings.delegates.list", @@ -2155,7 +2155,7 @@ "filters": { "methods": { "create": { - "description": "Creates a filter. Note: you can only create a maximum of 1,000 filters.", + "description": "Creates a filter. Note: you can only create a maximum of 1,000 filters. For more information, see [Manage Gmail filters](https://developers.google.com/workspace/gmail/api/guides/filter_settings).", "flatPath": "gmail/v1/users/{userId}/settings/filters", "httpMethod": "POST", "id": "gmail.users.settings.filters.create", @@ -2183,7 +2183,7 @@ ] }, "delete": { - "description": "Immediately and permanently deletes the specified filter.", + "description": "Immediately and permanently deletes the specified filter. For more information, see [Manage Gmail filters](https://developers.google.com/workspace/gmail/api/guides/filter_settings).", "flatPath": "gmail/v1/users/{userId}/settings/filters/{id}", "httpMethod": "DELETE", "id": "gmail.users.settings.filters.delete", @@ -2212,7 +2212,7 @@ ] }, "get": { - "description": "Gets a filter.", + "description": "Gets a filter. For more information, see [Manage Gmail filters](https://developers.google.com/workspace/gmail/api/guides/filter_settings).", "flatPath": "gmail/v1/users/{userId}/settings/filters/{id}", "httpMethod": "GET", "id": "gmail.users.settings.filters.get", @@ -2247,7 +2247,7 @@ ] }, "list": { - "description": "Lists the message filters of a Gmail user.", + "description": "Lists the message filters of a Gmail user. For more information, see [Manage Gmail filters](https://developers.google.com/workspace/gmail/api/guides/filter_settings).", "flatPath": "gmail/v1/users/{userId}/settings/filters", "httpMethod": "GET", "id": "gmail.users.settings.filters.list", @@ -2279,7 +2279,7 @@ "forwardingAddresses": { "methods": { "create": { - "description": "Creates a forwarding address. If ownership verification is required, a message will be sent to the recipient and the resource's verification status will be set to `pending`; otherwise, the resource will be created with verification status set to `accepted`. This method is only available to service account clients that have been delegated domain-wide authority.", + "description": "Creates a forwarding address. If ownership verification is required, a message will be sent to the recipient and the resource's verification status will be set to `pending`; otherwise, the resource will be created with verification status set to `accepted`. For more information, see [Manage email forwarding](https://developers.google.com/workspace/gmail/api/guides/forwarding_settings). This method is only available to service account clients that have been delegated domain-wide authority.", "flatPath": "gmail/v1/users/{userId}/settings/forwardingAddresses", "httpMethod": "POST", "id": "gmail.users.settings.forwardingAddresses.create", @@ -2307,7 +2307,7 @@ ] }, "delete": { - "description": "Deletes the specified forwarding address and revokes any verification that may have been required. This method is only available to service account clients that have been delegated domain-wide authority.", + "description": "Deletes the specified forwarding address and revokes any verification that may have been required. For more information, see [Manage email forwarding](https://developers.google.com/workspace/gmail/api/guides/forwarding_settings). This method is only available to service account clients that have been delegated domain-wide authority.", "flatPath": "gmail/v1/users/{userId}/settings/forwardingAddresses/{forwardingEmail}", "httpMethod": "DELETE", "id": "gmail.users.settings.forwardingAddresses.delete", @@ -2336,7 +2336,7 @@ ] }, "get": { - "description": "Gets the specified forwarding address.", + "description": "Gets the specified forwarding address. For more information, see [Manage email forwarding](https://developers.google.com/workspace/gmail/api/guides/forwarding_settings).", "flatPath": "gmail/v1/users/{userId}/settings/forwardingAddresses/{forwardingEmail}", "httpMethod": "GET", "id": "gmail.users.settings.forwardingAddresses.get", @@ -2371,7 +2371,7 @@ ] }, "list": { - "description": "Lists the forwarding addresses for the specified account.", + "description": "Lists the forwarding addresses for the specified account. For more information, see [Manage email forwarding](https://developers.google.com/workspace/gmail/api/guides/forwarding_settings).", "flatPath": "gmail/v1/users/{userId}/settings/forwardingAddresses", "httpMethod": "GET", "id": "gmail.users.settings.forwardingAddresses.list", @@ -2403,7 +2403,7 @@ "sendAs": { "methods": { "create": { - "description": "Creates a custom \"from\" send-as alias. If an SMTP MSA is specified, Gmail will attempt to connect to the SMTP service to validate the configuration before creating the alias. If ownership verification is required for the alias, a message will be sent to the email address and the resource's verification status will be set to `pending`; otherwise, the resource will be created with verification status set to `accepted`. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias. This method is only available to service account clients that have been delegated domain-wide authority.", + "description": "Creates a custom \"from\" send-as alias. If an SMTP MSA is specified, Gmail will attempt to connect to the SMTP service to validate the configuration before creating the alias. If ownership verification is required for the alias, a message will be sent to the email address and the resource's verification status will be set to `pending`; otherwise, the resource will be created with verification status set to `accepted`. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings). This method is only available to service account clients that have been delegated domain-wide authority.", "flatPath": "gmail/v1/users/{userId}/settings/sendAs", "httpMethod": "POST", "id": "gmail.users.settings.sendAs.create", @@ -2431,7 +2431,7 @@ ] }, "delete": { - "description": "Deletes the specified send-as alias. Revokes any verification that may have been required for using it. This method is only available to service account clients that have been delegated domain-wide authority.", + "description": "Deletes the specified send-as alias. Revokes any verification that may have been required for using it. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings). This method is only available to service account clients that have been delegated domain-wide authority.", "flatPath": "gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}", "httpMethod": "DELETE", "id": "gmail.users.settings.sendAs.delete", @@ -2460,7 +2460,7 @@ ] }, "get": { - "description": "Gets the specified send-as alias. Fails with an HTTP 404 error if the specified address is not a member of the collection.", + "description": "Gets the specified send-as alias. Fails with an HTTP 404 error if the specified address is not a member of the collection. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings).", "flatPath": "gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}", "httpMethod": "GET", "id": "gmail.users.settings.sendAs.get", @@ -2495,7 +2495,7 @@ ] }, "list": { - "description": "Lists the send-as aliases for the specified account. The result includes the primary send-as address associated with the account as well as any custom \"from\" aliases.", + "description": "Lists the send-as aliases for the specified account. The result includes the primary send-as address associated with the account as well as any custom \"from\" aliases. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings).", "flatPath": "gmail/v1/users/{userId}/settings/sendAs", "httpMethod": "GET", "id": "gmail.users.settings.sendAs.list", @@ -2523,7 +2523,7 @@ ] }, "patch": { - "description": "Patch the specified send-as alias.", + "description": "Patch the specified send-as alias. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings).", "flatPath": "gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}", "httpMethod": "PATCH", "id": "gmail.users.settings.sendAs.patch", @@ -2559,7 +2559,7 @@ ] }, "update": { - "description": "Updates a send-as alias. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias. Addresses other than the primary address for the account can only be updated by service account clients that have been delegated domain-wide authority.", + "description": "Updates a send-as alias. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings). Addresses other than the primary address for the account can only be updated by service account clients that have been delegated domain-wide authority.", "flatPath": "gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}", "httpMethod": "PUT", "id": "gmail.users.settings.sendAs.update", @@ -2595,7 +2595,7 @@ ] }, "verify": { - "description": "Sends a verification email to the specified send-as alias address. The verification status must be `pending`. This method is only available to service account clients that have been delegated domain-wide authority.", + "description": "Sends a verification email to the specified send-as alias address. The verification status must be `pending`. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings). This method is only available to service account clients that have been delegated domain-wide authority.", "flatPath": "gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}/verify", "httpMethod": "POST", "id": "gmail.users.settings.sendAs.verify", @@ -2628,7 +2628,7 @@ "smimeInfo": { "methods": { "delete": { - "description": "Deletes the specified S/MIME config for the specified send-as alias.", + "description": "Deletes the specified S/MIME config for the specified send-as alias. For more information, see [Manage S/MIME certificates with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/smime_certs).", "flatPath": "gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}/smimeInfo/{id}", "httpMethod": "DELETE", "id": "gmail.users.settings.sendAs.smimeInfo.delete", @@ -2665,7 +2665,7 @@ ] }, "get": { - "description": "Gets the specified S/MIME config for the specified send-as alias.", + "description": "Gets the specified S/MIME config for the specified send-as alias. For more information, see [Manage S/MIME certificates with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/smime_certs).", "flatPath": "gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}/smimeInfo/{id}", "httpMethod": "GET", "id": "gmail.users.settings.sendAs.smimeInfo.get", @@ -2708,7 +2708,7 @@ ] }, "insert": { - "description": "Insert (upload) the given S/MIME config for the specified send-as alias. Note that pkcs12 format is required for the key.", + "description": "Insert (upload) the given S/MIME config for the specified send-as alias. Note that `pkcs12` format is required for the key. For more information, see [Manage S/MIME certificates with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/smime_certs).", "flatPath": "gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}/smimeInfo", "httpMethod": "POST", "id": "gmail.users.settings.sendAs.smimeInfo.insert", @@ -2744,7 +2744,7 @@ ] }, "list": { - "description": "Lists S/MIME configs for the specified send-as alias.", + "description": "Lists S/MIME configs for the specified send-as alias. For more information, see [Manage S/MIME certificates with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/smime_certs).", "flatPath": "gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}/smimeInfo", "httpMethod": "GET", "id": "gmail.users.settings.sendAs.smimeInfo.list", @@ -2780,7 +2780,7 @@ ] }, "setDefault": { - "description": "Sets the default S/MIME config for the specified send-as alias.", + "description": "Sets the default S/MIME config for the specified send-as alias. For more information, see [Manage S/MIME certificates with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/smime_certs).", "flatPath": "gmail/v1/users/{userId}/settings/sendAs/{sendAsEmail}/smimeInfo/{id}/setDefault", "httpMethod": "POST", "id": "gmail.users.settings.sendAs.smimeInfo.setDefault", @@ -2825,7 +2825,7 @@ "threads": { "methods": { "delete": { - "description": "Immediately and permanently deletes the specified thread. Any messages that belong to the thread are also deleted. This operation cannot be undone. Prefer `threads.trash` instead.", + "description": "Immediately and permanently deletes the specified thread. Any messages that belong to the thread are also deleted. This operation cannot be undone. Prefer `threads.trash` instead. For more information, see [Manage threads](https://developers.google.com/workspace/gmail/api/guides/threads).", "flatPath": "gmail/v1/users/{userId}/threads/{id}", "httpMethod": "DELETE", "id": "gmail.users.threads.delete", @@ -2854,7 +2854,7 @@ ] }, "get": { - "description": "Gets the specified thread.", + "description": "Gets the specified thread. For more information, see [Manage threads](https://developers.google.com/workspace/gmail/api/guides/threads).", "flatPath": "gmail/v1/users/{userId}/threads/{id}", "httpMethod": "GET", "id": "gmail.users.threads.get", @@ -2914,7 +2914,7 @@ ] }, "list": { - "description": "Lists the threads in the user's mailbox.", + "description": "Lists the threads in the user's mailbox. For more information, see [Manage threads](https://developers.google.com/workspace/gmail/api/guides/threads).", "flatPath": "gmail/v1/users/{userId}/threads", "httpMethod": "GET", "id": "gmail.users.threads.list", @@ -2971,7 +2971,7 @@ ] }, "modify": { - "description": "Modifies the labels applied to the thread. This applies to all messages in the thread.", + "description": "Modifies the labels applied to the thread. This applies to all messages in the thread. For more information, see [Manage threads](https://developers.google.com/workspace/gmail/api/guides/threads).", "flatPath": "gmail/v1/users/{userId}/threads/{id}/modify", "httpMethod": "POST", "id": "gmail.users.threads.modify", @@ -3007,7 +3007,7 @@ ] }, "trash": { - "description": "Moves the specified thread to the trash. Any messages that belong to the thread are also moved to the trash.", + "description": "Moves the specified thread to the trash. Any messages that belong to the thread are also moved to the trash. For more information, see [Manage threads](https://developers.google.com/workspace/gmail/api/guides/threads).", "flatPath": "gmail/v1/users/{userId}/threads/{id}/trash", "httpMethod": "POST", "id": "gmail.users.threads.trash", @@ -3040,7 +3040,7 @@ ] }, "untrash": { - "description": "Removes the specified thread from the trash. Any messages that belong to the thread are also removed from the trash.", + "description": "Removes the specified thread from the trash. Any messages that belong to the thread are also removed from the trash. For more information, see [Manage threads](https://developers.google.com/workspace/gmail/api/guides/threads).", "flatPath": "gmail/v1/users/{userId}/threads/{id}/untrash", "httpMethod": "POST", "id": "gmail.users.threads.untrash", @@ -3077,7 +3077,7 @@ } } }, - "revision": "20260112", + "revision": "20260427", "rootUrl": "https://gmail.googleapis.com/", "schemas": { "AutoForwarding": { @@ -3374,7 +3374,7 @@ "type": "array" }, "forward": { - "description": "Email address that the message should be forwarded to.", + "description": "Email address that the message should be forwarded to. This effectively redirects the message to the address specified in this field, maintaining the original sender in the \"From\" field.", "type": "string" }, "removeLabelIds": { @@ -3729,11 +3729,11 @@ "id": "LabelColor", "properties": { "backgroundColor": { - "description": "The background color represented as hex string #RRGGBB (ex #000000). This field is required in order to set the color of a label. Only the following predefined set of color values are allowed: \\#000000, #434343, #666666, #999999, #cccccc, #efefef, #f3f3f3, #ffffff, \\#fb4c2f, #ffad47, #fad165, #16a766, #43d692, #4a86e8, #a479e2, #f691b3, \\#f6c5be, #ffe6c7, #fef1d1, #b9e4d0, #c6f3de, #c9daf8, #e4d7f5, #fcdee8, \\#efa093, #ffd6a2, #fce8b3, #89d3b2, #a0eac9, #a4c2f4, #d0bcf1, #fbc8d9, \\#e66550, #ffbc6b, #fcda83, #44b984, #68dfa9, #6d9eeb, #b694e8, #f7a7c0, \\#cc3a21, #eaa041, #f2c960, #149e60, #3dc789, #3c78d8, #8e63ce, #e07798, \\#ac2b16, #cf8933, #d5ae49, #0b804b, #2a9c68, #285bac, #653e9b, #b65775, \\#822111, #a46a21, #aa8831, #076239, #1a764d, #1c4587, #41236d, #83334c \\#464646, #e7e7e7, #0d3472, #b6cff5, #0d3b44, #98d7e4, #3d188e, #e3d7ff, \\#711a36, #fbd3e0, #8a1c0a, #f2b2a8, #7a2e0b, #ffc8af, #7a4706, #ffdeb5, \\#594c05, #fbe983, #684e07, #fdedc1, #0b4f30, #b3efd3, #04502e, #a2dcc1, \\#c2c2c2, #4986e7, #2da2bb, #b99aff, #994a64, #f691b2, #ff7537, #ffad46, \\#662e37, #ebdbde, #cca6ac, #094228, #42d692, #16a765", + "description": "The background color represented as hex string #RRGGBB (ex #000000). This field is required in order to set the color of a label. Only the following predefined set of color values are allowed: \\#000000, #434343, #666666, #999999, #cccccc, #efefef, #f3f3f3, #ffffff, \\#fb4c2f, #ffad47, #fad165, #16a766, #43d692, #4a86e8, #a479e2, #f691b3, \\#f6c5be, #ffe6c7, #fef1d1, #b9e4d0, #c6f3de, #c9daf8, #e4d7f5, #fcdee8, \\#efa093, #ffd6a2, #fce8b3, #89d3b2, #a0eac9, #a4c2f4, #d0bcf1, #fbc8d9, \\#e66550, #ffbc6b, #fcda83, #44b984, #68dfa9, #6d9eeb, #b694e8, #f7a7c0, \\#cc3a21, #eaa041, #f2c960, #149e60, #3dc789, #3c78d8, #8e63ce, #e07798, \\#ac2b16, #cf8933, #d5ae49, #0b804b, #2a9c68, #285bac, #653e9b, #b65775, \\#822111, #a46a21, #aa8831, #076239, #1a764d, #1c4587, #41236d, #83334c, \\#464646, #e7e7e7, #0d3472, #b6cff5, #0d3b44, #98d7e4, #3d188e, #e3d7ff, \\#711a36, #fbd3e0, #8a1c0a, #f2b2a8, #7a2e0b, #ffc8af, #7a4706, #ffdeb5, \\#594c05, #fbe983, #684e07, #fdedc1, #0b4f30, #b3efd3, #04502e, #a2dcc1, \\#c2c2c2, #4986e7, #2da2bb, #b99aff, #994a64, #f691b2, #ff7537, #ffad46, \\#662e37, #ebdbde, #cca6ac, #094228, #42d692, #16a765", "type": "string" }, "textColor": { - "description": "The text color of the label, represented as hex string. This field is required in order to set the color of a label. Only the following predefined set of color values are allowed: \\#000000, #434343, #666666, #999999, #cccccc, #efefef, #f3f3f3, #ffffff, \\#fb4c2f, #ffad47, #fad165, #16a766, #43d692, #4a86e8, #a479e2, #f691b3, \\#f6c5be, #ffe6c7, #fef1d1, #b9e4d0, #c6f3de, #c9daf8, #e4d7f5, #fcdee8, \\#efa093, #ffd6a2, #fce8b3, #89d3b2, #a0eac9, #a4c2f4, #d0bcf1, #fbc8d9, \\#e66550, #ffbc6b, #fcda83, #44b984, #68dfa9, #6d9eeb, #b694e8, #f7a7c0, \\#cc3a21, #eaa041, #f2c960, #149e60, #3dc789, #3c78d8, #8e63ce, #e07798, \\#ac2b16, #cf8933, #d5ae49, #0b804b, #2a9c68, #285bac, #653e9b, #b65775, \\#822111, #a46a21, #aa8831, #076239, #1a764d, #1c4587, #41236d, #83334c \\#464646, #e7e7e7, #0d3472, #b6cff5, #0d3b44, #98d7e4, #3d188e, #e3d7ff, \\#711a36, #fbd3e0, #8a1c0a, #f2b2a8, #7a2e0b, #ffc8af, #7a4706, #ffdeb5, \\#594c05, #fbe983, #684e07, #fdedc1, #0b4f30, #b3efd3, #04502e, #a2dcc1, \\#c2c2c2, #4986e7, #2da2bb, #b99aff, #994a64, #f691b2, #ff7537, #ffad46, \\#662e37, #ebdbde, #cca6ac, #094228, #42d692, #16a765", + "description": "The text color of the label, represented as hex string. This field is required in order to set the color of a label. Only the following predefined set of color values are allowed: \\#000000, #434343, #666666, #999999, #cccccc, #efefef, #f3f3f3, #ffffff, \\#fb4c2f, #ffad47, #fad165, #16a766, #43d692, #4a86e8, #a479e2, #f691b3, \\#f6c5be, #ffe6c7, #fef1d1, #b9e4d0, #c6f3de, #c9daf8, #e4d7f5, #fcdee8, \\#efa093, #ffd6a2, #fce8b3, #89d3b2, #a0eac9, #a4c2f4, #d0bcf1, #fbc8d9, \\#e66550, #ffbc6b, #fcda83, #44b984, #68dfa9, #6d9eeb, #b694e8, #f7a7c0, \\#cc3a21, #eaa041, #f2c960, #149e60, #3dc789, #3c78d8, #8e63ce, #e07798, \\#ac2b16, #cf8933, #d5ae49, #0b804b, #2a9c68, #285bac, #653e9b, #b65775, \\#822111, #a46a21, #aa8831, #076239, #1a764d, #1c4587, #41236d, #83334c, \\#464646, #e7e7e7, #0d3472, #b6cff5, #0d3b44, #98d7e4, #3d188e, #e3d7ff, \\#711a36, #fbd3e0, #8a1c0a, #f2b2a8, #7a2e0b, #ffc8af, #7a4706, #ffdeb5, \\#594c05, #fbe983, #684e07, #fdedc1, #0b4f30, #b3efd3, #04502e, #a2dcc1, \\#c2c2c2, #4986e7, #2da2bb, #b99aff, #994a64, #f691b2, #ff7537, #ffad46, \\#662e37, #ebdbde, #cca6ac, #094228, #42d692, #16a765", "type": "string" } }, @@ -4205,7 +4205,7 @@ "type": "object" }, "SendAs": { - "description": "Settings associated with a send-as alias, which can be either the primary login address associated with the account or a custom \"from\" address. Send-as aliases correspond to the \"Send Mail As\" feature in the web interface.", + "description": "Settings associated with a send-as alias, which can be either the primary login address associated with the account or a custom \"from\" address. Send-as aliases correspond to the \"Send Mail As\" feature in the web interface. The send-as alias must be a valid email address.", "id": "SendAs", "properties": { "displayName": { diff --git a/discovery/health-v4.json b/discovery/health-v4.json new file mode 100644 index 00000000000..063324d9397 --- /dev/null +++ b/discovery/health-v4.json @@ -0,0 +1,4011 @@ +{ + "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://health.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Google Health API", + "description": "The Google Health API lets you view and manage health and fitness metrics and measurement data.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/health", + "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": "health:v4", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://health.mtls.googleapis.com/", + "name": "health", + "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": { + "subscribers": { + "methods": { + "create": { + "description": "Registers a new subscriber endpoint to receive notifications. A subscriber represents an application or service that wishes to receive data change notifications for users who have granted consent. **Endpoint Verification:** For a subscriber to be successfully created, the provided `endpoint_uri` must be a valid HTTPS endpoint and must pass an automated verification check. The backend will send two HTTP POST requests to the `endpoint_uri`: 1. **Verification with Authorization:** * **Headers:** Includes `Content-Type: application/json` and `Authorization` (with the exact value from `CreateSubscriberPayload.endpoint_authorization.secret`). * **Body:** `{\"type\": \"verification\"}` * **Expected Response:** HTTP `201 Created`. 2. **Verification without Authorization:** * **Headers:** Includes `Content-Type: application/json`. The `Authorization` header is OMITTED. * **Body:** `{\"type\": \"verification\"}` * **Expected Response:** HTTP `401 Unauthorized` or `403 Forbidden`. Both tests must pass for the subscriber creation to succeed. If verification fails, the operation will not be completed and an error will be returned. This process ensures the endpoint is reachable and correctly validates the `Authorization` header.", + "flatPath": "v4/projects/{projectsId}/subscribers", + "httpMethod": "POST", + "id": "health.projects.subscribers.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource where this subscriber will be created. Format: projects/{project} Example: projects/my-project-123", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "subscriberId": { + "description": "Optional. The ID to use for the subscriber, which will become the final component of the subscriber's resource name. This value should be 4-36 characters, and valid characters are /[a-z]([a-z0-9-]{2,34}[a-z0-9])/.", + "location": "query", + "type": "string" + } + }, + "path": "v4/{+parent}/subscribers", + "request": { + "$ref": "CreateSubscriberPayload" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a subscriber registration. This will stop all notifications to the subscriber's endpoint.", + "flatPath": "v4/projects/{projectsId}/subscribers/{subscribersId}", + "httpMethod": "DELETE", + "id": "health.projects.subscribers.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "force": { + "description": "Optional. If set to true, any child resources (e.g., subscriptions) will also be deleted. If false (default) and child resources exist, the request will fail.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the subscriber to delete. Format: projects/{project}/subscribers/{subscriber} Example: projects/my-project/subscribers/my-subscriber-123 The {subscriber} ID is user-settable (4-36 characters, matching /[a-z]([a-z0-9-]{2,34}[a-z0-9])/) or system-generated if not provided during creation.", + "location": "path", + "pattern": "^projects/[^/]+/subscribers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all subscribers registered within the owned Google Cloud Project.", + "flatPath": "v4/projects/{projectsId}/subscribers", + "httpMethod": "GET", + "id": "health.projects.subscribers.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of subscribers to return. The service may return fewer than this value. If unspecified, at most 50 subscribers will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListSubscribers` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListSubscribers` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent, which owns this collection of subscribers. Format: projects/{project}", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+parent}/subscribers", + "response": { + "$ref": "ListSubscribersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the configuration of an existing subscriber, such as the endpoint URI or the data types it's interested in. **Endpoint Verification:** If the `endpoint_uri` or `endpoint_authorization` field is included in the `update_mask`, the backend will re-verify the endpoint. The verification process is the same as described in `CreateSubscriber`: 1. **Verification with Authorization:** POST to the new or existing `endpoint_uri` with the new or existing `Authorization` secret. Expects HTTP `201 Created`. 2. **Verification without Authorization:** POST to the `endpoint_uri` without the `Authorization` header. Expects HTTP `401 Unauthorized` or `403 Forbidden`. Both tests must pass using the potentially updated values for the subscriber update to succeed. If verification fails, the update will not be applied, and an error will be returned.", + "flatPath": "v4/projects/{projectsId}/subscribers/{subscribersId}", + "httpMethod": "PATCH", + "id": "health.projects.subscribers.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name of the Subscriber. Format: projects/{project}/subscribers/{subscriber} The {project} ID is a Google Cloud Project ID or Project Number. The {subscriber} ID is user-settable (4-36 characters, matching /[a-z]([a-z0-9-]{2,34}[a-z0-9])/) if provided during creation, or system-generated otherwise (e.g., a UUID). Example (User-settable subscriber ID): projects/my-project/subscribers/my-sub-123 Example (System-generated subscriber ID): projects/my-project/subscribers/a1b2c3d4-e5f6-7890-1234-567890abcdef", + "location": "path", + "pattern": "^projects/[^/]+/subscribers/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. A field mask that specifies which fields of the Subscriber message are to be updated. This allows for partial updates. Supported fields: - endpoint_uri - subscriber_configs - endpoint_authorization", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v4/{+name}", + "request": { + "$ref": "Subscriber" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "users": { + "methods": { + "getIdentity": { + "description": "Gets the user's identity. It includes the legacy Fitbit user ID and the Google user ID and it can be used by migrating clients to map identifiers between the two systems.", + "flatPath": "v4/users/{usersId}/identity", + "httpMethod": "GET", + "id": "health.users.getIdentity", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the Identity. Format: `users/me/identity`", + "location": "path", + "pattern": "^users/[^/]+/identity$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+name}", + "response": { + "$ref": "Identity" + } + }, + "getProfile": { + "description": "Returns user Profile details.", + "flatPath": "v4/users/{usersId}/profile", + "httpMethod": "GET", + "id": "health.users.getProfile", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Profile. Format: `users/me/profile`.", + "location": "path", + "pattern": "^users/[^/]+/profile$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+name}", + "response": { + "$ref": "Profile" + } + }, + "getSettings": { + "description": "Returns user settings details.", + "flatPath": "v4/users/{usersId}/settings", + "httpMethod": "GET", + "id": "health.users.getSettings", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Settings. Format: `users/me/settings`.", + "location": "path", + "pattern": "^users/[^/]+/settings$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+name}", + "response": { + "$ref": "Settings" + } + }, + "updateProfile": { + "description": "Updates the user's profile details.", + "flatPath": "v4/users/{usersId}/profile", + "httpMethod": "PATCH", + "id": "health.users.updateProfile", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name of this Profile resource. Format: `users/{user}/profile` Example: `users/1234567890/profile` or `users/me/profile` The {user} ID is a system-generated Google Health API user ID, a string of 1-63 characters consisting of lowercase and uppercase letters, numbers, and hyphens. The literal `me` can also be used to refer to the authenticated user.", + "location": "path", + "pattern": "^users/[^/]+/profile$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The list of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v4/{+name}", + "request": { + "$ref": "Profile" + }, + "response": { + "$ref": "Profile" + } + }, + "updateSettings": { + "description": "Updates the user's settings details.", + "flatPath": "v4/users/{usersId}/settings", + "httpMethod": "PATCH", + "id": "health.users.updateSettings", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name of this Settings resource. Format: `users/{user}/settings` Example: `users/1234567890/settings` or `users/me/settings` The {user} ID is a system-generated Google Health API user ID, a string of 1-63 characters consisting of lowercase and uppercase letters, numbers, and hyphens. The literal `me` can also be used to refer to the authenticated user.", + "location": "path", + "pattern": "^users/[^/]+/settings$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The list of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v4/{+name}", + "request": { + "$ref": "Settings" + }, + "response": { + "$ref": "Settings" + } + } + }, + "resources": { + "dataTypes": { + "resources": { + "dataPoints": { + "methods": { + "batchDelete": { + "description": "Delete a batch of identifyable data points.", + "flatPath": "v4/users/{usersId}/dataTypes/{dataTypesId}/dataPoints:batchDelete", + "httpMethod": "POST", + "id": "health.users.dataTypes.dataPoints.batchDelete", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Optional. Parent (data type) for the Data Point collection Format: `users/me/dataTypes/{data_type}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/-` For a list of the supported data types see the DataPoint data union field. Deleting data points across multiple data type collections is supported following https://aip.dev/159. If this is set, the parent of all of the data points specified in `names` must match this field.", + "location": "path", + "pattern": "^users/[^/]+/dataTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+parent}/dataPoints:batchDelete", + "request": { + "$ref": "BatchDeleteDataPointsRequest" + }, + "response": { + "$ref": "Operation" + } + }, + "create": { + "description": "Creates a single identifiable data point.", + "flatPath": "v4/users/{usersId}/dataTypes/{dataTypesId}/dataPoints", + "httpMethod": "POST", + "id": "health.users.dataTypes.dataPoints.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource name where the data point will be created. Format: `users/{user}/dataTypes/{data_type}`", + "location": "path", + "pattern": "^users/[^/]+/dataTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+parent}/dataPoints", + "request": { + "$ref": "DataPoint" + }, + "response": { + "$ref": "Operation" + } + }, + "dailyRollUp": { + "description": "Roll up data points over civil time intervals for supported data types.", + "flatPath": "v4/users/{usersId}/dataTypes/{dataTypesId}/dataPoints:dailyRollUp", + "httpMethod": "POST", + "id": "health.users.dataTypes.dataPoints.dailyRollUp", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Parent data type of the Data Point collection. Format: `users/{user}/dataTypes/{data_type}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/distance` For a list of the supported data types see the DailyRollupDataPoint value union field.", + "location": "path", + "pattern": "^users/[^/]+/dataTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+parent}/dataPoints:dailyRollUp", + "request": { + "$ref": "DailyRollUpDataPointsRequest" + }, + "response": { + "$ref": "DailyRollUpDataPointsResponse" + } + }, + "exportExerciseTcx": { + "description": "Exports exercise data in TCX format. Note: While the Authorization section below states that any one of the listed scopes is accepted, this specific method requires the user to provide both one of the `activity_and_fitness` scopes (`normal` or `readonly`) AND one of the `location` scopes (`normal` or `readonly`) in their access token to succeed.", + "flatPath": "v4/users/{usersId}/dataTypes/{dataTypesId}/dataPoints/{dataPointsId}:exportExerciseTcx", + "httpMethod": "GET", + "id": "health.users.dataTypes.dataPoints.exportExerciseTcx", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the exercise data point to export. Format: `users/{user}/dataTypes/exercise/dataPoints/{data_point}` Example: `users/me/dataTypes/exercise/dataPoints/2026443605080188808` The `{user}` is the alias `\"me\"` currently. Future versions may support user IDs. The `{data_point}` ID maps to the exercise ID, which is a long integer.", + "location": "path", + "pattern": "^users/[^/]+/dataTypes/[^/]+/dataPoints/[^/]+$", + "required": true, + "type": "string" + }, + "partialData": { + "description": "Optional. Indicates whether to include the TCX data points when the GPS data is not available. If not specified, defaults to `false` and partial data will not be included.", + "location": "query", + "type": "boolean" + } + }, + "path": "v4/{+name}:exportExerciseTcx", + "response": { + "$ref": "ExportExerciseTcxResponse" + }, + "supportsMediaDownload": true, + "useMediaDownloadService": true + }, + "get": { + "description": "Get a single identifyable data point.", + "flatPath": "v4/users/{usersId}/dataTypes/{dataTypesId}/dataPoints/{dataPointsId}", + "httpMethod": "GET", + "id": "health.users.dataTypes.dataPoints.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the data point to retrieve. Format: `users/{user}/dataTypes/{data_type}/dataPoints/{data_point}` See DataPoint.name for examples and possible values.", + "location": "path", + "pattern": "^users/[^/]+/dataTypes/[^/]+/dataPoints/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+name}", + "response": { + "$ref": "DataPoint" + } + }, + "list": { + "description": "Query user health and fitness data points.", + "flatPath": "v4/users/{usersId}/dataTypes/{dataTypesId}/dataPoints", + "httpMethod": "GET", + "id": "health.users.dataTypes.dataPoints.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filter expression following https://google.aip.dev/160. A time range (either physical or civil) can be specified. The supported filter fields are: - Interval start time: - Pattern: `{interval_data_type}.interval.start_time` - Supported comparison operators: `>=`, `<` - Timestamp literal expected in RFC-3339 format - Supported logical operators: `AND` - Example: - `steps.interval.start_time >= \"2023-11-24T00:00:00Z\" AND steps.interval.start_time < \"2023-11-25T00:00:00Z\"` - `distance.interval.start_time >= \"2024-08-14T12:34:56Z\"` - Interval civil start time: - Pattern: `{interval_data_type}.interval.civil_start_time` - Supported comparison operators: `>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND` - Example: - `steps.interval.civil_start_time >= \"2023-11-24\" AND steps.interval.civil_start_time < \"2023-11-25\"` - `distance.interval.civil_start_time >= \"2024-08-14T12:34:56\"` - Sample observation physical time: - Pattern: `{sample_data_type}.sample_time.physical_time` - Supported comparison operators: `>=`, `<` - Timestamp literal expected in RFC-3339 format - Supported logical operators: `AND` - Example: - `weight.sample_time.physical_time >= \"2023-11-24T00:00:00Z\" AND weight.sample_time.physical_time < \"2023-11-25T00:00:00Z\"` - `weight.sample_time.physical_time >= \"2024-08-14T12:34:56Z\"` - Sample observation civil time: - Pattern: `{sample_data_type}.sample_time.civil_time` - Supported comparison operators: `>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND` - Example: - `weight.sample_time.civil_time >= \"2023-11-24\" AND weight.sample_time.civil_time < \"2023-11-25\"` - `weight.sample_time.civil_time >= \"2024-08-14T12:34:56\"` - Daily summary date: - Pattern: `{daily_summary_data_type}.date` - Supported comparison operators: `>=`, `<` - Date literal expected in ISO 8601 `YYYY-MM-DD` format - Supported logical operators: `AND` - Example: - `daily_heart_rate_variability.date < \"2024-08-15\"` - Session civil start time (**Excluding Sleep**): - Pattern: `{session_data_type}.interval.civil_start_time` - Supported comparison operators: `>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND` - Example: - `exercise.interval.civil_start_time >= \"2023-11-24\" AND exercise.interval.civil_start_time < \"2023-11-25\"` - `exercise.interval.civil_start_time >= \"2024-08-14T12:34:56\"` - Session end time (**Sleep specific**): - Pattern: `sleep.interval.end_time` - Supported comparison operators: `>=`, `<` - Timestamp literal expected in RFC-3339 format - Supported logical operators: `AND`, `OR` - Example: - `sleep.interval.end_time >= \"2023-11-24T00:00:00Z\" AND sleep.interval.end_time < \"2023-11-25T00:00:00Z\"` - Session civil end time (**Sleep specific**): - Pattern: `sleep.interval.civil_end_time` - Supported comparison operators: `>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND`, `OR` - Example: - `sleep.interval.civil_end_time >= \"2023-11-24\" AND sleep.interval.civil_end_time < \"2023-11-25\"` Data points in the response will be ordered by the interval start time in descending order.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly. For `exercise` and `sleep` the default page size is 25. The maximum page size for `exercise` and `sleep` is 25.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The `next_page_token` from a previous request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent data type of the Data Point collection. Format: `users/me/dataTypes/{data_type}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/weight` For a list of the supported data types see the DataPoint data union field.", + "location": "path", + "pattern": "^users/[^/]+/dataTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+parent}/dataPoints", + "response": { + "$ref": "ListDataPointsResponse" + } + }, + "patch": { + "description": "Updates a single identifiable data point. If a data point with the specified `name` is not found, the request will fail.", + "flatPath": "v4/users/{usersId}/dataTypes/{dataTypesId}/dataPoints/{dataPointsId}", + "httpMethod": "PATCH", + "id": "health.users.dataTypes.dataPoints.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user}/dataTypes/{data_type}/dataPoints/{data_point}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens.", + "location": "path", + "pattern": "^users/[^/]+/dataTypes/[^/]+/dataPoints/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+name}", + "request": { + "$ref": "DataPoint" + }, + "response": { + "$ref": "Operation" + } + }, + "reconcile": { + "description": "Reconcile data points from multiple data sources into a single data stream.", + "flatPath": "v4/users/{usersId}/dataTypes/{dataTypesId}/dataPoints:reconcile", + "httpMethod": "GET", + "id": "health.users.dataTypes.dataPoints.reconcile", + "parameterOrder": [ + "parent" + ], + "parameters": { + "dataSourceFamily": { + "description": "Optional. The data source family name to reconcile. If empty, data points from all data sources will be reconciled. Format: `users/me/dataSourceFamilies/{data_source_family}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources", + "location": "query", + "type": "string" + }, + "filter": { + "description": "Optional. Filter expression based on https://aip.dev/160. A time range, either physical or civil, can be specified. See the ListDataPointsRequest.filter for the supported fields and syntax.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly. For `exercise` and `sleep` the default page size is 25. The maximum page size for `exercise` and `sleep` is 25.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The `next_page_token` from a previous request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent data type of the Data Point collection. Format: `users/me/dataTypes/{data_type}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/heart-rate` For a list of the supported data types see the DataPoint data union field.", + "location": "path", + "pattern": "^users/[^/]+/dataTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+parent}/dataPoints:reconcile", + "response": { + "$ref": "ReconcileDataPointsResponse" + } + }, + "rollUp": { + "description": "Roll up data points over physical time intervals for supported data types.", + "flatPath": "v4/users/{usersId}/dataTypes/{dataTypesId}/dataPoints:rollUp", + "httpMethod": "POST", + "id": "health.users.dataTypes.dataPoints.rollUp", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Parent data type of the Data Point collection. Format: `users/{user}/dataTypes/{data_type}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/distance` For a list of the supported data types see the RollupDataPoint value union field.", + "location": "path", + "pattern": "^users/[^/]+/dataTypes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v4/{+parent}/dataPoints:rollUp", + "request": { + "$ref": "RollUpDataPointsRequest" + }, + "response": { + "$ref": "RollUpDataPointsResponse" + } + } + } + } + } + } + } + } + }, + "revision": "20260503", + "rootUrl": "https://health.googleapis.com/", + "schemas": { + "ActiveMinutes": { + "description": "Record of active minutes in a given time interval.", + "id": "ActiveMinutes", + "properties": { + "activeMinutesByActivityLevel": { + "description": "Required. Active minutes by activity level. At most one record per activity level is allowed.", + "items": { + "$ref": "ActiveMinutesByActivityLevel" + }, + "type": "array" + }, + "interval": { + "$ref": "ObservationTimeInterval", + "description": "Required. Observed interval." + } + }, + "type": "object" + }, + "ActiveMinutesByActivityLevel": { + "description": "Active minutes at a given activity level.", + "id": "ActiveMinutesByActivityLevel", + "properties": { + "activeMinutes": { + "description": "Required. Number of whole minutes spent in activity.", + "format": "int64", + "type": "string" + }, + "activityLevel": { + "description": "Required. The level of activity.", + "enum": [ + "ACTIVITY_LEVEL_UNSPECIFIED", + "LIGHT", + "MODERATE", + "VIGOROUS" + ], + "enumDescriptions": [ + "Activity level is unspecified.", + "Light activity level.", + "Moderate activity level.", + "Vigorous activity level." + ], + "type": "string" + } + }, + "type": "object" + }, + "ActiveMinutesRollupByActivityLevel": { + "description": "Active minutes by activity level.", + "id": "ActiveMinutesRollupByActivityLevel", + "properties": { + "activeMinutesSum": { + "description": "Number of whole minutes spent in activity.", + "format": "int64", + "type": "string" + }, + "activityLevel": { + "description": "The level of activity.", + "enum": [ + "ACTIVITY_LEVEL_UNSPECIFIED", + "LIGHT", + "MODERATE", + "VIGOROUS" + ], + "enumDescriptions": [ + "Activity level is unspecified.", + "Light activity level.", + "Moderate activity level.", + "Vigorous activity level." + ], + "type": "string" + } + }, + "type": "object" + }, + "ActiveMinutesRollupValue": { + "description": "Represents the result of the rollup of the active minutes data type.", + "id": "ActiveMinutesRollupValue", + "properties": { + "activeMinutesRollupByActivityLevel": { + "description": "Active minutes by activity level. At most one record per activity level is allowed.", + "items": { + "$ref": "ActiveMinutesRollupByActivityLevel" + }, + "type": "array" + } + }, + "type": "object" + }, + "ActiveZoneMinutes": { + "description": "Record of active zone minutes in a given time interval.", + "id": "ActiveZoneMinutes", + "properties": { + "activeZoneMinutes": { + "description": "Required. Number of Active Zone Minutes earned in the given time interval. Note: active_zone_minutes equals to 1 for low intensity (fat burn) zones or 2 for high intensity zones (cardio, peak).", + "format": "int64", + "type": "string" + }, + "heartRateZone": { + "description": "Required. Heart rate zone in which the active zone minutes have been earned, in the given time interval.", + "enum": [ + "HEART_RATE_ZONE_UNSPECIFIED", + "FAT_BURN", + "CARDIO", + "PEAK" + ], + "enumDescriptions": [ + "Unspecified heart rate zone.", + "The fat burn heart rate zone.", + "The cardio heart rate zone.", + "The peak heart rate zone." + ], + "type": "string" + }, + "interval": { + "$ref": "ObservationTimeInterval", + "description": "Required. Observed interval." + } + }, + "type": "object" + }, + "ActiveZoneMinutesRollupValue": { + "description": "Represents the result of the rollup of the active zone minutes data type.", + "id": "ActiveZoneMinutesRollupValue", + "properties": { + "sumInCardioHeartZone": { + "description": "Active zone minutes in `HeartRateZone.CARDIO`.", + "format": "int64", + "type": "string" + }, + "sumInFatBurnHeartZone": { + "description": "Active zone minutes in `HeartRateZone.FAT_BURN`.", + "format": "int64", + "type": "string" + }, + "sumInPeakHeartZone": { + "description": "Active zone minutes in `HeartRateZone.PEAK`.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ActivityLevel": { + "description": "Internal type to capture activity level during a certain time interval.", + "id": "ActivityLevel", + "properties": { + "activityLevelType": { + "description": "Required. Activity level type in the given time interval.", + "enum": [ + "ACTIVITY_LEVEL_TYPE_UNSPECIFIED", + "SEDENTARY", + "LIGHTLY_ACTIVE", + "MODERATELY_ACTIVE", + "VERY_ACTIVE" + ], + "enumDescriptions": [ + "Unspecified activity level type.", + "Sedentary activity level.", + "Lightly active activity level.", + "Moderately active activity level.", + "Very active activity level." + ], + "type": "string" + }, + "interval": { + "$ref": "ObservationTimeInterval", + "description": "Required. Observed interval." + } + }, + "type": "object" + }, + "ActivityLevelRollupByActivityLevelType": { + "description": "Represents the total duration in a specific activity level type.", + "id": "ActivityLevelRollupByActivityLevelType", + "properties": { + "activityLevelType": { + "description": "Activity level type.", + "enum": [ + "ACTIVITY_LEVEL_TYPE_UNSPECIFIED", + "SEDENTARY", + "LIGHTLY_ACTIVE", + "MODERATELY_ACTIVE", + "VERY_ACTIVE" + ], + "enumDescriptions": [ + "Unspecified activity level type.", + "Sedentary activity level.", + "Lightly active activity level.", + "Moderately active activity level.", + "Very active activity level." + ], + "type": "string" + }, + "totalDuration": { + "description": "Total duration in the activity level type.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "ActivityLevelRollupValue": { + "description": "Represents the result of the rollup of the activity level data type.", + "id": "ActivityLevelRollupValue", + "properties": { + "activityLevelRollupsByActivityLevelType": { + "description": "List of total durations in each activity level type.", + "items": { + "$ref": "ActivityLevelRollupByActivityLevelType" + }, + "type": "array" + } + }, + "type": "object" + }, + "Altitude": { + "description": "Captures the altitude gain (i.e. deltas), and not level above sea, for a user in millimeters.", + "id": "Altitude", + "properties": { + "gainMillimeters": { + "description": "Required. Altitude gain in millimeters over the observed interval.", + "format": "int64", + "type": "string" + }, + "interval": { + "$ref": "ObservationTimeInterval", + "description": "Required. Observed interval." + } + }, + "type": "object" + }, + "AltitudeRollupValue": { + "description": "Represents the result of the rollup of the user's altitude.", + "id": "AltitudeRollupValue", + "properties": { + "gainMillimetersSum": { + "description": "Sum of the altitude gain in millimeters.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Application": { + "description": "Optional metadata for the application that provided this data.", + "id": "Application", + "properties": { + "googleWebClientId": { + "description": "Output only. The Google OAuth 2.0 client ID of the web application or service that recorded the data. This is the client ID used during the Google OAuth flow to obtain user credentials. This field is system-populated when the data is uploaded from Google Web API.", + "readOnly": true, + "type": "string" + }, + "packageName": { + "description": "Output only. A unique identifier for the mobile application that was the source of the data. This is typically the application's package name on Android (e.g., `com.google.fitbit`) or the bundle ID on iOS. This field is informational and helps trace data origin. This field is system-populated when the data is uploaded from the Fitbit mobile application, Health Connect or Health Kit.", + "readOnly": true, + "type": "string" + }, + "webClientId": { + "description": "Output only. The client ID of the application that recorded the data. This ID is a legacy Fitbit API client ID, which is different from a Google OAuth client ID. Example format: `ABC123`. This field is system-populated and used for tracing data from legacy Fitbit API integrations. This field is system-populated when the data is uploaded from a legacy Fitbit API integration.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BasalEnergyBurned": { + "description": "Number of calories burned due to basal metabolic rate (BMR) over a period of time.", + "id": "BasalEnergyBurned", + "properties": { + "interval": { + "$ref": "ObservationTimeInterval", + "description": "Required. Observed interval." + }, + "kcal": { + "description": "Required. Number of calories burned due to basal metabolic rate in kilocalories over the observed interval.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "BatchDeleteDataPointsRequest": { + "description": "Request to delete a batch of identifiable data points.", + "id": "BatchDeleteDataPointsRequest", + "properties": { + "names": { + "description": "Required. The names of the DataPoints to delete. A maximum of 10000 data points can be deleted in a single request.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "BodyFat": { + "description": "Body fat measurement.", + "id": "BodyFat", + "properties": { + "percentage": { + "description": "Required. Body fat percentage, in range [0, 100].", + "format": "double", + "type": "number" + }, + "sampleTime": { + "$ref": "ObservationSampleTime", + "description": "Required. The time at which body fat was measured." + } + }, + "type": "object" + }, + "BodyFatRollupValue": { + "description": "Represents the result of the rollup of the body fat data type.", + "id": "BodyFatRollupValue", + "properties": { + "bodyFatPercentageAvg": { + "description": "Average body fat percentage.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "CaloriesInHeartRateZoneRollupValue": { + "description": "Represents the result of the rollup of the calories in heart rate zone data type.", + "id": "CaloriesInHeartRateZoneRollupValue", + "properties": { + "caloriesInHeartRateZones": { + "description": "List of calories burned in each heart rate zone.", + "items": { + "$ref": "CaloriesInHeartRateZoneValue" + }, + "type": "array" + } + }, + "type": "object" + }, + "CaloriesInHeartRateZoneValue": { + "description": "Represents the amount of kilocalories burned in a specific heart rate zone.", + "id": "CaloriesInHeartRateZoneValue", + "properties": { + "heartRateZone": { + "description": "The heart rate zone.", + "enum": [ + "HEART_RATE_ZONE_TYPE_UNSPECIFIED", + "LIGHT", + "MODERATE", + "VIGOROUS", + "PEAK" + ], + "enumDescriptions": [ + "Unspecified heart rate zone.", + "The light heart rate zone.", + "The moderate heart rate zone.", + "The vigorous heart rate zone.", + "The peak heart rate zone." + ], + "type": "string" + }, + "kcal": { + "description": "The amount of kilocalories burned in the specified heart rate zone.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "CivilDateTime": { + "description": "Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries.", + "id": "CivilDateTime", + "properties": { + "date": { + "$ref": "Date", + "description": "Required. Calendar date." + }, + "time": { + "$ref": "TimeOfDay", + "description": "Optional. Time of day. Defaults to the start of the day, at midnight if omitted." + } + }, + "type": "object" + }, + "CivilTimeInterval": { + "description": "Counterpart of google.type.Interval, but using CivilDateTime.", + "id": "CivilTimeInterval", + "properties": { + "end": { + "$ref": "CivilDateTime", + "description": "Required. The exclusive end of the range." + }, + "start": { + "$ref": "CivilDateTime", + "description": "Required. The inclusive start of the range." + } + }, + "type": "object" + }, + "CreateSubscriberPayload": { + "description": "Payload for creating a subscriber.", + "id": "CreateSubscriberPayload", + "properties": { + "endpointAuthorization": { + "$ref": "EndpointAuthorization", + "description": "Required. Authorization mechanism for the subscriber endpoint. The `secret` within this message is crucial for endpoint verification and for securing webhook notifications." + }, + "endpointUri": { + "description": "Required. The full HTTPS URI where update notifications will be sent. The URI must be a valid URL and use HTTPS as the scheme. This endpoint will be verified during the `CreateSubscriber` call. See CreateSubscriber RPC documentation for verification details.", + "type": "string" + }, + "subscriberConfigs": { + "description": "Optional. Configuration for the subscriber.", + "items": { + "$ref": "SubscriberConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "DailyHeartRateVariability": { + "description": "Represents the daily heart rate variability data type. At least one of the following fields must be set: - `average_heart_rate_variability_milliseconds` - `non_rem_heart_rate_beats_per_minute` - `entropy` - `deep_sleep_root_mean_square_of_successive_differences_milliseconds`", + "id": "DailyHeartRateVariability", + "properties": { + "averageHeartRateVariabilityMilliseconds": { + "description": "Optional. A user's average heart rate variability calculated using the root mean square of successive differences (RMSSD) in times between heartbeats.", + "format": "double", + "type": "number" + }, + "date": { + "$ref": "Date", + "description": "Required. Date (in the user's timezone) of heart rate variability measurement." + }, + "deepSleepRootMeanSquareOfSuccessiveDifferencesMilliseconds": { + "description": "Optional. The root mean square of successive differences (RMSSD) value during deep sleep.", + "format": "double", + "type": "number" + }, + "entropy": { + "description": "Optional. The Shanon entropy of heartbeat intervals. Entropy quantifies randomness or disorder in a system. High entropy indicates high HRV. Entropy is measured from the histogram of time interval between successive heart beats values measured during sleep.", + "format": "double", + "type": "number" + }, + "nonRemHeartRateBeatsPerMinute": { + "description": "Optional. Non-REM heart rate", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "DailyHeartRateZones": { + "description": "User's heart rate zone thresholds based on the Karvonen algorithm for a specific day.", + "id": "DailyHeartRateZones", + "properties": { + "date": { + "$ref": "Date", + "description": "Required. Date (in user's timezone) of the heart rate zones record." + }, + "heartRateZones": { + "description": "Required. The heart rate zones.", + "items": { + "$ref": "HeartRateZone" + }, + "type": "array" + } + }, + "type": "object" + }, + "DailyOxygenSaturation": { + "description": "A daily oxygen saturation (SpO2) record. Represents the user's daily oxygen saturation summary, typically calculated during sleep.", + "id": "DailyOxygenSaturation", + "properties": { + "averagePercentage": { + "description": "Required. The average value of the oxygen saturation samples during the sleep.", + "format": "double", + "type": "number" + }, + "date": { + "$ref": "Date", + "description": "Required. Date (in user's timezone) of the daily oxygen saturation record." + }, + "lowerBoundPercentage": { + "description": "Required. The lower bound of the confidence interval of oxygen saturation samples during sleep.", + "format": "double", + "type": "number" + }, + "standardDeviationPercentage": { + "description": "Optional. Standard deviation of the daily oxygen saturation averages from the past 7-30 days.", + "format": "double", + "type": "number" + }, + "upperBoundPercentage": { + "description": "Required. The upper bound of the confidence interval of oxygen saturation samples during sleep.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "DailyRespiratoryRate": { + "description": "A daily average respiratory rate (breaths per minute) for a day of the year. One data point per day calculated for the main sleep.", + "id": "DailyRespiratoryRate", + "properties": { + "breathsPerMinute": { + "description": "Required. The average number of breaths taken per minute.", + "format": "double", + "type": "number" + }, + "date": { + "$ref": "Date", + "description": "Required. The date on which the respiratory rate was measured." + } + }, + "type": "object" + }, + "DailyRestingHeartRate": { + "description": "Measures the daily resting heart rate for a user, calculated using the all day heart rate measurements.", + "id": "DailyRestingHeartRate", + "properties": { + "beatsPerMinute": { + "description": "Required. The resting heart rate value in beats per minute.", + "format": "int64", + "type": "string" + }, + "dailyRestingHeartRateMetadata": { + "$ref": "DailyRestingHeartRateMetadata", + "description": "Optional. Metadata for the daily resting heart rate." + }, + "date": { + "$ref": "Date", + "description": "Required. Date (in the user's timezone) of the resting heart rate measurement." + } + }, + "type": "object" + }, + "DailyRestingHeartRateMetadata": { + "description": "Metadata for the daily resting heart rate.", + "id": "DailyRestingHeartRateMetadata", + "properties": { + "calculationMethod": { + "description": "Required. The method used to calculate the resting heart rate.", + "enum": [ + "CALCULATION_METHOD_UNSPECIFIED", + "WITH_SLEEP", + "ONLY_WITH_AWAKE_DATA" + ], + "enumDescriptions": [ + "The calculation method is unspecified.", + "The resting heart rate is calculated using the sleep data.", + "The resting heart rate is calculated using only awake data." + ], + "type": "string" + } + }, + "type": "object" + }, + "DailyRollUpDataPointsRequest": { + "description": "Request to roll up data points by civil time intervals.", + "id": "DailyRollUpDataPointsRequest", + "properties": { + "dataSourceFamily": { + "description": "Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The `next_page_token` from a previous request, if any. All other request fields need to be the same as in the initial request when the page token is specified.", + "type": "string" + }, + "range": { + "$ref": "CivilTimeInterval", + "description": "Required. Closed-open range of data points that will be rolled up. The start time must be aligned with the aggregation window. The maximum range for `calories-in-heart-rate-zone`, `heart-rate`, `active-minutes` and `total-calories` is 14 days. The maximum range for all other data types is 90 days." + }, + "windowSizeDays": { + "description": "Optional. Aggregation window size, in number of days. Defaults to 1 if not specified.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DailyRollUpDataPointsResponse": { + "description": "Response containing the list of rolled up data points.", + "id": "DailyRollUpDataPointsResponse", + "properties": { + "rollupDataPoints": { + "description": "Values for each aggregation time window.", + "items": { + "$ref": "DailyRollupDataPoint" + }, + "type": "array" + } + }, + "type": "object" + }, + "DailyRollupDataPoint": { + "description": "Value of a daily rollup for a single civil time interval (aggregation window)", + "id": "DailyRollupDataPoint", + "properties": { + "activeMinutes": { + "$ref": "ActiveMinutesRollupValue", + "description": "Returned by default when rolling up data points from the `active-minutes` data type, or when requested explicitly using the `active-minutes` rollup type identifier." + }, + "activeZoneMinutes": { + "$ref": "ActiveZoneMinutesRollupValue", + "description": "Returned by default when rolling up data points from the `active-zone-minutes` data type, or when requested explicitly using the `active-zone-minutes` rollup type identifier." + }, + "activityLevel": { + "$ref": "ActivityLevelRollupValue", + "description": "Returned by default when rolling up data points from the `activity-level` data type, or when requested explicitly using the `activity-level` rollup type identifier." + }, + "altitude": { + "$ref": "AltitudeRollupValue", + "description": "Returned by default when rolling up data points from the `altitude` data type, or when requested explicitly using the `altitude` rollup type identifier." + }, + "bodyFat": { + "$ref": "BodyFatRollupValue", + "description": "Returned by default when rolling up data points from the `body-fat` data type, or when requested explicitly using the `body-fat` rollup type identifier." + }, + "caloriesInHeartRateZone": { + "$ref": "CaloriesInHeartRateZoneRollupValue", + "description": "Returned by default when rolling up data points from the `calories-in-heart-rate-zone` data type, or when requested explicitly using the `calories-in-heart-rate-zone` rollup type identifier." + }, + "civilEndTime": { + "$ref": "CivilDateTime", + "description": "End time of the window this value aggregates over" + }, + "civilStartTime": { + "$ref": "CivilDateTime", + "description": "Start time of the window this value aggregates over" + }, + "distance": { + "$ref": "DistanceRollupValue", + "description": "Returned by default when rolling up data points from the `distance` data type, or when requested explicitly using the `distance` rollup type identifier." + }, + "floors": { + "$ref": "FloorsRollupValue", + "description": "Returned by default when rolling up data points from the `floors` data type, or when requested explicitly using the `floors` rollup type identifier." + }, + "heartRate": { + "$ref": "HeartRateRollupValue", + "description": "Returned by default when rolling up data points from the `heart-rate` data type, or when requested explicitly using the `heart-rate` rollup type identifier." + }, + "heartRateVariabilityPersonalRange": { + "$ref": "HeartRateVariabilityPersonalRangeRollupValue", + "description": "Returned by default when rolling up data points from the `daily-heart-rate-variability` data type, or when requested explicitly using the `heart-rate-variability-personal-range` rollup type identifier." + }, + "hydrationLog": { + "$ref": "HydrationLogRollupValue", + "description": "Returned by default when rolling up data points from the `hydration-log` data type, or when requested explicitly using the `hydration-log` rollup type identifier." + }, + "restingHeartRatePersonalRange": { + "$ref": "RestingHeartRatePersonalRangeRollupValue", + "description": "Returned by default when rolling up data points from the `daily-resting-heart-rate` data type, or when requested explicitly using the `resting-heart-rate-personal-range` rollup type identifier." + }, + "runVo2Max": { + "$ref": "RunVO2MaxRollupValue", + "description": "Returned by default when rolling up data points from the `run-vo2-max` data type, or when requested explicitly using the `run-vo2-max` rollup type identifier." + }, + "sedentaryPeriod": { + "$ref": "SedentaryPeriodRollupValue", + "description": "Returned by default when rolling up data points from the `sedentary-period` data type, or when requested explicitly using the `sedentary-period` rollup type identifier." + }, + "steps": { + "$ref": "StepsRollupValue", + "description": "Returned by default when rolling up data points from the `steps` data type, or when requested explicitly using the `steps` rollup type identifier." + }, + "swimLengthsData": { + "$ref": "SwimLengthsDataRollupValue", + "description": "Returned by default when rolling up data points from the `swim-lengths-data` data type, or when requested explicitly using the `swim-lengths-data` rollup type identifier." + }, + "timeInHeartRateZone": { + "$ref": "TimeInHeartRateZoneRollupValue", + "description": "Returned by default when rolling up data points from the `time-in-heart-rate-zone` data type, or when requested explicitly using the `time-in-heart-rate-zone` rollup type identifier." + }, + "totalCalories": { + "$ref": "TotalCaloriesRollupValue", + "description": "Returned by default when rolling up data points from the `total-calories` data type, or when requested explicitly using the `total-calories` rollup type identifier." + }, + "weight": { + "$ref": "WeightRollupValue", + "description": "Returned by default when rolling up data points from the `weight` data type, or when requested explicitly using the `weight` rollup type identifier." + } + }, + "type": "object" + }, + "DailySleepTemperatureDerivations": { + "description": "Provides derived sleep temperature values, calculated from skin or internal device temperature readings during sleep.", + "id": "DailySleepTemperatureDerivations", + "properties": { + "baselineTemperatureCelsius": { + "description": "Optional. The user's baseline skin temperature. It is the median of the user's nightly skin temperature over the past 30 days.", + "format": "double", + "type": "number" + }, + "date": { + "$ref": "Date", + "description": "Required. Date for which the sleep temperature derivations are calculated." + }, + "nightlyTemperatureCelsius": { + "description": "Required. The user's nightly skin temperature. It is the mean of skin temperature samples taken from the user’s sleep.", + "format": "double", + "type": "number" + }, + "relativeNightlyStddev30dCelsius": { + "description": "Optional. The standard deviation of the user’s relative nightly skin temperature (temperature - baseline) over the past 30 days.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "DailyVO2Max": { + "description": "Contains a daily summary of the user's VO2 max (cardio fitness score), which is the maximum rate of oxygen the body can use during exercise.", + "id": "DailyVO2Max", + "properties": { + "cardioFitnessLevel": { + "description": "Optional. Represents the user's cardio fitness level based on their VO2 max.", + "enum": [ + "CARDIO_FITNESS_LEVEL_UNSPECIFIED", + "POOR", + "FAIR", + "AVERAGE", + "GOOD", + "VERY_GOOD", + "EXCELLENT" + ], + "enumDescriptions": [ + "Unspecified cardio fitness level.", + "Poor cardio fitness level.", + "Fair cardio fitness level.", + "Average cardio fitness level.", + "Good cardio fitness level.", + "Very good cardio fitness level.", + "Excellent cardio fitness level." + ], + "type": "string" + }, + "date": { + "$ref": "Date", + "description": "Required. The date for which the Daily VO2 max was measured." + }, + "estimated": { + "description": "Optional. An estimated field is added to indicate when the confidence has decreased sufficiently to consider the value an estimation.", + "type": "boolean" + }, + "vo2Max": { + "description": "Required. Daily VO2 max value measured as in ml consumed oxygen / kg of body weight / min.", + "format": "double", + "type": "number" + }, + "vo2MaxCovariance": { + "description": "Optional. The covariance of the VO2 max value.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "DataPoint": { + "description": "A computed or recorded metric.", + "id": "DataPoint", + "properties": { + "activeMinutes": { + "$ref": "ActiveMinutes", + "description": "Optional. Data for points in the `active-minutes` interval data type collection." + }, + "activeZoneMinutes": { + "$ref": "ActiveZoneMinutes", + "description": "Optional. Data for points in the `active-zone-minutes` interval data type collection, measured in minutes." + }, + "activityLevel": { + "$ref": "ActivityLevel", + "description": "Optional. Data for points in the `activity-level` daily data type collection." + }, + "altitude": { + "$ref": "Altitude", + "description": "Optional. Data for points in the `altitude` interval data type collection." + }, + "basalEnergyBurned": { + "$ref": "BasalEnergyBurned", + "description": "Optional. Data for points in the `basal-energy-burned` interval data type collection." + }, + "bodyFat": { + "$ref": "BodyFat", + "description": "Optional. Data for points in the `body-fat` sample data type collection." + }, + "dailyHeartRateVariability": { + "$ref": "DailyHeartRateVariability", + "description": "Optional. Data for points in the `daily-heart-rate-variability` daily data type collection." + }, + "dailyHeartRateZones": { + "$ref": "DailyHeartRateZones", + "description": "Optional. Data for points in the `daily-heart-rate-zones` daily data type collection." + }, + "dailyOxygenSaturation": { + "$ref": "DailyOxygenSaturation", + "description": "Optional. Data for points in the `daily-oxygen-saturation` daily data type collection." + }, + "dailyRespiratoryRate": { + "$ref": "DailyRespiratoryRate", + "description": "Optional. Data for points in the `daily-respiratory-rate` daily data type collection." + }, + "dailyRestingHeartRate": { + "$ref": "DailyRestingHeartRate", + "description": "Optional. Data for points in the `daily-resting-heart-rate` daily data type collection." + }, + "dailySleepTemperatureDerivations": { + "$ref": "DailySleepTemperatureDerivations", + "description": "Optional. Data for points in the `daily-sleep-temperature-derivations` daily data type collection." + }, + "dailyVo2Max": { + "$ref": "DailyVO2Max", + "description": "Optional. Data for points in the `daily-vo2-max` daily data type collection." + }, + "dataSource": { + "$ref": "DataSource", + "description": "Optional. Data source information for the metric" + }, + "distance": { + "$ref": "Distance", + "description": "Optional. Data for points in the `distance` interval data type collection." + }, + "exercise": { + "$ref": "Exercise", + "description": "Optional. Data for points in the `exercise` session data type collection." + }, + "floors": { + "$ref": "Floors", + "description": "Optional. Data for points in the `floors` interval data type collection." + }, + "heartRate": { + "$ref": "HeartRate", + "description": "Optional. Data for points in the `heart-rate` sample data type collection." + }, + "heartRateVariability": { + "$ref": "HeartRateVariability", + "description": "Optional. Data for points in the `heart-rate-variability` sample data type collection." + }, + "height": { + "$ref": "Height", + "description": "Optional. Data for points in the `height` sample data type collection." + }, + "hydrationLog": { + "$ref": "HydrationLog", + "description": "Optional. Data for points in the `hydration-log` session data type collection." + }, + "name": { + "description": "Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user}/dataTypes/{data_type}/dataPoints/{data_point}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens.", + "type": "string" + }, + "oxygenSaturation": { + "$ref": "OxygenSaturation", + "description": "Optional. Data for points in the `oxygen-saturation` sample data type collection." + }, + "respiratoryRateSleepSummary": { + "$ref": "RespiratoryRateSleepSummary", + "description": "Optional. Data for points in the `respiratory-rate-sleep-summary` sample data type collection." + }, + "runVo2Max": { + "$ref": "RunVO2Max", + "description": "Optional. Data for points in the `run-vo2-max` sample data type collection." + }, + "sedentaryPeriod": { + "$ref": "SedentaryPeriod", + "description": "Optional. Data for points in the `sedentary-period` interval data type collection." + }, + "sleep": { + "$ref": "Sleep", + "description": "Optional. Data for points in the `sleep` session data type collection." + }, + "steps": { + "$ref": "Steps", + "description": "Optional. Data for points in the `steps` interval data type collection." + }, + "swimLengthsData": { + "$ref": "SwimLengthsData", + "description": "Optional. Data for points in the `swim-lengths-data` interval data type collection." + }, + "timeInHeartRateZone": { + "$ref": "TimeInHeartRateZone", + "description": "Optional. Data for points in the `time-in-heart-rate-zone` interval data type collection." + }, + "vo2Max": { + "$ref": "VO2Max", + "description": "Optional. Data for points in the `vo2-max` sample data type collection." + }, + "weight": { + "$ref": "Weight", + "description": "Optional. Data for points in the `weight` sample data type collection." + } + }, + "type": "object" + }, + "DataSource": { + "description": "Data Source definition to track the origin of data. Each health data point, regardless of the complexity or data model (whether a simple step count or a detailed sleep session) must retain information about its source of origin (e.g. the device or app that collected it).", + "id": "DataSource", + "properties": { + "application": { + "$ref": "Application", + "description": "Output only. Captures metadata for the application that provided this data.", + "readOnly": true + }, + "device": { + "$ref": "Device", + "description": "Optional. Captures metadata for raw data points originating from devices. We expect this data source to be used for data points written on device sync." + }, + "platform": { + "description": "Output only. Captures the platform that uploaded the data.", + "enum": [ + "PLATFORM_UNSPECIFIED", + "FITBIT", + "HEALTH_CONNECT", + "HEALTH_KIT", + "FIT", + "FITBIT_WEB_API", + "NEST", + "GOOGLE_WEB_API", + "GOOGLE_PARTNER_INTEGRATION" + ], + "enumDescriptions": [ + "The platform is unspecified.", + "The data was uploaded from Fitbit.", + "The data was uploaded from Health Connect.", + "The data was uploaded from Health Kit.", + "The data was uploaded from Google Fit.", + "The data was uploaded from Fitbit legacy Web API.", + "The data was uploaded from Nest devices.", + "The data was uploaded from Google Health API.", + "The data was uploaded from Google Partner Integrations." + ], + "readOnly": true, + "type": "string" + }, + "recordingMethod": { + "description": "Optional. Captures how the data was recorded.", + "enum": [ + "RECORDING_METHOD_UNSPECIFIED", + "MANUAL", + "PASSIVELY_MEASURED", + "DERIVED", + "ACTIVELY_MEASURED", + "UNKNOWN" + ], + "enumDescriptions": [ + "The recording method is unspecified.", + "The data was manually entered by the user.", + "The data was passively measured by a device.", + "The data was derived from other data, e.g., by an algorithm in the backend.", + "The data was actively measured by a device.", + "The recording method is unknown. This is set when the data is uploaded from a third party app that does not provide this information." + ], + "type": "string" + } + }, + "type": "object" + }, + "Date": { + "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp", + "id": "Date", + "properties": { + "day": { + "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + "format": "int32", + "type": "integer" + }, + "month": { + "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + "format": "int32", + "type": "integer" + }, + "year": { + "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DateTime": { + "description": "Represents civil time (or occasionally physical time). This type can represent a civil time in one of a few possible ways: * When utc_offset is set and time_zone is unset: a civil time on a calendar day with a particular offset from UTC. * When time_zone is set and utc_offset is unset: a civil time on a calendar day in a particular time zone. * When neither time_zone nor utc_offset is set: a civil time on a calendar day in local time. The date is relative to the Proleptic Gregorian Calendar. If year, month, or day are 0, the DateTime is considered not to have a specific year, month, or day respectively. This type may also be used to represent a physical time if all the date and time fields are set and either case of the `time_offset` oneof is set. Consider using `Timestamp` message for physical time instead. If your use case also would like to store the user's timezone, that can be done in another field. This type is more flexible than some applications may want. Make sure to document and validate your application's limitations.", + "id": "DateTime", + "properties": { + "day": { + "description": "Optional. Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a datetime without a day.", + "format": "int32", + "type": "integer" + }, + "hours": { + "description": "Optional. Hours of day in 24 hour format. Should be from 0 to 23, defaults to 0 (midnight). An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + "format": "int32", + "type": "integer" + }, + "minutes": { + "description": "Optional. Minutes of hour of day. Must be from 0 to 59, defaults to 0.", + "format": "int32", + "type": "integer" + }, + "month": { + "description": "Optional. Month of year. Must be from 1 to 12, or 0 if specifying a datetime without a month.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Optional. Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999, defaults to 0.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Optional. Seconds of minutes of the time. Must normally be from 0 to 59, defaults to 0. An API may allow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + }, + "timeZone": { + "$ref": "TimeZone", + "description": "Time zone." + }, + "utcOffset": { + "description": "UTC offset. Must be whole seconds, between -18 hours and +18 hours. For example, a UTC offset of -4:00 would be represented as { seconds: -14400 }.", + "format": "google-duration", + "type": "string" + }, + "year": { + "description": "Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a datetime without a year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Device": { + "description": "Captures metadata about the device that recorded the measurement.", + "id": "Device", + "properties": { + "displayName": { + "description": "Optional. An optional name for the device.", + "type": "string" + }, + "formFactor": { + "description": "Optional. Captures the form factor of the device.", + "enum": [ + "FORM_FACTOR_UNSPECIFIED", + "FITNESS_BAND", + "WATCH", + "PHONE", + "RING", + "CHEST_STRAP", + "SCALE", + "TABLET", + "HEAD_MOUNTED", + "SMART_DISPLAY" + ], + "enumDescriptions": [ + "The form factor is unspecified.", + "The device is a fitness band.", + "The device is a watch.", + "The device is a phone.", + "The device is a ring.", + "The device is a chest strap.", + "The device is a scale.", + "The device is a tablet.", + "The device is a head mounted device.", + "The device is a smart display." + ], + "type": "string" + }, + "manufacturer": { + "description": "Optional. An optional manufacturer of the device.", + "type": "string" + } + }, + "type": "object" + }, + "Distance": { + "description": "Distance traveled over an interval of time.", + "id": "Distance", + "properties": { + "interval": { + "$ref": "ObservationTimeInterval", + "description": "Required. Observed interval." + }, + "millimeters": { + "description": "Required. Distance in millimeters over the observed interval.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "DistanceRollupValue": { + "description": "Result of the rollup of the user's distance.", + "id": "DistanceRollupValue", + "properties": { + "millimetersSum": { + "description": "Sum of the distance in millimeters.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "EndpointAuthorization": { + "description": "Authorization mechanism for a subscriber endpoint. For all requests sent by the Webhooks service, the JSON payload is cryptographically signed. The signature is delivered in the `X-HEALTHAPI-SIGNATURE` HTTP header. This is an ECDSA (NIST P256) signature of the JSON payload. Clients must verify this signature using Google Health API's public key to confirm the payload was sent by the Health API.", + "id": "EndpointAuthorization", + "properties": { + "secret": { + "description": "Required. Input only. Provides a client-provided secret that will be sent with each notification to the subscriber endpoint using the \"Authorization\" header. The value must include the authorization scheme, e.g., \"Bearer \" or \"Basic \", as it will be used as the full Authorization header value. This secret is used by the API to test the endpoint during `CreateSubscriber` and `UpdateSubscriber` calls, and will be sent in the `Authorization` header for all subsequent webhook notifications to this endpoint.", + "type": "string" + }, + "secretSet": { + "description": "Output only. Whether the secret is set.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, + "Exercise": { + "description": "An exercise that stores information about a physical activity.", + "id": "Exercise", + "properties": { + "activeDuration": { + "description": "Optional. Duration excluding pauses.", + "format": "google-duration", + "type": "string" + }, + "createTime": { + "description": "Output only. Represents the timestamp of the creation of the exercise.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Required. Exercise display name.", + "type": "string" + }, + "exerciseEvents": { + "description": "Optional. Exercise events that happen during an exercise, such as pause & restarts.", + "items": { + "$ref": "ExerciseEvent" + }, + "type": "array" + }, + "exerciseMetadata": { + "$ref": "ExerciseMetadata", + "description": "Optional. Additional exercise metadata." + }, + "exerciseType": { + "description": "Required. The type of activity performed during an exercise.", + "enum": [ + "EXERCISE_TYPE_UNSPECIFIED", + "RUNNING", + "WALKING", + "BIKING", + "SWIMMING", + "HIKING", + "YOGA", + "PILATES", + "WORKOUT", + "HIIT", + "WEIGHTLIFTING", + "STRENGTH_TRAINING", + "OTHER" + ], + "enumDescriptions": [ + "Exercise type is unspecified.", + "Running type.", + "Walking type.", + "Biking type.", + "Swimming type.", + "Hiking type.", + "Yoga type.", + "Pilates type.", + "Workout type.", + "HIIT type.", + "Weightlifting type.", + "Strength training type.", + "Other type." + ], + "type": "string" + }, + "interval": { + "$ref": "SessionTimeInterval", + "description": "Required. Observed exercise interval" + }, + "metricsSummary": { + "$ref": "MetricsSummary", + "description": "Required. Summary metrics for this exercise ( )" + }, + "notes": { + "description": "Optional. Standard free-form notes captured at manual logging.", + "type": "string" + }, + "splitSummaries": { + "description": "Optional. Laps or splits recorded within an exercise. Laps could be split based on distance or other criteria (duration, etc.) Laps should not be overlapping with each other.", + "items": { + "$ref": "SplitSummary" + }, + "type": "array" + }, + "splits": { + "description": "Optional. The default split is 1 km or 1 mile. - if the movement distance is less than the default, then there are no splits - if the movement distance is greater than or equal to the default, then we have splits", + "items": { + "$ref": "SplitSummary" + }, + "type": "array" + }, + "updateTime": { + "description": "Output only. This is the timestamp of the last update to the exercise.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ExerciseEvent": { + "description": "Represents instantaneous events that happen during an exercise, such as start, stop, pause, split.", + "id": "ExerciseEvent", + "properties": { + "eventTime": { + "description": "Required. Exercise event time", + "format": "google-datetime", + "type": "string" + }, + "eventUtcOffset": { + "description": "Required. Exercise event time offset from UTC", + "format": "google-duration", + "type": "string" + }, + "exerciseEventType": { + "description": "Required. The type of the event, such as start, stop, pause, resume.", + "enum": [ + "EXERCISE_EVENT_TYPE_UNSPECIFIED", + "START", + "STOP", + "PAUSE", + "RESUME", + "AUTO_PAUSE", + "AUTO_RESUME" + ], + "enumDescriptions": [ + "Exercise event type is unspecified.", + "Exercise start event.", + "Exercise stop event.", + "Exercise pause event.", + "Exercise resume event.", + "Exercise auto-pause event.", + "Exercise auto-resume event." + ], + "type": "string" + } + }, + "type": "object" + }, + "ExerciseMetadata": { + "description": "Additional exercise metadata.", + "id": "ExerciseMetadata", + "properties": { + "hasGps": { + "description": "Optional. Whether the exercise had GPS tracking.", + "type": "boolean" + }, + "poolLengthMillimeters": { + "description": "Optional. Pool length in millimeters. Only present in the swimming exercises.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ExportExerciseTcxResponse": { + "description": "Represents a Response for exporting exercise data in TCX format.", + "id": "ExportExerciseTcxResponse", + "properties": { + "tcxData": { + "description": "Contains the exported TCX data.", + "type": "string" + } + }, + "type": "object" + }, + "Floors": { + "description": "Gained elevation measured in floors over the time interval", + "id": "Floors", + "properties": { + "count": { + "description": "Required. Number of floors in the recorded interval", + "format": "int64", + "type": "string" + }, + "interval": { + "$ref": "ObservationTimeInterval", + "description": "Required. Observed interval" + } + }, + "type": "object" + }, + "FloorsRollupValue": { + "description": "Represents the result of the rollup of the user's floors.", + "id": "FloorsRollupValue", + "properties": { + "countSum": { + "description": "Sum of the floors count.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleDevicesandservicesHealthV4DataType": { + "description": "Represents a type of health data a user can have data points recorded for. It matches the parent resource of collection containing data points of the given type. Clients currently do not need to interact with this resource directly.", + "id": "GoogleDevicesandservicesHealthV4DataType", + "properties": { + "name": { + "description": "Identifier. The resource name of the data type. Format: `users/{user}/dataTypes/{data_type}` See DataPoint.name for examples and possible values.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleDevicesandservicesHealthV4WebhookNotificationCloudLog": { + "description": "Log message for a webhook notification sent by the Google Health API to a subscriber's endpoint. Includes the HTTP response received from the endpoint.", + "id": "GoogleDevicesandservicesHealthV4WebhookNotificationCloudLog", + "properties": { + "httpResponse": { + "$ref": "HttpResponse", + "description": "Required. Represents the HTTP response. This message includes the status code, reason phrase, headers, and body." + } + }, + "type": "object" + }, + "HeartRate": { + "description": "A heart rate measurement.", + "id": "HeartRate", + "properties": { + "beatsPerMinute": { + "description": "Required. The heart rate value in beats per minute.", + "format": "int64", + "type": "string" + }, + "metadata": { + "$ref": "HeartRateMetadata", + "description": "Optional. Metadata about the heart rate sample." + }, + "sampleTime": { + "$ref": "ObservationSampleTime", + "description": "Required. Observation time" + } + }, + "type": "object" + }, + "HeartRateMetadata": { + "description": "Heart rate metadata.", + "id": "HeartRateMetadata", + "properties": { + "motionContext": { + "description": "Optional. Indicates the user’s level of activity when the heart rate sample was measured", + "enum": [ + "MOTION_CONTEXT_UNSPECIFIED", + "ACTIVE", + "SEDENTARY" + ], + "enumDescriptions": [ + "The default value when no data is available.", + "The user is active.", + "The user is inactive." + ], + "type": "string" + }, + "sensorLocation": { + "description": "Optional. Indicates the location of the sensor that measured the heart rate.", + "enum": [ + "SENSOR_LOCATION_UNSPECIFIED", + "CHEST", + "WRIST", + "FINGER", + "HAND", + "EAR_LOBE", + "FOOT" + ], + "enumDescriptions": [ + "The default value when no data is available.", + "Chest sensor.", + "Wrist sensor.", + "Finger sensor.", + "Hand sensor.", + "Ear lobe sensor.", + "Foot sensor." + ], + "type": "string" + } + }, + "type": "object" + }, + "HeartRateRollupValue": { + "description": "Represents the result of the rollup of the heart rate data type.", + "id": "HeartRateRollupValue", + "properties": { + "beatsPerMinuteAvg": { + "description": "The average heart rate value in the interval.", + "format": "double", + "type": "number" + }, + "beatsPerMinuteMax": { + "description": "The maximum heart rate value in the interval.", + "format": "double", + "type": "number" + }, + "beatsPerMinuteMin": { + "description": "The minimum heart rate value in the interval.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "HeartRateVariability": { + "description": "Captures user's heart rate variability (HRV) as measured by the root mean square of successive differences (RMSSD) between normal heartbeats or by standard deviation of the inter-beat intervals (SDNN).", + "id": "HeartRateVariability", + "properties": { + "rootMeanSquareOfSuccessiveDifferencesMilliseconds": { + "description": "Optional. The root mean square of successive differences between normal heartbeats. This is a measure of heart rate variability used by Fitbit.", + "format": "double", + "type": "number" + }, + "sampleTime": { + "$ref": "ObservationSampleTime", + "description": "Required. The time of the heart rate variability measurement." + }, + "standardDeviationMilliseconds": { + "description": "Optional. The standard deviation of the heart rate variability measurement.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "HeartRateVariabilityPersonalRangeRollupValue": { + "description": "Represents the result of the rollup of the user's daily heart rate variability personal range.", + "id": "HeartRateVariabilityPersonalRangeRollupValue", + "properties": { + "averageHeartRateVariabilityMillisecondsMax": { + "description": "The upper bound of the user's average heart rate variability personal range.", + "format": "double", + "type": "number" + }, + "averageHeartRateVariabilityMillisecondsMin": { + "description": "The lower bound of the user's average heart rate variability personal range.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "HeartRateZone": { + "description": "The heart rate zone.", + "id": "HeartRateZone", + "properties": { + "heartRateZoneType": { + "description": "Required. The heart rate zone type.", + "enum": [ + "HEART_RATE_ZONE_TYPE_UNSPECIFIED", + "LIGHT", + "MODERATE", + "VIGOROUS", + "PEAK" + ], + "enumDescriptions": [ + "Unspecified heart rate zone.", + "The light heart rate zone.", + "The moderate heart rate zone.", + "The vigorous heart rate zone.", + "The peak heart rate zone." + ], + "type": "string" + }, + "maxBeatsPerMinute": { + "description": "Required. Maximum heart rate for this zone in beats per minute.", + "format": "int64", + "type": "string" + }, + "minBeatsPerMinute": { + "description": "Required. Minimum heart rate for this zone in beats per minute.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Height": { + "description": "Body height measurement.", + "id": "Height", + "properties": { + "heightMillimeters": { + "description": "Required. Height of the user in millimeters.", + "format": "int64", + "type": "string" + }, + "sampleTime": { + "$ref": "ObservationSampleTime", + "description": "Required. The time at which the height was recorded." + } + }, + "type": "object" + }, + "HttpHeader": { + "description": "Represents an HTTP header.", + "id": "HttpHeader", + "properties": { + "key": { + "description": "The HTTP header key. It is case insensitive.", + "type": "string" + }, + "value": { + "description": "The HTTP header value.", + "type": "string" + } + }, + "type": "object" + }, + "HttpResponse": { + "description": "Represents an HTTP response.", + "id": "HttpResponse", + "properties": { + "body": { + "description": "The HTTP response body. If the body is not expected, it should be empty.", + "format": "byte", + "type": "string" + }, + "headers": { + "description": "The HTTP response headers. The ordering of the headers is significant. Multiple headers with the same key may present for the response.", + "items": { + "$ref": "HttpHeader" + }, + "type": "array" + }, + "reason": { + "description": "The HTTP reason phrase, such as \"OK\" or \"Not Found\".", + "type": "string" + }, + "status": { + "description": "The HTTP status code, such as 200 or 404.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "HydrationLog": { + "description": "Holds information about a user logged hydration.", + "id": "HydrationLog", + "properties": { + "amountConsumed": { + "$ref": "VolumeQuantity", + "description": "Required. Amount of liquid (ex. water) consumed." + }, + "interval": { + "$ref": "SessionTimeInterval", + "description": "Required. Observed interval." + } + }, + "type": "object" + }, + "HydrationLogRollupValue": { + "description": "Represents the result of the rollup of the hydration log data type.", + "id": "HydrationLogRollupValue", + "properties": { + "amountConsumed": { + "$ref": "VolumeQuantityRollup", + "description": "Rollup for amount consumed." + } + }, + "type": "object" + }, + "Identity": { + "description": "Represents details about the Google user's identity.", + "id": "Identity", + "properties": { + "healthUserId": { + "description": "Output only. The Google User Identifier in the Google Health APIs. It matches the `{user}` resource ID segment in the resource name paths, e.g. `users/{user}/dataTypes/steps`. Valid values are strings of 1-63 characters, and valid characters are lowercase and uppercase letters, numbers, and hyphens.", + "readOnly": true, + "type": "string" + }, + "legacyUserId": { + "description": "Output only. The legacy Fitbit User identifier. This is the Fitbit ID used in the legacy Fitbit APIs (v1-v3). It can be referenced by clients migrating from the legacy Fitbit APIs to map their existing identifiers to the new Google user ID. It **must not** be used for any other purpose. It is not of any use for new clients using only the Google Health APIs. Valid values are strings of 1-63 characters, and valid characters are lowercase and uppercase letters, numbers, and hyphens.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of this Identity resource. Format: `users/me/identity`", + "type": "string" + } + }, + "type": "object" + }, + "Interval": { + "description": "Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time.", + "id": "Interval", + "properties": { + "endTime": { + "description": "Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "ListDataPointsResponse": { + "description": "Response containing raw data points matching the query", + "id": "ListDataPointsResponse", + "properties": { + "dataPoints": { + "description": "Data points matching the query", + "items": { + "$ref": "DataPoint" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Next page token, empty if the response is complete", + "type": "string" + } + }, + "type": "object" + }, + "ListSubscribersResponse": { + "description": "Response message for ListSubscribers.", + "id": "ListSubscribersResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "subscribers": { + "description": "Subscribers from the specified project.", + "items": { + "$ref": "Subscriber" + }, + "type": "array" + }, + "totalSize": { + "description": "The total number of subscribers matching the request.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "MetricsSummary": { + "description": "Summary metrics for an exercise.", + "id": "MetricsSummary", + "properties": { + "activeZoneMinutes": { + "description": "Optional. Total active zone minutes for the exercise.", + "format": "int64", + "type": "string" + }, + "averageHeartRateBeatsPerMinute": { + "description": "Optional. Average heart rate during the exercise.", + "format": "int64", + "type": "string" + }, + "averagePaceSecondsPerMeter": { + "description": "Optional. Average pace in seconds per meter.", + "format": "double", + "type": "number" + }, + "averageSpeedMillimetersPerSecond": { + "description": "Optional. Average speed in millimeters per second.", + "format": "double", + "type": "number" + }, + "caloriesKcal": { + "description": "Optional. Total calories burned by the user during the exercise.", + "format": "double", + "type": "number" + }, + "distanceMillimeters": { + "description": "Optional. Total distance covered by the user during the exercise.", + "format": "double", + "type": "number" + }, + "elevationGainMillimeters": { + "description": "Optional. Total elevation gain during the exercise.", + "format": "double", + "type": "number" + }, + "heartRateZoneDurations": { + "$ref": "TimeInHeartRateZones", + "description": "Optional. Time spent in each heart rate zone." + }, + "mobilityMetrics": { + "$ref": "MobilityMetrics", + "description": "Optional. Mobility workouts specific metrics. Only present in the advanced running exercises." + }, + "runVo2Max": { + "description": "Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.", + "format": "double", + "type": "number" + }, + "steps": { + "description": "Optional. Total steps taken during the exercise.", + "format": "int64", + "type": "string" + }, + "totalSwimLengths": { + "description": "Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "MobilityMetrics": { + "description": "Mobility workouts specific metrics", + "id": "MobilityMetrics", + "properties": { + "avgCadenceStepsPerMinute": { + "description": "Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.", + "format": "double", + "type": "number" + }, + "avgGroundContactTimeDuration": { + "description": "Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride", + "format": "google-duration", + "type": "string" + }, + "avgStrideLengthMillimeters": { + "description": "Optional. Stride length is a measure of the distance covered by a single stride", + "format": "int64", + "type": "string" + }, + "avgVerticalOscillationMillimeters": { + "description": "Optional. Distance off the ground your center of mass moves with each stride while running", + "format": "int64", + "type": "string" + }, + "avgVerticalRatio": { + "description": "Optional. Vertical oscillation/stride length between [5.0, 11.0].", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "ObservationSampleTime": { + "description": "Represents a sample time of an observed data point.", + "id": "ObservationSampleTime", + "properties": { + "civilTime": { + "$ref": "CivilDateTime", + "description": "Output only. The civil time in the timezone the subject is in at the time of the observation.", + "readOnly": true + }, + "physicalTime": { + "description": "Required. The time of the observation.", + "format": "google-datetime", + "type": "string" + }, + "utcOffset": { + "description": "Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "ObservationTimeInterval": { + "description": "Represents a time interval of an observed data point.", + "id": "ObservationTimeInterval", + "properties": { + "civilEndTime": { + "$ref": "CivilDateTime", + "description": "Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval", + "readOnly": true + }, + "civilStartTime": { + "$ref": "CivilDateTime", + "description": "Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval", + "readOnly": true + }, + "endTime": { + "description": "Required. Observed interval end time.", + "format": "google-datetime", + "type": "string" + }, + "endUtcOffset": { + "description": "Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).", + "format": "google-duration", + "type": "string" + }, + "startTime": { + "description": "Required. Observed interval start time.", + "format": "google-datetime", + "type": "string" + }, + "startUtcOffset": { + "description": "Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).", + "format": "google-duration", + "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" + }, + "OutOfBedSegment": { + "description": "A time interval to represent an out-of-bed segment.", + "id": "OutOfBedSegment", + "properties": { + "endTime": { + "description": "Required. Segment end time.", + "format": "google-datetime", + "type": "string" + }, + "endUtcOffset": { + "description": "Required. The offset of the user's local time at the end of the segment relative to the Coordinated Universal Time (UTC).", + "format": "google-duration", + "type": "string" + }, + "startTime": { + "description": "Required. Segment tart time.", + "format": "google-datetime", + "type": "string" + }, + "startUtcOffset": { + "description": "Required. The offset of the user's local time at the start of the segment relative to the Coordinated Universal Time (UTC).", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "OxygenSaturation": { + "description": "Captures the user's instantaneous oxygen saturation percentage (SpO2).", + "id": "OxygenSaturation", + "properties": { + "percentage": { + "description": "Required. The oxygen saturation percentage. Valid values are from 0 to 100.", + "format": "double", + "type": "number" + }, + "sampleTime": { + "$ref": "ObservationSampleTime", + "description": "Required. The time at which oxygen saturation was measured." + } + }, + "type": "object" + }, + "Profile": { + "description": "Profile details.", + "id": "Profile", + "properties": { + "age": { + "description": "Optional. The age in years based on the user's birth date. Updates to this field are currently not supported.", + "format": "int32", + "type": "integer" + }, + "autoRunningStrideLengthMm": { + "description": "Output only. The automatically calculated running stride length, in millimeters. The user must consent to one of the following access scopes to access this field: - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly` - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness`", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "autoWalkingStrideLengthMm": { + "description": "Output only. The automatically calculated walking stride length, in millimeters. The user must consent to one of the following access scopes to access this field: - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly` - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness`", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "membershipStartDate": { + "$ref": "Date", + "description": "Output only. The date the user created their account. Updates to this field are currently not supported.", + "readOnly": true + }, + "name": { + "description": "Identifier. The resource name of this Profile resource. Format: `users/{user}/profile` Example: `users/1234567890/profile` or `users/me/profile` The {user} ID is a system-generated Google Health API user ID, a string of 1-63 characters consisting of lowercase and uppercase letters, numbers, and hyphens. The literal `me` can also be used to refer to the authenticated user.", + "type": "string" + }, + "userConfiguredRunningStrideLengthMm": { + "description": "Optional. The user's user configured running stride length, in millimeters. The user must consent to one of the following access scopes to access this field: - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly` - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness`", + "format": "int32", + "type": "integer" + }, + "userConfiguredWalkingStrideLengthMm": { + "description": "Optional. The user's user configured walking stride length, in millimeters. The user must consent to one of the following access scopes to access this field: - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly` - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness`", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ReconcileDataPointsResponse": { + "description": "Response containing the list of reconciled DataPoints.", + "id": "ReconcileDataPointsResponse", + "properties": { + "dataPoints": { + "description": "Data points matching the query", + "items": { + "$ref": "ReconciledDataPoint" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Next page token, empty if the response is complete", + "type": "string" + } + }, + "type": "object" + }, + "ReconciledDataPoint": { + "description": "A reconciled computed or recorded metric.", + "id": "ReconciledDataPoint", + "properties": { + "activeMinutes": { + "$ref": "ActiveMinutes", + "description": "Data for points in the `active-minutes` interval data type collection." + }, + "activeZoneMinutes": { + "$ref": "ActiveZoneMinutes", + "description": "Data for points in the `active-zone-minutes` interval data type collection, measured in minutes." + }, + "activityLevel": { + "$ref": "ActivityLevel", + "description": "Data for points in the `activity-level` daily data type collection." + }, + "altitude": { + "$ref": "Altitude", + "description": "Data for points in the `altitude` interval data type collection." + }, + "basalEnergyBurned": { + "$ref": "BasalEnergyBurned", + "description": "Data for points in the `basal-energy-burned` interval data type collection." + }, + "bodyFat": { + "$ref": "BodyFat", + "description": "Data for points in the `body-fat` sample data type collection." + }, + "dailyHeartRateVariability": { + "$ref": "DailyHeartRateVariability", + "description": "Data for points in the `daily-heart-rate-variability` daily data type collection." + }, + "dailyHeartRateZones": { + "$ref": "DailyHeartRateZones", + "description": "Data for points in the `daily-heart-rate-zones` daily data type collection." + }, + "dailyOxygenSaturation": { + "$ref": "DailyOxygenSaturation", + "description": "Data for points in the `daily-oxygen-saturation` daily data type collection." + }, + "dailyRespiratoryRate": { + "$ref": "DailyRespiratoryRate", + "description": "Data for points in the `daily-respiratory-rate` daily data type collection." + }, + "dailyRestingHeartRate": { + "$ref": "DailyRestingHeartRate", + "description": "Data for points in the `daily-resting-heart-rate` daily data type collection." + }, + "dailySleepTemperatureDerivations": { + "$ref": "DailySleepTemperatureDerivations", + "description": "Data for points in the `daily-sleep-temperature-derivations` daily data type collection." + }, + "dailyVo2Max": { + "$ref": "DailyVO2Max", + "description": "Data for points in the `daily-vo2-max` daily data type collection." + }, + "dataPointName": { + "description": "Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user}/dataTypes/{data_type}/dataPoints/{data_point}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens.", + "type": "string" + }, + "distance": { + "$ref": "Distance", + "description": "Data for points in the `distance` interval data type collection." + }, + "exercise": { + "$ref": "Exercise", + "description": "Data for points in the `exercise` session data type collection." + }, + "floors": { + "$ref": "Floors", + "description": "Data for points in the `floors` interval data type collection." + }, + "heartRate": { + "$ref": "HeartRate", + "description": "Data for points in the `heart-rate` sample data type collection." + }, + "heartRateVariability": { + "$ref": "HeartRateVariability", + "description": "Data for points in the `heart-rate-variability` sample data type collection." + }, + "height": { + "$ref": "Height", + "description": "Data for points in the `height` sample data type collection." + }, + "hydrationLog": { + "$ref": "HydrationLog", + "description": "Data for points in the `hydration-log` session data type collection." + }, + "oxygenSaturation": { + "$ref": "OxygenSaturation", + "description": "Data for points in the `oxygen-saturation` sample data type collection." + }, + "respiratoryRateSleepSummary": { + "$ref": "RespiratoryRateSleepSummary", + "description": "Data for points in the `respiratory-rate-sleep-summary` sample data type collection." + }, + "runVo2Max": { + "$ref": "RunVO2Max", + "description": "Data for points in the `run-vo2-max` sample data type collection." + }, + "sedentaryPeriod": { + "$ref": "SedentaryPeriod", + "description": "Data for points in the `sedentary-period` interval data type collection." + }, + "sleep": { + "$ref": "Sleep", + "description": "Data for points in the `sleep` session data type collection." + }, + "steps": { + "$ref": "Steps", + "description": "Data for points in the `steps` interval data type collection." + }, + "swimLengthsData": { + "$ref": "SwimLengthsData", + "description": "Data for points in the `swim-lengths-data` interval data type collection." + }, + "timeInHeartRateZone": { + "$ref": "TimeInHeartRateZone", + "description": "Data for points in the `time-in-heart-rate-zone` interval data type collection." + }, + "vo2Max": { + "$ref": "VO2Max", + "description": "Data for points in the `vo2-max` sample data type collection." + }, + "weight": { + "$ref": "Weight", + "description": "Data for points in the `weight` sample data type collection." + } + }, + "type": "object" + }, + "RespiratoryRateSleepSummary": { + "description": "Records respiratory rate details during sleep. Can have multiple per day if the user sleeps multiple times.", + "id": "RespiratoryRateSleepSummary", + "properties": { + "deepSleepStats": { + "$ref": "RespiratoryRateSleepSummaryStatistics", + "description": "Optional. Respiratory rate statistics for deep sleep." + }, + "fullSleepStats": { + "$ref": "RespiratoryRateSleepSummaryStatistics", + "description": "Required. Full respiratory rate statistics." + }, + "lightSleepStats": { + "$ref": "RespiratoryRateSleepSummaryStatistics", + "description": "Optional. Respiratory rate statistics for light sleep." + }, + "remSleepStats": { + "$ref": "RespiratoryRateSleepSummaryStatistics", + "description": "Optional. Respiratory rate statistics for REM sleep." + }, + "sampleTime": { + "$ref": "ObservationSampleTime", + "description": "Required. The time at which respiratory rate was measured." + } + }, + "type": "object" + }, + "RespiratoryRateSleepSummaryStatistics": { + "description": "Respiratory rate statistics for a given sleep stage.", + "id": "RespiratoryRateSleepSummaryStatistics", + "properties": { + "breathsPerMinute": { + "description": "Required. Average breaths per minute.", + "format": "double", + "type": "number" + }, + "signalToNoise": { + "description": "Optional. How trustworthy the data is for the computation.", + "format": "double", + "type": "number" + }, + "standardDeviation": { + "description": "Optional. Standard deviation of the respiratory rate during sleep.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "RestingHeartRatePersonalRangeRollupValue": { + "description": "Represents the rollup value for the daily resting heart rate data type.", + "id": "RestingHeartRatePersonalRangeRollupValue", + "properties": { + "beatsPerMinuteMax": { + "description": "The upper bound of the user's daily resting heart rate personal range.", + "format": "double", + "type": "number" + }, + "beatsPerMinuteMin": { + "description": "The lower bound of the user's daily resting heart rate personal range.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "RollUpDataPointsRequest": { + "description": "Request to roll up data points by physical time intervals.", + "id": "RollUpDataPointsRequest", + "properties": { + "dataSourceFamily": { + "description": "Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly.", + "format": "int32", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token from a previous request, if any. All other request fields need to be the same as in the initial request when the page token is specified.", + "type": "string" + }, + "range": { + "$ref": "Interval", + "description": "Required. Closed-open range of data points that will be rolled up. The maximum range for `calories-in-heart-rate-zone`, `heart-rate`, `active-minutes` and `total-calories` is 14 days. The maximum range for all other data types is 90 days." + }, + "windowSize": { + "description": "Required. The size of the time window to group data points into before applying the aggregation functions.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "RollUpDataPointsResponse": { + "description": "Response containing the list of rolled up data points.", + "id": "RollUpDataPointsResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "rollupDataPoints": { + "description": "Values for each aggregation time window.", + "items": { + "$ref": "RollupDataPoint" + }, + "type": "array" + } + }, + "type": "object" + }, + "RollupDataPoint": { + "description": "Value of a rollup for a single physical time interval (aggregation window)", + "id": "RollupDataPoint", + "properties": { + "activeMinutes": { + "$ref": "ActiveMinutesRollupValue", + "description": "Returned by default when rolling up data points from the `active-minutes` data type, or when requested explicitly using the `active-minutes` rollup type identifier." + }, + "activeZoneMinutes": { + "$ref": "ActiveZoneMinutesRollupValue", + "description": "Returned by default when rolling up data points from the `active-zone-minutes` data type, or when requested explicitly using the `active-zone-minutes` rollup type identifier." + }, + "activityLevel": { + "$ref": "ActivityLevelRollupValue", + "description": "Returned by default when rolling up data points from the `activity-level` data type, or when requested explicitly using the `activity-level` rollup type identifier." + }, + "altitude": { + "$ref": "AltitudeRollupValue", + "description": "Returned by default when rolling up data points from the `altitude` data type, or when requested explicitly using the `altitude` rollup type identifier." + }, + "bodyFat": { + "$ref": "BodyFatRollupValue", + "description": "Returned by default when rolling up data points from the `body-fat` data type, or when requested explicitly using the `body-fat` rollup type identifier." + }, + "caloriesInHeartRateZone": { + "$ref": "CaloriesInHeartRateZoneRollupValue", + "description": "Returned by default when rolling up data points from the `calories-in-heart-rate-zone` data type, or when requested explicitly using the `calories-in-heart-rate-zone` rollup type identifier." + }, + "distance": { + "$ref": "DistanceRollupValue", + "description": "Returned by default when rolling up data points from the `distance` data type, or when requested explicitly using the `distance` rollup type identifier." + }, + "endTime": { + "description": "End time of the window this value aggregates over", + "format": "google-datetime", + "type": "string" + }, + "floors": { + "$ref": "FloorsRollupValue", + "description": "Returned by default when rolling up data points from the `floors` data type, or when requested explicitly using the `floors` rollup type identifier." + }, + "heartRate": { + "$ref": "HeartRateRollupValue", + "description": "Returned by default when rolling up data points from the `heart-rate` data type, or when requested explicitly using the `heart-rate` rollup type identifier." + }, + "hydrationLog": { + "$ref": "HydrationLogRollupValue", + "description": "Returned by default when rolling up data points from the `hydration-log` data type, or when requested explicitly using the `hydration-log` rollup type identifier." + }, + "runVo2Max": { + "$ref": "RunVO2MaxRollupValue", + "description": "Returned by default when rolling up data points from the `run-vo2-max` data type, or when requested explicitly using the `run-vo2-max` rollup type identifier." + }, + "sedentaryPeriod": { + "$ref": "SedentaryPeriodRollupValue", + "description": "Returned by default when rolling up data points from the `sedentary-period` data type, or when requested explicitly using the `sedentary-period` rollup type identifier." + }, + "startTime": { + "description": "Start time of the window this value aggregates over", + "format": "google-datetime", + "type": "string" + }, + "steps": { + "$ref": "StepsRollupValue", + "description": "Returned by default when rolling up data points from the `steps` data type, or when requested explicitly using the `steps` rollup type identifier." + }, + "swimLengthsData": { + "$ref": "SwimLengthsDataRollupValue", + "description": "Returned by default when rolling up data points from the `swim-lengths-data` data type, or when requested explicitly using the `swim-lengths-data` rollup type identifier." + }, + "timeInHeartRateZone": { + "$ref": "TimeInHeartRateZoneRollupValue", + "description": "Returned by default when rolling up data points from the `time-in-heart-rate-zone` data type, or when requested explicitly using the `time-in-heart-rate-zone` rollup type identifier." + }, + "totalCalories": { + "$ref": "TotalCaloriesRollupValue", + "description": "Returned by default when rolling up data points from the `total-calories` data type, or when requested explicitly using the `total-calories` rollup type identifier." + }, + "weight": { + "$ref": "WeightRollupValue", + "description": "Returned by default when rolling up data points from the `weight` data type, or when requested explicitly using the `weight` rollup type identifier." + } + }, + "type": "object" + }, + "RunVO2Max": { + "description": "VO2 max value calculated based on the user's running activity. Value stored in ml/kg/min.", + "id": "RunVO2Max", + "properties": { + "runVo2Max": { + "description": "Required. Run VO2 max value in ml/kg/min.", + "format": "double", + "type": "number" + }, + "sampleTime": { + "$ref": "ObservationSampleTime", + "description": "Required. The time at which the metric was measured." + } + }, + "type": "object" + }, + "RunVO2MaxRollupValue": { + "description": "Represents the result of the rollup of the user's daily heart rate variability personal range.", + "id": "RunVO2MaxRollupValue", + "properties": { + "rateAvg": { + "description": "Average value of run VO2 max in the interval.", + "format": "double", + "type": "number" + }, + "rateMax": { + "description": "Maximum value of run VO2 max in the interval.", + "format": "double", + "type": "number" + }, + "rateMin": { + "description": "Minimum value of run VO2 max in the interval..", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "SedentaryPeriod": { + "description": "SedentaryPeriod SedentaryPeriod data represents the periods of time that the user was sedentary (i.e. not moving while wearing the device).", + "id": "SedentaryPeriod", + "properties": { + "interval": { + "$ref": "ObservationTimeInterval", + "description": "Required. Observed interval." + } + }, + "type": "object" + }, + "SedentaryPeriodRollupValue": { + "description": "Represents the result of the rollup of the user's sedentary periods.", + "id": "SedentaryPeriodRollupValue", + "properties": { + "durationSum": { + "description": "The total time user spent sedentary during the interval.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "SessionTimeInterval": { + "description": "Represents a time interval of session data point, which bundles multiple observed metrics together.", + "id": "SessionTimeInterval", + "properties": { + "civilEndTime": { + "$ref": "CivilDateTime", + "description": "Output only. Session end time in civil time in the timezone the subject is in at the end of the session.", + "readOnly": true + }, + "civilStartTime": { + "$ref": "CivilDateTime", + "description": "Output only. Session start time in civil time in the timezone the subject is in at the start of the session.", + "readOnly": true + }, + "endTime": { + "description": "Required. The end time of the observed session.", + "format": "google-datetime", + "type": "string" + }, + "endUtcOffset": { + "description": "Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).", + "format": "google-duration", + "type": "string" + }, + "startTime": { + "description": "Required. The start time of the observed session.", + "format": "google-datetime", + "type": "string" + }, + "startUtcOffset": { + "description": "Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "Settings": { + "description": "Settings details.", + "id": "Settings", + "properties": { + "autoStrideEnabled": { + "description": "Optional. True if the user's stride length is determined automatically. Updates to this field are currently not supported.", + "type": "boolean" + }, + "distanceUnit": { + "description": "Optional. The measurement unit defined in the user's account settings. Updates to this field are currently not supported.", + "enum": [ + "DISTANCE_UNIT_UNSPECIFIED", + "DISTANCE_UNIT_MILES", + "DISTANCE_UNIT_KILOMETERS" + ], + "enumDescriptions": [ + "Distance unit is not specified.", + "Distance unit is miles.", + "Distance unit is kilometers." + ], + "type": "string" + }, + "glucoseUnit": { + "description": "Optional. The measurement unit defined in the user's account settings.", + "enum": [ + "GLUCOSE_UNIT_UNSPECIFIED", + "GLUCOSE_UNIT_MG_DL", + "GLUCOSE_UNIT_MMOL_L" + ], + "enumDescriptions": [ + "Glucose unit is not specified.", + "Glucose unit is mg/dL.", + "Glucose unit is mmol/l." + ], + "type": "string" + }, + "heightUnit": { + "description": "Optional. The measurement unit defined in the user's account settings.", + "enum": [ + "HEIGHT_UNIT_UNSPECIFIED", + "HEIGHT_UNIT_INCHES", + "HEIGHT_UNIT_CENTIMETERS" + ], + "enumDescriptions": [ + "Height unit is not specified.", + "Height unit is inches.", + "Height unit is cm." + ], + "type": "string" + }, + "languageLocale": { + "description": "Optional. The locale defined in the user's account settings. Updates to this field are currently not supported.", + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of this Settings resource. Format: `users/{user}/settings` Example: `users/1234567890/settings` or `users/me/settings` The {user} ID is a system-generated Google Health API user ID, a string of 1-63 characters consisting of lowercase and uppercase letters, numbers, and hyphens. The literal `me` can also be used to refer to the authenticated user.", + "type": "string" + }, + "strideLengthRunningType": { + "description": "Optional. The stride length type defined in the user's account settings for running. Updates to this field are currently not supported.", + "enum": [ + "STRIDE_LENGTH_TYPE_UNSPECIFIED", + "STRIDE_LENGTH_TYPE_DEFAULT", + "STRIDE_LENGTH_TYPE_MANUAL", + "STRIDE_LENGTH_TYPE_AUTO" + ], + "enumDescriptions": [ + "Stride length type is not specified.", + "Stride length type is computed based on the user's gender and height.", + "Stride length type is manually set by the user.", + "Stride length type is determined automatically." + ], + "type": "string" + }, + "strideLengthWalkingType": { + "description": "Optional. The stride length type defined in the user's account settings for walking. Updates to this field are currently not supported.", + "enum": [ + "STRIDE_LENGTH_TYPE_UNSPECIFIED", + "STRIDE_LENGTH_TYPE_DEFAULT", + "STRIDE_LENGTH_TYPE_MANUAL", + "STRIDE_LENGTH_TYPE_AUTO" + ], + "enumDescriptions": [ + "Stride length type is not specified.", + "Stride length type is computed based on the user's gender and height.", + "Stride length type is manually set by the user.", + "Stride length type is determined automatically." + ], + "type": "string" + }, + "swimUnit": { + "description": "Optional. The measurement unit defined in the user's account settings.", + "enum": [ + "SWIM_UNIT_UNSPECIFIED", + "SWIM_UNIT_METERS", + "SWIM_UNIT_YARDS" + ], + "enumDescriptions": [ + "Swim unit is not specified.", + "Swim unit is meters.", + "Swim unit is yards." + ], + "type": "string" + }, + "temperatureUnit": { + "description": "Optional. The measurement unit defined in the user's account settings.", + "enum": [ + "TEMPERATURE_UNIT_UNSPECIFIED", + "TEMPERATURE_UNIT_CELSIUS", + "TEMPERATURE_UNIT_FAHRENHEIT" + ], + "enumDescriptions": [ + "Temperature unit is not specified.", + "Temperature unit is Celsius.", + "Temperature unit is Fahrenheit." + ], + "type": "string" + }, + "timeZone": { + "description": "Optional. The timezone defined in the user's account settings. This follows the IANA [Time Zone Database](https://www.iana.org/time-zones). Updates to this field are currently not supported.", + "type": "string" + }, + "utcOffset": { + "description": "Optional. The user's timezone offset relative to UTC. Updates to this field are currently not supported.", + "format": "google-duration", + "type": "string" + }, + "waterUnit": { + "description": "Optional. The measurement unit defined in the user's account settings.", + "enum": [ + "WATER_UNIT_UNSPECIFIED", + "WATER_UNIT_ML", + "WATER_UNIT_FL_OZ", + "WATER_UNIT_CUP" + ], + "enumDescriptions": [ + "Water unit is not specified.", + "Water unit is milliliters.", + "Water unit is fluid ounces.", + "Water unit is cups." + ], + "type": "string" + }, + "weightUnit": { + "description": "Optional. The measurement unit defined in the user's account settings.", + "enum": [ + "WEIGHT_UNIT_UNSPECIFIED", + "WEIGHT_UNIT_POUNDS", + "WEIGHT_UNIT_STONE", + "WEIGHT_UNIT_KILOGRAMS" + ], + "enumDescriptions": [ + "Weight unit is not specified.", + "Weight unit is pounds.", + "Weight unit is stones.", + "Weight unit is kilograms." + ], + "type": "string" + } + }, + "type": "object" + }, + "Sleep": { + "description": "A sleep session possibly including stages.", + "id": "Sleep", + "properties": { + "createTime": { + "description": "Output only. Creation time of this sleep observation.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "interval": { + "$ref": "SessionTimeInterval", + "description": "Required. Observed sleep interval." + }, + "metadata": { + "$ref": "SleepMetadata", + "description": "Optional. Sleep metadata: processing, main, manually edited, stages status." + }, + "outOfBedSegments": { + "description": "Optional. “Out of bed” segments that can overlap with sleep stages.", + "items": { + "$ref": "OutOfBedSegment" + }, + "type": "array" + }, + "stages": { + "description": "Optional. List of non-overlapping contiguous sleep stage segments that cover the sleep period.", + "items": { + "$ref": "SleepStage" + }, + "type": "array" + }, + "summary": { + "$ref": "SleepSummary", + "description": "Output only. Sleep summary: metrics and stages summary.", + "readOnly": true + }, + "type": { + "description": "Optional. SleepType: classic or stages.", + "enum": [ + "SLEEP_TYPE_UNSPECIFIED", + "CLASSIC", + "STAGES" + ], + "enumDescriptions": [ + "Sleep type is unspecified.", + "Classic sleep is a sleep with 3 stages types: AWAKE, RESTLESS and ASLEEP.", + "On top of \"classic\" sleep stages an additional processing pass can calculate stages more precisely, overwriting the prior stages with AWAKE, LIGHT, REM and DEEP." + ], + "type": "string" + }, + "updateTime": { + "description": "Output only. Last update time of this sleep observation.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "SleepMetadata": { + "description": "Additional information about how the sleep was processed.", + "id": "SleepMetadata", + "properties": { + "externalId": { + "description": "Optional. Sleep identifier relevant in the context of the data source.", + "type": "string" + }, + "manuallyEdited": { + "description": "Output only. Some sleeps autodetected by algorithms can be manually edited by users.", + "readOnly": true, + "type": "boolean" + }, + "nap": { + "description": "Output only. Naps are sleeps without stages and relatively short durations.", + "readOnly": true, + "type": "boolean" + }, + "processed": { + "description": "Output only. Sleep and sleep stages algorithms finished processing.", + "readOnly": true, + "type": "boolean" + }, + "stagesStatus": { + "description": "Output only. Sleep stages algorithm processing status.", + "enum": [ + "STAGES_STATE_UNSPECIFIED", + "REJECTED_COVERAGE", + "REJECTED_MAX_GAP", + "REJECTED_START_GAP", + "REJECTED_END_GAP", + "REJECTED_NAP", + "REJECTED_SERVER", + "TIMEOUT", + "SUCCEEDED", + "PROCESSING_INTERNAL_ERROR" + ], + "enumDescriptions": [ + "Output only. Sleep stages status is unspecified.", + "Output only. Sleep stages cannot be computed due to low RR coverage.", + "Output only. Sleep stages cannot be computed due to the large middle gap (2h).", + "Output only. Sleep stages cannot be computed due to the large start gap (1h).", + "Output only. Sleep stages cannot be computed due to the large end gap (1h).", + "Output only. Sleep stages cannot be computed because the sleep log is a nap (has < 3h duration).", + "Output only. Sleep stages cannot be computed because input data is not available (PPGV2, wake magnitude, etc).", + "Output only. Sleep stages cannot be computed due to server timeout.", + "Output only. Sleep stages successfully computed.", + "Output only. Sleep stages cannot be computed due to server internal error." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "SleepStage": { + "description": "Sleep stage segment.", + "id": "SleepStage", + "properties": { + "createTime": { + "description": "Output only. Creation time of this sleep stages segment.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Required. Sleep stage end time.", + "format": "google-datetime", + "type": "string" + }, + "endUtcOffset": { + "description": "Required. The offset of the user's local time at the end of the sleep stage relative to the Coordinated Universal Time (UTC).", + "format": "google-duration", + "type": "string" + }, + "startTime": { + "description": "Required. Sleep stage start time.", + "format": "google-datetime", + "type": "string" + }, + "startUtcOffset": { + "description": "Required. The offset of the user's local time at the start of the sleep stage relative to the Coordinated Universal Time (UTC).", + "format": "google-duration", + "type": "string" + }, + "type": { + "description": "Required. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.", + "enum": [ + "SLEEP_STAGE_TYPE_UNSPECIFIED", + "AWAKE", + "LIGHT", + "DEEP", + "REM", + "ASLEEP", + "RESTLESS" + ], + "enumDescriptions": [ + "The default unset value.", + "Sleep stage AWAKE.", + "Sleep stage LIGHT.", + "Sleep stage DEEP.", + "Sleep stage REM.", + "Sleep stage ASLEEP.", + "Sleep stage RESTLESS." + ], + "type": "string" + }, + "updateTime": { + "description": "Output only. Last update time of this sleep stages segment.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "SleepSummary": { + "description": " Sleep summary: metrics and stages summary.", + "id": "SleepSummary", + "properties": { + "minutesAfterWakeUp": { + "description": "Output only. Minutes after wake up calculated by restlessness algorithm.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "minutesAsleep": { + "description": "Output only. Total number of minutes asleep. For classic sleep it is the sum of ASLEEP stages (excluding AWAKE and RESTLESS). For \"stages\" sleep it is the sum of LIGHT, REM and DEEP stages (excluding AWAKE).", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "minutesAwake": { + "description": "Output only. Total number of minutes awake. It is a sum of all AWAKE stages.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "minutesInSleepPeriod": { + "description": "Output only. Delta between wake time and bedtime. It is the sum of all stages.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "minutesToFallAsleep": { + "description": "Output only. Minutes to fall asleep calculated by restlessness algorithm.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "stagesSummary": { + "description": "Output only. List of summaries (total duration and segment count) per each sleep stage type.", + "items": { + "$ref": "StageSummary" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "SplitSummary": { + "description": "Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories.", + "id": "SplitSummary", + "properties": { + "activeDuration": { + "description": "Output only. Lap time excluding the pauses.", + "format": "google-duration", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Required. Lap end time", + "format": "google-datetime", + "type": "string" + }, + "endUtcOffset": { + "description": "Required. Lap end time offset from UTC", + "format": "google-duration", + "type": "string" + }, + "metricsSummary": { + "$ref": "MetricsSummary", + "description": "Required. Summary metrics for this split." + }, + "splitType": { + "description": "Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic.", + "enum": [ + "SPLIT_TYPE_UNSPECIFIED", + "MANUAL", + "DURATION", + "DISTANCE", + "CALORIES" + ], + "enumDescriptions": [ + "Split type is unspecified.", + "Manual split.", + "Split by duration.", + "Split by distance.", + "Split by calories." + ], + "type": "string" + }, + "startTime": { + "description": "Required. Lap start time", + "format": "google-datetime", + "type": "string" + }, + "startUtcOffset": { + "description": "Required. Lap start time offset from UTC", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "StageSummary": { + "description": "Total duration and segment count for a stage.", + "id": "StageSummary", + "properties": { + "count": { + "description": "Output only. Number of sleep stages segments.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "minutes": { + "description": "Output only. Total duration in minutes of a sleep stage.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Output only. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.", + "enum": [ + "SLEEP_STAGE_TYPE_UNSPECIFIED", + "AWAKE", + "LIGHT", + "DEEP", + "REM", + "ASLEEP", + "RESTLESS" + ], + "enumDescriptions": [ + "The default unset value.", + "Sleep stage AWAKE.", + "Sleep stage LIGHT.", + "Sleep stage DEEP.", + "Sleep stage REM.", + "Sleep stage ASLEEP.", + "Sleep stage RESTLESS." + ], + "readOnly": true, + "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" + }, + "Steps": { + "description": "Step count over the time interval.", + "id": "Steps", + "properties": { + "count": { + "description": "Required. Number of steps in the recorded interval.", + "format": "int64", + "type": "string" + }, + "interval": { + "$ref": "ObservationTimeInterval", + "description": "Required. Observed interval." + } + }, + "type": "object" + }, + "StepsRollupValue": { + "description": "Represents the result of the rollup of the steps data type.", + "id": "StepsRollupValue", + "properties": { + "countSum": { + "description": "Total number of steps in the interval.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "Subscriber": { + "description": "-- Resource Messages -- A subscriber receives notifications from Google Health API.", + "id": "Subscriber", + "properties": { + "createTime": { + "description": "Output only. The time at which the subscriber was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endpointAuthorization": { + "$ref": "EndpointAuthorization", + "description": "Required. Authorization mechanism for a subscriber endpoint. This is required to ensure the endpoint can be verified." + }, + "endpointUri": { + "description": "Required. The full HTTPS URI where update notifications will be sent. The URI must be a valid URL and use HTTPS as the scheme. This endpoint will be verified during CreateSubscriber and UpdateSubscriber calls. See RPC documentation for verification details.", + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the Subscriber. Format: projects/{project}/subscribers/{subscriber} The {project} ID is a Google Cloud Project ID or Project Number. The {subscriber} ID is user-settable (4-36 characters, matching /[a-z]([a-z0-9-]{2,34}[a-z0-9])/) if provided during creation, or system-generated otherwise (e.g., a UUID). Example (User-settable subscriber ID): projects/my-project/subscribers/my-sub-123 Example (System-generated subscriber ID): projects/my-project/subscribers/a1b2c3d4-e5f6-7890-1234-567890abcdef", + "type": "string" + }, + "state": { + "description": "Output only. The state of the subscriber.", + "enum": [ + "STATE_UNSPECIFIED", + "UNVERIFIED", + "ACTIVE", + "INACTIVE" + ], + "enumDescriptions": [ + "Represents an unspecified subscriber state.", + "Represents an unverified subscriber. This is the initial state of the subscriber when it is created. The backend will verify the subscriber's endpoint_uri.", + "Represents an active subscriber. The endpoint has been verified.", + "Represents an inactive subscriber." + ], + "readOnly": true, + "type": "string" + }, + "subscriberConfigs": { + "description": "Optional. Configuration for the subscriber.", + "items": { + "$ref": "SubscriberConfig" + }, + "type": "array" + }, + "updateTime": { + "description": "Output only. The time at which the subscriber was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "SubscriberConfig": { + "description": "Configuration for a subscriber. A notification is sent to a subscription ONLY if the subscriber has a config for the data type.", + "id": "SubscriberConfig", + "properties": { + "dataTypes": { + "description": "Required. Supported data types are: \"altitude\", \"distance\", \"floors\", \"sleep\", \"steps\", \"weight\". Values should be in kebab-case.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subscriptionCreatePolicy": { + "description": "Required. Policy for subscription creation.", + "enum": [ + "SUBSCRIPTION_CREATE_POLICY_UNSPECIFIED", + "AUTOMATIC", + "MANUAL" + ], + "enumDescriptions": [ + "Represents an unspecified policy.", + "When using `AUTOMATIC`, individual subscriptions are not created or stored. Instead, eligibility for notifications is computed dynamically. When a data update occurs for a given data type, notifications are sent to all subscribers with an `AUTOMATIC` policy for that data type, provided the user has granted the necessary consents. This means you do not need to call `CreateSubscription` for each user; notifications are managed automatically based on user consents. As `Subscription` resources are not stored, they cannot be retrieved or managed through `GetSubscription`, `ListSubscriptions`, `UpdateSubscription`, or `DeleteSubscription`.", + "Requires subscriptions to be created manually for new users. The developer needs to call CreateSubscription for new users." + ], + "type": "string" + } + }, + "type": "object" + }, + "SwimLengthsData": { + "description": "Swim lengths data over the time interval.", + "id": "SwimLengthsData", + "properties": { + "interval": { + "$ref": "ObservationTimeInterval", + "description": "Required. Observed interval." + }, + "strokeCount": { + "description": "Required. Number of strokes in the lap.", + "format": "int64", + "type": "string" + }, + "swimStrokeType": { + "description": "Required. Swim stroke type.", + "enum": [ + "SWIM_STROKE_TYPE_UNSPECIFIED", + "FREESTYLE", + "BACKSTROKE", + "BREASTSTROKE", + "BUTTERFLY" + ], + "enumDescriptions": [ + "Swim stroke type is unspecified.", + "Freestyle swim stroke type.", + "Backstroke swim stroke type.", + "Breaststroke swim stroke type.", + "Butterfly swim stroke type." + ], + "type": "string" + } + }, + "type": "object" + }, + "SwimLengthsDataRollupValue": { + "description": "Represents the result of the rollup of the swim lengths data type.", + "id": "SwimLengthsDataRollupValue", + "properties": { + "strokeCountSum": { + "description": "Total number of swim strokes in the interval.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "TimeInHeartRateZone": { + "description": "Time in heart rate zone record. It's an interval spent in specific heart rate zone.", + "id": "TimeInHeartRateZone", + "properties": { + "heartRateZoneType": { + "description": "Required. Heart rate zone type.", + "enum": [ + "HEART_RATE_ZONE_TYPE_UNSPECIFIED", + "LIGHT", + "MODERATE", + "VIGOROUS", + "PEAK" + ], + "enumDescriptions": [ + "Unspecified heart rate zone.", + "The light heart rate zone.", + "The moderate heart rate zone.", + "The vigorous heart rate zone.", + "The peak heart rate zone." + ], + "type": "string" + }, + "interval": { + "$ref": "ObservationTimeInterval", + "description": "Required. Observed interval." + } + }, + "type": "object" + }, + "TimeInHeartRateZoneRollupValue": { + "description": "Represents the result of the rollup of the time in heart rate zone data type.", + "id": "TimeInHeartRateZoneRollupValue", + "properties": { + "timeInHeartRateZones": { + "description": "List of time spent in each heart rate zone.", + "items": { + "$ref": "TimeInHeartRateZoneValue" + }, + "type": "array" + } + }, + "type": "object" + }, + "TimeInHeartRateZoneValue": { + "description": "Represents the total time spent in a specific heart rate zone.", + "id": "TimeInHeartRateZoneValue", + "properties": { + "duration": { + "description": "The total time spent in the specified heart rate zone.", + "format": "google-duration", + "type": "string" + }, + "heartRateZone": { + "description": "The heart rate zone.", + "enum": [ + "HEART_RATE_ZONE_TYPE_UNSPECIFIED", + "LIGHT", + "MODERATE", + "VIGOROUS", + "PEAK" + ], + "enumDescriptions": [ + "Unspecified heart rate zone.", + "The light heart rate zone.", + "The moderate heart rate zone.", + "The vigorous heart rate zone.", + "The peak heart rate zone." + ], + "type": "string" + } + }, + "type": "object" + }, + "TimeInHeartRateZones": { + "description": "Time spent in each heart rate zone.", + "id": "TimeInHeartRateZones", + "properties": { + "lightTime": { + "description": "Optional. Time spent in light heart rate zone.", + "format": "google-duration", + "type": "string" + }, + "moderateTime": { + "description": "Optional. Time spent in moderate heart rate zone.", + "format": "google-duration", + "type": "string" + }, + "peakTime": { + "description": "Optional. Time spent in peak heart rate zone.", + "format": "google-duration", + "type": "string" + }, + "vigorousTime": { + "description": "Optional. Time spent in vigorous heart rate zone.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "TimeOfDay": { + "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": "TimeOfDay", + "properties": { + "hours": { + "description": "Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal 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 an hour. Must be greater than or equal to 0 and less than or equal to 59.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "TimeZone": { + "description": "Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones).", + "id": "TimeZone", + "properties": { + "id": { + "description": "IANA Time Zone Database time zone. For example \"America/New_York\".", + "type": "string" + }, + "version": { + "description": "Optional. IANA Time Zone Database version number. For example \"2019a\".", + "type": "string" + } + }, + "type": "object" + }, + "TotalCaloriesRollupValue": { + "description": "Represents the result of the rollup of the user's total calories.", + "id": "TotalCaloriesRollupValue", + "properties": { + "kcalSum": { + "description": "Sum of the total calories in kilocalories.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "VO2Max": { + "description": "VO2 max measurement.", + "id": "VO2Max", + "properties": { + "measurementMethod": { + "description": "Optional. The method used to measure the VO2 max value.", + "enum": [ + "MEASUREMENT_METHOD_UNSPECIFIED", + "FITBIT_RUN", + "GOOGLE_DEMOGRAPHIC", + "COOPER_TEST", + "HEART_RATE_RATIO", + "METABOLIC_CART", + "MULTISTAGE_FITNESS_TEST", + "ROCKPORT_FITNESS_TEST", + "MAX_EXERCISE", + "PREDICTION_SUB_MAX_EXERCISE", + "PREDICTION_NON_EXERCISE", + "OTHER" + ], + "enumDescriptions": [ + "Unspecified measurement method.", + "Fitbit specific, measures VO2 max rate during a run.", + "Google specific, measures VO2 max rate for a user based on their demographic data.", + "Run as far as possible for 12 minutes. Distance correlated with age and gender translates to a VO2 max value.", + "Maximum heart rate divided by the resting heart rate, with a multiplier applied. Does not require any exercise.", + "Measured by a medical device called metabolic cart.", + "Continuous 20m back-and-forth runs with increasing difficulty, until exhaustion.", + "Measured using walking exercise.", + "Healthkit specific, measures VO2 max rate by monitoring exercise to the user’s physical limit. Similar to COOPER_TEST or MULTISTAGE_FITNESS_TEST.", + "Healthkit specific, estimates VO2 max rate based on low-intensity exercise. Similar to ROCKPORT_FITNESS_TEST.", + "Healthkit specific, estimates VO2 max rate without any exercise. Similar to HEART_RATE_RATIO.", + "Use when the method is not covered in this enum." + ], + "type": "string" + }, + "sampleTime": { + "$ref": "ObservationSampleTime", + "description": "Required. The time at which VO2 max was measured." + }, + "vo2Max": { + "description": "Required. VO2 max value measured as in ml consumed oxygen / kg of body weight / min.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "VolumeQuantity": { + "description": "Represents the volume quantity.", + "id": "VolumeQuantity", + "properties": { + "milliliters": { + "description": "Required. Value representing the volume in milliliters.", + "format": "double", + "type": "number" + }, + "userProvidedUnit": { + "description": "Optional. Value representing the user provided unit.", + "enum": [ + "VOLUME_UNIT_UNSPECIFIED", + "CUP_IMPERIAL", + "CUP_US", + "FLUID_OUNCE_IMPERIAL", + "FLUID_OUNCE_US", + "LITER", + "MILLILITER", + "PINT_IMPERIAL", + "PINT_US" + ], + "enumDescriptions": [ + "Unspecified volume unit.", + "Cup (imperial)", + "Cup (US)", + "Fluid ounce (imperial)", + "Fluid ounce (US)", + "Liter", + "Milliliter", + "Pint (imperial)", + "Pint (US)" + ], + "type": "string" + } + }, + "type": "object" + }, + "VolumeQuantityRollup": { + "description": "Rollup for volume quantity.", + "id": "VolumeQuantityRollup", + "properties": { + "millilitersSum": { + "description": "Required. The sum of volume in milliliters.", + "format": "double", + "type": "number" + }, + "userProvidedUnitLast": { + "description": "Optional. The user provided unit on the last element.", + "enum": [ + "VOLUME_UNIT_UNSPECIFIED", + "CUP_IMPERIAL", + "CUP_US", + "FLUID_OUNCE_IMPERIAL", + "FLUID_OUNCE_US", + "LITER", + "MILLILITER", + "PINT_IMPERIAL", + "PINT_US" + ], + "enumDescriptions": [ + "Unspecified volume unit.", + "Cup (imperial)", + "Cup (US)", + "Fluid ounce (imperial)", + "Fluid ounce (US)", + "Liter", + "Milliliter", + "Pint (imperial)", + "Pint (US)" + ], + "type": "string" + } + }, + "type": "object" + }, + "Weight": { + "description": "Body weight measurement.", + "id": "Weight", + "properties": { + "notes": { + "description": "Optional. Standard free-form notes captured at manual logging.", + "type": "string" + }, + "sampleTime": { + "$ref": "ObservationSampleTime", + "description": "Required. The time at which the weight was measured" + }, + "weightGrams": { + "description": "Required. Weight of a user in grams.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "WeightRollupValue": { + "description": "Represents the result of the rollup of the weight data type.", + "id": "WeightRollupValue", + "properties": { + "weightGramsAvg": { + "description": "Average weight in grams.", + "format": "double", + "type": "number" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Google Health API", + "version": "v4", + "version_module": true +} \ No newline at end of file diff --git a/discovery/healthcare-v1.json b/discovery/healthcare-v1.json index 08f853c6ed6..0836c5ba81b 100644 --- a/discovery/healthcare-v1.json +++ b/discovery/healthcare-v1.json @@ -139,7 +139,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "healthcare.projects.locations.list", @@ -5171,7 +5171,7 @@ } } }, - "revision": "20260128", + "revision": "20260331", "rootUrl": "https://healthcare.googleapis.com/", "schemas": { "AccessDeterminationLogConfig": { diff --git a/discovery/healthcare-v1beta1.json b/discovery/healthcare-v1beta1.json index a1a70ecef5d..ddebd7ffffa 100644 --- a/discovery/healthcare-v1beta1.json +++ b/discovery/healthcare-v1beta1.json @@ -139,7 +139,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "healthcare.projects.locations.list", @@ -5718,7 +5718,7 @@ } } }, - "revision": "20260128", + "revision": "20260331", "rootUrl": "https://healthcare.googleapis.com/", "schemas": { "AccessDeterminationLogConfig": { diff --git a/discovery/homegraph-v1.json b/discovery/homegraph-v1.json index f5bbd1705ee..aee9d62d941 100644 --- a/discovery/homegraph-v1.json +++ b/discovery/homegraph-v1.json @@ -216,7 +216,7 @@ } } }, - "revision": "20250716", + "revision": "20260414", "rootUrl": "https://homegraph.googleapis.com/", "schemas": { "AgentDeviceId": { @@ -245,6 +245,24 @@ }, "type": "object" }, + "ComponentTraitUpdates": { + "description": "Contains the set of updates for a component.", + "id": "ComponentTraitUpdates", + "properties": { + "componentId": { + "description": "Required. ID of the component from the device provider.", + "type": "string" + }, + "traitData": { + "description": "Required. The updated trait data for the component.", + "items": { + "$ref": "TraitData" + }, + "type": "array" + } + }, + "type": "object" + }, "Device": { "description": "Third-party device definition.", "id": "Device", @@ -368,6 +386,84 @@ "properties": {}, "type": "object" }, + "EventData": { + "description": "Contains the details for a single event.", + "id": "EventData", + "properties": { + "event": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Required. The actual event payload.", + "type": "object" + }, + "eventId": { + "description": "Required. The unique event ID from the device provider.", + "type": "string" + }, + "eventTime": { + "description": "Required. The timestamp of the event.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Events": { + "description": "Contains a set of events for a specific component.", + "id": "Events", + "properties": { + "componentId": { + "description": "Optional. The ID of the provider component if the events are associated with a specific component. Optional for WHDM events, required for UDDM events.", + "type": "string" + }, + "events": { + "description": "Required. List of events associated with the component.", + "items": { + "$ref": "EventData" + }, + "type": "array" + } + }, + "type": "object" + }, + "HomeEvents": { + "description": "Contains the set of events for an item.", + "id": "HomeEvents", + "properties": { + "deviceId": { + "description": "Required. / Unique identifier for the device.", + "type": "string" + }, + "events": { + "description": "Required. List of events for the item.", + "items": { + "$ref": "Events" + }, + "type": "array" + } + }, + "type": "object" + }, + "HomeTraitUpdates": { + "description": "Contains the set of updates for a device.", + "id": "HomeTraitUpdates", + "properties": { + "components": { + "description": "Required. Trait updates for each component.", + "items": { + "$ref": "ComponentTraitUpdates" + }, + "type": "array" + }, + "deviceId": { + "description": "Required. Unique identifier for the device.", + "type": "string" + } + }, + "type": "object" + }, "QueryRequest": { "description": "Request type for the [`Query`](#google.home.graph.v1.HomeGraphApiService.Query) call.", "id": "QueryRequest", @@ -452,6 +548,20 @@ "description": "The states and notifications specific to a device.", "id": "ReportStateAndNotificationDevice", "properties": { + "homeEvents": { + "description": "Optional. UDDM/WHDM trait events", + "items": { + "$ref": "HomeEvents" + }, + "type": "array" + }, + "homeTraits": { + "description": "Optional. UDDM/WHDM trait updates.", + "items": { + "$ref": "HomeTraitUpdates" + }, + "type": "array" + }, "notifications": { "additionalProperties": { "description": "Properties of the object.", @@ -589,6 +699,21 @@ } }, "type": "object" + }, + "TraitData": { + "description": "Contains the trait payload for a single trait.", + "id": "TraitData", + "properties": { + "trait": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Optional. The Home API trait payload.", + "type": "object" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/discovery/hypercomputecluster-v1.json b/discovery/hypercomputecluster-v1.json index 5d8dbaa2602..712c9824da8 100644 --- a/discovery/hypercomputecluster-v1.json +++ b/discovery/hypercomputecluster-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "hypercomputecluster.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -498,7 +498,7 @@ } } }, - "revision": "20260204", + "revision": "20260422", "rootUrl": "https://hypercomputecluster.googleapis.com/", "schemas": { "BootDisk": { @@ -559,7 +559,7 @@ "type": "string" }, "description": { - "description": "Optional. User-provided description of the cluster.", + "description": "Optional. User-provided description of the cluster. Maximum of 2048 characters.", "type": "string" }, "labels": { @@ -577,7 +577,7 @@ "additionalProperties": { "$ref": "NetworkResource" }, - "description": "Optional. Network resources available to the cluster. Must contain at most one value. Keys specify the ID of the network resource by which it can be referenced elsewhere, and must conform to [RFC-1034](https://datatracker.ietf.org/doc/html/rfc1034) (lower-case, alphanumeric, and at most 63 characters).", + "description": "Optional. Network resources available to the cluster. Must contain exactly one value. Keys specify the ID of the network resource by which it can be referenced elsewhere, and must conform to [RFC-1034](https://datatracker.ietf.org/doc/html/rfc1034) (lower-case, alphanumeric, and at most 63 characters).", "type": "object" }, "orchestrator": { @@ -1120,7 +1120,8 @@ }, "network": { "$ref": "NetworkReference", - "description": "Reference to a network in Google Compute Engine." + "description": "Output only. Reference to a network in Google Compute Engine.", + "readOnly": true } }, "type": "object" @@ -1267,6 +1268,11 @@ "lustre": { "description": "Required. Immutable. Name of the Managed Lustre instance to create, in the format `projects/{project}/locations/{location}/instances/{instance}`", "type": "string" + }, + "perUnitStorageThroughput": { + "description": "Optional. Immutable. Throughput of the instance in MB/s/TiB. Valid values are 125, 250, 500, 1000. See [Performance tiers and maximum storage capacities](https://cloud.google.com/managed-lustre/docs/create-instance#performance-tiers) for more information.", + "format": "int64", + "type": "string" } }, "type": "object" @@ -1648,7 +1654,7 @@ "id": "SlurmNodeSet", "properties": { "computeId": { - "description": "Optional. ID of the compute resource on which this nodeset will run. Must match a key in the cluster's compute_resources.", + "description": "Required. ID of the compute resource on which this nodeset will run. Must match a key in the cluster's compute_resources.", "type": "string" }, "computeInstance": { @@ -1788,7 +1794,8 @@ "properties": { "bucket": { "$ref": "BucketReference", - "description": "Reference to a Google Cloud Storage bucket. Populated if and only if the storage resource was configured to use Google Cloud Storage." + "description": "Output only. Reference to a Google Cloud Storage bucket. Populated if and only if the storage resource was configured to use Google Cloud Storage.", + "readOnly": true }, "config": { "$ref": "StorageResourceConfig", @@ -1796,11 +1803,13 @@ }, "filestore": { "$ref": "FilestoreReference", - "description": "Reference to a Filestore instance. Populated if and only if the storage resource was configured to use Filestore." + "description": "Output only. Reference to a Filestore instance. Populated if and only if the storage resource was configured to use Filestore.", + "readOnly": true }, "lustre": { "$ref": "LustreReference", - "description": "Reference to a Managed Lustre instance. Populated if and only if the storage resource was configured to use Managed Lustre." + "description": "Output only. Reference to a Managed Lustre instance. Populated if and only if the storage resource was configured to use Managed Lustre.", + "readOnly": true } }, "type": "object" diff --git a/discovery/iam-v1.json b/discovery/iam-v1.json index 3f434484e0f..bf54817a7d5 100644 --- a/discovery/iam-v1.json +++ b/discovery/iam-v1.json @@ -1215,34 +1215,6 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - }, - "undelete": { - "description": "Gemini Enterprise only. Undeletes a WorkforcePoolProviderScimToken,that was deleted fewer than 30 days ago.", - "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants/{scimTenantsId}/tokens/{tokensId}:undelete", - "httpMethod": "POST", - "id": "iam.locations.workforcePools.providers.scimTenants.tokens.undelete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. Gemini Enterprise only. The name of the SCIM token to undelete. Format: `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}/tokens/{token}`", - "location": "path", - "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+/tokens/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+name}:undelete", - "request": { - "$ref": "UndeleteWorkforcePoolProviderScimTokenRequest" - }, - "response": { - "$ref": "WorkforcePoolProviderScimToken" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] } } } @@ -1916,6 +1888,34 @@ }, "workloadIdentityPools": { "methods": { + "addAttestationRule": { + "description": "Add an AttestationRule on a WorkloadIdentityPoolManagedIdentity. The total attestation rules after addition must not exceed 50.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}:addAttestationRule", + "httpMethod": "POST", + "id": "iam.projects.locations.workloadIdentityPools.addAttestationRule", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "Required. The resource name of the managed identity or namespace resource to add an attestation rule to.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:addAttestationRule", + "request": { + "$ref": "AddAttestationRuleRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "create": { "description": "Creates a new WorkloadIdentityPool. You cannot reuse the name of a deleted pool until 30 days after deletion.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools", @@ -2068,6 +2068,47 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "listAttestationRules": { + "description": "List all AttestationRule on a WorkloadIdentityPoolManagedIdentity.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}:listAttestationRules", + "httpMethod": "GET", + "id": "iam.projects.locations.workloadIdentityPools.listAttestationRules", + "parameterOrder": [ + "resource" + ], + "parameters": { + "filter": { + "description": "Optional. A query filter. Supports the following function: * `container_ids()`: Returns only the AttestationRules under the specific container ids. The function expects a comma-delimited list with only project numbers and must use the format `projects/`. For example: `container_ids(projects/, projects/,...)`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of AttestationRules to return. If unspecified, at most 50 AttestationRules are returned. The maximum value is 100; values above 100 are truncated to 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListWorkloadIdentityPoolProviderKeys` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "resource": { + "description": "Required. The resource name of the managed identity or namespace resource to list attestation rules of.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:listAttestationRules", + "response": { + "$ref": "ListAttestationRulesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "patch": { "description": "Updates an existing WorkloadIdentityPool.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}", @@ -2102,6 +2143,62 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "removeAttestationRule": { + "description": "Remove an AttestationRule on a WorkloadIdentityPoolManagedIdentity.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}:removeAttestationRule", + "httpMethod": "POST", + "id": "iam.projects.locations.workloadIdentityPools.removeAttestationRule", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "Required. The resource name of the managed identity or namespace resource to remove an attestation rule from.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:removeAttestationRule", + "request": { + "$ref": "RemoveAttestationRuleRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setAttestationRules": { + "description": "Set all AttestationRule on a WorkloadIdentityPoolManagedIdentity. A maximum of 50 AttestationRules can be set.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}:setAttestationRules", + "httpMethod": "POST", + "id": "iam.projects.locations.workloadIdentityPools.setAttestationRules", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "Required. The resource name of the managed identity or namespace resource to add an attestation rule to.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setAttestationRules", + "request": { + "$ref": "SetAttestationRulesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "setIamPolicy": { "description": "Sets the IAM policies on a WorkloadIdentityPool", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}:setIamPolicy", @@ -4160,7 +4257,7 @@ } } }, - "revision": "20260213", + "revision": "20260320", "rootUrl": "https://iam.googleapis.com/", "schemas": { "AccessRestrictions": { @@ -4546,12 +4643,14 @@ "enum": [ "ATTRIBUTES_TYPE_UNSPECIFIED", "AZURE_AD_GROUPS_MAIL", - "AZURE_AD_GROUPS_ID" + "AZURE_AD_GROUPS_ID", + "AZURE_AD_GROUPS_DISPLAY_NAME" ], "enumDescriptions": [ "No AttributesType specified.", "Used to get the user's group claims from the Microsoft Entra ID identity provider using the configuration provided in ExtraAttributesOAuth2Client. The `mail` property of the `microsoft.graph.group` object is used for claim mapping. See https://learn.microsoft.com/en-us/graph/api/resources/group?view=graph-rest-1.0#properties for more details on `microsoft.graph.group` properties. The group mail addresses of the user's groups that are returned from Microsoft Entra ID can be mapped by using the following attributes: * OIDC: `assertion.groups` * SAML: `assertion.attributes.groups`", - "Used to get the user's group claims from the Microsoft Entra ID identity provider using the configuration provided in ExtraAttributesOAuth2Client. The `id` property of the `microsoft.graph.group` object is used for claim mapping. See https://learn.microsoft.com/en-us/graph/api/resources/group?view=graph-rest-1.0#properties for more details on `microsoft.graph.group` properties. The group IDs of the user's groups that are returned from Microsoft Entra ID can be mapped by using the following attributes: * OIDC: `assertion.groups` * SAML: `assertion.attributes.groups`" + "Used to get the user's group claims from the Microsoft Entra ID identity provider using the configuration provided in ExtraAttributesOAuth2Client. The `id` property of the `microsoft.graph.group` object is used for claim mapping. See https://learn.microsoft.com/en-us/graph/api/resources/group?view=graph-rest-1.0#properties for more details on `microsoft.graph.group` properties. The group IDs of the user's groups that are returned from Microsoft Entra ID can be mapped by using the following attributes: * OIDC: `assertion.groups` * SAML: `assertion.attributes.groups`", + "Used to get the user's group claims from the Microsoft Entra ID identity provider using the configuration provided in ExtraAttributesOAuth2Client. The `displayName` property of the `microsoft.graph.group` object is used for claim mapping. See https://learn.microsoft.com/en-us/graph/api/resources/group?view=graph-rest-1.0#properties for more details on `microsoft.graph.group` properties. The display names of the user's groups that are returned from Microsoft Entra ID can be mapped by using the following attributes: * OIDC: `assertion.groups` * SAML: `assertion.attributes.groups`" ], "type": "string" }, @@ -4732,6 +4831,10 @@ "description": "Optional. Rotation window percentage, the percentage of remaining lifetime after which certificate rotation is initiated. Must be between 50 and 80. If no value is specified, rotation window percentage is defaulted to 50.", "format": "int32", "type": "integer" + }, + "useDefaultSharedCa": { + "description": "Optional. If set to true, the trust domain will utilize the GCP-provisioned default CA. A default CA in the same region as the workload will be selected to issue the certificate. Enabling this will clear any existing `ca_pools` configuration to provision the certificates. NOTE: This field is mutually exclusive with `ca_pools`. If this flag is enabled, certificates will be automatically provisioned from the default shared CAs. This flag should not be set if you want to use your own CA pools to provision the certificates.", + "type": "boolean" } }, "type": "object" @@ -6122,6 +6225,10 @@ "$ref": "TrustAnchor" }, "type": "array" + }, + "trustDefaultSharedCa": { + "description": "Optional. If set to True, the trust bundle will include the private ca managed identity regional root public certificates. Important: `trust_default_shared_ca` is only supported for managed identity trust domain resource.", + "type": "boolean" } }, "type": "object" @@ -6178,12 +6285,6 @@ "properties": {}, "type": "object" }, - "UndeleteWorkforcePoolProviderScimTokenRequest": { - "description": "Gemini Enterprise only. Request message for UndeleteWorkforcePoolProviderScimToken.", - "id": "UndeleteWorkforcePoolProviderScimTokenRequest", - "properties": {}, - "type": "object" - }, "UndeleteWorkforcePoolRequest": { "description": "Request message for UndeleteWorkforcePool.", "id": "UndeleteWorkforcePoolRequest", diff --git a/discovery/iamcredentials-v1.json b/discovery/iamcredentials-v1.json index 3694e4aebb3..610501f1ea7 100644 --- a/discovery/iamcredentials-v1.json +++ b/discovery/iamcredentials-v1.json @@ -151,7 +151,7 @@ ], "parameters": { "name": { - "description": "Required. Resource name of workforce pool.", + "description": "Required. Resource name of workforce pool. Format: `locations/global/workforcePools/{pool_id}`", "location": "path", "pattern": "^locations/[^/]+/workforcePools/[^/]+$", "required": true, @@ -183,7 +183,7 @@ ], "parameters": { "name": { - "description": "Required. Resource name of workload identity pool.", + "description": "Required. Resource name of workload identity pool. Format: `projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+$", "required": true, @@ -267,7 +267,7 @@ ], "parameters": { "name": { - "description": "Required. Resource name of service account.", + "description": "Required. Resource name of service account. Format: `projects/-/serviceAccounts/{service_account_email}`", "location": "path", "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", "required": true, @@ -340,7 +340,7 @@ } } }, - "revision": "20251022", + "revision": "20260326", "rootUrl": "https://iamcredentials.googleapis.com/", "schemas": { "GenerateAccessTokenRequest": { diff --git a/discovery/iap-v1.json b/discovery/iap-v1.json index 0874d533a8e..4e616ca4e85 100644 --- a/discovery/iap-v1.json +++ b/discovery/iap-v1.json @@ -682,7 +682,7 @@ } } }, - "revision": "20260209", + "revision": "20260428", "rootUrl": "https://iap.googleapis.com/", "schemas": { "AccessDeniedPageSettings": { @@ -1099,15 +1099,15 @@ "id": "OAuthSettings", "properties": { "clientId": { - "description": "Optional. OAuth 2.0 client ID used in the OAuth flow to generate an access token. If this field is set, you can skip obtaining the OAuth credentials in this step: https://developers.google.com/identity/protocols/OAuth2?hl=en_US#1.-obtain-oauth-2.0-credentials-from-the-google-api-console. However, this could allow for client sharing. The risks of client sharing are outlined here: https://cloud.google.com/iap/docs/sharing-oauth-clients#risks.", + "description": "Optional. OAuth 2.0 client ID used in the OAuth flow. This allows for client sharing. The risks of client sharing are outlined here: https://cloud.google.com/iap/docs/sharing-oauth-clients#risks.", "type": "string" }, "clientSecret": { - "description": "Optional. Input only. OAuth secret paired with client ID", + "description": "Optional. Input only. OAuth secret paired with client ID.", "type": "string" }, "clientSecretSha256": { - "description": "Output only. OAuth secret sha256 paired with client ID", + "description": "Output only. OAuth secret SHA256 paired with client ID.", "readOnly": true, "type": "string" }, @@ -1267,7 +1267,7 @@ "type": "object" }, "locations": { - "description": "The locations of the resource. This field is used to determine whether the request is compliant with Trust Boundaries. Usage: - Must not be empty for services in-scope for Trust Boundaries. Once Trust Boundaries is GA, empty values will cause the request to be rejected if customers enforce Trust Boundaries on the parent CRM nodes. - For global resources: use a single value of \"global\". - For regional/multi-regional resources: use name of the GCP region(s) where the resource exists (e.g., [\"us-east1\", \"us-west1\"]). For multi-regional resources specify the name of each GCP region in the resource's multi-region. NOTE: Only GCP cloud region names are supported - go/cloud-region-names. ", + "description": "The locations of the resource. This field is used to determine whether the request is compliant with Trust Boundaries. Usage: - Must not be empty for services in-scope for Trust Boundaries. Once Trust Boundaries is GA, empty values will cause the request to be rejected if customers enforce Trust Boundaries on the parent CRM nodes. - For global resources: use a single value of \"global\". - For regional/multi-regional resources: use name of the GCP region(s) where the resource exists (e.g., [\"us-east1\", \"us-west1\"]). For multi-regional resources specify the name of each GCP region in the resource's multi-region. NOTE: Only GCP cloud region names are supported - go/cloud-region-names. - Constraints: - Individual location strings must be less than 1000 bytes. - The cumulative size of all locations must be less than 16KB. ", "items": { "type": "string" }, diff --git a/discovery/identitytoolkit-v1.json b/discovery/identitytoolkit-v1.json index efdbc213629..ba3259bc4bf 100644 --- a/discovery/identitytoolkit-v1.json +++ b/discovery/identitytoolkit-v1.json @@ -111,7 +111,7 @@ "accounts": { "methods": { "createAuthUri": { - "description": "If an email identifier is specified, checks and returns if any user account is registered with the email. If there is a registered account, fetches all providers associated with the account's email. If the provider ID of an Identity Provider (IdP) is specified, creates an authorization URI for the IdP. The user can be directed to this URI to sign in with the IdP. An [API key](https://cloud.google.com/docs/authentication/api-keys) is required in the request in order to identify the Google Cloud project.", + "description": "If an email identifier is specified, checks and returns if any user account is registered with the email. If there is a registered account, fetches all providers associated with the account's email. If [email enumeration protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled, this method returns an empty list. If the provider ID of an Identity Provider (IdP) is specified, creates an authorization URI for the IdP. The user can be directed to this URI to sign in with the IdP. An [API key](https://cloud.google.com/docs/authentication/api-keys) is required in the request in order to identify the Google Cloud project.", "flatPath": "v1/accounts:createAuthUri", "httpMethod": "POST", "id": "identitytoolkit.accounts.createAuthUri", @@ -1239,7 +1239,7 @@ } } }, - "revision": "20251024", + "revision": "20260311", "rootUrl": "https://identitytoolkit.googleapis.com/", "schemas": { "GoogleCloudIdentitytoolkitV1Argon2Parameters": { @@ -2500,7 +2500,7 @@ "type": "string" }, "safetyNetToken": { - "description": "Android only. Safety Net has been deprecated. Please use play_integrity_token instead.", + "description": "Android only. Safety Net has been deprecated. Use play_integrity_token instead.", "type": "string" }, "tenantId": { diff --git a/discovery/ids-v1.json b/discovery/ids-v1.json index 1814647e5b6..3c67f57b339 100644 --- a/discovery/ids-v1.json +++ b/discovery/ids-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "ids.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -498,7 +498,7 @@ } } }, - "revision": "20251201", + "revision": "20260427", "rootUrl": "https://ids.googleapis.com/", "schemas": { "CancelOperationRequest": { diff --git a/discovery/index.json b/discovery/index.json index fb02692ee3c..61eb315fbc6 100644 --- a/discovery/index.json +++ b/discovery/index.json @@ -77,7 +77,7 @@ "version": "v1" }, { - "description": "Accesses the latest features for managing Authorized Buyers accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals.", + "description": "Access the latest features for managing Authorized Buyers accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals.", "discoveryRestUrl": "https://adexchangebuyer.googleapis.com/$discovery/rest?version=v2beta1", "documentationLink": "https://developers.google.com/authorized-buyers/apis/reference/rest/", "icons": { @@ -242,7 +242,22 @@ "version": "v1" }, { - "description": "Train high-quality custom machine learning models with minimal machine learning expertise and effort.", + "description": "Agent Registry is a centralized, unified catalog that lets you store, discover, and govern Model Context Protocol (MCP) servers, tools, and AI agents within Google Cloud.", + "discoveryRestUrl": "https://agentregistry.googleapis.com/$discovery/rest?version=v1alpha", + "documentationLink": "https://docs.cloud.google.com/agent-registry/overview", + "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" + }, + "id": "agentregistry:v1alpha", + "kind": "discovery#directoryItem", + "name": "agentregistry", + "preferred": true, + "title": "Agent Registry API", + "version": "v1alpha" + }, + { + "description": "Build, scale, govern, and optimize sophisticated agents and models.", "discoveryRestUrl": "https://aiplatform.googleapis.com/$discovery/rest?version=v1beta1", "documentationLink": "https://cloud.google.com/vertex-ai/", "icons": { @@ -253,11 +268,11 @@ "kind": "discovery#directoryItem", "name": "aiplatform", "preferred": false, - "title": "Vertex AI API", + "title": "Agent Platform API", "version": "v1beta1" }, { - "description": "Train high-quality custom machine learning models with minimal machine learning expertise and effort.", + "description": "Build, scale, govern, and optimize sophisticated agents and models.", "discoveryRestUrl": "https://aiplatform.googleapis.com/$discovery/rest?version=v1", "documentationLink": "https://cloud.google.com/vertex-ai/", "icons": { @@ -268,7 +283,7 @@ "kind": "discovery#directoryItem", "name": "aiplatform", "preferred": true, - "title": "Vertex AI API", + "title": "Agent Platform API", "version": "v1" }, { @@ -1188,7 +1203,7 @@ { "description": "", "discoveryRestUrl": "https://certificatemanager.googleapis.com/$discovery/rest?version=v1", - "documentationLink": "https://cloud.google.com/certificate-manager", + "documentationLink": "https://docs.cloud.google.com/certificate-manager/docs/overview", "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" @@ -1203,7 +1218,7 @@ { "description": "", "discoveryRestUrl": "https://ces.googleapis.com/$discovery/rest?version=v1beta", - "documentationLink": "https://cloud.google.com/customer-engagement-ai/conversational-agents/ps/reference", + "documentationLink": "https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps", "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" @@ -1218,7 +1233,7 @@ { "description": "", "discoveryRestUrl": "https://ces.googleapis.com/$discovery/rest?version=v1", - "documentationLink": "https://cloud.google.com/customer-engagement-ai/conversational-agents/ps/reference", + "documentationLink": "https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps", "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" @@ -2673,6 +2688,36 @@ "title": "Developer Connect API", "version": "v1" }, + { + "description": "The Developer Knowledge API provides access to Google's developer knowledge.", + "discoveryRestUrl": "https://developerknowledge.googleapis.com/$discovery/rest?version=v1alpha", + "documentationLink": "https://developers.google.com/knowledge", + "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" + }, + "id": "developerknowledge:v1alpha", + "kind": "discovery#directoryItem", + "name": "developerknowledge", + "preferred": false, + "title": "Developer Knowledge API", + "version": "v1alpha" + }, + { + "description": "The Developer Knowledge API provides access to Google's developer knowledge.", + "discoveryRestUrl": "https://developerknowledge.googleapis.com/$discovery/rest?version=v1", + "documentationLink": "https://developers.google.com/knowledge", + "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" + }, + "id": "developerknowledge:v1", + "kind": "discovery#directoryItem", + "name": "developerknowledge", + "preferred": true, + "title": "Developer Knowledge API", + "version": "v1" + }, { "description": "Build applications to efficiently manage large or complex trafficking, reporting, and attribution workflows for Campaign Manager 360.", "discoveryRestUrl": "https://dfareporting.googleapis.com/$discovery/rest?version=v3.5", @@ -3366,7 +3411,7 @@ "version": "v1beta" }, { - "description": "Firebase Data Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database.", + "description": "Firebase SQL Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database.", "discoveryRestUrl": "https://firebasedataconnect.googleapis.com/$discovery/rest?version=v1beta", "documentationLink": "https://firebase.google.com/docs/data-connect", "icons": { @@ -3381,7 +3426,7 @@ "version": "v1beta" }, { - "description": "Firebase Data Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database.", + "description": "Firebase SQL Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database.", "discoveryRestUrl": "https://firebasedataconnect.googleapis.com/$discovery/rest?version=v1", "documentationLink": "https://firebase.google.com/docs/data-connect", "icons": { @@ -3860,6 +3905,21 @@ "title": "Groups Settings API", "version": "v1" }, + { + "description": "The Google Health API lets you view and manage health and fitness metrics and measurement data.", + "discoveryRestUrl": "https://health.googleapis.com/$discovery/rest?version=v4", + "documentationLink": "https://developers.google.com/health", + "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" + }, + "id": "health:v4", + "kind": "discovery#directoryItem", + "name": "health", + "preferred": true, + "title": "Google Health API", + "version": "v4" + }, { "description": "Manage, store, and access healthcare data in Google Cloud Platform.", "discoveryRestUrl": "https://healthcare.googleapis.com/$discovery/rest?version=v1beta1", @@ -6197,10 +6257,25 @@ "id": "saasservicemgmt:v1beta1", "kind": "discovery#directoryItem", "name": "saasservicemgmt", - "preferred": true, - "title": "SaaS Runtime API", + "preferred": false, + "title": "App Lifecycle Manager API", "version": "v1beta1" }, + { + "description": "Model, deploy, and operate your SaaS at scale.", + "discoveryRestUrl": "https://saasservicemgmt.googleapis.com/$discovery/rest?version=v1", + "documentationLink": "https://cloud.google.com/saas-runtime/docs", + "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" + }, + "id": "saasservicemgmt:v1", + "kind": "discovery#directoryItem", + "name": "saasservicemgmt", + "preferred": true, + "title": "App Lifecycle Manager API", + "version": "v1" + }, { "description": "Enables client applications to check web resources (most commonly URLs) against Google-generated lists of unsafe web resources. The Safe Browsing APIs are for non-commercial use only. If you need to use APIs to detect malicious URLs for commercial purposes – meaning “for sale or revenue-generating purposes” – please refer to the Web Risk API.", "discoveryRestUrl": "https://safebrowsing.googleapis.com/$discovery/rest?version=v4", @@ -6272,10 +6347,25 @@ "id": "searchads360:v0", "kind": "discovery#directoryItem", "name": "searchads360", - "preferred": true, + "preferred": false, "title": "Search Ads 360 Reporting API", "version": "v0" }, + { + "description": "The Search Ads 360 API allows developers to automate downloading reports from Search Ads 360.", + "discoveryRestUrl": "https://searchads360.googleapis.com/$discovery/rest?version=v23", + "documentationLink": "https://developers.google.com/search-ads/reporting", + "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" + }, + "id": "searchads360:v23", + "kind": "discovery#directoryItem", + "name": "searchads360", + "preferred": true, + "title": "Search Ads 360 Reporting API", + "version": "v23" + }, { "description": "The Search Console API provides access to both Search Console data (verified users only) and to public information on an URL basis (anyone)", "discoveryRestUrl": "https://searchconsole.googleapis.com/$discovery/rest?version=v1", diff --git a/discovery/kmsinventory-v1.json b/discovery/kmsinventory-v1.json index 9d681f3d0ed..7210c89f327 100644 --- a/discovery/kmsinventory-v1.json +++ b/discovery/kmsinventory-v1.json @@ -306,7 +306,7 @@ } } }, - "revision": "20260216", + "revision": "20260308", "rootUrl": "https://kmsinventory.googleapis.com/", "schemas": { "GoogleCloudKmsInventoryV1ListCryptoKeysResponse": { @@ -504,7 +504,7 @@ }, "keyAccessJustificationsPolicy": { "$ref": "GoogleCloudKmsV1KeyAccessJustificationsPolicy", - "description": "Optional. The policy used for Key Access Justifications Policy Enforcement. If this field is present and this key is enrolled in Key Access Justifications Policy Enforcement, the policy will be evaluated in encrypt, decrypt, and sign operations, and the operation will fail if rejected by the policy. The policy is defined by specifying zero or more allowed justification codes. https://cloud.google.com/assured-workloads/key-access-justifications/docs/justification-codes By default, this field is absent, and all justification codes are allowed." + "description": "Optional. The policy used for Key Access Justifications Policy Enforcement. If this field is present and this key is enrolled in Key Access Justifications Policy Enforcement, the policy will be evaluated in encrypt, decrypt, and sign operations, and the operation will fail if rejected by the policy. The policy is defined by specifying zero or more allowed justification codes. https://cloud.google.com/assured-workloads/key-access-justifications/docs/justification-codes By default, this field is absent, and all justification codes are allowed. If the `key_access_justifications_policy.allowed_access_reasons` is empty (zero allowed justification code), all encrypt, decrypt, and sign operations will fail." }, "labels": { "additionalProperties": { @@ -937,11 +937,11 @@ "type": "object" }, "GoogleCloudKmsV1KeyAccessJustificationsPolicy": { - "description": "A KeyAccessJustificationsPolicy specifies zero or more allowed AccessReason values for encrypt, decrypt, and sign operations on a CryptoKey.", + "description": "A KeyAccessJustificationsPolicy specifies zero or more allowed AccessReason values for encrypt, decrypt, and sign operations on a CryptoKey or KeyAccessJustificationsPolicyConfig (the default Key Access Justifications policy).", "id": "GoogleCloudKmsV1KeyAccessJustificationsPolicy", "properties": { "allowedAccessReasons": { - "description": "The list of allowed reasons for access to a CryptoKey. Zero allowed access reasons means all encrypt, decrypt, and sign operations for the CryptoKey associated with this policy will fail.", + "description": "The list of allowed reasons for access to a CryptoKey. Note that empty allowed_access_reasons has a different meaning depending on where this message appears. If this is under KeyAccessJustificationsPolicyConfig, it means allow-all. If this is under CryptoKey, it means deny-all.", "items": { "enum": [ "REASON_UNSPECIFIED", diff --git a/discovery/language-v1.json b/discovery/language-v1.json index 19e8ec804f5..54cd53b2249 100644 --- a/discovery/language-v1.json +++ b/discovery/language-v1.json @@ -246,7 +246,7 @@ } } }, - "revision": "20260223", + "revision": "20260315", "rootUrl": "https://language.googleapis.com/", "schemas": { "AnalyzeEntitiesRequest": { @@ -701,6 +701,10 @@ "C3", "C4", "C4A", + "C4D", + "N4", + "N4A", + "C3D", "M2", "M1", "N1", @@ -723,6 +727,10 @@ "", "", "", + "", + "", + "", + "", "MEMORY_OPTIMIZED_UPGRADE_PREMIUM", "MEMORY_OPTIMIZED", "", @@ -946,7 +954,91 @@ "C4A_HIGHMEM_32", "C4A_HIGHMEM_48", "C4A_HIGHMEM_64", - "C4A_HIGHMEM_72" + "C4A_HIGHMEM_72", + "C4D_STANDARD_8", + "C4D_STANDARD_16", + "C4D_STANDARD_32", + "C4D_STANDARD_48", + "C4D_STANDARD_64", + "C4D_STANDARD_96", + "C4D_STANDARD_192", + "C4D_STANDARD_384", + "C4D_HIGHCPU_8", + "C4D_HIGHCPU_16", + "C4D_HIGHCPU_32", + "C4D_HIGHCPU_48", + "C4D_HIGHCPU_64", + "C4D_HIGHCPU_96", + "C4D_HIGHCPU_192", + "C4D_HIGHCPU_384", + "C4D_HIGHMEM_8", + "C4D_HIGHMEM_16", + "C4D_HIGHMEM_32", + "C4D_HIGHMEM_48", + "C4D_HIGHMEM_64", + "C4D_HIGHMEM_96", + "C4D_HIGHMEM_192", + "C4D_HIGHMEM_384", + "N4_STANDARD_2", + "N4_STANDARD_4", + "N4_STANDARD_8", + "N4_STANDARD_16", + "N4_STANDARD_32", + "N4_STANDARD_48", + "N4_STANDARD_64", + "N4_STANDARD_80", + "N4_HIGHCPU_2", + "N4_HIGHCPU_4", + "N4_HIGHCPU_8", + "N4_HIGHCPU_16", + "N4_HIGHCPU_32", + "N4_HIGHCPU_48", + "N4_HIGHCPU_64", + "N4_HIGHCPU_80", + "N4_HIGHMEM_2", + "N4_HIGHMEM_4", + "N4_HIGHMEM_8", + "N4_HIGHMEM_16", + "N4_HIGHMEM_32", + "N4_HIGHMEM_48", + "N4_HIGHMEM_64", + "N4_HIGHMEM_80", + "N4A_STANDARD_8", + "N4A_STANDARD_16", + "N4A_STANDARD_32", + "N4A_STANDARD_48", + "N4A_STANDARD_64", + "N4A_HIGHCPU_8", + "N4A_HIGHCPU_16", + "N4A_HIGHCPU_32", + "N4A_HIGHCPU_48", + "N4A_HIGHCPU_64", + "N4A_HIGHMEM_8", + "N4A_HIGHMEM_16", + "N4A_HIGHMEM_32", + "N4A_HIGHMEM_48", + "N4A_HIGHMEM_64", + "C3D_STANDARD_8", + "C3D_STANDARD_16", + "C3D_STANDARD_30", + "C3D_STANDARD_60", + "C3D_STANDARD_90", + "C3D_STANDARD_180", + "C3D_STANDARD_360", + "C3D_HIGHCPU_8", + "C3D_HIGHCPU_16", + "C3D_HIGHCPU_30", + "C3D_HIGHCPU_60", + "C3D_HIGHCPU_90", + "C3D_HIGHCPU_180", + "C3D_HIGHCPU_360", + "C3D_HIGHMEM_8", + "C3D_HIGHMEM_16", + "C3D_HIGHMEM_30", + "C3D_HIGHMEM_60", + "C3D_HIGHMEM_90", + "C3D_HIGHMEM_180", + "C3D_HIGHMEM_360" ], "enumDescriptions": [ "", @@ -1160,6 +1252,90 @@ "", "", "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ], "type": "string" @@ -1781,7 +1957,91 @@ "C4A_HIGHMEM_32", "C4A_HIGHMEM_48", "C4A_HIGHMEM_64", - "C4A_HIGHMEM_72" + "C4A_HIGHMEM_72", + "C4D_STANDARD_8", + "C4D_STANDARD_16", + "C4D_STANDARD_32", + "C4D_STANDARD_48", + "C4D_STANDARD_64", + "C4D_STANDARD_96", + "C4D_STANDARD_192", + "C4D_STANDARD_384", + "C4D_HIGHCPU_8", + "C4D_HIGHCPU_16", + "C4D_HIGHCPU_32", + "C4D_HIGHCPU_48", + "C4D_HIGHCPU_64", + "C4D_HIGHCPU_96", + "C4D_HIGHCPU_192", + "C4D_HIGHCPU_384", + "C4D_HIGHMEM_8", + "C4D_HIGHMEM_16", + "C4D_HIGHMEM_32", + "C4D_HIGHMEM_48", + "C4D_HIGHMEM_64", + "C4D_HIGHMEM_96", + "C4D_HIGHMEM_192", + "C4D_HIGHMEM_384", + "N4_STANDARD_2", + "N4_STANDARD_4", + "N4_STANDARD_8", + "N4_STANDARD_16", + "N4_STANDARD_32", + "N4_STANDARD_48", + "N4_STANDARD_64", + "N4_STANDARD_80", + "N4_HIGHCPU_2", + "N4_HIGHCPU_4", + "N4_HIGHCPU_8", + "N4_HIGHCPU_16", + "N4_HIGHCPU_32", + "N4_HIGHCPU_48", + "N4_HIGHCPU_64", + "N4_HIGHCPU_80", + "N4_HIGHMEM_2", + "N4_HIGHMEM_4", + "N4_HIGHMEM_8", + "N4_HIGHMEM_16", + "N4_HIGHMEM_32", + "N4_HIGHMEM_48", + "N4_HIGHMEM_64", + "N4_HIGHMEM_80", + "N4A_STANDARD_8", + "N4A_STANDARD_16", + "N4A_STANDARD_32", + "N4A_STANDARD_48", + "N4A_STANDARD_64", + "N4A_HIGHCPU_8", + "N4A_HIGHCPU_16", + "N4A_HIGHCPU_32", + "N4A_HIGHCPU_48", + "N4A_HIGHCPU_64", + "N4A_HIGHMEM_8", + "N4A_HIGHMEM_16", + "N4A_HIGHMEM_32", + "N4A_HIGHMEM_48", + "N4A_HIGHMEM_64", + "C3D_STANDARD_8", + "C3D_STANDARD_16", + "C3D_STANDARD_30", + "C3D_STANDARD_60", + "C3D_STANDARD_90", + "C3D_STANDARD_180", + "C3D_STANDARD_360", + "C3D_HIGHCPU_8", + "C3D_HIGHCPU_16", + "C3D_HIGHCPU_30", + "C3D_HIGHCPU_60", + "C3D_HIGHCPU_90", + "C3D_HIGHCPU_180", + "C3D_HIGHCPU_360", + "C3D_HIGHMEM_8", + "C3D_HIGHMEM_16", + "C3D_HIGHMEM_30", + "C3D_HIGHMEM_60", + "C3D_HIGHMEM_90", + "C3D_HIGHMEM_180", + "C3D_HIGHMEM_360" ], "enumDescriptions": [ "", @@ -1995,6 +2255,90 @@ "", "", "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ], "type": "string" @@ -2565,7 +2909,91 @@ "C4A_HIGHMEM_32", "C4A_HIGHMEM_48", "C4A_HIGHMEM_64", - "C4A_HIGHMEM_72" + "C4A_HIGHMEM_72", + "C4D_STANDARD_8", + "C4D_STANDARD_16", + "C4D_STANDARD_32", + "C4D_STANDARD_48", + "C4D_STANDARD_64", + "C4D_STANDARD_96", + "C4D_STANDARD_192", + "C4D_STANDARD_384", + "C4D_HIGHCPU_8", + "C4D_HIGHCPU_16", + "C4D_HIGHCPU_32", + "C4D_HIGHCPU_48", + "C4D_HIGHCPU_64", + "C4D_HIGHCPU_96", + "C4D_HIGHCPU_192", + "C4D_HIGHCPU_384", + "C4D_HIGHMEM_8", + "C4D_HIGHMEM_16", + "C4D_HIGHMEM_32", + "C4D_HIGHMEM_48", + "C4D_HIGHMEM_64", + "C4D_HIGHMEM_96", + "C4D_HIGHMEM_192", + "C4D_HIGHMEM_384", + "N4_STANDARD_2", + "N4_STANDARD_4", + "N4_STANDARD_8", + "N4_STANDARD_16", + "N4_STANDARD_32", + "N4_STANDARD_48", + "N4_STANDARD_64", + "N4_STANDARD_80", + "N4_HIGHCPU_2", + "N4_HIGHCPU_4", + "N4_HIGHCPU_8", + "N4_HIGHCPU_16", + "N4_HIGHCPU_32", + "N4_HIGHCPU_48", + "N4_HIGHCPU_64", + "N4_HIGHCPU_80", + "N4_HIGHMEM_2", + "N4_HIGHMEM_4", + "N4_HIGHMEM_8", + "N4_HIGHMEM_16", + "N4_HIGHMEM_32", + "N4_HIGHMEM_48", + "N4_HIGHMEM_64", + "N4_HIGHMEM_80", + "N4A_STANDARD_8", + "N4A_STANDARD_16", + "N4A_STANDARD_32", + "N4A_STANDARD_48", + "N4A_STANDARD_64", + "N4A_HIGHCPU_8", + "N4A_HIGHCPU_16", + "N4A_HIGHCPU_32", + "N4A_HIGHCPU_48", + "N4A_HIGHCPU_64", + "N4A_HIGHMEM_8", + "N4A_HIGHMEM_16", + "N4A_HIGHMEM_32", + "N4A_HIGHMEM_48", + "N4A_HIGHMEM_64", + "C3D_STANDARD_8", + "C3D_STANDARD_16", + "C3D_STANDARD_30", + "C3D_STANDARD_60", + "C3D_STANDARD_90", + "C3D_STANDARD_180", + "C3D_STANDARD_360", + "C3D_HIGHCPU_8", + "C3D_HIGHCPU_16", + "C3D_HIGHCPU_30", + "C3D_HIGHCPU_60", + "C3D_HIGHCPU_90", + "C3D_HIGHCPU_180", + "C3D_HIGHCPU_360", + "C3D_HIGHMEM_8", + "C3D_HIGHMEM_16", + "C3D_HIGHMEM_30", + "C3D_HIGHMEM_60", + "C3D_HIGHMEM_90", + "C3D_HIGHMEM_180", + "C3D_HIGHMEM_360" ], "enumDescriptions": [ "", @@ -2779,6 +3207,90 @@ "", "", "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ], "type": "string" @@ -2804,6 +3316,10 @@ "G4", "C4", "C4A", + "C4D", + "N4", + "N4A", + "C3D", "C3", "M2", "M1", @@ -2827,6 +3343,10 @@ "", "", "", + "", + "", + "", + "", "MEMORY_OPTIMIZED_UPGRADE_PREMIUM", "MEMORY_OPTIMIZED", "", diff --git a/discovery/language-v1beta2.json b/discovery/language-v1beta2.json index e68e159a5c4..53c9fcaa0dd 100644 --- a/discovery/language-v1beta2.json +++ b/discovery/language-v1beta2.json @@ -246,7 +246,7 @@ } } }, - "revision": "20260223", + "revision": "20260315", "rootUrl": "https://language.googleapis.com/", "schemas": { "AnalyzeEntitiesRequest": { @@ -701,6 +701,10 @@ "C3", "C4", "C4A", + "C4D", + "N4", + "N4A", + "C3D", "M2", "M1", "N1", @@ -723,6 +727,10 @@ "", "", "", + "", + "", + "", + "", "MEMORY_OPTIMIZED_UPGRADE_PREMIUM", "MEMORY_OPTIMIZED", "", @@ -946,7 +954,91 @@ "C4A_HIGHMEM_32", "C4A_HIGHMEM_48", "C4A_HIGHMEM_64", - "C4A_HIGHMEM_72" + "C4A_HIGHMEM_72", + "C4D_STANDARD_8", + "C4D_STANDARD_16", + "C4D_STANDARD_32", + "C4D_STANDARD_48", + "C4D_STANDARD_64", + "C4D_STANDARD_96", + "C4D_STANDARD_192", + "C4D_STANDARD_384", + "C4D_HIGHCPU_8", + "C4D_HIGHCPU_16", + "C4D_HIGHCPU_32", + "C4D_HIGHCPU_48", + "C4D_HIGHCPU_64", + "C4D_HIGHCPU_96", + "C4D_HIGHCPU_192", + "C4D_HIGHCPU_384", + "C4D_HIGHMEM_8", + "C4D_HIGHMEM_16", + "C4D_HIGHMEM_32", + "C4D_HIGHMEM_48", + "C4D_HIGHMEM_64", + "C4D_HIGHMEM_96", + "C4D_HIGHMEM_192", + "C4D_HIGHMEM_384", + "N4_STANDARD_2", + "N4_STANDARD_4", + "N4_STANDARD_8", + "N4_STANDARD_16", + "N4_STANDARD_32", + "N4_STANDARD_48", + "N4_STANDARD_64", + "N4_STANDARD_80", + "N4_HIGHCPU_2", + "N4_HIGHCPU_4", + "N4_HIGHCPU_8", + "N4_HIGHCPU_16", + "N4_HIGHCPU_32", + "N4_HIGHCPU_48", + "N4_HIGHCPU_64", + "N4_HIGHCPU_80", + "N4_HIGHMEM_2", + "N4_HIGHMEM_4", + "N4_HIGHMEM_8", + "N4_HIGHMEM_16", + "N4_HIGHMEM_32", + "N4_HIGHMEM_48", + "N4_HIGHMEM_64", + "N4_HIGHMEM_80", + "N4A_STANDARD_8", + "N4A_STANDARD_16", + "N4A_STANDARD_32", + "N4A_STANDARD_48", + "N4A_STANDARD_64", + "N4A_HIGHCPU_8", + "N4A_HIGHCPU_16", + "N4A_HIGHCPU_32", + "N4A_HIGHCPU_48", + "N4A_HIGHCPU_64", + "N4A_HIGHMEM_8", + "N4A_HIGHMEM_16", + "N4A_HIGHMEM_32", + "N4A_HIGHMEM_48", + "N4A_HIGHMEM_64", + "C3D_STANDARD_8", + "C3D_STANDARD_16", + "C3D_STANDARD_30", + "C3D_STANDARD_60", + "C3D_STANDARD_90", + "C3D_STANDARD_180", + "C3D_STANDARD_360", + "C3D_HIGHCPU_8", + "C3D_HIGHCPU_16", + "C3D_HIGHCPU_30", + "C3D_HIGHCPU_60", + "C3D_HIGHCPU_90", + "C3D_HIGHCPU_180", + "C3D_HIGHCPU_360", + "C3D_HIGHMEM_8", + "C3D_HIGHMEM_16", + "C3D_HIGHMEM_30", + "C3D_HIGHMEM_60", + "C3D_HIGHMEM_90", + "C3D_HIGHMEM_180", + "C3D_HIGHMEM_360" ], "enumDescriptions": [ "", @@ -1160,6 +1252,90 @@ "", "", "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ], "type": "string" @@ -1799,7 +1975,91 @@ "C4A_HIGHMEM_32", "C4A_HIGHMEM_48", "C4A_HIGHMEM_64", - "C4A_HIGHMEM_72" + "C4A_HIGHMEM_72", + "C4D_STANDARD_8", + "C4D_STANDARD_16", + "C4D_STANDARD_32", + "C4D_STANDARD_48", + "C4D_STANDARD_64", + "C4D_STANDARD_96", + "C4D_STANDARD_192", + "C4D_STANDARD_384", + "C4D_HIGHCPU_8", + "C4D_HIGHCPU_16", + "C4D_HIGHCPU_32", + "C4D_HIGHCPU_48", + "C4D_HIGHCPU_64", + "C4D_HIGHCPU_96", + "C4D_HIGHCPU_192", + "C4D_HIGHCPU_384", + "C4D_HIGHMEM_8", + "C4D_HIGHMEM_16", + "C4D_HIGHMEM_32", + "C4D_HIGHMEM_48", + "C4D_HIGHMEM_64", + "C4D_HIGHMEM_96", + "C4D_HIGHMEM_192", + "C4D_HIGHMEM_384", + "N4_STANDARD_2", + "N4_STANDARD_4", + "N4_STANDARD_8", + "N4_STANDARD_16", + "N4_STANDARD_32", + "N4_STANDARD_48", + "N4_STANDARD_64", + "N4_STANDARD_80", + "N4_HIGHCPU_2", + "N4_HIGHCPU_4", + "N4_HIGHCPU_8", + "N4_HIGHCPU_16", + "N4_HIGHCPU_32", + "N4_HIGHCPU_48", + "N4_HIGHCPU_64", + "N4_HIGHCPU_80", + "N4_HIGHMEM_2", + "N4_HIGHMEM_4", + "N4_HIGHMEM_8", + "N4_HIGHMEM_16", + "N4_HIGHMEM_32", + "N4_HIGHMEM_48", + "N4_HIGHMEM_64", + "N4_HIGHMEM_80", + "N4A_STANDARD_8", + "N4A_STANDARD_16", + "N4A_STANDARD_32", + "N4A_STANDARD_48", + "N4A_STANDARD_64", + "N4A_HIGHCPU_8", + "N4A_HIGHCPU_16", + "N4A_HIGHCPU_32", + "N4A_HIGHCPU_48", + "N4A_HIGHCPU_64", + "N4A_HIGHMEM_8", + "N4A_HIGHMEM_16", + "N4A_HIGHMEM_32", + "N4A_HIGHMEM_48", + "N4A_HIGHMEM_64", + "C3D_STANDARD_8", + "C3D_STANDARD_16", + "C3D_STANDARD_30", + "C3D_STANDARD_60", + "C3D_STANDARD_90", + "C3D_STANDARD_180", + "C3D_STANDARD_360", + "C3D_HIGHCPU_8", + "C3D_HIGHCPU_16", + "C3D_HIGHCPU_30", + "C3D_HIGHCPU_60", + "C3D_HIGHCPU_90", + "C3D_HIGHCPU_180", + "C3D_HIGHCPU_360", + "C3D_HIGHMEM_8", + "C3D_HIGHMEM_16", + "C3D_HIGHMEM_30", + "C3D_HIGHMEM_60", + "C3D_HIGHMEM_90", + "C3D_HIGHMEM_180", + "C3D_HIGHMEM_360" ], "enumDescriptions": [ "", @@ -2013,6 +2273,90 @@ "", "", "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ], "type": "string" @@ -2583,7 +2927,91 @@ "C4A_HIGHMEM_32", "C4A_HIGHMEM_48", "C4A_HIGHMEM_64", - "C4A_HIGHMEM_72" + "C4A_HIGHMEM_72", + "C4D_STANDARD_8", + "C4D_STANDARD_16", + "C4D_STANDARD_32", + "C4D_STANDARD_48", + "C4D_STANDARD_64", + "C4D_STANDARD_96", + "C4D_STANDARD_192", + "C4D_STANDARD_384", + "C4D_HIGHCPU_8", + "C4D_HIGHCPU_16", + "C4D_HIGHCPU_32", + "C4D_HIGHCPU_48", + "C4D_HIGHCPU_64", + "C4D_HIGHCPU_96", + "C4D_HIGHCPU_192", + "C4D_HIGHCPU_384", + "C4D_HIGHMEM_8", + "C4D_HIGHMEM_16", + "C4D_HIGHMEM_32", + "C4D_HIGHMEM_48", + "C4D_HIGHMEM_64", + "C4D_HIGHMEM_96", + "C4D_HIGHMEM_192", + "C4D_HIGHMEM_384", + "N4_STANDARD_2", + "N4_STANDARD_4", + "N4_STANDARD_8", + "N4_STANDARD_16", + "N4_STANDARD_32", + "N4_STANDARD_48", + "N4_STANDARD_64", + "N4_STANDARD_80", + "N4_HIGHCPU_2", + "N4_HIGHCPU_4", + "N4_HIGHCPU_8", + "N4_HIGHCPU_16", + "N4_HIGHCPU_32", + "N4_HIGHCPU_48", + "N4_HIGHCPU_64", + "N4_HIGHCPU_80", + "N4_HIGHMEM_2", + "N4_HIGHMEM_4", + "N4_HIGHMEM_8", + "N4_HIGHMEM_16", + "N4_HIGHMEM_32", + "N4_HIGHMEM_48", + "N4_HIGHMEM_64", + "N4_HIGHMEM_80", + "N4A_STANDARD_8", + "N4A_STANDARD_16", + "N4A_STANDARD_32", + "N4A_STANDARD_48", + "N4A_STANDARD_64", + "N4A_HIGHCPU_8", + "N4A_HIGHCPU_16", + "N4A_HIGHCPU_32", + "N4A_HIGHCPU_48", + "N4A_HIGHCPU_64", + "N4A_HIGHMEM_8", + "N4A_HIGHMEM_16", + "N4A_HIGHMEM_32", + "N4A_HIGHMEM_48", + "N4A_HIGHMEM_64", + "C3D_STANDARD_8", + "C3D_STANDARD_16", + "C3D_STANDARD_30", + "C3D_STANDARD_60", + "C3D_STANDARD_90", + "C3D_STANDARD_180", + "C3D_STANDARD_360", + "C3D_HIGHCPU_8", + "C3D_HIGHCPU_16", + "C3D_HIGHCPU_30", + "C3D_HIGHCPU_60", + "C3D_HIGHCPU_90", + "C3D_HIGHCPU_180", + "C3D_HIGHCPU_360", + "C3D_HIGHMEM_8", + "C3D_HIGHMEM_16", + "C3D_HIGHMEM_30", + "C3D_HIGHMEM_60", + "C3D_HIGHMEM_90", + "C3D_HIGHMEM_180", + "C3D_HIGHMEM_360" ], "enumDescriptions": [ "", @@ -2797,6 +3225,90 @@ "", "", "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ], "type": "string" @@ -2822,6 +3334,10 @@ "G4", "C4", "C4A", + "C4D", + "N4", + "N4A", + "C3D", "C3", "M2", "M1", @@ -2845,6 +3361,10 @@ "", "", "", + "", + "", + "", + "", "MEMORY_OPTIMIZED_UPGRADE_PREMIUM", "MEMORY_OPTIMIZED", "", diff --git a/discovery/language-v2.json b/discovery/language-v2.json index 3871db39742..e82ae714fdd 100644 --- a/discovery/language-v2.json +++ b/discovery/language-v2.json @@ -208,7 +208,7 @@ } } }, - "revision": "20260223", + "revision": "20260315", "rootUrl": "https://language.googleapis.com/", "schemas": { "AnalyzeEntitiesRequest": { @@ -526,6 +526,10 @@ "C3", "C4", "C4A", + "C4D", + "N4", + "N4A", + "C3D", "M2", "M1", "N1", @@ -548,6 +552,10 @@ "", "", "", + "", + "", + "", + "", "MEMORY_OPTIMIZED_UPGRADE_PREMIUM", "MEMORY_OPTIMIZED", "", @@ -771,7 +779,91 @@ "C4A_HIGHMEM_32", "C4A_HIGHMEM_48", "C4A_HIGHMEM_64", - "C4A_HIGHMEM_72" + "C4A_HIGHMEM_72", + "C4D_STANDARD_8", + "C4D_STANDARD_16", + "C4D_STANDARD_32", + "C4D_STANDARD_48", + "C4D_STANDARD_64", + "C4D_STANDARD_96", + "C4D_STANDARD_192", + "C4D_STANDARD_384", + "C4D_HIGHCPU_8", + "C4D_HIGHCPU_16", + "C4D_HIGHCPU_32", + "C4D_HIGHCPU_48", + "C4D_HIGHCPU_64", + "C4D_HIGHCPU_96", + "C4D_HIGHCPU_192", + "C4D_HIGHCPU_384", + "C4D_HIGHMEM_8", + "C4D_HIGHMEM_16", + "C4D_HIGHMEM_32", + "C4D_HIGHMEM_48", + "C4D_HIGHMEM_64", + "C4D_HIGHMEM_96", + "C4D_HIGHMEM_192", + "C4D_HIGHMEM_384", + "N4_STANDARD_2", + "N4_STANDARD_4", + "N4_STANDARD_8", + "N4_STANDARD_16", + "N4_STANDARD_32", + "N4_STANDARD_48", + "N4_STANDARD_64", + "N4_STANDARD_80", + "N4_HIGHCPU_2", + "N4_HIGHCPU_4", + "N4_HIGHCPU_8", + "N4_HIGHCPU_16", + "N4_HIGHCPU_32", + "N4_HIGHCPU_48", + "N4_HIGHCPU_64", + "N4_HIGHCPU_80", + "N4_HIGHMEM_2", + "N4_HIGHMEM_4", + "N4_HIGHMEM_8", + "N4_HIGHMEM_16", + "N4_HIGHMEM_32", + "N4_HIGHMEM_48", + "N4_HIGHMEM_64", + "N4_HIGHMEM_80", + "N4A_STANDARD_8", + "N4A_STANDARD_16", + "N4A_STANDARD_32", + "N4A_STANDARD_48", + "N4A_STANDARD_64", + "N4A_HIGHCPU_8", + "N4A_HIGHCPU_16", + "N4A_HIGHCPU_32", + "N4A_HIGHCPU_48", + "N4A_HIGHCPU_64", + "N4A_HIGHMEM_8", + "N4A_HIGHMEM_16", + "N4A_HIGHMEM_32", + "N4A_HIGHMEM_48", + "N4A_HIGHMEM_64", + "C3D_STANDARD_8", + "C3D_STANDARD_16", + "C3D_STANDARD_30", + "C3D_STANDARD_60", + "C3D_STANDARD_90", + "C3D_STANDARD_180", + "C3D_STANDARD_360", + "C3D_HIGHCPU_8", + "C3D_HIGHCPU_16", + "C3D_HIGHCPU_30", + "C3D_HIGHCPU_60", + "C3D_HIGHCPU_90", + "C3D_HIGHCPU_180", + "C3D_HIGHCPU_360", + "C3D_HIGHMEM_8", + "C3D_HIGHMEM_16", + "C3D_HIGHMEM_30", + "C3D_HIGHMEM_60", + "C3D_HIGHMEM_90", + "C3D_HIGHMEM_180", + "C3D_HIGHMEM_360" ], "enumDescriptions": [ "", @@ -985,6 +1077,90 @@ "", "", "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ], "type": "string" @@ -1420,7 +1596,91 @@ "C4A_HIGHMEM_32", "C4A_HIGHMEM_48", "C4A_HIGHMEM_64", - "C4A_HIGHMEM_72" + "C4A_HIGHMEM_72", + "C4D_STANDARD_8", + "C4D_STANDARD_16", + "C4D_STANDARD_32", + "C4D_STANDARD_48", + "C4D_STANDARD_64", + "C4D_STANDARD_96", + "C4D_STANDARD_192", + "C4D_STANDARD_384", + "C4D_HIGHCPU_8", + "C4D_HIGHCPU_16", + "C4D_HIGHCPU_32", + "C4D_HIGHCPU_48", + "C4D_HIGHCPU_64", + "C4D_HIGHCPU_96", + "C4D_HIGHCPU_192", + "C4D_HIGHCPU_384", + "C4D_HIGHMEM_8", + "C4D_HIGHMEM_16", + "C4D_HIGHMEM_32", + "C4D_HIGHMEM_48", + "C4D_HIGHMEM_64", + "C4D_HIGHMEM_96", + "C4D_HIGHMEM_192", + "C4D_HIGHMEM_384", + "N4_STANDARD_2", + "N4_STANDARD_4", + "N4_STANDARD_8", + "N4_STANDARD_16", + "N4_STANDARD_32", + "N4_STANDARD_48", + "N4_STANDARD_64", + "N4_STANDARD_80", + "N4_HIGHCPU_2", + "N4_HIGHCPU_4", + "N4_HIGHCPU_8", + "N4_HIGHCPU_16", + "N4_HIGHCPU_32", + "N4_HIGHCPU_48", + "N4_HIGHCPU_64", + "N4_HIGHCPU_80", + "N4_HIGHMEM_2", + "N4_HIGHMEM_4", + "N4_HIGHMEM_8", + "N4_HIGHMEM_16", + "N4_HIGHMEM_32", + "N4_HIGHMEM_48", + "N4_HIGHMEM_64", + "N4_HIGHMEM_80", + "N4A_STANDARD_8", + "N4A_STANDARD_16", + "N4A_STANDARD_32", + "N4A_STANDARD_48", + "N4A_STANDARD_64", + "N4A_HIGHCPU_8", + "N4A_HIGHCPU_16", + "N4A_HIGHCPU_32", + "N4A_HIGHCPU_48", + "N4A_HIGHCPU_64", + "N4A_HIGHMEM_8", + "N4A_HIGHMEM_16", + "N4A_HIGHMEM_32", + "N4A_HIGHMEM_48", + "N4A_HIGHMEM_64", + "C3D_STANDARD_8", + "C3D_STANDARD_16", + "C3D_STANDARD_30", + "C3D_STANDARD_60", + "C3D_STANDARD_90", + "C3D_STANDARD_180", + "C3D_STANDARD_360", + "C3D_HIGHCPU_8", + "C3D_HIGHCPU_16", + "C3D_HIGHCPU_30", + "C3D_HIGHCPU_60", + "C3D_HIGHCPU_90", + "C3D_HIGHCPU_180", + "C3D_HIGHCPU_360", + "C3D_HIGHMEM_8", + "C3D_HIGHMEM_16", + "C3D_HIGHMEM_30", + "C3D_HIGHMEM_60", + "C3D_HIGHMEM_90", + "C3D_HIGHMEM_180", + "C3D_HIGHMEM_360" ], "enumDescriptions": [ "", @@ -1634,6 +1894,90 @@ "", "", "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ], "type": "string" @@ -1959,7 +2303,91 @@ "C4A_HIGHMEM_32", "C4A_HIGHMEM_48", "C4A_HIGHMEM_64", - "C4A_HIGHMEM_72" + "C4A_HIGHMEM_72", + "C4D_STANDARD_8", + "C4D_STANDARD_16", + "C4D_STANDARD_32", + "C4D_STANDARD_48", + "C4D_STANDARD_64", + "C4D_STANDARD_96", + "C4D_STANDARD_192", + "C4D_STANDARD_384", + "C4D_HIGHCPU_8", + "C4D_HIGHCPU_16", + "C4D_HIGHCPU_32", + "C4D_HIGHCPU_48", + "C4D_HIGHCPU_64", + "C4D_HIGHCPU_96", + "C4D_HIGHCPU_192", + "C4D_HIGHCPU_384", + "C4D_HIGHMEM_8", + "C4D_HIGHMEM_16", + "C4D_HIGHMEM_32", + "C4D_HIGHMEM_48", + "C4D_HIGHMEM_64", + "C4D_HIGHMEM_96", + "C4D_HIGHMEM_192", + "C4D_HIGHMEM_384", + "N4_STANDARD_2", + "N4_STANDARD_4", + "N4_STANDARD_8", + "N4_STANDARD_16", + "N4_STANDARD_32", + "N4_STANDARD_48", + "N4_STANDARD_64", + "N4_STANDARD_80", + "N4_HIGHCPU_2", + "N4_HIGHCPU_4", + "N4_HIGHCPU_8", + "N4_HIGHCPU_16", + "N4_HIGHCPU_32", + "N4_HIGHCPU_48", + "N4_HIGHCPU_64", + "N4_HIGHCPU_80", + "N4_HIGHMEM_2", + "N4_HIGHMEM_4", + "N4_HIGHMEM_8", + "N4_HIGHMEM_16", + "N4_HIGHMEM_32", + "N4_HIGHMEM_48", + "N4_HIGHMEM_64", + "N4_HIGHMEM_80", + "N4A_STANDARD_8", + "N4A_STANDARD_16", + "N4A_STANDARD_32", + "N4A_STANDARD_48", + "N4A_STANDARD_64", + "N4A_HIGHCPU_8", + "N4A_HIGHCPU_16", + "N4A_HIGHCPU_32", + "N4A_HIGHCPU_48", + "N4A_HIGHCPU_64", + "N4A_HIGHMEM_8", + "N4A_HIGHMEM_16", + "N4A_HIGHMEM_32", + "N4A_HIGHMEM_48", + "N4A_HIGHMEM_64", + "C3D_STANDARD_8", + "C3D_STANDARD_16", + "C3D_STANDARD_30", + "C3D_STANDARD_60", + "C3D_STANDARD_90", + "C3D_STANDARD_180", + "C3D_STANDARD_360", + "C3D_HIGHCPU_8", + "C3D_HIGHCPU_16", + "C3D_HIGHCPU_30", + "C3D_HIGHCPU_60", + "C3D_HIGHCPU_90", + "C3D_HIGHCPU_180", + "C3D_HIGHCPU_360", + "C3D_HIGHMEM_8", + "C3D_HIGHMEM_16", + "C3D_HIGHMEM_30", + "C3D_HIGHMEM_60", + "C3D_HIGHMEM_90", + "C3D_HIGHMEM_180", + "C3D_HIGHMEM_360" ], "enumDescriptions": [ "", @@ -2173,6 +2601,90 @@ "", "", "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ], "type": "string" @@ -2198,6 +2710,10 @@ "G4", "C4", "C4A", + "C4D", + "N4", + "N4A", + "C3D", "C3", "M2", "M1", @@ -2221,6 +2737,10 @@ "", "", "", + "", + "", + "", + "", "MEMORY_OPTIMIZED_UPGRADE_PREMIUM", "MEMORY_OPTIMIZED", "", diff --git a/discovery/logging-v2.json b/discovery/logging-v2.json index 17d09f6153f..fd696977cd7 100644 --- a/discovery/logging-v2.json +++ b/discovery/logging-v2.json @@ -268,6 +268,11 @@ "endpointUrl": "https://logging.us-west8.rep.googleapis.com/", "location": "us-west8" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://logging.ca.rep.googleapis.com/", + "location": "ca" + }, { "description": "Regional Endpoint", "endpointUrl": "https://logging.ch.rep.googleapis.com/", @@ -283,6 +288,11 @@ "endpointUrl": "https://logging.in.rep.googleapis.com/", "location": "in" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://logging.sa.rep.googleapis.com/", + "location": "sa" + }, { "description": "Regional Endpoint", "endpointUrl": "https://logging.us.rep.googleapis.com/", @@ -631,7 +641,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2/billingAccounts/{billingAccountsId}/locations", "httpMethod": "GET", "id": "logging.billingAccounts.locations.list", @@ -1957,7 +1967,7 @@ ] }, "list": { - "description": "Lists log entries. Use this method to retrieve log entries that originated from a project/folder/organization/billing account. For ways to export log entries, see Exporting Logs (https://cloud.google.com/logging/docs/export).", + "description": "Lists log entries. Use this method to retrieve log entries that originated from a project/folder/organization/billing account. For ways to export log entries, see Routing overview (https://docs.cloud.google.com/logging/docs/routing/overview).", "flatPath": "v2/entries:list", "httpMethod": "POST", "id": "logging.entries.list", @@ -2468,7 +2478,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2/folders/{foldersId}/locations", "httpMethod": "GET", "id": "logging.folders.locations.list", @@ -4060,7 +4070,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2/{v2Id}/{v2Id1}/locations", "httpMethod": "GET", "id": "logging.locations.list", @@ -5308,7 +5318,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2/organizations/{organizationsId}/locations", "httpMethod": "GET", "id": "logging.organizations.locations.list", @@ -7121,7 +7131,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2/projects/{projectsId}/locations", "httpMethod": "GET", "id": "logging.projects.locations.list", @@ -9157,7 +9167,7 @@ } } }, - "revision": "20260130", + "revision": "20260421", "rootUrl": "https://logging.googleapis.com/", "schemas": { "AppHub": { @@ -10122,7 +10132,7 @@ "id": "ListLogEntriesRequest", "properties": { "filter": { - "description": "Optional. A filter that chooses which log entries to return. For more information, see Logging query language (https://{$universe.dns_names.final_documentation_domain}/logging/docs/view/logging-query-language).Only log entries that match the filter are returned. An empty filter matches all log entries in the resources listed in resource_names. Referencing a parent resource that is not listed in resource_names will cause the filter to return no results. The maximum length of a filter is 20,000 characters.To make queries faster, you can make the filter more selective by using restrictions on indexed fields (https://{$universe.dns_names.final_documentation_domain}/logging/docs/view/logging-query-language#indexed-fields) as well as limit the time range of the query by adding range restrictions on the timestamp field.", + "description": "Optional. A filter that chooses which log entries to return. For more information, see Logging query language (https://docs.cloud.google.com/logging/docs/view/logging-query-language).Only log entries that match the filter are returned. An empty filter matches all log entries in the resources listed in resource_names. Referencing a parent resource that is not listed in resource_names will cause the filter to return no results. The maximum length of a filter is 20,000 characters.To make queries faster, you can make the filter more selective by using restrictions on indexed fields (https://docs.cloud.google.com/logging/docs/view/logging-query-language#indexed-fields) as well as limit the time range of the query by adding range restrictions on the timestamp field.", "type": "string" }, "orderBy": { @@ -10502,7 +10512,7 @@ "readOnly": true }, "errorGroups": { - "description": "Output only. The Error Reporting (https://cloud.google.com/error-reporting) error groups associated with this LogEntry. Error Reporting sets the values for this field during error group creation.For more information, see View error details( https://cloud.google.com/error-reporting/docs/viewing-errors#view_error_details)This field isn't available during log routing (https://cloud.google.com/logging/docs/routing/overview)", + "description": "Output only. The Error Reporting (https://cloud.google.com/error-reporting) error groups associated with this LogEntry. Error Reporting sets the values for this field during error group creation.This field is populated only when log entries are stored in Cloud Logging storage (Logs Explorer and Observability Analytics). It is not available for use in log sink filters, log-based metrics, or log-based alerts, and it is excluded from log exports (Cloud Storage, BigQuery, and Pub/Sub).For more information, see View error details( https://cloud.google.com/error-reporting/docs/viewing-errors#view_error_details)", "items": { "$ref": "LogErrorGroup" }, @@ -10546,6 +10556,14 @@ "$ref": "LogEntryOperation", "description": "Optional. Information about an operation associated with the log entry, if applicable." }, + "otel": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. The structured OpenTelemetry protocol payload. Contains the OpenTelemetry Resource, Instrumentation Scope, and Entities attributes for this log as they are defined in the OTLP specification, and any other fields that do not have a direct analog in the LogEntry. See https://opentelemetry.io/docs/specs/otel/logs/data-model/", + "type": "object" + }, "protoPayload": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", @@ -10607,7 +10625,7 @@ "type": "string" }, "timestamp": { - "description": "Optional. The time the event described by the log entry occurred. This time is used to compute the log entry's age and to enforce the logs retention period. If this field is omitted in a new log entry, then Logging assigns it the current time. Timestamps have nanosecond accuracy, but trailing zeros in the fractional seconds might be omitted when the timestamp is displayed.Incoming log entries must have timestamps that don't exceed the logs retention period (https://cloud.google.com/logging/quotas#logs_retention_periods) in the past, and that don't exceed 24 hours in the future. Log entries outside those time boundaries are rejected by Logging.", + "description": "Optional. The time the event described by the log entry occurred. This time is used to compute the log entry's age and to enforce the logs retention period. If this field is omitted in a new log entry, then Logging assigns it the current time. Timestamps have nanosecond accuracy, but trailing zeros in the fractional seconds might be omitted when the timestamp is displayed.", "format": "google-datetime", "type": "string" }, @@ -10670,7 +10688,7 @@ "id": "LogErrorGroup", "properties": { "id": { - "description": "The id is a unique identifier for a particular error group; it is the last part of the error group resource name: /project/[PROJECT_ID]/errors/[ERROR_GROUP_ID]. Example: COShysOX0r_51QE. The id is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see Google Cloud Privacy Notice (https://cloud.google.com/terms/cloud-privacy-notice).", + "description": "The id is a unique identifier for a particular error group; it is the last part of the error group resource name: /project/[PROJECT_ID]/errors/[ERROR_GROUP_ID]. Example: COShysOX0r_51QE.This field can be used to search for log entries belonging to a specific error group in Logs Explorer (e.g., error_groups.id = \"ID\") or Observability Analytics.The id is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see Google Cloud Privacy Notice (https://cloud.google.com/terms/cloud-privacy-notice).", "type": "string" } }, @@ -11861,7 +11879,7 @@ ], "enumDescriptions": [ "Unexpected default.", - "Indicates suppression occurred due to relevant entries being received in excess of rate limits. For quotas and limits, see Logging API quotas and limits (https://cloud.google.com/logging/quotas#api-limits).", + "Indicates suppression occurred due to relevant entries being received in excess of rate limits. For quotas and limits, see Logging API quotas and limits (https://docs.cloud.google.com/logging/quotas#api-limits).", "Indicates suppression occurred due to the client not consuming responses quickly enough." ], "type": "string" @@ -11884,7 +11902,7 @@ "type": "string" }, "filter": { - "description": "Optional. A filter that chooses which log entries to return. For more information, see Logging query language (https://{$universe.dns_names.final_documentation_domain}/logging/docs/view/logging-query-language).Only log entries that match the filter are returned. An empty filter matches all log entries in the resources listed in resource_names. Referencing a parent resource that is not listed in resource_names will cause the filter to return no results. The maximum length of a filter is 20,000 characters.", + "description": "Optional. A filter that chooses which log entries to return. For more information, see Logging query language (https://docs.cloud.google.com/logging/docs/view/logging-query-language).Only log entries that match the filter are returned. An empty filter matches all log entries in the resources listed in resource_names. Referencing a parent resource that is not listed in resource_names will cause the filter to return no results. The maximum length of a filter is 20,000 characters.", "type": "string" }, "resourceNames": { @@ -11981,7 +11999,7 @@ "type": "boolean" }, "entries": { - "description": "Required. The log entries to send to Logging. The order of log entries in this list does not matter. Values supplied in this method's log_name, resource, and labels fields are copied into those log entries in this list that do not include values for their corresponding fields. For more information, see the LogEntry type.If the timestamp or insert_id fields are missing in log entries, then this method supplies the current time or a unique identifier, respectively. The supplied values are chosen so that, among the log entries that did not supply their own values, the entries earlier in the list will sort before the entries later in the list. See the entries.list method.Log entries with timestamps that are more than the logs retention period (https://cloud.google.com/logging/quotas) in the past or more than 24 hours in the future will not be available when calling entries.list. However, those log entries can still be exported with LogSinks (https://cloud.google.com/logging/docs/api/tasks/exporting-logs).To improve throughput and to avoid exceeding the quota limit (https://cloud.google.com/logging/quotas) for calls to entries.write, you should try to include several log entries in this list, rather than calling this method for each individual log entry.", + "description": "Required. The log entries to send to Logging. The order of log entries in this list does not matter. Values supplied in this method's log_name, resource, and labels fields are copied into those log entries in this list that do not include values for their corresponding fields. For more information, see the LogEntry type.If the timestamp or insert_id fields are missing in log entries, then this method supplies the current time or a unique identifier, respectively. The supplied values are chosen so that, among the log entries that did not supply their own values, the entries earlier in the list will sort before the entries later in the list. See the entries.list method.Log entries with timestamps that are more than the logs retention period (https://docs.cloud.google.com/logging/quotas) in the past or more than 24 hours in the future will not be available when calling entries.list. However, those log entries can still be exported with LogSinks (https://docs.cloud.google.com/logging/docs/routing/overview).To improve throughput and to avoid exceeding the quota limit (https://docs.cloud.google.com/logging/quotas) for calls to entries.write, you should try to include several log entries in this list, rather than calling this method for each individual log entry.", "items": { "$ref": "LogEntry" }, diff --git a/discovery/looker-v1.json b/discovery/looker-v1.json index fe6b5243d17..0c713f8a0bd 100644 --- a/discovery/looker-v1.json +++ b/discovery/looker-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "looker.projects.locations.list", @@ -715,7 +715,7 @@ } } }, - "revision": "20260216", + "revision": "20260326", "rootUrl": "https://looker.googleapis.com/", "schemas": { "AdminSettings": { @@ -975,6 +975,43 @@ }, "type": "object" }, + "IngressIpAllowlistConfig": { + "description": "Ingress IP allowlist configuration.", + "id": "IngressIpAllowlistConfig", + "properties": { + "allowlistRules": { + "description": "Optional. List of IP range rules to allow ingress traffic.", + "items": { + "$ref": "IngressIpAllowlistRule" + }, + "type": "array" + }, + "enabled": { + "description": "Optional. Whether ingress IP allowlist functionality is enabled on the Looker instance.", + "type": "boolean" + }, + "googleServicesEnabled": { + "description": "Optional. Whether google service connections are enabled for the instance.", + "type": "boolean" + } + }, + "type": "object" + }, + "IngressIpAllowlistRule": { + "description": "Ingress IP allowlist rule.", + "id": "IngressIpAllowlistRule", + "properties": { + "description": { + "description": "Optional. Description for the IP range.", + "type": "string" + }, + "ipRange": { + "description": "Optional. The IP range to allow ingress traffic from.", + "type": "string" + } + }, + "type": "object" + }, "Instance": { "description": "A Looker instance.", "id": "Instance", @@ -983,6 +1020,10 @@ "$ref": "AdminSettings", "description": "Looker Instance Admin settings." }, + "catalogIntegrationOptOut": { + "description": "Optional. Indicates whether catalog integration is disabled for the Looker instance.", + "type": "boolean" + }, "classType": { "description": "Optional. Storage class of the instance.", "enum": [ @@ -1040,6 +1081,10 @@ "description": "Optional. Whether Gemini feature is enabled on the Looker instance or not.", "type": "boolean" }, + "ingressIpAllowlistConfig": { + "$ref": "IngressIpAllowlistConfig", + "description": "Optional. Ingress IP allowlist configuration for the Looker instance." + }, "ingressPrivateIp": { "description": "Output only. Private Ingress IP (IPv4).", "readOnly": true, diff --git a/discovery/managedidentities-v1.json b/discovery/managedidentities-v1.json index 695ecdbccce..e5f8607d13b 100644 --- a/discovery/managedidentities-v1.json +++ b/discovery/managedidentities-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "managedidentities.projects.locations.list", @@ -1526,7 +1526,7 @@ } } }, - "revision": "20260202", + "revision": "20260414", "rootUrl": "https://managedidentities.googleapis.com/", "schemas": { "AttachTrustRequest": { diff --git a/discovery/managedidentities-v1alpha1.json b/discovery/managedidentities-v1alpha1.json index 0c1516140ca..916286f42c3 100644 --- a/discovery/managedidentities-v1alpha1.json +++ b/discovery/managedidentities-v1alpha1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "managedidentities.projects.locations.list", @@ -1526,7 +1526,7 @@ } } }, - "revision": "20260202", + "revision": "20260414", "rootUrl": "https://managedidentities.googleapis.com/", "schemas": { "AttachTrustRequest": { diff --git a/discovery/managedidentities-v1beta1.json b/discovery/managedidentities-v1beta1.json index 6520816b162..621aea4fac4 100644 --- a/discovery/managedidentities-v1beta1.json +++ b/discovery/managedidentities-v1beta1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "managedidentities.projects.locations.list", @@ -1526,7 +1526,7 @@ } } }, - "revision": "20260202", + "revision": "20260414", "rootUrl": "https://managedidentities.googleapis.com/", "schemas": { "AttachTrustRequest": { diff --git a/discovery/managedkafka-v1.json b/discovery/managedkafka-v1.json index e1beed9ea06..4d226ae47a9 100644 --- a/discovery/managedkafka-v1.json +++ b/discovery/managedkafka-v1.json @@ -347,7 +347,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "managedkafka.projects.locations.list", @@ -356,7 +356,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -3186,7 +3186,7 @@ } } }, - "revision": "20260129", + "revision": "20260423", "rootUrl": "https://managedkafka.googleapis.com/", "schemas": { "AccessConfig": { @@ -3510,7 +3510,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. Configurations for the worker that are overridden from the defaults. The key of the map is a Kafka Connect worker property name, for example: `exactly.once.source.support`.", + "description": "Optional. Reserved for future use. This field is meant for worker config overrides, but is unsupported for now.", "type": "object" }, "createTime": { diff --git a/discovery/marketingplatformadmin-v1alpha.json b/discovery/marketingplatformadmin-v1alpha.json index 448f87f9d30..eaa7499afff 100644 --- a/discovery/marketingplatformadmin-v1alpha.json +++ b/discovery/marketingplatformadmin-v1alpha.json @@ -140,7 +140,7 @@ ] }, "get": { - "description": "Lookup for a single organization.", + "description": "Looks up a single organization.", "flatPath": "v1alpha/organizations/{organizationsId}", "httpMethod": "GET", "id": "marketingplatformadmin.organizations.get", @@ -194,7 +194,7 @@ ] }, "reportPropertyUsage": { - "description": "Get the usage and billing data for properties within the organization for the specified month. Per direct client org, user needs to be OrgAdmin/BillingAdmin on the organization in order to view the billing and usage data. Per sales partner client org, user needs to be OrgAdmin/BillingAdmin on the sales partner org in order to view the billing and usage data, or OrgAdmin/BillingAdmin on the sales partner client org in order to view the usage data only.", + "description": "Gets the usage and billing data for properties within the organization for the specified month. Per direct client org, user needs to be OrgAdmin/BillingAdmin on the organization in order to view the billing and usage data. Per sales partner client org, user needs to be OrgAdmin/BillingAdmin on the sales partner org in order to view the billing and usage data, or OrgAdmin/BillingAdmin on the sales partner client org in order to view the usage data only.", "flatPath": "v1alpha/organizations/{organizationsId}:reportPropertyUsage", "httpMethod": "POST", "id": "marketingplatformadmin.organizations.reportPropertyUsage", @@ -349,7 +349,7 @@ } } }, - "revision": "20251029", + "revision": "20260303", "rootUrl": "https://marketingplatformadmin.googleapis.com/", "schemas": { "AnalyticsAccountLink": { diff --git a/discovery/meet-v2.json b/discovery/meet-v2.json index c651feb0083..dc94b4eb739 100644 --- a/discovery/meet-v2.json +++ b/discovery/meet-v2.json @@ -387,6 +387,73 @@ } } }, + "smartNotes": { + "methods": { + "get": { + "description": "Gets smart notes by smart note ID.", + "flatPath": "v2/conferenceRecords/{conferenceRecordsId}/smartNotes/{smartNotesId}", + "httpMethod": "GET", + "id": "meet.conferenceRecords.smartNotes.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Resource name of the smart note. Format: conferenceRecords/{conference_record}/smartNotes/{smart_note}", + "location": "path", + "pattern": "^conferenceRecords/[^/]+/smartNotes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "SmartNote" + }, + "scopes": [ + "https://www.googleapis.com/auth/meetings.space.created", + "https://www.googleapis.com/auth/meetings.space.readonly" + ] + }, + "list": { + "description": "Lists the set of smart notes from the conference record. By default, ordered by start time and in ascending order.", + "flatPath": "v2/conferenceRecords/{conferenceRecordsId}/smartNotes", + "httpMethod": "GET", + "id": "meet.conferenceRecords.smartNotes.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. Maximum number of smart notes to return. The service might return fewer than this value. If unspecified, at most 10 smart notes are returned. The maximum value is 100; values above 100 are coerced to 100. Maximum might change in the future.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Page token returned from previous List Call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Format: `conferenceRecords/{conference_record}`", + "location": "path", + "pattern": "^conferenceRecords/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/smartNotes", + "response": { + "$ref": "ListSmartNotesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/meetings.space.created", + "https://www.googleapis.com/auth/meetings.space.readonly" + ] + } + } + }, "transcripts": { "methods": { "get": { @@ -638,7 +705,7 @@ } } }, - "revision": "20250421", + "revision": "20260421", "rootUrl": "https://meet.googleapis.com/", "schemas": { "ActiveConference": { @@ -764,6 +831,21 @@ "properties": {}, "type": "object" }, + "GatewaySipAccess": { + "description": "Details how to join the conference through a SIP gateway.", + "id": "GatewaySipAccess", + "properties": { + "sipAccessCode": { + "description": "The permanent numeric code for manual entry on specially configured devices.", + "type": "string" + }, + "uri": { + "description": "The Session Initiation Protocol (SIP) URI the conference can be reached through. The string is in one of these formats: * \"sip:USER_ID@GATEWAY_ADDRESS\" * \"sips:USER_ID@GATEWAY_ADDRESS\" where USER_ID is the 13-digit universal pin (with the future option to support using a Meet meeting code as well), and GATEWAY_ADDRESS is a valid address to be resolved using a DNS SRV lookup, or a dotted quad.", + "type": "string" + } + }, + "type": "object" + }, "ListConferenceRecordsResponse": { "description": "Response of ListConferenceRecords method.", "id": "ListConferenceRecordsResponse", @@ -841,6 +923,24 @@ }, "type": "object" }, + "ListSmartNotesResponse": { + "description": "Response for ListSmartNotes method.", + "id": "ListSmartNotesResponse", + "properties": { + "nextPageToken": { + "description": "Token to be circulated back for further List call if current List doesn't include all the smart notes. Unset if all smart notes are returned.", + "type": "string" + }, + "smartNotes": { + "description": "List of smart notes in one page.", + "items": { + "$ref": "SmartNote" + }, + "type": "array" + } + }, + "type": "object" + }, "ListTranscriptEntriesResponse": { "description": "Response for ListTranscriptEntries method.", "id": "ListTranscriptEntriesResponse", @@ -999,6 +1099,29 @@ }, "type": "object" }, + "PhoneAccess": { + "description": "Phone access contains information required to dial into a conference using a regional phone number and a PIN that is specific to that phone number.", + "id": "PhoneAccess", + "properties": { + "languageCode": { + "description": "The BCP 47/LDML language code for the language associated with this phone access. To be parsed by the i18n LanguageCode utility. Examples: \"es-419\" for Latin American Spanish, \"fr-CA\" for Canadian French.", + "type": "string" + }, + "phoneNumber": { + "description": "The phone number to dial for this meeting space in E.164 format. Full phone number with a leading '+' character.", + "type": "string" + }, + "pin": { + "description": "The PIN that users must enter after dialing the given number. The PIN consists of only decimal digits and the length may vary.", + "type": "string" + }, + "regionCode": { + "description": "The CLDR/ISO 3166 region code for the country associated with this phone access. To be parsed by the i18n RegionCode utility. Example: \"SE\" for Sweden.", + "type": "string" + } + }, + "type": "object" + }, "PhoneUser": { "description": "User dialing in from a phone where the user's identity is unknown because they haven't signed in with a Google Account.", "id": "PhoneUser", @@ -1095,6 +1218,52 @@ }, "type": "object" }, + "SmartNote": { + "description": "Metadata for a smart note generated from a conference. It refers to the notes generated from Take Notes with Gemini during the conference.", + "id": "SmartNote", + "properties": { + "docsDestination": { + "$ref": "DocsDestination", + "description": "Output only. The Google Doc destination where the smart notes are saved.", + "readOnly": true + }, + "endTime": { + "description": "Output only. Timestamp when the smart notes stopped.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Output only. Identifier. Resource name of the smart notes. Format: `conferenceRecords/{conference_record}/smartNotes/{smart_note}`, where `{smart_note}` is a 1:1 mapping to each unique smart notes session of the conference.", + "readOnly": true, + "type": "string" + }, + "startTime": { + "description": "Output only. Timestamp when the smart notes started.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. Current state.", + "enum": [ + "STATE_UNSPECIFIED", + "STARTED", + "ENDED", + "FILE_GENERATED" + ], + "enumDescriptions": [ + "Default, never used.", + "An active smart notes session has started.", + "This smart notes session has ended, but the smart notes file hasn't been generated yet.", + "Smart notes file is generated and ready to download." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "SmartNotesConfig": { "description": "Configuration related to smart notes in a meeting space. For more information about smart notes, see [\"Take notes for me\" in Google Meet](https://support.google.com/meet/answer/14754931).", "id": "SmartNotesConfig", @@ -1128,6 +1297,14 @@ "$ref": "SpaceConfig", "description": "Configuration pertaining to the meeting space." }, + "gatewaySipAccess": { + "description": "Output only. The SIP-based access methods that can be used to join the conference. Can be empty.", + "items": { + "$ref": "GatewaySipAccess" + }, + "readOnly": true, + "type": "array" + }, "meetingCode": { "description": "Output only. Type friendly unique string used to join the meeting. Format: `[a-z]+-[a-z]+-[a-z]+`. For example, `abc-mnop-xyz`. The maximum length is 128 characters. Can only be used as an alias of the space name to get the space.", "readOnly": true, @@ -1141,6 +1318,14 @@ "name": { "description": "Immutable. Resource name of the space. Format: `spaces/{space}`. `{space}` is the resource identifier for the space. It's a unique, server-generated ID and is case sensitive. For example, `jQCFfuBOdN5z`. For more information, see [How Meet identifies a meeting space](https://developers.google.com/workspace/meet/api/guides/meeting-spaces#identify-meeting-space).", "type": "string" + }, + "phoneAccess": { + "description": "Output only. All regional phone access methods for this meeting space. Can be empty.", + "items": { + "$ref": "PhoneAccess" + }, + "readOnly": true, + "type": "array" } }, "type": "object" diff --git a/discovery/merchantapi-accounts_v1.json b/discovery/merchantapi-accounts_v1.json index 22e01478e2b..64660014c56 100644 --- a/discovery/merchantapi-accounts_v1.json +++ b/discovery/merchantapi-accounts_v1.json @@ -125,6 +125,34 @@ "https://www.googleapis.com/auth/content" ] }, + "createTestAccount": { + "description": "Creates a Merchant Center test account. Test accounts are intended for development and testing purposes, such as validating API integrations or new feature behavior. Key characteristics and limitations of test accounts: - Immutable Type: A test account cannot be converted into a regular (live) Merchant Center account. Likewise, a regular account cannot be converted into a test account. - Non-Serving Products: Any products, offers, or data created within a test account will not be published or made visible to end-users on any Google surfaces. They are strictly for testing environments. - Separate Environment: Test accounts operate in a sandbox-like manner, isolated from live serving and real user traffic.", + "flatPath": "accounts/v1/accounts/{accountsId}:createTestAccount", + "httpMethod": "POST", + "id": "merchantapi.accounts.createTestAccount", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The account resource name to create the test account under. Format: accounts/{account}", + "location": "path", + "pattern": "^accounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "accounts/v1/{+parent}:createTestAccount", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, "delete": { "description": "Deletes the specified account regardless of its type: standalone, advanced account or sub-account. Deleting an advanced account leads to the deletion of all of its sub-accounts. This also deletes the account's [developer registration entity](/merchant/api/reference/rest/accounts_v1/accounts.developerRegistration) and any associated GCP project to the account. Executing this method requires admin access. The deletion succeeds only if the account does not provide services to any other account and has no processed offers. You can use the `force` parameter to override this.", "flatPath": "accounts/v1/accounts/{accountsId}", @@ -588,7 +616,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the developer registration to be created for the merchant account that the GCP will be registered with. Format: `accounts/{account}/developerRegistration`", + "description": "Required. The name of the developer registration to be created for the merchant account that the GCP will be registered with. Format: `accounts/{account}/developerRegistration` The {account} used must be the same account where user calling this API method is directly added to.", "location": "path", "pattern": "^accounts/[^/]+/developerRegistration$", "required": true, @@ -2154,7 +2182,7 @@ ] }, "delete": { - "description": "Deletes a Merchant Center account user. Executing this method requires admin access. The user to be deleted can't be the last admin user of that account. Also a user is protected from deletion if it is managed by Business Manager\"", + "description": "Deletes a Merchant Center account user. Executing this method requires admin access. The user to be deleted can't be the last admin user of that account.", "flatPath": "accounts/v1/accounts/{accountsId}/users/{usersId}", "httpMethod": "DELETE", "id": "merchantapi.accounts.users.delete", @@ -2388,7 +2416,7 @@ ], "enumDescriptions": [ "Default value. This value is unused.", - "Merchant Center application." + "Terms of service for the Merchant Center application." ], "location": "query", "type": "string" @@ -2410,7 +2438,7 @@ } } }, - "revision": "20260223", + "revision": "20260415", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "About": { @@ -2474,7 +2502,7 @@ "type": "object" }, "Account": { - "description": "The `Account` message represents a business's account within Shopping Ads. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on.", + "description": "The `Account` message represents a business's account within Merchant Center. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on.", "id": "Account", "properties": { "accountId": { @@ -3428,7 +3456,7 @@ "type": "array" }, "name": { - "description": "Identifier. The `name` (ID) of the developer registration. Generated by the Content API upon creation of a new `DeveloperRegistration`. The `account` represents the merchant ID of the merchant that owns the registration.", + "description": "Identifier. The `name` (ID) of the developer registration. Generated upon creation of a new `DeveloperRegistration`. The `account` represents the merchant ID of the merchant that owns the registration.", "type": "string" } }, @@ -3588,7 +3616,7 @@ "type": "object" }, "Handshake": { - "description": "The current status of establishing of the service. (for example, pending approval or approved).", + "description": "The current status of establishing of the service. (for example, pending approval, approved, established).", "id": "Handshake", "properties": { "actor": { @@ -3611,12 +3639,14 @@ "enum": [ "APPROVAL_STATE_UNSPECIFIED", "PENDING", + "WAITING", "ESTABLISHED", "REJECTED" ], "enumDescriptions": [ "Unspecified approval status.", "The service was proposed and is waiting to be confirmed.", + "Indicates that the service proposal has been accepted and will be established after a fixed delay set by the service provider.", "Both parties have confirmed the service.", "The service proposal was rejected." ], @@ -4877,7 +4907,7 @@ "type": "object" }, "Program": { - "description": "Defines participation in a given program for the specified account. Programs provide a mechanism for adding functionality to a Merchant Center accounts. A typical example of this is the [Free product listings](https://support.google.com/merchants/answer/13889434) program, which enables products from a business's store to be shown across Google for free. The following list is the available set of program resource IDs accessible through the API: * `checkout` * `free-listings` * `product-ratings` * `shopping-ads` * `youtube-shopping-checkout`", + "description": "Defines participation in a given program for the specified account. Programs provide a mechanism for adding functionality to a Merchant Center accounts. A typical example of this is the [Free product listings](https://support.google.com/merchants/answer/13889434) program, which enables products from a business's store to be shown across Google for free. The following list is the available set of program resource IDs accessible through the API: * `checkout` * `free-listings` * `product-ratings` * `shopping-ads` * `youtube-affiliate` * `youtube-shopping-checkout`", "id": "Program", "properties": { "activeRegionCodes": { @@ -5056,7 +5086,7 @@ "id": "RegisterGcpRequest", "properties": { "developerEmail": { - "description": "Immutable. If the developer email provided is associated with a user in the merchant account provided, the user will be updated to have \"API developer\" access type and the email preference corresponding to that user will be updated to have the new \"API notifications\" preference. If the developer email provided is not associated with any user we will just add it as a contact. The email preference corresponding to that contact will have the new \"API notifications\" preference. Make sure the email used is associated with a Google Account (Google Workspace account or Gmail account) and is not a service account as service accounts can't receive emails.", + "description": "Immutable. Optional field. Developer role can be also added by using `users.update` method. If the developer email provided is associated with a user in the provided merchant account, the user will be updated to have `API_DEVELOPER` `access_rights` and the email preference corresponding to that user will be updated to have the new API notifications preference. If the developer email provided is not associated with any user, it is added as a contact. The email preference corresponding to that contact will have the new API notifications preference. Make sure the email used is associated with a Google Account and is not a service account as service accounts can't receive emails.", "type": "string" } }, @@ -5438,7 +5468,7 @@ ], "enumDescriptions": [ "Default value. This value is unused.", - "Merchant Center application." + "Terms of service for the Merchant Center application." ], "type": "string" }, @@ -5481,7 +5511,7 @@ ], "enumDescriptions": [ "Default value. This value is unused.", - "Merchant Center application." + "Terms of service for the Merchant Center application." ], "type": "string" } diff --git a/discovery/merchantapi-accounts_v1beta.json b/discovery/merchantapi-accounts_v1beta.json index 7759a592bfc..03c30efd532 100644 --- a/discovery/merchantapi-accounts_v1beta.json +++ b/discovery/merchantapi-accounts_v1beta.json @@ -125,6 +125,34 @@ "https://www.googleapis.com/auth/content" ] }, + "createTestAccount": { + "description": "Creates a Merchant Center test account. Test accounts are intended for development and testing purposes, such as validating API integrations or new feature behavior. Key characteristics and limitations of test accounts: - Immutable Type: A test account cannot be converted into a regular (live) Merchant Center account. Likewise, a regular account cannot be converted into a test account. - Non-Serving Products: Any products, offers, or data created within a test account will not be published or made visible to end-users on any Google surfaces. They are strictly for testing environments. - Separate Environment: Test accounts operate in a sandbox-like manner, isolated from live serving and real user traffic.", + "flatPath": "accounts/v1beta/accounts/{accountsId}:createTestAccount", + "httpMethod": "POST", + "id": "merchantapi.accounts.createTestAccount", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The account resource name to create the test account under. Format: accounts/{account}", + "location": "path", + "pattern": "^accounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "accounts/v1beta/{+parent}:createTestAccount", + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, "delete": { "description": "Deletes the specified account regardless of its type: standalone, advanced account or sub-account. Deleting an advanced account leads to the deletion of all of its sub-accounts. This also deletes the account's [developer registration entity](/merchant/api/reference/rest/accounts_v1beta/accounts.developerRegistration) and any associated GCP project to the account. Executing this method requires admin access. The deletion succeeds only if the account does not provide services to any other account and has no processed offers. You can use the `force` parameter to override this.", "flatPath": "accounts/v1beta/accounts/{accountsId}", @@ -588,7 +616,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the developer registration to be created for the merchant account that the GCP will be registered with. Format: `accounts/{account}/developerRegistration`", + "description": "Required. The name of the developer registration to be created for the merchant account that the GCP will be registered with. Format: `accounts/{account}/developerRegistration` The {account} used must be the same account where user calling this API method is directly added to.", "location": "path", "pattern": "^accounts/[^/]+/developerRegistration$", "required": true, @@ -2104,7 +2132,7 @@ ] }, "delete": { - "description": "Deletes a Merchant Center account user. Executing this method requires admin access. The user to be deleted can't be the last admin user of that account. Also a user is protected from deletion if it is managed by Business Manager\"", + "description": "Deletes a Merchant Center account user. Executing this method requires admin access. The user to be deleted can't be the last admin user of that account.", "flatPath": "accounts/v1beta/accounts/{accountsId}/users/{usersId}", "httpMethod": "DELETE", "id": "merchantapi.accounts.users.delete", @@ -2338,7 +2366,7 @@ ], "enumDescriptions": [ "Default value. This value is unused.", - "Merchant Center application." + "Terms of service for the Merchant Center application." ], "location": "query", "type": "string" @@ -2360,7 +2388,7 @@ } } }, - "revision": "20260223", + "revision": "20260415", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "About": { @@ -2424,7 +2452,7 @@ "type": "object" }, "Account": { - "description": "The `Account` message represents a business's account within Shopping Ads. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on.", + "description": "The `Account` message represents a business's account within Merchant Center. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on.", "id": "Account", "properties": { "accountId": { @@ -3305,7 +3333,7 @@ "type": "array" }, "name": { - "description": "Identifier. The `name` (ID) of the developer registration. Generated by the Content API upon creation of a new `DeveloperRegistration`. The `account` represents the merchant ID of the merchant that owns the registration.", + "description": "Identifier. The `name` (ID) of the developer registration. Generated upon creation of a new `DeveloperRegistration`. The `account` represents the merchant ID of the merchant that owns the registration.", "type": "string" } }, @@ -3465,7 +3493,7 @@ "type": "object" }, "Handshake": { - "description": "The current status of establishing of the service. (for example, pending approval or approved).", + "description": "The current status of establishing of the service. (for example, pending approval, approved, established).", "id": "Handshake", "properties": { "actor": { @@ -3488,12 +3516,14 @@ "enum": [ "APPROVAL_STATE_UNSPECIFIED", "PENDING", + "WAITING", "ESTABLISHED", "REJECTED" ], "enumDescriptions": [ "Unspecified approval status.", "The service was proposed and is waiting to be confirmed.", + "Indicates that the service proposal has been accepted and will be established after a fixed delay set by the service provider.", "Both parties have confirmed the service.", "The service proposal was rejected." ], @@ -4754,7 +4784,7 @@ "type": "object" }, "Program": { - "description": "Defines participation in a given program for the specified account. Programs provide a mechanism for adding functionality to a Merchant Center accounts. A typical example of this is the [Free product listings](https://support.google.com/merchants/answer/13889434) program, which enables products from a business's store to be shown across Google for free. The following list is the available set of program resource IDs accessible through the API: * `checkout` * `free-listings` * `product-ratings` * `shopping-ads` * `youtube-shopping-checkout`", + "description": "Defines participation in a given program for the specified account. Programs provide a mechanism for adding functionality to a Merchant Center accounts. A typical example of this is the [Free product listings](https://support.google.com/merchants/answer/13889434) program, which enables products from a business's store to be shown across Google for free. The following list is the available set of program resource IDs accessible through the API: * `checkout` * `free-listings` * `product-ratings` * `shopping-ads` * `youtube-affiliate` * `youtube-shopping-checkout`", "id": "Program", "properties": { "activeRegionCodes": { @@ -4933,7 +4963,7 @@ "id": "RegisterGcpRequest", "properties": { "developerEmail": { - "description": "Immutable. If the developer email provided is associated with a user in the merchant account provided, the user will be updated to have \"API developer\" access type and the email preference corresponding to that user will be updated to have the new \"API notifications\" preference. If the developer email provided is not associated with any user we will just add it as a contact. The email preference corresponding to that contact will have the new \"API notifications\" preference. Make sure the email used is associated with a Google Account (Google Workspace account or Gmail account) and is not a service account as service accounts can't receive emails.", + "description": "Immutable. Optional field. Developer role can be also added by using `users.update` method. If the developer email provided is associated with a user in the provided merchant account, the user will be updated to have `API_DEVELOPER` `access_rights` and the email preference corresponding to that user will be updated to have the new API notifications preference. If the developer email provided is not associated with any user, it is added as a contact. The email preference corresponding to that contact will have the new API notifications preference. Make sure the email used is associated with a Google Account and is not a service account as service accounts can't receive emails.", "type": "string" } }, @@ -5315,7 +5345,7 @@ ], "enumDescriptions": [ "Default value. This value is unused.", - "Merchant Center application." + "Terms of service for the Merchant Center application." ], "type": "string" }, @@ -5358,7 +5388,7 @@ ], "enumDescriptions": [ "Default value. This value is unused.", - "Merchant Center application." + "Terms of service for the Merchant Center application." ], "type": "string" } diff --git a/discovery/merchantapi-datasources_v1.json b/discovery/merchantapi-datasources_v1.json index badead6a5ee..e41d8a1baf2 100644 --- a/discovery/merchantapi-datasources_v1.json +++ b/discovery/merchantapi-datasources_v1.json @@ -321,7 +321,7 @@ } } }, - "revision": "20260223", + "revision": "20260303", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "DataSource": { @@ -745,7 +745,7 @@ "type": "string" }, "feedLabel": { - "description": "Required. Immutable. The feed label of the offers to which the local inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels).", + "description": "Required. Immutable. The feed label of the offers to which the local inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-).", "type": "string" } }, @@ -784,7 +784,7 @@ "type": "array" }, "feedLabel": { - "description": "Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept products without that restriction.", + "description": "Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). For more information about feed label, see [Create a primary data source for products](https://developers.google.com/merchant/api/guides/data-sources/api-sources#create-primary-data-source). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept products without that restriction.", "type": "string" }, "legacyLocal": { @@ -976,7 +976,7 @@ "type": "string" }, "feedLabel": { - "description": "Required. Immutable. The feed label of the offers to which the regional inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels).", + "description": "Required. Immutable. The feed label of the offers to which the regional inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-).", "type": "string" } }, @@ -991,7 +991,7 @@ "type": "string" }, "feedLabel": { - "description": "Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. The fields must be unset for data sources without file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept produts without that restriction.", + "description": "Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. The fields must be unset for data sources without file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept produts without that restriction.", "type": "string" }, "referencingPrimaryDataSources": { diff --git a/discovery/merchantapi-datasources_v1beta.json b/discovery/merchantapi-datasources_v1beta.json index 4b0c4ddebcd..c7cc7a7c445 100644 --- a/discovery/merchantapi-datasources_v1beta.json +++ b/discovery/merchantapi-datasources_v1beta.json @@ -321,7 +321,7 @@ } } }, - "revision": "20260223", + "revision": "20260303", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "DataSource": { @@ -745,7 +745,7 @@ "type": "string" }, "feedLabel": { - "description": "Required. Immutable. The feed label of the offers to which the local inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels).", + "description": "Required. Immutable. The feed label of the offers to which the local inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-).", "type": "string" } }, @@ -800,7 +800,7 @@ "type": "array" }, "feedLabel": { - "description": "Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept products without that restriction.", + "description": "Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). For more information about feed label, see [Create a primary data source for products](https://developers.google.com/merchant/api/guides/data-sources/api-sources#create-primary-data-source). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept products without that restriction.", "type": "string" } }, @@ -988,7 +988,7 @@ "type": "string" }, "feedLabel": { - "description": "Required. Immutable. The feed label of the offers to which the regional inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels).", + "description": "Required. Immutable. The feed label of the offers to which the regional inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-).", "type": "string" } }, @@ -1003,7 +1003,7 @@ "type": "string" }, "feedLabel": { - "description": "Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. The fields must be unset for data sources without file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept produts without that restriction.", + "description": "Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. The fields must be unset for data sources without file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept produts without that restriction.", "type": "string" }, "referencingPrimaryDataSources": { diff --git a/discovery/merchantapi-inventories_v1.json b/discovery/merchantapi-inventories_v1.json index e3ea99b8cdf..9e76f5e6728 100644 --- a/discovery/merchantapi-inventories_v1.json +++ b/discovery/merchantapi-inventories_v1.json @@ -121,7 +121,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the local inventory for the given product to delete. Format: `accounts/{account}/products/{product}/localInventories/{store_code}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` \"store123\", the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a local inventory at `store_code` \"store123\" would be: `accounts/123/products/online~en~US~sku123/localInventories/store123`.", + "description": "Required. The name of the local inventory for the given product to delete. Format: `accounts/{account}/products/{product}/localInventories/{store_code}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` \"store123\", the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+/localInventories/[^/]+$", "required": true, @@ -146,7 +146,7 @@ ], "parameters": { "parent": { - "description": "Required. The account and product where this inventory will be inserted. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", + "description": "Required. The account and product where this inventory will be inserted. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -185,7 +185,7 @@ "type": "string" }, "parent": { - "description": "Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", + "description": "Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -214,7 +214,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account}/products/{product}/regionalInventories/{region}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` \"region123\", the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a regional inventory in `region` \"region123\" would be: `accounts/123/products/online~en~US~sku123/regionalInventories/region123`.", + "description": "Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account}/products/{product}/regionalInventories/{region}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` \"region123\", the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+/regionalInventories/[^/]+$", "required": true, @@ -239,7 +239,7 @@ ], "parameters": { "parent": { - "description": "Required. The account and product where this inventory will be inserted. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", + "description": "Required. The account and product where this inventory will be inserted. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -278,7 +278,7 @@ "type": "string" }, "parent": { - "description": "Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", + "description": "Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -300,7 +300,7 @@ } } }, - "revision": "20260223", + "revision": "20260408", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Empty": { @@ -408,12 +408,17 @@ "readOnly": true, "type": "string" }, + "base64EncodedName": { + "description": "Output only. The unpadded base64url encoded name of the `LocalInventory` resource. Format: `accounts/{account}/products/{product}/localInventories/{store_code}` where the `{product}` segment is the unpadded base64url encoded value of the identifier of the form `content_language~feed_label~offer_id`. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123` for the decoded product ID `en~US~sku/123` and `store_code` \"store123\". Can be used directly as input to the API methods that require the local product identifier within the local inventory name to be encoded if it contains special characters, for example [`GetLocalInventory`](https://developers.google.com/merchant/api/reference/rest/inventories_v1/accounts.products.localInventories/get).", + "readOnly": true, + "type": "string" + }, "localInventoryAttributes": { "$ref": "LocalInventoryAttributes", "description": "Optional. A list of local inventory attributes." }, "name": { - "description": "Output only. The name of the `LocalInventory` resource. Format: `accounts/{account}/products/{product}/localInventories/{store_code}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` \"store123\", the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a local inventory at `store_code` \"store123\" would be: `accounts/123/products/online~en~US~sku123/localInventories/store123`.", + "description": "Output only. The name of the `LocalInventory` resource. Format: `accounts/{account}/products/{product}/localInventories/{store_code}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` \"store123\", the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "readOnly": true, "type": "string" }, @@ -702,8 +707,13 @@ "readOnly": true, "type": "string" }, + "base64EncodedName": { + "description": "Output only. The unpadded base64url encoded name of the `RegionalInventory` resource. Format: `accounts/{account}/products/{product}/regionalInventories/{region}` where the `{product}` segment is the unpadded base64url encoded value of the identifier of the form `content_language~feed_label~offer_id`. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123` for the decoded product ID `en~US~sku/123` and `region` \"region123\". Can be used directly as input to the API methods that require the product identifier within the regional inventory name to be encoded if it contains special characters, for example [`GetRegionalInventory`](https://developers.google.com/merchant/api/reference/rest/inventories_v1/accounts.products.regionalInventories/get).", + "readOnly": true, + "type": "string" + }, "name": { - "description": "Output only. The name of the `RegionalInventory` resource. Format: `accounts/{account}/products/{product}/regionalInventories/{region}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` \"region123\", the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a regional inventory in `region` \"region123\" would be: `accounts/123/products/online~en~US~sku123/regionalInventories/region123`.", + "description": "Output only. The name of the `RegionalInventory` resource. Format: `accounts/{account}/products/{product}/regionalInventories/{region}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` \"region123\", the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "readOnly": true, "type": "string" }, diff --git a/discovery/merchantapi-inventories_v1beta.json b/discovery/merchantapi-inventories_v1beta.json index 2230ec75e39..6b1c1fc5d63 100644 --- a/discovery/merchantapi-inventories_v1beta.json +++ b/discovery/merchantapi-inventories_v1beta.json @@ -121,7 +121,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the local inventory for the given product to delete. Format: `accounts/{account}/products/{product}/localInventories/{store_code}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` \"store123\", the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a local inventory at `store_code` \"store123\" would be: `accounts/123/products/online~en~US~sku123/localInventories/store123`.", + "description": "Required. The name of the local inventory for the given product to delete. Format: `accounts/{account}/products/{product}/localInventories/{store_code}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` \"store123\", the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+/localInventories/[^/]+$", "required": true, @@ -146,7 +146,7 @@ ], "parameters": { "parent": { - "description": "Required. The account and product where this inventory will be inserted. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", + "description": "Required. The account and product where this inventory will be inserted. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -185,7 +185,7 @@ "type": "string" }, "parent": { - "description": "Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", + "description": "Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -214,7 +214,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account}/products/{product}/regionalInventories/{region}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` \"region123\", the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a regional inventory in `region` \"region123\" would be: `accounts/123/products/online~en~US~sku123/regionalInventories/region123`.", + "description": "Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account}/products/{product}/regionalInventories/{region}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` \"region123\", the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+/regionalInventories/[^/]+$", "required": true, @@ -239,7 +239,7 @@ ], "parameters": { "parent": { - "description": "Required. The account and product where this inventory will be inserted. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", + "description": "Required. The account and product where this inventory will be inserted. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -278,7 +278,7 @@ "type": "string" }, "parent": { - "description": "Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", + "description": "Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -300,7 +300,7 @@ } } }, - "revision": "20260223", + "revision": "20260411", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "CustomAttribute": { @@ -398,6 +398,11 @@ "description": "Availability of the product at this store. For accepted attribute values, see the [local product inventory data specification](https://support.google.com/merchants/answer/3061342)", "type": "string" }, + "base64EncodedName": { + "description": "Output only. The unpadded base64url encoded name of the `LocalInventory` resource. Format: `accounts/{account}/products/{product}/localInventories/{store_code}` where the `{product}` segment is the unpadded base64url encoded value of the identifier of the form `content_language~feed_label~offer_id`. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123` for the decoded product ID `en~US~sku/123` and `store_code` \"store123\". Can be used directly as input to the API methods that require the local product identifier within the local inventory name to be encoded if it contains special characters, for example [`GetLocalInventory`](https://developers.google.com/merchant/api/reference/rest/inventories_v1beta/accounts.products.localInventories/get).", + "readOnly": true, + "type": "string" + }, "customAttributes": { "deprecated": true, "description": "A list of custom (merchant-provided) attributes. You can also use `CustomAttribute` to submit any attribute of the data specification in its generic form.", @@ -411,7 +416,7 @@ "type": "string" }, "name": { - "description": "Output only. The name of the `LocalInventory` resource. Format: `accounts/{account}/products/{product}/localInventories/{store_code}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` \"store123\", the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a local inventory at `store_code` \"store123\" would be: `accounts/123/products/online~en~US~sku123/localInventories/store123`.", + "description": "Output only. The name of the `LocalInventory` resource. Format: `accounts/{account}/products/{product}/localInventories/{store_code}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` \"store123\", the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "readOnly": true, "type": "string" }, @@ -630,6 +635,11 @@ "description": "Availability of the product in this region. For accepted attribute values, see the [regional product inventory data specification](https://support.google.com/merchants/answer/14644124).", "type": "string" }, + "base64EncodedName": { + "description": "Output only. The unpadded base64url encoded name of the `RegionalInventory` resource. Format: `accounts/{account}/products/{product}/regionalInventories/{region}` where the `{product}` segment is the unpadded base64url encoded value of the identifier of the form `content_language~feed_label~offer_id`. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123` for the decoded product ID `en~US~sku/123` and `region` \"region123\". Can be used directly as input to the API methods that require the product identifier within the regional inventory name to be encoded if it contains special characters, for example [`GetRegionalInventory`](https://developers.google.com/merchant/api/reference/rest/inventories_v1beta/accounts.products.regionalInventories/get).", + "readOnly": true, + "type": "string" + }, "customAttributes": { "deprecated": true, "description": "A list of custom (merchant-provided) attributes. You can also use `CustomAttribute` to submit any attribute of the data specification in its generic form.", @@ -639,7 +649,7 @@ "type": "array" }, "name": { - "description": "Output only. The name of the `RegionalInventory` resource. Format: `accounts/{account}/products/{product}/regionalInventories/{region}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` \"region123\", the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a regional inventory in `region` \"region123\" would be: `accounts/123/products/online~en~US~sku123/regionalInventories/region123`.", + "description": "Output only. The name of the `RegionalInventory` resource. Format: `accounts/{account}/products/{product}/regionalInventories/{region}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` \"region123\", the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "readOnly": true, "type": "string" }, diff --git a/discovery/merchantapi-issueresolution_v1.json b/discovery/merchantapi-issueresolution_v1.json index 6987e911c15..63f80c20ea0 100644 --- a/discovery/merchantapi-issueresolution_v1.json +++ b/discovery/merchantapi-issueresolution_v1.json @@ -209,7 +209,7 @@ "type": "string" }, "name": { - "description": "Required. The name of the product. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", + "description": "Required. The name of the product. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -233,7 +233,7 @@ ] }, "triggeraction": { - "description": "Start an action. The action can be requested by a business in third-party application. Before the business can request the action, the third-party application needs to show them action specific content and display a user input form. Access to the `triggeraction` method is restricted to an allowlist. You can request access using [Trigger action allowlist form](https://docs.google.com/forms/d/e/1FAIpQLSfeV_sBW9MBQv9BMTV6JZ1g11PGHLdHsrefca-9h0LmpU7CUg/viewform?usp=sharing). The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user.", + "description": "Start an action. The action can be requested by a business in third-party application. Before the business can request the action, the third-party application needs to show them action specific content and display a user input form. Access to the `triggeraction` method is restricted to an allowlist. You can submit an allowlist request in the [Shopping API Support Form](https://support.google.com/merchants/contact/shopping_api_support_form) under \"What is the issue/question?\" to get access to this feature. The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user.", "flatPath": "issueresolution/v1/accounts/{accountsId}:triggeraction", "httpMethod": "POST", "id": "merchantapi.issueresolution.triggeraction", @@ -268,7 +268,7 @@ } } }, - "revision": "20260223", + "revision": "20260429", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Action": { diff --git a/discovery/merchantapi-issueresolution_v1beta.json b/discovery/merchantapi-issueresolution_v1beta.json index 6969ac6bd66..aa4989cb50a 100644 --- a/discovery/merchantapi-issueresolution_v1beta.json +++ b/discovery/merchantapi-issueresolution_v1beta.json @@ -209,7 +209,7 @@ "type": "string" }, "name": { - "description": "Required. The name of the product. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", + "description": "Required. The name of the product. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -233,7 +233,7 @@ ] }, "triggeraction": { - "description": "Start an action. The action can be requested by a business in third-party application. Before the business can request the action, the third-party application needs to show them action specific content and display a user input form. Access to the `triggeraction` method is restricted to an allowlist. You can request access using [Trigger action allowlist form](https://docs.google.com/forms/d/e/1FAIpQLSfeV_sBW9MBQv9BMTV6JZ1g11PGHLdHsrefca-9h0LmpU7CUg/viewform?usp=sharing). The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user.", + "description": "Start an action. The action can be requested by a business in third-party application. Before the business can request the action, the third-party application needs to show them action specific content and display a user input form. Access to the `triggeraction` method is restricted to an allowlist. You can submit an allowlist request in the [Shopping API Support Form](https://support.google.com/merchants/contact/shopping_api_support_form) under \"What is the issue/question?\" to get access to this feature. The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user.", "flatPath": "issueresolution/v1beta/accounts/{accountsId}:triggeraction", "httpMethod": "POST", "id": "merchantapi.issueresolution.triggeraction", @@ -268,7 +268,7 @@ } } }, - "revision": "20260223", + "revision": "20260429", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Action": { diff --git a/discovery/merchantapi-products_v1.json b/discovery/merchantapi-products_v1.json index 70a20c8da57..17adcfe76cf 100644 --- a/discovery/merchantapi-products_v1.json +++ b/discovery/merchantapi-products_v1.json @@ -124,7 +124,7 @@ "type": "string" }, "name": { - "description": "Required. The name of the product input to delete. Format: `accounts/{account}/productInputs/{productInput}` The {productInput} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productInput} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productInput}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productInput}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productInput}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productInput}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`.", + "description": "Required. The name of the product input to delete. Format: `accounts/{account}/productInputs/{productInput}` The {productInput} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productInput} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productInput}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productInput}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productInput}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productInput}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/productInputs/[^/]+$", "required": true, @@ -187,7 +187,7 @@ "type": "string" }, "name": { - "description": "Identifier. The name of the product. Format: `accounts/{account}/productInputs/{productinput}` The {productinput} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productinputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productinput}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`.", + "description": "Identifier. The name of the product. Format: `accounts/{account}/productInputs/{productinput}` The {productinput} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productinput}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/productInputs/[^/]+$", "required": true, @@ -225,7 +225,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the product. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", + "description": "Required. The name of the product. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -281,7 +281,7 @@ } } }, - "revision": "20260223", + "revision": "20260501", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "AutomatedDiscounts": { @@ -631,6 +631,30 @@ }, "type": "object" }, + "Co2Emissions": { + "description": "The co2 emission of the vehicle.", + "id": "Co2Emissions", + "properties": { + "unit": { + "description": "The unit of the co2 emission.", + "enum": [ + "UNIT_UNSPECIFIED", + "GPERKM" + ], + "enumDescriptions": [ + "Unspecified unit.", + "Grams per km." + ], + "type": "string" + }, + "value": { + "description": "The co2 emission value.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "CustomAttribute": { "description": "A message that represents custom attributes. Exactly one of `value` or `group_values` must not be empty.", "id": "CustomAttribute", @@ -757,6 +781,30 @@ "properties": {}, "type": "object" }, + "EnergyConsumption": { + "description": "The energy consumption of the vehicle.", + "id": "EnergyConsumption", + "properties": { + "unit": { + "description": "The unit of the energy consumption.", + "enum": [ + "UNIT_UNSPECIFIED", + "KWHPER100KM" + ], + "enumDescriptions": [ + "Unspecified unit.", + "Kilowatt hours per 100 km." + ], + "type": "string" + }, + "value": { + "description": "The energy consumption value.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, "FreeShippingThreshold": { "description": "Conditions to be met for a product to have free shipping.", "id": "FreeShippingThreshold", @@ -772,6 +820,32 @@ }, "type": "object" }, + "FuelConsumption": { + "description": "The fuel consumption of the vehicle.", + "id": "FuelConsumption", + "properties": { + "unit": { + "description": "The unit of the fuel consumption.", + "enum": [ + "UNIT_UNSPECIFIED", + "LPER100KM", + "KGPER100KM" + ], + "enumDescriptions": [ + "Unspecified unit.", + "Liter per 100 km.", + "Kilograms per 100 km." + ], + "type": "string" + }, + "value": { + "description": "The fuel consumption value.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, "HandlingCutoffTime": { "description": "Configuration for offer or offer-country level shipping handling cutoff time.", "id": "HandlingCutoffTime", @@ -1011,6 +1085,32 @@ }, "type": "object" }, + "Mileage": { + "description": "The mileage of the vehicle.", + "id": "Mileage", + "properties": { + "unit": { + "description": "The unit of the mileage.", + "enum": [ + "UNIT_UNSPECIFIED", + "MILES", + "KM" + ], + "enumDescriptions": [ + "Unspecified unit.", + "Miles.", + "Kilometers." + ], + "type": "string" + }, + "value": { + "description": "The distance value.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "Price": { "description": "The price represented as a number and currency.", "id": "Price", @@ -1036,6 +1136,11 @@ "description": "Output only. The automated discounts information for the product.", "readOnly": true }, + "base64EncodedName": { + "description": "Output only. The **unpadded base64url encoded name** of the product. Format: `accounts/{account}/products/{product}` where the last section `product` is the unpadded base64url encoding of the `content_language~feed_label~offer_id` name. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw` for the decoded product name `accounts/123/products/en~US~sku/123`. This field can be used directly as input to the API methods that require the product name to be encoded if it contains special characters, for example [`GetProduct`](https://developers.google.com/merchant/api/reference/rest/products_v1/accounts.products/get).", + "readOnly": true, + "type": "string" + }, "contentLanguage": { "description": "Output only. The two-letter [ISO 639-1](http://en.wikipedia.org/wiki/ISO_639-1) language code for the product.", "readOnly": true, @@ -1171,6 +1276,78 @@ "format": "google-datetime", "type": "string" }, + "bodyStyle": { + "description": "The [body style](https://support.google.com/google-ads/answer/14157085) of the vehicle.", + "enum": [ + "VEHICLE_BODY_STYLE_UNSPECIFIED", + "ATV_SPORT", + "ATV_TOURING", + "ATV_UTILITY", + "ATV_YOUTH", + "CITY_CAR", + "CLASS_A_MOTORHOME", + "CLASS_B_MOTORHOME", + "CLASS_C_MOTORHOME", + "COMPACT_SUV", + "CONVERTIBLE", + "COUPE", + "CROSSOVER", + "FIFTH_WHEEL", + "FULL_SIZE_VAN", + "HATCHBACK", + "LIMOUSINE", + "MINIVAN", + "NOTCHBACK", + "POP_UP_CAMPER", + "SEDAN", + "SIDE_BY_SIDE", + "STATION_WAGON", + "SUV", + "TRAVEL_TRAILER", + "TRUCK", + "TRUCK_CAMPER", + "UTE", + "UTV_RECREATIONAL_UTILITY", + "UTV_SPORT", + "UTV_UTILITY", + "UTV_YOUTH" + ], + "enumDescriptions": [ + "Unspecified vehicle body style.", + "ATV Sport.", + "ATV Touring.", + "ATV Utility.", + "ATV Youth.", + "City car.", + "Class A motorhome.", + "Class B motorhome.", + "Class C motorhome.", + "Compact SUV.", + "Convertible.", + "Coupe.", + "Crossover.", + "Fifth wheel.", + "Full size van.", + "Hatchback.", + "Limousine.", + "Minivan.", + "Notchback.", + "Pop up camper.", + "Sedan.", + "Side by side.", + "Station wagon.", + "SUV.", + "Travel trailer.", + "Truck.", + "Truck camper.", + "Ute.", + "UTV Recreational utility.", + "UTV Sport.", + "UTV Utility.", + "UTV Youth." + ], + "type": "string" + }, "brand": { "description": "[Brand](https://support.google.com/merchants/answer/6324351) of the item. For example, \"Google\".", "type": "string" @@ -1193,6 +1370,10 @@ }, "type": "array" }, + "certifiedPreOwned": { + "description": "Whether the vehicle is OEM [certified pre-owned](https://support.google.com/google-ads/answer/14156475).", + "type": "boolean" + }, "cloudExportAdditionalProperties": { "description": "Extra fields to export to the Cloud Retail program.", "items": { @@ -1200,6 +1381,10 @@ }, "type": "array" }, + "co2Emissions": { + "$ref": "Co2Emissions", + "description": "The [co2 emission](https://support.google.com/google-ads/answer/14546146) of the vehicle." + }, "color": { "description": "[Color](https://support.google.com/merchants/answer/6324487) of the item. For example, \"red\".", "type": "string" @@ -1244,6 +1429,10 @@ "description": "[Custom label 4](https://support.google.com/merchants/answer/6324473) for custom grouping of items in a Shopping campaign.", "type": "string" }, + "dateFirstRegistered": { + "description": "The date the vehicle was first registered. Format: `YYYY-MM`. See the [Date first registered](https://support.google.com/google-ads/answer/14546138) for more information.", + "type": "string" + }, "description": { "description": "Description of the item.", "type": "string" @@ -1277,6 +1466,48 @@ "format": "double", "type": "number" }, + "electricRange": { + "$ref": "Mileage", + "description": "The [electric range](https://support.google.com/google-ads/answer/15162232) of the vehicle in miles/kms." + }, + "emissionsStandard": { + "description": "The [emission standard](https://support.google.com/google-ads/answer/14869021) of the vehicle.", + "enum": [ + "EMISSIONS_STANDARD_UNSPECIFIED", + "ZERO_EMISSIONS", + "EURO1", + "EURO2", + "EURO3", + "EURO4", + "EURO5", + "EURO5B", + "EURO6", + "EURO6C", + "EURO6D", + "EURO6D_TEMP", + "EURO6E" + ], + "enumDescriptions": [ + "Unspecified emission standard.", + "Zero emissions.", + "Euro 1.", + "Euro 2.", + "Euro 3.", + "Euro 4.", + "Euro 5.", + "Euro 5b.", + "Euro 6.", + "Euro 6c.", + "Euro 6d.", + "Euro 6d-TEMP.", + "Euro 6e." + ], + "type": "string" + }, + "energyConsumption": { + "$ref": "EnergyConsumption", + "description": "The [energy consumption](https://support.google.com/google-ads/answer/14546149) of the vehicle." + }, "energyEfficiencyClass": { "description": "The [energy efficiency class](https://support.google.com/merchants/answer/7562785) as defined in EU directive 2010/30/EU.", "enum": [ @@ -1307,6 +1538,34 @@ ], "type": "string" }, + "engine": { + "description": "The [engine](https://support.google.com/google-ads/answer/14156068) type of the vehicle.", + "enum": [ + "ENGINE_TYPE_UNSPECIFIED", + "GASOLINE", + "DIESEL", + "ELECTRIC", + "HYBRID", + "PLUG_IN_HYBRID", + "NATURAL_GAS", + "LPG", + "METHANE", + "OTHER" + ], + "enumDescriptions": [ + "Unspecified engine type.", + "Gasoline.", + "Diesel.", + "Electric.", + "Hybrid.", + "Plug-in hybrid.", + "Natural gas.", + "LPG.", + "Methane.", + "Other." + ], + "type": "string" + }, "excludedDestinations": { "description": "The list of destinations to exclude for this target (corresponds to unchecked check boxes in Merchant Center). For more information, see [Excluded destination](https://support.google.com/merchants/answer/6324486). Note: We recommend setting destinations on datasources level for most use cases. Use this field within products to only setup exceptions.", "items": { @@ -1360,6 +1619,14 @@ }, "type": "array" }, + "fuelConsumption": { + "$ref": "FuelConsumption", + "description": "The [fuel consumption](https://support.google.com/google-ads/answer/14543580) of the vehicle." + }, + "fuelConsumptionDischargedBattery": { + "$ref": "FuelConsumption", + "description": "The fuel consumption of the vehicle when the hybrid battery is discharged. See the [Help Center article](https://support.google.com/google-ads/answer/15162033) for more information." + }, "gender": { "description": "Target [gender](https://support.google.com/merchants/answer/6324479) of the item.", "enum": [ @@ -1381,7 +1648,7 @@ "type": "string" }, "gtins": { - "description": "Global Trade Item Numbers ([GTIN](https://support.google.com/merchants/answer/188494#gtin)) of the item. You can provide up to 10 GTINs.", + "description": "Global Trade Item Numbers ([GTIN](https://support.google.com/merchants/answer/6324461)) of the item. You can provide up to 10 GTINs.", "items": { "type": "string" }, @@ -1520,6 +1787,10 @@ "$ref": "Price", "description": "Maximum retail price (MRP) of the item. Applicable to India only." }, + "mileage": { + "$ref": "Mileage", + "description": "The number of miles/kms on the vehicle. See the [Mileage](https://support.google.com/google-ads/answer/14156166) for more information." + }, "minEnergyEfficiencyClass": { "description": "The [energy efficiency class](https://support.google.com/merchants/answer/7562785) as defined in EU directive 2010/30/EU.", "enum": [ @@ -1555,6 +1826,13 @@ "format": "int64", "type": "string" }, + "minimumOrderValues": { + "description": "The [minimum value](https://support.google.com/merchants/answer/16989009) in the cart before a customer can initiate checkout. Supports multiple minimum order values. Different minimum order values can be specified per country, service and surface. Maximum entries: 100.", + "items": { + "$ref": "ProductMinimumOrderValue" + }, + "type": "array" + }, "mobileLink": { "description": "URL for the mobile-optimized version of your item's landing page.", "type": "string" @@ -1563,8 +1841,12 @@ "description": "[Link template](https://support.google.com/merchants/answer/13870216) for business hosted local storefront optimized for mobile devices.", "type": "string" }, + "model": { + "description": "The [Model](https://support.google.com/google-ads/answer/14154511) of the vehicle, such as `LX`, `EX`, and others.", + "type": "string" + }, "mpn": { - "description": "Manufacturer Part Number ([MPN](https://support.google.com/merchants/answer/188494#mpn)) of the item.", + "description": "Manufacturer Part Number ([MPN](https://support.google.com/merchants/answer/6324482)) of the item.", "type": "string" }, "multipack": { @@ -1682,6 +1964,10 @@ }, "type": "array" }, + "returnPolicyLabel": { + "description": "The return label of the product, used to group products in account-level return policies. Max. 100 characters. For more information, see [Return policy label](https://support.google.com/merchants/answer/9445425).", + "type": "string" + }, "salePrice": { "$ref": "Price", "description": "Advertised sale price of the item." @@ -1714,7 +2000,7 @@ "description": "Height of the item for shipping." }, "shippingLabel": { - "description": "The shipping label of the product, used to group product in account-level shipping rules.", + "description": "The shipping label of the product, used to group products in account-level shipping rules. Max. 100 characters. For more information, see [Shipping label](https://support.google.com/merchants/answer/6324504).", "type": "string" }, "shippingLength": { @@ -1831,6 +2117,10 @@ "description": "The transit time label of the product, used to group product in account-level transit time tables.", "type": "string" }, + "trim": { + "description": "The [Trim](https://support.google.com/google-ads/answer/14154176) of the vehicle model, such as `S`, `SV`, `SL` and others.", + "type": "string" + }, "unitPricingBaseMeasure": { "$ref": "UnitPricingBaseMeasure", "description": "The preference of the denominator of the unit price." @@ -1839,9 +2129,65 @@ "$ref": "UnitPricingMeasure", "description": "The measure and dimension of an item." }, + "vehicleAllInPrice": { + "$ref": "Price", + "description": "The all-in advertised price for a vehicle, which includes costs for the following – any accessories attached to the vehicle, environmental levies, extra warranty, fuel, freight, pre-delivery inspection (PDI), dealer fees for handling licensing, provincial regulatory fees, miscellaneous dealer charges for security etching and nitrogen tire fill, and factory-to-customer or dealer-to-customer discounts or incentives. See the [Vehicle all-in price](https://support.google.com/google-ads/answer/14156981) for more information." + }, + "vehicleExpenses": { + "$ref": "Price", + "description": "The miscellaneous expenses like insurance and registration fees of the vehicle. See the [Vehicle expenses](https://support.google.com/google-ads/answer/15957154) for more information." + }, + "vehicleMandatoryInspectionIncluded": { + "description": "Whether the vehicle is sold with mandatory inspection and maintenance performed before delivery. See the [Vehicle mandatory inspection included](https://support.google.com/google-ads/answer/15956630) for more information.`", + "type": "boolean" + }, + "vehicleMsrp": { + "$ref": "Price", + "description": "The MSRP (Manufacturer Suggested Retail Price) for the vehicle in its current configuration. See the [Vehicle MSRP](https://support.google.com/google-ads/answer/14154171) for more information." + }, + "vehiclePriceType": { + "description": "The [price type](https://support.google.com/google-ads/answer/14592783) of the vehicle.", + "enum": [ + "VEHICLE_PRICE_TYPE_UNSPECIFIED", + "ALL_IN_PRICE", + "DRIVE_AWAY_PRICE", + "ESTIMATED_DRIVE_AWAY_PRICE", + "EXCLUDING_GOVERNMENT_CHARGES_PRICE", + "VEHICLE_BASE_PRICE" + ], + "enumDescriptions": [ + "Unspecified vehicle price type.", + "All in price.", + "Drive away price.", + "Estimated drive away price.", + "Excluding government charges price.", + "Vehicle base price." + ], + "type": "string" + }, + "videoLinks": { + "description": "Optional. A list of video URLs for the item. Use this attribute to provide more visuals for your product beyond your image attributes. See the [Help Center article](https://support.google.com/merchants/answer/15216925) for more information.", + "items": { + "type": "string" + }, + "type": "array" + }, + "vin": { + "description": "The [Vehicle Identification Number (VIN)](https://support.google.com/google-ads/answer/14154510) of the vehicle.", + "type": "string" + }, "virtualModelLink": { "description": "URL of the 3D image of the item. See the [Help Center article](https://support.google.com/merchants/answer/13674896) for more information.", "type": "string" + }, + "warranty": { + "$ref": "Warranty", + "description": "The [warranty](https://support.google.com/google-ads/answer/15957626) of the vehicle." + }, + "year": { + "description": "The [Year](https://support.google.com/google-ads/answer/14152816) of the vehicle model.", + "format": "int64", + "type": "string" } }, "type": "object" @@ -2029,6 +2375,16 @@ "description": "This resource represents input data you submit for a product, not the processed product that you see in Merchant Center, in Shopping ads, or across Google surfaces. Product inputs, rules and supplemental data source data are combined to create the processed Product. For more information, see [Manage products](/merchant/api/guides/products/overview). Required product input attributes to pass data validation checks are primarily defined in the [Products Data Specification](https://support.google.com/merchants/answer/188494). The following attributes are required: feedLabel, contentLanguage and offerId. After inserting, updating, or deleting a product input, it may take several minutes before the processed product can be retrieved. All fields in the product input and its sub-messages match the English name of their corresponding attribute in the [Products Data Specification](https://support.google.com/merchants/answer/188494) with [some exceptions](https://support.google.com/merchants/answer/7052112). The following reference documentation lists the field names in the **camelCase** casing style while the Products Data Specification lists the names in the **snake_case** casing style.", "id": "ProductInput", "properties": { + "base64EncodedName": { + "description": "Output only. The **unpadded base64url encoded name** of the product input. Format: `accounts/{account}/productInputs/{productinput}` where the last section `productinput` is the unpadded base64url encoding of the `content_language~feed_label~offer_id` name. Example: `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw` for the decoded product input name `accounts/123/productInputs/en~US~sku/123`. This field can be used directly as input to the API methods that require the product input name to be encoded if it contains special characters, for example [`GetProductInput`](https://developers.google.com/merchant/api/reference/rest/products_v1/accounts.productInputs/get).", + "readOnly": true, + "type": "string" + }, + "base64EncodedProduct": { + "description": "Output only. The **unpadded base64url encoded name** of the processed product. Format: `accounts/{account}/products/{product}` where the last section `product` is the unpadded base64url encoding of the `content_language~feed_label~offer_id` name. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw` for the decoded product name `accounts/123/products/en~US~sku/123`. This field can be used directly as input to the API methods that require the product name to be encoded if it contains special characters, for example [`GetProduct`](https://developers.google.com/merchant/api/reference/rest/products_v1/accounts.products/get).", + "readOnly": true, + "type": "string" + }, "contentLanguage": { "description": "Required. Immutable. The two-letter [ISO 639-1](http://en.wikipedia.org/wiki/ISO_639-1) language code for the product.", "type": "string" @@ -2049,7 +2405,7 @@ "type": "boolean" }, "name": { - "description": "Identifier. The name of the product. Format: `accounts/{account}/productInputs/{productinput}` The {productinput} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productinputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productinput}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`.", + "description": "Identifier. The name of the product. Format: `accounts/{account}/productInputs/{productinput}` The {productinput} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productinput}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput}` segment is used to differentiate between the two formats.", "type": "string" }, "offerId": { @@ -2081,6 +2437,11 @@ "$ref": "Price", "description": "The amount the buyer has to pay per month." }, + "annualPercentageRate": { + "description": "Optional. Annual percentage rate for `credit_type` finance", + "format": "double", + "type": "number" + }, "creditType": { "description": "Type of installment payments.", "enum": [ @@ -2103,6 +2464,45 @@ "description": "The number of installments the buyer has to pay.", "format": "int64", "type": "string" + }, + "totalAmount": { + "$ref": "Price", + "description": "Optional. Total amount the buyer has to pay, including interest." + } + }, + "type": "object" + }, + "ProductMinimumOrderValue": { + "description": "The minimum order value in the cart before the checkout is permitted.", + "id": "ProductMinimumOrderValue", + "properties": { + "country": { + "description": "Required. The [CLDR territory code](http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml) of the country to which an item will ship.", + "type": "string" + }, + "price": { + "$ref": "Price", + "description": "Required. The minimum cart or basket value before the checkout is permitted." + }, + "service": { + "description": "A free-form description of the service class or delivery speed. This should match the service value set for the Shipping attribute. See service.", + "type": "string" + }, + "surface": { + "description": "The surface to which the minimum order value applies. Defaults to `ONLINE_LOCAL` if not configured.", + "enum": [ + "SURFACE_UNSPECIFIED", + "ONLINE", + "LOCAL", + "ONLINE_LOCAL" + ], + "enumDescriptions": [ + "Surface is unspecified.", + "Surface value to indicate online purchases.", + "Surface value to indicate local purchases.", + "Surface value to indicate online and local purchases." + ], + "type": "string" } }, "type": "object" @@ -2278,6 +2678,14 @@ "format": "int64", "type": "string" }, + "loyaltyProgramLabel": { + "description": "Optional. The label of the [loyalty program](https://support.google.com/merchants/answer/6324484). Must match one of the program labels set in loyalty_programs. When set (in combination with [loyalty_tier_label](https://support.google.com/merchants/answer/6324484)), this shipping option is only applicable to loyalty program members of the specified tier.", + "type": "string" + }, + "loyaltyTierLabel": { + "description": "Optional. The label of the [loyalty tier](https://support.google.com/merchants/answer/6324484) within the loyalty program. Must match one of the tiers set in the loyalty_programs. When set (in combination with [loyalty_program_label](https://support.google.com/merchants/answer/6324484)), this shipping option is only applicable to loyalty program members of the specified tier.", + "type": "string" + }, "maxHandlingTime": { "description": "Maximum handling time (inclusive) between when the order is received and shipped in business days. 0 means that the order is shipped on the same day as it is received if it happens before the cut-off time. Both maxHandlingTime and maxTransitTime are required if providing shipping speeds. minHandlingTime is optional if maxHandlingTime is present.", "format": "int64", @@ -2477,6 +2885,22 @@ } }, "type": "object" + }, + "Warranty": { + "description": "The warranty of the vehicle.", + "id": "Warranty", + "properties": { + "duration": { + "description": "The warranty duration in months.", + "format": "int64", + "type": "string" + }, + "mileage": { + "$ref": "Mileage", + "description": "The warranty mileage." + } + }, + "type": "object" } }, "servicePath": "", diff --git a/discovery/merchantapi-products_v1beta.json b/discovery/merchantapi-products_v1beta.json index 204e7d2d8ce..b45d6dd7d1c 100644 --- a/discovery/merchantapi-products_v1beta.json +++ b/discovery/merchantapi-products_v1beta.json @@ -124,7 +124,7 @@ "type": "string" }, "name": { - "description": "Required. The name of the product input to delete. Format: `accounts/{account}/productInputs/{productInput}` The {productInput} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productInput} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productInput}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productInput}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productInput}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productInput}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`.", + "description": "Required. The name of the product input to delete. Format: `accounts/{account}/productInputs/{productInput}` The {productInput} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productInput} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productInput}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productInput}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productInput}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productInput}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/productInputs/[^/]+$", "required": true, @@ -187,7 +187,7 @@ "type": "string" }, "name": { - "description": "Identifier. The name of the product. Format: `accounts/{account}/productInputs/{productinput}` The {productinput} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productinputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productinput}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`.", + "description": "Identifier. The name of the product. Format: `accounts/{account}/productInputs/{productinput}` The {productinput} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productinput}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput}` segment is used to differentiate between the two formats.", "location": "path", "pattern": "^accounts/[^/]+/productInputs/[^/]+$", "required": true, @@ -225,7 +225,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the product. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", + "description": "Required. The name of the product. Format: `accounts/{account}/products/{product}` The `{product}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`.", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -281,7 +281,7 @@ } } }, - "revision": "20260223", + "revision": "20260419", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Attributes": { @@ -455,14 +455,14 @@ }, "gtin": { "deprecated": true, - "description": "Global Trade Item Numbers ([GTIN](https://support.google.com/merchants/answer/188494#gtin)) of the item. You can provide up to 10 GTINs. Deprecated: Use `gtins` instead.", + "description": "Global Trade Item Numbers ([GTIN](https://support.google.com/merchants/answer/6324461)) of the item. You can provide up to 10 GTINs. Deprecated: Use `gtins` instead.", "items": { "type": "string" }, "type": "array" }, "gtins": { - "description": "A list of Global Trade Item Numbers ([GTIN](https://support.google.com/merchants/answer/188494#gtin)) of the item. You can provide up to 10 GTINs.", + "description": "A list of Global Trade Item Numbers ([GTIN](https://support.google.com/merchants/answer/6324461)) of the item. You can provide up to 10 GTINs.", "items": { "type": "string" }, @@ -556,7 +556,7 @@ "type": "string" }, "mpn": { - "description": "Manufacturer Part Number ([MPN](https://support.google.com/merchants/answer/188494#mpn)) of the item.", + "description": "Manufacturer Part Number ([MPN](https://support.google.com/merchants/answer/6324482)) of the item.", "type": "string" }, "multipack": { @@ -1250,6 +1250,11 @@ "description": "Output only. The automated discounts information for the product.", "readOnly": true }, + "base64EncodedName": { + "description": "Output only. The **unpadded base64url encoded name** of the product. Format: `accounts/{account}/products/{product}` where the last section `product` is the unpadded base64url encoding of the `content_language~feed_label~offer_id` name. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw` for the decoded product name `accounts/123/products/en~US~sku/123`. This field can be used directly as input to the API methods that require the product name to be encoded if it contains special characters, for example [`GetProduct`](https://developers.google.com/merchant/api/reference/rest/products_v1beta/accounts.products/get).", + "readOnly": true, + "type": "string" + }, "channel": { "description": "Output only. The [channel](https://support.google.com/merchants/answer/7361332) of the product.", "enum": [ @@ -1443,6 +1448,16 @@ "$ref": "Attributes", "description": "Optional. A list of product attributes." }, + "base64EncodedName": { + "description": "Output only. The **unpadded base64url encoded name** of the product input. Format: `accounts/{account}/productInputs/{productinput}` where the last section `productinput` is the unpadded base64url encoding of the `content_language~feed_label~offer_id` name. Example: `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw` for the decoded product input name `accounts/123/productInputs/en~US~sku/123`. This field can be used directly as input to the API methods that require the product input name to be encoded if it contains special characters, for example [`GetProductInput`](https://developers.google.com/merchant/api/reference/rest/products_v1beta/accounts.productInputs/get).", + "readOnly": true, + "type": "string" + }, + "base64EncodedProduct": { + "description": "Output only. The **unpadded base64url encoded name** of the processed product. Format: `accounts/{account}/products/{product}` where the last section `product` is the unpadded base64url encoding of the `content_language~feed_label~offer_id` name. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw` for the decoded product name `accounts/123/products/en~US~sku/123`. This field can be used directly as input to the API methods that require the product name to be encoded if it contains special characters, for example [`GetProduct`](https://developers.google.com/merchant/api/reference/rest/products_v1beta/accounts.products/get).", + "readOnly": true, + "type": "string" + }, "channel": { "description": "Immutable. The [channel](https://support.google.com/merchants/answer/7361332) of the product.", "enum": [ @@ -1473,7 +1488,7 @@ "type": "string" }, "name": { - "description": "Identifier. The name of the product. Format: `accounts/{account}/productInputs/{productinput}` The {productinput} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productinputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productinput}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`.", + "description": "Identifier. The name of the product. Format: `accounts/{account}/productInputs/{productinput}` The {productinput} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productinput}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput}` segment is used to differentiate between the two formats.", "type": "string" }, "offerId": { @@ -1694,6 +1709,14 @@ "format": "int64", "type": "string" }, + "loyaltyProgramLabel": { + "description": "Optional. The label of the [loyalty program](https://support.google.com/merchants/answer/6324484). Must match one of the program labels set in loyalty_programs. When set (in combination with [loyalty_tier_label](https://support.google.com/merchants/answer/6324484)), this shipping option is only applicable to loyalty program members of the specified tier.", + "type": "string" + }, + "loyaltyTierLabel": { + "description": "Optional. The label of the [loyalty tier](https://support.google.com/merchants/answer/6324484) within the loyalty program. Must match one of the tiers set in the loyalty_programs. When set (in combination with [loyalty_program_label](https://support.google.com/merchants/answer/6324484)), this shipping option is only applicable to loyalty program members of the specified tier.", + "type": "string" + }, "maxHandlingTime": { "description": "Maximum handling time (inclusive) between when the order is received and shipped in business days. 0 means that the order is shipped on the same day as it is received if it happens before the cut-off time. Both maxHandlingTime and maxTransitTime are required if providing shipping speeds. minHandlingTime is optional if maxHandlingTime is present.", "format": "int64", diff --git a/discovery/merchantapi-promotions_v1.json b/discovery/merchantapi-promotions_v1.json index 4ee1fae59dd..ed7aaec0ca3 100644 --- a/discovery/merchantapi-promotions_v1.json +++ b/discovery/merchantapi-promotions_v1.json @@ -203,7 +203,7 @@ } } }, - "revision": "20260224", + "revision": "20260228", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Attributes": { @@ -219,27 +219,27 @@ ], "enumDescriptions": [ "The promotion is not restricted to any audience and will be shown to all users. Default value.", - "The Promotion will be shown to new customers only. If this value is set, the `promotion_destinations` field in `Attributes` must include `SHOPPING_ADS`. Requests that do not satisfy this condition will be rejected. For more details, see [First order promotions](https://support.google.com/merchants/answer/16310477?hl=en-IE&sjid=513157547625651759-NC)", - "The Promotion will be shown to customer within a certain location. Applicable locations must be specified in the `region_id_inclusion` field and the `promotion_destinations` field must contain `FREE_LISTINGS`. For more details, see [Regional Promotions](https://support.google.com/merchants/answer/16700435?hl=en&sjid=8815806704218720187-NC)." + "The Promotion will be shown to new customers only. If this value is set, the `promotion_destinations` field in `Attributes` must include `SHOPPING_ADS`. Requests that do not satisfy this condition will be rejected. For more details, see [First order promotions](https://support.google.com/merchants/answer/16310477)", + "The Promotion will be shown to customer within a certain location. Applicable locations must be specified in the `region_id_inclusion` field and the `promotion_destinations` field must contain `FREE_LISTINGS`. For more details, see [Regional Promotions](https://support.google.com/merchants/answer/16700435)." ], "type": "string" }, "brandExclusion": { - "description": "Optional. Product filter by [brand exclusion](https://support.google.com/merchants/answer/13861679?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by [brand exclusion](https://support.google.com/merchants/answer/13861679?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "brandInclusion": { - "description": "Optional. Product filter by brand for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by brand for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "couponValueType": { - "description": "Required. The [coupon value type] (https://support.google.com/merchants/answer/13861986?ref_topic=13773355&sjid=17642868584668136159-NC) attribute to signal the type of promotion that you are running. Depending on type of the selected coupon value [some attributes are required](https://support.google.com/merchants/answer/6393006?ref_topic=7322920).", + "description": "Required. The [coupon value type] (https://support.google.com/merchants/answer/13861986?ref_topic=13773355) attribute to signal the type of promotion that you are running. Depending on type of the selected coupon value [some attributes are required](https://support.google.com/merchants/answer/6393006?ref_topic=7322920).", "enum": [ "COUPON_VALUE_TYPE_UNSPECIFIED", "MONEY_OFF", @@ -253,7 +253,9 @@ "FREE_GIFT_WITH_ITEM_ID", "FREE_SHIPPING_STANDARD", "FREE_SHIPPING_OVERNIGHT", - "FREE_SHIPPING_TWO_DAY" + "FREE_SHIPPING_TWO_DAY", + "MONEY_OFF_RANGE", + "PERCENT_OFF_RANGE" ], "enumDescriptions": [ "Indicates that the coupon value type is unspecified.", @@ -268,7 +270,9 @@ "Free gift with item ID.", "Standard free shipping coupon value type. Only available for online promotions.", "Overnight free shipping coupon value type. Only available for online promotions.", - "Two day free shipping coupon value type. Only available for online promotions." + "Two day free shipping coupon value type. Only available for online promotions.", + "Money off range coupon value type. This coupon value type is used exclusively for US-based sales events. At least one of `min_money_off_amount` or `max_money_off_amount` must be present.", + "Percent off range coupon value type. This coupon value type is exclusively used for US-based sale events. At least one of `min_percent_off` or `max_percent_off` must be present." ], "type": "string" }, @@ -277,7 +281,7 @@ "type": "string" }, "eventApplicability": { - "description": "Optional. Event applicability for this promotion. When present, this field indicates you are creating a [sales event](https://support.google.com/merchants/answer/15523289?hl=en&sjid=11099988466404504696-NC) and not a product promotion. Exactly one of `product_applicability` or `event_applicability` must be set.", + "description": "Optional. Event applicability for this promotion. When present, this field indicates you are creating a [sales event](https://support.google.com/merchants/answer/15523289) and not a product promotion. Exactly one of `product_applicability` or `event_applicability` must be set.", "enum": [ "EVENT_APPLICABILITY_UNSPECIFIED", "SITEWIDE", @@ -291,19 +295,19 @@ "type": "string" }, "freeGiftDescription": { - "description": "Optional. [Free gift description](https://support.google.com/merchants/answer/13847245?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion.", + "description": "Optional. [Free gift description](https://support.google.com/merchants/answer/13847245?ref_topic=13773355) for the promotion.", "type": "string" }, "freeGiftItemId": { - "description": "Optional. [Free gift item ID](https://support.google.com/merchants/answer/13857152?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion.", + "description": "Optional. [Free gift item ID](https://support.google.com/merchants/answer/13857152?ref_topic=13773355) for the promotion.", "type": "string" }, "freeGiftValue": { "$ref": "Price", - "description": "Optional. [Free gift value](https://support.google.com/merchants/answer/13844477?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion." + "description": "Optional. [Free gift value](https://support.google.com/merchants/answer/13844477?ref_topic=13773355) for the promotion." }, "genericRedemptionCode": { - "description": "Optional. Generic redemption code for the promotion. To be used with the `offerType` field and must meet the [minimum requirements](https://support.google.com/merchants/answer/13837405?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Generic redemption code for the promotion. To be used with the `offerType` field and must meet the [minimum requirements](https://support.google.com/merchants/answer/13837405?ref_topic=13773355).", "type": "string" }, "getThisQuantityDiscounted": { @@ -312,42 +316,42 @@ "type": "string" }, "googleProductCategories": { - "description": "Optional. A list of Google product categories for this promotion. Set if `EventApplicability` is `SPECIFIC_CATEGORIES`. Up to 5 product categories can be specified. For more details on eligible values for product categories, checkout the `google_product_category` attribute in the [Promotion data specification](https://support.google.com/merchants/answer/2906014?hl=en).", + "description": "Optional. A list of Google product categories for this promotion. Set if `EventApplicability` is `SPECIFIC_CATEGORIES`. Up to 5 product categories can be specified. For more details on eligible values for product categories, checkout the `google_product_category` attribute in the [Promotion data specification](https://support.google.com/merchants/answer/2906014).", "items": { "type": "string" }, "type": "array" }, "itemGroupIdExclusion": { - "description": "Optional. Product filter by [item group ID](https://support.google.com/merchants/answer/13837298?ref_topic=13773355&sjid=17642868584668136159-NC). The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). exclusion for the promotion.", + "description": "Optional. Product filter by [item group ID](https://support.google.com/merchants/answer/13837298?ref_topic=13773355). The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). exclusion for the promotion.", "items": { "type": "string" }, "type": "array" }, "itemGroupIdInclusion": { - "description": "Optional. Product filter by item group ID for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability [product_applicability] attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by item group ID for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability [product_applicability] attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "itemIdExclusion": { - "description": "Optional. Product filter by [item ID exclusion](https://support.google.com/merchants/answer/13863524?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by [item ID exclusion](https://support.google.com/merchants/answer/13863524?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "itemIdInclusion": { - "description": "Optional. Product filter by [item ID](https://support.google.com/merchants/answer/13861565?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by [item ID](https://support.google.com/merchants/answer/13861565?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "limitQuantity": { - "description": "Optional. [Maximum purchase quantity](https://support.google.com/merchants/answer/13861564?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion.", + "description": "Optional. [Maximum purchase quantity](https://support.google.com/merchants/answer/13861564?ref_topic=13773355) for the promotion.", "format": "int64", "type": "string" }, @@ -356,16 +360,34 @@ "description": "Optional. [Maximum product price](https://support.google.com/merchants/answer/2906014) for promotion." }, "longTitle": { - "description": "Required. [Long title](https://support.google.com/merchants/answer/13838102?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion.", + "description": "Required. [Long title](https://support.google.com/merchants/answer/13838102?ref_topic=13773355) for the promotion.", "type": "string" }, "maxDiscountAmount": { "$ref": "Price", "description": "Optional. The maximum monetary discount a customer can receive for the promotion. This field is only supported with the `Percent off` coupon value type." }, + "maxMoneyOffAmount": { + "$ref": "Price", + "description": "Optional. Maximum money off amount for a promotion with `MONEY_OFF_RANGE` coupon value type. At least one of `min_money_off_amount` or `max_money_off_amount` must be present when the coupon value type is `MONEY_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned." + }, + "maxPercentOff": { + "description": "Optional. Maximum percent off for a promotion with `PERCENT_OFF_RANGE` coupon value type. At least one of `min_percent_off` or `max_percent_off` must be present when the coupon value type is `PERCENT_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned.", + "format": "int64", + "type": "string" + }, + "minMoneyOffAmount": { + "$ref": "Price", + "description": "Optional. Minimum money off amount for a promotion with `MONEY_OFF_RANGE` coupon value type. At least one of `min_money_off_amount` or `max_money_off_amount` must be present when the coupon value type is `MONEY_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned." + }, + "minPercentOff": { + "description": "Optional. Minimum percent off for a promotion with `PERCENT_OFF_RANGE` coupon value type. At least one of `min_percent_off` or `max_percent_off` must be present when the coupon value type is `PERCENT_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned.", + "format": "int64", + "type": "string" + }, "minimumPurchaseAmount": { "$ref": "Price", - "description": "Optional. [Minimum purchase amount](https://support.google.com/merchants/answer/13837705?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion." + "description": "Optional. [Minimum purchase amount](https://support.google.com/merchants/answer/13837705?ref_topic=13773355) for the promotion." }, "minimumPurchaseQuantity": { "format": "int64", @@ -373,10 +395,10 @@ }, "moneyOffAmount": { "$ref": "Price", - "description": "Optional. The [money off amount](https://support.google.com/merchants/answer/13838101?ref_topic=13773355&sjid=17642868584668136159-NC) offered in the promotion." + "description": "Optional. The [money off amount](https://support.google.com/merchants/answer/13838101?ref_topic=13773355) offered in the promotion." }, "offerType": { - "description": "Required. [Type](https://support.google.com/merchants/answer/13837405?ref_topic=13773355&sjid=17642868584668136159-NC) of the promotion. Use this attribute to indicate whether or not customers need a coupon code to redeem your promotion.", + "description": "Required. [Type](https://support.google.com/merchants/answer/13837405?ref_topic=13773355) of the promotion. Use this attribute to indicate whether or not customers need a coupon code to redeem your promotion.", "enum": [ "OFFER_TYPE_UNSPECIFIED", "NO_CODE", @@ -395,7 +417,7 @@ "type": "string" }, "productApplicability": { - "description": "Optional. Applicability of the promotion to either all products or [only specific products](https://support.google.com/merchants/answer/6396257?ref_topic=6396150&sjid=17642868584668136159-NC). Exactly one of `product_applicability` or `event_applicability` must be set.", + "description": "Optional. Applicability of the promotion to either all products or [only specific products](https://support.google.com/merchants/answer/6396257). Exactly one of `product_applicability` or `event_applicability` must be set.", "enum": [ "PRODUCT_APPLICABILITY_UNSPECIFIED", "ALL_PRODUCTS", @@ -409,21 +431,21 @@ "type": "string" }, "productTypeExclusion": { - "description": "Optional. Product filter by [product type exclusion](https://support.google.com/merchants/answer/13863746?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by [product type exclusion](https://support.google.com/merchants/answer/13863746?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "productTypeInclusion": { - "description": "Optional. Product filter by product type for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by product type for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "promotionDestinations": { - "description": "Required. The list of destinations (also known as [Marketing methods](https://support.google.com/merchants/answer/15130232)) where the promotion applies to. If you don't specify a destination by including a supported value in your data source, your promotion will display in Shopping ads and free listings by default. You may have previously submitted the following values as destinations for your products: Shopping Actions, Surfaces across Google, Local surfaces across Google. To represent these values use `FREE_LISTINGS`, `FREE_LOCAL_LISTINGS`, `LOCAL_INVENTORY_ADS`. For more details see [Promotion destination](https://support.google.com/merchants/answer/13837465?sjid=5155774230887277618-NC)", + "description": "Required. The list of destinations (also known as [Marketing methods](https://support.google.com/merchants/answer/15130232)) where the promotion applies to. If you don't specify a destination by including a supported value in your data source, your promotion will display in Shopping ads and free listings by default. You may have previously submitted the following values as destinations for your products: Shopping Actions, Surfaces across Google, Local surfaces across Google. To represent these values use `FREE_LISTINGS`, `FREE_LOCAL_LISTINGS`, `LOCAL_INVENTORY_ADS`. For more details see [Promotion destination](https://support.google.com/merchants/answer/13837465)", "items": { "enum": [ "DESTINATION_ENUM_UNSPECIFIED", @@ -492,7 +514,7 @@ "type": "string" }, "regionIdInclusion": { - "description": "Optional. A list of [regions](https://support.google.com/merchants/answer/15406457?hl=en&sjid=8815806704218720187-NC#howregionswork) where the promotion is applicable. Must be set if `audience` is set to `LOCATION`.", + "description": "Optional. A list of [regions](https://support.google.com/merchants/answer/15406457?#howregionswork) where the promotion is applicable. Must be set if `audience` is set to `LOCATION`.", "items": { "type": "string" }, @@ -513,14 +535,14 @@ "type": "string" }, "storeCodesExclusion": { - "description": "Optional. [Store codes to exclude](https://support.google.com/merchants/answer/13859586?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. [Store codes to exclude](https://support.google.com/merchants/answer/13859586?ref_topic=13773355) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "storeCodesInclusion": { - "description": "Optional. [Store codes to include](https://support.google.com/merchants/answer/13857470?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355&sjid=17642868584668136159-NC). Store code (the store ID from your Business Profile) of the physical store the product is sold in. See the [Local product inventory data specification](https://support.google.com/merchants/answer/3061342) for more information.", + "description": "Optional. [Store codes to include](https://support.google.com/merchants/answer/13857470?ref_topic=13773355) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355). Store code (the store ID from your Business Profile) of the physical store the product is sold in. See the [Local product inventory data specification](https://support.google.com/merchants/answer/3061342) for more information.", "items": { "type": "string" }, diff --git a/discovery/merchantapi-promotions_v1beta.json b/discovery/merchantapi-promotions_v1beta.json index 3c55eb21eb6..603ab9852c1 100644 --- a/discovery/merchantapi-promotions_v1beta.json +++ b/discovery/merchantapi-promotions_v1beta.json @@ -203,7 +203,7 @@ } } }, - "revision": "20260224", + "revision": "20260228", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Attributes": { @@ -219,27 +219,27 @@ ], "enumDescriptions": [ "The promotion is not restricted to any audience and will be shown to all users. Default value.", - "The Promotion will be shown to new customers only. If this value is set, the `promotion_destinations` field in `Attributes` must include `SHOPPING_ADS`. Requests that do not satisfy this condition will be rejected. For more details, see [First order promotions](https://support.google.com/merchants/answer/16310477?hl=en-IE&sjid=513157547625651759-NC)", - "The Promotion will be shown to customer within a certain location. Applicable locations must be specified in the `region_id_inclusion` field and the `promotion_destinations` field must contain `FREE_LISTINGS`. For more details, see [Regional Promotions](https://support.google.com/merchants/answer/16700435?hl=en&sjid=8815806704218720187-NC)." + "The Promotion will be shown to new customers only. If this value is set, the `promotion_destinations` field in `Attributes` must include `SHOPPING_ADS`. Requests that do not satisfy this condition will be rejected. For more details, see [First order promotions](https://support.google.com/merchants/answer/16310477)", + "The Promotion will be shown to customer within a certain location. Applicable locations must be specified in the `region_id_inclusion` field and the `promotion_destinations` field must contain `FREE_LISTINGS`. For more details, see [Regional Promotions](https://support.google.com/merchants/answer/16700435)." ], "type": "string" }, "brandExclusion": { - "description": "Optional. Product filter by [brand exclusion](https://support.google.com/merchants/answer/13861679?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by [brand exclusion](https://support.google.com/merchants/answer/13861679?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "brandInclusion": { - "description": "Optional. Product filter by brand for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by brand for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "couponValueType": { - "description": "Required. The [coupon value type] (https://support.google.com/merchants/answer/13861986?ref_topic=13773355&sjid=17642868584668136159-NC) attribute to signal the type of promotion that you are running. Depending on type of the selected coupon value [some attributes are required](https://support.google.com/merchants/answer/6393006?ref_topic=7322920).", + "description": "Required. The [coupon value type] (https://support.google.com/merchants/answer/13861986?ref_topic=13773355) attribute to signal the type of promotion that you are running. Depending on type of the selected coupon value [some attributes are required](https://support.google.com/merchants/answer/6393006?ref_topic=7322920).", "enum": [ "COUPON_VALUE_TYPE_UNSPECIFIED", "MONEY_OFF", @@ -253,7 +253,9 @@ "FREE_GIFT_WITH_ITEM_ID", "FREE_SHIPPING_STANDARD", "FREE_SHIPPING_OVERNIGHT", - "FREE_SHIPPING_TWO_DAY" + "FREE_SHIPPING_TWO_DAY", + "MONEY_OFF_RANGE", + "PERCENT_OFF_RANGE" ], "enumDescriptions": [ "Indicates that the coupon value type is unspecified.", @@ -268,7 +270,9 @@ "Free gift with item ID.", "Standard free shipping coupon value type. Only available for online promotions.", "Overnight free shipping coupon value type. Only available for online promotions.", - "Two day free shipping coupon value type. Only available for online promotions." + "Two day free shipping coupon value type. Only available for online promotions.", + "Money off range coupon value type. This coupon value type is used exclusively for US-based sales events. At least one of `min_money_off_amount` or `max_money_off_amount` must be present.", + "Percent off range coupon value type. This coupon value type is exclusively used for US-based sale events. At least one of `min_percent_off` or `max_percent_off` must be present." ], "type": "string" }, @@ -277,7 +281,7 @@ "type": "string" }, "eventApplicability": { - "description": "Optional. Event applicability for this promotion. When present, this field indicates you are creating a [sales event](https://support.google.com/merchants/answer/15523289?hl=en&sjid=11099988466404504696-NC) and not a product promotion. Exactly one of `product_applicability` or `event_applicability` must be set.", + "description": "Optional. Event applicability for this promotion. When present, this field indicates you are creating a [sales event](https://support.google.com/merchants/answer/15523289) and not a product promotion. Exactly one of `product_applicability` or `event_applicability` must be set.", "enum": [ "EVENT_APPLICABILITY_UNSPECIFIED", "SITEWIDE", @@ -291,19 +295,19 @@ "type": "string" }, "freeGiftDescription": { - "description": "Optional. [Free gift description](https://support.google.com/merchants/answer/13847245?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion.", + "description": "Optional. [Free gift description](https://support.google.com/merchants/answer/13847245?ref_topic=13773355) for the promotion.", "type": "string" }, "freeGiftItemId": { - "description": "Optional. [Free gift item ID](https://support.google.com/merchants/answer/13857152?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion.", + "description": "Optional. [Free gift item ID](https://support.google.com/merchants/answer/13857152?ref_topic=13773355) for the promotion.", "type": "string" }, "freeGiftValue": { "$ref": "Price", - "description": "Optional. [Free gift value](https://support.google.com/merchants/answer/13844477?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion." + "description": "Optional. [Free gift value](https://support.google.com/merchants/answer/13844477?ref_topic=13773355) for the promotion." }, "genericRedemptionCode": { - "description": "Optional. Generic redemption code for the promotion. To be used with the `offerType` field and must meet the [minimum requirements](https://support.google.com/merchants/answer/13837405?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Generic redemption code for the promotion. To be used with the `offerType` field and must meet the [minimum requirements](https://support.google.com/merchants/answer/13837405?ref_topic=13773355).", "type": "string" }, "getThisQuantityDiscounted": { @@ -312,42 +316,42 @@ "type": "string" }, "googleProductCategories": { - "description": "Optional. A list of Google product categories for this promotion. Set if `EventApplicability` is `SPECIFIC_CATEGORIES`. Up to 5 product categories can be specified. For more details on eligible values for product categories, checkout the `google_product_category` attribute in the [Promotion data specification](https://support.google.com/merchants/answer/2906014?hl=en).", + "description": "Optional. A list of Google product categories for this promotion. Set if `EventApplicability` is `SPECIFIC_CATEGORIES`. Up to 5 product categories can be specified. For more details on eligible values for product categories, checkout the `google_product_category` attribute in the [Promotion data specification](https://support.google.com/merchants/answer/2906014).", "items": { "type": "string" }, "type": "array" }, "itemGroupIdExclusion": { - "description": "Optional. Product filter by [item group ID](https://support.google.com/merchants/answer/13837298?ref_topic=13773355&sjid=17642868584668136159-NC). The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). exclusion for the promotion.", + "description": "Optional. Product filter by [item group ID](https://support.google.com/merchants/answer/13837298?ref_topic=13773355). The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). exclusion for the promotion.", "items": { "type": "string" }, "type": "array" }, "itemGroupIdInclusion": { - "description": "Optional. Product filter by item group ID for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability [product_applicability] attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by item group ID for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability [product_applicability] attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "itemIdExclusion": { - "description": "Optional. Product filter by [item ID exclusion](https://support.google.com/merchants/answer/13863524?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by [item ID exclusion](https://support.google.com/merchants/answer/13863524?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "itemIdInclusion": { - "description": "Optional. Product filter by [item ID](https://support.google.com/merchants/answer/13861565?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by [item ID](https://support.google.com/merchants/answer/13861565?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "limitQuantity": { - "description": "Optional. [Maximum purchase quantity](https://support.google.com/merchants/answer/13861564?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion.", + "description": "Optional. [Maximum purchase quantity](https://support.google.com/merchants/answer/13861564?ref_topic=13773355) for the promotion.", "format": "int64", "type": "string" }, @@ -356,16 +360,34 @@ "description": "Optional. [Maximum product price](https://support.google.com/merchants/answer/2906014) for promotion." }, "longTitle": { - "description": "Required. [Long title](https://support.google.com/merchants/answer/13838102?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion.", + "description": "Required. [Long title](https://support.google.com/merchants/answer/13838102?ref_topic=13773355) for the promotion.", "type": "string" }, "maxDiscountAmount": { "$ref": "Price", "description": "Optional. The maximum monetary discount a customer can receive for the promotion. This field is only supported with the `Percent off` coupon value type." }, + "maxMoneyOffAmount": { + "$ref": "Price", + "description": "Optional. Maximum money off amount for a promotion with `MONEY_OFF_RANGE` coupon value type. At least one of `min_money_off_amount` or `max_money_off_amount` must be present when the coupon value type is `MONEY_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned." + }, + "maxPercentOff": { + "description": "Optional. Maximum percent off for a promotion with `PERCENT_OFF_RANGE` coupon value type. At least one of `min_percent_off` or `max_percent_off` must be present when the coupon value type is `PERCENT_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned.", + "format": "int64", + "type": "string" + }, + "minMoneyOffAmount": { + "$ref": "Price", + "description": "Optional. Minimum money off amount for a promotion with `MONEY_OFF_RANGE` coupon value type. At least one of `min_money_off_amount` or `max_money_off_amount` must be present when the coupon value type is `MONEY_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned." + }, + "minPercentOff": { + "description": "Optional. Minimum percent off for a promotion with `PERCENT_OFF_RANGE` coupon value type. At least one of `min_percent_off` or `max_percent_off` must be present when the coupon value type is `PERCENT_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned.", + "format": "int64", + "type": "string" + }, "minimumPurchaseAmount": { "$ref": "Price", - "description": "Optional. [Minimum purchase amount](https://support.google.com/merchants/answer/13837705?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion." + "description": "Optional. [Minimum purchase amount](https://support.google.com/merchants/answer/13837705?ref_topic=13773355) for the promotion." }, "minimumPurchaseQuantity": { "format": "int64", @@ -373,10 +395,10 @@ }, "moneyOffAmount": { "$ref": "Price", - "description": "Optional. The [money off amount](https://support.google.com/merchants/answer/13838101?ref_topic=13773355&sjid=17642868584668136159-NC) offered in the promotion." + "description": "Optional. The [money off amount](https://support.google.com/merchants/answer/13838101?ref_topic=13773355) offered in the promotion." }, "offerType": { - "description": "Required. [Type](https://support.google.com/merchants/answer/13837405?ref_topic=13773355&sjid=17642868584668136159-NC) of the promotion. Use this attribute to indicate whether or not customers need a coupon code to redeem your promotion.", + "description": "Required. [Type](https://support.google.com/merchants/answer/13837405?ref_topic=13773355) of the promotion. Use this attribute to indicate whether or not customers need a coupon code to redeem your promotion.", "enum": [ "OFFER_TYPE_UNSPECIFIED", "NO_CODE", @@ -395,7 +417,7 @@ "type": "string" }, "productApplicability": { - "description": "Optional. Applicability of the promotion to either all products or [only specific products](https://support.google.com/merchants/answer/6396257?ref_topic=6396150&sjid=17642868584668136159-NC). Exactly one of `product_applicability` or `event_applicability` must be set.", + "description": "Optional. Applicability of the promotion to either all products or [only specific products](https://support.google.com/merchants/answer/6396257). Exactly one of `product_applicability` or `event_applicability` must be set.", "enum": [ "PRODUCT_APPLICABILITY_UNSPECIFIED", "ALL_PRODUCTS", @@ -409,21 +431,21 @@ "type": "string" }, "productTypeExclusion": { - "description": "Optional. Product filter by [product type exclusion](https://support.google.com/merchants/answer/13863746?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by [product type exclusion](https://support.google.com/merchants/answer/13863746?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "productTypeInclusion": { - "description": "Optional. Product filter by product type for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. Product filter by product type for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "promotionDestinations": { - "description": "Required. The list of destinations (also known as [Marketing methods](https://support.google.com/merchants/answer/15130232)) where the promotion applies to. If you don't specify a destination by including a supported value in your data source, your promotion will display in Shopping ads and free listings by default. You may have previously submitted the following values as destinations for your products: Shopping Actions, Surfaces across Google, Local surfaces across Google. To represent these values use `FREE_LISTINGS`, `FREE_LOCAL_LISTINGS`, `LOCAL_INVENTORY_ADS`. For more details see [Promotion destination](https://support.google.com/merchants/answer/13837465?sjid=5155774230887277618-NC)", + "description": "Required. The list of destinations (also known as [Marketing methods](https://support.google.com/merchants/answer/15130232)) where the promotion applies to. If you don't specify a destination by including a supported value in your data source, your promotion will display in Shopping ads and free listings by default. You may have previously submitted the following values as destinations for your products: Shopping Actions, Surfaces across Google, Local surfaces across Google. To represent these values use `FREE_LISTINGS`, `FREE_LOCAL_LISTINGS`, `LOCAL_INVENTORY_ADS`. For more details see [Promotion destination](https://support.google.com/merchants/answer/13837465)", "items": { "enum": [ "DESTINATION_ENUM_UNSPECIFIED", @@ -492,7 +514,7 @@ "type": "string" }, "regionIdInclusion": { - "description": "Optional. A list of [regions](https://support.google.com/merchants/answer/15406457?hl=en&sjid=8815806704218720187-NC#howregionswork) where the promotion is applicable. Must be set if `audience` is set to `LOCATION`.", + "description": "Optional. A list of [regions](https://support.google.com/merchants/answer/15406457?#howregionswork) where the promotion is applicable. Must be set if `audience` is set to `LOCATION`.", "items": { "type": "string" }, @@ -513,14 +535,14 @@ "type": "string" }, "storeCodesExclusion": { - "description": "Optional. [Store codes to exclude](https://support.google.com/merchants/answer/13859586?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355&sjid=17642868584668136159-NC).", + "description": "Optional. [Store codes to exclude](https://support.google.com/merchants/answer/13859586?ref_topic=13773355) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355).", "items": { "type": "string" }, "type": "array" }, "storeCodesInclusion": { - "description": "Optional. [Store codes to include](https://support.google.com/merchants/answer/13857470?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355&sjid=17642868584668136159-NC). Store code (the store ID from your Business Profile) of the physical store the product is sold in. See the [Local product inventory data specification](https://support.google.com/merchants/answer/3061342) for more information.", + "description": "Optional. [Store codes to include](https://support.google.com/merchants/answer/13857470?ref_topic=13773355) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355). Store code (the store ID from your Business Profile) of the physical store the product is sold in. See the [Local product inventory data specification](https://support.google.com/merchants/answer/3061342) for more information.", "items": { "type": "string" }, diff --git a/discovery/merchantapi-reports_v1.json b/discovery/merchantapi-reports_v1.json index ff645ea8f0e..90955e067a3 100644 --- a/discovery/merchantapi-reports_v1.json +++ b/discovery/merchantapi-reports_v1.json @@ -142,7 +142,7 @@ } } }, - "revision": "20260223", + "revision": "20260411", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "BestSellersBrandView": { @@ -1217,6 +1217,20 @@ "description": "[Product type (5th level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type) in merchant's own product taxonomy. Segment.", "type": "string" }, + "storeType": { + "description": "Store type to which metrics apply. Can be `ONLINE_STORE` or `LOCAL_STORES`. Segment. For `LOCAL_STORES` store type, further segmentation by a specific store is not available.", + "enum": [ + "STORE_TYPE_ENUM_UNSPECIFIED", + "ONLINE_STORE", + "LOCAL_STORES" + ], + "enumDescriptions": [ + "Not specified.", + "Online store.", + "Local (physical) stores." + ], + "type": "string" + }, "title": { "description": "Title of the product. Segment.", "type": "string" diff --git a/discovery/merchantapi-reports_v1beta.json b/discovery/merchantapi-reports_v1beta.json index 690182549a6..78b4670d199 100644 --- a/discovery/merchantapi-reports_v1beta.json +++ b/discovery/merchantapi-reports_v1beta.json @@ -142,7 +142,7 @@ } } }, - "revision": "20260223", + "revision": "20260411", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "BestSellersBrandView": { @@ -1217,6 +1217,20 @@ "description": "[Product type (5th level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type) in merchant's own product taxonomy. Segment.", "type": "string" }, + "storeType": { + "description": "Store type to which metrics apply. Can be `ONLINE_STORE` or `LOCAL_STORES`. Segment. For `LOCAL_STORES` store type, further segmentation by a specific store is not available.", + "enum": [ + "STORE_TYPE_ENUM_UNSPECIFIED", + "ONLINE_STORE", + "LOCAL_STORES" + ], + "enumDescriptions": [ + "Not specified.", + "Online store.", + "Local (physical) stores." + ], + "type": "string" + }, "title": { "description": "Title of the product. Segment.", "type": "string" diff --git a/discovery/metastore-v1.json b/discovery/metastore-v1.json index 10eacd10dd0..14b2d718b7a 100644 --- a/discovery/metastore-v1.json +++ b/discovery/metastore-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "metastore.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1695,7 +1695,7 @@ } } }, - "revision": "20260203", + "revision": "20260427", "rootUrl": "https://metastore.googleapis.com/", "schemas": { "AlterMetadataResourceLocationRequest": { @@ -2030,7 +2030,7 @@ "type": "object" }, "CloudSQLMigrationConfig": { - "description": "Configuration information for migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore.", + "description": "Deprecated: Migrations to Dataproc Metastore are no longer supported. Use BigLake Metastore migration instead. Configuration information for migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore.", "id": "CloudSQLMigrationConfig", "properties": { "cdcConfig": { @@ -2879,7 +2879,8 @@ "properties": { "cloudSqlMigrationConfig": { "$ref": "CloudSQLMigrationConfig", - "description": "Configuration information specific to migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore." + "deprecated": true, + "description": "Deprecated: Migrations to Dataproc Metastore are no longer supported. Use BigLake Metastore migration instead. Configuration information specific to migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore." }, "createTime": { "description": "Output only. The time when the migration execution was started.", @@ -2899,7 +2900,8 @@ "type": "string" }, "phase": { - "description": "Output only. The current phase of the migration execution.", + "deprecated": true, + "description": "Output only. Deprecated: Phase was designed for incoming migrations to Dataproc Metastore, not applicable when migrating away from it. The current phase of the migration execution.", "enum": [ "PHASE_UNSPECIFIED", "REPLICATION", diff --git a/discovery/metastore-v1alpha.json b/discovery/metastore-v1alpha.json index b074f36e392..da05d67aace 100644 --- a/discovery/metastore-v1alpha.json +++ b/discovery/metastore-v1alpha.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha/projects/{projectsId}/locations", "httpMethod": "GET", "id": "metastore.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1807,7 +1807,7 @@ } } }, - "revision": "20260203", + "revision": "20260427", "rootUrl": "https://metastore.googleapis.com/", "schemas": { "AlterMetadataResourceLocationRequest": { @@ -2155,7 +2155,7 @@ "type": "object" }, "CloudSQLMigrationConfig": { - "description": "Configuration information for migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore.", + "description": "Deprecated: Migrations to Dataproc Metastore are no longer supported. Use BigLake Metastore migration instead. Configuration information for migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore.", "id": "CloudSQLMigrationConfig", "properties": { "cdcConfig": { @@ -3073,7 +3073,8 @@ "properties": { "cloudSqlMigrationConfig": { "$ref": "CloudSQLMigrationConfig", - "description": "Configuration information specific to migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore." + "deprecated": true, + "description": "Deprecated: Migrations to Dataproc Metastore are no longer supported. Use BigLake Metastore migration instead. Configuration information specific to migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore." }, "createTime": { "description": "Output only. The time when the migration execution was started.", @@ -3093,7 +3094,8 @@ "type": "string" }, "phase": { - "description": "Output only. The current phase of the migration execution.", + "deprecated": true, + "description": "Output only. Deprecated: Phase was designed for incoming migrations to Dataproc Metastore, not applicable when migrating away from it. The current phase of the migration execution.", "enum": [ "PHASE_UNSPECIFIED", "REPLICATION", diff --git a/discovery/metastore-v1beta.json b/discovery/metastore-v1beta.json index e376652f32d..79692c4e1e1 100644 --- a/discovery/metastore-v1beta.json +++ b/discovery/metastore-v1beta.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta/projects/{projectsId}/locations", "httpMethod": "GET", "id": "metastore.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1807,7 +1807,7 @@ } } }, - "revision": "20260203", + "revision": "20260427", "rootUrl": "https://metastore.googleapis.com/", "schemas": { "AlterMetadataResourceLocationRequest": { @@ -2155,7 +2155,7 @@ "type": "object" }, "CloudSQLMigrationConfig": { - "description": "Configuration information for migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore.", + "description": "Deprecated: Migrations to Dataproc Metastore are no longer supported. Use BigLake Metastore migration instead. Configuration information for migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore.", "id": "CloudSQLMigrationConfig", "properties": { "cdcConfig": { @@ -3073,7 +3073,8 @@ "properties": { "cloudSqlMigrationConfig": { "$ref": "CloudSQLMigrationConfig", - "description": "Configuration information specific to migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore." + "deprecated": true, + "description": "Deprecated: Migrations to Dataproc Metastore are no longer supported. Use BigLake Metastore migration instead. Configuration information specific to migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore." }, "createTime": { "description": "Output only. The time when the migration execution was started.", @@ -3093,7 +3094,8 @@ "type": "string" }, "phase": { - "description": "Output only. The current phase of the migration execution.", + "deprecated": true, + "description": "Output only. Deprecated: Phase was designed for incoming migrations to Dataproc Metastore, not applicable when migrating away from it. The current phase of the migration execution.", "enum": [ "PHASE_UNSPECIFIED", "REPLICATION", diff --git a/discovery/migrationcenter-v1.json b/discovery/migrationcenter-v1.json index 837072c1b50..581d7ee1fcb 100644 --- a/discovery/migrationcenter-v1.json +++ b/discovery/migrationcenter-v1.json @@ -160,7 +160,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "migrationcenter.projects.locations.list", @@ -169,7 +169,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2568,7 +2568,7 @@ } } }, - "revision": "20260126", + "revision": "20260423", "rootUrl": "https://migrationcenter.googleapis.com/", "schemas": { "AddAssetsToGroupRequest": { diff --git a/discovery/migrationcenter-v1alpha1.json b/discovery/migrationcenter-v1alpha1.json index d42aa17194c..7b44b03b0c7 100644 --- a/discovery/migrationcenter-v1alpha1.json +++ b/discovery/migrationcenter-v1alpha1.json @@ -160,7 +160,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "migrationcenter.projects.locations.list", @@ -169,7 +169,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2722,7 +2722,7 @@ } } }, - "revision": "20260126", + "revision": "20260423", "rootUrl": "https://migrationcenter.googleapis.com/", "schemas": { "AddAssetsToGroupRequest": { @@ -2953,6 +2953,31 @@ "description": "Generic asset attributes.", "type": "object" }, + "awsApiGatewayRestApiDetails": { + "$ref": "AwsApiGatewayRestApiDetails", + "description": "Output only. Asset information specific for AWS API Gateway REST APIs.", + "readOnly": true + }, + "awsAppSyncGraphqlApiDetails": { + "$ref": "AwsAppSyncGraphqlApiDetails", + "description": "Output only. Asset information specific for AWS AppSync GraphQL APIs.", + "readOnly": true + }, + "awsApplicationLoadBalancerDetails": { + "$ref": "AwsApplicationLoadBalancerDetails", + "description": "Output only. Asset information specific for AWS Application Load Balancers.", + "readOnly": true + }, + "awsAutoscalingGroupDetails": { + "$ref": "AwsAutoscalingGroupDetails", + "description": "Output only. Asset information specific for AwsAutoscalingGroupDetails", + "readOnly": true + }, + "awsBatchComputeEnvironmentDetails": { + "$ref": "AwsBatchComputeEnvironmentDetails", + "description": "Output only. Asset information specific for AWS Batch Compute Environments.", + "readOnly": true + }, "awsCloudFrontDistributionDetails": { "$ref": "AwsCloudFrontDistributionDetails", "description": "Output only. Asset information specific for AWS CloudFront distributions.", @@ -2963,6 +2988,16 @@ "description": "Output only. Asset information specific for AWS DynamoDB tables.", "readOnly": true }, + "awsEbsVolumeDetails": { + "$ref": "AwsEbsVolumeDetails", + "description": "Output only. Asset information specific for AWS EBS Volumes.", + "readOnly": true + }, + "awsEcrRepositoryDetails": { + "$ref": "AwsEcrRepositoryDetails", + "description": "Output only. Asset information specific for AwsEcrRepositoryDetails", + "readOnly": true + }, "awsEcsClusterDetails": { "$ref": "AwsEcsClusterDetails", "description": "Output only. Asset information specific for AWS ECS clusters.", @@ -2978,11 +3013,26 @@ "description": "Output only. Asset information specific for AWS EKS clusters.", "readOnly": true }, + "awsElasticIpAddressDetails": { + "$ref": "AwsElasticIpAddressDetails", + "description": "Output only. Asset information specific for AWS Elastic IP Addresses.", + "readOnly": true + }, + "awsElasticNetworkInterfaceDetails": { + "$ref": "AwsElasticNetworkInterfaceDetails", + "description": "Output only. Asset information specific for AWS Elastic Network Interfaces.", + "readOnly": true + }, "awsElbLoadBalancerDetails": { "$ref": "AwsElbLoadBalancerDetails", "description": "Output only. Asset information specific for AWS Load Balancers.", "readOnly": true }, + "awsInternetGatewayDetails": { + "$ref": "AwsInternetGatewayDetails", + "description": "Output only. Asset information specific for AWS Internet Gateways.", + "readOnly": true + }, "awsLambdaFunctionDetails": { "$ref": "AwsLambdaFunctionDetails", "description": "Output only. Asset information specific for AWS Lambda functions.", @@ -3008,6 +3058,11 @@ "description": "Output only. Asset information specific for AWS S3 buckets.", "readOnly": true }, + "awsSnsTopicDetails": { + "$ref": "AwsSnsTopicDetails", + "description": "Output only. Asset information specific for AWS SNS Topics.", + "readOnly": true + }, "awsVpcDetails": { "$ref": "AwsVpcDetails", "description": "Output only. Asset information specific for AWS VPCs.", @@ -3120,6 +3175,26 @@ "description": "Generic asset attributes.", "type": "object" }, + "awsApiGatewayRestApiDetails": { + "$ref": "AwsApiGatewayRestApiDetails", + "description": "Optional. Asset information specific for AWS API Gateway REST APIs." + }, + "awsAppSyncGraphqlApiDetails": { + "$ref": "AwsAppSyncGraphqlApiDetails", + "description": "Optional. Asset information specific for AWS AppSync GraphQL APIs." + }, + "awsApplicationLoadBalancerDetails": { + "$ref": "AwsApplicationLoadBalancerDetails", + "description": "Optional. Asset information specific for AWS Application Load Balancers." + }, + "awsAutoscalingGroupDetails": { + "$ref": "AwsAutoscalingGroupDetails", + "description": "Optional. Asset information specific for AwsAutoscalingGroupDetails" + }, + "awsBatchComputeEnvironmentDetails": { + "$ref": "AwsBatchComputeEnvironmentDetails", + "description": "Optional. Asset information specific for AWS Batch Compute Environments." + }, "awsCloudFrontDistributionDetails": { "$ref": "AwsCloudFrontDistributionDetails", "description": "Asset information specific for AWS CloudFront distributions." @@ -3128,6 +3203,14 @@ "$ref": "AwsDynamoDBTableDetails", "description": "Asset information specific for AWS DynamoDB tables." }, + "awsEbsVolumeDetails": { + "$ref": "AwsEbsVolumeDetails", + "description": "Optional. Asset information specific for AWS EBS Volumes." + }, + "awsEcrRepositoryDetails": { + "$ref": "AwsEcrRepositoryDetails", + "description": "Asset information specific for AwsEcrRepositoryDetails" + }, "awsEcsClusterDetails": { "$ref": "AwsEcsClusterDetails", "description": "Asset information specific for AWS ECS clusters." @@ -3140,10 +3223,22 @@ "$ref": "AwsEksClusterDetails", "description": "Asset information specific for AWS EKS clusters." }, + "awsElasticIpAddressDetails": { + "$ref": "AwsElasticIpAddressDetails", + "description": "Optional. Asset information specific for AWS Elastic IP Addresses." + }, + "awsElasticNetworkInterfaceDetails": { + "$ref": "AwsElasticNetworkInterfaceDetails", + "description": "Optional. Asset information specific for AWS Elastic Network Interfaces." + }, "awsElbLoadBalancerDetails": { "$ref": "AwsElbLoadBalancerDetails", "description": "Asset information specific for AWS Load Balancers." }, + "awsInternetGatewayDetails": { + "$ref": "AwsInternetGatewayDetails", + "description": "Optional. Asset information specific for AWS Internet Gateways." + }, "awsLambdaFunctionDetails": { "$ref": "AwsLambdaFunctionDetails", "description": "Asset information specific for AWS Lambda functions." @@ -3164,6 +3259,10 @@ "$ref": "AwsS3BucketDetails", "description": "Asset information specific for AWS S3 buckets." }, + "awsSnsTopicDetails": { + "$ref": "AwsSnsTopicDetails", + "description": "Optional. Asset information specific for AWS SNS Topics." + }, "awsVpcDetails": { "$ref": "AwsVpcDetails", "description": "Asset information specific for AWS VPCs." @@ -3431,6 +3530,36 @@ }, "type": "object" }, + "AwsApiGatewayRestApiDetails": { + "description": "Asset information specific for AWS API Gateway REST APIs.", + "id": "AwsApiGatewayRestApiDetails", + "properties": {}, + "type": "object" + }, + "AwsAppSyncGraphqlApiDetails": { + "description": "Asset information specific for AWS AppSync GraphQL APIs.", + "id": "AwsAppSyncGraphqlApiDetails", + "properties": {}, + "type": "object" + }, + "AwsApplicationLoadBalancerDetails": { + "description": "Asset information specific for AWS Application Load Balancers.", + "id": "AwsApplicationLoadBalancerDetails", + "properties": {}, + "type": "object" + }, + "AwsAutoscalingGroupDetails": { + "description": "Asset information specific for AWS Autoscaling Group.", + "id": "AwsAutoscalingGroupDetails", + "properties": {}, + "type": "object" + }, + "AwsBatchComputeEnvironmentDetails": { + "description": "Asset information specific for AWS Batch Compute Environments.", + "id": "AwsBatchComputeEnvironmentDetails", + "properties": {}, + "type": "object" + }, "AwsCloudFrontDistributionDetails": { "description": "Details of an AWS CloudFront distribution.", "id": "AwsCloudFrontDistributionDetails", @@ -3443,6 +3572,12 @@ "properties": {}, "type": "object" }, + "AwsEbsVolumeDetails": { + "description": "Asset information specific for AWS EBS Volumes.", + "id": "AwsEbsVolumeDetails", + "properties": {}, + "type": "object" + }, "AwsEc2PlatformDetails": { "description": "AWS EC2 specific details.", "id": "AwsEc2PlatformDetails", @@ -3472,6 +3607,12 @@ }, "type": "object" }, + "AwsEcrRepositoryDetails": { + "description": "Asset information specific for AWS ECR Repository.", + "id": "AwsEcrRepositoryDetails", + "properties": {}, + "type": "object" + }, "AwsEcsClusterDetails": { "description": "Details of an AWS ECS cluster.", "id": "AwsEcsClusterDetails", @@ -3490,12 +3631,30 @@ "properties": {}, "type": "object" }, + "AwsElasticIpAddressDetails": { + "description": "Asset information specific for AWS Elastic IP Addresses.", + "id": "AwsElasticIpAddressDetails", + "properties": {}, + "type": "object" + }, + "AwsElasticNetworkInterfaceDetails": { + "description": "Asset information specific for AWS Elastic Network Interfaces.", + "id": "AwsElasticNetworkInterfaceDetails", + "properties": {}, + "type": "object" + }, "AwsElbLoadBalancerDetails": { "description": "Asset information specific for AWS Load Balancers.", "id": "AwsElbLoadBalancerDetails", "properties": {}, "type": "object" }, + "AwsInternetGatewayDetails": { + "description": "Asset information specific for AWS Internet Gateways.", + "id": "AwsInternetGatewayDetails", + "properties": {}, + "type": "object" + }, "AwsLambdaFunctionDetails": { "description": "Asset information specific for AWS Lambda functions.", "id": "AwsLambdaFunctionDetails", @@ -3622,6 +3781,12 @@ }, "type": "object" }, + "AwsSnsTopicDetails": { + "description": "Asset information specific for AWS SNS Topics.", + "id": "AwsSnsTopicDetails", + "properties": {}, + "type": "object" + }, "AwsVpcDetails": { "description": "Asset information specific for AWS VPCs.", "id": "AwsVpcDetails", @@ -5278,6 +5443,28 @@ }, "type": "object" }, + "EstimatedUsage": { + "description": "Estimated usage data.", + "id": "EstimatedUsage", + "properties": { + "estimatedCpuPercentage": { + "description": "Optional. Estimated CPU utilization percentage. Must be in the range [1, 100].", + "format": "float", + "type": "number" + }, + "estimatedDiskPercentage": { + "description": "Optional. Estimated disk utilization percentage. Must be in the range [1, 100].", + "format": "float", + "type": "number" + }, + "estimatedMemoryPercentage": { + "description": "Optional. Estimated memory utilization percentage. Must be in the range [1, 100].", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, "ExecutionReport": { "description": "A resource that reports result of the import job execution.", "id": "ExecutionReport", @@ -8103,6 +8290,11 @@ "description": "Output only. Count of assets grouped by database type. Keys here are taken from DatabaseType enum. Only present for databases.", "readOnly": true }, + "estimatedUsageStats": { + "$ref": "ReportSummaryAssetAggregateStatsEstimatedUsageStats", + "description": "Output only. Estimated usage stats for the assets in this collection.", + "readOnly": true + }, "memoryBytesHistogram": { "$ref": "ReportSummaryHistogramChartData", "description": "Histogram showing a distribution of memory sizes." @@ -8161,6 +8353,25 @@ }, "type": "object" }, + "ReportSummaryAssetAggregateStatsEstimatedUsageStats": { + "description": "Estimated usage stats for the assets in this collection.", + "id": "ReportSummaryAssetAggregateStatsEstimatedUsageStats", + "properties": { + "totalAssetsUsingEstimatedUsage": { + "description": "Output only. The number of assets that are using at least one estimated usage metric for rightsizing.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "totalVirtualMachinesUsingEstimatedUsage": { + "description": "Output only. The number of virtual machines in this finding that are using at least one estimated usage metric for rightsizing.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ReportSummaryChartData": { "description": "Describes a collection of data points rendered as a Chart.", "id": "ReportSummaryChartData", @@ -9590,6 +9801,10 @@ "$ref": "ComputeEnginePreferences", "description": "Optional. Compute Engine preferences concern insights and recommendations for Compute Engine target." }, + "estimatedUsage": { + "$ref": "EstimatedUsage", + "description": "Optional. Estimated usage data for missing usage data. If performance data is available, it overrides this field. If not set, default values will be used for the usage data." + }, "networkCostParameters": { "$ref": "VirtualMachinePreferencesNetworkCostParameters", "description": "Optional. Parameters that affect network cost estimations. If not set, default values will be used for the parameters." diff --git a/discovery/monitoring-v1.json b/discovery/monitoring-v1.json index 119d4149291..598e7c44393 100644 --- a/discovery/monitoring-v1.json +++ b/discovery/monitoring-v1.json @@ -753,7 +753,7 @@ } } }, - "revision": "20260212", + "revision": "20260402", "rootUrl": "https://monitoring.googleapis.com/", "schemas": { "Aggregation": { @@ -1087,21 +1087,6 @@ }, "type": "object" }, - "CoordinatedWidget": { - "description": "A widget that contains two widget visualizations that are coordinated in display. Currently, we only support the primary widget of TimeSeriesTable with the secondary widget of XyChart.", - "id": "CoordinatedWidget", - "properties": { - "primary": { - "$ref": "Widget", - "description": "Required. The primary visualization. Must be set. Must contain a data source." - }, - "secondary": { - "$ref": "Widget", - "description": "Required. The secondary visualization. Must be set. Must contain a data source." - } - }, - "type": "object" - }, "Dashboard": { "description": "A Google Stackdriver dashboard. Dashboards define the content and layout of pages in the Stackdriver web application.", "id": "Dashboard", @@ -1273,7 +1258,7 @@ "type": "array" }, "minAlignmentPeriod": { - "description": "Optional. The lower bound on data point frequency for this data set, implemented by specifying the minimum alignment period to use in a time series query For example, if the data is published once every 10 minutes, the min_alignment_period should be at least 10 minutes. It would not make sense to fetch and align data at one minute intervals.", + "description": "Optional. The lower bound on data point frequency for this data set, implemented by specifying the minimum alignment period to use in a time series query. For example, if the data is published once every 10 minutes, the min_alignment_period should be at least 10 minutes. It would not make sense to fetch and align data at one minute intervals.For PromQL queries, this field is used to set the minimum interval for the query step, controlling data granularity. Larger values can improve performance on long time ranges. See Querying Basics and Range Queries for more details on the PromQL step.", "format": "google-duration", "type": "string" }, @@ -2377,7 +2362,7 @@ "id": "SparkChartView", "properties": { "minAlignmentPeriod": { - "description": "The lower bound on data point frequency in the chart implemented by specifying the minimum alignment period to use in a time series query. For example, if the data is published once every 10 minutes it would not make sense to fetch and align data at one minute intervals. This field is optional and exists only as a hint.", + "description": "The lower bound on data point frequency in the chart implemented by specifying the minimum alignment period to use in a time series query. For example, if the data is published once every 10 minutes it would not make sense to fetch and align data at one minute intervals. This field is optional and exists only as a hint.For PromQL queries, this field is used to set the minimum interval for the query step, controlling data granularity. Larger values can improve performance on long time ranges. See Querying Basics and Range Queries for more details on the PromQL step.", "format": "google-duration", "type": "string" }, @@ -3021,10 +3006,6 @@ "$ref": "CollapsibleGroup", "description": "A widget that groups the other widgets. All widgets that are within the area spanned by the grouping widget are considered member widgets." }, - "coordinatedWidget": { - "$ref": "CoordinatedWidget", - "description": "A widget that contains two widget visualizations that are coordinated in display." - }, "errorReportingPanel": { "$ref": "ErrorReportingPanel", "description": "A widget that displays a list of error groups." diff --git a/discovery/mybusinessaccountmanagement-v1.json b/discovery/mybusinessaccountmanagement-v1.json index 88f44408258..5f7a2af51fc 100644 --- a/discovery/mybusinessaccountmanagement-v1.json +++ b/discovery/mybusinessaccountmanagement-v1.json @@ -530,7 +530,7 @@ } } }, - "revision": "20250615", + "revision": "20260419", "rootUrl": "https://mybusinessaccountmanagement.googleapis.com/", "schemas": { "AcceptInvitationRequest": { @@ -906,7 +906,7 @@ "id": "TargetLocation", "properties": { "address": { - "description": "The address of the location to which the user is invited.", + "description": "The address of the location to which the user is invited. Not always populated.", "type": "string" }, "locationName": { diff --git a/discovery/mybusinessbusinessinformation-v1.json b/discovery/mybusinessbusinessinformation-v1.json index d83b1b31b96..c83f632f37f 100644 --- a/discovery/mybusinessbusinessinformation-v1.json +++ b/discovery/mybusinessbusinessinformation-v1.json @@ -437,7 +437,7 @@ } }, "get": { - "description": "Returns the specified location.", + "description": "Returns the specified location as last set by the merchant. It may not reflect updates from Google or user-generated content that are live on Google Maps.", "flatPath": "v1/locations/{locationsId}", "httpMethod": "GET", "id": "mybusinessbusinessinformation.locations.get", @@ -465,7 +465,7 @@ } }, "getAttributes": { - "description": "Looks up all the attributes set for a given location.", + "description": "Retrieves attributes for a location as last set by the merchant. It may not reflect updates from Google or user-generated content that are live on Google Maps.", "flatPath": "v1/locations/{locationsId}/attributes", "httpMethod": "GET", "id": "mybusinessbusinessinformation.locations.getAttributes", @@ -487,7 +487,7 @@ } }, "getGoogleUpdated": { - "description": "Gets the Google-updated version of the specified location.", + "description": "Returns the specified location as it appears live on Google Maps and Search. This consumer-facing view may have been updated by Google or user-generated content and may differ from the merchant's version. The returned GoogleUpdatedLocation contains masks that indicate which fields differ from the merchant's information.", "flatPath": "v1/locations/{locationsId}:getGoogleUpdated", "httpMethod": "GET", "id": "mybusinessbusinessinformation.locations.getGoogleUpdated", @@ -586,7 +586,7 @@ "attributes": { "methods": { "getGoogleUpdated": { - "description": "Gets the Google-updated version of the specified location.", + "description": "Retrieves attributes for a location as they appear live on Google Maps and Search. This consumer-facing view may have been updated by Google or user-generated content and may differ from the merchant's version.", "flatPath": "v1/locations/{locationsId}/attributes:getGoogleUpdated", "httpMethod": "GET", "id": "mybusinessbusinessinformation.locations.attributes.getGoogleUpdated", @@ -612,7 +612,7 @@ } } }, - "revision": "20250723", + "revision": "20260426", "rootUrl": "https://mybusinessbusinessinformation.googleapis.com/", "schemas": { "AdWordsLocationExtensions": { @@ -922,7 +922,7 @@ "type": "object" }, "FreeFormServiceItem": { - "description": "Represents a free-form service offered by the merchant. These are services that are not exposed as part of our structure service data. The merchant manually enters the names for of such services via a geomerchant surface.", + "description": "Represents a free-form service offered by the merchant. These are services that are not exposed as part of our structure service data. The merchant manually enters the names for such services using a geomerchant surface.", "id": "FreeFormServiceItem", "properties": { "category": { @@ -931,7 +931,7 @@ }, "label": { "$ref": "Label", - "description": "Required. Language-tagged labels for the item. We recommend that item names be 140 characters or less, and descriptions 250 characters or less. This field should only be set if the input is a custom service item. Standardized service types should be updated via service_type_id." + "description": "Required. Language-tagged labels for the item. We recommend that item names be 140 characters or less, and descriptions 250 characters or less. This field should only be set if the input is a custom service item. Standardized service types should be updated using service_type_id." } }, "type": "object" @@ -956,11 +956,11 @@ "type": "object" }, "GoogleUpdatedLocation": { - "description": "Represents a location that was modified by Google.", + "description": "Represents the view of a location as it appears to consumers, which includes updates that are currently serving on Google Maps and Search.", "id": "GoogleUpdatedLocation", "properties": { "diffMask": { - "description": "The fields that Google updated.", + "description": "The fields where the values in the view as it appears to consumers are different than the merchant's information. To accept these changes, patch the location. To reject, patch with your preferred values.", "format": "google-fieldmask", "type": "string" }, @@ -969,7 +969,7 @@ "description": "The Google-updated version of this location." }, "pendingMask": { - "description": "The fields that have pending edits that haven't yet been pushed to Maps and Search.", + "description": "The fields where the merchant has provided an update that is currently in flight and hasn't yet been published to Maps and Search. This mask only tracks the status of the merchant's own edits, not external changes.", "format": "google-fieldmask", "type": "string" } @@ -1124,7 +1124,7 @@ }, "profile": { "$ref": "Profile", - "description": "Optional. Describes your business in your own voice and shares with users the unique story of your business and offerings. This field is required for all categories except lodging categories (e.g. hotels, motels, inns)." + "description": "Optional. Describes your business in your own voice and shares with users the unique story of your business and offerings. This field is required for all categories except lodging categories (e.g., hotels, motels, inns)." }, "regularHours": { "$ref": "BusinessHours", @@ -1214,7 +1214,7 @@ "type": "string" }, "hasGoogleUpdated": { - "description": "Output only. Indicates whether the place ID associated with this location has updates that need to be updated or rejected by the client. If this boolean is set, you should call the `getGoogleUpdated` method to lookup information that's needs to be verified.", + "description": "Output only. Indicates whether the place ID associated with this location has updates that need to be updated or rejected by the client. If this boolean is set, you should call the `getGoogleUpdated` method to look up information that's needs to be verified.", "readOnly": true, "type": "boolean" }, @@ -1500,7 +1500,7 @@ "enumDescriptions": [ "Type unspecified.", "This represents a relation between 2 locations which share one physical area, same brand/upper management/organization, but with different key attributes like store hours or phone numbers. For example, Costco Pharmacy is a department in Costco Wholesale.", - "This represents the cases where 2 locations are co-located in the same physical location, but from different companies (e.g. Starbucks in a Safeway, shops in a mall)." + "This represents the cases where 2 locations are co-located in the same physical location, but from different companies (e.g., Starbucks in a Safeway, shops in a mall)." ], "type": "string" } diff --git a/discovery/mybusinessverifications-v1.json b/discovery/mybusinessverifications-v1.json index 43cf7bed4b4..cf62752f363 100644 --- a/discovery/mybusinessverifications-v1.json +++ b/discovery/mybusinessverifications-v1.json @@ -256,7 +256,7 @@ } } }, - "revision": "20250804", + "revision": "20260415", "rootUrl": "https://mybusinessverifications.googleapis.com/", "schemas": { "AddressVerificationData": { @@ -541,7 +541,6 @@ "PHONE_CALL", "SMS", "AUTO", - "VETTED_PARTNER", "TRUSTED_PARTNER" ], "enumDescriptions": [ @@ -551,7 +550,6 @@ "Make a phone call with a verification PIN to a specific phone number. The PIN is used to complete verification with Google.", "Send an SMS with a verification PIN to a specific phone number. The PIN is used to complete verification with Google.", "Verify the location without additional user action. This option may not be available for all locations.", - "This option may not be available for all locations.", "Verify the location via a trusted partner." ], "type": "string" @@ -608,7 +606,6 @@ "PHONE_CALL", "SMS", "AUTO", - "VETTED_PARTNER", "TRUSTED_PARTNER" ], "enumDescriptions": [ @@ -618,7 +615,6 @@ "Make a phone call with a verification PIN to a specific phone number. The PIN is used to complete verification with Google.", "Send an SMS with a verification PIN to a specific phone number. The PIN is used to complete verification with Google.", "Verify the location without additional user action. This option may not be available for all locations.", - "This option may not be available for all locations.", "Verify the location via a trusted partner." ], "type": "string" @@ -677,7 +673,6 @@ "PHONE_CALL", "SMS", "AUTO", - "VETTED_PARTNER", "TRUSTED_PARTNER" ], "enumDescriptions": [ @@ -687,7 +682,6 @@ "Make a phone call with a verification PIN to a specific phone number. The PIN is used to complete verification with Google.", "Send an SMS with a verification PIN to a specific phone number. The PIN is used to complete verification with Google.", "Verify the location without additional user action. This option may not be available for all locations.", - "This option may not be available for all locations.", "Verify the location via a trusted partner." ], "type": "string" diff --git a/discovery/netapp-v1.json b/discovery/netapp-v1.json index 0fa025e38f3..c5cc6d059bb 100644 --- a/discovery/netapp-v1.json +++ b/discovery/netapp-v1.json @@ -352,7 +352,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "netapp.projects.locations.list", @@ -361,7 +361,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1809,6 +1809,118 @@ "https://www.googleapis.com/auth/cloud-platform" ] } + }, + "resources": { + "ontap": { + "methods": { + "executeOntapDelete": { + "description": "`ExecuteOntapDelete` dispatches the ONTAP `DELETE` request to the `StoragePool` cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/storagePools/{storagePoolsId}/ontap/{ontapId}", + "httpMethod": "DELETE", + "id": "netapp.projects.locations.storagePools.ontap.executeOntapDelete", + "parameterOrder": [ + "ontapPath" + ], + "parameters": { + "ontapPath": { + "description": "Required. The resource path of the ONTAP resource. Format: `projects/{project_number}/locations/{location_id}/storagePools/{storage_pool_id}/ontap/{ontap_resource_path}`. For example: `projects/123456789/locations/us-central1/storagePools/my-storage-pool/ontap/api/storage/volumes`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/storagePools/[^/]+/ontap/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+ontapPath}", + "response": { + "$ref": "ExecuteOntapDeleteResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "executeOntapGet": { + "description": "`ExecuteOntapGet` dispatches the ONTAP `GET` request to the `StoragePool` cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/storagePools/{storagePoolsId}/ontap/{ontapId}", + "httpMethod": "GET", + "id": "netapp.projects.locations.storagePools.ontap.executeOntapGet", + "parameterOrder": [ + "ontapPath" + ], + "parameters": { + "ontapPath": { + "description": "Required. The resource path of the ONTAP resource. Format: `projects/{project_number}/locations/{location_id}/storagePools/{storage_pool_id}/ontap/{ontap_resource_path}`. For example: `projects/123456789/locations/us-central1/storagePools/my-storage-pool/ontap/api/storage/volumes`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/storagePools/[^/]+/ontap/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+ontapPath}", + "response": { + "$ref": "ExecuteOntapGetResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "executeOntapPatch": { + "description": "`ExecuteOntapPatch` dispatches the ONTAP `PATCH` request to the `StoragePool` cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/storagePools/{storagePoolsId}/ontap/{ontapId}", + "httpMethod": "PATCH", + "id": "netapp.projects.locations.storagePools.ontap.executeOntapPatch", + "parameterOrder": [ + "ontapPath" + ], + "parameters": { + "ontapPath": { + "description": "Required. The resource path of the ONTAP resource. Format: `projects/{project_number}/locations/{location_id}/storagePools/{storage_pool_id}/ontap/{ontap_resource_path}`. For example: `projects/123456789/locations/us-central1/storagePools/my-storage-pool/ontap/api/storage/volumes`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/storagePools/[^/]+/ontap/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+ontapPath}", + "request": { + "$ref": "ExecuteOntapPatchRequest" + }, + "response": { + "$ref": "ExecuteOntapPatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "executeOntapPost": { + "description": "`ExecuteOntapPost` dispatches the ONTAP `POST` request to the `StoragePool` cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/storagePools/{storagePoolsId}/ontap/{ontapId}", + "httpMethod": "POST", + "id": "netapp.projects.locations.storagePools.ontap.executeOntapPost", + "parameterOrder": [ + "ontapPath" + ], + "parameters": { + "ontapPath": { + "description": "Required. The resource path of the ONTAP resource. Format: `projects/{project_number}/locations/{location_id}/storagePools/{storage_pool_id}/ontap/{ontap_resource_path}`. For example: `projects/123456789/locations/us-central1/storagePools/my-storage-pool/ontap/api/storage/volumes`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/storagePools/[^/]+/ontap/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+ontapPath}", + "request": { + "$ref": "ExecuteOntapPostRequest" + }, + "response": { + "$ref": "ExecuteOntapPostResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } }, "volumes": { @@ -2715,7 +2827,7 @@ } } }, - "revision": "20260218", + "revision": "20260426", "rootUrl": "https://netapp.googleapis.com/", "schemas": { "ActiveDirectory": { @@ -2921,7 +3033,7 @@ "type": "string" }, "sourceVolume": { - "description": "Volume full name of this backup belongs to. Format: `projects/{projects_id}/locations/{location}/volumes/{volume_id}`", + "description": "Volume full name of this backup belongs to. Either source_volume or ontap_source should be provided. Format: `projects/{projects_id}/locations/{location}/volumes/{volume_id}`", "type": "string" }, "state": { @@ -3521,6 +3633,96 @@ }, "type": "object" }, + "ExecuteOntapDeleteResponse": { + "description": "Response message for `ExecuteOntapDelete` API.", + "id": "ExecuteOntapDeleteResponse", + "properties": { + "body": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The raw `JSON` body of the response.", + "type": "object" + } + }, + "type": "object" + }, + "ExecuteOntapGetResponse": { + "description": "Response message for `ExecuteOntapGet` API.", + "id": "ExecuteOntapGetResponse", + "properties": { + "body": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The raw `JSON` body of the response.", + "type": "object" + } + }, + "type": "object" + }, + "ExecuteOntapPatchRequest": { + "description": "Request message for `ExecuteOntapPatch` API.", + "id": "ExecuteOntapPatchRequest", + "properties": { + "body": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Required. The raw `JSON` body of the request. The body should be in the format of the ONTAP resource. For example: ``` { \"body\": { \"field1\": \"value1\", \"field2\": \"value2\", } } ```", + "type": "object" + } + }, + "type": "object" + }, + "ExecuteOntapPatchResponse": { + "description": "Response message for `ExecuteOntapPatch` API.", + "id": "ExecuteOntapPatchResponse", + "properties": { + "body": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The raw `JSON` body of the response.", + "type": "object" + } + }, + "type": "object" + }, + "ExecuteOntapPostRequest": { + "description": "Request message for `ExecuteOntapPost` API.", + "id": "ExecuteOntapPostRequest", + "properties": { + "body": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Required. The raw `JSON` body of the request. The body should be in the format of the ONTAP resource. For example: ``` { \"body\": { \"field1\": \"value1\", \"field2\": \"value2\", } } ```", + "type": "object" + } + }, + "type": "object" + }, + "ExecuteOntapPostResponse": { + "description": "Response message for `ExecuteOntapPost` API.", + "id": "ExecuteOntapPostResponse", + "properties": { + "body": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The raw `JSON` body of the response.", + "type": "object" + } + }, + "type": "object" + }, "ExportPolicy": { "description": "Defines the export policy for the volume.", "id": "ExportPolicy", @@ -3849,6 +4051,18 @@ }, "type": "object" }, + "LargeCapacityConfig": { + "description": "Configuration for a Large Capacity Volume. A Large Capacity Volume supports sizes ranging from 4.8 TiB to 20 PiB, it is composed of multiple internal constituents, and must be created in a large capacity pool.", + "id": "LargeCapacityConfig", + "properties": { + "constituentCount": { + "description": "Optional. The number of internal constituents (e.g., FlexVols) for this large volume. The minimum number of constituents is 2.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "ListActiveDirectoriesResponse": { "description": "ListActiveDirectoriesResponse contains all the active directories requested.", "id": "ListActiveDirectoriesResponse", @@ -4690,7 +4904,7 @@ "id": "RestoreParameters", "properties": { "sourceBackup": { - "description": "Full name of the backup resource. Format: projects/{project}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}", + "description": "Full name of the backup resource. Format for standard backup: projects/{project}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id} Format for BackupDR backup: projects/{project}/locations/{location}/backupVaults/{backup_vault}/dataSources/{data_source}/backups/{backup}", "type": "string" }, "sourceSnapshot": { @@ -5027,6 +5241,20 @@ "description": "Optional. Flag indicating if the pool is NFS LDAP enabled or not.", "type": "boolean" }, + "mode": { + "description": "Optional. Mode of the storage pool. This field is used to control whether the user can perform the ONTAP operations on the storage pool using the GCNV ONTAP Mode APIs. If not specified during creation, it defaults to `DEFAULT`.", + "enum": [ + "MODE_UNSPECIFIED", + "DEFAULT", + "ONTAP" + ], + "enumDescriptions": [ + "The `Mode` is not specified.", + "The resource is managed by the GCNV APIs.", + "The resource is managed by the GCNV ONTAP Mode APIs." + ], + "type": "string" + }, "name": { "description": "Identifier. Name of the storage pool", "type": "string" @@ -5067,6 +5295,20 @@ "readOnly": true, "type": "boolean" }, + "scaleType": { + "description": "Optional. The scale type of the storage pool. Defaults to `SCALE_TYPE_DEFAULT` if not specified.", + "enum": [ + "SCALE_TYPE_UNSPECIFIED", + "SCALE_TYPE_DEFAULT", + "SCALE_TYPE_SCALEOUT" + ], + "enumDescriptions": [ + "Unspecified scale type.", + "Represents standard capacity and performance scale-type. Suitable for general purpose workloads.", + "Represents higher capacity and performance scale-type. Suitable for more demanding workloads." + ], + "type": "string" + }, "serviceLevel": { "description": "Required. Service level of the storage pool", "enum": [ @@ -5126,24 +5368,16 @@ "type": "string" }, "type": { - "description": "Optional. Type of the storage pool. This field is used to control whether the pool supports `FILE` based volumes only or `UNIFIED` (both `FILE` and `BLOCK`) volumes or `UNIFIED_LARGE_CAPACITY` (both `FILE` and `BLOCK`) volumes with large capacity. If not specified during creation, it defaults to `FILE`.", + "description": "Optional. Type of the storage pool. This field is used to control whether the pool supports `FILE` based volumes only or `UNIFIED` (both `FILE` and `BLOCK`) volumes. If not specified during creation, it defaults to `FILE`.", "enum": [ "STORAGE_POOL_TYPE_UNSPECIFIED", "FILE", - "UNIFIED", - "UNIFIED_LARGE_CAPACITY" - ], - "enumDeprecated": [ - false, - false, - false, - true + "UNIFIED" ], "enumDescriptions": [ "Storage pool type is not specified.", "Storage pool type is file.", - "Storage pool type is unified.", - "Deprecated: UNIFIED_LARGE_CAPACITY was previously tag 3." + "Storage pool type is unified." ], "type": "string" }, @@ -5417,9 +5651,13 @@ "type": "object" }, "largeCapacity": { - "description": "Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.", + "description": "Optional. Flag indicating if the volume will be a large capacity volume or a regular volume. This field is used for legacy FILE pools. For Unified pools, use the `large_capacity_config` field instead. This field and `large_capacity_config` are mutually exclusive.", "type": "boolean" }, + "largeCapacityConfig": { + "$ref": "LargeCapacityConfig", + "description": "Optional. Large capacity config for the volume. Enables and configures large capacity for volumes in Unified pools with File protocols. Not applicable for Block protocols in Unified pools. This field and the legacy `large_capacity` boolean field are mutually exclusive." + }, "ldapEnabled": { "description": "Output only. Flag indicating if the volume is NFS LDAP enabled or not.", "readOnly": true, diff --git a/discovery/netapp-v1beta1.json b/discovery/netapp-v1beta1.json index 2eab7593461..d4d7a433ac1 100644 --- a/discovery/netapp-v1beta1.json +++ b/discovery/netapp-v1beta1.json @@ -352,7 +352,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "netapp.projects.locations.list", @@ -361,7 +361,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2827,7 +2827,7 @@ } } }, - "revision": "20260218", + "revision": "20260426", "rootUrl": "https://netapp.googleapis.com/", "schemas": { "ActiveDirectory": { @@ -3033,7 +3033,7 @@ "type": "string" }, "sourceVolume": { - "description": "Volume full name of this backup belongs to. Format: `projects/{projects_id}/locations/{location}/volumes/{volume_id}`", + "description": "Volume full name of this backup belongs to. Either source_volume or ontap_source should be provided. Format: `projects/{projects_id}/locations/{location}/volumes/{volume_id}`", "type": "string" }, "state": { @@ -3240,6 +3240,10 @@ "readOnly": true, "type": "string" }, + "crossProjectVault": { + "description": "Optional. Indicates if the backup vault is a cross project vault.", + "type": "boolean" + }, "description": { "description": "Description of the backup vault.", "type": "string" @@ -4052,7 +4056,7 @@ "type": "object" }, "LargeCapacityConfig": { - "description": "Configuration for a Large Capacity Volume. A Large Capacity Volume supports sizes ranging from 12 TiB to 20 PiB, it is composed of multiple internal constituents, and must be created in a large capacity pool.", + "description": "Configuration for a Large Capacity Volume. A Large Capacity Volume supports sizes ranging from 4.8 TiB to 20 PiB, it is composed of multiple internal constituents, and must be created in a large capacity pool.", "id": "LargeCapacityConfig", "properties": { "constituentCount": { @@ -4904,7 +4908,7 @@ "id": "RestoreParameters", "properties": { "sourceBackup": { - "description": "Full name of the backup resource. Format: projects/{project}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}", + "description": "Full name of the backup resource. Format for standard backup: projects/{project}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id} Format for BackupDR backup: projects/{project}/locations/{location}/backupVaults/{backup_vault}/dataSources/{data_source}/backups/{backup}", "type": "string" }, "sourceSnapshot": { @@ -5249,9 +5253,9 @@ "ONTAP" ], "enumDescriptions": [ - "The `StoragePool` `Mode` is not specified.", - "The `StoragePool` and its resources are managed by the GCNV APIs.", - "The `StoragePool` and its resources are managed by the GCNV ONTAP Mode APIs." + "The `Mode` is not specified.", + "The resource is managed by the GCNV APIs.", + "The resource is managed by the GCNV ONTAP Mode APIs." ], "type": "string" }, @@ -5296,16 +5300,31 @@ "type": "boolean" }, "scaleTier": { - "description": "Optional. The effective scale tier of the storage pool. If `scale_tier` is not specified during creation, this defaults to `SCALE_TIER_STANDARD`.", + "deprecated": true, + "description": "Optional. Deprecated: Use scale_type instead. The effective scale tier of the storage pool. If `scale_tier` is not specified during creation, this defaults to `SCALE_TIER_STANDARD`.", "enum": [ "SCALE_TIER_UNSPECIFIED", "SCALE_TIER_STANDARD", "SCALE_TIER_ENTERPRISE" ], "enumDescriptions": [ - "The default value. This value is unused.", - "The standard capacity and performance tier. Suitable for general purpose workloads.", - "A higher capacity and performance tier. Suitable for more demanding workloads." + "Deprecated: Use ScaleType instead. The default value. This value is unused.", + "Deprecated: Use ScaleType instead. The standard capacity and performance tier. Suitable for general purpose workloads.", + "Deprecated: Use ScaleType instead. A higher capacity and performance tier. Suitable for more demanding workloads." + ], + "type": "string" + }, + "scaleType": { + "description": "Optional. The scale type of the storage pool. Defaults to `SCALE_TYPE_DEFAULT` if not specified.", + "enum": [ + "SCALE_TYPE_UNSPECIFIED", + "SCALE_TYPE_DEFAULT", + "SCALE_TYPE_SCALEOUT" + ], + "enumDescriptions": [ + "Unspecified scale type.", + "Represents standard capacity and performance scale-type. Suitable for general purpose workloads.", + "Represents higher capacity and performance scale-type. Suitable for more demanding workloads." ], "type": "string" }, @@ -5368,24 +5387,16 @@ "type": "string" }, "type": { - "description": "Optional. Type of the storage pool. This field is used to control whether the pool supports `FILE` based volumes only or `UNIFIED` (both `FILE` and `BLOCK`) volumes or `UNIFIED_LARGE_CAPACITY` (both `FILE` and `BLOCK`) volumes with large capacity. If not specified during creation, it defaults to `FILE`.", + "description": "Optional. Type of the storage pool. This field is used to control whether the pool supports `FILE` based volumes only or `UNIFIED` (both `FILE` and `BLOCK`) volumes. If not specified during creation, it defaults to `FILE`.", "enum": [ "STORAGE_POOL_TYPE_UNSPECIFIED", "FILE", - "UNIFIED", - "UNIFIED_LARGE_CAPACITY" - ], - "enumDeprecated": [ - false, - false, - false, - true + "UNIFIED" ], "enumDescriptions": [ "Storage pool type is not specified.", "Storage pool type is file.", - "Storage pool type is unified.", - "Deprecated: UNIFIED_LARGE_CAPACITY was previously tag 3." + "Storage pool type is unified." ], "type": "string" }, @@ -5659,12 +5670,12 @@ "type": "object" }, "largeCapacity": { - "description": "Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.", + "description": "Optional. Flag indicating if the volume will be a large capacity volume or a regular volume. This field is used for legacy FILE pools. For Unified pools, use the `large_capacity_config` field instead. This field and `large_capacity_config` are mutually exclusive.", "type": "boolean" }, "largeCapacityConfig": { "$ref": "LargeCapacityConfig", - "description": "Optional. Large capacity config for the volume." + "description": "Optional. Large capacity config for the volume. Enables and configures large capacity for volumes in Unified pools with File protocols. Not applicable for Block protocols in Unified pools. This field and the legacy `large_capacity` boolean field are mutually exclusive." }, "ldapEnabled": { "description": "Output only. Flag indicating if the volume is NFS LDAP enabled or not.", diff --git a/discovery/networkconnectivity-v1.json b/discovery/networkconnectivity-v1.json index 215598ee3cc..e6e02ffcc39 100644 --- a/discovery/networkconnectivity-v1.json +++ b/discovery/networkconnectivity-v1.json @@ -163,7 +163,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "networkconnectivity.projects.locations.list", @@ -172,7 +172,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2468,6 +2468,81 @@ } } }, + "remoteTransportProfiles": { + "methods": { + "get": { + "description": "Gets details of a single RemoteTransportProfile.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/remoteTransportProfiles/{remoteTransportProfilesId}", + "httpMethod": "GET", + "id": "networkconnectivity.projects.locations.remoteTransportProfiles.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/remoteTransportProfiles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "RemoteTransportProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists RemoteTransportProfiles in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/remoteTransportProfiles", + "httpMethod": "GET", + "id": "networkconnectivity.projects.locations.remoteTransportProfiles.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 ListRemoteTransportProfilesRequest.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/remoteTransportProfiles", + "response": { + "$ref": "ListRemoteTransportProfilesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "serviceClasses": { "methods": { "delete": { @@ -2530,37 +2605,6 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "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": "v1/projects/{projectsId}/locations/{locationsId}/serviceClasses/{serviceClassesId}:getIamPolicy", - "httpMethod": "GET", - "id": "networkconnectivity.projects.locations.serviceClasses.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/[^/]+/serviceClasses/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:getIamPolicy", - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "list": { "description": "Lists ServiceClasses in a given project and location.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/serviceClasses", @@ -2645,62 +2689,6 @@ "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": "v1/projects/{projectsId}/locations/{locationsId}/serviceClasses/{serviceClassesId}:setIamPolicy", - "httpMethod": "POST", - "id": "networkconnectivity.projects.locations.serviceClasses.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/[^/]+/serviceClasses/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+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": "v1/projects/{projectsId}/locations/{locationsId}/serviceClasses/{serviceClassesId}:testIamPermissions", - "httpMethod": "POST", - "id": "networkconnectivity.projects.locations.serviceClasses.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/[^/]+/serviceClasses/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] } } }, @@ -2804,37 +2792,6 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "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": "v1/projects/{projectsId}/locations/{locationsId}/serviceConnectionMaps/{serviceConnectionMapsId}:getIamPolicy", - "httpMethod": "GET", - "id": "networkconnectivity.projects.locations.serviceConnectionMaps.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/[^/]+/serviceConnectionMaps/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:getIamPolicy", - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "list": { "description": "Lists ServiceConnectionMaps in a given project and location.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/serviceConnectionMaps", @@ -2919,62 +2876,6 @@ "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": "v1/projects/{projectsId}/locations/{locationsId}/serviceConnectionMaps/{serviceConnectionMapsId}:setIamPolicy", - "httpMethod": "POST", - "id": "networkconnectivity.projects.locations.serviceConnectionMaps.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/[^/]+/serviceConnectionMaps/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+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": "v1/projects/{projectsId}/locations/{locationsId}/serviceConnectionMaps/{serviceConnectionMapsId}:testIamPermissions", - "httpMethod": "POST", - "id": "networkconnectivity.projects.locations.serviceConnectionMaps.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/[^/]+/serviceConnectionMaps/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] } } }, @@ -3122,37 +3023,6 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "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": "v1/projects/{projectsId}/locations/{locationsId}/serviceConnectionPolicies/{serviceConnectionPoliciesId}:getIamPolicy", - "httpMethod": "GET", - "id": "networkconnectivity.projects.locations.serviceConnectionPolicies.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/[^/]+/serviceConnectionPolicies/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:getIamPolicy", - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "list": { "description": "Lists ServiceConnectionPolicies in a given project and location.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/serviceConnectionPolicies", @@ -3237,62 +3107,6 @@ "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": "v1/projects/{projectsId}/locations/{locationsId}/serviceConnectionPolicies/{serviceConnectionPoliciesId}:setIamPolicy", - "httpMethod": "POST", - "id": "networkconnectivity.projects.locations.serviceConnectionPolicies.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/[^/]+/serviceConnectionPolicies/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+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": "v1/projects/{projectsId}/locations/{locationsId}/serviceConnectionPolicies/{serviceConnectionPoliciesId}:testIamPermissions", - "httpMethod": "POST", - "id": "networkconnectivity.projects.locations.serviceConnectionPolicies.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/[^/]+/serviceConnectionPolicies/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] } } }, @@ -3667,45 +3481,227 @@ "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/[^/]+/spokes/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/spokes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+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": "v1/projects/{projectsId}/locations/{locationsId}/spokes/{spokesId}:testIamPermissions", + "httpMethod": "POST", + "id": "networkconnectivity.projects.locations.spokes.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/[^/]+/spokes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "transports": { + "methods": { + "create": { + "description": "Creates a new Transport in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transports", + "httpMethod": "POST", + "id": "networkconnectivity.projects.locations.transports.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "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" + }, + "transportId": { + "description": "Required. Id of the requesting object", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/transports", + "request": { + "$ref": "Transport" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Transport.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transports/{transportsId}", + "httpMethod": "DELETE", + "id": "networkconnectivity.projects.locations.transports.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/transports/[^/]+$", + "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": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Transport.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transports/{transportsId}", + "httpMethod": "GET", + "id": "networkconnectivity.projects.locations.transports.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/transports/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Transport" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Transports in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transports", + "httpMethod": "GET", + "id": "networkconnectivity.projects.locations.transports.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 ListTransportsRequest.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+resource}:setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, + "path": "v1/{+parent}/transports", "response": { - "$ref": "Policy" + "$ref": "ListTransportsResponse" }, "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": "v1/projects/{projectsId}/locations/{locationsId}/spokes/{spokesId}:testIamPermissions", - "httpMethod": "POST", - "id": "networkconnectivity.projects.locations.spokes.testIamPermissions", + "patch": { + "description": "Updates the parameters of a single Transport.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transports/{transportsId}", + "httpMethod": "PATCH", + "id": "networkconnectivity.projects.locations.transports.patch", "parameterOrder": [ - "resource" + "name" ], "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.", + "name": { + "description": "Identifier. Name of the resource.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/spokes/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/transports/[^/]+$", "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 Transport 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 present in the request will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" } }, - "path": "v1/{+resource}:testIamPermissions", + "path": "v1/{+name}", "request": { - "$ref": "TestIamPermissionsRequest" + "$ref": "Transport" }, "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -3718,7 +3714,7 @@ } } }, - "revision": "20260129", + "revision": "20260422", "rootUrl": "https://networkconnectivity.googleapis.com/", "schemas": { "AcceptHubSpokeRequest": { @@ -5018,6 +5014,27 @@ "description": "A collection of VLAN attachment resources. These resources should be redundant attachments that all advertise the same prefixes to Google Cloud. Alternatively, in active/passive configurations, all attachments should be capable of advertising the same prefixes.", "id": "LinkedInterconnectAttachments", "properties": { + "excludeExportRanges": { + "description": "Optional. Dynamic routes overlapped/encompassed by exclude export ranges are excluded during export to hub.", + "items": { + "type": "string" + }, + "type": "array" + }, + "excludeImportRanges": { + "description": "Optional. Hub routes overlapped/encompassed by exclude import ranges are excluded during import from hub.", + "items": { + "type": "string" + }, + "type": "array" + }, + "includeExportRanges": { + "description": "Optional. Dynamic routes fully encompassed by include export ranges are included during export to hub.", + "items": { + "type": "string" + }, + "type": "array" + }, "includeImportRanges": { "description": "Optional. Hub routes fully encompassed by include import ranges are included during import from hub.", "items": { @@ -5102,6 +5119,27 @@ "description": "A collection of router appliance instances. If you configure multiple router appliance instances to receive data from the same set of sites outside of Google Cloud, we recommend that you associate those instances with the same spoke.", "id": "LinkedRouterApplianceInstances", "properties": { + "excludeExportRanges": { + "description": "Optional. Dynamic routes overlapped/encompassed by exclude export ranges are excluded during export to hub.", + "items": { + "type": "string" + }, + "type": "array" + }, + "excludeImportRanges": { + "description": "Optional. Hub routes overlapped/encompassed by exclude import ranges are excluded during import from hub.", + "items": { + "type": "string" + }, + "type": "array" + }, + "includeExportRanges": { + "description": "Optional. Dynamic routes fully encompassed by include export ranges are included during export to hub.", + "items": { + "type": "string" + }, + "type": "array" + }, "includeImportRanges": { "description": "Optional. Hub routes fully encompassed by include import ranges are included during import from hub.", "items": { @@ -5181,6 +5219,27 @@ "description": "A collection of Cloud VPN tunnel resources. These resources should be redundant HA VPN tunnels that all advertise the same prefixes to Google Cloud. Alternatively, in a passive/active configuration, all tunnels should be capable of advertising the same prefixes.", "id": "LinkedVpnTunnels", "properties": { + "excludeExportRanges": { + "description": "Optional. Dynamic routes overlapped/encompassed by exclude export ranges are excluded during export to hub.", + "items": { + "type": "string" + }, + "type": "array" + }, + "excludeImportRanges": { + "description": "Optional. Hub routes overlapped/encompassed by exclude import ranges are excluded during import from hub.", + "items": { + "type": "string" + }, + "type": "array" + }, + "includeExportRanges": { + "description": "Optional. Dynamic routes fully encompassed by include export ranges are included during export to hub.", + "items": { + "type": "string" + }, + "type": "array" + }, "includeImportRanges": { "description": "Optional. Hub routes fully encompassed by include import ranges are included during import from hub.", "items": { @@ -5468,6 +5527,31 @@ }, "type": "object" }, + "ListRemoteTransportProfilesResponse": { + "description": "Message for response to listing RemoteTransportProfiles", + "id": "ListRemoteTransportProfilesResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "remoteTransportProfiles": { + "description": "The list of RemoteTransportProfiles.", + "items": { + "$ref": "RemoteTransportProfile" + }, + "type": "array" + }, + "unreachable": { + "description": "Unordered list. Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListRouteTablesResponse": { "description": "Response for HubService.ListRouteTables method.", "id": "ListRouteTablesResponse", @@ -5643,6 +5727,31 @@ }, "type": "object" }, + "ListTransportsResponse": { + "description": "Message for response to listing Transports.", + "id": "ListTransportsResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "transports": { + "description": "The list of Transport.", + "items": { + "$ref": "Transport" + }, + "type": "array" + }, + "unreachable": { + "description": "Unordered list. Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "Location": { "description": "A resource that represents a Google Cloud location.", "id": "Location", @@ -5688,13 +5797,15 @@ "LOCATION_FEATURE_UNSPECIFIED", "SITE_TO_CLOUD_SPOKES", "SITE_TO_SITE_SPOKES", - "GATEWAY_SPOKES" + "GATEWAY_SPOKES", + "TRANSPORTS" ], "enumDescriptions": [ "No publicly supported feature in this location", "Site-to-cloud spokes are supported in this location", "Site-to-site spokes are supported in this location", - "Gateway spokes are supported in this location." + "Gateway spokes are supported in this location.", + "Supports transports in this location." ], "type": "string" }, @@ -6410,6 +6521,132 @@ }, "type": "object" }, + "RemoteTransportProfile": { + "description": "Message describing RemoteTransportProfile object.", + "id": "RemoteTransportProfile", + "properties": { + "description": { + "description": "Output only. Description of the profile.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Output only. Human readable name of this profile, used to identify this profile in the UI.", + "readOnly": true, + "type": "string" + }, + "flow": { + "description": "Output only. Type of provisioning flows supported by this profile.", + "enum": [ + "KEY_PROVISIONING_FLOW_UNSPECIFIED", + "INPUT_ONLY", + "OUTPUT_ONLY", + "INPUT_OR_OUTPUT" + ], + "enumDescriptions": [ + "Unspecified key provisioning flow.", + "The activationKey field on the Transport must be included in a create or patch request to establish connectivity.", + "The generatedActivationKey field is populated and must be read from the resource and passed into the other provider.", + "Both activation key fields are allowed for establishing connectivity. If a key is input, the generated key is still present after provisioning is finished." + ], + "readOnly": true, + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Output only. Labels as key value pairs.", + "readOnly": true, + "type": "object" + }, + "name": { + "description": "Identifier. Name of the resource in the format of $provider-$site.", + "type": "string" + }, + "orderState": { + "description": "Output only. Order state for this profile.", + "enum": [ + "STATE_UNSPECIFIED", + "CLOSED", + "OPEN" + ], + "enumDescriptions": [ + "Unspecified state.", + "Not enough capacity for customers to order.", + "Enough capacity to fulfill an order." + ], + "readOnly": true, + "type": "string" + }, + "provider": { + "description": "Output only. Name of the provider on the other end of this profile. E.g. “Amazon Web Services” or “Microsoft Azure”.", + "readOnly": true, + "type": "string" + }, + "providerSite": { + "description": "Output only. If the profile is a Cloud Service Provider with compute resources, this is populated with the region where connectivity is being established. If the profile provides facility-level selection, this is an identity of the facility any connections on this profile are going through.", + "readOnly": true, + "type": "string" + }, + "sla": { + "description": "Output only. Availability class that will be configured for this particular RemoteTransportProfile.", + "enum": [ + "SERVICE_LEVEL_AVAILABILITY_UNSPECIFIED", + "HIGH", + "MAXIMUM" + ], + "enumDescriptions": [ + "Unspecified service level availability.", + "This represents a 99.9% service level on the availability of the configured connectivity.", + "This represents a 99.99% service level on the availability of the configured connectivity." + ], + "readOnly": true, + "type": "string" + }, + "supportedBandwidths": { + "description": "Output only. List of bandwidth enum values that are supported by this profile.", + "items": { + "enum": [ + "BANDWIDTH_UNSPECIFIED", + "BPS_50M", + "BPS_100M", + "BPS_200M", + "BPS_300M", + "BPS_400M", + "BPS_500M", + "BPS_1G", + "BPS_2G", + "BPS_5G", + "BPS_10G", + "BPS_20G", + "BPS_50G", + "BPS_100G" + ], + "enumDescriptions": [ + "Unspecified bandwidth.", + "50 Megabits per second.", + "100 Megabits per second.", + "200 Megabits per second.", + "300 Megabits per second.", + "400 Megabits per second.", + "500 Megabits per second.", + "1 Gigabit per second.", + "2 Gigabits per second.", + "5 Gigabits per second.", + "10 Gigabits per second.", + "20 Gigabits per second.", + "50 Gigabits per second.", + "100 Gigabits per second." + ], + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, "Route": { "description": "A route defines a path from VM instances within a spoke to a specific destination resource. Only VPC spokes have routes.", "id": "Route", @@ -7333,6 +7570,152 @@ }, "type": "object" }, + "Transport": { + "description": "Message describing Transport object.", + "id": "Transport", + "properties": { + "advertisedRoutes": { + "description": "Optional. List of IP Prefixes that will be advertised to the remote provider. Both IPv4 and IPv6 addresses are supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "bandwidth": { + "description": "Optional. Bandwidth of the Transport. This must be one of the supported bandwidths for the remote profile, and must be set when no activation key is being provided.", + "enum": [ + "BANDWIDTH_UNSPECIFIED", + "BPS_50M", + "BPS_100M", + "BPS_200M", + "BPS_300M", + "BPS_400M", + "BPS_500M", + "BPS_1G", + "BPS_2G", + "BPS_5G", + "BPS_10G", + "BPS_20G", + "BPS_50G", + "BPS_100G" + ], + "enumDescriptions": [ + "Unspecified bandwidth.", + "50 Megabits per second.", + "100 Megabits per second.", + "200 Megabits per second.", + "300 Megabits per second.", + "400 Megabits per second.", + "500 Megabits per second.", + "1 Gigabit per second.", + "2 Gigabits per second.", + "5 Gigabits per second.", + "10 Gigabits per second.", + "20 Gigabits per second.", + "50 Gigabits per second.", + "100 Gigabits per second." + ], + "type": "string" + }, + "createTime": { + "description": "Output only. Create time stamp.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. Description of the Transport.", + "type": "string" + }, + "generatedActivationKey": { + "description": "Output only. Google-generated activation key. This is only output if the selected profile supports an OUTPUT key flow. Inputting this to the provider is only valid while the resource is in a PENDING_KEY state. Once the provider has accepted the key, the resource will move to the CONFIGURING state.", + "readOnly": true, + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Labels as key value pairs.", + "type": "object" + }, + "mtuLimit": { + "description": "Output only. The maximum transmission unit (MTU) of a packet that can be sent over this transport.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "name": { + "description": "Identifier. Name of the resource.", + "type": "string" + }, + "network": { + "description": "Optional. Immutable. Resource URI of the Network that will be peered with this Transport. This field must be provided during resource creation and cannot be changed.", + "type": "string" + }, + "peeringNetwork": { + "description": "Output only. VPC Network URI that was created for the VPC Peering connection to the provided `network`. If VPC Peering is disconnected, this can be used to re-establish.", + "readOnly": true, + "type": "string" + }, + "providedActivationKey": { + "description": "Optional. Immutable. Key used for establishing a connection with the remote transport. This key can only be provided if the profile supports an INPUT key flow and the resource is in the PENDING_KEY state.", + "type": "string" + }, + "remoteAccountId": { + "description": "Optional. Immutable. The user supplied account id for the CSP associated with the remote profile.", + "type": "string" + }, + "remoteProfile": { + "description": "Optional. Immutable. Name of the remoteTransportProfile that this Transport is connecting to.", + "type": "string" + }, + "stackType": { + "description": "Optional. IP version stack for the established connectivity.", + "enum": [ + "STACK_TYPE_UNSPECIFIED", + "IPV4_ONLY", + "IPV4_IPV6" + ], + "enumDescriptions": [ + "Unspecified stack type.", + "Only IPv4 is supported. (default)", + "Both IPv4 and IPv6 are supported." + ], + "type": "string" + }, + "state": { + "description": "Output only. State of the underlying connectivity.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "PENDING_CONFIG", + "PENDING_KEY", + "ACTIVE", + "DELETING", + "DEPROVISIONED" + ], + "enumDescriptions": [ + "Unspecified state.", + "The resource exists locally and is being created / associated with the resource on the remote provider’s end of the underlying connectivity.", + "The Transport exists on both sides of the connection, and is waiting for configuration to finalize and be verified as operational.", + "The Transport was created in GCP. Depending on the profile’s key provisioning flow, this is either waiting for an activation key to be input (the key will be validated that it uses remote resources that match the Transport), or for the generated key to be input to the provider for finalizing. The configured bandwidth is not yet guaranteed.", + "The Transport is configured and the underlying connectivity is considered operational.", + "The Transport is being deleted from GCP. The underlying connectivity is no longer operational.", + "The Transport was deleted on the remote provider's end and is no longer operational. GCP has insufficient information to move the resource back to PENDING_KEY state." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time stamp.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "VirtualMachine": { "description": "VM instances that this policy-based route applies to.", "id": "VirtualMachine", diff --git a/discovery/networkconnectivity-v1alpha1.json b/discovery/networkconnectivity-v1alpha1.json index 38e6daec72f..160f5a490e4 100644 --- a/discovery/networkconnectivity-v1alpha1.json +++ b/discovery/networkconnectivity-v1alpha1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "networkconnectivity.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1127,7 +1127,7 @@ } } }, - "revision": "20260129", + "revision": "20260422", "rootUrl": "https://networkconnectivity.googleapis.com/", "schemas": { "AllocationOptions": { diff --git a/discovery/networkmanagement-v1.json b/discovery/networkmanagement-v1.json index 893310cb438..6beedf19a45 100644 --- a/discovery/networkmanagement-v1.json +++ b/discovery/networkmanagement-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/organizations/{organizationsId}/locations", "httpMethod": "GET", "id": "networkmanagement.organizations.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -516,7 +516,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "networkmanagement.projects.locations.list", @@ -525,7 +525,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1237,7 +1237,7 @@ } } }, - "revision": "20260211", + "revision": "20260424", "rootUrl": "https://networkmanagement.googleapis.com/", "schemas": { "AbortInfo": { @@ -1290,7 +1290,8 @@ "UNSUPPORTED_GOOGLE_MANAGED_PROJECT_CONFIG", "NO_SERVERLESS_IP_RANGES", "IP_VERSION_PROTOCOL_MISMATCH", - "GKE_POD_UNKNOWN_ENDPOINT_LOCATION" + "GKE_POD_UNKNOWN_ENDPOINT_LOCATION", + "RESPONSE_TOO_LARGE" ], "enumDeprecated": [ false, @@ -1336,6 +1337,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -1382,7 +1384,8 @@ "Aborted due to an unsupported configuration of the Google-managed project.", "Aborted because the source endpoint is a Cloud Run revision with direct VPC access enabled, but there are no reserved serverless IP ranges.", "Aborted because the used protocol is not supported for the used IP version.", - "Aborted because selected GKE Pod endpoint location is unknown. This is often the case for \"Pending\" Pods, which don't have assigned IP addresses yet." + "Aborted because selected GKE Pod endpoint location is unknown. This is often the case for \"Pending\" Pods, which don't have assigned IP addresses yet.", + "Aborted because the response size exceeds the limit." ], "type": "string" }, @@ -1926,7 +1929,9 @@ "NCC_ROUTE_WITHIN_HYBRID_SUBNET_UNSUPPORTED", "HYBRID_SUBNET_REGION_MISMATCH", "HYBRID_SUBNET_NO_ROUTE", - "NO_VALID_ROUTE_FROM_GOOGLE_MANAGED_NETWORK_TO_DESTINATION" + "GKE_NETWORK_POLICY", + "NO_VALID_ROUTE_FROM_GOOGLE_MANAGED_NETWORK_TO_DESTINATION", + "PRIVATE_CONNECTION_NO_RUNNING_INSTANCE" ], "enumDescriptions": [ "Cause is unspecified.", @@ -2032,7 +2037,9 @@ "Packet could be dropped because it matches a route associated with an NCC spoke in the hybrid subnet context, but such a configuration is not supported.", "Packet is dropped because the region of the hybrid subnet is different from the region of the next hop of the route matched within this hybrid subnet.", "Packet is dropped because no matching route was found in the hybrid subnet.", - "Packet is dropped because there is no valid matching route from the network of the Google-managed service to the destination." + "Packet is dropped by GKE Network Policy.", + "Packet is dropped because there is no valid matching route from the network of the Google-managed service to the destination.", + "Packet is dropped due to no running instance found for private connection." ], "type": "string" }, @@ -2655,6 +2662,56 @@ }, "type": "object" }, + "GkeNetworkPolicyInfo": { + "description": "For display only. Metadata associated with a GKE Network Policy.", + "id": "GkeNetworkPolicyInfo", + "properties": { + "action": { + "description": "Possible values: ALLOW, DENY", + "type": "string" + }, + "direction": { + "description": "Possible values: INGRESS, EGRESS", + "type": "string" + }, + "displayName": { + "description": "The name of the Network Policy.", + "type": "string" + }, + "uri": { + "description": "The URI of the Network Policy. Format for a Network Policy in a zonal cluster: `projects//zones//clusters//k8s/namespaces//networking.k8s.io/networkpolicies/` Format for a Network Policy in a regional cluster: `projects//locations//clusters//k8s/namespaces//networking.k8s.io/networkpolicies/`", + "type": "string" + } + }, + "type": "object" + }, + "GkeNetworkPolicySkippedInfo": { + "description": "For display only. Contains information about why GKE Network Policy evaluation was skipped.", + "id": "GkeNetworkPolicySkippedInfo", + "properties": { + "reason": { + "description": "Reason why Network Policy evaluation was skipped.", + "enum": [ + "REASON_UNSPECIFIED", + "NETWORK_POLICY_DISABLED", + "INGRESS_SOURCE_ON_SAME_NODE", + "EGRESS_FROM_NODE_NETWORK_NAMESPACE_POD", + "NETWORK_POLICY_NOT_APPLIED_TO_RESPONSE_TRAFFIC", + "NETWORK_POLICY_ANALYSIS_UNSUPPORTED" + ], + "enumDescriptions": [ + "Unused default value.", + "Network Policy is disabled on the cluster.", + "Ingress traffic to a Pod from a source on the same Node is always allowed.", + "Egress traffic from a Pod that uses the Node's network namespace is not subject to Network Policy.", + "Network Policy is not applied to response traffic. This is because GKE Network Policy evaluation is stateful in both GKE Dataplane V2 (eBPF) and legacy (iptables) implementations.", + "Network Policy evaluation is currently not supported for clusters with FQDN Network Policies enabled." + ], + "type": "string" + } + }, + "type": "object" + }, "GkePodInfo": { "description": "For display only. Metadata associated with a Google Kubernetes Engine (GKE) Pod.", "id": "GkePodInfo", @@ -3440,6 +3497,17 @@ }, "type": "object" }, + "PrivateConnectionInfo": { + "description": "For display only. Metadata associated with a Private Connection.", + "id": "PrivateConnectionInfo", + "properties": { + "uri": { + "description": "URI of the Private Connection in format \"projects/{project_id}/locations/{location}/privateConnections/{private_connection_id}\"", + "type": "string" + } + }, + "type": "object" + }, "ProbingDetails": { "description": "Results of active probing from the last run of the test.", "id": "ProbingDetails", @@ -3831,7 +3899,7 @@ "type": "array" }, "region": { - "description": "Region of the route. DYNAMIC, PEERING_DYNAMIC, POLICY_BASED and ADVERTISED routes only. If set for POLICY_BASED route, this is a region of VLAN attachments for Cloud Interconnect the route applies to.", + "description": "Region of the route. DYNAMIC, PEERING_DYNAMIC, POLICY_BASED and ADVERTISED routes only. If set for POLICY_BASED route, this is a region of VLAN attachments for Cloud Interconnect the route applies to. If set to \"all\" for POLICY_BASED route, the route applies to VLAN attachments of Cloud Interconnect in all regions.", "type": "string" }, "routeScope": { @@ -4058,6 +4126,10 @@ "$ref": "CloudSQLInstanceInfo", "description": "Display information of a Cloud SQL instance." }, + "datastreamPrivateConnection": { + "$ref": "PrivateConnectionInfo", + "description": "Display information of a Datastream Private Connection." + }, "deliver": { "$ref": "DeliverInfo", "description": "Display information of the final state \"deliver\" and reason." @@ -4070,6 +4142,10 @@ "$ref": "DirectVpcEgressConnectionInfo", "description": "Display information of a serverless direct VPC egress connection." }, + "dmsPrivateConnection": { + "$ref": "PrivateConnectionInfo", + "description": "Display information of a DMS Private Connection." + }, "drop": { "$ref": "DropInfo", "description": "Display information of the final state \"drop\" and reason." @@ -4094,6 +4170,14 @@ "$ref": "GKEMasterInfo", "description": "Display information of a Google Kubernetes Engine cluster master." }, + "gkeNetworkPolicy": { + "$ref": "GkeNetworkPolicyInfo", + "description": "Display information of a GKE Network Policy." + }, + "gkeNetworkPolicySkipped": { + "$ref": "GkeNetworkPolicySkippedInfo", + "description": "Display information of the reason why GKE Network Policy evaluation was skipped." + }, "gkePod": { "$ref": "GkePodInfo", "description": "Display information of a Google Kubernetes Engine Pod." @@ -4186,6 +4270,8 @@ "START_FROM_STORAGE_BUCKET", "START_FROM_PSC_PUBLISHED_SERVICE", "START_FROM_SERVERLESS_NEG", + "START_FROM_DMS_PRIVATE_CONNECTION", + "START_FROM_DATASTREAM_PRIVATE_CONNECTION", "APPLY_INGRESS_FIREWALL_RULE", "APPLY_EGRESS_FIREWALL_RULE", "APPLY_ROUTE", @@ -4200,11 +4286,16 @@ "ARRIVE_AT_VPN_TUNNEL", "ARRIVE_AT_INTERCONNECT_ATTACHMENT", "ARRIVE_AT_VPC_CONNECTOR", + "ARRIVE_AT_GKE_POD", "DIRECT_VPC_EGRESS_CONNECTION", "SERVERLESS_EXTERNAL_CONNECTION", "NGFW_PACKET_INSPECTION", "NAT", "SKIP_GKE_POD_IP_MASQUERADING", + "SKIP_GKE_INGRESS_NETWORK_POLICY", + "SKIP_GKE_EGRESS_NETWORK_POLICY", + "APPLY_INGRESS_GKE_NETWORK_POLICY", + "APPLY_EGRESS_GKE_NETWORK_POLICY", "PROXY_CONNECTION", "DELIVER", "DROP", @@ -4236,6 +4327,8 @@ false, false, false, + false, + false, true, true, false, @@ -4253,6 +4346,11 @@ false, false, false, + false, + false, + false, + false, + false, false ], "enumDescriptions": [ @@ -4272,6 +4370,8 @@ "Initial state: packet originating from a Storage Bucket. Used only for return traces. The storage_bucket information is populated.", "Initial state: packet originating from a published service that uses Private Service Connect. Used only for return traces.", "Initial state: packet originating from a serverless network endpoint group backend. Used only for return traces. The serverless_neg information is populated.", + "Initial state: packet originating from a DMS Private Connection.", + "Initial state: packet originating from a Datastream Private Connection.", "Config checking state: verify ingress firewall rule.", "Config checking state: verify egress firewall rule.", "Config checking state: verify route.", @@ -4286,11 +4386,16 @@ "Forwarding state: arriving at a Cloud VPN tunnel.", "Forwarding state: arriving at an interconnect attachment.", "Forwarding state: arriving at a VPC connector.", + "Forwarding state: arriving at a GKE Pod.", "Forwarding state: for packets originating from a serverless endpoint forwarded through Direct VPC egress.", "Forwarding state: for packets originating from a serverless endpoint forwarded through public (external) connectivity.", "Forwarding state: Layer 7 packet inspection by the firewall endpoint based on the configured security profile group.", "Transition state: packet header translated. The `nat` field is populated with the translation information.", "Transition state: GKE Pod IP masquerading is skipped. The `ip_masquerading_skipped` field is populated with the reason.", + "Transition state: GKE Ingress Network Policy is skipped. The `gke_network_policy_skipped` field is populated with the reason.", + "Transition state: GKE Egress Network Policy is skipped. The `gke_network_policy_skipped` field is populated with the reason.", + "Config checking state: verify ingress GKE network policy.", + "Config checking state: verify egress GKE network policy.", "Transition state: original connection is terminated and a new proxied connection is initiated.", "Final state: packet could be delivered.", "Final state: packet could be dropped.", diff --git a/discovery/networkmanagement-v1beta1.json b/discovery/networkmanagement-v1beta1.json index e17c9ed6266..6b35f50b0be 100644 --- a/discovery/networkmanagement-v1beta1.json +++ b/discovery/networkmanagement-v1beta1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/organizations/{organizationsId}/locations", "httpMethod": "GET", "id": "networkmanagement.organizations.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -516,7 +516,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "networkmanagement.projects.locations.list", @@ -525,7 +525,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1237,7 +1237,7 @@ } } }, - "revision": "20260211", + "revision": "20260424", "rootUrl": "https://networkmanagement.googleapis.com/", "schemas": { "AbortInfo": { @@ -1290,7 +1290,8 @@ "UNSUPPORTED_GOOGLE_MANAGED_PROJECT_CONFIG", "NO_SERVERLESS_IP_RANGES", "IP_VERSION_PROTOCOL_MISMATCH", - "GKE_POD_UNKNOWN_ENDPOINT_LOCATION" + "GKE_POD_UNKNOWN_ENDPOINT_LOCATION", + "RESPONSE_TOO_LARGE" ], "enumDeprecated": [ false, @@ -1336,6 +1337,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -1382,7 +1384,8 @@ "Aborted due to an unsupported configuration of the Google-managed project.", "Aborted because the source endpoint is a Cloud Run revision with direct VPC access enabled, but there are no reserved serverless IP ranges.", "Aborted because the used protocol is not supported for the used IP version.", - "Aborted because selected GKE Pod endpoint location is unknown. This is often the case for \"Pending\" Pods, which don't have assigned IP addresses yet." + "Aborted because selected GKE Pod endpoint location is unknown. This is often the case for \"Pending\" Pods, which don't have assigned IP addresses yet.", + "Aborted because the response size exceeds the limit." ], "type": "string" }, @@ -1926,7 +1929,9 @@ "NCC_ROUTE_WITHIN_HYBRID_SUBNET_UNSUPPORTED", "HYBRID_SUBNET_REGION_MISMATCH", "HYBRID_SUBNET_NO_ROUTE", - "NO_VALID_ROUTE_FROM_GOOGLE_MANAGED_NETWORK_TO_DESTINATION" + "GKE_NETWORK_POLICY", + "NO_VALID_ROUTE_FROM_GOOGLE_MANAGED_NETWORK_TO_DESTINATION", + "PRIVATE_CONNECTION_NO_RUNNING_INSTANCE" ], "enumDescriptions": [ "Cause is unspecified.", @@ -2032,7 +2037,9 @@ "Packet could be dropped because it matches a route associated with an NCC spoke in the hybrid subnet context, but such a configuration is not supported.", "Packet is dropped because the region of the hybrid subnet is different from the region of the next hop of the route matched within this hybrid subnet.", "Packet is dropped because no matching route was found in the hybrid subnet.", - "Packet is dropped because there is no valid matching route from the network of the Google-managed service to the destination." + "Packet is dropped by GKE Network Policy.", + "Packet is dropped because there is no valid matching route from the network of the Google-managed service to the destination.", + "Packet is dropped due to no running instance found for private connection." ], "type": "string" }, @@ -2231,6 +2238,14 @@ "description": "A [Cloud SQL](https://cloud.google.com/sql) instance URI.", "type": "string" }, + "datastreamPrivateConnection": { + "description": "A [Datastream Private Connection](https://docs.cloud.google.com/datastream/docs/reference/rest/v1/projects.locations.privateConnections) name format: projects/{project}/locations/{location}/privateConnections/{privateConnection}.", + "type": "string" + }, + "dmsPrivateConnection": { + "description": "A [DMS Private Connection](https://docs.cloud.google.com/database-migration/docs/reference/rest/v1/projects.locations.privateConnections) name format: projects/{project}/locations/{location}/privateConnections/{privateConnection}.", + "type": "string" + }, "forwardingRule": { "description": "A forwarding rule and its corresponding IP address represent the frontend configuration of a Google Cloud load balancer. Forwarding rules are also used for protocol forwarding, Private Service Connect and other network services to provide forwarding information in the control plane. Applicable only to destination endpoint. Format: `projects/{project}/global/forwardingRules/{id}` or `projects/{project}/regions/{region}/forwardingRules/{id}`", "type": "string" @@ -2655,6 +2670,56 @@ }, "type": "object" }, + "GkeNetworkPolicyInfo": { + "description": "For display only. Metadata associated with a GKE Network Policy.", + "id": "GkeNetworkPolicyInfo", + "properties": { + "action": { + "description": "Possible values: ALLOW, DENY", + "type": "string" + }, + "direction": { + "description": "Possible values: INGRESS, EGRESS", + "type": "string" + }, + "displayName": { + "description": "The name of the Network Policy.", + "type": "string" + }, + "uri": { + "description": "The URI of the Network Policy. Format for a Network Policy in a zonal cluster: `projects//zones//clusters//k8s/namespaces//networking.k8s.io/networkpolicies/` Format for a Network Policy in a regional cluster: `projects//locations//clusters//k8s/namespaces//networking.k8s.io/networkpolicies/`", + "type": "string" + } + }, + "type": "object" + }, + "GkeNetworkPolicySkippedInfo": { + "description": "For display only. Contains information about why GKE Network Policy evaluation was skipped.", + "id": "GkeNetworkPolicySkippedInfo", + "properties": { + "reason": { + "description": "Reason why Network Policy evaluation was skipped.", + "enum": [ + "REASON_UNSPECIFIED", + "NETWORK_POLICY_DISABLED", + "INGRESS_SOURCE_ON_SAME_NODE", + "EGRESS_FROM_NODE_NETWORK_NAMESPACE_POD", + "NETWORK_POLICY_NOT_APPLIED_TO_RESPONSE_TRAFFIC", + "NETWORK_POLICY_ANALYSIS_UNSUPPORTED" + ], + "enumDescriptions": [ + "Unused default value.", + "Network Policy is disabled on the cluster.", + "Ingress traffic to a Pod from a source on the same Node is always allowed.", + "Egress traffic from a Pod that uses the Node's network namespace is not subject to Network Policy.", + "Network Policy is not applied to response traffic. This is because GKE Network Policy evaluation is stateful in both GKE Dataplane V2 (eBPF) and legacy (iptables) implementations.", + "Network Policy evaluation is currently not supported for clusters with FQDN Network Policies enabled." + ], + "type": "string" + } + }, + "type": "object" + }, "GkePodInfo": { "description": "For display only. Metadata associated with a Google Kubernetes Engine (GKE) Pod.", "id": "GkePodInfo", @@ -3440,6 +3505,17 @@ }, "type": "object" }, + "PrivateConnectionInfo": { + "description": "For display only. Metadata associated with a Private Connection.", + "id": "PrivateConnectionInfo", + "properties": { + "uri": { + "description": "URI of the Private Connection in format \"projects/{project_id}/locations/{location}/privateConnections/{private_connection_id}\"", + "type": "string" + } + }, + "type": "object" + }, "ProbingDetails": { "description": "Results of active probing from the last run of the test.", "id": "ProbingDetails", @@ -3831,7 +3907,7 @@ "type": "array" }, "region": { - "description": "Region of the route. DYNAMIC, PEERING_DYNAMIC, POLICY_BASED and ADVERTISED routes only. If set for POLICY_BASED route, this is a region of VLAN attachments for Cloud Interconnect the route applies to.", + "description": "Region of the route. DYNAMIC, PEERING_DYNAMIC, POLICY_BASED and ADVERTISED routes only. If set for POLICY_BASED route, this is a region of VLAN attachments for Cloud Interconnect the route applies to. If set to \"all\" for POLICY_BASED route, the route applies to VLAN attachments of Cloud Interconnect in all regions.", "type": "string" }, "routeScope": { @@ -4058,6 +4134,10 @@ "$ref": "CloudSQLInstanceInfo", "description": "Display information of a Cloud SQL instance." }, + "datastreamPrivateConnection": { + "$ref": "PrivateConnectionInfo", + "description": "Display information of a Datastream Private Connection." + }, "deliver": { "$ref": "DeliverInfo", "description": "Display information of the final state \"deliver\" and reason." @@ -4070,6 +4150,10 @@ "$ref": "DirectVpcEgressConnectionInfo", "description": "Display information of a serverless direct VPC egress connection." }, + "dmsPrivateConnection": { + "$ref": "PrivateConnectionInfo", + "description": "Display information of a DMS Private Connection." + }, "drop": { "$ref": "DropInfo", "description": "Display information of the final state \"drop\" and reason." @@ -4094,6 +4178,14 @@ "$ref": "GKEMasterInfo", "description": "Display information of a Google Kubernetes Engine cluster master." }, + "gkeNetworkPolicy": { + "$ref": "GkeNetworkPolicyInfo", + "description": "Display information of a GKE Network Policy." + }, + "gkeNetworkPolicySkipped": { + "$ref": "GkeNetworkPolicySkippedInfo", + "description": "Display information of the reason why GKE Network Policy evaluation was skipped." + }, "gkePod": { "$ref": "GkePodInfo", "description": "Display information of a Google Kubernetes Engine Pod." @@ -4186,6 +4278,8 @@ "START_FROM_STORAGE_BUCKET", "START_FROM_PSC_PUBLISHED_SERVICE", "START_FROM_SERVERLESS_NEG", + "START_FROM_DMS_PRIVATE_CONNECTION", + "START_FROM_DATASTREAM_PRIVATE_CONNECTION", "APPLY_INGRESS_FIREWALL_RULE", "APPLY_EGRESS_FIREWALL_RULE", "APPLY_ROUTE", @@ -4200,11 +4294,16 @@ "ARRIVE_AT_VPN_TUNNEL", "ARRIVE_AT_INTERCONNECT_ATTACHMENT", "ARRIVE_AT_VPC_CONNECTOR", + "ARRIVE_AT_GKE_POD", "DIRECT_VPC_EGRESS_CONNECTION", "SERVERLESS_EXTERNAL_CONNECTION", "NGFW_PACKET_INSPECTION", "NAT", "SKIP_GKE_POD_IP_MASQUERADING", + "SKIP_GKE_INGRESS_NETWORK_POLICY", + "SKIP_GKE_EGRESS_NETWORK_POLICY", + "APPLY_INGRESS_GKE_NETWORK_POLICY", + "APPLY_EGRESS_GKE_NETWORK_POLICY", "PROXY_CONNECTION", "DELIVER", "DROP", @@ -4236,6 +4335,8 @@ false, false, false, + false, + false, true, true, false, @@ -4253,6 +4354,11 @@ false, false, false, + false, + false, + false, + false, + false, false ], "enumDescriptions": [ @@ -4272,6 +4378,8 @@ "Initial state: packet originating from a Storage Bucket. Used only for return traces. The storage_bucket information is populated.", "Initial state: packet originating from a published service that uses Private Service Connect. Used only for return traces.", "Initial state: packet originating from a serverless network endpoint group backend. Used only for return traces. The serverless_neg information is populated.", + "Initial state: packet originating from a DMS Private Connection.", + "Initial state: packet originating from a Datastream Private Connection.", "Config checking state: verify ingress firewall rule.", "Config checking state: verify egress firewall rule.", "Config checking state: verify route.", @@ -4286,11 +4394,16 @@ "Forwarding state: arriving at a Cloud VPN tunnel.", "Forwarding state: arriving at an interconnect attachment.", "Forwarding state: arriving at a VPC connector.", + "Forwarding state: arriving at a GKE Pod.", "Forwarding state: for packets originating from a serverless endpoint forwarded through Direct VPC egress.", "Forwarding state: for packets originating from a serverless endpoint forwarded through public (external) connectivity.", "Forwarding state: Layer 7 packet inspection by the firewall endpoint based on the configured security profile group.", "Transition state: packet header translated. The `nat` field is populated with the translation information.", "Transition state: GKE Pod IP masquerading is skipped. The `ip_masquerading_skipped` field is populated with the reason.", + "Transition state: GKE Ingress Network Policy is skipped. The `gke_network_policy_skipped` field is populated with the reason.", + "Transition state: GKE Egress Network Policy is skipped. The `gke_network_policy_skipped` field is populated with the reason.", + "Config checking state: verify ingress GKE network policy.", + "Config checking state: verify egress GKE network policy.", "Transition state: original connection is terminated and a new proxied connection is initiated.", "Final state: packet could be delivered.", "Final state: packet could be dropped.", diff --git a/discovery/networksecurity-v1.json b/discovery/networksecurity-v1.json index 81aba560f56..3521b5714fb 100644 --- a/discovery/networksecurity-v1.json +++ b/discovery/networksecurity-v1.json @@ -1074,7 +1074,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "networksecurity.projects.locations.list", @@ -1083,7 +1083,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -4846,6 +4846,330 @@ } } }, + "securityProfileGroups": { + "methods": { + "create": { + "description": "Creates a new SecurityProfileGroup in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityProfileGroups", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.securityProfileGroups.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource of the SecurityProfileGroup. Must be in the format `projects|organizations/*/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "securityProfileGroupId": { + "description": "Required. Short name of the SecurityProfileGroup resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. \"security_profile_group1\".", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/securityProfileGroups", + "request": { + "$ref": "SecurityProfileGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single SecurityProfileGroup.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityProfileGroups/{securityProfileGroupsId}", + "httpMethod": "DELETE", + "id": "networksecurity.projects.locations.securityProfileGroups.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. A name of the SecurityProfileGroup to delete. Must be in the format `projects|organizations/*/locations/{location}/securityProfileGroups/{security_profile_group}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityProfileGroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single SecurityProfileGroup.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityProfileGroups/{securityProfileGroupsId}", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.securityProfileGroups.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the SecurityProfileGroup to get. Must be in the format `projects|organizations/*/locations/{location}/securityProfileGroups/{security_profile_group}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityProfileGroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "SecurityProfileGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists SecurityProfileGroups in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityProfileGroups", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.securityProfileGroups.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. Maximum number of SecurityProfileGroups to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListSecurityProfileGroupsResponse` Indicates that this is a continuation of a prior `ListSecurityProfileGroups` call, and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project or organization and location from which the SecurityProfileGroups should be listed, specified in the format `projects|organizations/*/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/securityProfileGroups", + "response": { + "$ref": "ListSecurityProfileGroupsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single SecurityProfileGroup.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityProfileGroups/{securityProfileGroupsId}", + "httpMethod": "PATCH", + "id": "networksecurity.projects.locations.securityProfileGroups.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. Identifier. Name of the SecurityProfileGroup resource. It matches pattern `projects|organizations/*/locations/{location}/securityProfileGroups/{security_profile_group}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityProfileGroups/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Field mask is used to specify the fields to be overwritten in the SecurityProfileGroup 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.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "SecurityProfileGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "securityProfiles": { + "methods": { + "create": { + "description": "Creates a new SecurityProfile in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityProfiles", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.securityProfiles.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource of the SecurityProfile. Must be in the format `projects|organizations/*/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "securityProfileId": { + "description": "Required. Short name of the SecurityProfile resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. \"security_profile1\".", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/securityProfiles", + "request": { + "$ref": "SecurityProfile" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single SecurityProfile.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityProfiles/{securityProfilesId}", + "httpMethod": "DELETE", + "id": "networksecurity.projects.locations.securityProfiles.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. A name of the SecurityProfile to delete. Must be in the format `projects|organizations/*/locations/{location}/securityProfiles/{security_profile_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityProfiles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single SecurityProfile.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityProfiles/{securityProfilesId}", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.securityProfiles.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the SecurityProfile to get. Must be in the format `projects|organizations/*/locations/{location}/securityProfiles/{security_profile_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityProfiles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "SecurityProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists SecurityProfiles in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityProfiles", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.securityProfiles.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. Maximum number of SecurityProfiles to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListSecurityProfilesResponse` Indicates that this is a continuation of a prior `ListSecurityProfiles` call, and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project or organization and location from which the SecurityProfiles should be listed, specified in the format `projects|organizations/*/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/securityProfiles", + "response": { + "$ref": "ListSecurityProfilesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single SecurityProfile.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityProfiles/{securityProfilesId}", + "httpMethod": "PATCH", + "id": "networksecurity.projects.locations.securityProfiles.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. Identifier. Name of the SecurityProfile resource. It matches pattern `projects|organizations/*/locations/{location}/securityProfiles/{security_profile}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityProfiles/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Field mask is used to specify the fields to be overwritten in the SecurityProfile 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.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "SecurityProfile" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "serverTlsPolicies": { "methods": { "create": { @@ -5419,7 +5743,7 @@ } } }, - "revision": "20260204", + "revision": "20260426", "rootUrl": "https://networksecurity.googleapis.com/", "schemas": { "AddAddressGroupItemsRequest": { @@ -5678,6 +6002,20 @@ "description": "Required. Identifier. Name of the `AuthzPolicy` resource in the following format: `projects/{project}/locations/{location}/authzPolicies/{authz_policy}`.", "type": "string" }, + "policyProfile": { + "description": "Optional. Immutable. Defines the type of authorization being performed. If not specified, `REQUEST_AUTHZ` is applied. This field cannot be changed once AuthzPolicy is created.", + "enum": [ + "POLICY_PROFILE_UNSPECIFIED", + "REQUEST_AUTHZ", + "CONTENT_AUTHZ" + ], + "enumDescriptions": [ + "Unspecified policy profile.", + "Applies to request authorization. `CUSTOM` authorization policies with Authz extensions will be allowed with `EXT_AUTHZ_GRPC` or `EXT_PROC_GRPC` protocols. Extensions are invoked only for request header events.", + "Applies to content security, sanitization, etc. Only `CUSTOM` action is allowed in this policy profile. AuthzExtensions in the custom provider must support `EXT_PROC_GRPC` protocol only and be capable of receiving all `EXT_PROC_GRPC` events (REQUEST_HEADERS, REQUEST_BODY, REQUEST_TRAILERS, RESPONSE_HEADERS, RESPONSE_BODY, RESPONSE_TRAILERS) with `FULL_DUPLEX_STREAMED` body send mode." + ], + "type": "string" + }, "target": { "$ref": "AuthzPolicyTarget", "description": "Required. Specifies the set of resources to which this policy should be applied to." @@ -5910,6 +6248,10 @@ }, "type": "array" }, + "mcp": { + "$ref": "AuthzPolicyAuthzRuleToRequestOperationMCP", + "description": "Optional. Defines the MCP protocol attributes to match on. If the MCP payload in the request body cannot be successfully parsed, the request will be denied. This field can be set only for AuthzPolicies targeting AgentGateway resources." + }, "methods": { "description": "Optional. A list of HTTP methods to match against. Each entry must be a valid HTTP method name (GET, PUT, POST, HEAD, PATCH, DELETE, OPTIONS). It only allows exact match and is always case sensitive. Limited to 10 methods per Authorization Policy.", "items": { @@ -5941,6 +6283,52 @@ }, "type": "object" }, + "AuthzPolicyAuthzRuleToRequestOperationMCP": { + "description": "Describes a set of MCP protocol attributes to match against for a given MCP request.", + "id": "AuthzPolicyAuthzRuleToRequestOperationMCP", + "properties": { + "baseProtocolMethodsOption": { + "description": "Optional. If specified, matches on the MCP protocol’s non-access specific methods namely: * initialize * completion/ * logging/ * notifications/ * ping Defaults to SKIP_BASE_PROTOCOL_METHODS if not specified.", + "enum": [ + "BASE_PROTOCOL_METHODS_OPTION_UNSPECIFIED", + "SKIP_BASE_PROTOCOL_METHODS", + "MATCH_BASE_PROTOCOL_METHODS" + ], + "enumDescriptions": [ + "Unspecified option. Defaults to SKIP_BASE_PROTOCOL_METHODS.", + "Skip matching on the base MCP protocol methods.", + "Match on the base MCP protocol methods." + ], + "type": "string" + }, + "methods": { + "description": "Optional. A list of MCP methods and associated parameters to match on. It is recommended to use this field to match on tools, prompts and resource accesses while setting the baseProtocolMethodsOption to MATCH_BASE_PROTOCOL_METHODS to match on all the other MCP protocol methods. Limited to 10 MCP methods per Authorization Policy.", + "items": { + "$ref": "AuthzPolicyAuthzRuleToRequestOperationMCPMethod" + }, + "type": "array" + } + }, + "type": "object" + }, + "AuthzPolicyAuthzRuleToRequestOperationMCPMethod": { + "description": "Describes a set of MCP methods to match against.", + "id": "AuthzPolicyAuthzRuleToRequestOperationMCPMethod", + "properties": { + "name": { + "description": "Required. The MCP method to match against. Allowed values are as follows: 1. `tools`, `prompts`, `resources` - these will match against all sub methods under the respective methods. 2. `prompts/list`, `tools/list`, `resources/list`, `resources/templates/list` 3. `prompts/get`, `tools/call`, `resources/subscribe`, `resources/unsubscribe`, `resources/read` Params cannot be specified for categories 1 and 2.", + "type": "string" + }, + "params": { + "description": "Optional. A list of MCP method parameters to match against. The match can be one of exact, prefix, suffix, or contains (substring match). Matches are always case sensitive unless the ignoreCase is set. Limited to 10 MCP method parameters per Authorization Policy.", + "items": { + "$ref": "AuthzPolicyAuthzRuleStringMatch" + }, + "type": "array" + } + }, + "type": "object" + }, "AuthzPolicyCustomProvider": { "description": "Allows delegating authorization decisions to Cloud IAP or to Service Extensions.", "id": "AuthzPolicyCustomProvider", @@ -5981,7 +6369,7 @@ "id": "AuthzPolicyTarget", "properties": { "loadBalancingScheme": { - "description": "Required. All gateways and forwarding rules referenced by this policy and extensions must share the same load balancing scheme. Supported values: `INTERNAL_MANAGED` and `EXTERNAL_MANAGED`. For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service).", + "description": "Optional. All gateways and forwarding rules referenced by this policy and extensions must share the same load balancing scheme. Required only when targeting forwarding rules. If targeting Secure Web Proxy, this field must be `INTERNAL_MANAGED` or not specified. Must not be specified when targeting Agent Gateway. Supported values: `INTERNAL_MANAGED` and `EXTERNAL_MANAGED`. For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service).", "enum": [ "LOAD_BALANCING_SCHEME_UNSPECIFIED", "INTERNAL_MANAGED", @@ -5997,7 +6385,7 @@ "type": "string" }, "resources": { - "description": "Required. A list of references to the Forwarding Rules on which this policy will be applied.", + "description": "Required. A list of references to the Forwarding Rules, Secure Web Proxy Gateways, or Agent Gateways on which this policy will be applied.", "items": { "type": "string" }, @@ -6303,7 +6691,7 @@ "type": "array" }, "billingProjectId": { - "description": "Required. Project to bill on endpoint uptime usage.", + "description": "Optional. Project to charge for the deployed firewall endpoint. This field must be specified when creating the endpoint in the organization scope, and should be omitted otherwise.", "type": "string" }, "createTime": { @@ -7076,6 +7464,12 @@ "description": "Required. Immutable. The VPC network that is associated. for example: `projects/123456789/global/networks/my-network`. See https://google.aip.dev/124.", "type": "string" }, + "networkCookie": { + "description": "Output only. Identifier used by the data-path. See the NSI GENEVE format for more details: https://docs.cloud.google.com/network-security-integration/docs/understand-geneve#network_id", + "format": "uint32", + "readOnly": true, + "type": "integer" + }, "reconciling": { "description": "Output only. The current state of the resource does not match the user's intended state, and the system is working to reconcile them. This part of the normal operation (e.g. adding a new location to the target deployment group). See https://google.aip.dev/128.", "readOnly": true, diff --git a/discovery/networksecurity-v1beta1.json b/discovery/networksecurity-v1beta1.json index e4ff0a813ae..8e8ead30ee6 100644 --- a/discovery/networksecurity-v1beta1.json +++ b/discovery/networksecurity-v1beta1.json @@ -1074,7 +1074,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "networksecurity.projects.locations.list", @@ -1083,7 +1083,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -5132,6 +5132,330 @@ } } }, + "securityProfileGroups": { + "methods": { + "create": { + "description": "Creates a new SecurityProfileGroup in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/securityProfileGroups", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.securityProfileGroups.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource of the SecurityProfileGroup. Must be in the format `projects|organizations/*/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "securityProfileGroupId": { + "description": "Required. Short name of the SecurityProfileGroup resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. \"security_profile_group1\".", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/securityProfileGroups", + "request": { + "$ref": "SecurityProfileGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single SecurityProfileGroup.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/securityProfileGroups/{securityProfileGroupsId}", + "httpMethod": "DELETE", + "id": "networksecurity.projects.locations.securityProfileGroups.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. A name of the SecurityProfileGroup to delete. Must be in the format `projects|organizations/*/locations/{location}/securityProfileGroups/{security_profile_group}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityProfileGroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single SecurityProfileGroup.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/securityProfileGroups/{securityProfileGroupsId}", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.securityProfileGroups.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the SecurityProfileGroup to get. Must be in the format `projects|organizations/*/locations/{location}/securityProfileGroups/{security_profile_group}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityProfileGroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "SecurityProfileGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists SecurityProfileGroups in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/securityProfileGroups", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.securityProfileGroups.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. Maximum number of SecurityProfileGroups to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListSecurityProfileGroupsResponse` Indicates that this is a continuation of a prior `ListSecurityProfileGroups` call, and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project or organization and location from which the SecurityProfileGroups should be listed, specified in the format `projects|organizations/*/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/securityProfileGroups", + "response": { + "$ref": "ListSecurityProfileGroupsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single SecurityProfileGroup.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/securityProfileGroups/{securityProfileGroupsId}", + "httpMethod": "PATCH", + "id": "networksecurity.projects.locations.securityProfileGroups.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. Identifier. Name of the SecurityProfileGroup resource. It matches pattern `projects|organizations/*/locations/{location}/securityProfileGroups/{security_profile_group}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityProfileGroups/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Field mask is used to specify the fields to be overwritten in the SecurityProfileGroup 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.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "SecurityProfileGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "securityProfiles": { + "methods": { + "create": { + "description": "Creates a new SecurityProfile in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/securityProfiles", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.securityProfiles.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource of the SecurityProfile. Must be in the format `projects|organizations/*/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "securityProfileId": { + "description": "Required. Short name of the SecurityProfile resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. \"security_profile1\".", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/securityProfiles", + "request": { + "$ref": "SecurityProfile" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single SecurityProfile.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/securityProfiles/{securityProfilesId}", + "httpMethod": "DELETE", + "id": "networksecurity.projects.locations.securityProfiles.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. A name of the SecurityProfile to delete. Must be in the format `projects|organizations/*/locations/{location}/securityProfiles/{security_profile_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityProfiles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single SecurityProfile.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/securityProfiles/{securityProfilesId}", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.securityProfiles.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the SecurityProfile to get. Must be in the format `projects|organizations/*/locations/{location}/securityProfiles/{security_profile_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityProfiles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "SecurityProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists SecurityProfiles in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/securityProfiles", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.securityProfiles.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. Maximum number of SecurityProfiles to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListSecurityProfilesResponse` Indicates that this is a continuation of a prior `ListSecurityProfiles` call, and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project or organization and location from which the SecurityProfiles should be listed, specified in the format `projects|organizations/*/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/securityProfiles", + "response": { + "$ref": "ListSecurityProfilesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single SecurityProfile.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/securityProfiles/{securityProfilesId}", + "httpMethod": "PATCH", + "id": "networksecurity.projects.locations.securityProfiles.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. Identifier. Name of the SecurityProfile resource. It matches pattern `projects|organizations/*/locations/{location}/securityProfiles/{security_profile}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityProfiles/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Field mask is used to specify the fields to be overwritten in the SecurityProfile 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.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "SecurityProfile" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "serverTlsPolicies": { "methods": { "create": { @@ -5705,7 +6029,7 @@ } } }, - "revision": "20260131", + "revision": "20260426", "rootUrl": "https://networksecurity.googleapis.com/", "schemas": { "AddAddressGroupItemsRequest": { @@ -5964,6 +6288,20 @@ "description": "Required. Identifier. Name of the `AuthzPolicy` resource in the following format: `projects/{project}/locations/{location}/authzPolicies/{authz_policy}`.", "type": "string" }, + "policyProfile": { + "description": "Optional. Immutable. Defines the type of authorization being performed. If not specified, `REQUEST_AUTHZ` is applied. This field cannot be changed once AuthzPolicy is created.", + "enum": [ + "POLICY_PROFILE_UNSPECIFIED", + "REQUEST_AUTHZ", + "CONTENT_AUTHZ" + ], + "enumDescriptions": [ + "Unspecified policy profile.", + "Applies to request authorization. `CUSTOM` authorization policies with Authz extensions will be allowed with `EXT_AUTHZ_GRPC` or `EXT_PROC_GRPC` protocols. Extensions are invoked only for request header events.", + "Applies to content security, sanitization, etc. Only `CUSTOM` action is allowed in this policy profile. AuthzExtensions in the custom provider must support `EXT_PROC_GRPC` protocol only and be capable of receiving all `EXT_PROC_GRPC` events (REQUEST_HEADERS, REQUEST_BODY, REQUEST_TRAILERS, RESPONSE_HEADERS, RESPONSE_BODY, RESPONSE_TRAILERS) with `FULL_DUPLEX_STREAMED` body send mode." + ], + "type": "string" + }, "target": { "$ref": "AuthzPolicyTarget", "description": "Required. Specifies the set of resources to which this policy should be applied to." @@ -6196,6 +6534,10 @@ }, "type": "array" }, + "mcp": { + "$ref": "AuthzPolicyAuthzRuleToRequestOperationMCP", + "description": "Optional. Defines the MCP protocol attributes to match on. If the MCP payload in the request body cannot be successfully parsed, the request will be denied. This field can be set only for AuthzPolicies targeting AgentGateway resources." + }, "methods": { "description": "Optional. A list of HTTP methods to match against. Each entry must be a valid HTTP method name (GET, PUT, POST, HEAD, PATCH, DELETE, OPTIONS). It only allows exact match and is always case sensitive. Limited to 10 methods per Authorization Policy.", "items": { @@ -6227,6 +6569,52 @@ }, "type": "object" }, + "AuthzPolicyAuthzRuleToRequestOperationMCP": { + "description": "Describes a set of MCP protocol attributes to match against for a given MCP request.", + "id": "AuthzPolicyAuthzRuleToRequestOperationMCP", + "properties": { + "baseProtocolMethodsOption": { + "description": "Optional. If specified, matches on the MCP protocol’s non-access specific methods namely: * initialize * completion/ * logging/ * notifications/ * ping Defaults to SKIP_BASE_PROTOCOL_METHODS if not specified.", + "enum": [ + "BASE_PROTOCOL_METHODS_OPTION_UNSPECIFIED", + "SKIP_BASE_PROTOCOL_METHODS", + "MATCH_BASE_PROTOCOL_METHODS" + ], + "enumDescriptions": [ + "Unspecified option. Defaults to SKIP_BASE_PROTOCOL_METHODS.", + "Skip matching on the base MCP protocol methods.", + "Match on the base MCP protocol methods." + ], + "type": "string" + }, + "methods": { + "description": "Optional. A list of MCP methods and associated parameters to match on. It is recommended to use this field to match on tools, prompts and resource accesses while setting the baseProtocolMethodsOption to MATCH_BASE_PROTOCOL_METHODS to match on all the other MCP protocol methods. Limited to 10 MCP methods per Authorization Policy.", + "items": { + "$ref": "AuthzPolicyAuthzRuleToRequestOperationMCPMethod" + }, + "type": "array" + } + }, + "type": "object" + }, + "AuthzPolicyAuthzRuleToRequestOperationMCPMethod": { + "description": "Describes a set of MCP methods to match against.", + "id": "AuthzPolicyAuthzRuleToRequestOperationMCPMethod", + "properties": { + "name": { + "description": "Required. The MCP method to match against. Allowed values are as follows: 1. `tools`, `prompts`, `resources` - these will match against all sub methods under the respective methods. 2. `prompts/list`, `tools/list`, `resources/list`, `resources/templates/list` 3. `prompts/get`, `tools/call`, `resources/subscribe`, `resources/unsubscribe`, `resources/read` Params cannot be specified for categories 1 and 2.", + "type": "string" + }, + "params": { + "description": "Optional. A list of MCP method parameters to match against. The match can be one of exact, prefix, suffix, or contains (substring match). Matches are always case sensitive unless the ignoreCase is set. Limited to 10 MCP method parameters per Authorization Policy.", + "items": { + "$ref": "AuthzPolicyAuthzRuleStringMatch" + }, + "type": "array" + } + }, + "type": "object" + }, "AuthzPolicyCustomProvider": { "description": "Allows delegating authorization decisions to Cloud IAP or to Service Extensions.", "id": "AuthzPolicyCustomProvider", @@ -6267,7 +6655,7 @@ "id": "AuthzPolicyTarget", "properties": { "loadBalancingScheme": { - "description": "Required. All gateways and forwarding rules referenced by this policy and extensions must share the same load balancing scheme. Supported values: `INTERNAL_MANAGED` and `EXTERNAL_MANAGED`. For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service).", + "description": "Optional. All gateways and forwarding rules referenced by this policy and extensions must share the same load balancing scheme. Required only when targeting forwarding rules. If targeting Secure Web Proxy, this field must be `INTERNAL_MANAGED` or not specified. Must not be specified when targeting Agent Gateway. Supported values: `INTERNAL_MANAGED` and `EXTERNAL_MANAGED`. For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service).", "enum": [ "LOAD_BALANCING_SCHEME_UNSPECIFIED", "INTERNAL_MANAGED", @@ -6283,7 +6671,7 @@ "type": "string" }, "resources": { - "description": "Required. A list of references to the Forwarding Rules on which this policy will be applied.", + "description": "Required. A list of references to the Forwarding Rules, Secure Web Proxy Gateways, or Agent Gateways on which this policy will be applied.", "items": { "type": "string" }, @@ -6589,7 +6977,7 @@ "type": "array" }, "billingProjectId": { - "description": "Required. Project to bill on endpoint uptime usage.", + "description": "Optional. Project to charge for the deployed firewall endpoint. This field must be specified when creating the endpoint in the organization scope, and should be omitted otherwise.", "type": "string" }, "createTime": { @@ -7362,6 +7750,12 @@ "description": "Required. Immutable. The VPC network that is associated. for example: `projects/123456789/global/networks/my-network`. See https://google.aip.dev/124.", "type": "string" }, + "networkCookie": { + "description": "Output only. Identifier used by the data-path. See the NSI GENEVE format for more details: https://docs.cloud.google.com/network-security-integration/docs/understand-geneve#network_id", + "format": "uint32", + "readOnly": true, + "type": "integer" + }, "reconciling": { "description": "Output only. The current state of the resource does not match the user's intended state, and the system is working to reconcile them. This part of the normal operation (e.g. adding a new location to the target deployment group). See https://google.aip.dev/128.", "readOnly": true, diff --git a/discovery/networkservices-v1.json b/discovery/networkservices-v1.json index ee07f5dc40f..000e4caf09b 100644 --- a/discovery/networkservices-v1.json +++ b/discovery/networkservices-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "networkservices.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1208,6 +1208,11 @@ "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" + }, + "requestId": { + "description": "Optional. Idempotent request UUID.", + "location": "query", + "type": "string" } }, "path": "v1/{+parent}/httpRoutes", @@ -1280,6 +1285,11 @@ "parent" ], "parameters": { + "filter": { + "description": "Optional. Filter expression to restrict the list.", + "location": "query", + "type": "string" + }, "pageSize": { "description": "Maximum number of HttpRoutes to return per call.", "format": "int32", @@ -3191,7 +3201,7 @@ } } }, - "revision": "20260218", + "revision": "20260424", "rootUrl": "https://networkservices.googleapis.com/", "schemas": { "AuditConfig": { @@ -3247,7 +3257,7 @@ "id": "AuthzExtension", "properties": { "authority": { - "description": "Required. The `:authority` header in the gRPC request sent from Envoy to the extension service.", + "description": "Optional. The `:authority` header in the gRPC request sent from Envoy to the extension service. It is required when the `service` field points to a backend service or a wasm plugin.", "type": "string" }, "createTime": { @@ -3264,6 +3274,13 @@ "description": "Optional. Determines how the proxy behaves if the call to the extension fails or times out. When set to `TRUE`, request or response processing continues without error. Any subsequent extensions in the extension chain are also executed. When set to `FALSE` or the default setting of `FALSE` is used, one of the following happens: * If response headers have not been delivered to the downstream client, a generic 500 error is returned to the client. The error response can be tailored by configuring a custom error response in the load balancer. * If response headers have been delivered, then the HTTP stream to the downstream client is reset.", "type": "boolean" }, + "forwardAttributes": { + "description": "Optional. List of the Envoy attributes to forward to the extension server. The attributes provided here are included as part of the `ProcessingRequest.attributes` field (of type `map`), where the keys are the attribute names. Refer to the [documentation](https://cloud.google.com/service-extensions/docs/cel-matcher-language-reference#attributes) for the names of attributes that can be forwarded. If omitted, no attributes are sent. Each element is a string indicating the attribute name.", + "items": { + "type": "string" + }, + "type": "array" + }, "forwardHeaders": { "description": "Optional. List of the HTTP headers to forward to the extension (from the client). If omitted, all headers are sent. Each element is a string indicating the header name.", "items": { @@ -3549,6 +3566,13 @@ "description": "Optional. Determines how the proxy behaves if the call to the extension fails or times out. When set to `TRUE`, request or response processing continues without error. Any subsequent extensions in the extension chain are also executed. When set to `FALSE` or the default setting of `FALSE` is used, one of the following happens: * If response headers have not been delivered to the downstream client, a generic 500 error is returned to the client. The error response can be tailored by configuring a custom error response in the load balancer. * If response headers have been delivered, then the HTTP stream to the downstream client is reset.", "type": "boolean" }, + "forwardAttributes": { + "description": "Optional. List of the Envoy attributes to forward to the extension server. The attributes provided here are included as part of the `ProcessingRequest.attributes` field (of type `map`), where the keys are the attribute names. Refer to the [documentation](https://cloud.google.com/service-extensions/docs/cel-matcher-language-reference#attributes) for the names of attributes that can be forwarded. If omitted, no attributes are sent. Each element is a string indicating the attribute name.", + "items": { + "type": "string" + }, + "type": "array" + }, "forwardHeaders": { "description": "Optional. List of the HTTP headers to forward to the extension (from the client or backend). If omitted, all headers are sent. Each element is a string indicating the header name.", "items": { @@ -3569,7 +3593,7 @@ "type": "string" }, "observabilityMode": { - "description": "Optional. When set to `TRUE`, enables `observability_mode` on the `ext_proc` filter. This makes `ext_proc` calls asynchronous. Envoy doesn't check for the response from `ext_proc` calls. For more information about the filter, see: https://www.envoyproxy.io/docs/envoy/v1.32.3/api-v3/extensions/filters/http/ext_proc/v3/ext_proc.proto#extensions-filters-http-ext-proc-v3-externalprocessor This field is helpful when you want to try out the extension in async log-only mode. Supported by regional `LbTrafficExtension` and `LbRouteExtension` resources. Only `STREAMED` (default) body processing mode is supported.", + "description": "Optional. When set to `true`, the calls to the extension backend are performed asynchronously, without pausing the processing of the ongoing request. In this mode, only `STREAMED` (default) body processing is supported. Responses, if any, are ignored. Supported by regional `LbTrafficExtension` and `LbRouteExtension` resources.", "type": "boolean" }, "requestBodySendMode": { @@ -3659,6 +3683,14 @@ }, "type": "array" }, + "allPorts": { + "description": "Optional. If true, the Gateway will listen on all ports. This is mutually exclusive with the `ports` field. This field only applies to gateways of type 'SECURE_WEB_GATEWAY'.", + "type": "boolean" + }, + "allowGlobalAccess": { + "description": "Optional. If true, the gateway will allow traffic from clients outside of the region where the gateway is located. This field is configurable only for gateways of type SECURE_WEB_GATEWAY.", + "type": "boolean" + }, "certificateUrls": { "description": "Optional. A fully-qualified Certificates URL reference. The proxy presents a Certificate (selected based on SNI) when establishing a TLS connection. This feature only applies to gateways of type 'SECURE_WEB_GATEWAY'.", "items": { diff --git a/discovery/networkservices-v1beta1.json b/discovery/networkservices-v1beta1.json index 8bd09cbb7e5..906ea22a01c 100644 --- a/discovery/networkservices-v1beta1.json +++ b/discovery/networkservices-v1beta1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "networkservices.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -183,6 +183,173 @@ } }, "resources": { + "agentGateways": { + "methods": { + "create": { + "description": "Creates a new AgentGateway in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agentGateways", + "httpMethod": "POST", + "id": "networkservices.projects.locations.agentGateways.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "agentGatewayId": { + "description": "Required. Short name of the AgentGateway resource to be created.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the AgentGateway. Must be in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/agentGateways", + "request": { + "$ref": "AgentGateway" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single AgentGateway.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agentGateways/{agentGatewaysId}", + "httpMethod": "DELETE", + "id": "networkservices.projects.locations.agentGateways.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The etag of the AgentGateway to delete.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. A name of the AgentGateway to delete. Must be in the format `projects/*/locations/*/agentGateways/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/agentGateways/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single AgentGateway.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agentGateways/{agentGatewaysId}", + "httpMethod": "GET", + "id": "networkservices.projects.locations.agentGateways.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the AgentGateway to get. Must be in the format `projects/*/locations/*/agentGateways/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/agentGateways/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "AgentGateway" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists AgentGateways in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agentGateways", + "httpMethod": "GET", + "id": "networkservices.projects.locations.agentGateways.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. Maximum number of AgentGateways to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListAgentGatewaysResponse` Indicates that this is a continuation of a prior `ListAgentGateways` call, and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location from which the AgentGateways should be listed, specified in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Optional. If true, allow partial responses for multi-regional Aggregated List requests. Otherwise if one of the locations is down or unreachable, the Aggregated List request will fail.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+parent}/agentGateways", + "response": { + "$ref": "ListAgentGatewaysResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single AgentGateway.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agentGateways/{agentGatewaysId}", + "httpMethod": "PATCH", + "id": "networkservices.projects.locations.agentGateways.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. Name of the AgentGateway resource. It matches pattern `projects/*/locations/*/agentGateways/`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/agentGateways/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the AgentGateway 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" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "AgentGateway" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "authzExtensions": { "methods": { "create": { @@ -935,6 +1102,11 @@ "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" + }, + "requestId": { + "description": "Optional. Idempotent request UUID.", + "location": "query", + "type": "string" } }, "path": "v1beta1/{+parent}/httpRoutes", @@ -1007,6 +1179,11 @@ "parent" ], "parameters": { + "filter": { + "description": "Optional. Filter expression to restrict the list.", + "location": "query", + "type": "string" + }, "pageSize": { "description": "Maximum number of HttpRoutes to return per call.", "format": "int32", @@ -3100,15 +3277,204 @@ } } }, - "revision": "20260218", + "revision": "20260424", "rootUrl": "https://networkservices.googleapis.com/", "schemas": { + "AgentGateway": { + "description": "AgentGateway represents the agent gateway resource.", + "id": "AgentGateway", + "properties": { + "agentGatewayCard": { + "$ref": "AgentGatewayAgentGatewayOutputCard", + "description": "Output only. Field for populated AgentGateway card.", + "readOnly": true + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. A free-text description of the resource. Max length 1024 characters.", + "type": "string" + }, + "etag": { + "description": "Optional. Etag of the resource. If this is provided, it must match the server's etag. If the provided etag does not match the server's etag, the request will fail with a 409 ABORTED error.", + "type": "string" + }, + "googleManaged": { + "$ref": "AgentGatewayGoogleManaged", + "description": "Optional. Proxy is orchestrated and managed by GoogleCloud in a tenant project." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Set of label tags associated with the AgentGateway resource.", + "type": "object" + }, + "name": { + "description": "Identifier. Name of the AgentGateway resource. It matches pattern `projects/*/locations/*/agentGateways/`.", + "type": "string" + }, + "networkConfig": { + "$ref": "AgentGatewayNetworkConfig", + "description": "Optional. Network configuration for the AgentGateway." + }, + "protocols": { + "description": "Required. List of protocols supported by an Agent Gateway", + "items": { + "enum": [ + "PROTOCOL_UNSPECIFIED", + "MCP" + ], + "enumDescriptions": [ + "Unspecified protocol.", + "Message Control Plane protocol." + ], + "type": "string" + }, + "type": "array" + }, + "registries": { + "description": "Optional. A list of Agent registries containing the agents, MCP servers and tools governed by the Agent Gateway. Note: Currently limited to project-scoped registries Must be of format `//agentregistry.googleapis.com/projects/{project}/locations/{location}/", + "items": { + "type": "string" + }, + "type": "array" + }, + "selfManaged": { + "$ref": "AgentGatewaySelfManaged", + "description": "Optional. Attach to existing Application Load Balancers or Secure Web Proxies." + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "AgentGatewayAgentGatewayOutputCard": { + "description": "AgentGatewayOutputCard contains informational output-only fields", + "id": "AgentGatewayAgentGatewayOutputCard", + "properties": { + "mtlsEndpoint": { + "description": "Output only. mTLS Endpoint associated with this AgentGateway", + "readOnly": true, + "type": "string" + }, + "rootCertificates": { + "description": "Output only. Root Certificates for Agents to validate this AgentGateway", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "serviceExtensionsServiceAccount": { + "description": "Output only. Service Account used by Service Extensions to operate.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "AgentGatewayGoogleManaged": { + "description": "Configuration for Google Managed deployment mode. Proxy is orchestrated and managed by GoogleCloud in a tenant project.", + "id": "AgentGatewayGoogleManaged", + "properties": { + "governedAccessPath": { + "description": "Optional. Operating Mode of Agent Gateway.", + "enum": [ + "GOVERNED_ACCESS_PATH_UNSPECIFIED", + "AGENT_TO_ANYWHERE", + "CLIENT_TO_AGENT" + ], + "enumDescriptions": [ + "Governed access path is not specified.", + "Govern agent conections to destinations.", + "Protect connection to Agent or Tool." + ], + "type": "string" + } + }, + "type": "object" + }, + "AgentGatewayNetworkConfig": { + "description": "NetworkConfig contains network configurations for the AgentGateway.", + "id": "AgentGatewayNetworkConfig", + "properties": { + "dnsPeeringConfig": { + "$ref": "AgentGatewayNetworkConfigDnsPeeringConfig", + "description": "Optional. Optional DNS peering configuration for connectivity to your private VPC network." + }, + "egress": { + "$ref": "AgentGatewayNetworkConfigEgress", + "description": "Optional. Optional PSC-Interface network attachment for connectivity to your private VPCs network." + } + }, + "type": "object" + }, + "AgentGatewayNetworkConfigDnsPeeringConfig": { + "description": "DNS peering config for the user VPC network.", + "id": "AgentGatewayNetworkConfigDnsPeeringConfig", + "properties": { + "domains": { + "description": "Required. Domain names for which DNS queries should be forwarded to the target network.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetNetwork": { + "description": "Required. Target network in 'target project' to which DNS queries should be forwarded to. Must be in format of `projects/{project}/global/networks/{network}`.", + "type": "string" + }, + "targetProject": { + "description": "Required. Target project ID to which DNS queries should be forwarded to. This can be the same project that contains the AgentGateway or a different project.", + "type": "string" + } + }, + "type": "object" + }, + "AgentGatewayNetworkConfigEgress": { + "description": "Configuration for Egress", + "id": "AgentGatewayNetworkConfigEgress", + "properties": { + "networkAttachment": { + "description": "Optional. The URI of the Network Attachment resource.", + "type": "string" + } + }, + "type": "object" + }, + "AgentGatewaySelfManaged": { + "description": "Configuration for Self Managed deployment mode. Attach to existing Application Load Balancers or Secure Web Proxies.", + "id": "AgentGatewaySelfManaged", + "properties": { + "resourceUri": { + "description": "Optional. A supported Google Cloud networking proxy in the Project and Location", + "type": "string" + }, + "resourceUris": { + "description": "Optional. List of supported Google Cloud networking proxies in the Project and Location. resource_uris is mutually exclusive with resource_uri.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "AuthzExtension": { "description": "`AuthzExtension` is a resource that allows traffic forwarding to a callout backend service to make an authorization decision.", "id": "AuthzExtension", "properties": { "authority": { - "description": "Required. The `:authority` header in the gRPC request sent from Envoy to the extension service.", + "description": "Optional. The `:authority` header in the gRPC request sent from Envoy to the extension service. It is required when the `service` field points to a backend service or a wasm plugin.", "type": "string" }, "createTime": { @@ -3125,6 +3491,13 @@ "description": "Optional. Determines how the proxy behaves if the call to the extension fails or times out. When set to `TRUE`, request or response processing continues without error. Any subsequent extensions in the extension chain are also executed. When set to `FALSE` or the default setting of `FALSE` is used, one of the following happens: * If response headers have not been delivered to the downstream client, a generic 500 error is returned to the client. The error response can be tailored by configuring a custom error response in the load balancer. * If response headers have been delivered, then the HTTP stream to the downstream client is reset.", "type": "boolean" }, + "forwardAttributes": { + "description": "Optional. List of the Envoy attributes to forward to the extension server. The attributes provided here are included as part of the `ProcessingRequest.attributes` field (of type `map`), where the keys are the attribute names. Refer to the [documentation](https://cloud.google.com/service-extensions/docs/cel-matcher-language-reference#attributes) for the names of attributes that can be forwarded. If omitted, no attributes are sent. Each element is a string indicating the attribute name.", + "items": { + "type": "string" + }, + "type": "array" + }, "forwardHeaders": { "description": "Optional. List of the HTTP headers to forward to the extension (from the client). If omitted, all headers are sent. Each element is a string indicating the header name.", "items": { @@ -3330,6 +3703,13 @@ "description": "Optional. Determines how the proxy behaves if the call to the extension fails or times out. When set to `TRUE`, request or response processing continues without error. Any subsequent extensions in the extension chain are also executed. When set to `FALSE` or the default setting of `FALSE` is used, one of the following happens: * If response headers have not been delivered to the downstream client, a generic 500 error is returned to the client. The error response can be tailored by configuring a custom error response in the load balancer. * If response headers have been delivered, then the HTTP stream to the downstream client is reset.", "type": "boolean" }, + "forwardAttributes": { + "description": "Optional. List of the Envoy attributes to forward to the extension server. The attributes provided here are included as part of the `ProcessingRequest.attributes` field (of type `map`), where the keys are the attribute names. Refer to the [documentation](https://cloud.google.com/service-extensions/docs/cel-matcher-language-reference#attributes) for the names of attributes that can be forwarded. If omitted, no attributes are sent. Each element is a string indicating the attribute name.", + "items": { + "type": "string" + }, + "type": "array" + }, "forwardHeaders": { "description": "Optional. List of the HTTP headers to forward to the extension (from the client or backend). If omitted, all headers are sent. Each element is a string indicating the header name.", "items": { @@ -3350,7 +3730,7 @@ "type": "string" }, "observabilityMode": { - "description": "Optional. When set to `TRUE`, enables `observability_mode` on the `ext_proc` filter. This makes `ext_proc` calls asynchronous. Envoy doesn't check for the response from `ext_proc` calls. For more information about the filter, see: https://www.envoyproxy.io/docs/envoy/v1.32.3/api-v3/extensions/filters/http/ext_proc/v3/ext_proc.proto#extensions-filters-http-ext-proc-v3-externalprocessor This field is helpful when you want to try out the extension in async log-only mode. Supported by regional `LbTrafficExtension` and `LbRouteExtension` resources. Only `STREAMED` (default) body processing mode is supported.", + "description": "Optional. When set to `true`, the calls to the extension backend are performed asynchronously, without pausing the processing of the ongoing request. In this mode, only `STREAMED` (default) body processing is supported. Responses, if any, are ignored. Supported by regional `LbTrafficExtension` and `LbRouteExtension` resources.", "type": "boolean" }, "requestBodySendMode": { @@ -3440,6 +3820,14 @@ }, "type": "array" }, + "allPorts": { + "description": "Optional. If true, the Gateway will listen on all ports. This is mutually exclusive with the `ports` field. This field only applies to gateways of type 'SECURE_WEB_GATEWAY'.", + "type": "boolean" + }, + "allowGlobalAccess": { + "description": "Optional. If true, the gateway will allow traffic from clients outside of the region where the gateway is located. This field is configurable only for gateways of type SECURE_WEB_GATEWAY.", + "type": "boolean" + }, "certificateUrls": { "description": "Optional. A fully-qualified Certificates URL reference. The proxy presents a Certificate (selected based on SNI) when establishing a TLS connection. This feature only applies to gateways of type 'SECURE_WEB_GATEWAY'.", "items": { @@ -4718,6 +5106,31 @@ }, "type": "object" }, + "ListAgentGatewaysResponse": { + "description": "Response returned by the ListAgentGateways method.", + "id": "ListAgentGatewaysResponse", + "properties": { + "agentGateways": { + "description": "List of AgentGateway resources.", + "items": { + "$ref": "AgentGateway" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`.", + "type": "string" + }, + "unreachable": { + "description": "Unreachable resources. Populated when the request attempts to list all resources across all supported locations, while some locations are temporarily unavailable.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListAuthzExtensionsResponse": { "description": "Message for response to listing `AuthzExtension` resources.", "id": "ListAuthzExtensionsResponse", diff --git a/discovery/notebooks-v1.json b/discovery/notebooks-v1.json index d13965249e4..eae8fefcade 100644 --- a/discovery/notebooks-v1.json +++ b/discovery/notebooks-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "notebooks.projects.locations.list", @@ -2019,7 +2019,7 @@ } } }, - "revision": "20260130", + "revision": "20260401", "rootUrl": "https://notebooks.googleapis.com/", "schemas": { "AcceleratorConfig": { diff --git a/discovery/notebooks-v2.json b/discovery/notebooks-v2.json index 86ee629d535..6516ed93628 100644 --- a/discovery/notebooks-v2.json +++ b/discovery/notebooks-v2.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v2/projects/{projectsId}/locations", "httpMethod": "GET", "id": "notebooks.projects.locations.list", @@ -971,7 +971,7 @@ } } }, - "revision": "20260130", + "revision": "20260401", "rootUrl": "https://notebooks.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -1088,7 +1088,11 @@ "PD_SSD", "PD_BALANCED", "PD_EXTREME", - "HYPERDISK_BALANCED" + "HYPERDISK_BALANCED", + "HYPERDISK_EXTREME", + "HYPERDISK_THROUGHPUT", + "HYPERDISK_BALANCED_HIGH_AVAILABILITY", + "HYPERDISK_ML" ], "enumDescriptions": [ "Disk type not set.", @@ -1096,7 +1100,11 @@ "SSD persistent disk type.", "Balanced persistent disk type.", "Extreme persistent disk type.", - "Hyperdisk Balanced persistent disk type." + "Represents the Hyperdisk Balanced persistent disk type. Can be used as a boot disk or data disk.", + "Represents the Hyperdisk Extreme persistent disk type. Can only be used as a data disk.", + "Represents the Hyperdisk Throughput persistent disk type. Can only be used as a data disk.", + "Represents the Hyperdisk Balanced High Availability persistent disk type. Can be used as a boot disk or data disk.", + "Represents the Hyperdisk ML persistent disk type. Can be used as a boot disk or data disk." ], "type": "string" }, @@ -1266,7 +1274,11 @@ "PD_SSD", "PD_BALANCED", "PD_EXTREME", - "HYPERDISK_BALANCED" + "HYPERDISK_BALANCED", + "HYPERDISK_EXTREME", + "HYPERDISK_THROUGHPUT", + "HYPERDISK_BALANCED_HIGH_AVAILABILITY", + "HYPERDISK_ML" ], "enumDescriptions": [ "Disk type not set.", @@ -1274,7 +1286,11 @@ "SSD persistent disk type.", "Balanced persistent disk type.", "Extreme persistent disk type.", - "Hyperdisk Balanced persistent disk type." + "Represents the Hyperdisk Balanced persistent disk type. Can be used as a boot disk or data disk.", + "Represents the Hyperdisk Extreme persistent disk type. Can only be used as a data disk.", + "Represents the Hyperdisk Throughput persistent disk type. Can only be used as a data disk.", + "Represents the Hyperdisk Balanced High Availability persistent disk type. Can be used as a boot disk or data disk.", + "Represents the Hyperdisk ML persistent disk type. Can be used as a boot disk or data disk." ], "type": "string" }, diff --git a/discovery/observability-v1.json b/discovery/observability-v1.json index a92e1e55891..ec48a5e0cee 100644 --- a/discovery/observability-v1.json +++ b/discovery/observability-v1.json @@ -16,10 +16,150 @@ "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/stackdriver/docs/", "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.asia-southeast3.rep.googleapis.com/", + "location": "asia-southeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, { "description": "Regional Endpoint", "endpointUrl": "https://observability.us-central1.rep.googleapis.com/", "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.us.rep.googleapis.com/", + "location": "us" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://observability.eu.rep.googleapis.com/", + "location": "eu" } ], "fullyEncodeReservedExpansion": true, @@ -167,7 +307,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/folders/{foldersId}/locations", "httpMethod": "GET", "id": "observability.folders.locations.list", @@ -176,7 +316,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -436,7 +576,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/organizations/{organizationsId}/locations", "httpMethod": "GET", "id": "observability.organizations.locations.list", @@ -445,7 +585,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -705,7 +845,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "observability.projects.locations.list", @@ -714,7 +854,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1506,7 +1646,7 @@ } } }, - "revision": "20260220", + "revision": "20260423", "rootUrl": "https://observability.googleapis.com/", "schemas": { "Bucket": { diff --git a/discovery/ondemandscanning-v1.json b/discovery/ondemandscanning-v1.json index 3ee16fb1cca..4a915460a4a 100644 --- a/discovery/ondemandscanning-v1.json +++ b/discovery/ondemandscanning-v1.json @@ -344,9 +344,27 @@ } } }, - "revision": "20260209", + "revision": "20260427", "rootUrl": "https://ondemandscanning.googleapis.com/", "schemas": { + "AISkillAnalysisOccurrence": { + "description": "AISkillAnalysisOccurrence provides the results of an AI-based skill analysis.", + "id": "AISkillAnalysisOccurrence", + "properties": { + "findings": { + "description": "Findings produced by the analysis.", + "items": { + "$ref": "Finding" + }, + "type": "array" + }, + "skillName": { + "description": "Name of the skill that produced this analysis.", + "type": "string" + } + }, + "type": "object" + }, "AliasContext": { "description": "An alias to a repo revision.", "id": "AliasContext", @@ -1259,6 +1277,46 @@ }, "layerDetails": { "$ref": "LayerDetails" + }, + "lineNumber": { + "description": "Line number in the file where the package is found. Applies only to source repository scanning. Note: this field is marked as `optional` in other corresponding protos, but in edition 2023, the \"optional\" keyword is redundant.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Finding": { + "description": "Finding provides details for a single finding within an AISkillAnalysisOccurrence.", + "id": "Finding", + "properties": { + "category": { + "description": "Category of the finding.", + "type": "string" + }, + "description": { + "description": "Detailed description of the finding.", + "type": "string" + }, + "filePath": { + "description": "Path to the file where the finding was detected.", + "type": "string" + }, + "ruleId": { + "description": "Unique identifier of the rule that produced this finding.", + "type": "string" + }, + "severity": { + "description": "Severity of the finding.", + "type": "string" + }, + "snippet": { + "description": "Code snippet relevant to the finding.", + "type": "string" + }, + "title": { + "description": "Title of the finding.", + "type": "string" } }, "type": "object" @@ -1358,6 +1416,11 @@ "layerDetails": { "$ref": "GrafeasV1LayerDetails", "description": "Each package found in a file should have its own layer metadata (that is, information from the origin layer of the package)." + }, + "lineNumber": { + "description": "Line number in the file where the package was found. Optional field that only applies to source repository scanning.", + "format": "int32", + "type": "integer" } }, "type": "object" @@ -1899,6 +1962,15 @@ "description": "An instance of an analysis type that has been found on a resource.", "id": "Occurrence", "properties": { + "advisoryPublishTime": { + "description": "The time this advisory was published by the source.", + "format": "google-datetime", + "type": "string" + }, + "aiSkillAnalysis": { + "$ref": "AISkillAnalysisOccurrence", + "description": "Describes an AI skill analysis." + }, "attestation": { "$ref": "AttestationOccurrence", "description": "Describes an attestation of an artifact." @@ -1952,7 +2024,8 @@ "DSSE_ATTESTATION", "VULNERABILITY_ASSESSMENT", "SBOM_REFERENCE", - "SECRET" + "SECRET", + "AI_SKILL_ANALYSIS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -1968,7 +2041,8 @@ "This represents a DSSE attestation Note", "This represents a Vulnerability Assessment.", "This represents an SBOM Reference.", - "This represents a secret." + "This represents a secret.", + "This represents an AI skill analysis." ], "type": "string" }, diff --git a/discovery/ondemandscanning-v1beta1.json b/discovery/ondemandscanning-v1beta1.json index 29b032cce8f..2cd7c6692e4 100644 --- a/discovery/ondemandscanning-v1beta1.json +++ b/discovery/ondemandscanning-v1beta1.json @@ -344,9 +344,27 @@ } } }, - "revision": "20260209", + "revision": "20260427", "rootUrl": "https://ondemandscanning.googleapis.com/", "schemas": { + "AISkillAnalysisOccurrence": { + "description": "AISkillAnalysisOccurrence provides the results of an AI-based skill analysis.", + "id": "AISkillAnalysisOccurrence", + "properties": { + "findings": { + "description": "Findings produced by the analysis.", + "items": { + "$ref": "Finding" + }, + "type": "array" + }, + "skillName": { + "description": "Name of the skill that produced this analysis.", + "type": "string" + } + }, + "type": "object" + }, "AliasContext": { "description": "An alias to a repo revision.", "id": "AliasContext", @@ -1254,6 +1272,46 @@ }, "layerDetails": { "$ref": "LayerDetails" + }, + "lineNumber": { + "description": "Line number in the file where the package is found. Applies only to source repository scanning. Note: this field is marked as `optional` in other corresponding protos, but in edition 2023, the \"optional\" keyword is redundant.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "Finding": { + "description": "Finding provides details for a single finding within an AISkillAnalysisOccurrence.", + "id": "Finding", + "properties": { + "category": { + "description": "Category of the finding.", + "type": "string" + }, + "description": { + "description": "Detailed description of the finding.", + "type": "string" + }, + "filePath": { + "description": "Path to the file where the finding was detected.", + "type": "string" + }, + "ruleId": { + "description": "Unique identifier of the rule that produced this finding.", + "type": "string" + }, + "severity": { + "description": "Severity of the finding.", + "type": "string" + }, + "snippet": { + "description": "Code snippet relevant to the finding.", + "type": "string" + }, + "title": { + "description": "Title of the finding.", + "type": "string" } }, "type": "object" @@ -1353,6 +1411,11 @@ "layerDetails": { "$ref": "GrafeasV1LayerDetails", "description": "Each package found in a file should have its own layer metadata (that is, information from the origin layer of the package)." + }, + "lineNumber": { + "description": "Line number in the file where the package was found. Optional field that only applies to source repository scanning.", + "format": "int32", + "type": "integer" } }, "type": "object" @@ -1894,6 +1957,15 @@ "description": "An instance of an analysis type that has been found on a resource.", "id": "Occurrence", "properties": { + "advisoryPublishTime": { + "description": "The time this advisory was published by the source.", + "format": "google-datetime", + "type": "string" + }, + "aiSkillAnalysis": { + "$ref": "AISkillAnalysisOccurrence", + "description": "Describes an AI skill analysis." + }, "attestation": { "$ref": "AttestationOccurrence", "description": "Describes an attestation of an artifact." @@ -1947,7 +2019,8 @@ "DSSE_ATTESTATION", "VULNERABILITY_ASSESSMENT", "SBOM_REFERENCE", - "SECRET" + "SECRET", + "AI_SKILL_ANALYSIS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -1963,7 +2036,8 @@ "This represents a DSSE attestation Note", "This represents a Vulnerability Assessment.", "This represents an SBOM Reference.", - "This represents a secret." + "This represents a secret.", + "This represents an AI skill analysis." ], "type": "string" }, diff --git a/discovery/oracledatabase-v1.json b/discovery/oracledatabase-v1.json index 36834e100bc..0a323a2f081 100644 --- a/discovery/oracledatabase-v1.json +++ b/discovery/oracledatabase-v1.json @@ -16,21 +16,11 @@ "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/oracle/database/docs", "endpoints": [ - { - "description": "Regional Endpoint", - "endpointUrl": "https://oracledatabase.asia-northeast1.rep.googleapis.com/", - "location": "asia-northeast1" - }, { "description": "Regional Endpoint", "endpointUrl": "https://oracledatabase.asia-northeast2.rep.googleapis.com/", "location": "asia-northeast2" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://oracledatabase.asia-south1.rep.googleapis.com/", - "location": "asia-south1" - }, { "description": "Regional Endpoint", "endpointUrl": "https://oracledatabase.asia-south2.rep.googleapis.com/", @@ -38,58 +28,23 @@ }, { "description": "Regional Endpoint", - "endpointUrl": "https://oracledatabase.australia-southeast1.rep.googleapis.com/", - "location": "australia-southeast1" + "endpointUrl": "https://oracledatabase.asia-south1.rep.googleapis.com/", + "location": "asia-south1" }, { "description": "Regional Endpoint", "endpointUrl": "https://oracledatabase.australia-southeast2.rep.googleapis.com/", "location": "australia-southeast2" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://oracledatabase.europe-west2.rep.googleapis.com/", - "location": "europe-west2" - }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://oracledatabase.europe-west3.rep.googleapis.com/", - "location": "europe-west3" - }, { "description": "Regional Endpoint", "endpointUrl": "https://oracledatabase.europe-west8.rep.googleapis.com/", "location": "europe-west8" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://oracledatabase.northamerica-northeast1.rep.googleapis.com/", - "location": "northamerica-northeast1" - }, { "description": "Regional Endpoint", "endpointUrl": "https://oracledatabase.northamerica-northeast2.rep.googleapis.com/", "location": "northamerica-northeast2" - }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://oracledatabase.southamerica-east1.rep.googleapis.com/", - "location": "southamerica-east1" - }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://oracledatabase.us-central1.rep.googleapis.com/", - "location": "us-central1" - }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://oracledatabase.us-east4.rep.googleapis.com/", - "location": "us-east4" - }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://oracledatabase.us-west3.rep.googleapis.com/", - "location": "us-west3" } ], "fullyEncodeReservedExpansion": true, @@ -212,7 +167,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "oracledatabase.projects.locations.list", @@ -221,7 +176,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2549,7 +2504,7 @@ } } }, - "revision": "20260220", + "revision": "20260427", "rootUrl": "https://oracledatabase.googleapis.com/", "schemas": { "AllConnectionStrings": { @@ -2579,7 +2534,11 @@ "id": "AutonomousDatabase", "properties": { "adminPassword": { - "description": "Optional. Immutable. The password for the default ADMIN user.", + "description": "Optional. Immutable. The password for the default ADMIN user. Note: Only one of `admin_password_secret_version` or `admin_password` can be populated.", + "type": "string" + }, + "adminPasswordSecretVersion": { + "description": "Optional. Immutable. The resource name of a secret version in Secret Manager which contains the database admin user's password. Format: projects/{project}/secrets/{secret}/versions/{version}. Note: Only one of `admin_password_secret_version` or `admin_password` can be populated.", "type": "string" }, "cidr": { @@ -3164,7 +3123,8 @@ "type": "boolean" }, "isLocalDataGuardEnabled": { - "description": "Output only. This field indicates whether the Autonomous Database has local (in-region) Data Guard enabled.", + "deprecated": true, + "description": "Output only. Deprecated: Please use `local_data_guard_enabled` instead. This field indicates whether the Autonomous Database has local (in-region) Data Guard enabled.", "readOnly": true, "type": "boolean" }, @@ -3192,22 +3152,34 @@ "type": "string" }, "localAdgAutoFailoverMaxDataLossLimit": { - "description": "Output only. This field indicates the maximum data loss limit for an Autonomous Database, in seconds.", + "deprecated": true, + "description": "Output only. Deprecated: Please use `local_adg_auto_failover_max_data_loss_limit_duration` instead. This field indicates the maximum data loss limit for an Autonomous Database, in seconds.", "format": "int32", "readOnly": true, "type": "integer" }, + "localAdgAutoFailoverMaxDataLossLimitDuration": { + "description": "Optional. This field indicates the maximum data loss limit for an Autonomous Database, in seconds.", + "format": "int32", + "type": "integer" + }, + "localDataGuardEnabled": { + "description": "Optional. Indicates whether the Autonomous Database has a local (in-region) standby database. Not applicable to cross-region Data Guard or dedicated Exadata infrastructure.", + "type": "boolean" + }, "localDisasterRecoveryType": { "description": "Output only. This field indicates the local disaster recovery (DR) type of an Autonomous Database.", "enum": [ "LOCAL_DISASTER_RECOVERY_TYPE_UNSPECIFIED", "ADG", - "BACKUP_BASED" + "BACKUP_BASED", + "NOT_AVAILABLE" ], "enumDescriptions": [ "Default unspecified value.", "Autonomous Data Guard recovery.", - "Backup based recovery." + "Backup based recovery.", + "Local disaster recovery is not available." ], "readOnly": true, "type": "string" @@ -4291,7 +4263,11 @@ "id": "Database", "properties": { "adminPassword": { - "description": "Required. The password for the default ADMIN user.", + "description": "Optional. The password for the default ADMIN user. Note: Only one of `admin_password_secret_version` or `admin_password` can be populated.", + "type": "string" + }, + "adminPasswordSecretVersion": { + "description": "Optional. The resource name of a secret version in Secret Manager which contains the database admin user's password. Format: projects/{project}/secrets/{secret}/versions/{version}. Note: Only one of `admin_password_secret_version` or `admin_password` can be populated.", "type": "string" }, "characterSet": { @@ -4361,12 +4337,24 @@ "readOnly": true, "type": "string" }, + "pluggableDatabaseId": { + "description": "Optional. The ID of the pluggable database associated with the Database. The ID must be unique within the project and location.", + "type": "string" + }, + "pluggableDatabaseName": { + "description": "Optional. The pluggable database associated with the Database. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters.", + "type": "string" + }, "properties": { "$ref": "DatabaseProperties", "description": "Optional. The properties of the Database." }, "tdeWalletPassword": { - "description": "Optional. The TDE wallet password for the database.", + "description": "Optional. The TDE wallet password for the database. Note: Only one of `tde_wallet_password_secret_version` or `tde_wallet_password` can be populated.", + "type": "string" + }, + "tdeWalletPasswordSecretVersion": { + "description": "Optional. The resource name of a secret version in Secret Manager which contains the TDE wallet password for the database. Format: projects/{project}/secrets/{secret}/versions/{version}. Note: Only one of `tde_wallet_password_secret_version` or `tde_wallet_password` can be populated.", "type": "string" } }, @@ -6000,6 +5988,13 @@ "nextPageToken": { "description": "A token identifying a page of results the server should return.", "type": "string" + }, + "unreachable": { + "description": "Unreachable locations when listing resources across all locations using wildcard location '-'.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -6036,6 +6031,13 @@ "nextPageToken": { "description": "A token for fetching next page of response.", "type": "string" + }, + "unreachable": { + "description": "Unreachable locations when listing resources across all locations using wildcard location '-'.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -6054,6 +6056,13 @@ "nextPageToken": { "description": "A token to fetch the next page of results.", "type": "string" + }, + "unreachable": { + "description": "Unreachable locations when listing resources across all locations using wildcard location '-'.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -6180,6 +6189,13 @@ "nextPageToken": { "description": "A token identifying a page of results the server should return.", "type": "string" + }, + "unreachable": { + "description": "Unreachable locations when listing resources across all locations using wildcard location '-'.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -6234,6 +6250,13 @@ "nextPageToken": { "description": "A token identifying a page of results the server should return.", "type": "string" + }, + "unreachable": { + "description": "Unreachable locations when listing resources across all locations using wildcard location '-'.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" @@ -6252,6 +6275,13 @@ "nextPageToken": { "description": "A token identifying a page of results the server should return. If present, the next page token can be provided to a subsequent ListExascaleDbStorageVaults call to list the next page. If empty, there are no more pages.", "type": "string" + }, + "unreachable": { + "description": "Unreachable locations when listing resources across all locations using wildcard location '-'.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" diff --git a/discovery/orgpolicy-v2.json b/discovery/orgpolicy-v2.json index ef22e18df65..e091560cfe6 100644 --- a/discovery/orgpolicy-v2.json +++ b/discovery/orgpolicy-v2.json @@ -187,7 +187,7 @@ ], "parameters": { "etag": { - "description": "Optional. The current etag of policy. If an etag is provided and does not match the current etag of the policy, deletion will be blocked and an ABORTED error will be returned.", + "description": "Optional. The current entity tag (ETag) of the organization policy. If an ETag is provided and doesn't match the current ETag of the policy, deletion of the policy will be blocked and an `ABORTED` error will be returned.", "location": "query", "type": "string" }, @@ -208,7 +208,7 @@ ] }, "get": { - "description": "Gets a policy on a resource. If no policy is set on the resource, `NOT_FOUND` is returned. The `etag` value can be used with `UpdatePolicy()` to update a policy during read-modify-write.", + "description": "Gets a policy on a resource. If no policy is set on the resource, `NOT_FOUND` is returned. The entity tag (ETag) can be used with `UpdatePolicy()` to update a policy during read-modify-write.", "flatPath": "v2/folders/{foldersId}/policies/{policiesId}", "httpMethod": "GET", "id": "orgpolicy.folders.policies.get", @@ -233,7 +233,7 @@ ] }, "getEffectivePolicy": { - "description": "Gets the effective policy on a resource. This is the result of merging policies in the resource hierarchy and evaluating conditions. The returned policy will not have an `etag` or `condition` set because it is an evaluated policy across multiple resources. Subtrees of Resource Manager resource hierarchy with 'under:' prefix will not be expanded.", + "description": "Gets the effective policy on a resource. This is the result of merging policies in the resource hierarchy and evaluating conditions. The returned policy will not have an ETag or `condition` set because it is an evaluated policy across multiple resources. Subtrees of Resource Manager resource hierarchy with 'under:' prefix will not be expanded.", "flatPath": "v2/folders/{foldersId}/policies/{policiesId}:getEffectivePolicy", "httpMethod": "GET", "id": "orgpolicy.folders.policies.getEffectivePolicy", @@ -294,7 +294,7 @@ ] }, "patch": { - "description": "Updates a policy. Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the constraint or the policy do not exist. Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the etag supplied in the request does not match the persisted etag of the policy Note: the supplied policy will perform a full overwrite of all fields.", + "description": "Updates a policy. Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the constraint or the policy doesn't exist. Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the ETag supplied in the request doesn't match the persisted ETag of the policy. Note: the supplied policy will perform a full overwrite of all fields.", "flatPath": "v2/folders/{foldersId}/policies/{policiesId}", "httpMethod": "PATCH", "id": "orgpolicy.folders.policies.patch", @@ -303,14 +303,14 @@ ], "parameters": { "name": { - "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", + "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", "location": "path", "pattern": "^folders/[^/]+/policies/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "Field mask used to specify the fields to be overwritten in the policy by the set. The fields specified in the update_mask are relative to the policy, not the full request.", + "description": "Field mask used to specify the fields to be overwritten in the policy. The fields specified in the update_mask are relative to the policy, not the full request.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -499,7 +499,7 @@ ], "parameters": { "name": { - "description": "Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id}/customConstraints/{custom_constraint_id}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 70 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id}/customConstraints/` is not counted.", + "description": "Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id}/customConstraints/{custom_constraint_id}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 71 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id}/customConstraints/custom.` is not counted.", "location": "path", "pattern": "^organizations/[^/]+/customConstraints/[^/]+$", "required": true, @@ -559,7 +559,7 @@ ], "parameters": { "etag": { - "description": "Optional. The current etag of policy. If an etag is provided and does not match the current etag of the policy, deletion will be blocked and an ABORTED error will be returned.", + "description": "Optional. The current entity tag (ETag) of the organization policy. If an ETag is provided and doesn't match the current ETag of the policy, deletion of the policy will be blocked and an `ABORTED` error will be returned.", "location": "query", "type": "string" }, @@ -580,7 +580,7 @@ ] }, "get": { - "description": "Gets a policy on a resource. If no policy is set on the resource, `NOT_FOUND` is returned. The `etag` value can be used with `UpdatePolicy()` to update a policy during read-modify-write.", + "description": "Gets a policy on a resource. If no policy is set on the resource, `NOT_FOUND` is returned. The entity tag (ETag) can be used with `UpdatePolicy()` to update a policy during read-modify-write.", "flatPath": "v2/organizations/{organizationsId}/policies/{policiesId}", "httpMethod": "GET", "id": "orgpolicy.organizations.policies.get", @@ -605,7 +605,7 @@ ] }, "getEffectivePolicy": { - "description": "Gets the effective policy on a resource. This is the result of merging policies in the resource hierarchy and evaluating conditions. The returned policy will not have an `etag` or `condition` set because it is an evaluated policy across multiple resources. Subtrees of Resource Manager resource hierarchy with 'under:' prefix will not be expanded.", + "description": "Gets the effective policy on a resource. This is the result of merging policies in the resource hierarchy and evaluating conditions. The returned policy will not have an ETag or `condition` set because it is an evaluated policy across multiple resources. Subtrees of Resource Manager resource hierarchy with 'under:' prefix will not be expanded.", "flatPath": "v2/organizations/{organizationsId}/policies/{policiesId}:getEffectivePolicy", "httpMethod": "GET", "id": "orgpolicy.organizations.policies.getEffectivePolicy", @@ -666,7 +666,7 @@ ] }, "patch": { - "description": "Updates a policy. Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the constraint or the policy do not exist. Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the etag supplied in the request does not match the persisted etag of the policy Note: the supplied policy will perform a full overwrite of all fields.", + "description": "Updates a policy. Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the constraint or the policy doesn't exist. Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the ETag supplied in the request doesn't match the persisted ETag of the policy. Note: the supplied policy will perform a full overwrite of all fields.", "flatPath": "v2/organizations/{organizationsId}/policies/{policiesId}", "httpMethod": "PATCH", "id": "orgpolicy.organizations.policies.patch", @@ -675,14 +675,14 @@ ], "parameters": { "name": { - "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", + "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", "location": "path", "pattern": "^organizations/[^/]+/policies/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "Field mask used to specify the fields to be overwritten in the policy by the set. The fields specified in the update_mask are relative to the policy, not the full request.", + "description": "Field mask used to specify the fields to be overwritten in the policy. The fields specified in the update_mask are relative to the policy, not the full request.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -785,7 +785,7 @@ ], "parameters": { "etag": { - "description": "Optional. The current etag of policy. If an etag is provided and does not match the current etag of the policy, deletion will be blocked and an ABORTED error will be returned.", + "description": "Optional. The current entity tag (ETag) of the organization policy. If an ETag is provided and doesn't match the current ETag of the policy, deletion of the policy will be blocked and an `ABORTED` error will be returned.", "location": "query", "type": "string" }, @@ -806,7 +806,7 @@ ] }, "get": { - "description": "Gets a policy on a resource. If no policy is set on the resource, `NOT_FOUND` is returned. The `etag` value can be used with `UpdatePolicy()` to update a policy during read-modify-write.", + "description": "Gets a policy on a resource. If no policy is set on the resource, `NOT_FOUND` is returned. The entity tag (ETag) can be used with `UpdatePolicy()` to update a policy during read-modify-write.", "flatPath": "v2/projects/{projectsId}/policies/{policiesId}", "httpMethod": "GET", "id": "orgpolicy.projects.policies.get", @@ -831,7 +831,7 @@ ] }, "getEffectivePolicy": { - "description": "Gets the effective policy on a resource. This is the result of merging policies in the resource hierarchy and evaluating conditions. The returned policy will not have an `etag` or `condition` set because it is an evaluated policy across multiple resources. Subtrees of Resource Manager resource hierarchy with 'under:' prefix will not be expanded.", + "description": "Gets the effective policy on a resource. This is the result of merging policies in the resource hierarchy and evaluating conditions. The returned policy will not have an ETag or `condition` set because it is an evaluated policy across multiple resources. Subtrees of Resource Manager resource hierarchy with 'under:' prefix will not be expanded.", "flatPath": "v2/projects/{projectsId}/policies/{policiesId}:getEffectivePolicy", "httpMethod": "GET", "id": "orgpolicy.projects.policies.getEffectivePolicy", @@ -892,7 +892,7 @@ ] }, "patch": { - "description": "Updates a policy. Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the constraint or the policy do not exist. Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the etag supplied in the request does not match the persisted etag of the policy Note: the supplied policy will perform a full overwrite of all fields.", + "description": "Updates a policy. Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the constraint or the policy doesn't exist. Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the ETag supplied in the request doesn't match the persisted ETag of the policy. Note: the supplied policy will perform a full overwrite of all fields.", "flatPath": "v2/projects/{projectsId}/policies/{policiesId}", "httpMethod": "PATCH", "id": "orgpolicy.projects.policies.patch", @@ -901,14 +901,14 @@ ], "parameters": { "name": { - "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", + "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", "location": "path", "pattern": "^projects/[^/]+/policies/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "Field mask used to specify the fields to be overwritten in the policy by the set. The fields specified in the update_mask are relative to the policy, not the full request.", + "description": "Field mask used to specify the fields to be overwritten in the policy. The fields specified in the update_mask are relative to the policy, not the full request.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -930,7 +930,7 @@ } } }, - "revision": "20251204", + "revision": "20260312", "rootUrl": "https://orgpolicy.googleapis.com/", "schemas": { "GoogleCloudOrgpolicyV2AlternatePolicySpec": { @@ -949,7 +949,7 @@ "type": "object" }, "GoogleCloudOrgpolicyV2Constraint": { - "description": "A constraint describes a way to restrict resource's configuration. For example, you could enforce a constraint that controls which Google Cloud services can be activated across an organization, or whether a Compute Engine instance can have serial port connections established. Constraints can be configured by the organization policy administrator to fit the needs of the organization by setting a policy that includes constraints at different locations in the organization's resource hierarchy. Policies are inherited down the resource hierarchy from higher levels, but can also be overridden. For details about the inheritance rules, see `Policy`. Constraints have a default behavior determined by the `constraint_default` field, which is the enforcement behavior that is used in the absence of a policy being defined or inherited for the resource in question.", + "description": "A constraint describes a way to restrict a resource's configuration. For example, you could enforce a constraint that controls which Google Cloud services can be activated across an organization, or whether a Compute Engine instance can have serial port connections established. Constraints can be configured by the organization policy administrator to fit the needs of the organization by setting a policy that includes constraints at different locations in the organization's resource hierarchy. Policies are inherited down the resource hierarchy from higher levels, but can also be overridden. For details about the inheritance rules, see `Policy`. Constraints have a default behavior determined by the `constraint_default` field, which is the enforcement behavior that is used in the absence of a policy being defined or inherited for the resource in question.", "id": "GoogleCloudOrgpolicyV2Constraint", "properties": { "booleanConstraint": { @@ -979,7 +979,7 @@ "type": "string" }, "equivalentConstraint": { - "description": "Managed constraint and canned constraint sometimes can have equivalents. This field is used to store the equivalent constraint name.", + "description": "Defines the equivalent constraint name, if it exists. Managed constraints can have an equivalent legacy managed constraint, and legacy managed constraints can have an equivalent managed constraint. For example, \"constraints/iam.disableServiceAccountKeyUpload\" is equivalent to \"constraints/iam.managed.disableServiceAccountKeyUpload\".", "type": "string" }, "listConstraint": { @@ -1065,7 +1065,7 @@ "type": "object" }, "resourceTypes": { - "description": "The resource instance type on which this policy applies. Format will be of the form : `/` Example: * `compute.googleapis.com/Instance`.", + "description": "The resource instance type that this policy applies to, in the format `/`. Example: * `compute.googleapis.com/Instance`.", "items": { "type": "string" }, @@ -1119,7 +1119,7 @@ "type": "string" }, "validValuesExpr": { - "description": "Provides a CEL expression to specify the acceptable parameter values during assignment. For example, parameterName in (\"parameterValue1\", \"parameterValue2\")", + "description": "Provides a CEL expression to specify the acceptable parameter values during assignment. For example, parameterName in (\"parameterValue1\", \"parameterValue2\").", "type": "string" } }, @@ -1130,7 +1130,7 @@ "id": "GoogleCloudOrgpolicyV2ConstraintCustomConstraintDefinitionParameterMetadata", "properties": { "description": { - "description": "Detailed description of what this `parameter` is and use of it. Mutable.", + "description": "Detailed description of what this `parameter` is and its use. Mutable.", "type": "string" } }, @@ -1205,7 +1205,7 @@ "type": "array" }, "name": { - "description": "Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id}/customConstraints/{custom_constraint_id}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 70 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id}/customConstraints/` is not counted.", + "description": "Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id}/customConstraints/{custom_constraint_id}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 71 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id}/customConstraints/custom.` is not counted.", "type": "string" }, "resourceTypes": { @@ -1279,7 +1279,7 @@ "type": "object" }, "GoogleCloudOrgpolicyV2Policy": { - "description": "Defines an organization policy which is used to specify constraints for configurations of Google Cloud resources.", + "description": "Defines an organization policy that is used to specify constraints for configurations of Google Cloud resources.", "id": "GoogleCloudOrgpolicyV2Policy", "properties": { "alternate": { @@ -1292,11 +1292,11 @@ "description": "Dry-run policy. Audit-only policy, can be used to monitor how the policy would have impacted the existing and future resources if it's enforced." }, "etag": { - "description": "Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This 'etag' is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", + "description": "Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This entity tag (ETag) is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", "type": "string" }, "name": { - "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", + "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", "type": "string" }, "spec": { @@ -1307,15 +1307,15 @@ "type": "object" }, "GoogleCloudOrgpolicyV2PolicySpec": { - "description": "Defines a Google Cloud policy specification which is used to specify constraints for configurations of Google Cloud resources.", + "description": "Defines a Google Cloud policy specification that is used to specify constraints for configurations of Google Cloud resources.", "id": "GoogleCloudOrgpolicyV2PolicySpec", "properties": { "etag": { - "description": "An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy is returned from either a `GetPolicy` or a `ListPolicies` request, this `etag` indicates the version of the current policySpec to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the `etag` will be unset.", + "description": "An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy is returned from either a `GetPolicy` or a `ListPolicies` request, this entity tag (ETag) indicates the version of the current policySpec to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the ETag will be unset.", "type": "string" }, "inheritFromParent": { - "description": "Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies which configure list constraints.", + "description": "Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies that configure list constraints.", "type": "boolean" }, "reset": { @@ -1323,7 +1323,7 @@ "type": "boolean" }, "rules": { - "description": "In policies for boolean constraints, the following requirements apply: - There must be one and only one policy rule where condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence.", + "description": "In policies for boolean constraints, the following requirements apply: - There must be exactly one policy rule where a condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence.", "items": { "$ref": "GoogleCloudOrgpolicyV2PolicySpecPolicyRule" }, diff --git a/discovery/osconfig-v1.json b/discovery/osconfig-v1.json index ad03b31ee01..07924530678 100644 --- a/discovery/osconfig-v1.json +++ b/discovery/osconfig-v1.json @@ -420,134 +420,6 @@ } } }, - "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": "osconfig.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": "osconfig.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": "osconfig.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": "osconfig.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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1/{+name}/operations", - "response": { - "$ref": "ListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, "osPolicyAssignments": { "methods": { "create": { @@ -1211,7 +1083,7 @@ } } }, - "revision": "20260223", + "revision": "20260423", "rootUrl": "https://osconfig.googleapis.com/", "schemas": { "AptSettings": { @@ -1568,138 +1440,6 @@ "properties": {}, "type": "object" }, - "GoogleCloudOsconfigCommonV1__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1__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" - }, - "GoogleCloudOsconfigCommonV1alpha__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1alpha__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" - }, - "GoogleCloudOsconfigCommonV1main__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1main__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" - }, "GoogleCloudOsconfigV1__OSPolicyAssignmentOperationMetadata": { "description": "OS policy assignment operation metadata provided by OS policy assignment API methods that return long running operations.", "id": "GoogleCloudOsconfigV1__OSPolicyAssignmentOperationMetadata", @@ -2243,31 +1983,6 @@ }, "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" - }, - "unreachable": { - "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, "ListPatchDeploymentsResponse": { "description": "A response message for listing patch deployments.", "id": "ListPatchDeploymentsResponse", @@ -2933,7 +2648,7 @@ "id": "OSPolicyResourceFileResource", "properties": { "content": { - "description": "A a file with this content. The size of the content is limited to 32KiB.", + "description": "A file with this content. The size of the content is limited to 32KiB.", "type": "string" }, "file": { diff --git a/discovery/osconfig-v1alpha.json b/discovery/osconfig-v1alpha.json index b07e44d5564..bd33b2e15de 100644 --- a/discovery/osconfig-v1alpha.json +++ b/discovery/osconfig-v1alpha.json @@ -430,134 +430,6 @@ } } }, - "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": "osconfig.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": "osconfig.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": "osconfig.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": "osconfig.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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1alpha/{+name}/operations", - "response": { - "$ref": "ListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, "osPolicyAssignments": { "methods": { "create": { @@ -835,7 +707,7 @@ } } }, - "revision": "20260108", + "revision": "20260423", "rootUrl": "https://osconfig.googleapis.com/", "schemas": { "CVSSv3": { @@ -1035,138 +907,6 @@ }, "type": "object" }, - "GoogleCloudOsconfigCommonV1__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1__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" - }, - "GoogleCloudOsconfigCommonV1alpha__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1alpha__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" - }, - "GoogleCloudOsconfigCommonV1main__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1main__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" - }, "GoogleCloudOsconfigV1__OSPolicyAssignmentOperationMetadata": { "description": "OS policy assignment operation metadata provided by OS policy assignment API methods that return long running operations.", "id": "GoogleCloudOsconfigV1__OSPolicyAssignmentOperationMetadata", @@ -1838,31 +1578,6 @@ }, "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" - }, - "unreachable": { - "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, "ListVulnerabilityReportsResponse": { "description": "A response message for listing vulnerability reports for all VM instances in the specified location.", "id": "ListVulnerabilityReportsResponse", @@ -2579,7 +2294,7 @@ "id": "OSPolicyResourceFileResource", "properties": { "content": { - "description": "A a file with this content. The size of the content is limited to 32KiB.", + "description": "A file with this content. The size of the content is limited to 32KiB.", "type": "string" }, "file": { diff --git a/discovery/osconfig-v1beta.json b/discovery/osconfig-v1beta.json index f3e6fc68bba..e905f26f8db 100644 --- a/discovery/osconfig-v1beta.json +++ b/discovery/osconfig-v1beta.json @@ -689,7 +689,7 @@ } } }, - "revision": "20260223", + "revision": "20260423", "rootUrl": "https://osconfig.googleapis.com/", "schemas": { "AptRepository": { @@ -1075,138 +1075,6 @@ "properties": {}, "type": "object" }, - "GoogleCloudOsconfigCommonV1__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1__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" - }, - "GoogleCloudOsconfigCommonV1alpha__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1alpha__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" - }, - "GoogleCloudOsconfigCommonV1main__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1main__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" - }, "GoogleCloudOsconfigV1__OSPolicyAssignmentOperationMetadata": { "description": "OS policy assignment operation metadata provided by OS policy assignment API methods that return long running operations.", "id": "GoogleCloudOsconfigV1__OSPolicyAssignmentOperationMetadata", diff --git a/discovery/osconfig-v2.json b/discovery/osconfig-v2.json index 7049069fef7..12d9a3df3b4 100644 --- a/discovery/osconfig-v2.json +++ b/discovery/osconfig-v2.json @@ -267,7 +267,7 @@ ], "parameters": { "name": { - "description": "Immutable. Identifier. In form of * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", + "description": "Immutable. Identifier. In the following format: * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", "location": "path", "pattern": "^folders/[^/]+/locations/global/policyOrchestrators/[^/]+$", "required": true, @@ -589,7 +589,7 @@ ], "parameters": { "name": { - "description": "Immutable. Identifier. In form of * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", + "description": "Immutable. Identifier. In the following format: * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", "location": "path", "pattern": "^organizations/[^/]+/locations/global/policyOrchestrators/[^/]+$", "required": true, @@ -911,7 +911,7 @@ ], "parameters": { "name": { - "description": "Immutable. Identifier. In form of * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", + "description": "Immutable. Identifier. In the following format: * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", "location": "path", "pattern": "^projects/[^/]+/locations/global/policyOrchestrators/[^/]+$", "required": true, @@ -1072,7 +1072,7 @@ } } }, - "revision": "20260108", + "revision": "20260423", "rootUrl": "https://osconfig.googleapis.com/", "schemas": { "CancelOperationRequest": { @@ -1104,138 +1104,6 @@ }, "type": "object" }, - "GoogleCloudOsconfigCommonV1__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1__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" - }, - "GoogleCloudOsconfigCommonV1alpha__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1alpha__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" - }, - "GoogleCloudOsconfigCommonV1main__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1main__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" - }, "GoogleCloudOsconfigV1__OSPolicyAssignmentOperationMetadata": { "description": "OS policy assignment operation metadata provided by OS policy assignment API methods that return long running operations.", "id": "GoogleCloudOsconfigV1__OSPolicyAssignmentOperationMetadata", @@ -1525,7 +1393,7 @@ "type": "object" }, "GoogleCloudOsconfigV2__PolicyOrchestrator": { - "description": "PolicyOrchestrator helps managing project+zone level policy resources (e.g. OS Policy Assignments), by providing tools to create, update and delete them across projects and locations, at scale. Policy orchestrator functions as an endless loop. Each iteration orchestrator computes a set of resources that should be affected, then progressively applies changes to them. If for some reason this set of resources changes over time (e.g. new projects are added), the future loop iterations will address that. Orchestrator can either upsert or delete policy resources. For more details, see the description of the `action`, and `orchestrated_resource` fields. Note that policy orchestrator do not \"manage\" the resources it creates. Every iteration is independent and only minimal history of past actions is retained (apart from Cloud Logging). If orchestrator gets deleted, it does not affect the resources it created in the past. Those will remain where they were. Same applies if projects are removed from the orchestrator's scope.", + "description": "A policy orchestrator manages project-level and zone-level policy resources, such as OS policy assignments. It provides methods to create, update, and delete these resources across projects and locations at scale. The policy orchestrator operates as a continuous loop. In each iteration, the orchestrator identifies the set of resources to be modified and progressively applies changes. If the set of resources changes over time (for example, if you add new projects), subsequent iterations address those changes. The orchestrator can either upsert or delete policy resources. For more details, see the `action` and `orchestrated_resource` fields. The policy orchestrator does not manage the lifecycle of the resources it creates. Each iteration is independent and, besides Cloud Logging, the orchestrator retains only a minimal history of past actions. Deleting the orchestrator does not affect previously created resources; these resources remain in their current state. Similarly, removing projects from the orchestrator's scope does not affect existing resources.", "id": "GoogleCloudOsconfigV2__PolicyOrchestrator", "properties": { "action": { @@ -1555,7 +1423,7 @@ "type": "object" }, "name": { - "description": "Immutable. Identifier. In form of * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", + "description": "Immutable. Identifier. In the following format: * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", "type": "string" }, "orchestratedResource": { @@ -1572,7 +1440,7 @@ "readOnly": true }, "reconciling": { - "description": "Output only. Set to true, if the there are ongoing changes being applied by the orchestrator.", + "description": "Output only. Set to true, if there are ongoing changes being applied by the orchestrator.", "readOnly": true, "type": "boolean" }, @@ -2083,7 +1951,7 @@ "id": "OSPolicyResourceFileResource", "properties": { "content": { - "description": "A a file with this content. The size of the content is limited to 32KiB.", + "description": "A file with this content. The size of the content is limited to 32KiB.", "type": "string" }, "file": { diff --git a/discovery/osconfig-v2beta.json b/discovery/osconfig-v2beta.json index db98738ac1a..38c5db28082 100644 --- a/discovery/osconfig-v2beta.json +++ b/discovery/osconfig-v2beta.json @@ -267,7 +267,7 @@ ], "parameters": { "name": { - "description": "Immutable. Identifier. In form of * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", + "description": "Immutable. Identifier. In the following format: * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", "location": "path", "pattern": "^folders/[^/]+/locations/global/policyOrchestrators/[^/]+$", "required": true, @@ -589,7 +589,7 @@ ], "parameters": { "name": { - "description": "Immutable. Identifier. In form of * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", + "description": "Immutable. Identifier. In the following format: * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", "location": "path", "pattern": "^organizations/[^/]+/locations/global/policyOrchestrators/[^/]+$", "required": true, @@ -911,7 +911,7 @@ ], "parameters": { "name": { - "description": "Immutable. Identifier. In form of * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", + "description": "Immutable. Identifier. In the following format: * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", "location": "path", "pattern": "^projects/[^/]+/locations/global/policyOrchestrators/[^/]+$", "required": true, @@ -1072,7 +1072,7 @@ } } }, - "revision": "20260108", + "revision": "20260423", "rootUrl": "https://osconfig.googleapis.com/", "schemas": { "CancelOperationRequest": { @@ -1104,138 +1104,6 @@ }, "type": "object" }, - "GoogleCloudOsconfigCommonV1__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1__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" - }, - "GoogleCloudOsconfigCommonV1alpha__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1alpha__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" - }, - "GoogleCloudOsconfigCommonV1main__OperationMetadata": { - "description": "Represents the metadata of a generic long-running operation.", - "id": "GoogleCloudOsconfigCommonV1main__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" - }, "GoogleCloudOsconfigV1__OSPolicyAssignmentOperationMetadata": { "description": "OS policy assignment operation metadata provided by OS policy assignment API methods that return long running operations.", "id": "GoogleCloudOsconfigV1__OSPolicyAssignmentOperationMetadata", @@ -1569,7 +1437,7 @@ "type": "object" }, "GoogleCloudOsconfigV2beta__PolicyOrchestrator": { - "description": "PolicyOrchestrator helps managing project+zone level policy resources (e.g. OS Policy Assignments), by providing tools to create, update and delete them across projects and locations, at scale. Policy orchestrator functions as an endless loop. Each iteration orchestrator computes a set of resources that should be affected, then progressively applies changes to them. If for some reason this set of resources changes over time (e.g. new projects are added), the future loop iterations will address that. Orchestrator can either upsert or delete policy resources. For more details, see the description of the `action`, and `orchestrated_resource` fields. Note that policy orchestrator do not \"manage\" the resources it creates. Every iteration is independent and only minimal history of past actions is retained (apart from Cloud Logging). If orchestrator gets deleted, it does not affect the resources it created in the past. Those will remain where they were. Same applies if projects are removed from the orchestrator's scope.", + "description": "A policy orchestrator manages project-level and zone-level policy resources, such as OS policy assignments. It provides methods to create, update, and delete these resources across projects and locations at scale. The policy orchestrator operates as a continuous loop. In each iteration, the orchestrator identifies the set of resources to be modified and progressively applies changes. If the set of resources changes over time (for example, if you add new projects), subsequent iterations address those changes. The orchestrator can either upsert or delete policy resources. For more details, see the `action` and `orchestrated_resource` fields. The policy orchestrator does not manage the lifecycle of the resources it creates. Each iteration is independent and, besides Cloud Logging, the orchestrator retains only a minimal history of past actions. Deleting the orchestrator does not affect previously created resources; these resources remain in their current state. Similarly, removing projects from the orchestrator's scope does not affect existing resources.", "id": "GoogleCloudOsconfigV2beta__PolicyOrchestrator", "properties": { "action": { @@ -1599,7 +1467,7 @@ "type": "object" }, "name": { - "description": "Immutable. Identifier. In form of * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", + "description": "Immutable. Identifier. In the following format: * `organizations/{organization_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `folders/{folder_id}/locations/global/policyOrchestrators/{orchestrator_id}` * `projects/{project_id_or_number}/locations/global/policyOrchestrators/{orchestrator_id}`", "type": "string" }, "orchestratedResource": { @@ -1616,7 +1484,7 @@ "readOnly": true }, "reconciling": { - "description": "Output only. Set to true, if the there are ongoing changes being applied by the orchestrator.", + "description": "Output only. Set to true, if there are ongoing changes being applied by the orchestrator.", "readOnly": true, "type": "boolean" }, @@ -2083,7 +1951,7 @@ "id": "OSPolicyResourceFileResource", "properties": { "content": { - "description": "A a file with this content. The size of the content is limited to 32KiB.", + "description": "A file with this content. The size of the content is limited to 32KiB.", "type": "string" }, "file": { diff --git a/discovery/parametermanager-v1.json b/discovery/parametermanager-v1.json index ae934a88692..0320e20a56a 100644 --- a/discovery/parametermanager-v1.json +++ b/discovery/parametermanager-v1.json @@ -382,7 +382,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "parametermanager.projects.locations.list", @@ -391,7 +391,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -841,7 +841,7 @@ } } }, - "revision": "20260107", + "revision": "20260422", "rootUrl": "https://parametermanager.googleapis.com/", "schemas": { "Empty": { diff --git a/discovery/paymentsresellersubscription-v1.json b/discovery/paymentsresellersubscription-v1.json index 4939035d8e9..5b4c06c62d8 100644 --- a/discovery/paymentsresellersubscription-v1.json +++ b/discovery/paymentsresellersubscription-v1.json @@ -586,7 +586,7 @@ } } }, - "revision": "20260202", + "revision": "20260430", "rootUrl": "https://paymentsresellersubscription.googleapis.com/", "schemas": { "Amount": { @@ -1336,12 +1336,14 @@ "enum": [ "RESUME_MODE_UNSPECIFIED", "RESUME_MODE_CYCLE_OPTIONS", - "RESUME_MODE_RESTORE_EXISTING_BILLING_SCHEDULE" + "RESUME_MODE_RESTORE_EXISTING_BILLING_SCHEDULE", + "RESUME_MODE_IMMEDIATE_NEW_CYCLE" ], "enumDescriptions": [ "Reserved for invalid or unexpected value. Do not use.", "Resume the subscription using the input from `cycle_options`.", - "Resume the subscription with the existing billing schedule. The subscription's next renewal time must still be in the future for this mode to be applicable." + "Resume the subscription with the existing billing schedule. The subscription's next renewal time must still be in the future for this mode to be applicable.", + "Resume the subscription and start a new billing cycle immediately, resulting in a new charge." ], "type": "string" } @@ -1377,7 +1379,7 @@ "type": "object" }, "Subscription": { - "description": "A subscription serves as a central billing entity between an external partner and Google. The underlying Google services rely on the subscription state to grant or revoke the user's service entitlement. It's important to note that the subscription state may not always perfectly align with the user's service entitlement. For example, some Google services may continue providing access to the user until the current billing cycle ends, even if the subscription has been immediately canceled. However, other services may not do the same. To fully understand the specific details, please consult the relevant contract or product policy.", + "description": "Acts as a central billing entity between an external partner and Google. Google services use the subscription state to grant or revoke the user's service entitlement. Note: The subscription state might not perfectly align with the user's service entitlement. Some services might continue providing access until the current cycle ends, even if the subscription is immediately canceled. Consult the relevant contract or product policy for specific details.", "id": "Subscription", "properties": { "cancellationDetails": { @@ -1787,7 +1789,22 @@ "SuspendSubscriptionRequest": { "description": "Request to suspend a subscription.", "id": "SuspendSubscriptionRequest", - "properties": {}, + "properties": { + "suspendMode": { + "description": "Optional. The mode to suspend the subscription. It's required for partners to specify the suspend mode, whether suspend immediately and indefinitely, or cancel the subscription after grace_period_millis or auto_cancel_duration_millis if it's not resumed.", + "enum": [ + "SUSPEND_MODE_UNSPECIFIED", + "SUSPEND_MODE_CANCEL_AFTER_GRACE_PERIOD", + "SUSPEND_MODE_CANCEL_AFTER_RETENTION_PERIOD" + ], + "enumDescriptions": [ + "The default value. Suspend the subscription, and the subscription will stay suspended indefinitely.", + "Suspend the subscription, and the subscription will be auto cancelled after the grace period. Contract terms dictate how long the grace period is.", + "Suspend the subscription, and the subscription will be auto cancelled after the retention period. Contract terms dictate how long the retention period is." + ], + "type": "string" + } + }, "type": "object" }, "SuspendSubscriptionResponse": { @@ -1819,7 +1836,7 @@ "type": "object" }, "UserSession": { - "description": "A user session contains a short-lived token that includes information required to interact with Google Payments Reseller Platform using the following web endpoints. - A user session token should be generated dynamically for an authenticated user. You should refrain from sharing a token directly with a user in an unauthenticated context, such as SMS, or email. - You can re-generate new session tokens repeatedly for same `generate` request if necessary, regardless of the previous tokens being expired or not. You don't need to worry about multiple sessions resulting in duplicate fulfillments as guaranteed by the same subscription id. Please refer to the [Google Managed Signup](/payments/reseller/subscription/reference/index/User.Signup.Integration/Google.Managed.Signup) documentation for additional integration details.", + "description": "Contains a short-lived token containing information required to interact with the Google Payments Reseller Platform via web endpoints. - Generate a user session token dynamically for an authenticated user. Do not share a token directly with a user in an unauthenticated context, such as SMS or email. - You can regenerate new session tokens repeatedly for the same `generate` request if necessary, regardless of whether previous tokens have expired. Multiple sessions will not result in duplicate fulfillments because the `subscription ID` guarantees uniqueness. For more integration details, see the [Google Managed Signup](/payments/reseller/subscription/reference/index/User.Signup.Integration/Google.Managed.Signup) documentation.", "id": "UserSession", "properties": { "expireTime": { diff --git a/discovery/places-v1.json b/discovery/places-v1.json index a02a480b14e..dfbd99945e0 100644 --- a/discovery/places-v1.json +++ b/discovery/places-v1.json @@ -280,7 +280,7 @@ } } }, - "revision": "20260208", + "revision": "20260323", "rootUrl": "https://places.googleapis.com/", "schemas": { "GoogleGeoTypeViewport": { @@ -435,6 +435,10 @@ "description": "Request proto for AutocompletePlaces.", "id": "GoogleMapsPlacesV1AutocompletePlacesRequest", "properties": { + "includeFutureOpeningBusinesses": { + "description": "Optional. If true, include businesses that are not yet open but will open in the future.", + "type": "boolean" + }, "includePureServiceAreaBusinesses": { "description": "Optional. Include pure service area businesses if the field is set to true. Pure service area business is a business that visits or delivers to customers directly but does not serve customers at their business address. For example, businesses like cleaning services or plumbers. Those businesses do not have a physical address or location on Google Maps. Places will not return fields including `location`, `plus_code`, and other location related fields for these businesses.", "type": "boolean" @@ -1046,13 +1050,15 @@ "BUSINESS_STATUS_UNSPECIFIED", "OPERATIONAL", "CLOSED_TEMPORARILY", - "CLOSED_PERMANENTLY" + "CLOSED_PERMANENTLY", + "FUTURE_OPENING" ], "enumDescriptions": [ "Default value. This value is unused.", "The establishment is operational, not necessarily open now.", "The establishment is temporarily closed.", - "The establishment is permanently closed." + "The establishment is permanently closed.", + "The establishment will open in the future." ], "type": "string" }, @@ -1190,6 +1196,10 @@ "$ref": "GoogleMapsPlacesV1PlaceNeighborhoodSummary", "description": "A summary of points of interest near the place." }, + "openingDate": { + "$ref": "GoogleTypeDate", + "description": "The date this place will open in the future. This field is only populated if the business status is FUTURE_OPENING." + }, "outdoorSeating": { "description": "Place provides outdoor seating.", "type": "boolean" @@ -2052,6 +2062,10 @@ }, "type": "array" }, + "includeFutureOpeningBusinesses": { + "description": "Optional. If true, include businesses that are not yet open but will open in the future.", + "type": "boolean" + }, "includedPrimaryTypes": { "description": "Included primary Place type (e.g. \"restaurant\" or \"gas_station\") from https://developers.google.com/maps/documentation/places/web-service/place-types. A place can only have a single primary type from the supported types table associated with it. Up to 50 types from [Table A](https://developers.google.com/maps/documentation/places/web-service/place-types#table-a) may be specified. If there are any conflicting primary types, i.e. a type appears in both included_primary_types and excluded_primary_types, an INVALID_ARGUMENT error is returned. If a Place type is specified with multiple type restrictions, only places that satisfy all of the restrictions are returned. For example, if we have {included_types = [\"restaurant\"], excluded_primary_types = [\"restaurant\"]}, the returned places provide \"restaurant\" related services but do not operate primarily as \"restaurants\".", "items": { @@ -2144,6 +2158,10 @@ "$ref": "GoogleMapsPlacesV1SearchTextRequestEVOptions", "description": "Optional. Set the searchable EV options of a place search request." }, + "includeFutureOpeningBusinesses": { + "description": "Optional. If true, include businesses that are not yet open but will open in the future.", + "type": "boolean" + }, "includePureServiceAreaBusinesses": { "description": "Optional. Include pure service area businesses if the field is set to true. Pure service area business is a business that visits or delivers to customers directly but does not serve customers at their business address. For example, businesses like cleaning services or plumbers. Those businesses do not have a physical address or location on Google Maps. Places will not return fields including `location`, `plus_code`, and other location related fields for these businesses.", "type": "boolean" diff --git a/discovery/playdeveloperreporting-v1alpha1.json b/discovery/playdeveloperreporting-v1alpha1.json index 8effb5b6b59..4c2c56c043c 100644 --- a/discovery/playdeveloperreporting-v1alpha1.json +++ b/discovery/playdeveloperreporting-v1alpha1.json @@ -1004,60 +1004,9 @@ } } }, - "revision": "20260222", + "revision": "20260423", "rootUrl": "https://playdeveloperreporting.googleapis.com/", "schemas": { - "ApiservingMcpMcpToolDataHandlingProfile": { - "description": "Profile describing the data handling characteristics of an MCP tool. When used within the McpTool.meta field, this message should be packed into a google.protobuf.Any and associated with the key: \"google.com/tool.profiles/data_handling\"", - "id": "ApiservingMcpMcpToolDataHandlingProfile", - "properties": { - "inputDataAccessLevel": { - "description": "// The data access level of the tool's inputs.", - "enum": [ - "DATA_ACCESS_LEVEL_UNSPECIFIED", - "DATA_ACCESS_LEVEL_PUBLIC", - "DATA_ACCESS_LEVEL_CONFIDENTIAL", - "DATA_ACCESS_LEVEL_NEED_TO_KNOW", - "DATA_ACCESS_LEVEL_PII", - "DATA_ACCESS_LEVEL_USER", - "DATA_ACCESS_LEVEL_NO_DATA_ACCESS" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "Public data.", - "Confidential data.", - "Need-to-know data.", - "Personally Identifiable Information (PII) data.", - "User data.", - "The tool does not access any data." - ], - "type": "string" - }, - "outputDataAccessLevel": { - "description": "The data access level of the tool's outputs.", - "enum": [ - "DATA_ACCESS_LEVEL_UNSPECIFIED", - "DATA_ACCESS_LEVEL_PUBLIC", - "DATA_ACCESS_LEVEL_CONFIDENTIAL", - "DATA_ACCESS_LEVEL_NEED_TO_KNOW", - "DATA_ACCESS_LEVEL_PII", - "DATA_ACCESS_LEVEL_USER", - "DATA_ACCESS_LEVEL_NO_DATA_ACCESS" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "Public data.", - "Confidential data.", - "Need-to-know data.", - "Personally Identifiable Information (PII) data.", - "User data.", - "The tool does not access any data." - ], - "type": "string" - } - }, - "type": "object" - }, "GooglePlayDeveloperReportingV1alpha1Anomaly": { "description": "Represents an anomaly detected in a dataset. Our anomaly detection systems flag datapoints in a time series that fall outside of and expected range derived from historical data. Although those expected ranges have an upper and a lower bound, we only flag anomalies when the data has become unexpectedly _worse_, which usually corresponds to the case where the metric crosses the upper bound. Multiple contiguous datapoints in a timeline outside of the expected range will be grouped into a single anomaly. Therefore, an anomaly represents effectively a segment of a metric's timeline. The information stored in the `timeline_spec`, `dimensions` and `metric` can be used to fetch a full timeline with extended ragne for context. **Required permissions**: to access this resource, the calling user needs the _View app information (read-only)_ permission for the app.", "id": "GooglePlayDeveloperReportingV1alpha1Anomaly", diff --git a/discovery/playdeveloperreporting-v1beta1.json b/discovery/playdeveloperreporting-v1beta1.json index b7734ca4b4b..57dcc0e74f7 100644 --- a/discovery/playdeveloperreporting-v1beta1.json +++ b/discovery/playdeveloperreporting-v1beta1.json @@ -1004,60 +1004,9 @@ } } }, - "revision": "20260222", + "revision": "20260423", "rootUrl": "https://playdeveloperreporting.googleapis.com/", "schemas": { - "ApiservingMcpMcpToolDataHandlingProfile": { - "description": "Profile describing the data handling characteristics of an MCP tool. When used within the McpTool.meta field, this message should be packed into a google.protobuf.Any and associated with the key: \"google.com/tool.profiles/data_handling\"", - "id": "ApiservingMcpMcpToolDataHandlingProfile", - "properties": { - "inputDataAccessLevel": { - "description": "// The data access level of the tool's inputs.", - "enum": [ - "DATA_ACCESS_LEVEL_UNSPECIFIED", - "DATA_ACCESS_LEVEL_PUBLIC", - "DATA_ACCESS_LEVEL_CONFIDENTIAL", - "DATA_ACCESS_LEVEL_NEED_TO_KNOW", - "DATA_ACCESS_LEVEL_PII", - "DATA_ACCESS_LEVEL_USER", - "DATA_ACCESS_LEVEL_NO_DATA_ACCESS" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "Public data.", - "Confidential data.", - "Need-to-know data.", - "Personally Identifiable Information (PII) data.", - "User data.", - "The tool does not access any data." - ], - "type": "string" - }, - "outputDataAccessLevel": { - "description": "The data access level of the tool's outputs.", - "enum": [ - "DATA_ACCESS_LEVEL_UNSPECIFIED", - "DATA_ACCESS_LEVEL_PUBLIC", - "DATA_ACCESS_LEVEL_CONFIDENTIAL", - "DATA_ACCESS_LEVEL_NEED_TO_KNOW", - "DATA_ACCESS_LEVEL_PII", - "DATA_ACCESS_LEVEL_USER", - "DATA_ACCESS_LEVEL_NO_DATA_ACCESS" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "Public data.", - "Confidential data.", - "Need-to-know data.", - "Personally Identifiable Information (PII) data.", - "User data.", - "The tool does not access any data." - ], - "type": "string" - } - }, - "type": "object" - }, "GooglePlayDeveloperReportingV1beta1Anomaly": { "description": "Represents an anomaly detected in a dataset. Our anomaly detection systems flag datapoints in a time series that fall outside of and expected range derived from historical data. Although those expected ranges have an upper and a lower bound, we only flag anomalies when the data has become unexpectedly _worse_, which usually corresponds to the case where the metric crosses the upper bound. Multiple contiguous datapoints in a timeline outside of the expected range will be grouped into a single anomaly. Therefore, an anomaly represents effectively a segment of a metric's timeline. The information stored in the `timeline_spec`, `dimensions` and `metric` can be used to fetch a full timeline with extended ragne for context. **Required permissions**: to access this resource, the calling user needs the _View app information (read-only)_ permission for the app.", "id": "GooglePlayDeveloperReportingV1beta1Anomaly", diff --git a/discovery/policysimulator-v1.json b/discovery/policysimulator-v1.json index 605246c7180..e2919611e79 100644 --- a/discovery/policysimulator-v1.json +++ b/discovery/policysimulator-v1.json @@ -1061,7 +1061,7 @@ } } }, - "revision": "20251127", + "revision": "20260423", "rootUrl": "https://policysimulator.googleapis.com/", "schemas": { "GoogleCloudOrgpolicyV2AlternatePolicySpec": { @@ -1069,7 +1069,7 @@ "id": "GoogleCloudOrgpolicyV2AlternatePolicySpec", "properties": { "launch": { - "description": "Reference to the launch that will be used while audit logging and to control the launch. Should be set only in the alternate policy.", + "description": "Reference to the launch that will be used while audit logging and to control the launch. Set only in the alternate policy.", "type": "string" }, "spec": { @@ -1091,7 +1091,7 @@ "DENY" ], "enumDescriptions": [ - "This is only used for distinguishing unset values and should never be used. Results in an error.", + "This is only used for distinguishing unset values, and results in an error if used.", "Allowed action type.", "Deny action type." ], @@ -1121,10 +1121,10 @@ "GOVERN_TAGS" ], "enumDescriptions": [ - "This is only used for distinguishing unset values and should never be used. Results in an error.", + "This is only used for distinguishing unset values, and results in an error if used.", "Constraint applied when creating the resource.", "Constraint applied when updating the resource.", - "Constraint applied when deleting the resource. Not currently supported.", + "Constraint applied when deleting the resource. Not supported.", "Constraint applied when removing an IAM grant.", "Constraint applied when enforcing forced tagging." ], @@ -1133,7 +1133,7 @@ "type": "array" }, "name": { - "description": "Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id}/customConstraints/{custom_constraint_id}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 70 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id}/customConstraints/` is not counted.", + "description": "Immutable. Name of the constraint. This is unique within the organization. The name must be of the form: * `organizations/{organization_id}/customConstraints/{custom_constraint_id}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 71 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id}/customConstraints/custom.` is not counted.", "type": "string" }, "resourceTypes": { @@ -1153,7 +1153,7 @@ "type": "object" }, "GoogleCloudOrgpolicyV2Policy": { - "description": "Defines an organization policy which is used to specify constraints for configurations of Google Cloud resources.", + "description": "Defines an organization policy that is used to specify constraints for configurations of Google Cloud resources.", "id": "GoogleCloudOrgpolicyV2Policy", "properties": { "alternate": { @@ -1166,11 +1166,11 @@ "description": "Dry-run policy. Audit-only policy, can be used to monitor how the policy would have impacted the existing and future resources if it's enforced." }, "etag": { - "description": "Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This 'etag' is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", + "description": "Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This entity tag (ETag) is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", "type": "string" }, "name": { - "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", + "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", "type": "string" }, "spec": { @@ -1181,15 +1181,15 @@ "type": "object" }, "GoogleCloudOrgpolicyV2PolicySpec": { - "description": "Defines a Google Cloud policy specification which is used to specify constraints for configurations of Google Cloud resources.", + "description": "Defines a Google Cloud policy specification that is used to specify constraints for configurations of Google Cloud resources.", "id": "GoogleCloudOrgpolicyV2PolicySpec", "properties": { "etag": { - "description": "An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy is returned from either a `GetPolicy` or a `ListPolicies` request, this `etag` indicates the version of the current policySpec to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the `etag` will be unset.", + "description": "An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy is returned from either a `GetPolicy` or a `ListPolicies` request, this entity tag (ETag) indicates the version of the current policySpec to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the ETag will be unset.", "type": "string" }, "inheritFromParent": { - "description": "Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies which configure list constraints.", + "description": "Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies that configure list constraints.", "type": "boolean" }, "reset": { @@ -1197,7 +1197,7 @@ "type": "boolean" }, "rules": { - "description": "In policies for boolean constraints, the following requirements apply: - There must be one and only one policy rule where condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence.", + "description": "In policies for boolean constraints, the following requirements apply: - There must be exactly one policy rule where a condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence.", "items": { "$ref": "GoogleCloudOrgpolicyV2PolicySpecPolicyRule" }, diff --git a/discovery/policysimulator-v1alpha.json b/discovery/policysimulator-v1alpha.json index 444572e7374..6bebb00e8a4 100644 --- a/discovery/policysimulator-v1alpha.json +++ b/discovery/policysimulator-v1alpha.json @@ -640,7 +640,7 @@ } } }, - "revision": "20251127", + "revision": "20260423", "rootUrl": "https://policysimulator.googleapis.com/", "schemas": { "GoogleCloudOrgpolicyV2AlternatePolicySpec": { @@ -648,7 +648,7 @@ "id": "GoogleCloudOrgpolicyV2AlternatePolicySpec", "properties": { "launch": { - "description": "Reference to the launch that will be used while audit logging and to control the launch. Should be set only in the alternate policy.", + "description": "Reference to the launch that will be used while audit logging and to control the launch. Set only in the alternate policy.", "type": "string" }, "spec": { @@ -670,7 +670,7 @@ "DENY" ], "enumDescriptions": [ - "This is only used for distinguishing unset values and should never be used. Results in an error.", + "This is only used for distinguishing unset values, and results in an error if used.", "Allowed action type.", "Deny action type." ], @@ -700,10 +700,10 @@ "GOVERN_TAGS" ], "enumDescriptions": [ - "This is only used for distinguishing unset values and should never be used. Results in an error.", + "This is only used for distinguishing unset values, and results in an error if used.", "Constraint applied when creating the resource.", "Constraint applied when updating the resource.", - "Constraint applied when deleting the resource. Not currently supported.", + "Constraint applied when deleting the resource. Not supported.", "Constraint applied when removing an IAM grant.", "Constraint applied when enforcing forced tagging." ], @@ -712,7 +712,7 @@ "type": "array" }, "name": { - "description": "Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id}/customConstraints/{custom_constraint_id}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 70 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id}/customConstraints/` is not counted.", + "description": "Immutable. Name of the constraint. This is unique within the organization. The name must be of the form: * `organizations/{organization_id}/customConstraints/{custom_constraint_id}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 71 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id}/customConstraints/custom.` is not counted.", "type": "string" }, "resourceTypes": { @@ -732,7 +732,7 @@ "type": "object" }, "GoogleCloudOrgpolicyV2Policy": { - "description": "Defines an organization policy which is used to specify constraints for configurations of Google Cloud resources.", + "description": "Defines an organization policy that is used to specify constraints for configurations of Google Cloud resources.", "id": "GoogleCloudOrgpolicyV2Policy", "properties": { "alternate": { @@ -745,11 +745,11 @@ "description": "Dry-run policy. Audit-only policy, can be used to monitor how the policy would have impacted the existing and future resources if it's enforced." }, "etag": { - "description": "Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This 'etag' is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", + "description": "Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This entity tag (ETag) is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", "type": "string" }, "name": { - "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", + "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", "type": "string" }, "spec": { @@ -760,15 +760,15 @@ "type": "object" }, "GoogleCloudOrgpolicyV2PolicySpec": { - "description": "Defines a Google Cloud policy specification which is used to specify constraints for configurations of Google Cloud resources.", + "description": "Defines a Google Cloud policy specification that is used to specify constraints for configurations of Google Cloud resources.", "id": "GoogleCloudOrgpolicyV2PolicySpec", "properties": { "etag": { - "description": "An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy is returned from either a `GetPolicy` or a `ListPolicies` request, this `etag` indicates the version of the current policySpec to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the `etag` will be unset.", + "description": "An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy is returned from either a `GetPolicy` or a `ListPolicies` request, this entity tag (ETag) indicates the version of the current policySpec to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the ETag will be unset.", "type": "string" }, "inheritFromParent": { - "description": "Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies which configure list constraints.", + "description": "Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies that configure list constraints.", "type": "boolean" }, "reset": { @@ -776,7 +776,7 @@ "type": "boolean" }, "rules": { - "description": "In policies for boolean constraints, the following requirements apply: - There must be one and only one policy rule where condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence.", + "description": "In policies for boolean constraints, the following requirements apply: - There must be exactly one policy rule where a condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence.", "items": { "$ref": "GoogleCloudOrgpolicyV2PolicySpecPolicyRule" }, diff --git a/discovery/policysimulator-v1beta.json b/discovery/policysimulator-v1beta.json index d28c9fb59da..f06ed1ac782 100644 --- a/discovery/policysimulator-v1beta.json +++ b/discovery/policysimulator-v1beta.json @@ -1197,7 +1197,7 @@ } } }, - "revision": "20251127", + "revision": "20260423", "rootUrl": "https://policysimulator.googleapis.com/", "schemas": { "GoogleCloudOrgpolicyV2AlternatePolicySpec": { @@ -1205,7 +1205,7 @@ "id": "GoogleCloudOrgpolicyV2AlternatePolicySpec", "properties": { "launch": { - "description": "Reference to the launch that will be used while audit logging and to control the launch. Should be set only in the alternate policy.", + "description": "Reference to the launch that will be used while audit logging and to control the launch. Set only in the alternate policy.", "type": "string" }, "spec": { @@ -1227,7 +1227,7 @@ "DENY" ], "enumDescriptions": [ - "This is only used for distinguishing unset values and should never be used. Results in an error.", + "This is only used for distinguishing unset values, and results in an error if used.", "Allowed action type.", "Deny action type." ], @@ -1257,10 +1257,10 @@ "GOVERN_TAGS" ], "enumDescriptions": [ - "This is only used for distinguishing unset values and should never be used. Results in an error.", + "This is only used for distinguishing unset values, and results in an error if used.", "Constraint applied when creating the resource.", "Constraint applied when updating the resource.", - "Constraint applied when deleting the resource. Not currently supported.", + "Constraint applied when deleting the resource. Not supported.", "Constraint applied when removing an IAM grant.", "Constraint applied when enforcing forced tagging." ], @@ -1269,7 +1269,7 @@ "type": "array" }, "name": { - "description": "Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id}/customConstraints/{custom_constraint_id}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 70 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id}/customConstraints/` is not counted.", + "description": "Immutable. Name of the constraint. This is unique within the organization. The name must be of the form: * `organizations/{organization_id}/customConstraints/{custom_constraint_id}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 71 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id}/customConstraints/custom.` is not counted.", "type": "string" }, "resourceTypes": { @@ -1289,7 +1289,7 @@ "type": "object" }, "GoogleCloudOrgpolicyV2Policy": { - "description": "Defines an organization policy which is used to specify constraints for configurations of Google Cloud resources.", + "description": "Defines an organization policy that is used to specify constraints for configurations of Google Cloud resources.", "id": "GoogleCloudOrgpolicyV2Policy", "properties": { "alternate": { @@ -1302,11 +1302,11 @@ "description": "Dry-run policy. Audit-only policy, can be used to monitor how the policy would have impacted the existing and future resources if it's enforced." }, "etag": { - "description": "Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This 'etag' is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", + "description": "Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This entity tag (ETag) is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", "type": "string" }, "name": { - "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", + "description": "Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number}/policies/{constraint_name}` * `folders/{folder_id}/policies/{constraint_name}` * `organizations/{organization_id}/policies/{constraint_name}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id}/policies/{constraint_name}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number.", "type": "string" }, "spec": { @@ -1317,15 +1317,15 @@ "type": "object" }, "GoogleCloudOrgpolicyV2PolicySpec": { - "description": "Defines a Google Cloud policy specification which is used to specify constraints for configurations of Google Cloud resources.", + "description": "Defines a Google Cloud policy specification that is used to specify constraints for configurations of Google Cloud resources.", "id": "GoogleCloudOrgpolicyV2PolicySpec", "properties": { "etag": { - "description": "An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy is returned from either a `GetPolicy` or a `ListPolicies` request, this `etag` indicates the version of the current policySpec to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the `etag` will be unset.", + "description": "An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy is returned from either a `GetPolicy` or a `ListPolicies` request, this entity tag (ETag) indicates the version of the current policySpec to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the ETag will be unset.", "type": "string" }, "inheritFromParent": { - "description": "Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies which configure list constraints.", + "description": "Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies that configure list constraints.", "type": "boolean" }, "reset": { @@ -1333,7 +1333,7 @@ "type": "boolean" }, "rules": { - "description": "In policies for boolean constraints, the following requirements apply: - There must be one and only one policy rule where condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence.", + "description": "In policies for boolean constraints, the following requirements apply: - There must be exactly one policy rule where a condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence.", "items": { "$ref": "GoogleCloudOrgpolicyV2PolicySpecPolicyRule" }, diff --git a/discovery/policytroubleshooter-v3beta.json b/discovery/policytroubleshooter-v3beta.json index bedcc094b71..0ed3aed1b12 100644 --- a/discovery/policytroubleshooter-v3beta.json +++ b/discovery/policytroubleshooter-v3beta.json @@ -128,7 +128,7 @@ } } }, - "revision": "20260111", + "revision": "20260503", "rootUrl": "https://policytroubleshooter.googleapis.com/", "schemas": { "GoogleCloudPolicytroubleshooterIamV3betaAccessTuple": { @@ -1493,7 +1493,7 @@ }, "condition": { "$ref": "GoogleTypeExpr", - "description": "Optional. The condition to apply to the policy binding. When set, the `expression` field in the `Expr` must include from 1 to 10 subexpressions, joined by the \"||\"(Logical OR), \"&&\"(Logical AND) or \"!\"(Logical NOT) operators and cannot contain more than 250 characters. The condition is currently only supported when bound to policies of kind principal access boundary. When the bound policy is a principal access boundary policy, the only supported attributes in any subexpression are `principal.type` and `principal.subject`. An example expression is: \"principal.type == 'iam.googleapis.com/ServiceAccount'\" or \"principal.subject == 'bob@example.com'\". Allowed operations for `principal.subject`: - `principal.subject == ` - `principal.subject != ` - `principal.subject in []` - `principal.subject.startsWith()` - `principal.subject.endsWith()` Allowed operations for `principal.type`: - `principal.type == ` - `principal.type != ` - `principal.type in []` Supported principal types are Workspace, Workforce Pool, Workload Pool and Service Account. Allowed string must be one of: - iam.googleapis.com/WorkspaceIdentity - iam.googleapis.com/WorkforcePoolIdentity - iam.googleapis.com/WorkloadPoolIdentity - iam.googleapis.com/ServiceAccount" + "description": "Optional. The condition to apply to the policy binding. When set, the `expression` field in the `Expr` must include from 1 to 10 subexpressions, joined by the \"||\"(Logical OR), \"&&\"(Logical AND) or \"!\"(Logical NOT) operators and cannot contain more than 250 characters. The condition is currently only supported when bound to policies of kind principal access boundary. When the bound policy is a principal access boundary policy, the only supported attributes in any subexpression are `principal.type` and `principal.subject`. An example expression is: \"principal.type == 'iam.googleapis.com/ServiceAccount'\" or \"principal.subject == 'bob@example.com'\". Allowed operations for `principal.subject`: - `principal.subject == ` - `principal.subject != ` - `principal.subject in []` - `principal.subject.startsWith()` - `principal.subject.endsWith()` Allowed operations for `principal.type`: - `principal.type == ` - `principal.type != ` - `principal.type in []` Supported principal types are workspace, workforce pool, workload pool, service account, and agent identity. Allowed string must be one of: - `iam.googleapis.com/WorkspaceIdentity` - `iam.googleapis.com/WorkforcePoolIdentity` - `iam.googleapis.com/WorkloadPoolIdentity` - `iam.googleapis.com/ServiceAccount` - `iam.googleapis.com/AgentPoolIdentity` (available in Preview)" }, "createTime": { "description": "Output only. The time when the policy binding was created.", @@ -1654,6 +1654,10 @@ ], "type": "string" }, + "operation": { + "$ref": "GoogleIamV3PrincipalAccessBoundaryPolicyRuleOperation", + "description": "Optional. The operation attributes that determine whether this rule applies to a request. If this field is not specified, the rule applies to all operations." + }, "resources": { "description": "Required. A list of Resource Manager resources. If a resource is listed in the rule, then the rule applies for that resource and its descendants. The number of resources in a policy is limited to 500 across all rules in the policy. The following resource types are supported: * Organizations, such as `//cloudresourcemanager.googleapis.com/organizations/123`. * Folders, such as `//cloudresourcemanager.googleapis.com/folders/123`. * Projects, such as `//cloudresourcemanager.googleapis.com/projects/123` or `//cloudresourcemanager.googleapis.com/projects/my-project-id`.", "items": { @@ -1664,6 +1668,27 @@ }, "type": "object" }, + "GoogleIamV3PrincipalAccessBoundaryPolicyRuleOperation": { + "description": "An operation attribute that defines the permissions applicable to this rule.", + "id": "GoogleIamV3PrincipalAccessBoundaryPolicyRuleOperation", + "properties": { + "excludedPermissions": { + "description": "Optional. Specifies the permissions that this rule excludes from the set of affected permissions given by `permissions`. The number of excluded permission strings in this field is limited to 50. If a permission appears in both `permissions` and `excluded_permissions` then it will _not_ be subject to the policy effect. The excluded permissions can be specified using the same syntax as `permissions`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { + "description": "Optional. The permissions that are explicitly affected by this rule. The number of permission strings in this field is limited to 50. Each permission uses the format `{service_fqdn}/{resource}.{verb}`, where `{service_fqdn}` is the fully qualified domain name for the service. `*` can be used as a wildcard to match all permissions for a specific service, resource type, or verb. The following formats are supported: * `{service_fqdn}/{resource}.{verb}`: A specific permission. * `{service_fqdn}/{resource}.*`: All permissions for a specific resource type. * `{service_fqdn}/*.*`: All permissions for all resource types under a specific service. * `{service_fqdn}/*.{verb}`: All permissions with a specific verb under a specific service. * `*`: All permissions across all services. For example, `compute.googleapis.com/*.setIamPolicy` refers to all setIamPolicy permissions for any compute resource. Wildcards expand only to the permissions specified in the `enforcement_version` of the policy. If the `enforcement_version` is updated, the wildcard will automatically expand to include new permissions in the updated version.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleRpcStatus": { "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": "GoogleRpcStatus", diff --git a/discovery/privateca-v1.json b/discovery/privateca-v1.json index 92cfe891059..2031ac470fd 100644 --- a/discovery/privateca-v1.json +++ b/discovery/privateca-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "privateca.projects.locations.list", @@ -1616,7 +1616,7 @@ } } }, - "revision": "20260128", + "revision": "20260318", "rootUrl": "https://privateca.googleapis.com/", "schemas": { "AccessUrls": { diff --git a/discovery/privateca-v1beta1.json b/discovery/privateca-v1beta1.json index 12be21013f9..83c6059102d 100644 --- a/discovery/privateca-v1beta1.json +++ b/discovery/privateca-v1beta1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "privateca.projects.locations.list", @@ -591,7 +591,7 @@ } } }, - "revision": "20260128", + "revision": "20260318", "rootUrl": "https://privateca.googleapis.com/", "schemas": { "AuditConfig": { diff --git a/discovery/pubsub-v1.json b/discovery/pubsub-v1.json index b65ef00297e..a50c3e22d64 100644 --- a/discovery/pubsub-v1.json +++ b/discovery/pubsub-v1.json @@ -1798,7 +1798,7 @@ } } }, - "revision": "20260116", + "revision": "20260421", "rootUrl": "https://pubsub.googleapis.com/", "schemas": { "AIInference": { @@ -1810,7 +1810,7 @@ "type": "string" }, "serviceAccountEmail": { - "description": "Optional. The service account to use to make prediction requests against endpoints. The resource creator or updater that specifies this field must have `iam.serviceAccounts.actAs` permission on the service account. If not specified, the Pub/Sub [service agent]({$universe.dns_names.final_documentation_domain}/iam/docs/service-agents), service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.", + "description": "Optional. The service account to use to make prediction requests against endpoints. The resource creator or updater that specifies this field must have `iam.serviceAccounts.actAs` permission on the service account. If not specified, the Pub/Sub [service agent](https://cloud.google.com/iam/docs/service-agents), service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.", "type": "string" }, "unstructuredInference": { @@ -1894,7 +1894,8 @@ "KINESIS_PERMISSION_DENIED", "PUBLISH_PERMISSION_DENIED", "STREAM_NOT_FOUND", - "CONSUMER_NOT_FOUND" + "CONSUMER_NOT_FOUND", + "CONFLICTING_REGION_CONSTRAINTS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -1902,7 +1903,8 @@ "Permission denied encountered while consuming data from Kinesis. This can happen if: - The provided `aws_role_arn` does not exist or does not have the appropriate permissions attached. - The provided `aws_role_arn` is not set up properly for Identity Federation using `gcp_service_account`. - The Pub/Sub SA is not granted the `iam.serviceAccounts.getOpenIdToken` permission on `gcp_service_account`.", "Permission denied encountered while publishing to the topic. This can happen if the Pub/Sub SA has not been granted the [appropriate publish permissions](https://cloud.google.com/pubsub/docs/access-control#pubsub.publisher)", "The Kinesis stream does not exist.", - "The Kinesis consumer does not exist." + "The Kinesis consumer does not exist.", + "Indicates an error state where the ingestion source cannot be processed because the selected ingestion region is not permitted by the Regional Access Boundary (RAB) restrictions on the project's service account." ], "readOnly": true, "type": "string" @@ -1938,7 +1940,8 @@ "MSK_PERMISSION_DENIED", "PUBLISH_PERMISSION_DENIED", "CLUSTER_NOT_FOUND", - "TOPIC_NOT_FOUND" + "TOPIC_NOT_FOUND", + "CONFLICTING_REGION_CONSTRAINTS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -1946,7 +1949,8 @@ "Permission denied encountered while consuming data from Amazon MSK.", "Permission denied encountered while publishing to the topic.", "The provided MSK cluster wasn't found.", - "The provided topic wasn't found." + "The provided topic wasn't found.", + "Indicates an error state where the ingestion source cannot be processed because the selected ingestion region is not permitted by the Regional Access Boundary (RAB) restrictions on the project's service account." ], "readOnly": true, "type": "string" @@ -1992,7 +1996,8 @@ "NAMESPACE_NOT_FOUND", "EVENT_HUB_NOT_FOUND", "SUBSCRIPTION_NOT_FOUND", - "RESOURCE_GROUP_NOT_FOUND" + "RESOURCE_GROUP_NOT_FOUND", + "CONFLICTING_REGION_CONSTRAINTS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -2002,7 +2007,8 @@ "The provided Event Hubs namespace couldn't be found.", "The provided Event Hub couldn't be found.", "The provided Event Hubs subscription couldn't be found.", - "The provided Event Hubs resource group couldn't be found." + "The provided Event Hubs resource group couldn't be found.", + "Indicates an error state where the ingestion source cannot be processed because the selected ingestion region is not permitted by the Regional Access Boundary (RAB) restrictions on the project's service account." ], "readOnly": true, "type": "string" @@ -2072,6 +2078,54 @@ }, "type": "object" }, + "BigtableConfig": { + "description": "Configuration for a Bigtable subscription. The Pub/Sub message will be written to a Bigtable row as follows: - row key: subscription name and message ID delimited by #. - columns: message bytes written to a single column family \"data\" with an empty-string column qualifier. - cell timestamp: the message publish timestamp.", + "id": "BigtableConfig", + "properties": { + "appProfileId": { + "description": "Optional. The app profile to use for the Bigtable writes. If not specified, the \"default\" application profile will be used. The app profile must use single-cluster routing.", + "type": "string" + }, + "serviceAccountEmail": { + "description": "Optional. The service account to use to write to Bigtable. The subscription creator or updater that specifies this field must have `iam.serviceAccounts.actAs` permission on the service account. If not specified, the Pub/Sub [service agent](https://cloud.google.com/iam/docs/service-agents), service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.", + "type": "string" + }, + "state": { + "description": "Output only. An output-only field that indicates whether or not the subscription can receive messages.", + "enum": [ + "STATE_UNSPECIFIED", + "ACTIVE", + "NOT_FOUND", + "APP_PROFILE_MISCONFIGURED", + "PERMISSION_DENIED", + "SCHEMA_MISMATCH", + "IN_TRANSIT_LOCATION_RESTRICTION", + "VERTEX_AI_LOCATION_RESTRICTION" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "The subscription can actively send messages to Bigtable.", + "Unused in the current implementation. Placeholder for future use.", + "Unused in the current implementation. Placeholder for future use.", + "Cannot write to Bigtable because of permission denied errors. This can happen if: - The Bigtable instance, table, or app profile does not exist. - The Pub/Sub service agent has not been granted the [appropriate Bigtable IAM permission bigtable.tables.mutateRows]({$universe.dns_names.final_documentation_domain}/bigtable/docs/access-control#permissions) - The bigtable.googleapis.com API is not enabled for the project ([instructions]({$universe.dns_names.final_documentation_domain}/service-usage/docs/enable-disable))", + "Cannot write to Bigtable because of a missing column family (\"data\"), or if there is no structured row key for the subscription name + message ID, if because the app profile is not configured for single-cluster routing.", + "Cannot write to the destination because enforce_in_transit is set to true and the destination locations are not in the allowed regions.", + "Cannot write to Bigtable because the table is not in the same location as where Vertex AI models used in `message_transform`s are deployed." + ], + "readOnly": true, + "type": "string" + }, + "table": { + "description": "Optional. The unique name of the table to write messages to. Values are of the form `projects//instances//tables/`.", + "type": "string" + }, + "writeMetadata": { + "description": "Optional. When true, write the subscription name, message_id, publish_time, attributes, and ordering_key to additional columns in the table under the pubsub_metadata column family. The subscription name, message_id, and publish_time fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column.", + "type": "boolean" + } + }, + "type": "object" + }, "Binding": { "description": "Associates `members`, or principals, with a `role`.", "id": "Binding", @@ -2127,7 +2181,8 @@ "CLOUD_STORAGE_PERMISSION_DENIED", "PUBLISH_PERMISSION_DENIED", "BUCKET_NOT_FOUND", - "TOO_MANY_OBJECTS" + "TOO_MANY_OBJECTS", + "CONFLICTING_REGION_CONSTRAINTS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -2135,7 +2190,8 @@ "Permission denied encountered while calling the Cloud Storage API. This can happen if the Pub/Sub SA has not been granted the [appropriate permissions](https://cloud.google.com/storage/docs/access-control/iam-permissions): - storage.objects.list: to list the objects in a bucket. - storage.objects.get: to read the objects in a bucket. - storage.buckets.get: to verify the bucket exists.", "Permission denied encountered while publishing to the topic. This can happen if the Pub/Sub SA has not been granted the [appropriate publish permissions](https://cloud.google.com/pubsub/docs/access-control#pubsub.publisher)", "The provided Cloud Storage bucket doesn't exist.", - "The Cloud Storage bucket has too many objects, ingestion will be paused." + "The Cloud Storage bucket has too many objects, ingestion will be paused.", + "Indicates an error state where the ingestion source cannot be processed because the selected ingestion region is not permitted by the Regional Access Boundary (RAB) restrictions on the project's service account." ], "readOnly": true, "type": "string" @@ -2260,7 +2316,8 @@ "PUBLISH_PERMISSION_DENIED", "UNREACHABLE_BOOTSTRAP_SERVER", "CLUSTER_NOT_FOUND", - "TOPIC_NOT_FOUND" + "TOPIC_NOT_FOUND", + "CONFLICTING_REGION_CONSTRAINTS" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -2269,7 +2326,8 @@ "Permission denied encountered while publishing to the topic.", "The provided bootstrap server address is unreachable.", "The provided cluster wasn't found.", - "The provided topic wasn't found." + "The provided topic wasn't found.", + "Indicates an error state where the ingestion source cannot be processed because the selected ingestion region is not permitted by the Regional Access Boundary (RAB) restrictions on the project's service account." ], "readOnly": true, "type": "string" @@ -2300,7 +2358,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: \"123/environment\": \"production\", \"123/costCenter\": \"marketing\"", + "description": "Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: \"123/environment\": \"production\", \"123/costCenter\": \"marketing\" See https://{$universe.dns_names.final_documentation_domain}/pubsub/docs/tags for more information on using tags with Pub/Sub resources.", "type": "object" } }, @@ -3005,7 +3063,7 @@ "type": "object" }, "Subscription": { - "description": "A subscription resource. If none of `push_config`, `bigquery_config`, or `cloud_storage_config` is set, then the subscriber will pull and ack messages using API methods. At most one of these fields may be set.", + "description": "A subscription resource. If none of `push_config`, `bigquery_config`, `cloud_storage_config`, or `bigtable_config` is set, then the subscriber will pull and ack messages using API methods. At most one of these fields may be set.", "id": "Subscription", "properties": { "ackDeadlineSeconds": { @@ -3022,6 +3080,10 @@ "$ref": "BigQueryConfig", "description": "Optional. If delivery to BigQuery is used with this subscription, this field is used to configure it." }, + "bigtableConfig": { + "$ref": "BigtableConfig", + "description": "Optional. If delivery to Bigtable is used with this subscription, this field is used to configure it." + }, "cloudStorageConfig": { "$ref": "CloudStorageConfig", "description": "Optional. If delivery to Google Cloud Storage is used with this subscription, this field is used to configure it." @@ -3104,7 +3166,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: \"123/environment\": \"production\", \"123/costCenter\": \"marketing\"", + "description": "Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: \"123/environment\": \"production\", \"123/costCenter\": \"marketing\" See https://{$universe.dns_names.final_documentation_domain}/pubsub/docs/tags for more information on using tags with Pub/Sub resources.", "type": "object" }, "topic": { @@ -3231,7 +3293,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: \"123/environment\": \"production\", \"123/costCenter\": \"marketing\"", + "description": "Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: \"123/environment\": \"production\", \"123/costCenter\": \"marketing\" See https://{$universe.dns_names.final_documentation_domain}/pubsub/docs/tags for more information on using tags with Pub/Sub resources.", "type": "object" } }, diff --git a/discovery/realtimebidding-v1.json b/discovery/realtimebidding-v1.json index 40228b75f67..aa6b760bec1 100644 --- a/discovery/realtimebidding-v1.json +++ b/discovery/realtimebidding-v1.json @@ -586,7 +586,7 @@ ], "parameters": { "name": { - "description": "Output only. Name of the pretargeting configuration that must follow the pattern `bidders/{bidder_account_id}/pretargetingConfigs/{config_id}`", + "description": "Output only. Name of the pretargeting config that must follow the pattern `bidders/{bidder_account_id}/pretargetingConfigs/{config_id}`", "location": "path", "pattern": "^bidders/[^/]+/pretargetingConfigs/[^/]+$", "required": true, @@ -1305,7 +1305,7 @@ } } }, - "revision": "20260114", + "revision": "20260427", "rootUrl": "https://realtimebidding.googleapis.com/", "schemas": { "ActivatePretargetingConfigRequest": { @@ -1808,7 +1808,8 @@ "description": "A native creative." }, "renderUrl": { - "description": "Experimental field that can be used during the [FLEDGE Origin Trial](/authorized-buyers/rtb/fledge-origin-trial). The URL to fetch an interest group ad used in [TURTLEDOVE on-device auction](https://github.com/WICG/turtledove/blob/main/FLEDGE.md#1-browsers-record-interest-groups\"). This should be unique among all creatives for a given `accountId`. This URL should be the same as the URL returned by [generateBid()](https://github.com/WICG/turtledove/blob/main/FLEDGE.md#32-on-device-bidding).", + "deprecated": true, + "description": "Deprecated: FLEDGE is no longer supported. See: https://privacysandbox.google.com/blog/update-on-plans-for-privacy-sandbox-technologies Experimental field that can be used during the [FLEDGE Origin Trial](/authorized-buyers/rtb/fledge-origin-trial). The URL to fetch an interest group ad used in [TURTLEDOVE on-device auction](https://github.com/WICG/turtledove/blob/main/FLEDGE.md#1-browsers-record-interest-groups\"). This should be unique among all creatives for a given `accountId`. This URL should be the same as the URL returned by [generateBid()](https://github.com/WICG/turtledove/blob/main/FLEDGE.md#32-on-device-bidding).", "type": "string" }, "restrictedCategories": { @@ -2677,7 +2678,7 @@ "id": "NumericTargetingDimension", "properties": { "excludedIds": { - "description": "The IDs excluded in a configuration.", + "description": "The IDs excluded in a config.", "items": { "format": "int64", "type": "string" @@ -2685,7 +2686,7 @@ "type": "array" }, "includedIds": { - "description": "The IDs included in a configuration.", + "description": "The IDs included in a config.", "items": { "format": "int64", "type": "string" @@ -2795,11 +2796,11 @@ "type": "object" }, "PretargetingConfig": { - "description": "Pretargeting configuration: a set of targeting dimensions applied at the pretargeting stage of the RTB funnel. These control which inventory a bidder will receive bid requests for.", + "description": "Pretargeting config: a set of targeting dimensions applied at the pretargeting stage of the RTB funnel. These control which inventory a bidder will receive bid requests for.", "id": "PretargetingConfig", "properties": { "allowedUserTargetingModes": { - "description": "Targeting modes included by this configuration. A bid request must allow all the specified targeting modes. An unset value allows all bid requests to be sent, regardless of which targeting modes they allow.", + "description": "Targeting modes included by this config. A bid request must allow all the specified targeting modes. An unset value allows all bid requests to be sent, regardless of which targeting modes they allow.", "items": { "enum": [ "USER_TARGETING_MODE_UNSPECIFIED", @@ -2820,17 +2821,17 @@ "description": "Targeting on a subset of app inventory. If APP is listed in targeted_environments, the specified targeting is applied. A maximum of 30,000 app IDs can be targeted. An unset value for targeting allows all app-based bid requests to be sent. Apps can either be targeting positively (bid requests will be sent only if the destination app is listed in the targeting dimension) or negatively (bid requests will be sent only if the destination app is not listed in the targeting dimension)." }, "billingId": { - "description": "Output only. The identifier that corresponds to this pretargeting configuration that helps buyers track and attribute their spend across their own arbitrary divisions. If a bid request matches more than one configuration, the buyer chooses which billing_id to attribute each of their bids.", + "description": "Output only. The identifier that corresponds to this pretargeting config that helps buyers track and attribute their spend across their own arbitrary divisions. If a bid request matches more than one config, the buyer chooses which billing_id to attribute each of their bids.", "format": "int64", "readOnly": true, "type": "string" }, "displayName": { - "description": "The diplay name associated with this configuration. This name must be unique among all the pretargeting configurations a bidder has.", + "description": "The diplay name associated with this config. This name must be unique among all the pretargeting configs a bidder has.", "type": "string" }, "excludedContentLabelIds": { - "description": "The sensitive content category label IDs excluded in this configuration. Bid requests for inventory with any of the specified content label IDs will not be sent. Refer to this file https://storage.googleapis.com/adx-rtb-dictionaries/content-labels.txt for category IDs.", + "description": "The sensitive content category label IDs excluded in this config. Bid requests for inventory with any of the specified content label IDs will not be sent. Refer to this file https://storage.googleapis.com/adx-rtb-dictionaries/content-labels.txt for category IDs.", "items": { "format": "int64", "type": "string" @@ -2839,10 +2840,10 @@ }, "geoTargeting": { "$ref": "NumericTargetingDimension", - "description": "The geos included or excluded in this configuration defined in https://storage.googleapis.com/adx-rtb-dictionaries/geo-table.csv" + "description": "The geos included or excluded in this config defined in https://storage.googleapis.com/adx-rtb-dictionaries/geo-table.csv" }, "includedCreativeDimensions": { - "description": "Creative dimensions included by this configuration. Only bid requests eligible for at least one of the specified creative dimensions will be sent. An unset value allows all bid requests to be sent, regardless of creative dimension.", + "description": "Creative dimensions included by this config. Only bid requests eligible for at least one of the specified creative dimensions will be sent. An unset value allows all bid requests to be sent, regardless of creative dimension.", "items": { "$ref": "CreativeDimensions" }, @@ -2866,7 +2867,7 @@ "type": "array" }, "includedFormats": { - "description": "Creative formats included by this configuration. Only bid requests eligible for at least one of the specified creative formats will be sent. An unset value will allow all bid requests to be sent, regardless of format.", + "description": "Creative formats included by this config. Only bid requests eligible for at least one of the specified creative formats will be sent. An unset value will allow all bid requests to be sent, regardless of format.", "items": { "enum": [ "CREATIVE_FORMAT_UNSPECIFIED", @@ -2885,14 +2886,14 @@ "type": "array" }, "includedLanguages": { - "description": "The languages included in this configuration, represented by their language code. See https://developers.google.com/adwords/api/docs/appendix/languagecodes.", + "description": "The languages included in this config, represented by their language code. See https://developers.google.com/adwords/api/docs/appendix/languagecodes.", "items": { "type": "string" }, "type": "array" }, "includedMobileOperatingSystemIds": { - "description": "The mobile operating systems included in this configuration as defined in https://storage.googleapis.com/adx-rtb-dictionaries/mobile-os.csv", + "description": "The mobile operating systems included in this config as defined in https://storage.googleapis.com/adx-rtb-dictionaries/mobile-os.csv", "items": { "format": "int64", "type": "string" @@ -2900,7 +2901,7 @@ "type": "array" }, "includedPlatforms": { - "description": "The platforms included by this configration. Bid requests for devices with the specified platform types will be sent. An unset value allows all bid requests to be sent, regardless of platform.", + "description": "The platforms included by this config. Bid requests for devices with the specified platform types will be sent. An unset value allows all bid requests to be sent, regardless of platform.", "items": { "enum": [ "PLATFORM_UNSPECIFIED", @@ -2921,7 +2922,7 @@ "type": "array" }, "includedUserIdTypes": { - "description": "User identifier types included in this configuration. At least one of the user identifier types specified in this list must be available for the bid request to be sent.", + "description": "User identifier types included in this config. At least one of the user identifier types specified in this list must be available for the bid request to be sent.", "items": { "enum": [ "USER_ID_TYPE_UNSPECIFIED", @@ -2944,7 +2945,7 @@ "type": "array" }, "interstitialTargeting": { - "description": "The interstitial targeting specified for this configuration. The unset value will allow bid requests to be sent regardless of whether they are for interstitials or not.", + "description": "The interstitial targeting specified for this config. The unset value will allow bid requests to be sent regardless of whether they are for interstitials or not.", "enum": [ "INTERSTITIAL_TARGETING_UNSPECIFIED", "ONLY_INTERSTITIAL_REQUESTS", @@ -2967,17 +2968,17 @@ "type": "array" }, "maximumQps": { - "description": "The maximum QPS threshold for this configuration. The bidder should receive no more than this number of bid requests matching this configuration per second across all their bidding endpoints among all trading locations. Further information available at https://developers.google.com/authorized-buyers/rtb/peer-guide", + "description": "The maximum QPS threshold for this config. The bidder should receive no more than this number of bid requests matching this config per second across all their bidding endpoints among all trading locations. Further information available at https://developers.google.com/authorized-buyers/rtb/peer-guide", "format": "int64", "type": "string" }, "minimumViewabilityDecile": { - "description": "The targeted minimum viewability decile, ranging in values [0, 10]. A value of 5 means that the configuration will only match adslots for which we predict at least 50% viewability. Values > 10 will be rounded down to 10. An unset value or a value of 0 indicates that bid requests will be sent regardless of viewability.", + "description": "The targeted minimum viewability decile, ranging in values [0, 10]. A value of 5 means that the config will only match adslots for which we predict at least 50% viewability. Values > 10 will be rounded down to 10. An unset value or a value of 0 indicates that bid requests will be sent regardless of viewability.", "format": "int32", "type": "integer" }, "name": { - "description": "Output only. Name of the pretargeting configuration that must follow the pattern `bidders/{bidder_account_id}/pretargetingConfigs/{config_id}`", + "description": "Output only. Name of the pretargeting config that must follow the pattern `bidders/{bidder_account_id}/pretargetingConfigs/{config_id}`", "readOnly": true, "type": "string" }, @@ -2986,7 +2987,7 @@ "description": "Targeting on a subset of publisher inventory. Publishers can either be targeted positively (bid requests will be sent only if the publisher is listed in the targeting dimension) or negatively (bid requests will be sent only if the publisher is not listed in the targeting dimension). A maximum of 10,000 publisher IDs can be targeted. Publisher IDs are found in [ads.txt](https://iabtechlab.com/ads-txt/) / [app-ads.txt](https://iabtechlab.com/app-ads-txt/) and in bid requests in the `BidRequest.publisher_id` field on the [Google RTB protocol](https://developers.google.com/authorized-buyers/rtb/downloads/realtime-bidding-proto) or the `BidRequest.site.publisher.id` / `BidRequest.app.publisher.id` field on the [OpenRTB protocol](https://developers.google.com/authorized-buyers/rtb/downloads/openrtb-adx-proto). Publisher IDs will be returned in the order that they were entered." }, "state": { - "description": "Output only. The state of this pretargeting configuration.", + "description": "Output only. The state of this pretargeting config.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", @@ -2994,23 +2995,23 @@ ], "enumDescriptions": [ "Placeholder for undefined state.", - "This pretargeting configuration is actively being used to filter bid requests.", - "This pretargeting configuration is suspended and not used in serving." + "This pretargeting config is actively being used to filter bid requests.", + "This pretargeting config is suspended and not used in serving." ], "readOnly": true, "type": "string" }, "userListTargeting": { "$ref": "NumericTargetingDimension", - "description": "The remarketing lists included or excluded in this configuration as defined in UserList." + "description": "The remarketing lists included or excluded in this config as defined in UserList." }, "verticalTargeting": { "$ref": "NumericTargetingDimension", - "description": "The verticals included or excluded in this configuration as defined in https://developers.google.com/authorized-buyers/rtb/downloads/publisher-verticals" + "description": "The verticals included or excluded in this config as defined in https://developers.google.com/authorized-buyers/rtb/downloads/publisher-verticals" }, "webTargeting": { "$ref": "StringTargetingDimension", - "description": "Targeting on a subset of site inventory. If WEB is listed in included_environments, the specified targeting is applied. A maximum of 50,000 site URLs can be targeted. An unset value for targeting allows all web-based bid requests to be sent. Sites can either be targeting positively (bid requests will be sent only if the destination site is listed in the targeting dimension) or negatively (bid requests will be sent only if the destination site is not listed in the pretargeting configuration)." + "description": "Targeting on a subset of site inventory. If WEB is listed in included_environments, the specified targeting is applied. A maximum of 50,000 site URLs can be targeted. An unset value for targeting allows all web-based bid requests to be sent. Sites can either be targeting positively (bid requests will be sent only if the destination site is listed in the targeting dimension) or negatively (bid requests will be sent only if the destination site is not listed in the pretargeting config)." } }, "type": "object" diff --git a/discovery/recaptchaenterprise-v1.json b/discovery/recaptchaenterprise-v1.json index 23e0e18551e..a146540fdc8 100644 --- a/discovery/recaptchaenterprise-v1.json +++ b/discovery/recaptchaenterprise-v1.json @@ -786,13 +786,18 @@ } } }, - "revision": "20251201", + "revision": "20260426", "rootUrl": "https://recaptchaenterprise.googleapis.com/", "schemas": { "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessment": { "description": "Account defender risk assessment.", "id": "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessment", "properties": { + "accountTakeoverVerdict": { + "$ref": "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountTakeoverVerdict", + "description": "Output only. Account takeover risk assessment for this request.", + "readOnly": true + }, "labels": { "description": "Output only. Labels for this request.", "items": { @@ -805,7 +810,7 @@ ], "enumDescriptions": [ "Default unspecified type.", - "The request matches a known good profile for the user.", + "The request matches a trusted profile associated with this account.", "The request is potentially a suspicious login event and must be further verified either through multi-factor authentication or another system.", "The request matched a profile that previously had suspicious account creation behavior. This can mean that this is a fake account.", "The account in the request has a high number of related accounts. It does not necessarily imply that the account is bad but can require further investigation." @@ -818,6 +823,81 @@ }, "type": "object" }, + "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountRiskReason": { + "description": "Risk explainability reasons for account defender.", + "id": "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountRiskReason", + "properties": { + "reason": { + "description": "Output only. A risk reason associated with this request.", + "enum": [ + "RISK_REASON_UNSPECIFIED", + "CLIENT_HISTORICAL_BOT_ACTIVITY", + "ACCOUNT_IN_LARGE_RELATED_GROUP", + "CLIENT_ACCESSED_MANY_ACCOUNTS" + ], + "enumDescriptions": [ + "Default unspecified type.", + "The client has been observed sending bot-like traffic to this site in the past. This reason incorporates historical reputation and indicates that the client is known to use bots, even if the current request is being made by a human.", + "The account is part of a large group of related accounts, indicating that it may be part of a fraudulent network. Related accounts are identified based on having similar traffic patterns and request characteristics.", + "The client has been observed accessing many accounts on this site." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountTakeoverVerdict": { + "description": "Account takeover risk assessment.", + "id": "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountTakeoverVerdict", + "properties": { + "risk": { + "description": "Output only. Account takeover attempt probability. Values are from 0.0 (lowest risk) to 1.0 (highest risk).", + "format": "float", + "readOnly": true, + "type": "number" + }, + "riskReasons": { + "description": "Output only. Unordered list. Reasons why the request appears risky. Risk reasons can be returned even if the risk is low, as trustworthy requests can still have some risk signals.", + "items": { + "$ref": "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountRiskReason" + }, + "readOnly": true, + "type": "array" + }, + "trustReasons": { + "description": "Output only. Unordered list. Reasons why the request appears trustworthy. Trust reasons can be returned even if the risk is high, as risky requests can still have some trust signals.", + "items": { + "$ref": "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountTrustReason" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountTrustReason": { + "description": "Trust explainability reasons for account defender.", + "id": "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountTrustReason", + "properties": { + "reason": { + "description": "Output only. A trust reason associated with this request.", + "enum": [ + "TRUST_REASON_UNSPECIFIED", + "PROFILE_MATCH", + "ACCOUNT_HISTORY_REPUTABLE" + ], + "enumDescriptions": [ + "Default unspecified type.", + "The request matches a trusted profile associated with this account. Equivalent to `AccountDefenderLabel.PROFILE_MATCH`.", + "The account's historical activity is reputable. It is unlikely that the account has been compromised in the past." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudRecaptchaenterpriseV1AccountVerificationInfo": { "description": "Information about account verification, used for identity verification.", "id": "GoogleCloudRecaptchaenterpriseV1AccountVerificationInfo", @@ -1959,7 +2039,7 @@ "type": "string" }, "extendedVerdictReasons": { - "description": "Output only. Extended verdict reasons to be used for experimentation only. The set of possible reasons is subject to change.", + "description": "Output only. Additional reasons contributing to the risk analysis verdict. These reasons are available to Enterprise tier projects only. Contact sales for more information. The set of reasons is subject to change.", "items": { "type": "string" }, @@ -1979,6 +2059,16 @@ "SUSPECTED_CARDING", "SUSPECTED_CHARGEBACK" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + true + ], "enumDescriptions": [ "Default unspecified type.", "Interactions matched the behavior of an automated agent.", @@ -1986,8 +2076,8 @@ "Traffic volume from the event source is higher than normal.", "Interactions with the site were significantly different than expected patterns.", "Too little traffic has been received from this site thus far to generate quality risk analysis.", - "The request matches behavioral characteristics of a carding attack.", - "The request matches behavioral characteristics of chargebacks for fraud." + "Deprecated: Use FraudPreventionAssessment.transaction_risk and FraudPreventionAssessment.RiskReason.Reason.EXCESSIVE_ENUMERATION_PATTERN instead.", + "Deprecated: Use FraudPreventionAssessment.transaction_risk and FraudPreventionAssessment.RiskReason.Reason.ASSOCIATED_WITH_FRAUD_CLUSTER instead." ], "type": "string" }, @@ -2178,7 +2268,9 @@ "DUPE", "MISSING", "BROWSER_ERROR", - "UNEXPECTED_ACTION" + "UNEXPECTED_ACTION", + "KEY_MISMATCH", + "DOMAIN_MISMATCH" ], "enumDescriptions": [ "Default unspecified type.", @@ -2188,7 +2280,9 @@ "The user verification had already been seen.", "The user verification token was not present.", "A retriable error (such as network failure) occurred on the browser. Could easily be simulated by an attacker.", - "The action provided at token generation was different than the `expected_action` in the assessment request. The comparison is case-insensitive. This reason can only be returned if all of the following are true: - your `site_key` has the POLICY_BASED_CHALLENGE integration type - you set an action score threshold higher than 0.0 - you provided a non-empty `expected_action`" + "The action provided at token generation was different than the `expected_action` in the assessment request. The comparison is case-insensitive. This reason can only be returned if all of the following are true: - your `site_key` has the POLICY_BASED_CHALLENGE integration type - you set an action score threshold higher than 0.0 - you provided a non-empty `expected_action`", + "The key used to generate the token does not match the `site_key`.", + "The domain of the page on which the token was generated does not match the `allowed_domains` configured in the `site_key`." ], "readOnly": true, "type": "string" @@ -2199,7 +2293,7 @@ "type": "string" }, "valid": { - "description": "Output only. Whether the provided user response token is valid. When valid = false, the reason could be specified in invalid_reason or it could also be due to a user failing to solve a challenge or a sitekey mismatch (i.e the sitekey used to generate the token was different than the one specified in the assessment).", + "description": "Output only. Indicates whether the provided user response token is valid. If `false`, the token is invalid, either because the user failed the challenge or for a reason provided in the `invalid_reason` field.", "readOnly": true, "type": "boolean" } diff --git a/discovery/recommender-v1beta1.json b/discovery/recommender-v1beta1.json index 2a0cc7b3693..670fbcdc1d9 100644 --- a/discovery/recommender-v1beta1.json +++ b/discovery/recommender-v1beta1.json @@ -119,7 +119,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -596,7 +596,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -972,7 +972,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1449,7 +1449,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1944,7 +1944,7 @@ } } }, - "revision": "20260208", + "revision": "20260426", "rootUrl": "https://recommender.googleapis.com/", "schemas": { "GoogleCloudLocationListLocationsResponse": { diff --git a/discovery/redis-v1.json b/discovery/redis-v1.json index 32004f843ce..167e54697ca 100644 --- a/discovery/redis-v1.json +++ b/discovery/redis-v1.json @@ -4,6 +4,12 @@ "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." + }, + "https://www.googleapis.com/auth/redis.read-only": { + "description": "See your Google Cloud Memorystore for Redis data and the email address of your Google Account" + }, + "https://www.googleapis.com/auth/redis.read-write": { + "description": "See, edit, configure, and delete your Google Cloud Memorystore for Redis data and see the email address for your Google Account" } } } @@ -131,7 +137,8 @@ "$ref": "Location" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "getSharedRegionalCertificateAuthority": { @@ -156,11 +163,12 @@ "$ref": "SharedRegionalCertificateAuthority" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "redis.projects.locations.list", @@ -169,7 +177,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -203,11 +211,194 @@ "$ref": "ListLocationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] } }, "resources": { + "aclPolicies": { + "methods": { + "create": { + "description": "Creates an ACL Policy. The creation is executed synchronously and the policy is available for use immediately after the RPC returns.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/aclPolicies", + "httpMethod": "POST", + "id": "redis.projects.locations.aclPolicies.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "aclPolicyId": { + "description": "Required. The logical name of the ACL Policy in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the cluster location using the form: `projects/{project_id}/locations/{location_id}` where `location_id` refers to a Google Cloud region.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. Idempotent request UUID. .", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/aclPolicies", + "request": { + "$ref": "AclPolicy" + }, + "response": { + "$ref": "AclPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "delete": { + "description": "Deletes a specific Acl Policy. This action will delete the Acl Policy and all the rules associated with it. An ACL policy cannot be deleted if it is attached to a cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/aclPolicies/{aclPoliciesId}", + "httpMethod": "DELETE", + "id": "redis.projects.locations.aclPolicies.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. Etag of the ACL policy. If this is different from the server's etag, the request will fail with an ABORTED error.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. Redis ACL Policy resource name using the form: `projects/{project_id}/locations/{location_id}/aclPolicies/{acl_policy_id}` where `location_id` refers to a GCP region.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/aclPolicies/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. Idempotent request UUID.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "get": { + "description": "Gets the details of a specific Redis Cluster ACL Policy.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/aclPolicies/{aclPoliciesId}", + "httpMethod": "GET", + "id": "redis.projects.locations.aclPolicies.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Redis ACL Policy resource name using the form: `projects/{project_id}/locations/{location_id}/aclPolicies/{acl_policy_id}` where `location_id` refers to a GCP region.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/aclPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "AclPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "list": { + "description": "Lists all ACL Policies owned by a project in either the specified location (region) or all locations. The location should have the following format: * `projects/{project_id}/locations/{location_id}` If `location_id` is specified as `-` (wildcard), then all regions available to the project are queried, and the results are aggregated.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/aclPolicies", + "httpMethod": "GET", + "id": "redis.projects.locations.aclPolicies.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more ACL policies left to be queried. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The `next_page_token` value returned from a previous `ListAclPolicies` request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the cluster location using the form: `projects/{project_id}/locations/{location_id}` where `location_id` refers to a Google Cloud region.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/aclPolicies", + "response": { + "$ref": "ListAclPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "patch": { + "description": "Updates the ACL policy. The operation applies the updated ACL policy to all of the linked clusters. If Memorystore can apply the policy to all clusters, then the operation returns a SUCCESS status. If Memorystore can't apply the policy to all clusters, then to ensure eventual consistency, Memorystore uses reconciliation to apply the policy to the failed clusters. Completed longrunning.Operation will contain the new ACL Policy object in the response field.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/aclPolicies/{aclPoliciesId}", + "httpMethod": "PATCH", + "id": "redis.projects.locations.aclPolicies.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. Full resource path of the ACL policy.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/aclPolicies/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. Idempotent request UUID.", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Mask of fields to be updated. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from `AclPolicy`: * `rules`", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "AclPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + } + } + }, "backupCollections": { "methods": { "get": { @@ -232,7 +423,9 @@ "$ref": "BackupCollection" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-only", + "https://www.googleapis.com/auth/redis.read-write" ] }, "list": { @@ -268,7 +461,9 @@ "$ref": "ListBackupCollectionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-only", + "https://www.googleapis.com/auth/redis.read-write" ] } }, @@ -302,7 +497,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "export": { @@ -330,7 +526,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "get": { @@ -355,7 +552,9 @@ "$ref": "Backup" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-only", + "https://www.googleapis.com/auth/redis.read-write" ] }, "list": { @@ -391,7 +590,9 @@ "$ref": "ListBackupsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-only", + "https://www.googleapis.com/auth/redis.read-write" ] } } @@ -400,6 +601,35 @@ }, "clusters": { "methods": { + "addTokenAuthUser": { + "description": "Adds a token auth user for a token based auth enabled cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:addTokenAuthUser", + "httpMethod": "POST", + "id": "redis.projects.locations.clusters.addTokenAuthUser", + "parameterOrder": [ + "cluster" + ], + "parameters": { + "cluster": { + "description": "Required. The cluster resource that this token auth user will be added for. Format: projects/{project}/locations/{location}/clusters/{cluster}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+cluster}:addTokenAuthUser", + "request": { + "$ref": "AddTokenAuthUserRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, "backup": { "description": "Backup Redis Cluster. If this is the first time a backup is being created, a backup collection will be created at the backend, and this backup belongs to this collection. Both collection and backup will have a resource name. Backup will be executed for each shard. A replica (primary if nonHA) will be selected to perform the execution. Backup call will be rejected if there is an ongoing backup or update operation. Be aware that during preview, if the cluster's internal software version is too old, critical update will be performed before actual backup. Once the internal software version is updated to the minimum version required by the backup feature, subsequent backups will not require critical update. After preview, there will be no critical update needed for backup.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:backup", @@ -425,7 +655,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "create": { @@ -463,7 +694,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "delete": { @@ -493,7 +725,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "get": { @@ -518,7 +751,8 @@ "$ref": "Cluster" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "getCertificateAuthority": { @@ -543,7 +777,8 @@ "$ref": "CertificateAuthority" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "list": { @@ -562,7 +797,7 @@ "type": "integer" }, "pageToken": { - "description": "The `next_page_token` value returned from a previous ListClusters request, if any.", + "description": "The `next_page_token` value returned from a previous `ListClusters` request, if any.", "location": "query", "type": "string" }, @@ -579,7 +814,8 @@ "$ref": "ListClustersResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "patch": { @@ -618,7 +854,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "rescheduleClusterMaintenance": { @@ -646,9 +883,259 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] } + }, + "resources": { + "tokenAuthUsers": { + "methods": { + "addAuthToken": { + "description": "Adds a auth token for a user of a token based auth enabled cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers/{tokenAuthUsersId}:addAuthToken", + "httpMethod": "POST", + "id": "redis.projects.locations.clusters.tokenAuthUsers.addAuthToken", + "parameterOrder": [ + "tokenAuthUser" + ], + "parameters": { + "tokenAuthUser": { + "description": "Required. The name of the token auth user resource that this auth token will be added for. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/tokenAuthUsers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+tokenAuthUser}:addAuthToken", + "request": { + "$ref": "AddAuthTokenRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "delete": { + "description": "Deletes a token auth user for a token based auth enabled cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers/{tokenAuthUsersId}", + "httpMethod": "DELETE", + "id": "redis.projects.locations.clusters.tokenAuthUsers.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "force": { + "description": "Optional. If set to true, any child auth tokens of this user will also be deleted. Otherwise, the request will only work if the user has no auth tokens.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the token auth user to delete. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/tokenAuthUsers/[^/]+$", + "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": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "get": { + "description": "Gets a specific token auth user for a basic auth enabled cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers/{tokenAuthUsersId}", + "httpMethod": "GET", + "id": "redis.projects.locations.clusters.tokenAuthUsers.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of token auth user for a token based auth enabled cluster. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/tokenAuthUsers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "TokenAuthUser" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "list": { + "description": "Lists all the token auth users for a token based auth enabled cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers", + "httpMethod": "GET", + "id": "redis.projects.locations.clusters.tokenAuthUsers.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Expression for filtering results.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Sort results by a defined order.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's The maximum value is 1000; values above 1000 will be coerced to 1000. `next_page_token` to determine if there are more clusters left to be queried.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The `next_page_token` value returned from a previous [ListTokenAuthUsers] request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource that this token based auth user will be listed for. Format: projects/{project}/locations/{location}/clusters/{cluster}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/tokenAuthUsers", + "response": { + "$ref": "ListTokenAuthUsersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + } + }, + "resources": { + "authTokens": { + "methods": { + "delete": { + "description": "Removes a auth token for a user of a token based auth enabled instance.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers/{tokenAuthUsersId}/authTokens/{authTokensId}", + "httpMethod": "DELETE", + "id": "redis.projects.locations.clusters.tokenAuthUsers.authTokens.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the token auth user resource that this auth token will be deleted from. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}/authTokens/{auth_token}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/tokenAuthUsers/[^/]+/authTokens/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "get": { + "description": "Gets a specific auth token for a specific token auth user.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers/{tokenAuthUsersId}/authTokens/{authTokensId}", + "httpMethod": "GET", + "id": "redis.projects.locations.clusters.tokenAuthUsers.authTokens.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of auth token for a token based auth enabled cluster. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}/authTokens/{auth_token}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/tokenAuthUsers/[^/]+/authTokens/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "AuthToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "list": { + "description": "Lists all the auth tokens for a specific token auth user.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers/{tokenAuthUsersId}/authTokens", + "httpMethod": "GET", + "id": "redis.projects.locations.clusters.tokenAuthUsers.authTokens.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Expression for filtering results.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Sort results by a defined order.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of items to return. The maximum value is 1000; values above 1000 will be coerced to 1000. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The `next_page_token` value returned from a previous [ListTokenAuthUsers] request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource that this auth token will be listed for. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/tokenAuthUsers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/authTokens", + "response": { + "$ref": "ListAuthTokensResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + } + } + } + } + } } }, "instances": { @@ -683,7 +1170,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "delete": { @@ -708,7 +1196,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "export": { @@ -736,7 +1225,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "failover": { @@ -764,7 +1254,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "get": { @@ -789,7 +1280,9 @@ "$ref": "Instance" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-only", + "https://www.googleapis.com/auth/redis.read-write" ] }, "getAuthString": { @@ -814,7 +1307,9 @@ "$ref": "InstanceAuthString" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-only", + "https://www.googleapis.com/auth/redis.read-write" ] }, "import": { @@ -842,7 +1337,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "list": { @@ -878,7 +1374,9 @@ "$ref": "ListInstancesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-only", + "https://www.googleapis.com/auth/redis.read-write" ] }, "patch": { @@ -912,7 +1410,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "rescheduleMaintenance": { @@ -940,7 +1439,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "upgrade": { @@ -968,7 +1468,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] } } @@ -997,7 +1498,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "delete": { @@ -1022,7 +1524,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "get": { @@ -1047,7 +1550,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "list": { @@ -1093,7 +1597,8 @@ "$ref": "ListOperationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] } } @@ -1103,7 +1608,7 @@ } } }, - "revision": "20260210", + "revision": "20260423", "rootUrl": "https://redis.googleapis.com/", "schemas": { "AOFConfig": { @@ -1129,6 +1634,128 @@ }, "type": "object" }, + "AclPolicy": { + "description": "The ACL policy resource.", + "id": "AclPolicy", + "properties": { + "etag": { + "description": "Output only. Etag for the ACL policy.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. Full resource path of the ACL policy.", + "type": "string" + }, + "rules": { + "description": "Required. The ACL rules within the ACL policy.", + "items": { + "$ref": "AclRule" + }, + "type": "array" + }, + "state": { + "description": "Output only. The state of the ACL policy.", + "enum": [ + "STATE_UNSPECIFIED", + "ACTIVE", + "UPDATING", + "DELETING" + ], + "enumDescriptions": [ + "Not set.", + "ACL Policy has been created and is fully usable. Since ACL Policy creation is synchronous and not an LRO, there is no CREATING state.", + "ACL Policy is being updated.", + "ACL Policy is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "version": { + "description": "Output only. The version of the ACL policy. Used in drift resolution.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "AclRule": { + "description": "A single ACL rule which defines the policy for a user.", + "id": "AclRule", + "properties": { + "rule": { + "description": "Required. The rule to be applied to the username. Ex: \"on >password123 ~* +@all\" The format of the rule is defined by Redis OSS: https://redis.io/docs/latest/operate/oss_and_stack/management/security/acl/", + "type": "string" + }, + "username": { + "description": "Required. Specifies the IAM user or service account to be added to the ACL policy. This username will be directly set on the Redis OSS.", + "type": "string" + } + }, + "type": "object" + }, + "AddAuthTokenRequest": { + "description": "Request message for AddAuthToken.", + "id": "AddAuthTokenRequest", + "properties": { + "authToken": { + "$ref": "AuthToken", + "description": "Required. The auth token to add." + } + }, + "type": "object" + }, + "AddTokenAuthUserRequest": { + "description": "Request message for AddTokenAuthUser.", + "id": "AddTokenAuthUserRequest", + "properties": { + "tokenAuthUser": { + "description": "Required. The id of the token auth user to add.", + "type": "string" + } + }, + "type": "object" + }, + "AuthToken": { + "description": "Auth token for the cluster.", + "id": "AuthToken", + "properties": { + "createTime": { + "description": "Output only. Create time of the auth token.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. Name of the auth token. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}/authTokens/{auth_token}", + "type": "string" + }, + "state": { + "description": "Output only. State of the auth token.", + "enum": [ + "STATE_UNSPECIFIED", + "ACTIVE", + "CREATING", + "DELETING" + ], + "enumDescriptions": [ + "Not set.", + "The auth token is active.", + "The auth token is being created.", + "The auth token is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "token": { + "description": "Output only. The service generated authentication token used to connect to the Redis cluster.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "AutomatedBackupConfig": { "description": "The automated backup config for a cluster.", "id": "AutomatedBackupConfig", @@ -1268,14 +1895,20 @@ "REDIS_SHARED_CORE_NANO", "REDIS_HIGHMEM_MEDIUM", "REDIS_HIGHMEM_XLARGE", - "REDIS_STANDARD_SMALL" + "REDIS_STANDARD_SMALL", + "REDIS_HIGHCPU_MEDIUM", + "REDIS_STANDARD_LARGE", + "REDIS_HIGHMEM_2XLARGE" ], "enumDescriptions": [ "Node type unspecified", "Redis shared core nano node_type.", "Redis highmem medium node_type.", "Redis highmem xlarge node_type.", - "Redis standard small node_type." + "Redis standard small node_type.", + "Redis highcpu medium node_type.", + "Redis standard large node_type.", + "Redis highmem 2xlarge node_type." ], "readOnly": true, "type": "string" @@ -1326,7 +1959,7 @@ "type": "object" }, "BackupClusterRequest": { - "description": "Request for [BackupCluster].", + "description": "Request for `BackupCluster`.", "id": "BackupClusterRequest", "properties": { "backupId": { @@ -1548,6 +2181,15 @@ "description": "A cluster instance.", "id": "Cluster", "properties": { + "aclPolicy": { + "description": "Optional. The ACL policy to be applied to the cluster.", + "type": "string" + }, + "aclPolicyInSync": { + "description": "Optional. Output only. Indicates whether the ACL rules applied to the cluster are in sync with the latest ACL policy rules. This field is only applicable if the ACL policy is set for the cluster.", + "readOnly": true, + "type": "boolean" + }, "allowFewerZonesDeployment": { "deprecated": true, "description": "Optional. Immutable. Deprecated, do not use.", @@ -1562,12 +2204,14 @@ "enum": [ "AUTH_MODE_UNSPECIFIED", "AUTH_MODE_IAM_AUTH", - "AUTH_MODE_DISABLED" + "AUTH_MODE_DISABLED", + "AUTH_MODE_TOKEN_AUTH" ], "enumDescriptions": [ "Not set.", "IAM basic authorization mode", - "Authorization disabled mode" + "Authorization disabled mode", + "Token based authorization mode" ], "type": "string" }, @@ -1670,14 +2314,20 @@ "REDIS_SHARED_CORE_NANO", "REDIS_HIGHMEM_MEDIUM", "REDIS_HIGHMEM_XLARGE", - "REDIS_STANDARD_SMALL" + "REDIS_STANDARD_SMALL", + "REDIS_HIGHCPU_MEDIUM", + "REDIS_STANDARD_LARGE", + "REDIS_HIGHMEM_2XLARGE" ], "enumDescriptions": [ "Node type unspecified", "Redis shared core nano node_type.", "Redis highmem medium node_type.", "Redis highmem xlarge node_type.", - "Redis standard small node_type." + "Redis standard small node_type.", + "Redis highcpu medium node_type.", + "Redis standard large node_type.", + "Redis highmem 2xlarge node_type." ], "type": "string" }, @@ -2001,7 +2651,10 @@ "SIGNAL_TYPE_EXPOSED_TO_PUBLIC_ACCESS", "SIGNAL_TYPE_UNENCRYPTED_CONNECTIONS", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY" + "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE", + "SIGNAL_TYPE_LAST_BACKUP_OLD", + "SIGNAL_TYPE_NOT_PROTECTED_BY_AUTOMATIC_FAILOVER" ], "enumDescriptions": [ "Unspecified signal type.", @@ -2011,7 +2664,10 @@ "Represents if a resource is exposed to public access.", "Represents if a resources requires all incoming connections to use SSL or not.", "Represents if a resource version is in extended support.", - "Represents if a resource has no automated backup policy." + "Represents if a resource has no automated backup policy.", + "Represents if a resource version is nearing end of life.", + "Represents if the last backup of a resource is older than 24 hours.", + "Represents if a resource is not protected by automatic failover." ], "type": "string" } @@ -2382,7 +3038,8 @@ "SIGNAL_TYPE_DATABOOST_DISABLED", "SIGNAL_TYPE_RECOMMENDED_MAINTENANCE_POLICIES", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE" + "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE" ], "enumDeprecated": [ false, @@ -2490,6 +3147,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -2598,7 +3256,8 @@ "Databoost is disabled.", "Recommended maintenance policy.", "Resource version is in extended support.", - "Change in performance KPIs." + "Change in performance KPIs.", + "Database version nearing end of life." ], "type": "string" }, @@ -2662,7 +3321,7 @@ "type": "object" }, "DatabaseResourceMetadata": { - "description": "Common model for database resource instance metadata. Next ID: 31", + "description": "Common model for database resource instance metadata. Next ID: 32", "id": "DatabaseResourceMetadata", "properties": { "availabilityConfiguration": { @@ -2779,6 +3438,9 @@ "SUB_RESOURCE_TYPE_SECONDARY", "SUB_RESOURCE_TYPE_READ_REPLICA", "SUB_RESOURCE_TYPE_EXTERNAL_PRIMARY", + "SUB_RESOURCE_TYPE_READ_POOL", + "SUB_RESOURCE_TYPE_RESERVATION", + "SUB_RESOURCE_TYPE_DATASET", "SUB_RESOURCE_TYPE_OTHER" ], "enumDeprecated": [ @@ -2792,6 +3454,9 @@ false, false, false, + false, + false, + false, false ], "enumDescriptions": [ @@ -2805,6 +3470,9 @@ "A cluster or an instance acting as a secondary.", "An instance acting as a read-replica.", "An instance acting as an external primary.", + "An instance acting as Read Pool.", + "Represents a reservation resource.", + "Represents a dataset resource.", "For rest of the other categories." ], "type": "string" @@ -2825,6 +3493,25 @@ "$ref": "ResourceMaintenanceInfo", "description": "Optional. Maintenance info for the resource." }, + "modes": { + "description": "Optional. The modes of the database resource.", + "items": { + "enum": [ + "MODE_UNSPECIFIED", + "MODE_NATIVE", + "MODE_MONGODB_COMPATIBLE", + "MODE_DATASTORE" + ], + "enumDescriptions": [ + "Default mode.", + "Native mode.", + "MongoDB compatible mode.", + "Datastore mode." + ], + "type": "string" + }, + "type": "array" + }, "primaryResourceId": { "$ref": "DatabaseResourceId", "description": "Identifier for this resource's immediate parent/primary resource if the current resource is a replica or derived form of another Database resource. Else it would be NULL. REQUIRED if the immediate parent exists when first time resource is getting ingested, otherwise optional." @@ -3055,7 +3742,8 @@ "SIGNAL_TYPE_DATABOOST_DISABLED", "SIGNAL_TYPE_RECOMMENDED_MAINTENANCE_POLICIES", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE" + "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE" ], "enumDeprecated": [ false, @@ -3163,6 +3851,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -3271,7 +3960,8 @@ "Databoost is disabled.", "Recommended maintenance policy.", "Resource version is in extended support.", - "Change in performance KPIs." + "Change in performance KPIs.", + "Database version nearing end of life." ], "type": "string" } @@ -3279,9 +3969,14 @@ "type": "object" }, "DatabaseResourceSignalData": { - "description": "Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 7", + "description": "Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 10", "id": "DatabaseResourceSignalData", "properties": { + "backupRun": { + "$ref": "BackupRun", + "deprecated": true, + "description": "Deprecated: Use signal_metadata_list instead." + }, "fullResourceName": { "description": "Required. Full Resource name of the source resource.", "type": "string" @@ -3291,14 +3986,26 @@ "format": "google-datetime", "type": "string" }, + "location": { + "description": "Required. Resource location.", + "type": "string" + }, "resourceId": { "$ref": "DatabaseResourceId", "description": "Database resource id." }, "signalBoolValue": { - "description": "Signal data for boolean signals.", + "deprecated": true, + "description": "Deprecated: Use signal_metadata_list instead.", "type": "boolean" }, + "signalMetadataList": { + "description": "This will support array of OneOf signal metadata information for a given signal type.", + "items": { + "$ref": "SignalMetadata" + }, + "type": "array" + }, "signalState": { "description": "Required. Output only. Signal state of the signal", "enum": [ @@ -3326,7 +4033,10 @@ "SIGNAL_TYPE_EXPOSED_TO_PUBLIC_ACCESS", "SIGNAL_TYPE_UNENCRYPTED_CONNECTIONS", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY" + "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE", + "SIGNAL_TYPE_LAST_BACKUP_OLD", + "SIGNAL_TYPE_NOT_PROTECTED_BY_AUTOMATIC_FAILOVER" ], "enumDescriptions": [ "Unspecified signal type.", @@ -3336,7 +4046,10 @@ "Represents if a resource is exposed to public access.", "Represents if a resources requires all incoming connections to use SSL or not.", "Represents if a resource version is in extended support.", - "Represents if a resource has no automated backup policy." + "Represents if a resource has no automated backup policy.", + "Represents if a resource version is nearing end of life.", + "Represents if the last backup of a resource is older than 24 hours.", + "Represents if a resource is not protected by automatic failover." ], "type": "string" } @@ -3501,7 +4214,7 @@ "type": "object" }, "ExportBackupRequest": { - "description": "Request for [ExportBackup].", + "description": "Request for `ExportBackup`.", "id": "ExportBackupRequest", "properties": { "gcsBucket": { @@ -3827,7 +4540,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. Redis configuration parameters, according to http://redis.io/topics/config. Currently, the only supported parameters are: Redis version 3.2 and newer: * maxmemory-policy * notify-keyspace-events Redis version 4.0 and newer: * activedefrag * lfu-decay-time * lfu-log-factor * maxmemory-gb Redis version 5.0 and newer: * stream-node-max-bytes * stream-node-max-entries", + "description": "Optional. Redis configuration parameters, according to [Redis configuration](https://redis.io/docs/latest/operate/oss_and_stack/management/config/). Currently, the only supported parameters are: Redis version 3.2 and newer: * maxmemory-policy * notify-keyspace-events Redis version 4.0 and newer: * activedefrag * lfu-decay-time * lfu-log-factor * maxmemory-gb Redis version 5.0 and newer: * stream-node-max-bytes * stream-node-max-entries", "type": "object" }, "redisVersion": { @@ -3990,8 +4703,58 @@ }, "type": "object" }, + "ListAclPoliciesResponse": { + "description": "Response for `ListAclPolicies`.", + "id": "ListAclPoliciesResponse", + "properties": { + "aclPolicies": { + "description": "A list of ACL policies in the project in the specified location, or across all locations. If the `location_id` in the parent field of the request is \"-\", all regions available to the project are queried, and the results aggregated.", + "items": { + "$ref": "AclPolicy" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListAuthTokensResponse": { + "description": "Response message for ListAuthTokens.", + "id": "ListAuthTokensResponse", + "properties": { + "authTokens": { + "description": "A list of auth tokens in the project.", + "items": { + "$ref": "AuthToken" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", + "type": "string" + }, + "unreachable": { + "description": "Unordered list. Auth tokens that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListBackupCollectionsResponse": { - "description": "Response for [ListBackupCollections].", + "description": "Response for `ListBackupCollections`.", "id": "ListBackupCollectionsResponse", "properties": { "backupCollections": { @@ -4016,7 +4779,7 @@ "type": "object" }, "ListBackupsResponse": { - "description": "Response for [ListBackups].", + "description": "Response for `ListBackups`.", "id": "ListBackupsResponse", "properties": { "backups": { @@ -4041,7 +4804,7 @@ "type": "object" }, "ListClustersResponse": { - "description": "Response for ListClusters.", + "description": "Response for `ListClusters`.", "id": "ListClustersResponse", "properties": { "clusters": { @@ -4133,6 +4896,31 @@ }, "type": "object" }, + "ListTokenAuthUsersResponse": { + "description": "Response message for ListTokenAuthUsers.", + "id": "ListTokenAuthUsersResponse", + "properties": { + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", + "type": "string" + }, + "tokenAuthUsers": { + "description": "A list of token auth users in the project.", + "items": { + "$ref": "TokenAuthUser" + }, + "type": "array" + }, + "unreachable": { + "description": "Unordered list. Token auth users that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "Location": { "description": "A resource that represents a Google Cloud location.", "id": "Location", @@ -5240,6 +6028,21 @@ }, "type": "object" }, + "SignalMetadata": { + "description": "SignalMetadata contains one of the signal metadata proto messages associated with a SignalType. This proto will be mapped to SignalMetadata message in storage.proto. Next ID: 3", + "id": "SignalMetadata", + "properties": { + "backupRun": { + "$ref": "BackupRun", + "description": "Signal data for backup runs." + }, + "signalBoolValue": { + "description": "Signal data for boolean signals.", + "type": "boolean" + } + }, + "type": "object" + }, "StateInfo": { "description": "Represents additional information about the state of the cluster.", "id": "StateInfo", @@ -5350,6 +6153,36 @@ }, "type": "object" }, + "TokenAuthUser": { + "description": "Represents a token based auth user for the cluster.", + "id": "TokenAuthUser", + "properties": { + "name": { + "description": "Identifier. The resource name of the token based auth user. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}", + "type": "string" + }, + "state": { + "description": "Output only. The state of the token based auth user.", + "enum": [ + "STATE_UNSPECIFIED", + "ACTIVE", + "CREATING", + "UPDATING", + "DELETING" + ], + "enumDescriptions": [ + "Not set.", + "The auth user is active.", + "The auth user is being created.", + "The auth user is being updated.", + "The auth user is being deleted." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "TypedValue": { "description": "TypedValue represents the value of a metric type. It can either be a double, an int64, a string or a bool.", "id": "TypedValue", @@ -5403,14 +6236,20 @@ "REDIS_SHARED_CORE_NANO", "REDIS_HIGHMEM_MEDIUM", "REDIS_HIGHMEM_XLARGE", - "REDIS_STANDARD_SMALL" + "REDIS_STANDARD_SMALL", + "REDIS_HIGHCPU_MEDIUM", + "REDIS_STANDARD_LARGE", + "REDIS_HIGHMEM_2XLARGE" ], "enumDescriptions": [ "Node type unspecified", "Redis shared core nano node_type.", "Redis highmem medium node_type.", "Redis highmem xlarge node_type.", - "Redis standard small node_type." + "Redis standard small node_type.", + "Redis highcpu medium node_type.", + "Redis standard large node_type.", + "Redis highmem 2xlarge node_type." ], "type": "string" }, diff --git a/discovery/redis-v1beta1.json b/discovery/redis-v1beta1.json index 34c105352fe..b0ef125c344 100644 --- a/discovery/redis-v1beta1.json +++ b/discovery/redis-v1beta1.json @@ -4,6 +4,12 @@ "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." + }, + "https://www.googleapis.com/auth/redis.read-only": { + "description": "See your Google Cloud Memorystore for Redis data and the email address of your Google Account" + }, + "https://www.googleapis.com/auth/redis.read-write": { + "description": "See, edit, configure, and delete your Google Cloud Memorystore for Redis data and see the email address for your Google Account" } } } @@ -131,7 +137,8 @@ "$ref": "Location" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "getSharedRegionalCertificateAuthority": { @@ -156,11 +163,12 @@ "$ref": "SharedRegionalCertificateAuthority" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "redis.projects.locations.list", @@ -169,7 +177,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -203,11 +211,194 @@ "$ref": "ListLocationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] } }, "resources": { + "aclPolicies": { + "methods": { + "create": { + "description": "Creates an ACL Policy. The creation is executed synchronously and the policy is available for use immediately after the RPC returns.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/aclPolicies", + "httpMethod": "POST", + "id": "redis.projects.locations.aclPolicies.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "aclPolicyId": { + "description": "Required. The logical name of the ACL Policy in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the cluster location using the form: `projects/{project_id}/locations/{location_id}` where `location_id` refers to a Google Cloud region.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. Idempotent request UUID. .", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/aclPolicies", + "request": { + "$ref": "AclPolicy" + }, + "response": { + "$ref": "AclPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "delete": { + "description": "Deletes a specific Acl Policy. This action will delete the Acl Policy and all the rules associated with it. An ACL policy cannot be deleted if it is attached to a cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/aclPolicies/{aclPoliciesId}", + "httpMethod": "DELETE", + "id": "redis.projects.locations.aclPolicies.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. Etag of the ACL policy. If this is different from the server's etag, the request will fail with an ABORTED error.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. Redis ACL Policy resource name using the form: `projects/{project_id}/locations/{location_id}/aclPolicies/{acl_policy_id}` where `location_id` refers to a GCP region.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/aclPolicies/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. Idempotent request UUID.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "get": { + "description": "Gets the details of a specific Redis Cluster ACL Policy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/aclPolicies/{aclPoliciesId}", + "httpMethod": "GET", + "id": "redis.projects.locations.aclPolicies.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Redis ACL Policy resource name using the form: `projects/{project_id}/locations/{location_id}/aclPolicies/{acl_policy_id}` where `location_id` refers to a GCP region.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/aclPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "AclPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "list": { + "description": "Lists all ACL Policies owned by a project in either the specified location (region) or all locations. The location should have the following format: * `projects/{project_id}/locations/{location_id}` If `location_id` is specified as `-` (wildcard), then all regions available to the project are queried, and the results are aggregated.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/aclPolicies", + "httpMethod": "GET", + "id": "redis.projects.locations.aclPolicies.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more ACL policies left to be queried. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The `next_page_token` value returned from a previous `ListAclPolicies` request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the cluster location using the form: `projects/{project_id}/locations/{location_id}` where `location_id` refers to a Google Cloud region.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/aclPolicies", + "response": { + "$ref": "ListAclPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "patch": { + "description": "Updates the ACL policy. The operation applies the updated ACL policy to all of the linked clusters. If Memorystore can apply the policy to all clusters, then the operation returns a SUCCESS status. If Memorystore can't apply the policy to all clusters, then to ensure eventual consistency, Memorystore uses reconciliation to apply the policy to the failed clusters. Completed longrunning.Operation will contain the new ACL Policy object in the response field.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/aclPolicies/{aclPoliciesId}", + "httpMethod": "PATCH", + "id": "redis.projects.locations.aclPolicies.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. Full resource path of the ACL policy.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/aclPolicies/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. Idempotent request UUID.", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Mask of fields to be updated. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from `AclPolicy`: * `rules`", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "AclPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + } + } + }, "backupCollections": { "methods": { "get": { @@ -232,7 +423,8 @@ "$ref": "BackupCollection" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "list": { @@ -268,7 +460,8 @@ "$ref": "ListBackupCollectionsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] } }, @@ -302,7 +495,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "export": { @@ -330,7 +524,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "get": { @@ -355,7 +550,8 @@ "$ref": "Backup" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "list": { @@ -391,7 +587,8 @@ "$ref": "ListBackupsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] } } @@ -400,6 +597,35 @@ }, "clusters": { "methods": { + "addTokenAuthUser": { + "description": "Adds a token auth user for a token based auth enabled cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:addTokenAuthUser", + "httpMethod": "POST", + "id": "redis.projects.locations.clusters.addTokenAuthUser", + "parameterOrder": [ + "cluster" + ], + "parameters": { + "cluster": { + "description": "Required. The cluster resource that this token auth user will be added for. Format: projects/{project}/locations/{location}/clusters/{cluster}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+cluster}:addTokenAuthUser", + "request": { + "$ref": "AddTokenAuthUserRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, "backup": { "description": "Backup Redis Cluster. If this is the first time a backup is being created, a backup collection will be created at the backend, and this backup belongs to this collection. Both collection and backup will have a resource name. Backup will be executed for each shard. A replica (primary if nonHA) will be selected to perform the execution. Backup call will be rejected if there is an ongoing backup or update operation. Be aware that during preview, if the cluster's internal software version is too old, critical update will be performed before actual backup. Once the internal software version is updated to the minimum version required by the backup feature, subsequent backups will not require critical update. After preview, there will be no critical update needed for backup.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:backup", @@ -425,7 +651,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "create": { @@ -463,7 +690,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "delete": { @@ -493,7 +721,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "get": { @@ -518,7 +747,8 @@ "$ref": "Cluster" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "getCertificateAuthority": { @@ -543,7 +773,8 @@ "$ref": "CertificateAuthority" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "list": { @@ -562,7 +793,7 @@ "type": "integer" }, "pageToken": { - "description": "The `next_page_token` value returned from a previous ListClusters request, if any.", + "description": "The `next_page_token` value returned from a previous `ListClusters` request, if any.", "location": "query", "type": "string" }, @@ -579,7 +810,8 @@ "$ref": "ListClustersResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "patch": { @@ -618,7 +850,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "rescheduleClusterMaintenance": { @@ -646,9 +879,259 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] } + }, + "resources": { + "tokenAuthUsers": { + "methods": { + "addAuthToken": { + "description": "Adds a auth token for a user of a token based auth enabled cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers/{tokenAuthUsersId}:addAuthToken", + "httpMethod": "POST", + "id": "redis.projects.locations.clusters.tokenAuthUsers.addAuthToken", + "parameterOrder": [ + "tokenAuthUser" + ], + "parameters": { + "tokenAuthUser": { + "description": "Required. The name of the token auth user resource that this auth token will be added for. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/tokenAuthUsers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+tokenAuthUser}:addAuthToken", + "request": { + "$ref": "AddAuthTokenRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "delete": { + "description": "Deletes a token auth user for a token based auth enabled cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers/{tokenAuthUsersId}", + "httpMethod": "DELETE", + "id": "redis.projects.locations.clusters.tokenAuthUsers.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "force": { + "description": "Optional. If set to true, any child auth tokens of this user will also be deleted. Otherwise, the request will only work if the user has no auth tokens.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the token auth user to delete. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/tokenAuthUsers/[^/]+$", + "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": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "get": { + "description": "Gets a specific token auth user for a basic auth enabled cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers/{tokenAuthUsersId}", + "httpMethod": "GET", + "id": "redis.projects.locations.clusters.tokenAuthUsers.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of token auth user for a token based auth enabled cluster. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/tokenAuthUsers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "TokenAuthUser" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "list": { + "description": "Lists all the token auth users for a token based auth enabled cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers", + "httpMethod": "GET", + "id": "redis.projects.locations.clusters.tokenAuthUsers.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Expression for filtering results.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Sort results by a defined order.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's The maximum value is 1000; values above 1000 will be coerced to 1000. `next_page_token` to determine if there are more clusters left to be queried.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The `next_page_token` value returned from a previous [ListTokenAuthUsers] request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource that this token based auth user will be listed for. Format: projects/{project}/locations/{location}/clusters/{cluster}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/tokenAuthUsers", + "response": { + "$ref": "ListTokenAuthUsersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + } + }, + "resources": { + "authTokens": { + "methods": { + "delete": { + "description": "Removes a auth token for a user of a token based auth enabled instance.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers/{tokenAuthUsersId}/authTokens/{authTokensId}", + "httpMethod": "DELETE", + "id": "redis.projects.locations.clusters.tokenAuthUsers.authTokens.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the token auth user resource that this auth token will be deleted from. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}/authTokens/{auth_token}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/tokenAuthUsers/[^/]+/authTokens/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "get": { + "description": "Gets a specific auth token for a specific token auth user.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers/{tokenAuthUsersId}/authTokens/{authTokensId}", + "httpMethod": "GET", + "id": "redis.projects.locations.clusters.tokenAuthUsers.authTokens.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of auth token for a token based auth enabled cluster. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}/authTokens/{auth_token}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/tokenAuthUsers/[^/]+/authTokens/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "AuthToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + }, + "list": { + "description": "Lists all the auth tokens for a specific token auth user.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/tokenAuthUsers/{tokenAuthUsersId}/authTokens", + "httpMethod": "GET", + "id": "redis.projects.locations.clusters.tokenAuthUsers.authTokens.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Expression for filtering results.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Sort results by a defined order.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of items to return. The maximum value is 1000; values above 1000 will be coerced to 1000. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The `next_page_token` value returned from a previous [ListTokenAuthUsers] request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource that this auth token will be listed for. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/tokenAuthUsers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/authTokens", + "response": { + "$ref": "ListAuthTokensResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" + ] + } + } + } + } + } } }, "instances": { @@ -683,7 +1166,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "delete": { @@ -708,7 +1192,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "export": { @@ -736,7 +1221,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "failover": { @@ -764,7 +1250,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "get": { @@ -789,7 +1276,9 @@ "$ref": "Instance" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-only", + "https://www.googleapis.com/auth/redis.read-write" ] }, "getAuthString": { @@ -814,7 +1303,9 @@ "$ref": "InstanceAuthString" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-only", + "https://www.googleapis.com/auth/redis.read-write" ] }, "import": { @@ -842,7 +1333,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "list": { @@ -878,7 +1370,9 @@ "$ref": "ListInstancesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-only", + "https://www.googleapis.com/auth/redis.read-write" ] }, "patch": { @@ -912,7 +1406,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "rescheduleMaintenance": { @@ -940,7 +1435,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "upgrade": { @@ -968,7 +1464,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] } } @@ -997,7 +1494,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "delete": { @@ -1022,7 +1520,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "get": { @@ -1047,7 +1546,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] }, "list": { @@ -1093,7 +1593,8 @@ "$ref": "ListOperationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/redis.read-write" ] } } @@ -1103,7 +1604,7 @@ } } }, - "revision": "20260210", + "revision": "20260423", "rootUrl": "https://redis.googleapis.com/", "schemas": { "AOFConfig": { @@ -1129,6 +1630,128 @@ }, "type": "object" }, + "AclPolicy": { + "description": "The ACL policy resource.", + "id": "AclPolicy", + "properties": { + "etag": { + "description": "Output only. Etag for the ACL policy.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. Full resource path of the ACL policy.", + "type": "string" + }, + "rules": { + "description": "Required. The ACL rules within the ACL policy.", + "items": { + "$ref": "AclRule" + }, + "type": "array" + }, + "state": { + "description": "Output only. The state of the ACL policy.", + "enum": [ + "STATE_UNSPECIFIED", + "ACTIVE", + "UPDATING", + "DELETING" + ], + "enumDescriptions": [ + "Not set.", + "ACL Policy has been created and is fully usable. Since ACL Policy creation is synchronous and not an LRO, there is no CREATING state.", + "ACL Policy is being updated.", + "ACL Policy is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "version": { + "description": "Output only. The version of the ACL policy. Used in drift resolution.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "AclRule": { + "description": "A single ACL rule which defines the policy for a user.", + "id": "AclRule", + "properties": { + "rule": { + "description": "Required. The rule to be applied to the username. Ex: \"on >password123 ~* +@all\" The format of the rule is defined by Redis OSS: https://redis.io/docs/latest/operate/oss_and_stack/management/security/acl/", + "type": "string" + }, + "username": { + "description": "Required. Specifies the IAM user or service account to be added to the ACL policy. This username will be directly set on the Redis OSS.", + "type": "string" + } + }, + "type": "object" + }, + "AddAuthTokenRequest": { + "description": "Request message for AddAuthToken.", + "id": "AddAuthTokenRequest", + "properties": { + "authToken": { + "$ref": "AuthToken", + "description": "Required. The auth token to add." + } + }, + "type": "object" + }, + "AddTokenAuthUserRequest": { + "description": "Request message for AddTokenAuthUser.", + "id": "AddTokenAuthUserRequest", + "properties": { + "tokenAuthUser": { + "description": "Required. The id of the token auth user to add.", + "type": "string" + } + }, + "type": "object" + }, + "AuthToken": { + "description": "Auth token for the cluster.", + "id": "AuthToken", + "properties": { + "createTime": { + "description": "Output only. Create time of the auth token.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. Name of the auth token. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}/authTokens/{auth_token}", + "type": "string" + }, + "state": { + "description": "Output only. State of the auth token.", + "enum": [ + "STATE_UNSPECIFIED", + "ACTIVE", + "CREATING", + "DELETING" + ], + "enumDescriptions": [ + "Not set.", + "The auth token is active.", + "The auth token is being created.", + "The auth token is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "token": { + "description": "Output only. The service generated authentication token used to connect to the Redis cluster.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "AutomatedBackupConfig": { "description": "The automated backup config for a cluster.", "id": "AutomatedBackupConfig", @@ -1268,14 +1891,20 @@ "REDIS_SHARED_CORE_NANO", "REDIS_HIGHMEM_MEDIUM", "REDIS_HIGHMEM_XLARGE", - "REDIS_STANDARD_SMALL" + "REDIS_STANDARD_SMALL", + "REDIS_HIGHCPU_MEDIUM", + "REDIS_STANDARD_LARGE", + "REDIS_HIGHMEM_2XLARGE" ], "enumDescriptions": [ "Node type unspecified", "Redis shared core nano node_type.", "Redis highmem medium node_type.", "Redis highmem xlarge node_type.", - "Redis standard small node_type." + "Redis standard small node_type.", + "Redis highcpu medium node_type.", + "Redis standard large node_type.", + "Redis highmem 2xlarge node_type." ], "readOnly": true, "type": "string" @@ -1326,7 +1955,7 @@ "type": "object" }, "BackupClusterRequest": { - "description": "Request for [BackupCluster].", + "description": "Request for `BackupCluster`.", "id": "BackupClusterRequest", "properties": { "backupId": { @@ -1548,6 +2177,15 @@ "description": "A cluster instance.", "id": "Cluster", "properties": { + "aclPolicy": { + "description": "Optional. The ACL policy to be applied to the cluster.", + "type": "string" + }, + "aclPolicyInSync": { + "description": "Optional. Output only. Indicates whether the ACL rules applied to the cluster are in sync with the latest ACL policy rules. This field is only applicable if the ACL policy is set for the cluster.", + "readOnly": true, + "type": "boolean" + }, "allowFewerZonesDeployment": { "deprecated": true, "description": "Optional. Immutable. Deprecated, do not use.", @@ -1562,12 +2200,14 @@ "enum": [ "AUTH_MODE_UNSPECIFIED", "AUTH_MODE_IAM_AUTH", - "AUTH_MODE_DISABLED" + "AUTH_MODE_DISABLED", + "AUTH_MODE_TOKEN_AUTH" ], "enumDescriptions": [ "Not set.", "IAM basic authorization mode", - "Authorization disabled mode" + "Authorization disabled mode", + "Token based authorization mode" ], "type": "string" }, @@ -1670,14 +2310,20 @@ "REDIS_SHARED_CORE_NANO", "REDIS_HIGHMEM_MEDIUM", "REDIS_HIGHMEM_XLARGE", - "REDIS_STANDARD_SMALL" + "REDIS_STANDARD_SMALL", + "REDIS_HIGHCPU_MEDIUM", + "REDIS_STANDARD_LARGE", + "REDIS_HIGHMEM_2XLARGE" ], "enumDescriptions": [ "Node type unspecified", "Redis shared core nano node_type.", "Redis highmem medium node_type.", "Redis highmem xlarge node_type.", - "Redis standard small node_type." + "Redis standard small node_type.", + "Redis highcpu medium node_type.", + "Redis standard large node_type.", + "Redis highmem 2xlarge node_type." ], "type": "string" }, @@ -2001,7 +2647,10 @@ "SIGNAL_TYPE_EXPOSED_TO_PUBLIC_ACCESS", "SIGNAL_TYPE_UNENCRYPTED_CONNECTIONS", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY" + "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE", + "SIGNAL_TYPE_LAST_BACKUP_OLD", + "SIGNAL_TYPE_NOT_PROTECTED_BY_AUTOMATIC_FAILOVER" ], "enumDescriptions": [ "Unspecified signal type.", @@ -2011,7 +2660,10 @@ "Represents if a resource is exposed to public access.", "Represents if a resources requires all incoming connections to use SSL or not.", "Represents if a resource version is in extended support.", - "Represents if a resource has no automated backup policy." + "Represents if a resource has no automated backup policy.", + "Represents if a resource version is nearing end of life.", + "Represents if the last backup of a resource is older than 24 hours.", + "Represents if a resource is not protected by automatic failover." ], "type": "string" } @@ -2382,7 +3034,8 @@ "SIGNAL_TYPE_DATABOOST_DISABLED", "SIGNAL_TYPE_RECOMMENDED_MAINTENANCE_POLICIES", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE" + "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE" ], "enumDeprecated": [ false, @@ -2490,6 +3143,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -2598,7 +3252,8 @@ "Databoost is disabled.", "Recommended maintenance policy.", "Resource version is in extended support.", - "Change in performance KPIs." + "Change in performance KPIs.", + "Database version nearing end of life." ], "type": "string" }, @@ -2662,7 +3317,7 @@ "type": "object" }, "DatabaseResourceMetadata": { - "description": "Common model for database resource instance metadata. Next ID: 31", + "description": "Common model for database resource instance metadata. Next ID: 32", "id": "DatabaseResourceMetadata", "properties": { "availabilityConfiguration": { @@ -2779,6 +3434,9 @@ "SUB_RESOURCE_TYPE_SECONDARY", "SUB_RESOURCE_TYPE_READ_REPLICA", "SUB_RESOURCE_TYPE_EXTERNAL_PRIMARY", + "SUB_RESOURCE_TYPE_READ_POOL", + "SUB_RESOURCE_TYPE_RESERVATION", + "SUB_RESOURCE_TYPE_DATASET", "SUB_RESOURCE_TYPE_OTHER" ], "enumDeprecated": [ @@ -2792,6 +3450,9 @@ false, false, false, + false, + false, + false, false ], "enumDescriptions": [ @@ -2805,6 +3466,9 @@ "A cluster or an instance acting as a secondary.", "An instance acting as a read-replica.", "An instance acting as an external primary.", + "An instance acting as Read Pool.", + "Represents a reservation resource.", + "Represents a dataset resource.", "For rest of the other categories." ], "type": "string" @@ -2825,6 +3489,25 @@ "$ref": "ResourceMaintenanceInfo", "description": "Optional. Maintenance info for the resource." }, + "modes": { + "description": "Optional. The modes of the database resource.", + "items": { + "enum": [ + "MODE_UNSPECIFIED", + "MODE_NATIVE", + "MODE_MONGODB_COMPATIBLE", + "MODE_DATASTORE" + ], + "enumDescriptions": [ + "Default mode.", + "Native mode.", + "MongoDB compatible mode.", + "Datastore mode." + ], + "type": "string" + }, + "type": "array" + }, "primaryResourceId": { "$ref": "DatabaseResourceId", "description": "Identifier for this resource's immediate parent/primary resource if the current resource is a replica or derived form of another Database resource. Else it would be NULL. REQUIRED if the immediate parent exists when first time resource is getting ingested, otherwise optional." @@ -3055,7 +3738,8 @@ "SIGNAL_TYPE_DATABOOST_DISABLED", "SIGNAL_TYPE_RECOMMENDED_MAINTENANCE_POLICIES", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE" + "SIGNAL_TYPE_PERFORMANCE_KPI_CHANGE", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE" ], "enumDeprecated": [ false, @@ -3163,6 +3847,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -3271,7 +3956,8 @@ "Databoost is disabled.", "Recommended maintenance policy.", "Resource version is in extended support.", - "Change in performance KPIs." + "Change in performance KPIs.", + "Database version nearing end of life." ], "type": "string" } @@ -3279,9 +3965,14 @@ "type": "object" }, "DatabaseResourceSignalData": { - "description": "Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 7", + "description": "Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 10", "id": "DatabaseResourceSignalData", "properties": { + "backupRun": { + "$ref": "BackupRun", + "deprecated": true, + "description": "Deprecated: Use signal_metadata_list instead." + }, "fullResourceName": { "description": "Required. Full Resource name of the source resource.", "type": "string" @@ -3291,14 +3982,26 @@ "format": "google-datetime", "type": "string" }, + "location": { + "description": "Required. Resource location.", + "type": "string" + }, "resourceId": { "$ref": "DatabaseResourceId", "description": "Database resource id." }, "signalBoolValue": { - "description": "Signal data for boolean signals.", + "deprecated": true, + "description": "Deprecated: Use signal_metadata_list instead.", "type": "boolean" }, + "signalMetadataList": { + "description": "This will support array of OneOf signal metadata information for a given signal type.", + "items": { + "$ref": "SignalMetadata" + }, + "type": "array" + }, "signalState": { "description": "Required. Output only. Signal state of the signal", "enum": [ @@ -3326,7 +4029,10 @@ "SIGNAL_TYPE_EXPOSED_TO_PUBLIC_ACCESS", "SIGNAL_TYPE_UNENCRYPTED_CONNECTIONS", "SIGNAL_TYPE_EXTENDED_SUPPORT", - "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY" + "SIGNAL_TYPE_NO_AUTOMATED_BACKUP_POLICY", + "SIGNAL_TYPE_VERSION_NEARING_END_OF_LIFE", + "SIGNAL_TYPE_LAST_BACKUP_OLD", + "SIGNAL_TYPE_NOT_PROTECTED_BY_AUTOMATIC_FAILOVER" ], "enumDescriptions": [ "Unspecified signal type.", @@ -3336,7 +4042,10 @@ "Represents if a resource is exposed to public access.", "Represents if a resources requires all incoming connections to use SSL or not.", "Represents if a resource version is in extended support.", - "Represents if a resource has no automated backup policy." + "Represents if a resource has no automated backup policy.", + "Represents if a resource version is nearing end of life.", + "Represents if the last backup of a resource is older than 24 hours.", + "Represents if a resource is not protected by automatic failover." ], "type": "string" } @@ -3501,7 +4210,7 @@ "type": "object" }, "ExportBackupRequest": { - "description": "Request for [ExportBackup].", + "description": "Request for `ExportBackup`.", "id": "ExportBackupRequest", "properties": { "gcsBucket": { @@ -3834,7 +4543,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. Redis configuration parameters, according to http://redis.io/topics/config. Currently, the only supported parameters are: Redis version 3.2 and newer: * maxmemory-policy * notify-keyspace-events Redis version 4.0 and newer: * activedefrag * lfu-decay-time * lfu-log-factor * maxmemory-gb Redis version 5.0 and newer: * stream-node-max-bytes * stream-node-max-entries", + "description": "Optional. Redis configuration parameters, according to [Redis configuration](https://redis.io/docs/latest/operate/oss_and_stack/management/config/). Currently, the only supported parameters are: Redis version 3.2 and newer: * maxmemory-policy * notify-keyspace-events Redis version 4.0 and newer: * activedefrag * lfu-decay-time * lfu-log-factor * maxmemory-gb Redis version 5.0 and newer: * stream-node-max-bytes * stream-node-max-entries", "type": "object" }, "redisVersion": { @@ -3997,8 +4706,58 @@ }, "type": "object" }, + "ListAclPoliciesResponse": { + "description": "Response for `ListAclPolicies`.", + "id": "ListAclPoliciesResponse", + "properties": { + "aclPolicies": { + "description": "A list of ACL policies in the project in the specified location, or across all locations. If the `location_id` in the parent field of the request is \"-\", all regions available to the project are queried, and the results aggregated.", + "items": { + "$ref": "AclPolicy" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListAuthTokensResponse": { + "description": "Response message for ListAuthTokens.", + "id": "ListAuthTokensResponse", + "properties": { + "authTokens": { + "description": "A list of auth tokens in the project.", + "items": { + "$ref": "AuthToken" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", + "type": "string" + }, + "unreachable": { + "description": "Unordered list. Auth tokens that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListBackupCollectionsResponse": { - "description": "Response for [ListBackupCollections].", + "description": "Response for `ListBackupCollections`.", "id": "ListBackupCollectionsResponse", "properties": { "backupCollections": { @@ -4023,7 +4782,7 @@ "type": "object" }, "ListBackupsResponse": { - "description": "Response for [ListBackups].", + "description": "Response for `ListBackups`.", "id": "ListBackupsResponse", "properties": { "backups": { @@ -4048,7 +4807,7 @@ "type": "object" }, "ListClustersResponse": { - "description": "Response for ListClusters.", + "description": "Response for `ListClusters`.", "id": "ListClustersResponse", "properties": { "clusters": { @@ -4140,6 +4899,31 @@ }, "type": "object" }, + "ListTokenAuthUsersResponse": { + "description": "Response message for ListTokenAuthUsers.", + "id": "ListTokenAuthUsersResponse", + "properties": { + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", + "type": "string" + }, + "tokenAuthUsers": { + "description": "A list of token auth users in the project.", + "items": { + "$ref": "TokenAuthUser" + }, + "type": "array" + }, + "unreachable": { + "description": "Unordered list. Token auth users that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "Location": { "description": "A resource that represents a Google Cloud location.", "id": "Location", @@ -5247,6 +6031,21 @@ }, "type": "object" }, + "SignalMetadata": { + "description": "SignalMetadata contains one of the signal metadata proto messages associated with a SignalType. This proto will be mapped to SignalMetadata message in storage.proto. Next ID: 3", + "id": "SignalMetadata", + "properties": { + "backupRun": { + "$ref": "BackupRun", + "description": "Signal data for backup runs." + }, + "signalBoolValue": { + "description": "Signal data for boolean signals.", + "type": "boolean" + } + }, + "type": "object" + }, "StateInfo": { "description": "Represents additional information about the state of the cluster.", "id": "StateInfo", @@ -5357,6 +6156,36 @@ }, "type": "object" }, + "TokenAuthUser": { + "description": "Represents a token based auth user for the cluster.", + "id": "TokenAuthUser", + "properties": { + "name": { + "description": "Identifier. The resource name of the token based auth user. Format: projects/{project}/locations/{location}/clusters/{cluster}/tokenAuthUsers/{token_auth_user}", + "type": "string" + }, + "state": { + "description": "Output only. The state of the token based auth user.", + "enum": [ + "STATE_UNSPECIFIED", + "ACTIVE", + "CREATING", + "UPDATING", + "DELETING" + ], + "enumDescriptions": [ + "Not set.", + "The auth user is active.", + "The auth user is being created.", + "The auth user is being updated.", + "The auth user is being deleted." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "TypedValue": { "description": "TypedValue represents the value of a metric type. It can either be a double, an int64, a string or a bool.", "id": "TypedValue", @@ -5410,14 +6239,20 @@ "REDIS_SHARED_CORE_NANO", "REDIS_HIGHMEM_MEDIUM", "REDIS_HIGHMEM_XLARGE", - "REDIS_STANDARD_SMALL" + "REDIS_STANDARD_SMALL", + "REDIS_HIGHCPU_MEDIUM", + "REDIS_STANDARD_LARGE", + "REDIS_HIGHMEM_2XLARGE" ], "enumDescriptions": [ "Node type unspecified", "Redis shared core nano node_type.", "Redis highmem medium node_type.", "Redis highmem xlarge node_type.", - "Redis standard small node_type." + "Redis standard small node_type.", + "Redis highcpu medium node_type.", + "Redis standard large node_type.", + "Redis highmem 2xlarge node_type." ], "type": "string" }, diff --git a/discovery/retail-v2.json b/discovery/retail-v2.json index f9af2d2beff..6bf97bd066e 100644 --- a/discovery/retail-v2.json +++ b/discovery/retail-v2.json @@ -2353,7 +2353,7 @@ } } }, - "revision": "20260219", + "revision": "20260423", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -6172,7 +6172,7 @@ "description": "This field specifies all related information that is needed on client side for UI rendering of conversational retail search." }, "correctedQuery": { - "description": "Contains the spell corrected query, if found. If the spell correction type is AUTOMATIC, then the search results are based on corrected_query. Otherwise the original query is used for search.", + "description": "Contains the spell corrected query, if found. The search results are based on corrected_query by default. However, if SearchRequest.SpellCorrectionSpec.mode is set to SearchRequest.SpellCorrectionSpec.Mode.SUGGESTION_ONLY, the original query is used for search.", "type": "string" }, "experimentInfo": { diff --git a/discovery/retail-v2alpha.json b/discovery/retail-v2alpha.json index a2555a39b43..41fe295ca7c 100644 --- a/discovery/retail-v2alpha.json +++ b/discovery/retail-v2alpha.json @@ -2874,7 +2874,7 @@ } } }, - "revision": "20260219", + "revision": "20260423", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -8074,7 +8074,7 @@ "description": "This field specifies all related information that is needed on client side for UI rendering of conversational retail search." }, "correctedQuery": { - "description": "Contains the spell corrected query, if found. If the spell correction type is AUTOMATIC, then the search results are based on corrected_query. Otherwise the original query is used for search.", + "description": "Contains the spell corrected query, if found. The search results are based on corrected_query by default. However, if SearchRequest.SpellCorrectionSpec.mode is set to SearchRequest.SpellCorrectionSpec.Mode.SUGGESTION_ONLY, the original query is used for search.", "type": "string" }, "experimentInfo": { diff --git a/discovery/retail-v2beta.json b/discovery/retail-v2beta.json index 9596a1c57cc..71df9a58b8b 100644 --- a/discovery/retail-v2beta.json +++ b/discovery/retail-v2beta.json @@ -2498,7 +2498,7 @@ } } }, - "revision": "20260219", + "revision": "20260423", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -7982,7 +7982,7 @@ "description": "This field specifies all related information that is needed on client side for UI rendering of conversational retail search." }, "correctedQuery": { - "description": "Contains the spell corrected query, if found. If the spell correction type is AUTOMATIC, then the search results are based on corrected_query. Otherwise the original query is used for search.", + "description": "Contains the spell corrected query, if found. The search results are based on corrected_query by default. However, if SearchRequest.SpellCorrectionSpec.mode is set to SearchRequest.SpellCorrectionSpec.Mode.SUGGESTION_ONLY, the original query is used for search.", "type": "string" }, "experimentInfo": { diff --git a/discovery/run-v1.json b/discovery/run-v1.json index b0afcae0204..fe96af408e1 100644 --- a/discovery/run-v1.json +++ b/discovery/run-v1.json @@ -1221,6 +1221,35 @@ "https://www.googleapis.com/auth/run.readonly" ] }, + "replaceInstance": { + "description": "Replace an Instance.", + "flatPath": "apis/run.googleapis.com/v1/namespaces/{namespacesId}/instances/{instancesId}", + "httpMethod": "PUT", + "id": "run.namespaces.instances.replaceInstance", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Instance being replaced. Replace {namespace} with the project ID or number. It takes the form namespaces/{namespace}. For example: namespaces/PROJECT_ID", + "location": "path", + "pattern": "^namespaces/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "apis/run.googleapis.com/v1/{+name}", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/run" + ] + }, "start": { "description": "Start an Instance which has been stopped.", "flatPath": "apis/run.googleapis.com/v1/namespaces/{namespacesId}/instances/{instancesId}:start", @@ -2261,7 +2290,7 @@ "locations": { "methods": { "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "run.projects.locations.list", @@ -2270,7 +2299,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -3583,7 +3612,7 @@ } } }, - "revision": "20260220", + "revision": "20260427", "rootUrl": "https://run.googleapis.com/", "schemas": { "Addressable": { @@ -4483,6 +4512,13 @@ "description": "Artifacts produced by a build that should be uploaded upon successful completion of all build steps.", "id": "GoogleDevtoolsCloudbuildV1Artifacts", "properties": { + "genericArtifacts": { + "description": "Optional. A list of generic artifacts to be uploaded to Artifact Registry upon successful completion of all build steps. If any artifacts fail to be pushed, the build is marked FAILURE.", + "items": { + "$ref": "GoogleDevtoolsCloudbuildV1GenericArtifact" + }, + "type": "array" + }, "goModules": { "description": "Optional. A list of Go modules to be uploaded to Artifact Registry upon successful completion of all build steps. If any objects fail to be pushed, the build is marked FAILURE.", "items": { @@ -4515,6 +4551,13 @@ "$ref": "GoogleDevtoolsCloudbuildV1ArtifactObjects", "description": "A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the specified Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE." }, + "oci": { + "description": "Optional. A list of OCI images to be uploaded to Artifact Registry upon successful completion of all build steps. OCI images in the specified paths will be uploaded to the specified Artifact Registry repository using the builder service account's credentials. If any images fail to be pushed, the build is marked FAILURE.", + "items": { + "$ref": "GoogleDevtoolsCloudbuildV1Oci" + }, + "type": "array" + }, "pythonPackages": { "description": "A list of Python packages to be uploaded to Artifact Registry upon successful completion of all build steps. The build service account credentials will be used to perform the upload. If any objects fail to be pushed, the build is marked FAILURE.", "items": { @@ -4919,14 +4962,16 @@ "SHA256", "MD5", "GO_MODULE_H1", - "SHA512" + "SHA512", + "DIRSUM_SHA256" ], "enumDescriptions": [ "No hash requested.", "Use a sha256 hash.", "Use a md5 hash.", "Dirhash of a Go module's source code which is then hex-encoded.", - "Use a sha512 hash." + "Use a sha512 hash.", + "Use a dirsum_sha256 hash." ], "type": "string" }, @@ -5020,6 +5065,13 @@ "description": "Output only. Stores timing information for pulling this build step's builder image only.", "readOnly": true }, + "results": { + "description": "Declaration of results for this build step.", + "items": { + "$ref": "GoogleDevtoolsCloudbuildV1StepResult" + }, + "type": "array" + }, "script": { "description": "A shell script to be executed in the step. When script is provided, the user cannot specify the entrypoint or args.", "type": "string" @@ -5087,6 +5139,20 @@ }, "type": "object" }, + "GoogleDevtoolsCloudbuildV1BuildStepResults": { + "description": "Results for a build step.", + "id": "GoogleDevtoolsCloudbuildV1BuildStepResults", + "properties": { + "results": { + "additionalProperties": { + "type": "string" + }, + "description": "Results for a build step.", + "type": "object" + } + }, + "type": "object" + }, "GoogleDevtoolsCloudbuildV1BuiltImage": { "description": "An image built by the pipeline.", "id": "GoogleDevtoolsCloudbuildV1BuiltImage", @@ -5104,6 +5170,21 @@ "description": "Name used to push the container image to Google Container Registry, as presented to `docker push`.", "type": "string" }, + "ociMediaType": { + "description": "Output only. The OCI media type of the artifact. Non-OCI images, such as Docker images, will have an unspecified value.", + "enum": [ + "OCI_MEDIA_TYPE_UNSPECIFIED", + "IMAGE_MANIFEST", + "IMAGE_INDEX" + ], + "enumDescriptions": [ + "Default value.", + "The artifact is an image manifest, which represents a single image with all its layers.", + "The artifact is an image index, which can contain a list of image manifests." + ], + "readOnly": true, + "type": "string" + }, "pushTiming": { "$ref": "GoogleDevtoolsCloudbuildV1TimeSpan", "description": "Output only. Stores timing information for pushing the specified image.", @@ -5139,6 +5220,10 @@ "description": "If set to true disable all dependency fetching (ignoring the default source as well).", "type": "boolean" }, + "genericArtifact": { + "$ref": "GoogleDevtoolsCloudbuildV1GenericArtifactDependency", + "description": "Represents a generic artifact as a build dependency." + }, "gitSource": { "$ref": "GoogleDevtoolsCloudbuildV1GitSourceDependency", "description": "Represents a git repository as a build dependency." @@ -5212,6 +5297,36 @@ }, "type": "object" }, + "GoogleDevtoolsCloudbuildV1GenericArtifact": { + "description": "Generic artifact to upload to Artifact Registry upon successful completion of all build steps.", + "id": "GoogleDevtoolsCloudbuildV1GenericArtifact", + "properties": { + "folder": { + "description": "Required. Path to the generic artifact in the build's workspace to be uploaded to Artifact Registry.", + "type": "string" + }, + "registryPath": { + "description": "Required. Registry path to upload the generic artifact to, in the form projects/$PROJECT/locations/$LOCATION/repositories/$REPO/packages/$PACKAGE/versions/$VERSION", + "type": "string" + } + }, + "type": "object" + }, + "GoogleDevtoolsCloudbuildV1GenericArtifactDependency": { + "description": "Represents a generic artifact as a build dependency.", + "id": "GoogleDevtoolsCloudbuildV1GenericArtifactDependency", + "properties": { + "destPath": { + "description": "Required. Where the artifact files should be placed on the worker.", + "type": "string" + }, + "resource": { + "description": "Required. The location to download the artifact files from. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1", + "type": "string" + } + }, + "type": "object" + }, "GoogleDevtoolsCloudbuildV1GitConfig": { "description": "GitConfig is a configuration for git operations.", "id": "GoogleDevtoolsCloudbuildV1GitConfig", @@ -5327,14 +5442,16 @@ "SHA256", "MD5", "GO_MODULE_H1", - "SHA512" + "SHA512", + "DIRSUM_SHA256" ], "enumDescriptions": [ "No hash requested.", "Use a sha256 hash.", "Use a md5 hash.", "Dirhash of a Go module's source code which is then hex-encoded.", - "Use a sha512 hash." + "Use a sha512 hash.", + "Use a dirsum_sha256 hash." ], "type": "string" }, @@ -5422,6 +5539,28 @@ }, "type": "object" }, + "GoogleDevtoolsCloudbuildV1Oci": { + "description": "OCI image to upload to Artifact Registry upon successful completion of all build steps.", + "id": "GoogleDevtoolsCloudbuildV1Oci", + "properties": { + "file": { + "description": "Required. Path on the local file system where to find the container to upload. e.g. /workspace/my-image.tar", + "type": "string" + }, + "registryPath": { + "description": "Required. Registry path to upload the container to. e.g. us-east1-docker.pkg.dev/my-project/my-repo/my-image", + "type": "string" + }, + "tags": { + "description": "Optional. Tags to apply to the uploaded image. e.g. latest, 1.0.0", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleDevtoolsCloudbuildV1PoolOption": { "description": "Details about how a build should be executed on a `WorkerPool`. See [running builds in a private pool](https://cloud.google.com/build/docs/private-pools/run-builds-in-private-pool) for more information.", "id": "GoogleDevtoolsCloudbuildV1PoolOption", @@ -5520,6 +5659,21 @@ }, "type": "array" }, + "buildStepResults": { + "additionalProperties": { + "$ref": "GoogleDevtoolsCloudbuildV1BuildStepResults" + }, + "description": "Results for build steps. step_id -> ", + "type": "object" + }, + "genericArtifacts": { + "description": "Output only. Generic artifacts uploaded to Artifact Registry at the end of the build.", + "items": { + "$ref": "GoogleDevtoolsCloudbuildV1UploadedGenericArtifact" + }, + "readOnly": true, + "type": "array" + }, "goModules": { "description": "Optional. Go module artifacts uploaded to Artifact Registry at the end of the build.", "items": { @@ -5686,6 +5840,25 @@ }, "type": "object" }, + "GoogleDevtoolsCloudbuildV1StepResult": { + "description": "StepResult is the declaration of a result for a build step.", + "id": "GoogleDevtoolsCloudbuildV1StepResult", + "properties": { + "attestationContent": { + "description": "Optional. The content of the attestation to be generated.", + "type": "string" + }, + "attestationType": { + "description": "Optional. The type of attestation to be generated.", + "type": "string" + }, + "name": { + "description": "Required. The name of the result.", + "type": "string" + } + }, + "type": "object" + }, "GoogleDevtoolsCloudbuildV1StorageSource": { "description": "Location of the source in an archive file in Cloud Storage.", "id": "GoogleDevtoolsCloudbuildV1StorageSource", @@ -5757,6 +5930,41 @@ }, "type": "object" }, + "GoogleDevtoolsCloudbuildV1UploadedGenericArtifact": { + "description": "A generic artifact uploaded to Artifact Registry using the GenericArtifact directive.", + "id": "GoogleDevtoolsCloudbuildV1UploadedGenericArtifact", + "properties": { + "artifactFingerprint": { + "$ref": "GoogleDevtoolsCloudbuildV1FileHashes", + "description": "Output only. The hash of the whole artifact.", + "readOnly": true + }, + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, + "fileHashes": { + "additionalProperties": { + "$ref": "GoogleDevtoolsCloudbuildV1FileHashes" + }, + "description": "Output only. The file hashes that make up the generic artifact.", + "readOnly": true, + "type": "object" + }, + "pushTiming": { + "$ref": "GoogleDevtoolsCloudbuildV1TimeSpan", + "description": "Output only. Stores timing information for pushing the specified artifact.", + "readOnly": true + }, + "uri": { + "description": "Output only. URI of the uploaded artifact. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleDevtoolsCloudbuildV1UploadedGoModule": { "description": "A Go module artifact uploaded to Artifact Registry using the GoModule directive.", "id": "GoogleDevtoolsCloudbuildV1UploadedGoModule", @@ -7754,7 +7962,7 @@ "type": "boolean" }, "subPath": { - "description": "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root).", + "description": "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root). This field is currently rejected in Secret volume mounts.", "type": "string" } }, diff --git a/discovery/run-v2.json b/discovery/run-v2.json index b6b7578fc06..d76a8433e6d 100644 --- a/discovery/run-v2.json +++ b/discovery/run-v2.json @@ -830,6 +830,39 @@ "https://www.googleapis.com/auth/run.readonly" ] }, + "getIamPolicy": { + "description": "Gets the IAM Access Control policy currently in effect for the given Instance. This result does not include any inherited policies.", + "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/instances/{instancesId}:getIamPolicy", + "httpMethod": "GET", + "id": "run.projects.locations.instances.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/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+resource}:getIamPolicy", + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/run", + "https://www.googleapis.com/auth/run.readonly" + ] + }, "list": { "description": "Lists Instances. Results are sorted by creation time, descending.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/instances", @@ -873,6 +906,80 @@ "https://www.googleapis.com/auth/run.readonly" ] }, + "patch": { + "description": "Updates an Instance.", + "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/instances/{instancesId}", + "httpMethod": "PATCH", + "id": "run.projects.locations.instances.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, and if the Instance does not exist, it will create a new one. The caller must have 'run.instances.create' permissions if this is set to true and the Instance does not exist.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "The fully qualified name of this Instance. In CreateInstanceRequest, this field is ignored, and instead composed from CreateInstanceRequest.parent and CreateInstanceRequest.instance_id. Format: projects/{project}/locations/{location}/instances/{instance_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The list of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. Indicates that the request should be validated and default values populated, without persisting the request or updating any resources.", + "location": "query", + "type": "boolean" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "GoogleCloudRunV2Instance" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/run" + ] + }, + "setIamPolicy": { + "description": "Sets the IAM Access control policy for the specified Instance. Overwrites any existing policy.", + "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/instances/{instancesId}:setIamPolicy", + "httpMethod": "POST", + "id": "run.projects.locations.instances.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/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+resource}:setIamPolicy", + "request": { + "$ref": "GoogleIamV1SetIamPolicyRequest" + }, + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/run" + ] + }, "start": { "description": "Starts an Instance.", "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/instances/{instancesId}:start", @@ -930,6 +1037,36 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/run" ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified Project. There are no permissions required for making this API call.", + "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/instances/{instancesId}:testIamPermissions", + "httpMethod": "POST", + "id": "run.projects.locations.instances.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/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+resource}:testIamPermissions", + "request": { + "$ref": "GoogleIamV1TestIamPermissionsRequest" + }, + "response": { + "$ref": "GoogleIamV1TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/run", + "https://www.googleapis.com/auth/run.readonly" + ] } } }, @@ -2473,7 +2610,7 @@ } } }, - "revision": "20260220", + "revision": "20260427", "rootUrl": "https://run.googleapis.com/", "schemas": { "GoogleCloudRunV2BinaryAuthorization": { @@ -2964,11 +3101,13 @@ "description": "The medium on which the data is stored. Acceptable values today is only MEMORY or none. When none, the default will currently be backed by memory but could change over time. +optional", "enum": [ "MEDIUM_UNSPECIFIED", - "MEMORY" + "MEMORY", + "DISK" ], "enumDescriptions": [ "When not specified, falls back to the default implementation which is currently in memory (this may change over time).", - "Explicitly set the EmptyDir to be in memory. Uses tmpfs." + "Explicitly set the EmptyDir to be in memory. Uses tmpfs.", + "Explicitly sets the EmptyDir to be a disk." ], "type": "string" }, @@ -3463,6 +3602,20 @@ }, "type": "object" }, + "GoogleCloudRunV2InlinedSource": { + "description": "Inlined source.", + "id": "GoogleCloudRunV2InlinedSource", + "properties": { + "sources": { + "description": "Required. Input only. The source code.", + "items": { + "$ref": "GoogleCloudRunV2SourceFile" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudRunV2Instance": { "description": "A Cloud Run Instance represents a single group of containers running in a region.", "id": "GoogleCloudRunV2Instance", @@ -4471,12 +4624,12 @@ "id": "GoogleCloudRunV2RevisionScaling", "properties": { "concurrencyUtilization": { - "description": "Optional. Determines a threshold for concurrency utilization before scaling begins. Accepted values are between `0.1` and `0.95` (inclusive) or `0.0` to disable concurrency utilization as threshold for scaling.", + "description": "Optional. Determines a threshold for concurrency utilization before scaling begins. Accepted values are between `0.1` and `0.95` (inclusive) or `0.0` to disable concurrency utilization as threshold for scaling. CPU and concurrency scaling cannot both be disabled.", "format": "float", "type": "number" }, "cpuUtilization": { - "description": "Optional. Determines a threshold for CPU utilization before scaling begins. Accepted values are between `0.1` and `0.95` (inclusive) or `0.0` to disable CPU utilization as threshold for scaling.", + "description": "Optional. Determines a threshold for CPU utilization before scaling begins. Accepted values are between `0.1` and `0.95` (inclusive) or `0.0` to disable CPU utilization as threshold for scaling. CPU and concurrency scaling cannot both be disabled.", "format": "float", "type": "number" }, @@ -4981,6 +5134,25 @@ "cloudStorageSource": { "$ref": "GoogleCloudRunV2CloudStorageSource", "description": "The source is a Cloud Storage bucket." + }, + "inlinedSource": { + "$ref": "GoogleCloudRunV2InlinedSource", + "description": "Optional. Input only. Source code inlined in the request. Cloud Run will store the inlined_source to Cloud Storage and replace the field with cloud_storage_source." + } + }, + "type": "object" + }, + "GoogleCloudRunV2SourceFile": { + "description": "Source file.", + "id": "GoogleCloudRunV2SourceFile", + "properties": { + "content": { + "description": "Required. Input only. Represents the exact, literal, and complete source code of the file. Placeholders like `...` or comments such as `# [rest of code]` should NEVER be used as omission. Every character in this field will be built into the final container. Any omission will result in a broken application.", + "type": "string" + }, + "filename": { + "description": "Required. Input only. The file name for the source code. e.g., `\"index.js\"` or `\"node_modules/dependency.js\"`. The filename must be less than 255 characters and cannot contain `..`, `./`, `//`, or end with a `/`. Cloud Run will place the files in the container subdirectories, please use relative path to access the file.", + "type": "string" } }, "type": "object" @@ -5565,7 +5737,7 @@ "type": "string" }, "subPath": { - "description": "Optional. Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root).", + "description": "Optional. Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root). This field is currently rejected in Secret volume mounts.", "type": "string" } }, @@ -5646,7 +5818,8 @@ "type": "string" }, "customAudiences": { - "description": "Not supported, and ignored by Cloud Run.", + "deprecated": true, + "description": "Deprecated: Not supported, and ignored by Cloud Run.", "items": { "type": "string" }, @@ -5971,6 +6144,13 @@ "description": "Artifacts produced by a build that should be uploaded upon successful completion of all build steps.", "id": "GoogleDevtoolsCloudbuildV1Artifacts", "properties": { + "genericArtifacts": { + "description": "Optional. A list of generic artifacts to be uploaded to Artifact Registry upon successful completion of all build steps. If any artifacts fail to be pushed, the build is marked FAILURE.", + "items": { + "$ref": "GoogleDevtoolsCloudbuildV1GenericArtifact" + }, + "type": "array" + }, "goModules": { "description": "Optional. A list of Go modules to be uploaded to Artifact Registry upon successful completion of all build steps. If any objects fail to be pushed, the build is marked FAILURE.", "items": { @@ -6003,6 +6183,13 @@ "$ref": "GoogleDevtoolsCloudbuildV1ArtifactObjects", "description": "A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the specified Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE." }, + "oci": { + "description": "Optional. A list of OCI images to be uploaded to Artifact Registry upon successful completion of all build steps. OCI images in the specified paths will be uploaded to the specified Artifact Registry repository using the builder service account's credentials. If any images fail to be pushed, the build is marked FAILURE.", + "items": { + "$ref": "GoogleDevtoolsCloudbuildV1Oci" + }, + "type": "array" + }, "pythonPackages": { "description": "A list of Python packages to be uploaded to Artifact Registry upon successful completion of all build steps. The build service account credentials will be used to perform the upload. If any objects fail to be pushed, the build is marked FAILURE.", "items": { @@ -6407,14 +6594,16 @@ "SHA256", "MD5", "GO_MODULE_H1", - "SHA512" + "SHA512", + "DIRSUM_SHA256" ], "enumDescriptions": [ "No hash requested.", "Use a sha256 hash.", "Use a md5 hash.", "Dirhash of a Go module's source code which is then hex-encoded.", - "Use a sha512 hash." + "Use a sha512 hash.", + "Use a dirsum_sha256 hash." ], "type": "string" }, @@ -6508,6 +6697,13 @@ "description": "Output only. Stores timing information for pulling this build step's builder image only.", "readOnly": true }, + "results": { + "description": "Declaration of results for this build step.", + "items": { + "$ref": "GoogleDevtoolsCloudbuildV1StepResult" + }, + "type": "array" + }, "script": { "description": "A shell script to be executed in the step. When script is provided, the user cannot specify the entrypoint or args.", "type": "string" @@ -6575,6 +6771,20 @@ }, "type": "object" }, + "GoogleDevtoolsCloudbuildV1BuildStepResults": { + "description": "Results for a build step.", + "id": "GoogleDevtoolsCloudbuildV1BuildStepResults", + "properties": { + "results": { + "additionalProperties": { + "type": "string" + }, + "description": "Results for a build step.", + "type": "object" + } + }, + "type": "object" + }, "GoogleDevtoolsCloudbuildV1BuiltImage": { "description": "An image built by the pipeline.", "id": "GoogleDevtoolsCloudbuildV1BuiltImage", @@ -6592,6 +6802,21 @@ "description": "Name used to push the container image to Google Container Registry, as presented to `docker push`.", "type": "string" }, + "ociMediaType": { + "description": "Output only. The OCI media type of the artifact. Non-OCI images, such as Docker images, will have an unspecified value.", + "enum": [ + "OCI_MEDIA_TYPE_UNSPECIFIED", + "IMAGE_MANIFEST", + "IMAGE_INDEX" + ], + "enumDescriptions": [ + "Default value.", + "The artifact is an image manifest, which represents a single image with all its layers.", + "The artifact is an image index, which can contain a list of image manifests." + ], + "readOnly": true, + "type": "string" + }, "pushTiming": { "$ref": "GoogleDevtoolsCloudbuildV1TimeSpan", "description": "Output only. Stores timing information for pushing the specified image.", @@ -6627,6 +6852,10 @@ "description": "If set to true disable all dependency fetching (ignoring the default source as well).", "type": "boolean" }, + "genericArtifact": { + "$ref": "GoogleDevtoolsCloudbuildV1GenericArtifactDependency", + "description": "Represents a generic artifact as a build dependency." + }, "gitSource": { "$ref": "GoogleDevtoolsCloudbuildV1GitSourceDependency", "description": "Represents a git repository as a build dependency." @@ -6700,6 +6929,36 @@ }, "type": "object" }, + "GoogleDevtoolsCloudbuildV1GenericArtifact": { + "description": "Generic artifact to upload to Artifact Registry upon successful completion of all build steps.", + "id": "GoogleDevtoolsCloudbuildV1GenericArtifact", + "properties": { + "folder": { + "description": "Required. Path to the generic artifact in the build's workspace to be uploaded to Artifact Registry.", + "type": "string" + }, + "registryPath": { + "description": "Required. Registry path to upload the generic artifact to, in the form projects/$PROJECT/locations/$LOCATION/repositories/$REPO/packages/$PACKAGE/versions/$VERSION", + "type": "string" + } + }, + "type": "object" + }, + "GoogleDevtoolsCloudbuildV1GenericArtifactDependency": { + "description": "Represents a generic artifact as a build dependency.", + "id": "GoogleDevtoolsCloudbuildV1GenericArtifactDependency", + "properties": { + "destPath": { + "description": "Required. Where the artifact files should be placed on the worker.", + "type": "string" + }, + "resource": { + "description": "Required. The location to download the artifact files from. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1", + "type": "string" + } + }, + "type": "object" + }, "GoogleDevtoolsCloudbuildV1GitConfig": { "description": "GitConfig is a configuration for git operations.", "id": "GoogleDevtoolsCloudbuildV1GitConfig", @@ -6815,14 +7074,16 @@ "SHA256", "MD5", "GO_MODULE_H1", - "SHA512" + "SHA512", + "DIRSUM_SHA256" ], "enumDescriptions": [ "No hash requested.", "Use a sha256 hash.", "Use a md5 hash.", "Dirhash of a Go module's source code which is then hex-encoded.", - "Use a sha512 hash." + "Use a sha512 hash.", + "Use a dirsum_sha256 hash." ], "type": "string" }, @@ -6910,6 +7171,28 @@ }, "type": "object" }, + "GoogleDevtoolsCloudbuildV1Oci": { + "description": "OCI image to upload to Artifact Registry upon successful completion of all build steps.", + "id": "GoogleDevtoolsCloudbuildV1Oci", + "properties": { + "file": { + "description": "Required. Path on the local file system where to find the container to upload. e.g. /workspace/my-image.tar", + "type": "string" + }, + "registryPath": { + "description": "Required. Registry path to upload the container to. e.g. us-east1-docker.pkg.dev/my-project/my-repo/my-image", + "type": "string" + }, + "tags": { + "description": "Optional. Tags to apply to the uploaded image. e.g. latest, 1.0.0", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleDevtoolsCloudbuildV1PoolOption": { "description": "Details about how a build should be executed on a `WorkerPool`. See [running builds in a private pool](https://cloud.google.com/build/docs/private-pools/run-builds-in-private-pool) for more information.", "id": "GoogleDevtoolsCloudbuildV1PoolOption", @@ -7008,6 +7291,21 @@ }, "type": "array" }, + "buildStepResults": { + "additionalProperties": { + "$ref": "GoogleDevtoolsCloudbuildV1BuildStepResults" + }, + "description": "Results for build steps. step_id -> ", + "type": "object" + }, + "genericArtifacts": { + "description": "Output only. Generic artifacts uploaded to Artifact Registry at the end of the build.", + "items": { + "$ref": "GoogleDevtoolsCloudbuildV1UploadedGenericArtifact" + }, + "readOnly": true, + "type": "array" + }, "goModules": { "description": "Optional. Go module artifacts uploaded to Artifact Registry at the end of the build.", "items": { @@ -7174,6 +7472,25 @@ }, "type": "object" }, + "GoogleDevtoolsCloudbuildV1StepResult": { + "description": "StepResult is the declaration of a result for a build step.", + "id": "GoogleDevtoolsCloudbuildV1StepResult", + "properties": { + "attestationContent": { + "description": "Optional. The content of the attestation to be generated.", + "type": "string" + }, + "attestationType": { + "description": "Optional. The type of attestation to be generated.", + "type": "string" + }, + "name": { + "description": "Required. The name of the result.", + "type": "string" + } + }, + "type": "object" + }, "GoogleDevtoolsCloudbuildV1StorageSource": { "description": "Location of the source in an archive file in Cloud Storage.", "id": "GoogleDevtoolsCloudbuildV1StorageSource", @@ -7245,6 +7562,41 @@ }, "type": "object" }, + "GoogleDevtoolsCloudbuildV1UploadedGenericArtifact": { + "description": "A generic artifact uploaded to Artifact Registry using the GenericArtifact directive.", + "id": "GoogleDevtoolsCloudbuildV1UploadedGenericArtifact", + "properties": { + "artifactFingerprint": { + "$ref": "GoogleDevtoolsCloudbuildV1FileHashes", + "description": "Output only. The hash of the whole artifact.", + "readOnly": true + }, + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, + "fileHashes": { + "additionalProperties": { + "$ref": "GoogleDevtoolsCloudbuildV1FileHashes" + }, + "description": "Output only. The file hashes that make up the generic artifact.", + "readOnly": true, + "type": "object" + }, + "pushTiming": { + "$ref": "GoogleDevtoolsCloudbuildV1TimeSpan", + "description": "Output only. Stores timing information for pushing the specified artifact.", + "readOnly": true + }, + "uri": { + "description": "Output only. URI of the uploaded artifact. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleDevtoolsCloudbuildV1UploadedGoModule": { "description": "A Go module artifact uploaded to Artifact Registry using the GoModule directive.", "id": "GoogleDevtoolsCloudbuildV1UploadedGoModule", diff --git a/discovery/saasservicemgmt-v1.json b/discovery/saasservicemgmt-v1.json new file mode 100644 index 00000000000..6716e5d9d75 --- /dev/null +++ b/discovery/saasservicemgmt-v1.json @@ -0,0 +1,3490 @@ +{ + "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://saasservicemgmt.googleapis.com/", + "batchPath": "batch", + "canonicalName": "SaaS Service Management", + "description": "Model, deploy, and operate your SaaS at scale. ", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/saas-runtime/docs", + "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": "saasservicemgmt:v1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://saasservicemgmt.mtls.googleapis.com/", + "name": "saasservicemgmt", + "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": "saasservicemgmt.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. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", + "flatPath": "v1/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "extraLocationTypes": { + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "location": "query", + "repeated": true, + "type": "string" + }, + "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": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "releases": { + "methods": { + "create": { + "description": "Create a new release.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/releases", + "httpMethod": "POST", + "id": "saasservicemgmt.projects.locations.releases.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent of the release.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "releaseId": { + "description": "Required. The ID value for the new release.", + "location": "query", + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/releases", + "request": { + "$ref": "Release" + }, + "response": { + "$ref": "Release" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a single release.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/releases/{releasesId}", + "httpMethod": "DELETE", + "id": "saasservicemgmt.projects.locations.releases.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The etag known to the client for the expected state of the release. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the release. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/releases/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve a single release.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/releases/{releasesId}", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.releases.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/releases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Release" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve a collection of releases.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/releases", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.releases.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter the list as specified in https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Order results as specified in https://google.aip.dev/132.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of releases to send per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent of the release.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/releases", + "response": { + "$ref": "ListReleasesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a single release.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/releases/{releasesId}", + "httpMethod": "PATCH", + "id": "saasservicemgmt.projects.locations.releases.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/releases/{release}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/releases/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "Field mask is used to specify the fields to be overwritten in the Release 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 in the Release will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Release" + }, + "response": { + "$ref": "Release" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "rolloutKinds": { + "methods": { + "create": { + "description": "Create a new rollout kind.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/rolloutKinds", + "httpMethod": "POST", + "id": "saasservicemgmt.projects.locations.rolloutKinds.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent of the rollout kind.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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" + }, + "rolloutKindId": { + "description": "Required. The ID value for the new rollout kind.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/rolloutKinds", + "request": { + "$ref": "RolloutKind" + }, + "response": { + "$ref": "RolloutKind" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a single rollout kind.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/rolloutKinds/{rolloutKindsId}", + "httpMethod": "DELETE", + "id": "saasservicemgmt.projects.locations.rolloutKinds.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The etag known to the client for the expected state of the rollout kind. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the rollout kind. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/rolloutKinds/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve a single rollout kind.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/rolloutKinds/{rolloutKindsId}", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.rolloutKinds.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/rolloutKinds/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "RolloutKind" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve a collection of rollout kinds.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/rolloutKinds", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.rolloutKinds.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter the list as specified in https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Order results as specified in https://google.aip.dev/132.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of rollout kinds to send per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent of the rollout kind.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/rolloutKinds", + "response": { + "$ref": "ListRolloutKindsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a single rollout kind.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/rolloutKinds/{rolloutKindsId}", + "httpMethod": "PATCH", + "id": "saasservicemgmt.projects.locations.rolloutKinds.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/rolloutKinds/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "Field mask is used to specify the fields to be overwritten in the RolloutKind 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 in the RolloutKind will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "RolloutKind" + }, + "response": { + "$ref": "RolloutKind" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "rollouts": { + "methods": { + "create": { + "description": "Create a new rollout.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/rollouts", + "httpMethod": "POST", + "id": "saasservicemgmt.projects.locations.rollouts.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent of the rollout.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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" + }, + "rolloutId": { + "description": "Required. The ID value for the new rollout.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/rollouts", + "request": { + "$ref": "Rollout" + }, + "response": { + "$ref": "Rollout" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a single rollout.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}", + "httpMethod": "DELETE", + "id": "saasservicemgmt.projects.locations.rollouts.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The etag known to the client for the expected state of the rollout. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the rollout. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/rollouts/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve a single rollout.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.rollouts.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/rollouts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Rollout" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve a collection of rollouts.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/rollouts", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.rollouts.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter the list as specified in https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Order results as specified in https://google.aip.dev/132.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of rollouts to send per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent of the rollout.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/rollouts", + "response": { + "$ref": "ListRolloutsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a single rollout.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}", + "httpMethod": "PATCH", + "id": "saasservicemgmt.projects.locations.rollouts.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/rollout/{rollout_id}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/rollouts/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "Field mask is used to specify the fields to be overwritten in the Rollout 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 in the Rollout will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Rollout" + }, + "response": { + "$ref": "Rollout" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "saas": { + "methods": { + "create": { + "description": "Create a new saas.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/saas", + "httpMethod": "POST", + "id": "saasservicemgmt.projects.locations.saas.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent of the saas.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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" + }, + "saasId": { + "description": "Required. The ID value for the new saas.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/saas", + "request": { + "$ref": "Saas" + }, + "response": { + "$ref": "Saas" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a single saas.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/saas/{saasId}", + "httpMethod": "DELETE", + "id": "saasservicemgmt.projects.locations.saas.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The etag known to the client for the expected state of the saas. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the saas. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/saas/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve a single saas.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/saas/{saasId}", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.saas.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/saas/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Saas" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve a collection of saas.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/saas", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.saas.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter the list as specified in https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Order results as specified in https://google.aip.dev/132.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of saas to send per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent of the saas.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/saas", + "response": { + "$ref": "ListSaasResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a single saas.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/saas/{saasId}", + "httpMethod": "PATCH", + "id": "saasservicemgmt.projects.locations.saas.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/saas/{saas}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/saas/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "Field mask is used to specify the fields to be overwritten in the Saas 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 in the Saas will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Saas" + }, + "response": { + "$ref": "Saas" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "tenants": { + "methods": { + "create": { + "description": "Create a new tenant.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/tenants", + "httpMethod": "POST", + "id": "saasservicemgmt.projects.locations.tenants.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent of the tenant.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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" + }, + "tenantId": { + "description": "Required. The ID value for the new tenant.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/tenants", + "request": { + "$ref": "Tenant" + }, + "response": { + "$ref": "Tenant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a single tenant.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/tenants/{tenantsId}", + "httpMethod": "DELETE", + "id": "saasservicemgmt.projects.locations.tenants.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The etag known to the client for the expected state of the tenant. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the tenant. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tenants/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve a single tenant.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/tenants/{tenantsId}", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.tenants.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tenants/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Tenant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve a collection of tenants.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/tenants", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.tenants.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter the list as specified in https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Order results as specified in https://google.aip.dev/132.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of tenants to send per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent of the tenant.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/tenants", + "response": { + "$ref": "ListTenantsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a single tenant.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/tenants/{tenantsId}", + "httpMethod": "PATCH", + "id": "saasservicemgmt.projects.locations.tenants.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/tenants/{tenant}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tenants/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "Field mask is used to specify the fields to be overwritten in the Tenant 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 in the Tenant will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Tenant" + }, + "response": { + "$ref": "Tenant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "unitKinds": { + "methods": { + "create": { + "description": "Create a new unit kind.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/unitKinds", + "httpMethod": "POST", + "id": "saasservicemgmt.projects.locations.unitKinds.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent of the unit kind.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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" + }, + "unitKindId": { + "description": "Required. The ID value for the new unit kind.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/unitKinds", + "request": { + "$ref": "UnitKind" + }, + "response": { + "$ref": "UnitKind" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a single unit kind.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/unitKinds/{unitKindsId}", + "httpMethod": "DELETE", + "id": "saasservicemgmt.projects.locations.unitKinds.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The etag known to the client for the expected state of the unit kind. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit kind. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/unitKinds/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve a single unit kind.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/unitKinds/{unitKindsId}", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.unitKinds.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/unitKinds/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "UnitKind" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve a collection of unit kinds.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/unitKinds", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.unitKinds.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter the list as specified in https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Order results as specified in https://google.aip.dev/132.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of unit kinds to send per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent of the unit kind.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/unitKinds", + "response": { + "$ref": "ListUnitKindsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a single unit kind.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/unitKinds/{unitKindsId}", + "httpMethod": "PATCH", + "id": "saasservicemgmt.projects.locations.unitKinds.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/unitKinds/{unitKind}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/unitKinds/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "Field mask is used to specify the fields to be overwritten in the UnitKind 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 in the UnitKind will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "UnitKind" + }, + "response": { + "$ref": "UnitKind" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "unitOperations": { + "methods": { + "create": { + "description": "Create a new unit operation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/unitOperations", + "httpMethod": "POST", + "id": "saasservicemgmt.projects.locations.unitOperations.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent of the unit operation.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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" + }, + "unitOperationId": { + "description": "Required. The ID value for the new unit operation.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/unitOperations", + "request": { + "$ref": "UnitOperation" + }, + "response": { + "$ref": "UnitOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a single unit operation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/unitOperations/{unitOperationsId}", + "httpMethod": "DELETE", + "id": "saasservicemgmt.projects.locations.unitOperations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The etag known to the client for the expected state of the unit operation. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit operation. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/unitOperations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve a single unit operation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/unitOperations/{unitOperationsId}", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.unitOperations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/unitOperations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "UnitOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve a collection of unit operations.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/unitOperations", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.unitOperations.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter the list as specified in https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Order results as specified in https://google.aip.dev/132.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of unit operations to send per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent of the unit operation.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/unitOperations", + "response": { + "$ref": "ListUnitOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a single unit operation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/unitOperations/{unitOperationsId}", + "httpMethod": "PATCH", + "id": "saasservicemgmt.projects.locations.unitOperations.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/unitOperations/{unitOperation}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/unitOperations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "Field mask is used to specify the fields to be overwritten in the UnitOperation 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 in the UnitOperation will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "UnitOperation" + }, + "response": { + "$ref": "UnitOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "units": { + "methods": { + "create": { + "description": "Create a new unit.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/units", + "httpMethod": "POST", + "id": "saasservicemgmt.projects.locations.units.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent of the unit.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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" + }, + "unitId": { + "description": "Required. The ID value for the new unit.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/units", + "request": { + "$ref": "Unit" + }, + "response": { + "$ref": "Unit" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a single unit.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/units/{unitsId}", + "httpMethod": "DELETE", + "id": "saasservicemgmt.projects.locations.units.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The etag known to the client for the expected state of the unit. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/units/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve a single unit.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/units/{unitsId}", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.units.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/units/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Unit" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve a collection of units.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/units", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.units.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter the list as specified in https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Order results as specified in https://google.aip.dev/132.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of units to send per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent of the unit.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/units", + "response": { + "$ref": "ListUnitsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a single unit.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/units/{unitsId}", + "httpMethod": "PATCH", + "id": "saasservicemgmt.projects.locations.units.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/units/{unit}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/units/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "Field mask is used to specify the fields to be overwritten in the Unit 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 in the Unit will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Unit" + }, + "response": { + "$ref": "Unit" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20260415", + "rootUrl": "https://saasservicemgmt.googleapis.com/", + "schemas": { + "Aggregate": { + "description": "Represents the aggregation of a set of population of like records by a certain group. For example, a collection of unit counts can be aggregated and grouped by their state.", + "id": "Aggregate", + "properties": { + "count": { + "description": "Required. Number of records in the group.", + "format": "int32", + "type": "integer" + }, + "group": { + "description": "Required. Group by which to aggregate.", + "type": "string" + } + }, + "type": "object" + }, + "Blueprint": { + "description": "Blueprints are OCI Images that contain all of the artifacts needed to provision a unit. Metadata such as, type of the engine used to actuate the blueprint (e.g. terraform, helm etc) and version will come from the image manifest. If the hostname is omitted, it will be assumed to be the regional path to Artifact Registry (eg. us-east1-docker.pkg.dev).", + "id": "Blueprint", + "properties": { + "engine": { + "description": "Output only. Type of the engine used to actuate the blueprint. e.g. terraform, helm etc.", + "readOnly": true, + "type": "string" + }, + "package": { + "description": "Optional. Immutable. URI to a blueprint used by the Unit (required unless unitKind or release is set).", + "type": "string" + }, + "version": { + "description": "Output only. Version metadata if present on the blueprint.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Dependency": { + "description": "Dependency represent a single dependency with another unit kind by alias.", + "id": "Dependency", + "properties": { + "alias": { + "description": "Required. An alias for the dependency. Used for input variable mapping.", + "type": "string" + }, + "unitKind": { + "description": "Required. Immutable. The unit kind of the dependency.", + "type": "string" + } + }, + "type": "object" + }, + "Deprovision": { + "description": "Deprovision is the unit operation that deprovision the underlying resources represented by a Unit. Can only execute if the Unit is currently provisioned.", + "id": "Deprovision", + "properties": {}, + "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" + }, + "ErrorBudget": { + "description": "The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused.", + "id": "ErrorBudget", + "properties": { + "allowedCount": { + "description": "Optional. The maximum number of failed units allowed in a location without pausing the rollout.", + "format": "int32", + "type": "integer" + }, + "allowedPercentage": { + "description": "Optional. The maximum percentage of units allowed to fail (0, 100] within a location without pausing the rollout.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "FlagUpdate": { + "description": "FlagUpdate is a UnitOperation that pushes new flag values to Units.", + "id": "FlagUpdate", + "properties": { + "flagRelease": { + "description": "Required. Flag release being applied by UnitOperation.", + "type": "string" + } + }, + "type": "object" + }, + "FromMapping": { + "description": "Output variables whose values will be passed on to dependencies", + "id": "FromMapping", + "properties": { + "dependency": { + "description": "Required. Alias of the dependency that the outputVariable will pass its value to", + "type": "string" + }, + "outputVariable": { + "description": "Required. Name of the outputVariable on the dependency", + "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" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "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" + }, + "ListReleasesResponse": { + "description": "The response structure for the ListReleases method.", + "id": "ListReleasesResponse", + "properties": { + "nextPageToken": { + "description": "If present, the next page token can be provided to a subsequent ListReleases call to list the next page. If empty, there are no more pages.", + "type": "string" + }, + "releases": { + "description": "The resulting releases.", + "items": { + "$ref": "Release" + }, + "type": "array" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListRolloutKindsResponse": { + "description": "The response structure for the ListRolloutKinds method.", + "id": "ListRolloutKindsResponse", + "properties": { + "nextPageToken": { + "description": "If present, the next page token can be provided to a subsequent ListRolloutKinds call to list the next page. If empty, there are no more pages.", + "type": "string" + }, + "rolloutKinds": { + "description": "The resulting rollout kinds.", + "items": { + "$ref": "RolloutKind" + }, + "type": "array" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListRolloutsResponse": { + "description": "The response structure for the ListRollouts method.", + "id": "ListRolloutsResponse", + "properties": { + "nextPageToken": { + "description": "If present, the next page token can be provided to a subsequent ListRollouts call to list the next page. If empty, there are no more pages.", + "type": "string" + }, + "rollouts": { + "description": "The resulting rollouts.", + "items": { + "$ref": "Rollout" + }, + "type": "array" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListSaasResponse": { + "description": "The response structure for the ListSaas method.", + "id": "ListSaasResponse", + "properties": { + "nextPageToken": { + "description": "If present, the next page token can be provided to a subsequent ListSaas call to list the next page. If empty, there are no more pages.", + "type": "string" + }, + "saas": { + "description": "The resulting saas.", + "items": { + "$ref": "Saas" + }, + "type": "array" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTenantsResponse": { + "description": "The response structure for the ListTenants method.", + "id": "ListTenantsResponse", + "properties": { + "nextPageToken": { + "description": "If present, the next page token can be provided to a subsequent ListTenants call to list the next page. If empty, there are no more pages.", + "type": "string" + }, + "tenants": { + "description": "The resulting tenants.", + "items": { + "$ref": "Tenant" + }, + "type": "array" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUnitKindsResponse": { + "description": "The response structure for the ListUnitKinds method.", + "id": "ListUnitKindsResponse", + "properties": { + "nextPageToken": { + "description": "If present, the next page token can be provided to a subsequent ListUnitKinds call to list the next page. If empty, there are no more pages.", + "type": "string" + }, + "unitKinds": { + "description": "The resulting unit kinds.", + "items": { + "$ref": "UnitKind" + }, + "type": "array" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUnitOperationsResponse": { + "description": "The response structure for the ListUnitOperations method.", + "id": "ListUnitOperationsResponse", + "properties": { + "nextPageToken": { + "description": "If present, the next page token can be provided to a subsequent ListUnitOperations call to list the next page. If empty, there are no more pages.", + "type": "string" + }, + "unitOperations": { + "description": "The resulting unit operations.", + "items": { + "$ref": "UnitOperation" + }, + "type": "array" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUnitsResponse": { + "description": "The response structure for the ListUnits method.", + "id": "ListUnitsResponse", + "properties": { + "nextPageToken": { + "description": "If present, the next page token can be provided to a subsequent ListUnits call to list the next page. If empty, there are no more pages.", + "type": "string" + }, + "units": { + "description": "The resulting units.", + "items": { + "$ref": "Unit" + }, + "type": "array" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "Location information that the service is available in.", + "id": "Location", + "properties": { + "name": { + "description": "Optional. Name of location.", + "type": "string" + } + }, + "type": "object" + }, + "MaintenanceSettings": { + "description": "Captures requested directives for performing future maintenance on the unit. This includes a request for the unit to skip maintenance for a period of time and remain pinned to its current release as well as controls for postponing maintenance scheduled in future.", + "id": "MaintenanceSettings", + "properties": { + "pinnedUntilTime": { + "description": "Optional. If present, it fixes the release on the unit until the given time; i.e. changes to the release field will be rejected. Rollouts should and will also respect this by not requesting an upgrade in the first place.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Provision": { + "description": "Provision is the unit operation that provision the underlying resources represented by a Unit. Can only execute if the Unit is not currently provisioned.", + "id": "Provision", + "properties": { + "inputVariables": { + "description": "Optional. Set of input variables. Maximum 100. (optional)", + "items": { + "$ref": "UnitVariable" + }, + "type": "array" + }, + "release": { + "description": "Optional. Reference to the Release object to use for the Unit. (optional).", + "type": "string" + } + }, + "type": "object" + }, + "Release": { + "description": "A new version to be propagated and deployed to units. This includes pointers to packaged blueprints for actuation (e.g Helm or Terraform configuration packages) via artifact registry.", + "id": "Release", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", + "type": "object" + }, + "blueprint": { + "$ref": "Blueprint", + "description": "Optional. Blueprints are OCI Images that contain all of the artifacts needed to provision a unit." + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "etag": { + "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", + "readOnly": true, + "type": "string" + }, + "inputVariableDefaults": { + "description": "Optional. Mapping of input variables to default values. Maximum 100", + "items": { + "$ref": "UnitVariable" + }, + "type": "array" + }, + "inputVariables": { + "description": "Optional. Output only. List of input variables declared on the blueprint and can be present with their values on the unit spec", + "items": { + "$ref": "UnitVariable" + }, + "readOnly": true, + "type": "array" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", + "type": "object" + }, + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/releases/{release}\"", + "type": "string" + }, + "outputVariables": { + "description": "Optional. Output only. List of output variables declared on the blueprint and can be present with their values on the unit status", + "items": { + "$ref": "UnitVariable" + }, + "readOnly": true, + "type": "array" + }, + "releaseRequirements": { + "$ref": "ReleaseRequirements", + "description": "Optional. Set of requirements to be fulfilled on the Unit when using this Release." + }, + "uid": { + "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", + "readOnly": true, + "type": "string" + }, + "unitKind": { + "description": "Required. Immutable. Reference to the UnitKind this Release corresponds to (required and immutable once created).", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ReleaseRequirements": { + "description": "Set of requirements to be fulfilled on the Unit when using this Release.", + "id": "ReleaseRequirements", + "properties": { + "upgradeableFromReleases": { + "description": "Optional. A list of releases from which a unit can be upgraded to this one (optional). If left empty no constraints will be applied. When provided, unit upgrade requests to this release will check and enforce this constraint.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Rollout": { + "description": "Represents a single rollout execution and its results", + "id": "Rollout", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", + "type": "object" + }, + "control": { + "$ref": "RolloutControl", + "description": "Optional. Requested change to the execution of this rollout. Default RolloutControl.action is ROLLOUT_ACTION_RUN meaning the rollout will be executed to completion while progressing through all natural Rollout States (such as RUNNING -> SUCCEEDED or RUNNING -> FAILED). Requests can only be made when the Rollout is in a non-terminal state." + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "deleteTime": { + "description": "Output only. The timestamp when the resource was marked for deletion (deletion is an asynchronous operation).", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "effectiveUnitFilter": { + "description": "Optional. Output only. Output only snapshot of the effective unit filter at Rollout start time. Contains a CEL(https://github.com/google/cel-spec) expression consisting of a conjunction of Rollout.unit_filter and RolloutKind.unit_filter. This field captures the filter applied by the Rollout to determine the Unit population. If the associated RolloutKind's unit_filter is modified after the rollout is started, it will not be updated here.", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Optional. Output only. The time when the rollout finished execution (regardless of success, failure, or cancellation). Will be empty if the rollout hasn't finished yet. Once set, the rollout is in terminal state and all the results are final.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "etag": { + "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", + "readOnly": true, + "type": "string" + }, + "flagRelease": { + "description": "Optional. Immutable. Name of the FlagRelease to be rolled out to the target Units. Release and FlagRelease are mutually exclusive. Note: `release` comment needs to be adjusted to mention that \"Release and FlagRelease are mutually exclusive\" when visibility restriction will be lifted.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", + "type": "object" + }, + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/rollout/{rollout_id}\"", + "type": "string" + }, + "parentRollout": { + "description": "Optional. Output only. The direct parent rollout that this rollout is stemming from. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/rollouts/{rollout_id}\"", + "readOnly": true, + "type": "string" + }, + "release": { + "description": "Optional. Immutable. Name of the Release that gets rolled out to target Units. Required if no other type of release is specified.", + "type": "string" + }, + "rolloutKind": { + "description": "Required. Immutable. Name of the RolloutKind this rollout is stemming from and adhering to.", + "type": "string" + }, + "rolloutOrchestrationStrategy": { + "description": "Optional. The strategy used for executing this Rollout. This strategy will override whatever strategy is specified in the RolloutKind. If not specified on creation, the strategy from RolloutKind will be used. There are two supported values strategies which are used to control - \"Google.Cloud.Simple.AllAtOnce\" - \"Google.Cloud.Simple.OneLocationAtATime\" A rollout with one of these simple strategies will rollout across all locations defined in the targeted UnitKind's Saas Locations.", + "type": "string" + }, + "rootRollout": { + "description": "Optional. Output only. The root rollout that this rollout is stemming from. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/rollouts/{rollout_id}\"", + "readOnly": true, + "type": "string" + }, + "startTime": { + "description": "Optional. Output only. The time when the rollout started executing. Will be empty if the rollout hasn't started yet.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. Current state of the rollout.", + "enum": [ + "ROLLOUT_STATE_UNSPECIFIED", + "ROLLOUT_STATE_RUNNING", + "ROLLOUT_STATE_PAUSED", + "ROLLOUT_STATE_SUCCEEDED", + "ROLLOUT_STATE_FAILED", + "ROLLOUT_STATE_CANCELLED", + "ROLLOUT_STATE_WAITING", + "ROLLOUT_STATE_CANCELLING", + "ROLLOUT_STATE_RESUMING", + "ROLLOUT_STATE_PAUSING" + ], + "enumDescriptions": [ + "Unspecified state.", + "Rollout is in progress.", + "Rollout has been paused.", + "Rollout completed successfully.", + "Rollout has failed.", + "Rollout has been canceled.", + "Rollout is waiting for some condition to be met before starting.", + "Rollout is being canceled.", + "Rollout is being resumed.", + "Rollout is being paused." + ], + "readOnly": true, + "type": "string" + }, + "stateMessage": { + "description": "Output only. Human readable message indicating details about the last state transition.", + "readOnly": true, + "type": "string" + }, + "stateTransitionTime": { + "description": "Optional. Output only. The time when the rollout transitioned into its current state.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "stats": { + "$ref": "RolloutStats", + "description": "Optional. Output only. Details about the progress of the rollout.", + "readOnly": true + }, + "uid": { + "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", + "readOnly": true, + "type": "string" + }, + "unitFilter": { + "description": "Optional. CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout. If not provided, the unit_filter from the RolloutKind will be used.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "RolloutControl": { + "description": "RolloutControl provides a way to request a change to the execution of a Rollout by pausing or canceling it.", + "id": "RolloutControl", + "properties": { + "action": { + "description": "Required. Action to be performed on the Rollout. The default behavior is to run the rollout until it naturally reaches a terminal state.", + "enum": [ + "ROLLOUT_ACTION_UNSPECIFIED", + "ROLLOUT_ACTION_RUN", + "ROLLOUT_ACTION_PAUSE", + "ROLLOUT_ACTION_CANCEL" + ], + "enumDescriptions": [ + "Unspecified action, will be treated as RUN by default.", + "Run the Rollout until it naturally reaches a terminal state. A rollout requested to run will progress through all natural Rollout States (such as RUNNING -> SUCCEEDED or RUNNING -> FAILED). If retriable errors are encountered during the rollout, the rollout will paused by default and can be resumed by re-requesting this RUN action.", + "Pause the Rollout until it is resumed (i.e. RUN is requested).", + "Cancel the Rollout permanently." + ], + "type": "string" + }, + "runParams": { + "$ref": "RunRolloutActionParams", + "description": "Optional. Parameters for the RUN action. It is an error to specify this if the RolloutAction is not set to RUN. By default, the rollout will retry failed operations when resumed." + } + }, + "type": "object" + }, + "RolloutKind": { + "description": "An object that describes various settings of Rollout execution. Includes built-in policies across GCP and GDC, and customizable policies.", + "id": "RolloutKind", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", + "type": "object" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "errorBudget": { + "$ref": "ErrorBudget", + "description": "Optional. The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. If not set, all units will be attempted to be updated regardless of the number of failures encountered." + }, + "etag": { + "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", + "readOnly": true, + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", + "type": "object" + }, + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}\"", + "type": "string" + }, + "rolloutOrchestrationStrategy": { + "description": "Optional. The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control - \"Google.Cloud.Simple.AllAtOnce\" - \"Google.Cloud.Simple.OneLocationAtATime\" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.", + "type": "string" + }, + "uid": { + "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", + "readOnly": true, + "type": "string" + }, + "unitFilter": { + "description": "Optional. CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.", + "type": "string" + }, + "unitKind": { + "description": "Required. Immutable. UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "updateUnitKindStrategy": { + "description": "Optional. The config for updating the unit kind. By default, the unit kind will be updated on the rollout start.", + "enum": [ + "UPDATE_UNIT_KIND_STRATEGY_UNSPECIFIED", + "UPDATE_UNIT_KIND_STRATEGY_ON_START", + "UPDATE_UNIT_KIND_STRATEGY_NEVER" + ], + "enumDescriptions": [ + "Strategy unspecified.", + "Update the unit kind strategy on the rollout start.", + "Never update the unit kind." + ], + "type": "string" + } + }, + "type": "object" + }, + "RolloutStats": { + "description": "RolloutStats contains information about the progress of a rollout.", + "id": "RolloutStats", + "properties": { + "estimatedTotalUnitCount": { + "description": "Optional. Output only. Estimated number of units based. The estimation is computed upon creation of the rollout.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "operationsByState": { + "description": "Optional. Output only. Unordered list. A breakdown of the progress of operations triggered by the rollout. Provides a count of Operations by their state. This can be used to determine the number of units which have been updated, or are scheduled to be updated. There will be at most one entry per group. Possible values for operation groups are: - \"SCHEDULED\" - \"PENDING\" - \"RUNNING\" - \"SUCCEEDED\" - \"FAILED\" - \"CANCELLED\"", + "items": { + "$ref": "Aggregate" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "RunRolloutActionParams": { + "description": "Parameters for the RUN action controlling the behavior of the rollout when it is resumed from a PAUSED state.", + "id": "RunRolloutActionParams", + "properties": { + "retryFailedOperations": { + "description": "Required. If true, the rollout will retry failed operations when resumed. This is applicable only the current state of the Rollout is PAUSED and the requested action is RUN.", + "type": "boolean" + } + }, + "type": "object" + }, + "Saas": { + "description": "Saas is a representation of a SaaS service managed by the Producer.", + "id": "Saas", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", + "type": "object" + }, + "conditions": { + "description": "Output only. A set of conditions which indicate the various conditions this resource can have.", + "items": { + "$ref": "SaasCondition" + }, + "readOnly": true, + "type": "array" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "error": { + "$ref": "Status", + "description": "Output only. If the state is FAILED, the corresponding error code and message. Defaults to code=OK for all other states.", + "readOnly": true + }, + "etag": { + "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", + "readOnly": true, + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", + "type": "object" + }, + "locations": { + "description": "Optional. List of locations that the service is available in. Rollout refers to the list to generate a rollout plan.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/saas/{saas}\"", + "type": "string" + }, + "state": { + "description": "Output only. State of the Saas. It is always in ACTIVE state if the application_template is empty.", + "enum": [ + "STATE_TYPE_UNSPECIFIED", + "STATE_ACTIVE", + "STATE_RUNNING", + "STATE_FAILED", + "ACTIVE", + "RUNNING", + "FAILED" + ], + "enumDeprecated": [ + false, + false, + false, + false, + true, + true, + true + ], + "enumDescriptions": [ + "State type is unspecified.", + "The Saas is ready", + "In the process of importing, synchronizing or replicating ApplicationTemplates", + "Failure during process of importing, synchronizing or replicating ApplicationTemplate processing", + "Deprecated: Use STATE_ACTIVE.", + "Deprecated: Use STATE_RUNNING.", + "Deprecated: Use STATE_FAILED." + ], + "readOnly": true, + "type": "string" + }, + "uid": { + "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "SaasCondition": { + "description": "SaasCondition describes the status of a Saas.", + "id": "SaasCondition", + "properties": { + "lastTransitionTime": { + "description": "Required. Last time the condition transited from one status to another.", + "format": "google-datetime", + "type": "string" + }, + "message": { + "description": "Required. Human readable message indicating details about the last transition.", + "type": "string" + }, + "reason": { + "description": "Required. Brief reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Required. Status of the condition.", + "enum": [ + "STATUS_UNSPECIFIED", + "STATUS_UNKNOWN", + "STATUS_TRUE", + "STATUS_FALSE" + ], + "enumDescriptions": [ + "Condition status is unspecified.", + "Condition is unknown.", + "Condition is true.", + "Condition is false." + ], + "type": "string" + }, + "type": { + "description": "Required. Type of the condition.", + "enum": [ + "TYPE_UNSPECIFIED", + "TYPE_READY", + "TYPE_SYNCHRONIZED" + ], + "enumDescriptions": [ + "Condition type is unspecified.", + "Condition type is ready.", + "Condition type is synchronized." + ], + "type": "string" + } + }, + "type": "object" + }, + "Schedule": { + "description": "A time specification to schedule the maintenance.", + "id": "Schedule", + "properties": { + "startTime": { + "description": "Optional. Start of operation. If not set, will be set to the start of the next window. (optional)", + "format": "google-datetime", + "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" + }, + "Tenant": { + "description": "Tenant represents the service producer side of an instance of the service created based on a request from a consumer. In a typical scenario a Tenant has a one-to-one mapping with a resource given out to a service consumer. Example: tenant: name: \"projects/svc1/locations/loc/tenants/inst-068afff8\" consumer_resource: \"projects/gshoe/locations/loc/shoes/black-shoe\"", + "id": "Tenant", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", + "type": "object" + }, + "consumerResource": { + "description": "Optional. Immutable. A reference to the consumer resource this SaaS Tenant is representing. The relationship with a consumer resource can be used by App Lifecycle Manager for retrieving consumer-defined settings and policies such as maintenance policies (using Unified Maintenance Policy API).", + "type": "string" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "etag": { + "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", + "readOnly": true, + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", + "type": "object" + }, + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/tenants/{tenant}\"", + "type": "string" + }, + "saas": { + "description": "Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with App Lifecycle Manager. Part of the App Lifecycle Manager common data model.", + "type": "string" + }, + "uid": { + "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ToMapping": { + "description": "Input variables whose values will be passed on to dependencies", + "id": "ToMapping", + "properties": { + "dependency": { + "description": "Required. Alias of the dependency that the inputVariable will pass its value to", + "type": "string" + }, + "ignoreForLookup": { + "description": "Optional. Tells App Lifecycle Manager if this mapping should be used during lookup or not", + "type": "boolean" + }, + "inputVariable": { + "description": "Required. Name of the inputVariable on the dependency", + "type": "string" + } + }, + "type": "object" + }, + "Unit": { + "description": "A unit of deployment that has its lifecycle via a CRUD API using an actuation engine under the hood (e.g. based on Terraform, Helm or a custom implementation provided by a service producer). A building block of a SaaS Tenant.", + "id": "Unit", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", + "type": "object" + }, + "conditions": { + "description": "Optional. Output only. A set of conditions which indicate the various conditions this resource can have.", + "items": { + "$ref": "UnitCondition" + }, + "readOnly": true, + "type": "array" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "dependencies": { + "description": "Optional. Output only. Set of dependencies for this unit. Maximum 10.", + "items": { + "$ref": "UnitDependency" + }, + "readOnly": true, + "type": "array" + }, + "dependents": { + "description": "Optional. Output only. List of Units that depend on this unit. Unit can only be deprovisioned if this list is empty. Maximum 1000.", + "items": { + "$ref": "UnitDependency" + }, + "readOnly": true, + "type": "array" + }, + "etag": { + "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", + "readOnly": true, + "type": "string" + }, + "flagRevisions": { + "description": "Optional. Output only. Flag revisions used by this Unit.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "inputVariables": { + "description": "Optional. Output only. Indicates the current input variables deployed by the unit", + "items": { + "$ref": "UnitVariable" + }, + "readOnly": true, + "type": "array" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", + "type": "object" + }, + "maintenance": { + "$ref": "MaintenanceSettings", + "description": "Optional. Captures requested directives for performing future maintenance on the unit. This includes a request for the unit to skip maintenance for a period of time and remain pinned to its current release as well as controls for postponing maintenance scheduled in future." + }, + "managementMode": { + "description": "Optional. Immutable. Indicates whether the Unit life cycle is controlled by the user or by the system. Immutable once created.", + "enum": [ + "MANAGEMENT_MODE_UNSPECIFIED", + "MANAGEMENT_MODE_USER", + "MANAGEMENT_MODE_SYSTEM" + ], + "enumDescriptions": [ + "", + "Unit's lifecycle is managed by the user.", + "The system will decide when to deprovision and delete the unit. User still can deprovision or delete the unit manually." + ], + "type": "string" + }, + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/units/{unit}\"", + "type": "string" + }, + "ongoingOperations": { + "description": "Optional. Output only. List of concurrent UnitOperations that are operating on this Unit.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "outputVariables": { + "description": "Optional. Output only. Set of key/value pairs corresponding to output variables from execution of actuation templates. The variables are declared in actuation configs (e.g in helm chart or terraform) and the values are fetched and returned by the actuation engine upon completion of execution.", + "items": { + "$ref": "UnitVariable" + }, + "readOnly": true, + "type": "array" + }, + "pendingOperations": { + "description": "Optional. Output only. List of pending (wait to be executed) UnitOperations for this unit.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "release": { + "description": "Optional. Output only. The current Release object for this Unit.", + "readOnly": true, + "type": "string" + }, + "satisfiesPzi": { + "description": "Output only. Reserved for future use.", + "readOnly": true, + "type": "boolean" + }, + "satisfiesPzs": { + "description": "Output only. Indicates whether the resource location satisfies Zone Separation constraints. This is false by default.", + "readOnly": true, + "type": "boolean" + }, + "scheduledOperations": { + "description": "Optional. Output only. List of scheduled UnitOperations for this unit.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "state": { + "description": "Optional. Output only. Current lifecycle state of the resource (e.g. if it's being created or ready to use).", + "enum": [ + "UNIT_STATE_UNSPECIFIED", + "UNIT_STATE_NOT_PROVISIONED", + "UNIT_STATE_PROVISIONING", + "UNIT_STATE_UPDATING", + "UNIT_STATE_DEPROVISIONING", + "UNIT_STATE_READY", + "UNIT_STATE_ERROR" + ], + "enumDescriptions": [ + "Unspecified state.", + "Unit is not provisioned.", + "Unit is being provisioned.", + "Unit is being updated. This is typically when a unit is being upgraded to a new release or some of the input variables on the Unit is being changed. Certain kinds of updates may cause the Unit to become unusable while the update is in progress.", + "Unit is being deleted.", + "Unit has been provisioned and is ready for use", + "Unit has error, when it is not ready and some error operation" + ], + "readOnly": true, + "type": "string" + }, + "systemCleanupAt": { + "description": "Optional. Output only. If set, indicates the time when the system will start removing the unit.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "systemManagedState": { + "description": "Optional. Output only. Indicates the system managed state of the unit.", + "enum": [ + "SYSTEM_MANAGED_STATE_UNSPECIFIED", + "SYSTEM_MANAGED_STATE_ACTIVE", + "SYSTEM_MANAGED_STATE_INACTIVE", + "SYSTEM_MANAGED_STATE_DECOMMISSIONED" + ], + "enumDescriptions": [ + "", + "Unit has dependents attached.", + "Unit has no dependencies attached, but attachment is allowed.", + "Unit has no dependencies attached, and attachment is not allowed." + ], + "readOnly": true, + "type": "string" + }, + "tenant": { + "description": "Optional. Reference to the Saas Tenant resource this unit belongs to. This for example informs the maintenance policies to use for scheduling future updates on a unit. (optional and immutable once created)", + "type": "string" + }, + "uid": { + "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", + "readOnly": true, + "type": "string" + }, + "unitKind": { + "description": "Optional. Reference to the UnitKind this Unit belongs to. Immutable once set.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "UnitCondition": { + "description": "UnitCondition describes the status of an Unit. UnitCondition is individual components that contribute to an overall state.", + "id": "UnitCondition", + "properties": { + "lastTransitionTime": { + "description": "Required. Last time the condition transited from one status to another.", + "format": "google-datetime", + "type": "string" + }, + "message": { + "description": "Required. Human readable message indicating details about the last transition.", + "type": "string" + }, + "reason": { + "description": "Required. Brief reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Required. Status of the condition.", + "enum": [ + "STATUS_UNSPECIFIED", + "STATUS_UNKNOWN", + "STATUS_TRUE", + "STATUS_FALSE" + ], + "enumDescriptions": [ + "Condition status is unspecified.", + "Condition is unknown.", + "Condition is true.", + "Condition is false." + ], + "type": "string" + }, + "type": { + "description": "Required. Type of the condition.", + "enum": [ + "TYPE_UNSPECIFIED", + "TYPE_READY", + "TYPE_UPDATING", + "TYPE_PROVISIONED", + "TYPE_OPERATION_ERROR" + ], + "enumDescriptions": [ + "Condition type is unspecified.", + "Condition type is ready.", + "Condition type is updating.", + "Condition type is provisioned.", + "Condition type is operationError. True when the last unit operation fails with a non-ignorable error." + ], + "type": "string" + } + }, + "type": "object" + }, + "UnitDependency": { + "description": "Set of dependencies for this unit. Maximum 10.", + "id": "UnitDependency", + "properties": { + "alias": { + "description": "Output only. Alias for the name of the dependency.", + "readOnly": true, + "type": "string" + }, + "unit": { + "description": "Output only. A reference to the Unit object.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "UnitKind": { + "description": "Definition of a Unit. Units belonging to the same UnitKind are managed together; for example they follow the same release model (blueprints, versions etc.) and are typically rolled out together.", + "id": "UnitKind", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", + "type": "object" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "defaultFlagRevisions": { + "description": "Optional. Default revisions of flags for this UnitKind. Newly created units will use the flag default_flag_revisions present at the time of creation.", + "items": { + "type": "string" + }, + "type": "array" + }, + "defaultRelease": { + "description": "Optional. A reference to the Release object to use as default for creating new units of this UnitKind (optional). If not specified, a new unit must explicitly reference which release to use for its creation.", + "type": "string" + }, + "dependencies": { + "description": "Optional. Immutable. List of other unit kinds that this release will depend on. Dependencies will be automatically provisioned if not found. Maximum 10.", + "items": { + "$ref": "Dependency" + }, + "type": "array" + }, + "etag": { + "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", + "readOnly": true, + "type": "string" + }, + "inputVariableMappings": { + "description": "Optional. List of inputVariables for this release that will either be retrieved from a dependency’s outputVariables, or will be passed on to a dependency’s inputVariables. Maximum 100.", + "items": { + "$ref": "VariableMapping" + }, + "type": "array" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", + "type": "object" + }, + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/unitKinds/{unitKind}\"", + "type": "string" + }, + "outputVariableMappings": { + "description": "Optional. List of outputVariables for this unit kind will be passed to this unit's outputVariables. Maximum 100.", + "items": { + "$ref": "VariableMapping" + }, + "type": "array" + }, + "saas": { + "description": "Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with App Lifecycle Manager. Part of the App Lifecycle Manager common data model. Immutable once set.", + "type": "string" + }, + "uid": { + "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "UnitOperation": { + "description": "UnitOperation encapsulates the intent of changing/interacting with the service component represented by the specific Unit. Multiple UnitOperations can be created (requested) and scheduled in the future, however only one will be allowed to execute at a time (that can change in the future for non-mutating operations). UnitOperations allow different actors interacting with the same unit to focus only on the change they have requested. This is a base object that contains the common fields in all unit operations. Next: 22", + "id": "UnitOperation", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", + "type": "object" + }, + "cancel": { + "description": "Optional. When true, attempt to cancel the operation. Cancellation may fail if the operation is already executing. (Optional)", + "type": "boolean" + }, + "conditions": { + "description": "Optional. Output only. A set of conditions which indicate the various conditions this resource can have.", + "items": { + "$ref": "UnitOperationCondition" + }, + "readOnly": true, + "type": "array" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "deleteTime": { + "description": "Output only. The timestamp when the resource was marked for deletion (deletion is an asynchronous operation).", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "deprovision": { + "$ref": "Deprovision" + }, + "engineState": { + "description": "Optional. Output only. The engine state for on-going deployment engine operation(s). This field is opaque for external usage.", + "readOnly": true, + "type": "string" + }, + "errorCategory": { + "description": "Optional. Output only. UnitOperationErrorCategory describe the error category.", + "enum": [ + "UNIT_OPERATION_ERROR_CATEGORY_UNSPECIFIED", + "NOT_APPLICABLE", + "FATAL", + "RETRIABLE", + "IGNORABLE", + "STANDARD" + ], + "enumDescriptions": [ + "Unit operation error category is unspecified", + "Unit operation error category is not applicable, or it is not an error", + "Unit operation error category is fatal", + "Unit operation error category is retriable", + "Unit operation error category is ignorable", + "Unit operation error category is standard, counts towards Rollout error budget" + ], + "readOnly": true, + "type": "string" + }, + "etag": { + "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", + "readOnly": true, + "type": "string" + }, + "flagUpdate": { + "$ref": "FlagUpdate" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", + "type": "object" + }, + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/unitOperations/{unitOperation}\"", + "type": "string" + }, + "parentUnitOperation": { + "description": "Optional. Reference to parent resource: UnitOperation. If an operation needs to create other operations as part of its workflow, each of the child operations should have this field set to the parent. This can be used for tracing. (Optional)", + "type": "string" + }, + "provision": { + "$ref": "Provision" + }, + "rollout": { + "description": "Optional. Specifies which rollout created this Unit Operation. This cannot be modified and is used for filtering purposes only. If a dependent unit and unit operation are created as part of another unit operation, they will use the same rolloutId.", + "type": "string" + }, + "schedule": { + "$ref": "Schedule", + "description": "Optional. When to schedule this operation." + }, + "state": { + "description": "Optional. Output only. UnitOperationState describes the current state of the unit operation.", + "enum": [ + "UNIT_OPERATION_STATE_UNKNOWN", + "UNIT_OPERATION_STATE_PENDING", + "UNIT_OPERATION_STATE_SCHEDULED", + "UNIT_OPERATION_STATE_RUNNING", + "UNIT_OPERATION_STATE_SUCCEEDED", + "UNIT_OPERATION_STATE_FAILED", + "UNIT_OPERATION_STATE_CANCELLED" + ], + "enumDescriptions": [ + "", + "Unit operation is accepted but not ready to run.", + "Unit operation is accepted and scheduled.", + "Unit operation is running.", + "Unit operation has completed successfully.", + "Unit operation has failed.", + "Unit operation was cancelled." + ], + "readOnly": true, + "type": "string" + }, + "uid": { + "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", + "readOnly": true, + "type": "string" + }, + "unit": { + "description": "Required. Immutable. The Unit a given UnitOperation will act upon.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "upgrade": { + "$ref": "Upgrade" + } + }, + "type": "object" + }, + "UnitOperationCondition": { + "description": "UnitOperationCondition describes the status of an Unit Operation. UnitOperationCondition is individual components that contribute to an overall state.", + "id": "UnitOperationCondition", + "properties": { + "lastTransitionTime": { + "description": "Required. Last time the condition transited from one status to another.", + "format": "google-datetime", + "type": "string" + }, + "message": { + "description": "Required. Human readable message indicating details about the last transition.", + "type": "string" + }, + "reason": { + "description": "Required. Brief reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Required. Status of the condition.", + "enum": [ + "STATUS_UNSPECIFIED", + "STATUS_UNKNOWN", + "STATUS_TRUE", + "STATUS_FALSE" + ], + "enumDescriptions": [ + "Condition status is unspecified.", + "Condition is unknown.", + "Condition is true.", + "Condition is false." + ], + "type": "string" + }, + "type": { + "description": "Required. Type of the condition.", + "enum": [ + "TYPE_UNSPECIFIED", + "TYPE_SCHEDULED", + "TYPE_RUNNING", + "TYPE_SUCCEEDED", + "TYPE_CANCELLED", + "TYPE_APP_CREATED", + "TYPE_APP_COMPONENTS_REGISTERED" + ], + "enumDescriptions": [ + "Condition type is unspecified.", + "Condition type is scheduled.", + "Condition type is running.", + "Condition type is succeeded.", + "Condition type is cancelled.", + "Indicates if AppHub app has been created.", + "Indicates if services and workloads have been registered with AppHub." + ], + "type": "string" + } + }, + "type": "object" + }, + "UnitVariable": { + "description": "UnitVariable describes a parameter for a Unit.", + "id": "UnitVariable", + "properties": { + "type": { + "description": "Optional. Immutable. Name of a supported variable type. Supported types are string, int, bool.", + "enum": [ + "TYPE_UNSPECIFIED", + "STRING", + "INT", + "BOOL", + "STRUCT", + "LIST" + ], + "enumDescriptions": [ + "Variable type is unspecified.", + "Variable type is string.", + "Variable type is int.", + "Variable type is bool.", + "Variable type is struct.", + "Variable type is list." + ], + "type": "string" + }, + "value": { + "description": "Optional. String encoded value for the variable.", + "type": "string" + }, + "variable": { + "description": "Required. Immutable. Name of the variable from actuation configs.", + "type": "string" + } + }, + "type": "object" + }, + "Upgrade": { + "description": "Upgrade is the unit operation that upgrades a provisioned unit, which may also include the underlying resources represented by a Unit. Can only execute if the Unit is currently provisioned.", + "id": "Upgrade", + "properties": { + "inputVariables": { + "description": "Optional. Set of input variables. Maximum 100. (optional)", + "items": { + "$ref": "UnitVariable" + }, + "type": "array" + }, + "release": { + "description": "Optional. Reference to the Release object to use for the Unit. (optional).", + "type": "string" + } + }, + "type": "object" + }, + "VariableMapping": { + "description": "Mapping of input variables to their respective output variable for depedenencies", + "id": "VariableMapping", + "properties": { + "from": { + "$ref": "FromMapping", + "description": "Optional. Output variables which will get their values from dependencies" + }, + "to": { + "$ref": "ToMapping", + "description": "Optional. Input variables whose values will be passed on to dependencies." + }, + "variable": { + "description": "Required. name of the variable", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "App Lifecycle Manager API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/discovery/saasservicemgmt-v1beta1.json b/discovery/saasservicemgmt-v1beta1.json index 95d94157014..78d61aad1ed 100644 --- a/discovery/saasservicemgmt-v1beta1.json +++ b/discovery/saasservicemgmt-v1beta1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "saasservicemgmt.projects.locations.list", @@ -183,29 +183,29 @@ } }, "resources": { - "releases": { + "flagAttributes": { "methods": { "create": { - "description": "Create a new release.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/releases", + "description": "Create a new flag attribute.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagAttributes", "httpMethod": "POST", - "id": "saasservicemgmt.projects.locations.releases.create", + "id": "saasservicemgmt.projects.locations.flagAttributes.create", "parameterOrder": [ "parent" ], "parameters": { + "flagAttributeId": { + "description": "Required. The ID value for the new flag attribute.", + "location": "query", + "type": "string" + }, "parent": { - "description": "Required. The parent of the release.", + "description": "Required. The parent of the flag attribute.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" }, - "releaseId": { - "description": "Required. The ID value for the new release.", - "location": "query", - "type": "string" - }, "requestId": { "description": "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", @@ -217,35 +217,35 @@ "type": "boolean" } }, - "path": "v1beta1/{+parent}/releases", + "path": "v1beta1/{+parent}/flagAttributes", "request": { - "$ref": "Release" + "$ref": "FlagAttribute" }, "response": { - "$ref": "Release" + "$ref": "FlagAttribute" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "delete": { - "description": "Delete a single release.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/releases/{releasesId}", + "description": "Delete a single flag attribute.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagAttributes/{flagAttributesId}", "httpMethod": "DELETE", - "id": "saasservicemgmt.projects.locations.releases.delete", + "id": "saasservicemgmt.projects.locations.flagAttributes.delete", "parameterOrder": [ "name" ], "parameters": { "etag": { - "description": "The etag known to the client for the expected state of the release. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the release. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "description": "The etag known to the client for the expected state of the flag attribute. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the flag attribute. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", "location": "query", "type": "string" }, "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/releases/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/flagAttributes/[^/]+$", "required": true, "type": "string" }, @@ -269,10 +269,10 @@ ] }, "get": { - "description": "Retrieve a single release.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/releases/{releasesId}", + "description": "Retrieve a single flag attribute.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagAttributes/{flagAttributesId}", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.releases.get", + "id": "saasservicemgmt.projects.locations.flagAttributes.get", "parameterOrder": [ "name" ], @@ -280,24 +280,24 @@ "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/releases/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/flagAttributes/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "Release" + "$ref": "FlagAttribute" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Retrieve a collection of releases.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/releases", + "description": "Retrieve a collection of flag attributes.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagAttributes", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.releases.list", + "id": "saasservicemgmt.projects.locations.flagAttributes.list", "parameterOrder": [ "parent" ], @@ -313,7 +313,7 @@ "type": "string" }, "pageSize": { - "description": "The maximum number of releases to send per page.", + "description": "The maximum number of flag attributes to send per page.", "format": "int32", "location": "query", "type": "integer" @@ -324,34 +324,34 @@ "type": "string" }, "parent": { - "description": "Required. The parent of the release.", + "description": "Required. The parent of the flag attribute.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/releases", + "path": "v1beta1/{+parent}/flagAttributes", "response": { - "$ref": "ListReleasesResponse" + "$ref": "ListFlagAttributesResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Update a single release.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/releases/{releasesId}", + "description": "Update a single flag attribute.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagAttributes/{flagAttributesId}", "httpMethod": "PATCH", - "id": "saasservicemgmt.projects.locations.releases.patch", + "id": "saasservicemgmt.projects.locations.flagAttributes.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/releases/{release}\"", + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/flagAttributes/{flag_attribute_id}\"", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/releases/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/flagAttributes/[^/]+$", "required": true, "type": "string" }, @@ -361,7 +361,7 @@ "type": "string" }, "updateMask": { - "description": "Field mask is used to specify the fields to be overwritten in the Release 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 in the Release will be overwritten.", + "description": "Field mask is used to specify the fields to be overwritten in the FlagAttribute 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 in the FlagAttribute will be overwritten.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -374,10 +374,10 @@ }, "path": "v1beta1/{+name}", "request": { - "$ref": "Release" + "$ref": "FlagAttribute" }, "response": { - "$ref": "Release" + "$ref": "FlagAttribute" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -385,19 +385,24 @@ } } }, - "rolloutKinds": { + "flagReleases": { "methods": { "create": { - "description": "Create a new rollout kind.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rolloutKinds", + "description": "Create a new flag release.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagReleases", "httpMethod": "POST", - "id": "saasservicemgmt.projects.locations.rolloutKinds.create", + "id": "saasservicemgmt.projects.locations.flagReleases.create", "parameterOrder": [ "parent" ], "parameters": { + "flagReleaseId": { + "description": "Required. The ID value for the new flag release.", + "location": "query", + "type": "string" + }, "parent": { - "description": "Required. The parent of the rollout kind.", + "description": "Required. The parent of the flag release.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -408,46 +413,41 @@ "location": "query", "type": "string" }, - "rolloutKindId": { - "description": "Required. The ID value for the new rollout kind.", - "location": "query", - "type": "string" - }, "validateOnly": { "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", "location": "query", "type": "boolean" } }, - "path": "v1beta1/{+parent}/rolloutKinds", + "path": "v1beta1/{+parent}/flagReleases", "request": { - "$ref": "RolloutKind" + "$ref": "FlagRelease" }, "response": { - "$ref": "RolloutKind" + "$ref": "FlagRelease" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "delete": { - "description": "Delete a single rollout kind.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rolloutKinds/{rolloutKindsId}", + "description": "Delete a single flag release.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagReleases/{flagReleasesId}", "httpMethod": "DELETE", - "id": "saasservicemgmt.projects.locations.rolloutKinds.delete", + "id": "saasservicemgmt.projects.locations.flagReleases.delete", "parameterOrder": [ "name" ], "parameters": { "etag": { - "description": "The etag known to the client for the expected state of the rollout kind. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the rollout kind. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "description": "The etag known to the client for the expected state of the flag release. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the flag release. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", "location": "query", "type": "string" }, "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/rolloutKinds/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/flagReleases/[^/]+$", "required": true, "type": "string" }, @@ -471,10 +471,10 @@ ] }, "get": { - "description": "Retrieve a single rollout kind.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rolloutKinds/{rolloutKindsId}", + "description": "Retrieve a single flag release.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagReleases/{flagReleasesId}", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.rolloutKinds.get", + "id": "saasservicemgmt.projects.locations.flagReleases.get", "parameterOrder": [ "name" ], @@ -482,24 +482,24 @@ "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/rolloutKinds/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/flagReleases/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "RolloutKind" + "$ref": "FlagRelease" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Retrieve a collection of rollout kinds.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rolloutKinds", + "description": "Retrieve a collection of flag releases.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagReleases", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.rolloutKinds.list", + "id": "saasservicemgmt.projects.locations.flagReleases.list", "parameterOrder": [ "parent" ], @@ -515,7 +515,7 @@ "type": "string" }, "pageSize": { - "description": "The maximum number of rollout kinds to send per page.", + "description": "The maximum number of flag releases to send per page.", "format": "int32", "location": "query", "type": "integer" @@ -526,34 +526,34 @@ "type": "string" }, "parent": { - "description": "Required. The parent of the rollout kind.", + "description": "Required. The parent of the flag release.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/rolloutKinds", + "path": "v1beta1/{+parent}/flagReleases", "response": { - "$ref": "ListRolloutKindsResponse" + "$ref": "ListFlagReleasesResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Update a single rollout kind.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rolloutKinds/{rolloutKindsId}", + "description": "Update a single flag release.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagReleases/{flagReleasesId}", "httpMethod": "PATCH", - "id": "saasservicemgmt.projects.locations.rolloutKinds.patch", + "id": "saasservicemgmt.projects.locations.flagReleases.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}\"", + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/flagReleases/{flag_release_id}\"", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/rolloutKinds/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/flagReleases/[^/]+$", "required": true, "type": "string" }, @@ -563,7 +563,7 @@ "type": "string" }, "updateMask": { - "description": "Field mask is used to specify the fields to be overwritten in the RolloutKind 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 in the RolloutKind will be overwritten.", + "description": "Field mask is used to specify the fields to be overwritten in the FlagRelease 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 in the FlagRelease will be overwritten.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -576,10 +576,10 @@ }, "path": "v1beta1/{+name}", "request": { - "$ref": "RolloutKind" + "$ref": "FlagRelease" }, "response": { - "$ref": "RolloutKind" + "$ref": "FlagRelease" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -587,19 +587,24 @@ } } }, - "rollouts": { + "flagRevisions": { "methods": { "create": { - "description": "Create a new rollout.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rollouts", + "description": "Create a new flag revision.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagRevisions", "httpMethod": "POST", - "id": "saasservicemgmt.projects.locations.rollouts.create", + "id": "saasservicemgmt.projects.locations.flagRevisions.create", "parameterOrder": [ "parent" ], "parameters": { + "flagRevisionId": { + "description": "Required. The ID value for the new flag revision.", + "location": "query", + "type": "string" + }, "parent": { - "description": "Required. The parent of the rollout.", + "description": "Required. The parent of the flag revision.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -610,46 +615,41 @@ "location": "query", "type": "string" }, - "rolloutId": { - "description": "Required. The ID value for the new rollout.", - "location": "query", - "type": "string" - }, "validateOnly": { "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", "location": "query", "type": "boolean" } }, - "path": "v1beta1/{+parent}/rollouts", + "path": "v1beta1/{+parent}/flagRevisions", "request": { - "$ref": "Rollout" + "$ref": "FlagRevision" }, "response": { - "$ref": "Rollout" + "$ref": "FlagRevision" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "delete": { - "description": "Delete a single rollout.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}", + "description": "Delete a single flag revision.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagRevisions/{flagRevisionsId}", "httpMethod": "DELETE", - "id": "saasservicemgmt.projects.locations.rollouts.delete", + "id": "saasservicemgmt.projects.locations.flagRevisions.delete", "parameterOrder": [ "name" ], "parameters": { "etag": { - "description": "The etag known to the client for the expected state of the rollout. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the rollout. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "description": "The etag known to the client for the expected state of the flag revision. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the flag revision. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", "location": "query", "type": "string" }, "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/rollouts/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/flagRevisions/[^/]+$", "required": true, "type": "string" }, @@ -673,10 +673,10 @@ ] }, "get": { - "description": "Retrieve a single rollout.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}", + "description": "Retrieve a single flag revision.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagRevisions/{flagRevisionsId}", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.rollouts.get", + "id": "saasservicemgmt.projects.locations.flagRevisions.get", "parameterOrder": [ "name" ], @@ -684,24 +684,24 @@ "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/rollouts/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/flagRevisions/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "Rollout" + "$ref": "FlagRevision" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Retrieve a collection of rollouts.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rollouts", + "description": "Retrieve a collection of flag revisions.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagRevisions", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.rollouts.list", + "id": "saasservicemgmt.projects.locations.flagRevisions.list", "parameterOrder": [ "parent" ], @@ -717,7 +717,7 @@ "type": "string" }, "pageSize": { - "description": "The maximum number of rollouts to send per page.", + "description": "The maximum number of flag revisions to send per page.", "format": "int32", "location": "query", "type": "integer" @@ -728,34 +728,34 @@ "type": "string" }, "parent": { - "description": "Required. The parent of the rollout.", + "description": "Required. The parent of the flag revision.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/rollouts", + "path": "v1beta1/{+parent}/flagRevisions", "response": { - "$ref": "ListRolloutsResponse" + "$ref": "ListFlagRevisionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Update a single rollout.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}", + "description": "Update a single flag revision.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flagRevisions/{flagRevisionsId}", "httpMethod": "PATCH", - "id": "saasservicemgmt.projects.locations.rollouts.patch", + "id": "saasservicemgmt.projects.locations.flagRevisions.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/rollout/{rollout_id}\"", + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/flagRevisions/{flag_revision_id}\"", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/rollouts/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/flagRevisions/[^/]+$", "required": true, "type": "string" }, @@ -765,7 +765,7 @@ "type": "string" }, "updateMask": { - "description": "Field mask is used to specify the fields to be overwritten in the Rollout 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 in the Rollout will be overwritten.", + "description": "Field mask is used to specify the fields to be overwritten in the FlagRevision 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 in the FlagRevision will be overwritten.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -778,10 +778,10 @@ }, "path": "v1beta1/{+name}", "request": { - "$ref": "Rollout" + "$ref": "FlagRevision" }, "response": { - "$ref": "Rollout" + "$ref": "FlagRevision" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -789,19 +789,24 @@ } } }, - "saas": { + "flags": { "methods": { "create": { - "description": "Create a new saas.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/saas", + "description": "Create a new flag.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flags", "httpMethod": "POST", - "id": "saasservicemgmt.projects.locations.saas.create", + "id": "saasservicemgmt.projects.locations.flags.create", "parameterOrder": [ "parent" ], "parameters": { + "flagId": { + "description": "Required. The ID value for the new flag.", + "location": "query", + "type": "string" + }, "parent": { - "description": "Required. The parent of the saas.", + "description": "Required. The parent of the flag.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -812,46 +817,41 @@ "location": "query", "type": "string" }, - "saasId": { - "description": "Required. The ID value for the new saas.", - "location": "query", - "type": "string" - }, "validateOnly": { "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", "location": "query", "type": "boolean" } }, - "path": "v1beta1/{+parent}/saas", + "path": "v1beta1/{+parent}/flags", "request": { - "$ref": "Saas" + "$ref": "Flag" }, "response": { - "$ref": "Saas" + "$ref": "Flag" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "delete": { - "description": "Delete a single saas.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/saas/{saasId}", + "description": "Delete a single flag.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flags/{flagsId}", "httpMethod": "DELETE", - "id": "saasservicemgmt.projects.locations.saas.delete", + "id": "saasservicemgmt.projects.locations.flags.delete", "parameterOrder": [ "name" ], "parameters": { "etag": { - "description": "The etag known to the client for the expected state of the saas. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the saas. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "description": "The etag known to the client for the expected state of the flag. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the flag. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", "location": "query", "type": "string" }, "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/saas/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/flags/[^/]+$", "required": true, "type": "string" }, @@ -875,10 +875,10 @@ ] }, "get": { - "description": "Retrieve a single saas.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/saas/{saasId}", + "description": "Retrieve a single flag.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flags/{flagsId}", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.saas.get", + "id": "saasservicemgmt.projects.locations.flags.get", "parameterOrder": [ "name" ], @@ -886,24 +886,24 @@ "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/saas/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/flags/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "Saas" + "$ref": "Flag" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Retrieve a collection of saas.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/saas", + "description": "Retrieve a collection of flags.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flags", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.saas.list", + "id": "saasservicemgmt.projects.locations.flags.list", "parameterOrder": [ "parent" ], @@ -919,7 +919,7 @@ "type": "string" }, "pageSize": { - "description": "The maximum number of saas to send per page.", + "description": "The maximum number of flags to send per page.", "format": "int32", "location": "query", "type": "integer" @@ -930,34 +930,34 @@ "type": "string" }, "parent": { - "description": "Required. The parent of the saas.", + "description": "Required. The parent of the flag.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/saas", + "path": "v1beta1/{+parent}/flags", "response": { - "$ref": "ListSaasResponse" + "$ref": "ListFlagsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Update a single saas.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/saas/{saasId}", + "description": "Update a single flag.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/flags/{flagsId}", "httpMethod": "PATCH", - "id": "saasservicemgmt.projects.locations.saas.patch", + "id": "saasservicemgmt.projects.locations.flags.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/saas/{saas}\"", + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/flags/{flag_id}\"", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/saas/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/flags/[^/]+$", "required": true, "type": "string" }, @@ -967,7 +967,7 @@ "type": "string" }, "updateMask": { - "description": "Field mask is used to specify the fields to be overwritten in the Saas 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 in the Saas will be overwritten.", + "description": "Field mask is used to specify the fields to be overwritten in the Flag 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 in the Flag will be overwritten.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -980,10 +980,10 @@ }, "path": "v1beta1/{+name}", "request": { - "$ref": "Saas" + "$ref": "Flag" }, "response": { - "$ref": "Saas" + "$ref": "Flag" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -991,31 +991,31 @@ } } }, - "tenants": { + "releases": { "methods": { "create": { - "description": "Create a new tenant.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tenants", + "description": "Create a new release.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/releases", "httpMethod": "POST", - "id": "saasservicemgmt.projects.locations.tenants.create", + "id": "saasservicemgmt.projects.locations.releases.create", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The parent of the tenant.", + "description": "Required. The parent of the release.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" }, - "requestId": { - "description": "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).", + "releaseId": { + "description": "Required. The ID value for the new release.", "location": "query", "type": "string" }, - "tenantId": { - "description": "Required. The ID value for the new tenant.", + "requestId": { + "description": "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" }, @@ -1025,35 +1025,35 @@ "type": "boolean" } }, - "path": "v1beta1/{+parent}/tenants", + "path": "v1beta1/{+parent}/releases", "request": { - "$ref": "Tenant" + "$ref": "Release" }, "response": { - "$ref": "Tenant" + "$ref": "Release" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "delete": { - "description": "Delete a single tenant.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tenants/{tenantsId}", + "description": "Delete a single release.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/releases/{releasesId}", "httpMethod": "DELETE", - "id": "saasservicemgmt.projects.locations.tenants.delete", + "id": "saasservicemgmt.projects.locations.releases.delete", "parameterOrder": [ "name" ], "parameters": { "etag": { - "description": "The etag known to the client for the expected state of the tenant. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the tenant. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "description": "The etag known to the client for the expected state of the release. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the release. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", "location": "query", "type": "string" }, "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tenants/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/releases/[^/]+$", "required": true, "type": "string" }, @@ -1077,10 +1077,10 @@ ] }, "get": { - "description": "Retrieve a single tenant.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tenants/{tenantsId}", + "description": "Retrieve a single release.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/releases/{releasesId}", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.tenants.get", + "id": "saasservicemgmt.projects.locations.releases.get", "parameterOrder": [ "name" ], @@ -1088,24 +1088,24 @@ "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tenants/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/releases/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "Tenant" + "$ref": "Release" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Retrieve a collection of tenants.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tenants", + "description": "Retrieve a collection of releases.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/releases", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.tenants.list", + "id": "saasservicemgmt.projects.locations.releases.list", "parameterOrder": [ "parent" ], @@ -1121,7 +1121,7 @@ "type": "string" }, "pageSize": { - "description": "The maximum number of tenants to send per page.", + "description": "The maximum number of releases to send per page.", "format": "int32", "location": "query", "type": "integer" @@ -1132,34 +1132,34 @@ "type": "string" }, "parent": { - "description": "Required. The parent of the tenant.", + "description": "Required. The parent of the release.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/tenants", + "path": "v1beta1/{+parent}/releases", "response": { - "$ref": "ListTenantsResponse" + "$ref": "ListReleasesResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Update a single tenant.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tenants/{tenantsId}", + "description": "Update a single release.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/releases/{releasesId}", "httpMethod": "PATCH", - "id": "saasservicemgmt.projects.locations.tenants.patch", + "id": "saasservicemgmt.projects.locations.releases.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/tenants/{tenant}\"", + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/releases/{release}\"", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/tenants/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/releases/[^/]+$", "required": true, "type": "string" }, @@ -1169,7 +1169,7 @@ "type": "string" }, "updateMask": { - "description": "Field mask is used to specify the fields to be overwritten in the Tenant 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 in the Tenant will be overwritten.", + "description": "Field mask is used to specify the fields to be overwritten in the Release 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 in the Release will be overwritten.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1182,10 +1182,10 @@ }, "path": "v1beta1/{+name}", "request": { - "$ref": "Tenant" + "$ref": "Release" }, "response": { - "$ref": "Tenant" + "$ref": "Release" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -1193,19 +1193,19 @@ } } }, - "unitKinds": { + "rolloutKinds": { "methods": { "create": { - "description": "Create a new unit kind.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitKinds", + "description": "Create a new rollout kind.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rolloutKinds", "httpMethod": "POST", - "id": "saasservicemgmt.projects.locations.unitKinds.create", + "id": "saasservicemgmt.projects.locations.rolloutKinds.create", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The parent of the unit kind.", + "description": "Required. The parent of the rollout kind.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -1216,8 +1216,8 @@ "location": "query", "type": "string" }, - "unitKindId": { - "description": "Required. The ID value for the new unit kind.", + "rolloutKindId": { + "description": "Required. The ID value for the new rollout kind.", "location": "query", "type": "string" }, @@ -1227,35 +1227,35 @@ "type": "boolean" } }, - "path": "v1beta1/{+parent}/unitKinds", + "path": "v1beta1/{+parent}/rolloutKinds", "request": { - "$ref": "UnitKind" + "$ref": "RolloutKind" }, "response": { - "$ref": "UnitKind" + "$ref": "RolloutKind" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "delete": { - "description": "Delete a single unit kind.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitKinds/{unitKindsId}", + "description": "Delete a single rollout kind.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rolloutKinds/{rolloutKindsId}", "httpMethod": "DELETE", - "id": "saasservicemgmt.projects.locations.unitKinds.delete", + "id": "saasservicemgmt.projects.locations.rolloutKinds.delete", "parameterOrder": [ "name" ], "parameters": { "etag": { - "description": "The etag known to the client for the expected state of the unit kind. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit kind. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "description": "The etag known to the client for the expected state of the rollout kind. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the rollout kind. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", "location": "query", "type": "string" }, "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/unitKinds/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/rolloutKinds/[^/]+$", "required": true, "type": "string" }, @@ -1279,10 +1279,10 @@ ] }, "get": { - "description": "Retrieve a single unit kind.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitKinds/{unitKindsId}", + "description": "Retrieve a single rollout kind.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rolloutKinds/{rolloutKindsId}", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.unitKinds.get", + "id": "saasservicemgmt.projects.locations.rolloutKinds.get", "parameterOrder": [ "name" ], @@ -1290,24 +1290,24 @@ "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/unitKinds/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/rolloutKinds/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "UnitKind" + "$ref": "RolloutKind" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Retrieve a collection of unit kinds.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitKinds", + "description": "Retrieve a collection of rollout kinds.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rolloutKinds", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.unitKinds.list", + "id": "saasservicemgmt.projects.locations.rolloutKinds.list", "parameterOrder": [ "parent" ], @@ -1323,7 +1323,7 @@ "type": "string" }, "pageSize": { - "description": "The maximum number of unit kinds to send per page.", + "description": "The maximum number of rollout kinds to send per page.", "format": "int32", "location": "query", "type": "integer" @@ -1334,34 +1334,34 @@ "type": "string" }, "parent": { - "description": "Required. The parent of the unit kind.", + "description": "Required. The parent of the rollout kind.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/unitKinds", + "path": "v1beta1/{+parent}/rolloutKinds", "response": { - "$ref": "ListUnitKindsResponse" + "$ref": "ListRolloutKindsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Update a single unit kind.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitKinds/{unitKindsId}", + "description": "Update a single rollout kind.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rolloutKinds/{rolloutKindsId}", "httpMethod": "PATCH", - "id": "saasservicemgmt.projects.locations.unitKinds.patch", + "id": "saasservicemgmt.projects.locations.rolloutKinds.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/unitKinds/{unitKind}\"", + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}\"", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/unitKinds/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/rolloutKinds/[^/]+$", "required": true, "type": "string" }, @@ -1371,7 +1371,7 @@ "type": "string" }, "updateMask": { - "description": "Field mask is used to specify the fields to be overwritten in the UnitKind 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 in the UnitKind will be overwritten.", + "description": "Field mask is used to specify the fields to be overwritten in the RolloutKind 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 in the RolloutKind will be overwritten.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1384,10 +1384,10 @@ }, "path": "v1beta1/{+name}", "request": { - "$ref": "UnitKind" + "$ref": "RolloutKind" }, "response": { - "$ref": "UnitKind" + "$ref": "RolloutKind" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -1395,19 +1395,19 @@ } } }, - "unitOperations": { + "rollouts": { "methods": { "create": { - "description": "Create a new unit operation.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitOperations", + "description": "Create a new rollout.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rollouts", "httpMethod": "POST", - "id": "saasservicemgmt.projects.locations.unitOperations.create", + "id": "saasservicemgmt.projects.locations.rollouts.create", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The parent of the unit operation.", + "description": "Required. The parent of the rollout.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -1418,8 +1418,8 @@ "location": "query", "type": "string" }, - "unitOperationId": { - "description": "Required. The ID value for the new unit operation.", + "rolloutId": { + "description": "Required. The ID value for the new rollout.", "location": "query", "type": "string" }, @@ -1429,35 +1429,35 @@ "type": "boolean" } }, - "path": "v1beta1/{+parent}/unitOperations", + "path": "v1beta1/{+parent}/rollouts", "request": { - "$ref": "UnitOperation" + "$ref": "Rollout" }, "response": { - "$ref": "UnitOperation" + "$ref": "Rollout" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "delete": { - "description": "Delete a single unit operation.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitOperations/{unitOperationsId}", + "description": "Delete a single rollout.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}", "httpMethod": "DELETE", - "id": "saasservicemgmt.projects.locations.unitOperations.delete", + "id": "saasservicemgmt.projects.locations.rollouts.delete", "parameterOrder": [ "name" ], "parameters": { "etag": { - "description": "The etag known to the client for the expected state of the unit operation. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit operation. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "description": "The etag known to the client for the expected state of the rollout. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the rollout. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", "location": "query", "type": "string" }, "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/unitOperations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/rollouts/[^/]+$", "required": true, "type": "string" }, @@ -1481,10 +1481,10 @@ ] }, "get": { - "description": "Retrieve a single unit operation.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitOperations/{unitOperationsId}", + "description": "Retrieve a single rollout.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.unitOperations.get", + "id": "saasservicemgmt.projects.locations.rollouts.get", "parameterOrder": [ "name" ], @@ -1492,24 +1492,24 @@ "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/unitOperations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/rollouts/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "UnitOperation" + "$ref": "Rollout" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Retrieve a collection of unit operations.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitOperations", + "description": "Retrieve a collection of rollouts.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rollouts", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.unitOperations.list", + "id": "saasservicemgmt.projects.locations.rollouts.list", "parameterOrder": [ "parent" ], @@ -1525,7 +1525,7 @@ "type": "string" }, "pageSize": { - "description": "The maximum number of unit operations to send per page.", + "description": "The maximum number of rollouts to send per page.", "format": "int32", "location": "query", "type": "integer" @@ -1536,34 +1536,34 @@ "type": "string" }, "parent": { - "description": "Required. The parent of the unit operation.", + "description": "Required. The parent of the rollout.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/unitOperations", + "path": "v1beta1/{+parent}/rollouts", "response": { - "$ref": "ListUnitOperationsResponse" + "$ref": "ListRolloutsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Update a single unit operation.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitOperations/{unitOperationsId}", + "description": "Update a single rollout.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}", "httpMethod": "PATCH", - "id": "saasservicemgmt.projects.locations.unitOperations.patch", + "id": "saasservicemgmt.projects.locations.rollouts.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/unitOperations/{unitOperation}\"", + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/rollout/{rollout_id}\"", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/unitOperations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/rollouts/[^/]+$", "required": true, "type": "string" }, @@ -1573,7 +1573,7 @@ "type": "string" }, "updateMask": { - "description": "Field mask is used to specify the fields to be overwritten in the UnitOperation 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 in the UnitOperation will be overwritten.", + "description": "Field mask is used to specify the fields to be overwritten in the Rollout 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 in the Rollout will be overwritten.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1586,10 +1586,10 @@ }, "path": "v1beta1/{+name}", "request": { - "$ref": "UnitOperation" + "$ref": "Rollout" }, "response": { - "$ref": "UnitOperation" + "$ref": "Rollout" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -1597,19 +1597,19 @@ } } }, - "units": { + "saas": { "methods": { "create": { - "description": "Create a new unit.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/units", + "description": "Create a new saas.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/saas", "httpMethod": "POST", - "id": "saasservicemgmt.projects.locations.units.create", + "id": "saasservicemgmt.projects.locations.saas.create", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The parent of the unit.", + "description": "Required. The parent of the saas.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -1620,8 +1620,8 @@ "location": "query", "type": "string" }, - "unitId": { - "description": "Required. The ID value for the new unit.", + "saasId": { + "description": "Required. The ID value for the new saas.", "location": "query", "type": "string" }, @@ -1631,35 +1631,35 @@ "type": "boolean" } }, - "path": "v1beta1/{+parent}/units", + "path": "v1beta1/{+parent}/saas", "request": { - "$ref": "Unit" + "$ref": "Saas" }, "response": { - "$ref": "Unit" + "$ref": "Saas" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "delete": { - "description": "Delete a single unit.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/units/{unitsId}", + "description": "Delete a single saas.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/saas/{saasId}", "httpMethod": "DELETE", - "id": "saasservicemgmt.projects.locations.units.delete", + "id": "saasservicemgmt.projects.locations.saas.delete", "parameterOrder": [ "name" ], "parameters": { "etag": { - "description": "The etag known to the client for the expected state of the unit. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "description": "The etag known to the client for the expected state of the saas. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the saas. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", "location": "query", "type": "string" }, "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/units/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/saas/[^/]+$", "required": true, "type": "string" }, @@ -1683,10 +1683,10 @@ ] }, "get": { - "description": "Retrieve a single unit.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/units/{unitsId}", + "description": "Retrieve a single saas.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/saas/{saasId}", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.units.get", + "id": "saasservicemgmt.projects.locations.saas.get", "parameterOrder": [ "name" ], @@ -1694,24 +1694,24 @@ "name": { "description": "Required. The resource name of the resource within a service.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/units/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/saas/[^/]+$", "required": true, "type": "string" } }, "path": "v1beta1/{+name}", "response": { - "$ref": "Unit" + "$ref": "Saas" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Retrieve a collection of units.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/units", + "description": "Retrieve a collection of saas.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/saas", "httpMethod": "GET", - "id": "saasservicemgmt.projects.locations.units.list", + "id": "saasservicemgmt.projects.locations.saas.list", "parameterOrder": [ "parent" ], @@ -1727,7 +1727,7 @@ "type": "string" }, "pageSize": { - "description": "The maximum number of units to send per page.", + "description": "The maximum number of saas to send per page.", "format": "int32", "location": "query", "type": "integer" @@ -1738,34 +1738,34 @@ "type": "string" }, "parent": { - "description": "Required. The parent of the unit.", + "description": "Required. The parent of the saas.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/units", + "path": "v1beta1/{+parent}/saas", "response": { - "$ref": "ListUnitsResponse" + "$ref": "ListSaasResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Update a single unit.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/units/{unitsId}", + "description": "Update a single saas.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/saas/{saasId}", "httpMethod": "PATCH", - "id": "saasservicemgmt.projects.locations.units.patch", + "id": "saasservicemgmt.projects.locations.saas.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/units/{unit}\"", + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/saas/{saas}\"", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/units/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/saas/[^/]+$", "required": true, "type": "string" }, @@ -1775,7 +1775,7 @@ "type": "string" }, "updateMask": { - "description": "Field mask is used to specify the fields to be overwritten in the Unit 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 in the Unit will be overwritten.", + "description": "Field mask is used to specify the fields to be overwritten in the Saas 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 in the Saas will be overwritten.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1788,102 +1788,1520 @@ }, "path": "v1beta1/{+name}", "request": { - "$ref": "Unit" + "$ref": "Saas" }, "response": { - "$ref": "Unit" + "$ref": "Saas" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] } } - } - } - } - } - } - }, - "revision": "20260214", - "rootUrl": "https://saasservicemgmt.googleapis.com/", - "schemas": { - "Aggregate": { - "description": "Represents the aggregation of a set of population of like records by a certain group. For example, a collection of unit counts can be aggregated and grouped by their state.", - "id": "Aggregate", - "properties": { - "count": { - "description": "Required. Number of records in the group.", - "format": "int32", - "type": "integer" - }, - "group": { - "description": "Required. Group by which to aggregate.", - "type": "string" - } - }, - "type": "object" - }, - "Blueprint": { - "description": "Blueprints are OCI Images that contain all of the artifacts needed to provision a unit. Metadata such as, type of the engine used to actuate the blueprint (e.g. terraform, helm etc) and version will come from the image manifest. If the hostname is omitted, it will be assumed to be the regional path to Artifact Registry (eg. us-east1-docker.pkg.dev).", - "id": "Blueprint", - "properties": { - "engine": { - "description": "Output only. Type of the engine used to actuate the blueprint. e.g. terraform, helm etc.", - "readOnly": true, - "type": "string" - }, - "package": { - "description": "Optional. Immutable. URI to a blueprint used by the Unit (required unless unitKind or release is set).", - "type": "string" - }, - "version": { - "description": "Output only. Version metadata if present on the blueprint.", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "Dependency": { - "description": "Dependency represent a single dependency with another unit kind by alias.", - "id": "Dependency", - "properties": { - "alias": { - "description": "Required. An alias for the dependency. Used for input variable mapping.", - "type": "string" - }, - "unitKind": { - "description": "Required. Immutable. The unit kind of the dependency.", + }, + "tenants": { + "methods": { + "create": { + "description": "Create a new tenant.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tenants", + "httpMethod": "POST", + "id": "saasservicemgmt.projects.locations.tenants.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent of the tenant.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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" + }, + "tenantId": { + "description": "Required. The ID value for the new tenant.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+parent}/tenants", + "request": { + "$ref": "Tenant" + }, + "response": { + "$ref": "Tenant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a single tenant.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tenants/{tenantsId}", + "httpMethod": "DELETE", + "id": "saasservicemgmt.projects.locations.tenants.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The etag known to the client for the expected state of the tenant. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the tenant. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tenants/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve a single tenant.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tenants/{tenantsId}", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.tenants.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tenants/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Tenant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve a collection of tenants.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tenants", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.tenants.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter the list as specified in https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Order results as specified in https://google.aip.dev/132.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of tenants to send per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent of the tenant.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/tenants", + "response": { + "$ref": "ListTenantsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a single tenant.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tenants/{tenantsId}", + "httpMethod": "PATCH", + "id": "saasservicemgmt.projects.locations.tenants.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/tenants/{tenant}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/tenants/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "Field mask is used to specify the fields to be overwritten in the Tenant 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 in the Tenant will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "Tenant" + }, + "response": { + "$ref": "Tenant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "unitKinds": { + "methods": { + "create": { + "description": "Create a new unit kind.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitKinds", + "httpMethod": "POST", + "id": "saasservicemgmt.projects.locations.unitKinds.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent of the unit kind.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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" + }, + "unitKindId": { + "description": "Required. The ID value for the new unit kind.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+parent}/unitKinds", + "request": { + "$ref": "UnitKind" + }, + "response": { + "$ref": "UnitKind" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a single unit kind.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitKinds/{unitKindsId}", + "httpMethod": "DELETE", + "id": "saasservicemgmt.projects.locations.unitKinds.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The etag known to the client for the expected state of the unit kind. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit kind. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/unitKinds/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve a single unit kind.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitKinds/{unitKindsId}", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.unitKinds.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/unitKinds/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "UnitKind" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve a collection of unit kinds.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitKinds", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.unitKinds.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter the list as specified in https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Order results as specified in https://google.aip.dev/132.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of unit kinds to send per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent of the unit kind.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/unitKinds", + "response": { + "$ref": "ListUnitKindsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a single unit kind.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitKinds/{unitKindsId}", + "httpMethod": "PATCH", + "id": "saasservicemgmt.projects.locations.unitKinds.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/unitKinds/{unitKind}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/unitKinds/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "Field mask is used to specify the fields to be overwritten in the UnitKind 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 in the UnitKind will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "UnitKind" + }, + "response": { + "$ref": "UnitKind" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "unitOperations": { + "methods": { + "create": { + "description": "Create a new unit operation.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitOperations", + "httpMethod": "POST", + "id": "saasservicemgmt.projects.locations.unitOperations.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent of the unit operation.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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" + }, + "unitOperationId": { + "description": "Required. The ID value for the new unit operation.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+parent}/unitOperations", + "request": { + "$ref": "UnitOperation" + }, + "response": { + "$ref": "UnitOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a single unit operation.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitOperations/{unitOperationsId}", + "httpMethod": "DELETE", + "id": "saasservicemgmt.projects.locations.unitOperations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The etag known to the client for the expected state of the unit operation. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit operation. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/unitOperations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve a single unit operation.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitOperations/{unitOperationsId}", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.unitOperations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/unitOperations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "UnitOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve a collection of unit operations.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitOperations", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.unitOperations.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter the list as specified in https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Order results as specified in https://google.aip.dev/132.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of unit operations to send per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent of the unit operation.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/unitOperations", + "response": { + "$ref": "ListUnitOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a single unit operation.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/unitOperations/{unitOperationsId}", + "httpMethod": "PATCH", + "id": "saasservicemgmt.projects.locations.unitOperations.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/unitOperations/{unitOperation}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/unitOperations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "Field mask is used to specify the fields to be overwritten in the UnitOperation 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 in the UnitOperation will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "UnitOperation" + }, + "response": { + "$ref": "UnitOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "units": { + "methods": { + "create": { + "description": "Create a new unit.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/units", + "httpMethod": "POST", + "id": "saasservicemgmt.projects.locations.units.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent of the unit.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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" + }, + "unitId": { + "description": "Required. The ID value for the new unit.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+parent}/units", + "request": { + "$ref": "Unit" + }, + "response": { + "$ref": "Unit" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete a single unit.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/units/{unitsId}", + "httpMethod": "DELETE", + "id": "saasservicemgmt.projects.locations.units.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The etag known to the client for the expected state of the unit. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/units/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve a single unit.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/units/{unitsId}", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.units.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the resource within a service.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/units/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Unit" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve a collection of units.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/units", + "httpMethod": "GET", + "id": "saasservicemgmt.projects.locations.units.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filter the list as specified in https://google.aip.dev/160.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Order results as specified in https://google.aip.dev/132.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of units to send per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent of the unit.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/units", + "response": { + "$ref": "ListUnitsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update a single unit.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/units/{unitsId}", + "httpMethod": "PATCH", + "id": "saasservicemgmt.projects.locations.units.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/units/{unit}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/units/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "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": "Field mask is used to specify the fields to be overwritten in the Unit 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 in the Unit will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "If \"validate_only\" is set to true, the service will try to validate that this request would succeed, but will not actually make changes.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "Unit" + }, + "response": { + "$ref": "Unit" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20260415", + "rootUrl": "https://saasservicemgmt.googleapis.com/", + "schemas": { + "Aggregate": { + "description": "Represents the aggregation of a set of population of like records by a certain group. For example, a collection of unit counts can be aggregated and grouped by their state.", + "id": "Aggregate", + "properties": { + "count": { + "description": "Required. Number of records in the group.", + "format": "int32", + "type": "integer" + }, + "group": { + "description": "Required. Group by which to aggregate.", + "type": "string" + } + }, + "type": "object" + }, + "Allocation": { + "description": "Allocation defines a set of weighted flag variants, specifying how traffic is split based on the randomization unit.", + "id": "Allocation", + "properties": { + "description": { + "description": "Optional. Description of the allocation. Max length: 500 bytes.", + "type": "string" + }, + "id": { + "description": "Required. Allocation ID. Max length: 128 bytes.", + "type": "string" + }, + "randomizedOn": { + "description": "Required. Key of the context attribute that is used for traffic splitting.", + "type": "string" + }, + "slots": { + "description": "Required. Slots defines the weighted distribution of variants.", + "items": { + "$ref": "AllocationSlot" + }, + "type": "array" + } + }, + "type": "object" + }, + "AllocationSlot": { + "description": "AllocationSlot specifies a variant and the proportion of traffic allocated to it.", + "id": "AllocationSlot", + "properties": { + "variant": { + "description": "Required. Variant of the allocation slot.", + "type": "string" + }, + "weight": { + "description": "Required. Weight defines the proportion of traffic to allocate to the variant, relative to other slots in the same allocation.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AppParams": { + "description": "AppParams contains the parameters for creating an AppHub Application.", + "id": "AppParams", + "properties": { + "group": { + "description": "Grouping used to construct the name of the AppHub Application. Multiple UnitKinds can specify the same group to use the same Application across their respective units. Corresponds to the app_boundary_id in the ADC composite ApplicationTemplate. Defaults to UnitKind.name", + "type": "string" + }, + "scope": { + "$ref": "Scope", + "description": "Corresponds to the scope in the ADC composite ApplicationTemplate. Defaults to TYPE_REGIONAL." + } + }, + "type": "object" + }, + "Blueprint": { + "description": "Blueprints are OCI Images that contain all of the artifacts needed to provision a unit. Metadata such as, type of the engine used to actuate the blueprint (e.g. terraform, helm etc) and version will come from the image manifest. If the hostname is omitted, it will be assumed to be the regional path to Artifact Registry (eg. us-east1-docker.pkg.dev).", + "id": "Blueprint", + "properties": { + "engine": { + "description": "Output only. Type of the engine used to actuate the blueprint. e.g. terraform, helm etc.", + "readOnly": true, + "type": "string" + }, + "package": { + "description": "Optional. Immutable. URI to a blueprint used by the Unit (required unless unitKind or release is set).", + "type": "string" + }, + "version": { + "description": "Output only. Version metadata if present on the blueprint.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ComponentRef": { + "description": "ComponentRef represents a reference to a component resource. Next ID: 4", + "id": "ComponentRef", + "properties": { + "component": { + "description": "Name of the component in composite.Components", + "type": "string" + }, + "compositeRef": { + "$ref": "CompositeRef", + "description": "Reference to the Composite ApplicationTemplate." + }, + "revision": { + "description": "Revision of the component. If the component does not have a revision, this field will be explicitly set to the revision of the composite ApplicationTemplate.", + "type": "string" + } + }, + "type": "object" + }, + "CompositeRef": { + "description": "CompositeRef represents a reference to a composite resource. Next ID: 4", + "id": "CompositeRef", + "properties": { + "applicationTemplate": { + "description": "Required. Reference to the ApplicationTemplate resource.", + "type": "string" + }, + "revision": { + "description": "Revision of the ApplicationTemplate to use. Changes to revision will trigger manual resynchronization. If empty, ApplicationTemplate will be ignored.", + "type": "string" + }, + "syncOperation": { + "description": "Output only. Reference to on-going AppTemplate import and replication operation (i.e. the operation_id for the long-running operation). This field is opaque for external usage.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Dependency": { + "description": "Dependency represent a single dependency with another unit kind by alias.", + "id": "Dependency", + "properties": { + "alias": { + "description": "Required. An alias for the dependency. Used for input variable mapping.", + "type": "string" + }, + "unitKind": { + "description": "Required. Immutable. The unit kind of the dependency.", + "type": "string" + } + }, + "type": "object" + }, + "Deprovision": { + "description": "Deprovision is the unit operation that deprovision the underlying resources represented by a Unit. Can only execute if the Unit is currently provisioned.", + "id": "Deprovision", + "properties": {}, + "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" + }, + "ErrorBudget": { + "description": "The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused.", + "id": "ErrorBudget", + "properties": { + "allowedCount": { + "description": "Optional. The maximum number of failed units allowed in a location without pausing the rollout.", + "format": "int32", + "type": "integer" + }, + "allowedPercentage": { + "description": "Optional. The maximum percentage of units allowed to fail (0, 100] within a location without pausing the rollout.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "EvaluationRule": { + "description": "EvaluationRule defines a single rule for evaluating a feature flag. A rule consists of a condition that, if met, assigns a specific variant or allocation to the user.", + "id": "EvaluationRule", + "properties": { + "condition": { + "description": "Required. A Common Expression Language (CEL) expression that evaluates to a boolean. The expression is evaluated against the provided context. If it returns true, the rule's target is applied.", + "type": "string" + }, + "id": { + "description": "Required. Evaluation rule ID. Max length: 128 bytes.", + "type": "string" + }, + "target": { + "description": "Required. The target variant or allocation to apply if the condition is met. This should match the name of a defined variant or allocation's ID.", + "type": "string" + } + }, + "type": "object" + }, + "EvaluationSpec": { + "description": "EvaluationSpec holds rules for evaluating the value of a flag.", + "id": "EvaluationSpec", + "properties": { + "allocations": { + "description": "Optional. A list of allocations.", + "items": { + "$ref": "Allocation" + }, + "type": "array" + }, + "attributes": { + "description": "Optional. Names of the context attributes that are used in the evaluation rules and allocations.", + "items": { + "type": "string" + }, + "type": "array" + }, + "defaultTarget": { + "description": "Required. Default variant or allocation of the flag.", + "type": "string" + }, + "rules": { + "description": "Optional. Evaluation rules define the logic for evaluating the flag against a given context. The rules are evaluated sequentially in their specified order.", + "items": { + "$ref": "EvaluationRule" + }, + "type": "array" + }, + "variants": { + "deprecated": true, + "description": "Optional. A list of variants.", + "items": { + "$ref": "Variant" + }, + "type": "array" + } + }, + "type": "object" + }, + "Flag": { + "description": "Represents a single Flag.", + "id": "Flag", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", + "type": "object" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. Description of the flag. Max length: 500 bytes.", + "type": "string" + }, + "etag": { + "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", + "readOnly": true, + "type": "string" + }, + "evaluationSpec": { + "$ref": "EvaluationSpec", + "description": "Optional. Specification of how the flag value should be evaluated. If a bool flag is created without an evaluation_spec specified, two default variants, \"Enabled\" (with bool_value = true) and \"Disabled\" (with bool_value = false), are created by default, and \"Disabled\" is set as the default_target." + }, + "flagSet": { + "description": "Optional. Flag set this flag belongs to.", + "type": "string" + }, + "flagValueType": { + "description": "Optional. Immutable. Flag value type.", + "enum": [ + "FLAG_VALUE_TYPE_UNSPECIFIED", + "FLAG_VALUE_TYPE_BOOLEAN", + "FLAG_VALUE_TYPE_INTEGER", + "FLAG_VALUE_TYPE_STRING", + "FLAG_VALUE_TYPE_DOUBLE" + ], + "enumDescriptions": [ + "Unspecified flag value type.", + "Boolean flag value type.", + "Integer flag value type.", + "String flag value type.", + "Double flag value type." + ], + "type": "string" + }, + "key": { + "description": "Required. Immutable. Flag key used in runtime evaluation APIs (OpenFeature). Max length: 256 bytes.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", + "type": "object" + }, + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/flags/{flag_id}\"", + "type": "string" + }, + "state": { + "description": "Optional. Current state of the flag.", + "enum": [ + "FLAG_STATE_UNSPECIFIED", + "FLAG_STATE_IN_DEVELOPMENT", + "FLAG_STATE_ACTIVE", + "FLAG_STATE_SUNSETTING", + "FLAG_STATE_CLEANUP" + ], + "enumDescriptions": [ + "Flag state is unspecified.", + "Flag is in development state.", + "Flag is in active state.", + "Flag is in deprecated state.", + "Flag is in cleanup state." + ], + "type": "string" + }, + "uid": { + "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", + "readOnly": true, + "type": "string" + }, + "unitKind": { + "description": "Required. Immutable. UnitKind that can consume this flag.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "valueType": { + "deprecated": true, + "description": "Optional. Immutable. Deprecated: Use `flag_value_type` instead. Flag value type.", + "enum": [ + "FLAG_VALUE_TYPE_UNSPECIFIED", + "FLAG_VALUE_TYPE_BOOL", + "FLAG_VALUE_TYPE_INT", + "FLAG_VALUE_TYPE_STRING", + "FLAG_VALUE_TYPE_DOUBLE" + ], + "enumDescriptions": [ + "", + "Boolean flag value type.", + "Integer flag value type.", + "String flag value type.", + "Double flag type." + ], + "type": "string" + }, + "variants": { + "description": "Optional. A list of variants.", + "items": { + "$ref": "FlagVariant" + }, + "type": "array" + } + }, + "type": "object" + }, + "FlagAttribute": { + "description": "FlagAttribute defines a custom property in the evaluation context.", + "id": "FlagAttribute", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", + "type": "object" + }, + "attributeValueType": { + "description": "Optional. Immutable. Type of the attribute.", + "enum": [ + "FLAG_ATTRIBUTE_VALUE_TYPE_UNSPECIFIED", + "FLAG_ATTRIBUTE_VALUE_TYPE_BOOLEAN", + "FLAG_ATTRIBUTE_VALUE_TYPE_INTEGER", + "FLAG_ATTRIBUTE_VALUE_TYPE_STRING", + "FLAG_ATTRIBUTE_VALUE_TYPE_DOUBLE" + ], + "enumDescriptions": [ + "Unspecified flag attribute value type.", + "Boolean flag attribute value type.", + "Integer flag attribute value type.", + "String flag attribute value type.", + "Double flag attribute value type." + ], + "type": "string" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "etag": { + "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", + "readOnly": true, + "type": "string" + }, + "key": { + "description": "Required. Immutable. The identifier for the attribute, used as the key in the evaluation context. The attribute key is referenced in the evaluation rules and used in the OpenFeature evaluation API to specify the attribute context.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", + "type": "object" + }, + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/flagAttributes/{flag_attribute_id}\"", + "type": "string" + }, + "uid": { + "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "valueType": { + "deprecated": true, + "description": "Optional. Immutable. Deprecated: Use `attribute_value_type` instead. Type of the attribute.", + "enum": [ + "FLAG_ATTRIBUTE_VALUE_TYPE_UNSPECIFIED", + "BOOLEAN", + "INTEGER", + "STRING", + "DOUBLE" + ], + "enumDescriptions": [ + "Unspecified flag attribute value type.", + "Boolean flag attribute value type.", + "Integer flag attribute value type.", + "String flag attribute value type.", + "Double flag attribute value type." + ], + "type": "string" + } + }, + "type": "object" + }, + "FlagRelease": { + "description": "A collection of FlagRevisions.", + "id": "FlagRelease", + "properties": { + "allFlags": { + "deprecated": true, + "description": "Optional. Immutable. DEPRECATED: Use all_flags_release instead. Rollout all flags in the provided UnitKind. Only one of flag_revisions, all_flags, or flag_sets can be set.", + "type": "boolean" + }, + "allFlagsRelease": { + "description": "Optional. Immutable. Specifies the release includes all flags.", + "type": "boolean" + }, + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", + "type": "object" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "effectiveFlagRevisions": { + "description": "Output only. An OUTPUT_ONLY field that contains FlagRevisions to be rolled out. This is the ultimate source of truth of what a Rollout or a UnitOperation carries.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "etag": { + "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", + "readOnly": true, + "type": "string" + }, + "flagRevisions": { + "deprecated": true, + "description": "Optional. Immutable. DEPRECATED: Use flag_revisions_release instead. FlagRevisions to be rolled out. Only one of flag_revisions, all_flags, or flag_sets can be set. It used to be the ultimate source to truth and has been moved to effective_flag_revisions.", + "items": { + "type": "string" + }, + "type": "array" + }, + "flagRevisionsRelease": { + "$ref": "FlagRevisionList", + "description": "Optional. Immutable. Specifies the release consists of a list of flag revisions." + }, + "flagSets": { + "deprecated": true, + "description": "Optional. Immutable. DEPRECATED: Use flag_sets_release instead. Flag sets to be rolled out. Only one of flag_revisions, all_flags, or flag_sets can be set.", + "items": { + "type": "string" + }, + "type": "array" + }, + "flagSetsRelease": { + "$ref": "FlagSetList", + "description": "Optional. Immutable. Specifies the release consists of a list of flag sets." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", + "type": "object" + }, + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/flagReleases/{flag_release_id}\"", + "type": "string" + }, + "obsoleteFlags": { + "deprecated": true, + "description": "Optional. Immutable. Deprecated: Use the 'state' field in the 'Flag' resource to manage the cleanup of flag lifecycles including removal from UnitKind and Units. Flags to be removed from given UnitKind and all related Units. If Flag is provided here, its FlagRevisions will be removed from UnitKind and Units.", + "items": { + "type": "string" + }, + "type": "array" + }, + "uid": { + "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", + "readOnly": true, + "type": "string" + }, + "unitKind": { + "description": "Required. Immutable. The UnitKind this FlagRelease applies to.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "FlagRevision": { + "description": "A snapshot of the EvaluationSpec for the Flag.", + "id": "FlagRevision", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", + "type": "object" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "etag": { + "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", + "readOnly": true, + "type": "string" + }, + "evaluationSpec": { + "$ref": "EvaluationSpec", + "deprecated": true, + "description": "Output only. Immutable. Snapshot of the EvaluationSpec for the flag. DEPRECATED: Use snapshot instead.", + "readOnly": true + }, + "flag": { + "description": "Required. Immutable. Name of the Flag this is a revision of.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", + "type": "object" + }, + "name": { + "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/flagRevisions/{flag_revision_id}\"", + "type": "string" + }, + "snapshot": { + "$ref": "Flag", + "description": "Output only. Immutable. Snapshot of the Flag.", + "readOnly": true + }, + "uid": { + "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "FlagRevisionList": { + "description": "Wrapper for a list of flag revisions.", + "id": "FlagRevisionList", + "properties": { + "revisions": { + "description": "Required. FlagRevisions to be rolled out.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "FlagSetList": { + "description": "Wrapper for a list of flag sets.", + "id": "FlagSetList", + "properties": { + "sets": { + "description": "Required. Flag sets to be rolled out.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "FlagUpdate": { + "description": "FlagUpdate is a UnitOperation that pushes new flag values to Units.", + "id": "FlagUpdate", + "properties": { + "flagRelease": { + "description": "Required. Flag release being applied by UnitOperation.", "type": "string" } }, "type": "object" }, - "Deprovision": { - "description": "Deprovision is the unit operation that deprovision the underlying resources represented by a Unit. Can only execute if the Unit is currently provisioned.", - "id": "Deprovision", - "properties": {}, - "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" - }, - "ErrorBudget": { - "description": "The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused.", - "id": "ErrorBudget", + "FlagVariant": { + "description": "Variant is an identifier for a value (name assigned to a value).", + "id": "FlagVariant", "properties": { - "allowedCount": { - "description": "Optional. The maximum number of failed units allowed in a location without pausing the rollout.", - "format": "int32", - "type": "integer" + "booleanValue": { + "description": "Optional. Boolean variant value.", + "type": "boolean" }, - "allowedPercentage": { - "description": "Optional. The maximum percentage of units allowed to fail (0, 100] within a location without pausing the rollout.", - "format": "int32", - "type": "integer" + "description": { + "description": "Optional. A human-readable description of what this variant does or represents.", + "type": "string" + }, + "doubleValue": { + "description": "Optional. Double variant value.", + "format": "double", + "type": "number" + }, + "id": { + "description": "Required. Variant ID. Max length: 128 bytes.", + "type": "string" + }, + "integerValue": { + "description": "Optional. Integer variant value.", + "format": "int64", + "type": "string" + }, + "stringValue": { + "description": "Optional. String variant value.", + "type": "string" + }, + "trackingId": { + "description": "Optional. trackingId is unique depending on name and value of the variant within the scope of the service. It is typically generated by the server and must not be changed. trackingId is used to uniquely identify and track variants.", + "type": "string" } }, "type": "object" @@ -1937,6 +3355,106 @@ }, "type": "object" }, + "ListFlagAttributesResponse": { + "description": "The response structure for the ListFlagAttributes method.", + "id": "ListFlagAttributesResponse", + "properties": { + "flagAttributes": { + "description": "The resulting flag attributes.", + "items": { + "$ref": "FlagAttribute" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If present, the next page token can be provided to a subsequent ListFlagAttributes call to list the next page. If empty, there are no more pages.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListFlagReleasesResponse": { + "description": "The response structure for the ListFlagReleases method.", + "id": "ListFlagReleasesResponse", + "properties": { + "flagReleases": { + "description": "The resulting flag releases.", + "items": { + "$ref": "FlagRelease" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If present, the next page token can be provided to a subsequent ListFlagReleases call to list the next page. If empty, there are no more pages.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListFlagRevisionsResponse": { + "description": "The response structure for the ListFlagRevisions method.", + "id": "ListFlagRevisionsResponse", + "properties": { + "flagRevisions": { + "description": "The resulting flag revisions.", + "items": { + "$ref": "FlagRevision" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If present, the next page token can be provided to a subsequent ListFlagRevisions call to list the next page. If empty, there are no more pages.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListFlagsResponse": { + "description": "The response structure for the ListFlags method.", + "id": "ListFlagsResponse", + "properties": { + "flags": { + "description": "The resulting flags.", + "items": { + "$ref": "Flag" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If present, the next page token can be provided to a subsequent ListFlags call to list the next page. If empty, there are no more pages.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListLocationsResponse": { "description": "The response message for Locations.ListLocations.", "id": "ListLocationsResponse", @@ -2207,6 +3725,11 @@ "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", "type": "object" }, + "applicationTemplateComponent": { + "$ref": "ComponentRef", + "description": "Output only. Reference to component and revision in a composite ApplicationTemplate.", + "readOnly": true + }, "blueprint": { "$ref": "Blueprint", "description": "Optional. Blueprints are OCI Images that contain all of the artifacts needed to provision a unit." @@ -2335,6 +3858,10 @@ "readOnly": true, "type": "string" }, + "flagRelease": { + "description": "Optional. Immutable. Name of the FlagRelease to be rolled out to the target Units. Release and FlagRelease are mutually exclusive. Note: `release` comment needs to be adjusted to mention that \"Release and FlagRelease are mutually exclusive\" when visibility restriction will be lifted.", + "type": "string" + }, "labels": { "additionalProperties": { "type": "string" @@ -2356,7 +3883,7 @@ "type": "string" }, "rolloutKind": { - "description": "Optional. Immutable. Name of the RolloutKind this rollout is stemming from and adhering to.", + "description": "Required. Immutable. Name of the RolloutKind this rollout is stemming from and adhering to.", "type": "string" }, "rolloutOrchestrationStrategy": { @@ -2497,22 +4024,6 @@ "description": "Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels.", "type": "object" }, - "maintenancePolicyEnforcement": { - "description": "Optional. Value among strict (enforcing maintenance policy and only looking at Units with maintenance policy), ignore (ignoring maintenance policy) and skip (skipping Units with maintenance policy)", - "enum": [ - "MAINTENANCE_POLICY_ENFORCEMENT_UNSPECIFIED", - "MAINTENANCE_POLICY_ENFORCEMENT_STRICT", - "MAINTENANCE_POLICY_ENFORCEMENT_IGNORED", - "MAINTENANCE_POLICY_ENFORCEMENT_SKIPPED" - ], - "enumDescriptions": [ - "", - "", - "", - "" - ], - "type": "string" - }, "name": { "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}\"", "type": "string" @@ -2561,6 +4072,12 @@ "description": "RolloutStats contains information about the progress of a rollout.", "id": "RolloutStats", "properties": { + "estimatedTotalUnitCount": { + "description": "Optional. Output only. Estimated number of units based. The estimation is computed upon creation of the rollout.", + "format": "int64", + "readOnly": true, + "type": "string" + }, "operationsByState": { "description": "Optional. Output only. Unordered list. A breakdown of the progress of operations triggered by the rollout. Provides a count of Operations by their state. This can be used to determine the number of units which have been updated, or are scheduled to be updated. There will be at most one entry per group. Possible values for operation groups are: - \"SCHEDULED\" - \"PENDING\" - \"RUNNING\" - \"SUCCEEDED\" - \"FAILED\" - \"CANCELLED\"", "items": { @@ -2594,12 +4111,34 @@ "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", "type": "object" }, + "applicationTemplate": { + "$ref": "CompositeRef", + "description": "Reference to composite ApplicationTemplate. When specified, the template components will be imported into their equivalent UnitKind, Release and Blueprint resources. Deleted references will not delete imported resources. Should only be specified on source regions, and be unspecified on replica regions." + }, + "blueprintRepo": { + "description": "Output only. Name of repository in Artifact Registry for system-generated Blueprints, eg. Blueprints of imported ApplicationTemplates.", + "readOnly": true, + "type": "string" + }, + "conditions": { + "description": "Output only. A set of conditions which indicate the various conditions this resource can have.", + "items": { + "$ref": "SaasCondition" + }, + "readOnly": true, + "type": "array" + }, "createTime": { "description": "Output only. The timestamp when the resource was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, + "error": { + "$ref": "Status", + "description": "Output only. If the state is FAILED, the corresponding error code and message. Defaults to code=OK for all other states.", + "readOnly": true + }, "etag": { "description": "Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written.", "readOnly": true, @@ -2623,6 +4162,38 @@ "description": "Identifier. The resource name (full URI of the resource) following the standard naming scheme: \"projects/{project}/locations/{location}/saas/{saas}\"", "type": "string" }, + "state": { + "description": "Output only. State of the Saas. It is always in ACTIVE state if the application_template is empty.", + "enum": [ + "STATE_TYPE_UNSPECIFIED", + "STATE_ACTIVE", + "STATE_RUNNING", + "STATE_FAILED", + "ACTIVE", + "RUNNING", + "FAILED" + ], + "enumDeprecated": [ + false, + false, + false, + false, + true, + true, + true + ], + "enumDescriptions": [ + "State type is unspecified.", + "The Saas is ready", + "In the process of importing, synchronizing or replicating ApplicationTemplates", + "Failure during process of importing, synchronizing or replicating ApplicationTemplate processing", + "Deprecated: Use STATE_ACTIVE.", + "Deprecated: Use STATE_RUNNING.", + "Deprecated: Use STATE_FAILED." + ], + "readOnly": true, + "type": "string" + }, "uid": { "description": "Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.", "readOnly": true, @@ -2637,6 +4208,56 @@ }, "type": "object" }, + "SaasCondition": { + "description": "SaasCondition describes the status of a Saas.", + "id": "SaasCondition", + "properties": { + "lastTransitionTime": { + "description": "Required. Last time the condition transited from one status to another.", + "format": "google-datetime", + "type": "string" + }, + "message": { + "description": "Required. Human readable message indicating details about the last transition.", + "type": "string" + }, + "reason": { + "description": "Required. Brief reason for the condition's last transition.", + "type": "string" + }, + "status": { + "description": "Required. Status of the condition.", + "enum": [ + "STATUS_UNSPECIFIED", + "STATUS_UNKNOWN", + "STATUS_TRUE", + "STATUS_FALSE" + ], + "enumDescriptions": [ + "Condition status is unspecified.", + "Condition is unknown.", + "Condition is true.", + "Condition is false." + ], + "type": "string" + }, + "type": { + "description": "Required. Type of the condition.", + "enum": [ + "TYPE_UNSPECIFIED", + "TYPE_READY", + "TYPE_SYNCHRONIZED" + ], + "enumDescriptions": [ + "Condition type is unspecified.", + "Condition type is ready.", + "Condition type is synchronized." + ], + "type": "string" + } + }, + "type": "object" + }, "Schedule": { "description": "A time specification to schedule the maintenance.", "id": "Schedule", @@ -2649,6 +4270,65 @@ }, "type": "object" }, + "Scope": { + "description": "Scope of an application.", + "id": "Scope", + "properties": { + "type": { + "description": "Required. Scope Type.", + "enum": [ + "TYPE_UNSPECIFIED", + "TYPE_REGIONAL", + "TYPE_GLOBAL", + "REGIONAL", + "GLOBAL" + ], + "enumDeprecated": [ + false, + false, + false, + true, + true + ], + "enumDescriptions": [ + "Unspecified type.", + "Regional type.", + "Global type.", + "Deprecated: Use TYPE_REGIONAL.", + "Deprecated: Use TYPE_GLOBAL." + ], + "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" + }, "Tenant": { "description": "Tenant represents the service producer side of an instance of the service created based on a request from a consumer. In a typical scenario a Tenant has a one-to-one mapping with a resource given out to a service consumer. Example: tenant: name: \"projects/svc1/locations/loc/tenants/inst-068afff8\" consumer_resource: \"projects/gshoe/locations/loc/shoes/black-shoe\"", "id": "Tenant", @@ -2661,7 +4341,7 @@ "type": "object" }, "consumerResource": { - "description": "Optional. Immutable. A reference to the consumer resource this SaaS Tenant is representing. The relationship with a consumer resource can be used by SaaS Runtime for retrieving consumer-defined settings and policies such as maintenance policies (using Unified Maintenance Policy API).", + "description": "Optional. Immutable. A reference to the consumer resource this SaaS Tenant is representing. The relationship with a consumer resource can be used by App Lifecycle Manager for retrieving consumer-defined settings and policies such as maintenance policies (using Unified Maintenance Policy API).", "type": "string" }, "createTime": { @@ -2687,7 +4367,7 @@ "type": "string" }, "saas": { - "description": "Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with SaaS Runtime. Part of the SaaS Runtime common data model.", + "description": "Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with App Lifecycle Manager. Part of the App Lifecycle Manager common data model.", "type": "string" }, "uid": { @@ -2713,7 +4393,7 @@ "type": "string" }, "ignoreForLookup": { - "description": "Optional. Tells SaaS Runtime if this mapping should be used during lookup or not", + "description": "Optional. Tells App Lifecycle Manager if this mapping should be used during lookup or not", "type": "boolean" }, "inputVariable": { @@ -2734,6 +4414,10 @@ "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", "type": "object" }, + "application": { + "description": "Optional. Reference to the AppHub Application this unit belongs to. All resources deployed in this Unit will be associated with the specified Application.", + "type": "string" + }, "conditions": { "description": "Optional. Output only. A set of conditions which indicate the various conditions this resource can have.", "items": { @@ -2769,6 +4453,19 @@ "readOnly": true, "type": "string" }, + "flagConfigName": { + "description": "Output only. This field stores the unique identifier for the flag configuration to be used by this Unit.", + "readOnly": true, + "type": "string" + }, + "flagRevisions": { + "description": "Optional. Output only. Flag revisions used by this Unit.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "inputVariables": { "description": "Optional. Output only. Indicates the current input variables deployed by the unit", "items": { @@ -2835,6 +4532,16 @@ "readOnly": true, "type": "string" }, + "satisfiesPzi": { + "description": "Output only. Reserved for future use.", + "readOnly": true, + "type": "boolean" + }, + "satisfiesPzs": { + "description": "Output only. Indicates whether the resource location satisfies Zone Separation constraints. This is false by default.", + "readOnly": true, + "type": "boolean" + }, "scheduledOperations": { "description": "Optional. Output only. List of scheduled UnitOperations for this unit.", "items": { @@ -2993,12 +4700,28 @@ "description": "Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations", "type": "object" }, + "appParams": { + "$ref": "AppParams", + "description": "AppParams contains the parameters for creating an AppHub Application." + }, + "applicationTemplateComponent": { + "$ref": "ComponentRef", + "description": "Output only. Reference to component and revision in a composite ApplicationTemplate.", + "readOnly": true + }, "createTime": { "description": "Output only. The timestamp when the resource was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, + "defaultFlagRevisions": { + "description": "Optional. Default revisions of flags for this UnitKind. Newly created units will use the flag default_flag_revisions present at the time of creation.", + "items": { + "type": "string" + }, + "type": "array" + }, "defaultRelease": { "description": "Optional. A reference to the Release object to use as default for creating new units of this UnitKind (optional). If not specified, a new unit must explicitly reference which release to use for its creation.", "type": "string" @@ -3041,7 +4764,7 @@ "type": "array" }, "saas": { - "description": "Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with SaaS Runtime. Part of the SaaS Runtime common data model. Immutable once set.", + "description": "Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with App Lifecycle Manager. Part of the App Lifecycle Manager common data model. Immutable once set.", "type": "string" }, "uid": { @@ -3127,6 +4850,9 @@ "readOnly": true, "type": "string" }, + "flagUpdate": { + "$ref": "FlagUpdate" + }, "labels": { "additionalProperties": { "type": "string" @@ -3265,13 +4991,17 @@ "TYPE_UNSPECIFIED", "STRING", "INT", - "BOOL" + "BOOL", + "STRUCT", + "LIST" ], "enumDescriptions": [ "Variable type is unspecified.", "Variable type is string.", "Variable type is int.", - "Variable type is bool." + "Variable type is bool.", + "Variable type is struct.", + "Variable type is list." ], "type": "string" }, @@ -3322,10 +5052,39 @@ } }, "type": "object" + }, + "Variant": { + "description": "Variant is an identifier for a value (name assigned to a value). DEPRECATED: Use Flag.Variants instead.", + "id": "Variant", + "properties": { + "boolValue": { + "description": "Optional. Boolean flag value.", + "type": "boolean" + }, + "doubleValue": { + "description": "Optional. Double flag value.", + "format": "double", + "type": "number" + }, + "intValue": { + "description": "Optional. Integer flag value.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Required. Name of the variant. Max length: 128 bytes.", + "type": "string" + }, + "stringValue": { + "description": "Optional. String flag value.", + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", - "title": "SaaS Runtime API", + "title": "App Lifecycle Manager API", "version": "v1beta1", "version_module": true } \ No newline at end of file diff --git a/discovery/searchads360-v0.json b/discovery/searchads360-v0.json index b0d286e5ec9..fd14eb6aab0 100644 --- a/discovery/searchads360-v0.json +++ b/discovery/searchads360-v0.json @@ -181,7 +181,7 @@ "searchAds360": { "methods": { "search": { - "description": "Returns all rows that match the search query. List of thrown errors: [AuthenticationError]() [AuthorizationError]() [HeaderError]() [InternalError]() [QueryError]() [QuotaError]() [RequestError]()", + "description": "Returns all rows that match the search query. List of thrown errors: [AuthenticationError]() [AuthorizationError]() [ChangeEventError]() [ChangeStatusError]() [ClickViewError]() [HeaderError]() [InternalError]() [QueryError]() [QuotaError]() [RequestError]()", "flatPath": "v0/customers/{customersId}/searchAds360:search", "httpMethod": "POST", "id": "searchads360.customers.searchAds360.search", @@ -260,7 +260,7 @@ } } }, - "revision": "20251211", + "revision": "20260413", "rootUrl": "https://searchads360.googleapis.com/", "schemas": { "GoogleAdsSearchads360V0Common__AdScheduleInfo": { @@ -448,7 +448,11 @@ "AD_IMAGE", "LEAD_FORM", "BUSINESS_LOGO", - "DESCRIPTION_PREFIX" + "DESCRIPTION_PREFIX", + "HEADLINE_AS_SITELINK_POSITION_ONE", + "HEADLINE_AS_SITELINK_POSITION_TWO", + "DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_ONE", + "DESCRIPTION_LINE_HEADLINE_AS_SITELINK_POSITION_TWO" ], "enumDescriptions": [ "No value has been specified.", @@ -483,7 +487,11 @@ "This asset is used as an image.", "The asset is used as a lead form.", "The asset is used as a business logo.", - "The asset is used as a description prefix." + "The asset is used as a description prefix.", + "A headline asset used as a sitelink in position 1.", + "A headline asset used as a sitelink in position 2.", + "A description line asset used as a sitelink in position 1.", + "A description line asset used as a sitelink in position 2." ], "type": "string" } @@ -978,12 +986,12 @@ "type": "number" }, "allConversionsFromClickToCall": { - "description": "The number of times people clicked the \"Call\" button to call a store during or after clicking an ad. This number doesn't include whether or not calls were connected, or the duration of any calls. This metric applies to feed items only.", + "description": "The number of times people clicked the \"Call\" button to call a business during or after clicking an ad. This number doesn't include whether or not calls were connected, or the duration of any calls. This metric applies to feed items only.", "format": "double", "type": "number" }, "allConversionsFromDirections": { - "description": "The number of times people clicked a \"Get directions\" button to navigate to a store after clicking an ad. This metric applies to feed items only.", + "description": "The number of times people clicked a \"Get directions\" button to navigate to a business after clicking an ad. This metric applies to feed items only.", "format": "double", "type": "number" }, @@ -998,27 +1006,27 @@ "type": "number" }, "allConversionsFromMenu": { - "description": "The number of times people clicked a link to view a store's menu after clicking an ad. This metric applies to feed items only.", + "description": "The number of times people clicked a link to view a business's menu after clicking an ad. This metric applies to feed items only.", "format": "double", "type": "number" }, "allConversionsFromOrder": { - "description": "The number of times people placed an order at a store after clicking an ad. This metric applies to feed items only.", + "description": "The number of times people placed an order at a business after clicking an ad. This metric applies to feed items only.", "format": "double", "type": "number" }, "allConversionsFromOtherEngagement": { - "description": "The number of other conversions (for example, posting a review or saving a location for a store) that occurred after people clicked an ad. This metric applies to feed items only.", + "description": "The number of other conversions (for example, posting a review or saving a location for a business) that occurred after people clicked an ad. This metric applies to feed items only.", "format": "double", "type": "number" }, "allConversionsFromStoreVisit": { - "description": "Estimated number of times people visited a store after clicking an ad. This metric applies to feed items only.", + "description": "Estimated number of times people visited a business after clicking an ad. This metric applies to feed items only.", "format": "double", "type": "number" }, "allConversionsFromStoreWebsite": { - "description": "The number of times that people were taken to a store's URL after clicking an ad. This metric applies to feed items only.", + "description": "The number of times that people were taken to a business's URL after clicking an ad. This metric applies to feed items only.", "format": "double", "type": "number" }, @@ -1716,6 +1724,24 @@ "description": "Segment only fields.", "id": "GoogleAdsSearchads360V0Common__Segments", "properties": { + "adFormatType": { + "description": "Ad Format type.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "VERTICAL_ADS_PROMOTION", + "VERTICAL_ADS_BOOKING_LINK", + "TEXT" + ], + "enumDescriptions": [ + "No value has been specified.", + "Used for return value only. Represents value unknown in this version.", + "An ad format that promotes a specific entity within a vertical, for example, a hotel ad in the Travel vertical on Search.", + "An ad format for a booking link call-to-action within a vertical ad, for example a 'Book Now' link for a hotel ad.", + "A standard text ad format. This is currently only used for ads on the Search network." + ], + "type": "string" + }, "adNetworkType": { "description": "Ad network type.", "enum": [ @@ -2139,6 +2165,64 @@ }, "type": "array" }, + "verticalAdsEventParticipantDisplayNames": { + "description": "The display names of participants in an event listing, like performers, speakers, or teams.", + "type": "string" + }, + "verticalAdsHotelClass": { + "description": "The class of the hotel. Generally in the range of 1 to 5 stars, but fully customizable in the hotel feed.", + "format": "int64", + "type": "string" + }, + "verticalAdsListing": { + "description": "The listing associated with a listing impression, click or conversion.", + "type": "string" + }, + "verticalAdsListingBrand": { + "description": "The brand associated with a specific listing within a Vertical Ads context, for example, the brand of a car rental, a vacation home, or an event.", + "type": "string" + }, + "verticalAdsListingCity": { + "description": "The city where the vertical ads listing is located.", + "type": "string" + }, + "verticalAdsListingCountry": { + "description": "The country where the vertical ads listing is located.", + "type": "string" + }, + "verticalAdsListingRegion": { + "description": "The region where the vertical ads listing is located.", + "type": "string" + }, + "verticalAdsPartnerAccount": { + "description": "A specific partner account within a Partner Center (for example, Hotel Center) that supplies inventory feed data for Vertical Ads.", + "format": "int64", + "type": "string" + }, + "verticalAdsVertical": { + "description": "Type of vertical ad, such as Vacation Rentals, Car Rentals, or Events, used to categorize and segment data in the context of Vertical Ads.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "HOTELS", + "VACATION_RENTALS", + "RENTAL_CARS", + "EVENTS", + "THINGS_TO_DO", + "FLIGHTS" + ], + "enumDescriptions": [ + "Not specified.", + "Used for return value only. Represents value unknown in this version.", + "Hotels travel vertical.", + "Vacation rentals travel vertical.", + "Rental cars travel vertical.", + "Events travel vertical.", + "Things to do travel vertical.", + "Flights travel vertical." + ], + "type": "string" + }, "week": { "description": "Week as defined as Monday through Sunday, and represented by the date of Monday. Formatted as yyyy-MM-dd.", "type": "string" @@ -2996,7 +3080,8 @@ "UNRECOGNIZED_FIELD", "UNEXPECTED_INPUT", "REQUESTED_METRICS_FOR_MANAGER", - "FILTER_HAS_TOO_MANY_VALUES" + "FILTER_HAS_TOO_MANY_VALUES", + "REQUIRED_SEGMENT_FIELD_MISSING" ], "enumDescriptions": [ "Name unspecified.", @@ -3055,7 +3140,8 @@ "Query contains one or more unrecognized fields.", "Query has an unexpected extra part.", "Metrics cannot be requested for a manager account. To retrieve metrics, issue separate requests against each client account under the manager account.", - "The number of values (right-hand-side operands) in a filter exceeds the limit." + "The number of values (right-hand-side operands) in a filter exceeds the limit.", + "Required segment field is missing." ], "type": "string" }, @@ -3476,11 +3562,11 @@ "type": "boolean" }, "targetPartnerSearchNetwork": { - "description": "Whether ads will be served on the Google Partner Network. This is available only to some select Google partner accounts.", + "description": "Whether ads will be served on the partner network. This is available only to some select partner accounts. Unless you have been instructed to use this field, it likely does not apply to your account. This does not control whether ads will be served on Google Search Partners Network; use `target_search_network` for that instead.", "type": "boolean" }, "targetSearchNetwork": { - "description": "Whether ads will be served on partner sites in the Google Search Network (requires `target_google_search` to also be `true`).", + "description": "Whether ads will be served on sites in the Google Search Partners Network (requires `target_google_search` to also be `true`).", "type": "boolean" } }, @@ -4098,10 +4184,7 @@ "VIDEO_RESPONSIVE_AD", "SMART_CAMPAIGN_AD", "APP_PRE_REGISTRATION_AD", - "DISCOVERY_MULTI_ASSET_AD", - "DISCOVERY_CAROUSEL_AD", "TRAVEL_AD", - "DISCOVERY_VIDEO_RESPONSIVE_AD", "MULTIMEDIA_AD" ], "enumDescriptions": [ @@ -4135,10 +4218,7 @@ "Video responsive ad.", "Smart campaign ad.", "Universal app pre-registration ad.", - "Discovery multi asset ad.", - "Discovery carousel ad.", "Travel ad.", - "Discovery video responsive ad.", "Multimedia ad." ], "readOnly": true, @@ -4168,7 +4248,7 @@ "type": "string" }, "cpcBidMicros": { - "description": "The maximum CPC (cost-per-click) bid.", + "description": "The maximum CPC (cost-per-click) bid. This field is used when the ad group's effective bidding strategy is Manual CPC. This field is not applicable and will be ignored if the ad group's campaign is using a portfolio bidding strategy.", "format": "int64", "type": "string" }, @@ -4314,7 +4394,6 @@ "SEARCH_STANDARD", "DISPLAY_STANDARD", "SHOPPING_PRODUCT_ADS", - "SHOPPING_SHOWCASE_ADS", "HOTEL_ADS", "SHOPPING_SMART_ADS", "VIDEO_BUMPER", @@ -4336,7 +4415,6 @@ "The default ad group type for Search campaigns.", "The default ad group type for Display campaigns.", "The ad group type for Shopping campaigns serving standard product ads.", - "The type for ad groups that are limited to serving Showcase or Merchant ads in Shopping results.", "The default ad group type for Hotel campaigns.", "The type for ad groups in Smart Shopping campaigns.", "Short unskippable in-stream video ads.", @@ -6487,7 +6565,7 @@ "id": "GoogleAdsSearchads360V0Resources__CampaignBudget", "properties": { "amountMicros": { - "description": "The amount of the budget, in the local currency for the account. Amount is specified in micros, where one million is equivalent to one currency unit. Monthly spend is capped at 30.4 times this amount.", + "description": "The average daily amount to be spent by the campaign. This field is used when the CampaignBudget `period` is set to `DAILY`, which is the default. Amount is specified in micros in the account's local currency. One million micros is equivalent to one currency unit. The effective monthly spend is capped at 30.4 times this daily amount. This field is mutually exclusive with 'total_amount_micros'. Only one of 'amount_micros' or 'total_amount_micros' should be set.", "format": "int64", "type": "string" }, @@ -6762,7 +6840,7 @@ "type": "object" }, "GoogleAdsSearchads360V0Resources__CartDataSalesView": { - "description": "Cart data sales view.", + "description": "Cart data sales view. Provides information about the products which were purchased if conversions with cart data is implemented. Performance metrics like revenue, gross profit, lead/cross-sell metrics etc. and Merchant Center attributes such as brand, category etc. are available for products defined in an inventory feed and sold as a result of Google ads. For purchases attributed to clicks on Shopping ads, dimensions of both clicked and sold products can be viewed together.", "id": "GoogleAdsSearchads360V0Resources__CartDataSalesView", "properties": { "resourceName": { @@ -8463,7 +8541,7 @@ "type": "object" }, "GoogleAdsSearchads360V0Resources__UserList": { - "description": "A user list. This is a list of users a customer may target.", + "description": "A user list. This is a list of users a customer may target. The unique key of a user list consists of the following fields: `id`. Note that the `name` must also be unique for user lists owned by a given customer, except in some cases where `access_reason` is set to `SHARED`. Violating the unique name constraint produces error: `UserListError.INVALID_NAME`.", "id": "GoogleAdsSearchads360V0Resources__UserList", "properties": { "id": { @@ -8473,7 +8551,7 @@ "type": "string" }, "name": { - "description": "Name of this user list. Depending on its access_reason, the user list name may not be unique (for example, if access_reason=SHARED)", + "description": "Name of this user list. Unique per user list, except in some cases where a user list of the same name has `access_reason` set to `SHARED`.", "type": "string" }, "resourceName": { @@ -9218,6 +9296,7246 @@ } }, "type": "object" + }, + "GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraint": { + "description": "Indicates that a resource's ability to serve in a particular country is constrained.", + "id": "GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraint", + "properties": { + "countryCriterion": { + "description": "Geo target constant resource name of the country in which serving is constrained.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraintList": { + "description": "A list of countries where a resource's serving is constrained.", + "id": "GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraintList", + "properties": { + "countries": { + "description": "Countries in which serving is restricted.", + "items": { + "$ref": "GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraint" + }, + "type": "array" + }, + "totalTargetedCountries": { + "description": "Total number of countries targeted by the resource.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Common_PolicyTopicConstraint_ResellerConstraint": { + "description": "Indicates that a policy topic was constrained due to disapproval of the website for reseller purposes.", + "id": "GoogleAdsSearchads360V23Common_PolicyTopicConstraint_ResellerConstraint", + "properties": {}, + "type": "object" + }, + "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationMismatch": { + "description": "Evidence of mismatches between the URLs of a resource.", + "id": "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationMismatch", + "properties": { + "urlTypes": { + "description": "The set of URLs that did not match each other.", + "items": { + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DISPLAY_URL", + "FINAL_URL", + "FINAL_MOBILE_URL", + "TRACKING_URL", + "MOBILE_TRACKING_URL" + ], + "enumDescriptions": [ + "No value has been specified.", + "The received value is not known in this version. This is a response-only value.", + "The display url.", + "The final url.", + "The final mobile url.", + "The tracking url template, with substituted desktop url.", + "The tracking url template, with substituted mobile url." + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationNotWorking": { + "description": "Evidence details when the destination is returning an HTTP error code or isn't functional in all locations for commonly used devices.", + "id": "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationNotWorking", + "properties": { + "device": { + "description": "The type of device that failed to load the URL.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DESKTOP", + "ANDROID", + "IOS" + ], + "enumDescriptions": [ + "No value has been specified.", + "The received value is not known in this version. This is a response-only value.", + "Landing page doesn't work on desktop device.", + "Landing page doesn't work on Android device.", + "Landing page doesn't work on iOS device." + ], + "type": "string" + }, + "dnsErrorType": { + "description": "The type of DNS error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "HOSTNAME_NOT_FOUND", + "GOOGLE_CRAWLER_DNS_ISSUE" + ], + "enumDescriptions": [ + "No value has been specified.", + "The received value is not known in this version. This is a response-only value.", + "Host name not found in DNS when fetching landing page.", + "Google internal crawler issue when communicating with DNS. This error doesn't mean the landing page doesn't work. Google will recrawl the landing page." + ], + "type": "string" + }, + "expandedUrl": { + "description": "The full URL that didn't work.", + "type": "string" + }, + "httpErrorCode": { + "description": "The HTTP error code.", + "format": "int64", + "type": "string" + }, + "lastCheckedDateTime": { + "description": "The time the URL was last checked. The format is \"YYYY-MM-DD HH:MM:SS\". Examples: \"2018-03-05 09:15:00\" or \"2018-02-01 14:34:30\"", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationTextList": { + "description": "A list of strings found in a destination page that caused a policy finding.", + "id": "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationTextList", + "properties": { + "destinationTexts": { + "description": "List of text found in the resource's destination page.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_TextList": { + "description": "A list of fragments of text that violated a policy.", + "id": "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_TextList", + "properties": { + "texts": { + "description": "The fragments of text from the resource that caused the policy finding.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_WebsiteList": { + "description": "A list of websites that caused a policy finding. Used for ONE_WEBSITE_PER_AD_GROUP policy topic, for example. In case there are more than five websites, only the top five (those that appear in resources the most) will be listed here.", + "id": "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_WebsiteList", + "properties": { + "websites": { + "description": "Websites that caused the policy finding.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Common__PolicyTopicConstraint": { + "description": "Describes the effect on serving that a policy topic entry will have.", + "id": "GoogleAdsSearchads360V23Common__PolicyTopicConstraint", + "properties": { + "certificateDomainMismatchInCountryList": { + "$ref": "GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraintList", + "description": "Countries where the resource's domain is not covered by the certificates associated with it." + }, + "certificateMissingInCountryList": { + "$ref": "GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraintList", + "description": "Countries where a certificate is required for serving." + }, + "countryConstraintList": { + "$ref": "GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraintList", + "description": "Countries where the resource cannot serve." + }, + "resellerConstraint": { + "$ref": "GoogleAdsSearchads360V23Common_PolicyTopicConstraint_ResellerConstraint", + "description": "Reseller constraint." + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Common__PolicyTopicEntry": { + "description": "Policy finding attached to a resource (for example, alcohol policy associated with a site that sells alcohol). Each PolicyTopicEntry has a topic that indicates the specific ads policy the entry is about and a type to indicate the effect that the entry will have on serving. It may optionally have one or more evidences that indicate the reason for the finding. It may also optionally have one or more constraints that provide details about how serving may be restricted.", + "id": "GoogleAdsSearchads360V23Common__PolicyTopicEntry", + "properties": { + "constraints": { + "description": "Indicates how serving of this resource may be affected (for example, not serving in a country).", + "items": { + "$ref": "GoogleAdsSearchads360V23Common__PolicyTopicConstraint" + }, + "type": "array" + }, + "evidences": { + "description": "Additional information that explains policy finding (for example, the brand name for a trademark finding).", + "items": { + "$ref": "GoogleAdsSearchads360V23Common__PolicyTopicEvidence" + }, + "type": "array" + }, + "topic": { + "description": "Policy topic this finding refers to. For example, \"ALCOHOL\", \"TRADEMARKS_IN_AD_TEXT\", or \"DESTINATION_NOT_WORKING\". The set of possible policy topics is not fixed for a particular API version and may change at any time.", + "type": "string" + }, + "type": { + "description": "Describes the negative or positive effect this policy will have on serving.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "PROHIBITED", + "LIMITED", + "FULLY_LIMITED", + "DESCRIPTIVE", + "BROADENING", + "AREA_OF_INTEREST_ONLY" + ], + "enumDescriptions": [ + "No value has been specified.", + "The received value is not known in this version. This is a response-only value.", + "The resource will not be served.", + "The resource will not be served under some circumstances.", + "The resource cannot serve at all because of the current targeting criteria.", + "May be of interest, but does not limit how the resource is served.", + "Could increase coverage beyond normal.", + "Constrained for all targeted countries, but may serve in other countries through area of interest." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Common__PolicyTopicEvidence": { + "description": "Additional information that explains a policy finding.", + "id": "GoogleAdsSearchads360V23Common__PolicyTopicEvidence", + "properties": { + "destinationMismatch": { + "$ref": "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationMismatch", + "description": "Mismatch between the destinations of a resource's URLs." + }, + "destinationNotWorking": { + "$ref": "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationNotWorking", + "description": "Details when the destination is returning an HTTP error code or isn't functional in all locations for commonly used devices." + }, + "destinationTextList": { + "$ref": "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationTextList", + "description": "The text in the destination of the resource that is causing a policy finding." + }, + "languageCode": { + "description": "The language the resource was detected to be written in. This is an IETF language tag such as \"en-US\".", + "type": "string" + }, + "textList": { + "$ref": "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_TextList", + "description": "List of evidence found in the text of a resource." + }, + "websiteList": { + "$ref": "GoogleAdsSearchads360V23Common_PolicyTopicEvidence_WebsiteList", + "description": "List of websites linked with this resource." + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Common__PolicyViolationKey": { + "description": "Key of the violation. The key is used for referring to a violation when filing an exemption request.", + "id": "GoogleAdsSearchads360V23Common__PolicyViolationKey", + "properties": { + "policyName": { + "description": "Unique ID of the violated policy.", + "type": "string" + }, + "violatingText": { + "description": "The text that violates the policy if specified. Otherwise, refers to the policy in general (for example, when requesting to be exempt from the whole policy). If not specified for criterion exemptions, the whole policy is implied. Must be specified for ad exemptions.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Common__Value": { + "description": "A generic data container.", + "id": "GoogleAdsSearchads360V23Common__Value", + "properties": { + "booleanValue": { + "description": "A boolean.", + "type": "boolean" + }, + "doubleValue": { + "description": "A double.", + "format": "double", + "type": "number" + }, + "floatValue": { + "description": "A float.", + "format": "float", + "type": "number" + }, + "int64Value": { + "description": "An int64.", + "format": "int64", + "type": "string" + }, + "stringValue": { + "description": "A string.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Errors_ErrorLocation_FieldPathElement": { + "description": "A part of a field path.", + "id": "GoogleAdsSearchads360V23Errors_ErrorLocation_FieldPathElement", + "properties": { + "fieldName": { + "description": "The name of a field or a oneof", + "type": "string" + }, + "index": { + "description": "If field_name is a repeated field, this is the element that failed", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Errors__BudgetPerDayMinimumErrorDetails": { + "description": "Error details for a budget below per-day minimum error.", + "id": "GoogleAdsSearchads360V23Errors__BudgetPerDayMinimumErrorDetails", + "properties": { + "budgetPerDayMinimumMicros": { + "description": "The minimum budget required by the campaign per day, in micros of the advertiser currency. Applies to both daily and custom budgets.", + "format": "int64", + "type": "string" + }, + "currencyCode": { + "description": "The advertiser's currency, represented as a three-letter ISO 4217 currency code (such as \"USD\").", + "type": "string" + }, + "failedBudgetAmountMicros": { + "description": "The budget amount value that was rejected as too low, in micros of the advertiser currency. Only set if this error is caused by the amount field value.", + "format": "int64", + "type": "string" + }, + "failedBudgetTotalAmountMicros": { + "description": "The budget total_amount value that was rejected as too low, in micros of the advertiser currency. Only set if this error is caused by the total_amount field value.", + "format": "int64", + "type": "string" + }, + "minimumBudgetAmountMicros": { + "description": "The minimum value for the budget's amount field required by the campaign, in micros of the advertiser currency. Only set if this error is caused by the amount field value.", + "format": "int64", + "type": "string" + }, + "minimumBudgetTotalAmountMicros": { + "description": "The minimum value for the budget's total_amount field required by the campaign given its configured start and end time, in micros of the advertiser currency. Only set if this error is caused by the total_amount field value.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Errors__ErrorCode": { + "description": "The error reason represented by type and enum.", + "id": "GoogleAdsSearchads360V23Errors__ErrorCode", + "properties": { + "accessInvitationError": { + "description": "The reasons for the access invitation error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_EMAIL_ADDRESS", + "EMAIL_ADDRESS_ALREADY_HAS_ACCESS", + "INVALID_INVITATION_STATUS", + "GOOGLE_CONSUMER_ACCOUNT_NOT_ALLOWED", + "INVALID_INVITATION_ID", + "EMAIL_ADDRESS_ALREADY_HAS_PENDING_INVITATION", + "PENDING_INVITATIONS_LIMIT_EXCEEDED", + "EMAIL_DOMAIN_POLICY_VIOLATED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The email address is invalid for sending an invitation.", + "Email address already has access to this customer.", + "Invalid invitation status for the operation.", + "Email address cannot be like abc+foo@google.com.", + "Invalid invitation ID.", + "Email address already has a pending invitation.", + "Pending invitation limit exceeded for the customer.", + "Email address doesn't conform to the email domain policy. See https://support.google.com/google-ads/answer/2375456" + ], + "type": "string" + }, + "accountBudgetProposalError": { + "description": "The reasons for account budget proposal errors.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "FIELD_MASK_NOT_ALLOWED", + "IMMUTABLE_FIELD", + "REQUIRED_FIELD_MISSING", + "CANNOT_CANCEL_APPROVED_PROPOSAL", + "CANNOT_REMOVE_UNAPPROVED_BUDGET", + "CANNOT_REMOVE_RUNNING_BUDGET", + "CANNOT_END_UNAPPROVED_BUDGET", + "CANNOT_END_INACTIVE_BUDGET", + "BUDGET_NAME_REQUIRED", + "CANNOT_UPDATE_OLD_BUDGET", + "CANNOT_END_IN_PAST", + "CANNOT_EXTEND_END_TIME", + "PURCHASE_ORDER_NUMBER_REQUIRED", + "PENDING_UPDATE_PROPOSAL_EXISTS", + "MULTIPLE_BUDGETS_NOT_ALLOWED_FOR_UNAPPROVED_BILLING_SETUP", + "CANNOT_UPDATE_START_TIME_FOR_STARTED_BUDGET", + "SPENDING_LIMIT_LOWER_THAN_ACCRUED_COST_NOT_ALLOWED", + "UPDATE_IS_NO_OP", + "END_TIME_MUST_FOLLOW_START_TIME", + "BUDGET_DATE_RANGE_INCOMPATIBLE_WITH_BILLING_SETUP", + "NOT_AUTHORIZED", + "INVALID_BILLING_SETUP", + "OVERLAPS_EXISTING_BUDGET", + "CANNOT_CREATE_BUDGET_THROUGH_API", + "INVALID_MASTER_SERVICE_AGREEMENT", + "CANCELED_BILLING_SETUP" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The field mask must be empty for create/end/remove proposals.", + "The field cannot be set because of the proposal type.", + "The field is required because of the proposal type.", + "Proposals that have been approved cannot be cancelled.", + "Budgets that haven't been approved cannot be removed.", + "Budgets that are currently running cannot be removed.", + "Budgets that haven't been approved cannot be truncated.", + "Only budgets that are currently running can be truncated.", + "All budgets must have names.", + "Expired budgets cannot be edited after a sufficient amount of time has passed.", + "It is not permissible a propose a new budget that ends in the past.", + "An expired budget cannot be extended to overlap with the running budget.", + "A purchase order number is required.", + "Budgets that have a pending update cannot be updated.", + "Cannot propose more than one budget when the corresponding billing setup hasn't been approved.", + "Cannot update the start time of a budget that has already started.", + "Cannot update the spending limit of a budget with an amount lower than what has already been spent.", + "Cannot propose a budget update without actually changing any fields.", + "The end time must come after the start time.", + "The budget's date range must fall within the date range of its billing setup.", + "The user is not authorized to mutate budgets for the given billing setup.", + "Mutates are not allowed for the given billing setup.", + "Budget creation failed as it overlaps with a pending budget proposal or an approved budget.", + "The control setting in user's payments profile doesn't allow budget creation through API. Log in to Google Ads to create budget.", + "Master service agreement has not been signed yet for the Payments Profile.", + "Budget mutates are not allowed because the given billing setup is canceled." + ], + "type": "string" + }, + "accountLinkError": { + "description": "The reasons for the account link status change error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_STATUS", + "PERMISSION_DENIED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The new link status is invalid.", + "The authenticated user doesn't have the permission to do the change." + ], + "type": "string" + }, + "adCustomizerError": { + "description": "The reasons for the ad customizer error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "COUNTDOWN_INVALID_DATE_FORMAT", + "COUNTDOWN_DATE_IN_PAST", + "COUNTDOWN_INVALID_LOCALE", + "COUNTDOWN_INVALID_START_DAYS_BEFORE", + "UNKNOWN_USER_LIST" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Invalid date argument in countdown function.", + "Countdown end date is in the past.", + "Invalid locale string in countdown function.", + "Days-before argument to countdown function is not positive.", + "A user list referenced in an IF function does not exist." + ], + "type": "string" + }, + "adError": { + "description": "An error with an Ad Group Ad mutate.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "AD_CUSTOMIZERS_NOT_SUPPORTED_FOR_AD_TYPE", + "APPROXIMATELY_TOO_LONG", + "APPROXIMATELY_TOO_SHORT", + "BAD_SNIPPET", + "CANNOT_MODIFY_AD", + "CANNOT_SET_BUSINESS_NAME_IF_URL_SET", + "CANNOT_SET_FIELD", + "CANNOT_SET_FIELD_WITH_ORIGIN_AD_ID_SET", + "CANNOT_SET_FIELD_WITH_AD_ID_SET_FOR_SHARING", + "CANNOT_SET_ALLOW_FLEXIBLE_COLOR_FALSE", + "CANNOT_SET_COLOR_CONTROL_WHEN_NATIVE_FORMAT_SETTING", + "CANNOT_SET_URL", + "CANNOT_SET_WITHOUT_FINAL_URLS", + "CANNOT_SET_WITH_FINAL_URLS", + "CANNOT_SET_WITH_URL_DATA", + "CANNOT_USE_AD_SUBCLASS_FOR_OPERATOR", + "CUSTOMER_NOT_APPROVED_MOBILEADS", + "CUSTOMER_NOT_APPROVED_THIRDPARTY_ADS", + "CUSTOMER_NOT_APPROVED_THIRDPARTY_REDIRECT_ADS", + "CUSTOMER_NOT_ELIGIBLE", + "CUSTOMER_NOT_ELIGIBLE_FOR_UPDATING_BEACON_URL", + "DIMENSION_ALREADY_IN_UNION", + "DIMENSION_MUST_BE_SET", + "DIMENSION_NOT_IN_UNION", + "DISPLAY_URL_CANNOT_BE_SPECIFIED", + "DOMESTIC_PHONE_NUMBER_FORMAT", + "EMERGENCY_PHONE_NUMBER", + "EMPTY_FIELD", + "FEED_ATTRIBUTE_MUST_HAVE_MAPPING_FOR_TYPE_ID", + "FEED_ATTRIBUTE_MAPPING_TYPE_MISMATCH", + "ILLEGAL_AD_CUSTOMIZER_TAG_USE", + "ILLEGAL_TAG_USE", + "INCONSISTENT_DIMENSIONS", + "INCONSISTENT_STATUS_IN_TEMPLATE_UNION", + "INCORRECT_LENGTH", + "INELIGIBLE_FOR_UPGRADE", + "INVALID_AD_ADDRESS_CAMPAIGN_TARGET", + "INVALID_AD_TYPE", + "INVALID_ATTRIBUTES_FOR_MOBILE_IMAGE", + "INVALID_ATTRIBUTES_FOR_MOBILE_TEXT", + "INVALID_CALL_TO_ACTION_TEXT", + "INVALID_CHARACTER_FOR_URL", + "INVALID_COUNTRY_CODE", + "INVALID_EXPANDED_DYNAMIC_SEARCH_AD_TAG", + "INVALID_INPUT", + "INVALID_MARKUP_LANGUAGE", + "INVALID_MOBILE_CARRIER", + "INVALID_MOBILE_CARRIER_TARGET", + "INVALID_NUMBER_OF_ELEMENTS", + "INVALID_PHONE_NUMBER_FORMAT", + "INVALID_RICH_MEDIA_CERTIFIED_VENDOR_FORMAT_ID", + "INVALID_TEMPLATE_DATA", + "INVALID_TEMPLATE_ELEMENT_FIELD_TYPE", + "INVALID_TEMPLATE_ID", + "LINE_TOO_WIDE", + "MISSING_AD_CUSTOMIZER_MAPPING", + "MISSING_ADDRESS_COMPONENT", + "MISSING_ADVERTISEMENT_NAME", + "MISSING_BUSINESS_NAME", + "MISSING_DESCRIPTION1", + "MISSING_DESCRIPTION2", + "MISSING_DESTINATION_URL_TAG", + "MISSING_LANDING_PAGE_URL_TAG", + "MISSING_DIMENSION", + "MISSING_DISPLAY_URL", + "MISSING_HEADLINE", + "MISSING_HEIGHT", + "MISSING_IMAGE", + "MISSING_MARKETING_IMAGE_OR_PRODUCT_VIDEOS", + "MISSING_MARKUP_LANGUAGES", + "MISSING_MOBILE_CARRIER", + "MISSING_PHONE", + "MISSING_REQUIRED_TEMPLATE_FIELDS", + "MISSING_TEMPLATE_FIELD_VALUE", + "MISSING_TEXT", + "MISSING_VISIBLE_URL", + "MISSING_WIDTH", + "MULTIPLE_DISTINCT_FEEDS_UNSUPPORTED", + "MUST_USE_TEMP_AD_UNION_ID_ON_ADD", + "TOO_LONG", + "TOO_SHORT", + "UNION_DIMENSIONS_CANNOT_CHANGE", + "UNKNOWN_ADDRESS_COMPONENT", + "UNKNOWN_FIELD_NAME", + "UNKNOWN_UNIQUE_NAME", + "UNSUPPORTED_DIMENSIONS", + "URL_INVALID_SCHEME", + "URL_INVALID_TOP_LEVEL_DOMAIN", + "URL_MALFORMED", + "URL_NO_HOST", + "URL_NOT_EQUIVALENT", + "URL_HOST_NAME_TOO_LONG", + "URL_NO_SCHEME", + "URL_NO_TOP_LEVEL_DOMAIN", + "URL_PATH_NOT_ALLOWED", + "URL_PORT_NOT_ALLOWED", + "URL_QUERY_NOT_ALLOWED", + "URL_SCHEME_BEFORE_EXPANDED_DYNAMIC_SEARCH_AD_TAG", + "USER_DOES_NOT_HAVE_ACCESS_TO_TEMPLATE", + "INCONSISTENT_EXPANDABLE_SETTINGS", + "INVALID_FORMAT", + "INVALID_FIELD_TEXT", + "ELEMENT_NOT_PRESENT", + "IMAGE_ERROR", + "VALUE_NOT_IN_RANGE", + "FIELD_NOT_PRESENT", + "ADDRESS_NOT_COMPLETE", + "ADDRESS_INVALID", + "VIDEO_RETRIEVAL_ERROR", + "AUDIO_ERROR", + "INVALID_YOUTUBE_DISPLAY_URL", + "TOO_MANY_PRODUCT_IMAGES", + "TOO_MANY_PRODUCT_VIDEOS", + "INCOMPATIBLE_AD_TYPE_AND_DEVICE_PREFERENCE", + "CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY", + "CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED", + "DISALLOWED_NUMBER_TYPE", + "PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY", + "PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY", + "PREMIUM_RATE_NUMBER_NOT_ALLOWED", + "VANITY_PHONE_NUMBER_NOT_ALLOWED", + "INVALID_CALL_CONVERSION_TYPE_ID", + "CANNOT_DISABLE_CALL_CONVERSION_AND_SET_CONVERSION_TYPE_ID", + "CANNOT_SET_PATH2_WITHOUT_PATH1", + "MISSING_DYNAMIC_SEARCH_ADS_SETTING_DOMAIN_NAME", + "INCOMPATIBLE_WITH_RESTRICTION_TYPE", + "CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED", + "MISSING_IMAGE_OR_MEDIA_BUNDLE", + "PRODUCT_TYPE_NOT_SUPPORTED_IN_THIS_CAMPAIGN", + "PLACEHOLDER_CANNOT_HAVE_EMPTY_DEFAULT_VALUE", + "PLACEHOLDER_COUNTDOWN_FUNCTION_CANNOT_HAVE_DEFAULT_VALUE", + "PLACEHOLDER_DEFAULT_VALUE_MISSING", + "UNEXPECTED_PLACEHOLDER_DEFAULT_VALUE", + "AD_CUSTOMIZERS_MAY_NOT_BE_ADJACENT", + "UPDATING_AD_WITH_NO_ENABLED_ASSOCIATION", + "CALL_AD_VERIFICATION_URL_FINAL_URL_DOES_NOT_HAVE_SAME_DOMAIN", + "CALL_AD_FINAL_URL_AND_VERIFICATION_URL_CANNOT_BOTH_BE_EMPTY", + "TOO_MANY_AD_CUSTOMIZERS", + "INVALID_AD_CUSTOMIZER_FORMAT", + "NESTED_AD_CUSTOMIZER_SYNTAX", + "UNSUPPORTED_AD_CUSTOMIZER_SYNTAX", + "UNPAIRED_BRACE_IN_AD_CUSTOMIZER_TAG", + "MORE_THAN_ONE_COUNTDOWN_TAG_TYPE_EXISTS", + "DATE_TIME_IN_COUNTDOWN_TAG_IS_INVALID", + "DATE_TIME_IN_COUNTDOWN_TAG_IS_PAST", + "UNRECOGNIZED_AD_CUSTOMIZER_TAG_FOUND", + "CUSTOMIZER_TYPE_FORBIDDEN_FOR_FIELD", + "INVALID_CUSTOMIZER_ATTRIBUTE_NAME", + "STORE_MISMATCH", + "MISSING_REQUIRED_IMAGE_ASPECT_RATIO", + "MISMATCHED_ASPECT_RATIOS", + "DUPLICATE_IMAGE_ACROSS_CAROUSEL_CARDS", + "INVALID_YOUTUBE_VIDEO_ASSET_ID_FOR_VIDEO_ADS_SEQUENCING" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Ad customizers are not supported for ad type.", + "Estimating character sizes the string is too long.", + "Estimating character sizes the string is too short.", + "There is a problem with the snippet.", + "Cannot modify an ad.", + "business name and url cannot be set at the same time", + "The specified field is incompatible with this ad's type or settings.", + "Cannot set field when originAdId is set.", + "Cannot set field when an existing ad id is set for sharing.", + "Cannot set allowFlexibleColor false if no color is provided by user.", + "When user select native, no color control is allowed because we will always respect publisher color for native format serving.", + "Cannot specify a url for the ad type", + "Cannot specify a tracking or mobile url without also setting final urls", + "Cannot specify a legacy url and a final url simultaneously", + "Cannot specify a urls in UrlData and in template fields simultaneously.", + "This operator cannot be used with a subclass of Ad.", + "Customer is not approved for mobile ads.", + "Customer is not approved for 3PAS richmedia ads.", + "Customer is not approved for 3PAS redirect richmedia (Ad Exchange) ads.", + "Not an eligible customer", + "Customer is not eligible for updating beacon url", + "There already exists an ad with the same dimensions in the union.", + "Ad's dimension must be set before setting union dimension.", + "Ad's dimension must be included in the union dimensions.", + "Display Url cannot be specified (applies to Ad Exchange Ads)", + "Telephone number contains invalid characters or invalid format. Re-enter your number using digits (0-9), dashes (-), and parentheses only.", + "Emergency telephone numbers are not allowed. Enter a valid domestic phone number to connect customers to your business.", + "A required field was not specified or is an empty string.", + "A feed attribute referenced in an ad customizer tag is not in the ad customizer mapping for the feed.", + "The ad customizer field mapping for the feed attribute does not match the expected field type.", + "The use of ad customizer tags in the ad text is disallowed. Details in trigger.", + "Tags of the form {PH_x}, where x is a number, are disallowed in ad text.", + "The dimensions of the ad are specified or derived in multiple ways and are not consistent.", + "The status cannot differ among template ads of the same union.", + "The length of the string is not valid.", + "The ad is ineligible for upgrade.", + "User cannot create mobile ad for countries targeted in specified campaign.", + "Invalid Ad type. A specific type of Ad is required.", + "Headline, description or phone cannot be present when creating mobile image ad.", + "Image cannot be present when creating mobile text ad.", + "Invalid call to action text.", + "Invalid character in URL.", + "Creative's country code is not valid.", + "Invalid use of Expanded Dynamic Search Ads tags ({lpurl} etc.)", + "An input error whose real reason was not properly mapped (should not happen).", + "An invalid markup language was entered.", + "An invalid mobile carrier was entered.", + "Specified mobile carriers target a country not targeted by the campaign.", + "Wrong number of elements for given element type", + "The format of the telephone number is incorrect. Re-enter the number using the correct format.", + "The certified vendor format id is incorrect.", + "The template ad data contains validation errors.", + "The template field doesn't have have the correct type.", + "Invalid template id.", + "After substituting replacement strings, the line is too wide.", + "The feed referenced must have ad customizer mapping to be used in a customizer tag.", + "Missing address component in template element address field.", + "An ad name must be entered.", + "Business name must be entered.", + "Description (line 2) must be entered.", + "Description (line 3) must be entered.", + "The destination url must contain at least one tag (for example, {lpurl})", + "The tracking url template of ExpandedDynamicSearchAd must contain at least one tag. (for example, {lpurl})", + "A valid dimension must be specified for this ad.", + "A display URL must be entered.", + "Headline must be entered.", + "A height must be entered.", + "An image must be entered.", + "Marketing image or product videos are required.", + "The markup language in which your site is written must be entered.", + "A mobile carrier must be entered.", + "Phone number must be entered.", + "Missing required template fields", + "Missing a required field value", + "The ad must have text.", + "A visible URL must be entered.", + "A width must be entered.", + "Only 1 feed can be used as the source of ad customizer substitutions in a single ad.", + "TempAdUnionId must be use when adding template ads.", + "The string has too many characters.", + "The string has too few characters.", + "Ad union dimensions cannot change for saved ads.", + "Address component is not {country, lat, lng}.", + "Unknown unique field name", + "Unknown unique name (template element type specifier)", + "Unsupported ad dimension", + "URL starts with an invalid scheme.", + "URL ends with an invalid top-level domain name.", + "URL contains illegal characters.", + "URL must contain a host name.", + "URL not equivalent during upgrade.", + "URL host name too long to be stored as visible URL (applies to Ad Exchange ads)", + "URL must start with a scheme.", + "URL should end in a valid domain extension, such as .com or .net.", + "URL must not end with a path.", + "URL must not specify a port.", + "URL must not contain a query.", + "A url scheme is not allowed in front of tag in tracking url template (for example, http://{lpurl})", + "The user does not have permissions to create a template ad for the given template.", + "Expandable setting is inconsistent/wrong. For example, an AdX ad is invalid if it has a expandable vendor format but no expanding directions specified, or expanding directions is specified, but the vendor format is not expandable.", + "Format is invalid", + "The text of this field did not match a pattern of allowed values.", + "Template element is mising", + "Error occurred during image processing", + "The value is not within the valid range", + "Template element field is not present", + "Address is incomplete", + "Invalid address", + "Error retrieving specified video", + "Error processing audio", + "Display URL is incorrect for YouTube PYV ads", + "Too many product Images in GmailAd", + "Too many product Videos in GmailAd", + "The device preference is not compatible with the ad type", + "Call tracking is not supported for specified country.", + "Carrier specific short number is not allowed.", + "Specified phone number type is disallowed.", + "Phone number not supported for country.", + "Phone number not supported with call tracking enabled for country.", + "Premium rate phone number is not allowed.", + "Vanity phone number is not allowed.", + "Invalid call conversion type id.", + "Cannot disable call conversion and set conversion type id.", + "Cannot set path2 without path1.", + "Missing domain name in campaign setting when adding expanded dynamic search ad.", + "The associated ad is not compatible with restriction type.", + "Consent for call recording is required for creating/updating call only ads. See https://support.google.com/google-ads/answer/7412639.", + "Either an image or a media bundle is required in a display upload ad.", + "The display upload product type is not supported in this campaign.", + "The default value of an ad placeholder can not be the empty string.", + "Ad placeholders with countdown functions must not have a default value.", + "A previous ad placeholder that had a default value was found which means that all (non-countdown) placeholders must have a default value. This ad placeholder does not have a default value.", + "A previous ad placeholder that did not have a default value was found which means that no placeholders may have a default value. This ad placeholder does have a default value.", + "Two ad customizers may not be directly adjacent in an ad text. They must be separated by at least one character.", + "The ad is not associated with any enabled AdGroupAd, and cannot be updated.", + "Call Ad verification url and final url don't have same domain.", + "Final url and verification url cannot both be empty for call ads.", + "Too many ad customizers in one asset.", + "The ad customizer tag is recognized, but the format is invalid.", + "Customizer tags cannot be nested.", + "The ad customizer syntax used in the ad is not supported.", + "There exists unpaired brace in the ad customizer tag.", + "More than one type of countdown tag exists among all text lines.", + "Date time in the countdown tag is invalid.", + "Date time in the countdown tag is in the past.", + "Cannot recognize the ad customizer tag.", + "Customizer type forbidden for this field.", + "Customizer attribute name is invalid.", + "App store value does not match the value of the app store in the app specified in the campaign.", + "Missing required image aspect ratio.", + "Aspect ratios mismatch between different assets.", + "Images must be unique between different carousel card assets.", + "For video ads sequencing, YouTube video asset ID has to be defined in `campaign.video_campaign_settings.video_ad_sequence.steps.asset_id`." + ], + "type": "string" + }, + "adGroupAdError": { + "description": "The reasons for the ad group ad error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "AD_GROUP_AD_LABEL_DOES_NOT_EXIST", + "AD_GROUP_AD_LABEL_ALREADY_EXISTS", + "AD_NOT_UNDER_ADGROUP", + "CANNOT_OPERATE_ON_REMOVED_ADGROUPAD", + "CANNOT_CREATE_DEPRECATED_ADS", + "CANNOT_CREATE_TEXT_ADS", + "EMPTY_FIELD", + "RESOURCE_REFERENCED_IN_MULTIPLE_OPS", + "AD_TYPE_CANNOT_BE_PAUSED", + "AD_TYPE_CANNOT_BE_REMOVED", + "CANNOT_UPDATE_DEPRECATED_ADS", + "AD_SHARING_NOT_ALLOWED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "No link found between the adgroup ad and the label.", + "The label has already been attached to the adgroup ad.", + "The specified ad was not found in the adgroup", + "Removed ads may not be modified", + "An ad of this type is deprecated and cannot be created. Only deletions are permitted.", + "Text ads are deprecated and cannot be created. Use expanded text ads instead.", + "A required field was not specified or is an empty string.", + "An ad may only be modified once per call", + "AdGroupAds with the given ad type cannot be paused.", + "AdGroupAds with the given ad type cannot be removed.", + "An ad of this type is deprecated and cannot be updated. Only removals are permitted.", + "Ad sharing is not allowed." + ], + "type": "string" + }, + "adGroupBidModifierError": { + "description": "The reasons for the ad group bid modifier error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CRITERION_ID_NOT_SUPPORTED", + "CANNOT_OVERRIDE_OPTED_OUT_CAMPAIGN_CRITERION_BID_MODIFIER" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The criterion ID does not support bid modification.", + "Cannot override the bid modifier for the given criterion ID if the parent campaign is opted out of the same criterion." + ], + "type": "string" + }, + "adGroupCriterionCustomizerError": { + "description": "The reasons for the ad group criterion customizer error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CRITERION_IS_NOT_KEYWORD" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Only keyword type criterion is allowed to link customizer attribute." + ], + "type": "string" + }, + "adGroupCriterionError": { + "description": "Indicates failure to properly authenticate user.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "AD_GROUP_CRITERION_LABEL_DOES_NOT_EXIST", + "AD_GROUP_CRITERION_LABEL_ALREADY_EXISTS", + "CANNOT_ADD_LABEL_TO_NEGATIVE_CRITERION", + "TOO_MANY_OPERATIONS", + "CANT_UPDATE_NEGATIVE", + "CONCRETE_TYPE_REQUIRED", + "BID_INCOMPATIBLE_WITH_ADGROUP", + "CANNOT_TARGET_AND_EXCLUDE", + "ILLEGAL_URL", + "INVALID_KEYWORD_TEXT", + "INVALID_DESTINATION_URL", + "MISSING_DESTINATION_URL_TAG", + "KEYWORD_LEVEL_BID_NOT_SUPPORTED_FOR_MANUALCPM", + "INVALID_USER_STATUS", + "CANNOT_ADD_CRITERIA_TYPE", + "CANNOT_EXCLUDE_CRITERIA_TYPE", + "CAMPAIGN_TYPE_NOT_COMPATIBLE_WITH_PARTIAL_FAILURE", + "OPERATIONS_FOR_TOO_MANY_SHOPPING_ADGROUPS", + "CANNOT_MODIFY_URL_FIELDS_WITH_DUPLICATE_ELEMENTS", + "CANNOT_SET_WITHOUT_FINAL_URLS", + "CANNOT_CLEAR_FINAL_URLS_IF_FINAL_MOBILE_URLS_EXIST", + "CANNOT_CLEAR_FINAL_URLS_IF_FINAL_APP_URLS_EXIST", + "CANNOT_CLEAR_FINAL_URLS_IF_TRACKING_URL_TEMPLATE_EXISTS", + "CANNOT_CLEAR_FINAL_URLS_IF_URL_CUSTOM_PARAMETERS_EXIST", + "CANNOT_SET_BOTH_DESTINATION_URL_AND_FINAL_URLS", + "CANNOT_SET_BOTH_DESTINATION_URL_AND_TRACKING_URL_TEMPLATE", + "FINAL_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE", + "FINAL_MOBILE_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "No link found between the AdGroupCriterion and the label.", + "The label has already been attached to the AdGroupCriterion.", + "Negative AdGroupCriterion cannot have labels.", + "Too many operations for a single call.", + "Negative ad group criteria are not updateable.", + "Concrete type of criterion (keyword v.s. placement) is required for ADD and SET operations.", + "Bid is incompatible with ad group's bidding settings.", + "Cannot target and exclude the same criterion at once.", + "The URL of a placement is invalid.", + "Keyword text was invalid.", + "Destination URL was invalid.", + "The destination url must contain at least one tag (for example, {lpurl})", + "Keyword-level cpm bid is not supported", + "For example, cannot add a biddable ad group criterion that had been removed.", + "Criteria type cannot be targeted for the ad group. Either the account is restricted to keywords only, the criteria type is incompatible with the campaign's bidding strategy, or the criteria type can only be applied to campaigns.", + "Criteria type cannot be excluded for the ad group. Refer to the documentation for a specific criterion to check if it is excludable.", + "Partial failure is not supported for shopping campaign mutate operations.", + "Operations in the mutate request changes too many shopping ad groups. Split requests for multiple shopping ad groups across multiple requests.", + "Not allowed to modify url fields of an ad group criterion if there are duplicate elements for that ad group criterion in the request.", + "Cannot set url fields without also setting final urls.", + "Cannot clear final urls if final mobile urls exist.", + "Cannot clear final urls if final app urls exist.", + "Cannot clear final urls if tracking url template exists.", + "Cannot clear final urls if url custom parameters exist.", + "Cannot set both destination url and final urls.", + "Cannot set both destination url and tracking url template.", + "Final urls are not supported for this criterion type.", + "Final mobile urls are not supported for this criterion type." + ], + "type": "string" + }, + "adGroupCustomizerError": { + "description": "The reasons for the ad group customizer error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version." + ], + "type": "string" + }, + "adGroupError": { + "description": "An error with an Ad Group mutate.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DUPLICATE_ADGROUP_NAME", + "INVALID_ADGROUP_NAME", + "ADVERTISER_NOT_ON_CONTENT_NETWORK", + "BID_TOO_BIG", + "BID_TYPE_AND_BIDDING_STRATEGY_MISMATCH", + "MISSING_ADGROUP_NAME", + "ADGROUP_LABEL_DOES_NOT_EXIST", + "ADGROUP_LABEL_ALREADY_EXISTS", + "INVALID_CONTENT_BID_CRITERION_TYPE_GROUP", + "AD_GROUP_TYPE_NOT_VALID_FOR_ADVERTISING_CHANNEL_TYPE", + "ADGROUP_TYPE_NOT_SUPPORTED_FOR_CAMPAIGN_SALES_COUNTRY", + "CANNOT_ADD_ADGROUP_OF_TYPE_DSA_TO_CAMPAIGN_WITHOUT_DSA_SETTING", + "PROMOTED_HOTEL_AD_GROUPS_NOT_AVAILABLE_FOR_CUSTOMER", + "INVALID_EXCLUDED_PARENT_ASSET_FIELD_TYPE", + "INVALID_EXCLUDED_PARENT_ASSET_SET_TYPE", + "CANNOT_ADD_AD_GROUP_FOR_CAMPAIGN_TYPE", + "INVALID_STATUS", + "INVALID_STEP_ID_FOR_VIDEO_ADS_SEQUENCING", + "INVALID_AD_GROUP_TYPE_FOR_VIDEO_ADS_SEQUENCING", + "DUPLICATE_STEP_ID", + "INVALID_VERTICAL_ADS_FORMAT_SETTING", + "VERTICAL_ADS_FORMAT_SETTING_NOT_SUPPORTED_FOR_CAMPAIGNS_WITHOUT_AI_MAX", + "VERTICAL_ADS_FORMAT_SETTING_NOT_SUPPORTED_FOR_CAMPAIGNS_WITHOUT_ENABLED_TRAVEL_FEED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "AdGroup with the same name already exists for the campaign.", + "AdGroup name is not valid.", + "Advertiser is not allowed to target sites or set site bids that are not on the Google Search Network.", + "Bid amount is too big.", + "AdGroup bid does not match the campaign's bidding strategy.", + "AdGroup name is required for Add.", + "No link found between the ad group and the label.", + "The label has already been attached to the ad group.", + "The CriterionTypeGroup is not supported for the content bid dimension.", + "The ad group type is not compatible with the campaign channel type.", + "The ad group type is not supported in the country of sale of the campaign.", + "Ad groups of AdGroupType.SEARCH_DYNAMIC_ADS can only be added to campaigns that have DynamicSearchAdsSetting attached.", + "Promoted hotels ad groups are only available to customers on the allow-list.", + "The field type cannot be excluded because an active ad group-asset link of this type exists.", + "The asset set type is invalid for setting the excluded_parent_asset_set_types field.", + "Cannot add ad groups for the campaign type.", + "Invalid status for the ad group.", + "For video ads sequencing, AdGroup `step_id` has to use a `step_id` defined in `campaign.video_campaign_settings.video_ad_sequence`.", + "For video ads sequencing, AdGroup type has to use a type defined in `campaign.video_campaign_settings.video_ad_sequence`.", + "Only one AdGroup is allowed for each step ID in video ads sequencing.", + "At least one Vertical Ads format must be enabled for a campaign under Travel Ads in Search Campaigns.", + "AI max setting must be enabled to enable Vertical Ads formats for a campaign under Travel Ads in Search Campaigns.", + "An enabled travel feed must be linked to enable Vertical Ads formats for a campaign under Travel Ads in Search Campaigns." + ], + "type": "string" + }, + "adGroupFeedError": { + "description": "The reasons for the ad group feed error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE", + "CANNOT_CREATE_FOR_REMOVED_FEED", + "ADGROUP_FEED_ALREADY_EXISTS", + "CANNOT_OPERATE_ON_REMOVED_ADGROUP_FEED", + "INVALID_PLACEHOLDER_TYPE", + "MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE", + "NO_EXISTING_LOCATION_CUSTOMER_FEED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "An active feed already exists for this ad group and place holder type.", + "The specified feed is removed.", + "The AdGroupFeed already exists. UPDATE operation should be used to modify the existing AdGroupFeed.", + "Cannot operate on removed AdGroupFeed.", + "Invalid placeholder type.", + "Feed mapping for this placeholder type does not exist.", + "Location AdGroupFeeds cannot be created unless there is a location CustomerFeed for the specified feed." + ], + "type": "string" + }, + "adParameterError": { + "description": "The reasons for the ad parameter error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "AD_GROUP_CRITERION_MUST_BE_KEYWORD", + "INVALID_INSERTION_TEXT_FORMAT" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The ad group criterion must be a keyword criterion.", + "The insertion text is invalid." + ], + "type": "string" + }, + "adSharingError": { + "description": "The reasons for the ad sharing error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "AD_GROUP_ALREADY_CONTAINS_AD", + "INCOMPATIBLE_AD_UNDER_AD_GROUP", + "CANNOT_SHARE_INACTIVE_AD" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Error resulting in attempting to add an Ad to an AdGroup that already contains the Ad.", + "Ad is not compatible with the AdGroup it is being shared with.", + "Cannot add AdGroupAd on inactive Ad." + ], + "type": "string" + }, + "adxError": { + "description": "The reasons for the adx error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "UNSUPPORTED_FEATURE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Attempt to use non-AdX feature by AdX customer." + ], + "type": "string" + }, + "assetError": { + "description": "The reasons for the asset error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CUSTOMER_NOT_ON_ALLOWLIST_FOR_ASSET_TYPE", + "DUPLICATE_ASSET", + "DUPLICATE_ASSET_NAME", + "ASSET_DATA_IS_MISSING", + "CANNOT_MODIFY_ASSET_NAME", + "FIELD_INCOMPATIBLE_WITH_ASSET_TYPE", + "INVALID_CALL_TO_ACTION_TEXT", + "LEAD_FORM_INVALID_FIELDS_COMBINATION", + "LEAD_FORM_MISSING_AGREEMENT", + "INVALID_ASSET_STATUS", + "FIELD_CANNOT_BE_MODIFIED_FOR_ASSET_TYPE", + "SCHEDULES_CANNOT_OVERLAP", + "PROMOTION_CANNOT_SET_PERCENT_OFF_AND_MONEY_AMOUNT_OFF", + "PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT", + "TOO_MANY_DECIMAL_PLACES_SPECIFIED", + "DUPLICATE_ASSETS_WITH_DIFFERENT_FIELD_VALUE", + "CALL_CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED", + "CALL_CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED", + "CALL_DISALLOWED_NUMBER_TYPE", + "CALL_INVALID_CONVERSION_ACTION", + "CALL_INVALID_COUNTRY_CODE", + "CALL_INVALID_DOMESTIC_PHONE_NUMBER_FORMAT", + "CALL_INVALID_PHONE_NUMBER", + "CALL_PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY", + "CALL_PREMIUM_RATE_NUMBER_NOT_ALLOWED", + "CALL_VANITY_PHONE_NUMBER_NOT_ALLOWED", + "PRICE_HEADER_SAME_AS_DESCRIPTION", + "MOBILE_APP_INVALID_APP_ID", + "MOBILE_APP_INVALID_FINAL_URL_FOR_APP_DOWNLOAD_URL", + "NAME_REQUIRED_FOR_ASSET_TYPE", + "LEAD_FORM_LEGACY_QUALIFYING_QUESTIONS_DISALLOWED", + "NAME_CONFLICT_FOR_ASSET_TYPE", + "CANNOT_MODIFY_ASSET_SOURCE", + "CANNOT_MODIFY_AUTOMATICALLY_CREATED_ASSET", + "LEAD_FORM_LOCATION_ANSWER_TYPE_DISALLOWED", + "PAGE_FEED_INVALID_LABEL_TEXT", + "CUSTOMER_NOT_ON_ALLOWLIST_FOR_WHATSAPP_MESSAGE_ASSETS", + "CUSTOMER_NOT_ON_ALLOWLIST_FOR_APP_DEEP_LINK_ASSETS", + "PROMOTION_BARCODE_CANNOT_CONTAIN_LINKS", + "PROMOTION_BARCODE_INVALID_FORMAT", + "UNSUPPORTED_BARCODE_TYPE", + "PROMOTION_QR_CODE_CANNOT_CONTAIN_LINKS", + "PROMOTION_QR_CODE_INVALID_FORMAT", + "CUSTOMER_NOT_ON_ALLOWLIST_FOR_MESSAGE_ASSETS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The customer is not on the allow-list for this asset type.", + "Assets are duplicated across operations.", + "The asset name is duplicated, either across operations or with an existing asset.", + "The `Asset.asset_data` oneof is empty.", + "The asset has a name which is different from an existing duplicate that represents the same content.", + "The field cannot be set for this asset type.", + "Call to action must come from the list of supported values.", + "A lead form asset is created with an invalid combination of input fields.", + "Lead forms require that the Terms of Service have been agreed to before mutates can be executed.", + "Asset status is invalid in this operation.", + "The field cannot be modified by this asset type.", + "Ad schedules for the same asset cannot overlap.", + "Cannot set both percent off and money amount off fields of promotion asset.", + "Cannot set both promotion code and orders over amount fields of promotion asset.", + "The field has too many decimal places specified.", + "Duplicate assets across operations, which have identical `Asset.asset_data` oneof, cannot have different asset level fields for asset types which are deduped.", + "Carrier-specific short number is not allowed.", + "Customer consent required for call recording Terms of Service.", + "The type of the specified phone number is not allowed.", + "If the default `call_conversion_action` is not used, the customer must have a `ConversionAction` with the same id and the `ConversionAction` must be call conversion type.", + "The country code of the phone number is invalid.", + "The format of the phone number is incorrect.", + "The input phone number is not a valid phone number.", + "The phone number is not supported for this country.", + "Premium rate phone number is not allowed.", + "Vanity phone number is not allowed.", + "`PriceOffering` cannot have the same value for header and description.", + "`AppId` is invalid.", + "Invalid App download URL in final URLs.", + "Asset name is required for the asset type.", + "Legacy qualifying questions cannot be in the same Lead Form as custom questions.", + "Unique name is required for this asset type.", + "Cannot modify asset source.", + "User can not modify the automatically created asset.", + "Lead Form is disallowed to use `LOCATION` answer type.", + "Page Feed label text contains invalid characters.", + "The customer is not in the allow-list for whatsapp message asset type.", + "Only customers on the allowlist can create `AppDeepLinkAsset`.", + "Promotion barcode cannot contain links.", + "Failed to encode promotion barcode: Invalid format.", + "Barcode type is not supported.", + "Promotion QR code cannot contain links.", + "Failed to encode promotion QR code: Invalid format.", + "The customer is not in the allow-list for Business message asset type." + ], + "type": "string" + }, + "assetGenerationError": { + "description": "The reasons for the GenAI asset generation error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "NO_ASSETS_GENERATED", + "FINAL_URL_REQUIRED", + "GENERATION_CONTEXT_MISSING_FINAL_URL", + "FINAL_URL_SENSITIVE", + "FINAL_URL_UNSUPPORTED_LANGUAGE", + "FINAL_URL_UNAVAILABLE", + "CAMPAIGN_TYPE_REQUIRED", + "UNSUPPORTED_CAMPAIGN_TYPE", + "UNSUPPORTED_FIELD_TYPE", + "UNSUPPORTED_FIELD_TYPE_FOR_CAMPAIGN_TYPE", + "FREEFORM_PROMPT_UNSUPPORTED_LANGUAGE", + "FREEFORM_PROMPT_SENSITIVE", + "INPUT_IMAGE_FILE_SIZE_TOO_LARGE", + "INPUT_IMAGE_EMPTY", + "GENERATION_TYPE_REQUIRED", + "TOO_MANY_KEYWORDS", + "KEYWORD_INVALID_LENGTH", + "NO_VALID_KEYWORDS", + "FREEFORM_PROMPT_INVALID_LENGTH", + "FREEFORM_PROMPT_REFERENCES_CHILDREN", + "FREEFORM_PROMPT_REFERENCES_SPECIFIC_PEOPLE", + "FREEFORM_PROMPT_VIOLATES_ADS_POLICY", + "FREEFORM_PROMPT_BRAND_CONTENT", + "INPUT_IMAGE_DEPICTS_CHILDREN", + "INPUT_IMAGE_CONTAINS_BRAND_CONTENT", + "INPUT_IMAGE_SENSITIVE", + "INPUT_IMAGE_VIOLATES_POLICY", + "ALL_OUTPUT_IMAGES_FILTERED_OUT_CHILDREN_DEPICTION", + "ALL_OUTPUT_IMAGES_FILTERED_OUT_SPECIFIC_PEOPLE", + "ALL_OUTPUT_IMAGES_FILTERED_OUT", + "INPUT_IMAGE_REQUIRED", + "INPUT_IMAGE_UNSUPPORTED_IMAGE_TYPE", + "CONTEXT_ASSET_GROUP_NOT_FOUND", + "CONTEXT_AD_GROUP_AD_NOT_FOUND", + "CONTEXT_CAMPAIGN_NOT_FOUND" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "No assets were generated for the given request.", + "A final URL is required but was not provided, and could not be sourced from the existing generation context because no existing generation context was provided.", + "A final URL is required but was not provided, and could not be sourced from the provided existing generation context.", + "The provided final URL is considered sensitive, and assets cannot be generated.", + "The language of the provided final URL is not supported.", + "The provided final URL was not indexed or could otherwise not be processed.", + "Campaign type is required but was not provided, and could not be sourced from the existing generation context because no existing generation context was provided.", + "The provided campaign type is not supported for this asset generation operation.", + "The provided field type is not supported for this asset generation operation.", + "The provided field type is not supported for the given campaign type.", + "The language of the provided freeform prompt is not supported.", + "The provided freeform prompt is considered sensitive, and assets cannot be generated.", + "The provided image file size exceeds the limit.", + "The provided image is empty.", + "Exactly one generation type must be provided.", + "Too many keywords provided in request.", + "A provided keyword does not have a valid length.", + "All keywords were filtered out.", + "The provided freeform prompt does not have a valid length.", + "The provided freeform prompt references children.", + "The provided freeform prompt references specific people.", + "The provided freeform prompt violates Ads Policy.", + "The provided freeform prompt contains brand content.", + "The provided image depicts children.", + "The provided image contains brand content.", + "The provided image contains sensitive subject matter.", + "The provided image may violate Google Ads policies.", + "All output images were filtered out because they included depictions of children.", + "All output images were filtered out because they included depictions of specific people.", + "All output images were filtered out for a reason not covered by a more specific error code.", + "At least one input image is required for certain requests.", + "The provided image is of an unsupported type.", + "Asset Group could not be found with the provided ID.", + "Ad Group Ad could not be found with the provided ID combination.", + "Could not find Campaign associated with the provided generation context." + ], + "type": "string" + }, + "assetGroupAssetError": { + "description": "The reasons for the asset group asset error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DUPLICATE_RESOURCE", + "EXPANDABLE_TAGS_NOT_ALLOWED_IN_DESCRIPTION", + "AD_CUSTOMIZER_NOT_SUPPORTED", + "HOTEL_PROPERTY_ASSET_NOT_LINKED_TO_CAMPAIGN" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Cannot add duplicated asset group asset.", + "Expandable tags are not allowed in description assets.", + "Ad customizers are not supported in assetgroup's text assets.", + "Cannot add a HotelPropertyAsset to an AssetGroup that isn't linked to the parent campaign's hotel_property_asset_set field." + ], + "type": "string" + }, + "assetGroupError": { + "description": "The reasons for the asset group error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DUPLICATE_NAME", + "CANNOT_ADD_ASSET_GROUP_FOR_CAMPAIGN_TYPE", + "NOT_ENOUGH_HEADLINE_ASSET", + "NOT_ENOUGH_LONG_HEADLINE_ASSET", + "NOT_ENOUGH_DESCRIPTION_ASSET", + "NOT_ENOUGH_BUSINESS_NAME_ASSET", + "NOT_ENOUGH_MARKETING_IMAGE_ASSET", + "NOT_ENOUGH_SQUARE_MARKETING_IMAGE_ASSET", + "NOT_ENOUGH_LOGO_ASSET", + "FINAL_URL_SHOPPING_MERCHANT_HOME_PAGE_URL_DOMAINS_DIFFER", + "PATH1_REQUIRED_WHEN_PATH2_IS_SET", + "SHORT_DESCRIPTION_REQUIRED", + "FINAL_URL_REQUIRED", + "FINAL_URL_CONTAINS_INVALID_DOMAIN_NAME", + "AD_CUSTOMIZER_NOT_SUPPORTED", + "CANNOT_MUTATE_ASSET_GROUP_FOR_REMOVED_CAMPAIGN" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Each asset group in a single campaign must have a unique name.", + "Cannot add asset group for the campaign type.", + "Not enough headline asset for a valid asset group.", + "Not enough long headline asset for a valid asset group.", + "Not enough description headline asset for a valid asset group.", + "Not enough business name asset for a valid asset group.", + "Not enough marketing image asset for a valid asset group.", + "Not enough square marketing image asset for a valid asset group.", + "Not enough logo asset for a valid asset group.", + "Final url and shopping merchant url does not have the same domain.", + "Path1 required when path2 is set.", + "At least one short description asset is required for a valid asset group.", + "Final url field is required for asset group.", + "Final url contains invalid domain name.", + "Ad customizers are not supported in asset group's text field.", + "Cannot mutate asset group for campaign with removed status." + ], + "type": "string" + }, + "assetGroupListingGroupFilterError": { + "description": "The reasons for the asset group listing group filter error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "TREE_TOO_DEEP", + "UNIT_CANNOT_HAVE_CHILDREN", + "SUBDIVISION_MUST_HAVE_EVERYTHING_ELSE_CHILD", + "DIFFERENT_DIMENSION_TYPE_BETWEEN_SIBLINGS", + "SAME_DIMENSION_VALUE_BETWEEN_SIBLINGS", + "SAME_DIMENSION_TYPE_BETWEEN_ANCESTORS", + "MULTIPLE_ROOTS", + "INVALID_DIMENSION_VALUE", + "MUST_REFINE_HIERARCHICAL_PARENT_TYPE", + "INVALID_PRODUCT_BIDDING_CATEGORY", + "CHANGING_CASE_VALUE_WITH_CHILDREN", + "SUBDIVISION_HAS_CHILDREN", + "CANNOT_REFINE_HIERARCHICAL_EVERYTHING_ELSE", + "DIMENSION_TYPE_NOT_ALLOWED", + "DUPLICATE_WEBPAGE_FILTER_UNDER_ASSET_GROUP", + "LISTING_SOURCE_NOT_ALLOWED", + "FILTER_EXCLUSION_NOT_ALLOWED", + "MULTIPLE_LISTING_SOURCES", + "MULTIPLE_WEBPAGE_CONDITION_TYPES_NOT_ALLOWED", + "MULTIPLE_WEBPAGE_TYPES_PER_ASSET_GROUP", + "PAGE_FEED_FILTER_HAS_PARENT", + "MULTIPLE_OPERATIONS_ON_ONE_NODE", + "TREE_WAS_INVALID_BEFORE_MUTATION" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Listing group tree is too deep.", + "Listing Group UNIT node cannot have children.", + "Listing Group SUBDIVISION node must have everything else child.", + "Dimension type of Listing Group must be the same as that of its siblings.", + "The sibling Listing Groups target exactly the same dimension value.", + "The dimension type is the same as one of the ancestor Listing Groups.", + "Each Listing Group tree must have a single root.", + "Invalid Listing Group dimension value.", + "Hierarchical dimension must refine a dimension of the same type.", + "Invalid Product Bidding Category.", + "Modifying case value is allowed only while updating the entire subtree at the same time.", + "Subdivision node has children which must be removed first.", + "Dimension can't subdivide everything-else node in its own hierarchy.", + "This dimension type is not allowed in this context.", + "All the webpage filters under an AssetGroup should be distinct.", + "Filter of the listing source type is not allowed in the context.", + "Exclusion filters are not allowed in the context.", + "All the filters under an AssetGroup should have the same listing source.", + "All the conditions in a webpage needs to be of same type.", + "All the webpage types of the filters under an AssetGroup should be of same type. Example: All the webpage types can be of type custom_label or url_contains but not both.", + "All page feed filter nodes are root nodes and they can't have a parent.", + "There cannot be more than one mutate operation per request that targets a single asset group listing group filter.", + "The tree is in an invalid state in the database. Any changes that don't fix its issues will fail validation." + ], + "type": "string" + }, + "assetGroupSignalError": { + "description": "The reasons for the asset group hint error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "TOO_MANY_WORDS", + "SEARCH_THEME_POLICY_VIOLATION", + "AUDIENCE_WITH_WRONG_ASSET_GROUP_ID" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The number of words in the Search Theme signal exceed the allowed maximum. You can add up to 10 words in a keyword. See https://support.google.com/google-ads/answer/7476658 for details.", + "The search theme requested to be added violates certain policy. See https://support.google.com/adspolicy/answer/6008942.", + "The asset group referenced by the asset group signal does not match the asset group referenced by the audience being used in the asset group signal." + ], + "type": "string" + }, + "assetLinkError": { + "description": "The reasons for the asset link error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "PINNING_UNSUPPORTED", + "UNSUPPORTED_FIELD_TYPE", + "FIELD_TYPE_INCOMPATIBLE_WITH_ASSET_TYPE", + "FIELD_TYPE_INCOMPATIBLE_WITH_CAMPAIGN_TYPE", + "INCOMPATIBLE_ADVERTISING_CHANNEL_TYPE", + "IMAGE_NOT_WITHIN_SPECIFIED_DIMENSION_RANGE", + "INVALID_PINNED_FIELD", + "MEDIA_BUNDLE_ASSET_FILE_SIZE_TOO_LARGE", + "NOT_ENOUGH_AVAILABLE_ASSET_LINKS_FOR_VALID_COMBINATION", + "NOT_ENOUGH_AVAILABLE_ASSET_LINKS_WITH_FALLBACK", + "NOT_ENOUGH_AVAILABLE_ASSET_LINKS_WITH_FALLBACK_FOR_VALID_COMBINATION", + "YOUTUBE_VIDEO_REMOVED", + "YOUTUBE_VIDEO_TOO_LONG", + "YOUTUBE_VIDEO_TOO_SHORT", + "EXCLUDED_PARENT_FIELD_TYPE", + "INVALID_STATUS", + "YOUTUBE_VIDEO_DURATION_NOT_DEFINED", + "CANNOT_CREATE_AUTOMATICALLY_CREATED_LINKS", + "CANNOT_LINK_TO_AUTOMATICALLY_CREATED_ASSET", + "CANNOT_MODIFY_ASSET_LINK_SOURCE", + "CANNOT_LINK_LOCATION_LEAD_FORM_WITHOUT_LOCATION_ASSET", + "CUSTOMER_NOT_VERIFIED", + "UNSUPPORTED_CALL_TO_ACTION", + "BRAND_ASSETS_NOT_LINKED_AT_ASSET_GROUP_LEVEL", + "BRAND_ASSETS_NOT_LINKED_AT_CAMPAIGN_LEVEL" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Pinning is not supported for the given asset link field.", + "The given field type is not supported to be added directly through asset links.", + "The given asset's type and the specified field type are incompatible.", + "The specified field type is incompatible with the given campaign type.", + "The campaign advertising channel type cannot be associated with the given asset due to channel-based restrictions on the asset's fields.", + "The image asset provided is not within the dimension constraints specified for the submitted asset field.", + "The pinned field is not valid for the submitted asset field.", + "The media bundle asset provided is too large for the submitted asset field.", + "Not enough assets are available for use with other fields since other assets are pinned to specific fields.", + "Not enough assets with fallback are available. When validating the minimum number of assets, assets without fallback (for example, assets that contain location tag without default value \"{LOCATION(City)}\") will not be counted.", + "This is a combination of the NOT_ENOUGH_AVAILABLE_ASSET_LINKS_FOR_VALID_COMBINATION and NOT_ENOUGH_AVAILABLE_ASSET_LINKS_WITH_FALLBACK errors. Not enough assets with fallback are available since some assets are pinned.", + "The YouTube video referenced in the provided asset has been removed.", + "The YouTube video referenced in the provided asset is too long for the field submitted.", + "The YouTube video referenced in the provided asset is too short for the field submitted.", + "The specified field type is excluded for given campaign or ad group.", + "The status is invalid for the operation specified.", + "The YouTube video referenced in the provided asset has unknown duration. This might be the case for a livestream video or a video being currently uploaded to YouTube. In both cases, the video duration should eventually get resolved.", + "User cannot create automatically created links.", + "Advertiser links cannot link to automatically created asset.", + "Automatically created links cannot be changed into advertiser links or the reverse.", + "Lead Form asset with Location answer type can't be linked to the Customer/Campaign because there are no Location assets.", + "Customer is not verified.", + "Call to action value is not supported.", + "For Performance Max campaigns where brand_guidelines_enabled is false, business name and logo assets must be linked as AssetGroupAssets.", + "For Performance Max campaigns where brand_guidelines_enabled is true, business name and logo assets must be linked as CampaignAssets." + ], + "type": "string" + }, + "assetSetAssetError": { + "description": "The reasons for the asset set asset error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_ASSET_TYPE", + "INVALID_ASSET_SET_TYPE", + "DUPLICATE_EXTERNAL_KEY", + "PARENT_LINKAGE_DOES_NOT_EXIST" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The asset type is not eligible to be linked to the specific type of asset set.", + "The asset set type is not eligible to contain the specified type of assets.", + "The asset contains duplicate external key with another asset in the asset set.", + "When attaching a Location typed Asset to a LocationGroup typed AssetSet, the AssetSetAsset linkage between the parent LocationSync AssetSet and the Asset doesn't exist." + ], + "type": "string" + }, + "assetSetError": { + "description": "The reasons for the asset set error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DUPLICATE_ASSET_SET_NAME", + "INVALID_PARENT_ASSET_SET_TYPE", + "ASSET_SET_SOURCE_INCOMPATIBLE_WITH_PARENT_ASSET_SET", + "ASSET_SET_TYPE_CANNOT_BE_LINKED_TO_CUSTOMER", + "INVALID_CHAIN_IDS", + "LOCATION_SYNC_ASSET_SET_DOES_NOT_SUPPORT_RELATIONSHIP_TYPE", + "NOT_UNIQUE_ENABLED_LOCATION_SYNC_TYPED_ASSET_SET", + "INVALID_PLACE_IDS", + "OAUTH_INFO_INVALID", + "OAUTH_INFO_MISSING", + "CANNOT_DELETE_AS_ENABLED_LINKAGES_EXIST" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The asset set name matches that of another enabled asset set.", + "The type of AssetSet.asset_set_source does not match the type of AssetSet.location_set.source in its parent AssetSet.", + "The asset set source doesn't match its parent AssetSet's data.", + "This AssetSet type cannot be linked to CustomerAssetSet.", + "The chain id(s) in ChainSet of a LOCATION_SYNC typed AssetSet is invalid.", + "The relationship type in ChainSet of a LOCATION_SYNC typed AssetSet is not supported.", + "There is more than one enabled LocationSync typed AssetSet under one customer.", + "The place id(s) in a LocationSync typed AssetSet is invalid and can't be decoded.", + "The Google Business Profile OAuth info is invalid.", + "The Google Business Profile OAuth info is missing.", + "Can't delete an AssetSet if it has any enabled linkages (e.g. CustomerAssetSet), or AssetSet is a parent AssetSet and has enabled child AssetSet associated." + ], + "type": "string" + }, + "assetSetLinkError": { + "description": "The reasons for the asset set link error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INCOMPATIBLE_ADVERTISING_CHANNEL_TYPE", + "DUPLICATE_FEED_LINK", + "INCOMPATIBLE_ASSET_SET_TYPE_WITH_CAMPAIGN_TYPE", + "DUPLICATE_ASSET_SET_LINK", + "ASSET_SET_LINK_CANNOT_BE_REMOVED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Advertising channel type cannot be attached to the asset set due to channel-based restrictions.", + "For this asset set type, only one campaign to feed linkage is allowed.", + "The asset set type and campaign type are incompatible.", + "Cannot link duplicate asset sets to the same campaign.", + "Cannot remove the asset set link. If a campaign is linked with only one asset set and you attempt to unlink them, this error will be triggered." + ], + "type": "string" + }, + "audienceError": { + "description": "The reasons for the audience error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "NAME_ALREADY_IN_USE", + "DIMENSION_INVALID", + "AUDIENCE_SEGMENT_NOT_FOUND", + "AUDIENCE_SEGMENT_TYPE_NOT_SUPPORTED", + "DUPLICATE_AUDIENCE_SEGMENT", + "TOO_MANY_SEGMENTS", + "TOO_MANY_DIMENSIONS_OF_SAME_TYPE", + "IN_USE", + "MISSING_ASSET_GROUP_ID", + "CANNOT_CHANGE_FROM_CUSTOMER_TO_ASSET_GROUP_SCOPE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "An audience with this name already exists.", + "A dimension within the audience definition is not valid.", + "One of the audience segment added is not found.", + "One of the audience segment type is not supported.", + "The same segment already exists in this audience.", + "Audience can't have more than allowed number segments.", + "Audience can't have multiple dimensions of same type.", + "The audience cannot be removed, because it is currently used in an ad group criterion or asset group signal in an (enabled or paused) ad group or campaign.", + "Asset Group scoped audience requires an asset group ID.", + "Audience scope may not be changed from Customer to AssetGroup." + ], + "type": "string" + }, + "audienceInsightsError": { + "description": "The reasons for the Audience Insights error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DIMENSION_INCOMPATIBLE_WITH_TOPIC_AUDIENCE_COMBINATIONS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The dimensions cannot be used with topic audience combinations." + ], + "type": "string" + }, + "authenticationError": { + "description": "Indicates failure to properly authenticate user.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "AUTHENTICATION_ERROR", + "CLIENT_CUSTOMER_ID_INVALID", + "CUSTOMER_NOT_FOUND", + "GOOGLE_ACCOUNT_DELETED", + "GOOGLE_ACCOUNT_COOKIE_INVALID", + "GOOGLE_ACCOUNT_AUTHENTICATION_FAILED", + "GOOGLE_ACCOUNT_USER_AND_ADS_USER_MISMATCH", + "LOGIN_COOKIE_REQUIRED", + "NOT_ADS_USER", + "OAUTH_TOKEN_INVALID", + "OAUTH_TOKEN_EXPIRED", + "OAUTH_TOKEN_DISABLED", + "OAUTH_TOKEN_REVOKED", + "OAUTH_TOKEN_HEADER_INVALID", + "LOGIN_COOKIE_INVALID", + "INVALID_EMAIL_ADDRESS", + "USER_ID_INVALID", + "TWO_STEP_VERIFICATION_NOT_ENROLLED", + "ADVANCED_PROTECTION_NOT_ENROLLED", + "ORGANIZATION_NOT_RECOGNIZED", + "ORGANIZATION_NOT_APPROVED", + "ORGANIZATION_NOT_ASSOCIATED_WITH_DEVELOPER_TOKEN", + "DEVELOPER_TOKEN_INVALID" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Authentication of the request failed.", + "Client customer ID is not a number.", + "No customer found for the provided customer ID.", + "Client's Google account is deleted.", + "Account login token in the cookie is invalid.", + "A problem occurred during Google account authentication.", + "The user in the Google account login token does not match the user ID in the cookie.", + "Login cookie is required for authentication.", + "The Google account that generated the OAuth access token is not associated with a Search Ads 360 account. Create a new account, or add the Google account to an existing Search Ads 360 account.", + "OAuth token in the header is not valid.", + "OAuth token in the header has expired.", + "OAuth token in the header has been disabled.", + "OAuth token in the header has been revoked.", + "OAuth token HTTP header is malformed.", + "Login cookie is not valid.", + "The email address provided is invalid or does not exist.", + "User ID in the header is not a valid ID.", + "An account administrator changed this account's authentication settings. To access this account, enable 2-Step Verification in your Google account at https://www.google.com/landing/2step.", + "An account administrator changed this account's authentication settings. To access this account, enable Advanced Protection in your Google account at https://landing.google.com/advancedprotection.", + "The Cloud organization associated with the project is not recognized.", + "The Cloud organization associated with the project is not approved for prod access.", + "The Cloud organization associated with the project is not associated with the developer token.", + "The developer token is not valid." + ], + "type": "string" + }, + "authorizationError": { + "description": "An error encountered when trying to authorize a user.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "USER_PERMISSION_DENIED", + "DEVELOPER_TOKEN_NOT_ON_ALLOWLIST", + "DEVELOPER_TOKEN_PROHIBITED", + "PROJECT_DISABLED", + "AUTHORIZATION_ERROR", + "ACTION_NOT_PERMITTED", + "INCOMPLETE_SIGNUP", + "CUSTOMER_NOT_ENABLED", + "MISSING_TOS", + "DEVELOPER_TOKEN_NOT_APPROVED", + "INVALID_LOGIN_CUSTOMER_ID_SERVING_CUSTOMER_ID_COMBINATION", + "SERVICE_ACCESS_DENIED", + "ACCESS_DENIED_FOR_ACCOUNT_TYPE", + "METRIC_ACCESS_DENIED", + "CLOUD_PROJECT_NOT_UNDER_ORGANIZATION", + "ACTION_NOT_PERMITTED_FOR_SUSPENDED_ACCOUNT" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "User doesn't have permission to access customer. Note: If you're accessing a client customer, the manager's customer ID must be set in the `login-customer-id` header. Learn more at https://developers.google.com/search-ads/reporting/concepts/call-structure#login_customer_id_header", + "The developer token is not on the allow-list.", + "The developer token is not allowed with the project sent in the request.", + "The Google Cloud project sent in the request does not have permission to access the api.", + "Authorization of the client failed.", + "The user does not have permission to perform this action (for example, ADD, UPDATE, REMOVE) on the resource or call a method.", + "Signup not complete.", + "The customer account can't be accessed because it is not yet enabled or has been deactivated.", + "The developer must sign the terms of service. They can be found here: https://developers.google.com/terms", + "The developer token is only approved for use with test accounts. To access non-test accounts, apply for Basic or Standard access.", + "The login customer specified does not have access to the account specified, so the request is invalid.", + "The developer specified does not have access to the service.", + "The customer (or login customer) isn't allowed in Search Ads 360 API. It belongs to another ads system.", + "The developer does not have access to the metrics queried.", + "The Google Cloud project is not under the required organization.", + "The user does not have permission to perform this action on the resource or method because the Google Ads account is suspended." + ], + "type": "string" + }, + "automaticallyCreatedAssetRemovalError": { + "description": "The reasons for error in automatically created asset removal action.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "AD_DOES_NOT_EXIST", + "INVALID_AD_TYPE", + "ASSET_DOES_NOT_EXIST", + "ASSET_FIELD_TYPE_DOES_NOT_MATCH", + "NOT_AN_AUTOMATICALLY_CREATED_ASSET" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The ad does not exist.", + "Ad type is not supported. Only Responsive Search Ad type is supported.", + "The asset does not exist.", + "The asset field type does not match.", + "Not an automatically created asset." + ], + "type": "string" + }, + "batchJobError": { + "description": "The reasons for the batch job error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CANNOT_MODIFY_JOB_AFTER_JOB_STARTS_RUNNING", + "EMPTY_OPERATIONS", + "INVALID_SEQUENCE_TOKEN", + "RESULTS_NOT_READY", + "INVALID_PAGE_SIZE", + "CAN_ONLY_REMOVE_PENDING_JOB", + "CANNOT_LIST_RESULTS", + "ASSET_GROUP_AND_ASSET_GROUP_ASSET_TRANSACTION_FAILURE", + "ASSET_GROUP_LISTING_GROUP_FILTER_TRANSACTION_FAILURE", + "REQUEST_TOO_LARGE", + "CAMPAIGN_AND_CAMPAIGN_ASSET_TRANSACTION_FAILURE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The batch job cannot add more operations or run after it has started running.", + "The operations for an AddBatchJobOperations request were empty.", + "The sequence token for an AddBatchJobOperations request was invalid.", + "Batch job results can only be retrieved once the job is finished.", + "The page size for ListBatchJobResults was invalid.", + "The batch job cannot be removed because it has started running.", + "The batch job cannot be listed due to unexpected errors such as duplicate checkpoints.", + "The request contains interdependent AssetGroup and AssetGroupAsset operations that are treated atomically as a single transaction, and one or more of the operations in that transaction failed, which caused the entire transaction, and therefore this mutate operation, to fail. The operations that caused the transaction to fail can be found in the consecutive AssetGroup or AssetGroupAsset results with the same asset group id. The mutate operation will be successful once the remaining errors in the transaction are fixed.", + "The request contains interdependent AssetGroupListingGroupFilter operations that are treated atomically as a single transaction, and one or more of the operations in that transaction failed, which caused the entire transaction, and therefore this mutate operation, to fail. The operations that caused the transaction to fail can be found in the consecutive AssetGroupListingGroupFilter results with the same asset group id. The mutate operation will be successful once the remaining errors in the transaction are fixed.", + "The AddBatchJobOperationsRequest is too large. Split the request into smaller requests. The maximum allowed request size is 10484504 bytes.", + "This error indicates a failed transaction involving interdependent Campaign and CampaignAsset operations that are treated atomically as a single transaction. Because some operations within the transaction failed, the entire set of changes was rejected. Related error details are found in the results for the Campaign and CampaignAssets sharing the same Campaign ID. The transaction will succeed after all associated errors are resolved." + ], + "type": "string" + }, + "benchmarksError": { + "description": "The reasons for the Benchmarks error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "MAX_QUERY_COMPLEXITY_EXCEEDED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The combination of inputs to generate benchmarks is too complex. To reduce complexity, try selecting a more granular benchmarks source, a smaller date range, or a smaller set of products." + ], + "type": "string" + }, + "biddingError": { + "description": "The reasons for the bidding errors", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "BIDDING_STRATEGY_TRANSITION_NOT_ALLOWED", + "CANNOT_ATTACH_BIDDING_STRATEGY_TO_CAMPAIGN", + "INVALID_ANONYMOUS_BIDDING_STRATEGY_TYPE", + "INVALID_BIDDING_STRATEGY_TYPE", + "INVALID_BID", + "BIDDING_STRATEGY_NOT_AVAILABLE_FOR_ACCOUNT_TYPE", + "CANNOT_CREATE_CAMPAIGN_WITH_BIDDING_STRATEGY", + "CANNOT_TARGET_CONTENT_NETWORK_ONLY_WITH_CAMPAIGN_LEVEL_POP_BIDDING_STRATEGY", + "BIDDING_STRATEGY_NOT_SUPPORTED_WITH_AD_SCHEDULE", + "PAY_PER_CONVERSION_NOT_AVAILABLE_FOR_CUSTOMER", + "PAY_PER_CONVERSION_NOT_ALLOWED_WITH_TARGET_CPA", + "BIDDING_STRATEGY_NOT_ALLOWED_FOR_SEARCH_ONLY_CAMPAIGNS", + "BIDDING_STRATEGY_NOT_SUPPORTED_IN_DRAFTS_OR_EXPERIMENTS", + "BIDDING_STRATEGY_TYPE_DOES_NOT_SUPPORT_PRODUCT_TYPE_ADGROUP_CRITERION", + "BID_TOO_SMALL", + "BID_TOO_BIG", + "BID_TOO_MANY_FRACTIONAL_DIGITS", + "INVALID_DOMAIN_NAME", + "NOT_COMPATIBLE_WITH_PAYMENT_MODE", + "BIDDING_STRATEGY_TYPE_INCOMPATIBLE_WITH_SHARED_BUDGET", + "BIDDING_STRATEGY_AND_BUDGET_MUST_BE_ALIGNED", + "BIDDING_STRATEGY_AND_BUDGET_MUST_BE_ATTACHED_TO_THE_SAME_CAMPAIGNS_TO_ALIGN", + "BIDDING_STRATEGY_AND_BUDGET_MUST_BE_REMOVED_TOGETHER", + "CPC_BID_FLOOR_MICROS_GREATER_THAN_CPC_BID_CEILING_MICROS", + "TARGET_ROAS_TOLERANCE_PERCENT_MILLIS_MUST_BE_INTEGER" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Cannot transition to new bidding strategy.", + "Cannot attach bidding strategy to campaign.", + "Bidding strategy is not supported or cannot be used as anonymous.", + "The type does not match the named strategy's type.", + "The bid is invalid.", + "Bidding strategy is not available for the account type.", + "Campaign can not be created with given bidding strategy. It can be transitioned to the strategy, once eligible.", + "Cannot target content network only as campaign uses Page One Promoted bidding strategy.", + "Budget Optimizer and Target Spend bidding strategies are not supported for campaigns with AdSchedule targeting.", + "Pay per conversion is not available to all the customer, only few customers on the allow-list can use this.", + "Pay per conversion is not allowed with Target CPA.", + "Cannot set bidding strategy to Manual CPM for search network only campaigns.", + "The bidding strategy is not supported for use in drafts or experiments.", + "Bidding strategy type does not support product type ad group criterion.", + "Bid amount is too small.", + "Bid amount is too big.", + "Bid has too many fractional digit precision.", + "Invalid domain name specified.", + "The field is not compatible with the payment mode.", + "Bidding strategy type is incompatible with shared budget.", + "The attached bidding strategy and budget must be aligned with each other if alignment is specified on either entity.", + "The attached bidding strategy and budget must be attached to the same campaigns to become aligned.", + "The aligned bidding strategy and budget must be removed at the same time.", + "cpc_bid_floor_micros is greater than cpc_bid_ceiling_micros.", + "target_roas_tolerance_percent_millis must be integer." + ], + "type": "string" + }, + "biddingStrategyError": { + "description": "An error with a Bidding Strategy mutate.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DUPLICATE_NAME", + "CANNOT_CHANGE_BIDDING_STRATEGY_TYPE", + "CANNOT_REMOVE_ASSOCIATED_STRATEGY", + "BIDDING_STRATEGY_NOT_SUPPORTED", + "INCOMPATIBLE_BIDDING_STRATEGY_AND_BIDDING_STRATEGY_GOAL_TYPE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Each bidding strategy must have a unique name.", + "Bidding strategy type is immutable.", + "Only bidding strategies not linked to campaigns, adgroups or adgroup criteria can be removed.", + "The specified bidding strategy is not supported.", + "The bidding strategy is incompatible with the campaign's bidding strategy goal type." + ], + "type": "string" + }, + "billingSetupError": { + "description": "The reasons for the billing setup error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CANNOT_USE_EXISTING_AND_NEW_ACCOUNT", + "CANNOT_REMOVE_STARTED_BILLING_SETUP", + "CANNOT_CHANGE_BILLING_TO_SAME_PAYMENTS_ACCOUNT", + "BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_STATUS", + "INVALID_PAYMENTS_ACCOUNT", + "BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_CATEGORY", + "INVALID_START_TIME_TYPE", + "THIRD_PARTY_ALREADY_HAS_BILLING", + "BILLING_SETUP_IN_PROGRESS", + "NO_SIGNUP_PERMISSION", + "CHANGE_OF_BILL_TO_IN_PROGRESS", + "PAYMENTS_PROFILE_NOT_FOUND", + "PAYMENTS_ACCOUNT_NOT_FOUND", + "PAYMENTS_PROFILE_INELIGIBLE", + "PAYMENTS_ACCOUNT_INELIGIBLE", + "CUSTOMER_NEEDS_INTERNAL_APPROVAL", + "PAYMENTS_PROFILE_NEEDS_SERVICE_AGREEMENT_ACCEPTANCE", + "PAYMENTS_ACCOUNT_INELIGIBLE_CURRENCY_CODE_MISMATCH", + "FUTURE_START_TIME_PROHIBITED", + "TOO_MANY_BILLING_SETUPS_FOR_PAYMENTS_ACCOUNT" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Cannot specify both an existing payments account and a new payments account when setting up billing.", + "Cannot cancel an approved billing setup whose start time has passed.", + "Cannot perform a Change of Bill-To (CBT) to the same payments account.", + "Billing setups can only be used by customers with ENABLED or DRAFT status.", + "Billing setups must either include a correctly formatted existing payments account id, or a non-empty new payments account name.", + "Only billable and third-party customers can create billing setups.", + "Billing setup creations can only use NOW for start time type.", + "Billing setups can only be created for a third-party customer if they do not already have a setup.", + "Billing setups cannot be created if there is already a pending billing in progress.", + "Billing setups can only be created by customers who have permission to setup billings. Users can contact a representative for help setting up permissions.", + "Billing setups cannot be created if there is already a future-approved billing.", + "Requested payments profile not found.", + "Requested payments account not found.", + "Billing setup creation failed because the payments profile is ineligible.", + "Billing setup creation failed because the payments account is ineligible.", + "Billing setup creation failed because the payments profile needs internal approval.", + "Billing setup creation failed because the user needs to accept master service agreement on the payments profile.", + "Payments account has different currency code than the current customer and hence cannot be used to setup billing.", + "A start time in the future cannot be used because there is currently no active billing setup for this customer.", + "The payments account has maximum number of billing setups." + ], + "type": "string" + }, + "brandGuidelinesMigrationError": { + "description": "The reasons for the brand guidelines migration error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "BRAND_GUIDELINES_ALREADY_ENABLED", + "CANNOT_ENABLE_BRAND_GUIDELINES_FOR_REMOVED_CAMPAIGN", + "BRAND_GUIDELINES_LOGO_LIMIT_EXCEEDED", + "CANNOT_AUTO_POPULATE_BRAND_ASSETS_WHEN_BRAND_ASSETS_PROVIDED", + "AUTO_POPULATE_BRAND_ASSETS_REQUIRED_WHEN_BRAND_ASSETS_OMITTED", + "TOO_MANY_ENABLE_OPERATIONS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "This campaign is already enabled for Brand Guidelines.", + "Brand Guidelines can only be enabled for active or suspended campaigns.", + "Maximum of 5 square and landscape logos can be specified for Brand Guidelines.", + "Either auto_populate_brand_assets must be true or brand_assets must be provided, but not both.", + "Either auto_populate_brand_assets can be false or brand_assets can be omitted, but not both.", + "A maximum of 10 enable operations can be executed in a request." + ], + "type": "string" + }, + "campaignBudgetError": { + "description": "An error with a Campaign Budget mutate.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CAMPAIGN_BUDGET_CANNOT_BE_SHARED", + "CAMPAIGN_BUDGET_REMOVED", + "CAMPAIGN_BUDGET_IN_USE", + "CAMPAIGN_BUDGET_PERIOD_NOT_AVAILABLE", + "CANNOT_MODIFY_FIELD_OF_IMPLICITLY_SHARED_CAMPAIGN_BUDGET", + "CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_IMPLICITLY_SHARED", + "CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_EXPLICITLY_SHARED_WITHOUT_NAME", + "CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_EXPLICITLY_SHARED", + "CANNOT_USE_IMPLICITLY_SHARED_CAMPAIGN_BUDGET_WITH_MULTIPLE_CAMPAIGNS", + "DUPLICATE_NAME", + "MONEY_AMOUNT_IN_WRONG_CURRENCY", + "MONEY_AMOUNT_LESS_THAN_CURRENCY_MINIMUM_CPC", + "MONEY_AMOUNT_TOO_LARGE", + "NEGATIVE_MONEY_AMOUNT", + "NON_MULTIPLE_OF_MINIMUM_CURRENCY_UNIT", + "TOTAL_BUDGET_AMOUNT_MUST_BE_UNSET_FOR_BUDGET_PERIOD_DAILY", + "INVALID_PERIOD", + "CANNOT_USE_ACCELERATED_DELIVERY_MODE", + "BUDGET_AMOUNT_MUST_BE_UNSET_FOR_CUSTOM_BUDGET_PERIOD", + "BUDGET_BELOW_PER_DAY_MINIMUM" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The campaign budget cannot be shared.", + "The requested campaign budget no longer exists.", + "The campaign budget is associated with at least one campaign, and so the campaign budget cannot be removed.", + "Customer is not on the allow-list for this campaign budget period.", + "This field is not mutable on implicitly shared campaign budgets", + "Cannot change explicitly shared campaign budgets back to implicitly shared ones.", + "An implicit campaign budget without a name cannot be changed to explicitly shared campaign budget.", + "Cannot change an implicitly shared campaign budget to an explicitly shared one.", + "Only explicitly shared campaign budgets can be used with multiple campaigns.", + "A campaign budget with this name already exists.", + "A money amount was not in the expected currency.", + "A money amount was less than the minimum CPC for currency.", + "A money amount was greater than the maximum allowed.", + "A money amount was negative.", + "A money amount was not a multiple of a minimum unit.", + "Total budget amount must be unset when BudgetPeriod is DAILY.", + "The period of the budget is not allowed.", + "Cannot use accelerated delivery method on this budget.", + "Budget amount must be unset when BudgetPeriod is CUSTOM.", + "Budget amount or total amount must be above this campaign's per-day minimum. See the error's details.budget_per_day_minimum_error_details field for more information." + ], + "type": "string" + }, + "campaignConversionGoalError": { + "description": "The reasons for the campaign conversion goal error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CANNOT_USE_CAMPAIGN_GOAL_FOR_SEARCH_ADS_360_MANAGED_CAMPAIGN", + "CANNOT_USE_STORE_SALE_GOAL_FOR_PERFORMANCE_MAX_CAMPAIGN" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Campaign is managed by Search Ads 360 but uses Unified Goal.", + "Performance Max campaign cannot use an included store sale campaign goal." + ], + "type": "string" + }, + "campaignCriterionError": { + "description": "The reasons for the campaign criterion error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CONCRETE_TYPE_REQUIRED", + "INVALID_PLACEMENT_URL", + "CANNOT_EXCLUDE_CRITERIA_TYPE", + "CANNOT_SET_STATUS_FOR_CRITERIA_TYPE", + "CANNOT_SET_STATUS_FOR_EXCLUDED_CRITERIA", + "CANNOT_TARGET_AND_EXCLUDE", + "TOO_MANY_OPERATIONS", + "OPERATOR_NOT_SUPPORTED_FOR_CRITERION_TYPE", + "SHOPPING_CAMPAIGN_SALES_COUNTRY_NOT_SUPPORTED_FOR_SALES_CHANNEL", + "CANNOT_ADD_EXISTING_FIELD", + "CANNOT_UPDATE_NEGATIVE_CRITERION", + "CANNOT_SET_NEGATIVE_KEYWORD_THEME_CONSTANT_CRITERION", + "INVALID_KEYWORD_THEME_CONSTANT", + "MISSING_KEYWORD_THEME_CONSTANT_OR_FREE_FORM_KEYWORD_THEME", + "CANNOT_TARGET_BOTH_PROXIMITY_AND_LOCATION_CRITERIA_FOR_SMART_CAMPAIGN", + "CANNOT_TARGET_MULTIPLE_PROXIMITY_CRITERIA_FOR_SMART_CAMPAIGN", + "LOCATION_NOT_LAUNCHED_FOR_LOCAL_SERVICES_CAMPAIGN", + "LOCATION_INVALID_FOR_LOCAL_SERVICES_CAMPAIGN", + "CANNOT_TARGET_COUNTRY_FOR_LOCAL_SERVICES_CAMPAIGN", + "LOCATION_NOT_IN_HOME_COUNTRY_FOR_LOCAL_SERVICES_CAMPAIGN", + "CANNOT_ADD_OR_REMOVE_LOCATION_FOR_LOCAL_SERVICES_CAMPAIGN", + "AT_LEAST_ONE_POSITIVE_LOCATION_REQUIRED_FOR_LOCAL_SERVICES_CAMPAIGN", + "AT_LEAST_ONE_LOCAL_SERVICE_ID_CRITERION_REQUIRED_FOR_LOCAL_SERVICES_CAMPAIGN", + "LOCAL_SERVICE_ID_NOT_FOUND_FOR_CATEGORY", + "CANNOT_ATTACH_BRAND_LIST_TO_NON_QUALIFIED_SEARCH_CAMPAIGN", + "CANNOT_REMOVE_ALL_LOCATIONS_DUE_TO_TOO_MANY_COUNTRY_EXCLUSIONS", + "INVALID_VIDEO_LINEUP_ID" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Concrete type of criterion (keyword v.s. placement) is required for CREATE and UPDATE operations.", + "Invalid placement URL.", + "Criteria type can not be excluded for the campaign by the customer. like AOL account type cannot target site type criteria", + "Cannot set the campaign criterion status for this criteria type.", + "Cannot set the campaign criterion status for an excluded criteria.", + "Cannot target and exclude the same criterion.", + "The mutate contained too many operations.", + "This operator cannot be applied to a criterion of this type.", + "The Shopping campaign sales country is not supported for ProductSalesChannel targeting.", + "The existing field can't be updated with CREATE operation. It can be updated with UPDATE operation only.", + "Negative criteria are immutable, so updates are not allowed.", + "Only free form names are allowed for negative Smart campaign keyword theme.", + "Invalid Smart campaign keyword theme constant criterion.", + "A Smart campaign keyword theme constant or free-form Smart campaign keyword theme is required.", + "A Smart campaign may not target proximity and location criteria simultaneously.", + "A Smart campaign may not target multiple proximity criteria.", + "Location is not launched for Local Services Campaigns.", + "A Local Services campaign may not target certain criteria types.", + "Country locations are not supported for Local Services campaign.", + "Location is not within the home country of Local Services campaign.", + "Local Services profile does not exist for a particular Local Services campaign.", + "Local Services campaign must have at least one target location.", + "At least one positive local service ID criterion is required for a Local Services campaign.", + "Local service ID is not found under selected categories in local services campaign setting.", + "For search advertising channel, brand lists can only be applied to exclusive targeting, broad match campaigns for inclusive targeting or PMax generated campaigns.", + "Campaigns that target all countries and territories are limited to a certain number of top-level location exclusions. If removing a criterion causes the campaign to target all countries and territories and the campaign has more top-level location exclusions than the limit allows, then this error is returned.", + "Video lineup ID does not exist." + ], + "type": "string" + }, + "campaignCustomizerError": { + "description": "The reasons for the campaign customizer error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version." + ], + "type": "string" + }, + "campaignDraftError": { + "description": "The reasons for the campaign draft error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DUPLICATE_DRAFT_NAME", + "INVALID_STATUS_TRANSITION_FROM_REMOVED", + "INVALID_STATUS_TRANSITION_FROM_PROMOTED", + "INVALID_STATUS_TRANSITION_FROM_PROMOTE_FAILED", + "CUSTOMER_CANNOT_CREATE_DRAFT", + "CAMPAIGN_CANNOT_CREATE_DRAFT", + "INVALID_DRAFT_CHANGE", + "INVALID_STATUS_TRANSITION", + "MAX_NUMBER_OF_DRAFTS_PER_CAMPAIGN_REACHED", + "LIST_ERRORS_FOR_PROMOTED_DRAFT_ONLY" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "A draft with this name already exists for this campaign.", + "The draft is removed and cannot be transitioned to another status.", + "The draft has been promoted and cannot be transitioned to the specified status.", + "The draft has failed to be promoted and cannot be transitioned to the specified status.", + "This customer is not allowed to create drafts.", + "This campaign is not allowed to create drafts.", + "This modification cannot be made on a draft.", + "The draft cannot be transitioned to the specified status from its current status.", + "The campaign has reached the maximum number of drafts that can be created for a campaign throughout its lifetime. No additional drafts can be created for this campaign. Removed drafts also count towards this limit.", + "ListAsyncErrors was called without first promoting the draft." + ], + "type": "string" + }, + "campaignError": { + "description": "An error with a Campaign mutate.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CANNOT_TARGET_CONTENT_NETWORK", + "CANNOT_TARGET_SEARCH_NETWORK", + "CANNOT_TARGET_SEARCH_NETWORK_WITHOUT_GOOGLE_SEARCH", + "CANNOT_TARGET_GOOGLE_SEARCH_FOR_CPM_CAMPAIGN", + "CAMPAIGN_MUST_TARGET_AT_LEAST_ONE_NETWORK", + "CANNOT_TARGET_PARTNER_SEARCH_NETWORK", + "CANNOT_TARGET_CONTENT_NETWORK_ONLY_WITH_CRITERIA_LEVEL_BIDDING_STRATEGY", + "CAMPAIGN_DURATION_MUST_CONTAIN_ALL_RUNNABLE_TRIALS", + "CANNOT_MODIFY_FOR_TRIAL_CAMPAIGN", + "DUPLICATE_CAMPAIGN_NAME", + "INCOMPATIBLE_CAMPAIGN_FIELD", + "INVALID_CAMPAIGN_NAME", + "INVALID_AD_SERVING_OPTIMIZATION_STATUS", + "INVALID_TRACKING_URL", + "CANNOT_SET_BOTH_TRACKING_URL_TEMPLATE_AND_TRACKING_SETTING", + "MAX_IMPRESSIONS_NOT_IN_RANGE", + "TIME_UNIT_NOT_SUPPORTED", + "INVALID_OPERATION_IF_SERVING_STATUS_HAS_ENDED", + "BUDGET_CANNOT_BE_SHARED", + "CAMPAIGN_CANNOT_USE_SHARED_BUDGET", + "CANNOT_CHANGE_BUDGET_ON_CAMPAIGN_WITH_TRIALS", + "CAMPAIGN_LABEL_DOES_NOT_EXIST", + "CAMPAIGN_LABEL_ALREADY_EXISTS", + "MISSING_SHOPPING_SETTING", + "INVALID_SHOPPING_SALES_COUNTRY", + "ADVERTISING_CHANNEL_TYPE_NOT_AVAILABLE_FOR_ACCOUNT_TYPE", + "INVALID_ADVERTISING_CHANNEL_SUB_TYPE", + "AT_LEAST_ONE_CONVERSION_MUST_BE_SELECTED", + "CANNOT_SET_AD_ROTATION_MODE", + "CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED", + "CANNOT_SET_DATE_TO_PAST", + "MISSING_HOTEL_CUSTOMER_LINK", + "INVALID_HOTEL_CUSTOMER_LINK", + "MISSING_HOTEL_SETTING", + "CANNOT_USE_SHARED_CAMPAIGN_BUDGET_WHILE_PART_OF_CAMPAIGN_GROUP", + "APP_NOT_FOUND", + "SHOPPING_ENABLE_LOCAL_NOT_SUPPORTED_FOR_CAMPAIGN_TYPE", + "MERCHANT_NOT_ALLOWED_FOR_COMPARISON_LISTING_ADS", + "INSUFFICIENT_APP_INSTALLS_COUNT", + "SENSITIVE_CATEGORY_APP", + "HEC_AGREEMENT_REQUIRED", + "NOT_COMPATIBLE_WITH_VIEW_THROUGH_CONVERSION_OPTIMIZATION", + "INVALID_EXCLUDED_PARENT_ASSET_FIELD_TYPE", + "CANNOT_CREATE_APP_PRE_REGISTRATION_FOR_NON_ANDROID_APP", + "APP_NOT_AVAILABLE_TO_CREATE_APP_PRE_REGISTRATION_CAMPAIGN", + "INCOMPATIBLE_BUDGET_TYPE", + "LOCAL_SERVICES_DUPLICATE_CATEGORY_BID", + "LOCAL_SERVICES_INVALID_CATEGORY_BID", + "LOCAL_SERVICES_MISSING_CATEGORY_BID", + "INVALID_STATUS_CHANGE", + "MISSING_TRAVEL_CUSTOMER_LINK", + "INVALID_TRAVEL_CUSTOMER_LINK", + "INVALID_EXCLUDED_PARENT_ASSET_SET_TYPE", + "ASSET_SET_NOT_A_HOTEL_PROPERTY_ASSET_SET", + "HOTEL_PROPERTY_ASSET_SET_ONLY_FOR_PERFORMANCE_MAX_FOR_TRAVEL_GOALS", + "AVERAGE_DAILY_SPEND_TOO_HIGH", + "CANNOT_ATTACH_TO_REMOVED_CAMPAIGN_GROUP", + "CANNOT_ATTACH_TO_BIDDING_STRATEGY", + "CANNOT_CHANGE_BUDGET_PERIOD", + "NOT_ENOUGH_CONVERSIONS", + "CANNOT_SET_MORE_THAN_ONE_CONVERSION_ACTION", + "NOT_COMPATIBLE_WITH_BUDGET_TYPE", + "NOT_COMPATIBLE_WITH_UPLOAD_CLICKS_CONVERSION", + "APP_ID_MUST_MATCH_CONVERSION_ACTION_APP_ID", + "CONVERSION_ACTION_WITH_DOWNLOAD_CATEGORY_NOT_ALLOWED", + "CONVERSION_ACTION_WITH_DOWNLOAD_CATEGORY_REQUIRED", + "CONVERSION_TRACKING_NOT_ENABLED", + "NOT_COMPATIBLE_WITH_BIDDING_STRATEGY_TYPE", + "NOT_COMPATIBLE_WITH_GOOGLE_ATTRIBUTION_CONVERSIONS", + "CONVERSION_LAG_TOO_HIGH", + "NOT_LINKED_ADVERTISING_PARTNER", + "INVALID_NUMBER_OF_ADVERTISING_PARTNER_IDS", + "CANNOT_TARGET_DISPLAY_NETWORK_WITHOUT_YOUTUBE", + "CANNOT_LINK_TO_COMPARISON_SHOPPING_SERVICE_ACCOUNT", + "CANNOT_TARGET_NETWORK_FOR_COMPARISON_SHOPPING_SERVICE_LINKED_ACCOUNTS", + "CANNOT_MODIFY_TEXT_ASSET_AUTOMATION_WITH_ENABLED_TRIAL", + "DYNAMIC_TEXT_ASSET_CANNOT_OPT_OUT_WITH_FINAL_URL_EXPANSION_OPT_IN", + "CANNOT_SET_CAMPAIGN_KEYWORD_MATCH_TYPE", + "CANNOT_DISABLE_BROAD_MATCH_WHEN_KEYWORD_CONVERSION_IN_PROCESS", + "CANNOT_DISABLE_BROAD_MATCH_WHEN_TARGETING_BRANDS", + "CANNOT_ENABLE_BROAD_MATCH_FOR_BASE_CAMPAIGN_WITH_PROMOTING_TRIAL", + "CANNOT_ENABLE_BROAD_MATCH_FOR_PROMOTING_TRIAL_CAMPAIGN", + "REQUIRED_BUSINESS_NAME_ASSET_NOT_LINKED", + "REQUIRED_LOGO_ASSET_NOT_LINKED", + "BRAND_TARGETING_OVERRIDES_NOT_SUPPORTED", + "BRAND_GUIDELINES_NOT_ENABLED_FOR_CAMPAIGN", + "BRAND_GUIDELINES_MAIN_AND_ACCENT_COLORS_REQUIRED", + "BRAND_GUIDELINES_COLOR_INVALID_FORMAT", + "BRAND_GUIDELINES_UNSUPPORTED_FONT_FAMILY", + "BRAND_GUIDELINES_UNSUPPORTED_CHANNEL", + "CANNOT_ENABLE_BRAND_GUIDELINES_FOR_TRAVEL_GOALS", + "CUSTOMER_NOT_ALLOWLISTED_FOR_BRAND_GUIDELINES", + "THIRD_PARTY_INTEGRATION_PARTNER_NOT_ALLOWED", + "THIRD_PARTY_INTEGRATION_PARTNER_SHARE_COST_NOT_ALLOWED", + "DUPLICATE_INTERACTION_TYPE", + "INVALID_INTERACTION_TYPE", + "VIDEO_SEQUENCE_ERROR_SEQUENCE_DEFINITION_REQUIRED", + "AI_MAX_MUST_BE_ENABLED", + "DURATION_TOO_LONG_FOR_TOTAL_BUDGET", + "END_DATE_TIME_REQUIRED_FOR_TOTAL_BUDGET" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Cannot target content network.", + "Cannot target search network.", + "Cannot cover search network without google search network.", + "Cannot target Google Search network for a CPM campaign.", + "Must target at least one network.", + "Only some Google partners are allowed to target partner search network.", + "Cannot target content network only as campaign has criteria-level bidding strategy.", + "Cannot modify the start or end date such that the campaign duration would not contain the durations of all runnable trials.", + "Cannot modify dates, budget or status of a trial campaign.", + "Trying to modify the name of an active or paused campaign, where the name is already assigned to another active or paused campaign.", + "Two fields are in conflicting modes.", + "Campaign name cannot be used.", + "Given status is invalid.", + "Error in the campaign level tracking URL.", + "Cannot set both tracking URL template and tracking setting. A user has to clear legacy tracking setting in order to add tracking URL template.", + "The maximum number of impressions for Frequency Cap should be an integer greater than 0.", + "Only the Day, Week and Month time units are supported.", + "Operation not allowed on a campaign whose serving status has ended", + "This budget is exclusively linked to a Campaign that is using experiments so it cannot be shared.", + "Campaigns using experiments cannot use a shared budget.", + "A different budget cannot be assigned to a campaign when there are running or scheduled trials.", + "No link found between the campaign and the label.", + "The label has already been attached to the campaign.", + "A ShoppingSetting was not found when creating a shopping campaign.", + "The country in shopping setting is not an allowed country.", + "The requested channel type is not available according to the customer's account setting.", + "The AdvertisingChannelSubType is not a valid subtype of the primary channel type.", + "At least one conversion must be selected.", + "Setting ad rotation mode for a campaign is not allowed. Ad rotation mode at campaign is deprecated.", + "Trying to change start date on a campaign that has started.", + "Trying to modify a date into the past.", + "Hotel center id in the hotel setting does not match any customer links.", + "Hotel center id in the hotel setting must match an active customer link.", + "Hotel setting was not found when creating a hotel ads campaign.", + "A Campaign cannot use shared campaign budgets and be part of a campaign group.", + "The app ID was not found.", + "Campaign.shopping_setting.enable_local is not supported for the specified campaign type.", + "The merchant does not support the creation of campaigns for Shopping Comparison Listing Ads.", + "The App campaign for engagement cannot be created because there aren't enough installs.", + "The App campaign for engagement cannot be created because the app is sensitive.", + "Customers with Housing, Employment, or Credit ads must accept updated personalized ads policy to continue creating campaigns.", + "The field is not compatible with view through conversion optimization.", + "The field type cannot be excluded because an active campaign-asset link of this type exists.", + "The app pre-registration campaign cannot be created for non-Android applications.", + "The campaign cannot be created since the app is not available for pre-registration in any country.", + "The type of the Budget is not compatible with this Campaign.", + "Category bid list in the local services campaign setting contains multiple bids for the same category ID.", + "Category bid list in the local services campaign setting contains a bid for an invalid category ID.", + "Category bid list in the local services campaign setting is missing a bid for a category ID that must be present.", + "The requested change in status is not supported.", + "Travel Campaign's travel_account_id does not match any customer links.", + "Travel Campaign's travel_account_id matches an existing customer link but the customer link is not active.", + "The asset set type is invalid to be set in excluded_parent_asset_set_types field.", + "Campaign.hotel_property_asset_set must point to an asset set of type HOTEL_PROPERTY.", + "The hotel property asset set can only be set on Performance Max for travel goals campaigns.", + "Customer's average daily spend is too high to enable this feature.", + "Cannot attach the campaign to a deleted campaign group.", + "Cannot attach the campaign to this bidding strategy.", + "A budget with a different period cannot be assigned to the campaign.", + "Customer does not have enough conversions to enable this feature.", + "This campaign type can only have one conversion action.", + "The field is not compatible with the budget type.", + "The feature is incompatible with ConversionActionType.UPLOAD_CLICKS.", + "App campaign setting app ID must match selective optimization conversion action app ID.", + "Selective optimization conversion action with Download category is not allowed.", + "One software download for selective optimization conversion action is required for this campaign conversion action.", + "Conversion tracking is not enabled and is required for this feature.", + "The field is not compatible with the bidding strategy type.", + "Campaign is not compatible with a conversion tracker that has Google attribution enabled.", + "Customer level conversion lag is too high.", + "The advertiser set as an advertising partner is not an actively linked advertiser to this customer.", + "Invalid number of advertising partner IDs.", + "Cannot target the display network without also targeting YouTube.", + "This campaign type cannot be linked to a Comparison Shopping Service account.", + "Standard Shopping campaigns that are linked to a Comparison Shopping Service account cannot target this network.", + "Text asset automation settings can not be modified when there is an active Performance Max optimization automatically created assets experiment. End the experiment to modify these settings.", + "Dynamic text asset cannot be opted out when final URL expansion is opted in.", + "Can not set a campaign level match type.", + "The campaign level keyword match type cannot be switched to non-broad when keyword conversion to broad match is in process.", + "The campaign level keyword match type cannot be switched to non-broad when the campaign has any attached brand list or when a brand hint shared set is attached to the campaign.", + "Cannot set campaign level keyword match type to BROAD if the campaign is a base campaign with an associated trial that is currently promoting.", + "Cannot set campaign level keyword match type to BROAD if the campaign is a trial currently promoting.", + "Performance Max campaigns with Brand Guidelines enabled require at least one business name to be linked as a CampaignAsset. Performance Max campaigns for online sales with a product feed must meet this requirement only when there are assets that are linked to the campaign's asset groups.", + "Performance Max campaigns with Brand Guidelines enabled require at least one square logo to be linked as a CampaignAsset. Performance Max campaigns for online sales with a product feed must meet this requirement only when there are assets that are linked to the campaign's asset groups.", + "This campaign does not support brand targeting overrides. Brand targeting overrides are only supported for Performance Max campaigns that have a product feed.", + "Brand Guideline fields can only be set for campaigns that have Brand Guidelines enabled.", + "When a Brand Guidelines color field is set, both main color and accent color are required.", + "Brand Guidelines colors must be hex colors matching the regular expression '#[0-9a-fA-F]{6}', for example '#abc123'", + "Brand Guidelines font family must be one of the supported Google Fonts. See Campaign.brand_guidelines.predefined_font_family for the list of supported fonts.", + "Brand Guidelines cannot be set for this channel type. Brand Guidelines supports Performance Max campaigns.", + "Brand Guidelines cannot be enabled for Performance Max for travel goals campaigns.", + "This customer is not allowlisted for enabling Brand Guidelines.", + "Using campaign third-party integration partners that are not set at the customer level is not allowed.", + "Campaign third-party integration partners are not allowed to share cost if it is not enabled at the customer level.", + "Each `previous_step_interaction_type` can be used at most once for the same `previous_step_id`", + "Previous step interaction type cannot happen for previous step AdGroup type. For example, `SKIP` interaction type is not valid for non-skippable formats.", + "Campaign video ads sequence is required for `VIDEO_SEQUENCE` advertising channel sub type.", + "This feature is only available for campaigns with AI Max enabled.", + "Duration too long for total budget.", + "Campaigns with total budgets must have end date/time specified." + ], + "type": "string" + }, + "campaignExperimentError": { + "description": "The reasons for the campaign experiment error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DUPLICATE_NAME", + "INVALID_TRANSITION", + "CANNOT_CREATE_EXPERIMENT_WITH_SHARED_BUDGET", + "CANNOT_CREATE_EXPERIMENT_FOR_REMOVED_BASE_CAMPAIGN", + "CANNOT_CREATE_EXPERIMENT_FOR_NON_PROPOSED_DRAFT", + "CUSTOMER_CANNOT_CREATE_EXPERIMENT", + "CAMPAIGN_CANNOT_CREATE_EXPERIMENT", + "EXPERIMENT_DURATIONS_MUST_NOT_OVERLAP", + "EXPERIMENT_DURATION_MUST_BE_WITHIN_CAMPAIGN_DURATION", + "CANNOT_MUTATE_EXPERIMENT_DUE_TO_STATUS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "An active campaign or experiment with this name already exists.", + "Experiment cannot be updated from the current state to the requested target state. For example, an experiment can only graduate if its status is ENABLED.", + "Cannot create an experiment from a campaign using an explicitly shared budget.", + "Cannot create an experiment for a removed base campaign.", + "Cannot create an experiment from a draft, which has a status other than proposed.", + "This customer is not allowed to create an experiment.", + "This campaign is not allowed to create an experiment.", + "Trying to set an experiment duration which overlaps with another experiment.", + "All non-removed experiments must start and end within their campaign's duration.", + "The experiment cannot be modified because its status is in a terminal state, such as REMOVED." + ], + "type": "string" + }, + "campaignFeedError": { + "description": "The reasons for the campaign feed error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE", + "CANNOT_CREATE_FOR_REMOVED_FEED", + "CANNOT_CREATE_ALREADY_EXISTING_CAMPAIGN_FEED", + "CANNOT_MODIFY_REMOVED_CAMPAIGN_FEED", + "INVALID_PLACEHOLDER_TYPE", + "MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE", + "NO_EXISTING_LOCATION_CUSTOMER_FEED", + "LEGACY_FEED_TYPE_READ_ONLY" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "An active feed already exists for this campaign and placeholder type.", + "The specified feed is removed.", + "The CampaignFeed already exists. UPDATE should be used to modify the existing CampaignFeed.", + "Cannot update removed campaign feed.", + "Invalid placeholder type.", + "Feed mapping for this placeholder type does not exist.", + "Location CampaignFeeds cannot be created unless there is a location CustomerFeed for the specified feed.", + "Feed is read only." + ], + "type": "string" + }, + "campaignGoalConfigError": { + "description": "The reasons for the campaign goal config error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "GOAL_NOT_FOUND", + "CAMPAIGN_NOT_FOUND", + "HIGH_LIFETIME_VALUE_PRESENT_BUT_VALUE_ABSENT", + "HIGH_LIFETIME_VALUE_LESS_THAN_OR_EQUAL_TO_VALUE", + "CUSTOMER_LIFECYCLE_OPTIMIZATION_CAMPAIGN_TYPE_NOT_SUPPORTED", + "CUSTOMER_NOT_ALLOWLISTED_FOR_RETENTION_ONLY" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Goal is either removed or does not exist for this account.", + "Campaign is either removed or does not exist.", + "If high lifetime value is present then value should be present.", + "High lifetime value should be greater than value.", + "When using customer lifecycle optimization goal, campaign type should be supported.", + "Customer must be allowlisted to use retention only goal." + ], + "type": "string" + }, + "campaignLifecycleGoalError": { + "description": "The reasons for the campaign lifecycle goal error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CAMPAIGN_MISSING", + "INVALID_CAMPAIGN", + "CUSTOMER_ACQUISITION_INVALID_OPTIMIZATION_MODE", + "INCOMPATIBLE_BIDDING_STRATEGY", + "MISSING_PURCHASE_GOAL", + "CUSTOMER_ACQUISITION_INVALID_HIGH_LIFETIME_VALUE", + "CUSTOMER_ACQUISITION_UNSUPPORTED_CAMPAIGN_TYPE", + "CUSTOMER_ACQUISITION_INVALID_VALUE", + "CUSTOMER_ACQUISITION_VALUE_MISSING", + "CUSTOMER_ACQUISITION_MISSING_EXISTING_CUSTOMER_DEFINITION", + "CUSTOMER_ACQUISITION_MISSING_HIGH_VALUE_CUSTOMER_DEFINITION" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Campaign is not specified.", + "Cannot find the specified campaign.", + "Optimization mode is unspecified or invalid.", + "The configured lifecycle goal setting is not compatible with the bidding strategy the campaign is using. Specifically, BID_HIGHER_FOR_NEW_CUSTOMER requires conversion-value based bidding strategy type such as MAXIMIZE_CONVERSION_VALUE.", + "Lifecycle goals require the campaign to optimize towards purchase conversion goal.", + "CampaignLifecycleGoal.customer_acquisition_goal_settings.value_settings.high_lifetime_value is invalid or not allowed, such as when the specified value is smaller than 0.01, when the optimization mode is not BID_HIGHER_FOR_NEW_CUSTOMER, or when CampaignLifecycleGoal.customer_acquisition_goal_settings.value_settings.high_lifetime_value is specified smaller than/without CampaignLifecycleGoal.customer_acquisition_goal_settings.value_settings.value.", + "Customer acquisition goal is not supported on this campaign type.", + "CampaignLifecycleGoal.customer_acquisition_goal_settings.value_settings.value is invalid or not allowed, such as when the specified value is smaller than 0.01, or when the optimization mode is not BID_HIGHER_FOR_NEW_CUSTOMER.", + "To use BID_HIGHER_FOR_NEW_CUSTOMER mode, either CampaignLifecycleGoal.customer_acquisition_goal_settings.value_settings.value or CustomerLifecycleGoal.customer_acquisition_goal_value_settings.value must have been specified. If a manager account is managing your account's conversion tracking, then only the CustomerLifecycleGoal of that manager account is used.", + "In order for a campaign to adopt the customer acquisition goal, CustomerLifecycleGoal.lifecycle_goal_customer_definition_settings.existing_user_lists must include active and accessible userlist with more than 1000 members in the Search/Youtube network. If a manager account is managing your account's conversion tracking, then only the CustomerLifecycleGoal of that manager account is used. Also make sure that the manager account shares audience segments with sub-accounts with continuous audience sharing.", + "In order for a campaign to adopt the customer acquisition goal with high lifetime value optimization, CustomerLifecycleGoal.lifecycle_goal_customer_definition_settings.high_lifetime_value_user_lists must include active and accessible userlist with more than 1000 members in the Search/Youtube network. If a manager account is managing your account's conversion tracking, then only the CustomerLifecycleGoal of that manager account is used. Also make sure that the manager account shares audience segments with sub-accounts using continuous audience sharing." + ], + "type": "string" + }, + "campaignSharedSetError": { + "description": "The reasons for the campaign shared set error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "SHARED_SET_ACCESS_DENIED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The shared set belongs to another customer and permission isn't granted." + ], + "type": "string" + }, + "changeEventError": { + "description": "The reasons for the change event error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "START_DATE_TOO_OLD", + "CHANGE_DATE_RANGE_INFINITE", + "CHANGE_DATE_RANGE_NEGATIVE", + "LIMIT_NOT_SPECIFIED", + "INVALID_LIMIT_CLAUSE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The requested start date is too old. It cannot be older than 30 days.", + "The change_event search request must specify a finite range filter on change_date_time.", + "The change event search request has specified invalid date time filters that can never logically produce any valid results (for example, start time after end time).", + "The change_event search request must specify a LIMIT.", + "The LIMIT specified by change_event request should be less than or equal to 10K." + ], + "type": "string" + }, + "changeStatusError": { + "description": "The reasons for the change status error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "START_DATE_TOO_OLD", + "CHANGE_DATE_RANGE_INFINITE", + "CHANGE_DATE_RANGE_NEGATIVE", + "LIMIT_NOT_SPECIFIED", + "INVALID_LIMIT_CLAUSE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The requested start date is too old.", + "The change_status search request must specify a finite range filter on last_change_date_time.", + "The change status search request has specified invalid date time filters that can never logically produce any valid results (for example, start time after end time).", + "The change_status search request must specify a LIMIT.", + "The LIMIT specified by change_status request should be less than or equal to 10K." + ], + "type": "string" + }, + "clickViewError": { + "description": "The reasons for the click view error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "EXPECTED_FILTER_ON_A_SINGLE_DAY", + "DATE_TOO_OLD" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Missing filter on a single day.", + "The requested date is too old." + ], + "type": "string" + }, + "collectionSizeError": { + "description": "The reasons for the collection size error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "TOO_FEW", + "TOO_MANY" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Too few.", + "Too many." + ], + "type": "string" + }, + "contextError": { + "description": "The reasons for the context error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "OPERATION_NOT_PERMITTED_FOR_CONTEXT", + "OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The operation is not allowed for the given context.", + "The operation is not allowed for removed resources." + ], + "type": "string" + }, + "conversionActionError": { + "description": "The reasons for the conversion action error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DUPLICATE_NAME", + "DUPLICATE_APP_ID", + "TWO_CONVERSION_ACTIONS_BIDDING_ON_SAME_APP_DOWNLOAD", + "BIDDING_ON_SAME_APP_DOWNLOAD_AS_GLOBAL_ACTION", + "DATA_DRIVEN_MODEL_WAS_NEVER_GENERATED", + "DATA_DRIVEN_MODEL_EXPIRED", + "DATA_DRIVEN_MODEL_STALE", + "DATA_DRIVEN_MODEL_UNKNOWN", + "CREATION_NOT_SUPPORTED", + "UPDATE_NOT_SUPPORTED", + "CANNOT_SET_RULE_BASED_ATTRIBUTION_MODELS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The specified conversion action name already exists.", + "Another conversion action with the specified app id already exists.", + "Android first open action conflicts with Google play codeless download action tracking the same app.", + "Android first open action conflicts with Google play codeless download action tracking the same app.", + "The attribution model cannot be set to DATA_DRIVEN because a data-driven model has never been generated.", + "The attribution model cannot be set to DATA_DRIVEN because the data-driven model is expired.", + "The attribution model cannot be set to DATA_DRIVEN because the data-driven model is stale.", + "The attribution model cannot be set to DATA_DRIVEN because the data-driven model is unavailable or the conversion action was newly added.", + "Creation of this conversion action type isn't supported by Google Ads API.", + "Update of this conversion action isn't supported by Google Ads API.", + "Rule-based attribution models are deprecated and not allowed to be set by conversion action." + ], + "type": "string" + }, + "conversionAdjustmentUploadError": { + "description": "The reasons for the conversion adjustment upload error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "TOO_RECENT_CONVERSION_ACTION", + "CONVERSION_ALREADY_RETRACTED", + "CONVERSION_NOT_FOUND", + "CONVERSION_EXPIRED", + "ADJUSTMENT_PRECEDES_CONVERSION", + "MORE_RECENT_RESTATEMENT_FOUND", + "TOO_RECENT_CONVERSION", + "CANNOT_RESTATE_CONVERSION_ACTION_THAT_ALWAYS_USES_DEFAULT_CONVERSION_VALUE", + "TOO_MANY_ADJUSTMENTS_IN_REQUEST", + "TOO_MANY_ADJUSTMENTS", + "RESTATEMENT_ALREADY_EXISTS", + "DUPLICATE_ADJUSTMENT_IN_REQUEST", + "CUSTOMER_NOT_ACCEPTED_CUSTOMER_DATA_TERMS", + "CONVERSION_ACTION_NOT_ELIGIBLE_FOR_ENHANCEMENT", + "INVALID_USER_IDENTIFIER", + "UNSUPPORTED_USER_IDENTIFIER", + "GCLID_DATE_TIME_PAIR_AND_ORDER_ID_BOTH_SET", + "CONVERSION_ALREADY_ENHANCED", + "DUPLICATE_ENHANCEMENT_IN_REQUEST", + "CUSTOMER_DATA_POLICY_PROHIBITS_ENHANCEMENT", + "MISSING_ORDER_ID_FOR_WEBPAGE", + "ORDER_ID_CONTAINS_PII", + "INVALID_JOB_ID", + "NO_CONVERSION_ACTION_FOUND", + "INVALID_CONVERSION_ACTION_TYPE" + ], + "enumDescriptions": [ + "Not specified.", + "Used for return value only. Represents value unknown in this version.", + "Can't import events to a conversion action that was just created. Try importing again in 6 hours.", + "The conversion was already retracted. This adjustment was not processed.", + "The conversion for this conversion action and conversion identifier can't be found. Make sure your conversion identifiers are associated with the correct conversion action and try again.", + "Adjustment can't be made to a conversion that occurred more than 54 days ago.", + "Adjustment has an `adjustment_date_time` that occurred before the associated conversion. Make sure your `adjustment_date_time` is correct and try again.", + "More recent adjustment `adjustment_date_time` has already been reported for the associated conversion. Make sure your adjustment `adjustment_date_time` is correct and try again.", + "Adjustment can't be recorded because the conversion occurred too recently. Try adjusting a conversion that occurred at least 24 hours ago.", + "Can't make an adjustment to a conversion that is set up to use the default value. Check your conversion action value setting and try again.", + "Try uploading fewer than 2001 adjustments in a single API request.", + "The conversion has already been adjusted the maximum number of times. Make sure you're only making necessary adjustment to existing conversion.", + "The conversion has prior a restatement with the same `adjustment_date_time`. Make sure your adjustment has the correct and unique `adjustment_date_time` and try again.", + "Imported adjustment has a duplicate conversion adjustment with same `adjustment_date_time`. Make sure your adjustment has the correct `adjustment_date_time` and try again.", + "Make sure you agree to the customer data processing terms in conversion settings and try again.", + "Can't use enhanced conversions with the specified conversion action.", + "Make sure you hash user provided data using SHA-256 and ensure you are normalizing according to the guidelines.", + "Use user provided data such as emails or phone numbers hashed using SHA-256 and try again.", + "Cannot set both gclid_date_time_pair and order_id. Use only 1 type and try again.", + "Conversion already has enhancements with the same Order ID and conversion action. Make sure your data is correctly configured and try again.", + "Multiple enhancements have the same conversion action and Order ID. Make sure your data is correctly configured and try again.", + "Enhanced conversions can't be used for this account because of Google customer data policies. Contact your Google representative.", + "Adjustment for website conversion requires Order ID (ie, transaction ID). Make sure your website tags capture Order IDs and you send the same Order IDs with your adjustment.", + "Can't use adjustment with Order IDs containing personally-identifiable information (PII).", + "The provided job id in the request is not within the allowed range. A job ID must be a positive integer in the range [1, 2^31).", + "The conversion action specified in the adjustment request cannot be found. Make sure it's available in this account.", + "The type of the conversion action specified in the adjustment request isn't supported for uploading adjustments. A conversion adjustment of type `RETRACTION` or `RESTATEMENT` is only permitted for conversion actions of type `SALESFORCE`, `UPLOAD_CLICK` or `WEBPAGE`. A conversion adjustment of type `ENHANCEMENT` is only permitted for conversion actions of type `WEBPAGE`." + ], + "type": "string" + }, + "conversionCustomVariableError": { + "description": "The reasons for the conversion custom variable error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DUPLICATE_NAME", + "DUPLICATE_TAG", + "RESERVED_TAG" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "A conversion custom variable with the specified name already exists.", + "A conversion custom variable with the specified tag already exists.", + "A conversion custom variable with the specified tag is reserved for other uses." + ], + "type": "string" + }, + "conversionGoalCampaignConfigError": { + "description": "The reasons for the conversion goal campaign config error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CANNOT_USE_CAMPAIGN_GOAL_FOR_SEARCH_ADS_360_MANAGED_CAMPAIGN", + "CUSTOM_GOAL_DOES_NOT_BELONG_TO_GOOGLE_ADS_CONVERSION_CUSTOMER", + "CAMPAIGN_CANNOT_USE_UNIFIED_GOALS", + "EMPTY_CONVERSION_GOALS", + "STORE_SALE_STORE_VISIT_CANNOT_BE_BOTH_INCLUDED", + "PERFORMANCE_MAX_CAMPAIGN_CANNOT_USE_CUSTOM_GOAL_WITH_STORE_SALES" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Campaign is managed by Search Ads 360 but uses Unified Goal.", + "The campaign is using a custom goal that does not belong to its Google Ads conversion customer (conversion tracking customer).", + "The campaign is not allowed to use unified goals.", + "The campaign is using campaign override goals but has no goals configured.", + "STORE_SALE and STORE_VISIT conversion types cannot be both included in campaign level goal.", + "Performance Max campaign is not allowed to use custom goal with store sales conversion type." + ], + "type": "string" + }, + "conversionUploadError": { + "description": "The reasons for the conversion upload error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "TOO_MANY_CONVERSIONS_IN_REQUEST", + "UNPARSEABLE_GCLID", + "CONVERSION_PRECEDES_EVENT", + "EXPIRED_EVENT", + "TOO_RECENT_EVENT", + "EVENT_NOT_FOUND", + "UNAUTHORIZED_CUSTOMER", + "TOO_RECENT_CONVERSION_ACTION", + "CONVERSION_TRACKING_NOT_ENABLED_AT_IMPRESSION_TIME", + "EXTERNAL_ATTRIBUTION_DATA_SET_FOR_NON_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION", + "EXTERNAL_ATTRIBUTION_DATA_NOT_SET_FOR_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION", + "ORDER_ID_NOT_PERMITTED_FOR_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION", + "ORDER_ID_ALREADY_IN_USE", + "DUPLICATE_ORDER_ID", + "TOO_RECENT_CALL", + "EXPIRED_CALL", + "CALL_NOT_FOUND", + "CONVERSION_PRECEDES_CALL", + "CONVERSION_TRACKING_NOT_ENABLED_AT_CALL_TIME", + "UNPARSEABLE_CALLERS_PHONE_NUMBER", + "CLICK_CONVERSION_ALREADY_EXISTS", + "CALL_CONVERSION_ALREADY_EXISTS", + "DUPLICATE_CLICK_CONVERSION_IN_REQUEST", + "DUPLICATE_CALL_CONVERSION_IN_REQUEST", + "CUSTOM_VARIABLE_NOT_ENABLED", + "CUSTOM_VARIABLE_VALUE_CONTAINS_PII", + "INVALID_CUSTOMER_FOR_CLICK", + "INVALID_CUSTOMER_FOR_CALL", + "CONVERSION_NOT_COMPLIANT_WITH_ATT_POLICY", + "CLICK_NOT_FOUND", + "INVALID_USER_IDENTIFIER", + "EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION_NOT_PERMITTED_WITH_USER_IDENTIFIER", + "UNSUPPORTED_USER_IDENTIFIER", + "GBRAID_WBRAID_BOTH_SET", + "UNPARSEABLE_WBRAID", + "UNPARSEABLE_GBRAID", + "ONE_PER_CLICK_CONVERSION_ACTION_NOT_PERMITTED_WITH_BRAID", + "CUSTOMER_DATA_POLICY_PROHIBITS_ENHANCED_CONVERSIONS", + "CUSTOMER_NOT_ACCEPTED_CUSTOMER_DATA_TERMS", + "ORDER_ID_CONTAINS_PII", + "CUSTOMER_NOT_ENABLED_ENHANCED_CONVERSIONS_FOR_LEADS", + "INVALID_JOB_ID", + "NO_CONVERSION_ACTION_FOUND", + "INVALID_CONVERSION_ACTION_TYPE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "Used for return value only. Represents value unknown in this version.", + "Upload fewer than 2001 events in a single request.", + "The imported gclid could not be decoded.", + "The imported event has a `conversion_date_time` that precedes the click. Make sure your `conversion_date_time` is correct and try again.", + "The imported event can't be recorded because its click occurred before this conversion's click-through window. Make sure you import the most recent data.", + "The click associated with the given identifier or iOS URL parameter occurred less than 6 hours ago. Retry after 6 hours have passed.", + "The imported event could not be attributed to a click. This may be because the event did not come from a Google Ads campaign.", + "The click ID or call is associated with an Ads account you don't have access to. Make sure you import conversions for accounts managed by your manager account.", + "Can't import events to a conversion action that was just created. Try importing again in 6 hours.", + "At the time of the click, conversion tracking was not enabled in the effective conversion account of the click's Google Ads account.", + "The imported event includes external attribution data, but the conversion action isn't set up to use an external attribution model. Make sure the conversion action is correctly configured and try again.", + "The conversion action is set up to use an external attribution model, but the imported event is missing data. Make sure imported events include the external attribution credit and all necessary fields.", + "Order IDs can't be used for a conversion measured with an external attribution model. Make sure the conversion is correctly configured and imported events include only necessary data and try again.", + "The imported event includes an order ID that was previously recorded, so the event was not processed.", + "Imported events include multiple conversions with the same order ID and were not processed. Make sure order IDs are unique and try again.", + "Can't import calls that occurred less than 6 hours ago. Try uploading again in 6 hours.", + "The call can't be recorded because it occurred before this conversion action's lookback window. Make sure your import is configured to get the most recent data.", + "The call or click leading to the imported event can't be found. Make sure your data source is set up to include correct identifiers.", + "The call has a `conversion_date_time` that precedes the associated click. Make sure your `conversion_date_time` is correct.", + "At the time of the imported call, conversion tracking was not enabled in the effective conversion account of the click's Google Ads account.", + "Make sure phone numbers are formatted as E.164 (+16502531234), International (+64 3-331 6005), or US national number (6502531234).", + "The imported event has the same click and `conversion_date_time` as an existing conversion. Use a unique `conversion_date_time` or order ID for each unique event and try again.", + "The imported call has the same `conversion_date_time` as an existing conversion. Make sure your `conversion_date_time` correctly configured and try again.", + "Multiple events have the same click and `conversion_date_time`. Make sure your `conversion_date_time` is correctly configured and try again.", + "Multiple events have the same call and `conversion_date_time`. Make sure your `conversion_date_time` is correctly configured and try again.", + "Enable the custom variable in your conversion settings and try again.", + "Can't import events with custom variables containing personally-identifiable information (PII). Remove these variables and try again.", + "The click from the imported event is associated with a different Google Ads account. Make sure you're importing to the correct account.", + "The click from the call is associated with a different Google Ads account. Make sure you're importing to the correct account. Query conversion_tracking_setting.google_ads_conversion_customer on Customer to identify the correct account.", + "The connversion can't be imported because the conversion source didn't comply with Apple App Transparency Tracking (ATT) policies or because the customer didn't consent to tracking.", + "The email address or phone number for this event can't be matched to a click. This may be because it didn't come from a Google Ads campaign, and you can safely ignore this warning. If this includes more imported events than is expected, you may need to check your setup.", + "Make sure you hash user provided data using SHA-256 and ensure you are normalizing according to the guidelines.", + "User provided data can't be used with external attribution models. Use a different attribution model or omit user identifiers and try again.", + "The provided user identifiers are not supported. Use only hashed email or phone number and try again.", + "Can't use both gbraid and wbraid parameters. Use only 1 and try again.", + "Can't parse event import data. Check if your wbraid parameter was not modified and try again.", + "Can't parse event import data. Check if your gbraid parameter was not modified and try again.", + "Conversion actions that use one-per-click counting can't be used with gbraid or wbraid parameters.", + "Enhanced conversions can't be used for this account because of Google customer data policies. Contact your Google representative.", + "Make sure you agree to the customer data processing terms in conversion settings and try again. You can check your setting by querying conversion_tracking_setting.accepted_customer_data_terms on Customer.", + "Can't import events with order IDs containing personally-identifiable information (PII).", + "Make sure you've turned on enhanced conversions for leads in conversion settings and try again. You can check your setting by querying conversion_tracking_setting.enhanced_conversions_for_leads_enabled on Customer.", + "The provided job id in the request is not within the allowed range. A job ID must be a positive integer in the range [1, 2^31).", + "The conversion action specified in the upload request cannot be found. Make sure it's available in this account.", + "The conversion action specified in the upload request isn't set up for uploading conversions." + ], + "type": "string" + }, + "conversionValueRuleError": { + "description": "The reasons for the conversion value rule error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_GEO_TARGET_CONSTANT", + "CONFLICTING_INCLUDED_AND_EXCLUDED_GEO_TARGET", + "CONFLICTING_CONDITIONS", + "CANNOT_REMOVE_IF_INCLUDED_IN_VALUE_RULE_SET", + "CONDITION_NOT_ALLOWED", + "FIELD_MUST_BE_UNSET", + "CANNOT_PAUSE_UNLESS_VALUE_RULE_SET_IS_PAUSED", + "UNTARGETABLE_GEO_TARGET", + "INVALID_AUDIENCE_USER_LIST", + "INACCESSIBLE_USER_LIST", + "INVALID_AUDIENCE_USER_INTEREST", + "CANNOT_ADD_RULE_WITH_STATUS_REMOVED", + "NO_DAY_OF_WEEK_SELECTED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The value rule's geo location condition contains invalid geo target constant(s), for example, there's no matching geo target.", + "The value rule's geo location condition contains conflicting included and excluded geo targets. Specifically, some of the excluded geo target(s) are the same as or contain some of the included geo target(s). For example, the geo location condition includes California but excludes U.S.", + "User specified conflicting conditions for two value rules in the same value rule set.", + "The value rule cannot be removed because it's still included in some value rule set.", + "The value rule contains a condition that's not allowed by the value rule set including this value rule.", + "The value rule contains a field that should be unset.", + "Pausing the value rule requires pausing the value rule set because the value rule is (one of) the last enabled in the value rule set.", + "The value rule's geo location condition contains untargetable geo target constant(s).", + "The value rule's audience condition contains invalid user list(s). In another word, there's no matching user list.", + "The value rule's audience condition contains inaccessible user list(s).", + "The value rule's audience condition contains invalid user_interest(s). This might be because there is no matching user interest, or the user interest is not visible.", + "When a value rule is created, it shouldn't have REMOVED status.", + "The value rule's itinerary condition contains invalid travel start day, it contains no day of week." + ], + "type": "string" + }, + "conversionValueRuleSetError": { + "description": "The reasons for the conversion value rule set error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CONFLICTING_VALUE_RULE_CONDITIONS", + "INVALID_VALUE_RULE", + "DIMENSIONS_UPDATE_ONLY_ALLOW_APPEND", + "CONDITION_TYPE_NOT_ALLOWED", + "DUPLICATE_DIMENSIONS", + "INVALID_CAMPAIGN_ID", + "CANNOT_PAUSE_UNLESS_ALL_VALUE_RULES_ARE_PAUSED", + "SHOULD_PAUSE_WHEN_ALL_VALUE_RULES_ARE_PAUSED", + "VALUE_RULES_NOT_SUPPORTED_FOR_CAMPAIGN_TYPE", + "INELIGIBLE_CONVERSION_ACTION_CATEGORIES", + "DIMENSION_NO_CONDITION_USED_WITH_OTHER_DIMENSIONS", + "DIMENSION_NO_CONDITION_NOT_ALLOWED", + "UNSUPPORTED_CONVERSION_ACTION_CATEGORIES", + "DIMENSION_NOT_SUPPORTED_FOR_CAMPAIGN_TYPE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Two value rules in this value rule set contain conflicting conditions.", + "This value rule set includes a value rule that cannot be found, has been permanently removed or belongs to a different customer.", + "An error that's thrown when a mutate operation is trying to replace/remove some existing elements in the dimensions field. In other words, ADD op is always fine and UPDATE op is fine if it's only appending new elements into dimensions list.", + "An error that's thrown when a mutate is adding new value rule(s) into a value rule set and the added value rule(s) include conditions that are not specified in the dimensions of the value rule set.", + "The dimensions field contains duplicate elements.", + "This value rule set is attached to an invalid campaign id. Either a campaign with this campaign id doesn't exist or it belongs to a different customer.", + "When a mutate request tries to pause a value rule set, the enabled value rules in this set must be paused in the same command, or this error will be thrown.", + "When a mutate request tries to pause all the value rules in a value rule set, the value rule set must be paused, or this error will be thrown.", + "This value rule set is attached to a campaign that does not support value rules. Currently, campaign level value rule sets can only be created on Search, or Display campaigns.", + "To add a value rule set that applies on Store Visits/Store Sales conversion action categories, the customer must have valid Store Visits/ Store Sales conversion actions.", + "If NO_CONDITION is used as a dimension of a value rule set, it must be the only dimension.", + "Dimension NO_CONDITION can only be used by Store Visits/Store Sales value rule set.", + "Value rule sets defined on the specified conversion action categories are not supported. The list of conversion action categories must be an empty list, only STORE_VISIT, or only STORE_SALE.", + "Dimension ITINERARY can only be used on campaigns with an advertising channel type of PERFORMANCE_MAX or HOTEL." + ], + "type": "string" + }, + "countryCodeError": { + "description": "The reasons for the country code error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_COUNTRY_CODE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The country code is invalid." + ], + "type": "string" + }, + "criterionError": { + "description": "The reasons for the criterion error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CONCRETE_TYPE_REQUIRED", + "INVALID_EXCLUDED_CATEGORY", + "INVALID_KEYWORD_TEXT", + "KEYWORD_TEXT_TOO_LONG", + "KEYWORD_HAS_TOO_MANY_WORDS", + "KEYWORD_HAS_INVALID_CHARS", + "INVALID_PLACEMENT_URL", + "INVALID_USER_LIST", + "INVALID_USER_INTEREST", + "INVALID_FORMAT_FOR_PLACEMENT_URL", + "PLACEMENT_URL_IS_TOO_LONG", + "PLACEMENT_URL_HAS_ILLEGAL_CHAR", + "PLACEMENT_URL_HAS_MULTIPLE_SITES_IN_LINE", + "PLACEMENT_IS_NOT_AVAILABLE_FOR_TARGETING_OR_EXCLUSION", + "INVALID_TOPIC_PATH", + "INVALID_YOUTUBE_CHANNEL_ID", + "INVALID_YOUTUBE_VIDEO_ID", + "YOUTUBE_VERTICAL_CHANNEL_DEPRECATED", + "YOUTUBE_DEMOGRAPHIC_CHANNEL_DEPRECATED", + "YOUTUBE_URL_UNSUPPORTED", + "CANNOT_EXCLUDE_CRITERIA_TYPE", + "CANNOT_ADD_CRITERIA_TYPE", + "CANNOT_EXCLUDE_SIMILAR_USER_LIST", + "CANNOT_ADD_CLOSED_USER_LIST", + "CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SEARCH_ONLY_CAMPAIGNS", + "CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SEARCH_CAMPAIGNS", + "CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SHOPPING_CAMPAIGNS", + "CANNOT_ADD_USER_INTERESTS_TO_SEARCH_CAMPAIGNS", + "CANNOT_SET_BIDS_ON_CRITERION_TYPE_IN_SEARCH_CAMPAIGNS", + "CANNOT_ADD_URLS_TO_CRITERION_TYPE_FOR_CAMPAIGN_TYPE", + "INVALID_COMBINED_AUDIENCE", + "INVALID_CUSTOM_AFFINITY", + "INVALID_CUSTOM_INTENT", + "INVALID_CUSTOM_AUDIENCE", + "INVALID_IP_ADDRESS", + "INVALID_IP_FORMAT", + "INVALID_MOBILE_APP", + "INVALID_MOBILE_APP_CATEGORY", + "INVALID_CRITERION_ID", + "CANNOT_TARGET_CRITERION", + "CANNOT_TARGET_OBSOLETE_CRITERION", + "CRITERION_ID_AND_TYPE_MISMATCH", + "INVALID_PROXIMITY_RADIUS", + "INVALID_PROXIMITY_RADIUS_UNITS", + "INVALID_STREETADDRESS_LENGTH", + "INVALID_CITYNAME_LENGTH", + "INVALID_REGIONCODE_LENGTH", + "INVALID_REGIONNAME_LENGTH", + "INVALID_POSTALCODE_LENGTH", + "INVALID_COUNTRY_CODE", + "INVALID_LATITUDE", + "INVALID_LONGITUDE", + "PROXIMITY_GEOPOINT_AND_ADDRESS_BOTH_CANNOT_BE_NULL", + "INVALID_PROXIMITY_ADDRESS", + "INVALID_USER_DOMAIN_NAME", + "CRITERION_PARAMETER_TOO_LONG", + "AD_SCHEDULE_TIME_INTERVALS_OVERLAP", + "AD_SCHEDULE_INTERVAL_CANNOT_SPAN_MULTIPLE_DAYS", + "AD_SCHEDULE_INVALID_TIME_INTERVAL", + "AD_SCHEDULE_EXCEEDED_INTERVALS_PER_DAY_LIMIT", + "AD_SCHEDULE_CRITERION_ID_MISMATCHING_FIELDS", + "CANNOT_BID_MODIFY_CRITERION_TYPE", + "CANNOT_BID_MODIFY_CRITERION_CAMPAIGN_OPTED_OUT", + "CANNOT_BID_MODIFY_NEGATIVE_CRITERION", + "BID_MODIFIER_ALREADY_EXISTS", + "FEED_ID_NOT_ALLOWED", + "ACCOUNT_INELIGIBLE_FOR_CRITERIA_TYPE", + "CRITERIA_TYPE_INVALID_FOR_BIDDING_STRATEGY", + "CANNOT_EXCLUDE_CRITERION", + "CANNOT_REMOVE_CRITERION", + "INVALID_PRODUCT_BIDDING_CATEGORY", + "MISSING_SHOPPING_SETTING", + "INVALID_MATCHING_FUNCTION", + "LOCATION_FILTER_NOT_ALLOWED", + "INVALID_FEED_FOR_LOCATION_FILTER", + "LOCATION_FILTER_INVALID", + "CANNOT_SET_GEO_TARGET_CONSTANTS_WITH_FEED_ITEM_SETS", + "CANNOT_SET_BOTH_ASSET_SET_AND_FEED", + "CANNOT_SET_FEED_OR_FEED_ITEM_SETS_FOR_CUSTOMER", + "CANNOT_SET_ASSET_SET_FIELD_FOR_CUSTOMER", + "CANNOT_SET_GEO_TARGET_CONSTANTS_WITH_ASSET_SETS", + "CANNOT_SET_ASSET_SETS_WITH_FEED_ITEM_SETS", + "INVALID_LOCATION_GROUP_ASSET_SET", + "INVALID_LOCATION_GROUP_RADIUS", + "INVALID_LOCATION_GROUP_RADIUS_UNIT", + "CANNOT_ATTACH_CRITERIA_AT_CAMPAIGN_AND_ADGROUP", + "HOTEL_LENGTH_OF_STAY_OVERLAPS_WITH_EXISTING_CRITERION", + "HOTEL_ADVANCE_BOOKING_WINDOW_OVERLAPS_WITH_EXISTING_CRITERION", + "FIELD_INCOMPATIBLE_WITH_NEGATIVE_TARGETING", + "INVALID_WEBPAGE_CONDITION", + "INVALID_WEBPAGE_CONDITION_URL", + "WEBPAGE_CONDITION_URL_CANNOT_BE_EMPTY", + "WEBPAGE_CONDITION_URL_UNSUPPORTED_PROTOCOL", + "WEBPAGE_CONDITION_URL_CANNOT_BE_IP_ADDRESS", + "WEBPAGE_CONDITION_URL_DOMAIN_NOT_CONSISTENT_WITH_CAMPAIGN_SETTING", + "WEBPAGE_CONDITION_URL_CANNOT_BE_PUBLIC_SUFFIX", + "WEBPAGE_CONDITION_URL_INVALID_PUBLIC_SUFFIX", + "WEBPAGE_CONDITION_URL_VALUE_TRACK_VALUE_NOT_SUPPORTED", + "WEBPAGE_CRITERION_URL_EQUALS_CAN_HAVE_ONLY_ONE_CONDITION", + "WEBPAGE_CRITERION_NOT_SUPPORTED_ON_NON_DSA_AD_GROUP", + "CANNOT_TARGET_USER_LIST_FOR_SMART_DISPLAY_CAMPAIGNS", + "CANNOT_TARGET_PLACEMENTS_FOR_SEARCH_CAMPAIGNS", + "LISTING_SCOPE_TOO_MANY_DIMENSION_TYPES", + "LISTING_SCOPE_TOO_MANY_IN_OPERATORS", + "LISTING_SCOPE_IN_OPERATOR_NOT_SUPPORTED", + "DUPLICATE_LISTING_DIMENSION_TYPE", + "DUPLICATE_LISTING_DIMENSION_VALUE", + "CANNOT_SET_BIDS_ON_LISTING_GROUP_SUBDIVISION", + "LISTING_GROUP_ERROR_IN_ANOTHER_OPERATION", + "INVALID_LISTING_GROUP_HIERARCHY", + "LISTING_GROUP_TREE_WAS_INVALID_BEFORE_MUTATION", + "LISTING_GROUP_UNIT_CANNOT_HAVE_CHILDREN", + "LISTING_GROUP_SUBDIVISION_REQUIRES_OTHERS_CASE", + "LISTING_GROUP_REQUIRES_SAME_DIMENSION_TYPE_AS_SIBLINGS", + "LISTING_GROUP_ALREADY_EXISTS", + "LISTING_GROUP_DOES_NOT_EXIST", + "LISTING_GROUP_CANNOT_BE_REMOVED", + "INVALID_LISTING_GROUP_TYPE", + "LISTING_GROUP_ADD_MAY_ONLY_USE_TEMP_ID", + "LISTING_SCOPE_TOO_LONG", + "LISTING_SCOPE_TOO_MANY_DIMENSIONS", + "LISTING_GROUP_TOO_LONG", + "LISTING_GROUP_TREE_TOO_DEEP", + "INVALID_LISTING_DIMENSION", + "INVALID_LISTING_DIMENSION_TYPE", + "ADVERTISER_NOT_ON_ALLOWLIST_FOR_COMBINED_AUDIENCE_ON_DISPLAY", + "CANNOT_TARGET_REMOVED_COMBINED_AUDIENCE", + "INVALID_COMBINED_AUDIENCE_ID", + "CANNOT_TARGET_REMOVED_CUSTOM_AUDIENCE", + "HOTEL_CHECK_IN_DATE_RANGE_OVERLAPS_WITH_EXISTING_CRITERION", + "HOTEL_CHECK_IN_DATE_RANGE_START_DATE_TOO_EARLY", + "HOTEL_CHECK_IN_DATE_RANGE_END_DATE_TOO_LATE", + "HOTEL_CHECK_IN_DATE_RANGE_REVERSED", + "BROAD_MATCH_MODIFIER_KEYWORD_NOT_ALLOWED", + "ONE_AUDIENCE_ALLOWED_PER_ASSET_GROUP", + "AUDIENCE_NOT_ELIGIBLE_FOR_CAMPAIGN_TYPE", + "AUDIENCE_NOT_ALLOWED_TO_ATTACH_WHEN_AUDIENCE_GROUPED_SET_TO_FALSE", + "CANNOT_TARGET_CUSTOMER_MATCH_USER_LIST", + "NEGATIVE_KEYWORD_SHARED_SET_DOES_NOT_EXIST", + "CANNOT_ADD_REMOVED_NEGATIVE_KEYWORD_SHARED_SET", + "CANNOT_HAVE_MULTIPLE_NEGATIVE_KEYWORD_LIST_PER_ACCOUNT", + "CUSTOMER_CANNOT_ADD_CRITERION_OF_THIS_TYPE", + "CANNOT_TARGET_SIMILAR_USER_LIST", + "CANNOT_ADD_AUDIENCE_SEGMENT_CRITERION_WHEN_AUDIENCE_GROUPED_IS_SET", + "ONE_AUDIENCE_ALLOWED_PER_AD_GROUP", + "INVALID_DETAILED_DEMOGRAPHIC", + "CANNOT_RECOGNIZE_BRAND", + "BRAND_SHARED_SET_DOES_NOT_EXIST", + "CANNOT_ADD_REMOVED_BRAND_SHARED_SET", + "ONLY_EXCLUSION_BRAND_LIST_ALLOWED_FOR_CAMPAIGN_TYPE", + "LOCATION_TARGETING_NOT_ELIGIBLE_FOR_RESTRICTED_CAMPAIGN", + "ONLY_INCLUSION_BRAND_LIST_ALLOWED_FOR_AD_GROUPS", + "CANNOT_ADD_REMOVED_PLACEMENT_LIST_SHARED_SET", + "PLACEMENT_LIST_SHARED_SET_DOES_NOT_EXIST", + "AI_MAX_MUST_BE_ENABLED", + "NOT_AVAILABLE_FOR_AI_MAX_CAMPAIGNS", + "MISSING_EU_POLITICAL_ADVERTISING_SELF_DECLARATION", + "INVALID_CAMPAIGN_TYPE_FOR_THIRD_PARTY_PARTNER_DATA_LIST", + "CANNOT_ADD_USER_LIST_PENDING_PRIVACY_REVIEW", + "VERTICAL_ADS_ITEM_GROUP_RULE_LIST_DOES_NOT_EXIST", + "CANNOT_ADD_REMOVED_VERTICAL_ADS_ITEM_GROUP_RULE_LIST_SHARED_SET", + "VERTICAL_ADS_ITEM_GROUP_RULE_LIST_NOT_SUPPORTED_FOR_CAMPAIGNS_WITHOUT_ENABLED_TRAVEL_FEED", + "VERTICAL_ADS_ITEM_GROUP_RULE_LIST_NOT_SUPPORTED_FOR_CAMPAIGNS_WITHOUT_AI_MAX", + "VERTICAL_ADS_ITEM_GROUP_RULE_NOT_SUPPORTED_FOR_THE_VERTICAL_TYPE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Concrete type of criterion is required for CREATE and UPDATE operations.", + "The category requested for exclusion is invalid.", + "Invalid keyword criteria text.", + "Keyword text should be less than 80 chars.", + "Keyword text has too many words.", + "Keyword text has invalid characters or symbols.", + "Invalid placement URL.", + "Invalid user list criterion.", + "Invalid user interest criterion.", + "Placement URL has wrong format.", + "Placement URL is too long.", + "Indicates the URL contains an illegal character.", + "Indicates the URL contains multiple comma separated URLs.", + "Indicates the domain is blocked.", + "Invalid topic path.", + "The YouTube Channel Id is invalid.", + "The YouTube Video Id is invalid.", + "Indicates the placement is a YouTube vertical channel, which is no longer supported.", + "Indicates the placement is a YouTube demographic channel, which is no longer supported.", + "YouTube urls are not supported in Placement criterion. Use YouTubeChannel and YouTubeVideo criterion instead.", + "Criteria type can not be excluded by the customer, like AOL account type cannot target site type criteria.", + "Criteria type can not be targeted.", + "Not allowed to exclude similar user list.", + "Not allowed to target a closed user list.", + "Not allowed to add display only UserLists to search only campaigns.", + "Not allowed to add display only UserLists to search plus campaigns.", + "Not allowed to add display only UserLists to shopping campaigns.", + "Not allowed to add User interests to search only campaigns.", + "Not allowed to set bids for this criterion type in search campaigns", + "Final URLs, URL Templates and CustomParameters cannot be set for the criterion types of Gender, AgeRange, UserList, Placement, MobileApp, and MobileAppCategory in search campaigns and shopping campaigns.", + "Invalid combined audience criterion.", + "Invalid custom affinity criterion.", + "Invalid custom intent criterion.", + "Invalid custom audience criterion.", + "IP address is not valid.", + "IP format is not valid.", + "Mobile application is not valid.", + "Mobile application category is not valid.", + "The CriterionId does not exist or is of the incorrect type.", + "The Criterion is not allowed to be targeted.", + "The criterion is not allowed to be targeted as it is deprecated.", + "The CriterionId is not valid for the type.", + "Distance for the radius for the proximity criterion is invalid.", + "Units for the distance for the radius for the proximity criterion is invalid.", + "Street address in the address is not valid.", + "City name in the address is not valid.", + "Region code in the address is not valid.", + "Region name in the address is not valid.", + "Postal code in the address is not valid.", + "Country code in the address is not valid.", + "Latitude for the GeoPoint is not valid.", + "Longitude for the GeoPoint is not valid.", + "The Proximity input is not valid. Both address and geoPoint cannot be null.", + "The Proximity address cannot be geocoded to a valid lat/long.", + "User domain name is not valid.", + "Length of serialized criterion parameter exceeded size limit.", + "Time interval in the AdSchedule overlaps with another AdSchedule.", + "AdSchedule time interval cannot span multiple days.", + "AdSchedule time interval specified is invalid, endTime cannot be earlier than startTime.", + "The number of AdSchedule entries in a day exceeds the limit.", + "CriteriaId does not match the interval of the AdSchedule specified.", + "Cannot set bid modifier for this criterion type.", + "Cannot bid modify criterion, since it is opted out of the campaign.", + "Cannot set bid modifier for a negative criterion.", + "Bid Modifier already exists. Use SET operation to update.", + "Feed Id is not allowed in these Location Groups.", + "The account may not use the requested criteria type. For example, some accounts are restricted to keywords only.", + "The requested criteria type cannot be used with campaign or ad group bidding strategy.", + "The Criterion is not allowed to be excluded.", + "The criterion is not allowed to be removed. For example, we cannot remove any of the device criterion.", + "Bidding categories do not form a valid path in the Shopping bidding category taxonomy.", + "ShoppingSetting must be added to the campaign before ProductScope criteria can be added.", + "Matching function is invalid.", + "Filter parameters not allowed for location groups targeting.", + "Feed not found, or the feed is not an enabled location feed.", + "Given location filter parameter is invalid for location groups targeting.", + "Cannot set geo target constants and feed item sets at the same time.", + "Cannot set both assetset and feed at the same time.", + "Cannot set feed or feed item sets for Customer.", + "Cannot set AssetSet criteria for customer.", + "Cannot set geo target constants and asset sets at the same time.", + "Cannot set asset sets and feed item sets at the same time.", + "The location group asset set id is invalid", + "The location group radius is in the range but not at the valid increment.", + "The location group radius unit is invalid.", + "Criteria type cannot be associated with a campaign and its ad group(s) simultaneously.", + "Range represented by hotel length of stay's min nights and max nights overlaps with an existing criterion.", + "Range represented by hotel advance booking window's min days and max days overlaps with an existing criterion.", + "The field is not allowed to be set when the negative field is set to true, for example, we don't allow bids in negative ad group or campaign criteria.", + "The combination of operand and operator in webpage condition is invalid.", + "The URL of webpage condition is invalid.", + "The URL of webpage condition cannot be empty or contain white space.", + "The URL of webpage condition contains an unsupported protocol.", + "The URL of webpage condition cannot be an IP address.", + "The domain of the URL is not consistent with the domain in campaign setting.", + "The URL of webpage condition cannot be a public suffix itself.", + "The URL of webpage condition has an invalid public suffix.", + "Value track parameter is not supported in webpage condition URL.", + "Only one URL-EQUALS webpage condition is allowed in a webpage criterion and it cannot be combined with other conditions.", + "A webpage criterion cannot be added to a non-DSA ad group.", + "Cannot add positive user list criteria in Smart Display campaigns.", + "Cannot add positive placement criterion types in search campaigns.", + "Listing scope contains too many dimension types.", + "Listing scope has too many IN operators.", + "Listing scope contains IN operator on an unsupported dimension type.", + "There are dimensions with duplicate dimension type.", + "There are dimensions with duplicate dimension value.", + "Listing group SUBDIVISION nodes cannot have bids.", + "Product group operation is invalid because another operation targeting the same AdGroupId is failing.", + "Ad group is invalid due to the listing groups it contains.", + "Tree was invalid before the mutation.", + "Listing group unit cannot have children.", + "Subdivided listing groups must have an \"others\" case.", + "Dimension type of listing group must be the same as that of its siblings.", + "Listing group cannot be added to the ad group because it already exists.", + "Listing group referenced in the operation was not found in the ad group.", + "Recursive removal failed because listing group subdivision is being created or modified in this request.", + "Listing group type is not allowed for specified ad group criterion type.", + "Listing group in an ADD operation specifies a non temporary criterion id.", + "The combined length of dimension values of the Listing scope criterion is too long.", + "Listing scope contains too many dimensions.", + "The combined length of dimension values of the Listing group criterion is too long.", + "Listing group tree is too deep.", + "Listing dimension is invalid (for example, dimension contains illegal value, dimension type is represented with wrong class, etc). Listing dimension value can not contain \"==\" or \"&+\".", + "Listing dimension type is either invalid for campaigns of this type or cannot be used in the current context. BIDDING_CATEGORY_Lx and PRODUCT_TYPE_Lx dimensions must be used in ascending order of their levels: L1, L2, L3, L4, L5... The levels must be specified sequentially and start from L1. Furthermore, an \"others\" Listing group cannot be subdivided with a dimension of the same type but of a higher level (\"others\" BIDDING_CATEGORY_L3 can be subdivided with BRAND but not with BIDDING_CATEGORY_L4).", + "Customer is not on allowlist for composite audience in display campaigns.", + "Cannot target on a removed combined audience.", + "Combined audience ID is invalid.", + "Can not target removed combined audience.", + "Range represented by hotel check-in date's start date and end date overlaps with an existing criterion.", + "Start date is earlier than earliest allowed value of yesterday UTC.", + "End date later is than latest allowed day of 330 days in the future UTC.", + "Start date is after end date.", + "Broad match modifier (BMM) keywords can no longer be created. See https://ads-developers.googleblog.com/2021/06/broad-match-modifier-upcoming-changes.html.", + "Only one audience is allowed in an asset group.", + "Audience is not supported for the specified campaign type.", + "Audience is not allowed to attach when use_audience_grouped bit is set to false.", + "Targeting is not allowed for Customer Match lists as per Customer Match policy. See https://support.google.com/google-ads/answer/6299717.", + "Cannot create a negative keyword list criterion with a shared set that does not exist.", + "Cannot create a negative keyword list with deleted shared set.", + "Can only have one Negative Keyword List per account.", + "Only allowlisted customers can add criteria of this type.", + "Targeting for Similar audiences is not supported, since this feature has been deprecated. See https://support.google.com/google-ads/answer/12463119 to learn more.", + "Audience segment criteria cannot be added when use_audience_grouped bit is set.", + "Only one audience is allowed in an ad group.", + "Invalid detailed demographics criterion.", + "The brand criteria has a brand input that is not recognized as a valid brand.", + "The brand_list.shared_set_id references a shared set that does not exist.", + "Cannot create a brand list with deleted shared set.", + "Brand list can only be negatively targeted for the campaign type.", + "Cannot positively target locations outside of restricted area for campaign.", + "Ad group level brand list criteria only support inclusionary targeting. Negative targeting at this level is not supported.", + "Cannot create a placement list with deleted shared set.", + "The placement_list.shared_set_id references a shared set that does not exist.", + "This feature is only available for AI Max campaigns.", + "This feature is not available for AI Max campaigns.", + "The operation failed because the campaign is missing the self-declaration on political advertising status in the EU.", + "Targeting this UserList is not allowed for this campaign type.", + "The user list cannot be used while it is pending privacy review.", + "The referenced Vertical Ads item group rule list shared set does not exist.", + "Cannot add Vertical Ads Item Group Rule List with deleted shared set.", + "Vertical Ads Item Group Rule List is not supported for campaigns that do not have an active travel feed.", + "Vertical Ads Item Group Rule List is not supported for campaigns that do not have AI max enabled.", + "The dimension of the Vertical Ads Item Group Rule criterion is not supported for the shared set vertical type." + ], + "type": "string" + }, + "currencyCodeError": { + "description": "The reasons for the currency code error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "UNSUPPORTED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The currency code is not supported." + ], + "type": "string" + }, + "currencyError": { + "description": "The reasons for the currency errors.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "VALUE_NOT_MULTIPLE_OF_BILLABLE_UNIT" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Bid must be a multiple of billable unit." + ], + "type": "string" + }, + "customAudienceError": { + "description": "The reasons for the custom audience error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "NAME_ALREADY_USED", + "CANNOT_REMOVE_WHILE_IN_USE", + "RESOURCE_ALREADY_REMOVED", + "MEMBER_TYPE_AND_PARAMETER_ALREADY_EXISTED", + "INVALID_MEMBER_TYPE", + "MEMBER_TYPE_AND_VALUE_DOES_NOT_MATCH", + "POLICY_VIOLATION", + "INVALID_TYPE_CHANGE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "New name in the custom audience is duplicated ignoring cases.", + "Cannot remove a custom audience while it's still being used as targeting.", + "Cannot update or remove a custom audience that is already removed.", + "The pair of [type, value] already exists in members.", + "Member type is invalid.", + "Member type does not have associated value.", + "Custom audience contains a member that violates policy.", + "Change in custom audience type is not allowed." + ], + "type": "string" + }, + "customColumnError": { + "description": "The reasons for the custom column error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CUSTOM_COLUMN_NOT_FOUND", + "CUSTOM_COLUMN_NOT_AVAILABLE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The custom column has not been found.", + "The custom column is not available." + ], + "type": "string" + }, + "customConversionGoalError": { + "description": "The reasons for the custom conversion goal error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_CONVERSION_ACTION", + "CONVERSION_ACTION_NOT_ENABLED", + "CANNOT_REMOVE_LINKED_CUSTOM_CONVERSION_GOAL", + "CUSTOM_GOAL_DUPLICATE_NAME", + "DUPLICATE_CONVERSION_ACTION_LIST", + "NON_BIDDABLE_CONVERSION_ACTION_NOT_ELIGIBLE_FOR_CUSTOM_GOAL" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Cannot find a conversion action with the specified id.", + "The conversion action is not enabled so it cannot be included in a custom conversion goal.", + "The custom conversion goal cannot be removed because it's linked to a campaign.", + "Custom goal with the same name already exists.", + "Custom goal with the same conversion action list already exists.", + "Conversion types that cannot be biddable should not be included in custom goal." + ], + "type": "string" + }, + "customInterestError": { + "description": "The reasons for the custom interest error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "NAME_ALREADY_USED", + "CUSTOM_INTEREST_MEMBER_ID_AND_TYPE_PARAMETER_NOT_PRESENT_IN_REMOVE", + "TYPE_AND_PARAMETER_NOT_FOUND", + "TYPE_AND_PARAMETER_ALREADY_EXISTED", + "INVALID_CUSTOM_INTEREST_MEMBER_TYPE", + "CANNOT_REMOVE_WHILE_IN_USE", + "CANNOT_CHANGE_TYPE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Duplicate custom interest name ignoring case.", + "In the remove custom interest member operation, both member ID and pair [type, parameter] are not present.", + "The pair of [type, parameter] does not exist.", + "The pair of [type, parameter] already exists.", + "Unsupported custom interest member type.", + "Cannot remove a custom interest while it's still being targeted.", + "Cannot mutate custom interest type." + ], + "type": "string" + }, + "customerClientLinkError": { + "description": "The reasons for the customer client link error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CLIENT_ALREADY_INVITED_BY_THIS_MANAGER", + "CLIENT_ALREADY_MANAGED_IN_HIERARCHY", + "CYCLIC_LINK_NOT_ALLOWED", + "CUSTOMER_HAS_TOO_MANY_ACCOUNTS", + "CLIENT_HAS_TOO_MANY_INVITATIONS", + "CANNOT_HIDE_OR_UNHIDE_MANAGER_ACCOUNTS", + "CUSTOMER_HAS_TOO_MANY_ACCOUNTS_AT_MANAGER", + "CLIENT_HAS_TOO_MANY_MANAGERS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Trying to manage a client that already in being managed by customer.", + "Already managed by some other manager in the hierarchy.", + "Attempt to create a cycle in the hierarchy.", + "Managed accounts has the maximum number of linked accounts.", + "Invitor has the maximum pending invitations.", + "Attempt to change hidden status of a link that is not active.", + "Parent manager account has the maximum number of linked accounts.", + "Client has too many managers." + ], + "type": "string" + }, + "customerCustomizerError": { + "description": "The reasons for the customer customizer error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version." + ], + "type": "string" + }, + "customerError": { + "description": "The reasons for the customer error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "STATUS_CHANGE_DISALLOWED", + "ACCOUNT_NOT_SET_UP", + "CREATION_DENIED_FOR_POLICY_VIOLATION", + "CREATION_DENIED_INELIGIBLE_MCC" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Customer status is not allowed to be changed from DRAFT and CLOSED. Currency code and at least one of country code and time zone needs to be set when status is changed to ENABLED.", + "CustomerService cannot get a customer that has not been fully set up.", + "Customer creation is denied for policy violation.", + "Manager account is ineligible to create new accounts." + ], + "type": "string" + }, + "customerFeedError": { + "description": "The reasons for the customer feed error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE", + "CANNOT_CREATE_FOR_REMOVED_FEED", + "CANNOT_CREATE_ALREADY_EXISTING_CUSTOMER_FEED", + "CANNOT_MODIFY_REMOVED_CUSTOMER_FEED", + "INVALID_PLACEHOLDER_TYPE", + "MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE", + "PLACEHOLDER_TYPE_NOT_ALLOWED_ON_CUSTOMER_FEED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "An active feed already exists for this customer and place holder type.", + "The specified feed is removed.", + "The CustomerFeed already exists. Update should be used to modify the existing CustomerFeed.", + "Cannot update removed customer feed.", + "Invalid placeholder type.", + "Feed mapping for this placeholder type does not exist.", + "Placeholder not allowed at the account level." + ], + "type": "string" + }, + "customerLifecycleGoalError": { + "description": "The reasons for the customer lifecycle goal error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CUSTOMER_ACQUISITION_VALUE_MISSING", + "CUSTOMER_ACQUISITION_INVALID_VALUE", + "CUSTOMER_ACQUISITION_INVALID_HIGH_LIFETIME_VALUE", + "CUSTOMER_ACQUISITION_VALUE_CANNOT_BE_CLEARED", + "CUSTOMER_ACQUISITION_HIGH_LIFETIME_VALUE_CANNOT_BE_CLEARED", + "INVALID_EXISTING_USER_LIST", + "INVALID_HIGH_LIFETIME_VALUE_USER_LIST" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "CustomerLifecycleGoal.customer_acquisition_goal_value_settings.value must be set.", + "CustomerLifecycleGoal.customer_acquisition_goal_value_settings.value must be no less than 0.01.", + "CustomerLifecycleGoal.customer_acquisition_goal_value_settings.high_lifetime_value must be no less than 0.01. Also, to set this field, CustomerLifecycleGoal.customer_acquisition_goal_value_settings.value must also be present, and high_lifetime_value must be greater than value.", + "CustomerLifecycleGoal.customer_acquisition_goal_value_settings.value cannot be cleared. This value would have no effect as long as none of your campaigns adopt the customer acquisitiong goal.", + "CustomerLifecycleGoal.customer_acquisition_goal_value_settings.high_lifetime_value cannot be cleared. This value would have no effect as long as none of your campaigns adopt the high value optimization of customer acquisitiong goal.", + "Found invalid value in CustomerLifecycleGoal.lifecycle_goal_customer_definition_settings.existing_user_lists. The userlist must be accessible, active and belong to one of the following types: CRM_BASED, RULE_BASED, REMARKETING.", + "Found invalid value in CustomerLifecycleGoal.lifecycle_goal_customer_definition_settings.high_lifetime_value_user_lists. The userlist must be accessible, active and belong to one of the following types: CRM_BASED, RULE_BASED, REMARKETING." + ], + "type": "string" + }, + "customerManagerLinkError": { + "description": "The reasons for the customer manager link error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "NO_PENDING_INVITE", + "SAME_CLIENT_MORE_THAN_ONCE_PER_CALL", + "MANAGER_HAS_MAX_NUMBER_OF_LINKED_ACCOUNTS", + "CANNOT_UNLINK_ACCOUNT_WITHOUT_ACTIVE_USER", + "CANNOT_REMOVE_LAST_CLIENT_ACCOUNT_OWNER", + "CANNOT_CHANGE_ROLE_BY_NON_ACCOUNT_OWNER", + "CANNOT_CHANGE_ROLE_FOR_NON_ACTIVE_LINK_ACCOUNT", + "DUPLICATE_CHILD_FOUND", + "TEST_ACCOUNT_LINKS_TOO_MANY_CHILD_ACCOUNTS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "No pending invitation.", + "Attempt to operate on the same client more than once in the same call.", + "Manager account has the maximum number of linked accounts.", + "If no active user on account it cannot be unlinked from its manager.", + "Account should have at least one active owner on it before being unlinked.", + "Only account owners may change their permission role.", + "When a client's link to its manager is not active, the link role cannot be changed.", + "Attempt to link a child to a parent that contains or will contain duplicate children.", + "The authorized customer is a test account. It can add no more than the allowed number of accounts" + ], + "type": "string" + }, + "customerSkAdNetworkConversionValueSchemaError": { + "description": "The reasons for the customer SK Ad network conversion value schema error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_LINK_ID", + "INVALID_APP_ID", + "INVALID_SCHEMA", + "LINK_CODE_NOT_FOUND", + "INVALID_EVENT_COUNTER", + "INVALID_EVENT_NAME" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The customer link ID provided is invalid.", + "The app ID provided is invalid.", + "The conversion value schema provided is invalid.", + "The customer link id provided could not be found.", + "The SkAdNetwork event counter provided is invalid.", + "The SkAdNetwork event name provided is invalid." + ], + "type": "string" + }, + "customerUserAccessError": { + "description": "The reasons for the customer user access mutate error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_USER_ID", + "REMOVAL_DISALLOWED", + "DISALLOWED_ACCESS_ROLE", + "LAST_ADMIN_USER_OF_SERVING_CUSTOMER", + "LAST_ADMIN_USER_OF_MANAGER" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "There is no user associated with the user id specified.", + "Unable to remove the access between the user and customer.", + "Unable to add or update the access role as specified.", + "The user can't remove itself from an active serving customer if it's the last admin user and the customer doesn't have any owner manager", + "Last admin user cannot be removed from a manager." + ], + "type": "string" + }, + "customizerAttributeError": { + "description": "The reasons for the customizer attribute error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DUPLICATE_CUSTOMIZER_ATTRIBUTE_NAME" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "CustomizerAttribute name matches that of another active CustomizerAttribute." + ], + "type": "string" + }, + "dataLinkError": { + "description": "The reasons for the data link error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "YOUTUBE_CHANNEL_ID_INVALID", + "YOUTUBE_VIDEO_ID_INVALID", + "YOUTUBE_VIDEO_FROM_DIFFERENT_CHANNEL", + "PERMISSION_DENIED", + "INVALID_STATUS", + "INVALID_UPDATE_STATUS", + "INVALID_RESOURCE_NAME" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The requested YouTube Channel ID is invalid.", + "The requested YouTube Video ID is invalid.", + "The requested YouTube Video ID doesn't belong to the requested YouTube Channel ID.", + "A link cannot be created because the customer doesn't have the permission.", + "A link can not be removed or updated because the status is invalid.", + "The input status in the update request is invalid.", + "The input resource name is invalid." + ], + "type": "string" + }, + "databaseError": { + "description": "The reasons for the database error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CONCURRENT_MODIFICATION", + "DATA_CONSTRAINT_VIOLATION", + "REQUEST_TOO_LARGE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Multiple requests were attempting to modify the same resource at once. Retry the request.", + "The request conflicted with existing data. This error will usually be replaced with a more specific error if the request is retried.", + "The data written is too large. Split the request into smaller requests." + ], + "type": "string" + }, + "dateError": { + "description": "The reasons for the date error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_FIELD_VALUES_IN_DATE", + "INVALID_FIELD_VALUES_IN_DATE_TIME", + "INVALID_STRING_DATE", + "INVALID_STRING_DATE_TIME_MICROS", + "INVALID_STRING_DATE_TIME_SECONDS", + "INVALID_STRING_DATE_TIME_SECONDS_WITH_OFFSET", + "EARLIER_THAN_MINIMUM_DATE", + "LATER_THAN_MAXIMUM_DATE", + "DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE", + "DATE_RANGE_MINIMUM_AND_MAXIMUM_DATES_BOTH_NULL", + "DATE_RANGE_ERROR_START_TIME_MUST_BE_THE_START_OF_A_DAY", + "DATE_RANGE_ERROR_END_TIME_MUST_BE_THE_END_OF_A_DAY" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Given field values do not correspond to a valid date.", + "Given field values do not correspond to a valid date time.", + "The string date's format should be yyyy-mm-dd.", + "The string date time's format should be yyyy-mm-dd hh:mm:ss.ssssss.", + "The string date time's format should be yyyy-mm-dd hh:mm:ss.", + "The string date time's format should be yyyy-mm-dd hh:mm:ss+|-hh:mm.", + "Date is before allowed minimum.", + "Date is after allowed maximum.", + "Date range bounds are not in order.", + "Both dates in range are null.", + "This campaign type doesn't support a start date time that isn't the start of the day.", + "This campaign type doesn't support an end date time that isn't the end of the day." + ], + "type": "string" + }, + "dateRangeError": { + "description": "The reasons for the date range error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_DATE", + "START_DATE_AFTER_END_DATE", + "CANNOT_SET_DATE_TO_PAST", + "AFTER_MAXIMUM_ALLOWABLE_DATE", + "CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Invalid date.", + "The start date was after the end date.", + "Cannot set date to past time", + "A date was used that is past the system \"last\" date.", + "Trying to change start date on a resource that has started." + ], + "type": "string" + }, + "distinctError": { + "description": "The reasons for the distinct error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DUPLICATE_ELEMENT", + "DUPLICATE_TYPE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Duplicate element.", + "Duplicate type." + ], + "type": "string" + }, + "enumError": { + "description": "The reason for enum error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "ENUM_VALUE_NOT_PERMITTED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The enum value is not permitted." + ], + "type": "string" + }, + "experimentArmError": { + "description": "The reasons for the experiment arm error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "EXPERIMENT_ARM_COUNT_LIMIT_EXCEEDED", + "INVALID_CAMPAIGN_STATUS", + "DUPLICATE_EXPERIMENT_ARM_NAME", + "CANNOT_SET_TREATMENT_ARM_CAMPAIGN", + "CANNOT_MODIFY_CAMPAIGN_IDS", + "CANNOT_MODIFY_CAMPAIGN_WITHOUT_SUFFIX_SET", + "CANNOT_MUTATE_TRAFFIC_SPLIT_AFTER_START", + "CANNOT_ADD_CAMPAIGN_WITH_SHARED_BUDGET", + "CANNOT_ADD_CAMPAIGN_WITH_CUSTOM_BUDGET", + "CANNOT_ADD_CAMPAIGNS_WITH_DYNAMIC_ASSETS_ENABLED", + "UNSUPPORTED_CAMPAIGN_ADVERTISING_CHANNEL_SUB_TYPE", + "CANNOT_ADD_BASE_CAMPAIGN_WITH_DATE_RANGE", + "BIDDING_STRATEGY_NOT_SUPPORTED_IN_EXPERIMENTS", + "TRAFFIC_SPLIT_NOT_SUPPORTED_FOR_CHANNEL_TYPE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Number of experiment arms is above limit.", + "Cannot add campaign with invalid status to the experiment arm.", + "Cannot add duplicate experiment arm name in one experiment.", + "Cannot set campaigns of treatment experiment arm.", + "Cannot edit campaign ids in trial arms in non SETUP experiment.", + "Cannot modify the campaigns in the control arm if there is not a suffix set in the trial.", + "Traffic split related settings (like traffic share bounds) can't be modified after the trial has started.", + "Cannot use shared budget on experiment's control campaign.", + "Cannot use custom budget on experiment's control campaigns.", + "Cannot have enable_dynamic_assets turned on in experiment's campaigns.", + "Cannot use campaign's advertising channel sub type in experiment.", + "Experiment date range must be within base campaign's date range.", + "Bidding strategy is not supported in experiments.", + "Traffic split is not supported for some channel types." + ], + "type": "string" + }, + "experimentError": { + "description": "The reasons for the experiment error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CANNOT_SET_START_DATE_IN_PAST", + "END_DATE_BEFORE_START_DATE", + "START_DATE_TOO_FAR_IN_FUTURE", + "DUPLICATE_EXPERIMENT_NAME", + "CANNOT_MODIFY_REMOVED_EXPERIMENT", + "START_DATE_ALREADY_PASSED", + "CANNOT_SET_END_DATE_IN_PAST", + "CANNOT_SET_STATUS_TO_REMOVED", + "CANNOT_MODIFY_PAST_END_DATE", + "INVALID_STATUS", + "INVALID_CAMPAIGN_CHANNEL_TYPE", + "OVERLAPPING_MEMBERS_AND_DATE_RANGE", + "INVALID_TRIAL_ARM_TRAFFIC_SPLIT", + "TRAFFIC_SPLIT_OVERLAPPING", + "SUM_TRIAL_ARM_TRAFFIC_UNEQUALS_TO_TRIAL_TRAFFIC_SPLIT_DENOMINATOR", + "CANNOT_MODIFY_TRAFFIC_SPLIT_AFTER_START", + "EXPERIMENT_NOT_FOUND", + "EXPERIMENT_NOT_YET_STARTED", + "CANNOT_HAVE_MULTIPLE_CONTROL_ARMS", + "IN_DESIGN_CAMPAIGNS_NOT_SET", + "CANNOT_SET_STATUS_TO_GRADUATED", + "CANNOT_CREATE_EXPERIMENT_CAMPAIGN_WITH_SHARED_BUDGET", + "CANNOT_CREATE_EXPERIMENT_CAMPAIGN_WITH_CUSTOM_BUDGET", + "STATUS_TRANSITION_INVALID", + "DUPLICATE_EXPERIMENT_CAMPAIGN_NAME", + "CANNOT_REMOVE_IN_CREATION_EXPERIMENT", + "CANNOT_ADD_CAMPAIGN_WITH_DEPRECATED_AD_TYPES", + "CANNOT_ENABLE_SYNC_FOR_UNSUPPORTED_EXPERIMENT_TYPE", + "INVALID_DURATION_FOR_AN_EXPERIMENT", + "MISSING_EU_POLITICAL_ADVERTISING_SELF_DECLARATION" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The start date of an experiment cannot be set in the past. Use a start date in the future.", + "The end date of an experiment is before its start date. Use an end date after the start date.", + "The start date of an experiment is too far in the future. Use a start date no more than 1 year in the future.", + "The experiment has the same name as an existing active experiment.", + "Experiments can only be modified when they are ENABLED.", + "The start date of an experiment cannot be modified if the existing start date has already passed.", + "The end date of an experiment cannot be set in the past.", + "The status of an experiment cannot be set to REMOVED.", + "The end date of an expired experiment cannot be modified.", + "The status is invalid.", + "Experiment arm contains campaigns with invalid advertising channel type.", + "A pair of trials share members and have overlapping date ranges.", + "Experiment arm contains invalid traffic split.", + "Experiment contains trial arms with overlapping traffic split.", + "The total traffic split of trial arms is not equal to 100.", + "Traffic split related settings (like traffic share bounds) can't be modified after the experiment has started.", + "The experiment could not be found.", + "Experiment has not begun.", + "The experiment cannot have more than one control arm.", + "The experiment doesn't set in-design campaigns.", + "Clients must use the graduate action to graduate experiments and cannot set the status to GRADUATED directly.", + "Cannot use shared budget on base campaign when scheduling an experiment.", + "Cannot use custom budget on base campaign when scheduling an experiment.", + "Invalid status transition.", + "The experiment campaign name conflicts with a pre-existing campaign.", + "Cannot remove in creation experiments.", + "Cannot add campaign with deprecated ad types. Deprecated ad types: ENHANCED_DISPLAY, GALLERY, GMAIL, KEYWORDLESS, TEXT.", + "Sync can only be enabled for supported experiment types. Supported experiment types: SEARCH_CUSTOM, DISPLAY_CUSTOM, DISPLAY_AUTOMATED_BIDDING_STRATEGY, SEARCH_AUTOMATED_BIDDING_STRATEGY.", + "Experiment length cannot be longer than max length.", + "The experiment's campaigns must self-declare whether they contain political advertising that targets the European Union." + ], + "type": "string" + }, + "extensionFeedItemError": { + "description": "The reasons for the extension feed item error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "VALUE_OUT_OF_RANGE", + "URL_LIST_TOO_LONG", + "CANNOT_HAVE_RESTRICTION_ON_EMPTY_GEO_TARGETING", + "CANNOT_SET_WITH_FINAL_URLS", + "CANNOT_SET_WITHOUT_FINAL_URLS", + "INVALID_PHONE_NUMBER", + "PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY", + "CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED", + "PREMIUM_RATE_NUMBER_NOT_ALLOWED", + "DISALLOWED_NUMBER_TYPE", + "INVALID_DOMESTIC_PHONE_NUMBER_FORMAT", + "VANITY_PHONE_NUMBER_NOT_ALLOWED", + "INVALID_CALL_CONVERSION_ACTION", + "CUSTOMER_NOT_ON_ALLOWLIST_FOR_CALLTRACKING", + "CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY", + "CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED", + "INVALID_APP_ID", + "QUOTES_IN_REVIEW_EXTENSION_SNIPPET", + "HYPHENS_IN_REVIEW_EXTENSION_SNIPPET", + "REVIEW_EXTENSION_SOURCE_INELIGIBLE", + "SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT", + "INCONSISTENT_CURRENCY_CODES", + "PRICE_EXTENSION_HAS_DUPLICATED_HEADERS", + "PRICE_ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION", + "PRICE_EXTENSION_HAS_TOO_FEW_ITEMS", + "PRICE_EXTENSION_HAS_TOO_MANY_ITEMS", + "UNSUPPORTED_VALUE", + "UNSUPPORTED_VALUE_IN_SELECTED_LANGUAGE", + "INVALID_DEVICE_PREFERENCE", + "INVALID_SCHEDULE_END", + "DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE", + "INVALID_SNIPPETS_HEADER", + "CANNOT_OPERATE_ON_REMOVED_FEED_ITEM", + "PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY", + "CONFLICTING_CALL_CONVERSION_SETTINGS", + "EXTENSION_TYPE_MISMATCH", + "EXTENSION_SUBTYPE_REQUIRED", + "EXTENSION_TYPE_UNSUPPORTED", + "CANNOT_OPERATE_ON_FEED_WITH_MULTIPLE_MAPPINGS", + "CANNOT_OPERATE_ON_FEED_WITH_KEY_ATTRIBUTES", + "INVALID_PRICE_FORMAT", + "PROMOTION_INVALID_TIME", + "TOO_MANY_DECIMAL_PLACES_SPECIFIED", + "CONCRETE_EXTENSION_TYPE_REQUIRED", + "SCHEDULE_END_NOT_AFTER_START" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Value is not within the accepted range.", + "Url list is too long.", + "Cannot have a geo targeting restriction without having geo targeting.", + "Cannot simultaneously set sitelink field with final urls.", + "Must set field with final urls.", + "Phone number for a call extension is invalid.", + "Phone number for a call extension is not supported for the given country code.", + "A carrier specific number in short format is not allowed for call extensions.", + "Premium rate numbers are not allowed for call extensions.", + "Phone number type for a call extension is not allowed. For example, personal number is not allowed for a call extension in most regions.", + "Phone number for a call extension does not meet domestic format requirements.", + "Vanity phone numbers (for example, those including letters) are not allowed for call extensions.", + "Call conversion action provided for a call extension is invalid.", + "For a call extension, the customer is not on the allow-list for call tracking.", + "Call tracking is not supported for the given country for a call extension.", + "Customer hasn't consented for call recording, which is required for creating/updating call feed items. See https://support.google.com/google-ads/answer/7412639.", + "App id provided for an app extension is invalid.", + "Quotation marks present in the review text for a review extension.", + "Hyphen character present in the review text for a review extension.", + "A denylisted review source name or url was provided for a review extension.", + "Review source name should not be found in the review text.", + "Inconsistent currency codes.", + "Price extension cannot have duplicated headers.", + "Price item cannot have duplicated header and description.", + "Price extension has too few items.", + "Price extension has too many items.", + "The input value is not currently supported.", + "The input value is not currently supported in the selected language of an extension.", + "Unknown or unsupported device preference.", + "Invalid feed item schedule end time (for example, endHour = 24 and endMinute != 0).", + "Date time zone does not match the account's time zone.", + "Invalid structured snippet header.", + "Cannot operate on removed feed item.", + "Phone number not supported when call tracking enabled for country.", + "Cannot set call_conversion_action while call_conversion_tracking_enabled is set to true.", + "The type of the input extension feed item doesn't match the existing extension feed item.", + "The oneof field extension for example, subtype of extension feed item is required.", + "The referenced feed item is not mapped to a supported extension type.", + "Cannot operate on a Feed with more than one active FeedMapping.", + "Cannot operate on a Feed that has key attributes.", + "Input price is not in a valid format.", + "The promotion time is invalid.", + "This field has too many decimal places specified.", + "Concrete sub type of ExtensionFeedItem is required for this operation.", + "Feed item schedule end time must be after start time." + ], + "type": "string" + }, + "extensionSettingError": { + "description": "The reasons for the extension setting error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "EXTENSIONS_REQUIRED", + "FEED_TYPE_EXTENSION_TYPE_MISMATCH", + "INVALID_FEED_TYPE", + "INVALID_FEED_TYPE_FOR_CUSTOMER_EXTENSION_SETTING", + "CANNOT_CHANGE_FEED_ITEM_ON_CREATE", + "CANNOT_UPDATE_NEWLY_CREATED_EXTENSION", + "NO_EXISTING_AD_GROUP_EXTENSION_SETTING_FOR_TYPE", + "NO_EXISTING_CAMPAIGN_EXTENSION_SETTING_FOR_TYPE", + "NO_EXISTING_CUSTOMER_EXTENSION_SETTING_FOR_TYPE", + "AD_GROUP_EXTENSION_SETTING_ALREADY_EXISTS", + "CAMPAIGN_EXTENSION_SETTING_ALREADY_EXISTS", + "CUSTOMER_EXTENSION_SETTING_ALREADY_EXISTS", + "AD_GROUP_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE", + "CAMPAIGN_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE", + "CUSTOMER_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE", + "VALUE_OUT_OF_RANGE", + "CANNOT_SET_FIELD_WITH_FINAL_URLS", + "FINAL_URLS_NOT_SET", + "INVALID_PHONE_NUMBER", + "PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY", + "CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED", + "PREMIUM_RATE_NUMBER_NOT_ALLOWED", + "DISALLOWED_NUMBER_TYPE", + "INVALID_DOMESTIC_PHONE_NUMBER_FORMAT", + "VANITY_PHONE_NUMBER_NOT_ALLOWED", + "INVALID_COUNTRY_CODE", + "INVALID_CALL_CONVERSION_TYPE_ID", + "CUSTOMER_NOT_IN_ALLOWLIST_FOR_CALLTRACKING", + "CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY", + "INVALID_APP_ID", + "QUOTES_IN_REVIEW_EXTENSION_SNIPPET", + "HYPHENS_IN_REVIEW_EXTENSION_SNIPPET", + "REVIEW_EXTENSION_SOURCE_NOT_ELIGIBLE", + "SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT", + "MISSING_FIELD", + "INCONSISTENT_CURRENCY_CODES", + "PRICE_EXTENSION_HAS_DUPLICATED_HEADERS", + "PRICE_ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION", + "PRICE_EXTENSION_HAS_TOO_FEW_ITEMS", + "PRICE_EXTENSION_HAS_TOO_MANY_ITEMS", + "UNSUPPORTED_VALUE", + "INVALID_DEVICE_PREFERENCE", + "INVALID_SCHEDULE_END", + "DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE", + "OVERLAPPING_SCHEDULES_NOT_ALLOWED", + "SCHEDULE_END_NOT_AFTER_START", + "TOO_MANY_SCHEDULES_PER_DAY", + "DUPLICATE_EXTENSION_FEED_ITEM_EDIT", + "INVALID_SNIPPETS_HEADER", + "PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY", + "CAMPAIGN_TARGETING_MISMATCH", + "CANNOT_OPERATE_ON_REMOVED_FEED", + "EXTENSION_TYPE_REQUIRED", + "INCOMPATIBLE_UNDERLYING_MATCHING_FUNCTION", + "START_DATE_AFTER_END_DATE", + "INVALID_PRICE_FORMAT", + "PROMOTION_INVALID_TIME", + "PROMOTION_CANNOT_SET_PERCENT_DISCOUNT_AND_MONEY_DISCOUNT", + "PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT", + "TOO_MANY_DECIMAL_PLACES_SPECIFIED", + "INVALID_LANGUAGE_CODE", + "UNSUPPORTED_LANGUAGE", + "CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED", + "EXTENSION_SETTING_UPDATE_IS_A_NOOP", + "DISALLOWED_TEXT" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "A platform restriction was provided without input extensions or existing extensions.", + "The provided feed type does not correspond to the provided extensions.", + "The provided feed type cannot be used.", + "The provided feed type cannot be used at the customer level.", + "Cannot change a feed item field on a CREATE operation.", + "Cannot update an extension that is not already in this setting.", + "There is no existing AdGroupExtensionSetting for this type.", + "There is no existing CampaignExtensionSetting for this type.", + "There is no existing CustomerExtensionSetting for this type.", + "The AdGroupExtensionSetting already exists. UPDATE should be used to modify the existing AdGroupExtensionSetting.", + "The CampaignExtensionSetting already exists. UPDATE should be used to modify the existing CampaignExtensionSetting.", + "The CustomerExtensionSetting already exists. UPDATE should be used to modify the existing CustomerExtensionSetting.", + "An active ad group feed already exists for this place holder type.", + "An active campaign feed already exists for this place holder type.", + "An active customer feed already exists for this place holder type.", + "Value is not within the accepted range.", + "Cannot simultaneously set specified field with final urls.", + "Must set field with final urls.", + "Phone number for a call extension is invalid.", + "Phone number for a call extension is not supported for the given country code.", + "A carrier specific number in short format is not allowed for call extensions.", + "Premium rate numbers are not allowed for call extensions.", + "Phone number type for a call extension is not allowed.", + "Phone number for a call extension does not meet domestic format requirements.", + "Vanity phone numbers (for example, those including letters) are not allowed for call extensions.", + "Country code provided for a call extension is invalid.", + "Call conversion type id provided for a call extension is invalid.", + "For a call extension, the customer is not on the allow-list for call tracking.", + "Call tracking is not supported for the given country for a call extension.", + "App id provided for an app extension is invalid.", + "Quotation marks present in the review text for a review extension.", + "Hyphen character present in the review text for a review extension.", + "A blocked review source name or url was provided for a review extension.", + "Review source name should not be found in the review text.", + "Field must be set.", + "Inconsistent currency codes.", + "Price extension cannot have duplicated headers.", + "Price item cannot have duplicated header and description.", + "Price extension has too few items", + "Price extension has too many items", + "The input value is not currently supported.", + "Unknown or unsupported device preference.", + "Invalid feed item schedule end time (for example, endHour = 24 and endMinute != 0).", + "Date time zone does not match the account's time zone.", + "Overlapping feed item schedule times (for example, 7-10AM and 8-11AM) are not allowed.", + "Feed item schedule end time must be after start time.", + "There are too many feed item schedules per day.", + "Cannot edit the same extension feed item more than once in the same request.", + "Invalid structured snippet header.", + "Phone number with call tracking enabled is not supported for the specified country.", + "The targeted adgroup must belong to the targeted campaign.", + "The feed used by the ExtensionSetting is removed and cannot be operated on. Remove the ExtensionSetting to allow a new one to be created using an active feed.", + "The ExtensionFeedItem type is required for this operation.", + "The matching function that links the extension feed to the customer, campaign, or ad group is not compatible with the ExtensionSetting services.", + "Start date must be before end date.", + "Input price is not in a valid format.", + "The promotion time is invalid.", + "Cannot set both percent discount and money discount fields.", + "Cannot set both promotion code and orders over amount fields.", + "This field has too many decimal places specified.", + "The language code is not valid.", + "The language is not supported.", + "Customer hasn't consented for call recording, which is required for adding/updating call extensions. See https://support.google.com/google-ads/answer/7412639.", + "The UPDATE operation does not specify any fields other than the resource name in the update mask.", + "The extension contains text which has been prohibited on policy grounds." + ], + "type": "string" + }, + "feedAttributeReferenceError": { + "description": "The reasons for the feed attribute reference error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CANNOT_REFERENCE_REMOVED_FEED", + "INVALID_FEED_NAME", + "INVALID_FEED_ATTRIBUTE_NAME" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "A feed referenced by ID has been removed.", + "There is no enabled feed with the given name.", + "There is no feed attribute in an enabled feed with the given name." + ], + "type": "string" + }, + "feedError": { + "description": "The reasons for the feed error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "ATTRIBUTE_NAMES_NOT_UNIQUE", + "ATTRIBUTES_DO_NOT_MATCH_EXISTING_ATTRIBUTES", + "CANNOT_SPECIFY_USER_ORIGIN_FOR_SYSTEM_FEED", + "CANNOT_SPECIFY_GOOGLE_ORIGIN_FOR_NON_SYSTEM_FEED", + "CANNOT_SPECIFY_FEED_ATTRIBUTES_FOR_SYSTEM_FEED", + "CANNOT_UPDATE_FEED_ATTRIBUTES_WITH_ORIGIN_GOOGLE", + "FEED_REMOVED", + "INVALID_ORIGIN_VALUE", + "FEED_ORIGIN_IS_NOT_USER", + "INVALID_AUTH_TOKEN_FOR_EMAIL", + "INVALID_EMAIL", + "DUPLICATE_FEED_NAME", + "INVALID_FEED_NAME", + "MISSING_OAUTH_INFO", + "NEW_ATTRIBUTE_CANNOT_BE_PART_OF_UNIQUE_KEY", + "TOO_MANY_ATTRIBUTES", + "INVALID_BUSINESS_ACCOUNT", + "BUSINESS_ACCOUNT_CANNOT_ACCESS_LOCATION_ACCOUNT", + "INVALID_AFFILIATE_CHAIN_ID", + "DUPLICATE_SYSTEM_FEED", + "GMB_ACCESS_ERROR", + "CANNOT_HAVE_LOCATION_AND_AFFILIATE_LOCATION_FEEDS", + "LEGACY_EXTENSION_TYPE_READ_ONLY" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The names of the FeedAttributes must be unique.", + "The attribute list must be an exact copy of the existing list if the attribute ID's are present.", + "Cannot specify USER origin for a system generated feed.", + "Cannot specify GOOGLE origin for a non-system generated feed.", + "Cannot specify feed attributes for system feed.", + "Cannot update FeedAttributes on feed with origin GOOGLE.", + "The given ID refers to a removed Feed. Removed Feeds are immutable.", + "The origin of the feed is not valid for the client.", + "A user can only create and modify feeds with USER origin.", + "Invalid auth token for the given email.", + "Invalid email specified.", + "Feed name matches that of another active Feed.", + "Name of feed is not allowed.", + "Missing OAuthInfo.", + "New FeedAttributes must not affect the unique key.", + "Too many FeedAttributes for a Feed.", + "The business account is not valid.", + "Business account cannot access Business Profile.", + "Invalid chain ID provided for affiliate location feed.", + "There is already a feed with the given system feed generation data.", + "An error occurred accessing Business Profile.", + "A customer cannot have both LOCATION and AFFILIATE_LOCATION feeds.", + "Feed-based extension is read-only for this extension type." + ], + "type": "string" + }, + "feedItemError": { + "description": "The reasons for the feed item error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CANNOT_CONVERT_ATTRIBUTE_VALUE_FROM_STRING", + "CANNOT_OPERATE_ON_REMOVED_FEED_ITEM", + "DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE", + "KEY_ATTRIBUTES_NOT_FOUND", + "INVALID_URL", + "MISSING_KEY_ATTRIBUTES", + "KEY_ATTRIBUTES_NOT_UNIQUE", + "CANNOT_MODIFY_KEY_ATTRIBUTE_VALUE", + "SIZE_TOO_LARGE_FOR_MULTI_VALUE_ATTRIBUTE", + "LEGACY_FEED_TYPE_READ_ONLY" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Cannot convert the feed attribute value from string to its real type.", + "Cannot operate on removed feed item.", + "Date time zone does not match the account's time zone.", + "Feed item with the key attributes could not be found.", + "Url feed attribute value is not valid.", + "Some key attributes are missing.", + "Feed item has same key attributes as another feed item.", + "Cannot modify key attributes on an existing feed item.", + "The feed attribute value is too large.", + "Feed is read only." + ], + "type": "string" + }, + "feedItemSetError": { + "description": "The reasons for the feed item set error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "FEED_ITEM_SET_REMOVED", + "CANNOT_CLEAR_DYNAMIC_FILTER", + "CANNOT_CREATE_DYNAMIC_FILTER", + "INVALID_FEED_TYPE", + "DUPLICATE_NAME", + "WRONG_DYNAMIC_FILTER_FOR_FEED_TYPE", + "DYNAMIC_FILTER_INVALID_CHAIN_IDS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The given ID refers to a removed FeedItemSet.", + "The dynamic filter of a feed item set cannot be cleared on UPDATE if it exists. A set is either static or dynamic once added, and that cannot change.", + "The dynamic filter of a feed item set cannot be created on UPDATE if it does not exist. A set is either static or dynamic once added, and that cannot change.", + "FeedItemSets can only be made for location or affiliate location feeds.", + "FeedItemSets duplicate name. Name should be unique within an account.", + "The feed type of the parent Feed is not compatible with the type of dynamic filter being set. For example, you can only set dynamic_location_set_filter for LOCATION feed item sets.", + "Chain ID specified for AffiliateLocationFeedData is invalid." + ], + "type": "string" + }, + "feedItemSetLinkError": { + "description": "The reasons for the feed item set link error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "FEED_ID_MISMATCH", + "NO_MUTATE_ALLOWED_FOR_DYNAMIC_SET" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The feed IDs of the FeedItemSet and FeedItem do not match. Only FeedItems in a given Feed can be linked to a FeedItemSet in that Feed.", + "Cannot add or remove links to a dynamic set." + ], + "type": "string" + }, + "feedItemTargetError": { + "description": "The reasons for the feed item target error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "MUST_SET_TARGET_ONEOF_ON_CREATE", + "FEED_ITEM_TARGET_ALREADY_EXISTS", + "FEED_ITEM_SCHEDULES_CANNOT_OVERLAP", + "TARGET_LIMIT_EXCEEDED_FOR_GIVEN_TYPE", + "TOO_MANY_SCHEDULES_PER_DAY", + "CANNOT_HAVE_ENABLED_CAMPAIGN_AND_ENABLED_AD_GROUP_TARGETS", + "DUPLICATE_AD_SCHEDULE", + "DUPLICATE_KEYWORD" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "On CREATE, the FeedItemTarget must have a populated field in the oneof target.", + "The specified feed item target already exists, so it cannot be added.", + "The schedules for a given feed item cannot overlap.", + "Too many targets of a given type were added for a single feed item.", + "Too many AdSchedules are enabled for the feed item for the given day.", + "A feed item may either have an enabled campaign target or an enabled ad group target.", + "Duplicate ad schedules aren't allowed.", + "Duplicate keywords aren't allowed." + ], + "type": "string" + }, + "feedItemValidationError": { + "description": "The reasons for the feed item validation error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "STRING_TOO_SHORT", + "STRING_TOO_LONG", + "VALUE_NOT_SPECIFIED", + "INVALID_DOMESTIC_PHONE_NUMBER_FORMAT", + "INVALID_PHONE_NUMBER", + "PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY", + "PREMIUM_RATE_NUMBER_NOT_ALLOWED", + "DISALLOWED_NUMBER_TYPE", + "VALUE_OUT_OF_RANGE", + "CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY", + "CUSTOMER_NOT_IN_ALLOWLIST_FOR_CALLTRACKING", + "INVALID_COUNTRY_CODE", + "INVALID_APP_ID", + "MISSING_ATTRIBUTES_FOR_FIELDS", + "INVALID_TYPE_ID", + "INVALID_EMAIL_ADDRESS", + "INVALID_HTTPS_URL", + "MISSING_DELIVERY_ADDRESS", + "START_DATE_AFTER_END_DATE", + "MISSING_FEED_ITEM_START_TIME", + "MISSING_FEED_ITEM_END_TIME", + "MISSING_FEED_ITEM_ID", + "VANITY_PHONE_NUMBER_NOT_ALLOWED", + "INVALID_REVIEW_EXTENSION_SNIPPET", + "INVALID_NUMBER_FORMAT", + "INVALID_DATE_FORMAT", + "INVALID_PRICE_FORMAT", + "UNKNOWN_PLACEHOLDER_FIELD", + "MISSING_ENHANCED_SITELINK_DESCRIPTION_LINE", + "REVIEW_EXTENSION_SOURCE_INELIGIBLE", + "HYPHENS_IN_REVIEW_EXTENSION_SNIPPET", + "DOUBLE_QUOTES_IN_REVIEW_EXTENSION_SNIPPET", + "QUOTES_IN_REVIEW_EXTENSION_SNIPPET", + "INVALID_FORM_ENCODED_PARAMS", + "INVALID_URL_PARAMETER_NAME", + "NO_GEOCODING_RESULT", + "SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT", + "CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED", + "INVALID_PLACEHOLDER_FIELD_ID", + "INVALID_URL_TAG", + "LIST_TOO_LONG", + "INVALID_ATTRIBUTES_COMBINATION", + "DUPLICATE_VALUES", + "INVALID_CALL_CONVERSION_ACTION_ID", + "CANNOT_SET_WITHOUT_FINAL_URLS", + "APP_ID_DOESNT_EXIST_IN_APP_STORE", + "INVALID_FINAL_URL", + "INVALID_TRACKING_URL", + "INVALID_FINAL_URL_FOR_APP_DOWNLOAD_URL", + "LIST_TOO_SHORT", + "INVALID_USER_ACTION", + "INVALID_TYPE_NAME", + "INVALID_EVENT_CHANGE_STATUS", + "INVALID_SNIPPETS_HEADER", + "INVALID_ANDROID_APP_LINK", + "NUMBER_TYPE_WITH_CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY", + "RESERVED_KEYWORD_OTHER", + "DUPLICATE_OPTION_LABELS", + "DUPLICATE_OPTION_PREFILLS", + "UNEQUAL_LIST_LENGTHS", + "INCONSISTENT_CURRENCY_CODES", + "PRICE_EXTENSION_HAS_DUPLICATED_HEADERS", + "ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION", + "PRICE_EXTENSION_HAS_TOO_FEW_ITEMS", + "UNSUPPORTED_VALUE", + "INVALID_FINAL_MOBILE_URL", + "INVALID_KEYWORDLESS_AD_RULE_LABEL", + "VALUE_TRACK_PARAMETER_NOT_SUPPORTED", + "UNSUPPORTED_VALUE_IN_SELECTED_LANGUAGE", + "INVALID_IOS_APP_LINK", + "MISSING_IOS_APP_LINK_OR_IOS_APP_STORE_ID", + "PROMOTION_INVALID_TIME", + "PROMOTION_CANNOT_SET_PERCENT_OFF_AND_MONEY_AMOUNT_OFF", + "PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT", + "TOO_MANY_DECIMAL_PLACES_SPECIFIED", + "AD_CUSTOMIZERS_NOT_ALLOWED", + "INVALID_LANGUAGE_CODE", + "UNSUPPORTED_LANGUAGE", + "IF_FUNCTION_NOT_ALLOWED", + "INVALID_FINAL_URL_SUFFIX", + "INVALID_TAG_IN_FINAL_URL_SUFFIX", + "INVALID_FINAL_URL_SUFFIX_FORMAT", + "CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED", + "ONLY_ONE_DELIVERY_OPTION_IS_ALLOWED", + "NO_DELIVERY_OPTION_IS_SET", + "INVALID_CONVERSION_REPORTING_STATE", + "IMAGE_SIZE_WRONG", + "EMAIL_DELIVERY_NOT_AVAILABLE_IN_COUNTRY", + "AUTO_REPLY_NOT_AVAILABLE_IN_COUNTRY", + "INVALID_LATITUDE_VALUE", + "INVALID_LONGITUDE_VALUE", + "TOO_MANY_LABELS", + "INVALID_IMAGE_URL", + "MISSING_LATITUDE_VALUE", + "MISSING_LONGITUDE_VALUE", + "ADDRESS_NOT_FOUND", + "ADDRESS_NOT_TARGETABLE", + "INVALID_ASSET_ID", + "INCOMPATIBLE_ASSET_TYPE", + "IMAGE_ERROR_UNEXPECTED_SIZE", + "IMAGE_ERROR_ASPECT_RATIO_NOT_ALLOWED", + "IMAGE_ERROR_FILE_TOO_LARGE", + "IMAGE_ERROR_FORMAT_NOT_ALLOWED", + "IMAGE_ERROR_CONSTRAINTS_VIOLATED", + "IMAGE_ERROR_SERVER_ERROR" + ], + "enumDescriptions": [ + "No value has been specified.", + "Used for return value only. Represents value unknown in this version.", + "String is too short.", + "String is too long.", + "Value is not provided.", + "Phone number format is invalid for region.", + "String does not represent a phone number.", + "Phone number format is not compatible with country code.", + "Premium rate number is not allowed.", + "Phone number type is not allowed.", + "Specified value is outside of the valid range.", + "Call tracking is not supported in the selected country.", + "Customer is not on the allow-list for call tracking.", + "Country code is invalid.", + "The specified mobile app id is invalid.", + "Some required field attributes are missing.", + "Invalid email button type for email extension.", + "Email address is invalid.", + "The HTTPS URL in email extension is invalid.", + "Delivery address is missing from email extension.", + "FeedItem scheduling start date comes after end date.", + "FeedItem scheduling start time is missing.", + "FeedItem scheduling end time is missing.", + "Cannot compute system attributes on a FeedItem that has no FeedItemId.", + "Call extension vanity phone numbers are not supported.", + "Invalid review text.", + "Invalid format for numeric value in ad parameter.", + "Invalid format for date value in ad parameter.", + "Invalid format for price value in ad parameter.", + "Unrecognized type given for value in ad parameter.", + "Enhanced sitelinks must have both description lines specified.", + "Review source is ineligible.", + "Review text cannot contain hyphens or dashes.", + "Review text cannot contain double quote characters.", + "Review text cannot contain quote characters.", + "Parameters are encoded in the wrong format.", + "URL parameter name must contain only letters, numbers, underscores, and dashes.", + "Cannot find address location.", + "Review extension text has source name.", + "Some phone numbers can be shorter than usual. Some of these short numbers are carrier-specific, and we disallow those in ad extensions because they will not be available to all users.", + "Triggered when a request references a placeholder field id that does not exist.", + "URL contains invalid ValueTrack tags or format.", + "Provided list exceeds acceptable size.", + "Certain combinations of attributes aren't allowed to be specified in the same feed item.", + "An attribute has the same value repeatedly.", + "Advertisers can link a conversion action with a phone number to indicate that sufficiently long calls forwarded to that phone number should be counted as conversions of the specified type. This is an error message indicating that the conversion action specified is invalid (for example, the conversion action does not exist within the appropriate Google Ads account, or it is a type of conversion not appropriate to phone call conversions).", + "Tracking template requires final url to be set.", + "An app id was provided that doesn't exist in the given app store.", + "Invalid U2 final url.", + "Invalid U2 tracking url.", + "Final URL should start from App download URL.", + "List provided is too short.", + "User Action field has invalid value.", + "Type field has invalid value.", + "Change status for event is invalid.", + "The header of a structured snippets extension is not one of the valid headers.", + "Android app link is not formatted correctly", + "Phone number incompatible with call tracking for country.", + "The input is identical to a reserved keyword", + "Each option label in the message extension must be unique.", + "Each option prefill in the message extension must be unique.", + "In message extensions, the number of optional labels and optional prefills must be the same.", + "All currency codes in an ad extension must be the same.", + "Headers in price extension are not unique.", + "Header and description in an item are the same.", + "Price extension has too few items.", + "The given value is not supported.", + "Invalid final mobile url.", + "The given string value of Label contains invalid characters", + "The given URL contains value track parameters.", + "The given value is not supported in the selected language of an extension.", + "The iOS app link is not formatted correctly.", + "iOS app link or iOS app store id is missing.", + "Promotion time is invalid.", + "Both the percent off and money amount off fields are set.", + "Both the promotion code and orders over amount fields are set.", + "Too many decimal places are specified.", + "Ad Customizers are present and not allowed.", + "Language code is not valid.", + "Language is not supported.", + "IF Function is present and not allowed.", + "Final url suffix is not valid.", + "Final url suffix contains an invalid tag.", + "Final url suffix is formatted incorrectly.", + "Consent for call recording, which is required for the use of call extensions, was not provided by the advertiser. See https://support.google.com/google-ads/answer/7412639.", + "Multiple message delivery options are set.", + "No message delivery option is set.", + "String value of conversion reporting state field is not valid.", + "Image size is not right.", + "Email delivery is not supported in the country specified in the country code field.", + "Auto reply is not supported in the country specified in the country code field.", + "Invalid value specified for latitude.", + "Invalid value specified for longitude.", + "Too many label fields provided.", + "Invalid image url.", + "Latitude value is missing.", + "Longitude value is missing.", + "Unable to find address.", + "Cannot target provided address.", + "The specified asset ID does not exist.", + "The asset type cannot be set for the field.", + "The image has unexpected size.", + "The image aspect ratio is not allowed.", + "The image file is too large.", + "The image format is unsupported.", + "Image violates constraints without more details.", + "An error occurred when validating image." + ], + "type": "string" + }, + "feedMappingError": { + "description": "The reasons for the feed mapping error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_PLACEHOLDER_FIELD", + "INVALID_CRITERION_FIELD", + "INVALID_PLACEHOLDER_TYPE", + "INVALID_CRITERION_TYPE", + "NO_ATTRIBUTE_FIELD_MAPPINGS", + "FEED_ATTRIBUTE_TYPE_MISMATCH", + "CANNOT_OPERATE_ON_MAPPINGS_FOR_SYSTEM_GENERATED_FEED", + "MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_TYPE", + "MULTIPLE_MAPPINGS_FOR_CRITERION_TYPE", + "MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_FIELD", + "MULTIPLE_MAPPINGS_FOR_CRITERION_FIELD", + "UNEXPECTED_ATTRIBUTE_FIELD_MAPPINGS", + "LOCATION_PLACEHOLDER_ONLY_FOR_PLACES_FEEDS", + "CANNOT_MODIFY_MAPPINGS_FOR_TYPED_FEED", + "INVALID_PLACEHOLDER_TYPE_FOR_NON_SYSTEM_GENERATED_FEED", + "INVALID_PLACEHOLDER_TYPE_FOR_SYSTEM_GENERATED_FEED_TYPE", + "ATTRIBUTE_FIELD_MAPPING_MISSING_FIELD", + "LEGACY_FEED_TYPE_READ_ONLY" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The given placeholder field does not exist.", + "The given criterion field does not exist.", + "The given placeholder type does not exist.", + "The given criterion type does not exist.", + "A feed mapping must contain at least one attribute field mapping.", + "The type of the feed attribute referenced in the attribute field mapping must match the type of the placeholder field.", + "A feed mapping for a system generated feed cannot be operated on.", + "Only one feed mapping for a placeholder type is allowed per feed or customer (depending on the placeholder type).", + "Only one feed mapping for a criterion type is allowed per customer.", + "Only one feed attribute mapping for a placeholder field is allowed (depending on the placeholder type).", + "Only one feed attribute mapping for a criterion field is allowed (depending on the criterion type).", + "This feed mapping may not contain any explicit attribute field mappings.", + "Location placeholder feed mappings can only be created for Places feeds.", + "Mappings for typed feeds cannot be modified.", + "The given placeholder type can only be mapped to system generated feeds.", + "The given placeholder type cannot be mapped to a system generated feed with the given type.", + "The \"field\" oneof was not set in an AttributeFieldMapping.", + "Feed is read only." + ], + "type": "string" + }, + "fieldError": { + "description": "The reasons for the field error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "REQUIRED", + "IMMUTABLE_FIELD", + "INVALID_VALUE", + "VALUE_MUST_BE_UNSET", + "REQUIRED_NONEMPTY_LIST", + "FIELD_CANNOT_BE_CLEARED", + "BLOCKED_VALUE", + "FIELD_CAN_ONLY_BE_CLEARED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The required field was not present.", + "The field attempted to be mutated is immutable.", + "The field's value is invalid.", + "The field cannot be set.", + "The required repeated field was empty.", + "The field cannot be cleared.", + "The field's value is on a deny-list for this field.", + "The field's value cannot be modified, except for clearing." + ], + "type": "string" + }, + "fieldMaskError": { + "description": "An error with a field mask", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "FIELD_MASK_MISSING", + "FIELD_MASK_NOT_ALLOWED", + "FIELD_NOT_FOUND", + "FIELD_HAS_SUBFIELDS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The field mask must be provided for update operations.", + "The field mask must be empty for create and remove operations.", + "The field mask contained an invalid field.", + "The field mask updated a field with subfields. Fields with subfields may be cleared, but not updated. To fix this, the field mask should select all the subfields of the invalid field." + ], + "type": "string" + }, + "finalUrlExpansionAssetViewError": { + "description": "The reasons for the final url expansion asset view error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "MISSING_REQUIRED_FILTER", + "REQUIRES_ADVERTISING_CHANNEL_TYPE_FILTER", + "INVALID_ADVERTISING_CHANNEL_TYPE_IN_FILTER", + "CANNOT_SELECT_ASSET_GROUP", + "CANNOT_SELECT_AD_GROUP", + "REQUIRES_FILTER_BY_SINGLE_RESOURCE", + "CANNOT_SELECT_BOTH_AD_GROUP_AND_ASSET_GROUP", + "CANNOT_FILTER_BY_BOTH_AD_GROUP_AND_ASSET_GROUP" + ], + "enumDescriptions": [ + "Name unspecified.", + "The received error code is not known in this version.", + "At least one required filter has to be applied in the query.", + "Advertising channel type filter is required.", + "Advertising channel type filter has an invalid value.", + "Asset group cannot be selected in the query.", + "Ad group cannot be selected in the query.", + "A selected field/resource requires filtering by a single resource.", + "Both ad group and asset group cannot be selected in the query.", + "Both ad group and asset group cannot be filtered in the query." + ], + "type": "string" + }, + "functionError": { + "description": "The reasons for the function error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_FUNCTION_FORMAT", + "DATA_TYPE_MISMATCH", + "INVALID_CONJUNCTION_OPERANDS", + "INVALID_NUMBER_OF_OPERANDS", + "INVALID_OPERAND_TYPE", + "INVALID_OPERATOR", + "INVALID_REQUEST_CONTEXT_TYPE", + "INVALID_FUNCTION_FOR_CALL_PLACEHOLDER", + "INVALID_FUNCTION_FOR_PLACEHOLDER", + "INVALID_OPERAND", + "MISSING_CONSTANT_OPERAND_VALUE", + "INVALID_CONSTANT_OPERAND_VALUE", + "INVALID_NESTING", + "MULTIPLE_FEED_IDS_NOT_SUPPORTED", + "INVALID_FUNCTION_FOR_FEED_WITH_FIXED_SCHEMA", + "INVALID_ATTRIBUTE_NAME" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The format of the function is not recognized as a supported function format.", + "Operand data types do not match.", + "The operands cannot be used together in a conjunction.", + "Invalid numer of Operands.", + "Operand Type not supported.", + "Operator not supported.", + "Request context type not supported.", + "The matching function is not allowed for call placeholders", + "The matching function is not allowed for the specified placeholder", + "Invalid operand.", + "Missing value for the constant operand.", + "The value of the constant operand is invalid.", + "Invalid function nesting.", + "The Feed ID was different from another Feed ID in the same function.", + "The matching function is invalid for use with a feed with a fixed schema.", + "Invalid attribute name." + ], + "type": "string" + }, + "functionParsingError": { + "description": "The reasons for the function parsing error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "NO_MORE_INPUT", + "EXPECTED_CHARACTER", + "UNEXPECTED_SEPARATOR", + "UNMATCHED_LEFT_BRACKET", + "UNMATCHED_RIGHT_BRACKET", + "TOO_MANY_NESTED_FUNCTIONS", + "MISSING_RIGHT_HAND_OPERAND", + "INVALID_OPERATOR_NAME", + "FEED_ATTRIBUTE_OPERAND_ARGUMENT_NOT_INTEGER", + "NO_OPERANDS", + "TOO_MANY_OPERANDS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Unexpected end of function string.", + "Could not find an expected character.", + "Unexpected separator character.", + "Unmatched left bracket or parenthesis.", + "Unmatched right bracket or parenthesis.", + "Functions are nested too deeply.", + "Missing right-hand-side operand.", + "Invalid operator/function name.", + "Feed attribute operand's argument is not an integer.", + "Missing function operands.", + "Function had too many operands." + ], + "type": "string" + }, + "geoTargetConstantSuggestionError": { + "description": "The reasons for the geo target constant suggestion error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "LOCATION_NAME_SIZE_LIMIT", + "LOCATION_NAME_LIMIT", + "INVALID_COUNTRY_CODE", + "REQUEST_PARAMETERS_UNSET" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "A location name cannot be greater than 300 characters.", + "At most 25 location names can be specified in a SuggestGeoTargetConstants method.", + "The country code is invalid.", + "Geo target constant resource names or location names must be provided in the request." + ], + "type": "string" + }, + "goalError": { + "description": "The reasons for the goal error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "RETENTION_GOAL_ALREADY_EXISTS", + "HIGH_LIFETIME_VALUE_PRESENT_BUT_VALUE_ABSENT", + "HIGH_LIFETIME_VALUE_LESS_THAN_OR_EQUAL_TO_VALUE", + "CUSTOMER_LIFECYCLE_OPTIMIZATION_ACCOUNT_TYPE_NOT_ALLOWED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Retention goal already exists.", + "When using customer lifecycle optimization goal, if high lifetime value is present then value should be present.", + "When using customer lifecycle optimization goal, high lifetime value should be greater than value.", + "Only Google Ads account can have customer lifecycle optimization goal." + ], + "type": "string" + }, + "headerError": { + "description": "The reasons for the header error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_LOGIN_CUSTOMER_ID", + "INVALID_LINKED_CUSTOMER_ID" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The login customer ID could not be validated.", + "The linked customer ID could not be validated." + ], + "type": "string" + }, + "idError": { + "description": "The reasons for the id error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "NOT_FOUND" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "ID not found" + ], + "type": "string" + }, + "identityVerificationError": { + "description": "The reasons for an identity verification error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "NO_EFFECTIVE_BILLING", + "BILLING_NOT_ON_MONTHLY_INVOICING", + "VERIFICATION_ALREADY_STARTED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "No effective billing linked to this customer.", + "Customer is not on monthly invoicing.", + "Verification for this program type was already started." + ], + "type": "string" + }, + "imageError": { + "description": "The reasons for the image error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_IMAGE", + "STORAGE_ERROR", + "BAD_REQUEST", + "UNEXPECTED_SIZE", + "ANIMATED_NOT_ALLOWED", + "ANIMATION_TOO_LONG", + "SERVER_ERROR", + "CMYK_JPEG_NOT_ALLOWED", + "FLASH_NOT_ALLOWED", + "FLASH_WITHOUT_CLICKTAG", + "FLASH_ERROR_AFTER_FIXING_CLICK_TAG", + "ANIMATED_VISUAL_EFFECT", + "FLASH_ERROR", + "LAYOUT_PROBLEM", + "PROBLEM_READING_IMAGE_FILE", + "ERROR_STORING_IMAGE", + "ASPECT_RATIO_NOT_ALLOWED", + "FLASH_HAS_NETWORK_OBJECTS", + "FLASH_HAS_NETWORK_METHODS", + "FLASH_HAS_URL", + "FLASH_HAS_MOUSE_TRACKING", + "FLASH_HAS_RANDOM_NUM", + "FLASH_SELF_TARGETS", + "FLASH_BAD_GETURL_TARGET", + "FLASH_VERSION_NOT_SUPPORTED", + "FLASH_WITHOUT_HARD_CODED_CLICK_URL", + "INVALID_FLASH_FILE", + "FAILED_TO_FIX_CLICK_TAG_IN_FLASH", + "FLASH_ACCESSES_NETWORK_RESOURCES", + "FLASH_EXTERNAL_JS_CALL", + "FLASH_EXTERNAL_FS_CALL", + "FILE_TOO_LARGE", + "IMAGE_DATA_TOO_LARGE", + "IMAGE_PROCESSING_ERROR", + "IMAGE_TOO_SMALL", + "INVALID_INPUT", + "PROBLEM_READING_FILE", + "IMAGE_CONSTRAINTS_VIOLATED", + "FORMAT_NOT_ALLOWED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The image is not valid.", + "The image could not be stored.", + "There was a problem with the request.", + "The image is not of legal dimensions.", + "Animated image are not permitted.", + "Animation is too long.", + "There was an error on the server.", + "Image cannot be in CMYK color format.", + "Flash images are not permitted.", + "Flash images must support clickTag.", + "A flash error has occurred after fixing the click tag.", + "Unacceptable visual effects.", + "There was a problem with the flash image.", + "Incorrect image layout.", + "There was a problem reading the image file.", + "There was an error storing the image.", + "The aspect ratio of the image is not allowed.", + "Flash cannot have network objects.", + "Flash cannot have network methods.", + "Flash cannot have a Url.", + "Flash cannot use mouse tracking.", + "Flash cannot have a random number.", + "Ad click target cannot be '_self'.", + "GetUrl method should only use '_blank'.", + "Flash version is not supported.", + "Flash movies need to have hard coded click URL or clickTAG", + "Uploaded flash file is corrupted.", + "Uploaded flash file can be parsed, but the click tag can not be fixed properly.", + "Flash movie accesses network resources", + "Flash movie attempts to call external javascript code", + "Flash movie attempts to call flash system commands", + "Image file is too large.", + "Image data is too large.", + "Error while processing the image.", + "Image is too small.", + "Input was invalid.", + "There was a problem reading the image file.", + "Image constraints are violated, but details like ASPECT_RATIO_NOT_ALLOWED can't be provided. This happens when asset spec contains more than one constraint and different criteria of different constraints are violated.", + "Image format is not allowed." + ], + "type": "string" + }, + "incentiveError": { + "description": "The reasons for the incentive error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_INCENTIVE_ID" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The incentive ID is either invalid or not supported for the given country." + ], + "type": "string" + }, + "internalError": { + "description": "An unexpected server-side error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INTERNAL_ERROR", + "ERROR_CODE_NOT_PUBLISHED", + "TRANSIENT_ERROR", + "DEADLINE_EXCEEDED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "API encountered unexpected internal error.", + "The intended error code doesn't exist in specified API version. It will be released in a future API version.", + "API encountered an unexpected transient error. The user should retry their request in these cases.", + "The request took longer than a deadline." + ], + "type": "string" + }, + "invalidParameterError": { + "description": "The reasons for invalid parameter errors.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_CURRENCY_CODE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The specified currency code is invalid." + ], + "type": "string" + }, + "invoiceError": { + "description": "The reasons for the invoice error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "YEAR_MONTH_TOO_OLD", + "NOT_INVOICED_CUSTOMER", + "BILLING_SETUP_NOT_APPROVED", + "BILLING_SETUP_NOT_ON_MONTHLY_INVOICING", + "NON_SERVING_CUSTOMER" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Cannot request invoices issued before 2019-01-01.", + "Cannot request invoices for customer who doesn't receive invoices.", + "Cannot request invoices for a non approved billing setup.", + "Cannot request invoices for a billing setup that is not on monthly invoicing.", + "Cannot request invoices for a non serving customer." + ], + "type": "string" + }, + "keywordPlanAdGroupError": { + "description": "The reason for keyword plan ad group error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_NAME", + "DUPLICATE_NAME" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The keyword plan ad group name is missing, empty, longer than allowed limit or contains invalid chars.", + "The keyword plan ad group name is duplicate to an existing keyword plan AdGroup name or other keyword plan AdGroup name in the request." + ], + "type": "string" + }, + "keywordPlanAdGroupKeywordError": { + "description": "The reason for keyword plan ad group keyword error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_KEYWORD_MATCH_TYPE", + "DUPLICATE_KEYWORD", + "KEYWORD_TEXT_TOO_LONG", + "KEYWORD_HAS_INVALID_CHARS", + "KEYWORD_HAS_TOO_MANY_WORDS", + "INVALID_KEYWORD_TEXT", + "NEGATIVE_KEYWORD_HAS_CPC_BID", + "NEW_BMM_KEYWORDS_NOT_ALLOWED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "A keyword or negative keyword has invalid match type.", + "A keyword or negative keyword with same text and match type already exists.", + "Keyword or negative keyword text exceeds the allowed limit.", + "Keyword or negative keyword text has invalid characters or symbols.", + "Keyword or negative keyword text has too many words.", + "Keyword or negative keyword has invalid text.", + "Cpc Bid set for negative keyword.", + "New broad match modifier (BMM) KpAdGroupKeywords are not allowed." + ], + "type": "string" + }, + "keywordPlanCampaignError": { + "description": "The reason for keyword plan campaign error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_NAME", + "INVALID_LANGUAGES", + "INVALID_GEOS", + "DUPLICATE_NAME", + "MAX_GEOS_EXCEEDED", + "MAX_LANGUAGES_EXCEEDED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "A keyword plan campaign name is missing, empty, longer than allowed limit or contains invalid chars.", + "A keyword plan campaign contains one or more untargetable languages.", + "A keyword plan campaign contains one or more invalid geo targets.", + "The keyword plan campaign name is duplicate to an existing keyword plan campaign name or other keyword plan campaign name in the request.", + "The number of geo targets in the keyword plan campaign exceeds limits.", + "The number of languages in the keyword plan campaign exceeds limits." + ], + "type": "string" + }, + "keywordPlanCampaignKeywordError": { + "description": "The reason for keyword plan campaign keyword error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CAMPAIGN_KEYWORD_IS_POSITIVE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Keyword plan campaign keyword is positive." + ], + "type": "string" + }, + "keywordPlanError": { + "description": "The reason for keyword plan error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "BID_MULTIPLIER_OUT_OF_RANGE", + "BID_TOO_HIGH", + "BID_TOO_LOW", + "BID_TOO_MANY_FRACTIONAL_DIGITS", + "DAILY_BUDGET_TOO_LOW", + "DAILY_BUDGET_TOO_MANY_FRACTIONAL_DIGITS", + "INVALID_VALUE", + "KEYWORD_PLAN_HAS_NO_KEYWORDS", + "KEYWORD_PLAN_NOT_ENABLED", + "KEYWORD_PLAN_NOT_FOUND", + "MISSING_BID", + "MISSING_FORECAST_PERIOD", + "INVALID_FORECAST_DATE_RANGE", + "INVALID_NAME" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The plan's bid multiplier value is outside the valid range.", + "The plan's bid value is too high.", + "The plan's bid value is too low.", + "The plan's cpc bid is not a multiple of the minimum billable unit.", + "The plan's daily budget value is too low.", + "The plan's daily budget is not a multiple of the minimum billable unit.", + "The input has an invalid value.", + "The plan has no keyword.", + "The plan is not enabled and API cannot provide mutation, forecast or stats.", + "The requested plan cannot be found for providing forecast or stats.", + "The plan is missing a cpc bid.", + "The plan is missing required forecast_period field.", + "The plan's forecast_period has invalid forecast date range.", + "The plan's name is invalid." + ], + "type": "string" + }, + "keywordPlanIdeaError": { + "description": "The reason for keyword idea error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "URL_CRAWL_ERROR", + "INVALID_VALUE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Error when crawling the input URL.", + "The input has an invalid value." + ], + "type": "string" + }, + "labelError": { + "description": "The reason for the label error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CANNOT_APPLY_INACTIVE_LABEL", + "CANNOT_APPLY_LABEL_TO_DISABLED_AD_GROUP_CRITERION", + "CANNOT_APPLY_LABEL_TO_NEGATIVE_AD_GROUP_CRITERION", + "EXCEEDED_LABEL_LIMIT_PER_TYPE", + "INVALID_RESOURCE_FOR_MANAGER_LABEL", + "DUPLICATE_NAME", + "INVALID_LABEL_NAME", + "CANNOT_ATTACH_LABEL_TO_DRAFT", + "CANNOT_ATTACH_NON_MANAGER_LABEL_TO_CUSTOMER" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "An inactive label cannot be applied.", + "A label cannot be applied to a disabled ad group criterion.", + "A label cannot be applied to a negative ad group criterion.", + "Cannot apply more than 50 labels per resource.", + "Labels from a manager account cannot be applied to campaign, ad group, ad group ad, or ad group criterion resources.", + "Label names must be unique.", + "Label names cannot be empty.", + "Labels cannot be applied to a draft.", + "Labels not from a manager account cannot be applied to the customer resource." + ], + "type": "string" + }, + "languageCodeError": { + "description": "The reasons for the language code error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "LANGUAGE_CODE_NOT_FOUND", + "INVALID_LANGUAGE_CODE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The input language code is not recognized.", + "The language code is not supported." + ], + "type": "string" + }, + "listOperationError": { + "description": "An error with a list operation.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "REQUIRED_FIELD_MISSING", + "DUPLICATE_VALUES" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Field required in value is missing.", + "Duplicate or identical value is sent in multiple list operations." + ], + "type": "string" + }, + "managerLinkError": { + "description": "The reasons for the manager link error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "ACCOUNTS_NOT_COMPATIBLE_FOR_LINKING", + "TOO_MANY_MANAGERS", + "TOO_MANY_INVITES", + "ALREADY_INVITED_BY_THIS_MANAGER", + "ALREADY_MANAGED_BY_THIS_MANAGER", + "ALREADY_MANAGED_IN_HIERARCHY", + "DUPLICATE_CHILD_FOUND", + "CLIENT_HAS_NO_ADMIN_USER", + "MAX_DEPTH_EXCEEDED", + "CYCLE_NOT_ALLOWED", + "TOO_MANY_ACCOUNTS", + "TOO_MANY_ACCOUNTS_AT_MANAGER", + "NON_OWNER_USER_CANNOT_MODIFY_LINK", + "SUSPENDED_ACCOUNT_CANNOT_ADD_CLIENTS", + "CLIENT_OUTSIDE_TREE", + "INVALID_STATUS_CHANGE", + "INVALID_CHANGE", + "CUSTOMER_CANNOT_MANAGE_SELF", + "CREATING_ENABLED_LINK_NOT_ALLOWED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The manager and client have incompatible account types.", + "Client is already linked to too many managers.", + "Manager has too many pending invitations.", + "Client is already invited by this manager.", + "The client is already managed by this manager.", + "Client is already managed in hierarchy.", + "Manager and sub-manager to be linked have duplicate client.", + "Client has no active user that can access the client account.", + "Adding this link would exceed the maximum hierarchy depth.", + "Adding this link will create a cycle.", + "Manager account has the maximum number of linked clients.", + "Parent manager account has the maximum number of linked clients.", + "The account is not authorized owner.", + "Your manager account is suspended, and you are no longer allowed to link to clients.", + "You are not allowed to move a client to a manager that is not under your current hierarchy.", + "The changed status for mutate link is invalid.", + "The change for mutate link is invalid.", + "You are not allowed to link a manager account to itself.", + "The link was created with status ACTIVE and not PENDING." + ], + "type": "string" + }, + "mediaBundleError": { + "description": "The reasons for the media bundle error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "BAD_REQUEST", + "DOUBLECLICK_BUNDLE_NOT_ALLOWED", + "EXTERNAL_URL_NOT_ALLOWED", + "FILE_TOO_LARGE", + "GOOGLE_WEB_DESIGNER_ZIP_FILE_NOT_PUBLISHED", + "INVALID_INPUT", + "INVALID_MEDIA_BUNDLE", + "INVALID_MEDIA_BUNDLE_ENTRY", + "INVALID_MIME_TYPE", + "INVALID_PATH", + "INVALID_URL_REFERENCE", + "MEDIA_DATA_TOO_LARGE", + "MISSING_PRIMARY_MEDIA_BUNDLE_ENTRY", + "SERVER_ERROR", + "STORAGE_ERROR", + "SWIFFY_BUNDLE_NOT_ALLOWED", + "TOO_MANY_FILES", + "UNEXPECTED_SIZE", + "UNSUPPORTED_GOOGLE_WEB_DESIGNER_ENVIRONMENT", + "UNSUPPORTED_HTML5_FEATURE", + "URL_IN_MEDIA_BUNDLE_NOT_SSL_COMPLIANT", + "CUSTOM_EXIT_NOT_ALLOWED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "There was a problem with the request.", + "HTML5 ads using DoubleClick Studio created ZIP files are not supported.", + "Cannot reference URL external to the media bundle.", + "Media bundle file is too large.", + "ZIP file from Google Web Designer is not published.", + "Input was invalid.", + "There was a problem with the media bundle.", + "There was a problem with one or more of the media bundle entries.", + "The media bundle contains a file with an unknown mime type", + "The media bundle contain an invalid asset path.", + "HTML5 ad is trying to reference an asset not in .ZIP file", + "Media data is too large.", + "The media bundle contains no primary entry.", + "There was an error on the server.", + "The image could not be stored.", + "Media bundle created with the Swiffy tool is not allowed.", + "The media bundle contains too many files.", + "The media bundle is not of legal dimensions.", + "Google Web Designer not created for \"Google Ads\" environment.", + "Unsupported HTML5 feature in HTML5 asset.", + "URL in HTML5 entry is not ssl compliant.", + "Custom exits not allowed in HTML5 entry." + ], + "type": "string" + }, + "mediaFileError": { + "description": "The reasons for the media file error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CANNOT_CREATE_STANDARD_ICON", + "CANNOT_SELECT_STANDARD_ICON_WITH_OTHER_TYPES", + "CANNOT_SPECIFY_MEDIA_FILE_ID_AND_DATA", + "DUPLICATE_MEDIA", + "EMPTY_FIELD", + "RESOURCE_REFERENCED_IN_MULTIPLE_OPS", + "FIELD_NOT_SUPPORTED_FOR_MEDIA_SUB_TYPE", + "INVALID_MEDIA_FILE_ID", + "INVALID_MEDIA_SUB_TYPE", + "INVALID_MEDIA_FILE_TYPE", + "INVALID_MIME_TYPE", + "INVALID_REFERENCE_ID", + "INVALID_YOU_TUBE_ID", + "MEDIA_FILE_FAILED_TRANSCODING", + "MEDIA_NOT_TRANSCODED", + "MEDIA_TYPE_DOES_NOT_MATCH_MEDIA_FILE_TYPE", + "NO_FIELDS_SPECIFIED", + "NULL_REFERENCE_ID_AND_MEDIA_ID", + "TOO_LONG", + "UNSUPPORTED_TYPE", + "YOU_TUBE_SERVICE_UNAVAILABLE", + "YOU_TUBE_VIDEO_HAS_NON_POSITIVE_DURATION", + "YOU_TUBE_VIDEO_NOT_FOUND" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Cannot create a standard icon type.", + "May only select Standard Icons alone.", + "Image contains both a media file ID and data.", + "A media file with given type and reference ID already exists.", + "A required field was not specified or is an empty string.", + "A media file may only be modified once per call.", + "Field is not supported for the media sub type.", + "The media file ID is invalid.", + "The media subtype is invalid.", + "The media file type is invalid.", + "The mimetype is invalid.", + "The media reference ID is invalid.", + "The YouTube video ID is invalid.", + "Media file has failed transcoding", + "Media file has not been transcoded.", + "The media type does not match the actual media file's type.", + "None of the fields have been specified.", + "One of reference ID or media file ID must be specified.", + "The string has too many characters.", + "The specified type is not supported.", + "YouTube is unavailable for requesting video data.", + "The YouTube video has a non positive duration.", + "The YouTube video ID is syntactically valid but the video was not found." + ], + "type": "string" + }, + "mediaUploadError": { + "description": "The reasons for media uploading errors.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "FILE_TOO_BIG", + "UNPARSEABLE_IMAGE", + "ANIMATED_IMAGE_NOT_ALLOWED", + "FORMAT_NOT_ALLOWED", + "EXTERNAL_URL_NOT_ALLOWED", + "INVALID_URL_REFERENCE", + "MISSING_PRIMARY_MEDIA_BUNDLE_ENTRY", + "ANIMATED_VISUAL_EFFECT", + "ANIMATION_TOO_LONG", + "ASPECT_RATIO_NOT_ALLOWED", + "AUDIO_NOT_ALLOWED_IN_MEDIA_BUNDLE", + "CMYK_JPEG_NOT_ALLOWED", + "FLASH_NOT_ALLOWED", + "FRAME_RATE_TOO_HIGH", + "GOOGLE_WEB_DESIGNER_ZIP_FILE_NOT_PUBLISHED", + "IMAGE_CONSTRAINTS_VIOLATED", + "INVALID_MEDIA_BUNDLE", + "INVALID_MEDIA_BUNDLE_ENTRY", + "INVALID_MIME_TYPE", + "INVALID_PATH", + "LAYOUT_PROBLEM", + "MALFORMED_URL", + "MEDIA_BUNDLE_NOT_ALLOWED", + "MEDIA_BUNDLE_NOT_COMPATIBLE_TO_PRODUCT_TYPE", + "MEDIA_BUNDLE_REJECTED_BY_MULTIPLE_ASSET_SPECS", + "TOO_MANY_FILES_IN_MEDIA_BUNDLE", + "UNSUPPORTED_GOOGLE_WEB_DESIGNER_ENVIRONMENT", + "UNSUPPORTED_HTML5_FEATURE", + "URL_IN_MEDIA_BUNDLE_NOT_SSL_COMPLIANT", + "VIDEO_FILE_NAME_TOO_LONG", + "VIDEO_MULTIPLE_FILES_WITH_SAME_NAME", + "VIDEO_NOT_ALLOWED_IN_MEDIA_BUNDLE", + "CANNOT_UPLOAD_MEDIA_TYPE_THROUGH_API", + "DIMENSIONS_NOT_ALLOWED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The uploaded file is too big.", + "Image data is unparseable.", + "Animated images are not allowed.", + "The image or media bundle format is not allowed.", + "Cannot reference URL external to the media bundle.", + "HTML5 ad is trying to reference an asset not in .ZIP file.", + "The media bundle contains no primary entry.", + "Animation has disallowed visual effects.", + "Animation longer than the allowed 30 second limit.", + "The aspect ratio of the image does not match the expected aspect ratios provided in the asset spec.", + "Audio files are not allowed in bundle.", + "CMYK jpegs are not supported.", + "Flash movies are not allowed.", + "The frame rate of the video is higher than the allowed 5fps.", + "ZIP file from Google Web Designer is not published.", + "Image constraints are violated, but more details (like DIMENSIONS_NOT_ALLOWED or ASPECT_RATIO_NOT_ALLOWED) can not be provided. This happens when asset spec contains more than one constraint and criteria of different constraints are violated.", + "Media bundle data is unrecognizable.", + "There was a problem with one or more of the media bundle entries.", + "The asset has an invalid mime type.", + "The media bundle contains an invalid asset path.", + "Image has layout problem.", + "An asset had a URL reference that is malformed per RFC 1738 convention.", + "The uploaded media bundle format is not allowed.", + "The media bundle is not compatible with the asset spec product type. (For example, Gmail, dynamic remarketing, etc.)", + "A bundle being uploaded that is incompatible with multiple assets for different reasons.", + "The media bundle contains too many files.", + "Google Web Designer not created for \"Google Ads\" environment.", + "Unsupported HTML5 feature in HTML5 asset.", + "URL in HTML5 entry is not SSL compliant.", + "Video file name is longer than the 50 allowed characters.", + "Multiple videos with same name in a bundle.", + "Videos are not allowed in media bundle.", + "This type of media cannot be uploaded through the Google Ads API.", + "The dimensions of the image are not allowed." + ], + "type": "string" + }, + "merchantCenterError": { + "description": "Container for enum describing possible merchant center errors.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "MERCHANT_ID_CANNOT_BE_ACCESSED", + "CUSTOMER_NOT_ALLOWED_FOR_SHOPPING_PERFORMANCE_MAX" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Merchant ID is either not found or not linked to the Google Ads customer.", + "Customer not allowlisted for Shopping in Performance Max Campaign." + ], + "type": "string" + }, + "multiplierError": { + "description": "The reasons for the multiplier error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "MULTIPLIER_TOO_HIGH", + "MULTIPLIER_TOO_LOW", + "TOO_MANY_FRACTIONAL_DIGITS", + "MULTIPLIER_NOT_ALLOWED_FOR_BIDDING_STRATEGY", + "MULTIPLIER_NOT_ALLOWED_WHEN_BASE_BID_IS_MISSING", + "NO_MULTIPLIER_SPECIFIED", + "MULTIPLIER_CAUSES_BID_TO_EXCEED_DAILY_BUDGET", + "MULTIPLIER_CAUSES_BID_TO_EXCEED_MONTHLY_BUDGET", + "MULTIPLIER_CAUSES_BID_TO_EXCEED_CUSTOM_BUDGET", + "MULTIPLIER_CAUSES_BID_TO_EXCEED_MAX_ALLOWED_BID", + "BID_LESS_THAN_MIN_ALLOWED_BID_WITH_MULTIPLIER", + "MULTIPLIER_AND_BIDDING_STRATEGY_TYPE_MISMATCH" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Multiplier value is too high", + "Multiplier value is too low", + "Too many fractional digits", + "A multiplier cannot be set for this bidding strategy", + "A multiplier cannot be set when there is no base bid (for example, content max cpc)", + "A bid multiplier must be specified", + "Multiplier causes bid to exceed daily budget", + "Multiplier causes bid to exceed monthly budget", + "Multiplier causes bid to exceed custom budget", + "Multiplier causes bid to exceed maximum allowed bid", + "Multiplier causes bid to become less than the minimum bid allowed", + "Multiplier type (cpc versus cpm) needs to match campaign's bidding strategy" + ], + "type": "string" + }, + "mutateError": { + "description": "An error with a mutate", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "RESOURCE_NOT_FOUND", + "ID_EXISTS_IN_MULTIPLE_MUTATES", + "INCONSISTENT_FIELD_VALUES", + "MUTATE_NOT_ALLOWED", + "RESOURCE_NOT_IN_GOOGLE_ADS", + "RESOURCE_ALREADY_EXISTS", + "RESOURCE_DOES_NOT_SUPPORT_VALIDATE_ONLY", + "OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE", + "RESOURCE_READ_ONLY", + "EU_POLITICAL_ADVERTISING_DECLARATION_REQUIRED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Requested resource was not found.", + "Cannot mutate the same resource twice in one request.", + "The field's contents don't match another field that represents the same data.", + "Mutates are not allowed for the requested resource.", + "The resource isn't in Google Ads. It belongs to another ads system.", + "The resource being created already exists.", + "This resource cannot be used with \"validate_only\".", + "This operation cannot be used with \"partial_failure\".", + "Attempt to write to read-only fields.", + "Mutates are generally not allowed if the customer contains non-exempt campaigns without the EU political advertising declaration." + ], + "type": "string" + }, + "newResourceCreationError": { + "description": "The reasons for the new resource creation error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CANNOT_SET_ID_FOR_CREATE", + "DUPLICATE_TEMP_IDS", + "TEMP_ID_RESOURCE_HAD_ERRORS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Do not set the id field while creating new resources.", + "Creating more than one resource with the same temp ID is not allowed.", + "Parent resource with specified temp ID failed validation, so no validation will be done for this child resource." + ], + "type": "string" + }, + "notAllowlistedError": { + "description": "The reasons for the not allowlisted error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CUSTOMER_NOT_ALLOWLISTED_FOR_THIS_FEATURE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Customer is not allowlisted for accessing this feature." + ], + "type": "string" + }, + "notEmptyError": { + "description": "The reasons for the not empty error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "EMPTY_LIST" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Empty list." + ], + "type": "string" + }, + "nullError": { + "description": "The reasons for the null error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "NULL_CONTENT" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Specified list/container must not contain any null elements" + ], + "type": "string" + }, + "offlineUserDataJobError": { + "description": "The reasons for the offline user data job error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_USER_LIST_ID", + "INVALID_USER_LIST_TYPE", + "NOT_ON_ALLOWLIST_FOR_USER_ID", + "INCOMPATIBLE_UPLOAD_KEY_TYPE", + "MISSING_USER_IDENTIFIER", + "INVALID_MOBILE_ID_FORMAT", + "TOO_MANY_USER_IDENTIFIERS", + "NOT_ON_ALLOWLIST_FOR_STORE_SALES_DIRECT", + "NOT_ON_ALLOWLIST_FOR_UNIFIED_STORE_SALES", + "INVALID_PARTNER_ID", + "INVALID_ENCODING", + "INVALID_COUNTRY_CODE", + "INCOMPATIBLE_USER_IDENTIFIER", + "FUTURE_TRANSACTION_TIME", + "INVALID_CONVERSION_ACTION", + "MOBILE_ID_NOT_SUPPORTED", + "INVALID_OPERATION_ORDER", + "CONFLICTING_OPERATION", + "EXTERNAL_UPDATE_ID_ALREADY_EXISTS", + "JOB_ALREADY_STARTED", + "REMOVE_NOT_SUPPORTED", + "REMOVE_ALL_NOT_SUPPORTED", + "INVALID_SHA256_FORMAT", + "CUSTOM_KEY_DISABLED", + "CUSTOM_KEY_NOT_PREDEFINED", + "CUSTOM_KEY_NOT_SET", + "CUSTOMER_NOT_ACCEPTED_CUSTOMER_DATA_TERMS", + "ATTRIBUTES_NOT_APPLICABLE_FOR_CUSTOMER_MATCH_USER_LIST", + "LIFETIME_VALUE_BUCKET_NOT_IN_RANGE", + "INCOMPATIBLE_USER_IDENTIFIER_FOR_ATTRIBUTES", + "FUTURE_TIME_NOT_ALLOWED", + "LAST_PURCHASE_TIME_LESS_THAN_ACQUISITION_TIME", + "CUSTOMER_IDENTIFIER_NOT_ALLOWED", + "INVALID_ITEM_ID", + "FIRST_PURCHASE_TIME_GREATER_THAN_LAST_PURCHASE_TIME", + "INVALID_LIFECYCLE_STAGE", + "INVALID_EVENT_VALUE", + "EVENT_ATTRIBUTE_ALL_FIELDS_ARE_REQUIRED", + "OPERATION_LEVEL_CONSENT_PROVIDED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The user list ID provided for the job is invalid.", + "Type of the user list is not applicable for the job.", + "Customer is not allowisted for using user ID in upload data.", + "Upload data is not compatible with the upload key type of the associated user list.", + "The user identifier is missing valid data.", + "The mobile ID is malformed.", + "Maximum number of user identifiers allowed per request is 100,000 and per operation is 20.", + "Customer is not on the allow-list for store sales direct data.", + "Customer is not on the allow-list for unified store sales data.", + "The partner ID in store sales direct metadata is invalid.", + "The data in user identifier should not be encoded.", + "The country code is invalid.", + "Incompatible user identifier when using third_party_user_id for store sales direct first party data or not using third_party_user_id for store sales third party data.", + "A transaction time in the future is not allowed.", + "The conversion_action specified in transaction_attributes is used to report conversions to a conversion action configured in Google Ads. This error indicates there is no such conversion action in the account.", + "Mobile ID is not supported for store sales direct data.", + "When a remove-all operation is provided, it has to be the first operation of the operation list.", + "Mixing creation and removal of offline data in the same job is not allowed.", + "The external update ID already exists.", + "Once the upload job is started, new operations cannot be added.", + "Remove operation is not allowed for store sales direct updates.", + "Remove-all is not supported for certain offline user data job types.", + "The SHA256 encoded value is malformed.", + "The custom key specified is not enabled for the unified store sales upload.", + "The custom key specified is not predefined through the Google Ads UI.", + "The custom key specified is not set in the upload.", + "The customer has not accepted the customer data terms in the conversion settings page.", + "User attributes cannot be uploaded into a user list.", + "Lifetime bucket value must be a number from 0 to 10; 0 is only accepted for remove operations", + "Identifiers not supported for Customer Match attributes. User attributes can only be provided with contact info (email, phone, address) user identifiers.", + "A time in the future is not allowed.", + "Last purchase date time cannot be less than acquisition date time.", + "Only emails are accepted as user identifiers for shopping loyalty match. {-- api.dev/not-precedent: The identifier is not limited to ids, but also include other user info eg. phone numbers.}", + "Provided item ID is invalid.", + "First purchase date time cannot be greater than the last purchase date time.", + "Provided lifecycle stage is invalid.", + "The event value of the Customer Match user attribute is invalid.", + "All the fields are not present in the EventAttribute of the Customer Match.", + "Consent was provided at the operation level for an OfflineUserDataJobType that expects it at the job level. The provided operation-level consent will be ignored." + ], + "type": "string" + }, + "operationAccessDeniedError": { + "description": "The reasons for the operation access denied error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "ACTION_NOT_PERMITTED", + "CREATE_OPERATION_NOT_PERMITTED", + "REMOVE_OPERATION_NOT_PERMITTED", + "UPDATE_OPERATION_NOT_PERMITTED", + "MUTATE_ACTION_NOT_PERMITTED_FOR_CLIENT", + "OPERATION_NOT_PERMITTED_FOR_CAMPAIGN_TYPE", + "CREATE_AS_REMOVED_NOT_PERMITTED", + "OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE", + "OPERATION_NOT_PERMITTED_FOR_AD_GROUP_TYPE", + "MUTATE_NOT_PERMITTED_FOR_CUSTOMER" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Unauthorized invocation of a service's method (get, mutate, etc.)", + "Unauthorized CREATE operation in invoking a service's mutate method.", + "Unauthorized REMOVE operation in invoking a service's mutate method.", + "Unauthorized UPDATE operation in invoking a service's mutate method.", + "A mutate action is not allowed on this resource, from this client.", + "This operation is not permitted on this campaign type", + "A CREATE operation may not set status to REMOVED.", + "This operation is not allowed because the resource is removed.", + "This operation is not permitted on this ad group type.", + "The mutate is not allowed for this customer." + ], + "type": "string" + }, + "operatorError": { + "description": "The reasons for the operator error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "OPERATOR_NOT_SUPPORTED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Operator not supported." + ], + "type": "string" + }, + "partialFailureError": { + "description": "The reasons for the mutate job error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "PARTIAL_FAILURE_MODE_REQUIRED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The partial failure field was false in the request. This method requires this field be set to true." + ], + "type": "string" + }, + "paymentsAccountError": { + "description": "The reasons for errors in payments accounts service", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "NOT_SUPPORTED_FOR_MANAGER_CUSTOMER" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Manager customers are not supported for payments account service." + ], + "type": "string" + }, + "policyFindingError": { + "description": "The reasons for the policy finding error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "POLICY_FINDING", + "POLICY_TOPIC_NOT_FOUND" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The resource has been disapproved since the policy summary includes policy topics of type PROHIBITED.", + "The given policy topic does not exist." + ], + "type": "string" + }, + "policyValidationParameterError": { + "description": "The reasons for the policy validation parameter error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "UNSUPPORTED_AD_TYPE_FOR_IGNORABLE_POLICY_TOPICS", + "UNSUPPORTED_AD_TYPE_FOR_EXEMPT_POLICY_VIOLATION_KEYS", + "CANNOT_SET_BOTH_IGNORABLE_POLICY_TOPICS_AND_EXEMPT_POLICY_VIOLATION_KEYS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Ignorable policy topics are not supported for the ad type.", + "Exempt policy violation keys are not supported for the ad type.", + "Cannot set ignorable policy topics and exempt policy violation keys in the same policy violation parameter." + ], + "type": "string" + }, + "policyViolationError": { + "description": "The reasons for the policy violation error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "POLICY_ERROR" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "A policy was violated. See PolicyViolationDetails for more detail." + ], + "type": "string" + }, + "productLinkError": { + "description": "The reasons for the product link error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_OPERATION", + "CREATION_NOT_PERMITTED", + "INVITATION_EXISTS", + "LINK_EXISTS" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The requested operation is invalid. For example, you are not allowed to remove a link from a partner account.", + "The creation request is not permitted.", + "A link cannot be created because a pending link already exists.", + "A link cannot be created because an active link already exists." + ], + "type": "string" + }, + "productLinkInvitationError": { + "description": "The reasons for the product link invitation error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_STATUS", + "PERMISSION_DENIED", + "NO_INVITATION_REQUIRED", + "CUSTOMER_NOT_PERMITTED_TO_CREATE_INVITATION" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in the version.", + "The invitation status is invalid.", + "The customer doesn't have the permission to perform this action", + "An invitation could not be created, since the user already has admin access to the invited account. Use the ProductLinkService to directly create an active link.", + "The customer is not permitted to create the invitation." + ], + "type": "string" + }, + "queryError": { + "description": "An error with the query", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "QUERY_ERROR", + "BAD_ENUM_CONSTANT", + "BAD_ESCAPE_SEQUENCE", + "BAD_FIELD_NAME", + "BAD_LIMIT_VALUE", + "BAD_NUMBER", + "BAD_OPERATOR", + "BAD_PARAMETER_NAME", + "BAD_PARAMETER_VALUE", + "BAD_RESOURCE_TYPE_IN_FROM_CLAUSE", + "BAD_SYMBOL", + "BAD_VALUE", + "DATE_RANGE_TOO_WIDE", + "DATE_RANGE_TOO_NARROW", + "EXPECTED_AND", + "EXPECTED_BY", + "EXPECTED_DIMENSION_FIELD_IN_SELECT_CLAUSE", + "EXPECTED_FILTERS_ON_DATE_RANGE", + "EXPECTED_FROM", + "EXPECTED_LIST", + "EXPECTED_REFERENCED_FIELD_IN_SELECT_CLAUSE", + "EXPECTED_SELECT", + "EXPECTED_SINGLE_VALUE", + "EXPECTED_VALUE_WITH_BETWEEN_OPERATOR", + "INVALID_DATE_FORMAT", + "MISALIGNED_DATE_FOR_FILTER", + "INVALID_STRING_VALUE", + "INVALID_VALUE_WITH_BETWEEN_OPERATOR", + "INVALID_VALUE_WITH_DURING_OPERATOR", + "INVALID_VALUE_WITH_LIKE_OPERATOR", + "OPERATOR_FIELD_MISMATCH", + "PROHIBITED_EMPTY_LIST_IN_CONDITION", + "PROHIBITED_ENUM_CONSTANT", + "PROHIBITED_FIELD_COMBINATION_IN_SELECT_CLAUSE", + "PROHIBITED_FIELD_IN_ORDER_BY_CLAUSE", + "PROHIBITED_FIELD_IN_SELECT_CLAUSE", + "PROHIBITED_FIELD_IN_WHERE_CLAUSE", + "PROHIBITED_RESOURCE_TYPE_IN_FROM_CLAUSE", + "PROHIBITED_RESOURCE_TYPE_IN_SELECT_CLAUSE", + "PROHIBITED_RESOURCE_TYPE_IN_WHERE_CLAUSE", + "PROHIBITED_METRIC_IN_SELECT_OR_WHERE_CLAUSE", + "PROHIBITED_SEGMENT_IN_SELECT_OR_WHERE_CLAUSE", + "PROHIBITED_SEGMENT_WITH_METRIC_IN_SELECT_OR_WHERE_CLAUSE", + "PROHIBITED_FIELD_OR_SEGMENT_WITH_METRIC", + "LIMIT_VALUE_TOO_LOW", + "PROHIBITED_NEWLINE_IN_STRING", + "PROHIBITED_VALUE_COMBINATION_IN_LIST", + "PROHIBITED_VALUE_COMBINATION_WITH_BETWEEN_OPERATOR", + "STRING_NOT_TERMINATED", + "TOO_MANY_SEGMENTS", + "UNEXPECTED_END_OF_QUERY", + "UNEXPECTED_FROM_CLAUSE", + "UNRECOGNIZED_FIELD", + "UNEXPECTED_INPUT", + "REQUESTED_METRICS_FOR_MANAGER", + "FILTER_HAS_TOO_MANY_VALUES", + "REQUIRED_SEGMENT_FIELD_MISSING" + ], + "enumDescriptions": [ + "Name unspecified.", + "The received error code is not known in this version.", + "Returned if all other query error reasons are not applicable.", + "A condition used in the query references an invalid enum constant.", + "Query contains an invalid escape sequence.", + "Field name is invalid.", + "Limit value is invalid (for example, not a number)", + "Encountered number can not be parsed.", + "Invalid operator encountered.", + "Parameter unknown or not supported.", + "Parameter have invalid value.", + "Invalid resource type was specified in the FROM clause.", + "Non-ASCII symbol encountered outside of strings.", + "Value is invalid.", + "Date filters fail to restrict date to a range smaller than 31 days. Applicable if the query is segmented by date.", + "Filters on date/week/month/quarter have a start date after end date.", + "Expected AND between values with BETWEEN operator.", + "Expecting ORDER BY to have BY.", + "There was no dimension field selected.", + "Missing filters on date related fields.", + "Missing FROM clause.", + "The operator used in the conditions requires the value to be a list.", + "Fields used in WHERE or ORDER BY clauses are missing from the SELECT clause.", + "SELECT is missing at the beginning of query.", + "A list was passed as a value to a condition whose operator expects a single value.", + "Missing one or both values with BETWEEN operator.", + "Invalid date format. Expected 'YYYY-MM-DD'.", + "Misaligned date value for the filter. The date should be the start of a week/month/quarter if the filtered field is segments.week/segments.month/segments.quarter.", + "Value passed was not a string when it should have been. For example, it was a number or unquoted literal.", + "A String value passed to the BETWEEN operator does not parse as a date.", + "The value passed to the DURING operator is not a Date range literal", + "A value was passed to the LIKE operator.", + "An operator was provided that is inapplicable to the field being filtered.", + "A Condition was found with an empty list.", + "A condition used in the query references an unsupported enum constant.", + "Fields that are not allowed to be selected together were included in the SELECT clause.", + "A field that is not orderable was included in the ORDER BY clause.", + "A field that is not selectable was included in the SELECT clause.", + "A field that is not filterable was included in the WHERE clause.", + "Resource type specified in the FROM clause is not supported by this service.", + "A field that comes from an incompatible resource was included in the SELECT clause.", + "A field that comes from an incompatible resource was included in the WHERE clause.", + "A metric incompatible with the main resource or other selected segmenting resources was included in the SELECT or WHERE clause.", + "A segment incompatible with the main resource or other selected segmenting resources was included in the SELECT or WHERE clause.", + "A segment in the SELECT clause is incompatible with a metric in the SELECT or WHERE clause.", + "A metric may not be selected with one of the selected resource fields, or segmented by one of the selected segment fields.", + "The value passed to the limit clause is too low.", + "Query has a string containing a newline character.", + "List contains values of different types.", + "The values passed to the BETWEEN operator are not of the same type.", + "Query contains unterminated string.", + "Too many segments are specified in SELECT clause.", + "Query is incomplete and cannot be parsed.", + "FROM clause cannot be specified in this query.", + "Query contains one or more unrecognized fields.", + "Query has an unexpected extra part.", + "Metrics cannot be requested for a manager account. To retrieve metrics, issue separate requests against each client account under the manager account.", + "The number of values (right-hand-side operands) in a filter exceeds the limit.", + "Required segment field is missing." + ], + "type": "string" + }, + "quotaError": { + "description": "An error with the amount of quota remaining.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "RESOURCE_EXHAUSTED", + "ACCESS_PROHIBITED", + "RESOURCE_TEMPORARILY_EXHAUSTED", + "EXCESSIVE_SHORT_TERM_QUERY_RESOURCE_CONSUMPTION", + "EXCESSIVE_LONG_TERM_QUERY_RESOURCE_CONSUMPTION", + "PAYMENTS_PROFILE_ACTIVATION_RATE_LIMIT_EXCEEDED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Too many requests.", + "Access is prohibited.", + "Too many requests in a short amount of time.", + "Too many expensive requests from query pattern over a short amount of time.", + "Too many expensive requests from query pattern over an extended duration of time.", + "To activate ad serving in a customer account, it has to be linked with a payment profile (also known as a Billing Customer Number, or BCN), which is then billed for the costs incurred by that customer account. This error will be thrown if too many customer accounts are activated in a short period of time for the same payment profile. Once this rate limit is exceeded, the customer should wait for a week before trying again, or contact Google Ads customer support to reset the rate limits. See https://support.google.com/google-ads/answer/6372658 to learn more about this limit." + ], + "type": "string" + }, + "rangeError": { + "description": "The reasons for the range error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "TOO_LOW", + "TOO_HIGH" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Too low.", + "Too high." + ], + "type": "string" + }, + "reachPlanError": { + "description": "The reasons for the reach plan error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "NOT_FORECASTABLE_MISSING_RATE", + "NOT_FORECASTABLE_NOT_ENOUGH_INVENTORY", + "NOT_FORECASTABLE_ACCOUNT_NOT_ENABLED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Not forecastable due to missing rate card data.", + "Not forecastable due to not enough inventory.", + "Not forecastable due to account not being enabled." + ], + "type": "string" + }, + "recommendationError": { + "description": "The reasons for error in applying a recommendation", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "BUDGET_AMOUNT_TOO_SMALL", + "BUDGET_AMOUNT_TOO_LARGE", + "INVALID_BUDGET_AMOUNT", + "POLICY_ERROR", + "INVALID_BID_AMOUNT", + "ADGROUP_KEYWORD_LIMIT", + "RECOMMENDATION_ALREADY_APPLIED", + "RECOMMENDATION_INVALIDATED", + "TOO_MANY_OPERATIONS", + "NO_OPERATIONS", + "DIFFERENT_TYPES_NOT_SUPPORTED", + "DUPLICATE_RESOURCE_NAME", + "RECOMMENDATION_ALREADY_DISMISSED", + "INVALID_APPLY_REQUEST", + "RECOMMENDATION_TYPE_APPLY_NOT_SUPPORTED", + "INVALID_MULTIPLIER", + "ADVERTISING_CHANNEL_TYPE_GENERATE_NOT_SUPPORTED", + "RECOMMENDATION_TYPE_GENERATE_NOT_SUPPORTED", + "RECOMMENDATION_TYPES_CANNOT_BE_EMPTY", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_REQUIRES_BIDDING_INFO", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_REQUIRES_BIDDING_STRATEGY_TYPE", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_REQUIRES_ASSET_GROUP_INFO", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_REQUIRES_ASSET_GROUP_INFO_WITH_FINAL_URL", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_REQUIRES_COUNTRY_CODES_FOR_SEARCH_CHANNEL", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_INVALID_COUNTRY_CODE_FOR_SEARCH_CHANNEL", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_REQUIRES_LANGUAGE_CODES_FOR_SEARCH_CHANNEL", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_REQUIRES_EITHER_POSITIVE_OR_NEGATIVE_LOCATION_IDS_FOR_SEARCH_CHANNEL", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_REQUIRES_AD_GROUP_INFO_FOR_SEARCH_CHANNEL", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_REQUIRES_KEYWORDS_FOR_SEARCH_CHANNEL", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_WITH_CHANNEL_TYPE_SEARCH_AND_BIDDING_STRATEGY_TYPE_TARGET_IMPRESSION_SHARE_REQUIRES_LOCATION", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_WITH_CHANNEL_TYPE_SEARCH_AND_BIDDING_STRATEGY_TYPE_TARGET_IMPRESSION_SHARE_REQUIRES_TARGET_IMPRESSION_SHARE_MICROS", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_TARGET_IMPRESSION_SHARE_MICROS_BETWEEN_1_AND_1000000", + "CAMPAIGN_BUDGET_RECOMMENDATION_TYPE_WITH_CHANNEL_TYPE_SEARCH_AND_BIDDING_STRATEGY_TYPE_TARGET_IMPRESSION_SHARE_REQUIRES_TARGET_IMPRESSION_SHARE_INFO", + "MERCHANT_CENTER_ACCOUNT_ID_NOT_SUPPORTED_ADVERTISING_CHANNEL_TYPE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The specified budget amount is too low for example, lower than minimum currency unit or lower than ad group minimum cost-per-click.", + "The specified budget amount is too large.", + "The specified budget amount is not a valid amount, for example, not a multiple of minimum currency unit.", + "The specified keyword or ad violates ad policy.", + "The specified bid amount is not valid, for example, too many fractional digits, or negative amount.", + "The number of keywords in ad group have reached the maximum allowed.", + "The recommendation requested to apply has already been applied.", + "The recommendation requested to apply has been invalidated.", + "The number of operations in a single request exceeds the maximum allowed.", + "There are no operations in the request.", + "Operations with multiple recommendation types are not supported when partial failure mode is not enabled.", + "Request contains multiple operations with the same resource_name.", + "The recommendation requested to dismiss has already been dismissed.", + "The recommendation apply request was malformed and invalid.", + "The type of recommendation requested to apply is not supported.", + "The target multiplier specified is invalid.", + "The passed in advertising_channel_type is not supported.", + "The passed in recommendation_type is not supported.", + "One or more recommendation_types need to be passed into the generate recommendations request.", + "Bidding info is required for the CAMPAIGN_BUDGET recommendation type.", + "Bidding strategy type is required for the CAMPAIGN_BUDGET recommendation type.", + "Asset group info is required for the campaign budget recommendation type.", + "Asset group info with final url is required for the CAMPAIGN_BUDGET recommendation type.", + "Country codes are required for the CAMPAIGN_BUDGET recommendation type for SEARCH channel.", + "Country code is invalid for the CAMPAIGN_BUDGET recommendation type for SEARCH channel.", + "Language codes are required for the CAMPAIGN_BUDGET recommendation type for SEARCH channel.", + "Either positive or negative location ids are required for the CAMPAIGN_BUDGET recommendation type for SEARCH channel.", + "Ad group info is required for the CAMPAIGN_BUDGET recommendation type for SEARCH channel.", + "Keywords are required for the CAMPAIGN_BUDGET recommendation type for SEARCH channel.", + "Location is required for the CAMPAIGN_BUDGET recommendation type for bidding strategy type TARGET_IMPRESSION_SHARE.", + "Target impression share micros are required for the CAMPAIGN_BUDGET recommendation type for bidding strategy type TARGET_IMPRESSION_SHARE.", + "Target impression share micros are required to be between 1 and 1000000 for the CAMPAIGN_BUDGET recommendation type for bidding strategy type TARGET_IMPRESSION_SHARE.", + "Target impression share info is required for the CAMPAIGN_BUDGET recommendation type for bidding strategy type TARGET_IMPRESSION_SHARE.", + "Merchant Center Account ID is only supported for advertising_channel_type PERFORMANCE_MAX." + ], + "type": "string" + }, + "recommendationSubscriptionError": { + "description": "The reasons for the recommendation subscription error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version." + ], + "type": "string" + }, + "regionCodeError": { + "description": "The reasons for the region code error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_REGION_CODE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Invalid region code." + ], + "type": "string" + }, + "requestError": { + "description": "An error caused by the request", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "RESOURCE_NAME_MISSING", + "RESOURCE_NAME_MALFORMED", + "BAD_RESOURCE_ID", + "INVALID_CUSTOMER_ID", + "OPERATION_REQUIRED", + "RESOURCE_NOT_FOUND", + "INVALID_PAGE_TOKEN", + "EXPIRED_PAGE_TOKEN", + "INVALID_PAGE_SIZE", + "PAGE_SIZE_NOT_SUPPORTED", + "REQUIRED_FIELD_MISSING", + "IMMUTABLE_FIELD", + "TOO_MANY_MUTATE_OPERATIONS", + "CANNOT_BE_EXECUTED_BY_MANAGER_ACCOUNT", + "CANNOT_MODIFY_FOREIGN_FIELD", + "INVALID_ENUM_VALUE", + "DEVELOPER_TOKEN_PARAMETER_MISSING", + "LOGIN_CUSTOMER_ID_PARAMETER_MISSING", + "VALIDATE_ONLY_REQUEST_HAS_PAGE_TOKEN", + "CANNOT_RETURN_SUMMARY_ROW_FOR_REQUEST_WITHOUT_METRICS", + "CANNOT_RETURN_SUMMARY_ROW_FOR_VALIDATE_ONLY_REQUESTS", + "INCONSISTENT_RETURN_SUMMARY_ROW_VALUE", + "TOTAL_RESULTS_COUNT_NOT_ORIGINALLY_REQUESTED", + "RPC_DEADLINE_TOO_SHORT", + "UNSUPPORTED_VERSION", + "CLOUD_PROJECT_NOT_FOUND" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Resource name is required for this request.", + "Resource name provided is malformed.", + "Resource name provided is malformed.", + "Customer ID is invalid.", + "Mutate operation should have either create, update, or remove specified.", + "Requested resource not found.", + "Next page token specified in user request is invalid.", + "Next page token specified in user request has expired.", + "Page size specified in user request is invalid.", + "Setting the page size is not supported, and will be unavailable in a future version.", + "Required field is missing.", + "The field cannot be modified because it's immutable. It's also possible that the field can be modified using 'create' operation but not 'update'.", + "Received too many entries in request.", + "Request cannot be executed by a manager account.", + "Mutate request was attempting to modify a readonly field. For instance, Budget fields can be requested for Ad Group, but are read-only for adGroups:mutate.", + "Enum value is not permitted.", + "The developer-token parameter is required for all requests.", + "The login-customer-id parameter is required for this request.", + "page_token is set in the validate only request", + "return_summary_row cannot be enabled if request did not select any metrics field.", + "return_summary_row should not be enabled for validate only requests.", + "return_summary_row parameter value should be the same between requests with page_token field set and their original request.", + "The total results count cannot be returned if it was not requested in the original request.", + "Deadline specified by the client was too short.", + "This API version has been sunset and is no longer supported.", + "The Google Cloud project in the request was not found." + ], + "type": "string" + }, + "resourceAccessDeniedError": { + "description": "The reasons for the resource access denied error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "WRITE_ACCESS_DENIED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "User did not have write access." + ], + "type": "string" + }, + "resourceCountLimitExceededError": { + "description": "The reasons for the resource count limit exceeded error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "ACCOUNT_LIMIT", + "CAMPAIGN_LIMIT", + "ADGROUP_LIMIT", + "AD_GROUP_AD_LIMIT", + "AD_GROUP_CRITERION_LIMIT", + "SHARED_SET_LIMIT", + "MATCHING_FUNCTION_LIMIT", + "RESPONSE_ROW_LIMIT_EXCEEDED", + "RESOURCE_LIMIT" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Indicates that this request would exceed the number of allowed resources for the Google Ads account. The exact resource type and limit being checked can be inferred from accountLimitType.", + "Indicates that this request would exceed the number of allowed resources in a Campaign. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the Campaign involved is given by enclosingId.", + "Indicates that this request would exceed the number of allowed resources in an ad group. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the ad group involved is given by enclosingId.", + "Indicates that this request would exceed the number of allowed resources in an ad group ad. The exact resource type and limit being checked can be inferred from accountLimitType, and the enclosingId contains the ad group id followed by the ad id, separated by a single comma (,).", + "Indicates that this request would exceed the number of allowed resources in an ad group criterion. The exact resource type and limit being checked can be inferred from accountLimitType, and the enclosingId contains the ad group id followed by the criterion id, separated by a single comma (,).", + "Indicates that this request would exceed the number of allowed resources in this shared set. The exact resource type and limit being checked can be inferred from accountLimitType, and the numeric id of the shared set involved is given by enclosingId.", + "Exceeds a limit related to a matching function.", + "The response for this request would exceed the maximum number of rows that can be returned.", + "This request would exceed a limit on the number of allowed resources. The details of which type of limit was exceeded will eventually be returned in ErrorDetails." + ], + "type": "string" + }, + "searchTermInsightError": { + "description": "The reasons for the Search term insight error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "FILTERING_NOT_ALLOWED_WITH_SEGMENTS", + "LIMIT_NOT_ALLOWED_WITH_SEGMENTS", + "MISSING_FIELD_IN_SELECT_CLAUSE", + "REQUIRES_FILTER_BY_SINGLE_RESOURCE", + "SORTING_NOT_ALLOWED_WITH_SEGMENTS", + "SUMMARY_ROW_NOT_ALLOWED_WITH_SEGMENTS" + ], + "enumDescriptions": [ + "Name unspecified.", + "The received error code is not known in this version.", + "Search term insights cannot be filtered by metrics when segmenting.", + "Search term insights cannot have a LIMIT when segmenting.", + "A selected field requires another field to be selected with it.", + "A selected field/resource requires filtering by a single resource.", + "Search term insights cannot be sorted when segmenting.", + "Search term insights cannot have a summary row when segmenting." + ], + "type": "string" + }, + "settingError": { + "description": "The reasons for the setting error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "SETTING_TYPE_IS_NOT_AVAILABLE", + "SETTING_TYPE_IS_NOT_COMPATIBLE_WITH_CAMPAIGN", + "TARGETING_SETTING_CONTAINS_INVALID_CRITERION_TYPE_GROUP", + "TARGETING_SETTING_DEMOGRAPHIC_CRITERION_TYPE_GROUPS_MUST_BE_SET_TO_TARGET_ALL", + "TARGETING_SETTING_CANNOT_CHANGE_TARGET_ALL_TO_FALSE_FOR_DEMOGRAPHIC_CRITERION_TYPE_GROUP", + "DYNAMIC_SEARCH_ADS_SETTING_AT_LEAST_ONE_FEED_ID_MUST_BE_PRESENT", + "DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_INVALID_DOMAIN_NAME", + "DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_SUBDOMAIN_NAME", + "DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_INVALID_LANGUAGE_CODE", + "TARGET_ALL_IS_NOT_ALLOWED_FOR_PLACEMENT_IN_SEARCH_CAMPAIGN", + "SETTING_VALUE_NOT_COMPATIBLE_WITH_CAMPAIGN", + "BID_ONLY_IS_NOT_ALLOWED_TO_BE_MODIFIED_WITH_CUSTOMER_MATCH_TARGETING" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The campaign setting is not available for this Google Ads account.", + "The setting is not compatible with the campaign.", + "The supplied TargetingSetting contains an invalid CriterionTypeGroup. See CriterionTypeGroup documentation for CriterionTypeGroups allowed in Campaign or AdGroup TargetingSettings.", + "TargetingSetting must not explicitly set any of the Demographic CriterionTypeGroups (AGE_RANGE, GENDER, PARENT, INCOME_RANGE) to false (it's okay to not set them at all, in which case the system will set them to true automatically).", + "TargetingSetting cannot change any of the Demographic CriterionTypeGroups (AGE_RANGE, GENDER, PARENT, INCOME_RANGE) from true to false.", + "At least one feed id should be present.", + "The supplied DynamicSearchAdsSetting contains an invalid domain name.", + "The supplied DynamicSearchAdsSetting contains a subdomain name.", + "The supplied DynamicSearchAdsSetting contains an invalid language code.", + "TargetingSettings in search campaigns should not have CriterionTypeGroup.PLACEMENT set to targetAll.", + "The setting value is not compatible with the campaign type.", + "Switching from observation setting to targeting setting is not allowed for Customer Match lists. See https://support.google.com/google-ads/answer/6299717." + ], + "type": "string" + }, + "shareablePreviewError": { + "description": "The reasons for the shareable preview error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "TOO_MANY_ASSET_GROUPS_IN_REQUEST", + "ASSET_GROUP_DOES_NOT_EXIST_UNDER_THIS_CUSTOMER" + ], + "enumDescriptions": [ + "Enum unspecified.", + "Used for return value only. Represents value unknown in this version.", + "The maximum of 10 asset groups was exceeded.", + "asset group does not exist under this customer." + ], + "type": "string" + }, + "sharedCriterionError": { + "description": "The reasons for the shared criterion error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CRITERION_TYPE_NOT_ALLOWED_FOR_SHARED_SET_TYPE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The criterion is not appropriate for the shared set type." + ], + "type": "string" + }, + "sharedSetError": { + "description": "The reasons for the shared set error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CUSTOMER_CANNOT_CREATE_SHARED_SET_OF_THIS_TYPE", + "DUPLICATE_NAME", + "SHARED_SET_REMOVED", + "SHARED_SET_IN_USE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The customer cannot create this type of shared set.", + "A shared set with this name already exists.", + "Removed shared sets cannot be mutated.", + "The shared set cannot be removed because it is in use." + ], + "type": "string" + }, + "shoppingProductError": { + "description": "The reasons for error in querying shopping product.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "MISSING_CAMPAIGN_FILTER", + "MISSING_AD_GROUP_FILTER", + "UNSUPPORTED_DATE_SEGMENTATION" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "A filter on the `campaign` resource name is missing.", + "A filter on the `ad_group` resource name is missing.", + "Date segmentation is not supported." + ], + "type": "string" + }, + "sizeLimitError": { + "description": "The reasons for the size limit error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "REQUEST_SIZE_LIMIT_EXCEEDED", + "RESPONSE_SIZE_LIMIT_EXCEEDED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The number of entries in the request exceeds the system limit, or the contents of the operations exceed transaction limits due to their size or complexity. Try reducing the number of entries per request.", + "The number of entries in the response exceeds the system limit." + ], + "type": "string" + }, + "smartCampaignError": { + "description": "The reasons for the Smart campaign error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_BUSINESS_LOCATION_ID", + "INVALID_CAMPAIGN", + "BUSINESS_NAME_OR_BUSINESS_LOCATION_ID_MISSING", + "REQUIRED_SUGGESTION_FIELD_MISSING", + "GEO_TARGETS_REQUIRED", + "CANNOT_DETERMINE_SUGGESTION_LOCALE", + "FINAL_URL_NOT_CRAWLABLE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The business location id is invalid.", + "The SmartCampaignSetting resource is only applicable for campaigns with advertising channel type SMART.", + "The business name or business location id is required.", + "A Smart campaign suggestion request field is required.", + "A location list or proximity is required.", + "The locale could not be determined.", + "The final URL could not be crawled." + ], + "type": "string" + }, + "stringFormatError": { + "description": "The reasons for the string format error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "ILLEGAL_CHARS", + "INVALID_FORMAT" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The input string value contains disallowed characters.", + "The input string value is invalid for the associated field." + ], + "type": "string" + }, + "stringLengthError": { + "description": "The reasons for the string length error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "EMPTY", + "TOO_SHORT", + "TOO_LONG" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The specified field should have a least one non-whitespace character in it.", + "Too short.", + "Too long." + ], + "type": "string" + }, + "thirdPartyAppAnalyticsLinkError": { + "description": "The reasons for the third party app analytics link mutate error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_ANALYTICS_PROVIDER_ID", + "INVALID_MOBILE_APP_ID", + "MOBILE_APP_IS_NOT_ENABLED", + "CANNOT_REGENERATE_SHAREABLE_LINK_ID_FOR_REMOVED_LINK" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The provided analytics provider ID is invalid.", + "The provided mobile app ID is invalid.", + "The mobile app corresponding to the provided app ID is not active/enabled.", + "Regenerating shareable link ID is only allowed on active links" + ], + "type": "string" + }, + "timeZoneError": { + "description": "The reasons for the time zone error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_TIME_ZONE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Time zone is not valid." + ], + "type": "string" + }, + "urlFieldError": { + "description": "An error with a URL field mutate.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "INVALID_TRACKING_URL_TEMPLATE", + "INVALID_TAG_IN_TRACKING_URL_TEMPLATE", + "MISSING_TRACKING_URL_TEMPLATE_TAG", + "MISSING_PROTOCOL_IN_TRACKING_URL_TEMPLATE", + "INVALID_PROTOCOL_IN_TRACKING_URL_TEMPLATE", + "MALFORMED_TRACKING_URL_TEMPLATE", + "MISSING_HOST_IN_TRACKING_URL_TEMPLATE", + "INVALID_TLD_IN_TRACKING_URL_TEMPLATE", + "REDUNDANT_NESTED_TRACKING_URL_TEMPLATE_TAG", + "INVALID_FINAL_URL", + "INVALID_TAG_IN_FINAL_URL", + "REDUNDANT_NESTED_FINAL_URL_TAG", + "MISSING_PROTOCOL_IN_FINAL_URL", + "INVALID_PROTOCOL_IN_FINAL_URL", + "MALFORMED_FINAL_URL", + "MISSING_HOST_IN_FINAL_URL", + "INVALID_TLD_IN_FINAL_URL", + "INVALID_FINAL_MOBILE_URL", + "INVALID_TAG_IN_FINAL_MOBILE_URL", + "REDUNDANT_NESTED_FINAL_MOBILE_URL_TAG", + "MISSING_PROTOCOL_IN_FINAL_MOBILE_URL", + "INVALID_PROTOCOL_IN_FINAL_MOBILE_URL", + "MALFORMED_FINAL_MOBILE_URL", + "MISSING_HOST_IN_FINAL_MOBILE_URL", + "INVALID_TLD_IN_FINAL_MOBILE_URL", + "INVALID_FINAL_APP_URL", + "INVALID_TAG_IN_FINAL_APP_URL", + "REDUNDANT_NESTED_FINAL_APP_URL_TAG", + "MULTIPLE_APP_URLS_FOR_OSTYPE", + "INVALID_OSTYPE", + "INVALID_PROTOCOL_FOR_APP_URL", + "INVALID_PACKAGE_ID_FOR_APP_URL", + "URL_CUSTOM_PARAMETERS_COUNT_EXCEEDS_LIMIT", + "INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_KEY", + "INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_VALUE", + "INVALID_TAG_IN_URL_CUSTOM_PARAMETER_VALUE", + "REDUNDANT_NESTED_URL_CUSTOM_PARAMETER_TAG", + "MISSING_PROTOCOL", + "INVALID_PROTOCOL", + "INVALID_URL", + "DESTINATION_URL_DEPRECATED", + "INVALID_TAG_IN_URL", + "MISSING_URL_TAG", + "DUPLICATE_URL_ID", + "INVALID_URL_ID", + "FINAL_URL_SUFFIX_MALFORMED", + "INVALID_TAG_IN_FINAL_URL_SUFFIX", + "INVALID_TOP_LEVEL_DOMAIN", + "MALFORMED_TOP_LEVEL_DOMAIN", + "MALFORMED_URL", + "MISSING_HOST", + "NULL_CUSTOM_PARAMETER_VALUE", + "VALUE_TRACK_PARAMETER_NOT_SUPPORTED", + "UNSUPPORTED_APP_STORE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The tracking url template is invalid.", + "The tracking url template contains invalid tag.", + "The tracking url template must contain at least one tag (for example, {lpurl}), This applies only to tracking url template associated with website ads or product ads.", + "The tracking url template must start with a valid protocol (or lpurl tag).", + "The tracking url template starts with an invalid protocol.", + "The tracking url template contains illegal characters.", + "The tracking url template must contain a host name (or lpurl tag).", + "The tracking url template has an invalid or missing top level domain extension.", + "The tracking url template contains nested occurrences of the same conditional tag (for example, {ifmobile:{ifmobile:x}}).", + "The final url is invalid.", + "The final url contains invalid tag.", + "The final url contains nested occurrences of the same conditional tag (for example, {ifmobile:{ifmobile:x}}).", + "The final url must start with a valid protocol.", + "The final url starts with an invalid protocol.", + "The final url contains illegal characters.", + "The final url must contain a host name.", + "The tracking url template has an invalid or missing top level domain extension.", + "The final mobile url is invalid.", + "The final mobile url contains invalid tag.", + "The final mobile url contains nested occurrences of the same conditional tag (for example, {ifmobile:{ifmobile:x}}).", + "The final mobile url must start with a valid protocol.", + "The final mobile url starts with an invalid protocol.", + "The final mobile url contains illegal characters.", + "The final mobile url must contain a host name.", + "The tracking url template has an invalid or missing top level domain extension.", + "The final app url is invalid.", + "The final app url contains invalid tag.", + "The final app url contains nested occurrences of the same conditional tag (for example, {ifmobile:{ifmobile:x}}).", + "More than one app url found for the same OS type.", + "The OS type given for an app url is not valid.", + "The protocol given for an app url is not valid. (For example, \"android-app://\")", + "The package id (app id) given for an app url is not valid.", + "The number of url custom parameters for an resource exceeds the maximum limit allowed.", + "An invalid character appears in the parameter key.", + "An invalid character appears in the parameter value.", + "The url custom parameter value fails url tag validation.", + "The custom parameter contains nested occurrences of the same conditional tag (for example, {ifmobile:{ifmobile:x}}).", + "The protocol (http:// or https://) is missing.", + "Unsupported protocol in URL. Only http and https are supported.", + "The url is invalid.", + "Destination Url is deprecated.", + "The url contains invalid tag.", + "The url must contain at least one tag (for example, {lpurl}).", + "Duplicate url id.", + "Invalid url id.", + "The final url suffix cannot begin with '?' or '&' characters and must be a valid query string.", + "The final url suffix cannot contain {lpurl} related or {ignore} tags.", + "The top level domain is invalid, for example, not a public top level domain listed in publicsuffix.org.", + "Malformed top level domain in URL.", + "Malformed URL.", + "No host found in URL.", + "Custom parameter value cannot be null.", + "Track parameter is not supported.", + "The app store connected to the url is not supported." + ], + "type": "string" + }, + "userDataError": { + "description": "The reasons for the user data error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "OPERATIONS_FOR_CUSTOMER_MATCH_NOT_ALLOWED", + "TOO_MANY_USER_IDENTIFIERS", + "USER_LIST_NOT_APPLICABLE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Customer is not allowed to perform operations related to Customer Match.", + "Maximum number of user identifiers allowed for each request is 100 and for each operation is 20.", + "Current user list is not applicable for the given customer." + ], + "type": "string" + }, + "userListCustomerTypeError": { + "description": "The reasons for a user list customer type error.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CONFLICTING_CUSTOMER_TYPES", + "NO_ACCESS_TO_USER_LIST", + "USERLIST_NOT_ELIGIBLE", + "CONVERSION_TRACKING_NOT_ENABLED_OR_NOT_MCC_MANAGER_ACCOUNT", + "TOO_MANY_USER_LISTS_FOR_THE_CUSTOMER_TYPE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Cannot add the conflicting customer types to the same user list. Conflicting labels: 1. Purchasers - Converted Leads 2. Purchasers - Qualified Leads 3. Purchasers - Cart Abandoners 4. Qualified Leads - Converted Leads 5. Disengaged customers - Converted Leads 6. Disengaged customers - Qualified Leads 7. Disengaged customers - Cart Abandoners 8. Converted Leads - Loyalty Tier X Members (X = 1..7) 9. Qualified Leads - Loyalty Tier X Members (X = 1..7) 10. Loyalty Tier X Members - Loyalty Tier Y Members (X != Y)", + "The account does not have access to the user list.", + "The given user list is not eligible for applying customer types. The user list must belong to one of the following types: CRM_BASED, RULE_BASED, ADVERTISER_DATA_MODEL_BASED, GCN.", + "To edit the user list customer type, conversion tracking must be enabled in your account. If cross-tracking is enabled, your account must be a MCC manager account to modify user list customer types. More info at https://support.google.com/google-ads/answer/3030657", + "Too many user lists for the customer type." + ], + "type": "string" + }, + "userListError": { + "description": "The reasons for the user list error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "EXTERNAL_REMARKETING_USER_LIST_MUTATE_NOT_SUPPORTED", + "CONCRETE_TYPE_REQUIRED", + "CONVERSION_TYPE_ID_REQUIRED", + "DUPLICATE_CONVERSION_TYPES", + "INVALID_CONVERSION_TYPE", + "INVALID_DESCRIPTION", + "INVALID_NAME", + "INVALID_TYPE", + "CAN_NOT_ADD_LOGICAL_LIST_AS_LOGICAL_LIST_OPERAND", + "INVALID_USER_LIST_LOGICAL_RULE_OPERAND", + "NAME_ALREADY_USED", + "NEW_CONVERSION_TYPE_NAME_REQUIRED", + "CONVERSION_TYPE_NAME_ALREADY_USED", + "OWNERSHIP_REQUIRED_FOR_SET", + "USER_LIST_MUTATE_NOT_SUPPORTED", + "INVALID_RULE", + "INVALID_DATE_RANGE", + "CAN_NOT_MUTATE_SENSITIVE_USERLIST", + "MAX_NUM_RULEBASED_USERLISTS", + "CANNOT_MODIFY_BILLABLE_RECORD_COUNT", + "APP_ID_NOT_SET", + "USERLIST_NAME_IS_RESERVED_FOR_SYSTEM_LIST", + "ADVERTISER_NOT_ON_ALLOWLIST_FOR_USING_UPLOADED_DATA", + "RULE_TYPE_IS_NOT_SUPPORTED", + "CAN_NOT_ADD_A_SIMILAR_USERLIST_AS_LOGICAL_LIST_OPERAND", + "CAN_NOT_MIX_CRM_BASED_IN_LOGICAL_LIST_WITH_OTHER_LISTS", + "APP_ID_NOT_ALLOWED", + "CANNOT_MUTATE_SYSTEM_LIST", + "MOBILE_APP_IS_SENSITIVE", + "SEED_LIST_DOES_NOT_EXIST", + "INVALID_SEED_LIST_ACCESS_REASON", + "INVALID_SEED_LIST_TYPE", + "INVALID_COUNTRY_CODES", + "PARTNER_AUDIENCE_SOURCE_NOT_SUPPORTED_FOR_USER_LIST_TYPE", + "COMMERCE_PARTNER_NOT_ALLOWED", + "PARTNER_AUDIENCE_INFO_NOT_SUPPORTED_FOR_USER_LIST_TYPE", + "PARTNER_MANAGER_ACCOUNT_DISALLOWED", + "PARTNER_NOT_ALLOWLISTED_FOR_THIRD_PARTY_PARTNER_DATA", + "ADVERTISER_TOS_NOT_ACCEPTED", + "ADVERTISER_PARTNER_LINK_MISSING", + "ADVERTISER_NOT_ALLOWLISTED_FOR_THIRD_PARTY_PARTNER_DATA", + "ACCOUNT_SETTING_TYPE_NOT_ALLOWED" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Creating and updating external remarketing user lists is not supported.", + "Concrete type of user list is required.", + "Creating/updating user list conversion types requires specifying the conversion type Id.", + "Remarketing user list cannot have duplicate conversion types.", + "Conversion type is invalid/unknown.", + "User list description is empty or invalid.", + "User list name is empty or invalid.", + "Type of the UserList does not match.", + "Embedded logical user lists are not allowed.", + "User list rule operand is invalid.", + "Name is already being used for another user list for the account.", + "Name is required when creating a new conversion type.", + "The given conversion type name has been used.", + "Only an owner account may edit a user list.", + "Creating user list without setting type in oneof user_list field, or creating/updating read-only user list types is not allowed.", + "Rule is invalid.", + "The specified date range is empty.", + "A UserList which is privacy sensitive or legal rejected cannot be mutated by external users.", + "Maximum number of rulebased user lists a customer can have.", + "BasicUserList's billable record field cannot be modified once it is set.", + "crm_based_user_list.app_id field must be set when upload_key_type is MOBILE_ADVERTISING_ID.", + "Name of the user list is reserved for system generated lists and cannot be used.", + "Advertiser needs to be on the allow-list to use remarketing lists created from advertiser uploaded data (for example, Customer Match lists).", + "The provided rule_type is not supported for the user list.", + "Similar user list cannot be used as a logical user list operand.", + "Logical user list should not have a mix of CRM based user list and other types of lists in its rules.", + "crm_based_user_list.app_id field can only be set when upload_key_type is MOBILE_ADVERTISING_ID.", + "Google system generated user lists cannot be mutated.", + "The mobile app associated with the remarketing list is sensitive.", + "One or more given seed lists do not exist.", + "One or more given seed lists are not accessible to the current user.", + "One or more given seed lists have an unsupported type.", + "One or more invalid country codes are added to Lookalike UserList.", + "The partner audience source is not supported for the user list type.", + "The commerce partner is only supported for COMMERCE_AUDIENCE.", + "The partner audience info is not supported for the user list type.", + "Manager account is not allowed to create this UserList.", + "This UserList can only be created by allowlisted partners.", + "The advertiser must accept the Terms of Service to create this UserList.", + "The advertiser must have an active link to the partner to create this UserList.", + "This UserList can only be created for allowlisted advertisers.", + "This UserList is not allowed for this account type." + ], + "type": "string" + }, + "videoCampaignError": { + "description": "An error with a Video Campaign mutate.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "MUTATE_REQUIRES_RESERVATION" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Cannot modify the video campaign without reservation. See https://support.google.com/google-ads/answer/9547606." + ], + "type": "string" + }, + "youtubeVideoRegistrationError": { + "description": "The reasons for YouTube video registration errors.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "VIDEO_NOT_FOUND", + "VIDEO_NOT_ACCESSIBLE", + "VIDEO_NOT_ELIGIBLE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "Video to be registered wasn't found.", + "Video to be registered is not accessible (for example, private).", + "Video to be registered is not eligible (for example, mature content)." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Errors__ErrorDetails": { + "description": "Additional error details.", + "id": "GoogleAdsSearchads360V23Errors__ErrorDetails", + "properties": { + "budgetPerDayMinimumErrorDetails": { + "$ref": "GoogleAdsSearchads360V23Errors__BudgetPerDayMinimumErrorDetails", + "description": "Details for a budget below per-day minimum error." + }, + "policyFindingDetails": { + "$ref": "GoogleAdsSearchads360V23Errors__PolicyFindingDetails", + "description": "Describes policy violation findings." + }, + "policyViolationDetails": { + "$ref": "GoogleAdsSearchads360V23Errors__PolicyViolationDetails", + "description": "Describes an ad policy violation." + }, + "quotaErrorDetails": { + "$ref": "GoogleAdsSearchads360V23Errors__QuotaErrorDetails", + "description": "Details on the quota error, including the scope (account or developer), the rate bucket name and the retry delay." + }, + "resourceCountDetails": { + "$ref": "GoogleAdsSearchads360V23Errors__ResourceCountDetails", + "description": "Details for a resource count limit exceeded error." + }, + "unpublishedErrorCode": { + "description": "The error code that should have been returned, but wasn't. This is used when the error code is not published in the client specified version.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Errors__ErrorLocation": { + "description": "Describes the part of the request proto that caused the error.", + "id": "GoogleAdsSearchads360V23Errors__ErrorLocation", + "properties": { + "fieldPathElements": { + "description": "A field path that indicates which field was invalid in the request.", + "items": { + "$ref": "GoogleAdsSearchads360V23Errors_ErrorLocation_FieldPathElement" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Errors__PolicyFindingDetails": { + "description": "Error returned as part of a mutate response. This error indicates one or more policy findings in the fields of a resource.", + "id": "GoogleAdsSearchads360V23Errors__PolicyFindingDetails", + "properties": { + "policyTopicEntries": { + "description": "The list of policy topics for the resource. Contains the PROHIBITED or FULLY_LIMITED policy topic entries that prevented the resource from being saved (among any other entries the resource may also have).", + "items": { + "$ref": "GoogleAdsSearchads360V23Common__PolicyTopicEntry" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Errors__PolicyViolationDetails": { + "description": "Error returned as part of a mutate response. This error indicates single policy violation by some text in one of the fields.", + "id": "GoogleAdsSearchads360V23Errors__PolicyViolationDetails", + "properties": { + "externalPolicyDescription": { + "description": "Human readable description of policy violation.", + "type": "string" + }, + "externalPolicyName": { + "description": "Human readable name of the policy.", + "type": "string" + }, + "isExemptible": { + "description": "Whether user can file an exemption request for this violation.", + "type": "boolean" + }, + "key": { + "$ref": "GoogleAdsSearchads360V23Common__PolicyViolationKey", + "description": "Unique identifier for this violation. If policy is exemptible, this key may be used to request exemption." + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Errors__QuotaErrorDetails": { + "description": "Additional quota error details when there is QuotaError.", + "id": "GoogleAdsSearchads360V23Errors__QuotaErrorDetails", + "properties": { + "rateName": { + "description": "The high level description of the quota bucket. Examples are \"Get requests for standard access\" or \"Requests per account\".", + "type": "string" + }, + "rateScope": { + "description": "The rate scope of the quota limit.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "ACCOUNT", + "DEVELOPER" + ], + "enumDescriptions": [ + "Unspecified enum", + "Used for return value only. Represents value unknown in this version.", + "Per customer account quota", + "Per project quota" + ], + "type": "string" + }, + "retryDelay": { + "description": "Backoff period that customers should wait before sending next request.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Errors__ResourceCountDetails": { + "description": "Error details returned when an resource count limit was exceeded.", + "id": "GoogleAdsSearchads360V23Errors__ResourceCountDetails", + "properties": { + "enclosingId": { + "description": "The ID of the resource whose limit was exceeded. External customer ID if the limit is for a customer.", + "type": "string" + }, + "enclosingResource": { + "description": "The name of the resource ( etc.) whose limit was exceeded.", + "type": "string" + }, + "existingCount": { + "description": "The count of existing entities.", + "format": "int32", + "type": "integer" + }, + "limit": { + "description": "The limit which was exceeded.", + "format": "int32", + "type": "integer" + }, + "limitType": { + "description": "The resource limit type which was exceeded.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CAMPAIGNS_PER_CUSTOMER", + "BASE_CAMPAIGNS_PER_CUSTOMER", + "EXPERIMENT_CAMPAIGNS_PER_CUSTOMER", + "HOTEL_CAMPAIGNS_PER_CUSTOMER", + "SMART_SHOPPING_CAMPAIGNS_PER_CUSTOMER", + "AD_GROUPS_PER_CAMPAIGN", + "AD_GROUPS_PER_SHOPPING_CAMPAIGN", + "AD_GROUPS_PER_HOTEL_CAMPAIGN", + "REPORTING_AD_GROUPS_PER_LOCAL_CAMPAIGN", + "REPORTING_AD_GROUPS_PER_APP_CAMPAIGN", + "MANAGED_AD_GROUPS_PER_SMART_CAMPAIGN", + "AD_GROUP_CRITERIA_PER_CUSTOMER", + "BASE_AD_GROUP_CRITERIA_PER_CUSTOMER", + "EXPERIMENT_AD_GROUP_CRITERIA_PER_CUSTOMER", + "AD_GROUP_CRITERIA_PER_CAMPAIGN", + "CAMPAIGN_CRITERIA_PER_CUSTOMER", + "BASE_CAMPAIGN_CRITERIA_PER_CUSTOMER", + "EXPERIMENT_CAMPAIGN_CRITERIA_PER_CUSTOMER", + "WEBPAGE_CRITERIA_PER_CUSTOMER", + "BASE_WEBPAGE_CRITERIA_PER_CUSTOMER", + "EXPERIMENT_WEBPAGE_CRITERIA_PER_CUSTOMER", + "COMBINED_AUDIENCE_CRITERIA_PER_AD_GROUP", + "CUSTOMER_NEGATIVE_PLACEMENT_CRITERIA_PER_CUSTOMER", + "CUSTOMER_NEGATIVE_YOUTUBE_CHANNEL_CRITERIA_PER_CUSTOMER", + "CRITERIA_PER_AD_GROUP", + "LISTING_GROUPS_PER_AD_GROUP", + "EXPLICITLY_SHARED_BUDGETS_PER_CUSTOMER", + "IMPLICITLY_SHARED_BUDGETS_PER_CUSTOMER", + "COMBINED_AUDIENCE_CRITERIA_PER_CAMPAIGN", + "NEGATIVE_KEYWORDS_PER_CAMPAIGN", + "NEGATIVE_PLACEMENTS_PER_CAMPAIGN", + "GEO_TARGETS_PER_CAMPAIGN", + "NEGATIVE_IP_BLOCKS_PER_CAMPAIGN", + "PROXIMITIES_PER_CAMPAIGN", + "LISTING_SCOPES_PER_SHOPPING_CAMPAIGN", + "LISTING_SCOPES_PER_NON_SHOPPING_CAMPAIGN", + "NEGATIVE_KEYWORDS_PER_SHARED_SET", + "NEGATIVE_PLACEMENTS_PER_SHARED_SET", + "SHARED_SETS_PER_CUSTOMER_FOR_TYPE_DEFAULT", + "SHARED_SETS_PER_CUSTOMER_FOR_NEGATIVE_PLACEMENT_LIST_LOWER", + "HOTEL_ADVANCE_BOOKING_WINDOW_BID_MODIFIERS_PER_AD_GROUP", + "BIDDING_STRATEGIES_PER_CUSTOMER", + "BASIC_USER_LISTS_PER_CUSTOMER", + "LOGICAL_USER_LISTS_PER_CUSTOMER", + "RULE_BASED_USER_LISTS_PER_CUSTOMER", + "BASE_AD_GROUP_ADS_PER_CUSTOMER", + "EXPERIMENT_AD_GROUP_ADS_PER_CUSTOMER", + "AD_GROUP_ADS_PER_CAMPAIGN", + "TEXT_AND_OTHER_ADS_PER_AD_GROUP", + "IMAGE_ADS_PER_AD_GROUP", + "SHOPPING_SMART_ADS_PER_AD_GROUP", + "RESPONSIVE_SEARCH_ADS_PER_AD_GROUP", + "APP_ADS_PER_AD_GROUP", + "APP_ENGAGEMENT_ADS_PER_AD_GROUP", + "LOCAL_ADS_PER_AD_GROUP", + "VIDEO_ADS_PER_AD_GROUP", + "LEAD_FORM_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "PROMOTION_CUSTOMER_ASSETS_PER_CUSTOMER", + "PROMOTION_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "PROMOTION_AD_GROUP_ASSETS_PER_AD_GROUP", + "CALLOUT_CUSTOMER_ASSETS_PER_CUSTOMER", + "CALLOUT_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "CALLOUT_AD_GROUP_ASSETS_PER_AD_GROUP", + "SITELINK_CUSTOMER_ASSETS_PER_CUSTOMER", + "SITELINK_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "SITELINK_AD_GROUP_ASSETS_PER_AD_GROUP", + "STRUCTURED_SNIPPET_CUSTOMER_ASSETS_PER_CUSTOMER", + "STRUCTURED_SNIPPET_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "STRUCTURED_SNIPPET_AD_GROUP_ASSETS_PER_AD_GROUP", + "MOBILE_APP_CUSTOMER_ASSETS_PER_CUSTOMER", + "MOBILE_APP_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "MOBILE_APP_AD_GROUP_ASSETS_PER_AD_GROUP", + "HOTEL_CALLOUT_CUSTOMER_ASSETS_PER_CUSTOMER", + "HOTEL_CALLOUT_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "HOTEL_CALLOUT_AD_GROUP_ASSETS_PER_AD_GROUP", + "CALL_CUSTOMER_ASSETS_PER_CUSTOMER", + "CALL_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "CALL_AD_GROUP_ASSETS_PER_AD_GROUP", + "PRICE_CUSTOMER_ASSETS_PER_CUSTOMER", + "PRICE_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "PRICE_AD_GROUP_ASSETS_PER_AD_GROUP", + "AD_IMAGE_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "AD_IMAGE_AD_GROUP_ASSETS_PER_AD_GROUP", + "PAGE_FEED_ASSET_SETS_PER_CUSTOMER", + "DYNAMIC_EDUCATION_FEED_ASSET_SETS_PER_CUSTOMER", + "ASSETS_PER_PAGE_FEED_ASSET_SET", + "ASSETS_PER_DYNAMIC_EDUCATION_FEED_ASSET_SET", + "DYNAMIC_REAL_ESTATE_ASSET_SETS_PER_CUSTOMER", + "ASSETS_PER_DYNAMIC_REAL_ESTATE_ASSET_SET", + "DYNAMIC_CUSTOM_ASSET_SETS_PER_CUSTOMER", + "ASSETS_PER_DYNAMIC_CUSTOM_ASSET_SET", + "DYNAMIC_HOTELS_AND_RENTALS_ASSET_SETS_PER_CUSTOMER", + "ASSETS_PER_DYNAMIC_HOTELS_AND_RENTALS_ASSET_SET", + "DYNAMIC_LOCAL_ASSET_SETS_PER_CUSTOMER", + "ASSETS_PER_DYNAMIC_LOCAL_ASSET_SET", + "DYNAMIC_FLIGHTS_ASSET_SETS_PER_CUSTOMER", + "ASSETS_PER_DYNAMIC_FLIGHTS_ASSET_SET", + "DYNAMIC_TRAVEL_ASSET_SETS_PER_CUSTOMER", + "ASSETS_PER_DYNAMIC_TRAVEL_ASSET_SET", + "DYNAMIC_JOBS_ASSET_SETS_PER_CUSTOMER", + "ASSETS_PER_DYNAMIC_JOBS_ASSET_SET", + "BUSINESS_NAME_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "BUSINESS_LOGO_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "VERSIONS_PER_AD", + "USER_FEEDS_PER_CUSTOMER", + "SYSTEM_FEEDS_PER_CUSTOMER", + "FEED_ATTRIBUTES_PER_FEED", + "FEED_ITEMS_PER_CUSTOMER", + "CAMPAIGN_FEEDS_PER_CUSTOMER", + "BASE_CAMPAIGN_FEEDS_PER_CUSTOMER", + "EXPERIMENT_CAMPAIGN_FEEDS_PER_CUSTOMER", + "AD_GROUP_FEEDS_PER_CUSTOMER", + "BASE_AD_GROUP_FEEDS_PER_CUSTOMER", + "EXPERIMENT_AD_GROUP_FEEDS_PER_CUSTOMER", + "AD_GROUP_FEEDS_PER_CAMPAIGN", + "FEED_ITEM_SETS_PER_CUSTOMER", + "FEED_ITEMS_PER_FEED_ITEM_SET", + "CAMPAIGN_EXPERIMENTS_PER_CUSTOMER", + "EXPERIMENT_ARMS_PER_VIDEO_EXPERIMENT", + "OWNED_LABELS_PER_CUSTOMER", + "LABELS_PER_CAMPAIGN", + "LABELS_PER_AD_GROUP", + "LABELS_PER_AD_GROUP_AD", + "LABELS_PER_AD_GROUP_CRITERION", + "TARGET_CUSTOMERS_PER_LABEL", + "KEYWORD_PLANS_PER_USER_PER_CUSTOMER", + "KEYWORD_PLAN_AD_GROUP_KEYWORDS_PER_KEYWORD_PLAN", + "KEYWORD_PLAN_AD_GROUPS_PER_KEYWORD_PLAN", + "KEYWORD_PLAN_NEGATIVE_KEYWORDS_PER_KEYWORD_PLAN", + "KEYWORD_PLAN_CAMPAIGNS_PER_KEYWORD_PLAN", + "CONVERSION_ACTIONS_PER_CUSTOMER", + "BATCH_JOB_OPERATIONS_PER_JOB", + "BATCH_JOBS_PER_CUSTOMER", + "HOTEL_CHECK_IN_DATE_RANGE_BID_MODIFIERS_PER_AD_GROUP", + "SHARED_SETS_PER_ACCOUNT_FOR_ACCOUNT_LEVEL_NEGATIVE_KEYWORDS", + "ACCOUNT_LEVEL_NEGATIVE_KEYWORDS_PER_SHARED_SET", + "ENABLED_ASSET_PER_HOTEL_PROPERTY_ASSET_SET", + "ENABLED_HOTEL_PROPERTY_ASSET_LINKS_PER_ASSET_GROUP", + "BRANDS_PER_SHARED_SET", + "ENABLED_BRAND_LIST_CRITERIA_PER_CAMPAIGN", + "SHARED_SETS_PER_ACCOUNT_FOR_BRAND", + "LOOKALIKE_USER_LISTS_PER_CUSTOMER", + "LOGO_CAMPAIGN_ASSETS_PER_CAMPAIGN", + "BUSINESS_MESSAGE_ASSET_LINKS_PER_CUSTOMER", + "WHATSAPP_BUSINESS_MESSAGE_ASSET_LINKS_PER_CAMPAIGN", + "WHATSAPP_BUSINESS_MESSAGE_ASSET_LINKS_PER_AD_GROUP", + "BRAND_LIST_CRITERIA_PER_AD_GROUP" + ], + "enumDescriptions": [ + "No value has been specified.", + "Used for return value only. Represents an unclassified operation unknown in this version.", + "Number of ENABLED and PAUSED campaigns per customer.", + "Number of ENABLED and PAUSED base campaigns per customer.", + "Number of ENABLED and PAUSED experiment campaigns per customer.", + "Number of ENABLED and PAUSED Hotel campaigns per customer.", + "Number of ENABLED and PAUSED Smart Shopping campaigns per customer.", + "Number of ENABLED ad groups per campaign.", + "Number of ENABLED ad groups per Shopping campaign.", + "Number of ENABLED ad groups per Hotel campaign.", + "Number of ENABLED reporting ad groups per local campaign.", + "Number of ENABLED reporting ad groups per App campaign. It includes app campaign and app campaign for engagement.", + "Number of ENABLED managed ad groups per smart campaign.", + "Number of ENABLED ad group criteria per customer. An ad group criterion is considered as ENABLED if: 1. it's not REMOVED 2. its ad group is not REMOVED 3. its campaign is not REMOVED.", + "Number of ad group criteria across all base campaigns for a customer.", + "Number of ad group criteria across all experiment campaigns for a customer.", + "Number of ENABLED ad group criteria per campaign. An ad group criterion is considered as ENABLED if: 1. it's not REMOVED 2. its ad group is not REMOVED.", + "Number of ENABLED campaign criteria per customer.", + "Number of ENABLED campaign criteria across all base campaigns for a customer.", + "Number of ENABLED campaign criteria across all experiment campaigns for a customer.", + "Number of ENABLED webpage criteria per customer, including campaign level and ad group level.", + "Number of ENABLED webpage criteria across all base campaigns for a customer.", + "Meximum number of ENABLED webpage criteria across all experiment campaigns for a customer.", + "Number of combined audience criteria per ad group.", + "Limit for placement criterion type group in customer negative criterion.", + "Limit for YouTube TV channels in customer negative criterion.", + "Number of ENABLED criteria per ad group.", + "Number of listing group criteria per ad group.", + "Number of ENABLED explicitly shared budgets per customer.", + "Number of ENABLED implicitly shared budgets per customer.", + "Number of combined audience criteria per campaign.", + "Number of negative keywords per campaign.", + "Number of excluded campaign criteria in placement dimension, for example, placement, mobile application, YouTube channel, etc. The API criterion type is NOT limited to placement only, and this does not include exclusions at the ad group or other levels.", + "Number of geo targets per campaign.", + "Number of negative IP blocks per campaign.", + "Number of proximity targets per campaign.", + "Number of listing scopes per Shopping campaign.", + "Number of listing scopes per non-Shopping campaign.", + "Number of criteria per negative keyword shared set.", + "Number of criteria per negative placement shared set.", + "Default number of shared sets allowed per type per customer.", + "Number of shared sets of negative placement list type for a manager customer.", + "Number of hotel_advance_booking_window bid modifiers per ad group.", + "Number of ENABLED shared bidding strategies per customer.", + "Number of open basic user lists per customer.", + "Number of open logical user lists per customer.", + "Number of open rule based user lists per customer.", + "Number of ENABLED and PAUSED ad group ads across all base campaigns for a customer.", + "Number of ENABLED and PAUSED ad group ads across all experiment campaigns for a customer.", + "Number of ENABLED and PAUSED ad group ads per campaign.", + "Number of ENABLED ads per ad group that do not fall in to other buckets. Includes text and many other types.", + "Number of ENABLED image ads per ad group.", + "Number of ENABLED shopping smart ads per ad group.", + "Number of ENABLED responsive search ads per ad group.", + "Number of ENABLED app ads per ad group.", + "Number of ENABLED app engagement ads per ad group.", + "Number of ENABLED local ads per ad group.", + "Number of ENABLED video ads per ad group.", + "Number of ENABLED lead form CampaignAssets per campaign.", + "Number of ENABLED promotion CustomerAssets per customer.", + "Number of ENABLED promotion CampaignAssets per campaign.", + "Number of ENABLED promotion AdGroupAssets per ad group.", + "Number of ENABLED callout CustomerAssets per customer.", + "Number of ENABLED callout CampaignAssets per campaign.", + "Number of ENABLED callout AdGroupAssets per ad group.", + "Number of ENABLED sitelink CustomerAssets per customer.", + "Number of ENABLED sitelink CampaignAssets per campaign.", + "Number of ENABLED sitelink AdGroupAssets per ad group.", + "Number of ENABLED structured snippet CustomerAssets per customer.", + "Number of ENABLED structured snippet CampaignAssets per campaign.", + "Number of ENABLED structured snippet AdGroupAssets per ad group.", + "Number of ENABLED mobile app CustomerAssets per customer.", + "Number of ENABLED mobile app CampaignAssets per campaign.", + "Number of ENABLED mobile app AdGroupAssets per ad group.", + "Number of ENABLED hotel callout CustomerAssets per customer.", + "Number of ENABLED hotel callout CampaignAssets per campaign.", + "Number of ENABLED hotel callout AdGroupAssets per ad group.", + "Number of ENABLED call CustomerAssets per customer.", + "Number of ENABLED call CampaignAssets per campaign.", + "Number of ENABLED call AdGroupAssets per ad group.", + "Number of ENABLED price CustomerAssets per customer.", + "Number of ENABLED price CampaignAssets per campaign.", + "Number of ENABLED price AdGroupAssets per ad group.", + "Number of ENABLED ad image CampaignAssets per campaign.", + "Number of ENABLED ad image AdGroupAssets per ad group.", + "Number of ENABLED page feed asset sets per customer.", + "Number of ENABLED dynamic education feed asset sets per customer.", + "Number of ENABLED assets per page feed asset set.", + "Number of ENABLED assets per dynamic education asset set.", + "Number of ENABLED dynamic real estate asset sets per customer.", + "Number of ENABLED assets per dynamic real estate asset set.", + "Number of ENABLED dynamic custom asset sets per customer.", + "Number of ENABLED assets per dynamic custom asset set.", + "Number of ENABLED dynamic hotels and rentals asset sets per customer.", + "Number of ENABLED assets per dynamic hotels and rentals asset set.", + "Number of ENABLED dynamic local asset sets per customer.", + "Number of ENABLED assets per dynamic local asset set.", + "Number of ENABLED dynamic flights asset sets per customer.", + "Number of ENABLED assets per dynamic flights asset set.", + "Number of ENABLED dynamic travel asset sets per customer.", + "Number of ENABLED assets per dynamic travel asset set.", + "Number of ENABLED dynamic jobs asset sets per customer.", + "Number of ENABLED assets per dynamic jobs asset set.", + "Number of ENABLED business name CampaignAssets per campaign.", + "Number of ENABLED business logo CampaignAssets per campaign.", + "Number of versions per ad.", + "Number of ENABLED user feeds per customer.", + "Number of ENABLED system feeds per customer.", + "Number of feed attributes per feed.", + "Number of ENABLED feed items per customer.", + "Number of ENABLED campaign feeds per customer.", + "Number of ENABLED campaign feeds across all base campaigns for a customer.", + "Number of ENABLED campaign feeds across all experiment campaigns for a customer.", + "Number of ENABLED ad group feeds per customer.", + "Number of ENABLED ad group feeds across all base campaigns for a customer.", + "Number of ENABLED ad group feeds across all experiment campaigns for a customer.", + "Number of ENABLED ad group feeds per campaign.", + "Number of ENABLED feed items per customer.", + "Number of feed items per feed item set.", + "Number of ENABLED campaign experiments per customer.", + "Number of video experiment arms per experiment.", + "Number of owned labels per customer.", + "Number of applied labels per campaign.", + "Number of applied labels per ad group.", + "Number of applied labels per ad group ad.", + "Number of applied labels per ad group criterion.", + "Number of customers with a single label applied.", + "Number of ENABLED keyword plans per user per customer. The limit is applied per pair because by default a plan is private to a user of a customer. Each user of a customer has their own independent limit.", + "Number of keyword plan ad group keywords per keyword plan.", + "Number of keyword plan ad groups per keyword plan.", + "Number of keyword plan negative keywords (both campaign and ad group) per keyword plan.", + "Number of keyword plan campaigns per keyword plan.", + "Number of ENABLED conversion actions per customer.", + "Number of operations in a single batch job.", + "Number of PENDING or ENABLED batch jobs per customer.", + "Number of hotel check-in date range bid modifiers per ad agroup.", + "Number of shared sets of type ACCOUNT_LEVEL_NEGATIVE_KEYWORDS per account.", + "Number of keywords per ACCOUNT_LEVEL_NEGATIVE_KEYWORDS shared set.", + "Maximum number of asset per hotel property asset set.", + "Maximum number of enabled hotel property assets per asset group.", + "Number of criteria per brand shared set.", + "Number of active brand list criteria per campaign.", + "Maximum number of shared sets of brand type for an account.", + "Maximum number of lookalike lists per customer.", + "Total number of enabled IMAGE CampaignAssets with LOGO and LANDSCAPE_LOGO field types per campaign.", + "Maximum number of active business message asset links at customer level.", + "Maximum number of active WhatsApp business message asset links at campaign level.", + "Maximum number of active WhatsApp business message asset links at ad group level.", + "Number of ENABLED brand list criteria per ad group." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Errors__SearchAds360Error": { + "description": "Search Ads 360-specific error.", + "id": "GoogleAdsSearchads360V23Errors__SearchAds360Error", + "properties": { + "details": { + "$ref": "GoogleAdsSearchads360V23Errors__ErrorDetails", + "description": "Additional error details, which are returned by certain error codes. Most error codes do not include details." + }, + "errorCode": { + "$ref": "GoogleAdsSearchads360V23Errors__ErrorCode", + "description": "An enum value that indicates which error occurred." + }, + "location": { + "$ref": "GoogleAdsSearchads360V23Errors__ErrorLocation", + "description": "Describes the part of the request proto that caused the error." + }, + "message": { + "description": "A human-readable description of the error.", + "type": "string" + }, + "trigger": { + "$ref": "GoogleAdsSearchads360V23Common__Value", + "description": "The value that triggered the error." + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Errors__SearchAds360Failure": { + "description": "Describes how a Search Ads 360 API call failed. It's returned inside google.rpc.Status.details when a call fails.", + "id": "GoogleAdsSearchads360V23Errors__SearchAds360Failure", + "properties": { + "errors": { + "description": "The list of errors that occurred.", + "items": { + "$ref": "GoogleAdsSearchads360V23Errors__SearchAds360Error" + }, + "type": "array" + }, + "requestId": { + "description": "The unique ID of the request that is used for debugging purposes.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Resources_BatchJob_BatchJobMetadata": { + "description": "Additional information about the batch job. This message is also used as metadata returned in batch job Long Running Operations.", + "id": "GoogleAdsSearchads360V23Resources_BatchJob_BatchJobMetadata", + "properties": { + "completionDateTime": { + "description": "Output only. The time when this batch job was completed. Formatted as yyyy-MM-dd HH:mm:ss. Example: \"2018-03-05 09:16:00\"", + "readOnly": true, + "type": "string" + }, + "creationDateTime": { + "description": "Output only. The time when this batch job was created. Formatted as yyyy-mm-dd hh:mm:ss. Example: \"2018-03-05 09:15:00\"", + "readOnly": true, + "type": "string" + }, + "estimatedCompletionRatio": { + "description": "Output only. The fraction (between 0.0 and 1.0) of mutates that have been processed. This is empty if the job hasn't started running yet.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "executedOperationCount": { + "description": "Output only. The number of mutate operations executed by the batch job. Present only if the job has started running.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "executionLimitSeconds": { + "description": "Immutable. The approximate upper bound for how long a batch job can be executed, in seconds. If the job runs more than the given upper bound, the job will be canceled.", + "format": "int32", + "type": "integer" + }, + "operationCount": { + "description": "Output only. The number of mutate operations in the batch job.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "startDateTime": { + "description": "Output only. The time when this batch job started running. Formatted as yyyy-mm-dd hh:mm:ss. Example: \"2018-03-05 09:15:30\"", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Resources__OfflineUserDataJobMetadata": { + "description": "Metadata of offline user data job.", + "id": "GoogleAdsSearchads360V23Resources__OfflineUserDataJobMetadata", + "properties": { + "matchRateRange": { + "description": "Output only. Match rate of the Customer Match user list upload. Describes the estimated match rate when the status of the job is \"RUNNING\" and final match rate when the final match rate is available after the status of the job is \"SUCCESS/FAILED\".", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "MATCH_RANGE_LESS_THAN_20", + "MATCH_RANGE_20_TO_30", + "MATCH_RANGE_31_TO_40", + "MATCH_RANGE_41_TO_50", + "MATCH_RANGE_51_TO_60", + "MATCH_RANGE_61_TO_70", + "MATCH_RANGE_71_TO_80", + "MATCH_RANGE_81_TO_90", + "MATCH_RANGE_91_TO_100" + ], + "enumDescriptions": [ + "Not specified.", + "Default value for match rate range.", + "Match rate range for offline data upload entity is between 0% and 19%.", + "Match rate range for offline data upload entity is between 20% and 30%.", + "Match rate range for offline data upload entity is between 31% and 40%.", + "Match rate range for offline data upload entity is between 41% and 50%.", + "Match rate range for offline data upload entity is between 51% and 60%.", + "Match rate range for offline data upload entity is between 61% and 70%.", + "Match rate range for offline data upload entity is between 71% and 80%.", + "Match rate range for offline data upload entity is between 81% and 90%.", + "Match rate range for offline data upload entity is more than or equal to 91%." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Services__PromoteExperimentMetadata": { + "description": "The metadata of the promoted experiment.", + "id": "GoogleAdsSearchads360V23Services__PromoteExperimentMetadata", + "properties": { + "experiment": { + "description": "Required. The promoted experiment.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V23Services__ScheduleExperimentMetadata": { + "description": "The metadata of the scheduled experiment.", + "id": "GoogleAdsSearchads360V23Services__ScheduleExperimentMetadata", + "properties": { + "experiment": { + "description": "Required. The scheduled experiment.", + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/discovery/secretmanager-v1.json b/discovery/secretmanager-v1.json index 6421322cde1..f34111bb433 100644 --- a/discovery/secretmanager-v1.json +++ b/discovery/secretmanager-v1.json @@ -387,7 +387,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "secretmanager.projects.locations.list", @@ -396,7 +396,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1366,7 +1366,7 @@ } } }, - "revision": "20260213", + "revision": "20260424", "rootUrl": "https://secretmanager.googleapis.com/", "schemas": { "AccessSecretVersionResponse": { @@ -1715,17 +1715,22 @@ "type": "string" }, "createTime": { - "description": "Output only. The time the operation was created.", + "description": "Output only. Time the operation was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "endTime": { - "description": "Output only. The time the operation finished running.", + "description": "Output only. Time the operation finished running.", "format": "google-datetime", "readOnly": true, "type": "string" }, + "progress": { + "$ref": "Progress", + "description": "Output only. Represents the progress of the operation. This field is populated for operations that involve processing multiple secret versions.", + "readOnly": true + }, "requestedCancellation": { "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.", "readOnly": true, @@ -1780,6 +1785,31 @@ }, "type": "object" }, + "Progress": { + "description": "Represents progress information for operations involving multiple secret versions.", + "id": "Progress", + "properties": { + "completedVersionCount": { + "description": "Output only. Number of secret versions that have been successfully processed so far.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "failedVersionCount": { + "description": "Output only. Number of secret versions that failed to process.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "totalVersionCount": { + "description": "Output only. Provides the total number of secret versions to be processed by the operation.", + "format": "int32", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, "Replica": { "description": "Represents a Replica for this Secret.", "id": "Replica", diff --git a/discovery/secretmanager-v1beta1.json b/discovery/secretmanager-v1beta1.json index 7c606c74ce2..a3fb5654004 100644 --- a/discovery/secretmanager-v1beta1.json +++ b/discovery/secretmanager-v1beta1.json @@ -387,7 +387,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "secretmanager.projects.locations.list", @@ -396,7 +396,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -886,7 +886,7 @@ } } }, - "revision": "20260213", + "revision": "20260424", "rootUrl": "https://secretmanager.googleapis.com/", "schemas": { "AccessSecretVersionResponse": { @@ -1181,17 +1181,22 @@ "type": "string" }, "createTime": { - "description": "Output only. The time the operation was created.", + "description": "Output only. Time the operation was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "endTime": { - "description": "Output only. The time the operation finished running.", + "description": "Output only. Time the operation finished running.", "format": "google-datetime", "readOnly": true, "type": "string" }, + "progress": { + "$ref": "Progress", + "description": "Output only. Represents the progress of the operation. This field is populated for operations that involve processing multiple secret versions.", + "readOnly": true + }, "requestedCancellation": { "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.", "readOnly": true, @@ -1246,6 +1251,31 @@ }, "type": "object" }, + "Progress": { + "description": "Represents progress information for operations involving multiple secret versions.", + "id": "Progress", + "properties": { + "completedVersionCount": { + "description": "Output only. Number of secret versions that have been successfully processed so far.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "failedVersionCount": { + "description": "Output only. Number of secret versions that failed to process.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "totalVersionCount": { + "description": "Output only. Provides the total number of secret versions to be processed by the operation.", + "format": "int32", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, "Replica": { "description": "Represents a Replica for this Secret.", "id": "Replica", diff --git a/discovery/secretmanager-v1beta2.json b/discovery/secretmanager-v1beta2.json index 048068ed514..3deb70e1929 100644 --- a/discovery/secretmanager-v1beta2.json +++ b/discovery/secretmanager-v1beta2.json @@ -387,7 +387,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta2/projects/{projectsId}/locations", "httpMethod": "GET", "id": "secretmanager.projects.locations.list", @@ -396,7 +396,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1366,7 +1366,7 @@ } } }, - "revision": "20260213", + "revision": "20260424", "rootUrl": "https://secretmanager.googleapis.com/", "schemas": { "AccessSecretVersionResponse": { @@ -1715,17 +1715,22 @@ "type": "string" }, "createTime": { - "description": "Output only. The time the operation was created.", + "description": "Output only. Time the operation was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "endTime": { - "description": "Output only. The time the operation finished running.", + "description": "Output only. Time the operation finished running.", "format": "google-datetime", "readOnly": true, "type": "string" }, + "progress": { + "$ref": "Progress", + "description": "Output only. Represents the progress of the operation. This field is populated for operations that involve processing multiple secret versions.", + "readOnly": true + }, "requestedCancellation": { "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.", "readOnly": true, @@ -1780,6 +1785,31 @@ }, "type": "object" }, + "Progress": { + "description": "Represents progress information for operations involving multiple secret versions.", + "id": "Progress", + "properties": { + "completedVersionCount": { + "description": "Output only. Number of secret versions that have been successfully processed so far.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "failedVersionCount": { + "description": "Output only. Number of secret versions that failed to process.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "totalVersionCount": { + "description": "Output only. Provides the total number of secret versions to be processed by the operation.", + "format": "int32", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, "Replica": { "description": "Represents a Replica for this Secret.", "id": "Replica", diff --git a/discovery/securitycenter-v1.json b/discovery/securitycenter-v1.json index 73016b7a228..a0640137d63 100644 --- a/discovery/securitycenter-v1.json +++ b/discovery/securitycenter-v1.json @@ -5944,7 +5944,7 @@ } } }, - "revision": "20260223", + "revision": "20260424", "rootUrl": "https://securitycenter.googleapis.com/", "schemas": { "Access": { @@ -6097,6 +6097,42 @@ }, "type": "object" }, + "AgentDataAccessEvent": { + "description": "Details about a data access attempt made by an agent principal not authorized under applicable data security policy.", + "id": "AgentDataAccessEvent", + "properties": { + "eventId": { + "description": "Unique identifier for data access event.", + "type": "string" + }, + "eventTime": { + "description": "Timestamp of data access event.", + "format": "google-datetime", + "type": "string" + }, + "operation": { + "description": "The operation performed by the principal to access the data.", + "enum": [ + "OPERATION_UNSPECIFIED", + "READ", + "MOVE", + "COPY" + ], + "enumDescriptions": [ + "The operation is unspecified.", + "Represents a read operation.", + "Represents a move operation.", + "Represents a copy operation." + ], + "type": "string" + }, + "principalSubject": { + "description": "The agent principal that accessed the data.", + "type": "string" + } + }, + "type": "object" + }, "AiModel": { "description": "Contains information about the AI model associated with the finding.", "id": "AiModel", @@ -7674,6 +7710,53 @@ }, "type": "object" }, + "DiscoveredWorkload": { + "description": "Represents discovered, customer managed workload that is not registered with the respective GCP service.", + "id": "DiscoveredWorkload", + "properties": { + "confidence": { + "description": "The confidence in detection of this workload.", + "enum": [ + "CONFIDENCE_UNSPECIFIED", + "CONFIDENCE_HIGH" + ], + "enumDescriptions": [ + "Unspecified confidence level.", + "High confidence in detection of a workload." + ], + "type": "string" + }, + "detectedRelevantHardware": { + "description": "A boolean flag set to true if associated hardware strongly predicts the workload type.", + "type": "boolean" + }, + "detectedRelevantKeywords": { + "description": "A boolean flag set to true if associated keywords strongly predict the workload type.", + "type": "boolean" + }, + "detectedRelevantPackages": { + "description": "A boolean flag set to true if installed packages strongly predict the workload type.", + "type": "boolean" + }, + "workloadType": { + "description": "The type of workload.", + "enum": [ + "WORKLOAD_TYPE_UNSPECIFIED", + "MCP_SERVER", + "AI_INFERENCE", + "AGENT" + ], + "enumDescriptions": [ + "Unspecified workload type", + "A workload of type MCP Server", + "A workload of type AI Inference", + "A workload of type LLM Agent" + ], + "type": "string" + } + }, + "type": "object" + }, "Disk": { "description": "Contains information about the disk associated with the finding.", "id": "Disk", @@ -7976,10 +8059,18 @@ "description": "Details about the externally exposed resource associated with the finding.", "id": "ExternalExposure", "properties": { + "backendBucket": { + "description": "The full resource name of the load balancer backend bucket, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendBuckets/{name}\"", + "type": "string" + }, "backendService": { "description": "The full resource name of load balancer backend service, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, + "exposedApplication": { + "description": "The name and version of the exposed web application, for example, \"Jenkins 2.184\".", + "type": "string" + }, "exposedEndpoint": { "description": "The resource which is running the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/zones/{zone}/instances/{instance}.”", "type": "string" @@ -7992,10 +8083,25 @@ "description": "The full resource name of the forwarding rule, for example, \"//compute.googleapis.com/projects/{project-id}/global/forwardingRules/{forwarding-rule-name}\".", "type": "string" }, + "hostnameUri": { + "description": "Hostname of the exposed application, for example, \"https://test-app.a.run.app/\"", + "type": "string" + }, + "httpResponse": { + "description": "The http response returned by the web application.", + "items": { + "$ref": "HttpResponse" + }, + "type": "array" + }, "instanceGroup": { "description": "The full resource name of the instance group, for example, \"//compute.googleapis.com/projects/{project-id}/global/instanceGroups/{name}\".", "type": "string" }, + "internalBackendService": { + "description": "The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", + "type": "string" + }, "loadBalancerFirewallPolicy": { "description": "The full resource name of the load balancer firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" @@ -8004,6 +8110,10 @@ "description": "The full resource name of the network endpoint group, for example, \"//compute.googleapis.com/projects/{project-id}/global/networkEndpointGroups/{name}\".", "type": "string" }, + "networkIngressFirewallPolicy": { + "description": "The full resource name of the network ingress firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{name}\".", + "type": "string" + }, "privateIpAddress": { "description": "Private IP address of the exposed endpoint.", "type": "string" @@ -8012,6 +8122,14 @@ "description": "Port number associated with private IP address.", "type": "string" }, + "pscNetworkAttachment": { + "description": "The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/networkAttachments/{name}\"", + "type": "string" + }, + "pscServiceAttachment": { + "description": "The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/serviceAttachments/{name}\"", + "type": "string" + }, "publicIpAddress": { "description": "Public IP address of the exposed endpoint.", "type": "string" @@ -8124,6 +8242,13 @@ "$ref": "AffectedResources", "description": "AffectedResources associated with the finding." }, + "agentDataAccessEvents": { + "description": "Agent data access events associated with the finding.", + "items": { + "$ref": "AgentDataAccessEvent" + }, + "type": "array" + }, "aiModel": { "$ref": "AiModel", "description": "The AI model associated with the finding." @@ -8235,6 +8360,10 @@ "description": "Contains more details about the finding.", "type": "string" }, + "discoveredWorkload": { + "$ref": "DiscoveredWorkload", + "description": "DiscoveredWorkload associated with the finding." + }, "disk": { "$ref": "Disk", "description": "Disk associated with the finding." @@ -8284,7 +8413,8 @@ "TOXIC_COMBINATION", "SENSITIVE_DATA_RISK", "CHOKEPOINT", - "EXTERNAL_EXPOSURE" + "EXTERNAL_EXPOSURE", + "SECRET" ], "enumDescriptions": [ "Unspecified finding class.", @@ -8297,7 +8427,8 @@ "Describes a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination.", "Describes a potential security risk to data assets that contain sensitive data.", "Describes a resource or resource group where high risk attack paths converge, based on attack path simulations (APS).", - "Describes a potential security risk due to the resource being exposed to the internet." + "Describes a potential security risk due to the resource being exposed to the internet.", + "Describes a potential security risk due to plaintext credentials, keys, or tokens being exposed in an asset or workload." ], "type": "string" }, @@ -8423,6 +8554,10 @@ "readOnly": true, "type": "string" }, + "policyViolationSummary": { + "$ref": "PolicyViolationSummary", + "description": "PolicyViolationSummary associated with the finding." + }, "processes": { "description": "Represents operating system processes associated with the Finding.", "items": { @@ -9821,6 +9956,42 @@ }, "type": "object" }, + "GoogleCloudSecuritycenterV2AgentDataAccessEvent": { + "description": "Details about a data access attempt made by an agent principal not authorized under applicable data security policy.", + "id": "GoogleCloudSecuritycenterV2AgentDataAccessEvent", + "properties": { + "eventId": { + "description": "Unique identifier for data access event.", + "type": "string" + }, + "eventTime": { + "description": "Timestamp of data access event.", + "format": "google-datetime", + "type": "string" + }, + "operation": { + "description": "The operation performed by the principal to access the data.", + "enum": [ + "OPERATION_UNSPECIFIED", + "READ", + "MOVE", + "COPY" + ], + "enumDescriptions": [ + "The operation is unspecified.", + "Represents a read operation.", + "Represents a move operation.", + "Represents a copy operation." + ], + "type": "string" + }, + "principalSubject": { + "description": "The agent principal that accessed the data.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudSecuritycenterV2AiModel": { "description": "Contains information about the AI model associated with the finding.", "id": "GoogleCloudSecuritycenterV2AiModel", @@ -11090,6 +11261,53 @@ }, "type": "object" }, + "GoogleCloudSecuritycenterV2DiscoveredWorkload": { + "description": "Represents discovered, customer managed workload that is not registered with the respective GCP service.", + "id": "GoogleCloudSecuritycenterV2DiscoveredWorkload", + "properties": { + "confidence": { + "description": "The confidence in detection of this workload.", + "enum": [ + "CONFIDENCE_UNSPECIFIED", + "CONFIDENCE_HIGH" + ], + "enumDescriptions": [ + "Unspecified confidence level.", + "High confidence in detection of a workload." + ], + "type": "string" + }, + "detectedRelevantHardware": { + "description": "A boolean flag set to true if associated hardware strongly predicts the workload type.", + "type": "boolean" + }, + "detectedRelevantKeywords": { + "description": "A boolean flag set to true if associated keywords strongly predict the workload type.", + "type": "boolean" + }, + "detectedRelevantPackages": { + "description": "A boolean flag set to true if installed packages strongly predict the workload type.", + "type": "boolean" + }, + "workloadType": { + "description": "The type of workload.", + "enum": [ + "WORKLOAD_TYPE_UNSPECIFIED", + "MCP_SERVER", + "AI_INFERENCE", + "AGENT" + ], + "enumDescriptions": [ + "Unspecified workload type", + "A workload of type MCP Server", + "A workload of type AI Inference", + "A workload of type LLM Agent" + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudSecuritycenterV2Disk": { "description": "Contains information about the disk associated with the finding.", "id": "GoogleCloudSecuritycenterV2Disk", @@ -11195,10 +11413,18 @@ "description": "Details about the externally exposed resource associated with the finding.", "id": "GoogleCloudSecuritycenterV2ExternalExposure", "properties": { + "backendBucket": { + "description": "The full resource name of the load balancer backend bucket, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendBuckets/{name}\"", + "type": "string" + }, "backendService": { "description": "The full resource name of load balancer backend service, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, + "exposedApplication": { + "description": "The name and version of the exposed web application, for example, \"Jenkins 2.184\".", + "type": "string" + }, "exposedEndpoint": { "description": "The resource which is running the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/zones/{zone}/instances/{instance}.”", "type": "string" @@ -11211,10 +11437,25 @@ "description": "The full resource name of the forwarding rule, for example, \"//compute.googleapis.com/projects/{project-id}/global/forwardingRules/{forwarding-rule-name}\".", "type": "string" }, + "hostnameUri": { + "description": "Hostname of the exposed application, for example, \"https://test-app.a.run.app/\"", + "type": "string" + }, + "httpResponse": { + "description": "The http response returned by the web application.", + "items": { + "$ref": "GoogleCloudSecuritycenterV2HttpResponse" + }, + "type": "array" + }, "instanceGroup": { "description": "The full resource name of the instance group, for example, \"//compute.googleapis.com/projects/{project-id}/global/instanceGroups/{name}\".", "type": "string" }, + "internalBackendService": { + "description": "The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", + "type": "string" + }, "loadBalancerFirewallPolicy": { "description": "The full resource name of the load balancer firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" @@ -11223,6 +11464,10 @@ "description": "The full resource name of the network endpoint group, for example, \"//compute.googleapis.com/projects/{project-id}/global/networkEndpointGroups/{name}\".", "type": "string" }, + "networkIngressFirewallPolicy": { + "description": "The full resource name of the network ingress firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{name}\".", + "type": "string" + }, "privateIpAddress": { "description": "Private IP address of the exposed endpoint.", "type": "string" @@ -11231,6 +11476,14 @@ "description": "Port number associated with private IP address.", "type": "string" }, + "pscNetworkAttachment": { + "description": "The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/networkAttachments/{name}\"", + "type": "string" + }, + "pscServiceAttachment": { + "description": "The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/serviceAttachments/{name}\"", + "type": "string" + }, "publicIpAddress": { "description": "Public IP address of the exposed endpoint.", "type": "string" @@ -11401,6 +11654,13 @@ "$ref": "GoogleCloudSecuritycenterV2AffectedResources", "description": "AffectedResources associated with the finding." }, + "agentDataAccessEvents": { + "description": "Agent data access events associated with the finding.", + "items": { + "$ref": "GoogleCloudSecuritycenterV2AgentDataAccessEvent" + }, + "type": "array" + }, "aiModel": { "$ref": "GoogleCloudSecuritycenterV2AiModel", "description": "The AI model associated with the finding." @@ -11519,6 +11779,10 @@ "description": "Contains more details about the finding.", "type": "string" }, + "discoveredWorkload": { + "$ref": "GoogleCloudSecuritycenterV2DiscoveredWorkload", + "description": "DiscoveredWorkload associated with the finding." + }, "disk": { "$ref": "GoogleCloudSecuritycenterV2Disk", "description": "Disk associated with the finding." @@ -11568,7 +11832,8 @@ "TOXIC_COMBINATION", "SENSITIVE_DATA_RISK", "CHOKEPOINT", - "EXTERNAL_EXPOSURE" + "EXTERNAL_EXPOSURE", + "SECRET" ], "enumDescriptions": [ "Unspecified finding class.", @@ -11581,7 +11846,8 @@ "Describes a combination of security issues that represent a more severe security problem when taken together.", "Describes a potential security risk to data assets that contain sensitive data.", "Describes a resource or resource group where high risk attack paths converge, based on attack path simulations (APS).", - "Describes a potential security risk due to the resource being exposed to the internet." + "Describes a potential security risk due to the resource being exposed to the internet.", + "Describes a potential security risk due to plaintext credentials, keys, or tokens being exposed in an asset or workload." ], "type": "string" }, @@ -11707,6 +11973,10 @@ "readOnly": true, "type": "string" }, + "policyViolationSummary": { + "$ref": "GoogleCloudSecuritycenterV2PolicyViolationSummary", + "description": "PolicyViolationSummary associated with the finding." + }, "processes": { "description": "Represents operating system processes associated with the Finding.", "items": { @@ -11896,6 +12166,21 @@ }, "type": "object" }, + "GoogleCloudSecuritycenterV2HttpResponse": { + "description": "The http response returned by the web application.", + "id": "GoogleCloudSecuritycenterV2HttpResponse", + "properties": { + "path": { + "description": "The http path for which response code was returned by web application, for example, \"https://test-app.a.run.app/test\".", + "type": "string" + }, + "statusCode": { + "description": "The http response code returned by the web application, for example, 200.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudSecuritycenterV2IamBinding": { "description": "Represents a particular IAM binding, which captures a member's role addition, removal, or state.", "id": "GoogleCloudSecuritycenterV2IamBinding", @@ -13760,6 +14045,33 @@ }, "type": "object" }, + "GoogleCloudSecuritycenterV2PolicyViolationSummary": { + "description": "Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control.", + "id": "GoogleCloudSecuritycenterV2PolicyViolationSummary", + "properties": { + "conformantResourcesCount": { + "description": "Total number of child resources that conform to the policy.", + "format": "int64", + "type": "string" + }, + "evaluationErrorsCount": { + "description": "Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively \"unknown\".", + "format": "int64", + "type": "string" + }, + "outOfScopeResourcesCount": { + "description": "Total count of child resources which were not in scope for evaluation.", + "format": "int64", + "type": "string" + }, + "policyViolationsCount": { + "description": "Count of child resources in violation of the policy.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudSecuritycenterV2PortRange": { "description": "A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port.", "id": "GoogleCloudSecuritycenterV2PortRange", @@ -14887,6 +15199,21 @@ }, "type": "object" }, + "HttpResponse": { + "description": "The http response returned by the web application.", + "id": "HttpResponse", + "properties": { + "path": { + "description": "The http path for which response code was returned by web application, for example, \"https://test-app.a.run.app/test\".", + "type": "string" + }, + "statusCode": { + "description": "The http response code returned by the web application, for example, 200.", + "type": "string" + } + }, + "type": "object" + }, "IamBinding": { "description": "Represents a particular IAM binding, which captures a member's role addition, removal, or state.", "id": "IamBinding", @@ -16632,6 +16959,33 @@ }, "type": "object" }, + "PolicyViolationSummary": { + "description": "Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control.", + "id": "PolicyViolationSummary", + "properties": { + "conformantResourcesCount": { + "description": "Total number of child resources that conform to the policy.", + "format": "int64", + "type": "string" + }, + "evaluationErrorsCount": { + "description": "Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively \"unknown\".", + "format": "int64", + "type": "string" + }, + "outOfScopeResourcesCount": { + "description": "Total count of child resources which were not in scope for evaluation.", + "format": "int64", + "type": "string" + }, + "policyViolationsCount": { + "description": "Count of child resources in violation of the policy.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "PortRange": { "description": "A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port.", "id": "PortRange", diff --git a/discovery/securitycenter-v1beta1.json b/discovery/securitycenter-v1beta1.json index 83cd8f9e058..671c570a8b3 100644 --- a/discovery/securitycenter-v1beta1.json +++ b/discovery/securitycenter-v1beta1.json @@ -919,7 +919,7 @@ } } }, - "revision": "20260223", + "revision": "20260424", "rootUrl": "https://securitycenter.googleapis.com/", "schemas": { "Access": { @@ -1072,6 +1072,42 @@ }, "type": "object" }, + "AgentDataAccessEvent": { + "description": "Details about a data access attempt made by an agent principal not authorized under applicable data security policy.", + "id": "AgentDataAccessEvent", + "properties": { + "eventId": { + "description": "Unique identifier for data access event.", + "type": "string" + }, + "eventTime": { + "description": "Timestamp of data access event.", + "format": "google-datetime", + "type": "string" + }, + "operation": { + "description": "The operation performed by the principal to access the data.", + "enum": [ + "OPERATION_UNSPECIFIED", + "READ", + "MOVE", + "COPY" + ], + "enumDescriptions": [ + "The operation is unspecified.", + "Represents a read operation.", + "Represents a move operation.", + "Represents a copy operation." + ], + "type": "string" + }, + "principalSubject": { + "description": "The agent principal that accessed the data.", + "type": "string" + } + }, + "type": "object" + }, "AiModel": { "description": "Contains information about the AI model associated with the finding.", "id": "AiModel", @@ -2409,6 +2445,53 @@ }, "type": "object" }, + "DiscoveredWorkload": { + "description": "Represents discovered, customer managed workload that is not registered with the respective GCP service.", + "id": "DiscoveredWorkload", + "properties": { + "confidence": { + "description": "The confidence in detection of this workload.", + "enum": [ + "CONFIDENCE_UNSPECIFIED", + "CONFIDENCE_HIGH" + ], + "enumDescriptions": [ + "Unspecified confidence level.", + "High confidence in detection of a workload." + ], + "type": "string" + }, + "detectedRelevantHardware": { + "description": "A boolean flag set to true if associated hardware strongly predicts the workload type.", + "type": "boolean" + }, + "detectedRelevantKeywords": { + "description": "A boolean flag set to true if associated keywords strongly predict the workload type.", + "type": "boolean" + }, + "detectedRelevantPackages": { + "description": "A boolean flag set to true if installed packages strongly predict the workload type.", + "type": "boolean" + }, + "workloadType": { + "description": "The type of workload.", + "enum": [ + "WORKLOAD_TYPE_UNSPECIFIED", + "MCP_SERVER", + "AI_INFERENCE", + "AGENT" + ], + "enumDescriptions": [ + "Unspecified workload type", + "A workload of type MCP Server", + "A workload of type AI Inference", + "A workload of type LLM Agent" + ], + "type": "string" + } + }, + "type": "object" + }, "Disk": { "description": "Contains information about the disk associated with the finding.", "id": "Disk", @@ -2565,10 +2648,18 @@ "description": "Details about the externally exposed resource associated with the finding.", "id": "ExternalExposure", "properties": { + "backendBucket": { + "description": "The full resource name of the load balancer backend bucket, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendBuckets/{name}\"", + "type": "string" + }, "backendService": { "description": "The full resource name of load balancer backend service, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, + "exposedApplication": { + "description": "The name and version of the exposed web application, for example, \"Jenkins 2.184\".", + "type": "string" + }, "exposedEndpoint": { "description": "The resource which is running the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/zones/{zone}/instances/{instance}.”", "type": "string" @@ -2581,10 +2672,25 @@ "description": "The full resource name of the forwarding rule, for example, \"//compute.googleapis.com/projects/{project-id}/global/forwardingRules/{forwarding-rule-name}\".", "type": "string" }, + "hostnameUri": { + "description": "Hostname of the exposed application, for example, \"https://test-app.a.run.app/\"", + "type": "string" + }, + "httpResponse": { + "description": "The http response returned by the web application.", + "items": { + "$ref": "HttpResponse" + }, + "type": "array" + }, "instanceGroup": { "description": "The full resource name of the instance group, for example, \"//compute.googleapis.com/projects/{project-id}/global/instanceGroups/{name}\".", "type": "string" }, + "internalBackendService": { + "description": "The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", + "type": "string" + }, "loadBalancerFirewallPolicy": { "description": "The full resource name of the load balancer firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" @@ -2593,6 +2699,10 @@ "description": "The full resource name of the network endpoint group, for example, \"//compute.googleapis.com/projects/{project-id}/global/networkEndpointGroups/{name}\".", "type": "string" }, + "networkIngressFirewallPolicy": { + "description": "The full resource name of the network ingress firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{name}\".", + "type": "string" + }, "privateIpAddress": { "description": "Private IP address of the exposed endpoint.", "type": "string" @@ -2601,6 +2711,14 @@ "description": "Port number associated with private IP address.", "type": "string" }, + "pscNetworkAttachment": { + "description": "The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/networkAttachments/{name}\"", + "type": "string" + }, + "pscServiceAttachment": { + "description": "The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/serviceAttachments/{name}\"", + "type": "string" + }, "publicIpAddress": { "description": "Public IP address of the exposed endpoint.", "type": "string" @@ -2713,6 +2831,13 @@ "$ref": "AffectedResources", "description": "AffectedResources associated with the finding." }, + "agentDataAccessEvents": { + "description": "Agent data access events associated with the finding.", + "items": { + "$ref": "AgentDataAccessEvent" + }, + "type": "array" + }, "aiModel": { "$ref": "AiModel", "description": "The AI model associated with the finding." @@ -2824,6 +2949,10 @@ "description": "Contains more details about the finding.", "type": "string" }, + "discoveredWorkload": { + "$ref": "DiscoveredWorkload", + "description": "DiscoveredWorkload associated with the finding." + }, "disk": { "$ref": "Disk", "description": "Disk associated with the finding." @@ -2873,7 +3002,8 @@ "TOXIC_COMBINATION", "SENSITIVE_DATA_RISK", "CHOKEPOINT", - "EXTERNAL_EXPOSURE" + "EXTERNAL_EXPOSURE", + "SECRET" ], "enumDescriptions": [ "Unspecified finding class.", @@ -2886,7 +3016,8 @@ "Describes a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination.", "Describes a potential security risk to data assets that contain sensitive data.", "Describes a resource or resource group where high risk attack paths converge, based on attack path simulations (APS).", - "Describes a potential security risk due to the resource being exposed to the internet." + "Describes a potential security risk due to the resource being exposed to the internet.", + "Describes a potential security risk due to plaintext credentials, keys, or tokens being exposed in an asset or workload." ], "type": "string" }, @@ -3012,6 +3143,10 @@ "readOnly": true, "type": "string" }, + "policyViolationSummary": { + "$ref": "PolicyViolationSummary", + "description": "PolicyViolationSummary associated with the finding." + }, "processes": { "description": "Represents operating system processes associated with the Finding.", "items": { @@ -4491,6 +4626,42 @@ }, "type": "object" }, + "GoogleCloudSecuritycenterV2AgentDataAccessEvent": { + "description": "Details about a data access attempt made by an agent principal not authorized under applicable data security policy.", + "id": "GoogleCloudSecuritycenterV2AgentDataAccessEvent", + "properties": { + "eventId": { + "description": "Unique identifier for data access event.", + "type": "string" + }, + "eventTime": { + "description": "Timestamp of data access event.", + "format": "google-datetime", + "type": "string" + }, + "operation": { + "description": "The operation performed by the principal to access the data.", + "enum": [ + "OPERATION_UNSPECIFIED", + "READ", + "MOVE", + "COPY" + ], + "enumDescriptions": [ + "The operation is unspecified.", + "Represents a read operation.", + "Represents a move operation.", + "Represents a copy operation." + ], + "type": "string" + }, + "principalSubject": { + "description": "The agent principal that accessed the data.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudSecuritycenterV2AiModel": { "description": "Contains information about the AI model associated with the finding.", "id": "GoogleCloudSecuritycenterV2AiModel", @@ -5760,6 +5931,53 @@ }, "type": "object" }, + "GoogleCloudSecuritycenterV2DiscoveredWorkload": { + "description": "Represents discovered, customer managed workload that is not registered with the respective GCP service.", + "id": "GoogleCloudSecuritycenterV2DiscoveredWorkload", + "properties": { + "confidence": { + "description": "The confidence in detection of this workload.", + "enum": [ + "CONFIDENCE_UNSPECIFIED", + "CONFIDENCE_HIGH" + ], + "enumDescriptions": [ + "Unspecified confidence level.", + "High confidence in detection of a workload." + ], + "type": "string" + }, + "detectedRelevantHardware": { + "description": "A boolean flag set to true if associated hardware strongly predicts the workload type.", + "type": "boolean" + }, + "detectedRelevantKeywords": { + "description": "A boolean flag set to true if associated keywords strongly predict the workload type.", + "type": "boolean" + }, + "detectedRelevantPackages": { + "description": "A boolean flag set to true if installed packages strongly predict the workload type.", + "type": "boolean" + }, + "workloadType": { + "description": "The type of workload.", + "enum": [ + "WORKLOAD_TYPE_UNSPECIFIED", + "MCP_SERVER", + "AI_INFERENCE", + "AGENT" + ], + "enumDescriptions": [ + "Unspecified workload type", + "A workload of type MCP Server", + "A workload of type AI Inference", + "A workload of type LLM Agent" + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudSecuritycenterV2Disk": { "description": "Contains information about the disk associated with the finding.", "id": "GoogleCloudSecuritycenterV2Disk", @@ -5865,10 +6083,18 @@ "description": "Details about the externally exposed resource associated with the finding.", "id": "GoogleCloudSecuritycenterV2ExternalExposure", "properties": { + "backendBucket": { + "description": "The full resource name of the load balancer backend bucket, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendBuckets/{name}\"", + "type": "string" + }, "backendService": { "description": "The full resource name of load balancer backend service, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, + "exposedApplication": { + "description": "The name and version of the exposed web application, for example, \"Jenkins 2.184\".", + "type": "string" + }, "exposedEndpoint": { "description": "The resource which is running the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/zones/{zone}/instances/{instance}.”", "type": "string" @@ -5881,10 +6107,25 @@ "description": "The full resource name of the forwarding rule, for example, \"//compute.googleapis.com/projects/{project-id}/global/forwardingRules/{forwarding-rule-name}\".", "type": "string" }, + "hostnameUri": { + "description": "Hostname of the exposed application, for example, \"https://test-app.a.run.app/\"", + "type": "string" + }, + "httpResponse": { + "description": "The http response returned by the web application.", + "items": { + "$ref": "GoogleCloudSecuritycenterV2HttpResponse" + }, + "type": "array" + }, "instanceGroup": { "description": "The full resource name of the instance group, for example, \"//compute.googleapis.com/projects/{project-id}/global/instanceGroups/{name}\".", "type": "string" }, + "internalBackendService": { + "description": "The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", + "type": "string" + }, "loadBalancerFirewallPolicy": { "description": "The full resource name of the load balancer firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" @@ -5893,6 +6134,10 @@ "description": "The full resource name of the network endpoint group, for example, \"//compute.googleapis.com/projects/{project-id}/global/networkEndpointGroups/{name}\".", "type": "string" }, + "networkIngressFirewallPolicy": { + "description": "The full resource name of the network ingress firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{name}\".", + "type": "string" + }, "privateIpAddress": { "description": "Private IP address of the exposed endpoint.", "type": "string" @@ -5901,6 +6146,14 @@ "description": "Port number associated with private IP address.", "type": "string" }, + "pscNetworkAttachment": { + "description": "The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/networkAttachments/{name}\"", + "type": "string" + }, + "pscServiceAttachment": { + "description": "The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/serviceAttachments/{name}\"", + "type": "string" + }, "publicIpAddress": { "description": "Public IP address of the exposed endpoint.", "type": "string" @@ -6071,6 +6324,13 @@ "$ref": "GoogleCloudSecuritycenterV2AffectedResources", "description": "AffectedResources associated with the finding." }, + "agentDataAccessEvents": { + "description": "Agent data access events associated with the finding.", + "items": { + "$ref": "GoogleCloudSecuritycenterV2AgentDataAccessEvent" + }, + "type": "array" + }, "aiModel": { "$ref": "GoogleCloudSecuritycenterV2AiModel", "description": "The AI model associated with the finding." @@ -6189,6 +6449,10 @@ "description": "Contains more details about the finding.", "type": "string" }, + "discoveredWorkload": { + "$ref": "GoogleCloudSecuritycenterV2DiscoveredWorkload", + "description": "DiscoveredWorkload associated with the finding." + }, "disk": { "$ref": "GoogleCloudSecuritycenterV2Disk", "description": "Disk associated with the finding." @@ -6238,7 +6502,8 @@ "TOXIC_COMBINATION", "SENSITIVE_DATA_RISK", "CHOKEPOINT", - "EXTERNAL_EXPOSURE" + "EXTERNAL_EXPOSURE", + "SECRET" ], "enumDescriptions": [ "Unspecified finding class.", @@ -6251,7 +6516,8 @@ "Describes a combination of security issues that represent a more severe security problem when taken together.", "Describes a potential security risk to data assets that contain sensitive data.", "Describes a resource or resource group where high risk attack paths converge, based on attack path simulations (APS).", - "Describes a potential security risk due to the resource being exposed to the internet." + "Describes a potential security risk due to the resource being exposed to the internet.", + "Describes a potential security risk due to plaintext credentials, keys, or tokens being exposed in an asset or workload." ], "type": "string" }, @@ -6377,6 +6643,10 @@ "readOnly": true, "type": "string" }, + "policyViolationSummary": { + "$ref": "GoogleCloudSecuritycenterV2PolicyViolationSummary", + "description": "PolicyViolationSummary associated with the finding." + }, "processes": { "description": "Represents operating system processes associated with the Finding.", "items": { @@ -6566,6 +6836,21 @@ }, "type": "object" }, + "GoogleCloudSecuritycenterV2HttpResponse": { + "description": "The http response returned by the web application.", + "id": "GoogleCloudSecuritycenterV2HttpResponse", + "properties": { + "path": { + "description": "The http path for which response code was returned by web application, for example, \"https://test-app.a.run.app/test\".", + "type": "string" + }, + "statusCode": { + "description": "The http response code returned by the web application, for example, 200.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudSecuritycenterV2IamBinding": { "description": "Represents a particular IAM binding, which captures a member's role addition, removal, or state.", "id": "GoogleCloudSecuritycenterV2IamBinding", @@ -8430,6 +8715,33 @@ }, "type": "object" }, + "GoogleCloudSecuritycenterV2PolicyViolationSummary": { + "description": "Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control.", + "id": "GoogleCloudSecuritycenterV2PolicyViolationSummary", + "properties": { + "conformantResourcesCount": { + "description": "Total number of child resources that conform to the policy.", + "format": "int64", + "type": "string" + }, + "evaluationErrorsCount": { + "description": "Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively \"unknown\".", + "format": "int64", + "type": "string" + }, + "outOfScopeResourcesCount": { + "description": "Total count of child resources which were not in scope for evaluation.", + "format": "int64", + "type": "string" + }, + "policyViolationsCount": { + "description": "Count of child resources in violation of the policy.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudSecuritycenterV2PortRange": { "description": "A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port.", "id": "GoogleCloudSecuritycenterV2PortRange", @@ -9540,6 +9852,21 @@ }, "type": "object" }, + "HttpResponse": { + "description": "The http response returned by the web application.", + "id": "HttpResponse", + "properties": { + "path": { + "description": "The http path for which response code was returned by web application, for example, \"https://test-app.a.run.app/test\".", + "type": "string" + }, + "statusCode": { + "description": "The http response code returned by the web application, for example, 200.", + "type": "string" + } + }, + "type": "object" + }, "IamBinding": { "description": "Represents a particular IAM binding, which captures a member's role addition, removal, or state.", "id": "IamBinding", @@ -10974,6 +11301,33 @@ }, "type": "object" }, + "PolicyViolationSummary": { + "description": "Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control.", + "id": "PolicyViolationSummary", + "properties": { + "conformantResourcesCount": { + "description": "Total number of child resources that conform to the policy.", + "format": "int64", + "type": "string" + }, + "evaluationErrorsCount": { + "description": "Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively \"unknown\".", + "format": "int64", + "type": "string" + }, + "outOfScopeResourcesCount": { + "description": "Total count of child resources which were not in scope for evaluation.", + "format": "int64", + "type": "string" + }, + "policyViolationsCount": { + "description": "Count of child resources in violation of the policy.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "PortRange": { "description": "A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port.", "id": "PortRange", diff --git a/discovery/securitycenter-v1beta2.json b/discovery/securitycenter-v1beta2.json index 74dd155d89c..f95b2c3facf 100644 --- a/discovery/securitycenter-v1beta2.json +++ b/discovery/securitycenter-v1beta2.json @@ -2003,7 +2003,7 @@ } } }, - "revision": "20260223", + "revision": "20260424", "rootUrl": "https://securitycenter.googleapis.com/", "schemas": { "Access": { @@ -2156,6 +2156,42 @@ }, "type": "object" }, + "AgentDataAccessEvent": { + "description": "Details about a data access attempt made by an agent principal not authorized under applicable data security policy.", + "id": "AgentDataAccessEvent", + "properties": { + "eventId": { + "description": "Unique identifier for data access event.", + "type": "string" + }, + "eventTime": { + "description": "Timestamp of data access event.", + "format": "google-datetime", + "type": "string" + }, + "operation": { + "description": "The operation performed by the principal to access the data.", + "enum": [ + "OPERATION_UNSPECIFIED", + "READ", + "MOVE", + "COPY" + ], + "enumDescriptions": [ + "The operation is unspecified.", + "Represents a read operation.", + "Represents a move operation.", + "Represents a copy operation." + ], + "type": "string" + }, + "principalSubject": { + "description": "The agent principal that accessed the data.", + "type": "string" + } + }, + "type": "object" + }, "AiModel": { "description": "Contains information about the AI model associated with the finding.", "id": "AiModel", @@ -3466,6 +3502,53 @@ }, "type": "object" }, + "DiscoveredWorkload": { + "description": "Represents discovered, customer managed workload that is not registered with the respective GCP service.", + "id": "DiscoveredWorkload", + "properties": { + "confidence": { + "description": "The confidence in detection of this workload.", + "enum": [ + "CONFIDENCE_UNSPECIFIED", + "CONFIDENCE_HIGH" + ], + "enumDescriptions": [ + "Unspecified confidence level.", + "High confidence in detection of a workload." + ], + "type": "string" + }, + "detectedRelevantHardware": { + "description": "A boolean flag set to true if associated hardware strongly predicts the workload type.", + "type": "boolean" + }, + "detectedRelevantKeywords": { + "description": "A boolean flag set to true if associated keywords strongly predict the workload type.", + "type": "boolean" + }, + "detectedRelevantPackages": { + "description": "A boolean flag set to true if installed packages strongly predict the workload type.", + "type": "boolean" + }, + "workloadType": { + "description": "The type of workload.", + "enum": [ + "WORKLOAD_TYPE_UNSPECIFIED", + "MCP_SERVER", + "AI_INFERENCE", + "AGENT" + ], + "enumDescriptions": [ + "Unspecified workload type", + "A workload of type MCP Server", + "A workload of type AI Inference", + "A workload of type LLM Agent" + ], + "type": "string" + } + }, + "type": "object" + }, "Disk": { "description": "Contains information about the disk associated with the finding.", "id": "Disk", @@ -3656,10 +3739,18 @@ "description": "Details about the externally exposed resource associated with the finding.", "id": "ExternalExposure", "properties": { + "backendBucket": { + "description": "The full resource name of the load balancer backend bucket, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendBuckets/{name}\"", + "type": "string" + }, "backendService": { "description": "The full resource name of load balancer backend service, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, + "exposedApplication": { + "description": "The name and version of the exposed web application, for example, \"Jenkins 2.184\".", + "type": "string" + }, "exposedEndpoint": { "description": "The resource which is running the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/zones/{zone}/instances/{instance}.”", "type": "string" @@ -3672,10 +3763,25 @@ "description": "The full resource name of the forwarding rule, for example, \"//compute.googleapis.com/projects/{project-id}/global/forwardingRules/{forwarding-rule-name}\".", "type": "string" }, + "hostnameUri": { + "description": "Hostname of the exposed application, for example, \"https://test-app.a.run.app/\"", + "type": "string" + }, + "httpResponse": { + "description": "The http response returned by the web application.", + "items": { + "$ref": "HttpResponse" + }, + "type": "array" + }, "instanceGroup": { "description": "The full resource name of the instance group, for example, \"//compute.googleapis.com/projects/{project-id}/global/instanceGroups/{name}\".", "type": "string" }, + "internalBackendService": { + "description": "The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", + "type": "string" + }, "loadBalancerFirewallPolicy": { "description": "The full resource name of the load balancer firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" @@ -3684,6 +3790,10 @@ "description": "The full resource name of the network endpoint group, for example, \"//compute.googleapis.com/projects/{project-id}/global/networkEndpointGroups/{name}\".", "type": "string" }, + "networkIngressFirewallPolicy": { + "description": "The full resource name of the network ingress firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{name}\".", + "type": "string" + }, "privateIpAddress": { "description": "Private IP address of the exposed endpoint.", "type": "string" @@ -3692,6 +3802,14 @@ "description": "Port number associated with private IP address.", "type": "string" }, + "pscNetworkAttachment": { + "description": "The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/networkAttachments/{name}\"", + "type": "string" + }, + "pscServiceAttachment": { + "description": "The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/serviceAttachments/{name}\"", + "type": "string" + }, "publicIpAddress": { "description": "Public IP address of the exposed endpoint.", "type": "string" @@ -3804,6 +3922,13 @@ "$ref": "AffectedResources", "description": "AffectedResources associated with the finding." }, + "agentDataAccessEvents": { + "description": "Agent data access events associated with the finding.", + "items": { + "$ref": "AgentDataAccessEvent" + }, + "type": "array" + }, "aiModel": { "$ref": "AiModel", "description": "The AI model associated with the finding." @@ -3915,6 +4040,10 @@ "description": "Contains more details about the finding.", "type": "string" }, + "discoveredWorkload": { + "$ref": "DiscoveredWorkload", + "description": "DiscoveredWorkload associated with the finding." + }, "disk": { "$ref": "Disk", "description": "Disk associated with the finding." @@ -3964,7 +4093,8 @@ "TOXIC_COMBINATION", "SENSITIVE_DATA_RISK", "CHOKEPOINT", - "EXTERNAL_EXPOSURE" + "EXTERNAL_EXPOSURE", + "SECRET" ], "enumDescriptions": [ "Unspecified finding class.", @@ -3977,7 +4107,8 @@ "Describes a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination.", "Describes a potential security risk to data assets that contain sensitive data.", "Describes a resource or resource group where high risk attack paths converge, based on attack path simulations (APS).", - "Describes a potential security risk due to the resource being exposed to the internet." + "Describes a potential security risk due to the resource being exposed to the internet.", + "Describes a potential security risk due to plaintext credentials, keys, or tokens being exposed in an asset or workload." ], "type": "string" }, @@ -4103,6 +4234,10 @@ "readOnly": true, "type": "string" }, + "policyViolationSummary": { + "$ref": "PolicyViolationSummary", + "description": "PolicyViolationSummary associated with the finding." + }, "processes": { "description": "Represents operating system processes associated with the Finding.", "items": { @@ -5478,6 +5613,42 @@ }, "type": "object" }, + "GoogleCloudSecuritycenterV2AgentDataAccessEvent": { + "description": "Details about a data access attempt made by an agent principal not authorized under applicable data security policy.", + "id": "GoogleCloudSecuritycenterV2AgentDataAccessEvent", + "properties": { + "eventId": { + "description": "Unique identifier for data access event.", + "type": "string" + }, + "eventTime": { + "description": "Timestamp of data access event.", + "format": "google-datetime", + "type": "string" + }, + "operation": { + "description": "The operation performed by the principal to access the data.", + "enum": [ + "OPERATION_UNSPECIFIED", + "READ", + "MOVE", + "COPY" + ], + "enumDescriptions": [ + "The operation is unspecified.", + "Represents a read operation.", + "Represents a move operation.", + "Represents a copy operation." + ], + "type": "string" + }, + "principalSubject": { + "description": "The agent principal that accessed the data.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudSecuritycenterV2AiModel": { "description": "Contains information about the AI model associated with the finding.", "id": "GoogleCloudSecuritycenterV2AiModel", @@ -6747,6 +6918,53 @@ }, "type": "object" }, + "GoogleCloudSecuritycenterV2DiscoveredWorkload": { + "description": "Represents discovered, customer managed workload that is not registered with the respective GCP service.", + "id": "GoogleCloudSecuritycenterV2DiscoveredWorkload", + "properties": { + "confidence": { + "description": "The confidence in detection of this workload.", + "enum": [ + "CONFIDENCE_UNSPECIFIED", + "CONFIDENCE_HIGH" + ], + "enumDescriptions": [ + "Unspecified confidence level.", + "High confidence in detection of a workload." + ], + "type": "string" + }, + "detectedRelevantHardware": { + "description": "A boolean flag set to true if associated hardware strongly predicts the workload type.", + "type": "boolean" + }, + "detectedRelevantKeywords": { + "description": "A boolean flag set to true if associated keywords strongly predict the workload type.", + "type": "boolean" + }, + "detectedRelevantPackages": { + "description": "A boolean flag set to true if installed packages strongly predict the workload type.", + "type": "boolean" + }, + "workloadType": { + "description": "The type of workload.", + "enum": [ + "WORKLOAD_TYPE_UNSPECIFIED", + "MCP_SERVER", + "AI_INFERENCE", + "AGENT" + ], + "enumDescriptions": [ + "Unspecified workload type", + "A workload of type MCP Server", + "A workload of type AI Inference", + "A workload of type LLM Agent" + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudSecuritycenterV2Disk": { "description": "Contains information about the disk associated with the finding.", "id": "GoogleCloudSecuritycenterV2Disk", @@ -6852,10 +7070,18 @@ "description": "Details about the externally exposed resource associated with the finding.", "id": "GoogleCloudSecuritycenterV2ExternalExposure", "properties": { + "backendBucket": { + "description": "The full resource name of the load balancer backend bucket, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendBuckets/{name}\"", + "type": "string" + }, "backendService": { "description": "The full resource name of load balancer backend service, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, + "exposedApplication": { + "description": "The name and version of the exposed web application, for example, \"Jenkins 2.184\".", + "type": "string" + }, "exposedEndpoint": { "description": "The resource which is running the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/zones/{zone}/instances/{instance}.”", "type": "string" @@ -6868,10 +7094,25 @@ "description": "The full resource name of the forwarding rule, for example, \"//compute.googleapis.com/projects/{project-id}/global/forwardingRules/{forwarding-rule-name}\".", "type": "string" }, + "hostnameUri": { + "description": "Hostname of the exposed application, for example, \"https://test-app.a.run.app/\"", + "type": "string" + }, + "httpResponse": { + "description": "The http response returned by the web application.", + "items": { + "$ref": "GoogleCloudSecuritycenterV2HttpResponse" + }, + "type": "array" + }, "instanceGroup": { "description": "The full resource name of the instance group, for example, \"//compute.googleapis.com/projects/{project-id}/global/instanceGroups/{name}\".", "type": "string" }, + "internalBackendService": { + "description": "The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", + "type": "string" + }, "loadBalancerFirewallPolicy": { "description": "The full resource name of the load balancer firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" @@ -6880,6 +7121,10 @@ "description": "The full resource name of the network endpoint group, for example, \"//compute.googleapis.com/projects/{project-id}/global/networkEndpointGroups/{name}\".", "type": "string" }, + "networkIngressFirewallPolicy": { + "description": "The full resource name of the network ingress firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{name}\".", + "type": "string" + }, "privateIpAddress": { "description": "Private IP address of the exposed endpoint.", "type": "string" @@ -6888,6 +7133,14 @@ "description": "Port number associated with private IP address.", "type": "string" }, + "pscNetworkAttachment": { + "description": "The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/networkAttachments/{name}\"", + "type": "string" + }, + "pscServiceAttachment": { + "description": "The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/serviceAttachments/{name}\"", + "type": "string" + }, "publicIpAddress": { "description": "Public IP address of the exposed endpoint.", "type": "string" @@ -7058,6 +7311,13 @@ "$ref": "GoogleCloudSecuritycenterV2AffectedResources", "description": "AffectedResources associated with the finding." }, + "agentDataAccessEvents": { + "description": "Agent data access events associated with the finding.", + "items": { + "$ref": "GoogleCloudSecuritycenterV2AgentDataAccessEvent" + }, + "type": "array" + }, "aiModel": { "$ref": "GoogleCloudSecuritycenterV2AiModel", "description": "The AI model associated with the finding." @@ -7176,6 +7436,10 @@ "description": "Contains more details about the finding.", "type": "string" }, + "discoveredWorkload": { + "$ref": "GoogleCloudSecuritycenterV2DiscoveredWorkload", + "description": "DiscoveredWorkload associated with the finding." + }, "disk": { "$ref": "GoogleCloudSecuritycenterV2Disk", "description": "Disk associated with the finding." @@ -7225,7 +7489,8 @@ "TOXIC_COMBINATION", "SENSITIVE_DATA_RISK", "CHOKEPOINT", - "EXTERNAL_EXPOSURE" + "EXTERNAL_EXPOSURE", + "SECRET" ], "enumDescriptions": [ "Unspecified finding class.", @@ -7238,7 +7503,8 @@ "Describes a combination of security issues that represent a more severe security problem when taken together.", "Describes a potential security risk to data assets that contain sensitive data.", "Describes a resource or resource group where high risk attack paths converge, based on attack path simulations (APS).", - "Describes a potential security risk due to the resource being exposed to the internet." + "Describes a potential security risk due to the resource being exposed to the internet.", + "Describes a potential security risk due to plaintext credentials, keys, or tokens being exposed in an asset or workload." ], "type": "string" }, @@ -7364,6 +7630,10 @@ "readOnly": true, "type": "string" }, + "policyViolationSummary": { + "$ref": "GoogleCloudSecuritycenterV2PolicyViolationSummary", + "description": "PolicyViolationSummary associated with the finding." + }, "processes": { "description": "Represents operating system processes associated with the Finding.", "items": { @@ -7553,6 +7823,21 @@ }, "type": "object" }, + "GoogleCloudSecuritycenterV2HttpResponse": { + "description": "The http response returned by the web application.", + "id": "GoogleCloudSecuritycenterV2HttpResponse", + "properties": { + "path": { + "description": "The http path for which response code was returned by web application, for example, \"https://test-app.a.run.app/test\".", + "type": "string" + }, + "statusCode": { + "description": "The http response code returned by the web application, for example, 200.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudSecuritycenterV2IamBinding": { "description": "Represents a particular IAM binding, which captures a member's role addition, removal, or state.", "id": "GoogleCloudSecuritycenterV2IamBinding", @@ -9417,6 +9702,33 @@ }, "type": "object" }, + "GoogleCloudSecuritycenterV2PolicyViolationSummary": { + "description": "Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control.", + "id": "GoogleCloudSecuritycenterV2PolicyViolationSummary", + "properties": { + "conformantResourcesCount": { + "description": "Total number of child resources that conform to the policy.", + "format": "int64", + "type": "string" + }, + "evaluationErrorsCount": { + "description": "Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively \"unknown\".", + "format": "int64", + "type": "string" + }, + "outOfScopeResourcesCount": { + "description": "Total count of child resources which were not in scope for evaluation.", + "format": "int64", + "type": "string" + }, + "policyViolationsCount": { + "description": "Count of child resources in violation of the policy.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudSecuritycenterV2PortRange": { "description": "A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port.", "id": "GoogleCloudSecuritycenterV2PortRange", @@ -10399,6 +10711,21 @@ }, "type": "object" }, + "HttpResponse": { + "description": "The http response returned by the web application.", + "id": "HttpResponse", + "properties": { + "path": { + "description": "The http path for which response code was returned by web application, for example, \"https://test-app.a.run.app/test\".", + "type": "string" + }, + "statusCode": { + "description": "The http response code returned by the web application, for example, 200.", + "type": "string" + } + }, + "type": "object" + }, "IamBinding": { "description": "Represents a particular IAM binding, which captures a member's role addition, removal, or state.", "id": "IamBinding", @@ -11620,6 +11947,33 @@ }, "type": "object" }, + "PolicyViolationSummary": { + "description": "Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control.", + "id": "PolicyViolationSummary", + "properties": { + "conformantResourcesCount": { + "description": "Total number of child resources that conform to the policy.", + "format": "int64", + "type": "string" + }, + "evaluationErrorsCount": { + "description": "Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively \"unknown\".", + "format": "int64", + "type": "string" + }, + "outOfScopeResourcesCount": { + "description": "Total count of child resources which were not in scope for evaluation.", + "format": "int64", + "type": "string" + }, + "policyViolationsCount": { + "description": "Count of child resources in violation of the policy.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "PortRange": { "description": "A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port.", "id": "PortRange", diff --git a/discovery/securityposture-v1.json b/discovery/securityposture-v1.json index 930537287e2..784912a69ef 100644 --- a/discovery/securityposture-v1.json +++ b/discovery/securityposture-v1.json @@ -903,7 +903,7 @@ } } }, - "revision": "20260205", + "revision": "20260317", "rootUrl": "https://securityposture.googleapis.com/", "schemas": { "AssetDetails": { @@ -1238,40 +1238,6 @@ }, "type": "object" }, - "IacValidationFailureCriteria": { - "description": "Represents the criteria for considering an IaC validation as a failure.", - "id": "IacValidationFailureCriteria", - "properties": { - "createTime": { - "description": "Output only. The time at which the resource was created.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - }, - "etag": { - "description": "Optional. The etag for optimistic concurrency.", - "type": "string" - }, - "name": { - "description": "Identifier. The resource name of the IacValidationFailureCriteria. Format: organizations/{organization}/locations/{location}/iacValidationFailureCriteria", - "type": "string" - }, - "severityCountThresholds": { - "description": "Optional. A list of severity thresholds. An IaC validation fails if any threshold is exceeded.", - "items": { - "$ref": "SeverityCountThreshold" - }, - "type": "array" - }, - "updateTime": { - "description": "Output only. The time at which the resource was last updated.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, "ListLocationsResponse": { "description": "The response message for Locations.ListLocations.", "id": "ListLocationsResponse", @@ -2104,36 +2070,6 @@ }, "type": "object" }, - "SeverityCountThreshold": { - "description": "Represents a threshold for a specific severity.", - "id": "SeverityCountThreshold", - "properties": { - "severity": { - "description": "Optional. The severity level, reusing the existing Violation.Severity.", - "enum": [ - "SEVERITY_UNSPECIFIED", - "CRITICAL", - "HIGH", - "MEDIUM", - "LOW" - ], - "enumDescriptions": [ - "Default value. This value is unused.", - "Critical severity.", - "High severity.", - "Medium severity.", - "Low severity." - ], - "type": "string" - }, - "thresholdCount": { - "description": "Optional. If violation count meets or exceeds this threshold, validation fails.", - "format": "int32", - "type": "integer" - } - }, - "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", diff --git a/discovery/serviceconsumermanagement-v1.json b/discovery/serviceconsumermanagement-v1.json index ee977081592..c40d34f7750 100644 --- a/discovery/serviceconsumermanagement-v1.json +++ b/discovery/serviceconsumermanagement-v1.json @@ -547,7 +547,7 @@ } } }, - "revision": "20260210", + "revision": "20260423", "rootUrl": "https://serviceconsumermanagement.googleapis.com/", "schemas": { "AddTenantProjectRequest": { @@ -856,7 +856,7 @@ "type": "object" }, "pathTranslation": { - "description": "no-lint", + "description": "Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details.", "enum": [ "PATH_TRANSLATION_UNSPECIFIED", "CONSTANT_ADDRESS", @@ -1123,7 +1123,7 @@ }, "selectiveGapicGeneration": { "$ref": "SelectiveGapicGeneration", - "description": "Configuration for which RPCs should be generated in the GAPIC client." + "description": "Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases." } }, "type": "object" @@ -2520,7 +2520,8 @@ "STREET_VIEW", "SHOPPING", "GEO", - "GENERATIVE_AI" + "GENERATIVE_AI", + "HEALTH" ], "enumDescriptions": [ "Not useful.", @@ -2530,7 +2531,8 @@ "Street View Org.", "Shopping Org.", "Geo Org.", - "Generative AI - https://developers.generativeai.google" + "Generative AI - https://developers.generativeai.google", + "Health Org." ], "type": "string" }, @@ -2676,7 +2678,7 @@ "type": "object" }, "SelectiveGapicGeneration": { - "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries.", + "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases.", "id": "SelectiveGapicGeneration", "properties": { "generateOmittedAsInternal": { @@ -2745,7 +2747,7 @@ "description": "Additional API documentation." }, "endpoints": { - "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service}.clients6.google.com`, `content-{service}.googleapis.com`, and mTLS variants like `{service}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.).", + "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs.", "items": { "$ref": "Endpoint" }, @@ -3190,7 +3192,7 @@ "id": "UsageRule", "properties": { "allowUnregisteredCalls": { - "description": " Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", + "description": "Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", "type": "boolean" }, "selector": { diff --git a/discovery/serviceconsumermanagement-v1beta1.json b/discovery/serviceconsumermanagement-v1beta1.json index 673d61325bf..51c6aac11f9 100644 --- a/discovery/serviceconsumermanagement-v1beta1.json +++ b/discovery/serviceconsumermanagement-v1beta1.json @@ -724,7 +724,7 @@ } } }, - "revision": "20260210", + "revision": "20260423", "rootUrl": "https://serviceconsumermanagement.googleapis.com/", "schemas": { "Api": { @@ -984,7 +984,7 @@ "type": "object" }, "pathTranslation": { - "description": "no-lint", + "description": "Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details.", "enum": [ "PATH_TRANSLATION_UNSPECIFIED", "CONSTANT_ADDRESS", @@ -1234,7 +1234,7 @@ }, "selectiveGapicGeneration": { "$ref": "SelectiveGapicGeneration", - "description": "Configuration for which RPCs should be generated in the GAPIC client." + "description": "Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases." } }, "type": "object" @@ -2548,7 +2548,8 @@ "STREET_VIEW", "SHOPPING", "GEO", - "GENERATIVE_AI" + "GENERATIVE_AI", + "HEALTH" ], "enumDescriptions": [ "Not useful.", @@ -2558,7 +2559,8 @@ "Street View Org.", "Shopping Org.", "Geo Org.", - "Generative AI - https://developers.generativeai.google" + "Generative AI - https://developers.generativeai.google", + "Health Org." ], "type": "string" }, @@ -2675,7 +2677,7 @@ "type": "object" }, "SelectiveGapicGeneration": { - "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries.", + "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases.", "id": "SelectiveGapicGeneration", "properties": { "generateOmittedAsInternal": { @@ -2744,7 +2746,7 @@ "description": "Additional API documentation." }, "endpoints": { - "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service}.clients6.google.com`, `content-{service}.googleapis.com`, and mTLS variants like `{service}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.).", + "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs.", "items": { "$ref": "Endpoint" }, @@ -3034,7 +3036,7 @@ "id": "UsageRule", "properties": { "allowUnregisteredCalls": { - "description": " Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", + "description": "Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", "type": "boolean" }, "selector": { diff --git a/discovery/servicedirectory-v1.json b/discovery/servicedirectory-v1.json index e7d528f70d9..212e795d3b7 100644 --- a/discovery/servicedirectory-v1.json +++ b/discovery/servicedirectory-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "servicedirectory.projects.locations.list", @@ -889,7 +889,7 @@ } } }, - "revision": "20260217", + "revision": "20260327", "rootUrl": "https://servicedirectory.googleapis.com/", "schemas": { "Binding": { diff --git a/discovery/servicedirectory-v1beta1.json b/discovery/servicedirectory-v1beta1.json index 91e83f0b7ef..6bbe940627c 100644 --- a/discovery/servicedirectory-v1beta1.json +++ b/discovery/servicedirectory-v1beta1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "servicedirectory.projects.locations.list", @@ -977,7 +977,7 @@ } } }, - "revision": "20260217", + "revision": "20260327", "rootUrl": "https://servicedirectory.googleapis.com/", "schemas": { "Binding": { diff --git a/discovery/servicemanagement-v1.json b/discovery/servicemanagement-v1.json index 97b71ab5d11..4b7c1bf2c7a 100644 --- a/discovery/servicemanagement-v1.json +++ b/discovery/servicemanagement-v1.json @@ -835,7 +835,7 @@ } } }, - "revision": "20260219", + "revision": "20260406", "rootUrl": "https://servicemanagement.googleapis.com/", "schemas": { "Advice": { @@ -1154,7 +1154,7 @@ "type": "object" }, "pathTranslation": { - "description": "no-lint", + "description": "Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details.", "enum": [ "PATH_TRANSLATION_UNSPECIFIED", "CONSTANT_ADDRESS", @@ -1440,7 +1440,7 @@ }, "selectiveGapicGeneration": { "$ref": "SelectiveGapicGeneration", - "description": "Configuration for which RPCs should be generated in the GAPIC client." + "description": "Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases." } }, "type": "object" @@ -3374,7 +3374,7 @@ "type": "object" }, "SelectiveGapicGeneration": { - "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries.", + "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases.", "id": "SelectiveGapicGeneration", "properties": { "generateOmittedAsInternal": { @@ -3443,7 +3443,7 @@ "description": "Additional API documentation." }, "endpoints": { - "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service}.clients6.google.com`, `content-{service}.googleapis.com`, and mTLS variants like `{service}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.).", + "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs.", "items": { "$ref": "Endpoint" }, @@ -3860,7 +3860,7 @@ "id": "UsageRule", "properties": { "allowUnregisteredCalls": { - "description": " Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", + "description": "Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", "type": "boolean" }, "selector": { diff --git a/discovery/servicenetworking-v1.json b/discovery/servicenetworking-v1.json index e7f245671c4..4a45de6d4dd 100644 --- a/discovery/servicenetworking-v1.json +++ b/discovery/servicenetworking-v1.json @@ -1034,7 +1034,7 @@ } } }, - "revision": "20260223", + "revision": "20260406", "rootUrl": "https://servicenetworking.googleapis.com/", "schemas": { "AddDnsRecordSetMetadata": { @@ -1495,7 +1495,7 @@ "type": "object" }, "pathTranslation": { - "description": "no-lint", + "description": "Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details.", "enum": [ "PATH_TRANSLATION_UNSPECIFIED", "CONSTANT_ADDRESS", @@ -1777,7 +1777,7 @@ }, "selectiveGapicGeneration": { "$ref": "SelectiveGapicGeneration", - "description": "Configuration for which RPCs should be generated in the GAPIC client." + "description": "Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases." } }, "type": "object" @@ -3523,7 +3523,8 @@ "STREET_VIEW", "SHOPPING", "GEO", - "GENERATIVE_AI" + "GENERATIVE_AI", + "HEALTH" ], "enumDescriptions": [ "Not useful.", @@ -3533,7 +3534,8 @@ "Street View Org.", "Shopping Org.", "Geo Org.", - "Generative AI - https://developers.generativeai.google" + "Generative AI - https://developers.generativeai.google", + "Health Org." ], "type": "string" }, @@ -3833,7 +3835,7 @@ "type": "object" }, "SelectiveGapicGeneration": { - "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries.", + "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases.", "id": "SelectiveGapicGeneration", "properties": { "generateOmittedAsInternal": { @@ -3902,7 +3904,7 @@ "description": "Additional API documentation." }, "endpoints": { - "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service}.clients6.google.com`, `content-{service}.googleapis.com`, and mTLS variants like `{service}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.).", + "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs.", "items": { "$ref": "Endpoint" }, @@ -4266,7 +4268,7 @@ "id": "UsageRule", "properties": { "allowUnregisteredCalls": { - "description": " Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", + "description": "Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", "type": "boolean" }, "selector": { diff --git a/discovery/servicenetworking-v1beta.json b/discovery/servicenetworking-v1beta.json index df641115a68..873c2b9ed7e 100644 --- a/discovery/servicenetworking-v1beta.json +++ b/discovery/servicenetworking-v1beta.json @@ -307,7 +307,7 @@ } } }, - "revision": "20260223", + "revision": "20260406", "rootUrl": "https://servicenetworking.googleapis.com/", "schemas": { "AddDnsRecordSetMetadata": { @@ -657,7 +657,7 @@ "type": "object" }, "pathTranslation": { - "description": "no-lint", + "description": "Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details.", "enum": [ "PATH_TRANSLATION_UNSPECIFIED", "CONSTANT_ADDRESS", @@ -933,7 +933,7 @@ }, "selectiveGapicGeneration": { "$ref": "SelectiveGapicGeneration", - "description": "Configuration for which RPCs should be generated in the GAPIC client." + "description": "Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases." } }, "type": "object" @@ -2531,7 +2531,8 @@ "STREET_VIEW", "SHOPPING", "GEO", - "GENERATIVE_AI" + "GENERATIVE_AI", + "HEALTH" ], "enumDescriptions": [ "Not useful.", @@ -2541,7 +2542,8 @@ "Street View Org.", "Shopping Org.", "Geo Org.", - "Generative AI - https://developers.generativeai.google" + "Generative AI - https://developers.generativeai.google", + "Health Org." ], "type": "string" }, @@ -2750,7 +2752,7 @@ "type": "object" }, "SelectiveGapicGeneration": { - "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries.", + "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases.", "id": "SelectiveGapicGeneration", "properties": { "generateOmittedAsInternal": { @@ -2819,7 +2821,7 @@ "description": "Additional API documentation." }, "endpoints": { - "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service}.clients6.google.com`, `content-{service}.googleapis.com`, and mTLS variants like `{service}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.).", + "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs.", "items": { "$ref": "Endpoint" }, @@ -3149,7 +3151,7 @@ "id": "UsageRule", "properties": { "allowUnregisteredCalls": { - "description": " Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", + "description": "Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", "type": "boolean" }, "selector": { diff --git a/discovery/serviceusage-v1.json b/discovery/serviceusage-v1.json index b595043c52f..e06212ab15e 100644 --- a/discovery/serviceusage-v1.json +++ b/discovery/serviceusage-v1.json @@ -431,7 +431,7 @@ } } }, - "revision": "20260210", + "revision": "20260423", "rootUrl": "https://serviceusage.googleapis.com/", "schemas": { "AddEnableRulesMetadata": { @@ -829,7 +829,7 @@ "type": "object" }, "pathTranslation": { - "description": "no-lint", + "description": "Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details.", "enum": [ "PATH_TRANSLATION_UNSPECIFIED", "CONSTANT_ADDRESS", @@ -1162,7 +1162,7 @@ }, "selectiveGapicGeneration": { "$ref": "SelectiveGapicGeneration", - "description": "Configuration for which RPCs should be generated in the GAPIC client." + "description": "Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases." } }, "type": "object" @@ -1964,7 +1964,7 @@ "description": "Additional API documentation." }, "endpoints": { - "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service}.clients6.google.com`, `content-{service}.googleapis.com`, and mTLS variants like `{service}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.).", + "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs.", "items": { "$ref": "Endpoint" }, @@ -2863,66 +2863,6 @@ }, "type": "object" }, - "McpEnableRule": { - "description": "McpEnableRule contains MCP enablement related rules.", - "id": "McpEnableRule", - "properties": { - "mcpServices": { - "description": "List of enabled MCP services.", - "items": { - "$ref": "McpService" - }, - "type": "array" - } - }, - "type": "object" - }, - "McpPolicy": { - "description": "MCP Consumer Policy is a set of rules that define MCP related policy for a cloud resource hierarchy.", - "id": "McpPolicy", - "properties": { - "createTime": { - "description": "Output only. The time the policy was created. For singleton policies (such as the `default` policy), this is the first touch of the policy.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - }, - "etag": { - "description": "An opaque tag indicating the current version of the policy, used for concurrency control.", - "type": "string" - }, - "mcpEnableRules": { - "description": "McpEnableRules contains MCP enablement related rules.", - "items": { - "$ref": "McpEnableRule" - }, - "type": "array" - }, - "name": { - "description": "Output only. The resource name of the policy. Only the `default` policy is supported. We allow the following formats: `projects/{PROJECT_NUMBER}/mcpPolicies/default`, `projects/{PROJECT_ID}/mcpPolicies/default`, `folders/{FOLDER_ID}/mcpPolicies/default`, `organizations/{ORG_ID}/mcpPolicies/default`.", - "readOnly": true, - "type": "string" - }, - "updateTime": { - "description": "Output only. The time the policy was last updated.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "McpService": { - "description": "McpService contains the service names that are enabled for MCP.", - "id": "McpService", - "properties": { - "service": { - "description": "The names of the services that are enabled for MCP. Example: `services/library-example.googleapis.com`", - "type": "string" - } - }, - "type": "object" - }, "Method": { "description": "Method represents a method of an API interface. New usages of this message as an alternative to MethodDescriptorProto are strongly discouraged. This message does not reliability preserve all information necessary to model the schema and preserve semantics. Instead make use of FileDescriptorSet which preserves the necessary information.", "id": "Method", @@ -3498,7 +3438,8 @@ "STREET_VIEW", "SHOPPING", "GEO", - "GENERATIVE_AI" + "GENERATIVE_AI", + "HEALTH" ], "enumDescriptions": [ "Not useful.", @@ -3508,7 +3449,8 @@ "Street View Org.", "Shopping Org.", "Geo Org.", - "Generative AI - https://developers.generativeai.google" + "Generative AI - https://developers.generativeai.google", + "Health Org." ], "type": "string" }, @@ -3685,7 +3627,7 @@ "type": "object" }, "SelectiveGapicGeneration": { - "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries.", + "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases.", "id": "SelectiveGapicGeneration", "properties": { "generateOmittedAsInternal": { @@ -3896,12 +3838,6 @@ "properties": {}, "type": "object" }, - "UpdateMcpPolicyMetadata": { - "description": "Metadata for the `UpdateMcpPolicy` method.", - "id": "UpdateMcpPolicyMetadata", - "properties": {}, - "type": "object" - }, "Usage": { "description": "Configuration controlling usage of a service.", "id": "Usage", @@ -3932,7 +3868,7 @@ "id": "UsageRule", "properties": { "allowUnregisteredCalls": { - "description": " Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", + "description": "Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", "type": "boolean" }, "selector": { diff --git a/discovery/serviceusage-v1beta1.json b/discovery/serviceusage-v1beta1.json index 1361cdab900..42764d86ebd 100644 --- a/discovery/serviceusage-v1beta1.json +++ b/discovery/serviceusage-v1beta1.json @@ -969,7 +969,7 @@ } } }, - "revision": "20260210", + "revision": "20260423", "rootUrl": "https://serviceusage.googleapis.com/", "schemas": { "AddEnableRulesMetadata": { @@ -1367,7 +1367,7 @@ "type": "object" }, "pathTranslation": { - "description": "no-lint", + "description": "Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details.", "enum": [ "PATH_TRANSLATION_UNSPECIFIED", "CONSTANT_ADDRESS", @@ -1680,7 +1680,7 @@ }, "selectiveGapicGeneration": { "$ref": "SelectiveGapicGeneration", - "description": "Configuration for which RPCs should be generated in the GAPIC client." + "description": "Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases." } }, "type": "object" @@ -2541,7 +2541,7 @@ "description": "Additional API documentation." }, "endpoints": { - "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service}.clients6.google.com`, `content-{service}.googleapis.com`, and mTLS variants like `{service}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.).", + "description": "Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs.", "items": { "$ref": "Endpoint" }, @@ -3558,66 +3558,6 @@ }, "type": "object" }, - "McpEnableRule": { - "description": "McpEnableRule contains MCP enablement related rules.", - "id": "McpEnableRule", - "properties": { - "mcpServices": { - "description": "List of enabled MCP services.", - "items": { - "$ref": "McpService" - }, - "type": "array" - } - }, - "type": "object" - }, - "McpPolicy": { - "description": "MCP Consumer Policy is a set of rules that define MCP related policy for a cloud resource hierarchy.", - "id": "McpPolicy", - "properties": { - "createTime": { - "description": "Output only. The time the policy was created. For singleton policies (such as the `default` policy), this is the first touch of the policy.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - }, - "etag": { - "description": "An opaque tag indicating the current version of the policy, used for concurrency control.", - "type": "string" - }, - "mcpEnableRules": { - "description": "McpEnableRules contains MCP enablement related rules.", - "items": { - "$ref": "McpEnableRule" - }, - "type": "array" - }, - "name": { - "description": "Output only. The resource name of the policy. Only the `default` policy is supported. We allow the following formats: `projects/{PROJECT_NUMBER}/mcpPolicies/default`, `projects/{PROJECT_ID}/mcpPolicies/default`, `folders/{FOLDER_ID}/mcpPolicies/default`, `organizations/{ORG_ID}/mcpPolicies/default`.", - "readOnly": true, - "type": "string" - }, - "updateTime": { - "description": "Output only. The time the policy was last updated.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "McpService": { - "description": "McpService contains the service names that are enabled for MCP.", - "id": "McpService", - "properties": { - "service": { - "description": "The names of the services that are enabled for MCP. Example: `services/library-example.googleapis.com`", - "type": "string" - } - }, - "type": "object" - }, "Method": { "description": "Method represents a method of an API interface. New usages of this message as an alternative to MethodDescriptorProto are strongly discouraged. This message does not reliability preserve all information necessary to model the schema and preserve semantics. Instead make use of FileDescriptorSet which preserves the necessary information.", "id": "Method", @@ -4242,7 +4182,8 @@ "STREET_VIEW", "SHOPPING", "GEO", - "GENERATIVE_AI" + "GENERATIVE_AI", + "HEALTH" ], "enumDescriptions": [ "Not useful.", @@ -4252,7 +4193,8 @@ "Street View Org.", "Shopping Org.", "Geo Org.", - "Generative AI - https://developers.generativeai.google" + "Generative AI - https://developers.generativeai.google", + "Health Org." ], "type": "string" }, @@ -4484,7 +4426,7 @@ "type": "object" }, "SelectiveGapicGeneration": { - "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries.", + "description": "This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases.", "id": "SelectiveGapicGeneration", "properties": { "generateOmittedAsInternal": { @@ -4784,12 +4726,6 @@ "properties": {}, "type": "object" }, - "UpdateMcpPolicyMetadata": { - "description": "Metadata for the `UpdateMcpPolicy` method.", - "id": "UpdateMcpPolicyMetadata", - "properties": {}, - "type": "object" - }, "Usage": { "description": "Configuration controlling usage of a service.", "id": "Usage", @@ -4820,7 +4756,7 @@ "id": "UsageRule", "properties": { "allowUnregisteredCalls": { - "description": " Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", + "description": "Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity.", "type": "boolean" }, "selector": { diff --git a/discovery/slides-v1.json b/discovery/slides-v1.json index 1dfa5cf1df5..8af7d6ad8b0 100644 --- a/discovery/slides-v1.json +++ b/discovery/slides-v1.json @@ -284,13 +284,15 @@ "THUMBNAIL_SIZE_UNSPECIFIED", "LARGE", "MEDIUM", - "SMALL" + "SMALL", + "WIDTH2000_PX" ], "enumDescriptions": [ "The default thumbnail image size. The unspecified thumbnail size implies that the server chooses the size of the image in a way that might vary in the future.", "The thumbnail image width of 1600px.", "The thumbnail image width of 800px.", - "The thumbnail image width of 200px." + "The thumbnail image width of 200px.", + "The thumbnail image width of 2000px." ], "location": "query", "type": "string" @@ -313,7 +315,7 @@ } } }, - "revision": "20250401", + "revision": "20260408", "rootUrl": "https://slides.googleapis.com/", "schemas": { "AffineTransform": { diff --git a/discovery/smartdevicemanagement-v1.json b/discovery/smartdevicemanagement-v1.json index 5b2e7f8cd4c..f31074468df 100644 --- a/discovery/smartdevicemanagement-v1.json +++ b/discovery/smartdevicemanagement-v1.json @@ -312,18 +312,13 @@ } } }, - "revision": "20260112", + "revision": "20260427", "rootUrl": "https://smartdevicemanagement.googleapis.com/", "schemas": { "GoogleHomeEnterpriseSdmV1Device": { "description": "Device resource represents an instance of enterprise managed device in the property.", "id": "GoogleHomeEnterpriseSdmV1Device", "properties": { - "ghpName": { - "description": "Output only. The GHP device ID of the device.", - "readOnly": true, - "type": "string" - }, "name": { "description": "Required. The resource name of the device. For example: \"enterprises/XYZ/devices/123\".", "type": "string" @@ -437,11 +432,6 @@ "readOnly": true, "type": "string" }, - "ghpParent": { - "description": "Output only. The GHP name of the relation -- e.g., structure/room where the device is assigned to. For example: \"homegraph.googleapis.com/Structure/ABC\" or \"homegraph.googleapis.com/Room/ABC\"", - "readOnly": true, - "type": "string" - }, "parent": { "description": "Output only. The name of the relation -- e.g., structure/room where the device is assigned to. For example: \"enterprises/XYZ/structures/ABC\" or \"enterprises/XYZ/structures/ABC/rooms/123\"", "readOnly": true, @@ -474,11 +464,6 @@ "description": "Structure resource represents an instance of enterprise managed home or hotel room.", "id": "GoogleHomeEnterpriseSdmV1Structure", "properties": { - "ghpName": { - "description": "Output only. The unique identifier for the structure in Google Home Platform. Format: homegraph.googleapis.com/Structure/{structure_id}", - "readOnly": true, - "type": "string" - }, "name": { "description": "Output only. The resource name of the structure. For example: \"enterprises/XYZ/structures/ABC\".", "readOnly": true, diff --git a/discovery/spanner-v1.json b/discovery/spanner-v1.json index 5d820dfaa33..1c42e7a2bdd 100644 --- a/discovery/spanner-v1.json +++ b/discovery/spanner-v1.json @@ -968,7 +968,7 @@ "type": "string" }, "parent": { - "description": "Required. The instance of the backup operations. Values are of the form `projects//instances/`.", + "description": "Required. The instance of the backup operations. Values are of the form `projects/{project}/instances/{instance}`.", "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+$", "required": true, @@ -998,7 +998,7 @@ ], "parameters": { "parent": { - "description": "Required. The name of the destination instance that will contain the backup copy. Values are of the form: `projects//instances/`.", + "description": "Required. The name of the destination instance that will contain the backup copy. Values are of the form: `projects/{project}/instances/{instance}`.", "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+$", "required": true, @@ -1027,7 +1027,7 @@ ], "parameters": { "backupId": { - "description": "Required. The id of the backup to be created. The `backup_id` appended to `parent` forms the full backup name of the form `projects//instances//backups/`.", + "description": "Required. The id of the backup to be created. The `backup_id` appended to `parent` forms the full backup name of the form `projects/{project}/instances/{instance}/backups/{backup_id}`.", "location": "query", "type": "string" }, @@ -1049,18 +1049,18 @@ "type": "string" }, "encryptionConfig.kmsKeyName": { - "description": "Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects//locations//keyRings//cryptoKeys/`.", + "description": "Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{kms_key_name}`.", "location": "query", "type": "string" }, "encryptionConfig.kmsKeyNames": { - "description": "Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects//locations//keyRings//cryptoKeys/`. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations.", + "description": "Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{kms_key_name}`. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations.", "location": "query", "repeated": true, "type": "string" }, "parent": { - "description": "Required. The name of the instance in which the backup is created. This must be the same instance that contains the database the backup is created from. The backup will be stored in the locations specified in the instance configuration of this instance. Values are of the form `projects//instances/`.", + "description": "Required. The name of the instance in which the backup is created. This must be the same instance that contains the database the backup is created from. The backup will be stored in the locations specified in the instance configuration of this instance. Values are of the form `projects/{project}/instances/{instance}`.", "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+$", "required": true, @@ -1089,7 +1089,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the backup to delete. Values are of the form `projects//instances//backups/`.", + "description": "Required. Name of the backup to delete. Values are of the form `projects/{project}/instances/{instance}/backups/{backup}`.", "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+/backups/[^/]+$", "required": true, @@ -1115,7 +1115,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the backup. Values are of the form `projects//instances//backups/`.", + "description": "Required. Name of the backup. Values are of the form `projects/{project}/instances/{instance}/backups/{backup}`.", "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+/backups/[^/]+$", "required": true, @@ -1186,7 +1186,7 @@ "type": "string" }, "parent": { - "description": "Required. The instance to list backups from. Values are of the form `projects//instances/`.", + "description": "Required. The instance to list backups from. Values are of the form `projects/{project}/instances/{instance}`.", "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+$", "required": true, @@ -1212,7 +1212,7 @@ ], "parameters": { "name": { - "description": "Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form `projects//instances//backups/a-z*[a-z0-9]` The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form `projects//instances/`.", + "description": "Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form `projects/{project}/instances/{instance}/backups/a-z*[a-z0-9]` The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form `projects/{project}/instances/{instance}`.", "location": "path", "pattern": "^projects/[^/]+/instances/[^/]+/backups/[^/]+$", "required": true, @@ -3436,7 +3436,7 @@ } } }, - "revision": "20260213", + "revision": "20260501", "rootUrl": "https://spanner.googleapis.com/", "schemas": { "Ack": { @@ -3676,7 +3676,7 @@ "type": "string" }, "database": { - "description": "Required for the CreateBackup operation. Name of the database from which this backup was created. This needs to be in the same instance as the backup. Values are of the form `projects//instances//databases/`.", + "description": "Required for the CreateBackup operation. Name of the database from which this backup was created. This needs to be in the same instance as the backup. Values are of the form `projects/{project}/instances/{instance}/databases/{database}`.", "type": "string" }, "databaseDialect": { @@ -3761,7 +3761,7 @@ "type": "string" }, "name": { - "description": "Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form `projects//instances//backups/a-z*[a-z0-9]` The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form `projects//instances/`.", + "description": "Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form `projects/{project}/instances/{instance}/backups/a-z*[a-z0-9]` The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form `projects/{project}/instances/{instance}`.", "type": "string" }, "oldestVersionTime": { @@ -3771,7 +3771,7 @@ "type": "string" }, "referencingBackups": { - "description": "Output only. The names of the destination backups being created by copying this source backup. The backup names are of the form `projects//instances//backups/`. Referencing backups may exist in different instances. The existence of any referencing backup prevents the backup from being deleted. When the copy operation is done (either successfully completed or cancelled or the destination backup is deleted), the reference to the backup is removed.", + "description": "Output only. The names of the destination backups being created by copying this source backup. The backup names are of the form `projects/{project}/instances/{instance}/backups/{backup}`. Referencing backups may exist in different instances. The existence of any referencing backup prevents the backup from being deleted. When the copy operation is done (either successfully completed or cancelled or the destination backup is deleted), the reference to the backup is removed.", "items": { "type": "string" }, @@ -3779,7 +3779,7 @@ "type": "array" }, "referencingDatabases": { - "description": "Output only. The names of the restored databases that reference the backup. The database names are of the form `projects//instances//databases/`. Referencing databases may exist in different instances. The existence of any referencing database prevents the backup from being deleted. When a restored database from the backup enters the `READY` state, the reference to the backup is removed.", + "description": "Output only. The names of the restored databases that reference the backup. The database names are of the form `projects/{project}/instances/{instance}/databases/{database}`. Referencing databases may exist in different instances. The existence of any referencing database prevents the backup from being deleted. When a restored database from the backup enters the `READY` state, the reference to the backup is removed.", "items": { "type": "string" }, @@ -3845,7 +3845,7 @@ "id": "BackupInstancePartition", "properties": { "instancePartition": { - "description": "A unique identifier for the instance partition. Values are of the form `projects//instances//instancePartitions/`", + "description": "A unique identifier for the instance partition. Values are of the form `projects/{project}/instances/{instance}/instancePartitions/{instance_partition_id}`", "type": "string" } }, @@ -4301,11 +4301,11 @@ "type": "string" }, "kmsKeyName": { - "description": "Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects//locations//keyRings//cryptoKeys/`.", + "description": "Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{kms_key_name}`.", "type": "string" }, "kmsKeyNames": { - "description": "Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects//locations//keyRings//cryptoKeys/`. KMS keys specified can be in any order. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations.", + "description": "Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{kms_key_name}`. KMS keys specified can be in any order. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations.", "items": { "type": "string" }, @@ -4324,7 +4324,7 @@ "type": "string" }, "name": { - "description": "The name of the backup being created through the copy operation. Values are of the form `projects//instances//backups/`.", + "description": "The name of the backup being created through the copy operation. Values are of the form `projects/{project}/instances/{instance}/backups/{backup}`.", "type": "string" }, "progress": { @@ -4332,7 +4332,7 @@ "description": "The progress of the CopyBackup operation." }, "sourceBackup": { - "description": "The name of the source backup that is being copied. Values are of the form `projects//instances//backups/`.", + "description": "The name of the source backup that is being copied. Values are of the form `projects/{project}/instances/{instance}/backups/{backup}`.", "type": "string" } }, @@ -4343,7 +4343,7 @@ "id": "CopyBackupRequest", "properties": { "backupId": { - "description": "Required. The id of the backup copy. The `backup_id` appended to `parent` forms the full backup_uri of the form `projects//instances//backups/`.", + "description": "Required. The id of the backup copy. The `backup_id` appended to `parent` forms the full backup_uri of the form `projects/{project}/instances/{instance}/backups/{backup}`.", "type": "string" }, "encryptionConfig": { @@ -4356,7 +4356,7 @@ "type": "string" }, "sourceBackup": { - "description": "Required. The source backup to be copied. The source backup needs to be in READY state for it to be copied. Once CopyBackup is in progress, the source backup cannot be deleted or cleaned up on expiration until CopyBackup is finished. Values are of the form: `projects//instances//backups/`.", + "description": "Required. The source backup to be copied. The source backup needs to be in READY state for it to be copied. Once CopyBackup is in progress, the source backup cannot be deleted or cleaned up on expiration until CopyBackup is finished. Values are of the form: `projects/{project}/instances/{instance}/backups/{backup}`.", "type": "string" } }, @@ -4383,11 +4383,11 @@ "type": "string" }, "kmsKeyName": { - "description": "Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects//locations//keyRings//cryptoKeys/`.", + "description": "Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{kms_key_name}`.", "type": "string" }, "kmsKeyNames": { - "description": "Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects//locations//keyRings//cryptoKeys/`. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations.", + "description": "Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{kms_key_name}`. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations.", "items": { "type": "string" }, @@ -7121,16 +7121,16 @@ "type": "string" }, "readLockMode": { - "description": "Read lock mode for the transaction.", + "description": "The read lock mode for the transaction.", "enum": [ "READ_LOCK_MODE_UNSPECIFIED", "PESSIMISTIC", "OPTIMISTIC" ], "enumDescriptions": [ - "Default value. * If isolation level is REPEATABLE_READ, then it is an error to specify `read_lock_mode`. Locking semantics default to `OPTIMISTIC`. No validation checks are done for reads, except to validate that the data that was served at the snapshot time is unchanged at commit time in the following cases: 1. reads done as part of queries that use `SELECT FOR UPDATE` 2. reads done as part of statements with a `LOCK_SCANNED_RANGES` hint 3. reads done as part of DML statements * At all other isolation levels, if `read_lock_mode` is the default value, then pessimistic read locks are used.", - "Pessimistic lock mode. Read locks are acquired immediately on read. Semantics described only applies to SERIALIZABLE isolation.", - "Optimistic lock mode. Locks for reads within the transaction are not acquired on read. Instead the locks are acquired on a commit to validate that read/queried data has not changed since the transaction started. Semantics described only applies to SERIALIZABLE isolation." + "Default value. * If isolation level is SERIALIZABLE, locking semantics default to `PESSIMISTIC`. * If isolation level is REPEATABLE_READ, locking semantics default to `OPTIMISTIC`. * See [Concurrency control](https://cloud.google.com/spanner/docs/concurrency-control) for more details.", + "Pessimistic lock mode. Lock acquisition behavior depends on the isolation level in use. In SERIALIZABLE isolation, reads and writes acquire necessary locks during transaction statement execution. In REPEATABLE_READ isolation, reads that explicitly request to be locked and writes acquire locks. See [Concurrency control](https://cloud.google.com/spanner/docs/concurrency-control) for details on the types of locks acquired at each transaction step.", + "Optimistic lock mode. Lock acquisition behavior depends on the isolation level in use. In both SERIALIZABLE and REPEATABLE_READ isolation, reads and writes do not acquire locks during transaction statement execution. See [Concurrency control](https://cloud.google.com/spanner/docs/concurrency-control) for details on how the guarantees of each isolation level are provided at commit time." ], "type": "string" } diff --git a/discovery/sqladmin-v1.json b/discovery/sqladmin-v1.json index 77463f42b61..8c48a78e46d 100644 --- a/discovery/sqladmin-v1.json +++ b/discovery/sqladmin-v1.json @@ -1067,7 +1067,7 @@ "type": "string" }, "project": { - "description": "Required. Project ID of the source as well as the clone Cloud SQL instance.", + "description": "Required. Project ID of the source Cloud SQL instance.", "location": "path", "required": true, "type": "string" @@ -2795,7 +2795,7 @@ } } }, - "revision": "20260222", + "revision": "20260317", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -4993,7 +4993,7 @@ "type": "string" }, "autoIamAuthn": { - "description": "Optional. When set to true, the API caller identity associated with the request is used for database authentication. The API caller must be an IAM user in the database.", + "description": "Optional. When set to `true`, the API caller identity associated with the request is used for database authentication. The API caller must be an IAM user in the database.", "type": "boolean" }, "database": { @@ -6634,7 +6634,8 @@ "MANAGE_BACKUP", "ENHANCED_BACKUP", "REPAIR_READ_POOL", - "CREATE_READ_POOL" + "CREATE_READ_POOL", + "PRE_CHECK_MAJOR_VERSION_UPGRADE" ], "enumDeprecated": [ false, @@ -6688,6 +6689,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -6742,7 +6744,8 @@ "Changes the BackupTier of a Cloud SQL instance.", "Creates a backup for an Enhanced BackupTier Cloud SQL instance.", "Repairs entire read pool or specified read pool nodes in the read pool.", - "Creates a Cloud SQL read pool instance." + "Creates a Cloud SQL read pool instance.", + "Pre-checks the major version upgrade operation." ], "type": "string" }, @@ -7040,9 +7043,24 @@ "description": "Optional. The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, `/projects/myProject/global/networks/default`.", "type": "string" }, + "region": { + "description": "Optional. The region of the target instance where the datasource will be restored. For example: \"us-central1\".", + "type": "string" + }, "targetInstance": { "description": "Target instance name.", "type": "string" + }, + "targetInstanceClearSettingsFieldNames": { + "description": "Optional. Specifies the instance settings that will be cleared from the source instance. This field is only applicable for cross project PITRs.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetInstanceSettings": { + "$ref": "DatabaseInstance", + "description": "Optional. Specifies the instance settings that will be overridden from the source instance. This field is only applicable for cross project PITRs." } }, "type": "object" @@ -7374,7 +7392,7 @@ "type": "string" }, "consumerProject": { - "description": "Optional. This is the project ID of consumer service project of this consumer endpoint. Optional. This is only applicable if consumer_network is a shared vpc network.", + "description": "Optional. This is the project ID of consumer service project of this consumer endpoint. This is only applicable if `consumer_network` is a shared VPC network.", "type": "string" }, "ipAddress": { @@ -7410,9 +7428,17 @@ }, "type": "array" }, + "pscAutoDnsEnabled": { + "description": "Optional. Indicates whether PSC DNS automation is enabled for this instance. When enabled, Cloud SQL provisions a universal DNS record across all networks configured with Private Service Connect (PSC) auto-connections. This will default to true for new instances when Private Service Connect is enabled.", + "type": "boolean" + }, "pscEnabled": { "description": "Whether PSC connectivity is enabled for this instance.", "type": "boolean" + }, + "pscWriteEndpointDnsEnabled": { + "description": "Optional. Indicates whether PSC write endpoint DNS automation is enabled for this instance. When enabled, Cloud SQL provisions a universal global DNS record across all networks configured with Private Service Connect (PSC) auto-connections that always points to the cluster primary instance. This feature is only supported for Enterprise Plus edition. This will default to true for new Enterprise Plus instances when `psc_auto_dns_enabled` is enabled.", + "type": "boolean" } }, "type": "object" diff --git a/discovery/sqladmin-v1beta4.json b/discovery/sqladmin-v1beta4.json index b015abea9c5..efc2167b4d3 100644 --- a/discovery/sqladmin-v1beta4.json +++ b/discovery/sqladmin-v1beta4.json @@ -1067,7 +1067,7 @@ "type": "string" }, "project": { - "description": "Project ID of the source as well as the clone Cloud SQL instance.", + "description": "Project ID of the source Cloud SQL instance.", "location": "path", "required": true, "type": "string" @@ -2795,7 +2795,7 @@ } } }, - "revision": "20260222", + "revision": "20260317", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -6635,7 +6635,8 @@ "MANAGE_BACKUP", "ENHANCED_BACKUP", "REPAIR_READ_POOL", - "CREATE_READ_POOL" + "CREATE_READ_POOL", + "PRE_CHECK_MAJOR_VERSION_UPGRADE" ], "enumDeprecated": [ false, @@ -6689,6 +6690,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -6743,7 +6745,8 @@ "Changes the BackupTier of a Cloud SQL instance.", "Creates a backup for an Enhanced BackupTier Cloud SQL instance.", "Repairs entire read pool or specified read pool nodes in the read pool.", - "Creates a Cloud SQL read pool instance." + "Creates a Cloud SQL read pool instance.", + "Pre-checks for major version upgrade." ], "type": "string" }, @@ -7041,9 +7044,24 @@ "description": "Optional. The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, `/projects/myProject/global/networks/default`.", "type": "string" }, + "region": { + "description": "Optional. The region of the target instance where the datasource will be restored. For example: \"us-central1\".", + "type": "string" + }, "targetInstance": { "description": "Target instance name.", "type": "string" + }, + "targetInstanceClearSettingsFieldNames": { + "description": "Optional. Specifies the instance settings that will be cleared from the source instance. This field is only applicable for cross project PITRs.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetInstanceSettings": { + "$ref": "DatabaseInstance", + "description": "Optional. Specifies the instance settings that will be overridden from the source instance. This field is only applicable for cross project PITRs." } }, "type": "object" @@ -7411,9 +7429,17 @@ }, "type": "array" }, + "pscAutoDnsEnabled": { + "description": "Optional. Indicates whether PSC DNS automation is enabled for this instance. When enabled, Cloud SQL provisions a universal DNS record across all networks configured with Private Service Connect (PSC) auto-connections. This will default to true for new instances when Private Service Connect is enabled.", + "type": "boolean" + }, "pscEnabled": { "description": "Whether PSC connectivity is enabled for this instance.", "type": "boolean" + }, + "pscWriteEndpointDnsEnabled": { + "description": "Optional. Indicates whether PSC write endpoint DNS automation is enabled for this instance. When enabled, Cloud SQL provisions a universal global DNS record across all networks configured with Private Service Connect (PSC) auto-connections that always points to the cluster primary instance. This feature is only supported for Enterprise Plus edition. This will default to true for new enterprise plus instances when `psc_auto_dns_enabled` is enabled.", + "type": "boolean" } }, "type": "object" diff --git a/discovery/storage-v1.json b/discovery/storage-v1.json index 66005b6fd3a..94826e2c9f3 100644 --- a/discovery/storage-v1.json +++ b/discovery/storage-v1.json @@ -253,7 +253,7 @@ "location": "northamerica-south1" } ], - "etag": "\"31363539393037303230303637393438373935\"", + "etag": "\"3136383236333536383830353031333435373432\"", "icons": { "x16": "https://www.google.com/images/icons/product/cloud_storage-16.png", "x32": "https://www.google.com/images/icons/product/cloud_storage-32.png" @@ -521,7 +521,7 @@ ] }, "update": { - "description": "Updates the config(ttl and admissionPolicy) of an Anywhere Cache instance.", + "description": "Updates the config of an Anywhere Cache instance.", "httpMethod": "PATCH", "id": "storage.anywhereCaches.update", "parameterOrder": [ @@ -4605,7 +4605,7 @@ } } }, - "revision": "20260204", + "revision": "20260408", "rootUrl": "https://storage.googleapis.com/", "schemas": { "AdvanceRelocateBucketOperationRequest": { @@ -4650,6 +4650,10 @@ "description": "The ID of the resource, including the project number, bucket name and anywhere cache ID.", "type": "string" }, + "ingestOnWrite": { + "description": "Specifies whether objects are ingested into the cache upon write.", + "type": "boolean" + }, "kind": { "default": "storage#anywhereCache", "description": "The kind of item this is. For Anywhere Cache, this is always storage#anywhereCache.", diff --git a/discovery/storagebatchoperations-v1.json b/discovery/storagebatchoperations-v1.json index a64f3409db9..5b1903ca992 100644 --- a/discovery/storagebatchoperations-v1.json +++ b/discovery/storagebatchoperations-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "storagebatchoperations.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -569,7 +569,7 @@ } } }, - "revision": "20260218", + "revision": "20260429", "rootUrl": "https://storagebatchoperations.googleapis.com/", "schemas": { "Bucket": { @@ -728,7 +728,25 @@ "id": "Counters", "properties": { "failedObjectCount": { - "description": "Output only. Number of objects failed.", + "description": "Output only. The number of objects that failed due to user errors or service errors.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "objectCustomContextsCreated": { + "description": "Output only. Number of object custom contexts created. This field is only populated for jobs with the UpdateObjectCustomContext transformation.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "objectCustomContextsDeleted": { + "description": "Output only. Number of object custom contexts deleted. This field is only populated for jobs with the UpdateObjectCustomContext transformation.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "objectCustomContextsUpdated": { + "description": "Output only. Number of object custom contexts updated. This counter tracks custom contexts where the key already existed, but the payload was modified. This field is only populated for jobs with the UpdateObjectCustomContext transformation.", "format": "int64", "readOnly": true, "type": "string" @@ -745,6 +763,12 @@ "readOnly": true, "type": "string" }, + "totalBytesTransformed": { + "description": "Output only. The total number of bytes affected by the transformation. For example, this counts bytes deleted for `DeleteObject` operations and bytes rewritten for `RewriteObject` operations.", + "format": "int64", + "readOnly": true, + "type": "string" + }, "totalObjectCount": { "description": "Output only. Number of objects listed.", "format": "int64", diff --git a/discovery/sts-v1.json b/discovery/sts-v1.json index 66389a1f0a9..665332bee11 100644 --- a/discovery/sts-v1.json +++ b/discovery/sts-v1.json @@ -57,6 +57,11 @@ "endpointUrl": "https://sts.asia-southeast2.rep.googleapis.com/", "location": "asia-southeast2" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://sts.asia-southeast3.rep.googleapis.com/", + "location": "asia-southeast3" + }, { "description": "Regional Endpoint", "endpointUrl": "https://sts.australia-southeast1.rep.googleapis.com/", @@ -77,6 +82,11 @@ "endpointUrl": "https://sts.europe-north1.rep.googleapis.com/", "location": "europe-north1" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://sts.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, { "description": "Regional Endpoint", "endpointUrl": "https://sts.europe-southwest1.rep.googleapis.com/", @@ -343,7 +353,7 @@ } } }, - "revision": "20251203", + "revision": "20260318", "rootUrl": "https://sts.googleapis.com/", "schemas": { "GoogleIamV1Binding": { @@ -429,7 +439,7 @@ "type": "string" }, "subjectToken": { - "description": "Required. The input token. This token is either an external credential issued by a workload identity pool provider, or a short-lived access token issued by Google. If the token is an OIDC JWT, it must use the JWT format defined in [RFC 7523](https://tools.ietf.org/html/rfc7523), and the `subject_token_type` must be either `urn:ietf:params:oauth:token-type:jwt` or `urn:ietf:params:oauth:token-type:id_token`. The following headers are required: - `kid`: The identifier of the signing key securing the JWT. - `alg`: The cryptographic algorithm securing the JWT. Must be `RS256` or `ES256`. The following payload fields are required. For more information, see [RFC 7523, Section 3](https://tools.ietf.org/html/rfc7523#section-3): - `iss`: The issuer of the token. The issuer must provide a discovery document at the URL `/.well-known/openid-configuration`, where `` is the value of this field. The document must be formatted according to section 4.2 of the [OIDC 1.0 Discovery specification](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfigurationResponse). - `iat`: The issue time, in seconds, since the Unix epoch. Must be in the past. - `exp`: The expiration time, in seconds, since the Unix epoch. Must be less than 48 hours after `iat`. Shorter expiration times are more secure. If possible, we recommend setting an expiration time less than 6 hours. - `sub`: The identity asserted in the JWT. - `aud`: For workload identity pools, this must be a value specified in the allowed audiences for the workload identity pool provider, or one of the audiences allowed by default if no audiences were specified. See https://cloud.google.com/iam/docs/reference/rest/v1/projects.locations.workloadIdentityPools.providers#oidc. For workforce pools, this must match the client ID specified in the provider configuration. See https://cloud.google.com/iam/docs/reference/rest/v1/locations.workforcePools.providers#oidc. Example header: ``` { \"alg\": \"RS256\", \"kid\": \"us-east-11\" } ``` Example payload: ``` { \"iss\": \"https://accounts.google.com\", \"iat\": 1517963104, \"exp\": 1517966704, \"aud\": \"//iam.googleapis.com/projects/1234567890123/locations/global/workloadIdentityPools/my-pool/providers/my-provider\", \"sub\": \"113475438248934895348\", \"my_claims\": { \"additional_claim\": \"value\" } } ``` If `subject_token` is for AWS, it must be a serialized `GetCallerIdentity` token. This token contains the same information as a request to the AWS [`GetCallerIdentity()`](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetCallerIdentity) method, as well as the AWS [signature](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) for the request information. Use Signature Version 4. Format the request as URL-encoded JSON, and set the `subject_token_type` parameter to `urn:ietf:params:aws:token-type:aws4_request`. The following parameters are required: - `url`: The URL of the AWS STS endpoint for `GetCallerIdentity()`, such as `https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15`. Regional endpoints are also supported. - `method`: The HTTP request method: `POST`. - `headers`: The HTTP request headers, which must include: - `Authorization`: The request signature. - `x-amz-date`: The time you will send the request, formatted as an [ISO8601 Basic](https://docs.aws.amazon.com/general/latest/gr/sigv4_elements.html#sigv4_elements_date) string. This value is typically set to the current time and is used to help prevent replay attacks. - `host`: The hostname of the `url` field; for example, `sts.amazonaws.com`. - `x-goog-cloud-target-resource`: The full, canonical resource name of the workload identity pool provider, with or without an `https:` prefix. To help ensure data integrity, we recommend including this header in the `SignedHeaders` field of the signed request. For example: //iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ https://iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ If you are using temporary security credentials provided by AWS, you must also include the header `x-amz-security-token`, with the value set to the session token. The following example shows a `GetCallerIdentity` token: ``` { \"headers\": [ {\"key\": \"x-amz-date\", \"value\": \"20200815T015049Z\"}, {\"key\": \"Authorization\", \"value\": \"AWS4-HMAC-SHA256+Credential=$credential,+SignedHeaders=host;x-amz-date;x-goog-cloud-target-resource,+Signature=$signature\"}, {\"key\": \"x-goog-cloud-target-resource\", \"value\": \"//iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/\"}, {\"key\": \"host\", \"value\": \"sts.amazonaws.com\"} . ], \"method\": \"POST\", \"url\": \"https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15\" } ``` If the token is a SAML 2.0 assertion, it must use the format defined in [the SAML 2.0 spec](https://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0-cd-02.pdf), and the `subject_token_type` must be `urn:ietf:params:oauth:token-type:saml2`. See [Verification of external credentials](https://cloud.google.com/iam/docs/using-workload-identity-federation#verification_of_external_credentials) for details on how SAML 2.0 assertions are validated during token exchanges. You can also use a Google-issued OAuth 2.0 access token with this field to obtain an access token with new security attributes applied, such as a Credential Access Boundary. In this case, set `subject_token_type` to `urn:ietf:params:oauth:token-type:access_token`. If an access token already contains security attributes, you cannot apply additional security attributes. If the request is for X.509 certificate-based authentication, the `subject_token` must be a JSON-formatted list of X.509 certificates in DER format, as defined in [RFC 7515](https://www.rfc-editor.org/rfc/rfc7515#section-4.1.6). `subject_token_type` must be `urn:ietf:params:oauth:token-type:mtls`. The following example shows a JSON-formatted list of X.509 certificate in DER format: ``` [\\\"MIIEYDCCA0i...\\\", \\\"MCIFFGAGTT0...\\\"] ```", + "description": "Required. The input token. This token is either an external credential issued by a workload identity pool provider, or a short-lived access token issued by Google. If the token is an OIDC JWT, it must use the JWT format defined in [RFC 7523](https://tools.ietf.org/html/rfc7523), and the `subject_token_type` must be either `urn:ietf:params:oauth:token-type:jwt` or `urn:ietf:params:oauth:token-type:id_token`. The following headers are required: - `kid`: The identifier of the signing key securing the JWT. - `alg`: The cryptographic algorithm securing the JWT. Must be `RS256` or `ES256`. The following payload fields are required. For more information, see [RFC 7523, Section 3](https://tools.ietf.org/html/rfc7523#section-3): - `iss`: The issuer of the token. The issuer must provide a discovery document at the URL `/.well-known/openid-configuration`, where `` is the value of this field. The document must be formatted according to section 4.2 of the [OIDC 1.0 Discovery specification](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfigurationResponse). - `iat`: The issue time, in seconds, since the Unix epoch. This timestamp must be in the past and no more than 24 hours in the past, or the token will be rejected. Note that this implies the token is only acceptable within a time window of at most 24 hours. - `exp`: The expiration time, in seconds, since the Unix epoch. Shorter expiration times are more secure. If possible, we recommend setting an expiration time less than 6 hours. - `sub`: The identity asserted in the JWT. - `aud`: For workload identity pools, this must be a value specified in the allowed audiences for the workload identity pool provider, or one of the audiences allowed by default if no audiences were specified. See https://cloud.google.com/iam/docs/reference/rest/v1/projects.locations.workloadIdentityPools.providers#oidc. For workforce pools, this must match the client ID specified in the provider configuration. See https://cloud.google.com/iam/docs/reference/rest/v1/locations.workforcePools.providers#oidc. Example header: ``` { \"alg\": \"RS256\", \"kid\": \"us-east-11\" } ``` Example payload: ``` { \"iss\": \"https://accounts.google.com\", \"iat\": 1517963104, \"exp\": 1517966704, \"aud\": \"//iam.googleapis.com/projects/1234567890123/locations/global/workloadIdentityPools/my-pool/providers/my-provider\", \"sub\": \"113475438248934895348\", \"my_claims\": { \"additional_claim\": \"value\" } } ``` If `subject_token` is for AWS, it must be a serialized `GetCallerIdentity` token. This token contains the same information as a request to the AWS [`GetCallerIdentity()`](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetCallerIdentity) method, as well as the AWS [signature](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) for the request information. Use Signature Version 4. Format the request as URL-encoded JSON, and set the `subject_token_type` parameter to `urn:ietf:params:aws:token-type:aws4_request`. The following parameters are required: - `url`: The URL of the AWS STS endpoint for `GetCallerIdentity()`, such as `https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15`. Regional endpoints are also supported. - `method`: The HTTP request method: `POST`. - `headers`: The HTTP request headers, which must include: - `Authorization`: The request signature. - `x-amz-date`: The time you will send the request, formatted as an [ISO8601 Basic](https://docs.aws.amazon.com/general/latest/gr/sigv4_elements.html#sigv4_elements_date) string. This value is typically set to the current time and is used to help prevent replay attacks. - `host`: The hostname of the `url` field; for example, `sts.amazonaws.com`. - `x-goog-cloud-target-resource`: The full, canonical resource name of the workload identity pool provider, with or without an `https:` prefix. To help ensure data integrity, we recommend including this header in the `SignedHeaders` field of the signed request. For example: //iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ https://iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ If you are using temporary security credentials provided by AWS, you must also include the header `x-amz-security-token`, with the value set to the session token. The following example shows a `GetCallerIdentity` token: ``` { \"headers\": [ {\"key\": \"x-amz-date\", \"value\": \"20200815T015049Z\"}, {\"key\": \"Authorization\", \"value\": \"AWS4-HMAC-SHA256+Credential=$credential,+SignedHeaders=host;x-amz-date;x-goog-cloud-target-resource,+Signature=$signature\"}, {\"key\": \"x-goog-cloud-target-resource\", \"value\": \"//iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/\"}, {\"key\": \"host\", \"value\": \"sts.amazonaws.com\"} . ], \"method\": \"POST\", \"url\": \"https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15\" } ``` If the token is a SAML 2.0 assertion, it must use the format defined in [the SAML 2.0 spec](https://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0-cd-02.pdf), and the `subject_token_type` must be `urn:ietf:params:oauth:token-type:saml2`. See [Verification of external credentials](https://cloud.google.com/iam/docs/using-workload-identity-federation#verification_of_external_credentials) for details on how SAML 2.0 assertions are validated during token exchanges. You can also use a Google-issued OAuth 2.0 access token with this field to obtain an access token with new security attributes applied, such as a Credential Access Boundary. In this case, set `subject_token_type` to `urn:ietf:params:oauth:token-type:access_token`. If an access token already contains security attributes, you cannot apply additional security attributes. If the request is for X.509 certificate-based authentication, the `subject_token` must be a JSON-formatted list of X.509 certificates in DER format, as defined in [RFC 7515](https://www.rfc-editor.org/rfc/rfc7515#section-4.1.6). `subject_token_type` must be `urn:ietf:params:oauth:token-type:mtls`. The following example shows a JSON-formatted list of X.509 certificate in DER format: ``` [\\\"MIIEYDCCA0i...\\\", \\\"MCIFFGAGTT0...\\\"] ```", "type": "string" }, "subjectTokenType": { @@ -477,7 +487,7 @@ "description": "An access boundary that defines the upper bound of permissions the credential may have. The value should be a JSON object of AccessBoundary. The access boundary can include up to 10 rules. The size of the parameter value should not exceed 2048 characters." }, "bindCertFingerprint": { - "description": "The unpadded, base64url-encoded SHA-256 hash of the certificate's DER encoding and it must be 43 characters long. The resulting token will be bound to this value.", + "description": "The unpadded, url-escaped, base64-encoded SHA-256 hash of the certificate's DER encoding. It must be 43 characters long. The resulting token will be bound to this value.", "type": "string" }, "userProject": { diff --git a/discovery/sts-v1beta.json b/discovery/sts-v1beta.json index 1d6b66e2644..48dc86cd8a7 100644 --- a/discovery/sts-v1beta.json +++ b/discovery/sts-v1beta.json @@ -57,6 +57,11 @@ "endpointUrl": "https://sts.asia-southeast2.rep.googleapis.com/", "location": "asia-southeast2" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://sts.asia-southeast3.rep.googleapis.com/", + "location": "asia-southeast3" + }, { "description": "Regional Endpoint", "endpointUrl": "https://sts.australia-southeast1.rep.googleapis.com/", @@ -77,6 +82,11 @@ "endpointUrl": "https://sts.europe-north1.rep.googleapis.com/", "location": "europe-north1" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://sts.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, { "description": "Regional Endpoint", "endpointUrl": "https://sts.europe-southwest1.rep.googleapis.com/", @@ -343,7 +353,7 @@ } } }, - "revision": "20251203", + "revision": "20260318", "rootUrl": "https://sts.googleapis.com/", "schemas": { "GoogleIamV1Binding": { @@ -413,7 +423,7 @@ "description": "An access boundary that defines the upper bound of permissions the credential may have. The value should be a JSON object of AccessBoundary. The access boundary can include up to 10 rules. The size of the parameter value should not exceed 2048 characters." }, "bindCertFingerprint": { - "description": "The unpadded, base64url-encoded SHA-256 hash of the certificate's DER encoding and it must be 43 characters long. The resulting token will be bound to this value.", + "description": "The unpadded, url-escaped, base64-encoded SHA-256 hash of the certificate's DER encoding. It must be 43 characters long. The resulting token will be bound to this value.", "type": "string" }, "userProject": { @@ -484,7 +494,7 @@ "type": "string" }, "subjectToken": { - "description": "Required. The input token. This token is either an external credential issued by a workload identity pool provider, or a short-lived access token issued by Google. If the token is an OIDC JWT, it must use the JWT format defined in [RFC 7523](https://tools.ietf.org/html/rfc7523), and the `subject_token_type` must be either `urn:ietf:params:oauth:token-type:jwt` or `urn:ietf:params:oauth:token-type:id_token`. The following headers are required: - `kid`: The identifier of the signing key securing the JWT. - `alg`: The cryptographic algorithm securing the JWT. Must be `RS256` or `ES256`. The following payload fields are required. For more information, see [RFC 7523, Section 3](https://tools.ietf.org/html/rfc7523#section-3): - `iss`: The issuer of the token. The issuer must provide a discovery document at the URL `/.well-known/openid-configuration`, where `` is the value of this field. The document must be formatted according to section 4.2 of the [OIDC 1.0 Discovery specification](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfigurationResponse). - `iat`: The issue time, in seconds, since the Unix epoch. Must be in the past. - `exp`: The expiration time, in seconds, since the Unix epoch. Must be less than 48 hours after `iat`. Shorter expiration times are more secure. If possible, we recommend setting an expiration time less than 6 hours. - `sub`: The identity asserted in the JWT. - `aud`: For workload identity pools, this must be a value specified in the allowed audiences for the workload identity pool provider, or one of the audiences allowed by default if no audiences were specified. See https://cloud.google.com/iam/docs/reference/rest/v1/projects.locations.workloadIdentityPools.providers#oidc Example header: ``` { \"alg\": \"RS256\", \"kid\": \"us-east-11\" } ``` Example payload: ``` { \"iss\": \"https://accounts.google.com\", \"iat\": 1517963104, \"exp\": 1517966704, \"aud\": \"//iam.googleapis.com/projects/1234567890123/locations/global/workloadIdentityPools/my-pool/providers/my-provider\", \"sub\": \"113475438248934895348\", \"my_claims\": { \"additional_claim\": \"value\" } } ``` If `subject_token` is for AWS, it must be a serialized `GetCallerIdentity` token. This token contains the same information as a request to the AWS [`GetCallerIdentity()`](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetCallerIdentity) method, as well as the AWS [signature](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) for the request information. Use Signature Version 4. Format the request as URL-encoded JSON, and set the `subject_token_type` parameter to `urn:ietf:params:aws:token-type:aws4_request`. The following parameters are required: - `url`: The URL of the AWS STS endpoint for `GetCallerIdentity()`, such as `https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15`. Regional endpoints are also supported. - `method`: The HTTP request method: `POST`. - `headers`: The HTTP request headers, which must include: - `Authorization`: The request signature. - `x-amz-date`: The time you will send the request, formatted as an [ISO8601 Basic](https://docs.aws.amazon.com/general/latest/gr/sigv4_elements.html#sigv4_elements_date) string. This value is typically set to the current time and is used to help prevent replay attacks. - `host`: The hostname of the `url` field; for example, `sts.amazonaws.com`. - `x-goog-cloud-target-resource`: The full, canonical resource name of the workload identity pool provider, with or without an `https:` prefix. To help ensure data integrity, we recommend including this header in the `SignedHeaders` field of the signed request. For example: //iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ https://iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ If you are using temporary security credentials provided by AWS, you must also include the header `x-amz-security-token`, with the value set to the session token. The following example shows a `GetCallerIdentity` token: ``` { \"headers\": [ {\"key\": \"x-amz-date\", \"value\": \"20200815T015049Z\"}, {\"key\": \"Authorization\", \"value\": \"AWS4-HMAC-SHA256+Credential=$credential,+SignedHeaders=host;x-amz-date;x-goog-cloud-target-resource,+Signature=$signature\"}, {\"key\": \"x-goog-cloud-target-resource\", \"value\": \"//iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/\"}, {\"key\": \"host\", \"value\": \"sts.amazonaws.com\"} . ], \"method\": \"POST\", \"url\": \"https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15\" } ``` You can also use a Google-issued OAuth 2.0 access token with this field to obtain an access token with new security attributes applied, such as a Credential Access Boundary. In this case, set `subject_token_type` to `urn:ietf:params:oauth:token-type:access_token`. If an access token already contains security attributes, you cannot apply additional security attributes.", + "description": "Required. The input token. This token is either an external credential issued by a workload identity pool provider, or a short-lived access token issued by Google. If the token is an OIDC JWT, it must use the JWT format defined in [RFC 7523](https://tools.ietf.org/html/rfc7523), and the `subject_token_type` must be either `urn:ietf:params:oauth:token-type:jwt` or `urn:ietf:params:oauth:token-type:id_token`. The following headers are required: - `kid`: The identifier of the signing key securing the JWT. - `alg`: The cryptographic algorithm securing the JWT. Must be `RS256` or `ES256`. The following payload fields are required. For more information, see [RFC 7523, Section 3](https://tools.ietf.org/html/rfc7523#section-3): - `iss`: The issuer of the token. The issuer must provide a discovery document at the URL `/.well-known/openid-configuration`, where `` is the value of this field. The document must be formatted according to section 4.2 of the [OIDC 1.0 Discovery specification](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfigurationResponse). - `iat`: The issue time, in seconds, since the Unix epoch. This timestamp must be in the past and no more than 24 hours in the past, or the token will be rejected. Note that this implies the token is only acceptable within a time window of at most 24 hours. - `exp`: The expiration time, in seconds, since the Unix epoch. Shorter expiration times are more secure. If possible, we recommend setting an expiration time less than 6 hours. - `sub`: The identity asserted in the JWT. - `aud`: For workload identity pools, this must be a value specified in the allowed audiences for the workload identity pool provider, or one of the audiences allowed by default if no audiences were specified. See https://cloud.google.com/iam/docs/reference/rest/v1/projects.locations.workloadIdentityPools.providers#oidc Example header: ``` { \"alg\": \"RS256\", \"kid\": \"us-east-11\" } ``` Example payload: ``` { \"iss\": \"https://accounts.google.com\", \"iat\": 1517963104, \"exp\": 1517966704, \"aud\": \"//iam.googleapis.com/projects/1234567890123/locations/global/workloadIdentityPools/my-pool/providers/my-provider\", \"sub\": \"113475438248934895348\", \"my_claims\": { \"additional_claim\": \"value\" } } ``` If `subject_token` is for AWS, it must be a serialized `GetCallerIdentity` token. This token contains the same information as a request to the AWS [`GetCallerIdentity()`](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetCallerIdentity) method, as well as the AWS [signature](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) for the request information. Use Signature Version 4. Format the request as URL-encoded JSON, and set the `subject_token_type` parameter to `urn:ietf:params:aws:token-type:aws4_request`. The following parameters are required: - `url`: The URL of the AWS STS endpoint for `GetCallerIdentity()`, such as `https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15`. Regional endpoints are also supported. - `method`: The HTTP request method: `POST`. - `headers`: The HTTP request headers, which must include: - `Authorization`: The request signature. - `x-amz-date`: The time you will send the request, formatted as an [ISO8601 Basic](https://docs.aws.amazon.com/general/latest/gr/sigv4_elements.html#sigv4_elements_date) string. This value is typically set to the current time and is used to help prevent replay attacks. - `host`: The hostname of the `url` field; for example, `sts.amazonaws.com`. - `x-goog-cloud-target-resource`: The full, canonical resource name of the workload identity pool provider, with or without an `https:` prefix. To help ensure data integrity, we recommend including this header in the `SignedHeaders` field of the signed request. For example: //iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ https://iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ If you are using temporary security credentials provided by AWS, you must also include the header `x-amz-security-token`, with the value set to the session token. The following example shows a `GetCallerIdentity` token: ``` { \"headers\": [ {\"key\": \"x-amz-date\", \"value\": \"20200815T015049Z\"}, {\"key\": \"Authorization\", \"value\": \"AWS4-HMAC-SHA256+Credential=$credential,+SignedHeaders=host;x-amz-date;x-goog-cloud-target-resource,+Signature=$signature\"}, {\"key\": \"x-goog-cloud-target-resource\", \"value\": \"//iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/\"}, {\"key\": \"host\", \"value\": \"sts.amazonaws.com\"} . ], \"method\": \"POST\", \"url\": \"https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15\" } ``` You can also use a Google-issued OAuth 2.0 access token with this field to obtain an access token with new security attributes applied, such as a Credential Access Boundary. In this case, set `subject_token_type` to `urn:ietf:params:oauth:token-type:access_token`. If an access token already contains security attributes, you cannot apply additional security attributes.", "type": "string" }, "subjectTokenType": { diff --git a/discovery/tagmanager-v2.json b/discovery/tagmanager-v2.json index ec4e0790756..896b04404fe 100644 --- a/discovery/tagmanager-v2.json +++ b/discovery/tagmanager-v2.json @@ -3986,7 +3986,7 @@ } } }, - "revision": "20251203", + "revision": "20260304", "rootUrl": "https://tagmanager.googleapis.com/", "schemas": { "Account": { @@ -6453,6 +6453,24 @@ "$ref": "Parameter", "description": "The value to convert if a variable value is null." }, + "convertToBoolean": { + "description": "The option to convert a variable value to a boolean.", + "type": "boolean" + }, + "convertToNumber": { + "description": "The option to convert a variable value to a number.", + "enum": [ + "decimalSeparatorTypeUnspecified", + "period", + "comma" + ], + "enumDescriptions": [ + "", + "The option to convert a variable value to a number with a period as the decimal separator.", + "The option to convert a variable value to a number with a comma as the decimal separator." + ], + "type": "string" + }, "convertTrueToValue": { "$ref": "Parameter", "description": "The value to convert if a variable value is true." diff --git a/discovery/texttospeech-v1.json b/discovery/texttospeech-v1.json index 21adab47618..ead72bd5eeb 100644 --- a/discovery/texttospeech-v1.json +++ b/discovery/texttospeech-v1.json @@ -323,7 +323,7 @@ } } }, - "revision": "20260123", + "revision": "20260320", "rootUrl": "https://texttospeech.googleapis.com/", "schemas": { "AdvancedVoiceOptions": { @@ -339,8 +339,13 @@ "type": "boolean" }, "relaxSafetyFilters": { - "description": "Optional. Input only. If true, relaxes safety filters for Gemini TTS. Only supported for accounts linked to Invoiced (Offline) Cloud billing accounts. Otherwise, will return result google.rpc.Code.INVALID_ARGUMENT.", + "deprecated": true, + "description": "Optional. Input only. Deprecated, use safety_settings instead. If true, relaxes safety filters for Gemini TTS.", "type": "boolean" + }, + "safetySettings": { + "$ref": "SafetySettings", + "description": "Optional. Input only. This applies to Gemini TTS only. If set, the category specified in the safety setting will be blocked if the harm probability is above the threshold. Otherwise, the safety filter will be disabled by default." } }, "type": "object" @@ -628,6 +633,65 @@ }, "type": "object" }, + "SafetySetting": { + "description": "Safety setting for a single harm category.", + "id": "SafetySetting", + "properties": { + "category": { + "description": "The harm category to apply the safety setting to.", + "enum": [ + "HARM_CATEGORY_UNSPECIFIED", + "HARM_CATEGORY_HATE_SPEECH", + "HARM_CATEGORY_DANGEROUS_CONTENT", + "HARM_CATEGORY_HARASSMENT", + "HARM_CATEGORY_SEXUALLY_EXPLICIT" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Content that promotes violence or incites hatred against individuals or groups based on certain attributes.", + "Content that promotes, facilitates, or enables dangerous activities.", + "Abusive, threatening, or content intended to bully, torment, or ridicule.", + "Content that contains sexually explicit material." + ], + "type": "string" + }, + "threshold": { + "description": "The harm block threshold for the safety setting.", + "enum": [ + "HARM_BLOCK_THRESHOLD_UNSPECIFIED", + "BLOCK_LOW_AND_ABOVE", + "BLOCK_MEDIUM_AND_ABOVE", + "BLOCK_ONLY_HIGH", + "BLOCK_NONE", + "OFF" + ], + "enumDescriptions": [ + "The harm block threshold is unspecified.", + "Block content with a low harm probability or higher.", + "Block content with a medium harm probability or higher.", + "Block content with a high harm probability.", + "Do not block any content, regardless of its harm probability.", + "Turn off the safety filter entirely." + ], + "type": "string" + } + }, + "type": "object" + }, + "SafetySettings": { + "description": "Safety settings for the request.", + "id": "SafetySettings", + "properties": { + "settings": { + "description": "The safety settings for the request.", + "items": { + "$ref": "SafetySetting" + }, + "type": "array" + } + }, + "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", diff --git a/discovery/texttospeech-v1beta1.json b/discovery/texttospeech-v1beta1.json index 3143d181edb..a85e0a84dac 100644 --- a/discovery/texttospeech-v1beta1.json +++ b/discovery/texttospeech-v1beta1.json @@ -266,7 +266,7 @@ } } }, - "revision": "20260123", + "revision": "20260320", "rootUrl": "https://texttospeech.googleapis.com/", "schemas": { "AdvancedVoiceOptions": { @@ -282,8 +282,13 @@ "type": "boolean" }, "relaxSafetyFilters": { - "description": "Optional. Input only. If true, relaxes safety filters for Gemini TTS. Only supported for accounts linked to Invoiced (Offline) Cloud billing accounts. Otherwise, will return result google.rpc.Code.INVALID_ARGUMENT.", + "deprecated": true, + "description": "Optional. Input only. Deprecated, use safety_settings instead. If true, relaxes safety filters for Gemini TTS.", "type": "boolean" + }, + "safetySettings": { + "$ref": "SafetySettings", + "description": "Optional. Input only. This applies to Gemini TTS only. If set, the category specified in the safety setting will be blocked if the harm probability is above the threshold. Otherwise, the safety filter will be disabled by default." } }, "type": "object" @@ -561,6 +566,65 @@ }, "type": "object" }, + "SafetySetting": { + "description": "Safety setting for a single harm category.", + "id": "SafetySetting", + "properties": { + "category": { + "description": "The harm category to apply the safety setting to.", + "enum": [ + "HARM_CATEGORY_UNSPECIFIED", + "HARM_CATEGORY_HATE_SPEECH", + "HARM_CATEGORY_DANGEROUS_CONTENT", + "HARM_CATEGORY_HARASSMENT", + "HARM_CATEGORY_SEXUALLY_EXPLICIT" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Content that promotes violence or incites hatred against individuals or groups based on certain attributes.", + "Content that promotes, facilitates, or enables dangerous activities.", + "Abusive, threatening, or content intended to bully, torment, or ridicule.", + "Content that contains sexually explicit material." + ], + "type": "string" + }, + "threshold": { + "description": "The harm block threshold for the safety setting.", + "enum": [ + "HARM_BLOCK_THRESHOLD_UNSPECIFIED", + "BLOCK_LOW_AND_ABOVE", + "BLOCK_MEDIUM_AND_ABOVE", + "BLOCK_ONLY_HIGH", + "BLOCK_NONE", + "OFF" + ], + "enumDescriptions": [ + "The harm block threshold is unspecified.", + "Block content with a low harm probability or higher.", + "Block content with a medium harm probability or higher.", + "Block content with a high harm probability.", + "Do not block any content, regardless of its harm probability.", + "Turn off the safety filter entirely." + ], + "type": "string" + } + }, + "type": "object" + }, + "SafetySettings": { + "description": "Safety settings for the request.", + "id": "SafetySettings", + "properties": { + "settings": { + "description": "The safety settings for the request.", + "items": { + "$ref": "SafetySetting" + }, + "type": "array" + } + }, + "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", diff --git a/discovery/threatintelligence-v1beta.json b/discovery/threatintelligence-v1beta.json index 3dea93ac060..c861e8773b1 100644 --- a/discovery/threatintelligence-v1beta.json +++ b/discovery/threatintelligence-v1beta.json @@ -20,21 +20,6 @@ "description": "Regional Endpoint", "endpointUrl": "https://threatintelligence.us-central1.rep.googleapis.com/", "location": "us-central1" - }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://threatintelligence.us-east5.rep.googleapis.com/", - "location": "us-east5" - }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://threatintelligence.us-west2.rep.googleapis.com/", - "location": "us-west2" - }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://threatintelligence.us.rep.googleapis.com/", - "location": "us" } ], "fullyEncodeReservedExpansion": true, @@ -338,23 +323,23 @@ ], "parameters": { "filter": { - "description": "Optional. Filter criteria.", + "description": "Optional. Filter criteria. Supported fields for filtering include: * `audit.create_time` * `audit.creator` * `audit.update_time` * `audit.updater` * `detail.data_leak.discovery_document_ids` * `detail.data_leak.severity` * `detail.detail_type` * `detail.initial_access_broker.discovery_document_ids` * `detail.initial_access_broker.severity` * `detail.insider_threat.discovery_document_ids` * `detail.insider_threat.severity` * `finding_count` * `priority_analysis.priority_level` * `relevance_analysis.confidence` * `relevance_analysis.relevance_level` * `relevance_analysis.relevant` * `severity_analysis.severity_level` * `state` Examples: * `detail.detail_type = \"initial_access_broker\"` * `detail.detail_type != \"data_leak\"` * `detail.insider_threat.severity = \"HIGH\"` * `audit.create_time >= \"2026-04-03T00:00:00Z\" AND audit.create_time < \"2026-04-06T00:00:00Z\"` * `state = \"NEW\" OR state = \"TRIAGED\"` * `severity_analysis.severity_level = \"SEVERITY_LEVEL_CRITICAL\"`", "location": "query", "type": "string" }, "orderBy": { - "description": "Optional. Order by criteria in the csv format: \"field1,field2 desc\" or \"field1,field2\" or \"field1 asc, field2\".", + "description": "Optional. Order by criteria in the csv format: \"field1, field2 desc\" or \"field1, field2\" or \"field1 asc, field2\". If a field is specified without `asc` or `desc`, ascending order is used by default. Supported fields for ordering are identical to those supported for filtering. Examples: * `audit.create_time desc` * `audit.update_time asc` * `audit.create_time desc, severity_analysis.severity_level desc`", "location": "query", "type": "string" }, "pageSize": { - "description": "Optional. Page size.", + "description": "Optional. Page size. Default to 100 alerts per page. Maximum is 1000 alerts per page.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Optional. Page token.", + "description": "Optional. Page token to retrieve the next page of results.", "location": "query", "type": "string" }, @@ -832,7 +817,7 @@ } } }, - "revision": "20260223", + "revision": "20260428", "rootUrl": "https://threatintelligence.googleapis.com/", "schemas": { "Alert": { @@ -1005,7 +990,7 @@ "type": "string" }, "createTime": { - "description": "Output only. The time the document was created.", + "description": "Output only. The timestamp of the original external publication of the document.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -1562,7 +1547,7 @@ "type": "array" }, "severity": { - "description": "Required. Data Leak specific severity This will be the string representation of the DataLeakFindingDetail.Severityenum. (e.g., \"LOW\", \"MEDIUM\", \"HIGH\", \"CRITICAL\")", + "description": "Required. The severity of the Data Leak alert. Allowed values are: * `LOW` * `MEDIUM` * `HIGH` * `CRITICAL`", "type": "string" } }, @@ -1807,7 +1792,7 @@ "type": "array" }, "severity": { - "description": "Required. IAB specific severity", + "description": "Required. The severity of the Initial Access Broker (IAB) alert. Allowed values are: * `LOW` * `MEDIUM` * `HIGH` * `CRITICAL`", "type": "string" } }, @@ -1859,7 +1844,7 @@ "type": "array" }, "severity": { - "description": "Required. InsiderThreat specific severity This will be the string representation of the InsiderThreatFindingDetail.Severityenum. (e.g., \"LOW\", \"MEDIUM\", \"HIGH\", \"CRITICAL\")", + "description": "Required. The severity of the Insider Threat alert. Allowed values are: * `LOW` * `MEDIUM` * `HIGH` * `CRITICAL`", "type": "string" } }, diff --git a/discovery/toolresults-v1beta3.json b/discovery/toolresults-v1beta3.json index b589c4331f4..1579eb5c903 100644 --- a/discovery/toolresults-v1beta3.json +++ b/discovery/toolresults-v1beta3.json @@ -132,7 +132,7 @@ ] }, "initializeSettings": { - "description": "Creates resources for settings which have not yet been set. Currently, this creates a single resource: a Google Cloud Storage bucket, to be used as the default bucket for this project. The bucket is created in an FTL-own storage project. Except for in rare cases, calling this method in parallel from multiple clients will only create a single bucket. In order to avoid unnecessary storage charges, the bucket is configured to automatically delete objects older than 90 days. The bucket is created with the following permissions: - Owner access for owners of central storage project (FTL-owned) - Writer access for owners/editors of customer project - Reader access for viewers of customer project The default ACL on objects created in the bucket is: - Owner access for owners of central storage project - Reader access for owners/editors/viewers of customer project See Google Cloud Storage documentation for more details. If there is already a default bucket set and the project can access the bucket, this call does nothing. However, if the project doesn't have the permission to access the bucket or the bucket is deleted, a new bucket will be created. May return any canonical error codes, including the following: - PERMISSION_DENIED - if the user is not authorized to write to project - Any error code raised by Google Cloud Storage", + "description": "Creates resources for settings which have not yet been set. Currently, this creates a single resource: a Google Cloud Storage bucket, to be used as the default bucket for this project. The bucket is created in an FTL-own storage project. Except for in rare cases, calling this method in parallel from multiple clients will only create a single bucket. In order to avoid unnecessary storage charges, the bucket is configured to automatically delete objects older than 60 days. The bucket is created with the following permissions: - Owner access for owners of central storage project (FTL-owned) - Writer access for owners/editors of customer project - Reader access for viewers of customer project The default ACL on objects created in the bucket is: - Owner access for owners of central storage project - Reader access for owners/editors/viewers of customer project See Google Cloud Storage documentation for more details. If there is already a default bucket set and the project can access the bucket, this call does nothing. However, if the project doesn't have the permission to access the bucket or the bucket is deleted, a new bucket will be created. May return any canonical error codes, including the following: - PERMISSION_DENIED - if the user is not authorized to write to project - Any error code raised by Google Cloud Storage", "flatPath": "toolresults/v1beta3/projects/{projectId}:initializeSettings", "httpMethod": "POST", "id": "toolresults.projects.initializeSettings", @@ -1464,7 +1464,7 @@ } } }, - "revision": "20260108", + "revision": "20260325", "rootUrl": "https://toolresults.googleapis.com/", "schemas": { "ANR": { @@ -2022,7 +2022,7 @@ "id": "FileReference", "properties": { "fileUri": { - "description": "The URI of a file stored in Google Cloud Storage. For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000 An INVALID_ARGUMENT error will be returned if the URI format is not supported. - In response: always set - In create/update request: always set", + "description": "The URI of a file stored in Google Cloud Storage. For example: `http://storage.googleapis.com/mybucket/path/to/test.xml` or in Cloud Storage URI format: `gs://mybucket/path/to/test.xml` with version-specific info, `gs://mybucket/path/to/test.xml#1360383693690000` An INVALID_ARGUMENT error will be returned if the URI format is not supported. - In response: always set - In create/update request: always set", "type": "string" } }, @@ -3159,6 +3159,10 @@ "incompatibleDevice": { "description": "If the requested OS version doesn't run on the specific device model.", "type": "boolean" + }, + "pendingTimeout": { + "description": "Indicates that the test could not be scheduled in the requested time because no suitable device was available.", + "type": "boolean" } }, "type": "object" diff --git a/discovery/trafficdirector-v3.json b/discovery/trafficdirector-v3.json index 78c4900b799..74fdb6bb90d 100644 --- a/discovery/trafficdirector-v3.json +++ b/discovery/trafficdirector-v3.json @@ -66,6 +66,11 @@ "endpointUrl": "https://trafficdirector.asia-southeast2.rep.googleapis.com/", "location": "asia-southeast2" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://trafficdirector.asia-southeast3.rep.googleapis.com/", + "location": "asia-southeast3" + }, { "description": "Regional Endpoint", "endpointUrl": "https://trafficdirector.australia-southeast1.rep.googleapis.com/", @@ -111,6 +116,11 @@ "endpointUrl": "https://trafficdirector.europe-west12.rep.googleapis.com/", "location": "europe-west12" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://trafficdirector.europe-west15.rep.googleapis.com/", + "location": "europe-west15" + }, { "description": "Regional Endpoint", "endpointUrl": "https://trafficdirector.europe-west2.rep.googleapis.com/", @@ -355,7 +365,7 @@ } } }, - "revision": "20251015", + "revision": "20260427", "rootUrl": "https://trafficdirector.googleapis.com/", "schemas": { "Address": { diff --git a/discovery/travelimpactmodel-v1.json b/discovery/travelimpactmodel-v1.json index e64c42d05c8..13d2ff6b560 100644 --- a/discovery/travelimpactmodel-v1.json +++ b/discovery/travelimpactmodel-v1.json @@ -146,7 +146,7 @@ } } }, - "revision": "20260127", + "revision": "20260325", "rootUrl": "https://travelimpactmodel.googleapis.com/", "schemas": { "ComputeFlightEmissionsRequest": { @@ -380,7 +380,7 @@ }, "flight": { "$ref": "Flight", - "description": "Required. Matches the flight identifiers in the request. Note: all IATA codes are capitalized." + "description": "Identifier. Matches the flight identifiers in the request. Note: all IATA codes are capitalized." }, "source": { "description": "Optional. The source of the emissions data.", @@ -414,81 +414,6 @@ }, "type": "object" }, - "McpToolDataHandlingProfile": { - "description": "Profile describing the data handling characteristics of an MCP tool. When used within the McpTool.meta field, this message should be packed into a google.protobuf.Any and associated with the key: \"google.com/tool.profiles/data_handling\"", - "id": "McpToolDataHandlingProfile", - "properties": { - "inputDataAccessLevel": { - "description": "// The data access level of the tool's inputs.", - "enum": [ - "DATA_ACCESS_LEVEL_UNSPECIFIED", - "DATA_ACCESS_LEVEL_PUBLIC", - "DATA_ACCESS_LEVEL_CONFIDENTIAL", - "DATA_ACCESS_LEVEL_NEED_TO_KNOW", - "DATA_ACCESS_LEVEL_PII", - "DATA_ACCESS_LEVEL_USER", - "DATA_ACCESS_LEVEL_NO_DATA_ACCESS" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "Public data.", - "Confidential data.", - "Need-to-know data.", - "Personally Identifiable Information (PII) data.", - "User data.", - "The tool does not access any data." - ], - "type": "string" - }, - "outputDataAccessLevel": { - "description": "The data access level of the tool's outputs.", - "enum": [ - "DATA_ACCESS_LEVEL_UNSPECIFIED", - "DATA_ACCESS_LEVEL_PUBLIC", - "DATA_ACCESS_LEVEL_CONFIDENTIAL", - "DATA_ACCESS_LEVEL_NEED_TO_KNOW", - "DATA_ACCESS_LEVEL_PII", - "DATA_ACCESS_LEVEL_USER", - "DATA_ACCESS_LEVEL_NO_DATA_ACCESS" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "Public data.", - "Confidential data.", - "Need-to-know data.", - "Personally Identifiable Information (PII) data.", - "User data.", - "The tool does not access any data." - ], - "type": "string" - } - }, - "type": "object" - }, - "McpToolLifecycleProfile": { - "description": "Profile describing the lifecycle stage of an MCP tool. When used within the McpTool.meta field, this message should be packed into a google.protobuf.Any and associated with the key: \"google.com/tool.profiles/lifecycle\"", - "id": "McpToolLifecycleProfile", - "properties": { - "launchState": { - "description": "Output only. The current launch state of the MCP tool.", - "enum": [ - "LAUNCH_STATE_UNSPECIFIED", - "LAUNCH_STATE_DEVELOPMENT", - "LAUNCH_STATE_PRODUCTION_PREVIEW", - "LAUNCH_STATE_GENERAL_AVAILABILITY" - ], - "enumDescriptions": [ - "The default value. This value is unused.", - "The tool is currently in development.", - "The tool is in production preview.", - "The tool is generally available." - ], - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, "ModelVersion": { "description": "Travel Impact Model version. For more information about the model versioning see [GitHub](https://github.com/google/travel-impact-model/#versioning).", "id": "ModelVersion", @@ -521,7 +446,7 @@ "properties": { "flight": { "$ref": "Scope3FlightSegment", - "description": "Required. Matches the flight identifiers in the request." + "description": "Identifier. Matches the flight identifiers in the request." }, "source": { "description": "Optional. The source of the emissions data.", @@ -618,7 +543,7 @@ }, "market": { "$ref": "Market", - "description": "Required. Matches the flight identifiers in the request. Note: all IATA codes are capitalized." + "description": "Identifier. Matches the flight identifiers in the request. Note: all IATA codes are capitalized." } }, "type": "object" diff --git a/discovery/videointelligence-v1.json b/discovery/videointelligence-v1.json index 73e4d741be7..17e66390f0e 100644 --- a/discovery/videointelligence-v1.json +++ b/discovery/videointelligence-v1.json @@ -311,6 +311,11 @@ "description": "The standard list page token.", "location": "query", "type": "string" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+name}/operations", @@ -350,7 +355,7 @@ } } }, - "revision": "20250724", + "revision": "20260304", "rootUrl": "https://videointelligence.googleapis.com/", "schemas": { "GoogleCloudVideointelligenceV1_AnnotateVideoProgress": { @@ -1053,6 +1058,10 @@ "description": "Config for SPEECH_TRANSCRIPTION.", "id": "GoogleCloudVideointelligenceV1_SpeechTranscriptionConfig", "properties": { + "audioOutputUriPrefix": { + "description": "Optional. Legacy field. This field must be a Cloud Storage URI prefix. (e.g., `gs://bucket/path/`).", + "type": "string" + }, "audioTracks": { "description": "Optional. For file formats, such as MXF or MKV, supporting multiple audio tracks, specify up to two tracks. Default: track 0.", "items": { @@ -1495,6 +1504,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -2354,6 +2368,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -3213,6 +3232,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -4072,6 +4096,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -5064,6 +5093,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -5102,6 +5136,13 @@ "$ref": "GoogleLongrunning_Operation" }, "type": "array" + }, + "unreachable": { + "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" diff --git a/discovery/videointelligence-v1beta2.json b/discovery/videointelligence-v1beta2.json index d0929c05bce..a46c01e8d82 100644 --- a/discovery/videointelligence-v1beta2.json +++ b/discovery/videointelligence-v1beta2.json @@ -128,7 +128,7 @@ } } }, - "revision": "20250724", + "revision": "20260304", "rootUrl": "https://videointelligence.googleapis.com/", "schemas": { "GoogleCloudVideointelligenceV1_AnnotateVideoProgress": { @@ -972,6 +972,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -1690,6 +1695,10 @@ "description": "Config for SPEECH_TRANSCRIPTION.", "id": "GoogleCloudVideointelligenceV1beta2_SpeechTranscriptionConfig", "properties": { + "audioOutputUriPrefix": { + "description": "Optional. Legacy field. This field must be a Cloud Storage URI prefix. (e.g., `gs://bucket/path/`).", + "type": "string" + }, "audioTracks": { "description": "Optional. For file formats, such as MXF or MKV, supporting multiple audio tracks, specify up to two tracks. Default: track 0.", "items": { @@ -2132,6 +2141,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -2991,6 +3005,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -3850,6 +3869,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -4842,6 +4866,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", diff --git a/discovery/videointelligence-v1p1beta1.json b/discovery/videointelligence-v1p1beta1.json index 32af538eb06..a661f96c3d5 100644 --- a/discovery/videointelligence-v1p1beta1.json +++ b/discovery/videointelligence-v1p1beta1.json @@ -128,7 +128,7 @@ } } }, - "revision": "20250724", + "revision": "20260304", "rootUrl": "https://videointelligence.googleapis.com/", "schemas": { "GoogleCloudVideointelligenceV1_AnnotateVideoProgress": { @@ -972,6 +972,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -1831,6 +1836,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -2549,6 +2559,10 @@ "description": "Config for SPEECH_TRANSCRIPTION.", "id": "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscriptionConfig", "properties": { + "audioOutputUriPrefix": { + "description": "Optional. Legacy field. This field must be a Cloud Storage URI prefix. (e.g., `gs://bucket/path/`).", + "type": "string" + }, "audioTracks": { "description": "Optional. For file formats, such as MXF or MKV, supporting multiple audio tracks, specify up to two tracks. Default: track 0.", "items": { @@ -2991,6 +3005,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -3850,6 +3869,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -4842,6 +4866,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", diff --git a/discovery/videointelligence-v1p2beta1.json b/discovery/videointelligence-v1p2beta1.json index 6690e9d1762..8f4110e9fa0 100644 --- a/discovery/videointelligence-v1p2beta1.json +++ b/discovery/videointelligence-v1p2beta1.json @@ -128,7 +128,7 @@ } } }, - "revision": "20250724", + "revision": "20260304", "rootUrl": "https://videointelligence.googleapis.com/", "schemas": { "GoogleCloudVideointelligenceV1_AnnotateVideoProgress": { @@ -972,6 +972,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -1831,6 +1836,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -2690,6 +2700,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -3408,6 +3423,10 @@ "description": "Config for SPEECH_TRANSCRIPTION.", "id": "GoogleCloudVideointelligenceV1p2beta1_SpeechTranscriptionConfig", "properties": { + "audioOutputUriPrefix": { + "description": "Optional. Legacy field. This field must be a Cloud Storage URI prefix. (e.g., `gs://bucket/path/`).", + "type": "string" + }, "audioTracks": { "description": "Optional. For file formats, such as MXF or MKV, supporting multiple audio tracks, specify up to two tracks. Default: track 0.", "items": { @@ -3850,6 +3869,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -4842,6 +4866,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", diff --git a/discovery/videointelligence-v1p3beta1.json b/discovery/videointelligence-v1p3beta1.json index d02f486f67f..7e95843e71c 100644 --- a/discovery/videointelligence-v1p3beta1.json +++ b/discovery/videointelligence-v1p3beta1.json @@ -128,7 +128,7 @@ } } }, - "revision": "20250724", + "revision": "20260304", "rootUrl": "https://videointelligence.googleapis.com/", "schemas": { "GoogleCloudVideointelligenceV1_AnnotateVideoProgress": { @@ -972,6 +972,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -1831,6 +1836,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -2690,6 +2700,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -3549,6 +3564,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", @@ -4340,6 +4360,10 @@ "description": "Config for SPEECH_TRANSCRIPTION.", "id": "GoogleCloudVideointelligenceV1p3beta1_SpeechTranscriptionConfig", "properties": { + "audioOutputUriPrefix": { + "description": "Optional. Legacy field. This field must be a Cloud Storage URI prefix. (e.g., `gs://bucket/path/`).", + "type": "string" + }, "audioTracks": { "description": "Optional. For file formats, such as MXF or MKV, supporting multiple audio tracks, specify up to two tracks. Default: track 0.", "items": { @@ -4844,6 +4868,11 @@ "format": "google-duration", "type": "string" }, + "speakerLabel": { + "description": "Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word.", + "readOnly": true, + "type": "string" + }, "speakerTag": { "description": "Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled.", "format": "int32", diff --git a/discovery/vmmigration-v1.json b/discovery/vmmigration-v1.json index 6313a96e449..21ec37d79eb 100644 --- a/discovery/vmmigration-v1.json +++ b/discovery/vmmigration-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "vmmigration.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2548,7 +2548,7 @@ } } }, - "revision": "20260222", + "revision": "20260423", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AccessKeyCredentials": { diff --git a/discovery/vmmigration-v1alpha1.json b/discovery/vmmigration-v1alpha1.json index ccaacb2bdd8..f20be6fbc06 100644 --- a/discovery/vmmigration-v1alpha1.json +++ b/discovery/vmmigration-v1alpha1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1alpha1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "vmmigration.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2548,7 +2548,7 @@ } } }, - "revision": "20260222", + "revision": "20260423", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AccessKeyCredentials": { diff --git a/discovery/vmwareengine-v1.json b/discovery/vmwareengine-v1.json index 66bf6cd7e94..407a023a472 100644 --- a/discovery/vmwareengine-v1.json +++ b/discovery/vmwareengine-v1.json @@ -160,7 +160,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "vmwareengine.projects.locations.list", @@ -562,6 +562,11 @@ "description": "Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+parent}/networkPeerings", @@ -702,6 +707,11 @@ "format": "google-fieldmask", "location": "query", "type": "string" + }, + "validateOnly": { + "description": "Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+name}", @@ -791,6 +801,11 @@ "description": "Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+parent}/networkPolicies", @@ -967,6 +982,11 @@ "format": "google-fieldmask", "location": "query", "type": "string" + }, + "validateOnly": { + "description": "Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+name}", @@ -1009,6 +1029,11 @@ "description": "A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 the 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+parent}/externalAccessRules", @@ -1149,6 +1174,11 @@ "format": "google-fieldmask", "location": "query", "type": "string" + }, + "validateOnly": { + "description": "Optional. If set to `true`, only validates the request but doesn’t execute the// request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+name}", @@ -1365,7 +1395,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. True if you want the request to be validated and not executed; false otherwise.", + "description": "Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", "location": "query", "type": "boolean" } @@ -1575,6 +1605,11 @@ "format": "google-fieldmask", "location": "query", "type": "string" + }, + "validateOnly": { + "description": "Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+name}", @@ -1881,7 +1916,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. True if you want the request to be validated and not executed; false otherwise.", + "description": "Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", "location": "query", "type": "boolean" } @@ -2085,7 +2120,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. True if you want the request to be validated and not executed; false otherwise.", + "description": "Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", "location": "query", "type": "boolean" } @@ -2281,6 +2316,11 @@ "description": "Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 the 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+parent}/externalAddresses", @@ -2421,6 +2461,11 @@ "format": "google-fieldmask", "location": "query", "type": "string" + }, + "validateOnly": { + "description": "Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+name}", @@ -3260,6 +3305,11 @@ "description": "Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+parent}/privateConnections", @@ -3400,6 +3450,11 @@ "format": "google-fieldmask", "location": "query", "type": "string" + }, + "validateOnly": { + "description": "Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+name}", @@ -3480,6 +3535,11 @@ "location": "query", "type": "string" }, + "validateOnly": { + "description": "Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" + }, "vmwareEngineNetworkId": { "description": "Required. The user-provided identifier of the new VMware Engine network. This identifier must be unique among VMware Engine network resources within the parent and becomes the final token in the name URI. The identifier must meet the following requirements: * For networks of type LEGACY, adheres to the format: `{region-id}-default`. Replace `{region-id}` with the region where you want to create the VMware Engine network. For example, \"us-central1-default\". * Only contains 1-63 alphanumeric characters and hyphens * Begins with an alphabetical character * Ends with a non-hyphen character * Not formatted as a UUID * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)", "location": "query", @@ -3629,6 +3689,11 @@ "format": "google-fieldmask", "location": "query", "type": "string" + }, + "validateOnly": { + "description": "Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+name}", @@ -3649,7 +3714,7 @@ } } }, - "revision": "20260217", + "revision": "20260420", "rootUrl": "https://vmwareengine.googleapis.com/", "schemas": { "AcceleratePrivateCloudDeletionRequest": { @@ -5306,6 +5371,10 @@ "requestId": { "description": "Optional. 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "type": "boolean" } }, "type": "object" @@ -6535,6 +6604,10 @@ "requestId": { "description": "Optional. 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request.", + "type": "boolean" } }, "type": "object" diff --git a/discovery/vpcaccess-v1.json b/discovery/vpcaccess-v1.json index eda8fd13fd9..844ad97e89c 100644 --- a/discovery/vpcaccess-v1.json +++ b/discovery/vpcaccess-v1.json @@ -110,7 +110,7 @@ "locations": { "methods": { "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "vpcaccess.projects.locations.list", @@ -395,7 +395,7 @@ } } }, - "revision": "20260218", + "revision": "20260322", "rootUrl": "https://vpcaccess.googleapis.com/", "schemas": { "Connector": { diff --git a/discovery/vpcaccess-v1beta1.json b/discovery/vpcaccess-v1beta1.json index 133f46d491d..ffc975e6a4e 100644 --- a/discovery/vpcaccess-v1beta1.json +++ b/discovery/vpcaccess-v1beta1.json @@ -110,7 +110,7 @@ "locations": { "methods": { "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "vpcaccess.projects.locations.list", @@ -395,7 +395,7 @@ } } }, - "revision": "20260218", + "revision": "20260322", "rootUrl": "https://vpcaccess.googleapis.com/", "schemas": { "Connector": { diff --git a/discovery/walletobjects-v1.json b/discovery/walletobjects-v1.json index 574d1dd40f4..9e0f917953d 100644 --- a/discovery/walletobjects-v1.json +++ b/discovery/walletobjects-v1.json @@ -2713,7 +2713,7 @@ } } }, - "revision": "20260220", + "revision": "20260408", "rootUrl": "https://walletobjects.googleapis.com/", "schemas": { "ActivationOptions": { @@ -3415,6 +3415,10 @@ "description": "The content type of the file derived from the file extension of the original file name used by the client.", "type": "string" }, + "fromFusionId": { + "description": "The content type of the file detected by Fusion ID. go/fusionid", + "type": "string" + }, "fromHeader": { "description": "The content type of the file as specified in the request headers, multipart headers, or RUPIO start request.", "type": "string" @@ -3422,6 +3426,11 @@ "fromUrlPath": { "description": "The content type of the file derived from the file extension of the URL path. The URL path is assumed to represent a file name (which is typically only true for agents that are providing a REST API).", "type": "string" + }, + "fusionIdDetectionMetadata": { + "description": "Metadata information from Fusion ID detection. Serialized FusionIdDetectionMetadata proto. Only set if from_fusion_id is set.", + "format": "byte", + "type": "string" } }, "type": "object" @@ -5460,23 +5469,35 @@ "GENERIC_ENTRY_TICKET", "GENERIC_RECEIPT", "GENERIC_LOYALTY_CARD", + "GENERIC_BUSINESS_CARD", + "GENERIC_BARCODE_PASS", + "GENERIC_MEMBERSHIP_CARD", + "GENERIC_STUDENT_CARD", + "GENERIC_TRANSIT_PASS", + "GENERIC_VEHICLE_REGISTRATION", "GENERIC_OTHER" ], "enumDescriptions": [ "Unspecified generic type.", - "Season pass", - "Utility bills", - "Parking pass", - "Voucher", - "Gym membership cards", - "Library membership cards", - "Reservations", - "Auto-insurance cards", - "Home-insurance cards", - "Entry tickets", - "Receipts", - "Loyalty cards. Please note that it is advisable to use a dedicated Loyalty card pass type instead of this generic type. A dedicated loyalty card pass type offers more features and functionality than a generic pass type.", - "Other type" + "Represents a season pass.", + "Represents a utility bill.", + "Represents a parking pass.", + "Represents a voucher.", + "Represents a gym membership card.", + "Represents a library card.", + "Represents a reservation.", + "Represents an auto-insurance card.", + "Represents a home-insurance card.", + "Represents an entry ticket.", + "Represents a receipt.", + "Represents a loyalty card. Please note that it is advisable to use a dedicated Loyalty card pass type instead of this generic type. A dedicated loyalty card pass type offers more features and functionality than a generic pass type.", + "Represents a business card.", + "Represents a barcode pass.", + "Represents a membership card.", + "Represents a student card.", + "Represents a transit pass.", + "Represents a vehicle registration.", + "Represents another type of generic pass." ], "type": "string" }, diff --git a/discovery/workflows-v1.json b/discovery/workflows-v1.json index 66e0d4129a6..ae80fb74b36 100644 --- a/discovery/workflows-v1.json +++ b/discovery/workflows-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "workflows.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -496,7 +496,7 @@ } } }, - "revision": "20260128", + "revision": "20260422", "rootUrl": "https://workflows.googleapis.com/", "schemas": { "Empty": { diff --git a/discovery/workflows-v1beta.json b/discovery/workflows-v1beta.json index d370e70d574..7c9a1df307d 100644 --- a/discovery/workflows-v1beta.json +++ b/discovery/workflows-v1beta.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta/projects/{projectsId}/locations", "httpMethod": "GET", "id": "workflows.projects.locations.list", @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -455,7 +455,7 @@ } } }, - "revision": "20260128", + "revision": "20260422", "rootUrl": "https://workflows.googleapis.com/", "schemas": { "Empty": { diff --git a/discovery/workloadmanager-v1.json b/discovery/workloadmanager-v1.json index 7d25c7066d8..3cca60ac8f6 100644 --- a/discovery/workloadmanager-v1.json +++ b/discovery/workloadmanager-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "workloadmanager.projects.locations.list", @@ -574,12 +574,12 @@ ], "parameters": { "evaluationId": { - "description": "Required. Id of the requesting object", + "description": "Required. Id of the requesting object.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The resource prefix of the evaluation location using the form: `projects/{project_id}/locations/{location_id}`", + "description": "Required. The resource prefix of the evaluation location using the form: `projects/{project_id}/locations/{location_id}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -612,12 +612,12 @@ ], "parameters": { "force": { - "description": "Optional. Followed the best practice from https://aip.dev/135#cascading-delete", + "description": "Optional. Followed the best practice from https://aip.dev/135#cascading-delete.", "location": "query", "type": "boolean" }, "name": { - "description": "Required. Name of the resource", + "description": "Required. Name of the resource.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/evaluations/[^/]+$", "required": true, @@ -647,7 +647,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the resource", + "description": "Required. Name of the resource.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/evaluations/[^/]+$", "required": true, @@ -677,7 +677,7 @@ "type": "string" }, "orderBy": { - "description": "Hint for how to order the results", + "description": "Hint for how to order the results.", "location": "query", "type": "string" }, @@ -693,7 +693,7 @@ "type": "string" }, "parent": { - "description": "Required. Parent value for ListEvaluationsRequest", + "description": "Required. Parent value for ListEvaluationsRequest.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -718,7 +718,7 @@ ], "parameters": { "name": { - "description": "name of resource names have the form 'projects/{project_id}/locations/{location_id}/evaluations/{evaluation_id}'", + "description": "Name of resource that has the form `projects/{project_id}/locations/{location_id}/evaluations/{evaluation_id}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/evaluations/[^/]+$", "required": true, @@ -761,7 +761,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the resource", + "description": "Required. Name of the resource.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/evaluations/[^/]+/executions/[^/]+$", "required": true, @@ -791,7 +791,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the resource", + "description": "Required. Name of the resource.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/evaluations/[^/]+/executions/[^/]+$", "required": true, @@ -816,7 +816,7 @@ ], "parameters": { "filter": { - "description": "Filtering results", + "description": "Filtering results.", "location": "query", "type": "string" }, @@ -837,7 +837,7 @@ "type": "string" }, "parent": { - "description": "Required. The resource prefix of the Execution using the form: 'projects/{project}/locations/{location}/evaluations/{evaluation}'", + "description": "Required. The resource prefix of the Execution using the form: `projects/{project}/locations/{location}/evaluations/{evaluation}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/evaluations/[^/]+$", "required": true, @@ -862,7 +862,7 @@ ], "parameters": { "name": { - "description": "Required. The resource name of the Execution using the form: 'projects/{project}/locations/{location}/evaluations/{evaluation}/executions/{execution}'", + "description": "Required. The resource name of the Evaluation using the form: `projects/{project}/locations/{location}/evaluations/{evaluation}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/evaluations/[^/]+$", "required": true, @@ -894,7 +894,7 @@ ], "parameters": { "filter": { - "description": "Filtering results", + "description": "Filtering results.", "location": "query", "type": "string" }, @@ -910,7 +910,7 @@ "type": "string" }, "parent": { - "description": "Required. The execution results. Format: {parent}/evaluations/*/executions/*/results", + "description": "Required. The execution results. Format: {parent}/evaluations/*/executions/*/results.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/evaluations/[^/]+/executions/[^/]+$", "required": true, @@ -939,7 +939,7 @@ ], "parameters": { "filter": { - "description": "Filtering results", + "description": "Filtering results.", "location": "query", "type": "string" }, @@ -960,14 +960,14 @@ "type": "string" }, "parent": { - "description": "Required. parent for ListScannedResourcesRequest", + "description": "Required. Parent for ListScannedResourcesRequest.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/evaluations/[^/]+/executions/[^/]+$", "required": true, "type": "string" }, "rule": { - "description": "rule name", + "description": "Rule name.", "location": "query", "type": "string" } @@ -1198,28 +1198,19 @@ "EVALUATION_TYPE_UNSPECIFIED", "SAP", "SQL_SERVER", - "OTHER", - "SCC_IAC" - ], - "enumDeprecated": [ - false, - false, - false, - false, - true + "OTHER" ], "enumDescriptions": [ - "Not specified", - "SAP best practices", - "SQL best practices", - "Customized best practices", - "SCC IaC (Infra as Code) best practices." + "Not specified.", + "SAP best practices.", + "SQL best practices.", + "Customized best practices." ], "location": "query", "type": "string" }, "filter": { - "description": "Filter based on primary_category, secondary_category", + "description": "Filter based on primary_category, secondary_category.", "location": "query", "type": "string" }, @@ -1235,7 +1226,7 @@ "type": "string" }, "parent": { - "description": "Required. The [project] on which to execute the request. The format is: projects/{project_id}/locations/{location} Currently, the pre-defined rules are global available to all projects and all regions", + "description": "Required. The [project] on which to execute the request. The format is: projects/{project_id}/locations/{location} Currently, the pre-defined rules are global available to all projects and all regions.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -1257,7 +1248,7 @@ } } }, - "revision": "20260204", + "revision": "20260401", "rootUrl": "https://workloadmanager.googleapis.com/", "schemas": { "ActiveDirectory": { @@ -1442,18 +1433,18 @@ "type": "object" }, "AgentCommand": { - "description": "* An AgentCommand specifies a one-time executable program for the agent to run.", + "description": "An AgentCommand specifies a one-time executable program for the agent to run.", "id": "AgentCommand", "properties": { "command": { - "description": "command is the name of the agent one-time executable that will be invoked.", + "description": "The name of the agent one-time executable that will be invoked.", "type": "string" }, "parameters": { "additionalProperties": { "type": "string" }, - "description": "parameters is a map of key/value pairs that can be used to specify additional one-time executable settings.", + "description": "A map of key/value pairs that can be used to specify additional one-time executable settings.", "type": "object" } }, @@ -1859,15 +1850,15 @@ "type": "object" }, "BigQueryDestination": { - "description": "Message describing big query destination", + "description": "BigQuery destination for evaluation results.", "id": "BigQueryDestination", "properties": { "createNewResultsTable": { - "description": "Optional. determine if results will be saved in a new table", + "description": "Optional. Determines if a new results table will be created when an Execution is created.", "type": "boolean" }, "destinationDataset": { - "description": "Optional. destination dataset to save evaluation results", + "description": "Optional. Destination dataset to save evaluation results.", "type": "string" } }, @@ -1930,7 +1921,7 @@ "type": "object" }, "Command": { - "description": "* Command specifies the type of command to execute.", + "description": "Command specifies the type of command to execute.", "id": "Command", "properties": { "agentCommand": { @@ -2253,15 +2244,15 @@ "type": "object" }, "Evaluation": { - "description": "Message describing Evaluation object", + "description": "Represents a Workload Manager Evaluation configuration. An Evaluation defines a set of rules to be validated against a scope of Cloud resources.", "id": "Evaluation", "properties": { "bigQueryDestination": { "$ref": "BigQueryDestination", - "description": "Optional. BigQuery destination" + "description": "Optional. The BigQuery destination for detailed evaluation results. If this field is specified, the results of each evaluation execution are exported to BigQuery." }, "createTime": { - "description": "Output only. [Output only] Create time stamp", + "description": "Output only. [Output only] Create time stamp.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -2271,79 +2262,62 @@ "type": "string" }, "description": { - "description": "Description of the Evaluation", + "description": "Description of the Evaluation.", "type": "string" }, "evaluationType": { - "description": "Evaluation type", + "description": "Evaluation type.", "enum": [ "EVALUATION_TYPE_UNSPECIFIED", "SAP", "SQL_SERVER", - "OTHER", - "SCC_IAC" - ], - "enumDeprecated": [ - false, - false, - false, - false, - true + "OTHER" ], "enumDescriptions": [ - "Not specified", - "SAP best practices", - "SQL best practices", - "Customized best practices", - "SCC IaC (Infra as Code) best practices." + "Not specified.", + "SAP best practices.", + "SQL best practices.", + "Customized best practices." ], "type": "string" }, "kmsKey": { - "description": "Optional. Immutable. Customer-managed encryption key name, in the format projects/*/locations/*/keyRings/*/cryptoKeys/*.", + "description": "Optional. Immutable. Customer-managed encryption key name, in the format projects/*/locations/*/keyRings/*/cryptoKeys/*. The key will be used for CMEK encryption of the evaluation resource.", "type": "string" }, "labels": { "additionalProperties": { "type": "string" }, - "description": "Labels as key value pairs", + "description": "Labels as key value pairs.", "type": "object" }, "name": { - "description": "name of resource names have the form 'projects/{project_id}/locations/{location_id}/evaluations/{evaluation_id}'", + "description": "Name of resource that has the form `projects/{project_id}/locations/{location_id}/evaluations/{evaluation_id}`.", "type": "string" }, "resourceFilter": { "$ref": "ResourceFilter", - "description": "annotations as key value pairs" + "description": "Resource filter for an evaluation defining the scope of resources to be evaluated." }, "resourceStatus": { "$ref": "ResourceStatus", - "description": "Output only. [Output only] The updated rule ids if exist.", + "description": "Output only. [Output only] The current lifecycle state of the evaluation resource.", "readOnly": true }, "ruleNames": { - "description": "the name of the rule", - "items": { - "type": "string" - }, - "type": "array" - }, - "ruleVersions": { - "description": "Output only. [Output only] The updated rule ids if exist.", + "description": "The names of the rules used for this evaluation.", "items": { "type": "string" }, - "readOnly": true, "type": "array" }, "schedule": { - "description": "crontab format schedule for scheduled evaluation, currently only support the following schedule: \"0 */1 * * *\", \"0 */6 * * *\", \"0 */12 * * *\", \"0 0 */1 * *\", \"0 0 */7 * *\",", + "description": "Crontab format schedule for scheduled evaluation, currently only supports the following fixed schedules: * `0 */1 * * *` # Hourly * `0 */6 * * *` # Every 6 hours * `0 */12 * * *` # Every 12 hours * `0 0 */1 * *` # Daily * `0 0 */7 * *` # Weekly * `0 0 */14 * *` # Every 14 days * `0 0 1 */1 *` # Monthly", "type": "string" }, "updateTime": { - "description": "Output only. [Output only] Update time stamp", + "description": "Output only. [Output only] Update time stamp.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -2352,43 +2326,43 @@ "type": "object" }, "Execution": { - "description": "Message describing Execution object", + "description": "Execution that represents a single run of an Evaluation.", "id": "Execution", "properties": { "endTime": { - "description": "Output only. [Output only] End time stamp", + "description": "Output only. [Output only] End time stamp.", "format": "google-datetime", "readOnly": true, "type": "string" }, "engine": { - "description": "Optional. Engine", + "description": "Optional. Engine.", "enum": [ "ENGINE_UNSPECIFIED", "ENGINE_SCANNER", "V2" ], "enumDescriptions": [ - "The original CG", - "SlimCG / Scanner", - "Evaluation Engine V2" + "The original CG.", + "SlimCG / Scanner.", + "Evaluation Engine V2." ], "type": "string" }, "evaluationId": { - "description": "Output only. [Output only] Evaluation ID", + "description": "Output only. [Output only] Evaluation ID.", "readOnly": true, "type": "string" }, "externalDataSources": { - "description": "Optional. External data sources", + "description": "Optional. External data sources.", "items": { "$ref": "ExternalDataSources" }, "type": "array" }, "inventoryTime": { - "description": "Output only. [Output only] Inventory time stamp", + "description": "Output only. [Output only] Inventory time stamp.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -2397,15 +2371,15 @@ "additionalProperties": { "type": "string" }, - "description": "Labels as key value pairs", + "description": "Labels as key value pairs.", "type": "object" }, "name": { - "description": "The name of execution resource. The format is projects/{project}/locations/{location}/evaluations/{evaluation}/executions/{execution}", + "description": "The name of execution resource. The format is projects/{project}/locations/{location}/evaluations/{evaluation}/executions/{execution}.", "type": "string" }, "notices": { - "description": "Output only. Additional information generated by the execution", + "description": "Output only. Additional information generated by the execution.", "items": { "$ref": "Notice" }, @@ -2414,11 +2388,11 @@ }, "resultSummary": { "$ref": "Summary", - "description": "Output only. [Output only] Result summary for the execution", + "description": "Output only. [Output only] Result summary for the execution.", "readOnly": true }, "ruleResults": { - "description": "Output only. execution result summary per rule", + "description": "Output only. Execution result summary per rule.", "items": { "$ref": "RuleExecutionResult" }, @@ -2426,27 +2400,27 @@ "type": "array" }, "runType": { - "description": "type represent whether the execution executed directly by user or scheduled according evaluation.schedule field.", + "description": "Type which represents whether the execution executed directly by user or scheduled according to the `Evaluation.schedule` field.", "enum": [ "TYPE_UNSPECIFIED", "ONE_TIME", "SCHEDULED" ], "enumDescriptions": [ - "type of execution is unspecified", - "type of execution is one time", - "type of execution is scheduled" + "Type of execution is unspecified.", + "Type of execution is one time.", + "Type of execution is scheduled." ], "type": "string" }, "startTime": { - "description": "Output only. [Output only] Start time stamp", + "description": "Output only. [Output only] Start time stamp.", "format": "google-datetime", "readOnly": true, "type": "string" }, "state": { - "description": "Output only. [Output only] State", + "description": "Output only. [Output only] State.", "enum": [ "STATE_UNSPECIFIED", "RUNNING", @@ -2454,10 +2428,10 @@ "FAILED" ], "enumDescriptions": [ - "state of execution is unspecified", - "the execution is running in backend service", - "the execution run success", - "the execution run failed" + "State of execution is unspecified.", + "The execution is running in backend service.", + "The execution run succeeded.", + "The execution run failed." ], "readOnly": true, "type": "string" @@ -2466,7 +2440,7 @@ "type": "object" }, "ExecutionResult": { - "description": "Message describing the result of an execution", + "description": "The result of an execution.", "id": "ExecutionResult", "properties": { "commands": { @@ -2493,16 +2467,16 @@ "type": "string" }, "type": { - "description": "Execution result type of the scanned resource", + "description": "Execution result type of the scanned resource.", "enum": [ "TYPE_UNSPECIFIED", "TYPE_PASSED", "TYPE_VIOLATED" ], "enumDescriptions": [ - "Unknown state", - "resource successfully passed the rule", - "resource violated the rule" + "Unknown state.", + "Resource successfully passed the rule.", + "Resource violated the rule." ], "type": "string" }, @@ -2518,7 +2492,7 @@ "type": "object" }, "ExternalDataSources": { - "description": "Message for external data sources", + "description": "External data sources for an execution.", "id": "ExternalDataSources", "properties": { "assetType": { @@ -2526,34 +2500,34 @@ "type": "string" }, "name": { - "description": "Optional. Name of external data source. The name will be used inside the rego/sql to refer the external data", + "description": "Optional. Name of external data source. The name will be used inside the rego/sql to refer the external data.", "type": "string" }, "type": { - "description": "Required. Type of external data source", + "description": "Required. Type of external data source.", "enum": [ "TYPE_UNSPECIFIED", "BIG_QUERY_TABLE" ], "enumDescriptions": [ - "Unknown type", - "BigQuery table" + "Unknown type.", + "BigQuery table." ], "type": "string" }, "uri": { - "description": "Required. URI of external data source. example of bq table {project_ID}.{dataset_ID}.{table_ID}", + "description": "Required. URI of external data source. example of bq table {project_ID}.{dataset_ID}.{table_ID}.", "type": "string" } }, "type": "object" }, "GceInstanceFilter": { - "description": "Message describing compute engine instance filter", + "description": "A filter for matching Compute Engine instances.", "id": "GceInstanceFilter", "properties": { "serviceAccounts": { - "description": "Service account of compute engine", + "description": "If non-empty, only Compute Engine instances associated with at least one of the provided service accounts will be included in the evaluation.", "items": { "type": "string" }, @@ -2718,43 +2692,6 @@ }, "type": "object" }, - "InvalidRule": { - "description": "Message represent an rule that failed to be validated.", - "id": "InvalidRule", - "properties": { - "displayName": { - "description": "display name of the invalid rule", - "type": "string" - }, - "gcsUri": { - "description": "cloud storage destination of the invalid rule", - "type": "string" - }, - "name": { - "description": "name of the invalid rule", - "type": "string" - }, - "valiadtionError": { - "description": "The error message of valdating rule formats.", - "type": "string" - } - }, - "type": "object" - }, - "InvalidRulesWrapper": { - "description": "Message wrappes a list of invalid rules.", - "id": "InvalidRulesWrapper", - "properties": { - "invalidRules": { - "description": "The invalid rules that failed to be validated.", - "items": { - "$ref": "InvalidRule" - }, - "type": "array" - } - }, - "type": "object" - }, "ListActuationsResponse": { "description": "The response object from `ListActuations`.", "id": "ListActuationsResponse", @@ -2833,11 +2770,11 @@ "type": "object" }, "ListEvaluationsResponse": { - "description": "Message for response to listing Evaluations", + "description": "Response message for the ListEvaluations RPC.", "id": "ListEvaluationsResponse", "properties": { "evaluations": { - "description": "The list of Evaluation", + "description": "The list of evaluations.", "items": { "$ref": "Evaluation" }, @@ -2858,7 +2795,7 @@ "type": "object" }, "ListExecutionResultsResponse": { - "description": "Message for response of list execution results", + "description": "Response message for the ListExecutionResults RPC.", "id": "ListExecutionResultsResponse", "properties": { "executionResults": { @@ -2876,11 +2813,11 @@ "type": "object" }, "ListExecutionsResponse": { - "description": "Message for response to listing Executions", + "description": "Response message for the ListExecutions RPC.", "id": "ListExecutionsResponse", "properties": { "executions": { - "description": "The list of Execution", + "description": "The list of Execution.", "items": { "$ref": "Execution" }, @@ -2944,15 +2881,11 @@ "type": "object" }, "ListRulesResponse": { - "description": "Mesesage of response of list rules", + "description": "Response message for the ListRules RPC.", "id": "ListRulesResponse", "properties": { - "invalidRulesWrapper": { - "$ref": "InvalidRulesWrapper", - "description": "A wrapper of the invalid rules that failed to be validated." - }, "rules": { - "description": "all rules in response", + "description": "All rules in response.", "items": { "$ref": "Rule" }, @@ -2962,7 +2895,7 @@ "type": "object" }, "ListScannedResourcesResponse": { - "description": "Message for response to list scanned resources", + "description": "Response message for the ListScannedResources RPC.", "id": "ListScannedResourcesResponse", "properties": { "nextPageToken": { @@ -2970,7 +2903,7 @@ "type": "string" }, "scannedResources": { - "description": "All scanned resources in response", + "description": "All scanned resources in response.", "items": { "$ref": "ScannedResource" }, @@ -3081,11 +3014,11 @@ "type": "object" }, "Notice": { - "description": "Message for additional information generated by the execution", + "description": "Additional information generated by an execution.", "id": "Notice", "properties": { "message": { - "description": "Output only. Message of the notice", + "description": "Output only. Message of the notice.", "readOnly": true, "type": "string" } @@ -3237,7 +3170,7 @@ "type": "object" }, "Resource": { - "description": "Message represent resource in execution result", + "description": "Resource in execution result.", "id": "Resource", "properties": { "name": { @@ -3256,29 +3189,29 @@ "type": "object" }, "ResourceFilter": { - "description": "Message describing resource filters", + "description": "Resource filter for an evaluation defining the scope of resources to be evaluated.", "id": "ResourceFilter", "properties": { "gceInstanceFilter": { "$ref": "GceInstanceFilter", - "description": "Filter compute engine resource" + "description": "Filter compute engine resources." }, "inclusionLabels": { "additionalProperties": { "type": "string" }, - "description": "The label used for filter resource", + "description": "Labels to filter resources by. Each key-value pair in the map must exist on the resource for it to be included (e.g. VM instance labels). For example, specifying `{ \"env\": \"prod\", \"database\": \"nosql\" }` will only include resources that have labels `env=prod` and `database=nosql`.", "type": "object" }, "resourceIdPatterns": { - "description": "The id pattern for filter resource", + "description": "The pattern to filter resources by their id For example, a pattern of \".*prod-cluster.*\" will match all resources that contain \"prod-cluster\" in their ID.", "items": { "type": "string" }, "type": "array" }, "scopes": { - "description": "The scopes of evaluation resource", + "description": "The scopes of evaluation resource. Format: * `projects/{project_id}` * `folders/{folder_id}` * `organizations/{organization_id}`", "items": { "type": "string" }, @@ -3288,19 +3221,11 @@ "type": "object" }, "ResourceStatus": { - "description": "Message describing resource status", + "description": "The lifecycle status of an Evaluation resource.", "id": "ResourceStatus", "properties": { - "rulesNewerVersions": { - "deprecated": true, - "description": "Historical: Used before 2023-05-22 the new version of rule id if exists", - "items": { - "type": "string" - }, - "type": "array" - }, "state": { - "description": "State of the resource", + "description": "State of the Evaluation resource.", "enum": [ "STATE_UNSPECIFIED", "CREATING", @@ -3319,7 +3244,7 @@ "type": "object" }, "Rule": { - "description": "Message represent a rule", + "description": "A rule to be evaluated.", "id": "Rule", "properties": { "assetType": { @@ -3327,31 +3252,31 @@ "type": "string" }, "description": { - "description": "descrite rule in plain language", + "description": "Describe rule in plain language.", "type": "string" }, "displayName": { - "description": "the name display in UI", + "description": "The name display in UI.", "type": "string" }, "errorMessage": { - "description": "the message template for rule", + "description": "The message template for rule.", "type": "string" }, "name": { - "description": "rule name", + "description": "Rule name.", "type": "string" }, "primaryCategory": { - "description": "the primary category", + "description": "The primary category.", "type": "string" }, "remediation": { - "description": "the remediation for the rule", + "description": "The remediation for the rule.", "type": "string" }, "revisionId": { - "description": "Output only. the version of the rule", + "description": "Output only. The version of the rule.", "readOnly": true, "type": "string" }, @@ -3364,57 +3289,57 @@ ], "enumDescriptions": [ "Not specified.", - "Baseline rules", - "Custom rules" + "Baseline rules.", + "Custom rules." ], "type": "string" }, "secondaryCategory": { - "description": "the secondary category", + "description": "The secondary category.", "type": "string" }, "severity": { - "description": "the severity of the rule", + "description": "The severity of the rule.", "type": "string" }, "tags": { - "description": "List of user-defined tags", + "description": "List of user-defined tags.", "items": { "type": "string" }, "type": "array" }, "uri": { - "description": "the docuement url for the rule", + "description": "The document url for the rule.", "type": "string" } }, "type": "object" }, "RuleExecutionResult": { - "description": "Message for execution result summary per rule", + "description": "Execution result summary per rule.", "id": "RuleExecutionResult", "properties": { "message": { - "description": "Execution message, if any", + "description": "Execution message, if any.", "type": "string" }, "resultCount": { - "description": "Number of violations", + "description": "Number of violations.", "format": "int64", "type": "string" }, "rule": { - "description": "rule name", + "description": "Rule name as plain text like `sap-hana-configured`.", "type": "string" }, "scannedResourceCount": { - "description": "Number of total scanned resources", + "description": "Number of total scanned resources.", "format": "int64", "type": "string" }, "state": { - "description": "Output only. The execution status", + "description": "Output only. The execution status.", "enum": [ "STATE_UNSPECIFIED", "STATE_SUCCESS", @@ -3423,9 +3348,9 @@ ], "enumDescriptions": [ "Unknown state", - "execution completed successfully", - "execution completed with failures", - "execution was not executed" + "Execution completed successfully", + "Execution completed with failures", + "Execution was not executed" ], "readOnly": true, "type": "string" @@ -3454,15 +3379,15 @@ "type": "object" }, "RunEvaluationRequest": { - "description": "Message for creating a Execution", + "description": "Request message for the RunEvaluation RPC.", "id": "RunEvaluationRequest", "properties": { "execution": { "$ref": "Execution", - "description": "Required. The resource being created" + "description": "Required. The resource being created." }, "executionId": { - "description": "Required. Id of the requesting object If auto-generating Id server-side, remove this field and execution_id from the method_signature of Create RPC", + "description": "Required. ID of the execution which will be created.", "type": "string" }, "requestId": { @@ -4310,15 +4235,15 @@ "type": "object" }, "ScannedResource": { - "description": "Message of scanned resource", + "description": "A scanned resource.", "id": "ScannedResource", "properties": { "resource": { - "description": "resource name", + "description": "Resource name.", "type": "string" }, "type": { - "description": "resource type", + "description": "Resource type.", "type": "string" } }, @@ -4361,15 +4286,15 @@ "type": "object" }, "ShellCommand": { - "description": "* A ShellCommand is invoked via the agent's command line executor", + "description": "A ShellCommand is invoked via the agent's command line executor.", "id": "ShellCommand", "properties": { "args": { - "description": "args is a string of arguments to be passed to the command.", + "description": "Arguments to be passed to the command.", "type": "string" }, "command": { - "description": "command is the name of the command to be executed.", + "description": "The name of the command to be executed.", "type": "string" }, "timeoutSeconds": { @@ -4714,23 +4639,23 @@ "type": "object" }, "Summary": { - "description": "Message for execution summary", + "description": "Execution summary.", "id": "Summary", "properties": { "failures": { - "description": "Output only. Number of failures", + "description": "Output only. Number of failures.", "format": "int64", "readOnly": true, "type": "string" }, "newFailures": { - "description": "Output only. Number of new failures compared to the previous execution", + "description": "Output only. Number of new failures compared to the previous execution.", "format": "int64", "readOnly": true, "type": "string" }, "newFixes": { - "description": "Output only. Number of new fixes compared to the previous execution", + "description": "Output only. Number of new fixes compared to the previous execution.", "format": "int64", "readOnly": true, "type": "string" @@ -4821,7 +4746,7 @@ "type": "object" }, "ViolationDetails": { - "description": "Message describing the violation in an evaluation result.", + "description": "The violation in an evaluation result.", "id": "ViolationDetails", "properties": { "asset": { diff --git a/discovery/workspaceevents-v1.json b/discovery/workspaceevents-v1.json index 2a9891ca157..a88adb44e53 100644 --- a/discovery/workspaceevents-v1.json +++ b/discovery/workspaceevents-v1.json @@ -5,12 +5,18 @@ "https://www.googleapis.com/auth/chat.app.memberships": { "description": "On their own behalf, apps in Google Chat can see, add, update, and remove members from conversations and spaces" }, + "https://www.googleapis.com/auth/chat.app.memberships.readonly": { + "description": "On their own behalf, apps in Google Chat can see members of conversations and spaces" + }, "https://www.googleapis.com/auth/chat.app.messages.readonly": { "description": "On their own behalf, apps in Google Chat can see all messages and their associated reactions and message content" }, "https://www.googleapis.com/auth/chat.app.spaces": { "description": "On their own behalf, apps in Google Chat can create conversations and spaces and see or update their metadata (including history settings and access settings)" }, + "https://www.googleapis.com/auth/chat.app.spaces.readonly": { + "description": "On their own behalf, apps in Google Chat can see conversations and spaces and their metadata (including history settings and access settings)" + }, "https://www.googleapis.com/auth/chat.bot": { "description": "Private Service: https://www.googleapis.com/auth/chat.bot" }, @@ -38,6 +44,12 @@ "https://www.googleapis.com/auth/chat.spaces.readonly": { "description": "View chat and spaces in Google Chat" }, + "https://www.googleapis.com/auth/chat.users.readstate": { + "description": "View and modify last read time for Google Chat conversations" + }, + "https://www.googleapis.com/auth/chat.users.readstate.readonly": { + "description": "View last read time for Google Chat conversations" + }, "https://www.googleapis.com/auth/drive": { "description": "See, edit, create, and delete all of your Google Drive files" }, @@ -211,6 +223,8 @@ "https://www.googleapis.com/auth/chat.messages.readonly", "https://www.googleapis.com/auth/chat.spaces", "https://www.googleapis.com/auth/chat.spaces.readonly", + "https://www.googleapis.com/auth/chat.users.readstate", + "https://www.googleapis.com/auth/chat.users.readstate.readonly", "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/drive.metadata", @@ -225,7 +239,7 @@ "subscriptions": { "methods": { "create": { - "description": "Creates a Google Workspace subscription. To learn how to use this method, see [Create a Google Workspace subscription](https://developers.google.com/workspace/events/guides/create-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can create a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` and getting one-time administrator approval ([Developer Preview](https://developers.google.com/workspace/preview)). To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).", + "description": "Creates a Google Workspace subscription. To learn how to use this method, see [Create a Google Workspace subscription](https://developers.google.com/workspace/events/guides/create-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can create a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` and getting one-time administrator approval. To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).", "flatPath": "v1/subscriptions", "httpMethod": "POST", "id": "workspaceevents.subscriptions.create", @@ -246,8 +260,10 @@ }, "scopes": [ "https://www.googleapis.com/auth/chat.app.memberships", + "https://www.googleapis.com/auth/chat.app.memberships.readonly", "https://www.googleapis.com/auth/chat.app.messages.readonly", "https://www.googleapis.com/auth/chat.app.spaces", + "https://www.googleapis.com/auth/chat.app.spaces.readonly", "https://www.googleapis.com/auth/chat.memberships", "https://www.googleapis.com/auth/chat.memberships.readonly", "https://www.googleapis.com/auth/chat.messages", @@ -256,6 +272,8 @@ "https://www.googleapis.com/auth/chat.messages.readonly", "https://www.googleapis.com/auth/chat.spaces", "https://www.googleapis.com/auth/chat.spaces.readonly", + "https://www.googleapis.com/auth/chat.users.readstate", + "https://www.googleapis.com/auth/chat.users.readstate.readonly", "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/drive.metadata", @@ -311,6 +329,8 @@ "https://www.googleapis.com/auth/chat.messages.readonly", "https://www.googleapis.com/auth/chat.spaces", "https://www.googleapis.com/auth/chat.spaces.readonly", + "https://www.googleapis.com/auth/chat.users.readstate", + "https://www.googleapis.com/auth/chat.users.readstate.readonly", "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/drive.metadata", @@ -351,6 +371,8 @@ "https://www.googleapis.com/auth/chat.messages.readonly", "https://www.googleapis.com/auth/chat.spaces", "https://www.googleapis.com/auth/chat.spaces.readonly", + "https://www.googleapis.com/auth/chat.users.readstate", + "https://www.googleapis.com/auth/chat.users.readstate.readonly", "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/drive.metadata", @@ -398,6 +420,8 @@ "https://www.googleapis.com/auth/chat.messages.readonly", "https://www.googleapis.com/auth/chat.spaces", "https://www.googleapis.com/auth/chat.spaces.readonly", + "https://www.googleapis.com/auth/chat.users.readstate", + "https://www.googleapis.com/auth/chat.users.readstate.readonly", "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/drive.metadata", @@ -408,7 +432,7 @@ ] }, "patch": { - "description": "Updates or renews a Google Workspace subscription. To learn how to use this method, see [Update or renew a Google Workspace subscription](https://developers.google.com/workspace/events/guides/update-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can update a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` andgetting one-time administrator approval ([Developer Preview](https://developers.google.com/workspace/preview)). To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).", + "description": "Updates or renews a Google Workspace subscription. To learn how to use this method, see [Update or renew a Google Workspace subscription](https://developers.google.com/workspace/events/guides/update-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can update a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` and getting one-time administrator approval. To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).", "flatPath": "v1/subscriptions/{subscriptionsId}", "httpMethod": "PATCH", "id": "workspaceevents.subscriptions.patch", @@ -444,8 +468,10 @@ }, "scopes": [ "https://www.googleapis.com/auth/chat.app.memberships", + "https://www.googleapis.com/auth/chat.app.memberships.readonly", "https://www.googleapis.com/auth/chat.app.messages.readonly", "https://www.googleapis.com/auth/chat.app.spaces", + "https://www.googleapis.com/auth/chat.app.spaces.readonly", "https://www.googleapis.com/auth/chat.memberships", "https://www.googleapis.com/auth/chat.memberships.readonly", "https://www.googleapis.com/auth/chat.messages", @@ -454,6 +480,8 @@ "https://www.googleapis.com/auth/chat.messages.readonly", "https://www.googleapis.com/auth/chat.spaces", "https://www.googleapis.com/auth/chat.spaces.readonly", + "https://www.googleapis.com/auth/chat.users.readstate", + "https://www.googleapis.com/auth/chat.users.readstate.readonly", "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/drive.metadata", @@ -464,7 +492,7 @@ ] }, "reactivate": { - "description": "Reactivates a suspended Google Workspace subscription. This method resets your subscription's `State` field to `ACTIVE`. Before you use this method, you must fix the error that suspended the subscription. This method will ignore or reject any subscription that isn't currently in a suspended state. To learn how to use this method, see [Reactivate a Google Workspace subscription](https://developers.google.com/workspace/events/guides/reactivate-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can reactivate a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` andgetting one-time administrator approval ([Developer Preview](https://developers.google.com/workspace/preview)). To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).", + "description": "Reactivates a suspended Google Workspace subscription. This method resets your subscription's `State` field to `ACTIVE`. Before you use this method, you must fix the error that suspended the subscription. This method will ignore or reject any subscription that isn't currently in a suspended state. To learn how to use this method, see [Reactivate a Google Workspace subscription](https://developers.google.com/workspace/events/guides/reactivate-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can reactivate a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` and getting one-time administrator approval. To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user).", "flatPath": "v1/subscriptions/{subscriptionsId}:reactivate", "httpMethod": "POST", "id": "workspaceevents.subscriptions.reactivate", @@ -489,8 +517,10 @@ }, "scopes": [ "https://www.googleapis.com/auth/chat.app.memberships", + "https://www.googleapis.com/auth/chat.app.memberships.readonly", "https://www.googleapis.com/auth/chat.app.messages.readonly", "https://www.googleapis.com/auth/chat.app.spaces", + "https://www.googleapis.com/auth/chat.app.spaces.readonly", "https://www.googleapis.com/auth/chat.memberships", "https://www.googleapis.com/auth/chat.memberships.readonly", "https://www.googleapis.com/auth/chat.messages", @@ -499,6 +529,8 @@ "https://www.googleapis.com/auth/chat.messages.readonly", "https://www.googleapis.com/auth/chat.spaces", "https://www.googleapis.com/auth/chat.spaces.readonly", + "https://www.googleapis.com/auth/chat.users.readstate", + "https://www.googleapis.com/auth/chat.users.readstate.readonly", "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/drive.metadata", @@ -733,7 +765,7 @@ } } }, - "revision": "20251216", + "revision": "20260422", "rootUrl": "https://workspaceevents.googleapis.com/", "schemas": { "Artifact": { @@ -1198,6 +1230,11 @@ "readOnly": true, "type": "boolean" }, + "serviceAccountAuthority": { + "description": "Output only. The service account that was used to authorize the creation of the subscription. This service account must be owned by the same Google Cloud project where you created this subscription. Format: `projects/{project_id}/serviceAccounts/{service_account_id}`", + "readOnly": true, + "type": "string" + }, "state": { "description": "Output only. The state of the subscription. Determines whether the subscription can receive events and deliver them to the notification endpoint.", "enum": [ @@ -1220,8 +1257,10 @@ "enum": [ "ERROR_TYPE_UNSPECIFIED", "USER_SCOPE_REVOKED", + "APP_SCOPE_REVOKED", "RESOURCE_DELETED", "USER_AUTHORIZATION_FAILURE", + "APP_AUTHORIZATION_FAILURE", "ENDPOINT_PERMISSION_DENIED", "ENDPOINT_NOT_FOUND", "ENDPOINT_RESOURCE_EXHAUSTED", @@ -1230,8 +1269,10 @@ "enumDescriptions": [ "Default value. This value is unused.", "The authorizing user has revoked the grant of one or more OAuth scopes. To learn more about authorization for Google Workspace, see [Configure the OAuth consent screen](https://developers.google.com/workspace/guides/configure-oauth-consent#choose-scopes).", + "The domain administrator has revoked the grant of one or more OAuth scopes for the app.", "The target resource for the subscription no longer exists.", "The user that authorized the creation of the subscription no longer has access to the subscription's target resource.", + "The app that authorized the creation of the subscription no longer has access to the subscription's target resource.", "The Google Workspace application doesn't have access to deliver events to your subscription's notification endpoint.", "The subscription's notification endpoint doesn't exist, or the endpoint can't be found in the Google Cloud project where you created the subscription.", "The subscription's notification endpoint failed to receive events due to insufficient quota or reaching rate limiting.", @@ -1259,6 +1300,11 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "userAuthority": { + "description": "Output only. The user who authorized the creation of the subscription. The user must be able to view the `target_resource`. For Google Workspace users, the `{user}` value is the [`user.id`](https://developers.google.com/workspace/admin/directory/reference/rest/v1/users#User.FIELDS.id) field from the Directory API. Format: `users/{user}`", + "readOnly": true, + "type": "string" } }, "type": "object" diff --git a/discovery/workstations-v1.json b/discovery/workstations-v1.json index 5a13020bfb0..67b27406b49 100644 --- a/discovery/workstations-v1.json +++ b/discovery/workstations-v1.json @@ -135,7 +135,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "workstations.projects.locations.list", @@ -330,7 +330,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" }, @@ -378,7 +378,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not apply it.", "location": "query", "type": "boolean" } @@ -485,7 +485,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" } @@ -522,7 +522,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" }, @@ -570,7 +570,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" } @@ -744,7 +744,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" } @@ -837,7 +837,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" }, @@ -880,7 +880,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" } @@ -1064,7 +1064,7 @@ ], "parameters": { "allowMissing": { - "description": "Optional. If set and the workstation configuration is not found, a new workstation configuration is created. In this situation, update_mask is ignored.", + "description": "Optional. If set and the workstation is not found, a new workstation is created. In this situation, update_mask is ignored.", "location": "query", "type": "boolean" }, @@ -1076,13 +1076,13 @@ "type": "string" }, "updateMask": { - "description": "Required. Mask specifying which fields in the workstation configuration should be updated.", + "description": "Required. Mask specifying which fields in the workstation should be updated.", "format": "google-fieldmask", "location": "query", "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" } @@ -1221,7 +1221,7 @@ } } }, - "revision": "20260126", + "revision": "20260413", "rootUrl": "https://workstations.googleapis.com/", "schemas": { "Accelerator": { @@ -1660,6 +1660,11 @@ "description": "A Persistent Directory backed by a Compute Engine regional persistent disk. The persistent_directories field is repeated, but it may contain only one entry. It creates a [persistent disk](https://cloud.google.com/compute/docs/disks/persistent-disks) that mounts to the workstation VM at `/home` when the session starts and detaches when the session ends. If this field is empty, workstations created with this configuration do not have a persistent home directory.", "id": "GceRegionalPersistentDisk", "properties": { + "archiveTimeout": { + "description": "Optional. Number of seconds to wait after initially creating or subsequently shutting down the workstation before converting its disk into a snapshot. This generally saves costs at the expense of greater startup time on next workstation start, as the service will need to create a disk from the archival snapshot. A value of `\"0s\"` indicates that the disk will never be archived.", + "format": "google-duration", + "type": "string" + }, "diskType": { "description": "Optional. The [type of the persistent disk](https://cloud.google.com/compute/docs/disks#disk-types) for the home directory. Defaults to `\"pd-standard\"`.", "type": "string" @@ -2200,7 +2205,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "type": "boolean" } }, @@ -2242,7 +2247,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "type": "boolean" } }, @@ -2490,6 +2495,14 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "workstationAuthorizationUrl": { + "description": "Optional. Specifies the redirect URL for unauthorized requests received by workstation VMs in this cluster. Redirects to this endpoint will send a base64 encoded `state` query param containing the target workstation name and original request hostname. The endpoint is responsible for retrieving a token using `GenerateAccessToken` and redirecting back to the original hostname with the token.", + "type": "string" + }, + "workstationLaunchUrl": { + "description": "Optional. Specifies the launch URL for workstations in this cluster. Requests sent to unstarted workstations will be redirected to this URL. Requests redirected to the launch endpoint will be sent with a `workstation` and `project` query parameter containing the full workstation resource name and project ID, respectively. The launch endpoint is responsible for starting the workstation, polling it until it reaches `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.", + "type": "string" } }, "type": "object" diff --git a/discovery/workstations-v1beta.json b/discovery/workstations-v1beta.json index dde64cb5a71..07287cac834 100644 --- a/discovery/workstations-v1beta.json +++ b/discovery/workstations-v1beta.json @@ -256,7 +256,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" }, @@ -304,7 +304,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not apply it.", "location": "query", "type": "boolean" } @@ -411,7 +411,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" } @@ -448,7 +448,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" }, @@ -496,7 +496,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" } @@ -670,7 +670,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" } @@ -763,7 +763,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" }, @@ -806,7 +806,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" } @@ -990,7 +990,7 @@ ], "parameters": { "allowMissing": { - "description": "Optional. If set and the workstation configuration is not found, a new workstation configuration is created. In this situation, update_mask is ignored.", + "description": "Optional. If set and the workstation is not found, a new workstation is created. In this situation, update_mask is ignored.", "location": "query", "type": "boolean" }, @@ -1002,13 +1002,13 @@ "type": "string" }, "updateMask": { - "description": "Required. Mask specifying which fields in the workstation configuration should be updated.", + "description": "Required. Mask specifying which fields in the workstation should be updated.", "format": "google-fieldmask", "location": "query", "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "location": "query", "type": "boolean" } @@ -1024,6 +1024,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "pushCredentials": { + "description": "Pushes credentials to a running workstation on behalf of a user. Once complete, supported credential types (application_default_credentials) are made available to processes running in the user container.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/workstationClusters/{workstationClustersId}/workstationConfigs/{workstationConfigsId}/workstations/{workstationsId}:pushCredentials", + "httpMethod": "POST", + "id": "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.pushCredentials", + "parameterOrder": [ + "workstation" + ], + "parameters": { + "workstation": { + "description": "Required. Name of the workstation for which the credentials should be pushed.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workstationClusters/[^/]+/workstationConfigs/[^/]+/workstations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+workstation}:pushCredentials", + "request": { + "$ref": "PushCredentialsRequest" + }, + "response": { + "$ref": "Operation" + }, + "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": "v1beta/projects/{projectsId}/locations/{locationsId}/workstationClusters/{workstationClustersId}/workstationConfigs/{workstationConfigsId}/workstations/{workstationsId}:setIamPolicy", @@ -1147,7 +1175,7 @@ } } }, - "revision": "20260113", + "revision": "20260413", "rootUrl": "https://workstations.googleapis.com/", "schemas": { "Accelerator": { @@ -1872,6 +1900,30 @@ }, "type": "object" }, + "OAuthToken": { + "description": "OAuth token.", + "id": "OAuthToken", + "properties": { + "accessToken": { + "description": "Required. The OAuth token.", + "type": "string" + }, + "email": { + "description": "Optional. The email address encapsulated in the OAuth token.", + "type": "string" + }, + "expireTime": { + "description": "Optional. The time the OAuth access token will expire. This should be the time the access token was generated plus the expires_in offset returned from the Access Token Response.", + "format": "google-datetime", + "type": "string" + }, + "scopes": { + "description": "Optional. The scopes encapsulated in the OAuth token. See https://developers.google.com/identity/protocols/oauth2/scopes for more information.", + "type": "string" + } + }, + "type": "object" + }, "Operation": { "description": "This resource represents a long-running operation that is the result of a network API call.", "id": "Operation", @@ -2046,6 +2098,17 @@ }, "type": "object" }, + "PushCredentialsRequest": { + "description": "Request message for PushCredentials.", + "id": "PushCredentialsRequest", + "properties": { + "applicationDefaultCredentials": { + "$ref": "OAuthToken", + "description": "Optional. Credentials used by Cloud Client Libraries, Google API Client Libraries, and other tooling within the user conainer: https://cloud.google.com/docs/authentication/application-default-credentials" + } + }, + "type": "object" + }, "ReadinessCheck": { "description": "A readiness check to be performed on a workstation.", "id": "ReadinessCheck", @@ -2136,7 +2199,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "type": "boolean" } }, @@ -2178,7 +2241,7 @@ "type": "string" }, "validateOnly": { - "description": "Optional. If set, validate the request and preview the review, but do not actually apply it.", + "description": "Optional. If set, validate the request and preview the result, but do not actually apply it.", "type": "boolean" } }, @@ -2484,6 +2547,14 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "workstationAuthorizationUrl": { + "description": "Optional. Specifies the redirect URL for unauthorized requests received by workstation VMs in this cluster. Redirects to this endpoint will send a base64 encoded `state` query param containing the target workstation name and original request hostname. The endpoint is responsible for retrieving a token using `GenerateAccessToken` and redirecting back to the original hostname with the token.", + "type": "string" + }, + "workstationLaunchUrl": { + "description": "Optional. Specifies the launch URL for workstations in this cluster. Requests sent to unstarted workstations will be redirected to this URL. Requests redirected to the launch endpoint will be sent with a `workstation` and `project` query parameter containing the full workstation resource name and project ID, respectively. The launch endpoint is responsible for starting the workstation, polling it until it reaches `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.", + "type": "string" } }, "type": "object" @@ -2547,6 +2618,10 @@ "description": "Optional. Whether to enable Linux `auditd` logging on the workstation. When enabled, a service_account must also be specified that has `roles/logging.logWriter` and `roles/monitoring.metricWriter` on the project. Operating system audit logging is distinct from [Cloud Audit Logs](https://cloud.google.com/workstations/docs/audit-logging) and [Container output logging](https://cloud.google.com/workstations/docs/container-output-logging#overview). Operating system audit logs are available in the [Cloud Logging](https://cloud.google.com/logging/docs) console by querying: resource.type=\"gce_instance\" log_name:\"/logs/linux-auditd\"", "type": "boolean" }, + "enablePushingCredentials": { + "description": "Optional. Enables pushing user provided credentials to Workstations by calling workstations.pushCredentials. If application_default_credentials are supplied to pushCredentials, the provided token is returned when tools and applications running in the user container make a request for Default Application Credentials. Please note that any credentials supplied are made available to all users with access to the workstation.", + "type": "boolean" + }, "encryptionKey": { "$ref": "CustomerEncryptionKey", "description": "Immutable. Encrypts resources of this workstation configuration using a customer-managed encryption key (CMEK). If specified, the boot disk of the Compute Engine instance and the persistent disk are encrypted using this encryption key. If this field is not set, the disks are encrypted using a generated key. Customer-managed encryption keys do not protect disk metadata. If the customer-managed encryption key is rotated, when the workstation instance is stopped, the system attempts to recreate the persistent disk with the new version of the key. Be sure to keep older versions of the key until the persistent disk is recreated. Otherwise, data on the persistent disk might be lost. If the encryption key is revoked, the workstation session automatically stops within 7 hours. Immutable after the workstation configuration is created." diff --git a/discovery/youtube-v3.json b/discovery/youtube-v3.json index 4aaa6f9d6a7..774beee1f25 100644 --- a/discovery/youtube-v3.json +++ b/discovery/youtube-v3.json @@ -172,6 +172,7 @@ "type": "string" }, "home": { + "deprecated": true, "location": "query", "type": "boolean" }, @@ -185,7 +186,6 @@ "type": "integer" }, "mine": { - "deprecated": true, "location": "query", "type": "boolean" }, @@ -3305,6 +3305,10 @@ "location": "query", "type": "string" }, + "onBehalfOfContentOwnerChannel": { + "location": "query", + "type": "string" + }, "part": { "location": "query", "repeated": true, @@ -4172,7 +4176,7 @@ } } }, - "revision": "20260205", + "revision": "20260430", "rootUrl": "https://youtube.googleapis.com/", "schemas": { "AbuseReport": { @@ -8832,8 +8836,8 @@ "description": "Whether the gift involves a visual effect.", "type": "boolean" }, - "jewelsCount": { - "description": "The cost of the gift in jewels.", + "jewelsAmount": { + "description": "The value of the gift in jewels.", "format": "int32", "type": "integer" }, diff --git a/discovery/youtubereporting-v1.json b/discovery/youtubereporting-v1.json index d0163e49889..32537040237 100644 --- a/discovery/youtubereporting-v1.json +++ b/discovery/youtubereporting-v1.json @@ -411,7 +411,7 @@ } } }, - "revision": "20260113", + "revision": "20260408", "rootUrl": "https://youtubereporting.googleapis.com/", "schemas": { "Empty": { @@ -549,6 +549,10 @@ "description": "gdata", "type": "string" }, + "fromFusionId": { + "description": "gdata", + "type": "string" + }, "fromHeader": { "description": "gdata", "type": "string" @@ -556,6 +560,11 @@ "fromUrlPath": { "description": "gdata", "type": "string" + }, + "fusionIdDetectionMetadata": { + "description": "gdata", + "format": "byte", + "type": "string" } }, "type": "object" diff --git a/release-please-config.json b/release-please-config.json index d5d0d2073c4..815e784d85c 100644 --- a/release-please-config.json +++ b/release-please-config.json @@ -323,6 +323,9 @@ "src/apis/appsmarket": {}, "src/apis/threatintelligence": {}, "src/apis/hypercomputecluster": {}, - "src/apis/ces": {} + "src/apis/ces": {}, + "src/apis/agentregistry": {}, + "src/apis/developerknowledge": {}, + "src/apis/health": {} } } \ No newline at end of file diff --git a/src/apis/accesscontextmanager/v1.ts b/src/apis/accesscontextmanager/v1.ts index dce8e1eaaf9..8506e5bb5e4 100644 --- a/src/apis/accesscontextmanager/v1.ts +++ b/src/apis/accesscontextmanager/v1.ts @@ -422,7 +422,7 @@ export namespace accesscontextmanager_v1 { */ export interface Schema$EgressFrom { /** - * A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported. + * A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities. */ identities?: string[] | null; /** @@ -574,7 +574,7 @@ export namespace accesscontextmanager_v1 { */ export interface Schema$IngressFrom { /** - * A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported. + * A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities. */ identities?: string[] | null; /** @@ -720,11 +720,11 @@ export namespace accesscontextmanager_v1 { */ export interface Schema$ListSupportedPermissionsResponse { /** - * The pagination token to retrieve the next page of results. If the value is empty, no further results remain. + * Use this pagination token to retrieve the next page of results. An empty value indicates that no further results are available. */ nextPageToken?: string | null; /** - * List of VPC-SC supported permissions. + * List of VPC Service Controls supported permissions. */ supportedPermissions?: string[] | null; } @@ -733,7 +733,7 @@ export namespace accesscontextmanager_v1 { */ export interface Schema$ListSupportedServicesResponse { /** - * The pagination token to retrieve the next page of results. If the value is empty, no further results remain. + * Use this pagination token to retrieve the next page of results. An empty value indicates that no further results are available. */ nextPageToken?: string | null; /** @@ -5193,7 +5193,7 @@ export namespace accesscontextmanager_v1 { } /** - * Replace all existing service perimeters in an access policy with the service perimeters provided. This is done atomically. The long-running operation from this RPC has a successful status after all replacements propagate to long-lasting storage. Replacements containing errors result in an error response for the first error encountered. Upon an error, replacement are cancelled and existing service perimeters are not affected. The Operation.response field contains ReplaceServicePerimetersResponse. + * Replace all existing service perimeters in an access policy with the service perimeters provided. This is done atomically. The long-running operation from this RPC has a successful status after all replacements propagate to long-lasting storage. Replacements containing errors result in an error response for the first error encountered. Upon an error, replacements are cancelled and existing service perimeters are not affected. The Operation.response field contains ReplaceServicePerimetersResponse. * @example * ```js * // Before running the sample: @@ -7032,7 +7032,7 @@ export namespace accesscontextmanager_v1 { } /** - * Lists all supported permissions in VPCSC Granular Controls. + * Lists all supported permissions in VPC Service Controls ingress and egress rules for Granular Controls. * @example * ```js * // Before running the sample: @@ -7062,9 +7062,9 @@ export namespace accesscontextmanager_v1 { * * // Do the magic * const res = await accesscontextmanager.permissions.list({ - * // Optional. This flag specifies the maximum number of services to return per page. Default is 100. + * // Optional. This flag specifies the maximum number of services to return per page. Default value is 100. * pageSize: 'placeholder-value', - * // Optional. Token to start on a later page. Default is the first page. + * // Optional. Use this token to retrieve a specific page of results. Default is the first page. * pageToken: 'placeholder-value', * }); * console.log(res.data); @@ -7181,11 +7181,11 @@ export namespace accesscontextmanager_v1 { export interface Params$Resource$Permissions$List extends StandardParameters { /** - * Optional. This flag specifies the maximum number of services to return per page. Default is 100. + * Optional. This flag specifies the maximum number of services to return per page. Default value is 100. */ pageSize?: number; /** - * Optional. Token to start on a later page. Default is the first page. + * Optional. Use this token to retrieve a specific page of results. Default is the first page. */ pageToken?: string; } @@ -7370,9 +7370,9 @@ export namespace accesscontextmanager_v1 { * * // Do the magic * const res = await accesscontextmanager.services.list({ - * // This flag specifies the maximum number of services to return per page. Default is 100. + * // This flag specifies the maximum number of services to return per page. Default value is 100. * pageSize: 'placeholder-value', - * // Token to start on a later page. Default is the first page. + * // Use this token to retrieve a specific page of results. Default is the first page. * pageToken: 'placeholder-value', * }); * console.log(res.data); @@ -7491,11 +7491,11 @@ export namespace accesscontextmanager_v1 { } export interface Params$Resource$Services$List extends StandardParameters { /** - * This flag specifies the maximum number of services to return per page. Default is 100. + * This flag specifies the maximum number of services to return per page. Default value is 100. */ pageSize?: number; /** - * Token to start on a later page. Default is the first page. + * Use this token to retrieve a specific page of results. Default is the first page. */ pageToken?: string; } diff --git a/src/apis/adexchangebuyer2/README.md b/src/apis/adexchangebuyer2/README.md index 37d0324a374..d9966cefc14 100644 --- a/src/apis/adexchangebuyer2/README.md +++ b/src/apis/adexchangebuyer2/README.md @@ -2,7 +2,7 @@ # adexchangebuyer2 -> Accesses the latest features for managing Authorized Buyers accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals. +> Access the latest features for managing Authorized Buyers accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals. ## Installation diff --git a/src/apis/adexchangebuyer2/v2beta1.ts b/src/apis/adexchangebuyer2/v2beta1.ts index 9d4bcbb24c2..f66058f8a62 100644 --- a/src/apis/adexchangebuyer2/v2beta1.ts +++ b/src/apis/adexchangebuyer2/v2beta1.ts @@ -102,7 +102,7 @@ export namespace adexchangebuyer2_v2beta1 { /** * Ad Exchange Buyer API II * - * Accesses the latest features for managing Authorized Buyers accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals. + * Access the latest features for managing Authorized Buyers accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals. * * @example * ```js diff --git a/src/apis/admin/directory_v1.ts b/src/apis/admin/directory_v1.ts index c2a9ba17b50..c07b5566a03 100644 --- a/src/apis/admin/directory_v1.ts +++ b/src/apis/admin/directory_v1.ts @@ -2647,7 +2647,7 @@ export namespace admin_directory_v1 { */ export interface Schema$UserLocation { /** - * Textual location. This is most useful for display purposes to concisely describe the location. For example 'Mountain View, CA', 'Near Seattle', 'US-NYC-9TH 9A209A.'' + * Required. Textual location. This is most useful for display purposes to concisely describe the location. For example 'Mountain View, CA', 'Near Seattle', 'US-NYC-9TH 9A209A.'' */ area?: string | null; /** @@ -3974,7 +3974,7 @@ export namespace admin_directory_v1 { * pageToken: 'placeholder-value', * // Determines whether the response contains the full list of properties or only a subset. * projection: 'placeholder-value', - * // Search string in the format given at https://developers.google.com/workspace/admin/directory/v1/list-query-operators + * // Search string in the format given at [List query operators](https://developers.google.com/workspace/admin/directory/v1/list-query-operators). * query: 'placeholder-value', * // Whether to return results in ascending or descending order. Must be used with the `orderBy` parameter. * sortOrder: 'placeholder-value', @@ -4795,7 +4795,7 @@ export namespace admin_directory_v1 { */ projection?: string; /** - * Search string in the format given at https://developers.google.com/workspace/admin/directory/v1/list-query-operators + * Search string in the format given at [List query operators](https://developers.google.com/workspace/admin/directory/v1/list-query-operators). */ query?: string; /** @@ -5079,7 +5079,7 @@ export namespace admin_directory_v1 { * const res = await admin.customer.devices.chromeos.countChromeOsDevices({ * // Required. Immutable ID of the Google Workspace account. * customerId: 'placeholder-value', - * // Optional. Search string in the format given at https://developers.google.com/workspace/admin/directory/v1/list-query-operators + * // Optional. Search string in the format given at [List query operators](https://developers.google.com/workspace/admin/directory/v1/list-query-operators). * filter: 'placeholder-value', * // Optional. Return devices from all child orgunits, as well as the specified org unit. If this is set to true, 'orgUnitPath' must be provided. * includeChildOrgunits: 'placeholder-value', @@ -5372,7 +5372,7 @@ export namespace admin_directory_v1 { */ customerId?: string; /** - * Optional. Search string in the format given at https://developers.google.com/workspace/admin/directory/v1/list-query-operators + * Optional. Search string in the format given at [List query operators](https://developers.google.com/workspace/admin/directory/v1/list-query-operators). */ filter?: string; /** @@ -20697,7 +20697,7 @@ export namespace admin_directory_v1 { } /** - * Create a guest user with access to a [subset of Workspace capabilities](https://support.google.com/a/answer/16558545?hl=en). This feature is currently in Alpha. Please reach out to support if you are interested in trying this feature. + * Create a guest user with access to a [subset of Workspace capabilities](https://support.google.com/a/answer/16558545). This feature is currently in Alpha. Please reach out to support if you are interested in trying this feature. * @example * ```js * // Before running the sample: diff --git a/src/apis/admin/reports_v1.ts b/src/apis/admin/reports_v1.ts index eb3565c65b7..a6737d4096c 100644 --- a/src/apis/admin/reports_v1.ts +++ b/src/apis/admin/reports_v1.ts @@ -193,6 +193,16 @@ export namespace admin_reports_v1 { value?: string; }>; resourceIds?: string[]; + sensitiveParameters?: Array<{ + boolValue?: boolean; + intValue?: string; + messageValue?: {parameter?: Schema$NestedParameter[]}; + multiIntValue?: string[]; + multiMessageValue?: Array<{parameter?: Schema$NestedParameter[]}>; + multiValue?: string[]; + name?: string; + value?: string; + }>; status?: Schema$ActivityEventsStatus; type?: string; }> | null; @@ -330,6 +340,15 @@ export namespace admin_reports_v1 { */ type?: string | null; } + /** + * Identity of the Google Workspace customer who owns the resource. + */ + export interface Schema$CustomerIdentity { + /** + * Customer id. + */ + id?: string | null; + } /** * Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp */ @@ -461,6 +480,19 @@ export namespace admin_reports_v1 { */ email?: string | null; } + /** + * Identity of the group who owns the resource. + */ + export interface Schema$GroupIdentity { + /** + * Group email. + */ + groupEmail?: string | null; + /** + * Group gaia id. + */ + id?: string | null; + } /** * JSON template for a parameter used in various reports. */ @@ -494,6 +526,36 @@ export namespace admin_reports_v1 { */ value?: string | null; } + /** + * Details of the owner of the resource. + */ + export interface Schema$OwnerDetails { + /** + * Identity details of the owner(s) of the resource. + */ + ownerIdentity?: Schema$OwnerIdentity[]; + /** + * Type of the owner of the resource. + */ + ownerType?: string | null; + } + /** + * Identity details of the owner of the resource. + */ + export interface Schema$OwnerIdentity { + /** + * Identity of the Google Workspace customer who owns the resource. + */ + customerIdentity?: Schema$CustomerIdentity; + /** + * Identity of the group who owns the resource. + */ + groupIdentity?: Schema$GroupIdentity; + /** + * Identity of the user who owns the resource. + */ + userIdentity?: Schema$UserIdentity; + } /** * The reason why the label/field was applied. */ @@ -512,9 +574,13 @@ export namespace admin_reports_v1 { */ appliedLabels?: Schema$AppliedLabel[]; /** - * Identifier of the resource. + * Identifier of the resource, such as a doc_id for a Drive document, a conference_id for a Meet conference, or a "gaia_id/rfc2822_message_id" for an email. */ id?: string | null; + /** + * Owner details of the resource. + */ + ownerDetails?: Schema$OwnerDetails; /** * Defines relationship of the resource to the events */ @@ -592,6 +658,19 @@ export namespace admin_reports_v1 { message?: string; }> | null; } + /** + * Identity of the user who owns the resource. + */ + export interface Schema$UserIdentity { + /** + * User gaia id. + */ + id?: string | null; + /** + * User email. + */ + userEmail?: string | null; + } export class Resource$Activities { context: APIRequestContext; @@ -649,6 +728,8 @@ export namespace admin_reports_v1 { * '(.+[<,<=,==,>=,>,<>].+,)*(.+[<,<=,==,>=,>,<>].+)', * // Comma separated group ids (obfuscated) on which user activities are filtered, i.e. the response will contain activities for only those users that are a part of at least one of the group ids mentioned here. Format: "id:abc123,id:xyz456" *Important:* To filter by groups, you must explicitly add the groups to your filtering groups allowlist. For more information about adding groups to filtering groups allowlist, see [Filter results by Google Group](https://support.google.com/a/answer/11482175) * groupIdFilter: '(id:[a-z0-9]+(,id:[a-z0-9]+)*)', + * // Optional. When set to `true`, this field allows sensitive user-generated content to be included in the returned audit logs. This parameter is supported only for Rules (DLP) and Chat applications; using it with any other application will result in a permission error. + * includeSensitiveData: 'placeholder-value', * // Determines how many activity records are shown on each response page. For example, if the request sets `maxResults=1` and the report has two activities, the report has two pages. The response's `nextPageToken` property has the token to the second page. The `maxResults` query string is optional in the request. The default value is 1000. * maxResults: 'placeholder-value', * // Optional. Used to filter on the `regionCode` field present in [`NetworkInfo`](#networkinfo) message. **Usage** ``` GET...&networkInfoFilter=regionCode="IN" GET...&networkInfoFilter=regionCode=%22IN%22 ``` @@ -994,6 +1075,10 @@ export namespace admin_reports_v1 { * Comma separated group ids (obfuscated) on which user activities are filtered, i.e. the response will contain activities for only those users that are a part of at least one of the group ids mentioned here. Format: "id:abc123,id:xyz456" *Important:* To filter by groups, you must explicitly add the groups to your filtering groups allowlist. For more information about adding groups to filtering groups allowlist, see [Filter results by Google Group](https://support.google.com/a/answer/11482175) */ groupIdFilter?: string; + /** + * Optional. When set to `true`, this field allows sensitive user-generated content to be included in the returned audit logs. This parameter is supported only for Rules (DLP) and Chat applications; using it with any other application will result in a permission error. + */ + includeSensitiveData?: boolean; /** * Determines how many activity records are shown on each response page. For example, if the request sets `maxResults=1` and the report has two activities, the report has two pages. The response's `nextPageToken` property has the token to the second page. The `maxResults` query string is optional in the request. The default value is 1000. */ diff --git a/src/apis/agentregistry/README.md b/src/apis/agentregistry/README.md new file mode 100644 index 00000000000..624d4800ada --- /dev/null +++ b/src/apis/agentregistry/README.md @@ -0,0 +1,28 @@ +Google Inc. logo + +# agentregistry + +> Agent Registry is a centralized, unified catalog that lets you store, discover, and govern Model Context Protocol (MCP) servers, tools, and AI agents within Google Cloud. + +## Installation + +```sh +$ npm install @googleapis/agentregistry +``` + +## 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/agentregistry/classes/Agentregistry.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/agentregistry/index.ts b/src/apis/agentregistry/index.ts new file mode 100644 index 00000000000..df87e2586d2 --- /dev/null +++ b/src/apis/agentregistry/index.ts @@ -0,0 +1,47 @@ +// 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 {agentregistry_v1alpha} from './v1alpha'; + +export const VERSIONS = { + v1alpha: agentregistry_v1alpha.Agentregistry, +}; + +export function agentregistry( + version: 'v1alpha' +): agentregistry_v1alpha.Agentregistry; +export function agentregistry( + options: agentregistry_v1alpha.Options +): agentregistry_v1alpha.Agentregistry; +export function agentregistry( + this: GoogleConfigurable, + versionOrOptions: 'v1alpha' | agentregistry_v1alpha.Options +) { + return getAPI('agentregistry', versionOrOptions, VERSIONS, this); +} + +const auth = new AuthPlus(); +export {auth}; +export {agentregistry_v1alpha}; +export { + AuthPlus, + GlobalOptions, + APIRequestContext, + GoogleConfigurable, + StreamMethodOptions, + MethodOptions, + BodyResponseCallback, +} from 'googleapis-common'; diff --git a/src/apis/agentregistry/package.json b/src/apis/agentregistry/package.json new file mode 100644 index 00000000000..de6fe8534d1 --- /dev/null +++ b/src/apis/agentregistry/package.json @@ -0,0 +1,43 @@ +{ + "name": "@googleapis/agentregistry", + "version": "0.1.0", + "description": "agentregistry", + "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": "^8.0.0" + }, + "devDependencies": { + "@microsoft/api-documenter": "^7.8.10", + "@microsoft/api-extractor": "^7.8.10", + "gts": "^6.0.0", + "null-loader": "^4.0.0", + "ts-loader": "^9.0.0", + "typescript": "5.7.3", + "webpack": "^5.0.0", + "webpack-cli": "^5.0.0" + } +} diff --git a/src/apis/agentregistry/tsconfig.json b/src/apis/agentregistry/tsconfig.json new file mode 100644 index 00000000000..e0810904968 --- /dev/null +++ b/src/apis/agentregistry/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "./node_modules/gts/tsconfig-google.json", + "compilerOptions": { + "rootDir": ".", + "outDir": "build" + }, + "include": [ + "*.ts", + ] +} diff --git a/src/apis/agentregistry/v1alpha.ts b/src/apis/agentregistry/v1alpha.ts new file mode 100644 index 00000000000..7507cb9a888 --- /dev/null +++ b/src/apis/agentregistry/v1alpha.ts @@ -0,0 +1,5023 @@ +// 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, + GaxiosResponseWithHTTP2, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace agentregistry_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; + } + + /** + * Agent Registry API + * + * Agent Registry is a centralized, unified catalog that lets you store, discover, and govern Model Context Protocol (MCP) servers, tools, and AI agents within Google Cloud. + * + * @example + * ```js + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * ``` + */ + export class Agentregistry { + context: APIRequestContext; + projects: Resource$Projects; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + + this.projects = new Resource$Projects(this.context); + } + } + + /** + * Represents an Agent. "A2A" below refers to the Agent-to-Agent protocol. + */ + export interface Schema$Agent { + /** + * Output only. A stable, globally unique identifier for agents. + */ + agentId?: string | null; + /** + * Output only. Attributes of the Agent. Valid values: * `agentregistry.googleapis.com/system/Framework`: {"framework": "google-adk"\} - the agent framework used to develop the Agent. Example values: "google-adk", "langchain", "custom". * `agentregistry.googleapis.com/system/RuntimeIdentity`: {"principal": "principal://..."\} - the runtime identity associated with the Agent. * `agentregistry.googleapis.com/system/RuntimeReference`: {"uri": "//..."\} - the URI of the underlying resource hosting the Agent, for example, the Reasoning Engine URI. + */ + attributes?: {[key: string]: {[key: string]: any}} | null; + /** + * Output only. Full Agent Card payload, when available. + */ + card?: Schema$Card; + /** + * Output only. Create time. + */ + createTime?: string | null; + /** + * Output only. The description of the Agent, often obtained from the A2A Agent Card. Empty if Agent Card has no description. + */ + description?: string | null; + /** + * Output only. The display name of the agent, often obtained from the A2A Agent Card. + */ + displayName?: string | null; + /** + * Output only. The location where agent is hosted. The value is defined by the hosting environment (i.e. cloud provider). + */ + location?: string | null; + /** + * Identifier. The resource name of an Agent. Format: `projects/{project\}/locations/{location\}/agents/{agent\}`. + */ + name?: string | null; + /** + * Output only. The connection details for the Agent. + */ + protocols?: Schema$Protocol[]; + /** + * Output only. Skills the agent possesses, often obtained from the A2A Agent Card. + */ + skills?: Schema$Skill[]; + /** + * Output only. A universally unique identifier for the Agent. + */ + uid?: string | null; + /** + * Output only. Update time. + */ + updateTime?: string | null; + /** + * Output only. The version of the Agent, often obtained from the A2A Agent Card. Empty if Agent Card has no version or agent is not an A2A Agent. + */ + version?: string | null; + } + /** + * The spec of the agent. + */ + export interface Schema$AgentSpec { + /** + * Optional. The content of the Agent spec in the JSON format. This payload is validated against the schema for the specified type. The content size is limited to `10KB`. + */ + content?: {[key: string]: any} | null; + /** + * Required. The type of the agent spec content. + */ + type?: string | null; + } + /** + * Annotations describing the characteristics and behavior of a tool or operation. + */ + export interface Schema$Annotations { + /** + * Output only. If true, the tool may perform destructive updates to its environment. If false, the tool performs only additive updates. NOTE: This property is meaningful only when `read_only_hint == false` Default: true + */ + destructiveHint?: boolean | null; + /** + * Output only. If true, calling the tool repeatedly with the same arguments will have no additional effect on its environment. NOTE: This property is meaningful only when `read_only_hint == false` Default: false + */ + idempotentHint?: boolean | null; + /** + * Output only. If true, this tool may interact with an "open world" of external entities. If false, the tool's domain of interaction is closed. For example, the world of a web search tool is open, whereas that of a memory tool is not. Default: true + */ + openWorldHint?: boolean | null; + /** + * Output only. If true, the tool does not modify its environment. Default: false + */ + readOnlyHint?: boolean | null; + /** + * Output only. A human-readable title for the tool. + */ + title?: string | null; + } + /** + * The AuthProvider of the Binding. + */ + export interface Schema$AuthProviderBinding { + /** + * Required. The resource name of the target AuthProvider. Format: * `projects/{project\}/locations/{location\}/authProviders/{auth_provider\}` + */ + authProvider?: string | null; + /** + * Optional. The continue URI of the AuthProvider. The URI is used to reauthenticate the user and finalize the managed OAuth flow. + */ + continueUri?: string | null; + /** + * Optional. The list of OAuth2 scopes of the AuthProvider. + */ + scopes?: string[] | null; + } + /** + * Represents a user-defined Binding. + */ + export interface Schema$Binding { + /** + * The binding for AuthProvider. + */ + authProviderBinding?: Schema$AuthProviderBinding; + /** + * Output only. Timestamp when this binding was created. + */ + createTime?: string | null; + /** + * Optional. User-defined description of a Binding. Can have a maximum length of `2048` characters. + */ + description?: string | null; + /** + * Optional. User-defined display name for the Binding. Can have a maximum length of `63` characters. + */ + displayName?: string | null; + /** + * Required. Identifier. The resource name of the Binding. Format: `projects/{project\}/locations/{location\}/bindings/{binding\}`. + */ + name?: string | null; + /** + * Required. The target Agent of the Binding. + */ + source?: Schema$Source; + /** + * Required. The target Agent Registry Resource of the Binding. + */ + target?: Schema$Target; + /** + * Output only. Timestamp when this binding was last updated. + */ + updateTime?: string | null; + } + /** + * The request message for Operations.CancelOperation. + */ + export interface Schema$CancelOperationRequest {} + /** + * Full Agent Card payload, often obtained from the A2A Agent Card. + */ + export interface Schema$Card { + /** + * Output only. The content of the agent card. + */ + content?: {[key: string]: any} | null; + /** + * Output only. The type of agent card. + */ + type?: 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 {} + /** + * Represents an Endpoint. + */ + export interface Schema$Endpoint { + /** + * Output only. Attributes of the Endpoint. Valid values: * `agentregistry.googleapis.com/system/RuntimeReference`: {"uri": "//..."\} - the URI of the underlying resource hosting the Endpoint, for example, the GKE Deployment. + */ + attributes?: {[key: string]: {[key: string]: any}} | null; + /** + * Output only. Create time. + */ + createTime?: string | null; + /** + * Output only. Description of an Endpoint. + */ + description?: string | null; + /** + * Output only. Display name for the Endpoint. + */ + displayName?: string | null; + /** + * Output only. A stable, globally unique identifier for Endpoint. + */ + endpointId?: string | null; + /** + * Required. The connection details for the Endpoint. + */ + interfaces?: Schema$Interface[]; + /** + * Identifier. The resource name of the Endpoint. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}`. + */ + name?: string | null; + /** + * Output only. Update time. + */ + updateTime?: string | null; + } + /** + * The spec of the endpoint. + */ + export interface Schema$EndpointSpec { + /** + * Optional. The content of the endpoint spec. Reserved for future use. + */ + content?: {[key: string]: any} | null; + /** + * Required. The type of the endpoint spec content. + */ + type?: string | null; + } + /** + * Message for response to fetching available Bindings. + */ + export interface Schema$FetchAvailableBindingsResponse { + /** + * The list of Bindings. + */ + bindings?: Schema$Binding[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + } + /** + * Represents the connection details for an Agent or MCP Server. + */ + export interface Schema$Interface { + /** + * Required. The protocol binding of the interface. + */ + protocolBinding?: string | null; + /** + * Required. The destination URL. + */ + url?: string | null; + } + /** + * Message for response to listing Agents + */ + export interface Schema$ListAgentsResponse { + /** + * The list of Agents. + */ + agents?: Schema$Agent[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + } + /** + * Message for response to listing Bindings + */ + export interface Schema$ListBindingsResponse { + /** + * The list of Binding resources matching the parent and filter criteria in the request. Each Binding resource follows the format: `projects/{project\}/locations/{location\}/bindings/{binding\}`. + */ + bindings?: Schema$Binding[]; + /** + * A token identifying a page of results the server should return. Used in page_token. + */ + nextPageToken?: string | null; + } + /** + * Message for response to listing Endpoints + */ + export interface Schema$ListEndpointsResponse { + /** + * The list of Endpoint resources matching the parent and filter criteria in the request. Each Endpoint resource follows the format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}`. + */ + endpoints?: Schema$Endpoint[]; + /** + * A token identifying a page of results the server should return. Used in page_token. + */ + nextPageToken?: string | null; + } + /** + * The response message for Locations.ListLocations. + */ + export interface Schema$ListLocationsResponse { + /** + * A list of locations that matches the specified filter in the request. + */ + locations?: Schema$Location[]; + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + } + /** + * Message for response to listing McpServers + */ + export interface Schema$ListMcpServersResponse { + /** + * The list of McpServers. + */ + mcpServers?: Schema$McpServer[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: 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[]; + /** + * Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations. + */ + unreachable?: string[] | null; + } + /** + * Message for response to listing Services + */ + export interface Schema$ListServicesResponse { + /** + * A token identifying a page of results the server should return. Used in page_token. + */ + nextPageToken?: string | null; + /** + * The list of Service resources matching the parent and filter criteria in the request. Each Service resource follows the format: `projects/{project\}/locations/{location\}/services/{service\}`. + */ + services?: Schema$Service[]; + } + /** + * A resource that represents a Google Cloud location. + */ + export interface Schema$Location { + /** + * 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 an MCP (Model Context Protocol) Server. + */ + export interface Schema$McpServer { + /** + * Output only. Attributes of the MCP Server. Valid values: * `agentregistry.googleapis.com/system/RuntimeIdentity`: {"principal": "principal://..."\} - the runtime identity associated with the MCP Server. * `agentregistry.googleapis.com/system/RuntimeReference`: {"uri": "//..."\} - the URI of the underlying resource hosting the MCP Server, for example, the GKE Deployment. + */ + attributes?: {[key: string]: {[key: string]: any}} | null; + /** + * Output only. Create time. + */ + createTime?: string | null; + /** + * Output only. The description of the MCP Server. + */ + description?: string | null; + /** + * Output only. The display name of the MCP Server. + */ + displayName?: string | null; + /** + * Output only. The connection details for the MCP Server. + */ + interfaces?: Schema$Interface[]; + /** + * Output only. A stable, globally unique identifier for MCP Servers. + */ + mcpServerId?: string | null; + /** + * Identifier. The resource name of the MCP Server. Format: `projects/{project\}/locations/{location\}/mcpServers/{mcp_server\}`. + */ + name?: string | null; + /** + * Output only. Tools provided by the MCP Server. + */ + tools?: Schema$Tool[]; + /** + * Output only. Update time. + */ + updateTime?: string | null; + } + /** + * The spec of the MCP Server. + */ + export interface Schema$McpServerSpec { + /** + * Optional. The content of the MCP Server spec. This payload is validated against the schema for the specified type. The content size is limited to `10KB`. + */ + content?: {[key: string]: any} | null; + /** + * Required. The type of the MCP Server spec content. + */ + type?: 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 been cancelled successfully have google.longrunning.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; + } + /** + * Represents the protocol of an Agent. + */ + export interface Schema$Protocol { + /** + * Output only. The connection details for the Agent. + */ + interfaces?: Schema$Interface[]; + /** + * Output only. The version of the protocol, for example, the A2A Agent Card version. + */ + protocolVersion?: string | null; + /** + * Output only. The type of the protocol. + */ + type?: string | null; + } + /** + * Message for searching Agents + */ + export interface Schema$SearchAgentsRequest { + /** + * Optional. The maximum number of search results to return per page. The page size is capped at `100`, even if a larger value is specified. A negative value will result in an `INVALID_ARGUMENT` error. If unspecified or set to `0`, a default value of `20` will be used. The server may return fewer results than requested. + */ + pageSize?: number | null; + /** + * Optional. If present, retrieve the next batch of results from the preceding call to this method. `page_token` must be the value of `next_page_token` from the previous response. The values of all other method parameters, must be identical to those in the previous call. + */ + pageToken?: string | null; + /** + * Optional. Search criteria used to select the Agents to return. If no search criteria is specified then all accessible Agents will be returned. Search expressions can be used to restrict results based upon searchable fields, where the operators can be used along with the suffix wildcard symbol `*`. See [instructions](https://docs.cloud.google.com/agent-registry/search-agents-and-tools) for more details. Allowed operators: `=`, `:`, `NOT`, `AND`, `OR`, and `()`. Searchable fields: | Field | `=` | `:` | `*` | Keyword Search | |--------------------|-----|-----|-----|----------------| | agentId | Yes | Yes | Yes | Included | | name | No | Yes | Yes | Included | | displayName | No | Yes | Yes | Included | | description | No | Yes | No | Included | | skills | No | Yes | No | Included | | skills.id | No | Yes | No | Included | | skills.name | No | Yes | No | Included | | skills.description | No | Yes | No | Included | | skills.tags | No | Yes | No | Included | | skills.examples | No | Yes | No | Included | Examples: * `agentId="urn:agent:projects-123:projects:123:locations:us-central1:reasoningEngines:1234"` to find the agent with the specified agent ID. * `name:important` to find agents whose name contains `important` as a word. * `displayName:works*` to find agents whose display name contains words that start with `works`. * `skills.tags:test` to find agents whose skills tags contain `test`. * `planner OR booking` to find agents whose metadata contains the words `planner` or `booking`. + */ + searchString?: string | null; + } + /** + * Message for response to searching Agents + */ + export interface Schema$SearchAgentsResponse { + /** + * A list of Agents that match the `search_string`. + */ + agents?: Schema$Agent[]; + /** + * If there are more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`. + */ + nextPageToken?: string | null; + } + /** + * Message for searching MCP Servers + */ + export interface Schema$SearchMcpServersRequest { + /** + * Optional. The maximum number of search results to return per page. The page size is capped at `100`, even if a larger value is specified. A negative value will result in an `INVALID_ARGUMENT` error. If unspecified or set to `0`, a default value of `20` will be used. The server may return fewer results than requested. + */ + pageSize?: number | null; + /** + * Optional. If present, retrieve the next batch of results from the preceding call to this method. `page_token` must be the value of `next_page_token` from the previous response. The values of all other method parameters, must be identical to those in the previous call. + */ + pageToken?: string | null; + /** + * Optional. Search criteria used to select the MCP Servers to return. If no search criteria is specified then all accessible MCP Servers will be returned. Search expressions can be used to restrict results based upon searchable fields, where the operators can be used along with the suffix wildcard symbol `*`. See [instructions](https://docs.cloud.google.com/agent-registry/search-agents-and-tools) for more details. Allowed operators: `=`, `:`, `NOT`, `AND`, `OR`, and `()`. Searchable fields: | Field | `=` | `:` | `*` | Keyword Search | |--------------------|-----|-----|-----|----------------| | mcpServerId | Yes | Yes | Yes | Included | | name | No | Yes | Yes | Included | | displayName | No | Yes | Yes | Included | Examples: * `mcpServerId="urn:mcp:projects-123:projects:123:locations:us-central1:agentregistry:services:service-id"` to find the MCP Server with the specified MCP Server ID. * `name:important` to find MCP Servers whose name contains `important` as a word. * `displayName:works*` to find MCP Servers whose display name contains words that start with `works`. * `planner OR booking` to find MCP Servers whose metadata contains the words `planner` or `booking`. * `mcpServerId:service-id AND (displayName:planner OR displayName:booking)` to find MCP Servers whose MCP Server ID contains `service-id` and whose display name contains `planner` or `booking`. + */ + searchString?: string | null; + } + /** + * Message for response to searching MCP Servers + */ + export interface Schema$SearchMcpServersResponse { + /** + * A list of McpServers that match the `search_string`. + */ + mcpServers?: Schema$McpServer[]; + /** + * If there are more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`. + */ + nextPageToken?: string | null; + } + /** + * Represents a user-defined Service. + */ + export interface Schema$Service { + /** + * Optional. The spec of the Agent. When `agent_spec` is set, the type of the service is Agent. + */ + agentSpec?: Schema$AgentSpec; + /** + * Output only. Create time. + */ + createTime?: string | null; + /** + * Optional. User-defined description of an Service. Can have a maximum length of `2048` characters. + */ + description?: string | null; + /** + * Optional. User-defined display name for the Service. Can have a maximum length of `63` characters. + */ + displayName?: string | null; + /** + * Optional. The spec of the Endpoint. When `endpoint_spec` is set, the type of the service is Endpoint. + */ + endpointSpec?: Schema$EndpointSpec; + /** + * Optional. The connection details for the Service. + */ + interfaces?: Schema$Interface[]; + /** + * Optional. The spec of the MCP Server. When `mcp_server_spec` is set, the type of the service is MCP Server. + */ + mcpServerSpec?: Schema$McpServerSpec; + /** + * Identifier. The resource name of the Service. Format: `projects/{project\}/locations/{location\}/services/{service\}`. + */ + name?: string | null; + /** + * Output only. The resource name of the resulting Agent, MCP Server, or Endpoint. Format: * `projects/{project\}/locations/{location\}/mcpServers/{mcp_server\}` * `projects/{project\}/locations/{location\}/agents/{agent\}` * `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + */ + registryResource?: string | null; + /** + * Output only. Update time. + */ + updateTime?: string | null; + } + /** + * Represents the skills of an Agent. + */ + export interface Schema$Skill { + /** + * Output only. A more detailed description of the skill. + */ + description?: string | null; + /** + * Output only. Example prompts or scenarios this skill can handle. + */ + examples?: string[] | null; + /** + * Output only. A unique identifier for the agent's skill. + */ + id?: string | null; + /** + * Output only. A human-readable name for the agent's skill. + */ + name?: string | null; + /** + * Output only. Keywords describing the skill. + */ + tags?: string[] | null; + } + /** + * The source of the Binding. + */ + export interface Schema$Source { + /** + * The identifier of the source Agent. Format: * `urn:agent:{publisher\}:{namespace\}:{name\}` + */ + identifier?: 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; + } + /** + * The target of the Binding. + */ + export interface Schema$Target { + /** + * The identifier of the target Agent, MCP Server, or Endpoint. Format: * `urn:agent:{publisher\}:{namespace\}:{name\}` * `urn:mcp:{publisher\}:{namespace\}:{name\}` * `urn:endpoint:{publisher\}:{namespace\}:{name\}` + */ + identifier?: string | null; + } + /** + * Represents a single tool provided by an MCP Server. + */ + export interface Schema$Tool { + /** + * Output only. Annotations associated with the tool. + */ + annotations?: Schema$Annotations; + /** + * Output only. Description of what the tool does. + */ + description?: string | null; + /** + * Output only. Human-readable name of the tool. + */ + name?: string | null; + } + + 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; + agents: Resource$Projects$Locations$Agents; + bindings: Resource$Projects$Locations$Bindings; + endpoints: Resource$Projects$Locations$Endpoints; + mcpServers: Resource$Projects$Locations$Mcpservers; + operations: Resource$Projects$Locations$Operations; + services: Resource$Projects$Locations$Services; + constructor(context: APIRequestContext) { + this.context = context; + this.agents = new Resource$Projects$Locations$Agents(this.context); + this.bindings = new Resource$Projects$Locations$Bindings(this.context); + this.endpoints = new Resource$Projects$Locations$Endpoints(this.context); + this.mcpServers = new Resource$Projects$Locations$Mcpservers( + this.context + ); + this.operations = new Resource$Projects$Locations$Operations( + this.context + ); + this.services = new Resource$Projects$Locations$Services(this.context); + } + + /** + * Gets information about a location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.get({ + * // Resource name for the location. + * name: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "displayName": "my_displayName", + * // "labels": {}, + * // "locationId": "my_locationId", + * // "metadata": {}, + * // "name": "my_name" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Get, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + 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. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.list({ + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. + * extraLocationTypes: 'placeholder-value', + * // 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: 'placeholder-value', + * // The resource that owns the locations collection, if applicable. + * name: 'projects/my-project', + * // The maximum number of results to return. If not set, the service selects a default. + * pageSize: 'placeholder-value', + * // A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "locations": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$List, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}/locations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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 { + /** + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. + */ + extraLocationTypes?: string[]; + /** + * 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$Agents { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets details of a single Agent. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.agents.get({ + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/agents/my-agent', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "agentId": "my_agentId", + * // "attributes": {}, + * // "card": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "location": "my_location", + * // "name": "my_name", + * // "protocols": [], + * // "skills": [], + * // "uid": "my_uid", + * // "updateTime": "my_updateTime", + * // "version": "my_version" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Agents$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Agents$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Agents$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Agents$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Agents$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agents$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agents$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Agents$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Agents in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.agents.list({ + * // Optional. Filtering results + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListAgentsRequest + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "agents": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Agents$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Agents$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Agents$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Agents$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Agents$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agents$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agents$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Agents$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/agents').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Searches Agents in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.agents.search({ + * // Required. Parent value for SearchAgentsRequest. Format: `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "pageSize": 0, + * // "pageToken": "my_pageToken", + * // "searchString": "my_searchString" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "agents": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + search( + params: Params$Resource$Projects$Locations$Agents$Search, + options: StreamMethodOptions + ): Promise>; + search( + params?: Params$Resource$Projects$Locations$Agents$Search, + options?: MethodOptions + ): Promise>; + search( + params: Params$Resource$Projects$Locations$Agents$Search, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + search( + params: Params$Resource$Projects$Locations$Agents$Search, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + search( + params: Params$Resource$Projects$Locations$Agents$Search, + callback: BodyResponseCallback + ): void; + search(callback: BodyResponseCallback): void; + search( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agents$Search + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agents$Search; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Agents$Search; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/agents:search').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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$Agents$Get extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Agents$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 ListAgentsRequest + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Agents$Search extends StandardParameters { + /** + * Required. Parent value for SearchAgentsRequest. Format: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SearchAgentsRequest; + } + + export class Resource$Projects$Locations$Bindings { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new Binding in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.bindings.create({ + * // Required. The ID to use for the binding, which will become the final component of the binding's resource name. This value should be 4-63 characters, and must conform to RFC-1034. Specifically, it must match the regular expression `^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$`. + * bindingId: 'placeholder-value', + * // Required. The project and location to create the Binding in. Expected format: `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "authProviderBinding": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "source": {}, + * // "target": {}, + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Bindings$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Bindings$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Bindings$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Bindings$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Bindings$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Bindings$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Bindings$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Bindings$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/bindings').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Binding. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.bindings.delete({ + * // Required. The name of the Binding. Format: `projects/{project\}/locations/{location\}/bindings/{binding\}`. + * name: 'projects/my-project/locations/my-location/bindings/my-binding', + * // 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: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Bindings$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Bindings$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Bindings$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Bindings$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Bindings$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Bindings$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Bindings$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Bindings$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Fetches available Bindings. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.bindings.fetchAvailable({ + * // Optional. Requested page size. Server may return fewer items than requested. Page size is 500 if unspecified and is capped at `500` even if a larger value is given. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The parent, in the format `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * // The identifier of the source Agent. Format: * `urn:agent:{publisher\}:{namespace\}:{name\}` + * sourceIdentifier: 'placeholder-value', + * // Optional. The identifier of the target Agent, MCP Server, or Endpoint. Format: * `urn:agent:{publisher\}:{namespace\}:{name\}` * `urn:mcp:{publisher\}:{namespace\}:{name\}` * `urn:endpoint:{publisher\}:{namespace\}:{name\}` + * targetIdentifier: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "bindings": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + fetchAvailable( + params: Params$Resource$Projects$Locations$Bindings$Fetchavailable, + options: StreamMethodOptions + ): Promise>; + fetchAvailable( + params?: Params$Resource$Projects$Locations$Bindings$Fetchavailable, + options?: MethodOptions + ): Promise>; + fetchAvailable( + params: Params$Resource$Projects$Locations$Bindings$Fetchavailable, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetchAvailable( + params: Params$Resource$Projects$Locations$Bindings$Fetchavailable, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetchAvailable( + params: Params$Resource$Projects$Locations$Bindings$Fetchavailable, + callback: BodyResponseCallback + ): void; + fetchAvailable( + callback: BodyResponseCallback + ): void; + fetchAvailable( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Bindings$Fetchavailable + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Bindings$Fetchavailable; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Bindings$Fetchavailable; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1alpha/{+parent}/bindings:fetchAvailable' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + 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 Binding. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.bindings.get({ + * // Required. The name of the Binding. Format: `projects/{project\}/locations/{location\}/bindings/{binding\}`. + * name: 'projects/my-project/locations/my-location/bindings/my-binding', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "authProviderBinding": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "source": {}, + * // "target": {}, + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Bindings$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Bindings$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Bindings$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Bindings$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Bindings$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Bindings$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Bindings$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Bindings$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Bindings in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.bindings.list({ + * // Optional. A query string used to filter the list of bindings returned. The filter expression must follow AIP-160 syntax. + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. Page size is 500 if unspecified and is capped at `500` even if a larger value is given. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The project and location to list bindings in. Expected format: `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "bindings": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Bindings$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Bindings$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Bindings$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Bindings$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Bindings$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Bindings$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Bindings$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Bindings$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/bindings').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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 Binding. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.bindings.patch({ + * // Required. Identifier. The resource name of the Binding. Format: `projects/{project\}/locations/{location\}/bindings/{binding\}`. + * name: 'projects/my-project/locations/my-location/bindings/my-binding', + * // 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: 'placeholder-value', + * // Optional. Field mask is used to specify the fields to be overwritten in the Binding 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 present in the request will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "authProviderBinding": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "source": {}, + * // "target": {}, + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Bindings$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Bindings$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Bindings$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Bindings$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Bindings$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Bindings$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Bindings$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Bindings$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Bindings$Create extends StandardParameters { + /** + * Required. The ID to use for the binding, which will become the final component of the binding's resource name. This value should be 4-63 characters, and must conform to RFC-1034. Specifically, it must match the regular expression `^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$`. + */ + bindingId?: string; + /** + * Required. The project and location to create the Binding in. Expected format: `projects/{project\}/locations/{location\}`. + */ + 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; + + /** + * Request body metadata + */ + requestBody?: Schema$Binding; + } + export interface Params$Resource$Projects$Locations$Bindings$Delete extends StandardParameters { + /** + * Required. The name of the Binding. Format: `projects/{project\}/locations/{location\}/bindings/{binding\}`. + */ + 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; + } + export interface Params$Resource$Projects$Locations$Bindings$Fetchavailable extends StandardParameters { + /** + * Optional. Requested page size. Server may return fewer items than requested. Page size is 500 if unspecified and is capped at `500` even if a larger value is given. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The parent, in the format `projects/{project\}/locations/{location\}`. + */ + parent?: string; + /** + * The identifier of the source Agent. Format: * `urn:agent:{publisher\}:{namespace\}:{name\}` + */ + sourceIdentifier?: string; + /** + * Optional. The identifier of the target Agent, MCP Server, or Endpoint. Format: * `urn:agent:{publisher\}:{namespace\}:{name\}` * `urn:mcp:{publisher\}:{namespace\}:{name\}` * `urn:endpoint:{publisher\}:{namespace\}:{name\}` + */ + targetIdentifier?: string; + } + export interface Params$Resource$Projects$Locations$Bindings$Get extends StandardParameters { + /** + * Required. The name of the Binding. Format: `projects/{project\}/locations/{location\}/bindings/{binding\}`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Bindings$List extends StandardParameters { + /** + * Optional. A query string used to filter the list of bindings returned. The filter expression must follow AIP-160 syntax. + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. Page size is 500 if unspecified and is capped at `500` even if a larger value is given. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The project and location to list bindings in. Expected format: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Bindings$Patch extends StandardParameters { + /** + * Required. Identifier. The resource name of the Binding. Format: `projects/{project\}/locations/{location\}/bindings/{binding\}`. + */ + 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 Binding 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 present in the request will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Binding; + } + + export class Resource$Projects$Locations$Endpoints { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets details of a single Endpoint. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.endpoints.get({ + * // Required. The name of the endpoint to retrieve. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + * name: 'projects/my-project/locations/my-location/endpoints/my-endpoint', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "attributes": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "endpointId": "my_endpointId", + * // "interfaces": [], + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Endpoints$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Endpoints$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Endpoints$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Endpoints$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Endpoints$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Endpoints$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Endpoints in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.endpoints.list({ + * // Optional. A query string used to filter the list of endpoints returned. The filter expression must follow AIP-160 syntax. Filtering is supported on the `name`, `display_name`, `description`, `version`, and `interfaces` fields. Some examples: * `name = "projects/p1/locations/l1/endpoints/e1"` * `display_name = "my-endpoint"` * `description = "my-endpoint-description"` * `version = "v1"` * `interfaces.transport = "HTTP_JSON"` + * filter: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The project and location to list endpoints in. Expected format: `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "endpoints": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Endpoints$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Endpoints$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Endpoints$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Endpoints$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Endpoints$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Endpoints$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/endpoints').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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$Endpoints$Get extends StandardParameters { + /** + * Required. The name of the endpoint to retrieve. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Endpoints$List extends StandardParameters { + /** + * Optional. A query string used to filter the list of endpoints returned. The filter expression must follow AIP-160 syntax. Filtering is supported on the `name`, `display_name`, `description`, `version`, and `interfaces` fields. Some examples: * `name = "projects/p1/locations/l1/endpoints/e1"` * `display_name = "my-endpoint"` * `description = "my-endpoint-description"` * `version = "v1"` * `interfaces.transport = "HTTP_JSON"` + */ + filter?: 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. The project and location to list endpoints in. Expected format: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + } + + export class Resource$Projects$Locations$Mcpservers { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets details of a single McpServer. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.mcpServers.get({ + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/mcpServers/my-mcpServer', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "attributes": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "interfaces": [], + * // "mcpServerId": "my_mcpServerId", + * // "name": "my_name", + * // "tools": [], + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Mcpservers$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Mcpservers$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Mcpservers$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Mcpservers$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Mcpservers$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Mcpservers$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Mcpservers$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Mcpservers$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists McpServers in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.mcpServers.list({ + * // Optional. Filtering results + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListMcpServersRequest. Format: `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "mcpServers": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Mcpservers$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Mcpservers$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Mcpservers$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Mcpservers$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Mcpservers$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Mcpservers$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Mcpservers$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Mcpservers$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/mcpServers').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Searches McpServers in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.mcpServers.search({ + * // Required. Parent value for SearchMcpServersRequest. Format: `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "pageSize": 0, + * // "pageToken": "my_pageToken", + * // "searchString": "my_searchString" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "mcpServers": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + search( + params: Params$Resource$Projects$Locations$Mcpservers$Search, + options: StreamMethodOptions + ): Promise>; + search( + params?: Params$Resource$Projects$Locations$Mcpservers$Search, + options?: MethodOptions + ): Promise>; + search( + params: Params$Resource$Projects$Locations$Mcpservers$Search, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + search( + params: Params$Resource$Projects$Locations$Mcpservers$Search, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + search( + params: Params$Resource$Projects$Locations$Mcpservers$Search, + callback: BodyResponseCallback + ): void; + search( + callback: BodyResponseCallback + ): void; + search( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Mcpservers$Search + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Mcpservers$Search; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Mcpservers$Search; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/mcpServers:search').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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$Mcpservers$Get extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Mcpservers$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 ListMcpServersRequest. Format: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Mcpservers$Search extends StandardParameters { + /** + * Required. Parent value for SearchMcpServersRequest. Format: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SearchMcpServersRequest; + } + + 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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + cancel( + params?: Params$Resource$Projects$Locations$Operations$Cancel, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}:cancel').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Operations$Delete, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + 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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Operations$Get, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + 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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "operations": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Operations$List, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}/operations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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; + /** + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Projects$Locations$Services { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new Service in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.services.create({ + * // Required. The project and location to create the Service in. Expected format: `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // Required. The ID to use for the service, which will become the final component of the service's resource name. This value should be 4-63 characters, and valid characters are `/a-z-/`. + * serviceId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "agentSpec": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "endpointSpec": {}, + * // "interfaces": [], + * // "mcpServerSpec": {}, + * // "name": "my_name", + * // "registryResource": "my_registryResource", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Services$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Services$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Services$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Services$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Services$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Services$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Services$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Services$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/services').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Service. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.services.delete({ + * // Required. The name of the Service. Format: `projects/{project\}/locations/{location\}/services/{service\}`. + * name: 'projects/my-project/locations/my-location/services/my-service', + * // 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: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Services$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Services$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Services$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Services$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Services$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Services$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Services$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Services$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + 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 Service. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.services.get({ + * // Required. The name of the Service. Format: `projects/{project\}/locations/{location\}/services/{service\}`. + * name: 'projects/my-project/locations/my-location/services/my-service', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "agentSpec": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "endpointSpec": {}, + * // "interfaces": [], + * // "mcpServerSpec": {}, + * // "name": "my_name", + * // "registryResource": "my_registryResource", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Services$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Services$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Services$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Services$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Services$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Services$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Services$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Services$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Services in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-only', + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.services.list({ + * // Optional. A query string used to filter the list of services returned. The filter expression must follow AIP-160 syntax. Filtering is supported on the `name`, `display_name`, `description`, and `labels` fields. Some examples: * `name = "projects/p1/locations/l1/services/s1"` * `display_name = "my-service"` * `description : "myservice description"` * `labels.env = "prod"` + * filter: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The project and location to list services in. Expected format: `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "services": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Services$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Services$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Services$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Services$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Services$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Services$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Services$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Services$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/services').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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 Service. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/agentregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const agentregistry = google.agentregistry('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/agentregistry.read-write', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await agentregistry.projects.locations.services.patch({ + * // Identifier. The resource name of the Service. Format: `projects/{project\}/locations/{location\}/services/{service\}`. + * name: 'projects/my-project/locations/my-location/services/my-service', + * // 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: 'placeholder-value', + * // Optional. Field mask is used to specify the fields to be overwritten in the Service 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 present in the request will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "agentSpec": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "endpointSpec": {}, + * // "interfaces": [], + * // "mcpServerSpec": {}, + * // "name": "my_name", + * // "registryResource": "my_registryResource", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Services$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Services$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Services$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Services$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Services$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Services$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Services$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Services$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://agentregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Services$Create extends StandardParameters { + /** + * Required. The project and location to create the Service in. Expected format: `projects/{project\}/locations/{location\}`. + */ + 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. The ID to use for the service, which will become the final component of the service's resource name. This value should be 4-63 characters, and valid characters are `/a-z-/`. + */ + serviceId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Service; + } + export interface Params$Resource$Projects$Locations$Services$Delete extends StandardParameters { + /** + * Required. The name of the Service. Format: `projects/{project\}/locations/{location\}/services/{service\}`. + */ + 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; + } + export interface Params$Resource$Projects$Locations$Services$Get extends StandardParameters { + /** + * Required. The name of the Service. Format: `projects/{project\}/locations/{location\}/services/{service\}`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Services$List extends StandardParameters { + /** + * Optional. A query string used to filter the list of services returned. The filter expression must follow AIP-160 syntax. Filtering is supported on the `name`, `display_name`, `description`, and `labels` fields. Some examples: * `name = "projects/p1/locations/l1/services/s1"` * `display_name = "my-service"` * `description : "myservice description"` * `labels.env = "prod"` + */ + filter?: 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. The project and location to list services in. Expected format: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Services$Patch extends StandardParameters { + /** + * Identifier. The resource name of the Service. Format: `projects/{project\}/locations/{location\}/services/{service\}`. + */ + 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 Service 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 present in the request will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Service; + } +} diff --git a/src/apis/agentregistry/webpack.config.js b/src/apis/agentregistry/webpack.config.js new file mode 100644 index 00000000000..e746750e2c1 --- /dev/null +++ b/src/apis/agentregistry/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: 'Agentregistry', + filename: 'agentregistry.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: [], +}; diff --git a/src/apis/aiplatform/README.md b/src/apis/aiplatform/README.md index b556c23e828..e05447d156b 100644 --- a/src/apis/aiplatform/README.md +++ b/src/apis/aiplatform/README.md @@ -2,7 +2,7 @@ # aiplatform -> Train high-quality custom machine learning models with minimal machine learning expertise and effort. +> Build, scale, govern, and optimize sophisticated agents and models. ## Support status **Note**: Google provides multiple libraries for this service. This library is in diff --git a/src/apis/aiplatform/v1.ts b/src/apis/aiplatform/v1.ts index 7768b9f401b..b74ee832e5d 100644 --- a/src/apis/aiplatform/v1.ts +++ b/src/apis/aiplatform/v1.ts @@ -100,9 +100,9 @@ export namespace aiplatform_v1 { } /** - * Vertex AI API + * Agent Platform API * - * Train high-quality custom machine learning models with minimal machine learning expertise and effort. + * Build, scale, govern, and optimize sophisticated agents and models. * * @example * ```js @@ -141,6 +141,7 @@ export namespace aiplatform_v1 { ragEngineConfig: Resource$Ragengineconfig; reasoningEngines: Resource$Reasoningengines; schedules: Resource$Schedules; + skills: Resource$Skills; specialistPools: Resource$Specialistpools; studies: Resource$Studies; tensorboards: Resource$Tensorboards; @@ -192,6 +193,7 @@ export namespace aiplatform_v1 { this.ragEngineConfig = new Resource$Ragengineconfig(this.context); this.reasoningEngines = new Resource$Reasoningengines(this.context); this.schedules = new Resource$Schedules(this.context); + this.skills = new Resource$Skills(this.context); this.specialistPools = new Resource$Specialistpools(this.context); this.studies = new Resource$Studies(this.context); this.tensorboards = new Resource$Tensorboards(this.context); @@ -201,6 +203,75 @@ export namespace aiplatform_v1 { } } + /** + * Experimental parameters for video generation. + */ + export interface Schema$CloudAiLargeModelsVisionGenerateVideoExperiments { + /** + * Conditioning frames for veo experimental models ONLY, not to be confused with keyframes (ID:31) in GenerateVideoRequest. + */ + conditioningFrames?: Schema$CloudAiLargeModelsVisionGenerateVideoExperimentsConditioningFrame[]; + /** + * Human pose parameters for Pose Control + */ + humanPose?: Schema$CloudAiLargeModelsVisionHumanPose; + /** + * Model names, as defined in: xyz + */ + modelName?: string | null; + /** + * Number of diffusion steps + */ + numDiffusionSteps?: number | null; + /** + * Prompt chunks for "ProModel" prompting. If set, the prompt will not be rewritten, and top-level prompt ignored. + */ + promptInputs?: Schema$CloudAiLargeModelsVisionPromptInputs; + /** + * Optional tag for tracking the source of this request. Allowed values: "colab", "comfyui", "curl", "flowresearch", "vertexstudio". Unrecognized tags are recorded as "unknown" in metrics. Tags do not affect video generation behavior. Up to 16 characters, ASCII alphanumeric, hyphens, and underscores only. + */ + requestOriginTag?: string | null; + /** + * If true (default), truncate input videos that exceed the model's maximum frame count by applying a frame_selection_config to __video_file__ inputs. Set to false to preserve the existing fail-fast behavior. + */ + truncateInputVideo?: boolean | null; + /** + * GCS URI of the grayscale video mask for Differential Diffusion. Maps to sdedit_video_tmax_scale_map + */ + videoTransformMaskGcsUri?: string | null; + /** + * SDEdit: Scalar noise level (0.0 to 1.0) Maps to sdedit_tmax + */ + videoTransformStrength?: number | null; + } + export interface Schema$CloudAiLargeModelsVisionGenerateVideoExperimentsConditioningFrame { + /** + * The index of the frame, starts with zero and must be a multiple of 8. + */ + frameNum?: number | null; + /** + * The image data for this conditioning frame. + */ + image?: Schema$CloudAiLargeModelsVisionGenerateVideoRequestImage; + } + /** + * The image bytes or Cloud Storage URI to make the prediction on. + */ + export interface Schema$CloudAiLargeModelsVisionGenerateVideoRequestImage { + /** + * Blob ID of the image. This is used for storing the large images in the request. + */ + blobId?: string | null; + /** + * Base64 encoded bytes string representing the image. + */ + bytesBase64Encoded?: string | null; + gcsUri?: string | null; + /** + * The MIME type of the content of the image. Only the images in below listed MIME types are supported. - image/jpeg - image/png + */ + mimeType?: string | null; + } /** * Generate video response. */ @@ -227,6 +298,10 @@ export namespace aiplatform_v1 { * Base64 encoded bytes string representing the video. */ bytesBase64Encoded?: string | null; + /** + * Optional metadata returned from experimental requests. Likely only includes the rewritten prompt chunks. + */ + experimentsMetadata?: Schema$CloudAiLargeModelsVisionGenerateVideoExperiments; /** * Cloud Storage URI where the generated video is written. */ @@ -236,6 +311,20 @@ export namespace aiplatform_v1 { */ mimeType?: string | null; } + export interface Schema$CloudAiLargeModelsVisionHumanPose { + /** + * GCS URI of the human pose video to condition video generation. + */ + bodyLandmarksGcsUri?: string | null; + /** + * GCS URI of the face landmarks video to condition video generation. + */ + faceLandmarksGcsUri?: string | null; + /** + * GCS URI of the performance mesh to condition video generation. + */ + perfMeshGcsUri?: string | null; + } /** * Image. */ @@ -316,6 +405,31 @@ export namespace aiplatform_v1 { y1?: number | null; y2?: number | null; } + /** + * "Direct" prompting for Experimental Video Generation. These will be sent directly to the LDM without being rewritten. + */ + export interface Schema$CloudAiLargeModelsVisionPromptInputs { + /** + * Description of audio content in the video, without speech. + */ + audioPrompt?: string | null; + /** + * Negative description of audio content in the video. + */ + negativeAudioPrompt?: string | null; + /** + * Single negative prompt for what not to generate. + */ + negativePrompt?: string | null; + /** + * 2s, 256 tokens per chunk, 4 total chunks. Required. + */ + promptChunks?: string[] | null; + /** + * Spoken transcript of the video for characters. + */ + transcript?: string | null; + } /** * Next ID: 6 */ @@ -725,6 +839,32 @@ export namespace aiplatform_v1 { */ uri?: string | null; } + /** + * Agentic Retrieval Ask API for RAG. Request message for VertexRagService.AskContexts. + */ + export interface Schema$GoogleCloudAiplatformV1AskContextsRequest { + /** + * Required. Single RAG retrieve query. + */ + query?: Schema$GoogleCloudAiplatformV1RagQuery; + /** + * Optional. The tools to use for AskContexts. + */ + tools?: Schema$GoogleCloudAiplatformV1Tool[]; + } + /** + * Response message for VertexRagService.AskContexts. + */ + export interface Schema$GoogleCloudAiplatformV1AskContextsResponse { + /** + * The contexts of the query. + */ + contexts?: Schema$GoogleCloudAiplatformV1RagContexts; + /** + * The Retrieval Response. + */ + response?: string | null; + } /** * Metadata information for NotebookService.AssignNotebookRuntime. */ @@ -755,6 +895,32 @@ export namespace aiplatform_v1 { */ notebookRuntimeTemplate?: string | null; } + /** + * Request message for ReasoningEngineExecutionService.AsyncQueryReasoningEngine. + */ + export interface Schema$GoogleCloudAiplatformV1AsyncQueryReasoningEngineRequest { + /** + * Optional. Input Cloud Storage URI for the Async query. + */ + inputGcsUri?: string | null; + /** + * Optional. Output Cloud Storage URI for the Async query. + */ + outputGcsUri?: string | null; + } + /** + * Request message for VertexRagService.AsyncRetrieveContexts. + */ + export interface Schema$GoogleCloudAiplatformV1AsyncRetrieveContextsRequest { + /** + * Required. Single RAG retrieve query. + */ + query?: Schema$GoogleCloudAiplatformV1RagQuery; + /** + * Optional. The tools to use for AskContexts. + */ + tools?: Schema$GoogleCloudAiplatformV1Tool[]; + } /** * Attribution that explains a particular prediction output. */ @@ -1956,7 +2122,7 @@ export namespace aiplatform_v1 { inferenceTimeout?: string | null; } /** - * Result of executing the [ExecutableCode]. Only generated when using the [CodeExecution] tool, and always follows a `part` containing the [ExecutableCode]. + * Result of executing the ExecutableCode. Generated only when the `CodeExecution` tool is used. */ export interface Schema$GoogleCloudAiplatformV1CodeExecutionResult { /** @@ -2287,6 +2453,10 @@ export namespace aiplatform_v1 { * Request message for ModelService.CopyModel. */ export interface Schema$GoogleCloudAiplatformV1CopyModelRequest { + /** + * Optional. The user-provided custom service account to use to do the copy model. If empty, [Vertex AI Service Agent](https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) will be used to access resources needed to upload the model. This account must belong to the destination project where the model is copied to, i.e., the project specified in the `parent` field of this request and have the Vertex AI Service Agent role in the source project. Requires the user copying the Model to have the `iam.serviceAccounts.actAs` permission on this service account. + */ + customServiceAccount?: string | null; /** * Customer-managed encryption key options. If this is set, then the Model copy will be encrypted with the provided encryption key. */ @@ -3080,6 +3250,19 @@ export namespace aiplatform_v1 { */ updateTime?: string | null; } + /** + * Defines a custom dataset-level aggregation. + */ + export interface Schema$GoogleCloudAiplatformV1DatasetCustomMetric { + /** + * Required. The Python code string containing the aggregation function. Expected function signature: `def aggregate(instances: list[dict[str, Any]]) -\> dict[str, float]:` The `instances` argument is a list of dictionaries, where each dictionary represents a single evaluation result item. The structure of each dictionary corresponds to the fields in the `EvaluationResult` message. This includes: - `"request"`: Contains the original input data and model inputs (from `EvaluationResult.EvaluationRequest`). - `"candidate_results"`: Contains the results of any instance-level metrics (from `EvaluationResult.CandidateResults`). Example of a single item in the `instances` list: { "request": { "prompt": {"text": "What is the capital of France?"\}, "golden_response": {"text": "Paris"\}, "candidate_responses": [{"candidate": "model-v1", "text": "Paris"\}] \}, "candidate_results": [ {"metric": "exact_match", "score": 1.0\}, {"metric": "bleu", "score": 0.9\} ] \} + */ + aggregationFunction?: string | null; + /** + * Optional. A display name for this custom summary metric. Used to prefix keys in the output summaryMetrics map. If not provided, a default name like "dataset_custom_metric_1", "dataset_custom_metric_2", etc., will be generated based on the order in the repeated field. + */ + displayName?: string | null; + } /** * Distribution computed over a tuning dataset. */ @@ -3904,23 +4087,56 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1EmbedContentRequest { /** - * Optional. Whether to silently truncate the input content if it's longer than the maximum sequence length. + * Optional. Deprecated: Please use EmbedContentConfig.auto_truncate instead. Whether to silently truncate the input content if it's longer than the maximum sequence length. */ autoTruncate?: boolean | null; /** - * Required. Input content to be embedded. Required. + * Required. The content to be embedded. */ content?: Schema$GoogleCloudAiplatformV1Content; /** - * Optional. Optional reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end. + * Optional. Configuration for the EmbedContent request. + */ + embedContentConfig?: Schema$GoogleCloudAiplatformV1EmbedContentRequestEmbedContentConfig; + /** + * Optional. Deprecated: Please use EmbedContentConfig.output_dimensionality instead. Reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end. + */ + outputDimensionality?: number | null; + /** + * Optional. Deprecated: Please use EmbedContentConfig.task_type instead. The task type of the embedding. + */ + taskType?: string | null; + /** + * Optional. Deprecated: Please use EmbedContentConfig.title instead. The title for the text. + */ + title?: string | null; + } + /** + * Configurations for the EmbedContent API. + */ + export interface Schema$GoogleCloudAiplatformV1EmbedContentRequestEmbedContentConfig { + /** + * Optional. Whether to extract audio from video content. + */ + audioTrackExtraction?: boolean | null; + /** + * Optional. Whether to silently truncate the input content if it's longer than the maximum sequence length. Only applicable to text-only embedding models. + */ + autoTruncate?: boolean | null; + /** + * Optional. Whether to enable OCR for document content. + */ + documentOcr?: boolean | null; + /** + * Optional. Reduced dimension for the output embedding. If set, excessive values in the output embedding are truncated from the end. */ outputDimensionality?: number | null; /** - * Optional. The task type of the embedding. + * Optional. The task type of the embedding. Only applicable to text-only embedding models. */ taskType?: string | null; /** - * Optional. An optional title for the text. + * Optional. The title for the text. Only applicable to text-only embedding models. */ title?: string | null; } @@ -3937,7 +4153,7 @@ export namespace aiplatform_v1 { */ truncated?: boolean | null; /** - * Metadata about the response(s). + * Usage metadata about the response(s). */ usageMetadata?: Schema$GoogleCloudAiplatformV1UsageMetadata; } @@ -4254,6 +4470,31 @@ export namespace aiplatform_v1 { */ outputInfo?: Schema$GoogleCloudAiplatformV1OutputInfo; } + /** + * Evaluate Dataset Run Result for Tuning Job. + */ + export interface Schema$GoogleCloudAiplatformV1EvaluateDatasetRun { + /** + * Output only. The checkpoint id used in the evaluation run. Only populated when evaluating checkpoints. + */ + checkpointId?: string | null; + /** + * Output only. The error of the evaluation run if any. + */ + error?: Schema$GoogleRpcStatus; + /** + * Output only. Results for EvaluationService. + */ + evaluateDatasetResponse?: Schema$GoogleCloudAiplatformV1EvaluateDatasetResponse; + /** + * Output only. The resource name of the evaluation run. Format: `projects/{project\}/locations/{location\}/evaluationRuns/{evaluation_run_id\}`. + */ + evaluationRun?: string | null; + /** + * Output only. Deprecated: The updated architecture uses evaluation_run instead. + */ + operationName?: string | null; + } /** * Request message for EvaluationService.EvaluateInstances. */ @@ -4302,6 +4543,10 @@ export namespace aiplatform_v1 { * The metrics used for evaluation. Currently, we only support evaluating a single metric. If multiple metrics are provided, only the first one will be evaluated. */ metrics?: Schema$GoogleCloudAiplatformV1Metric[]; + /** + * Optional. The metrics (either inline or registered) used for evaluation. Currently, we only support evaluating a single metric. If multiple metrics are provided, only the first one will be evaluated. + */ + metricSources?: Schema$GoogleCloudAiplatformV1MetricSource[]; /** * Input for Metricx metric. */ @@ -4540,6 +4785,31 @@ export namespace aiplatform_v1 { */ trajectorySingleToolUseResults?: Schema$GoogleCloudAiplatformV1TrajectorySingleToolUseResults; } + /** + * Evaluation Config for Tuning Job. + */ + export interface Schema$GoogleCloudAiplatformV1EvaluationConfig { + /** + * Optional. Autorater config for evaluation. + */ + autoraterConfig?: Schema$GoogleCloudAiplatformV1AutoraterConfig; + /** + * Optional. Specifications for custom dataset-level aggregations. + */ + datasetCustomMetrics?: Schema$GoogleCloudAiplatformV1DatasetCustomMetric[]; + /** + * Optional. Configuration options for inference generation and outputs. If not set, default generation parameters are used. + */ + inferenceGenerationConfig?: Schema$GoogleCloudAiplatformV1GenerationConfig; + /** + * Required. The metrics used for evaluation. + */ + metrics?: Schema$GoogleCloudAiplatformV1Metric[]; + /** + * Required. Config for evaluation output. + */ + outputConfig?: Schema$GoogleCloudAiplatformV1OutputConfig; + } /** * The dataset used for evaluation. */ @@ -4558,15 +4828,11 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1EvaluationInstance { /** - * Optional. Deprecated. Use `agent_eval_data` instead. Data used for agent evaluation. - */ - agentData?: Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentData; - /** - * Optional. Data used for agent evaluation. + * Optional. Deprecated: Use `agent_eval_data` instead. Data used for agent evaluation. */ - agentEvalData?: Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentData; + agentData?: Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentData; /** - * Optional. Other data used to populate placeholders based on their key. + * Optional. Other data used to populate placeholders based on their key. If a key conflicts with a field in the EvaluationInstance (e.g. `prompt`), the value of the field will take precedence over the value in other_data. */ otherData?: Schema$GoogleCloudAiplatformV1EvaluationInstanceMapInstance; /** @@ -4589,9 +4855,9 @@ export namespace aiplatform_v1 { } | null; } /** - * Configuration for an Agent. + * Deprecated: Use `google.cloud.aiplatform.master.AgentConfig` in `agent_eval_data` instead. Configuration for an Agent. */ - export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentConfig { + export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfig { /** * Optional. Unique identifier of the agent. This ID is used to refer to this agent, e.g., in AgentEvent.author, or in the `sub_agents` field. It must be unique within the `agents` map. */ @@ -4615,7 +4881,7 @@ export namespace aiplatform_v1 { /** * List of tools. */ - tools?: Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentConfigTools; + tools?: Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfigTools; /** * A JSON string containing a list of tools available to an agent with info such as name, description, parameters and required parameters. */ @@ -4624,40 +4890,40 @@ export namespace aiplatform_v1 { /** * Represents a list of tools for an agent. */ - export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentConfigTools { + export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfigTools { /** * Optional. List of tools: each tool can have multiple function declarations. */ tool?: Schema$GoogleCloudAiplatformV1Tool[]; } /** - * Contains data specific to agent evaluations. + * Deprecated: Use `agent_eval_data` instead. Contains data specific to agent evaluations. */ - export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentData { + export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentData { /** - * Optional. Agent configuration. + * Optional. Deprecated: Use `agent_eval_data` instead. Agent configuration. */ - agentConfig?: Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentConfig; + agentConfig?: Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfig; /** * Optional. The static Agent Configuration. This map defines the graph structure of the agent system. Key: agent_id (matches the `author` field in events). Value: The static configuration of the agent (tools, instructions, sub-agents). */ agents?: { [ key: string - ]: Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentConfig; + ]: Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfig; } | null; /** - * Optional. Deprecated. A field containing instructions from the developer for the agent. Please use `agents.developer_instruction` or `turns.events.active_instruction` instead. + * Optional. Deprecated: Use `agents.developer_instruction` or `turns.events.active_instruction` instead. A field containing instructions from the developer for the agent. */ developerInstruction?: Schema$GoogleCloudAiplatformV1EvaluationInstanceInstanceData; /** * A list of events. */ - events?: Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentDataEvents; + events?: Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataEvents; /** * List of tools. */ - tools?: Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentDataTools; + tools?: Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataTools; /** * A JSON string containing a list of tools available to an agent with info such as name, description, parameters and required parameters. */ @@ -4665,12 +4931,12 @@ export namespace aiplatform_v1 { /** * Optional. The chronological list of conversation turns. Each turn represents a logical execution cycle (e.g., User Input -\> Agent Response). */ - turns?: Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentDataConversationTurn[]; + turns?: Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataConversationTurn[]; } /** * A single event in the execution trace. */ - export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentDataAgentEvent { + export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataAgentEvent { /** * Optional. The list of tools that were active/available to the agent at the time of this event. This overrides the `AgentConfig.tools` if set. */ @@ -4695,11 +4961,11 @@ export namespace aiplatform_v1 { /** * Represents a single turn/invocation in the conversation. */ - export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentDataConversationTurn { + export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataConversationTurn { /** * Optional. The list of events that occurred during this turn. */ - events?: Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentDataAgentEvent[]; + events?: Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataAgentEvent[]; /** * Optional. A unique identifier for the turn. Useful for referencing specific turns across systems. */ @@ -4712,16 +4978,16 @@ export namespace aiplatform_v1 { /** * Represents a list of events for an agent. */ - export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentDataEvents { + export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataEvents { /** * Optional. A list of events. */ event?: Schema$GoogleCloudAiplatformV1Content[]; } /** - * Deprecated. Represents a list of tools for an agent. + * Deprecated: Use `agent_eval_data` instead. Represents a list of tools for an agent. */ - export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentDataTools { + export interface Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentDataTools { /** * Optional. List of tools: each tool can have multiple function declarations. */ @@ -4807,6 +5073,24 @@ export namespace aiplatform_v1 { */ name?: string | null; } + /** + * Config for parsing LLM responses. It can be used to parse the LLM response to be evaluated, or the LLM response from LLM-based metrics/Autoraters. + */ + export interface Schema$GoogleCloudAiplatformV1EvaluationParserConfig { + /** + * Optional. Use custom code to parse the LLM response. + */ + customCodeParserConfig?: Schema$GoogleCloudAiplatformV1EvaluationParserConfigCustomCodeParserConfig; + } + /** + * Configuration for parsing the LLM response using custom code. + */ + export interface Schema$GoogleCloudAiplatformV1EvaluationParserConfigCustomCodeParserConfig { + /** + * Required. Python function for parsing results. The function should be defined within this string. The function takes a list of strings (LLM responses) and should return either a list of dictionaries (for rubrics) or a single dictionary (for a metric result). Example function signature: def parse(responses: list[str]) -\> list[dict[str, Any]] | dict[str, Any]: When parsing rubrics, return a list of dictionaries, where each dictionary represents a Rubric. Example for rubrics: [ { "content": {"property": {"description": "The response is factual."\}\}, "type": "FACTUALITY", "importance": "HIGH" \}, { "content": {"property": {"description": "The response is fluent."\}\}, "type": "FLUENCY", "importance": "MEDIUM" \} ] When parsing critique results, return a dictionary representing a MetricResult. Example for a metric result: { "score": 0.8, "explanation": "The model followed most instructions.", "rubric_verdicts": [...] \} ... code for result extraction and aggregation + */ + parsingFunction?: string | null; + } /** * Prompt to be evaluated. This can represent a single-turn prompt or a multi-turn conversation for agent evaluations. */ @@ -4938,7 +5222,7 @@ export namespace aiplatform_v1 { */ error?: Schema$GoogleRpcStatus; /** - * Required. The configuration used for the evaluation. + * Optional. The configuration used for the evaluation. Optional when analysis_configs is provided. */ evaluationConfig?: Schema$GoogleCloudAiplatformV1EvaluationRunEvaluationConfig; /** @@ -4993,6 +5277,10 @@ export namespace aiplatform_v1 { * Optional. The autorater config for the evaluation run. */ autoraterConfig?: Schema$GoogleCloudAiplatformV1EvaluationRunEvaluationConfigAutoraterConfig; + /** + * Optional. Specifications for custom dataset-level aggregations. + */ + datasetCustomMetrics?: Schema$GoogleCloudAiplatformV1DatasetCustomMetric[]; /** * Required. The metrics to be calculated in the evaluation run. */ @@ -5054,17 +5342,76 @@ export namespace aiplatform_v1 { promptTemplate?: string | null; } /** - * An inference config used for model inference during the evaluation run. + * Defines the configuration for a candidate model or agent being evaluated. `InferenceConfig` encapsulates all the necessary information to invoke or scrape the candidate during the evaluation run. This includes direct model inference parameters, agent execution settings, and multi-turn scraping configurations (such as user simulators). It serves as the primary representation of the candidate across different stages of the evaluation process. */ export interface Schema$GoogleCloudAiplatformV1EvaluationRunInferenceConfig { + /** + * Optional. Agent run config. + */ + agentRunConfig?: Schema$GoogleCloudAiplatformV1EvaluationRunInferenceConfigAgentRunConfig; /** * Optional. Generation config. */ generationConfig?: Schema$GoogleCloudAiplatformV1GenerationConfig; /** - * Optional. The fully qualified name of the publisher model or endpoint to use. Publisher model format: `projects/{project\}/locations/{location\}/publishers/x/models/x` Endpoint format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + * Optional. The fully qualified name of the publisher model or endpoint to use. Anthropic and Llama third-party models are also supported through Model Garden. Publisher model format: `projects/{project\}/locations/{location\}/publishers/x/models/x` Third-party model formats: `projects/{project\}/locations/{location\}/publishers/anthropic/models/{model\}` or `projects/{project\}/locations/{location\}/publishers/llama/models/{model\}` Endpoint format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` */ model?: string | null; + /** + * Optional. The parallelism of the evaluation run for the inference step. If not specified, the default parallelism will be used. + */ + parallelism?: number | null; + } + /** + * Configuration for Agent Run. + */ + export interface Schema$GoogleCloudAiplatformV1EvaluationRunInferenceConfigAgentRunConfig { + /** + * Optional. The resource name of the Agent Engine. Format: projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\} For example: projects/123/locations/us-central1/reasoningEngines/456 + */ + agentEngine?: string | null; + /** + * Optional. The session input to get agent running results. + */ + sessionInput?: Schema$GoogleCloudAiplatformV1EvaluationRunInferenceConfigSessionInput; + /** + * The configuration for a user simulator that uses an LLM to generate messages on behalf of the user. + */ + userSimulatorConfig?: Schema$GoogleCloudAiplatformV1EvaluationRunInferenceConfigAgentRunConfigUserSimulatorConfig; + } + /** + * Used for multi-turn agent scraping. Contains configuration for a user simulator that uses an LLM to generate messages on behalf of the user. + */ + export interface Schema$GoogleCloudAiplatformV1EvaluationRunInferenceConfigAgentRunConfigUserSimulatorConfig { + /** + * Maximum number of invocations allowed by the multi-turn agent scraping. This property allows us to stop a run-off conversation, where the agent and the user simulator get into a never ending loop. The initial fixed prompt is also counted as an invocation. + */ + maxTurn?: number | null; + /** + * The configuration for the model. + */ + modelConfig?: Schema$GoogleCloudAiplatformV1GenerationConfig; + /** + * The model name to use for multi-turn agent scraping to get next user message, e.g. "gemini-3-flash-preview". + */ + modelName?: string | null; + } + /** + * Session input to run an Agent. + */ + export interface Schema$GoogleCloudAiplatformV1EvaluationRunInferenceConfigSessionInput { + /** + * Optional. Additional parameters for the session, like app_name, etc. For example, {"app_name": "my-app"\}. + */ + parameters?: {[key: string]: string} | null; + /** + * Optional. Session specific memory which stores key conversation points. + */ + sessionState?: {[key: string]: any} | null; + /** + * Optional. The user id for the agent session. The ID can be up to 128 characters long. + */ + userId?: string | null; } /** * The metric used for evaluation runs. @@ -5086,6 +5433,10 @@ export namespace aiplatform_v1 { * The metric config. */ metricConfig?: Schema$GoogleCloudAiplatformV1Metric; + /** + * Optional. The resource name of the metric definition. + */ + metricResourceName?: string | null; /** * Spec for a pre-defined metric. */ @@ -5192,6 +5543,10 @@ export namespace aiplatform_v1 { * Specification for how rubrics should be generated. */ export interface Schema$GoogleCloudAiplatformV1EvaluationRunMetricRubricGenerationSpec { + /** + * Optional. Resource name of the metric definition. + */ + metricResourceName?: string | null; /** * Optional. Configuration for the model used in rubric generation. Configs including sampling count and base model can be specified here. Flipping is not supported for rubric generation. */ @@ -5308,6 +5663,10 @@ export namespace aiplatform_v1 { * Optional. Metadata returned to client when grounding is enabled. */ groundingMetadata?: Schema$GoogleCloudAiplatformV1GroundingMetadata; + /** + * Optional. Audio transcription of user input. + */ + inputTranscription?: Schema$GoogleCloudAiplatformV1Transcription; /** * Optional. Flag indicating that LLM was interrupted when generating the content. Usually it's due to user interruption during a bidi streaming. */ @@ -5316,6 +5675,10 @@ export namespace aiplatform_v1 { * Optional. Set of ids of the long running function calls. Agent client will know from this field about which function call is long running. Only valid for function call event. */ longRunningToolIds?: string[] | null; + /** + * Optional. Audio transcription of model output. + */ + outputTranscription?: Schema$GoogleCloudAiplatformV1Transcription; /** * Optional. Indicates whether the text content is part of a unfinished text stream. Only used for streaming mode and when the content is plain text. */ @@ -5450,7 +5813,7 @@ export namespace aiplatform_v1 { namespaceName?: string | null; } /** - * Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the [CodeExecution] tool, in which the code will be automatically executed, and a corresponding [CodeExecutionResult] will also be generated. + * Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the `CodeExecution` tool, in which the code will be automatically executed, and a corresponding CodeExecutionResult will also be generated. */ export interface Schema$GoogleCloudAiplatformV1ExecutableCode { /** @@ -7368,15 +7731,15 @@ export namespace aiplatform_v1 { version?: number | null; } /** - * A predicted [FunctionCall] returned from the model that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing the parameters and their values. + * A predicted FunctionCall returned from the model that contains a string representing the FunctionDeclaration.name and a structured JSON object containing the parameters and their values. */ export interface Schema$GoogleCloudAiplatformV1FunctionCall { /** - * Optional. The function parameters and values in JSON object format. See [FunctionDeclaration.parameters] for parameter details. + * Optional. The function parameters and values in JSON object format. See FunctionDeclaration.parameters for parameter details. */ args?: {[key: string]: any} | null; /** - * Optional. The name of the function to call. Matches [FunctionDeclaration.name]. + * Optional. The name of the function to call. Matches FunctionDeclaration.name. */ name?: string | null; /** @@ -7393,7 +7756,7 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1FunctionCallingConfig { /** - * Optional. Function names to call. Only set when the Mode is ANY. Function names should match [FunctionDeclaration.name]. With mode set to ANY, model will predict a function call from the set of function names provided. + * Optional. Function names to call. Only set when the Mode is ANY. Function names should match FunctionDeclaration.name. With mode set to ANY, model will predict a function call from the set of function names provided. */ allowedFunctionNames?: string[] | null; /** @@ -7401,7 +7764,7 @@ export namespace aiplatform_v1 { */ mode?: string | null; /** - * Optional. When set to true, arguments of a single function call will be streamed out in multiple parts/contents/responses. Partial parameter results will be returned in the [FunctionCall.partial_args] field. + * Optional. When set to true, arguments of a single function call will be streamed out in multiple parts/contents/responses. Partial parameter results will be returned in the `FunctionCall.partial_args` field. */ streamFunctionCallArguments?: boolean | null; } @@ -7414,7 +7777,7 @@ export namespace aiplatform_v1 { */ description?: string | null; /** - * Required. The name of the function to call. Must start with a letter or an underscore. Must be a-z, A-Z, 0-9, or contain underscores, dots, colons and dashes, with a maximum length of 64. + * Required. The name of the function to call. Must start with a letter or an underscore. Must be a-z, A-Z, 0-9, or contain underscores, dots, colons and dashes, with a maximum length of 128. */ name?: string | null; /** @@ -7435,11 +7798,11 @@ export namespace aiplatform_v1 { responseJsonSchema?: any | null; } /** - * The result output from a [FunctionCall] that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a [FunctionCall] made based on model prediction. + * The result output from a FunctionCall that contains a string representing the FunctionDeclaration.name and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a `FunctionCall` made based on model prediction. */ export interface Schema$GoogleCloudAiplatformV1FunctionResponse { /** - * Required. The name of the function to call. Matches [FunctionDeclaration.name] and [FunctionCall.name]. + * Required. The name of the function to call. Matches FunctionDeclaration.name and FunctionCall.name. */ name?: string | null; /** @@ -7733,7 +8096,7 @@ export namespace aiplatform_v1 { /** * Optional. Agent configuration, required for agent-based rubric generation. */ - agentConfig?: Schema$GoogleCloudAiplatformV1EvaluationInstanceAgentConfig; + agentConfig?: Schema$GoogleCloudAiplatformV1EvaluationInstanceDeprecatedAgentConfig; /** * Required. The prompt to generate rubrics from. For single-turn queries, this is a single instance. For multi-turn queries, this is a repeated field that contains conversation history + latest request. */ @@ -7742,6 +8105,10 @@ export namespace aiplatform_v1 { * Required. The resource name of the Location to generate rubrics from. Format: `projects/{project\}/locations/{location\}` */ location?: string | null; + /** + * Optional. The resource name of a registered metric. Rubric generation using predefined metric spec or LLMBasedMetricSpec is supported. If this field is set, the configuration provided in this field is used for rubric generation. The `predefined_rubric_generation_spec` and `rubric_generation_spec` fields will be ignored. + */ + metricResourceName?: string | null; /** * Optional. Specification for using the rubric generation configs of a pre-defined metric, e.g. "generic_quality_v1" and "instruction_following_v1". Some of the configs may be only used in rubric generation and not supporting evaluation, e.g. "fully_customized_generic_quality_v1". If this field is set, the `rubric_generation_spec` field will be ignored. */ @@ -7764,6 +8131,10 @@ export namespace aiplatform_v1 { * Request message for MemoryBankService.GenerateMemories. Maximum size is 8 MB. */ export interface Schema$GoogleCloudAiplatformV1GenerateMemoriesRequest { + /** + * Optional. Restricts memory generation to a subset of memory topics. + */ + allowedTopics?: Schema$GoogleCloudAiplatformV1MemoryTopicId[]; /** * Defines a direct source of content as the source content from which to generate memories. */ @@ -7869,32 +8240,32 @@ export namespace aiplatform_v1 { startTime?: string | null; } /** - * Request message for DataFoundryService.GenerateSyntheticData. + * Request message for DataFoundryService.GenerateSyntheticData. It contains the settings and information needed to generate synthetic data. */ export interface Schema$GoogleCloudAiplatformV1GenerateSyntheticDataRequest { /** - * Required. The number of synthetic examples to generate. For this stateless API, the count is limited to a small number. + * Required. The number of synthetic examples to generate. For this stateless API, you can generate up to 50 examples in a single request. */ count?: number | null; /** - * Optional. A list of few-shot examples to guide the model's output style and format. + * Optional. A list of few-shot examples that help the model understand the desired style, tone, and format of the generated synthetic data. Providing these few-shot examples can significantly improve the quality and relevance of the output. */ examples?: Schema$GoogleCloudAiplatformV1SyntheticExample[]; /** - * Required. The schema of the desired output, defined by a list of fields. + * Required. Defines the schema of each synthetic example to be generated, defined by a list of fields. */ outputFieldSpecs?: Schema$GoogleCloudAiplatformV1OutputFieldSpec[]; /** - * Generate data from a high-level task description. + * Generates synthetic data based on a high-level description of the task or data you want. */ taskDescription?: Schema$GoogleCloudAiplatformV1TaskDescriptionStrategy; } /** - * The response containing the generated data. + * The response message for the `GenerateSyntheticData` method, containing the synthetic examples generated by the Gen AI evaluation service. */ export interface Schema$GoogleCloudAiplatformV1GenerateSyntheticDataResponse { /** - * A list of generated synthetic examples. + * A list of generated synthetic examples, each containing a complete synthetic data instance generated based on your request. */ syntheticExamples?: Schema$GoogleCloudAiplatformV1SyntheticExample[]; } @@ -7985,7 +8356,7 @@ export namespace aiplatform_v1 { */ responseLogprobs?: boolean | null; /** - * Optional. The IANA standard MIME type of the response. The model will generate output that conforms to this MIME type. Supported values include 'text/plain' (default) and 'application/json'. The model needs to be prompted to output the appropriate response type, otherwise the behavior is undefined. This is a preview feature. + * Optional. The IANA standard MIME type of the response. The model will generate output that conforms to this MIME type. Supported values include 'text/plain' (default) and 'application/json'. The model needs to be prompted to output the appropriate response type, otherwise the behavior is undefined. */ responseMimeType?: string | null; /** @@ -8199,6 +8570,10 @@ export namespace aiplatform_v1 { * A piece of evidence that supports a claim made by the model. This is used to show a citation for a claim made by the model. When grounding is enabled, the model returns a `GroundingChunk` that contains a reference to the source of the information. */ export interface Schema$GoogleCloudAiplatformV1GroundingChunk { + /** + * A grounding chunk from an image search result. See the `Image` message for details. + */ + image?: Schema$GoogleCloudAiplatformV1GroundingChunkImage; /** * A grounding chunk from Google Maps. See the `Maps` message for details. */ @@ -8212,6 +8587,27 @@ export namespace aiplatform_v1 { */ web?: Schema$GoogleCloudAiplatformV1GroundingChunkWeb; } + /** + * An `Image` chunk is a piece of evidence that comes from an image search result. It contains the URI of the image search result and the URI of the image. This is used to provide the user with a link to the source of the information. + */ + export interface Schema$GoogleCloudAiplatformV1GroundingChunkImage { + /** + * The domain of the image search result page. + */ + domain?: string | null; + /** + * The URI of the image. + */ + imageUri?: string | null; + /** + * The URI of the image search result page. + */ + sourceUri?: string | null; + /** + * The title of the image search result page. + */ + title?: string | null; + } /** * A `Maps` chunk is a piece of evidence that comes from Google Maps, containing information about places or routes. This is used to provide the user with rich, location-based information. */ @@ -8224,6 +8620,10 @@ export namespace aiplatform_v1 { * This Place's resource name, in `places/{place_id\}` format. This can be used to look up the place in the Google Maps API. */ placeId?: string | null; + /** + * Output only. Route information. + */ + route?: Schema$GoogleCloudAiplatformV1GroundingChunkMapsRoute; /** * The text of the place answer. */ @@ -8263,6 +8663,23 @@ export namespace aiplatform_v1 { */ title?: string | null; } + /** + * Route information from Google Maps. + */ + export interface Schema$GoogleCloudAiplatformV1GroundingChunkMapsRoute { + /** + * The total distance of the route, in meters. + */ + distanceMeters?: number | null; + /** + * The total duration of the route. + */ + duration?: string | null; + /** + * An encoded polyline of the route. See https://developers.google.com/maps/documentation/utilities/polylinealgorithm + */ + encodedPolyline?: string | null; + } /** * Context retrieved from a data source to ground the model's response. This is used when a retrieval tool fetches information from a user-provided corpus or a public dataset. */ @@ -8321,6 +8738,10 @@ export namespace aiplatform_v1 { * Optional. A list of grounding supports that connect the generated content to the grounding chunks. This field is populated when the grounding source is Google Search or Vertex AI Search. */ groundingSupports?: Schema$GoogleCloudAiplatformV1GroundingSupport[]; + /** + * Optional. The image search queries that were used to generate the content. This field is populated only when the grounding source is Google Search with the Image Search search_type enabled. + */ + imageSearchQueries?: string[] | null; /** * Optional. Output only. Metadata related to the retrieval grounding source. */ @@ -8352,7 +8773,7 @@ export namespace aiplatform_v1 { sourceId?: string | null; } /** - * A collection of supporting references for a segment of the model's response. + * A collection of supporting references for a segment or part of the model's response. */ export interface Schema$GoogleCloudAiplatformV1GroundingSupport { /** @@ -8363,6 +8784,10 @@ export namespace aiplatform_v1 { * A list of indices into the `grounding_chunks` field of the `GroundingMetadata` message. These indices specify which grounding chunks support the claim made in the content segment. For example, if this field has the values `[1, 3]`, it means that `grounding_chunks[1]` and `grounding_chunks[3]` are the sources for the claim in the content segment. */ groundingChunkIndices?: number[] | null; + /** + * Indices into the `rendered_parts` field of the `GroundingMetadata` message. These indices specify which rendered parts are associated with this support message. + */ + renderedParts?: number[] | null; /** * The content segment that this support message applies to. */ @@ -8474,6 +8899,10 @@ export namespace aiplatform_v1 { * Optional. Controls whether the model can generate people. */ personGeneration?: string | null; + /** + * Optional. Controls whether prominent people (celebrities) generation is allowed. If used with personGeneration, personGeneration enum would take precedence. For instance, if ALLOW_NONE is set, all person generation would be blocked. If this field is unspecified, the default behavior is to allow prominent people. + */ + prominentPeople?: string | null; } /** * The image output format for generated images. @@ -9058,9 +9487,17 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1IntermediateExtractedMemory { /** - * Output only. The fact of the extracted memory. + * Output only. Represents the explanation of why the information was extracted from the source content. + */ + context?: string | null; + /** + * Output only. Represents the fact of the extracted memory. */ fact?: string | null; + /** + * Output only. Represents the structured value of the extracted memory. + */ + structuredData?: {[key: string]: any} | null; } /** * Request message for PredictionService.Invoke. @@ -9109,6 +9546,32 @@ export namespace aiplatform_v1 { */ serverUri?: string | null; } + /** + * Represents the configuration for keep-alive probe. Contains configuration on a specified endpoint that a deployment host should use to keep the container alive based on the probe settings. + */ + export interface Schema$GoogleCloudAiplatformV1KeepAliveProbe { + /** + * Optional. Specifies the HTTP GET configuration for the probe. + */ + httpGet?: Schema$GoogleCloudAiplatformV1KeepAliveProbeHttpGet; + /** + * Optional. Specifies the maximum duration (in seconds) to keep the instance alive via this probe. Can be a maximum of 3600 seconds (1 hour). + */ + maxSeconds?: number | null; + } + /** + * Specifies the HTTP GET configuration for the probe. + */ + export interface Schema$GoogleCloudAiplatformV1KeepAliveProbeHttpGet { + /** + * Required. Specifies the path of the HTTP GET request (e.g., `"/is_busy"`). + */ + path?: string | null; + /** + * Optional. Specifies the port number on the container to which the request is sent. + */ + port?: number | null; + } /** * Contains information about the Large Model. */ @@ -9756,6 +10219,19 @@ export namespace aiplatform_v1 { */ reasoningEngines?: Schema$GoogleCloudAiplatformV1ReasoningEngine[]; } + /** + * Response message for SandboxEnvironmentService.ListSandboxEnvironmentSnapshots. + */ + export interface Schema$GoogleCloudAiplatformV1ListSandboxEnvironmentSnapshotsResponse { + /** + * A token, which can be sent as ListSandboxEnvironmentSnapshotsRequest.page_token to retrieve the next page. Absence of this field indicates there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * The SandboxEnvironmentSnapshots matching the request. + */ + sandboxEnvironmentSnapshots?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentSnapshot[]; + } /** * Response message for SandboxEnvironmentService.ListSandboxEnvironments. */ @@ -9769,6 +10245,19 @@ export namespace aiplatform_v1 { */ sandboxEnvironments?: Schema$GoogleCloudAiplatformV1SandboxEnvironment[]; } + /** + * Response message for SandboxEnvironmentService.ListSandboxEnvironmentTemplates. + */ + export interface Schema$GoogleCloudAiplatformV1ListSandboxEnvironmentTemplatesResponse { + /** + * A token, which can be sent as ListSandboxEnvironmentTemplatesRequest.page_token to retrieve the next page. Absence of this field indicates there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * The SandboxEnvironmentTemplates matching the request. + */ + sandboxEnvironmentTemplates?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplate[]; + } /** * Response message for DatasetService.ListSavedQueries. */ @@ -9945,6 +10434,10 @@ export namespace aiplatform_v1 { * Dynamically generate rubrics using a predefined spec. */ predefinedRubricGenerationSpec?: Schema$GoogleCloudAiplatformV1PredefinedMetricSpec; + /** + * Optional. The parser config for the metric result. + */ + resultParserConfig?: Schema$GoogleCloudAiplatformV1EvaluationParserConfig; /** * Dynamically generate rubrics using this specification. */ @@ -10100,89 +10593,106 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1Memory { /** - * Output only. Timestamp when this Memory was created. + * Output only. Represents the timestamp when this Memory was created. */ createTime?: string | null; /** - * Optional. Description of the Memory. + * Optional. Represents the description of the Memory. */ description?: string | null; /** - * Optional. Input only. If true, no revision will be created for this request. + * Optional. Input only. Indicates whether no revision will be created for this request. */ disableMemoryRevisions?: boolean | null; /** - * Optional. Display name of the Memory. + * Optional. Represents the display name of the Memory. */ displayName?: string | null; /** - * Optional. Timestamp of when this resource is considered expired. This is *always* provided on output when `expiration` is set on input, regardless of whether `expire_time` or `ttl` was provided. + * Optional. Represents the timestamp of when this resource is considered expired. This is *always* provided on output when `expiration` is set on input, regardless of whether `expire_time` or `ttl` was provided. */ expireTime?: string | null; /** - * Required. Semantic knowledge extracted from the source content. + * Optional. Represents semantic knowledge extracted from the source content. */ fact?: string | null; /** - * Optional. User-provided metadata for the Memory. This information was provided when creating, updating, or generating the Memory. It was not generated by Memory Bank. + * Optional. Represents user-provided metadata for the Memory. This information was provided when creating, updating, or generating the Memory. It was not generated by Memory Bank. */ metadata?: { [key: string]: Schema$GoogleCloudAiplatformV1MemoryMetadataValue; } | null; /** - * Identifier. The resource name of the Memory. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/memories/{memory\}` + * Identifier. Represents the resource name of the Memory. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/memories/{memory\}` */ name?: string | null; /** - * Optional. Input only. Timestamp of when the revision is considered expired. If not set, the memory revision will be kept until manually deleted. + * Optional. Input only. Represents the timestamp of when the revision is considered expired. If not set, the memory revision will be kept until manually deleted. */ revisionExpireTime?: string | null; /** - * Optional. Input only. The labels to apply to the Memory Revision created as a result of this request. + * Optional. Input only. Represents the labels to apply to the Memory Revision created as a result of this request. */ revisionLabels?: {[key: string]: string} | null; /** - * Optional. Input only. The TTL for the revision. The expiration time is computed: now + TTL. + * Optional. Input only. Represents the TTL for the revision. The expiration time is computed: now + TTL. */ revisionTtl?: string | null; /** - * Required. Immutable. The scope of the Memory. Memories are isolated within their scope. The scope is defined when creating or generating memories. Scope values cannot contain the wildcard character '*'. + * Required. Immutable. Represents the scope of the Memory. Memories are isolated within their scope. The scope is defined when creating or generating memories. Scope values cannot contain the wildcard character '*'. */ scope?: {[key: string]: string} | null; /** - * Optional. The Topics of the Memory. + * Optional. Represents the Topics of the Memory. */ topics?: Schema$GoogleCloudAiplatformV1MemoryTopicId[]; /** - * Optional. Input only. The TTL for this resource. The expiration time is computed: now + TTL. + * Optional. Input only. Represents the TTL for this resource. The expiration time is computed: now + TTL. */ ttl?: string | null; /** - * Output only. Timestamp when this Memory was most recently updated. + * Output only. Represents the timestamp when this Memory was most recently updated. */ updateTime?: string | null; } /** - * Configuration for organizing memories for a particular scope. + * Represents configuration for organizing natural language memories for a particular scope. */ export interface Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfig { /** - * Optional. If true, then the memories will be generated in the third person (i.e. "The user generates memories with Memory Bank."). By default, the memories will be generated in the first person (i.e. "I generate memories with Memory Bank.") + * Optional. Represents configuration for customizing how memories are consolidated together. + */ + consolidationConfig?: Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfigConsolidationConfig; + /** + * Optional. Indicates whether natural language memory generation should be disabled for all requests. By default, natural language memory generation is enabled. Set this to `true` when you only want to generate structured memories. + */ + disableNaturalLanguageMemories?: boolean | null; + /** + * Optional. Indicates whether the memories will be generated in the third person (i.e. "The user generates memories with Memory Bank."). By default, the memories will be generated in the first person (i.e. "I generate memories with Memory Bank.") */ enableThirdPersonMemories?: boolean | null; /** - * Optional. Examples of how to generate memories for a particular scope. + * Optional. Provides examples of how to generate memories for a particular scope. */ generateMemoriesExamples?: Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExample[]; /** - * Optional. Topics of information that should be extracted from conversations and stored as memories. If not set, then Memory Bank's default topics will be used. + * Optional. Represents topics of information that should be extracted from conversations and stored as memories. If not set, then Memory Bank's default topics will be used. */ memoryTopics?: Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfigMemoryTopic[]; /** - * Optional. The scope keys (i.e. 'user_id') for which to use this config. A request's scope must include all of the provided keys for the config to be used (order does not matter). If empty, then the config will be used for all requests that do not have a more specific config. Only one default config is allowed per Memory Bank. + * Optional. Represents the scope keys (i.e. 'user_id') for which to use this config. A request's scope must include all of the provided keys for the config to be used (order does not matter). If empty, then the config will be used for all requests that do not have a more specific config. Only one default config is allowed per Memory Bank. */ scopeKeys?: string[] | null; } + /** + * Represents configuration for customizing how memories are consolidated. + */ + export interface Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfigConsolidationConfig { + /** + * Optional. Represents the maximum number of revisions to consider for each candidate memory. If not set, then the default value (1) will be used, which means that only the latest revision will be considered. + */ + revisionsPerCandidateCount?: number | null; + } /** * An example of how to generate memories for a particular scope. */ @@ -10192,7 +10702,7 @@ export namespace aiplatform_v1 { */ conversationSource?: Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleConversationSource; /** - * Optional. The memories that are expected to be generated from the input conversation. An empty list indicates that no memories are expected to be generated for the input conversation. + * Optional. Represents the memories that are expected to be generated from the input conversation. An empty list indicates that no memories are expected to be generated for the input conversation. */ generatedMemories?: Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleGeneratedMemory[]; } @@ -10201,7 +10711,7 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleConversationSource { /** - * Optional. The input conversation events for the example. + * Optional. Represents the input conversation events for the example. */ events?: Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleConversationSourceEvent[]; } @@ -10210,7 +10720,7 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleConversationSourceEvent { /** - * Required. The content of the event. + * Required. Represents the content of the event. */ content?: Schema$GoogleCloudAiplatformV1Content; } @@ -10219,11 +10729,11 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleGeneratedMemory { /** - * Required. The fact to generate a memory from. + * Required. Represents the fact to generate a memory from. */ fact?: string | null; /** - * Optional. The list of topics that the memory should be associated with. For example, use `custom_memory_topic_label = "jargon"` if the extracted memory is an example of memory extraction for the custom topic `jargon`. + * Optional. Represents the list of topics that the memory should be associated with. For example, use `custom_memory_topic_label = "jargon"` if the extracted memory is an example of memory extraction for the custom topic `jargon`. */ topics?: Schema$GoogleCloudAiplatformV1MemoryTopicId[]; } @@ -10245,11 +10755,11 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfigMemoryTopicCustomMemoryTopic { /** - * Required. Description of the memory topic. This should explain what information should be extracted for this topic. + * Required. Represents the description of the memory topic. This should explain what information should be extracted for this topic. */ description?: string | null; /** - * Required. The label of the topic. + * Required. Represents the label of the topic. */ label?: string | null; } @@ -10258,7 +10768,7 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1MemoryBankCustomizationConfigMemoryTopicManagedMemoryTopic { /** - * Required. The managed topic. + * Required. Represents the managed topic. */ managedTopicEnum?: string | null; } @@ -10267,7 +10777,7 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1MemoryConjunctionFilter { /** - * Filters that will combined using AND logic. + * Represents filters that will be combined using AND logic. */ filters?: Schema$GoogleCloudAiplatformV1MemoryFilter[]; } @@ -10276,40 +10786,66 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1MemoryFilter { /** - * Key of the filter. For example, "author" would apply to `metadata` entries with the key "author". + * Represents the key of the filter. For example, "author" would apply to `metadata` entries with the key "author". */ key?: string | null; /** - * If true, the filter will be negated. + * Indicates whether the filter will be negated. */ negate?: boolean | null; /** - * Operator to apply to the filter. If not set, then EQUAL will be used. + * Represents the operator to apply to the filter. If not set, then EQUAL will be used. */ op?: string | null; /** - * Value to compare to. + * Represents the value to compare to. */ value?: Schema$GoogleCloudAiplatformV1MemoryMetadataValue; } + /** + * Represents configuration for triggering generation. + */ + export interface Schema$GoogleCloudAiplatformV1MemoryGenerationTriggerConfig { + /** + * Optional. Represents the active rule that determines when to flush the buffer. If not set, then the stream will be force flushed immediately. + */ + generationRule?: Schema$GoogleCloudAiplatformV1MemoryGenerationTriggerConfigGenerationTriggerRule; + } + /** + * Represents the active rule that determines when to flush the buffer. + */ + export interface Schema$GoogleCloudAiplatformV1MemoryGenerationTriggerConfigGenerationTriggerRule { + /** + * Optional. Specifies to trigger generation when the event count reaches this limit. + */ + eventCount?: number | null; + /** + * Optional. Specifies to trigger generation at a fixed interval. The duration must have a minute-level granularity. + */ + fixedInterval?: string | null; + /** + * Optional. Specifies to trigger generation if the stream is inactive for the specified duration after the most recent event. The duration must have a minute-level granularity. + */ + idleDuration?: string | null; + } /** * Memory metadata. */ export interface Schema$GoogleCloudAiplatformV1MemoryMetadataValue { /** - * Boolean value. + * Represents a boolean value. */ boolValue?: boolean | null; /** - * Double value. + * Represents a double value. */ doubleValue?: number | null; /** - * String value. + * Represents a string value. */ stringValue?: string | null; /** - * Timestamp value. When filtering on timestamp values, only the seconds field will be compared. + * Represents a timestamp value. When filtering on timestamp values, only the seconds field will be compared. */ timestampValue?: string | null; } @@ -10318,40 +10854,44 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1MemoryRevision { /** - * Output only. Timestamp when this Memory Revision was created. + * Output only. Represents the timestamp when this Memory Revision was created. */ createTime?: string | null; /** - * Output only. Timestamp of when this resource is considered expired. + * Output only. Represents the timestamp of when this resource is considered expired. */ expireTime?: string | null; /** - * Output only. The extracted memories from the source content before consolidation when the memory was updated via GenerateMemories. This information was used to modify an existing Memory via Consolidation. + * Output only. Represents the extracted memories from the source content before consolidation when the memory was updated via GenerateMemories. This information was used to modify an existing Memory via Consolidation. */ extractedMemories?: Schema$GoogleCloudAiplatformV1IntermediateExtractedMemory[]; /** - * Output only. The fact of the Memory Revision. This corresponds to the `fact` field of the parent Memory at the time of revision creation. + * Output only. Represents the fact of the Memory Revision. This corresponds to the `fact` field of the parent Memory at the time of revision creation. */ fact?: string | null; /** - * Output only. The labels of the Memory Revision. These labels are applied to the MemoryRevision when it is created based on `GenerateMemoriesRequest.revision_labels`. + * Output only. Represents the labels of the Memory Revision. These labels are applied to the MemoryRevision when it is created based on `GenerateMemoriesRequest.revision_labels`. */ labels?: {[key: string]: string} | null; /** - * Identifier. The resource name of the Memory Revision. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/memories/{memory\}/revisions/{memory_revision\}` + * Identifier. Represents the resource name of the Memory Revision. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/memories/{memory\}/revisions/{memory_revision\}` */ name?: string | null; + /** + * Output only. Represents the structured value of the memory at the time of revision creation. + */ + structuredData?: {[key: string]: any} | null; } /** * A memory topic identifier. This will be used to label a Memory and to restrict which topics are eligible for generation or retrieval. */ export interface Schema$GoogleCloudAiplatformV1MemoryTopicId { /** - * Optional. The custom memory topic label. + * Optional. Represents the custom memory topic label. */ customMemoryTopicLabel?: string | null; /** - * Optional. The managed memory topic. + * Optional. Represents the managed memory topic. */ managedMemoryTopic?: string | null; } @@ -10481,6 +11021,10 @@ export namespace aiplatform_v1 { * Spec for an LLM based metric. */ llmBasedMetricSpec?: Schema$GoogleCloudAiplatformV1LLMBasedMetricSpec; + /** + * Optional. Metadata about the metric, used for visualization and organization. + */ + metadata?: Schema$GoogleCloudAiplatformV1MetricMetadata; /** * Spec for pairwise metric. */ @@ -10498,6 +11042,44 @@ export namespace aiplatform_v1 { */ rougeSpec?: Schema$GoogleCloudAiplatformV1RougeSpec; } + /** + * Metadata about the metric, used for visualization and organization. + */ + export interface Schema$GoogleCloudAiplatformV1MetricMetadata { + /** + * Optional. Flexible metadata for user-defined attributes. + */ + otherMetadata?: {[key: string]: any} | null; + /** + * Optional. The range of possible scores for this metric, used for plotting. + */ + scoreRange?: Schema$GoogleCloudAiplatformV1MetricMetadataScoreRange; + /** + * Optional. The user-friendly name for the metric. If not set for a registered metric, it will default to the metric's display name. + */ + title?: string | null; + } + /** + * The range of possible scores for this metric, used for plotting. + */ + export interface Schema$GoogleCloudAiplatformV1MetricMetadataScoreRange { + /** + * Optional. The description of the score explaining the directionality etc. + */ + description?: string | null; + /** + * Required. The maximum value of the score range (inclusive). + */ + max?: number | null; + /** + * Required. The minimum value of the score range (inclusive). + */ + min?: number | null; + /** + * Optional. The distance between discrete steps in the range. If unset, the range is assumed to be continuous. + */ + step?: number | null; + } /** * Result for a single metric on a single instance. */ @@ -10519,6 +11101,19 @@ export namespace aiplatform_v1 { */ score?: number | null; } + /** + * The metric source used for evaluation. + */ + export interface Schema$GoogleCloudAiplatformV1MetricSource { + /** + * Inline metric config. + */ + metric?: Schema$GoogleCloudAiplatformV1Metric; + /** + * Optional. Resource name for registered metric. + */ + metricResourceName?: string | null; + } /** * Input for MetricX metric. */ @@ -10588,7 +11183,7 @@ export namespace aiplatform_v1 { */ automlModel?: Schema$GoogleCloudAiplatformV1MigratableResourceAutomlModel; /** - * Output only. Represents one Dataset in datalabeling.googleapis.com. + * Output only. Deprecated: Data Labeling Dataset migration is no longer supported. Represents one Dataset in datalabeling.googleapis.com. */ dataLabelingDataset?: Schema$GoogleCloudAiplatformV1MigratableResourceDataLabelingDataset; /** @@ -10870,7 +11465,7 @@ export namespace aiplatform_v1 { */ modelSourceInfo?: Schema$GoogleCloudAiplatformV1ModelSourceInfo; /** - * The resource name of the Model. + * Identifier. The resource name of the Model. */ name?: string | null; /** @@ -12585,11 +13180,11 @@ export namespace aiplatform_v1 { gcsDestination?: Schema$GoogleCloudAiplatformV1GcsDestination; } /** - * Defines a specification for a single output field. + * Specifies the properties of a single field that are included in each generated synthetic example. This helps the model understand what kind of data to generate for each field. */ export interface Schema$GoogleCloudAiplatformV1OutputFieldSpec { /** - * Required. The name of the output field. + * Required. The name of this field in the generated synthetic data, such as "email_subject" or "customer_review". */ fieldName?: string | null; /** @@ -12597,7 +13192,7 @@ export namespace aiplatform_v1 { */ fieldType?: string | null; /** - * Optional. Optional, but recommended. Additional guidance specific to this field to provide targeted instructions for the LLM to generate the content of a single output field. While the LLM can sometimes infer content from the field name, providing explicit guidance is preferred. + * Optional. Specific instructions for the large language model on how to generate content for this particular field. While the LLM can sometimes infer content from the field name, providing explicit guidance is preferred. For example, for a field named "review", the guidance could be "A positive review about a coffee maker." */ guidance?: string | null; } @@ -13415,6 +14010,10 @@ export namespace aiplatform_v1 { * Required. The instances that are the input to the prediction call. A DeployedModel may have an upper limit on the number of instances it supports per request, and when it is exceeded the prediction call errors in case of AutoML Models, or, in case of customer created Models, the behaviour is as documented by that Model. The schema of any single instance may be specified via Endpoint's DeployedModels' Model's PredictSchemata's instance_schema_uri. */ instances?: any[] | null; + /** + * Optional. The labels with user-defined metadata for the request. It is used for billing and reporting only. Label keys and values can be no longer than 63 characters (Unicode codepoints) and can only contain lowercase letters, numeric characters, underscores, and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter. + */ + labels?: {[key: string]: string} | null; /** * Optional. The parameters that govern the prediction. The schema of the parameters may be specified via Endpoint's DeployedModels' Model's PredictSchemata's parameters_schema_uri. */ @@ -13845,7 +14444,7 @@ export namespace aiplatform_v1 { */ launchStage?: string | null; /** - * Output only. The resource name of the PublisherModel. + * Output only. Identifier. The resource name of the PublisherModel. */ name?: string | null; /** @@ -15361,7 +15960,11 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1ReasoningEngineContextSpecMemoryBankConfigGenerationConfig { /** - * Required. The model used to generate memories. Format: `projects/{project\}/locations/{location\}/publishers/google/models/{model\}`. + * Optional. Specifies the default trigger configuration for generating memories using `IngestEvents`. + */ + generationTriggerConfig?: Schema$GoogleCloudAiplatformV1MemoryGenerationTriggerConfig; + /** + * Optional. The model used to generate memories. Format: `projects/{project\}/locations/{location\}/publishers/google/models/{model\}`. */ model?: string | null; } @@ -15420,6 +16023,10 @@ export namespace aiplatform_v1 { * Optional. Declarations for object class methods in OpenAPI specification format. */ classMethods?: Array<{[key: string]: any}> | null; + /** + * Deploy from a container image with a defined entrypoint and commands. + */ + containerSpec?: Schema$GoogleCloudAiplatformV1ReasoningEngineSpecContainerSpec; /** * Optional. The specification of a Reasoning Engine deployment. */ @@ -15445,6 +16052,15 @@ export namespace aiplatform_v1 { */ sourceCodeSpec?: Schema$GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpec; } + /** + * Specification for deploying from a container image. + */ + export interface Schema$GoogleCloudAiplatformV1ReasoningEngineSpecContainerSpec { + /** + * Required. The Artifact Registry Docker image URI (e.g., us-central1-docker.pkg.dev/my-project/my-repo/my-image:tag) of the container image that is to be run on each worker replica. + */ + imageUri?: string | null; + } /** * The specification of a Reasoning Engine deployment. */ @@ -15457,12 +16073,16 @@ export namespace aiplatform_v1 { * Optional. Environment variables to be set with the Reasoning Engine deployment. The environment variables can be updated through the UpdateReasoningEngine API. */ env?: Schema$GoogleCloudAiplatformV1EnvVar[]; + /** + * Optional. Specifies the configuration for keep-alive probe. Contains configuration on a specified endpoint that a deployment host should use to keep the container alive based on the probe settings. + */ + keepAliveProbe?: Schema$GoogleCloudAiplatformV1KeepAliveProbe; /** * Optional. The maximum number of application instances that can be launched to handle increased traffic. Defaults to 100. Range: [1, 1000]. If VPC-SC or PSC-I is enabled, the acceptable range is [1, 100]. */ maxInstances?: number | null; /** - * Optional. The minimum number of application instances that will be kept running at all times. Defaults to 1. Range: [0, 10]. + * Optional. The minimum number of application instances that will be kept running at all times. Defaults to 1. Range: [0, 75]. */ minInstances?: number | null; /** @@ -15503,6 +16123,10 @@ export namespace aiplatform_v1 { * Specification for deploying from source code. */ export interface Schema$GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpec { + /** + * Source code is generated from the agent config. + */ + agentConfigSource?: Schema$GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSource; /** * Source code is in a Git repository managed by Developer Connect. */ @@ -15520,6 +16144,28 @@ export namespace aiplatform_v1 { */ pythonSpec?: Schema$GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecPythonSpec; } + /** + * Specification for the deploying from agent config. + */ + export interface Schema$GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSource { + /** + * Required. The ADK configuration. + */ + adkConfig?: Schema$GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSourceAdkConfig; + /** + * Optional. Any additional files needed to interpret the config. If a `requirements.txt` file is present in the `inline_source`, the corresponding packages will be installed. If no `requirements.txt` file is present in `inline_source`, then the latest version of `google-adk` will be installed for interpreting the ADK config. + */ + inlineSource?: Schema$GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecInlineSource; + } + /** + * Configuration for the Agent Development Kit (ADK). + */ + export interface Schema$GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSourceAdkConfig { + /** + * Required. The value of the ADK config in JSON format. + */ + jsonConfig?: {[key: string]: any} | null; + } /** * Specifies the configuration for fetching source code from a Git repository that is managed by Developer Connect. This includes the repository, revision, and directory to use. */ @@ -15877,6 +16523,10 @@ export namespace aiplatform_v1 { * Optional. Metadata filters that will be applied to the retrieved memories' `metadata` using OR logic. Filters are defined using disjunctive normal form (OR of ANDs). For example: `filter_groups: [{filters: [{key: "author", value: {string_value: "agent 123"\}, op: EQUAL\}]\}, {filters: [{key: "label", value: {string_value: "travel"\}, op: EQUAL\}, {key: "author", value: {string_value: "agent 321"\}, op: EQUAL\}]\}]` would be equivalent to the logical expression: `(metadata.author = "agent 123" OR (metadata.label = "travel" AND metadata.author = "agent 321"))`. */ filterGroups?: Schema$GoogleCloudAiplatformV1MemoryConjunctionFilter[]; + /** + * Optional. Specifies the types of memories to retrieve. If this field is empty or not provided, the request will default to retrieving only memories of type `NATURAL_LANGUAGE_COLLECTION`. If populated, the request will retrieve memories matching any of the specified `MemoryType` values. + */ + memoryTypes?: string[] | null; /** * Required. The scope of the memories to retrieve. A memory must have exactly the same scope (`Memory.scope`) as the scope provided here to be retrieved (same keys and values). Order does not matter, but it is case-sensitive. */ @@ -16320,10 +16970,26 @@ export namespace aiplatform_v1 { * Optional. Timestamp in UTC of when this SandboxEnvironment is considered expired. This is *always* provided on output, regardless of what `expiration` was sent on input. */ expireTime?: string | null; + /** + * Output only. The resource name of the latest snapshot taken for this SandboxEnvironment. + */ + latestSandboxEnvironmentSnapshot?: string | null; /** * Identifier. The name of the SandboxEnvironment. */ name?: string | null; + /** + * Optional. Owner information for this sandbox environment. A Sandbox can only be restored from a snapshot that belongs to the same owner. If not set, sandbox will be created as the default owner. + */ + owner?: string | null; + /** + * Optional. The resource name of the SandboxEnvironmentSnapshot to use for creating this SandboxEnvironment. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot\}` + */ + sandboxEnvironmentSnapshot?: string | null; + /** + * Optional. The name of the SandboxEnvironmentTemplate specified in the parent Agent Engine resource that this SandboxEnvironment is created from. Only one of `sandbox_environment_template` and `spec` should be set. + */ + sandboxEnvironmentTemplate?: string | null; /** * Optional. The configuration of the SandboxEnvironment. */ @@ -16353,11 +17019,68 @@ export namespace aiplatform_v1 { * Output only. The IP address of the load balancer. */ loadBalancerIp?: string | null; + /** + * Output only. The routing token for the SandboxEnvironment. + */ + routingToken?: string | null; + /** + * Output only. The hostname of the SandboxEnvironment. + */ + sandboxHostname?: string | null; /** * Output only. The internal IP address of the SandboxEnvironment. */ sandboxInternalIp?: string | null; } + /** + * SandboxEnvironmentSnapshot is a snapshot of the SandboxEnvironment. + */ + export interface Schema$GoogleCloudAiplatformV1SandboxEnvironmentSnapshot { + /** + * Output only. The timestamp when this SandboxEnvironmentSnapshot was created. + */ + createTime?: string | null; + /** + * Required. The display name of the SandboxEnvironmentSnapshot. + */ + displayName?: string | null; + /** + * Optional. Timestamp in UTC of when this SandboxEnvironmentSnapshot is considered expired. This is *always* provided on output, regardless of what `expiration` was sent on input. + */ + expireTime?: string | null; + /** + * Identifier. The resource name of the SandboxEnvironmentSnapshot. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot\}` + */ + name?: string | null; + /** + * Optional. Owner information for this sandbox snapshot. Different owners will have isolations on snapshot storage and identity. If not set, snapshot will be created as the default owner. + */ + owner?: string | null; + /** + * Output only. The resource name of the parent SandboxEnvironmentSnapshot. Empty if this is a root Snapshot (the first snapshot from a newly created sandbox). Can be used to reconstruct the whole ancestry tree of snapshots. + */ + parentSnapshot?: string | null; + /** + * Optional. Input only. Action to take on the source SandboxEnvironment after the snapshot is taken. This field is only used in CreateSandboxEnvironmentSnapshotRequest and it is not stored in the resource. + */ + postSnapshotAction?: string | null; + /** + * Optional. Output only. Size of the snapshot data in bytes. + */ + sizeBytes?: string | null; + /** + * Required. The resource name of the source SandboxEnvironment this snapshot was taken from. + */ + sourceSandboxEnvironment?: string | null; + /** + * Optional. Input only. The TTL for the sandbox environment snapshot. The expiration time is computed: now + TTL. + */ + ttl?: string | null; + /** + * Output only. The timestamp when this SandboxEnvironment was most recently updated. + */ + updateTime?: string | null; + } /** * The specification of a SandboxEnvironment. */ @@ -16380,6 +17103,113 @@ export namespace aiplatform_v1 { */ machineConfig?: string | null; } + /** + * The specification of a SandboxEnvironmentTemplate. A SandboxEnvironmentTemplate defines a template for creating SandboxEnvironments. + */ + export interface Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplate { + /** + * Output only. The timestamp when this SandboxEnvironmentTemplate was created. + */ + createTime?: string | null; + /** + * The sandbox environment for custom container workloads. + */ + customContainerEnvironment?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateCustomContainerEnvironment; + /** + * The sandbox environment for default container workloads. + */ + defaultContainerEnvironment?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateDefaultContainerEnvironment; + /** + * Required. The display name of the SandboxEnvironmentTemplate. + */ + displayName?: string | null; + /** + * Optional. The configuration for egress control of this template. + */ + egressControlConfig?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateEgressControlConfig; + /** + * Identifier. The resource name of the SandboxEnvironmentTemplate. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentTemplates/{sandbox_environment_template\}` + */ + name?: string | null; + /** + * Output only. The state of the sandbox environment template. + */ + state?: string | null; + /** + * Output only. The timestamp when this SandboxEnvironmentTemplate was most recently updated. + */ + updateTime?: string | null; + } + /** + * The customized sandbox runtime environment for BYOC. + */ + export interface Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateCustomContainerEnvironment { + /** + * The specification of the custom container environment. + */ + customContainerSpec?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateCustomContainerSpec; + /** + * Ports to expose from the container. + */ + ports?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateNetworkPort[]; + /** + * Resource requests and limits for the container. + */ + resources?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateResourceRequirements; + } + /** + * Specification for deploying from a custom container image. + */ + export interface Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateCustomContainerSpec { + /** + * Required. The Artifact Registry Docker image URI (e.g., us-central1-docker.pkg.dev/my-project/my-repo/my-image:tag) of the container image that is to be run on each worker replica. + */ + imageUri?: string | null; + } + /** + * The default sandbox runtime environment for default container workloads. + */ + export interface Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateDefaultContainerEnvironment { + /** + * Required. The category of the default container image. + */ + defaultContainerCategory?: string | null; + } + /** + * Configuration for egress control of sandbox instances. + */ + export interface Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateEgressControlConfig { + /** + * Optional. Whether to allow internet access. + */ + internetAccess?: boolean | null; + } + /** + * Represents a network port in a container. + */ + export interface Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateNetworkPort { + /** + * Optional. Port number to expose. This must be a valid port number, between 1 and 65535. + */ + port?: number | null; + /** + * Optional. Protocol for port. Defaults to TCP if not specified. + */ + protocol?: string | null; + } + /** + * Message to define resource requests and limits (mirroring Kubernetes) for each sandbox instance created from this template. + */ + export interface Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateResourceRequirements { + /** + * Optional. The maximum amounts of compute resources allowed. Keys are resource names (e.g., "cpu", "memory"). Values are quantities (e.g., "500m", "1Gi"). + */ + limits?: {[key: string]: string} | null; + /** + * Optional. The requested amounts of compute resources. Keys are resource names (e.g., "cpu", "memory"). Values are quantities (e.g., "250m", "512Mi"). + */ + requests?: {[key: string]: string} | null; + } /** * A SavedQuery is a view of the dataset. It references a subset of annotations by problem type and filters. */ @@ -16578,7 +17408,7 @@ export namespace aiplatform_v1 { */ defs?: {[key: string]: Schema$GoogleCloudAiplatformV1Schema} | null; /** - * Optional. Description of the schema. + * Optional. Describes the data. The model uses this field to understand the purpose of the schema and how to use it. It is a best practice to provide a clear and descriptive explanation for the schema and its properties here, rather than in the prompt. */ description?: string | null; /** @@ -18028,6 +18858,15 @@ export namespace aiplatform_v1 { */ type?: string | null; } + /** + * Defines data for an interaction prompt. + */ + export interface Schema$GoogleCloudAiplatformV1SchemaPromptSpecInteractionData { + /** + * Optional. Lists interaction IDs associated with the prompt. This maps 1:1 to PromptMessage.contents. If InteractionData is present, every prompt message has an interaction ID. + */ + interactionIds?: string[] | null; + } /** * Prompt variation that embeds preambles to prompt string. */ @@ -18129,6 +18968,10 @@ export namespace aiplatform_v1 { * Preamble: The input prefixes before each example input. */ inputPrefixes?: string[] | null; + /** + * Data for interaction use case. + */ + interactionData?: Schema$GoogleCloudAiplatformV1SchemaPromptSpecInteractionData; /** * Preamble: The output prefixes before each example output. */ @@ -19839,6 +20682,10 @@ export namespace aiplatform_v1 { * Identifier. The resource name of the event. Format:`projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}/events/{event\}`. */ name?: string | null; + /** + * Optional. Weakly typed raw event data in proto struct format. + */ + rawEvent?: {[key: string]: any} | null; /** * Required. Timestamp when the event was created on client side. */ @@ -20917,6 +21764,10 @@ export namespace aiplatform_v1 { * Tuning Spec for Supervised Tuning for first party models. */ export interface Schema$GoogleCloudAiplatformV1SupervisedTuningSpec { + /** + * Optional. Evaluation Config for Tuning Job. + */ + evaluationConfig?: Schema$GoogleCloudAiplatformV1EvaluationConfig; /** * Optional. If set to true, disable intermediate checkpoints for SFT and only the last checkpoint will be exported. Otherwise, enable intermediate checkpoints for SFT. Default is false. */ @@ -20948,7 +21799,7 @@ export namespace aiplatform_v1 { featureViewSync?: string | null; } /** - * Represents a single synthetic example, composed of multiple fields. Used for providing few-shot examples in the request and for returning generated examples in the response. + * A single instance of generated synthetic data. Each example is made up of one or more named fields, as defined in `OutputFieldSpec`. These examples are used as few-shot examples to show the model what you want (in `GenerateSyntheticDataRequest.examples`) and to return generated examples in the response (in `GenerateSyntheticDataResponse.synthetic_examples`). */ export interface Schema$GoogleCloudAiplatformV1SyntheticExample { /** @@ -20957,24 +21808,24 @@ export namespace aiplatform_v1 { fields?: Schema$GoogleCloudAiplatformV1SyntheticField[]; } /** - * Represents a single named field within a SyntheticExample. + * Represents a single named field within a synthetic example, consisting of a name and the actual content. */ export interface Schema$GoogleCloudAiplatformV1SyntheticField { /** - * Required. The content of the field. + * Required. The actual content or value for this field. This can be text, images, or other types of data. */ content?: Schema$GoogleCloudAiplatformV1Content; /** - * Optional. The name of the field. + * Optional. The name of the specific field, such as "product_name" or "review_text". */ fieldName?: string | null; } /** - * Defines a generation strategy based on a high-level task description. + * Defines a generation strategy based on a general task description. */ export interface Schema$GoogleCloudAiplatformV1TaskDescriptionStrategy { /** - * Required. A high-level description of the synthetic data to be generated. + * Required. A general description of the type of synthetic data you want to generate. For example, "Generate customer reviews for a new smartphone." */ taskDescription?: string | null; } @@ -21468,7 +22319,7 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1ToolCallValidSpec {} /** - * Tool that executes code generated by the model, and automatically returns the result to the model. See also [ExecutableCode]and [CodeExecutionResult] which are input and output to this tool. + * Tool that executes code generated by the model, and automatically returns the result to the model. See also ExecutableCode and CodeExecutionResult, which are input and output to this tool. */ export interface Schema$GoogleCloudAiplatformV1ToolCodeExecution {} /** @@ -21509,7 +22360,32 @@ export namespace aiplatform_v1 { * Optional. List of domains to be excluded from the search results. The default limit is 2000 domains. Example: ["amazon.com", "facebook.com"]. */ excludeDomains?: string[] | null; + /** + * Optional. The set of search types to enable. If not set, web search is enabled by default. + */ + searchTypes?: Schema$GoogleCloudAiplatformV1ToolGoogleSearchSearchTypes; + } + /** + * Image search for grounding and related configurations. + */ + export interface Schema$GoogleCloudAiplatformV1ToolGoogleSearchImageSearch {} + /** + * Different types of search that can be enabled on the GoogleSearch tool. + */ + export interface Schema$GoogleCloudAiplatformV1ToolGoogleSearchSearchTypes { + /** + * Optional. Setting this field enables image search. Image bytes are returned. + */ + imageSearch?: Schema$GoogleCloudAiplatformV1ToolGoogleSearchImageSearch; + /** + * Optional. Setting this field enables web search. Only text results are returned. + */ + webSearch?: Schema$GoogleCloudAiplatformV1ToolGoogleSearchWebSearch; } + /** + * Standard web search for grounding and related configurations. Only text results are returned. + */ + export interface Schema$GoogleCloudAiplatformV1ToolGoogleSearchWebSearch {} /** * Input for tool name match metric. */ @@ -22052,6 +22928,19 @@ export namespace aiplatform_v1 { */ toolName?: string | null; } + /** + * Audio transcription in Server Content. + */ + export interface Schema$GoogleCloudAiplatformV1Transcription { + /** + * Optional. The bool indicates the end of the transcription. + */ + finished?: boolean | null; + /** + * Optional. Transcription text. + */ + text?: string | null; + } /** * A message representing a Trial. A Trial contains a unique set of Parameters that has been or will be evaluated, along with the objective metrics got by running the Trial. */ @@ -22224,6 +23113,10 @@ export namespace aiplatform_v1 { * Output only. Only populated when job's state is `JOB_STATE_FAILED` or `JOB_STATE_CANCELLED`. */ error?: Schema$GoogleRpcStatus; + /** + * Output only. Evaluation runs for the Tuning Job. + */ + evaluateDatasetRuns?: Schema$GoogleCloudAiplatformV1EvaluateDatasetRun[]; /** * Output only. The Experiment associated with this TuningJob. */ @@ -32555,7 +33448,6 @@ export namespace aiplatform_v1 { } /** - * Perform an online prediction. * @example * ```js * // Before running the sample: @@ -32760,6 +33652,7 @@ export namespace aiplatform_v1 { * // request body parameters * // { * // "instances": [], + * // "labels": {}, * // "parameters": {} * // } * }, @@ -52703,6 +53596,7 @@ export namespace aiplatform_v1 { ragEngineConfig: Resource$Projects$Locations$Ragengineconfig; reasoningEngines: Resource$Projects$Locations$Reasoningengines; schedules: Resource$Projects$Locations$Schedules; + skills: Resource$Projects$Locations$Skills; specialistPools: Resource$Projects$Locations$Specialistpools; studies: Resource$Projects$Locations$Studies; tensorboards: Resource$Projects$Locations$Tensorboards; @@ -52787,6 +53681,7 @@ export namespace aiplatform_v1 { this.context ); this.schedules = new Resource$Projects$Locations$Schedules(this.context); + this.skills = new Resource$Projects$Locations$Skills(this.context); this.specialistPools = new Resource$Projects$Locations$Specialistpools( this.context ); @@ -52802,7 +53697,7 @@ export namespace aiplatform_v1 { } /** - * Given an input prompt, it returns augmented prompt from vertex rag store to guide LLM towards generating grounded responses. + * Agentic Retrieval Ask API for RAG. * @example * ```js * // Before running the sample: @@ -52831,17 +53726,16 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.augmentPrompt({ - * // Required. The resource name of the Location from which to augment prompt. The users must have permission to make a call in the project. Format: `projects/{project\}/locations/{location\}`. + * const res = await aiplatform.projects.locations.askContexts({ + * // Required. The resource name of the Location from which to retrieve RagContexts. The users must have permission to make a call in the project. Format: `projects/{project\}/locations/{location\}`. * parent: 'projects/my-project/locations/my-location', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "contents": [], - * // "model": {}, - * // "vertexRagStore": {} + * // "query": {}, + * // "tools": [] * // } * }, * }); @@ -52849,8 +53743,8 @@ export namespace aiplatform_v1 { * * // Example response * // { - * // "augmentedPrompt": [], - * // "facts": [] + * // "contexts": {}, + * // "response": "my_response" * // } * } * @@ -52866,61 +53760,61 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - augmentPrompt( - params: Params$Resource$Projects$Locations$Augmentprompt, + askContexts( + params: Params$Resource$Projects$Locations$Askcontexts, options: StreamMethodOptions ): Promise>; - augmentPrompt( - params?: Params$Resource$Projects$Locations$Augmentprompt, + askContexts( + params?: Params$Resource$Projects$Locations$Askcontexts, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - augmentPrompt( - params: Params$Resource$Projects$Locations$Augmentprompt, + askContexts( + params: Params$Resource$Projects$Locations$Askcontexts, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - augmentPrompt( - params: Params$Resource$Projects$Locations$Augmentprompt, + askContexts( + params: Params$Resource$Projects$Locations$Askcontexts, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - augmentPrompt( - params: Params$Resource$Projects$Locations$Augmentprompt, - callback: BodyResponseCallback + askContexts( + params: Params$Resource$Projects$Locations$Askcontexts, + callback: BodyResponseCallback ): void; - augmentPrompt( - callback: BodyResponseCallback + askContexts( + callback: BodyResponseCallback ): void; - augmentPrompt( + askContexts( paramsOrCallback?: - | Params$Resource$Projects$Locations$Augmentprompt - | BodyResponseCallback + | Params$Resource$Projects$Locations$Askcontexts + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Augmentprompt; + {}) as Params$Resource$Projects$Locations$Askcontexts; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Augmentprompt; + params = {} as Params$Resource$Projects$Locations$Askcontexts; options = {}; } @@ -52933,7 +53827,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}:augmentPrompt').replace( + url: (rootUrl + '/v1/{+parent}:askContexts').replace( /([^:]\/)\/+/g, '$1' ), @@ -52948,19 +53842,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Given an input text, it returns a score that evaluates the factuality of the text. It also extracts and returns claims from the text and provides supporting facts. + * Asynchronous API to retrieves relevant contexts for a query. * @example * ```js * // Before running the sample: @@ -52989,17 +53883,16 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.corroborateContent({ - * // Required. The resource name of the Location from which to corroborate text. The users must have permission to make a call in the project. Format: `projects/{project\}/locations/{location\}`. + * const res = await aiplatform.projects.locations.asyncRetrieveContexts({ + * // Required. The resource name of the Location from which to retrieve RagContexts. The users must have permission to make a call in the project. Format: `projects/{project\}/locations/{location\}`. * parent: 'projects/my-project/locations/my-location', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "content": {}, - * // "facts": [], - * // "parameters": {} + * // "query": {}, + * // "tools": [] * // } * }, * }); @@ -53007,8 +53900,11 @@ export namespace aiplatform_v1 { * * // Example response * // { - * // "claims": [], - * // "corroborationScore": {} + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -53024,61 +53920,213 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - corroborateContent( - params: Params$Resource$Projects$Locations$Corroboratecontent, + asyncRetrieveContexts( + params: Params$Resource$Projects$Locations$Asyncretrievecontexts, options: StreamMethodOptions ): Promise>; - corroborateContent( - params?: Params$Resource$Projects$Locations$Corroboratecontent, + asyncRetrieveContexts( + params?: Params$Resource$Projects$Locations$Asyncretrievecontexts, + options?: MethodOptions + ): Promise>; + asyncRetrieveContexts( + params: Params$Resource$Projects$Locations$Asyncretrievecontexts, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + asyncRetrieveContexts( + params: Params$Resource$Projects$Locations$Asyncretrievecontexts, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + asyncRetrieveContexts( + params: Params$Resource$Projects$Locations$Asyncretrievecontexts, + callback: BodyResponseCallback + ): void; + asyncRetrieveContexts( + callback: BodyResponseCallback + ): void; + asyncRetrieveContexts( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Asyncretrievecontexts + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Asyncretrievecontexts; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Asyncretrievecontexts; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}:asyncRetrieveContexts').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Given an input prompt, it returns augmented prompt from vertex rag store to guide LLM towards generating grounded responses. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.augmentPrompt({ + * // Required. The resource name of the Location from which to augment prompt. The users must have permission to make a call in the project. Format: `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "contents": [], + * // "model": {}, + * // "vertexRagStore": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "augmentedPrompt": [], + * // "facts": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + augmentPrompt( + params: Params$Resource$Projects$Locations$Augmentprompt, + options: StreamMethodOptions + ): Promise>; + augmentPrompt( + params?: Params$Resource$Projects$Locations$Augmentprompt, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - corroborateContent( - params: Params$Resource$Projects$Locations$Corroboratecontent, + augmentPrompt( + params: Params$Resource$Projects$Locations$Augmentprompt, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - corroborateContent( - params: Params$Resource$Projects$Locations$Corroboratecontent, + augmentPrompt( + params: Params$Resource$Projects$Locations$Augmentprompt, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - corroborateContent( - params: Params$Resource$Projects$Locations$Corroboratecontent, - callback: BodyResponseCallback + augmentPrompt( + params: Params$Resource$Projects$Locations$Augmentprompt, + callback: BodyResponseCallback ): void; - corroborateContent( - callback: BodyResponseCallback + augmentPrompt( + callback: BodyResponseCallback ): void; - corroborateContent( + augmentPrompt( paramsOrCallback?: - | Params$Resource$Projects$Locations$Corroboratecontent - | BodyResponseCallback + | Params$Resource$Projects$Locations$Augmentprompt + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Corroboratecontent; + {}) as Params$Resource$Projects$Locations$Augmentprompt; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Corroboratecontent; + params = {} as Params$Resource$Projects$Locations$Augmentprompt; options = {}; } @@ -53091,7 +54139,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}:corroborateContent').replace( + url: (rootUrl + '/v1/{+parent}:augmentPrompt').replace( /([^:]\/)\/+/g, '$1' ), @@ -53106,19 +54154,177 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Deploys a model to a new endpoint. + * Given an input text, it returns a score that evaluates the factuality of the text. It also extracts and returns claims from the text and provides supporting facts. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.corroborateContent({ + * // Required. The resource name of the Location from which to corroborate text. The users must have permission to make a call in the project. Format: `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "content": {}, + * // "facts": [], + * // "parameters": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "claims": [], + * // "corroborationScore": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + corroborateContent( + params: Params$Resource$Projects$Locations$Corroboratecontent, + options: StreamMethodOptions + ): Promise>; + corroborateContent( + params?: Params$Resource$Projects$Locations$Corroboratecontent, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + corroborateContent( + params: Params$Resource$Projects$Locations$Corroboratecontent, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + corroborateContent( + params: Params$Resource$Projects$Locations$Corroboratecontent, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + corroborateContent( + params: Params$Resource$Projects$Locations$Corroboratecontent, + callback: BodyResponseCallback + ): void; + corroborateContent( + callback: BodyResponseCallback + ): void; + corroborateContent( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Corroboratecontent + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Corroboratecontent; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Corroboratecontent; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}:corroborateContent').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Deploys a model to a new endpoint. * @example * ```js * // Before running the sample: @@ -53479,6 +54685,7 @@ export namespace aiplatform_v1 { * // "groundednessInput": {}, * // "instance": {}, * // "location": "my_location", + * // "metricSources": [], * // "metrics": [], * // "metricxInput": {}, * // "pairwiseMetricInput": {}, @@ -53694,6 +54901,7 @@ export namespace aiplatform_v1 { * // "agentConfig": {}, * // "contents": [], * // "location": "my_location", + * // "metricResourceName": "my_metricResourceName", * // "predefinedRubricGenerationSpec": {}, * // "rubricGenerationSpec": {} * // } @@ -53814,7 +55022,7 @@ export namespace aiplatform_v1 { } /** - * Generates synthetic data based on the provided configuration. + * Generates synthetic (artificial) data based on a description * @example * ```js * // Before running the sample: @@ -53844,7 +55052,7 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = await aiplatform.projects.locations.generateSyntheticData({ - * // Required. The resource name of the Location to run the job. Format: `projects/{project\}/locations/{location\}` + * // Required. The geographic location where the synthetic data generation request is processed. This should be in the format `projects/{project\}/locations/{location\}`. For example, `projects/my-project/locations/us-central1`. * location: 'projects/my-project/locations/my-location', * * // Request body metadata @@ -54259,7 +55467,7 @@ export namespace aiplatform_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -54289,7 +55497,7 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = await aiplatform.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -54722,6 +55930,28 @@ export namespace aiplatform_v1 { } } + export interface Params$Resource$Projects$Locations$Askcontexts extends StandardParameters { + /** + * Required. The resource name of the Location from which to retrieve RagContexts. The users must have permission to make a call in the project. Format: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1AskContextsRequest; + } + export interface Params$Resource$Projects$Locations$Asyncretrievecontexts extends StandardParameters { + /** + * Required. The resource name of the Location from which to retrieve RagContexts. The users must have permission to make a call in the project. Format: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1AsyncRetrieveContextsRequest; + } export interface Params$Resource$Projects$Locations$Augmentprompt extends StandardParameters { /** * Required. The resource name of the Location from which to augment prompt. The users must have permission to make a call in the project. Format: `projects/{project\}/locations/{location\}`. @@ -54790,7 +56020,7 @@ export namespace aiplatform_v1 { } export interface Params$Resource$Projects$Locations$Generatesyntheticdata extends StandardParameters { /** - * Required. The resource name of the Location to run the job. Format: `projects/{project\}/locations/{location\}` + * Required. The geographic location where the synthetic data generation request is processed. This should be in the format `projects/{project\}/locations/{location\}`. For example, `projects/my-project/locations/us-central1`. */ location?: string; @@ -54813,7 +56043,7 @@ export namespace aiplatform_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -71719,7 +72949,6 @@ export namespace aiplatform_v1 { } /** - * Perform an online prediction. * @example * ```js * // Before running the sample: @@ -71924,6 +73153,7 @@ export namespace aiplatform_v1 { * // request body parameters * // { * // "instances": [], + * // "labels": {}, * // "parameters": {} * // } * }, @@ -74298,6 +75528,161 @@ export namespace aiplatform_v1 { return createAPIRequest(parameters); } } + + /** + * Forwards arbitrary HTTP requests for both streaming and non-streaming cases. To use this method, invoke_route_prefix must be set to allow the paths that will be specified in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.endpoints.openapi.responses({ + * // ID of the DeployedModel that serves the invoke request. + * deployedModelId: 'placeholder-value', + * // Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + * endpoint: 'projects/my-project/locations/my-location/endpoints/openapi', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "contentType": "my_contentType", + * // "data": "my_data", + * // "extensions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "contentType": "my_contentType", + * // "data": "my_data", + * // "extensions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + responses( + params: Params$Resource$Projects$Locations$Endpoints$Openapi$Responses, + options: StreamMethodOptions + ): Promise>; + responses( + params?: Params$Resource$Projects$Locations$Endpoints$Openapi$Responses, + options?: MethodOptions + ): Promise>; + responses( + params: Params$Resource$Projects$Locations$Endpoints$Openapi$Responses, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + responses( + params: Params$Resource$Projects$Locations$Endpoints$Openapi$Responses, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + responses( + params: Params$Resource$Projects$Locations$Endpoints$Openapi$Responses, + callback: BodyResponseCallback + ): void; + responses(callback: BodyResponseCallback): void; + responses( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$Openapi$Responses + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$Openapi$Responses; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Endpoints$Openapi$Responses; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+endpoint}/responses').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['endpoint'], + pathParams: ['endpoint'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Projects$Locations$Endpoints$Openapi$Completions extends StandardParameters { @@ -74330,6 +75715,21 @@ export namespace aiplatform_v1 { */ requestBody?: Schema$GoogleApiHttpBody; } + export interface Params$Resource$Projects$Locations$Endpoints$Openapi$Responses extends StandardParameters { + /** + * ID of the DeployedModel that serves the invoke request. + */ + deployedModelId?: string; + /** + * Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + */ + endpoint?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleApiHttpBody; + } export class Resource$Projects$Locations$Endpoints$Operations { context: APIRequestContext; @@ -112021,6 +113421,7 @@ export namespace aiplatform_v1 { * requestBody: { * // request body parameters * // { + * // "customServiceAccount": "my_customServiceAccount", * // "encryptionSpec": {}, * // "modelId": "my_modelId", * // "parentModel": "my_parentModel", @@ -113579,7 +114980,7 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = await aiplatform.projects.locations.models.patch({ - * // The resource name of the Model. + * // Identifier. The resource name of the Model. * name: 'projects/my-project/locations/my-location/models/my-model', * // Required. The update mask applies to the resource. For the `FieldMask` definition, see google.protobuf.FieldMask. * updateMask: 'placeholder-value', @@ -114506,7 +115907,7 @@ export namespace aiplatform_v1 { } export interface Params$Resource$Projects$Locations$Models$Patch extends StandardParameters { /** - * The resource name of the Model. + * Identifier. The resource name of the Model. */ name?: string; /** @@ -128888,6 +130289,7 @@ export namespace aiplatform_v1 { * // { * // "autoTruncate": false, * // "content": {}, + * // "embedContentConfig": {}, * // "outputDimensionality": 0, * // "taskType": "my_taskType", * // "title": "my_title" @@ -129346,7 +130748,6 @@ export namespace aiplatform_v1 { } /** - * Perform an online prediction. * @example * ```js * // Before running the sample: @@ -129555,6 +130956,7 @@ export namespace aiplatform_v1 { * // request body parameters * // { * // "instances": [], + * // "labels": {}, * // "parameters": {} * // } * }, @@ -134457,7 +135859,10 @@ export namespace aiplatform_v1 { context: APIRequestContext; memories: Resource$Projects$Locations$Reasoningengines$Memories; operations: Resource$Projects$Locations$Reasoningengines$Operations; + runtimeRevisions: Resource$Projects$Locations$Reasoningengines$Runtimerevisions; sandboxEnvironments: Resource$Projects$Locations$Reasoningengines$Sandboxenvironments; + sandboxEnvironmentSnapshots: Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots; + sandboxEnvironmentTemplates: Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates; sessions: Resource$Projects$Locations$Reasoningengines$Sessions; constructor(context: APIRequestContext) { this.context = context; @@ -134468,15 +135873,182 @@ export namespace aiplatform_v1 { new Resource$Projects$Locations$Reasoningengines$Operations( this.context ); + this.runtimeRevisions = + new Resource$Projects$Locations$Reasoningengines$Runtimerevisions( + this.context + ); this.sandboxEnvironments = new Resource$Projects$Locations$Reasoningengines$Sandboxenvironments( this.context ); + this.sandboxEnvironmentSnapshots = + new Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots( + this.context + ); + this.sandboxEnvironmentTemplates = + new Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates( + this.context + ); this.sessions = new Resource$Projects$Locations$Reasoningengines$Sessions( this.context ); } + /** + * Async query using a reasoning engine. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.reasoningEngines.asyncQuery({ + * // Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "inputGcsUri": "my_inputGcsUri", + * // "outputGcsUri": "my_outputGcsUri" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + asyncQuery( + params: Params$Resource$Projects$Locations$Reasoningengines$Asyncquery, + options: StreamMethodOptions + ): Promise>; + asyncQuery( + params?: Params$Resource$Projects$Locations$Reasoningengines$Asyncquery, + options?: MethodOptions + ): Promise>; + asyncQuery( + params: Params$Resource$Projects$Locations$Reasoningengines$Asyncquery, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + asyncQuery( + params: Params$Resource$Projects$Locations$Reasoningengines$Asyncquery, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + asyncQuery( + params: Params$Resource$Projects$Locations$Reasoningengines$Asyncquery, + callback: BodyResponseCallback + ): void; + asyncQuery( + callback: BodyResponseCallback + ): void; + asyncQuery( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reasoningengines$Asyncquery + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reasoningengines$Asyncquery; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Asyncquery; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:asyncQuery').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Creates a reasoning engine. * @example @@ -136166,6 +137738,17 @@ export namespace aiplatform_v1 { } } + export interface Params$Resource$Projects$Locations$Reasoningengines$Asyncquery extends StandardParameters { + /** + * Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1AsyncQueryReasoningEngineRequest; + } export interface Params$Resource$Projects$Locations$Reasoningengines$Create extends StandardParameters { /** * Required. The resource name of the Location to create the ReasoningEngine in. Format: `projects/{project\}/locations/{location\}` @@ -136339,6 +137922,8 @@ export namespace aiplatform_v1 { * // Do the magic * const res = * await aiplatform.projects.locations.reasoningEngines.memories.create({ + * // Optional. The user defined ID to use for memory, which will become the final component of the memory resource name. If not provided, Vertex AI will generate a value for this ID. This value may be up to 63 characters, and valid characters are `[a-z0-9-]`. The first character must be a letter, and the last character must be a letter or number. + * memoryId: 'placeholder-value', * // Required. The resource name of the ReasoningEngine to create the Memory under. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` * parent: * 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine', @@ -136661,6 +138246,7 @@ export namespace aiplatform_v1 { * requestBody: { * // request body parameters * // { + * // "allowedTopics": [], * // "directContentsSource": {}, * // "directMemoriesSource": {}, * // "disableConsolidation": false, @@ -137135,7 +138721,7 @@ export namespace aiplatform_v1 { * // Do the magic * const res = * await aiplatform.projects.locations.reasoningEngines.memories.patch({ - * // Identifier. The resource name of the Memory. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/memories/{memory\}` + * // Identifier. Represents the resource name of the Memory. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/memories/{memory\}` * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/memories/my-memorie', * // Optional. Mask specifying which fields to update. Supported fields: * `display_name` * `description` * `fact` * updateMask: 'placeholder-value', @@ -137471,6 +139057,7 @@ export namespace aiplatform_v1 { * // { * // "filter": "my_filter", * // "filterGroups": [], + * // "memoryTypes": [], * // "scope": {}, * // "similaritySearchParams": {}, * // "simpleRetrievalParams": {} @@ -137749,6 +139336,10 @@ export namespace aiplatform_v1 { } export interface Params$Resource$Projects$Locations$Reasoningengines$Memories$Create extends StandardParameters { + /** + * Optional. The user defined ID to use for memory, which will become the final component of the memory resource name. If not provided, Vertex AI will generate a value for this ID. This value may be up to 63 characters, and valid characters are `[a-z0-9-]`. The first character must be a letter, and the last character must be a letter or number. + */ + memoryId?: string; /** * Required. The resource name of the ReasoningEngine to create the Memory under. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` */ @@ -137806,7 +139397,7 @@ export namespace aiplatform_v1 { } export interface Params$Resource$Projects$Locations$Reasoningengines$Memories$Patch extends StandardParameters { /** - * Identifier. The resource name of the Memory. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/memories/{memory\}` + * Identifier. Represents the resource name of the Memory. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/memories/{memory\}` */ name?: string; /** @@ -138690,7 +140281,8 @@ export namespace aiplatform_v1 { * // "extractedMemories": [], * // "fact": "my_fact", * // "labels": {}, - * // "name": "my_name" + * // "name": "my_name", + * // "structuredData": {} * // } * } * @@ -139757,19 +141349,14 @@ export namespace aiplatform_v1 { timeout?: string; } - export class Resource$Projects$Locations$Reasoningengines$Sandboxenvironments { + export class Resource$Projects$Locations$Reasoningengines$Runtimerevisions { context: APIRequestContext; - operations: Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Operations; constructor(context: APIRequestContext) { this.context = context; - this.operations = - new Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Operations( - this.context - ); } /** - * Creates a SandboxEnvironment in a given reasoning engine. + * Queries using a reasoning engine. * @example * ```js * // Before running the sample: @@ -139799,25 +141386,17 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.create( + * await aiplatform.projects.locations.reasoningEngines.runtimeRevisions.query( * { - * // Required. The resource name of the reasoning engine to create the SandboxEnvironment in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}`. - * parent: - * 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine', + * // Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/runtimeRevisions/my-runtimeRevision', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "connectionInfo": {}, - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "expireTime": "my_expireTime", - * // "name": "my_name", - * // "spec": {}, - * // "state": "my_state", - * // "ttl": "my_ttl", - * // "updateTime": "my_updateTime" + * // "classMethod": "my_classMethod", + * // "input": {} * // } * }, * }, @@ -139826,11 +141405,7 @@ export namespace aiplatform_v1 { * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "output": {} * // } * } * @@ -139846,58 +141421,62 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sandboxenvironments$Create, + query( + params: Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Query, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create, + query( + params?: Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Query, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create, + ): Promise< + GaxiosResponseWithHTTP2 + >; + query( + params: Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Query, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create, + query( + params: Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Query, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create, - callback: BodyResponseCallback + query( + params: Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Query, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + query( + callback: BodyResponseCallback ): void; - create( + query( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Query + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Query; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create; + {} as Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Query; options = {}; } @@ -139910,32 +141489,388 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/sandboxEnvironments').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}:query').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes the specific SandboxEnvironment. + * Streams queries using a reasoning engine. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.reasoningEngines.runtimeRevisions.streamQuery( + * { + * // Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/runtimeRevisions/my-runtimeRevision', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "classMethod": "my_classMethod", + * // "input": {} + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "contentType": "my_contentType", + * // "data": "my_data", + * // "extensions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + streamQuery( + params: Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Streamquery, + options: StreamMethodOptions + ): Promise>; + streamQuery( + params?: Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Streamquery, + options?: MethodOptions + ): Promise>; + streamQuery( + params: Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Streamquery, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + streamQuery( + params: Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Streamquery, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + streamQuery( + params: Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Streamquery, + callback: BodyResponseCallback + ): void; + streamQuery(callback: BodyResponseCallback): void; + streamQuery( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Streamquery + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Streamquery; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Streamquery; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:streamQuery').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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$Reasoningengines$Runtimerevisions$Query extends StandardParameters { + /** + * Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1QueryReasoningEngineRequest; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Runtimerevisions$Streamquery extends StandardParameters { + /** + * Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1StreamQueryReasoningEngineRequest; + } + + export class Resource$Projects$Locations$Reasoningengines$Sandboxenvironments { + context: APIRequestContext; + operations: Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = + new Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Operations( + this.context + ); + } + + /** + * Creates a SandboxEnvironment in a given reasoning engine. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.create( + * { + * // Required. The resource name of the reasoning engine to create the SandboxEnvironment in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}`. + * parent: + * 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "connectionInfo": {}, + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "expireTime": "my_expireTime", + * // "latestSandboxEnvironmentSnapshot": "my_latestSandboxEnvironmentSnapshot", + * // "name": "my_name", + * // "owner": "my_owner", + * // "sandboxEnvironmentSnapshot": "my_sandboxEnvironmentSnapshot", + * // "sandboxEnvironmentTemplate": "my_sandboxEnvironmentTemplate", + * // "spec": {}, + * // "state": "my_state", + * // "ttl": "my_ttl", + * // "updateTime": "my_updateTime" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Reasoningengines$Sandboxenvironments$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create, + callback: BodyResponseCallback + ): void; + create( + callback: BodyResponseCallback + ): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/sandboxEnvironments').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specific SandboxEnvironment. * @example * ```js * // Before running the sample: @@ -140284,7 +142219,11 @@ export namespace aiplatform_v1 { * // "createTime": "my_createTime", * // "displayName": "my_displayName", * // "expireTime": "my_expireTime", + * // "latestSandboxEnvironmentSnapshot": "my_latestSandboxEnvironmentSnapshot", * // "name": "my_name", + * // "owner": "my_owner", + * // "sandboxEnvironmentSnapshot": "my_sandboxEnvironmentSnapshot", + * // "sandboxEnvironmentTemplate": "my_sandboxEnvironmentTemplate", * // "spec": {}, * // "state": "my_state", * // "ttl": "my_ttl", @@ -140553,6 +142492,173 @@ export namespace aiplatform_v1 { ); } } + + /** + * Snapshots the specific SandboxEnvironment resource and creates a SandboxEnvironmentSnapshot resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironments.snapshot( + * { + * // Required. The resource name of the sandbox environment to snapshot. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}`. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "expireTime": "my_expireTime", + * // "name": "my_name", + * // "owner": "my_owner", + * // "parentSnapshot": "my_parentSnapshot", + * // "postSnapshotAction": "my_postSnapshotAction", + * // "sizeBytes": "my_sizeBytes", + * // "sourceSandboxEnvironment": "my_sourceSandboxEnvironment", + * // "ttl": "my_ttl", + * // "updateTime": "my_updateTime" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + snapshot( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Snapshot, + options: StreamMethodOptions + ): Promise>; + snapshot( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Snapshot, + options?: MethodOptions + ): Promise>; + snapshot( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Snapshot, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + snapshot( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Snapshot, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + snapshot( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Snapshot, + callback: BodyResponseCallback + ): void; + snapshot( + callback: BodyResponseCallback + ): void; + snapshot( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Snapshot + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Snapshot; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Snapshot; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:snapshot').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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$Reasoningengines$Sandboxenvironments$Create extends StandardParameters { @@ -140607,6 +142713,17 @@ export namespace aiplatform_v1 { */ parent?: string; } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Snapshot extends StandardParameters { + /** + * Required. The resource name of the sandbox environment to snapshot. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}`. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentSnapshot; + } export class Resource$Projects$Locations$Reasoningengines$Sandboxenvironments$Operations { context: APIRequestContext; @@ -141210,24 +143327,19 @@ export namespace aiplatform_v1 { timeout?: string; } - export class Resource$Projects$Locations$Reasoningengines$Sessions { + export class Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots { context: APIRequestContext; - events: Resource$Projects$Locations$Reasoningengines$Sessions$Events; - operations: Resource$Projects$Locations$Reasoningengines$Sessions$Operations; + operations: Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations; constructor(context: APIRequestContext) { this.context = context; - this.events = - new Resource$Projects$Locations$Reasoningengines$Sessions$Events( - this.context - ); this.operations = - new Resource$Projects$Locations$Reasoningengines$Sessions$Operations( + new Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations( this.context ); } /** - * Appends an event to a given session. + * Deletes the specific SandboxEnvironmentSnapshot. * @example * ```js * // Before running the sample: @@ -141257,30 +143369,22 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.reasoningEngines.sessions.appendEvent({ - * // Required. The resource name of the session to append event to. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` - * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "actions": {}, - * // "author": "my_author", - * // "content": {}, - * // "errorCode": "my_errorCode", - * // "errorMessage": "my_errorMessage", - * // "eventMetadata": {}, - * // "invocationId": "my_invocationId", - * // "name": "my_name", - * // "timestamp": "my_timestamp" - * // } + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.delete( + * { + * // Required. The resource name of the SandboxEnvironmentSnapshot to delete. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot\}` + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironmentSnapshots/my-sandboxEnvironmentSnapshot', * }, - * }); + * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -141295,62 +143399,58 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - appendEvent( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent, + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Delete, options: StreamMethodOptions ): Promise>; - appendEvent( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent, + delete( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - appendEvent( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - appendEvent( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent, + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Delete, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - appendEvent( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Delete, + callback: BodyResponseCallback ): void; - appendEvent( - callback: BodyResponseCallback + delete( + callback: BodyResponseCallback ): void; - appendEvent( + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Delete; options = {}; } @@ -141363,11 +143463,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:appendEvent').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options @@ -141378,19 +143475,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a new Session. + * Gets details of the specific SandboxEnvironmentSnapshot. * @example * ```js * // Before running the sample: @@ -141420,36 +143515,27 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.reasoningEngines.sessions.create({ - * // Required. The resource name of the location to create the session in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - * parent: - * 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "expireTime": "my_expireTime", - * // "labels": {}, - * // "name": "my_name", - * // "sessionState": {}, - * // "ttl": "my_ttl", - * // "updateTime": "my_updateTime", - * // "userId": "my_userId" - * // } + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.get( + * { + * // Required. The resource name of the sandbox environment snapshot. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot\}` + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironmentSnapshots/my-sandboxEnvironmentSnapshot', * }, - * }); + * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "expireTime": "my_expireTime", * // "name": "my_name", - * // "response": {} + * // "owner": "my_owner", + * // "parentSnapshot": "my_parentSnapshot", + * // "postSnapshotAction": "my_postSnapshotAction", + * // "sizeBytes": "my_sizeBytes", + * // "sourceSandboxEnvironment": "my_sourceSandboxEnvironment", + * // "ttl": "my_ttl", + * // "updateTime": "my_updateTime" * // } * } * @@ -141465,58 +143551,62 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sessions$Create, + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Get, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create, + get( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Get, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create, + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create, + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Get, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - create( + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Get; options = {}; } @@ -141529,32 +143619,31 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/sessions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes details of the specific Session. + * Lists SandboxEnvironmentSnapshots in a given reasoning engine. * @example * ```js * // Before running the sample: @@ -141584,19 +143673,25 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.reasoningEngines.sessions.delete({ - * // Required. The resource name of the session. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` - * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session', - * }); + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.list( + * { + * // Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). + * filter: 'placeholder-value', + * // Optional. The maximum number of SandboxEnvironmentSnapshots to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentSnapshots will be returned. Values above 100 will be coerced to 100. + * pageSize: 'placeholder-value', + * // Optional. The standard list page token, received from a previous `ListSandboxEnvironmentSnapshots` call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * parent: + * 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "nextPageToken": "my_nextPageToken", + * // "sandboxEnvironmentSnapshots": [] * // } * } * @@ -141612,58 +143707,62 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sessions$Delete, + list( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete, + list( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete, + list( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$List, + callback: BodyResponseCallback ): void; - delete( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - delete( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$List; options = {}; } @@ -141676,29 +143775,71 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: ( + rootUrl + '/v1/{+parent}/sandboxEnvironmentSnapshots' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Delete extends StandardParameters { /** - * Gets details of the specific Session. + * Required. The resource name of the SandboxEnvironmentSnapshot to delete. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Get extends StandardParameters { + /** + * Required. The resource name of the sandbox environment snapshot. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$List extends StandardParameters { + /** + * Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). + */ + filter?: string; + /** + * Optional. The maximum number of SandboxEnvironmentSnapshots to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentSnapshots will be returned. Values above 100 will be coerced to 100. + */ + pageSize?: number; + /** + * Optional. The standard list page token, received from a previous `ListSandboxEnvironmentSnapshots` call. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + */ + parent?: string; + } + + export class Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$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`. * @example * ```js * // Before running the sample: @@ -141727,26 +143868,17 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.reasoningEngines.sessions.get( - * { - * // Required. The resource name of the session. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` - * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session', - * }, - * ); + * const res = + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.operations.cancel( + * { + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironmentSnapshots/my-sandboxEnvironmentSnapshot/operations/my-operation', + * }, + * ); * console.log(res.data); * * // Example response - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "expireTime": "my_expireTime", - * // "labels": {}, - * // "name": "my_name", - * // "sessionState": {}, - * // "ttl": "my_ttl", - * // "updateTime": "my_updateTime", - * // "userId": "my_userId" - * // } + * // {} * } * * main().catch(e => { @@ -141761,58 +143893,54 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sessions$Get, + cancel( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get, + cancel( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get, + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel, + callback: BodyResponseCallback ): void; - get( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel; options = {}; } @@ -141825,8 +143953,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -141837,19 +143965,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Lists Sessions in a given reasoning engine. + * 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`. * @example * ```js * // Before running the sample: @@ -141879,26 +144005,16 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.reasoningEngines.sessions.list({ - * // Optional. The standard list filter. Supported fields: * `display_name` * `user_id` * `labels` Example: `display_name="abc"`, `user_id="123"`, `labels.key="value"`. - * filter: 'placeholder-value', - * // Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "desc" after a field name for descending. Supported fields: * `create_time` * `update_time` Example: `create_time desc`. - * orderBy: 'placeholder-value', - * // Optional. The maximum number of sessions to return. The service may return fewer than this value. If unspecified, at most 100 sessions will be returned. - * pageSize: 'placeholder-value', - * // Optional. The next_page_token value returned from a previous list SessionService.ListSessions call. - * pageToken: 'placeholder-value', - * // Required. The resource name of the location to list sessions from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - * parent: - * 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine', - * }); + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.operations.delete( + * { + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironmentSnapshots/my-sandboxEnvironmentSnapshot/operations/my-operation', + * }, + * ); * console.log(res.data); * * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "sessions": [] - * // } + * // {} * } * * main().catch(e => { @@ -141913,62 +144029,54 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sessions$List, + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$List, + delete( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sessions$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$List; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$List; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete; options = {}; } @@ -141981,34 +144089,29 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/sessions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates the specific Session. + * 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. * @example * ```js * // Before running the sample: @@ -142038,41 +144141,21 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.reasoningEngines.sessions.patch({ - * // Identifier. The resource name of the session. Format: 'projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}'. - * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session', - * // Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "expireTime": "my_expireTime", - * // "labels": {}, - * // "name": "my_name", - * // "sessionState": {}, - * // "ttl": "my_ttl", - * // "updateTime": "my_updateTime", - * // "userId": "my_userId" - * // } + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.operations.get( + * { + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironmentSnapshots/my-sandboxEnvironmentSnapshot/operations/my-operation', * }, - * }); + * ); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "expireTime": "my_expireTime", - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "sessionState": {}, - * // "ttl": "my_ttl", - * // "updateTime": "my_updateTime", - * // "userId": "my_userId" + * // "response": {} * // } * } * @@ -142088,58 +144171,58 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sessions$Patch, + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch, + get( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch, + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - patch( + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get; options = {}; } @@ -142153,7 +144236,7 @@ export namespace aiplatform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -142164,98 +144247,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent extends StandardParameters { - /** - * Required. The resource name of the session to append event to. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1SessionEvent; - } - export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create extends StandardParameters { - /** - * Required. The resource name of the location to create the session in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1Session; - } - export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete extends StandardParameters { - /** - * Required. The resource name of the session. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get extends StandardParameters { - /** - * Required. The resource name of the session. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$List extends StandardParameters { - /** - * Optional. The standard list filter. Supported fields: * `display_name` * `user_id` * `labels` Example: `display_name="abc"`, `user_id="123"`, `labels.key="value"`. - */ - filter?: string; - /** - * Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "desc" after a field name for descending. Supported fields: * `create_time` * `update_time` Example: `create_time desc`. - */ - orderBy?: string; - /** - * Optional. The maximum number of sessions to return. The service may return fewer than this value. If unspecified, at most 100 sessions will be returned. - */ - pageSize?: number; - /** - * Optional. The next_page_token value returned from a previous list SessionService.ListSessions call. - */ - pageToken?: string; - /** - * Required. The resource name of the location to list sessions from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch extends StandardParameters { - /** - * Identifier. The resource name of the session. Format: 'projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}'. - */ - name?: string; - /** - * Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1Session; - } - - export class Resource$Projects$Locations$Reasoningengines$Sessions$Events { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Lists Events in a given session. + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. * @example * ```js * // Before running the sample: @@ -142285,25 +144287,23 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.reasoningEngines.sessions.events.list({ - * // Optional. The standard list filter. Supported fields: * `timestamp` range (i.e. `timestamp\>="2025-01-31T11:30:00-04:00"` where the timestamp is in RFC 3339 format) More detail in [AIP-160](https://google.aip.dev/160). - * filter: 'placeholder-value', - * // Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "desc" after a field name for descending. Supported fields: * `timestamp` Example: `timestamp desc`. - * orderBy: 'placeholder-value', - * // Optional. The maximum number of events to return. The service may return fewer than this value. If unspecified, at most 100 events will be returned. These events are ordered by timestamp in ascending order. - * pageSize: 'placeholder-value', - * // Optional. The next_page_token value returned from a previous list SessionService.ListEvents call. - * pageToken: 'placeholder-value', - * // Required. The resource name of the session to list events from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` - * parent: - * 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session', - * }); + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentSnapshots.operations.wait( + * { + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironmentSnapshots/my-sandboxEnvironmentSnapshot/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "sessionEvents": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -142319,62 +144319,58 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sessions$Events$List, + wait( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List, + wait( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List, + ): Promise>; + wait( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List, + wait( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List, - callback: BodyResponseCallback + wait( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + wait( + callback: BodyResponseCallback ): void; - list( + wait( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait; options = {}; } @@ -142387,64 +144383,70 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/events').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel extends StandardParameters { /** - * Optional. The standard list filter. Supported fields: * `timestamp` range (i.e. `timestamp\>="2025-01-31T11:30:00-04:00"` where the timestamp is in RFC 3339 format) More detail in [AIP-160](https://google.aip.dev/160). + * The name of the operation resource to be cancelled. */ - filter?: string; + name?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete extends StandardParameters { /** - * Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "desc" after a field name for descending. Supported fields: * `timestamp` Example: `timestamp desc`. + * The name of the operation resource to be deleted. */ - orderBy?: string; + name?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get extends StandardParameters { /** - * Optional. The maximum number of events to return. The service may return fewer than this value. If unspecified, at most 100 events will be returned. These events are ordered by timestamp in ascending order. + * The name of the operation resource. */ - pageSize?: number; + name?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait extends StandardParameters { /** - * Optional. The next_page_token value returned from a previous list SessionService.ListEvents call. + * The name of the operation resource to wait on. */ - pageToken?: string; + name?: string; /** - * Required. The resource name of the session to list events from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. */ - parent?: string; + timeout?: string; } - export class Resource$Projects$Locations$Reasoningengines$Sessions$Operations { + export class Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates { context: APIRequestContext; + operations: Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations; constructor(context: APIRequestContext) { this.context = context; + this.operations = + new Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations( + this.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`. + * Creates a SandboxEnvironmentTemplate in a given reasoning engine. * @example * ```js * // Before running the sample: @@ -142474,16 +144476,38 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.reasoningEngines.sessions.operations.cancel( + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.create( * { - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * // Required. The resource name of the reasoning engine to create the SandboxEnvironmentTemplate in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}`. + * parent: + * 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customContainerEnvironment": {}, + * // "defaultContainerEnvironment": {}, + * // "displayName": "my_displayName", + * // "egressControlConfig": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, * }, * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -142498,54 +144522,58 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sessions$Operations$Cancel, + create( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Create, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel, + create( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Create, options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Create, + callback: BodyResponseCallback ): void; - cancel(callback: BodyResponseCallback): void; - cancel( + create( + callback: BodyResponseCallback + ): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Create; options = {}; } @@ -142558,29 +144586,31 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + url: ( + rootUrl + '/v1/{+parent}/sandboxEnvironmentTemplates' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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`. + * Deletes the specific SandboxEnvironmentTemplate. * @example * ```js * // Before running the sample: @@ -142610,16 +144640,22 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.reasoningEngines.sessions.operations.delete( + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.delete( * { - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * // Required. The resource name of the SandboxEnvironmentTemplate to delete. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentTemplates/{sandbox_environment_template\}` + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironmentTemplates/my-sandboxEnvironmentTemplate', * }, * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -142635,53 +144671,57 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete, + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete, + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Delete, options?: MethodOptions - ): Promise>; + ): Promise>; delete( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete, + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Delete, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Delete, + callback: BodyResponseCallback + ): void; + delete( + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Delete; options = {}; } @@ -142706,17 +144746,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Gets details of the specific SandboxEnvironmentTemplate. * @example * ```js * // Before running the sample: @@ -142746,21 +144786,24 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.reasoningEngines.sessions.operations.get( + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.get( * { - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * // Required. The resource name of the sandbox environment template. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentTemplates/{sandbox_environment_template\}` + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironmentTemplates/my-sandboxEnvironmentTemplate', * }, * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "createTime": "my_createTime", + * // "customContainerEnvironment": {}, + * // "defaultContainerEnvironment": {}, + * // "displayName": "my_displayName", + * // "egressControlConfig": {}, * // "name": "my_name", - * // "response": {} + * // "state": "my_state", + * // "updateTime": "my_updateTime" * // } * } * @@ -142777,57 +144820,61 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get, + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get, + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Get, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; get( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get, + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get, + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Get, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Get; options = {}; } @@ -142852,17 +144899,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + * Lists SandboxEnvironmentTemplates in a given reasoning engine. * @example * ```js * // Before running the sample: @@ -142892,18 +144941,17 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.reasoningEngines.sessions.operations.list( + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.list( * { - * // The standard list filter. + * // Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session', - * // The standard list page size. + * // Optional. The maximum number of SandboxEnvironmentTemplates to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentTemplates will be returned. * pageSize: 'placeholder-value', - * // The standard list page token. + * // Optional. The standard list page token, received from a previous `ListSandboxEnvironmentTemplates` call. Provide this to retrieve the subsequent page. * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', + * // Required. The resource name of the reasoning engine to list sandbox environment templates from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * parent: + * 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine', * }, * ); * console.log(res.data); @@ -142911,8 +144959,7 @@ export namespace aiplatform_v1 { * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "operations": [], - * // "unreachable": [] + * // "sandboxEnvironmentTemplates": [] * // } * } * @@ -142929,61 +144976,61 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List, + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List, + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List, + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List, + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$List; options = {}; } @@ -142996,34 +145043,82 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}/operations').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + '/v1/{+parent}/sandboxEnvironmentTemplates' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Create extends StandardParameters { /** - * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. + * Required. The resource name of the reasoning engine to create the SandboxEnvironmentTemplate in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplate; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Delete extends StandardParameters { + /** + * Required. The resource name of the SandboxEnvironmentTemplate to delete. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentTemplates/{sandbox_environment_template\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Get extends StandardParameters { + /** + * Required. The resource name of the sandbox environment template. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentTemplates/{sandbox_environment_template\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$List extends StandardParameters { + /** + * Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). + */ + filter?: string; + /** + * Optional. The maximum number of SandboxEnvironmentTemplates to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentTemplates will be returned. + */ + pageSize?: number; + /** + * Optional. The standard list page token, received from a previous `ListSandboxEnvironmentTemplates` call. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. The resource name of the reasoning engine to list sandbox environment templates from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + */ + parent?: string; + } + + export class Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$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`. * @example * ```js * // Before running the sample: @@ -143053,24 +145148,16 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.reasoningEngines.sessions.operations.wait( + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.operations.cancel( * { - * // The name of the operation resource to wait on. - * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironmentTemplates/my-sandboxEnvironmentTemplate/operations/my-operation', * }, * ); * console.log(res.data); * * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } + * // {} * } * * main().catch(e => { @@ -143085,58 +145172,54 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - wait( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait, + cancel( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel, options: StreamMethodOptions ): Promise>; - wait( - params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait, + cancel( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel, options?: MethodOptions - ): Promise>; - wait( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait, + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - wait( - params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - wait( - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel, + callback: BodyResponseCallback ): void; - wait( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel; options = {}; } @@ -143149,7 +145232,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, @@ -143161,79 +145244,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel extends StandardParameters { - /** - * The name of the operation resource to be cancelled. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete extends StandardParameters { - /** - * The name of the operation resource to be deleted. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get extends StandardParameters { - /** - * The name of the operation resource. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$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; - /** - * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait extends StandardParameters { - /** - * The name of the operation resource to wait on. - */ - name?: string; - /** - * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - */ - timeout?: string; - } - - export class Resource$Projects$Locations$Schedules { - context: APIRequestContext; - operations: Resource$Projects$Locations$Schedules$Operations; - constructor(context: APIRequestContext) { - this.context = context; - this.operations = new Resource$Projects$Locations$Schedules$Operations( - this.context - ); - } /** - * Creates a Schedule. + * 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`. * @example * ```js * // Before running the sample: @@ -143262,62 +145283,17 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.schedules.create({ - * // Required. The resource name of the Location to create the Schedule in. Format: `projects/{project\}/locations/{location\}` - * parent: 'projects/my-project/locations/my-location', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allowQueueing": false, - * // "catchUp": false, - * // "createNotebookExecutionJobRequest": {}, - * // "createPipelineJobRequest": {}, - * // "createTime": "my_createTime", - * // "cron": "my_cron", - * // "displayName": "my_displayName", - * // "endTime": "my_endTime", - * // "lastPauseTime": "my_lastPauseTime", - * // "lastResumeTime": "my_lastResumeTime", - * // "lastScheduledRunResponse": {}, - * // "maxConcurrentActiveRunCount": "my_maxConcurrentActiveRunCount", - * // "maxConcurrentRunCount": "my_maxConcurrentRunCount", - * // "maxRunCount": "my_maxRunCount", - * // "name": "my_name", - * // "nextRunTime": "my_nextRunTime", - * // "startTime": "my_startTime", - * // "startedRunCount": "my_startedRunCount", - * // "state": "my_state", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * const res = + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.operations.delete( + * { + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironmentTemplates/my-sandboxEnvironmentTemplate/operations/my-operation', + * }, + * ); * console.log(res.data); * * // Example response - * // { - * // "allowQueueing": false, - * // "catchUp": false, - * // "createNotebookExecutionJobRequest": {}, - * // "createPipelineJobRequest": {}, - * // "createTime": "my_createTime", - * // "cron": "my_cron", - * // "displayName": "my_displayName", - * // "endTime": "my_endTime", - * // "lastPauseTime": "my_lastPauseTime", - * // "lastResumeTime": "my_lastResumeTime", - * // "lastScheduledRunResponse": {}, - * // "maxConcurrentActiveRunCount": "my_maxConcurrentActiveRunCount", - * // "maxConcurrentRunCount": "my_maxConcurrentRunCount", - * // "maxRunCount": "my_maxRunCount", - * // "name": "my_name", - * // "nextRunTime": "my_nextRunTime", - * // "startTime": "my_startTime", - * // "startedRunCount": "my_startedRunCount", - * // "state": "my_state", - * // "updateTime": "my_updateTime" - * // } + * // {} * } * * main().catch(e => { @@ -143332,57 +145308,54 @@ export namespace aiplatform_v1 { * @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$Schedules$Create, + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Schedules$Create, + delete( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Schedules$Create, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Schedules$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Schedules$Create, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete, + callback: BodyResponseCallback ): void; - create( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Schedules$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Schedules$Create; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Schedules$Create; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete; options = {}; } @@ -143395,34 +145368,29 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/schedules').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Deletes a Schedule. + * 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. * @example * ```js * // Before running the sample: @@ -143451,10 +145419,13 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.schedules.delete({ - * // Required. The name of the Schedule resource to be deleted. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` - * name: 'projects/my-project/locations/my-location/schedules/my-schedule', - * }); + * const res = + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.operations.get( + * { + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironmentTemplates/my-sandboxEnvironmentTemplate/operations/my-operation', + * }, + * ); * console.log(res.data); * * // Example response @@ -143479,36 +145450,36 @@ export namespace aiplatform_v1 { * @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$Schedules$Delete, + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Schedules$Delete, + get( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Schedules$Delete, + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Schedules$Delete, + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Schedules$Delete, + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get, callback: BodyResponseCallback ): void; - delete( + get( callback: BodyResponseCallback ): void; - delete( + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Schedules$Delete + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -143524,12 +145495,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Schedules$Delete; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Schedules$Delete; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get; options = {}; } @@ -143543,7 +145515,7 @@ export namespace aiplatform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options @@ -143564,7 +145536,7 @@ export namespace aiplatform_v1 { } /** - * Gets a Schedule. + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. * @example * ```js * // Before running the sample: @@ -143593,34 +145565,24 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.schedules.get({ - * // Required. The name of the Schedule resource. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` - * name: 'projects/my-project/locations/my-location/schedules/my-schedule', - * }); + * const res = + * await aiplatform.projects.locations.reasoningEngines.sandboxEnvironmentTemplates.operations.wait( + * { + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sandboxEnvironmentTemplates/my-sandboxEnvironmentTemplate/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "allowQueueing": false, - * // "catchUp": false, - * // "createNotebookExecutionJobRequest": {}, - * // "createPipelineJobRequest": {}, - * // "createTime": "my_createTime", - * // "cron": "my_cron", - * // "displayName": "my_displayName", - * // "endTime": "my_endTime", - * // "lastPauseTime": "my_lastPauseTime", - * // "lastResumeTime": "my_lastResumeTime", - * // "lastScheduledRunResponse": {}, - * // "maxConcurrentActiveRunCount": "my_maxConcurrentActiveRunCount", - * // "maxConcurrentRunCount": "my_maxConcurrentRunCount", - * // "maxRunCount": "my_maxRunCount", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "nextRunTime": "my_nextRunTime", - * // "startTime": "my_startTime", - * // "startedRunCount": "my_startedRunCount", - * // "state": "my_state", - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -143636,57 +145598,58 @@ export namespace aiplatform_v1 { * @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$Schedules$Get, + wait( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Schedules$Get, + wait( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Schedules$Get, + ): Promise>; + wait( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Schedules$Get, + wait( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Schedules$Get, - callback: BodyResponseCallback + wait( + params: Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + wait( + callback: BodyResponseCallback ): void; - get( + wait( paramsOrCallback?: - | Params$Resource$Projects$Locations$Schedules$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Schedules$Get; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Schedules$Get; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait; options = {}; } @@ -143699,8 +145662,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -143711,19 +145674,63 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel extends StandardParameters { /** - * Lists Schedules in a Location. + * The name of the operation resource to be cancelled. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait extends StandardParameters { + /** + * The name of the operation resource to wait on. + */ + name?: string; + /** + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + */ + timeout?: string; + } + + export class Resource$Projects$Locations$Reasoningengines$Sessions { + context: APIRequestContext; + events: Resource$Projects$Locations$Reasoningengines$Sessions$Events; + operations: Resource$Projects$Locations$Reasoningengines$Sessions$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.events = + new Resource$Projects$Locations$Reasoningengines$Sessions$Events( + this.context + ); + this.operations = + new Resource$Projects$Locations$Reasoningengines$Sessions$Operations( + this.context + ); + } + + /** + * Appends an event to a given session. * @example * ```js * // Before running the sample: @@ -143752,25 +145759,32 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.schedules.list({ - * // Lists the Schedules that match the filter expression. The following fields are supported: * `display_name`: Supports `=`, `!=` comparisons, and `:` wildcard. * `state`: Supports `=` and `!=` comparisons. * `request`: Supports existence of the check. (e.g. `create_pipeline_job_request:*` --\> Schedule has create_pipeline_job_request). * `create_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, and `\>=` comparisons. Values must be in RFC 3339 format. * `start_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, and `\>=` comparisons. Values must be in RFC 3339 format. * `end_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, `\>=` comparisons and `:*` existence check. Values must be in RFC 3339 format. * `next_run_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, and `\>=` comparisons. Values must be in RFC 3339 format. Filter expressions can be combined together using logical operators (`NOT`, `AND` & `OR`). The syntax to define filter expression is based on https://google.aip.dev/160. Examples: * `state="ACTIVE" AND display_name:"my_schedule_*"` * `NOT display_name="my_schedule"` * `create_time\>"2021-05-18T00:00:00Z"` * `end_time\>"2021-05-18T00:00:00Z" OR NOT end_time:*` * `create_pipeline_job_request:*` - * filter: 'placeholder-value', - * // A comma-separated list of fields to order by. The default sort order is in ascending order. Use "desc" after a field name for descending. You can have multiple order_by fields provided. For example, using "create_time desc, end_time" will order results by create time in descending order, and if there are multiple schedules having the same create time, order them by the end time in ascending order. If order_by is not specified, it will order by default with create_time in descending order. Supported fields: * `create_time` * `start_time` * `end_time` * `next_run_time` - * orderBy: 'placeholder-value', - * // The standard list page size. Default to 100 if not specified. - * pageSize: 'placeholder-value', - * // The standard list page token. Typically obtained via ListSchedulesResponse.next_page_token of the previous ScheduleService.ListSchedules call. - * pageToken: 'placeholder-value', - * // Required. The resource name of the Location to list the Schedules from. Format: `projects/{project\}/locations/{location\}` - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = + * await aiplatform.projects.locations.reasoningEngines.sessions.appendEvent({ + * // Required. The resource name of the session to append event to. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "actions": {}, + * // "author": "my_author", + * // "content": {}, + * // "errorCode": "my_errorCode", + * // "errorMessage": "my_errorMessage", + * // "eventMetadata": {}, + * // "invocationId": "my_invocationId", + * // "name": "my_name", + * // "rawEvent": {}, + * // "timestamp": "my_timestamp" + * // } + * }, + * }); * console.log(res.data); * * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "schedules": [] - * // } + * // {} * } * * main().catch(e => { @@ -143785,61 +145799,62 @@ export namespace aiplatform_v1 { * @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$Schedules$List, + appendEvent( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Schedules$List, + appendEvent( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - list( - params: Params$Resource$Projects$Locations$Schedules$List, + appendEvent( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Schedules$List, + appendEvent( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Schedules$List, - callback: BodyResponseCallback + appendEvent( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + appendEvent( + callback: BodyResponseCallback ): void; - list( + appendEvent( paramsOrCallback?: - | Params$Resource$Projects$Locations$Schedules$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Schedules$List; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Schedules$List; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Appendevent; options = {}; } @@ -143852,34 +145867,34 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/schedules').replace( + url: (rootUrl + '/v1/{+name}:appendEvent').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Updates an active or paused Schedule. When the Schedule is updated, new runs will be scheduled starting from the updated next execution time after the update time based on the time_specification in the updated Schedule. All unstarted runs before the update time will be skipped while already created runs will NOT be paused or canceled. + * Creates a new Session. * @example * ```js * // Before running the sample: @@ -143908,63 +145923,39 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.schedules.patch({ - * // Immutable. The resource name of the Schedule. - * name: 'projects/my-project/locations/my-location/schedules/my-schedule', - * // Required. The update mask applies to the resource. See google.protobuf.FieldMask. - * updateMask: 'placeholder-value', + * const res = + * await aiplatform.projects.locations.reasoningEngines.sessions.create({ + * // Required. The resource name of the location to create the session in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * parent: + * 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine', + * // Optional. The user defined ID to use for session, which will become the final component of the session resource name. If not provided, Vertex AI will generate a value for this ID. This value may be up to 63 characters, and valid characters are `[a-z0-9-]`. The first and last characters must be a letter or number. + * sessionId: 'placeholder-value', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allowQueueing": false, - * // "catchUp": false, - * // "createNotebookExecutionJobRequest": {}, - * // "createPipelineJobRequest": {}, - * // "createTime": "my_createTime", - * // "cron": "my_cron", - * // "displayName": "my_displayName", - * // "endTime": "my_endTime", - * // "lastPauseTime": "my_lastPauseTime", - * // "lastResumeTime": "my_lastResumeTime", - * // "lastScheduledRunResponse": {}, - * // "maxConcurrentActiveRunCount": "my_maxConcurrentActiveRunCount", - * // "maxConcurrentRunCount": "my_maxConcurrentRunCount", - * // "maxRunCount": "my_maxRunCount", - * // "name": "my_name", - * // "nextRunTime": "my_nextRunTime", - * // "startTime": "my_startTime", - * // "startedRunCount": "my_startedRunCount", - * // "state": "my_state", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "expireTime": "my_expireTime", + * // "labels": {}, + * // "name": "my_name", + * // "sessionState": {}, + * // "ttl": "my_ttl", + * // "updateTime": "my_updateTime", + * // "userId": "my_userId" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "allowQueueing": false, - * // "catchUp": false, - * // "createNotebookExecutionJobRequest": {}, - * // "createPipelineJobRequest": {}, - * // "createTime": "my_createTime", - * // "cron": "my_cron", - * // "displayName": "my_displayName", - * // "endTime": "my_endTime", - * // "lastPauseTime": "my_lastPauseTime", - * // "lastResumeTime": "my_lastResumeTime", - * // "lastScheduledRunResponse": {}, - * // "maxConcurrentActiveRunCount": "my_maxConcurrentActiveRunCount", - * // "maxConcurrentRunCount": "my_maxConcurrentRunCount", - * // "maxRunCount": "my_maxRunCount", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "nextRunTime": "my_nextRunTime", - * // "startTime": "my_startTime", - * // "startedRunCount": "my_startedRunCount", - * // "state": "my_state", - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -143980,57 +145971,58 @@ export namespace aiplatform_v1 { * @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$Schedules$Patch, + create( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Schedules$Patch, + create( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Schedules$Patch, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Schedules$Patch, + create( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Schedules$Patch, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + create( + callback: BodyResponseCallback ): void; - patch( + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Schedules$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Schedules$Patch; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Schedules$Patch; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create; options = {}; } @@ -144043,31 +146035,32 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1/{+parent}/sessions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Pauses a Schedule. Will mark Schedule.state to 'PAUSED'. If the schedule is paused, no new runs will be created. Already created runs will NOT be paused or canceled. + * Deletes details of the specific Session. * @example * ```js * // Before running the sample: @@ -144096,20 +146089,21 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.schedules.pause({ - * // Required. The name of the Schedule resource to be paused. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` - * name: 'projects/my-project/locations/my-location/schedules/my-schedule', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, - * }); + * const res = + * await aiplatform.projects.locations.reasoningEngines.sessions.delete({ + * // Required. The resource name of the session. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session', + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -144124,53 +146118,58 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - pause( - params: Params$Resource$Projects$Locations$Schedules$Pause, + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete, options: StreamMethodOptions ): Promise>; - pause( - params?: Params$Resource$Projects$Locations$Schedules$Pause, + delete( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete, options?: MethodOptions - ): Promise>; - pause( - params: Params$Resource$Projects$Locations$Schedules$Pause, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - pause( - params: Params$Resource$Projects$Locations$Schedules$Pause, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - pause( - params: Params$Resource$Projects$Locations$Schedules$Pause, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete, + callback: BodyResponseCallback ): void; - pause(callback: BodyResponseCallback): void; - pause( + delete( + callback: BodyResponseCallback + ): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Schedules$Pause - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Schedules$Pause; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Schedules$Pause; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete; options = {}; } @@ -144183,8 +146182,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:pause').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options @@ -144195,17 +146194,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Resumes a paused Schedule to start scheduling new runs. Will mark Schedule.state to 'ACTIVE'. Only paused Schedule can be resumed. When the Schedule is resumed, new runs will be scheduled starting from the next execution time after the current time based on the time_specification in the Schedule. If Schedule.catch_up is set up true, all missed runs will be scheduled for backfill first. + * Gets details of the specific Session. * @example * ```js * // Before running the sample: @@ -144234,22 +146233,26 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.schedules.resume({ - * // Required. The name of the Schedule resource to be resumed. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` - * name: 'projects/my-project/locations/my-location/schedules/my-schedule', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "catchUp": false - * // } + * const res = await aiplatform.projects.locations.reasoningEngines.sessions.get( + * { + * // Required. The resource name of the session. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session', * }, - * }); + * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "expireTime": "my_expireTime", + * // "labels": {}, + * // "name": "my_name", + * // "sessionState": {}, + * // "ttl": "my_ttl", + * // "updateTime": "my_updateTime", + * // "userId": "my_userId" + * // } * } * * main().catch(e => { @@ -144264,53 +146267,58 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resume( - params: Params$Resource$Projects$Locations$Schedules$Resume, + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get, options: StreamMethodOptions ): Promise>; - resume( - params?: Params$Resource$Projects$Locations$Schedules$Resume, + get( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get, options?: MethodOptions - ): Promise>; - resume( - params: Params$Resource$Projects$Locations$Schedules$Resume, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resume( - params: Params$Resource$Projects$Locations$Schedules$Resume, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - resume( - params: Params$Resource$Projects$Locations$Schedules$Resume, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get, + callback: BodyResponseCallback ): void; - resume(callback: BodyResponseCallback): void; - resume( + get( + callback: BodyResponseCallback + ): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Schedules$Resume - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Schedules$Resume; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Schedules$Resume; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get; options = {}; } @@ -144323,8 +146331,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:resume').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options @@ -144335,107 +146343,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - - export interface Params$Resource$Projects$Locations$Schedules$Create extends StandardParameters { - /** - * Required. The resource name of the Location to create the Schedule in. Format: `projects/{project\}/locations/{location\}` - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1Schedule; - } - export interface Params$Resource$Projects$Locations$Schedules$Delete extends StandardParameters { - /** - * Required. The name of the Schedule resource to be deleted. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Schedules$Get extends StandardParameters { - /** - * Required. The name of the Schedule resource. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Schedules$List extends StandardParameters { - /** - * Lists the Schedules that match the filter expression. The following fields are supported: * `display_name`: Supports `=`, `!=` comparisons, and `:` wildcard. * `state`: Supports `=` and `!=` comparisons. * `request`: Supports existence of the check. (e.g. `create_pipeline_job_request:*` --\> Schedule has create_pipeline_job_request). * `create_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, and `\>=` comparisons. Values must be in RFC 3339 format. * `start_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, and `\>=` comparisons. Values must be in RFC 3339 format. * `end_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, `\>=` comparisons and `:*` existence check. Values must be in RFC 3339 format. * `next_run_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, and `\>=` comparisons. Values must be in RFC 3339 format. Filter expressions can be combined together using logical operators (`NOT`, `AND` & `OR`). The syntax to define filter expression is based on https://google.aip.dev/160. Examples: * `state="ACTIVE" AND display_name:"my_schedule_*"` * `NOT display_name="my_schedule"` * `create_time\>"2021-05-18T00:00:00Z"` * `end_time\>"2021-05-18T00:00:00Z" OR NOT end_time:*` * `create_pipeline_job_request:*` - */ - filter?: string; - /** - * A comma-separated list of fields to order by. The default sort order is in ascending order. Use "desc" after a field name for descending. You can have multiple order_by fields provided. For example, using "create_time desc, end_time" will order results by create time in descending order, and if there are multiple schedules having the same create time, order them by the end time in ascending order. If order_by is not specified, it will order by default with create_time in descending order. Supported fields: * `create_time` * `start_time` * `end_time` * `next_run_time` - */ - orderBy?: string; - /** - * The standard list page size. Default to 100 if not specified. - */ - pageSize?: number; - /** - * The standard list page token. Typically obtained via ListSchedulesResponse.next_page_token of the previous ScheduleService.ListSchedules call. - */ - pageToken?: string; - /** - * Required. The resource name of the Location to list the Schedules from. Format: `projects/{project\}/locations/{location\}` - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Schedules$Patch extends StandardParameters { - /** - * Immutable. The resource name of the Schedule. - */ - name?: string; - /** - * Required. The update mask applies to the resource. See google.protobuf.FieldMask. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1Schedule; - } - export interface Params$Resource$Projects$Locations$Schedules$Pause extends StandardParameters { - /** - * Required. The name of the Schedule resource to be paused. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1PauseScheduleRequest; - } - export interface Params$Resource$Projects$Locations$Schedules$Resume extends StandardParameters { - /** - * Required. The name of the Schedule resource to be resumed. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1ResumeScheduleRequest; - } - - export class Resource$Projects$Locations$Schedules$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`. + * Lists Sessions in a given reasoning engine. * @example * ```js * // Before running the sample: @@ -144464,14 +146384,27 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.schedules.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/schedules/my-schedule/operations/my-operation', - * }); + * const res = + * await aiplatform.projects.locations.reasoningEngines.sessions.list({ + * // Optional. The standard list filter. Supported fields: * `display_name` * `user_id` * `labels` Example: `display_name="abc"`, `user_id="123"`, `labels.key="value"`. + * filter: 'placeholder-value', + * // Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "desc" after a field name for descending. Supported fields: * `create_time` * `update_time` Example: `create_time desc`. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of sessions to return. The service may return fewer than this value. If unspecified, the default page size is 100. Values greater than 100 will be capped at 100. + * pageSize: 'placeholder-value', + * // Optional. The next_page_token value returned from a previous list SessionService.ListSessions call. + * pageToken: 'placeholder-value', + * // Required. The resource name of the location to list sessions from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * parent: + * 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine', + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "nextPageToken": "my_nextPageToken", + * // "sessions": [] + * // } * } * * main().catch(e => { @@ -144486,54 +146419,62 @@ export namespace aiplatform_v1 { * @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$Schedules$Operations$Cancel, + list( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$List, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Projects$Locations$Schedules$Operations$Cancel, + list( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$List, options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Projects$Locations$Schedules$Operations$Cancel, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Projects$Locations$Schedules$Operations$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Projects$Locations$Schedules$Operations$Cancel, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$List, + callback: BodyResponseCallback ): void; - cancel(callback: BodyResponseCallback): void; - cancel( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Schedules$Operations$Cancel - | BodyResponseCallback + | Params$Resource$Projects$Locations$Reasoningengines$Sessions$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Schedules$Operations$Cancel; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Schedules$Operations$Cancel; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$List; options = {}; } @@ -144546,29 +146487,34 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+parent}/sessions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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`. + * Updates the specific Session. * @example * ```js * // Before running the sample: @@ -144597,14 +146543,43 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.schedules.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/schedules/my-schedule/operations/my-operation', - * }); + * const res = + * await aiplatform.projects.locations.reasoningEngines.sessions.patch({ + * // Identifier. The resource name of the session. Format: 'projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}'. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session', + * // Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "expireTime": "my_expireTime", + * // "labels": {}, + * // "name": "my_name", + * // "sessionState": {}, + * // "ttl": "my_ttl", + * // "updateTime": "my_updateTime", + * // "userId": "my_userId" + * // } + * }, + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "expireTime": "my_expireTime", + * // "labels": {}, + * // "name": "my_name", + * // "sessionState": {}, + * // "ttl": "my_ttl", + * // "updateTime": "my_updateTime", + * // "userId": "my_userId" + * // } * } * * main().catch(e => { @@ -144619,32 +146594,582 @@ export namespace aiplatform_v1 { * @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$Schedules$Operations$Delete, + patch( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Schedules$Operations$Delete, + patch( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Schedules$Operations$Delete, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Schedules$Operations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Schedules$Operations$Delete, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch, + callback: BodyResponseCallback + ): void; + patch( + callback: BodyResponseCallback + ): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Reasoningengines$Sessions$Appendevent extends StandardParameters { + /** + * Required. The resource name of the session to append event to. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1SessionEvent; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Create extends StandardParameters { + /** + * Required. The resource name of the location to create the session in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + */ + parent?: string; + /** + * Optional. The user defined ID to use for session, which will become the final component of the session resource name. If not provided, Vertex AI will generate a value for this ID. This value may be up to 63 characters, and valid characters are `[a-z0-9-]`. The first and last characters must be a letter or number. + */ + sessionId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1Session; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Delete extends StandardParameters { + /** + * Required. The resource name of the session. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Get extends StandardParameters { + /** + * Required. The resource name of the session. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$List extends StandardParameters { + /** + * Optional. The standard list filter. Supported fields: * `display_name` * `user_id` * `labels` Example: `display_name="abc"`, `user_id="123"`, `labels.key="value"`. + */ + filter?: string; + /** + * Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "desc" after a field name for descending. Supported fields: * `create_time` * `update_time` Example: `create_time desc`. + */ + orderBy?: string; + /** + * Optional. The maximum number of sessions to return. The service may return fewer than this value. If unspecified, the default page size is 100. Values greater than 100 will be capped at 100. + */ + pageSize?: number; + /** + * Optional. The next_page_token value returned from a previous list SessionService.ListSessions call. + */ + pageToken?: string; + /** + * Required. The resource name of the location to list sessions from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Patch extends StandardParameters { + /** + * Identifier. The resource name of the session. Format: 'projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}'. + */ + name?: string; + /** + * Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1Session; + } + + export class Resource$Projects$Locations$Reasoningengines$Sessions$Events { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists Events in a given session. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.reasoningEngines.sessions.events.list({ + * // Optional. The standard list filter. Supported fields: * `timestamp` range (i.e. `timestamp\>="2025-01-31T11:30:00-04:00"` where the timestamp is in RFC 3339 format) More detail in [AIP-160](https://google.aip.dev/160). + * filter: 'placeholder-value', + * // Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "desc" after a field name for descending. Supported fields: * `timestamp` Example: `timestamp desc`. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of events to return. The service may return fewer than this value. If unspecified, at most 100 events will be returned. These events are ordered by timestamp in ascending order. + * pageSize: 'placeholder-value', + * // Optional. The next_page_token value returned from a previous list SessionService.ListEvents call. + * pageToken: 'placeholder-value', + * // Required. The resource name of the session to list events from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` + * parent: + * 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "sessionEvents": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Reasoningengines$Sessions$Events$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Events$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/events').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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$Reasoningengines$Sessions$Events$List extends StandardParameters { + /** + * Optional. The standard list filter. Supported fields: * `timestamp` range (i.e. `timestamp\>="2025-01-31T11:30:00-04:00"` where the timestamp is in RFC 3339 format) More detail in [AIP-160](https://google.aip.dev/160). + */ + filter?: string; + /** + * Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "desc" after a field name for descending. Supported fields: * `timestamp` Example: `timestamp desc`. + */ + orderBy?: string; + /** + * Optional. The maximum number of events to return. The service may return fewer than this value. If unspecified, at most 100 events will be returned. These events are ordered by timestamp in ascending order. + */ + pageSize?: number; + /** + * Optional. The next_page_token value returned from a previous list SessionService.ListEvents call. + */ + pageToken?: string; + /** + * Required. The resource name of the session to list events from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sessions/{session\}` + */ + parent?: string; + } + + export class Resource$Projects$Locations$Reasoningengines$Sessions$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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.reasoningEngines.sessions.operations.cancel( + * { + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Reasoningengines$Sessions$Operations$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel, + options?: MethodOptions + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.reasoningEngines.sessions.operations.delete( + * { + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Reasoningengines$Sessions$Operations$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete, + callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Schedules$Operations$Delete + | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -144660,13 +147185,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Schedules$Operations$Delete; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Schedules$Operations$Delete; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete; options = {}; } @@ -144730,10 +147255,13 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.schedules.operations.get({ - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/schedules/my-schedule/operations/my-operation', - * }); + * const res = + * await aiplatform.projects.locations.reasoningEngines.sessions.operations.get( + * { + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * }, + * ); * console.log(res.data); * * // Example response @@ -144759,27 +147287,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Schedules$Operations$Get, + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Schedules$Operations$Get, + params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Projects$Locations$Schedules$Operations$Get, + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Schedules$Operations$Get, + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Schedules$Operations$Get, + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -144787,7 +147315,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Schedules$Operations$Get + | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -144803,13 +147331,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Schedules$Operations$Get; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Schedules$Operations$Get; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get; options = {}; } @@ -144873,18 +147401,21 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.schedules.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location/schedules/my-schedule', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', - * }); + * const res = + * await aiplatform.projects.locations.reasoningEngines.sessions.operations.list( + * { + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }, + * ); * console.log(res.data); * * // Example response @@ -144908,29 +147439,29 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Schedules$Operations$List, + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Schedules$Operations$List, + params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Schedules$Operations$List, + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Schedules$Operations$List, + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Schedules$Operations$List, + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List, callback: BodyResponseCallback ): void; list( @@ -144938,7 +147469,7 @@ export namespace aiplatform_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Schedules$Operations$List + | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -144956,13 +147487,13 @@ export namespace aiplatform_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Schedules$Operations$List; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Schedules$Operations$List; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List; options = {}; } @@ -145031,12 +147562,15 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.schedules.operations.wait({ - * // The name of the operation resource to wait on. - * name: 'projects/my-project/locations/my-location/schedules/my-schedule/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', - * }); + * const res = + * await aiplatform.projects.locations.reasoningEngines.sessions.operations.wait( + * { + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }, + * ); * console.log(res.data); * * // Example response @@ -145062,27 +147596,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ wait( - params: Params$Resource$Projects$Locations$Schedules$Operations$Wait, + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait, options: StreamMethodOptions ): Promise>; wait( - params?: Params$Resource$Projects$Locations$Schedules$Operations$Wait, + params?: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait, options?: MethodOptions ): Promise>; wait( - params: Params$Resource$Projects$Locations$Schedules$Operations$Wait, + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Projects$Locations$Schedules$Operations$Wait, + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Projects$Locations$Schedules$Operations$Wait, + params: Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait, callback: BodyResponseCallback ): void; wait( @@ -145090,7 +147624,7 @@ export namespace aiplatform_v1 { ): void; wait( paramsOrCallback?: - | Params$Resource$Projects$Locations$Schedules$Operations$Wait + | Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -145106,13 +147640,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Schedules$Operations$Wait; + {}) as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Schedules$Operations$Wait; + {} as Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait; options = {}; } @@ -145147,25 +147681,25 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Projects$Locations$Schedules$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Projects$Locations$Schedules$Operations$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Projects$Locations$Schedules$Operations$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Projects$Locations$Schedules$Operations$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$List extends StandardParameters { /** * The standard list filter. */ @@ -145187,7 +147721,7 @@ export namespace aiplatform_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Projects$Locations$Schedules$Operations$Wait extends StandardParameters { + export interface Params$Resource$Projects$Locations$Reasoningengines$Sessions$Operations$Wait extends StandardParameters { /** * The name of the operation resource to wait on. */ @@ -145198,19 +147732,18 @@ export namespace aiplatform_v1 { timeout?: string; } - export class Resource$Projects$Locations$Specialistpools { + export class Resource$Projects$Locations$Schedules { context: APIRequestContext; - operations: Resource$Projects$Locations$Specialistpools$Operations; + operations: Resource$Projects$Locations$Schedules$Operations; constructor(context: APIRequestContext) { this.context = context; - this.operations = - new Resource$Projects$Locations$Specialistpools$Operations( - this.context - ); + this.operations = new Resource$Projects$Locations$Schedules$Operations( + this.context + ); } /** - * Creates a SpecialistPool. + * Creates a Schedule. * @example * ```js * // Before running the sample: @@ -145239,20 +147772,34 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.specialistPools.create({ - * // Required. The parent Project name for the new SpecialistPool. The form is `projects/{project\}/locations/{location\}`. + * const res = await aiplatform.projects.locations.schedules.create({ + * // Required. The resource name of the Location to create the Schedule in. Format: `projects/{project\}/locations/{location\}` * parent: 'projects/my-project/locations/my-location', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "allowQueueing": false, + * // "catchUp": false, + * // "createNotebookExecutionJobRequest": {}, + * // "createPipelineJobRequest": {}, + * // "createTime": "my_createTime", + * // "cron": "my_cron", * // "displayName": "my_displayName", + * // "endTime": "my_endTime", + * // "lastPauseTime": "my_lastPauseTime", + * // "lastResumeTime": "my_lastResumeTime", + * // "lastScheduledRunResponse": {}, + * // "maxConcurrentActiveRunCount": "my_maxConcurrentActiveRunCount", + * // "maxConcurrentRunCount": "my_maxConcurrentRunCount", + * // "maxRunCount": "my_maxRunCount", * // "name": "my_name", - * // "pendingDataLabelingJobs": [], - * // "specialistManagerEmails": [], - * // "specialistManagersCount": 0, - * // "specialistWorkerEmails": [] + * // "nextRunTime": "my_nextRunTime", + * // "startTime": "my_startTime", + * // "startedRunCount": "my_startedRunCount", + * // "state": "my_state", + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -145260,11 +147807,26 @@ export namespace aiplatform_v1 { * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "allowQueueing": false, + * // "catchUp": false, + * // "createNotebookExecutionJobRequest": {}, + * // "createPipelineJobRequest": {}, + * // "createTime": "my_createTime", + * // "cron": "my_cron", + * // "displayName": "my_displayName", + * // "endTime": "my_endTime", + * // "lastPauseTime": "my_lastPauseTime", + * // "lastResumeTime": "my_lastResumeTime", + * // "lastScheduledRunResponse": {}, + * // "maxConcurrentActiveRunCount": "my_maxConcurrentActiveRunCount", + * // "maxConcurrentRunCount": "my_maxConcurrentRunCount", + * // "maxRunCount": "my_maxRunCount", * // "name": "my_name", - * // "response": {} + * // "nextRunTime": "my_nextRunTime", + * // "startTime": "my_startTime", + * // "startedRunCount": "my_startedRunCount", + * // "state": "my_state", + * // "updateTime": "my_updateTime" * // } * } * @@ -145281,57 +147843,56 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Projects$Locations$Specialistpools$Create, + params: Params$Resource$Projects$Locations$Schedules$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Projects$Locations$Specialistpools$Create, + params?: Params$Resource$Projects$Locations$Schedules$Create, options?: MethodOptions - ): Promise>; + ): Promise>; create( - params: Params$Resource$Projects$Locations$Specialistpools$Create, + params: Params$Resource$Projects$Locations$Schedules$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Projects$Locations$Specialistpools$Create, + params: Params$Resource$Projects$Locations$Schedules$Create, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; create( - params: Params$Resource$Projects$Locations$Specialistpools$Create, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Schedules$Create, + callback: BodyResponseCallback ): void; create( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Specialistpools$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Schedules$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Specialistpools$Create; + {}) as Params$Resource$Projects$Locations$Schedules$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Specialistpools$Create; + params = {} as Params$Resource$Projects$Locations$Schedules$Create; options = {}; } @@ -145344,7 +147905,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/specialistPools').replace( + url: (rootUrl + '/v1/{+parent}/schedules').replace( /([^:]\/)\/+/g, '$1' ), @@ -145359,17 +147920,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes a SpecialistPool as well as all Specialists in the pool. + * Deletes a Schedule. * @example * ```js * // Before running the sample: @@ -145398,11 +147961,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.specialistPools.delete({ - * // If set to true, any specialist managers in this SpecialistPool will also be deleted. (Otherwise, the request will only work if the SpecialistPool has no specialist managers.) - * force: 'placeholder-value', - * // Required. The resource name of the SpecialistPool to delete. Format: `projects/{project\}/locations/{location\}/specialistPools/{specialist_pool\}` - * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool', + * const res = await aiplatform.projects.locations.schedules.delete({ + * // Required. The name of the Schedule resource to be deleted. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` + * name: 'projects/my-project/locations/my-location/schedules/my-schedule', * }); * console.log(res.data); * @@ -145429,27 +147990,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Specialistpools$Delete, + params: Params$Resource$Projects$Locations$Schedules$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Specialistpools$Delete, + params?: Params$Resource$Projects$Locations$Schedules$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Specialistpools$Delete, + params: Params$Resource$Projects$Locations$Schedules$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Specialistpools$Delete, + params: Params$Resource$Projects$Locations$Schedules$Delete, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Specialistpools$Delete, + params: Params$Resource$Projects$Locations$Schedules$Delete, callback: BodyResponseCallback ): void; delete( @@ -145457,7 +148018,7 @@ export namespace aiplatform_v1 { ): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Specialistpools$Delete + | Params$Resource$Projects$Locations$Schedules$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -145473,13 +148034,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Specialistpools$Delete; + {}) as Params$Resource$Projects$Locations$Schedules$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Specialistpools$Delete; + params = {} as Params$Resource$Projects$Locations$Schedules$Delete; options = {}; } @@ -145514,7 +148074,7 @@ export namespace aiplatform_v1 { } /** - * Gets a SpecialistPool. + * Gets a Schedule. * @example * ```js * // Before running the sample: @@ -145543,20 +148103,34 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.specialistPools.get({ - * // Required. The name of the SpecialistPool resource. The form is `projects/{project\}/locations/{location\}/specialistPools/{specialist_pool\}`. - * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool', + * const res = await aiplatform.projects.locations.schedules.get({ + * // Required. The name of the Schedule resource. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` + * name: 'projects/my-project/locations/my-location/schedules/my-schedule', * }); * console.log(res.data); * * // Example response * // { + * // "allowQueueing": false, + * // "catchUp": false, + * // "createNotebookExecutionJobRequest": {}, + * // "createPipelineJobRequest": {}, + * // "createTime": "my_createTime", + * // "cron": "my_cron", * // "displayName": "my_displayName", + * // "endTime": "my_endTime", + * // "lastPauseTime": "my_lastPauseTime", + * // "lastResumeTime": "my_lastResumeTime", + * // "lastScheduledRunResponse": {}, + * // "maxConcurrentActiveRunCount": "my_maxConcurrentActiveRunCount", + * // "maxConcurrentRunCount": "my_maxConcurrentRunCount", + * // "maxRunCount": "my_maxRunCount", * // "name": "my_name", - * // "pendingDataLabelingJobs": [], - * // "specialistManagerEmails": [], - * // "specialistManagersCount": 0, - * // "specialistWorkerEmails": [] + * // "nextRunTime": "my_nextRunTime", + * // "startTime": "my_startTime", + * // "startedRunCount": "my_startedRunCount", + * // "state": "my_state", + * // "updateTime": "my_updateTime" * // } * } * @@ -145573,60 +148147,56 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Specialistpools$Get, + params: Params$Resource$Projects$Locations$Schedules$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Specialistpools$Get, + params?: Params$Resource$Projects$Locations$Schedules$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; get( - params: Params$Resource$Projects$Locations$Specialistpools$Get, + params: Params$Resource$Projects$Locations$Schedules$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Specialistpools$Get, + params: Params$Resource$Projects$Locations$Schedules$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Specialistpools$Get, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Schedules$Get, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Specialistpools$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Schedules$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Specialistpools$Get; + {}) as Params$Resource$Projects$Locations$Schedules$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Specialistpools$Get; + params = {} as Params$Resource$Projects$Locations$Schedules$Get; options = {}; } @@ -145651,19 +148221,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Lists SpecialistPools in a Location. + * Lists Schedules in a Location. * @example * ```js * // Before running the sample: @@ -145692,22 +148262,24 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.specialistPools.list({ - * // The standard list page size. + * const res = await aiplatform.projects.locations.schedules.list({ + * // Lists the Schedules that match the filter expression. The following fields are supported: * `display_name`: Supports `=`, `!=` comparisons, and `:` wildcard. * `state`: Supports `=` and `!=` comparisons. * `request`: Supports existence of the check. (e.g. `create_pipeline_job_request:*` --\> Schedule has create_pipeline_job_request). * `create_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, and `\>=` comparisons. Values must be in RFC 3339 format. * `start_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, and `\>=` comparisons. Values must be in RFC 3339 format. * `end_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, `\>=` comparisons and `:*` existence check. Values must be in RFC 3339 format. * `next_run_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, and `\>=` comparisons. Values must be in RFC 3339 format. Filter expressions can be combined together using logical operators (`NOT`, `AND` & `OR`). The syntax to define filter expression is based on https://google.aip.dev/160. Examples: * `state="ACTIVE" AND display_name:"my_schedule_*"` * `NOT display_name="my_schedule"` * `create_time\>"2021-05-18T00:00:00Z"` * `end_time\>"2021-05-18T00:00:00Z" OR NOT end_time:*` * `create_pipeline_job_request:*` + * filter: 'placeholder-value', + * // A comma-separated list of fields to order by. The default sort order is in ascending order. Use "desc" after a field name for descending. You can have multiple order_by fields provided. For example, using "create_time desc, end_time" will order results by create time in descending order, and if there are multiple schedules having the same create time, order them by the end time in ascending order. If order_by is not specified, it will order by default with create_time in descending order. Supported fields: * `create_time` * `start_time` * `end_time` * `next_run_time` + * orderBy: 'placeholder-value', + * // The standard list page size. Default to 100 if not specified. * pageSize: 'placeholder-value', - * // The standard list page token. Typically obtained by ListSpecialistPoolsResponse.next_page_token of the previous SpecialistPoolService.ListSpecialistPools call. Return first page if empty. + * // The standard list page token. Typically obtained via ListSchedulesResponse.next_page_token of the previous ScheduleService.ListSchedules call. * pageToken: 'placeholder-value', - * // Required. The name of the SpecialistPool's parent resource. Format: `projects/{project\}/locations/{location\}` + * // Required. The resource name of the Location to list the Schedules from. Format: `projects/{project\}/locations/{location\}` * parent: 'projects/my-project/locations/my-location', - * // Mask specifying which fields to read. FieldMask represents a set of - * readMask: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "specialistPools": [] + * // "schedules": [] * // } * } * @@ -145724,60 +148296,60 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Specialistpools$List, + params: Params$Resource$Projects$Locations$Schedules$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Specialistpools$List, + params?: Params$Resource$Projects$Locations$Schedules$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Specialistpools$List, + params: Params$Resource$Projects$Locations$Schedules$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Specialistpools$List, + params: Params$Resource$Projects$Locations$Schedules$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Specialistpools$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Schedules$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Specialistpools$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Schedules$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Specialistpools$List; + {}) as Params$Resource$Projects$Locations$Schedules$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Specialistpools$List; + params = {} as Params$Resource$Projects$Locations$Schedules$List; options = {}; } @@ -145790,7 +148362,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/specialistPools').replace( + url: (rootUrl + '/v1/{+parent}/schedules').replace( /([^:]\/)\/+/g, '$1' ), @@ -145805,19 +148377,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Updates a SpecialistPool. + * Updates an active or paused Schedule. When the Schedule is updated, new runs will be scheduled starting from the updated next execution time after the update time based on the time_specification in the updated Schedule. All unstarted runs before the update time will be skipped while already created runs will NOT be paused or canceled. * @example * ```js * // Before running the sample: @@ -145846,22 +148418,36 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.specialistPools.patch({ - * // Required. The resource name of the SpecialistPool. - * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool', - * // Required. The update mask applies to the resource. + * const res = await aiplatform.projects.locations.schedules.patch({ + * // Immutable. The resource name of the Schedule. + * name: 'projects/my-project/locations/my-location/schedules/my-schedule', + * // Required. The update mask applies to the resource. See google.protobuf.FieldMask. * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "allowQueueing": false, + * // "catchUp": false, + * // "createNotebookExecutionJobRequest": {}, + * // "createPipelineJobRequest": {}, + * // "createTime": "my_createTime", + * // "cron": "my_cron", * // "displayName": "my_displayName", + * // "endTime": "my_endTime", + * // "lastPauseTime": "my_lastPauseTime", + * // "lastResumeTime": "my_lastResumeTime", + * // "lastScheduledRunResponse": {}, + * // "maxConcurrentActiveRunCount": "my_maxConcurrentActiveRunCount", + * // "maxConcurrentRunCount": "my_maxConcurrentRunCount", + * // "maxRunCount": "my_maxRunCount", * // "name": "my_name", - * // "pendingDataLabelingJobs": [], - * // "specialistManagerEmails": [], - * // "specialistManagersCount": 0, - * // "specialistWorkerEmails": [] + * // "nextRunTime": "my_nextRunTime", + * // "startTime": "my_startTime", + * // "startedRunCount": "my_startedRunCount", + * // "state": "my_state", + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -145869,11 +148455,26 @@ export namespace aiplatform_v1 { * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "allowQueueing": false, + * // "catchUp": false, + * // "createNotebookExecutionJobRequest": {}, + * // "createPipelineJobRequest": {}, + * // "createTime": "my_createTime", + * // "cron": "my_cron", + * // "displayName": "my_displayName", + * // "endTime": "my_endTime", + * // "lastPauseTime": "my_lastPauseTime", + * // "lastResumeTime": "my_lastResumeTime", + * // "lastScheduledRunResponse": {}, + * // "maxConcurrentActiveRunCount": "my_maxConcurrentActiveRunCount", + * // "maxConcurrentRunCount": "my_maxConcurrentRunCount", + * // "maxRunCount": "my_maxRunCount", * // "name": "my_name", - * // "response": {} + * // "nextRunTime": "my_nextRunTime", + * // "startTime": "my_startTime", + * // "startedRunCount": "my_startedRunCount", + * // "state": "my_state", + * // "updateTime": "my_updateTime" * // } * } * @@ -145890,56 +148491,56 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Projects$Locations$Specialistpools$Patch, + params: Params$Resource$Projects$Locations$Schedules$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Projects$Locations$Specialistpools$Patch, + params?: Params$Resource$Projects$Locations$Schedules$Patch, options?: MethodOptions - ): Promise>; + ): Promise>; patch( - params: Params$Resource$Projects$Locations$Specialistpools$Patch, + params: Params$Resource$Projects$Locations$Schedules$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Projects$Locations$Specialistpools$Patch, + params: Params$Resource$Projects$Locations$Schedules$Patch, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Projects$Locations$Specialistpools$Patch, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Schedules$Patch, + callback: BodyResponseCallback ): void; patch( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Specialistpools$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Schedules$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Specialistpools$Patch; + {}) as Params$Resource$Projects$Locations$Schedules$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Specialistpools$Patch; + params = {} as Params$Resource$Projects$Locations$Schedules$Patch; options = {}; } @@ -145964,78 +148565,380 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - export interface Params$Resource$Projects$Locations$Specialistpools$Create extends StandardParameters { /** - * Required. The parent Project name for the new SpecialistPool. The form is `projects/{project\}/locations/{location\}`. + * Pauses a Schedule. Will mark Schedule.state to 'PAUSED'. If the schedule is paused, no new runs will be created. Already created runs will NOT be paused or canceled. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.schedules.pause({ + * // Required. The name of the Schedule resource to be paused. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` + * name: 'projects/my-project/locations/my-location/schedules/my-schedule', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - parent?: string; + pause( + params: Params$Resource$Projects$Locations$Schedules$Pause, + options: StreamMethodOptions + ): Promise>; + pause( + params?: Params$Resource$Projects$Locations$Schedules$Pause, + options?: MethodOptions + ): Promise>; + pause( + params: Params$Resource$Projects$Locations$Schedules$Pause, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + pause( + params: Params$Resource$Projects$Locations$Schedules$Pause, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + pause( + params: Params$Resource$Projects$Locations$Schedules$Pause, + callback: BodyResponseCallback + ): void; + pause(callback: BodyResponseCallback): void; + pause( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Schedules$Pause + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Schedules$Pause; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Schedules$Pause; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:pause').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata + * Resumes a paused Schedule to start scheduling new runs. Will mark Schedule.state to 'ACTIVE'. Only paused Schedule can be resumed. When the Schedule is resumed, new runs will be scheduled starting from the next execution time after the current time based on the time_specification in the Schedule. If Schedule.catch_up is set up true, all missed runs will be scheduled for backfill first. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.schedules.resume({ + * // Required. The name of the Schedule resource to be resumed. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` + * name: 'projects/my-project/locations/my-location/schedules/my-schedule', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "catchUp": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - requestBody?: Schema$GoogleCloudAiplatformV1SpecialistPool; + resume( + params: Params$Resource$Projects$Locations$Schedules$Resume, + options: StreamMethodOptions + ): Promise>; + resume( + params?: Params$Resource$Projects$Locations$Schedules$Resume, + options?: MethodOptions + ): Promise>; + resume( + params: Params$Resource$Projects$Locations$Schedules$Resume, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resume( + params: Params$Resource$Projects$Locations$Schedules$Resume, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resume( + params: Params$Resource$Projects$Locations$Schedules$Resume, + callback: BodyResponseCallback + ): void; + resume(callback: BodyResponseCallback): void; + resume( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Schedules$Resume + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Schedules$Resume; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Schedules$Resume; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:resume').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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$Specialistpools$Delete extends StandardParameters { + + export interface Params$Resource$Projects$Locations$Schedules$Create extends StandardParameters { /** - * If set to true, any specialist managers in this SpecialistPool will also be deleted. (Otherwise, the request will only work if the SpecialistPool has no specialist managers.) + * Required. The resource name of the Location to create the Schedule in. Format: `projects/{project\}/locations/{location\}` */ - force?: boolean; + parent?: string; + /** - * Required. The resource name of the SpecialistPool to delete. Format: `projects/{project\}/locations/{location\}/specialistPools/{specialist_pool\}` + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1Schedule; + } + export interface Params$Resource$Projects$Locations$Schedules$Delete extends StandardParameters { + /** + * Required. The name of the Schedule resource to be deleted. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` */ name?: string; } - export interface Params$Resource$Projects$Locations$Specialistpools$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Schedules$Get extends StandardParameters { /** - * Required. The name of the SpecialistPool resource. The form is `projects/{project\}/locations/{location\}/specialistPools/{specialist_pool\}`. + * Required. The name of the Schedule resource. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` */ name?: string; } - export interface Params$Resource$Projects$Locations$Specialistpools$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Schedules$List extends StandardParameters { /** - * The standard list page size. + * Lists the Schedules that match the filter expression. The following fields are supported: * `display_name`: Supports `=`, `!=` comparisons, and `:` wildcard. * `state`: Supports `=` and `!=` comparisons. * `request`: Supports existence of the check. (e.g. `create_pipeline_job_request:*` --\> Schedule has create_pipeline_job_request). * `create_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, and `\>=` comparisons. Values must be in RFC 3339 format. * `start_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, and `\>=` comparisons. Values must be in RFC 3339 format. * `end_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, `\>=` comparisons and `:*` existence check. Values must be in RFC 3339 format. * `next_run_time`: Supports `=`, `!=`, `<`, `\>`, `<=`, and `\>=` comparisons. Values must be in RFC 3339 format. Filter expressions can be combined together using logical operators (`NOT`, `AND` & `OR`). The syntax to define filter expression is based on https://google.aip.dev/160. Examples: * `state="ACTIVE" AND display_name:"my_schedule_*"` * `NOT display_name="my_schedule"` * `create_time\>"2021-05-18T00:00:00Z"` * `end_time\>"2021-05-18T00:00:00Z" OR NOT end_time:*` * `create_pipeline_job_request:*` + */ + filter?: string; + /** + * A comma-separated list of fields to order by. The default sort order is in ascending order. Use "desc" after a field name for descending. You can have multiple order_by fields provided. For example, using "create_time desc, end_time" will order results by create time in descending order, and if there are multiple schedules having the same create time, order them by the end time in ascending order. If order_by is not specified, it will order by default with create_time in descending order. Supported fields: * `create_time` * `start_time` * `end_time` * `next_run_time` + */ + orderBy?: string; + /** + * The standard list page size. Default to 100 if not specified. */ pageSize?: number; /** - * The standard list page token. Typically obtained by ListSpecialistPoolsResponse.next_page_token of the previous SpecialistPoolService.ListSpecialistPools call. Return first page if empty. + * The standard list page token. Typically obtained via ListSchedulesResponse.next_page_token of the previous ScheduleService.ListSchedules call. */ pageToken?: string; /** - * Required. The name of the SpecialistPool's parent resource. Format: `projects/{project\}/locations/{location\}` + * Required. The resource name of the Location to list the Schedules from. Format: `projects/{project\}/locations/{location\}` */ parent?: string; + } + export interface Params$Resource$Projects$Locations$Schedules$Patch extends StandardParameters { /** - * Mask specifying which fields to read. FieldMask represents a set of + * Immutable. The resource name of the Schedule. */ - readMask?: string; + name?: string; + /** + * Required. The update mask applies to the resource. See google.protobuf.FieldMask. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1Schedule; } - export interface Params$Resource$Projects$Locations$Specialistpools$Patch extends StandardParameters { + export interface Params$Resource$Projects$Locations$Schedules$Pause extends StandardParameters { /** - * Required. The resource name of the SpecialistPool. + * Required. The name of the Schedule resource to be paused. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` */ name?: string; + /** - * Required. The update mask applies to the resource. + * Request body metadata */ - updateMask?: string; + requestBody?: Schema$GoogleCloudAiplatformV1PauseScheduleRequest; + } + export interface Params$Resource$Projects$Locations$Schedules$Resume extends StandardParameters { + /** + * Required. The name of the Schedule resource to be resumed. Format: `projects/{project\}/locations/{location\}/schedules/{schedule\}` + */ + name?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1SpecialistPool; + requestBody?: Schema$GoogleCloudAiplatformV1ResumeScheduleRequest; } - export class Resource$Projects$Locations$Specialistpools$Operations { + export class Resource$Projects$Locations$Schedules$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -146071,11 +148974,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.specialistPools.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool/operations/my-operation', - * }); + * const res = await aiplatform.projects.locations.schedules.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/schedules/my-schedule/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -146095,31 +148997,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel, + params: Params$Resource$Projects$Locations$Schedules$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel, + params?: Params$Resource$Projects$Locations$Schedules$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel, + params: Params$Resource$Projects$Locations$Schedules$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel, + params: Params$Resource$Projects$Locations$Schedules$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel, + params: Params$Resource$Projects$Locations$Schedules$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel + | Params$Resource$Projects$Locations$Schedules$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -146135,13 +149037,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel; + {}) as Params$Resource$Projects$Locations$Schedules$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel; + {} as Params$Resource$Projects$Locations$Schedules$Operations$Cancel; options = {}; } @@ -146205,11 +149107,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.specialistPools.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool/operations/my-operation', - * }); + * const res = await aiplatform.projects.locations.schedules.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/schedules/my-schedule/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -146229,31 +149130,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Delete, + params: Params$Resource$Projects$Locations$Schedules$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Specialistpools$Operations$Delete, + params?: Params$Resource$Projects$Locations$Schedules$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Delete, + params: Params$Resource$Projects$Locations$Schedules$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Delete, + params: Params$Resource$Projects$Locations$Schedules$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Delete, + params: Params$Resource$Projects$Locations$Schedules$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Specialistpools$Operations$Delete + | Params$Resource$Projects$Locations$Schedules$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -146269,13 +149170,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Specialistpools$Operations$Delete; + {}) as Params$Resource$Projects$Locations$Schedules$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Specialistpools$Operations$Delete; + {} as Params$Resource$Projects$Locations$Schedules$Operations$Delete; options = {}; } @@ -146339,11 +149240,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.specialistPools.operations.get({ - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool/operations/my-operation', - * }); + * const res = await aiplatform.projects.locations.schedules.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/schedules/my-schedule/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -146369,27 +149269,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Get, + params: Params$Resource$Projects$Locations$Schedules$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Specialistpools$Operations$Get, + params?: Params$Resource$Projects$Locations$Schedules$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Get, + params: Params$Resource$Projects$Locations$Schedules$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Get, + params: Params$Resource$Projects$Locations$Schedules$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Get, + params: Params$Resource$Projects$Locations$Schedules$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -146397,7 +149297,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Specialistpools$Operations$Get + | Params$Resource$Projects$Locations$Schedules$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -146413,13 +149313,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Specialistpools$Operations$Get; + {}) as Params$Resource$Projects$Locations$Schedules$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Specialistpools$Operations$Get; + {} as Params$Resource$Projects$Locations$Schedules$Operations$Get; options = {}; } @@ -146483,19 +149383,18 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.specialistPools.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', - * }); + * const res = await aiplatform.projects.locations.schedules.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location/schedules/my-schedule', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -146519,29 +149418,29 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$List, + params: Params$Resource$Projects$Locations$Schedules$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Specialistpools$Operations$List, + params?: Params$Resource$Projects$Locations$Schedules$Operations$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$List, + params: Params$Resource$Projects$Locations$Schedules$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$List, + params: Params$Resource$Projects$Locations$Schedules$Operations$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$List, + params: Params$Resource$Projects$Locations$Schedules$Operations$List, callback: BodyResponseCallback ): void; list( @@ -146549,7 +149448,7 @@ export namespace aiplatform_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Specialistpools$Operations$List + | Params$Resource$Projects$Locations$Schedules$Operations$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -146567,13 +149466,13 @@ export namespace aiplatform_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Specialistpools$Operations$List; + {}) as Params$Resource$Projects$Locations$Schedules$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Specialistpools$Operations$List; + {} as Params$Resource$Projects$Locations$Schedules$Operations$List; options = {}; } @@ -146642,13 +149541,12 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.specialistPools.operations.wait({ - * // The name of the operation resource to wait on. - * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', - * }); + * const res = await aiplatform.projects.locations.schedules.operations.wait({ + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/schedules/my-schedule/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -146674,27 +149572,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ wait( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Wait, + params: Params$Resource$Projects$Locations$Schedules$Operations$Wait, options: StreamMethodOptions ): Promise>; wait( - params?: Params$Resource$Projects$Locations$Specialistpools$Operations$Wait, + params?: Params$Resource$Projects$Locations$Schedules$Operations$Wait, options?: MethodOptions ): Promise>; wait( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Wait, + params: Params$Resource$Projects$Locations$Schedules$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Wait, + params: Params$Resource$Projects$Locations$Schedules$Operations$Wait, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Projects$Locations$Specialistpools$Operations$Wait, + params: Params$Resource$Projects$Locations$Schedules$Operations$Wait, callback: BodyResponseCallback ): void; wait( @@ -146702,7 +149600,7 @@ export namespace aiplatform_v1 { ): void; wait( paramsOrCallback?: - | Params$Resource$Projects$Locations$Specialistpools$Operations$Wait + | Params$Resource$Projects$Locations$Schedules$Operations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -146718,13 +149616,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Specialistpools$Operations$Wait; + {}) as Params$Resource$Projects$Locations$Schedules$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Specialistpools$Operations$Wait; + {} as Params$Resource$Projects$Locations$Schedules$Operations$Wait; options = {}; } @@ -146759,25 +149657,25 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Projects$Locations$Schedules$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Projects$Locations$Specialistpools$Operations$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Schedules$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Projects$Locations$Specialistpools$Operations$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Schedules$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Projects$Locations$Specialistpools$Operations$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Schedules$Operations$List extends StandardParameters { /** * The standard list filter. */ @@ -146799,7 +149697,7 @@ export namespace aiplatform_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Projects$Locations$Specialistpools$Operations$Wait extends StandardParameters { + export interface Params$Resource$Projects$Locations$Schedules$Operations$Wait extends StandardParameters { /** * The name of the operation resource to wait on. */ @@ -146810,22 +149708,25 @@ export namespace aiplatform_v1 { timeout?: string; } - export class Resource$Projects$Locations$Studies { + export class Resource$Projects$Locations$Skills { context: APIRequestContext; - operations: Resource$Projects$Locations$Studies$Operations; - trials: Resource$Projects$Locations$Studies$Trials; + operations: Resource$Projects$Locations$Skills$Operations; constructor(context: APIRequestContext) { this.context = context; - this.operations = new Resource$Projects$Locations$Studies$Operations( - this.context - ); - this.trials = new Resource$Projects$Locations$Studies$Trials( + this.operations = new Resource$Projects$Locations$Skills$Operations( this.context ); } + } + + export class Resource$Projects$Locations$Skills$Operations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Creates a Study. A resource name will be generated after creation of the Study. + * 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`. * @example * ```js * // Before running the sample: @@ -146854,34 +149755,14 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.create({ - * // Required. The resource name of the Location to create the CustomJob in. Format: `projects/{project\}/locations/{location\}` - * parent: 'projects/my-project/locations/my-location', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "inactiveReason": "my_inactiveReason", - * // "name": "my_name", - * // "state": "my_state", - * // "studySpec": {} - * // } - * }, + * const res = await aiplatform.projects.locations.skills.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/skills/my-skill/operations/my-operation', * }); * console.log(res.data); * * // Example response - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "inactiveReason": "my_inactiveReason", - * // "name": "my_name", - * // "state": "my_state", - * // "studySpec": {} - * // } + * // {} * } * * main().catch(e => { @@ -146896,57 +149777,54 @@ export namespace aiplatform_v1 { * @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$Studies$Create, + cancel( + params: Params$Resource$Projects$Locations$Skills$Operations$Cancel, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Studies$Create, + cancel( + params?: Params$Resource$Projects$Locations$Skills$Operations$Cancel, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Studies$Create, + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Skills$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Studies$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Studies$Create, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Skills$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Skills$Operations$Cancel, + callback: BodyResponseCallback ): void; - create( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Skills$Operations$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Create; + {}) as Params$Resource$Projects$Locations$Skills$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Studies$Create; + params = + {} as Params$Resource$Projects$Locations$Skills$Operations$Cancel; options = {}; } @@ -146959,34 +149837,29 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/studies').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Deletes a Study. + * 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`. * @example * ```js * // Before running the sample: @@ -147015,9 +149888,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.delete({ - * // Required. The name of the Study resource to be deleted. Format: `projects/{project\}/locations/{location\}/studies/{study\}` - * name: 'projects/my-project/locations/my-location/studies/my-studie', + * const res = await aiplatform.projects.locations.skills.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/skills/my-skill/operations/my-operation', * }); * console.log(res.data); * @@ -147038,31 +149911,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Studies$Delete, + params: Params$Resource$Projects$Locations$Skills$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Studies$Delete, + params?: Params$Resource$Projects$Locations$Skills$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Studies$Delete, + params: Params$Resource$Projects$Locations$Skills$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Studies$Delete, + params: Params$Resource$Projects$Locations$Skills$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Studies$Delete, + params: Params$Resource$Projects$Locations$Skills$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Delete + | Params$Resource$Projects$Locations$Skills$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -147078,12 +149951,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Delete; + {}) as Params$Resource$Projects$Locations$Skills$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Studies$Delete; + params = + {} as Params$Resource$Projects$Locations$Skills$Operations$Delete; options = {}; } @@ -147118,7 +149992,7 @@ export namespace aiplatform_v1 { } /** - * Gets a Study by name. + * 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. * @example * ```js * // Before running the sample: @@ -147147,20 +150021,19 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.get({ - * // Required. The name of the Study resource. Format: `projects/{project\}/locations/{location\}/studies/{study\}` - * name: 'projects/my-project/locations/my-location/studies/my-studie', + * const res = await aiplatform.projects.locations.skills.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/skills/my-skill/operations/my-operation', * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "inactiveReason": "my_inactiveReason", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "state": "my_state", - * // "studySpec": {} + * // "response": {} * // } * } * @@ -147177,56 +150050,56 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Studies$Get, + params: Params$Resource$Projects$Locations$Skills$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Studies$Get, + params?: Params$Resource$Projects$Locations$Skills$Operations$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Projects$Locations$Studies$Get, + params: Params$Resource$Projects$Locations$Skills$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Studies$Get, + params: Params$Resource$Projects$Locations$Skills$Operations$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Studies$Get, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Skills$Operations$Get, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Skills$Operations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Get; + {}) as Params$Resource$Projects$Locations$Skills$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Studies$Get; + params = {} as Params$Resource$Projects$Locations$Skills$Operations$Get; options = {}; } @@ -147251,19 +150124,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Lists all the studies in a region for an associated project. + * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. * @example * ```js * // Before running the sample: @@ -147292,20 +150163,25 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.list({ - * // Optional. The maximum number of studies to return per "page" of results. If unspecified, service will pick an appropriate default. + * const res = await aiplatform.projects.locations.skills.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location/skills/my-skill', + * // The standard list page size. * pageSize: 'placeholder-value', - * // Optional. A page token to request the next page of results. If unspecified, there are no subsequent pages. + * // The standard list page token. * pageToken: 'placeholder-value', - * // Required. The resource name of the Location to list the Study from. Format: `projects/{project\}/locations/{location\}` - * parent: 'projects/my-project/locations/my-location', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "studies": [] + * // "operations": [], + * // "unreachable": [] * // } * } * @@ -147322,60 +150198,61 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Studies$List, + params: Params$Resource$Projects$Locations$Skills$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Studies$List, + params?: Params$Resource$Projects$Locations$Skills$Operations$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Studies$List, + params: Params$Resource$Projects$Locations$Skills$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Studies$List, + params: Params$Resource$Projects$Locations$Skills$Operations$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Studies$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Skills$Operations$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Skills$Operations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$List; + {}) as Params$Resource$Projects$Locations$Skills$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Studies$List; + params = + {} as Params$Resource$Projects$Locations$Skills$Operations$List; options = {}; } @@ -147388,7 +150265,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/studies').replace( + url: (rootUrl + '/v1/{+name}/operations').replace( /([^:]\/)\/+/g, '$1' ), @@ -147398,24 +150275,24 @@ export namespace aiplatform_v1 { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Looks a study up using the user-defined display_name field instead of the fully qualified resource name. + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. * @example * ```js * // Before running the sample: @@ -147444,28 +150321,21 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.lookup({ - * // Required. The resource name of the Location to get the Study from. Format: `projects/{project\}/locations/{location\}` - * parent: 'projects/my-project/locations/my-location', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "displayName": "my_displayName" - * // } - * }, + * const res = await aiplatform.projects.locations.skills.operations.wait({ + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/skills/my-skill/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "inactiveReason": "my_inactiveReason", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "state": "my_state", - * // "studySpec": {} + * // "response": {} * // } * } * @@ -147481,57 +150351,58 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - lookup( - params: Params$Resource$Projects$Locations$Studies$Lookup, + wait( + params: Params$Resource$Projects$Locations$Skills$Operations$Wait, options: StreamMethodOptions ): Promise>; - lookup( - params?: Params$Resource$Projects$Locations$Studies$Lookup, + wait( + params?: Params$Resource$Projects$Locations$Skills$Operations$Wait, options?: MethodOptions - ): Promise>; - lookup( - params: Params$Resource$Projects$Locations$Studies$Lookup, + ): Promise>; + wait( + params: Params$Resource$Projects$Locations$Skills$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - lookup( - params: Params$Resource$Projects$Locations$Studies$Lookup, + wait( + params: Params$Resource$Projects$Locations$Skills$Operations$Wait, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - lookup( - params: Params$Resource$Projects$Locations$Studies$Lookup, - callback: BodyResponseCallback + wait( + params: Params$Resource$Projects$Locations$Skills$Operations$Wait, + callback: BodyResponseCallback ): void; - lookup( - callback: BodyResponseCallback + wait( + callback: BodyResponseCallback ): void; - lookup( + wait( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Lookup - | BodyResponseCallback + | Params$Resource$Projects$Locations$Skills$Operations$Wait + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Lookup; + {}) as Params$Resource$Projects$Locations$Skills$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Studies$Lookup; + params = + {} as Params$Resource$Projects$Locations$Skills$Operations$Wait; options = {}; } @@ -147544,90 +150415,92 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/studies:lookup').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Projects$Locations$Studies$Create extends StandardParameters { + export interface Params$Resource$Projects$Locations$Skills$Operations$Cancel extends StandardParameters { /** - * Required. The resource name of the Location to create the CustomJob in. Format: `projects/{project\}/locations/{location\}` + * The name of the operation resource to be cancelled. */ - parent?: string; - + name?: string; + } + export interface Params$Resource$Projects$Locations$Skills$Operations$Delete extends StandardParameters { /** - * Request body metadata + * The name of the operation resource to be deleted. */ - requestBody?: Schema$GoogleCloudAiplatformV1Study; + name?: string; } - export interface Params$Resource$Projects$Locations$Studies$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Skills$Operations$Get extends StandardParameters { /** - * Required. The name of the Study resource to be deleted. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Projects$Locations$Studies$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Skills$Operations$List extends StandardParameters { /** - * Required. The name of the Study resource. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + * The standard list filter. + */ + filter?: string; + /** + * The name of the operation's parent resource. */ name?: string; - } - export interface Params$Resource$Projects$Locations$Studies$List extends StandardParameters { /** - * Optional. The maximum number of studies to return per "page" of results. If unspecified, service will pick an appropriate default. + * The standard list page size. */ pageSize?: number; /** - * Optional. A page token to request the next page of results. If unspecified, there are no subsequent pages. + * The standard list page token. */ pageToken?: string; /** - * Required. The resource name of the Location to list the Study from. Format: `projects/{project\}/locations/{location\}` + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. */ - parent?: string; + returnPartialSuccess?: boolean; } - export interface Params$Resource$Projects$Locations$Studies$Lookup extends StandardParameters { + export interface Params$Resource$Projects$Locations$Skills$Operations$Wait extends StandardParameters { /** - * Required. The resource name of the Location to get the Study from. Format: `projects/{project\}/locations/{location\}` + * The name of the operation resource to wait on. */ - parent?: string; - + name?: string; /** - * Request body metadata + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. */ - requestBody?: Schema$GoogleCloudAiplatformV1LookupStudyRequest; + timeout?: string; } - export class Resource$Projects$Locations$Studies$Operations { + export class Resource$Projects$Locations$Specialistpools { context: APIRequestContext; + operations: Resource$Projects$Locations$Specialistpools$Operations; constructor(context: APIRequestContext) { this.context = context; + this.operations = + new Resource$Projects$Locations$Specialistpools$Operations( + this.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`. + * Creates a SpecialistPool. * @example * ```js * // Before running the sample: @@ -147656,14 +150529,33 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/studies/my-studie/operations/my-operation', + * const res = await aiplatform.projects.locations.specialistPools.create({ + * // Required. The parent Project name for the new SpecialistPool. The form is `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "pendingDataLabelingJobs": [], + * // "specialistManagerEmails": [], + * // "specialistManagersCount": 0, + * // "specialistWorkerEmails": [] + * // } + * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -147678,54 +150570,58 @@ export namespace aiplatform_v1 { * @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$Studies$Operations$Cancel, + create( + params: Params$Resource$Projects$Locations$Specialistpools$Create, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Projects$Locations$Studies$Operations$Cancel, + create( + params?: Params$Resource$Projects$Locations$Specialistpools$Create, options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Projects$Locations$Studies$Operations$Cancel, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Specialistpools$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Projects$Locations$Studies$Operations$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Specialistpools$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Projects$Locations$Studies$Operations$Cancel, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Specialistpools$Create, + callback: BodyResponseCallback ): void; - cancel(callback: BodyResponseCallback): void; - cancel( + create( + callback: BodyResponseCallback + ): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Operations$Cancel - | BodyResponseCallback + | Params$Resource$Projects$Locations$Specialistpools$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Operations$Cancel; + {}) as Params$Resource$Projects$Locations$Specialistpools$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Studies$Operations$Cancel; + {} as Params$Resource$Projects$Locations$Specialistpools$Create; options = {}; } @@ -147738,29 +150634,32 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+parent}/specialistPools').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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`. + * Deletes a SpecialistPool as well as all Specialists in the pool. * @example * ```js * // Before running the sample: @@ -147789,14 +150688,22 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/studies/my-studie/operations/my-operation', + * const res = await aiplatform.projects.locations.specialistPools.delete({ + * // If set to true, any specialist managers in this SpecialistPool will also be deleted. (Otherwise, the request will only work if the SpecialistPool has no specialist managers.) + * force: 'placeholder-value', + * // Required. The resource name of the SpecialistPool to delete. Format: `projects/{project\}/locations/{location\}/specialistPools/{specialist_pool\}` + * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool', * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -147812,53 +150719,57 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Studies$Operations$Delete, + params: Params$Resource$Projects$Locations$Specialistpools$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Studies$Operations$Delete, + params?: Params$Resource$Projects$Locations$Specialistpools$Delete, options?: MethodOptions - ): Promise>; + ): Promise>; delete( - params: Params$Resource$Projects$Locations$Studies$Operations$Delete, + params: Params$Resource$Projects$Locations$Specialistpools$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Studies$Operations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Specialistpools$Delete, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Studies$Operations$Delete, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Specialistpools$Delete, + callback: BodyResponseCallback + ): void; + delete( + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Operations$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Specialistpools$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Operations$Delete; + {}) as Params$Resource$Projects$Locations$Specialistpools$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Studies$Operations$Delete; + {} as Params$Resource$Projects$Locations$Specialistpools$Delete; options = {}; } @@ -147883,17 +150794,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Gets a SpecialistPool. * @example * ```js * // Before running the sample: @@ -147922,19 +150833,20 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.operations.get({ - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/studies/my-studie/operations/my-operation', + * const res = await aiplatform.projects.locations.specialistPools.get({ + * // Required. The name of the SpecialistPool resource. The form is `projects/{project\}/locations/{location\}/specialistPools/{specialist_pool\}`. + * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "displayName": "my_displayName", * // "name": "my_name", - * // "response": {} + * // "pendingDataLabelingJobs": [], + * // "specialistManagerEmails": [], + * // "specialistManagersCount": 0, + * // "specialistWorkerEmails": [] * // } * } * @@ -147951,57 +150863,60 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Studies$Operations$Get, + params: Params$Resource$Projects$Locations$Specialistpools$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Studies$Operations$Get, + params?: Params$Resource$Projects$Locations$Specialistpools$Get, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; get( - params: Params$Resource$Projects$Locations$Studies$Operations$Get, + params: Params$Resource$Projects$Locations$Specialistpools$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Studies$Operations$Get, + params: Params$Resource$Projects$Locations$Specialistpools$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Studies$Operations$Get, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Specialistpools$Get, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Operations$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Specialistpools$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Operations$Get; + {}) as Params$Resource$Projects$Locations$Specialistpools$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Studies$Operations$Get; + params = {} as Params$Resource$Projects$Locations$Specialistpools$Get; options = {}; } @@ -148026,17 +150941,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + * Lists SpecialistPools in a Location. * @example * ```js * // Before running the sample: @@ -148065,25 +150982,22 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location/studies/my-studie', + * const res = await aiplatform.projects.locations.specialistPools.list({ * // The standard list page size. * pageSize: 'placeholder-value', - * // The standard list page token. + * // The standard list page token. Typically obtained by ListSpecialistPoolsResponse.next_page_token of the previous SpecialistPoolService.ListSpecialistPools call. Return first page if empty. * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', + * // Required. The name of the SpecialistPool's parent resource. Format: `projects/{project\}/locations/{location\}` + * parent: 'projects/my-project/locations/my-location', + * // Mask specifying which fields to read. FieldMask represents a set of + * readMask: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "operations": [], - * // "unreachable": [] + * // "specialistPools": [] * // } * } * @@ -148100,61 +151014,60 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Studies$Operations$List, + params: Params$Resource$Projects$Locations$Specialistpools$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Studies$Operations$List, + params?: Params$Resource$Projects$Locations$Specialistpools$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Studies$Operations$List, + params: Params$Resource$Projects$Locations$Specialistpools$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Studies$Operations$List, + params: Params$Resource$Projects$Locations$Specialistpools$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Studies$Operations$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Specialistpools$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Operations$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Specialistpools$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Operations$List; + {}) as Params$Resource$Projects$Locations$Specialistpools$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Studies$Operations$List; + params = {} as Params$Resource$Projects$Locations$Specialistpools$List; options = {}; } @@ -148167,7 +151080,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}/operations').replace( + url: (rootUrl + '/v1/{+parent}/specialistPools').replace( /([^:]\/)\/+/g, '$1' ), @@ -148177,24 +151090,24 @@ export namespace aiplatform_v1 { options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. + * Updates a SpecialistPool. * @example * ```js * // Before running the sample: @@ -148223,11 +151136,24 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.operations.wait({ - * // The name of the operation resource to wait on. - * name: 'projects/my-project/locations/my-location/studies/my-studie/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', + * const res = await aiplatform.projects.locations.specialistPools.patch({ + * // Required. The resource name of the SpecialistPool. + * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool', + * // Required. The update mask applies to the resource. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "pendingDataLabelingJobs": [], + * // "specialistManagerEmails": [], + * // "specialistManagersCount": 0, + * // "specialistWorkerEmails": [] + * // } + * }, * }); * console.log(res.data); * @@ -148253,36 +151179,36 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - wait( - params: Params$Resource$Projects$Locations$Studies$Operations$Wait, + patch( + params: Params$Resource$Projects$Locations$Specialistpools$Patch, options: StreamMethodOptions ): Promise>; - wait( - params?: Params$Resource$Projects$Locations$Studies$Operations$Wait, + patch( + params?: Params$Resource$Projects$Locations$Specialistpools$Patch, options?: MethodOptions ): Promise>; - wait( - params: Params$Resource$Projects$Locations$Studies$Operations$Wait, + patch( + params: Params$Resource$Projects$Locations$Specialistpools$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Projects$Locations$Studies$Operations$Wait, + patch( + params: Params$Resource$Projects$Locations$Specialistpools$Patch, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Projects$Locations$Studies$Operations$Wait, + patch( + params: Params$Resource$Projects$Locations$Specialistpools$Patch, callback: BodyResponseCallback ): void; - wait( + patch( callback: BodyResponseCallback ): void; - wait( + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Operations$Wait + | Params$Resource$Projects$Locations$Specialistpools$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -148298,13 +151224,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Operations$Wait; + {}) as Params$Resource$Projects$Locations$Specialistpools$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Studies$Operations$Wait; + params = {} as Params$Resource$Projects$Locations$Specialistpools$Patch; options = {}; } @@ -148317,8 +151242,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options @@ -148339,68 +151264,75 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Projects$Locations$Studies$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Projects$Locations$Specialistpools$Create extends StandardParameters { /** - * The name of the operation resource to be cancelled. + * Required. The parent Project name for the new SpecialistPool. The form is `projects/{project\}/locations/{location\}`. */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Studies$Operations$Delete extends StandardParameters { + parent?: string; + /** - * The name of the operation resource to be deleted. + * Request body metadata */ - name?: string; + requestBody?: Schema$GoogleCloudAiplatformV1SpecialistPool; } - export interface Params$Resource$Projects$Locations$Studies$Operations$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Specialistpools$Delete extends StandardParameters { /** - * The name of the operation resource. + * If set to true, any specialist managers in this SpecialistPool will also be deleted. (Otherwise, the request will only work if the SpecialistPool has no specialist managers.) */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Studies$Operations$List extends StandardParameters { + force?: boolean; /** - * The standard list filter. + * Required. The resource name of the SpecialistPool to delete. Format: `projects/{project\}/locations/{location\}/specialistPools/{specialist_pool\}` */ - filter?: string; + name?: string; + } + export interface Params$Resource$Projects$Locations$Specialistpools$Get extends StandardParameters { /** - * The name of the operation's parent resource. + * Required. The name of the SpecialistPool resource. The form is `projects/{project\}/locations/{location\}/specialistPools/{specialist_pool\}`. */ name?: string; + } + export interface Params$Resource$Projects$Locations$Specialistpools$List extends StandardParameters { /** * The standard list page size. */ pageSize?: number; /** - * The standard list page token. + * The standard list page token. Typically obtained by ListSpecialistPoolsResponse.next_page_token of the previous SpecialistPoolService.ListSpecialistPools call. Return first page if empty. */ pageToken?: string; /** - * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * Required. The name of the SpecialistPool's parent resource. Format: `projects/{project\}/locations/{location\}` */ - returnPartialSuccess?: boolean; + parent?: string; + /** + * Mask specifying which fields to read. FieldMask represents a set of + */ + readMask?: string; } - export interface Params$Resource$Projects$Locations$Studies$Operations$Wait extends StandardParameters { + export interface Params$Resource$Projects$Locations$Specialistpools$Patch extends StandardParameters { /** - * The name of the operation resource to wait on. + * Required. The resource name of the SpecialistPool. */ name?: string; /** - * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * Required. The update mask applies to the resource. */ - timeout?: string; + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1SpecialistPool; } - export class Resource$Projects$Locations$Studies$Trials { + export class Resource$Projects$Locations$Specialistpools$Operations { context: APIRequestContext; - operations: Resource$Projects$Locations$Studies$Trials$Operations; constructor(context: APIRequestContext) { this.context = context; - this.operations = - new Resource$Projects$Locations$Studies$Trials$Operations(this.context); } /** - * Adds a measurement of the objective metrics to a Trial. This measurement is assumed to have been taken before the Trial is complete. + * 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`. * @example * ```js * // Before running the sample: @@ -148430,36 +151362,14 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.studies.trials.addTrialMeasurement({ - * // Required. The name of the trial to add measurement. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` - * trialName: - * 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "measurement": {} - * // } - * }, + * await aiplatform.projects.locations.specialistPools.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool/operations/my-operation', * }); * console.log(res.data); * * // Example response - * // { - * // "clientId": "my_clientId", - * // "customJob": "my_customJob", - * // "endTime": "my_endTime", - * // "finalMeasurement": {}, - * // "id": "my_id", - * // "infeasibleReason": "my_infeasibleReason", - * // "measurements": [], - * // "name": "my_name", - * // "parameters": [], - * // "startTime": "my_startTime", - * // "state": "my_state", - * // "webAccessUris": {} - * // } + * // {} * } * * main().catch(e => { @@ -148474,58 +151384,54 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addTrialMeasurement( - params: Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement, + cancel( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel, options: StreamMethodOptions ): Promise>; - addTrialMeasurement( - params?: Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement, + cancel( + params?: Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel, options?: MethodOptions - ): Promise>; - addTrialMeasurement( - params: Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement, + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addTrialMeasurement( - params: Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addTrialMeasurement( - params: Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - addTrialMeasurement( - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel, + callback: BodyResponseCallback ): void; - addTrialMeasurement( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement - | BodyResponseCallback + | Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement; + {}) as Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement; + {} as Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel; options = {}; } @@ -148538,34 +151444,29 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+trialName}:addTrialMeasurement').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['trialName'], - pathParams: ['trialName'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Checks whether a Trial should stop or not. Returns a long-running operation. When the operation is successful, it will contain a CheckTrialEarlyStoppingStateResponse. + * 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`. * @example * ```js * // Before running the sample: @@ -148595,29 +151496,14 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.studies.trials.checkTrialEarlyStoppingState( - * { - * // Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` - * trialName: - * 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, - * }, - * ); + * await aiplatform.projects.locations.specialistPools.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool/operations/my-operation', + * }); * console.log(res.data); * * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } + * // {} * } * * main().catch(e => { @@ -148632,58 +151518,54 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - checkTrialEarlyStoppingState( - params: Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate, + delete( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Delete, options: StreamMethodOptions ): Promise>; - checkTrialEarlyStoppingState( - params?: Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate, + delete( + params?: Params$Resource$Projects$Locations$Specialistpools$Operations$Delete, options?: MethodOptions - ): Promise>; - checkTrialEarlyStoppingState( - params: Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - checkTrialEarlyStoppingState( - params: Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - checkTrialEarlyStoppingState( - params: Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - checkTrialEarlyStoppingState( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Delete, + callback: BodyResponseCallback ): void; - checkTrialEarlyStoppingState( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate - | BodyResponseCallback + | Params$Resource$Projects$Locations$Specialistpools$Operations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate; + {}) as Params$Resource$Projects$Locations$Specialistpools$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate; + {} as Params$Resource$Projects$Locations$Specialistpools$Operations$Delete; options = {}; } @@ -148696,31 +151578,29 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v1/{+trialName}:checkTrialEarlyStoppingState' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['trialName'], - pathParams: ['trialName'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Marks a Trial as complete. + * 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. * @example * ```js * // Before running the sample: @@ -148749,36 +151629,20 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.trials.complete({ - * // Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` - * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "finalMeasurement": {}, - * // "infeasibleReason": "my_infeasibleReason", - * // "trialInfeasible": false - * // } - * }, - * }); + * const res = + * await aiplatform.projects.locations.specialistPools.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool/operations/my-operation', + * }); * console.log(res.data); * * // Example response * // { - * // "clientId": "my_clientId", - * // "customJob": "my_customJob", - * // "endTime": "my_endTime", - * // "finalMeasurement": {}, - * // "id": "my_id", - * // "infeasibleReason": "my_infeasibleReason", - * // "measurements": [], + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "parameters": [], - * // "startTime": "my_startTime", - * // "state": "my_state", - * // "webAccessUris": {} + * // "response": {} * // } * } * @@ -148794,58 +151658,58 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - complete( - params: Params$Resource$Projects$Locations$Studies$Trials$Complete, + get( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Get, options: StreamMethodOptions ): Promise>; - complete( - params?: Params$Resource$Projects$Locations$Studies$Trials$Complete, + get( + params?: Params$Resource$Projects$Locations$Specialistpools$Operations$Get, options?: MethodOptions - ): Promise>; - complete( - params: Params$Resource$Projects$Locations$Studies$Trials$Complete, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - complete( - params: Params$Resource$Projects$Locations$Studies$Trials$Complete, + get( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - complete( - params: Params$Resource$Projects$Locations$Studies$Trials$Complete, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Get, + callback: BodyResponseCallback ): void; - complete( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - complete( + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Complete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Specialistpools$Operations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Complete; + {}) as Params$Resource$Projects$Locations$Specialistpools$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Studies$Trials$Complete; + {} as Params$Resource$Projects$Locations$Specialistpools$Operations$Get; options = {}; } @@ -148858,11 +151722,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:complete').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options @@ -148873,19 +151734,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Adds a user provided Trial to a Study. + * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. * @example * ```js * // Before running the sample: @@ -148914,45 +151773,26 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.trials.create({ - * // Required. The resource name of the Study to create the Trial in. Format: `projects/{project\}/locations/{location\}/studies/{study\}` - * parent: 'projects/my-project/locations/my-location/studies/my-studie', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "clientId": "my_clientId", - * // "customJob": "my_customJob", - * // "endTime": "my_endTime", - * // "finalMeasurement": {}, - * // "id": "my_id", - * // "infeasibleReason": "my_infeasibleReason", - * // "measurements": [], - * // "name": "my_name", - * // "parameters": [], - * // "startTime": "my_startTime", - * // "state": "my_state", - * // "webAccessUris": {} - * // } - * }, - * }); + * const res = + * await aiplatform.projects.locations.specialistPools.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "clientId": "my_clientId", - * // "customJob": "my_customJob", - * // "endTime": "my_endTime", - * // "finalMeasurement": {}, - * // "id": "my_id", - * // "infeasibleReason": "my_infeasibleReason", - * // "measurements": [], - * // "name": "my_name", - * // "parameters": [], - * // "startTime": "my_startTime", - * // "state": "my_state", - * // "webAccessUris": {} + * // "nextPageToken": "my_nextPageToken", + * // "operations": [], + * // "unreachable": [] * // } * } * @@ -148968,57 +151808,62 @@ export namespace aiplatform_v1 { * @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$Studies$Trials$Create, + list( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$List, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Studies$Trials$Create, + list( + params?: Params$Resource$Projects$Locations$Specialistpools$Operations$List, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Studies$Trials$Create, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Studies$Trials$Create, + list( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Studies$Trials$Create, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$List, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - create( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Specialistpools$Operations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Create; + {}) as Params$Resource$Projects$Locations$Specialistpools$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Studies$Trials$Create; + params = + {} as Params$Resource$Projects$Locations$Specialistpools$Operations$List; options = {}; } @@ -149031,34 +151876,34 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/trials').replace( + url: (rootUrl + '/v1/{+name}/operations').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Deletes a Trial. + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. * @example * ```js * // Before running the sample: @@ -149087,14 +151932,23 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.trials.delete({ - * // Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` - * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', - * }); + * const res = + * await aiplatform.projects.locations.specialistPools.operations.wait({ + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/specialistPools/my-specialistPool/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -149109,53 +151963,58 @@ export namespace aiplatform_v1 { * @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$Studies$Trials$Delete, + wait( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Wait, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Studies$Trials$Delete, + wait( + params?: Params$Resource$Projects$Locations$Specialistpools$Operations$Wait, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Studies$Trials$Delete, + ): Promise>; + wait( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Studies$Trials$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + wait( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Wait, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Studies$Trials$Delete, - callback: BodyResponseCallback + wait( + params: Params$Resource$Projects$Locations$Specialistpools$Operations$Wait, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + wait( + callback: BodyResponseCallback + ): void; + wait( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Specialistpools$Operations$Wait + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Delete; + {}) as Params$Resource$Projects$Locations$Specialistpools$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Studies$Trials$Delete; + params = + {} as Params$Resource$Projects$Locations$Specialistpools$Operations$Wait; options = {}; } @@ -149168,8 +152027,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -149180,31 +152039,97 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Specialistpools$Operations$Cancel extends StandardParameters { /** - * Gets a Trial. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * + * The name of the operation resource to be cancelled. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Specialistpools$Operations$Delete extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Specialistpools$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Specialistpools$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; + /** + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Projects$Locations$Specialistpools$Operations$Wait extends StandardParameters { + /** + * The name of the operation resource to wait on. + */ + name?: string; + /** + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + */ + timeout?: string; + } + + export class Resource$Projects$Locations$Studies { + context: APIRequestContext; + operations: Resource$Projects$Locations$Studies$Operations; + trials: Resource$Projects$Locations$Studies$Trials; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = new Resource$Projects$Locations$Studies$Operations( + this.context + ); + this.trials = new Resource$Projects$Locations$Studies$Trials( + this.context + ); + } + + /** + * Creates a Study. A resource name will be generated after creation of the Study. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * * const {google} = require('googleapis'); * const aiplatform = google.aiplatform('v1'); * @@ -149219,26 +152144,33 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.trials.get({ - * // Required. The name of the Trial resource. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` - * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', + * const res = await aiplatform.projects.locations.studies.create({ + * // Required. The resource name of the Location to create the CustomJob in. Format: `projects/{project\}/locations/{location\}` + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "inactiveReason": "my_inactiveReason", + * // "name": "my_name", + * // "state": "my_state", + * // "studySpec": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientId": "my_clientId", - * // "customJob": "my_customJob", - * // "endTime": "my_endTime", - * // "finalMeasurement": {}, - * // "id": "my_id", - * // "infeasibleReason": "my_infeasibleReason", - * // "measurements": [], + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "inactiveReason": "my_inactiveReason", * // "name": "my_name", - * // "parameters": [], - * // "startTime": "my_startTime", * // "state": "my_state", - * // "webAccessUris": {} + * // "studySpec": {} * // } * } * @@ -149254,57 +152186,57 @@ export namespace aiplatform_v1 { * @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$Studies$Trials$Get, + create( + params: Params$Resource$Projects$Locations$Studies$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Studies$Trials$Get, + create( + params?: Params$Resource$Projects$Locations$Studies$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Studies$Trials$Get, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Studies$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Studies$Trials$Get, + create( + params: Params$Resource$Projects$Locations$Studies$Create, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Studies$Trials$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Studies$Create, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + create( + callback: BodyResponseCallback ): void; - get( + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Get; + {}) as Params$Resource$Projects$Locations$Studies$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Studies$Trials$Get; + params = {} as Params$Resource$Projects$Locations$Studies$Create; options = {}; } @@ -149317,31 +152249,34 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+parent}/studies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Lists the Trials associated with a Study. + * Deletes a Study. * @example * ```js * // Before running the sample: @@ -149370,21 +152305,14 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.trials.list({ - * // Optional. The number of Trials to retrieve per "page" of results. If unspecified, the service will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. A page token to request the next page of results. If unspecified, there are no subsequent pages. - * pageToken: 'placeholder-value', - * // Required. The resource name of the Study to list the Trial from. Format: `projects/{project\}/locations/{location\}/studies/{study\}` - * parent: 'projects/my-project/locations/my-location/studies/my-studie', + * const res = await aiplatform.projects.locations.studies.delete({ + * // Required. The name of the Study resource to be deleted. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + * name: 'projects/my-project/locations/my-location/studies/my-studie', * }); * console.log(res.data); * * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "trials": [] - * // } + * // {} * } * * main().catch(e => { @@ -149399,61 +152327,53 @@ export namespace aiplatform_v1 { * @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$Studies$Trials$List, + delete( + params: Params$Resource$Projects$Locations$Studies$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Studies$Trials$List, + delete( + params?: Params$Resource$Projects$Locations$Studies$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Studies$Trials$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Studies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Studies$Trials$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Studies$Trials$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Studies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Studies$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$List; + {}) as Params$Resource$Projects$Locations$Studies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Studies$Trials$List; + params = {} as Params$Resource$Projects$Locations$Studies$Delete; options = {}; } @@ -149466,34 +152386,29 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/trials').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Lists the pareto-optimal Trials for multi-objective Study or the optimal Trials for single-objective Study. The definition of pareto-optimal can be checked in wiki page. https://en.wikipedia.org/wiki/Pareto_efficiency + * Gets a Study by name. * @example * ```js * // Before running the sample: @@ -149522,22 +152437,20 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.studies.trials.listOptimalTrials({ - * // Required. The name of the Study that the optimal Trial belongs to. - * parent: 'projects/my-project/locations/my-location/studies/my-studie', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, - * }); + * const res = await aiplatform.projects.locations.studies.get({ + * // Required. The name of the Study resource. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + * name: 'projects/my-project/locations/my-location/studies/my-studie', + * }); * console.log(res.data); * * // Example response * // { - * // "optimalTrials": [] + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "inactiveReason": "my_inactiveReason", + * // "name": "my_name", + * // "state": "my_state", + * // "studySpec": {} * // } * } * @@ -149553,62 +152466,57 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listOptimalTrials( - params: Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials, + get( + params: Params$Resource$Projects$Locations$Studies$Get, options: StreamMethodOptions ): Promise>; - listOptimalTrials( - params?: Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials, + get( + params?: Params$Resource$Projects$Locations$Studies$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listOptimalTrials( - params: Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Studies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listOptimalTrials( - params: Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials, + get( + params: Params$Resource$Projects$Locations$Studies$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listOptimalTrials( - params: Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Studies$Get, + callback: BodyResponseCallback ): void; - listOptimalTrials( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - listOptimalTrials( + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials; + {}) as Params$Resource$Projects$Locations$Studies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials; + params = {} as Params$Resource$Projects$Locations$Studies$Get; options = {}; } @@ -149621,34 +152529,31 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/trials:listOptimalTrials').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Stops a Trial. + * Lists all the studies in a region for an associated project. * @example * ```js * // Before running the sample: @@ -149677,32 +152582,20 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.trials.stop({ - * // Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` - * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, + * const res = await aiplatform.projects.locations.studies.list({ + * // Optional. The maximum number of studies to return per "page" of results. If unspecified, service will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A page token to request the next page of results. If unspecified, there are no subsequent pages. + * pageToken: 'placeholder-value', + * // Required. The resource name of the Location to list the Study from. Format: `projects/{project\}/locations/{location\}` + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "clientId": "my_clientId", - * // "customJob": "my_customJob", - * // "endTime": "my_endTime", - * // "finalMeasurement": {}, - * // "id": "my_id", - * // "infeasibleReason": "my_infeasibleReason", - * // "measurements": [], - * // "name": "my_name", - * // "parameters": [], - * // "startTime": "my_startTime", - * // "state": "my_state", - * // "webAccessUris": {} + * // "nextPageToken": "my_nextPageToken", + * // "studies": [] * // } * } * @@ -149718,57 +152611,61 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - stop( - params: Params$Resource$Projects$Locations$Studies$Trials$Stop, + list( + params: Params$Resource$Projects$Locations$Studies$List, options: StreamMethodOptions ): Promise>; - stop( - params?: Params$Resource$Projects$Locations$Studies$Trials$Stop, + list( + params?: Params$Resource$Projects$Locations$Studies$List, options?: MethodOptions - ): Promise>; - stop( - params: Params$Resource$Projects$Locations$Studies$Trials$Stop, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Studies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stop( - params: Params$Resource$Projects$Locations$Studies$Trials$Stop, + list( + params: Params$Resource$Projects$Locations$Studies$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - stop( - params: Params$Resource$Projects$Locations$Studies$Trials$Stop, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Studies$List, + callback: BodyResponseCallback ): void; - stop( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - stop( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Stop - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Stop; + {}) as Params$Resource$Projects$Locations$Studies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Studies$Trials$Stop; + params = {} as Params$Resource$Projects$Locations$Studies$List; options = {}; } @@ -149781,31 +152678,34 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:stop').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+parent}/studies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Adds one or more Trials to a Study, with parameter values suggested by Vertex AI Vizier. Returns a long-running operation associated with the generation of Trial suggestions. When this long-running operation succeeds, it will contain a SuggestTrialsResponse. + * Looks a study up using the user-defined display_name field instead of the fully qualified resource name. * @example * ```js * // Before running the sample: @@ -149834,17 +152734,15 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.trials.suggest({ - * // Required. The project and location that the Study belongs to. Format: `projects/{project\}/locations/{location\}/studies/{study\}` - * parent: 'projects/my-project/locations/my-location/studies/my-studie', + * const res = await aiplatform.projects.locations.studies.lookup({ + * // Required. The resource name of the Location to get the Study from. Format: `projects/{project\}/locations/{location\}` + * parent: 'projects/my-project/locations/my-location', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "clientId": "my_clientId", - * // "contexts": [], - * // "suggestionCount": 0 + * // "displayName": "my_displayName" * // } * }, * }); @@ -149852,11 +152750,12 @@ export namespace aiplatform_v1 { * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "inactiveReason": "my_inactiveReason", * // "name": "my_name", - * // "response": {} + * // "state": "my_state", + * // "studySpec": {} * // } * } * @@ -149872,58 +152771,57 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - suggest( - params: Params$Resource$Projects$Locations$Studies$Trials$Suggest, + lookup( + params: Params$Resource$Projects$Locations$Studies$Lookup, options: StreamMethodOptions ): Promise>; - suggest( - params?: Params$Resource$Projects$Locations$Studies$Trials$Suggest, + lookup( + params?: Params$Resource$Projects$Locations$Studies$Lookup, options?: MethodOptions - ): Promise>; - suggest( - params: Params$Resource$Projects$Locations$Studies$Trials$Suggest, + ): Promise>; + lookup( + params: Params$Resource$Projects$Locations$Studies$Lookup, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - suggest( - params: Params$Resource$Projects$Locations$Studies$Trials$Suggest, + lookup( + params: Params$Resource$Projects$Locations$Studies$Lookup, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - suggest( - params: Params$Resource$Projects$Locations$Studies$Trials$Suggest, - callback: BodyResponseCallback + lookup( + params: Params$Resource$Projects$Locations$Studies$Lookup, + callback: BodyResponseCallback ): void; - suggest( - callback: BodyResponseCallback + lookup( + callback: BodyResponseCallback ): void; - suggest( + lookup( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Suggest - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Lookup + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Suggest; + {}) as Params$Resource$Projects$Locations$Studies$Lookup; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Studies$Trials$Suggest; + params = {} as Params$Resource$Projects$Locations$Studies$Lookup; options = {}; } @@ -149936,7 +152834,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/trials:suggest').replace( + url: (rootUrl + '/v1/{+parent}/studies:lookup').replace( /([^:]\/)\/+/g, '$1' ), @@ -149951,75 +152849,44 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement extends StandardParameters { - /** - * Required. The name of the trial to add measurement. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` - */ - trialName?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1AddTrialMeasurementRequest; - } - export interface Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate extends StandardParameters { - /** - * Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` - */ - trialName?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1CheckTrialEarlyStoppingStateRequest; - } - export interface Params$Resource$Projects$Locations$Studies$Trials$Complete extends StandardParameters { - /** - * Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1CompleteTrialRequest; - } - export interface Params$Resource$Projects$Locations$Studies$Trials$Create extends StandardParameters { + export interface Params$Resource$Projects$Locations$Studies$Create extends StandardParameters { /** - * Required. The resource name of the Study to create the Trial in. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + * Required. The resource name of the Location to create the CustomJob in. Format: `projects/{project\}/locations/{location\}` */ parent?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1Trial; + requestBody?: Schema$GoogleCloudAiplatformV1Study; } - export interface Params$Resource$Projects$Locations$Studies$Trials$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Studies$Delete extends StandardParameters { /** - * Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + * Required. The name of the Study resource to be deleted. Format: `projects/{project\}/locations/{location\}/studies/{study\}` */ name?: string; } - export interface Params$Resource$Projects$Locations$Studies$Trials$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Studies$Get extends StandardParameters { /** - * Required. The name of the Trial resource. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + * Required. The name of the Study resource. Format: `projects/{project\}/locations/{location\}/studies/{study\}` */ name?: string; } - export interface Params$Resource$Projects$Locations$Studies$Trials$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Studies$List extends StandardParameters { /** - * Optional. The number of Trials to retrieve per "page" of results. If unspecified, the service will pick an appropriate default. + * Optional. The maximum number of studies to return per "page" of results. If unspecified, service will pick an appropriate default. */ pageSize?: number; /** @@ -150027,45 +152894,23 @@ export namespace aiplatform_v1 { */ pageToken?: string; /** - * Required. The resource name of the Study to list the Trial from. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + * Required. The resource name of the Location to list the Study from. Format: `projects/{project\}/locations/{location\}` */ parent?: string; } - export interface Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials extends StandardParameters { - /** - * Required. The name of the Study that the optimal Trial belongs to. - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1ListOptimalTrialsRequest; - } - export interface Params$Resource$Projects$Locations$Studies$Trials$Stop extends StandardParameters { - /** - * Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1StopTrialRequest; - } - export interface Params$Resource$Projects$Locations$Studies$Trials$Suggest extends StandardParameters { + export interface Params$Resource$Projects$Locations$Studies$Lookup extends StandardParameters { /** - * Required. The project and location that the Study belongs to. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + * Required. The resource name of the Location to get the Study from. Format: `projects/{project\}/locations/{location\}` */ parent?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1SuggestTrialsRequest; + requestBody?: Schema$GoogleCloudAiplatformV1LookupStudyRequest; } - export class Resource$Projects$Locations$Studies$Trials$Operations { + export class Resource$Projects$Locations$Studies$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -150101,11 +152946,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.studies.trials.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial/operations/my-operation', - * }); + * const res = await aiplatform.projects.locations.studies.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/studies/my-studie/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -150125,31 +152969,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel, + params: Params$Resource$Projects$Locations$Studies$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel, + params?: Params$Resource$Projects$Locations$Studies$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel, + params: Params$Resource$Projects$Locations$Studies$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel, + params: Params$Resource$Projects$Locations$Studies$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel, + params: Params$Resource$Projects$Locations$Studies$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel + | Params$Resource$Projects$Locations$Studies$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -150165,13 +153009,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel; + {}) as Params$Resource$Projects$Locations$Studies$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel; + {} as Params$Resource$Projects$Locations$Studies$Operations$Cancel; options = {}; } @@ -150235,11 +153079,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.studies.trials.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial/operations/my-operation', - * }); + * const res = await aiplatform.projects.locations.studies.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/studies/my-studie/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -150259,31 +153102,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete, + params: Params$Resource$Projects$Locations$Studies$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete, + params?: Params$Resource$Projects$Locations$Studies$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete, + params: Params$Resource$Projects$Locations$Studies$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete, + params: Params$Resource$Projects$Locations$Studies$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete, + params: Params$Resource$Projects$Locations$Studies$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete + | Params$Resource$Projects$Locations$Studies$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -150299,13 +153142,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete; + {}) as Params$Resource$Projects$Locations$Studies$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete; + {} as Params$Resource$Projects$Locations$Studies$Operations$Delete; options = {}; } @@ -150369,12 +153212,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.studies.trials.operations.get( - * { - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial/operations/my-operation', - * }, - * ); + * const res = await aiplatform.projects.locations.studies.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/studies/my-studie/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -150400,27 +153241,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Get, + params: Params$Resource$Projects$Locations$Studies$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Studies$Trials$Operations$Get, + params?: Params$Resource$Projects$Locations$Studies$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Get, + params: Params$Resource$Projects$Locations$Studies$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Get, + params: Params$Resource$Projects$Locations$Studies$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Get, + params: Params$Resource$Projects$Locations$Studies$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -150428,7 +153269,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Operations$Get + | Params$Resource$Projects$Locations$Studies$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -150444,13 +153285,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Operations$Get; + {}) as Params$Resource$Projects$Locations$Studies$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Studies$Trials$Operations$Get; + {} as Params$Resource$Projects$Locations$Studies$Operations$Get; options = {}; } @@ -150514,19 +153355,18 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.studies.trials.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', - * }); + * const res = await aiplatform.projects.locations.studies.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location/studies/my-studie', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -150550,29 +153390,29 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$List, + params: Params$Resource$Projects$Locations$Studies$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Studies$Trials$Operations$List, + params?: Params$Resource$Projects$Locations$Studies$Operations$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$List, + params: Params$Resource$Projects$Locations$Studies$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$List, + params: Params$Resource$Projects$Locations$Studies$Operations$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$List, + params: Params$Resource$Projects$Locations$Studies$Operations$List, callback: BodyResponseCallback ): void; list( @@ -150580,7 +153420,7 @@ export namespace aiplatform_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Operations$List + | Params$Resource$Projects$Locations$Studies$Operations$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -150598,13 +153438,13 @@ export namespace aiplatform_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Operations$List; + {}) as Params$Resource$Projects$Locations$Studies$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Studies$Trials$Operations$List; + {} as Params$Resource$Projects$Locations$Studies$Operations$List; options = {}; } @@ -150673,13 +153513,12 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.studies.trials.operations.wait({ - * // The name of the operation resource to wait on. - * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', - * }); + * const res = await aiplatform.projects.locations.studies.operations.wait({ + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/studies/my-studie/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -150705,27 +153544,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ wait( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait, + params: Params$Resource$Projects$Locations$Studies$Operations$Wait, options: StreamMethodOptions ): Promise>; wait( - params?: Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait, + params?: Params$Resource$Projects$Locations$Studies$Operations$Wait, options?: MethodOptions ): Promise>; wait( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait, + params: Params$Resource$Projects$Locations$Studies$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait, + params: Params$Resource$Projects$Locations$Studies$Operations$Wait, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait, + params: Params$Resource$Projects$Locations$Studies$Operations$Wait, callback: BodyResponseCallback ): void; wait( @@ -150733,7 +153572,7 @@ export namespace aiplatform_v1 { ): void; wait( paramsOrCallback?: - | Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait + | Params$Resource$Projects$Locations$Studies$Operations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -150749,13 +153588,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait; + {}) as Params$Resource$Projects$Locations$Studies$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait; + {} as Params$Resource$Projects$Locations$Studies$Operations$Wait; options = {}; } @@ -150790,25 +153629,25 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Projects$Locations$Studies$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Studies$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Projects$Locations$Studies$Trials$Operations$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Studies$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Projects$Locations$Studies$Trials$Operations$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Studies$Operations$List extends StandardParameters { /** * The standard list filter. */ @@ -150830,7 +153669,7 @@ export namespace aiplatform_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait extends StandardParameters { + export interface Params$Resource$Projects$Locations$Studies$Operations$Wait extends StandardParameters { /** * The name of the operation resource to wait on. */ @@ -150841,21 +153680,17 @@ export namespace aiplatform_v1 { timeout?: string; } - export class Resource$Projects$Locations$Tensorboards { + export class Resource$Projects$Locations$Studies$Trials { context: APIRequestContext; - experiments: Resource$Projects$Locations$Tensorboards$Experiments; - operations: Resource$Projects$Locations$Tensorboards$Operations; + operations: Resource$Projects$Locations$Studies$Trials$Operations; constructor(context: APIRequestContext) { this.context = context; - this.experiments = - new Resource$Projects$Locations$Tensorboards$Experiments(this.context); - this.operations = new Resource$Projects$Locations$Tensorboards$Operations( - this.context - ); + this.operations = + new Resource$Projects$Locations$Studies$Trials$Operations(this.context); } /** - * Reads multiple TensorboardTimeSeries' data. The data point number limit is 1000 for scalars, 100 for tensors and blob references. If the number of data points stored is less than the limit, all data is returned. Otherwise, the number limit of data points is randomly selected from this time series and returned. + * Adds a measurement of the objective metrics to a Trial. This measurement is assumed to have been taken before the Trial is complete. * @example * ```js * // Before running the sample: @@ -150884,18 +153719,36 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.batchRead({ - * // Required. The resource name of the Tensorboard containing TensorboardTimeSeries to read data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}`. The TensorboardTimeSeries referenced by time_series must be sub resources of this Tensorboard. - * tensorboard: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', - * // Required. The resource names of the TensorboardTimeSeries to read data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` - * timeSeries: 'placeholder-value', - * }); + * const res = + * await aiplatform.projects.locations.studies.trials.addTrialMeasurement({ + * // Required. The name of the trial to add measurement. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + * trialName: + * 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "measurement": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "timeSeriesData": [] + * // "clientId": "my_clientId", + * // "customJob": "my_customJob", + * // "endTime": "my_endTime", + * // "finalMeasurement": {}, + * // "id": "my_id", + * // "infeasibleReason": "my_infeasibleReason", + * // "measurements": [], + * // "name": "my_name", + * // "parameters": [], + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "webAccessUris": {} * // } * } * @@ -150911,62 +153764,58 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - batchRead( - params: Params$Resource$Projects$Locations$Tensorboards$Batchread, + addTrialMeasurement( + params: Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement, options: StreamMethodOptions ): Promise>; - batchRead( - params?: Params$Resource$Projects$Locations$Tensorboards$Batchread, + addTrialMeasurement( + params?: Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - batchRead( - params: Params$Resource$Projects$Locations$Tensorboards$Batchread, + ): Promise>; + addTrialMeasurement( + params: Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - batchRead( - params: Params$Resource$Projects$Locations$Tensorboards$Batchread, + addTrialMeasurement( + params: Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - batchRead( - params: Params$Resource$Projects$Locations$Tensorboards$Batchread, - callback: BodyResponseCallback + addTrialMeasurement( + params: Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement, + callback: BodyResponseCallback ): void; - batchRead( - callback: BodyResponseCallback + addTrialMeasurement( + callback: BodyResponseCallback ): void; - batchRead( + addTrialMeasurement( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Batchread - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Batchread; + {}) as Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Batchread; + {} as Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement; options = {}; } @@ -150979,34 +153828,34 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+tensorboard}:batchRead').replace( + url: (rootUrl + '/v1/{+trialName}:addTrialMeasurement').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['tensorboard'], - pathParams: ['tensorboard'], + requiredParams: ['trialName'], + pathParams: ['trialName'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Creates a Tensorboard. + * Checks whether a Trial should stop or not. Returns a long-running operation. When the operation is successful, it will contain a CheckTrialEarlyStoppingStateResponse. * @example * ```js * // Before running the sample: @@ -151035,30 +153884,20 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.create({ - * // Required. The resource name of the Location to create the Tensorboard in. Format: `projects/{project\}/locations/{location\}` - * parent: 'projects/my-project/locations/my-location', + * const res = + * await aiplatform.projects.locations.studies.trials.checkTrialEarlyStoppingState( + * { + * // Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + * trialName: + * 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "blobStoragePathPrefix": "my_blobStoragePathPrefix", - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "encryptionSpec": {}, - * // "etag": "my_etag", - * // "isDefault": false, - * // "labels": {}, - * // "name": "my_name", - * // "runCount": 0, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }, + * ); * console.log(res.data); * * // Example response @@ -151083,36 +153922,36 @@ export namespace aiplatform_v1 { * @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$Tensorboards$Create, + checkTrialEarlyStoppingState( + params: Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Tensorboards$Create, + checkTrialEarlyStoppingState( + params?: Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Projects$Locations$Tensorboards$Create, + checkTrialEarlyStoppingState( + params: Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Tensorboards$Create, + checkTrialEarlyStoppingState( + params: Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Tensorboards$Create, + checkTrialEarlyStoppingState( + params: Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate, callback: BodyResponseCallback ): void; - create( + checkTrialEarlyStoppingState( callback: BodyResponseCallback ): void; - create( + checkTrialEarlyStoppingState( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Create + | Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -151128,12 +153967,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Create; + {}) as Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Tensorboards$Create; + params = + {} as Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate; options = {}; } @@ -151146,18 +153986,17 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/tensorboards').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + '/v1/{+trialName}:checkTrialEarlyStoppingState' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['trialName'], + pathParams: ['trialName'], context: this.context, }; if (callback) { @@ -151171,7 +154010,7 @@ export namespace aiplatform_v1 { } /** - * Deletes a Tensorboard. + * Marks a Trial as complete. * @example * ```js * // Before running the sample: @@ -151200,19 +154039,36 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.delete({ - * // Required. The name of the Tensorboard to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', + * const res = await aiplatform.projects.locations.studies.trials.complete({ + * // Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "finalMeasurement": {}, + * // "infeasibleReason": "my_infeasibleReason", + * // "trialInfeasible": false + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "clientId": "my_clientId", + * // "customJob": "my_customJob", + * // "endTime": "my_endTime", + * // "finalMeasurement": {}, + * // "id": "my_id", + * // "infeasibleReason": "my_infeasibleReason", + * // "measurements": [], * // "name": "my_name", - * // "response": {} + * // "parameters": [], + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "webAccessUris": {} * // } * } * @@ -151228,57 +154084,58 @@ export namespace aiplatform_v1 { * @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$Tensorboards$Delete, + complete( + params: Params$Resource$Projects$Locations$Studies$Trials$Complete, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Tensorboards$Delete, + complete( + params?: Params$Resource$Projects$Locations$Studies$Trials$Complete, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Tensorboards$Delete, + ): Promise>; + complete( + params: Params$Resource$Projects$Locations$Studies$Trials$Complete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Tensorboards$Delete, + complete( + params: Params$Resource$Projects$Locations$Studies$Trials$Complete, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Tensorboards$Delete, - callback: BodyResponseCallback + complete( + params: Params$Resource$Projects$Locations$Studies$Trials$Complete, + callback: BodyResponseCallback ): void; - delete( - callback: BodyResponseCallback + complete( + callback: BodyResponseCallback ): void; - delete( + complete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Trials$Complete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Delete; + {}) as Params$Resource$Projects$Locations$Studies$Trials$Complete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Tensorboards$Delete; + params = + {} as Params$Resource$Projects$Locations$Studies$Trials$Complete; options = {}; } @@ -151291,8 +154148,11 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+name}:complete').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options @@ -151303,17 +154163,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Gets a Tensorboard. + * Adds a user provided Trial to a Study. * @example * ```js * // Before running the sample: @@ -151334,10 +154196,7 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -151345,27 +154204,45 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.get({ - * // Required. The name of the Tensorboard resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', + * const res = await aiplatform.projects.locations.studies.trials.create({ + * // Required. The resource name of the Study to create the Trial in. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + * parent: 'projects/my-project/locations/my-location/studies/my-studie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "clientId": "my_clientId", + * // "customJob": "my_customJob", + * // "endTime": "my_endTime", + * // "finalMeasurement": {}, + * // "id": "my_id", + * // "infeasibleReason": "my_infeasibleReason", + * // "measurements": [], + * // "name": "my_name", + * // "parameters": [], + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "webAccessUris": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "blobStoragePathPrefix": "my_blobStoragePathPrefix", - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "encryptionSpec": {}, - * // "etag": "my_etag", - * // "isDefault": false, - * // "labels": {}, + * // "clientId": "my_clientId", + * // "customJob": "my_customJob", + * // "endTime": "my_endTime", + * // "finalMeasurement": {}, + * // "id": "my_id", + * // "infeasibleReason": "my_infeasibleReason", + * // "measurements": [], * // "name": "my_name", - * // "runCount": 0, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "updateTime": "my_updateTime" + * // "parameters": [], + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "webAccessUris": {} * // } * } * @@ -151381,61 +154258,57 @@ export namespace aiplatform_v1 { * @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$Tensorboards$Get, + create( + params: Params$Resource$Projects$Locations$Studies$Trials$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Tensorboards$Get, + create( + params?: Params$Resource$Projects$Locations$Studies$Trials$Create, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - get( - params: Params$Resource$Projects$Locations$Tensorboards$Get, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Studies$Trials$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Tensorboards$Get, + create( + params: Params$Resource$Projects$Locations$Studies$Trials$Create, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Tensorboards$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Studies$Trials$Create, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + create( + callback: BodyResponseCallback ): void; - get( + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Trials$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Get; + {}) as Params$Resource$Projects$Locations$Studies$Trials$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Tensorboards$Get; + params = {} as Params$Resource$Projects$Locations$Studies$Trials$Create; options = {}; } @@ -151448,31 +154321,34 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+parent}/trials').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Lists Tensorboards in a Location. + * Deletes a Trial. * @example * ```js * // Before running the sample: @@ -151493,10 +154369,7 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -151504,27 +154377,14 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.list({ - * // Lists the Tensorboards that match the filter expression. - * filter: 'placeholder-value', - * // Field to use to sort the list. - * orderBy: 'placeholder-value', - * // The maximum number of Tensorboards to return. The service may return fewer than this value. If unspecified, at most 100 Tensorboards are returned. The maximum value is 100; values above 100 are coerced to 100. - * pageSize: 'placeholder-value', - * // A page token, received from a previous TensorboardService.ListTensorboards call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboards must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The resource name of the Location to list Tensorboards. Format: `projects/{project\}/locations/{location\}` - * parent: 'projects/my-project/locations/my-location', - * // Mask specifying which fields to read. - * readMask: 'placeholder-value', + * const res = await aiplatform.projects.locations.studies.trials.delete({ + * // Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', * }); * console.log(res.data); * * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "tensorboards": [] - * // } + * // {} * } * * main().catch(e => { @@ -151539,61 +154399,53 @@ export namespace aiplatform_v1 { * @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$Tensorboards$List, + delete( + params: Params$Resource$Projects$Locations$Studies$Trials$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Tensorboards$List, + delete( + params?: Params$Resource$Projects$Locations$Studies$Trials$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Tensorboards$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Studies$Trials$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Tensorboards$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Tensorboards$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Studies$Trials$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Studies$Trials$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Trials$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$List; + {}) as Params$Resource$Projects$Locations$Studies$Trials$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Tensorboards$List; + params = {} as Params$Resource$Projects$Locations$Studies$Trials$Delete; options = {}; } @@ -151606,34 +154458,29 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/tensorboards').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates a Tensorboard. + * Gets a Trial. * @example * ```js * // Before running the sample: @@ -151662,41 +154509,26 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.patch({ - * // Output only. Name of the Tensorboard. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', - * // Required. Field mask is used to specify the fields to be overwritten in the Tensorboard resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "blobStoragePathPrefix": "my_blobStoragePathPrefix", - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "encryptionSpec": {}, - * // "etag": "my_etag", - * // "isDefault": false, - * // "labels": {}, - * // "name": "my_name", - * // "runCount": 0, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "updateTime": "my_updateTime" - * // } - * }, + * const res = await aiplatform.projects.locations.studies.trials.get({ + * // Required. The name of the Trial resource. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "clientId": "my_clientId", + * // "customJob": "my_customJob", + * // "endTime": "my_endTime", + * // "finalMeasurement": {}, + * // "id": "my_id", + * // "infeasibleReason": "my_infeasibleReason", + * // "measurements": [], * // "name": "my_name", - * // "response": {} + * // "parameters": [], + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "webAccessUris": {} * // } * } * @@ -151712,57 +154544,57 @@ export namespace aiplatform_v1 { * @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$Tensorboards$Patch, + get( + params: Params$Resource$Projects$Locations$Studies$Trials$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Tensorboards$Patch, + get( + params?: Params$Resource$Projects$Locations$Studies$Trials$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Tensorboards$Patch, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Studies$Trials$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Tensorboards$Patch, + get( + params: Params$Resource$Projects$Locations$Studies$Trials$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Tensorboards$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Studies$Trials$Get, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - patch( + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Trials$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Patch; + {}) as Params$Resource$Projects$Locations$Studies$Trials$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Tensorboards$Patch; + params = {} as Params$Resource$Projects$Locations$Studies$Trials$Get; options = {}; } @@ -151776,7 +154608,7 @@ export namespace aiplatform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -151787,17 +154619,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Returns the storage size for a given TensorBoard instance. + * Lists the Trials associated with a Study. * @example * ```js * // Before running the sample: @@ -151826,16 +154660,20 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.readSize({ - * // Required. The name of the Tensorboard resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - * tensorboard: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', + * const res = await aiplatform.projects.locations.studies.trials.list({ + * // Optional. The number of Trials to retrieve per "page" of results. If unspecified, the service will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A page token to request the next page of results. If unspecified, there are no subsequent pages. + * pageToken: 'placeholder-value', + * // Required. The resource name of the Study to list the Trial from. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + * parent: 'projects/my-project/locations/my-location/studies/my-studie', * }); * console.log(res.data); * * // Example response * // { - * // "storageSizeByte": "my_storageSizeByte" + * // "nextPageToken": "my_nextPageToken", + * // "trials": [] * // } * } * @@ -151851,61 +154689,61 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - readSize( - params: Params$Resource$Projects$Locations$Tensorboards$Readsize, + list( + params: Params$Resource$Projects$Locations$Studies$Trials$List, options: StreamMethodOptions ): Promise>; - readSize( - params?: Params$Resource$Projects$Locations$Tensorboards$Readsize, + list( + params?: Params$Resource$Projects$Locations$Studies$Trials$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - readSize( - params: Params$Resource$Projects$Locations$Tensorboards$Readsize, + list( + params: Params$Resource$Projects$Locations$Studies$Trials$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - readSize( - params: Params$Resource$Projects$Locations$Tensorboards$Readsize, + list( + params: Params$Resource$Projects$Locations$Studies$Trials$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - readSize( - params: Params$Resource$Projects$Locations$Tensorboards$Readsize, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Studies$Trials$List, + callback: BodyResponseCallback ): void; - readSize( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - readSize( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Readsize - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Trials$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Readsize; + {}) as Params$Resource$Projects$Locations$Studies$Trials$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Tensorboards$Readsize; + params = {} as Params$Resource$Projects$Locations$Studies$Trials$List; options = {}; } @@ -151918,7 +154756,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+tensorboard}:readSize').replace( + url: (rootUrl + '/v1/{+parent}/trials').replace( /([^:]\/)\/+/g, '$1' ), @@ -151928,24 +154766,24 @@ export namespace aiplatform_v1 { options ), params, - requiredParams: ['tensorboard'], - pathParams: ['tensorboard'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Returns a list of monthly active users for a given TensorBoard instance. + * Lists the pareto-optimal Trials for multi-objective Study or the optimal Trials for single-objective Study. The definition of pareto-optimal can be checked in wiki page. https://en.wikipedia.org/wiki/Pareto_efficiency * @example * ```js * // Before running the sample: @@ -151974,16 +154812,22 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.readUsage({ - * // Required. The name of the Tensorboard resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - * tensorboard: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', - * }); + * const res = + * await aiplatform.projects.locations.studies.trials.listOptimalTrials({ + * // Required. The name of the Study that the optimal Trial belongs to. + * parent: 'projects/my-project/locations/my-location/studies/my-studie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "monthlyUsageData": {} + * // "optimalTrials": [] * // } * } * @@ -151999,62 +154843,62 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - readUsage( - params: Params$Resource$Projects$Locations$Tensorboards$Readusage, + listOptimalTrials( + params: Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials, options: StreamMethodOptions ): Promise>; - readUsage( - params?: Params$Resource$Projects$Locations$Tensorboards$Readusage, + listOptimalTrials( + params?: Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - readUsage( - params: Params$Resource$Projects$Locations$Tensorboards$Readusage, + listOptimalTrials( + params: Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - readUsage( - params: Params$Resource$Projects$Locations$Tensorboards$Readusage, + listOptimalTrials( + params: Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - readUsage( - params: Params$Resource$Projects$Locations$Tensorboards$Readusage, - callback: BodyResponseCallback + listOptimalTrials( + params: Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials, + callback: BodyResponseCallback ): void; - readUsage( - callback: BodyResponseCallback + listOptimalTrials( + callback: BodyResponseCallback ): void; - readUsage( + listOptimalTrials( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Readusage - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Readusage; + {}) as Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Readusage; + {} as Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials; options = {}; } @@ -152067,137 +154911,34 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+tensorboard}:readUsage').replace( + url: (rootUrl + '/v1/{+parent}/trials:listOptimalTrials').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['tensorboard'], - pathParams: ['tensorboard'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } - } - - export interface Params$Resource$Projects$Locations$Tensorboards$Batchread extends StandardParameters { - /** - * Required. The resource name of the Tensorboard containing TensorboardTimeSeries to read data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}`. The TensorboardTimeSeries referenced by time_series must be sub resources of this Tensorboard. - */ - tensorboard?: string; - /** - * Required. The resource names of the TensorboardTimeSeries to read data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` - */ - timeSeries?: string[]; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Create extends StandardParameters { - /** - * Required. The resource name of the Location to create the Tensorboard in. Format: `projects/{project\}/locations/{location\}` - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1Tensorboard; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Delete extends StandardParameters { - /** - * Required. The name of the Tensorboard to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Get extends StandardParameters { - /** - * Required. The name of the Tensorboard resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Tensorboards$List extends StandardParameters { - /** - * Lists the Tensorboards that match the filter expression. - */ - filter?: string; - /** - * Field to use to sort the list. - */ - orderBy?: string; - /** - * The maximum number of Tensorboards to return. The service may return fewer than this value. If unspecified, at most 100 Tensorboards are returned. The maximum value is 100; values above 100 are coerced to 100. - */ - pageSize?: number; - /** - * A page token, received from a previous TensorboardService.ListTensorboards call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboards must match the call that provided the page token. - */ - pageToken?: string; - /** - * Required. The resource name of the Location to list Tensorboards. Format: `projects/{project\}/locations/{location\}` - */ - parent?: string; - /** - * Mask specifying which fields to read. - */ - readMask?: string; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Patch extends StandardParameters { - /** - * Output only. Name of the Tensorboard. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - */ - name?: string; - /** - * Required. Field mask is used to specify the fields to be overwritten in the Tensorboard resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1Tensorboard; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Readsize extends StandardParameters { - /** - * Required. The name of the Tensorboard resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - */ - tensorboard?: string; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Readusage extends StandardParameters { - /** - * Required. The name of the Tensorboard resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - */ - tensorboard?: string; - } - - export class Resource$Projects$Locations$Tensorboards$Experiments { - context: APIRequestContext; - operations: Resource$Projects$Locations$Tensorboards$Experiments$Operations; - runs: Resource$Projects$Locations$Tensorboards$Experiments$Runs; - constructor(context: APIRequestContext) { - this.context = context; - this.operations = - new Resource$Projects$Locations$Tensorboards$Experiments$Operations( - this.context - ); - this.runs = new Resource$Projects$Locations$Tensorboards$Experiments$Runs( - this.context - ); - } /** - * Batch create TensorboardTimeSeries that belong to a TensorboardExperiment. + * Stops a Trial. * @example * ```js * // Before running the sample: @@ -152226,25 +154967,32 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.batchCreate({ - * // Required. The resource name of the TensorboardExperiment to create the TensorboardTimeSeries in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` The TensorboardRuns referenced by the parent fields in the CreateTensorboardTimeSeriesRequest messages must be sub resources of this TensorboardExperiment. - * parent: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', + * const res = await aiplatform.projects.locations.studies.trials.stop({ + * // Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "requests": [] - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "tensorboardTimeSeries": [] + * // "clientId": "my_clientId", + * // "customJob": "my_customJob", + * // "endTime": "my_endTime", + * // "finalMeasurement": {}, + * // "id": "my_id", + * // "infeasibleReason": "my_infeasibleReason", + * // "measurements": [], + * // "name": "my_name", + * // "parameters": [], + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "webAccessUris": {} * // } * } * @@ -152260,62 +155008,57 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - batchCreate( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate, + stop( + params: Params$Resource$Projects$Locations$Studies$Trials$Stop, options: StreamMethodOptions ): Promise>; - batchCreate( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate, + stop( + params?: Params$Resource$Projects$Locations$Studies$Trials$Stop, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - batchCreate( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate, + ): Promise>; + stop( + params: Params$Resource$Projects$Locations$Studies$Trials$Stop, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - batchCreate( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate, + stop( + params: Params$Resource$Projects$Locations$Studies$Trials$Stop, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - batchCreate( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate, - callback: BodyResponseCallback + stop( + params: Params$Resource$Projects$Locations$Studies$Trials$Stop, + callback: BodyResponseCallback ): void; - batchCreate( - callback: BodyResponseCallback + stop( + callback: BodyResponseCallback ): void; - batchCreate( + stop( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Trials$Stop + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate; + {}) as Params$Resource$Projects$Locations$Studies$Trials$Stop; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate; + params = {} as Params$Resource$Projects$Locations$Studies$Trials$Stop; options = {}; } @@ -152328,34 +155071,31 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}:batchCreate').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}:stop').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Creates a TensorboardExperiment. + * Adds one or more Trials to a Study, with parameter values suggested by Vertex AI Vizier. Returns a long-running operation associated with the generation of Trial suggestions. When this long-running operation succeeds, it will contain a SuggestTrialsResponse. * @example * ```js * // Before running the sample: @@ -152384,41 +155124,29 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.create({ - * // Required. The resource name of the Tensorboard to create the TensorboardExperiment in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - * parent: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', - * // Required. The ID to use for the Tensorboard experiment, which becomes the final component of the Tensorboard experiment's resource name. This value should be 1-128 characters, and valid characters are `/a-z-/`. - * tensorboardExperimentId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "source": "my_source", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); + * const res = await aiplatform.projects.locations.studies.trials.suggest({ + * // Required. The project and location that the Study belongs to. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + * parent: 'projects/my-project/locations/my-location/studies/my-studie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "clientId": "my_clientId", + * // "contexts": [], + * // "suggestionCount": 0 + * // } + * }, + * }); + * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "source": "my_source", - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -152434,62 +155162,58 @@ export namespace aiplatform_v1 { * @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$Tensorboards$Experiments$Create, + suggest( + params: Params$Resource$Projects$Locations$Studies$Trials$Suggest, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Create, + suggest( + params?: Params$Resource$Projects$Locations$Studies$Trials$Suggest, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - create( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Create, + ): Promise>; + suggest( + params: Params$Resource$Projects$Locations$Studies$Trials$Suggest, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Create, + suggest( + params: Params$Resource$Projects$Locations$Studies$Trials$Suggest, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Create, - callback: BodyResponseCallback + suggest( + params: Params$Resource$Projects$Locations$Studies$Trials$Suggest, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + suggest( + callback: BodyResponseCallback ): void; - create( + suggest( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Trials$Suggest + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Create; + {}) as Params$Resource$Projects$Locations$Studies$Trials$Suggest; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Create; + {} as Params$Resource$Projects$Locations$Studies$Trials$Suggest; options = {}; } @@ -152502,7 +155226,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/experiments').replace( + url: (rootUrl + '/v1/{+parent}/trials:suggest').replace( /([^:]\/)\/+/g, '$1' ), @@ -152517,19 +155241,262 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Studies$Trials$Addtrialmeasurement extends StandardParameters { + /** + * Required. The name of the trial to add measurement. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + */ + trialName?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1AddTrialMeasurementRequest; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$Checktrialearlystoppingstate extends StandardParameters { + /** + * Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + */ + trialName?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1CheckTrialEarlyStoppingStateRequest; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$Complete extends StandardParameters { + /** + * Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1CompleteTrialRequest; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$Create extends StandardParameters { + /** + * Required. The resource name of the Study to create the Trial in. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1Trial; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$Delete extends StandardParameters { + /** + * Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$Get extends StandardParameters { + /** + * Required. The name of the Trial resource. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$List extends StandardParameters { + /** + * Optional. The number of Trials to retrieve per "page" of results. If unspecified, the service will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. A page token to request the next page of results. If unspecified, there are no subsequent pages. + */ + pageToken?: string; + /** + * Required. The resource name of the Study to list the Trial from. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$Listoptimaltrials extends StandardParameters { + /** + * Required. The name of the Study that the optimal Trial belongs to. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1ListOptimalTrialsRequest; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$Stop extends StandardParameters { + /** + * Required. The Trial's name. Format: `projects/{project\}/locations/{location\}/studies/{study\}/trials/{trial\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1StopTrialRequest; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$Suggest extends StandardParameters { + /** + * Required. The project and location that the Study belongs to. Format: `projects/{project\}/locations/{location\}/studies/{study\}` + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1SuggestTrialsRequest; + } + + export class Resource$Projects$Locations$Studies$Trials$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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.studies.trials.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial/operations/my-operation', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Studies$Trials$Operations$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel, + options?: MethodOptions + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Studies$Trials$Operations$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback ); + } else { + return createAPIRequest(parameters); } } /** - * Deletes a TensorboardExperiment. + * 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`. * @example * ```js * // Before running the sample: @@ -152559,20 +155526,14 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.tensorboards.experiments.delete({ - * // Required. The name of the TensorboardExperiment to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', + * await aiplatform.projects.locations.studies.trials.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial/operations/my-operation', * }); * console.log(res.data); * * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } + * // {} * } * * main().catch(e => { @@ -152588,57 +155549,53 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete, + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete, + params?: Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete, options?: MethodOptions - ): Promise>; + ): Promise>; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete, + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; delete( - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete, + callback: BodyResponseCallback ): void; + delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete; + {}) as Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete; + {} as Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete; options = {}; } @@ -152663,17 +155620,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a TensorboardExperiment. + * 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. * @example * ```js * // Before running the sample: @@ -152694,10 +155651,7 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -152705,22 +155659,21 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.experiments.get({ - * // Required. The name of the TensorboardExperiment resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', - * }); + * const res = await aiplatform.projects.locations.studies.trials.operations.get( + * { + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial/operations/my-operation', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "source": "my_source", - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -152737,61 +155690,57 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Get, + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Get, + params?: Params$Resource$Projects$Locations$Studies$Trials$Operations$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Get, + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Get, + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Get, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Get, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Trials$Operations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Get; + {}) as Params$Resource$Projects$Locations$Studies$Trials$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Get; + {} as Params$Resource$Projects$Locations$Studies$Trials$Operations$Get; options = {}; } @@ -152816,19 +155765,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Lists TensorboardExperiments in a Location. + * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. * @example * ```js * // Before running the sample: @@ -152849,10 +155796,7 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -152860,29 +155804,26 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.experiments.list( - * { - * // Lists the TensorboardExperiments that match the filter expression. + * const res = + * await aiplatform.projects.locations.studies.trials.operations.list({ + * // The standard list filter. * filter: 'placeholder-value', - * // Field to use to sort the list. - * orderBy: 'placeholder-value', - * // The maximum number of TensorboardExperiments to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardExperiments are returned. The maximum value is 1000; values above 1000 are coerced to 1000. + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial', + * // The standard list page size. * pageSize: 'placeholder-value', - * // A page token, received from a previous TensorboardService.ListTensorboardExperiments call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardExperiments must match the call that provided the page token. + * // The standard list page token. * pageToken: 'placeholder-value', - * // Required. The resource name of the Tensorboard to list TensorboardExperiments. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - * parent: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', - * // Mask specifying which fields to read. - * readMask: 'placeholder-value', - * }, - * ); + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "tensorboardExperiments": [] + * // "operations": [], + * // "unreachable": [] * // } * } * @@ -152899,61 +155840,61 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$List, + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$List, + params?: Params$Resource$Projects$Locations$Studies$Trials$Operations$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$List, + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$List, + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Studies$Trials$Operations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$List; + {}) as Params$Resource$Projects$Locations$Studies$Trials$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$List; + {} as Params$Resource$Projects$Locations$Studies$Trials$Operations$List; options = {}; } @@ -152966,7 +155907,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/experiments').replace( + url: (rootUrl + '/v1/{+name}/operations').replace( /([^:]\/)\/+/g, '$1' ), @@ -152976,24 +155917,24 @@ export namespace aiplatform_v1 { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Updates a TensorboardExperiment. + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. * @example * ```js * // Before running the sample: @@ -153023,39 +155964,7434 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.tensorboards.experiments.patch({ - * // Output only. Name of the TensorboardExperiment. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', - * // Required. Field mask is used to specify the fields to be overwritten in the TensorboardExperiment resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. - * updateMask: 'placeholder-value', + * await aiplatform.projects.locations.studies.trials.operations.wait({ + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/studies/my-studie/trials/my-trial/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }); + * console.log(res.data); * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "source": "my_source", - * // "updateTime": "my_updateTime" - * // } + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + wait( + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait, + options: StreamMethodOptions + ): Promise>; + wait( + params?: Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait, + options?: MethodOptions + ): Promise>; + wait( + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + wait( + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + wait( + params: Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait, + callback: BodyResponseCallback + ): void; + wait( + callback: BodyResponseCallback + ): void; + wait( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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$Studies$Trials$Operations$Cancel extends StandardParameters { + /** + * The name of the operation resource to be cancelled. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$Operations$Delete extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$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; + /** + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Projects$Locations$Studies$Trials$Operations$Wait extends StandardParameters { + /** + * The name of the operation resource to wait on. + */ + name?: string; + /** + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + */ + timeout?: string; + } + + export class Resource$Projects$Locations$Tensorboards { + context: APIRequestContext; + experiments: Resource$Projects$Locations$Tensorboards$Experiments; + operations: Resource$Projects$Locations$Tensorboards$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.experiments = + new Resource$Projects$Locations$Tensorboards$Experiments(this.context); + this.operations = new Resource$Projects$Locations$Tensorboards$Operations( + this.context + ); + } + + /** + * Reads multiple TensorboardTimeSeries' data. The data point number limit is 1000 for scalars, 100 for tensors and blob references. If the number of data points stored is less than the limit, all data is returned. Otherwise, the number limit of data points is randomly selected from this time series and returned. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.tensorboards.batchRead({ + * // Required. The resource name of the Tensorboard containing TensorboardTimeSeries to read data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}`. The TensorboardTimeSeries referenced by time_series must be sub resources of this Tensorboard. + * tensorboard: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', + * // Required. The resource names of the TensorboardTimeSeries to read data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + * timeSeries: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "timeSeriesData": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + batchRead( + params: Params$Resource$Projects$Locations$Tensorboards$Batchread, + options: StreamMethodOptions + ): Promise>; + batchRead( + params?: Params$Resource$Projects$Locations$Tensorboards$Batchread, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + batchRead( + params: Params$Resource$Projects$Locations$Tensorboards$Batchread, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + batchRead( + params: Params$Resource$Projects$Locations$Tensorboards$Batchread, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + batchRead( + params: Params$Resource$Projects$Locations$Tensorboards$Batchread, + callback: BodyResponseCallback + ): void; + batchRead( + callback: BodyResponseCallback + ): void; + batchRead( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Batchread + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Batchread; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Batchread; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+tensorboard}:batchRead').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['tensorboard'], + pathParams: ['tensorboard'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Creates a Tensorboard. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.tensorboards.create({ + * // Required. The resource name of the Location to create the Tensorboard in. Format: `projects/{project\}/locations/{location\}` + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "blobStoragePathPrefix": "my_blobStoragePathPrefix", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "encryptionSpec": {}, + * // "etag": "my_etag", + * // "isDefault": false, + * // "labels": {}, + * // "name": "my_name", + * // "runCount": 0, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Tensorboards$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Tensorboards$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Tensorboards$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Tensorboards$Create, + callback: BodyResponseCallback + ): void; + create( + callback: BodyResponseCallback + ): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Tensorboards$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/tensorboards').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a Tensorboard. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.tensorboards.delete({ + * // Required. The name of the Tensorboard to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Tensorboards$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Delete, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Delete, + callback: BodyResponseCallback + ): void; + delete( + callback: BodyResponseCallback + ): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Tensorboards$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets a Tensorboard. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.tensorboards.get({ + * // Required. The name of the Tensorboard resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "blobStoragePathPrefix": "my_blobStoragePathPrefix", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "encryptionSpec": {}, + * // "etag": "my_etag", + * // "isDefault": false, + * // "labels": {}, + * // "name": "my_name", + * // "runCount": 0, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Tensorboards$Get, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Tensorboards$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists Tensorboards in a Location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.tensorboards.list({ + * // Lists the Tensorboards that match the filter expression. + * filter: 'placeholder-value', + * // Field to use to sort the list. + * orderBy: 'placeholder-value', + * // The maximum number of Tensorboards to return. The service may return fewer than this value. If unspecified, at most 100 Tensorboards are returned. The maximum value is 100; values above 100 are coerced to 100. + * pageSize: 'placeholder-value', + * // A page token, received from a previous TensorboardService.ListTensorboards call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboards must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The resource name of the Location to list Tensorboards. Format: `projects/{project\}/locations/{location\}` + * parent: 'projects/my-project/locations/my-location', + * // Mask specifying which fields to read. + * readMask: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "tensorboards": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Tensorboards$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Tensorboards$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tensorboards$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tensorboards$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Tensorboards$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/tensorboards').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates a Tensorboard. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.tensorboards.patch({ + * // Output only. Name of the Tensorboard. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', + * // Required. Field mask is used to specify the fields to be overwritten in the Tensorboard resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "blobStoragePathPrefix": "my_blobStoragePathPrefix", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "encryptionSpec": {}, + * // "etag": "my_etag", + * // "isDefault": false, + * // "labels": {}, + * // "name": "my_name", + * // "runCount": 0, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Tensorboards$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Tensorboards$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Tensorboards$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Tensorboards$Patch, + callback: BodyResponseCallback + ): void; + patch( + callback: BodyResponseCallback + ): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Tensorboards$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the storage size for a given TensorBoard instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.tensorboards.readSize({ + * // Required. The name of the Tensorboard resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + * tensorboard: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "storageSizeByte": "my_storageSizeByte" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + readSize( + params: Params$Resource$Projects$Locations$Tensorboards$Readsize, + options: StreamMethodOptions + ): Promise>; + readSize( + params?: Params$Resource$Projects$Locations$Tensorboards$Readsize, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + readSize( + params: Params$Resource$Projects$Locations$Tensorboards$Readsize, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + readSize( + params: Params$Resource$Projects$Locations$Tensorboards$Readsize, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + readSize( + params: Params$Resource$Projects$Locations$Tensorboards$Readsize, + callback: BodyResponseCallback + ): void; + readSize( + callback: BodyResponseCallback + ): void; + readSize( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Readsize + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Readsize; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Tensorboards$Readsize; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+tensorboard}:readSize').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['tensorboard'], + pathParams: ['tensorboard'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Returns a list of monthly active users for a given TensorBoard instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.tensorboards.readUsage({ + * // Required. The name of the Tensorboard resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + * tensorboard: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "monthlyUsageData": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + readUsage( + params: Params$Resource$Projects$Locations$Tensorboards$Readusage, + options: StreamMethodOptions + ): Promise>; + readUsage( + params?: Params$Resource$Projects$Locations$Tensorboards$Readusage, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + readUsage( + params: Params$Resource$Projects$Locations$Tensorboards$Readusage, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + readUsage( + params: Params$Resource$Projects$Locations$Tensorboards$Readusage, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + readUsage( + params: Params$Resource$Projects$Locations$Tensorboards$Readusage, + callback: BodyResponseCallback + ): void; + readUsage( + callback: BodyResponseCallback + ): void; + readUsage( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Readusage + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Readusage; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Readusage; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+tensorboard}:readUsage').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['tensorboard'], + pathParams: ['tensorboard'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Tensorboards$Batchread extends StandardParameters { + /** + * Required. The resource name of the Tensorboard containing TensorboardTimeSeries to read data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}`. The TensorboardTimeSeries referenced by time_series must be sub resources of this Tensorboard. + */ + tensorboard?: string; + /** + * Required. The resource names of the TensorboardTimeSeries to read data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + */ + timeSeries?: string[]; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Create extends StandardParameters { + /** + * Required. The resource name of the Location to create the Tensorboard in. Format: `projects/{project\}/locations/{location\}` + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1Tensorboard; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Delete extends StandardParameters { + /** + * Required. The name of the Tensorboard to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Get extends StandardParameters { + /** + * Required. The name of the Tensorboard resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$List extends StandardParameters { + /** + * Lists the Tensorboards that match the filter expression. + */ + filter?: string; + /** + * Field to use to sort the list. + */ + orderBy?: string; + /** + * The maximum number of Tensorboards to return. The service may return fewer than this value. If unspecified, at most 100 Tensorboards are returned. The maximum value is 100; values above 100 are coerced to 100. + */ + pageSize?: number; + /** + * A page token, received from a previous TensorboardService.ListTensorboards call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboards must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The resource name of the Location to list Tensorboards. Format: `projects/{project\}/locations/{location\}` + */ + parent?: string; + /** + * Mask specifying which fields to read. + */ + readMask?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Patch extends StandardParameters { + /** + * Output only. Name of the Tensorboard. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + */ + name?: string; + /** + * Required. Field mask is used to specify the fields to be overwritten in the Tensorboard resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1Tensorboard; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Readsize extends StandardParameters { + /** + * Required. The name of the Tensorboard resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + */ + tensorboard?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Readusage extends StandardParameters { + /** + * Required. The name of the Tensorboard resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + */ + tensorboard?: string; + } + + export class Resource$Projects$Locations$Tensorboards$Experiments { + context: APIRequestContext; + operations: Resource$Projects$Locations$Tensorboards$Experiments$Operations; + runs: Resource$Projects$Locations$Tensorboards$Experiments$Runs; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = + new Resource$Projects$Locations$Tensorboards$Experiments$Operations( + this.context + ); + this.runs = new Resource$Projects$Locations$Tensorboards$Experiments$Runs( + this.context + ); + } + + /** + * Batch create TensorboardTimeSeries that belong to a TensorboardExperiment. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.batchCreate({ + * // Required. The resource name of the TensorboardExperiment to create the TensorboardTimeSeries in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` The TensorboardRuns referenced by the parent fields in the CreateTensorboardTimeSeriesRequest messages must be sub resources of this TensorboardExperiment. + * parent: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "requests": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "tensorboardTimeSeries": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + batchCreate( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate, + options: StreamMethodOptions + ): Promise>; + batchCreate( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + batchCreate( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + batchCreate( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + batchCreate( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate, + callback: BodyResponseCallback + ): void; + batchCreate( + callback: BodyResponseCallback + ): void; + batchCreate( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}:batchCreate').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Creates a TensorboardExperiment. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.create({ + * // Required. The resource name of the Tensorboard to create the TensorboardExperiment in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + * parent: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', + * // Required. The ID to use for the Tensorboard experiment, which becomes the final component of the Tensorboard experiment's resource name. This value should be 1-128 characters, and valid characters are `/a-z-/`. + * tensorboardExperimentId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "source": "my_source", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "source": "my_source", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Create, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + create( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Create, + callback: BodyResponseCallback + ): void; + create( + callback: BodyResponseCallback + ): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/experiments').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Deletes a TensorboardExperiment. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.delete({ + * // Required. The name of the TensorboardExperiment to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete, + callback: BodyResponseCallback + ): void; + delete( + callback: BodyResponseCallback + ): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets a TensorboardExperiment. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.tensorboards.experiments.get({ + * // Required. The name of the TensorboardExperiment resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "source": "my_source", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Get, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists TensorboardExperiments in a Location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.projects.locations.tensorboards.experiments.list( + * { + * // Lists the TensorboardExperiments that match the filter expression. + * filter: 'placeholder-value', + * // Field to use to sort the list. + * orderBy: 'placeholder-value', + * // The maximum number of TensorboardExperiments to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardExperiments are returned. The maximum value is 1000; values above 1000 are coerced to 1000. + * pageSize: 'placeholder-value', + * // A page token, received from a previous TensorboardService.ListTensorboardExperiments call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardExperiments must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The resource name of the Tensorboard to list TensorboardExperiments. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + * parent: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', + * // Mask specifying which fields to read. + * readMask: 'placeholder-value', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "tensorboardExperiments": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/experiments').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates a TensorboardExperiment. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.patch({ + * // Output only. Name of the TensorboardExperiment. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', + * // Required. Field mask is used to specify the fields to be overwritten in the TensorboardExperiment resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "source": "my_source", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "source": "my_source", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + patch( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch, + callback: BodyResponseCallback + ): void; + patch( + callback: BodyResponseCallback + ): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Write time series data points of multiple TensorboardTimeSeries in multiple TensorboardRun's. If any data fail to be ingested, an error is returned. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.write({ + * // Required. The resource name of the TensorboardExperiment to write data to. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + * tensorboardExperiment: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "writeRunDataRequests": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + write( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Write, + options: StreamMethodOptions + ): Promise>; + write( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Write, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + write( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Write, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + write( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Write, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + write( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Write, + callback: BodyResponseCallback + ): void; + write( + callback: BodyResponseCallback + ): void; + write( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Write + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Write; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Write; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+tensorboardExperiment}:write').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['tensorboardExperiment'], + pathParams: ['tensorboardExperiment'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate extends StandardParameters { + /** + * Required. The resource name of the TensorboardExperiment to create the TensorboardTimeSeries in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` The TensorboardRuns referenced by the parent fields in the CreateTensorboardTimeSeriesRequest messages must be sub resources of this TensorboardExperiment. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1BatchCreateTensorboardTimeSeriesRequest; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Create extends StandardParameters { + /** + * Required. The resource name of the Tensorboard to create the TensorboardExperiment in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + */ + parent?: string; + /** + * Required. The ID to use for the Tensorboard experiment, which becomes the final component of the Tensorboard experiment's resource name. This value should be 1-128 characters, and valid characters are `/a-z-/`. + */ + tensorboardExperimentId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1TensorboardExperiment; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete extends StandardParameters { + /** + * Required. The name of the TensorboardExperiment to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Get extends StandardParameters { + /** + * Required. The name of the TensorboardExperiment resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$List extends StandardParameters { + /** + * Lists the TensorboardExperiments that match the filter expression. + */ + filter?: string; + /** + * Field to use to sort the list. + */ + orderBy?: string; + /** + * The maximum number of TensorboardExperiments to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardExperiments are returned. The maximum value is 1000; values above 1000 are coerced to 1000. + */ + pageSize?: number; + /** + * A page token, received from a previous TensorboardService.ListTensorboardExperiments call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardExperiments must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The resource name of the Tensorboard to list TensorboardExperiments. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` + */ + parent?: string; + /** + * Mask specifying which fields to read. + */ + readMask?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch extends StandardParameters { + /** + * Output only. Name of the TensorboardExperiment. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + */ + name?: string; + /** + * Required. Field mask is used to specify the fields to be overwritten in the TensorboardExperiment resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1TensorboardExperiment; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Write extends StandardParameters { + /** + * Required. The resource name of the TensorboardExperiment to write data to. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + */ + tensorboardExperiment?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1WriteTensorboardExperimentDataRequest; + } + + export class Resource$Projects$Locations$Tensorboards$Experiments$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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.operations.cancel( + * { + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/operations/my-operation', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Operations$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel, + options?: MethodOptions + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.operations.delete( + * { + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/operations/my-operation', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Operations$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + 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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.operations.get( + * { + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/operations/my-operation', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Operations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + 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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.operations.list( + * { + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "operations": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Operations$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}/operations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.operations.wait( + * { + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + wait( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait, + options: StreamMethodOptions + ): Promise>; + wait( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait, + options?: MethodOptions + ): Promise>; + wait( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + wait( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + wait( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait, + callback: BodyResponseCallback + ): void; + wait( + callback: BodyResponseCallback + ): void; + wait( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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$Tensorboards$Experiments$Operations$Cancel extends StandardParameters { + /** + * The name of the operation resource to be cancelled. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$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; + /** + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait extends StandardParameters { + /** + * The name of the operation resource to wait on. + */ + name?: string; + /** + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + */ + timeout?: string; + } + + export class Resource$Projects$Locations$Tensorboards$Experiments$Runs { + context: APIRequestContext; + operations: Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations; + timeSeries: Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = + new Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations( + this.context + ); + this.timeSeries = + new Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries( + this.context + ); + } + + /** + * Batch create TensorboardRuns. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.batchCreate( + * { + * // Required. The resource name of the TensorboardExperiment to create the TensorboardRuns in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` The parent field in the CreateTensorboardRunRequest messages must match this field. + * parent: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "requests": [] + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "tensorboardRuns": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + batchCreate( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate, + options: StreamMethodOptions + ): Promise>; + batchCreate( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + batchCreate( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + batchCreate( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + batchCreate( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate, + callback: BodyResponseCallback + ): void; + batchCreate( + callback: BodyResponseCallback + ): void; + batchCreate( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/runs:batchCreate').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Creates a TensorboardRun. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.create({ + * // Required. The resource name of the TensorboardExperiment to create the TensorboardRun in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + * parent: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', + * // Required. The ID to use for the Tensorboard run, which becomes the final component of the Tensorboard run's resource name. This value should be 1-128 characters, and valid characters are `/a-z-/`. + * tensorboardRunId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + create( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create, + callback: BodyResponseCallback + ): void; + create( + callback: BodyResponseCallback + ): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/runs').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Deletes a TensorboardRun. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.delete({ + * // Required. The name of the TensorboardRun to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete, + callback: BodyResponseCallback + ): void; + delete( + callback: BodyResponseCallback + ): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets a TensorboardRun. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.get({ + * // Required. The name of the TensorboardRun resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists TensorboardRuns in a Location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.list({ + * // Lists the TensorboardRuns that match the filter expression. + * filter: 'placeholder-value', + * // Field to use to sort the list. + * orderBy: 'placeholder-value', + * // The maximum number of TensorboardRuns to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardRuns are returned. The maximum value is 1000; values above 1000 are coerced to 1000. + * pageSize: 'placeholder-value', + * // A page token, received from a previous TensorboardService.ListTensorboardRuns call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardRuns must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The resource name of the TensorboardExperiment to list TensorboardRuns. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + * parent: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', + * // Mask specifying which fields to read. + * readMask: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "tensorboardRuns": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/runs').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates a TensorboardRun. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.patch({ + * // Output only. Name of the TensorboardRun. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', + * // Required. Field mask is used to specify the fields to be overwritten in the TensorboardRun resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + patch( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch, + callback: BodyResponseCallback + ): void; + patch( + callback: BodyResponseCallback + ): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Write time series data points into multiple TensorboardTimeSeries under a TensorboardRun. If any data fail to be ingested, an error is returned. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.write({ + * // Required. The resource name of the TensorboardRun to write data to. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + * tensorboardRun: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "tensorboardRun": "my_tensorboardRun", + * // "timeSeriesData": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + write( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write, + options: StreamMethodOptions + ): Promise>; + write( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + write( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + write( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + write( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write, + callback: BodyResponseCallback + ): void; + write( + callback: BodyResponseCallback + ): void; + write( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+tensorboardRun}:write').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['tensorboardRun'], + pathParams: ['tensorboardRun'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate extends StandardParameters { + /** + * Required. The resource name of the TensorboardExperiment to create the TensorboardRuns in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` The parent field in the CreateTensorboardRunRequest messages must match this field. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1BatchCreateTensorboardRunsRequest; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create extends StandardParameters { + /** + * Required. The resource name of the TensorboardExperiment to create the TensorboardRun in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + */ + parent?: string; + /** + * Required. The ID to use for the Tensorboard run, which becomes the final component of the Tensorboard run's resource name. This value should be 1-128 characters, and valid characters are `/a-z-/`. + */ + tensorboardRunId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1TensorboardRun; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete extends StandardParameters { + /** + * Required. The name of the TensorboardRun to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get extends StandardParameters { + /** + * Required. The name of the TensorboardRun resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List extends StandardParameters { + /** + * Lists the TensorboardRuns that match the filter expression. + */ + filter?: string; + /** + * Field to use to sort the list. + */ + orderBy?: string; + /** + * The maximum number of TensorboardRuns to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardRuns are returned. The maximum value is 1000; values above 1000 are coerced to 1000. + */ + pageSize?: number; + /** + * A page token, received from a previous TensorboardService.ListTensorboardRuns call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardRuns must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The resource name of the TensorboardExperiment to list TensorboardRuns. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + */ + parent?: string; + /** + * Mask specifying which fields to read. + */ + readMask?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch extends StandardParameters { + /** + * Output only. Name of the TensorboardRun. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + */ + name?: string; + /** + * Required. Field mask is used to specify the fields to be overwritten in the TensorboardRun resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1TensorboardRun; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write extends StandardParameters { + /** + * Required. The resource name of the TensorboardRun to write data to. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + */ + tensorboardRun?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1WriteTensorboardRunDataRequest; + } + + export class Resource$Projects$Locations$Tensorboards$Experiments$Runs$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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.operations.cancel( + * { + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/operations/my-operation', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Operations$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel, + options?: MethodOptions + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.operations.delete( + * { + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/operations/my-operation', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Operations$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + 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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.operations.get( + * { + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/operations/my-operation', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Operations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + 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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.operations.list( + * { + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "operations": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Operations$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}/operations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.operations.wait( + * { + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + wait( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait, + options: StreamMethodOptions + ): Promise>; + wait( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait, + options?: MethodOptions + ): Promise>; + wait( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + wait( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + wait( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait, + callback: BodyResponseCallback + ): void; + wait( + callback: BodyResponseCallback + ): void; + wait( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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$Tensorboards$Experiments$Runs$Operations$Cancel extends StandardParameters { + /** + * The name of the operation resource to be cancelled. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$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; + /** + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait extends StandardParameters { + /** + * The name of the operation resource to wait on. + */ + name?: string; + /** + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + */ + timeout?: string; + } + + export class Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries { + context: APIRequestContext; + operations: Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = + new Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations( + this.context + ); + } + + /** + * Creates a TensorboardTimeSeries. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.create( + * { + * // Required. The resource name of the TensorboardRun to create the TensorboardTimeSeries in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + * parent: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', + * // Optional. The user specified unique ID to use for the TensorboardTimeSeries, which becomes the final component of the TensorboardTimeSeries's resource name. This value should match "a-z0-9{0, 127\}" + * tensorboardTimeSeriesId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "metadata": {}, + * // "name": "my_name", + * // "pluginData": "my_pluginData", + * // "pluginName": "my_pluginName", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "metadata": {}, + * // "name": "my_name", + * // "pluginData": "my_pluginData", + * // "pluginName": "my_pluginName", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Timeseries$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + create( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create, + callback: BodyResponseCallback + ): void; + create( + callback: BodyResponseCallback + ): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/timeSeries').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Deletes a TensorboardTimeSeries. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.delete( + * { + * // Required. The name of the TensorboardTimeSeries to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Timeseries$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete, + callback: BodyResponseCallback + ): void; + delete( + callback: BodyResponseCallback + ): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Exports a TensorboardTimeSeries' data. Data is returned in paginated responses. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.exportTensorboardTimeSeries( + * { + * // Required. The resource name of the TensorboardTimeSeries to export data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + * tensorboardTimeSeries: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "filter": "my_filter", + * // "orderBy": "my_orderBy", + * // "pageSize": 0, + * // "pageToken": "my_pageToken" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "timeSeriesDataPoints": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + exportTensorboardTimeSeries( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries, + options: StreamMethodOptions + ): Promise>; + exportTensorboardTimeSeries( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + exportTensorboardTimeSeries( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + exportTensorboardTimeSeries( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + exportTensorboardTimeSeries( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries, + callback: BodyResponseCallback + ): void; + exportTensorboardTimeSeries( + callback: BodyResponseCallback + ): void; + exportTensorboardTimeSeries( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1/{+tensorboardTimeSeries}:exportTensorboardTimeSeries' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['tensorboardTimeSeries'], + pathParams: ['tensorboardTimeSeries'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Gets a TensorboardTimeSeries. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.get( + * { + * // Required. The name of the TensorboardTimeSeries resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "metadata": {}, + * // "name": "my_name", + * // "pluginData": "my_pluginData", + * // "pluginName": "my_pluginName", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Timeseries$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists TensorboardTimeSeries in a Location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.list( + * { + * // Lists the TensorboardTimeSeries that match the filter expression. + * filter: 'placeholder-value', + * // Field to use to sort the list. + * orderBy: 'placeholder-value', + * // The maximum number of TensorboardTimeSeries to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardTimeSeries are returned. The maximum value is 1000; values above 1000 are coerced to 1000. + * pageSize: 'placeholder-value', + * // A page token, received from a previous TensorboardService.ListTensorboardTimeSeries call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardTimeSeries must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The resource name of the TensorboardRun to list TensorboardTimeSeries. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + * parent: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', + * // Mask specifying which fields to read. + * readMask: 'placeholder-value', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "tensorboardTimeSeries": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Timeseries$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/timeSeries').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates a TensorboardTimeSeries. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.patch( + * { + * // Output only. Name of the TensorboardTimeSeries. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', + * // Required. Field mask is used to specify the fields to be overwritten in the TensorboardTimeSeries resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "metadata": {}, + * // "name": "my_name", + * // "pluginData": "my_pluginData", + * // "pluginName": "my_pluginName", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "metadata": {}, + * // "name": "my_name", + * // "pluginData": "my_pluginData", + * // "pluginName": "my_pluginName", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Timeseries$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + patch( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch, + callback: BodyResponseCallback + ): void; + patch( + callback: BodyResponseCallback + ): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Reads a TensorboardTimeSeries' data. By default, if the number of data points stored is less than 1000, all data is returned. Otherwise, 1000 data points is randomly selected from this time series and returned. This value can be changed by changing max_data_points, which can't be greater than 10k. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.read( + * { + * // Reads the TensorboardTimeSeries' data that match the filter expression. + * filter: 'placeholder-value', + * // The maximum number of TensorboardTimeSeries' data to return. This value should be a positive integer. This value can be set to -1 to return all data. + * maxDataPoints: 'placeholder-value', + * // Required. The resource name of the TensorboardTimeSeries to read data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + * tensorboardTimeSeries: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "timeSeriesData": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + read( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read, + options: StreamMethodOptions + ): Promise>; + read( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + read( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + read( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + read( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read, + callback: BodyResponseCallback + ): void; + read( + callback: BodyResponseCallback + ): void; + read( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+tensorboardTimeSeries}:read').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['tensorboardTimeSeries'], + pathParams: ['tensorboardTimeSeries'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Gets bytes of TensorboardBlobs. This is to allow reading blob data stored in consumer project's Cloud Storage bucket without users having to obtain Cloud Storage access permission. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.readBlobData( + * { + * // IDs of the blobs to read. + * blobIds: 'placeholder-value', + * // Required. The resource name of the TensorboardTimeSeries to list Blobs. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + * timeSeries: + * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "blobs": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + readBlobData( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata, + options: StreamMethodOptions + ): Promise>; + readBlobData( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + readBlobData( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + readBlobData( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + readBlobData( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata, + callback: BodyResponseCallback + ): void; + readBlobData( + callback: BodyResponseCallback + ): void; + readBlobData( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+timeSeries}:readBlobData').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['timeSeries'], + pathParams: ['timeSeries'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create extends StandardParameters { + /** + * Required. The resource name of the TensorboardRun to create the TensorboardTimeSeries in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + */ + parent?: string; + /** + * Optional. The user specified unique ID to use for the TensorboardTimeSeries, which becomes the final component of the TensorboardTimeSeries's resource name. This value should match "a-z0-9{0, 127\}" + */ + tensorboardTimeSeriesId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1TensorboardTimeSeries; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete extends StandardParameters { + /** + * Required. The name of the TensorboardTimeSeries to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries extends StandardParameters { + /** + * Required. The resource name of the TensorboardTimeSeries to export data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + */ + tensorboardTimeSeries?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1ExportTensorboardTimeSeriesDataRequest; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get extends StandardParameters { + /** + * Required. The name of the TensorboardTimeSeries resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List extends StandardParameters { + /** + * Lists the TensorboardTimeSeries that match the filter expression. + */ + filter?: string; + /** + * Field to use to sort the list. + */ + orderBy?: string; + /** + * The maximum number of TensorboardTimeSeries to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardTimeSeries are returned. The maximum value is 1000; values above 1000 are coerced to 1000. + */ + pageSize?: number; + /** + * A page token, received from a previous TensorboardService.ListTensorboardTimeSeries call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardTimeSeries must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The resource name of the TensorboardRun to list TensorboardTimeSeries. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + */ + parent?: string; + /** + * Mask specifying which fields to read. + */ + readMask?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch extends StandardParameters { + /** + * Output only. Name of the TensorboardTimeSeries. + */ + name?: string; + /** + * Required. Field mask is used to specify the fields to be overwritten in the TensorboardTimeSeries resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1TensorboardTimeSeries; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read extends StandardParameters { + /** + * Reads the TensorboardTimeSeries' data that match the filter expression. + */ + filter?: string; + /** + * The maximum number of TensorboardTimeSeries' data to return. This value should be a positive integer. This value can be set to -1 to return all data. + */ + maxDataPoints?: number; + /** + * Required. The resource name of the TensorboardTimeSeries to read data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + */ + tensorboardTimeSeries?: string; + } + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata extends StandardParameters { + /** + * IDs of the blobs to read. + */ + blobIds?: string[]; + /** + * Required. The resource name of the TensorboardTimeSeries to list Blobs. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + */ + timeSeries?: string; + } + + export class Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.cancel( + * { + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie/operations/my-operation', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel, + options?: MethodOptions + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.delete( + * { + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie/operations/my-operation', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + 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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.get( + * { + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie/operations/my-operation', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tensorboards$Experiments$Runs$Timeseries$Operations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + 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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.list( + * { + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', * }, - * }); + * ); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "source": "my_source", - * // "updateTime": "my_updateTime" + * // "nextPageToken": "my_nextPageToken", + * // "operations": [], + * // "unreachable": [] * // } * } * @@ -153071,62 +163407,62 @@ export namespace aiplatform_v1 { * @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$Tensorboards$Experiments$Patch, + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch, + list( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - patch( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch, + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch, + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - patch( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch; + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch; + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List; options = {}; } @@ -153139,8 +163475,11 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1/{+name}/operations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options @@ -153151,19 +163490,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Write time series data points of multiple TensorboardTimeSeries in multiple TensorboardRun's. If any data fail to be ingested, an error is returned. + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. * @example * ```js * // Before running the sample: @@ -153193,23 +163532,24 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.tensorboards.experiments.write({ - * // Required. The resource name of the TensorboardExperiment to write data to. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` - * tensorboardExperiment: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "writeRunDataRequests": [] - * // } + * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.wait( + * { + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', * }, - * }); + * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -153224,62 +163564,58 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - write( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Write, + wait( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait, options: StreamMethodOptions ): Promise>; - write( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Write, + wait( + params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - write( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Write, + ): Promise>; + wait( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - write( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Write, + wait( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - write( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Write, - callback: BodyResponseCallback + wait( + params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait, + callback: BodyResponseCallback ): void; - write( - callback: BodyResponseCallback + wait( + callback: BodyResponseCallback ): void; - write( + wait( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Write - | BodyResponseCallback + | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Write; + {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Write; + {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait; options = {}; } @@ -153292,125 +163628,80 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+tensorboardExperiment}:write').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['tensorboardExperiment'], - pathParams: ['tensorboardExperiment'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Batchcreate extends StandardParameters { - /** - * Required. The resource name of the TensorboardExperiment to create the TensorboardTimeSeries in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` The TensorboardRuns referenced by the parent fields in the CreateTensorboardTimeSeriesRequest messages must be sub resources of this TensorboardExperiment. - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1BatchCreateTensorboardTimeSeriesRequest; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Create extends StandardParameters { - /** - * Required. The resource name of the Tensorboard to create the TensorboardExperiment in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - */ - parent?: string; - /** - * Required. The ID to use for the Tensorboard experiment, which becomes the final component of the Tensorboard experiment's resource name. This value should be 1-128 characters, and valid characters are `/a-z-/`. - */ - tensorboardExperimentId?: string; - + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel extends StandardParameters { /** - * Request body metadata + * The name of the operation resource to be cancelled. */ - requestBody?: Schema$GoogleCloudAiplatformV1TensorboardExperiment; + name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete extends StandardParameters { /** - * Required. The name of the TensorboardExperiment to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get extends StandardParameters { /** - * Required. The name of the TensorboardExperiment resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List extends StandardParameters { /** - * Lists the TensorboardExperiments that match the filter expression. + * The standard list filter. */ filter?: string; /** - * Field to use to sort the list. + * The name of the operation's parent resource. */ - orderBy?: string; + name?: string; /** - * The maximum number of TensorboardExperiments to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardExperiments are returned. The maximum value is 1000; values above 1000 are coerced to 1000. + * The standard list page size. */ pageSize?: number; /** - * A page token, received from a previous TensorboardService.ListTensorboardExperiments call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardExperiments must match the call that provided the page token. + * The standard list page token. */ pageToken?: string; /** - * Required. The resource name of the Tensorboard to list TensorboardExperiments. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}` - */ - parent?: string; - /** - * Mask specifying which fields to read. + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. */ - readMask?: string; + returnPartialSuccess?: boolean; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Patch extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait extends StandardParameters { /** - * Output only. Name of the TensorboardExperiment. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + * The name of the operation resource to wait on. */ name?: string; /** - * Required. Field mask is used to specify the fields to be overwritten in the TensorboardExperiment resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1TensorboardExperiment; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Write extends StandardParameters { - /** - * Required. The resource name of the TensorboardExperiment to write data to. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` - */ - tensorboardExperiment?: string; - - /** - * Request body metadata + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. */ - requestBody?: Schema$GoogleCloudAiplatformV1WriteTensorboardExperimentDataRequest; + timeout?: string; } - export class Resource$Projects$Locations$Tensorboards$Experiments$Operations { + export class Resource$Projects$Locations$Tensorboards$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -153447,12 +163738,10 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.tensorboards.experiments.operations.cancel( - * { - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/operations/my-operation', - * }, - * ); + * await aiplatform.projects.locations.tensorboards.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -153472,31 +163761,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel, + params?: Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel + | Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -153512,13 +163801,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel; + {}) as Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel; + {} as Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel; options = {}; } @@ -153583,12 +163872,10 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.tensorboards.experiments.operations.delete( - * { - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/operations/my-operation', - * }, - * ); + * await aiplatform.projects.locations.tensorboards.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -153608,31 +163895,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete, + params?: Params$Resource$Projects$Locations$Tensorboards$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete + | Params$Resource$Projects$Locations$Tensorboards$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -153648,13 +163935,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete; + {}) as Params$Resource$Projects$Locations$Tensorboards$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete; + {} as Params$Resource$Projects$Locations$Tensorboards$Operations$Delete; options = {}; } @@ -153718,13 +164005,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.operations.get( - * { - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/operations/my-operation', - * }, - * ); + * const res = await aiplatform.projects.locations.tensorboards.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -153750,27 +164034,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get, + params?: Params$Resource$Projects$Locations$Tensorboards$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -153778,7 +164062,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get + | Params$Resource$Projects$Locations$Tensorboards$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -153794,13 +164078,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get; + {}) as Params$Resource$Projects$Locations$Tensorboards$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get; + {} as Params$Resource$Projects$Locations$Tensorboards$Operations$Get; options = {}; } @@ -153864,21 +164148,18 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.operations.list( - * { - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', - * }, - * ); + * const res = await aiplatform.projects.locations.tensorboards.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -153902,29 +164183,29 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List, + params?: Params$Resource$Projects$Locations$Tensorboards$Operations$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$List, callback: BodyResponseCallback ): void; list( @@ -153932,7 +164213,7 @@ export namespace aiplatform_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List + | Params$Resource$Projects$Locations$Tensorboards$Operations$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -153950,13 +164231,13 @@ export namespace aiplatform_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List; + {}) as Params$Resource$Projects$Locations$Tensorboards$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List; + {} as Params$Resource$Projects$Locations$Tensorboards$Operations$List; options = {}; } @@ -154025,15 +164306,12 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.operations.wait( - * { - * // The name of the operation resource to wait on. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', - * }, - * ); + * const res = await aiplatform.projects.locations.tensorboards.operations.wait({ + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -154059,27 +164337,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ wait( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Wait, options: StreamMethodOptions ): Promise>; wait( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait, + params?: Params$Resource$Projects$Locations$Tensorboards$Operations$Wait, options?: MethodOptions ): Promise>; wait( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Wait, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait, + params: Params$Resource$Projects$Locations$Tensorboards$Operations$Wait, callback: BodyResponseCallback ): void; wait( @@ -154087,7 +164365,7 @@ export namespace aiplatform_v1 { ): void; wait( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait + | Params$Resource$Projects$Locations$Tensorboards$Operations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -154103,13 +164381,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait; + {}) as Params$Resource$Projects$Locations$Tensorboards$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait; + {} as Params$Resource$Projects$Locations$Tensorboards$Operations$Wait; options = {}; } @@ -154144,25 +164422,25 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tensorboards$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tensorboards$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tensorboards$Operations$List extends StandardParameters { /** * The standard list filter. */ @@ -154184,7 +164462,7 @@ export namespace aiplatform_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Operations$Wait extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tensorboards$Operations$Wait extends StandardParameters { /** * The name of the operation resource to wait on. */ @@ -154195,24 +164473,19 @@ export namespace aiplatform_v1 { timeout?: string; } - export class Resource$Projects$Locations$Tensorboards$Experiments$Runs { + export class Resource$Projects$Locations$Trainingpipelines { context: APIRequestContext; - operations: Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations; - timeSeries: Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries; + operations: Resource$Projects$Locations$Trainingpipelines$Operations; constructor(context: APIRequestContext) { this.context = context; this.operations = - new Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations( - this.context - ); - this.timeSeries = - new Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries( + new Resource$Projects$Locations$Trainingpipelines$Operations( this.context ); } /** - * Batch create TensorboardRuns. + * Cancels a TrainingPipeline. Starts asynchronous cancellation on the TrainingPipeline. The server makes a best effort to cancel the pipeline, but success is not guaranteed. Clients can use PipelineService.GetTrainingPipeline or other methods to check whether the cancellation succeeded or whether the pipeline completed despite cancellation. On successful cancellation, the TrainingPipeline is not deleted; instead it becomes a pipeline with a TrainingPipeline.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`, and TrainingPipeline.state is set to `CANCELLED`. * @example * ```js * // Before running the sample: @@ -154241,28 +164514,20 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.batchCreate( - * { - * // Required. The resource name of the TensorboardExperiment to create the TensorboardRuns in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` The parent field in the CreateTensorboardRunRequest messages must match this field. - * parent: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', + * const res = await aiplatform.projects.locations.trainingPipelines.cancel({ + * // Required. The name of the TrainingPipeline to cancel. Format: `projects/{project\}/locations/{location\}/trainingPipelines/{training_pipeline\}` + * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "requests": [] - * // } - * }, - * }, - * ); + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); * console.log(res.data); * * // Example response - * // { - * // "tensorboardRuns": [] - * // } + * // {} * } * * main().catch(e => { @@ -154277,62 +164542,54 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - batchCreate( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate, + cancel( + params: Params$Resource$Projects$Locations$Trainingpipelines$Cancel, options: StreamMethodOptions ): Promise>; - batchCreate( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate, + cancel( + params?: Params$Resource$Projects$Locations$Trainingpipelines$Cancel, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - batchCreate( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate, + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Trainingpipelines$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - batchCreate( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - batchCreate( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Trainingpipelines$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - batchCreate( - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Trainingpipelines$Cancel, + callback: BodyResponseCallback ): void; - batchCreate( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate - | BodyResponseCallback + | Params$Resource$Projects$Locations$Trainingpipelines$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate; + {}) as Params$Resource$Projects$Locations$Trainingpipelines$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate; + {} as Params$Resource$Projects$Locations$Trainingpipelines$Cancel; options = {}; } @@ -154345,34 +164602,29 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/runs:batchCreate').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a TensorboardRun. + * Creates a TrainingPipeline. A created TrainingPipeline right away will be attempted to be run. * @example * ```js * // Before running the sample: @@ -154401,38 +164653,54 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.create({ - * // Required. The resource name of the TensorboardExperiment to create the TensorboardRun in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` - * parent: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', - * // Required. The ID to use for the Tensorboard run, which becomes the final component of the Tensorboard run's resource name. This value should be 1-128 characters, and valid characters are `/a-z-/`. - * tensorboardRunId: 'placeholder-value', + * const res = await aiplatform.projects.locations.trainingPipelines.create({ + * // Required. The resource name of the Location to create the TrainingPipeline in. Format: `projects/{project\}/locations/{location\}` + * parent: 'projects/my-project/locations/my-location', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "encryptionSpec": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "inputDataConfig": {}, + * // "labels": {}, + * // "modelId": "my_modelId", + * // "modelToUpload": {}, + * // "name": "my_name", + * // "parentModel": "my_parentModel", + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "trainingTaskDefinition": "my_trainingTaskDefinition", + * // "trainingTaskInputs": {}, + * // "trainingTaskMetadata": {}, + * // "updateTime": "my_updateTime" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { * // "createTime": "my_createTime", - * // "description": "my_description", * // "displayName": "my_displayName", - * // "etag": "my_etag", + * // "encryptionSpec": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "inputDataConfig": {}, * // "labels": {}, + * // "modelId": "my_modelId", + * // "modelToUpload": {}, * // "name": "my_name", + * // "parentModel": "my_parentModel", + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "trainingTaskDefinition": "my_trainingTaskDefinition", + * // "trainingTaskInputs": {}, + * // "trainingTaskMetadata": {}, * // "updateTime": "my_updateTime" * // } * } @@ -154450,61 +164718,61 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create, + params: Params$Resource$Projects$Locations$Trainingpipelines$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create, + params?: Params$Resource$Projects$Locations$Trainingpipelines$Create, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; create( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create, + params: Params$Resource$Projects$Locations$Trainingpipelines$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create, + params: Params$Resource$Projects$Locations$Trainingpipelines$Create, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; create( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Trainingpipelines$Create, + callback: BodyResponseCallback ): void; create( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Trainingpipelines$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create; + {}) as Params$Resource$Projects$Locations$Trainingpipelines$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create; + {} as Params$Resource$Projects$Locations$Trainingpipelines$Create; options = {}; } @@ -154517,7 +164785,10 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/runs').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+parent}/trainingPipelines').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'POST', apiVersion: '', }, @@ -154529,19 +164800,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Deletes a TensorboardRun. + * Deletes a TrainingPipeline. * @example * ```js * // Before running the sample: @@ -154570,11 +164841,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.delete({ - * // Required. The name of the TensorboardRun to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', - * }); + * const res = await aiplatform.projects.locations.trainingPipelines.delete({ + * // Required. The name of the TrainingPipeline resource to be deleted. Format: `projects/{project\}/locations/{location\}/trainingPipelines/{training_pipeline\}` + * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline', + * }); * console.log(res.data); * * // Example response @@ -154600,27 +164870,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete, + params: Params$Resource$Projects$Locations$Trainingpipelines$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete, + params?: Params$Resource$Projects$Locations$Trainingpipelines$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete, + params: Params$Resource$Projects$Locations$Trainingpipelines$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete, + params: Params$Resource$Projects$Locations$Trainingpipelines$Delete, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete, + params: Params$Resource$Projects$Locations$Trainingpipelines$Delete, callback: BodyResponseCallback ): void; delete( @@ -154628,7 +164898,7 @@ export namespace aiplatform_v1 { ): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete + | Params$Resource$Projects$Locations$Trainingpipelines$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -154644,13 +164914,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete; + {}) as Params$Resource$Projects$Locations$Trainingpipelines$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete; + {} as Params$Resource$Projects$Locations$Trainingpipelines$Delete; options = {}; } @@ -154685,7 +164955,7 @@ export namespace aiplatform_v1 { } /** - * Gets a TensorboardRun. + * Gets a TrainingPipeline. * @example * ```js * // Before running the sample: @@ -154706,10 +164976,7 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -154717,21 +164984,30 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.get({ - * // Required. The name of the TensorboardRun resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', - * }); + * const res = await aiplatform.projects.locations.trainingPipelines.get({ + * // Required. The name of the TrainingPipeline resource. Format: `projects/{project\}/locations/{location\}/trainingPipelines/{training_pipeline\}` + * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline', + * }); * console.log(res.data); * * // Example response * // { * // "createTime": "my_createTime", - * // "description": "my_description", * // "displayName": "my_displayName", - * // "etag": "my_etag", + * // "encryptionSpec": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "inputDataConfig": {}, * // "labels": {}, + * // "modelId": "my_modelId", + * // "modelToUpload": {}, * // "name": "my_name", + * // "parentModel": "my_parentModel", + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "trainingTaskDefinition": "my_trainingTaskDefinition", + * // "trainingTaskInputs": {}, + * // "trainingTaskMetadata": {}, * // "updateTime": "my_updateTime" * // } * } @@ -154749,390 +165025,60 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get, + params: Params$Resource$Projects$Locations$Trainingpipelines$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get, - callback: BodyResponseCallback - ): void; - get( - callback: BodyResponseCallback - ): void; - get( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Lists TensorboardRuns in a Location. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const aiplatform = google.aiplatform('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.list({ - * // Lists the TensorboardRuns that match the filter expression. - * filter: 'placeholder-value', - * // Field to use to sort the list. - * orderBy: 'placeholder-value', - * // The maximum number of TensorboardRuns to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardRuns are returned. The maximum value is 1000; values above 1000 are coerced to 1000. - * pageSize: 'placeholder-value', - * // A page token, received from a previous TensorboardService.ListTensorboardRuns call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardRuns must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The resource name of the TensorboardExperiment to list TensorboardRuns. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` - * parent: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment', - * // Mask specifying which fields to read. - * readMask: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "tensorboardRuns": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Tensorboards$Experiments$Runs$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List, - callback: BodyResponseCallback - ): void; - list( - callback: BodyResponseCallback - ): void; - list( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/runs').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Updates a TensorboardRun. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const aiplatform = google.aiplatform('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.patch({ - * // Output only. Name of the TensorboardRun. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', - * // Required. Field mask is used to specify the fields to be overwritten in the TensorboardRun resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Tensorboards$Experiments$Runs$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch, + params?: Params$Resource$Projects$Locations$Trainingpipelines$Get, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 - >; - patch( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch, + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Projects$Locations$Trainingpipelines$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch, + get( + params: Params$Resource$Projects$Locations$Trainingpipelines$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Trainingpipelines$Get, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - patch( + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Trainingpipelines$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch; + {}) as Params$Resource$Projects$Locations$Trainingpipelines$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch; + params = {} as Params$Resource$Projects$Locations$Trainingpipelines$Get; options = {}; } @@ -155146,7 +165092,7 @@ export namespace aiplatform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -155157,19 +165103,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Write time series data points into multiple TensorboardTimeSeries under a TensorboardRun. If any data fail to be ingested, an error is returned. + * Lists TrainingPipelines in a Location. * @example * ```js * // Before running the sample: @@ -155198,25 +165144,25 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.write({ - * // Required. The resource name of the TensorboardRun to write data to. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` - * tensorboardRun: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "tensorboardRun": "my_tensorboardRun", - * // "timeSeriesData": [] - * // } - * }, - * }); + * const res = await aiplatform.projects.locations.trainingPipelines.list({ + * // The standard list filter. Supported fields: * `display_name` supports `=`, `!=` comparisons, and `:` wildcard. * `state` supports `=`, `!=` comparisons. * `training_task_definition` `=`, `!=` comparisons, and `:` wildcard. * `create_time` supports `=`, `!=`,`<`, `<=`,`\>`, `\>=` comparisons. `create_time` must be in RFC 3339 format. * `labels` supports general map functions that is: `labels.key=value` - key:value equality `labels.key:* - key existence Some examples of using the filter are: * `state="PIPELINE_STATE_SUCCEEDED" AND display_name:"my_pipeline_*"` * `state!="PIPELINE_STATE_FAILED" OR display_name="my_pipeline"` * `NOT display_name="my_pipeline"` * `create_time\>"2021-05-18T00:00:00Z"` * `training_task_definition:"*automl_text_classification*"` + * filter: 'placeholder-value', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. Typically obtained via ListTrainingPipelinesResponse.next_page_token of the previous PipelineService.ListTrainingPipelines call. + * pageToken: 'placeholder-value', + * // Required. The resource name of the Location to list the TrainingPipelines from. Format: `projects/{project\}/locations/{location\}` + * parent: 'projects/my-project/locations/my-location', + * // Mask specifying which fields to read. + * readMask: 'placeholder-value', + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "nextPageToken": "my_nextPageToken", + * // "trainingPipelines": [] + * // } * } * * main().catch(e => { @@ -155231,62 +165177,62 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - write( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write, + list( + params: Params$Resource$Projects$Locations$Trainingpipelines$List, options: StreamMethodOptions ): Promise>; - write( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write, + list( + params?: Params$Resource$Projects$Locations$Trainingpipelines$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - write( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write, + list( + params: Params$Resource$Projects$Locations$Trainingpipelines$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - write( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write, + list( + params: Params$Resource$Projects$Locations$Trainingpipelines$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - write( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Trainingpipelines$List, + callback: BodyResponseCallback ): void; - write( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - write( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write - | BodyResponseCallback + | Params$Resource$Projects$Locations$Trainingpipelines$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write; + {}) as Params$Resource$Projects$Locations$Trainingpipelines$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write; + {} as Params$Resource$Projects$Locations$Trainingpipelines$List; options = {}; } @@ -155299,90 +165245,82 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+tensorboardRun}:write').replace( + url: (rootUrl + '/v1/{+parent}/trainingPipelines').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['tensorboardRun'], - pathParams: ['tensorboardRun'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Batchcreate extends StandardParameters { + export interface Params$Resource$Projects$Locations$Trainingpipelines$Cancel extends StandardParameters { /** - * Required. The resource name of the TensorboardExperiment to create the TensorboardRuns in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` The parent field in the CreateTensorboardRunRequest messages must match this field. + * Required. The name of the TrainingPipeline to cancel. Format: `projects/{project\}/locations/{location\}/trainingPipelines/{training_pipeline\}` */ - parent?: string; + name?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1BatchCreateTensorboardRunsRequest; + requestBody?: Schema$GoogleCloudAiplatformV1CancelTrainingPipelineRequest; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Create extends StandardParameters { + export interface Params$Resource$Projects$Locations$Trainingpipelines$Create extends StandardParameters { /** - * Required. The resource name of the TensorboardExperiment to create the TensorboardRun in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + * Required. The resource name of the Location to create the TrainingPipeline in. Format: `projects/{project\}/locations/{location\}` */ parent?: string; - /** - * Required. The ID to use for the Tensorboard run, which becomes the final component of the Tensorboard run's resource name. This value should be 1-128 characters, and valid characters are `/a-z-/`. - */ - tensorboardRunId?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1TensorboardRun; + requestBody?: Schema$GoogleCloudAiplatformV1TrainingPipeline; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Trainingpipelines$Delete extends StandardParameters { /** - * Required. The name of the TensorboardRun to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + * Required. The name of the TrainingPipeline resource to be deleted. Format: `projects/{project\}/locations/{location\}/trainingPipelines/{training_pipeline\}` */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Trainingpipelines$Get extends StandardParameters { /** - * Required. The name of the TensorboardRun resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + * Required. The name of the TrainingPipeline resource. Format: `projects/{project\}/locations/{location\}/trainingPipelines/{training_pipeline\}` */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Trainingpipelines$List extends StandardParameters { /** - * Lists the TensorboardRuns that match the filter expression. + * The standard list filter. Supported fields: * `display_name` supports `=`, `!=` comparisons, and `:` wildcard. * `state` supports `=`, `!=` comparisons. * `training_task_definition` `=`, `!=` comparisons, and `:` wildcard. * `create_time` supports `=`, `!=`,`<`, `<=`,`\>`, `\>=` comparisons. `create_time` must be in RFC 3339 format. * `labels` supports general map functions that is: `labels.key=value` - key:value equality `labels.key:* - key existence Some examples of using the filter are: * `state="PIPELINE_STATE_SUCCEEDED" AND display_name:"my_pipeline_*"` * `state!="PIPELINE_STATE_FAILED" OR display_name="my_pipeline"` * `NOT display_name="my_pipeline"` * `create_time\>"2021-05-18T00:00:00Z"` * `training_task_definition:"*automl_text_classification*"` */ filter?: string; /** - * Field to use to sort the list. - */ - orderBy?: string; - /** - * The maximum number of TensorboardRuns to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardRuns are returned. The maximum value is 1000; values above 1000 are coerced to 1000. + * The standard list page size. */ pageSize?: number; /** - * A page token, received from a previous TensorboardService.ListTensorboardRuns call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardRuns must match the call that provided the page token. + * The standard list page token. Typically obtained via ListTrainingPipelinesResponse.next_page_token of the previous PipelineService.ListTrainingPipelines call. */ pageToken?: string; /** - * Required. The resource name of the TensorboardExperiment to list TensorboardRuns. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}` + * Required. The resource name of the Location to list the TrainingPipelines from. Format: `projects/{project\}/locations/{location\}` */ parent?: string; /** @@ -155390,34 +165328,8 @@ export namespace aiplatform_v1 { */ readMask?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Patch extends StandardParameters { - /** - * Output only. Name of the TensorboardRun. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` - */ - name?: string; - /** - * Required. Field mask is used to specify the fields to be overwritten in the TensorboardRun resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1TensorboardRun; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Write extends StandardParameters { - /** - * Required. The resource name of the TensorboardRun to write data to. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` - */ - tensorboardRun?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1WriteTensorboardRunDataRequest; - } - export class Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations { + export class Resource$Projects$Locations$Trainingpipelines$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -155454,12 +165366,10 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.operations.cancel( - * { - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/operations/my-operation', - * }, - * ); + * await aiplatform.projects.locations.trainingPipelines.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -155479,31 +165389,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel, + params?: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel + | Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -155519,13 +165429,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel; + {}) as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel; + {} as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel; options = {}; } @@ -155590,12 +165500,10 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.operations.delete( - * { - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/operations/my-operation', - * }, - * ); + * await aiplatform.projects.locations.trainingPipelines.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -155615,31 +165523,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete, + params?: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete + | Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -155655,13 +165563,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete; + {}) as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete; + {} as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete; options = {}; } @@ -155726,12 +165634,10 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.operations.get( - * { - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/operations/my-operation', - * }, - * ); + * await aiplatform.projects.locations.trainingPipelines.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -155757,27 +165663,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get, + params?: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -155785,7 +165691,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get + | Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -155801,13 +165707,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get; + {}) as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get; + {} as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get; options = {}; } @@ -155872,20 +165778,18 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.operations.list( - * { - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', - * }, - * ); + * await aiplatform.projects.locations.trainingPipelines.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -155909,29 +165813,29 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List, + params?: Params$Resource$Projects$Locations$Trainingpipelines$Operations$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$List, callback: BodyResponseCallback ): void; list( @@ -155939,7 +165843,7 @@ export namespace aiplatform_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List + | Params$Resource$Projects$Locations$Trainingpipelines$Operations$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -155957,13 +165861,13 @@ export namespace aiplatform_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List; + {}) as Params$Resource$Projects$Locations$Trainingpipelines$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List; + {} as Params$Resource$Projects$Locations$Trainingpipelines$Operations$List; options = {}; } @@ -156033,14 +165937,12 @@ export namespace aiplatform_v1 { * * // Do the magic * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.operations.wait( - * { - * // The name of the operation resource to wait on. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', - * }, - * ); + * await aiplatform.projects.locations.trainingPipelines.operations.wait({ + * // The name of the operation resource to wait on. + * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -156066,27 +165968,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ wait( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait, options: StreamMethodOptions ): Promise>; wait( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait, + params?: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait, options?: MethodOptions ): Promise>; wait( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait, + params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait, callback: BodyResponseCallback ): void; wait( @@ -156094,7 +165996,7 @@ export namespace aiplatform_v1 { ): void; wait( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait + | Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -156110,13 +166012,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait; + {}) as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait; + {} as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait; options = {}; } @@ -156151,25 +166053,25 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Trainingpipelines$Operations$List extends StandardParameters { /** * The standard list filter. */ @@ -156191,7 +166093,7 @@ export namespace aiplatform_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Operations$Wait extends StandardParameters { + export interface Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait extends StandardParameters { /** * The name of the operation resource to wait on. */ @@ -156202,19 +166104,18 @@ export namespace aiplatform_v1 { timeout?: string; } - export class Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries { + export class Resource$Projects$Locations$Tuningjobs { context: APIRequestContext; - operations: Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations; + operations: Resource$Projects$Locations$Tuningjobs$Operations; constructor(context: APIRequestContext) { this.context = context; - this.operations = - new Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations( - this.context - ); + this.operations = new Resource$Projects$Locations$Tuningjobs$Operations( + this.context + ); } /** - * Creates a TensorboardTimeSeries. + * Cancels a tuning job. Starts an asynchronous cancellation request. The server makes a best effort to cancel the job, but success is not guaranteed. Clients can use GenAiTuningService.GetTuningJob or other methods to check whether the cancellation succeeded or whether the job completed despite cancellation. On successful cancellation, the tuning job is not deleted. Instead, its state is set to `CANCELLED`, and `error` is set to a status with a `google.rpc.Status.code` of 1, corresponding to `Code.CANCELLED`. * @example * ```js * // Before running the sample: @@ -156243,203 +166144,20 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.create( - * { - * // Required. The resource name of the TensorboardRun to create the TensorboardTimeSeries in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` - * parent: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', - * // Optional. The user specified unique ID to use for the TensorboardTimeSeries, which becomes the final component of the TensorboardTimeSeries's resource name. This value should match "a-z0-9{0, 127\}" - * tensorboardTimeSeriesId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "metadata": {}, - * // "name": "my_name", - * // "pluginData": "my_pluginData", - * // "pluginName": "my_pluginName", - * // "updateTime": "my_updateTime", - * // "valueType": "my_valueType" - * // } - * }, - * }, - * ); - * console.log(res.data); - * - * // Example response - * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "metadata": {}, - * // "name": "my_name", - * // "pluginData": "my_pluginData", - * // "pluginName": "my_pluginName", - * // "updateTime": "my_updateTime", - * // "valueType": "my_valueType" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Tensorboards$Experiments$Runs$Timeseries$Create, - options: StreamMethodOptions - ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - create( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create, - callback: BodyResponseCallback - ): void; - create( - callback: BodyResponseCallback - ): void; - create( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/timeSeries').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Deletes a TensorboardTimeSeries. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const aiplatform = google.aiplatform('v1'); + * const res = await aiplatform.projects.locations.tuningJobs.cancel({ + * // Required. The name of the tuning job to cancel. Format: `projects/{project\}/locations/{location\}/tuningJobs/{tuning_job\}` + * name: 'projects/my-project/locations/my-location/tuningJobs/my-tuningJob', * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.delete( - * { - * // Required. The name of the TensorboardTimeSeries to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', - * }, - * ); * console.log(res.data); * * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } + * // {} * } * * main().catch(e => { @@ -156454,58 +166172,53 @@ export namespace aiplatform_v1 { * @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$Tensorboards$Experiments$Runs$Timeseries$Delete, + cancel( + params: Params$Resource$Projects$Locations$Tuningjobs$Cancel, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete, + cancel( + params?: Params$Resource$Projects$Locations$Tuningjobs$Cancel, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete, + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Tuningjobs$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Tuningjobs$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Tuningjobs$Cancel, + callback: BodyResponseCallback ): void; - delete( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Tuningjobs$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete; + {}) as Params$Resource$Projects$Locations$Tuningjobs$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete; + params = {} as Params$Resource$Projects$Locations$Tuningjobs$Cancel; options = {}; } @@ -156518,8 +166231,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -156530,17 +166243,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Exports a TensorboardTimeSeries' data. Data is returned in paginated responses. + * Creates a tuning job. A created tuning job will be subsequently executed to start the model tuning process. * @example * ```js * // Before running the sample: @@ -156569,357 +166282,61 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.exportTensorboardTimeSeries( - * { - * // Required. The resource name of the TensorboardTimeSeries to export data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` - * tensorboardTimeSeries: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "filter": "my_filter", - * // "orderBy": "my_orderBy", - * // "pageSize": 0, - * // "pageToken": "my_pageToken" - * // } - * }, - * }, - * ); - * console.log(res.data); - * - * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "timeSeriesDataPoints": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - exportTensorboardTimeSeries( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries, - options: StreamMethodOptions - ): Promise>; - exportTensorboardTimeSeries( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - exportTensorboardTimeSeries( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - exportTensorboardTimeSeries( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - exportTensorboardTimeSeries( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries, - callback: BodyResponseCallback - ): void; - exportTensorboardTimeSeries( - callback: BodyResponseCallback - ): void; - exportTensorboardTimeSeries( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/v1/{+tensorboardTimeSeries}:exportTensorboardTimeSeries' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['tensorboardTimeSeries'], - pathParams: ['tensorboardTimeSeries'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Gets a TensorboardTimeSeries. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const aiplatform = google.aiplatform('v1'); + * const res = await aiplatform.projects.locations.tuningJobs.create({ + * // Required. The resource name of the location to create the tuning job in. Format: `projects/{project\}/locations/{location\}` + * parent: 'projects/my-project/locations/my-location', * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "baseModel": "my_baseModel", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "encryptionSpec": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "evaluateDatasetRuns": [], + * // "experiment": "my_experiment", + * // "labels": {}, + * // "name": "my_name", + * // "preTunedModel": {}, + * // "preferenceOptimizationSpec": {}, + * // "serviceAccount": "my_serviceAccount", + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "supervisedTuningSpec": {}, + * // "tunedModel": {}, + * // "tunedModelDisplayName": "my_tunedModelDisplayName", + * // "tuningDataStats": {}, + * // "updateTime": "my_updateTime" + * // } + * }, * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.get( - * { - * // Required. The name of the TensorboardTimeSeries resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', - * }, - * ); * console.log(res.data); * * // Example response * // { + * // "baseModel": "my_baseModel", * // "createTime": "my_createTime", * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "metadata": {}, + * // "encryptionSpec": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "evaluateDatasetRuns": [], + * // "experiment": "my_experiment", + * // "labels": {}, * // "name": "my_name", - * // "pluginData": "my_pluginData", - * // "pluginName": "my_pluginName", - * // "updateTime": "my_updateTime", - * // "valueType": "my_valueType" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Tensorboards$Experiments$Runs$Timeseries$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get, - callback: BodyResponseCallback - ): void; - get( - callback: BodyResponseCallback - ): void; - get( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Lists TensorboardTimeSeries in a Location. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const aiplatform = google.aiplatform('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.list( - * { - * // Lists the TensorboardTimeSeries that match the filter expression. - * filter: 'placeholder-value', - * // Field to use to sort the list. - * orderBy: 'placeholder-value', - * // The maximum number of TensorboardTimeSeries to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardTimeSeries are returned. The maximum value is 1000; values above 1000 are coerced to 1000. - * pageSize: 'placeholder-value', - * // A page token, received from a previous TensorboardService.ListTensorboardTimeSeries call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardTimeSeries must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The resource name of the TensorboardRun to list TensorboardTimeSeries. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` - * parent: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run', - * // Mask specifying which fields to read. - * readMask: 'placeholder-value', - * }, - * ); - * console.log(res.data); - * - * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "tensorboardTimeSeries": [] + * // "preTunedModel": {}, + * // "preferenceOptimizationSpec": {}, + * // "serviceAccount": "my_serviceAccount", + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "supervisedTuningSpec": {}, + * // "tunedModel": {}, + * // "tunedModelDisplayName": "my_tunedModelDisplayName", + * // "tuningDataStats": {}, + * // "updateTime": "my_updateTime" * // } * } * @@ -156935,62 +166352,61 @@ export namespace aiplatform_v1 { * @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$Tensorboards$Experiments$Runs$Timeseries$List, + create( + params: Params$Resource$Projects$Locations$Tuningjobs$Create, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List, + create( + params?: Params$Resource$Projects$Locations$Tuningjobs$Create, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List, + create( + params: Params$Resource$Projects$Locations$Tuningjobs$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List, + create( + params: Params$Resource$Projects$Locations$Tuningjobs$Create, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Tuningjobs$Create, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + create( + callback: BodyResponseCallback ): void; - list( + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Tuningjobs$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List; + {}) as Params$Resource$Projects$Locations$Tuningjobs$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List; + params = {} as Params$Resource$Projects$Locations$Tuningjobs$Create; options = {}; } @@ -157003,11 +166419,11 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/timeSeries').replace( + url: (rootUrl + '/v1/{+parent}/tuningJobs').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -157018,19 +166434,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Updates a TensorboardTimeSeries. + * Gets a tuning job. * @example * ```js * // Before running the sample: @@ -157059,46 +166475,34 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.patch( - * { - * // Output only. Name of the TensorboardTimeSeries. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', - * // Required. Field mask is used to specify the fields to be overwritten in the TensorboardTimeSeries resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "metadata": {}, - * // "name": "my_name", - * // "pluginData": "my_pluginData", - * // "pluginName": "my_pluginName", - * // "updateTime": "my_updateTime", - * // "valueType": "my_valueType" - * // } - * }, - * }, - * ); + * const res = await aiplatform.projects.locations.tuningJobs.get({ + * // Required. The name of the tuning job to retrieve. Format: `projects/{project\}/locations/{location\}/tuningJobs/{tuning_job\}` + * name: 'projects/my-project/locations/my-location/tuningJobs/my-tuningJob', + * }); * console.log(res.data); * * // Example response * // { + * // "baseModel": "my_baseModel", * // "createTime": "my_createTime", * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "metadata": {}, + * // "encryptionSpec": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "evaluateDatasetRuns": [], + * // "experiment": "my_experiment", + * // "labels": {}, * // "name": "my_name", - * // "pluginData": "my_pluginData", - * // "pluginName": "my_pluginName", - * // "updateTime": "my_updateTime", - * // "valueType": "my_valueType" + * // "preTunedModel": {}, + * // "preferenceOptimizationSpec": {}, + * // "serviceAccount": "my_serviceAccount", + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "supervisedTuningSpec": {}, + * // "tunedModel": {}, + * // "tunedModelDisplayName": "my_tunedModelDisplayName", + * // "tuningDataStats": {}, + * // "updateTime": "my_updateTime" * // } * } * @@ -157114,62 +166518,61 @@ export namespace aiplatform_v1 { * @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$Tensorboards$Experiments$Runs$Timeseries$Patch, + get( + params: Params$Resource$Projects$Locations$Tuningjobs$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch, + get( + params?: Params$Resource$Projects$Locations$Tuningjobs$Get, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - patch( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch, + get( + params: Params$Resource$Projects$Locations$Tuningjobs$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch, + get( + params: Params$Resource$Projects$Locations$Tuningjobs$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Tuningjobs$Get, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - patch( + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Tuningjobs$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch; + {}) as Params$Resource$Projects$Locations$Tuningjobs$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch; + params = {} as Params$Resource$Projects$Locations$Tuningjobs$Get; options = {}; } @@ -157183,7 +166586,7 @@ export namespace aiplatform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -157194,19 +166597,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Reads a TensorboardTimeSeries' data. By default, if the number of data points stored is less than 1000, all data is returned. Otherwise, 1000 data points is randomly selected from this time series and returned. This value can be changed by changing max_data_points, which can't be greater than 10k. + * Lists tuning jobs in a location. * @example * ```js * // Before running the sample: @@ -157227,10 +166630,7 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -157238,23 +166638,22 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.read( - * { - * // Reads the TensorboardTimeSeries' data that match the filter expression. - * filter: 'placeholder-value', - * // The maximum number of TensorboardTimeSeries' data to return. This value should be a positive integer. This value can be set to -1 to return all data. - * maxDataPoints: 'placeholder-value', - * // Required. The resource name of the TensorboardTimeSeries to read data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` - * tensorboardTimeSeries: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', - * }, - * ); + * const res = await aiplatform.projects.locations.tuningJobs.list({ + * // Optional. The standard list filter. + * filter: 'placeholder-value', + * // Optional. The standard list page size. + * pageSize: 'placeholder-value', + * // Optional. The standard list page token. Typically obtained from ListTuningJobsResponse.next_page_token of the previous GenAiTuningService.ListTuningJobs call. + * pageToken: 'placeholder-value', + * // Required. The resource name of the location to list the tuning jobs from. Format: `projects/{project\}/locations/{location\}` + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "timeSeriesData": {} + * // "nextPageToken": "my_nextPageToken", + * // "tuningJobs": [] * // } * } * @@ -157270,62 +166669,61 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - read( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read, + list( + params: Params$Resource$Projects$Locations$Tuningjobs$List, options: StreamMethodOptions ): Promise>; - read( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read, + list( + params?: Params$Resource$Projects$Locations$Tuningjobs$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - read( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read, + list( + params: Params$Resource$Projects$Locations$Tuningjobs$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - read( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read, + list( + params: Params$Resource$Projects$Locations$Tuningjobs$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - read( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Tuningjobs$List, + callback: BodyResponseCallback ): void; - read( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - read( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read - | BodyResponseCallback + | Params$Resource$Projects$Locations$Tuningjobs$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read; + {}) as Params$Resource$Projects$Locations$Tuningjobs$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read; + params = {} as Params$Resource$Projects$Locations$Tuningjobs$List; options = {}; } @@ -157338,7 +166736,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+tensorboardTimeSeries}:read').replace( + url: (rootUrl + '/v1/{+parent}/tuningJobs').replace( /([^:]\/)\/+/g, '$1' ), @@ -157348,24 +166746,24 @@ export namespace aiplatform_v1 { options ), params, - requiredParams: ['tensorboardTimeSeries'], - pathParams: ['tensorboardTimeSeries'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Gets bytes of TensorboardBlobs. This is to allow reading blob data stored in consumer project's Cloud Storage bucket without users having to obtain Cloud Storage access permission. + * Rebase a tuned model. A rebase operation takes a model that was previously tuned on a base model version, and retunes it on a new base model version. The rebase operation creates a new tuning job and a new tuned model. * @example * ```js * // Before running the sample: @@ -157386,10 +166784,7 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -157397,21 +166792,30 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.readBlobData( - * { - * // IDs of the blobs to read. - * blobIds: 'placeholder-value', - * // Required. The resource name of the TensorboardTimeSeries to list Blobs. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` - * timeSeries: - * 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', - * }, - * ); + * const res = await aiplatform.projects.locations.tuningJobs.rebaseTunedModel({ + * // Required. The resource name of the location in which to rebase the Model. Format: `projects/{project\}/locations/{location\}` + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "artifactDestination": {}, + * // "deployToSameEndpoint": false, + * // "tunedModelRef": {}, + * // "tuningJob": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "blobs": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -157427,62 +166831,58 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - readBlobData( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata, + rebaseTunedModel( + params: Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel, options: StreamMethodOptions ): Promise>; - readBlobData( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata, + rebaseTunedModel( + params?: Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - readBlobData( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata, + ): Promise>; + rebaseTunedModel( + params: Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - readBlobData( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata, + rebaseTunedModel( + params: Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - readBlobData( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata, - callback: BodyResponseCallback + rebaseTunedModel( + params: Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel, + callback: BodyResponseCallback ): void; - readBlobData( - callback: BodyResponseCallback + rebaseTunedModel( + callback: BodyResponseCallback ): void; - readBlobData( + rebaseTunedModel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata - | BodyResponseCallback + | Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata; + {}) as Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata; + {} as Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel; options = {}; } @@ -157495,138 +166895,89 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+timeSeries}:readBlobData').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: ( + rootUrl + '/v1/{+parent}/tuningJobs:rebaseTunedModel' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['timeSeries'], - pathParams: ['timeSeries'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Create extends StandardParameters { - /** - * Required. The resource name of the TensorboardRun to create the TensorboardTimeSeries in. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` - */ - parent?: string; + export interface Params$Resource$Projects$Locations$Tuningjobs$Cancel extends StandardParameters { /** - * Optional. The user specified unique ID to use for the TensorboardTimeSeries, which becomes the final component of the TensorboardTimeSeries's resource name. This value should match "a-z0-9{0, 127\}" + * Required. The name of the tuning job to cancel. Format: `projects/{project\}/locations/{location\}/tuningJobs/{tuning_job\}` */ - tensorboardTimeSeriesId?: string; + name?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1TensorboardTimeSeries; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Delete extends StandardParameters { - /** - * Required. The name of the TensorboardTimeSeries to be deleted. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` - */ - name?: string; + requestBody?: Schema$GoogleCloudAiplatformV1CancelTuningJobRequest; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Exporttensorboardtimeseries extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tuningjobs$Create extends StandardParameters { /** - * Required. The resource name of the TensorboardTimeSeries to export data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + * Required. The resource name of the location to create the tuning job in. Format: `projects/{project\}/locations/{location\}` */ - tensorboardTimeSeries?: string; + parent?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1ExportTensorboardTimeSeriesDataRequest; + requestBody?: Schema$GoogleCloudAiplatformV1TuningJob; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tuningjobs$Get extends StandardParameters { /** - * Required. The name of the TensorboardTimeSeries resource. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` + * Required. The name of the tuning job to retrieve. Format: `projects/{project\}/locations/{location\}/tuningJobs/{tuning_job\}` */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tuningjobs$List extends StandardParameters { /** - * Lists the TensorboardTimeSeries that match the filter expression. + * Optional. The standard list filter. */ filter?: string; /** - * Field to use to sort the list. - */ - orderBy?: string; - /** - * The maximum number of TensorboardTimeSeries to return. The service may return fewer than this value. If unspecified, at most 50 TensorboardTimeSeries are returned. The maximum value is 1000; values above 1000 are coerced to 1000. + * Optional. The standard list page size. */ pageSize?: number; /** - * A page token, received from a previous TensorboardService.ListTensorboardTimeSeries call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to TensorboardService.ListTensorboardTimeSeries must match the call that provided the page token. + * Optional. The standard list page token. Typically obtained from ListTuningJobsResponse.next_page_token of the previous GenAiTuningService.ListTuningJobs call. */ pageToken?: string; /** - * Required. The resource name of the TensorboardRun to list TensorboardTimeSeries. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}` + * Required. The resource name of the location to list the tuning jobs from. Format: `projects/{project\}/locations/{location\}` */ parent?: string; - /** - * Mask specifying which fields to read. - */ - readMask?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Patch extends StandardParameters { - /** - * Output only. Name of the TensorboardTimeSeries. - */ - name?: string; + export interface Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel extends StandardParameters { /** - * Required. Field mask is used to specify the fields to be overwritten in the TensorboardTimeSeries resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it's in the mask. If the user does not provide a mask then all fields are overwritten if new values are specified. + * Required. The resource name of the location in which to rebase the Model. Format: `projects/{project\}/locations/{location\}` */ - updateMask?: string; + parent?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1TensorboardTimeSeries; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Read extends StandardParameters { - /** - * Reads the TensorboardTimeSeries' data that match the filter expression. - */ - filter?: string; - /** - * The maximum number of TensorboardTimeSeries' data to return. This value should be a positive integer. This value can be set to -1 to return all data. - */ - maxDataPoints?: number; - /** - * Required. The resource name of the TensorboardTimeSeries to read data from. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` - */ - tensorboardTimeSeries?: string; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Readblobdata extends StandardParameters { - /** - * IDs of the blobs to read. - */ - blobIds?: string[]; - /** - * Required. The resource name of the TensorboardTimeSeries to list Blobs. Format: `projects/{project\}/locations/{location\}/tensorboards/{tensorboard\}/experiments/{experiment\}/runs/{run\}/timeSeries/{time_series\}` - */ - timeSeries?: string; + requestBody?: Schema$GoogleCloudAiplatformV1RebaseTunedModelRequest; } - export class Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations { + export class Resource$Projects$Locations$Tuningjobs$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -157662,13 +167013,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.cancel( - * { - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie/operations/my-operation', - * }, - * ); + * const res = await aiplatform.projects.locations.tuningJobs.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/tuningJobs/my-tuningJob/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -157688,31 +167036,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel, + params?: Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel + | Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -157728,13 +167076,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel; + {}) as Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel; + {} as Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel; options = {}; } @@ -157798,13 +167146,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.delete( - * { - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie/operations/my-operation', - * }, - * ); + * const res = await aiplatform.projects.locations.tuningJobs.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/tuningJobs/my-tuningJob/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -157824,31 +167169,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete, + params?: Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete + | Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -157864,13 +167209,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete; + {}) as Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete; + {} as Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete; options = {}; } @@ -157934,13 +167279,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.get( - * { - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie/operations/my-operation', - * }, - * ); + * const res = await aiplatform.projects.locations.tuningJobs.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/tuningJobs/my-tuningJob/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -157966,27 +167308,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get, + params?: Params$Resource$Projects$Locations$Tuningjobs$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -157994,7 +167336,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get + | Params$Resource$Projects$Locations$Tuningjobs$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -158010,13 +167352,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get; + {}) as Params$Resource$Projects$Locations$Tuningjobs$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get; + {} as Params$Resource$Projects$Locations$Tuningjobs$Operations$Get; options = {}; } @@ -158080,21 +167422,18 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.list( - * { - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', - * }, - * ); + * const res = await aiplatform.projects.locations.tuningJobs.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location/tuningJobs/my-tuningJob', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -158118,29 +167457,29 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List, + params?: Params$Resource$Projects$Locations$Tuningjobs$Operations$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List, + params: Params$Resource$Projects$Locations$Tuningjobs$Operations$List, callback: BodyResponseCallback ): void; list( @@ -158148,7 +167487,7 @@ export namespace aiplatform_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List + | Params$Resource$Projects$Locations$Tuningjobs$Operations$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -158166,13 +167505,13 @@ export namespace aiplatform_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List; + {}) as Params$Resource$Projects$Locations$Tuningjobs$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List; + {} as Params$Resource$Projects$Locations$Tuningjobs$Operations$List; options = {}; } @@ -158210,175 +167549,27 @@ export namespace aiplatform_v1 { ); } } - - /** - * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const aiplatform = google.aiplatform('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.experiments.runs.timeSeries.operations.wait( - * { - * // The name of the operation resource to wait on. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/experiments/my-experiment/runs/my-run/timeSeries/my-timeSerie/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', - * }, - * ); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - wait( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait, - options: StreamMethodOptions - ): Promise>; - wait( - params?: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait, - options?: MethodOptions - ): Promise>; - wait( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - wait( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - wait( - params: Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait, - callback: BodyResponseCallback - ): void; - wait( - callback: BodyResponseCallback - ): void; - wait( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - 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$Tensorboards$Experiments$Runs$Timeseries$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tuningjobs$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Tuningjobs$Operations$List extends StandardParameters { /** * The standard list filter. */ @@ -158400,159 +167591,24 @@ export namespace aiplatform_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Projects$Locations$Tensorboards$Experiments$Runs$Timeseries$Operations$Wait extends StandardParameters { - /** - * The name of the operation resource to wait on. - */ - name?: string; - /** - * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - */ - timeout?: string; - } - export class Resource$Projects$Locations$Tensorboards$Operations { + export class Resource$Publishers { context: APIRequestContext; + models: Resource$Publishers$Models; constructor(context: APIRequestContext) { this.context = context; + this.models = new Resource$Publishers$Models(this.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`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const aiplatform = google.aiplatform('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/operations/my-operation', - * }); - * console.log(res.data); - * - * // Example response - * // {} - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Tensorboards$Operations$Cancel, - options: StreamMethodOptions - ): Promise>; - cancel( - params?: Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel, - options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - cancel( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel, - callback: BodyResponseCallback - ): void; - cancel(callback: BodyResponseCallback): void; - cancel( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Publishers$Models { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * 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`. + * Return a list of tokens based on the input text. * @example * ```js * // Before running the sample: @@ -158581,153 +167637,25 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.tensorboards.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/operations/my-operation', - * }); - * console.log(res.data); - * - * // Example response - * // {} - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Tensorboards$Operations$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Tensorboards$Operations$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Operations$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Operations$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Operations$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - 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. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const aiplatform = google.aiplatform('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * const res = await aiplatform.publishers.models.computeTokens({ + * // Required. The name of the Endpoint requested to get lists of tokens and token ids. + * endpoint: 'publishers/my-publisher/models/my-model', * - * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.operations.get({ - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/operations/my-operation', + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "contents": [], + * // "instances": [], + * // "model": "my_model" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "tokensInfo": [] * // } * } * @@ -158743,58 +167671,61 @@ export namespace aiplatform_v1 { * @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$Tensorboards$Operations$Get, + computeTokens( + params: Params$Resource$Publishers$Models$Computetokens, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Tensorboards$Operations$Get, + computeTokens( + params?: Params$Resource$Publishers$Models$Computetokens, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + computeTokens( + params: Params$Resource$Publishers$Models$Computetokens, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Get, + computeTokens( + params: Params$Resource$Publishers$Models$Computetokens, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Get, - callback: BodyResponseCallback + computeTokens( + params: Params$Resource$Publishers$Models$Computetokens, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + computeTokens( + callback: BodyResponseCallback ): void; - get( + computeTokens( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Operations$Get - | BodyResponseCallback + | Params$Resource$Publishers$Models$Computetokens + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Operations$Get; + {}) as Params$Resource$Publishers$Models$Computetokens; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Operations$Get; + params = {} as Params$Resource$Publishers$Models$Computetokens; options = {}; } @@ -158807,29 +167738,34 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+endpoint}:computeTokens').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['endpoint'], + pathParams: ['endpoint'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + * Perform a token counting. * @example * ```js * // Before running the sample: @@ -158858,25 +167794,30 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', + * const res = await aiplatform.publishers.models.countTokens({ + * // Required. The name of the Endpoint requested to perform token counting. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + * endpoint: 'publishers/my-publisher/models/my-model', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "contents": [], + * // "generationConfig": {}, + * // "instances": [], + * // "model": "my_model", + * // "systemInstruction": {}, + * // "tools": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "operations": [], - * // "unreachable": [] + * // "promptTokensDetails": [], + * // "totalBillableCharacters": 0, + * // "totalTokens": 0 * // } * } * @@ -158892,62 +167833,61 @@ export namespace aiplatform_v1 { * @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$Tensorboards$Operations$List, + countTokens( + params: Params$Resource$Publishers$Models$Counttokens, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Tensorboards$Operations$List, + countTokens( + params?: Params$Resource$Publishers$Models$Counttokens, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - list( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$List, + countTokens( + params: Params$Resource$Publishers$Models$Counttokens, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$List, + countTokens( + params: Params$Resource$Publishers$Models$Counttokens, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$List, - callback: BodyResponseCallback + countTokens( + params: Params$Resource$Publishers$Models$Counttokens, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + countTokens( + callback: BodyResponseCallback ): void; - list( + countTokens( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Operations$List - | BodyResponseCallback + | Params$Resource$Publishers$Models$Counttokens + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Operations$List; + {}) as Params$Resource$Publishers$Models$Counttokens; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Operations$List; + params = {} as Params$Resource$Publishers$Models$Counttokens; options = {}; } @@ -158960,34 +167900,34 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}/operations').replace( + url: (rootUrl + '/v1/{+endpoint}:countTokens').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['endpoint'], + pathParams: ['endpoint'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. + * Fetch an asynchronous online prediction operation. * @example * ```js * // Before running the sample: @@ -159008,7 +167948,10 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -159016,11 +167959,17 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tensorboards.operations.wait({ - * // The name of the operation resource to wait on. - * name: 'projects/my-project/locations/my-location/tensorboards/my-tensorboard/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', + * const res = await aiplatform.publishers.models.fetchPredictOperation({ + * // Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` or `projects/{project\}/locations/{location\}/publishers/{publisher\}/models/{model\}` + * endpoint: 'publishers/my-publisher/models/my-model', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "operationName": "my_operationName" + * // } + * }, * }); * console.log(res.data); * @@ -159046,36 +167995,36 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - wait( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Wait, + fetchPredictOperation( + params: Params$Resource$Publishers$Models$Fetchpredictoperation, options: StreamMethodOptions ): Promise>; - wait( - params?: Params$Resource$Projects$Locations$Tensorboards$Operations$Wait, + fetchPredictOperation( + params?: Params$Resource$Publishers$Models$Fetchpredictoperation, options?: MethodOptions ): Promise>; - wait( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Wait, + fetchPredictOperation( + params: Params$Resource$Publishers$Models$Fetchpredictoperation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Wait, + fetchPredictOperation( + params: Params$Resource$Publishers$Models$Fetchpredictoperation, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Projects$Locations$Tensorboards$Operations$Wait, + fetchPredictOperation( + params: Params$Resource$Publishers$Models$Fetchpredictoperation, callback: BodyResponseCallback ): void; - wait( + fetchPredictOperation( callback: BodyResponseCallback ): void; - wait( + fetchPredictOperation( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tensorboards$Operations$Wait + | Params$Resource$Publishers$Models$Fetchpredictoperation | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -159091,13 +168040,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tensorboards$Operations$Wait; + {}) as Params$Resource$Publishers$Models$Fetchpredictoperation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tensorboards$Operations$Wait; + params = {} as Params$Resource$Publishers$Models$Fetchpredictoperation; options = {}; } @@ -159110,15 +168058,18 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+endpoint}:fetchPredictOperation').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['endpoint'], + pathParams: ['endpoint'], context: this.context, }; if (callback) { @@ -159130,72 +168081,9 @@ export namespace aiplatform_v1 { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Tensorboards$Operations$Cancel extends StandardParameters { - /** - * The name of the operation resource to be cancelled. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Operations$Delete extends StandardParameters { - /** - * The name of the operation resource to be deleted. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Operations$Get extends StandardParameters { - /** - * The name of the operation resource. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Tensorboards$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; - /** - * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Projects$Locations$Tensorboards$Operations$Wait extends StandardParameters { - /** - * The name of the operation resource to wait on. - */ - name?: string; - /** - * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - */ - timeout?: string; - } - - export class Resource$Projects$Locations$Trainingpipelines { - context: APIRequestContext; - operations: Resource$Projects$Locations$Trainingpipelines$Operations; - constructor(context: APIRequestContext) { - this.context = context; - this.operations = - new Resource$Projects$Locations$Trainingpipelines$Operations( - this.context - ); - } /** - * Cancels a TrainingPipeline. Starts asynchronous cancellation on the TrainingPipeline. The server makes a best effort to cancel the pipeline, but success is not guaranteed. Clients can use PipelineService.GetTrainingPipeline or other methods to check whether the cancellation succeeded or whether the pipeline completed despite cancellation. On successful cancellation, the TrainingPipeline is not deleted; instead it becomes a pipeline with a TrainingPipeline.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`, and TrainingPipeline.state is set to `CANCELLED`. + * Generate content with multimodal inputs. * @example * ```js * // Before running the sample: @@ -159216,7 +168104,10 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -159224,20 +168115,37 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.trainingPipelines.cancel({ - * // Required. The name of the TrainingPipeline to cancel. Format: `projects/{project\}/locations/{location\}/trainingPipelines/{training_pipeline\}` - * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline', + * const res = await aiplatform.publishers.models.generateContent({ + * // Required. The fully qualified name of the publisher model or tuned model endpoint to use. Publisher model format: `projects/{project\}/locations/{location\}/publishers/x/models/x` Tuned model endpoint format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + * model: 'publishers/my-publisher/models/my-model', * * // Request body metadata * requestBody: { * // request body parameters - * // {} + * // { + * // "cachedContent": "my_cachedContent", + * // "contents": [], + * // "generationConfig": {}, + * // "labels": {}, + * // "modelArmorConfig": {}, + * // "safetySettings": [], + * // "systemInstruction": {}, + * // "toolConfig": {}, + * // "tools": [] + * // } * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "candidates": [], + * // "createTime": "my_createTime", + * // "modelVersion": "my_modelVersion", + * // "promptFeedback": {}, + * // "responseId": "my_responseId", + * // "usageMetadata": {} + * // } * } * * main().catch(e => { @@ -159252,54 +168160,61 @@ export namespace aiplatform_v1 { * @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$Trainingpipelines$Cancel, + generateContent( + params: Params$Resource$Publishers$Models$Generatecontent, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Projects$Locations$Trainingpipelines$Cancel, + generateContent( + params?: Params$Resource$Publishers$Models$Generatecontent, options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Projects$Locations$Trainingpipelines$Cancel, + ): Promise< + GaxiosResponseWithHTTP2 + >; + generateContent( + params: Params$Resource$Publishers$Models$Generatecontent, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Projects$Locations$Trainingpipelines$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + generateContent( + params: Params$Resource$Publishers$Models$Generatecontent, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Projects$Locations$Trainingpipelines$Cancel, - callback: BodyResponseCallback + generateContent( + params: Params$Resource$Publishers$Models$Generatecontent, + callback: BodyResponseCallback ): void; - cancel(callback: BodyResponseCallback): void; - cancel( + generateContent( + callback: BodyResponseCallback + ): void; + generateContent( paramsOrCallback?: - | Params$Resource$Projects$Locations$Trainingpipelines$Cancel - | BodyResponseCallback + | Params$Resource$Publishers$Models$Generatecontent + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Trainingpipelines$Cancel; + {}) as Params$Resource$Publishers$Models$Generatecontent; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Trainingpipelines$Cancel; + params = {} as Params$Resource$Publishers$Models$Generatecontent; options = {}; } @@ -159312,29 +168227,34 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+model}:generateContent').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['model'], + pathParams: ['model'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Creates a TrainingPipeline. A created TrainingPipeline right away will be attempted to be run. + * Gets a Model Garden publisher model. * @example * ```js * // Before running the sample: @@ -159363,55 +168283,31 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.trainingPipelines.create({ - * // Required. The resource name of the Location to create the TrainingPipeline in. Format: `projects/{project\}/locations/{location\}` - * parent: 'projects/my-project/locations/my-location', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "encryptionSpec": {}, - * // "endTime": "my_endTime", - * // "error": {}, - * // "inputDataConfig": {}, - * // "labels": {}, - * // "modelId": "my_modelId", - * // "modelToUpload": {}, - * // "name": "my_name", - * // "parentModel": "my_parentModel", - * // "startTime": "my_startTime", - * // "state": "my_state", - * // "trainingTaskDefinition": "my_trainingTaskDefinition", - * // "trainingTaskInputs": {}, - * // "trainingTaskMetadata": {}, - * // "updateTime": "my_updateTime" - * // } - * }, + * const res = await aiplatform.publishers.models.get({ + * // Optional. Token used to access Hugging Face gated models. + * huggingFaceToken: 'placeholder-value', + * // Optional. Boolean indicates whether the requested model is a Hugging Face model. + * isHuggingFaceModel: 'placeholder-value', + * // Optional. The IETF BCP-47 language code representing the language in which the publisher model's text information should be written in. + * languageCode: 'placeholder-value', + * // Required. The name of the PublisherModel resource. Format: `publishers/{publisher\}/models/{publisher_model\}` + * name: 'publishers/my-publisher/models/my-model', + * // Optional. PublisherModel view specifying which fields to read. + * view: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "encryptionSpec": {}, - * // "endTime": "my_endTime", - * // "error": {}, - * // "inputDataConfig": {}, - * // "labels": {}, - * // "modelId": "my_modelId", - * // "modelToUpload": {}, + * // "frameworks": [], + * // "launchStage": "my_launchStage", * // "name": "my_name", - * // "parentModel": "my_parentModel", - * // "startTime": "my_startTime", - * // "state": "my_state", - * // "trainingTaskDefinition": "my_trainingTaskDefinition", - * // "trainingTaskInputs": {}, - * // "trainingTaskMetadata": {}, - * // "updateTime": "my_updateTime" + * // "openSourceCategory": "my_openSourceCategory", + * // "predictSchemata": {}, + * // "publisherModelTemplate": "my_publisherModelTemplate", + * // "supportedActions": {}, + * // "versionId": "my_versionId", + * // "versionState": "my_versionState" * // } * } * @@ -159427,62 +168323,61 @@ export namespace aiplatform_v1 { * @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$Trainingpipelines$Create, + get( + params: Params$Resource$Publishers$Models$Get, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Trainingpipelines$Create, + get( + params?: Params$Resource$Publishers$Models$Get, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - create( - params: Params$Resource$Projects$Locations$Trainingpipelines$Create, + get( + params: Params$Resource$Publishers$Models$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Trainingpipelines$Create, + get( + params: Params$Resource$Publishers$Models$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Trainingpipelines$Create, - callback: BodyResponseCallback + get( + params: Params$Resource$Publishers$Models$Get, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - create( + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Trainingpipelines$Create - | BodyResponseCallback + | Params$Resource$Publishers$Models$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Trainingpipelines$Create; + {}) as Params$Resource$Publishers$Models$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Trainingpipelines$Create; + params = {} as Params$Resource$Publishers$Models$Get; options = {}; } @@ -159495,34 +168390,30 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/trainingPipelines').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Deletes a TrainingPipeline. * @example * ```js * // Before running the sample: @@ -159543,7 +168434,10 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -159551,19 +168445,30 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.trainingPipelines.delete({ - * // Required. The name of the TrainingPipeline resource to be deleted. Format: `projects/{project\}/locations/{location\}/trainingPipelines/{training_pipeline\}` - * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline', + * const res = await aiplatform.publishers.models.predict({ + * // Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + * endpoint: 'publishers/my-publisher/models/my-model', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [], + * // "labels": {}, + * // "parameters": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, + * // "deployedModelId": "my_deployedModelId", * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "model": "my_model", + * // "modelDisplayName": "my_modelDisplayName", + * // "modelVersionId": "my_modelVersionId", + * // "predictions": [] * // } * } * @@ -159579,58 +168484,61 @@ export namespace aiplatform_v1 { * @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$Trainingpipelines$Delete, + predict( + params: Params$Resource$Publishers$Models$Predict, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Trainingpipelines$Delete, + predict( + params?: Params$Resource$Publishers$Models$Predict, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Trainingpipelines$Delete, + ): Promise< + GaxiosResponseWithHTTP2 + >; + predict( + params: Params$Resource$Publishers$Models$Predict, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Trainingpipelines$Delete, + predict( + params: Params$Resource$Publishers$Models$Predict, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Trainingpipelines$Delete, - callback: BodyResponseCallback + predict( + params: Params$Resource$Publishers$Models$Predict, + callback: BodyResponseCallback ): void; - delete( - callback: BodyResponseCallback + predict( + callback: BodyResponseCallback ): void; - delete( + predict( paramsOrCallback?: - | Params$Resource$Projects$Locations$Trainingpipelines$Delete - | BodyResponseCallback + | Params$Resource$Publishers$Models$Predict + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Trainingpipelines$Delete; + {}) as Params$Resource$Publishers$Models$Predict; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Trainingpipelines$Delete; + params = {} as Params$Resource$Publishers$Models$Predict; options = {}; } @@ -159643,29 +168551,33 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+endpoint}:predict').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['endpoint'], + pathParams: ['endpoint'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Gets a TrainingPipeline. * @example * ```js * // Before running the sample: @@ -159686,7 +168598,10 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -159694,31 +168609,29 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.trainingPipelines.get({ - * // Required. The name of the TrainingPipeline resource. Format: `projects/{project\}/locations/{location\}/trainingPipelines/{training_pipeline\}` - * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline', + * const res = await aiplatform.publishers.models.predictLongRunning({ + * // Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` or `projects/{project\}/locations/{location\}/publishers/{publisher\}/models/{model\}` + * endpoint: 'publishers/my-publisher/models/my-model', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [], + * // "labels": {}, + * // "parameters": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "encryptionSpec": {}, - * // "endTime": "my_endTime", + * // "done": false, * // "error": {}, - * // "inputDataConfig": {}, - * // "labels": {}, - * // "modelId": "my_modelId", - * // "modelToUpload": {}, + * // "metadata": {}, * // "name": "my_name", - * // "parentModel": "my_parentModel", - * // "startTime": "my_startTime", - * // "state": "my_state", - * // "trainingTaskDefinition": "my_trainingTaskDefinition", - * // "trainingTaskInputs": {}, - * // "trainingTaskMetadata": {}, - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -159734,61 +168647,57 @@ export namespace aiplatform_v1 { * @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$Trainingpipelines$Get, + predictLongRunning( + params: Params$Resource$Publishers$Models$Predictlongrunning, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Trainingpipelines$Get, + predictLongRunning( + params?: Params$Resource$Publishers$Models$Predictlongrunning, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - get( - params: Params$Resource$Projects$Locations$Trainingpipelines$Get, + ): Promise>; + predictLongRunning( + params: Params$Resource$Publishers$Models$Predictlongrunning, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Trainingpipelines$Get, + predictLongRunning( + params: Params$Resource$Publishers$Models$Predictlongrunning, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Trainingpipelines$Get, - callback: BodyResponseCallback + predictLongRunning( + params: Params$Resource$Publishers$Models$Predictlongrunning, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + predictLongRunning( + callback: BodyResponseCallback ): void; - get( + predictLongRunning( paramsOrCallback?: - | Params$Resource$Projects$Locations$Trainingpipelines$Get - | BodyResponseCallback + | Params$Resource$Publishers$Models$Predictlongrunning + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Trainingpipelines$Get; + {}) as Params$Resource$Publishers$Models$Predictlongrunning; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Trainingpipelines$Get; + params = {} as Params$Resource$Publishers$Models$Predictlongrunning; options = {}; } @@ -159801,31 +168710,32 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+endpoint}:predictLongRunning').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['endpoint'], + pathParams: ['endpoint'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Lists TrainingPipelines in a Location. + * Generate content with multimodal inputs with streaming support. * @example * ```js * // Before running the sample: @@ -159846,7 +168756,10 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -159854,24 +168767,36 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.trainingPipelines.list({ - * // The standard list filter. Supported fields: * `display_name` supports `=`, `!=` comparisons, and `:` wildcard. * `state` supports `=`, `!=` comparisons. * `training_task_definition` `=`, `!=` comparisons, and `:` wildcard. * `create_time` supports `=`, `!=`,`<`, `<=`,`\>`, `\>=` comparisons. `create_time` must be in RFC 3339 format. * `labels` supports general map functions that is: `labels.key=value` - key:value equality `labels.key:* - key existence Some examples of using the filter are: * `state="PIPELINE_STATE_SUCCEEDED" AND display_name:"my_pipeline_*"` * `state!="PIPELINE_STATE_FAILED" OR display_name="my_pipeline"` * `NOT display_name="my_pipeline"` * `create_time\>"2021-05-18T00:00:00Z"` * `training_task_definition:"*automl_text_classification*"` - * filter: 'placeholder-value', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. Typically obtained via ListTrainingPipelinesResponse.next_page_token of the previous PipelineService.ListTrainingPipelines call. - * pageToken: 'placeholder-value', - * // Required. The resource name of the Location to list the TrainingPipelines from. Format: `projects/{project\}/locations/{location\}` - * parent: 'projects/my-project/locations/my-location', - * // Mask specifying which fields to read. - * readMask: 'placeholder-value', + * const res = await aiplatform.publishers.models.streamGenerateContent({ + * // Required. The fully qualified name of the publisher model or tuned model endpoint to use. Publisher model format: `projects/{project\}/locations/{location\}/publishers/x/models/x` Tuned model endpoint format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + * model: 'publishers/my-publisher/models/my-model', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "cachedContent": "my_cachedContent", + * // "contents": [], + * // "generationConfig": {}, + * // "labels": {}, + * // "modelArmorConfig": {}, + * // "safetySettings": [], + * // "systemInstruction": {}, + * // "toolConfig": {}, + * // "tools": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "trainingPipelines": [] + * // "candidates": [], + * // "createTime": "my_createTime", + * // "modelVersion": "my_modelVersion", + * // "promptFeedback": {}, + * // "responseId": "my_responseId", + * // "usageMetadata": {} * // } * } * @@ -159887,62 +168812,61 @@ export namespace aiplatform_v1 { * @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$Trainingpipelines$List, + streamGenerateContent( + params: Params$Resource$Publishers$Models$Streamgeneratecontent, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Trainingpipelines$List, + streamGenerateContent( + params?: Params$Resource$Publishers$Models$Streamgeneratecontent, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - list( - params: Params$Resource$Projects$Locations$Trainingpipelines$List, + streamGenerateContent( + params: Params$Resource$Publishers$Models$Streamgeneratecontent, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Trainingpipelines$List, + streamGenerateContent( + params: Params$Resource$Publishers$Models$Streamgeneratecontent, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Trainingpipelines$List, - callback: BodyResponseCallback + streamGenerateContent( + params: Params$Resource$Publishers$Models$Streamgeneratecontent, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + streamGenerateContent( + callback: BodyResponseCallback ): void; - list( + streamGenerateContent( paramsOrCallback?: - | Params$Resource$Projects$Locations$Trainingpipelines$List - | BodyResponseCallback + | Params$Resource$Publishers$Models$Streamgeneratecontent + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Trainingpipelines$List; + {}) as Params$Resource$Publishers$Models$Streamgeneratecontent; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Trainingpipelines$List; + params = {} as Params$Resource$Publishers$Models$Streamgeneratecontent; options = {}; } @@ -159955,91 +168879,145 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/trainingPipelines').replace( + url: (rootUrl + '/v1/{+model}:streamGenerateContent').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['model'], + pathParams: ['model'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } } - export interface Params$Resource$Projects$Locations$Trainingpipelines$Cancel extends StandardParameters { + export interface Params$Resource$Publishers$Models$Computetokens extends StandardParameters { /** - * Required. The name of the TrainingPipeline to cancel. Format: `projects/{project\}/locations/{location\}/trainingPipelines/{training_pipeline\}` + * Required. The name of the Endpoint requested to get lists of tokens and token ids. */ - name?: string; + endpoint?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1CancelTrainingPipelineRequest; + requestBody?: Schema$GoogleCloudAiplatformV1ComputeTokensRequest; } - export interface Params$Resource$Projects$Locations$Trainingpipelines$Create extends StandardParameters { + export interface Params$Resource$Publishers$Models$Counttokens extends StandardParameters { /** - * Required. The resource name of the Location to create the TrainingPipeline in. Format: `projects/{project\}/locations/{location\}` + * Required. The name of the Endpoint requested to perform token counting. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` */ - parent?: string; + endpoint?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1TrainingPipeline; + requestBody?: Schema$GoogleCloudAiplatformV1CountTokensRequest; } - export interface Params$Resource$Projects$Locations$Trainingpipelines$Delete extends StandardParameters { + export interface Params$Resource$Publishers$Models$Fetchpredictoperation extends StandardParameters { /** - * Required. The name of the TrainingPipeline resource to be deleted. Format: `projects/{project\}/locations/{location\}/trainingPipelines/{training_pipeline\}` + * Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` or `projects/{project\}/locations/{location\}/publishers/{publisher\}/models/{model\}` */ - name?: string; + endpoint?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1FetchPredictOperationRequest; } - export interface Params$Resource$Projects$Locations$Trainingpipelines$Get extends StandardParameters { + export interface Params$Resource$Publishers$Models$Generatecontent extends StandardParameters { /** - * Required. The name of the TrainingPipeline resource. Format: `projects/{project\}/locations/{location\}/trainingPipelines/{training_pipeline\}` + * Required. The fully qualified name of the publisher model or tuned model endpoint to use. Publisher model format: `projects/{project\}/locations/{location\}/publishers/x/models/x` Tuned model endpoint format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + */ + model?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1GenerateContentRequest; + } + export interface Params$Resource$Publishers$Models$Get extends StandardParameters { + /** + * Optional. Token used to access Hugging Face gated models. + */ + huggingFaceToken?: string; + /** + * Optional. Boolean indicates whether the requested model is a Hugging Face model. + */ + isHuggingFaceModel?: boolean; + /** + * Optional. The IETF BCP-47 language code representing the language in which the publisher model's text information should be written in. + */ + languageCode?: string; + /** + * Required. The name of the PublisherModel resource. Format: `publishers/{publisher\}/models/{publisher_model\}` */ name?: string; + /** + * Optional. PublisherModel view specifying which fields to read. + */ + view?: string; } - export interface Params$Resource$Projects$Locations$Trainingpipelines$List extends StandardParameters { + export interface Params$Resource$Publishers$Models$Predict extends StandardParameters { /** - * The standard list filter. Supported fields: * `display_name` supports `=`, `!=` comparisons, and `:` wildcard. * `state` supports `=`, `!=` comparisons. * `training_task_definition` `=`, `!=` comparisons, and `:` wildcard. * `create_time` supports `=`, `!=`,`<`, `<=`,`\>`, `\>=` comparisons. `create_time` must be in RFC 3339 format. * `labels` supports general map functions that is: `labels.key=value` - key:value equality `labels.key:* - key existence Some examples of using the filter are: * `state="PIPELINE_STATE_SUCCEEDED" AND display_name:"my_pipeline_*"` * `state!="PIPELINE_STATE_FAILED" OR display_name="my_pipeline"` * `NOT display_name="my_pipeline"` * `create_time\>"2021-05-18T00:00:00Z"` * `training_task_definition:"*automl_text_classification*"` + * Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` */ - filter?: string; + endpoint?: string; + /** - * The standard list page size. + * Request body metadata */ - pageSize?: number; + requestBody?: Schema$GoogleCloudAiplatformV1PredictRequest; + } + export interface Params$Resource$Publishers$Models$Predictlongrunning extends StandardParameters { /** - * The standard list page token. Typically obtained via ListTrainingPipelinesResponse.next_page_token of the previous PipelineService.ListTrainingPipelines call. + * Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` or `projects/{project\}/locations/{location\}/publishers/{publisher\}/models/{model\}` */ - pageToken?: string; + endpoint?: string; + /** - * Required. The resource name of the Location to list the TrainingPipelines from. Format: `projects/{project\}/locations/{location\}` + * Request body metadata */ - parent?: string; + requestBody?: Schema$GoogleCloudAiplatformV1PredictLongRunningRequest; + } + export interface Params$Resource$Publishers$Models$Streamgeneratecontent extends StandardParameters { /** - * Mask specifying which fields to read. + * Required. The fully qualified name of the publisher model or tuned model endpoint to use. Publisher model format: `projects/{project\}/locations/{location\}/publishers/x/models/x` Tuned model endpoint format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` */ - readMask?: string; + model?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1GenerateContentRequest; } - export class Resource$Projects$Locations$Trainingpipelines$Operations { + export class Resource$Ragcorpora { + context: APIRequestContext; + operations: Resource$Ragcorpora$Operations; + ragFiles: Resource$Ragcorpora$Ragfiles; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = new Resource$Ragcorpora$Operations(this.context); + this.ragFiles = new Resource$Ragcorpora$Ragfiles(this.context); + } + } + + export class Resource$Ragcorpora$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -160075,11 +169053,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.trainingPipelines.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline/operations/my-operation', - * }); + * const res = await aiplatform.ragCorpora.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'ragCorpora/[^/]+/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -160099,31 +169076,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel, + params: Params$Resource$Ragcorpora$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel, + params?: Params$Resource$Ragcorpora$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel, + params: Params$Resource$Ragcorpora$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel, + params: Params$Resource$Ragcorpora$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel, + params: Params$Resource$Ragcorpora$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel + | Params$Resource$Ragcorpora$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -160139,13 +169116,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel; + {}) as Params$Resource$Ragcorpora$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel; + params = {} as Params$Resource$Ragcorpora$Operations$Cancel; options = {}; } @@ -160209,11 +169185,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.trainingPipelines.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline/operations/my-operation', - * }); + * const res = await aiplatform.ragCorpora.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'ragCorpora/[^/]+/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -160233,31 +169208,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete, + params: Params$Resource$Ragcorpora$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete, + params?: Params$Resource$Ragcorpora$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete, + params: Params$Resource$Ragcorpora$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete, + params: Params$Resource$Ragcorpora$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete, + params: Params$Resource$Ragcorpora$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete + | Params$Resource$Ragcorpora$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -160273,13 +169248,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete; + {}) as Params$Resource$Ragcorpora$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete; + params = {} as Params$Resource$Ragcorpora$Operations$Delete; options = {}; } @@ -160343,11 +169317,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.trainingPipelines.operations.get({ - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline/operations/my-operation', - * }); + * const res = await aiplatform.ragCorpora.operations.get({ + * // The name of the operation resource. + * name: 'ragCorpora/[^/]+/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -160373,27 +169346,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get, + params: Params$Resource$Ragcorpora$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get, + params?: Params$Resource$Ragcorpora$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get, + params: Params$Resource$Ragcorpora$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get, + params: Params$Resource$Ragcorpora$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get, + params: Params$Resource$Ragcorpora$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -160401,7 +169374,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get + | Params$Resource$Ragcorpora$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -160417,13 +169390,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get; + {}) as Params$Resource$Ragcorpora$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get; + params = {} as Params$Resource$Ragcorpora$Operations$Get; options = {}; } @@ -160487,19 +169459,18 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.trainingPipelines.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', - * }); + * const res = await aiplatform.ragCorpora.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'ragCorpora/[^/]+', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -160523,29 +169494,29 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$List, + params: Params$Resource$Ragcorpora$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Trainingpipelines$Operations$List, + params?: Params$Resource$Ragcorpora$Operations$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$List, + params: Params$Resource$Ragcorpora$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$List, + params: Params$Resource$Ragcorpora$Operations$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$List, + params: Params$Resource$Ragcorpora$Operations$List, callback: BodyResponseCallback ): void; list( @@ -160553,7 +169524,7 @@ export namespace aiplatform_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Trainingpipelines$Operations$List + | Params$Resource$Ragcorpora$Operations$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -160571,13 +169542,12 @@ export namespace aiplatform_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Trainingpipelines$Operations$List; + {}) as Params$Resource$Ragcorpora$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Trainingpipelines$Operations$List; + params = {} as Params$Resource$Ragcorpora$Operations$List; options = {}; } @@ -160646,13 +169616,12 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.projects.locations.trainingPipelines.operations.wait({ - * // The name of the operation resource to wait on. - * name: 'projects/my-project/locations/my-location/trainingPipelines/my-trainingPipeline/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', - * }); + * const res = await aiplatform.ragCorpora.operations.wait({ + * // The name of the operation resource to wait on. + * name: 'ragCorpora/[^/]+/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -160678,27 +169647,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ wait( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait, + params: Params$Resource$Ragcorpora$Operations$Wait, options: StreamMethodOptions ): Promise>; wait( - params?: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait, + params?: Params$Resource$Ragcorpora$Operations$Wait, options?: MethodOptions ): Promise>; wait( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait, + params: Params$Resource$Ragcorpora$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait, + params: Params$Resource$Ragcorpora$Operations$Wait, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait, + params: Params$Resource$Ragcorpora$Operations$Wait, callback: BodyResponseCallback ): void; wait( @@ -160706,7 +169675,7 @@ export namespace aiplatform_v1 { ): void; wait( paramsOrCallback?: - | Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait + | Params$Resource$Ragcorpora$Operations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -160722,13 +169691,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait; + {}) as Params$Resource$Ragcorpora$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait; + params = {} as Params$Resource$Ragcorpora$Operations$Wait; options = {}; } @@ -160763,25 +169731,25 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Projects$Locations$Trainingpipelines$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Ragcorpora$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Projects$Locations$Trainingpipelines$Operations$Delete extends StandardParameters { + export interface Params$Resource$Ragcorpora$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Projects$Locations$Trainingpipelines$Operations$Get extends StandardParameters { + export interface Params$Resource$Ragcorpora$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Projects$Locations$Trainingpipelines$Operations$List extends StandardParameters { + export interface Params$Resource$Ragcorpora$Operations$List extends StandardParameters { /** * The standard list filter. */ @@ -160803,7 +169771,7 @@ export namespace aiplatform_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Projects$Locations$Trainingpipelines$Operations$Wait extends StandardParameters { + export interface Params$Resource$Ragcorpora$Operations$Wait extends StandardParameters { /** * The name of the operation resource to wait on. */ @@ -160814,18 +169782,25 @@ export namespace aiplatform_v1 { timeout?: string; } - export class Resource$Projects$Locations$Tuningjobs { + export class Resource$Ragcorpora$Ragfiles { context: APIRequestContext; - operations: Resource$Projects$Locations$Tuningjobs$Operations; + operations: Resource$Ragcorpora$Ragfiles$Operations; constructor(context: APIRequestContext) { this.context = context; - this.operations = new Resource$Projects$Locations$Tuningjobs$Operations( + this.operations = new Resource$Ragcorpora$Ragfiles$Operations( this.context ); } + } + + export class Resource$Ragcorpora$Ragfiles$Operations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Cancels a tuning job. Starts an asynchronous cancellation request. The server makes a best effort to cancel the job, but success is not guaranteed. Clients can use GenAiTuningService.GetTuningJob or other methods to check whether the cancellation succeeded or whether the job completed despite cancellation. On successful cancellation, the tuning job is not deleted. Instead, its state is set to `CANCELLED`, and `error` is set to a status with a `google.rpc.Status.code` of 1, corresponding to `Code.CANCELLED`. + * 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`. * @example * ```js * // Before running the sample: @@ -160854,15 +169829,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tuningJobs.cancel({ - * // Required. The name of the tuning job to cancel. Format: `projects/{project\}/locations/{location\}/tuningJobs/{tuning_job\}` - * name: 'projects/my-project/locations/my-location/tuningJobs/my-tuningJob', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, + * const res = await aiplatform.ragCorpora.ragFiles.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'ragCorpora/[^/]+/ragFiles/my-ragFile/operations/my-operation', * }); * console.log(res.data); * @@ -160883,31 +169852,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Projects$Locations$Tuningjobs$Cancel, + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Projects$Locations$Tuningjobs$Cancel, + params?: Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Projects$Locations$Tuningjobs$Cancel, + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Tuningjobs$Cancel, + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Tuningjobs$Cancel, + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tuningjobs$Cancel + | Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -160923,12 +169892,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tuningjobs$Cancel; + {}) as Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Tuningjobs$Cancel; + params = {} as Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel; options = {}; } @@ -160963,7 +169932,7 @@ export namespace aiplatform_v1 { } /** - * Creates a tuning job. A created tuning job will be subsequently executed to start the model tuning process. + * 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`. * @example * ```js * // Before running the sample: @@ -160992,60 +169961,14 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tuningJobs.create({ - * // Required. The resource name of the location to create the tuning job in. Format: `projects/{project\}/locations/{location\}` - * parent: 'projects/my-project/locations/my-location', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "baseModel": "my_baseModel", - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "encryptionSpec": {}, - * // "endTime": "my_endTime", - * // "error": {}, - * // "experiment": "my_experiment", - * // "labels": {}, - * // "name": "my_name", - * // "preTunedModel": {}, - * // "preferenceOptimizationSpec": {}, - * // "serviceAccount": "my_serviceAccount", - * // "startTime": "my_startTime", - * // "state": "my_state", - * // "supervisedTuningSpec": {}, - * // "tunedModel": {}, - * // "tunedModelDisplayName": "my_tunedModelDisplayName", - * // "tuningDataStats": {}, - * // "updateTime": "my_updateTime" - * // } - * }, + * const res = await aiplatform.ragCorpora.ragFiles.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'ragCorpora/[^/]+/ragFiles/my-ragFile/operations/my-operation', * }); * console.log(res.data); * * // Example response - * // { - * // "baseModel": "my_baseModel", - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "encryptionSpec": {}, - * // "endTime": "my_endTime", - * // "error": {}, - * // "experiment": "my_experiment", - * // "labels": {}, - * // "name": "my_name", - * // "preTunedModel": {}, - * // "preferenceOptimizationSpec": {}, - * // "serviceAccount": "my_serviceAccount", - * // "startTime": "my_startTime", - * // "state": "my_state", - * // "supervisedTuningSpec": {}, - * // "tunedModel": {}, - * // "tunedModelDisplayName": "my_tunedModelDisplayName", - * // "tuningDataStats": {}, - * // "updateTime": "my_updateTime" - * // } + * // {} * } * * main().catch(e => { @@ -161060,61 +169983,53 @@ export namespace aiplatform_v1 { * @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$Tuningjobs$Create, + delete( + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Delete, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Tuningjobs$Create, + delete( + params?: Params$Resource$Ragcorpora$Ragfiles$Operations$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - create( - params: Params$Resource$Projects$Locations$Tuningjobs$Create, + ): Promise>; + delete( + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Tuningjobs$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Tuningjobs$Create, - callback: BodyResponseCallback + delete( + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + delete( + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Delete, + callback: BodyResponseCallback ): void; - create( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tuningjobs$Create - | BodyResponseCallback + | Params$Resource$Ragcorpora$Ragfiles$Operations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tuningjobs$Create; + {}) as Params$Resource$Ragcorpora$Ragfiles$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Tuningjobs$Create; + params = {} as Params$Resource$Ragcorpora$Ragfiles$Operations$Delete; options = {}; } @@ -161127,34 +170042,29 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/tuningJobs').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Gets a tuning job. + * 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. * @example * ```js * // Before running the sample: @@ -161183,33 +170093,19 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tuningJobs.get({ - * // Required. The name of the tuning job to retrieve. Format: `projects/{project\}/locations/{location\}/tuningJobs/{tuning_job\}` - * name: 'projects/my-project/locations/my-location/tuningJobs/my-tuningJob', + * const res = await aiplatform.ragCorpora.ragFiles.operations.get({ + * // The name of the operation resource. + * name: 'ragCorpora/[^/]+/ragFiles/my-ragFile/operations/my-operation', * }); * console.log(res.data); * * // Example response * // { - * // "baseModel": "my_baseModel", - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "encryptionSpec": {}, - * // "endTime": "my_endTime", + * // "done": false, * // "error": {}, - * // "experiment": "my_experiment", - * // "labels": {}, + * // "metadata": {}, * // "name": "my_name", - * // "preTunedModel": {}, - * // "preferenceOptimizationSpec": {}, - * // "serviceAccount": "my_serviceAccount", - * // "startTime": "my_startTime", - * // "state": "my_state", - * // "supervisedTuningSpec": {}, - * // "tunedModel": {}, - * // "tunedModelDisplayName": "my_tunedModelDisplayName", - * // "tuningDataStats": {}, - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -161226,60 +170122,56 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Tuningjobs$Get, + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Tuningjobs$Get, + params?: Params$Resource$Ragcorpora$Ragfiles$Operations$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; get( - params: Params$Resource$Projects$Locations$Tuningjobs$Get, + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Tuningjobs$Get, + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Tuningjobs$Get, - callback: BodyResponseCallback + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Get, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tuningjobs$Get - | BodyResponseCallback + | Params$Resource$Ragcorpora$Ragfiles$Operations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tuningjobs$Get; + {}) as Params$Resource$Ragcorpora$Ragfiles$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Tuningjobs$Get; + params = {} as Params$Resource$Ragcorpora$Ragfiles$Operations$Get; options = {}; } @@ -161304,19 +170196,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Lists tuning jobs in a location. + * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. * @example * ```js * // Before running the sample: @@ -161345,22 +170235,25 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tuningJobs.list({ - * // Optional. The standard list filter. + * const res = await aiplatform.ragCorpora.ragFiles.operations.list({ + * // The standard list filter. * filter: 'placeholder-value', - * // Optional. The standard list page size. + * // The name of the operation's parent resource. + * name: 'ragCorpora/[^/]+/ragFiles/my-ragFile', + * // The standard list page size. * pageSize: 'placeholder-value', - * // Optional. The standard list page token. Typically obtained from ListTuningJobsResponse.next_page_token of the previous GenAiTuningService.ListTuningJobs call. + * // The standard list page token. * pageToken: 'placeholder-value', - * // Required. The resource name of the location to list the tuning jobs from. Format: `projects/{project\}/locations/{location\}` - * parent: 'projects/my-project/locations/my-location', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "tuningJobs": [] + * // "operations": [], + * // "unreachable": [] * // } * } * @@ -161377,60 +170270,60 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Tuningjobs$List, + params: Params$Resource$Ragcorpora$Ragfiles$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Tuningjobs$List, + params?: Params$Resource$Ragcorpora$Ragfiles$Operations$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Tuningjobs$List, + params: Params$Resource$Ragcorpora$Ragfiles$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Tuningjobs$List, + params: Params$Resource$Ragcorpora$Ragfiles$Operations$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Tuningjobs$List, - callback: BodyResponseCallback + params: Params$Resource$Ragcorpora$Ragfiles$Operations$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tuningjobs$List - | BodyResponseCallback + | Params$Resource$Ragcorpora$Ragfiles$Operations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tuningjobs$List; + {}) as Params$Resource$Ragcorpora$Ragfiles$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Tuningjobs$List; + params = {} as Params$Resource$Ragcorpora$Ragfiles$Operations$List; options = {}; } @@ -161443,7 +170336,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/tuningJobs').replace( + url: (rootUrl + '/v1/{+name}/operations').replace( /([^:]\/)\/+/g, '$1' ), @@ -161453,24 +170346,24 @@ export namespace aiplatform_v1 { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Rebase a tuned model. A rebase operation takes a model that was previously tuned on a base model version, and retunes it on a new base model version. The rebase operation creates a new tuning job and a new tuned model. + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. * @example * ```js * // Before running the sample: @@ -161499,20 +170392,11 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tuningJobs.rebaseTunedModel({ - * // Required. The resource name of the location in which to rebase the Model. Format: `projects/{project\}/locations/{location\}` - * parent: 'projects/my-project/locations/my-location', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "artifactDestination": {}, - * // "deployToSameEndpoint": false, - * // "tunedModelRef": {}, - * // "tuningJob": {} - * // } - * }, + * const res = await aiplatform.ragCorpora.ragFiles.operations.wait({ + * // The name of the operation resource to wait on. + * name: 'ragCorpora/[^/]+/ragFiles/my-ragFile/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', * }); * console.log(res.data); * @@ -161538,36 +170422,36 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - rebaseTunedModel( - params: Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel, + wait( + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Wait, options: StreamMethodOptions ): Promise>; - rebaseTunedModel( - params?: Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel, + wait( + params?: Params$Resource$Ragcorpora$Ragfiles$Operations$Wait, options?: MethodOptions ): Promise>; - rebaseTunedModel( - params: Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel, + wait( + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - rebaseTunedModel( - params: Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel, + wait( + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Wait, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - rebaseTunedModel( - params: Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel, + wait( + params: Params$Resource$Ragcorpora$Ragfiles$Operations$Wait, callback: BodyResponseCallback ): void; - rebaseTunedModel( + wait( callback: BodyResponseCallback ): void; - rebaseTunedModel( + wait( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel + | Params$Resource$Ragcorpora$Ragfiles$Operations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -161583,13 +170467,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel; + {}) as Params$Resource$Ragcorpora$Ragfiles$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel; + params = {} as Params$Resource$Ragcorpora$Ragfiles$Operations$Wait; options = {}; } @@ -161602,17 +170485,15 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v1/{+parent}/tuningJobs:rebaseTunedModel' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -161626,65 +170507,67 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Projects$Locations$Tuningjobs$Cancel extends StandardParameters { + export interface Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel extends StandardParameters { /** - * Required. The name of the tuning job to cancel. Format: `projects/{project\}/locations/{location\}/tuningJobs/{tuning_job\}` + * The name of the operation resource to be cancelled. */ name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1CancelTuningJobRequest; } - export interface Params$Resource$Projects$Locations$Tuningjobs$Create extends StandardParameters { - /** - * Required. The resource name of the location to create the tuning job in. Format: `projects/{project\}/locations/{location\}` - */ - parent?: string; - + export interface Params$Resource$Ragcorpora$Ragfiles$Operations$Delete extends StandardParameters { /** - * Request body metadata + * The name of the operation resource to be deleted. */ - requestBody?: Schema$GoogleCloudAiplatformV1TuningJob; + name?: string; } - export interface Params$Resource$Projects$Locations$Tuningjobs$Get extends StandardParameters { + export interface Params$Resource$Ragcorpora$Ragfiles$Operations$Get extends StandardParameters { /** - * Required. The name of the tuning job to retrieve. Format: `projects/{project\}/locations/{location\}/tuningJobs/{tuning_job\}` + * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tuningjobs$List extends StandardParameters { + export interface Params$Resource$Ragcorpora$Ragfiles$Operations$List extends StandardParameters { /** - * Optional. The standard list filter. + * The standard list filter. */ filter?: string; /** - * Optional. The standard list page size. + * The name of the operation's parent resource. + */ + name?: string; + /** + * The standard list page size. */ pageSize?: number; /** - * Optional. The standard list page token. Typically obtained from ListTuningJobsResponse.next_page_token of the previous GenAiTuningService.ListTuningJobs call. + * The standard list page token. */ pageToken?: string; /** - * Required. The resource name of the location to list the tuning jobs from. Format: `projects/{project\}/locations/{location\}` + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. */ - parent?: string; + returnPartialSuccess?: boolean; } - export interface Params$Resource$Projects$Locations$Tuningjobs$Rebasetunedmodel extends StandardParameters { + export interface Params$Resource$Ragcorpora$Ragfiles$Operations$Wait extends StandardParameters { /** - * Required. The resource name of the location in which to rebase the Model. Format: `projects/{project\}/locations/{location\}` + * The name of the operation resource to wait on. */ - parent?: string; - + name?: string; /** - * Request body metadata + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. */ - requestBody?: Schema$GoogleCloudAiplatformV1RebaseTunedModelRequest; + timeout?: string; } - export class Resource$Projects$Locations$Tuningjobs$Operations { + export class Resource$Ragengineconfig { + context: APIRequestContext; + operations: Resource$Ragengineconfig$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = new Resource$Ragengineconfig$Operations(this.context); + } + } + + export class Resource$Ragengineconfig$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -161720,9 +170603,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tuningJobs.operations.cancel({ + * const res = await aiplatform.ragEngineConfig.operations.cancel({ * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/tuningJobs/my-tuningJob/operations/my-operation', + * name: 'ragEngineConfig/operations/my-operation', * }); * console.log(res.data); * @@ -161743,31 +170626,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel, + params: Params$Resource$Ragengineconfig$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel, + params?: Params$Resource$Ragengineconfig$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel, + params: Params$Resource$Ragengineconfig$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel, + params: Params$Resource$Ragengineconfig$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel, + params: Params$Resource$Ragengineconfig$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel + | Params$Resource$Ragengineconfig$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -161783,13 +170666,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel; + {}) as Params$Resource$Ragengineconfig$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tuningjobs$Operations$Cancel; + params = {} as Params$Resource$Ragengineconfig$Operations$Cancel; options = {}; } @@ -161853,9 +170735,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tuningJobs.operations.delete({ + * const res = await aiplatform.ragEngineConfig.operations.delete({ * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/tuningJobs/my-tuningJob/operations/my-operation', + * name: 'ragEngineConfig/operations/my-operation', * }); * console.log(res.data); * @@ -161876,31 +170758,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete, + params: Params$Resource$Ragengineconfig$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete, + params?: Params$Resource$Ragengineconfig$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete, + params: Params$Resource$Ragengineconfig$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete, + params: Params$Resource$Ragengineconfig$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete, + params: Params$Resource$Ragengineconfig$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete + | Params$Resource$Ragengineconfig$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -161916,13 +170798,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete; + {}) as Params$Resource$Ragengineconfig$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete; + params = {} as Params$Resource$Ragengineconfig$Operations$Delete; options = {}; } @@ -161986,9 +170867,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tuningJobs.operations.get({ + * const res = await aiplatform.ragEngineConfig.operations.get({ * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/tuningJobs/my-tuningJob/operations/my-operation', + * name: 'ragEngineConfig/operations/my-operation', * }); * console.log(res.data); * @@ -162015,27 +170896,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Get, + params: Params$Resource$Ragengineconfig$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Tuningjobs$Operations$Get, + params?: Params$Resource$Ragengineconfig$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Get, + params: Params$Resource$Ragengineconfig$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Get, + params: Params$Resource$Ragengineconfig$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$Get, + params: Params$Resource$Ragengineconfig$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -162043,7 +170924,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tuningjobs$Operations$Get + | Params$Resource$Ragengineconfig$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -162059,13 +170940,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tuningjobs$Operations$Get; + {}) as Params$Resource$Ragengineconfig$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tuningjobs$Operations$Get; + params = {} as Params$Resource$Ragengineconfig$Operations$Get; options = {}; } @@ -162129,11 +171009,11 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.projects.locations.tuningJobs.operations.list({ + * const res = await aiplatform.ragEngineConfig.operations.list({ * // The standard list filter. * filter: 'placeholder-value', * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location/tuningJobs/my-tuningJob', + * name: 'ragEngineConfig', * // The standard list page size. * pageSize: 'placeholder-value', * // The standard list page token. @@ -162164,29 +171044,29 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$List, + params: Params$Resource$Ragengineconfig$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Tuningjobs$Operations$List, + params?: Params$Resource$Ragengineconfig$Operations$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$List, + params: Params$Resource$Ragengineconfig$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$List, + params: Params$Resource$Ragengineconfig$Operations$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Tuningjobs$Operations$List, + params: Params$Resource$Ragengineconfig$Operations$List, callback: BodyResponseCallback ): void; list( @@ -162194,7 +171074,7 @@ export namespace aiplatform_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Tuningjobs$Operations$List + | Params$Resource$Ragengineconfig$Operations$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -162212,13 +171092,12 @@ export namespace aiplatform_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Tuningjobs$Operations$List; + {}) as Params$Resource$Ragengineconfig$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Tuningjobs$Operations$List; + params = {} as Params$Resource$Ragengineconfig$Operations$List; options = {}; } @@ -162256,27 +171135,171 @@ export namespace aiplatform_v1 { ); } } + + /** + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.ragEngineConfig.operations.wait({ + * // The name of the operation resource to wait on. + * name: 'ragEngineConfig/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + wait( + params: Params$Resource$Ragengineconfig$Operations$Wait, + options: StreamMethodOptions + ): Promise>; + wait( + params?: Params$Resource$Ragengineconfig$Operations$Wait, + options?: MethodOptions + ): Promise>; + wait( + params: Params$Resource$Ragengineconfig$Operations$Wait, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + wait( + params: Params$Resource$Ragengineconfig$Operations$Wait, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + wait( + params: Params$Resource$Ragengineconfig$Operations$Wait, + callback: BodyResponseCallback + ): void; + wait( + callback: BodyResponseCallback + ): void; + wait( + paramsOrCallback?: + | Params$Resource$Ragengineconfig$Operations$Wait + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Ragengineconfig$Operations$Wait; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Ragengineconfig$Operations$Wait; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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$Tuningjobs$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Ragengineconfig$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tuningjobs$Operations$Delete extends StandardParameters { + export interface Params$Resource$Ragengineconfig$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tuningjobs$Operations$Get extends StandardParameters { + export interface Params$Resource$Ragengineconfig$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Projects$Locations$Tuningjobs$Operations$List extends StandardParameters { + export interface Params$Resource$Ragengineconfig$Operations$List extends StandardParameters { /** * The standard list filter. */ @@ -162298,24 +171321,44 @@ export namespace aiplatform_v1 { */ returnPartialSuccess?: boolean; } - - export class Resource$Publishers { - context: APIRequestContext; - models: Resource$Publishers$Models; - constructor(context: APIRequestContext) { - this.context = context; - this.models = new Resource$Publishers$Models(this.context); - } + export interface Params$Resource$Ragengineconfig$Operations$Wait extends StandardParameters { + /** + * The name of the operation resource to wait on. + */ + name?: string; + /** + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + */ + timeout?: string; } - export class Resource$Publishers$Models { + export class Resource$Reasoningengines { context: APIRequestContext; + memories: Resource$Reasoningengines$Memories; + operations: Resource$Reasoningengines$Operations; + runtimeRevisions: Resource$Reasoningengines$Runtimerevisions; + sandboxEnvironments: Resource$Reasoningengines$Sandboxenvironments; + sandboxEnvironmentSnapshots: Resource$Reasoningengines$Sandboxenvironmentsnapshots; + sandboxEnvironmentTemplates: Resource$Reasoningengines$Sandboxenvironmenttemplates; + sessions: Resource$Reasoningengines$Sessions; constructor(context: APIRequestContext) { this.context = context; + this.memories = new Resource$Reasoningengines$Memories(this.context); + this.operations = new Resource$Reasoningengines$Operations(this.context); + this.runtimeRevisions = new Resource$Reasoningengines$Runtimerevisions( + this.context + ); + this.sandboxEnvironments = + new Resource$Reasoningengines$Sandboxenvironments(this.context); + this.sandboxEnvironmentSnapshots = + new Resource$Reasoningengines$Sandboxenvironmentsnapshots(this.context); + this.sandboxEnvironmentTemplates = + new Resource$Reasoningengines$Sandboxenvironmenttemplates(this.context); + this.sessions = new Resource$Reasoningengines$Sessions(this.context); } /** - * Return a list of tokens based on the input text. + * Async query using a reasoning engine. * @example * ```js * // Before running the sample: @@ -162344,17 +171387,16 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.publishers.models.computeTokens({ - * // Required. The name of the Endpoint requested to get lists of tokens and token ids. - * endpoint: 'publishers/my-publisher/models/my-model', + * const res = await aiplatform.reasoningEngines.asyncQuery({ + * // Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * name: 'reasoningEngines/my-reasoningEngine', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "contents": [], - * // "instances": [], - * // "model": "my_model" + * // "inputGcsUri": "my_inputGcsUri", + * // "outputGcsUri": "my_outputGcsUri" * // } * }, * }); @@ -162362,7 +171404,11 @@ export namespace aiplatform_v1 { * * // Example response * // { - * // "tokensInfo": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -162378,61 +171424,57 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - computeTokens( - params: Params$Resource$Publishers$Models$Computetokens, + asyncQuery( + params: Params$Resource$Reasoningengines$Asyncquery, options: StreamMethodOptions ): Promise>; - computeTokens( - params?: Params$Resource$Publishers$Models$Computetokens, + asyncQuery( + params?: Params$Resource$Reasoningengines$Asyncquery, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - computeTokens( - params: Params$Resource$Publishers$Models$Computetokens, + ): Promise>; + asyncQuery( + params: Params$Resource$Reasoningengines$Asyncquery, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - computeTokens( - params: Params$Resource$Publishers$Models$Computetokens, + asyncQuery( + params: Params$Resource$Reasoningengines$Asyncquery, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - computeTokens( - params: Params$Resource$Publishers$Models$Computetokens, - callback: BodyResponseCallback + asyncQuery( + params: Params$Resource$Reasoningengines$Asyncquery, + callback: BodyResponseCallback ): void; - computeTokens( - callback: BodyResponseCallback + asyncQuery( + callback: BodyResponseCallback ): void; - computeTokens( + asyncQuery( paramsOrCallback?: - | Params$Resource$Publishers$Models$Computetokens - | BodyResponseCallback + | Params$Resource$Reasoningengines$Asyncquery + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Publishers$Models$Computetokens; + {}) as Params$Resource$Reasoningengines$Asyncquery; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Publishers$Models$Computetokens; + params = {} as Params$Resource$Reasoningengines$Asyncquery; options = {}; } @@ -162445,7 +171487,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+endpoint}:computeTokens').replace( + url: (rootUrl + '/v1/{+name}:asyncQuery').replace( /([^:]\/)\/+/g, '$1' ), @@ -162455,24 +171497,22 @@ export namespace aiplatform_v1 { options ), params, - requiredParams: ['endpoint'], - pathParams: ['endpoint'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Perform a token counting. + * Creates a reasoning engine. * @example * ```js * // Before running the sample: @@ -162501,20 +171541,24 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.publishers.models.countTokens({ - * // Required. The name of the Endpoint requested to perform token counting. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` - * endpoint: 'publishers/my-publisher/models/my-model', + * const res = await aiplatform.reasoningEngines.create({ + * // Required. The resource name of the Location to create the ReasoningEngine in. Format: `projects/{project\}/locations/{location\}` + * parent: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "contents": [], - * // "generationConfig": {}, - * // "instances": [], - * // "model": "my_model", - * // "systemInstruction": {}, - * // "tools": [] + * // "contextSpec": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "encryptionSpec": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "spec": {}, + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -162522,9 +171566,11 @@ export namespace aiplatform_v1 { * * // Example response * // { - * // "promptTokensDetails": [], - * // "totalBillableCharacters": 0, - * // "totalTokens": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -162540,61 +171586,57 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - countTokens( - params: Params$Resource$Publishers$Models$Counttokens, + create( + params: Params$Resource$Reasoningengines$Create, options: StreamMethodOptions ): Promise>; - countTokens( - params?: Params$Resource$Publishers$Models$Counttokens, + create( + params?: Params$Resource$Reasoningengines$Create, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - countTokens( - params: Params$Resource$Publishers$Models$Counttokens, + ): Promise>; + create( + params: Params$Resource$Reasoningengines$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - countTokens( - params: Params$Resource$Publishers$Models$Counttokens, + create( + params: Params$Resource$Reasoningengines$Create, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - countTokens( - params: Params$Resource$Publishers$Models$Counttokens, - callback: BodyResponseCallback + create( + params: Params$Resource$Reasoningengines$Create, + callback: BodyResponseCallback ): void; - countTokens( - callback: BodyResponseCallback + create( + callback: BodyResponseCallback ): void; - countTokens( + create( paramsOrCallback?: - | Params$Resource$Publishers$Models$Counttokens - | BodyResponseCallback + | Params$Resource$Reasoningengines$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Publishers$Models$Counttokens; + {}) as Params$Resource$Reasoningengines$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Publishers$Models$Counttokens; + params = {} as Params$Resource$Reasoningengines$Create; options = {}; } @@ -162607,7 +171649,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+endpoint}:countTokens').replace( + url: (rootUrl + '/v1/reasoningEngines').replace( /([^:]\/)\/+/g, '$1' ), @@ -162617,24 +171659,22 @@ export namespace aiplatform_v1 { options ), params, - requiredParams: ['endpoint'], - pathParams: ['endpoint'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Fetch an asynchronous online prediction operation. + * Deletes a reasoning engine. * @example * ```js * // Before running the sample: @@ -162655,10 +171695,7 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -162666,17 +171703,11 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.publishers.models.fetchPredictOperation({ - * // Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` or `projects/{project\}/locations/{location\}/publishers/{publisher\}/models/{model\}` - * endpoint: 'publishers/my-publisher/models/my-model', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "operationName": "my_operationName" - * // } - * }, + * const res = await aiplatform.reasoningEngines.delete({ + * // Optional. If set to true, child resources of this reasoning engine will also be deleted. Otherwise, the request will fail with FAILED_PRECONDITION error when the reasoning engine has undeleted child resources. + * force: 'placeholder-value', + * // Required. The name of the ReasoningEngine resource to be deleted. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * name: 'reasoningEngines/my-reasoningEngine', * }); * console.log(res.data); * @@ -162702,36 +171733,36 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - fetchPredictOperation( - params: Params$Resource$Publishers$Models$Fetchpredictoperation, + delete( + params: Params$Resource$Reasoningengines$Delete, options: StreamMethodOptions ): Promise>; - fetchPredictOperation( - params?: Params$Resource$Publishers$Models$Fetchpredictoperation, + delete( + params?: Params$Resource$Reasoningengines$Delete, options?: MethodOptions ): Promise>; - fetchPredictOperation( - params: Params$Resource$Publishers$Models$Fetchpredictoperation, + delete( + params: Params$Resource$Reasoningengines$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - fetchPredictOperation( - params: Params$Resource$Publishers$Models$Fetchpredictoperation, + delete( + params: Params$Resource$Reasoningengines$Delete, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - fetchPredictOperation( - params: Params$Resource$Publishers$Models$Fetchpredictoperation, + delete( + params: Params$Resource$Reasoningengines$Delete, callback: BodyResponseCallback ): void; - fetchPredictOperation( + delete( callback: BodyResponseCallback ): void; - fetchPredictOperation( + delete( paramsOrCallback?: - | Params$Resource$Publishers$Models$Fetchpredictoperation + | Params$Resource$Reasoningengines$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -162747,12 +171778,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Publishers$Models$Fetchpredictoperation; + {}) as Params$Resource$Reasoningengines$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Publishers$Models$Fetchpredictoperation; + params = {} as Params$Resource$Reasoningengines$Delete; options = {}; } @@ -162765,18 +171796,15 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+endpoint}:fetchPredictOperation').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['endpoint'], - pathParams: ['endpoint'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -162790,7 +171818,7 @@ export namespace aiplatform_v1 { } /** - * Generate content with multimodal inputs. + * Executes code statelessly. * @example * ```js * // Before running the sample: @@ -162811,10 +171839,7 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -162822,23 +171847,15 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.publishers.models.generateContent({ - * // Required. The fully qualified name of the publisher model or tuned model endpoint to use. Publisher model format: `projects/{project\}/locations/{location\}/publishers/x/models/x` Tuned model endpoint format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` - * model: 'publishers/my-publisher/models/my-model', + * const res = await aiplatform.reasoningEngines.executeCode({ + * // Required. The resource name of the sandbox environment to execute. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * name: 'reasoningEngines/my-reasoningEngine', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "cachedContent": "my_cachedContent", - * // "contents": [], - * // "generationConfig": {}, - * // "labels": {}, - * // "modelArmorConfig": {}, - * // "safetySettings": [], - * // "systemInstruction": {}, - * // "toolConfig": {}, - * // "tools": [] + * // "inputs": [] * // } * }, * }); @@ -162846,12 +171863,7 @@ export namespace aiplatform_v1 { * * // Example response * // { - * // "candidates": [], - * // "createTime": "my_createTime", - * // "modelVersion": "my_modelVersion", - * // "promptFeedback": {}, - * // "responseId": "my_responseId", - * // "usageMetadata": {} + * // "outputs": [] * // } * } * @@ -162867,61 +171879,61 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - generateContent( - params: Params$Resource$Publishers$Models$Generatecontent, + executeCode( + params: Params$Resource$Reasoningengines$Executecode, options: StreamMethodOptions ): Promise>; - generateContent( - params?: Params$Resource$Publishers$Models$Generatecontent, + executeCode( + params?: Params$Resource$Reasoningengines$Executecode, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - generateContent( - params: Params$Resource$Publishers$Models$Generatecontent, + executeCode( + params: Params$Resource$Reasoningengines$Executecode, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - generateContent( - params: Params$Resource$Publishers$Models$Generatecontent, + executeCode( + params: Params$Resource$Reasoningengines$Executecode, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - generateContent( - params: Params$Resource$Publishers$Models$Generatecontent, - callback: BodyResponseCallback + executeCode( + params: Params$Resource$Reasoningengines$Executecode, + callback: BodyResponseCallback ): void; - generateContent( - callback: BodyResponseCallback + executeCode( + callback: BodyResponseCallback ): void; - generateContent( + executeCode( paramsOrCallback?: - | Params$Resource$Publishers$Models$Generatecontent - | BodyResponseCallback + | Params$Resource$Reasoningengines$Executecode + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Publishers$Models$Generatecontent; + {}) as Params$Resource$Reasoningengines$Executecode; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Publishers$Models$Generatecontent; + params = {} as Params$Resource$Reasoningengines$Executecode; options = {}; } @@ -162934,7 +171946,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+model}:generateContent').replace( + url: (rootUrl + '/v1/{+name}:executeCode').replace( /([^:]\/)\/+/g, '$1' ), @@ -162944,24 +171956,24 @@ export namespace aiplatform_v1 { options ), params, - requiredParams: ['model'], - pathParams: ['model'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Gets a Model Garden publisher model. + * Gets a reasoning engine. * @example * ```js * // Before running the sample: @@ -162990,31 +172002,24 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.publishers.models.get({ - * // Optional. Token used to access Hugging Face gated models. - * huggingFaceToken: 'placeholder-value', - * // Optional. Boolean indicates whether the requested model is a Hugging Face model. - * isHuggingFaceModel: 'placeholder-value', - * // Optional. The IETF BCP-47 language code representing the language in which the publisher model's text information should be written in. - * languageCode: 'placeholder-value', - * // Required. The name of the PublisherModel resource. Format: `publishers/{publisher\}/models/{publisher_model\}` - * name: 'publishers/my-publisher/models/my-model', - * // Optional. PublisherModel view specifying which fields to read. - * view: 'placeholder-value', + * const res = await aiplatform.reasoningEngines.get({ + * // Required. The name of the ReasoningEngine resource. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * name: 'reasoningEngines/my-reasoningEngine', * }); * console.log(res.data); * * // Example response * // { - * // "frameworks": [], - * // "launchStage": "my_launchStage", + * // "contextSpec": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "encryptionSpec": {}, + * // "etag": "my_etag", + * // "labels": {}, * // "name": "my_name", - * // "openSourceCategory": "my_openSourceCategory", - * // "predictSchemata": {}, - * // "publisherModelTemplate": "my_publisherModelTemplate", - * // "supportedActions": {}, - * // "versionId": "my_versionId", - * // "versionState": "my_versionState" + * // "spec": {}, + * // "updateTime": "my_updateTime" * // } * } * @@ -163031,60 +172036,60 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Publishers$Models$Get, + params: Params$Resource$Reasoningengines$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Publishers$Models$Get, + params?: Params$Resource$Reasoningengines$Get, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; get( - params: Params$Resource$Publishers$Models$Get, + params: Params$Resource$Reasoningengines$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Publishers$Models$Get, + params: Params$Resource$Reasoningengines$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Publishers$Models$Get, - callback: BodyResponseCallback + params: Params$Resource$Reasoningengines$Get, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; get( paramsOrCallback?: - | Params$Resource$Publishers$Models$Get - | BodyResponseCallback + | Params$Resource$Reasoningengines$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Publishers$Models$Get; + {}) as Params$Resource$Reasoningengines$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Publishers$Models$Get; + params = {} as Params$Resource$Reasoningengines$Get; options = {}; } @@ -163109,19 +172114,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Perform an online prediction. + * Lists reasoning engines in a location. * @example * ```js * // Before running the sample: @@ -163142,10 +172147,7 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -163153,30 +172155,22 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.publishers.models.predict({ - * // Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` - * endpoint: 'publishers/my-publisher/models/my-model', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [], - * // "labels": {}, - * // "parameters": {} - * // } - * }, + * const res = await aiplatform.reasoningEngines.list({ + * // Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). + * filter: 'placeholder-value', + * // Optional. The standard list page size. + * pageSize: 'placeholder-value', + * // Optional. The standard list page token. + * pageToken: 'placeholder-value', + * // Required. The resource name of the Location to list the ReasoningEngines from. Format: `projects/{project\}/locations/{location\}` + * parent: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "deployedModelId": "my_deployedModelId", - * // "metadata": {}, - * // "model": "my_model", - * // "modelDisplayName": "my_modelDisplayName", - * // "modelVersionId": "my_modelVersionId", - * // "predictions": [] + * // "nextPageToken": "my_nextPageToken", + * // "reasoningEngines": [] * // } * } * @@ -163192,61 +172186,61 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - predict( - params: Params$Resource$Publishers$Models$Predict, + list( + params: Params$Resource$Reasoningengines$List, options: StreamMethodOptions ): Promise>; - predict( - params?: Params$Resource$Publishers$Models$Predict, + list( + params?: Params$Resource$Reasoningengines$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - predict( - params: Params$Resource$Publishers$Models$Predict, + list( + params: Params$Resource$Reasoningengines$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - predict( - params: Params$Resource$Publishers$Models$Predict, + list( + params: Params$Resource$Reasoningengines$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - predict( - params: Params$Resource$Publishers$Models$Predict, - callback: BodyResponseCallback + list( + params: Params$Resource$Reasoningengines$List, + callback: BodyResponseCallback ): void; - predict( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - predict( + list( paramsOrCallback?: - | Params$Resource$Publishers$Models$Predict - | BodyResponseCallback + | Params$Resource$Reasoningengines$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Publishers$Models$Predict; + {}) as Params$Resource$Reasoningengines$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Publishers$Models$Predict; + params = {} as Params$Resource$Reasoningengines$List; options = {}; } @@ -163259,33 +172253,34 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+endpoint}:predict').replace( + url: (rootUrl + '/v1/reasoningEngines').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['endpoint'], - pathParams: ['endpoint'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** + * Updates a reasoning engine. * @example * ```js * // Before running the sample: @@ -163306,10 +172301,7 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -163317,16 +172309,26 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.publishers.models.predictLongRunning({ - * // Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` or `projects/{project\}/locations/{location\}/publishers/{publisher\}/models/{model\}` - * endpoint: 'publishers/my-publisher/models/my-model', + * const res = await aiplatform.reasoningEngines.patch({ + * // Identifier. The resource name of the ReasoningEngine. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * name: 'reasoningEngines/my-reasoningEngine', + * // Optional. Mask specifying which fields to update. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "instances": [], - * // "parameters": {} + * // "contextSpec": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "encryptionSpec": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "spec": {}, + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -163354,36 +172356,36 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - predictLongRunning( - params: Params$Resource$Publishers$Models$Predictlongrunning, + patch( + params: Params$Resource$Reasoningengines$Patch, options: StreamMethodOptions ): Promise>; - predictLongRunning( - params?: Params$Resource$Publishers$Models$Predictlongrunning, + patch( + params?: Params$Resource$Reasoningengines$Patch, options?: MethodOptions ): Promise>; - predictLongRunning( - params: Params$Resource$Publishers$Models$Predictlongrunning, + patch( + params: Params$Resource$Reasoningengines$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - predictLongRunning( - params: Params$Resource$Publishers$Models$Predictlongrunning, + patch( + params: Params$Resource$Reasoningengines$Patch, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - predictLongRunning( - params: Params$Resource$Publishers$Models$Predictlongrunning, + patch( + params: Params$Resource$Reasoningengines$Patch, callback: BodyResponseCallback ): void; - predictLongRunning( + patch( callback: BodyResponseCallback ): void; - predictLongRunning( + patch( paramsOrCallback?: - | Params$Resource$Publishers$Models$Predictlongrunning + | Params$Resource$Reasoningengines$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -163399,12 +172401,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Publishers$Models$Predictlongrunning; + {}) as Params$Resource$Reasoningengines$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Publishers$Models$Predictlongrunning; + params = {} as Params$Resource$Reasoningengines$Patch; options = {}; } @@ -163417,18 +172419,15 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+endpoint}:predictLongRunning').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['endpoint'], - pathParams: ['endpoint'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -163442,7 +172441,7 @@ export namespace aiplatform_v1 { } /** - * Generate content with multimodal inputs with streaming support. + * Queries using a reasoning engine. * @example * ```js * // Before running the sample: @@ -163463,10 +172462,7 @@ export namespace aiplatform_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -163474,23 +172470,16 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.publishers.models.streamGenerateContent({ - * // Required. The fully qualified name of the publisher model or tuned model endpoint to use. Publisher model format: `projects/{project\}/locations/{location\}/publishers/x/models/x` Tuned model endpoint format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` - * model: 'publishers/my-publisher/models/my-model', + * const res = await aiplatform.reasoningEngines.query({ + * // Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * name: 'reasoningEngines/my-reasoningEngine', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "cachedContent": "my_cachedContent", - * // "contents": [], - * // "generationConfig": {}, - * // "labels": {}, - * // "modelArmorConfig": {}, - * // "safetySettings": [], - * // "systemInstruction": {}, - * // "toolConfig": {}, - * // "tools": [] + * // "classMethod": "my_classMethod", + * // "input": {} * // } * }, * }); @@ -163498,12 +172487,7 @@ export namespace aiplatform_v1 { * * // Example response * // { - * // "candidates": [], - * // "createTime": "my_createTime", - * // "modelVersion": "my_modelVersion", - * // "promptFeedback": {}, - * // "responseId": "my_responseId", - * // "usageMetadata": {} + * // "output": {} * // } * } * @@ -163519,61 +172503,61 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - streamGenerateContent( - params: Params$Resource$Publishers$Models$Streamgeneratecontent, + query( + params: Params$Resource$Reasoningengines$Query, options: StreamMethodOptions ): Promise>; - streamGenerateContent( - params?: Params$Resource$Publishers$Models$Streamgeneratecontent, + query( + params?: Params$Resource$Reasoningengines$Query, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - streamGenerateContent( - params: Params$Resource$Publishers$Models$Streamgeneratecontent, + query( + params: Params$Resource$Reasoningengines$Query, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - streamGenerateContent( - params: Params$Resource$Publishers$Models$Streamgeneratecontent, + query( + params: Params$Resource$Reasoningengines$Query, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - streamGenerateContent( - params: Params$Resource$Publishers$Models$Streamgeneratecontent, - callback: BodyResponseCallback + query( + params: Params$Resource$Reasoningengines$Query, + callback: BodyResponseCallback ): void; - streamGenerateContent( - callback: BodyResponseCallback + query( + callback: BodyResponseCallback ): void; - streamGenerateContent( + query( paramsOrCallback?: - | Params$Resource$Publishers$Models$Streamgeneratecontent - | BodyResponseCallback + | Params$Resource$Reasoningengines$Query + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Publishers$Models$Streamgeneratecontent; + {}) as Params$Resource$Reasoningengines$Query; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Publishers$Models$Streamgeneratecontent; + params = {} as Params$Resource$Reasoningengines$Query; options = {}; } @@ -163586,7 +172570,154 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+model}:streamGenerateContent').replace( + url: (rootUrl + '/v1/{+name}:query').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Streams queries using a reasoning engine. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.reasoningEngines.streamQuery({ + * // Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * name: 'reasoningEngines/my-reasoningEngine', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "classMethod": "my_classMethod", + * // "input": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "contentType": "my_contentType", + * // "data": "my_data", + * // "extensions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + streamQuery( + params: Params$Resource$Reasoningengines$Streamquery, + options: StreamMethodOptions + ): Promise>; + streamQuery( + params?: Params$Resource$Reasoningengines$Streamquery, + options?: MethodOptions + ): Promise>; + streamQuery( + params: Params$Resource$Reasoningengines$Streamquery, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + streamQuery( + params: Params$Resource$Reasoningengines$Streamquery, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + streamQuery( + params: Params$Resource$Reasoningengines$Streamquery, + callback: BodyResponseCallback + ): void; + streamQuery(callback: BodyResponseCallback): void; + streamQuery( + paramsOrCallback?: + | Params$Resource$Reasoningengines$Streamquery + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Reasoningengines$Streamquery; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Reasoningengines$Streamquery; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:streamQuery').replace( /([^:]\/)\/+/g, '$1' ), @@ -163596,135 +172727,138 @@ export namespace aiplatform_v1 { options ), params, - requiredParams: ['model'], - pathParams: ['model'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Publishers$Models$Computetokens extends StandardParameters { + export interface Params$Resource$Reasoningengines$Asyncquery extends StandardParameters { /** - * Required. The name of the Endpoint requested to get lists of tokens and token ids. + * Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` */ - endpoint?: string; + name?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1ComputeTokensRequest; + requestBody?: Schema$GoogleCloudAiplatformV1AsyncQueryReasoningEngineRequest; } - export interface Params$Resource$Publishers$Models$Counttokens extends StandardParameters { + export interface Params$Resource$Reasoningengines$Create extends StandardParameters { /** - * Required. The name of the Endpoint requested to perform token counting. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + * Required. The resource name of the Location to create the ReasoningEngine in. Format: `projects/{project\}/locations/{location\}` */ - endpoint?: string; + parent?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1CountTokensRequest; + requestBody?: Schema$GoogleCloudAiplatformV1ReasoningEngine; } - export interface Params$Resource$Publishers$Models$Fetchpredictoperation extends StandardParameters { + export interface Params$Resource$Reasoningengines$Delete extends StandardParameters { /** - * Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` or `projects/{project\}/locations/{location\}/publishers/{publisher\}/models/{model\}` + * Optional. If set to true, child resources of this reasoning engine will also be deleted. Otherwise, the request will fail with FAILED_PRECONDITION error when the reasoning engine has undeleted child resources. */ - endpoint?: string; - + force?: boolean; /** - * Request body metadata + * Required. The name of the ReasoningEngine resource to be deleted. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` */ - requestBody?: Schema$GoogleCloudAiplatformV1FetchPredictOperationRequest; + name?: string; } - export interface Params$Resource$Publishers$Models$Generatecontent extends StandardParameters { + export interface Params$Resource$Reasoningengines$Executecode extends StandardParameters { /** - * Required. The fully qualified name of the publisher model or tuned model endpoint to use. Publisher model format: `projects/{project\}/locations/{location\}/publishers/x/models/x` Tuned model endpoint format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + * Required. The resource name of the sandbox environment to execute. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` */ - model?: string; + name?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1GenerateContentRequest; + requestBody?: Schema$GoogleCloudAiplatformV1ExecuteCodeRequest; } - export interface Params$Resource$Publishers$Models$Get extends StandardParameters { + export interface Params$Resource$Reasoningengines$Get extends StandardParameters { /** - * Optional. Token used to access Hugging Face gated models. + * Required. The name of the ReasoningEngine resource. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` */ - huggingFaceToken?: string; + name?: string; + } + export interface Params$Resource$Reasoningengines$List extends StandardParameters { /** - * Optional. Boolean indicates whether the requested model is a Hugging Face model. + * Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). */ - isHuggingFaceModel?: boolean; + filter?: string; /** - * Optional. The IETF BCP-47 language code representing the language in which the publisher model's text information should be written in. + * Optional. The standard list page size. */ - languageCode?: string; + pageSize?: number; /** - * Required. The name of the PublisherModel resource. Format: `publishers/{publisher\}/models/{publisher_model\}` + * Optional. The standard list page token. */ - name?: string; + pageToken?: string; /** - * Optional. PublisherModel view specifying which fields to read. + * Required. The resource name of the Location to list the ReasoningEngines from. Format: `projects/{project\}/locations/{location\}` */ - view?: string; + parent?: string; } - export interface Params$Resource$Publishers$Models$Predict extends StandardParameters { + export interface Params$Resource$Reasoningengines$Patch extends StandardParameters { /** - * Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + * Identifier. The resource name of the ReasoningEngine. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` */ - endpoint?: string; + name?: string; + /** + * Optional. Mask specifying which fields to update. + */ + updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1PredictRequest; + requestBody?: Schema$GoogleCloudAiplatformV1ReasoningEngine; } - export interface Params$Resource$Publishers$Models$Predictlongrunning extends StandardParameters { + export interface Params$Resource$Reasoningengines$Query extends StandardParameters { /** - * Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` or `projects/{project\}/locations/{location\}/publishers/{publisher\}/models/{model\}` + * Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` */ - endpoint?: string; + name?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1PredictLongRunningRequest; + requestBody?: Schema$GoogleCloudAiplatformV1QueryReasoningEngineRequest; } - export interface Params$Resource$Publishers$Models$Streamgeneratecontent extends StandardParameters { + export interface Params$Resource$Reasoningengines$Streamquery extends StandardParameters { /** - * Required. The fully qualified name of the publisher model or tuned model endpoint to use. Publisher model format: `projects/{project\}/locations/{location\}/publishers/x/models/x` Tuned model endpoint format: `projects/{project\}/locations/{location\}/endpoints/{endpoint\}` + * Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` */ - model?: string; + name?: string; /** * Request body metadata */ - requestBody?: Schema$GoogleCloudAiplatformV1GenerateContentRequest; + requestBody?: Schema$GoogleCloudAiplatformV1StreamQueryReasoningEngineRequest; } - export class Resource$Ragcorpora { + export class Resource$Reasoningengines$Memories { context: APIRequestContext; - operations: Resource$Ragcorpora$Operations; - ragFiles: Resource$Ragcorpora$Ragfiles; + operations: Resource$Reasoningengines$Memories$Operations; constructor(context: APIRequestContext) { this.context = context; - this.operations = new Resource$Ragcorpora$Operations(this.context); - this.ragFiles = new Resource$Ragcorpora$Ragfiles(this.context); + this.operations = new Resource$Reasoningengines$Memories$Operations( + this.context + ); } } - export class Resource$Ragcorpora$Operations { + export class Resource$Reasoningengines$Memories$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -163760,9 +172894,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragCorpora.operations.cancel({ + * const res = await aiplatform.reasoningEngines.memories.operations.cancel({ * // The name of the operation resource to be cancelled. - * name: 'ragCorpora/[^/]+/operations/my-operation', + * name: 'reasoningEngines/my-reasoningEngine/memories/my-memorie/operations/my-operation', * }); * console.log(res.data); * @@ -163783,31 +172917,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Ragcorpora$Operations$Cancel, + params: Params$Resource$Reasoningengines$Memories$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Ragcorpora$Operations$Cancel, + params?: Params$Resource$Reasoningengines$Memories$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Ragcorpora$Operations$Cancel, + params: Params$Resource$Reasoningengines$Memories$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Ragcorpora$Operations$Cancel, + params: Params$Resource$Reasoningengines$Memories$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Ragcorpora$Operations$Cancel, + params: Params$Resource$Reasoningengines$Memories$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Ragcorpora$Operations$Cancel + | Params$Resource$Reasoningengines$Memories$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -163823,12 +172957,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragcorpora$Operations$Cancel; + {}) as Params$Resource$Reasoningengines$Memories$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragcorpora$Operations$Cancel; + params = + {} as Params$Resource$Reasoningengines$Memories$Operations$Cancel; options = {}; } @@ -163892,9 +173027,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragCorpora.operations.delete({ + * const res = await aiplatform.reasoningEngines.memories.operations.delete({ * // The name of the operation resource to be deleted. - * name: 'ragCorpora/[^/]+/operations/my-operation', + * name: 'reasoningEngines/my-reasoningEngine/memories/my-memorie/operations/my-operation', * }); * console.log(res.data); * @@ -163915,31 +173050,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Ragcorpora$Operations$Delete, + params: Params$Resource$Reasoningengines$Memories$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Ragcorpora$Operations$Delete, + params?: Params$Resource$Reasoningengines$Memories$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Ragcorpora$Operations$Delete, + params: Params$Resource$Reasoningengines$Memories$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Ragcorpora$Operations$Delete, + params: Params$Resource$Reasoningengines$Memories$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Ragcorpora$Operations$Delete, + params: Params$Resource$Reasoningengines$Memories$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Ragcorpora$Operations$Delete + | Params$Resource$Reasoningengines$Memories$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -163955,12 +173090,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragcorpora$Operations$Delete; + {}) as Params$Resource$Reasoningengines$Memories$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragcorpora$Operations$Delete; + params = + {} as Params$Resource$Reasoningengines$Memories$Operations$Delete; options = {}; } @@ -164024,9 +173160,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragCorpora.operations.get({ + * const res = await aiplatform.reasoningEngines.memories.operations.get({ * // The name of the operation resource. - * name: 'ragCorpora/[^/]+/operations/my-operation', + * name: 'reasoningEngines/my-reasoningEngine/memories/my-memorie/operations/my-operation', * }); * console.log(res.data); * @@ -164053,27 +173189,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Ragcorpora$Operations$Get, + params: Params$Resource$Reasoningengines$Memories$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Ragcorpora$Operations$Get, + params?: Params$Resource$Reasoningengines$Memories$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Ragcorpora$Operations$Get, + params: Params$Resource$Reasoningengines$Memories$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Ragcorpora$Operations$Get, + params: Params$Resource$Reasoningengines$Memories$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Ragcorpora$Operations$Get, + params: Params$Resource$Reasoningengines$Memories$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -164081,7 +173217,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Ragcorpora$Operations$Get + | Params$Resource$Reasoningengines$Memories$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -164097,12 +173233,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragcorpora$Operations$Get; + {}) as Params$Resource$Reasoningengines$Memories$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragcorpora$Operations$Get; + params = {} as Params$Resource$Reasoningengines$Memories$Operations$Get; options = {}; } @@ -164166,11 +173302,11 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragCorpora.operations.list({ + * const res = await aiplatform.reasoningEngines.memories.operations.list({ * // The standard list filter. * filter: 'placeholder-value', * // The name of the operation's parent resource. - * name: 'ragCorpora/[^/]+', + * name: 'reasoningEngines/my-reasoningEngine/memories/my-memorie', * // The standard list page size. * pageSize: 'placeholder-value', * // The standard list page token. @@ -164201,29 +173337,29 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Ragcorpora$Operations$List, + params: Params$Resource$Reasoningengines$Memories$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Ragcorpora$Operations$List, + params?: Params$Resource$Reasoningengines$Memories$Operations$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Ragcorpora$Operations$List, + params: Params$Resource$Reasoningengines$Memories$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Ragcorpora$Operations$List, + params: Params$Resource$Reasoningengines$Memories$Operations$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Ragcorpora$Operations$List, + params: Params$Resource$Reasoningengines$Memories$Operations$List, callback: BodyResponseCallback ): void; list( @@ -164231,7 +173367,7 @@ export namespace aiplatform_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Ragcorpora$Operations$List + | Params$Resource$Reasoningengines$Memories$Operations$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -164249,12 +173385,13 @@ export namespace aiplatform_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragcorpora$Operations$List; + {}) as Params$Resource$Reasoningengines$Memories$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragcorpora$Operations$List; + params = + {} as Params$Resource$Reasoningengines$Memories$Operations$List; options = {}; } @@ -164323,9 +173460,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragCorpora.operations.wait({ + * const res = await aiplatform.reasoningEngines.memories.operations.wait({ * // The name of the operation resource to wait on. - * name: 'ragCorpora/[^/]+/operations/my-operation', + * name: 'reasoningEngines/my-reasoningEngine/memories/my-memorie/operations/my-operation', * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. * timeout: 'placeholder-value', * }); @@ -164354,27 +173491,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ wait( - params: Params$Resource$Ragcorpora$Operations$Wait, + params: Params$Resource$Reasoningengines$Memories$Operations$Wait, options: StreamMethodOptions ): Promise>; wait( - params?: Params$Resource$Ragcorpora$Operations$Wait, + params?: Params$Resource$Reasoningengines$Memories$Operations$Wait, options?: MethodOptions ): Promise>; wait( - params: Params$Resource$Ragcorpora$Operations$Wait, + params: Params$Resource$Reasoningengines$Memories$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Ragcorpora$Operations$Wait, + params: Params$Resource$Reasoningengines$Memories$Operations$Wait, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Ragcorpora$Operations$Wait, + params: Params$Resource$Reasoningengines$Memories$Operations$Wait, callback: BodyResponseCallback ): void; wait( @@ -164382,7 +173519,7 @@ export namespace aiplatform_v1 { ): void; wait( paramsOrCallback?: - | Params$Resource$Ragcorpora$Operations$Wait + | Params$Resource$Reasoningengines$Memories$Operations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -164398,12 +173535,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragcorpora$Operations$Wait; + {}) as Params$Resource$Reasoningengines$Memories$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragcorpora$Operations$Wait; + params = + {} as Params$Resource$Reasoningengines$Memories$Operations$Wait; options = {}; } @@ -164438,25 +173576,25 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Ragcorpora$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Reasoningengines$Memories$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Ragcorpora$Operations$Delete extends StandardParameters { + export interface Params$Resource$Reasoningengines$Memories$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Ragcorpora$Operations$Get extends StandardParameters { + export interface Params$Resource$Reasoningengines$Memories$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Ragcorpora$Operations$List extends StandardParameters { + export interface Params$Resource$Reasoningengines$Memories$Operations$List extends StandardParameters { /** * The standard list filter. */ @@ -164478,7 +173616,7 @@ export namespace aiplatform_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Ragcorpora$Operations$Wait extends StandardParameters { + export interface Params$Resource$Reasoningengines$Memories$Operations$Wait extends StandardParameters { /** * The name of the operation resource to wait on. */ @@ -164489,18 +173627,7 @@ export namespace aiplatform_v1 { timeout?: string; } - export class Resource$Ragcorpora$Ragfiles { - context: APIRequestContext; - operations: Resource$Ragcorpora$Ragfiles$Operations; - constructor(context: APIRequestContext) { - this.context = context; - this.operations = new Resource$Ragcorpora$Ragfiles$Operations( - this.context - ); - } - } - - export class Resource$Ragcorpora$Ragfiles$Operations { + export class Resource$Reasoningengines$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -164536,9 +173663,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragCorpora.ragFiles.operations.cancel({ + * const res = await aiplatform.reasoningEngines.operations.cancel({ * // The name of the operation resource to be cancelled. - * name: 'ragCorpora/[^/]+/ragFiles/my-ragFile/operations/my-operation', + * name: 'reasoningEngines/my-reasoningEngine/operations/my-operation', * }); * console.log(res.data); * @@ -164559,31 +173686,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel, + params: Params$Resource$Reasoningengines$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel, + params?: Params$Resource$Reasoningengines$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel, + params: Params$Resource$Reasoningengines$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel, + params: Params$Resource$Reasoningengines$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel, + params: Params$Resource$Reasoningengines$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel + | Params$Resource$Reasoningengines$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -164599,12 +173726,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel; + {}) as Params$Resource$Reasoningengines$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel; + params = {} as Params$Resource$Reasoningengines$Operations$Cancel; options = {}; } @@ -164668,9 +173795,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragCorpora.ragFiles.operations.delete({ + * const res = await aiplatform.reasoningEngines.operations.delete({ * // The name of the operation resource to be deleted. - * name: 'ragCorpora/[^/]+/ragFiles/my-ragFile/operations/my-operation', + * name: 'reasoningEngines/my-reasoningEngine/operations/my-operation', * }); * console.log(res.data); * @@ -164691,31 +173818,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Delete, + params: Params$Resource$Reasoningengines$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Ragcorpora$Ragfiles$Operations$Delete, + params?: Params$Resource$Reasoningengines$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Delete, + params: Params$Resource$Reasoningengines$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Delete, + params: Params$Resource$Reasoningengines$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Delete, + params: Params$Resource$Reasoningengines$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Ragcorpora$Ragfiles$Operations$Delete + | Params$Resource$Reasoningengines$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -164731,12 +173858,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragcorpora$Ragfiles$Operations$Delete; + {}) as Params$Resource$Reasoningengines$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragcorpora$Ragfiles$Operations$Delete; + params = {} as Params$Resource$Reasoningengines$Operations$Delete; options = {}; } @@ -164800,9 +173927,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragCorpora.ragFiles.operations.get({ + * const res = await aiplatform.reasoningEngines.operations.get({ * // The name of the operation resource. - * name: 'ragCorpora/[^/]+/ragFiles/my-ragFile/operations/my-operation', + * name: 'reasoningEngines/my-reasoningEngine/operations/my-operation', * }); * console.log(res.data); * @@ -164829,27 +173956,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Get, + params: Params$Resource$Reasoningengines$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Ragcorpora$Ragfiles$Operations$Get, + params?: Params$Resource$Reasoningengines$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Get, + params: Params$Resource$Reasoningengines$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Get, + params: Params$Resource$Reasoningengines$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Get, + params: Params$Resource$Reasoningengines$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -164857,7 +173984,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Ragcorpora$Ragfiles$Operations$Get + | Params$Resource$Reasoningengines$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -164873,12 +174000,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragcorpora$Ragfiles$Operations$Get; + {}) as Params$Resource$Reasoningengines$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragcorpora$Ragfiles$Operations$Get; + params = {} as Params$Resource$Reasoningengines$Operations$Get; options = {}; } @@ -164942,11 +174069,11 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragCorpora.ragFiles.operations.list({ + * const res = await aiplatform.reasoningEngines.operations.list({ * // The standard list filter. * filter: 'placeholder-value', * // The name of the operation's parent resource. - * name: 'ragCorpora/[^/]+/ragFiles/my-ragFile', + * name: 'reasoningEngines/my-reasoningEngine', * // The standard list page size. * pageSize: 'placeholder-value', * // The standard list page token. @@ -164977,29 +174104,29 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$List, + params: Params$Resource$Reasoningengines$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Ragcorpora$Ragfiles$Operations$List, + params?: Params$Resource$Reasoningengines$Operations$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$List, + params: Params$Resource$Reasoningengines$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$List, + params: Params$Resource$Reasoningengines$Operations$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$List, + params: Params$Resource$Reasoningengines$Operations$List, callback: BodyResponseCallback ): void; list( @@ -165007,7 +174134,7 @@ export namespace aiplatform_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Ragcorpora$Ragfiles$Operations$List + | Params$Resource$Reasoningengines$Operations$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -165025,12 +174152,12 @@ export namespace aiplatform_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragcorpora$Ragfiles$Operations$List; + {}) as Params$Resource$Reasoningengines$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragcorpora$Ragfiles$Operations$List; + params = {} as Params$Resource$Reasoningengines$Operations$List; options = {}; } @@ -165099,9 +174226,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragCorpora.ragFiles.operations.wait({ + * const res = await aiplatform.reasoningEngines.operations.wait({ * // The name of the operation resource to wait on. - * name: 'ragCorpora/[^/]+/ragFiles/my-ragFile/operations/my-operation', + * name: 'reasoningEngines/my-reasoningEngine/operations/my-operation', * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. * timeout: 'placeholder-value', * }); @@ -165130,27 +174257,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ wait( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Wait, + params: Params$Resource$Reasoningengines$Operations$Wait, options: StreamMethodOptions ): Promise>; wait( - params?: Params$Resource$Ragcorpora$Ragfiles$Operations$Wait, + params?: Params$Resource$Reasoningengines$Operations$Wait, options?: MethodOptions ): Promise>; wait( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Wait, + params: Params$Resource$Reasoningengines$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Wait, + params: Params$Resource$Reasoningengines$Operations$Wait, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Ragcorpora$Ragfiles$Operations$Wait, + params: Params$Resource$Reasoningengines$Operations$Wait, callback: BodyResponseCallback ): void; wait( @@ -165158,7 +174285,7 @@ export namespace aiplatform_v1 { ): void; wait( paramsOrCallback?: - | Params$Resource$Ragcorpora$Ragfiles$Operations$Wait + | Params$Resource$Reasoningengines$Operations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -165174,12 +174301,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragcorpora$Ragfiles$Operations$Wait; + {}) as Params$Resource$Reasoningengines$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragcorpora$Ragfiles$Operations$Wait; + params = {} as Params$Resource$Reasoningengines$Operations$Wait; options = {}; } @@ -165214,25 +174341,25 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Ragcorpora$Ragfiles$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Reasoningengines$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Ragcorpora$Ragfiles$Operations$Delete extends StandardParameters { + export interface Params$Resource$Reasoningengines$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Ragcorpora$Ragfiles$Operations$Get extends StandardParameters { + export interface Params$Resource$Reasoningengines$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Ragcorpora$Ragfiles$Operations$List extends StandardParameters { + export interface Params$Resource$Reasoningengines$Operations$List extends StandardParameters { /** * The standard list filter. */ @@ -165254,7 +174381,7 @@ export namespace aiplatform_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Ragcorpora$Ragfiles$Operations$Wait extends StandardParameters { + export interface Params$Resource$Reasoningengines$Operations$Wait extends StandardParameters { /** * The name of the operation resource to wait on. */ @@ -165265,23 +174392,14 @@ export namespace aiplatform_v1 { timeout?: string; } - export class Resource$Ragengineconfig { - context: APIRequestContext; - operations: Resource$Ragengineconfig$Operations; - constructor(context: APIRequestContext) { - this.context = context; - this.operations = new Resource$Ragengineconfig$Operations(this.context); - } - } - - export class Resource$Ragengineconfig$Operations { + export class Resource$Reasoningengines$Runtimerevisions { 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`. + * Queries using a reasoning engine. * @example * ```js * // Before running the sample: @@ -165310,14 +174428,25 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragEngineConfig.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'ragEngineConfig/operations/my-operation', + * const res = await aiplatform.reasoningEngines.runtimeRevisions.query({ + * // Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * name: 'reasoningEngines/my-reasoningEngine/runtimeRevisions/my-runtimeRevision', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "classMethod": "my_classMethod", + * // "input": {} + * // } + * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "output": {} + * // } * } * * main().catch(e => { @@ -165332,53 +174461,61 @@ export namespace aiplatform_v1 { * @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$Ragengineconfig$Operations$Cancel, + query( + params: Params$Resource$Reasoningengines$Runtimerevisions$Query, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Ragengineconfig$Operations$Cancel, + query( + params?: Params$Resource$Reasoningengines$Runtimerevisions$Query, options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Ragengineconfig$Operations$Cancel, + ): Promise< + GaxiosResponseWithHTTP2 + >; + query( + params: Params$Resource$Reasoningengines$Runtimerevisions$Query, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Ragengineconfig$Operations$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + query( + params: Params$Resource$Reasoningengines$Runtimerevisions$Query, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Ragengineconfig$Operations$Cancel, - callback: BodyResponseCallback + query( + params: Params$Resource$Reasoningengines$Runtimerevisions$Query, + callback: BodyResponseCallback ): void; - cancel(callback: BodyResponseCallback): void; - cancel( + query( + callback: BodyResponseCallback + ): void; + query( paramsOrCallback?: - | Params$Resource$Ragengineconfig$Operations$Cancel - | BodyResponseCallback + | Params$Resource$Reasoningengines$Runtimerevisions$Query + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragengineconfig$Operations$Cancel; + {}) as Params$Resource$Reasoningengines$Runtimerevisions$Query; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragengineconfig$Operations$Cancel; + params = {} as Params$Resource$Reasoningengines$Runtimerevisions$Query; options = {}; } @@ -165391,7 +174528,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+name}:query').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, @@ -165403,17 +174540,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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`. + * Streams queries using a reasoning engine. * @example * ```js * // Before running the sample: @@ -165442,14 +174581,27 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragEngineConfig.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'ragEngineConfig/operations/my-operation', + * const res = await aiplatform.reasoningEngines.runtimeRevisions.streamQuery({ + * // Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * name: 'reasoningEngines/my-reasoningEngine/runtimeRevisions/my-runtimeRevision', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "classMethod": "my_classMethod", + * // "input": {} + * // } + * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "contentType": "my_contentType", + * // "data": "my_data", + * // "extensions": [] + * // } * } * * main().catch(e => { @@ -165464,53 +174616,54 @@ export namespace aiplatform_v1 { * @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$Ragengineconfig$Operations$Delete, + streamQuery( + params: Params$Resource$Reasoningengines$Runtimerevisions$Streamquery, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Ragengineconfig$Operations$Delete, + streamQuery( + params?: Params$Resource$Reasoningengines$Runtimerevisions$Streamquery, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Ragengineconfig$Operations$Delete, + ): Promise>; + streamQuery( + params: Params$Resource$Reasoningengines$Runtimerevisions$Streamquery, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Ragengineconfig$Operations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + streamQuery( + params: Params$Resource$Reasoningengines$Runtimerevisions$Streamquery, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Ragengineconfig$Operations$Delete, - callback: BodyResponseCallback + streamQuery( + params: Params$Resource$Reasoningengines$Runtimerevisions$Streamquery, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + streamQuery(callback: BodyResponseCallback): void; + streamQuery( paramsOrCallback?: - | Params$Resource$Ragengineconfig$Operations$Delete - | BodyResponseCallback + | Params$Resource$Reasoningengines$Runtimerevisions$Streamquery + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragengineconfig$Operations$Delete; + {}) as Params$Resource$Reasoningengines$Runtimerevisions$Streamquery; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragengineconfig$Operations$Delete; + params = + {} as Params$Resource$Reasoningengines$Runtimerevisions$Streamquery; options = {}; } @@ -165523,8 +174676,11 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+name}:streamQuery').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options @@ -165535,17 +174691,52 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Reasoningengines$Runtimerevisions$Query extends StandardParameters { /** - * 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. + * Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1QueryReasoningEngineRequest; + } + export interface Params$Resource$Reasoningengines$Runtimerevisions$Streamquery extends StandardParameters { + /** + * Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1StreamQueryReasoningEngineRequest; + } + + export class Resource$Reasoningengines$Sandboxenvironments { + context: APIRequestContext; + operations: Resource$Reasoningengines$Sandboxenvironments$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = + new Resource$Reasoningengines$Sandboxenvironments$Operations( + this.context + ); + } + + /** + * Creates a SandboxEnvironment in a given reasoning engine. * @example * ```js * // Before running the sample: @@ -165574,9 +174765,29 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragEngineConfig.operations.get({ - * // The name of the operation resource. - * name: 'ragEngineConfig/operations/my-operation', + * const res = await aiplatform.reasoningEngines.sandboxEnvironments.create({ + * // Required. The resource name of the reasoning engine to create the SandboxEnvironment in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}`. + * parent: 'reasoningEngines/my-reasoningEngine', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "connectionInfo": {}, + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "expireTime": "my_expireTime", + * // "latestSandboxEnvironmentSnapshot": "my_latestSandboxEnvironmentSnapshot", + * // "name": "my_name", + * // "owner": "my_owner", + * // "sandboxEnvironmentSnapshot": "my_sandboxEnvironmentSnapshot", + * // "sandboxEnvironmentTemplate": "my_sandboxEnvironmentTemplate", + * // "spec": {}, + * // "state": "my_state", + * // "ttl": "my_ttl", + * // "updateTime": "my_updateTime" + * // } + * }, * }); * console.log(res.data); * @@ -165602,36 +174813,36 @@ export namespace aiplatform_v1 { * @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$Ragengineconfig$Operations$Get, + create( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Ragengineconfig$Operations$Get, + create( + params?: Params$Resource$Reasoningengines$Sandboxenvironments$Create, options?: MethodOptions ): Promise>; - get( - params: Params$Resource$Ragengineconfig$Operations$Get, + create( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Ragengineconfig$Operations$Get, + create( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Create, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Ragengineconfig$Operations$Get, + create( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Create, callback: BodyResponseCallback ): void; - get( + create( callback: BodyResponseCallback ): void; - get( + create( paramsOrCallback?: - | Params$Resource$Ragengineconfig$Operations$Get + | Params$Resource$Reasoningengines$Sandboxenvironments$Create | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -165647,12 +174858,159 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragengineconfig$Operations$Get; + {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragengineconfig$Operations$Get; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironments$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/sandboxEnvironments').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specific SandboxEnvironment. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.reasoningEngines.sandboxEnvironments.delete({ + * // Required. The resource name of the SandboxEnvironment to delete. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}` + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Reasoningengines$Sandboxenvironments$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Reasoningengines$Sandboxenvironments$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Delete, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Delete, + callback: BodyResponseCallback + ): void; + delete( + callback: BodyResponseCallback + ): void; + delete( + paramsOrCallback?: + | Params$Resource$Reasoningengines$Sandboxenvironments$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironments$Delete; options = {}; } @@ -165666,7 +175024,7 @@ export namespace aiplatform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options @@ -165687,7 +175045,7 @@ export namespace aiplatform_v1 { } /** - * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + * Executes using a sandbox environment. * @example * ```js * // Before running the sample: @@ -165716,25 +175074,23 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragEngineConfig.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'ragEngineConfig', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', + * const res = await aiplatform.reasoningEngines.sandboxEnvironments.execute({ + * // Required. The resource name of the sandbox environment to execute. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}` + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "inputs": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "operations": [], - * // "unreachable": [] + * // "outputs": [] * // } * } * @@ -165750,61 +175106,62 @@ export namespace aiplatform_v1 { * @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$Ragengineconfig$Operations$List, + execute( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Execute, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Ragengineconfig$Operations$List, + execute( + params?: Params$Resource$Reasoningengines$Sandboxenvironments$Execute, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - list( - params: Params$Resource$Ragengineconfig$Operations$List, + execute( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Execute, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Ragengineconfig$Operations$List, + execute( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Execute, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Ragengineconfig$Operations$List, - callback: BodyResponseCallback + execute( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Execute, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + execute( + callback: BodyResponseCallback ): void; - list( + execute( paramsOrCallback?: - | Params$Resource$Ragengineconfig$Operations$List - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironments$Execute + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragengineconfig$Operations$List; + {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Execute; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragengineconfig$Operations$List; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironments$Execute; options = {}; } @@ -165817,11 +175174,11 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}/operations').replace( + url: (rootUrl + '/v1/{+name}:execute').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -165832,19 +175189,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. + * Gets details of the specific SandboxEnvironment. * @example * ```js * // Before running the sample: @@ -165873,21 +175230,27 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.ragEngineConfig.operations.wait({ - * // The name of the operation resource to wait on. - * name: 'ragEngineConfig/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', + * const res = await aiplatform.reasoningEngines.sandboxEnvironments.get({ + * // Required. The resource name of the sandbox environment. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}` + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "connectionInfo": {}, + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "expireTime": "my_expireTime", + * // "latestSandboxEnvironmentSnapshot": "my_latestSandboxEnvironmentSnapshot", * // "name": "my_name", - * // "response": {} + * // "owner": "my_owner", + * // "sandboxEnvironmentSnapshot": "my_sandboxEnvironmentSnapshot", + * // "sandboxEnvironmentTemplate": "my_sandboxEnvironmentTemplate", + * // "spec": {}, + * // "state": "my_state", + * // "ttl": "my_ttl", + * // "updateTime": "my_updateTime" * // } * } * @@ -165903,57 +175266,61 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - wait( - params: Params$Resource$Ragengineconfig$Operations$Wait, + get( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Get, options: StreamMethodOptions ): Promise>; - wait( - params?: Params$Resource$Ragengineconfig$Operations$Wait, + get( + params?: Params$Resource$Reasoningengines$Sandboxenvironments$Get, options?: MethodOptions - ): Promise>; - wait( - params: Params$Resource$Ragengineconfig$Operations$Wait, + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Ragengineconfig$Operations$Wait, + get( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Ragengineconfig$Operations$Wait, - callback: BodyResponseCallback + get( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Get, + callback: BodyResponseCallback ): void; - wait( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - wait( + get( paramsOrCallback?: - | Params$Resource$Ragengineconfig$Operations$Wait - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironments$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Ragengineconfig$Operations$Wait; + {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Ragengineconfig$Operations$Wait; + params = {} as Params$Resource$Reasoningengines$Sandboxenvironments$Get; options = {}; } @@ -165966,8 +175333,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options @@ -165978,84 +175345,174 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - export interface Params$Resource$Ragengineconfig$Operations$Cancel extends StandardParameters { - /** - * The name of the operation resource to be cancelled. - */ - name?: string; - } - export interface Params$Resource$Ragengineconfig$Operations$Delete extends StandardParameters { - /** - * The name of the operation resource to be deleted. - */ - name?: string; - } - export interface Params$Resource$Ragengineconfig$Operations$Get extends StandardParameters { - /** - * The name of the operation resource. - */ - name?: string; - } - export interface Params$Resource$Ragengineconfig$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; - /** - * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Ragengineconfig$Operations$Wait extends StandardParameters { - /** - * The name of the operation resource to wait on. - */ - name?: string; /** - * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * Lists SandboxEnvironments in a given reasoning engine. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const aiplatform = google.aiplatform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await aiplatform.reasoningEngines.sandboxEnvironments.list({ + * // Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). + * filter: 'placeholder-value', + * // Optional. The maximum number of SandboxEnvironments to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironments will be returned. + * pageSize: 'placeholder-value', + * // Optional. The standard list page token, received from a previous `ListSandboxEnvironments` call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * parent: 'reasoningEngines/my-reasoningEngine', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "sandboxEnvironments": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - timeout?: string; - } + list( + params: Params$Resource$Reasoningengines$Sandboxenvironments$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Reasoningengines$Sandboxenvironments$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Reasoningengines$Sandboxenvironments$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Reasoningengines$Sandboxenvironments$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Reasoningengines$Sandboxenvironments$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Reasoningengines$Sandboxenvironments$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Reasoningengines$Sandboxenvironments$List; + let options = (optionsOrCallback || {}) as MethodOptions; - export class Resource$Reasoningengines { - context: APIRequestContext; - memories: Resource$Reasoningengines$Memories; - operations: Resource$Reasoningengines$Operations; - sandboxEnvironments: Resource$Reasoningengines$Sandboxenvironments; - sessions: Resource$Reasoningengines$Sessions; - constructor(context: APIRequestContext) { - this.context = context; - this.memories = new Resource$Reasoningengines$Memories(this.context); - this.operations = new Resource$Reasoningengines$Operations(this.context); - this.sandboxEnvironments = - new Resource$Reasoningengines$Sandboxenvironments(this.context); - this.sessions = new Resource$Reasoningengines$Sessions(this.context); + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironments$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/sandboxEnvironments').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } } /** - * Creates a reasoning engine. + * Snapshots the specific SandboxEnvironment resource and creates a SandboxEnvironmentSnapshot resource. * @example * ```js * // Before running the sample: @@ -166084,23 +175541,24 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.create({ - * // Required. The resource name of the Location to create the ReasoningEngine in. Format: `projects/{project\}/locations/{location\}` - * parent: 'placeholder-value', + * const res = await aiplatform.reasoningEngines.sandboxEnvironments.snapshot({ + * // Required. The resource name of the sandbox environment to snapshot. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}`. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "contextSpec": {}, * // "createTime": "my_createTime", - * // "description": "my_description", * // "displayName": "my_displayName", - * // "encryptionSpec": {}, - * // "etag": "my_etag", - * // "labels": {}, + * // "expireTime": "my_expireTime", * // "name": "my_name", - * // "spec": {}, + * // "owner": "my_owner", + * // "parentSnapshot": "my_parentSnapshot", + * // "postSnapshotAction": "my_postSnapshotAction", + * // "sizeBytes": "my_sizeBytes", + * // "sourceSandboxEnvironment": "my_sourceSandboxEnvironment", + * // "ttl": "my_ttl", * // "updateTime": "my_updateTime" * // } * }, @@ -166129,36 +175587,36 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Create, + snapshot( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Snapshot, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Reasoningengines$Create, + snapshot( + params?: Params$Resource$Reasoningengines$Sandboxenvironments$Snapshot, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Reasoningengines$Create, + snapshot( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Snapshot, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Reasoningengines$Create, + snapshot( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Snapshot, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Reasoningengines$Create, + snapshot( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Snapshot, callback: BodyResponseCallback ): void; - create( + snapshot( callback: BodyResponseCallback ): void; - create( + snapshot( paramsOrCallback?: - | Params$Resource$Reasoningengines$Create + | Params$Resource$Reasoningengines$Sandboxenvironments$Snapshot | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -166174,12 +175632,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Create; + {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Snapshot; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Create; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironments$Snapshot; options = {}; } @@ -166192,7 +175651,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/reasoningEngines').replace( + url: (rootUrl + '/v1/{+name}:snapshot').replace( /([^:]\/)\/+/g, '$1' ), @@ -166202,8 +175661,8 @@ export namespace aiplatform_v1 { options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -166215,9 +175674,80 @@ export namespace aiplatform_v1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Reasoningengines$Sandboxenvironments$Create extends StandardParameters { /** - * Deletes a reasoning engine. + * Required. The resource name of the reasoning engine to create the SandboxEnvironment in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1SandboxEnvironment; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironments$Delete extends StandardParameters { + /** + * Required. The resource name of the SandboxEnvironment to delete. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}` + */ + name?: string; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironments$Execute extends StandardParameters { + /** + * Required. The resource name of the sandbox environment to execute. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1ExecuteSandboxEnvironmentRequest; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironments$Get extends StandardParameters { + /** + * Required. The resource name of the sandbox environment. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}` + */ + name?: string; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironments$List extends StandardParameters { + /** + * Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). + */ + filter?: string; + /** + * Optional. The maximum number of SandboxEnvironments to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironments will be returned. + */ + pageSize?: number; + /** + * Optional. The standard list page token, received from a previous `ListSandboxEnvironments` call. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + */ + parent?: string; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironments$Snapshot extends StandardParameters { + /** + * Required. The resource name of the sandbox environment to snapshot. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}`. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentSnapshot; + } + + export class Resource$Reasoningengines$Sandboxenvironments$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`. * @example * ```js * // Before running the sample: @@ -166246,22 +175776,15 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.delete({ - * // Optional. If set to true, child resources of this reasoning engine will also be deleted. Otherwise, the request will fail with FAILED_PRECONDITION error when the reasoning engine has undeleted child resources. - * force: 'placeholder-value', - * // Required. The name of the ReasoningEngine resource to be deleted. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - * name: 'reasoningEngines/my-reasoningEngine', - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironments.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment/operations/my-operation', + * }); * console.log(res.data); * * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } + * // {} * } * * main().catch(e => { @@ -166276,57 +175799,54 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Delete, + cancel( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Reasoningengines$Delete, + cancel( + params?: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Reasoningengines$Delete, + ): Promise>; + cancel( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Reasoningengines$Delete, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Reasoningengines$Delete, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - callback: BodyResponseCallback + cancel( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel, + callback: BodyResponseCallback ): void; - delete( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Reasoningengines$Delete - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Delete; + {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Delete; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel; options = {}; } @@ -166339,8 +175859,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -166351,17 +175871,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Executes code statelessly. + * 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`. * @example * ```js * // Before running the sample: @@ -166390,24 +175910,15 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.executeCode({ - * // Required. The resource name of the sandbox environment to execute. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - * name: 'reasoningEngines/my-reasoningEngine', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "inputs": [] - * // } - * }, - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironments.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment/operations/my-operation', + * }); * console.log(res.data); * * // Example response - * // { - * // "outputs": [] - * // } + * // {} * } * * main().catch(e => { @@ -166422,61 +175933,54 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - executeCode( - params: Params$Resource$Reasoningengines$Executecode, + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete, options: StreamMethodOptions ): Promise>; - executeCode( - params?: Params$Resource$Reasoningengines$Executecode, + delete( + params?: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - executeCode( - params: Params$Resource$Reasoningengines$Executecode, + ): Promise>; + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - executeCode( - params: Params$Resource$Reasoningengines$Executecode, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - executeCode( - params: Params$Resource$Reasoningengines$Executecode, - callback: BodyResponseCallback + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - executeCode( - callback: BodyResponseCallback + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete, + callback: BodyResponseCallback ): void; - executeCode( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Reasoningengines$Executecode - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Executecode; + {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Executecode; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete; options = {}; } @@ -166489,11 +175993,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:executeCode').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options @@ -166504,19 +176005,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Gets a reasoning engine. + * 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. * @example * ```js * // Before running the sample: @@ -166545,24 +176044,20 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.get({ - * // Required. The name of the ReasoningEngine resource. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - * name: 'reasoningEngines/my-reasoningEngine', - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironments.operations.get({ + * // The name of the operation resource. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment/operations/my-operation', + * }); * console.log(res.data); * * // Example response * // { - * // "contextSpec": {}, - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "encryptionSpec": {}, - * // "etag": "my_etag", - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "spec": {}, - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -166579,60 +176074,57 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Reasoningengines$Get, + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Reasoningengines$Get, + params?: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; get( - params: Params$Resource$Reasoningengines$Get, + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Reasoningengines$Get, + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Reasoningengines$Get, - callback: BodyResponseCallback + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; get( paramsOrCallback?: - | Params$Resource$Reasoningengines$Get - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Get; + {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Get; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get; options = {}; } @@ -166657,19 +176149,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Lists reasoning engines in a location. + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. * @example * ```js * // Before running the sample: @@ -166698,22 +176188,22 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.list({ - * // Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). - * filter: 'placeholder-value', - * // Optional. The standard list page size. - * pageSize: 'placeholder-value', - * // Optional. The standard list page token. - * pageToken: 'placeholder-value', - * // Required. The resource name of the Location to list the ReasoningEngines from. Format: `projects/{project\}/locations/{location\}` - * parent: 'placeholder-value', - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironments.operations.wait({ + * // The name of the operation resource to wait on. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "reasoningEngines": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -166729,61 +176219,58 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$List, + wait( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Reasoningengines$List, + wait( + params?: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Reasoningengines$List, + ): Promise>; + wait( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Reasoningengines$List, + wait( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Reasoningengines$List, - callback: BodyResponseCallback + wait( + params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + wait( + callback: BodyResponseCallback ): void; - list( + wait( paramsOrCallback?: - | Params$Resource$Reasoningengines$List - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$List; + {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$List; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait; options = {}; } @@ -166796,34 +176283,70 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/reasoningEngines').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel extends StandardParameters { /** - * Updates a reasoning engine. + * The name of the operation resource to be cancelled. + */ + name?: string; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait extends StandardParameters { + /** + * The name of the operation resource to wait on. + */ + name?: string; + /** + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + */ + timeout?: string; + } + + export class Resource$Reasoningengines$Sandboxenvironmentsnapshots { + context: APIRequestContext; + operations: Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = + new Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations( + this.context + ); + } + + /** + * Deletes the specific SandboxEnvironmentSnapshot. * @example * ```js * // Before running the sample: @@ -166852,29 +176375,11 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.patch({ - * // Identifier. The resource name of the ReasoningEngine. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - * name: 'reasoningEngines/my-reasoningEngine', - * // Optional. Mask specifying which fields to update. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "contextSpec": {}, - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "encryptionSpec": {}, - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "spec": {}, - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.delete({ + * // Required. The resource name of the SandboxEnvironmentSnapshot to delete. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot\}` + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironmentSnapshots/my-sandboxEnvironmentSnapshot', + * }); * console.log(res.data); * * // Example response @@ -166899,36 +176404,36 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Patch, + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Reasoningengines$Patch, + delete( + params?: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Reasoningengines$Patch, + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Reasoningengines$Patch, + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Delete, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Reasoningengines$Patch, + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Delete, callback: BodyResponseCallback ): void; - patch( + delete( callback: BodyResponseCallback ): void; - patch( + delete( paramsOrCallback?: - | Params$Resource$Reasoningengines$Patch + | Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -166944,12 +176449,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Patch; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Patch; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Delete; options = {}; } @@ -166963,7 +176469,7 @@ export namespace aiplatform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options @@ -166984,7 +176490,7 @@ export namespace aiplatform_v1 { } /** - * Queries using a reasoning engine. + * Gets details of the specific SandboxEnvironmentSnapshot. * @example * ```js * // Before running the sample: @@ -167013,24 +176519,27 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.query({ - * // Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - * name: 'reasoningEngines/my-reasoningEngine', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "classMethod": "my_classMethod", - * // "input": {} - * // } + * const res = await aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.get( + * { + * // Required. The resource name of the sandbox environment snapshot. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot\}` + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironmentSnapshots/my-sandboxEnvironmentSnapshot', * }, - * }); + * ); * console.log(res.data); * * // Example response * // { - * // "output": {} + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "expireTime": "my_expireTime", + * // "name": "my_name", + * // "owner": "my_owner", + * // "parentSnapshot": "my_parentSnapshot", + * // "postSnapshotAction": "my_postSnapshotAction", + * // "sizeBytes": "my_sizeBytes", + * // "sourceSandboxEnvironment": "my_sourceSandboxEnvironment", + * // "ttl": "my_ttl", + * // "updateTime": "my_updateTime" * // } * } * @@ -167046,61 +176555,62 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - query( - params: Params$Resource$Reasoningengines$Query, + get( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Get, options: StreamMethodOptions ): Promise>; - query( - params?: Params$Resource$Reasoningengines$Query, + get( + params?: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Get, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - query( - params: Params$Resource$Reasoningengines$Query, + get( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - query( - params: Params$Resource$Reasoningengines$Query, + get( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - query( - params: Params$Resource$Reasoningengines$Query, - callback: BodyResponseCallback + get( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Get, + callback: BodyResponseCallback ): void; - query( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - query( + get( paramsOrCallback?: - | Params$Resource$Reasoningengines$Query - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Query; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Query; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Get; options = {}; } @@ -167113,8 +176623,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:query').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options @@ -167125,19 +176635,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Streams queries using a reasoning engine. + * Lists SandboxEnvironmentSnapshots in a given reasoning engine. * @example * ```js * // Before running the sample: @@ -167166,26 +176676,23 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.streamQuery({ - * // Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - * name: 'reasoningEngines/my-reasoningEngine', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "classMethod": "my_classMethod", - * // "input": {} - * // } - * }, - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.list({ + * // Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). + * filter: 'placeholder-value', + * // Optional. The maximum number of SandboxEnvironmentSnapshots to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentSnapshots will be returned. Values above 100 will be coerced to 100. + * pageSize: 'placeholder-value', + * // Optional. The standard list page token, received from a previous `ListSandboxEnvironmentSnapshots` call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * parent: 'reasoningEngines/my-reasoningEngine', + * }); * console.log(res.data); * * // Example response * // { - * // "contentType": "my_contentType", - * // "data": "my_data", - * // "extensions": [] + * // "nextPageToken": "my_nextPageToken", + * // "sandboxEnvironmentSnapshots": [] * // } * } * @@ -167201,53 +176708,62 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - streamQuery( - params: Params$Resource$Reasoningengines$Streamquery, + list( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$List, options: StreamMethodOptions ): Promise>; - streamQuery( - params?: Params$Resource$Reasoningengines$Streamquery, + list( + params?: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$List, options?: MethodOptions - ): Promise>; - streamQuery( - params: Params$Resource$Reasoningengines$Streamquery, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - streamQuery( - params: Params$Resource$Reasoningengines$Streamquery, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - streamQuery( - params: Params$Resource$Reasoningengines$Streamquery, - callback: BodyResponseCallback + list( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$List, + callback: BodyResponseCallback ): void; - streamQuery(callback: BodyResponseCallback): void; - streamQuery( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Reasoningengines$Streamquery - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Streamquery; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Streamquery; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$List; options = {}; } @@ -167260,137 +176776,64 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:streamQuery').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: ( + rootUrl + '/v1/{+parent}/sandboxEnvironmentSnapshots' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Reasoningengines$Create extends StandardParameters { - /** - * Required. The resource name of the Location to create the ReasoningEngine in. Format: `projects/{project\}/locations/{location\}` - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1ReasoningEngine; - } - export interface Params$Resource$Reasoningengines$Delete extends StandardParameters { - /** - * Optional. If set to true, child resources of this reasoning engine will also be deleted. Otherwise, the request will fail with FAILED_PRECONDITION error when the reasoning engine has undeleted child resources. - */ - force?: boolean; - /** - * Required. The name of the ReasoningEngine resource to be deleted. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - */ - name?: string; - } - export interface Params$Resource$Reasoningengines$Executecode extends StandardParameters { + export interface Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Delete extends StandardParameters { /** - * Required. The resource name of the sandbox environment to execute. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * Required. The resource name of the SandboxEnvironmentSnapshot to delete. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot\}` */ name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1ExecuteCodeRequest; } - export interface Params$Resource$Reasoningengines$Get extends StandardParameters { + export interface Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Get extends StandardParameters { /** - * Required. The name of the ReasoningEngine resource. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * Required. The resource name of the sandbox environment snapshot. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentSnapshots/{sandbox_environment_snapshot\}` */ name?: string; } - export interface Params$Resource$Reasoningengines$List extends StandardParameters { + export interface Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$List extends StandardParameters { /** * Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). */ filter?: string; /** - * Optional. The standard list page size. + * Optional. The maximum number of SandboxEnvironmentSnapshots to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentSnapshots will be returned. Values above 100 will be coerced to 100. */ pageSize?: number; /** - * Optional. The standard list page token. + * Optional. The standard list page token, received from a previous `ListSandboxEnvironmentSnapshots` call. Provide this to retrieve the subsequent page. */ pageToken?: string; /** - * Required. The resource name of the Location to list the ReasoningEngines from. Format: `projects/{project\}/locations/{location\}` + * Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` */ parent?: string; } - export interface Params$Resource$Reasoningengines$Patch extends StandardParameters { - /** - * Identifier. The resource name of the ReasoningEngine. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - */ - name?: string; - /** - * Optional. Mask specifying which fields to update. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1ReasoningEngine; - } - export interface Params$Resource$Reasoningengines$Query extends StandardParameters { - /** - * Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1QueryReasoningEngineRequest; - } - export interface Params$Resource$Reasoningengines$Streamquery extends StandardParameters { - /** - * Required. The name of the ReasoningEngine resource to use. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1StreamQueryReasoningEngineRequest; - } - - export class Resource$Reasoningengines$Memories { - context: APIRequestContext; - operations: Resource$Reasoningengines$Memories$Operations; - constructor(context: APIRequestContext) { - this.context = context; - this.operations = new Resource$Reasoningengines$Memories$Operations( - this.context - ); - } - } - export class Resource$Reasoningengines$Memories$Operations { + export class Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -167426,10 +176869,13 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.memories.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'reasoningEngines/my-reasoningEngine/memories/my-memorie/operations/my-operation', - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.operations.cancel( + * { + * // The name of the operation resource to be cancelled. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironmentSnapshots/my-sandboxEnvironmentSnapshot/operations/my-operation', + * }, + * ); * console.log(res.data); * * // Example response @@ -167449,31 +176895,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Reasoningengines$Memories$Operations$Cancel, + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Reasoningengines$Memories$Operations$Cancel, + params?: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Reasoningengines$Memories$Operations$Cancel, + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Reasoningengines$Memories$Operations$Cancel, + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Reasoningengines$Memories$Operations$Cancel, + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Reasoningengines$Memories$Operations$Cancel + | Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -167489,13 +176935,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Memories$Operations$Cancel; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Reasoningengines$Memories$Operations$Cancel; + {} as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel; options = {}; } @@ -167559,10 +177005,13 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.memories.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'reasoningEngines/my-reasoningEngine/memories/my-memorie/operations/my-operation', - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.operations.delete( + * { + * // The name of the operation resource to be deleted. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironmentSnapshots/my-sandboxEnvironmentSnapshot/operations/my-operation', + * }, + * ); * console.log(res.data); * * // Example response @@ -167582,31 +177031,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Reasoningengines$Memories$Operations$Delete, + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Reasoningengines$Memories$Operations$Delete, + params?: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Reasoningengines$Memories$Operations$Delete, + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Reasoningengines$Memories$Operations$Delete, + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Reasoningengines$Memories$Operations$Delete, + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Reasoningengines$Memories$Operations$Delete + | Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -167622,13 +177071,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Memories$Operations$Delete; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Reasoningengines$Memories$Operations$Delete; + {} as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete; options = {}; } @@ -167692,10 +177141,13 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.memories.operations.get({ - * // The name of the operation resource. - * name: 'reasoningEngines/my-reasoningEngine/memories/my-memorie/operations/my-operation', - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.operations.get( + * { + * // The name of the operation resource. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironmentSnapshots/my-sandboxEnvironmentSnapshot/operations/my-operation', + * }, + * ); * console.log(res.data); * * // Example response @@ -167721,27 +177173,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Reasoningengines$Memories$Operations$Get, + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Reasoningengines$Memories$Operations$Get, + params?: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Reasoningengines$Memories$Operations$Get, + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Reasoningengines$Memories$Operations$Get, + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Reasoningengines$Memories$Operations$Get, + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -167749,7 +177201,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Reasoningengines$Memories$Operations$Get + | Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -167765,165 +177217,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Memories$Operations$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Memories$Operations$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - 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`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const aiplatform = google.aiplatform('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await aiplatform.reasoningEngines.memories.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'reasoningEngines/my-reasoningEngine/memories/my-memorie', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "operations": [], - * // "unreachable": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Reasoningengines$Memories$Operations$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Reasoningengines$Memories$Operations$List, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Reasoningengines$Memories$Operations$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Reasoningengines$Memories$Operations$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Reasoningengines$Memories$Operations$List, - callback: BodyResponseCallback - ): void; - list( - callback: BodyResponseCallback - ): void; - list( - paramsOrCallback?: - | Params$Resource$Reasoningengines$Memories$Operations$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Memories$Operations$List; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Reasoningengines$Memories$Operations$List; + {} as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get; options = {}; } @@ -167936,237 +177236,29 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}/operations').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/aiplatform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const aiplatform = google.aiplatform('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await aiplatform.reasoningEngines.memories.operations.wait({ - * // The name of the operation resource to wait on. - * name: 'reasoningEngines/my-reasoningEngine/memories/my-memorie/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - wait( - params: Params$Resource$Reasoningengines$Memories$Operations$Wait, - options: StreamMethodOptions - ): Promise>; - wait( - params?: Params$Resource$Reasoningengines$Memories$Operations$Wait, - options?: MethodOptions - ): Promise>; - wait( - params: Params$Resource$Reasoningengines$Memories$Operations$Wait, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - wait( - params: Params$Resource$Reasoningengines$Memories$Operations$Wait, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - wait( - params: Params$Resource$Reasoningengines$Memories$Operations$Wait, - callback: BodyResponseCallback - ): void; - wait( - callback: BodyResponseCallback - ): void; - wait( - paramsOrCallback?: - | Params$Resource$Reasoningengines$Memories$Operations$Wait - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Memories$Operations$Wait; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Reasoningengines$Memories$Operations$Wait; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://aiplatform.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Reasoningengines$Memories$Operations$Cancel extends StandardParameters { - /** - * The name of the operation resource to be cancelled. - */ - name?: string; - } - export interface Params$Resource$Reasoningengines$Memories$Operations$Delete extends StandardParameters { - /** - * The name of the operation resource to be deleted. - */ - name?: string; - } - export interface Params$Resource$Reasoningengines$Memories$Operations$Get extends StandardParameters { - /** - * The name of the operation resource. - */ - name?: string; - } - export interface Params$Resource$Reasoningengines$Memories$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; - /** - * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Reasoningengines$Memories$Operations$Wait extends StandardParameters { - /** - * The name of the operation resource to wait on. - */ - name?: string; - /** - * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - */ - timeout?: string; - } - - export class Resource$Reasoningengines$Operations { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * 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`. + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. * @example * ```js * // Before running the sample: @@ -168195,14 +177287,25 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'reasoningEngines/my-reasoningEngine/operations/my-operation', - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentSnapshots.operations.wait( + * { + * // The name of the operation resource to wait on. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironmentSnapshots/my-sandboxEnvironmentSnapshot/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }, + * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -168217,53 +177320,58 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Operations$Cancel, + wait( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Reasoningengines$Operations$Cancel, + wait( + params?: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait, options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Reasoningengines$Operations$Cancel, + ): Promise>; + wait( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Reasoningengines$Operations$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + wait( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Reasoningengines$Operations$Cancel, - callback: BodyResponseCallback + wait( + params: Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait, + callback: BodyResponseCallback ): void; - cancel(callback: BodyResponseCallback): void; - cancel( + wait( + callback: BodyResponseCallback + ): void; + wait( paramsOrCallback?: - | Params$Resource$Reasoningengines$Operations$Cancel - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Operations$Cancel; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Operations$Cancel; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait; options = {}; } @@ -168276,7 +177384,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, @@ -168288,17 +177396,58 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Cancel extends StandardParameters { /** - * 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`. + * The name of the operation resource to be cancelled. + */ + name?: string; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Delete extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironmentsnapshots$Operations$Wait extends StandardParameters { + /** + * The name of the operation resource to wait on. + */ + name?: string; + /** + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + */ + timeout?: string; + } + + export class Resource$Reasoningengines$Sandboxenvironmenttemplates { + context: APIRequestContext; + operations: Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = + new Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations( + this.context + ); + } + + /** + * Creates a SandboxEnvironmentTemplate in a given reasoning engine. * @example * ```js * // Before running the sample: @@ -168327,14 +177476,36 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'reasoningEngines/my-reasoningEngine/operations/my-operation', - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentTemplates.create({ + * // Required. The resource name of the reasoning engine to create the SandboxEnvironmentTemplate in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}`. + * parent: 'reasoningEngines/my-reasoningEngine', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customContainerEnvironment": {}, + * // "defaultContainerEnvironment": {}, + * // "displayName": "my_displayName", + * // "egressControlConfig": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -168349,53 +177520,58 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Operations$Delete, + create( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Create, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Reasoningengines$Operations$Delete, + create( + params?: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Create, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Reasoningengines$Operations$Delete, + ): Promise>; + create( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Reasoningengines$Operations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Reasoningengines$Operations$Delete, - callback: BodyResponseCallback + create( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Create, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + create( + callback: BodyResponseCallback + ): void; + create( paramsOrCallback?: - | Params$Resource$Reasoningengines$Operations$Delete - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Operations$Delete; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Operations$Delete; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Create; options = {}; } @@ -168408,29 +177584,31 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: ( + rootUrl + '/v1/{+parent}/sandboxEnvironmentTemplates' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Deletes the specific SandboxEnvironmentTemplate. * @example * ```js * // Before running the sample: @@ -168459,10 +177637,11 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.operations.get({ - * // The name of the operation resource. - * name: 'reasoningEngines/my-reasoningEngine/operations/my-operation', - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentTemplates.delete({ + * // Required. The resource name of the SandboxEnvironmentTemplate to delete. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentTemplates/{sandbox_environment_template\}` + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironmentTemplates/my-sandboxEnvironmentTemplate', + * }); * console.log(res.data); * * // Example response @@ -168487,36 +177666,36 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Operations$Get, + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Reasoningengines$Operations$Get, + delete( + params?: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Delete, options?: MethodOptions ): Promise>; - get( - params: Params$Resource$Reasoningengines$Operations$Get, + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Reasoningengines$Operations$Get, + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Delete, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Reasoningengines$Operations$Get, + delete( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Delete, callback: BodyResponseCallback ): void; - get( + delete( callback: BodyResponseCallback ): void; - get( + delete( paramsOrCallback?: - | Params$Resource$Reasoningengines$Operations$Get + | Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -168532,12 +177711,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Operations$Get; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Operations$Get; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Delete; options = {}; } @@ -168551,7 +177731,7 @@ export namespace aiplatform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options @@ -168572,7 +177752,7 @@ export namespace aiplatform_v1 { } /** - * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + * Gets details of the specific SandboxEnvironmentTemplate. * @example * ```js * // Before running the sample: @@ -168601,25 +177781,24 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'reasoningEngines/my-reasoningEngine', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', - * }); + * const res = await aiplatform.reasoningEngines.sandboxEnvironmentTemplates.get( + * { + * // Required. The resource name of the sandbox environment template. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentTemplates/{sandbox_environment_template\}` + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironmentTemplates/my-sandboxEnvironmentTemplate', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "operations": [], - * // "unreachable": [] + * // "createTime": "my_createTime", + * // "customContainerEnvironment": {}, + * // "defaultContainerEnvironment": {}, + * // "displayName": "my_displayName", + * // "egressControlConfig": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "updateTime": "my_updateTime" * // } * } * @@ -168635,61 +177814,62 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Operations$List, + get( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Reasoningengines$Operations$List, + get( + params?: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Get, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - list( - params: Params$Resource$Reasoningengines$Operations$List, + get( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Reasoningengines$Operations$List, + get( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Reasoningengines$Operations$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Get, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - list( + get( paramsOrCallback?: - | Params$Resource$Reasoningengines$Operations$List - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Operations$List; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Operations$List; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Get; options = {}; } @@ -168702,10 +177882,7 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}/operations').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, @@ -168717,19 +177894,19 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. + * Lists SandboxEnvironmentTemplates in a given reasoning engine. * @example * ```js * // Before running the sample: @@ -168758,21 +177935,23 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.operations.wait({ - * // The name of the operation resource to wait on. - * name: 'reasoningEngines/my-reasoningEngine/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentTemplates.list({ + * // Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). + * filter: 'placeholder-value', + * // Optional. The maximum number of SandboxEnvironmentTemplates to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentTemplates will be returned. + * pageSize: 'placeholder-value', + * // Optional. The standard list page token, received from a previous `ListSandboxEnvironmentTemplates` call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The resource name of the reasoning engine to list sandbox environment templates from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` + * parent: 'reasoningEngines/my-reasoningEngine', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "nextPageToken": "my_nextPageToken", + * // "sandboxEnvironmentTemplates": [] * // } * } * @@ -168788,57 +177967,62 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - wait( - params: Params$Resource$Reasoningengines$Operations$Wait, + list( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$List, options: StreamMethodOptions ): Promise>; - wait( - params?: Params$Resource$Reasoningengines$Operations$Wait, + list( + params?: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$List, options?: MethodOptions - ): Promise>; - wait( - params: Params$Resource$Reasoningengines$Operations$Wait, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Reasoningengines$Operations$Wait, + list( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Reasoningengines$Operations$Wait, - callback: BodyResponseCallback + list( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$List, + callback: BodyResponseCallback ): void; - wait( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - wait( + list( paramsOrCallback?: - | Params$Resource$Reasoningengines$Operations$Wait - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Operations$Wait; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Operations$Wait; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$List; options = {}; } @@ -168851,92 +178035,82 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: ( + rootUrl + '/v1/{+parent}/sandboxEnvironmentTemplates' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Reasoningengines$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Create extends StandardParameters { /** - * The name of the operation resource to be cancelled. + * Required. The resource name of the reasoning engine to create the SandboxEnvironmentTemplate in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}`. */ - name?: string; + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplate; } - export interface Params$Resource$Reasoningengines$Operations$Delete extends StandardParameters { + export interface Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Delete extends StandardParameters { /** - * The name of the operation resource to be deleted. + * Required. The resource name of the SandboxEnvironmentTemplate to delete. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentTemplates/{sandbox_environment_template\}` */ name?: string; } - export interface Params$Resource$Reasoningengines$Operations$Get extends StandardParameters { + export interface Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Get extends StandardParameters { /** - * The name of the operation resource. + * Required. The resource name of the sandbox environment template. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironmentTemplates/{sandbox_environment_template\}` */ name?: string; } - export interface Params$Resource$Reasoningengines$Operations$List extends StandardParameters { + export interface Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$List extends StandardParameters { /** - * The standard list filter. + * Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). */ filter?: string; /** - * The name of the operation's parent resource. - */ - name?: string; - /** - * The standard list page size. + * Optional. The maximum number of SandboxEnvironmentTemplates to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironmentTemplates will be returned. */ pageSize?: number; /** - * The standard list page token. + * Optional. The standard list page token, received from a previous `ListSandboxEnvironmentTemplates` call. Provide this to retrieve the subsequent page. */ pageToken?: string; /** - * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Reasoningengines$Operations$Wait extends StandardParameters { - /** - * The name of the operation resource to wait on. - */ - name?: string; - /** - * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * Required. The resource name of the reasoning engine to list sandbox environment templates from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` */ - timeout?: string; + parent?: string; } - export class Resource$Reasoningengines$Sandboxenvironments { + export class Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations { context: APIRequestContext; - operations: Resource$Reasoningengines$Sandboxenvironments$Operations; constructor(context: APIRequestContext) { this.context = context; - this.operations = - new Resource$Reasoningengines$Sandboxenvironments$Operations( - this.context - ); } /** - * Creates a SandboxEnvironment in a given reasoning engine. + * 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`. * @example * ```js * // Before running the sample: @@ -168965,36 +178139,17 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.sandboxEnvironments.create({ - * // Required. The resource name of the reasoning engine to create the SandboxEnvironment in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}`. - * parent: 'reasoningEngines/my-reasoningEngine', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "connectionInfo": {}, - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "expireTime": "my_expireTime", - * // "name": "my_name", - * // "spec": {}, - * // "state": "my_state", - * // "ttl": "my_ttl", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.cancel( + * { + * // The name of the operation resource to be cancelled. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironmentTemplates/my-sandboxEnvironmentTemplate/operations/my-operation', + * }, + * ); * console.log(res.data); * * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } + * // {} * } * * main().catch(e => { @@ -169009,58 +178164,54 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sandboxenvironments$Create, + cancel( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Reasoningengines$Sandboxenvironments$Create, + cancel( + params?: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Create, + ): Promise>; + cancel( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Create, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + cancel( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel, + callback: BodyResponseCallback ): void; - create( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sandboxenvironments$Create - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Create; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Reasoningengines$Sandboxenvironments$Create; + {} as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel; options = {}; } @@ -169073,32 +178224,29 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/sandboxEnvironments').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specific SandboxEnvironment. + * 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`. * @example * ```js * // Before running the sample: @@ -169127,20 +178275,17 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.sandboxEnvironments.delete({ - * // Required. The resource name of the SandboxEnvironment to delete. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}` - * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment', - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.delete( + * { + * // The name of the operation resource to be deleted. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironmentTemplates/my-sandboxEnvironmentTemplate/operations/my-operation', + * }, + * ); * console.log(res.data); * * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } + * // {} * } * * main().catch(e => { @@ -169156,57 +178301,53 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Delete, + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Reasoningengines$Sandboxenvironments$Delete, + params?: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete, options?: MethodOptions - ): Promise>; + ): Promise>; delete( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Delete, + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Delete, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Delete, - callback: BodyResponseCallback + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; delete( - callback: BodyResponseCallback + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete, + callback: BodyResponseCallback ): void; + delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sandboxenvironments$Delete - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Delete; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Reasoningengines$Sandboxenvironments$Delete; + {} as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete; options = {}; } @@ -169231,17 +178372,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Executes using a sandbox environment. + * 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. * @example * ```js * // Before running the sample: @@ -169270,23 +178411,22 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.sandboxEnvironments.execute({ - * // Required. The resource name of the sandbox environment to execute. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}` - * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "inputs": [] - * // } - * }, - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.get( + * { + * // The name of the operation resource. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironmentTemplates/my-sandboxEnvironmentTemplate/operations/my-operation', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "outputs": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -169302,62 +178442,58 @@ export namespace aiplatform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - execute( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Execute, + get( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get, options: StreamMethodOptions ): Promise>; - execute( - params?: Params$Resource$Reasoningengines$Sandboxenvironments$Execute, + get( + params?: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - execute( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Execute, + ): Promise>; + get( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - execute( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Execute, + get( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - execute( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Execute, - callback: BodyResponseCallback + get( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get, + callback: BodyResponseCallback ): void; - execute( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - execute( + get( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sandboxenvironments$Execute - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Execute; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Reasoningengines$Sandboxenvironments$Execute; + {} as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get; options = {}; } @@ -169370,11 +178506,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:execute').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options @@ -169385,19 +178518,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Gets details of the specific SandboxEnvironment. + * Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done. * @example * ```js * // Before running the sample: @@ -169426,23 +178557,24 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.sandboxEnvironments.get({ - * // Required. The resource name of the sandbox environment. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}` - * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment', - * }); + * const res = + * await aiplatform.reasoningEngines.sandboxEnvironmentTemplates.operations.wait( + * { + * // The name of the operation resource to wait on. + * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironmentTemplates/my-sandboxEnvironmentTemplate/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "connectionInfo": {}, - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "expireTime": "my_expireTime", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "spec": {}, - * // "state": "my_state", - * // "ttl": "my_ttl", - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -169458,61 +178590,58 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sandboxenvironments$Get, + wait( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Reasoningengines$Sandboxenvironments$Get, + wait( + params?: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - get( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Get, + ): Promise>; + wait( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Get, + wait( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Get, - callback: BodyResponseCallback + wait( + params: Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + wait( + callback: BodyResponseCallback ): void; - get( + wait( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sandboxenvironments$Get - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Get; + {}) as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Sandboxenvironments$Get; + params = + {} as Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait; options = {}; } @@ -169525,8 +178654,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+name}:wait').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -169537,19 +178666,64 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Cancel extends StandardParameters { /** - * Lists SandboxEnvironments in a given reasoning engine. + * The name of the operation resource to be cancelled. + */ + name?: string; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Delete extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Reasoningengines$Sandboxenvironmenttemplates$Operations$Wait extends StandardParameters { + /** + * The name of the operation resource to wait on. + */ + name?: string; + /** + * The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + */ + timeout?: string; + } + + export class Resource$Reasoningengines$Sessions { + context: APIRequestContext; + operations: Resource$Reasoningengines$Sessions$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = new Resource$Reasoningengines$Sessions$Operations( + this.context + ); + } + } + + export class Resource$Reasoningengines$Sessions$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`. * @example * ```js * // Before running the sample: @@ -169578,23 +178752,14 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.sandboxEnvironments.list({ - * // Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). - * filter: 'placeholder-value', - * // Optional. The maximum number of SandboxEnvironments to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironments will be returned. - * pageSize: 'placeholder-value', - * // Optional. The standard list page token, received from a previous `ListSandboxEnvironments` call. Provide this to retrieve the subsequent page. - * pageToken: 'placeholder-value', - * // Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - * parent: 'reasoningEngines/my-reasoningEngine', + * const res = await aiplatform.reasoningEngines.sessions.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', * }); * console.log(res.data); * * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "sandboxEnvironments": [] - * // } + * // {} * } * * main().catch(e => { @@ -169609,62 +178774,54 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sandboxenvironments$List, + cancel( + params: Params$Resource$Reasoningengines$Sessions$Operations$Cancel, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Reasoningengines$Sandboxenvironments$List, + cancel( + params?: Params$Resource$Reasoningengines$Sessions$Operations$Cancel, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Reasoningengines$Sandboxenvironments$List, + ): Promise>; + cancel( + params: Params$Resource$Reasoningengines$Sessions$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Reasoningengines$Sandboxenvironments$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Reasoningengines$Sandboxenvironments$List, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Reasoningengines$Sessions$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + cancel( + params: Params$Resource$Reasoningengines$Sessions$Operations$Cancel, + callback: BodyResponseCallback ): void; - list( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sandboxenvironments$List - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sessions$Operations$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sandboxenvironments$List; + {}) as Params$Resource$Reasoningengines$Sessions$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Reasoningengines$Sandboxenvironments$List; + {} as Params$Resource$Reasoningengines$Sessions$Operations$Cancel; options = {}; } @@ -169677,94 +178834,29 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/sandboxEnvironments').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Reasoningengines$Sandboxenvironments$Create extends StandardParameters { - /** - * Required. The resource name of the reasoning engine to create the SandboxEnvironment in. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}`. - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1SandboxEnvironment; - } - export interface Params$Resource$Reasoningengines$Sandboxenvironments$Delete extends StandardParameters { - /** - * Required. The resource name of the SandboxEnvironment to delete. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}` - */ - name?: string; - } - export interface Params$Resource$Reasoningengines$Sandboxenvironments$Execute extends StandardParameters { - /** - * Required. The resource name of the sandbox environment to execute. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}` - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudAiplatformV1ExecuteSandboxEnvironmentRequest; - } - export interface Params$Resource$Reasoningengines$Sandboxenvironments$Get extends StandardParameters { - /** - * Required. The resource name of the sandbox environment. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/sandboxEnvironments/{sandbox_environment\}` - */ - name?: string; - } - export interface Params$Resource$Reasoningengines$Sandboxenvironments$List extends StandardParameters { - /** - * Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). - */ - filter?: string; - /** - * Optional. The maximum number of SandboxEnvironments to return. The service may return fewer than this value. If unspecified, at most 100 SandboxEnvironments will be returned. - */ - pageSize?: number; - /** - * Optional. The standard list page token, received from a previous `ListSandboxEnvironments` call. Provide this to retrieve the subsequent page. - */ - pageToken?: string; - /** - * Required. The resource name of the reasoning engine to list sandbox environments from. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}` - */ - parent?: string; - } - - export class Resource$Reasoningengines$Sandboxenvironments$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`. + * 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`. * @example * ```js * // Before running the sample: @@ -169793,11 +178885,10 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.reasoningEngines.sandboxEnvironments.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment/operations/my-operation', - * }); + * const res = await aiplatform.reasoningEngines.sessions.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -169816,32 +178907,32 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sandboxenvironments$Operations$Cancel, + delete( + params: Params$Resource$Reasoningengines$Sessions$Operations$Delete, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel, + delete( + params?: Params$Resource$Reasoningengines$Sessions$Operations$Delete, options?: MethodOptions ): Promise>; - cancel( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel, + delete( + params: Params$Resource$Reasoningengines$Sessions$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel, + delete( + params: Params$Resource$Reasoningengines$Sessions$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel, + delete( + params: Params$Resource$Reasoningengines$Sessions$Operations$Delete, callback: BodyResponseCallback ): void; - cancel(callback: BodyResponseCallback): void; - cancel( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel + | Params$Resource$Reasoningengines$Sessions$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -169857,13 +178948,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel; + {}) as Params$Resource$Reasoningengines$Sessions$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel; + {} as Params$Resource$Reasoningengines$Sessions$Operations$Delete; options = {}; } @@ -169876,8 +178967,8 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options @@ -169898,7 +178989,7 @@ export namespace aiplatform_v1 { } /** - * 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`. + * 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. * @example * ```js * // Before running the sample: @@ -169927,15 +179018,20 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.reasoningEngines.sandboxEnvironments.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment/operations/my-operation', - * }); + * const res = await aiplatform.reasoningEngines.sessions.operations.get({ + * // The name of the operation resource. + * name: 'reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -169950,54 +179046,57 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sandboxenvironments$Operations$Delete, + get( + params: Params$Resource$Reasoningengines$Sessions$Operations$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete, + get( + params?: Params$Resource$Reasoningengines$Sessions$Operations$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete, + ): Promise>; + get( + params: Params$Resource$Reasoningengines$Sessions$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Reasoningengines$Sessions$Operations$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Reasoningengines$Sessions$Operations$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get( + callback: BodyResponseCallback + ): void; + get( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sessions$Operations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete; + {}) as Params$Resource$Reasoningengines$Sessions$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete; + params = {} as Params$Resource$Reasoningengines$Sessions$Operations$Get; options = {}; } @@ -170011,7 +179110,7 @@ export namespace aiplatform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options @@ -170022,17 +179121,17 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. * @example * ```js * // Before running the sample: @@ -170061,20 +179160,25 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.reasoningEngines.sandboxEnvironments.operations.get({ - * // The name of the operation resource. - * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment/operations/my-operation', - * }); + * const res = await aiplatform.reasoningEngines.sessions.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'reasoningEngines/my-reasoningEngine/sessions/my-session', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "nextPageToken": "my_nextPageToken", + * // "operations": [], + * // "unreachable": [] * // } * } * @@ -170090,58 +179194,62 @@ export namespace aiplatform_v1 { * @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$Reasoningengines$Sandboxenvironments$Operations$Get, + list( + params: Params$Resource$Reasoningengines$Sessions$Operations$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get, + list( + params?: Params$Resource$Reasoningengines$Sessions$Operations$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Reasoningengines$Sessions$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get, + list( + params: Params$Resource$Reasoningengines$Sessions$Operations$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Reasoningengines$Sessions$Operations$List, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - get( + list( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get - | BodyResponseCallback + | Params$Resource$Reasoningengines$Sessions$Operations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get; + {}) as Params$Resource$Reasoningengines$Sessions$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get; + {} as Params$Resource$Reasoningengines$Sessions$Operations$List; options = {}; } @@ -170154,7 +179262,10 @@ export namespace aiplatform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+name}/operations').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, @@ -170166,12 +179277,14 @@ export namespace aiplatform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } @@ -170205,13 +179318,12 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await aiplatform.reasoningEngines.sandboxEnvironments.operations.wait({ - * // The name of the operation resource to wait on. - * name: 'reasoningEngines/my-reasoningEngine/sandboxEnvironments/my-sandboxEnvironment/operations/my-operation', - * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. - * timeout: 'placeholder-value', - * }); + * const res = await aiplatform.reasoningEngines.sessions.operations.wait({ + * // The name of the operation resource to wait on. + * name: 'reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. + * timeout: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -170237,27 +179349,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ wait( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait, + params: Params$Resource$Reasoningengines$Sessions$Operations$Wait, options: StreamMethodOptions ): Promise>; wait( - params?: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait, + params?: Params$Resource$Reasoningengines$Sessions$Operations$Wait, options?: MethodOptions ): Promise>; wait( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait, + params: Params$Resource$Reasoningengines$Sessions$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait, + params: Params$Resource$Reasoningengines$Sessions$Operations$Wait, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait, + params: Params$Resource$Reasoningengines$Sessions$Operations$Wait, callback: BodyResponseCallback ): void; wait( @@ -170265,7 +179377,7 @@ export namespace aiplatform_v1 { ): void; wait( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait + | Params$Resource$Reasoningengines$Sessions$Operations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -170281,13 +179393,13 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait; + {}) as Params$Resource$Reasoningengines$Sessions$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait; + {} as Params$Resource$Reasoningengines$Sessions$Operations$Wait; options = {}; } @@ -170322,25 +179434,47 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Reasoningengines$Sessions$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Delete extends StandardParameters { + export interface Params$Resource$Reasoningengines$Sessions$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Get extends StandardParameters { + export interface Params$Resource$Reasoningengines$Sessions$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Reasoningengines$Sandboxenvironments$Operations$Wait extends StandardParameters { + export interface Params$Resource$Reasoningengines$Sessions$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; + /** + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Reasoningengines$Sessions$Operations$Wait extends StandardParameters { /** * The name of the operation resource to wait on. */ @@ -170351,18 +179485,16 @@ export namespace aiplatform_v1 { timeout?: string; } - export class Resource$Reasoningengines$Sessions { + export class Resource$Schedules { context: APIRequestContext; - operations: Resource$Reasoningengines$Sessions$Operations; + operations: Resource$Schedules$Operations; constructor(context: APIRequestContext) { this.context = context; - this.operations = new Resource$Reasoningengines$Sessions$Operations( - this.context - ); + this.operations = new Resource$Schedules$Operations(this.context); } } - export class Resource$Reasoningengines$Sessions$Operations { + export class Resource$Schedules$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -170398,9 +179530,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.sessions.operations.cancel({ + * const res = await aiplatform.schedules.operations.cancel({ * // The name of the operation resource to be cancelled. - * name: 'reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * name: 'schedules/my-schedule/operations/my-operation', * }); * console.log(res.data); * @@ -170421,31 +179553,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Reasoningengines$Sessions$Operations$Cancel, + params: Params$Resource$Schedules$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Reasoningengines$Sessions$Operations$Cancel, + params?: Params$Resource$Schedules$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Reasoningengines$Sessions$Operations$Cancel, + params: Params$Resource$Schedules$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Reasoningengines$Sessions$Operations$Cancel, + params: Params$Resource$Schedules$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Reasoningengines$Sessions$Operations$Cancel, + params: Params$Resource$Schedules$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sessions$Operations$Cancel + | Params$Resource$Schedules$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -170461,13 +179593,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sessions$Operations$Cancel; + {}) as Params$Resource$Schedules$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Reasoningengines$Sessions$Operations$Cancel; + params = {} as Params$Resource$Schedules$Operations$Cancel; options = {}; } @@ -170531,9 +179662,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.sessions.operations.delete({ + * const res = await aiplatform.schedules.operations.delete({ * // The name of the operation resource to be deleted. - * name: 'reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * name: 'schedules/my-schedule/operations/my-operation', * }); * console.log(res.data); * @@ -170554,31 +179685,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Reasoningengines$Sessions$Operations$Delete, + params: Params$Resource$Schedules$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Reasoningengines$Sessions$Operations$Delete, + params?: Params$Resource$Schedules$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Reasoningengines$Sessions$Operations$Delete, + params: Params$Resource$Schedules$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Reasoningengines$Sessions$Operations$Delete, + params: Params$Resource$Schedules$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Reasoningengines$Sessions$Operations$Delete, + params: Params$Resource$Schedules$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sessions$Operations$Delete + | Params$Resource$Schedules$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -170594,13 +179725,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sessions$Operations$Delete; + {}) as Params$Resource$Schedules$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Reasoningengines$Sessions$Operations$Delete; + params = {} as Params$Resource$Schedules$Operations$Delete; options = {}; } @@ -170664,9 +179794,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.sessions.operations.get({ + * const res = await aiplatform.schedules.operations.get({ * // The name of the operation resource. - * name: 'reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * name: 'schedules/my-schedule/operations/my-operation', * }); * console.log(res.data); * @@ -170693,27 +179823,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Reasoningengines$Sessions$Operations$Get, + params: Params$Resource$Schedules$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Reasoningengines$Sessions$Operations$Get, + params?: Params$Resource$Schedules$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Reasoningengines$Sessions$Operations$Get, + params: Params$Resource$Schedules$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Reasoningengines$Sessions$Operations$Get, + params: Params$Resource$Schedules$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Reasoningengines$Sessions$Operations$Get, + params: Params$Resource$Schedules$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -170721,7 +179851,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sessions$Operations$Get + | Params$Resource$Schedules$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -170737,12 +179867,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sessions$Operations$Get; + {}) as Params$Resource$Schedules$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reasoningengines$Sessions$Operations$Get; + params = {} as Params$Resource$Schedules$Operations$Get; options = {}; } @@ -170806,11 +179936,11 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.sessions.operations.list({ + * const res = await aiplatform.schedules.operations.list({ * // The standard list filter. * filter: 'placeholder-value', * // The name of the operation's parent resource. - * name: 'reasoningEngines/my-reasoningEngine/sessions/my-session', + * name: 'schedules/my-schedule', * // The standard list page size. * pageSize: 'placeholder-value', * // The standard list page token. @@ -170841,29 +179971,29 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Reasoningengines$Sessions$Operations$List, + params: Params$Resource$Schedules$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Reasoningengines$Sessions$Operations$List, + params?: Params$Resource$Schedules$Operations$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Reasoningengines$Sessions$Operations$List, + params: Params$Resource$Schedules$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Reasoningengines$Sessions$Operations$List, + params: Params$Resource$Schedules$Operations$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Reasoningengines$Sessions$Operations$List, + params: Params$Resource$Schedules$Operations$List, callback: BodyResponseCallback ): void; list( @@ -170871,7 +180001,7 @@ export namespace aiplatform_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sessions$Operations$List + | Params$Resource$Schedules$Operations$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -170889,13 +180019,12 @@ export namespace aiplatform_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sessions$Operations$List; + {}) as Params$Resource$Schedules$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Reasoningengines$Sessions$Operations$List; + params = {} as Params$Resource$Schedules$Operations$List; options = {}; } @@ -170964,9 +180093,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.reasoningEngines.sessions.operations.wait({ + * const res = await aiplatform.schedules.operations.wait({ * // The name of the operation resource to wait on. - * name: 'reasoningEngines/my-reasoningEngine/sessions/my-session/operations/my-operation', + * name: 'schedules/my-schedule/operations/my-operation', * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. * timeout: 'placeholder-value', * }); @@ -170995,27 +180124,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ wait( - params: Params$Resource$Reasoningengines$Sessions$Operations$Wait, + params: Params$Resource$Schedules$Operations$Wait, options: StreamMethodOptions ): Promise>; wait( - params?: Params$Resource$Reasoningengines$Sessions$Operations$Wait, + params?: Params$Resource$Schedules$Operations$Wait, options?: MethodOptions ): Promise>; wait( - params: Params$Resource$Reasoningengines$Sessions$Operations$Wait, + params: Params$Resource$Schedules$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Reasoningengines$Sessions$Operations$Wait, + params: Params$Resource$Schedules$Operations$Wait, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Reasoningengines$Sessions$Operations$Wait, + params: Params$Resource$Schedules$Operations$Wait, callback: BodyResponseCallback ): void; wait( @@ -171023,7 +180152,7 @@ export namespace aiplatform_v1 { ): void; wait( paramsOrCallback?: - | Params$Resource$Reasoningengines$Sessions$Operations$Wait + | Params$Resource$Schedules$Operations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -171039,13 +180168,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reasoningengines$Sessions$Operations$Wait; + {}) as Params$Resource$Schedules$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Reasoningengines$Sessions$Operations$Wait; + params = {} as Params$Resource$Schedules$Operations$Wait; options = {}; } @@ -171080,25 +180208,25 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Reasoningengines$Sessions$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Schedules$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Reasoningengines$Sessions$Operations$Delete extends StandardParameters { + export interface Params$Resource$Schedules$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Reasoningengines$Sessions$Operations$Get extends StandardParameters { + export interface Params$Resource$Schedules$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Reasoningengines$Sessions$Operations$List extends StandardParameters { + export interface Params$Resource$Schedules$Operations$List extends StandardParameters { /** * The standard list filter. */ @@ -171120,7 +180248,7 @@ export namespace aiplatform_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Reasoningengines$Sessions$Operations$Wait extends StandardParameters { + export interface Params$Resource$Schedules$Operations$Wait extends StandardParameters { /** * The name of the operation resource to wait on. */ @@ -171131,16 +180259,16 @@ export namespace aiplatform_v1 { timeout?: string; } - export class Resource$Schedules { + export class Resource$Skills { context: APIRequestContext; - operations: Resource$Schedules$Operations; + operations: Resource$Skills$Operations; constructor(context: APIRequestContext) { this.context = context; - this.operations = new Resource$Schedules$Operations(this.context); + this.operations = new Resource$Skills$Operations(this.context); } } - export class Resource$Schedules$Operations { + export class Resource$Skills$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -171176,9 +180304,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.schedules.operations.cancel({ + * const res = await aiplatform.skills.operations.cancel({ * // The name of the operation resource to be cancelled. - * name: 'schedules/my-schedule/operations/my-operation', + * name: 'skills/my-skill/operations/my-operation', * }); * console.log(res.data); * @@ -171199,31 +180327,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ cancel( - params: Params$Resource$Schedules$Operations$Cancel, + params: Params$Resource$Skills$Operations$Cancel, options: StreamMethodOptions ): Promise>; cancel( - params?: Params$Resource$Schedules$Operations$Cancel, + params?: Params$Resource$Skills$Operations$Cancel, options?: MethodOptions ): Promise>; cancel( - params: Params$Resource$Schedules$Operations$Cancel, + params: Params$Resource$Skills$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Schedules$Operations$Cancel, + params: Params$Resource$Skills$Operations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; cancel( - params: Params$Resource$Schedules$Operations$Cancel, + params: Params$Resource$Skills$Operations$Cancel, callback: BodyResponseCallback ): void; cancel(callback: BodyResponseCallback): void; cancel( paramsOrCallback?: - | Params$Resource$Schedules$Operations$Cancel + | Params$Resource$Skills$Operations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -171239,12 +180367,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Schedules$Operations$Cancel; + {}) as Params$Resource$Skills$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Schedules$Operations$Cancel; + params = {} as Params$Resource$Skills$Operations$Cancel; options = {}; } @@ -171308,9 +180436,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.schedules.operations.delete({ + * const res = await aiplatform.skills.operations.delete({ * // The name of the operation resource to be deleted. - * name: 'schedules/my-schedule/operations/my-operation', + * name: 'skills/my-skill/operations/my-operation', * }); * console.log(res.data); * @@ -171331,31 +180459,31 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Schedules$Operations$Delete, + params: Params$Resource$Skills$Operations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Schedules$Operations$Delete, + params?: Params$Resource$Skills$Operations$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Schedules$Operations$Delete, + params: Params$Resource$Skills$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Schedules$Operations$Delete, + params: Params$Resource$Skills$Operations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Schedules$Operations$Delete, + params: Params$Resource$Skills$Operations$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Schedules$Operations$Delete + | Params$Resource$Skills$Operations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -171371,12 +180499,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Schedules$Operations$Delete; + {}) as Params$Resource$Skills$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Schedules$Operations$Delete; + params = {} as Params$Resource$Skills$Operations$Delete; options = {}; } @@ -171440,9 +180568,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.schedules.operations.get({ + * const res = await aiplatform.skills.operations.get({ * // The name of the operation resource. - * name: 'schedules/my-schedule/operations/my-operation', + * name: 'skills/my-skill/operations/my-operation', * }); * console.log(res.data); * @@ -171469,27 +180597,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Schedules$Operations$Get, + params: Params$Resource$Skills$Operations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Schedules$Operations$Get, + params?: Params$Resource$Skills$Operations$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Schedules$Operations$Get, + params: Params$Resource$Skills$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Schedules$Operations$Get, + params: Params$Resource$Skills$Operations$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Schedules$Operations$Get, + params: Params$Resource$Skills$Operations$Get, callback: BodyResponseCallback ): void; get( @@ -171497,7 +180625,7 @@ export namespace aiplatform_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Schedules$Operations$Get + | Params$Resource$Skills$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -171513,12 +180641,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Schedules$Operations$Get; + {}) as Params$Resource$Skills$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Schedules$Operations$Get; + params = {} as Params$Resource$Skills$Operations$Get; options = {}; } @@ -171582,11 +180710,11 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.schedules.operations.list({ + * const res = await aiplatform.skills.operations.list({ * // The standard list filter. * filter: 'placeholder-value', * // The name of the operation's parent resource. - * name: 'schedules/my-schedule', + * name: 'skills/my-skill', * // The standard list page size. * pageSize: 'placeholder-value', * // The standard list page token. @@ -171617,29 +180745,29 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Schedules$Operations$List, + params: Params$Resource$Skills$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Schedules$Operations$List, + params?: Params$Resource$Skills$Operations$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Schedules$Operations$List, + params: Params$Resource$Skills$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Schedules$Operations$List, + params: Params$Resource$Skills$Operations$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Schedules$Operations$List, + params: Params$Resource$Skills$Operations$List, callback: BodyResponseCallback ): void; list( @@ -171647,7 +180775,7 @@ export namespace aiplatform_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Schedules$Operations$List + | Params$Resource$Skills$Operations$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -171665,12 +180793,12 @@ export namespace aiplatform_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Schedules$Operations$List; + {}) as Params$Resource$Skills$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Schedules$Operations$List; + params = {} as Params$Resource$Skills$Operations$List; options = {}; } @@ -171739,9 +180867,9 @@ export namespace aiplatform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await aiplatform.schedules.operations.wait({ + * const res = await aiplatform.skills.operations.wait({ * // The name of the operation resource to wait on. - * name: 'schedules/my-schedule/operations/my-operation', + * name: 'skills/my-skill/operations/my-operation', * // The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used. * timeout: 'placeholder-value', * }); @@ -171770,27 +180898,27 @@ export namespace aiplatform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ wait( - params: Params$Resource$Schedules$Operations$Wait, + params: Params$Resource$Skills$Operations$Wait, options: StreamMethodOptions ): Promise>; wait( - params?: Params$Resource$Schedules$Operations$Wait, + params?: Params$Resource$Skills$Operations$Wait, options?: MethodOptions ): Promise>; wait( - params: Params$Resource$Schedules$Operations$Wait, + params: Params$Resource$Skills$Operations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Schedules$Operations$Wait, + params: Params$Resource$Skills$Operations$Wait, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; wait( - params: Params$Resource$Schedules$Operations$Wait, + params: Params$Resource$Skills$Operations$Wait, callback: BodyResponseCallback ): void; wait( @@ -171798,7 +180926,7 @@ export namespace aiplatform_v1 { ): void; wait( paramsOrCallback?: - | Params$Resource$Schedules$Operations$Wait + | Params$Resource$Skills$Operations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -171814,12 +180942,12 @@ export namespace aiplatform_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Schedules$Operations$Wait; + {}) as Params$Resource$Skills$Operations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Schedules$Operations$Wait; + params = {} as Params$Resource$Skills$Operations$Wait; options = {}; } @@ -171854,25 +180982,25 @@ export namespace aiplatform_v1 { } } - export interface Params$Resource$Schedules$Operations$Cancel extends StandardParameters { + export interface Params$Resource$Skills$Operations$Cancel extends StandardParameters { /** * The name of the operation resource to be cancelled. */ name?: string; } - export interface Params$Resource$Schedules$Operations$Delete extends StandardParameters { + export interface Params$Resource$Skills$Operations$Delete extends StandardParameters { /** * The name of the operation resource to be deleted. */ name?: string; } - export interface Params$Resource$Schedules$Operations$Get extends StandardParameters { + export interface Params$Resource$Skills$Operations$Get extends StandardParameters { /** * The name of the operation resource. */ name?: string; } - export interface Params$Resource$Schedules$Operations$List extends StandardParameters { + export interface Params$Resource$Skills$Operations$List extends StandardParameters { /** * The standard list filter. */ @@ -171894,7 +181022,7 @@ export namespace aiplatform_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Schedules$Operations$Wait extends StandardParameters { + export interface Params$Resource$Skills$Operations$Wait extends StandardParameters { /** * The name of the operation resource to wait on. */ @@ -178960,6 +188088,7 @@ export namespace aiplatform_v1 { * // "groundednessInput": {}, * // "instance": {}, * // "location": "my_location", + * // "metricSources": [], * // "metrics": [], * // "metricxInput": {}, * // "pairwiseMetricInput": {}, @@ -179172,6 +188301,7 @@ export namespace aiplatform_v1 { * // "agentConfig": {}, * // "contents": [], * // "location": "my_location", + * // "metricResourceName": "my_metricResourceName", * // "predefinedRubricGenerationSpec": {}, * // "rubricGenerationSpec": {} * // } diff --git a/src/apis/alertcenter/v1beta1.ts b/src/apis/alertcenter/v1beta1.ts index caad3999c18..3dd9d9c847e 100644 --- a/src/apis/alertcenter/v1beta1.ts +++ b/src/apis/alertcenter/v1beta1.ts @@ -222,7 +222,12 @@ export namespace alertcenter_v1beta1 { /** * Metadata related to the action. */ - export interface Schema$ActionInfo {} + export interface Schema$ActionInfo { + /** + * Google Cloud Storage location of the content that violated the rule. This field has format: "/" + */ + evidenceLockerFilePath?: string | null; + } /** * Alerts from Google Workspace Security Center rules service configured by an admin. */ @@ -549,6 +554,19 @@ export namespace alertcenter_v1beta1 { */ successAlertIds?: string[] | null; } + /** + * Alerts for client-side encryption outages. + */ + export interface Schema$ClientSideEncryptionServiceUnavailable { + /** + * Identity providers impacted by an outage or misconfiguration. + */ + idpError?: Schema$IdentityProviderError[]; + /** + * External key services impacted by an outage or misconfiguration. + */ + keyServiceError?: Schema$KeyServiceError[]; + } /** * A reference to a Cloud Pubsub topic. To register for notifications, the owner of the topic must grant `alerts-api-push-notifications@system.gserviceaccount.com` the `projects.topics.publish` permission. */ @@ -706,6 +724,27 @@ export namespace alertcenter_v1beta1 { */ takeoutRequestId?: string | null; } + /** + * Alerts for when a user is restricted from syncing content from clients such as Drive for Desktop. + */ + export interface Schema$DriveSyncStateChanged { + /** + * Email of the user affected. + */ + email?: string | null; + /** + * Time at which sync was paused. + */ + syncPauseStartTime?: string | null; + /** + * The current sync state. + */ + syncState?: string | null; + /** + * The reason for the sync state change. + */ + syncStateChangeReason?: 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); \} */ @@ -814,6 +853,44 @@ export namespace alertcenter_v1beta1 { */ title?: string | null; } + /** + * Error related to an identity provider. + */ + export interface Schema$IdentityProviderError { + /** + * Authorization base url of the identity provider. + */ + authorizationBaseUrl?: string | null; + /** + * Number of similar errors encountered. + */ + errorCount?: string | null; + /** + * Info on the identity provider error. + */ + errorInfo?: string | null; + } + /** + * Error related to an external key service. + */ + export interface Schema$KeyServiceError { + /** + * Number of similar errors encountered. + */ + errorCount?: string | null; + /** + * Info on the key service error. + */ + errorInfo?: string | null; + /** + * HTTP response status code from the key service. + */ + httpResponseCode?: string | null; + /** + * Url of the external key service. + */ + keyServiceUrl?: string | null; + } /** * Response message for an alert feedback listing request. */ diff --git a/src/apis/alloydb/v1.ts b/src/apis/alloydb/v1.ts index a9b07a3953c..db2c80fade1 100644 --- a/src/apis/alloydb/v1.ts +++ b/src/apis/alloydb/v1.ts @@ -1332,6 +1332,10 @@ export namespace alloydb_v1 { * Output only. The private IP address of the VM e.g. "10.57.0.34". */ ip?: string | null; + /** + * Output only. Indicates whether the node set up to be configured as a hot standby. + */ + isHotStandby?: boolean | null; /** * Output only. 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. */ @@ -2049,7 +2053,7 @@ export namespace alloydb_v1 { uniqueId?: string | null; } /** - * Common model for database resource instance metadata. Next ID: 31 + * Common model for database resource instance metadata. Next ID: 32 */ export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata { /** @@ -2120,6 +2124,10 @@ export namespace alloydb_v1 { * Optional. Maintenance info for the resource. */ maintenanceInfo?: Schema$StorageDatabasecenterPartnerapiV1mainResourceMaintenanceInfo; + /** + * Optional. The modes of the database resource. + */ + modes?: string[] | null; /** * Identifier for this resource's immediate parent/primary resource if the current resource is a replica or derived form of another Database resource. Else it would be NULL. REQUIRED if the immediate parent exists when first time resource is getting ingested, otherwise optional. */ @@ -2203,9 +2211,13 @@ export namespace alloydb_v1 { signalType?: string | null; } /** - * Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 7 + * Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 10 */ export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceSignalData { + /** + * Deprecated: Use signal_metadata_list instead. + */ + backupRun?: Schema$StorageDatabasecenterPartnerapiV1mainBackupRun; /** * Required. Full Resource name of the source resource. */ @@ -2214,14 +2226,22 @@ export namespace alloydb_v1 { * Required. Last time signal was refreshed */ lastRefreshTime?: string | null; + /** + * Resource location. + */ + location?: string | null; /** * Database resource id. */ resourceId?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId; /** - * Signal data for boolean signals. + * Deprecated: Use signal_metadata_list instead. */ signalBoolValue?: boolean | null; + /** + * This will support array of OneOf signal metadata information for a given signal type. + */ + signalMetadataList?: Schema$StorageDatabasecenterPartnerapiV1mainSignalMetadata[]; /** * Required. Output only. Signal state of the signal */ @@ -2437,6 +2457,19 @@ export namespace alloydb_v1 { */ timestampBasedRetentionTime?: string | null; } + /** + * SignalMetadata contains one of the signal metadata proto messages associated with a SignalType. This proto will be mapped to SignalMetadata message in storage.proto. Next ID: 3 + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainSignalMetadata { + /** + * Signal data for backup runs. + */ + backupRun?: Schema$StorageDatabasecenterPartnerapiV1mainBackupRun; + /** + * Signal data for boolean signals. + */ + signalBoolValue?: boolean | null; + } /** * Message type for storing tags. Tags provide a way to create annotations for resources, and in some cases conditionally allow or deny policies based on whether a resource has a specific tag. */ @@ -2889,7 +2922,7 @@ export namespace alloydb_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/alloydb/v1alpha.ts b/src/apis/alloydb/v1alpha.ts index 2c43d408b82..3d633ddf113 100644 --- a/src/apis/alloydb/v1alpha.ts +++ b/src/apis/alloydb/v1alpha.ts @@ -801,6 +801,19 @@ export namespace alloydb_v1alpha { */ time?: Schema$GoogleTypeTimeOfDay; } + /** + * The DNS config for the endpoint, containing the DNS record name, type and targets. + */ + export interface Schema$DNSConfig { + /** + * The fully qualified domain name (FQDN) of the DNS record, e.g., ".location.alloydb-psa.goog". + */ + dnsName?: string | null; + /** + * The type of the DNS record, e.g., "A", "AAAA", "CNAME". + */ + dnsRecordType?: 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); \} */ @@ -827,6 +840,67 @@ export namespace alloydb_v1alpha { */ kmsKeyVersions?: string[] | null; } + /** + * Endpoint resource. + */ + export interface Schema$Endpoint { + /** + * 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; + /** + * Output only. Create time stamp + */ + createTime?: string | null; + /** + * Output only. Delete time stamp + */ + deleteTime?: string | null; + /** + * User-settable and human-readable display name for the Endpoint. + */ + displayName?: string | null; + /** + * Output only. The DNS config for the endpoint. Each endpoint is associated with a specific DNS name and the DNS type. The DNS targets are the IP addresses of the target instances. The dns_type is the type of the DNS record, eg. Type "A" or Type "CNAME". This field is not configurable by the user, and it is updated when user specifies the target instances. + */ + dnsConfig?: Schema$DNSConfig; + /** + * Output only. The effective target instances that the endpoint is associated with. This is a list of target instance names, e.g. projects/{project_number\}/locations/{location\}/clusters/{cluster_id\}/instances/{instance_id\} For write endpoint, there is only one effective target instance which has to be a primary instance. Effective target instances are only different from target instances after a switchover or cross-region failover operation. Otherwise, effective_target_instances are the same as target_instances. Note that after a cross-region failover operation, the effective_target_instances can be stale until the operation to update the endpoint is complete. + */ + effectiveTargetInstances?: string[] | null; + /** + * The type of the endpoint, either write or read. + */ + endpointType?: string | null; + /** + * For Resource freshness validation (https://google.aip.dev/154) + */ + etag?: string | null; + /** + * Output only. Identifier. The name of the endpoint resource with the format: * projects/{project\}/locations/{region\}/endpoints/{endpoint_id\} where the endpoint ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the endpoint 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). Set to true if the current state of Endpoint does not match the user's intended state, and the service is actively updating the Endpoint to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance. + */ + reconciling?: boolean | null; + /** + * Output only. The state of the endpoint. + */ + state?: string | null; + /** + * The names of the target instances for the endpoint, should be of format projects/{project\}/locations/{region\}/clusters/{cluster\}/instances/{instance\}. For write endpoint, there is only one target instance which has to be a primary instance. For read endpoint, there can be multiple target instances which can be read or secondary instances. After a cross-region failover or switchover operation, the endpoint will be associated with a different target instance. This change will be reflected in the effective_target_instances field. + */ + targetInstances?: 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; + } /** * Export cluster request. */ @@ -1253,6 +1327,23 @@ export namespace alloydb_v1alpha { */ unreachable?: string[] | null; } + /** + * Message for response to listing Endpoints + */ + export interface Schema$ListEndpointsResponse { + /** + * The list of Endpoints + */ + endpoints?: Schema$Endpoint[]; + /** + * 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 */ @@ -1407,6 +1498,10 @@ export namespace alloydb_v1alpha { * Output only. The private IP address of the VM e.g. "10.57.0.34". */ ip?: string | null; + /** + * Output only. Indicates whether the node set up to be configured as a hot standby. + */ + isHotStandby?: boolean | null; /** * Output only. 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. */ @@ -1448,6 +1543,10 @@ export namespace alloydb_v1alpha { * Track actively running queries on the instance. If not set, this flag is "off" by default. */ trackActiveQueries?: boolean | null; + /** + * Indicates whether to track active query plans for an instance. If not set, the default value is "off". Can only be enabled if track_active_queries is enabled. + */ + trackActiveQueryPlan?: boolean | null; /** * Track client address for an instance. If not set, default value is "off". */ @@ -1561,6 +1660,10 @@ export namespace alloydb_v1alpha { * 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. If set, the promote operation will attempt to recreate the original primary cluster as a secondary cluster when it comes back online. Otherwise, the promoted cluster will be a standalone cluster. Currently only supported when there is a single secondary cluster. + */ + failover?: boolean | null; /** * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server ignores the request if it has already been completed. The server guarantees 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). */ @@ -2190,7 +2293,7 @@ export namespace alloydb_v1alpha { uniqueId?: string | null; } /** - * Common model for database resource instance metadata. Next ID: 31 + * Common model for database resource instance metadata. Next ID: 32 */ export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata { /** @@ -2261,6 +2364,10 @@ export namespace alloydb_v1alpha { * Optional. Maintenance info for the resource. */ maintenanceInfo?: Schema$StorageDatabasecenterPartnerapiV1mainResourceMaintenanceInfo; + /** + * Optional. The modes of the database resource. + */ + modes?: string[] | null; /** * Identifier for this resource's immediate parent/primary resource if the current resource is a replica or derived form of another Database resource. Else it would be NULL. REQUIRED if the immediate parent exists when first time resource is getting ingested, otherwise optional. */ @@ -2344,9 +2451,13 @@ export namespace alloydb_v1alpha { signalType?: string | null; } /** - * Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 7 + * Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 10 */ export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceSignalData { + /** + * Deprecated: Use signal_metadata_list instead. + */ + backupRun?: Schema$StorageDatabasecenterPartnerapiV1mainBackupRun; /** * Required. Full Resource name of the source resource. */ @@ -2355,14 +2466,22 @@ export namespace alloydb_v1alpha { * Required. Last time signal was refreshed */ lastRefreshTime?: string | null; + /** + * Required. Resource location. + */ + location?: string | null; /** * Database resource id. */ resourceId?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId; /** - * Signal data for boolean signals. + * Deprecated: Use signal_metadata_list instead. */ signalBoolValue?: boolean | null; + /** + * This will support array of OneOf signal metadata information for a given signal type. + */ + signalMetadataList?: Schema$StorageDatabasecenterPartnerapiV1mainSignalMetadata[]; /** * Required. Output only. Signal state of the signal */ @@ -2578,6 +2697,19 @@ export namespace alloydb_v1alpha { */ timestampBasedRetentionTime?: string | null; } + /** + * SignalMetadata contains one of the signal metadata proto messages associated with a SignalType. This proto will be mapped to SignalMetadata message in storage.proto. Next ID: 3 + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainSignalMetadata { + /** + * Signal data for backup runs. + */ + backupRun?: Schema$StorageDatabasecenterPartnerapiV1mainBackupRun; + /** + * Signal data for boolean signals. + */ + signalBoolValue?: boolean | null; + } /** * Message type for storing tags. Tags provide a way to create annotations for resources, and in some cases conditionally allow or deny policies based on whether a resource has a specific tag. */ @@ -2883,12 +3015,14 @@ export namespace alloydb_v1alpha { context: APIRequestContext; backups: Resource$Projects$Locations$Backups; clusters: Resource$Projects$Locations$Clusters; + endpoints: Resource$Projects$Locations$Endpoints; 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.endpoints = new Resource$Projects$Locations$Endpoints(this.context); this.operations = new Resource$Projects$Locations$Operations( this.context ); @@ -3039,7 +3173,7 @@ export namespace alloydb_v1alpha { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3069,7 +3203,7 @@ export namespace alloydb_v1alpha { * * // Do the magic * const res = await alloydb.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3203,7 +3337,7 @@ export namespace alloydb_v1alpha { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -5560,6 +5694,7 @@ export namespace alloydb_v1alpha { * // request body parameters * // { * // "etag": "my_etag", + * // "failover": false, * // "requestId": "my_requestId", * // "validateOnly": false * // } @@ -9142,6 +9277,885 @@ export namespace alloydb_v1alpha { requestBody?: Schema$User; } + export class Resource$Projects$Locations$Endpoints { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new Endpoint in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/alloydb.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await alloydb.projects.locations.endpoints.create({ + * // Required. ID of the requesting object. + * endpointId: 'placeholder-value', + * // Required. The location of the new endpoint. For the required format, see the comment on the Endpoint.name field. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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: 'placeholder-value', + * // Optional. If set, the backend validates the request, but doesn't actually execute it. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "displayName": "my_displayName", + * // "dnsConfig": {}, + * // "effectiveTargetInstances": [], + * // "endpointType": "my_endpointType", + * // "etag": "my_etag", + * // "name": "my_name", + * // "reconciling": false, + * // "state": "my_state", + * // "targetInstances": [], + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Endpoints$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Endpoints$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Endpoints$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Endpoints$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Endpoints$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Endpoints$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}/endpoints').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Endpoint. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/alloydb.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await alloydb.projects.locations.endpoints.delete({ + * // Optional. The current etag of the Endpoint. If an etag is provided and does not match the current etag of the Endpoint, deletion will be blocked and an ABORTED error will be returned. + * etag: 'placeholder-value', + * // Required. The name of the resource. For the required format, see the comment on the Endpoint.name field. + * name: 'projects/my-project/locations/my-location/endpoints/my-endpoint', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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: 'placeholder-value', + * // Optional. If set, the backend validates the request, but doesn't actually execute it. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Endpoints$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Endpoints$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Endpoints$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Endpoints$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Endpoints$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Endpoints$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', + apiVersion: '', + }, + 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 Endpoint. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/alloydb.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await alloydb.projects.locations.endpoints.get({ + * // Required. The name of the resource. For the required format, see the comment on the Endpoint.name field. + * name: 'projects/my-project/locations/my-location/endpoints/my-endpoint', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "displayName": "my_displayName", + * // "dnsConfig": {}, + * // "effectiveTargetInstances": [], + * // "endpointType": "my_endpointType", + * // "etag": "my_etag", + * // "name": "my_name", + * // "reconciling": false, + * // "state": "my_state", + * // "targetInstances": [], + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Endpoints$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Endpoints$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Endpoints$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Endpoints$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Endpoints$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Endpoints$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', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Endpoints in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/alloydb.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await alloydb.projects.locations.endpoints.list({ + * // Optional. Filtering results. This field is currently not supported, its value will be ignored if passed. + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous `ListEndpoints` call. This should be provided to retrieve the subsequent page. This field is currently not supported, its value will be ignored if passed. + * pageToken: 'placeholder-value', + * // Required. The name of the parent resource. For the required format, see the comment on the Endpoint.name field. Additionally, you can perform an aggregated list operation by specifying a value with the following format: * projects/{project\}/locations/- + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "endpoints": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Endpoints$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Endpoints$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Endpoints$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Endpoints$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Endpoints$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Endpoints$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}/endpoints').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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 Endpoint. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/alloydb.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await alloydb.projects.locations.endpoints.patch({ + * // Optional. If set to true, update succeeds even if endpoint is not found. In that case, a new endpoint is created and `update_mask` is ignored. + * allowMissing: 'placeholder-value', + * // Output only. Identifier. The name of the endpoint resource with the format: * projects/{project\}/locations/{region\}/endpoints/{endpoint_id\} where the endpoint ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the endpoint resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + * name: 'projects/my-project/locations/my-location/endpoints/my-endpoint', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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: 'placeholder-value', + * // Optional. Field mask is used to specify the fields to be overwritten in the Endpoint 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: 'placeholder-value', + * // Optional. If set, the backend validates the request, but doesn't actually execute it. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "displayName": "my_displayName", + * // "dnsConfig": {}, + * // "effectiveTargetInstances": [], + * // "endpointType": "my_endpointType", + * // "etag": "my_etag", + * // "name": "my_name", + * // "reconciling": false, + * // "state": "my_state", + * // "targetInstances": [], + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Endpoints$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Endpoints$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Endpoints$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Endpoints$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Endpoints$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Endpoints$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', + apiVersion: '', + }, + 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$Endpoints$Create extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + endpointId?: string; + /** + * Required. The location of the new endpoint. For the required format, see the comment on the Endpoint.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 ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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$Endpoint; + } + export interface Params$Resource$Projects$Locations$Endpoints$Delete extends StandardParameters { + /** + * Optional. The current etag of the Endpoint. If an etag is provided and does not match the current etag of the Endpoint, 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 Endpoint.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 ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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$Endpoints$Get extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Endpoint.name field. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Endpoints$List extends StandardParameters { + /** + * Optional. Filtering results. This field is currently not supported, its value will be ignored if passed. + */ + 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 page token, received from a previous `ListEndpoints` call. This should be provided to retrieve the subsequent page. This field is currently not supported, its value will be ignored if passed. + */ + pageToken?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Endpoint.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$Endpoints$Patch extends StandardParameters { + /** + * Optional. If set to true, update succeeds even if endpoint is not found. In that case, a new endpoint is created and `update_mask` is ignored. + */ + allowMissing?: boolean; + /** + * Output only. Identifier. The name of the endpoint resource with the format: * projects/{project\}/locations/{region\}/endpoints/{endpoint_id\} where the endpoint ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the endpoint 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 ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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 Endpoint 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$Endpoint; + } + export class Resource$Projects$Locations$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/alloydb/v1beta.ts b/src/apis/alloydb/v1beta.ts index bcb2e4f655d..ed197395a32 100644 --- a/src/apis/alloydb/v1beta.ts +++ b/src/apis/alloydb/v1beta.ts @@ -789,6 +789,19 @@ export namespace alloydb_v1beta { */ time?: Schema$GoogleTypeTimeOfDay; } + /** + * The DNS config for the endpoint, containing the DNS record name, type and targets. + */ + export interface Schema$DNSConfig { + /** + * The fully qualified domain name (FQDN) of the DNS record, e.g., ".location.alloydb-psa.goog". + */ + dnsName?: string | null; + /** + * The type of the DNS record, e.g., "A", "AAAA", "CNAME". + */ + dnsRecordType?: 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); \} */ @@ -815,6 +828,67 @@ export namespace alloydb_v1beta { */ kmsKeyVersions?: string[] | null; } + /** + * Endpoint resource. + */ + export interface Schema$Endpoint { + /** + * 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; + /** + * Output only. Create time stamp + */ + createTime?: string | null; + /** + * Output only. Delete time stamp + */ + deleteTime?: string | null; + /** + * User-settable and human-readable display name for the Endpoint. + */ + displayName?: string | null; + /** + * Output only. The DNS config for the endpoint. Each endpoint is associated with a specific DNS name and the DNS type. The DNS targets are the IP addresses of the target instances. The dns_type is the type of the DNS record, eg. Type "A" or Type "CNAME". This field is not configurable by the user, and it is updated when user specifies the target instances. + */ + dnsConfig?: Schema$DNSConfig; + /** + * Output only. The effective target instances that the endpoint is associated with. This is a list of target instance names, e.g. projects/{project_number\}/locations/{location\}/clusters/{cluster_id\}/instances/{instance_id\} For write endpoint, there is only one effective target instance which has to be a primary instance. Effective target instances are only different from target instances after a switchover or cross-region failover operation. Otherwise, effective_target_instances are the same as target_instances. Note that after a cross-region failover operation, the effective_target_instances can be stale until the operation to update the endpoint is complete. + */ + effectiveTargetInstances?: string[] | null; + /** + * The type of the endpoint, either write or read. + */ + endpointType?: string | null; + /** + * For Resource freshness validation (https://google.aip.dev/154) + */ + etag?: string | null; + /** + * Output only. Identifier. The name of the endpoint resource with the format: * projects/{project\}/locations/{region\}/endpoints/{endpoint_id\} where the endpoint ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the endpoint 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). Set to true if the current state of Endpoint does not match the user's intended state, and the service is actively updating the Endpoint to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance. + */ + reconciling?: boolean | null; + /** + * Output only. The state of the endpoint. + */ + state?: string | null; + /** + * The names of the target instances for the endpoint, should be of format projects/{project\}/locations/{region\}/clusters/{cluster\}/instances/{instance\}. For write endpoint, there is only one target instance which has to be a primary instance. For read endpoint, there can be multiple target instances which can be read or secondary instances. After a cross-region failover or switchover operation, the endpoint will be associated with a different target instance. This change will be reflected in the effective_target_instances field. + */ + targetInstances?: 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; + } /** * Export cluster request. */ @@ -1237,6 +1311,23 @@ export namespace alloydb_v1beta { */ unreachable?: string[] | null; } + /** + * Message for response to listing Endpoints + */ + export interface Schema$ListEndpointsResponse { + /** + * The list of Endpoints + */ + endpoints?: Schema$Endpoint[]; + /** + * 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 */ @@ -1391,6 +1482,10 @@ export namespace alloydb_v1beta { * Output only. The private IP address of the VM e.g. "10.57.0.34". */ ip?: string | null; + /** + * Output only. Indicates whether the node set up to be configured as a hot standby. + */ + isHotStandby?: boolean | null; /** * Output only. 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. */ @@ -1432,6 +1527,10 @@ export namespace alloydb_v1beta { * Track actively running queries on the instance. If not set, this flag is "off" by default. */ trackActiveQueries?: boolean | null; + /** + * Indicates whether to track active query plans for an instance. If not set, the default value is "off". Can only be enabled if track_active_queries is enabled. + */ + trackActiveQueryPlan?: boolean | null; /** * Track client address for an instance. If not set, default value is "off". */ @@ -1545,6 +1644,10 @@ export namespace alloydb_v1beta { * 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. If set, the promote operation will attempt to recreate the original primary cluster as a secondary cluster when it comes back online. Otherwise, the promoted cluster will be a standalone cluster. Currently only supported when there is a single secondary cluster. + */ + failover?: boolean | null; /** * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server ignores the request if it has already been completed. The server guarantees 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). */ @@ -2174,7 +2277,7 @@ export namespace alloydb_v1beta { uniqueId?: string | null; } /** - * Common model for database resource instance metadata. Next ID: 31 + * Common model for database resource instance metadata. Next ID: 32 */ export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata { /** @@ -2245,6 +2348,10 @@ export namespace alloydb_v1beta { * Optional. Maintenance info for the resource. */ maintenanceInfo?: Schema$StorageDatabasecenterPartnerapiV1mainResourceMaintenanceInfo; + /** + * Optional. The modes of the database resource. + */ + modes?: string[] | null; /** * Identifier for this resource's immediate parent/primary resource if the current resource is a replica or derived form of another Database resource. Else it would be NULL. REQUIRED if the immediate parent exists when first time resource is getting ingested, otherwise optional. */ @@ -2328,9 +2435,13 @@ export namespace alloydb_v1beta { signalType?: string | null; } /** - * Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 7 + * Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 10 */ export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceSignalData { + /** + * Deprecated: Use signal_metadata_list instead. + */ + backupRun?: Schema$StorageDatabasecenterPartnerapiV1mainBackupRun; /** * Required. Full Resource name of the source resource. */ @@ -2339,14 +2450,22 @@ export namespace alloydb_v1beta { * Required. Last time signal was refreshed */ lastRefreshTime?: string | null; + /** + * Required. Resource location. + */ + location?: string | null; /** * Database resource id. */ resourceId?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId; /** - * Signal data for boolean signals. + * Deprecated: Use signal_metadata_list instead. */ signalBoolValue?: boolean | null; + /** + * This will support array of OneOf signal metadata information for a given signal type. + */ + signalMetadataList?: Schema$StorageDatabasecenterPartnerapiV1mainSignalMetadata[]; /** * Required. Output only. Signal state of the signal */ @@ -2562,6 +2681,19 @@ export namespace alloydb_v1beta { */ timestampBasedRetentionTime?: string | null; } + /** + * SignalMetadata contains one of the signal metadata proto messages associated with a SignalType. This proto will be mapped to SignalMetadata message in storage.proto. Next ID: 3 + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainSignalMetadata { + /** + * Signal data for backup runs. + */ + backupRun?: Schema$StorageDatabasecenterPartnerapiV1mainBackupRun; + /** + * Signal data for boolean signals. + */ + signalBoolValue?: boolean | null; + } /** * Message type for storing tags. Tags provide a way to create annotations for resources, and in some cases conditionally allow or deny policies based on whether a resource has a specific tag. */ @@ -2867,12 +2999,14 @@ export namespace alloydb_v1beta { context: APIRequestContext; backups: Resource$Projects$Locations$Backups; clusters: Resource$Projects$Locations$Clusters; + endpoints: Resource$Projects$Locations$Endpoints; 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.endpoints = new Resource$Projects$Locations$Endpoints(this.context); this.operations = new Resource$Projects$Locations$Operations( this.context ); @@ -3023,7 +3157,7 @@ export namespace alloydb_v1beta { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3053,7 +3187,7 @@ export namespace alloydb_v1beta { * * // Do the magic * const res = await alloydb.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3187,7 +3321,7 @@ export namespace alloydb_v1beta { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -5537,6 +5671,7 @@ export namespace alloydb_v1beta { * // request body parameters * // { * // "etag": "my_etag", + * // "failover": false, * // "requestId": "my_requestId", * // "validateOnly": false * // } @@ -9115,6 +9250,885 @@ export namespace alloydb_v1beta { requestBody?: Schema$User; } + export class Resource$Projects$Locations$Endpoints { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new Endpoint in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/alloydb.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await alloydb.projects.locations.endpoints.create({ + * // Required. ID of the requesting object. + * endpointId: 'placeholder-value', + * // Required. The location of the new endpoint. For the required format, see the comment on the Endpoint.name field. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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: 'placeholder-value', + * // Optional. If set, the backend validates the request, but doesn't actually execute it. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "displayName": "my_displayName", + * // "dnsConfig": {}, + * // "effectiveTargetInstances": [], + * // "endpointType": "my_endpointType", + * // "etag": "my_etag", + * // "name": "my_name", + * // "reconciling": false, + * // "state": "my_state", + * // "targetInstances": [], + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Endpoints$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Endpoints$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Endpoints$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Endpoints$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Endpoints$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Endpoints$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}/endpoints').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Endpoint. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/alloydb.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await alloydb.projects.locations.endpoints.delete({ + * // Optional. The current etag of the Endpoint. If an etag is provided and does not match the current etag of the Endpoint, deletion will be blocked and an ABORTED error will be returned. + * etag: 'placeholder-value', + * // Required. The name of the resource. For the required format, see the comment on the Endpoint.name field. + * name: 'projects/my-project/locations/my-location/endpoints/my-endpoint', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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: 'placeholder-value', + * // Optional. If set, the backend validates the request, but doesn't actually execute it. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Endpoints$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Endpoints$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Endpoints$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Endpoints$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Endpoints$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Endpoints$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', + apiVersion: '', + }, + 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 Endpoint. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/alloydb.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await alloydb.projects.locations.endpoints.get({ + * // Required. The name of the resource. For the required format, see the comment on the Endpoint.name field. + * name: 'projects/my-project/locations/my-location/endpoints/my-endpoint', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "displayName": "my_displayName", + * // "dnsConfig": {}, + * // "effectiveTargetInstances": [], + * // "endpointType": "my_endpointType", + * // "etag": "my_etag", + * // "name": "my_name", + * // "reconciling": false, + * // "state": "my_state", + * // "targetInstances": [], + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Endpoints$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Endpoints$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Endpoints$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Endpoints$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Endpoints$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Endpoints$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', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Endpoints in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/alloydb.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await alloydb.projects.locations.endpoints.list({ + * // Optional. Filtering results. This field is currently not supported, its value will be ignored if passed. + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous `ListEndpoints` call. This should be provided to retrieve the subsequent page. This field is currently not supported, its value will be ignored if passed. + * pageToken: 'placeholder-value', + * // Required. The name of the parent resource. For the required format, see the comment on the Endpoint.name field. Additionally, you can perform an aggregated list operation by specifying a value with the following format: * projects/{project\}/locations/- + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "endpoints": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Endpoints$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Endpoints$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Endpoints$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Endpoints$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Endpoints$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Endpoints$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}/endpoints').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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 Endpoint. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/alloydb.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await alloydb.projects.locations.endpoints.patch({ + * // Optional. If set to true, update succeeds even if endpoint is not found. In that case, a new endpoint is created and `update_mask` is ignored. + * allowMissing: 'placeholder-value', + * // Output only. Identifier. The name of the endpoint resource with the format: * projects/{project\}/locations/{region\}/endpoints/{endpoint_id\} where the endpoint ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the endpoint resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + * name: 'projects/my-project/locations/my-location/endpoints/my-endpoint', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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: 'placeholder-value', + * // Optional. Field mask is used to specify the fields to be overwritten in the Endpoint 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: 'placeholder-value', + * // Optional. If set, the backend validates the request, but doesn't actually execute it. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "displayName": "my_displayName", + * // "dnsConfig": {}, + * // "effectiveTargetInstances": [], + * // "endpointType": "my_endpointType", + * // "etag": "my_etag", + * // "name": "my_name", + * // "reconciling": false, + * // "state": "my_state", + * // "targetInstances": [], + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Endpoints$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Endpoints$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Endpoints$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Endpoints$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Endpoints$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Endpoints$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Endpoints$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Endpoints$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', + apiVersion: '', + }, + 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$Endpoints$Create extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + endpointId?: string; + /** + * Required. The location of the new endpoint. For the required format, see the comment on the Endpoint.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 ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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$Endpoint; + } + export interface Params$Resource$Projects$Locations$Endpoints$Delete extends StandardParameters { + /** + * Optional. The current etag of the Endpoint. If an etag is provided and does not match the current etag of the Endpoint, 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 Endpoint.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 ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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$Endpoints$Get extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Endpoint.name field. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Endpoints$List extends StandardParameters { + /** + * Optional. Filtering results. This field is currently not supported, its value will be ignored if passed. + */ + 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 page token, received from a previous `ListEndpoints` call. This should be provided to retrieve the subsequent page. This field is currently not supported, its value will be ignored if passed. + */ + pageToken?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Endpoint.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$Endpoints$Patch extends StandardParameters { + /** + * Optional. If set to true, update succeeds even if endpoint is not found. In that case, a new endpoint is created and `update_mask` is ignored. + */ + allowMissing?: boolean; + /** + * Output only. Identifier. The name of the endpoint resource with the format: * projects/{project\}/locations/{region\}/endpoints/{endpoint_id\} where the endpoint ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the endpoint 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 ignores the request if it has already been completed. The server guarantees 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 the original operation with the same request ID was received, and if so, ignores 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 Endpoint 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$Endpoint; + } + export class Resource$Projects$Locations$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/analyticsadmin/v1alpha.ts b/src/apis/analyticsadmin/v1alpha.ts index fbc01b7ac64..4f4fc9569f2 100644 --- a/src/apis/analyticsadmin/v1alpha.ts +++ b/src/apis/analyticsadmin/v1alpha.ts @@ -434,7 +434,7 @@ export namespace analyticsadmin_v1alpha { */ gmpOrganization?: string | null; /** - * Output only. Resource name of this account. Format: accounts/{account\} Example: "accounts/100" + * Identifier. Resource name of this account. Format: accounts/{account\} Example: "accounts/100" */ name?: string | null; /** @@ -459,7 +459,7 @@ export namespace analyticsadmin_v1alpha { */ displayName?: string | null; /** - * Resource name for this account summary. Format: accountSummaries/{account_id\} Example: "accountSummaries/1000" + * Identifier. Resource name for this account summary. Format: accountSummaries/{account_id\} Example: "accountSummaries/1000" */ name?: string | null; /** @@ -942,7 +942,7 @@ export namespace analyticsadmin_v1alpha { */ metricUnit?: string | null; /** - * Output only. Resource name for this CalculatedMetric. Format: 'properties/{property_id\}/calculatedMetrics/{calculated_metric_id\}' + * Identifier. Resource name for this CalculatedMetric. Format: 'properties/{property_id\}/calculatedMetrics/{calculated_metric_id\}' */ name?: string | null; /** @@ -1095,6 +1095,10 @@ export namespace analyticsadmin_v1alpha { * A snapshot of a SubpropertySyncConfig resource in change history. */ subpropertySyncConfig?: Schema$GoogleAnalyticsAdminV1alphaSubpropertySyncConfig; + /** + * A snapshot of a UserProvidedDataSettings resource in change history. + */ + userProvidedDataSettings?: Schema$GoogleAnalyticsAdminV1alphaUserProvidedDataSettings; } /** * A set of changes within a Google Analytics account or its child properties that resulted from the same cause. Common causes would be updates made in the Google Analytics UI, changes from customer support, or automatic Google Analytics system changes. @@ -1252,7 +1256,7 @@ export namespace analyticsadmin_v1alpha { */ eventName?: string | null; /** - * Output only. Resource name of this conversion event. Format: properties/{property\}/conversionEvents/{conversion_event\} + * Identifier. Resource name of this conversion event. Format: properties/{property\}/conversionEvents/{conversion_event\} */ name?: string | null; } @@ -1350,7 +1354,7 @@ export namespace analyticsadmin_v1alpha { */ displayName?: string | null; /** - * Output only. Resource name for this CustomDimension resource. Format: properties/{property\}/customDimensions/{customDimension\} + * Identifier. Resource name for this CustomDimension resource. Format: properties/{property\}/customDimensions/{customDimension\} */ name?: string | null; /** @@ -1379,7 +1383,7 @@ export namespace analyticsadmin_v1alpha { */ measurementUnit?: string | null; /** - * Output only. Resource name for this CustomMetric resource. Format: properties/{property\}/customMetrics/{customMetric\} + * Identifier. Resource name for this CustomMetric resource. Format: properties/{property\}/customMetrics/{customMetric\} */ name?: string | null; /** @@ -1425,7 +1429,7 @@ export namespace analyticsadmin_v1alpha { */ eventDataRetention?: string | null; /** - * Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property\}/dataRetentionSettings + * Identifier. Resource name for this DataRetentionSetting resource. Format: properties/{property\}/dataRetentionSettings */ name?: string | null; /** @@ -1442,7 +1446,7 @@ export namespace analyticsadmin_v1alpha { */ export interface Schema$GoogleAnalyticsAdminV1alphaDataSharingSettings { /** - * Output only. Resource name. Format: accounts/{account\}/dataSharingSettings Example: "accounts/1000/dataSharingSettings" + * Identifier. Resource name. Format: accounts/{account\}/dataSharingSettings Example: "accounts/1000/dataSharingSettings" */ name?: string | null; /** @@ -1487,7 +1491,7 @@ export namespace analyticsadmin_v1alpha { */ iosAppStreamData?: Schema$GoogleAnalyticsAdminV1alphaDataStreamIosAppStreamData; /** - * Output only. Resource name of this Data Stream. Format: properties/{property_id\}/dataStreams/{stream_id\} Example: "properties/1000/dataStreams/2000" + * Identifier. Resource name of this Data Stream. Format: properties/{property_id\}/dataStreams/{stream_id\} Example: "properties/1000/dataStreams/2000" */ name?: string | null; /** @@ -1580,7 +1584,7 @@ export namespace analyticsadmin_v1alpha { */ costDataSharingEnabled?: boolean | null; /** - * Output only. The resource name for this DisplayVideo360AdvertiserLink resource. Format: properties/{propertyId\}/displayVideo360AdvertiserLinks/{linkId\} Note: linkId is not the Display & Video 360 Advertiser ID + * Identifier. The resource name for this DisplayVideo360AdvertiserLink resource. Format: properties/{propertyId\}/displayVideo360AdvertiserLinks/{linkId\} Note: linkId is not the Display & Video 360 Advertiser ID */ name?: string | null; } @@ -1613,7 +1617,7 @@ export namespace analyticsadmin_v1alpha { */ linkProposalStatusDetails?: Schema$GoogleAnalyticsAdminV1alphaLinkProposalStatusDetails; /** - * Output only. The resource name for this DisplayVideo360AdvertiserLinkProposal resource. Format: properties/{propertyId\}/displayVideo360AdvertiserLinkProposals/{proposalId\} Note: proposalId is not the Display & Video 360 Advertiser ID + * Identifier. The resource name for this DisplayVideo360AdvertiserLinkProposal resource. Format: properties/{propertyId\}/displayVideo360AdvertiserLinkProposals/{proposalId\} Note: proposalId is not the Display & Video 360 Advertiser ID */ name?: string | null; /** @@ -1860,7 +1864,7 @@ export namespace analyticsadmin_v1alpha { */ createTime?: string | null; /** - * Output only. Example format: properties/1234/firebaseLinks/5678 + * Identifier. Example format: properties/1234/firebaseLinks/5678 */ name?: string | null; /** @@ -1873,7 +1877,7 @@ export namespace analyticsadmin_v1alpha { */ export interface Schema$GoogleAnalyticsAdminV1alphaGlobalSiteTag { /** - * Output only. Resource name for this GlobalSiteTag resource. Format: properties/{property_id\}/dataStreams/{stream_id\}/globalSiteTag Example: "properties/123/dataStreams/456/globalSiteTag" + * Identifier. Resource name for this GlobalSiteTag resource. Format: properties/{property_id\}/dataStreams/{stream_id\}/globalSiteTag Example: "properties/123/dataStreams/456/globalSiteTag" */ name?: string | null; /** @@ -1906,7 +1910,7 @@ export namespace analyticsadmin_v1alpha { */ customerId?: string | null; /** - * Output only. Format: properties/{propertyId\}/googleAdsLinks/{googleAdsLinkId\} Note: googleAdsLinkId is not the Google Ads customer ID. + * Identifier. Format: properties/{propertyId\}/googleAdsLinks/{googleAdsLinkId\} Note: googleAdsLinkId is not the Google Ads customer ID. */ name?: string | null; /** @@ -2401,7 +2405,7 @@ export namespace analyticsadmin_v1alpha { */ displayName?: string | null; /** - * Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets/{measurementProtocolSecret\} + * Identifier. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets/{measurementProtocolSecret\} */ name?: string | null; /** @@ -2481,7 +2485,7 @@ export namespace analyticsadmin_v1alpha { */ industryCategory?: string | null; /** - * Output only. Resource name of this property. Format: properties/{property_id\} Example: "properties/1000" + * Identifier. Resource name of this property. Format: properties/{property_id\} Example: "properties/1000" */ name?: string | null; /** @@ -2762,7 +2766,7 @@ export namespace analyticsadmin_v1alpha { */ costDataSharingEnabled?: boolean | null; /** - * Output only. The resource name for this SearchAds360Link resource. Format: properties/{propertyId\}/searchAds360Links/{linkId\} Note: linkId is not the Search Ads 360 advertiser ID + * Identifier. The resource name for this SearchAds360Link resource. Format: properties/{propertyId\}/searchAds360Links/{linkId\} Note: linkId is not the Search Ads 360 advertiser ID */ name?: string | null; /** @@ -2829,7 +2833,7 @@ export namespace analyticsadmin_v1alpha { */ applyConversionValues?: boolean | null; /** - * Output only. Resource name of the schema. This will be child of ONLY an iOS stream, and there can be at most one such child under an iOS stream. Format: properties/{property\}/dataStreams/{dataStream\}/sKAdNetworkConversionValueSchema + * Identifier. Resource name of the schema. This will be child of ONLY an iOS stream, and there can be at most one such child under an iOS stream. Format: properties/{property\}/dataStreams/{dataStream\}/sKAdNetworkConversionValueSchema */ name?: string | null; /** @@ -2991,6 +2995,23 @@ export namespace analyticsadmin_v1alpha { */ accessBinding?: Schema$GoogleAnalyticsAdminV1alphaAccessBinding; } + /** + * Configuration for user-provided data collection. This is a singleton resource for a Google Analytics property. + */ + export interface Schema$GoogleAnalyticsAdminV1alphaUserProvidedDataSettings { + /** + * Optional. Whether this property allows a Google Tag to automatically collect user-provided data from your website. This setting only takes effect if `user_provided_data_collection_enabled` is also true. + */ + automaticallyDetectedDataCollectionEnabled?: boolean | null; + /** + * Identifier. Resource name of this setting. Format: properties/{property\}/userProvidedDataSettings Example: "properties/1000/userProvidedDataSettings" + */ + name?: string | null; + /** + * Optional. Whether this property accepts user-provided data sent to it. + */ + userProvidedDataCollectionEnabled?: boolean | 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); \} */ @@ -3493,9 +3514,9 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.accounts.list({ - * // The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Whether to include soft-deleted (ie: "trashed") Accounts in the results. Accounts can be inspected to determine whether they are deleted or not. * showDeleted: 'placeholder-value', @@ -3642,7 +3663,7 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.accounts.patch({ - * // Output only. Resource name of this account. Format: accounts/{account\} Example: "accounts/100" + * // Identifier. Resource name of this account. Format: accounts/{account\} Example: "accounts/100" * name: 'accounts/my-account', * // Required. The list of fields to be updated. Field names must be in snake case (for example, "field_to_update"). Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -4289,11 +4310,11 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Accounts$List extends StandardParameters { /** - * The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token. */ pageToken?: string; /** @@ -4303,7 +4324,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Accounts$Patch extends StandardParameters { /** - * Output only. Resource name of this account. Format: accounts/{account\} Example: "accounts/100" + * Identifier. Resource name of this account. Format: accounts/{account\} Example: "accounts/100" */ name?: string; /** @@ -5847,9 +5868,9 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.accountSummaries.list({ - * // The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token. * pageToken: 'placeholder-value', * }); * console.log(res.data); @@ -5970,11 +5991,11 @@ export namespace analyticsadmin_v1alpha { export interface Params$Resource$Accountsummaries$List extends StandardParameters { /** - * The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token. */ pageToken?: string; } @@ -7452,6 +7473,156 @@ export namespace analyticsadmin_v1alpha { } } + /** + * Looks up settings related to user-provided data for a property. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/analyticsadmin.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const analyticsadmin = google.analyticsadmin('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/analytics.edit', + * 'https://www.googleapis.com/auth/analytics.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await analyticsadmin.properties.getUserProvidedDataSettings({ + * // Required. The name of the user provided data settings to retrieve. Format: properties/{property\}/userProvidedDataSettings + * name: 'properties/my-propertie/userProvidedDataSettings', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "automaticallyDetectedDataCollectionEnabled": false, + * // "name": "my_name", + * // "userProvidedDataCollectionEnabled": false + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getUserProvidedDataSettings( + params: Params$Resource$Properties$Getuserprovideddatasettings, + options: StreamMethodOptions + ): Promise>; + getUserProvidedDataSettings( + params?: Params$Resource$Properties$Getuserprovideddatasettings, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + getUserProvidedDataSettings( + params: Params$Resource$Properties$Getuserprovideddatasettings, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getUserProvidedDataSettings( + params: Params$Resource$Properties$Getuserprovideddatasettings, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getUserProvidedDataSettings( + params: Params$Resource$Properties$Getuserprovideddatasettings, + callback: BodyResponseCallback + ): void; + getUserProvidedDataSettings( + callback: BodyResponseCallback + ): void; + getUserProvidedDataSettings( + paramsOrCallback?: + | Params$Resource$Properties$Getuserprovideddatasettings + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Properties$Getuserprovideddatasettings; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Properties$Getuserprovideddatasettings; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://analyticsadmin.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Returns child Properties under the specified parent Account. Properties will be excluded if the caller does not have access. Soft-deleted (ie: "trashed") properties are excluded by default. Returns an empty list if no relevant properties are found. * @example @@ -7488,9 +7659,9 @@ export namespace analyticsadmin_v1alpha { * const res = await analyticsadmin.properties.list({ * // Required. An expression for filtering the results of the request. Fields eligible for filtering are: `parent:`(The resource name of the parent account/property) or `ancestor:`(The resource name of the parent account) or `firebase_project:`(The id or number of the linked firebase project). Some examples of filters: ``` | Filter | Description | |-----------------------------|-------------------------------------------| | parent:accounts/123 | The account with account id: 123. | | parent:properties/123 | The property with property id: 123. | | ancestor:accounts/123 | The account with account id: 123. | | firebase_project:project-id | The firebase project with id: project-id. | | firebase_project:123 | The firebase project with number: 123. | ``` * filter: 'placeholder-value', - * // The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Whether to include soft-deleted (ie: "trashed") Properties in the results. Properties can be inspected to determine whether they are deleted or not. * showDeleted: 'placeholder-value', @@ -7640,7 +7811,7 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.patch({ - * // Output only. Resource name of this property. Format: properties/{property_id\} Example: "properties/1000" + * // Identifier. Resource name of this property. Format: properties/{property_id\} Example: "properties/1000" * name: 'properties/my-propertie', * // Required. The list of fields to be updated. Field names must be in snake case (e.g., "field_to_update"). Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -8470,7 +8641,7 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.updateDataRetentionSettings({ - * // Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property\}/dataRetentionSettings + * // Identifier. Resource name for this DataRetentionSetting resource. Format: properties/{property\}/dataRetentionSettings * name: 'properties/my-propertie/dataRetentionSettings', * // Required. The list of fields to be updated. Field names must be in snake case (e.g., "field_to_update"). Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -8819,17 +8990,23 @@ export namespace analyticsadmin_v1alpha { */ name?: string; } + export interface Params$Resource$Properties$Getuserprovideddatasettings extends StandardParameters { + /** + * Required. The name of the user provided data settings to retrieve. Format: properties/{property\}/userProvidedDataSettings + */ + name?: string; + } export interface Params$Resource$Properties$List extends StandardParameters { /** * Required. An expression for filtering the results of the request. Fields eligible for filtering are: `parent:`(The resource name of the parent account/property) or `ancestor:`(The resource name of the parent account) or `firebase_project:`(The id or number of the linked firebase project). Some examples of filters: ``` | Filter | Description | |-----------------------------|-------------------------------------------| | parent:accounts/123 | The account with account id: 123. | | parent:properties/123 | The property with property id: 123. | | ancestor:accounts/123 | The account with account id: 123. | | firebase_project:project-id | The firebase project with id: project-id. | | firebase_project:123 | The firebase project with number: 123. | ``` */ filter?: string; /** - * The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token. */ pageToken?: string; /** @@ -8839,7 +9016,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Patch extends StandardParameters { /** - * Output only. Resource name of this property. Format: properties/{property_id\} Example: "properties/1000" + * Identifier. Resource name of this property. Format: properties/{property_id\} Example: "properties/1000" */ name?: string; /** @@ -8897,7 +9074,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Updatedataretentionsettings extends StandardParameters { /** - * Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property\}/dataRetentionSettings + * Identifier. Resource name for this DataRetentionSetting resource. Format: properties/{property\}/dataRetentionSettings */ name?: string; /** @@ -13397,7 +13574,7 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.calculatedMetrics.patch({ - * // Output only. Resource name for this CalculatedMetric. Format: 'properties/{property_id\}/calculatedMetrics/{calculated_metric_id\}' + * // Identifier. Resource name for this CalculatedMetric. Format: 'properties/{property_id\}/calculatedMetrics/{calculated_metric_id\}' * name: 'properties/my-propertie/calculatedMetrics/my-calculatedMetric', * // Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -13579,7 +13756,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Calculatedmetrics$Patch extends StandardParameters { /** - * Output only. Resource name for this CalculatedMetric. Format: 'properties/{property_id\}/calculatedMetrics/{calculated_metric_id\}' + * Identifier. Resource name for this CalculatedMetric. Format: 'properties/{property_id\}/calculatedMetrics/{calculated_metric_id\}' */ name?: string; /** @@ -14921,9 +15098,9 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.conversionEvents.list({ - * // The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. The resource name of the parent property. Example: 'properties/123' * parent: 'properties/my-propertie', @@ -15074,7 +15251,7 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.conversionEvents.patch({ - * // Output only. Resource name of this conversion event. Format: properties/{property\}/conversionEvents/{conversion_event\} + * // Identifier. Resource name of this conversion event. Format: properties/{property\}/conversionEvents/{conversion_event\} * name: 'properties/my-propertie/conversionEvents/my-conversionEvent', * // Required. The list of fields to be updated. Field names must be in snake case (e.g., "field_to_update"). Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -15236,11 +15413,11 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Conversionevents$List extends StandardParameters { /** - * The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token. */ pageToken?: string; /** @@ -15250,7 +15427,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Conversionevents$Patch extends StandardParameters { /** - * Output only. Resource name of this conversion event. Format: properties/{property\}/conversionEvents/{conversion_event\} + * Identifier. Resource name of this conversion event. Format: properties/{property\}/conversionEvents/{conversion_event\} */ name?: string; /** @@ -15765,9 +15942,9 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.customDimensions.list({ - * // The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). + * // Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. Example format: properties/1234 * parent: 'properties/my-propertie', @@ -15918,7 +16095,7 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.customDimensions.patch({ - * // Output only. Resource name for this CustomDimension resource. Format: properties/{property\}/customDimensions/{customDimension\} + * // Identifier. Resource name for this CustomDimension resource. Format: properties/{property\}/customDimensions/{customDimension\} * name: 'properties/my-propertie/customDimensions/my-customDimension', * // Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -16083,11 +16260,11 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Customdimensions$List extends StandardParameters { /** - * The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). + * Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). */ pageSize?: number; /** - * A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token. */ pageToken?: string; /** @@ -16097,7 +16274,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Customdimensions$Patch extends StandardParameters { /** - * Output only. Resource name for this CustomDimension resource. Format: properties/{property\}/customDimensions/{customDimension\} + * Identifier. Resource name for this CustomDimension resource. Format: properties/{property\}/customDimensions/{customDimension\} */ name?: string; /** @@ -16768,7 +16945,7 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.customMetrics.patch({ - * // Output only. Resource name for this CustomMetric resource. Format: properties/{property\}/customMetrics/{customMetric\} + * // Identifier. Resource name for this CustomMetric resource. Format: properties/{property\}/customMetrics/{customMetric\} * name: 'properties/my-propertie/customMetrics/my-customMetric', * // Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -16949,7 +17126,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Custommetrics$Patch extends StandardParameters { /** - * Output only. Resource name for this CustomMetric resource. Format: properties/{property\}/customMetrics/{customMetric\} + * Identifier. Resource name for this CustomMetric resource. Format: properties/{property\}/customMetrics/{customMetric\} */ name?: string; /** @@ -18093,7 +18270,7 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.dataStreams.patch({ - * // Output only. Resource name of this Data Stream. Format: properties/{property_id\}/dataStreams/{stream_id\} Example: "properties/1000/dataStreams/2000" + * // Identifier. Resource name of this Data Stream. Format: properties/{property_id\}/dataStreams/{stream_id\} Example: "properties/1000/dataStreams/2000" * name: 'properties/my-propertie/dataStreams/my-dataStream', * // Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -18631,7 +18808,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Datastreams$Patch extends StandardParameters { /** - * Output only. Resource name of this Data Stream. Format: properties/{property_id\}/dataStreams/{stream_id\} Example: "properties/1000/dataStreams/2000" + * Identifier. Resource name of this Data Stream. Format: properties/{property_id\}/dataStreams/{stream_id\} Example: "properties/1000/dataStreams/2000" */ name?: string; /** @@ -21000,9 +21177,9 @@ export namespace analyticsadmin_v1alpha { * const res = * await analyticsadmin.properties.dataStreams.measurementProtocolSecrets.list( * { - * // The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum. + * // Optional. The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. The resource name of the parent stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets * parent: 'properties/my-propertie/dataStreams/my-dataStream', @@ -21156,7 +21333,7 @@ export namespace analyticsadmin_v1alpha { * const res = * await analyticsadmin.properties.dataStreams.measurementProtocolSecrets.patch( * { - * // Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets/{measurementProtocolSecret\} + * // Identifier. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets/{measurementProtocolSecret\} * name: 'properties/my-propertie/dataStreams/my-dataStream/measurementProtocolSecrets/my-measurementProtocolSecret', * // Required. The list of fields to be updated. Omitted fields will not be updated. * updateMask: 'placeholder-value', @@ -21312,11 +21489,11 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Datastreams$Measurementprotocolsecrets$List extends StandardParameters { /** - * The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum. + * Optional. The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum. */ pageSize?: number; /** - * A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token. */ pageToken?: string; /** @@ -21326,7 +21503,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Datastreams$Measurementprotocolsecrets$Patch extends StandardParameters { /** - * Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets/{measurementProtocolSecret\} + * Identifier. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets/{measurementProtocolSecret\} */ name?: string; /** @@ -21842,9 +22019,9 @@ export namespace analyticsadmin_v1alpha { * const res = * await analyticsadmin.properties.dataStreams.sKAdNetworkConversionValueSchema.list( * { - * // The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListSKAdNetworkConversionValueSchemas` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListSKAdNetworkConversionValueSchema` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListSKAdNetworkConversionValueSchemas` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListSKAdNetworkConversionValueSchema` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. The DataStream resource to list schemas for. Format: properties/{property_id\}/dataStreams/{dataStream\} Example: properties/1234/dataStreams/5678 * parent: 'properties/my-propertie/dataStreams/my-dataStream', @@ -21998,7 +22175,7 @@ export namespace analyticsadmin_v1alpha { * const res = * await analyticsadmin.properties.dataStreams.sKAdNetworkConversionValueSchema.patch( * { - * // Output only. Resource name of the schema. This will be child of ONLY an iOS stream, and there can be at most one such child under an iOS stream. Format: properties/{property\}/dataStreams/{dataStream\}/sKAdNetworkConversionValueSchema + * // Identifier. Resource name of the schema. This will be child of ONLY an iOS stream, and there can be at most one such child under an iOS stream. Format: properties/{property\}/dataStreams/{dataStream\}/sKAdNetworkConversionValueSchema * name: 'properties/my-propertie/dataStreams/my-dataStream/sKAdNetworkConversionValueSchema/[^/]+', * // Required. The list of fields to be updated. Omitted fields will not be updated. * updateMask: 'placeholder-value', @@ -22158,11 +22335,11 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Datastreams$Skadnetworkconversionvalueschema$List extends StandardParameters { /** - * The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListSKAdNetworkConversionValueSchemas` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListSKAdNetworkConversionValueSchema` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListSKAdNetworkConversionValueSchemas` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListSKAdNetworkConversionValueSchema` must match the call that provided the page token. */ pageToken?: string; /** @@ -22172,7 +22349,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Datastreams$Skadnetworkconversionvalueschema$Patch extends StandardParameters { /** - * Output only. Resource name of the schema. This will be child of ONLY an iOS stream, and there can be at most one such child under an iOS stream. Format: properties/{property\}/dataStreams/{dataStream\}/sKAdNetworkConversionValueSchema + * Identifier. Resource name of the schema. This will be child of ONLY an iOS stream, and there can be at most one such child under an iOS stream. Format: properties/{property\}/dataStreams/{dataStream\}/sKAdNetworkConversionValueSchema */ name?: string; /** @@ -23856,7 +24033,7 @@ export namespace analyticsadmin_v1alpha { * // Do the magic * const res = * await analyticsadmin.properties.displayVideo360AdvertiserLinks.patch({ - * // Output only. The resource name for this DisplayVideo360AdvertiserLink resource. Format: properties/{propertyId\}/displayVideo360AdvertiserLinks/{linkId\} Note: linkId is not the Display & Video 360 Advertiser ID + * // Identifier. The resource name for this DisplayVideo360AdvertiserLink resource. Format: properties/{propertyId\}/displayVideo360AdvertiserLinks/{linkId\} Note: linkId is not the Display & Video 360 Advertiser ID * name: 'properties/my-propertie/displayVideo360AdvertiserLinks/my-displayVideo360AdvertiserLink', * // Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -24031,7 +24208,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Displayvideo360advertiserlinks$Patch extends StandardParameters { /** - * Output only. The resource name for this DisplayVideo360AdvertiserLink resource. Format: properties/{propertyId\}/displayVideo360AdvertiserLinks/{linkId\} Note: linkId is not the Display & Video 360 Advertiser ID + * Identifier. The resource name for this DisplayVideo360AdvertiserLink resource. Format: properties/{propertyId\}/displayVideo360AdvertiserLinks/{linkId\} Note: linkId is not the Display & Video 360 Advertiser ID */ name?: string; /** @@ -25216,9 +25393,9 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.firebaseLinks.list({ - * // The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. Format: properties/{property_id\} Example: `properties/1234` * parent: 'properties/my-propertie', @@ -25358,11 +25535,11 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Firebaselinks$List extends StandardParameters { /** - * The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token. */ pageToken?: string; /** @@ -25712,9 +25889,9 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.googleAdsLinks.list({ - * // The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). + * // Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. Example format: properties/1234 * parent: 'properties/my-propertie', @@ -25865,7 +26042,7 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.googleAdsLinks.patch({ - * // Output only. Format: properties/{propertyId\}/googleAdsLinks/{googleAdsLinkId\} Note: googleAdsLinkId is not the Google Ads customer ID. + * // Identifier. Format: properties/{propertyId\}/googleAdsLinks/{googleAdsLinkId\} Note: googleAdsLinkId is not the Google Ads customer ID. * name: 'properties/my-propertie/googleAdsLinks/my-googleAdsLink', * // Required. The list of fields to be updated. Field names must be in snake case (e.g., "field_to_update"). Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -26021,11 +26198,11 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Googleadslinks$List extends StandardParameters { /** - * The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). + * Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). */ pageSize?: number; /** - * A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token. */ pageToken?: string; /** @@ -26035,7 +26212,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Googleadslinks$Patch extends StandardParameters { /** - * Output only. Format: properties/{propertyId\}/googleAdsLinks/{googleAdsLinkId\} Note: googleAdsLinkId is not the Google Ads customer ID. + * Identifier. Format: properties/{propertyId\}/googleAdsLinks/{googleAdsLinkId\} Note: googleAdsLinkId is not the Google Ads customer ID. */ name?: string; /** @@ -26544,9 +26721,9 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.keyEvents.list({ - * // The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListKeyEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListKeyEvents` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListKeyEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListKeyEvents` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. The resource name of the parent property. Example: 'properties/123' * parent: 'properties/my-propertie', @@ -26859,11 +27036,11 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Keyevents$List extends StandardParameters { /** - * The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListKeyEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListKeyEvents` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListKeyEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListKeyEvents` must match the call that provided the page token. */ pageToken?: string; /** @@ -29022,7 +29199,7 @@ export namespace analyticsadmin_v1alpha { * * // Do the magic * const res = await analyticsadmin.properties.searchAds360Links.patch({ - * // Output only. The resource name for this SearchAds360Link resource. Format: properties/{propertyId\}/searchAds360Links/{linkId\} Note: linkId is not the Search Ads 360 advertiser ID + * // Identifier. The resource name for this SearchAds360Link resource. Format: properties/{propertyId\}/searchAds360Links/{linkId\} Note: linkId is not the Search Ads 360 advertiser ID * name: 'properties/my-propertie/searchAds360Links/my-searchAds360Link', * // Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -29198,7 +29375,7 @@ export namespace analyticsadmin_v1alpha { } export interface Params$Resource$Properties$Searchads360links$Patch extends StandardParameters { /** - * Output only. The resource name for this SearchAds360Link resource. Format: properties/{propertyId\}/searchAds360Links/{linkId\} Note: linkId is not the Search Ads 360 advertiser ID + * Identifier. The resource name for this SearchAds360Link resource. Format: properties/{propertyId\}/searchAds360Links/{linkId\} Note: linkId is not the Search Ads 360 advertiser ID */ name?: string; /** diff --git a/src/apis/analyticsadmin/v1beta.ts b/src/apis/analyticsadmin/v1beta.ts index 5f6ee5ca911..b9284b30715 100644 --- a/src/apis/analyticsadmin/v1beta.ts +++ b/src/apis/analyticsadmin/v1beta.ts @@ -417,7 +417,7 @@ export namespace analyticsadmin_v1beta { */ gmpOrganization?: string | null; /** - * Output only. Resource name of this account. Format: accounts/{account\} Example: "accounts/100" + * Identifier. Resource name of this account. Format: accounts/{account\} Example: "accounts/100" */ name?: string | null; /** @@ -442,7 +442,7 @@ export namespace analyticsadmin_v1beta { */ displayName?: string | null; /** - * Resource name for this account summary. Format: accountSummaries/{account_id\} Example: "accountSummaries/1000" + * Identifier. Resource name for this account summary. Format: accountSummaries/{account_id\} Example: "accountSummaries/1000" */ name?: string | null; /** @@ -587,7 +587,7 @@ export namespace analyticsadmin_v1beta { */ eventName?: string | null; /** - * Output only. Resource name of this conversion event. Format: properties/{property\}/conversionEvents/{conversion_event\} + * Identifier. Resource name of this conversion event. Format: properties/{property\}/conversionEvents/{conversion_event\} */ name?: string | null; } @@ -621,7 +621,7 @@ export namespace analyticsadmin_v1beta { */ displayName?: string | null; /** - * Output only. Resource name for this CustomDimension resource. Format: properties/{property\}/customDimensions/{customDimension\} + * Identifier. Resource name for this CustomDimension resource. Format: properties/{property\}/customDimensions/{customDimension\} */ name?: string | null; /** @@ -650,7 +650,7 @@ export namespace analyticsadmin_v1beta { */ measurementUnit?: string | null; /** - * Output only. Resource name for this CustomMetric resource. Format: properties/{property\}/customMetrics/{customMetric\} + * Identifier. Resource name for this CustomMetric resource. Format: properties/{property\}/customMetrics/{customMetric\} */ name?: string | null; /** @@ -675,7 +675,7 @@ export namespace analyticsadmin_v1beta { */ eventDataRetention?: string | null; /** - * Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property\}/dataRetentionSettings + * Identifier. Resource name for this DataRetentionSetting resource. Format: properties/{property\}/dataRetentionSettings */ name?: string | null; /** @@ -692,7 +692,7 @@ export namespace analyticsadmin_v1beta { */ export interface Schema$GoogleAnalyticsAdminV1betaDataSharingSettings { /** - * Output only. Resource name. Format: accounts/{account\}/dataSharingSettings Example: "accounts/1000/dataSharingSettings" + * Identifier. Resource name. Format: accounts/{account\}/dataSharingSettings Example: "accounts/1000/dataSharingSettings" */ name?: string | null; /** @@ -737,7 +737,7 @@ export namespace analyticsadmin_v1beta { */ iosAppStreamData?: Schema$GoogleAnalyticsAdminV1betaDataStreamIosAppStreamData; /** - * Output only. Resource name of this Data Stream. Format: properties/{property_id\}/dataStreams/{stream_id\} Example: "properties/1000/dataStreams/2000" + * Identifier. Resource name of this Data Stream. Format: properties/{property_id\}/dataStreams/{stream_id\} Example: "properties/1000/dataStreams/2000" */ name?: string | null; /** @@ -805,7 +805,7 @@ export namespace analyticsadmin_v1beta { */ createTime?: string | null; /** - * Output only. Example format: properties/1234/firebaseLinks/5678 + * Identifier. Example format: properties/1234/firebaseLinks/5678 */ name?: string | null; /** @@ -838,7 +838,7 @@ export namespace analyticsadmin_v1beta { */ customerId?: string | null; /** - * Output only. Format: properties/{propertyId\}/googleAdsLinks/{googleAdsLinkId\} Note: googleAdsLinkId is not the Google Ads customer ID. + * Identifier. Format: properties/{propertyId\}/googleAdsLinks/{googleAdsLinkId\} Note: googleAdsLinkId is not the Google Ads customer ID. */ name?: string | null; /** @@ -1044,7 +1044,7 @@ export namespace analyticsadmin_v1beta { */ displayName?: string | null; /** - * Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets/{measurementProtocolSecret\} + * Identifier. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets/{measurementProtocolSecret\} */ name?: string | null; /** @@ -1098,7 +1098,7 @@ export namespace analyticsadmin_v1beta { */ industryCategory?: string | null; /** - * Output only. Resource name of this property. Format: properties/{property_id\} Example: "properties/1000" + * Identifier. Resource name of this property. Format: properties/{property_id\} Example: "properties/1000" */ name?: string | null; /** @@ -1776,9 +1776,9 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.accounts.list({ - * // The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Whether to include soft-deleted (ie: "trashed") Accounts in the results. Accounts can be inspected to determine whether they are deleted or not. * showDeleted: 'placeholder-value', @@ -1925,7 +1925,7 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.accounts.patch({ - * // Output only. Resource name of this account. Format: accounts/{account\} Example: "accounts/100" + * // Identifier. Resource name of this account. Format: accounts/{account\} Example: "accounts/100" * name: 'accounts/my-account', * // Required. The list of fields to be updated. Field names must be in snake case (for example, "field_to_update"). Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -2572,11 +2572,11 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Accounts$List extends StandardParameters { /** - * The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token. */ pageToken?: string; /** @@ -2586,7 +2586,7 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Accounts$Patch extends StandardParameters { /** - * Output only. Resource name of this account. Format: accounts/{account\} Example: "accounts/100" + * Identifier. Resource name of this account. Format: accounts/{account\} Example: "accounts/100" */ name?: string; /** @@ -2668,9 +2668,9 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.accountSummaries.list({ - * // The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token. * pageToken: 'placeholder-value', * }); * console.log(res.data); @@ -2791,11 +2791,11 @@ export namespace analyticsadmin_v1beta { export interface Params$Resource$Accountsummaries$List extends StandardParameters { /** - * The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountSummaries` must match the call that provided the page token. */ pageToken?: string; } @@ -3656,9 +3656,9 @@ export namespace analyticsadmin_v1beta { * const res = await analyticsadmin.properties.list({ * // Required. An expression for filtering the results of the request. Fields eligible for filtering are: `parent:`(The resource name of the parent account/property) or `ancestor:`(The resource name of the parent account) or `firebase_project:`(The id or number of the linked firebase project). Some examples of filters: ``` | Filter | Description | |-----------------------------|-------------------------------------------| | parent:accounts/123 | The account with account id: 123. | | parent:properties/123 | The property with property id: 123. | | ancestor:accounts/123 | The account with account id: 123. | | firebase_project:project-id | The firebase project with id: project-id. | | firebase_project:123 | The firebase project with number: 123. | ``` * filter: 'placeholder-value', - * // The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Whether to include soft-deleted (ie: "trashed") Properties in the results. Properties can be inspected to determine whether they are deleted or not. * showDeleted: 'placeholder-value', @@ -3805,7 +3805,7 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.properties.patch({ - * // Output only. Resource name of this property. Format: properties/{property_id\} Example: "properties/1000" + * // Identifier. Resource name of this property. Format: properties/{property_id\} Example: "properties/1000" * name: 'properties/my-propertie', * // Required. The list of fields to be updated. Field names must be in snake case (e.g., "field_to_update"). Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -4157,7 +4157,7 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.properties.updateDataRetentionSettings({ - * // Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property\}/dataRetentionSettings + * // Identifier. Resource name for this DataRetentionSetting resource. Format: properties/{property\}/dataRetentionSettings * name: 'properties/my-propertie/dataRetentionSettings', * // Required. The list of fields to be updated. Field names must be in snake case (e.g., "field_to_update"). Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -4329,11 +4329,11 @@ export namespace analyticsadmin_v1beta { */ filter?: string; /** - * The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must match the call that provided the page token. */ pageToken?: string; /** @@ -4343,7 +4343,7 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Patch extends StandardParameters { /** - * Output only. Resource name of this property. Format: properties/{property_id\} Example: "properties/1000" + * Identifier. Resource name of this property. Format: properties/{property_id\} Example: "properties/1000" */ name?: string; /** @@ -4369,7 +4369,7 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Updatedataretentionsettings extends StandardParameters { /** - * Output only. Resource name for this DataRetentionSetting resource. Format: properties/{property\}/dataRetentionSettings + * Identifier. Resource name for this DataRetentionSetting resource. Format: properties/{property\}/dataRetentionSettings */ name?: string; /** @@ -4878,9 +4878,9 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.properties.conversionEvents.list({ - * // The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. The resource name of the parent property. Example: 'properties/123' * parent: 'properties/my-propertie', @@ -5031,7 +5031,7 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.properties.conversionEvents.patch({ - * // Output only. Resource name of this conversion event. Format: properties/{property\}/conversionEvents/{conversion_event\} + * // Identifier. Resource name of this conversion event. Format: properties/{property\}/conversionEvents/{conversion_event\} * name: 'properties/my-propertie/conversionEvents/my-conversionEvent', * // Required. The list of fields to be updated. Field names must be in snake case (e.g., "field_to_update"). Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -5193,11 +5193,11 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Conversionevents$List extends StandardParameters { /** - * The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConversionEvents` must match the call that provided the page token. */ pageToken?: string; /** @@ -5207,7 +5207,7 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Conversionevents$Patch extends StandardParameters { /** - * Output only. Resource name of this conversion event. Format: properties/{property\}/conversionEvents/{conversion_event\} + * Identifier. Resource name of this conversion event. Format: properties/{property\}/conversionEvents/{conversion_event\} */ name?: string; /** @@ -5722,9 +5722,9 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.properties.customDimensions.list({ - * // The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). + * // Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. Example format: properties/1234 * parent: 'properties/my-propertie', @@ -5875,7 +5875,7 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.properties.customDimensions.patch({ - * // Output only. Resource name for this CustomDimension resource. Format: properties/{property\}/customDimensions/{customDimension\} + * // Identifier. Resource name for this CustomDimension resource. Format: properties/{property\}/customDimensions/{customDimension\} * name: 'properties/my-propertie/customDimensions/my-customDimension', * // Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -6040,11 +6040,11 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Customdimensions$List extends StandardParameters { /** - * The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). + * Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). */ pageSize?: number; /** - * A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCustomDimensions` must match the call that provided the page token. */ pageToken?: string; /** @@ -6054,7 +6054,7 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Customdimensions$Patch extends StandardParameters { /** - * Output only. Resource name for this CustomDimension resource. Format: properties/{property\}/customDimensions/{customDimension\} + * Identifier. Resource name for this CustomDimension resource. Format: properties/{property\}/customDimensions/{customDimension\} */ name?: string; /** @@ -6725,7 +6725,7 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.properties.customMetrics.patch({ - * // Output only. Resource name for this CustomMetric resource. Format: properties/{property\}/customMetrics/{customMetric\} + * // Identifier. Resource name for this CustomMetric resource. Format: properties/{property\}/customMetrics/{customMetric\} * name: 'properties/my-propertie/customMetrics/my-customMetric', * // Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -6906,7 +6906,7 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Custommetrics$Patch extends StandardParameters { /** - * Output only. Resource name for this CustomMetric resource. Format: properties/{property\}/customMetrics/{customMetric\} + * Identifier. Resource name for this CustomMetric resource. Format: properties/{property\}/customMetrics/{customMetric\} */ name?: string; /** @@ -7576,7 +7576,7 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.properties.dataStreams.patch({ - * // Output only. Resource name of this Data Stream. Format: properties/{property_id\}/dataStreams/{stream_id\} Example: "properties/1000/dataStreams/2000" + * // Identifier. Resource name of this Data Stream. Format: properties/{property_id\}/dataStreams/{stream_id\} Example: "properties/1000/dataStreams/2000" * name: 'properties/my-propertie/dataStreams/my-dataStream', * // Required. The list of fields to be updated. Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -7754,7 +7754,7 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Datastreams$Patch extends StandardParameters { /** - * Output only. Resource name of this Data Stream. Format: properties/{property_id\}/dataStreams/{stream_id\} Example: "properties/1000/dataStreams/2000" + * Identifier. Resource name of this Data Stream. Format: properties/{property_id\}/dataStreams/{stream_id\} Example: "properties/1000/dataStreams/2000" */ name?: string; /** @@ -8262,9 +8262,9 @@ export namespace analyticsadmin_v1beta { * const res = * await analyticsadmin.properties.dataStreams.measurementProtocolSecrets.list( * { - * // The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum. + * // Optional. The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. The resource name of the parent stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets * parent: 'properties/my-propertie/dataStreams/my-dataStream', @@ -8418,7 +8418,7 @@ export namespace analyticsadmin_v1beta { * const res = * await analyticsadmin.properties.dataStreams.measurementProtocolSecrets.patch( * { - * // Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets/{measurementProtocolSecret\} + * // Identifier. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets/{measurementProtocolSecret\} * name: 'properties/my-propertie/dataStreams/my-dataStream/measurementProtocolSecrets/my-measurementProtocolSecret', * // Required. The list of fields to be updated. Omitted fields will not be updated. * updateMask: 'placeholder-value', @@ -8574,11 +8574,11 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Datastreams$Measurementprotocolsecrets$List extends StandardParameters { /** - * The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum. + * Optional. The maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10. Higher values will be coerced to the maximum. */ pageSize?: number; /** - * A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListMeasurementProtocolSecrets` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMeasurementProtocolSecrets` must match the call that provided the page token. */ pageToken?: string; /** @@ -8588,7 +8588,7 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Datastreams$Measurementprotocolsecrets$Patch extends StandardParameters { /** - * Output only. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets/{measurementProtocolSecret\} + * Identifier. Resource name of this secret. This secret may be a child of any type of stream. Format: properties/{property\}/dataStreams/{dataStream\}/measurementProtocolSecrets/{measurementProtocolSecret\} */ name?: string; /** @@ -8935,9 +8935,9 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.properties.firebaseLinks.list({ - * // The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. Format: properties/{property_id\} Example: `properties/1234` * parent: 'properties/my-propertie', @@ -9077,11 +9077,11 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Firebaselinks$List extends StandardParameters { /** - * The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListFirebaseLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListFirebaseLinks` must match the call that provided the page token. */ pageToken?: string; /** @@ -9431,9 +9431,9 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.properties.googleAdsLinks.list({ - * // The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). + * // Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. Example format: properties/1234 * parent: 'properties/my-propertie', @@ -9584,7 +9584,7 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.properties.googleAdsLinks.patch({ - * // Output only. Format: properties/{propertyId\}/googleAdsLinks/{googleAdsLinkId\} Note: googleAdsLinkId is not the Google Ads customer ID. + * // Identifier. Format: properties/{propertyId\}/googleAdsLinks/{googleAdsLinkId\} Note: googleAdsLinkId is not the Google Ads customer ID. * name: 'properties/my-propertie/googleAdsLinks/my-googleAdsLink', * // Required. The list of fields to be updated. Field names must be in snake case (e.g., "field_to_update"). Omitted fields will not be updated. To replace the entire entity, use one path with the string "*" to match all fields. * updateMask: 'placeholder-value', @@ -9740,11 +9740,11 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Googleadslinks$List extends StandardParameters { /** - * The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). + * Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). */ pageSize?: number; /** - * A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListGoogleAdsLinks` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoogleAdsLinks` must match the call that provided the page token. */ pageToken?: string; /** @@ -9754,7 +9754,7 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Googleadslinks$Patch extends StandardParameters { /** - * Output only. Format: properties/{propertyId\}/googleAdsLinks/{googleAdsLinkId\} Note: googleAdsLinkId is not the Google Ads customer ID. + * Identifier. Format: properties/{propertyId\}/googleAdsLinks/{googleAdsLinkId\} Note: googleAdsLinkId is not the Google Ads customer ID. */ name?: string; /** @@ -10263,9 +10263,9 @@ export namespace analyticsadmin_v1beta { * * // Do the magic * const res = await analyticsadmin.properties.keyEvents.list({ - * // The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * // Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListKeyEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListKeyEvents` must match the call that provided the page token. + * // Optional. A page token, received from a previous `ListKeyEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListKeyEvents` must match the call that provided the page token. * pageToken: 'placeholder-value', * // Required. The resource name of the parent property. Example: 'properties/123' * parent: 'properties/my-propertie', @@ -10578,11 +10578,11 @@ export namespace analyticsadmin_v1beta { } export interface Params$Resource$Properties$Keyevents$List extends StandardParameters { /** - * The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) + * Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum) */ pageSize?: number; /** - * A page token, received from a previous `ListKeyEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListKeyEvents` must match the call that provided the page token. + * Optional. A page token, received from a previous `ListKeyEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListKeyEvents` must match the call that provided the page token. */ pageToken?: string; /** diff --git a/src/apis/analyticshub/v1.ts b/src/apis/analyticshub/v1.ts index dfb83e1328e..a1bedcedc56 100644 --- a/src/apis/analyticshub/v1.ts +++ b/src/apis/analyticshub/v1.ts @@ -240,6 +240,27 @@ export namespace analyticshub_v1 { */ selectedResources?: Schema$SelectedResource[]; } + /** + * Configuration for a Bigtable subscription. The Pub/Sub message will be written to a Bigtable row as follows: - row key: subscription name and message ID delimited by #. - columns: message bytes written to a single column family "data" with an empty-string column qualifier. - cell timestamp: the message publish timestamp. + */ + export interface Schema$BigtableConfig { + /** + * Optional. The app profile to use for the Bigtable writes. If not specified, the "default" application profile will be used. The app profile must use single-cluster routing. + */ + appProfileId?: string | null; + /** + * Optional. The service account to use to write to Bigtable. The subscription creator or updater that specifies this field must have `iam.serviceAccounts.actAs` permission on the service account. If not specified, the Pub/Sub [service agent]({$universe.dns_names.final_documentation_domain\}/iam/docs/service-agents), service-{project_number\}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. + */ + serviceAccountEmail?: string | null; + /** + * Optional. The unique name of the table to write messages to. Values are of the form `projects//instances//tables/`. + */ + table?: string | null; + /** + * Optional. When true, write the subscription name, message_id, publish_time, attributes, and ordering_key to additional columns in the table under the pubsub_metadata column family. The subscription name, message_id, and publish_time fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column. + */ + writeMetadata?: boolean | null; + } /** * Associates `members`, or principals, with a `role`. */ @@ -531,7 +552,7 @@ export namespace analyticshub_v1 { order?: string | null; } /** - * Defines the destination Pub/Sub subscription. If none of `push_config`, `bigquery_config`, `cloud_storage_config`, `pubsub_export_config`, or `pubsublite_export_config` is set, then the subscriber will pull and ack messages using API methods. At most one of these fields may be set. + * Defines the destination Pub/Sub subscription. If none of `push_config`, `bigquery_config`, `cloud_storage_config`, `bigtable_config`, `pubsub_export_config`, or `pubsublite_export_config` is set, then the subscriber will pull and ack messages using API methods. At most one of these fields may be set. */ export interface Schema$GooglePubsubV1Subscription { /** @@ -542,6 +563,10 @@ export namespace analyticshub_v1 { * Optional. If delivery to BigQuery is used with this subscription, this field is used to configure it. */ bigqueryConfig?: Schema$BigQueryConfig; + /** + * Optional. If delivery to Bigtable is used with this subscription, this field is used to configure it. + */ + bigtableConfig?: Schema$BigtableConfig; /** * Optional. If delivery to Google Cloud Storage is used with this subscription, this field is used to configure it. */ @@ -599,7 +624,7 @@ export namespace analyticshub_v1 { */ retryPolicy?: Schema$RetryPolicy; /** - * Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": "marketing" + * Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": "marketing" See https://{$universe.dns_names.final_documentation_domain\}/pubsub/docs/tags for more information on using tags with Pub/Sub resources. */ tags?: {[key: string]: string} | null; } diff --git a/src/apis/androidenterprise/v1.ts b/src/apis/androidenterprise/v1.ts index ba936e3674b..4ae6536b72e 100644 --- a/src/apis/androidenterprise/v1.ts +++ b/src/apis/androidenterprise/v1.ts @@ -1391,7 +1391,7 @@ export namespace androidenterprise_v1 { */ export interface Schema$ServiceAccountKey { /** - * The body of the private key credentials file, in string format. This is only populated when the ServiceAccountKey is created, and is not stored by Google. + * The body of the private key credentials file, in string format. This is only populated when the ServiceAccountKey is created, and is not stored by Google. When type is "pkcs12", the contents of the data field is base64 encoded and has the password "notasecret". */ data?: string | null; /** @@ -1906,7 +1906,7 @@ export namespace androidenterprise_v1 { } /** - * Retrieves whether a device's access to Google services is enabled or disabled. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services. This is only supported for Google-managed users. + * Checks if a device can access Google apps and services for a user. Returns whether access is "enabled" or "disabled". A "disabled" state prevents the user's Managed Google Account on the device from successfully authenticating with Google. This blocks access to most Google applications and services, including Google Play, as the device cannot prove its entitlement to access them. New devices default to "disabled". Important: Enforcement of this state depends on the following conditions: * The user must be a managed google account. * The enterprise must be a managed google domain. * Third-party Android mobile management must be active in the Google Admin Console for the user's Organizational Unit. If these conditions aren't met, access may still be possible even in a "disabled" state. * @example * ```js * // Before running the sample: @@ -2186,7 +2186,7 @@ export namespace androidenterprise_v1 { } /** - * Sets whether a device's access to Google services is enabled or disabled. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services. This is only supported for Google-managed users. + * Sets whether a device's access to Google services (including Google Play) is enabled or disabled for the specified user. Setting the state to "enabled" allows the Google Account to access Google services, while "disabled" blocks access by preventing OAuth token issuance. Preconditions for Enforcement: 1. This setting is only effective for Google-managed users. 2. The enterprise must be linked to a Google Managed Domain. 3. Enforcement requires third-party Android mobile management to be enabled within the Google Admin Console for the user's Organizational Unit. If these preconditions are not met, changes to this state may be ignored. * @example * ```js * // Before running the sample: diff --git a/src/apis/androidmanagement/v1.ts b/src/apis/androidmanagement/v1.ts index 44faf0c0c9e..89a8099f783 100644 --- a/src/apis/androidmanagement/v1.ts +++ b/src/apis/androidmanagement/v1.ts @@ -2657,7 +2657,7 @@ export namespace androidmanagement_v1 { */ privateSpacePolicy?: string | null; /** - * If true, screen capture is disabled for all users. + * If true, screen capture is disabled for all users. This also blocks Circle to Search (https://support.google.com/android/answer/14508957). */ screenCaptureDisabled?: boolean | null; } @@ -2754,7 +2754,7 @@ export namespace androidmanagement_v1 { */ createWindowsDisabled?: boolean | null; /** - * Controls which apps are allowed to act as credential providers on Android 14 and above. These apps store credentials, see this (https://developer.android.com/training/sign-in/passkeys) and this (https://developer.android.com/reference/androidx/credentials/CredentialManager) for details. See also credentialProviderPolicy. + * Optional. Controls which apps are allowed to act as credential providers on Android 14 and above. These apps store credentials, see this (https://developer.android.com/training/sign-in/passkeys) and this (https://developer.android.com/reference/androidx/credentials/CredentialManager) for details. See also credentialProviderPolicy. */ credentialProviderPolicyDefault?: string | null; /** @@ -2886,7 +2886,7 @@ export namespace androidmanagement_v1 { */ networkEscapeHatchEnabled?: boolean | null; /** - * Whether resetting network settings is disabled. + * Whether resetting network settings is disabled. This applies only on fully managed devices. A NonComplianceDetail with MANAGEMENT_MODE is reported for other management modes. */ networkResetDisabled?: boolean | null; /** @@ -2966,7 +2966,7 @@ export namespace androidmanagement_v1 { */ safeBootDisabled?: boolean | null; /** - * Whether screen capture is disabled. + * Whether screen capture is disabled. This also blocks Circle to Search (https://support.google.com/android/answer/14508957). */ screenCaptureDisabled?: boolean | null; /** @@ -3144,7 +3144,7 @@ export namespace androidmanagement_v1 { */ export interface Schema$PrivateDnsSettings { /** - * Optional. The hostname of the DNS server. This must be set if and only if private_dns_mode is set to PRIVATE_DNS_SPECIFIED_HOST. Supported on Android 10 and above on fully managed devices. A NonComplianceDetail with MANAGEMENT_MODE is reported on other management modes. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 10. A NonComplianceDetail with PENDING is reported if the device is not connected to a network. A NonComplianceDetail with nonComplianceReason INVALID_VALUE and specificNonComplianceReason PRIVATE_DNS_HOST_NOT_SERVING is reported if the specified host is not a DNS server or not supported on Android. A NonComplianceReason with nonComplianceReason INVALID_VALUE is reported if applying this setting fails for any other reason. + * Optional. The hostname of the DNS server. This must be set if and only if private_dns_mode is set to PRIVATE_DNS_SPECIFIED_HOST. Supported on Android 10 and above on fully managed devices. A NonComplianceDetail with MANAGEMENT_MODE is reported on other management modes. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 10. A NonComplianceDetail with PENDING is reported if the device is not connected to a network. A NonComplianceDetail with nonComplianceReason INVALID_VALUE and specificNonComplianceReason PRIVATE_DNS_HOST_NOT_SERVING is reported if the specified host is not a DNS server or not supported on Android. A NonComplianceDetail with INVALID_VALUE is reported if applying this setting fails for any other reason. */ privateDnsHost?: string | null; /** @@ -3591,10 +3591,6 @@ export namespace androidmanagement_v1 { * Configuration for managing system updatesNote: Google Play system updates (https://source.android.com/docs/core/ota/modular-system) (also called Mainline updates) are automatically downloaded but require a device reboot to be installed. Refer to the mainline section in Manage system updates (https://developer.android.com/work/dpc/system-updates#mainline) for further details. */ export interface Schema$SystemUpdate { - /** - * If this is greater than zero, then this is the number of days after a pending update becoming available that a device can remain compliant, without taking the update. Has no effect otherwise. - */ - allowedDaysWithoutUpdate?: number | null; /** * If the type is WINDOWED, the end of the maintenance window, measured as the number of minutes after midnight in device's local time. This value must be between 0 and 1439, inclusive. If this value is less than start_minutes, then the maintenance window spans midnight. If the maintenance window specified is smaller than 30 minutes, the actual window is extended to 30 minutes beyond the start time. */ diff --git a/src/apis/androidpublisher/v3.ts b/src/apis/androidpublisher/v3.ts index 7f80e699c54..ae0658c23de 100644 --- a/src/apis/androidpublisher/v3.ts +++ b/src/apis/androidpublisher/v3.ts @@ -532,6 +532,15 @@ export namespace androidpublisher_v3 { * Deprecated: subscription archiving is not supported. */ export interface Schema$ArchiveSubscriptionRequest {} + /** + * Summary of an artifact. + */ + export interface Schema$ArtifactSummary { + /** + * Artifact's version code + */ + versionCode?: number | null; + } /** * Metadata of an asset module. */ @@ -2525,6 +2534,15 @@ export namespace androidpublisher_v3 { */ oneTimeProducts?: Schema$OneTimeProduct[]; } + /** + * Response listing all releases for a given track that are either ready to be sent for review, in review, approved, not approved or available. + */ + export interface Schema$ListReleaseSummariesResponse { + /** + * List of releases for this track. A maximum of 20 releases can be returned. + */ + releases?: Schema$ReleaseSummary[]; + } /** * Response message for ListSubscriptionOffers. */ @@ -3869,6 +3887,27 @@ export namespace androidpublisher_v3 { */ version?: string | null; } + /** + * Summary of a release. + */ + export interface Schema$ReleaseSummary { + /** + * List of active artifacts on this release + */ + activeArtifacts?: Schema$ArtifactSummary[]; + /** + * The lifecycle state of a release. + */ + releaseLifecycleState?: string | null; + /** + * Name of the release. + */ + releaseName?: string | null; + /** + * Identifier for the track. [Learn more about track names.](https://developers.google.com/android-publisher/tracks). + */ + track?: string | null; + } /** * Object representation for Remote in-app update action type. */ @@ -4293,7 +4332,7 @@ export namespace androidpublisher_v3 { */ benefits?: string[] | null; /** - * The description of this subscription in the language of this listing. Maximum length - 80 characters. Plain text. + * The description of this subscription in the language of this listing. Maximum length - 200 characters. Plain text. */ description?: string | null; /** @@ -5412,11 +5451,13 @@ export namespace androidpublisher_v3 { export class Resource$Applications { context: APIRequestContext; deviceTierConfigs: Resource$Applications$Devicetierconfigs; + tracks: Resource$Applications$Tracks; constructor(context: APIRequestContext) { this.context = context; this.deviceTierConfigs = new Resource$Applications$Devicetierconfigs( this.context ); + this.tracks = new Resource$Applications$Tracks(this.context); } /** @@ -6073,6 +6114,173 @@ export namespace androidpublisher_v3 { pageToken?: string; } + export class Resource$Applications$Tracks { + context: APIRequestContext; + releases: Resource$Applications$Tracks$Releases; + constructor(context: APIRequestContext) { + this.context = context; + this.releases = new Resource$Applications$Tracks$Releases(this.context); + } + } + + export class Resource$Applications$Tracks$Releases { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns the list of all releases for a given track. This excludes any releases that are obsolete. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/androidpublisher.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const androidpublisher = google.androidpublisher('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/androidpublisher'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await androidpublisher.applications.tracks.releases.list({ + * // Required. The parent track, which owns this collection of releases. Format: applications/{package_name\}/tracks/{track\} + * parent: 'applications/my-application/tracks/my-track', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "releases": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Applications$Tracks$Releases$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Applications$Tracks$Releases$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Applications$Tracks$Releases$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Applications$Tracks$Releases$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Applications$Tracks$Releases$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Applications$Tracks$Releases$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Applications$Tracks$Releases$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Applications$Tracks$Releases$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://androidpublisher.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/androidpublisher/v3/{+parent}/releases').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Applications$Tracks$Releases$List extends StandardParameters { + /** + * Required. The parent track, which owns this collection of releases. Format: applications/{package_name\}/tracks/{track\} + */ + parent?: string; + } + export class Resource$Apprecovery { context: APIRequestContext; constructor(context: APIRequestContext) { @@ -6951,6 +7159,8 @@ export namespace androidpublisher_v3 { * * // Do the magic * const res = await androidpublisher.edits.commit({ + * // Optional. Specify how the API should behave if there are changes currently in review. If this value is not set, it will default to "CANCEL_IN_REVIEW_AND_SUBMIT", which will cancel the changes in review and then send all the changes for publishing. + * changesInReviewBehavior: 'placeholder-value', * // When a rejection happens, the parameter will make sure that the changes in this edit won't be reviewed until they are explicitly sent for review from within the Google Play Console UI. These changes will be added to any other changes that are not yet sent for review. * changesNotSentForReview: 'placeholder-value', * // Identifier of the edit. @@ -7622,6 +7832,10 @@ export namespace androidpublisher_v3 { } export interface Params$Resource$Edits$Commit extends StandardParameters { + /** + * Optional. Specify how the API should behave if there are changes currently in review. If this value is not set, it will default to "CANCEL_IN_REVIEW_AND_SUBMIT", which will cancel the changes in review and then send all the changes for publishing. + */ + changesInReviewBehavior?: string; /** * When a rejection happens, the parameter will make sure that the changes in this edit won't be reviewed until they are explicitly sent for review from within the Google Play Console UI. These changes will be added to any other changes that are not yet sent for review. */ diff --git a/src/apis/apigateway/v1.ts b/src/apis/apigateway/v1.ts index 0289c62f904..d48a25c424e 100644 --- a/src/apis/apigateway/v1.ts +++ b/src/apis/apigateway/v1.ts @@ -763,7 +763,7 @@ export namespace apigateway_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -793,7 +793,7 @@ export namespace apigateway_v1 { * * // Do the magic * const res = await apigateway.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -923,7 +923,7 @@ export namespace apigateway_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/apigateway/v1beta.ts b/src/apis/apigateway/v1beta.ts index 93333234115..73e50e833ea 100644 --- a/src/apis/apigateway/v1beta.ts +++ b/src/apis/apigateway/v1beta.ts @@ -785,7 +785,7 @@ export namespace apigateway_v1beta { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -815,7 +815,7 @@ export namespace apigateway_v1beta { * * // Do the magic * const res = await apigateway.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -945,7 +945,7 @@ export namespace apigateway_v1beta { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/apihub/v1.ts b/src/apis/apihub/v1.ts index 7f10cea3bea..c18faa1edf2 100644 --- a/src/apis/apihub/v1.ts +++ b/src/apis/apihub/v1.ts @@ -212,6 +212,15 @@ export namespace apihub_v1 { */ gatewayPluginAddonConfig?: Schema$GoogleCloudApihubV1GatewayPluginAddonConfig; } + /** + * The configuration for Agent Registry sync. + */ + export interface Schema$GoogleCloudApihubV1AgentRegistrySyncConfig { + /** + * Optional. If true, the MCP data sync to the Agent Registry will be disabled. The default value is false. + */ + disabled?: boolean | null; + } /** * Configuration for addons which act on all data in the API hub. This is used to specify if the addon is enabled for all data in the API hub. */ @@ -522,11 +531,11 @@ export namespace apihub_v1 { */ export interface Schema$GoogleCloudApihubV1ApiView { /** - * Output only. MCP server view. + * MCP server view. */ mcpServerView?: Schema$GoogleCloudApihubV1FlattenedApiVersionDeploymentView; /** - * Output only. MCP tools view. + * MCP tools view. */ mcpToolView?: Schema$GoogleCloudApihubV1FlattenedApiVersionOperationDeploymentView; } @@ -680,6 +689,10 @@ export namespace apihub_v1 { * Available configurations to provision an ApiHub Instance. */ export interface Schema$GoogleCloudApihubV1Config { + /** + * Optional. The configuration for syncing MCP data in the API Hub instance to the Agent Registry. + */ + agentRegistrySyncConfig?: Schema$GoogleCloudApihubV1AgentRegistrySyncConfig; /** * Optional. The Customer Managed Encryption Key (CMEK) used for data encryption. The CMEK name should follow the format of `projects/([^/]+)/locations/([^/]+)/keyRings/([^/]+)/cryptoKeys/([^/]+)`, where the location must match the instance location. If the CMEK is not provided, a GMEK will be created for the instance. */ @@ -1331,15 +1344,15 @@ export namespace apihub_v1 { */ export interface Schema$GoogleCloudApihubV1FlattenedApiVersionDeploymentView { /** - * The API. + * Optional. The API. */ api?: Schema$GoogleCloudApihubV1Api; /** - * The deployment. + * Optional. The deployment. */ deployment?: Schema$GoogleCloudApihubV1Deployment; /** - * The version. + * Optional. The version. */ version?: Schema$GoogleCloudApihubV1Version; } @@ -1348,19 +1361,19 @@ export namespace apihub_v1 { */ export interface Schema$GoogleCloudApihubV1FlattenedApiVersionOperationDeploymentView { /** - * The API. + * Optional. The API. */ api?: Schema$GoogleCloudApihubV1Api; /** - * The API operation. + * Optional. The API operation. */ apiOperation?: Schema$GoogleCloudApihubV1ApiOperation; /** - * The deployment. + * Optional. The deployment. */ deployment?: Schema$GoogleCloudApihubV1Deployment; /** - * The version. + * Optional. The version. */ version?: Schema$GoogleCloudApihubV1Version; } @@ -2309,7 +2322,7 @@ export namespace apihub_v1 { */ export interface Schema$GoogleCloudApihubV1RetrieveApiViewsResponse { /** - * The list of API views. + * Output only. The list of API views. */ apiViews?: Schema$GoogleCloudApihubV1ApiView[]; /** @@ -3239,7 +3252,7 @@ export namespace apihub_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3269,7 +3282,7 @@ export namespace apihub_v1 { * * // Do the magic * const res = await apihub.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3876,7 +3889,7 @@ export namespace apihub_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -5039,6 +5052,165 @@ export namespace apihub_v1 { ); } } + + /** + * Update an Api Hub instance. The following fields in the ApiHubInstance can be updated: * disable_search * vertex_location * agent_registry_sync_config The update_mask should be used to specify the fields being updated. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/apihub.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const apihub = google.apihub('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await apihub.projects.locations.apiHubInstances.patch({ + * // Identifier. Format: `projects/{project\}/locations/{location\}/apiHubInstances/{apiHubInstance\}`. + * name: 'projects/my-project/locations/my-location/apiHubInstances/my-apiHubInstance', + * // Optional. The list of fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "config": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "stateMessage": "my_stateMessage", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Apihubinstances$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Apihubinstances$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Apihubinstances$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Apihubinstances$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Apihubinstances$Patch, + callback: BodyResponseCallback + ): void; + patch( + callback: BodyResponseCallback + ): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Apihubinstances$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Apihubinstances$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Apihubinstances$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://apihub.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Apihubinstances$Create extends StandardParameters { @@ -5074,6 +5246,21 @@ export namespace apihub_v1 { */ parent?: string; } + export interface Params$Resource$Projects$Locations$Apihubinstances$Patch extends StandardParameters { + /** + * Identifier. Format: `projects/{project\}/locations/{location\}/apiHubInstances/{apiHubInstance\}`. + */ + name?: string; + /** + * Optional. The list of fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudApihubV1ApiHubInstance; + } export class Resource$Projects$Locations$Apis { context: APIRequestContext; diff --git a/src/apis/apikeys/v2.ts b/src/apis/apikeys/v2.ts index 098350c1b87..0c05876bff8 100644 --- a/src/apis/apikeys/v2.ts +++ b/src/apis/apikeys/v2.ts @@ -261,7 +261,7 @@ export namespace apikeys_v2 { */ keyString?: string | null; /** - * Output only. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`. + * Identifier. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`. */ name?: string | null; /** @@ -708,7 +708,7 @@ export namespace apikeys_v2 { * const res = await apikeys.projects.locations.keys.create({ * // User specified key id (optional). If specified, it will become the final component of the key resource name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. In another word, the id must match the regular expression: `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`. The id must NOT be a UUID-like string. * keyId: 'placeholder-value', - * // Required. The project in which the API key is created. + * // Required. The project in which the API key is created. The parent field must be in format of "projects//locations/global". * parent: 'projects/my-project/locations/my-location', * * // Request body metadata @@ -1302,7 +1302,7 @@ export namespace apikeys_v2 { * pageSize: 'placeholder-value', * // Optional. Requests a specific page of results. * pageToken: 'placeholder-value', - * // Required. Lists all API keys associated with this project. + * // Required. Lists all API keys associated with this project. The parent field must be in format of "projects//locations/global". * parent: 'projects/my-project/locations/my-location', * // Optional. Indicate that keys deleted in the past 30 days should also be returned. * showDeleted: 'placeholder-value', @@ -1439,7 +1439,7 @@ export namespace apikeys_v2 { * * // Do the magic * const res = await apikeys.projects.locations.keys.patch({ - * // Output only. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`. + * // Identifier. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`. * name: 'projects/my-project/locations/my-location/keys/my-key', * // The field mask specifies which fields to be updated as part of this request. All other fields are ignored. Mutable fields are: `display_name`, `restrictions`, and `annotations`. If an update mask is not provided, the service treats it as an implied mask equivalent to all allowed fields that are set on the wire. If the field mask has a special value "*", the service treats it equivalent to replace all allowed mutable fields. * updateMask: 'placeholder-value', @@ -1720,7 +1720,7 @@ export namespace apikeys_v2 { */ keyId?: string; /** - * Required. The project in which the API key is created. + * Required. The project in which the API key is created. The parent field must be in format of "projects//locations/global". */ parent?: string; @@ -1761,7 +1761,7 @@ export namespace apikeys_v2 { */ pageToken?: string; /** - * Required. Lists all API keys associated with this project. + * Required. Lists all API keys associated with this project. The parent field must be in format of "projects//locations/global". */ parent?: string; /** @@ -1771,7 +1771,7 @@ export namespace apikeys_v2 { } export interface Params$Resource$Projects$Locations$Keys$Patch extends StandardParameters { /** - * Output only. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`. + * Identifier. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`. */ name?: string; /** diff --git a/src/apis/apim/v1alpha.ts b/src/apis/apim/v1alpha.ts index 3998295b4d9..75718eda30f 100644 --- a/src/apis/apim/v1alpha.ts +++ b/src/apis/apim/v1alpha.ts @@ -956,7 +956,7 @@ export namespace apim_v1alpha { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -986,7 +986,7 @@ export namespace apim_v1alpha { * * // Do the magic * const res = await apim.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1266,7 +1266,7 @@ export namespace apim_v1alpha { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/appengine/v1.ts b/src/apis/appengine/v1.ts index 2304d8a8311..93c4971ed36 100644 --- a/src/apis/appengine/v1.ts +++ b/src/apis/appengine/v1.ts @@ -598,6 +598,15 @@ export namespace appengine_v1 { */ staticFile?: string | null; } + /** + * Request message for Versions.ExportAppImage. + */ + export interface Schema$ExportAppImageRequest { + /** + * Optional. The full resource name of the AR repository to export to. Format: projects/{project\}/locations/{location\}/repositories/{repository\} If not specified, defaults to projects/{project\}/locations/{location\}/repositories/gae-standard in the same region as the app. The default repository will be created if it does not exist. + */ + destinationRepository?: string | null; + } /** * The feature specific settings to be used in the application. These define behaviors that are user configurable. */ @@ -5727,7 +5736,7 @@ export namespace appengine_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -5763,7 +5772,7 @@ export namespace appengine_v1 { * const res = await appengine.apps.locations.list({ * // Part of `name`. The resource that owns the locations collection, if applicable. * appsId: 'placeholder-value', - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -5895,7 +5904,7 @@ export namespace appengine_v1 { */ appsId?: string; /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -7263,6 +7272,159 @@ export namespace appengine_v1 { } } + /** + * Exports a user image to Artifact Registry. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/appengine.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const appengine = google.appengine('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await appengine.apps.services.versions.exportAppImage({ + * // Part of `name`. Required. Name of the App Engine version resource. Format: apps/{app\}/services/{service\}/versions/{version\} + * appsId: 'placeholder-value', + * // Part of `name`. See documentation of `appsId`. + * servicesId: 'placeholder-value', + * // Part of `name`. See documentation of `appsId`. + * versionsId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "destinationRepository": "my_destinationRepository" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + exportAppImage( + params: Params$Resource$Apps$Services$Versions$Exportappimage, + options: StreamMethodOptions + ): Promise>; + exportAppImage( + params?: Params$Resource$Apps$Services$Versions$Exportappimage, + options?: MethodOptions + ): Promise>; + exportAppImage( + params: Params$Resource$Apps$Services$Versions$Exportappimage, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + exportAppImage( + params: Params$Resource$Apps$Services$Versions$Exportappimage, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + exportAppImage( + params: Params$Resource$Apps$Services$Versions$Exportappimage, + callback: BodyResponseCallback + ): void; + exportAppImage(callback: BodyResponseCallback): void; + exportAppImage( + paramsOrCallback?: + | Params$Resource$Apps$Services$Versions$Exportappimage + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Apps$Services$Versions$Exportappimage; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Apps$Services$Versions$Exportappimage; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://appengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}:exportAppImage' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['appsId', 'servicesId', 'versionsId'], + pathParams: ['appsId', 'servicesId', 'versionsId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource. * @example @@ -7828,6 +7990,25 @@ export namespace appengine_v1 { */ versionsId?: string; } + export interface Params$Resource$Apps$Services$Versions$Exportappimage extends StandardParameters { + /** + * Part of `name`. Required. Name of the App Engine version resource. Format: apps/{app\}/services/{service\}/versions/{version\} + */ + appsId?: string; + /** + * Part of `name`. See documentation of `appsId`. + */ + servicesId?: string; + /** + * Part of `name`. See documentation of `appsId`. + */ + versionsId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExportAppImageRequest; + } export interface Params$Resource$Apps$Services$Versions$Get extends StandardParameters { /** * Part of `name`. Required. Name of the resource requested. Example: apps/myapp/services/default/versions/v1. @@ -11489,6 +11670,179 @@ export namespace appengine_v1 { } } + /** + * Exports a user image to Artifact Registry. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/appengine.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const appengine = google.appengine('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await appengine.projects.locations.applications.services.versions.exportAppImage( + * { + * // Part of `name`. See documentation of `projectsId`. + * applicationsId: 'placeholder-value', + * // Part of `name`. See documentation of `projectsId`. + * locationsId: 'placeholder-value', + * // Part of `name`. Required. Name of the App Engine version resource. Format: apps/{app\}/services/{service\}/versions/{version\} + * projectsId: 'placeholder-value', + * // Part of `name`. See documentation of `projectsId`. + * servicesId: 'placeholder-value', + * // Part of `name`. See documentation of `projectsId`. + * versionsId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "destinationRepository": "my_destinationRepository" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + exportAppImage( + params: Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage, + options: StreamMethodOptions + ): Promise>; + exportAppImage( + params?: Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage, + options?: MethodOptions + ): Promise>; + exportAppImage( + params: Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + exportAppImage( + params: Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + exportAppImage( + params: Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage, + callback: BodyResponseCallback + ): void; + exportAppImage(callback: BodyResponseCallback): void; + exportAppImage( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://appengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/services/{servicesId}/versions/{versionsId}:exportAppImage' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'projectsId', + 'locationsId', + 'applicationsId', + 'servicesId', + 'versionsId', + ], + pathParams: [ + 'applicationsId', + 'locationsId', + 'projectsId', + 'servicesId', + 'versionsId', + ], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:Standard environment instance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.instance_class)automatic scaling in the standard environment: automatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling) automaticScaling.standard_scheduler_settings.max_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StandardSchedulerSettings) automaticScaling.standard_scheduler_settings.min_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StandardSchedulerSettings) automaticScaling.standard_scheduler_settings.target_cpu_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StandardSchedulerSettings) automaticScaling.standard_scheduler_settings.target_throughput_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StandardSchedulerSettings)basic scaling or manual scaling in the standard environment: serving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.serving_status) manual_scaling.instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#manualscaling)Flexible environment serving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.serving_status)automatic scaling in the flexible environment: automatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling)manual scaling in the flexible environment: manual_scaling.instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#manualscaling) * @example @@ -11726,6 +12080,33 @@ export namespace appengine_v1 { */ versionsId?: string; } + export interface Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage extends StandardParameters { + /** + * Part of `name`. See documentation of `projectsId`. + */ + applicationsId?: string; + /** + * Part of `name`. See documentation of `projectsId`. + */ + locationsId?: string; + /** + * Part of `name`. Required. Name of the App Engine version resource. Format: apps/{app\}/services/{service\}/versions/{version\} + */ + projectsId?: string; + /** + * Part of `name`. See documentation of `projectsId`. + */ + servicesId?: string; + /** + * Part of `name`. See documentation of `projectsId`. + */ + versionsId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExportAppImageRequest; + } export interface Params$Resource$Projects$Locations$Applications$Services$Versions$Patch extends StandardParameters { /** * Part of `name`. See documentation of `projectsId`. diff --git a/src/apis/appengine/v1alpha.ts b/src/apis/appengine/v1alpha.ts index 48b26a8acae..7959e9d02d0 100644 --- a/src/apis/appengine/v1alpha.ts +++ b/src/apis/appengine/v1alpha.ts @@ -2727,7 +2727,7 @@ export namespace appengine_v1alpha { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2763,7 +2763,7 @@ export namespace appengine_v1alpha { * const res = await appengine.apps.locations.list({ * // Part of `name`. The resource that owns the locations collection, if applicable. * appsId: 'placeholder-value', - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2895,7 +2895,7 @@ export namespace appengine_v1alpha { */ appsId?: string; /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -3421,7 +3421,7 @@ export namespace appengine_v1alpha { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3455,7 +3455,7 @@ export namespace appengine_v1alpha { * * // Do the magic * const res = await appengine.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3585,7 +3585,7 @@ export namespace appengine_v1alpha { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/appengine/v1beta.ts b/src/apis/appengine/v1beta.ts index a3b8de662c6..5b996417d86 100644 --- a/src/apis/appengine/v1beta.ts +++ b/src/apis/appengine/v1beta.ts @@ -640,6 +640,15 @@ export namespace appengine_v1beta { */ staticFile?: string | null; } + /** + * Request message for Versions.ExportAppImage. + */ + export interface Schema$ExportAppImageRequest { + /** + * Optional. The full resource name of the AR repository to export to. Format: projects/{project\}/locations/{location\}/repositories/{repository\} If not specified, defaults to projects/{project\}/locations/{location\}/repositories/gae-standard in the same region as the app. The default repository will be created if it does not exist. + */ + destinationRepository?: string | null; + } /** * The feature specific settings to be used in the application. These define behaviors that are user configurable. */ @@ -5813,7 +5822,7 @@ export namespace appengine_v1beta { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -5849,7 +5858,7 @@ export namespace appengine_v1beta { * const res = await appengine.apps.locations.list({ * // Part of `name`. The resource that owns the locations collection, if applicable. * appsId: 'placeholder-value', - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -5981,7 +5990,7 @@ export namespace appengine_v1beta { */ appsId?: string; /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -7354,6 +7363,159 @@ export namespace appengine_v1beta { } } + /** + * Exports a user image to Artifact Registry. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/appengine.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const appengine = google.appengine('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await appengine.apps.services.versions.exportAppImage({ + * // Part of `name`. Required. Name of the App Engine version resource. Format: apps/{app\}/services/{service\}/versions/{version\} + * appsId: 'placeholder-value', + * // Part of `name`. See documentation of `appsId`. + * servicesId: 'placeholder-value', + * // Part of `name`. See documentation of `appsId`. + * versionsId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "destinationRepository": "my_destinationRepository" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + exportAppImage( + params: Params$Resource$Apps$Services$Versions$Exportappimage, + options: StreamMethodOptions + ): Promise>; + exportAppImage( + params?: Params$Resource$Apps$Services$Versions$Exportappimage, + options?: MethodOptions + ): Promise>; + exportAppImage( + params: Params$Resource$Apps$Services$Versions$Exportappimage, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + exportAppImage( + params: Params$Resource$Apps$Services$Versions$Exportappimage, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + exportAppImage( + params: Params$Resource$Apps$Services$Versions$Exportappimage, + callback: BodyResponseCallback + ): void; + exportAppImage(callback: BodyResponseCallback): void; + exportAppImage( + paramsOrCallback?: + | Params$Resource$Apps$Services$Versions$Exportappimage + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Apps$Services$Versions$Exportappimage; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Apps$Services$Versions$Exportappimage; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://appengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}:exportAppImage' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['appsId', 'servicesId', 'versionsId'], + pathParams: ['appsId', 'servicesId', 'versionsId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource. * @example @@ -7925,6 +8087,25 @@ export namespace appengine_v1beta { */ versionsId?: string; } + export interface Params$Resource$Apps$Services$Versions$Exportappimage extends StandardParameters { + /** + * Part of `name`. Required. Name of the App Engine version resource. Format: apps/{app\}/services/{service\}/versions/{version\} + */ + appsId?: string; + /** + * Part of `name`. See documentation of `appsId`. + */ + servicesId?: string; + /** + * Part of `name`. See documentation of `appsId`. + */ + versionsId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExportAppImageRequest; + } export interface Params$Resource$Apps$Services$Versions$Get extends StandardParameters { /** * Part of `name`. Required. Name of the resource requested. Example: apps/myapp/services/default/versions/v1. @@ -8869,7 +9050,7 @@ export namespace appengine_v1beta { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -8903,7 +9084,7 @@ export namespace appengine_v1beta { * * // Do the magic * const res = await appengine.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -9033,7 +9214,7 @@ export namespace appengine_v1beta { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -11925,6 +12106,179 @@ export namespace appengine_v1beta { } } + /** + * Exports a user image to Artifact Registry. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/appengine.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const appengine = google.appengine('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await appengine.projects.locations.applications.services.versions.exportAppImage( + * { + * // Part of `name`. See documentation of `projectsId`. + * applicationsId: 'placeholder-value', + * // Part of `name`. See documentation of `projectsId`. + * locationsId: 'placeholder-value', + * // Part of `name`. Required. Name of the App Engine version resource. Format: apps/{app\}/services/{service\}/versions/{version\} + * projectsId: 'placeholder-value', + * // Part of `name`. See documentation of `projectsId`. + * servicesId: 'placeholder-value', + * // Part of `name`. See documentation of `projectsId`. + * versionsId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "destinationRepository": "my_destinationRepository" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + exportAppImage( + params: Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage, + options: StreamMethodOptions + ): Promise>; + exportAppImage( + params?: Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage, + options?: MethodOptions + ): Promise>; + exportAppImage( + params: Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + exportAppImage( + params: Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + exportAppImage( + params: Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage, + callback: BodyResponseCallback + ): void; + exportAppImage(callback: BodyResponseCallback): void; + exportAppImage( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://appengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1beta/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/services/{servicesId}/versions/{versionsId}:exportAppImage' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'projectsId', + 'locationsId', + 'applicationsId', + 'servicesId', + 'versionsId', + ], + pathParams: [ + 'applicationsId', + 'locationsId', + 'projectsId', + 'servicesId', + 'versionsId', + ], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:Standard environment instance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.instance_class)automatic scaling in the standard environment: automatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling) automaticScaling.standard_scheduler_settings.max_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#StandardSchedulerSettings) automaticScaling.standard_scheduler_settings.min_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#StandardSchedulerSettings) automaticScaling.standard_scheduler_settings.target_cpu_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#StandardSchedulerSettings) automaticScaling.standard_scheduler_settings.target_throughput_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#StandardSchedulerSettings)basic scaling or manual scaling in the standard environment: serving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.serving_status) manual_scaling.instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#manualscaling)Flexible environment serving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.serving_status)automatic scaling in the flexible environment: automatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling) automatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS.automatic_scaling)manual scaling in the flexible environment: manual_scaling.instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#manualscaling) * @example @@ -12164,6 +12518,33 @@ export namespace appengine_v1beta { */ versionsId?: string; } + export interface Params$Resource$Projects$Locations$Applications$Services$Versions$Exportappimage extends StandardParameters { + /** + * Part of `name`. See documentation of `projectsId`. + */ + applicationsId?: string; + /** + * Part of `name`. See documentation of `projectsId`. + */ + locationsId?: string; + /** + * Part of `name`. Required. Name of the App Engine version resource. Format: apps/{app\}/services/{service\}/versions/{version\} + */ + projectsId?: string; + /** + * Part of `name`. See documentation of `projectsId`. + */ + servicesId?: string; + /** + * Part of `name`. See documentation of `projectsId`. + */ + versionsId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExportAppImageRequest; + } export interface Params$Resource$Projects$Locations$Applications$Services$Versions$Patch extends StandardParameters { /** * Part of `name`. See documentation of `projectsId`. diff --git a/src/apis/apphub/v1.ts b/src/apis/apphub/v1.ts index f9c4165e410..6dea67d0c0a 100644 --- a/src/apis/apphub/v1.ts +++ b/src/apis/apphub/v1.ts @@ -1426,7 +1426,7 @@ export namespace apphub_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1456,7 +1456,7 @@ export namespace apphub_v1 { * * // Do the magic * const res = await apphub.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1900,7 +1900,7 @@ export namespace apphub_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/apphub/v1alpha.ts b/src/apis/apphub/v1alpha.ts index 1b6e4c85ab9..455fa501e26 100644 --- a/src/apis/apphub/v1alpha.ts +++ b/src/apis/apphub/v1alpha.ts @@ -1476,7 +1476,7 @@ export namespace apphub_v1alpha { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1506,7 +1506,7 @@ export namespace apphub_v1alpha { * * // Do the magic * const res = await apphub.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1950,7 +1950,7 @@ export namespace apphub_v1alpha { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/artifactregistry/v1.ts b/src/apis/artifactregistry/v1.ts index ba29820a111..14dcaa8eb89 100644 --- a/src/apis/artifactregistry/v1.ts +++ b/src/apis/artifactregistry/v1.ts @@ -246,6 +246,10 @@ export namespace artifactregistry_v1 { */ role?: string | null; } + /** + * The request message for Operations.CancelOperation. + */ + export interface Schema$CancelOperationRequest {} /** * Artifact policy configuration for repository cleanup policies. */ @@ -1215,6 +1219,19 @@ export namespace artifactregistry_v1 { */ updateTime?: string | null; } + /** + * The platform logs config for a project or a repository. + */ + export interface Schema$PlatformLogsConfig { + /** + * Optional. The state of the platform logs: enabled or disabled. + */ + loggingState?: string | null; + /** + * Optional. The severity level for the logs. Logs will be generated if their severity level is \>= than the value of the severity level mentioned here. + */ + severityLevel?: 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/). */ @@ -1232,6 +1249,19 @@ export namespace artifactregistry_v1 { */ version?: number | null; } + /** + * The Artifact Registry logging configurations that apply to a Project. + */ + export interface Schema$ProjectConfig { + /** + * Identifier. The name of the project's configuration. Always of the form: projects/{project\}/locations/{location\}/projectConfig + */ + name?: string | null; + /** + * Optional. Configuration for platform logs. + */ + platformLogsConfig?: Schema$PlatformLogsConfig; + } /** * The Artifact Registry settings that apply to a Project. */ @@ -1388,6 +1418,10 @@ export namespace artifactregistry_v1 { * The name of the repository, for example: `projects/p1/locations/us-central1/repositories/repo1`. For each location in a project, repository names must be unique. */ name?: string | null; + /** + * Optional. Configuration for platform logs. + */ + platformLogsConfig?: Schema$PlatformLogsConfig; /** * Output only. The repository endpoint, for example: `us-docker.pkg.dev/my-proj/my-repo`. */ @@ -2281,6 +2315,147 @@ export namespace artifactregistry_v1 { } } + /** + * Retrieves the project configuration. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/artifactregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const artifactregistry = google.artifactregistry('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await artifactregistry.projects.locations.getProjectConfig({ + * // Required. The name of the project's logging configuration: projects/{project\}/locations/{location\}/projectConfig + * name: 'projects/my-project/locations/my-location/projectConfig', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "name": "my_name", + * // "platformLogsConfig": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getProjectConfig( + params: Params$Resource$Projects$Locations$Getprojectconfig, + options: StreamMethodOptions + ): Promise>; + getProjectConfig( + params?: Params$Resource$Projects$Locations$Getprojectconfig, + options?: MethodOptions + ): Promise>; + getProjectConfig( + params: Params$Resource$Projects$Locations$Getprojectconfig, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getProjectConfig( + params: Params$Resource$Projects$Locations$Getprojectconfig, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getProjectConfig( + params: Params$Resource$Projects$Locations$Getprojectconfig, + callback: BodyResponseCallback + ): void; + getProjectConfig( + callback: BodyResponseCallback + ): void; + getProjectConfig( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Getprojectconfig + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Getprojectconfig; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Getprojectconfig; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://artifactregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Retrieves the VPCSC Config for the Project. * @example @@ -2421,7 +2596,7 @@ export namespace artifactregistry_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2572,6 +2747,155 @@ export namespace artifactregistry_v1 { } } + /** + * Updates the project configuration. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/artifactregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const artifactregistry = google.artifactregistry('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await artifactregistry.projects.locations.updateProjectConfig({ + * // Identifier. The name of the project's configuration. Always of the form: projects/{project\}/locations/{location\}/projectConfig + * name: 'projects/my-project/locations/my-location/projectConfig', + * // Optional. Field mask to support partial updates. See https://protobuf.dev/reference/protobuf/google.protobuf/#field-mask for more details. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "name": "my_name", + * // "platformLogsConfig": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "name": "my_name", + * // "platformLogsConfig": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + updateProjectConfig( + params: Params$Resource$Projects$Locations$Updateprojectconfig, + options: StreamMethodOptions + ): Promise>; + updateProjectConfig( + params?: Params$Resource$Projects$Locations$Updateprojectconfig, + options?: MethodOptions + ): Promise>; + updateProjectConfig( + params: Params$Resource$Projects$Locations$Updateprojectconfig, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateProjectConfig( + params: Params$Resource$Projects$Locations$Updateprojectconfig, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateProjectConfig( + params: Params$Resource$Projects$Locations$Updateprojectconfig, + callback: BodyResponseCallback + ): void; + updateProjectConfig( + callback: BodyResponseCallback + ): void; + updateProjectConfig( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Updateprojectconfig + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Updateprojectconfig; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Updateprojectconfig; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://artifactregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Updates the VPCSC Config for the Project. * @example @@ -2726,6 +3050,12 @@ export namespace artifactregistry_v1 { */ name?: string; } + export interface Params$Resource$Projects$Locations$Getprojectconfig extends StandardParameters { + /** + * Required. The name of the project's logging configuration: projects/{project\}/locations/{location\}/projectConfig + */ + name?: string; + } export interface Params$Resource$Projects$Locations$Getvpcscconfig extends StandardParameters { /** * Required. The name of the VPCSCConfig resource. @@ -2754,6 +3084,21 @@ export namespace artifactregistry_v1 { */ pageToken?: string; } + export interface Params$Resource$Projects$Locations$Updateprojectconfig extends StandardParameters { + /** + * Identifier. The name of the project's configuration. Always of the form: projects/{project\}/locations/{location\}/projectConfig + */ + name?: string; + /** + * Optional. Field mask to support partial updates. See https://protobuf.dev/reference/protobuf/google.protobuf/#field-mask for more details. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ProjectConfig; + } export interface Params$Resource$Projects$Locations$Updatevpcscconfig extends StandardParameters { /** * The name of the project's VPC SC Config. Always of the form: projects/{projectID\}/locations/{location\}/vpcscConfig In update request: never set In response: always set @@ -2776,6 +3121,145 @@ export namespace artifactregistry_v1 { 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`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/artifactregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const artifactregistry = google.artifactregistry('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await artifactregistry.projects.locations.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + cancel( + params?: Params$Resource$Projects$Locations$Operations$Cancel, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://artifactregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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. * @example @@ -2919,6 +3403,17 @@ export namespace artifactregistry_v1 { } } + 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$Get extends StandardParameters { /** * The name of the operation resource. @@ -3038,6 +3533,7 @@ export namespace artifactregistry_v1 { * // "mavenConfig": {}, * // "mode": "my_mode", * // "name": "my_name", + * // "platformLogsConfig": {}, * // "registryUri": "my_registryUri", * // "remoteRepositoryConfig": {}, * // "satisfiesPzi": false, @@ -3504,6 +4000,7 @@ export namespace artifactregistry_v1 { * // "mavenConfig": {}, * // "mode": "my_mode", * // "name": "my_name", + * // "platformLogsConfig": {}, * // "registryUri": "my_registryUri", * // "remoteRepositoryConfig": {}, * // "satisfiesPzi": false, @@ -3960,6 +4457,7 @@ export namespace artifactregistry_v1 { * // "mavenConfig": {}, * // "mode": "my_mode", * // "name": "my_name", + * // "platformLogsConfig": {}, * // "registryUri": "my_registryUri", * // "remoteRepositoryConfig": {}, * // "satisfiesPzi": false, @@ -3987,6 +4485,7 @@ export namespace artifactregistry_v1 { * // "mavenConfig": {}, * // "mode": "my_mode", * // "name": "my_name", + * // "platformLogsConfig": {}, * // "registryUri": "my_registryUri", * // "remoteRepositoryConfig": {}, * // "satisfiesPzi": false, diff --git a/src/apis/artifactregistry/v1beta1.ts b/src/apis/artifactregistry/v1beta1.ts index c8123948cb2..023476b39ba 100644 --- a/src/apis/artifactregistry/v1beta1.ts +++ b/src/apis/artifactregistry/v1beta1.ts @@ -668,7 +668,7 @@ export namespace artifactregistry_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/assuredworkloads/v1.ts b/src/apis/assuredworkloads/v1.ts index 48e5575ce37..fa96a784d7b 100644 --- a/src/apis/assuredworkloads/v1.ts +++ b/src/apis/assuredworkloads/v1.ts @@ -112,6 +112,7 @@ export namespace assuredworkloads_v1 { */ export class Assuredworkloads { context: APIRequestContext; + assuredworkloads: Resource$Assuredworkloads; organizations: Resource$Organizations; constructor(options: GlobalOptions, google?: GoogleConfigurable) { @@ -120,6 +121,7 @@ export namespace assuredworkloads_v1 { google, }; + this.assuredworkloads = new Resource$Assuredworkloads(this.context); this.organizations = new Resource$Organizations(this.context); } } @@ -193,6 +195,44 @@ export namespace assuredworkloads_v1 { */ appliedUpdate?: Schema$GoogleCloudAssuredworkloadsV1WorkloadUpdate; } + /** + * Request for archiving resource events. + */ + export interface Schema$GoogleCloudAssuredworkloadsV1ArchiveResourceEventsRequest { + /** + * Optional. Time to set as ArchiveTime in the archive table. If not provided, the current time is used. + */ + archiveTime?: string | null; + /** + * Required. The number of events to process in a single transaction batch. + */ + batchSize?: number | null; + /** + * Required. Only events with EventTime earlier than this cutoff will be archived. + */ + eventCutoffTime?: string | null; + /** + * Required. The maximum total number of events to move in this request. + */ + maxEventsMove?: number | null; + /** + * Required. The organization ID for which to archive events. + */ + organizationId?: string | null; + /** + * Required. The region of the workload(s) whose events should be archived. This is used to filter workloads based on AssurantWorkloadData.region. + */ + region?: string | null; + } + /** + * Response for archiving resource events. + */ + export interface Schema$GoogleCloudAssuredworkloadsV1ArchiveResourceEventsResponse { + /** + * The total number of events successfully moved to the archive table. + */ + movedEventsCount?: number | null; + } /** * Represents move analysis results for an asset. */ @@ -419,6 +459,44 @@ export namespace assuredworkloads_v1 { * Response for restricting the list of allowed resources. */ export interface Schema$GoogleCloudAssuredworkloadsV1RestrictAllowedResourcesResponse {} + /** + * Request for reverting archived resource events. + */ + export interface Schema$GoogleCloudAssuredworkloadsV1RevertArchivedResourceEventsRequest { + /** + * Required. Only events within this time range will be reverted. This helps prevent reverting everything when something goes wrong. + */ + archiveEndTime?: string | null; + /** + * Required. Only events within this time range will be reverted. This helps prevent reverting everything when something goes wrong. + */ + archiveStartTime?: string | null; + /** + * Required. The number of events to process in a single transaction batch. + */ + batchSize?: number | null; + /** + * Required. The maximum total number of events to move in this request. + */ + maxEventsMove?: number | null; + /** + * Required. The organization ID for which to revert events. + */ + organizationId?: string | null; + /** + * Required. The region of the workload(s) whose events should be reverted. This is used to filter workloads based on AssurantWorkloadData.region. + */ + region?: string | null; + } + /** + * Response for reverting archived resource events. + */ + export interface Schema$GoogleCloudAssuredworkloadsV1RevertArchivedResourceEventsResponse { + /** + * The total number of events successfully moved to the original table. + */ + movedEventsCount?: number | null; + } /** * The details of the update. */ @@ -659,7 +737,7 @@ export namespace assuredworkloads_v1 { */ partnerPermissions?: Schema$GoogleCloudAssuredworkloadsV1WorkloadPartnerPermissions; /** - * Optional. Billing account necessary for purchasing services from Sovereign Partners. This field is required for creating SIA/PSN/CNTXT partner workloads. The caller should have 'billing.resourceAssociations.create' IAM permission on this billing-account. The format of this string is billingAccounts/AAAAAA-BBBBBB-CCCCCC + * Optional. Billing account necessary for purchasing services from Sovereign Partners. This field is required for creating SIA/PSN/CNTXT/Telefonica partner workloads. The caller should have 'billing.resourceAssociations.create' IAM permission on this billing-account. The format of this string is billingAccounts/AAAAAA-BBBBBB-CCCCCC */ partnerServicesBillingAccount?: string | null; /** @@ -904,6 +982,342 @@ export namespace assuredworkloads_v1 { message?: string | null; } + export class Resource$Assuredworkloads { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Finds orphan ResourceEvents matching the criteria and moves them to the ArchivedResourceEvents table. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/assuredworkloads.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const assuredworkloads = google.assuredworkloads('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await assuredworkloads.assuredworkloads.archiveResourceEvents({ + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "archiveTime": "my_archiveTime", + * // "batchSize": 0, + * // "eventCutoffTime": "my_eventCutoffTime", + * // "maxEventsMove": 0, + * // "organizationId": "my_organizationId", + * // "region": "my_region" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "movedEventsCount": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + archiveResourceEvents( + params: Params$Resource$Assuredworkloads$Archiveresourceevents, + options: StreamMethodOptions + ): Promise>; + archiveResourceEvents( + params?: Params$Resource$Assuredworkloads$Archiveresourceevents, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + archiveResourceEvents( + params: Params$Resource$Assuredworkloads$Archiveresourceevents, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + archiveResourceEvents( + params: Params$Resource$Assuredworkloads$Archiveresourceevents, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + archiveResourceEvents( + params: Params$Resource$Assuredworkloads$Archiveresourceevents, + callback: BodyResponseCallback + ): void; + archiveResourceEvents( + callback: BodyResponseCallback + ): void; + archiveResourceEvents( + paramsOrCallback?: + | Params$Resource$Assuredworkloads$Archiveresourceevents + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Assuredworkloads$Archiveresourceevents; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Assuredworkloads$Archiveresourceevents; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://assuredworkloads.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1/assuredworkloads:archiveResourceEvents' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Finds matching ArchivedResourceEvents and moves them back to the ResourceEvents table. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/assuredworkloads.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const assuredworkloads = google.assuredworkloads('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await assuredworkloads.assuredworkloads.revertArchivedResourceEvents({ + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "archiveEndTime": "my_archiveEndTime", + * // "archiveStartTime": "my_archiveStartTime", + * // "batchSize": 0, + * // "maxEventsMove": 0, + * // "organizationId": "my_organizationId", + * // "region": "my_region" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "movedEventsCount": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + revertArchivedResourceEvents( + params: Params$Resource$Assuredworkloads$Revertarchivedresourceevents, + options: StreamMethodOptions + ): Promise>; + revertArchivedResourceEvents( + params?: Params$Resource$Assuredworkloads$Revertarchivedresourceevents, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + revertArchivedResourceEvents( + params: Params$Resource$Assuredworkloads$Revertarchivedresourceevents, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + revertArchivedResourceEvents( + params: Params$Resource$Assuredworkloads$Revertarchivedresourceevents, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + revertArchivedResourceEvents( + params: Params$Resource$Assuredworkloads$Revertarchivedresourceevents, + callback: BodyResponseCallback + ): void; + revertArchivedResourceEvents( + callback: BodyResponseCallback + ): void; + revertArchivedResourceEvents( + paramsOrCallback?: + | Params$Resource$Assuredworkloads$Revertarchivedresourceevents + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Assuredworkloads$Revertarchivedresourceevents; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Assuredworkloads$Revertarchivedresourceevents; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://assuredworkloads.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1/assuredworkloads:revertArchivedResourceEvents' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Assuredworkloads$Archiveresourceevents extends StandardParameters { + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAssuredworkloadsV1ArchiveResourceEventsRequest; + } + export interface Params$Resource$Assuredworkloads$Revertarchivedresourceevents extends StandardParameters { + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAssuredworkloadsV1RevertArchivedResourceEventsRequest; + } + export class Resource$Organizations { context: APIRequestContext; locations: Resource$Organizations$Locations; diff --git a/src/apis/assuredworkloads/v1beta1.ts b/src/apis/assuredworkloads/v1beta1.ts index db03487971a..50351a9f7fe 100644 --- a/src/apis/assuredworkloads/v1beta1.ts +++ b/src/apis/assuredworkloads/v1beta1.ts @@ -112,6 +112,7 @@ export namespace assuredworkloads_v1beta1 { */ export class Assuredworkloads { context: APIRequestContext; + assuredworkloads: Resource$Assuredworkloads; organizations: Resource$Organizations; constructor(options: GlobalOptions, google?: GoogleConfigurable) { @@ -120,6 +121,7 @@ export namespace assuredworkloads_v1beta1 { google, }; + this.assuredworkloads = new Resource$Assuredworkloads(this.context); this.organizations = new Resource$Organizations(this.context); } } @@ -193,6 +195,44 @@ export namespace assuredworkloads_v1beta1 { */ appliedUpdate?: Schema$GoogleCloudAssuredworkloadsV1beta1WorkloadUpdate; } + /** + * Request for archiving resource events. + */ + export interface Schema$GoogleCloudAssuredworkloadsV1beta1ArchiveResourceEventsRequest { + /** + * Optional. Time to set as ArchiveTime in the archive table. If not provided, the current time is used. + */ + archiveTime?: string | null; + /** + * Required. The number of events to process in a single transaction batch. + */ + batchSize?: number | null; + /** + * Required. Only events with EventTime earlier than this cutoff will be archived. + */ + eventCutoffTime?: string | null; + /** + * Required. The maximum total number of events to move in this request. + */ + maxEventsMove?: number | null; + /** + * Required. The organization ID for which to archive events. + */ + organizationId?: string | null; + /** + * Required. The region of the workload(s) whose events should be archived. This is used to filter workloads based on AssurantWorkloadData.region. + */ + region?: string | null; + } + /** + * Response for archiving resource events. + */ + export interface Schema$GoogleCloudAssuredworkloadsV1beta1ArchiveResourceEventsResponse { + /** + * The total number of events successfully moved to the archive table. + */ + movedEventsCount?: number | null; + } /** * Represents move analysis results for an asset. */ @@ -406,6 +446,44 @@ export namespace assuredworkloads_v1beta1 { * Response for restricting the list of allowed resources. */ export interface Schema$GoogleCloudAssuredworkloadsV1beta1RestrictAllowedResourcesResponse {} + /** + * Request for reverting archived resource events. + */ + export interface Schema$GoogleCloudAssuredworkloadsV1beta1RevertArchivedResourceEventsRequest { + /** + * Required. Only events within this time range will be reverted. This helps prevent reverting everything when something goes wrong. + */ + archiveEndTime?: string | null; + /** + * Required. Only events within this time range will be reverted. This helps prevent reverting everything when something goes wrong. + */ + archiveStartTime?: string | null; + /** + * Required. The number of events to process in a single transaction batch. + */ + batchSize?: number | null; + /** + * Required. The maximum total number of events to move in this request. + */ + maxEventsMove?: number | null; + /** + * Required. The organization ID for which to revert events. + */ + organizationId?: string | null; + /** + * Required. The region of the workload(s) whose events should be reverted. This is used to filter workloads based on AssurantWorkloadData.region. + */ + region?: string | null; + } + /** + * Response for reverting archived resource events. + */ + export interface Schema$GoogleCloudAssuredworkloadsV1beta1RevertArchivedResourceEventsResponse { + /** + * The total number of events successfully moved to the original table. + */ + movedEventsCount?: number | null; + } /** * The details of the update. */ @@ -670,7 +748,7 @@ export namespace assuredworkloads_v1beta1 { */ partnerPermissions?: Schema$GoogleCloudAssuredworkloadsV1beta1WorkloadPartnerPermissions; /** - * Optional. Billing account necessary for purchasing services from Sovereign Partners. This field is required for creating SIA/PSN/CNTXT partner workloads. The caller should have 'billing.resourceAssociations.create' IAM permission on this billing-account. The format of this string is billingAccounts/AAAAAA-BBBBBB-CCCCCC + * Optional. Billing account necessary for purchasing services from Sovereign Partners. This field is required for creating SIA/PSN/CNTXT/Telefonica partner workloads. The caller should have 'billing.resourceAssociations.create' IAM permission on this billing-account. The format of this string is billingAccounts/AAAAAA-BBBBBB-CCCCCC */ partnerServicesBillingAccount?: string | null; /** @@ -951,6 +1029,342 @@ export namespace assuredworkloads_v1beta1 { message?: string | null; } + export class Resource$Assuredworkloads { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Finds orphan ResourceEvents matching the criteria and moves them to the ArchivedResourceEvents table. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/assuredworkloads.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const assuredworkloads = google.assuredworkloads('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await assuredworkloads.assuredworkloads.archiveResourceEvents({ + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "archiveTime": "my_archiveTime", + * // "batchSize": 0, + * // "eventCutoffTime": "my_eventCutoffTime", + * // "maxEventsMove": 0, + * // "organizationId": "my_organizationId", + * // "region": "my_region" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "movedEventsCount": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + archiveResourceEvents( + params: Params$Resource$Assuredworkloads$Archiveresourceevents, + options: StreamMethodOptions + ): Promise>; + archiveResourceEvents( + params?: Params$Resource$Assuredworkloads$Archiveresourceevents, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + archiveResourceEvents( + params: Params$Resource$Assuredworkloads$Archiveresourceevents, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + archiveResourceEvents( + params: Params$Resource$Assuredworkloads$Archiveresourceevents, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + archiveResourceEvents( + params: Params$Resource$Assuredworkloads$Archiveresourceevents, + callback: BodyResponseCallback + ): void; + archiveResourceEvents( + callback: BodyResponseCallback + ): void; + archiveResourceEvents( + paramsOrCallback?: + | Params$Resource$Assuredworkloads$Archiveresourceevents + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Assuredworkloads$Archiveresourceevents; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Assuredworkloads$Archiveresourceevents; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://assuredworkloads.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1beta1/assuredworkloads:archiveResourceEvents' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Finds matching ArchivedResourceEvents and moves them back to the ResourceEvents table. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/assuredworkloads.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const assuredworkloads = google.assuredworkloads('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await assuredworkloads.assuredworkloads.revertArchivedResourceEvents({ + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "archiveEndTime": "my_archiveEndTime", + * // "archiveStartTime": "my_archiveStartTime", + * // "batchSize": 0, + * // "maxEventsMove": 0, + * // "organizationId": "my_organizationId", + * // "region": "my_region" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "movedEventsCount": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + revertArchivedResourceEvents( + params: Params$Resource$Assuredworkloads$Revertarchivedresourceevents, + options: StreamMethodOptions + ): Promise>; + revertArchivedResourceEvents( + params?: Params$Resource$Assuredworkloads$Revertarchivedresourceevents, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + revertArchivedResourceEvents( + params: Params$Resource$Assuredworkloads$Revertarchivedresourceevents, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + revertArchivedResourceEvents( + params: Params$Resource$Assuredworkloads$Revertarchivedresourceevents, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + revertArchivedResourceEvents( + params: Params$Resource$Assuredworkloads$Revertarchivedresourceevents, + callback: BodyResponseCallback + ): void; + revertArchivedResourceEvents( + callback: BodyResponseCallback + ): void; + revertArchivedResourceEvents( + paramsOrCallback?: + | Params$Resource$Assuredworkloads$Revertarchivedresourceevents + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Assuredworkloads$Revertarchivedresourceevents; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Assuredworkloads$Revertarchivedresourceevents; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://assuredworkloads.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1beta1/assuredworkloads:revertArchivedResourceEvents' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Assuredworkloads$Archiveresourceevents extends StandardParameters { + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAssuredworkloadsV1beta1ArchiveResourceEventsRequest; + } + export interface Params$Resource$Assuredworkloads$Revertarchivedresourceevents extends StandardParameters { + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudAssuredworkloadsV1beta1RevertArchivedResourceEventsRequest; + } + export class Resource$Organizations { context: APIRequestContext; locations: Resource$Organizations$Locations; diff --git a/src/apis/authorizedbuyersmarketplace/v1.ts b/src/apis/authorizedbuyersmarketplace/v1.ts index 04272b58cfb..f60ee2993ca 100644 --- a/src/apis/authorizedbuyersmarketplace/v1.ts +++ b/src/apis/authorizedbuyersmarketplace/v1.ts @@ -1528,7 +1528,7 @@ export namespace authorizedbuyersmarketplace_v1 { * * // Do the magic * const res = await authorizedbuyersmarketplace.bidders.finalizedDeals.list({ - * // Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus + * // Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus * readyToServe * filter: 'placeholder-value', * // An optional query string to sort finalized deals using the [Cloud API sorting syntax](https://cloud.google.com/apis/design/design_patterns#sorting_order). If no sort order is specified, results will be returned in an arbitrary order. Supported columns for sorting are: * deal.displayName * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * rtbMetrics.bidRequests7Days * rtbMetrics.bids7Days * rtbMetrics.adImpressions7Days * rtbMetrics.bidRate7Days * rtbMetrics.filteredBidRate7Days * rtbMetrics.mustBidRateCurrentMonth * orderBy: 'placeholder-value', @@ -1803,7 +1803,7 @@ export namespace authorizedbuyersmarketplace_v1 { export interface Params$Resource$Bidders$Finalizeddeals$List extends StandardParameters { /** - * Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus + * Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus * readyToServe */ filter?: string; /** @@ -5117,7 +5117,7 @@ export namespace authorizedbuyersmarketplace_v1 { * * // Do the magic * const res = await authorizedbuyersmarketplace.buyers.finalizedDeals.list({ - * // Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus + * // Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus * readyToServe * filter: 'placeholder-value', * // An optional query string to sort finalized deals using the [Cloud API sorting syntax](https://cloud.google.com/apis/design/design_patterns#sorting_order). If no sort order is specified, results will be returned in an arbitrary order. Supported columns for sorting are: * deal.displayName * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * rtbMetrics.bidRequests7Days * rtbMetrics.bids7Days * rtbMetrics.adImpressions7Days * rtbMetrics.bidRate7Days * rtbMetrics.filteredBidRate7Days * rtbMetrics.mustBidRateCurrentMonth * orderBy: 'placeholder-value', @@ -5705,7 +5705,7 @@ export namespace authorizedbuyersmarketplace_v1 { } export interface Params$Resource$Buyers$Finalizeddeals$List extends StandardParameters { /** - * Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus + * Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus * readyToServe */ filter?: string; /** diff --git a/src/apis/authorizedbuyersmarketplace/v1alpha.ts b/src/apis/authorizedbuyersmarketplace/v1alpha.ts index b807817cad5..020f08f1c46 100644 --- a/src/apis/authorizedbuyersmarketplace/v1alpha.ts +++ b/src/apis/authorizedbuyersmarketplace/v1alpha.ts @@ -1876,7 +1876,7 @@ export namespace authorizedbuyersmarketplace_v1alpha { * * // Do the magic * const res = await authorizedbuyersmarketplace.bidders.finalizedDeals.list({ - * // Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus + * // Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus * readyToServe * filter: 'placeholder-value', * // An optional query string to sort finalized deals using the [Cloud API sorting syntax](https://cloud.google.com/apis/design/design_patterns#sorting_order). If no sort order is specified, results will be returned in an arbitrary order. Supported columns for sorting are: * deal.displayName * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * rtbMetrics.bidRequests7Days * rtbMetrics.bids7Days * rtbMetrics.adImpressions7Days * rtbMetrics.bidRate7Days * rtbMetrics.filteredBidRate7Days * rtbMetrics.mustBidRateCurrentMonth * orderBy: 'placeholder-value', @@ -2152,7 +2152,7 @@ export namespace authorizedbuyersmarketplace_v1alpha { export interface Params$Resource$Bidders$Finalizeddeals$List extends StandardParameters { /** - * Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus + * Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus * readyToServe */ filter?: string; /** @@ -6462,7 +6462,7 @@ export namespace authorizedbuyersmarketplace_v1alpha { * * // Do the magic * const res = await authorizedbuyersmarketplace.buyers.finalizedDeals.list({ - * // Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus + * // Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus * readyToServe * filter: 'placeholder-value', * // An optional query string to sort finalized deals using the [Cloud API sorting syntax](https://cloud.google.com/apis/design/design_patterns#sorting_order). If no sort order is specified, results will be returned in an arbitrary order. Supported columns for sorting are: * deal.displayName * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * rtbMetrics.bidRequests7Days * rtbMetrics.bids7Days * rtbMetrics.adImpressions7Days * rtbMetrics.bidRate7Days * rtbMetrics.filteredBidRate7Days * rtbMetrics.mustBidRateCurrentMonth * orderBy: 'placeholder-value', @@ -7059,7 +7059,7 @@ export namespace authorizedbuyersmarketplace_v1alpha { } export interface Params$Resource$Buyers$Finalizeddeals$List extends StandardParameters { /** - * Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus + * Optional query string using the [Cloud API list filtering syntax](https://developers.google.com/authorized-buyers/apis/guides/list-filters) Supported columns for filtering are: * deal.displayName * deal.dealType * deal.createTime * deal.updateTime * deal.flightStartTime * deal.flightEndTime * deal.eligibleSeatIds * dealServingStatus * readyToServe */ filter?: string; /** diff --git a/src/apis/backupdr/v1.ts b/src/apis/backupdr/v1.ts index 0f1e5c631d0..68acf66004b 100644 --- a/src/apis/backupdr/v1.ts +++ b/src/apis/backupdr/v1.ts @@ -112,6 +112,8 @@ export namespace backupdr_v1 { */ export class Backupdr { context: APIRequestContext; + folders: Resource$Folders; + organizations: Resource$Organizations; projects: Resource$Projects; constructor(options: GlobalOptions, google?: GoogleConfigurable) { @@ -120,6 +122,8 @@ export namespace backupdr_v1 { google, }; + this.folders = new Resource$Folders(this.context); + this.organizations = new Resource$Organizations(this.context); this.projects = new Resource$Projects(this.context); } } @@ -466,6 +470,10 @@ export namespace backupdr_v1 { * Optional. When this backup is automatically expired. */ expireTime?: string | null; + /** + * Output only. Filestore specific backup properties. + */ + filestoreInstanceBackupProperties?: Schema$FilestoreInstanceBackupProperties; /** * Output only. Configuration for a Google Cloud resource. */ @@ -766,6 +774,10 @@ export namespace backupdr_v1 { * Output only. The Google Cloud service account to be used by the BackupVault for taking backups. Specify the email address of the Backup Vault Service Account. */ backupVaultServiceAccount?: string | null; + /** + * Optional. Defines optional properties specific to backups of disk-based resources, such as Compute Engine. This includes settings like whether to perform a guest flush. + */ + computeInstanceBackupPlanProperties?: Schema$ComputeInstanceBackupPlanProperties; /** * Output only. When the `BackupPlan` was created. */ @@ -774,6 +786,10 @@ export namespace backupdr_v1 { * Optional. The description of the `BackupPlan` resource. The description allows for additional details about `BackupPlan` and its use cases to be provided. An example description is the following: "This is a backup plan that performs a daily backup at 6pm and retains data for 3 months". The description must be at most 2048 characters. */ description?: string | null; + /** + * Optional. Defines optional properties specific to backups of disk-based resources, such as Compute Engine Persistent Disks. This includes settings like whether to perform a guest flush. + */ + diskBackupPlanProperties?: Schema$DiskBackupPlanProperties; /** * Optional. `etag` is returned from the service in the response. As a user of the service, you may provide an etag value in this field to prevent stale resources. */ @@ -1122,6 +1138,15 @@ export namespace backupdr_v1 { */ edition?: string | null; } + /** + * --- ComputeInstanceBackupPlanProperties Message --- + */ + export interface Schema$ComputeInstanceBackupPlanProperties { + /** + * Optional. Indicates whether to perform a guest flush operation before taking a compute backup. When set to false, the system will create crash-consistent backups. Default value is false. + */ + guestFlush?: boolean | null; + } /** * ComputeInstanceBackupProperties represents Compute Engine instance backup properties. */ @@ -1142,6 +1167,10 @@ export namespace backupdr_v1 { * A list of guest accelerator cards' type and count to use for instances created from these properties. */ guestAccelerator?: Schema$AcceleratorConfig[]; + /** + * Optional. Indicates whether to perform a guest flush operation before taking a compute backup. When set to false, the system will create crash-consistent backups. Default value is false. + */ + guestFlush?: boolean | null; /** * KeyRevocationActionType of the instance. Supported options are "STOP" and "NONE". The default value is "NONE" if it is not specified. */ @@ -1479,6 +1508,10 @@ export namespace backupdr_v1 { * DiskDataSourceProperties has a subset of Disk properties that are useful at the Datasource level. */ diskDatasourceProperties?: Schema$DiskDataSourceProperties; + /** + * Output only. FilestoreInstanceDataSourceProperties has a subset of FileStore instance properties that are useful at the Datasource level. + */ + filestoreInstanceDatasourceProperties?: Schema$FilestoreInstanceDataSourceProperties; /** * Output only. Full resource pathname URL of the source Google Cloud resource. */ @@ -1504,6 +1537,10 @@ export namespace backupdr_v1 { * Output only. The properties of the Cloud SQL instance. */ cloudSqlInstanceProperties?: Schema$CloudSqlInstanceDataSourceReferenceProperties; + /** + * Output only. The properties of the Filestore instance. + */ + filestoreInstanceProperties?: Schema$FilestoreInstanceDataSourceReferenceProperties; /** * Output only. The resource name of the Google Cloud resource. Ex: projects/{project\}/zones/{zone\}/instances/{instance\} */ @@ -1554,6 +1591,15 @@ export namespace backupdr_v1 { */ totalStoredBytes?: string | null; } + /** + * --- DiskBackupPlanProperties Message --- + */ + export interface Schema$DiskBackupPlanProperties { + /** + * Optional. Indicates whether to perform a guest flush operation before taking a disk backup. When set to false, the system will create crash-consistent backups. Default value is false. + */ + guestFlush?: boolean | null; + } /** * DiskBackupProperties represents the properties of a Disk backup. */ @@ -1574,6 +1620,10 @@ export namespace backupdr_v1 { * Indicates whether the source disk is using confidential compute mode. */ enableConfidentialCompute?: boolean | null; + /** + * Optional. Defines if the guest flush is enabled for the source disk. Default value is false. + */ + guestFlush?: boolean | null; /** * A list of guest OS features that are applicable to this backup. */ @@ -1886,6 +1936,19 @@ export namespace backupdr_v1 { */ isAssuredWorkload?: boolean | null; } + /** + * Response for FetchResourceBackupConfigs. + */ + export interface Schema$FetchResourceBackupConfigsResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * The list of ResourceBackupConfigs for the specified scope. + */ + resourceBackupConfigs?: Schema$ResourceBackupConfig[]; + } /** * Response message for fetching usable BackupVaults. */ @@ -1912,6 +1975,41 @@ export namespace backupdr_v1 { */ instanceCreateTime?: string | null; } + /** + * FilestoreInstanceBackupProperties represents the properties of a Filestore instance that are backed up by the datasource. . + */ + export interface Schema$FilestoreInstanceBackupProperties { + /** + * Output only. The source instance of the backup. + */ + sourceInstance?: string | null; + } + /** + * FilestoreInstanceDataSourceProperties represents the properties of a Filestore resource that are stored in the DataSource. . + */ + export interface Schema$FilestoreInstanceDataSourceProperties { + /** + * Output only. The instance creation timestamp. + */ + instanceCreateTime?: string | null; + /** + * Output only. Name of the Filestore instance backed up by the datasource. + */ + name?: string | null; + } + /** + * FilestoreInstanceDataSourceReferenceProperties represents the properties of a Filestore resource that are stored in the DataSourceReference. . + */ + export interface Schema$FilestoreInstanceDataSourceReferenceProperties { + /** + * Output only. The instance creation timestamp. + */ + instanceCreateTime?: string | null; + /** + * Output only. Name of the Filestore instance backed up by the datasource. Format: projects/{project\}/instances/{instance\} + */ + name?: string | null; + } /** * Message for finalizing a Backup. */ @@ -2012,6 +2110,43 @@ export namespace backupdr_v1 { */ type?: string | null; } + /** + * Represents the metadata of the long-running operation. + */ + export interface Schema$GoogleCloudBackupdrV1OperationMetadata { + /** + * Output only. AdditionalInfo contains additional Info related to backup plan association resource. + */ + additionalInfo?: {[key: string]: string} | null; + /** + * 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 google.longrunning.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; + } /** * Feature type of the Guest OS. */ @@ -2054,6 +2189,10 @@ export namespace backupdr_v1 { * Required. The resource type to which the default service config will be applied. Examples include, "compute.googleapis.com/Instance" and "storage.googleapis.com/Bucket". */ resourceType?: string | null; + /** + * Optional. If set, validates the request and returns the result, but does not actually run it. + */ + validateOnly?: boolean | null; } /** * request message for InitiateBackup. @@ -2299,6 +2438,9 @@ export namespace backupdr_v1 { name?: string | null; } export interface Schema$LocationMetadata { + /** + * List of features that are not supported in the location. + */ unsupportedFeatures?: string[] | null; } /** @@ -2517,43 +2659,6 @@ export namespace backupdr_v1 { */ response?: {[key: string]: any} | null; } - /** - * Represents the metadata of the long-running operation. - */ - export interface Schema$OperationMetadata { - /** - * Output only. AdditionalInfo contains additional Info related to backup plan association resource. - */ - additionalInfo?: {[key: string]: string} | null; - /** - * 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 google.longrunning.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; - } /** * Point in time recovery settings of the backup configuration resource. */ @@ -2958,46 +3063,459 @@ export namespace backupdr_v1 { /** * Optional. backup rule_id for which a backup needs to be triggered. If not specified, on-demand backup with custom retention will be triggered. */ - ruleId?: string | null; + ruleId?: string | null; + } + /** + * `WeekDayOfMonth` defines the week day of the month on which the backups will run. The message combines a `WeekOfMonth` and `DayOfWeek` to produce values like `FIRST`/`MONDAY` or `LAST`/`FRIDAY`. + */ + export interface Schema$WeekDayOfMonth { + /** + * Required. Specifies the day of the week. + */ + dayOfWeek?: string | null; + /** + * Required. Specifies the week of the month. + */ + weekOfMonth?: string | null; + } + /** + * ManagementURI depending on the Workforce Identity i.e. either 1p or 3p. + */ + export interface Schema$WorkforceIdentityBasedManagementURI { + /** + * Output only. First party Management URI for Google Identities. + */ + firstPartyManagementUri?: string | null; + /** + * Output only. Third party Management URI for External Identity Providers. + */ + thirdPartyManagementUri?: string | null; + } + /** + * OAuth Client ID depending on the Workforce Identity i.e. either 1p or 3p, + */ + export interface Schema$WorkforceIdentityBasedOAuth2ClientID { + /** + * Output only. First party OAuth Client ID for Google Identities. + */ + firstPartyOauth2ClientId?: string | null; + /** + * Output only. Third party OAuth Client ID for External Identity Providers. + */ + thirdPartyOauth2ClientId?: string | null; + } + + export class Resource$Folders { + context: APIRequestContext; + locations: Resource$Folders$Locations; + constructor(context: APIRequestContext) { + this.context = context; + this.locations = new Resource$Folders$Locations(this.context); + } + } + + export class Resource$Folders$Locations { + context: APIRequestContext; + resourceBackupConfigs: Resource$Folders$Locations$Resourcebackupconfigs; + constructor(context: APIRequestContext) { + this.context = context; + this.resourceBackupConfigs = + new Resource$Folders$Locations$Resourcebackupconfigs(this.context); + } + } + + export class Resource$Folders$Locations$Resourcebackupconfigs { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Fetches ResourceBackupConfigs. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await backupdr.folders.locations.resourceBackupConfigs.fetch({ + * // Optional. Filtering results. + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will use 100 as default. Maximum value is 500 and values above 500 will be coerced to 500. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The project, folder or organization and location for which to retrieve resource backup configs. Format: 'projects/{project_id\}/locations/{location\}', 'folders/{folder_id\}/locations/{location\}', or 'organizations/{organization_id\}/locations/{location\}'. + * parent: 'folders/my-folder/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "resourceBackupConfigs": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + fetch( + params: Params$Resource$Folders$Locations$Resourcebackupconfigs$Fetch, + options: StreamMethodOptions + ): Promise>; + fetch( + params?: Params$Resource$Folders$Locations$Resourcebackupconfigs$Fetch, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + fetch( + params: Params$Resource$Folders$Locations$Resourcebackupconfigs$Fetch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetch( + params: Params$Resource$Folders$Locations$Resourcebackupconfigs$Fetch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetch( + params: Params$Resource$Folders$Locations$Resourcebackupconfigs$Fetch, + callback: BodyResponseCallback + ): void; + fetch( + callback: BodyResponseCallback + ): void; + fetch( + paramsOrCallback?: + | Params$Resource$Folders$Locations$Resourcebackupconfigs$Fetch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Folders$Locations$Resourcebackupconfigs$Fetch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Folders$Locations$Resourcebackupconfigs$Fetch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1/{+parent}/resourceBackupConfigs:fetch' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Folders$Locations$Resourcebackupconfigs$Fetch 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 use 100 as default. Maximum value is 500 and values above 500 will be coerced to 500. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The project, folder or organization and location for which to retrieve resource backup configs. Format: 'projects/{project_id\}/locations/{location\}', 'folders/{folder_id\}/locations/{location\}', or 'organizations/{organization_id\}/locations/{location\}'. + */ + parent?: string; + } + + export class Resource$Organizations { + context: APIRequestContext; + locations: Resource$Organizations$Locations; + constructor(context: APIRequestContext) { + this.context = context; + this.locations = new Resource$Organizations$Locations(this.context); + } + } + + export class Resource$Organizations$Locations { + context: APIRequestContext; + resourceBackupConfigs: Resource$Organizations$Locations$Resourcebackupconfigs; + constructor(context: APIRequestContext) { + this.context = context; + this.resourceBackupConfigs = + new Resource$Organizations$Locations$Resourcebackupconfigs( + this.context + ); + } + } + + export class Resource$Organizations$Locations$Resourcebackupconfigs { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Fetches ResourceBackupConfigs. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await backupdr.organizations.locations.resourceBackupConfigs.fetch({ + * // Optional. Filtering results. + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will use 100 as default. Maximum value is 500 and values above 500 will be coerced to 500. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The project, folder or organization and location for which to retrieve resource backup configs. Format: 'projects/{project_id\}/locations/{location\}', 'folders/{folder_id\}/locations/{location\}', or 'organizations/{organization_id\}/locations/{location\}'. + * parent: 'organizations/my-organization/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "resourceBackupConfigs": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + fetch( + params: Params$Resource$Organizations$Locations$Resourcebackupconfigs$Fetch, + options: StreamMethodOptions + ): Promise>; + fetch( + params?: Params$Resource$Organizations$Locations$Resourcebackupconfigs$Fetch, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + fetch( + params: Params$Resource$Organizations$Locations$Resourcebackupconfigs$Fetch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetch( + params: Params$Resource$Organizations$Locations$Resourcebackupconfigs$Fetch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetch( + params: Params$Resource$Organizations$Locations$Resourcebackupconfigs$Fetch, + callback: BodyResponseCallback + ): void; + fetch( + callback: BodyResponseCallback + ): void; + fetch( + paramsOrCallback?: + | Params$Resource$Organizations$Locations$Resourcebackupconfigs$Fetch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizations$Locations$Resourcebackupconfigs$Fetch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Organizations$Locations$Resourcebackupconfigs$Fetch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1/{+parent}/resourceBackupConfigs:fetch' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } } - /** - * `WeekDayOfMonth` defines the week day of the month on which the backups will run. The message combines a `WeekOfMonth` and `DayOfWeek` to produce values like `FIRST`/`MONDAY` or `LAST`/`FRIDAY`. - */ - export interface Schema$WeekDayOfMonth { - /** - * Required. Specifies the day of the week. - */ - dayOfWeek?: string | null; + + export interface Params$Resource$Organizations$Locations$Resourcebackupconfigs$Fetch extends StandardParameters { /** - * Required. Specifies the week of the month. + * Optional. Filtering results. */ - weekOfMonth?: string | null; - } - /** - * ManagementURI depending on the Workforce Identity i.e. either 1p or 3p. - */ - export interface Schema$WorkforceIdentityBasedManagementURI { + filter?: string; /** - * Output only. First party Management URI for Google Identities. + * Optional. Hint for how to order the results. */ - firstPartyManagementUri?: string | null; + orderBy?: string; /** - * Output only. Third party Management URI for External Identity Providers. + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will use 100 as default. Maximum value is 500 and values above 500 will be coerced to 500. */ - thirdPartyManagementUri?: string | null; - } - /** - * OAuth Client ID depending on the Workforce Identity i.e. either 1p or 3p, - */ - export interface Schema$WorkforceIdentityBasedOAuth2ClientID { + pageSize?: number; /** - * Output only. First party OAuth Client ID for Google Identities. + * Optional. A token identifying a page of results the server should return. */ - firstPartyOauth2ClientId?: string | null; + pageToken?: string; /** - * Output only. Third party OAuth Client ID for External Identity Providers. + * Required. The project, folder or organization and location for which to retrieve resource backup configs. Format: 'projects/{project_id\}/locations/{location\}', 'folders/{folder_id\}/locations/{location\}', or 'organizations/{organization_id\}/locations/{location\}'. */ - thirdPartyOauth2ClientId?: string | null; + parent?: string; } export class Resource$Projects { @@ -3322,7 +3840,7 @@ export namespace backupdr_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3352,7 +3870,7 @@ export namespace backupdr_v1 { * * // Do the magic * const res = await backupdr.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3484,7 +4002,7 @@ export namespace backupdr_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -4771,8 +5289,10 @@ export namespace backupdr_v1 { * // "backupRules": [], * // "backupVault": "my_backupVault", * // "backupVaultServiceAccount": "my_backupVaultServiceAccount", + * // "computeInstanceBackupPlanProperties": {}, * // "createTime": "my_createTime", * // "description": "my_description", + * // "diskBackupPlanProperties": {}, * // "etag": "my_etag", * // "labels": {}, * // "logRetentionDays": "my_logRetentionDays", @@ -5075,8 +5595,10 @@ export namespace backupdr_v1 { * // "backupRules": [], * // "backupVault": "my_backupVault", * // "backupVaultServiceAccount": "my_backupVaultServiceAccount", + * // "computeInstanceBackupPlanProperties": {}, * // "createTime": "my_createTime", * // "description": "my_description", + * // "diskBackupPlanProperties": {}, * // "etag": "my_etag", * // "labels": {}, * // "logRetentionDays": "my_logRetentionDays", @@ -5377,8 +5899,10 @@ export namespace backupdr_v1 { * // "backupRules": [], * // "backupVault": "my_backupVault", * // "backupVaultServiceAccount": "my_backupVaultServiceAccount", + * // "computeInstanceBackupPlanProperties": {}, * // "createTime": "my_createTime", * // "description": "my_description", + * // "diskBackupPlanProperties": {}, * // "etag": "my_etag", * // "labels": {}, * // "logRetentionDays": "my_logRetentionDays", @@ -9049,6 +9573,7 @@ export namespace backupdr_v1 { * // "enforcedRetentionEndTime": "my_enforcedRetentionEndTime", * // "etag": "my_etag", * // "expireTime": "my_expireTime", + * // "filestoreInstanceBackupProperties": {}, * // "gcpBackupPlanInfo": {}, * // "gcpResource": {}, * // "kmsKeyVersions": [], @@ -9365,6 +9890,7 @@ export namespace backupdr_v1 { * // "enforcedRetentionEndTime": "my_enforcedRetentionEndTime", * // "etag": "my_etag", * // "expireTime": "my_expireTime", + * // "filestoreInstanceBackupProperties": {}, * // "gcpBackupPlanInfo": {}, * // "gcpResource": {}, * // "kmsKeyVersions": [], @@ -12214,6 +12740,162 @@ export namespace backupdr_v1 { this.context = context; } + /** + * Fetches ResourceBackupConfigs. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await backupdr.projects.locations.resourceBackupConfigs.fetch({ + * // Optional. Filtering results. + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will use 100 as default. Maximum value is 500 and values above 500 will be coerced to 500. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The project, folder or organization and location for which to retrieve resource backup configs. Format: 'projects/{project_id\}/locations/{location\}', 'folders/{folder_id\}/locations/{location\}', or 'organizations/{organization_id\}/locations/{location\}'. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "resourceBackupConfigs": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + fetch( + params: Params$Resource$Projects$Locations$Resourcebackupconfigs$Fetch, + options: StreamMethodOptions + ): Promise>; + fetch( + params?: Params$Resource$Projects$Locations$Resourcebackupconfigs$Fetch, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + fetch( + params: Params$Resource$Projects$Locations$Resourcebackupconfigs$Fetch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetch( + params: Params$Resource$Projects$Locations$Resourcebackupconfigs$Fetch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetch( + params: Params$Resource$Projects$Locations$Resourcebackupconfigs$Fetch, + callback: BodyResponseCallback + ): void; + fetch( + callback: BodyResponseCallback + ): void; + fetch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Resourcebackupconfigs$Fetch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Resourcebackupconfigs$Fetch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Resourcebackupconfigs$Fetch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1/{+parent}/resourceBackupConfigs:fetch' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Lists ResourceBackupConfigs. * @example @@ -12372,6 +13054,28 @@ export namespace backupdr_v1 { } } + export interface Params$Resource$Projects$Locations$Resourcebackupconfigs$Fetch 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 use 100 as default. Maximum value is 500 and values above 500 will be coerced to 500. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The project, folder or organization and location for which to retrieve resource backup configs. Format: 'projects/{project_id\}/locations/{location\}', 'folders/{folder_id\}/locations/{location\}', or 'organizations/{organization_id\}/locations/{location\}'. + */ + parent?: string; + } export interface Params$Resource$Projects$Locations$Resourcebackupconfigs$List extends StandardParameters { /** * Optional. Filtering results. @@ -12442,7 +13146,8 @@ export namespace backupdr_v1 { * // "backupPlanLocation": "my_backupPlanLocation", * // "cloudSqlInstanceInitializationConfig": {}, * // "requestId": "my_requestId", - * // "resourceType": "my_resourceType" + * // "resourceType": "my_resourceType", + * // "validateOnly": false * // } * }, * }); diff --git a/src/apis/batch/v1.ts b/src/apis/batch/v1.ts index a3740652c1c..dc522f0a9bb 100644 --- a/src/apis/batch/v1.ts +++ b/src/apis/batch/v1.ts @@ -1523,7 +1523,7 @@ export namespace batch_v1 { } /** - * Lists information about the supported locations for this service. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/beyondcorp/v1.ts b/src/apis/beyondcorp/v1.ts index 95f89022444..d89737b78ce 100644 --- a/src/apis/beyondcorp/v1.ts +++ b/src/apis/beyondcorp/v1.ts @@ -337,7 +337,7 @@ export namespace beyondcorp_v1 { verb?: string | null; } /** - * A BeyondCorp AppConnection resource represents a BeyondCorp protected AppConnection to a remote application. It creates all the necessary GCP components needed for creating a BeyondCorp protected AppConnection. Multiple connectors can be authorised for a single AppConnection. + * A BeyondCorp AppConnection resource represents a BeyondCorp protected AppConnection to a remote application. It creates all the necessary GCP components needed for creating a BeyondCorp protected AppConnection. Multiple connectors can be authorized for a single AppConnection. */ export interface Schema$GoogleCloudBeyondcorpAppconnectionsV1AppConnection { /** @@ -345,7 +345,7 @@ export namespace beyondcorp_v1 { */ applicationEndpoint?: Schema$GoogleCloudBeyondcorpAppconnectionsV1AppConnectionApplicationEndpoint; /** - * Optional. List of [google.cloud.beyondcorp.v1main.Connector.name] that are authorised to be associated with this AppConnection. + * Optional. List of [google.cloud.beyondcorp.v1main.Connector.name] that are authorized to be associated with this AppConnection. */ connectors?: string[] | null; /** @@ -782,7 +782,7 @@ export namespace beyondcorp_v1 { instanceConfig?: Schema$GoogleCloudBeyondcorpAppconnectorsV1AppConnectorInstanceConfig; } /** - * ResourceInfo represents the information/status of an app connector resource. Such as: - remote_agent - container - runtime - appgateway - appconnector - appconnection - tunnel - logagent + * ResourceInfo represents the information or status of an app connector resource component that's used to report on various parts of the system. For example, ResourceInfo can be used to convey the status of a remote_agent, including the status of an appgateway for an runtime environment in a container instance. */ export interface Schema$GoogleCloudBeyondcorpAppconnectorsV1ResourceInfo { /** @@ -1236,6 +1236,10 @@ export namespace beyondcorp_v1 { */ unreachable?: string[] | null; } + /** + * Configuration for Cloud Logging. + */ + export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1LoggingConfig {} /** * The configuration for the proxy. */ @@ -1287,6 +1291,10 @@ export namespace beyondcorp_v1 { hubs?: { [key: string]: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1Hub; } | null; + /** + * Optional. Configuration for Cloud Logging. If this field is present, the logging will be enabled. + */ + logging?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1LoggingConfig; /** * Identifier. Name of the resource. */ @@ -1346,7 +1354,7 @@ export namespace beyondcorp_v1 { */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ServiceDiscovery { /** - * Required. External API configuration. + * Optional. External API configuration. */ apiGateway?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ServiceDiscoveryApiGateway; } @@ -1355,7 +1363,7 @@ export namespace beyondcorp_v1 { */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ServiceDiscoveryApiGateway { /** - * Required. Enables fetching resource model updates to alter service behavior per Chrome profile. + * Optional. Enables fetching resource model updates to alter service behavior per Chrome profile. */ resourceOverride?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ServiceDiscoveryApiGatewayOperationDescriptor; } @@ -1364,7 +1372,7 @@ export namespace beyondcorp_v1 { */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1ServiceDiscoveryApiGatewayOperationDescriptor { /** - * Required. Contains the URI path fragment where HTTP request is sent. + * Optional. Contains the URI path fragment where HTTP request is sent. */ path?: string | null; } @@ -2463,7 +2471,7 @@ export namespace beyondcorp_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2689,7 +2697,7 @@ export namespace beyondcorp_v1 { * appConnectionId: 'placeholder-value', * // Required. The resource project name of the AppConnection location using the form: `projects/{project_id\}/locations/{location_id\}` * parent: 'projects/my-project/locations/my-location', - * // 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). + * // 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 the 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: 'placeholder-value', * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. * validateOnly: 'placeholder-value', @@ -2858,7 +2866,7 @@ export namespace beyondcorp_v1 { * const res = await beyondcorp.projects.locations.appConnections.delete({ * // Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnections/{app_connection_id\}` * name: 'projects/my-project/locations/my-location/appConnections/my-appConnection', - * // 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). + * // 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 the 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: 'placeholder-value', * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. * validateOnly: 'placeholder-value', @@ -3465,7 +3473,7 @@ export namespace beyondcorp_v1 { * allowMissing: 'placeholder-value', * // Required. Unique resource name of the AppConnection. The name is ignored when creating a AppConnection. * name: 'projects/my-project/locations/my-location/appConnections/my-appConnection', - * // 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). + * // 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 the 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: 'placeholder-value', * // Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnection]: * `labels` * `display_name` * `application_endpoint` * `connectors` * updateMask: 'placeholder-value', @@ -4078,7 +4086,7 @@ export namespace beyondcorp_v1 { */ 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). + * 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 the 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; /** @@ -4097,7 +4105,7 @@ export namespace beyondcorp_v1 { */ 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). + * 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 the 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; /** @@ -4153,7 +4161,7 @@ export namespace beyondcorp_v1 { */ 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). + * 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 the 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; /** @@ -7759,6 +7767,7 @@ export namespace beyondcorp_v1 { * // "displayName": "my_displayName", * // "externalIps": [], * // "hubs": {}, + * // "logging": {}, * // "name": "my_name", * // "proxyProtocolConfig": {}, * // "serviceDiscovery": {}, @@ -8069,6 +8078,7 @@ export namespace beyondcorp_v1 { * // "displayName": "my_displayName", * // "externalIps": [], * // "hubs": {}, + * // "logging": {}, * // "name": "my_name", * // "proxyProtocolConfig": {}, * // "serviceDiscovery": {}, @@ -8531,6 +8541,7 @@ export namespace beyondcorp_v1 { * // "displayName": "my_displayName", * // "externalIps": [], * // "hubs": {}, + * // "logging": {}, * // "name": "my_name", * // "proxyProtocolConfig": {}, * // "serviceDiscovery": {}, @@ -9118,7 +9129,7 @@ export namespace beyondcorp_v1 { * // Required. The resource name of the parent SecurityGateway using the form: `projects/{project_id\}/locations/global/securityGateways/{security_gateway_id\}` * parent: * 'projects/my-project/locations/my-location/securityGateways/my-securityGateway', - * // 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 request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. + * // 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. * requestId: 'placeholder-value', * * // Request body metadata @@ -10345,7 +10356,7 @@ export namespace beyondcorp_v1 { */ 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 request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. + * 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. */ requestId?: string; diff --git a/src/apis/beyondcorp/v1alpha.ts b/src/apis/beyondcorp/v1alpha.ts index a34c10d9cfd..e892f945443 100644 --- a/src/apis/beyondcorp/v1alpha.ts +++ b/src/apis/beyondcorp/v1alpha.ts @@ -554,7 +554,7 @@ export namespace beyondcorp_v1alpha { userPort?: number | null; } /** - * A BeyondCorp AppConnection resource represents a BeyondCorp protected AppConnection to a remote application. It creates all the necessary GCP components needed for creating a BeyondCorp protected AppConnection. Multiple connectors can be authorised for a single AppConnection. + * A BeyondCorp AppConnection resource represents a BeyondCorp protected AppConnection to a remote application. It creates all the necessary GCP components needed for creating a BeyondCorp protected AppConnection. Multiple connectors can be authorized for a single AppConnection. */ export interface Schema$GoogleCloudBeyondcorpAppconnectionsV1alphaAppConnection { /** @@ -562,7 +562,7 @@ export namespace beyondcorp_v1alpha { */ applicationEndpoint?: Schema$GoogleCloudBeyondcorpAppconnectionsV1alphaAppConnectionApplicationEndpoint; /** - * Optional. List of [google.cloud.beyondcorp.v1main.Connector.name] that are authorised to be associated with this AppConnection. + * Optional. List of [google.cloud.beyondcorp.v1main.Connector.name] that are authorized to be associated with this AppConnection. */ connectors?: string[] | null; /** @@ -974,7 +974,7 @@ export namespace beyondcorp_v1alpha { instanceConfig?: Schema$GoogleCloudBeyondcorpAppconnectorsV1alphaAppConnectorInstanceConfig; } /** - * ResourceInfo represents the information/status of an app connector resource. Such as: - remote_agent - container - runtime - appgateway - appconnector - appconnection - tunnel - logagent + * ResourceInfo represents the information or status of an app connector resource component that's used to report on various parts of the system. For example, ResourceInfo can be used to convey the status of a remote_agent, including the status of an appgateway for an runtime environment in a container instance. */ export interface Schema$GoogleCloudBeyondcorpAppconnectorsV1alphaResourceInfo { /** @@ -1626,6 +1626,10 @@ export namespace beyondcorp_v1alpha { */ unreachable?: string[] | null; } + /** + * Configuration for Cloud Logging. + */ + export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaLoggingConfig {} /** * The configuration for the proxy. */ @@ -1677,6 +1681,10 @@ export namespace beyondcorp_v1alpha { hubs?: { [key: string]: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaHub; } | null; + /** + * Optional. Configuration for Cloud Logging. If this field is present, the logging will be enabled. + */ + logging?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaLoggingConfig; /** * Identifier. Name of the resource. */ @@ -1736,7 +1744,7 @@ export namespace beyondcorp_v1alpha { */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaServiceDiscovery { /** - * Required. External API configuration. + * Optional. External API configuration. */ apiGateway?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaServiceDiscoveryApiGateway; } @@ -1745,7 +1753,7 @@ export namespace beyondcorp_v1alpha { */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaServiceDiscoveryApiGateway { /** - * Required. Enables fetching resource model updates to alter service behavior per Chrome profile. + * Optional. Enables fetching resource model updates to alter service behavior per Chrome profile. */ resourceOverride?: Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaServiceDiscoveryApiGatewayOperationDescriptor; } @@ -1754,7 +1762,7 @@ export namespace beyondcorp_v1alpha { */ export interface Schema$GoogleCloudBeyondcorpSecuritygatewaysV1alphaServiceDiscoveryApiGatewayOperationDescriptor { /** - * Required. Contains the URI path fragment where HTTP request is sent. + * Optional. Contains the URI path fragment where HTTP request is sent. */ path?: string | null; } @@ -4683,7 +4691,7 @@ export namespace beyondcorp_v1alpha { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -4909,7 +4917,7 @@ export namespace beyondcorp_v1alpha { * appConnectionId: 'placeholder-value', * // Required. The resource project name of the AppConnection location using the form: `projects/{project_id\}/locations/{location_id\}` * parent: 'projects/my-project/locations/my-location', - * // 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). + * // 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 the 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: 'placeholder-value', * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. * validateOnly: 'placeholder-value', @@ -5078,7 +5086,7 @@ export namespace beyondcorp_v1alpha { * const res = await beyondcorp.projects.locations.appConnections.delete({ * // Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnections/{app_connection_id\}` * name: 'projects/my-project/locations/my-location/appConnections/my-appConnection', - * // 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). + * // 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 the 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: 'placeholder-value', * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. * validateOnly: 'placeholder-value', @@ -5685,7 +5693,7 @@ export namespace beyondcorp_v1alpha { * allowMissing: 'placeholder-value', * // Required. Unique resource name of the AppConnection. The name is ignored when creating a AppConnection. * name: 'projects/my-project/locations/my-location/appConnections/my-appConnection', - * // 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). + * // 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 the 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: 'placeholder-value', * // Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnection]: * `labels` * `display_name` * `application_endpoint` * `connectors` * updateMask: 'placeholder-value', @@ -6297,7 +6305,7 @@ export namespace beyondcorp_v1alpha { */ 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). + * 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 the 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; /** @@ -6316,7 +6324,7 @@ export namespace beyondcorp_v1alpha { */ 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). + * 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 the 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; /** @@ -6372,7 +6380,7 @@ export namespace beyondcorp_v1alpha { */ 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). + * 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 the 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; /** @@ -14422,6 +14430,7 @@ export namespace beyondcorp_v1alpha { * // "displayName": "my_displayName", * // "externalIps": [], * // "hubs": {}, + * // "logging": {}, * // "name": "my_name", * // "proxyProtocolConfig": {}, * // "serviceDiscovery": {}, @@ -14732,6 +14741,7 @@ export namespace beyondcorp_v1alpha { * // "displayName": "my_displayName", * // "externalIps": [], * // "hubs": {}, + * // "logging": {}, * // "name": "my_name", * // "proxyProtocolConfig": {}, * // "serviceDiscovery": {}, @@ -15194,6 +15204,7 @@ export namespace beyondcorp_v1alpha { * // "displayName": "my_displayName", * // "externalIps": [], * // "hubs": {}, + * // "logging": {}, * // "name": "my_name", * // "proxyProtocolConfig": {}, * // "serviceDiscovery": {}, @@ -15781,7 +15792,7 @@ export namespace beyondcorp_v1alpha { * // Required. The resource name of the parent SecurityGateway using the form: `projects/{project_id\}/locations/global/securityGateways/{security_gateway_id\}` * parent: * 'projects/my-project/locations/my-location/securityGateways/my-securityGateway', - * // 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 request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. + * // 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. * requestId: 'placeholder-value', * * // Request body metadata @@ -17008,7 +17019,7 @@ export namespace beyondcorp_v1alpha { */ 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 request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. + * 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. */ requestId?: string; diff --git a/src/apis/bigquery/v2.ts b/src/apis/bigquery/v2.ts index 10d58cbed0a..2ba5c7171dd 100644 --- a/src/apis/bigquery/v2.ts +++ b/src/apis/bigquery/v2.ts @@ -938,6 +938,10 @@ export namespace bigquery_v2 { userByEmail?: string; view?: Schema$TableReference; }> | null; + /** + * Output only. The origin of the dataset, one of: * (Unset) - Native BigQuery Dataset * BIGLAKE - Dataset is backed by a namespace stored natively in Biglake + */ + catalogSource?: string | null; /** * Output only. The time when this dataset was created, in milliseconds since the epoch. */ @@ -1051,7 +1055,7 @@ export namespace bigquery_v2 { */ tags?: Array<{tagKey?: string; tagValue?: string}> | null; /** - * Output only. Same as `type` in `ListFormatDataset`. The type of the dataset, one of: * DEFAULT - only accessible by owner and authorized accounts, * PUBLIC - accessible by everyone, * LINKED - linked dataset, * EXTERNAL - dataset with definition in external metadata catalog. + * Output only. Same as `type` in `ListFormatDataset`. The type of the dataset, one of: * DEFAULT - only accessible by owner and authorized accounts, * PUBLIC - accessible by everyone, * LINKED - linked dataset, * EXTERNAL - dataset with definition in external metadata catalog, * BIGLAKE_ICEBERG - a Biglake dataset accessible through the Iceberg API, * BIGLAKE_HIVE - a Biglake dataset accessible through the Hive API. */ type?: string | null; } @@ -1076,6 +1080,7 @@ export namespace bigquery_v2 { * An array of the dataset resources in the project. Each resource contains basic information. For full information about a particular dataset resource, use the Datasets: get method. This property is omitted when there are no datasets in the project. */ datasets?: Array<{ + catalogSource?: string; datasetReference?: Schema$DatasetReference; externalDatasetReference?: Schema$ExternalDatasetReference; friendlyName?: string; @@ -1083,6 +1088,7 @@ export namespace bigquery_v2 { kind?: string; labels?: {[key: string]: string}; location?: string; + type?: string; }> | null; /** * Output only. A hash value of the results page. You can use this property to determine if the page has changed since the last request. @@ -1206,6 +1212,14 @@ export namespace bigquery_v2 { * Output only. Number of deleted Rows. populated by DML DELETE, MERGE and TRUNCATE statements. */ deletedRowCount?: string | null; + /** + * Output only. DML mode used. + */ + dmlMode?: string | null; + /** + * Output only. Reason for disabling fine-grained DML if applicable. + */ + fineGrainedDmlUnusedReason?: string | null; /** * Output only. Number of inserted Rows. Populated by DML INSERT and MERGE statements */ @@ -1647,7 +1661,7 @@ export namespace bigquery_v2 { */ timestampFormat?: string | null; /** - * Precisions (maximum number of total digits in base 10) for seconds of TIMESTAMP types that are allowed to the destination table for autodetection mode. Available for the formats: CSV. For the CSV Format, Possible values include: Not Specified, [], or [6]: timestamp(6) for all auto detected TIMESTAMP columns [6, 12]: timestamp(6) for all auto detected TIMESTAMP columns that have less than 6 digits of subseconds. timestamp(12) for all auto detected TIMESTAMP columns that have more than 6 digits of subseconds. [12]: timestamp(12) for all auto detected TIMESTAMP columns. The order of the elements in this array is ignored. Inputs that have higher precision than the highest target precision in this array will be truncated. + * Precisions (maximum number of total digits in base 10) for seconds of TIMESTAMP types that are allowed to the destination table for autodetection mode. Available for the formats: CSV, PARQUET, and AVRO. Possible values include: Not Specified, [], or [6]: timestamp(6) for all auto detected TIMESTAMP columns [6, 12]: timestamp(6) for all auto detected TIMESTAMP columns that have less than 6 digits of subseconds. timestamp(12) for all auto detected TIMESTAMP columns that have more than 6 digits of subseconds. [12]: timestamp(12) for all auto detected TIMESTAMP columns. The order of the elements in this array is ignored. Inputs that have higher precision than the highest target precision in this array will be truncated. */ timestampTargetPrecision?: number[] | null; /** @@ -1761,6 +1775,109 @@ export namespace bigquery_v2 { */ query?: string | null; } + /** + * Provides error statistics for the query job across all AI function calls. + */ + export interface Schema$GenAiErrorStats { + /** + * A list of unique errors at query level (up to 5, truncated to 100 chars) + */ + errors?: string[] | null; + } + /** + * Provides cost optimization statistics for a GenAi function call. + */ + export interface Schema$GenAiFunctionCostOptimizationStats { + /** + * System generated message to provide insights into cost optimization state. + */ + message?: string | null; + /** + * Number of rows inferred via cost optimized workflow. + */ + numCostOptimizedRows?: string | null; + } + /** + * Provides error statistics for a GenAi function call. + */ + export interface Schema$GenAiFunctionErrorStats { + /** + * A list of unique errors at function level (up to 5, truncated to 100 chars). + */ + errors?: string[] | null; + /** + * Number of failed rows processed by the function + */ + numFailedRows?: string | null; + } + /** + * Provides statistics for each Ai function call within a query. + */ + export interface Schema$GenAiFunctionStats { + /** + * Cost optimization stats if applied on the rows processed by the function. + */ + costOptimizationStats?: Schema$GenAiFunctionCostOptimizationStats; + /** + * Error stats for the function. + */ + errorStats?: Schema$GenAiFunctionErrorStats; + /** + * Name of the function. + */ + functionName?: string | null; + /** + * Number of rows processed by this GenAi function. This includes all cost_optimized, llm_inferred and failed_rows. + */ + numProcessedRows?: string | null; + /** + * User input prompt of the function (truncated to 20 chars). + */ + prompt?: string | null; + } + /** + * GenAi stats for the query job. + */ + export interface Schema$GenAiStats { + /** + * Job level error stats across all GenAi functions + */ + errorStats?: Schema$GenAiErrorStats; + /** + * Function level stats for GenAi Functions. See https://docs.cloud.google.com/bigquery/docs/generative-ai-overview + */ + functionStats?: Schema$GenAiFunctionStats[]; + } + /** + * Optional. Definition of how values are generated for the field. Only valid for top-level schema fields (not nested fields). + */ + export interface Schema$GeneratedColumn { + /** + * Definition of the expression used to generate the field. + */ + generatedExpressionInfo?: Schema$GeneratedExpressionInfo; + /** + * Optional. Dictates when system generated values are used to populate the field. + */ + generatedMode?: string | null; + } + /** + * Definition of the expression used to generate the field. + */ + export interface Schema$GeneratedExpressionInfo { + /** + * Optional. Whether the column generation is done asynchronously. + */ + asynchronous?: boolean | null; + /** + * Optional. The generation expression (e.g. AI.EMBED(...)) used to generated the field. + */ + generationExpression?: string | null; + /** + * Optional. Whether the generated column is stored in the table. + */ + stored?: boolean | null; + } /** * Request message for `GetIamPolicy` method. */ @@ -2540,7 +2657,7 @@ export namespace bigquery_v2 { */ timestampFormat?: string | null; /** - * Precisions (maximum number of total digits in base 10) for seconds of TIMESTAMP types that are allowed to the destination table for autodetection mode. Available for the formats: CSV. For the CSV Format, Possible values include: Not Specified, [], or [6]: timestamp(6) for all auto detected TIMESTAMP columns [6, 12]: timestamp(6) for all auto detected TIMESTAMP columns that have less than 6 digits of subseconds. timestamp(12) for all auto detected TIMESTAMP columns that have more than 6 digits of subseconds. [12]: timestamp(12) for all auto detected TIMESTAMP columns. The order of the elements in this array is ignored. Inputs that have higher precision than the highest target precision in this array will be truncated. + * Precisions (maximum number of total digits in base 10) for seconds of TIMESTAMP types that are allowed to the destination table for autodetection mode. Available for the formats: CSV, PARQUET, and AVRO. Possible values include: Not Specified, [], or [6]: timestamp(6) for all auto detected TIMESTAMP columns [6, 12]: timestamp(6) for all auto detected TIMESTAMP columns that have less than 6 digits of subseconds. timestamp(12) for all auto detected TIMESTAMP columns that have more than 6 digits of subseconds. [12]: timestamp(12) for all auto detected TIMESTAMP columns. The order of the elements in this array is ignored. Inputs that have higher precision than the highest target precision in this array will be truncated. */ timestampTargetPrecision?: number[] | null; /** @@ -2941,6 +3058,10 @@ export namespace bigquery_v2 { * Output only. Job cost breakdown as bigquery internal cost and external service costs. */ externalServiceCosts?: Schema$ExternalServiceCost[]; + /** + * Output only. Statistics related to GenAI usage in the query. + */ + genAiStats?: Schema$GenAiStats; /** * Output only. Statistics related to incremental query results, if enabled for the query. This feature is not yet available. */ @@ -2989,6 +3110,10 @@ export namespace bigquery_v2 { * Output only. Describes execution plan for the query. */ queryPlan?: Schema$ExplainQueryStage[]; + /** + * Output only. Referenced property graphs for the job. Queries that reference more than 50 property graphs will not have a complete list. + */ + referencedPropertyGraphs?: Schema$PropertyGraphReference[]; /** * Output only. Referenced routines for the job. */ @@ -3635,7 +3760,7 @@ export namespace bigquery_v2 { */ nextPageToken?: string | null; /** - * Projects to which the user has at least READ access. + * Projects to which the user has at least READ access. This field can be omitted if `totalItems` is 0. */ projects?: Array<{ friendlyName?: string; @@ -3658,6 +3783,23 @@ export namespace bigquery_v2 { */ projectId?: string | null; } + /** + * Id path of a property graph. + */ + export interface Schema$PropertyGraphReference { + /** + * Required. The ID of the dataset containing this property graph. + */ + datasetId?: string | null; + /** + * Required. The ID of the project containing this property graph. + */ + projectId?: string | null; + /** + * Required. The ID of the property graph. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters. + */ + propertyGraphId?: string | null; + } /** * The column metadata index pruning statistics. */ @@ -4121,6 +4263,10 @@ export namespace bigquery_v2 { * Optional. */ arguments?: Schema$Argument[]; + /** + * Output only. The build status of the routine. This field is only applicable to Python UDFs. [Preview](https://cloud.google.com/products/#product-launch-stages) + */ + buildStatus?: Schema$RoutineBuildStatus; /** * Output only. The time when this routine was created, in milliseconds since the epoch. */ @@ -4198,6 +4344,31 @@ export namespace bigquery_v2 { */ strictMode?: boolean | null; } + /** + * The status of a routine build. + */ + export interface Schema$RoutineBuildStatus { + /** + * Output only. The time taken for the image build. Populated only after the build succeeds or fails. + */ + buildDuration?: string | null; + /** + * Output only. The current build state of the routine. + */ + buildState?: string | null; + /** + * Output only. The time when the build state was updated last. + */ + buildStateUpdateTime?: string | null; + /** + * Output only. A result object that will be present only if the build has failed. + */ + errorResult?: Schema$ErrorProto; + /** + * Output only. The size of the image in bytes. Populated only after the build succeeds. + */ + imageSizeBytes?: string | null; + } /** * Id path of a routine. */ @@ -5026,6 +5197,10 @@ export namespace bigquery_v2 { * Optional. Definition of the foreign data type. Only valid for top-level schema fields (not nested fields). If the type is FOREIGN, this field is required. */ foreignTypeDefinition?: string | null; + /** + * Optional. Definition of how values are generated for the field. Only valid for top-level schema fields (not nested fields). + */ + generatedColumn?: Schema$GeneratedColumn; /** * Optional. Maximum length of values of this field for STRINGS or BYTES. If max_length is not specified, no maximum length constraint is imposed on this field. If type = "STRING", then max_length represents the maximum UTF-8 length of strings in this field. If type = "BYTES", then max_length represents the maximum number of bytes in this field. It is invalid to set this field if type ≠ "STRING" and ≠ "BYTES". */ @@ -5969,6 +6144,7 @@ export namespace bigquery_v2 { * // Example response * // { * // "access": [], + * // "catalogSource": "my_catalogSource", * // "creationTime": "my_creationTime", * // "datasetReference": {}, * // "defaultCollation": "my_defaultCollation", @@ -6139,6 +6315,7 @@ export namespace bigquery_v2 { * // request body parameters * // { * // "access": [], + * // "catalogSource": "my_catalogSource", * // "creationTime": "my_creationTime", * // "datasetReference": {}, * // "defaultCollation": "my_defaultCollation", @@ -6176,6 +6353,7 @@ export namespace bigquery_v2 { * // Example response * // { * // "access": [], + * // "catalogSource": "my_catalogSource", * // "creationTime": "my_creationTime", * // "datasetReference": {}, * // "defaultCollation": "my_defaultCollation", @@ -6500,6 +6678,7 @@ export namespace bigquery_v2 { * // request body parameters * // { * // "access": [], + * // "catalogSource": "my_catalogSource", * // "creationTime": "my_creationTime", * // "datasetReference": {}, * // "defaultCollation": "my_defaultCollation", @@ -6537,6 +6716,7 @@ export namespace bigquery_v2 { * // Example response * // { * // "access": [], + * // "catalogSource": "my_catalogSource", * // "creationTime": "my_creationTime", * // "datasetReference": {}, * // "defaultCollation": "my_defaultCollation", @@ -6715,6 +6895,7 @@ export namespace bigquery_v2 { * // Example response * // { * // "access": [], + * // "catalogSource": "my_catalogSource", * // "creationTime": "my_creationTime", * // "datasetReference": {}, * // "defaultCollation": "my_defaultCollation", @@ -6890,6 +7071,7 @@ export namespace bigquery_v2 { * // request body parameters * // { * // "access": [], + * // "catalogSource": "my_catalogSource", * // "creationTime": "my_creationTime", * // "datasetReference": {}, * // "defaultCollation": "my_defaultCollation", @@ -6927,6 +7109,7 @@ export namespace bigquery_v2 { * // Example response * // { * // "access": [], + * // "catalogSource": "my_catalogSource", * // "creationTime": "my_creationTime", * // "datasetReference": {}, * // "defaultCollation": "my_defaultCollation", @@ -9697,6 +9880,7 @@ export namespace bigquery_v2 { * // Example response * // { * // "arguments": [], + * // "buildStatus": {}, * // "creationTime": "my_creationTime", * // "dataGovernanceType": "my_dataGovernanceType", * // "definitionBody": "my_definitionBody", @@ -10009,6 +10193,7 @@ export namespace bigquery_v2 { * // request body parameters * // { * // "arguments": [], + * // "buildStatus": {}, * // "creationTime": "my_creationTime", * // "dataGovernanceType": "my_dataGovernanceType", * // "definitionBody": "my_definitionBody", @@ -10036,6 +10221,7 @@ export namespace bigquery_v2 { * // Example response * // { * // "arguments": [], + * // "buildStatus": {}, * // "creationTime": "my_creationTime", * // "dataGovernanceType": "my_dataGovernanceType", * // "definitionBody": "my_definitionBody", @@ -10655,6 +10841,7 @@ export namespace bigquery_v2 { * // request body parameters * // { * // "arguments": [], + * // "buildStatus": {}, * // "creationTime": "my_creationTime", * // "dataGovernanceType": "my_dataGovernanceType", * // "definitionBody": "my_definitionBody", @@ -10682,6 +10869,7 @@ export namespace bigquery_v2 { * // Example response * // { * // "arguments": [], + * // "buildStatus": {}, * // "creationTime": "my_creationTime", * // "dataGovernanceType": "my_dataGovernanceType", * // "definitionBody": "my_definitionBody", diff --git a/src/apis/bigquerydatatransfer/v1.ts b/src/apis/bigquerydatatransfer/v1.ts index 11131978748..7f41e1a69fa 100644 --- a/src/apis/bigquerydatatransfer/v1.ts +++ b/src/apis/bigquerydatatransfer/v1.ts @@ -327,6 +327,19 @@ export namespace bigquerydatatransfer_v1 { */ pubsubSubscription?: string | null; } + /** + * Details about the hierarchy. + */ + export interface Schema$HierarchyDetail { + /** + * Optional. Partition details related to hierarchy. + */ + partitionDetail?: Schema$PartitionDetail; + /** + * Optional. Table details related to hierarchy. + */ + tableDetail?: Schema$TableDetail; + } /** * Returns list of supported data sources and their metadata. */ @@ -379,6 +392,19 @@ export namespace bigquerydatatransfer_v1 { */ transferMessages?: Schema$TransferMessage[]; } + /** + * Response for the `ListTransferResources` RPC. + */ + export interface Schema$ListTransferResourcesResponse { + /** + * Output only. A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * Output only. The transfer resources. + */ + transferResources?: Schema$TransferResource[]; + } /** * The returned list of pipelines in the project. */ @@ -421,6 +447,15 @@ export namespace bigquerydatatransfer_v1 { * Options customizing manual transfers schedule. */ export interface Schema$ManualSchedule {} + /** + * Partition details related to hierarchy. + */ + export interface Schema$PartitionDetail { + /** + * Optional. Name of the table which has the partitions. + */ + table?: string | null; + } /** * Options customizing the data transfer schedule. */ @@ -516,6 +551,15 @@ export namespace bigquerydatatransfer_v1 { */ message?: string | null; } + /** + * Table details related to hierarchy. + */ + export interface Schema$TableDetail { + /** + * Optional. Total number of partitions being tracked within the table. + */ + partitionCount?: string | null; + } /** * Options customizing the time based transfer schedule. Options are migrated from the original ScheduleOptions message. */ @@ -652,6 +696,64 @@ export namespace bigquerydatatransfer_v1 { */ severity?: string | null; } + /** + * Resource (table/partition) that is being transferred. + */ + export interface Schema$TransferResource { + /** + * Optional. Resource destination. + */ + destination?: string | null; + /** + * Optional. Details about the hierarchy. + */ + hierarchyDetail?: Schema$HierarchyDetail; + /** + * Output only. Run details for the last successful run. + */ + lastSuccessfulRun?: Schema$TransferRunBrief; + /** + * Optional. Run details for the latest run. + */ + latestRun?: Schema$TransferRunBrief; + /** + * Optional. Status details for the latest run. + */ + latestStatusDetail?: Schema$TransferResourceStatusDetail; + /** + * Identifier. Resource name. + */ + name?: string | null; + /** + * Optional. Resource type. + */ + type?: string | null; + /** + * Output only. Time when the resource was last updated. + */ + updateTime?: string | null; + } + /** + * Status details of the resource being transferred. + */ + export interface Schema$TransferResourceStatusDetail { + /** + * Output only. Percentage of the transfer completed. Valid values: 0-100. + */ + completedPercentage?: number | null; + /** + * Optional. Transfer error details for the resource. + */ + error?: Schema$Status; + /** + * Optional. Transfer state of the resource. + */ + state?: string | null; + /** + * Optional. Transfer status summary of the resource. + */ + summary?: Schema$TransferStatusSummary; + } /** * Represents a data transfer run. */ @@ -717,6 +819,57 @@ export namespace bigquerydatatransfer_v1 { */ userId?: string | null; } + /** + * Basic information about a transfer run. + */ + export interface Schema$TransferRunBrief { + /** + * Optional. Run URI. The format must be: `projects/{project\}/locations/{location\}/transferConfigs/{transfer_config\}/run/{run\}` + */ + run?: string | null; + /** + * Optional. Start time of the transfer run. + */ + startTime?: string | null; + } + /** + * Metrics for tracking the transfer status. + */ + export interface Schema$TransferStatusMetric { + /** + * Optional. Number of units transferred successfully. + */ + completed?: string | null; + /** + * Optional. Number of units that failed to transfer. + */ + failed?: string | null; + /** + * Optional. Number of units pending transfer. + */ + pending?: string | null; + /** + * Optional. Total number of units for the transfer. + */ + total?: string | null; + /** + * Optional. Unit for measuring progress (e.g., BYTES). + */ + unit?: string | null; + } + /** + * Status summary of the resource being transferred. + */ + export interface Schema$TransferStatusSummary { + /** + * Optional. List of transfer status metrics. + */ + metrics?: Schema$TransferStatusMetric[]; + /** + * Input only. Unit based on which transfer status progress should be calculated. + */ + progressUnit?: string | null; + } /** * A request to unenroll a set of data sources so they are no longer visible in the BigQuery UI's `Transfer` tab. */ @@ -1711,7 +1864,7 @@ export namespace bigquerydatatransfer_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1745,7 +1898,7 @@ export namespace bigquerydatatransfer_v1 { * * // Do the magic * const res = await bigquerydatatransfer.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2032,7 +2185,7 @@ export namespace bigquerydatatransfer_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -2565,11 +2718,16 @@ export namespace bigquerydatatransfer_v1 { export class Resource$Projects$Locations$Transferconfigs { context: APIRequestContext; runs: Resource$Projects$Locations$Transferconfigs$Runs; + transferResources: Resource$Projects$Locations$Transferconfigs$Transferresources; constructor(context: APIRequestContext) { this.context = context; this.runs = new Resource$Projects$Locations$Transferconfigs$Runs( this.context ); + this.transferResources = + new Resource$Projects$Locations$Transferconfigs$Transferresources( + this.context + ); } /** @@ -4510,16 +4668,14 @@ export namespace bigquerydatatransfer_v1 { parent?: string; } - export class Resource$Projects$Transferconfigs { + export class Resource$Projects$Locations$Transferconfigs$Transferresources { context: APIRequestContext; - runs: Resource$Projects$Transferconfigs$Runs; constructor(context: APIRequestContext) { this.context = context; - this.runs = new Resource$Projects$Transferconfigs$Runs(this.context); } /** - * Creates a new data transfer configuration. + * Returns a transfer resource. * @example * ```js * // Before running the sample: @@ -4540,7 +4696,11 @@ export namespace bigquerydatatransfer_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4548,69 +4708,25 @@ export namespace bigquerydatatransfer_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await bigquerydatatransfer.projects.transferConfigs.create({ - * // Deprecated: Authorization code was required when `transferConfig.dataSourceId` is 'youtube_channel' but it is no longer used in any data sources. Use `version_info` instead. Optional OAuth2 authorization code to use with this transfer configuration. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' and new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain authorization_code, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=authorization_code&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to create the transfer config. - * authorizationCode: 'placeholder-value', - * // Required. The BigQuery project id where the transfer configuration should be created. Must be in the format projects/{project_id\}/locations/{location_id\} or projects/{project_id\}. If specified location and location of the destination bigquery dataset do not match - the request will fail. - * parent: 'projects/my-project', - * // Optional service account email. If this field is set, the transfer config will be created with this service account's credentials. It requires that the requesting user calling this API has permissions to act as this service account. Note that not all data sources support service account credentials when creating a transfer config. For the latest list of data sources, read about [using service accounts](https://cloud.google.com/bigquery-transfer/docs/use-service-accounts). - * serviceAccountName: 'placeholder-value', - * // Optional version info. This parameter replaces `authorization_code` which is no longer used in any data sources. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' *or* new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain version info, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=version_info&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to create the transfer config. - * versionInfo: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "dataRefreshWindowDays": 0, - * // "dataSourceId": "my_dataSourceId", - * // "datasetRegion": "my_datasetRegion", - * // "destinationDatasetId": "my_destinationDatasetId", - * // "disabled": false, - * // "displayName": "my_displayName", - * // "emailPreferences": {}, - * // "encryptionConfiguration": {}, - * // "error": {}, - * // "managedTableType": "my_managedTableType", - * // "name": "my_name", - * // "nextRunTime": "my_nextRunTime", - * // "notificationPubsubTopic": "my_notificationPubsubTopic", - * // "ownerInfo": {}, - * // "params": {}, - * // "schedule": "my_schedule", - * // "scheduleOptions": {}, - * // "scheduleOptionsV2": {}, - * // "state": "my_state", - * // "updateTime": "my_updateTime", - * // "userId": "my_userId" - * // } - * }, - * }); + * const res = + * await bigquerydatatransfer.projects.locations.transferConfigs.transferResources.get( + * { + * // Required. The name of the transfer resource in the form of: * `projects/{project\}/transferConfigs/{transfer_config\}/transferResources/{transfer_resource\}` * `projects/{project\}/locations/{location\}/transferConfigs/{transfer_config\}/transferResources/{transfer_resource\}` + * name: 'projects/my-project/locations/my-location/transferConfigs/my-transferConfig/transferResources/my-transferResource', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "dataRefreshWindowDays": 0, - * // "dataSourceId": "my_dataSourceId", - * // "datasetRegion": "my_datasetRegion", - * // "destinationDatasetId": "my_destinationDatasetId", - * // "disabled": false, - * // "displayName": "my_displayName", - * // "emailPreferences": {}, - * // "encryptionConfiguration": {}, - * // "error": {}, - * // "managedTableType": "my_managedTableType", + * // "destination": "my_destination", + * // "hierarchyDetail": {}, + * // "lastSuccessfulRun": {}, + * // "latestRun": {}, + * // "latestStatusDetail": {}, * // "name": "my_name", - * // "nextRunTime": "my_nextRunTime", - * // "notificationPubsubTopic": "my_notificationPubsubTopic", - * // "ownerInfo": {}, - * // "params": {}, - * // "schedule": "my_schedule", - * // "scheduleOptions": {}, - * // "scheduleOptionsV2": {}, - * // "state": "my_state", - * // "updateTime": "my_updateTime", - * // "userId": "my_userId" + * // "type": "my_type", + * // "updateTime": "my_updateTime" * // } * } * @@ -4626,53 +4742,54 @@ export namespace bigquerydatatransfer_v1 { * @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$Transferconfigs$Create, + get( + params: Params$Resource$Projects$Locations$Transferconfigs$Transferresources$Get, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Transferconfigs$Create, + get( + params?: Params$Resource$Projects$Locations$Transferconfigs$Transferresources$Get, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Transferconfigs$Create, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Transferconfigs$Transferresources$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Transferconfigs$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Transferconfigs$Transferresources$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Transferconfigs$Create, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Transferconfigs$Transferresources$Get, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Transferconfigs$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Transferconfigs$Transferresources$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Transferconfigs$Create; + {}) as Params$Resource$Projects$Locations$Transferconfigs$Transferresources$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Transferconfigs$Create; + params = + {} as Params$Resource$Projects$Locations$Transferconfigs$Transferresources$Get; options = {}; } @@ -4686,32 +4803,29 @@ export namespace bigquerydatatransfer_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/transferConfigs').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a data transfer configuration, including any associated transfer runs and logs. + * Returns information about transfer resources. * @example * ```js * // Before running the sample: @@ -4735,6 +4849,7 @@ export namespace bigquerydatatransfer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/bigquery', * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', * ], * }); * @@ -4743,14 +4858,27 @@ export namespace bigquerydatatransfer_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await bigquerydatatransfer.projects.transferConfigs.delete({ - * // Required. The name of the resource to delete. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` - * name: 'projects/my-project/transferConfigs/my-transferConfig', - * }); + * const res = + * await bigquerydatatransfer.projects.locations.transferConfigs.transferResources.list( + * { + * // Optional. Filter for the transfer resources. Currently supported filters include: * Resource name: `name` - Wildcard supported * Resource type: `type` * Resource destination: `destination` * Latest resource state: `latest_status_detail.state` * Last update time: `update_time` - RFC-3339 format * Parent table name: `hierarchy_detail.partition_detail.table` Multiple filters can be applied using the `AND/OR` operator. Examples: * `name="*123" AND (type="TABLE" OR latest_status_detail.state="SUCCEEDED")` * `update_time \>= "2012-04-21T11:30:00-04:00"` * `hierarchy_detail.partition_detail.table = "table1"` + * filter: 'placeholder-value', + * // Optional. The maximum number of transfer resources to return. The maximum value is 1000; values above 1000 will be coerced to 1000. The default page size is the maximum value of 1000 results. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous `ListTransferResources` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTransferResources` must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. Name of transfer configuration for which transfer resources should be retrieved. The name should be in one of the following forms: * `projects/{project\}/transferConfigs/{transfer_config\}` * `projects/{project\}/locations/{location_id\}/transferConfigs/{transfer_config\}` + * parent: + * 'projects/my-project/locations/my-location/transferConfigs/my-transferConfig', + * }, + * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "nextPageToken": "my_nextPageToken", + * // "transferResources": [] + * // } * } * * main().catch(e => { @@ -4765,53 +4893,58 @@ export namespace bigquerydatatransfer_v1 { * @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$Transferconfigs$Delete, + list( + params: Params$Resource$Projects$Locations$Transferconfigs$Transferresources$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Transferconfigs$Delete, + list( + params?: Params$Resource$Projects$Locations$Transferconfigs$Transferresources$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Transferconfigs$Delete, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Transferconfigs$Transferresources$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Transferconfigs$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Transferconfigs$Transferresources$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Transferconfigs$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Transferconfigs$Transferresources$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Transferconfigs$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Transferconfigs$Transferresources$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Transferconfigs$Delete; + {}) as Params$Resource$Projects$Locations$Transferconfigs$Transferresources$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Transferconfigs$Delete; + params = + {} as Params$Resource$Projects$Locations$Transferconfigs$Transferresources$List; options = {}; } @@ -4825,29 +4958,71 @@ export namespace bigquerydatatransfer_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+parent}/transferResources').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Projects$Locations$Transferconfigs$Transferresources$Get extends StandardParameters { /** - * Returns information about a data transfer config. + * Required. The name of the transfer resource in the form of: * `projects/{project\}/transferConfigs/{transfer_config\}/transferResources/{transfer_resource\}` * `projects/{project\}/locations/{location\}/transferConfigs/{transfer_config\}/transferResources/{transfer_resource\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Transferconfigs$Transferresources$List extends StandardParameters { + /** + * Optional. Filter for the transfer resources. Currently supported filters include: * Resource name: `name` - Wildcard supported * Resource type: `type` * Resource destination: `destination` * Latest resource state: `latest_status_detail.state` * Last update time: `update_time` - RFC-3339 format * Parent table name: `hierarchy_detail.partition_detail.table` Multiple filters can be applied using the `AND/OR` operator. Examples: * `name="*123" AND (type="TABLE" OR latest_status_detail.state="SUCCEEDED")` * `update_time \>= "2012-04-21T11:30:00-04:00"` * `hierarchy_detail.partition_detail.table = "table1"` + */ + filter?: string; + /** + * Optional. The maximum number of transfer resources to return. The maximum value is 1000; values above 1000 will be coerced to 1000. The default page size is the maximum value of 1000 results. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous `ListTransferResources` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTransferResources` must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. Name of transfer configuration for which transfer resources should be retrieved. The name should be in one of the following forms: * `projects/{project\}/transferConfigs/{transfer_config\}` * `projects/{project\}/locations/{location_id\}/transferConfigs/{transfer_config\}` + */ + parent?: string; + } + + export class Resource$Projects$Transferconfigs { + context: APIRequestContext; + runs: Resource$Projects$Transferconfigs$Runs; + transferResources: Resource$Projects$Transferconfigs$Transferresources; + constructor(context: APIRequestContext) { + this.context = context; + this.runs = new Resource$Projects$Transferconfigs$Runs(this.context); + this.transferResources = + new Resource$Projects$Transferconfigs$Transferresources(this.context); + } + + /** + * Creates a new data transfer configuration. * @example * ```js * // Before running the sample: @@ -4868,11 +5043,7 @@ export namespace bigquerydatatransfer_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/bigquery', - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4880,9 +5051,43 @@ export namespace bigquerydatatransfer_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await bigquerydatatransfer.projects.transferConfigs.get({ - * // Required. The name of the resource requested. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` - * name: 'projects/my-project/transferConfigs/my-transferConfig', + * const res = await bigquerydatatransfer.projects.transferConfigs.create({ + * // Deprecated: Authorization code was required when `transferConfig.dataSourceId` is 'youtube_channel' but it is no longer used in any data sources. Use `version_info` instead. Optional OAuth2 authorization code to use with this transfer configuration. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' and new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain authorization_code, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=authorization_code&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to create the transfer config. + * authorizationCode: 'placeholder-value', + * // Required. The BigQuery project id where the transfer configuration should be created. Must be in the format projects/{project_id\}/locations/{location_id\} or projects/{project_id\}. If specified location and location of the destination bigquery dataset do not match - the request will fail. + * parent: 'projects/my-project', + * // Optional service account email. If this field is set, the transfer config will be created with this service account's credentials. It requires that the requesting user calling this API has permissions to act as this service account. Note that not all data sources support service account credentials when creating a transfer config. For the latest list of data sources, read about [using service accounts](https://cloud.google.com/bigquery-transfer/docs/use-service-accounts). + * serviceAccountName: 'placeholder-value', + * // Optional version info. This parameter replaces `authorization_code` which is no longer used in any data sources. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' *or* new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain version info, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=version_info&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to create the transfer config. + * versionInfo: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "dataRefreshWindowDays": 0, + * // "dataSourceId": "my_dataSourceId", + * // "datasetRegion": "my_datasetRegion", + * // "destinationDatasetId": "my_destinationDatasetId", + * // "disabled": false, + * // "displayName": "my_displayName", + * // "emailPreferences": {}, + * // "encryptionConfiguration": {}, + * // "error": {}, + * // "managedTableType": "my_managedTableType", + * // "name": "my_name", + * // "nextRunTime": "my_nextRunTime", + * // "notificationPubsubTopic": "my_notificationPubsubTopic", + * // "ownerInfo": {}, + * // "params": {}, + * // "schedule": "my_schedule", + * // "scheduleOptions": {}, + * // "scheduleOptionsV2": {}, + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "userId": "my_userId" + * // } + * }, * }); * console.log(res.data); * @@ -4924,32 +5129,32 @@ export namespace bigquerydatatransfer_v1 { * @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$Transferconfigs$Get, + create( + params: Params$Resource$Projects$Transferconfigs$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Transferconfigs$Get, + create( + params?: Params$Resource$Projects$Transferconfigs$Create, options?: MethodOptions ): Promise>; - get( - params: Params$Resource$Projects$Transferconfigs$Get, + create( + params: Params$Resource$Projects$Transferconfigs$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Transferconfigs$Get, + create( + params: Params$Resource$Projects$Transferconfigs$Create, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Transferconfigs$Get, + create( + params: Params$Resource$Projects$Transferconfigs$Create, callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Transferconfigs$Get + | Params$Resource$Projects$Transferconfigs$Create | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -4965,12 +5170,12 @@ export namespace bigquerydatatransfer_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Transferconfigs$Get; + {}) as Params$Resource$Projects$Transferconfigs$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Transferconfigs$Get; + params = {} as Params$Resource$Projects$Transferconfigs$Create; options = {}; } @@ -4984,15 +5189,18 @@ export namespace bigquerydatatransfer_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+parent}/transferConfigs').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { @@ -5006,7 +5214,7 @@ export namespace bigquerydatatransfer_v1 { } /** - * Returns information about all transfer configs owned by a project in the specified location. + * Deletes a data transfer configuration, including any associated transfer runs and logs. * @example * ```js * // Before running the sample: @@ -5030,7 +5238,6 @@ export namespace bigquerydatatransfer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/bigquery', * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', * ], * }); * @@ -5039,23 +5246,14 @@ export namespace bigquerydatatransfer_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await bigquerydatatransfer.projects.transferConfigs.list({ - * // When specified, only configurations of requested data sources are returned. - * dataSourceIds: 'placeholder-value', - * // Page size. The default page size is the maximum value of 1000 results. - * pageSize: 'placeholder-value', - * // Pagination token, which can be used to request a specific page of `ListTransfersRequest` list results. For multiple-page results, `ListTransfersResponse` outputs a `next_page` token, which can be used as the `page_token` value to request the next page of list results. - * pageToken: 'placeholder-value', - * // Required. The BigQuery project id for which transfer configs should be returned. If you are using the regionless method, the location must be `US` and `parent` should be in the following form: * `projects/{project_id\} If you are using the regionalized method, `parent` should be in the following form: * `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project', + * const res = await bigquerydatatransfer.projects.transferConfigs.delete({ + * // Required. The name of the resource to delete. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` + * name: 'projects/my-project/transferConfigs/my-transferConfig', * }); * console.log(res.data); * * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "transferConfigs": [] - * // } + * // {} * } * * main().catch(e => { @@ -5070,57 +5268,53 @@ export namespace bigquerydatatransfer_v1 { * @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$Transferconfigs$List, + delete( + params: Params$Resource$Projects$Transferconfigs$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Transferconfigs$List, + delete( + params?: Params$Resource$Projects$Transferconfigs$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Transferconfigs$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Transferconfigs$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Transferconfigs$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Transferconfigs$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Transferconfigs$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Transferconfigs$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Transferconfigs$List - | BodyResponseCallback + | Params$Resource$Projects$Transferconfigs$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Transferconfigs$List; + {}) as Params$Resource$Projects$Transferconfigs$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Transferconfigs$List; + params = {} as Params$Resource$Projects$Transferconfigs$Delete; options = {}; } @@ -5134,32 +5328,29 @@ export namespace bigquerydatatransfer_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/transferConfigs').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a data transfer configuration. All fields must be set, even if they are not updated. + * Returns information about a data transfer config. * @example * ```js * // Before running the sample: @@ -5180,7 +5371,11 @@ export namespace bigquerydatatransfer_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5188,47 +5383,11 @@ export namespace bigquerydatatransfer_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await bigquerydatatransfer.projects.transferConfigs.patch({ - * // Deprecated: Authorization code was required when `transferConfig.dataSourceId` is 'youtube_channel' but it is no longer used in any data sources. Use `version_info` instead. Optional OAuth2 authorization code to use with this transfer configuration. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' and new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain authorization_code, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=authorization_code&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to update the transfer config. - * authorizationCode: 'placeholder-value', - * // Identifier. The resource name of the transfer config. Transfer config names have the form either `projects/{project_id\}/locations/{region\}/transferConfigs/{config_id\}` or `projects/{project_id\}/transferConfigs/{config_id\}`, where `config_id` is usually a UUID, even though it is not guaranteed or required. The name is ignored when creating a transfer config. + * const res = await bigquerydatatransfer.projects.transferConfigs.get({ + * // Required. The name of the resource requested. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` * name: 'projects/my-project/transferConfigs/my-transferConfig', - * // Optional service account email. If this field is set, the transfer config will be created with this service account's credentials. It requires that the requesting user calling this API has permissions to act as this service account. Note that not all data sources support service account credentials when creating a transfer config. For the latest list of data sources, read about [using service accounts](https://cloud.google.com/bigquery-transfer/docs/use-service-accounts). - * serviceAccountName: 'placeholder-value', - * // Required. Required list of fields to be updated in this request. - * updateMask: 'placeholder-value', - * // Optional version info. This parameter replaces `authorization_code` which is no longer used in any data sources. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' *or* new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain version info, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=version_info&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to update the transfer config. - * versionInfo: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "dataRefreshWindowDays": 0, - * // "dataSourceId": "my_dataSourceId", - * // "datasetRegion": "my_datasetRegion", - * // "destinationDatasetId": "my_destinationDatasetId", - * // "disabled": false, - * // "displayName": "my_displayName", - * // "emailPreferences": {}, - * // "encryptionConfiguration": {}, - * // "error": {}, - * // "managedTableType": "my_managedTableType", - * // "name": "my_name", - * // "nextRunTime": "my_nextRunTime", - * // "notificationPubsubTopic": "my_notificationPubsubTopic", - * // "ownerInfo": {}, - * // "params": {}, - * // "schedule": "my_schedule", - * // "scheduleOptions": {}, - * // "scheduleOptionsV2": {}, - * // "state": "my_state", - * // "updateTime": "my_updateTime", - * // "userId": "my_userId" - * // } - * }, - * }); - * console.log(res.data); + * }); + * console.log(res.data); * * // Example response * // { @@ -5268,32 +5427,32 @@ export namespace bigquerydatatransfer_v1 { * @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$Transferconfigs$Patch, + get( + params: Params$Resource$Projects$Transferconfigs$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Transferconfigs$Patch, + get( + params?: Params$Resource$Projects$Transferconfigs$Get, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Projects$Transferconfigs$Patch, + get( + params: Params$Resource$Projects$Transferconfigs$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Transferconfigs$Patch, + get( + params: Params$Resource$Projects$Transferconfigs$Get, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Transferconfigs$Patch, + get( + params: Params$Resource$Projects$Transferconfigs$Get, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Transferconfigs$Patch + | Params$Resource$Projects$Transferconfigs$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -5309,12 +5468,12 @@ export namespace bigquerydatatransfer_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Transferconfigs$Patch; + {}) as Params$Resource$Projects$Transferconfigs$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Transferconfigs$Patch; + params = {} as Params$Resource$Projects$Transferconfigs$Get; options = {}; } @@ -5329,7 +5488,7 @@ export namespace bigquerydatatransfer_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -5350,7 +5509,7 @@ export namespace bigquerydatatransfer_v1 { } /** - * Creates transfer runs for a time range [start_time, end_time]. For each date - or whatever granularity the data source supports - in the range, one transfer run is created. Note that runs are created per UTC time in the time range. DEPRECATED: use StartManualTransferRuns instead. + * Returns information about all transfer configs owned by a project in the specified location. * @example * ```js * // Before running the sample: @@ -5374,6 +5533,7 @@ export namespace bigquerydatatransfer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/bigquery', * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', * ], * }); * @@ -5382,24 +5542,22 @@ export namespace bigquerydatatransfer_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await bigquerydatatransfer.projects.transferConfigs.scheduleRuns({ - * // Required. Transfer configuration name. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` - * parent: 'projects/my-project/transferConfigs/my-transferConfig', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "endTime": "my_endTime", - * // "startTime": "my_startTime" - * // } - * }, + * const res = await bigquerydatatransfer.projects.transferConfigs.list({ + * // When specified, only configurations of requested data sources are returned. + * dataSourceIds: 'placeholder-value', + * // Page size. The default page size is the maximum value of 1000 results. + * pageSize: 'placeholder-value', + * // Pagination token, which can be used to request a specific page of `ListTransfersRequest` list results. For multiple-page results, `ListTransfersResponse` outputs a `next_page` token, which can be used as the `page_token` value to request the next page of list results. + * pageToken: 'placeholder-value', + * // Required. The BigQuery project id for which transfer configs should be returned. If you are using the regionless method, the location must be `US` and `parent` should be in the following form: * `projects/{project_id\} If you are using the regionalized method, `parent` should be in the following form: * `projects/{project_id\}/locations/{location_id\}` + * parent: 'projects/my-project', * }); * console.log(res.data); * * // Example response * // { - * // "runs": [] + * // "nextPageToken": "my_nextPageToken", + * // "transferConfigs": [] * // } * } * @@ -5415,57 +5573,57 @@ export namespace bigquerydatatransfer_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - scheduleRuns( - params: Params$Resource$Projects$Transferconfigs$Scheduleruns, + list( + params: Params$Resource$Projects$Transferconfigs$List, options: StreamMethodOptions ): Promise>; - scheduleRuns( - params?: Params$Resource$Projects$Transferconfigs$Scheduleruns, + list( + params?: Params$Resource$Projects$Transferconfigs$List, options?: MethodOptions - ): Promise>; - scheduleRuns( - params: Params$Resource$Projects$Transferconfigs$Scheduleruns, + ): Promise>; + list( + params: Params$Resource$Projects$Transferconfigs$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - scheduleRuns( - params: Params$Resource$Projects$Transferconfigs$Scheduleruns, + list( + params: Params$Resource$Projects$Transferconfigs$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - scheduleRuns( - params: Params$Resource$Projects$Transferconfigs$Scheduleruns, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Transferconfigs$List, + callback: BodyResponseCallback ): void; - scheduleRuns( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - scheduleRuns( + list( paramsOrCallback?: - | Params$Resource$Projects$Transferconfigs$Scheduleruns - | BodyResponseCallback + | Params$Resource$Projects$Transferconfigs$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Transferconfigs$Scheduleruns; + {}) as Params$Resource$Projects$Transferconfigs$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Transferconfigs$Scheduleruns; + params = {} as Params$Resource$Projects$Transferconfigs$List; options = {}; } @@ -5479,11 +5637,11 @@ export namespace bigquerydatatransfer_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}:scheduleRuns').replace( + url: (rootUrl + '/v1/{+parent}/transferConfigs').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -5494,19 +5652,17 @@ export namespace bigquerydatatransfer_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Manually initiates transfer runs. You can schedule these runs in two ways: 1. For a specific point in time using the 'requested_run_time' parameter. 2. For a period between 'start_time' (inclusive) and 'end_time' (exclusive). If scheduling a single run, it is set to execute immediately (schedule_time equals the current time). When scheduling multiple runs within a time range, the first run starts now, and subsequent runs are delayed by 15 seconds each. + * Updates a data transfer configuration. All fields must be set, even if they are not updated. * @example * ```js * // Before running the sample: @@ -5527,10 +5683,7 @@ export namespace bigquerydatatransfer_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/bigquery', - * 'https://www.googleapis.com/auth/cloud-platform', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5538,25 +5691,71 @@ export namespace bigquerydatatransfer_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await bigquerydatatransfer.projects.transferConfigs.startManualRuns({ - * // Required. Transfer configuration name. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` - * parent: 'projects/my-project/transferConfigs/my-transferConfig', + * const res = await bigquerydatatransfer.projects.transferConfigs.patch({ + * // Deprecated: Authorization code was required when `transferConfig.dataSourceId` is 'youtube_channel' but it is no longer used in any data sources. Use `version_info` instead. Optional OAuth2 authorization code to use with this transfer configuration. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' and new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain authorization_code, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=authorization_code&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to update the transfer config. + * authorizationCode: 'placeholder-value', + * // Identifier. The resource name of the transfer config. Transfer config names have the form either `projects/{project_id\}/locations/{region\}/transferConfigs/{config_id\}` or `projects/{project_id\}/transferConfigs/{config_id\}`, where `config_id` is usually a UUID, even though it is not guaranteed or required. The name is ignored when creating a transfer config. + * name: 'projects/my-project/transferConfigs/my-transferConfig', + * // Optional service account email. If this field is set, the transfer config will be created with this service account's credentials. It requires that the requesting user calling this API has permissions to act as this service account. Note that not all data sources support service account credentials when creating a transfer config. For the latest list of data sources, read about [using service accounts](https://cloud.google.com/bigquery-transfer/docs/use-service-accounts). + * serviceAccountName: 'placeholder-value', + * // Required. Required list of fields to be updated in this request. + * updateMask: 'placeholder-value', + * // Optional version info. This parameter replaces `authorization_code` which is no longer used in any data sources. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' *or* new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain version info, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=version_info&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to update the transfer config. + * versionInfo: 'placeholder-value', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "requestedRunTime": "my_requestedRunTime", - * // "requestedTimeRange": {} - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "dataRefreshWindowDays": 0, + * // "dataSourceId": "my_dataSourceId", + * // "datasetRegion": "my_datasetRegion", + * // "destinationDatasetId": "my_destinationDatasetId", + * // "disabled": false, + * // "displayName": "my_displayName", + * // "emailPreferences": {}, + * // "encryptionConfiguration": {}, + * // "error": {}, + * // "managedTableType": "my_managedTableType", + * // "name": "my_name", + * // "nextRunTime": "my_nextRunTime", + * // "notificationPubsubTopic": "my_notificationPubsubTopic", + * // "ownerInfo": {}, + * // "params": {}, + * // "schedule": "my_schedule", + * // "scheduleOptions": {}, + * // "scheduleOptionsV2": {}, + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "userId": "my_userId" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "runs": [] + * // "dataRefreshWindowDays": 0, + * // "dataSourceId": "my_dataSourceId", + * // "datasetRegion": "my_datasetRegion", + * // "destinationDatasetId": "my_destinationDatasetId", + * // "disabled": false, + * // "displayName": "my_displayName", + * // "emailPreferences": {}, + * // "encryptionConfiguration": {}, + * // "error": {}, + * // "managedTableType": "my_managedTableType", + * // "name": "my_name", + * // "nextRunTime": "my_nextRunTime", + * // "notificationPubsubTopic": "my_notificationPubsubTopic", + * // "ownerInfo": {}, + * // "params": {}, + * // "schedule": "my_schedule", + * // "scheduleOptions": {}, + * // "scheduleOptionsV2": {}, + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "userId": "my_userId" * // } * } * @@ -5572,57 +5771,53 @@ export namespace bigquerydatatransfer_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - startManualRuns( - params: Params$Resource$Projects$Transferconfigs$Startmanualruns, + patch( + params: Params$Resource$Projects$Transferconfigs$Patch, options: StreamMethodOptions ): Promise>; - startManualRuns( - params?: Params$Resource$Projects$Transferconfigs$Startmanualruns, + patch( + params?: Params$Resource$Projects$Transferconfigs$Patch, options?: MethodOptions - ): Promise>; - startManualRuns( - params: Params$Resource$Projects$Transferconfigs$Startmanualruns, + ): Promise>; + patch( + params: Params$Resource$Projects$Transferconfigs$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - startManualRuns( - params: Params$Resource$Projects$Transferconfigs$Startmanualruns, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - startManualRuns( - params: Params$Resource$Projects$Transferconfigs$Startmanualruns, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Transferconfigs$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - startManualRuns( - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Transferconfigs$Patch, + callback: BodyResponseCallback ): void; - startManualRuns( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Transferconfigs$Startmanualruns - | BodyResponseCallback + | Params$Resource$Projects$Transferconfigs$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Transferconfigs$Startmanualruns; + {}) as Params$Resource$Projects$Transferconfigs$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Transferconfigs$Startmanualruns; + params = {} as Params$Resource$Projects$Transferconfigs$Patch; options = {}; } @@ -5636,147 +5831,29 @@ export namespace bigquerydatatransfer_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}:startManualRuns').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Transferconfigs$Create extends StandardParameters { - /** - * Deprecated: Authorization code was required when `transferConfig.dataSourceId` is 'youtube_channel' but it is no longer used in any data sources. Use `version_info` instead. Optional OAuth2 authorization code to use with this transfer configuration. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' and new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain authorization_code, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=authorization_code&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to create the transfer config. - */ - authorizationCode?: string; - /** - * Required. The BigQuery project id where the transfer configuration should be created. Must be in the format projects/{project_id\}/locations/{location_id\} or projects/{project_id\}. If specified location and location of the destination bigquery dataset do not match - the request will fail. - */ - parent?: string; - /** - * Optional service account email. If this field is set, the transfer config will be created with this service account's credentials. It requires that the requesting user calling this API has permissions to act as this service account. Note that not all data sources support service account credentials when creating a transfer config. For the latest list of data sources, read about [using service accounts](https://cloud.google.com/bigquery-transfer/docs/use-service-accounts). - */ - serviceAccountName?: string; - /** - * Optional version info. This parameter replaces `authorization_code` which is no longer used in any data sources. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' *or* new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain version info, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=version_info&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to create the transfer config. - */ - versionInfo?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TransferConfig; - } - export interface Params$Resource$Projects$Transferconfigs$Delete extends StandardParameters { - /** - * Required. The name of the resource to delete. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Transferconfigs$Get extends StandardParameters { - /** - * Required. The name of the resource requested. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Transferconfigs$List extends StandardParameters { - /** - * When specified, only configurations of requested data sources are returned. - */ - dataSourceIds?: string[]; - /** - * Page size. The default page size is the maximum value of 1000 results. - */ - pageSize?: number; - /** - * Pagination token, which can be used to request a specific page of `ListTransfersRequest` list results. For multiple-page results, `ListTransfersResponse` outputs a `next_page` token, which can be used as the `page_token` value to request the next page of list results. - */ - pageToken?: string; - /** - * Required. The BigQuery project id for which transfer configs should be returned. If you are using the regionless method, the location must be `US` and `parent` should be in the following form: * `projects/{project_id\} If you are using the regionalized method, `parent` should be in the following form: * `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - } - export interface Params$Resource$Projects$Transferconfigs$Patch extends StandardParameters { - /** - * Deprecated: Authorization code was required when `transferConfig.dataSourceId` is 'youtube_channel' but it is no longer used in any data sources. Use `version_info` instead. Optional OAuth2 authorization code to use with this transfer configuration. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' and new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain authorization_code, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=authorization_code&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to update the transfer config. - */ - authorizationCode?: string; - /** - * Identifier. The resource name of the transfer config. Transfer config names have the form either `projects/{project_id\}/locations/{region\}/transferConfigs/{config_id\}` or `projects/{project_id\}/transferConfigs/{config_id\}`, where `config_id` is usually a UUID, even though it is not guaranteed or required. The name is ignored when creating a transfer config. - */ - name?: string; - /** - * Optional service account email. If this field is set, the transfer config will be created with this service account's credentials. It requires that the requesting user calling this API has permissions to act as this service account. Note that not all data sources support service account credentials when creating a transfer config. For the latest list of data sources, read about [using service accounts](https://cloud.google.com/bigquery-transfer/docs/use-service-accounts). - */ - serviceAccountName?: string; - /** - * Required. Required list of fields to be updated in this request. - */ - updateMask?: string; - /** - * Optional version info. This parameter replaces `authorization_code` which is no longer used in any data sources. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' *or* new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain version info, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=version_info&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to update the transfer config. - */ - versionInfo?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TransferConfig; - } - export interface Params$Resource$Projects$Transferconfigs$Scheduleruns extends StandardParameters { - /** - * Required. Transfer configuration name. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ScheduleTransferRunsRequest; - } - export interface Params$Resource$Projects$Transferconfigs$Startmanualruns extends StandardParameters { - /** - * Required. Transfer configuration name. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$StartManualTransferRunsRequest; - } - - export class Resource$Projects$Transferconfigs$Runs { - context: APIRequestContext; - transferLogs: Resource$Projects$Transferconfigs$Runs$Transferlogs; - constructor(context: APIRequestContext) { - this.context = context; - this.transferLogs = - new Resource$Projects$Transferconfigs$Runs$Transferlogs(this.context); - } /** - * Deletes the specified transfer run. + * Creates transfer runs for a time range [start_time, end_time]. For each date - or whatever granularity the data source supports - in the range, one transfer run is created. Note that runs are created per UTC time in the time range. DEPRECATED: use StartManualTransferRuns instead. * @example * ```js * // Before running the sample: @@ -5808,14 +5885,25 @@ export namespace bigquerydatatransfer_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await bigquerydatatransfer.projects.transferConfigs.runs.delete({ - * // Required. The name of the resource requested. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}/runs/{run_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}/runs/{run_id\}` - * name: 'projects/my-project/transferConfigs/my-transferConfig/runs/my-run', + * const res = await bigquerydatatransfer.projects.transferConfigs.scheduleRuns({ + * // Required. Transfer configuration name. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` + * parent: 'projects/my-project/transferConfigs/my-transferConfig', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "endTime": "my_endTime", + * // "startTime": "my_startTime" + * // } + * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "runs": [] + * // } * } * * main().catch(e => { @@ -5830,53 +5918,57 @@ export namespace bigquerydatatransfer_v1 { * @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$Transferconfigs$Runs$Delete, + scheduleRuns( + params: Params$Resource$Projects$Transferconfigs$Scheduleruns, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Transferconfigs$Runs$Delete, + scheduleRuns( + params?: Params$Resource$Projects$Transferconfigs$Scheduleruns, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Transferconfigs$Runs$Delete, + ): Promise>; + scheduleRuns( + params: Params$Resource$Projects$Transferconfigs$Scheduleruns, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Transferconfigs$Runs$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + scheduleRuns( + params: Params$Resource$Projects$Transferconfigs$Scheduleruns, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Transferconfigs$Runs$Delete, - callback: BodyResponseCallback + scheduleRuns( + params: Params$Resource$Projects$Transferconfigs$Scheduleruns, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + scheduleRuns( + callback: BodyResponseCallback + ): void; + scheduleRuns( paramsOrCallback?: - | Params$Resource$Projects$Transferconfigs$Runs$Delete - | BodyResponseCallback + | Params$Resource$Projects$Transferconfigs$Scheduleruns + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Transferconfigs$Runs$Delete; + {}) as Params$Resource$Projects$Transferconfigs$Scheduleruns; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Transferconfigs$Runs$Delete; + params = {} as Params$Resource$Projects$Transferconfigs$Scheduleruns; options = {}; } @@ -5890,29 +5982,34 @@ export namespace bigquerydatatransfer_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+parent}:scheduleRuns').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Returns information about the particular transfer run. + * Manually initiates transfer runs. You can schedule these runs in two ways: 1. For a specific point in time using the 'requested_run_time' parameter. 2. For a period between 'start_time' (inclusive) and 'end_time' (exclusive). If scheduling a single run, it is set to execute immediately (schedule_time equals the current time). When scheduling multiple runs within a time range, the first run starts now, and subsequent runs are delayed by 15 seconds each. * @example * ```js * // Before running the sample: @@ -5936,7 +6033,6 @@ export namespace bigquerydatatransfer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/bigquery', * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', * ], * }); * @@ -5945,29 +6041,776 @@ export namespace bigquerydatatransfer_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await bigquerydatatransfer.projects.transferConfigs.runs.get({ - * // Required. The name of the resource requested. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}/runs/{run_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}/runs/{run_id\}` - * name: 'projects/my-project/transferConfigs/my-transferConfig/runs/my-run', - * }); + * const res = + * await bigquerydatatransfer.projects.transferConfigs.startManualRuns({ + * // Required. Transfer configuration name. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` + * parent: 'projects/my-project/transferConfigs/my-transferConfig', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "requestedRunTime": "my_requestedRunTime", + * // "requestedTimeRange": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "runs": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + startManualRuns( + params: Params$Resource$Projects$Transferconfigs$Startmanualruns, + options: StreamMethodOptions + ): Promise>; + startManualRuns( + params?: Params$Resource$Projects$Transferconfigs$Startmanualruns, + options?: MethodOptions + ): Promise>; + startManualRuns( + params: Params$Resource$Projects$Transferconfigs$Startmanualruns, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + startManualRuns( + params: Params$Resource$Projects$Transferconfigs$Startmanualruns, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + startManualRuns( + params: Params$Resource$Projects$Transferconfigs$Startmanualruns, + callback: BodyResponseCallback + ): void; + startManualRuns( + callback: BodyResponseCallback + ): void; + startManualRuns( + paramsOrCallback?: + | Params$Resource$Projects$Transferconfigs$Startmanualruns + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Transferconfigs$Startmanualruns; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Transferconfigs$Startmanualruns; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://bigquerydatatransfer.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}:startManualRuns').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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$Transferconfigs$Create extends StandardParameters { + /** + * Deprecated: Authorization code was required when `transferConfig.dataSourceId` is 'youtube_channel' but it is no longer used in any data sources. Use `version_info` instead. Optional OAuth2 authorization code to use with this transfer configuration. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' and new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain authorization_code, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=authorization_code&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to create the transfer config. + */ + authorizationCode?: string; + /** + * Required. The BigQuery project id where the transfer configuration should be created. Must be in the format projects/{project_id\}/locations/{location_id\} or projects/{project_id\}. If specified location and location of the destination bigquery dataset do not match - the request will fail. + */ + parent?: string; + /** + * Optional service account email. If this field is set, the transfer config will be created with this service account's credentials. It requires that the requesting user calling this API has permissions to act as this service account. Note that not all data sources support service account credentials when creating a transfer config. For the latest list of data sources, read about [using service accounts](https://cloud.google.com/bigquery-transfer/docs/use-service-accounts). + */ + serviceAccountName?: string; + /** + * Optional version info. This parameter replaces `authorization_code` which is no longer used in any data sources. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' *or* new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain version info, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=version_info&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to create the transfer config. + */ + versionInfo?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TransferConfig; + } + export interface Params$Resource$Projects$Transferconfigs$Delete extends StandardParameters { + /** + * Required. The name of the resource to delete. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Transferconfigs$Get extends StandardParameters { + /** + * Required. The name of the resource requested. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Transferconfigs$List extends StandardParameters { + /** + * When specified, only configurations of requested data sources are returned. + */ + dataSourceIds?: string[]; + /** + * Page size. The default page size is the maximum value of 1000 results. + */ + pageSize?: number; + /** + * Pagination token, which can be used to request a specific page of `ListTransfersRequest` list results. For multiple-page results, `ListTransfersResponse` outputs a `next_page` token, which can be used as the `page_token` value to request the next page of list results. + */ + pageToken?: string; + /** + * Required. The BigQuery project id for which transfer configs should be returned. If you are using the regionless method, the location must be `US` and `parent` should be in the following form: * `projects/{project_id\} If you are using the regionalized method, `parent` should be in the following form: * `projects/{project_id\}/locations/{location_id\}` + */ + parent?: string; + } + export interface Params$Resource$Projects$Transferconfigs$Patch extends StandardParameters { + /** + * Deprecated: Authorization code was required when `transferConfig.dataSourceId` is 'youtube_channel' but it is no longer used in any data sources. Use `version_info` instead. Optional OAuth2 authorization code to use with this transfer configuration. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' and new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain authorization_code, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=authorization_code&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to update the transfer config. + */ + authorizationCode?: string; + /** + * Identifier. The resource name of the transfer config. Transfer config names have the form either `projects/{project_id\}/locations/{region\}/transferConfigs/{config_id\}` or `projects/{project_id\}/transferConfigs/{config_id\}`, where `config_id` is usually a UUID, even though it is not guaranteed or required. The name is ignored when creating a transfer config. + */ + name?: string; + /** + * Optional service account email. If this field is set, the transfer config will be created with this service account's credentials. It requires that the requesting user calling this API has permissions to act as this service account. Note that not all data sources support service account credentials when creating a transfer config. For the latest list of data sources, read about [using service accounts](https://cloud.google.com/bigquery-transfer/docs/use-service-accounts). + */ + serviceAccountName?: string; + /** + * Required. Required list of fields to be updated in this request. + */ + updateMask?: string; + /** + * Optional version info. This parameter replaces `authorization_code` which is no longer used in any data sources. This is required only if `transferConfig.dataSourceId` is 'youtube_channel' *or* new credentials are needed, as indicated by `CheckValidCreds`. In order to obtain version info, make a request to the following URL: https://bigquery.cloud.google.com/datatransfer/oauthz/auth?redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=version_info&client_id=client_id&scope=data_source_scopes * The client_id is the OAuth client_id of the data source as returned by ListDataSources method. * data_source_scopes are the scopes returned by ListDataSources method. Note that this should not be set when `service_account_name` is used to update the transfer config. + */ + versionInfo?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TransferConfig; + } + export interface Params$Resource$Projects$Transferconfigs$Scheduleruns extends StandardParameters { + /** + * Required. Transfer configuration name. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ScheduleTransferRunsRequest; + } + export interface Params$Resource$Projects$Transferconfigs$Startmanualruns extends StandardParameters { + /** + * Required. Transfer configuration name. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$StartManualTransferRunsRequest; + } + + export class Resource$Projects$Transferconfigs$Runs { + context: APIRequestContext; + transferLogs: Resource$Projects$Transferconfigs$Runs$Transferlogs; + constructor(context: APIRequestContext) { + this.context = context; + this.transferLogs = + new Resource$Projects$Transferconfigs$Runs$Transferlogs(this.context); + } + + /** + * Deletes the specified transfer run. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/bigquerydatatransfer.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const bigquerydatatransfer = google.bigquerydatatransfer('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await bigquerydatatransfer.projects.transferConfigs.runs.delete({ + * // Required. The name of the resource requested. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}/runs/{run_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}/runs/{run_id\}` + * name: 'projects/my-project/transferConfigs/my-transferConfig/runs/my-run', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Transferconfigs$Runs$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Transferconfigs$Runs$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Transferconfigs$Runs$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Transferconfigs$Runs$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Transferconfigs$Runs$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Transferconfigs$Runs$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Transferconfigs$Runs$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Transferconfigs$Runs$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://bigquerydatatransfer.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns information about the particular transfer run. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/bigquerydatatransfer.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const bigquerydatatransfer = google.bigquerydatatransfer('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await bigquerydatatransfer.projects.transferConfigs.runs.get({ + * // Required. The name of the resource requested. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}/runs/{run_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}/runs/{run_id\}` + * name: 'projects/my-project/transferConfigs/my-transferConfig/runs/my-run', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "dataSourceId": "my_dataSourceId", + * // "destinationDatasetId": "my_destinationDatasetId", + * // "emailPreferences": {}, + * // "endTime": "my_endTime", + * // "errorStatus": {}, + * // "name": "my_name", + * // "notificationPubsubTopic": "my_notificationPubsubTopic", + * // "params": {}, + * // "runTime": "my_runTime", + * // "schedule": "my_schedule", + * // "scheduleTime": "my_scheduleTime", + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "userId": "my_userId" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Transferconfigs$Runs$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Transferconfigs$Runs$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Transferconfigs$Runs$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Transferconfigs$Runs$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Transferconfigs$Runs$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Transferconfigs$Runs$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Transferconfigs$Runs$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Transferconfigs$Runs$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://bigquerydatatransfer.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns information about running and completed transfer runs. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/bigquerydatatransfer.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const bigquerydatatransfer = google.bigquerydatatransfer('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await bigquerydatatransfer.projects.transferConfigs.runs.list({ + * // Page size. The default page size is the maximum value of 1000 results. + * pageSize: 'placeholder-value', + * // Pagination token, which can be used to request a specific page of `ListTransferRunsRequest` list results. For multiple-page results, `ListTransferRunsResponse` outputs a `next_page` token, which can be used as the `page_token` value to request the next page of list results. + * pageToken: 'placeholder-value', + * // Required. Name of transfer configuration for which transfer runs should be retrieved. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` + * parent: 'projects/my-project/transferConfigs/my-transferConfig', + * // Indicates how run attempts are to be pulled. + * runAttempt: 'placeholder-value', + * // When specified, only transfer runs with requested states are returned. + * states: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "transferRuns": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Transferconfigs$Runs$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Transferconfigs$Runs$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Transferconfigs$Runs$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Transferconfigs$Runs$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Transferconfigs$Runs$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Transferconfigs$Runs$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Transferconfigs$Runs$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Transferconfigs$Runs$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://bigquerydatatransfer.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/runs').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + 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$Transferconfigs$Runs$Delete extends StandardParameters { + /** + * Required. The name of the resource requested. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}/runs/{run_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}/runs/{run_id\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Transferconfigs$Runs$Get extends StandardParameters { + /** + * Required. The name of the resource requested. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}/runs/{run_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}/runs/{run_id\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Transferconfigs$Runs$List extends StandardParameters { + /** + * Page size. The default page size is the maximum value of 1000 results. + */ + pageSize?: number; + /** + * Pagination token, which can be used to request a specific page of `ListTransferRunsRequest` list results. For multiple-page results, `ListTransferRunsResponse` outputs a `next_page` token, which can be used as the `page_token` value to request the next page of list results. + */ + pageToken?: string; + /** + * Required. Name of transfer configuration for which transfer runs should be retrieved. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` + */ + parent?: string; + /** + * Indicates how run attempts are to be pulled. + */ + runAttempt?: string; + /** + * When specified, only transfer runs with requested states are returned. + */ + states?: string[]; + } + + export class Resource$Projects$Transferconfigs$Runs$Transferlogs { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns log messages for the transfer run. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/bigquerydatatransfer.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const bigquerydatatransfer = google.bigquerydatatransfer('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await bigquerydatatransfer.projects.transferConfigs.runs.transferLogs.list({ + * // Message types to return. If not populated - INFO, WARNING and ERROR messages are returned. + * messageTypes: 'placeholder-value', + * // Page size. The default page size is the maximum value of 1000 results. + * pageSize: 'placeholder-value', + * // Pagination token, which can be used to request a specific page of `ListTransferLogsRequest` list results. For multiple-page results, `ListTransferLogsResponse` outputs a `next_page` token, which can be used as the `page_token` value to request the next page of list results. + * pageToken: 'placeholder-value', + * // Required. Transfer run name. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}/runs/{run_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}/runs/{run_id\}` + * parent: + * 'projects/my-project/transferConfigs/my-transferConfig/runs/my-run', + * }); * console.log(res.data); * * // Example response * // { - * // "dataSourceId": "my_dataSourceId", - * // "destinationDatasetId": "my_destinationDatasetId", - * // "emailPreferences": {}, - * // "endTime": "my_endTime", - * // "errorStatus": {}, - * // "name": "my_name", - * // "notificationPubsubTopic": "my_notificationPubsubTopic", - * // "params": {}, - * // "runTime": "my_runTime", - * // "schedule": "my_schedule", - * // "scheduleTime": "my_scheduleTime", - * // "startTime": "my_startTime", - * // "state": "my_state", - * // "updateTime": "my_updateTime", - * // "userId": "my_userId" + * // "nextPageToken": "my_nextPageToken", + * // "transferMessages": [] * // } * } * @@ -5983,53 +6826,56 @@ export namespace bigquerydatatransfer_v1 { * @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$Transferconfigs$Runs$Get, + list( + params: Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Transferconfigs$Runs$Get, + list( + params?: Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Transferconfigs$Runs$Get, + ): Promise>; + list( + params: Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Transferconfigs$Runs$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Transferconfigs$Runs$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Transferconfigs$Runs$Get - | BodyResponseCallback + | Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Transferconfigs$Runs$Get; + {}) as Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Transferconfigs$Runs$Get; + params = + {} as Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List; options = {}; } @@ -6043,29 +6889,58 @@ export namespace bigquerydatatransfer_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+parent}/transferLogs').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List extends StandardParameters { /** - * Returns information about running and completed transfer runs. + * Message types to return. If not populated - INFO, WARNING and ERROR messages are returned. + */ + messageTypes?: string[]; + /** + * Page size. The default page size is the maximum value of 1000 results. + */ + pageSize?: number; + /** + * Pagination token, which can be used to request a specific page of `ListTransferLogsRequest` list results. For multiple-page results, `ListTransferLogsResponse` outputs a `next_page` token, which can be used as the `page_token` value to request the next page of list results. + */ + pageToken?: string; + /** + * Required. Transfer run name. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}/runs/{run_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}/runs/{run_id\}` + */ + parent?: string; + } + + export class Resource$Projects$Transferconfigs$Transferresources { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns a transfer resource. * @example * ```js * // Before running the sample: @@ -6098,24 +6973,23 @@ export namespace bigquerydatatransfer_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await bigquerydatatransfer.projects.transferConfigs.runs.list({ - * // Page size. The default page size is the maximum value of 1000 results. - * pageSize: 'placeholder-value', - * // Pagination token, which can be used to request a specific page of `ListTransferRunsRequest` list results. For multiple-page results, `ListTransferRunsResponse` outputs a `next_page` token, which can be used as the `page_token` value to request the next page of list results. - * pageToken: 'placeholder-value', - * // Required. Name of transfer configuration for which transfer runs should be retrieved. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` - * parent: 'projects/my-project/transferConfigs/my-transferConfig', - * // Indicates how run attempts are to be pulled. - * runAttempt: 'placeholder-value', - * // When specified, only transfer runs with requested states are returned. - * states: 'placeholder-value', - * }); + * const res = + * await bigquerydatatransfer.projects.transferConfigs.transferResources.get({ + * // Required. The name of the transfer resource in the form of: * `projects/{project\}/transferConfigs/{transfer_config\}/transferResources/{transfer_resource\}` * `projects/{project\}/locations/{location\}/transferConfigs/{transfer_config\}/transferResources/{transfer_resource\}` + * name: 'projects/my-project/transferConfigs/my-transferConfig/transferResources/my-transferResource', + * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "transferRuns": [] + * // "destination": "my_destination", + * // "hierarchyDetail": {}, + * // "lastSuccessfulRun": {}, + * // "latestRun": {}, + * // "latestStatusDetail": {}, + * // "name": "my_name", + * // "type": "my_type", + * // "updateTime": "my_updateTime" * // } * } * @@ -6131,55 +7005,54 @@ export namespace bigquerydatatransfer_v1 { * @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$Transferconfigs$Runs$List, + get( + params: Params$Resource$Projects$Transferconfigs$Transferresources$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Transferconfigs$Runs$List, + get( + params?: Params$Resource$Projects$Transferconfigs$Transferresources$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Transferconfigs$Runs$List, + ): Promise>; + get( + params: Params$Resource$Projects$Transferconfigs$Transferresources$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Transferconfigs$Runs$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Transferconfigs$Transferresources$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Transferconfigs$Runs$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Transferconfigs$Transferresources$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Transferconfigs$Runs$List - | BodyResponseCallback + | Params$Resource$Projects$Transferconfigs$Transferresources$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Transferconfigs$Runs$List; + {}) as Params$Resource$Projects$Transferconfigs$Transferresources$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Transferconfigs$Runs$List; + params = + {} as Params$Resource$Projects$Transferconfigs$Transferresources$Get; options = {}; } @@ -6193,71 +7066,29 @@ export namespace bigquerydatatransfer_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/runs').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Transferconfigs$Runs$Delete extends StandardParameters { - /** - * Required. The name of the resource requested. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}/runs/{run_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}/runs/{run_id\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Transferconfigs$Runs$Get extends StandardParameters { - /** - * Required. The name of the resource requested. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}/runs/{run_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}/runs/{run_id\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Transferconfigs$Runs$List extends StandardParameters { - /** - * Page size. The default page size is the maximum value of 1000 results. - */ - pageSize?: number; - /** - * Pagination token, which can be used to request a specific page of `ListTransferRunsRequest` list results. For multiple-page results, `ListTransferRunsResponse` outputs a `next_page` token, which can be used as the `page_token` value to request the next page of list results. - */ - pageToken?: string; - /** - * Required. Name of transfer configuration for which transfer runs should be retrieved. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}` - */ - parent?: string; - /** - * Indicates how run attempts are to be pulled. - */ - runAttempt?: string; - /** - * When specified, only transfer runs with requested states are returned. - */ - states?: string[]; - } - - export class Resource$Projects$Transferconfigs$Runs$Transferlogs { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Returns log messages for the transfer run. + * Returns information about transfer resources. * @example * ```js * // Before running the sample: @@ -6291,23 +7122,22 @@ export namespace bigquerydatatransfer_v1 { * * // Do the magic * const res = - * await bigquerydatatransfer.projects.transferConfigs.runs.transferLogs.list({ - * // Message types to return. If not populated - INFO, WARNING and ERROR messages are returned. - * messageTypes: 'placeholder-value', - * // Page size. The default page size is the maximum value of 1000 results. + * await bigquerydatatransfer.projects.transferConfigs.transferResources.list({ + * // Optional. Filter for the transfer resources. Currently supported filters include: * Resource name: `name` - Wildcard supported * Resource type: `type` * Resource destination: `destination` * Latest resource state: `latest_status_detail.state` * Last update time: `update_time` - RFC-3339 format * Parent table name: `hierarchy_detail.partition_detail.table` Multiple filters can be applied using the `AND/OR` operator. Examples: * `name="*123" AND (type="TABLE" OR latest_status_detail.state="SUCCEEDED")` * `update_time \>= "2012-04-21T11:30:00-04:00"` * `hierarchy_detail.partition_detail.table = "table1"` + * filter: 'placeholder-value', + * // Optional. The maximum number of transfer resources to return. The maximum value is 1000; values above 1000 will be coerced to 1000. The default page size is the maximum value of 1000 results. * pageSize: 'placeholder-value', - * // Pagination token, which can be used to request a specific page of `ListTransferLogsRequest` list results. For multiple-page results, `ListTransferLogsResponse` outputs a `next_page` token, which can be used as the `page_token` value to request the next page of list results. + * // Optional. A page token, received from a previous `ListTransferResources` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTransferResources` must match the call that provided the page token. * pageToken: 'placeholder-value', - * // Required. Transfer run name. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}/runs/{run_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}/runs/{run_id\}` - * parent: - * 'projects/my-project/transferConfigs/my-transferConfig/runs/my-run', + * // Required. Name of transfer configuration for which transfer resources should be retrieved. The name should be in one of the following forms: * `projects/{project\}/transferConfigs/{transfer_config\}` * `projects/{project\}/locations/{location_id\}/transferConfigs/{transfer_config\}` + * parent: 'projects/my-project/transferConfigs/my-transferConfig', * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "transferMessages": [] + * // "transferResources": [] * // } * } * @@ -6324,55 +7154,57 @@ export namespace bigquerydatatransfer_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List, + params: Params$Resource$Projects$Transferconfigs$Transferresources$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List, + params?: Params$Resource$Projects$Transferconfigs$Transferresources$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List, + params: Params$Resource$Projects$Transferconfigs$Transferresources$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List, + params: Params$Resource$Projects$Transferconfigs$Transferresources$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Transferconfigs$Transferresources$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List - | BodyResponseCallback + | Params$Resource$Projects$Transferconfigs$Transferresources$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List; + {}) as Params$Resource$Projects$Transferconfigs$Transferresources$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List; + {} as Params$Resource$Projects$Transferconfigs$Transferresources$List; options = {}; } @@ -6386,7 +7218,7 @@ export namespace bigquerydatatransfer_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/transferLogs').replace( + url: (rootUrl + '/v1/{+parent}/transferResources').replace( /([^:]\/)\/+/g, '$1' ), @@ -6401,31 +7233,39 @@ export namespace bigquerydatatransfer_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Projects$Transferconfigs$Runs$Transferlogs$List extends StandardParameters { + export interface Params$Resource$Projects$Transferconfigs$Transferresources$Get extends StandardParameters { /** - * Message types to return. If not populated - INFO, WARNING and ERROR messages are returned. + * Required. The name of the transfer resource in the form of: * `projects/{project\}/transferConfigs/{transfer_config\}/transferResources/{transfer_resource\}` * `projects/{project\}/locations/{location\}/transferConfigs/{transfer_config\}/transferResources/{transfer_resource\}` */ - messageTypes?: string[]; + name?: string; + } + export interface Params$Resource$Projects$Transferconfigs$Transferresources$List extends StandardParameters { /** - * Page size. The default page size is the maximum value of 1000 results. + * Optional. Filter for the transfer resources. Currently supported filters include: * Resource name: `name` - Wildcard supported * Resource type: `type` * Resource destination: `destination` * Latest resource state: `latest_status_detail.state` * Last update time: `update_time` - RFC-3339 format * Parent table name: `hierarchy_detail.partition_detail.table` Multiple filters can be applied using the `AND/OR` operator. Examples: * `name="*123" AND (type="TABLE" OR latest_status_detail.state="SUCCEEDED")` * `update_time \>= "2012-04-21T11:30:00-04:00"` * `hierarchy_detail.partition_detail.table = "table1"` + */ + filter?: string; + /** + * Optional. The maximum number of transfer resources to return. The maximum value is 1000; values above 1000 will be coerced to 1000. The default page size is the maximum value of 1000 results. */ pageSize?: number; /** - * Pagination token, which can be used to request a specific page of `ListTransferLogsRequest` list results. For multiple-page results, `ListTransferLogsResponse` outputs a `next_page` token, which can be used as the `page_token` value to request the next page of list results. + * Optional. A page token, received from a previous `ListTransferResources` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTransferResources` must match the call that provided the page token. */ pageToken?: string; /** - * Required. Transfer run name. If you are using the regionless method, the location must be `US` and the name should be in the following form: * `projects/{project_id\}/transferConfigs/{config_id\}/runs/{run_id\}` If you are using the regionalized method, the name should be in the following form: * `projects/{project_id\}/locations/{location_id\}/transferConfigs/{config_id\}/runs/{run_id\}` + * Required. Name of transfer configuration for which transfer resources should be retrieved. The name should be in one of the following forms: * `projects/{project\}/transferConfigs/{transfer_config\}` * `projects/{project\}/locations/{location_id\}/transferConfigs/{transfer_config\}` */ parent?: string; } diff --git a/src/apis/bigqueryreservation/v1.ts b/src/apis/bigqueryreservation/v1.ts index 320e03211ca..de40f1f29f3 100644 --- a/src/apis/bigqueryreservation/v1.ts +++ b/src/apis/bigqueryreservation/v1.ts @@ -144,6 +144,10 @@ export namespace bigqueryreservation_v1 { * Output only. Name of the resource. E.g.: `projects/myproject/locations/US/reservations/team1-prod/assignments/123`. The assignment_id must only contain lower case alphanumeric characters or dashes and the max length is 64 characters. */ name?: string | null; + /** + * Optional. Represents the principal for this assignment. If not empty, jobs run by this principal will utilize the associated reservation. Otherwise, jobs will fall back to using the reservation assigned to the project, folder, or organization (in that order). If no reservation is assigned at any of these levels, on-demand capacity will be used. The supported formats are: * `principal://goog/subject/USER_EMAIL_ADDRESS` for users, * `principal://iam.googleapis.com/projects/-/serviceAccounts/SA_EMAIL_ADDRESS` for service accounts, * `principal://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/subject/SUBJECT_ID` for workload identity pool identities. * The special value `unknown_or_deleted_user` represents principals which cannot be read from the user info service, for example deleted users. + */ + principal?: string | null; /** * Optional. The scheduling policy to use for jobs and queries of this assignee when running under the associated reservation. The scheduling policy controls how the reservation's resources are distributed. This overrides the default scheduling policy specified on the reservation. This feature is not yet generally available. */ @@ -4777,6 +4781,7 @@ export namespace bigqueryreservation_v1 { * // "enableGeminiInBigquery": false, * // "jobType": "my_jobType", * // "name": "my_name", + * // "principal": "my_principal", * // "schedulingPolicy": {}, * // "state": "my_state" * // } @@ -4791,6 +4796,7 @@ export namespace bigqueryreservation_v1 { * // "enableGeminiInBigquery": false, * // "jobType": "my_jobType", * // "name": "my_name", + * // "principal": "my_principal", * // "schedulingPolicy": {}, * // "state": "my_state" * // } @@ -5390,6 +5396,7 @@ export namespace bigqueryreservation_v1 { * // "enableGeminiInBigquery": false, * // "jobType": "my_jobType", * // "name": "my_name", + * // "principal": "my_principal", * // "schedulingPolicy": {}, * // "state": "my_state" * // } @@ -5538,6 +5545,7 @@ export namespace bigqueryreservation_v1 { * // "enableGeminiInBigquery": false, * // "jobType": "my_jobType", * // "name": "my_name", + * // "principal": "my_principal", * // "schedulingPolicy": {}, * // "state": "my_state" * // } @@ -5552,6 +5560,7 @@ export namespace bigqueryreservation_v1 { * // "enableGeminiInBigquery": false, * // "jobType": "my_jobType", * // "name": "my_name", + * // "principal": "my_principal", * // "schedulingPolicy": {}, * // "state": "my_state" * // } diff --git a/src/apis/bigtableadmin/v2.ts b/src/apis/bigtableadmin/v2.ts index 0f70f4cc349..6c031eea34f 100644 --- a/src/apis/bigtableadmin/v2.ts +++ b/src/apis/bigtableadmin/v2.ts @@ -139,7 +139,7 @@ export namespace bigtableadmin_v2 { */ description?: string | null; /** - * Strongly validated etag for optimistic concurrency control. Preserve the value returned from `GetAppProfile` when calling `UpdateAppProfile` to fail the request if there has been a modification in the mean time. The `update_mask` of the request need not include `etag` for this protection to apply. See [Wikipedia](https://en.wikipedia.org/wiki/HTTP_ETag) and [RFC 7232](https://tools.ietf.org/html/rfc7232#section-2.3) for more details. + * Strongly validated etag for optimistic concurrency control. Preserve the value returned from `GetAppProfile` when calling `UpdateAppProfile` to fail the request if there has been a modification in the meantime. The `update_mask` of the request need not include `etag` for this protection to apply. See [Wikipedia](https://en.wikipedia.org/wiki/HTTP_ETag) and [RFC 7232](https://tools.ietf.org/html/rfc7232#section-2.3) for more details. */ etag?: string | null; /** @@ -218,6 +218,10 @@ export namespace bigtableadmin_v2 { * How frequently automated backups should occur. The only supported value at this time is 24 hours. An undefined frequency is treated as 24 hours. */ frequency?: string | null; + /** + * Optional. A list of Cloud Bigtable zones where automated backups are allowed to be created. If empty, automated backups will be created in all zones of the instance. Locations are in the format `projects/{project\}/locations/{zone\}`. This field can only set for tables in Enterprise Plus instances. + */ + locations?: string[] | null; /** * Required. How long the automated backups should be retained. Values must be at least 3 days and at most 90 days. */ @@ -938,6 +942,15 @@ export namespace bigtableadmin_v2 { */ replicationState?: string | null; } + /** + * Configuration of a memory layer. + */ + export interface Schema$GoogleBigtableAdminV2MemoryLayerMemoryConfig { + /** + * Output only. Reporting the current size of the memory layer in GiB. + */ + storageSizeGib?: number | null; + } /** * A value that combines incremental updates into a summarized value. Data is never directly written or read using type `Aggregate`. Writes provide either the `input_type` or `state_type`, and reads always return the `state_type` . */ @@ -995,7 +1008,16 @@ export namespace bigtableadmin_v2 { /** * bool Values of type `Bool` are stored in `Value.bool_value`. */ - export interface Schema$GoogleBigtableAdminV2TypeBool {} + export interface Schema$GoogleBigtableAdminV2TypeBool { + /** + * Specifies the encoding to use when converting to or from lower level types. + */ + encoding?: Schema$GoogleBigtableAdminV2TypeBoolEncoding; + } + /** + * Defines rules used to convert to or from lower level types. + */ + export interface Schema$GoogleBigtableAdminV2TypeBoolEncoding {} /** * Bytes Values of type `Bytes` are stored in `Value.bytes_value`. */ @@ -1052,6 +1074,36 @@ export namespace bigtableadmin_v2 { * A geography type, representing a point or region on Earth. The value is stored in `Value.bytes_value` as Well-Known Binary (WKB) bytes. */ export interface Schema$GoogleBigtableAdminV2TypeGeography {} + /** + * Int32 Values of type `Int32` are stored in `Value.int_value`. + */ + export interface Schema$GoogleBigtableAdminV2TypeInt32 { + /** + * The encoding to use when converting to or from lower level types. + */ + encoding?: Schema$GoogleBigtableAdminV2TypeInt32Encoding; + } + /** + * Rules used to convert to or from lower level types. + */ + export interface Schema$GoogleBigtableAdminV2TypeInt32Encoding { + /** + * Use `BigEndianBytes` encoding. + */ + bigEndianBytes?: Schema$GoogleBigtableAdminV2TypeInt32EncodingBigEndianBytes; + /** + * Use `OrderedCodeBytes` encoding. + */ + orderedCodeBytes?: Schema$GoogleBigtableAdminV2TypeInt32EncodingOrderedCodeBytes; + } + /** + * Encodes the value as a 4-byte big-endian two's complement value. Sorted mode: non-negative values are supported. Distinct mode: all values are supported. Compatible with: - BigQuery `BINARY` encoding - HBase `Bytes.toBytes` - Java `ByteBuffer.putInt()` with `ByteOrder.BIG_ENDIAN` + */ + export interface Schema$GoogleBigtableAdminV2TypeInt32EncodingBigEndianBytes {} + /** + * Encodes the value in a variable length binary format of up to 5 bytes. Values that are closer to zero use fewer bytes. Sorted mode: all values are supported. Distinct mode: all values are supported. + */ + export interface Schema$GoogleBigtableAdminV2TypeInt32EncodingOrderedCodeBytes {} /** * Int64 Values of type `Int64` are stored in `Value.int_value`. */ @@ -1271,6 +1323,10 @@ export namespace bigtableadmin_v2 { * Required. The descriptive name for this instance as it appears in UIs. Can be changed at any time, but should be kept globally unique to avoid confusion. */ displayName?: string | null; + /** + * Optional. The edition of the instance. See Edition for details. + */ + edition?: string | null; /** * Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. They can be used to filter resources and aggregate metrics. * Label keys must be between 1 and 63 characters long and must conform to the regular expression: `\p{Ll\}\p{Lo\}{0,62\}`. * Label values must be between 0 and 63 characters long and must conform to the regular expression: `[\p{Ll\}\p{Lo\}\p{N\}_-]{0,63\}`. * No more than 64 labels can be associated with a given resource. * Keys and values must both be under 128 bytes. */ @@ -1438,6 +1494,23 @@ export namespace bigtableadmin_v2 { */ nextPageToken?: string | null; } + /** + * Response message for BigtableInstanceAdmin.ListMemoryLayers. + */ + export interface Schema$ListMemoryLayersResponse { + /** + * Locations from which MemoryLayer information could not be retrieved, due to an outage or some other transient condition. MemoryLayers from these locations may be missing from `memory_layers`, or may only have partial information returned. Values are of the form `projects//locations/` + */ + failedLocations?: string[] | null; + /** + * The list of requested memory layers. + */ + memoryLayers?: Schema$MemoryLayer[]; + /** + * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + } /** * The response message for Operations.ListOperations. */ @@ -1554,6 +1627,31 @@ export namespace bigtableadmin_v2 { */ query?: string | null; } + /** + * If set, eligible single-row requests (currently limited to ReadRows) using this app profile will be routed to the memory layer. All eligible writes populate the memory layer. MemoryConfig can only be set if the AppProfile uses single cluster routing and the configured cluster has a memory layer enabled. + */ + export interface Schema$MemoryConfig {} + /** + * The memory layer of a cluster. A memory layer serves reads from memory without hitting the backing persistent data store. + */ + export interface Schema$MemoryLayer { + /** + * Optional. The etag for this memory layer. This may be sent on update requests to ensure that the client has an up-to-date value before proceeding. The server returns an ABORTED error on a mismatched etag. + */ + etag?: string | null; + /** + * The configuration of this memory layer. Set an empty `memory_config` to enable the memory layer. Unset this to disable the memory layer. + */ + memoryConfig?: Schema$GoogleBigtableAdminV2MemoryLayerMemoryConfig; + /** + * Identifier. Name of the memory layer. This is always: "projects/{project\}/instances/{instance\}/clusters/{cluster\}/memoryLayer". + */ + name?: string | null; + /** + * Output only. The current state of the memory layer. + */ + state?: string | null; + } /** * A create, update, or delete of a particular column family. */ @@ -1841,6 +1939,10 @@ export namespace bigtableadmin_v2 { * Standard options for isolating this app profile's traffic from other use cases. */ export interface Schema$StandardIsolation { + /** + * Optional. The memory config to use for requests sent using this app profile. + */ + memoryConfig?: Schema$MemoryConfig; /** * The priority of requests sent using this app profile. */ @@ -1892,7 +1994,7 @@ export namespace bigtableadmin_v2 { */ deletionProtection?: boolean | null; /** - * Immutable. The granularity (i.e. `MILLIS`) at which timestamps are stored in this table. Timestamps not matching the granularity will be rejected. If unspecified at creation time, the value will be set to `MILLIS`. Views: `SCHEMA_VIEW`, `FULL`. + * Immutable. The granularity at which timestamps are stored in this table. Timestamps not matching the granularity will be rejected. If unspecified at creation time, the value will be set to `MILLIS`. Views: `SCHEMA_VIEW`, `FULL`. */ granularity?: string | null; /** @@ -2027,6 +2129,10 @@ export namespace bigtableadmin_v2 { * Geography */ geographyType?: Schema$GoogleBigtableAdminV2TypeGeography; + /** + * Int32 + */ + int32Type?: Schema$GoogleBigtableAdminV2TypeInt32; /** * Int64 */ @@ -2200,6 +2306,36 @@ export namespace bigtableadmin_v2 { */ updateMask?: string | null; } + /** + * The metadata for the Operation returned by UpdateMemoryLayer. + */ + export interface Schema$UpdateMemoryLayerMetadata { + /** + * The time at which the operation failed or was completed successfully. + */ + finishTime?: string | null; + /** + * The request that prompted the initiation of this UpdateMemoryLayer operation. + */ + originalRequest?: Schema$UpdateMemoryLayerRequest; + /** + * The time at which the original request was received. + */ + requestTime?: string | null; + } + /** + * Request message for BigtableInstanceAdmin.UpdateMemoryLayer. + */ + export interface Schema$UpdateMemoryLayerRequest { + /** + * Required. The memory layer to update. The memory layer's `name` format is as follows: `projects/{project\}/instances/{instance\}/clusters/{cluster\}/memoryLayer`. + */ + memoryLayer?: Schema$MemoryLayer; + /** + * Optional. The list of fields to update. + */ + updateMask?: string | null; + } /** * The metadata for the Operation returned by UpdateSchemaBundle. */ @@ -2984,6 +3120,7 @@ export namespace bigtableadmin_v2 { * // { * // "createTime": "my_createTime", * // "displayName": "my_displayName", + * // "edition": "my_edition", * // "labels": {}, * // "name": "my_name", * // "satisfiesPzi": false, @@ -3444,6 +3581,7 @@ export namespace bigtableadmin_v2 { * // { * // "createTime": "my_createTime", * // "displayName": "my_displayName", + * // "edition": "my_edition", * // "labels": {}, * // "name": "my_name", * // "satisfiesPzi": false, @@ -3922,6 +4060,7 @@ export namespace bigtableadmin_v2 { * // { * // "createTime": "my_createTime", * // "displayName": "my_displayName", + * // "edition": "my_edition", * // "labels": {}, * // "name": "my_name", * // "satisfiesPzi": false, @@ -3938,6 +4077,7 @@ export namespace bigtableadmin_v2 { * // { * // "createTime": "my_createTime", * // "displayName": "my_displayName", + * // "edition": "my_edition", * // "labels": {}, * // "name": "my_name", * // "satisfiesPzi": false, @@ -4996,6 +5136,7 @@ export namespace bigtableadmin_v2 { context: APIRequestContext; backups: Resource$Projects$Instances$Clusters$Backups; hotTablets: Resource$Projects$Instances$Clusters$Hottablets; + memoryLayers: Resource$Projects$Instances$Clusters$Memorylayers; constructor(context: APIRequestContext) { this.context = context; this.backups = new Resource$Projects$Instances$Clusters$Backups( @@ -5004,6 +5145,9 @@ export namespace bigtableadmin_v2 { this.hotTablets = new Resource$Projects$Instances$Clusters$Hottablets( this.context ); + this.memoryLayers = new Resource$Projects$Instances$Clusters$Memorylayers( + this.context + ); } /** @@ -5462,6 +5606,153 @@ export namespace bigtableadmin_v2 { } } + /** + * Gets information about the memory layer of a cluster. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/bigtableadmin.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const bigtableadmin = google.bigtableadmin('v2'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigtable.admin', + * 'https://www.googleapis.com/auth/bigtable.admin.cluster', + * 'https://www.googleapis.com/auth/bigtable.admin.instance', + * 'https://www.googleapis.com/auth/cloud-bigtable.admin', + * 'https://www.googleapis.com/auth/cloud-bigtable.admin.cluster', + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await bigtableadmin.projects.instances.clusters.getMemoryLayer({ + * // Required. The unique name of the requested cluster's memory layer. Values are of the form `projects/{project\}/instances/{instance\}/clusters/{cluster\}/memoryLayer`. + * name: 'projects/my-project/instances/my-instance/clusters/my-cluster/memoryLayer', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "memoryConfig": {}, + * // "name": "my_name", + * // "state": "my_state" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getMemoryLayer( + params: Params$Resource$Projects$Instances$Clusters$Getmemorylayer, + options: StreamMethodOptions + ): Promise>; + getMemoryLayer( + params?: Params$Resource$Projects$Instances$Clusters$Getmemorylayer, + options?: MethodOptions + ): Promise>; + getMemoryLayer( + params: Params$Resource$Projects$Instances$Clusters$Getmemorylayer, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getMemoryLayer( + params: Params$Resource$Projects$Instances$Clusters$Getmemorylayer, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getMemoryLayer( + params: Params$Resource$Projects$Instances$Clusters$Getmemorylayer, + callback: BodyResponseCallback + ): void; + getMemoryLayer(callback: BodyResponseCallback): void; + getMemoryLayer( + paramsOrCallback?: + | Params$Resource$Projects$Instances$Clusters$Getmemorylayer + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Instances$Clusters$Getmemorylayer; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Instances$Clusters$Getmemorylayer; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://bigtableadmin.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v2/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Lists information about clusters in an instance. * @example @@ -5970,6 +6261,12 @@ export namespace bigtableadmin_v2 { */ name?: string; } + export interface Params$Resource$Projects$Instances$Clusters$Getmemorylayer extends StandardParameters { + /** + * Required. The unique name of the requested cluster's memory layer. Values are of the form `projects/{project\}/instances/{instance\}/clusters/{cluster\}/memoryLayer`. + */ + name?: string; + } export interface Params$Resource$Projects$Instances$Clusters$List extends StandardParameters { /** * DEPRECATED: This field is unused and ignored. @@ -7729,6 +8026,184 @@ export namespace bigtableadmin_v2 { startTime?: string; } + export class Resource$Projects$Instances$Clusters$Memorylayers { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists information about memory layers. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/bigtableadmin.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const bigtableadmin = google.bigtableadmin('v2'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigtable.admin', + * 'https://www.googleapis.com/auth/bigtable.admin.cluster', + * 'https://www.googleapis.com/auth/bigtable.admin.instance', + * 'https://www.googleapis.com/auth/cloud-bigtable.admin', + * 'https://www.googleapis.com/auth/cloud-bigtable.admin.cluster', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await bigtableadmin.projects.instances.clusters.memoryLayers.list( + * { + * // Optional. The maximum number of memory layers to return. The service may return fewer than this value. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous `ListMemoryLayers` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMemoryLayers` must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The unique name of the cluster for which a list of memory layers is requested. Values are of the form `projects/{project\}/instances/{instance\}/clusters/{cluster\}`. Use `{cluster\} = '-'` to list MemoryLayers for all Clusters in an instance, e.g., `projects/myproject/instances/myinstance/clusters/-`. + * parent: 'projects/my-project/instances/my-instance/clusters/my-cluster', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "failedLocations": [], + * // "memoryLayers": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Instances$Clusters$Memorylayers$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Instances$Clusters$Memorylayers$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Instances$Clusters$Memorylayers$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Instances$Clusters$Memorylayers$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Instances$Clusters$Memorylayers$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Instances$Clusters$Memorylayers$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Instances$Clusters$Memorylayers$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Instances$Clusters$Memorylayers$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://bigtableadmin.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v2/{+parent}/memoryLayers').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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$Instances$Clusters$Memorylayers$List extends StandardParameters { + /** + * Optional. The maximum number of memory layers to return. The service may return fewer than this value. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous `ListMemoryLayers` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMemoryLayers` must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The unique name of the cluster for which a list of memory layers is requested. Values are of the form `projects/{project\}/instances/{instance\}/clusters/{cluster\}`. Use `{cluster\} = '-'` to list MemoryLayers for all Clusters in an instance, e.g., `projects/myproject/instances/myinstance/clusters/-`. + */ + parent?: string; + } + export class Resource$Projects$Instances$Logicalviews { context: APIRequestContext; constructor(context: APIRequestContext) { @@ -15528,7 +16003,7 @@ export namespace bigtableadmin_v2 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -15566,7 +16041,7 @@ export namespace bigtableadmin_v2 { * * // Do the magic * const res = await bigtableadmin.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -15687,7 +16162,7 @@ export namespace bigtableadmin_v2 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/blogger/v3.ts b/src/apis/blogger/v3.ts index 66e1f067d73..c7a32519cd2 100644 --- a/src/apis/blogger/v3.ts +++ b/src/apis/blogger/v3.ts @@ -664,7 +664,7 @@ export namespace blogger_v3 { * blogId: 'placeholder-value', * * maxPosts: 'placeholder-value', - * + * // Unspecified is interpreted as READER. * view: 'placeholder-value', * }); * console.log(res.data); @@ -813,7 +813,7 @@ export namespace blogger_v3 { * // Do the magic * const res = await blogger.blogs.getByUrl({ * url: 'placeholder-value', - * + * // Unspecified is interpreted as READER. * view: 'placeholder-value', * }); * console.log(res.data); @@ -968,7 +968,7 @@ export namespace blogger_v3 { * status: 'placeholder-value', * * userId: 'placeholder-value', - * + * // Unspecified is interpreted as the user's role on the blog. * view: 'placeholder-value', * }); * console.log(res.data); @@ -1086,7 +1086,7 @@ export namespace blogger_v3 { */ maxPosts?: number; /** - * + * Unspecified is interpreted as READER. */ view?: string; } @@ -1096,7 +1096,7 @@ export namespace blogger_v3 { */ url?: string; /** - * + * Unspecified is interpreted as READER. */ view?: string; } @@ -1118,7 +1118,7 @@ export namespace blogger_v3 { */ userId?: string; /** - * + * Unspecified is interpreted as the user's role on the blog. */ view?: string; } diff --git a/src/apis/businessprofileperformance/v1.ts b/src/apis/businessprofileperformance/v1.ts index 49c1942cb48..ed69378b230 100644 --- a/src/apis/businessprofileperformance/v1.ts +++ b/src/apis/businessprofileperformance/v1.ts @@ -142,7 +142,7 @@ export namespace businessprofileperformance_v1 { timeSeries?: Schema$TimeSeries; } /** - * Represents all possible subentity types that are associated with DailyMetrics. + * Represents all possible subentity types that are associated with DailyMetrics. Note: Currently, all metrics are returned as daily aggregates and sub-entity breakdowns are not supported. */ export interface Schema$DailySubEntityType { /** @@ -290,7 +290,7 @@ export namespace businessprofileperformance_v1 { } /** - * Returns the values for each date from a given time range and optionally the sub entity type, where applicable, that are associated with the specific daily metrics. Example request: `GET https://businessprofileperformance.googleapis.com/v1/locations/12345:fetchMultiDailyMetricsTimeSeries?dailyMetrics=WEBSITE_CLICKS&dailyMetrics=CALL_CLICKS&daily_range.start_date.year=2022&daily_range.start_date.month=1&daily_range.start_date.day=1&daily_range.end_date.year=2022&daily_range.end_date.month=3&daily_range.end_date.day=31` + * Returns the values for each date from a given time range that are associated with the specific daily metrics. Note: Only daily data is available. Hourly metrics are not supported. Example request: `GET https://businessprofileperformance.googleapis.com/v1/locations/12345:fetchMultiDailyMetricsTimeSeries?dailyMetrics=WEBSITE_CLICKS&dailyMetrics=CALL_CLICKS&daily_range.start_date.year=2022&daily_range.start_date.month=1&daily_range.start_date.day=1&daily_range.end_date.year=2022&daily_range.end_date.month=3&daily_range.end_date.day=31` * @example * ```js * // Before running the sample: @@ -455,7 +455,7 @@ export namespace businessprofileperformance_v1 { } /** - * Returns the values for each date from a given time range that are associated with the specific daily metric. Example request: `GET https://businessprofileperformance.googleapis.com/v1/locations/12345:getDailyMetricsTimeSeries?dailyMetric=WEBSITE_CLICKS&daily_range.start_date.year=2022&daily_range.start_date.month=1&daily_range.start_date.day=1&daily_range.end_date.year=2022&daily_range.end_date.month=3&daily_range.end_date.day=31` + * Returns the values for each date from a given time range that are associated with the specific daily metric. Note: Only daily data is available. Hourly metrics are not supported. Example request: `GET https://businessprofileperformance.googleapis.com/v1/locations/12345:getDailyMetricsTimeSeries?dailyMetric=WEBSITE_CLICKS&daily_range.start_date.year=2022&daily_range.start_date.month=1&daily_range.start_date.day=1&daily_range.end_date.year=2022&daily_range.end_date.month=3&daily_range.end_date.day=31` * @example * ```js * // Before running the sample: diff --git a/src/apis/calendar/v3.ts b/src/apis/calendar/v3.ts index 753f4ba17a0..180b5df2528 100644 --- a/src/apis/calendar/v3.ts +++ b/src/apis/calendar/v3.ts @@ -960,6 +960,7 @@ export namespace calendar_v3 { */ declineMessage?: string | null; } + export interface Schema$EventLabel {} export interface Schema$EventOutOfOfficeProperties { /** * Whether to decline meeting invitations which overlap Out of office events. Valid values are declineNone, meaning that no meeting invitations are declined; declineAllConflictingInvitations, meaning that all conflicting meeting invitations that conflict with the event are declined; and declineOnlyNewConflictingInvitations, meaning that only new conflicting meeting invitations which arrive while the Out of office event is present are to be declined. @@ -1138,6 +1139,7 @@ export namespace calendar_v3 { */ timeMin?: string | null; } + export interface Schema$LabelProperties {} export interface Schema$Setting { /** * ETag of the resource. diff --git a/src/apis/certificatemanager/v1.ts b/src/apis/certificatemanager/v1.ts index 8cce8495428..b3a4c0408a0 100644 --- a/src/apis/certificatemanager/v1.ts +++ b/src/apis/certificatemanager/v1.ts @@ -1056,7 +1056,7 @@ export namespace certificatemanager_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1086,7 +1086,7 @@ export namespace certificatemanager_v1 { * * // Do the magic * const res = await certificatemanager.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1213,7 +1213,7 @@ export namespace certificatemanager_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/ces/README.md b/src/apis/ces/README.md index 42e04e58cdc..f148fdd9c2f 100644 --- a/src/apis/ces/README.md +++ b/src/apis/ces/README.md @@ -4,6 +4,15 @@ > +## 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/ces](https://www.npmjs.com/package/@google-cloud/ces) instead. +The [@google-cloud/ces](https://www.npmjs.com/package/@google-cloud/ces) 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 diff --git a/src/apis/ces/v1.ts b/src/apis/ces/v1.ts index ea3c3e1c06a..1b2ad769784 100644 --- a/src/apis/ces/v1.ts +++ b/src/apis/ces/v1.ts @@ -1,4 +1,4 @@ -// Copyright 2026 Google LLC +// 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 @@ -297,6 +297,27 @@ export namespace ces_v1 { */ respectResponseInterruptionSettings?: boolean | null; } + /** + * Represents a tool that allows the agent to call another agent. + */ + export interface Schema$AgentTool { + /** + * Optional. The resource name of the agent that is the entry point of the tool. Format: `projects/{project\}/locations/{location\}/agents/{agent\}` + */ + agent?: string | null; + /** + * Optional. Description of the tool's purpose. + */ + description?: string | null; + /** + * Required. The name of the agent tool. + */ + name?: string | null; + /** + * Optional. Deprecated: Use `agent` instead. The resource name of the root agent that is the entry point of the tool. Format: `projects/{project\}/locations/{location\}/agents/{agent\}` + */ + rootAgent?: string | null; + } /** * Represents an event indicating the transfer of a conversation to a different agent. */ @@ -409,6 +430,10 @@ export namespace ces_v1 { * Required. Display name of the app. */ displayName?: string | null; + /** + * Optional. Error handling settings of the app. + */ + errorHandlingSettings?: Schema$ErrorHandlingSettings; /** * Output only. Etag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes. */ @@ -629,7 +654,7 @@ export namespace ces_v1 { */ export interface Schema$BigQueryExportSettings { /** - * Optional. The BigQuery dataset to export the data to. + * Optional. The BigQuery **dataset ID** to export the data to. */ dataset?: string | null; /** @@ -637,7 +662,7 @@ export namespace ces_v1 { */ enabled?: boolean | null; /** - * Optional. The project ID of the BigQuery dataset to export the data to. Note: If the BigQuery dataset is in a different project from the app, you should grant `roles/bigquery.admin` role to the CES service agent `service-@gcp-sa-ces.iam.gserviceaccount.com`. + * Optional. The **project ID** of the BigQuery dataset to export the data to. Note: If the BigQuery dataset is in a different project from the app, you should grant `roles/bigquery.admin` role to the CES service agent `service-@gcp-sa-ces.iam.gserviceaccount.com`. */ project?: string | null; } @@ -824,6 +849,10 @@ export namespace ces_v1 { * Optional. Agent transfer event. */ agentTransfer?: Schema$AgentTransfer; + /** + * Optional. Blob data. + */ + blob?: Schema$Blob; /** * A struct represents default variables at the start of the conversation, keyed by variable names. */ @@ -1046,6 +1075,10 @@ export namespace ces_v1 { * Optional. Whether to disable conversation logging for the sessions. */ disableConversationLogging?: boolean | null; + /** + * Optional. Controls the retention window for the conversation. If not set, the conversation will be retained for 365 days. + */ + retentionWindow?: string | null; } /** * All information about a single turn in the conversation. @@ -1337,7 +1370,7 @@ export namespace ces_v1 { */ export interface Schema$Deployment { /** - * Required. The resource name of the app version to deploy. Format: projects/{project\}/locations/{location\}/apps/{app\}/versions/{version\} + * Optional. The resource name of the app version to deploy. Format: `projects/{project\}/locations/{location\}/apps/{app\}/versions/{version\}` Use `projects/{project\}/locations/{location\}/apps/{app\}/versions/-` to use the draft app. */ appVersion?: string | null; /** @@ -1357,7 +1390,11 @@ export namespace ces_v1 { */ etag?: string | null; /** - * Identifier. The resource name of the deployment. Format: projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\} + * Optional. Experiment configuration for the deployment. + */ + experimentConfig?: Schema$ExperimentConfig; + /** + * Identifier. The resource name of the deployment. Format: `projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\}` */ name?: string | null; /** @@ -1369,6 +1406,19 @@ export namespace ces_v1 { * 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 {} + /** + * Defines project/location level endpoint control policy. + */ + export interface Schema$EndpointControlPolicy { + /** + * Optional. The allowed HTTP(s) origins that tools in the App are able to directly call. The enforcement depends on the value of enforcement_scope and the VPC-SC status of the project. If a port number is not provided, all ports will be allowed. Otherwise, the port number must match exactly. For example, "https://example.com" will match "https://example.com:443" and any other port. "https://example.com:443" will only match "https://example.com:443". + */ + allowedOrigins?: string[] | null; + /** + * Optional. The scope in which this policy's allowed_origins list is enforced. + */ + enforcementScope?: string | null; + } /** * Indicates the session has terminated, due to either successful completion (e.g. user says "Good bye!" ) or an agent escalation. The agent will not process any further inputs after session is terminated and the client should half-close and disconnect after receiving all remaining responses from the agent. */ @@ -1417,6 +1467,45 @@ export namespace ces_v1 { */ subject?: string | null; } + /** + * Settings to describe how errors should be handled in the app. + */ + export interface Schema$ErrorHandlingSettings { + /** + * Optional. Configuration for ending the session in case of system errors (e.g. LLM errors). + */ + endSessionConfig?: Schema$ErrorHandlingSettingsEndSessionConfig; + /** + * Optional. The strategy to use for error handling. + */ + errorHandlingStrategy?: string | null; + /** + * Optional. Configuration for handling fallback responses. + */ + fallbackResponseConfig?: Schema$ErrorHandlingSettingsFallbackResponseConfig; + } + /** + * Configuration for ending the session in case of system errors (e.g. LLM errors). + */ + export interface Schema$ErrorHandlingSettingsEndSessionConfig { + /** + * Optional. Whether to escalate the session in EndSession. If session is escalated, metadata in EndSession will contain `session_escalated = true`. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/deploy/google-telephony-platform#transfer_a_call_to_a_human_agent for details. + */ + escalateSession?: boolean | null; + } + /** + * Configuration for handling fallback responses. + */ + export interface Schema$ErrorHandlingSettingsFallbackResponseConfig { + /** + * Optional. The fallback messages in case of system errors (e.g. LLM errors), mapped by [supported language code](https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/reference/language). + */ + customFallbackMessages?: {[key: string]: string} | null; + /** + * Optional. The maximum number of fallback attempts to make before the agent emitting EndSession Signal. + */ + maxFallbackAttempts?: number | null; + } /** * Threshold settings for metrics in an Evaluation. */ @@ -1548,6 +1637,14 @@ export namespace ces_v1 { * Optional. The input parameters and values for the tool in JSON object format. */ args?: {[key: string]: any} | null; + /** + * Optional. The [ToolCallContext](https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/python#environment for details) to be passed to the Python tool. + */ + context?: {[key: string]: any} | null; + /** + * Optional. Mock configuration for the tool execution. If this field is set, tools that call other tools will be mocked based on the provided patterns and responses. + */ + mockConfig?: Schema$MockConfig; /** * Optional. The name of the tool to execute. Format: projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\} */ @@ -1582,10 +1679,53 @@ export namespace ces_v1 { */ variables?: {[key: string]: any} | null; } + /** + * Experiment for the deployment. + */ + export interface Schema$ExperimentConfig { + /** + * Optional. Version release for the experiment. + */ + versionRelease?: Schema$ExperimentConfigVersionRelease; + } + /** + * Version release for the experiment. + */ + export interface Schema$ExperimentConfigVersionRelease { + /** + * Optional. State of the version release. + */ + state?: string | null; + /** + * Optional. Traffic allocations for the version release. + */ + trafficAllocations?: Schema$ExperimentConfigVersionReleaseTrafficAllocation[]; + } + /** + * Traffic allocation for the version release. + */ + export interface Schema$ExperimentConfigVersionReleaseTrafficAllocation { + /** + * Optional. App version of the traffic allocation. Format: `projects/{project\}/locations/{location\}/apps/{app\}/versions/{version\}` + */ + appVersion?: string | null; + /** + * Optional. Id of the traffic allocation. Free format string, up to 128 characters. + */ + id?: string | null; + /** + * Optional. Traffic percentage of the traffic allocation. Must be between 0 and 100. + */ + trafficPercentage?: number | null; + } /** * Request message for AgentService.ExportApp. */ export interface Schema$ExportAppRequest { + /** + * Optional. The resource name of the app version to export. Format: `projects/{project\}/locations/{location\}/apps/{app\}/versions/{version\}`. + */ + appVersion?: string | null; /** * Required. The format to export the app in. */ @@ -1646,6 +1786,10 @@ export namespace ces_v1 { * Required. The deployment of the app to use for the session. Format: projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\} */ deployment?: string | null; + /** + * Optional. Indicates if live handoff is enabled for the session. + */ + liveHandoffEnabled?: boolean | null; /** * Optional. The reCAPTCHA token generated by the client-side chat widget. */ @@ -1993,7 +2137,7 @@ export namespace ces_v1 { */ enableMultilingualSupport?: boolean | null; /** - * Optional. The action to perform when an agent receives input in an unsupported language. This can be a predefined action or a custom tool call. Valid values are: - A tool's full resource name, which triggers a specific tool execution. - A predefined system action, such as "escalate" or "exit", which triggers an EndSession signal with corresponding metadata to terminate the conversation. + * Optional. Deprecated: This feature is no longer supported. Use `enable_multilingual_support` instead to improve handling of multilingual input. The action to perform when an agent receives input in an unsupported language. This can be a predefined action or a custom tool call. Valid values are: - A tool's full resource name, which triggers a specific tool execution. - A predefined system action, such as "escalate" or "exit", which triggers an EndSession signal with corresponding metadata to terminate the conversation. */ fallbackAction?: string | null; /** @@ -2222,6 +2366,10 @@ export namespace ces_v1 { * Optional. Configuration for how sensitive data should be redacted. */ redactionConfig?: Schema$RedactionConfig; + /** + * Optional. Configures recording of unredacted audio. Use this to maintain a raw backup with restricted access when audio redaction is enabled, typically for auditing or monitoring purposes. + */ + unredactedAudioRecordingConfig?: Schema$AudioRecordingConfig; } /** * An MCP tool. See https://modelcontextprotocol.io/specification/2025-06-18/server/tools for more details. @@ -2231,6 +2379,10 @@ export namespace ces_v1 { * Optional. Authentication information required to execute the tool against the MCP server. For bearer token authentication, the token applies only to tool execution, not to listing tools. This requires that tools can be listed without authentication. */ apiAuthentication?: Schema$ApiAuthentication; + /** + * Optional. The custom headers to send in the request to the MCP server. The values must be in the format `$context.variables.` and can be set in the session variables. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection for more details. + */ + customHeaders?: {[key: string]: string} | null; /** * Optional. The description of the MCP tool. */ @@ -2268,6 +2420,10 @@ export namespace ces_v1 { * Optional. Authentication information required to access tools and execute a tool against the MCP server. For bearer token authentication, the token applies only to tool execution, not to listing tools. This requires that tools can be listed without authentication. */ apiAuthentication?: Schema$ApiAuthentication; + /** + * Optional. The custom headers to send in the request to the MCP server. The values must be in the format `$context.variables.` and can be set in the session variables. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection for more details. + */ + customHeaders?: {[key: string]: string} | null; /** * Required. The address of the MCP server, for example, "https://example.com/mcp/". If the server is built with the MCP SDK, the url should be suffixed with "/mcp/". Only Streamable HTTP transport based servers are supported. See https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http for more details. */ @@ -2307,6 +2463,44 @@ export namespace ces_v1 { */ llmMetricsOptedOut?: boolean | null; } + /** + * Mock tool calls configuration for the session. + */ + export interface Schema$MockConfig { + /** + * Optional. All tool calls to mock for the duration of the session. + */ + mockedToolCalls?: Schema$MockedToolCall[]; + /** + * Required. Beavhior for tool calls that don't match any args patterns in mocked_tool_calls. + */ + unmatchedToolCallBehavior?: string | null; + } + /** + * A mocked tool call. Expresses the target tool + a pattern to match against that tool's args / inputs. If the pattern matches, then the mock response will be returned. + */ + export interface Schema$MockedToolCall { + /** + * Required. A pattern to match against the args / inputs of all dispatched tool calls. If the tool call inputs match this pattern, then mock output will be returned. + */ + expectedArgsPattern?: {[key: string]: any} | null; + /** + * Optional. The mock response / output to return if the tool call args / inputs match the pattern. + */ + mockResponse?: {[key: string]: any} | null; + /** + * Optional. Deprecated. Use tool_identifier instead. + */ + tool?: string | null; + /** + * Optional. The name of the tool to mock. Format: `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` + */ + toolId?: string | null; + /** + * Optional. The toolset to mock. + */ + toolset?: Schema$ToolsetTool; + } /** * Model settings contains various configurations for the LLM model. */ @@ -2814,6 +3008,31 @@ export namespace ces_v1 { */ uniqueItems?: boolean | null; } + /** + * Project/Location level security settings for CES. + */ + export interface Schema$SecuritySettings { + /** + * Output only. Create time of the security settings. + */ + createTime?: string | null; + /** + * Optional. Endpoint control related settings. + */ + endpointControlPolicy?: Schema$EndpointControlPolicy; + /** + * Output only. Etag of the security settings. + */ + etag?: string | null; + /** + * Identifier. The unique identifier of the security settings. Format: `projects/{project\}/locations/{location\}/securitySettings` + */ + name?: string | null; + /** + * Output only. Last update time of the security settings. + */ + updateTime?: string | null; + } /** * Configurations for authentication using a custom service account. */ @@ -2849,7 +3068,11 @@ export namespace ces_v1 { */ deployment?: string | null; /** - * Optional. The entry agent to handle the session. If not specified, the session will be handled by the root agent of the app. Format: `projects/{project\}/locations/{location\}/agents/{agent\}` + * Optional. Whether to enable streaming text outputs from the model. By default, text outputs from the model are collected before sending to the client. NOTE: This is only supported for text (non-voice) sessions via StreamRunSession or BidiRunSession. + */ + enableTextStreaming?: boolean | null; + /** + * Optional. The entry agent to handle the session. If not specified, the session will be handled by the root agent of the app. Format: `projects/{project\}/locations/{location\}/apps/{app\}/agents/{agent\}` */ entryAgent?: string | null; /** @@ -2872,6 +3095,10 @@ export namespace ces_v1 { * Optional. The time zone of the user. If provided, the agent will use the time zone for date and time related variables. Otherwise, the agent will use the time zone specified in the App.time_zone_settings. The format is the IANA Time Zone Database time zone, e.g. "America/Los_Angeles". */ timeZone?: string | null; + /** + * Optional. Whether to use tool fakes for the session. If this field is set, the agent will attempt use tool fakes instead of calling the real tools. + */ + useToolFakes?: boolean | null; } /** * [QueryParameters](https://cloud.google.com/dialogflow/cx/docs/reference/rpc/google.cloud.dialogflow.cx.v3#queryparameters) to send to the remote [Dialogflow](https://cloud.google.com/dialogflow/cx/docs/concept/console-conversational-agents) agent when the session control is transferred to the remote agent. @@ -3084,7 +3311,7 @@ export namespace ces_v1 { */ export interface Schema$TlsConfigCaCert { /** - * Required. The allowed custom CA certificates (in DER format) for HTTPS verification. This overrides the default SSL trust store. If this is empty or unspecified, CES will use Google's default trust store to verify certificates. N.B. Make sure the HTTPS server certificates are signed with "subject alt name". For instance a certificate can be self-signed using the following command, openssl x509 -req -days 200 -in example.com.csr \ -signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\nsubjectAltName='DNS:www.example.com'") + * Required. The allowed custom CA certificates (in DER format) for HTTPS verification. This overrides the default SSL trust store. If this is empty or unspecified, CES will use Google's default trust store to verify certificates. N.B. Make sure the HTTPS server certificates are signed with "subject alt name". For instance a certificate can be self-signed using the following command: ``` openssl x509 -req -days 200 -in example.com.csr \ -signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\nsubjectAltName='DNS:www.example.com'") ``` */ cert?: string | null; /** @@ -3096,6 +3323,10 @@ export namespace ces_v1 { * A tool represents an action that the CES agent can take to achieve certain goals. */ export interface Schema$Tool { + /** + * Optional. The agent tool. + */ + agentTool?: Schema$AgentTool; /** * Optional. The client function. */ @@ -3141,7 +3372,7 @@ export namespace ces_v1 { */ mcpTool?: Schema$McpTool; /** - * Identifier. The unique identifier of the tool. Format: - `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` for ## standalone tools. `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}/tools/{tool\}` for tools retrieved from a toolset. These tools are dynamic and output-only, they cannot be referenced directly where a tool is expected. + * Identifier. The resource name of the tool. Format: * `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` for standalone tools. * `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}/tools/{tool\}` for tools retrieved from a toolset. These tools are dynamic and output-only; they cannot be referenced directly where a tool is expected. */ name?: string | null; /** @@ -3429,6 +3660,10 @@ export namespace ces_v1 { * Represents a widget tool that the agent can invoke. When the tool is chosen by the agent, agent will return the widget to the client. The client is responsible for processing the widget and generating the next user query to continue the interaction with the agent. */ export interface Schema$WidgetTool { + /** + * Optional. The mapping that defines how data from a source tool is mapped to the widget's input parameters. + */ + dataMapping?: Schema$WidgetToolDataMapping; /** * Optional. The description of the widget tool. */ @@ -3441,11 +3676,61 @@ export namespace ces_v1 { * Optional. The input parameters of the widget tool. */ parameters?: Schema$Schema; + /** + * Optional. Configuration for always-included text responses. + */ + textResponseConfig?: Schema$WidgetToolTextResponseConfig; + /** + * Optional. Configuration for rendering the widget. + */ + uiConfig?: {[key: string]: any} | null; /** * Optional. The type of the widget tool. If not specified, the default type will be CUSTOMIZED. */ widgetType?: string | null; } + /** + * Configuration for mapping data from a source tool to the widget's input parameters. + */ + export interface Schema$WidgetToolDataMapping { + /** + * Optional. A map of widget input parameter fields to the corresponding output fields of the source tool. + */ + fieldMappings?: {[key: string]: string} | null; + /** + * Optional. The mode of the data mapping. + */ + mode?: string | null; + /** + * Optional. Configuration for a Python function used to transform the source tool's output into the widget's input format. + */ + pythonFunction?: Schema$PythonFunction; + /** + * Deprecated: Use `python_function` instead. + */ + pythonScript?: string | null; + /** + * Optional. The resource name of the tool that provides the data for the widget (e.g., a search tool or a custom function). Format: `projects/{project\}/locations/{location\}/agents/{agent\}/tools/{tool\}` + */ + sourceToolName?: string | null; + } + /** + * Configuration for the text response returned with the widget. + */ + export interface Schema$WidgetToolTextResponseConfig { + /** + * Optional. The static text response to return when type is STATIC. + */ + staticText?: string | null; + /** + * Optional. Instruction for the LLM on how to generate the text response. Used as the description for the text response parameter if type is LLM_GENERATED. + */ + textResponseInstruction?: string | null; + /** + * Optional. The strategy for providing the text response. + */ + type?: string | null; + } export class Resource$Projects { context: APIRequestContext; @@ -3610,7 +3895,7 @@ export namespace ces_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3643,7 +3928,7 @@ export namespace ces_v1 { * * // Do the magic * const res = await ces.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3769,7 +4054,7 @@ export namespace ces_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -3883,6 +4168,7 @@ export namespace ces_v1 { * // "deploymentCount": 0, * // "description": "my_description", * // "displayName": "my_displayName", + * // "errorHandlingSettings": {}, * // "etag": "my_etag", * // "evaluationMetricsThresholds": {}, * // "globalInstruction": "my_globalInstruction", @@ -4192,6 +4478,8 @@ export namespace ces_v1 { * // request body parameters * // { * // "args": {}, + * // "context": {}, + * // "mockConfig": {}, * // "tool": "my_tool", * // "toolsetTool": {}, * // "variables": {} @@ -4347,6 +4635,7 @@ export namespace ces_v1 { * requestBody: { * // request body parameters * // { + * // "appVersion": "my_appVersion", * // "exportFormat": "my_exportFormat", * // "gcsUri": "my_gcsUri" * // } @@ -4508,6 +4797,7 @@ export namespace ces_v1 { * // "deploymentCount": 0, * // "description": "my_description", * // "displayName": "my_displayName", + * // "errorHandlingSettings": {}, * // "etag": "my_etag", * // "evaluationMetricsThresholds": {}, * // "globalInstruction": "my_globalInstruction", @@ -4975,6 +5265,7 @@ export namespace ces_v1 { * // "deploymentCount": 0, * // "description": "my_description", * // "displayName": "my_displayName", + * // "errorHandlingSettings": {}, * // "etag": "my_etag", * // "evaluationMetricsThresholds": {}, * // "globalInstruction": "my_globalInstruction", @@ -5007,6 +5298,7 @@ export namespace ces_v1 { * // "deploymentCount": 0, * // "description": "my_description", * // "displayName": "my_displayName", + * // "errorHandlingSettings": {}, * // "etag": "my_etag", * // "evaluationMetricsThresholds": {}, * // "globalInstruction": "my_globalInstruction", @@ -7350,6 +7642,7 @@ export namespace ces_v1 { * // "createTime": "my_createTime", * // "displayName": "my_displayName", * // "etag": "my_etag", + * // "experimentConfig": {}, * // "name": "my_name", * // "updateTime": "my_updateTime" * // } @@ -7364,6 +7657,7 @@ export namespace ces_v1 { * // "createTime": "my_createTime", * // "displayName": "my_displayName", * // "etag": "my_etag", + * // "experimentConfig": {}, * // "name": "my_name", * // "updateTime": "my_updateTime" * // } @@ -7649,6 +7943,7 @@ export namespace ces_v1 { * // "createTime": "my_createTime", * // "displayName": "my_displayName", * // "etag": "my_etag", + * // "experimentConfig": {}, * // "name": "my_name", * // "updateTime": "my_updateTime" * // } @@ -7929,7 +8224,7 @@ export namespace ces_v1 { * * // Do the magic * const res = await ces.projects.locations.apps.deployments.patch({ - * // Identifier. The resource name of the deployment. Format: projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\} + * // Identifier. The resource name of the deployment. Format: `projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\}` * name: 'projects/my-project/locations/my-location/apps/my-app/deployments/my-deployment', * // Optional. The list of fields to update. * updateMask: 'placeholder-value', @@ -7943,6 +8238,7 @@ export namespace ces_v1 { * // "createTime": "my_createTime", * // "displayName": "my_displayName", * // "etag": "my_etag", + * // "experimentConfig": {}, * // "name": "my_name", * // "updateTime": "my_updateTime" * // } @@ -7957,6 +8253,7 @@ export namespace ces_v1 { * // "createTime": "my_createTime", * // "displayName": "my_displayName", * // "etag": "my_etag", + * // "experimentConfig": {}, * // "name": "my_name", * // "updateTime": "my_updateTime" * // } @@ -8107,7 +8404,7 @@ export namespace ces_v1 { } export interface Params$Resource$Projects$Locations$Apps$Deployments$Patch extends StandardParameters { /** - * Identifier. The resource name of the deployment. Format: projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\} + * Identifier. The resource name of the deployment. Format: `projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\}` */ name?: string; /** @@ -9873,6 +10170,7 @@ export namespace ces_v1 { * // request body parameters * // { * // "deployment": "my_deployment", + * // "liveHandoffEnabled": false, * // "recaptchaToken": "my_recaptchaToken" * // } * }, @@ -9987,7 +10285,7 @@ export namespace ces_v1 { } /** - * Initiates a single turn interaction with the CES agent within a session. + * Initiates a single-turn interaction with the CES agent within a session. * @example * ```js * // Before running the sample: @@ -10136,6 +10434,159 @@ export namespace ces_v1 { return createAPIRequest(parameters); } } + + /** + * Initiates a single-turn interaction with the CES agent. Uses server-side streaming to deliver incremental results and partial responses as they are generated. By default, complete responses (e.g., messages from callbacks or full LLM responses) are sent to the client as soon as they are available. To enable streaming individual text chunks directly from the model, set enable_text_streaming to true. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ces.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const ces = google.ces('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/ces', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ces.projects.locations.apps.sessions.streamRunSession({ + * // Required. The unique identifier of the session. Format: `projects/{project\}/locations/{location\}/apps/{app\}/sessions/{session\}` + * session: + * 'projects/my-project/locations/my-location/apps/my-app/sessions/my-session', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "config": {}, + * // "inputs": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "outputs": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + streamRunSession( + params: Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession, + options: StreamMethodOptions + ): Promise>; + streamRunSession( + params?: Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession, + options?: MethodOptions + ): Promise>; + streamRunSession( + params: Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + streamRunSession( + params: Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + streamRunSession( + params: Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession, + callback: BodyResponseCallback + ): void; + streamRunSession( + callback: BodyResponseCallback + ): void; + streamRunSession( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ces.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+session}:streamRunSession').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['session'], + pathParams: ['session'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Projects$Locations$Apps$Sessions$Generatechattoken extends StandardParameters { @@ -10160,6 +10611,17 @@ export namespace ces_v1 { */ requestBody?: Schema$RunSessionRequest; } + export interface Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession extends StandardParameters { + /** + * Required. The unique identifier of the session. Format: `projects/{project\}/locations/{location\}/apps/{app\}/sessions/{session\}` + */ + session?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RunSessionRequest; + } export class Resource$Projects$Locations$Apps$Tools { context: APIRequestContext; @@ -10210,6 +10672,7 @@ export namespace ces_v1 { * requestBody: { * // request body parameters * // { + * // "agentTool": {}, * // "clientFunction": {}, * // "connectorTool": {}, * // "createTime": "my_createTime", @@ -10235,6 +10698,7 @@ export namespace ces_v1 { * * // Example response * // { + * // "agentTool": {}, * // "clientFunction": {}, * // "connectorTool": {}, * // "createTime": "my_createTime", @@ -10531,6 +10995,7 @@ export namespace ces_v1 { * * // Example response * // { + * // "agentTool": {}, * // "clientFunction": {}, * // "connectorTool": {}, * // "createTime": "my_createTime", @@ -10827,7 +11292,7 @@ export namespace ces_v1 { * * // Do the magic * const res = await ces.projects.locations.apps.tools.patch({ - * // Identifier. The unique identifier of the tool. Format: - `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` for ## standalone tools. `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}/tools/{tool\}` for tools retrieved from a toolset. These tools are dynamic and output-only, they cannot be referenced directly where a tool is expected. + * // Identifier. The resource name of the tool. Format: * `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` for standalone tools. * `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}/tools/{tool\}` for tools retrieved from a toolset. These tools are dynamic and output-only; they cannot be referenced directly where a tool is expected. * name: 'projects/my-project/locations/my-location/apps/my-app/tools/my-tool', * // Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated. * updateMask: 'placeholder-value', @@ -10836,6 +11301,7 @@ export namespace ces_v1 { * requestBody: { * // request body parameters * // { + * // "agentTool": {}, * // "clientFunction": {}, * // "connectorTool": {}, * // "createTime": "my_createTime", @@ -10861,6 +11327,7 @@ export namespace ces_v1 { * * // Example response * // { + * // "agentTool": {}, * // "clientFunction": {}, * // "connectorTool": {}, * // "createTime": "my_createTime", @@ -11034,7 +11501,7 @@ export namespace ces_v1 { } export interface Params$Resource$Projects$Locations$Apps$Tools$Patch extends StandardParameters { /** - * Identifier. The unique identifier of the tool. Format: - `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` for ## standalone tools. `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}/tools/{tool\}` for tools retrieved from a toolset. These tools are dynamic and output-only, they cannot be referenced directly where a tool is expected. + * Identifier. The resource name of the tool. Format: * `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` for standalone tools. * `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}/tools/{tool\}` for tools retrieved from a toolset. These tools are dynamic and output-only; they cannot be referenced directly where a tool is expected. */ name?: string; /** diff --git a/src/apis/ces/v1beta.ts b/src/apis/ces/v1beta.ts index e01545a5373..1d8b4eaec1a 100644 --- a/src/apis/ces/v1beta.ts +++ b/src/apis/ces/v1beta.ts @@ -1,4 +1,4 @@ -// Copyright 2026 Google LLC +// 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 @@ -297,6 +297,27 @@ export namespace ces_v1beta { */ respectResponseInterruptionSettings?: boolean | null; } + /** + * Represents a tool that allows the agent to call another agent. + */ + export interface Schema$AgentTool { + /** + * Optional. The resource name of the agent that is the entry point of the tool. Format: `projects/{project\}/locations/{location\}/agents/{agent\}` + */ + agent?: string | null; + /** + * Optional. Description of the tool's purpose. + */ + description?: string | null; + /** + * Required. The name of the agent tool. + */ + name?: string | null; + /** + * Optional. Deprecated: Use `agent` instead. The resource name of the root agent that is the entry point of the tool. Format: `projects/{project\}/locations/{location\}/agents/{agent\}` + */ + rootAgent?: string | null; + } /** * Represents an event indicating the transfer of a conversation to a different agent. */ @@ -545,6 +566,10 @@ export namespace ces_v1beta { * Required. Display name of the app. */ displayName?: string | null; + /** + * Optional. Error handling settings of the app. + */ + errorHandlingSettings?: Schema$ErrorHandlingSettings; /** * Output only. Etag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes. */ @@ -790,7 +815,7 @@ export namespace ces_v1beta { */ export interface Schema$BigQueryExportSettings { /** - * Optional. The BigQuery dataset to export the data to. + * Optional. The BigQuery **dataset ID** to export the data to. */ dataset?: string | null; /** @@ -798,7 +823,7 @@ export namespace ces_v1beta { */ enabled?: boolean | null; /** - * Optional. The project ID of the BigQuery dataset to export the data to. Note: If the BigQuery dataset is in a different project from the app, you should grant `roles/bigquery.admin` role to the CES service agent `service-@gcp-sa-ces.iam.gserviceaccount.com`. + * Optional. The **project ID** of the BigQuery dataset to export the data to. Note: If the BigQuery dataset is in a different project from the app, you should grant `roles/bigquery.admin` role to the CES service agent `service-@gcp-sa-ces.iam.gserviceaccount.com`. */ project?: string | null; } @@ -985,6 +1010,10 @@ export namespace ces_v1beta { * Optional. Agent transfer event. */ agentTransfer?: Schema$AgentTransfer; + /** + * Optional. Blob data. + */ + blob?: Schema$Blob; /** * A struct represents default variables at the start of the conversation, keyed by variable names. */ @@ -1207,6 +1236,10 @@ export namespace ces_v1beta { * Optional. Whether to disable conversation logging for the sessions. */ disableConversationLogging?: boolean | null; + /** + * Optional. Controls the retention window for the conversation. If not set, the conversation will be retained for 365 days. + */ + retentionWindow?: string | null; } /** * All information about a single turn in the conversation. @@ -1502,7 +1535,7 @@ export namespace ces_v1beta { */ export interface Schema$Deployment { /** - * Required. The resource name of the app version to deploy. Format: projects/{project\}/locations/{location\}/apps/{app\}/versions/{version\} + * Optional. The resource name of the app version to deploy. Format: `projects/{project\}/locations/{location\}/apps/{app\}/versions/{version\}` Use `projects/{project\}/locations/{location\}/apps/{app\}/versions/-` to use the draft app. */ appVersion?: string | null; /** @@ -1522,7 +1555,11 @@ export namespace ces_v1beta { */ etag?: string | null; /** - * Identifier. The resource name of the deployment. Format: projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\} + * Optional. Experiment configuration for the deployment. + */ + experimentConfig?: Schema$ExperimentConfig; + /** + * Identifier. The resource name of the deployment. Format: `projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\}` */ name?: string | null; /** @@ -1534,6 +1571,19 @@ export namespace ces_v1beta { * 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 {} + /** + * Defines project/location level endpoint control policy. + */ + export interface Schema$EndpointControlPolicy { + /** + * Optional. The allowed HTTP(s) origins that tools in the App are able to directly call. The enforcement depends on the value of enforcement_scope and the VPC-SC status of the project. If a port number is not provided, all ports will be allowed. Otherwise, the port number must match exactly. For example, "https://example.com" will match "https://example.com:443" and any other port. "https://example.com:443" will only match "https://example.com:443". + */ + allowedOrigins?: string[] | null; + /** + * Optional. The scope in which this policy's allowed_origins list is enforced. + */ + enforcementScope?: string | null; + } /** * Indicates the session has terminated, due to either successful completion (e.g. user says "Good bye!" ) or an agent escalation. The agent will not process any further inputs after session is terminated and the client should half-close and disconnect after receiving all remaining responses from the agent. */ @@ -1582,6 +1632,45 @@ export namespace ces_v1beta { */ subject?: string | null; } + /** + * Settings to describe how errors should be handled in the app. + */ + export interface Schema$ErrorHandlingSettings { + /** + * Optional. Configuration for ending the session in case of system errors (e.g. LLM errors). + */ + endSessionConfig?: Schema$ErrorHandlingSettingsEndSessionConfig; + /** + * Optional. The strategy to use for error handling. + */ + errorHandlingStrategy?: string | null; + /** + * Optional. Configuration for handling fallback responses. + */ + fallbackResponseConfig?: Schema$ErrorHandlingSettingsFallbackResponseConfig; + } + /** + * Configuration for ending the session in case of system errors (e.g. LLM errors). + */ + export interface Schema$ErrorHandlingSettingsEndSessionConfig { + /** + * Optional. Whether to escalate the session in EndSession. If session is escalated, metadata in EndSession will contain `session_escalated = true`. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/deploy/google-telephony-platform#transfer_a_call_to_a_human_agent for details. + */ + escalateSession?: boolean | null; + } + /** + * Configuration for handling fallback responses. + */ + export interface Schema$ErrorHandlingSettingsFallbackResponseConfig { + /** + * Optional. The fallback messages in case of system errors (e.g. LLM errors), mapped by [supported language code](https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/reference/language). + */ + customFallbackMessages?: {[key: string]: string} | null; + /** + * Optional. The maximum number of fallback attempts to make before the agent emitting EndSession Signal. + */ + maxFallbackAttempts?: number | null; + } /** * An evaluation represents all of the information needed to simulate and evaluate an agent. */ @@ -2748,6 +2837,14 @@ export namespace ces_v1beta { * Optional. The input parameters and values for the tool in JSON object format. */ args?: {[key: string]: any} | null; + /** + * Optional. The [ToolCallContext](https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/python#environment for details) to be passed to the Python tool. + */ + context?: {[key: string]: any} | null; + /** + * Optional. Mock configuration for the tool execution. If this field is set, tools that call other tools will be mocked based on the provided patterns and responses. + */ + mockConfig?: Schema$MockConfig; /** * Optional. The name of the tool to execute. Format: projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\} */ @@ -2782,10 +2879,53 @@ export namespace ces_v1beta { */ variables?: {[key: string]: any} | null; } + /** + * Experiment for the deployment. + */ + export interface Schema$ExperimentConfig { + /** + * Optional. Version release for the experiment. + */ + versionRelease?: Schema$ExperimentConfigVersionRelease; + } + /** + * Version release for the experiment. + */ + export interface Schema$ExperimentConfigVersionRelease { + /** + * Optional. State of the version release. + */ + state?: string | null; + /** + * Optional. Traffic allocations for the version release. + */ + trafficAllocations?: Schema$ExperimentConfigVersionReleaseTrafficAllocation[]; + } + /** + * Traffic allocation for the version release. + */ + export interface Schema$ExperimentConfigVersionReleaseTrafficAllocation { + /** + * Optional. App version of the traffic allocation. Format: `projects/{project\}/locations/{location\}/apps/{app\}/versions/{version\}` + */ + appVersion?: string | null; + /** + * Optional. Id of the traffic allocation. Free format string, up to 128 characters. + */ + id?: string | null; + /** + * Optional. Traffic percentage of the traffic allocation. Must be between 0 and 100. + */ + trafficPercentage?: number | null; + } /** * Request message for AgentService.ExportApp. */ export interface Schema$ExportAppRequest { + /** + * Optional. The resource name of the app version to export. Format: `projects/{project\}/locations/{location\}/apps/{app\}/versions/{version\}`. + */ + appVersion?: string | null; /** * Required. The format to export the app in. */ @@ -2808,6 +2948,83 @@ export namespace ces_v1beta { */ appUri?: string | null; } + /** + * Response message for EvaluationService.ExportEvaluationResults. + */ + export interface Schema$ExportEvaluationResultsResponse { + /** + * The content of the exported Evaluation Results. This will be populated if gcs_uri was not specified in the request. + */ + evaluationResultsContent?: string | null; + /** + * The Google Cloud Storage URI folder where the exported Evaluation Results were written. This will be populated if gcs_uri was specified in the request. + */ + evaluationResultsUri?: string | null; + } + /** + * Response message for EvaluationService.ExportEvaluationRuns. + */ + export interface Schema$ExportEvaluationRunsResponse { + /** + * The content of the exported Evaluation Runs. This will be populated if gcs_uri was not specified in the request. + */ + evaluationRunsContent?: string | null; + /** + * The Google Cloud Storage URI folder where the exported Evaluation Runs were written. This will be populated if gcs_uri was specified in the request. + */ + evaluationRunsUri?: string | null; + } + /** + * Request message for EvaluationService.ExportEvaluations. + */ + export interface Schema$ExportEvaluationsRequest { + /** + * Optional. The export options for the evaluations. + */ + exportOptions?: Schema$ExportOptions; + /** + * Optional. Includes evaluation results in the export. At least one of include_evaluation_results or include_evaluations must be set. + */ + includeEvaluationResults?: boolean | null; + /** + * Optional. Includes evaluations in the export. At least one of include_evaluation_results or include_evaluations must be set. + */ + includeEvaluations?: boolean | null; + /** + * Required. The resource names of the evaluations to export. + */ + names?: string[] | null; + } + /** + * Response message for EvaluationService.ExportEvaluations. + */ + export interface Schema$ExportEvaluationsResponse { + /** + * The content of the exported Evaluations. This will be populated if gcs_uri was not specified in the request. + */ + evaluationsContent?: string | null; + /** + * The Google Cloud Storage URI folder where the exported evaluations were written. This will be populated if gcs_uri was specified in the request. + */ + evaluationsUri?: string | null; + /** + * Output only. A map of evaluation resource names that could not be exported, to the reason why they failed. + */ + failedEvaluations?: {[key: string]: string} | null; + } + /** + * Options for exporting CES evaluation resources. + */ + export interface Schema$ExportOptions { + /** + * Optional. The format to export the evaluation results in. Defaults to JSON if not specified. + */ + exportFormat?: string | null; + /** + * Optional. The Google Cloud Storage URI to write the exported Evaluation Results to. + */ + gcsUri?: string | null; + } /** * Expression condition based on session state. */ @@ -2817,6 +3034,32 @@ export namespace ces_v1beta { */ expression?: string | null; } + /** + * Files to be used as context. Files can be provided as raw bytes. + */ + export interface Schema$FileContext { + /** + * Optional. File provided as raw bytes. + */ + fileBytes?: Schema$FileContextFileBytes; + } + /** + * File provided as raw bytes. + */ + export interface Schema$FileContextFileBytes { + /** + * Required. Raw bytes of the file. + */ + data?: string | null; + /** + * Required. The name of the file provided as raw bytes. + */ + fileName?: string | null; + /** + * Required. The IANA standard MIME type of the source data. + */ + mimeType?: string | null; + } /** * The file search tool allows the agent to search across the files uploaded by the app/agent developer. It has presets to give relatively good quality search over the uploaded files and summarization of the retrieved results. */ @@ -2838,6 +3081,179 @@ export namespace ces_v1beta { */ name?: string | null; } + /** + * Request message for AgentService.GenerateAppResource. + */ + export interface Schema$GenerateAppResourceRequest { + /** + * The agent resource to be used by the LLM assistant, can be empty for generating a new agent. + */ + agent?: Schema$Agent; + /** + * Optional. The configuration to be used to generate the agents and tools. + */ + appGenerationConfig?: Schema$GenerateAppResourceRequestAppGenerationConfig; + /** + * Optional. The configuration to be used to generate the evaluations. + */ + evaluationGenerationConfig?: Schema$GenerateAppResourceRequestEvaluationGenerationConfig; + /** + * Optional. The configuration to be used to generate the evaluation personas. + */ + evaluationPersonasGenerationConfig?: Schema$GenerateAppResourceRequestEvaluationPersonasGenerationConfig; + /** + * Optional. The configuration to be used for hill climbing fixes. + */ + hillClimbingFixConfig?: Schema$GenerateAppResourceRequestHillClimbingFixConfig; + /** + * Optional. The configuration to be used for quality report generation. + */ + qualityReportGenerationConfig?: Schema$GenerateAppResourceRequestQualityReportGenerationConfig; + /** + * Optional. List of refine instructions to be used to refine the resource. + */ + refineInstructions?: Schema$GenerateAppResourceRequestRefineInstructions[]; + /** + * The tool resource to be used by the LLM assistant, can be empty for generating a new tool. + */ + tool?: Schema$Tool; + /** + * Optional. The configuration to be used to generate the tool. + */ + toolGenerationConfig?: Schema$GenerateAppResourceRequestToolGenerationConfig; + /** + * The toolset resource to be used by the LLM assistant, can be empty for generating a new toolset. + */ + toolset?: Schema$Toolset; + } + /** + * The configuration to be used to generate the app. + */ + export interface Schema$GenerateAppResourceRequestAppGenerationConfig { + /** + * Optional. The context which describes the requirements of the agents & tools to be generated. + */ + context?: string | null; + /** + * Optional. The insights dataset to be used to fetch conversation data for generating the agents & tools. Format: `projects/{project\}/locations/{location\}/datasets/{dataset\}`. + */ + datasetId?: string | null; + /** + * Optional. The files to be used as context. + */ + fileContexts?: Schema$FileContext[]; + /** + * Optional. The Cloud Storage location to store the generated question answer data to be used by the Datastore tool. This data is generated only when using conversation data as an input source. The location must be in the same project as the app. Format: `gs://...`. + */ + gcsLocation?: string | null; + /** + * Optional. Whether to generate the evaluations for the app. If true, the provided context will be used to generate the evaluations data. + */ + generateEvaluations?: boolean | null; + } + /** + * The configuration to be used to generate the evaluations. + */ + export interface Schema$GenerateAppResourceRequestEvaluationGenerationConfig { + /** + * Optional. The insights dataset to be used to fetch conversation data for generating the evaluations. Format: `projects/{project\}/locations/{location\}/datasets/{dataset\}`. + */ + datasetId?: string | null; + } + /** + * The configuration to be used to generate the evaluation personas. + */ + export interface Schema$GenerateAppResourceRequestEvaluationPersonasGenerationConfig {} + /** + * The configuration to be used for hill climbing fixes. + */ + export interface Schema$GenerateAppResourceRequestHillClimbingFixConfig { + /** + * Required. The quality report used to inform the instruction following fix. + */ + qualityReport?: Schema$QualityReport; + } + /** + * The configuration to be used for quality report generation. + */ + export interface Schema$GenerateAppResourceRequestQualityReportGenerationConfig { + /** + * Required. The evaluation run used to inform quality report analysis. + */ + evaluationRun?: string | null; + } + /** + * The instructions to be used to refine a part of the resource. The part of the resource can be specified with a start index, end index and a field mask. For example, if you want to refine a part of the agent instructions you can specify the index of the first character of the instructions, the index of the last character of the instructions and the field mask as "instructions". + */ + export interface Schema$GenerateAppResourceRequestRefineInstructions { + /** + * Required. The last character (inclusive) of the text to refine. + */ + endIndex?: string | null; + /** + * Required. The field of the resource being refined. Only one field is allowed per RefineInstructions. If refining agent instructions, the field mask should be "instructions". + */ + fieldMask?: string | null; + /** + * Required. The instructions to refine the resource. + */ + instructions?: string | null; + /** + * Required. The first character (inclusive) of the text to refine. + */ + startIndex?: string | null; + } + /** + * The configuration to be used to generate a tool. + */ + export interface Schema$GenerateAppResourceRequestToolGenerationConfig { + /** + * Optional. The context which describes the tool to be generated. This can be empty if the tool request & response are provided. + */ + context?: string | null; + /** + * Optional. The files to be used as context. + */ + fileContexts?: Schema$FileContext[]; + /** + * Optional. The configuration to be used to generate an Open API schema. + */ + openApiToolsetGenerationConfig?: Schema$GenerateAppResourceRequestToolGenerationConfigOpenApiToolsetGenerationConfig; + } + /** + * The configuration to be used to generate an Open API schema. + */ + export interface Schema$GenerateAppResourceRequestToolGenerationConfigOpenApiToolsetGenerationConfig { + /** + * Required. The list of operations to be added to the Open API schema. + */ + operationGenerationConfigs?: Schema$GenerateAppResourceRequestToolGenerationConfigOpenApiToolsetGenerationConfigOperationGenerationConfig[]; + /** + * Required. The base uri of the tool. + */ + uri?: string | null; + } + /** + * The configuration to be used to generate an operation in the Open API schema. + */ + export interface Schema$GenerateAppResourceRequestToolGenerationConfigOpenApiToolsetGenerationConfigOperationGenerationConfig { + /** + * Required. The uri of the tool. This should include query and path parameters if any. + */ + method?: string | null; + /** + * Required. The path of the tool to be appended to the base uri. This should include query and path parameters if any. + */ + path?: string | null; + /** + * Required. A sample request to the tool in JSON format. Skip if the tool does not support request body. + */ + requestJson?: string | null; + /** + * Required. A sample response from the tool in JSON format. + */ + responseJson?: string | null; + } /** * Response message for AgentService.GenerateAppResource. */ @@ -2862,6 +3278,10 @@ export namespace ces_v1beta { * Additional information about the generated result. */ generateResultInfo?: Schema$GenerateAppResourceResponseGenerateResultInfo; + /** + * The quality report generated by the LLM assistant. + */ + qualityReport?: Schema$QualityReport; /** * The list of tools generated by the LLM assistant. */ @@ -2919,6 +3339,10 @@ export namespace ces_v1beta { * Required. The deployment of the app to use for the session. Format: projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\} */ deployment?: string | null; + /** + * Optional. Indicates if live handoff is enabled for the session. + */ + liveHandoffEnabled?: boolean | null; /** * Optional. The reCAPTCHA token generated by the client-side chat widget. */ @@ -3313,12 +3737,28 @@ export namespace ces_v1beta { * Optional. A list of error messages associated with evaluations that failed to be imported. */ errorMessages?: string[] | null; + /** + * The number of evaluation results that either failed to import entirely or completed import with one or more errors. + */ + evaluationResultImportFailureCount?: number | null; + /** + * The list of evaluation results that were imported into the app. + */ + evaluationResults?: Schema$EvaluationResult[]; + /** + * The number of evaluation runs that either failed to import entirely or completed import with one or more errors. + */ + evaluationRunImportFailureCount?: number | null; + /** + * The list of evaluation runs that were imported into the app. + */ + evaluationRuns?: Schema$EvaluationRun[]; /** * The list of evaluations that were imported into the app. */ evaluations?: Schema$Evaluation[]; /** - * The number of evaluations that were not imported due to errors. + * The number of evaluations that either failed to import entirely or completed import with one or more errors. */ importFailureCount?: number | null; } @@ -3352,7 +3792,7 @@ export namespace ces_v1beta { */ enableMultilingualSupport?: boolean | null; /** - * Optional. The action to perform when an agent receives input in an unsupported language. This can be a predefined action or a custom tool call. Valid values are: - A tool's full resource name, which triggers a specific tool execution. - A predefined system action, such as "escalate" or "exit", which triggers an EndSession signal with corresponding metadata to terminate the conversation. + * Optional. Deprecated: This feature is no longer supported. Use `enable_multilingual_support` instead to improve handling of multilingual input. The action to perform when an agent receives input in an unsupported language. This can be a predefined action or a custom tool call. Valid values are: - A tool's full resource name, which triggers a specific tool execution. - A predefined system action, such as "escalate" or "exit", which triggers an EndSession signal with corresponding metadata to terminate the conversation. */ fallbackAction?: string | null; /** @@ -3769,6 +4209,10 @@ export namespace ces_v1beta { * Optional. Configuration for how sensitive data should be redacted. */ redactionConfig?: Schema$RedactionConfig; + /** + * Optional. Configures recording of unredacted audio. Use this to maintain a raw backup with restricted access when audio redaction is enabled, typically for auditing or monitoring purposes. + */ + unredactedAudioRecordingConfig?: Schema$AudioRecordingConfig; } /** * An MCP tool. See https://modelcontextprotocol.io/specification/2025-06-18/server/tools for more details. @@ -3778,6 +4222,10 @@ export namespace ces_v1beta { * Optional. Authentication information required to execute the tool against the MCP server. For bearer token authentication, the token applies only to tool execution, not to listing tools. This requires that tools can be listed without authentication. */ apiAuthentication?: Schema$ApiAuthentication; + /** + * Optional. The custom headers to send in the request to the MCP server. The values must be in the format `$context.variables.` and can be set in the session variables. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection for more details. + */ + customHeaders?: {[key: string]: string} | null; /** * Optional. The description of the MCP tool. */ @@ -3815,6 +4263,10 @@ export namespace ces_v1beta { * Optional. Authentication information required to access tools and execute a tool against the MCP server. For bearer token authentication, the token applies only to tool execution, not to listing tools. This requires that tools can be listed without authentication. */ apiAuthentication?: Schema$ApiAuthentication; + /** + * Optional. The custom headers to send in the request to the MCP server. The values must be in the format `$context.variables.` and can be set in the session variables. See https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection for more details. + */ + customHeaders?: {[key: string]: string} | null; /** * Required. The address of the MCP server, for example, "https://example.com/mcp/". If the server is built with the MCP SDK, the url should be suffixed with "/mcp/". Only Streamable HTTP transport based servers are supported. See https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http for more details. */ @@ -3854,6 +4306,44 @@ export namespace ces_v1beta { */ llmMetricsOptedOut?: boolean | null; } + /** + * Mock tool calls configuration for the session. + */ + export interface Schema$MockConfig { + /** + * Optional. All tool calls to mock for the duration of the session. + */ + mockedToolCalls?: Schema$MockedToolCall[]; + /** + * Required. Beavhior for tool calls that don't match any args patterns in mocked_tool_calls. + */ + unmatchedToolCallBehavior?: string | null; + } + /** + * A mocked tool call. Expresses the target tool + a pattern to match against that tool's args / inputs. If the pattern matches, then the mock response will be returned. + */ + export interface Schema$MockedToolCall { + /** + * Required. A pattern to match against the args / inputs of all dispatched tool calls. If the tool call inputs match this pattern, then mock output will be returned. + */ + expectedArgsPattern?: {[key: string]: any} | null; + /** + * Optional. The mock response / output to return if the tool call args / inputs match the pattern. + */ + mockResponse?: {[key: string]: any} | null; + /** + * Optional. Deprecated. Use tool_identifier instead. + */ + tool?: string | null; + /** + * Optional. The name of the tool to mock. Format: `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` + */ + toolId?: string | null; + /** + * Optional. The toolset to mock. + */ + toolset?: Schema$ToolsetTool; + } /** * Model settings contains various configurations for the LLM model. */ @@ -4231,6 +4721,53 @@ export namespace ces_v1beta { */ pythonCode?: string | null; } + /** + * The report describing any identified quality issues in the app. + */ + export interface Schema$QualityReport { + /** + * Optional. A list of evaluation runs used to generate the quality report. Format: `projects/{project\}/locations/{location\}/evaluationRuns/{evaluationRun\}`. + */ + evaluationRuns?: string[] | null; + /** + * Optional. General issues not specific to any agent. + */ + generalIssues?: Schema$QualityReportIssue[]; + /** + * Optional. The issues grouped by agent. + */ + issues?: Schema$QualityReportAgentIssues[]; + } + /** + * Issues identified for a single agent. + */ + export interface Schema$QualityReportAgentIssues { + /** + * Optional. The name of the agent to which the issues are related. Format: `projects/{project\}/locations/{location\}/apps/{app\}/agents/{agent\}` + */ + agent?: string | null; + /** + * Optional. List of issues found for this agent. + */ + issues?: Schema$QualityReportIssue[]; + } + /** + * The issue identified. + */ + export interface Schema$QualityReportIssue { + /** + * Optional. Description of the issue found. + */ + description?: string | null; + /** + * Optional. How many times this issue occurred. + */ + occurrenceCount?: number | null; + /** + * Optional. Proposed solution to fix the issue by modifying instructions or tools. + */ + proposedSolution?: string | null; + } /** * Configuration to instruct how sensitive data should be handled. */ @@ -4538,6 +5075,31 @@ export namespace ces_v1beta { */ uniqueItems?: boolean | null; } + /** + * Project/Location level security settings for CES. + */ + export interface Schema$SecuritySettings { + /** + * Output only. Create time of the security settings. + */ + createTime?: string | null; + /** + * Optional. Endpoint control related settings. + */ + endpointControlPolicy?: Schema$EndpointControlPolicy; + /** + * Output only. Etag of the security settings. + */ + etag?: string | null; + /** + * Identifier. The unique identifier of the security settings. Format: `projects/{project\}/locations/{location\}/securitySettings` + */ + name?: string | null; + /** + * Output only. Last update time of the security settings. + */ + updateTime?: string | null; + } /** * Configurations for authentication using a custom service account. */ @@ -4573,7 +5135,11 @@ export namespace ces_v1beta { */ deployment?: string | null; /** - * Optional. The entry agent to handle the session. If not specified, the session will be handled by the root agent of the app. Format: `projects/{project\}/locations/{location\}/agents/{agent\}` + * Optional. Whether to enable streaming text outputs from the model. By default, text outputs from the model are collected before sending to the client. NOTE: This is only supported for text (non-voice) sessions via StreamRunSession or BidiRunSession. + */ + enableTextStreaming?: boolean | null; + /** + * Optional. The entry agent to handle the session. If not specified, the session will be handled by the root agent of the app. Format: `projects/{project\}/locations/{location\}/apps/{app\}/agents/{agent\}` */ entryAgent?: string | null; /** @@ -4596,6 +5162,10 @@ export namespace ces_v1beta { * Optional. The time zone of the user. If provided, the agent will use the time zone for date and time related variables. Otherwise, the agent will use the time zone specified in the App.time_zone_settings. The format is the IANA Time Zone Database time zone, e.g. "America/Los_Angeles". */ timeZone?: string | null; + /** + * Optional. Whether to use tool fakes for the session. If this field is set, the agent will attempt use tool fakes instead of calling the real tools. + */ + useToolFakes?: boolean | null; } /** * [QueryParameters](https://cloud.google.com/dialogflow/cx/docs/reference/rpc/google.cloud.dialogflow.cx.v3#queryparameters) to send to the remote [Dialogflow](https://cloud.google.com/dialogflow/cx/docs/concept/console-conversational-agents) agent when the session control is transferred to the remote agent. @@ -4830,7 +5400,7 @@ export namespace ces_v1beta { */ export interface Schema$TlsConfigCaCert { /** - * Required. The allowed custom CA certificates (in DER format) for HTTPS verification. This overrides the default SSL trust store. If this is empty or unspecified, CES will use Google's default trust store to verify certificates. N.B. Make sure the HTTPS server certificates are signed with "subject alt name". For instance a certificate can be self-signed using the following command, openssl x509 -req -days 200 -in example.com.csr \ -signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\nsubjectAltName='DNS:www.example.com'") + * Required. The allowed custom CA certificates (in DER format) for HTTPS verification. This overrides the default SSL trust store. If this is empty or unspecified, CES will use Google's default trust store to verify certificates. N.B. Make sure the HTTPS server certificates are signed with "subject alt name". For instance a certificate can be self-signed using the following command: ``` openssl x509 -req -days 200 -in example.com.csr \ -signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\nsubjectAltName='DNS:www.example.com'") ``` */ cert?: string | null; /** @@ -4842,6 +5412,10 @@ export namespace ces_v1beta { * A tool represents an action that the CES agent can take to achieve certain goals. */ export interface Schema$Tool { + /** + * Optional. The agent tool. + */ + agentTool?: Schema$AgentTool; /** * Optional. The client function. */ @@ -4887,7 +5461,7 @@ export namespace ces_v1beta { */ mcpTool?: Schema$McpTool; /** - * Identifier. The unique identifier of the tool. Format: - `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` for ## standalone tools. `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}/tools/{tool\}` for tools retrieved from a toolset. These tools are dynamic and output-only, they cannot be referenced directly where a tool is expected. + * Identifier. The resource name of the tool. Format: * `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` for standalone tools. * `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}/tools/{tool\}` for tools retrieved from a toolset. These tools are dynamic and output-only; they cannot be referenced directly where a tool is expected. */ name?: string | null; /** @@ -5158,6 +5732,36 @@ export namespace ces_v1beta { */ agent?: string | null; } + /** + * Request message for EvaluationService.UploadEvaluationAudio. + */ + export interface Schema$UploadEvaluationAudioRequest { + /** + * Required. The raw audio bytes. The format of the audio must be single-channel LINEAR16 with a sample rate of 16kHz (default InputAudioConfig). + */ + audioContent?: string | null; + /** + * Optional. The Google Cloud Storage URI of the previously uploaded audio file to be deleted. Format: `gs:///` + */ + previousAudioGcsUri?: string | null; + } + /** + * Response message for EvaluationService.UploadEvaluationAudio. + */ + export interface Schema$UploadEvaluationAudioResponse { + /** + * The Google Cloud Storage URI where the uploaded audio file is stored. Format: `gs:///` + */ + audioGcsUri?: string | null; + /** + * The duration of the audio. + */ + duration?: string | null; + /** + * The transcript of the audio, generated by Cloud Speech-to-Text. + */ + transcript?: string | null; + } /** * Represents a single web search query and its associated search uri. */ @@ -5175,6 +5779,10 @@ export namespace ces_v1beta { * Represents a widget tool that the agent can invoke. When the tool is chosen by the agent, agent will return the widget to the client. The client is responsible for processing the widget and generating the next user query to continue the interaction with the agent. */ export interface Schema$WidgetTool { + /** + * Optional. The mapping that defines how data from a source tool is mapped to the widget's input parameters. + */ + dataMapping?: Schema$WidgetToolDataMapping; /** * Optional. The description of the widget tool. */ @@ -5187,11 +5795,61 @@ export namespace ces_v1beta { * Optional. The input parameters of the widget tool. */ parameters?: Schema$Schema; + /** + * Optional. Configuration for always-included text responses. + */ + textResponseConfig?: Schema$WidgetToolTextResponseConfig; + /** + * Optional. Configuration for rendering the widget. + */ + uiConfig?: {[key: string]: any} | null; /** * Optional. The type of the widget tool. If not specified, the default type will be CUSTOMIZED. */ widgetType?: string | null; } + /** + * Configuration for mapping data from a source tool to the widget's input parameters. + */ + export interface Schema$WidgetToolDataMapping { + /** + * Optional. A map of widget input parameter fields to the corresponding output fields of the source tool. + */ + fieldMappings?: {[key: string]: string} | null; + /** + * Optional. The mode of the data mapping. + */ + mode?: string | null; + /** + * Optional. Configuration for a Python function used to transform the source tool's output into the widget's input format. + */ + pythonFunction?: Schema$PythonFunction; + /** + * Deprecated: Use `python_function` instead. + */ + pythonScript?: string | null; + /** + * Optional. The resource name of the tool that provides the data for the widget (e.g., a search tool or a custom function). Format: `projects/{project\}/locations/{location\}/agents/{agent\}/tools/{tool\}` + */ + sourceToolName?: string | null; + } + /** + * Configuration for the text response returned with the widget. + */ + export interface Schema$WidgetToolTextResponseConfig { + /** + * Optional. The static text response to return when type is STATIC. + */ + staticText?: string | null; + /** + * Optional. Instruction for the LLM on how to generate the text response. Used as the description for the text response parameter if type is LLM_GENERATED. + */ + textResponseInstruction?: string | null; + /** + * Optional. The strategy for providing the text response. + */ + type?: string | null; + } export class Resource$Projects { context: APIRequestContext; @@ -5356,7 +6014,150 @@ export namespace ces_v1beta { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Retrieves the security settings for the project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ces.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const ces = google.ces('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/ces', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ces.projects.locations.getSecuritySettings({ + * // Required. The resource name of the security settings to retrieve. Format: `projects/{project\}/locations/{location\}/securitySettings` + * name: 'projects/my-project/locations/my-location/securitySettings', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "endpointControlPolicy": {}, + * // "etag": "my_etag", + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getSecuritySettings( + params: Params$Resource$Projects$Locations$Getsecuritysettings, + options: StreamMethodOptions + ): Promise>; + getSecuritySettings( + params?: Params$Resource$Projects$Locations$Getsecuritysettings, + options?: MethodOptions + ): Promise>; + getSecuritySettings( + params: Params$Resource$Projects$Locations$Getsecuritysettings, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getSecuritySettings( + params: Params$Resource$Projects$Locations$Getsecuritysettings, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getSecuritySettings( + params: Params$Resource$Projects$Locations$Getsecuritysettings, + callback: BodyResponseCallback + ): void; + getSecuritySettings( + callback: BodyResponseCallback + ): void; + getSecuritySettings( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Getsecuritysettings + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Getsecuritysettings; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Getsecuritysettings; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ces.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + 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. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -5389,7 +6190,7 @@ export namespace ces_v1beta { * * // Do the magic * const res = await ces.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -5505,27 +6306,191 @@ export namespace ces_v1beta { 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 { - /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. - */ - extraLocationTypes?: string[]; - /** - * 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; + * Updates the security settings for the project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ces.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const ces = google.ces('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/ces', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ces.projects.locations.updateSecuritySettings({ + * // Identifier. The unique identifier of the security settings. Format: `projects/{project\}/locations/{location\}/securitySettings` + * name: 'projects/my-project/locations/my-location/securitySettings', + * // Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "endpointControlPolicy": {}, + * // "etag": "my_etag", + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "endpointControlPolicy": {}, + * // "etag": "my_etag", + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + updateSecuritySettings( + params: Params$Resource$Projects$Locations$Updatesecuritysettings, + options: StreamMethodOptions + ): Promise>; + updateSecuritySettings( + params?: Params$Resource$Projects$Locations$Updatesecuritysettings, + options?: MethodOptions + ): Promise>; + updateSecuritySettings( + params: Params$Resource$Projects$Locations$Updatesecuritysettings, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateSecuritySettings( + params: Params$Resource$Projects$Locations$Updatesecuritysettings, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateSecuritySettings( + params: Params$Resource$Projects$Locations$Updatesecuritysettings, + callback: BodyResponseCallback + ): void; + updateSecuritySettings( + callback: BodyResponseCallback + ): void; + updateSecuritySettings( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Updatesecuritysettings + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Updatesecuritysettings; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Updatesecuritysettings; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ces.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Getsecuritysettings extends StandardParameters { + /** + * Required. The resource name of the security settings to retrieve. Format: `projects/{project\}/locations/{location\}/securitySettings` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$List extends StandardParameters { + /** + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. + */ + extraLocationTypes?: string[]; + /** + * 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. */ @@ -5535,6 +6500,21 @@ export namespace ces_v1beta { */ pageToken?: string; } + export interface Params$Resource$Projects$Locations$Updatesecuritysettings extends StandardParameters { + /** + * Identifier. The unique identifier of the security settings. Format: `projects/{project\}/locations/{location\}/securitySettings` + */ + name?: string; + /** + * Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecuritySettings; + } export class Resource$Projects$Locations$Apps { context: APIRequestContext; @@ -5650,6 +6630,7 @@ export namespace ces_v1beta { * // "deploymentCount": 0, * // "description": "my_description", * // "displayName": "my_displayName", + * // "errorHandlingSettings": {}, * // "etag": "my_etag", * // "evaluationMetricsThresholds": {}, * // "evaluationPersonas": [], @@ -5964,6 +6945,8 @@ export namespace ces_v1beta { * // request body parameters * // { * // "args": {}, + * // "context": {}, + * // "mockConfig": {}, * // "tool": "my_tool", * // "toolsetTool": {}, * // "variables": {} @@ -6119,6 +7102,7 @@ export namespace ces_v1beta { * requestBody: { * // request body parameters * // { + * // "appVersion": "my_appVersion", * // "exportFormat": "my_exportFormat", * // "gcsUri": "my_gcsUri" * // } @@ -6232,7 +7216,7 @@ export namespace ces_v1beta { } /** - * Gets details of the specified app. + * Generates specific resources (e.g. agent) in the app using LLM assistant. * @example * ```js * // Before running the sample: @@ -6264,41 +7248,36 @@ export namespace ces_v1beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await ces.projects.locations.apps.get({ - * // Required. The resource name of the app to retrieve. - * name: 'projects/my-project/locations/my-location/apps/my-app', + * const res = await ces.projects.locations.apps.generateAppResource({ + * // Required. The resource name of the app to generate the resource for. + * parent: 'projects/my-project/locations/my-location/apps/my-app', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "agent": {}, + * // "appGenerationConfig": {}, + * // "evaluationGenerationConfig": {}, + * // "evaluationPersonasGenerationConfig": {}, + * // "hillClimbingFixConfig": {}, + * // "qualityReportGenerationConfig": {}, + * // "refineInstructions": [], + * // "tool": {}, + * // "toolGenerationConfig": {}, + * // "toolset": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "audioProcessingConfig": {}, - * // "clientCertificateSettings": {}, - * // "createTime": "my_createTime", - * // "dataStoreSettings": {}, - * // "defaultChannelProfile": {}, - * // "deploymentCount": 0, - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "evaluationMetricsThresholds": {}, - * // "evaluationPersonas": [], - * // "evaluationSettings": {}, - * // "globalInstruction": "my_globalInstruction", - * // "guardrails": [], - * // "languageSettings": {}, - * // "locked": false, - * // "loggingSettings": {}, + * // "done": false, + * // "error": {}, * // "metadata": {}, - * // "modelSettings": {}, * // "name": "my_name", - * // "pinned": false, - * // "predefinedVariableDeclarations": [], - * // "rootAgent": "my_rootAgent", - * // "timeZoneSettings": {}, - * // "toolExecutionMode": "my_toolExecutionMode", - * // "updateTime": "my_updateTime", - * // "variableDeclarations": [] + * // "response": {} * // } * } * @@ -6314,53 +7293,54 @@ export namespace ces_v1beta { * @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$Apps$Get, + generateAppResource( + params: Params$Resource$Projects$Locations$Apps$Generateappresource, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Apps$Get, + generateAppResource( + params?: Params$Resource$Projects$Locations$Apps$Generateappresource, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Apps$Get, + ): Promise>; + generateAppResource( + params: Params$Resource$Projects$Locations$Apps$Generateappresource, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Apps$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + generateAppResource( + params: Params$Resource$Projects$Locations$Apps$Generateappresource, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Apps$Get, - callback: BodyResponseCallback + generateAppResource( + params: Params$Resource$Projects$Locations$Apps$Generateappresource, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + generateAppResource(callback: BodyResponseCallback): void; + generateAppResource( paramsOrCallback?: - | Params$Resource$Projects$Locations$Apps$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Apps$Generateappresource + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Apps$Get; + {}) as Params$Resource$Projects$Locations$Apps$Generateappresource; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Apps$Get; + params = + {} as Params$Resource$Projects$Locations$Apps$Generateappresource; options = {}; } @@ -6373,29 +7353,32 @@ export namespace ces_v1beta { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1beta/{+parent}:generateAppResource').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Imports the specified app. + * Gets details of the specified app. * @example * ```js * // Before running the sample: @@ -6427,13 +7410,177 @@ export namespace ces_v1beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await ces.projects.locations.apps.importApp({ - * // Required. The parent resource name with the location of the app to import. - * parent: 'projects/my-project/locations/my-location', - * - * // Request body metadata - * requestBody: { - * // request body parameters + * const res = await ces.projects.locations.apps.get({ + * // Required. The resource name of the app to retrieve. + * name: 'projects/my-project/locations/my-location/apps/my-app', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "audioProcessingConfig": {}, + * // "clientCertificateSettings": {}, + * // "createTime": "my_createTime", + * // "dataStoreSettings": {}, + * // "defaultChannelProfile": {}, + * // "deploymentCount": 0, + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "errorHandlingSettings": {}, + * // "etag": "my_etag", + * // "evaluationMetricsThresholds": {}, + * // "evaluationPersonas": [], + * // "evaluationSettings": {}, + * // "globalInstruction": "my_globalInstruction", + * // "guardrails": [], + * // "languageSettings": {}, + * // "locked": false, + * // "loggingSettings": {}, + * // "metadata": {}, + * // "modelSettings": {}, + * // "name": "my_name", + * // "pinned": false, + * // "predefinedVariableDeclarations": [], + * // "rootAgent": "my_rootAgent", + * // "timeZoneSettings": {}, + * // "toolExecutionMode": "my_toolExecutionMode", + * // "updateTime": "my_updateTime", + * // "variableDeclarations": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Apps$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Apps$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Apps$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Apps$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Apps$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Apps$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Apps$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Apps$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ces.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Imports the specified app. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ces.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const ces = google.ces('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/ces', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ces.projects.locations.apps.importApp({ + * // Required. The parent resource name with the location of the app to import. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters * // { * // "appContent": "my_appContent", * // "appId": "my_appId", @@ -6908,6 +8055,7 @@ export namespace ces_v1beta { * // "deploymentCount": 0, * // "description": "my_description", * // "displayName": "my_displayName", + * // "errorHandlingSettings": {}, * // "etag": "my_etag", * // "evaluationMetricsThresholds": {}, * // "evaluationPersonas": [], @@ -6942,6 +8090,7 @@ export namespace ces_v1beta { * // "deploymentCount": 0, * // "description": "my_description", * // "displayName": "my_displayName", + * // "errorHandlingSettings": {}, * // "etag": "my_etag", * // "evaluationMetricsThresholds": {}, * // "evaluationPersonas": [], @@ -7577,6 +8726,17 @@ export namespace ces_v1beta { */ requestBody?: Schema$ExportAppRequest; } + export interface Params$Resource$Projects$Locations$Apps$Generateappresource extends StandardParameters { + /** + * Required. The resource name of the app to generate the resource for. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GenerateAppResourceRequest; + } export interface Params$Resource$Projects$Locations$Apps$Get extends StandardParameters { /** * Required. The resource name of the app to retrieve. @@ -9800,6 +10960,7 @@ export namespace ces_v1beta { * // "createTime": "my_createTime", * // "displayName": "my_displayName", * // "etag": "my_etag", + * // "experimentConfig": {}, * // "name": "my_name", * // "updateTime": "my_updateTime" * // } @@ -9814,6 +10975,7 @@ export namespace ces_v1beta { * // "createTime": "my_createTime", * // "displayName": "my_displayName", * // "etag": "my_etag", + * // "experimentConfig": {}, * // "name": "my_name", * // "updateTime": "my_updateTime" * // } @@ -10099,6 +11261,7 @@ export namespace ces_v1beta { * // "createTime": "my_createTime", * // "displayName": "my_displayName", * // "etag": "my_etag", + * // "experimentConfig": {}, * // "name": "my_name", * // "updateTime": "my_updateTime" * // } @@ -10379,7 +11542,7 @@ export namespace ces_v1beta { * * // Do the magic * const res = await ces.projects.locations.apps.deployments.patch({ - * // Identifier. The resource name of the deployment. Format: projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\} + * // Identifier. The resource name of the deployment. Format: `projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\}` * name: 'projects/my-project/locations/my-location/apps/my-app/deployments/my-deployment', * // Optional. The list of fields to update. * updateMask: 'placeholder-value', @@ -10393,6 +11556,7 @@ export namespace ces_v1beta { * // "createTime": "my_createTime", * // "displayName": "my_displayName", * // "etag": "my_etag", + * // "experimentConfig": {}, * // "name": "my_name", * // "updateTime": "my_updateTime" * // } @@ -10407,6 +11571,7 @@ export namespace ces_v1beta { * // "createTime": "my_createTime", * // "displayName": "my_displayName", * // "etag": "my_etag", + * // "experimentConfig": {}, * // "name": "my_name", * // "updateTime": "my_updateTime" * // } @@ -10557,7 +11722,7 @@ export namespace ces_v1beta { } export interface Params$Resource$Projects$Locations$Apps$Deployments$Patch extends StandardParameters { /** - * Identifier. The resource name of the deployment. Format: projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\} + * Identifier. The resource name of the deployment. Format: `projects/{project\}/locations/{location\}/apps/{app\}/deployments/{deployment\}` */ name?: string; /** @@ -13097,6 +14262,162 @@ export namespace ces_v1beta { } } + /** + * Exports evaluations. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ces.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const ces = google.ces('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/ces', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ces.projects.locations.apps.evaluations.export({ + * // Required. The resource name of the app to export evaluations from. Format: `projects/{project\}/locations/{location\}/apps/{app\}` + * parent: 'projects/my-project/locations/my-location/apps/my-app', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "exportOptions": {}, + * // "includeEvaluationResults": false, + * // "includeEvaluations": false, + * // "names": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + export( + params: Params$Resource$Projects$Locations$Apps$Evaluations$Export, + options: StreamMethodOptions + ): Promise>; + export( + params?: Params$Resource$Projects$Locations$Apps$Evaluations$Export, + options?: MethodOptions + ): Promise>; + export( + params: Params$Resource$Projects$Locations$Apps$Evaluations$Export, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + export( + params: Params$Resource$Projects$Locations$Apps$Evaluations$Export, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + export( + params: Params$Resource$Projects$Locations$Apps$Evaluations$Export, + callback: BodyResponseCallback + ): void; + export(callback: BodyResponseCallback): void; + export( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Apps$Evaluations$Export + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Apps$Evaluations$Export; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Apps$Evaluations$Export; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ces.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/evaluations:export').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Gets details of the specified evaluation. * @example @@ -13398,17 +14719,197 @@ export namespace ces_v1beta { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates an evaluation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ces.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const ces = google.ces('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/ces', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ces.projects.locations.apps.evaluations.patch({ + * // Identifier. The unique identifier of this evaluation. Format: `projects/{project\}/locations/{location\}/apps/{app\}/evaluations/{evaluation\}` + * name: 'projects/my-project/locations/my-location/apps/my-app/evaluations/my-evaluation', + * // Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "aggregatedMetrics": {}, + * // "createTime": "my_createTime", + * // "createdBy": "my_createdBy", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "evaluationDatasets": [], + * // "evaluationRuns": [], + * // "golden": {}, + * // "invalid": false, + * // "lastCompletedResult": {}, + * // "lastTenResults": [], + * // "lastUpdatedBy": "my_lastUpdatedBy", + * // "name": "my_name", + * // "scenario": {}, + * // "tags": [], + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "aggregatedMetrics": {}, + * // "createTime": "my_createTime", + * // "createdBy": "my_createdBy", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "evaluationDatasets": [], + * // "evaluationRuns": [], + * // "golden": {}, + * // "invalid": false, + * // "lastCompletedResult": {}, + * // "lastTenResults": [], + * // "lastUpdatedBy": "my_lastUpdatedBy", + * // "name": "my_name", + * // "scenario": {}, + * // "tags": [], + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Apps$Evaluations$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Apps$Evaluations$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Apps$Evaluations$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Apps$Evaluations$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Apps$Evaluations$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Apps$Evaluations$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Apps$Evaluations$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Apps$Evaluations$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ces.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates an evaluation. + * Uploads audio for use in Golden Evaluations. Stores the audio in the Cloud Storage bucket defined in 'App.logging_settings.evaluation_audio_recording_config.gcs_bucket' and returns a transcript. * @example * ```js * // Before running the sample: @@ -13440,57 +14941,27 @@ export namespace ces_v1beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await ces.projects.locations.apps.evaluations.patch({ - * // Identifier. The unique identifier of this evaluation. Format: `projects/{project\}/locations/{location\}/apps/{app\}/evaluations/{evaluation\}` - * name: 'projects/my-project/locations/my-location/apps/my-app/evaluations/my-evaluation', - * // Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated. - * updateMask: 'placeholder-value', + * const res = + * await ces.projects.locations.apps.evaluations.uploadEvaluationAudio({ + * // Required. The resource name of the Evaluation for which to upload the evaluation audio. Format: `projects/{project\}/locations/{location\}/apps/{app\}/evaluations/{evaluation\}` + * name: 'projects/my-project/locations/my-location/apps/my-app/evaluations/my-evaluation', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "aggregatedMetrics": {}, - * // "createTime": "my_createTime", - * // "createdBy": "my_createdBy", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "evaluationDatasets": [], - * // "evaluationRuns": [], - * // "golden": {}, - * // "invalid": false, - * // "lastCompletedResult": {}, - * // "lastTenResults": [], - * // "lastUpdatedBy": "my_lastUpdatedBy", - * // "name": "my_name", - * // "scenario": {}, - * // "tags": [], - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "audioContent": "my_audioContent", + * // "previousAudioGcsUri": "my_previousAudioGcsUri" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "aggregatedMetrics": {}, - * // "createTime": "my_createTime", - * // "createdBy": "my_createdBy", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "evaluationDatasets": [], - * // "evaluationRuns": [], - * // "golden": {}, - * // "invalid": false, - * // "lastCompletedResult": {}, - * // "lastTenResults": [], - * // "lastUpdatedBy": "my_lastUpdatedBy", - * // "name": "my_name", - * // "scenario": {}, - * // "tags": [], - * // "updateTime": "my_updateTime" + * // "audioGcsUri": "my_audioGcsUri", + * // "duration": "my_duration", + * // "transcript": "my_transcript" * // } * } * @@ -13506,54 +14977,58 @@ export namespace ces_v1beta { * @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$Apps$Evaluations$Patch, + uploadEvaluationAudio( + params: Params$Resource$Projects$Locations$Apps$Evaluations$Uploadevaluationaudio, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Apps$Evaluations$Patch, + uploadEvaluationAudio( + params?: Params$Resource$Projects$Locations$Apps$Evaluations$Uploadevaluationaudio, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Apps$Evaluations$Patch, + ): Promise>; + uploadEvaluationAudio( + params: Params$Resource$Projects$Locations$Apps$Evaluations$Uploadevaluationaudio, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Apps$Evaluations$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + uploadEvaluationAudio( + params: Params$Resource$Projects$Locations$Apps$Evaluations$Uploadevaluationaudio, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Apps$Evaluations$Patch, - callback: BodyResponseCallback + uploadEvaluationAudio( + params: Params$Resource$Projects$Locations$Apps$Evaluations$Uploadevaluationaudio, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + uploadEvaluationAudio( + callback: BodyResponseCallback + ): void; + uploadEvaluationAudio( paramsOrCallback?: - | Params$Resource$Projects$Locations$Apps$Evaluations$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Apps$Evaluations$Uploadevaluationaudio + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Apps$Evaluations$Patch; + {}) as Params$Resource$Projects$Locations$Apps$Evaluations$Uploadevaluationaudio; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Apps$Evaluations$Patch; + {} as Params$Resource$Projects$Locations$Apps$Evaluations$Uploadevaluationaudio; options = {}; } @@ -13566,8 +15041,11 @@ export namespace ces_v1beta { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1beta/{+name}:uploadEvaluationAudio').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options @@ -13578,12 +15056,14 @@ export namespace ces_v1beta { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } @@ -13617,6 +15097,17 @@ export namespace ces_v1beta { */ name?: string; } + export interface Params$Resource$Projects$Locations$Apps$Evaluations$Export extends StandardParameters { + /** + * Required. The resource name of the app to export evaluations from. Format: `projects/{project\}/locations/{location\}/apps/{app\}` + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExportEvaluationsRequest; + } export interface Params$Resource$Projects$Locations$Apps$Evaluations$Get extends StandardParameters { /** * Required. The resource name of the evaluation to retrieve. @@ -13672,6 +15163,17 @@ export namespace ces_v1beta { */ requestBody?: Schema$Evaluation; } + export interface Params$Resource$Projects$Locations$Apps$Evaluations$Uploadevaluationaudio extends StandardParameters { + /** + * Required. The resource name of the Evaluation for which to upload the evaluation audio. Format: `projects/{project\}/locations/{location\}/apps/{app\}/evaluations/{evaluation\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$UploadEvaluationAudioRequest; + } export class Resource$Projects$Locations$Apps$Evaluations$Results { context: APIRequestContext; @@ -16796,6 +18298,7 @@ export namespace ces_v1beta { * // request body parameters * // { * // "deployment": "my_deployment", + * // "liveHandoffEnabled": false, * // "recaptchaToken": "my_recaptchaToken" * // } * }, @@ -16910,7 +18413,7 @@ export namespace ces_v1beta { } /** - * Initiates a single turn interaction with the CES agent within a session. + * Initiates a single-turn interaction with the CES agent within a session. * @example * ```js * // Before running the sample: @@ -17059,6 +18562,159 @@ export namespace ces_v1beta { return createAPIRequest(parameters); } } + + /** + * Initiates a single-turn interaction with the CES agent. Uses server-side streaming to deliver incremental results and partial responses as they are generated. By default, complete responses (e.g., messages from callbacks or full LLM responses) are sent to the client as soon as they are available. To enable streaming individual text chunks directly from the model, set enable_text_streaming to true. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ces.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const ces = google.ces('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/ces', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ces.projects.locations.apps.sessions.streamRunSession({ + * // Required. The unique identifier of the session. Format: `projects/{project\}/locations/{location\}/apps/{app\}/sessions/{session\}` + * session: + * 'projects/my-project/locations/my-location/apps/my-app/sessions/my-session', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "config": {}, + * // "inputs": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "outputs": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + streamRunSession( + params: Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession, + options: StreamMethodOptions + ): Promise>; + streamRunSession( + params?: Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession, + options?: MethodOptions + ): Promise>; + streamRunSession( + params: Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + streamRunSession( + params: Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + streamRunSession( + params: Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession, + callback: BodyResponseCallback + ): void; + streamRunSession( + callback: BodyResponseCallback + ): void; + streamRunSession( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ces.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+session}:streamRunSession').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['session'], + pathParams: ['session'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Projects$Locations$Apps$Sessions$Generatechattoken extends StandardParameters { @@ -17083,6 +18739,17 @@ export namespace ces_v1beta { */ requestBody?: Schema$RunSessionRequest; } + export interface Params$Resource$Projects$Locations$Apps$Sessions$Streamrunsession extends StandardParameters { + /** + * Required. The unique identifier of the session. Format: `projects/{project\}/locations/{location\}/apps/{app\}/sessions/{session\}` + */ + session?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RunSessionRequest; + } export class Resource$Projects$Locations$Apps$Tools { context: APIRequestContext; @@ -17133,6 +18800,7 @@ export namespace ces_v1beta { * requestBody: { * // request body parameters * // { + * // "agentTool": {}, * // "clientFunction": {}, * // "connectorTool": {}, * // "createTime": "my_createTime", @@ -17158,6 +18826,7 @@ export namespace ces_v1beta { * * // Example response * // { + * // "agentTool": {}, * // "clientFunction": {}, * // "connectorTool": {}, * // "createTime": "my_createTime", @@ -17454,6 +19123,7 @@ export namespace ces_v1beta { * * // Example response * // { + * // "agentTool": {}, * // "clientFunction": {}, * // "connectorTool": {}, * // "createTime": "my_createTime", @@ -17750,7 +19420,7 @@ export namespace ces_v1beta { * * // Do the magic * const res = await ces.projects.locations.apps.tools.patch({ - * // Identifier. The unique identifier of the tool. Format: - `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` for ## standalone tools. `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}/tools/{tool\}` for tools retrieved from a toolset. These tools are dynamic and output-only, they cannot be referenced directly where a tool is expected. + * // Identifier. The resource name of the tool. Format: * `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` for standalone tools. * `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}/tools/{tool\}` for tools retrieved from a toolset. These tools are dynamic and output-only; they cannot be referenced directly where a tool is expected. * name: 'projects/my-project/locations/my-location/apps/my-app/tools/my-tool', * // Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated. * updateMask: 'placeholder-value', @@ -17759,6 +19429,7 @@ export namespace ces_v1beta { * requestBody: { * // request body parameters * // { + * // "agentTool": {}, * // "clientFunction": {}, * // "connectorTool": {}, * // "createTime": "my_createTime", @@ -17784,6 +19455,7 @@ export namespace ces_v1beta { * * // Example response * // { + * // "agentTool": {}, * // "clientFunction": {}, * // "connectorTool": {}, * // "createTime": "my_createTime", @@ -17957,7 +19629,7 @@ export namespace ces_v1beta { } export interface Params$Resource$Projects$Locations$Apps$Tools$Patch extends StandardParameters { /** - * Identifier. The unique identifier of the tool. Format: - `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` for ## standalone tools. `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}/tools/{tool\}` for tools retrieved from a toolset. These tools are dynamic and output-only, they cannot be referenced directly where a tool is expected. + * Identifier. The resource name of the tool. Format: * `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` for standalone tools. * `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}/tools/{tool\}` for tools retrieved from a toolset. These tools are dynamic and output-only; they cannot be referenced directly where a tool is expected. */ name?: string; /** diff --git a/src/apis/chat/v1.ts b/src/apis/chat/v1.ts index 689ffe250e2..effec72788d 100644 --- a/src/apis/chat/v1.ts +++ b/src/apis/chat/v1.ts @@ -383,7 +383,7 @@ export namespace chat_v1 { title?: string | null; } /** - * A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Only Chat apps can create cards. If your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), the message can't contain cards. [Card builder](https://addons.gsuite.google.com/uikit/builder) + * A [card](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards) in a Google Chat message. Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder) */ export interface Schema$CardWithId { /** @@ -722,6 +722,19 @@ export namespace chat_v1 { * 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 {} + /** + * A response containing group chat spaces with exactly the calling user and the requested users. + */ + export interface Schema$FindGroupChatsResponse { + /** + * A token that you can send as `pageToken` to retrieve the next page of results. If empty, there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * List of spaces in the requested (or first) page. + */ + spaces?: Schema$Space[]; + } /** * A form action describes the behavior when the form is submitted. For example, you can invoke Apps Script to handle the form. */ @@ -854,7 +867,7 @@ export namespace chat_v1 { buttons?: Schema$GoogleAppsCardV1Button[]; } /** - * A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. Any widgets beyond this limit are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app** ![Example contact card](https://developers.google.com/workspace/chat/images/card_api_reference.png) To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" \}, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" \}, "text": "sasha@example.com" \} \}, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" \}, "text": "Online" \} \}, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" \}, "text": "+1 (555) 555-1234" \} \}, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" \} \} \}, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" \} ] \} \} \} ] \} \} ] \} ] \} \} ] \} ``` + * A card interface displayed in a Google Chat message or Google Workspace add-on. Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. [Card builder](https://addons.gsuite.google.com/uikit/builder) To learn how to build cards, see the following documentation: * For Google Chat apps, see [Design the components of a card or dialog](https://developers.google.com/workspace/chat/design-components-card-dialog). * For Google Workspace add-ons, see [Card-based interfaces](https://developers.google.com/apps-script/add-ons/concepts/cards). Note: You can add up to 100 widgets per card. If a section's widgets push the total count above 100, that entire section and all following sections are ignored. This limit applies to both card messages and dialogs in Google Chat apps, and to cards in Google Workspace add-ons. **Example: Card message for a Google Chat app** ![Example contact card](https://developers.google.com/workspace/chat/images/card_api_reference.png) To create the sample card message in Google Chat, use the following JSON: ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png", "imageType": "CIRCLE", "imageAltText": "Avatar for Sasha" \}, "sections": [ { "header": "Contact Info", "collapsible": true, "uncollapsibleWidgetsCount": 1, "widgets": [ { "decoratedText": { "startIcon": { "knownIcon": "EMAIL" \}, "text": "sasha@example.com" \} \}, { "decoratedText": { "startIcon": { "knownIcon": "PERSON" \}, "text": "Online" \} \}, { "decoratedText": { "startIcon": { "knownIcon": "PHONE" \}, "text": "+1 (555) 555-1234" \} \}, { "buttonList": { "buttons": [ { "text": "Share", "onClick": { "openLink": { "url": "https://example.com/share" \} \} \}, { "text": "Edit", "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" \} ] \} \} \} ] \} \} ] \} ] \} \} ] \} ``` */ export interface Schema$GoogleAppsCardV1Card { /** @@ -1835,6 +1848,27 @@ export namespace chat_v1 { */ textParagraph?: Schema$GoogleAppsCardV1TextParagraph; } + /** + * Represents a [section](https://support.google.com/chat/answer/16059854) in Google Chat. Sections help users organize their spaces. There are two types of sections: 1. **System Sections:** These are predefined sections managed by Google Chat. Their resource names are fixed, and they cannot be created, deleted, or have their `display_name` modified. Examples include: * `users/{user\}/sections/default-direct-messages` * `users/{user\}/sections/default-spaces` * `users/{user\}/sections/default-apps` 2. **Custom Sections:** These are sections created and managed by the user. Creating a custom section using `CreateSection` **requires** a `display_name`. Custom sections can be updated using `UpdateSection` and deleted using `DeleteSection`. + */ + export interface Schema$GoogleChatV1Section { + /** + * Optional. The section's display name. Only populated for sections of type `CUSTOM_SECTION`. Supports up to 80 characters. Required when creating a `CUSTOM_SECTION`. + */ + displayName?: string | null; + /** + * Identifier. Resource name of the section. For system sections, the section ID is a constant string: - DEFAULT_DIRECT_MESSAGES: `users/{user\}/sections/default-direct-messages` - DEFAULT_SPACES: `users/{user\}/sections/default-spaces` - DEFAULT_APPS: `users/{user\}/sections/default-apps` Format: `users/{user\}/sections/{section\}` + */ + name?: string | null; + /** + * Output only. The order of the section in relation to other sections. Sections with a lower `sort_order` value appear before sections with a higher value. + */ + sortOrder?: number | null; + /** + * Required. The type of the section. + */ + type?: string | null; + } /** * A Google Group in Google Chat. */ @@ -2005,6 +2039,32 @@ export namespace chat_v1 { */ reactions?: Schema$Reaction[]; } + /** + * Response message for listing section items. + */ + export interface Schema$ListSectionItemsResponse { + /** + * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * The section items from the specified section. + */ + sectionItems?: Schema$SectionItem[]; + } + /** + * Response message for listing sections. + */ + export interface Schema$ListSectionsResponse { + /** + * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * The sections from the specified user. + */ + sections?: Schema$GoogleChatV1Section[]; + } /** * Response message for listing space events. */ @@ -2199,7 +2259,7 @@ export namespace chat_v1 { */ cards?: Schema$Card[]; /** - * Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Only Chat apps can create cards. If your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), the messages can't contain cards. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder) + * Optional. An array of [cards](https://developers.google.com/workspace/chat/api/reference/rest/v1/cards). Chat apps can create cards with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). As part of the [Developer Preview Program](https://developers.google.com/workspace/preview), if your Chat app [authenticates as a user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), it can create card messages. If your Chat app is not part of Developer Preview Program, it can't create cards with user authentication. To learn how to create a message that contains cards, see [Send a message](https://developers.google.com/workspace/chat/create-messages). [Card builder](https://addons.gsuite.google.com/uikit/builder) */ cardsV2?: Schema$CardWithId[]; /** @@ -2227,7 +2287,7 @@ export namespace chat_v1 { */ fallbackText?: string | null; /** - * Output only. Contains the message `text` with markups added to communicate formatting. This field might not capture all formatting visible in the UI, but includes the following: * [Markup syntax](https://developers.google.com/workspace/chat/format-messages) for bold, italic, strikethrough, monospace, monospace block, and bulleted list. * [User mentions](https://developers.google.com/workspace/chat/format-messages#messages-@mention) using the format ``. * Custom hyperlinks using the format `<{url\}|{rendered_text\}\>` where the first string is the URL and the second is the rendered text—for example, ``. * Custom emoji using the format `:{emoji_name\}:`—for example, `:smile:`. This doesn't apply to Unicode emoji, such as `U+1F600` for a grinning face emoji. * Bullet list items using asterisks (`*`)—for example, `* item`. For more information, see [View text formatting sent in a message](https://developers.google.com/workspace/chat/format-messages#view_text_formatting_sent_in_a_message) + * Output only. Contains the message `text` with markups added to communicate formatting. This field might not capture all formatting visible in the UI, but includes the following: * [Markup syntax](https://developers.google.com/workspace/chat/format-messages) for bold, italic, strikethrough, monospace, monospace block, bulleted list, and block quote. * [User mentions](https://developers.google.com/workspace/chat/format-messages#messages-@mention) using the format ``. * Custom hyperlinks using the format `<{url\}|{rendered_text\}\>` where the first string is the URL and the second is the rendered text—for example, ``. * Custom emoji using the format `:{emoji_name\}:`—for example, `:smile:`. This doesn't apply to Unicode emoji, such as `U+1F600` for a grinning face emoji. * Bullet list items using asterisks (`*`)—for example, `* item`. For more information, see [View text formatting sent in a message](https://developers.google.com/workspace/chat/format-messages#view_text_formatting_sent_in_a_message) */ formattedText?: string | null; /** @@ -2235,7 +2295,7 @@ export namespace chat_v1 { */ lastUpdateTime?: string | null; /** - * Output only. A URL in `spaces.messages.text` that matches a link preview pattern. For more information, see [Preview links](https://developers.google.com/workspace/chat/preview-links). + * Output only. A URL in the Chat message `text` field that matches a link preview pattern. For more information, see [Preview links](https://developers.google.com/workspace/chat/preview-links). */ matchedUrl?: Schema$MatchedUrl; /** @@ -2329,6 +2389,24 @@ export namespace chat_v1 { */ message?: Schema$Message; } + /** + * Request message for moving a section item across sections. + */ + export interface Schema$MoveSectionItemRequest { + /** + * Required. The resource name of the section to move the section item to. Format: `users/{user\}/sections/{section\}` + */ + targetSection?: string | null; + } + /** + * Response message for moving a section item. + */ + export interface Schema$MoveSectionItemResponse { + /** + * The updated section item. + */ + sectionItem?: Schema$SectionItem; + } /** * An `onclick` action (for example, open a link). */ @@ -2405,6 +2483,28 @@ export namespace chat_v1 { */ useAtMentionAll?: Schema$PermissionSetting; } + /** + * Request message for positioning a section. + */ + export interface Schema$PositionSectionRequest { + /** + * Optional. The relative position of the section in the list of sections. + */ + relativePosition?: string | null; + /** + * Optional. The absolute position of the section in the list of sections. The position must be greater than 0. If the position is greater than the number of sections, the section will be appended to the end of the list. This operation inserts the section at the given position and shifts the original section at that position, and those below it, to the next position. + */ + sortOrder?: number | null; + } + /** + * Response message for positioning a section. + */ + export interface Schema$PositionSectionResponse { + /** + * The updated section. + */ + section?: Schema$GoogleChatV1Section; + } /** * Information about a message that another message quotes. When you create a message, you can quote messages within the same thread, or quote a root message to create a new root message. However, you can't quote a message reply from a different thread. When you update a message, you can't add or replace the `quotedMessageMetadata` field, but you can remove it. For example usage, see [Quote another message](https://developers.google.com/workspace/chat/create-messages#quote-a-message). */ @@ -2567,6 +2667,19 @@ export namespace chat_v1 { */ widgets?: Schema$WidgetMarkup[]; } + /** + * A user's defined section item. This is used to represent section items, such as spaces, grouped under a section. + */ + export interface Schema$SectionItem { + /** + * Identifier. The resource name of the section item. Format: `users/{user\}/sections/{section\}/items/{item\}` + */ + name?: string | null; + /** + * Optional. The space resource name. Format: `spaces/{space\}` + */ + space?: string | null; + } /** * List of widget autocomplete results. */ @@ -4664,6 +4777,157 @@ export namespace chat_v1 { } } + /** + * Returns all spaces with `spaceType == GROUP_CHAT`, whose human memberships contain exactly the calling user, and the users specified in `FindGroupChatsRequest.users`. Only members that have joined the conversation are supported. For an example, see [Find group chats](https://developers.google.com/workspace/chat/find-group-chats). If the calling user blocks, or is blocked by, some users, and no spaces with the entire specified set of users are found, this method returns spaces that don't include the blocked or blocking users. The specified set of users must contain only human (non-app) memberships. A request that contains non-human users doesn't return any spaces. Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following [authorization scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chat.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chat = google.chat('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/chat.memberships', + * 'https://www.googleapis.com/auth/chat.memberships.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chat.spaces.findGroupChats({ + * // Optional. The maximum number of spaces to return. The service might return fewer than this value. If unspecified, at most 10 spaces are returned. The maximum value is 30. If you use a value more than 30, it's automatically changed to 30. Negative values return an `INVALID_ARGUMENT` error. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous call to find group chats. Provide this parameter to retrieve the subsequent page. When paginating, all other parameters provided should match the call that provided the token. Passing different values may lead to unexpected results. + * pageToken: 'placeholder-value', + * // Requested space view type. If unset, defaults to `SPACE_VIEW_RESOURCE_NAME_ONLY`. Requests that specify `SPACE_VIEW_EXPANDED` must include scopes that allow reading space data, for example, https://www.googleapis.com/auth/chat.spaces or https://www.googleapis.com/auth/chat.spaces.readonly. + * spaceView: 'placeholder-value', + * // Optional. Resource names of all human users in group chat with the calling user. Chat apps can't be included in the request. The maximum number of users that can be specified in a single request is `49`. Format: `users/{user\}`, where `{user\}` is either the `id` for the [person](https://developers.google.com/people/api/rest/v1/people) from the People API, or the `id` for the [user](https://developers.google.com/admin-sdk/directory/reference/rest/v1/users) in the Directory API. For example, to find all group chats with the calling user and two other users, with People API profile IDs `123456789` and `987654321`, you can use `users/123456789` and `users/987654321`. You can also use the email as an alias for `{user\}`. For example, `users/example@gmail.com` where `example@gmail.com` is the email of the Google Chat user. + * users: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "spaces": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + findGroupChats( + params: Params$Resource$Spaces$Findgroupchats, + options: StreamMethodOptions + ): Promise>; + findGroupChats( + params?: Params$Resource$Spaces$Findgroupchats, + options?: MethodOptions + ): Promise>; + findGroupChats( + params: Params$Resource$Spaces$Findgroupchats, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + findGroupChats( + params: Params$Resource$Spaces$Findgroupchats, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + findGroupChats( + params: Params$Resource$Spaces$Findgroupchats, + callback: BodyResponseCallback + ): void; + findGroupChats( + callback: BodyResponseCallback + ): void; + findGroupChats( + paramsOrCallback?: + | Params$Resource$Spaces$Findgroupchats + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Spaces$Findgroupchats; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Spaces$Findgroupchats; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://chat.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/spaces:findGroupChats').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Returns details about a space. For an example, see [Get details about a space](https://developers.google.com/workspace/chat/get-spaces). Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.bot` - `https://www.googleapis.com/auth/chat.app.spaces` with [administrator approval](https://support.google.com/a?p=chat-app-auth) - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.spaces.readonly` - `https://www.googleapis.com/auth/chat.spaces` - User authentication grants administrator privileges when an administrator account authenticates, `use_admin_access` is `true`, and one of the following authorization scopes is used: - `https://www.googleapis.com/auth/chat.admin.spaces.readonly` - `https://www.googleapis.com/auth/chat.admin.spaces` App authentication has the following limitations: - `space.access_settings` is only populated when using the `chat.app.spaces` scope. - `space.predefind_permission_settings` and `space.permission_settings` are only populated when using the `chat.app.spaces` scope, and only for spaces the app created. * @example @@ -5183,6 +5447,8 @@ export namespace chat_v1 { * scopes: [ * 'https://www.googleapis.com/auth/chat.admin.spaces', * 'https://www.googleapis.com/auth/chat.admin.spaces.readonly', + * 'https://www.googleapis.com/auth/chat.spaces', + * 'https://www.googleapis.com/auth/chat.spaces.readonly', * ], * }); * @@ -5508,6 +5774,24 @@ export namespace chat_v1 { */ name?: string; } + export interface Params$Resource$Spaces$Findgroupchats extends StandardParameters { + /** + * Optional. The maximum number of spaces to return. The service might return fewer than this value. If unspecified, at most 10 spaces are returned. The maximum value is 30. If you use a value more than 30, it's automatically changed to 30. Negative values return an `INVALID_ARGUMENT` error. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous call to find group chats. Provide this parameter to retrieve the subsequent page. When paginating, all other parameters provided should match the call that provided the token. Passing different values may lead to unexpected results. + */ + pageToken?: string; + /** + * Requested space view type. If unset, defaults to `SPACE_VIEW_RESOURCE_NAME_ONLY`. Requests that specify `SPACE_VIEW_EXPANDED` must include scopes that allow reading space data, for example, https://www.googleapis.com/auth/chat.spaces or https://www.googleapis.com/auth/chat.spaces.readonly. + */ + spaceView?: string; + /** + * Optional. Resource names of all human users in group chat with the calling user. Chat apps can't be included in the request. The maximum number of users that can be specified in a single request is `49`. Format: `users/{user\}`, where `{user\}` is either the `id` for the [person](https://developers.google.com/people/api/rest/v1/people) from the People API, or the `id` for the [user](https://developers.google.com/admin-sdk/directory/reference/rest/v1/users) in the Directory API. For example, to find all group chats with the calling user and two other users, with People API profile IDs `123456789` and `987654321`, you can use `users/123456789` and `users/987654321`. You can also use the email as an alias for `{user\}`. For example, `users/example@gmail.com` where `example@gmail.com` is the email of the Google Chat user. + */ + users?: string[]; + } export interface Params$Resource$Spaces$Get extends StandardParameters { /** * Required. Resource name of the space, in the form `spaces/{space\}`. Format: `spaces/{space\}` @@ -6814,7 +7098,7 @@ export namespace chat_v1 { } /** - * Returns details about a message. For an example, see [Get details about a message](https://developers.google.com/workspace/chat/get-messages). Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.bot`: When using this authorization scope, this method returns details about a message the Chat app has access to, like direct messages and [slash commands](https://developers.google.com/workspace/chat/slash-commands) that invoke the Chat app. - `https://www.googleapis.com/auth/chat.app.messages.readonly` with [administrator approval](https://support.google.com/a?p=chat-app-auth) (available in [Developer Preview](https://developers.google.com/workspace/preview)). When using this authentication scope, this method returns details about a public message in a space. - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` Note: Might return a message from a blocked member or space. + * Returns details about a message. For an example, see [Get details about a message](https://developers.google.com/workspace/chat/get-messages). Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.bot`: When using this authorization scope, this method returns details about a message the Chat app has access to, like direct messages and [slash commands](https://developers.google.com/workspace/chat/slash-commands) that invoke the Chat app. - `https://www.googleapis.com/auth/chat.app.messages.readonly` with [administrator approval](https://support.google.com/a?p=chat-app-auth). When using this authentication scope, this method returns details about a public message in a space. - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` Note: Might return a message from a blocked member or space. * @example * ```js * // Before running the sample: @@ -6978,7 +7262,7 @@ export namespace chat_v1 { } /** - * Lists messages in a space that the caller is a member of, including messages from blocked members and spaces. System messages, like those announcing new space members, aren't included. If you list messages from a space with no messages, the response is an empty object. When using a REST/HTTP interface, the response contains an empty JSON object, `{\}`. For an example, see [List messages](https://developers.google.com/workspace/chat/api/guides/v1/messages/list). Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with [administrator approval](https://support.google.com/a?p=chat-app-auth) in [Developer Preview](https://developers.google.com/workspace/preview) with the authorization scope: - `https://www.googleapis.com/auth/chat.app.messages.readonly`. When using this authentication scope, this method only returns public messages in a space. It doesn't include private messages. - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` - `https://www.googleapis.com/auth/chat.import` (import mode spaces only) + * Lists messages in a space that the caller is a member of, including messages from blocked members and spaces. System messages, like those announcing new space members, aren't included. If you list messages from a space with no messages, the response is an empty object. When using a REST/HTTP interface, the response contains an empty JSON object, `{\}`. For an example, see [List messages](https://developers.google.com/workspace/chat/api/guides/v1/messages/list). Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with [administrator approval](https://support.google.com/a?p=chat-app-auth) with the authorization scope: - `https://www.googleapis.com/auth/chat.app.messages.readonly`. When using this authentication scope, this method only returns public messages in a space. It doesn't include private messages. - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` - `https://www.googleapis.com/auth/chat.import` (import mode spaces only) * @example * ```js * // Before running the sample: @@ -8287,7 +8571,7 @@ export namespace chat_v1 { } /** - * Returns an event from a Google Chat space. The [event payload](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.spaceEvents#SpaceEvent.FIELDS.oneof_payload) contains the most recent version of the resource that changed. For example, if you request an event about a new message but the message was later updated, the server returns the updated `Message` resource in the event payload. Note: The `permissionSettings` field is not returned in the Space object of the Space event data for this request. Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize) with an [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes) appropriate for reading the requested data: - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with [administrator approval](https://support.google.com/a?p=chat-app-auth) in [Developer Preview](https://developers.google.com/workspace/preview) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.app.spaces` - `https://www.googleapis.com/auth/chat.app.messages.readonly` - `https://www.googleapis.com/auth/chat.app.memberships` - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.spaces.readonly` - `https://www.googleapis.com/auth/chat.spaces` - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` - `https://www.googleapis.com/auth/chat.messages.reactions.readonly` - `https://www.googleapis.com/auth/chat.messages.reactions` - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` To get an event, the authenticated caller must be a member of the space. For an example, see [Get details about an event from a Google Chat space](https://developers.google.com/workspace/chat/get-space-event). + * Returns an event from a Google Chat space. The [event payload](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.spaceEvents#SpaceEvent.FIELDS.oneof_payload) contains the most recent version of the resource that changed. For example, if you request an event about a new message but the message was later updated, the server returns the updated `Message` resource in the event payload. Note: The `permissionSettings` field is not returned in the Space object of the Space event data for this request. Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize) with an [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes) appropriate for reading the requested data: - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with [administrator approval](https://support.google.com/a?p=chat-app-auth) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.app.spaces` - `https://www.googleapis.com/auth/chat.app.spaces.readonly` - `https://www.googleapis.com/auth/chat.app.messages.readonly` - `https://www.googleapis.com/auth/chat.app.memberships` - `https://www.googleapis.com/auth/chat.app.memberships.readonly` - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.spaces.readonly` - `https://www.googleapis.com/auth/chat.spaces` - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` - `https://www.googleapis.com/auth/chat.messages.reactions.readonly` - `https://www.googleapis.com/auth/chat.messages.reactions` - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` To get an event, the authenticated caller must be a member of the space. For an example, see [Get details about an event from a Google Chat space](https://developers.google.com/workspace/chat/get-space-event). * @example * ```js * // Before running the sample: @@ -8310,8 +8594,10 @@ export namespace chat_v1 { * // Scopes can be specified either as an array or as a single, space-delimited string. * scopes: [ * 'https://www.googleapis.com/auth/chat.app.memberships', + * 'https://www.googleapis.com/auth/chat.app.memberships.readonly', * 'https://www.googleapis.com/auth/chat.app.messages.readonly', * 'https://www.googleapis.com/auth/chat.app.spaces', + * 'https://www.googleapis.com/auth/chat.app.spaces.readonly', * 'https://www.googleapis.com/auth/chat.memberships', * 'https://www.googleapis.com/auth/chat.memberships.readonly', * 'https://www.googleapis.com/auth/chat.messages', @@ -8453,7 +8739,7 @@ export namespace chat_v1 { } /** - * Lists events from a Google Chat space. For each event, the [payload](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.spaceEvents#SpaceEvent.FIELDS.oneof_payload) contains the most recent version of the Chat resource. For example, if you list events about new space members, the server returns `Membership` resources that contain the latest membership details. If new members were removed during the requested period, the event payload contains an empty `Membership` resource. Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize) with an [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes) appropriate for reading the requested data: - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with [administrator approval](https://support.google.com/a?p=chat-app-auth) in [Developer Preview](https://developers.google.com/workspace/preview) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.app.spaces` - `https://www.googleapis.com/auth/chat.app.messages.readonly` - `https://www.googleapis.com/auth/chat.app.memberships` - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.spaces.readonly` - `https://www.googleapis.com/auth/chat.spaces` - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` - `https://www.googleapis.com/auth/chat.messages.reactions.readonly` - `https://www.googleapis.com/auth/chat.messages.reactions` - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` To list events, the authenticated caller must be a member of the space. For an example, see [List events from a Google Chat space](https://developers.google.com/workspace/chat/list-space-events). + * Lists events from a Google Chat space. For each event, the [payload](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.spaceEvents#SpaceEvent.FIELDS.oneof_payload) contains the most recent version of the Chat resource. For example, if you list events about new space members, the server returns `Membership` resources that contain the latest membership details. If new members were removed during the requested period, the event payload contains an empty `Membership` resource. Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize) with an [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes) appropriate for reading the requested data: - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with [administrator approval](https://support.google.com/a?p=chat-app-auth) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.app.spaces` - `https://www.googleapis.com/auth/chat.app.spaces.readonly` - `https://www.googleapis.com/auth/chat.app.messages.readonly` - `https://www.googleapis.com/auth/chat.app.memberships` - `https://www.googleapis.com/auth/chat.app.memberships.readonly` - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.spaces.readonly` - `https://www.googleapis.com/auth/chat.spaces` - `https://www.googleapis.com/auth/chat.messages.readonly` - `https://www.googleapis.com/auth/chat.messages` - `https://www.googleapis.com/auth/chat.messages.reactions.readonly` - `https://www.googleapis.com/auth/chat.messages.reactions` - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` To list events, the authenticated caller must be a member of the space. For an example, see [List events from a Google Chat space](https://developers.google.com/workspace/chat/list-space-events). * @example * ```js * // Before running the sample: @@ -8476,8 +8762,10 @@ export namespace chat_v1 { * // Scopes can be specified either as an array or as a single, space-delimited string. * scopes: [ * 'https://www.googleapis.com/auth/chat.app.memberships', + * 'https://www.googleapis.com/auth/chat.app.memberships.readonly', * 'https://www.googleapis.com/auth/chat.app.messages.readonly', * 'https://www.googleapis.com/auth/chat.app.spaces', + * 'https://www.googleapis.com/auth/chat.app.spaces.readonly', * 'https://www.googleapis.com/auth/chat.memberships', * 'https://www.googleapis.com/auth/chat.memberships.readonly', * 'https://www.googleapis.com/auth/chat.messages', @@ -8638,13 +8926,1142 @@ export namespace chat_v1 { export class Resource$Users { context: APIRequestContext; + sections: Resource$Users$Sections; spaces: Resource$Users$Spaces; constructor(context: APIRequestContext) { this.context = context; + this.sections = new Resource$Users$Sections(this.context); this.spaces = new Resource$Users$Spaces(this.context); } } + export class Resource$Users$Sections { + context: APIRequestContext; + items: Resource$Users$Sections$Items; + constructor(context: APIRequestContext) { + this.context = context; + this.items = new Resource$Users$Sections$Items(this.context); + } + + /** + * Creates a section in Google Chat. Sections help users group conversations and customize the list of spaces displayed in Chat navigation panel. Only sections of type `CUSTOM_SECTION` can be created. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections` + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chat.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chat = google.chat('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/chat.users.sections'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chat.users.sections.create({ + * // Required. The parent resource name where the section is created. Format: `users/{user\}` + * parent: 'users/my-user', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "sortOrder": 0, + * // "type": "my_type" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "sortOrder": 0, + * // "type": "my_type" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Users$Sections$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Users$Sections$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Users$Sections$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Users$Sections$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Users$Sections$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Users$Sections$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Sections$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Sections$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://chat.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/sections').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a section of type `CUSTOM_SECTION`. If the section contains items, such as spaces, the items are moved to Google Chat's default sections and are not deleted. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections` + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chat.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chat = google.chat('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/chat.users.sections'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chat.users.sections.delete({ + * // Required. The name of the section to delete. Format: `users/{user\}/sections/{section\}` + * name: 'users/my-user/sections/my-section', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Users$Sections$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Users$Sections$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Users$Sections$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Users$Sections$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Users$Sections$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Users$Sections$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Sections$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Sections$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://chat.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists sections available to the Chat user. Sections help users group their conversations and customize the list of spaces displayed in Chat navigation panel. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections` - `https://www.googleapis.com/auth/chat.users.sections.readonly` + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chat.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chat = google.chat('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/chat.users.sections', + * 'https://www.googleapis.com/auth/chat.users.sections.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chat.users.sections.list({ + * // Optional. The maximum number of sections to return. The service may return fewer than this value. If unspecified, at most 10 sections will be returned. The maximum value is 100. If you use a value more than 100, it's automatically changed to 100. Negative values return an `INVALID_ARGUMENT` error. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous list sections call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters might lead to unexpected results. + * pageToken: 'placeholder-value', + * // Required. The parent, which is the user resource name that owns this collection of sections. Only supports listing sections for the calling user. To refer to the calling user, set one of the following: - The `me` alias. For example, `users/me`. - Their Workspace email address. For example, `users/user@example.com`. - Their user id. For example, `users/123456789`. Format: `users/{user\}` + * parent: 'users/my-user', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "sections": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Users$Sections$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Users$Sections$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Users$Sections$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Users$Sections$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Users$Sections$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Users$Sections$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Sections$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Sections$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://chat.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/sections').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates a section. Only sections of type `CUSTOM_SECTION` can be updated. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections` + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chat.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chat = google.chat('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/chat.users.sections'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chat.users.sections.patch({ + * // Identifier. Resource name of the section. For system sections, the section ID is a constant string: - DEFAULT_DIRECT_MESSAGES: `users/{user\}/sections/default-direct-messages` - DEFAULT_SPACES: `users/{user\}/sections/default-spaces` - DEFAULT_APPS: `users/{user\}/sections/default-apps` Format: `users/{user\}/sections/{section\}` + * name: 'users/my-user/sections/my-section', + * // Required. The mask to specify which fields to update. Currently supported field paths: - `display_name` + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "sortOrder": 0, + * // "type": "my_type" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "sortOrder": 0, + * // "type": "my_type" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Users$Sections$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Users$Sections$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Users$Sections$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Users$Sections$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Users$Sections$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Users$Sections$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Sections$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Sections$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://chat.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Changes the sort order of a section. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections` + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chat.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chat = google.chat('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/chat.users.sections'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chat.users.sections.position({ + * // Required. The resource name of the section to position. Format: `users/{user\}/sections/{section\}` + * name: 'users/my-user/sections/my-section', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "relativePosition": "my_relativePosition", + * // "sortOrder": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "section": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + position( + params: Params$Resource$Users$Sections$Position, + options: StreamMethodOptions + ): Promise>; + position( + params?: Params$Resource$Users$Sections$Position, + options?: MethodOptions + ): Promise>; + position( + params: Params$Resource$Users$Sections$Position, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + position( + params: Params$Resource$Users$Sections$Position, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + position( + params: Params$Resource$Users$Sections$Position, + callback: BodyResponseCallback + ): void; + position( + callback: BodyResponseCallback + ): void; + position( + paramsOrCallback?: + | Params$Resource$Users$Sections$Position + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Sections$Position; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Sections$Position; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://chat.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:position').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Users$Sections$Create extends StandardParameters { + /** + * Required. The parent resource name where the section is created. Format: `users/{user\}` + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleChatV1Section; + } + export interface Params$Resource$Users$Sections$Delete extends StandardParameters { + /** + * Required. The name of the section to delete. Format: `users/{user\}/sections/{section\}` + */ + name?: string; + } + export interface Params$Resource$Users$Sections$List extends StandardParameters { + /** + * Optional. The maximum number of sections to return. The service may return fewer than this value. If unspecified, at most 10 sections will be returned. The maximum value is 100. If you use a value more than 100, it's automatically changed to 100. Negative values return an `INVALID_ARGUMENT` error. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous list sections call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters might lead to unexpected results. + */ + pageToken?: string; + /** + * Required. The parent, which is the user resource name that owns this collection of sections. Only supports listing sections for the calling user. To refer to the calling user, set one of the following: - The `me` alias. For example, `users/me`. - Their Workspace email address. For example, `users/user@example.com`. - Their user id. For example, `users/123456789`. Format: `users/{user\}` + */ + parent?: string; + } + export interface Params$Resource$Users$Sections$Patch extends StandardParameters { + /** + * Identifier. Resource name of the section. For system sections, the section ID is a constant string: - DEFAULT_DIRECT_MESSAGES: `users/{user\}/sections/default-direct-messages` - DEFAULT_SPACES: `users/{user\}/sections/default-spaces` - DEFAULT_APPS: `users/{user\}/sections/default-apps` Format: `users/{user\}/sections/{section\}` + */ + name?: string; + /** + * Required. The mask to specify which fields to update. Currently supported field paths: - `display_name` + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleChatV1Section; + } + export interface Params$Resource$Users$Sections$Position extends StandardParameters { + /** + * Required. The resource name of the section to position. Format: `users/{user\}/sections/{section\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$PositionSectionRequest; + } + + export class Resource$Users$Sections$Items { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists items in a section. Only spaces can be section items. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections` - `https://www.googleapis.com/auth/chat.users.sections.readonly` + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chat.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chat = google.chat('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/chat.users.sections', + * 'https://www.googleapis.com/auth/chat.users.sections.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chat.users.sections.items.list({ + * // Optional. A query filter. Currently only supports filtering by space. For example, `space = spaces/{space\}`. Invalid queries are rejected with an `INVALID_ARGUMENT` error. + * filter: 'placeholder-value', + * // Optional. The maximum number of section items to return. The service may return fewer than this value. If unspecified, at most 10 section items will be returned. The maximum value is 100. If you use a value more than 100, it's automatically changed to 100. Negative values return an `INVALID_ARGUMENT` error. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous list section items call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters might lead to unexpected results. + * pageToken: 'placeholder-value', + * // Required. The parent, which is the section resource name that owns this collection of section items. Only supports listing section items for the calling user. When you're filtering by space, use the wildcard `-` to search across all sections. For example, `users/{user\}/sections/-`. Format: `users/{user\}/sections/{section\}` + * parent: 'users/my-user/sections/my-section', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "sectionItems": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Users$Sections$Items$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Users$Sections$Items$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Users$Sections$Items$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Users$Sections$Items$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Users$Sections$Items$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Users$Sections$Items$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Sections$Items$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Sections$Items$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://chat.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/items').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Moves an item from one section to another. For example, if a section contains spaces, this method can be used to move a space to a different section. For details, see [Create and organize sections in Google Chat](https://support.google.com/chat/answer/16059854). Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with the [authorization scope](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): - `https://www.googleapis.com/auth/chat.users.sections` + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chat.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chat = google.chat('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/chat.users.sections'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chat.users.sections.items.move({ + * // Required. The resource name of the section item to move. Format: `users/{user\}/sections/{section\}/items/{item\}` + * name: 'users/my-user/sections/my-section/items/my-item', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "targetSection": "my_targetSection" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "sectionItem": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + move( + params: Params$Resource$Users$Sections$Items$Move, + options: StreamMethodOptions + ): Promise>; + move( + params?: Params$Resource$Users$Sections$Items$Move, + options?: MethodOptions + ): Promise>; + move( + params: Params$Resource$Users$Sections$Items$Move, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + move( + params: Params$Resource$Users$Sections$Items$Move, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + move( + params: Params$Resource$Users$Sections$Items$Move, + callback: BodyResponseCallback + ): void; + move(callback: BodyResponseCallback): void; + move( + paramsOrCallback?: + | Params$Resource$Users$Sections$Items$Move + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Sections$Items$Move; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Sections$Items$Move; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://chat.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:move').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Users$Sections$Items$List extends StandardParameters { + /** + * Optional. A query filter. Currently only supports filtering by space. For example, `space = spaces/{space\}`. Invalid queries are rejected with an `INVALID_ARGUMENT` error. + */ + filter?: string; + /** + * Optional. The maximum number of section items to return. The service may return fewer than this value. If unspecified, at most 10 section items will be returned. The maximum value is 100. If you use a value more than 100, it's automatically changed to 100. Negative values return an `INVALID_ARGUMENT` error. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous list section items call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters might lead to unexpected results. + */ + pageToken?: string; + /** + * Required. The parent, which is the section resource name that owns this collection of section items. Only supports listing section items for the calling user. When you're filtering by space, use the wildcard `-` to search across all sections. For example, `users/{user\}/sections/-`. Format: `users/{user\}/sections/{section\}` + */ + parent?: string; + } + export interface Params$Resource$Users$Sections$Items$Move extends StandardParameters { + /** + * Required. The resource name of the section item to move. Format: `users/{user\}/sections/{section\}/items/{item\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$MoveSectionItemRequest; + } + export class Resource$Users$Spaces { context: APIRequestContext; spaceNotificationSetting: Resource$Users$Spaces$Spacenotificationsetting; diff --git a/src/apis/chromemanagement/v1.ts b/src/apis/chromemanagement/v1.ts index 230eb13c286..13f97124e06 100644 --- a/src/apis/chromemanagement/v1.ts +++ b/src/apis/chromemanagement/v1.ts @@ -156,6 +156,10 @@ export namespace chromemanagement_v1 { * Output only. Unique store identifier for the item. Examples: "gmbmikajjgmnabiglmofipeabaddhgne" for the Save to Google Drive Chrome extension, "com.google.android.apps.docs" for the Google Drive Android app. */ appId?: string | null; + /** + * Output only. The category IDs of the app, which are the same as stored in the Web Store item. It's expected that there is only one category ID. + */ + categoryIds?: string[] | null; /** * Output only. Chrome Web Store app information. */ @@ -2682,6 +2686,140 @@ export namespace chromemanagement_v1 { * Response message for claiming a certificate provisioning process. */ export interface Schema$GoogleChromeManagementVersionsV1ClaimCertificateProvisioningProcessResponse {} + /** + * A representation of a connector config. + */ + export interface Schema$GoogleChromeManagementVersionsV1ConnectorConfig { + /** + * Required. The details of the connector config. + */ + details?: Schema$GoogleChromeManagementVersionsV1ConnectorConfigDetails; + /** + * Required. The display name of the config. + */ + displayName?: string | null; + /** + * Identifier. Format: customers/{customer\}/connectorConfigs/{connector_config\} + */ + name?: string | null; + /** + * Output only. The status of the connector config. + */ + status?: Schema$GoogleChromeManagementVersionsV1ConnectorConfigStatus; + /** + * Required. The type of the connector. + */ + type?: string | null; + } + /** + * The details of the connector config. + */ + export interface Schema$GoogleChromeManagementVersionsV1ConnectorConfigDetails { + /** + * CrowdStrike connector config. + */ + crowdStrikeConfig?: Schema$GoogleChromeManagementVersionsV1CrowdStrikeConfig; + /** + * CrowdStrike Falcon Next Gen connector config. + */ + crowdStrikeFalconNextGenConfig?: Schema$GoogleChromeManagementVersionsV1CrowdStrikeFalconNextGenConfig; + /** + * CrowdStrike XDR connector config. + */ + crowdStrikeXdrConfig?: Schema$GoogleChromeManagementVersionsV1CrowdStrikeXdrConfig; + /** + * Device trust connector config. + */ + deviceTrustConfig?: Schema$GoogleChromeManagementVersionsV1DeviceTrustConfig; + /** + * Google SecOps connector config. + */ + googleSecOpsConfig?: Schema$GoogleChromeManagementVersionsV1GoogleSecOpsConfig; + /** + * Palo Alto Networks connector config. + */ + paloAltoNetworksConfig?: Schema$GoogleChromeManagementVersionsV1PaloAltoNetworksConfig; + /** + * Pub/Sub connector config. + */ + pubSubConfig?: Schema$GoogleChromeManagementVersionsV1PubSubConfig; + /** + * Pub/Sub XDR connector config. + */ + pubSubXdrConfig?: Schema$GoogleChromeManagementVersionsV1PubSubXdrConfig; + /** + * Splunk connector config. + */ + splunkConfig?: Schema$GoogleChromeManagementVersionsV1SplunkConfig; + } + /** + * The status of the connector config. + */ + export interface Schema$GoogleChromeManagementVersionsV1ConnectorConfigStatus { + /** + * Output only. Field recording time of the earliest failure since the last success event. This field is only set when the state is `DISABLED_BY_FAILURES`. + */ + failureStartTime?: string | null; + /** + * Output only. The state of the connector config. The connector state is disabled if the connector has not successfully sent an event in the last 24 hours. + */ + state?: string | null; + /** + * Output only. Field recording time of most recent modification of the status. For `ENABLED`, this is the time the status was changed to `ENABLED`. For `DISABLED_BY_FAILURES`, this is the time of the most recent failed attempt to send an event to this config. + */ + updateTime?: string | null; + } + /** + * CrowdStrike connector config. + */ + export interface Schema$GoogleChromeManagementVersionsV1CrowdStrikeConfig { + /** + * Required. Input only. API key to use on the ingestion API. + */ + apiKey?: string | null; + /** + * Required. Host to identify the customer specific server to receive the events. + */ + host?: string | null; + /** + * Required. The reporting settings for the CrowdStrike config. + */ + reportingSettings?: Schema$GoogleChromeManagementVersionsV1ReportingSettings; + } + /** + * CrowdStrike Falcon Next Gen connector config. + */ + export interface Schema$GoogleChromeManagementVersionsV1CrowdStrikeFalconNextGenConfig { + /** + * Required. Input only. API key to use on the ingestion API. + */ + apiKey?: string | null; + /** + * Required. Host to identify the customer specific server to receive the events. + */ + host?: string | null; + /** + * Required. The reporting settings for the CrowdStrike Falcon Next Gen config. + */ + reportingSettings?: Schema$GoogleChromeManagementVersionsV1ReportingSettings; + } + /** + * CrowdStrike XDR connector config. + */ + export interface Schema$GoogleChromeManagementVersionsV1CrowdStrikeXdrConfig { + /** + * Required. Input only. API key to use on the ingestion API. + */ + apiKey?: string | null; + /** + * Required. Host to identify the customer specific server to receive the events. + */ + host?: string | null; + /** + * Required. The XDR settings for the CrowdStrike XDR config. + */ + xdrSettings?: Schema$GoogleChromeManagementVersionsV1XdrSettings; + } /** * Information of a device that runs a Chrome browser profile. */ @@ -2703,6 +2841,27 @@ export namespace chromemanagement_v1 { */ machine?: string | null; } + /** + * Device trust config for device trust connectors. + */ + export interface Schema$GoogleChromeManagementVersionsV1DeviceTrustConfig { + /** + * Required. The scope at which this configuration will be applied. Note that this only applies to Chrome browser, as in ChromeOS it's always applied. + */ + scope?: string | null; + /** + * Required. A list of email addresses of the service accounts which are allowed to call the Verified Access API with full access. + */ + serviceAccounts?: string[] | null; + /** + * Optional. The service provider for the device trust connector. + */ + serviceProvider?: string | null; + /** + * Required. List of URLs allowed to be part of the attestation flow to get the set of signals from the machine. URLs must have HTTPS scheme, e.g. "https://example.com". Wildcards, *, are allowed. For detailed information on valid URL patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns. + */ + urlMatchers?: string[] | null; + } /** * Describes a generic Certificate Authority Connection. */ @@ -2721,6 +2880,23 @@ export namespace chromemanagement_v1 { */ profileAdapterConfigReference?: string | null; } + /** + * Google SecOps connector config. + */ + export interface Schema$GoogleChromeManagementVersionsV1GoogleSecOpsConfig { + /** + * Required. Input only. API key to use on the ingestion API. + */ + apiKey?: string | null; + /** + * Required. Host of ingestion API endpoint. Allows customer to upload events to servers in specific geographical regions. Existing configs that don't have this setting default to US. + */ + host?: string | null; + /** + * Required. The reporting settings for the Google SecOps config. + */ + reportingSettings?: Schema$GoogleChromeManagementVersionsV1ReportingSettings; + } /** * Response to ListChromeBrowserProfileCommands method. */ @@ -2755,6 +2931,19 @@ export namespace chromemanagement_v1 { */ totalSize?: string | null; } + /** + * Response to ListConnectorConfigs method. + */ + export interface Schema$GoogleChromeManagementVersionsV1ListConnectorConfigsResponse { + /** + * The list of connector configs returned. + */ + connectorConfigs?: Schema$GoogleChromeManagementVersionsV1ConnectorConfig[]; + /** + * The page token used to retrieve the next page of the listing request. If the token is empty, there are no more pages to retrieve. + */ + nextPageToken?: string | null; + } /** * Request to MoveThirdPartyProfileUser method. */ @@ -2773,6 +2962,49 @@ export namespace chromemanagement_v1 { */ thirdPartyProfileUser?: Schema$GoogleChromeManagementVersionsV1ThirdPartyProfileUser; } + /** + * Palo Alto Networks connector config. + */ + export interface Schema$GoogleChromeManagementVersionsV1PaloAltoNetworksConfig { + /** + * Required. Input only. API key to use on the ingestion API. + */ + apiKey?: string | null; + /** + * Required. Host to identify the customer specific server to receive the events. + */ + host?: string | null; + /** + * Required. The reporting settings for the Palo Alto Networks config. + */ + reportingSettings?: Schema$GoogleChromeManagementVersionsV1ReportingSettings; + } + /** + * Pub/Sub connector config. + */ + export interface Schema$GoogleChromeManagementVersionsV1PubSubConfig { + /** + * Required. The reporting settings for the Pub/Sub config. + */ + reportingSettings?: Schema$GoogleChromeManagementVersionsV1ReportingSettings; + /** + * Required. The full path to the topic to send the event to. + */ + topicFullPath?: string | null; + } + /** + * Pub/Sub XDR connector config. + */ + export interface Schema$GoogleChromeManagementVersionsV1PubSubXdrConfig { + /** + * Required. The full path to the topic to send the event to. + */ + topicFullPath?: string | null; + /** + * Required. The XDR settings for the Pub/Sub XDR config. + */ + xdrSettings?: Schema$GoogleChromeManagementVersionsV1XdrSettings; + } /** * Reporting data of a Chrome browser profile. */ @@ -2902,6 +3134,23 @@ export namespace chromemanagement_v1 { */ value?: string | null; } + /** + * Reporting settings for connector configs. + */ + export interface Schema$GoogleChromeManagementVersionsV1ReportingSettings { + /** + * Optional. The list of user and browser events that are enabled for this connector. An empty list disables all default events, and using `ALL_DEFAULT_EVENTS` will enable all default events. + */ + enabledDefaultEvents?: string[] | null; + /** + * Optional. The list of device events that are enabled for this config. An empty list disables all device events, and using `ALL_DEVICE_EVENTS` will enable all device events. + */ + enabledDeviceEvents?: string[] | null; + /** + * Optional. The list of opt-in events that are enabled for this config. An empty list disables all opt-in events, and using `ALL_OPT_IN_EVENTS` will enable all opt-in events. + */ + enabledOptInEvents?: string[] | null; + } /** * Describes a SCEP Certificate Authority Connection. */ @@ -2996,6 +3245,35 @@ export namespace chromemanagement_v1 { */ certificateProvisioningProcess?: Schema$GoogleChromeManagementVersionsV1CertificateProvisioningProcess; } + /** + * Splunk connector config. + */ + export interface Schema$GoogleChromeManagementVersionsV1SplunkConfig { + /** + * Required. Input only. The data input's HTTP Event Collector token to use as an Authorization header. + */ + hecToken?: string | null; + /** + * Required. Host to identify the customer specific server to receive the events. + */ + host?: string | null; + /** + * Optional. The port number to use. If not set, the default Splunk port is used. + */ + portNumber?: number | null; + /** + * Required. The reporting settings for the Splunk config. + */ + reportingSettings?: Schema$GoogleChromeManagementVersionsV1ReportingSettings; + /** + * Optional. Optional source name to override the default one set in the Splunk admin console. + */ + source?: string | null; + /** + * Optional. Whether to use an unsecure HTTP scheme. Defaults to false (HTTPS). + */ + unsecureScheme?: boolean | null; + } /** * Describes a subject alternative name. */ @@ -3035,6 +3313,15 @@ export namespace chromemanagement_v1 { * Response message for publishing an issued certificate for a certificate provisioning process. */ export interface Schema$GoogleChromeManagementVersionsV1UploadCertificateResponse {} + /** + * XDR settings for connector configs. + */ + export interface Schema$GoogleChromeManagementVersionsV1XdrSettings { + /** + * Required. Whether to enable all XDR events. + */ + enableAllXdrEvents?: boolean | null; + } /** * The request message for Operations.CancelOperation. */ @@ -3124,6 +3411,7 @@ export namespace chromemanagement_v1 { context: APIRequestContext; apps: Resource$Customers$Apps; certificateProvisioningProcesses: Resource$Customers$Certificateprovisioningprocesses; + connectorConfigs: Resource$Customers$Connectorconfigs; profiles: Resource$Customers$Profiles; reports: Resource$Customers$Reports; telemetry: Resource$Customers$Telemetry; @@ -3133,6 +3421,9 @@ export namespace chromemanagement_v1 { this.apps = new Resource$Customers$Apps(this.context); this.certificateProvisioningProcesses = new Resource$Customers$Certificateprovisioningprocesses(this.context); + this.connectorConfigs = new Resource$Customers$Connectorconfigs( + this.context + ); this.profiles = new Resource$Customers$Profiles(this.context); this.reports = new Resource$Customers$Reports(this.context); this.telemetry = new Resource$Customers$Telemetry(this.context); @@ -3750,6 +4041,7 @@ export namespace chromemanagement_v1 { * // { * // "androidAppInfo": {}, * // "appId": "my_appId", + * // "categoryIds": [], * // "chromeAppInfo": {}, * // "description": "my_description", * // "detailUri": "my_detailUri", @@ -3929,6 +4221,7 @@ export namespace chromemanagement_v1 { * // { * // "androidAppInfo": {}, * // "appId": "my_appId", + * // "categoryIds": [], * // "chromeAppInfo": {}, * // "description": "my_description", * // "detailUri": "my_detailUri", @@ -4108,6 +4401,7 @@ export namespace chromemanagement_v1 { * // { * // "androidAppInfo": {}, * // "appId": "my_appId", + * // "categoryIds": [], * // "chromeAppInfo": {}, * // "description": "my_description", * // "detailUri": "my_detailUri", @@ -5250,6 +5544,834 @@ export namespace chromemanagement_v1 { name?: string; } + export class Resource$Customers$Connectorconfigs { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a connector config. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chromemanagement.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chromemanagement = google.chromemanagement('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chromemanagement.customers.connectorConfigs.create({ + * // Optional. ID to use for the connector config, which becomes the final component of the connector config's resource name. If provided, the ID must be 1-63 characters long, and contain only lowercase letters, digits, and hyphens. It must start with a letter, and end with a letter or number. If not provided, the connector config will be assigned a random UUID. + * connectorConfigId: 'placeholder-value', + * // Required. Format: customers/{customer\} + * parent: 'customers/my-customer', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "details": {}, + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "status": {}, + * // "type": "my_type" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "details": {}, + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "status": {}, + * // "type": "my_type" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Customers$Connectorconfigs$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Customers$Connectorconfigs$Create, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + create( + params: Params$Resource$Customers$Connectorconfigs$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Customers$Connectorconfigs$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Customers$Connectorconfigs$Create, + callback: BodyResponseCallback + ): void; + create( + callback: BodyResponseCallback + ): void; + create( + paramsOrCallback?: + | Params$Resource$Customers$Connectorconfigs$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Customers$Connectorconfigs$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Customers$Connectorconfigs$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://chromemanagement.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/connectorConfigs').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Deletes a connector config. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chromemanagement.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chromemanagement = google.chromemanagement('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chromemanagement.customers.connectorConfigs.delete({ + * // Required. Format: customers/{customer\}/connectorConfigs/{connector_config\} + * name: 'customers/my-customer/connectorConfigs/my-connectorConfig', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Customers$Connectorconfigs$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Customers$Connectorconfigs$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Customers$Connectorconfigs$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Customers$Connectorconfigs$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Customers$Connectorconfigs$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Customers$Connectorconfigs$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Customers$Connectorconfigs$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Customers$Connectorconfigs$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://chromemanagement.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets a connector config with customer ID and config ID. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chromemanagement.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chromemanagement = google.chromemanagement('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chromemanagement.customers.connectorConfigs.get({ + * // Required. Format: customers/{customer\}/connectorConfigs/{connector_config\} + * name: 'customers/my-customer/connectorConfigs/my-connectorConfig', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "details": {}, + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "status": {}, + * // "type": "my_type" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Customers$Connectorconfigs$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Customers$Connectorconfigs$Get, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Customers$Connectorconfigs$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Customers$Connectorconfigs$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Customers$Connectorconfigs$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Customers$Connectorconfigs$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Customers$Connectorconfigs$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Customers$Connectorconfigs$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://chromemanagement.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists connector configs of a customer. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chromemanagement.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chromemanagement = google.chromemanagement('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chromemanagement.customers.connectorConfigs.list({ + * // Optional. The maximum number of connector configs to return. The default page size is 50 if page_size is unspecified, and the maximum page size allowed is 100. Values above 100 will be capped at 100. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous `ListConnectorConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConnectorConfigs` must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. Format: customers/{customer\} + * parent: 'customers/my-customer', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "connectorConfigs": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Customers$Connectorconfigs$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Customers$Connectorconfigs$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Customers$Connectorconfigs$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Customers$Connectorconfigs$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Customers$Connectorconfigs$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Customers$Connectorconfigs$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Customers$Connectorconfigs$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Customers$Connectorconfigs$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://chromemanagement.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/connectorConfigs').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates a connector config. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chromemanagement.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chromemanagement = google.chromemanagement('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await chromemanagement.customers.connectorConfigs.patch({ + * // Identifier. Format: customers/{customer\}/connectorConfigs/{connector_config\} + * name: 'customers/my-customer/connectorConfigs/my-connectorConfig', + * // Optional. The update mask that can be used to specify which fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "details": {}, + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "status": {}, + * // "type": "my_type" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "details": {}, + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "status": {}, + * // "type": "my_type" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Customers$Connectorconfigs$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Customers$Connectorconfigs$Patch, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + patch( + params: Params$Resource$Customers$Connectorconfigs$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Customers$Connectorconfigs$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Customers$Connectorconfigs$Patch, + callback: BodyResponseCallback + ): void; + patch( + callback: BodyResponseCallback + ): void; + patch( + paramsOrCallback?: + | Params$Resource$Customers$Connectorconfigs$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Customers$Connectorconfigs$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Customers$Connectorconfigs$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://chromemanagement.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Customers$Connectorconfigs$Create extends StandardParameters { + /** + * Optional. ID to use for the connector config, which becomes the final component of the connector config's resource name. If provided, the ID must be 1-63 characters long, and contain only lowercase letters, digits, and hyphens. It must start with a letter, and end with a letter or number. If not provided, the connector config will be assigned a random UUID. + */ + connectorConfigId?: string; + /** + * Required. Format: customers/{customer\} + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleChromeManagementVersionsV1ConnectorConfig; + } + export interface Params$Resource$Customers$Connectorconfigs$Delete extends StandardParameters { + /** + * Required. Format: customers/{customer\}/connectorConfigs/{connector_config\} + */ + name?: string; + } + export interface Params$Resource$Customers$Connectorconfigs$Get extends StandardParameters { + /** + * Required. Format: customers/{customer\}/connectorConfigs/{connector_config\} + */ + name?: string; + } + export interface Params$Resource$Customers$Connectorconfigs$List extends StandardParameters { + /** + * Optional. The maximum number of connector configs to return. The default page size is 50 if page_size is unspecified, and the maximum page size allowed is 100. Values above 100 will be capped at 100. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous `ListConnectorConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConnectorConfigs` must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. Format: customers/{customer\} + */ + parent?: string; + } + export interface Params$Resource$Customers$Connectorconfigs$Patch extends StandardParameters { + /** + * Identifier. Format: customers/{customer\}/connectorConfigs/{connector_config\} + */ + name?: string; + /** + * Optional. The update mask that can be used to specify which fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleChromeManagementVersionsV1ConnectorConfig; + } + export class Resource$Customers$Profiles { context: APIRequestContext; commands: Resource$Customers$Profiles$Commands; diff --git a/src/apis/classroom/v1.ts b/src/apis/classroom/v1.ts index a6264de7943..57272f31193 100644 --- a/src/apis/classroom/v1.ts +++ b/src/apis/classroom/v1.ts @@ -195,6 +195,10 @@ export namespace classroom_v1 { * Submission state of add-on attachment's parent post (i.e. assignment). */ postSubmissionState?: string | null; + /** + * Identifier for the student that owns this submission. Requires the user to be a teacher in the course and have permission to read student submissions. Read-only. + */ + userId?: string | null; } /** * Attachment-relevant metadata for Classroom add-ons in the context of a specific post. @@ -2416,15 +2420,15 @@ export namespace classroom_v1 { * * // Do the magic * const res = await classroom.courses.list({ - * // Restricts returned courses to those in one of the specified states The default value is ACTIVE, ARCHIVED, PROVISIONED, DECLINED. + * // Restricts returned courses to those in one of the specified states. If unspecified, Courses in any state are returned. * courseStates: 'placeholder-value', * // Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results. * pageSize: 'placeholder-value', * // nextPageToken value returned from a previous list call, indicating that the subsequent page of results should be returned. The list request must be otherwise identical to the one that resulted in this token. * pageToken: 'placeholder-value', - * // Restricts returned courses to those having a student with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user + * // Restricts returned courses to those having a student with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user If specified, `teacher_id` must be empty. * studentId: 'placeholder-value', - * // Restricts returned courses to those having a teacher with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user + * // Restricts returned courses to those having a teacher with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user If specified, `student_id` must be empty. * teacherId: 'placeholder-value', * }); * console.log(res.data); @@ -3066,7 +3070,7 @@ export namespace classroom_v1 { } export interface Params$Resource$Courses$List extends StandardParameters { /** - * Restricts returned courses to those in one of the specified states The default value is ACTIVE, ARCHIVED, PROVISIONED, DECLINED. + * Restricts returned courses to those in one of the specified states. If unspecified, Courses in any state are returned. */ courseStates?: string[]; /** @@ -3078,11 +3082,11 @@ export namespace classroom_v1 { */ pageToken?: string; /** - * Restricts returned courses to those having a student with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user + * Restricts returned courses to those having a student with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user If specified, `teacher_id` must be empty. */ studentId?: string; /** - * Restricts returned courses to those having a teacher with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user + * Restricts returned courses to those having a teacher with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user If specified, `student_id` must be empty. */ teacherId?: string; } @@ -8195,7 +8199,8 @@ export namespace classroom_v1 { * // Example response * // { * // "pointsEarned": {}, - * // "postSubmissionState": "my_postSubmissionState" + * // "postSubmissionState": "my_postSubmissionState", + * // "userId": "my_userId" * // } * } * @@ -8356,7 +8361,8 @@ export namespace classroom_v1 { * // request body parameters * // { * // "pointsEarned": {}, - * // "postSubmissionState": "my_postSubmissionState" + * // "postSubmissionState": "my_postSubmissionState", + * // "userId": "my_userId" * // } * }, * }, @@ -8366,7 +8372,8 @@ export namespace classroom_v1 { * // Example response * // { * // "pointsEarned": {}, - * // "postSubmissionState": "my_postSubmissionState" + * // "postSubmissionState": "my_postSubmissionState", + * // "userId": "my_userId" * // } * } * @@ -13820,7 +13827,8 @@ export namespace classroom_v1 { * // Example response * // { * // "pointsEarned": {}, - * // "postSubmissionState": "my_postSubmissionState" + * // "postSubmissionState": "my_postSubmissionState", + * // "userId": "my_userId" * // } * } * @@ -13980,7 +13988,8 @@ export namespace classroom_v1 { * // request body parameters * // { * // "pointsEarned": {}, - * // "postSubmissionState": "my_postSubmissionState" + * // "postSubmissionState": "my_postSubmissionState", + * // "userId": "my_userId" * // } * }, * }); @@ -13989,7 +13998,8 @@ export namespace classroom_v1 { * // Example response * // { * // "pointsEarned": {}, - * // "postSubmissionState": "my_postSubmissionState" + * // "postSubmissionState": "my_postSubmissionState", + * // "userId": "my_userId" * // } * } * diff --git a/src/apis/cloudasset/v1.ts b/src/apis/cloudasset/v1.ts index d3258f8533f..d02d2f83d8f 100644 --- a/src/apis/cloudasset/v1.ts +++ b/src/apis/cloudasset/v1.ts @@ -656,7 +656,7 @@ export namespace cloudasset_v1 { */ export interface Schema$GcsDestination { /** - * The URI of the Cloud Storage object. It's the same URI that is used by gsutil. Example: "gs://bucket_name/object_name". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information. If the specified Cloud Storage object already exists and there is no [hold](https://cloud.google.com/storage/docs/object-holds), it will be overwritten with the exported result. + * The URI of the Cloud Storage object. It's the same URI that is used by gcloud storage. Example: "gs://bucket_name/object_name". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information. If the specified Cloud Storage object already exists and there is no [hold](https://cloud.google.com/storage/docs/object-holds), it will be overwritten with the exported result. */ uri?: string | null; /** @@ -890,7 +890,7 @@ export namespace cloudasset_v1 { */ export interface Schema$GoogleCloudAssetV1GcsDestination { /** - * Required. The URI of the Cloud Storage object. It's the same URI that is used by gsutil. Example: "gs://bucket_name/object_name". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information. If the specified Cloud Storage object already exists and there is no [hold](https://cloud.google.com/storage/docs/object-holds), it will be overwritten with the analysis result. + * Required. The URI of the Cloud Storage object. It's the same URI that is used by gcloud storage. Example: "gs://bucket_name/object_name". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information. If the specified Cloud Storage object already exists and there is no [hold](https://cloud.google.com/storage/docs/object-holds), it will be overwritten with the analysis result. */ uri?: string | null; } @@ -1398,7 +1398,7 @@ export namespace cloudasset_v1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1EgressFrom { /** - * A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported. + * A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities. */ identities?: string[] | null; /** @@ -1470,7 +1470,7 @@ export namespace cloudasset_v1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1IngressFrom { /** - * A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported. + * A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities. */ identities?: string[] | null; /** diff --git a/src/apis/cloudasset/v1beta1.ts b/src/apis/cloudasset/v1beta1.ts index bed21810214..8d8ae24d0bb 100644 --- a/src/apis/cloudasset/v1beta1.ts +++ b/src/apis/cloudasset/v1beta1.ts @@ -277,7 +277,7 @@ export namespace cloudasset_v1beta1 { */ export interface Schema$GcsDestination { /** - * The URI of the Cloud Storage object. It's the same URI that is used by gsutil. For example: "gs://bucket_name/object_name". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information. + * The URI of the Cloud Storage object. It's the same URI that is used by gcloud storage. For example: "gs://bucket_name/object_name". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information. */ uri?: string | null; /** @@ -641,7 +641,7 @@ export namespace cloudasset_v1beta1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1EgressFrom { /** - * A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported. + * A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities. */ identities?: string[] | null; /** @@ -713,7 +713,7 @@ export namespace cloudasset_v1beta1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1IngressFrom { /** - * A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported. + * A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities. */ identities?: string[] | null; /** diff --git a/src/apis/cloudasset/v1p1beta1.ts b/src/apis/cloudasset/v1p1beta1.ts index 262cdfc7bb1..7f058cbbd6e 100644 --- a/src/apis/cloudasset/v1p1beta1.ts +++ b/src/apis/cloudasset/v1p1beta1.ts @@ -568,7 +568,7 @@ export namespace cloudasset_v1p1beta1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1EgressFrom { /** - * A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported. + * A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities. */ identities?: string[] | null; /** @@ -640,7 +640,7 @@ export namespace cloudasset_v1p1beta1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1IngressFrom { /** - * A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported. + * A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities. */ identities?: string[] | null; /** diff --git a/src/apis/cloudasset/v1p5beta1.ts b/src/apis/cloudasset/v1p5beta1.ts index 6fa1e7df1a3..def2d844594 100644 --- a/src/apis/cloudasset/v1p5beta1.ts +++ b/src/apis/cloudasset/v1p5beta1.ts @@ -598,7 +598,7 @@ export namespace cloudasset_v1p5beta1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1EgressFrom { /** - * A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported. + * A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities. */ identities?: string[] | null; /** @@ -670,7 +670,7 @@ export namespace cloudasset_v1p5beta1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1IngressFrom { /** - * A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported. + * A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities. */ identities?: string[] | null; /** diff --git a/src/apis/cloudasset/v1p7beta1.ts b/src/apis/cloudasset/v1p7beta1.ts index 03f167fa34d..61e6590ea0a 100644 --- a/src/apis/cloudasset/v1p7beta1.ts +++ b/src/apis/cloudasset/v1p7beta1.ts @@ -307,7 +307,7 @@ export namespace cloudasset_v1p7beta1 { */ export interface Schema$GoogleCloudAssetV1p7beta1GcsDestination { /** - * The URI of the Cloud Storage object. It's the same URI that is used by gsutil. Example: "gs://bucket_name/object_name". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information. + * The URI of the Cloud Storage object. It's the same URI that is used by gcloud storage. Example: "gs://bucket_name/object_name". See [Viewing and Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for more information. */ uri?: string | null; /** @@ -644,7 +644,7 @@ export namespace cloudasset_v1p7beta1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1EgressFrom { /** - * A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported. + * A list of identities that are allowed access through [EgressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities. */ identities?: string[] | null; /** @@ -716,7 +716,7 @@ export namespace cloudasset_v1p7beta1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1IngressFrom { /** - * A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, or third-party identity. For third-party identity, only single identities are supported and other identity types are not supported. The `v1` identities that have the prefix `user`, `group`, `serviceAccount`, and `principal` in https://cloud.google.com/iam/docs/principal-identifiers#v1 are supported. + * A list of identities that are allowed access through [IngressPolicy]. Identities can be an individual user, service account, Google group, third-party identity, or agent identity. For the list of supported identity types, see https://docs.cloud.google.com/vpc-service-controls/docs/supported-identities. */ identities?: string[] | null; /** diff --git a/src/apis/cloudbilling/v1beta.ts b/src/apis/cloudbilling/v1beta.ts index e24d2ab0160..d45ab3dc6d3 100644 --- a/src/apis/cloudbilling/v1beta.ts +++ b/src/apis/cloudbilling/v1beta.ts @@ -115,6 +115,7 @@ export namespace cloudbilling_v1beta { billingAccounts: Resource$Billingaccounts; skuGroups: Resource$Skugroups; skus: Resource$Skus; + v1beta: Resource$V1beta; constructor(options: GlobalOptions, google?: GoogleConfigurable) { this.context = { @@ -125,9 +126,117 @@ export namespace cloudbilling_v1beta { this.billingAccounts = new Resource$Billingaccounts(this.context); this.skuGroups = new Resource$Skugroups(this.context); this.skus = new Resource$Skus(this.context); + this.v1beta = new Resource$V1beta(this.context); } } + /** + * A local representation of the query used to fetch the data. This is used instead of the raw QueryBillingDataRequest to avoid pulling in Cloud Policy Enforcement (CPE) resource_type annotations into the response payload, which causes ESF validation failures. + */ + export interface Schema$AgenticQueryInfo { + /** + * The columns queried. + */ + columns?: string | null; + /** + * The filter applied to the query. + */ + filter?: string | null; + /** + * The group-by clause applied to the query. + */ + groupBy?: string | null; + /** + * The row limit applied to the query. + */ + limit?: number | null; + /** + * The order-by clause applied to the query. + */ + orderBy?: string | null; + /** + * The parents (e.g. projects, billing accounts) queried. + */ + parents?: string[] | null; + /** + * The view queried. + */ + view?: string | null; + } + /** + * An ordered collection of elements of arbitrary count. + */ + export interface Schema$Array { + /** + * The elements of the array. + */ + element?: Schema$ValueProto[]; + } + /** + * Encapsulates billing data. + */ + export interface Schema$BillingData { + /** + * Information about columns. + */ + columnInfo?: Schema$ColumnInfo[]; + /** + * Rows. + */ + rows?: Schema$Row[]; + } + /** + * Specifies a Billing data resource that can be used for authorization to access billing data. + */ + export interface Schema$BillingDataResource { + /** + * Optional. If not provided the billing account currently associated with the resource will be used. + */ + billingAccount?: string | null; + /** + * Required. Resource name for an entitity that can be used for authorization to access billing data such as `projects/{project\}` or `billingAccounts/{billing_account\}` + */ + resource?: string | null; + } + /** + * Represents a column header. + */ + export interface Schema$ColumnInfo { + /** + * Name of the column. + */ + column?: string | null; + } + /** + * A dataset used to support an insight, suitable for UI rendering (tables/charts). + */ + export interface Schema$DataSet { + /** + * Output only. Actual billing data returned from the Data Mart. Uses the formal message from the Billing Data Service. + */ + billingData?: Schema$BillingData; + /** + * Output only. The query used to fetch this data. + */ + queryInfo?: Schema$AgenticQueryInfo; + /** + * Output only. A suggested chart for the data set, used for UI rendering. + */ + suggestedChart?: Schema$SuggestedChart; + } + /** + * A datetime value. + */ + export interface Schema$Datetime { + /** + * Represents bit field encoding of year/month/day/hour/minute/second. See class DatetimeValue in civil_time.h for details of encoding. + */ + bitFieldDatetimeSeconds?: string | null; + /** + * Non-negative fractions of a second at nanosecond resolution. + */ + nanos?: number | null; + } /** * A representation of a decimal value, such as 2.5. Clients may convert values into language-native decimal formats, such as Java's [BigDecimal](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/math/BigDecimal.html) or Python's [decimal.Decimal](https://docs.python.org/3/library/decimal.html). */ @@ -137,6 +246,81 @@ export namespace cloudbilling_v1beta { */ value?: string | null; } + /** + * Encapsulates all structured data and the completed summary. + */ + export interface Schema$FinalResult { + /** + * Output only. Data sets used to support the insights, suitable for UI rendering (tables/charts). + */ + dataSets?: Schema$DataSet[]; + /** + * Output only. Contains the full natural language analysis, including thoughts, reasoning, and references. + */ + fullAnalysis?: string | null; + /** + * Output only. A list of discrete insights gleaned from the data. + */ + insights?: Schema$Insight[]; + /** + * Output only. Links to interoperable tools (e.g., pre-filtered Cost Reports or BQE queries). + */ + interopLinks?: Schema$InteropLink[]; + /** + * Output only. A list of suggested follow-up queries for the user. + */ + suggestedQueries?: Schema$SuggestedQuery[]; + /** + * Output only. The full natural language summary (re-sent for consistency). + */ + summary?: string | null; + } + /** + * Request for GenerateInsights. + */ + export interface Schema$GenerateInsightsRequest { + /** + * Optional. Filters cost data by service id. Follows https://google.aip.dev/160 for the filter syntax. eg. filter: "service = 'C7E2-9256-1C43'" + */ + filter?: string | null; + /** + * Optional. Overrides the maximum iterations for any selected strategy. + */ + overriddenMaxIterationCounts?: number | null; + /** + * Optional. The billing account or projects to analyze. + */ + parents?: Schema$BillingDataResource[]; + /** + * Required. The natural language prompt from the user. + */ + prompt?: string | null; + /** + * Optional. Additional context for personalization (e.g., user persona, role). + */ + userContext?: Schema$UserContext; + } + /** + * Response for GenerateInsights. + */ + export interface Schema$GenerateInsightsResponse { + /** + * Output only. The final structured results and metadata. Usually sent as the final message in the stream. + */ + finalResult?: Schema$FinalResult; + /** + * Output only. The request was rejected (e.g. out of scope). + */ + rejection?: Schema$Rejection; + /** + * Output only. A chunk of the natural language summary (customer-facing). The UI can append these chunks to provide a real-time "typing" effect. + */ + summaryChunk?: string | null; + /** + * Output only. A chunk of the agent's internal reasoning process. The UI can use this to render a "Thinking..." log or status. + */ + thoughtChunk?: string | null; + } /** * Encapsulates the aggregation information such as aggregation level and interval for a billing account price. */ @@ -855,6 +1039,62 @@ export namespace cloudbilling_v1beta { */ name?: string | null; } + /** + * e.g. insight: title: "Cost Increase (The Explanation)" description: "Your cost increase was driven by Vertex AI Online Prediction in us-central1..." severity: INFO + */ + export interface Schema$Insight { + /** + * Output only. The description of the insight. + */ + description?: string | null; + /** + * Output only. The severity of the insight, used for UI rendering (e.g., color-coding). + */ + severity?: string | null; + /** + * Output only. The title of the insight. + */ + title?: string | null; + } + /** + * A link to interoperable tools (e.g., pre-filtered Cost Reports, BQE queries). + */ + export interface Schema$InteropLink { + /** + * Output only. The label of the link, suitable for UI rendering. + */ + label?: string | null; + /** + * Output only. The type of the interop link, e.g., "COST_REPORT", "BQE_QUERY", etc. + */ + linkType?: string | null; + /** + * Output only. The URL of the link. + */ + url?: string | null; + } + /** + * An unordered mapping from key to value, represented as a collection of map entries. + */ + export interface Schema$Map { + /** + * Represents the map entries in the map. + */ + entry?: Schema$MapEntry[]; + } + /** + * A single entry in a Map, representing the mapping between `key` and `value`. + */ + export interface Schema$MapEntry { + /** + * Represents the serialized map key for the entry. + */ + key?: Schema$ValueProto; + /** + * Represents the serialized map value of the entry. + */ + value?: Schema$ValueProto; + } /** * Represents an amount of money with its currency type. */ @@ -872,6 +1112,222 @@ export namespace cloudbilling_v1beta { */ units?: string | null; } + /** + * A range of values, bounded by the values 'start' (inclusive) and 'end' (exclusive). A range has an element type, and values must be of this element type. A range is contiguous, ie it contains all values of the given element type starting at 'start' and ending before 'end'. A "null" value on start or end represents an unbounded start or end value respectively. Start and end values must always be present. + */ + export interface Schema$Range { + /** + * Represents the end of the range. + */ + end?: Schema$ValueProto; + /** + * Represents the start of the range. + */ + start?: Schema$ValueProto; + } + /** + * Encapsulates details about why a request was rejected. + */ + export interface Schema$Rejection { + /** + * Output only. A user-facing message explaining the rejection. + */ + displayMessage?: string | null; + /** + * Output only. The reason for the rejection. + */ + reason?: string | null; + } + /** + * Represents a row in the query result. + */ + export interface Schema$Row { + /** + * Values for a row in the column order. + */ + values?: Schema$ValueProto[]; + } + /** + * A collection of fields. The count, order, and type of the fields is determined by the type associated with this value. + */ + export interface Schema$Struct { + /** + * The fields in the struct + */ + field?: Schema$ValueProto[]; + } + /** + * A suggested chart for the data set, used for UI rendering. + */ + export interface Schema$SuggestedChart { + /** + * The title of the chart. + */ + chartTitle?: string | null; + /** + * The type of the chart. + */ + chartType?: string | null; + /** + * The field used for the series (e.g., color-coding). Optional, but recommended for time-series data. + */ + seriesField?: string | null; + /** + * The field used for the x-axis. + */ + xAxisField?: string | null; + /** + * The label of the x-axis. + */ + xAxisLabel?: string | null; + /** + * The field used for the y-axis. + */ + yAxisField?: string | null; + /** + * The label of the y-axis. + */ + yAxisLabel?: string | null; + } + /** + * A suggested follow-up query for the user. + */ + export interface Schema$SuggestedQuery { + /** + * The natural language query. + */ + query?: string | null; + } + /** + * Additional context for personalization (e.g., user persona, role). + */ + export interface Schema$UserContext { + /** + * Optional. The user's persona (e.g., FinOps Manager, Developer). + */ + persona?: string | null; + /** + * Optional. The user's role (e.g., Billing Admin, Project Owner, etc.). + */ + role?: string | null; + } + /** + * This is a copy of storage/googlesql/public/value.proto. ValueProto represents the serialized form of the googlesql::Value. The intention is to support multiple languages including Java and C++, so we must be sensitive to the distinction between Java Strings and byte arrays or ByteStrings. We also want to support use-cases which do not want to serialize a copy of the GoogleSQL type for every instance (which might be very repetitive). Therefore, unlike googlesql::Value, ValueProto does not carry full type information with every instance, and can only be fully interpreted with an associated TypeProto. + */ + export interface Schema$ValueProto { + /** + * An array of value + */ + arrayValue?: Schema$Array; + /** + * Encoded bignumeric value. For the encoding format see documentation for BigNumericValue::SerializeAsProtoBytes(). + */ + bignumericValue?: string | null; + /** + * Primitive for bool. + */ + boolValue?: boolean | null; + /** + * Primitive for bytes. + */ + bytesValue?: string | null; + /** + * primitive for datetime + */ + datetimeValue?: Schema$Datetime; + /** + * Primitive for date. + */ + dateValue?: number | null; + /** + * Primitive for double. + */ + doubleValue?: number | null; + /** + * Tag 11 was used for specifying micros timestamps as int64, now obsolete. + */ + enumValue?: number | null; + /** + * Primitive for float. + */ + floatValue?: number | null; + /** + * Geography encoded using ::stlib::STGeographyEncoder + */ + geographyValue?: string | null; + /** + * Primitive value for int32. + */ + int32Value?: number | null; + /** + * Primitive for int64. + */ + int64Value?: string | null; + /** + * Encoded interval value. For the encoding format see documentation for IntervalValue::SerializeAsBytes(). + */ + intervalValue?: string | null; + /** + * Tag 22 was used for json value as bytes, now obsolete. Json value represented as a string document. + */ + jsonValue?: string | null; + /** + * Encoded map value. See go/googlesql_map. + */ + mapValue?: Schema$Map; + /** + * Encoded numeric value. For the encoding format see documentation for NumericValue::SerializeAsProtoBytes(). + */ + numericValue?: string | null; + /** + * Stores a serialized protocol message. + */ + protoValue?: string | null; + /** + * Encoded range value. See go/googlesql_range. + */ + rangeValue?: Schema$Range; + /** + * Primitive for string. + */ + stringValue?: string | null; + /** + * A struct of values + */ + structValue?: Schema$Struct; + /** + * Encoded timestamp_pico value. For the encoding format see documentation for googlesql::TimestampPico::SerializeAsBytes(). + */ + timestampPicoValue?: string | null; + /** + * primitive for timestamp + */ + timestampValue?: string | null; + /** + * Bit field encoding of hour/minute/second/nanos. See TimeValue class for details. + */ + timeValue?: string | null; + /** + * Encoded tokenlist value. copybara:strip_begin(internal-comment) See //search/tokens:token_list. copybara:strip_end + */ + tokenlistValue?: string | null; + /** + * Primitive for uint32. + */ + uint32Value?: number | null; + /** + * Primitive for uint64. + */ + uint64Value?: string | null; + /** + * Encoded uuid value. For the encoding format see documentation for UuidValue::SerializeAsBytes(). + */ + uuidValue?: string | null; + /** + * User code that switches on this oneoff enum must have a default case so builds won't break when new fields are added. + */ + ValueProtoSwitchMustHaveADefault?: boolean | null; + } export class Resource$Billingaccounts { context: APIRequestContext; @@ -3619,4 +4075,175 @@ export namespace cloudbilling_v1beta { */ parent?: string; } + + export class Resource$V1beta { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Analyzes cost data for a billing account and/or specific projects. Returns a natural language summary and supporting datasets. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudbilling.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudbilling = google.cloudbilling('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-billing', + * 'https://www.googleapis.com/auth/cloud-billing.readonly', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudbilling.generateInsights({ + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "filter": "my_filter", + * // "overriddenMaxIterationCounts": 0, + * // "parents": [], + * // "prompt": "my_prompt", + * // "userContext": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "finalResult": {}, + * // "rejection": {}, + * // "summaryChunk": "my_summaryChunk", + * // "thoughtChunk": "my_thoughtChunk" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + generateInsights( + params: Params$Resource$V1beta$Generateinsights, + options: StreamMethodOptions + ): Promise>; + generateInsights( + params?: Params$Resource$V1beta$Generateinsights, + options?: MethodOptions + ): Promise>; + generateInsights( + params: Params$Resource$V1beta$Generateinsights, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + generateInsights( + params: Params$Resource$V1beta$Generateinsights, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + generateInsights( + params: Params$Resource$V1beta$Generateinsights, + callback: BodyResponseCallback + ): void; + generateInsights( + callback: BodyResponseCallback + ): void; + generateInsights( + paramsOrCallback?: + | Params$Resource$V1beta$Generateinsights + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$V1beta$Generateinsights; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$V1beta$Generateinsights; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://cloudbilling.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta:generateInsights').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$V1beta$Generateinsights extends StandardParameters { + /** + * Request body metadata + */ + requestBody?: Schema$GenerateInsightsRequest; + } } diff --git a/src/apis/cloudbuild/v1.ts b/src/apis/cloudbuild/v1.ts index d5320049e5a..15a290f1948 100644 --- a/src/apis/cloudbuild/v1.ts +++ b/src/apis/cloudbuild/v1.ts @@ -209,6 +209,10 @@ export namespace cloudbuild_v1 { * Artifacts produced by a build that should be uploaded upon successful completion of all build steps. */ export interface Schema$Artifacts { + /** + * Optional. A list of generic artifacts to be uploaded to Artifact Registry upon successful completion of all build steps. If any artifacts fail to be pushed, the build is marked FAILURE. + */ + genericArtifacts?: Schema$GenericArtifact[]; /** * Optional. A list of Go modules to be uploaded to Artifact Registry upon successful completion of all build steps. If any objects fail to be pushed, the build is marked FAILURE. */ @@ -229,6 +233,10 @@ export namespace cloudbuild_v1 { * A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the specified Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE. */ objects?: Schema$ArtifactObjects; + /** + * Optional. A list of OCI images to be uploaded to Artifact Registry upon successful completion of all build steps. OCI images in the specified paths will be uploaded to the specified Artifact Registry repository using the builder service account's credentials. If any images fail to be pushed, the build is marked FAILURE. + */ + oci?: Schema$Oci[]; /** * A list of Python packages to be uploaded to Artifact Registry upon successful completion of all build steps. The build service account credentials will be used to perform the upload. If any objects fail to be pushed, the build is marked FAILURE. */ @@ -896,6 +904,10 @@ export namespace cloudbuild_v1 { * Name used to push the container image to Google Container Registry, as presented to `docker push`. */ name?: string | null; + /** + * Output only. The OCI media type of the artifact. Non-OCI images, such as Docker images, will have an unspecified value. + */ + ociMediaType?: string | null; /** * Output only. Stores timing information for pushing the specified image. */ @@ -1122,6 +1134,10 @@ export namespace cloudbuild_v1 { * If set to true disable all dependency fetching (ignoring the default source as well). */ empty?: boolean | null; + /** + * Represents a generic artifact as a build dependency. + */ + genericArtifact?: Schema$GenericArtifactDependency; /** * Represents a git repository as a build dependency. */ @@ -1191,6 +1207,32 @@ export namespace cloudbuild_v1 { */ fileHash?: Schema$Hash[]; } + /** + * Generic artifact to upload to Artifact Registry upon successful completion of all build steps. + */ + export interface Schema$GenericArtifact { + /** + * Required. Path to the generic artifact in the build's workspace to be uploaded to Artifact Registry. + */ + folder?: string | null; + /** + * Required. Registry path to upload the generic artifact to, in the form projects/$PROJECT/locations/$LOCATION/repositories/$REPO/packages/$PACKAGE/versions/$VERSION + */ + registryPath?: string | null; + } + /** + * Represents a generic artifact as a build dependency. + */ + export interface Schema$GenericArtifactDependency { + /** + * Required. Where the artifact files should be placed on the worker. + */ + destPath?: string | null; + /** + * Required. The location to download the artifact files from. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1 + */ + resource?: string | null; + } /** * GitConfig is a configuration for git operations. */ @@ -1815,6 +1857,23 @@ export namespace cloudbuild_v1 { */ repository?: string | null; } + /** + * OCI image to upload to Artifact Registry upon successful completion of all build steps. + */ + export interface Schema$Oci { + /** + * Required. Path on the local file system where to find the container to upload. e.g. /workspace/my-image.tar + */ + file?: string | null; + /** + * Required. Registry path to upload the container to. e.g. us-east1-docker.pkg.dev/my-project/my-repo/my-image + */ + registryPath?: string | null; + /** + * Optional. Tags to apply to the uploaded image. e.g. latest, 1.0.0 + */ + tags?: string[] | null; + } /** * This resource represents a long-running operation that is the result of a network API call. */ @@ -2101,6 +2160,10 @@ export namespace cloudbuild_v1 { * List of build step outputs, produced by builder images, in the order corresponding to build step indices. [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders) can produce this output by writing to `$BUILDER_OUTPUT/output`. Only the first 50KB of data is stored. Note that the `$BUILDER_OUTPUT` variable is read-only and can't be substituted. */ buildStepOutputs?: string[] | null; + /** + * Output only. Generic artifacts uploaded to Artifact Registry at the end of the build. + */ + genericArtifacts?: Schema$UploadedGenericArtifact[]; /** * Optional. Go module artifacts uploaded to Artifact Registry at the end of the build. */ @@ -2402,6 +2465,31 @@ export namespace cloudbuild_v1 { */ workerPool?: string | null; } + /** + * A generic artifact uploaded to Artifact Registry using the GenericArtifact directive. + */ + export interface Schema$UploadedGenericArtifact { + /** + * Output only. The hash of the whole artifact. + */ + artifactFingerprint?: Schema$FileHashes; + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; + /** + * Output only. The file hashes that make up the generic artifact. + */ + fileHashes?: {[key: string]: Schema$FileHashes} | null; + /** + * Output only. Stores timing information for pushing the specified artifact. + */ + pushTiming?: Schema$TimeSpan; + /** + * Output only. URI of the uploaded artifact. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1 + */ + uri?: string | null; + } /** * A Go module artifact uploaded to Artifact Registry using the GoModule directive. */ diff --git a/src/apis/cloudbuild/v2.ts b/src/apis/cloudbuild/v2.ts index 4b9101cd5a6..563aa42f8b2 100644 --- a/src/apis/cloudbuild/v2.ts +++ b/src/apis/cloudbuild/v2.ts @@ -1909,7 +1909,7 @@ export namespace cloudbuild_v2 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/clouddeploy/v1.ts b/src/apis/clouddeploy/v1.ts index 1820a4e8ecd..ed5bd3c0707 100644 --- a/src/apis/clouddeploy/v1.ts +++ b/src/apis/clouddeploy/v1.ts @@ -208,6 +208,99 @@ export namespace clouddeploy_v1 { */ wait?: string | null; } + /** + * AlertPolicyCheck configures a set of Cloud Monitoring alerting policies that will be periodically polled for alerts. If any of the listed policies have an active alert, the analysis check will fail. + */ + export interface Schema$AlertPolicyCheck { + /** + * Required. The Cloud Monitoring Alert Policies to check for active alerts. Format is `projects/{project\}/alertPolicies/{alert_policy\}`. + */ + alertPolicies?: string[] | null; + /** + * Required. The ID of the analysis check. + */ + id?: string | null; + /** + * Optional. A set of labels to filter active alerts. If set, only alerts having all of the specified labels will be considered. Otherwise, all active alerts will be considered. + */ + labels?: {[key: string]: string} | null; + } + /** + * AlertPolicyCheckStatus contains information specific to a single run of an alert policy check. + */ + export interface Schema$AlertPolicyCheckStatus { + /** + * Output only. The alert policies that this analysis monitors. Format is `projects/{project\}/locations/{location\}/alertPolicies/{alertPolicy\}`. + */ + alertPolicies?: string[] | null; + /** + * Output only. The alert policies that were found to be firing during this check. This will be empty if no incidents were found. + */ + failedAlertPolicies?: Schema$FailedAlertPolicy[]; + /** + * Output only. Additional information about the alert policy check failure, if available. This will be empty if the alert policy check succeeded. + */ + failureMessage?: string | null; + /** + * Output only. The ID of this analysis. + */ + id?: string | null; + /** + * Output only. The resolved labels used to filter for specific incidents. + */ + labels?: {[key: string]: string} | null; + } + /** + * Analysis contains the configuration for the set of analyses to be performed on the target. + */ + export interface Schema$Analysis { + /** + * Optional. Custom analysis checks from 3P metric providers. + */ + customChecks?: Schema$CustomCheck[]; + /** + * Required. The amount of time in minutes the analysis on the target will last. If all analysis checks have successfully completed before the specified duration, the analysis is successful. If a check is still running while the specified duration passes, it will wait for that check to complete to determine if the analysis is successful. The maximum duration is 48 hours. + */ + duration?: string | null; + /** + * Optional. Google Cloud - based analysis checks. + */ + googleCloud?: Schema$GoogleCloudAnalysis; + } + /** + * An analysis Job. + */ + export interface Schema$AnalysisJob { + /** + * Output only. Custom analysis checks from 3P metric providers that are run as part of the analysis Job. + */ + customChecks?: Schema$CustomCheck[]; + /** + * Output only. The amount of time in minutes the analysis Job will run, up to a maximum of 48 hours. If any check in this Job is still running when the duration ends, the Job keeps running until that check completes. + */ + duration?: string | null; + /** + * Output only. Google Cloud - based analysis checks that are run as part of the analysis Job. + */ + googleCloud?: Schema$GoogleCloudAnalysis; + } + /** + * AnalysisJobRun contains information specific to an analysis `JobRun`. + */ + export interface Schema$AnalysisJobRun { + /** + * Output only. The status of the running alert policy checks configured for this analysis. + */ + alertPolicyAnalyses?: Schema$AlertPolicyCheckStatus[]; + /** + * Output only. The status of the running custom checks configured for this analysis. + */ + customCheckAnalyses?: Schema$CustomCheckStatus[]; + /** + * Output only. The ID of the configured check that failed. This will always be blank while the analysis is in progress or if it succeeded. + */ + failedCheckId?: string | null; + } /** * Information specifying an Anthos Cluster. */ @@ -572,6 +665,10 @@ export namespace clouddeploy_v1 { * CanaryDeployment represents the canary deployment configuration */ export interface Schema$CanaryDeployment { + /** + * Optional. Configuration for the analysis job. If configured, the analysis will run after each percentage deployment. + */ + analysis?: Schema$Analysis; /** * Required. The percentage based deployments that will occur as a part of a `Rollout`. List is expected in ascending order and each integer n is 0 <= n < 100. If the GatewayServiceMesh is configured for Kubernetes, then the range for n is 0 <= n <= 100. */ @@ -588,6 +685,10 @@ export namespace clouddeploy_v1 { * Optional. Whether to run verify tests after each percentage deployment via `skaffold verify`. */ verify?: boolean | null; + /** + * Optional. Configuration for the verify job. Cannot be set if `verify` is set to true. + */ + verifyConfig?: Schema$Verify; } /** * The request object used by `CancelAutomationRun`. @@ -665,6 +766,10 @@ export namespace clouddeploy_v1 { * Output only. The name of the Cloud Run job that is associated with a `Rollout`. Format is `projects/{project\}/locations/{location\}/jobs/{job_name\}`. */ job?: string | null; + /** + * Output only. The previous Cloud Run Revision name associated with a `Rollout`. Only set when a canary deployment strategy is configured. Format for service is projects/{project\}/locations/{location\}/services/{service\}/revisions/{revision\}. Format for worker pool is projects/{project\}/locations/{location\}/workerPools/{workerpool\}/revisions/{revision\}. + */ + previousRevision?: string | null; /** * Output only. The Cloud Run Revision id associated with a `Rollout`. */ @@ -686,6 +791,14 @@ export namespace clouddeploy_v1 { * CloudRunRenderMetadata contains Cloud Run information associated with a `Release` render. */ export interface Schema$CloudRunRenderMetadata { + /** + * Output only. The name of the Cloud Run Job in the rendered manifest. Format is `projects/{project\}/locations/{location\}/jobs/{job\}`. + */ + job?: string | null; + /** + * Output only. The name of the Cloud Run Revision in the rendered manifest. Format is `projects/{project\}/locations/{location\}/services/{service\}/revisions/{revision\}`. + */ + revision?: string | null; /** * Output only. The name of the Cloud Run Service in the rendered manifest. Format is `projects/{project\}/locations/{location\}/services/{service\}`. */ @@ -716,6 +829,27 @@ export namespace clouddeploy_v1 { */ supportedVersions?: Schema$SkaffoldVersion[]; } + /** + * This task is represented by a container that is executed in the Cloud Build execution environment. + */ + export interface Schema$ContainerTask { + /** + * Optional. Args is the container arguments to use. This overrides the default arguments defined in the container image. + */ + args?: string[] | null; + /** + * Optional. Command is the container entrypoint to use. This overrides the default entrypoint defined in the container image. + */ + command?: string[] | null; + /** + * Optional. Environment variables that are set in the container. + */ + env?: {[key: string]: string} | null; + /** + * Required. Image is the container image to use. + */ + image?: string | null; + } /** * A createChildRollout Job. */ @@ -742,6 +876,56 @@ export namespace clouddeploy_v1 { */ phaseConfigs?: Schema$PhaseConfig[]; } + /** + * CustomCheck configures a third-party metric provider to run the analysis, via a Task that runs at a specified frequency. + */ + export interface Schema$CustomCheck { + /** + * Optional. The frequency at which the custom check will be run, with a minimum and default of 5 minutes. + */ + frequency?: string | null; + /** + * Required. The ID of the custom Analysis check. + */ + id?: string | null; + /** + * Required. The Task to be run for this custom check. + */ + task?: Schema$Task; + } + /** + * CustomCheckStatus contains information specific to a single iteration of a custom analysis job. + */ + export interface Schema$CustomCheckStatus { + /** + * Output only. The reason the analysis failed. This will always be unspecified while the analysis is in progress or if it succeeded. + */ + failureCause?: string | null; + /** + * Output only. Additional information about the analysis failure, if available. + */ + failureMessage?: string | null; + /** + * Output only. The frequency in minutes at which the custom check is run. + */ + frequency?: string | null; + /** + * Output only. The ID of the custom check. + */ + id?: string | null; + /** + * Output only. The resource name of the Cloud Build `Build` object that was used to execute the latest run of this custom action check. Format is `projects/{project\}/locations/{location\}/builds/{build\}`. + */ + latestBuild?: string | null; + /** + * Output only. Custom metadata provided by the user-defined custom check operation. result. + */ + metadata?: Schema$CustomMetadata; + /** + * Output only. The task that ran for this custom check. + */ + task?: Schema$Task; + } /** * CustomMetadata contains information from a user-defined operation. */ @@ -786,6 +970,19 @@ export namespace clouddeploy_v1 { */ renderAction?: string | null; } + /** + * CustomTargetTasks represents the `CustomTargetType` configuration using tasks. + */ + export interface Schema$CustomTargetTasks { + /** + * Required. The task responsible for deploy operations. + */ + deploy?: Schema$Task; + /** + * Optional. The task responsible for render operations. If not provided then Cloud Deploy will perform its default rendering operation. + */ + render?: Schema$Task; + } /** * A `CustomTargetType` resource in the Cloud Deploy API. A `CustomTargetType` defines a type of custom target that can be referenced in a `Target` in order to facilitate deploying to other systems besides the supported runtimes. */ @@ -822,6 +1019,10 @@ export namespace clouddeploy_v1 { * Identifier. Name of the `CustomTargetType`. Format is `projects/{project\}/locations/{location\}/customTargetTypes/{customTargetType\}`. The `customTargetType` component must match `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?` */ name?: string | null; + /** + * Optional. Configures render and deploy for the `CustomTargetType` using tasks. + */ + tasks?: Schema$CustomTargetTasks; /** * Output only. Unique identifier of the `CustomTargetType`. */ @@ -1028,6 +1229,10 @@ export namespace clouddeploy_v1 { * Deployment job composition. */ export interface Schema$DeploymentJobs { + /** + * Output only. The analysis Job. Runs after a verify if there is a verify job and the verify job succeeds. + */ + analysisJob?: Schema$Job; /** * Output only. The deploy Job. This is the deploy job in the phase. */ @@ -1260,6 +1465,19 @@ export namespace clouddeploy_v1 { */ title?: string | null; } + /** + * FailedAlertPolicy contains information about an alert policy that was found to be firing during an alert policy check. + */ + export interface Schema$FailedAlertPolicy { + /** + * Output only. The name of the alert policy that was found to be firing. Format is `projects/{project\}/locations/{location\}/alertPolicies/{alertPolicy\}`. + */ + alertPolicy?: string | null; + /** + * Output only. Open alerts for the alerting policies that matched the alert policy check configuration. + */ + alerts?: string[] | null; + } /** * Information about the Kubernetes Gateway API service mesh configuration. */ @@ -1314,6 +1532,15 @@ export namespace clouddeploy_v1 { */ proxyUrl?: string | null; } + /** + * GoogleCloudAnalysis is a set of Google Cloud-based checks to perform on the deployment. + */ + export interface Schema$GoogleCloudAnalysis { + /** + * Optional. A list of Cloud Monitoring Alert Policy checks to perform as part of the analysis. + */ + alertPolicyChecks?: Schema$AlertPolicyCheck[]; + } /** * The request object used by `IgnoreJob`. */ @@ -1343,6 +1570,10 @@ export namespace clouddeploy_v1 { * Output only. An advanceChildRollout Job. */ advanceChildRolloutJob?: Schema$AdvanceChildRolloutJob; + /** + * Output only. An analysis Job. + */ + analysisJob?: Schema$AnalysisJob; /** * Output only. A createChildRollout Job. */ @@ -1388,6 +1619,10 @@ export namespace clouddeploy_v1 { * Output only. Information specific to an advanceChildRollout `JobRun` */ advanceChildRolloutJobRun?: Schema$AdvanceChildRolloutJobRun; + /** + * Output only. Information specific to an analysis `JobRun`. + */ + analysisJobRun?: Schema$AnalysisJobRun; /** * Output only. Information specific to a createChildRollout `JobRun`. */ @@ -1499,6 +1734,23 @@ export namespace clouddeploy_v1 { */ serviceNetworking?: Schema$ServiceNetworking; } + /** + * KubernetesRenderMetadata contains Kubernetes information associated with a `Release` render. + */ + export interface Schema$KubernetesRenderMetadata { + /** + * Output only. Name of the canary version of the Kubernetes Deployment that will be applied to the GKE cluster. Only set if a canary deployment strategy was configured. + */ + canaryDeployment?: string | null; + /** + * Output only. Name of the Kubernetes Deployment that will be applied to the GKE cluster. Only set if a single Deployment was provided in the rendered manifest. + */ + deployment?: string | null; + /** + * Output only. Namespace the Kubernetes resources will be applied to in the GKE cluster. Only set if applying resources to a single namespace. + */ + kubernetesNamespace?: string | null; + } /** * The response object from `ListAutomationRuns`. */ @@ -1858,6 +2110,10 @@ export namespace clouddeploy_v1 { * PhaseConfig represents the configuration for a phase in the custom canary deployment. */ export interface Schema$PhaseConfig { + /** + * Optional. Configuration for the analysis job of this phase. If this is not configured, there will be no analysis job for this phase. + */ + analysis?: Schema$Analysis; /** * Required. Percentage deployment for the phase. */ @@ -1882,6 +2138,10 @@ export namespace clouddeploy_v1 { * Optional. Whether to run verify tests after the deployment via `skaffold verify`. */ verify?: boolean | null; + /** + * Optional. Configuration for the verify job. Cannot be set if `verify` is set to true. + */ + verifyConfig?: Schema$Verify; } /** * PipelineCondition contains all conditions relevant to a Delivery Pipeline. @@ -1977,6 +2237,10 @@ export namespace clouddeploy_v1 { * Optional. A sequence of Skaffold custom actions to invoke during execution of the postdeploy job. */ actions?: string[] | null; + /** + * Optional. The tasks that will run as a part of the postdeploy job. The tasks are executed sequentially in the order specified. Only one of `actions` or `tasks` can be specified. + */ + tasks?: Schema$Task[]; } /** * A postdeploy Job. @@ -1986,6 +2250,10 @@ export namespace clouddeploy_v1 { * Output only. The custom actions that the postdeploy Job executes. */ actions?: string[] | null; + /** + * Output only. The tasks that are executed as part of the postdeploy Job. + */ + tasks?: Schema$Task[]; } /** * PostdeployJobRun contains information specific to a postdeploy `JobRun`. @@ -2003,6 +2271,19 @@ export namespace clouddeploy_v1 { * Output only. Additional information about the postdeploy failure, if available. */ failureMessage?: string | null; + /** + * Output only. Metadata containing information about the postdeploy `JobRun`. + */ + metadata?: Schema$PostdeployJobRunMetadata; + } + /** + * PostdeployJobRunMetadata contains metadata about the postdeploy `JobRun`. + */ + export interface Schema$PostdeployJobRunMetadata { + /** + * Output only. Custom metadata provided by user-defined postdeploy operation. + */ + custom?: Schema$CustomMetadata; } /** * Predeploy contains the predeploy job configuration information. @@ -2012,6 +2293,10 @@ export namespace clouddeploy_v1 { * Optional. A sequence of Skaffold custom actions to invoke during execution of the predeploy job. */ actions?: string[] | null; + /** + * Optional. The tasks that will run as a part of the predeploy job. The tasks are executed sequentially in the order specified. Only one of `actions` or `tasks` can be specified. + */ + tasks?: Schema$Task[]; } /** * A predeploy Job. @@ -2021,6 +2306,10 @@ export namespace clouddeploy_v1 { * Output only. The custom actions that the predeploy Job executes. */ actions?: string[] | null; + /** + * Output only. The tasks that are executed as part of the predeploy Job. + */ + tasks?: Schema$Task[]; } /** * PredeployJobRun contains information specific to a predeploy `JobRun`. @@ -2038,6 +2327,19 @@ export namespace clouddeploy_v1 { * Output only. Additional information about the predeploy failure, if available. */ failureMessage?: string | null; + /** + * Output only. Metadata containing information about the predeploy `JobRun`. + */ + metadata?: Schema$PredeployJobRunMetadata; + } + /** + * PredeployJobRunMetadata contains metadata about the predeploy `JobRun`. + */ + export interface Schema$PredeployJobRunMetadata { + /** + * Output only. Custom metadata provided by user-defined predeploy operation. + */ + custom?: Schema$CustomMetadata; } /** * Execution using a private Cloud Build pool. @@ -2307,6 +2609,10 @@ export namespace clouddeploy_v1 { * Output only. Custom metadata provided by user-defined render operation. */ custom?: Schema$CustomMetadata; + /** + * Output only. Metadata associated with rendering for a Kubernetes cluster (GKE or GKE Enterprise target). + */ + kubernetes?: Schema$KubernetesRenderMetadata; } /** * RepairPhase tracks the repair attempts that have been made for each `RepairPhaseConfig` specified in the `Automation` resource. @@ -2949,6 +3255,10 @@ export namespace clouddeploy_v1 { * Standard represents the standard deployment strategy. */ export interface Schema$Standard { + /** + * Optional. Configuration for the analysis job. If this is not configured, the analysis job will not be present. + */ + analysis?: Schema$Analysis; /** * Optional. Configuration for the postdeploy job. If this is not configured, the postdeploy job will not be present. */ @@ -2961,6 +3271,10 @@ export namespace clouddeploy_v1 { * Optional. Whether to verify a deployment via `skaffold verify`. */ verify?: boolean | null; + /** + * Optional. Configuration for the verify job. Cannot be set if `verify` is set to true. + */ + verifyConfig?: Schema$Verify; } /** * 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). @@ -3188,6 +3502,15 @@ export namespace clouddeploy_v1 { */ status?: boolean | null; } + /** + * A Task represents a unit of work that is executed as part of a Job. + */ + export interface Schema$Task { + /** + * Optional. This task is represented by a container that is executed in the Cloud Build execution environment. + */ + container?: Schema$ContainerTask; + } /** * The request object used by `TerminateJobRun`. */ @@ -3366,10 +3689,24 @@ export namespace clouddeploy_v1 { */ toolVersionSupportState?: string | null; } + /** + * Verify contains the verify job configuration information. + */ + export interface Schema$Verify { + /** + * Optional. The tasks that will run as a part of the verify job. The tasks are executed sequentially in the order specified. + */ + tasks?: Schema$Task[]; + } /** * A verify Job. */ - export interface Schema$VerifyJob {} + export interface Schema$VerifyJob { + /** + * Output only. The tasks that are executed as part of the verify Job. + */ + tasks?: Schema$Task[]; + } /** * VerifyJobRun contains information specific to a verify `JobRun`. */ @@ -3394,6 +3731,19 @@ export namespace clouddeploy_v1 { * Output only. Additional information about the verify failure, if available. */ failureMessage?: string | null; + /** + * Output only. Metadata containing information about the verify `JobRun`. + */ + metadata?: Schema$VerifyJobRunMetadata; + } + /** + * VerifyJobRunMetadata contains metadata about the verify `JobRun`. + */ + export interface Schema$VerifyJobRunMetadata { + /** + * Output only. Custom metadata provided by user-defined verify operation. + */ + custom?: Schema$CustomMetadata; } /** * Weekly windows. For example, blocking actions every Saturday and Sunday. Another example would be blocking actions every weekday from 5pm to midnight. @@ -3720,7 +4070,7 @@ export namespace clouddeploy_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3750,7 +4100,7 @@ export namespace clouddeploy_v1 { * * // Do the magic * const res = await clouddeploy.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3882,7 +4232,7 @@ export namespace clouddeploy_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -3961,6 +4311,7 @@ export namespace clouddeploy_v1 { * // "etag": "my_etag", * // "labels": {}, * // "name": "my_name", + * // "tasks": {}, * // "uid": "my_uid", * // "updateTime": "my_updateTime" * // } @@ -4267,6 +4618,7 @@ export namespace clouddeploy_v1 { * // "etag": "my_etag", * // "labels": {}, * // "name": "my_name", + * // "tasks": {}, * // "uid": "my_uid", * // "updateTime": "my_updateTime" * // } @@ -4717,6 +5069,7 @@ export namespace clouddeploy_v1 { * // "etag": "my_etag", * // "labels": {}, * // "name": "my_name", + * // "tasks": {}, * // "uid": "my_uid", * // "updateTime": "my_updateTime" * // } @@ -10191,6 +10544,7 @@ export namespace clouddeploy_v1 { * // Example response * // { * // "advanceChildRolloutJobRun": {}, + * // "analysisJobRun": {}, * // "createChildRolloutJobRun": {}, * // "createTime": "my_createTime", * // "deployJobRun": {}, diff --git a/src/apis/clouderrorreporting/README.md b/src/apis/clouderrorreporting/README.md index c2582be96b3..bce577054a3 100644 --- a/src/apis/clouderrorreporting/README.md +++ b/src/apis/clouderrorreporting/README.md @@ -4,15 +4,6 @@ > Groups and counts similar errors from cloud services and applications, reports new errors, and provides access to error groups and their associated errors. -## 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/error-reporting](https://www.npmjs.com/package/@google-cloud/error-reporting) instead. -The [@google-cloud/error-reporting](https://www.npmjs.com/package/@google-cloud/error-reporting) 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 diff --git a/src/apis/cloudfunctions/v1.ts b/src/apis/cloudfunctions/v1.ts index d6c56440b65..b1f82839828 100644 --- a/src/apis/cloudfunctions/v1.ts +++ b/src/apis/cloudfunctions/v1.ts @@ -1073,7 +1073,7 @@ export namespace cloudfunctions_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1103,7 +1103,7 @@ export namespace cloudfunctions_v1 { * * // Do the magic * const res = await cloudfunctions.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1224,7 +1224,7 @@ export namespace cloudfunctions_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/cloudfunctions/v2.ts b/src/apis/cloudfunctions/v2.ts index d03b64ce1a4..2632e480add 100644 --- a/src/apis/cloudfunctions/v2.ts +++ b/src/apis/cloudfunctions/v2.ts @@ -1142,7 +1142,7 @@ export namespace cloudfunctions_v2 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1172,7 +1172,7 @@ export namespace cloudfunctions_v2 { * * // Do the magic * const res = await cloudfunctions.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1293,7 +1293,7 @@ export namespace cloudfunctions_v2 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/cloudfunctions/v2alpha.ts b/src/apis/cloudfunctions/v2alpha.ts index 5cdbb65bd5b..298b4ad7676 100644 --- a/src/apis/cloudfunctions/v2alpha.ts +++ b/src/apis/cloudfunctions/v2alpha.ts @@ -1142,7 +1142,7 @@ export namespace cloudfunctions_v2alpha { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1172,7 +1172,7 @@ export namespace cloudfunctions_v2alpha { * * // Do the magic * const res = await cloudfunctions.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1293,7 +1293,7 @@ export namespace cloudfunctions_v2alpha { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/cloudfunctions/v2beta.ts b/src/apis/cloudfunctions/v2beta.ts index d0db416a964..a8de6849ac2 100644 --- a/src/apis/cloudfunctions/v2beta.ts +++ b/src/apis/cloudfunctions/v2beta.ts @@ -1142,7 +1142,7 @@ export namespace cloudfunctions_v2beta { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1172,7 +1172,7 @@ export namespace cloudfunctions_v2beta { * * // Do the magic * const res = await cloudfunctions.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1293,7 +1293,7 @@ export namespace cloudfunctions_v2beta { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/cloudidentity/v1beta1.ts b/src/apis/cloudidentity/v1beta1.ts index 86b546b0f34..10006e81f12 100644 --- a/src/apis/cloudidentity/v1beta1.ts +++ b/src/apis/cloudidentity/v1beta1.ts @@ -187,7 +187,7 @@ export namespace cloudidentity_v1beta1 { */ ownershipPrivilege?: string | null; /** - * Whether device supports Android work profiles. If false, this service will not block access to corp data even if an administrator turns on the "Enforce Work Profile" policy. + * Whether the device supports Android work profiles. If false, this service will not block access to corp data even if an administrator turns on the "Enforce Work Profile" policy. */ supportsWorkProfile?: boolean | null; /** @@ -236,11 +236,11 @@ export namespace cloudidentity_v1beta1 { deviceUser?: Schema$DeviceUser; } /** - * Contains information about browser profiles reported by the [Endpoint Verification extension](https://chromewebstore.google.com/detail/endpoint-verification/callobklhcbilhphinckomhgkigmfocg?pli=1). + * Contains information about browser profiles reported by the clients on the device (e.g. [Endpoint Verification extension](https://chromewebstore.google.com/detail/endpoint-verification/callobklhcbilhphinckomhgkigmfocg?pli=1)). */ export interface Schema$BrowserAttributes { /** - * Represents the current state of the [Chrome browser attributes](https://cloud.google.com/access-context-manager/docs/browser-attributes) sent by the [Endpoint Verification extension](https://chromewebstore.google.com/detail/endpoint-verification/callobklhcbilhphinckomhgkigmfocg?pli=1). + * Represents the current state of the [Chrome browser attributes](https://cloud.google.com/access-context-manager/docs/browser-attributes) sent by the clients on the device, such as [Endpoint Verification extension](https://chromewebstore.google.com/detail/endpoint-verification/callobklhcbilhphinckomhgkigmfocg?pli=1). */ chromeBrowserInfo?: Schema$BrowserInfo; /** @@ -253,7 +253,7 @@ export namespace cloudidentity_v1beta1 { lastProfileSyncTime?: string | null; } /** - * Browser-specific fields reported by the [Endpoint Verification extension](https://chromewebstore.google.com/detail/endpoint-verification/callobklhcbilhphinckomhgkigmfocg?pli=1). + * Browser-specific fields reported by clients on the device, such as [Endpoint Verification extension](https://chromewebstore.google.com/detail/endpoint-verification/callobklhcbilhphinckomhgkigmfocg?pli=1). */ export interface Schema$BrowserInfo { /** @@ -308,6 +308,10 @@ export namespace cloudidentity_v1beta1 { * Current state of [password protection trigger](https://chromeenterprise.google/policies/#PasswordProtectionWarningTrigger). */ passwordProtectionWarningTrigger?: string | null; + /** + * Output only. Chrome policies information for the browser as can be seen in chrome://policy. Full possibilities of policies can be consulted in [Chrome Enterprise Policy List](https://chromeenterprise.google/policies/). + */ + policies?: Schema$ChromePolicy[]; /** * Current state of [Safe Browsing protection level](https://chromeenterprise.google/policies/#SafeBrowsingProtectionLevel). */ @@ -420,6 +424,31 @@ export namespace cloudidentity_v1beta1 { */ hasMembership?: boolean | null; } + /** + * Represents a Chrome policy and its current state. + */ + export interface Schema$ChromePolicy { + /** + * Output only. A list of other policy values for the same policy name that were not applied due to lower precedence. This field is empty if there were no conflicts. + */ + conflicts?: Schema$PolicyConflict[]; + /** + * Output only. The unique name of the Chrome policy. These names correspond to the policy names listed in [Chrome Enterprise Policy List](https://chromeenterprise.google/policies/) + */ + name?: string | null; + /** + * Output only. The scope at which the *applied* policy value is set (USER or MACHINE). + */ + scope?: string | null; + /** + * Output only. The source from which the *applied* policy value originated. + */ + source?: string | null; + /** + * Output only. The currently applied value of the policy. The format depends on the policy type (e.g., boolean, string, JSON array/object). + */ + value?: string | null; + } /** * Represents the state associated with an API client calling the Devices API. Resource representing ClientState and supports updates from API users */ @@ -565,6 +594,10 @@ export namespace cloudidentity_v1beta1 { * Output only. Device brand. Example: Samsung. */ brand?: string | null; + /** + * Browser profiles on the device. This is a copy of the BrowserAttributes message defined in EndpointVerificationSpecificAttributes. We are replicating it here since EndpointVerification isn't the only client reporting browser profiles. + */ + browserProfiles?: Schema$BrowserAttributes[]; /** * Output only. Build number of the device. */ @@ -2050,6 +2083,23 @@ export namespace cloudidentity_v1beta1 { */ type?: string | null; } + /** + * Represents a policy value from a source that was not applied because a higher-priority source took precedence. + */ + export interface Schema$PolicyConflict { + /** + * Output only. The scope at which this lower-priority policy is set (USER or MACHINE). + */ + scope?: string | null; + /** + * Output only. The source from which this lower-priority policy value originated. + */ + source?: string | null; + /** + * Output only. The policy value from this lower-priority source. + */ + value?: string | null; + } /** * PolicyQuery */ @@ -3665,6 +3715,7 @@ export namespace cloudidentity_v1beta1 { * // "basebandVersion": "my_basebandVersion", * // "bootloaderVersion": "my_bootloaderVersion", * // "brand": "my_brand", + * // "browserProfiles": [], * // "buildNumber": "my_buildNumber", * // "clientTypes": [], * // "compromisedState": "my_compromisedState", diff --git a/src/apis/cloudkms/v1.ts b/src/apis/cloudkms/v1.ts index 7578c1c1da1..8275947a911 100644 --- a/src/apis/cloudkms/v1.ts +++ b/src/apis/cloudkms/v1.ts @@ -424,7 +424,7 @@ export namespace cloudkms_v1 { */ importOnly?: boolean | null; /** - * Optional. The policy used for Key Access Justifications Policy Enforcement. If this field is present and this key is enrolled in Key Access Justifications Policy Enforcement, the policy will be evaluated in encrypt, decrypt, and sign operations, and the operation will fail if rejected by the policy. The policy is defined by specifying zero or more allowed justification codes. https://cloud.google.com/assured-workloads/key-access-justifications/docs/justification-codes By default, this field is absent, and all justification codes are allowed. + * Optional. The policy used for Key Access Justifications Policy Enforcement. If this field is present and this key is enrolled in Key Access Justifications Policy Enforcement, the policy will be evaluated in encrypt, decrypt, and sign operations, and the operation will fail if rejected by the policy. The policy is defined by specifying zero or more allowed justification codes. https://cloud.google.com/assured-workloads/key-access-justifications/docs/justification-codes By default, this field is absent, and all justification codes are allowed. If the `key_access_justifications_policy.allowed_access_reasons` is empty (zero allowed justification code), all encrypt, decrypt, and sign operations will fail. */ keyAccessJustificationsPolicy?: Schema$KeyAccessJustificationsPolicy; /** @@ -890,37 +890,41 @@ export namespace cloudkms_v1 { state?: string | null; } /** - * The configuration of a protection level for a project's Key Access Justifications enrollment. + * Represents the configuration of a protection level for a project's Key Access Justifications enrollment. */ export interface Schema$KeyAccessJustificationsEnrollmentConfig { /** - * Whether the project has KAJ logging enabled. + * Indicates whether the project has KAJ logging enabled. */ auditLogging?: boolean | null; /** - * Whether the project is enrolled in KAJ policy enforcement. + * Indicates whether the project is enrolled in KAJ policy enforcement. */ policyEnforcement?: boolean | null; } /** - * A KeyAccessJustificationsPolicy specifies zero or more allowed AccessReason values for encrypt, decrypt, and sign operations on a CryptoKey. + * A KeyAccessJustificationsPolicy specifies zero or more allowed AccessReason values for encrypt, decrypt, and sign operations on a CryptoKey or KeyAccessJustificationsPolicyConfig (the default Key Access Justifications policy). */ export interface Schema$KeyAccessJustificationsPolicy { /** - * The list of allowed reasons for access to a CryptoKey. Zero allowed access reasons means all encrypt, decrypt, and sign operations for the CryptoKey associated with this policy will fail. + * The list of allowed reasons for access to a CryptoKey. Note that empty allowed_access_reasons has a different meaning depending on where this message appears. If this is under KeyAccessJustificationsPolicyConfig, it means allow-all. If this is under CryptoKey, it means deny-all. */ allowedAccessReasons?: string[] | null; } /** - * A singleton configuration for Key Access Justifications policies. + * Represents a singleton configuration for Key Access Justifications policies. */ export interface Schema$KeyAccessJustificationsPolicyConfig { /** - * Optional. The default key access justification policy used when a CryptoKey is created in this folder. This is only used when a Key Access Justifications policy is not provided in the CreateCryptoKeyRequest. This overrides any default policies in its ancestry. + * Optional. Specifies the default key access justifications (KAJ) policy used when a CryptoKey is created in this folder. This is only used when a Key Access Justifications policy is not provided in the CreateCryptoKeyRequest. This overrides any default policies in its ancestry. If this field is unset, or is set but contains an empty allowed_access_reasons list, no default Key Access Justifications (KAJ) policy configuration is active. In this scenario, all newly created keys will default to an "allow-all" policy. */ defaultKeyAccessJustificationPolicy?: Schema$KeyAccessJustificationsPolicy; /** - * Identifier. The resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". + * Output only. Indicates whether this parent resource is available to default policy feature. Please consult [the prerequisite of default policy feature](https://cloud.google.com/assured-workloads/key-access-justifications/docs/set-default-policy#before) for more details. + */ + defaultPolicyAvailable?: boolean | null; + /** + * Identifier. Represents the resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". */ name?: string | null; } @@ -1650,28 +1654,28 @@ export namespace cloudkms_v1 { keyProject?: string | null; } /** - * Response message for KeyAccessJustificationsConfig.ShowEffectiveKeyAccessJustificationsEnrollmentConfig + * Represents a response message for KeyAccessJustificationsConfig.ShowEffectiveKeyAccessJustificationsEnrollmentConfig */ export interface Schema$ShowEffectiveKeyAccessJustificationsEnrollmentConfigResponse { /** - * The effective KeyAccessJustificationsEnrollmentConfig for external keys. + * Contains the effective KeyAccessJustificationsEnrollmentConfig for external keys. */ externalConfig?: Schema$KeyAccessJustificationsEnrollmentConfig; /** - * The effective KeyAccessJustificationsEnrollmentConfig for hardware keys. + * Contains the effective KeyAccessJustificationsEnrollmentConfig for hardware keys. */ hardwareConfig?: Schema$KeyAccessJustificationsEnrollmentConfig; /** - * The effective KeyAccessJustificationsEnrollmentConfig for software keys. + * Contains the effective KeyAccessJustificationsEnrollmentConfig for software keys. */ softwareConfig?: Schema$KeyAccessJustificationsEnrollmentConfig; } /** - * Response message for KeyAccessJustificationsConfig.ShowEffectiveKeyAccessJustificationsPolicyConfig. + * Represents a response message for KeyAccessJustificationsConfig.ShowEffectiveKeyAccessJustificationsPolicyConfig. */ export interface Schema$ShowEffectiveKeyAccessJustificationsPolicyConfigResponse { /** - * The effective KeyAccessJustificationsPolicyConfig. + * Contains the effective KeyAccessJustificationsPolicyConfig. */ effectiveKajPolicy?: Schema$KeyAccessJustificationsPolicyConfig; } @@ -1691,6 +1695,10 @@ export namespace cloudkms_v1 { * Output only. The time at which the instance will be automatically disabled if not refreshed. This field is updated upon creation and after each successful refresh operation and enable. A RefreshSingleTenantHsmInstance operation must be made via a SingleTenantHsmInstanceProposal before this time otherwise the SingleTenantHsmInstance will become disabled. */ disableTime?: string | null; + /** + * Optional. Immutable. Indicates whether key portability is enabled for the SingleTenantHsmInstance. This can only be set at creation time. Key portability features are disabled by default and not yet available in GA. + */ + keyPortabilityEnabled?: boolean | null; /** * Identifier. The resource name for this SingleTenantHsmInstance in the format `projects/x/locations/x/singleTenantHsmInstances/x`. */ @@ -1704,7 +1712,7 @@ export namespace cloudkms_v1 { */ state?: string | null; /** - * Output only. The system-defined duration that an instance can remain unrefreshed until it is automatically disabled. This will have a value of 120 days. + * Output only. The system-defined duration that an instance can remain unrefreshed until it is automatically disabled. This will have a value of 730 days. */ unrefreshedDurationUntilDisable?: string | null; } @@ -2022,7 +2030,7 @@ export namespace cloudkms_v1 { * * // Do the magic * const res = await cloudkms.folders.getKajPolicyConfig({ - * // Required. The name of the KeyAccessJustificationsPolicyConfig to get. + * // Required. Specifies the name of the KeyAccessJustificationsPolicyConfig to get. * name: 'folders/my-folder/kajPolicyConfig', * }); * console.log(res.data); @@ -2030,6 +2038,7 @@ export namespace cloudkms_v1 { * // Example response * // { * // "defaultKeyAccessJustificationPolicy": {}, + * // "defaultPolicyAvailable": false, * // "name": "my_name" * // } * } @@ -2327,9 +2336,9 @@ export namespace cloudkms_v1 { * * // Do the magic * const res = await cloudkms.folders.updateKajPolicyConfig({ - * // Identifier. The resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". + * // Identifier. Represents the resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". * name: 'folders/my-folder/kajPolicyConfig', - * // Optional. The list of fields to update. + * // Optional. Specifies the list of fields to update. * updateMask: 'placeholder-value', * * // Request body metadata @@ -2337,6 +2346,7 @@ export namespace cloudkms_v1 { * // request body parameters * // { * // "defaultKeyAccessJustificationPolicy": {}, + * // "defaultPolicyAvailable": false, * // "name": "my_name" * // } * }, @@ -2346,6 +2356,7 @@ export namespace cloudkms_v1 { * // Example response * // { * // "defaultKeyAccessJustificationPolicy": {}, + * // "defaultPolicyAvailable": false, * // "name": "my_name" * // } * } @@ -2461,7 +2472,7 @@ export namespace cloudkms_v1 { } export interface Params$Resource$Folders$Getkajpolicyconfig extends StandardParameters { /** - * Required. The name of the KeyAccessJustificationsPolicyConfig to get. + * Required. Specifies the name of the KeyAccessJustificationsPolicyConfig to get. */ name?: string; } @@ -2482,11 +2493,11 @@ export namespace cloudkms_v1 { } export interface Params$Resource$Folders$Updatekajpolicyconfig extends StandardParameters { /** - * Identifier. The resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". + * Identifier. Represents the resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". */ name?: string; /** - * Optional. The list of fields to update. + * Optional. Specifies the list of fields to update. */ updateMask?: string; @@ -2536,7 +2547,7 @@ export namespace cloudkms_v1 { * * // Do the magic * const res = await cloudkms.organizations.getKajPolicyConfig({ - * // Required. The name of the KeyAccessJustificationsPolicyConfig to get. + * // Required. Specifies the name of the KeyAccessJustificationsPolicyConfig to get. * name: 'organizations/my-organization/kajPolicyConfig', * }); * console.log(res.data); @@ -2544,6 +2555,7 @@ export namespace cloudkms_v1 { * // Example response * // { * // "defaultKeyAccessJustificationPolicy": {}, + * // "defaultPolicyAvailable": false, * // "name": "my_name" * // } * } @@ -2684,9 +2696,9 @@ export namespace cloudkms_v1 { * * // Do the magic * const res = await cloudkms.organizations.updateKajPolicyConfig({ - * // Identifier. The resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". + * // Identifier. Represents the resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". * name: 'organizations/my-organization/kajPolicyConfig', - * // Optional. The list of fields to update. + * // Optional. Specifies the list of fields to update. * updateMask: 'placeholder-value', * * // Request body metadata @@ -2694,6 +2706,7 @@ export namespace cloudkms_v1 { * // request body parameters * // { * // "defaultKeyAccessJustificationPolicy": {}, + * // "defaultPolicyAvailable": false, * // "name": "my_name" * // } * }, @@ -2703,6 +2716,7 @@ export namespace cloudkms_v1 { * // Example response * // { * // "defaultKeyAccessJustificationPolicy": {}, + * // "defaultPolicyAvailable": false, * // "name": "my_name" * // } * } @@ -2812,17 +2826,17 @@ export namespace cloudkms_v1 { export interface Params$Resource$Organizations$Getkajpolicyconfig extends StandardParameters { /** - * Required. The name of the KeyAccessJustificationsPolicyConfig to get. + * Required. Specifies the name of the KeyAccessJustificationsPolicyConfig to get. */ name?: string; } export interface Params$Resource$Organizations$Updatekajpolicyconfig extends StandardParameters { /** - * Identifier. The resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". + * Identifier. Represents the resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". */ name?: string; /** - * Optional. The list of fields to update. + * Optional. Specifies the list of fields to update. */ updateMask?: string; @@ -3017,7 +3031,7 @@ export namespace cloudkms_v1 { * * // Do the magic * const res = await cloudkms.projects.getKajPolicyConfig({ - * // Required. The name of the KeyAccessJustificationsPolicyConfig to get. + * // Required. Specifies the name of the KeyAccessJustificationsPolicyConfig to get. * name: 'projects/my-project/kajPolicyConfig', * }); * console.log(res.data); @@ -3025,6 +3039,7 @@ export namespace cloudkms_v1 { * // Example response * // { * // "defaultKeyAccessJustificationPolicy": {}, + * // "defaultPolicyAvailable": false, * // "name": "my_name" * // } * } @@ -3317,7 +3332,7 @@ export namespace cloudkms_v1 { * const res = * await cloudkms.projects.showEffectiveKeyAccessJustificationsEnrollmentConfig( * { - * // Required. The number or id of the project to get the effective KeyAccessJustificationsEnrollmentConfig for. + * // Required. Specifies the number or id of the project to get the effective KeyAccessJustificationsEnrollmentConfig for. * project: 'projects/my-project', * }, * ); @@ -3472,7 +3487,7 @@ export namespace cloudkms_v1 { * // Do the magic * const res = * await cloudkms.projects.showEffectiveKeyAccessJustificationsPolicyConfig({ - * // Required. The number or id of the project to get the effective KeyAccessJustificationsPolicyConfig. In the format of "projects/{|\}" + * // Required. Specifies the number or id of the project to get the effective KeyAccessJustificationsPolicyConfig. In the format of "projects/{|\}" * project: 'projects/my-project', * }); * console.log(res.data); @@ -3780,9 +3795,9 @@ export namespace cloudkms_v1 { * * // Do the magic * const res = await cloudkms.projects.updateKajPolicyConfig({ - * // Identifier. The resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". + * // Identifier. Represents the resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". * name: 'projects/my-project/kajPolicyConfig', - * // Optional. The list of fields to update. + * // Optional. Specifies the list of fields to update. * updateMask: 'placeholder-value', * * // Request body metadata @@ -3790,6 +3805,7 @@ export namespace cloudkms_v1 { * // request body parameters * // { * // "defaultKeyAccessJustificationPolicy": {}, + * // "defaultPolicyAvailable": false, * // "name": "my_name" * // } * }, @@ -3799,6 +3815,7 @@ export namespace cloudkms_v1 { * // Example response * // { * // "defaultKeyAccessJustificationPolicy": {}, + * // "defaultPolicyAvailable": false, * // "name": "my_name" * // } * } @@ -3914,7 +3931,7 @@ export namespace cloudkms_v1 { } export interface Params$Resource$Projects$Getkajpolicyconfig extends StandardParameters { /** - * Required. The name of the KeyAccessJustificationsPolicyConfig to get. + * Required. Specifies the name of the KeyAccessJustificationsPolicyConfig to get. */ name?: string; } @@ -3926,13 +3943,13 @@ export namespace cloudkms_v1 { } export interface Params$Resource$Projects$Showeffectivekeyaccessjustificationsenrollmentconfig extends StandardParameters { /** - * Required. The number or id of the project to get the effective KeyAccessJustificationsEnrollmentConfig for. + * Required. Specifies the number or id of the project to get the effective KeyAccessJustificationsEnrollmentConfig for. */ project?: string; } export interface Params$Resource$Projects$Showeffectivekeyaccessjustificationspolicyconfig extends StandardParameters { /** - * Required. The number or id of the project to get the effective KeyAccessJustificationsPolicyConfig. In the format of "projects/{|\}" + * Required. Specifies the number or id of the project to get the effective KeyAccessJustificationsPolicyConfig. In the format of "projects/{|\}" */ project?: string; } @@ -3953,11 +3970,11 @@ export namespace cloudkms_v1 { } export interface Params$Resource$Projects$Updatekajpolicyconfig extends StandardParameters { /** - * Identifier. The resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". + * Identifier. Represents the resource name for this KeyAccessJustificationsPolicyConfig in the format of "{organizations|folders|projects\}/x/kajPolicyConfig". */ name?: string; /** - * Optional. The list of fields to update. + * Optional. Specifies the list of fields to update. */ updateMask?: string; @@ -4430,7 +4447,7 @@ export namespace cloudkms_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -4463,7 +4480,7 @@ export namespace cloudkms_v1 { * * // Do the magic * const res = await cloudkms.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -4755,7 +4772,7 @@ export namespace cloudkms_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -14297,6 +14314,7 @@ export namespace cloudkms_v1 { * // "createTime": "my_createTime", * // "deleteTime": "my_deleteTime", * // "disableTime": "my_disableTime", + * // "keyPortabilityEnabled": false, * // "name": "my_name", * // "quorumAuth": {}, * // "state": "my_state", @@ -14457,6 +14475,7 @@ export namespace cloudkms_v1 { * // "createTime": "my_createTime", * // "deleteTime": "my_deleteTime", * // "disableTime": "my_disableTime", + * // "keyPortabilityEnabled": false, * // "name": "my_name", * // "quorumAuth": {}, * // "state": "my_state", diff --git a/src/apis/cloudlocationfinder/v1.ts b/src/apis/cloudlocationfinder/v1.ts index 9fd56ecf6d1..b19f42180bd 100644 --- a/src/apis/cloudlocationfinder/v1.ts +++ b/src/apis/cloudlocationfinder/v1.ts @@ -381,7 +381,7 @@ export namespace cloudlocationfinder_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -411,7 +411,7 @@ export namespace cloudlocationfinder_v1 { * * // Do the magic * const res = await cloudlocationfinder.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -538,7 +538,7 @@ export namespace cloudlocationfinder_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/cloudlocationfinder/v1alpha.ts b/src/apis/cloudlocationfinder/v1alpha.ts index e311aed253b..790215323f7 100644 --- a/src/apis/cloudlocationfinder/v1alpha.ts +++ b/src/apis/cloudlocationfinder/v1alpha.ts @@ -381,7 +381,7 @@ export namespace cloudlocationfinder_v1alpha { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -411,7 +411,7 @@ export namespace cloudlocationfinder_v1alpha { * * // Do the magic * const res = await cloudlocationfinder.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -538,7 +538,7 @@ export namespace cloudlocationfinder_v1alpha { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/cloudsearch/v1.ts b/src/apis/cloudsearch/v1.ts index d0c73cedc35..8b04795a1e5 100644 --- a/src/apis/cloudsearch/v1.ts +++ b/src/apis/cloudsearch/v1.ts @@ -2934,10 +2934,16 @@ export namespace cloudsearch_v1 { */ source?: Schema$Source; } - /** - * This field does not contain anything as of now and is just used as an indicator that the suggest result was a phrase completion. - */ - export interface Schema$QuerySuggestion {} + export interface Schema$QuerySuggestion { + /** + * Last query time of the suggestion for query history suggestions. + */ + lastQueryTime?: string | null; + /** + * Source corpus of the suggestion. + */ + sourceCorpus?: string | null; + } /** * Remove Logged Activity Request. */ @@ -2976,6 +2982,10 @@ export namespace cloudsearch_v1 { * Shared request options for all RPC methods. */ export interface Schema$RequestOptions { + /** + * The BCP-47 language code, such as "pt" or "en". It represents the user's preferred Display Language. + */ + clientDisplayLanguageCode?: string | null; /** * Debug options of the request */ @@ -3243,7 +3253,7 @@ export namespace cloudsearch_v1 { quality?: number | null; } /** - * The search API request. NEXT ID: 24 + * The search API request. NEXT ID: 25 */ export interface Schema$SearchRequest { /** @@ -7757,6 +7767,8 @@ export namespace cloudsearch_v1 { * const res = await cloudsearch.query.sources.list({ * // Number of sources to return in the response. * pageToken: 'placeholder-value', + * // The BCP-47 language code, such as "pt" or "en". It represents the user's preferred Display Language. + * 'requestOptions.clientDisplayLanguageCode': 'placeholder-value', * // If you are asked by Google to help with debugging, set this field. Otherwise, ignore this field. * 'requestOptions.debugOptions.enableDebugging': 'placeholder-value', * // The BCP-47 language code, such as "en-US" or "sr-Latn". For more information, see http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. For translations. Set this field using the language set in browser or for the page. In the event that the user's language preference is known, set this field to the known user language. When specified, the documents in search results are biased towards the specified language. The Suggest API uses this field as a hint to make better third-party autocomplete predictions. @@ -7875,6 +7887,10 @@ export namespace cloudsearch_v1 { * Number of sources to return in the response. */ pageToken?: string; + /** + * The BCP-47 language code, such as "pt" or "en". It represents the user's preferred Display Language. + */ + 'requestOptions.clientDisplayLanguageCode'?: string; /** * If you are asked by Google to help with debugging, set this field. Otherwise, ignore this field. */ diff --git a/src/apis/cloudsupport/v2.ts b/src/apis/cloudsupport/v2.ts index 7c27c113bb8..72d9610aef6 100644 --- a/src/apis/cloudsupport/v2.ts +++ b/src/apis/cloudsupport/v2.ts @@ -383,6 +383,10 @@ export namespace cloudsupport_v2 { * # gdata.* are outside protos with mising documentation */ fromFileName?: string | null; + /** + * # gdata.* are outside protos with mising documentation + */ + fromFusionId?: string | null; /** * # gdata.* are outside protos with mising documentation */ @@ -391,6 +395,10 @@ export namespace cloudsupport_v2 { * # gdata.* are outside protos with mising documentation */ fromUrlPath?: string | null; + /** + * # gdata.* are outside protos with mising documentation + */ + fusionIdDetectionMetadata?: string | null; } /** * The request message for the CreateAttachment endpoint. @@ -1886,7 +1894,7 @@ export namespace cloudsupport_v2 { * pageToken: 'placeholder-value', * // The name of the parent resource to search for cases under. * parent: '[^/]+/[^/]+', - * // An expression used to filter cases. Expressions use the following fields separated by `AND` and specified with `=`: - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. - `state`: Can be `OPEN` or `CLOSED`. - `priority`: Can be `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. You must specify either `organization` or `project`. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `"my search"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time\>"2020-01-01T00:00:00-05:00"`. `update_time` only supports the greater than operator (`\>`). Examples: - `organization="organizations/123456789"` - `project="projects/my-project-id"` - `project="projects/123456789"` - `organization="organizations/123456789" AND state=CLOSED` - `project="projects/my-project-id" AND creator.email="tester@example.com"` - `project="projects/my-project-id" AND (priority=P0 OR priority=P1)` + * // An expression used to filter cases. Expressions use the following fields separated by `AND` and specified with `=`: - `state`: Can be `OPEN` or `CLOSED`. - `priority`: Can be `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `"my search"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time\>"2020-01-01T00:00:00-05:00"`. `update_time` only supports the greater than operator (`\>`). If you are using the `v2` version of the API, you must specify the case parent in the `parent` field. If you provide an empty `query`, all cases under the parent resource will be returned. If you are using the `v2beta` version of the API, you must specify the case parent in the `query` field using one of the two fields below, which are only available for `v2beta`. The `parent` field will be ignored. - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. Examples: For `v2`: - `state=CLOSED` - `state=OPEN AND creator.email="tester@example.com"` - `state=OPEN AND (priority=P0 OR priority=P1)` - `update_time\>"2020-01-01T00:00:00-05:00"` For `v2beta`: - `organization="organizations/123456789"` - `project="projects/my-project-id"` - `project="projects/123456789"` - `organization="organizations/123456789" AND state=CLOSED` - `project="projects/my-project-id" AND creator.email="tester@example.com"` - `project="projects/my-project-id" AND (priority=P0 OR priority=P1)` * query: 'placeholder-value', * }); * console.log(res.data); @@ -2079,7 +2087,7 @@ export namespace cloudsupport_v2 { */ parent?: string; /** - * An expression used to filter cases. Expressions use the following fields separated by `AND` and specified with `=`: - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. - `state`: Can be `OPEN` or `CLOSED`. - `priority`: Can be `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. You must specify either `organization` or `project`. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `"my search"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time\>"2020-01-01T00:00:00-05:00"`. `update_time` only supports the greater than operator (`\>`). Examples: - `organization="organizations/123456789"` - `project="projects/my-project-id"` - `project="projects/123456789"` - `organization="organizations/123456789" AND state=CLOSED` - `project="projects/my-project-id" AND creator.email="tester@example.com"` - `project="projects/my-project-id" AND (priority=P0 OR priority=P1)` + * An expression used to filter cases. Expressions use the following fields separated by `AND` and specified with `=`: - `state`: Can be `OPEN` or `CLOSED`. - `priority`: Can be `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `"my search"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time\>"2020-01-01T00:00:00-05:00"`. `update_time` only supports the greater than operator (`\>`). If you are using the `v2` version of the API, you must specify the case parent in the `parent` field. If you provide an empty `query`, all cases under the parent resource will be returned. If you are using the `v2beta` version of the API, you must specify the case parent in the `query` field using one of the two fields below, which are only available for `v2beta`. The `parent` field will be ignored. - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. Examples: For `v2`: - `state=CLOSED` - `state=OPEN AND creator.email="tester@example.com"` - `state=OPEN AND (priority=P0 OR priority=P1)` - `update_time\>"2020-01-01T00:00:00-05:00"` For `v2beta`: - `organization="organizations/123456789"` - `project="projects/my-project-id"` - `project="projects/123456789"` - `organization="organizations/123456789" AND state=CLOSED` - `project="projects/my-project-id" AND creator.email="tester@example.com"` - `project="projects/my-project-id" AND (priority=P0 OR priority=P1)` */ query?: string; } diff --git a/src/apis/cloudsupport/v2beta.ts b/src/apis/cloudsupport/v2beta.ts index 14a4c6bd4f9..db81d21f199 100644 --- a/src/apis/cloudsupport/v2beta.ts +++ b/src/apis/cloudsupport/v2beta.ts @@ -391,6 +391,10 @@ export namespace cloudsupport_v2beta { * # gdata.* are outside protos with mising documentation */ fromFileName?: string | null; + /** + * # gdata.* are outside protos with mising documentation + */ + fromFusionId?: string | null; /** * # gdata.* are outside protos with mising documentation */ @@ -399,6 +403,10 @@ export namespace cloudsupport_v2beta { * # gdata.* are outside protos with mising documentation */ fromUrlPath?: string | null; + /** + * # gdata.* are outside protos with mising documentation + */ + fusionIdDetectionMetadata?: string | null; } /** * The request message for the CreateAttachment endpoint. @@ -2001,7 +2009,7 @@ export namespace cloudsupport_v2beta { * pageToken: 'placeholder-value', * // The name of the parent resource to search for cases under. * parent: 'placeholder-value', - * // An expression used to filter cases. Expressions use the following fields separated by `AND` and specified with `=`: - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. - `state`: Can be `OPEN` or `CLOSED`. - `priority`: Can be `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. You must specify either `organization` or `project`. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `"my search"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time\>"2020-01-01T00:00:00-05:00"`. `update_time` only supports the greater than operator (`\>`). Examples: - `organization="organizations/123456789"` - `project="projects/my-project-id"` - `project="projects/123456789"` - `organization="organizations/123456789" AND state=CLOSED` - `project="projects/my-project-id" AND creator.email="tester@example.com"` - `project="projects/my-project-id" AND (priority=P0 OR priority=P1)` + * // An expression used to filter cases. Expressions use the following fields separated by `AND` and specified with `=`: - `state`: Can be `OPEN` or `CLOSED`. - `priority`: Can be `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `"my search"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time\>"2020-01-01T00:00:00-05:00"`. `update_time` only supports the greater than operator (`\>`). If you are using the `v2` version of the API, you must specify the case parent in the `parent` field. If you provide an empty `query`, all cases under the parent resource will be returned. If you are using the `v2beta` version of the API, you must specify the case parent in the `query` field using one of the two fields below, which are only available for `v2beta`. The `parent` field will be ignored. - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. Examples: For `v2`: - `state=CLOSED` - `state=OPEN AND creator.email="tester@example.com"` - `state=OPEN AND (priority=P0 OR priority=P1)` - `update_time\>"2020-01-01T00:00:00-05:00"` For `v2beta`: - `organization="organizations/123456789"` - `project="projects/my-project-id"` - `project="projects/123456789"` - `organization="organizations/123456789" AND state=CLOSED` - `project="projects/my-project-id" AND creator.email="tester@example.com"` - `project="projects/my-project-id" AND (priority=P0 OR priority=P1)` * query: 'placeholder-value', * }); * console.log(res.data); @@ -2341,7 +2349,7 @@ export namespace cloudsupport_v2beta { */ parent?: string; /** - * An expression used to filter cases. Expressions use the following fields separated by `AND` and specified with `=`: - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. - `state`: Can be `OPEN` or `CLOSED`. - `priority`: Can be `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. You must specify either `organization` or `project`. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `"my search"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time\>"2020-01-01T00:00:00-05:00"`. `update_time` only supports the greater than operator (`\>`). Examples: - `organization="organizations/123456789"` - `project="projects/my-project-id"` - `project="projects/123456789"` - `organization="organizations/123456789" AND state=CLOSED` - `project="projects/my-project-id" AND creator.email="tester@example.com"` - `project="projects/my-project-id" AND (priority=P0 OR priority=P1)` + * An expression used to filter cases. Expressions use the following fields separated by `AND` and specified with `=`: - `state`: Can be `OPEN` or `CLOSED`. - `priority`: Can be `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `"my search"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time\>"2020-01-01T00:00:00-05:00"`. `update_time` only supports the greater than operator (`\>`). If you are using the `v2` version of the API, you must specify the case parent in the `parent` field. If you provide an empty `query`, all cases under the parent resource will be returned. If you are using the `v2beta` version of the API, you must specify the case parent in the `query` field using one of the two fields below, which are only available for `v2beta`. The `parent` field will be ignored. - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. Examples: For `v2`: - `state=CLOSED` - `state=OPEN AND creator.email="tester@example.com"` - `state=OPEN AND (priority=P0 OR priority=P1)` - `update_time\>"2020-01-01T00:00:00-05:00"` For `v2beta`: - `organization="organizations/123456789"` - `project="projects/my-project-id"` - `project="projects/123456789"` - `organization="organizations/123456789" AND state=CLOSED` - `project="projects/my-project-id" AND creator.email="tester@example.com"` - `project="projects/my-project-id" AND (priority=P0 OR priority=P1)` */ query?: string; } diff --git a/src/apis/cloudtasks/v2.ts b/src/apis/cloudtasks/v2.ts index 6a4281b445c..5bdd9cf1d05 100644 --- a/src/apis/cloudtasks/v2.ts +++ b/src/apis/cloudtasks/v2.ts @@ -563,7 +563,7 @@ export namespace cloudtasks_v2 { */ export interface Schema$RateLimits { /** - * Output only. The max burst size. Max burst size limits how fast tasks in queue are processed when many tasks are in the queue and the rate is high. This field allows the queue to have a high rate so processing starts shortly after a task is enqueued, but still limits resource usage when many tasks are enqueued in a short period of time. The [token bucket](https://wikipedia.org/wiki/Token_Bucket) algorithm is used to control the rate of task dispatches. Each queue has a token bucket that holds tokens, up to the maximum specified by `max_burst_size`. Each time a task is dispatched, a token is removed from the bucket. Tasks will be dispatched until the queue's bucket runs out of tokens. The bucket will be continuously refilled with new tokens based on max_dispatches_per_second. Cloud Tasks will pick the value of `max_burst_size` based on the value of max_dispatches_per_second. For queues that were created or updated using `queue.yaml/xml`, `max_burst_size` is equal to [bucket_size](https://cloud.google.com/appengine/docs/standard/python/config/queueref#bucket_size). Since `max_burst_size` is output only, if UpdateQueue is called on a queue created by `queue.yaml/xml`, `max_burst_size` will be reset based on the value of max_dispatches_per_second, regardless of whether max_dispatches_per_second is updated. + * Output only. The max burst size. Max burst size limits how fast tasks in queue are processed when many tasks are in the queue and the rate is high. This field allows the queue to have a high rate so processing starts shortly after a task is enqueued, but still limits resource usage when many tasks are enqueued in a short period of time. The [token bucket](https://wikipedia.org/wiki/Token_Bucket) algorithm is used to control the rate of task dispatches. Each queue has a token bucket that holds tokens, up to the maximum specified by `max_burst_size`. Each time a task is dispatched, a token is removed from the bucket. Tasks will be dispatched until the queue's bucket runs out of tokens. The bucket will be continuously refilled with new tokens based on `max_dispatches_per_second`. Cloud Tasks automatically sets an appropriate `max_burst_size` based on the value of `max_dispatches_per_second`. The value is dynamically optimized to ensure queue stability and throughput. It is generally at least equal to `max_dispatches_per_second` but might be higher to accommodate bursts of traffic. For queues that were created or updated using `queue.yaml/xml`, `max_burst_size` is equal to [bucket_size](https://cloud.google.com/appengine/docs/standard/python/config/queueref#bucket_size). Since `max_burst_size` is output only, if UpdateQueue is called on a queue created by `queue.yaml/xml`, `max_burst_size` will be reset based on the value of `max_dispatches_per_second`, regardless of whether `max_dispatches_per_second` is updated. */ maxBurstSize?: number | null; /** @@ -1036,7 +1036,7 @@ export namespace cloudtasks_v2 { } /** - * Lists information about the supported locations for this service. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1184,7 +1184,7 @@ export namespace cloudtasks_v2 { } /** - * Creates or Updates a CMEK config. Updates the Customer Managed Encryption Key assotiated with the Cloud Tasks location (Creates if the key does not already exist). All new tasks created in the location will be encrypted at-rest with the KMS-key provided in the config. + * Creates or Updates a CMEK config. Updates the Customer Managed Encryption Key associated with the Cloud Tasks location (Creates if the key does not already exist). All new tasks created in the location will be encrypted at-rest with the KMS-key provided in the config. * @example * ```js * // Before running the sample: diff --git a/src/apis/cloudtasks/v2beta2.ts b/src/apis/cloudtasks/v2beta2.ts index a7c64aa00f3..93594e09e72 100644 --- a/src/apis/cloudtasks/v2beta2.ts +++ b/src/apis/cloudtasks/v2beta2.ts @@ -541,6 +541,31 @@ export namespace cloudtasks_v2beta2 { */ serviceAccountEmail?: 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; + } /** * PathOverride. Path message defines path override for HTTP targets. */ @@ -1063,9 +1088,13 @@ export namespace cloudtasks_v2beta2 { export class Resource$Projects$Locations { context: APIRequestContext; + operations: Resource$Projects$Locations$Operations; queues: Resource$Projects$Locations$Queues; constructor(context: APIRequestContext) { this.context = context; + this.operations = new Resource$Projects$Locations$Operations( + this.context + ); this.queues = new Resource$Projects$Locations$Queues(this.context); } @@ -1343,7 +1372,7 @@ export namespace cloudtasks_v2beta2 { } /** - * Lists information about the supported locations for this service. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1491,7 +1520,7 @@ export namespace cloudtasks_v2beta2 { } /** - * Creates or Updates a CMEK config. Updates the Customer Managed Encryption Key assotiated with the Cloud Tasks location (Creates if the key does not already exist). All new tasks created in the location will be encrypted at-rest with the KMS-key provided in the config. + * Creates or Updates a CMEK config. Updates the Customer Managed Encryption Key associated with the Cloud Tasks location (Creates if the key does not already exist). All new tasks created in the location will be encrypted at-rest with the KMS-key provided in the config. * @example * ```js * // Before running the sample: @@ -1687,6 +1716,158 @@ export namespace cloudtasks_v2beta2 { requestBody?: Schema$CmekConfig; } + export class Resource$Projects$Locations$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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudtasks.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudtasks = google.cloudtasks('v2beta2'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudtasks.projects.locations.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Operations$Get, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://cloudtasks.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v2beta2/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + 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$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export class Resource$Projects$Locations$Queues { context: APIRequestContext; tasks: Resource$Projects$Locations$Queues$Tasks; diff --git a/src/apis/cloudtasks/v2beta3.ts b/src/apis/cloudtasks/v2beta3.ts index cbd51bbf065..ba71f6a0607 100644 --- a/src/apis/cloudtasks/v2beta3.ts +++ b/src/apis/cloudtasks/v2beta3.ts @@ -1103,7 +1103,7 @@ export namespace cloudtasks_v2beta3 { } /** - * Lists information about the supported locations for this service. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1251,7 +1251,7 @@ export namespace cloudtasks_v2beta3 { } /** - * Creates or Updates a CMEK config. Updates the Customer Managed Encryption Key assotiated with the Cloud Tasks location (Creates if the key does not already exist). All new tasks created in the location will be encrypted at-rest with the KMS-key provided in the config. + * Creates or Updates a CMEK config. Updates the Customer Managed Encryption Key associated with the Cloud Tasks location (Creates if the key does not already exist). All new tasks created in the location will be encrypted at-rest with the KMS-key provided in the config. * @example * ```js * // Before running the sample: diff --git a/src/apis/composer/v1.ts b/src/apis/composer/v1.ts index 972b47ccd0c..7b9468d09cc 100644 --- a/src/apis/composer/v1.ts +++ b/src/apis/composer/v1.ts @@ -2119,6 +2119,7 @@ export namespace composer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -2269,6 +2270,7 @@ export namespace composer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -2415,6 +2417,7 @@ export namespace composer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -2880,6 +2883,7 @@ export namespace composer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -3956,6 +3960,7 @@ export namespace composer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -4098,6 +4103,7 @@ export namespace composer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -4757,6 +4763,7 @@ export namespace composer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -4897,6 +4904,7 @@ export namespace composer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -5260,6 +5268,7 @@ export namespace composer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -5437,6 +5446,7 @@ export namespace composer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -5749,6 +5759,7 @@ export namespace composer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -5890,6 +5901,7 @@ export namespace composer_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * diff --git a/src/apis/composer/v1beta1.ts b/src/apis/composer/v1beta1.ts index a2f8cfdeabf..1977a368c1c 100644 --- a/src/apis/composer/v1beta1.ts +++ b/src/apis/composer/v1beta1.ts @@ -813,6 +813,10 @@ export namespace composer_v1beta1 { * Optional. The list of instance tags applied to all node VMs. Tags are used to identify valid sources or targets for network firewalls. Each tag within the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Cannot be updated. */ tags?: string[] | null; + /** + * Optional. Configures how the environment routes traffic to other services. This field is supported for Cloud Composer environments in versions composer-3-airflow-*.*.*-build.* and newer. + */ + trafficRoutingConfig?: Schema$TrafficRoutingConfig; } /** * This resource represents a long-running operation that is the result of a network API call. @@ -1155,6 +1159,15 @@ export namespace composer_v1beta1 { */ storageMode?: string | null; } + /** + * Configuration for network traffic routing from the Cloud Composer environment to other services. + */ + export interface Schema$TrafficRoutingConfig { + /** + * Optional. Controls how network traffic to Cloud Run functions is routed. + */ + cloudRunFunctionsRouting?: string | null; + } /** * Configuration for resources used by Airflow triggerers. */ @@ -2126,6 +2139,7 @@ export namespace composer_v1beta1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -2276,6 +2290,7 @@ export namespace composer_v1beta1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -2422,6 +2437,7 @@ export namespace composer_v1beta1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -2887,6 +2903,7 @@ export namespace composer_v1beta1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -3960,6 +3977,7 @@ export namespace composer_v1beta1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -4102,6 +4120,7 @@ export namespace composer_v1beta1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -4760,6 +4779,7 @@ export namespace composer_v1beta1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -4900,6 +4920,7 @@ export namespace composer_v1beta1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -5263,6 +5284,7 @@ export namespace composer_v1beta1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -5440,6 +5462,7 @@ export namespace composer_v1beta1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -5752,6 +5775,7 @@ export namespace composer_v1beta1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * @@ -5893,6 +5917,7 @@ export namespace composer_v1beta1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/cloudcomposer', + * 'https://www.googleapis.com/auth/cloudcomposer.readonly', * ], * }); * diff --git a/src/apis/compute/alpha.ts b/src/apis/compute/alpha.ts index b06e8eccd82..60aad9c69fe 100644 --- a/src/apis/compute/alpha.ts +++ b/src/apis/compute/alpha.ts @@ -141,10 +141,12 @@ export namespace compute_alpha { globalVmExtensionPolicies: Resource$Globalvmextensionpolicies; haControllers: Resource$Hacontrollers; healthChecks: Resource$Healthchecks; + hosts: Resource$Hosts; httpHealthChecks: Resource$Httphealthchecks; httpsHealthChecks: Resource$Httpshealthchecks; imageFamilyViews: Resource$Imagefamilyviews; images: Resource$Images; + imageViews: Resource$Imageviews; instanceGroupManagerResizeRequests: Resource$Instancegroupmanagerresizerequests; instanceGroupManagers: Resource$Instancegroupmanagers; instanceGroups: Resource$Instancegroups; @@ -177,6 +179,7 @@ export namespace compute_alpha { packetMirrorings: Resource$Packetmirrorings; previewFeatures: Resource$Previewfeatures; projects: Resource$Projects; + projectViews: Resource$Projectviews; publicAdvertisedPrefixes: Resource$Publicadvertisedprefixes; publicDelegatedPrefixes: Resource$Publicdelegatedprefixes; recoverableSnapshots: Resource$Recoverablesnapshots; @@ -298,10 +301,12 @@ export namespace compute_alpha { ); this.haControllers = new Resource$Hacontrollers(this.context); this.healthChecks = new Resource$Healthchecks(this.context); + this.hosts = new Resource$Hosts(this.context); this.httpHealthChecks = new Resource$Httphealthchecks(this.context); this.httpsHealthChecks = new Resource$Httpshealthchecks(this.context); this.imageFamilyViews = new Resource$Imagefamilyviews(this.context); this.images = new Resource$Images(this.context); + this.imageViews = new Resource$Imageviews(this.context); this.instanceGroupManagerResizeRequests = new Resource$Instancegroupmanagerresizerequests(this.context); this.instanceGroupManagers = new Resource$Instancegroupmanagers( @@ -352,6 +357,7 @@ export namespace compute_alpha { this.packetMirrorings = new Resource$Packetmirrorings(this.context); this.previewFeatures = new Resource$Previewfeatures(this.context); this.projects = new Resource$Projects(this.context); + this.projectViews = new Resource$Projectviews(this.context); this.publicAdvertisedPrefixes = new Resource$Publicadvertisedprefixes( this.context ); @@ -1607,8 +1613,8 @@ export namespace compute_alpha { * Input only. Resource manager tags to be bound to the disk. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & PATCH) when * empty. */ @@ -2209,6 +2215,17 @@ export namespace compute_alpha { scalingSchedules?: { [key: string]: Schema$AutoscalingPolicyScalingSchedule; } | null; + /** + * The number of seconds that autoscaler waits for load stabilization before + * making scale-in decisions. This is referred to as the + * [stabilization period](/compute/docs/autoscaler#stabilization_period). + * This might appear as a delay in scaling in but it is an important mechanism + * for your application to not have fluctuating size due to short term load + * fluctuations. + * + * The default stabilization period is 600 seconds. + */ + stabilizationPeriodSec?: number | null; } /** * CPU utilization policy. @@ -3167,7 +3184,7 @@ export namespace compute_alpha { * * This field is applicable to either: * - * - A regional backend service with the service_protocol set to HTTP, + * - A regional backend service with the service protocol set to HTTP, * HTTPS, HTTP2 or H2C, and load_balancing_scheme set to * INTERNAL_MANAGED. * - A global backend service with the @@ -3420,7 +3437,7 @@ export namespace compute_alpha { * metrics to use for computing the weights are specified via thecustomMetrics field. * * This field is applicable to either: - * - A regional backend service with the service_protocol set to HTTP, + * - A regional backend service with the service protocol set to HTTP, * HTTPS, HTTP2 or H2C, and load_balancing_scheme set to * INTERNAL_MANAGED. * - A global backend service with the @@ -3533,7 +3550,7 @@ export namespace compute_alpha { * - A global backend service with the loadBalancingScheme set to * INTERNAL_SELF_MANAGED or EXTERNAL_MANAGED. * - A regional backend - * service with the serviceProtocol set to HTTP, HTTPS, HTTP2 or H2C, and + * service with the service protocol set to HTTP, HTTPS, HTTP2 or H2C, and * loadBalancingScheme set to INTERNAL_MANAGED or EXTERNAL_MANAGED. Not * supported for Serverless NEGs. * @@ -3666,19 +3683,6 @@ export namespace compute_alpha { * Output only. [Output Only] List of resources referencing given backend service. */ usedBy?: Schema$BackendServiceUsedBy[]; - /** - * The network scope of the backends that can be added to the backend - * service. This field can be either GLOBAL_VPC_NETWORK orREGIONAL_VPC_NETWORK. - * - * A backend service with the VPC scope set to GLOBAL_VPC_NETWORK - * is only allowed to have backends in global VPC networks. - * - * When the VPC scope is set to REGIONAL_VPC_NETWORK the backend - * service is only allowed to have backends in regional networks in the same - * scope as the backend service. - * Note: if not specified then GLOBAL_VPC_NETWORK will be used. - */ - vpcNetworkScope?: string | null; } /** * Contains a list of BackendServicesScopedList. @@ -4039,7 +4043,7 @@ export namespace compute_alpha { */ export interface Schema$BackendServiceFailoverPolicy { /** - * This can be set to true only if the protocol isTCP. + * This can be set to true if the protocol isTCP, UDP, or UNSPECIFIED. * * The default is false. */ @@ -4988,7 +4992,8 @@ export namespace compute_alpha { */ instantSnapshotGroupParameters?: Schema$InstantSnapshotGroupParameters; /** - * The parameters for the snapshot group. + * The parameters for the snapshot group. The usage of snapshot group feature + * is restricted. */ snapshotGroupParameters?: Schema$SnapshotGroupParameters; /** @@ -5240,55 +5245,61 @@ export namespace compute_alpha { /** * Bypass the cache when the specified request headers are matched by name, * e.g. Pragma or Authorization headers. Values are case-insensitive. Up to 5 - * header names can be specified. The cache is bypassed for all - * cachePolicy.cacheMode settings. + * header names can be specified. The cache is bypassed for all `cacheMode` + * values. */ cacheBypassRequestHeaderNames?: string[] | null; /** - * The CacheKeyPolicy for this CachePolicy. + * The cache key configuration. If not specified, the default behavior depends + * on the backend type: for Backend Services, the complete request URI is + * used; for Backend Buckets, the request URI is used without the protocol or + * host, and only query parameters known to Cloud Storage are included. */ cacheKeyPolicy?: Schema$CachePolicyCacheKeyPolicy; /** - * Specifies the cache setting for all responses from this route. - * If not specified, the default value is CACHE_ALL_STATIC. + * Specifies the cache setting for all responses from this route. If not + * specified, Cloud CDN uses `CACHE_ALL_STATIC` mode. */ cacheMode?: string | null; /** - * Specifies a separate client (e.g. browser client) maximum TTL. This is - * used to clamp the max-age (or Expires) value sent to the client. With - * FORCE_CACHE_ALL, the lesser of client_ttl and default_ttl is used for the - * response max-age directive, along with a "public" directive. For - * cacheable content in CACHE_ALL_STATIC mode, client_ttl clamps the max-age - * from the origin (if specified), or else sets the response max-age - * directive to the lesser of the client_ttl and default_ttl, and also - * ensures a "public" cache-control directive is present. - * If a client TTL is not specified, a default value (1 hour) will be used. - * The maximum allowed value is 31,622,400s (1 year). + * Specifies a separate client (e.g. browser client) maximum TTL for cached + * content. This is used to clamp the max-age (or Expires) value sent to the + * client. With `FORCE_CACHE_ALL`, the lesser of `clientTtl` and `defaultTtl` + * is used for the response max-age directive, along with a "public" + * directive. For cacheable content in `CACHE_ALL_STATIC` mode, `clientTtl` + * clamps the max-age from the origin (if specified), or else sets the + * response max-age directive to the lesser of the `clientTtl` and + * `defaultTtl`, and also ensures a "public" cache-control directive is + * present. The maximum allowed value is 31,622,400s (1 year). If not + * specified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` mode. + * Cannot exceed `maxTtl`. Cannot be specified when `cacheMode` is + * `USE_ORIGIN_HEADERS`. */ clientTtl?: Schema$Duration; /** - * Specifies the default TTL for cached content served by this origin for - * responses that do not have an existing valid TTL (max-age or s-maxage). - * Setting a TTL of "0" means "always revalidate". - * The value of defaultTTL cannot be set to a value greater than that of - * maxTTL. - * When the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL - * will overwrite the TTL set in all responses. The maximum allowed value is - * 31,622,400s (1 year). Infrequently accessed objects may be evicted from - * the cache before the defined TTL. + * Specifies the default TTL for cached content for responses that do not have + * an existing valid TTL (max-age or s-maxage). Setting a TTL of "0" means + * "always revalidate". The value of `defaultTtl` cannot be set to a value + * greater than that of `maxTtl`. When the `cacheMode` is set to + * `FORCE_CACHE_ALL`, the `defaultTtl` will overwrite the TTL set in all + * responses. The maximum allowed value is 31,622,400s (1 year). Infrequently + * accessed objects may be evicted from the cache before the defined TTL. If + * not specified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` and + * `FORCE_CACHE_ALL` modes. Cannot be specified when `cacheMode` is + * `USE_ORIGIN_HEADERS`. */ defaultTtl?: Schema$Duration; /** - * Specifies the maximum allowed TTL for cached content served by this - * origin. - * Cache directives that attempt to set a max-age or s-maxage higher than - * this, or an Expires header more than maxTTL seconds in the future will - * be capped at the value of maxTTL, as if it were the value of an - * s-maxage Cache-Control directive. - * Headers sent to the client will not be modified. - * Setting a TTL of "0" means "always revalidate". - * The maximum allowed value is 31,622,400s (1 year). Infrequently accessed - * objects may be evicted from the cache before the defined TTL. + * Specifies the maximum allowed TTL for cached content. Cache directives that + * attempt to set a max-age or s-maxage higher than this, or an Expires header + * more than `maxTtl` seconds in the future will be capped at the value of + * `maxTtl`, as if it were the value of an s-maxage Cache-Control directive. + * Headers sent to the client will not be modified. Setting a TTL of "0" means + * "always revalidate". The maximum allowed value is 31,622,400s (1 year). + * Infrequently accessed objects may be evicted from the cache before the + * defined TTL. If not specified, Cloud CDN uses 86400s (1 day) for + * `CACHE_ALL_STATIC` mode. Can be specified only for `CACHE_ALL_STATIC` cache + * mode. */ maxTtl?: Schema$Duration; /** @@ -5296,35 +5307,36 @@ export namespace compute_alpha { * to apply fine-grained caching for common errors or redirects. * This can reduce the load on your origin and improve end-user * experience by reducing response latency. - * When the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS, - * negative caching applies to responses with the specified response code - * that lack any Cache-Control, Expires, or Pragma: no-cache directives. - * When the cache mode is set to FORCE_CACHE_ALL, negative caching applies - * to all responses with the specified response code, and override any - * caching headers. - * By default, Cloud CDN will apply the following default TTLs to these - * status codes: - * HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m - * HTTP 404 (Not Found), 410 (Gone), - * 451 (Unavailable For Legal Reasons): 120s - * HTTP 405 (Method Not Found), 501 (Not Implemented): 60s. - * These defaults can be overridden in negative_caching_policy. + * When the `cacheMode` is set to `CACHE_ALL_STATIC` or + * `USE_ORIGIN_HEADERS`, negative caching applies to responses with + * the specified response code that lack any Cache-Control, Expires, or + * Pragma: no-cache directives. When the `cacheMode` is set to + * `FORCE_CACHE_ALL`, negative caching applies to all responses + * with the specified response code, and overrides any caching headers. By + * default, Cloud CDN applies the following TTLs to these HTTP status codes: + * + * * 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m + * * 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s + * * 405 (Method Not Found), 501 (Not Implemented): 60s + * + * These defaults can be overridden in `negativeCachingPolicy`. + * If not specified, Cloud CDN applies negative caching by default. */ negativeCaching?: boolean | null; /** * Sets a cache TTL for the specified HTTP status code. - * negative_caching must be enabled to configure negative_caching_policy. - * Omitting the policy and leaving negative_caching enabled will use - * Cloud CDN's default cache TTLs. - * Note that when specifying an explicit negative_caching_policy, you - * should take care to specify a cache TTL for all response codes - * that you wish to cache. Cloud CDN will not apply any default - * negative caching when a policy exists. + * `negativeCaching` must be enabled to configure `negativeCachingPolicy`. + * Omitting the policy and leaving `negativeCaching` enabled will use Cloud + * CDN's default cache TTLs. Note that when specifying an explicit + * `negativeCachingPolicy`, you should take care to specify a cache TTL for + * all response codes that you wish to cache. Cloud CDN will not apply any + * default negative caching when a policy exists. */ negativeCachingPolicy?: Schema$CachePolicyNegativeCachingPolicy[]; /** * If true then Cloud CDN will combine multiple concurrent cache fill - * requests into a small number of requests to the origin. + * requests into a small number of requests to the origin. If not specified, + * Cloud CDN applies request coalescing by default. */ requestCoalescing?: boolean | null; /** @@ -5349,15 +5361,15 @@ export namespace compute_alpha { export interface Schema$CachePolicyCacheKeyPolicy { /** * Names of query string parameters to exclude in cache keys. All other - * parameters will be included. Either specify excluded_query_parameters or - * included_query_parameters, not both. '&' and '=' will be percent encoded - * and not treated as delimiters. + * parameters will be included. Either specify `excludedQueryParameters` + * or `includedQueryParameters`, not both. '&' and '=' will be percent + * encoded and not treated as delimiters. * * Note: This field applies to routes that use backend services. Attempting * to set it on a route that points exclusively to Backend Buckets will * result in a configuration error. For routes that point to a Backend - * Bucket, use includedQueryParameters to define which parameters should - * be a part of the cache key. + * Bucket, use `includedQueryParameters` to define which parameters should + * be part of the cache key. */ excludedQueryParameters?: string[] | null; /** @@ -5377,9 +5389,9 @@ export namespace compute_alpha { includedHeaderNames?: string[] | null; /** * Names of query string parameters to include in cache keys. All other - * parameters will be excluded. Either specify included_query_parameters or - * excluded_query_parameters, not both. '&' and '=' will be percent encoded - * and not treated as delimiters. + * parameters will be excluded. Either specify `includedQueryParameters` + * or `excludedQueryParameters`, not both. '&' and '=' will be percent + * encoded and not treated as delimiters. */ includedQueryParameters?: string[] | null; /** @@ -5404,15 +5416,15 @@ export namespace compute_alpha { includeProtocol?: boolean | null; /** * If true, include query string parameters in the cache key according to - * included_query_parameters and excluded_query_parameters. If neither is - * set, the entire query string will be included. If false, the query string - * will be excluded from the cache key entirely. + * `includedQueryParameters` and `excludedQueryParameters`. If neither + * is set, the entire query string will be included. If false, the query + * string will be excluded from the cache key entirely. * * Note: This field applies to routes that use backend services. Attempting * to set it on a route that points exclusively to Backend Buckets will - * result in a configuration error. For routes that point to a Backend - * Bucket, use includedQueryParameters to define which parameters should - * be a part of the cache key. + * result in a configuration error. For routes that point to a Backend + * Bucket, use `includedQueryParameters` to define which parameters should + * be part of the cache key. */ includeQueryString?: boolean | null; } @@ -5515,14 +5527,16 @@ export namespace compute_alpha { */ instanceProperties?: Schema$CapacityAdviceRequestInstanceProperties; /** - * Size of requested capacity. + * The number of VM instances to request. */ size?: number | null; } + /** + * Distribution policy. + */ export interface Schema$CapacityAdviceRequestDistributionPolicy { /** - * The distribution shape to which the group converges. - * You can only specify the following values: ANY,ANY_SINGLE_ZONE,BALANCED. + * Target distribution shape. You can specify the following values:ANY, ANY_SINGLE_ZONE, or BALANCED. */ targetShape?: string | null; /** @@ -5530,6 +5544,9 @@ export namespace compute_alpha { */ zones?: Schema$CapacityAdviceRequestDistributionPolicyZoneConfiguration[]; } + /** + * Zone configuration for the distribution policy. + */ export interface Schema$CapacityAdviceRequestDistributionPolicyZoneConfiguration { /** * The URL of the zone. It can be a @@ -5543,11 +5560,11 @@ export namespace compute_alpha { zone?: string | null; } /** - * Specification of alternative, flexible instance subsets. + * Specification of alternative, flexible instance configurations. */ export interface Schema$CapacityAdviceRequestInstanceFlexibilityPolicy { /** - * Named instance selections configure properties. + * Named instance selections to configure properties. * The key is an arbitrary, unique RFC1035 string that identifies the * instance selection. */ @@ -5561,15 +5578,39 @@ export namespace compute_alpha { * Machine specification. */ export interface Schema$CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelection { + /** + * Local SSDs. + */ + disks?: Schema$CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelectionAttachedDisk[]; + /** + * Accelerators configuration. + */ + guestAccelerators?: Schema$AcceleratorConfig[]; /** * Full machine-type names, e.g. "n1-standard-16". */ machineTypes?: string[] | null; } /** - * Instance provisining properties. + * Attached disk configuration. + */ + export interface Schema$CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelectionAttachedDisk { + /** + * Specifies the type of the disk. + * This field must be set to SCRATCH. + */ + type?: string | null; + } + /** + * Instance provisioning properties. */ export interface Schema$CapacityAdviceRequestInstanceProperties { + /** + * Input only. Specifies the topology required to create a partition for + * VMs that have interconnected GPUs or TPUs. + * Example values: 2x2 for ct5l-hightpu-4t. + */ + acceleratorTopology?: string | null; /** * Specifies the scheduling options. */ @@ -5585,32 +5626,41 @@ export namespace compute_alpha { */ maxRunDuration?: string | null; /** - * Specifies the provisioning model of the instance. + * Specifies the provisioning model. */ provisioningModel?: string | null; } /** - * A response contains multiple scoring recommendations. + * A response contains scoring recommendations. */ export interface Schema$CapacityAdviceResponse { /** * Initially the API will provide one recommendation which balances the - * individual scores according to service provider's preference. + * individual scores according to the service provider's preference. */ recommendations?: Schema$CapacityAdviceResponseRecommendation[]; } + /** + * Recommendation. + */ export interface Schema$CapacityAdviceResponseRecommendation { + /** + * Scores for the recommendation. + */ scores?: Schema$CapacityAdviceResponseRecommendationScores; + /** + * Shards represent blocks of uniform capacity in recommendations. + */ shards?: Schema$CapacityAdviceResponseRecommendationShard[]; } /** - * The Scores message groups information about a shard of capacity. + * Groups information about a shard of capacity. */ export interface Schema$CapacityAdviceResponseRecommendationScores { /** * The estimated run time of the majority of Spot VMs in the request * before preemption. The estimate is best-effort only. It is based on - * history data and current conditions. + * historical data and current conditions. */ estimatedUptime?: string | null; /** @@ -5635,11 +5685,13 @@ export namespace compute_alpha { } /** * Shards represent blocks of uniform capacity in recommendations. - * Each shard is for a single zone, single instance selection, and - * a single machine shape. Each shard defines a size expressed as the - * number of VMs. + * Each shard is for a single zone and a single machine shape. Each shard + * defines a size expressed as the number of VMs. */ export interface Schema$CapacityAdviceResponseRecommendationShard { + /** + * The number of instances. + */ instanceCount?: number | null; /** * The machine type corresponds to the instance selection in the request. @@ -5647,16 +5699,93 @@ export namespace compute_alpha { machineType?: string | null; /** * The provisioning model that you want to view recommendations for. - * Set to: SPOT. + */ + provisioningModel?: string | null; + /** + * Output only. The zone name for this shard. + */ + zone?: string | null; + } + /** + * A request to get the capacity history. + */ + export interface Schema$CapacityHistoryRequest { + /** + * Instance properties for this request. + */ + instanceProperties?: Schema$CapacityHistoryRequestInstanceProperties; + /** + * Location policy for this request. + */ + locationPolicy?: Schema$CapacityHistoryRequestLocationPolicy; + /** + * List of history types to get capacity history for. + */ + types?: string[] | null; + } + /** + * Instance properties for this request. + */ + export interface Schema$CapacityHistoryRequestInstanceProperties { + /** + * The machine type for the VM, such as `n2-standard-4`. + */ + machineType?: string | null; + /** + * Specifies the scheduling options. + */ + scheduling?: Schema$CapacityHistoryRequestInstancePropertiesScheduling; + } + /** + * Scheduling options. + */ + export interface Schema$CapacityHistoryRequestInstancePropertiesScheduling { + /** + * The provisioning model to get capacity history for. + * This field must be set to SPOT. * * For more information, see * Compute Engine instances provisioning models. */ provisioningModel?: string | null; + } + /** + * Location policy for this request. + */ + export interface Schema$CapacityHistoryRequestLocationPolicy { /** - * Output only. The zone name for this shard. + * The region or zone to get capacity history for. + * + * It can be a partial or full URL. For example, the following are valid + * values: + * + * + * - https://www.googleapis.com/compute/v1/projects/project/zones/zone + * - projects/project/zones/zone + * - zones/zone + * + * + * + * This field is optional. */ - zone?: string | null; + location?: string | null; + } + /** + * Contains the capacity history. + */ + export interface Schema$CapacityHistoryResponse { + location?: string | null; + machineType?: string | null; + preemptionHistory?: Schema$CapacityHistoryResponsePreemptionRecord[]; + priceHistory?: Schema$CapacityHistoryResponsePriceRecord[]; + } + export interface Schema$CapacityHistoryResponsePreemptionRecord { + interval?: Schema$Interval; + preemptionRate?: number | null; + } + export interface Schema$CapacityHistoryResponsePriceRecord { + interval?: Schema$Interval; + listPrice?: Schema$Money; } /** * [Deprecated] gRPC channel credentials to access the SDS server. @@ -5842,6 +5971,11 @@ export namespace compute_alpha { * cannot be a dash. */ name?: string | null; + /** + * Input only. Additional params passed with the request, but not persisted + * as part of resource payload. + */ + params?: Schema$CommitmentParams; /** * The minimum time duration that you commit to purchasing resources. * The plan that you choose determines the preset term length of the @@ -5914,7 +6048,7 @@ export namespace compute_alpha { * resource types. * * The type must be one of the following:ACCELERATOR_OPTIMIZED, ACCELERATOR_OPTIMIZED_A3,ACCELERATOR_OPTIMIZED_A3_MEGA,COMPUTE_OPTIMIZED, COMPUTE_OPTIMIZED_C2D, - * COMPUTE_OPTIMIZED_C3, COMPUTE_OPTIMIZED_C3D,COMPUTE_OPTIMIZED_H3, GENERAL_PURPOSE,GENERAL_PURPOSE_C4, GENERAL_PURPOSE_E2,GENERAL_PURPOSE_N2, GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED, GRAPHICS_OPTIMIZED_G4,MEMORY_OPTIMIZED, MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3. For + * COMPUTE_OPTIMIZED_C3, COMPUTE_OPTIMIZED_C3D,COMPUTE_OPTIMIZED_H3, GENERAL_PURPOSE,GENERAL_PURPOSE_C4, GENERAL_PURPOSE_E2,GENERAL_PURPOSE_N2, GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED, GRAPHICS_OPTIMIZED_G4,GRAPHICS_OPTIMIZED_G4_VGPU,MEMORY_OPTIMIZED, MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3. For * example, type MEMORY_OPTIMIZED specifies a commitment that * applies only to eligible resources of memory optimized M1 and M2 machine * series. Type GENERAL_PURPOSE specifies a commitment that @@ -5999,6 +6133,21 @@ export namespace compute_alpha { message?: string; } | null; } + /** + * Additional commitment params. + */ + export interface Schema$CommitmentParams { + /** + * Input only. Resource manager tags to be bound to the commitment. Tag keys and + * values have the same definition as resource + * manager tags. Keys and values can be either in numeric format, + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * `{tag_value_short_name\}`. The field is ignored (both PUT & + * PATCH) when empty. + */ + resourceManagerTags?: {[key: string]: string} | null; + } /** * [Output Only] Contains output only fields. */ @@ -7518,8 +7667,8 @@ export namespace compute_alpha { * Input only. Resource manager tags to be bound to the disk. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -7880,6 +8029,23 @@ export namespace compute_alpha { message?: string; } | null; } + export interface Schema$DiskUpdateKmsKeyRequest { + /** + * Optional. The new KMS key to replace the current one on the disk. If empty, the disk + * will be re-encrypted using the primary version of the disk's current KMS + * key. + * + * The KMS key can be provided in the following formats: + * + * + * - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key + * + * + * Where project is the project ID or + * project number. + */ + kmsKeyName?: string | null; + } /** * A set of Display Device options */ @@ -7898,6 +8064,11 @@ export namespace compute_alpha { /** * Zones where the regional managed instance group will create and manage * its instances. + * By default, a regional MIG doesn't automatically select an AI zone to create + * instances, even if an AI zone is available in the specified region. To + * create instances in an AI zone in the selected region, you must explicitly + * specify it in the distribution policy together with the other preferred + * zones. */ zones?: Schema$DistributionPolicyZoneConfiguration[]; } @@ -8642,7 +8813,8 @@ export namespace compute_alpha { */ policySource?: string | null; /** - * The type of the firewall policy. This field can be eitherVPC_POLICY or RDMA_ROCE_POLICY. + * The type of the firewall policy. This field can be one of + * VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY. * * Note: if not specified then VPC_POLICY will be used. */ @@ -9131,8 +9303,7 @@ export namespace compute_alpha { */ export interface Schema$FixedOrPercent { /** - * Output only. [Output Only] Absolute value of VM instances calculated based on the - * specific mode. + * Output only. Absolute value of VM instances calculated based on the specific mode. * * * @@ -9848,6 +10019,11 @@ export namespace compute_alpha { * reservations name format will be -date-####. */ namePrefix?: string | null; + /** + * Input only. Additional params passed with the request, but not persisted + * as part of resource payload. + */ + params?: Schema$FutureReservationParams; /** * Planning state before being submitted for evaluation */ @@ -9927,6 +10103,21 @@ export namespace compute_alpha { */ previousCommitmentTerms?: string | null; } + /** + * Additional future reservation params. + */ + export interface Schema$FutureReservationParams { + /** + * Input only. Resource manager tags to be bound to the future reservation. Tag keys and + * values have the same definition as resource + * manager tags. Keys and values can be either in numeric format, + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * `{tag_value_short_name\}`. The field is ignored (both PUT & + * PATCH) when empty. + */ + resourceManagerTags?: {[key: string]: string} | null; + } /** * Contains a list of future reservations. */ @@ -10338,13 +10529,13 @@ export namespace compute_alpha { } export interface Schema$GetVersionOperationMetadataSbomInfo { /** - * SBOM versions currently applied to the resource. The key is the component - * name and the value is the version. + * A mapping of components to their currently-applied versions or other + * appropriate identifiers. */ currentComponentVersions?: {[key: string]: string} | null; /** - * SBOM versions scheduled for the next maintenance. The key is the - * component name and the value is the version. + * A mapping of components to their target versions or other appropriate + * identifiers. */ targetComponentVersions?: {[key: string]: string} | null; } @@ -10659,12 +10850,14 @@ export namespace compute_alpha { * methods. * * A conflict occurs in the following cases: + * * * `insert` method: If the zonal policy already exists when the insert * happens. * * `update` method: If the zonal policy was modified by a zonal API call * outside of this rollout. * * Possible values are the following: + * * * `""` (empty string): If a conflict occurs, the local value is not * overwritten. This is the default behavior. * * `"overwrite"`: If a conflict occurs, the local value is overwritten @@ -10678,7 +10871,10 @@ export namespace compute_alpha { */ name?: string | null; /** - * Optional. Predefined rollout plan. + * Optional. Specifies the predefined rollout plan for the policy. Valid values + * are `SLOW_ROLLOUT` and `FAST_ROLLOUT`. The recommended value is + * `SLOW_ROLLOUT` for progressive rollout. For more information, see Rollout + * plans for global policies. */ predefinedRolloutPlan?: string | null; /** @@ -10709,6 +10905,15 @@ export namespace compute_alpha { previousRollout?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata; } export interface Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata { + /** + * Output only. [Output Only] The rollout status for each location. The list of the + * locations is the same as the list of locations in the rollout plan. + */ + locationRolloutStatus?: { + [ + key: string + ]: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus; + } | null; /** * Output only. [Output Only] The name of the rollout. * Ex. projects//locations/global/rollouts/. @@ -10725,6 +10930,12 @@ export namespace compute_alpha { */ state?: string | null; } + export interface Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus { + /** + * Output only. [Output Only] The state of the location rollout. + */ + state?: string | null; + } /** * Maintenance Info for ReservationBlocks. */ @@ -10956,6 +11167,7 @@ export namespace compute_alpha { * - TDX_CAPABLE * - IDPF * - SNP_SVSM_CAPABLE + * - CCA_CAPABLE * * * For more information, see @@ -11343,7 +11555,6 @@ export namespace compute_alpha { * Instance could be scheduled. * This message should be an exact copy of the Instances representation * of NodeAffinity. - * LINT.IfChange(HaControllerNodeAffinityMixer) */ export interface Schema$HaControllerZoneConfigurationNodeAffinity { /** @@ -11363,7 +11574,6 @@ export namespace compute_alpha { * Specifies the reservations that this instance can consume from. * This message should be an exact copy of the Instances representation * of AllocationAffinity. - * LINT.IfChange(HaControllerAllocationAffinityMixer) */ export interface Schema$HaControllerZoneConfigurationReservationAffinity { /** @@ -12353,6 +12563,77 @@ export namespace compute_alpha { */ url?: string | null; } + /** + * Represents a host resource. + */ + export interface Schema$Host { + /** + * Output only. All aliases for this resource. + * e.g. + * projects/123/zones/us-centra1-a/reservation/r1/reservationBlock/b1/hosts/h1 + */ + aliasLinks?: string[] | null; + /** + * Output only. The creation timestamp, formatted asRFC3339 text. + */ + creationTimestamp?: string | null; + /** + * An optional description of this resource. + */ + description?: string | null; + /** + * Output only. The unique identifier for this resource. This identifier is + * defined by the server. + */ + id?: string | null; + /** + * Output only. The type of resource. Alwayscompute#host for hosts. + */ + kind?: string | null; + /** + * Output only. The name of the host. + */ + name?: string | null; + /** + * Output only. The self link of the host. + */ + selfLink?: string | null; + /** + * Output only. The self link with id of the host. + */ + selfLinkWithId?: string | null; + /** + * Output only. The state of the host. + */ + state?: string | null; + /** + * Output only. The status of the host + */ + status?: Schema$HostStatus; + /** + * Output only. The zone in which the host resides. + */ + zone?: string | null; + } + export interface Schema$HostPhysicalTopology { + /** + * The unique identifier of the capacity block within the cluster. + */ + block?: string | null; + /** + * The cluster name of the reservation sub-block. + */ + cluster?: string | null; + /** + * The unique identifier of the capacity host within the capacity sub-block. + */ + host?: string | null; + /** + * The unique identifier of the capacity sub-block within the capacity + * block. + */ + subBlock?: string | null; + } /** * UrlMaps * A host-matching rule for a URL. If matched, will use the namedPathMatcher to select the BackendService. @@ -12381,6 +12662,63 @@ export namespace compute_alpha { */ pathMatcher?: string | null; } + export interface Schema$HostsGetVersionRequest { + /** + * The SBOM selection to return. Duplicate values in the list will be ignored. + */ + sbomSelections?: string[] | null; + } + export interface Schema$HostsListResponse { + etag?: string | null; + /** + * The unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of host resources. + */ + items?: Schema$Host[]; + /** + * The type of resource. Always compute#host for a list of hosts. + */ + kind?: string | null; + /** + * This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * The server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Unreachable resources. + * end_interface: MixerListResponseWithEtagBuilder + */ + unreachables?: string[] | null; + /** + * An informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + export interface Schema$HostStatus { + /** + * Output only. The physical topology of the reservation sub-block, if + * present + */ + physicalTopology?: Schema$HostPhysicalTopology; + /** + * Output only. The URIs of the instances currently running on this host. + */ + runningInstances?: string[] | null; + } export interface Schema$HTTP2HealthCheck { /** * The value of the host header in the HTTP/2 health check request. If left @@ -13031,8 +13369,10 @@ export namespace compute_alpha { } export interface Schema$HttpRouteAction { /** - * Cache policy for this URL Map’s route. Available only for Global - * EXTERNAL_MANAGED load balancer schemes. + * Specifies the cache policy configuration for matched traffic. Available + * only for Global `EXTERNAL_MANAGED` load balancer schemes. At least one + * property must be specified. This policy cannot be specified if any target + * backend has Identity-Aware Proxy enabled. */ cachePolicy?: Schema$CachePolicy; /** @@ -13060,6 +13400,13 @@ export namespace compute_alpha { * balancing: Routing and traffic management features. */ faultInjectionPolicy?: Schema$HttpFaultInjection; + /** + * Image optimization policy for this URL Map's route. Available only for + * Global EXTERNAL_MANAGED load balancer schemes. + * Either Cloud CDN must be enabled on the backend service or backend bucket + * serving the route, or cache policy must be configured on the same route + */ + imageOptimizationPolicy?: Schema$ImageOptimizationPolicy; /** * Specifies the maximum duration (timeout) for streams on the selected route. * Unlike the timeout field where the timeout duration starts @@ -13932,6 +14279,20 @@ export namespace compute_alpha { message?: string; } | null; } + /** + * The configuration for Cloud CDN's image optimization feature. This feature + * dynamically processes and delivers images from the network edge. + * Image Optimization is only available for Global External Application Load + * Balancers. + * Either Cloud CDN must be enabled on the backend service or backend bucket + * serving the route, or cache policy must be configured on the same route. + */ + export interface Schema$ImageOptimizationPolicy { + /** + * Specifies whether to interpret query parameters for image optimization. + */ + queryParameterInterpretation?: string | null; + } /** * Additional image params. */ @@ -13940,13 +14301,51 @@ export namespace compute_alpha { * Input only. Resource manager tags to be bound to the image. Tag keys and values have * the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ resourceManagerTags?: {[key: string]: string} | null; } + /** + * Represents a read-only view of a global Image resource. + */ + export interface Schema$ImageView { + image?: Schema$Image; + } + /** + * Response message for ImageViewsService.List + */ + export interface Schema$ImageViewsListResponse { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of Image resources. + */ + items?: Schema$ImageView[]; + kind?: string | null; + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * Initial State for shielded instance, * these are public keys which are safe to store in public @@ -14622,12 +15021,12 @@ export namespace compute_alpha { */ baseInstanceName?: string | null; /** - * Output only. [Output Only] The creation timestamp for this managed instance group inRFC3339 + * Output only. The creation timestamp for this managed instance group inRFC3339 * text format. */ creationTimestamp?: string | null; /** - * Output only. [Output Only] The list of instance actions and the number of instances + * Output only. The list of instance actions and the number of instances * in this managed instance group that are scheduled for each of those * actions. */ @@ -14656,7 +15055,7 @@ export namespace compute_alpha { */ fingerprint?: string | null; /** - * Output only. [Output Only] A unique identifier for this resource type. The server + * Output only. A unique identifier for this resource type. The server * generates this identifier. */ id?: string | null; @@ -14668,7 +15067,7 @@ export namespace compute_alpha { */ instanceFlexibilityPolicy?: Schema$InstanceGroupManagerInstanceFlexibilityPolicy; /** - * Output only. [Output Only] The URL of the Instance Group resource. + * Output only. The URL of the Instance Group resource. */ instanceGroup?: string | null; /** @@ -14683,7 +15082,7 @@ export namespace compute_alpha { */ instanceTemplate?: string | null; /** - * Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManager for managed instance groups. + * Output only. The resource type, which is alwayscompute#instanceGroupManager for managed instance groups. */ kind?: string | null; /** @@ -14720,20 +15119,20 @@ export namespace compute_alpha { */ resourcePolicies?: Schema$InstanceGroupManagerResourcePolicies; /** - * Output only. [Output Only] Reserved for future use. + * Output only. Reserved for future use. */ satisfiesPzi?: boolean | null; /** - * Output only. [Output Only] Reserved for future use. + * Output only. Reserved for future use. */ satisfiesPzs?: boolean | null; /** - * Output only. [Output Only] The URL for this managed instance group. The server defines + * Output only. The URL for this managed instance group. The server defines * this URL. */ selfLink?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource with the resource id. + * Output only. Server-defined URL for this resource with the resource id. */ selfLinkWithId?: string | null; /** @@ -14753,7 +15152,7 @@ export namespace compute_alpha { */ statefulPolicy?: Schema$StatefulPolicy; /** - * Output only. [Output Only] The status of this managed instance group. + * Output only. The status of this managed instance group. */ status?: Schema$InstanceGroupManagerStatus; /** @@ -14816,25 +15215,25 @@ export namespace compute_alpha { */ versions?: Schema$InstanceGroupManagerVersion[]; /** - * Output only. [Output Only] The URL of azone + * Output only. The URL of azone * where the managed instance group is located (for zonal resources). */ zone?: string | null; } export interface Schema$InstanceGroupManagerActionsSummary { /** - * Output only. [Output Only] The total number of instances in the managed instance group + * Output only. The total number of instances in the managed instance group * that are scheduled to be abandoned. Abandoning an instance removes it * from the managed instance group without deleting it. */ abandoning?: number | null; /** - * [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be adopted or are currently being adopted. */ adopting?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be created or are currently being created. If the group * fails to create any of these instances, it tries again until it creates * the instance successfully. @@ -14844,36 +15243,36 @@ export namespace compute_alpha { */ creating?: number | null; /** - * Output only. [Output Only] The number of instances that the managed instance group + * Output only. The number of instances that the managed instance group * will attempt to create atomically, in a batch mode. If the desired count * of instances can not be created, entire batch will be deleted and the * group will decrease its targetSize value accordingly. */ creatingAtomically?: number | null; /** - * Output only. [Output Only] The number of instances that the managed instance group + * Output only. The number of instances that the managed instance group * will attempt to create. The group attempts to create each instance * only once. If the group fails to create any of these instances, it * decreases the group's targetSize value accordingly. */ creatingWithoutRetries?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be deleted or are currently being deleted. */ deleting?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are running and have no scheduled actions. */ none?: number | null; /** - * Output only. [Output Only] The number of instances that the managed instance group + * Output only. The number of instances that the managed instance group * is currently queuing. */ queuing?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be recreated or are currently being being recreated. * Recreating an instance deletes the existing root persistent disk * and creates a new disk from the image that is defined in the @@ -14881,44 +15280,44 @@ export namespace compute_alpha { */ recreating?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are being reconfigured with properties that do not require a restart * or a recreate action. For example, setting or removing target * pools for the instance. */ refreshing?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be restarted or are currently being restarted. */ restarting?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be restarted or are currently being restarted. */ restartingInPlace?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be resumed or are currently being resumed. */ resuming?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be started or are currently being started. */ starting?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be stopped or are currently being stopped. */ stopping?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be suspended or are currently being suspended. */ suspending?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are being verified. See the managedInstances[].currentAction * property in the listManagedInstances method documentation. */ @@ -14926,7 +15325,7 @@ export namespace compute_alpha { } export interface Schema$InstanceGroupManagerAggregatedList { /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -14934,12 +15333,12 @@ export namespace compute_alpha { */ items?: {[key: string]: Schema$InstanceGroupManagersScopedList} | null; /** - * Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerAggregatedList for an aggregated + * Output only. The resource type, which is alwayscompute#instanceGroupManagerAggregatedList for an aggregated * list of managed instance groups. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for + * Output only. This token allows you to get the next page of results for * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for * the query parameter pageToken in the next list request. * Subsequent list requests will have their own nextPageToken to @@ -14947,15 +15346,15 @@ export namespace compute_alpha { */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Unreachable resources. + * Output only. Unreachable resources. */ unreachables?: string[] | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -15179,7 +15578,7 @@ export namespace compute_alpha { */ export interface Schema$InstanceGroupManagerList { /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -15187,12 +15586,12 @@ export namespace compute_alpha { */ items?: Schema$InstanceGroupManager[]; /** - * Output only. [Output Only] The resource type, which is always - * compute#instanceGroupManagerList for a list of managed instance groups. + * Output only. The resource type, which is always compute#instanceGroupManagerList for a + * list of managed instance groups. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for + * Output only. This token allows you to get the next page of results for * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for * the query parameter pageToken in the next list request. * Subsequent list requests will have their own nextPageToken to @@ -15200,11 +15599,11 @@ export namespace compute_alpha { */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -15240,7 +15639,7 @@ export namespace compute_alpha { */ count?: number | null; /** - * Output only. [Output Only] The creation timestamp for this resize request inRFC3339 + * Output only. The creation timestamp for this resize request inRFC3339 * text format. */ creationTimestamp?: string | null; @@ -15249,8 +15648,8 @@ export namespace compute_alpha { */ description?: string | null; /** - * Output only. [Output Only] A unique identifier for this resource type. The server - * generates this identifier. + * Output only. A unique identifier for this resource type. The server generates this + * identifier. */ id?: string | null; /** @@ -15261,8 +15660,7 @@ export namespace compute_alpha { */ instances?: Schema$PerInstanceConfig[]; /** - * Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for - * resize requests. + * Output only. The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for resize requests. */ kind?: string | null; /** @@ -15279,7 +15677,7 @@ export namespace compute_alpha { */ queuingPolicy?: Schema$QueuingPolicy; /** - * Output only. [Output Only] The URL of aregion + * Output only. The URL of a region * where the resize request is located. Populated only for regional resize * requests. */ @@ -15296,24 +15694,23 @@ export namespace compute_alpha { */ resizeBy?: number | null; /** - * Output only. [Output Only] The URL for this resize request. The server defines - * this URL. + * Output only. The URL for this resize request. The server defines this URL. */ selfLink?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource with the resource id. + * Output only. Server-defined URL for this resource with the resource id. */ selfLinkWithId?: string | null; /** - * Output only. [Output only] Current state of the request. + * Output only. Current state of the request. */ state?: string | null; /** - * Output only. [Output only] Status of the request. + * Output only. Status of the request. */ status?: Schema$InstanceGroupManagerResizeRequestStatus; /** - * Output only. [Output Only] The URL of azone + * Output only. The URL of a zone * where the resize request is located. Populated only for zonal resize * requests. */ @@ -15324,7 +15721,7 @@ export namespace compute_alpha { */ export interface Schema$InstanceGroupManagerResizeRequestsListResponse { /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -15332,24 +15729,23 @@ export namespace compute_alpha { */ items?: Schema$InstanceGroupManagerResizeRequest[]; /** - * Output only. [Output Only] Type of the resource. Alwayscompute#instanceGroupManagerResizeRequestList for + * Output only. Type of the resource. Alwayscompute#instanceGroupManagerResizeRequestList for * a list of resize requests. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for - * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for - * the query parameter pageToken in the next list request. + * Output only. This token allows you to get the next page of results for list requests. + * If the number of results is larger than maxResults, use thenextPageToken as a value for the query parameterpageToken in the next list request. * Subsequent list requests will have their own nextPageToken to * continue paging through the results. */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -15359,11 +15755,10 @@ export namespace compute_alpha { } export interface Schema$InstanceGroupManagerResizeRequestStatus { /** - * Output only. [Output only] Fatal errors encountered during the queueing or - * provisioning phases of the ResizeRequest that caused the transition to - * the FAILED state. Contrary to the last_attempt errors, this field is - * final and errors are never removed from here, as the ResizeRequest is not - * going to retry. + * Output only. Fatal errors encountered during the queueing or provisioning phases of + * the ResizeRequest that caused the transition to the FAILED state. + * Contrary to the last_attempt errors, this field is final and errors are + * never removed from here, as the ResizeRequest is not going to retry. */ error?: { errors?: Array<{ @@ -15379,14 +15774,14 @@ export namespace compute_alpha { }>; } | null; /** - * Output only. [Output only] Information about the last attempt to fulfill the request. - * The value is temporary since the ResizeRequest can retry, as long as it's - * still active and the last attempt value can either be cleared or replaced - * with a different error. Since ResizeRequest retries infrequently, the - * value may be stale and no longer show an active problem. The value is - * cleared when ResizeRequest transitions to the final state (becomes - * inactive). If the final state is FAILED the error describing it will be - * storred in the "error" field only. + * Output only. Information about the last attempt to fulfill the request. The value is + * temporary since the ResizeRequest can retry, as long as it's still active + * and the last attempt value can either be cleared or replaced with a + * different error. Since ResizeRequest retries infrequently, the value may + * be stale and no longer show an active problem. The value is cleared when + * ResizeRequest transitions to the final state (becomes inactive). If the + * final state is FAILED the error describing it will be stored in the + * "error" field only. */ lastAttempt?: Schema$InstanceGroupManagerResizeRequestStatusLastAttempt; /** @@ -15509,6 +15904,31 @@ export namespace compute_alpha { * obtained from the GetAvailableAcceleratorTopologies rpc. */ acceleratorTopologyActions?: {[key: string]: string} | null; + /** + * Map of accelerator topologies that should have their state changed to + * the specified configuration. The map key is the hashed topology locus id. + * It can be obtained from the GetAvailableAcceleratorTopologies rpc. + */ + acceleratorTopologyConfigurations?: { + [ + key: string + ]: Schema$InstanceGroupManagersConfigureAcceleratorTopologiesRequestAcceleratorTopologyConfiguration; + } | null; + } + /** + * Configuration for a single accelerator topology. + */ + export interface Schema$InstanceGroupManagersConfigureAcceleratorTopologiesRequestAcceleratorTopologyConfiguration { + action?: string | null; + /** + * Identifier of the accelerator topology assigned externally to + * differentiate who is the owner of the topology. The format needs to + * conform to RFC1035 and be unique. The uniqueness is guaranteed by the + * requestor. If it is provided on activating the sub-slice it will have to + * be provided on deactivating as well. This identifier is cleared on + * successful deform of a sub-slice. + */ + externalId?: string | null; } /** * InstanceGroupManagers.createInstances @@ -15608,6 +16028,14 @@ export namespace compute_alpha { * Timestamp when the last error happened */ errorTimestamp?: string | null; + /** + * Identifier of the accelerator topology assigned externally to + * differentiate who is the owner of the topology. This is set in + * ConfigureAcceleratorTopologies. If it is provided on activating the + * sub-slice it will have to be provided on deactivating as well. + * This identifier is cleared on successful deform of a sub-slice. + */ + externalId?: string | null; } export interface Schema$InstanceGroupManagersListErrorsResponse { /** @@ -15699,6 +16127,11 @@ export namespace compute_alpha { * the get or listManagedInstances API. */ noCreationRetries?: boolean | null; + /** + * If this flag is enabled within a request to decrease a MIG's target size, + * then the MIG declines that request. + */ + scaleInProtection?: boolean | null; /** * The number of running instances that the managed instance group should * maintain at any given time. The group automatically adds or removes @@ -15715,13 +16148,13 @@ export namespace compute_alpha { } export interface Schema$InstanceGroupManagersScopedList { /** - * Output only. [Output Only] The list of managed instance groups that are contained in - * the specified project and zone. + * Output only. The list of managed instance groups that are contained in the specified + * project and zone. */ instanceGroupManagers?: Schema$InstanceGroupManager[]; /** - * Output only. [Output Only] The warning that replaces the list of managed instance - * groups when the list is empty. + * Output only. The warning that replaces the list of managed instance groups when the list + * is empty. */ warning?: { code?: string; @@ -15807,31 +16240,31 @@ export namespace compute_alpha { } export interface Schema$InstanceGroupManagerStatus { /** - * Output only. [Output only] Status of all-instances configuration on the group. + * Output only. Status of all-instances configuration on the group. */ allInstancesConfig?: Schema$InstanceGroupManagerStatusAllInstancesConfig; /** - * Output only. [Output Only] The accelerator topology applied to this MIG. + * Output only. The accelerator topology applied to this MIG. * Currently only one accelerator topology is supported. */ appliedAcceleratorTopologies?: Schema$InstanceGroupManagerStatusAcceleratorTopology[]; /** - * Output only. [Output Only] The URL of theAutoscaler + * Output only. The URL of theAutoscaler * that targets this instance group manager. */ autoscaler?: string | null; /** - * Output only. [Output Only] The status of bulk instance operation. + * Output only. The status of bulk instance operation. */ bulkInstanceOperation?: Schema$InstanceGroupManagerStatusBulkInstanceOperation; /** - * Output only. [Output Only] The list of instance statuses and the number of instances + * Output only. The list of instance statuses and the number of instances * in this managed instance group that have the status. Currently only shown * for TPU MIGs */ currentInstanceStatuses?: Schema$InstanceGroupManagerStatusInstanceStatusSummary; /** - * Output only. [Output Only] A bit indicating whether the managed instance group is in a + * Output only. A bit indicating whether the managed instance group is in a * stable state. A stable state means that: none of the instances in the * managed instance group is currently undergoing any type of change (for * example, creation, restart, or deletion); no future changes are scheduled @@ -15840,11 +16273,11 @@ export namespace compute_alpha { */ isStable?: boolean | null; /** - * Output only. [Output Only] Stateful status of the given Instance Group Manager. + * Output only. Stateful status of the given Instance Group Manager. */ stateful?: Schema$InstanceGroupManagerStatusStateful; /** - * Output only. [Output Only] A status of consistency of Instances' versions with their + * Output only. A status of consistency of Instances' versions with their * target version specified by version field on Instance Group * Manager. */ @@ -15852,23 +16285,23 @@ export namespace compute_alpha { } export interface Schema$InstanceGroupManagerStatusAcceleratorTopology { /** - * Output only. [Output Only] Topology in the format of: "16x16", "4x4x4", etc. + * Output only. Topology in the format of: "16x16", "4x4x4", etc. * The value is the same as configured in the WorkloadPolicy. */ acceleratorTopology?: string | null; /** - * Output only. [Output Only] The state of the accelerator topology. + * Output only. The state of the accelerator topology. */ state?: string | null; /** - * Output only. [Output Only] The result of the latest accelerator topology state + * Output only. The result of the latest accelerator topology state * check. */ stateDetails?: Schema$InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails; } export interface Schema$InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails { /** - * Output only. [Output Only] Encountered errors. + * Output only. Encountered errors. */ error?: { errors?: Array<{ @@ -15884,7 +16317,7 @@ export namespace compute_alpha { }>; } | null; /** - * Output only. [Output Only] Timestamp is shown only if there is an error. The field + * Output only. Timestamp is shown only if there is an error. The field * has // RFC3339 // * text format. */ @@ -15892,12 +16325,12 @@ export namespace compute_alpha { } export interface Schema$InstanceGroupManagerStatusAllInstancesConfig { /** - * Output only. [Output Only] Current all-instances configuration revision. + * Output only. Current all-instances configuration revision. * This value is in RFC3339 text format. */ currentRevision?: string | null; /** - * Output only. [Output Only] A bit indicating whether this configuration has + * Output only. A bit indicating whether this configuration has * been applied to all managed instances in the group. */ effective?: boolean | null; @@ -15908,18 +16341,18 @@ export namespace compute_alpha { */ export interface Schema$InstanceGroupManagerStatusBulkInstanceOperation { /** - * Output only. [Output Only] Informs whether bulk instance operation is in progress. + * Output only. Informs whether bulk instance operation is in progress. */ inProgress?: boolean | null; /** - * Output only. [Output Only] Information from the last progress check of bulk instance + * Output only. Information from the last progress check of bulk instance * operation. */ lastProgressCheck?: Schema$InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck; } export interface Schema$InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck { /** - * Output only. [Output Only] Errors encountered during bulk instance operation. + * Output only. Errors encountered during bulk instance operation. */ error?: { errors?: Array<{ @@ -15935,7 +16368,7 @@ export namespace compute_alpha { }>; } | null; /** - * Output only. [Output Only] Timestamp of the last progress check of bulk instance + * Output only. Timestamp of the last progress check of bulk instance * operation. Timestamp is in RFC3339 text format. */ timestamp?: string | null; @@ -15948,12 +16381,12 @@ export namespace compute_alpha { */ export interface Schema$InstanceGroupManagerStatusInstanceStatusSummary { /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have DEPROVISIONING status. */ deprovisioning?: number | null; /** - * Output only. [Output Only] The number of instances that have not been created yet or + * Output only. The number of instances that have not been created yet or * have been deleted. Includes only instances that would be shown in the * listManagedInstances method and not all instances that have been * deleted in the lifetime of the MIG. @@ -15962,66 +16395,66 @@ export namespace compute_alpha { */ nonExistent?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have PENDING status, that is FlexStart instances that are waiting * for resources. Instances that do not exist because of the other reasons * are counted as 'non_existent'. */ pending?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have PENDING_STOP status. */ pendingStop?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have PROVISIONING status. */ provisioning?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have REPAIRING status. */ repairing?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have RUNNING status. */ running?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have STAGING status. */ staging?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have STOPPED status. */ stopped?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have STOPPING status. */ stopping?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have SUSPENDED status. */ suspended?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have SUSPENDING status. */ suspending?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have TERMINATED status. */ terminated?: number | null; } export interface Schema$InstanceGroupManagerStatusStateful { /** - * Output only. [Output Only] A bit indicating whether the managed instance group + * Output only. A bit indicating whether the managed instance group * has stateful configuration, that is, if you have configured any items * in a stateful policy or in per-instance configs. * The group might report that it has no stateful configuration even when @@ -16030,7 +16463,7 @@ export namespace compute_alpha { */ hasStatefulConfig?: boolean | null; /** - * Output only. [Output Only] A bit indicating whether the managed instance group + * Output only. A bit indicating whether the managed instance group * has stateful configuration, that is, if you have configured any items * in a stateful policy or in per-instance configs. * The group might report that it has no stateful configuration even when @@ -16040,7 +16473,7 @@ export namespace compute_alpha { */ isStateful?: boolean | null; /** - * Output only. [Output Only] Status of per-instance configurations on the instances. + * Output only. Status of per-instance configurations on the instances. */ perInstanceConfigs?: Schema$InstanceGroupManagerStatusStatefulPerInstanceConfigs; } @@ -16054,7 +16487,7 @@ export namespace compute_alpha { } export interface Schema$InstanceGroupManagerStatusVersionTarget { /** - * Output only. [Output Only] A bit indicating whether version target has been reached + * Output only. A bit indicating whether version target has been reached * in this managed instance group, i.e. all instances are in their target * version. Instances' target version are specified byversion field on Instance Group Manager. */ @@ -16452,8 +16885,8 @@ export namespace compute_alpha { * Input only. Resource manager tags to be bound to the instance. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -16567,8 +17000,10 @@ export namespace compute_alpha { /** * Input only. Resource manager tags to be bound to the instance. Tag keys and values * have the same definition as resource - * manager tags. Keys must be in the format `tagKeys/{tag_key_id\}`, and - * values are in the format `tagValues/456`. The field is ignored (both PUT & + * manager tags. Keys and values can be either in numeric format, + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ resourceManagerTags?: {[key: string]: string} | null; @@ -18466,7 +18901,6 @@ export namespace compute_alpha { templateAttachment?: Schema$InterconnectAttachmentGroupsCreateMembersInterconnectAttachmentInput; } /** - * LINT.IfChange * Parameters used to create an InterconnectAttachment. This is similar to * InterconnectAttachment, but the region field used here is not output only * and all other output only fields are excluded. @@ -19380,9 +19814,6 @@ export namespace compute_alpha { */ templateInterconnect?: Schema$InterconnectGroupsCreateMembersInterconnectInput; } - /** - * LINT.IfChange - */ export interface Schema$InterconnectGroupsCreateMembersInterconnectInput { /** * Administrative status of the interconnect. When this is set to true, the @@ -20261,6 +20692,30 @@ export namespace compute_alpha { */ systemOwned?: boolean | null; } + /** + * Represents a time interval, encoded as a Timestamp start (inclusive) and a + * Timestamp end (exclusive). + * + * The start must be less than or equal to the end. + * When the start equals the end, the interval is empty (matches no time). + * When both start and end are unspecified, the interval matches any time. + */ + export interface Schema$Interval { + /** + * Optional. Exclusive end of the interval. + * + * If specified, a Timestamp matching this interval will have to be before the + * end. + */ + endTime?: string | null; + /** + * Optional. Inclusive start of the interval. + * + * If specified, a Timestamp matching this interval will have to be the same + * or after the start. + */ + startTime?: string | null; + } export interface Schema$IpAddressesList { /** * [Output Only] Unique identifier for the resource; defined by the server. @@ -20643,8 +21098,8 @@ export namespace compute_alpha { * Input only. Resource manager tags to be bound to the license. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -21469,6 +21924,11 @@ export namespace compute_alpha { * if applicable. */ scheduling?: Schema$ManagedInstanceScheduling; + /** + * Output only. [Output Only] Specifies the graceful shutdown details if the instance is in + * `PENDING_STOP` state or there is a programmed stop scheduled. + */ + shutdownDetails?: Schema$ManagedInstanceShutdownDetails; /** * Output only. [Output only] The size of the VM represented by this Managed Instance. * This is how much this Managed Instance contributes to the @@ -21605,12 +22065,29 @@ export namespace compute_alpha { provisioningModel?: string | null; } export interface Schema$ManagedInstanceScheduling { + /** + * Output only. [Output Only] The timestamp at which the underlying instance will be + * triggered for graceful shutdown if it is configured. This is in RFC3339 text format. + */ + gracefulShutdownTimestamp?: string | null; /** * Output only. [Output Only] The timestamp at which the managed instance will be * terminated. This is in RFC3339 text format. */ terminationTimestamp?: string | null; } + export interface Schema$ManagedInstanceShutdownDetails { + /** + * Output only. [Output Only] The duration for graceful shutdown. Only applicable when + * the instance is in `PENDING_STOP` state. + */ + maxDuration?: Schema$Duration; + /** + * Output only. [Output Only] Past timestamp indicating the beginning of `PENDING_STOP` + * state of instance in RFC3339 text format. + */ + requestTimestamp?: string | null; + } export interface Schema$ManagedInstanceVersion { /** * Output only. [Output Only] The intended template of the instance. This field is empty @@ -23189,6 +23666,16 @@ export namespace compute_alpha { * You can only specify this field for network interfaces in VPC networks. */ aliasIpRanges?: Schema$AliasIpRange[]; + /** + * An array of alias IPv6 ranges for this network interface. + * You can only specify this field for network interfaces in VPC networks. + */ + aliasIpv6Ranges?: Schema$AliasIpRange[]; + /** + * If true, this network interface is eligible for DNS64. + * This field is only supported for dual-stack (IPV4_IPV6) network interfaces. + */ + dns64Eligible?: boolean | null; /** * Optional. If true, DNS resolution will be enabled over this interface. Only valid * with network_attachment. @@ -23246,6 +23733,11 @@ export namespace compute_alpha { * format. Where N is a value between 0 and7. The default interface value is nic0. */ name?: string | null; + /** + * If true, this network interface is eligible for NAT64. + * This field is only supported for dual-stack (IPV4_IPV6) network interfaces. + */ + nat64Eligible?: boolean | null; /** * URL of the VPC network resource for this instance. When creating an * instance, if neither the network nor the subnetwork is specified, the @@ -26819,6 +27311,18 @@ export namespace compute_alpha { */ managedProtectionTier?: string | null; } + /** + * Represents a ProjectView resource. + * + * A ProjectView resource contains read-only project data which is available + * globally. + */ + export interface Schema$ProjectView { + /** + * The project data. + */ + project?: Schema$Project; + } /** * A public advertised prefix represents an aggregated IP prefix or netblock * which customers bring to cloud. The IP prefix is a single unit of route @@ -26882,6 +27386,12 @@ export namespace compute_alpha { * cannot be a dash. */ name?: string | null; + /** + * Network tier to be used for this prefix. All child delegated prefixes will + * inherit this field. If this field is not specified, it defaults to the + * network tier of the project that the PublicAdvertisedPrefix belongs to. + */ + networkTier?: string | null; /** * Specifies how child public delegated prefix will be scoped. It could * be one of following values: @@ -27072,6 +27582,12 @@ export namespace compute_alpha { * cannot be a dash. */ name?: string | null; + /** + * Network tier of the public delegated prefix. If populated, it must match + * the network tier of the parent public advertised prefix. If not populated, + * it defaults to the network tier of the parent public advertised prefix. + */ + networkTier?: string | null; /** * The URL of parent prefix. Either PublicAdvertisedPrefix or * PublicDelegatedPrefix. @@ -27083,7 +27599,7 @@ export namespace compute_alpha { */ publicDelegatedSubPrefixs?: Schema$PublicDelegatedPrefixPublicDelegatedSubPrefix[]; /** - * The purpose of the public delegated prefix. + * Immutable. The purpose of the public delegated prefix. * * This field can only be set for the top-level global public delegated * prefix. It is an output-only field for the sub-delegates that inherit the @@ -27871,11 +28387,12 @@ export namespace compute_alpha { snapshotEncryptionKey?: Schema$CustomerEncryptionKey; /** * Output only. [Output Only] The unique ID of the snapshot group that this snapshot - * belongs to. + * belongs to. The usage of snapshot group feature is restricted. */ snapshotGroupId?: string | null; /** - * Output only. [Output only] The snapshot group that this snapshot belongs to. + * Output only. [Output only] The snapshot group that this snapshot belongs to. The usage + * of snapshot group feature is restricted. */ snapshotGroupName?: string | null; /** @@ -28198,6 +28715,23 @@ export namespace compute_alpha { message?: string; } | null; } + export interface Schema$RegionDiskUpdateKmsKeyRequest { + /** + * Optional. The new KMS key to replace the current one on the disk. If empty, the disk + * will be re-encrypted using the primary version of the disk's current KMS + * key. + * + * The KMS key can be provided in the following formats: + * + * + * - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key + * + * + * Where project is the project ID or + * project number. + */ + kmsKeyName?: string | null; + } /** * Contains a list of InstanceGroup resources. */ @@ -28250,7 +28784,7 @@ export namespace compute_alpha { */ export interface Schema$RegionInstanceGroupManagerList { /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -28258,13 +28792,12 @@ export namespace compute_alpha { */ items?: Schema$InstanceGroupManager[]; /** - * Output only. [Output Only] The resource type, which is always - * compute#instanceGroupManagerList for a list of managed instance groups that - * exist in th regional scope. + * Output only. The resource type, which is always compute#instanceGroupManagerList for a + * list of managed instance groups that exist in th regional scope. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for + * Output only. This token allows you to get the next page of results for * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for * the query parameter pageToken in the next list request. * Subsequent list requests will have their own nextPageToken to @@ -28272,11 +28805,11 @@ export namespace compute_alpha { */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -28297,7 +28830,7 @@ export namespace compute_alpha { export interface Schema$RegionInstanceGroupManagerResizeRequestsListResponse { etag?: string | null; /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -28305,12 +28838,12 @@ export namespace compute_alpha { */ items?: Schema$InstanceGroupManagerResizeRequest[]; /** - * Output only. [Output Only] Type of the resource. Alwayscompute#regionInstanceGroupManagerResizeRequestList for + * Output only. Type of the resource. Alwayscompute#regionInstanceGroupManagerResizeRequestList for * a list of Resize Requests. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for + * Output only. This token allows you to get the next page of results for * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for * the query parameter pageToken in the next list request. * Subsequent list requests will have their own nextPageToken to @@ -28318,16 +28851,16 @@ export namespace compute_alpha { */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Unreachable resources. + * Output only. Unreachable resources. * end_interface: MixerListResponseWithEtagBuilder */ unreachables?: string[] | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -28518,6 +29051,11 @@ export namespace compute_alpha { * the get or listManagedInstances API. */ noCreationRetries?: boolean | null; + /** + * If this flag is enabled within a request to decrease a MIG's target size, + * then the MIG declines that request. + */ + scaleInProtection?: boolean | null; /** * The number of running instances that the managed instance group should * maintain at any given time. The group automatically adds or removes @@ -28783,6 +29321,19 @@ export namespace compute_alpha { */ policy?: Schema$Policy; } + export interface Schema$RegionSnapshotUpdateKmsKeyRequest { + /** + * Optional. The new KMS key to replace the current one on the snapshot. If empty, the + * snapshot will be re-encrypted using the primary version of the snapshot's + * current KMS key. + * + * The KMS key can be provided in the following formats: + * + * + * - projects/project_id/locations/region/keyRings/region/cryptoKeys/key + */ + kmsKeyName?: string | null; + } export interface Schema$RegionTargetHttpsProxiesSetSslCertificatesRequest { /** * New set of SslCertificate resources to associate @@ -30639,6 +31190,14 @@ export namespace compute_alpha { * the last character, which cannot be a dash. */ name?: string | null; + /** + * Output only. The timestamp at which the Rollout was paused. + */ + pauseTime?: string | null; + /** + * Output only. The timestamp at which the Rollout was resumed. + */ + resumeTime?: string | null; /** * Required. The resource being rolled out. */ @@ -31034,6 +31593,11 @@ export namespace compute_alpha { * Output only. Resource completed so far. */ completedResourcesCount?: string | null; + /** + * Output only. Estimated timestamp at which the wave will complete. Extrapolated from + * current progress. + */ + estimatedCompletionTime?: string | null; /** * Output only. Estimated total count of resources. */ @@ -31048,6 +31612,24 @@ export namespace compute_alpha { * Output only. Resources failed. */ failedResourcesCount?: string | null; + /** + * Output only. Status of each location in the wave. Map keys (locations) must be + * specified like "us-east1" or "asia-west1-a". + */ + locationStatus?: { + [ + key: string + ]: Schema$RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus; + } | null; + } + /** + * Represents the status of a location in a wave. + */ + export interface Schema$RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus { + /** + * Output only. Location state of the wave. + */ + state?: string | null; } /** * Represents a Route resource. @@ -33406,20 +33988,20 @@ export namespace compute_alpha { ddosAdaptiveProtection?: string | null; /** * DDoS Protection for Network Load Balancers (and VMs with public IPs) - * builds DDos mitigations that minimize collateral damage. It quantifies + * builds DDoS mitigations that minimize collateral damage. It quantifies * this as the fraction of a non-abuse baseline that's inadvertently * blocked. * * Rules whose collateral damage exceeds ddosImpactedBaselineThreshold will * not be deployed. Using a lower value will prioritize keeping collateral * damage low, possibly at the cost of its effectiveness in rate limiting - * some or all of the attack. It should typically be unset, so Advanced DDos + * some or all of the attack. It should typically be unset, so Advanced DDoS * (and Adaptive Protection) uses the best mitigation it can find. Setting * the threshold is advised if there are logs for false positive detections - * with high collateral damage, and will cause Advanced DDos to attempt to - * find a less aggressive rule that satisfies the constraint; Failing that, - * it will fall back to no mitigation (smaller attack) or to broader network - * throttles (larger attack). + * with high collateral damage, and will cause Advanced DDoS to attempt to + * find a less aggressive rule that satisfies the constraint. If a suitable + * rule cannot be found, the system falls back to either no mitigation for + * smaller attacks or broader network throttles for larger ones. */ ddosImpactedBaselineThreshold?: number | null; ddosProtection?: string | null; @@ -34375,6 +34957,11 @@ export namespace compute_alpha { * cannot be a dash. */ name?: string | null; + /** + * The number of NAT IP addresses to be allocated per connected endpoint. + * If not specified, the default value is 1. + */ + natIpsPerEndpoint?: number | null; /** * An array of URLs where each entry is the URL of a subnet provided * by the service producer to use for NAT in this service attachment. @@ -35033,11 +35620,12 @@ export namespace compute_alpha { snapshotEncryptionKey?: Schema$CustomerEncryptionKey; /** * Output only. [Output Only] The unique ID of the snapshot group that this snapshot - * belongs to. + * belongs to. The usage of snapshot group feature is restricted. */ snapshotGroupId?: string | null; /** - * Output only. [Output only] The snapshot group that this snapshot belongs to. + * Output only. [Output only] The snapshot group that this snapshot belongs to. The usage + * of snapshot group feature is restricted. */ snapshotGroupName?: string | null; /** @@ -35303,8 +35891,8 @@ export namespace compute_alpha { * Input only. Resource manager tags to be bound to the snapshot. Tag keys and values have * the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -35442,6 +36030,19 @@ export namespace compute_alpha { message?: string; } | null; } + export interface Schema$SnapshotUpdateKmsKeyRequest { + /** + * Optional. The new KMS key to replace the current one on the snapshot. If empty, the + * snapshot will be re-encrypted using the primary version of the snapshot's + * current KMS key. + * + * The KMS key can be provided in the following formats: + * + * + * - projects/project_id/locations/region/keyRings/key_ring/cryptoKeys/key + */ + kmsKeyName?: string | null; + } export interface Schema$SourceDiskEncryptionKey { /** * Thecustomer-supplied @@ -36019,19 +36620,20 @@ export namespace compute_alpha { */ name?: string | null; /** - * One of DEFAULT, ENABLED, orDEFERRED. Controls whether the load balancer allows - * negotiating X25519MLKEM768 key exchange when clients advertise support for - * it. When set to DEFAULT, or if no SSL Policy is - * attached to the target proxy, the load balancer disallows X25519MLKEM768 - * key exchange until it is enabled by default on LBs. When set toENABLED, the load balancer will negotiate X25519MLKEM768 key - * exchange. Customers can set this to DEFERRED to temporarily - * opt-out the LB from negotiating post-quantum key exchange by default. + * One of DEFAULT, ENABLED, orDEFERRED. Controls whether the load balancer negotiates + * X25519MLKEM768 key exchange when clients advertise support for it. When set + * to DEFAULT, or if no SSL Policy is attached to the target + * proxy, the load balancer disallows X25519MLKEM768 key exchange before + * October 2026, and allows it afterward. When set to ENABLED, + * the load balancer allows X25519MLKEM768 key exchange. When set toDEFERRED, the load balancer disallows X25519MLKEM768 key + * exchange until October 2027, and allows it afterward. */ postQuantumKeyExchange?: string | null; /** * Profile specifies the set of SSL features that can be used by the load - * balancer when negotiating SSL with clients. This can be one ofCOMPATIBLE, MODERN, RESTRICTED, orCUSTOM. If using CUSTOM, the set of SSL features - * to enable must be specified in the customFeatures field. + * balancer when negotiating SSL with clients. This can be one ofCOMPATIBLE, MODERN, RESTRICTED,FIPS_202205, or CUSTOM. If usingCUSTOM, the set of SSL features to enable must be specified in + * the customFeatures field. If using FIPS_202205, + * the min_tls_version field must be set to TLS_1_2. */ profile?: string | null; /** @@ -36251,6 +36853,10 @@ export namespace compute_alpha { * Output only. [Output Only] Server-defined URL for this resource's resource id. */ selfLinkWithId?: string | null; + /** + * Share settings for the storage pool. + */ + shareSettings?: Schema$StoragePoolShareSettings; /** * DEPRECATED -- use "pool provisioned capacity gb". */ @@ -36479,8 +37085,8 @@ export namespace compute_alpha { * Input only. Resource manager tags to be bound to the storage pool. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -36587,6 +37193,27 @@ export namespace compute_alpha { */ usedThroughput?: string | null; } + /** + * Share settings for the storage pool. + */ + export interface Schema$StoragePoolShareSettings { + /** + * A map of project id and project config. + */ + projectMap?: { + [key: string]: Schema$StoragePoolShareSettingsProjectConfig; + } | null; + } + /** + * Config for each project in the share settings. + */ + export interface Schema$StoragePoolShareSettingsProjectConfig { + /** + * The project ID, should be same as the key of this project config in the + * parent map. + */ + projectId?: string | null; + } export interface Schema$StoragePoolsScopedList { /** * [Output Only] A list of storage pool contained in this scope. @@ -36928,6 +37555,13 @@ export namespace compute_alpha { * IPv6 range from Google IP Pool directly. */ ipv6GceEndpoint?: string | null; + /** + * Specifies the network tier for EXTERNAL IPv6. Can only be set when + * ipv6_access_type is EXTERNAL. Defaults to project defaultNetworkTier if not + * specified during the creation of the subnetwork. This field is IMMUTABLE + * once set with EXTERNAL IPv6. + */ + ipv6NetworkTier?: string | null; /** * Output only. [Output Only] Type of the resource. Always compute#subnetwork * for Subnetwork resources. @@ -37225,6 +37859,17 @@ export namespace compute_alpha { * field. */ ipCidrRange?: string | null; + /** + * Reference to a Public Delegated Prefix (PDP) for BYOIP. + * This field should be specified for configuring BYOGUA internal IPv6 + * secondary range. + * When specified along with the ip_cidr_range, the ip_cidr_range must lie + * within the PDP referenced by the `ipCollection` field. + * When specified without the ip_cidr_range, the range is auto-allocated + * from the PDP referenced by the `ipCollection` field. + */ + ipCollection?: string | null; + ipVersion?: string | null; /** * The name associated with this subnetwork secondary range, used when adding * an alias IP/IPv6 range to a VM instance. @@ -39242,6 +39887,10 @@ export namespace compute_alpha { * This timestamp value is in RFC3339 text format. */ latestWindowStartTime?: string | null; + /** + * Output only. Maintenance method for the upcoming maintenance. + */ + maintenanceMethod?: string | null; /** * Indicates whether the UpcomingMaintenance will be triggered on VM shutdown. */ @@ -39478,6 +40127,10 @@ export namespace compute_alpha { * [Output Only] Server-defined URL for the resource. */ selfLink?: string | null; + /** + * Output only. [Output Only] The status of the URL map. + */ + status?: Schema$UrlMapStatus; /** * The list of expected URL mapping tests. Request to update theUrlMap succeeds only if all test cases pass. You can specify a * maximum of 100 tests per UrlMap. @@ -39524,6 +40177,19 @@ export namespace compute_alpha { message?: string; } | null; } + /** + * Message representing the quota usage for a UrlMap. + */ + export interface Schema$UrlMapQuotaUsage { + /** + * Output only. The number of forwarding rules that uses this UrlMap. + */ + forwardingRules?: number | null; + /** + * Output only. The number of quota units calculated for this UrlMap. + */ + units?: string | null; + } export interface Schema$UrlMapReference { urlMap?: string | null; } @@ -39580,6 +40246,15 @@ export namespace compute_alpha { message?: string; } | null; } + /** + * [Output Only] The status of the URL map. + */ + export interface Schema$UrlMapStatus { + /** + * Output only. Summary of quota usage for given UrlMap. + */ + quotaUsage?: Schema$UrlMapQuotaUsage; + } export interface Schema$UrlMapsValidateRequest { /** * Specifies the load balancer type(s) this validation request is for. UseEXTERNAL_MANAGED for global external Application Load @@ -39697,6 +40372,10 @@ export namespace compute_alpha { * If false, 'loadErrors' indicates the reasons. */ loadSucceeded?: boolean | null; + /** + * Output only. Summary of quota usage for given UrlMap. + */ + quotaUsage?: Schema$UrlMapQuotaUsage; testFailures?: Schema$TestFailure[]; /** * If successfully loaded, this field indicates whether the test passed. @@ -44787,50 +45466,9 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Advice$Calendarmode extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CalendarModeAdviceRequest; - } - export interface Params$Resource$Advice$Capacity extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CapacityAdviceRequest; - } - - export class Resource$Autoscalers { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Retrieves an aggregated list of autoscalers. - * - * To prevent failure, it is recommended that you set the - * `returnPartialSuccess` parameter to `true`. + * Gets the capacity history. * @example * ```js * // Before running the sample: @@ -44854,7 +45492,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -44863,121 +45500,31 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.autoscalers.aggregatedList({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.advice.capacityHistory({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instanceProperties": {}, + * // "locationPolicy": {}, + * // "types": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "location": "my_location", + * // "machineType": "my_machineType", + * // "preemptionHistory": [], + * // "priceHistory": [] * // } * } * @@ -44993,57 +45540,57 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Autoscalers$Aggregatedlist, + capacityHistory( + params: Params$Resource$Advice$Capacityhistory, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Autoscalers$Aggregatedlist, + capacityHistory( + params?: Params$Resource$Advice$Capacityhistory, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Autoscalers$Aggregatedlist, + ): Promise>; + capacityHistory( + params: Params$Resource$Advice$Capacityhistory, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Autoscalers$Aggregatedlist, + capacityHistory( + params: Params$Resource$Advice$Capacityhistory, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Autoscalers$Aggregatedlist, - callback: BodyResponseCallback + capacityHistory( + params: Params$Resource$Advice$Capacityhistory, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + capacityHistory( + callback: BodyResponseCallback ): void; - aggregatedList( + capacityHistory( paramsOrCallback?: - | Params$Resource$Autoscalers$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Advice$Capacityhistory + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Autoscalers$Aggregatedlist; + {}) as Params$Resource$Advice$Capacityhistory; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Autoscalers$Aggregatedlist; + params = {} as Params$Resource$Advice$Capacityhistory; options = {}; } @@ -45058,30 +45605,337 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/autoscalers' + '/compute/alpha/projects/{project}/regions/{region}/advice/capacityHistory' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Advice$Calendarmode extends StandardParameters { /** - * Deletes the specified autoscaler. + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CalendarModeAdviceRequest; + } + export interface Params$Resource$Advice$Capacity extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CapacityAdviceRequest; + } + export interface Params$Resource$Advice$Capacityhistory extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CapacityHistoryRequest; + } + + export class Resource$Autoscalers { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves an aggregated list of autoscalers. + * + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.autoscalers.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + aggregatedList( + params: Params$Resource$Autoscalers$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Autoscalers$Aggregatedlist, + options?: MethodOptions + ): Promise>; + aggregatedList( + params: Params$Resource$Autoscalers$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Autoscalers$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Autoscalers$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Autoscalers$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Autoscalers$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Autoscalers$Aggregatedlist; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/aggregated/autoscalers' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified autoscaler. * @example * ```js * // Before running the sample: @@ -51109,8 +51963,7 @@ export namespace compute_alpha { * // "subsetting": {}, * // "timeoutSec": 0, * // "tlsSettings": {}, - * // "usedBy": [], - * // "vpcNetworkScope": "my_vpcNetworkScope" + * // "usedBy": [] * // } * } * @@ -51791,8 +52644,7 @@ export namespace compute_alpha { * // "subsetting": {}, * // "timeoutSec": 0, * // "tlsSettings": {}, - * // "usedBy": [], - * // "vpcNetworkScope": "my_vpcNetworkScope" + * // "usedBy": [] * // } * }, * }); @@ -52517,8 +53369,7 @@ export namespace compute_alpha { * // "subsetting": {}, * // "timeoutSec": 0, * // "tlsSettings": {}, - * // "usedBy": [], - * // "vpcNetworkScope": "my_vpcNetworkScope" + * // "usedBy": [] * // } * }, * }); @@ -53469,8 +54320,7 @@ export namespace compute_alpha { * // "subsetting": {}, * // "timeoutSec": 0, * // "tlsSettings": {}, - * // "usedBy": [], - * // "vpcNetworkScope": "my_vpcNetworkScope" + * // "usedBy": [] * // } * }, * }); @@ -59724,6 +60574,14 @@ export namespace compute_alpha { * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "kmsKeyName": "my_kmsKeyName" + * // } + * }, * }); * console.log(res.data); * @@ -60880,6 +61738,11 @@ export namespace compute_alpha { * The name of the zone for this request. */ zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DiskUpdateKmsKeyRequest; } export interface Params$Resource$Disks$Waitforreplicationcatchup extends StandardParameters { /** @@ -72944,6 +73807,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "name": "my_name", * // "namePrefix": "my_namePrefix", + * // "params": {}, * // "planningStatus": "my_planningStatus", * // "protectionTier": "my_protectionTier", * // "reservationMode": "my_reservationMode", @@ -73128,6 +73992,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "name": "my_name", * // "namePrefix": "my_namePrefix", + * // "params": {}, * // "planningStatus": "my_planningStatus", * // "protectionTier": "my_protectionTier", * // "reservationMode": "my_reservationMode", @@ -73599,6 +74464,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "name": "my_name", * // "namePrefix": "my_namePrefix", + * // "params": {}, * // "planningStatus": "my_planningStatus", * // "protectionTier": "my_protectionTier", * // "reservationMode": "my_reservationMode", @@ -82224,6 +83090,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "mode": "my_mode", * // "name": "my_name", + * // "networkTier": "my_networkTier", * // "parentPrefix": "my_parentPrefix", * // "publicDelegatedSubPrefixs": [], * // "purpose": "my_purpose", @@ -82401,6 +83268,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "mode": "my_mode", * // "name": "my_name", + * // "networkTier": "my_networkTier", * // "parentPrefix": "my_parentPrefix", * // "publicDelegatedSubPrefixs": [], * // "purpose": "my_purpose", @@ -82854,6 +83722,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "mode": "my_mode", * // "name": "my_name", + * // "networkTier": "my_networkTier", * // "parentPrefix": "my_parentPrefix", * // "publicDelegatedSubPrefixs": [], * // "purpose": "my_purpose", @@ -85589,6 +86458,10 @@ export namespace compute_alpha { * * // Do the magic * const res = await compute.haControllers.delete({ + * // Force-deletes HA Controller when the Delete is stuck. Instance that is not + * // primary at the moment will also be deleted. Can only be used against the HA + * // Controller resource that is already being deleted. + * force: 'placeholder-value', * // Name of the HaController resource to delete. * haController: 'placeholder-value', * // Project ID for this request. @@ -86835,6 +87708,12 @@ export namespace compute_alpha { serviceProjectNumber?: string; } export interface Params$Resource$Hacontrollers$Delete extends StandardParameters { + /** + * Force-deletes HA Controller when the Delete is stuck. Instance that is not + * primary at the moment will also be deleted. Can only be used against the HA + * Controller resource that is already being deleted. + */ + force?: boolean; /** * Name of the HaController resource to delete. */ @@ -89062,198 +89941,14 @@ export namespace compute_alpha { requestBody?: Schema$HealthCheck; } - export class Resource$Httphealthchecks { + export class Resource$Hosts { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified HttpHealthCheck resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.httpHealthChecks.delete({ - * // Name of the HttpHealthCheck resource to delete. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Httphealthchecks$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Httphealthchecks$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Httphealthchecks$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Httphealthchecks$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Httphealthchecks$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Httphealthchecks$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns the specified HttpHealthCheck resource. + * Retrieves information about the specified host. * @example * ```js * // Before running the sample: @@ -89286,31 +89981,36 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.get({ - * // Name of the HttpHealthCheck resource to return. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * const res = await compute.hosts.get({ + * // The parent resource association for the Host. This field specifies the + * // hierarchical context (e.g., reservation, block, sub-block) when + * // accessing the host. For example, reservations/reservation_name, + * // reservations/reservation_name/reservationBlocks/reservation_block_name or + * // reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. + * association: 'placeholder-value', + * // The name of the host, formatted as RFC1035 or a resource ID + * // number. + * host: 'placeholder-value', + * // The project ID for this request. + * project: 'placeholder-value', + * // The name of the zone for this request, formatted as RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "checkIntervalSec": 0, + * // "aliasLinks": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 + * // "state": "my_state", + * // "status": {}, + * // "zone": "my_zone" * // } * } * @@ -89327,52 +90027,51 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Httphealthchecks$Get, + params: Params$Resource$Hosts$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Httphealthchecks$Get, + params?: Params$Resource$Hosts$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Httphealthchecks$Get, + params: Params$Resource$Hosts$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Httphealthchecks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Hosts$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Httphealthchecks$Get, - callback: BodyResponseCallback + params: Params$Resource$Hosts$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Get - | BodyResponseCallback + | Params$Resource$Hosts$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Hosts$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Get; + params = {} as Params$Resource$Hosts$Get; options = {}; } @@ -89387,7 +90086,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + '/compute/alpha/projects/{project}/zones/{zone}/{association}/hosts/{host}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -89395,23 +90094,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], + requiredParams: ['project', 'zone', 'association', 'host'], + pathParams: ['association', 'host', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a HttpHealthCheck resource in the specified project using the data - * included in the request. + * Allows customers to get SBOM versions of a host. * @example * ```js * // Before running the sample: @@ -89443,43 +90141,28 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.insert({ + * const res = await compute.hosts.getVersion({ + * // The parent resource association for the Host. This field specifies the + * // hierarchical context (e.g., reservation, block, sub-block) when + * // accessing the host. + * association: 'placeholder-value', + * // The name of the host, formatted as RFC1035 or a resource ID + * // number. + * host: 'placeholder-value', * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * project: 'placeholder-value', * // 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. - * // - * // 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: 'placeholder-value', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 + * // "sbomSelections": [] * // } * }, * }); @@ -89530,32 +90213,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Httphealthchecks$Insert, + getVersion( + params: Params$Resource$Hosts$Getversion, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Httphealthchecks$Insert, + getVersion( + params?: Params$Resource$Hosts$Getversion, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Httphealthchecks$Insert, + getVersion( + params: Params$Resource$Hosts$Getversion, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Httphealthchecks$Insert, + getVersion( + params: Params$Resource$Hosts$Getversion, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Httphealthchecks$Insert, + getVersion( + params: Params$Resource$Hosts$Getversion, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + getVersion(callback: BodyResponseCallback): void; + getVersion( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Insert + | Params$Resource$Hosts$Getversion | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -89570,13 +90253,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Insert; + let params = (paramsOrCallback || {}) as Params$Resource$Hosts$Getversion; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Insert; + params = {} as Params$Resource$Hosts$Getversion; options = {}; } @@ -89591,7 +90273,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpHealthChecks' + '/compute/alpha/projects/{project}/zones/{zone}/{association}/hosts/{host}/getVersion' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -89599,8 +90281,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'association', 'host'], + pathParams: ['association', 'host', 'project', 'zone'], context: this.context, }; if (callback) { @@ -89614,8 +90296,7 @@ export namespace compute_alpha { } /** - * Retrieves the list of HttpHealthCheck resources available to the specified - * project. + * Retrieves a list of hosts. * @example * ```js * // Before running the sample: @@ -89648,7 +90329,13 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.list({ + * const res = await compute.hosts.list({ + * // The parent resource association for the Host. This field specifies the + * // hierarchical context (e.g., reservation, block, sub-block) when + * // accessing the host. For example, reservations/reservation_name, + * // reservations/reservation_name/reservationBlocks/reservation_block_name or + * // reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. + * association: 'placeholder-value', * // 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 @@ -89730,9 +90417,8 @@ export namespace compute_alpha { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The project ID for this request. + * project: 'placeholder-value', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -89740,16 +90426,20 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * // The name of the zone for this request, formatted as RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -89767,52 +90457,51 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Httphealthchecks$List, + params: Params$Resource$Hosts$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Httphealthchecks$List, + params?: Params$Resource$Hosts$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Httphealthchecks$List, + params: Params$Resource$Hosts$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Httphealthchecks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Hosts$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Httphealthchecks$List, - callback: BodyResponseCallback + params: Params$Resource$Hosts$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Httphealthchecks$List - | BodyResponseCallback + | Params$Resource$Hosts$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$List; + let params = (paramsOrCallback || {}) as Params$Resource$Hosts$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$List; + params = {} as Params$Resource$Hosts$List; options = {}; } @@ -89827,7 +90516,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpHealthChecks' + '/compute/alpha/projects/{project}/zones/{zone}/{association}/hosts' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -89835,25 +90524,201 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'association'], + pathParams: ['association', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Hosts$Get extends StandardParameters { /** - * Updates a HttpHealthCheck resource in the specified project using the data - * included in the request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * The parent resource association for the Host. This field specifies the + * hierarchical context (e.g., reservation, block, sub-block) when + * accessing the host. For example, reservations/reservation_name, + * reservations/reservation_name/reservationBlocks/reservation_block_name or + * reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. + */ + association?: string; + /** + * The name of the host, formatted as RFC1035 or a resource ID + * number. + */ + host?: string; + /** + * The project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request, formatted as RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Hosts$Getversion extends StandardParameters { + /** + * The parent resource association for the Host. This field specifies the + * hierarchical context (e.g., reservation, block, sub-block) when + * accessing the host. + */ + association?: string; + /** + * The name of the host, formatted as RFC1035 or a resource ID + * number. + */ + host?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + */ + requestId?: string; + /** + * Name of the zone for this request. Zone name should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HostsGetVersionRequest; + } + export interface Params$Resource$Hosts$List extends StandardParameters { + /** + * The parent resource association for the Host. This field specifies the + * hierarchical context (e.g., reservation, block, sub-block) when + * accessing the host. For example, reservations/reservation_name, + * reservations/reservation_name/reservationBlocks/reservation_block_name or + * reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. + */ + association?: 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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * The project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of the zone for this request, formatted as RFC1035. + */ + zone?: string; + } + + export class Resource$Httphealthchecks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified HttpHealthCheck resource. * @example * ```js * // Before running the sample: @@ -89885,8 +90750,8 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.patch({ - * // Name of the HttpHealthCheck resource to patch. + * const res = await compute.httpHealthChecks.delete({ + * // Name of the HttpHealthCheck resource to delete. * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: @@ -89905,27 +90770,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "checkIntervalSec": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 - * // } - * }, * }); * console.log(res.data); * @@ -89974,32 +90818,32 @@ export namespace compute_alpha { * @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$Httphealthchecks$Patch, + delete( + params: Params$Resource$Httphealthchecks$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Httphealthchecks$Patch, + delete( + params?: Params$Resource$Httphealthchecks$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Httphealthchecks$Patch, + delete( + params: Params$Resource$Httphealthchecks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Httphealthchecks$Patch, + delete( + params: Params$Resource$Httphealthchecks$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Httphealthchecks$Patch, + delete( + params: Params$Resource$Httphealthchecks$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Patch + | Params$Resource$Httphealthchecks$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -90015,12 +90859,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Patch; + {}) as Params$Resource$Httphealthchecks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Patch; + params = {} as Params$Resource$Httphealthchecks$Delete; options = {}; } @@ -90037,7 +90881,7 @@ export namespace compute_alpha { rootUrl + '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options @@ -90058,7 +90902,812 @@ export namespace compute_alpha { } /** - * Returns permissions that a caller has on the specified resource. + * Returns the specified HttpHealthCheck resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.httpHealthChecks.get({ + * // Name of the HttpHealthCheck resource to return. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Httphealthchecks$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Httphealthchecks$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Httphealthchecks$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Httphealthchecks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Httphealthchecks$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Httphealthchecks$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Httphealthchecks$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Httphealthchecks$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a HttpHealthCheck resource in the specified project using the data + * included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.httpHealthChecks.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + insert( + params: Params$Resource$Httphealthchecks$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Httphealthchecks$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Httphealthchecks$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Httphealthchecks$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Httphealthchecks$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Httphealthchecks$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Httphealthchecks$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Httphealthchecks$Insert; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/global/httpHealthChecks' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the list of HttpHealthCheck resources available to the specified + * project. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.httpHealthChecks.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Httphealthchecks$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Httphealthchecks$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Httphealthchecks$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Httphealthchecks$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Httphealthchecks$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Httphealthchecks$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Httphealthchecks$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Httphealthchecks$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/global/httpHealthChecks' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates a HttpHealthCheck resource in the specified project using the data + * included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.httpHealthChecks.patch({ + * // Name of the HttpHealthCheck resource to patch. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Httphealthchecks$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Httphealthchecks$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Httphealthchecks$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Httphealthchecks$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Httphealthchecks$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Httphealthchecks$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Httphealthchecks$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Httphealthchecks$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -94746,9 +96395,607 @@ export namespace compute_alpha { */ pageToken?: string; /** - * Project ID for this request. + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The zone query parameter. + */ + zone?: string; + } + export interface Params$Resource$Images$Patch extends StandardParameters { + /** + * Name of the image resource to patch. + */ + image?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$Image; + } + export interface Params$Resource$Images$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Images$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetLabelsRequest; + } + export interface Params$Resource$Images$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Imageviews { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns the specified global Image resource by providing a regional + * context to read the metadata from the Global Clone in the region. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.imageViews.get({ + * // Required. Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Required. Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the image resource to return. + * resourceId: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "image": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Imageviews$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Imageviews$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Imageviews$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Imageviews$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Imageviews$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Imageviews$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Imageviews$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Imageviews$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/regions/{region}/imageViews/{resourceId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resourceId'], + pathParams: ['project', 'region', 'resourceId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the list of global Image resources available to the project by + * providing a regional context to read the metadata from the Global Clone in + * the region. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.imageViews.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Required. Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Required. Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Imageviews$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Imageviews$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Imageviews$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Imageviews$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Imageviews$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Imageviews$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Imageviews$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Imageviews$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/regions/{region}/imageViews' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Imageviews$Get extends StandardParameters { + /** + * Required. Project ID for this request. + */ + project?: string; + /** + * Required. Name of the region for this request. + */ + region?: string; + /** + * Name of the image resource to return. + */ + resourceId?: string; + } + export interface Params$Resource$Imageviews$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Required. Project ID for this request. */ project?: string; + /** + * Required. Name of the region for this request. + */ + region?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -94758,86 +97005,6 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; - /** - * The zone query parameter. - */ - zone?: string; - } - export interface Params$Resource$Images$Patch extends StandardParameters { - /** - * Name of the image resource to patch. - */ - image?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$Image; - } - export interface Params$Resource$Images$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Images$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetLabelsRequest; - } - export interface Params$Resource$Images$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; } export class Resource$Instancegroupmanagerresizerequests { @@ -96884,7 +99051,8 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "acceleratorTopologyActions": {} + * // "acceleratorTopologyActions": {}, + * // "acceleratorTopologyConfigurations": {} * // } * }, * }); @@ -97259,6 +99427,9 @@ export namespace compute_alpha { * const res = await compute.instanceGroupManagers.delete({ * // The name of the managed instance group to delete. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance deletion even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -97460,6 +99631,9 @@ export namespace compute_alpha { * const res = await compute.instanceGroupManagers.deleteInstances({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance deletion even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -99894,6 +102068,9 @@ export namespace compute_alpha { * const res = await compute.instanceGroupManagers.recreateInstances({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance recreation even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -100343,6 +102520,7 @@ export namespace compute_alpha { * // request body parameters * // { * // "noCreationRetries": false, + * // "scaleInProtection": false, * // "targetSize": 0 * // } * }, @@ -101556,6 +103734,9 @@ export namespace compute_alpha { * const res = await compute.instanceGroupManagers.stopInstances({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance stopping even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -102571,261 +104752,271 @@ export namespace compute_alpha { * instance group is located. */ zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersAbandonInstancesRequest; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersAbandonInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Aggregatedlist 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. + * 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 onresource 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 GoogleRE2 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; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Instancegroupmanagers$Applyupdatestoinstances extends StandardParameters { + /** + * The name of the managed instance group, should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone + * where the managed instance group is located. Should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersApplyUpdatesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Configureacceleratortopologies extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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. + * + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersConfigureAcceleratorTopologiesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Createinstances extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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. + * + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersCreateInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Delete extends StandardParameters { + /** + * The name of the managed instance group to delete. + */ + instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance deletion even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; } - export interface Params$Resource$Instancegroupmanagers$Aggregatedlist 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. - * 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 onresource 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 GoogleRE2 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; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Instancegroupmanagers$Applyupdatestoinstances extends StandardParameters { - /** - * The name of the managed instance group, should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of thezone - * where the managed instance group is located. Should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersApplyUpdatesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Configureacceleratortopologies extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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. - * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersConfigureAcceleratorTopologiesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Createinstances extends StandardParameters { + export interface Params$Resource$Instancegroupmanagers$Deleteinstances extends StandardParameters { /** * The name of the managed instance group. - * It should conform to RFC1035. */ instanceGroupManager?: string; /** - * Project ID for this request. + * When set, graceful shutdown is skipped for instance deletion even if it's + * configured for the instances. */ - project?: string; - /** - * 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. - * - * 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. - * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersCreateInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Delete extends StandardParameters { - /** - * The name of the managed instance group to delete. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagers$Deleteinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -103476,6 +105667,11 @@ export namespace compute_alpha { * The name of the managed instance group. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance recreation even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -103765,6 +105961,11 @@ export namespace compute_alpha { * The name of the managed instance group. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance stopping even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -106832,6 +109033,8 @@ export namespace compute_alpha { * // { * // "accessConfigs": [], * // "aliasIpRanges": [], + * // "aliasIpv6Ranges": [], + * // "dns64Eligible": false, * // "enableVpcScopedDns": false, * // "fingerprint": "my_fingerprint", * // "igmpQuery": "my_igmpQuery", @@ -106842,6 +109045,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "macAddress": "my_macAddress", * // "name": "my_name", + * // "nat64Eligible": false, * // "network": "my_network", * // "networkAttachment": "my_networkAttachment", * // "networkIP": "my_networkIP", @@ -117341,6 +119545,8 @@ export namespace compute_alpha { * // { * // "accessConfigs": [], * // "aliasIpRanges": [], + * // "aliasIpv6Ranges": [], + * // "dns64Eligible": false, * // "enableVpcScopedDns": false, * // "fingerprint": "my_fingerprint", * // "igmpQuery": "my_igmpQuery", @@ -117351,6 +119557,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "macAddress": "my_macAddress", * // "name": "my_name", + * // "nat64Eligible": false, * // "network": "my_network", * // "networkAttachment": "my_networkAttachment", * // "networkIP": "my_networkIP", @@ -166654,8 +168861,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -166824,10 +169029,6 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * update_mask indicates fields to be updated as part of this request. - */ - updateMask?: string; /** * Request body metadata @@ -172815,9 +175016,144 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$DiskMoveRequest; + requestBody?: Schema$DiskMoveRequest; + } + export interface Params$Resource$Projects$Moveinstance extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceMoveRequest; + } + export interface Params$Resource$Projects$Setcloudarmortier extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$ProjectsSetCloudArmorTierRequest; + } + export interface Params$Resource$Projects$Setcommoninstancemetadata extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$Metadata; + } + export interface Params$Resource$Projects$Setdefaultnetworktier extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$ProjectsSetDefaultNetworkTierRequest; + } + export interface Params$Resource$Projects$Setdefaultserviceaccount extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$ProjectsSetDefaultServiceAccountRequest; } - export interface Params$Resource$Projects$Moveinstance extends StandardParameters { + export interface Params$Resource$Projects$Setmanagedprotectiontier extends StandardParameters { /** * Project ID for this request. */ @@ -172842,9 +175178,9 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$InstanceMoveRequest; + requestBody?: Schema$ProjectsSetManagedProtectionTierRequest; } - export interface Params$Resource$Projects$Setcloudarmortier extends StandardParameters { + export interface Params$Resource$Projects$Setusageexportbucket extends StandardParameters { /** * Project ID for this request. */ @@ -172869,142 +175205,169 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$ProjectsSetCloudArmorTierRequest; + requestBody?: Schema$UsageExportLocation; } - export interface Params$Resource$Projects$Setcommoninstancemetadata extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; + + export class Resource$Projectviews { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + /** - * 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. + * Returns the specified global ProjectViews resource, with a regional + * context. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Metadata; - } - export interface Params$Resource$Projects$Setdefaultnetworktier extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); * - * 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. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ProjectsSetDefaultNetworkTierRequest; - } - export interface Params$Resource$Projects$Setdefaultserviceaccount extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. + * // Do the magic + * const res = await compute.projectViews.get({ + * // Required. Project ID for this request. This is part of the URL path. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Required. Name of the region for this request. This is part of the URL path. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); * - * 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. + * // Example response + * // { + * // "project": {} + * // } + * } * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ProjectsSetDefaultServiceAccountRequest; - } - export interface Params$Resource$Projects$Setmanagedprotectiontier extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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). + * @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. */ - requestId?: string; + get( + params: Params$Resource$Projectviews$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projectviews$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projectviews$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projectviews$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projectviews$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projectviews$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Projectviews$Get; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$ProjectsSetManagedProtectionTierRequest; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projectviews$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/regions/{region}/projectViews' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } - export interface Params$Resource$Projects$Setusageexportbucket extends StandardParameters { + + export interface Params$Resource$Projectviews$Get extends StandardParameters { /** - * Project ID for this request. + * Required. Project ID for this request. This is part of the URL path. */ project?: string; /** - * 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. - * - * 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; - - /** - * Request body metadata + * Required. Name of the region for this request. This is part of the URL path. */ - requestBody?: Schema$UsageExportLocation; + region?: string; } export class Resource$Publicadvertisedprefixes { @@ -173438,6 +175801,7 @@ export namespace compute_alpha { * // "ipv6AccessType": "my_ipv6AccessType", * // "kind": "my_kind", * // "name": "my_name", + * // "networkTier": "my_networkTier", * // "pdpScope": "my_pdpScope", * // "publicDelegatedPrefixs": [], * // "selfLink": "my_selfLink", @@ -173611,6 +175975,7 @@ export namespace compute_alpha { * // "ipv6AccessType": "my_ipv6AccessType", * // "kind": "my_kind", * // "name": "my_name", + * // "networkTier": "my_networkTier", * // "pdpScope": "my_pdpScope", * // "publicDelegatedPrefixs": [], * // "selfLink": "my_selfLink", @@ -174061,6 +176426,7 @@ export namespace compute_alpha { * // "ipv6AccessType": "my_ipv6AccessType", * // "kind": "my_kind", * // "name": "my_name", + * // "networkTier": "my_networkTier", * // "pdpScope": "my_pdpScope", * // "publicDelegatedPrefixs": [], * // "selfLink": "my_selfLink", @@ -175336,6 +177702,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "mode": "my_mode", * // "name": "my_name", + * // "networkTier": "my_networkTier", * // "parentPrefix": "my_parentPrefix", * // "publicDelegatedSubPrefixs": [], * // "purpose": "my_purpose", @@ -175515,6 +177882,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "mode": "my_mode", * // "name": "my_name", + * // "networkTier": "my_networkTier", * // "parentPrefix": "my_parentPrefix", * // "publicDelegatedSubPrefixs": [], * // "purpose": "my_purpose", @@ -175972,6 +178340,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "mode": "my_mode", * // "name": "my_name", + * // "networkTier": "my_networkTier", * // "parentPrefix": "my_parentPrefix", * // "publicDelegatedSubPrefixs": [], * // "purpose": "my_purpose", @@ -182609,8 +184978,7 @@ export namespace compute_alpha { * // "subsetting": {}, * // "timeoutSec": 0, * // "tlsSettings": {}, - * // "usedBy": [], - * // "vpcNetworkScope": "my_vpcNetworkScope" + * // "usedBy": [] * // } * } * @@ -183136,8 +185504,7 @@ export namespace compute_alpha { * // "subsetting": {}, * // "timeoutSec": 0, * // "tlsSettings": {}, - * // "usedBy": [], - * // "vpcNetworkScope": "my_vpcNetworkScope" + * // "usedBy": [] * // } * }, * }); @@ -183870,8 +186237,7 @@ export namespace compute_alpha { * // "subsetting": {}, * // "timeoutSec": 0, * // "tlsSettings": {}, - * // "usedBy": [], - * // "vpcNetworkScope": "my_vpcNetworkScope" + * // "usedBy": [] * // } * }, * }); @@ -184636,8 +187002,7 @@ export namespace compute_alpha { * // "subsetting": {}, * // "timeoutSec": 0, * // "tlsSettings": {}, - * // "usedBy": [], - * // "vpcNetworkScope": "my_vpcNetworkScope" + * // "usedBy": [] * // } * }, * }); @@ -185940,6 +188305,7 @@ export namespace compute_alpha { * // "licenseResource": {}, * // "mergeSourceCommitments": [], * // "name": "my_name", + * // "params": {}, * // "plan": "my_plan", * // "region": "my_region", * // "reservations": [], @@ -186121,6 +188487,7 @@ export namespace compute_alpha { * // "licenseResource": {}, * // "mergeSourceCommitments": [], * // "name": "my_name", + * // "params": {}, * // "plan": "my_plan", * // "region": "my_region", * // "reservations": [], @@ -186740,6 +189107,7 @@ export namespace compute_alpha { * // "licenseResource": {}, * // "mergeSourceCommitments": [], * // "name": "my_name", + * // "params": {}, * // "plan": "my_plan", * // "region": "my_region", * // "reservations": [], @@ -193090,6 +195458,14 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "kmsKeyName": "my_kmsKeyName" + * // } + * }, * }); * console.log(res.data); * @@ -194057,6 +196433,11 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionDiskUpdateKmsKeyRequest; } export interface Params$Resource$Regiondisks$Waitforreplicationcatchup extends StandardParameters { /** @@ -204368,6 +206749,9 @@ export namespace compute_alpha { * const res = await compute.regionInstanceGroupManagers.delete({ * // Name of the managed instance group to delete. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance deletion even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -204568,6 +206952,9 @@ export namespace compute_alpha { * const res = await compute.regionInstanceGroupManagers.deleteInstances({ * // Name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance deletion even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -206826,6 +209213,9 @@ export namespace compute_alpha { * const res = await compute.regionInstanceGroupManagers.recreateInstances({ * // Name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance recreation even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -207264,6 +209654,7 @@ export namespace compute_alpha { * // request body parameters * // { * // "noCreationRetries": false, + * // "scaleInProtection": false, * // "targetSize": 0 * // } * }, @@ -208471,6 +210862,9 @@ export namespace compute_alpha { * const res = await compute.regionInstanceGroupManagers.stopInstances({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance stopping even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -209587,6 +211981,11 @@ export namespace compute_alpha { * Name of the managed instance group to delete. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance deletion even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -209617,6 +212016,11 @@ export namespace compute_alpha { * Name of the managed instance group. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance deletion even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -210235,6 +212639,11 @@ export namespace compute_alpha { * Name of the managed instance group. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance recreation even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -210517,6 +212926,11 @@ export namespace compute_alpha { * The name of the managed instance group. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance stopping even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -235354,6 +237768,14 @@ export namespace compute_alpha { * requestId: 'placeholder-value', * // Name of the snapshot resource to update. Should conform to RFC1035. * snapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "kmsKeyName": "my_kmsKeyName" + * // } + * }, * }); * console.log(res.data); * @@ -235789,6 +238211,11 @@ export namespace compute_alpha { * Name of the snapshot resource to update. Should conform to RFC1035. */ snapshot?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionSnapshotUpdateKmsKeyRequest; } export class Resource$Regionsnapshotsettings { @@ -243779,6 +246206,7 @@ export namespace compute_alpha { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * } @@ -243941,6 +246369,7 @@ export namespace compute_alpha { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * }, @@ -244572,6 +247001,7 @@ export namespace compute_alpha { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * }, @@ -244929,6 +247359,7 @@ export namespace compute_alpha { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * }, @@ -255158,6 +257589,191 @@ export namespace compute_alpha { this.context = context; } + /** + * Advances a Rollout to the next wave, or completes it if no waves remain. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.rollouts.advance({ + * // Required. Wave number of the current wave. + * currentWaveNumber: 'placeholder-value', + * // Required. Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // Required. Name of the Rollout resource to advance. + * rollout: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + advance( + params: Params$Resource$Rollouts$Advance, + options: StreamMethodOptions + ): Promise>; + advance( + params?: Params$Resource$Rollouts$Advance, + options?: MethodOptions + ): Promise>; + advance( + params: Params$Resource$Rollouts$Advance, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + advance( + params: Params$Resource$Rollouts$Advance, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + advance( + params: Params$Resource$Rollouts$Advance, + callback: BodyResponseCallback + ): void; + advance(callback: BodyResponseCallback): void; + advance( + paramsOrCallback?: + | Params$Resource$Rollouts$Advance + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Rollouts$Advance; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Rollouts$Advance; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/global/rollouts/{rollout}/advance' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'rollout'], + pathParams: ['project', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Cancels a Rollout. * @example @@ -255583,6 +258199,8 @@ export namespace compute_alpha { * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", + * // "pauseTime": "my_pauseTime", + * // "resumeTime": "my_resumeTime", * // "rolloutEntity": {}, * // "rolloutPlan": "my_rolloutPlan", * // "selfLink": "my_selfLink", @@ -256297,6 +258915,36 @@ export namespace compute_alpha { } } + export interface Params$Resource$Rollouts$Advance extends StandardParameters { + /** + * Required. Wave number of the current wave. + */ + currentWaveNumber?: string; + /** + * Required. Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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. Name of the Rollout resource to advance. + */ + rollout?: string; + } export interface Params$Resource$Rollouts$Cancel extends StandardParameters { /** * Project ID for this request. @@ -267104,6 +269752,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "metadata": {}, * // "name": "my_name", + * // "natIpsPerEndpoint": 0, * // "natSubnets": [], * // "producerForwardingRule": "my_producerForwardingRule", * // "propagatedConnectionLimit": 0, @@ -267435,6 +270084,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "metadata": {}, * // "name": "my_name", + * // "natIpsPerEndpoint": 0, * // "natSubnets": [], * // "producerForwardingRule": "my_producerForwardingRule", * // "propagatedConnectionLimit": 0, @@ -267893,6 +270543,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "metadata": {}, * // "name": "my_name", + * // "natIpsPerEndpoint": 0, * // "natSubnets": [], * // "producerForwardingRule": "my_producerForwardingRule", * // "propagatedConnectionLimit": 0, @@ -270412,8 +273063,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -270581,10 +273230,6 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * update_mask indicates fields to be updated as part of this request. - */ - updateMask?: string; /** * Request body metadata @@ -272551,6 +275196,14 @@ export namespace compute_alpha { * requestId: 'placeholder-value', * // Name of the snapshot resource to update. Should conform to RFC1035. * snapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "kmsKeyName": "my_kmsKeyName" + * // } + * }, * }); * console.log(res.data); * @@ -273063,6 +275716,11 @@ export namespace compute_alpha { * Name of the snapshot resource to update. Should conform to RFC1035. */ snapshot?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SnapshotUpdateKmsKeyRequest; } export class Resource$Snapshotsettings { @@ -277561,6 +280219,7 @@ export namespace compute_alpha { * // "resourceStatus": {}, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", + * // "shareSettings": {}, * // "sizeGb": "my_sizeGb", * // "state": "my_state", * // "status": {}, @@ -277893,6 +280552,7 @@ export namespace compute_alpha { * // "resourceStatus": {}, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", + * // "shareSettings": {}, * // "sizeGb": "my_sizeGb", * // "state": "my_state", * // "status": {}, @@ -279114,6 +281774,7 @@ export namespace compute_alpha { * // "resourceStatus": {}, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", + * // "shareSettings": {}, * // "sizeGb": "my_sizeGb", * // "state": "my_state", * // "status": {}, @@ -281419,6 +284080,7 @@ export namespace compute_alpha { * // "ipv6AccessType": "my_ipv6AccessType", * // "ipv6CidrRange": "my_ipv6CidrRange", * // "ipv6GceEndpoint": "my_ipv6GceEndpoint", + * // "ipv6NetworkTier": "my_ipv6NetworkTier", * // "kind": "my_kind", * // "logConfig": {}, * // "metadata": "my_metadata", @@ -281767,6 +284429,7 @@ export namespace compute_alpha { * // "ipv6AccessType": "my_ipv6AccessType", * // "ipv6CidrRange": "my_ipv6CidrRange", * // "ipv6GceEndpoint": "my_ipv6GceEndpoint", + * // "ipv6NetworkTier": "my_ipv6NetworkTier", * // "kind": "my_kind", * // "logConfig": {}, * // "metadata": "my_metadata", @@ -282504,6 +285167,7 @@ export namespace compute_alpha { * // "ipv6AccessType": "my_ipv6AccessType", * // "ipv6CidrRange": "my_ipv6CidrRange", * // "ipv6GceEndpoint": "my_ipv6GceEndpoint", + * // "ipv6NetworkTier": "my_ipv6NetworkTier", * // "kind": "my_kind", * // "logConfig": {}, * // "metadata": "my_metadata", @@ -301307,6 +303971,7 @@ export namespace compute_alpha { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * } @@ -301477,6 +304142,7 @@ export namespace compute_alpha { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * }, @@ -302120,6 +304786,7 @@ export namespace compute_alpha { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * }, @@ -302483,6 +305150,7 @@ export namespace compute_alpha { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * }, @@ -312208,7 +314876,7 @@ export namespace compute_alpha { } /** - * Deletes a specified zone VM extension policy. + * Deletes a specified zone VM extension policy within a project. * @example * ```js * // Before running the sample: @@ -312394,7 +315062,7 @@ export namespace compute_alpha { } /** - * Retrieves details of a specific zone VM extension policy. + * Retrieves details of a specific zone VM extension policy within a project. * @example * ```js * // Before running the sample: @@ -312553,7 +315221,7 @@ export namespace compute_alpha { } /** - * Retrieves details of a specific VM extension. + * Retrieves details of a specific VM extension within a project. * @example * ```js * // Before running the sample: @@ -313389,7 +316057,7 @@ export namespace compute_alpha { } /** - * Modifies an existing zone VM extension policy. + * Modifies an existing zone VM extension policy within a project. * @example * ```js * // Before running the sample: diff --git a/src/apis/compute/beta.ts b/src/apis/compute/beta.ts index 2c05135319d..4f86b04d051 100644 --- a/src/apis/compute/beta.ts +++ b/src/apis/compute/beta.ts @@ -1521,8 +1521,8 @@ export namespace compute_beta { * Input only. Resource manager tags to be bound to the disk. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & PATCH) when * empty. */ @@ -2069,6 +2069,17 @@ export namespace compute_beta { scalingSchedules?: { [key: string]: Schema$AutoscalingPolicyScalingSchedule; } | null; + /** + * The number of seconds that autoscaler waits for load stabilization before + * making scale-in decisions. This is referred to as the + * [stabilization period](/compute/docs/autoscaler#stabilization_period). + * This might appear as a delay in scaling in but it is an important mechanism + * for your application to not have fluctuating size due to short term load + * fluctuations. + * + * The default stabilization period is 600 seconds. + */ + stabilizationPeriodSec?: number | null; } /** * CPU utilization policy. @@ -2473,6 +2484,16 @@ export namespace compute_beta { * default */ preference?: string | null; + /** + * Represents a service backend (e.g., Cloud Run service, PSC Service + * Attachment). + * e.g. + * "run.googleapis.com/projects/123456789/locations/us-central1/services/my-service" + * for Cloud Run service. + * "compute.googleapis.com/projects/123456789/regions/us-central1/serviceAttachments/my-service-attachment" + * for PSC Service Attachment. + */ + service?: string | null; trafficDuration?: string | null; } /** @@ -3008,7 +3029,7 @@ export namespace compute_beta { * * This field is applicable to either: * - * - A regional backend service with the service_protocol set to HTTP, + * - A regional backend service with the service protocol set to HTTP, * HTTPS, HTTP2 or H2C, and load_balancing_scheme set to * INTERNAL_MANAGED. * - A global backend service with the @@ -3261,7 +3282,7 @@ export namespace compute_beta { * metrics to use for computing the weights are specified via thecustomMetrics field. * * This field is applicable to either: - * - A regional backend service with the service_protocol set to HTTP, + * - A regional backend service with the service protocol set to HTTP, * HTTPS, HTTP2 or H2C, and load_balancing_scheme set to * INTERNAL_MANAGED. * - A global backend service with the @@ -3374,7 +3395,7 @@ export namespace compute_beta { * - A global backend service with the loadBalancingScheme set to * INTERNAL_SELF_MANAGED or EXTERNAL_MANAGED. * - A regional backend - * service with the serviceProtocol set to HTTP, HTTPS, HTTP2 or H2C, and + * service with the service protocol set to HTTP, HTTPS, HTTP2 or H2C, and * loadBalancingScheme set to INTERNAL_MANAGED or EXTERNAL_MANAGED. Not * supported for Serverless NEGs. * @@ -3812,11 +3833,28 @@ export namespace compute_beta { * Defines a dynamic forwarding configuration for the backend service. */ export interface Schema$BackendServiceDynamicForwarding { + /** + * Dynamic Forwarding Proxy configuration. + */ + forwardProxy?: Schema$BackendServiceDynamicForwardingForwardProxy; /** * IP:PORT based dynamic forwarding configuration. */ ipPortSelection?: Schema$BackendServiceDynamicForwardingIpPortSelection; } + /** + * Defines Dynamic Forwarding Proxy configuration. + */ + export interface Schema$BackendServiceDynamicForwardingForwardProxy { + /** + * A boolean flag enabling dynamic forwarding proxy. + */ + enabled?: boolean | null; + /** + * Determines the dynamic forwarding proxy mode. + */ + proxyMode?: string | null; + } /** * Defines a IP:PORT based dynamic forwarding configuration for the backend * service. Some ranges are restricted: Restricted @@ -3846,7 +3884,7 @@ export namespace compute_beta { */ export interface Schema$BackendServiceFailoverPolicy { /** - * This can be set to true only if the protocol isTCP. + * This can be set to true if the protocol isTCP, UDP, or UNSPECIFIED. * * The default is false. */ @@ -4750,7 +4788,8 @@ export namespace compute_beta { */ instantSnapshotGroupParameters?: Schema$InstantSnapshotGroupParameters; /** - * The parameters for the snapshot group. + * The parameters for the snapshot group. The usage of snapshot group feature + * is restricted. */ snapshotGroupParameters?: Schema$SnapshotGroupParameters; /** @@ -4982,55 +5021,61 @@ export namespace compute_beta { /** * Bypass the cache when the specified request headers are matched by name, * e.g. Pragma or Authorization headers. Values are case-insensitive. Up to 5 - * header names can be specified. The cache is bypassed for all - * cachePolicy.cacheMode settings. + * header names can be specified. The cache is bypassed for all `cacheMode` + * values. */ cacheBypassRequestHeaderNames?: string[] | null; /** - * The CacheKeyPolicy for this CachePolicy. + * The cache key configuration. If not specified, the default behavior depends + * on the backend type: for Backend Services, the complete request URI is + * used; for Backend Buckets, the request URI is used without the protocol or + * host, and only query parameters known to Cloud Storage are included. */ cacheKeyPolicy?: Schema$CachePolicyCacheKeyPolicy; /** - * Specifies the cache setting for all responses from this route. - * If not specified, the default value is CACHE_ALL_STATIC. + * Specifies the cache setting for all responses from this route. If not + * specified, Cloud CDN uses `CACHE_ALL_STATIC` mode. */ cacheMode?: string | null; /** - * Specifies a separate client (e.g. browser client) maximum TTL. This is - * used to clamp the max-age (or Expires) value sent to the client. With - * FORCE_CACHE_ALL, the lesser of client_ttl and default_ttl is used for the - * response max-age directive, along with a "public" directive. For - * cacheable content in CACHE_ALL_STATIC mode, client_ttl clamps the max-age - * from the origin (if specified), or else sets the response max-age - * directive to the lesser of the client_ttl and default_ttl, and also - * ensures a "public" cache-control directive is present. - * If a client TTL is not specified, a default value (1 hour) will be used. - * The maximum allowed value is 31,622,400s (1 year). + * Specifies a separate client (e.g. browser client) maximum TTL for cached + * content. This is used to clamp the max-age (or Expires) value sent to the + * client. With `FORCE_CACHE_ALL`, the lesser of `clientTtl` and `defaultTtl` + * is used for the response max-age directive, along with a "public" + * directive. For cacheable content in `CACHE_ALL_STATIC` mode, `clientTtl` + * clamps the max-age from the origin (if specified), or else sets the + * response max-age directive to the lesser of the `clientTtl` and + * `defaultTtl`, and also ensures a "public" cache-control directive is + * present. The maximum allowed value is 31,622,400s (1 year). If not + * specified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` mode. + * Cannot exceed `maxTtl`. Cannot be specified when `cacheMode` is + * `USE_ORIGIN_HEADERS`. */ clientTtl?: Schema$Duration; /** - * Specifies the default TTL for cached content served by this origin for - * responses that do not have an existing valid TTL (max-age or s-maxage). - * Setting a TTL of "0" means "always revalidate". - * The value of defaultTTL cannot be set to a value greater than that of - * maxTTL. - * When the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL - * will overwrite the TTL set in all responses. The maximum allowed value is - * 31,622,400s (1 year). Infrequently accessed objects may be evicted from - * the cache before the defined TTL. + * Specifies the default TTL for cached content for responses that do not have + * an existing valid TTL (max-age or s-maxage). Setting a TTL of "0" means + * "always revalidate". The value of `defaultTtl` cannot be set to a value + * greater than that of `maxTtl`. When the `cacheMode` is set to + * `FORCE_CACHE_ALL`, the `defaultTtl` will overwrite the TTL set in all + * responses. The maximum allowed value is 31,622,400s (1 year). Infrequently + * accessed objects may be evicted from the cache before the defined TTL. If + * not specified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` and + * `FORCE_CACHE_ALL` modes. Cannot be specified when `cacheMode` is + * `USE_ORIGIN_HEADERS`. */ defaultTtl?: Schema$Duration; /** - * Specifies the maximum allowed TTL for cached content served by this - * origin. - * Cache directives that attempt to set a max-age or s-maxage higher than - * this, or an Expires header more than maxTTL seconds in the future will - * be capped at the value of maxTTL, as if it were the value of an - * s-maxage Cache-Control directive. - * Headers sent to the client will not be modified. - * Setting a TTL of "0" means "always revalidate". - * The maximum allowed value is 31,622,400s (1 year). Infrequently accessed - * objects may be evicted from the cache before the defined TTL. + * Specifies the maximum allowed TTL for cached content. Cache directives that + * attempt to set a max-age or s-maxage higher than this, or an Expires header + * more than `maxTtl` seconds in the future will be capped at the value of + * `maxTtl`, as if it were the value of an s-maxage Cache-Control directive. + * Headers sent to the client will not be modified. Setting a TTL of "0" means + * "always revalidate". The maximum allowed value is 31,622,400s (1 year). + * Infrequently accessed objects may be evicted from the cache before the + * defined TTL. If not specified, Cloud CDN uses 86400s (1 day) for + * `CACHE_ALL_STATIC` mode. Can be specified only for `CACHE_ALL_STATIC` cache + * mode. */ maxTtl?: Schema$Duration; /** @@ -5038,35 +5083,36 @@ export namespace compute_beta { * to apply fine-grained caching for common errors or redirects. * This can reduce the load on your origin and improve end-user * experience by reducing response latency. - * When the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS, - * negative caching applies to responses with the specified response code - * that lack any Cache-Control, Expires, or Pragma: no-cache directives. - * When the cache mode is set to FORCE_CACHE_ALL, negative caching applies - * to all responses with the specified response code, and override any - * caching headers. - * By default, Cloud CDN will apply the following default TTLs to these - * status codes: - * HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m - * HTTP 404 (Not Found), 410 (Gone), - * 451 (Unavailable For Legal Reasons): 120s - * HTTP 405 (Method Not Found), 501 (Not Implemented): 60s. - * These defaults can be overridden in negative_caching_policy. + * When the `cacheMode` is set to `CACHE_ALL_STATIC` or + * `USE_ORIGIN_HEADERS`, negative caching applies to responses with + * the specified response code that lack any Cache-Control, Expires, or + * Pragma: no-cache directives. When the `cacheMode` is set to + * `FORCE_CACHE_ALL`, negative caching applies to all responses + * with the specified response code, and overrides any caching headers. By + * default, Cloud CDN applies the following TTLs to these HTTP status codes: + * + * * 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m + * * 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s + * * 405 (Method Not Found), 501 (Not Implemented): 60s + * + * These defaults can be overridden in `negativeCachingPolicy`. + * If not specified, Cloud CDN applies negative caching by default. */ negativeCaching?: boolean | null; /** * Sets a cache TTL for the specified HTTP status code. - * negative_caching must be enabled to configure negative_caching_policy. - * Omitting the policy and leaving negative_caching enabled will use - * Cloud CDN's default cache TTLs. - * Note that when specifying an explicit negative_caching_policy, you - * should take care to specify a cache TTL for all response codes - * that you wish to cache. Cloud CDN will not apply any default - * negative caching when a policy exists. + * `negativeCaching` must be enabled to configure `negativeCachingPolicy`. + * Omitting the policy and leaving `negativeCaching` enabled will use Cloud + * CDN's default cache TTLs. Note that when specifying an explicit + * `negativeCachingPolicy`, you should take care to specify a cache TTL for + * all response codes that you wish to cache. Cloud CDN will not apply any + * default negative caching when a policy exists. */ negativeCachingPolicy?: Schema$CachePolicyNegativeCachingPolicy[]; /** * If true then Cloud CDN will combine multiple concurrent cache fill - * requests into a small number of requests to the origin. + * requests into a small number of requests to the origin. If not specified, + * Cloud CDN applies request coalescing by default. */ requestCoalescing?: boolean | null; /** @@ -5091,15 +5137,15 @@ export namespace compute_beta { export interface Schema$CachePolicyCacheKeyPolicy { /** * Names of query string parameters to exclude in cache keys. All other - * parameters will be included. Either specify excluded_query_parameters or - * included_query_parameters, not both. '&' and '=' will be percent encoded - * and not treated as delimiters. + * parameters will be included. Either specify `excludedQueryParameters` + * or `includedQueryParameters`, not both. '&' and '=' will be percent + * encoded and not treated as delimiters. * * Note: This field applies to routes that use backend services. Attempting * to set it on a route that points exclusively to Backend Buckets will * result in a configuration error. For routes that point to a Backend - * Bucket, use includedQueryParameters to define which parameters should - * be a part of the cache key. + * Bucket, use `includedQueryParameters` to define which parameters should + * be part of the cache key. */ excludedQueryParameters?: string[] | null; /** @@ -5119,9 +5165,9 @@ export namespace compute_beta { includedHeaderNames?: string[] | null; /** * Names of query string parameters to include in cache keys. All other - * parameters will be excluded. Either specify included_query_parameters or - * excluded_query_parameters, not both. '&' and '=' will be percent encoded - * and not treated as delimiters. + * parameters will be excluded. Either specify `includedQueryParameters` + * or `excludedQueryParameters`, not both. '&' and '=' will be percent + * encoded and not treated as delimiters. */ includedQueryParameters?: string[] | null; /** @@ -5146,15 +5192,15 @@ export namespace compute_beta { includeProtocol?: boolean | null; /** * If true, include query string parameters in the cache key according to - * included_query_parameters and excluded_query_parameters. If neither is - * set, the entire query string will be included. If false, the query string - * will be excluded from the cache key entirely. + * `includedQueryParameters` and `excludedQueryParameters`. If neither + * is set, the entire query string will be included. If false, the query + * string will be excluded from the cache key entirely. * * Note: This field applies to routes that use backend services. Attempting * to set it on a route that points exclusively to Backend Buckets will - * result in a configuration error. For routes that point to a Backend - * Bucket, use includedQueryParameters to define which parameters should - * be a part of the cache key. + * result in a configuration error. For routes that point to a Backend + * Bucket, use `includedQueryParameters` to define which parameters should + * be part of the cache key. */ includeQueryString?: boolean | null; } @@ -5217,6 +5263,261 @@ export namespace compute_beta { [key: string]: Schema$FutureResourcesRecommendation; } | null; } + /** + * A request to provide Assistant Scores. These scores determine VM + * obtainability and preemption likelihood. + */ + export interface Schema$CapacityAdviceRequest { + /** + * Policy specifying the distribution of instances across + * zones within the requested region. + */ + distributionPolicy?: Schema$CapacityAdviceRequestDistributionPolicy; + /** + * Policy for instance selectors. + */ + instanceFlexibilityPolicy?: Schema$CapacityAdviceRequestInstanceFlexibilityPolicy; + /** + * Instance properties for this request. + */ + instanceProperties?: Schema$CapacityAdviceRequestInstanceProperties; + /** + * The number of VM instances to request. + */ + size?: number | null; + } + /** + * Distribution policy. + */ + export interface Schema$CapacityAdviceRequestDistributionPolicy { + /** + * Target distribution shape. You can specify the following values:ANY, ANY_SINGLE_ZONE, or BALANCED. + */ + targetShape?: string | null; + /** + * Zones where Capacity Advisor looks for capacity. + */ + zones?: Schema$CapacityAdviceRequestDistributionPolicyZoneConfiguration[]; + } + /** + * Zone configuration for the distribution policy. + */ + export interface Schema$CapacityAdviceRequestDistributionPolicyZoneConfiguration { + /** + * The URL of the zone. It can be a + * partial or full URL. For example, the following are valid values: + * + * + * - https://www.googleapis.com/compute/v1/projects/project/zones/zone + * - projects/project/zones/zone + * - zones/zone + */ + zone?: string | null; + } + /** + * Specification of alternative, flexible instance configurations. + */ + export interface Schema$CapacityAdviceRequestInstanceFlexibilityPolicy { + /** + * Named instance selections to configure properties. + * The key is an arbitrary, unique RFC1035 string that identifies the + * instance selection. + */ + instanceSelections?: { + [ + key: string + ]: Schema$CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelection; + } | null; + } + /** + * Machine specification. + */ + export interface Schema$CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelection { + /** + * Local SSDs. + */ + disks?: Schema$CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelectionAttachedDisk[]; + /** + * Accelerators configuration. + */ + guestAccelerators?: Schema$AcceleratorConfig[]; + /** + * Full machine-type names, e.g. "n1-standard-16". + */ + machineTypes?: string[] | null; + } + /** + * Attached disk configuration. + */ + export interface Schema$CapacityAdviceRequestInstanceFlexibilityPolicyInstanceSelectionAttachedDisk { + /** + * Specifies the type of the disk. + * This field must be set to SCRATCH. + */ + type?: string | null; + } + /** + * Instance provisioning properties. + */ + export interface Schema$CapacityAdviceRequestInstanceProperties { + /** + * Specifies the scheduling options. + */ + scheduling?: Schema$CapacityAdviceRequestInstancePropertiesScheduling; + } + /** + * Defines the instance scheduling options. + */ + export interface Schema$CapacityAdviceRequestInstancePropertiesScheduling { + /** + * Specifies the provisioning model. + */ + provisioningModel?: string | null; + } + /** + * A response contains scoring recommendations. + */ + export interface Schema$CapacityAdviceResponse { + /** + * Initially the API will provide one recommendation which balances the + * individual scores according to the service provider's preference. + */ + recommendations?: Schema$CapacityAdviceResponseRecommendation[]; + } + /** + * Recommendation. + */ + export interface Schema$CapacityAdviceResponseRecommendation { + /** + * Scores for the recommendation. + */ + scores?: Schema$CapacityAdviceResponseRecommendationScores; + /** + * Shards represent blocks of uniform capacity in recommendations. + */ + shards?: Schema$CapacityAdviceResponseRecommendationShard[]; + } + /** + * Groups information about a shard of capacity. + */ + export interface Schema$CapacityAdviceResponseRecommendationScores { + /** + * The estimated run time of the majority of Spot VMs in the request + * before preemption. The estimate is best-effort only. It is based on + * historical data and current conditions. + */ + estimatedUptime?: string | null; + /** + * The obtainability score indicates the likelihood of successfully + * obtaining (provisioning) the requested number of VMs. + * The score range is 0.0 through 1.0. Higher is better. + */ + obtainability?: number | null; + } + /** + * Shards represent blocks of uniform capacity in recommendations. + * Each shard is for a single zone and a single machine shape. Each shard + * defines a size expressed as the number of VMs. + */ + export interface Schema$CapacityAdviceResponseRecommendationShard { + /** + * The number of instances. + */ + instanceCount?: number | null; + /** + * The machine type corresponds to the instance selection in the request. + */ + machineType?: string | null; + /** + * The provisioning model that you want to view recommendations for. + */ + provisioningModel?: string | null; + /** + * Output only. The zone name for this shard. + */ + zone?: string | null; + } + /** + * A request to get the capacity history. + */ + export interface Schema$CapacityHistoryRequest { + /** + * Instance properties for this request. + */ + instanceProperties?: Schema$CapacityHistoryRequestInstanceProperties; + /** + * Location policy for this request. + */ + locationPolicy?: Schema$CapacityHistoryRequestLocationPolicy; + /** + * List of history types to get capacity history for. + */ + types?: string[] | null; + } + /** + * Instance properties for this request. + */ + export interface Schema$CapacityHistoryRequestInstanceProperties { + /** + * The machine type for the VM, such as `n2-standard-4`. + */ + machineType?: string | null; + /** + * Specifies the scheduling options. + */ + scheduling?: Schema$CapacityHistoryRequestInstancePropertiesScheduling; + } + /** + * Scheduling options. + */ + export interface Schema$CapacityHistoryRequestInstancePropertiesScheduling { + /** + * The provisioning model to get capacity history for. + * This field must be set to SPOT. + * + * For more information, see + * Compute Engine instances provisioning models. + */ + provisioningModel?: string | null; + } + /** + * Location policy for this request. + */ + export interface Schema$CapacityHistoryRequestLocationPolicy { + /** + * The region or zone to get capacity history for. + * + * It can be a partial or full URL. For example, the following are valid + * values: + * + * + * - https://www.googleapis.com/compute/v1/projects/project/zones/zone + * - projects/project/zones/zone + * - zones/zone + * + * + * + * This field is optional. + */ + location?: string | null; + } + /** + * Contains the capacity history. + */ + export interface Schema$CapacityHistoryResponse { + location?: string | null; + machineType?: string | null; + preemptionHistory?: Schema$CapacityHistoryResponsePreemptionRecord[]; + priceHistory?: Schema$CapacityHistoryResponsePriceRecord[]; + } + export interface Schema$CapacityHistoryResponsePreemptionRecord { + interval?: Schema$Interval; + preemptionRate?: number | null; + } + export interface Schema$CapacityHistoryResponsePriceRecord { + interval?: Schema$Interval; + listPrice?: Schema$Money; + } /** * Settings controlling the volume of requests, connections and retries to this * backend service. @@ -5348,6 +5649,11 @@ export namespace compute_beta { * cannot be a dash. */ name?: string | null; + /** + * Input only. Additional params passed with the request, but not persisted + * as part of resource payload. + */ + params?: Schema$CommitmentParams; /** * The minimum time duration that you commit to purchasing resources. * The plan that you choose determines the preset term length of the @@ -5416,7 +5722,7 @@ export namespace compute_beta { * resource types. * * The type must be one of the following:ACCELERATOR_OPTIMIZED, ACCELERATOR_OPTIMIZED_A3,ACCELERATOR_OPTIMIZED_A3_MEGA,COMPUTE_OPTIMIZED, COMPUTE_OPTIMIZED_C2D, - * COMPUTE_OPTIMIZED_C3, COMPUTE_OPTIMIZED_C3D,COMPUTE_OPTIMIZED_H3, GENERAL_PURPOSE,GENERAL_PURPOSE_C4, GENERAL_PURPOSE_E2,GENERAL_PURPOSE_N2, GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED, GRAPHICS_OPTIMIZED_G4,MEMORY_OPTIMIZED, MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3. For + * COMPUTE_OPTIMIZED_C3, COMPUTE_OPTIMIZED_C3D,COMPUTE_OPTIMIZED_H3, GENERAL_PURPOSE,GENERAL_PURPOSE_C4, GENERAL_PURPOSE_E2,GENERAL_PURPOSE_N2, GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED, GRAPHICS_OPTIMIZED_G4,GRAPHICS_OPTIMIZED_G4_VGPU,MEMORY_OPTIMIZED, MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3. For * example, type MEMORY_OPTIMIZED specifies a commitment that * applies only to eligible resources of memory optimized M1 and M2 machine * series. Type GENERAL_PURPOSE specifies a commitment that @@ -5501,6 +5807,21 @@ export namespace compute_beta { message?: string; } | null; } + /** + * Additional commitment params. + */ + export interface Schema$CommitmentParams { + /** + * Input only. Resource manager tags to be bound to the commitment. Tag keys and + * values have the same definition as resource + * manager tags. Keys and values can be either in numeric format, + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * `{tag_value_short_name\}`. The field is ignored (both PUT & + * PATCH) when empty. + */ + resourceManagerTags?: {[key: string]: string} | null; + } /** * [Output Only] Contains output only fields. */ @@ -5644,6 +5965,24 @@ export namespace compute_beta { message?: string; } | null; } + /** + * Response message for RegionCompositeHealthChecks.GetHealth + */ + export interface Schema$CompositeHealthCheckHealth { + /** + * Health sources and their corresponding health states. + */ + healthSources?: Schema$CompositeHealthChecksGetHealthResponseHealthSourceHealth[]; + /** + * Health state of the CompositeHealthCheck. + */ + healthState?: string | null; + /** + * Output only. [Output Only] Type of resource. Alwayscompute#compositeHealthCheckHealth for the health of + * composite health checks. + */ + kind?: string | null; + } export interface Schema$CompositeHealthCheckList { /** * [Output Only] Unique identifier for the resource; defined by the server. @@ -5678,6 +6017,16 @@ export namespace compute_beta { message?: string; } | null; } + export interface Schema$CompositeHealthChecksGetHealthResponseHealthSourceHealth { + /** + * Health state of the associated HealthSource resource. + */ + healthState?: string | null; + /** + * Fully qualified URL of the associated HealthSource resource. + */ + source?: string | null; + } export interface Schema$CompositeHealthChecksScopedList { /** * A list of CompositeHealthChecks contained in this scope. @@ -6794,8 +7143,8 @@ export namespace compute_beta { * Input only. Resource manager tags to be bound to the disk. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -7106,6 +7455,23 @@ export namespace compute_beta { message?: string; } | null; } + export interface Schema$DiskUpdateKmsKeyRequest { + /** + * Optional. The new KMS key to replace the current one on the disk. If empty, the disk + * will be re-encrypted using the primary version of the disk's current KMS + * key. + * + * The KMS key can be provided in the following formats: + * + * + * - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key + * + * + * Where project is the project ID or + * project number. + */ + kmsKeyName?: string | null; + } /** * A set of Display Device options */ @@ -7124,6 +7490,11 @@ export namespace compute_beta { /** * Zones where the regional managed instance group will create and manage * its instances. + * By default, a regional MIG doesn't automatically select an AI zone to create + * instances, even if an AI zone is available in the specified region. To + * create instances in an AI zone in the selected region, you must explicitly + * specify it in the distribution policy together with the other preferred + * zones. */ zones?: Schema$DistributionPolicyZoneConfiguration[]; } @@ -7864,7 +8235,8 @@ export namespace compute_beta { */ policySource?: string | null; /** - * The type of the firewall policy. This field can be eitherVPC_POLICY or RDMA_ROCE_POLICY. + * The type of the firewall policy. This field can be one of + * VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY. * * Note: if not specified then VPC_POLICY will be used. */ @@ -8250,8 +8622,7 @@ export namespace compute_beta { */ export interface Schema$FixedOrPercent { /** - * Output only. [Output Only] Absolute value of VM instances calculated based on the - * specific mode. + * Output only. Absolute value of VM instances calculated based on the specific mode. * * * @@ -8341,6 +8712,17 @@ export namespace compute_beta { * this forwarding rule. The L3_DEFAULT protocol requiresallPorts be set to true. */ allPorts?: boolean | null; + /** + * Output only. [Output Only]. The extensions that are attached to this ForwardingRule. + */ + attachedExtensions?: Schema$ForwardingRuleAttachedExtension[]; + /** + * [Output Only] Specifies the availability group of the forwarding rule. This + * field is for use by global external passthrough load balancers (load + * balancing scheme EXTERNAL_PASSTHROUGH) and is set for the child forwarding + * rules only. + */ + availabilityGroup?: string | null; /** * Identifies the backend service to which the forwarding rule sends traffic. * Required for internal and external passthrough Network Load Balancers; @@ -8356,6 +8738,14 @@ export namespace compute_beta { * specified. */ baseForwardingRule?: string | null; + /** + * Output only. [Output Only] Applicable only to the parent forwarding rule of global + * external passthrough load balancers. This field contains the list of child + * forwarding rule URLs associated with the parent forwarding rule: one for + * each availability group. AVAILABILITY_GROUP0 will be the first element, and + * AVAILABILITY_GROUP1 will be the second element. + */ + childForwardingRules?: string[] | null; /** * Output only. [Output Only] Creation timestamp inRFC3339 * text format. @@ -8454,6 +8844,7 @@ export namespace compute_beta { * address number. */ IPAddress?: string | null; + IPAddresses?: string[] | null; /** * Resource reference of a PublicDelegatedPrefix. The PDP must * be a sub-PDP in EXTERNAL_IPV6_FORWARDING_RULE_CREATION mode. @@ -8586,6 +8977,12 @@ export namespace compute_beta { * this field. Once set, this field is not mutable. */ noAutomateDnsZone?: boolean | null; + /** + * Output only. [Output Only] Applicable only to the child forwarding rules of global external + * passthrough load balancers. This field contains the URL of the parent + * forwarding rule. + */ + parentForwardingRule?: string | null; /** * The ports, portRange, and allPorts * fields are mutually exclusive. Only packets addressed to ports in the @@ -8769,6 +9166,15 @@ export namespace compute_beta { message?: string; } | null; } + /** + * Reference to an extension resource that is attached to this ForwardingRule. + */ + export interface Schema$ForwardingRuleAttachedExtension { + /** + * Output only. The resource name. + */ + reference?: string | null; + } /** * Contains a list of ForwardingRule resources. */ @@ -8886,6 +9292,7 @@ export namespace compute_beta { * existing commitment. */ commitmentInfo?: Schema$FutureReservationCommitmentInfo; + confidentialComputeType?: string | null; /** * Output only. [Output Only] The creation timestamp for this future reservation inRFC3339 * text format. @@ -8931,6 +9338,11 @@ export namespace compute_beta { * reservations name format will be -date-####. */ namePrefix?: string | null; + /** + * Input only. Additional params passed with the request, but not persisted + * as part of resource payload. + */ + params?: Schema$FutureReservationParams; /** * Planning state before being submitted for evaluation */ @@ -9010,6 +9422,21 @@ export namespace compute_beta { */ previousCommitmentTerms?: string | null; } + /** + * Additional future reservation params. + */ + export interface Schema$FutureReservationParams { + /** + * Input only. Resource manager tags to be bound to the future reservation. Tag keys and + * values have the same definition as resource + * manager tags. Keys and values can be either in numeric format, + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * `{tag_value_short_name\}`. The field is ignored (both PUT & + * PATCH) when empty. + */ + resourceManagerTags?: {[key: string]: string} | null; + } /** * Contains a list of future reservations. */ @@ -9403,6 +9830,21 @@ export namespace compute_beta { aggregateResources?: Schema$FutureResourcesSpecAggregateResources; specificSkuResources?: Schema$FutureResourcesSpecSpecificSKUResources; } + export interface Schema$GetVersionOperationMetadata { + inlineSbomInfo?: Schema$GetVersionOperationMetadataSbomInfo; + } + export interface Schema$GetVersionOperationMetadataSbomInfo { + /** + * A mapping of components to their currently-applied versions or other + * appropriate identifiers. + */ + currentComponentVersions?: {[key: string]: string} | null; + /** + * A mapping of components to their target versions or other appropriate + * identifiers. + */ + targetComponentVersions?: {[key: string]: string} | null; + } export interface Schema$GlobalAddressesMoveRequest { /** * An optional destination address description if intended to be different @@ -9662,12 +10104,14 @@ export namespace compute_beta { * methods. * * A conflict occurs in the following cases: + * * * `insert` method: If the zonal policy already exists when the insert * happens. * * `update` method: If the zonal policy was modified by a zonal API call * outside of this rollout. * * Possible values are the following: + * * * `""` (empty string): If a conflict occurs, the local value is not * overwritten. This is the default behavior. * * `"overwrite"`: If a conflict occurs, the local value is overwritten @@ -9681,7 +10125,10 @@ export namespace compute_beta { */ name?: string | null; /** - * Optional. Predefined rollout plan. + * Optional. Specifies the predefined rollout plan for the policy. Valid values + * are `SLOW_ROLLOUT` and `FAST_ROLLOUT`. The recommended value is + * `SLOW_ROLLOUT` for progressive rollout. For more information, see Rollout + * plans for global policies. */ predefinedRolloutPlan?: string | null; /** @@ -9712,6 +10159,15 @@ export namespace compute_beta { previousRollout?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata; } export interface Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata { + /** + * Output only. [Output Only] The rollout status for each location. The list of the + * locations is the same as the list of locations in the rollout plan. + */ + locationRolloutStatus?: { + [ + key: string + ]: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus; + } | null; /** * Output only. [Output Only] The name of the rollout. * Ex. projects//locations/global/rollouts/. @@ -9728,6 +10184,12 @@ export namespace compute_beta { */ state?: string | null; } + export interface Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus { + /** + * Output only. [Output Only] The state of the location rollout. + */ + state?: string | null; + } /** * Maintenance Info for ReservationBlocks. */ @@ -9941,6 +10403,7 @@ export namespace compute_beta { * - TDX_CAPABLE * - IDPF * - SNP_SVSM_CAPABLE + * - CCA_CAPABLE * * * For more information, see @@ -10466,6 +10929,47 @@ export namespace compute_beta { */ selfLink?: string | null; } + /** + * Contains a list of HealthCheckServicesScopedList. + */ + export interface Schema$HealthCheckServiceAggregatedList { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of HealthCheckServicesScopedList resources. + */ + items?: {[key: string]: Schema$HealthCheckServicesScopedList} | null; + /** + * Output only. Type of resource. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * A full or valid partial URL to a health check service. For example, the * following are valid URLs: @@ -10512,6 +11016,21 @@ export namespace compute_beta { message?: string; } | null; } + export interface Schema$HealthCheckServicesScopedList { + /** + * A list of HealthCheckServices contained in this scope. + */ + resources?: Schema$HealthCheckService[]; + /** + * Informational warning which replaces the list of + * backend services when the list is empty. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } export interface Schema$HealthChecksScopedList { /** * A list of HealthChecks contained in this scope. @@ -10650,6 +11169,23 @@ export namespace compute_beta { message?: string; } | null; } + /** + * Response message for RegionHealthSources.GetHealth + */ + export interface Schema$HealthSourceHealth { + /** + * Health state of the HealthSource. + */ + healthState?: string | null; + /** + * Output only. [Output Only] Type of resource. Alwayscompute#healthSourceHealth for the health of health sources. + */ + kind?: string | null; + /** + * Health state details of the sources. + */ + sources?: Schema$HealthSourcesGetHealthResponseSourceInfo[]; + } export interface Schema$HealthSourceList { /** * [Output Only] Unique identifier for the resource; defined by the server. @@ -10684,6 +11220,41 @@ export namespace compute_beta { message?: string; } | null; } + export interface Schema$HealthSourcesGetHealthResponseSourceInfo { + /** + * Represents an instance group or network endpoint group behind the source + * backend service. Only used if the sourceType of the regionHealthSource + * is BACKEND_SERVICE. + */ + backends?: Schema$HealthSourcesGetHealthResponseSourceInfoBackendInfo[]; + /** + * Fully qualified URL of the forwarding rule associated with the source + * resource if it is a L4ILB backend service. + */ + forwardingRule?: string | null; + /** + * Fully qualified URL of the associated source resource. This is always a + * backend service URL. + */ + source?: string | null; + } + export interface Schema$HealthSourcesGetHealthResponseSourceInfoBackendInfo { + /** + * Total number of endpoints when determining the health of the + * regionHealthSource. + */ + endpointCount?: number | null; + /** + * Fully qualified URL of an instance group or network endpoint group + * behind the source backend service. + */ + group?: string | null; + /** + * Number of endpoints considered healthy when determining health of the + * regionHealthSource. + */ + healthyEndpointCount?: number | null; + } export interface Schema$HealthSourcesScopedList { /** * A list of HealthSources contained in this scope. @@ -11464,8 +12035,10 @@ export namespace compute_beta { } export interface Schema$HttpRouteAction { /** - * Cache policy for this URL Map’s route. Available only for Global - * EXTERNAL_MANAGED load balancer schemes. + * Specifies the cache policy configuration for matched traffic. Available + * only for Global `EXTERNAL_MANAGED` load balancer schemes. At least one + * property must be specified. This policy cannot be specified if any target + * backend has Identity-Aware Proxy enabled. */ cachePolicy?: Schema$CachePolicy; /** @@ -12361,8 +12934,8 @@ export namespace compute_beta { * Input only. Resource manager tags to be bound to the image. Tag keys and values have * the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -13010,12 +13583,12 @@ export namespace compute_beta { */ baseInstanceName?: string | null; /** - * Output only. [Output Only] The creation timestamp for this managed instance group inRFC3339 + * Output only. The creation timestamp for this managed instance group inRFC3339 * text format. */ creationTimestamp?: string | null; /** - * Output only. [Output Only] The list of instance actions and the number of instances + * Output only. The list of instance actions and the number of instances * in this managed instance group that are scheduled for each of those * actions. */ @@ -13044,7 +13617,7 @@ export namespace compute_beta { */ fingerprint?: string | null; /** - * Output only. [Output Only] A unique identifier for this resource type. The server + * Output only. A unique identifier for this resource type. The server * generates this identifier. */ id?: string | null; @@ -13056,7 +13629,7 @@ export namespace compute_beta { */ instanceFlexibilityPolicy?: Schema$InstanceGroupManagerInstanceFlexibilityPolicy; /** - * Output only. [Output Only] The URL of the Instance Group resource. + * Output only. The URL of the Instance Group resource. */ instanceGroup?: string | null; /** @@ -13071,7 +13644,7 @@ export namespace compute_beta { */ instanceTemplate?: string | null; /** - * Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManager for managed instance groups. + * Output only. The resource type, which is alwayscompute#instanceGroupManager for managed instance groups. */ kind?: string | null; /** @@ -13108,15 +13681,15 @@ export namespace compute_beta { */ resourcePolicies?: Schema$InstanceGroupManagerResourcePolicies; /** - * Output only. [Output Only] Reserved for future use. + * Output only. Reserved for future use. */ satisfiesPzi?: boolean | null; /** - * Output only. [Output Only] Reserved for future use. + * Output only. Reserved for future use. */ satisfiesPzs?: boolean | null; /** - * Output only. [Output Only] The URL for this managed instance group. The server defines + * Output only. The URL for this managed instance group. The server defines * this URL. */ selfLink?: string | null; @@ -13137,7 +13710,7 @@ export namespace compute_beta { */ statefulPolicy?: Schema$StatefulPolicy; /** - * Output only. [Output Only] The status of this managed instance group. + * Output only. The status of this managed instance group. */ status?: Schema$InstanceGroupManagerStatus; /** @@ -13196,25 +13769,25 @@ export namespace compute_beta { */ versions?: Schema$InstanceGroupManagerVersion[]; /** - * Output only. [Output Only] The URL of azone + * Output only. The URL of azone * where the managed instance group is located (for zonal resources). */ zone?: string | null; } export interface Schema$InstanceGroupManagerActionsSummary { /** - * Output only. [Output Only] The total number of instances in the managed instance group + * Output only. The total number of instances in the managed instance group * that are scheduled to be abandoned. Abandoning an instance removes it * from the managed instance group without deleting it. */ abandoning?: number | null; /** - * [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be adopted or are currently being adopted. */ adopting?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be created or are currently being created. If the group * fails to create any of these instances, it tries again until it creates * the instance successfully. @@ -13224,24 +13797,24 @@ export namespace compute_beta { */ creating?: number | null; /** - * Output only. [Output Only] The number of instances that the managed instance group + * Output only. The number of instances that the managed instance group * will attempt to create. The group attempts to create each instance * only once. If the group fails to create any of these instances, it * decreases the group's targetSize value accordingly. */ creatingWithoutRetries?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be deleted or are currently being deleted. */ deleting?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are running and have no scheduled actions. */ none?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be recreated or are currently being being recreated. * Recreating an instance deletes the existing root persistent disk * and creates a new disk from the image that is defined in the @@ -13249,39 +13822,39 @@ export namespace compute_beta { */ recreating?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are being reconfigured with properties that do not require a restart * or a recreate action. For example, setting or removing target * pools for the instance. */ refreshing?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be restarted or are currently being restarted. */ restarting?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be resumed or are currently being resumed. */ resuming?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be started or are currently being started. */ starting?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be stopped or are currently being stopped. */ stopping?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be suspended or are currently being suspended. */ suspending?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are being verified. See the managedInstances[].currentAction * property in the listManagedInstances method documentation. */ @@ -13289,7 +13862,7 @@ export namespace compute_beta { } export interface Schema$InstanceGroupManagerAggregatedList { /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -13297,12 +13870,12 @@ export namespace compute_beta { */ items?: {[key: string]: Schema$InstanceGroupManagersScopedList} | null; /** - * Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerAggregatedList for an aggregated + * Output only. The resource type, which is alwayscompute#instanceGroupManagerAggregatedList for an aggregated * list of managed instance groups. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for + * Output only. This token allows you to get the next page of results for * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for * the query parameter pageToken in the next list request. * Subsequent list requests will have their own nextPageToken to @@ -13310,15 +13883,15 @@ export namespace compute_beta { */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Unreachable resources. + * Output only. Unreachable resources. */ unreachables?: string[] | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -13472,7 +14045,7 @@ export namespace compute_beta { */ export interface Schema$InstanceGroupManagerList { /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -13480,12 +14053,12 @@ export namespace compute_beta { */ items?: Schema$InstanceGroupManager[]; /** - * Output only. [Output Only] The resource type, which is always - * compute#instanceGroupManagerList for a list of managed instance groups. + * Output only. The resource type, which is always compute#instanceGroupManagerList for a + * list of managed instance groups. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for + * Output only. This token allows you to get the next page of results for * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for * the query parameter pageToken in the next list request. * Subsequent list requests will have their own nextPageToken to @@ -13493,11 +14066,11 @@ export namespace compute_beta { */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -13533,7 +14106,7 @@ export namespace compute_beta { */ count?: number | null; /** - * Output only. [Output Only] The creation timestamp for this resize request inRFC3339 + * Output only. The creation timestamp for this resize request inRFC3339 * text format. */ creationTimestamp?: string | null; @@ -13542,8 +14115,8 @@ export namespace compute_beta { */ description?: string | null; /** - * Output only. [Output Only] A unique identifier for this resource type. The server - * generates this identifier. + * Output only. A unique identifier for this resource type. The server generates this + * identifier. */ id?: string | null; /** @@ -13554,8 +14127,7 @@ export namespace compute_beta { */ instances?: Schema$PerInstanceConfig[]; /** - * Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for - * resize requests. + * Output only. The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for resize requests. */ kind?: string | null; /** @@ -13564,7 +14136,7 @@ export namespace compute_beta { */ name?: string | null; /** - * Output only. [Output Only] The URL of aregion + * Output only. The URL of a region * where the resize request is located. Populated only for regional resize * requests. */ @@ -13581,24 +14153,23 @@ export namespace compute_beta { */ resizeBy?: number | null; /** - * Output only. [Output Only] The URL for this resize request. The server defines - * this URL. + * Output only. The URL for this resize request. The server defines this URL. */ selfLink?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource with the resource id. + * Output only. Server-defined URL for this resource with the resource id. */ selfLinkWithId?: string | null; /** - * Output only. [Output only] Current state of the request. + * Output only. Current state of the request. */ state?: string | null; /** - * Output only. [Output only] Status of the request. + * Output only. Status of the request. */ status?: Schema$InstanceGroupManagerResizeRequestStatus; /** - * Output only. [Output Only] The URL of azone + * Output only. The URL of a zone * where the resize request is located. Populated only for zonal resize * requests. */ @@ -13609,7 +14180,7 @@ export namespace compute_beta { */ export interface Schema$InstanceGroupManagerResizeRequestsListResponse { /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -13617,24 +14188,23 @@ export namespace compute_beta { */ items?: Schema$InstanceGroupManagerResizeRequest[]; /** - * Output only. [Output Only] Type of the resource. Alwayscompute#instanceGroupManagerResizeRequestList for + * Output only. Type of the resource. Alwayscompute#instanceGroupManagerResizeRequestList for * a list of resize requests. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for - * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for - * the query parameter pageToken in the next list request. + * Output only. This token allows you to get the next page of results for list requests. + * If the number of results is larger than maxResults, use thenextPageToken as a value for the query parameterpageToken in the next list request. * Subsequent list requests will have their own nextPageToken to * continue paging through the results. */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -13644,11 +14214,10 @@ export namespace compute_beta { } export interface Schema$InstanceGroupManagerResizeRequestStatus { /** - * Output only. [Output only] Fatal errors encountered during the queueing or - * provisioning phases of the ResizeRequest that caused the transition to - * the FAILED state. Contrary to the last_attempt errors, this field is - * final and errors are never removed from here, as the ResizeRequest is not - * going to retry. + * Output only. Fatal errors encountered during the queueing or provisioning phases of + * the ResizeRequest that caused the transition to the FAILED state. + * Contrary to the last_attempt errors, this field is final and errors are + * never removed from here, as the ResizeRequest is not going to retry. */ error?: { errors?: Array<{ @@ -13664,14 +14233,14 @@ export namespace compute_beta { }>; } | null; /** - * Output only. [Output only] Information about the last attempt to fulfill the request. - * The value is temporary since the ResizeRequest can retry, as long as it's - * still active and the last attempt value can either be cleared or replaced - * with a different error. Since ResizeRequest retries infrequently, the - * value may be stale and no longer show an active problem. The value is - * cleared when ResizeRequest transitions to the final state (becomes - * inactive). If the final state is FAILED the error describing it will be - * storred in the "error" field only. + * Output only. Information about the last attempt to fulfill the request. The value is + * temporary since the ResizeRequest can retry, as long as it's still active + * and the last attempt value can either be cleared or replaced with a + * different error. Since ResizeRequest retries infrequently, the value may + * be stale and no longer show an active problem. The value is cleared when + * ResizeRequest transitions to the final state (becomes inactive). If the + * final state is FAILED the error describing it will be stored in the + * "error" field only. */ lastAttempt?: Schema$InstanceGroupManagerResizeRequestStatusLastAttempt; } @@ -13778,6 +14347,31 @@ export namespace compute_beta { * obtained from the GetAvailableAcceleratorTopologies rpc. */ acceleratorTopologyActions?: {[key: string]: string} | null; + /** + * Map of accelerator topologies that should have their state changed to + * the specified configuration. The map key is the hashed topology locus id. + * It can be obtained from the GetAvailableAcceleratorTopologies rpc. + */ + acceleratorTopologyConfigurations?: { + [ + key: string + ]: Schema$InstanceGroupManagersConfigureAcceleratorTopologiesRequestAcceleratorTopologyConfiguration; + } | null; + } + /** + * Configuration for a single accelerator topology. + */ + export interface Schema$InstanceGroupManagersConfigureAcceleratorTopologiesRequestAcceleratorTopologyConfiguration { + action?: string | null; + /** + * Identifier of the accelerator topology assigned externally to + * differentiate who is the owner of the topology. The format needs to + * conform to RFC1035 and be unique. The uniqueness is guaranteed by the + * requestor. If it is provided on activating the sub-slice it will have to + * be provided on deactivating as well. This identifier is cleared on + * successful deform of a sub-slice. + */ + externalId?: string | null; } /** * InstanceGroupManagers.createInstances @@ -13871,6 +14465,14 @@ export namespace compute_beta { * Timestamp when the last error happened */ errorTimestamp?: string | null; + /** + * Identifier of the accelerator topology assigned externally to + * differentiate who is the owner of the topology. This is set in + * ConfigureAcceleratorTopologies. If it is provided on activating the + * sub-slice it will have to be provided on deactivating as well. + * This identifier is cleared on successful deform of a sub-slice. + */ + externalId?: string | null; } export interface Schema$InstanceGroupManagersListErrorsResponse { /** @@ -13978,13 +14580,13 @@ export namespace compute_beta { } export interface Schema$InstanceGroupManagersScopedList { /** - * Output only. [Output Only] The list of managed instance groups that are contained in - * the specified project and zone. + * Output only. The list of managed instance groups that are contained in the specified + * project and zone. */ instanceGroupManagers?: Schema$InstanceGroupManager[]; /** - * Output only. [Output Only] The warning that replaces the list of managed instance - * groups when the list is empty. + * Output only. The warning that replaces the list of managed instance groups when the list + * is empty. */ warning?: { code?: string; @@ -14070,26 +14672,31 @@ export namespace compute_beta { } export interface Schema$InstanceGroupManagerStatus { /** - * Output only. [Output only] Status of all-instances configuration on the group. + * Output only. Status of all-instances configuration on the group. */ allInstancesConfig?: Schema$InstanceGroupManagerStatusAllInstancesConfig; /** - * Output only. [Output Only] The URL of theAutoscaler + * Output only. The accelerator topology applied to this MIG. + * Currently only one accelerator topology is supported. + */ + appliedAcceleratorTopologies?: Schema$InstanceGroupManagerStatusAcceleratorTopology[]; + /** + * Output only. The URL of theAutoscaler * that targets this instance group manager. */ autoscaler?: string | null; /** - * Output only. [Output Only] The status of bulk instance operation. + * Output only. The status of bulk instance operation. */ bulkInstanceOperation?: Schema$InstanceGroupManagerStatusBulkInstanceOperation; /** - * Output only. [Output Only] The list of instance statuses and the number of instances + * Output only. The list of instance statuses and the number of instances * in this managed instance group that have the status. Currently only shown * for TPU MIGs */ currentInstanceStatuses?: Schema$InstanceGroupManagerStatusInstanceStatusSummary; /** - * Output only. [Output Only] A bit indicating whether the managed instance group is in a + * Output only. A bit indicating whether the managed instance group is in a * stable state. A stable state means that: none of the instances in the * managed instance group is currently undergoing any type of change (for * example, creation, restart, or deletion); no future changes are scheduled @@ -14098,24 +14705,64 @@ export namespace compute_beta { */ isStable?: boolean | null; /** - * Output only. [Output Only] Stateful status of the given Instance Group Manager. + * Output only. Stateful status of the given Instance Group Manager. */ stateful?: Schema$InstanceGroupManagerStatusStateful; /** - * Output only. [Output Only] A status of consistency of Instances' versions with their + * Output only. A status of consistency of Instances' versions with their * target version specified by version field on Instance Group * Manager. */ versionTarget?: Schema$InstanceGroupManagerStatusVersionTarget; } + export interface Schema$InstanceGroupManagerStatusAcceleratorTopology { + /** + * Output only. Topology in the format of: "16x16", "4x4x4", etc. + * The value is the same as configured in the WorkloadPolicy. + */ + acceleratorTopology?: string | null; + /** + * Output only. The state of the accelerator topology. + */ + state?: string | null; + /** + * Output only. The result of the latest accelerator topology state + * check. + */ + stateDetails?: Schema$InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails; + } + export interface Schema$InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails { + /** + * Output only. Encountered errors. + */ + error?: { + errors?: Array<{ + code?: string; + errorDetails?: Array<{ + errorInfo?: Schema$ErrorInfo; + help?: Schema$Help; + localizedMessage?: Schema$LocalizedMessage; + quotaInfo?: Schema$QuotaExceededInfo; + }>; + location?: string; + message?: string; + }>; + } | null; + /** + * Output only. Timestamp is shown only if there is an error. The field + * has // RFC3339 // + * text format. + */ + timestamp?: string | null; + } export interface Schema$InstanceGroupManagerStatusAllInstancesConfig { /** - * Output only. [Output Only] Current all-instances configuration revision. + * Output only. Current all-instances configuration revision. * This value is in RFC3339 text format. */ currentRevision?: string | null; /** - * Output only. [Output Only] A bit indicating whether this configuration has + * Output only. A bit indicating whether this configuration has * been applied to all managed instances in the group. */ effective?: boolean | null; @@ -14126,18 +14773,18 @@ export namespace compute_beta { */ export interface Schema$InstanceGroupManagerStatusBulkInstanceOperation { /** - * Output only. [Output Only] Informs whether bulk instance operation is in progress. + * Output only. Informs whether bulk instance operation is in progress. */ inProgress?: boolean | null; /** - * Output only. [Output Only] Information from the last progress check of bulk instance + * Output only. Information from the last progress check of bulk instance * operation. */ lastProgressCheck?: Schema$InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck; } export interface Schema$InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck { /** - * Output only. [Output Only] Errors encountered during bulk instance operation. + * Output only. Errors encountered during bulk instance operation. */ error?: { errors?: Array<{ @@ -14153,7 +14800,7 @@ export namespace compute_beta { }>; } | null; /** - * Output only. [Output Only] Timestamp of the last progress check of bulk instance + * Output only. Timestamp of the last progress check of bulk instance * operation. Timestamp is in RFC3339 text format. */ timestamp?: string | null; @@ -14166,12 +14813,12 @@ export namespace compute_beta { */ export interface Schema$InstanceGroupManagerStatusInstanceStatusSummary { /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have DEPROVISIONING status. */ deprovisioning?: number | null; /** - * Output only. [Output Only] The number of instances that have not been created yet or + * Output only. The number of instances that have not been created yet or * have been deleted. Includes only instances that would be shown in the * listManagedInstances method and not all instances that have been * deleted in the lifetime of the MIG. @@ -14180,66 +14827,66 @@ export namespace compute_beta { */ nonExistent?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have PENDING status, that is FlexStart instances that are waiting * for resources. Instances that do not exist because of the other reasons * are counted as 'non_existent'. */ pending?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have PENDING_STOP status. */ pendingStop?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have PROVISIONING status. */ provisioning?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have REPAIRING status. */ repairing?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have RUNNING status. */ running?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have STAGING status. */ staging?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have STOPPED status. */ stopped?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have STOPPING status. */ stopping?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have SUSPENDED status. */ suspended?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have SUSPENDING status. */ suspending?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group + * Output only. The number of instances in the managed instance group * that have TERMINATED status. */ terminated?: number | null; } export interface Schema$InstanceGroupManagerStatusStateful { /** - * Output only. [Output Only] A bit indicating whether the managed instance group + * Output only. A bit indicating whether the managed instance group * has stateful configuration, that is, if you have configured any items * in a stateful policy or in per-instance configs. * The group might report that it has no stateful configuration even when @@ -14248,7 +14895,7 @@ export namespace compute_beta { */ hasStatefulConfig?: boolean | null; /** - * Output only. [Output Only] A bit indicating whether the managed instance group + * Output only. A bit indicating whether the managed instance group * has stateful configuration, that is, if you have configured any items * in a stateful policy or in per-instance configs. * The group might report that it has no stateful configuration even when @@ -14258,7 +14905,7 @@ export namespace compute_beta { */ isStateful?: boolean | null; /** - * Output only. [Output Only] Status of per-instance configurations on the instances. + * Output only. Status of per-instance configurations on the instances. */ perInstanceConfigs?: Schema$InstanceGroupManagerStatusStatefulPerInstanceConfigs; } @@ -14272,7 +14919,7 @@ export namespace compute_beta { } export interface Schema$InstanceGroupManagerStatusVersionTarget { /** - * Output only. [Output Only] A bit indicating whether version target has been reached + * Output only. A bit indicating whether version target has been reached * in this managed instance group, i.e. all instances are in their target * version. Instances' target version are specified byversion field on Instance Group Manager. */ @@ -14660,8 +15307,8 @@ export namespace compute_beta { * Input only. Resource manager tags to be bound to the instance. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -14773,8 +15420,10 @@ export namespace compute_beta { /** * Input only. Resource manager tags to be bound to the instance. Tag keys and values * have the same definition as resource - * manager tags. Keys must be in the format `tagKeys/{tag_key_id\}`, and - * values are in the format `tagValues/456`. The field is ignored (both PUT & + * manager tags. Keys and values can be either in numeric format, + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ resourceManagerTags?: {[key: string]: string} | null; @@ -17250,9 +17899,6 @@ export namespace compute_beta { */ templateInterconnect?: Schema$InterconnectGroupsCreateMembersInterconnectInput; } - /** - * LINT.IfChange - */ export interface Schema$InterconnectGroupsCreateMembersInterconnectInput { /** * Administrative status of the interconnect. When this is set to true, the @@ -18082,6 +18728,30 @@ export namespace compute_beta { etag?: string | null; result?: Schema$InterconnectMacsecConfig; } + /** + * Represents a time interval, encoded as a Timestamp start (inclusive) and a + * Timestamp end (exclusive). + * + * The start must be less than or equal to the end. + * When the start equals the end, the interval is empty (matches no time). + * When both start and end are unspecified, the interval matches any time. + */ + export interface Schema$Interval { + /** + * Optional. Exclusive end of the interval. + * + * If specified, a Timestamp matching this interval will have to be before the + * end. + */ + endTime?: string | null; + /** + * Optional. Inclusive start of the interval. + * + * If specified, a Timestamp matching this interval will have to be the same + * or after the start. + */ + startTime?: string | null; + } /** * Represents a License resource. * @@ -18209,6 +18879,16 @@ export namespace compute_beta { * images. */ export interface Schema$LicenseCode { + /** + * Specifies licenseCodes of licenses that can replace this license. Note: + * such replacements are allowed even if removable_from_disk is false. + */ + allowedReplacementLicenses?: string[] | null; + /** + * If true, this license can be appended to an existing disk's set of + * licenses. + */ + appendableToDisk?: boolean | null; /** * Output only. [Output Only] Creation timestamp inRFC3339 * text format. @@ -18223,6 +18903,12 @@ export namespace compute_beta { * defined by the server. */ id?: string | null; + /** + * Specifies licenseCodes of licenses that are incompatible with this license. + * If a license is incompatible with this license, it cannot be attached to + * the same disk or image. + */ + incompatibleLicenses?: string[] | null; /** * Output only. [Output Only] Type of resource. Always compute#licenseCode for * licenses. @@ -18233,15 +18919,44 @@ export namespace compute_beta { * License Code. */ licenseAlias?: Schema$LicenseCodeLicenseAlias[]; + /** + * If set, this license will be unable to be removed or replaced once attached + * to a disk until the minimum_retention period has passed. + */ + minimumRetention?: Schema$Duration; + /** + * If true, this license can only be used on VMs on multi tenant nodes. + */ + multiTenantOnly?: boolean | null; /** * Output only. [Output Only] Name of the resource. The name is 1-20 characters long and * must be a valid 64 bit integer. */ name?: string | null; + /** + * If true, indicates this is an OS license. Only one OS license can be + * attached to a disk or image at a time. + */ + osLicense?: boolean | null; + /** + * If true, this license can be removed from a disk's set of licenses, with no + * replacement license needed. + */ + removableFromDisk?: boolean | null; + /** + * Specifies the set of permissible coattached licenseCodes of licenses that + * satisfy the coattachment requirement of this license. At least one license + * from the set must be attached to the same disk or image as this license. + */ + requiredCoattachedLicenses?: string[] | null; /** * Output only. [Output Only] Server-defined URL for the resource. */ selfLink?: string | null; + /** + * If true, this license can only be used on VMs on sole tenant nodes. + */ + soleTenantOnly?: boolean | null; /** * Output only. [Output Only] Current state of this License Code. */ @@ -18251,6 +18966,11 @@ export namespace compute_beta { * images or snapshots from disks. Otherwise, the license is not transferred. */ transferable?: boolean | null; + /** + * Output only. [Output Only] Last update timestamp inRFC3339 + * text format. + */ + updateTimestamp?: string | null; } export interface Schema$LicenseCodeLicenseAlias { /** @@ -18270,8 +18990,8 @@ export namespace compute_beta { * Input only. Resource manager tags to be bound to the license. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -18965,6 +19685,11 @@ export namespace compute_beta { * if applicable. */ scheduling?: Schema$ManagedInstanceScheduling; + /** + * Output only. [Output Only] Specifies the graceful shutdown details if the instance is in + * `PENDING_STOP` state or there is a programmed stop scheduled. + */ + shutdownDetails?: Schema$ManagedInstanceShutdownDetails; /** * Output only. [Output Only] The eventual status of the instance. The instance group * manager will not be identified as stable till each managed instance reaches @@ -19033,12 +19758,29 @@ export namespace compute_beta { provisioningModel?: string | null; } export interface Schema$ManagedInstanceScheduling { + /** + * Output only. [Output Only] The timestamp at which the underlying instance will be + * triggered for graceful shutdown if it is configured. This is in RFC3339 text format. + */ + gracefulShutdownTimestamp?: string | null; /** * Output only. [Output Only] The timestamp at which the managed instance will be * terminated. This is in RFC3339 text format. */ terminationTimestamp?: string | null; } + export interface Schema$ManagedInstanceShutdownDetails { + /** + * Output only. [Output Only] The duration for graceful shutdown. Only applicable when + * the instance is in `PENDING_STOP` state. + */ + maxDuration?: Schema$Duration; + /** + * Output only. [Output Only] Past timestamp indicating the beginning of `PENDING_STOP` + * state of instance in RFC3339 text format. + */ + requestTimestamp?: string | null; + } export interface Schema$ManagedInstanceVersion { /** * Output only. [Output Only] The intended template of the instance. This field is empty @@ -19136,6 +19878,29 @@ export namespace compute_beta { */ value?: string | null; } + /** + * Represents an amount of money with its currency type. + */ + export interface Schema$Money { + /** + * The three-letter currency code defined in ISO 4217. + */ + currencyCode?: string | null; + /** + * Number of nano (10^-9) units of the amount. + * The value must be between -999,999,999 and +999,999,999 inclusive. + * If `units` is positive, `nanos` must be positive or zero. + * If `units` is zero, `nanos` can be positive, zero, or negative. + * If `units` is negative, `nanos` must be negative or zero. + * For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. + */ + nanos?: number | null; + /** + * The whole units of the amount. + * For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. + */ + units?: string | null; + } /** * Multi-MIG represents a group of managed instance groups. */ @@ -19720,6 +20485,11 @@ export namespace compute_beta { * Alias IP ranges from the same subnetwork. */ secondaryIpCidrRanges?: string[] | null; + /** + * The service class id of the producer service to which the IP was + * assigned. + */ + serviceClassId?: string | null; /** * The status of a connected endpoint to this network attachment. */ @@ -20544,6 +21314,11 @@ export namespace compute_beta { * You can only specify this field for network interfaces in VPC networks. */ aliasIpRanges?: Schema$AliasIpRange[]; + /** + * An array of alias IPv6 ranges for this network interface. + * You can only specify this field for network interfaces in VPC networks. + */ + aliasIpv6Ranges?: Schema$AliasIpRange[]; /** * Optional. If true, DNS resolution will be enabled over this interface. Only valid * with network_attachment. @@ -20645,6 +21420,13 @@ export namespace compute_beta { * if not specified by the users. */ queueCount?: number | null; + /** + * Optional. Producer Service's Service class Id for the region of this network + * interface. Can only be used with network_attachment. It is not possible to + * use on its own however, network_attachment can be used without + * service_class_id. + */ + serviceClassId?: string | null; /** * The stack type for this network interface. To assign only IPv4 addresses, * use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used. @@ -22342,6 +23124,47 @@ export namespace compute_beta { */ selfLink?: string | null; } + /** + * Contains a list of NotificationEndpointsScopedList. + */ + export interface Schema$NotificationEndpointAggregatedList { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of NotificationEndpointsScopedList resources. + */ + items?: {[key: string]: Schema$NotificationEndpointsScopedList} | null; + /** + * Output only. Type of resource. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * Represents a gRPC setting that describes one gRPC notification endpoint and * the retry duration attempting to send notification to this endpoint. @@ -22412,6 +23235,21 @@ export namespace compute_beta { message?: string; } | null; } + export interface Schema$NotificationEndpointsScopedList { + /** + * A list of NotificationEndpoints contained in this scope. + */ + resources?: Schema$NotificationEndpoint[]; + /** + * Informational warning which replaces the list of + * notification endpoints when the list is empty. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * Represents an Operation resource. * @@ -22479,6 +23317,7 @@ export namespace compute_beta { message?: string; }>; } | null; + getVersionOperationMetadata?: Schema$GetVersionOperationMetadata; /** * [Output Only] If the operation fails, this field contains the HTTP error * message that was returned, such as `NOT FOUND`. @@ -24131,6 +24970,33 @@ export namespace compute_beta { * delegated prefix. */ publicDelegatedSubPrefixs?: Schema$PublicDelegatedPrefixPublicDelegatedSubPrefix[]; + /** + * Immutable. The purpose of the public delegated prefix. + * + * This field can only be set for the top-level global public delegated + * prefix. It is an output-only field for the sub-delegates that inherit the + * value from the top-level global public delegated prefix. Once the value is + * set, it cannot be changed. + * + * The field cannot be set for regional public delegated prefixes. + * + * The supported values are: + * + * + * - APPLICATION_AND_PROXY_LOAD_BALANCERS: The global public + * delegated prefix can only be used by Global External Application and + * Proxy Load Balancers to allocate addresses for forwarding rules. This is + * the default value. + * - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0: The + * global public delegated prefix can only be used by Global External + * Passthrough Network Load Balancers to allocate Availability Group 0 + * addresses for forwarding rules. + * - PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1: The + * global public delegated prefix can only be used by Global External + * Passthrough Network Load Balancers to allocate Availability Group 1 + * addresses for forwarding rules. + */ + purpose?: string | null; /** * Output only. [Output Only] URL of the region where the public delegated prefix resides. * This field applies only to the region resource. You must specify this @@ -24292,6 +25158,11 @@ export namespace compute_beta { * The name of the sub public delegated prefix. */ name?: string | null; + /** + * Output only. [Output Only] The purpose of the sub public delegated prefix. Inherited + * from parent prefix. + */ + purpose?: string | null; /** * Output only. [Output Only] The region of the sub public delegated prefix if it is * regional. If absent, the sub prefix is global. @@ -24587,6 +25458,23 @@ export namespace compute_beta { message?: string; } | null; } + export interface Schema$RegionDiskUpdateKmsKeyRequest { + /** + * Optional. The new KMS key to replace the current one on the disk. If empty, the disk + * will be re-encrypted using the primary version of the disk's current KMS + * key. + * + * The KMS key can be provided in the following formats: + * + * + * - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key + * + * + * Where project is the project ID or + * project number. + */ + kmsKeyName?: string | null; + } /** * Contains a list of InstanceGroup resources. */ @@ -24639,7 +25527,7 @@ export namespace compute_beta { */ export interface Schema$RegionInstanceGroupManagerList { /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -24647,13 +25535,12 @@ export namespace compute_beta { */ items?: Schema$InstanceGroupManager[]; /** - * Output only. [Output Only] The resource type, which is always - * compute#instanceGroupManagerList for a list of managed instance groups that - * exist in th regional scope. + * Output only. The resource type, which is always compute#instanceGroupManagerList for a + * list of managed instance groups that exist in th regional scope. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for + * Output only. This token allows you to get the next page of results for * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for * the query parameter pageToken in the next list request. * Subsequent list requests will have their own nextPageToken to @@ -24661,11 +25548,11 @@ export namespace compute_beta { */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -24686,7 +25573,7 @@ export namespace compute_beta { export interface Schema$RegionInstanceGroupManagerResizeRequestsListResponse { etag?: string | null; /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -24694,12 +25581,12 @@ export namespace compute_beta { */ items?: Schema$InstanceGroupManagerResizeRequest[]; /** - * Output only. [Output Only] Type of the resource. Alwayscompute#regionInstanceGroupManagerResizeRequestList for + * Output only. Type of the resource. Alwayscompute#regionInstanceGroupManagerResizeRequestList for * a list of Resize Requests. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for + * Output only. This token allows you to get the next page of results for * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for * the query parameter pageToken in the next list request. * Subsequent list requests will have their own nextPageToken to @@ -24707,16 +25594,16 @@ export namespace compute_beta { */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Unreachable resources. + * Output only. Unreachable resources. * end_interface: MixerListResponseWithEtagBuilder */ unreachables?: string[] | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -25162,6 +26049,19 @@ export namespace compute_beta { */ policy?: Schema$Policy; } + export interface Schema$RegionSnapshotUpdateKmsKeyRequest { + /** + * Optional. The new KMS key to replace the current one on the snapshot. If empty, the + * snapshot will be re-encrypted using the primary version of the snapshot's + * current KMS key. + * + * The KMS key can be provided in the following formats: + * + * + * - projects/project_id/locations/region/keyRings/region/cryptoKeys/key + */ + kmsKeyName?: string | null; + } export interface Schema$RegionTargetHttpsProxiesSetSslCertificatesRequest { /** * New set of SslCertificate resources to associate @@ -25220,6 +26120,7 @@ export namespace compute_beta { * displays for reservations that are tied to a commitment. */ commitment?: string | null; + confidentialComputeType?: string | null; /** * Output only. [Output Only] Creation timestamp inRFC3339 * text format. @@ -25740,6 +26641,12 @@ export namespace compute_beta { export interface Schema$ReservationSlotsGetResponse { resource?: Schema$ReservationSlot; } + export interface Schema$ReservationSlotsGetVersionRequest { + /** + * The SBOM selection to return. Duplicate values in the list will be ignored. + */ + sbomSelections?: string[] | null; + } /** * A list of reservation slots within a single reservation. */ @@ -25935,6 +26842,12 @@ export namespace compute_beta { export interface Schema$ReservationSubBlocksGetResponse { resource?: Schema$ReservationSubBlock; } + export interface Schema$ReservationSubBlocksGetVersionRequest { + /** + * The SBOM selection to return. + */ + sbomSelections?: string[] | null; + } /** * A list of reservation subBlocks under a single reservation. */ @@ -27081,6 +27994,11 @@ export namespace compute_beta { * Output only. Resource completed so far. */ completedResourcesCount?: string | null; + /** + * Output only. Estimated timestamp at which the wave will complete. Extrapolated from + * current progress. + */ + estimatedCompletionTime?: string | null; /** * Output only. Estimated total count of resources. */ @@ -27095,6 +28013,24 @@ export namespace compute_beta { * Output only. Resources failed. */ failedResourcesCount?: string | null; + /** + * Output only. Status of each location in the wave. Map keys (locations) must be + * specified like "us-east1" or "asia-west1-a". + */ + locationStatus?: { + [ + key: string + ]: Schema$RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus; + } | null; + } + /** + * Represents the status of a location in a wave. + */ + export interface Schema$RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus { + /** + * Output only. Location state of the wave. + */ + state?: string | null; } /** * Represents a Route resource. @@ -29331,20 +30267,20 @@ export namespace compute_beta { ddosAdaptiveProtection?: string | null; /** * DDoS Protection for Network Load Balancers (and VMs with public IPs) - * builds DDos mitigations that minimize collateral damage. It quantifies + * builds DDoS mitigations that minimize collateral damage. It quantifies * this as the fraction of a non-abuse baseline that's inadvertently * blocked. * * Rules whose collateral damage exceeds ddosImpactedBaselineThreshold will * not be deployed. Using a lower value will prioritize keeping collateral * damage low, possibly at the cost of its effectiveness in rate limiting - * some or all of the attack. It should typically be unset, so Advanced DDos + * some or all of the attack. It should typically be unset, so Advanced DDoS * (and Adaptive Protection) uses the best mitigation it can find. Setting * the threshold is advised if there are logs for false positive detections - * with high collateral damage, and will cause Advanced DDos to attempt to - * find a less aggressive rule that satisfies the constraint; Failing that, - * it will fall back to no mitigation (smaller attack) or to broader network - * throttles (larger attack). + * with high collateral damage, and will cause Advanced DDoS to attempt to + * find a less aggressive rule that satisfies the constraint. If a suitable + * rule cannot be found, the system falls back to either no mitigation for + * smaller attacks or broader network throttles for larger ones. */ ddosImpactedBaselineThreshold?: number | null; ddosProtection?: string | null; @@ -30804,11 +31740,12 @@ export namespace compute_beta { snapshotEncryptionKey?: Schema$CustomerEncryptionKey; /** * Output only. [Output Only] The unique ID of the snapshot group that this snapshot - * belongs to. + * belongs to. The usage of snapshot group feature is restricted. */ snapshotGroupId?: string | null; /** - * Output only. [Output only] The snapshot group that this snapshot belongs to. + * Output only. [Output only] The snapshot group that this snapshot belongs to. The usage + * of snapshot group feature is restricted. */ snapshotGroupName?: string | null; /** @@ -31074,8 +32011,8 @@ export namespace compute_beta { * Input only. Resource manager tags to be bound to the snapshot. Tag keys and values have * the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -31158,6 +32095,19 @@ export namespace compute_beta { message?: string; } | null; } + export interface Schema$SnapshotUpdateKmsKeyRequest { + /** + * Optional. The new KMS key to replace the current one on the snapshot. If empty, the + * snapshot will be re-encrypted using the primary version of the snapshot's + * current KMS key. + * + * The KMS key can be provided in the following formats: + * + * + * - projects/project_id/locations/region/keyRings/key_ring/cryptoKeys/key + */ + kmsKeyName?: string | null; + } export interface Schema$SourceDiskEncryptionKey { /** * Thecustomer-supplied @@ -31730,10 +32680,21 @@ export namespace compute_beta { * dash. */ name?: string | null; + /** + * One of DEFAULT, ENABLED, orDEFERRED. Controls whether the load balancer negotiates + * X25519MLKEM768 key exchange when clients advertise support for it. When set + * to DEFAULT, or if no SSL Policy is attached to the target + * proxy, the load balancer disallows X25519MLKEM768 key exchange before + * October 2026, and allows it afterward. When set to ENABLED, + * the load balancer allows X25519MLKEM768 key exchange. When set toDEFERRED, the load balancer disallows X25519MLKEM768 key + * exchange until October 2027, and allows it afterward. + */ + postQuantumKeyExchange?: string | null; /** * Profile specifies the set of SSL features that can be used by the load - * balancer when negotiating SSL with clients. This can be one ofCOMPATIBLE, MODERN, RESTRICTED, orCUSTOM. If using CUSTOM, the set of SSL features - * to enable must be specified in the customFeatures field. + * balancer when negotiating SSL with clients. This can be one ofCOMPATIBLE, MODERN, RESTRICTED,FIPS_202205, or CUSTOM. If usingCUSTOM, the set of SSL features to enable must be specified in + * the customFeatures field. If using FIPS_202205, + * the min_tls_version field must be set to TLS_1_2. */ profile?: string | null; /** @@ -32160,8 +33121,8 @@ export namespace compute_beta { * Input only. Resource manager tags to be bound to the storage pool. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -32833,6 +33794,17 @@ export namespace compute_beta { * field. */ ipCidrRange?: string | null; + /** + * Reference to a Public Delegated Prefix (PDP) for BYOIP. + * This field should be specified for configuring BYOGUA internal IPv6 + * secondary range. + * When specified along with the ip_cidr_range, the ip_cidr_range must lie + * within the PDP referenced by the `ipCollection` field. + * When specified without the ip_cidr_range, the range is auto-allocated + * from the PDP referenced by the `ipCollection` field. + */ + ipCollection?: string | null; + ipVersion?: string | null; /** * The name associated with this subnetwork secondary range, used when adding * an alias IP/IPv6 range to a VM instance. @@ -34935,6 +35907,10 @@ export namespace compute_beta { * [Output Only] Server-defined URL for the resource. */ selfLink?: string | null; + /** + * Output only. [Output Only] The status of the URL map. + */ + status?: Schema$UrlMapStatus; /** * The list of expected URL mapping tests. Request to update theUrlMap succeeds only if all test cases pass. You can specify a * maximum of 100 tests per UrlMap. @@ -34981,6 +35957,19 @@ export namespace compute_beta { message?: string; } | null; } + /** + * Message representing the quota usage for a UrlMap. + */ + export interface Schema$UrlMapQuotaUsage { + /** + * Output only. The number of forwarding rules that uses this UrlMap. + */ + forwardingRules?: number | null; + /** + * Output only. The number of quota units calculated for this UrlMap. + */ + units?: string | null; + } export interface Schema$UrlMapReference { urlMap?: string | null; } @@ -35037,6 +36026,15 @@ export namespace compute_beta { message?: string; } | null; } + /** + * [Output Only] The status of the URL map. + */ + export interface Schema$UrlMapStatus { + /** + * Output only. Summary of quota usage for given UrlMap. + */ + quotaUsage?: Schema$UrlMapQuotaUsage; + } export interface Schema$UrlMapsValidateRequest { /** * Specifies the load balancer type(s) this validation request is for. UseEXTERNAL_MANAGED for global external Application Load @@ -35142,6 +36140,10 @@ export namespace compute_beta { * If false, 'loadErrors' indicates the reasons. */ loadSucceeded?: boolean | null; + /** + * Output only. Summary of quota usage for given UrlMap. + */ + quotaUsage?: Schema$UrlMapQuotaUsage; testFailures?: Schema$TestFailure[]; /** * If successfully loaded, this field indicates whether the test passed. @@ -38129,6 +39131,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -38504,6 +39507,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -38933,6 +39937,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -39126,6 +40131,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -39959,35 +40965,384 @@ export namespace compute_beta { return createAPIRequest(parameters); } } - } - export interface Params$Resource$Advice$Calendarmode extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; /** - * Name of the region for this request. + * Advice on making real-time decisions (such as choosing zone or + * machine types) during deployment to maximize your chances of obtaining + * capacity. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.advice.capacity({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "distributionPolicy": {}, + * // "instanceFlexibilityPolicy": {}, + * // "instanceProperties": {}, + * // "size": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "recommendations": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - region?: string; + capacity( + params: Params$Resource$Advice$Capacity, + options: StreamMethodOptions + ): Promise>; + capacity( + params?: Params$Resource$Advice$Capacity, + options?: MethodOptions + ): Promise>; + capacity( + params: Params$Resource$Advice$Capacity, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + capacity( + params: Params$Resource$Advice$Capacity, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + capacity( + params: Params$Resource$Advice$Capacity, + callback: BodyResponseCallback + ): void; + capacity( + callback: BodyResponseCallback + ): void; + capacity( + paramsOrCallback?: + | Params$Resource$Advice$Capacity + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Advice$Capacity; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$CalendarModeAdviceRequest; - } + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Advice$Capacity; + options = {}; + } - export class Resource$Autoscalers { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/regions/{region}/advice/capacity' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Retrieves an aggregated list of autoscalers. - * - * To prevent failure, it is recommended that you set the - * `returnPartialSuccess` parameter to `true`. + * Gets the capacity history. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.advice.capacityHistory({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instanceProperties": {}, + * // "locationPolicy": {}, + * // "types": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "location": "my_location", + * // "machineType": "my_machineType", + * // "preemptionHistory": [], + * // "priceHistory": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + capacityHistory( + params: Params$Resource$Advice$Capacityhistory, + options: StreamMethodOptions + ): Promise>; + capacityHistory( + params?: Params$Resource$Advice$Capacityhistory, + options?: MethodOptions + ): Promise>; + capacityHistory( + params: Params$Resource$Advice$Capacityhistory, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + capacityHistory( + params: Params$Resource$Advice$Capacityhistory, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + capacityHistory( + params: Params$Resource$Advice$Capacityhistory, + callback: BodyResponseCallback + ): void; + capacityHistory( + callback: BodyResponseCallback + ): void; + capacityHistory( + paramsOrCallback?: + | Params$Resource$Advice$Capacityhistory + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advice$Capacityhistory; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Advice$Capacityhistory; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/regions/{region}/advice/capacityHistory' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Advice$Calendarmode extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CalendarModeAdviceRequest; + } + export interface Params$Resource$Advice$Capacity extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CapacityAdviceRequest; + } + export interface Params$Resource$Advice$Capacityhistory extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CapacityHistoryRequest; + } + + export class Resource$Autoscalers { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves an aggregated list of autoscalers. + * + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -40302,6 +41657,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -40664,6 +42020,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -41109,6 +42466,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -41473,6 +42831,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -42065,6 +43424,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -42501,6 +43861,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -42687,6 +44048,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -43200,6 +44562,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -43881,6 +45244,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -44072,6 +45436,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -44593,6 +45958,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -45385,6 +46751,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -45824,6 +47191,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -46010,6 +47378,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -46918,6 +48287,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -47639,6 +49009,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -47830,6 +49201,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -48182,6 +49554,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -48582,6 +49955,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -49421,6 +50795,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -49767,6 +51142,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -50209,6 +51585,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -50624,6 +52001,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -51067,6 +52445,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -51259,6 +52638,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -51497,6 +52877,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -51685,6 +53066,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -52285,6 +53667,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -52711,6 +54094,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -52906,6 +54290,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -53258,6 +54643,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -53450,6 +54836,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -53637,6 +55024,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -53831,6 +55219,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -54243,6 +55632,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -54360,6 +55750,200 @@ export namespace compute_beta { return createAPIRequest(parameters); } } + + /** + * Rotates the customer-managed + * encryption key to the latest version for the specified persistent disk. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.disks.updateKmsKey({ + * // Name of the Disk resource, should conform to RFC1035. + * disk: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "kmsKeyName": "my_kmsKeyName" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + updateKmsKey( + params: Params$Resource$Disks$Updatekmskey, + options: StreamMethodOptions + ): Promise>; + updateKmsKey( + params?: Params$Resource$Disks$Updatekmskey, + options?: MethodOptions + ): Promise>; + updateKmsKey( + params: Params$Resource$Disks$Updatekmskey, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateKmsKey( + params: Params$Resource$Disks$Updatekmskey, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateKmsKey( + params: Params$Resource$Disks$Updatekmskey, + callback: BodyResponseCallback + ): void; + updateKmsKey(callback: BodyResponseCallback): void; + updateKmsKey( + paramsOrCallback?: + | Params$Resource$Disks$Updatekmskey + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Disks$Updatekmskey; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Disks$Updatekmskey; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/zones/{zone}/disks/{disk}/updateKmsKey' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'disk'], + pathParams: ['disk', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Disks$Addresourcepolicies extends StandardParameters { @@ -55110,6 +56694,41 @@ export namespace compute_beta { */ requestBody?: Schema$Disk; } + export interface Params$Resource$Disks$Updatekmskey extends StandardParameters { + /** + * Name of the Disk resource, should conform to RFC1035. + */ + disk?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DiskUpdateKmsKeyRequest; + } export class Resource$Disksettings { context: APIRequestContext; @@ -55333,6 +56952,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -56462,6 +58082,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -56816,6 +58437,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -57234,6 +58856,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -57791,6 +59414,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -57994,6 +59618,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -58199,6 +59824,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -58380,6 +60006,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -58559,6 +60186,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -59543,6 +61171,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -60117,6 +61746,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -60321,6 +61951,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -60526,6 +62157,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -60734,6 +62366,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -60915,6 +62548,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -61096,6 +62730,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -61280,6 +62915,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -62323,6 +63959,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -62694,6 +64331,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -63139,6 +64777,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -63507,6 +65146,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -64198,6 +65838,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -64359,18 +66000,24 @@ export namespace compute_beta { * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * view: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "IPAddress": "my_IPAddress", + * // "IPAddresses": [], * // "IPProtocol": "my_IPProtocol", * // "allPorts": false, * // "allowGlobalAccess": false, * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "availabilityGroup": "my_availabilityGroup", * // "backendService": "my_backendService", * // "baseForwardingRule": "my_baseForwardingRule", + * // "childForwardingRules": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", @@ -64389,6 +66036,7 @@ export namespace compute_beta { * // "network": "my_network", * // "networkTier": "my_networkTier", * // "noAutomateDnsZone": false, + * // "parentForwardingRule": "my_parentForwardingRule", * // "portRange": "my_portRange", * // "ports": [], * // "pscConnectionId": "my_pscConnectionId", @@ -64560,12 +66208,16 @@ export namespace compute_beta { * // request body parameters * // { * // "IPAddress": "my_IPAddress", + * // "IPAddresses": [], * // "IPProtocol": "my_IPProtocol", * // "allPorts": false, * // "allowGlobalAccess": false, * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "availabilityGroup": "my_availabilityGroup", * // "backendService": "my_backendService", * // "baseForwardingRule": "my_baseForwardingRule", + * // "childForwardingRules": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", @@ -64584,6 +66236,7 @@ export namespace compute_beta { * // "network": "my_network", * // "networkTier": "my_networkTier", * // "noAutomateDnsZone": false, + * // "parentForwardingRule": "my_parentForwardingRule", * // "portRange": "my_portRange", * // "ports": [], * // "pscConnectionId": "my_pscConnectionId", @@ -64609,6 +66262,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -65031,12 +66685,16 @@ export namespace compute_beta { * // request body parameters * // { * // "IPAddress": "my_IPAddress", + * // "IPAddresses": [], * // "IPProtocol": "my_IPProtocol", * // "allPorts": false, * // "allowGlobalAccess": false, * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "availabilityGroup": "my_availabilityGroup", * // "backendService": "my_backendService", * // "baseForwardingRule": "my_baseForwardingRule", + * // "childForwardingRules": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", @@ -65055,6 +66713,7 @@ export namespace compute_beta { * // "network": "my_network", * // "networkTier": "my_networkTier", * // "noAutomateDnsZone": false, + * // "parentForwardingRule": "my_parentForwardingRule", * // "portRange": "my_portRange", * // "ports": [], * // "pscConnectionId": "my_pscConnectionId", @@ -65080,6 +66739,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -65275,6 +66935,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -65468,6 +67129,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -65908,6 +67570,10 @@ export namespace compute_beta { * Name of the region scoping this request. */ region?: string; + /** + * + */ + view?: string; } export interface Params$Resource$Forwardingrules$Insert extends StandardParameters { /** @@ -66505,6 +68171,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -66689,6 +68356,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -66861,6 +68529,7 @@ export namespace compute_beta { * // "autoCreatedReservationsDuration": {}, * // "autoDeleteAutoCreatedReservations": false, * // "commitmentInfo": {}, + * // "confidentialComputeType": "my_confidentialComputeType", * // "creationTimestamp": "my_creationTimestamp", * // "deploymentType": "my_deploymentType", * // "description": "my_description", @@ -66869,6 +68538,7 @@ export namespace compute_beta { * // "kind": "my_kind", * // "name": "my_name", * // "namePrefix": "my_namePrefix", + * // "params": {}, * // "planningStatus": "my_planningStatus", * // "protectionTier": "my_protectionTier", * // "reservationMode": "my_reservationMode", @@ -67044,6 +68714,7 @@ export namespace compute_beta { * // "autoCreatedReservationsDuration": {}, * // "autoDeleteAutoCreatedReservations": false, * // "commitmentInfo": {}, + * // "confidentialComputeType": "my_confidentialComputeType", * // "creationTimestamp": "my_creationTimestamp", * // "deploymentType": "my_deploymentType", * // "description": "my_description", @@ -67052,6 +68723,7 @@ export namespace compute_beta { * // "kind": "my_kind", * // "name": "my_name", * // "namePrefix": "my_namePrefix", + * // "params": {}, * // "planningStatus": "my_planningStatus", * // "protectionTier": "my_protectionTier", * // "reservationMode": "my_reservationMode", @@ -67077,6 +68749,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -67510,6 +69183,7 @@ export namespace compute_beta { * // "autoCreatedReservationsDuration": {}, * // "autoDeleteAutoCreatedReservations": false, * // "commitmentInfo": {}, + * // "confidentialComputeType": "my_confidentialComputeType", * // "creationTimestamp": "my_creationTimestamp", * // "deploymentType": "my_deploymentType", * // "description": "my_description", @@ -67518,6 +69192,7 @@ export namespace compute_beta { * // "kind": "my_kind", * // "name": "my_name", * // "namePrefix": "my_namePrefix", + * // "params": {}, * // "planningStatus": "my_planningStatus", * // "protectionTier": "my_protectionTier", * // "reservationMode": "my_reservationMode", @@ -67543,6 +69218,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -68104,6 +69780,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -68477,6 +70154,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -68901,6 +70579,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -69079,6 +70758,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -69653,6 +71333,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -69813,18 +71494,24 @@ export namespace compute_beta { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * + * view: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "IPAddress": "my_IPAddress", + * // "IPAddresses": [], * // "IPProtocol": "my_IPProtocol", * // "allPorts": false, * // "allowGlobalAccess": false, * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "availabilityGroup": "my_availabilityGroup", * // "backendService": "my_backendService", * // "baseForwardingRule": "my_baseForwardingRule", + * // "childForwardingRules": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", @@ -69843,6 +71530,7 @@ export namespace compute_beta { * // "network": "my_network", * // "networkTier": "my_networkTier", * // "noAutomateDnsZone": false, + * // "parentForwardingRule": "my_parentForwardingRule", * // "portRange": "my_portRange", * // "ports": [], * // "pscConnectionId": "my_pscConnectionId", @@ -70012,12 +71700,16 @@ export namespace compute_beta { * // request body parameters * // { * // "IPAddress": "my_IPAddress", + * // "IPAddresses": [], * // "IPProtocol": "my_IPProtocol", * // "allPorts": false, * // "allowGlobalAccess": false, * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "availabilityGroup": "my_availabilityGroup", * // "backendService": "my_backendService", * // "baseForwardingRule": "my_baseForwardingRule", + * // "childForwardingRules": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", @@ -70036,6 +71728,7 @@ export namespace compute_beta { * // "network": "my_network", * // "networkTier": "my_networkTier", * // "noAutomateDnsZone": false, + * // "parentForwardingRule": "my_parentForwardingRule", * // "portRange": "my_portRange", * // "ports": [], * // "pscConnectionId": "my_pscConnectionId", @@ -70061,6 +71754,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -70479,12 +72173,16 @@ export namespace compute_beta { * // request body parameters * // { * // "IPAddress": "my_IPAddress", + * // "IPAddresses": [], * // "IPProtocol": "my_IPProtocol", * // "allPorts": false, * // "allowGlobalAccess": false, * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "availabilityGroup": "my_availabilityGroup", * // "backendService": "my_backendService", * // "baseForwardingRule": "my_baseForwardingRule", + * // "childForwardingRules": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", @@ -70503,6 +72201,7 @@ export namespace compute_beta { * // "network": "my_network", * // "networkTier": "my_networkTier", * // "noAutomateDnsZone": false, + * // "parentForwardingRule": "my_parentForwardingRule", * // "portRange": "my_portRange", * // "ports": [], * // "pscConnectionId": "my_pscConnectionId", @@ -70528,6 +72227,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -70707,6 +72407,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -70898,6 +72599,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -71209,6 +72911,10 @@ export namespace compute_beta { * Project ID for this request. */ project?: string; + /** + * + */ + view?: string; } export interface Params$Resource$Globalforwardingrules$Insert extends StandardParameters { /** @@ -71512,6 +73218,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -71699,6 +73406,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -71890,6 +73598,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -72282,6 +73991,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -73677,6 +75387,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -74097,6 +75808,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -74666,6 +76378,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -75215,6 +76928,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -75394,6 +77108,7 @@ export namespace compute_beta { * // "name": "my_name", * // "parentPrefix": "my_parentPrefix", * // "publicDelegatedSubPrefixs": [], + * // "purpose": "my_purpose", * // "region": "my_region", * // "selfLink": "my_selfLink", * // "status": "my_status" @@ -75569,6 +77284,7 @@ export namespace compute_beta { * // "name": "my_name", * // "parentPrefix": "my_parentPrefix", * // "publicDelegatedSubPrefixs": [], + * // "purpose": "my_purpose", * // "region": "my_region", * // "selfLink": "my_selfLink", * // "status": "my_status" @@ -75584,6 +77300,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -76018,6 +77735,7 @@ export namespace compute_beta { * // "name": "my_name", * // "parentPrefix": "my_parentPrefix", * // "publicDelegatedSubPrefixs": [], + * // "purpose": "my_purpose", * // "region": "my_region", * // "selfLink": "my_selfLink", * // "status": "my_status" @@ -76033,6 +77751,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -76699,6 +78418,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -77058,6 +78778,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -77501,6 +79222,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -78268,6 +79990,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -78640,6 +80363,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -79087,6 +80811,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -79454,6 +81179,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -80007,6 +81733,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -80364,6 +82091,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -80805,6 +82533,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -81164,6 +82893,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -81598,6 +83328,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -81955,6 +83686,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -82398,6 +84130,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -82757,6 +84490,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -83360,6 +85094,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -83555,6 +85290,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -84292,6 +86028,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -84759,6 +86496,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -85092,6 +86830,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -85754,6 +87493,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -85956,6 +87696,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -86363,6 +88104,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -87077,6 +88819,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -87520,6 +89263,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -87705,7 +89449,8 @@ export namespace compute_beta { * requestBody: { * // request body parameters * // { - * // "acceleratorTopologyActions": {} + * // "acceleratorTopologyActions": {}, + * // "acceleratorTopologyConfigurations": {} * // } * }, * }); @@ -87718,6 +89463,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -87918,6 +89664,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -88076,6 +89823,9 @@ export namespace compute_beta { * const res = await compute.instanceGroupManagers.delete({ * // The name of the managed instance group to delete. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance deletion even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -88106,6 +89856,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -88275,6 +90026,9 @@ export namespace compute_beta { * const res = await compute.instanceGroupManagers.deleteInstances({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance deletion even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -88314,6 +90068,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -88497,6 +90252,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -89084,6 +90840,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -90325,6 +92082,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -90522,6 +92280,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -90692,6 +92451,9 @@ export namespace compute_beta { * const res = await compute.instanceGroupManagers.recreateInstances({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance recreation even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -90730,6 +92492,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -90941,6 +92704,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -91150,6 +92914,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -91358,6 +93123,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -91553,6 +93319,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -91751,6 +93518,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -91951,6 +93719,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -92159,6 +93928,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -92338,6 +94108,9 @@ export namespace compute_beta { * const res = await compute.instanceGroupManagers.stopInstances({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance stopping even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -92377,6 +94150,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -92595,6 +94369,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -92993,6 +94768,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -93190,6 +94966,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -93567,6 +95344,11 @@ export namespace compute_beta { * The name of the managed instance group to delete. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance deletion even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -93598,6 +95380,11 @@ export namespace compute_beta { * The name of the managed instance group. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance deletion even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -94248,6 +96035,11 @@ export namespace compute_beta { * The name of the managed instance group. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance recreation even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -94537,6 +96329,11 @@ export namespace compute_beta { * The name of the managed instance group. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance stopping even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -94781,6 +96578,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -95223,6 +97021,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -95591,6 +97390,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -96290,6 +98090,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -96484,6 +98285,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -97406,6 +99208,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -97588,6 +99391,7 @@ export namespace compute_beta { * // { * // "accessConfigs": [], * // "aliasIpRanges": [], + * // "aliasIpv6Ranges": [], * // "enableVpcScopedDns": false, * // "fingerprint": "my_fingerprint", * // "igmpQuery": "my_igmpQuery", @@ -97604,6 +99408,7 @@ export namespace compute_beta { * // "nicType": "my_nicType", * // "parentNicName": "my_parentNicName", * // "queueCount": 0, + * // "serviceClassId": "my_serviceClassId", * // "stackType": "my_stackType", * // "subnetwork": "my_subnetwork", * // "vlan": 0 @@ -97619,6 +99424,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -97813,6 +99619,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -98287,6 +100094,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -98486,6 +100294,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -98673,6 +100482,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -98860,6 +100670,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -99057,6 +100868,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -99246,6 +101058,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -100949,6 +102762,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -101628,6 +103442,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -101814,6 +103629,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -102006,6 +103822,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -102201,6 +104018,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -102387,6 +104205,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -102580,6 +104399,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -102903,6 +104723,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -103094,6 +104915,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -103453,6 +105275,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -103646,6 +105469,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -103839,6 +105663,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -104034,6 +105859,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -104229,6 +106055,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -104422,6 +106249,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -104636,6 +106464,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -104832,6 +106661,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -105027,6 +106857,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -105222,6 +107053,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -105420,6 +107252,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -105616,6 +107449,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -105804,6 +107638,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -105992,6 +107827,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -106185,6 +108021,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -106382,6 +108219,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -106576,6 +108414,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -106890,6 +108729,9 @@ export namespace compute_beta { * * // Do the magic * const res = await compute.instances.update({ + * // Whether to discard local SSDs from the instance during restart + * // default value is false. + * discardLocalSsd: 'placeholder-value', * // Name of the instance resource to update. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Specifies the action to take when updating an instance even if the @@ -106991,6 +108833,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -107196,6 +109039,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -107391,6 +109235,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -107579,6 +109424,7 @@ export namespace compute_beta { * // { * // "accessConfigs": [], * // "aliasIpRanges": [], + * // "aliasIpv6Ranges": [], * // "enableVpcScopedDns": false, * // "fingerprint": "my_fingerprint", * // "igmpQuery": "my_igmpQuery", @@ -107595,6 +109441,7 @@ export namespace compute_beta { * // "nicType": "my_nicType", * // "parentNicName": "my_parentNicName", * // "queueCount": 0, + * // "serviceClassId": "my_serviceClassId", * // "stackType": "my_stackType", * // "subnetwork": "my_subnetwork", * // "vlan": 0 @@ -107610,6 +109457,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -107809,6 +109657,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -108008,6 +109857,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -109950,6 +111800,11 @@ export namespace compute_beta { requestBody?: Schema$TestPermissionsRequest; } export interface Params$Resource$Instances$Update extends StandardParameters { + /** + * Whether to discard local SSDs from the instance during restart + * default value is false. + */ + discardLocalSsd?: boolean; /** * Name of the instance resource to update. */ @@ -110412,6 +112267,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -110905,6 +112761,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -111411,6 +113268,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -112494,6 +114352,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -113008,6 +114867,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -114267,6 +116127,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -114797,6 +116658,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -115389,6 +117251,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -116132,6 +117995,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -116803,6 +118667,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -117258,6 +119123,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -118285,6 +120151,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -118719,6 +120586,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -119203,6 +121071,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -119398,6 +121267,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -120137,6 +122007,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -120320,6 +122191,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -120980,6 +122852,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -121429,6 +123302,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -123266,6 +125140,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -123989,6 +125864,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -124450,6 +126326,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -124629,6 +126506,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -125209,15 +127087,25 @@ export namespace compute_beta { * * // Example response * // { + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "id": "my_id", + * // "incompatibleLicenses": [], * // "kind": "my_kind", * // "licenseAlias": [], + * // "minimumRetention": {}, + * // "multiTenantOnly": false, * // "name": "my_name", + * // "osLicense": false, + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], * // "selfLink": "my_selfLink", + * // "soleTenantOnly": false, * // "state": "my_state", - * // "transferable": false + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -125316,7 +127204,8 @@ export namespace compute_beta { } /** - * Returns permissions that a caller has on the specified resource. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * *Caution* This resource is intended * for use only by third-party partners who are creatingCloud Marketplace * images. @@ -125352,26 +127241,23 @@ export namespace compute_beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenseCodes.testIamPermissions({ + * const res = await compute.licenseCodes.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name or id of the resource for this request. * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -125387,57 +127273,53 @@ export namespace compute_beta { * @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$Licensecodes$Testiampermissions, + getIamPolicy( + params: Params$Resource$Licensecodes$Getiampolicy, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Licensecodes$Testiampermissions, + getIamPolicy( + params?: Params$Resource$Licensecodes$Getiampolicy, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, + ): Promise>; + getIamPolicy( + params: Params$Resource$Licensecodes$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Licensecodes$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Licensecodes$Getiampolicy, + callback: BodyResponseCallback ): void; - testIamPermissions( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Licensecodes$Testiampermissions - | BodyResponseCallback + | Params$Resource$Licensecodes$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licensecodes$Testiampermissions; + {}) as Params$Resource$Licensecodes$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licensecodes$Testiampermissions; + params = {} as Params$Resource$Licensecodes$Getiampolicy; options = {}; } @@ -125452,9 +127334,9 @@ export namespace compute_beta { { url: ( rootUrl + - '/compute/beta/projects/{project}/global/licenseCodes/{resource}/testIamPermissions' + '/compute/beta/projects/{project}/global/licenseCodes/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -125465,50 +127347,18 @@ export namespace compute_beta { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Licensecodes$Get extends StandardParameters { - /** - * Number corresponding to the License code resource to return. - */ - licenseCode?: string; /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Licensecodes$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - - export class Resource$Licenses { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Deletes the specified license. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * *Caution* This resource is intended * for use only by third-party partners who are creatingCloud Marketplace * images. @@ -125543,57 +127393,31 @@ export namespace compute_beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.delete({ - * // Name of the license resource to delete. - * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenseCodes.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -125609,52 +127433,53 @@ export namespace compute_beta { * @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$Licenses$Delete, + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Licenses$Delete, + setIamPolicy( + params?: Params$Resource$Licensecodes$Setiampolicy, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Licenses$Delete, + ): Promise>; + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Licenses$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Licenses$Delete, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Licenses$Delete - | BodyResponseCallback + | Params$Resource$Licensecodes$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Delete; + let params = (paramsOrCallback || + {}) as Params$Resource$Licensecodes$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Delete; + params = {} as Params$Resource$Licensecodes$Setiampolicy; options = {}; } @@ -125669,30 +127494,436 @@ export namespace compute_beta { { url: ( rootUrl + - '/compute/beta/projects/{project}/global/licenses/{license}' + '/compute/beta/projects/{project}/global/licenseCodes/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'license'], - pathParams: ['license', 'project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified License resource. + * Returns permissions that a caller has on the specified resource. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.licenseCodes.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Licensecodes$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Licensecodes$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Licensecodes$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Licensecodes$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Licensecodes$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/global/licenseCodes/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Licensecodes$Get extends StandardParameters { + /** + * Number corresponding to the License code resource to return. + */ + licenseCode?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Licensecodes$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Licensecodes$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Licensecodes$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Licenses { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified license. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.licenses.delete({ + * // Name of the license resource to delete. + * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Licenses$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Licenses$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Licenses$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Licenses$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Licenses$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Licenses$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Licenses$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/global/licenses/{license}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'license'], + pathParams: ['license', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the specified License resource. * *Caution* This resource is intended * for use only by third-party partners who are creatingCloud Marketplace * images. @@ -126107,6 +128338,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -126882,6 +129114,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -127318,6 +129551,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -127846,6 +130080,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -128415,6 +130650,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -130151,6 +132387,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -130669,6 +132906,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -131118,6 +133356,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -132287,6 +134526,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -132649,6 +134889,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -132855,6 +135096,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -133558,6 +135800,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -133750,6 +135993,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -133945,6 +136189,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -134344,6 +136589,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -135730,6 +137976,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -135942,6 +138189,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -136157,6 +138405,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -136603,6 +138852,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -136785,6 +139035,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -137784,6 +140035,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -138225,6 +140477,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -138433,6 +140686,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -138644,6 +140898,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -138828,6 +141083,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -139013,6 +141269,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -139200,6 +141457,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -140944,6 +143202,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -141136,6 +143395,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -141320,6 +143580,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -141845,6 +144106,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -142534,6 +144796,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -142723,6 +144986,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -142914,6 +145178,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -143098,6 +145363,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -143446,6 +145712,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -144171,6 +146438,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -144609,6 +146877,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -144801,6 +147070,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -145326,6 +147596,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -146010,6 +148281,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -146202,6 +148474,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -146553,6 +148826,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -146746,6 +149020,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -148037,6 +150312,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -148556,6 +150832,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -150579,6 +152856,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -150787,6 +153065,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -150973,6 +153252,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -151156,6 +153436,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -151861,6 +154142,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -152683,6 +154965,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -152898,6 +155181,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -153110,6 +155394,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -153296,6 +155581,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -153483,6 +155769,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -154453,6 +156740,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -154814,6 +157102,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -155259,6 +157548,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -156368,6 +158658,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -156701,6 +158992,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -156889,6 +159181,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -157068,6 +159361,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -157257,6 +159551,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -158254,6 +160549,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -158448,6 +160744,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -158638,6 +160935,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -158828,6 +161126,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -159020,6 +161319,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -159212,6 +161512,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -159408,6 +161709,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -160111,6 +162413,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -160294,6 +162597,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -160658,6 +162962,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -161105,6 +163410,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -161287,6 +163593,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -161991,6 +164298,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -162175,6 +164483,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -162356,6 +164665,7 @@ export namespace compute_beta { * // "name": "my_name", * // "parentPrefix": "my_parentPrefix", * // "publicDelegatedSubPrefixs": [], + * // "purpose": "my_purpose", * // "region": "my_region", * // "selfLink": "my_selfLink", * // "status": "my_status" @@ -162533,6 +164843,7 @@ export namespace compute_beta { * // "name": "my_name", * // "parentPrefix": "my_parentPrefix", * // "publicDelegatedSubPrefixs": [], + * // "purpose": "my_purpose", * // "region": "my_region", * // "selfLink": "my_selfLink", * // "status": "my_status" @@ -162548,6 +164859,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -162986,6 +165298,7 @@ export namespace compute_beta { * // "name": "my_name", * // "parentPrefix": "my_parentPrefix", * // "publicDelegatedSubPrefixs": [], + * // "purpose": "my_purpose", * // "region": "my_region", * // "selfLink": "my_selfLink", * // "status": "my_status" @@ -163001,6 +165314,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -163186,6 +165500,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -163777,6 +166092,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -164140,6 +166456,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -164588,6 +166905,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -164952,6 +167270,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -165421,6 +167740,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -165940,6 +168260,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -166632,6 +168953,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -167532,6 +169854,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -168287,6 +170610,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -169016,6 +171340,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -169370,6 +171695,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -169775,6 +172101,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -170688,6 +173015,7 @@ export namespace compute_beta { * // "licenseResource": {}, * // "mergeSourceCommitments": [], * // "name": "my_name", + * // "params": {}, * // "plan": "my_plan", * // "region": "my_region", * // "reservations": [], @@ -170868,6 +173196,7 @@ export namespace compute_beta { * // "licenseResource": {}, * // "mergeSourceCommitments": [], * // "name": "my_name", + * // "params": {}, * // "plan": "my_plan", * // "region": "my_region", * // "reservations": [], @@ -170891,6 +173220,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -171484,6 +173814,7 @@ export namespace compute_beta { * // "licenseResource": {}, * // "mergeSourceCommitments": [], * // "name": "my_name", + * // "params": {}, * // "plan": "my_plan", * // "region": "my_region", * // "reservations": [], @@ -171507,6 +173838,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -171700,6 +174032,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -172523,6 +174856,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -172800,6 +175134,159 @@ export namespace compute_beta { } } + /** + * Gets the most recent health check results for this + * regional CompositeHealthCheck. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionCompositeHealthChecks.getHealth({ + * // Name of the CompositeHealthCheck resource to get health for. + * compositeHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "healthSources": [], + * // "healthState": "my_healthState", + * // "kind": "my_kind" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getHealth( + params: Params$Resource$Regioncompositehealthchecks$Gethealth, + options: StreamMethodOptions + ): Promise>; + getHealth( + params?: Params$Resource$Regioncompositehealthchecks$Gethealth, + options?: MethodOptions + ): Promise>; + getHealth( + params: Params$Resource$Regioncompositehealthchecks$Gethealth, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getHealth( + params: Params$Resource$Regioncompositehealthchecks$Gethealth, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getHealth( + params: Params$Resource$Regioncompositehealthchecks$Gethealth, + callback: BodyResponseCallback + ): void; + getHealth( + callback: BodyResponseCallback + ): void; + getHealth( + paramsOrCallback?: + | Params$Resource$Regioncompositehealthchecks$Gethealth + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioncompositehealthchecks$Gethealth; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioncompositehealthchecks$Gethealth; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}/getHealth' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'compositeHealthCheck'], + pathParams: ['compositeHealthCheck', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Create a CompositeHealthCheck in the specified project in the given region * using the parameters that are included in the request. @@ -172882,6 +175369,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -173327,6 +175815,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -173769,151 +176258,165 @@ export namespace compute_beta { */ region?: string; } - export interface Params$Resource$Regioncompositehealthchecks$Insert extends StandardParameters { + export interface Params$Resource$Regioncompositehealthchecks$Gethealth extends StandardParameters { /** - * Project ID for this request. + * Name of the CompositeHealthCheck resource to get health for. */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$CompositeHealthCheck; - } - export interface Params$Resource$Regioncompositehealthchecks$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; + compositeHealthCheck?: string; /** - * Project ID for this request. + * Name of the project scoping this request. */ project?: string; /** * Name of the region scoping this request. */ region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; } - export interface Params$Resource$Regioncompositehealthchecks$Patch extends StandardParameters { - /** - * Name of the CompositeHealthCheck to update. The name - * must be 1-63 characters long, and comply with RFC1035. - */ - compositeHealthCheck?: string; + export interface Params$Resource$Regioncompositehealthchecks$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$CompositeHealthCheck; + } + export interface Params$Resource$Regioncompositehealthchecks$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regioncompositehealthchecks$Patch extends StandardParameters { + /** + * Name of the CompositeHealthCheck to update. The name + * must be 1-63 characters long, and comply with RFC1035. + */ + compositeHealthCheck?: string; /** * Project ID for this request. */ @@ -174045,6 +176548,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -174237,6 +176741,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -174472,6 +176977,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -174660,6 +177166,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -175258,6 +177765,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -175687,6 +178195,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -175881,6 +178390,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -176233,6 +178743,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -176426,6 +178937,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -176613,6 +179125,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -176807,6 +179320,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -177218,6 +179732,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -177336,6 +179851,200 @@ export namespace compute_beta { return createAPIRequest(parameters); } } + + /** + * Rotates the customer-managed + * encryption key to the latest version for the specified persistent disk. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionDisks.updateKmsKey({ + * // Name of the Disk resource, should conform to RFC1035. + * disk: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "kmsKeyName": "my_kmsKeyName" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + updateKmsKey( + params: Params$Resource$Regiondisks$Updatekmskey, + options: StreamMethodOptions + ): Promise>; + updateKmsKey( + params?: Params$Resource$Regiondisks$Updatekmskey, + options?: MethodOptions + ): Promise>; + updateKmsKey( + params: Params$Resource$Regiondisks$Updatekmskey, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateKmsKey( + params: Params$Resource$Regiondisks$Updatekmskey, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateKmsKey( + params: Params$Resource$Regiondisks$Updatekmskey, + callback: BodyResponseCallback + ): void; + updateKmsKey(callback: BodyResponseCallback): void; + updateKmsKey( + paramsOrCallback?: + | Params$Resource$Regiondisks$Updatekmskey + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regiondisks$Updatekmskey; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regiondisks$Updatekmskey; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/regions/{region}/disks/{disk}/updateKmsKey' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'disk'], + pathParams: ['disk', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Regiondisks$Addresourcepolicies extends StandardParameters { @@ -177927,6 +180636,41 @@ export namespace compute_beta { */ requestBody?: Schema$Disk; } + export interface Params$Resource$Regiondisks$Updatekmskey extends StandardParameters { + /** + * Name of the Disk resource, should conform to RFC1035. + */ + disk?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionDiskUpdateKmsKeyRequest; + } export class Resource$Regiondisksettings { context: APIRequestContext; @@ -178151,6 +180895,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -179174,6 +181919,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -179536,6 +182282,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -179984,6 +182731,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -180692,6 +183440,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -181069,6 +183818,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -181522,6 +184272,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -181893,6 +184644,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -182292,6 +185044,267 @@ export namespace compute_beta { this.context = context; } + /** + * Retrieves the list of all HealthCheckService resources, + * regional and global, available to the specified project. + * + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthCheckServices.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + aggregatedList( + params: Params$Resource$Regionhealthcheckservices$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Regionhealthcheckservices$Aggregatedlist, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Regionhealthcheckservices$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Regionhealthcheckservices$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Regionhealthcheckservices$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Regionhealthcheckservices$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthcheckservices$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthcheckservices$Aggregatedlist; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/aggregated/healthCheckServices' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Deletes the specified regional HealthCheckService. * @example @@ -182358,6 +185371,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -182720,6 +185734,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -183168,6 +186183,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -183447,6 +186463,125 @@ export namespace compute_beta { } } + export interface Params$Resource$Regionhealthcheckservices$Aggregatedlist 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. + * 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 onresource 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 GoogleRE2 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; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } export interface Params$Resource$Regionhealthcheckservices$Delete extends StandardParameters { /** * Name of the HealthCheckService to delete. The name @@ -184014,6 +187149,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -184290,6 +187426,155 @@ export namespace compute_beta { } } + /** + * Gets the most recent health check results for this + * regional HealthSource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthSources.getHealth({ + * // Name of the HealthSource resource to get health for. + * healthSource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "healthState": "my_healthState", + * // "kind": "my_kind", + * // "sources": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getHealth( + params: Params$Resource$Regionhealthsources$Gethealth, + options: StreamMethodOptions + ): Promise>; + getHealth( + params?: Params$Resource$Regionhealthsources$Gethealth, + options?: MethodOptions + ): Promise>; + getHealth( + params: Params$Resource$Regionhealthsources$Gethealth, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getHealth( + params: Params$Resource$Regionhealthsources$Gethealth, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getHealth( + params: Params$Resource$Regionhealthsources$Gethealth, + callback: BodyResponseCallback + ): void; + getHealth(callback: BodyResponseCallback): void; + getHealth( + paramsOrCallback?: + | Params$Resource$Regionhealthsources$Gethealth + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthsources$Gethealth; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthsources$Gethealth; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/regions/{region}/healthSources/{healthSource}/getHealth' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'healthSource'], + pathParams: ['healthSource', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Create a HealthSource in the specified project in the given region * using the parameters that are included in the request. @@ -184373,6 +187658,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -184817,6 +188103,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -185258,6 +188545,20 @@ export namespace compute_beta { */ region?: string; } + export interface Params$Resource$Regionhealthsources$Gethealth extends StandardParameters { + /** + * Name of the HealthSource resource to get health for. + */ + healthSource?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } export interface Params$Resource$Regionhealthsources$Insert extends StandardParameters { /** * Project ID for this request. @@ -185532,6 +188833,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -185734,6 +189036,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -186140,6 +189443,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -186854,6 +190158,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -187055,6 +190360,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -187239,6 +190545,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -187441,6 +190748,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -187598,6 +190906,9 @@ export namespace compute_beta { * const res = await compute.regionInstanceGroupManagers.delete({ * // Name of the managed instance group to delete. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance deletion even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -187627,6 +190938,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -187796,6 +191108,9 @@ export namespace compute_beta { * const res = await compute.regionInstanceGroupManagers.deleteInstances({ * // Name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance deletion even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -187834,6 +191149,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -188015,6 +191331,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -188436,6 +191753,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -189671,6 +192989,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -189868,6 +193187,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -190038,6 +193358,9 @@ export namespace compute_beta { * const res = await compute.regionInstanceGroupManagers.recreateInstances({ * // Name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance recreation even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -190075,6 +193398,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -190275,6 +193599,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -190485,6 +193810,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -190693,6 +194019,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -190888,6 +194215,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -191084,6 +194412,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -191279,6 +194608,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -191487,6 +194817,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -191667,6 +194998,9 @@ export namespace compute_beta { * const res = await compute.regionInstanceGroupManagers.stopInstances({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance stopping even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -191705,6 +195039,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -191923,6 +195258,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -192322,6 +195658,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -192518,6 +195855,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -192773,6 +196111,11 @@ export namespace compute_beta { * Name of the managed instance group to delete. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance deletion even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -192803,6 +196146,11 @@ export namespace compute_beta { * Name of the managed instance group. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance deletion even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -193421,6 +196769,11 @@ export namespace compute_beta { * Name of the managed instance group. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance recreation even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -193703,6 +197056,11 @@ export namespace compute_beta { * The name of the managed instance group. */ instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance stopping even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; /** * Project ID for this request. */ @@ -194599,6 +197957,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -195257,6 +198616,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -195481,6 +198841,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -195838,6 +199199,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -196463,6 +199825,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -196978,6 +200341,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -197982,6 +201346,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -198512,6 +201877,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -199104,6 +202470,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -200265,6 +203632,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -200617,6 +203985,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -201240,6 +204609,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -201430,6 +204800,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -201626,6 +204997,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -202025,6 +205397,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -203111,6 +206484,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -203326,6 +206700,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -203512,6 +206887,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -203696,6 +207072,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -204701,6 +208078,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -205147,6 +208525,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -205344,6 +208723,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -205555,6 +208935,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -205741,6 +209122,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -205928,6 +209310,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -207040,6 +210423,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -207241,6 +210625,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -207682,6 +211067,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -208360,6 +211746,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -208800,6 +212187,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -209005,6 +212393,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -209194,6 +212583,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -209381,6 +212771,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -210062,6 +213453,265 @@ export namespace compute_beta { this.context = context; } + /** + * Retrieves the list of all NotificationEndpoint resources, + * regional and global, available to the specified project. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionNotificationEndpoints.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + aggregatedList( + params: Params$Resource$Regionnotificationendpoints$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Regionnotificationendpoints$Aggregatedlist, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Regionnotificationendpoints$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Regionnotificationendpoints$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Regionnotificationendpoints$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Regionnotificationendpoints$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionnotificationendpoints$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regionnotificationendpoints$Aggregatedlist; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/aggregated/notificationEndpoints' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Deletes the specified NotificationEndpoint in the given region * @example @@ -210127,6 +213777,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -210480,6 +214131,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -210998,6 +214650,125 @@ export namespace compute_beta { } } + export interface Params$Resource$Regionnotificationendpoints$Aggregatedlist 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. + * 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 onresource 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 GoogleRE2 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; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } export interface Params$Resource$Regionnotificationendpoints$Delete extends StandardParameters { /** * Name of the NotificationEndpoint resource to delete. @@ -211399,6 +215170,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -211824,6 +215596,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -212725,6 +216498,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -212909,6 +216683,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -213456,6 +217231,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -213913,6 +217689,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -214114,6 +217891,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -214286,6 +218064,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -214481,6 +218260,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -215031,6 +218811,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -215600,6 +219381,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -216192,6 +219974,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -216336,7 +220119,165 @@ export namespace compute_beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionSnapshots.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionsnapshots$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Regionsnapshots$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Regionsnapshots$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regionsnapshots$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regionsnapshots$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Regionsnapshots$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionsnapshots$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionsnapshots$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/regions/{region}/snapshots/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Rotates the customer-managed + * encryption key to the latest version for the specified snapshot. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', * ], * }); * @@ -216345,20 +220286,34 @@ export namespace compute_beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSnapshots.testIamPermissions({ + * const res = await compute.regionSnapshots.updateKmsKey({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the snapshot resource to update. Should conform to RFC1035. + * snapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "kmsKeyName": "my_kmsKeyName" * // } * }, * }); @@ -216366,7 +220321,33 @@ export namespace compute_beta { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -216382,57 +220363,53 @@ export namespace compute_beta { * @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$Regionsnapshots$Testiampermissions, + updateKmsKey( + params: Params$Resource$Regionsnapshots$Updatekmskey, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Regionsnapshots$Testiampermissions, + updateKmsKey( + params?: Params$Resource$Regionsnapshots$Updatekmskey, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Regionsnapshots$Testiampermissions, + ): Promise>; + updateKmsKey( + params: Params$Resource$Regionsnapshots$Updatekmskey, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Regionsnapshots$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Regionsnapshots$Testiampermissions, - callback: BodyResponseCallback + updateKmsKey( + params: Params$Resource$Regionsnapshots$Updatekmskey, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + updateKmsKey( + params: Params$Resource$Regionsnapshots$Updatekmskey, + callback: BodyResponseCallback ): void; - testIamPermissions( + updateKmsKey(callback: BodyResponseCallback): void; + updateKmsKey( paramsOrCallback?: - | Params$Resource$Regionsnapshots$Testiampermissions - | BodyResponseCallback + | Params$Resource$Regionsnapshots$Updatekmskey + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsnapshots$Testiampermissions; + {}) as Params$Resource$Regionsnapshots$Updatekmskey; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsnapshots$Testiampermissions; + params = {} as Params$Resource$Regionsnapshots$Updatekmskey; options = {}; } @@ -216447,7 +220424,7 @@ export namespace compute_beta { { url: ( rootUrl + - '/compute/beta/projects/{project}/regions/{region}/snapshots/{resource}/testIamPermissions' + '/compute/beta/projects/{project}/regions/{region}/snapshots/{snapshot}/updateKmsKey' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -216455,17 +220432,17 @@ export namespace compute_beta { options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'region', 'snapshot'], + pathParams: ['project', 'region', 'snapshot'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } @@ -216744,6 +220721,41 @@ export namespace compute_beta { */ requestBody?: Schema$TestPermissionsRequest; } + export interface Params$Resource$Regionsnapshots$Updatekmskey extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * Name of the snapshot resource to update. Should conform to RFC1035. + */ + snapshot?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionSnapshotUpdateKmsKeyRequest; + } export class Resource$Regionsnapshotsettings { context: APIRequestContext; @@ -216970,6 +220982,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -217207,6 +221220,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -217572,6 +221586,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -218365,6 +222380,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -218541,6 +222557,7 @@ export namespace compute_beta { * // "kind": "my_kind", * // "minTlsVersion": "my_minTlsVersion", * // "name": "my_name", + * // "postQuantumKeyExchange": "my_postQuantumKeyExchange", * // "profile": "my_profile", * // "region": "my_region", * // "selfLink": "my_selfLink", @@ -218711,6 +222728,7 @@ export namespace compute_beta { * // "kind": "my_kind", * // "minTlsVersion": "my_minTlsVersion", * // "name": "my_name", + * // "postQuantumKeyExchange": "my_postQuantumKeyExchange", * // "profile": "my_profile", * // "region": "my_region", * // "selfLink": "my_selfLink", @@ -218727,6 +222745,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -219397,6 +223416,7 @@ export namespace compute_beta { * // "kind": "my_kind", * // "minTlsVersion": "my_minTlsVersion", * // "name": "my_name", + * // "postQuantumKeyExchange": "my_postQuantumKeyExchange", * // "profile": "my_profile", * // "region": "my_region", * // "selfLink": "my_selfLink", @@ -219413,6 +223433,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -220111,6 +224132,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -220470,6 +224492,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -220900,6 +224923,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -221488,6 +225512,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -221865,6 +225890,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -222320,6 +226346,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -222513,6 +226540,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -222706,6 +226734,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -223365,6 +227394,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -223722,6 +227752,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -224502,6 +228533,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -224683,6 +228715,7 @@ export namespace compute_beta { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * } @@ -224845,6 +228878,7 @@ export namespace compute_beta { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * }, @@ -224858,6 +228892,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -225045,6 +229080,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -225469,6 +229505,7 @@ export namespace compute_beta { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * }, @@ -225482,6 +229519,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -225824,6 +229862,7 @@ export namespace compute_beta { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * }, @@ -225837,6 +229876,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -227379,6 +231419,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -228392,6 +232433,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -228561,6 +232603,7 @@ export namespace compute_beta { * // "advancedDeploymentControl": {}, * // "aggregateReservation": {}, * // "commitment": "my_commitment", + * // "confidentialComputeType": "my_confidentialComputeType", * // "creationTimestamp": "my_creationTimestamp", * // "deleteAfterDuration": {}, * // "deleteAtTime": "my_deleteAtTime", @@ -228897,6 +232940,7 @@ export namespace compute_beta { * // "advancedDeploymentControl": {}, * // "aggregateReservation": {}, * // "commitment": "my_commitment", + * // "confidentialComputeType": "my_confidentialComputeType", * // "creationTimestamp": "my_creationTimestamp", * // "deleteAfterDuration": {}, * // "deleteAtTime": "my_deleteAtTime", @@ -228934,6 +232978,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -229364,6 +233409,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -229558,6 +233604,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -230060,6 +234107,7 @@ export namespace compute_beta { * // "advancedDeploymentControl": {}, * // "aggregateReservation": {}, * // "commitment": "my_commitment", + * // "confidentialComputeType": "my_confidentialComputeType", * // "creationTimestamp": "my_creationTimestamp", * // "deleteAfterDuration": {}, * // "deleteAtTime": "my_deleteAtTime", @@ -230097,6 +234145,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -230721,7 +234770,160 @@ export namespace compute_beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.reservationSlots.get({ + * // The name of the parent reservation and parent block, formatted as + * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} + * parentName: + * 'reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})', + * // The project ID for this request. + * project: 'placeholder-value', + * // The name of the reservation slot, formatted as RFC1035 or a resource ID + * // number. + * reservationSlot: 'placeholder-value', + * // The name of the zone for this request, formatted as RFC1035. + * zone: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "resource": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Reservationslots$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Reservationslots$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Reservationslots$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Reservationslots$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Reservationslots$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Reservationslots$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Reservationslots$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Reservationslots$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'parentName', 'reservationSlot'], + pathParams: ['parentName', 'project', 'reservationSlot', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Allows customers to get SBOM versions of a reservation slot. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', * ], * }); * @@ -230730,24 +234932,72 @@ export namespace compute_beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationSlots.get({ - * // The name of the parent reservation and parent block, formatted as + * const res = await compute.reservationSlots.getVersion({ + * // The name of the parent reservation and parent block. In the format of * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} * parentName: * 'reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})', - * // The project ID for this request. + * // Project ID for this request. * project: 'placeholder-value', - * // The name of the reservation slot, formatted as RFC1035 or a resource ID - * // number. + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of the reservation slot. + * // Name should conform to RFC1035 or be a resource ID. * reservationSlot: 'placeholder-value', - * // The name of the zone for this request, formatted as RFC1035. + * // Name of the zone for this request. Zone name should conform to RFC1035. * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "sbomSelections": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "resource": {} + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -230763,57 +235013,53 @@ export namespace compute_beta { * @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$Reservationslots$Get, + getVersion( + params: Params$Resource$Reservationslots$Getversion, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Reservationslots$Get, + getVersion( + params?: Params$Resource$Reservationslots$Getversion, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Reservationslots$Get, + ): Promise>; + getVersion( + params: Params$Resource$Reservationslots$Getversion, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Reservationslots$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Reservationslots$Get, - callback: BodyResponseCallback + getVersion( + params: Params$Resource$Reservationslots$Getversion, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + getVersion( + params: Params$Resource$Reservationslots$Getversion, + callback: BodyResponseCallback ): void; - get( + getVersion(callback: BodyResponseCallback): void; + getVersion( paramsOrCallback?: - | Params$Resource$Reservationslots$Get - | BodyResponseCallback + | Params$Resource$Reservationslots$Getversion + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationslots$Get; + {}) as Params$Resource$Reservationslots$Getversion; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationslots$Get; + params = {} as Params$Resource$Reservationslots$Getversion; options = {}; } @@ -230828,9 +235074,9 @@ export namespace compute_beta { { url: ( rootUrl + - '/compute/beta/projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}' + '/compute/beta/projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}/getVersion' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -230841,12 +235087,12 @@ export namespace compute_beta { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -231169,6 +235415,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -231309,6 +235556,47 @@ export namespace compute_beta { */ zone?: string; } + export interface Params$Resource$Reservationslots$Getversion extends StandardParameters { + /** + * The name of the parent reservation and parent block. In the format of + * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} + */ + parentName?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of the reservation slot. + * Name should conform to RFC1035 or be a resource ID. + */ + reservationSlot?: string; + /** + * Name of the zone for this request. Zone name should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ReservationSlotsGetVersionRequest; + } export interface Params$Resource$Reservationslots$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most @@ -231490,26 +235778,191 @@ export namespace compute_beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationSubBlocks.get({ - * // The name of the parent reservation and parent block. In the format of - * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} - * parentName: - * 'reservations/my-reservation/reservationBlocks/my-reservationBlock', + * const res = await compute.reservationSubBlocks.get({ + * // The name of the parent reservation and parent block. In the format of + * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} + * parentName: + * 'reservations/my-reservation/reservationBlocks/my-reservationBlock', + * // Project ID for this request. + * project: 'placeholder-value', + * // The name of the reservation subBlock. + * // Name should conform to RFC1035 or be a resource ID. + * reservationSubBlock: 'placeholder-value', + * // View of the subBlock. + * view: 'placeholder-value', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "resource": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Reservationsubblocks$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Reservationsubblocks$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Reservationsubblocks$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Reservationsubblocks$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Reservationsubblocks$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Reservationsubblocks$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Reservationsubblocks$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Reservationsubblocks$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'project', + 'zone', + 'parentName', + 'reservationSubBlock', + ], + pathParams: ['parentName', 'project', 'reservationSubBlock', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.reservationSubBlocks.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', + * // Name or id of parent resource of the resource for this request. + * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', * // Project ID for this request. - * project: 'placeholder-value', - * // The name of the reservation subBlock. - * // Name should conform to RFC1035 or be a resource ID. - * reservationSubBlock: 'placeholder-value', - * // View of the subBlock. - * view: 'placeholder-value', - * // Name of the zone for this request. Zone name should conform to RFC1035. - * zone: 'placeholder-value', + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "resource": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -231525,57 +235978,53 @@ export namespace compute_beta { * @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$Reservationsubblocks$Get, + getIamPolicy( + params: Params$Resource$Reservationsubblocks$Getiampolicy, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Reservationsubblocks$Get, + getIamPolicy( + params?: Params$Resource$Reservationsubblocks$Getiampolicy, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Reservationsubblocks$Get, + ): Promise>; + getIamPolicy( + params: Params$Resource$Reservationsubblocks$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Reservationsubblocks$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Reservationsubblocks$Get, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Reservationsubblocks$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Reservationsubblocks$Getiampolicy, + callback: BodyResponseCallback ): void; - get( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Reservationsubblocks$Get - | BodyResponseCallback + | Params$Resource$Reservationsubblocks$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationsubblocks$Get; + {}) as Params$Resource$Reservationsubblocks$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationsubblocks$Get; + params = {} as Params$Resource$Reservationsubblocks$Getiampolicy; options = {}; } @@ -231590,7 +236039,7 @@ export namespace compute_beta { { url: ( rootUrl + - '/compute/beta/projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}' + '/compute/beta/projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -231598,30 +236047,22 @@ export namespace compute_beta { options ), params, - requiredParams: [ - 'project', - 'zone', - 'parentName', - 'reservationSubBlock', - ], - pathParams: ['parentName', 'project', 'reservationSubBlock', 'zone'], + requiredParams: ['project', 'zone', 'parentResource', 'resource'], + pathParams: ['parentResource', 'project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Allows customers to get SBOM versions of a reservation subBlock. * @example * ```js * // Before running the sample: @@ -231645,7 +236086,6 @@ export namespace compute_beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -231654,27 +236094,72 @@ export namespace compute_beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationSubBlocks.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', - * // Name or id of parent resource of the resource for this request. - * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', + * const res = await compute.reservationSubBlocks.getVersion({ + * // The name of the parent reservation and parent block. In the format of + * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} + * parentName: + * 'reservations/my-reservation/reservationBlocks/my-reservationBlock', * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * project: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of the reservation subBlock. + * // Name should conform to RFC1035 or be a resource ID. + * reservationSubBlock: 'placeholder-value', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "sbomSelections": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -231690,53 +236175,53 @@ export namespace compute_beta { * @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$Reservationsubblocks$Getiampolicy, + getVersion( + params: Params$Resource$Reservationsubblocks$Getversion, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Reservationsubblocks$Getiampolicy, + getVersion( + params?: Params$Resource$Reservationsubblocks$Getversion, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Reservationsubblocks$Getiampolicy, + ): Promise>; + getVersion( + params: Params$Resource$Reservationsubblocks$Getversion, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Reservationsubblocks$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getVersion( + params: Params$Resource$Reservationsubblocks$Getversion, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Reservationsubblocks$Getiampolicy, - callback: BodyResponseCallback + getVersion( + params: Params$Resource$Reservationsubblocks$Getversion, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + getVersion(callback: BodyResponseCallback): void; + getVersion( paramsOrCallback?: - | Params$Resource$Reservationsubblocks$Getiampolicy - | BodyResponseCallback + | Params$Resource$Reservationsubblocks$Getversion + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationsubblocks$Getiampolicy; + {}) as Params$Resource$Reservationsubblocks$Getversion; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationsubblocks$Getiampolicy; + params = {} as Params$Resource$Reservationsubblocks$Getversion; options = {}; } @@ -231751,25 +236236,30 @@ export namespace compute_beta { { url: ( rootUrl + - '/compute/beta/projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/getIamPolicy' + '/compute/beta/projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}/getVersion' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'parentResource', 'resource'], - pathParams: ['parentResource', 'project', 'resource', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'parentName', + 'reservationSubBlock', + ], + pathParams: ['parentName', 'project', 'reservationSubBlock', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -232092,6 +236582,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -232295,6 +236786,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -232787,6 +237279,47 @@ export namespace compute_beta { */ zone?: string; } + export interface Params$Resource$Reservationsubblocks$Getversion extends StandardParameters { + /** + * The name of the parent reservation and parent block. In the format of + * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} + */ + parentName?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of the reservation subBlock. + * Name should conform to RFC1035 or be a resource ID. + */ + reservationSubBlock?: string; + /** + * Name of the zone for this request. Zone name should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ReservationSubBlocksGetVersionRequest; + } export interface Params$Resource$Reservationsubblocks$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most @@ -233352,6 +237885,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -233866,6 +238400,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -234312,6 +238847,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -235216,6 +239752,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -235563,6 +240100,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -236161,6 +240699,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -236342,6 +240881,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -237352,6 +241892,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -237537,6 +242078,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -237723,6 +242265,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -238950,6 +243493,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -240148,6 +244692,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -240343,6 +244888,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -240539,6 +245085,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -241080,6 +245627,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -241275,6 +245823,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -241471,6 +246020,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -242833,6 +247383,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -243214,6 +247765,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -243985,6 +248537,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -244425,6 +248978,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -244966,6 +249520,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -245660,6 +250215,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -245859,6 +250415,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -246029,6 +250586,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -246208,6 +250766,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -247346,6 +251905,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -247879,6 +252439,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -248335,6 +252896,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -249240,6 +253802,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -249743,6 +254306,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -250955,6 +255519,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -251519,6 +256084,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -251904,7 +256470,343 @@ export namespace compute_beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.snapshots.setIamPolicy({ + * const res = await compute.snapshots.setIamPolicy({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Snapshots$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Snapshots$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Snapshots$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Snapshots$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Snapshots$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Snapshots$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Snapshots$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Snapshots$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/global/snapshots/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the labels on a snapshot. To learn more about labels, read theLabeling + * Resources documentation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.snapshots.setLabels({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + setLabels( + params: Params$Resource$Snapshots$Setlabels, + options: StreamMethodOptions + ): Promise>; + setLabels( + params?: Params$Resource$Snapshots$Setlabels, + options?: MethodOptions + ): Promise>; + setLabels( + params: Params$Resource$Snapshots$Setlabels, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Snapshots$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Snapshots$Setlabels, + callback: BodyResponseCallback + ): void; + setLabels(callback: BodyResponseCallback): void; + setLabels( + paramsOrCallback?: + | Params$Resource$Snapshots$Setlabels + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Snapshots$Setlabels; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Snapshots$Setlabels; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/projects/{project}/global/snapshots/{resource}/setLabels' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', '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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.snapshots.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -251915,9 +256817,7 @@ export namespace compute_beta { * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "permissions": [] * // } * }, * }); @@ -251925,10 +256825,7 @@ export namespace compute_beta { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "permissions": [] * // } * } * @@ -251944,53 +256841,57 @@ export namespace compute_beta { * @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$Snapshots$Setiampolicy, + testIamPermissions( + params: Params$Resource$Snapshots$Testiampermissions, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Snapshots$Setiampolicy, + testIamPermissions( + params?: Params$Resource$Snapshots$Testiampermissions, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Snapshots$Setiampolicy, + ): Promise>; + testIamPermissions( + params: Params$Resource$Snapshots$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Snapshots$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Snapshots$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Snapshots$Setiampolicy, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Snapshots$Testiampermissions, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Snapshots$Setiampolicy - | BodyResponseCallback + | Params$Resource$Snapshots$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Snapshots$Setiampolicy; + {}) as Params$Resource$Snapshots$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Snapshots$Setiampolicy; + params = {} as Params$Resource$Snapshots$Testiampermissions; options = {}; } @@ -252005,7 +256906,7 @@ export namespace compute_beta { { url: ( rootUrl + - '/compute/beta/projects/{project}/global/snapshots/{resource}/setIamPolicy' + '/compute/beta/projects/{project}/global/snapshots/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -252018,18 +256919,18 @@ export namespace compute_beta { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the labels on a snapshot. To learn more about labels, read theLabeling - * Resources documentation. + * Rotates the customer-managed + * encryption key to the latest version for the specified snapshot. * @example * ```js * // Before running the sample: @@ -252061,19 +256962,32 @@ export namespace compute_beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.snapshots.setLabels({ + * const res = await compute.snapshots.updateKmsKey({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the snapshot resource to update. Should conform to RFC1035. + * snapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} + * // "kmsKeyName": "my_kmsKeyName" * // } * }, * }); @@ -252086,6 +257000,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -252122,32 +257037,32 @@ export namespace compute_beta { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Snapshots$Setlabels, + updateKmsKey( + params: Params$Resource$Snapshots$Updatekmskey, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Snapshots$Setlabels, + updateKmsKey( + params?: Params$Resource$Snapshots$Updatekmskey, options?: MethodOptions ): Promise>; - setLabels( - params: Params$Resource$Snapshots$Setlabels, + updateKmsKey( + params: Params$Resource$Snapshots$Updatekmskey, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Snapshots$Setlabels, + updateKmsKey( + params: Params$Resource$Snapshots$Updatekmskey, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Snapshots$Setlabels, + updateKmsKey( + params: Params$Resource$Snapshots$Updatekmskey, callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + updateKmsKey(callback: BodyResponseCallback): void; + updateKmsKey( paramsOrCallback?: - | Params$Resource$Snapshots$Setlabels + | Params$Resource$Snapshots$Updatekmskey | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -252163,12 +257078,12 @@ export namespace compute_beta { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Snapshots$Setlabels; + {}) as Params$Resource$Snapshots$Updatekmskey; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Snapshots$Setlabels; + params = {} as Params$Resource$Snapshots$Updatekmskey; options = {}; } @@ -252183,7 +257098,7 @@ export namespace compute_beta { { url: ( rootUrl + - '/compute/beta/projects/{project}/global/snapshots/{resource}/setLabels' + '/compute/beta/projects/{project}/global/snapshots/{snapshot}/updateKmsKey' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -252191,8 +257106,8 @@ export namespace compute_beta { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'snapshot'], + pathParams: ['project', 'snapshot'], context: this.context, }; if (callback) { @@ -252204,162 +257119,6 @@ export namespace compute_beta { return createAPIRequest(parameters); } } - - /** - * Returns permissions that a caller has on the specified resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('beta'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.snapshots.testIamPermissions({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "permissions": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Snapshots$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Snapshots$Testiampermissions, - options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Snapshots$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Snapshots$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Snapshots$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Snapshots$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Snapshots$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Snapshots$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/beta/projects/{project}/global/snapshots/{resource}/testIamPermissions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } } export interface Params$Resource$Snapshots$Aggregatedlist extends StandardParameters { @@ -252707,6 +257466,37 @@ export namespace compute_beta { */ requestBody?: Schema$TestPermissionsRequest; } + export interface Params$Resource$Snapshots$Updatekmskey extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * Name of the snapshot resource to update. Should conform to RFC1035. + */ + snapshot?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SnapshotUpdateKmsKeyRequest; + } export class Resource$Snapshotsettings { context: APIRequestContext; @@ -252929,6 +257719,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -253413,6 +258204,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -253772,6 +258564,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -254914,6 +259707,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -255088,6 +259882,7 @@ export namespace compute_beta { * // "kind": "my_kind", * // "minTlsVersion": "my_minTlsVersion", * // "name": "my_name", + * // "postQuantumKeyExchange": "my_postQuantumKeyExchange", * // "profile": "my_profile", * // "region": "my_region", * // "selfLink": "my_selfLink", @@ -255254,6 +260049,7 @@ export namespace compute_beta { * // "kind": "my_kind", * // "minTlsVersion": "my_minTlsVersion", * // "name": "my_name", + * // "postQuantumKeyExchange": "my_postQuantumKeyExchange", * // "profile": "my_profile", * // "region": "my_region", * // "selfLink": "my_selfLink", @@ -255270,6 +260066,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -255931,6 +260728,7 @@ export namespace compute_beta { * // "kind": "my_kind", * // "minTlsVersion": "my_minTlsVersion", * // "name": "my_name", + * // "postQuantumKeyExchange": "my_postQuantumKeyExchange", * // "profile": "my_profile", * // "region": "my_region", * // "selfLink": "my_selfLink", @@ -255947,6 +260745,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -256993,6 +261792,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -257522,6 +262322,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -258542,6 +263343,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -260407,6 +265209,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -260599,6 +265402,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -261157,6 +265961,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -261885,6 +266690,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -262237,6 +267043,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -263196,6 +268003,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -263547,6 +268355,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -263984,6 +268793,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -264800,6 +269610,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -265155,6 +269966,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -265595,6 +270407,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -265785,6 +270598,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -266751,6 +271565,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -267124,6 +271939,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -267575,6 +272391,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -267766,6 +272583,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -267957,6 +272775,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -268148,6 +272967,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -268342,6 +273162,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -268533,6 +273354,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -269629,6 +274451,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -269986,6 +274809,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -270419,6 +275243,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -271134,6 +275959,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -271326,6 +276152,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -271764,6 +276591,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -272284,6 +277112,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -272713,6 +277542,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -272905,6 +277735,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -273099,6 +277930,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -273294,6 +278126,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -274197,6 +279030,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -274550,6 +279384,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -274977,6 +279812,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -275168,6 +280004,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -275358,6 +280195,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -275549,6 +280387,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -275743,6 +280582,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -276687,6 +281527,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -277040,6 +281881,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -277467,6 +282309,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -277657,6 +282500,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -278625,6 +283469,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -278988,6 +283833,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -279422,6 +284268,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -280380,6 +285227,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -280558,6 +285406,7 @@ export namespace compute_beta { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * } @@ -280728,6 +285577,7 @@ export namespace compute_beta { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * }, @@ -280741,6 +285591,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -280935,6 +285786,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -281364,6 +286216,7 @@ export namespace compute_beta { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * }, @@ -281377,6 +286230,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -281725,6 +286579,7 @@ export namespace compute_beta { * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "status": {}, * // "tests": [] * // } * }, @@ -281738,6 +286593,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -282749,6 +287605,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -283263,6 +288120,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -283694,6 +288552,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -284667,6 +289526,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -285055,6 +289915,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -285486,6 +290347,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -286192,6 +291054,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -286553,6 +291416,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -287001,6 +291865,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -287552,6 +292417,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -287976,6 +292842,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -288765,7 +293632,7 @@ export namespace compute_beta { } /** - * Deletes a specified zone VM extension policy. + * Deletes a specified zone VM extension policy within a project. * @example * ```js * // Before running the sample: @@ -288829,6 +293696,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -288949,7 +293817,7 @@ export namespace compute_beta { } /** - * Retrieves details of a specific zone VM extension policy. + * Retrieves details of a specific zone VM extension policy within a project. * @example * ```js * // Before running the sample: @@ -289191,6 +294059,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -289552,7 +294421,7 @@ export namespace compute_beta { } /** - * Modifies an existing zone VM extension policy. + * Modifies an existing zone VM extension policy within a project. * @example * ```js * // Before running the sample: @@ -289637,6 +294506,7 @@ export namespace compute_beta { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", diff --git a/src/apis/compute/v1.ts b/src/apis/compute/v1.ts index cb1ab1e4243..8a04c41c5ee 100644 --- a/src/apis/compute/v1.ts +++ b/src/apis/compute/v1.ts @@ -136,6 +136,7 @@ export namespace compute_v1 { globalOperations: Resource$Globaloperations; globalOrganizationOperations: Resource$Globalorganizationoperations; globalPublicDelegatedPrefixes: Resource$Globalpublicdelegatedprefixes; + globalVmExtensionPolicies: Resource$Globalvmextensionpolicies; healthChecks: Resource$Healthchecks; httpHealthChecks: Resource$Httphealthchecks; httpsHealthChecks: Resource$Httpshealthchecks; @@ -147,6 +148,7 @@ export namespace compute_v1 { instances: Resource$Instances; instanceSettings: Resource$Instancesettings; instanceTemplates: Resource$Instancetemplates; + instantSnapshotGroups: Resource$Instantsnapshotgroups; instantSnapshots: Resource$Instantsnapshots; interconnectAttachmentGroups: Resource$Interconnectattachmentgroups; interconnectAttachments: Resource$Interconnectattachments; @@ -174,17 +176,22 @@ export namespace compute_v1 { publicAdvertisedPrefixes: Resource$Publicadvertisedprefixes; publicDelegatedPrefixes: Resource$Publicdelegatedprefixes; regionAutoscalers: Resource$Regionautoscalers; + regionBackendBuckets: Resource$Regionbackendbuckets; regionBackendServices: Resource$Regionbackendservices; regionCommitments: Resource$Regioncommitments; + regionCompositeHealthChecks: Resource$Regioncompositehealthchecks; regionDisks: Resource$Regiondisks; regionDiskTypes: Resource$Regiondisktypes; regionHealthAggregationPolicies: Resource$Regionhealthaggregationpolicies; regionHealthChecks: Resource$Regionhealthchecks; regionHealthCheckServices: Resource$Regionhealthcheckservices; + regionHealthSources: Resource$Regionhealthsources; + regionInstanceGroupManagerResizeRequests: Resource$Regioninstancegroupmanagerresizerequests; regionInstanceGroupManagers: Resource$Regioninstancegroupmanagers; regionInstanceGroups: Resource$Regioninstancegroups; regionInstances: Resource$Regioninstances; regionInstanceTemplates: Resource$Regioninstancetemplates; + regionInstantSnapshotGroups: Resource$Regioninstantsnapshotgroups; regionInstantSnapshots: Resource$Regioninstantsnapshots; regionNetworkEndpointGroups: Resource$Regionnetworkendpointgroups; regionNetworkFirewallPolicies: Resource$Regionnetworkfirewallpolicies; @@ -192,6 +199,8 @@ export namespace compute_v1 { regionOperations: Resource$Regionoperations; regions: Resource$Regions; regionSecurityPolicies: Resource$Regionsecuritypolicies; + regionSnapshots: Resource$Regionsnapshots; + regionSnapshotSettings: Resource$Regionsnapshotsettings; regionSslCertificates: Resource$Regionsslcertificates; regionSslPolicies: Resource$Regionsslpolicies; regionTargetHttpProxies: Resource$Regiontargethttpproxies; @@ -204,6 +213,8 @@ export namespace compute_v1 { reservationSlots: Resource$Reservationslots; reservationSubBlocks: Resource$Reservationsubblocks; resourcePolicies: Resource$Resourcepolicies; + rolloutPlans: Resource$Rolloutplans; + rollouts: Resource$Rollouts; routers: Resource$Routers; routes: Resource$Routes; securityPolicies: Resource$Securitypolicies; @@ -229,6 +240,7 @@ export namespace compute_v1 { wireGroups: Resource$Wiregroups; zoneOperations: Resource$Zoneoperations; zones: Resource$Zones; + zoneVmExtensionPolicies: Resource$Zonevmextensionpolicies; constructor(options: GlobalOptions, google?: GoogleConfigurable) { this.context = { @@ -261,6 +273,9 @@ export namespace compute_v1 { new Resource$Globalorganizationoperations(this.context); this.globalPublicDelegatedPrefixes = new Resource$Globalpublicdelegatedprefixes(this.context); + this.globalVmExtensionPolicies = new Resource$Globalvmextensionpolicies( + this.context + ); this.healthChecks = new Resource$Healthchecks(this.context); this.httpHealthChecks = new Resource$Httphealthchecks(this.context); this.httpsHealthChecks = new Resource$Httpshealthchecks(this.context); @@ -275,6 +290,9 @@ export namespace compute_v1 { this.instances = new Resource$Instances(this.context); this.instanceSettings = new Resource$Instancesettings(this.context); this.instanceTemplates = new Resource$Instancetemplates(this.context); + this.instantSnapshotGroups = new Resource$Instantsnapshotgroups( + this.context + ); this.instantSnapshots = new Resource$Instantsnapshots(this.context); this.interconnectAttachmentGroups = new Resource$Interconnectattachmentgroups(this.context); @@ -318,10 +336,15 @@ export namespace compute_v1 { this.context ); this.regionAutoscalers = new Resource$Regionautoscalers(this.context); + this.regionBackendBuckets = new Resource$Regionbackendbuckets( + this.context + ); this.regionBackendServices = new Resource$Regionbackendservices( this.context ); this.regionCommitments = new Resource$Regioncommitments(this.context); + this.regionCompositeHealthChecks = + new Resource$Regioncompositehealthchecks(this.context); this.regionDisks = new Resource$Regiondisks(this.context); this.regionDiskTypes = new Resource$Regiondisktypes(this.context); this.regionHealthAggregationPolicies = @@ -330,6 +353,9 @@ export namespace compute_v1 { this.regionHealthCheckServices = new Resource$Regionhealthcheckservices( this.context ); + this.regionHealthSources = new Resource$Regionhealthsources(this.context); + this.regionInstanceGroupManagerResizeRequests = + new Resource$Regioninstancegroupmanagerresizerequests(this.context); this.regionInstanceGroupManagers = new Resource$Regioninstancegroupmanagers(this.context); this.regionInstanceGroups = new Resource$Regioninstancegroups( @@ -339,6 +365,8 @@ export namespace compute_v1 { this.regionInstanceTemplates = new Resource$Regioninstancetemplates( this.context ); + this.regionInstantSnapshotGroups = + new Resource$Regioninstantsnapshotgroups(this.context); this.regionInstantSnapshots = new Resource$Regioninstantsnapshots( this.context ); @@ -353,6 +381,10 @@ export namespace compute_v1 { this.regionSecurityPolicies = new Resource$Regionsecuritypolicies( this.context ); + this.regionSnapshots = new Resource$Regionsnapshots(this.context); + this.regionSnapshotSettings = new Resource$Regionsnapshotsettings( + this.context + ); this.regionSslCertificates = new Resource$Regionsslcertificates( this.context ); @@ -375,6 +407,8 @@ export namespace compute_v1 { this.context ); this.resourcePolicies = new Resource$Resourcepolicies(this.context); + this.rolloutPlans = new Resource$Rolloutplans(this.context); + this.rollouts = new Resource$Rollouts(this.context); this.routers = new Resource$Routers(this.context); this.routes = new Resource$Routes(this.context); this.securityPolicies = new Resource$Securitypolicies(this.context); @@ -400,6 +434,9 @@ export namespace compute_v1 { this.wireGroups = new Resource$Wiregroups(this.context); this.zoneOperations = new Resource$Zoneoperations(this.context); this.zones = new Resource$Zones(this.context); + this.zoneVmExtensionPolicies = new Resource$Zonevmextensionpolicies( + this.context + ); } } @@ -1421,8 +1458,8 @@ export namespace compute_v1 { * Input only. Resource manager tags to be bound to the disk. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & PATCH) when * empty. */ @@ -1952,6 +1989,17 @@ export namespace compute_v1 { scalingSchedules?: { [key: string]: Schema$AutoscalingPolicyScalingSchedule; } | null; + /** + * The number of seconds that autoscaler waits for load stabilization before + * making scale-in decisions. This is referred to as the + * [stabilization period](/compute/docs/autoscaler#stabilization_period). + * This might appear as a delay in scaling in but it is an important mechanism + * for your application to not have fluctuating size due to short term load + * fluctuations. + * + * The default stabilization period is 600 seconds. + */ + stabilizationPeriodSec?: number | null; } /** * CPU utilization policy. @@ -2269,6 +2317,23 @@ export namespace compute_v1 { * Not available if the backend's balancingMode isRATE. */ maxConnectionsPerInstance?: number | null; + /** + * Defines a maximum number of in-flight requests for the whole NEG or + * instance group. Not available if backend's balancingMode isRATE or CONNECTION. + */ + maxInFlightRequests?: number | null; + /** + * Defines a maximum number of in-flight requests for a single endpoint. + * Not available if backend's balancingMode is RATE + * or CONNECTION. + */ + maxInFlightRequestsPerEndpoint?: number | null; + /** + * Defines a maximum number of in-flight requests for a single VM. + * Not available if backend's balancingMode is RATE + * or CONNECTION. + */ + maxInFlightRequestsPerInstance?: number | null; /** * Defines a maximum number of HTTP requests per second (RPS). For * usage guidelines, seeRate @@ -2320,6 +2385,7 @@ export namespace compute_v1 { * default */ preference?: string | null; + trafficDuration?: string | null; } /** * A message containing information about the resource or system that manages @@ -2406,6 +2472,13 @@ export namespace compute_v1 { * as part of resource payload. */ params?: Schema$BackendBucketParams; + /** + * Output only. [Output Only] URL of the region where the regional backend bucket + * resides. This field is not applicable to global backend buckets. + * You must specify this field as part of the HTTP request URL. It is + * not settable as a field in the request body. + */ + region?: string | null; /** * [Output Only] Server-defined URL for the resource. */ @@ -2415,6 +2488,40 @@ export namespace compute_v1 { */ usedBy?: Schema$BackendBucketUsedBy[]; } + export interface Schema$BackendBucketAggregatedList { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of BackendBucketsScopedList resources. + */ + items?: {[key: string]: Schema$BackendBucketsScopedList} | null; + /** + * Output only. Type of resource. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * Message containing Cloud CDN configuration for a backend bucket. */ @@ -2638,6 +2745,41 @@ export namespace compute_v1 { message?: string; } | null; } + export interface Schema$BackendBucketListUsable { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of BackendBucket resources. + */ + items?: Schema$BackendBucket[]; + /** + * Output only. [Output Only] Type of resource. Alwayscompute#usableBackendBucketList for lists of usable backend + * buckets. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * Additional Backend Bucket parameters. */ @@ -2658,6 +2800,21 @@ export namespace compute_v1 { */ resourceManagerTags?: {[key: string]: string} | null; } + export interface Schema$BackendBucketsScopedList { + /** + * A list of BackendBuckets contained in this scope. + */ + backendBuckets?: Schema$BackendBucket[]; + /** + * Informational warning which replaces the list of + * backend services when the list is empty. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } export interface Schema$BackendBucketUsedBy { /** * Output only. [Output Only] Server-defined URL for UrlMaps referencing that @@ -2763,7 +2920,7 @@ export namespace compute_v1 { * * This field is applicable to either: * - * - A regional backend service with the service_protocol set to HTTP, + * - A regional backend service with the service protocol set to HTTP, * HTTPS, HTTP2 or H2C, and load_balancing_scheme set to * INTERNAL_MANAGED. * - A global backend service with the @@ -3010,7 +3167,7 @@ export namespace compute_v1 { * metrics to use for computing the weights are specified via thecustomMetrics field. * * This field is applicable to either: - * - A regional backend service with the service_protocol set to HTTP, + * - A regional backend service with the service protocol set to HTTP, * HTTPS, HTTP2 or H2C, and load_balancing_scheme set to * INTERNAL_MANAGED. * - A global backend service with the @@ -3123,7 +3280,7 @@ export namespace compute_v1 { * - A global backend service with the loadBalancingScheme set to * INTERNAL_SELF_MANAGED or EXTERNAL_MANAGED. * - A regional backend - * service with the serviceProtocol set to HTTP, HTTPS, HTTP2 or H2C, and + * service with the service protocol set to HTTP, HTTPS, HTTP2 or H2C, and * loadBalancingScheme set to INTERNAL_MANAGED or EXTERNAL_MANAGED. Not * supported for Serverless NEGs. * @@ -3575,7 +3732,7 @@ export namespace compute_v1 { */ export interface Schema$BackendServiceFailoverPolicy { /** - * This can be set to true only if the protocol isTCP. + * This can be set to true if the protocol isTCP, UDP, or UNSPECIFIED. * * The default is false. */ @@ -4427,6 +4584,15 @@ export namespace compute_v1 { * requests and is not persisted. */ export interface Schema$BulkInsertDiskResource { + /** + * The parameters for the instant snapshot group. + */ + instantSnapshotGroupParameters?: Schema$InstantSnapshotGroupParameters; + /** + * The parameters for the snapshot group. The usage of snapshot group feature + * is restricted. + */ + snapshotGroupParameters?: Schema$SnapshotGroupParameters; /** * The URL of the DiskConsistencyGroupPolicy for the group of disks to clone. * This may be a full or partial URL, such as: @@ -4649,6 +4815,215 @@ export namespace compute_v1 { */ queryStringWhitelist?: string[] | null; } + /** + * Message containing CachePolicy configuration for URL Map's Route Action. + */ + export interface Schema$CachePolicy { + /** + * Bypass the cache when the specified request headers are matched by name, + * e.g. Pragma or Authorization headers. Values are case-insensitive. Up to 5 + * header names can be specified. The cache is bypassed for all `cacheMode` + * values. + */ + cacheBypassRequestHeaderNames?: string[] | null; + /** + * The cache key configuration. If not specified, the default behavior depends + * on the backend type: for Backend Services, the complete request URI is + * used; for Backend Buckets, the request URI is used without the protocol or + * host, and only query parameters known to Cloud Storage are included. + */ + cacheKeyPolicy?: Schema$CachePolicyCacheKeyPolicy; + /** + * Specifies the cache setting for all responses from this route. If not + * specified, Cloud CDN uses `CACHE_ALL_STATIC` mode. + */ + cacheMode?: string | null; + /** + * Specifies a separate client (e.g. browser client) maximum TTL for cached + * content. This is used to clamp the max-age (or Expires) value sent to the + * client. With `FORCE_CACHE_ALL`, the lesser of `clientTtl` and `defaultTtl` + * is used for the response max-age directive, along with a "public" + * directive. For cacheable content in `CACHE_ALL_STATIC` mode, `clientTtl` + * clamps the max-age from the origin (if specified), or else sets the + * response max-age directive to the lesser of the `clientTtl` and + * `defaultTtl`, and also ensures a "public" cache-control directive is + * present. The maximum allowed value is 31,622,400s (1 year). If not + * specified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` mode. + * Cannot exceed `maxTtl`. Cannot be specified when `cacheMode` is + * `USE_ORIGIN_HEADERS`. + */ + clientTtl?: Schema$Duration; + /** + * Specifies the default TTL for cached content for responses that do not have + * an existing valid TTL (max-age or s-maxage). Setting a TTL of "0" means + * "always revalidate". The value of `defaultTtl` cannot be set to a value + * greater than that of `maxTtl`. When the `cacheMode` is set to + * `FORCE_CACHE_ALL`, the `defaultTtl` will overwrite the TTL set in all + * responses. The maximum allowed value is 31,622,400s (1 year). Infrequently + * accessed objects may be evicted from the cache before the defined TTL. If + * not specified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` and + * `FORCE_CACHE_ALL` modes. Cannot be specified when `cacheMode` is + * `USE_ORIGIN_HEADERS`. + */ + defaultTtl?: Schema$Duration; + /** + * Specifies the maximum allowed TTL for cached content. Cache directives that + * attempt to set a max-age or s-maxage higher than this, or an Expires header + * more than `maxTtl` seconds in the future will be capped at the value of + * `maxTtl`, as if it were the value of an s-maxage Cache-Control directive. + * Headers sent to the client will not be modified. Setting a TTL of "0" means + * "always revalidate". The maximum allowed value is 31,622,400s (1 year). + * Infrequently accessed objects may be evicted from the cache before the + * defined TTL. If not specified, Cloud CDN uses 86400s (1 day) for + * `CACHE_ALL_STATIC` mode. Can be specified only for `CACHE_ALL_STATIC` cache + * mode. + */ + maxTtl?: Schema$Duration; + /** + * Negative caching allows per-status code TTLs to be set, in order + * to apply fine-grained caching for common errors or redirects. + * This can reduce the load on your origin and improve end-user + * experience by reducing response latency. + * When the `cacheMode` is set to `CACHE_ALL_STATIC` or + * `USE_ORIGIN_HEADERS`, negative caching applies to responses with + * the specified response code that lack any Cache-Control, Expires, or + * Pragma: no-cache directives. When the `cacheMode` is set to + * `FORCE_CACHE_ALL`, negative caching applies to all responses + * with the specified response code, and overrides any caching headers. By + * default, Cloud CDN applies the following TTLs to these HTTP status codes: + * + * * 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m + * * 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s + * * 405 (Method Not Found), 501 (Not Implemented): 60s + * + * These defaults can be overridden in `negativeCachingPolicy`. + * If not specified, Cloud CDN applies negative caching by default. + */ + negativeCaching?: boolean | null; + /** + * Sets a cache TTL for the specified HTTP status code. + * `negativeCaching` must be enabled to configure `negativeCachingPolicy`. + * Omitting the policy and leaving `negativeCaching` enabled will use Cloud + * CDN's default cache TTLs. Note that when specifying an explicit + * `negativeCachingPolicy`, you should take care to specify a cache TTL for + * all response codes that you wish to cache. Cloud CDN will not apply any + * default negative caching when a policy exists. + */ + negativeCachingPolicy?: Schema$CachePolicyNegativeCachingPolicy[]; + /** + * If true then Cloud CDN will combine multiple concurrent cache fill + * requests into a small number of requests to the origin. If not specified, + * Cloud CDN applies request coalescing by default. + */ + requestCoalescing?: boolean | null; + /** + * Serve existing content from the cache (if available) when revalidating + * content with the origin, or when an error is encountered when refreshing + * the cache. + * This setting defines the default "max-stale" duration for any cached + * responses that do not specify a max-stale directive. Stale responses that + * exceed the TTL configured here will not be served. The default limit + * (max-stale) is 86400s (1 day), which will allow stale content to be + * served up to this limit beyond the max-age (or s-maxage) of a cached + * response. + * The maximum allowed value is 604800 (1 week). + * Set this to zero (0) to disable serve-while-stale. + */ + serveWhileStale?: Schema$Duration; + } + /** + * Message containing what to include in the cache key for a request for Cache + * Policy defined on Route Action. + */ + export interface Schema$CachePolicyCacheKeyPolicy { + /** + * Names of query string parameters to exclude in cache keys. All other + * parameters will be included. Either specify `excludedQueryParameters` + * or `includedQueryParameters`, not both. '&' and '=' will be percent + * encoded and not treated as delimiters. + * + * Note: This field applies to routes that use backend services. Attempting + * to set it on a route that points exclusively to Backend Buckets will + * result in a configuration error. For routes that point to a Backend + * Bucket, use `includedQueryParameters` to define which parameters should + * be part of the cache key. + */ + excludedQueryParameters?: string[] | null; + /** + * Allows HTTP cookies (by name) to be used in the cache key. + * The name=value pair will be used in the cache key Cloud CDN generates. + * + * Note: This setting is only applicable to routes that use a Backend + * Service. It does not affect requests served by a Backend Bucket. + * Attempting to set it on a route that points exclusively to Backend + * Buckets will result in a configuration error. Up to 5 cookie names can be + * specified. + */ + includedCookieNames?: string[] | null; + /** + * Allows HTTP request headers (by name) to be used in the cache key. + */ + includedHeaderNames?: string[] | null; + /** + * Names of query string parameters to include in cache keys. All other + * parameters will be excluded. Either specify `includedQueryParameters` + * or `excludedQueryParameters`, not both. '&' and '=' will be percent + * encoded and not treated as delimiters. + */ + includedQueryParameters?: string[] | null; + /** + * If true, requests to different hosts will be cached separately. + * + * Note: This setting is only applicable to routes that use a Backend + * Service. It does not affect requests served by a Backend Bucket, as the + * host is never included in a Backend Bucket's cache key. Attempting to set + * it on a route that points exclusively to Backend Buckets will result in a + * configuration error. + */ + includeHost?: boolean | null; + /** + * If true, http and https requests will be cached separately. + * + * Note: This setting is only applicable to routes that use a Backend + * Service. It does not affect requests served by a Backend Bucket, as the + * protocol is never included in a Backend Bucket's cache key. Attempting to + * set on a route that points exclusively to Backend Buckets will result in + * a configuration error. + */ + includeProtocol?: boolean | null; + /** + * If true, include query string parameters in the cache key according to + * `includedQueryParameters` and `excludedQueryParameters`. If neither + * is set, the entire query string will be included. If false, the query + * string will be excluded from the cache key entirely. + * + * Note: This field applies to routes that use backend services. Attempting + * to set it on a route that points exclusively to Backend Buckets will + * result in a configuration error. For routes that point to a Backend + * Bucket, use `includedQueryParameters` to define which parameters should + * be part of the cache key. + */ + includeQueryString?: boolean | null; + } + /** + * Specify CDN TTLs for response error codes. + */ + export interface Schema$CachePolicyNegativeCachingPolicy { + /** + * The HTTP status code to define a TTL against. Only HTTP status codes + * 300, 301, 302, 307, 308, 404, 405, 410, 421, 451 and 501 can be + * specified as values, and you cannot specify a status code more than + * once. + */ + code?: number | null; + /** + * The TTL (in seconds) for which to cache responses with the + * corresponding status code. + * The maximum allowed value is 1800s (30 minutes). Infrequently accessed + * objects may be evicted from the cache before the defined TTL. + */ + ttl?: Schema$Duration; + } /** * A request to recommend the best way to consume the specified resources in the * future. @@ -4816,6 +5191,11 @@ export namespace compute_v1 { * cannot be a dash. */ name?: string | null; + /** + * Input only. Additional params passed with the request, but not persisted + * as part of resource payload. + */ + params?: Schema$CommitmentParams; /** * The minimum time duration that you commit to purchasing resources. * The plan that you choose determines the preset term length of the @@ -4884,7 +5264,7 @@ export namespace compute_v1 { * resource types. * * The type must be one of the following:ACCELERATOR_OPTIMIZED, ACCELERATOR_OPTIMIZED_A3,ACCELERATOR_OPTIMIZED_A3_MEGA,COMPUTE_OPTIMIZED, COMPUTE_OPTIMIZED_C2D, - * COMPUTE_OPTIMIZED_C3, COMPUTE_OPTIMIZED_C3D,COMPUTE_OPTIMIZED_H3, GENERAL_PURPOSE,GENERAL_PURPOSE_C4, GENERAL_PURPOSE_E2,GENERAL_PURPOSE_N2, GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED, GRAPHICS_OPTIMIZED_G4,MEMORY_OPTIMIZED, MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3. For + * COMPUTE_OPTIMIZED_C3, COMPUTE_OPTIMIZED_C3D,COMPUTE_OPTIMIZED_H3, GENERAL_PURPOSE,GENERAL_PURPOSE_C4, GENERAL_PURPOSE_E2,GENERAL_PURPOSE_N2, GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED, GRAPHICS_OPTIMIZED_G4,GRAPHICS_OPTIMIZED_G4_VGPU,MEMORY_OPTIMIZED, MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3. For * example, type MEMORY_OPTIMIZED specifies a commitment that * applies only to eligible resources of memory optimized M1 and M2 machine * series. Type GENERAL_PURPOSE specifies a commitment that @@ -4969,6 +5349,21 @@ export namespace compute_v1 { message?: string; } | null; } + /** + * Additional commitment params. + */ + export interface Schema$CommitmentParams { + /** + * Input only. Resource manager tags to be bound to the commitment. Tag keys and + * values have the same definition as resource + * manager tags. Keys and values can be either in numeric format, + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * `{tag_value_short_name\}`. The field is ignored (both PUT & + * PATCH) when empty. + */ + resourceManagerTags?: {[key: string]: string} | null; + } /** * [Output Only] Contains output only fields. */ @@ -4995,6 +5390,200 @@ export namespace compute_v1 { message?: string; } | null; } + /** + * Represents a composite health check. + * + * A composite health check resource specifies the health source resources and + * the health destination resource to which the aggregated health result from + * the health source resources is delivered. + */ + export interface Schema$CompositeHealthCheck { + /** + * Output only. [Output Only] Creation timestamp inRFC3339 + * text format. + */ + creationTimestamp?: string | null; + /** + * An optional description of this resource. Provide this property when you + * create the resource. + */ + description?: string | null; + /** + * Fingerprint of this resource. A hash of the contents stored in this object. + * This field is used in optimistic locking. This field will be ignored when + * inserting a CompositeHealthCheck. An up-to-date fingerprint + * must be provided in order to patch the CompositeHealthCheck; Otherwise, + * the request will fail with error 412 conditionNotMet. To see + * the latest fingerprint, make a get() request to retrieve the + * CompositeHealthCheck. + */ + fingerprint?: string | null; + /** + * URL to the destination resource. Must be set. Must be aForwardingRule. The ForwardingRule must have + * load balancing scheme INTERNAL orINTERNAL_MANAGED and must be regional and in the same region + * as the CompositeHealthCheck (cross-region deployment forINTERNAL_MANAGED is not supported). Can be mutated. + */ + healthDestination?: string | null; + /** + * URLs to the HealthSource resources whose results are AND'ed. + * I.e. he aggregated result is is HEALTHY only if all sources + * are HEALTHY. Must have at least 1. Must not have more than 10. + * Must be regional and in the same region as theCompositeHealthCheck. Can be mutated. + */ + healthSources?: string[] | null; + /** + * Output only. [Output Only] A unique identifier for this resource type. The server + * generates this identifier. + */ + id?: string | null; + /** + * Output only. [Output Only] Type of the resource. Alwayscompute#compositeHealthCheck for composite health checks. + */ + kind?: string | null; + /** + * Name of the resource. Provided by the client when the resource is created. + * The name must be 1-63 characters long, and comply withRFC1035. + * Specifically, the name must be 1-63 characters long and match the regular + * expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first + * character must be a lowercase letter, and all following characters must + * be a dash, lowercase letter, or digit, except the last character, which + * cannot be a dash. + */ + name?: string | null; + /** + * Output only. [Output Only] URL of the region where the composite health check resides. + * This field applies only to the regional resource. You must specify this + * field as part of the HTTP request URL. It is not settable as a field in + * the request body. + */ + region?: string | null; + /** + * Output only. [Output Only] Server-defined URL for the resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Server-defined URL with id for the resource. + */ + selfLinkWithId?: string | null; + } + /** + * Contains a list of CompositeHealthChecksScopedList. + */ + export interface Schema$CompositeHealthCheckAggregatedList { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of CompositeHealthChecksScopedList resources. + */ + items?: {[key: string]: Schema$CompositeHealthChecksScopedList} | null; + /** + * Output only. Type of resource. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * Response message for RegionCompositeHealthChecks.GetHealth + */ + export interface Schema$CompositeHealthCheckHealth { + /** + * Health sources and their corresponding health states. + */ + healthSources?: Schema$CompositeHealthChecksGetHealthResponseHealthSourceHealth[]; + /** + * Health state of the CompositeHealthCheck. + */ + healthState?: string | null; + /** + * Output only. [Output Only] Type of resource. Alwayscompute#compositeHealthCheckHealth for the health of + * composite health checks. + */ + kind?: string | null; + } + export interface Schema$CompositeHealthCheckList { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of CompositeHealthCheck resources. + */ + items?: Schema$CompositeHealthCheck[]; + /** + * Output only. [Output Only] Type of the resource. Alwayscompute#compositeHealthCheck for composite health checks. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + export interface Schema$CompositeHealthChecksGetHealthResponseHealthSourceHealth { + /** + * Health state of the associated HealthSource resource. + */ + healthState?: string | null; + /** + * Fully qualified URL of the associated HealthSource resource. + */ + source?: string | null; + } + export interface Schema$CompositeHealthChecksScopedList { + /** + * A list of CompositeHealthChecks contained in this scope. + */ + compositeHealthChecks?: Schema$CompositeHealthCheck[]; + /** + * Informational warning which replaces the list of composite health checks + * when the list is empty. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * A set of Confidential Instance options. */ @@ -6040,8 +6629,8 @@ export namespace compute_v1 { * Input only. Resource manager tags to be bound to the disk. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -6306,6 +6895,23 @@ export namespace compute_v1 { message?: string; } | null; } + export interface Schema$DiskUpdateKmsKeyRequest { + /** + * Optional. The new KMS key to replace the current one on the disk. If empty, the disk + * will be re-encrypted using the primary version of the disk's current KMS + * key. + * + * The KMS key can be provided in the following formats: + * + * + * - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key + * + * + * Where project is the project ID or + * project number. + */ + kmsKeyName?: string | null; + } /** * A set of Display Device options */ @@ -6324,6 +6930,11 @@ export namespace compute_v1 { /** * Zones where the regional managed instance group will create and manage * its instances. + * By default, a regional MIG doesn't automatically select an AI zone to create + * instances, even if an AI zone is available in the specified region. To + * create instances in an AI zone in the selected region, you must explicitly + * specify it in the distribution policy together with the other preferred + * zones. */ zones?: Schema$DistributionPolicyZoneConfiguration[]; } @@ -7044,7 +7655,8 @@ export namespace compute_v1 { */ parent?: string | null; /** - * The type of the firewall policy. This field can be eitherVPC_POLICY or RDMA_ROCE_POLICY. + * The type of the firewall policy. This field can be one of + * VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY. * * Note: if not specified then VPC_POLICY will be used. */ @@ -7394,8 +8006,7 @@ export namespace compute_v1 { */ export interface Schema$FixedOrPercent { /** - * Output only. [Output Only] Absolute value of VM instances calculated based on the - * specific mode. + * Output only. Absolute value of VM instances calculated based on the specific mode. * * * @@ -8023,6 +8634,7 @@ export namespace compute_v1 { * existing commitment. */ commitmentInfo?: Schema$FutureReservationCommitmentInfo; + confidentialComputeType?: string | null; /** * Output only. [Output Only] The creation timestamp for this future reservation inRFC3339 * text format. @@ -8068,6 +8680,11 @@ export namespace compute_v1 { * reservations name format will be -date-####. */ namePrefix?: string | null; + /** + * Input only. Additional params passed with the request, but not persisted + * as part of resource payload. + */ + params?: Schema$FutureReservationParams; /** * Planning state before being submitted for evaluation */ @@ -8143,6 +8760,21 @@ export namespace compute_v1 { */ previousCommitmentTerms?: string | null; } + /** + * Additional future reservation params. + */ + export interface Schema$FutureReservationParams { + /** + * Input only. Resource manager tags to be bound to the future reservation. Tag keys and + * values have the same definition as resource + * manager tags. Keys and values can be either in numeric format, + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * `{tag_value_short_name\}`. The field is ignored (both PUT & + * PATCH) when empty. + */ + resourceManagerTags?: {[key: string]: string} | null; + } /** * Contains a list of future reservations. */ @@ -8536,6 +9168,21 @@ export namespace compute_v1 { aggregateResources?: Schema$FutureResourcesSpecAggregateResources; specificSkuResources?: Schema$FutureResourcesSpecSpecificSKUResources; } + export interface Schema$GetVersionOperationMetadata { + inlineSbomInfo?: Schema$GetVersionOperationMetadataSbomInfo; + } + export interface Schema$GetVersionOperationMetadataSbomInfo { + /** + * A mapping of components to their currently-applied versions or other + * appropriate identifiers. + */ + currentComponentVersions?: {[key: string]: string} | null; + /** + * A mapping of components to their target versions or other appropriate + * identifiers. + */ + targetComponentVersions?: {[key: string]: string} | null; + } export interface Schema$GlobalAddressesMoveRequest { /** * An optional destination address description if intended to be different @@ -8621,349 +9268,611 @@ export namespace compute_v1 { policy?: Schema$Policy; } /** - * Maintenance Info for ReservationBlocks. + * Message describing GlobalVmExtensionPolicy object. */ - export interface Schema$GroupMaintenanceInfo { - /** - * Describes number of instances that have ongoing maintenance. - */ - instanceMaintenanceOngoingCount?: number | null; - /** - * Describes number of instances that have pending maintenance. - */ - instanceMaintenancePendingCount?: number | null; + export interface Schema$GlobalVmExtensionPolicy { /** - * Progress for ongoing maintenance for this group of VMs/hosts. - * Describes number of hosts in the block that have ongoing maintenance. - */ - maintenanceOngoingCount?: number | null; - /** - * Progress for ongoing maintenance for this group of VMs/hosts. - * Describes number of hosts in the block that have pending maintenance. - */ - maintenancePendingCount?: number | null; - /** - * The type of maintenance for the reservation. - */ - schedulingType?: string | null; - /** - * Describes number of subblock Infrastructure that has ongoing maintenance. - * Here, Subblock Infrastructure Maintenance pertains to upstream hardware - * contained in the Subblock that is necessary for a VM Family(e.g. NVLink - * Domains). Not all VM Families will support this field. - */ - subblockInfraMaintenanceOngoingCount?: number | null; - /** - * Describes number of subblock Infrastructure that has pending maintenance. - * Here, Subblock Infrastructure Maintenance pertains to upstream hardware - * contained in the Subblock that is necessary for a VM Family (e.g. NVLink - * Domains). Not all VM Families will support this field. - */ - subblockInfraMaintenancePendingCount?: number | null; - /** - * Maintenance information on this group of VMs. + * Output only. [Output Only] Creation timestamp inRFC3339 + * text format. */ - upcomingGroupMaintenance?: Schema$UpcomingMaintenance; - } - export interface Schema$GRPCHealthCheck { + creationTimestamp?: string | null; /** - * The gRPC service name for the health check. This field is optional. The - * value of grpc_service_name has the following meanings by convention: - * - * - Empty service_name means the overall status of all services at the - * backend. - * - * - Non-empty service_name means the health of that gRPC service, as defined - * by the owner of the service. - * - * The grpc_service_name can only be ASCII. + * An optional description of this resource. Provide this property when you + * create the resource. */ - grpcServiceName?: string | null; + description?: string | null; /** - * The TCP port number to which the health check prober sends packets. Valid - * values are 1 through 65535. + * Required. Map from extension (eg: "cloudops") to its policy configuration. + * The key is the name of the extension. */ - port?: number | null; + extensionPolicies?: { + [key: string]: Schema$GlobalVmExtensionPolicyExtensionPolicy; + } | null; /** - * Not supported. + * Output only. [Output Only] The unique identifier for the resource. This identifier is + * defined by the server. */ - portName?: string | null; + id?: string | null; /** - * Specifies how a port is selected for health checking. Can be one of the - * following values: - * USE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services - * for passthrough load balancers and backend services for proxy load - * balancers. Not supported by target pools. The health check supports all - * backends supported by the backend service provided the backend can be - * health checked. For example, GCE_VM_IP network endpoint - * groups, GCE_VM_IP_PORT network endpoint groups, and instance - * group backends. - * USE_NAMED_PORT: Not supported. - * USE_SERVING_PORT: Provides an indirect method of specifying - * the health check port by referring to the backend service. Only supported - * by backend services for proxy load balancers. Not supported by target - * pools. Not supported by backend services for passthrough load balancers. - * Supports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group - * backends. - * - * For GCE_VM_IP_PORT network endpoint group backends, the health - * check uses the port number specified for each endpoint in the network - * endpoint group. For instance group backends, the health check uses the - * port number determined by looking up the backend service's named port in - * the instance group's list of named ports. + * Optional. Selector to target VMs for a policy. + * There is a logical "AND" between instance_selectors. */ - portSpecification?: string | null; - } - export interface Schema$GRPCTLSHealthCheck { + instanceSelectors?: Schema$GlobalVmExtensionPolicyInstanceSelector[]; /** - * The gRPC service name for the health check. This field is optional. The - * value of grpc_service_name has the following meanings by convention: - * - * - Empty service_name means the overall status of all services at the - * backend. - * - * - Non-empty service_name means the health of that gRPC service, as defined - * by the owner of the service. - * - * The grpc_service_name can only be ASCII. + * Output only. [Output Only] Type of the resource. Alwayscompute#globalVmExtensionPolicy for globalVmExtensionPolicies. */ - grpcServiceName?: string | null; + kind?: string | null; /** - * The TCP port number to which the health check prober sends packets. Valid - * values are 1 through 65535. + * Name of the resource. Provided by the client when the resource is created. + * The name must be 1-63 characters long, and comply withRFC1035. + * Specifically, the name must be 1-63 characters long and match the regular + * expression `[a-z]([-a-z0-9]*[a-z0-9])?` + * which means the first character must be a lowercase letter, and all + * following characters must be a dash, lowercase letter, or digit, except + * the last character, which cannot be a dash. */ - port?: number | null; + name?: string | null; /** - * Specifies how a port is selected for health checking. Can be one of the - * following values: - * USE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services - * for passthrough load balancers and backend services for proxy load - * balancers. Not supported by target pools. The health check supports all - * backends supported by the backend service provided the backend can be - * health checked. For example, GCE_VM_IP network endpoint - * groups, GCE_VM_IP_PORT network endpoint groups, and instance - * group backends. - * USE_NAMED_PORT: Not supported. - * USE_SERVING_PORT: Provides an indirect method of specifying - * the health check port by referring to the backend service. Only supported - * by backend services for proxy load balancers. Not supported by target - * pools. Not supported by backend services for passthrough load balancers. - * Supports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group - * backends. + * Optional. Used to resolve conflicts when multiple policies are active for the same + * extension. Defaults to 0. * - * For GCE_VM_IP_PORT network endpoint group backends, the health - * check uses the port number specified for each endpoint in the network - * endpoint group. For instance group backends, the health check uses the - * port number determined by looking up the backend service's named port in - * the instance group's list of named ports. - */ - portSpecification?: string | null; - } - /** - * A guest attributes entry. - */ - export interface Schema$GuestAttributes { - /** - * Output only. [Output Only] Type of the resource. Alwayscompute#guestAttributes for guest attributes entry. + * Larger the number, higher the priority. When the priority is the same, + * the policy with the newer create time has higher priority. */ - kind?: string | null; + priority?: number | null; /** - * The path to be queried. This can be the default namespace ('') or a - * nested namespace ('\/') or a specified key - * ('\/\'). + * Required. The rollout strategy and status. */ - queryPath?: string | null; + rolloutOperation?: Schema$GlobalVmExtensionPolicyRolloutOperation; /** - * Output only. [Output Only] The value of the requested queried path. + * Output only. [Output Only] The scoped resource status. It's only for tracking the + * purging status of the policy. */ - queryValue?: Schema$GuestAttributesValue; + scopedResourceStatus?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. [Output Only] Server-defined fully-qualified URL for this resource. */ selfLink?: string | null; /** - * The key to search for. + * Output only. [Output Only] Server-defined URL for this resource's resource id. */ - variableKey?: string | null; + selfLinkWithId?: string | null; /** - * Output only. [Output Only] The value found for the requested key. + * Output only. [Output Only] Update timestamp inRFC3339 + * text format. */ - variableValue?: string | null; + updateTimestamp?: string | null; } /** - * A guest attributes namespace/key/value entry. + * Policy for a single extension. */ - export interface Schema$GuestAttributesEntry { + export interface Schema$GlobalVmExtensionPolicyExtensionPolicy { /** - * Key for the guest attribute entry. + * Optional. The version pinning for the extension. + * If empty, the extension will be installed with the latest version + * released by the extension producer. */ - key?: string | null; + pinnedVersion?: string | null; /** - * Namespace for the guest attribute entry. - */ - namespace?: string | null; - /** - * Value for the guest attribute entry. + * Optional. String configuration. Any string payload that the extension + * understands. */ - value?: string | null; + stringConfig?: string | null; } /** - * Array of guest attribute namespace/key/value tuples. + * Selector to target VMs for a zone VM extension policy. */ - export interface Schema$GuestAttributesValue { - items?: Schema$GuestAttributesEntry[]; - } - /** - * Guest OS features. - */ - export interface Schema$GuestOsFeature { + export interface Schema$GlobalVmExtensionPolicyInstanceSelector { /** - * The ID of a supported feature. To add multiple values, use commas to - * separate values. Set to one or more of the following values: - * - * - VIRTIO_SCSI_MULTIQUEUE - * - WINDOWS - * - MULTI_IP_SUBNET - * - UEFI_COMPATIBLE - * - GVNIC - * - SEV_CAPABLE - * - SUSPEND_RESUME_COMPATIBLE - * - SEV_LIVE_MIGRATABLE_V2 - * - SEV_SNP_CAPABLE - * - TDX_CAPABLE - * - IDPF - * - SNP_SVSM_CAPABLE - * - * - * For more information, see - * Enabling guest operating system features. + * Optional. Labels within the LabelSelector are OR'd. */ - type?: string | null; - } - export interface Schema$HealthAggregationPoliciesScopedList { - /** - * A list of HealthAggregationPolicys contained in this scope. - */ - healthAggregationPolicies?: Schema$HealthAggregationPolicy[]; - /** - * Informational warning which replaces the list of health aggregation - * policies when the list is empty. - */ - warning?: { - code?: string; - data?: Array<{key?: string; value?: string}>; - message?: string; - } | null; + labelSelector?: Schema$GlobalVmExtensionPolicyLabelSelector; } /** - * Represents a health aggregation policy. - * - * A health aggregation policy resource defines a policy to aggregate health. - * - * For more information, see - * Health checks overview. + * A LabelSelector is applicable for a VM only if it matches all labels in + * the LabelSelector. */ - export interface Schema$HealthAggregationPolicy { - /** - * Output only. [Output Only] Creation timestamp inRFC3339 - * text format. - */ - creationTimestamp?: string | null; - /** - * An optional description of this resource. Provide this property when you - * create the resource. - */ - description?: string | null; - /** - * Fingerprint of this resource. A hash of the contents stored in this object. - * This field is used in optimistic locking. This field will be ignored when - * inserting a HealthAggregationPolicy. An up-to-date fingerprint - * must be provided in order to patch the HealthAggregationPolicy; Otherwise, - * the request will fail with error 412 conditionNotMet. To see - * the latest fingerprint, make a get() request to retrieve the - * HealthAggregationPolicy. - */ - fingerprint?: string | null; - /** - * Can only be set if the policyType field isBACKEND_SERVICE_POLICY. Specifies the threshold (as a - * percentage) of healthy endpoints required in order to consider the - * aggregated health result HEALTHY. Defaults to 60. Must be in - * range [0, 100]. Not applicable if the policyType field isDNB_PUBLIC_IP_POLICY. Can be mutated. This field is optional, - * and will be set to the default if unspecified. Note that both this - * threshold and minHealthyThreshold must be satisfied in order - * for HEALTHY to be the aggregated result. "Endpoints" refers to network - * endpoints within a Network Endpoint Group or instances within an Instance - * Group. - */ - healthyPercentThreshold?: number | null; - /** - * Output only. [Output Only] The unique identifier for the resource. This identifier is - * defined by the server. - */ - id?: string | null; + export interface Schema$GlobalVmExtensionPolicyLabelSelector { /** - * Output only. [Output Only] Type of the resource. Alwayscompute#healthAggregationPolicy for health aggregation - * policies. + * Optional. Labels as key value pairs. + * A VM should contain all the pairs specified in this map to be selected; + * Labels within the LabelSelector are OR'ed. */ - kind?: string | null; - /** - * Can only be set if the policyType field isBACKEND_SERVICE_POLICY. Specifies the minimum number of - * healthy endpoints required in order to consider the aggregated health - * result HEALTHY. Defaults to 1. Must be positive. Not - * applicable if the policyType field isDNB_PUBLIC_IP_POLICY. Can be mutated. This field is optional, - * and will be set to the default if unspecified. Note that both this - * threshold and healthyPercentThreshold must be satisfied in - * order for HEALTHY to be the aggregated result. "Endpoints" refers to - * network endpoints within a Network Endpoint Group or instances within an - * Instance Group. - */ - minHealthyThreshold?: number | null; - /** - * Name of the resource. Provided by the client when the resource is created. - * The name must be 1-63 characters long, and comply withRFC1035. - * Specifically, the name must be 1-63 characters long and match the regular - * expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first - * character must be a lowercase letter, and all following characters must - * be a dash, lowercase letter, or digit, except the last character, which - * cannot be a dash. - */ - name?: string | null; - /** - * Specifies the type of the healthAggregationPolicy. The only allowed value - * for global resources is DNS_PUBLIC_IP_POLICY. The only allowed - * value for regional resources is BACKEND_SERVICE_POLICY. Must - * be specified when the healthAggregationPolicy is created, and cannot be - * mutated. - */ - policyType?: string | null; - /** - * Output only. [Output Only] URL of the region where the health aggregation policy - * resides. This field applies only to the regional resource. You must specify - * this field as part of the HTTP request URL. It is not settable as a field - * in the request body. - */ - region?: string | null; - /** - * Output only. [Output Only] Server-defined URL for the resource. - */ - selfLink?: string | null; - /** - * Output only. [Output Only] Server-defined URL with id for the resource. - */ - selfLinkWithId?: string | null; + inclusionLabels?: {[key: string]: string} | null; } /** - * Contains a list of HealthAggregationPoliciesScopedList. + * Response to list global VM extension policy resources. */ - export interface Schema$HealthAggregationPolicyAggregatedList { + export interface Schema$GlobalVmExtensionPolicyList { + etag?: string | null; /** * [Output Only] Unique identifier for the resource; defined by the server. */ id?: string | null; /** - * A list of HealthAggregationPoliciesScopedList resources. + * A list of GlobalVmExtensionPolicy resources. */ - items?: {[key: string]: Schema$HealthAggregationPoliciesScopedList} | null; + items?: Schema$GlobalVmExtensionPolicy[]; + /** + * Output only. Type of resource. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * Represents the rollout operation + */ + export interface Schema$GlobalVmExtensionPolicyRolloutOperation { + /** + * Required. The rollout input which defines the rollout plan. + */ + rolloutInput?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutInput; + /** + * Output only. [Output Only] The rollout status of the policy. + */ + rolloutStatus?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatus; + } + export interface Schema$GlobalVmExtensionPolicyRolloutOperationRolloutInput { + /** + * Optional. Specifies the behavior of the rollout if a conflict is detected in a + * project during a rollout. This only applies to `insert` and `update` + * methods. + * + * A conflict occurs in the following cases: + * + * * `insert` method: If the zonal policy already exists when the insert + * happens. + * * `update` method: If the zonal policy was modified by a zonal API call + * outside of this rollout. + * + * Possible values are the following: + * + * * `""` (empty string): If a conflict occurs, the local value is not + * overwritten. This is the default behavior. + * * `"overwrite"`: If a conflict occurs, the local value is overwritten + * with the rollout value. + */ + conflictBehavior?: string | null; + /** + * Optional. The name of the rollout plan. + * Ex. + * projects//locations/global/rolloutPlans/. + */ + name?: string | null; + /** + * Optional. Specifies the predefined rollout plan for the policy. Valid values + * are `SLOW_ROLLOUT` and `FAST_ROLLOUT`. The recommended value is + * `SLOW_ROLLOUT` for progressive rollout. For more information, see Rollout + * plans for global policies. + */ + predefinedRolloutPlan?: string | null; + /** + * Optional. The UUID that identifies a policy rollout retry attempt for update and + * delete operations. Set this field only when retrying a rollout for an + * existing extension policy. + * + * * `update` method: Lets you retry policy rollout without changes. + * An error occurs if you set retry_uuid but the policy is modified. + * * `delete` method: Lets you retry policy deletion rollout if the + * previous deletion rollout is not finished and the policy is in the + * DELETING state. If you set this field when the policy is not in the + * DELETING state, an error occurs. + */ + retryUuid?: string | null; + } + export interface Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatus { + /** + * Output only. [Output Only] The current rollouts for the latest version of the + * resource. There should be only one current rollout, but for + * scalability, we make it repeated. + */ + currentRollouts?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata[]; + /** + * Output only. [Output Only] The last completed rollout resource. This field will not + * be populated until the first rollout is completed. + */ + previousRollout?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata; + } + export interface Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadata { + /** + * Output only. [Output Only] The rollout status for each location. The list of the + * locations is the same as the list of locations in the rollout plan. + */ + locationRolloutStatus?: { + [ + key: string + ]: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus; + } | null; + /** + * Output only. [Output Only] The name of the rollout. + * Ex. projects//locations/global/rollouts/. + */ + rollout?: string | null; + /** + * Output only. [Output Only] The name of the rollout plan. + * Ex. + * projects//locations/global/rolloutPlans/. + */ + rolloutPlan?: string | null; + /** + * Output only. [Output Only] The overall state of the rollout. + */ + state?: string | null; + } + export interface Schema$GlobalVmExtensionPolicyRolloutOperationRolloutStatusRolloutMetadataLocationRolloutStatus { + /** + * Output only. [Output Only] The state of the location rollout. + */ + state?: string | null; + } + /** + * Maintenance Info for ReservationBlocks. + */ + export interface Schema$GroupMaintenanceInfo { + /** + * Describes number of instances that have ongoing maintenance. + */ + instanceMaintenanceOngoingCount?: number | null; + /** + * Describes number of instances that have pending maintenance. + */ + instanceMaintenancePendingCount?: number | null; + /** + * Progress for ongoing maintenance for this group of VMs/hosts. + * Describes number of hosts in the block that have ongoing maintenance. + */ + maintenanceOngoingCount?: number | null; + /** + * Progress for ongoing maintenance for this group of VMs/hosts. + * Describes number of hosts in the block that have pending maintenance. + */ + maintenancePendingCount?: number | null; + /** + * The type of maintenance for the reservation. + */ + schedulingType?: string | null; + /** + * Describes number of subblock Infrastructure that has ongoing maintenance. + * Here, Subblock Infrastructure Maintenance pertains to upstream hardware + * contained in the Subblock that is necessary for a VM Family(e.g. NVLink + * Domains). Not all VM Families will support this field. + */ + subblockInfraMaintenanceOngoingCount?: number | null; + /** + * Describes number of subblock Infrastructure that has pending maintenance. + * Here, Subblock Infrastructure Maintenance pertains to upstream hardware + * contained in the Subblock that is necessary for a VM Family (e.g. NVLink + * Domains). Not all VM Families will support this field. + */ + subblockInfraMaintenancePendingCount?: number | null; + /** + * Maintenance information on this group of VMs. + */ + upcomingGroupMaintenance?: Schema$UpcomingMaintenance; + } + export interface Schema$GRPCHealthCheck { + /** + * The gRPC service name for the health check. This field is optional. The + * value of grpc_service_name has the following meanings by convention: + * + * - Empty service_name means the overall status of all services at the + * backend. + * + * - Non-empty service_name means the health of that gRPC service, as defined + * by the owner of the service. + * + * The grpc_service_name can only be ASCII. + */ + grpcServiceName?: string | null; + /** + * The TCP port number to which the health check prober sends packets. Valid + * values are 1 through 65535. + */ + port?: number | null; + /** + * Not supported. + */ + portName?: string | null; + /** + * Specifies how a port is selected for health checking. Can be one of the + * following values: + * USE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services + * for passthrough load balancers and backend services for proxy load + * balancers. Not supported by target pools. The health check supports all + * backends supported by the backend service provided the backend can be + * health checked. For example, GCE_VM_IP network endpoint + * groups, GCE_VM_IP_PORT network endpoint groups, and instance + * group backends. + * USE_NAMED_PORT: Not supported. + * USE_SERVING_PORT: Provides an indirect method of specifying + * the health check port by referring to the backend service. Only supported + * by backend services for proxy load balancers. Not supported by target + * pools. Not supported by backend services for passthrough load balancers. + * Supports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group + * backends. + * + * For GCE_VM_IP_PORT network endpoint group backends, the health + * check uses the port number specified for each endpoint in the network + * endpoint group. For instance group backends, the health check uses the + * port number determined by looking up the backend service's named port in + * the instance group's list of named ports. + */ + portSpecification?: string | null; + } + export interface Schema$GRPCTLSHealthCheck { + /** + * The gRPC service name for the health check. This field is optional. The + * value of grpc_service_name has the following meanings by convention: + * + * - Empty service_name means the overall status of all services at the + * backend. + * + * - Non-empty service_name means the health of that gRPC service, as defined + * by the owner of the service. + * + * The grpc_service_name can only be ASCII. + */ + grpcServiceName?: string | null; + /** + * The TCP port number to which the health check prober sends packets. Valid + * values are 1 through 65535. + */ + port?: number | null; + /** + * Specifies how a port is selected for health checking. Can be one of the + * following values: + * USE_FIXED_PORT: Specifies a port number explicitly using theport field in the health check. Supported by backend services + * for passthrough load balancers and backend services for proxy load + * balancers. Not supported by target pools. The health check supports all + * backends supported by the backend service provided the backend can be + * health checked. For example, GCE_VM_IP network endpoint + * groups, GCE_VM_IP_PORT network endpoint groups, and instance + * group backends. + * USE_NAMED_PORT: Not supported. + * USE_SERVING_PORT: Provides an indirect method of specifying + * the health check port by referring to the backend service. Only supported + * by backend services for proxy load balancers. Not supported by target + * pools. Not supported by backend services for passthrough load balancers. + * Supports all backends that can be health checked; for example,GCE_VM_IP_PORT network endpoint groups and instance group + * backends. + * + * For GCE_VM_IP_PORT network endpoint group backends, the health + * check uses the port number specified for each endpoint in the network + * endpoint group. For instance group backends, the health check uses the + * port number determined by looking up the backend service's named port in + * the instance group's list of named ports. + */ + portSpecification?: string | null; + } + /** + * A guest attributes entry. + */ + export interface Schema$GuestAttributes { + /** + * Output only. [Output Only] Type of the resource. Alwayscompute#guestAttributes for guest attributes entry. + */ + kind?: string | null; + /** + * The path to be queried. This can be the default namespace ('') or a + * nested namespace ('\/') or a specified key + * ('\/\'). + */ + queryPath?: string | null; + /** + * Output only. [Output Only] The value of the requested queried path. + */ + queryValue?: Schema$GuestAttributesValue; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * The key to search for. + */ + variableKey?: string | null; + /** + * Output only. [Output Only] The value found for the requested key. + */ + variableValue?: string | null; + } + /** + * A guest attributes namespace/key/value entry. + */ + export interface Schema$GuestAttributesEntry { + /** + * Key for the guest attribute entry. + */ + key?: string | null; + /** + * Namespace for the guest attribute entry. + */ + namespace?: string | null; + /** + * Value for the guest attribute entry. + */ + value?: string | null; + } + /** + * Array of guest attribute namespace/key/value tuples. + */ + export interface Schema$GuestAttributesValue { + items?: Schema$GuestAttributesEntry[]; + } + /** + * Guest OS features. + */ + export interface Schema$GuestOsFeature { + /** + * The ID of a supported feature. To add multiple values, use commas to + * separate values. Set to one or more of the following values: + * + * - VIRTIO_SCSI_MULTIQUEUE + * - WINDOWS + * - MULTI_IP_SUBNET + * - UEFI_COMPATIBLE + * - GVNIC + * - SEV_CAPABLE + * - SUSPEND_RESUME_COMPATIBLE + * - SEV_LIVE_MIGRATABLE_V2 + * - SEV_SNP_CAPABLE + * - TDX_CAPABLE + * - IDPF + * - SNP_SVSM_CAPABLE + * - CCA_CAPABLE + * + * + * For more information, see + * Enabling guest operating system features. + */ + type?: string | null; + } + export interface Schema$HealthAggregationPoliciesScopedList { + /** + * A list of HealthAggregationPolicys contained in this scope. + */ + healthAggregationPolicies?: Schema$HealthAggregationPolicy[]; + /** + * Informational warning which replaces the list of health aggregation + * policies when the list is empty. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * Represents a health aggregation policy. + * + * A health aggregation policy resource defines a policy to aggregate health. + * + * For more information, see + * Health checks overview. + */ + export interface Schema$HealthAggregationPolicy { + /** + * Output only. [Output Only] Creation timestamp inRFC3339 + * text format. + */ + creationTimestamp?: string | null; + /** + * An optional description of this resource. Provide this property when you + * create the resource. + */ + description?: string | null; + /** + * Fingerprint of this resource. A hash of the contents stored in this object. + * This field is used in optimistic locking. This field will be ignored when + * inserting a HealthAggregationPolicy. An up-to-date fingerprint + * must be provided in order to patch the HealthAggregationPolicy; Otherwise, + * the request will fail with error 412 conditionNotMet. To see + * the latest fingerprint, make a get() request to retrieve the + * HealthAggregationPolicy. + */ + fingerprint?: string | null; + /** + * Can only be set if the policyType field isBACKEND_SERVICE_POLICY. Specifies the threshold (as a + * percentage) of healthy endpoints required in order to consider the + * aggregated health result HEALTHY. Defaults to 60. Must be in + * range [0, 100]. Not applicable if the policyType field isDNB_PUBLIC_IP_POLICY. Can be mutated. This field is optional, + * and will be set to the default if unspecified. Note that both this + * threshold and minHealthyThreshold must be satisfied in order + * for HEALTHY to be the aggregated result. "Endpoints" refers to network + * endpoints within a Network Endpoint Group or instances within an Instance + * Group. + */ + healthyPercentThreshold?: number | null; + /** + * Output only. [Output Only] The unique identifier for the resource. This identifier is + * defined by the server. + */ + id?: string | null; + /** + * Output only. [Output Only] Type of the resource. Alwayscompute#healthAggregationPolicy for health aggregation + * policies. + */ + kind?: string | null; + /** + * Can only be set if the policyType field isBACKEND_SERVICE_POLICY. Specifies the minimum number of + * healthy endpoints required in order to consider the aggregated health + * result HEALTHY. Defaults to 1. Must be positive. Not + * applicable if the policyType field isDNB_PUBLIC_IP_POLICY. Can be mutated. This field is optional, + * and will be set to the default if unspecified. Note that both this + * threshold and healthyPercentThreshold must be satisfied in + * order for HEALTHY to be the aggregated result. "Endpoints" refers to + * network endpoints within a Network Endpoint Group or instances within an + * Instance Group. + */ + minHealthyThreshold?: number | null; + /** + * Name of the resource. Provided by the client when the resource is created. + * The name must be 1-63 characters long, and comply withRFC1035. + * Specifically, the name must be 1-63 characters long and match the regular + * expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first + * character must be a lowercase letter, and all following characters must + * be a dash, lowercase letter, or digit, except the last character, which + * cannot be a dash. + */ + name?: string | null; + /** + * Specifies the type of the healthAggregationPolicy. The only allowed value + * for global resources is DNS_PUBLIC_IP_POLICY. The only allowed + * value for regional resources is BACKEND_SERVICE_POLICY. Must + * be specified when the healthAggregationPolicy is created, and cannot be + * mutated. + */ + policyType?: string | null; + /** + * Output only. [Output Only] URL of the region where the health aggregation policy + * resides. This field applies only to the regional resource. You must specify + * this field as part of the HTTP request URL. It is not settable as a field + * in the request body. + */ + region?: string | null; + /** + * Output only. [Output Only] Server-defined URL for the resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Server-defined URL with id for the resource. + */ + selfLinkWithId?: string | null; + } + /** + * Contains a list of HealthAggregationPoliciesScopedList. + */ + export interface Schema$HealthAggregationPolicyAggregatedList { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of HealthAggregationPoliciesScopedList resources. + */ + items?: {[key: string]: Schema$HealthAggregationPoliciesScopedList} | null; /** * Output only. Type of resource. */ @@ -9341,6 +10250,47 @@ export namespace compute_v1 { */ selfLink?: string | null; } + /** + * Contains a list of HealthCheckServicesScopedList. + */ + export interface Schema$HealthCheckServiceAggregatedList { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of HealthCheckServicesScopedList resources. + */ + items?: {[key: string]: Schema$HealthCheckServicesScopedList} | null; + /** + * Output only. Type of resource. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * A full or valid partial URL to a health check service. For example, the * following are valid URLs: @@ -9387,6 +10337,21 @@ export namespace compute_v1 { message?: string; } | null; } + export interface Schema$HealthCheckServicesScopedList { + /** + * A list of HealthCheckServices contained in this scope. + */ + resources?: Schema$HealthCheckService[]; + /** + * Informational warning which replaces the list of + * backend services when the list is empty. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } export interface Schema$HealthChecksScopedList { /** * A list of HealthChecks contained in this scope. @@ -9402,6 +10367,230 @@ export namespace compute_v1 { message?: string; } | null; } + /** + * Represents a health source. + * + * A health source resource specifies the source resources and the health + * aggregation policy applied to the source resources to determine the + * aggregated health status. + */ + export interface Schema$HealthSource { + /** + * Output only. [Output Only] Creation timestamp inRFC3339 + * text format. + */ + creationTimestamp?: string | null; + /** + * An optional description of this resource. Provide this property when you + * create the resource. + */ + description?: string | null; + /** + * Fingerprint of this resource. A hash of the contents stored in this object. + * This field is used in optimistic locking. This field will be ignored when + * inserting a HealthSource. An up-to-date fingerprint + * must be provided in order to patch the HealthSource; Otherwise, the request + * will fail with error 412 conditionNotMet. To see the latest + * fingerprint, make a get() request to retrieve the + * HealthSource. + */ + fingerprint?: string | null; + /** + * URL to the HealthAggregationPolicy resource. Must be set. Must + * be regional and in the same region as the HealthSource. Can be + * mutated. + */ + healthAggregationPolicy?: string | null; + /** + * Output only. [Output Only] A unique identifier for this resource type. The server + * generates this identifier. + */ + id?: string | null; + /** + * Output only. [Output Only] Type of the resource. Alwayscompute#healthSource for health sources. + */ + kind?: string | null; + /** + * Name of the resource. Provided by the client when the resource is created. + * The name must be 1-63 characters long, and comply withRFC1035. + * Specifically, the name must be 1-63 characters long and match the regular + * expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first + * character must be a lowercase letter, and all following characters must + * be a dash, lowercase letter, or digit, except the last character, which + * cannot be a dash. + */ + name?: string | null; + /** + * Output only. [Output Only] URL of the region where the health source resides. + * This field applies only to the regional resource. You must specify this + * field as part of the HTTP request URL. It is not settable as a field in + * the request body. + */ + region?: string | null; + /** + * Output only. [Output Only] Server-defined URL for the resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Server-defined URL with id for the resource. + */ + selfLinkWithId?: string | null; + /** + * URLs to the source resources. Must be size 1. Must be aBackendService if + * the sourceType is BACKEND_SERVICE. TheBackendService must have load balancing schemeINTERNAL or INTERNAL_MANAGED and must be regional + * and in the same region as the HealthSource (cross-region + * deployment for INTERNAL_MANAGED is not supported). TheBackendService may use only IGs, MIGs, or NEGs of typeGCE_VM_IP or GCE_VM_IP_PORT. TheBackendService may not use haPolicy. Can be + * mutated. + */ + sources?: string[] | null; + /** + * Specifies the type of the HealthSource. The only allowed value + * is BACKEND_SERVICE. Must be specified when theHealthSource is created, and cannot be mutated. + */ + sourceType?: string | null; + } + /** + * Contains a list of HealthSourcesScopedList. + */ + export interface Schema$HealthSourceAggregatedList { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of HealthSourcesScopedList resources. + */ + items?: {[key: string]: Schema$HealthSourcesScopedList} | null; + /** + * Output only. Type of resource. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * Response message for RegionHealthSources.GetHealth + */ + export interface Schema$HealthSourceHealth { + /** + * Health state of the HealthSource. + */ + healthState?: string | null; + /** + * Output only. [Output Only] Type of resource. Alwayscompute#healthSourceHealth for the health of health sources. + */ + kind?: string | null; + /** + * Health state details of the sources. + */ + sources?: Schema$HealthSourcesGetHealthResponseSourceInfo[]; + } + export interface Schema$HealthSourceList { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of HealthSource resources. + */ + items?: Schema$HealthSource[]; + /** + * Output only. [Output Only] Type of the resource. Alwayscompute#healthSource for health sources. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + export interface Schema$HealthSourcesGetHealthResponseSourceInfo { + /** + * Represents an instance group or network endpoint group behind the source + * backend service. Only used if the sourceType of the regionHealthSource + * is BACKEND_SERVICE. + */ + backends?: Schema$HealthSourcesGetHealthResponseSourceInfoBackendInfo[]; + /** + * Fully qualified URL of the forwarding rule associated with the source + * resource if it is a L4ILB backend service. + */ + forwardingRule?: string | null; + /** + * Fully qualified URL of the associated source resource. This is always a + * backend service URL. + */ + source?: string | null; + } + export interface Schema$HealthSourcesGetHealthResponseSourceInfoBackendInfo { + /** + * Total number of endpoints when determining the health of the + * regionHealthSource. + */ + endpointCount?: number | null; + /** + * Fully qualified URL of an instance group or network endpoint group + * behind the source backend service. + */ + group?: string | null; + /** + * Number of endpoints considered healthy when determining health of the + * regionHealthSource. + */ + healthyEndpointCount?: number | null; + } + export interface Schema$HealthSourcesScopedList { + /** + * A list of HealthSources contained in this scope. + */ + healthSources?: Schema$HealthSource[]; + /** + * Informational warning which replaces the list of + * health sources when the list is empty. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } export interface Schema$HealthStatus { /** * Metadata defined as annotations for network endpoint. @@ -10142,6 +11331,13 @@ export namespace compute_v1 { retryConditions?: string[] | null; } export interface Schema$HttpRouteAction { + /** + * Specifies the cache policy configuration for matched traffic. Available + * only for Global `EXTERNAL_MANAGED` load balancer schemes. At least one + * property must be specified. This policy cannot be specified if any target + * backend has Identity-Aware Proxy enabled. + */ + cachePolicy?: Schema$CachePolicy; /** * The specification for allowing client-side cross-origin requests. For more * information about the W3C recommendation for cross-origin resource sharing @@ -10965,8 +12161,8 @@ export namespace compute_v1 { * Input only. Resource manager tags to be bound to the image. Tag keys and values have * the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -11592,12 +12788,12 @@ export namespace compute_v1 { */ baseInstanceName?: string | null; /** - * Output only. [Output Only] The creation timestamp for this managed instance group inRFC3339 + * Output only. The creation timestamp for this managed instance group inRFC3339 * text format. */ creationTimestamp?: string | null; /** - * Output only. [Output Only] The list of instance actions and the number of instances + * Output only. The list of instance actions and the number of instances * in this managed instance group that are scheduled for each of those * actions. */ @@ -11622,7 +12818,7 @@ export namespace compute_v1 { */ fingerprint?: string | null; /** - * Output only. [Output Only] A unique identifier for this resource type. The server + * Output only. A unique identifier for this resource type. The server * generates this identifier. */ id?: string | null; @@ -11634,7 +12830,7 @@ export namespace compute_v1 { */ instanceFlexibilityPolicy?: Schema$InstanceGroupManagerInstanceFlexibilityPolicy; /** - * Output only. [Output Only] The URL of the Instance Group resource. + * Output only. The URL of the Instance Group resource. */ instanceGroup?: string | null; /** @@ -11649,7 +12845,7 @@ export namespace compute_v1 { */ instanceTemplate?: string | null; /** - * Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManager for managed instance groups. + * Output only. The resource type, which is alwayscompute#instanceGroupManager for managed instance groups. */ kind?: string | null; /** @@ -11677,15 +12873,15 @@ export namespace compute_v1 { */ resourcePolicies?: Schema$InstanceGroupManagerResourcePolicies; /** - * Output only. [Output Only] Reserved for future use. + * Output only. Reserved for future use. */ satisfiesPzi?: boolean | null; /** - * Output only. [Output Only] Reserved for future use. + * Output only. Reserved for future use. */ satisfiesPzs?: boolean | null; /** - * Output only. [Output Only] The URL for this managed instance group. The server defines + * Output only. The URL for this managed instance group. The server defines * this URL. */ selfLink?: string | null; @@ -11698,7 +12894,7 @@ export namespace compute_v1 { */ statefulPolicy?: Schema$StatefulPolicy; /** - * Output only. [Output Only] The status of this managed instance group. + * Output only. The status of this managed instance group. */ status?: Schema$InstanceGroupManagerStatus; /** @@ -11713,6 +12909,11 @@ export namespace compute_v1 { * changes this number. */ targetSize?: number | null; + /** + * The policy that specifies how the MIG creates its VMs to achieve the target + * size. + */ + targetSizePolicy?: Schema$InstanceGroupManagerTargetSizePolicy; /** * The target number of stopped instances for this managed instance group. * This number changes when you: @@ -11752,20 +12953,20 @@ export namespace compute_v1 { */ versions?: Schema$InstanceGroupManagerVersion[]; /** - * Output only. [Output Only] The URL of azone + * Output only. The URL of azone * where the managed instance group is located (for zonal resources). */ zone?: string | null; } export interface Schema$InstanceGroupManagerActionsSummary { /** - * Output only. [Output Only] The total number of instances in the managed instance group + * Output only. The total number of instances in the managed instance group * that are scheduled to be abandoned. Abandoning an instance removes it * from the managed instance group without deleting it. */ abandoning?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be created or are currently being created. If the group * fails to create any of these instances, it tries again until it creates * the instance successfully. @@ -11775,24 +12976,24 @@ export namespace compute_v1 { */ creating?: number | null; /** - * Output only. [Output Only] The number of instances that the managed instance group + * Output only. The number of instances that the managed instance group * will attempt to create. The group attempts to create each instance * only once. If the group fails to create any of these instances, it * decreases the group's targetSize value accordingly. */ creatingWithoutRetries?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be deleted or are currently being deleted. */ deleting?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are running and have no scheduled actions. */ none?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be recreated or are currently being being recreated. * Recreating an instance deletes the existing root persistent disk * and creates a new disk from the image that is defined in the @@ -11800,39 +13001,39 @@ export namespace compute_v1 { */ recreating?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are being reconfigured with properties that do not require a restart * or a recreate action. For example, setting or removing target * pools for the instance. */ refreshing?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be restarted or are currently being restarted. */ restarting?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be resumed or are currently being resumed. */ resuming?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be started or are currently being started. */ starting?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be stopped or are currently being stopped. */ stopping?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are scheduled to be suspended or are currently being suspended. */ suspending?: number | null; /** - * Output only. [Output Only] The number of instances in the managed instance group that + * Output only. The number of instances in the managed instance group that * are being verified. See the managedInstances[].currentAction * property in the listManagedInstances method documentation. */ @@ -11840,7 +13041,7 @@ export namespace compute_v1 { } export interface Schema$InstanceGroupManagerAggregatedList { /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -11848,12 +13049,12 @@ export namespace compute_v1 { */ items?: {[key: string]: Schema$InstanceGroupManagersScopedList} | null; /** - * Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerAggregatedList for an aggregated + * Output only. The resource type, which is alwayscompute#instanceGroupManagerAggregatedList for an aggregated * list of managed instance groups. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for + * Output only. This token allows you to get the next page of results for * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for * the query parameter pageToken in the next list request. * Subsequent list requests will have their own nextPageToken to @@ -11861,15 +13062,15 @@ export namespace compute_v1 { */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Unreachable resources. + * Output only. Unreachable resources. */ unreachables?: string[] | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -11978,7 +13179,7 @@ export namespace compute_v1 { */ export interface Schema$InstanceGroupManagerList { /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -11986,12 +13187,12 @@ export namespace compute_v1 { */ items?: Schema$InstanceGroupManager[]; /** - * Output only. [Output Only] The resource type, which is always - * compute#instanceGroupManagerList for a list of managed instance groups. + * Output only. The resource type, which is always compute#instanceGroupManagerList for a + * list of managed instance groups. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for + * Output only. This token allows you to get the next page of results for * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for * the query parameter pageToken in the next list request. * Subsequent list requests will have their own nextPageToken to @@ -11999,11 +13200,11 @@ export namespace compute_v1 { */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -12020,7 +13221,7 @@ export namespace compute_v1 { */ export interface Schema$InstanceGroupManagerResizeRequest { /** - * Output only. [Output Only] The creation timestamp for this resize request inRFC3339 + * Output only. The creation timestamp for this resize request inRFC3339 * text format. */ creationTimestamp?: string | null; @@ -12029,13 +13230,12 @@ export namespace compute_v1 { */ description?: string | null; /** - * Output only. [Output Only] A unique identifier for this resource type. The server - * generates this identifier. + * Output only. A unique identifier for this resource type. The server generates this + * identifier. */ id?: string | null; /** - * Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for - * resize requests. + * Output only. The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for resize requests. */ kind?: string | null; /** @@ -12043,6 +13243,12 @@ export namespace compute_v1 { * long, and comply withRFC1035. */ name?: string | null; + /** + * Output only. The URL of a region + * where the resize request is located. Populated only for regional resize + * requests. + */ + region?: string | null; /** * Requested run duration for instances that will be created by this request. * At the end of the run duration instance will be deleted. @@ -12055,24 +13261,23 @@ export namespace compute_v1 { */ resizeBy?: number | null; /** - * Output only. [Output Only] The URL for this resize request. The server defines - * this URL. + * Output only. The URL for this resize request. The server defines this URL. */ selfLink?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource with the resource id. + * Output only. Server-defined URL for this resource with the resource id. */ selfLinkWithId?: string | null; /** - * Output only. [Output only] Current state of the request. + * Output only. Current state of the request. */ state?: string | null; /** - * Output only. [Output only] Status of the request. + * Output only. Status of the request. */ status?: Schema$InstanceGroupManagerResizeRequestStatus; /** - * Output only. [Output Only] The URL of azone + * Output only. The URL of a zone * where the resize request is located. Populated only for zonal resize * requests. */ @@ -12083,7 +13288,7 @@ export namespace compute_v1 { */ export interface Schema$InstanceGroupManagerResizeRequestsListResponse { /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. + * Output only. Unique identifier for the resource; defined by the server. */ id?: string | null; /** @@ -12091,24 +13296,23 @@ export namespace compute_v1 { */ items?: Schema$InstanceGroupManagerResizeRequest[]; /** - * Output only. [Output Only] Type of the resource. Alwayscompute#instanceGroupManagerResizeRequestList for + * Output only. Type of the resource. Alwayscompute#instanceGroupManagerResizeRequestList for * a list of resize requests. */ kind?: string | null; /** - * Output only. [Output Only] This token allows you to get the next page of results for - * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for - * the query parameter pageToken in the next list request. + * Output only. This token allows you to get the next page of results for list requests. + * If the number of results is larger than maxResults, use thenextPageToken as a value for the query parameterpageToken in the next list request. * Subsequent list requests will have their own nextPageToken to * continue paging through the results. */ nextPageToken?: string | null; /** - * Output only. [Output Only] Server-defined URL for this resource. + * Output only. Server-defined URL for this resource. */ selfLink?: string | null; /** - * Output only. [Output Only] Informational warning message. + * Output only. Informational warning message. */ warning?: { code?: string; @@ -12118,11 +13322,10 @@ export namespace compute_v1 { } export interface Schema$InstanceGroupManagerResizeRequestStatus { /** - * Output only. [Output only] Fatal errors encountered during the queueing or - * provisioning phases of the ResizeRequest that caused the transition to - * the FAILED state. Contrary to the last_attempt errors, this field is - * final and errors are never removed from here, as the ResizeRequest is not - * going to retry. + * Output only. Fatal errors encountered during the queueing or provisioning phases of + * the ResizeRequest that caused the transition to the FAILED state. + * Contrary to the last_attempt errors, this field is final and errors are + * never removed from here, as the ResizeRequest is not going to retry. */ error?: { errors?: Array<{ @@ -12138,14 +13341,14 @@ export namespace compute_v1 { }>; } | null; /** - * Output only. [Output only] Information about the last attempt to fulfill the request. - * The value is temporary since the ResizeRequest can retry, as long as it's - * still active and the last attempt value can either be cleared or replaced - * with a different error. Since ResizeRequest retries infrequently, the - * value may be stale and no longer show an active problem. The value is - * cleared when ResizeRequest transitions to the final state (becomes - * inactive). If the final state is FAILED the error describing it will be - * storred in the "error" field only. + * Output only. Information about the last attempt to fulfill the request. The value is + * temporary since the ResizeRequest can retry, as long as it's still active + * and the last attempt value can either be cleared or replaced with a + * different error. Since ResizeRequest retries infrequently, the value may + * be stale and no longer show an active problem. The value is cleared when + * ResizeRequest transitions to the final state (becomes inactive). If the + * final state is FAILED the error describing it will be stored in the + * "error" field only. */ lastAttempt?: Schema$InstanceGroupManagerResizeRequestStatusLastAttempt; } @@ -12356,13 +13559,13 @@ export namespace compute_v1 { } export interface Schema$InstanceGroupManagersScopedList { /** - * Output only. [Output Only] The list of managed instance groups that are contained in - * the specified project and zone. + * Output only. The list of managed instance groups that are contained in the specified + * project and zone. */ instanceGroupManagers?: Schema$InstanceGroupManager[]; /** - * Output only. [Output Only] The warning that replaces the list of managed instance - * groups when the list is empty. + * Output only. The warning that replaces the list of managed instance groups when the list + * is empty. */ warning?: { code?: string; @@ -12445,16 +13648,31 @@ export namespace compute_v1 { } export interface Schema$InstanceGroupManagerStatus { /** - * Output only. [Output only] Status of all-instances configuration on the group. + * Output only. Status of all-instances configuration on the group. */ allInstancesConfig?: Schema$InstanceGroupManagerStatusAllInstancesConfig; /** - * Output only. [Output Only] The URL of theAutoscaler + * Output only. The accelerator topology applied to this MIG. + * Currently only one accelerator topology is supported. + */ + appliedAcceleratorTopologies?: Schema$InstanceGroupManagerStatusAcceleratorTopology[]; + /** + * Output only. The URL of theAutoscaler * that targets this instance group manager. */ autoscaler?: string | null; /** - * Output only. [Output Only] A bit indicating whether the managed instance group is in a + * Output only. The status of bulk instance operation. + */ + bulkInstanceOperation?: Schema$InstanceGroupManagerStatusBulkInstanceOperation; + /** + * Output only. The list of instance statuses and the number of instances + * in this managed instance group that have the status. Currently only shown + * for TPU MIGs + */ + currentInstanceStatuses?: Schema$InstanceGroupManagerStatusInstanceStatusSummary; + /** + * Output only. A bit indicating whether the managed instance group is in a * stable state. A stable state means that: none of the instances in the * managed instance group is currently undergoing any type of change (for * example, creation, restart, or deletion); no future changes are scheduled @@ -12463,31 +13681,188 @@ export namespace compute_v1 { */ isStable?: boolean | null; /** - * Output only. [Output Only] Stateful status of the given Instance Group Manager. + * Output only. Stateful status of the given Instance Group Manager. */ stateful?: Schema$InstanceGroupManagerStatusStateful; /** - * Output only. [Output Only] A status of consistency of Instances' versions with their + * Output only. A status of consistency of Instances' versions with their * target version specified by version field on Instance Group * Manager. */ versionTarget?: Schema$InstanceGroupManagerStatusVersionTarget; } + export interface Schema$InstanceGroupManagerStatusAcceleratorTopology { + /** + * Output only. Topology in the format of: "16x16", "4x4x4", etc. + * The value is the same as configured in the WorkloadPolicy. + */ + acceleratorTopology?: string | null; + /** + * Output only. The state of the accelerator topology. + */ + state?: string | null; + /** + * Output only. The result of the latest accelerator topology state + * check. + */ + stateDetails?: Schema$InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails; + } + export interface Schema$InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails { + /** + * Output only. Encountered errors. + */ + error?: { + errors?: Array<{ + code?: string; + errorDetails?: Array<{ + errorInfo?: Schema$ErrorInfo; + help?: Schema$Help; + localizedMessage?: Schema$LocalizedMessage; + quotaInfo?: Schema$QuotaExceededInfo; + }>; + location?: string; + message?: string; + }>; + } | null; + /** + * Output only. Timestamp is shown only if there is an error. The field + * has // RFC3339 // + * text format. + */ + timestamp?: string | null; + } export interface Schema$InstanceGroupManagerStatusAllInstancesConfig { /** - * Output only. [Output Only] Current all-instances configuration revision. + * Output only. Current all-instances configuration revision. * This value is in RFC3339 text format. */ currentRevision?: string | null; /** - * Output only. [Output Only] A bit indicating whether this configuration has + * Output only. A bit indicating whether this configuration has * been applied to all managed instances in the group. */ effective?: boolean | null; } + /** + * Bulk instance operation is the creation of VMs in a MIG when the + * targetSizePolicy.mode is set to BULK. + */ + export interface Schema$InstanceGroupManagerStatusBulkInstanceOperation { + /** + * Output only. Informs whether bulk instance operation is in progress. + */ + inProgress?: boolean | null; + /** + * Output only. Information from the last progress check of bulk instance + * operation. + */ + lastProgressCheck?: Schema$InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck; + } + export interface Schema$InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck { + /** + * Output only. Errors encountered during bulk instance operation. + */ + error?: { + errors?: Array<{ + code?: string; + errorDetails?: Array<{ + errorInfo?: Schema$ErrorInfo; + help?: Schema$Help; + localizedMessage?: Schema$LocalizedMessage; + quotaInfo?: Schema$QuotaExceededInfo; + }>; + location?: string; + message?: string; + }>; + } | null; + /** + * Output only. Timestamp of the last progress check of bulk instance + * operation. Timestamp is in RFC3339 text format. + */ + timestamp?: string | null; + } + /** + * The list of instance statuses and the number of instances in this managed + * instance group that have the status. For more information about how to + * interpret each status check the instance lifecycle documentation. + * Currently only shown for TPU MIGs. + */ + export interface Schema$InstanceGroupManagerStatusInstanceStatusSummary { + /** + * Output only. The number of instances in the managed instance group + * that have DEPROVISIONING status. + */ + deprovisioning?: number | null; + /** + * Output only. The number of instances that have not been created yet or + * have been deleted. Includes only instances that would be shown in the + * listManagedInstances method and not all instances that have been + * deleted in the lifetime of the MIG. + * Does not include FlexStart instances that are waiting for the resources + * availability, they are considered as 'pending'. + */ + nonExistent?: number | null; + /** + * Output only. The number of instances in the managed instance group + * that have PENDING status, that is FlexStart instances that are waiting + * for resources. Instances that do not exist because of the other reasons + * are counted as 'non_existent'. + */ + pending?: number | null; + /** + * Output only. The number of instances in the managed instance group + * that have PENDING_STOP status. + */ + pendingStop?: number | null; + /** + * Output only. The number of instances in the managed instance group + * that have PROVISIONING status. + */ + provisioning?: number | null; + /** + * Output only. The number of instances in the managed instance group + * that have REPAIRING status. + */ + repairing?: number | null; + /** + * Output only. The number of instances in the managed instance group + * that have RUNNING status. + */ + running?: number | null; + /** + * Output only. The number of instances in the managed instance group + * that have STAGING status. + */ + staging?: number | null; + /** + * Output only. The number of instances in the managed instance group + * that have STOPPED status. + */ + stopped?: number | null; + /** + * Output only. The number of instances in the managed instance group + * that have STOPPING status. + */ + stopping?: number | null; + /** + * Output only. The number of instances in the managed instance group + * that have SUSPENDED status. + */ + suspended?: number | null; + /** + * Output only. The number of instances in the managed instance group + * that have SUSPENDING status. + */ + suspending?: number | null; + /** + * Output only. The number of instances in the managed instance group + * that have TERMINATED status. + */ + terminated?: number | null; + } export interface Schema$InstanceGroupManagerStatusStateful { /** - * Output only. [Output Only] A bit indicating whether the managed instance group + * Output only. A bit indicating whether the managed instance group * has stateful configuration, that is, if you have configured any items * in a stateful policy or in per-instance configs. * The group might report that it has no stateful configuration even when @@ -12496,7 +13871,7 @@ export namespace compute_v1 { */ hasStatefulConfig?: boolean | null; /** - * Output only. [Output Only] Status of per-instance configurations on the instances. + * Output only. Status of per-instance configurations on the instances. */ perInstanceConfigs?: Schema$InstanceGroupManagerStatusStatefulPerInstanceConfigs; } @@ -12510,7 +13885,7 @@ export namespace compute_v1 { } export interface Schema$InstanceGroupManagerStatusVersionTarget { /** - * Output only. [Output Only] A bit indicating whether version target has been reached + * Output only. A bit indicating whether version target has been reached * in this managed instance group, i.e. all instances are in their target * version. Instances' target version are specified byversion field on Instance Group Manager. */ @@ -12526,6 +13901,13 @@ export namespace compute_v1 { */ perInstanceConfigs?: Schema$PerInstanceConfig[]; } + export interface Schema$InstanceGroupManagerTargetSizePolicy { + /** + * The mode of target size policy based on which the MIG creates its VMs + * individually or all at once. + */ + mode?: string | null; + } export interface Schema$InstanceGroupManagerUpdatePolicy { /** * The @@ -12886,8 +14268,8 @@ export namespace compute_v1 { * Input only. Resource manager tags to be bound to the instance. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -12983,8 +14365,10 @@ export namespace compute_v1 { /** * Input only. Resource manager tags to be bound to the instance. Tag keys and values * have the same definition as resource - * manager tags. Keys must be in the format `tagKeys/{tag_key_id\}`, and - * values are in the format `tagValues/456`. The field is ignored (both PUT & + * manager tags. Keys and values can be either in numeric format, + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ resourceManagerTags?: {[key: string]: string} | null; @@ -13563,6 +14947,19 @@ export namespace compute_v1 { * was taken from the current or a previous instance of a given disk name. */ sourceDiskId?: string | null; + /** + * Output only. [Output Only] URL of the source instant snapshot this instant snapshot is + * part of. Note that the source instant snapshot group must be in the same + * zone/region as the instant snapshot to be created. This can be a full or + * valid partial URL. + */ + sourceInstantSnapshotGroup?: string | null; + /** + * Output only. [Output Only] The ID value of the source instant snapshot group this + * InstantSnapshot is part of. This value may be used to determine whether the + * InstantSnapshot was created as part of an InstantSnapshotGroup creation. + */ + sourceInstantSnapshotGroupId?: string | null; /** * Output only. [Output Only] The status of the instantSnapshot. This can beCREATING, DELETING, FAILED, orREADY. */ @@ -13613,6 +15010,97 @@ export namespace compute_v1 { message?: string; } | null; } + /** + * Represents an InstantSnapshotGroup resource. + * + * An instant snapshot group is a set of instant snapshots that represents a + * point in time state of a consistency group. + */ + export interface Schema$InstantSnapshotGroup { + /** + * Output only. [Output Only] Creation timestamp inRFC3339 + * text format. + */ + creationTimestamp?: string | null; + /** + * Optional. An optional description of this resource. Provide this property when you + * create the resource. + */ + description?: string | null; + /** + * Output only. [Output Only] The unique identifier for the resource. This identifier is + * defined by the server. + */ + id?: string | null; + /** + * Output only. [Output Only] Type of the resource. Alwayscompute#instantSnapshotGroup for InstantSnapshotGroup + * resources. + */ + kind?: string | null; + /** + * Identifier. Name of the resource; provided by the client when the resource is created. + * The name must be 1-63 characters long, and comply withRFC1035. + * Specifically, the name must be 1-63 characters long and match the regular + * expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first + * character must be a lowercase letter, and all following characters must be + * a dash, lowercase letter, or digit, except the last character, which cannot + * be a dash. + */ + name?: string | null; + /** + * Output only. [Output Only] URL of the region where the instant snapshot group resides. + * You must specify this field as part of the HTTP request URL. It is + * not settable as a field in the request body. + */ + region?: string | null; + resourceStatus?: Schema$InstantSnapshotGroupResourceStatus; + /** + * Output only. [Output Only] Server-defined URL for the resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource's resource id. + */ + selfLinkWithId?: string | null; + sourceConsistencyGroup?: string | null; + /** + * Output only. [Output Only] + */ + status?: string | null; + /** + * Output only. [Output Only] URL of the zone where the instant snapshot group resides. + * You must specify this field as part of the HTTP request URL. It is + * not settable as a field in the request body. + */ + zone?: string | null; + } + export interface Schema$InstantSnapshotGroupParameters { + /** + * The source instant snapshot group used to create disks. You can provide + * this as a partial or full URL to the resource. For example, the following + * are valid values: + * + * + * - https://www.googleapis.com/compute/v1/projects/project/zones/zone/instantSnapshotGroups/instantSnapshotGroup + * - projects/project/zones/zone/instantSnapshotGroups/instantSnapshotGroup + * - zones/zone/instantSnapshotGroups/instantSnapshotGroup + */ + sourceInstantSnapshotGroup?: string | null; + } + export interface Schema$InstantSnapshotGroupResourceStatus { + /** + * Output only. [Output Only] + */ + consistencyMembershipResolutionTime?: string | null; + /** + * Output only. [Output Only] + */ + sourceInfo?: Schema$InstantSnapshotGroupSourceInfo; + } + export interface Schema$InstantSnapshotGroupSourceInfo { + consistencyGroup?: string | null; + consistencyGroupId?: string | null; + } /** * Contains a list of InstantSnapshot resources. */ @@ -15311,9 +16799,6 @@ export namespace compute_v1 { */ templateInterconnect?: Schema$InterconnectGroupsCreateMembersInterconnectInput; } - /** - * LINT.IfChange - */ export interface Schema$InterconnectGroupsCreateMembersInterconnectInput { /** * Administrative status of the interconnect. When this is set to true, the @@ -16270,6 +17755,16 @@ export namespace compute_v1 { * images. */ export interface Schema$LicenseCode { + /** + * Specifies licenseCodes of licenses that can replace this license. Note: + * such replacements are allowed even if removable_from_disk is false. + */ + allowedReplacementLicenses?: string[] | null; + /** + * If true, this license can be appended to an existing disk's set of + * licenses. + */ + appendableToDisk?: boolean | null; /** * Output only. [Output Only] Creation timestamp inRFC3339 * text format. @@ -16284,6 +17779,12 @@ export namespace compute_v1 { * defined by the server. */ id?: string | null; + /** + * Specifies licenseCodes of licenses that are incompatible with this license. + * If a license is incompatible with this license, it cannot be attached to + * the same disk or image. + */ + incompatibleLicenses?: string[] | null; /** * Output only. [Output Only] Type of resource. Always compute#licenseCode for * licenses. @@ -16294,15 +17795,44 @@ export namespace compute_v1 { * License Code. */ licenseAlias?: Schema$LicenseCodeLicenseAlias[]; + /** + * If set, this license will be unable to be removed or replaced once attached + * to a disk until the minimum_retention period has passed. + */ + minimumRetention?: Schema$Duration; + /** + * If true, this license can only be used on VMs on multi tenant nodes. + */ + multiTenantOnly?: boolean | null; /** * Output only. [Output Only] Name of the resource. The name is 1-20 characters long and * must be a valid 64 bit integer. */ name?: string | null; + /** + * If true, indicates this is an OS license. Only one OS license can be + * attached to a disk or image at a time. + */ + osLicense?: boolean | null; + /** + * If true, this license can be removed from a disk's set of licenses, with no + * replacement license needed. + */ + removableFromDisk?: boolean | null; + /** + * Specifies the set of permissible coattached licenseCodes of licenses that + * satisfy the coattachment requirement of this license. At least one license + * from the set must be attached to the same disk or image as this license. + */ + requiredCoattachedLicenses?: string[] | null; /** * Output only. [Output Only] Server-defined URL for the resource. */ selfLink?: string | null; + /** + * If true, this license can only be used on VMs on sole tenant nodes. + */ + soleTenantOnly?: boolean | null; /** * Output only. [Output Only] Current state of this License Code. */ @@ -16312,6 +17842,11 @@ export namespace compute_v1 { * images or snapshots from disks. Otherwise, the license is not transferred. */ transferable?: boolean | null; + /** + * Output only. [Output Only] Last update timestamp inRFC3339 + * text format. + */ + updateTimestamp?: string | null; } export interface Schema$LicenseCodeLicenseAlias { /** @@ -16331,8 +17866,8 @@ export namespace compute_v1 { * Input only. Resource manager tags to be bound to the license. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -16397,6 +17932,49 @@ export namespace compute_v1 { message?: string; } | null; } + /** + * Contains a list of InstantSnapshotGroup resources. + */ + export interface Schema$ListInstantSnapshotGroups { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of InstantSnapshotGroup resources. + */ + items?: Schema$InstantSnapshotGroup[]; + /** + * Output only. Type of resource. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + * end_interface: MixerListResponseWithEtagBuilder + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } export interface Schema$LocalDisk { /** * Specifies the number of such disks. @@ -17401,6 +18979,11 @@ export namespace compute_v1 { * Alias IP ranges from the same subnetwork. */ secondaryIpCidrRanges?: string[] | null; + /** + * The service class id of the producer service to which the IP was + * assigned. + */ + serviceClassId?: string | null; /** * The status of a connected endpoint to this network attachment. */ @@ -18213,6 +19796,13 @@ export namespace compute_v1 { * if not specified by the users. */ queueCount?: number | null; + /** + * Optional. Producer Service's Service class Id for the region of this network + * interface. Can only be used with network_attachment. It is not possible to + * use on its own however, network_attachment can be used without + * service_class_id. + */ + serviceClassId?: string | null; /** * The stack type for this network interface. To assign only IPv4 addresses, * use IPV4_ONLY. To assign both IPv4 and IPv6 addresses, useIPV4_IPV6. If not specified, IPV4_ONLY is used. @@ -18796,6 +20386,12 @@ export namespace compute_v1 { */ peerNetwork?: string | null; } + export interface Schema$NetworksCancelRequestRemovePeeringRequest { + /** + * Name of the peering, which should conform to RFC1035. + */ + name?: string | null; + } export interface Schema$NetworksGetEffectiveFirewallsResponse { /** * [Output Only] Effective firewalls from firewall policy. It returns Global @@ -19598,6 +21194,47 @@ export namespace compute_v1 { */ selfLink?: string | null; } + /** + * Contains a list of NotificationEndpointsScopedList. + */ + export interface Schema$NotificationEndpointAggregatedList { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of NotificationEndpointsScopedList resources. + */ + items?: {[key: string]: Schema$NotificationEndpointsScopedList} | null; + /** + * Output only. Type of resource. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * Represents a gRPC setting that describes one gRPC notification endpoint and * the retry duration attempting to send notification to this endpoint. @@ -19668,6 +21305,21 @@ export namespace compute_v1 { message?: string; } | null; } + export interface Schema$NotificationEndpointsScopedList { + /** + * A list of NotificationEndpoints contained in this scope. + */ + resources?: Schema$NotificationEndpoint[]; + /** + * Informational warning which replaces the list of + * notification endpoints when the list is empty. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * Represents an Operation resource. * @@ -19735,6 +21387,7 @@ export namespace compute_v1 { message?: string; }>; } | null; + getVersionOperationMetadata?: Schema$GetVersionOperationMetadata; /** * [Output Only] If the operation fails, this field contains the HTTP error * message that was returned, such as `NOT FOUND`. @@ -21804,323 +23457,380 @@ export namespace compute_v1 { message?: string; } | null; } - /** - * Contains a list of InstanceGroup resources. - */ - export interface Schema$RegionInstanceGroupList { - /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. - */ - id?: string | null; - /** - * A list of InstanceGroup resources. - */ - items?: Schema$InstanceGroup[]; - /** - * Output only. The resource type. - */ - kind?: string | null; - /** - * Output only. [Output Only] This token allows you to get the next page of results for - * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for - * the query parameter pageToken in the next list request. - * Subsequent list requests will have their own nextPageToken to - * continue paging through the results. - */ - nextPageToken?: string | null; - /** - * Output only. [Output Only] Server-defined URL for this resource. - */ - selfLink?: string | null; - /** - * Output only. [Output Only] Informational warning message. - */ - warning?: { - code?: string; - data?: Array<{key?: string; value?: string}>; - message?: string; - } | null; - } - /** - * RegionInstanceGroupManagers.deletePerInstanceConfigs - */ - export interface Schema$RegionInstanceGroupManagerDeleteInstanceConfigReq { - /** - * The list of instance names for which we want to delete per-instance configs - * on this managed instance group. - */ - names?: string[] | null; - } - /** - * Contains a list of managed instance groups. - */ - export interface Schema$RegionInstanceGroupManagerList { - /** - * Output only. [Output Only] Unique identifier for the resource; defined by the server. - */ - id?: string | null; - /** - * A list of InstanceGroupManager resources. - */ - items?: Schema$InstanceGroupManager[]; - /** - * Output only. [Output Only] The resource type, which is always - * compute#instanceGroupManagerList for a list of managed instance groups that - * exist in th regional scope. - */ - kind?: string | null; - /** - * Output only. [Output Only] This token allows you to get the next page of results for - * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for - * the query parameter pageToken in the next list request. - * Subsequent list requests will have their own nextPageToken to - * continue paging through the results. - */ - nextPageToken?: string | null; - /** - * Output only. [Output Only] Server-defined URL for this resource. - */ - selfLink?: string | null; - /** - * Output only. [Output Only] Informational warning message. - */ - warning?: { - code?: string; - data?: Array<{key?: string; value?: string}>; - message?: string; - } | null; - } - /** - * RegionInstanceGroupManagers.patchPerInstanceConfigs - */ - export interface Schema$RegionInstanceGroupManagerPatchInstanceConfigReq { - /** - * The list of per-instance configurations to insert or patch on this managed - * instance group. - */ - perInstanceConfigs?: Schema$PerInstanceConfig[]; - } - export interface Schema$RegionInstanceGroupManagersAbandonInstancesRequest { - /** - * The URLs of one or more instances to abandon. This can be a full URL or - * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. - */ - instances?: string[] | null; - } - /** - * RegionInstanceGroupManagers.applyUpdatesToInstances - */ - export interface Schema$RegionInstanceGroupManagersApplyUpdatesRequest { + export interface Schema$RegionDiskUpdateKmsKeyRequest { /** - * Flag to update all instances instead of specified list of “instances”. - * If the flag is set to true then the instances may not be specified - * in the request. - */ - allInstances?: boolean | null; - /** - * The list of URLs of one or more instances for which you want to apply - * updates. Each URL can be a full URL or a partial URL, such aszones/[ZONE]/instances/[INSTANCE_NAME]. - */ - instances?: string[] | null; - /** - * The minimal action that you want to perform on each instance during the - * update: + * Optional. The new KMS key to replace the current one on the disk. If empty, the disk + * will be re-encrypted using the primary version of the disk's current KMS + * key. * - * - * - REPLACE: At minimum, delete the instance and create it - * again. - * - RESTART: Stop the instance and start it - * again. - * - REFRESH: Do not stop the instance and limit - * disruption as much as possible. - * - NONE: Do not - * disrupt the instance at all. - * - * - * By default, the minimum action is NONE. If your update - * requires a more disruptive action than you set with this flag, the - * necessary action is performed to execute the update. - */ - minimalAction?: string | null; - /** - * The most disruptive action that you want to perform on each instance during - * the update: + * The KMS key can be provided in the following formats: * * - * - REPLACE: Delete the instance and create it again. - * - RESTART: Stop the instance and start it again. - * - REFRESH: Do not stop the instance and limit disruption - * as much as possible. - * - NONE: Do not disrupt the - * instance at all. + * - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key * * - * By default, the most disruptive allowed action is REPLACE. If - * your update requires a more disruptive action than you set with this flag, - * the update request will fail. - */ - mostDisruptiveAllowedAction?: string | null; - } - /** - * RegionInstanceGroupManagers.createInstances - */ - export interface Schema$RegionInstanceGroupManagersCreateInstancesRequest { - /** - * [Required] List of specifications of per-instance configs. + * Where project is the project ID or + * project number. */ - instances?: Schema$PerInstanceConfig[]; - } - export interface Schema$RegionInstanceGroupManagersDeleteInstancesRequest { - /** - * The URLs of one or more instances to delete. This can be a full URL or - * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. - */ - instances?: string[] | null; - /** - * Specifies whether the request should proceed despite the inclusion of - * instances that are not members of the group or that are already in the - * process of being deleted or abandoned. If this field is set to `false` and - * such an instance is specified in the request, the operation fails. The - * operation always fails if the request contains a malformed instance URL or - * a reference to an instance that exists in a zone or region other than the - * group's zone or region. - */ - skipInstancesOnValidationError?: boolean | null; - } - export interface Schema$RegionInstanceGroupManagersListErrorsResponse { - /** - * [Output Only] The list of errors of the managed instance group. - */ - items?: Schema$InstanceManagedByIgmError[]; - /** - * Output only. [Output Only] This token allows you to get the next page of results for - * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for - * the query parameter pageToken in the next list request. - * Subsequent list requests will have their own nextPageToken to - * continue paging through the results. - */ - nextPageToken?: string | null; - } - export interface Schema$RegionInstanceGroupManagersListInstanceConfigsResp { - /** - * Output only. [Output Only] The list of PerInstanceConfig. - */ - items?: Schema$PerInstanceConfig[]; - /** - * Output only. [Output Only] This token allows you to get the next page of results for - * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for - * the query parameter pageToken in the next list request. - * Subsequent list requests will have their own nextPageToken to - * continue paging through the results. - */ - nextPageToken?: string | null; - /** - * Output only. [Output Only] Informational warning message. - */ - warning?: { - code?: string; - data?: Array<{key?: string; value?: string}>; - message?: string; - } | null; - } - export interface Schema$RegionInstanceGroupManagersListInstancesResponse { - /** - * A list of managed instances. - */ - managedInstances?: Schema$ManagedInstance[]; - /** - * Output only. [Output Only] This token allows you to get the next page of results for - * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for - * the query parameter pageToken in the next list request. - * Subsequent list requests will have their own nextPageToken to - * continue paging through the results. - */ - nextPageToken?: string | null; - } - export interface Schema$RegionInstanceGroupManagersRecreateRequest { - /** - * The URLs of one or more instances to recreate. This can be a full URL or - * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. - */ - instances?: string[] | null; - } - export interface Schema$RegionInstanceGroupManagersResumeInstancesRequest { - /** - * The URLs of one or more instances to resume. This can be a full URL or - * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. - */ - instances?: string[] | null; - } - export interface Schema$RegionInstanceGroupManagersSetTargetPoolsRequest { - /** - * Fingerprint of the target pools information, which is a hash of the - * contents. This field is used for optimistic locking when you update the - * target pool entries. This field is optional. - */ - fingerprint?: string | null; - /** - * The URL of all TargetPool resources to which instances in theinstanceGroup field are added. The target pools automatically - * apply to all of the instances in the managed instance group. - */ - targetPools?: string[] | null; - } - export interface Schema$RegionInstanceGroupManagersSetTemplateRequest { - /** - * URL of the InstanceTemplate resource from which all new instances will be - * created. - */ - instanceTemplate?: string | null; - } - export interface Schema$RegionInstanceGroupManagersStartInstancesRequest { - /** - * The URLs of one or more instances to start. This can be a full URL or - * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. - */ - instances?: string[] | null; - } - export interface Schema$RegionInstanceGroupManagersStopInstancesRequest { - /** - * If this flag is set to true, the Instance Group Manager will proceed to - * stop the instances, skipping initialization on them. - */ - forceStop?: boolean | null; - /** - * The URLs of one or more instances to stop. This can be a full URL or - * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. - */ - instances?: string[] | null; - } - export interface Schema$RegionInstanceGroupManagersSuspendInstancesRequest { - /** - * If this flag is set to true, the Instance Group Manager will proceed to - * suspend the instances, skipping initialization on them. - */ - forceSuspend?: boolean | null; - /** - * The URLs of one or more instances to suspend. This can be a full URL or - * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. - */ - instances?: string[] | null; + kmsKeyName?: string | null; } /** - * RegionInstanceGroupManagers.updatePerInstanceConfigs + * Contains a list of InstanceGroup resources. */ - export interface Schema$RegionInstanceGroupManagerUpdateInstanceConfigReq { - /** - * The list of per-instance configurations to insert or patch on this managed - * instance group. - */ - perInstanceConfigs?: Schema$PerInstanceConfig[]; - } - export interface Schema$RegionInstanceGroupsListInstances { + export interface Schema$RegionInstanceGroupList { /** * Output only. [Output Only] Unique identifier for the resource; defined by the server. */ id?: string | null; /** - * A list of InstanceWithNamedPorts resources. + * A list of InstanceGroup resources. */ - items?: Schema$InstanceWithNamedPorts[]; + items?: Schema$InstanceGroup[]; + /** + * Output only. The resource type. + */ + kind?: string | null; + /** + * Output only. [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * RegionInstanceGroupManagers.deletePerInstanceConfigs + */ + export interface Schema$RegionInstanceGroupManagerDeleteInstanceConfigReq { + /** + * The list of instance names for which we want to delete per-instance configs + * on this managed instance group. + */ + names?: string[] | null; + } + /** + * Contains a list of managed instance groups. + */ + export interface Schema$RegionInstanceGroupManagerList { + /** + * Output only. Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of InstanceGroupManager resources. + */ + items?: Schema$InstanceGroupManager[]; + /** + * Output only. The resource type, which is always compute#instanceGroupManagerList for a + * list of managed instance groups that exist in th regional scope. + */ + kind?: string | null; + /** + * Output only. This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * RegionInstanceGroupManagers.patchPerInstanceConfigs + */ + export interface Schema$RegionInstanceGroupManagerPatchInstanceConfigReq { + /** + * The list of per-instance configurations to insert or patch on this managed + * instance group. + */ + perInstanceConfigs?: Schema$PerInstanceConfig[]; + } + export interface Schema$RegionInstanceGroupManagerResizeRequestsListResponse { + etag?: string | null; + /** + * Output only. Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of Resize Request resources. + */ + items?: Schema$InstanceGroupManagerResizeRequest[]; + /** + * Output only. Type of the resource. Alwayscompute#regionInstanceGroupManagerResizeRequestList for + * a list of Resize Requests. + */ + kind?: string | null; + /** + * Output only. This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. Unreachable resources. + * end_interface: MixerListResponseWithEtagBuilder + */ + unreachables?: string[] | null; + /** + * Output only. Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + export interface Schema$RegionInstanceGroupManagersAbandonInstancesRequest { + /** + * The URLs of one or more instances to abandon. This can be a full URL or + * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + */ + instances?: string[] | null; + } + /** + * RegionInstanceGroupManagers.applyUpdatesToInstances + */ + export interface Schema$RegionInstanceGroupManagersApplyUpdatesRequest { + /** + * Flag to update all instances instead of specified list of “instances”. + * If the flag is set to true then the instances may not be specified + * in the request. + */ + allInstances?: boolean | null; + /** + * The list of URLs of one or more instances for which you want to apply + * updates. Each URL can be a full URL or a partial URL, such aszones/[ZONE]/instances/[INSTANCE_NAME]. + */ + instances?: string[] | null; + /** + * The minimal action that you want to perform on each instance during the + * update: + * + * + * - REPLACE: At minimum, delete the instance and create it + * again. + * - RESTART: Stop the instance and start it + * again. + * - REFRESH: Do not stop the instance and limit + * disruption as much as possible. + * - NONE: Do not + * disrupt the instance at all. + * + * + * By default, the minimum action is NONE. If your update + * requires a more disruptive action than you set with this flag, the + * necessary action is performed to execute the update. + */ + minimalAction?: string | null; + /** + * The most disruptive action that you want to perform on each instance during + * the update: + * + * + * - REPLACE: Delete the instance and create it again. + * - RESTART: Stop the instance and start it again. + * - REFRESH: Do not stop the instance and limit disruption + * as much as possible. + * - NONE: Do not disrupt the + * instance at all. + * + * + * By default, the most disruptive allowed action is REPLACE. If + * your update requires a more disruptive action than you set with this flag, + * the update request will fail. + */ + mostDisruptiveAllowedAction?: string | null; + } + /** + * RegionInstanceGroupManagers.createInstances + */ + export interface Schema$RegionInstanceGroupManagersCreateInstancesRequest { + /** + * [Required] List of specifications of per-instance configs. + */ + instances?: Schema$PerInstanceConfig[]; + } + export interface Schema$RegionInstanceGroupManagersDeleteInstancesRequest { + /** + * The URLs of one or more instances to delete. This can be a full URL or + * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + */ + instances?: string[] | null; + /** + * Specifies whether the request should proceed despite the inclusion of + * instances that are not members of the group or that are already in the + * process of being deleted or abandoned. If this field is set to `false` and + * such an instance is specified in the request, the operation fails. The + * operation always fails if the request contains a malformed instance URL or + * a reference to an instance that exists in a zone or region other than the + * group's zone or region. + */ + skipInstancesOnValidationError?: boolean | null; + } + export interface Schema$RegionInstanceGroupManagersListErrorsResponse { + /** + * [Output Only] The list of errors of the managed instance group. + */ + items?: Schema$InstanceManagedByIgmError[]; + /** + * Output only. [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + } + export interface Schema$RegionInstanceGroupManagersListInstanceConfigsResp { + /** + * Output only. [Output Only] The list of PerInstanceConfig. + */ + items?: Schema$PerInstanceConfig[]; + /** + * Output only. [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + export interface Schema$RegionInstanceGroupManagersListInstancesResponse { + /** + * A list of managed instances. + */ + managedInstances?: Schema$ManagedInstance[]; + /** + * Output only. [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + } + export interface Schema$RegionInstanceGroupManagersRecreateRequest { + /** + * The URLs of one or more instances to recreate. This can be a full URL or + * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + */ + instances?: string[] | null; + } + export interface Schema$RegionInstanceGroupManagersResumeInstancesRequest { + /** + * The URLs of one or more instances to resume. This can be a full URL or + * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + */ + instances?: string[] | null; + } + export interface Schema$RegionInstanceGroupManagersSetTargetPoolsRequest { + /** + * Fingerprint of the target pools information, which is a hash of the + * contents. This field is used for optimistic locking when you update the + * target pool entries. This field is optional. + */ + fingerprint?: string | null; + /** + * The URL of all TargetPool resources to which instances in theinstanceGroup field are added. The target pools automatically + * apply to all of the instances in the managed instance group. + */ + targetPools?: string[] | null; + } + export interface Schema$RegionInstanceGroupManagersSetTemplateRequest { + /** + * URL of the InstanceTemplate resource from which all new instances will be + * created. + */ + instanceTemplate?: string | null; + } + export interface Schema$RegionInstanceGroupManagersStartInstancesRequest { + /** + * The URLs of one or more instances to start. This can be a full URL or + * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + */ + instances?: string[] | null; + } + export interface Schema$RegionInstanceGroupManagersStopInstancesRequest { + /** + * If this flag is set to true, the Instance Group Manager will proceed to + * stop the instances, skipping initialization on them. + */ + forceStop?: boolean | null; + /** + * The URLs of one or more instances to stop. This can be a full URL or + * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + */ + instances?: string[] | null; + } + export interface Schema$RegionInstanceGroupManagersSuspendInstancesRequest { + /** + * If this flag is set to true, the Instance Group Manager will proceed to + * suspend the instances, skipping initialization on them. + */ + forceSuspend?: boolean | null; + /** + * The URLs of one or more instances to suspend. This can be a full URL or + * a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + */ + instances?: string[] | null; + } + /** + * RegionInstanceGroupManagers.updatePerInstanceConfigs + */ + export interface Schema$RegionInstanceGroupManagerUpdateInstanceConfigReq { + /** + * The list of per-instance configurations to insert or patch on this managed + * instance group. + */ + perInstanceConfigs?: Schema$PerInstanceConfig[]; + } + export interface Schema$RegionInstanceGroupsListInstances { + /** + * Output only. [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of InstanceWithNamedPorts resources. + */ + items?: Schema$InstanceWithNamedPorts[]; /** * Output only. The resource type. */ @@ -22299,6 +24009,19 @@ export namespace compute_v1 { */ policy?: Schema$Policy; } + export interface Schema$RegionSnapshotUpdateKmsKeyRequest { + /** + * Optional. The new KMS key to replace the current one on the snapshot. If empty, the + * snapshot will be re-encrypted using the primary version of the snapshot's + * current KMS key. + * + * The KMS key can be provided in the following formats: + * + * + * - projects/project_id/locations/region/keyRings/region/cryptoKeys/key + */ + kmsKeyName?: string | null; + } export interface Schema$RegionTargetHttpsProxiesSetSslCertificatesRequest { /** * New set of SslCertificate resources to associate @@ -22357,6 +24080,7 @@ export namespace compute_v1 { * displays for reservations that are tied to a commitment. */ commitment?: string | null; + confidentialComputeType?: string | null; /** * Output only. [Output Only] Creation timestamp inRFC3339 * text format. @@ -22873,6 +24597,12 @@ export namespace compute_v1 { export interface Schema$ReservationSlotsGetResponse { resource?: Schema$ReservationSlot; } + export interface Schema$ReservationSlotsGetVersionRequest { + /** + * The SBOM selection to return. Duplicate values in the list will be ignored. + */ + sbomSelections?: string[] | null; + } /** * A list of reservation slots within a single reservation. */ @@ -23068,6 +24798,12 @@ export namespace compute_v1 { export interface Schema$ReservationSubBlocksGetResponse { resource?: Schema$ReservationSubBlock; } + export interface Schema$ReservationSubBlocksGetVersionRequest { + /** + * The SBOM selection to return. + */ + sbomSelections?: string[] | null; + } /** * A list of reservation subBlocks under a single reservation. */ @@ -23584,6 +25320,11 @@ export namespace compute_v1 { * interconnected GPUs. */ acceleratorTopology?: string | null; + /** + * Specifies the connection mode for the accelerator topology. If not + * specified, the default is AUTO_CONNECT. + */ + acceleratorTopologyMode?: string | null; /** * Specifies the maximum distance between instances. */ @@ -23711,6 +25452,475 @@ export namespace compute_v1 { */ availabilityDomain?: number | null; } + /** + * Rollout resource. + * + * A Rollout is a specific instance of a RolloutPlan. It represents a single + * execution of a strategy to roll out a specific resource. It also provides + * APIs to interact with the rollout. + */ + export interface Schema$Rollout { + /** + * Output only. The timestamp at which the Rollout was cancelled. + */ + cancellationTime?: string | null; + /** + * Output only. The timestamp at which the Rollout was completed. + */ + completionTime?: string | null; + /** + * Output only. [Output Only] Creation timestamp inRFC3339 + * text format. + */ + creationTimestamp?: string | null; + /** + * Output only. The number of the currently running wave. + * Ex. 1 + */ + currentWaveNumber?: string | null; + /** + * An optional description of this resource. Provide this property when you + * create the resource. + */ + description?: string | null; + /** + * Output only. etag of the Rollout + * Ex. abc1234 + */ + etag?: string | null; + /** + * Output only. [Output Only] The unique identifier for the resource. This identifier is + * defined by the server. + */ + id?: string | null; + /** + * Output only. [Output Only] Type of the resource. Always compute#rollout + * for rollouts. + */ + kind?: string | null; + /** + * Name of the resource. Provided by the client when the resource is created. + * The name must be 1-63 characters long, and comply withRFC1035. + * Specifically, the name must be 1-63 characters long and match the regular + * expression `[a-z]([-a-z0-9]*[a-z0-9])?` + * which means the first character must be a lowercase letter, and all + * following characters must be a dash, lowercase letter, or digit, except + * the last character, which cannot be a dash. + */ + name?: string | null; + /** + * Required. The resource being rolled out. + */ + rolloutEntity?: Schema$RolloutRolloutEntity; + /** + * Required. Rollout Plan used to model the Rollout. + * Ex. compute.googleapis.com/v1/projects/1234/rolloutPlans/rp1 + */ + rolloutPlan?: string | null; + /** + * Output only. [Output Only] Server-defined fully-qualified URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource's resource id. + */ + selfLinkWithId?: string | null; + /** + * Output only. The current state of the Rollout. + */ + state?: string | null; + /** + * Output only. Details about each wave of the rollout. + */ + waveDetails?: Schema$RolloutWaveDetails[]; + } + /** + * RolloutPlan resource. + * + * A RolloutPlan is the customer-defined strategy to divide a large-scale change + * into smaller increments, referred to as "waves". Each wave targets a specific + * portion of the overall affected area and defines criteria that must be met + * before progressing to the subsequent wave. + */ + export interface Schema$RolloutPlan { + /** + * Output only. [Output Only] Creation timestamp inRFC3339 + * text format. + */ + creationTimestamp?: string | null; + /** + * An optional description of this resource. Provide this property when you + * create the resource. + */ + description?: string | null; + /** + * Output only. [Output Only] The unique identifier for the resource. This identifier is + * defined by the server. + */ + id?: string | null; + /** + * Output only. [Output Only] Type of the resource. Always compute#rolloutPlan + * for rolloutPlans. + */ + kind?: string | null; + /** + * The location scope of the rollout plan. If not specified, the location + * scope is considered as ZONAL. + */ + locationScope?: string | null; + /** + * Name of the resource. Provided by the client when the resource is created. + * The name must be 1-63 characters long, and comply withRFC1035. + * Specifically, the name must be 1-63 characters long and match the regular + * expression `[a-z]([-a-z0-9]*[a-z0-9])?` + * which means the first character must be a lowercase letter, and all + * following characters must be a dash, lowercase letter, or digit, except + * the last character, which cannot be a dash. + */ + name?: string | null; + /** + * Output only. [Output Only] Server-defined fully-qualified URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource's resource id. + */ + selfLinkWithId?: string | null; + /** + * Required. The waves included in this rollout plan. + */ + waves?: Schema$RolloutPlanWave[]; + } + /** + * Contains a list of RolloutPlan resources. + */ + export interface Schema$RolloutPlansListResponse { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of RolloutPlan resources. + */ + items?: Schema$RolloutPlan[]; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + * end_interface: MixerListResponseWithEtagBuilder + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * A single wave in a rollout plan. + */ + export interface Schema$RolloutPlanWave { + /** + * Optional. The display name of this wave of the rollout plan. + */ + displayName?: string | null; + /** + * Output only. The wave number. + */ + number?: string | null; + /** + * Optional. The orchestration options for this wave. + */ + orchestrationOptions?: Schema$RolloutPlanWaveOrchestrationOptions; + /** + * Required. The selectors for this wave. There is a logical AND between each selector + * defined in a wave, so a resource must satisfy the criteria of *all* the + * specified selectors to be in scope for the wave. + */ + selectors?: Schema$RolloutPlanWaveSelector[]; + /** + * Required. The validation to be performed at the end of this wave. + */ + validation?: Schema$RolloutPlanWaveValidation; + } + /** + * Options to control the pace of orchestration of a wave. These options are + * required only if the resource being rolled out follows the Orchestrated + * pattern. + */ + export interface Schema$RolloutPlanWaveOrchestrationOptions { + /** + * Optional. Delays, if any, to be added between batches of projects. We allow + * multiple Delays to be specified, letting users set separate delays + * between batches of projects corresponding to different locations and + * batches of projects corresponding to the same location. + */ + delays?: Schema$RolloutPlanWaveOrchestrationOptionsDelay[]; + /** + * Optional. Maximum number of locations to be orchestrated in parallel. + */ + maxConcurrentLocations?: string | null; + /** + * Optional. Maximum number of resources to be orchestrated per location in + * parallel. + */ + maxConcurrentResourcesPerLocation?: string | null; + } + /** + * Options to control the delay, if any, between batches of projects. + */ + export interface Schema$RolloutPlanWaveOrchestrationOptionsDelay { + /** + * Optional. Controls whether the delay should only be added between batches of + * projects corresponding to different locations, or also between + * batches of projects corresponding to the same location. + * + * Must be set to DELIMITER_UNSPECIFIED if no delay is to be added. + */ + delimiter?: string | null; + /** + * Optional. The duration of the delay, if any, to be added between batches of + * projects. A zero duration corresponds to no delay. + */ + duration?: string | null; + /** + * Optional. Controls whether the specified duration is to be added at the end of + * each batch, or if the total processing time for each batch will be + * padded if needed to meet the specified duration. + * + * Must be set to TYPE_UNSPECIFIED if no delay is to be added. + */ + type?: string | null; + } + /** + * A selector which specifies what resource(s) are included in a given wave. + */ + export interface Schema$RolloutPlanWaveSelector { + /** + * Optional. Roll out to resources by Cloud locations. + */ + locationSelector?: Schema$RolloutPlanWaveSelectorLocationSelector; + /** + * Optional. Roll out to resources by Cloud Resource Manager resource hierarchy. + */ + resourceHierarchySelector?: Schema$RolloutPlanWaveSelectorResourceHierarchySelector; + } + /** + * Roll out to resources by location. + */ + export interface Schema$RolloutPlanWaveSelectorLocationSelector { + /** + * Optional. Example: "us-central1-a" + */ + includedLocations?: string[] | null; + } + /** + * Roll out to resources by Cloud Resource Manager resource hierarchy + * nodes such as projects, folders, orgs. + */ + export interface Schema$RolloutPlanWaveSelectorResourceHierarchySelector { + /** + * Optional. Format: "folders/{folder_id\}" + */ + includedFolders?: string[] | null; + /** + * Optional. Format: "organizations/{organization_id\}" + */ + includedOrganizations?: string[] | null; + /** + * Optional. Format: "projects/{project_id\}" + */ + includedProjects?: string[] | null; + } + /** + * The validation to be performed before progressing to the next wave. + */ + export interface Schema$RolloutPlanWaveValidation { + /** + * Optional. Metadata required if type = "time". + */ + timeBasedValidationMetadata?: Schema$RolloutPlanWaveValidationTimeBasedValidationMetadata; + /** + * Required. The type of the validation. If a type of validation is associated with + * a metadata object, the appropriate metadata field mapping to the + * validation type must be provided in the validation message. Possible + * values are in quotes below alongside an explanation: + * "manual": The system waits for an end-user approval API before + * progressing to the next wave. + * "time": The system waits for a user specified duration before + * progressing to the next wave. TimeBasedValidation must be provided. + */ + type?: string | null; + } + /** + * Metadata required if type = "time". + */ + export interface Schema$RolloutPlanWaveValidationTimeBasedValidationMetadata { + /** + * Optional. The duration that the system waits in between waves. This wait starts + * after all changes in the wave are rolled out. + */ + waitDuration?: string | null; + } + /** + * Specifications of the resource to roll out. + */ + export interface Schema$RolloutRolloutEntity { + /** + * Optional. Entity details for products using the Orchestrated Integration model. + */ + orchestratedEntity?: Schema$RolloutRolloutEntityOrchestratedEntity; + } + /** + * This message is used if the resource type follows the Orchestrated + * integration model with ProgressiveRollout. + */ + export interface Schema$RolloutRolloutEntityOrchestratedEntity { + /** + * Required. Specifies the behavior of the Rollout if an out of band update is + * detected in a project during a Rollout. It can be one of the following + * values: + * 1) overwrite : Overwrite the local value with the rollout value. + * 2) no_overwrite : Do not overwrite the local value with the rollout + * value. + */ + conflictBehavior?: string | null; + /** + * Required. Orchestration action during the Rollout. It can be one of the following + * values: + * 1) "update": Resources will be updated by the rollout. + * 2) "delete": Resources will be deleted by the rollout. + */ + orchestrationAction?: string | null; + /** + * Required. Fully qualified resource name of the resource which contains the source + * of truth of the configuration being rolled out across + * locations/projects. For example, in the case of a global Rollout which + * is applied across regions, this contains the name of the global + * resource created by the user which contains a payload for a resource + * that is orchestrated across regions. This follows the following format: + * //.googleapis.com/projects//locations/global// + * e.g. + * //osconfig.googleapis.com/projects/1/locations/global/policyOrchestrators/po1 + */ + orchestrationSource?: string | null; + } + export interface Schema$RolloutsListResponse { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of Rollout resources. + */ + items?: Schema$Rollout[]; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + * end_interface: MixerListResponseWithEtagBuilder + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * Additional metadata about the status of each wave provided by the server. + */ + export interface Schema$RolloutWaveDetails { + /** + * Output only. Additional details of the wave for products using the Orchestrated + * Integration model. + */ + orchestratedWaveDetails?: Schema$RolloutWaveDetailsOrchestratedWaveDetails; + /** + * Output only. Wave name. + * Ex. wave1 + */ + waveDisplayName?: string | null; + /** + * Output only. System generated number for the wave. + */ + waveNumber?: string | null; + } + /** + * Details of the wave for products using the Orchestrated integration + * model. + */ + export interface Schema$RolloutWaveDetailsOrchestratedWaveDetails { + /** + * Output only. Resource completed so far. + */ + completedResourcesCount?: string | null; + /** + * Output only. Estimated timestamp at which the wave will complete. Extrapolated from + * current progress. + */ + estimatedCompletionTime?: string | null; + /** + * Output only. Estimated total count of resources. + */ + estimatedTotalResourcesCount?: string | null; + /** + * Output only. Locations that failed during orchestration, and ProgressiveRollout + * stopped retrying. There may be some successful resources rolled out in + * the wave as the location may have failed later in the Rollout. + */ + failedLocations?: string[] | null; + /** + * Output only. Resources failed. + */ + failedResourcesCount?: string | null; + /** + * Output only. Status of each location in the wave. Map keys (locations) must be + * specified like "us-east1" or "asia-west1-a". + */ + locationStatus?: { + [ + key: string + ]: Schema$RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus; + } | null; + } + /** + * Represents the status of a location in a wave. + */ + export interface Schema$RolloutWaveDetailsOrchestratedWaveDetailsLocationStatus { + /** + * Output only. Location state of the wave. + */ + state?: string | null; + } /** * Represents a Route resource. * @@ -26706,6 +28916,10 @@ export namespace compute_v1 { * The url of a connected endpoint. */ endpoint?: string | null; + /** + * The url of a connected endpoint with resource id. + */ + endpointWithId?: string | null; /** * NAT IPs of the connected PSC endpoint and those of other endpoints * propagated from it. @@ -26731,6 +28945,10 @@ export namespace compute_v1 { * more than 1. */ connectionLimit?: number | null; + /** + * The URL for the PSC endpoint to accept + */ + endpointUrl?: string | null; /** * The network URL for the network to set the limit for. */ @@ -27059,6 +29277,11 @@ export namespace compute_v1 { * as part of resource payload. */ params?: Schema$SnapshotParams; + /** + * Output only. [Output Only] URL of the region where the snapshot resides. Only applicable + * for regional snapshots. + */ + region?: string | null; /** * Output only. Reserved for future use. */ @@ -27088,6 +29311,16 @@ export namespace compute_v1 { * do not need to provide a key to use the snapshot later. */ snapshotEncryptionKey?: Schema$CustomerEncryptionKey; + /** + * Output only. [Output Only] The unique ID of the snapshot group that this snapshot + * belongs to. The usage of snapshot group feature is restricted. + */ + snapshotGroupId?: string | null; + /** + * Output only. [Output only] The snapshot group that this snapshot belongs to. The usage + * of snapshot group feature is restricted. + */ + snapshotGroupName?: string | null; /** * Indicates the type of the snapshot. */ @@ -27172,6 +29405,30 @@ export namespace compute_v1 { */ storageLocations?: string[] | null; } + export interface Schema$SnapshotGroupParameters { + /** + * URLs of the zones where disks should be replicated to. Only applicable + * for regional resources. + */ + replicaZones?: string[] | null; + /** + * The source snapshot group used to create disks. You can provide this as a + * partial or full URL to the resource. For example, the following are valid + * values: + * + * + * - https://www.googleapis.com/compute/v1/projects/project/global/snapshotGroups/snapshotGroup + * - projects/project/global/snapshotGroups/snapshotGroup + * - global/snapshotGroups/snapshotGroup + */ + sourceSnapshotGroup?: string | null; + /** + * URL of the disk type resource describing which disk type to use to create + * disks. Provide this when creating the disk. For example:projects/project/zones/zone/diskTypes/pd-ssd. See Persistent disk + * types. + */ + type?: string | null; + } /** * Contains a list of Snapshot resources. */ @@ -27217,20 +29474,49 @@ export namespace compute_v1 { * Input only. Resource manager tags to be bound to the snapshot. Tag keys and values have * the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ resourceManagerTags?: {[key: string]: string} | null; } export interface Schema$SnapshotSettings { + /** + * (Regional snapshots use only)Policy of which location is allowed to access + * snapshot. + */ + accessLocation?: Schema$SnapshotSettingsAccessLocation; /** * Policy of which storage location is going to be resolved, and additional * data that particularizes how the policy is going to be carried out. */ storageLocation?: Schema$SnapshotSettingsStorageLocationSettings; } + export interface Schema$SnapshotSettingsAccessLocation { + /** + * List of regions that can restore a regional + * snapshot from the current region + */ + locations?: { + [ + key: string + ]: Schema$SnapshotSettingsAccessLocationAccessLocationPreference; + } | null; + /** + * Policy of which location is allowed to access snapshot. + */ + policy?: string | null; + } + /** + * A structure for specifying an allowed target region. + */ + export interface Schema$SnapshotSettingsAccessLocationAccessLocationPreference { + /** + * Accessible region name + */ + region?: string | null; + } export interface Schema$SnapshotSettingsStorageLocationSettings { /** * When the policy is SPECIFIC_LOCATIONS, snapshots will be stored @@ -27257,6 +29543,19 @@ export namespace compute_v1 { */ name?: string | null; } + export interface Schema$SnapshotUpdateKmsKeyRequest { + /** + * Optional. The new KMS key to replace the current one on the snapshot. If empty, the + * snapshot will be re-encrypted using the primary version of the snapshot's + * current KMS key. + * + * The KMS key can be provided in the following formats: + * + * + * - projects/project_id/locations/region/keyRings/key_ring/cryptoKeys/key + */ + kmsKeyName?: string | null; + } export interface Schema$SourceDiskEncryptionKey { /** * Thecustomer-supplied @@ -27829,10 +30128,21 @@ export namespace compute_v1 { * dash. */ name?: string | null; + /** + * One of DEFAULT, ENABLED, orDEFERRED. Controls whether the load balancer negotiates + * X25519MLKEM768 key exchange when clients advertise support for it. When set + * to DEFAULT, or if no SSL Policy is attached to the target + * proxy, the load balancer disallows X25519MLKEM768 key exchange before + * October 2026, and allows it afterward. When set to ENABLED, + * the load balancer allows X25519MLKEM768 key exchange. When set toDEFERRED, the load balancer disallows X25519MLKEM768 key + * exchange until October 2027, and allows it afterward. + */ + postQuantumKeyExchange?: string | null; /** * Profile specifies the set of SSL features that can be used by the load - * balancer when negotiating SSL with clients. This can be one ofCOMPATIBLE, MODERN, RESTRICTED, orCUSTOM. If using CUSTOM, the set of SSL features - * to enable must be specified in the customFeatures field. + * balancer when negotiating SSL with clients. This can be one ofCOMPATIBLE, MODERN, RESTRICTED,FIPS_202205, or CUSTOM. If usingCUSTOM, the set of SSL features to enable must be specified in + * the customFeatures field. If using FIPS_202205, + * the min_tls_version field must be set to TLS_1_2. */ profile?: string | null; /** @@ -28259,8 +30569,8 @@ export namespace compute_v1 { * Input only. Resource manager tags to be bound to the storage pool. Tag keys and values * have the same definition as resource * manager tags. Keys and values can be either in numeric format, - * such as `tagKeys/{tag_key_id\}` and `tagValues/456` or in namespaced - * format such as `{org_id|project_id\}/{tag_key_short_name\}` and + * such as `tagKeys/{tag_key_id\}` and `tagValues/{tag_value_id\}` or in + * namespaced format such as `{org_id|project_id\}/{tag_key_short_name\}` and * `{tag_value_short_name\}`. The field is ignored (both PUT & * PATCH) when empty. */ @@ -31489,6 +33799,235 @@ export namespace compute_v1 { message?: string; } | null; } + export interface Schema$VmExtensionPoliciesScopedList { + /** + * List of VmExtensionPolicy resources contained in this scope. + */ + vmExtensionPolicies?: Schema$VmExtensionPolicy[]; + /** + * Informational warning which replaces the list of + * backend services when the list is empty. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * Represents a VM extension policy. + */ + export interface Schema$VmExtensionPolicy { + /** + * Output only. [Output Only] Creation timestamp inRFC3339 + * text format. + */ + creationTimestamp?: string | null; + /** + * An optional description of this resource. + */ + description?: string | null; + /** + * Required. A map of extension names (for example, "ops-agent") to their corresponding + * policy configurations. + */ + extensionPolicies?: { + [key: string]: Schema$VmExtensionPolicyExtensionPolicy; + } | null; + /** + * Optional. Output only. [Output Only] Link to the global policy that manages this zone policy, if + * applicable. + */ + globalResourceLink?: string | null; + /** + * Output only. [Output Only] The unique identifier for the resource. This identifier is + * defined by the server. + */ + id?: string | null; + /** + * Optional. Selectors to target VMs for this policy. VMs are selected if they match + * *any* of the provided selectors (logical OR). If this list is empty, the + * policy applies to all VMs. + */ + instanceSelectors?: Schema$VmExtensionPolicyInstanceSelector[]; + /** + * Output only. [Output Only] Type of the resource. Alwayscompute#vmExtensionPolicy. + */ + kind?: string | null; + /** + * Optional. Output only. [Output Only] Indicates if this policy is managed by a global policy. + */ + managedByGlobal?: boolean | null; + /** + * Name of the resource. Provided by the client when the resource is created. + * The name must be 1-63 characters long, and comply withRFC1035. + * Specifically, the name must be 1-63 characters long and match the regular + * expression `[a-z]([-a-z0-9]*[a-z0-9])?` + * which means the first character must be a lowercase letter, and all + * following characters must be a dash, lowercase letter, or digit, except + * the last character, which cannot be a dash. + */ + name?: string | null; + /** + * Optional. Priority of this policy. Used to resolve conflicts when multiple policies + * apply to the same extension. + * The policy priority is an integer from 0 to 65535, inclusive. Lower + * integers indicate higher priorities. If you do not specify a priority when + * creating a rule, it is assigned a priority of 1000. If priorities are + * equal, the policy with the most recent creation timestamp takes precedence. + */ + priority?: number | null; + /** + * Output only. [Output Only] Server-defined fully-qualified URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource's resource id. + */ + selfLinkWithId?: string | null; + /** + * Optional. Output only. [Output Only] Current state of the policy: ACTIVE or DELETING. + */ + state?: string | null; + /** + * Output only. [Output Only] Update timestamp inRFC3339 + * text format. + */ + updateTimestamp?: string | null; + } + /** + * Response for the aggregated list of VM extension policies. + */ + export interface Schema$VmExtensionPolicyAggregatedListResponse { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of VmExtensionPoliciesScopedList resources. + */ + items?: {[key: string]: Schema$VmExtensionPoliciesScopedList} | null; + /** + * Output only. [Output Only] Type of resource. Alwayscompute#VmExtensionPolicyAggregatedList for lists of + * VmExtensionPolicies. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * Configuration for a specific VM extension. + */ + export interface Schema$VmExtensionPolicyExtensionPolicy { + /** + * Optional. The specific version of the extension to install. If not set, the latest + * version is used. + */ + pinnedVersion?: string | null; + /** + * Optional. String-based configuration data for the extension. + */ + stringConfig?: string | null; + } + /** + * Defines how to select VMs to apply a zone VM extension policy. + */ + export interface Schema$VmExtensionPolicyInstanceSelector { + /** + * Optional. LabelSelector selects VMs based on their labels. + */ + labelSelector?: Schema$VmExtensionPolicyLabelSelector; + } + /** + * A LabelSelector is applied to a VM only if it matches all the specified + * labels. + */ + export interface Schema$VmExtensionPolicyLabelSelector { + /** + * Optional. A map of key-value pairs representing VM labels. + * VMs must have all of the labels specified in this map to be selected + * (logical AND). + * + * e.g. If the `inclusion_labels` are {("key1", "value1"), ("key2", + * "value2")\}, the VM labels must contain both ("key1", "value1") and + * ("key2", "value2") to be selected. If the VM labels are ("key1", + * "value1") and ("something", "else"), it will not be selected. + * + * If the map is empty, it's considered a match. + */ + inclusionLabels?: {[key: string]: string} | null; + } + export interface Schema$VmExtensionPolicyList { + /** + * Output only. [Output Only] Fingerprint of this resource. A hash of the contents stored + * in this object. This field is used in optimistic locking. This field will + * be ignored when inserting a VmExtensionPolicy. An up-to-date + * fingerprint must be provided in order to update the VmExtensionPolicy. + * + * To see the latest value of the fingerprint, make a get() request to + * retrieve a VmExtensionPolicy. + */ + etag?: string | null; + /** + * Output only. [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * Output only. [Output Only] A list of VM extension policy resources. + */ + items?: Schema$VmExtensionPolicy[]; + /** + * Output only. Type of resource. + */ + kind?: string | null; + /** + * Output only. [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * Output only. [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * Represents a HA VPN gateway. * @@ -33888,6 +36427,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -34263,6 +36803,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -34692,6 +37233,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -34885,6 +37427,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -36060,6 +38603,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -36422,6 +38966,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -36867,6 +39412,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -37231,6 +39777,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -37823,6 +40370,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -37943,190 +40491,445 @@ export namespace compute_v1 { } /** - * Deletes the specified BackendBucket resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.backendBuckets.delete({ - * // Name of the BackendBucket resource to delete. - * backendBucket: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` + * Retrieves the list of all BackendBucket resources, regional and global, + * available to the specified project. * - * @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$Backendbuckets$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Backendbuckets$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Backendbuckets$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Backendbuckets$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Backendbuckets$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Backendbuckets$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Backendbuckets$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Backendbuckets$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/backendBuckets/{backendBucket}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'backendBucket'], - pathParams: ['backendBucket', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Deletes a key for validating requests with signed URLs for this backend - * bucket. + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.backendBuckets.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + aggregatedList( + params: Params$Resource$Backendbuckets$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Backendbuckets$Aggregatedlist, + options?: MethodOptions + ): Promise>; + aggregatedList( + params: Params$Resource$Backendbuckets$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Backendbuckets$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Backendbuckets$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Backendbuckets$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Backendbuckets$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Backendbuckets$Aggregatedlist; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/aggregated/backendBuckets' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified BackendBucket resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.backendBuckets.delete({ + * // Name of the BackendBucket resource to delete. + * backendBucket: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Backendbuckets$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Backendbuckets$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Backendbuckets$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Backendbuckets$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Backendbuckets$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Backendbuckets$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Backendbuckets$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Backendbuckets$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/backendBuckets/{backendBucket}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'backendBucket'], + pathParams: ['backendBucket', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a key for validating requests with signed URLs for this backend + * bucket. * @example * ```js * // Before running the sample: @@ -38191,6 +40994,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -38368,6 +41172,7 @@ export namespace compute_v1 { * // "loadBalancingScheme": "my_loadBalancingScheme", * // "name": "my_name", * // "params": {}, + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "usedBy": [] * // } @@ -38688,6 +41493,7 @@ export namespace compute_v1 { * // "loadBalancingScheme": "my_loadBalancingScheme", * // "name": "my_name", * // "params": {}, + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "usedBy": [] * // } @@ -38702,6 +41508,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -39055,6 +41862,245 @@ export namespace compute_v1 { } } + /** + * Retrieves a list of all usable backend buckets in the specified project. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.backendBuckets.listUsable({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + listUsable( + params: Params$Resource$Backendbuckets$Listusable, + options: StreamMethodOptions + ): Promise>; + listUsable( + params?: Params$Resource$Backendbuckets$Listusable, + options?: MethodOptions + ): Promise>; + listUsable( + params: Params$Resource$Backendbuckets$Listusable, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listUsable( + params: Params$Resource$Backendbuckets$Listusable, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listUsable( + params: Params$Resource$Backendbuckets$Listusable, + callback: BodyResponseCallback + ): void; + listUsable( + callback: BodyResponseCallback + ): void; + listUsable( + paramsOrCallback?: + | Params$Resource$Backendbuckets$Listusable + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Backendbuckets$Listusable; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Backendbuckets$Listusable; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/backendBuckets/listUsable' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Updates the specified BackendBucket resource with the data included in the * request. This method supportsPATCH @@ -39129,6 +42175,7 @@ export namespace compute_v1 { * // "loadBalancingScheme": "my_loadBalancingScheme", * // "name": "my_name", * // "params": {}, + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "usedBy": [] * // } @@ -39143,6 +42190,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -39334,6 +42382,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -39840,6 +42889,7 @@ export namespace compute_v1 { * // "loadBalancingScheme": "my_loadBalancingScheme", * // "name": "my_name", * // "params": {}, + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "usedBy": [] * // } @@ -39854,6 +42904,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -40006,115 +43057,338 @@ export namespace compute_v1 { */ requestBody?: Schema$SignedUrlKey; } - export interface Params$Resource$Backendbuckets$Delete extends StandardParameters { - /** - * Name of the BackendBucket resource to delete. - */ - backendBucket?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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$Backendbuckets$Deletesignedurlkey extends StandardParameters { - /** - * Name of the BackendBucket resource to which the Signed URL Key should be - * added. The name should conform to RFC1035. - */ - backendBucket?: string; - /** - * The name of the Signed URL Key to delete. - */ - keyName?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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$Backendbuckets$Get extends StandardParameters { - /** - * Name of the BackendBucket resource to return. - */ - backendBucket?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Backendbuckets$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - } - export interface Params$Resource$Backendbuckets$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$BackendBucket; - } - export interface Params$Resource$Backendbuckets$List extends StandardParameters { + export interface Params$Resource$Backendbuckets$Aggregatedlist 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. + * 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 onresource 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 GoogleRE2 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; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Backendbuckets$Delete extends StandardParameters { + /** + * Name of the BackendBucket resource to delete. + */ + backendBucket?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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$Backendbuckets$Deletesignedurlkey extends StandardParameters { + /** + * Name of the BackendBucket resource to which the Signed URL Key should be + * added. The name should conform to RFC1035. + */ + backendBucket?: string; + /** + * The name of the Signed URL Key to delete. + */ + keyName?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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$Backendbuckets$Get extends StandardParameters { + /** + * Name of the BackendBucket resource to return. + */ + backendBucket?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Backendbuckets$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Backendbuckets$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$BackendBucket; + } + export interface Params$Resource$Backendbuckets$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Backendbuckets$Listusable extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -40423,6 +43697,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -40862,6 +44137,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -41048,6 +44324,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -41937,6 +45214,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -42655,6 +45933,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -42846,6 +46125,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -43198,6 +46478,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -43597,6 +46878,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -44436,6 +47718,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -44782,6 +48065,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -45224,6 +48508,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -45639,6 +48924,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -46067,6 +49353,8 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { + * // "instantSnapshotGroupParameters": {}, + * // "snapshotGroupParameters": {}, * // "sourceConsistencyGroupPolicy": "my_sourceConsistencyGroupPolicy" * // } * }, @@ -46080,6 +49368,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -46272,6 +49561,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -46477,10 +49767,13 @@ export namespace compute_v1 { * // "locationHint": "my_locationHint", * // "name": "my_name", * // "params": {}, + * // "region": "my_region", * // "satisfiesPzi": false, * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "snapshotEncryptionKey": {}, + * // "snapshotGroupId": "my_snapshotGroupId", + * // "snapshotGroupName": "my_snapshotGroupName", * // "snapshotType": "my_snapshotType", * // "sourceDisk": "my_sourceDisk", * // "sourceDiskEncryptionKey": {}, @@ -46507,6 +49800,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -46695,6 +49989,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -47285,6 +50580,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -47711,6 +51007,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -47906,6 +51203,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -48258,6 +51556,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -48450,6 +51749,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -48637,6 +51937,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -48831,6 +52132,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -49238,6 +52540,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -49355,6 +52658,200 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } + + /** + * Rotates the customer-managed + * encryption key to the latest version for the specified persistent disk. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.disks.updateKmsKey({ + * // Name of the Disk resource, should conform to RFC1035. + * disk: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "kmsKeyName": "my_kmsKeyName" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + updateKmsKey( + params: Params$Resource$Disks$Updatekmskey, + options: StreamMethodOptions + ): Promise>; + updateKmsKey( + params?: Params$Resource$Disks$Updatekmskey, + options?: MethodOptions + ): Promise>; + updateKmsKey( + params: Params$Resource$Disks$Updatekmskey, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateKmsKey( + params: Params$Resource$Disks$Updatekmskey, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateKmsKey( + params: Params$Resource$Disks$Updatekmskey, + callback: BodyResponseCallback + ): void; + updateKmsKey(callback: BodyResponseCallback): void; + updateKmsKey( + paramsOrCallback?: + | Params$Resource$Disks$Updatekmskey + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Disks$Updatekmskey; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Disks$Updatekmskey; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/disks/{disk}/updateKmsKey' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'disk'], + pathParams: ['disk', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Disks$Addresourcepolicies extends StandardParameters { @@ -50105,6 +53602,41 @@ export namespace compute_v1 { */ requestBody?: Schema$Disk; } + export interface Params$Resource$Disks$Updatekmskey extends StandardParameters { + /** + * Name of the Disk resource, should conform to RFC1035. + */ + disk?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DiskUpdateKmsKeyRequest; + } export class Resource$Disktypes { context: APIRequestContext; @@ -51068,6 +54600,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -51422,6 +54955,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -51840,6 +55374,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -52396,6 +55931,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -52597,6 +56133,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -52778,6 +56315,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -52957,6 +56495,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -53775,6 +57314,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -54349,6 +57889,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -54552,6 +58093,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -54755,6 +58297,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -54936,6 +58479,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -55117,6 +58661,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -56066,6 +59611,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -56435,6 +59981,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -56879,6 +60426,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -57246,6 +60794,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -57937,6 +61486,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -58348,6 +61898,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -58819,6 +62370,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -59014,6 +62566,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -59207,6 +62760,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -60067,6 +63621,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -60251,6 +63806,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -60422,6 +63978,7 @@ export namespace compute_v1 { * // "autoCreatedReservationsDuration": {}, * // "autoDeleteAutoCreatedReservations": false, * // "commitmentInfo": {}, + * // "confidentialComputeType": "my_confidentialComputeType", * // "creationTimestamp": "my_creationTimestamp", * // "deploymentType": "my_deploymentType", * // "description": "my_description", @@ -60430,6 +63987,7 @@ export namespace compute_v1 { * // "kind": "my_kind", * // "name": "my_name", * // "namePrefix": "my_namePrefix", + * // "params": {}, * // "planningStatus": "my_planningStatus", * // "reservationMode": "my_reservationMode", * // "reservationName": "my_reservationName", @@ -60603,6 +64161,7 @@ export namespace compute_v1 { * // "autoCreatedReservationsDuration": {}, * // "autoDeleteAutoCreatedReservations": false, * // "commitmentInfo": {}, + * // "confidentialComputeType": "my_confidentialComputeType", * // "creationTimestamp": "my_creationTimestamp", * // "deploymentType": "my_deploymentType", * // "description": "my_description", @@ -60611,6 +64170,7 @@ export namespace compute_v1 { * // "kind": "my_kind", * // "name": "my_name", * // "namePrefix": "my_namePrefix", + * // "params": {}, * // "planningStatus": "my_planningStatus", * // "reservationMode": "my_reservationMode", * // "reservationName": "my_reservationName", @@ -60635,6 +64195,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -61067,6 +64628,7 @@ export namespace compute_v1 { * // "autoCreatedReservationsDuration": {}, * // "autoDeleteAutoCreatedReservations": false, * // "commitmentInfo": {}, + * // "confidentialComputeType": "my_confidentialComputeType", * // "creationTimestamp": "my_creationTimestamp", * // "deploymentType": "my_deploymentType", * // "description": "my_description", @@ -61075,6 +64637,7 @@ export namespace compute_v1 { * // "kind": "my_kind", * // "name": "my_name", * // "namePrefix": "my_namePrefix", + * // "params": {}, * // "planningStatus": "my_planningStatus", * // "reservationMode": "my_reservationMode", * // "reservationName": "my_reservationName", @@ -61099,6 +64662,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -61660,6 +65224,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -62033,6 +65598,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -62457,6 +66023,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -62635,6 +66202,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -63209,6 +66777,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -63617,6 +67186,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -64082,6 +67652,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -64261,6 +67832,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -64452,6 +68024,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -64895,6 +68468,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -65082,6 +68656,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -65273,6 +68848,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -65661,6 +69237,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -67056,6 +70633,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -67476,6 +71054,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -68045,6 +71624,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -68595,6 +72175,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -68964,6 +72545,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -69413,6 +72995,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -69732,17 +73315,17 @@ export namespace compute_v1 { requestBody?: Schema$PublicDelegatedPrefix; } - export class Resource$Healthchecks { + export class Resource$Globalvmextensionpolicies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves the list of all HealthCheck resources, regional and global, + * Retrieves the list of all VM Extension Policy resources * available to the specified project. * - * To prevent failure, Google recommends that you set the + * To prevent failure, it's recommended that you set the * `returnPartialSuccess` parameter to `true`. * @example * ```js @@ -69776,7 +73359,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.aggregatedList({ + * const res = await compute.globalVmExtensionPolicies.aggregatedList({ * // 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 @@ -69884,6 +73467,7 @@ export namespace compute_v1 { * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": {}, * // "kind": "my_kind", @@ -69907,56 +73491,60 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Healthchecks$Aggregatedlist, + params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Healthchecks$Aggregatedlist, + params?: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; aggregatedList( - params: Params$Resource$Healthchecks$Aggregatedlist, + params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Healthchecks$Aggregatedlist, + params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Healthchecks$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Healthchecks$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Globalvmextensionpolicies$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Aggregatedlist; + {}) as Params$Resource$Globalvmextensionpolicies$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Aggregatedlist; + params = {} as Params$Resource$Globalvmextensionpolicies$Aggregatedlist; options = {}; } @@ -69970,7 +73558,8 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/aggregated/healthChecks' + rootUrl + + '/compute/v1/projects/{project}/aggregated/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -69983,17 +73572,24 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes the specified HealthCheck resource. + * Purge scoped resources (zonal policies) from a global VM extension + * policy, and then delete the global VM extension policy. Purge of the scoped + * resources is a pre-condition of the global VM extension policy deletion. + * The deletion of the global VM extension policy happens after the purge + * rollout is done, so it's not a part of the LRO. It's an automatic process + * that triggers in the backend. * @example * ```js * // Before running the sample: @@ -70025,9 +73621,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.delete({ - * // Name of the HealthCheck resource to delete. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalVmExtensionPolicies.delete({ + * // Name of the global VM extension policy to purge scoped resources for. + * globalVmExtensionPolicy: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -70045,6 +73641,17 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "conflictBehavior": "my_conflictBehavior", + * // "name": "my_name", + * // "predefinedRolloutPlan": "my_predefinedRolloutPlan", + * // "retryUuid": "my_retryUuid" + * // } + * }, * }); * console.log(res.data); * @@ -70055,6 +73662,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -70092,31 +73700,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Healthchecks$Delete, + params: Params$Resource$Globalvmextensionpolicies$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Healthchecks$Delete, + params?: Params$Resource$Globalvmextensionpolicies$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Healthchecks$Delete, + params: Params$Resource$Globalvmextensionpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Healthchecks$Delete, + params: Params$Resource$Globalvmextensionpolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Healthchecks$Delete, + params: Params$Resource$Globalvmextensionpolicies$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Healthchecks$Delete + | Params$Resource$Globalvmextensionpolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -70132,12 +73740,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Delete; + {}) as Params$Resource$Globalvmextensionpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Delete; + params = {} as Params$Resource$Globalvmextensionpolicies$Delete; options = {}; } @@ -70152,16 +73760,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' + '/compute/v1/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'healthCheck'], - pathParams: ['healthCheck', 'project'], + requiredParams: ['project', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'project'], context: this.context, }; if (callback) { @@ -70175,7 +73783,7 @@ export namespace compute_v1 { } /** - * Returns the specified HealthCheck resource. + * Gets details of a global VM extension policy. * @example * ```js * // Before running the sample: @@ -70208,9 +73816,10 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.get({ - * // Name of the HealthCheck resource to return. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalVmExtensionPolicies.get({ + * // Name of the GlobalVmExtensionPolicy resource to return. + * globalVmExtensionPolicy: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -70219,27 +73828,19 @@ export namespace compute_v1 { * * // Example response * // { - * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, + * // "extensionPolicies": {}, * // "id": "my_id", + * // "instanceSelectors": [], * // "kind": "my_kind", - * // "logConfig": {}, * // "name": "my_name", - * // "region": "my_region", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", * // "selfLink": "my_selfLink", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "unhealthyThreshold": 0 + * // "selfLinkWithId": "my_selfLinkWithId", + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -70256,51 +73857,54 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Healthchecks$Get, + params: Params$Resource$Globalvmextensionpolicies$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Healthchecks$Get, + params?: Params$Resource$Globalvmextensionpolicies$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Healthchecks$Get, + params: Params$Resource$Globalvmextensionpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Healthchecks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Healthchecks$Get, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Healthchecks$Get - | BodyResponseCallback + | Params$Resource$Globalvmextensionpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Healthchecks$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Globalvmextensionpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Get; + params = {} as Params$Resource$Globalvmextensionpolicies$Get; options = {}; } @@ -70315,7 +73919,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' + '/compute/v1/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -70323,23 +73927,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'healthCheck'], - pathParams: ['healthCheck', 'project'], + requiredParams: ['project', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a HealthCheck resource in the specified project using the data - * included in the request. + * Creates a new project level GlobalVmExtensionPolicy. * @example * ```js * // Before running the sample: @@ -70371,7 +73974,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.insert({ + * const res = await compute.globalVmExtensionPolicies.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -70394,27 +73997,19 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, + * // "extensionPolicies": {}, * // "id": "my_id", + * // "instanceSelectors": [], * // "kind": "my_kind", - * // "logConfig": {}, * // "name": "my_name", - * // "region": "my_region", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", * // "selfLink": "my_selfLink", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "unhealthyThreshold": 0 + * // "selfLinkWithId": "my_selfLinkWithId", + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -70427,6 +74022,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -70464,31 +74060,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Healthchecks$Insert, + params: Params$Resource$Globalvmextensionpolicies$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Healthchecks$Insert, + params?: Params$Resource$Globalvmextensionpolicies$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Healthchecks$Insert, + params: Params$Resource$Globalvmextensionpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Healthchecks$Insert, + params: Params$Resource$Globalvmextensionpolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Healthchecks$Insert, + params: Params$Resource$Globalvmextensionpolicies$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Healthchecks$Insert + | Params$Resource$Globalvmextensionpolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -70504,12 +74100,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Insert; + {}) as Params$Resource$Globalvmextensionpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Insert; + params = {} as Params$Resource$Globalvmextensionpolicies$Insert; options = {}; } @@ -70523,7 +74119,8 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/healthChecks' + rootUrl + + '/compute/v1/projects/{project}/global/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -70546,8 +74143,7 @@ export namespace compute_v1 { } /** - * Retrieves the list of HealthCheck resources available to the specified - * project. + * Lists global VM extension policies. * @example * ```js * // Before running the sample: @@ -70580,7 +74176,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.list({ + * const res = await compute.globalVmExtensionPolicies.list({ * // 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 @@ -70677,11 +74273,13 @@ export namespace compute_v1 { * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -70699,52 +74297,56 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Healthchecks$List, + params: Params$Resource$Globalvmextensionpolicies$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Healthchecks$List, + params?: Params$Resource$Globalvmextensionpolicies$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Healthchecks$List, + params: Params$Resource$Globalvmextensionpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Healthchecks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Healthchecks$List, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Healthchecks$List - | BodyResponseCallback + | Params$Resource$Globalvmextensionpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$List; + {}) as Params$Resource$Globalvmextensionpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$List; + params = {} as Params$Resource$Globalvmextensionpolicies$List; options = {}; } @@ -70758,7 +74360,8 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/healthChecks' + rootUrl + + '/compute/v1/projects/{project}/global/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -70771,20 +74374,17 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HealthCheck resource in the specified project using the data - * included in the request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Updates a global VM extension policy. * @example * ```js * // Before running the sample: @@ -70816,9 +74416,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.patch({ - * // Name of the HealthCheck resource to patch. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalVmExtensionPolicies.update({ + * // Name of the global VM extension policy to update. + * globalVmExtensionPolicy: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -70841,394 +74441,19 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, + * // "extensionPolicies": {}, * // "id": "my_id", + * // "instanceSelectors": [], * // "kind": "my_kind", - * // "logConfig": {}, * // "name": "my_name", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "unhealthyThreshold": 0 - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Healthchecks$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Healthchecks$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Healthchecks$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Healthchecks$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Healthchecks$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Healthchecks$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'healthCheck'], - pathParams: ['healthCheck', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns permissions that a caller has on the specified resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.healthChecks.testIamPermissions({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "permissions": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Healthchecks$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Healthchecks$Testiampermissions, - options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Healthchecks$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Healthchecks$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Healthchecks$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Healthchecks$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/healthChecks/{resource}/testIamPermissions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates a HealthCheck resource in the specified project using the data - * included in the request. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.healthChecks.update({ - * // Name of the HealthCheck resource to update. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "checkIntervalSec": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "logConfig": {}, - * // "name": "my_name", - * // "region": "my_region", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", * // "selfLink": "my_selfLink", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "unhealthyThreshold": 0 + * // "selfLinkWithId": "my_selfLinkWithId", + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -71241,6 +74466,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -71278,31 +74504,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ update( - params: Params$Resource$Healthchecks$Update, + params: Params$Resource$Globalvmextensionpolicies$Update, options: StreamMethodOptions ): Promise>; update( - params?: Params$Resource$Healthchecks$Update, + params?: Params$Resource$Globalvmextensionpolicies$Update, options?: MethodOptions ): Promise>; update( - params: Params$Resource$Healthchecks$Update, + params: Params$Resource$Globalvmextensionpolicies$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Healthchecks$Update, + params: Params$Resource$Globalvmextensionpolicies$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Healthchecks$Update, + params: Params$Resource$Globalvmextensionpolicies$Update, callback: BodyResponseCallback ): void; update(callback: BodyResponseCallback): void; update( paramsOrCallback?: - | Params$Resource$Healthchecks$Update + | Params$Resource$Globalvmextensionpolicies$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -71318,12 +74544,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Update; + {}) as Params$Resource$Globalvmextensionpolicies$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Update; + params = {} as Params$Resource$Globalvmextensionpolicies$Update; options = {}; } @@ -71338,16 +74564,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' + '/compute/v1/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'healthCheck'], - pathParams: ['healthCheck', 'project'], + requiredParams: ['project', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'project'], context: this.context, }; if (callback) { @@ -71361,7 +74587,7 @@ export namespace compute_v1 { } } - export interface Params$Resource$Healthchecks$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -71480,11 +74706,11 @@ export namespace compute_v1 { */ serviceProjectNumber?: string; } - export interface Params$Resource$Healthchecks$Delete extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Delete extends StandardParameters { /** - * Name of the HealthCheck resource to delete. + * Name of the global VM extension policy to purge scoped resources for. */ - healthCheck?: string; + globalVmExtensionPolicy?: string; /** * Project ID for this request. */ @@ -71505,18 +74731,23 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutInput; } - export interface Params$Resource$Healthchecks$Get extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Get extends StandardParameters { /** - * Name of the HealthCheck resource to return. + * Name of the GlobalVmExtensionPolicy resource to return. */ - healthCheck?: string; + globalVmExtensionPolicy?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Healthchecks$Insert extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -71541,9 +74772,9 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$HealthCheck; + requestBody?: Schema$GlobalVmExtensionPolicy; } - export interface Params$Resource$Healthchecks$List extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -71647,11 +74878,11 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Healthchecks$Patch extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Update extends StandardParameters { /** - * Name of the HealthCheck resource to patch. + * Name of the global VM extension policy to update. */ - healthCheck?: string; + globalVmExtensionPolicy?: string; /** * Project ID for this request. */ @@ -71676,63 +74907,271 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$HealthCheck; + requestBody?: Schema$GlobalVmExtensionPolicy; } - export interface Params$Resource$Healthchecks$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; + + export class Resource$Healthchecks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - export interface Params$Resource$Healthchecks$Update extends StandardParameters { - /** - * Name of the HealthCheck resource to update. - */ - healthCheck?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. + * Retrieves the list of all HealthCheck resources, regional and global, + * available to the specified project. * - * 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. + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.healthChecks.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - requestId?: string; + aggregatedList( + params: Params$Resource$Healthchecks$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Healthchecks$Aggregatedlist, + options?: MethodOptions + ): Promise>; + aggregatedList( + params: Params$Resource$Healthchecks$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Healthchecks$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Healthchecks$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Healthchecks$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Healthchecks$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$HealthCheck; - } + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Healthchecks$Aggregatedlist; + options = {}; + } - export class Resource$Httphealthchecks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/projects/{project}/aggregated/healthChecks' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Deletes the specified HttpHealthCheck resource. + * Deletes the specified HealthCheck resource. * @example * ```js * // Before running the sample: @@ -71764,9 +75203,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.delete({ - * // Name of the HttpHealthCheck resource to delete. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.healthChecks.delete({ + * // Name of the HealthCheck resource to delete. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -71794,6 +75233,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -71831,31 +75271,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Httphealthchecks$Delete, + params: Params$Resource$Healthchecks$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Httphealthchecks$Delete, + params?: Params$Resource$Healthchecks$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Httphealthchecks$Delete, + params: Params$Resource$Healthchecks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Httphealthchecks$Delete, + params: Params$Resource$Healthchecks$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Httphealthchecks$Delete, + params: Params$Resource$Healthchecks$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Delete + | Params$Resource$Healthchecks$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -71871,12 +75311,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Delete; + {}) as Params$Resource$Healthchecks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Delete; + params = {} as Params$Resource$Healthchecks$Delete; options = {}; } @@ -71891,7 +75331,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -71899,8 +75339,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], + requiredParams: ['project', 'healthCheck'], + pathParams: ['healthCheck', 'project'], context: this.context, }; if (callback) { @@ -71914,7 +75354,7 @@ export namespace compute_v1 { } /** - * Returns the specified HttpHealthCheck resource. + * Returns the specified HealthCheck resource. * @example * ```js * // Before running the sample: @@ -71947,9 +75387,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.get({ - * // Name of the HttpHealthCheck resource to return. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.healthChecks.get({ + * // Name of the HealthCheck resource to return. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -71961,15 +75401,23 @@ export namespace compute_v1 { * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, * // "healthyThreshold": 0, - * // "host": "my_host", + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, * // "id": "my_id", * // "kind": "my_kind", + * // "logConfig": {}, * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, * // "timeoutSec": 0, + * // "type": "my_type", * // "unhealthyThreshold": 0 * // } * } @@ -71987,52 +75435,51 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Httphealthchecks$Get, + params: Params$Resource$Healthchecks$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Httphealthchecks$Get, + params?: Params$Resource$Healthchecks$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Httphealthchecks$Get, + params: Params$Resource$Healthchecks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Httphealthchecks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Healthchecks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Httphealthchecks$Get, - callback: BodyResponseCallback + params: Params$Resource$Healthchecks$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Get - | BodyResponseCallback + | Params$Resource$Healthchecks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Healthchecks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Get; + params = {} as Params$Resource$Healthchecks$Get; options = {}; } @@ -72047,7 +75494,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -72055,22 +75502,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], + requiredParams: ['project', 'healthCheck'], + pathParams: ['healthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a HttpHealthCheck resource in the specified project using the data + * Creates a HealthCheck resource in the specified project using the data * included in the request. * @example * ```js @@ -72103,7 +75550,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.insert({ + * const res = await compute.healthChecks.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -72129,15 +75576,23 @@ export namespace compute_v1 { * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, * // "healthyThreshold": 0, - * // "host": "my_host", + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, * // "id": "my_id", * // "kind": "my_kind", + * // "logConfig": {}, * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, * // "timeoutSec": 0, + * // "type": "my_type", * // "unhealthyThreshold": 0 * // } * }, @@ -72151,6 +75606,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -72188,31 +75644,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Httphealthchecks$Insert, + params: Params$Resource$Healthchecks$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Httphealthchecks$Insert, + params?: Params$Resource$Healthchecks$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Httphealthchecks$Insert, + params: Params$Resource$Healthchecks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Httphealthchecks$Insert, + params: Params$Resource$Healthchecks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Httphealthchecks$Insert, + params: Params$Resource$Healthchecks$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Insert + | Params$Resource$Healthchecks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -72228,12 +75684,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Insert; + {}) as Params$Resource$Healthchecks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Insert; + params = {} as Params$Resource$Healthchecks$Insert; options = {}; } @@ -72247,7 +75703,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/httpHealthChecks' + rootUrl + '/compute/v1/projects/{project}/global/healthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -72270,7 +75726,7 @@ export namespace compute_v1 { } /** - * Retrieves the list of HttpHealthCheck resources available to the specified + * Retrieves the list of HealthCheck resources available to the specified * project. * @example * ```js @@ -72304,7 +75760,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.list({ + * const res = await compute.healthChecks.list({ * // 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 @@ -72423,52 +75879,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Httphealthchecks$List, + params: Params$Resource$Healthchecks$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Httphealthchecks$List, + params?: Params$Resource$Healthchecks$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Httphealthchecks$List, + params: Params$Resource$Healthchecks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Httphealthchecks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Healthchecks$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Httphealthchecks$List, - callback: BodyResponseCallback + params: Params$Resource$Healthchecks$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Httphealthchecks$List - | BodyResponseCallback + | Params$Resource$Healthchecks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$List; + {}) as Params$Resource$Healthchecks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$List; + params = {} as Params$Resource$Healthchecks$List; options = {}; } @@ -72482,7 +75938,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/httpHealthChecks' + rootUrl + '/compute/v1/projects/{project}/global/healthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -72495,17 +75951,17 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HttpHealthCheck resource in the specified project using the data + * Updates a HealthCheck resource in the specified project using the data * included in the request. This method supportsPATCH * semantics and uses theJSON merge * patch format and processing rules. @@ -72540,9 +75996,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.patch({ - * // Name of the HttpHealthCheck resource to patch. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.healthChecks.patch({ + * // Name of the HealthCheck resource to patch. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -72568,15 +76024,23 @@ export namespace compute_v1 { * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, * // "healthyThreshold": 0, - * // "host": "my_host", + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, * // "id": "my_id", * // "kind": "my_kind", + * // "logConfig": {}, * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, * // "timeoutSec": 0, + * // "type": "my_type", * // "unhealthyThreshold": 0 * // } * }, @@ -72590,6 +76054,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -72627,31 +76092,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Httphealthchecks$Patch, + params: Params$Resource$Healthchecks$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Httphealthchecks$Patch, + params?: Params$Resource$Healthchecks$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Httphealthchecks$Patch, + params: Params$Resource$Healthchecks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Httphealthchecks$Patch, + params: Params$Resource$Healthchecks$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Httphealthchecks$Patch, + params: Params$Resource$Healthchecks$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Patch + | Params$Resource$Healthchecks$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -72667,12 +76132,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Patch; + {}) as Params$Resource$Healthchecks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Patch; + params = {} as Params$Resource$Healthchecks$Patch; options = {}; } @@ -72687,7 +76152,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -72695,8 +76160,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], + requiredParams: ['project', 'healthCheck'], + pathParams: ['healthCheck', 'project'], context: this.context, }; if (callback) { @@ -72743,7 +76208,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.testIamPermissions({ + * const res = await compute.healthChecks.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -72779,27 +76244,27 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Httphealthchecks$Testiampermissions, + params: Params$Resource$Healthchecks$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Httphealthchecks$Testiampermissions, + params?: Params$Resource$Healthchecks$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Httphealthchecks$Testiampermissions, + params: Params$Resource$Healthchecks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Httphealthchecks$Testiampermissions, + params: Params$Resource$Healthchecks$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Httphealthchecks$Testiampermissions, + params: Params$Resource$Healthchecks$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -72807,7 +76272,7 @@ export namespace compute_v1 { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Testiampermissions + | Params$Resource$Healthchecks$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -72823,12 +76288,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Testiampermissions; + {}) as Params$Resource$Healthchecks$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Testiampermissions; + params = {} as Params$Resource$Healthchecks$Testiampermissions; options = {}; } @@ -72843,7 +76308,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpHealthChecks/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/healthChecks/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -72866,7 +76331,7 @@ export namespace compute_v1 { } /** - * Updates a HttpHealthCheck resource in the specified project using the data + * Updates a HealthCheck resource in the specified project using the data * included in the request. * @example * ```js @@ -72899,9 +76364,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.update({ - * // Name of the HttpHealthCheck resource to update. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.healthChecks.update({ + * // Name of the HealthCheck resource to update. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -72927,15 +76392,23 @@ export namespace compute_v1 { * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, * // "healthyThreshold": 0, - * // "host": "my_host", + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, * // "id": "my_id", * // "kind": "my_kind", + * // "logConfig": {}, * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, * // "timeoutSec": 0, + * // "type": "my_type", * // "unhealthyThreshold": 0 * // } * }, @@ -72949,6 +76422,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -72986,31 +76460,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ update( - params: Params$Resource$Httphealthchecks$Update, + params: Params$Resource$Healthchecks$Update, options: StreamMethodOptions ): Promise>; update( - params?: Params$Resource$Httphealthchecks$Update, + params?: Params$Resource$Healthchecks$Update, options?: MethodOptions ): Promise>; update( - params: Params$Resource$Httphealthchecks$Update, + params: Params$Resource$Healthchecks$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Httphealthchecks$Update, + params: Params$Resource$Healthchecks$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Httphealthchecks$Update, + params: Params$Resource$Healthchecks$Update, callback: BodyResponseCallback ): void; update(callback: BodyResponseCallback): void; update( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Update + | Params$Resource$Healthchecks$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -73026,12 +76500,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Update; + {}) as Params$Resource$Healthchecks$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Update; + params = {} as Params$Resource$Healthchecks$Update; options = {}; } @@ -73046,7 +76520,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PUT', apiVersion: '', @@ -73054,8 +76528,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], + requiredParams: ['project', 'healthCheck'], + pathParams: ['healthCheck', 'project'], context: this.context, }; if (callback) { @@ -73069,70 +76543,7 @@ export namespace compute_v1 { } } - export interface Params$Resource$Httphealthchecks$Delete extends StandardParameters { - /** - * Name of the HttpHealthCheck resource to delete. - */ - httpHealthCheck?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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$Httphealthchecks$Get extends StandardParameters { - /** - * Name of the HttpHealthCheck resource to return. - */ - httpHealthCheck?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Httphealthchecks$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$HttpHealthCheck; - } - export interface Params$Resource$Httphealthchecks$List extends StandardParameters { + export interface Params$Resource$Healthchecks$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -73194,6 +76605,16 @@ export namespace compute_v1 { * expressions. */ filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -73223,7 +76644,7 @@ export namespace compute_v1 { */ pageToken?: string; /** - * Project ID for this request. + * Name of the project scoping this request. */ project?: string; /** @@ -73235,12 +76656,17 @@ export namespace compute_v1 { * with an error code. */ returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; } - export interface Params$Resource$Httphealthchecks$Patch extends StandardParameters { + export interface Params$Resource$Healthchecks$Delete extends StandardParameters { /** - * Name of the HttpHealthCheck resource to patch. + * Name of the HealthCheck resource to delete. */ - httpHealthCheck?: string; + healthCheck?: string; /** * Project ID for this request. */ @@ -73261,32 +76687,18 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - + } + export interface Params$Resource$Healthchecks$Get extends StandardParameters { /** - * Request body metadata + * Name of the HealthCheck resource to return. */ - requestBody?: Schema$HttpHealthCheck; - } - export interface Params$Resource$Httphealthchecks$Testiampermissions extends StandardParameters { + healthCheck?: string; /** * Project ID for this request. */ project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Httphealthchecks$Update extends StandardParameters { - /** - * Name of the HttpHealthCheck resource to update. - */ - httpHealthCheck?: string; + export interface Params$Resource$Healthchecks$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -73311,17 +76723,198 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$HttpHealthCheck; + requestBody?: Schema$HealthCheck; } + export interface Params$Resource$Healthchecks$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Healthchecks$Patch extends StandardParameters { + /** + * Name of the HealthCheck resource to patch. + */ + healthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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 class Resource$Httpshealthchecks { + /** + * Request body metadata + */ + requestBody?: Schema$HealthCheck; + } + export interface Params$Resource$Healthchecks$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Healthchecks$Update extends StandardParameters { + /** + * Name of the HealthCheck resource to update. + */ + healthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HealthCheck; + } + + export class Resource$Httphealthchecks { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified HttpsHealthCheck resource. + * Deletes the specified HttpHealthCheck resource. * @example * ```js * // Before running the sample: @@ -73353,9 +76946,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.delete({ - * // Name of the HttpsHealthCheck resource to delete. - * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.httpHealthChecks.delete({ + * // Name of the HttpHealthCheck resource to delete. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -73383,6 +76976,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -73420,31 +77014,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Httpshealthchecks$Delete, + params: Params$Resource$Httphealthchecks$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Httpshealthchecks$Delete, + params?: Params$Resource$Httphealthchecks$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Httpshealthchecks$Delete, + params: Params$Resource$Httphealthchecks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Httpshealthchecks$Delete, + params: Params$Resource$Httphealthchecks$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Httpshealthchecks$Delete, + params: Params$Resource$Httphealthchecks$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Delete + | Params$Resource$Httphealthchecks$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -73460,12 +77054,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Delete; + {}) as Params$Resource$Httphealthchecks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Delete; + params = {} as Params$Resource$Httphealthchecks$Delete; options = {}; } @@ -73480,7 +77074,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' + '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -73488,8 +77082,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'httpsHealthCheck'], - pathParams: ['httpsHealthCheck', 'project'], + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], context: this.context, }; if (callback) { @@ -73503,7 +77097,7 @@ export namespace compute_v1 { } /** - * Returns the specified HttpsHealthCheck resource. + * Returns the specified HttpHealthCheck resource. * @example * ```js * // Before running the sample: @@ -73536,9 +77130,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.get({ - * // Name of the HttpsHealthCheck resource to return. - * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.httpHealthChecks.get({ + * // Name of the HttpHealthCheck resource to return. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -73576,52 +77170,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Httpshealthchecks$Get, + params: Params$Resource$Httphealthchecks$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Httpshealthchecks$Get, + params?: Params$Resource$Httphealthchecks$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Httpshealthchecks$Get, + params: Params$Resource$Httphealthchecks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Httpshealthchecks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Httphealthchecks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Httpshealthchecks$Get, - callback: BodyResponseCallback + params: Params$Resource$Httphealthchecks$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Get - | BodyResponseCallback + | Params$Resource$Httphealthchecks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Get; + {}) as Params$Resource$Httphealthchecks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Get; + params = {} as Params$Resource$Httphealthchecks$Get; options = {}; } @@ -73636,7 +77230,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' + '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -73644,22 +77238,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'httpsHealthCheck'], - pathParams: ['httpsHealthCheck', 'project'], + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a HttpsHealthCheck resource in the specified project using the data + * Creates a HttpHealthCheck resource in the specified project using the data * included in the request. * @example * ```js @@ -73692,7 +77286,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.insert({ + * const res = await compute.httpHealthChecks.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -73740,6 +77334,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -73777,31 +77372,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Httpshealthchecks$Insert, + params: Params$Resource$Httphealthchecks$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Httpshealthchecks$Insert, + params?: Params$Resource$Httphealthchecks$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Httpshealthchecks$Insert, + params: Params$Resource$Httphealthchecks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Httpshealthchecks$Insert, + params: Params$Resource$Httphealthchecks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Httpshealthchecks$Insert, + params: Params$Resource$Httphealthchecks$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Insert + | Params$Resource$Httphealthchecks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -73817,12 +77412,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Insert; + {}) as Params$Resource$Httphealthchecks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Insert; + params = {} as Params$Resource$Httphealthchecks$Insert; options = {}; } @@ -73836,8 +77431,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks' + rootUrl + '/compute/v1/projects/{project}/global/httpHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -73860,7 +77454,7 @@ export namespace compute_v1 { } /** - * Retrieves the list of HttpsHealthCheck resources available to the specified + * Retrieves the list of HttpHealthCheck resources available to the specified * project. * @example * ```js @@ -73894,7 +77488,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.list({ + * const res = await compute.httpHealthChecks.list({ * // 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 @@ -74013,54 +77607,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Httpshealthchecks$List, + params: Params$Resource$Httphealthchecks$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Httpshealthchecks$List, + params?: Params$Resource$Httphealthchecks$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Httpshealthchecks$List, + params: Params$Resource$Httphealthchecks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Httpshealthchecks$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Httphealthchecks$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Httpshealthchecks$List, - callback: BodyResponseCallback + params: Params$Resource$Httphealthchecks$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$List - | BodyResponseCallback + | Params$Resource$Httphealthchecks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$List; + {}) as Params$Resource$Httphealthchecks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$List; + params = {} as Params$Resource$Httphealthchecks$List; options = {}; } @@ -74074,8 +77666,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks' + rootUrl + '/compute/v1/projects/{project}/global/httpHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -74088,17 +77679,17 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HttpsHealthCheck resource in the specified project using the data + * Updates a HttpHealthCheck resource in the specified project using the data * included in the request. This method supportsPATCH * semantics and uses theJSON merge * patch format and processing rules. @@ -74133,9 +77724,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.patch({ - * // Name of the HttpsHealthCheck resource to patch. - * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.httpHealthChecks.patch({ + * // Name of the HttpHealthCheck resource to patch. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -74183,6 +77774,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -74220,31 +77812,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Httpshealthchecks$Patch, + params: Params$Resource$Httphealthchecks$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Httpshealthchecks$Patch, + params?: Params$Resource$Httphealthchecks$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Httpshealthchecks$Patch, + params: Params$Resource$Httphealthchecks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Httpshealthchecks$Patch, + params: Params$Resource$Httphealthchecks$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Httpshealthchecks$Patch, + params: Params$Resource$Httphealthchecks$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Patch + | Params$Resource$Httphealthchecks$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -74260,12 +77852,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Patch; + {}) as Params$Resource$Httphealthchecks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Patch; + params = {} as Params$Resource$Httphealthchecks$Patch; options = {}; } @@ -74280,7 +77872,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' + '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -74288,8 +77880,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'httpsHealthCheck'], - pathParams: ['httpsHealthCheck', 'project'], + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], context: this.context, }; if (callback) { @@ -74336,7 +77928,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.testIamPermissions({ + * const res = await compute.httpHealthChecks.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -74372,27 +77964,27 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Httpshealthchecks$Testiampermissions, + params: Params$Resource$Httphealthchecks$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Httpshealthchecks$Testiampermissions, + params?: Params$Resource$Httphealthchecks$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Httpshealthchecks$Testiampermissions, + params: Params$Resource$Httphealthchecks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Httpshealthchecks$Testiampermissions, + params: Params$Resource$Httphealthchecks$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Httpshealthchecks$Testiampermissions, + params: Params$Resource$Httphealthchecks$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -74400,7 +77992,7 @@ export namespace compute_v1 { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Testiampermissions + | Params$Resource$Httphealthchecks$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -74416,12 +78008,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Testiampermissions; + {}) as Params$Resource$Httphealthchecks$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Testiampermissions; + params = {} as Params$Resource$Httphealthchecks$Testiampermissions; options = {}; } @@ -74436,7 +78028,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/httpHealthChecks/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -74459,7 +78051,7 @@ export namespace compute_v1 { } /** - * Updates a HttpsHealthCheck resource in the specified project using the data + * Updates a HttpHealthCheck resource in the specified project using the data * included in the request. * @example * ```js @@ -74492,9 +78084,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.update({ - * // Name of the HttpsHealthCheck resource to update. - * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.httpHealthChecks.update({ + * // Name of the HttpHealthCheck resource to update. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -74542,6 +78134,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -74579,31 +78172,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ update( - params: Params$Resource$Httpshealthchecks$Update, + params: Params$Resource$Httphealthchecks$Update, options: StreamMethodOptions ): Promise>; update( - params?: Params$Resource$Httpshealthchecks$Update, + params?: Params$Resource$Httphealthchecks$Update, options?: MethodOptions ): Promise>; update( - params: Params$Resource$Httpshealthchecks$Update, + params: Params$Resource$Httphealthchecks$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Httpshealthchecks$Update, + params: Params$Resource$Httphealthchecks$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Httpshealthchecks$Update, + params: Params$Resource$Httphealthchecks$Update, callback: BodyResponseCallback ): void; update(callback: BodyResponseCallback): void; update( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Update + | Params$Resource$Httphealthchecks$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -74619,12 +78212,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Update; + {}) as Params$Resource$Httphealthchecks$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Update; + params = {} as Params$Resource$Httphealthchecks$Update; options = {}; } @@ -74639,7 +78232,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' + '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PUT', apiVersion: '', @@ -74647,8 +78240,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'httpsHealthCheck'], - pathParams: ['httpsHealthCheck', 'project'], + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], context: this.context, }; if (callback) { @@ -74662,11 +78255,11 @@ export namespace compute_v1 { } } - export interface Params$Resource$Httpshealthchecks$Delete extends StandardParameters { + export interface Params$Resource$Httphealthchecks$Delete extends StandardParameters { /** - * Name of the HttpsHealthCheck resource to delete. + * Name of the HttpHealthCheck resource to delete. */ - httpsHealthCheck?: string; + httpHealthCheck?: string; /** * Project ID for this request. */ @@ -74688,17 +78281,17 @@ export namespace compute_v1 { */ requestId?: string; } - export interface Params$Resource$Httpshealthchecks$Get extends StandardParameters { + export interface Params$Resource$Httphealthchecks$Get extends StandardParameters { /** - * Name of the HttpsHealthCheck resource to return. + * Name of the HttpHealthCheck resource to return. */ - httpsHealthCheck?: string; + httpHealthCheck?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Httpshealthchecks$Insert extends StandardParameters { + export interface Params$Resource$Httphealthchecks$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -74723,9 +78316,9 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$HttpsHealthCheck; + requestBody?: Schema$HttpHealthCheck; } - export interface Params$Resource$Httpshealthchecks$List extends StandardParameters { + export interface Params$Resource$Httphealthchecks$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -74829,11 +78422,11 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Httpshealthchecks$Patch extends StandardParameters { + export interface Params$Resource$Httphealthchecks$Patch extends StandardParameters { /** - * Name of the HttpsHealthCheck resource to patch. + * Name of the HttpHealthCheck resource to patch. */ - httpsHealthCheck?: string; + httpHealthCheck?: string; /** * Project ID for this request. */ @@ -74858,9 +78451,9 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$HttpsHealthCheck; + requestBody?: Schema$HttpHealthCheck; } - export interface Params$Resource$Httpshealthchecks$Testiampermissions extends StandardParameters { + export interface Params$Resource$Httphealthchecks$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -74875,11 +78468,11 @@ export namespace compute_v1 { */ requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Httpshealthchecks$Update extends StandardParameters { + export interface Params$Resource$Httphealthchecks$Update extends StandardParameters { /** - * Name of the HttpsHealthCheck resource to update. + * Name of the HttpHealthCheck resource to update. */ - httpsHealthCheck?: string; + httpHealthCheck?: string; /** * Project ID for this request. */ @@ -74904,18 +78497,17 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$HttpsHealthCheck; + requestBody?: Schema$HttpHealthCheck; } - export class Resource$Imagefamilyviews { + export class Resource$Httpshealthchecks { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Returns the latest image that is part of an image family, is not - * deprecated and is rolled out in the specified zone. + * Deletes the specified HttpsHealthCheck resource. * @example * ```js * // Before running the sample: @@ -74939,7 +78531,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -74948,20 +78539,58 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.imageFamilyViews.get({ - * // Name of the image family to search for. - * family: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.httpsHealthChecks.delete({ + * // Name of the HttpsHealthCheck resource to delete. + * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "image": {} + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -74977,53 +78606,53 @@ export namespace compute_v1 { * @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$Imagefamilyviews$Get, + delete( + params: Params$Resource$Httpshealthchecks$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Imagefamilyviews$Get, + delete( + params?: Params$Resource$Httpshealthchecks$Delete, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Imagefamilyviews$Get, + ): Promise>; + delete( + params: Params$Resource$Httpshealthchecks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Imagefamilyviews$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Httpshealthchecks$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Imagefamilyviews$Get, - callback: BodyResponseCallback + delete( + params: Params$Resource$Httpshealthchecks$Delete, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Imagefamilyviews$Get - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Imagefamilyviews$Get; + {}) as Params$Resource$Httpshealthchecks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Imagefamilyviews$Get; + params = {} as Params$Resource$Httpshealthchecks$Delete; options = {}; } @@ -75038,52 +78667,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/imageFamilyViews/{family}' + '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'family'], - pathParams: ['family', 'project', 'zone'], + requiredParams: ['project', 'httpsHealthCheck'], + pathParams: ['httpsHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Imagefamilyviews$Get extends StandardParameters { - /** - * Name of the image family to search for. - */ - family?: string; /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - - export class Resource$Images { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Deletes the specified image. + * Returns the specified HttpsHealthCheck resource. * @example * ```js * // Before running the sample: @@ -75107,6 +78714,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -75115,57 +78723,30 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.delete({ - * // Name of the image resource to delete. - * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.httpsHealthChecks.get({ + * // Name of the HttpsHealthCheck resource to return. + * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "healthyThreshold": 0, + * // "host": "my_host", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "port": 0, + * // "requestPath": "my_requestPath", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * } * @@ -75181,52 +78762,53 @@ export namespace compute_v1 { * @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$Images$Delete, + get( + params: Params$Resource$Httpshealthchecks$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Images$Delete, + get( + params?: Params$Resource$Httpshealthchecks$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Images$Delete, + ): Promise>; + get( + params: Params$Resource$Httpshealthchecks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Images$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Httpshealthchecks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Images$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Httpshealthchecks$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Images$Delete - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Delete; + let params = (paramsOrCallback || + {}) as Params$Resource$Httpshealthchecks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Delete; + params = {} as Params$Resource$Httpshealthchecks$Get; options = {}; } @@ -75240,32 +78822,32 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/images/{image}' + rootUrl + + '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'image'], - pathParams: ['image', 'project'], + requiredParams: ['project', 'httpsHealthCheck'], + pathParams: ['httpsHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the deprecation status of an image. - * - * If an empty request body is given, clears the deprecation status instead. + * Creates a HttpsHealthCheck resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -75297,9 +78879,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.deprecate({ - * // Image name. - * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.httpsHealthChecks.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -75322,11 +78902,19 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "deleted": "my_deleted", - * // "deprecated": "my_deprecated", - * // "obsolete": "my_obsolete", - * // "replacement": "my_replacement", - * // "state": "my_state" + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * }, * }); @@ -75339,6 +78927,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -75375,32 +78964,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deprecate( - params: Params$Resource$Images$Deprecate, + insert( + params: Params$Resource$Httpshealthchecks$Insert, options: StreamMethodOptions ): Promise>; - deprecate( - params?: Params$Resource$Images$Deprecate, + insert( + params?: Params$Resource$Httpshealthchecks$Insert, options?: MethodOptions ): Promise>; - deprecate( - params: Params$Resource$Images$Deprecate, + insert( + params: Params$Resource$Httpshealthchecks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deprecate( - params: Params$Resource$Images$Deprecate, + insert( + params: Params$Resource$Httpshealthchecks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deprecate( - params: Params$Resource$Images$Deprecate, + insert( + params: Params$Resource$Httpshealthchecks$Insert, callback: BodyResponseCallback ): void; - deprecate(callback: BodyResponseCallback): void; - deprecate( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Images$Deprecate + | Params$Resource$Httpshealthchecks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -75415,12 +79004,13 @@ export namespace compute_v1 { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Deprecate; + let params = (paramsOrCallback || + {}) as Params$Resource$Httpshealthchecks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Deprecate; + params = {} as Params$Resource$Httpshealthchecks$Insert; options = {}; } @@ -75435,7 +79025,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/images/{image}/deprecate' + '/compute/v1/projects/{project}/global/httpsHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -75443,8 +79033,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'image'], - pathParams: ['image', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -75458,7 +79048,8 @@ export namespace compute_v1 { } /** - * Returns the specified image. + * Retrieves the list of HttpsHealthCheck resources available to the specified + * project. * @example * ```js * // Before running the sample: @@ -75491,52 +79082,109 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.get({ - * // Name of the image resource to return. - * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.httpsHealthChecks.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "architecture": "my_architecture", - * // "archiveSizeBytes": "my_archiveSizeBytes", - * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, - * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "enableConfidentialCompute": false, - * // "family": "my_family", - * // "guestOsFeatures": [], * // "id": "my_id", - * // "imageEncryptionKey": {}, + * // "items": [], * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], - * // "name": "my_name", - * // "params": {}, - * // "rawDisk": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "shieldedInstanceInitialState": {}, - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceType": "my_sourceType", - * // "status": "my_status", - * // "storageLocations": [] + * // "warning": {} * // } * } * @@ -75552,52 +79200,55 @@ export namespace compute_v1 { * @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$Images$Get, + list( + params: Params$Resource$Httpshealthchecks$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Images$Get, + list( + params?: Params$Resource$Httpshealthchecks$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Images$Get, + ): Promise>; + list( + params: Params$Resource$Httpshealthchecks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Images$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Httpshealthchecks$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Images$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Httpshealthchecks$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Images$Get - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Httpshealthchecks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Get; + params = {} as Params$Resource$Httpshealthchecks$List; options = {}; } @@ -75611,7 +79262,8 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/images/{image}' + rootUrl + + '/compute/v1/projects/{project}/global/httpsHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -75619,24 +79271,25 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'image'], - pathParams: ['image', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the latest image that is part of an image family and is not - * deprecated. For more information on image families, seePublic - * image families documentation. + * Updates a HttpsHealthCheck resource in the specified project using the data + * included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -75660,7 +79313,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -75669,53 +79321,78 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.getFromFamily({ - * // Name of the image family to search for. - * family: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The image project that the image belongs to. For example, to get a CentOS - * // image, specify centos-cloud as the image project. + * const res = await compute.httpsHealthChecks.patch({ + * // Name of the HttpsHealthCheck resource to patch. + * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "architecture": "my_architecture", - * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "enableConfidentialCompute": false, - * // "family": "my_family", - * // "guestOsFeatures": [], + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "imageEncryptionKey": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], * // "name": "my_name", - * // "params": {}, - * // "rawDisk": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "shieldedInstanceInitialState": {}, - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceType": "my_sourceType", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", * // "status": "my_status", - * // "storageLocations": [] + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -75731,53 +79408,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getFromFamily( - params: Params$Resource$Images$Getfromfamily, + patch( + params: Params$Resource$Httpshealthchecks$Patch, options: StreamMethodOptions ): Promise>; - getFromFamily( - params?: Params$Resource$Images$Getfromfamily, + patch( + params?: Params$Resource$Httpshealthchecks$Patch, options?: MethodOptions - ): Promise>; - getFromFamily( - params: Params$Resource$Images$Getfromfamily, + ): Promise>; + patch( + params: Params$Resource$Httpshealthchecks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getFromFamily( - params: Params$Resource$Images$Getfromfamily, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Httpshealthchecks$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getFromFamily( - params: Params$Resource$Images$Getfromfamily, - callback: BodyResponseCallback + patch( + params: Params$Resource$Httpshealthchecks$Patch, + callback: BodyResponseCallback ): void; - getFromFamily(callback: BodyResponseCallback): void; - getFromFamily( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Images$Getfromfamily - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Images$Getfromfamily; + {}) as Params$Resource$Httpshealthchecks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Getfromfamily; + params = {} as Params$Resource$Httpshealthchecks$Patch; options = {}; } @@ -75792,31 +79469,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/images/family/{family}' + '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'family'], - pathParams: ['family', 'project'], + requiredParams: ['project', 'httpsHealthCheck'], + pathParams: ['httpsHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -75849,23 +79525,26 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.httpsHealthChecks.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name or id of the resource for this request. * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "permissions": [] * // } * } * @@ -75881,53 +79560,57 @@ export namespace compute_v1 { * @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$Images$Getiampolicy, + testIamPermissions( + params: Params$Resource$Httpshealthchecks$Testiampermissions, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Images$Getiampolicy, + testIamPermissions( + params?: Params$Resource$Httpshealthchecks$Testiampermissions, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Images$Getiampolicy, + ): Promise>; + testIamPermissions( + params: Params$Resource$Httpshealthchecks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Images$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Httpshealthchecks$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Images$Getiampolicy, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Httpshealthchecks$Testiampermissions, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Images$Getiampolicy - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Images$Getiampolicy; + {}) as Params$Resource$Httpshealthchecks$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Getiampolicy; + params = {} as Params$Resource$Httpshealthchecks$Testiampermissions; options = {}; } @@ -75942,9 +79625,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/images/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/global/httpsHealthChecks/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -75955,18 +79638,18 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates an image in the specified project using the data included - * in the request. + * Updates a HttpsHealthCheck resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -75998,9 +79681,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.insert({ - * // Force image creation if true. - * forceCreate: 'placeholder-value', + * const res = await compute.httpsHealthChecks.update({ + * // Name of the HttpsHealthCheck resource to update. + * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -76023,41 +79706,19 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "architecture": "my_architecture", - * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "enableConfidentialCompute": false, - * // "family": "my_family", - * // "guestOsFeatures": [], + * // "healthyThreshold": 0, + * // "host": "my_host", * // "id": "my_id", - * // "imageEncryptionKey": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], * // "name": "my_name", - * // "params": {}, - * // "rawDisk": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "port": 0, + * // "requestPath": "my_requestPath", * // "selfLink": "my_selfLink", - * // "shieldedInstanceInitialState": {}, - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceType": "my_sourceType", - * // "status": "my_status", - * // "storageLocations": [] + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * }, * }); @@ -76070,6 +79731,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -76106,32 +79768,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Images$Insert, + update( + params: Params$Resource$Httpshealthchecks$Update, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Images$Insert, + update( + params?: Params$Resource$Httpshealthchecks$Update, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Images$Insert, + update( + params: Params$Resource$Httpshealthchecks$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Images$Insert, + update( + params: Params$Resource$Httpshealthchecks$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Images$Insert, + update( + params: Params$Resource$Httpshealthchecks$Update, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Images$Insert + | Params$Resource$Httpshealthchecks$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -76146,12 +79808,13 @@ export namespace compute_v1 { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Insert; + let params = (paramsOrCallback || + {}) as Params$Resource$Httpshealthchecks$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Insert; + params = {} as Params$Resource$Httpshealthchecks$Update; options = {}; } @@ -76165,16 +79828,17 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/images' + rootUrl + + '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PUT', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'httpsHealthCheck'], + pathParams: ['httpsHealthCheck', 'project'], context: this.context, }; if (callback) { @@ -76186,15 +79850,262 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Httpshealthchecks$Delete extends StandardParameters { /** - * Retrieves the list of custom images - * available to the specified project. Custom images are images you - * create that belong to your project. This method does not - * get any images that belong to other projects, including publicly-available - * images, like Debian 8. If you want to get a list of publicly-available - * images, use this method to make a request to the respective image project, - * such as debian-cloud or windows-cloud. + * Name of the HttpsHealthCheck resource to delete. + */ + httpsHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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$Httpshealthchecks$Get extends StandardParameters { + /** + * Name of the HttpsHealthCheck resource to return. + */ + httpsHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Httpshealthchecks$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HttpsHealthCheck; + } + export interface Params$Resource$Httpshealthchecks$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Httpshealthchecks$Patch extends StandardParameters { + /** + * Name of the HttpsHealthCheck resource to patch. + */ + httpsHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HttpsHealthCheck; + } + export interface Params$Resource$Httpshealthchecks$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Httpshealthchecks$Update extends StandardParameters { + /** + * Name of the HttpsHealthCheck resource to update. + */ + httpsHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HttpsHealthCheck; + } + + export class Resource$Imagefamilyviews { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns the latest image that is part of an image family, is not + * deprecated and is rolled out in the specified zone. * @example * ```js * // Before running the sample: @@ -76227,109 +80138,20 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.imageFamilyViews.get({ + * // Name of the image family to search for. + * family: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "image": {} * // } * } * @@ -76345,52 +80167,53 @@ export namespace compute_v1 { * @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$Images$List, + get( + params: Params$Resource$Imagefamilyviews$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Images$List, + get( + params?: Params$Resource$Imagefamilyviews$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Images$List, + ): Promise>; + get( + params: Params$Resource$Imagefamilyviews$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Images$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Imagefamilyviews$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Images$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Imagefamilyviews$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Images$List - | BodyResponseCallback + | Params$Resource$Imagefamilyviews$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Imagefamilyviews$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$List; + params = {} as Params$Resource$Imagefamilyviews$Get; options = {}; } @@ -76404,7 +80227,8 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/images' + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/imageFamilyViews/{family}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -76412,24 +80236,44 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'family'], + pathParams: ['family', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Imagefamilyviews$Get extends StandardParameters { /** - * Patches the specified image with the data included in the request. - * Only the following fields can be modified: family, description, - * deprecation status. + * Name of the image family to search for. + */ + family?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + + export class Resource$Images { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified image. * @example * ```js * // Before running the sample: @@ -76461,8 +80305,8 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.patch({ - * // Name of the image resource to patch. + * const res = await compute.images.delete({ + * // Name of the image resource to delete. * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: @@ -76481,48 +80325,6 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "architecture": "my_architecture", - * // "archiveSizeBytes": "my_archiveSizeBytes", - * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, - * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "enableConfidentialCompute": false, - * // "family": "my_family", - * // "guestOsFeatures": [], - * // "id": "my_id", - * // "imageEncryptionKey": {}, - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], - * // "name": "my_name", - * // "params": {}, - * // "rawDisk": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "shieldedInstanceInitialState": {}, - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceType": "my_sourceType", - * // "status": "my_status", - * // "storageLocations": [] - * // } - * }, * }); * console.log(res.data); * @@ -76533,6 +80335,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -76569,32 +80372,32 @@ export namespace compute_v1 { * @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$Images$Patch, + delete( + params: Params$Resource$Images$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Images$Patch, + delete( + params?: Params$Resource$Images$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Images$Patch, + delete( + params: Params$Resource$Images$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Images$Patch, + delete( + params: Params$Resource$Images$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Images$Patch, + delete( + params: Params$Resource$Images$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Images$Patch + | Params$Resource$Images$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -76609,12 +80412,12 @@ export namespace compute_v1 { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Patch; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Patch; + params = {} as Params$Resource$Images$Delete; options = {}; } @@ -76630,7 +80433,7 @@ export namespace compute_v1 { url: ( rootUrl + '/compute/v1/projects/{project}/global/images/{image}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options @@ -76651,8 +80454,9 @@ export namespace compute_v1 { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Sets the deprecation status of an image. + * + * If an empty request body is given, clears the deprecation status instead. * @example * ```js * // Before running the sample: @@ -76684,20 +80488,36 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.setIamPolicy({ + * const res = await compute.images.deprecate({ + * // Image name. + * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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. + * // + * // 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: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "deleted": "my_deleted", + * // "deprecated": "my_deprecated", + * // "obsolete": "my_obsolete", + * // "replacement": "my_replacement", + * // "state": "my_state" * // } * }, * }); @@ -76705,10 +80525,33 @@ export namespace compute_v1 { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -76724,53 +80567,52 @@ export namespace compute_v1 { * @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$Images$Setiampolicy, + deprecate( + params: Params$Resource$Images$Deprecate, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Images$Setiampolicy, + deprecate( + params?: Params$Resource$Images$Deprecate, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Images$Setiampolicy, + ): Promise>; + deprecate( + params: Params$Resource$Images$Deprecate, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Images$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + deprecate( + params: Params$Resource$Images$Deprecate, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Images$Setiampolicy, - callback: BodyResponseCallback + deprecate( + params: Params$Resource$Images$Deprecate, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + deprecate(callback: BodyResponseCallback): void; + deprecate( paramsOrCallback?: - | Params$Resource$Images$Setiampolicy - | BodyResponseCallback + | Params$Resource$Images$Deprecate + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Images$Setiampolicy; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Deprecate; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Setiampolicy; + params = {} as Params$Resource$Images$Deprecate; options = {}; } @@ -76785,7 +80627,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/images/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/global/images/{image}/deprecate' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -76793,23 +80635,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'image'], + pathParams: ['image', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the labels on an image. To learn more about labels, read theLabeling - * Resources documentation. + * Returns the specified image. * @example * ```js * // Before running the sample: @@ -76833,6 +80674,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -76841,52 +80683,52 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.setLabels({ + * const res = await compute.images.get({ + * // Name of the image resource to return. + * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "architecture": "my_architecture", + * // "archiveSizeBytes": "my_archiveSizeBytes", * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "diskSizeGb": "my_diskSizeGb", + * // "enableConfidentialCompute": false, + * // "family": "my_family", + * // "guestOsFeatures": [], * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "imageEncryptionKey": {}, * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "params": {}, + * // "rawDisk": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", + * // "shieldedInstanceInitialState": {}, + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceType": "my_sourceType", * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "storageLocations": [] * // } * } * @@ -76902,52 +80744,52 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Images$Setlabels, + get( + params: Params$Resource$Images$Get, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Images$Setlabels, + get( + params?: Params$Resource$Images$Get, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Images$Setlabels, + ): Promise>; + get( + params: Params$Resource$Images$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Images$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Images$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Images$Setlabels, - callback: BodyResponseCallback + get( + params: Params$Resource$Images$Get, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Images$Setlabels - | BodyResponseCallback + | Params$Resource$Images$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Setlabels; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Setlabels; + params = {} as Params$Resource$Images$Get; options = {}; } @@ -76961,31 +80803,32 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/images/{resource}/setLabels' + rootUrl + '/compute/v1/projects/{project}/global/images/{image}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'image'], + pathParams: ['image', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Returns the latest image that is part of an image family and is not + * deprecated. For more information on image families, seePublic + * image families documentation. * @example * ```js * // Before running the sample: @@ -77018,26 +80861,53 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.testIamPermissions({ - * // Project ID for this request. + * const res = await compute.images.getFromFamily({ + * // Name of the image family to search for. + * family: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The image project that the image belongs to. For example, to get a CentOS + * // image, specify centos-cloud as the image project. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "architecture": "my_architecture", + * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, + * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "enableConfidentialCompute": false, + * // "family": "my_family", + * // "guestOsFeatures": [], + * // "id": "my_id", + * // "imageEncryptionKey": {}, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], + * // "name": "my_name", + * // "params": {}, + * // "rawDisk": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "shieldedInstanceInitialState": {}, + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceType": "my_sourceType", + * // "status": "my_status", + * // "storageLocations": [] * // } * } * @@ -77053,57 +80923,53 @@ export namespace compute_v1 { * @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$Images$Testiampermissions, + getFromFamily( + params: Params$Resource$Images$Getfromfamily, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Images$Testiampermissions, + getFromFamily( + params?: Params$Resource$Images$Getfromfamily, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Images$Testiampermissions, + ): Promise>; + getFromFamily( + params: Params$Resource$Images$Getfromfamily, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Images$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Images$Testiampermissions, - callback: BodyResponseCallback + getFromFamily( + params: Params$Resource$Images$Getfromfamily, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + getFromFamily( + params: Params$Resource$Images$Getfromfamily, + callback: BodyResponseCallback ): void; - testIamPermissions( + getFromFamily(callback: BodyResponseCallback): void; + getFromFamily( paramsOrCallback?: - | Params$Resource$Images$Testiampermissions - | BodyResponseCallback + | Params$Resource$Images$Getfromfamily + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Images$Testiampermissions; + {}) as Params$Resource$Images$Getfromfamily; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Testiampermissions; + params = {} as Params$Resource$Images$Getfromfamily; options = {}; } @@ -77118,344 +80984,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/images/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/images/family/{family}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'family'], + pathParams: ['family', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Images$Delete extends StandardParameters { - /** - * Name of the image resource to delete. - */ - image?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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$Images$Deprecate extends StandardParameters { - /** - * Image name. - */ - image?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$DeprecationStatus; - } - export interface Params$Resource$Images$Get extends StandardParameters { - /** - * Name of the image resource to return. - */ - image?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Images$Getfromfamily extends StandardParameters { - /** - * Name of the image family to search for. - */ - family?: string; - /** - * The image project that the image belongs to. For example, to get a CentOS - * image, specify centos-cloud as the image project. - */ - project?: string; - } - export interface Params$Resource$Images$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - } - export interface Params$Resource$Images$Insert extends StandardParameters { - /** - * Force image creation if true. - */ - forceCreate?: boolean; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$Image; - } - export interface Params$Resource$Images$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Images$Patch extends StandardParameters { - /** - * Name of the image resource to patch. - */ - image?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$Image; - } - export interface Params$Resource$Images$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Images$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetLabelsRequest; - } - export interface Params$Resource$Images$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - - export class Resource$Instancegroupmanagerresizerequests { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Cancels the specified resize request and removes it from the queue. - * Cancelled resize request does no longer wait for the resources to be - * provisioned. Cancel is only possible for requests that are accepted in the - * queue. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -77479,6 +81032,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -77487,64 +81041,23 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.cancel({ - * // The name of the managed instance group. - * // The name should conform to RFC1035 or be a resource ID. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', - * // The name of the resize request to cancel. - * // The name should conform to RFC1035 or be a resource ID. - * resizeRequest: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. The name should conform to RFC1035. - * zone: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -77560,54 +81073,53 @@ export namespace compute_v1 { * @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$Instancegroupmanagerresizerequests$Cancel, + getIamPolicy( + params: Params$Resource$Images$Getiampolicy, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Instancegroupmanagerresizerequests$Cancel, + getIamPolicy( + params?: Params$Resource$Images$Getiampolicy, options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, + ): Promise>; + getIamPolicy( + params: Params$Resource$Images$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Images$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Images$Getiampolicy, + callback: BodyResponseCallback ): void; - cancel(callback: BodyResponseCallback): void; - cancel( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$Cancel - | BodyResponseCallback + | Params$Resource$Images$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$Cancel; + {}) as Params$Resource$Images$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagerresizerequests$Cancel; + params = {} as Params$Resource$Images$Getiampolicy; options = {}; } @@ -77622,42 +81134,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel' + '/compute/v1/projects/{project}/global/images/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: [ - 'project', - 'zone', - 'instanceGroupManager', - 'resizeRequest', - ], - pathParams: [ - 'instanceGroupManager', - 'project', - 'resizeRequest', - 'zone', - ], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specified, inactive resize request. Requests that are still - * active cannot be deleted. Deleting request does not delete instances that - * were provisioned previously. + * Creates an image in the specified project using the data included + * in the request. * @example * ```js * // Before running the sample: @@ -77689,10 +81190,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.delete({ - * // The name of the managed instance group. - * // The name should conform to RFC1035 or be a resource ID. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.insert({ + * // Force image creation if true. + * forceCreate: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -77710,27 +81210,64 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the resize request to delete. - * // The name should conform to RFC1035 or be a resource ID. - * resizeRequest: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. The name should conform to RFC1035. - * zone: 'placeholder-value', - * }); - * console.log(res.data); * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "architecture": "my_architecture", + * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, + * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "enableConfidentialCompute": false, + * // "family": "my_family", + * // "guestOsFeatures": [], + * // "id": "my_id", + * // "imageEncryptionKey": {}, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], + * // "name": "my_name", + * // "params": {}, + * // "rawDisk": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "shieldedInstanceInitialState": {}, + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceType": "my_sourceType", + * // "status": "my_status", + * // "storageLocations": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", * // "operationGroupId": "my_operationGroupId", @@ -77762,32 +81299,32 @@ export namespace compute_v1 { * @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$Instancegroupmanagerresizerequests$Delete, + insert( + params: Params$Resource$Images$Insert, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Instancegroupmanagerresizerequests$Delete, + insert( + params?: Params$Resource$Images$Insert, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Instancegroupmanagerresizerequests$Delete, + insert( + params: Params$Resource$Images$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instancegroupmanagerresizerequests$Delete, + insert( + params: Params$Resource$Images$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instancegroupmanagerresizerequests$Delete, + insert( + params: Params$Resource$Images$Insert, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$Delete + | Params$Resource$Images$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -77802,14 +81339,12 @@ export namespace compute_v1 { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$Delete; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagerresizerequests$Delete; + params = {} as Params$Resource$Images$Insert; options = {}; } @@ -77823,27 +81358,16 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' + rootUrl + '/compute/v1/projects/{project}/global/images' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: [ - 'project', - 'zone', - 'instanceGroupManager', - 'resizeRequest', - ], - pathParams: [ - 'instanceGroupManager', - 'project', - 'resizeRequest', - 'zone', - ], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -77857,7 +81381,13 @@ export namespace compute_v1 { } /** - * Returns all of the details about the specified resize request. + * Retrieves the list of custom images + * available to the specified project. Custom images are images you + * create that belong to your project. This method does not + * get any images that belong to other projects, including publicly-available + * images, like Debian 8. If you want to get a list of publicly-available + * images, use this method to make a request to the respective image project, + * such as debian-cloud or windows-cloud. * @example * ```js * // Before running the sample: @@ -77890,36 +81420,109 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.get({ - * // The name of the managed instance group. - * // Name should conform to RFC1035 or be a resource ID. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the resize request. - * // Name should conform to RFC1035 or be a resource ID. - * resizeRequest: 'placeholder-value', - * // Name of the href="/compute/docs/regions-zones/#available"\>zone - * // scoping this request. Name should conform to RFC1035. - * zone: 'placeholder-value', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", * // "id": "my_id", + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "requestedRunDuration": {}, - * // "resizeBy": 0, + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "status": {}, - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -77935,61 +81538,52 @@ export namespace compute_v1 { * @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$Instancegroupmanagerresizerequests$Get, + list( + params: Params$Resource$Images$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Instancegroupmanagerresizerequests$Get, + list( + params?: Params$Resource$Images$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - get( - params: Params$Resource$Instancegroupmanagerresizerequests$Get, + ): Promise>; + list( + params: Params$Resource$Images$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancegroupmanagerresizerequests$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Instancegroupmanagerresizerequests$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Images$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + list( + params: Params$Resource$Images$List, + callback: BodyResponseCallback ): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$Get - | BodyResponseCallback + | Params$Resource$Images$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Images$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagerresizerequests$Get; + params = {} as Params$Resource$Images$List; options = {}; } @@ -78003,8 +81597,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' + rootUrl + '/compute/v1/projects/{project}/global/images' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -78012,35 +81605,24 @@ export namespace compute_v1 { options ), params, - requiredParams: [ - 'project', - 'zone', - 'instanceGroupManager', - 'resizeRequest', - ], - pathParams: [ - 'instanceGroupManager', - 'project', - 'resizeRequest', - 'zone', - ], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a new resize request that starts provisioning VMs immediately - * or queues VM creation. + * Patches the specified image with the data included in the request. + * Only the following fields can be modified: family, description, + * deprecation status. * @example * ```js * // Before running the sample: @@ -78072,11 +81654,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.insert({ - * // The name of the managed instance group to which the resize request will - * // be added. - * // Name should conform to RFC1035 or be a resource ID. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.patch({ + * // Name of the image resource to patch. + * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -78094,27 +81674,46 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located and where the resize request will be created. - * // Name should conform to RFC1035. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "architecture": "my_architecture", + * // "archiveSizeBytes": "my_archiveSizeBytes", * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "enableConfidentialCompute": false, + * // "family": "my_family", + * // "guestOsFeatures": [], * // "id": "my_id", + * // "imageEncryptionKey": {}, * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], * // "name": "my_name", - * // "requestedRunDuration": {}, - * // "resizeBy": 0, + * // "params": {}, + * // "rawDisk": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "status": {}, - * // "zone": "my_zone" + * // "shieldedInstanceInitialState": {}, + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceType": "my_sourceType", + * // "status": "my_status", + * // "storageLocations": [] * // } * }, * }); @@ -78127,6 +81726,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -78163,32 +81763,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Instancegroupmanagerresizerequests$Insert, + patch( + params: Params$Resource$Images$Patch, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Instancegroupmanagerresizerequests$Insert, + patch( + params?: Params$Resource$Images$Patch, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Instancegroupmanagerresizerequests$Insert, + patch( + params: Params$Resource$Images$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instancegroupmanagerresizerequests$Insert, + patch( + params: Params$Resource$Images$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instancegroupmanagerresizerequests$Insert, + patch( + params: Params$Resource$Images$Patch, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$Insert + | Params$Resource$Images$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -78203,14 +81803,168 @@ export namespace compute_v1 { | void | Promise> | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Images$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Images$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/projects/{project}/global/images/{image}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'image'], + pathParams: ['image', 'project'], + 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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.images.setIamPolicy({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Images$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Images$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Images$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Images$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Images$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Images$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$Insert; + {}) as Params$Resource$Images$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagerresizerequests$Insert; + params = {} as Params$Resource$Images$Setiampolicy; options = {}; } @@ -78225,7 +81979,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' + '/compute/v1/projects/{project}/global/images/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -78233,23 +81987,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of resize requests that are contained in the - * managed instance group. + * Sets the labels on an image. To learn more about labels, read theLabeling + * Resources documentation. * @example * ```js * // Before running the sample: @@ -78273,7 +82027,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -78282,114 +82035,53 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The name of the managed instance group. The name should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.images.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. The name should conform to RFC1035. - * zone: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -78405,61 +82097,208 @@ export namespace compute_v1 { * @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$Instancegroupmanagerresizerequests$List, + setLabels( + params: Params$Resource$Images$Setlabels, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Instancegroupmanagerresizerequests$List, + setLabels( + params?: Params$Resource$Images$Setlabels, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Instancegroupmanagerresizerequests$List, + ): Promise>; + setLabels( + params: Params$Resource$Images$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instancegroupmanagerresizerequests$List, + setLabels( + params: Params$Resource$Images$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Images$Setlabels, + callback: BodyResponseCallback + ): void; + setLabels(callback: BodyResponseCallback): void; + setLabels( + paramsOrCallback?: + | Params$Resource$Images$Setlabels + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Images$Setlabels; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Images$Setlabels; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/images/{resource}/setLabels' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', '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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.images.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Images$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Images$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Images$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Images$Testiampermissions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instancegroupmanagerresizerequests$List, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Images$Testiampermissions, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - list( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$List - | BodyResponseCallback + | Params$Resource$Images$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$List; + {}) as Params$Resource$Images$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagerresizerequests$List; + params = {} as Params$Resource$Images$Testiampermissions; options = {}; } @@ -78474,37 +82313,34 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' + '/compute/v1/projects/{project}/global/images/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Instancegroupmanagerresizerequests$Cancel extends StandardParameters { + export interface Params$Resource$Images$Delete extends StandardParameters { /** - * The name of the managed instance group. - * The name should conform to RFC1035 or be a resource ID. + * Name of the image resource to delete. */ - instanceGroupManager?: string; + image?: string; /** * Project ID for this request. */ @@ -78525,23 +82361,12 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the resize request to cancel. - * The name should conform to RFC1035 or be a resource ID. - */ - resizeRequest?: string; - /** - * The name of thezone where the managed - * instance group is located. The name should conform to RFC1035. - */ - zone?: string; } - export interface Params$Resource$Instancegroupmanagerresizerequests$Delete extends StandardParameters { + export interface Params$Resource$Images$Deprecate extends StandardParameters { /** - * The name of the managed instance group. - * The name should conform to RFC1035 or be a resource ID. + * Image name. */ - instanceGroupManager?: string; + image?: string; /** * Project ID for this request. */ @@ -78562,45 +82387,52 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** - * The name of the resize request to delete. - * The name should conform to RFC1035 or be a resource ID. + * Request body metadata */ - resizeRequest?: string; + requestBody?: Schema$DeprecationStatus; + } + export interface Params$Resource$Images$Get extends StandardParameters { /** - * The name of thezone where the managed - * instance group is located. The name should conform to RFC1035. + * Name of the image resource to return. */ - zone?: string; + image?: string; + /** + * Project ID for this request. + */ + project?: string; } - export interface Params$Resource$Instancegroupmanagerresizerequests$Get extends StandardParameters { + export interface Params$Resource$Images$Getfromfamily extends StandardParameters { /** - * The name of the managed instance group. - * Name should conform to RFC1035 or be a resource ID. + * Name of the image family to search for. */ - instanceGroupManager?: string; + family?: string; /** - * Project ID for this request. + * The image project that the image belongs to. For example, to get a CentOS + * image, specify centos-cloud as the image project. */ project?: string; + } + export interface Params$Resource$Images$Getiampolicy extends StandardParameters { /** - * The name of the resize request. - * Name should conform to RFC1035 or be a resource ID. + * Requested IAM Policy version. */ - resizeRequest?: string; + optionsRequestedPolicyVersion?: number; /** - * Name of the href="/compute/docs/regions-zones/#available"\>zone - * scoping this request. Name should conform to RFC1035. + * Project ID for this request. */ - zone?: string; + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; } - export interface Params$Resource$Instancegroupmanagerresizerequests$Insert extends StandardParameters { + export interface Params$Resource$Images$Insert extends StandardParameters { /** - * The name of the managed instance group to which the resize request will - * be added. - * Name should conform to RFC1035 or be a resource ID. + * Force image creation if true. */ - instanceGroupManager?: string; + forceCreate?: boolean; /** * Project ID for this request. */ @@ -78621,19 +82453,13 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of thezone where the managed - * instance group is located and where the resize request will be created. - * Name should conform to RFC1035. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManagerResizeRequest; + requestBody?: Schema$Image; } - export interface Params$Resource$Instancegroupmanagerresizerequests$List extends StandardParameters { + export interface Params$Resource$Images$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -78695,10 +82521,6 @@ export namespace compute_v1 { * expressions. */ filter?: string; - /** - * The name of the managed instance group. The name should conform to RFC1035. - */ - instanceGroupManager?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -78740,35 +82562,95 @@ export namespace compute_v1 { * with an error code. */ returnPartialSuccess?: boolean; + } + export interface Params$Resource$Images$Patch extends StandardParameters { /** - * The name of thezone where the managed - * instance group is located. The name should conform to RFC1035. + * Name of the image resource to patch. */ - zone?: string; - } - - export class Resource$Instancegroupmanagers { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - + image?: string; /** - * Flags the specified instances to be removed from the - * managed instance group. Abandoning an instance does not delete the - * instance, but it does remove the instance from any target pools that are - * applied by the managed instance group. This method reduces thetargetSize of the managed instance group by the - * number of instances that you abandon. This operation is marked asDONE when the action is scheduled even if the instances have - * not yet been removed from the group. You must separately verify the - * status of the abandoning action with thelistmanagedinstances - * method. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. - * - * You can specify a maximum of 1000 instances with this method per request. + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$Image; + } + export interface Params$Resource$Images$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Images$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetLabelsRequest; + } + export interface Params$Resource$Images$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Instancegroupmanagerresizerequests { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Cancels the specified resize request and removes it from the queue. + * Cancelled resize request does no longer wait for the resources to be + * provisioned. Cancel is only possible for requests that are accepted in the + * queue. * @example * ```js * // Before running the sample: @@ -78800,8 +82682,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.abandonInstances({ + * const res = await compute.instanceGroupManagerResizeRequests.cancel({ * // The name of the managed instance group. + * // The name should conform to RFC1035 or be a resource ID. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: @@ -78820,17 +82703,12 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the resize request to cancel. + * // The name should conform to RFC1035 or be a resource ID. + * resizeRequest: 'placeholder-value', * // The name of thezone where the managed - * // instance group is located. + * // instance group is located. The name should conform to RFC1035. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, * }); * console.log(res.data); * @@ -78841,6 +82719,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -78877,32 +82756,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - abandonInstances( - params: Params$Resource$Instancegroupmanagers$Abandoninstances, + cancel( + params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, options: StreamMethodOptions ): Promise>; - abandonInstances( - params?: Params$Resource$Instancegroupmanagers$Abandoninstances, + cancel( + params?: Params$Resource$Instancegroupmanagerresizerequests$Cancel, options?: MethodOptions ): Promise>; - abandonInstances( - params: Params$Resource$Instancegroupmanagers$Abandoninstances, + cancel( + params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - abandonInstances( - params: Params$Resource$Instancegroupmanagers$Abandoninstances, + cancel( + params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - abandonInstances( - params: Params$Resource$Instancegroupmanagers$Abandoninstances, + cancel( + params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, callback: BodyResponseCallback ): void; - abandonInstances(callback: BodyResponseCallback): void; - abandonInstances( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Abandoninstances + | Params$Resource$Instancegroupmanagerresizerequests$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -78918,12 +82797,13 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Abandoninstances; + {}) as Params$Resource$Instancegroupmanagerresizerequests$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Abandoninstances; + params = + {} as Params$Resource$Instancegroupmanagerresizerequests$Cancel; options = {}; } @@ -78938,7 +82818,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -78946,8 +82826,18 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'resizeRequest', + 'zone', + ], context: this.context, }; if (callback) { @@ -78961,268 +82851,9 @@ export namespace compute_v1 { } /** - * Retrieves the list of managed instance groups and groups them by zone. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.instanceGroupManagers.aggregatedList({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - aggregatedList( - params: Params$Resource$Instancegroupmanagers$Aggregatedlist, - options: StreamMethodOptions - ): Promise>; - aggregatedList( - params?: Params$Resource$Instancegroupmanagers$Aggregatedlist, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Instancegroupmanagers$Aggregatedlist, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Instancegroupmanagers$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Instancegroupmanagers$Aggregatedlist, - callback: BodyResponseCallback - ): void; - aggregatedList( - callback: BodyResponseCallback - ): void; - aggregatedList( - paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Aggregatedlist - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Aggregatedlist; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Aggregatedlist; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/aggregated/instanceGroupManagers' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Applies changes to selected instances on the managed instance group. - * This method can be used to apply new overrides and/or new versions. + * Deletes the specified, inactive resize request. Requests that are still + * active cannot be deleted. Deleting request does not delete instances that + * were provisioned previously. * @example * ```js * // Before running the sample: @@ -79254,26 +82885,33 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.applyUpdatesToInstances({ - * // The name of the managed instance group, should conform to RFC1035. + * const res = await compute.instanceGroupManagerResizeRequests.delete({ + * // The name of the managed instance group. + * // The name should conform to RFC1035 or be a resource ID. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone - * // where the managed instance group is located. Should conform to RFC1035. + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of the resize request to delete. + * // The name should conform to RFC1035 or be a resource ID. + * resizeRequest: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. The name should conform to RFC1035. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allInstances": false, - * // "instances": [], - * // "minimalAction": "my_minimalAction", - * // "mostDisruptiveAllowedAction": "my_mostDisruptiveAllowedAction" - * // } - * }, * }); * console.log(res.data); * @@ -79284,6 +82922,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -79320,34 +82959,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - applyUpdatesToInstances( - params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + delete( + params: Params$Resource$Instancegroupmanagerresizerequests$Delete, options: StreamMethodOptions ): Promise>; - applyUpdatesToInstances( - params?: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + delete( + params?: Params$Resource$Instancegroupmanagerresizerequests$Delete, options?: MethodOptions ): Promise>; - applyUpdatesToInstances( - params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + delete( + params: Params$Resource$Instancegroupmanagerresizerequests$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - applyUpdatesToInstances( - params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + delete( + params: Params$Resource$Instancegroupmanagerresizerequests$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - applyUpdatesToInstances( - params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, - callback: BodyResponseCallback - ): void; - applyUpdatesToInstances( + delete( + params: Params$Resource$Instancegroupmanagerresizerequests$Delete, callback: BodyResponseCallback ): void; - applyUpdatesToInstances( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Applyupdatestoinstances + | Params$Resource$Instancegroupmanagerresizerequests$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -79363,13 +83000,13 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Applyupdatestoinstances; + {}) as Params$Resource$Instancegroupmanagerresizerequests$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Instancegroupmanagers$Applyupdatestoinstances; + {} as Params$Resource$Instancegroupmanagerresizerequests$Delete; options = {}; } @@ -79384,16 +83021,26 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'resizeRequest', + 'zone', + ], context: this.context, }; if (callback) { @@ -79407,10 +83054,7 @@ export namespace compute_v1 { } /** - * Creates instances with per-instance configurations in this managed instance - * group. Instances are created using the current instance template. Thecreate instances operation is marked DONE if thecreateInstances request is successful. The underlying actions - * take additional time. You must separately verify the status of thecreating or actions with the listmanagedinstances - * method. + * Returns all of the details about the specified resize request. * @example * ```js * // Before running the sample: @@ -79434,6 +83078,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -79442,68 +83087,36 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.createInstances({ + * const res = await compute.instanceGroupManagerResizeRequests.get({ * // The name of the managed instance group. - * // It should conform to RFC1035. + * // Name should conform to RFC1035 or be a resource ID. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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. - * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of thezone - * // where the managed instance group is located. - * // It should conform to RFC1035. + * // The name of the resize request. + * // Name should conform to RFC1035 or be a resource ID. + * resizeRequest: 'placeholder-value', + * // Name of the href="/compute/docs/regions-zones/#available"\>zone + * // scoping this request. Name should conform to RFC1035. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, * // "region": "my_region", + * // "requestedRunDuration": {}, + * // "resizeBy": 0, * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "status": {}, * // "zone": "my_zone" * // } * } @@ -79520,53 +83133,61 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - createInstances( - params: Params$Resource$Instancegroupmanagers$Createinstances, + get( + params: Params$Resource$Instancegroupmanagerresizerequests$Get, options: StreamMethodOptions ): Promise>; - createInstances( - params?: Params$Resource$Instancegroupmanagers$Createinstances, + get( + params?: Params$Resource$Instancegroupmanagerresizerequests$Get, options?: MethodOptions - ): Promise>; - createInstances( - params: Params$Resource$Instancegroupmanagers$Createinstances, + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Instancegroupmanagerresizerequests$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - createInstances( - params: Params$Resource$Instancegroupmanagers$Createinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancegroupmanagerresizerequests$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - createInstances( - params: Params$Resource$Instancegroupmanagers$Createinstances, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancegroupmanagerresizerequests$Get, + callback: BodyResponseCallback ): void; - createInstances(callback: BodyResponseCallback): void; - createInstances( + get( + callback: BodyResponseCallback + ): void; + get( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Createinstances - | BodyResponseCallback + | Params$Resource$Instancegroupmanagerresizerequests$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Createinstances; + {}) as Params$Resource$Instancegroupmanagerresizerequests$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Createinstances; + params = {} as Params$Resource$Instancegroupmanagerresizerequests$Get; options = {}; } @@ -79581,33 +83202,43 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/createInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'resizeRequest', + 'zone', + ], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes the specified managed instance group and all of the instances - * in that group. Note that the instance group must not belong to a - * backend service. Read - * Deleting an instance group for more information. + * Creates a new resize request that starts provisioning VMs immediately + * or queues VM creation. * @example * ```js * // Before running the sample: @@ -79639,8 +83270,10 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.delete({ - * // The name of the managed instance group to delete. + * const res = await compute.instanceGroupManagerResizeRequests.insert({ + * // The name of the managed instance group to which the resize request will + * // be added. + * // Name should conform to RFC1035 or be a resource ID. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: @@ -79660,8 +83293,29 @@ export namespace compute_v1 { * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', * // The name of thezone where the managed - * // instance group is located. + * // instance group is located and where the resize request will be created. + * // Name should conform to RFC1035. * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "requestedRunDuration": {}, + * // "resizeBy": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "status": {}, + * // "zone": "my_zone" + * // } + * }, * }); * console.log(res.data); * @@ -79672,6 +83326,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -79708,32 +83363,32 @@ export namespace compute_v1 { * @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$Instancegroupmanagers$Delete, + insert( + params: Params$Resource$Instancegroupmanagerresizerequests$Insert, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Instancegroupmanagers$Delete, + insert( + params?: Params$Resource$Instancegroupmanagerresizerequests$Insert, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Instancegroupmanagers$Delete, + insert( + params: Params$Resource$Instancegroupmanagerresizerequests$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instancegroupmanagers$Delete, + insert( + params: Params$Resource$Instancegroupmanagerresizerequests$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instancegroupmanagers$Delete, + insert( + params: Params$Resource$Instancegroupmanagerresizerequests$Insert, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Delete + | Params$Resource$Instancegroupmanagerresizerequests$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -79749,12 +83404,13 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Delete; + {}) as Params$Resource$Instancegroupmanagerresizerequests$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Delete; + params = + {} as Params$Resource$Instancegroupmanagerresizerequests$Insert; options = {}; } @@ -79769,9 +83425,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options @@ -79792,21 +83448,8 @@ export namespace compute_v1 { } /** - * Flags the specified instances in the managed instance group for immediate - * deletion. The instances are also removed from any target - * pools of which they were a member. This method reduces thetargetSize of the managed instance group by the number of - * instances that you delete. This operation is marked as DONE - * when the action is scheduled even if the instances are still being deleted. - * You must separately verify the status of the deleting action - * with thelistmanagedinstances - * method. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. - * - * You can specify a maximum of 1000 instances with this method per request. + * Retrieves a list of resize requests that are contained in the + * managed instance group. * @example * ```js * // Before running the sample: @@ -79830,6 +83473,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -79838,69 +83482,114 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.deleteInstances({ - * // The name of the managed instance group. + * const res = await compute.instanceGroupManagerResizeRequests.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The name of the managed instance group. The name should conform to RFC1035. * instanceGroupManager: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * // The name of thezone where the managed - * // instance group is located. + * // instance group is located. The name should conform to RFC1035. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [], - * // "skipInstancesOnValidationError": false - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -79916,53 +83605,61 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deleteInstances( - params: Params$Resource$Instancegroupmanagers$Deleteinstances, + list( + params: Params$Resource$Instancegroupmanagerresizerequests$List, options: StreamMethodOptions ): Promise>; - deleteInstances( - params?: Params$Resource$Instancegroupmanagers$Deleteinstances, + list( + params?: Params$Resource$Instancegroupmanagerresizerequests$List, options?: MethodOptions - ): Promise>; - deleteInstances( - params: Params$Resource$Instancegroupmanagers$Deleteinstances, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Instancegroupmanagerresizerequests$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteInstances( - params: Params$Resource$Instancegroupmanagers$Deleteinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Instancegroupmanagerresizerequests$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - deleteInstances( - params: Params$Resource$Instancegroupmanagers$Deleteinstances, - callback: BodyResponseCallback + list( + params: Params$Resource$Instancegroupmanagerresizerequests$List, + callback: BodyResponseCallback ): void; - deleteInstances(callback: BodyResponseCallback): void; - deleteInstances( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Deleteinstances - | BodyResponseCallback + | Params$Resource$Instancegroupmanagerresizerequests$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Deleteinstances; + {}) as Params$Resource$Instancegroupmanagerresizerequests$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Deleteinstances; + params = {} as Params$Resource$Instancegroupmanagerresizerequests$List; options = {}; } @@ -79977,9 +83674,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -79990,67 +83687,348 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Instancegroupmanagerresizerequests$Cancel extends StandardParameters { /** - * Deletes selected per-instance configurations for the managed instance - * group. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * The name of the managed instance group. + * The name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); + * 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. * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the resize request to cancel. + * The name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + /** + * The name of thezone where the managed + * instance group is located. The name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagerresizerequests$Delete extends StandardParameters { + /** + * The name of the managed instance group. + * The name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * 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. * - * // Do the magic - * const res = await compute.instanceGroupManagers.deletePerInstanceConfigs({ - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone - * // where the managed instance - * // group is located. - * // It should conform to RFC1035. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the resize request to delete. + * The name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + /** + * The name of thezone where the managed + * instance group is located. The name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagerresizerequests$Get extends StandardParameters { + /** + * The name of the managed instance group. + * Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the resize request. + * Name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + /** + * Name of the href="/compute/docs/regions-zones/#available"\>zone + * scoping this request. Name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagerresizerequests$Insert extends StandardParameters { + /** + * The name of the managed instance group to which the resize request will + * be added. + * Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of thezone where the managed + * instance group is located and where the resize request will be created. + * Name should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagerResizeRequest; + } + export interface Params$Resource$Instancegroupmanagerresizerequests$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The name of the managed instance group. The name should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of thezone where the managed + * instance group is located. The name should conform to RFC1035. + */ + zone?: string; + } + + export class Resource$Instancegroupmanagers { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Flags the specified instances to be removed from the + * managed instance group. Abandoning an instance does not delete the + * instance, but it does remove the instance from any target pools that are + * applied by the managed instance group. This method reduces thetargetSize of the managed instance group by the + * number of instances that you abandon. This operation is marked asDONE when the action is scheduled even if the instances have + * not yet been removed from the group. You must separately verify the + * status of the abandoning action with thelistmanagedinstances + * method. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. + * + * You can specify a maximum of 1000 instances with this method per request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instanceGroupManagers.abandonInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "names": [] + * // "instances": [] * // } * }, * }); @@ -80063,6 +84041,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -80099,34 +84078,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deletePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + abandonInstances( + params: Params$Resource$Instancegroupmanagers$Abandoninstances, options: StreamMethodOptions ): Promise>; - deletePerInstanceConfigs( - params?: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + abandonInstances( + params?: Params$Resource$Instancegroupmanagers$Abandoninstances, options?: MethodOptions ): Promise>; - deletePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + abandonInstances( + params: Params$Resource$Instancegroupmanagers$Abandoninstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deletePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + abandonInstances( + params: Params$Resource$Instancegroupmanagers$Abandoninstances, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deletePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, - callback: BodyResponseCallback - ): void; - deletePerInstanceConfigs( + abandonInstances( + params: Params$Resource$Instancegroupmanagers$Abandoninstances, callback: BodyResponseCallback ): void; - deletePerInstanceConfigs( + abandonInstances(callback: BodyResponseCallback): void; + abandonInstances( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs + | Params$Resource$Instancegroupmanagers$Abandoninstances | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -80142,13 +84119,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs; + {}) as Params$Resource$Instancegroupmanagers$Abandoninstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs; + params = {} as Params$Resource$Instancegroupmanagers$Abandoninstances; options = {}; } @@ -80163,7 +84139,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -80186,7 +84162,10 @@ export namespace compute_v1 { } /** - * Returns all of the details about the specified managed instance group. + * Retrieves the list of managed instance groups and groups them by zone. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -80219,52 +84198,121 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.get({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.instanceGroupManagers.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "allInstancesConfig": {}, - * // "autoHealingPolicies": [], - * // "baseInstanceName": "my_baseInstanceName", - * // "creationTimestamp": "my_creationTimestamp", - * // "currentActions": {}, - * // "description": "my_description", - * // "distributionPolicy": {}, - * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "instanceFlexibilityPolicy": {}, - * // "instanceGroup": "my_instanceGroup", - * // "instanceLifecyclePolicy": {}, - * // "instanceTemplate": "my_instanceTemplate", + * // "items": {}, * // "kind": "my_kind", - * // "listManagedInstancesResults": "my_listManagedInstancesResults", - * // "name": "my_name", - * // "namedPorts": [], - * // "region": "my_region", - * // "resourcePolicies": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "standbyPolicy": {}, - * // "statefulPolicy": {}, - * // "status": {}, - * // "targetPools": [], - * // "targetSize": 0, - * // "targetStoppedSize": 0, - * // "targetSuspendedSize": 0, - * // "updatePolicy": {}, - * // "versions": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -80280,55 +84328,61 @@ export namespace compute_v1 { * @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$Instancegroupmanagers$Get, + aggregatedList( + params: Params$Resource$Instancegroupmanagers$Aggregatedlist, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Instancegroupmanagers$Get, + aggregatedList( + params?: Params$Resource$Instancegroupmanagers$Aggregatedlist, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Instancegroupmanagers$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Instancegroupmanagers$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancegroupmanagers$Get, + aggregatedList( + params: Params$Resource$Instancegroupmanagers$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancegroupmanagers$Get, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Instancegroupmanagers$Aggregatedlist, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Get - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Get; + {}) as Params$Resource$Instancegroupmanagers$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Get; + params = {} as Params$Resource$Instancegroupmanagers$Aggregatedlist; options = {}; } @@ -80343,7 +84397,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' + '/compute/v1/projects/{project}/aggregated/instanceGroupManagers' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -80351,32 +84405,25 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Creates a managed instance group using the information that you specify - * in the request. After the group is created, instances in the group are - * created using the specified instance template. - * This operation is marked as DONE when the group is created - * even if the instances in the group have not yet been created. You - * must separately verify the status of the individual instances with thelistmanagedinstances - * method. - * - * A managed instance group can have up to 1000 VM instances per group. Please - * contact Cloud Support if you need an increase in - * this limit. + * Applies changes to selected instances on the managed instance group. + * This method can be used to apply new overrides and/or new versions. * @example * ```js * // Before running the sample: @@ -80408,64 +84455,24 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.insert({ + * const res = await compute.instanceGroupManagers.applyUpdatesToInstances({ + * // The name of the managed instance group, should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', - * // The name of the zone - * // where you want to create the managed instance group. + * // The name of thezone + * // where the managed instance group is located. Should conform to RFC1035. * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "allInstancesConfig": {}, - * // "autoHealingPolicies": [], - * // "baseInstanceName": "my_baseInstanceName", - * // "creationTimestamp": "my_creationTimestamp", - * // "currentActions": {}, - * // "description": "my_description", - * // "distributionPolicy": {}, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "instanceFlexibilityPolicy": {}, - * // "instanceGroup": "my_instanceGroup", - * // "instanceLifecyclePolicy": {}, - * // "instanceTemplate": "my_instanceTemplate", - * // "kind": "my_kind", - * // "listManagedInstancesResults": "my_listManagedInstancesResults", - * // "name": "my_name", - * // "namedPorts": [], - * // "region": "my_region", - * // "resourcePolicies": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "standbyPolicy": {}, - * // "statefulPolicy": {}, - * // "status": {}, - * // "targetPools": [], - * // "targetSize": 0, - * // "targetStoppedSize": 0, - * // "targetSuspendedSize": 0, - * // "updatePolicy": {}, - * // "versions": [], - * // "zone": "my_zone" + * // "allInstances": false, + * // "instances": [], + * // "minimalAction": "my_minimalAction", + * // "mostDisruptiveAllowedAction": "my_mostDisruptiveAllowedAction" * // } * }, * }); @@ -80478,6 +84485,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -80514,32 +84522,34 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Instancegroupmanagers$Insert, + applyUpdatesToInstances( + params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Instancegroupmanagers$Insert, + applyUpdatesToInstances( + params?: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Instancegroupmanagers$Insert, + applyUpdatesToInstances( + params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instancegroupmanagers$Insert, + applyUpdatesToInstances( + params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instancegroupmanagers$Insert, + applyUpdatesToInstances( + params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + applyUpdatesToInstances( + callback: BodyResponseCallback + ): void; + applyUpdatesToInstances( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Insert + | Params$Resource$Instancegroupmanagers$Applyupdatestoinstances | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -80555,12 +84565,13 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Insert; + {}) as Params$Resource$Instancegroupmanagers$Applyupdatestoinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Insert; + params = + {} as Params$Resource$Instancegroupmanagers$Applyupdatestoinstances; options = {}; } @@ -80575,7 +84586,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -80583,8 +84594,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { @@ -80598,8 +84609,10 @@ export namespace compute_v1 { } /** - * Retrieves a list of managed instance groups that are contained within the - * specified project and zone. + * Creates instances with per-instance configurations in this managed instance + * group. Instances are created using the current instance template. Thecreate instances operation is marked DONE if thecreateInstances request is successful. The underlying actions + * take additional time. You must separately verify the status of thecreating or actions with the listmanagedinstances + * method. * @example * ```js * // Before running the sample: @@ -80623,7 +84636,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -80632,112 +84644,70 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.instanceGroupManagers.createInstances({ + * // The name of the managed instance group. + * // It should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. + * // 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. + * // + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -80753,55 +84723,53 @@ export namespace compute_v1 { * @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$Instancegroupmanagers$List, + createInstances( + params: Params$Resource$Instancegroupmanagers$Createinstances, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Instancegroupmanagers$List, + createInstances( + params?: Params$Resource$Instancegroupmanagers$Createinstances, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Instancegroupmanagers$List, + ): Promise>; + createInstances( + params: Params$Resource$Instancegroupmanagers$Createinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instancegroupmanagers$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + createInstances( + params: Params$Resource$Instancegroupmanagers$Createinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instancegroupmanagers$List, - callback: BodyResponseCallback + createInstances( + params: Params$Resource$Instancegroupmanagers$Createinstances, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + createInstances(callback: BodyResponseCallback): void; + createInstances( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$List - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Createinstances + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$List; + {}) as Params$Resource$Instancegroupmanagers$Createinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$List; + params = {} as Params$Resource$Instancegroupmanagers$Createinstances; options = {}; } @@ -80816,32 +84784,33 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/createInstances' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists all errors thrown by actions on instances for a given managed - * instance group. The filter and orderBy query - * parameters are not supported. + * Deletes the specified managed instance group and all of the instances + * in that group. Note that the instance group must not belong to a + * backend service. Read + * Deleting an instance group for more information. * @example * ```js * // Before running the sample: @@ -80865,7 +84834,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -80874,114 +84842,61 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.listErrors({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The name of the managed instance group. - * // It must be a string that meets the requirements in RFC1035, or an - * // unsigned long integer: must match regexp pattern: - * // (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. + * const res = await compute.instanceGroupManagers.delete({ + * // The name of the managed instance group to delete. * instanceGroupManager: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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: 'placeholder-value', * // The name of thezone where the managed * // instance group is located. - * // It should conform to RFC1035. * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "items": [], - * // "nextPageToken": "my_nextPageToken" + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -80997,61 +84912,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listErrors( - params: Params$Resource$Instancegroupmanagers$Listerrors, + delete( + params: Params$Resource$Instancegroupmanagers$Delete, options: StreamMethodOptions ): Promise>; - listErrors( - params?: Params$Resource$Instancegroupmanagers$Listerrors, + delete( + params?: Params$Resource$Instancegroupmanagers$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listErrors( - params: Params$Resource$Instancegroupmanagers$Listerrors, + ): Promise>; + delete( + params: Params$Resource$Instancegroupmanagers$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listErrors( - params: Params$Resource$Instancegroupmanagers$Listerrors, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listErrors( - params: Params$Resource$Instancegroupmanagers$Listerrors, - callback: BodyResponseCallback + delete( + params: Params$Resource$Instancegroupmanagers$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listErrors( - callback: BodyResponseCallback + delete( + params: Params$Resource$Instancegroupmanagers$Delete, + callback: BodyResponseCallback ): void; - listErrors( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Listerrors - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Listerrors; + {}) as Params$Resource$Instancegroupmanagers$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Listerrors; + params = {} as Params$Resource$Instancegroupmanagers$Delete; options = {}; } @@ -81066,9 +84973,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listErrors' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options @@ -81079,27 +84986,31 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Lists all of the instances in the managed instance group. Each instance - * in the list has a currentAction, which indicates the action - * that the managed instance group is performing on the instance. For example, - * if the group is still creating an instance, the currentAction - * is CREATING. If a previous action failed, the - * list displays the errors for that failed action. The orderBy - * query parameter is not supported. The `pageToken` query parameter is - * supported only if the group's `listManagedInstancesResults` field is set - * to `PAGINATED`. + * Flags the specified instances in the managed instance group for immediate + * deletion. The instances are also removed from any target + * pools of which they were a member. This method reduces thetargetSize of the managed instance group by the number of + * instances that you delete. This operation is marked as DONE + * when the action is scheduled even if the instances are still being deleted. + * You must separately verify the status of the deleting action + * with thelistmanagedinstances + * method. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. + * + * You can specify a maximum of 1000 instances with this method per request. * @example * ```js * // Before running the sample: @@ -81123,7 +85034,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -81132,110 +85042,70 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.listManagedInstances({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * const res = await compute.instanceGroupManagers.deleteInstances({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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: 'placeholder-value', * // The name of thezone where the managed * // instance group is located. * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [], + * // "skipInstancesOnValidationError": false + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "managedInstances": [], - * // "nextPageToken": "my_nextPageToken" + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -81251,62 +85121,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listManagedInstances( - params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + deleteInstances( + params: Params$Resource$Instancegroupmanagers$Deleteinstances, options: StreamMethodOptions ): Promise>; - listManagedInstances( - params?: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + deleteInstances( + params?: Params$Resource$Instancegroupmanagers$Deleteinstances, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listManagedInstances( - params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + ): Promise>; + deleteInstances( + params: Params$Resource$Instancegroupmanagers$Deleteinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listManagedInstances( - params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listManagedInstances( - params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, - callback: BodyResponseCallback + deleteInstances( + params: Params$Resource$Instancegroupmanagers$Deleteinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listManagedInstances( - callback: BodyResponseCallback + deleteInstances( + params: Params$Resource$Instancegroupmanagers$Deleteinstances, + callback: BodyResponseCallback ): void; - listManagedInstances( + deleteInstances(callback: BodyResponseCallback): void; + deleteInstances( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Listmanagedinstances - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Deleteinstances + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Listmanagedinstances; + {}) as Params$Resource$Instancegroupmanagers$Deleteinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Listmanagedinstances; + params = {} as Params$Resource$Instancegroupmanagers$Deleteinstances; options = {}; } @@ -81321,7 +85182,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -81334,20 +85195,18 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Lists all of the per-instance configurations defined for the managed - * instance group. The orderBy query parameter is not supported. + * Deletes selected per-instance configurations for the managed instance + * group. * @example * ```js * // Before running the sample: @@ -81371,7 +85230,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -81380,112 +85238,58 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.listPerInstanceConfigs({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The name of the managed instance group. It should conform to RFC1035. + * const res = await compute.instanceGroupManagers.deletePerInstanceConfigs({ + * // The name of the managed instance group. + * // It should conform to RFC1035. * instanceGroupManager: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', * // The name of thezone - * // where the managed instance group is located. + * // where the managed instance + * // group is located. * // It should conform to RFC1035. * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "names": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "items": [], - * // "nextPageToken": "my_nextPageToken", - * // "warning": {} + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -81501,62 +85305,56 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + deletePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, options: StreamMethodOptions ): Promise>; - listPerInstanceConfigs( - params?: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + deletePerInstanceConfigs( + params?: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + ): Promise>; + deletePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + deletePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, - callback: BodyResponseCallback + deletePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + callback: BodyResponseCallback ): void; - listPerInstanceConfigs( - callback: BodyResponseCallback + deletePerInstanceConfigs( + callback: BodyResponseCallback ): void; - listPerInstanceConfigs( + deletePerInstanceConfigs( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Listperinstanceconfigs - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Listperinstanceconfigs; + {}) as Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Instancegroupmanagers$Listperinstanceconfigs; + {} as Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs; options = {}; } @@ -81571,7 +85369,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -81584,33 +85382,17 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates a managed instance group using the information that you specify - * in the request. - * This operation is marked as DONE when the group is patched - * even if the instances in the group are still in the process of being - * patched. You must separately verify the status of the individual instances - * with thelistManagedInstances - * method. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. - * - * If you update your group to specify a new template or instance - * configuration, it's possible that your intended specification for each VM - * in the group is different from the current state of that VM. To learn how - * to apply an updated configuration to the VMs in a MIG, seeUpdating instances in - * a MIG. + * Returns all of the details about the specified managed instance group. * @example * ```js * // Before running the sample: @@ -81634,6 +85416,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -81642,98 +85425,52 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.patch({ - * // The name of the instance group manager. + * const res = await compute.instanceGroupManagers.get({ + * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', - * // The name of the zone where - * // you want to create the managed instance group. + * // The name of thezone where the managed + * // instance group is located. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allInstancesConfig": {}, - * // "autoHealingPolicies": [], - * // "baseInstanceName": "my_baseInstanceName", - * // "creationTimestamp": "my_creationTimestamp", - * // "currentActions": {}, - * // "description": "my_description", - * // "distributionPolicy": {}, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "instanceFlexibilityPolicy": {}, - * // "instanceGroup": "my_instanceGroup", - * // "instanceLifecyclePolicy": {}, - * // "instanceTemplate": "my_instanceTemplate", - * // "kind": "my_kind", - * // "listManagedInstancesResults": "my_listManagedInstancesResults", - * // "name": "my_name", - * // "namedPorts": [], - * // "region": "my_region", - * // "resourcePolicies": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "standbyPolicy": {}, - * // "statefulPolicy": {}, - * // "status": {}, - * // "targetPools": [], - * // "targetSize": 0, - * // "targetStoppedSize": 0, - * // "targetSuspendedSize": 0, - * // "updatePolicy": {}, - * // "versions": [], - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "allInstancesConfig": {}, + * // "autoHealingPolicies": [], + * // "baseInstanceName": "my_baseInstanceName", * // "creationTimestamp": "my_creationTimestamp", + * // "currentActions": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "distributionPolicy": {}, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "instanceFlexibilityPolicy": {}, + * // "instanceGroup": "my_instanceGroup", + * // "instanceLifecyclePolicy": {}, + * // "instanceTemplate": "my_instanceTemplate", * // "kind": "my_kind", + * // "listManagedInstancesResults": "my_listManagedInstancesResults", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "namedPorts": [], * // "region": "my_region", + * // "resourcePolicies": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], + * // "standbyPolicy": {}, + * // "statefulPolicy": {}, + * // "status": {}, + * // "targetPools": [], + * // "targetSize": 0, + * // "targetSizePolicy": {}, + * // "targetStoppedSize": 0, + * // "targetSuspendedSize": 0, + * // "updatePolicy": {}, + * // "versions": [], * // "zone": "my_zone" * // } * } @@ -81750,53 +85487,55 @@ export namespace compute_v1 { * @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$Instancegroupmanagers$Patch, + get( + params: Params$Resource$Instancegroupmanagers$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Instancegroupmanagers$Patch, + get( + params?: Params$Resource$Instancegroupmanagers$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Instancegroupmanagers$Patch, + ): Promise>; + get( + params: Params$Resource$Instancegroupmanagers$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Instancegroupmanagers$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancegroupmanagers$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Instancegroupmanagers$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancegroupmanagers$Get, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Patch - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Patch; + {}) as Params$Resource$Instancegroupmanagers$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Patch; + params = {} as Params$Resource$Instancegroupmanagers$Get; options = {}; } @@ -81813,7 +85552,7 @@ export namespace compute_v1 { rootUrl + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -81824,19 +85563,27 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Inserts or patches per-instance configurations for the managed instance - * group. perInstanceConfig.name serves as a key used to - * distinguish whether to perform insert or patch. + * Creates a managed instance group using the information that you specify + * in the request. After the group is created, instances in the group are + * created using the specified instance template. + * This operation is marked as DONE when the group is created + * even if the instances in the group have not yet been created. You + * must separately verify the status of the individual instances with thelistmanagedinstances + * method. + * + * A managed instance group can have up to 1000 VM instances per group. Please + * contact Cloud Support if you need an increase in + * this limit. * @example * ```js * // Before running the sample: @@ -81868,10 +85615,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.patchPerInstanceConfigs({ - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.instanceGroupManagers.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -81889,16 +85633,47 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone - * // where the managed instance group is located. - * // It should conform to RFC1035. + * // The name of the zone + * // where you want to create the managed instance group. * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "perInstanceConfigs": [] + * // "allInstancesConfig": {}, + * // "autoHealingPolicies": [], + * // "baseInstanceName": "my_baseInstanceName", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentActions": {}, + * // "description": "my_description", + * // "distributionPolicy": {}, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "instanceFlexibilityPolicy": {}, + * // "instanceGroup": "my_instanceGroup", + * // "instanceLifecyclePolicy": {}, + * // "instanceTemplate": "my_instanceTemplate", + * // "kind": "my_kind", + * // "listManagedInstancesResults": "my_listManagedInstancesResults", + * // "name": "my_name", + * // "namedPorts": [], + * // "region": "my_region", + * // "resourcePolicies": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "standbyPolicy": {}, + * // "statefulPolicy": {}, + * // "status": {}, + * // "targetPools": [], + * // "targetSize": 0, + * // "targetSizePolicy": {}, + * // "targetStoppedSize": 0, + * // "targetSuspendedSize": 0, + * // "updatePolicy": {}, + * // "versions": [], + * // "zone": "my_zone" * // } * }, * }); @@ -81911,6 +85686,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -81947,34 +85723,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + insert( + params: Params$Resource$Instancegroupmanagers$Insert, options: StreamMethodOptions ): Promise>; - patchPerInstanceConfigs( - params?: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + insert( + params?: Params$Resource$Instancegroupmanagers$Insert, options?: MethodOptions ): Promise>; - patchPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + insert( + params: Params$Resource$Instancegroupmanagers$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + insert( + params: Params$Resource$Instancegroupmanagers$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, - callback: BodyResponseCallback - ): void; - patchPerInstanceConfigs( + insert( + params: Params$Resource$Instancegroupmanagers$Insert, callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs + | Params$Resource$Instancegroupmanagers$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -81990,13 +85764,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs; + {}) as Params$Resource$Instancegroupmanagers$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs; + params = {} as Params$Resource$Instancegroupmanagers$Insert; options = {}; } @@ -82011,7 +85784,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -82019,8 +85792,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -82034,19 +85807,8 @@ export namespace compute_v1 { } /** - * Flags the specified VM instances in the managed instance group to be - * immediately recreated. Each instance is recreated using the group's current - * configuration. This operation is marked as DONE when the flag - * is set even if the instances have not yet been recreated. You must - * separately verify the status of each instance by checking itscurrentAction field; for more information, see Checking - * the status of managed instances. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. - * - * You can specify a maximum of 1000 instances with this method per request. + * Retrieves a list of managed instance groups that are contained within the + * specified project and zone. * @example * ```js * // Before running the sample: @@ -82070,6 +85832,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -82078,68 +85841,112 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.recreateInstances({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.instanceGroupManagers.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * // The name of thezone where the managed * // instance group is located. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -82155,53 +85962,55 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - recreateInstances( - params: Params$Resource$Instancegroupmanagers$Recreateinstances, + list( + params: Params$Resource$Instancegroupmanagers$List, options: StreamMethodOptions ): Promise>; - recreateInstances( - params?: Params$Resource$Instancegroupmanagers$Recreateinstances, + list( + params?: Params$Resource$Instancegroupmanagers$List, options?: MethodOptions - ): Promise>; - recreateInstances( - params: Params$Resource$Instancegroupmanagers$Recreateinstances, + ): Promise>; + list( + params: Params$Resource$Instancegroupmanagers$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - recreateInstances( - params: Params$Resource$Instancegroupmanagers$Recreateinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Instancegroupmanagers$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - recreateInstances( - params: Params$Resource$Instancegroupmanagers$Recreateinstances, - callback: BodyResponseCallback + list( + params: Params$Resource$Instancegroupmanagers$List, + callback: BodyResponseCallback ): void; - recreateInstances(callback: BodyResponseCallback): void; - recreateInstances( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Recreateinstances - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Recreateinstances; + {}) as Params$Resource$Instancegroupmanagers$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Recreateinstances; + params = {} as Params$Resource$Instancegroupmanagers$List; options = {}; } @@ -82216,52 +86025,32 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Resizes the managed instance group. If you increase the size, the group - * creates new instances using the current instance template. If you decrease - * the size, the group deletes instances. The resize operation is markedDONE when the resize actions are scheduled even if the group - * has not yet added or deleted any instances. You must separately - * verify the status of the creating or deleting - * actions with thelistmanagedinstances - * method. - * - * When resizing down, the instance group arbitrarily chooses the order in - * which VMs are deleted. The group takes into account some VM attributes when - * making the selection including: - * - * + The status of the VM instance. - * + The health of the VM instance. - * + The instance template version the VM is based on. - * + For regional managed instance groups, the location of the VM instance. - * - * This list is subject to change. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. + * Lists all errors thrown by actions on instances for a given managed + * instance group. The filter and orderBy query + * parameters are not supported. * @example * ```js * // Before running the sample: @@ -82285,6 +86074,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -82293,69 +86083,119 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.resize({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. + * const res = await compute.instanceGroupManagers.listErrors({ + * // 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. * // - * // 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. + * // 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 `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The number of running instances that the managed instance group should - * // maintain at any given time. The group automatically adds or removes - * // instances to maintain the number of instances specified by this parameter. - * size: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The name of the managed instance group. + * // It must be a string that meets the requirements in RFC1035, or an + * // unsigned long integer: must match regexp pattern: + * // (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. + * instanceGroupManager: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * // It should conform to RFC1035. + * zone: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "items": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); * throw e; * }); * @@ -82366,53 +86206,61 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resize( - params: Params$Resource$Instancegroupmanagers$Resize, + listErrors( + params: Params$Resource$Instancegroupmanagers$Listerrors, options: StreamMethodOptions ): Promise>; - resize( - params?: Params$Resource$Instancegroupmanagers$Resize, + listErrors( + params?: Params$Resource$Instancegroupmanagers$Listerrors, options?: MethodOptions - ): Promise>; - resize( - params: Params$Resource$Instancegroupmanagers$Resize, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listErrors( + params: Params$Resource$Instancegroupmanagers$Listerrors, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resize( - params: Params$Resource$Instancegroupmanagers$Resize, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listErrors( + params: Params$Resource$Instancegroupmanagers$Listerrors, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - resize( - params: Params$Resource$Instancegroupmanagers$Resize, - callback: BodyResponseCallback + listErrors( + params: Params$Resource$Instancegroupmanagers$Listerrors, + callback: BodyResponseCallback ): void; - resize(callback: BodyResponseCallback): void; - resize( + listErrors( + callback: BodyResponseCallback + ): void; + listErrors( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Resize - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Listerrors + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Resize; + {}) as Params$Resource$Instancegroupmanagers$Listerrors; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Resize; + params = {} as Params$Resource$Instancegroupmanagers$Listerrors; options = {}; } @@ -82427,45 +86275,40 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listErrors' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager', 'size'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Flags the specified instances in the managed instance group to be - * resumed. This method increases thetargetSize and decreases the targetSuspendedSize - * of the managed instance group by the number of instances that you resume. - * The resumeInstances operation is marked DONE if - * the resumeInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theRESUMING action with thelistmanagedinstances - * method. - * - * In this request, you can only specify instances that are suspended. For - * example, if an instance was previously suspended using the suspendInstances - * method, it can be resumed using the resumeInstances method. - * - * If a health check is attached to the managed instance group, the specified - * instances will be verified as healthy after they are resumed. - * - * You can specify a maximum of 1000 instances with this method per request. + * Lists all of the instances in the managed instance group. Each instance + * in the list has a currentAction, which indicates the action + * that the managed instance group is performing on the instance. For example, + * if the group is still creating an instance, the currentAction + * is CREATING. If a previous action failed, the + * list displays the errors for that failed action. The orderBy + * query parameter is not supported. The `pageToken` query parameter is + * supported only if the group's `listManagedInstancesResults` field is set + * to `PAGINATED`. * @example * ```js * // Before running the sample: @@ -82489,6 +86332,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -82497,68 +86341,110 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.resumeInstances({ + * const res = await compute.instanceGroupManagers.listManagedInstances({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * // The name of thezone where the managed * // instance group is located. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "managedInstances": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -82574,53 +86460,62 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resumeInstances( - params: Params$Resource$Instancegroupmanagers$Resumeinstances, + listManagedInstances( + params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, options: StreamMethodOptions ): Promise>; - resumeInstances( - params?: Params$Resource$Instancegroupmanagers$Resumeinstances, + listManagedInstances( + params?: Params$Resource$Instancegroupmanagers$Listmanagedinstances, options?: MethodOptions - ): Promise>; - resumeInstances( - params: Params$Resource$Instancegroupmanagers$Resumeinstances, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listManagedInstances( + params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resumeInstances( - params: Params$Resource$Instancegroupmanagers$Resumeinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listManagedInstances( + params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - resumeInstances( - params: Params$Resource$Instancegroupmanagers$Resumeinstances, - callback: BodyResponseCallback + listManagedInstances( + params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + callback: BodyResponseCallback ): void; - resumeInstances(callback: BodyResponseCallback): void; - resumeInstances( + listManagedInstances( + callback: BodyResponseCallback + ): void; + listManagedInstances( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Resumeinstances - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Listmanagedinstances + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Resumeinstances; + {}) as Params$Resource$Instancegroupmanagers$Listmanagedinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Resumeinstances; + params = + {} as Params$Resource$Instancegroupmanagers$Listmanagedinstances; options = {}; } @@ -82635,7 +86530,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resumeInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -82648,19 +86543,20 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Specifies the instance template to use when creating new instances in this - * group. The templates for existing instances in the group do not change - * unless you run recreateInstances, runapplyUpdatesToInstances, or set the group'supdatePolicy.type to PROACTIVE. + * Lists all of the per-instance configurations defined for the managed + * instance group. The orderBy query parameter is not supported. * @example * ```js * // Before running the sample: @@ -82684,6 +86580,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -82692,68 +86589,112 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.setInstanceTemplate({ - * // The name of the managed instance group. + * const res = await compute.instanceGroupManagers.listPerInstanceConfigs({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The name of the managed instance group. It should conform to RFC1035. * instanceGroupManager: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instanceTemplate": "my_instanceTemplate" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "items": [], + * // "nextPageToken": "my_nextPageToken", + * // "warning": {} * // } * } * @@ -82769,54 +86710,62 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setInstanceTemplate( - params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + listPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, options: StreamMethodOptions ): Promise>; - setInstanceTemplate( - params?: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + listPerInstanceConfigs( + params?: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, options?: MethodOptions - ): Promise>; - setInstanceTemplate( - params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setInstanceTemplate( - params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setInstanceTemplate( - params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, - callback: BodyResponseCallback + listPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + callback: BodyResponseCallback ): void; - setInstanceTemplate(callback: BodyResponseCallback): void; - setInstanceTemplate( + listPerInstanceConfigs( + callback: BodyResponseCallback + ): void; + listPerInstanceConfigs( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Setinstancetemplate - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Listperinstanceconfigs + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Setinstancetemplate; + {}) as Params$Resource$Instancegroupmanagers$Listperinstanceconfigs; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Instancegroupmanagers$Setinstancetemplate; + {} as Params$Resource$Instancegroupmanagers$Listperinstanceconfigs; options = {}; } @@ -82831,7 +86780,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -82844,22 +86793,33 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Modifies the target pools to which all instances in this managed instance - * group are assigned. The target pools automatically apply to all of the - * instances in the managed instance group. This operation is markedDONE when you make the request even if the instances have not - * yet been added to their target pools. The change might take some time to - * apply to all of the instances in the group depending on the size of the - * group. + * Updates a managed instance group using the information that you specify + * in the request. + * This operation is marked as DONE when the group is patched + * even if the instances in the group are still in the process of being + * patched. You must separately verify the status of the individual instances + * with thelistManagedInstances + * method. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. + * + * If you update your group to specify a new template or instance + * configuration, it's possible that your intended specification for each VM + * in the group is different from the current state of that VM. To learn how + * to apply an updated configuration to the VMs in a MIG, seeUpdating instances in + * a MIG. * @example * ```js * // Before running the sample: @@ -82891,8 +86851,8 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.setTargetPools({ - * // The name of the managed instance group. + * const res = await compute.instanceGroupManagers.patch({ + * // The name of the instance group manager. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: @@ -82911,16 +86871,47 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. + * // The name of the zone where + * // you want to create the managed instance group. * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "allInstancesConfig": {}, + * // "autoHealingPolicies": [], + * // "baseInstanceName": "my_baseInstanceName", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentActions": {}, + * // "description": "my_description", + * // "distributionPolicy": {}, * // "fingerprint": "my_fingerprint", - * // "targetPools": [] + * // "id": "my_id", + * // "instanceFlexibilityPolicy": {}, + * // "instanceGroup": "my_instanceGroup", + * // "instanceLifecyclePolicy": {}, + * // "instanceTemplate": "my_instanceTemplate", + * // "kind": "my_kind", + * // "listManagedInstancesResults": "my_listManagedInstancesResults", + * // "name": "my_name", + * // "namedPorts": [], + * // "region": "my_region", + * // "resourcePolicies": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "standbyPolicy": {}, + * // "statefulPolicy": {}, + * // "status": {}, + * // "targetPools": [], + * // "targetSize": 0, + * // "targetSizePolicy": {}, + * // "targetStoppedSize": 0, + * // "targetSuspendedSize": 0, + * // "updatePolicy": {}, + * // "versions": [], + * // "zone": "my_zone" * // } * }, * }); @@ -82933,6 +86924,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -82969,32 +86961,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setTargetPools( - params: Params$Resource$Instancegroupmanagers$Settargetpools, + patch( + params: Params$Resource$Instancegroupmanagers$Patch, options: StreamMethodOptions ): Promise>; - setTargetPools( - params?: Params$Resource$Instancegroupmanagers$Settargetpools, + patch( + params?: Params$Resource$Instancegroupmanagers$Patch, options?: MethodOptions ): Promise>; - setTargetPools( - params: Params$Resource$Instancegroupmanagers$Settargetpools, + patch( + params: Params$Resource$Instancegroupmanagers$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTargetPools( - params: Params$Resource$Instancegroupmanagers$Settargetpools, + patch( + params: Params$Resource$Instancegroupmanagers$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTargetPools( - params: Params$Resource$Instancegroupmanagers$Settargetpools, + patch( + params: Params$Resource$Instancegroupmanagers$Patch, callback: BodyResponseCallback ): void; - setTargetPools(callback: BodyResponseCallback): void; - setTargetPools( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Settargetpools + | Params$Resource$Instancegroupmanagers$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -83010,12 +87002,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Settargetpools; + {}) as Params$Resource$Instancegroupmanagers$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Settargetpools; + params = {} as Params$Resource$Instancegroupmanagers$Patch; options = {}; } @@ -83030,9 +87022,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options @@ -83053,22 +87045,9 @@ export namespace compute_v1 { } /** - * Flags the specified instances in the managed instance group to be - * started. This method increases thetargetSize and decreases the targetStoppedSize - * of the managed instance group by the number of instances that you start. - * The startInstances operation is marked DONE if - * the startInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theSTARTING action with thelistmanagedinstances - * method. - * - * In this request, you can only specify instances that are stopped. For - * example, if an instance was previously stopped using the stopInstances - * method, it can be started using the startInstances method. - * - * If a health check is attached to the managed instance group, the specified - * instances will be verified as healthy after they are started. - * - * You can specify a maximum of 1000 instances with this method per request. + * Inserts or patches per-instance configurations for the managed instance + * group. perInstanceConfig.name serves as a key used to + * distinguish whether to perform insert or patch. * @example * ```js * // Before running the sample: @@ -83100,8 +87079,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.startInstances({ + * const res = await compute.instanceGroupManagers.patchPerInstanceConfigs({ * // The name of the managed instance group. + * // It should conform to RFC1035. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: @@ -83120,15 +87100,16 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "instances": [] + * // "perInstanceConfigs": [] * // } * }, * }); @@ -83141,6 +87122,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -83177,32 +87159,34 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - startInstances( - params: Params$Resource$Instancegroupmanagers$Startinstances, + patchPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, options: StreamMethodOptions ): Promise>; - startInstances( - params?: Params$Resource$Instancegroupmanagers$Startinstances, + patchPerInstanceConfigs( + params?: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, options?: MethodOptions ): Promise>; - startInstances( - params: Params$Resource$Instancegroupmanagers$Startinstances, + patchPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - startInstances( - params: Params$Resource$Instancegroupmanagers$Startinstances, + patchPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - startInstances( - params: Params$Resource$Instancegroupmanagers$Startinstances, + patchPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, callback: BodyResponseCallback ): void; - startInstances(callback: BodyResponseCallback): void; - startInstances( + patchPerInstanceConfigs( + callback: BodyResponseCallback + ): void; + patchPerInstanceConfigs( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Startinstances + | Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -83218,12 +87202,13 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Startinstances; + {}) as Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Startinstances; + params = + {} as Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs; options = {}; } @@ -83238,7 +87223,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/startInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -83261,29 +87246,17 @@ export namespace compute_v1 { } /** - * Flags the specified instances in the managed instance group to be - * immediately stopped. You can only specify instances that are running in - * this request. This method reduces thetargetSize and increases the targetStoppedSize - * of the managed instance group by the number of instances that you stop. - * The stopInstances operation is marked DONE if - * the stopInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theSTOPPING action with thelistmanagedinstances - * method. - * - * If the standbyPolicy.initialDelaySec field is set, the group - * delays stopping the instances until initialDelaySec have - * passed from instance.creationTimestamp (that is, when the - * instance was created). This delay gives your application time to - * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there - * will be zero delay. + * Flags the specified VM instances in the managed instance group to be + * immediately recreated. Each instance is recreated using the group's current + * configuration. This operation is marked as DONE when the flag + * is set even if the instances have not yet been recreated. You must + * separately verify the status of each instance by checking itscurrentAction field; for more information, see Checking + * the status of managed instances. * * If the group is part of a backend * service that has enabled * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is stopped. - * - * Stopped instances can be started using the startInstances - * method. + * draining duration has elapsed before the VM instance is removed or deleted. * * You can specify a maximum of 1000 instances with this method per request. * @example @@ -83317,7 +87290,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.stopInstances({ + * const res = await compute.instanceGroupManagers.recreateInstances({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. @@ -83345,7 +87318,6 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "forceStop": false, * // "instances": [] * // } * }, @@ -83359,6 +87331,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -83395,32 +87368,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - stopInstances( - params: Params$Resource$Instancegroupmanagers$Stopinstances, + recreateInstances( + params: Params$Resource$Instancegroupmanagers$Recreateinstances, options: StreamMethodOptions ): Promise>; - stopInstances( - params?: Params$Resource$Instancegroupmanagers$Stopinstances, + recreateInstances( + params?: Params$Resource$Instancegroupmanagers$Recreateinstances, options?: MethodOptions ): Promise>; - stopInstances( - params: Params$Resource$Instancegroupmanagers$Stopinstances, + recreateInstances( + params: Params$Resource$Instancegroupmanagers$Recreateinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stopInstances( - params: Params$Resource$Instancegroupmanagers$Stopinstances, + recreateInstances( + params: Params$Resource$Instancegroupmanagers$Recreateinstances, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stopInstances( - params: Params$Resource$Instancegroupmanagers$Stopinstances, + recreateInstances( + params: Params$Resource$Instancegroupmanagers$Recreateinstances, callback: BodyResponseCallback ): void; - stopInstances(callback: BodyResponseCallback): void; - stopInstances( + recreateInstances(callback: BodyResponseCallback): void; + recreateInstances( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Stopinstances + | Params$Resource$Instancegroupmanagers$Recreateinstances | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -83436,12 +87409,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Stopinstances; + {}) as Params$Resource$Instancegroupmanagers$Recreateinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Stopinstances; + params = {} as Params$Resource$Instancegroupmanagers$Recreateinstances; options = {}; } @@ -83456,7 +87429,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/stopInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -83479,31 +87452,29 @@ export namespace compute_v1 { } /** - * Flags the specified instances in the managed instance group to be - * immediately suspended. You can only specify instances that are running in - * this request. This method reduces thetargetSize and increases the targetSuspendedSize - * of the managed instance group by the number of instances that you suspend. - * The suspendInstances operation is marked DONE if - * the suspendInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theSUSPENDING action with thelistmanagedinstances + * Resizes the managed instance group. If you increase the size, the group + * creates new instances using the current instance template. If you decrease + * the size, the group deletes instances. The resize operation is markedDONE when the resize actions are scheduled even if the group + * has not yet added or deleted any instances. You must separately + * verify the status of the creating or deleting + * actions with thelistmanagedinstances * method. * - * If the standbyPolicy.initialDelaySec field is set, the group - * delays suspension of the instances until initialDelaySec have - * passed from instance.creationTimestamp (that is, when the - * instance was created). This delay gives your application time to - * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there - * will be zero delay. + * When resizing down, the instance group arbitrarily chooses the order in + * which VMs are deleted. The group takes into account some VM attributes when + * making the selection including: + * + * + The status of the VM instance. + * + The health of the VM instance. + * + The instance template version the VM is based on. + * + For regional managed instance groups, the location of the VM instance. + * + * This list is subject to change. * * If the group is part of a backend * service that has enabled * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is suspended. - * - * Suspended instances can be resumed using the resumeInstances - * method. - * - * You can specify a maximum of 1000 instances with this method per request. + * draining duration has elapsed before the VM instance is removed or deleted. * @example * ```js * // Before running the sample: @@ -83535,7 +87506,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.suspendInstances({ + * const res = await compute.instanceGroupManagers.resize({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. @@ -83555,18 +87526,13 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The number of running instances that the managed instance group should + * // maintain at any given time. The group automatically adds or removes + * // instances to maintain the number of instances specified by this parameter. + * size: 'placeholder-value', * // The name of thezone where the managed * // instance group is located. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "forceSuspend": false, - * // "instances": [] - * // } - * }, * }); * console.log(res.data); * @@ -83577,6 +87543,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -83613,32 +87580,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - suspendInstances( - params: Params$Resource$Instancegroupmanagers$Suspendinstances, + resize( + params: Params$Resource$Instancegroupmanagers$Resize, options: StreamMethodOptions ): Promise>; - suspendInstances( - params?: Params$Resource$Instancegroupmanagers$Suspendinstances, + resize( + params?: Params$Resource$Instancegroupmanagers$Resize, options?: MethodOptions ): Promise>; - suspendInstances( - params: Params$Resource$Instancegroupmanagers$Suspendinstances, + resize( + params: Params$Resource$Instancegroupmanagers$Resize, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - suspendInstances( - params: Params$Resource$Instancegroupmanagers$Suspendinstances, + resize( + params: Params$Resource$Instancegroupmanagers$Resize, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - suspendInstances( - params: Params$Resource$Instancegroupmanagers$Suspendinstances, + resize( + params: Params$Resource$Instancegroupmanagers$Resize, callback: BodyResponseCallback ): void; - suspendInstances(callback: BodyResponseCallback): void; - suspendInstances( + resize(callback: BodyResponseCallback): void; + resize( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Suspendinstances + | Params$Resource$Instancegroupmanagers$Resize | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -83654,12 +87621,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Suspendinstances; + {}) as Params$Resource$Instancegroupmanagers$Resize; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Suspendinstances; + params = {} as Params$Resource$Instancegroupmanagers$Resize; options = {}; } @@ -83674,7 +87641,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/suspendInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -83682,7 +87649,7 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], + requiredParams: ['project', 'zone', 'instanceGroupManager', 'size'], pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; @@ -83697,9 +87664,22 @@ export namespace compute_v1 { } /** - * Inserts or updates per-instance configurations for the managed instance - * group. perInstanceConfig.name serves as a key used to - * distinguish whether to perform insert or patch. + * Flags the specified instances in the managed instance group to be + * resumed. This method increases thetargetSize and decreases the targetSuspendedSize + * of the managed instance group by the number of instances that you resume. + * The resumeInstances operation is marked DONE if + * the resumeInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theRESUMING action with thelistmanagedinstances + * method. + * + * In this request, you can only specify instances that are suspended. For + * example, if an instance was previously suspended using the suspendInstances + * method, it can be resumed using the resumeInstances method. + * + * If a health check is attached to the managed instance group, the specified + * instances will be verified as healthy after they are resumed. + * + * You can specify a maximum of 1000 instances with this method per request. * @example * ```js * // Before running the sample: @@ -83731,9 +87711,8 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.updatePerInstanceConfigs({ + * const res = await compute.instanceGroupManagers.resumeInstances({ * // The name of the managed instance group. - * // It should conform to RFC1035. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: @@ -83752,16 +87731,15 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone - * // where the managed instance group is located. - * // It should conform to RFC1035. + * // The name of thezone where the managed + * // instance group is located. * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "perInstanceConfigs": [] + * // "instances": [] * // } * }, * }); @@ -83774,6 +87752,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -83810,34 +87789,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updatePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + resumeInstances( + params: Params$Resource$Instancegroupmanagers$Resumeinstances, options: StreamMethodOptions ): Promise>; - updatePerInstanceConfigs( - params?: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + resumeInstances( + params?: Params$Resource$Instancegroupmanagers$Resumeinstances, options?: MethodOptions ): Promise>; - updatePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + resumeInstances( + params: Params$Resource$Instancegroupmanagers$Resumeinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + resumeInstances( + params: Params$Resource$Instancegroupmanagers$Resumeinstances, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, - callback: BodyResponseCallback - ): void; - updatePerInstanceConfigs( + resumeInstances( + params: Params$Resource$Instancegroupmanagers$Resumeinstances, callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( + resumeInstances(callback: BodyResponseCallback): void; + resumeInstances( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs + | Params$Resource$Instancegroupmanagers$Resumeinstances | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -83853,13 +87830,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs; + {}) as Params$Resource$Instancegroupmanagers$Resumeinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs; + params = {} as Params$Resource$Instancegroupmanagers$Resumeinstances; options = {}; } @@ -83874,7 +87850,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resumeInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -83895,697 +87871,1290 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } - } - export interface Params$Resource$Instancegroupmanagers$Abandoninstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; /** - * 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. + * Specifies the instance template to use when creating new instances in this + * group. The templates for existing instances in the group do not change + * unless you run recreateInstances, runapplyUpdatesToInstances, or set the group'supdatePolicy.type to PROACTIVE. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersAbandonInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Aggregatedlist 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. - * 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:* - * ``` + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); * - * 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 onresource labels. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * 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) - * ``` + * // Do the magic + * const res = await compute.instanceGroupManagers.setInstanceTemplate({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', * - * 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: + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instanceTemplate": "my_instanceTemplate" + * // } + * }, + * }); + * console.log(res.data); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) + * @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. */ - maxResults?: number; + setInstanceTemplate( + params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + options: StreamMethodOptions + ): Promise>; + setInstanceTemplate( + params?: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + options?: MethodOptions + ): Promise>; + setInstanceTemplate( + params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setInstanceTemplate( + params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setInstanceTemplate( + params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + callback: BodyResponseCallback + ): void; + setInstanceTemplate(callback: BodyResponseCallback): void; + setInstanceTemplate( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Setinstancetemplate + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Setinstancetemplate; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Instancegroupmanagers$Setinstancetemplate; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * Modifies the target pools to which all instances in this managed instance + * group are assigned. The target pools automatically apply to all of the + * instances in the managed instance group. This operation is markedDONE when you make the request even if the instances have not + * yet been added to their target pools. The change might take some time to + * apply to all of the instances in the group depending on the size of the + * group. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Instancegroupmanagers$Applyupdatestoinstances extends StandardParameters { - /** - * The name of the managed instance group, should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of thezone - * where the managed instance group is located. Should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersApplyUpdatesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Createinstances extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * 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. + * // Do the magic + * const res = await compute.instanceGroupManagers.setTargetPools({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersCreateInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Delete extends StandardParameters { - /** - * The name of the managed instance group to delete. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "fingerprint": "my_fingerprint", + * // "targetPools": [] + * // } + * }, + * }); + * console.log(res.data); * - * 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. + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagers$Deleteinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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; - /** - * The name of thezone where the managed - * instance group is located. + * @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. */ - zone?: string; + setTargetPools( + params: Params$Resource$Instancegroupmanagers$Settargetpools, + options: StreamMethodOptions + ): Promise>; + setTargetPools( + params?: Params$Resource$Instancegroupmanagers$Settargetpools, + options?: MethodOptions + ): Promise>; + setTargetPools( + params: Params$Resource$Instancegroupmanagers$Settargetpools, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setTargetPools( + params: Params$Resource$Instancegroupmanagers$Settargetpools, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setTargetPools( + params: Params$Resource$Instancegroupmanagers$Settargetpools, + callback: BodyResponseCallback + ): void; + setTargetPools(callback: BodyResponseCallback): void; + setTargetPools( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Settargetpools + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Settargetpools; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersDeleteInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of thezone - * where the managed instance - * group is located. - * It should conform to RFC1035. - */ - zone?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Settargetpools; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersDeletePerInstanceConfigsReq; - } - export interface Params$Resource$Instancegroupmanagers$Get extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagers$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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; - /** - * The name of the zone - * where you want to create the managed instance group. - */ - zone?: string; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManager; - } - export interface Params$Resource$Instancegroupmanagers$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. - * These two types of filter expressions cannot be mixed in one request. + * Flags the specified instances in the managed instance group to be + * started. This method increases thetargetSize and decreases the targetStoppedSize + * of the managed instance group by the number of instances that you start. + * The startInstances operation is marked DONE if + * the startInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theSTARTING action with thelistmanagedinstances + * method. * - * 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 `:`. + * In this request, you can only specify instances that are stopped. For + * example, if an instance was previously stopped using the stopInstances + * method, it can be started using the startInstances method. * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. + * If a health check is attached to the managed instance group, the specified + * instances will be verified as healthy after they are started. * - * 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 specify a maximum of 1000 instances with this method per request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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 onresource labels. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * 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) - * ``` + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); * - * 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: + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // Do the magic + * const res = await compute.instanceGroupManagers.startInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * ``` * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. + * @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. */ - project?: string; + startInstances( + params: Params$Resource$Instancegroupmanagers$Startinstances, + options: StreamMethodOptions + ): Promise>; + startInstances( + params?: Params$Resource$Instancegroupmanagers$Startinstances, + options?: MethodOptions + ): Promise>; + startInstances( + params: Params$Resource$Instancegroupmanagers$Startinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + startInstances( + params: Params$Resource$Instancegroupmanagers$Startinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + startInstances( + params: Params$Resource$Instancegroupmanagers$Startinstances, + callback: BodyResponseCallback + ): void; + startInstances(callback: BodyResponseCallback): void; + startInstances( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Startinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Startinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Startinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/startInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * Flags the specified instances in the managed instance group to be + * immediately stopped. You can only specify instances that are running in + * this request. This method reduces thetargetSize and increases the targetStoppedSize + * of the managed instance group by the number of instances that you stop. + * The stopInstances operation is marked DONE if + * the stopInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theSTOPPING action with thelistmanagedinstances + * method. * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagers$Listerrors 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. - * These two types of filter expressions cannot be mixed in one request. + * If the standbyPolicy.initialDelaySec field is set, the group + * delays stopping the instances until initialDelaySec have + * passed from instance.creationTimestamp (that is, when the + * instance was created). This delay gives your application time to + * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there + * will be zero delay. * - * 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 `:`. + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is stopped. * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. + * Stopped instances can be started using the startInstances + * method. * - * 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 specify a maximum of 1000 instances with this method per request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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 onresource labels. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * 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) - * ``` + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); * - * 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: + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // Do the magic + * const res = await compute.instanceGroupManagers.stopInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "forceStop": false, + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The name of the managed instance group. - * It must be a string that meets the requirements in RFC1035, or an - * unsigned long integer: must match regexp pattern: - * (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. - */ - instanceGroupManager?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * ``` * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. + * @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. */ - project?: string; + stopInstances( + params: Params$Resource$Instancegroupmanagers$Stopinstances, + options: StreamMethodOptions + ): Promise>; + stopInstances( + params?: Params$Resource$Instancegroupmanagers$Stopinstances, + options?: MethodOptions + ): Promise>; + stopInstances( + params: Params$Resource$Instancegroupmanagers$Stopinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stopInstances( + params: Params$Resource$Instancegroupmanagers$Stopinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stopInstances( + params: Params$Resource$Instancegroupmanagers$Stopinstances, + callback: BodyResponseCallback + ): void; + stopInstances(callback: BodyResponseCallback): void; + stopInstances( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Stopinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Stopinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Stopinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/stopInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * Flags the specified instances in the managed instance group to be + * immediately suspended. You can only specify instances that are running in + * this request. This method reduces thetargetSize and increases the targetSuspendedSize + * of the managed instance group by the number of instances that you suspend. + * The suspendInstances operation is marked DONE if + * the suspendInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theSUSPENDING action with thelistmanagedinstances + * method. * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The name of thezone where the managed - * instance group is located. - * It should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagers$Listmanagedinstances 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. - * These two types of filter expressions cannot be mixed in one request. + * If the standbyPolicy.initialDelaySec field is set, the group + * delays suspension of the instances until initialDelaySec have + * passed from instance.creationTimestamp (that is, when the + * instance was created). This delay gives your application time to + * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there + * will be zero delay. * - * 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 `:`. + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is suspended. * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. + * Suspended instances can be resumed using the resumeInstances + * method. * - * 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 specify a maximum of 1000 instances with this method per request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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 onresource labels. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * 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) - * ``` + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); * - * 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: + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // Do the magic + * const res = await compute.instanceGroupManagers.suspendInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "forceSuspend": false, + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - maxResults?: number; + suspendInstances( + params: Params$Resource$Instancegroupmanagers$Suspendinstances, + options: StreamMethodOptions + ): Promise>; + suspendInstances( + params?: Params$Resource$Instancegroupmanagers$Suspendinstances, + options?: MethodOptions + ): Promise>; + suspendInstances( + params: Params$Resource$Instancegroupmanagers$Suspendinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + suspendInstances( + params: Params$Resource$Instancegroupmanagers$Suspendinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + suspendInstances( + params: Params$Resource$Instancegroupmanagers$Suspendinstances, + callback: BodyResponseCallback + ): void; + suspendInstances(callback: BodyResponseCallback): void; + suspendInstances( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Suspendinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Suspendinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Suspendinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/suspendInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * Inserts or updates per-instance configurations for the managed instance + * group. perInstanceConfig.name serves as a key used to + * distinguish whether to perform insert or patch. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instanceGroupManagers.updatePerInstanceConfigs({ + * // The name of the managed instance group. + * // It should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "perInstanceConfigs": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - orderBy?: string; + updatePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + options: StreamMethodOptions + ): Promise>; + updatePerInstanceConfigs( + params?: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + options?: MethodOptions + ): Promise>; + updatePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updatePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updatePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + callback: BodyResponseCallback + ): void; + updatePerInstanceConfigs( + callback: BodyResponseCallback + ): void; + updatePerInstanceConfigs( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Instancegroupmanagers$Abandoninstances extends StandardParameters { /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * The name of the managed instance group. */ - pageToken?: string; + instanceGroupManager?: string; /** * Project ID for this request. */ project?: string; /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * 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. * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. + * 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). */ - returnPartialSuccess?: boolean; + requestId?: string; /** * The name of thezone where the managed * instance group is located. */ zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersAbandonInstancesRequest; } - export interface Params$Resource$Instancegroupmanagers$Listperinstanceconfigs extends StandardParameters { + export interface Params$Resource$Instancegroupmanagers$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -84648,9 +89217,15 @@ export namespace compute_v1 { */ filter?: string; /** - * The name of the managed instance group. It should conform to RFC1035. + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. */ - instanceGroupManager?: string; + includeAllScopes?: boolean; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -84693,15 +89268,14 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. */ - zone?: string; + serviceProjectNumber?: string; } - export interface Params$Resource$Instancegroupmanagers$Patch extends StandardParameters { + export interface Params$Resource$Instancegroupmanagers$Applyupdatestoinstances extends StandardParameters { /** - * The name of the instance group manager. + * The name of the managed instance group, should conform to RFC1035. */ instanceGroupManager?: string; /** @@ -84709,33 +89283,17 @@ export namespace compute_v1 { */ project?: string; /** - * 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. - * - * 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; - /** - * The name of the zone where - * you want to create the managed instance group. + * The name of thezone + * where the managed instance group is located. Should conform to RFC1035. */ zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManager; + requestBody?: Schema$InstanceGroupManagersApplyUpdatesRequest; } - export interface Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs extends StandardParameters { + export interface Params$Resource$Instancegroupmanagers$Createinstances extends StandardParameters { /** * The name of the managed instance group. * It should conform to RFC1035. @@ -84753,8 +89311,7 @@ export namespace compute_v1 { * 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. + * request ID was received, and if so, will ignore the second request. * * The request ID must be * a valid UUID with the exception that zero UUID is not supported @@ -84771,47 +89328,11 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManagersPatchPerInstanceConfigsReq; - } - export interface Params$Resource$Instancegroupmanagers$Recreateinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersRecreateInstancesRequest; + requestBody?: Schema$InstanceGroupManagersCreateInstancesRequest; } - export interface Params$Resource$Instancegroupmanagers$Resize extends StandardParameters { + export interface Params$Resource$Instancegroupmanagers$Delete extends StandardParameters { /** - * The name of the managed instance group. + * The name of the managed instance group to delete. */ instanceGroupManager?: string; /** @@ -84834,19 +89355,13 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The number of running instances that the managed instance group should - * maintain at any given time. The group automatically adds or removes - * instances to maintain the number of instances specified by this parameter. - */ - size?: number; /** * The name of thezone where the managed * instance group is located. */ zone?: string; } - export interface Params$Resource$Instancegroupmanagers$Resumeinstances extends StandardParameters { + export interface Params$Resource$Instancegroupmanagers$Deleteinstances extends StandardParameters { /** * The name of the managed instance group. */ @@ -84880,11 +89395,12 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManagersResumeInstancesRequest; + requestBody?: Schema$InstanceGroupManagersDeleteInstancesRequest; } - export interface Params$Resource$Instancegroupmanagers$Setinstancetemplate extends StandardParameters { + export interface Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs extends StandardParameters { /** * The name of the managed instance group. + * It should conform to RFC1035. */ instanceGroupManager?: string; /** @@ -84892,33 +89408,19 @@ export namespace compute_v1 { */ project?: string; /** - * 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. - * - * 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; - /** - * The name of thezone where the managed - * instance group is located. + * The name of thezone + * where the managed instance + * group is located. + * It should conform to RFC1035. */ zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManagersSetInstanceTemplateRequest; + requestBody?: Schema$InstanceGroupManagersDeletePerInstanceConfigsReq; } - export interface Params$Resource$Instancegroupmanagers$Settargetpools extends StandardParameters { + export interface Params$Resource$Instancegroupmanagers$Get extends StandardParameters { /** * The name of the managed instance group. */ @@ -84927,38 +89429,13 @@ export namespace compute_v1 { * Project ID for this request. */ project?: string; - /** - * 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. - * - * 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; /** * The name of thezone where the managed * instance group is located. */ zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersSetTargetPoolsRequest; } - export interface Params$Resource$Instancegroupmanagers$Startinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; + export interface Params$Resource$Instancegroupmanagers$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -84980,91 +89457,835 @@ export namespace compute_v1 { */ requestId?: string; /** - * The name of thezone where the managed - * instance group is located. + * The name of the zone + * where you want to create the managed instance group. */ zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManagersStartInstancesRequest; + requestBody?: Schema$InstanceGroupManager; } - export interface Params$Resource$Instancegroupmanagers$Stopinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Instancegroupmanagers$List extends StandardParameters { /** - * 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. + * 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. * - * 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. + * 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 `:`. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * 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 onresource 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 GoogleRE2 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. */ - requestId?: string; + filter?: string; /** - * The name of thezone where the managed - * instance group is located. + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) */ - zone?: string; - + maxResults?: number; /** - * Request body metadata + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - requestBody?: Schema$InstanceGroupManagersStopInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Suspendinstances extends StandardParameters { + orderBy?: string; /** - * The name of the managed instance group. + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. */ - instanceGroupManager?: string; + pageToken?: string; /** * Project ID for this request. */ project?: string; /** - * 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. - * - * 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. + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - requestId?: string; + returnPartialSuccess?: boolean; /** * The name of thezone where the managed * instance group is located. */ zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersSuspendInstancesRequest; } - export interface Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs extends StandardParameters { + export interface Params$Resource$Instancegroupmanagers$Listerrors extends StandardParameters { /** - * The name of the managed instance group. + * 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 onresource 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 GoogleRE2 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; + /** + * The name of the managed instance group. + * It must be a string that meets the requirements in RFC1035, or an + * unsigned long integer: must match regexp pattern: + * (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of thezone where the managed + * instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Listmanagedinstances 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. + * 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 onresource 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 GoogleRE2 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; + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Listperinstanceconfigs 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. + * 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 onresource 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 GoogleRE2 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; + /** + * The name of the managed instance group. It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Patch extends StandardParameters { + /** + * The name of the instance group manager. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of the zone where + * you want to create the managed instance group. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManager; + } + export interface Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersPatchPerInstanceConfigsReq; + } + export interface Params$Resource$Instancegroupmanagers$Recreateinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersRecreateInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Resize extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The number of running instances that the managed instance group should + * maintain at any given time. The group automatically adds or removes + * instances to maintain the number of instances specified by this parameter. + */ + size?: number; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Resumeinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersResumeInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Setinstancetemplate extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersSetInstanceTemplateRequest; + } + export interface Params$Resource$Instancegroupmanagers$Settargetpools extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersSetTargetPoolsRequest; + } + export interface Params$Resource$Instancegroupmanagers$Startinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersStartInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Stopinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersStopInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Suspendinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersSuspendInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs extends StandardParameters { + /** + * The name of the managed instance group. * It should conform to RFC1035. */ instanceGroupManager?: string; @@ -85184,6 +90405,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -85626,6 +90848,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -85994,6 +91217,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -86693,6 +91917,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -86887,6 +92112,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -87809,6 +93035,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -88006,6 +93233,7 @@ export namespace compute_v1 { * // "nicType": "my_nicType", * // "parentNicName": "my_parentNicName", * // "queueCount": 0, + * // "serviceClassId": "my_serviceClassId", * // "stackType": "my_stackType", * // "subnetwork": "my_subnetwork", * // "vlan": 0 @@ -88021,6 +93249,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -88215,6 +93444,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -88688,6 +93918,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -88887,6 +94118,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -89072,6 +94304,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -89259,6 +94492,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -89456,6 +94690,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -89645,6 +94880,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -91034,6 +96270,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -91700,6 +96937,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -91892,6 +97130,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -92087,6 +97326,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -92273,6 +97513,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -92457,6 +97698,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -92780,6 +98022,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -92971,6 +98214,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -93330,6 +98574,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -93523,6 +98768,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -93716,6 +98962,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -93911,6 +99158,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -94106,6 +99354,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -94299,6 +99548,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -94509,6 +99759,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -94705,6 +99956,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -94900,6 +100152,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -95095,6 +100348,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -95292,6 +100546,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -95480,6 +100735,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -95668,6 +100924,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -95861,6 +101118,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -96056,6 +101314,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -96250,6 +101509,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -96564,6 +101824,9 @@ export namespace compute_v1 { * * // Do the magic * const res = await compute.instances.update({ + * // Whether to discard local SSDs from the instance during restart + * // default value is false. + * discardLocalSsd: 'placeholder-value', * // Name of the instance resource to update. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Specifies the action to take when updating an instance even if the @@ -96660,6 +101923,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -96865,6 +102129,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -97060,6 +102325,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -97263,6 +102529,7 @@ export namespace compute_v1 { * // "nicType": "my_nicType", * // "parentNicName": "my_parentNicName", * // "queueCount": 0, + * // "serviceClassId": "my_serviceClassId", * // "stackType": "my_stackType", * // "subnetwork": "my_subnetwork", * // "vlan": 0 @@ -97278,6 +102545,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -97477,6 +102745,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -99296,6 +104565,11 @@ export namespace compute_v1 { requestBody?: Schema$TestPermissionsRequest; } export interface Params$Resource$Instances$Update extends StandardParameters { + /** + * Whether to discard local SSDs from the instance during restart + * default value is false. + */ + discardLocalSsd?: boolean; /** * Name of the instance resource to update. */ @@ -99723,6 +104997,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -100216,6 +105491,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -100720,6 +105996,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -101722,17 +106999,14 @@ export namespace compute_v1 { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Instantsnapshots { + export class Resource$Instantsnapshotgroups { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of instantSnapshots. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * deletes a Zonal InstantSnapshotGroup resource * @example * ```js * // Before running the sample: @@ -101756,7 +107030,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -101765,268 +107038,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.aggregatedList({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - aggregatedList( - params: Params$Resource$Instantsnapshots$Aggregatedlist, - options: StreamMethodOptions - ): Promise>; - aggregatedList( - params?: Params$Resource$Instantsnapshots$Aggregatedlist, - options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Instantsnapshots$Aggregatedlist, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Instantsnapshots$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Instantsnapshots$Aggregatedlist, - callback: BodyResponseCallback - ): void; - aggregatedList( - callback: BodyResponseCallback - ): void; - aggregatedList( - paramsOrCallback?: - | Params$Resource$Instantsnapshots$Aggregatedlist - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Aggregatedlist; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Aggregatedlist; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/aggregated/instantSnapshots' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Deletes the specified InstantSnapshot resource. Keep in mind that deleting - * a single instantSnapshot might not necessarily delete all the data on that - * instantSnapshot. If any data on the instantSnapshot that is marked for - * deletion is needed for subsequent instantSnapshots, the data will be moved - * to the next corresponding instantSnapshot. - * - * For more information, seeDeleting - * instantSnapshots. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.instantSnapshots.delete({ + * const res = await compute.instantSnapshotGroups.delete({ * // Name of the InstantSnapshot resource to delete. - * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * instantSnapshotGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -102056,6 +107070,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -102093,31 +107108,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Instantsnapshots$Delete, + params: Params$Resource$Instantsnapshotgroups$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Instantsnapshots$Delete, + params?: Params$Resource$Instantsnapshotgroups$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Instantsnapshots$Delete, + params: Params$Resource$Instantsnapshotgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instantsnapshots$Delete, + params: Params$Resource$Instantsnapshotgroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instantsnapshots$Delete, + params: Params$Resource$Instantsnapshotgroups$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Delete + | Params$Resource$Instantsnapshotgroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -102133,12 +107148,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Delete; + {}) as Params$Resource$Instantsnapshotgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Delete; + params = {} as Params$Resource$Instantsnapshotgroups$Delete; options = {}; } @@ -102153,7 +107168,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -102161,8 +107176,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'instantSnapshot'], - pathParams: ['instantSnapshot', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instantSnapshotGroup'], + pathParams: ['instantSnapshotGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -102176,7 +107191,7 @@ export namespace compute_v1 { } /** - * Returns the specified InstantSnapshot resource in the specified zone. + * returns the specified InstantSnapshotGroup resource in the specified zone. * @example * ```js * // Before running the sample: @@ -102209,9 +107224,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.get({ - * // Name of the InstantSnapshot resource to return. - * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instantSnapshotGroups.get({ + * // Name of the InstantSnapshotGroup resource to return. + * instantSnapshotGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -102222,24 +107237,16 @@ export namespace compute_v1 { * * // Example response * // { - * // "architecture": "my_architecture", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", * // "id": "my_id", * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, * // "name": "my_name", - * // "params": {}, * // "region": "my_region", * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskId": "my_sourceDiskId", + * // "sourceConsistencyGroup": "my_sourceConsistencyGroup", * // "status": "my_status", * // "zone": "my_zone" * // } @@ -102258,52 +107265,54 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Instantsnapshots$Get, + params: Params$Resource$Instantsnapshotgroups$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Instantsnapshots$Get, + params?: Params$Resource$Instantsnapshotgroups$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Instantsnapshots$Get, + params: Params$Resource$Instantsnapshotgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instantsnapshots$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshotgroups$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instantsnapshots$Get, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshotgroups$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Get - | BodyResponseCallback + | Params$Resource$Instantsnapshotgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Get; + {}) as Params$Resource$Instantsnapshotgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Get; + params = {} as Params$Resource$Instantsnapshotgroups$Get; options = {}; } @@ -102318,7 +107327,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -102326,17 +107335,17 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'instantSnapshot'], - pathParams: ['instantSnapshot', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instantSnapshotGroup'], + pathParams: ['instantSnapshotGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -102375,7 +107384,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.getIamPolicy({ + * const res = await compute.instantSnapshotGroups.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. @@ -102410,31 +107419,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Instantsnapshots$Getiampolicy, + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Instantsnapshots$Getiampolicy, + params?: Params$Resource$Instantsnapshotgroups$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Instantsnapshots$Getiampolicy, + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Instantsnapshots$Getiampolicy, + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Instantsnapshots$Getiampolicy, + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Getiampolicy + | Params$Resource$Instantsnapshotgroups$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -102450,12 +107459,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Getiampolicy; + {}) as Params$Resource$Instantsnapshotgroups$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Getiampolicy; + params = {} as Params$Resource$Instantsnapshotgroups$Getiampolicy; options = {}; } @@ -102470,7 +107479,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -102493,7 +107502,7 @@ export namespace compute_v1 { } /** - * Creates an instant snapshot in the specified zone. + * inserts a Zonal InstantSnapshotGroup resource * @example * ```js * // Before running the sample: @@ -102525,7 +107534,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.insert({ + * const res = await compute.instantSnapshotGroups.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -102543,6 +107552,8 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // begin_interface: MixerMutationRequestBuilder + * sourceConsistencyGroup: 'placeholder-value', * // Name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * @@ -102550,24 +107561,16 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "architecture": "my_architecture", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", * // "id": "my_id", * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, * // "name": "my_name", - * // "params": {}, * // "region": "my_region", * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskId": "my_sourceDiskId", + * // "sourceConsistencyGroup": "my_sourceConsistencyGroup", * // "status": "my_status", * // "zone": "my_zone" * // } @@ -102582,6 +107585,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -102619,31 +107623,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Instantsnapshots$Insert, + params: Params$Resource$Instantsnapshotgroups$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Instantsnapshots$Insert, + params?: Params$Resource$Instantsnapshotgroups$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Instantsnapshots$Insert, + params: Params$Resource$Instantsnapshotgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instantsnapshots$Insert, + params: Params$Resource$Instantsnapshotgroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instantsnapshots$Insert, + params: Params$Resource$Instantsnapshotgroups$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Insert + | Params$Resource$Instantsnapshotgroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -102659,12 +107663,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Insert; + {}) as Params$Resource$Instantsnapshotgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Insert; + params = {} as Params$Resource$Instantsnapshotgroups$Insert; options = {}; } @@ -102679,7 +107683,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -102702,7 +107706,7 @@ export namespace compute_v1 { } /** - * Retrieves the list of InstantSnapshot resources contained within + * retrieves the list of InstantSnapshotGroup resources contained within * the specified zone. * @example * ```js @@ -102736,7 +107740,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.list({ + * const res = await compute.instantSnapshotGroups.list({ * // 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 @@ -102835,11 +107839,13 @@ export namespace compute_v1 { * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -102857,52 +107863,56 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Instantsnapshots$List, + params: Params$Resource$Instantsnapshotgroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Instantsnapshots$List, + params?: Params$Resource$Instantsnapshotgroups$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Instantsnapshots$List, + params: Params$Resource$Instantsnapshotgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instantsnapshots$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshotgroups$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instantsnapshots$List, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshotgroups$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Instantsnapshots$List - | BodyResponseCallback + | Params$Resource$Instantsnapshotgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$List; + {}) as Params$Resource$Instantsnapshotgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$List; + params = {} as Params$Resource$Instantsnapshotgroups$List; options = {}; } @@ -102917,7 +107927,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -102930,12 +107940,12 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -102973,7 +107983,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.setIamPolicy({ + * const res = await compute.instantSnapshotGroups.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -103016,31 +108026,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Instantsnapshots$Setiampolicy, + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Instantsnapshots$Setiampolicy, + params?: Params$Resource$Instantsnapshotgroups$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Instantsnapshots$Setiampolicy, + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Instantsnapshots$Setiampolicy, + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Instantsnapshots$Setiampolicy, + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Setiampolicy + | Params$Resource$Instantsnapshotgroups$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -103056,12 +108066,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Setiampolicy; + {}) as Params$Resource$Instantsnapshotgroups$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Setiampolicy; + params = {} as Params$Resource$Instantsnapshotgroups$Setiampolicy; options = {}; } @@ -103076,7 +108086,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -103098,201 +108108,6 @@ export namespace compute_v1 { } } - /** - * Sets the labels on a instantSnapshot in the given zone. To learn more about - * labels, read the Labeling - * Resources documentation. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.instantSnapshots.setLabels({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - setLabels( - params: Params$Resource$Instantsnapshots$Setlabels, - options: StreamMethodOptions - ): Promise>; - setLabels( - params?: Params$Resource$Instantsnapshots$Setlabels, - options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Instantsnapshots$Setlabels, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setLabels( - params: Params$Resource$Instantsnapshots$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setLabels( - params: Params$Resource$Instantsnapshots$Setlabels, - callback: BodyResponseCallback - ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( - paramsOrCallback?: - | Params$Resource$Instantsnapshots$Setlabels - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Setlabels; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Setlabels; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/setLabels' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - /** * Returns permissions that a caller has on the specified resource. * @example @@ -103327,7 +108142,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.testIamPermissions({ + * const res = await compute.instantSnapshotGroups.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -103365,27 +108180,27 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Instantsnapshots$Testiampermissions, + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Instantsnapshots$Testiampermissions, + params?: Params$Resource$Instantsnapshotgroups$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Instantsnapshots$Testiampermissions, + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Instantsnapshots$Testiampermissions, + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Instantsnapshots$Testiampermissions, + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -103393,7 +108208,7 @@ export namespace compute_v1 { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Testiampermissions + | Params$Resource$Instantsnapshotgroups$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -103409,12 +108224,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Testiampermissions; + {}) as Params$Resource$Instantsnapshotgroups$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Testiampermissions; + params = {} as Params$Resource$Instantsnapshotgroups$Testiampermissions; options = {}; } @@ -103429,7 +108244,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -103452,130 +108267,11 @@ export namespace compute_v1 { } } - export interface Params$Resource$Instantsnapshots$Aggregatedlist 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. - * 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 onresource 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 GoogleRE2 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; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Instantsnapshots$Delete extends StandardParameters { + export interface Params$Resource$Instantsnapshotgroups$Delete extends StandardParameters { /** * Name of the InstantSnapshot resource to delete. */ - instantSnapshot?: string; + instantSnapshotGroup?: string; /** * Project ID for this request. */ @@ -103601,11 +108297,11 @@ export namespace compute_v1 { */ zone?: string; } - export interface Params$Resource$Instantsnapshots$Get extends StandardParameters { + export interface Params$Resource$Instantsnapshotgroups$Get extends StandardParameters { /** - * Name of the InstantSnapshot resource to return. + * Name of the InstantSnapshotGroup resource to return. */ - instantSnapshot?: string; + instantSnapshotGroup?: string; /** * Project ID for this request. */ @@ -103615,7 +108311,7 @@ export namespace compute_v1 { */ zone?: string; } - export interface Params$Resource$Instantsnapshots$Getiampolicy extends StandardParameters { + export interface Params$Resource$Instantsnapshotgroups$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -103633,7 +108329,7 @@ export namespace compute_v1 { */ zone?: string; } - export interface Params$Resource$Instantsnapshots$Insert extends StandardParameters { + export interface Params$Resource$Instantsnapshotgroups$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -103654,6 +108350,10 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * begin_interface: MixerMutationRequestBuilder + */ + sourceConsistencyGroup?: string; /** * Name of the zone for this request. */ @@ -103662,9 +108362,9 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$InstantSnapshot; + requestBody?: Schema$InstantSnapshotGroup; } - export interface Params$Resource$Instantsnapshots$List extends StandardParameters { + export interface Params$Resource$Instantsnapshotgroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -103772,7 +108472,7 @@ export namespace compute_v1 { */ zone?: string; } - export interface Params$Resource$Instantsnapshots$Setiampolicy extends StandardParameters { + export interface Params$Resource$Instantsnapshotgroups$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -103791,42 +108491,7 @@ export namespace compute_v1 { */ requestBody?: Schema$ZoneSetPolicyRequest; } - export interface Params$Resource$Instantsnapshots$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * 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. - * - * 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; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ZoneSetLabelsRequest; - } - export interface Params$Resource$Instantsnapshots$Testiampermissions extends StandardParameters { + export interface Params$Resource$Instantsnapshotgroups$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -103846,14 +108511,17 @@ export namespace compute_v1 { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Interconnectattachmentgroups { + export class Resource$Instantsnapshots { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified InterconnectAttachmentGroup in the given scope + * Retrieves an aggregated list of instantSnapshots. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -103877,6 +108545,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -103885,59 +108554,121 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.delete({ - * // Name of the InterconnectAttachmentGroup resource to delete. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instantSnapshots.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * // end_interface: MixerMutationRequestBuilder - * requestId: 'placeholder-value', + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -103953,53 +108684,57 @@ export namespace compute_v1 { * @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$Interconnectattachmentgroups$Delete, + aggregatedList( + params: Params$Resource$Instantsnapshots$Aggregatedlist, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Interconnectattachmentgroups$Delete, + aggregatedList( + params?: Params$Resource$Instantsnapshots$Aggregatedlist, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Interconnectattachmentgroups$Delete, + ): Promise>; + aggregatedList( + params: Params$Resource$Instantsnapshots$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Interconnectattachmentgroups$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Instantsnapshots$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Interconnectattachmentgroups$Delete, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Instantsnapshots$Aggregatedlist, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Delete - | BodyResponseCallback + | Params$Resource$Instantsnapshots$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Delete; + {}) as Params$Resource$Instantsnapshots$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$Delete; + params = {} as Params$Resource$Instantsnapshots$Aggregatedlist; options = {}; } @@ -104014,31 +108749,39 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' + '/compute/v1/projects/{project}/aggregated/instantSnapshots' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Returns the specified InterconnectAttachmentGroup resource in the given - * scope. + * Deletes the specified InstantSnapshot resource. Keep in mind that deleting + * a single instantSnapshot might not necessarily delete all the data on that + * instantSnapshot. If any data on the instantSnapshot that is marked for + * deletion is needed for subsequent instantSnapshots, the data will be moved + * to the next corresponding instantSnapshot. + * + * For more information, seeDeleting + * instantSnapshots. * @example * ```js * // Before running the sample: @@ -104062,7 +108805,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -104071,30 +108813,60 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.get({ - * // Name of the InterconnectAttachmentGroup resource to return. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instantSnapshots.delete({ + * // Name of the InstantSnapshot resource to delete. + * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "attachments": {}, - * // "configured": {}, + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "etag": "my_etag", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "intent": {}, - * // "interconnectGroup": "my_interconnectGroup", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "logicalStructure": {}, * // "name": "my_name", - * // "selfLink": "my_selfLink" + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -104110,57 +108882,53 @@ export namespace compute_v1 { * @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$Interconnectattachmentgroups$Get, + delete( + params: Params$Resource$Instantsnapshots$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Interconnectattachmentgroups$Get, + delete( + params?: Params$Resource$Instantsnapshots$Delete, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Interconnectattachmentgroups$Get, + ): Promise>; + delete( + params: Params$Resource$Instantsnapshots$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Interconnectattachmentgroups$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Interconnectattachmentgroups$Get, - callback: BodyResponseCallback + delete( + params: Params$Resource$Instantsnapshots$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + delete( + params: Params$Resource$Instantsnapshots$Delete, + callback: BodyResponseCallback ): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Get - | BodyResponseCallback + | Params$Resource$Instantsnapshots$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Get; + {}) as Params$Resource$Instantsnapshots$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$Get; + params = {} as Params$Resource$Instantsnapshots$Delete; options = {}; } @@ -104175,31 +108943,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + requiredParams: ['project', 'zone', 'instantSnapshot'], + pathParams: ['instantSnapshot', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Returns the specified InstantSnapshot resource in the specified zone. * @example * ```js * // Before running the sample: @@ -104232,23 +108999,41 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.instantSnapshots.get({ + * // Name of the InstantSnapshot resource to return. + * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "architecture": "my_architecture", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "params": {}, + * // "region": "my_region", + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshotGroup": "my_sourceInstantSnapshotGroup", + * // "sourceInstantSnapshotGroupId": "my_sourceInstantSnapshotGroupId", + * // "status": "my_status", + * // "zone": "my_zone" * // } * } * @@ -104264,54 +109049,53 @@ export namespace compute_v1 { * @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$Interconnectattachmentgroups$Getiampolicy, + get( + params: Params$Resource$Instantsnapshots$Get, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + get( + params?: Params$Resource$Instantsnapshots$Get, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + ): Promise>; + get( + params: Params$Resource$Instantsnapshots$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Instantsnapshots$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, - callback: BodyResponseCallback + get( + params: Params$Resource$Instantsnapshots$Get, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Getiampolicy - | BodyResponseCallback + | Params$Resource$Instantsnapshots$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Getiampolicy; + {}) as Params$Resource$Instantsnapshots$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Getiampolicy; + params = {} as Params$Resource$Instantsnapshots$Get; options = {}; } @@ -104326,7 +109110,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -104334,23 +109118,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'instantSnapshot'], + pathParams: ['instantSnapshot', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the InterconnectAttachmentStatuses for the specified - * InterconnectAttachmentGroup resource. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -104383,20 +109167,25 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.getOperationalStatus({ - * // Name of the interconnectAttachmentGroup resource to query. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instantSnapshots.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "auditConfigs": [], + * // "bindings": [], * // "etag": "my_etag", - * // "result": {} + * // "version": 0 * // } * } * @@ -104412,62 +109201,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getOperationalStatus( - params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + getIamPolicy( + params: Params$Resource$Instantsnapshots$Getiampolicy, options: StreamMethodOptions ): Promise>; - getOperationalStatus( - params?: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + getIamPolicy( + params?: Params$Resource$Instantsnapshots$Getiampolicy, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getOperationalStatus( - params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + ): Promise>; + getIamPolicy( + params: Params$Resource$Instantsnapshots$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getOperationalStatus( - params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getOperationalStatus( - params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Instantsnapshots$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getOperationalStatus( - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Instantsnapshots$Getiampolicy, + callback: BodyResponseCallback ): void; - getOperationalStatus( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Getoperationalstatus - | BodyResponseCallback + | Params$Resource$Instantsnapshots$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Getoperationalstatus; + {}) as Params$Resource$Instantsnapshots$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Getoperationalstatus; + params = {} as Params$Resource$Instantsnapshots$Getiampolicy; options = {}; } @@ -104482,7 +109262,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}/getOperationalStatus' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -104490,25 +109270,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a InterconnectAttachmentGroup in the specified project in the given - * scope using the parameters that are included in the request. + * Creates an instant snapshot in the specified zone. * @example * ```js * // Before running the sample: @@ -104540,7 +109317,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.insert({ + * const res = await compute.instantSnapshots.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -104557,25 +109334,36 @@ export namespace compute_v1 { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). - * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "attachments": {}, - * // "configured": {}, + * // "architecture": "my_architecture", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "etag": "my_etag", + * // "diskSizeGb": "my_diskSizeGb", * // "id": "my_id", - * // "intent": {}, - * // "interconnectGroup": "my_interconnectGroup", * // "kind": "my_kind", - * // "logicalStructure": {}, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, * // "name": "my_name", - * // "selfLink": "my_selfLink" + * // "params": {}, + * // "region": "my_region", + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshotGroup": "my_sourceInstantSnapshotGroup", + * // "sourceInstantSnapshotGroupId": "my_sourceInstantSnapshotGroupId", + * // "status": "my_status", + * // "zone": "my_zone" * // } * }, * }); @@ -104588,6 +109376,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -104625,31 +109414,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Interconnectattachmentgroups$Insert, + params: Params$Resource$Instantsnapshots$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Interconnectattachmentgroups$Insert, + params?: Params$Resource$Instantsnapshots$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Interconnectattachmentgroups$Insert, + params: Params$Resource$Instantsnapshots$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectattachmentgroups$Insert, + params: Params$Resource$Instantsnapshots$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectattachmentgroups$Insert, + params: Params$Resource$Instantsnapshots$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Insert + | Params$Resource$Instantsnapshots$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -104665,12 +109454,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Insert; + {}) as Params$Resource$Instantsnapshots$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$Insert; + params = {} as Params$Resource$Instantsnapshots$Insert; options = {}; } @@ -104685,7 +109474,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -104693,8 +109482,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -104708,7 +109497,8 @@ export namespace compute_v1 { } /** - * Lists the InterconnectAttachmentGroups for a project in the given scope. + * Retrieves the list of InstantSnapshot resources contained within + * the specified zone. * @example * ```js * // Before running the sample: @@ -104741,7 +109531,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.list({ + * const res = await compute.instantSnapshots.list({ * // 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 @@ -104833,18 +109623,18 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -104862,60 +109652,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Interconnectattachmentgroups$List, + params: Params$Resource$Instantsnapshots$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Interconnectattachmentgroups$List, + params?: Params$Resource$Instantsnapshots$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; list( - params: Params$Resource$Interconnectattachmentgroups$List, + params: Params$Resource$Instantsnapshots$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectattachmentgroups$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Interconnectattachmentgroups$List, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshots$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshots$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$List - | BodyResponseCallback + | Params$Resource$Instantsnapshots$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$List; + {}) as Params$Resource$Instantsnapshots$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$List; + params = {} as Params$Resource$Instantsnapshots$List; options = {}; } @@ -104930,7 +109712,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -104938,27 +109720,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Patches the specified InterconnectAttachmentGroup resource with the data - * included in the request. This method supports PATCH - * semantics and usesJSON merge - * patch format and processing rules. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -104990,47 +109768,22 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.patch({ - * // Name of the InterconnectAttachmentGroup resource to patch. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instantSnapshots.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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). - * // end_interface: MixerMutationRequestBuilder - * requestId: 'placeholder-value', - * // The list of fields to update. - * updateMask: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "attachments": {}, - * // "configured": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", + * // "bindings": [], * // "etag": "my_etag", - * // "id": "my_id", - * // "intent": {}, - * // "interconnectGroup": "my_interconnectGroup", - * // "kind": "my_kind", - * // "logicalStructure": {}, - * // "name": "my_name", - * // "selfLink": "my_selfLink" + * // "policy": {} * // } * }, * }); @@ -105038,32 +109791,10 @@ export namespace compute_v1 { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -105079,53 +109810,53 @@ export namespace compute_v1 { * @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$Interconnectattachmentgroups$Patch, + setIamPolicy( + params: Params$Resource$Instantsnapshots$Setiampolicy, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Interconnectattachmentgroups$Patch, + setIamPolicy( + params?: Params$Resource$Instantsnapshots$Setiampolicy, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Interconnectattachmentgroups$Patch, + ): Promise>; + setIamPolicy( + params: Params$Resource$Instantsnapshots$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Interconnectattachmentgroups$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Instantsnapshots$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Interconnectattachmentgroups$Patch, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Instantsnapshots$Setiampolicy, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Patch - | BodyResponseCallback + | Params$Resource$Instantsnapshots$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Patch; + {}) as Params$Resource$Instantsnapshots$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$Patch; + params = {} as Params$Resource$Instantsnapshots$Setiampolicy; options = {}; } @@ -105140,31 +109871,32 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Sets the labels on a instantSnapshot in the given zone. To learn more about + * labels, read the Labeling + * Resources documentation. * @example * ```js * // Before running the sample: @@ -105196,20 +109928,35 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.setIamPolicy({ + * const res = await compute.instantSnapshots.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} * // } * }, * }); @@ -105217,10 +109964,33 @@ export namespace compute_v1 { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -105236,54 +110006,53 @@ export namespace compute_v1 { * @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$Interconnectattachmentgroups$Setiampolicy, + setLabels( + params: Params$Resource$Instantsnapshots$Setlabels, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + setLabels( + params?: Params$Resource$Instantsnapshots$Setlabels, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + ): Promise>; + setLabels( + params: Params$Resource$Instantsnapshots$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Instantsnapshots$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Instantsnapshots$Setlabels, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Setiampolicy - | BodyResponseCallback + | Params$Resource$Instantsnapshots$Setlabels + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Setiampolicy; + {}) as Params$Resource$Instantsnapshots$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Setiampolicy; + params = {} as Params$Resource$Instantsnapshots$Setlabels; options = {}; } @@ -105298,7 +110067,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -105306,17 +110075,17 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -105354,12 +110123,14 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.testIamPermissions({ + * const res = await compute.instantSnapshots.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { @@ -105390,27 +110161,27 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params: Params$Resource$Instantsnapshots$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params?: Params$Resource$Instantsnapshots$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params: Params$Resource$Instantsnapshots$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params: Params$Resource$Instantsnapshots$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params: Params$Resource$Instantsnapshots$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -105418,7 +110189,7 @@ export namespace compute_v1 { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Testiampermissions + | Params$Resource$Instantsnapshots$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -105434,13 +110205,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Testiampermissions; + {}) as Params$Resource$Instantsnapshots$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Testiampermissions; + params = {} as Params$Resource$Instantsnapshots$Testiampermissions; options = {}; } @@ -105455,7 +110225,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -105463,8 +110233,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { @@ -105478,11 +110248,130 @@ export namespace compute_v1 { } } - export interface Params$Resource$Interconnectattachmentgroups$Delete extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Aggregatedlist extends StandardParameters { /** - * Name of the InterconnectAttachmentGroup resource to delete. + * 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 onresource 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 GoogleRE2 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. */ - interconnectAttachmentGroup?: string; + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Instantsnapshots$Delete extends StandardParameters { + /** + * Name of the InstantSnapshot resource to delete. + */ + instantSnapshot?: string; /** * Project ID for this request. */ @@ -105501,21 +110390,28 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder */ requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; } - export interface Params$Resource$Interconnectattachmentgroups$Get extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Get extends StandardParameters { /** - * Name of the InterconnectAttachmentGroup resource to return. + * Name of the InstantSnapshot resource to return. */ - interconnectAttachmentGroup?: string; + instantSnapshot?: string; /** * Project ID for this request. */ project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; } - export interface Params$Resource$Interconnectattachmentgroups$Getiampolicy extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -105528,18 +110424,12 @@ export namespace compute_v1 { * Name or id of the resource for this request. */ resource?: string; - } - export interface Params$Resource$Interconnectattachmentgroups$Getoperationalstatus extends StandardParameters { - /** - * Name of the interconnectAttachmentGroup resource to query. - */ - interconnectAttachmentGroup?: string; /** - * Project ID for this request. + * The name of the zone for this request. */ - project?: string; + zone?: string; } - export interface Params$Resource$Interconnectattachmentgroups$Insert extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -105558,16 +110448,19 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder */ requestId?: string; + /** + * Name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$InterconnectAttachmentGroup; + requestBody?: Schema$InstantSnapshot; } - export interface Params$Resource$Interconnectattachmentgroups$List extends StandardParameters { + export interface Params$Resource$Instantsnapshots$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -105670,12 +110563,31 @@ export namespace compute_v1 { * with an error code. */ returnPartialSuccess?: boolean; + /** + * The name of the zone for this request. + */ + zone?: string; } - export interface Params$Resource$Interconnectattachmentgroups$Patch extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Setiampolicy extends StandardParameters { /** - * Name of the InterconnectAttachmentGroup resource to patch. + * Project ID for this request. */ - interconnectAttachmentGroup?: string; + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ZoneSetPolicyRequest; + } + export interface Params$Resource$Instantsnapshots$Setlabels extends StandardParameters { /** * Project ID for this request. */ @@ -105694,35 +110606,23 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder */ requestId?: string; - /** - * The list of fields to update. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InterconnectAttachmentGroup; - } - export interface Params$Resource$Interconnectattachmentgroups$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; /** * Name or id of the resource for this request. */ resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$GlobalSetPolicyRequest; + requestBody?: Schema$ZoneSetLabelsRequest; } - export interface Params$Resource$Interconnectattachmentgroups$Testiampermissions extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -105731,6 +110631,10 @@ export namespace compute_v1 { * Name or id of the resource for this request. */ resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata @@ -105738,17 +110642,14 @@ export namespace compute_v1 { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Interconnectattachments { + export class Resource$Interconnectattachmentgroups { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of interconnect attachments. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Deletes the specified InterconnectAttachmentGroup in the given scope * @example * ```js * // Before running the sample: @@ -105772,7 +110673,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -105781,121 +110681,60 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.aggregatedList({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.interconnectAttachmentGroups.delete({ + * // Name of the InterconnectAttachmentGroup resource to delete. + * interconnectAttachmentGroup: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // 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). + * // end_interface: MixerMutationRequestBuilder + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -105911,61 +110750,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Interconnectattachments$Aggregatedlist, + delete( + params: Params$Resource$Interconnectattachmentgroups$Delete, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Interconnectattachments$Aggregatedlist, + delete( + params?: Params$Resource$Interconnectattachmentgroups$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Interconnectattachments$Aggregatedlist, + ): Promise>; + delete( + params: Params$Resource$Interconnectattachmentgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Interconnectattachments$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Interconnectattachments$Aggregatedlist, - callback: BodyResponseCallback + delete( + params: Params$Resource$Interconnectattachmentgroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + delete( + params: Params$Resource$Interconnectattachmentgroups$Delete, + callback: BodyResponseCallback ): void; - aggregatedList( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Interconnectattachmentgroups$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Aggregatedlist; + {}) as Params$Resource$Interconnectattachmentgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Aggregatedlist; + params = {} as Params$Resource$Interconnectattachmentgroups$Delete; options = {}; } @@ -105980,32 +110811,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/aggregated/interconnectAttachments' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Deletes the specified interconnect attachment. + * Returns the specified InterconnectAttachmentGroup resource in the given + * scope. * @example * ```js * // Before running the sample: @@ -106029,6 +110859,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -106037,60 +110868,30 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.delete({ - * // Name of the interconnect attachment to delete. - * interconnectAttachment: + * const res = await compute.interconnectAttachmentGroups.get({ + * // Name of the InterconnectAttachmentGroup resource to return. + * interconnectAttachmentGroup: * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "attachments": {}, + * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "intent": {}, + * // "interconnectGroup": "my_interconnectGroup", * // "kind": "my_kind", + * // "logicalStructure": {}, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "selfLink": "my_selfLink" * // } * } * @@ -106106,53 +110907,57 @@ export namespace compute_v1 { * @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$Interconnectattachments$Delete, + get( + params: Params$Resource$Interconnectattachmentgroups$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Interconnectattachments$Delete, + get( + params?: Params$Resource$Interconnectattachmentgroups$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Interconnectattachments$Delete, + ): Promise>; + get( + params: Params$Resource$Interconnectattachmentgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Interconnectattachments$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Interconnectattachmentgroups$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Interconnectattachments$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Interconnectattachmentgroups$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get( + callback: BodyResponseCallback + ): void; + get( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Delete - | BodyResponseCallback + | Params$Resource$Interconnectattachmentgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Delete; + {}) as Params$Resource$Interconnectattachmentgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Delete; + params = {} as Params$Resource$Interconnectattachmentgroups$Get; options = {}; } @@ -106167,30 +110972,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'interconnectAttachment'], - pathParams: ['interconnectAttachment', 'project', 'region'], + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified interconnect attachment. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -106223,67 +111029,171 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.get({ - * // Name of the interconnect attachment to return. - * interconnectAttachment: + * const res = await compute.interconnectAttachmentGroups.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Interconnectattachmentgroups$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Interconnectattachmentgroups$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectattachmentgroups$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Interconnectattachmentgroups$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the InterconnectAttachmentStatuses for the specified + * InterconnectAttachmentGroup resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.interconnectAttachmentGroups.getOperationalStatus({ + * // Name of the interconnectAttachmentGroup resource to query. + * interconnectAttachmentGroup: * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "adminEnabled": false, - * // "attachmentGroup": "my_attachmentGroup", - * // "bandwidth": "my_bandwidth", - * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", - * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", - * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", - * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", - * // "candidateIpv6Subnets": [], - * // "candidateSubnets": [], - * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", - * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", - * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", - * // "configurationConstraints": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "customerRouterIpAddress": "my_customerRouterIpAddress", - * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", - * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", - * // "dataplaneVersion": 0, - * // "description": "my_description", - * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", - * // "encryption": "my_encryption", - * // "googleReferenceId": "my_googleReferenceId", - * // "id": "my_id", - * // "interconnect": "my_interconnect", - * // "ipsecInternalAddresses": [], - * // "kind": "my_kind", - * // "l2Forwarding": {}, - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "mtu": 0, - * // "name": "my_name", - * // "operationalStatus": "my_operationalStatus", - * // "pairingKey": "my_pairingKey", - * // "params": {}, - * // "partnerAsn": "my_partnerAsn", - * // "partnerMetadata": {}, - * // "privateInterconnectInfo": {}, - * // "region": "my_region", - * // "remoteService": "my_remoteService", - * // "router": "my_router", - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "stackType": "my_stackType", - * // "state": "my_state", - * // "subnetLength": 0, - * // "type": "my_type", - * // "vlanTag8021q": 0 + * // "etag": "my_etag", + * // "result": {} * // } * } * @@ -106299,55 +111209,62 @@ export namespace compute_v1 { * @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$Interconnectattachments$Get, + getOperationalStatus( + params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Interconnectattachments$Get, + getOperationalStatus( + params?: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Interconnectattachments$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + getOperationalStatus( + params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Interconnectattachments$Get, + getOperationalStatus( + params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Interconnectattachments$Get, - callback: BodyResponseCallback + getOperationalStatus( + params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + getOperationalStatus( + callback: BodyResponseCallback + ): void; + getOperationalStatus( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Get - | BodyResponseCallback + | Params$Resource$Interconnectattachmentgroups$Getoperationalstatus + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Get; + {}) as Params$Resource$Interconnectattachmentgroups$Getoperationalstatus; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Get; + params = + {} as Params$Resource$Interconnectattachmentgroups$Getoperationalstatus; options = {}; } @@ -106362,7 +111279,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}/getOperationalStatus' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -106370,23 +111287,25 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'interconnectAttachment'], - pathParams: ['interconnectAttachment', 'project', 'region'], + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Creates an InterconnectAttachment in the specified project using the data - * included in the request. + * Creates a InterconnectAttachmentGroup in the specified project in the given + * scope using the parameters that are included in the request. * @example * ```js * // Before running the sample: @@ -106418,12 +111337,10 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.insert({ + * const res = await compute.interconnectAttachmentGroups.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -106437,61 +111354,25 @@ export namespace compute_v1 { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). + * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', - * // If true, the request will not be committed. - * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "adminEnabled": false, - * // "attachmentGroup": "my_attachmentGroup", - * // "bandwidth": "my_bandwidth", - * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", - * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", - * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", - * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", - * // "candidateIpv6Subnets": [], - * // "candidateSubnets": [], - * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", - * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", - * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", - * // "configurationConstraints": {}, + * // "attachments": {}, + * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", - * // "customerRouterIpAddress": "my_customerRouterIpAddress", - * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", - * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", - * // "dataplaneVersion": 0, * // "description": "my_description", - * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", - * // "encryption": "my_encryption", - * // "googleReferenceId": "my_googleReferenceId", + * // "etag": "my_etag", * // "id": "my_id", - * // "interconnect": "my_interconnect", - * // "ipsecInternalAddresses": [], + * // "intent": {}, + * // "interconnectGroup": "my_interconnectGroup", * // "kind": "my_kind", - * // "l2Forwarding": {}, - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "mtu": 0, + * // "logicalStructure": {}, * // "name": "my_name", - * // "operationalStatus": "my_operationalStatus", - * // "pairingKey": "my_pairingKey", - * // "params": {}, - * // "partnerAsn": "my_partnerAsn", - * // "partnerMetadata": {}, - * // "privateInterconnectInfo": {}, - * // "region": "my_region", - * // "remoteService": "my_remoteService", - * // "router": "my_router", - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "stackType": "my_stackType", - * // "state": "my_state", - * // "subnetLength": 0, - * // "type": "my_type", - * // "vlanTag8021q": 0 + * // "selfLink": "my_selfLink" * // } * }, * }); @@ -106504,6 +111385,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -106541,31 +111423,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Interconnectattachments$Insert, + params: Params$Resource$Interconnectattachmentgroups$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Interconnectattachments$Insert, + params?: Params$Resource$Interconnectattachmentgroups$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Interconnectattachments$Insert, + params: Params$Resource$Interconnectattachmentgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectattachments$Insert, + params: Params$Resource$Interconnectattachmentgroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectattachments$Insert, + params: Params$Resource$Interconnectattachmentgroups$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Insert + | Params$Resource$Interconnectattachmentgroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -106581,12 +111463,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Insert; + {}) as Params$Resource$Interconnectattachmentgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Insert; + params = {} as Params$Resource$Interconnectattachmentgroups$Insert; options = {}; } @@ -106601,7 +111483,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -106609,8 +111491,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -106624,8 +111506,7 @@ export namespace compute_v1 { } /** - * Retrieves the list of interconnect attachments contained within - * the specified region. + * Lists the InterconnectAttachmentGroups for a project in the given scope. * @example * ```js * // Before running the sample: @@ -106658,7 +111539,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.list({ + * const res = await compute.interconnectAttachmentGroups.list({ * // 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 @@ -106743,8 +111624,6 @@ export namespace compute_v1 { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -106757,11 +111636,13 @@ export namespace compute_v1 { * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -106779,56 +111660,60 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Interconnectattachments$List, + params: Params$Resource$Interconnectattachmentgroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Interconnectattachments$List, + params?: Params$Resource$Interconnectattachmentgroups$List, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; list( - params: Params$Resource$Interconnectattachments$List, + params: Params$Resource$Interconnectattachmentgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectattachments$List, + params: Params$Resource$Interconnectattachmentgroups$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectattachments$List, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachmentgroups$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Interconnectattachments$List - | BodyResponseCallback + | Params$Resource$Interconnectattachmentgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$List; + {}) as Params$Resource$Interconnectattachmentgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$List; + params = {} as Params$Resource$Interconnectattachmentgroups$List; options = {}; } @@ -106843,7 +111728,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -106851,24 +111736,26 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Updates the specified interconnect attachment with the data included in the - * request. This method supportsPATCH - * semantics and uses theJSON merge + * Patches the specified InterconnectAttachmentGroup resource with the data + * included in the request. This method supports PATCH + * semantics and usesJSON merge * patch format and processing rules. * @example * ```js @@ -106901,15 +111788,13 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.patch({ - * // Name of the interconnect attachment to patch. - * interconnectAttachment: + * const res = await compute.interconnectAttachmentGroups.patch({ + * // Name of the InterconnectAttachmentGroup resource to patch. + * interconnectAttachmentGroup: * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -106923,59 +111808,27 @@ export namespace compute_v1 { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). + * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', + * // The list of fields to update. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "adminEnabled": false, - * // "attachmentGroup": "my_attachmentGroup", - * // "bandwidth": "my_bandwidth", - * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", - * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", - * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", - * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", - * // "candidateIpv6Subnets": [], - * // "candidateSubnets": [], - * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", - * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", - * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", - * // "configurationConstraints": {}, + * // "attachments": {}, + * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", - * // "customerRouterIpAddress": "my_customerRouterIpAddress", - * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", - * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", - * // "dataplaneVersion": 0, * // "description": "my_description", - * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", - * // "encryption": "my_encryption", - * // "googleReferenceId": "my_googleReferenceId", + * // "etag": "my_etag", * // "id": "my_id", - * // "interconnect": "my_interconnect", - * // "ipsecInternalAddresses": [], + * // "intent": {}, + * // "interconnectGroup": "my_interconnectGroup", * // "kind": "my_kind", - * // "l2Forwarding": {}, - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "mtu": 0, + * // "logicalStructure": {}, * // "name": "my_name", - * // "operationalStatus": "my_operationalStatus", - * // "pairingKey": "my_pairingKey", - * // "params": {}, - * // "partnerAsn": "my_partnerAsn", - * // "partnerMetadata": {}, - * // "privateInterconnectInfo": {}, - * // "region": "my_region", - * // "remoteService": "my_remoteService", - * // "router": "my_router", - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "stackType": "my_stackType", - * // "state": "my_state", - * // "subnetLength": 0, - * // "type": "my_type", - * // "vlanTag8021q": 0 + * // "selfLink": "my_selfLink" * // } * }, * }); @@ -106988,6 +111841,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -107025,31 +111879,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Interconnectattachments$Patch, + params: Params$Resource$Interconnectattachmentgroups$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Interconnectattachments$Patch, + params?: Params$Resource$Interconnectattachmentgroups$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Interconnectattachments$Patch, + params: Params$Resource$Interconnectattachmentgroups$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Interconnectattachments$Patch, + params: Params$Resource$Interconnectattachmentgroups$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Interconnectattachments$Patch, + params: Params$Resource$Interconnectattachmentgroups$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Patch + | Params$Resource$Interconnectattachmentgroups$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -107065,12 +111919,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Patch; + {}) as Params$Resource$Interconnectattachmentgroups$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Patch; + params = {} as Params$Resource$Interconnectattachmentgroups$Patch; options = {}; } @@ -107085,7 +111939,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -107093,8 +111947,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'interconnectAttachment'], - pathParams: ['interconnectAttachment', 'project', 'region'], + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], context: this.context, }; if (callback) { @@ -107108,9 +111962,8 @@ export namespace compute_v1 { } /** - * Sets the labels on an InterconnectAttachment. To learn more about labels, - * read the Labeling - * Resources documentation. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -107142,35 +111995,20 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.setLabels({ + * const res = await compute.interconnectAttachmentGroups.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -107178,32 +112016,10 @@ export namespace compute_v1 { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -107219,53 +112035,54 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Interconnectattachments$Setlabels, + setIamPolicy( + params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Interconnectattachments$Setlabels, + setIamPolicy( + params?: Params$Resource$Interconnectattachmentgroups$Setiampolicy, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Interconnectattachments$Setlabels, + ): Promise>; + setIamPolicy( + params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Interconnectattachments$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Interconnectattachments$Setlabels, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Setlabels - | BodyResponseCallback + | Params$Resource$Interconnectattachmentgroups$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Setlabels; + {}) as Params$Resource$Interconnectattachmentgroups$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Setlabels; + params = + {} as Params$Resource$Interconnectattachmentgroups$Setiampolicy; options = {}; } @@ -107280,7 +112097,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{resource}/setLabels' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -107288,153 +112105,187 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Interconnectattachments$Aggregatedlist 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. - * 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 onresource labels. + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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) - * ``` + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * 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: + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Do the magic + * const res = await compute.interconnectAttachmentGroups.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * // Example response + * // { + * // "permissions": [] + * // } + * } * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * ``` * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. + * @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. */ - serviceProjectNumber?: string; + testIamPermissions( + params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Interconnectattachmentgroups$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectattachmentgroups$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Interconnectattachmentgroups$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } - export interface Params$Resource$Interconnectattachments$Delete extends StandardParameters { + + export interface Params$Resource$Interconnectattachmentgroups$Delete extends StandardParameters { /** - * Name of the interconnect attachment to delete. + * Name of the InterconnectAttachmentGroup resource to delete. */ - interconnectAttachment?: string; + interconnectAttachmentGroup?: string; /** * Project ID for this request. */ project?: string; - /** - * Name of the region for this request. - */ - region?: string; /** * 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 @@ -107449,32 +112300,49 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; } - export interface Params$Resource$Interconnectattachments$Get extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Get extends StandardParameters { /** - * Name of the interconnect attachment to return. + * Name of the InterconnectAttachmentGroup resource to return. */ - interconnectAttachment?: string; + interconnectAttachmentGroup?: string; /** * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Interconnectattachmentgroups$Getiampolicy extends StandardParameters { /** - * Name of the region for this request. + * Requested IAM Policy version. */ - region?: string; + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; } - export interface Params$Resource$Interconnectattachments$Insert extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Getoperationalstatus extends StandardParameters { + /** + * Name of the interconnectAttachmentGroup resource to query. + */ + interconnectAttachmentGroup?: string; /** * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Interconnectattachmentgroups$Insert extends StandardParameters { /** - * Name of the region for this request. + * Project ID for this request. */ - region?: string; + project?: string; /** * 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 @@ -107489,19 +112357,16 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; - /** - * If true, the request will not be committed. - */ - validateOnly?: boolean; /** * Request body metadata */ - requestBody?: Schema$InterconnectAttachment; + requestBody?: Schema$InterconnectAttachmentGroup; } - export interface Params$Resource$Interconnectattachments$List extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -107595,10 +112460,6 @@ export namespace compute_v1 { * Project ID for this request. */ project?: string; - /** - * Name of the region for this request. - */ - region?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -107609,19 +112470,15 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Interconnectattachments$Patch extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Patch extends StandardParameters { /** - * Name of the interconnect attachment to patch. + * Name of the InterconnectAttachmentGroup resource to patch. */ - interconnectAttachment?: string; + interconnectAttachmentGroup?: string; /** * Project ID for this request. */ project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; /** * 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 @@ -107636,39 +112493,39 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; + /** + * The list of fields to update. + */ + updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$InterconnectAttachment; + requestBody?: Schema$InterconnectAttachmentGroup; } - export interface Params$Resource$Interconnectattachments$Setlabels extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * The region for this request. + * Name or id of the resource for this request. */ - region?: string; + resource?: string; + /** - * 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. - * - * 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). + * Request body metadata */ - requestId?: string; + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Interconnectattachmentgroups$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; /** * Name or id of the resource for this request. */ @@ -107677,18 +112534,20 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$RegionSetLabelsRequest; + requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Interconnectgroups { + export class Resource$Interconnectattachments { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Create Interconnects with redundancy by creating them in a specified - * interconnect group. + * Retrieves an aggregated list of interconnect attachments. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -107712,6 +112571,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -107720,51 +112580,121 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.createMembers({ - * // Name of the group resource to create members for. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectAttachments.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "request": {} - * // } - * }, + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -107780,53 +112710,61 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - createMembers( - params: Params$Resource$Interconnectgroups$Createmembers, + aggregatedList( + params: Params$Resource$Interconnectattachments$Aggregatedlist, options: StreamMethodOptions ): Promise>; - createMembers( - params?: Params$Resource$Interconnectgroups$Createmembers, + aggregatedList( + params?: Params$Resource$Interconnectattachments$Aggregatedlist, options?: MethodOptions - ): Promise>; - createMembers( - params: Params$Resource$Interconnectgroups$Createmembers, + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Interconnectattachments$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - createMembers( - params: Params$Resource$Interconnectgroups$Createmembers, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Interconnectattachments$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - createMembers( - params: Params$Resource$Interconnectgroups$Createmembers, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Interconnectattachments$Aggregatedlist, + callback: BodyResponseCallback ): void; - createMembers(callback: BodyResponseCallback): void; - createMembers( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Createmembers - | BodyResponseCallback + | Params$Resource$Interconnectattachments$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Createmembers; + {}) as Params$Resource$Interconnectattachments$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Createmembers; + params = {} as Params$Resource$Interconnectattachments$Aggregatedlist; options = {}; } @@ -107841,30 +112779,32 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}/createMembers' + '/compute/v1/projects/{project}/aggregated/interconnectAttachments' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes the specified InterconnectGroup in the given scope + * Deletes the specified interconnect attachment. * @example * ```js * // Before running the sample: @@ -107896,12 +112836,15 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.delete({ - * // Name of the InterconnectGroup resource to delete. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectAttachments.delete({ + * // Name of the interconnect attachment to delete. + * interconnectAttachment: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -107915,7 +112858,6 @@ export namespace compute_v1 { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). - * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', * }); * console.log(res.data); @@ -107927,6 +112869,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -107964,31 +112907,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Interconnectgroups$Delete, + params: Params$Resource$Interconnectattachments$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Interconnectgroups$Delete, + params?: Params$Resource$Interconnectattachments$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Interconnectgroups$Delete, + params: Params$Resource$Interconnectattachments$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnectgroups$Delete, + params: Params$Resource$Interconnectattachments$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnectgroups$Delete, + params: Params$Resource$Interconnectattachments$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Delete + | Params$Resource$Interconnectattachments$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -108004,12 +112947,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Delete; + {}) as Params$Resource$Interconnectattachments$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Delete; + params = {} as Params$Resource$Interconnectattachments$Delete; options = {}; } @@ -108024,7 +112967,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}' + '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -108032,8 +112975,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], + requiredParams: ['project', 'region', 'interconnectAttachment'], + pathParams: ['interconnectAttachment', 'project', 'region'], context: this.context, }; if (callback) { @@ -108047,7 +112990,7 @@ export namespace compute_v1 { } /** - * Returns the specified InterconnectGroup resource in the given scope. + * Returns the specified interconnect attachment. * @example * ```js * // Before running the sample: @@ -108080,28 +113023,67 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.get({ - * // Name of the InterconnectGroup resource to return. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectAttachments.get({ + * // Name of the interconnect attachment to return. + * interconnectAttachment: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "configured": {}, + * // "adminEnabled": false, + * // "attachmentGroup": "my_attachmentGroup", + * // "bandwidth": "my_bandwidth", + * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", + * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", + * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", + * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", + * // "candidateIpv6Subnets": [], + * // "candidateSubnets": [], + * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", + * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", + * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", + * // "configurationConstraints": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "customerRouterIpAddress": "my_customerRouterIpAddress", + * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", + * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", + * // "dataplaneVersion": 0, * // "description": "my_description", - * // "etag": "my_etag", + * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", + * // "encryption": "my_encryption", + * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", - * // "intent": {}, - * // "interconnects": {}, + * // "interconnect": "my_interconnect", + * // "ipsecInternalAddresses": [], * // "kind": "my_kind", + * // "l2Forwarding": {}, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "mtu": 0, * // "name": "my_name", - * // "physicalStructure": {}, - * // "selfLink": "my_selfLink" + * // "operationalStatus": "my_operationalStatus", + * // "pairingKey": "my_pairingKey", + * // "params": {}, + * // "partnerAsn": "my_partnerAsn", + * // "partnerMetadata": {}, + * // "privateInterconnectInfo": {}, + * // "region": "my_region", + * // "remoteService": "my_remoteService", + * // "router": "my_router", + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "stackType": "my_stackType", + * // "state": "my_state", + * // "subnetLength": 0, + * // "type": "my_type", + * // "vlanTag8021q": 0 * // } * } * @@ -108118,52 +113100,54 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Interconnectgroups$Get, + params: Params$Resource$Interconnectattachments$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Interconnectgroups$Get, + params?: Params$Resource$Interconnectattachments$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Interconnectgroups$Get, + params: Params$Resource$Interconnectattachments$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectgroups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachments$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectgroups$Get, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachments$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Get - | BodyResponseCallback + | Params$Resource$Interconnectattachments$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Get; + {}) as Params$Resource$Interconnectattachments$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Get; + params = {} as Params$Resource$Interconnectattachments$Get; options = {}; } @@ -108178,7 +113162,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}' + '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -108186,23 +113170,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], + requiredParams: ['project', 'region', 'interconnectAttachment'], + pathParams: ['interconnectAttachment', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Creates an InterconnectAttachment in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -108226,7 +113210,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -108235,348 +113218,82 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.interconnectAttachments.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Interconnectgroups$Getiampolicy, - options: StreamMethodOptions - ): Promise>; - getIamPolicy( - params?: Params$Resource$Interconnectgroups$Getiampolicy, - options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Interconnectgroups$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Interconnectgroups$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Interconnectgroups$Getiampolicy, - callback: BodyResponseCallback - ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( - paramsOrCallback?: - | Params$Resource$Interconnectgroups$Getiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Getiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Getiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{resource}/getIamPolicy' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns the interconnectStatuses for the specified - * InterconnectGroup. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.interconnectGroups.getOperationalStatus({ - * // Name of the interconnectGroup resource to query. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "etag": "my_etag", - * // "result": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - getOperationalStatus( - params: Params$Resource$Interconnectgroups$Getoperationalstatus, - options: StreamMethodOptions - ): Promise>; - getOperationalStatus( - params?: Params$Resource$Interconnectgroups$Getoperationalstatus, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getOperationalStatus( - params: Params$Resource$Interconnectgroups$Getoperationalstatus, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getOperationalStatus( - params: Params$Resource$Interconnectgroups$Getoperationalstatus, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getOperationalStatus( - params: Params$Resource$Interconnectgroups$Getoperationalstatus, - callback: BodyResponseCallback - ): void; - getOperationalStatus( - callback: BodyResponseCallback - ): void; - getOperationalStatus( - paramsOrCallback?: - | Params$Resource$Interconnectgroups$Getoperationalstatus - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Getoperationalstatus; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Getoperationalstatus; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}/getOperationalStatus' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Creates a InterconnectGroup in the specified project in the given scope - * using the parameters that are included in the request. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.interconnectGroups.insert({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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). - * // end_interface: MixerMutationRequestBuilder - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "configured": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "etag": "my_etag", - * // "id": "my_id", - * // "intent": {}, - * // "interconnects": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "physicalStructure": {}, - * // "selfLink": "my_selfLink" - * // } - * }, + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * // If true, the request will not be committed. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adminEnabled": false, + * // "attachmentGroup": "my_attachmentGroup", + * // "bandwidth": "my_bandwidth", + * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", + * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", + * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", + * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", + * // "candidateIpv6Subnets": [], + * // "candidateSubnets": [], + * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", + * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", + * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", + * // "configurationConstraints": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "customerRouterIpAddress": "my_customerRouterIpAddress", + * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", + * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", + * // "dataplaneVersion": 0, + * // "description": "my_description", + * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", + * // "encryption": "my_encryption", + * // "googleReferenceId": "my_googleReferenceId", + * // "id": "my_id", + * // "interconnect": "my_interconnect", + * // "ipsecInternalAddresses": [], + * // "kind": "my_kind", + * // "l2Forwarding": {}, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "mtu": 0, + * // "name": "my_name", + * // "operationalStatus": "my_operationalStatus", + * // "pairingKey": "my_pairingKey", + * // "params": {}, + * // "partnerAsn": "my_partnerAsn", + * // "partnerMetadata": {}, + * // "privateInterconnectInfo": {}, + * // "region": "my_region", + * // "remoteService": "my_remoteService", + * // "router": "my_router", + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "stackType": "my_stackType", + * // "state": "my_state", + * // "subnetLength": 0, + * // "type": "my_type", + * // "vlanTag8021q": 0 + * // } + * }, * }); * console.log(res.data); * @@ -108587,6 +113304,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -108624,31 +113342,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Interconnectgroups$Insert, + params: Params$Resource$Interconnectattachments$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Interconnectgroups$Insert, + params?: Params$Resource$Interconnectattachments$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Interconnectgroups$Insert, + params: Params$Resource$Interconnectattachments$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectgroups$Insert, + params: Params$Resource$Interconnectattachments$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectgroups$Insert, + params: Params$Resource$Interconnectattachments$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Insert + | Params$Resource$Interconnectattachments$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -108664,12 +113382,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Insert; + {}) as Params$Resource$Interconnectattachments$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Insert; + params = {} as Params$Resource$Interconnectattachments$Insert; options = {}; } @@ -108684,7 +113402,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups' + '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -108692,8 +113410,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -108707,7 +113425,8 @@ export namespace compute_v1 { } /** - * Lists the InterconnectGroups for a project in the given scope. + * Retrieves the list of interconnect attachments contained within + * the specified region. * @example * ```js * // Before running the sample: @@ -108740,7 +113459,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.list({ + * const res = await compute.interconnectAttachments.list({ * // 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 @@ -108825,6 +113544,8 @@ export namespace compute_v1 { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -108837,13 +113558,11 @@ export namespace compute_v1 { * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -108861,56 +113580,56 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Interconnectgroups$List, + params: Params$Resource$Interconnectattachments$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Interconnectgroups$List, + params?: Params$Resource$Interconnectattachments$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Interconnectgroups$List, + params: Params$Resource$Interconnectattachments$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectgroups$List, + params: Params$Resource$Interconnectattachments$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectgroups$List, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachments$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Interconnectgroups$List - | BodyResponseCallback + | Params$Resource$Interconnectattachments$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$List; + {}) as Params$Resource$Interconnectattachments$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$List; + params = {} as Params$Resource$Interconnectattachments$List; options = {}; } @@ -108925,7 +113644,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups' + '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -108933,26 +113652,24 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Patches the specified InterconnectGroup resource with the data included in - * the request. This method supports PATCH - * semantics and usesJSON merge + * Updates the specified interconnect attachment with the data included in the + * request. This method supportsPATCH + * semantics and uses theJSON merge * patch format and processing rules. * @example * ```js @@ -108985,12 +113702,15 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.patch({ - * // Name of the InterconnectGroup resource to patch. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectAttachments.patch({ + * // Name of the interconnect attachment to patch. + * interconnectAttachment: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -109004,26 +113724,59 @@ export namespace compute_v1 { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). - * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', - * // The list of fields to update. - * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "configured": {}, + * // "adminEnabled": false, + * // "attachmentGroup": "my_attachmentGroup", + * // "bandwidth": "my_bandwidth", + * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", + * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", + * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", + * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", + * // "candidateIpv6Subnets": [], + * // "candidateSubnets": [], + * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", + * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", + * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", + * // "configurationConstraints": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "customerRouterIpAddress": "my_customerRouterIpAddress", + * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", + * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", + * // "dataplaneVersion": 0, * // "description": "my_description", - * // "etag": "my_etag", + * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", + * // "encryption": "my_encryption", + * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", - * // "intent": {}, - * // "interconnects": {}, + * // "interconnect": "my_interconnect", + * // "ipsecInternalAddresses": [], * // "kind": "my_kind", + * // "l2Forwarding": {}, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "mtu": 0, * // "name": "my_name", - * // "physicalStructure": {}, - * // "selfLink": "my_selfLink" + * // "operationalStatus": "my_operationalStatus", + * // "pairingKey": "my_pairingKey", + * // "params": {}, + * // "partnerAsn": "my_partnerAsn", + * // "partnerMetadata": {}, + * // "privateInterconnectInfo": {}, + * // "region": "my_region", + * // "remoteService": "my_remoteService", + * // "router": "my_router", + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "stackType": "my_stackType", + * // "state": "my_state", + * // "subnetLength": 0, + * // "type": "my_type", + * // "vlanTag8021q": 0 * // } * }, * }); @@ -109036,6 +113789,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -109073,31 +113827,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Interconnectgroups$Patch, + params: Params$Resource$Interconnectattachments$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Interconnectgroups$Patch, + params?: Params$Resource$Interconnectattachments$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Interconnectgroups$Patch, + params: Params$Resource$Interconnectattachments$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Interconnectgroups$Patch, + params: Params$Resource$Interconnectattachments$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Interconnectgroups$Patch, + params: Params$Resource$Interconnectattachments$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Patch + | Params$Resource$Interconnectattachments$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -109113,12 +113867,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Patch; + {}) as Params$Resource$Interconnectattachments$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Patch; + params = {} as Params$Resource$Interconnectattachments$Patch; options = {}; } @@ -109133,7 +113887,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}' + '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -109141,8 +113895,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], + requiredParams: ['project', 'region', 'interconnectAttachment'], + pathParams: ['interconnectAttachment', 'project', 'region'], context: this.context, }; if (callback) { @@ -109156,8 +113910,9 @@ export namespace compute_v1 { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Sets the labels on an InterconnectAttachment. To learn more about labels, + * read the Labeling + * Resources documentation. * @example * ```js * // Before running the sample: @@ -109189,20 +113944,35 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.setIamPolicy({ + * const res = await compute.interconnectAttachments.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} * // } * }, * }); @@ -109210,10 +113980,33 @@ export namespace compute_v1 { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -109229,53 +114022,53 @@ export namespace compute_v1 { * @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$Interconnectgroups$Setiampolicy, + setLabels( + params: Params$Resource$Interconnectattachments$Setlabels, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Interconnectgroups$Setiampolicy, + setLabels( + params?: Params$Resource$Interconnectattachments$Setlabels, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Interconnectgroups$Setiampolicy, + ): Promise>; + setLabels( + params: Params$Resource$Interconnectattachments$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Interconnectgroups$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Interconnectattachments$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Interconnectgroups$Setiampolicy, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Interconnectattachments$Setlabels, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Setiampolicy - | BodyResponseCallback + | Params$Resource$Interconnectattachments$Setlabels + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Setiampolicy; + {}) as Params$Resource$Interconnectattachments$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Setiampolicy; + params = {} as Params$Resource$Interconnectattachments$Setlabels; options = {}; } @@ -109290,7 +114083,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -109298,201 +114091,153 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Interconnectattachments$Aggregatedlist extends StandardParameters { /** - * Returns permissions that a caller has on the specified resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * 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. * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); + * 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 `:`. * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * 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:* + * ``` * - * // Do the magic - * const res = await compute.interconnectGroups.testIamPermissions({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * 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 onresource labels. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); + * 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) + * ``` * - * // Example response - * // { - * // "permissions": [] - * // } - * } + * 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: * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * `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 GoogleRE2 library syntax. + * The literal value must match the entire field. * - * @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. + * 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. */ - testIamPermissions( - params: Params$Resource$Interconnectgroups$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Interconnectgroups$Testiampermissions, - options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Interconnectgroups$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Interconnectgroups$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Interconnectgroups$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Interconnectgroups$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{resource}/testIamPermissions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Interconnectgroups$Createmembers extends StandardParameters { + filter?: string; /** - * Name of the group resource to create members for. + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. */ - interconnectGroup?: string; + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; /** * Project ID for this request. */ project?: string; - /** - * Request body metadata + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - requestBody?: Schema$InterconnectGroupsCreateMembersRequest; + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; } - export interface Params$Resource$Interconnectgroups$Delete extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Delete extends StandardParameters { /** - * Name of the InterconnectGroup resource to delete. + * Name of the interconnect attachment to delete. */ - interconnectGroup?: string; + interconnectAttachment?: string; /** * Project ID for this request. */ project?: string; + /** + * Name of the region for this request. + */ + region?: string; /** * 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 @@ -109507,49 +114252,32 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder */ requestId?: string; } - export interface Params$Resource$Interconnectgroups$Get extends StandardParameters { - /** - * Name of the InterconnectGroup resource to return. - */ - interconnectGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Interconnectgroups$Getiampolicy extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Get extends StandardParameters { /** - * Requested IAM Policy version. + * Name of the interconnect attachment to return. */ - optionsRequestedPolicyVersion?: number; + interconnectAttachment?: string; /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * Name of the region for this request. */ - resource?: string; + region?: string; } - export interface Params$Resource$Interconnectgroups$Getoperationalstatus extends StandardParameters { - /** - * Name of the interconnectGroup resource to query. - */ - interconnectGroup?: string; + export interface Params$Resource$Interconnectattachments$Insert extends StandardParameters { /** * Project ID for this request. */ project?: string; - } - export interface Params$Resource$Interconnectgroups$Insert extends StandardParameters { /** - * Project ID for this request. + * Name of the region for this request. */ - project?: string; + region?: string; /** * 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 @@ -109564,16 +114292,19 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder */ requestId?: string; + /** + * If true, the request will not be committed. + */ + validateOnly?: boolean; /** * Request body metadata */ - requestBody?: Schema$InterconnectGroup; + requestBody?: Schema$InterconnectAttachment; } - export interface Params$Resource$Interconnectgroups$List extends StandardParameters { + export interface Params$Resource$Interconnectattachments$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -109667,6 +114398,10 @@ export namespace compute_v1 { * Project ID for this request. */ project?: string; + /** + * Name of the region for this request. + */ + region?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -109677,15 +114412,19 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Interconnectgroups$Patch extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Patch extends StandardParameters { /** - * Name of the InterconnectGroup resource to patch. + * Name of the interconnect attachment to patch. */ - interconnectGroup?: string; + interconnectAttachment?: string; /** * Project ID for this request. */ project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; /** * 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 @@ -109700,39 +114439,39 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder */ requestId?: string; - /** - * The list of fields to update. - */ - updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$InterconnectGroup; + requestBody?: Schema$InterconnectAttachment; } - export interface Params$Resource$Interconnectgroups$Setiampolicy extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Setlabels extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata + * The region for this request. */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Interconnectgroups$Testiampermissions extends StandardParameters { + region?: string; /** - * Project ID for this request. + * 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. + * + * 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). */ - project?: string; + requestId?: string; /** * Name or id of the resource for this request. */ @@ -109741,18 +114480,18 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$RegionSetLabelsRequest; } - export class Resource$Interconnectlocations { + export class Resource$Interconnectgroups { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Returns the details for the specified interconnect location. Gets a list of - * available interconnect locations by making a list() request. + * Create Interconnects with redundancy by creating them in a specified + * interconnect group. * @example * ```js * // Before running the sample: @@ -109776,7 +114515,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -109785,37 +114523,52 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectLocations.get({ - * // Name of the interconnect location to return. - * interconnectLocation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.createMembers({ + * // Name of the group resource to create members for. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "request": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "address": "my_address", - * // "availabilityZone": "my_availabilityZone", - * // "availableFeatures": [], - * // "availableLinkTypes": [], - * // "city": "my_city", - * // "continent": "my_continent", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "crossSiteInterconnectInfos": [], * // "description": "my_description", - * // "facilityProvider": "my_facilityProvider", - * // "facilityProviderFacilityId": "my_facilityProviderFacilityId", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "peeringdbFacilityId": "my_peeringdbFacilityId", - * // "regionInfos": [], + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "singleRegionProductionCriticalPeerLocations": [], + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", * // "status": "my_status", - * // "supportsPzs": false + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -109831,55 +114584,53 @@ export namespace compute_v1 { * @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$Interconnectlocations$Get, + createMembers( + params: Params$Resource$Interconnectgroups$Createmembers, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Interconnectlocations$Get, + createMembers( + params?: Params$Resource$Interconnectgroups$Createmembers, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Interconnectlocations$Get, + ): Promise>; + createMembers( + params: Params$Resource$Interconnectgroups$Createmembers, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Interconnectlocations$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + createMembers( + params: Params$Resource$Interconnectgroups$Createmembers, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Interconnectlocations$Get, - callback: BodyResponseCallback + createMembers( + params: Params$Resource$Interconnectgroups$Createmembers, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + createMembers(callback: BodyResponseCallback): void; + createMembers( paramsOrCallback?: - | Params$Resource$Interconnectlocations$Get - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Createmembers + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectlocations$Get; + {}) as Params$Resource$Interconnectgroups$Createmembers; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectlocations$Get; + params = {} as Params$Resource$Interconnectgroups$Createmembers; options = {}; } @@ -109894,31 +114645,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectLocations/{interconnectLocation}' + '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}/createMembers' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnectLocation'], - pathParams: ['interconnectLocation', 'project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of interconnect locations available to the specified - * project. + * Deletes the specified InterconnectGroup in the given scope * @example * ```js * // Before running the sample: @@ -109942,7 +114692,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -109951,109 +114700,59 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectLocations.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.interconnectGroups.delete({ + * // Name of the InterconnectGroup resource to delete. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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). + * // end_interface: MixerMutationRequestBuilder + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -110069,55 +114768,53 @@ export namespace compute_v1 { * @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$Interconnectlocations$List, + delete( + params: Params$Resource$Interconnectgroups$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Interconnectlocations$List, + delete( + params?: Params$Resource$Interconnectgroups$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Interconnectlocations$List, + ): Promise>; + delete( + params: Params$Resource$Interconnectgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Interconnectlocations$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Interconnectgroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Interconnectlocations$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Interconnectgroups$Delete, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Interconnectlocations$List - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectlocations$List; + {}) as Params$Resource$Interconnectgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectlocations$List; + params = {} as Params$Resource$Interconnectgroups$Delete; options = {}; } @@ -110132,153 +114829,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectLocations' + '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Interconnectlocations$Get extends StandardParameters { - /** - * Name of the interconnect location to return. - */ - interconnectLocation?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Interconnectlocations$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - - export class Resource$Interconnectremotelocations { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Returns the details for the specified interconnect remote location. Gets a - * list of available interconnect remote locations by making alist() request. + * Returns the specified InterconnectGroup resource in the given scope. * @example * ```js * // Before running the sample: @@ -110311,10 +114885,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectRemoteLocations.get({ - * // Name of the interconnect remote location to return. - * interconnectRemoteLocation: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.get({ + * // Name of the InterconnectGroup resource to return. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -110323,27 +114896,17 @@ export namespace compute_v1 { * * // Example response * // { - * // "address": "my_address", - * // "attachmentConfigurationConstraints": {}, - * // "city": "my_city", - * // "constraints": {}, - * // "continent": "my_continent", + * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "facilityProvider": "my_facilityProvider", - * // "facilityProviderFacilityId": "my_facilityProviderFacilityId", + * // "etag": "my_etag", * // "id": "my_id", + * // "intent": {}, + * // "interconnects": {}, * // "kind": "my_kind", - * // "lacp": "my_lacp", - * // "maxLagSize100Gbps": 0, - * // "maxLagSize10Gbps": 0, - * // "maxLagSize400Gbps": 0, * // "name": "my_name", - * // "peeringdbFacilityId": "my_peeringdbFacilityId", - * // "permittedConnections": [], - * // "remoteService": "my_remoteService", - * // "selfLink": "my_selfLink", - * // "status": "my_status" + * // "physicalStructure": {}, + * // "selfLink": "my_selfLink" * // } * } * @@ -110360,56 +114923,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Interconnectremotelocations$Get, + params: Params$Resource$Interconnectgroups$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Interconnectremotelocations$Get, + params?: Params$Resource$Interconnectgroups$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Interconnectremotelocations$Get, + params: Params$Resource$Interconnectgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectremotelocations$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Interconnectremotelocations$Get, - callback: BodyResponseCallback + params: Params$Resource$Interconnectgroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + params: Params$Resource$Interconnectgroups$Get, + callback: BodyResponseCallback ): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Interconnectremotelocations$Get - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectremotelocations$Get; + {}) as Params$Resource$Interconnectgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectremotelocations$Get; + params = {} as Params$Resource$Interconnectgroups$Get; options = {}; } @@ -110424,7 +114983,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectRemoteLocations/{interconnectRemoteLocation}' + '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -110432,23 +114991,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'interconnectRemoteLocation'], - pathParams: ['interconnectRemoteLocation', 'project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of interconnect remote locations available to the - * specified project. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -110481,109 +115040,23 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectRemoteLocations.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.interconnectGroups.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -110599,57 +115072,53 @@ export namespace compute_v1 { * @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$Interconnectremotelocations$List, + getIamPolicy( + params: Params$Resource$Interconnectgroups$Getiampolicy, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Interconnectremotelocations$List, + getIamPolicy( + params?: Params$Resource$Interconnectgroups$Getiampolicy, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Interconnectremotelocations$List, + ): Promise>; + getIamPolicy( + params: Params$Resource$Interconnectgroups$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Interconnectremotelocations$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Interconnectremotelocations$List, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Interconnectgroups$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Interconnectgroups$Getiampolicy, + callback: BodyResponseCallback ): void; - list( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectremotelocations$List - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectremotelocations$List; + {}) as Params$Resource$Interconnectgroups$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectremotelocations$List; + params = {} as Params$Resource$Interconnectgroups$Getiampolicy; options = {}; } @@ -110664,7 +115133,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectRemoteLocations' + '/compute/v1/projects/{project}/global/interconnectGroups/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -110672,146 +115141,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Interconnectremotelocations$Get extends StandardParameters { - /** - * Name of the interconnect remote location to return. - */ - interconnectRemoteLocation?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Interconnectremotelocations$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - - export class Resource$Interconnects { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes the specified Interconnect. + * Returns the interconnectStatuses for the specified + * InterconnectGroup. * @example * ```js * // Before running the sample: @@ -110835,6 +115181,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -110843,57 +115190,19 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.delete({ - * // Name of the interconnect to delete. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.getOperationalStatus({ + * // Name of the interconnectGroup resource to query. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "etag": "my_etag", + * // "result": {} * // } * } * @@ -110909,53 +115218,61 @@ export namespace compute_v1 { * @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$Interconnects$Delete, + getOperationalStatus( + params: Params$Resource$Interconnectgroups$Getoperationalstatus, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Interconnects$Delete, + getOperationalStatus( + params?: Params$Resource$Interconnectgroups$Getoperationalstatus, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Interconnects$Delete, + ): Promise< + GaxiosResponseWithHTTP2 + >; + getOperationalStatus( + params: Params$Resource$Interconnectgroups$Getoperationalstatus, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Interconnects$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getOperationalStatus( + params: Params$Resource$Interconnectgroups$Getoperationalstatus, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Interconnects$Delete, - callback: BodyResponseCallback + getOperationalStatus( + params: Params$Resource$Interconnectgroups$Getoperationalstatus, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + getOperationalStatus( + callback: BodyResponseCallback + ): void; + getOperationalStatus( paramsOrCallback?: - | Params$Resource$Interconnects$Delete - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Getoperationalstatus + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Delete; + {}) as Params$Resource$Interconnectgroups$Getoperationalstatus; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Delete; + params = {} as Params$Resource$Interconnectgroups$Getoperationalstatus; options = {}; } @@ -110970,31 +115287,33 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{interconnect}' + '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}/getOperationalStatus' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Returns the specified Interconnect. Get a list of available Interconnects - * by making a list() request. + * Creates a InterconnectGroup in the specified project in the given scope + * using the parameters that are included in the request. * @example * ```js * // Before running the sample: @@ -111018,7 +115337,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -111027,53 +115345,75 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.get({ - * // Name of the interconnect to return. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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). + * // end_interface: MixerMutationRequestBuilder + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "configured": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "etag": "my_etag", + * // "id": "my_id", + * // "intent": {}, + * // "interconnects": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "physicalStructure": {}, + * // "selfLink": "my_selfLink" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "aaiEnabled": false, - * // "adminEnabled": false, - * // "applicationAwareInterconnect": {}, - * // "availableFeatures": [], - * // "circuitInfos": [], + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "customerName": "my_customerName", * // "description": "my_description", - * // "expectedOutages": [], - * // "googleIpAddress": "my_googleIpAddress", - * // "googleReferenceId": "my_googleReferenceId", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "interconnectAttachments": [], - * // "interconnectGroups": [], - * // "interconnectType": "my_interconnectType", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "linkType": "my_linkType", - * // "location": "my_location", - * // "macsec": {}, - * // "macsecEnabled": false, * // "name": "my_name", - * // "nocContactEmail": "my_nocContactEmail", - * // "operationalStatus": "my_operationalStatus", - * // "params": {}, - * // "peerIpAddress": "my_peerIpAddress", - * // "provisionedLinkCount": 0, - * // "remoteLocation": "my_remoteLocation", - * // "requestedFeatures": [], - * // "requestedLinkCount": 0, - * // "satisfiesPzs": false, + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "state": "my_state", - * // "subzone": "my_subzone", - * // "wireGroups": [] + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -111089,53 +115429,53 @@ export namespace compute_v1 { * @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$Interconnects$Get, + insert( + params: Params$Resource$Interconnectgroups$Insert, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Interconnects$Get, + insert( + params?: Params$Resource$Interconnectgroups$Insert, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Interconnects$Get, + ): Promise>; + insert( + params: Params$Resource$Interconnectgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Interconnects$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Interconnectgroups$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Interconnects$Get, - callback: BodyResponseCallback + insert( + params: Params$Resource$Interconnectgroups$Insert, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Interconnects$Get - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Get; + {}) as Params$Resource$Interconnectgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Get; + params = {} as Params$Resource$Interconnectgroups$Insert; options = {}; } @@ -111150,39 +115490,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{interconnect}' + '/compute/v1/projects/{project}/global/interconnectGroups' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the interconnectDiagnostics for the specified - * Interconnect. - * - * In the event of a - * global outage, do not use this API to make decisions about where to - * redirect your network traffic. - * - * Unlike a VLAN attachment, which is regional, a Cloud Interconnect - * connection is a global resource. A global outage can prevent this - * API from functioning properly. + * Lists the InterconnectGroups for a project in the given scope. * @example * ```js * // Before running the sample: @@ -111215,174 +115546,111 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.getDiagnostics({ - * // Name of the interconnect resource to query. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "result": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - getDiagnostics( - params: Params$Resource$Interconnects$Getdiagnostics, - options: StreamMethodOptions - ): Promise>; - getDiagnostics( - params?: Params$Resource$Interconnects$Getdiagnostics, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getDiagnostics( - params: Params$Resource$Interconnects$Getdiagnostics, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getDiagnostics( - params: Params$Resource$Interconnects$Getdiagnostics, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getDiagnostics( - params: Params$Resource$Interconnects$Getdiagnostics, - callback: BodyResponseCallback - ): void; - getDiagnostics( - callback: BodyResponseCallback - ): void; - getDiagnostics( - paramsOrCallback?: - | Params$Resource$Interconnects$Getdiagnostics - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Getdiagnostics; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Getdiagnostics; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{interconnect}/getDiagnostics' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Returns the interconnectMacsecConfig for the specified - * Interconnect. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.interconnects.getMacsecConfig({ - * // Name of the interconnect resource to query. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "etag": "my_etag", - * // "result": {} + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -111398,61 +115666,57 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getMacsecConfig( - params: Params$Resource$Interconnects$Getmacsecconfig, + list( + params: Params$Resource$Interconnectgroups$List, options: StreamMethodOptions ): Promise>; - getMacsecConfig( - params?: Params$Resource$Interconnects$Getmacsecconfig, + list( + params?: Params$Resource$Interconnectgroups$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getMacsecConfig( - params: Params$Resource$Interconnects$Getmacsecconfig, + ): Promise>; + list( + params: Params$Resource$Interconnectgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getMacsecConfig( - params: Params$Resource$Interconnects$Getmacsecconfig, + list( + params: Params$Resource$Interconnectgroups$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getMacsecConfig( - params: Params$Resource$Interconnects$Getmacsecconfig, - callback: BodyResponseCallback + list( + params: Params$Resource$Interconnectgroups$List, + callback: BodyResponseCallback ): void; - getMacsecConfig( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - getMacsecConfig( + list( paramsOrCallback?: - | Params$Resource$Interconnects$Getmacsecconfig - | BodyResponseCallback + | Params$Resource$Interconnectgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Getmacsecconfig; + {}) as Params$Resource$Interconnectgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Getmacsecconfig; + params = {} as Params$Resource$Interconnectgroups$List; options = {}; } @@ -111467,7 +115731,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{interconnect}/getMacsecConfig' + '/compute/v1/projects/{project}/global/interconnectGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -111475,25 +115739,27 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Creates an Interconnect in the specified project using - * the data included in the request. + * Patches the specified InterconnectGroup resource with the data included in + * the request. This method supports PATCH + * semantics and usesJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -111525,7 +115791,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.insert({ + * const res = await compute.interconnectGroups.patch({ + * // Name of the InterconnectGroup resource to patch. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -111542,48 +115810,26 @@ export namespace compute_v1 { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). + * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', + * // The list of fields to update. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "aaiEnabled": false, - * // "adminEnabled": false, - * // "applicationAwareInterconnect": {}, - * // "availableFeatures": [], - * // "circuitInfos": [], + * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", - * // "customerName": "my_customerName", * // "description": "my_description", - * // "expectedOutages": [], - * // "googleIpAddress": "my_googleIpAddress", - * // "googleReferenceId": "my_googleReferenceId", + * // "etag": "my_etag", * // "id": "my_id", - * // "interconnectAttachments": [], - * // "interconnectGroups": [], - * // "interconnectType": "my_interconnectType", + * // "intent": {}, + * // "interconnects": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "linkType": "my_linkType", - * // "location": "my_location", - * // "macsec": {}, - * // "macsecEnabled": false, * // "name": "my_name", - * // "nocContactEmail": "my_nocContactEmail", - * // "operationalStatus": "my_operationalStatus", - * // "params": {}, - * // "peerIpAddress": "my_peerIpAddress", - * // "provisionedLinkCount": 0, - * // "remoteLocation": "my_remoteLocation", - * // "requestedFeatures": [], - * // "requestedLinkCount": 0, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "state": "my_state", - * // "subzone": "my_subzone", - * // "wireGroups": [] + * // "physicalStructure": {}, + * // "selfLink": "my_selfLink" * // } * }, * }); @@ -111596,6 +115842,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -111632,32 +115879,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Interconnects$Insert, + patch( + params: Params$Resource$Interconnectgroups$Patch, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Interconnects$Insert, + patch( + params?: Params$Resource$Interconnectgroups$Patch, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Interconnects$Insert, + patch( + params: Params$Resource$Interconnectgroups$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Interconnects$Insert, + patch( + params: Params$Resource$Interconnectgroups$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Interconnects$Insert, + patch( + params: Params$Resource$Interconnectgroups$Patch, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Interconnects$Insert + | Params$Resource$Interconnectgroups$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -111673,12 +115920,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Insert; + {}) as Params$Resource$Interconnectgroups$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Insert; + params = {} as Params$Resource$Interconnectgroups$Patch; options = {}; } @@ -111692,16 +115939,17 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/interconnects' + rootUrl + + '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { @@ -111715,244 +115963,8 @@ export namespace compute_v1 { } /** - * Retrieves the list of Interconnects available to the specified project. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.interconnects.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Interconnects$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Interconnects$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Interconnects$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Interconnects$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Interconnects$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Interconnects$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/compute/v1/projects/{project}/global/interconnects' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates the specified Interconnect with the data included in the request. - * This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -111984,67 +115996,20 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.patch({ - * // Name of the interconnect to update. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "aaiEnabled": false, - * // "adminEnabled": false, - * // "applicationAwareInterconnect": {}, - * // "availableFeatures": [], - * // "circuitInfos": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "customerName": "my_customerName", - * // "description": "my_description", - * // "expectedOutages": [], - * // "googleIpAddress": "my_googleIpAddress", - * // "googleReferenceId": "my_googleReferenceId", - * // "id": "my_id", - * // "interconnectAttachments": [], - * // "interconnectGroups": [], - * // "interconnectType": "my_interconnectType", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "linkType": "my_linkType", - * // "location": "my_location", - * // "macsec": {}, - * // "macsecEnabled": false, - * // "name": "my_name", - * // "nocContactEmail": "my_nocContactEmail", - * // "operationalStatus": "my_operationalStatus", - * // "params": {}, - * // "peerIpAddress": "my_peerIpAddress", - * // "provisionedLinkCount": 0, - * // "remoteLocation": "my_remoteLocation", - * // "requestedFeatures": [], - * // "requestedLinkCount": 0, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "state": "my_state", - * // "subzone": "my_subzone", - * // "wireGroups": [] + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -112052,32 +116017,10 @@ export namespace compute_v1 { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -112093,53 +116036,53 @@ export namespace compute_v1 { * @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$Interconnects$Patch, + setIamPolicy( + params: Params$Resource$Interconnectgroups$Setiampolicy, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Interconnects$Patch, + setIamPolicy( + params?: Params$Resource$Interconnectgroups$Setiampolicy, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Interconnects$Patch, + ): Promise>; + setIamPolicy( + params: Params$Resource$Interconnectgroups$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Interconnects$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Interconnectgroups$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Interconnects$Patch, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Interconnectgroups$Setiampolicy, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnects$Patch - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Patch; + {}) as Params$Resource$Interconnectgroups$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Patch; + params = {} as Params$Resource$Interconnectgroups$Setiampolicy; options = {}; } @@ -112154,32 +116097,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{interconnect}' + '/compute/v1/projects/{project}/global/interconnectGroups/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the labels on an Interconnect. To learn more about labels, - * read the Labeling - * Resources documentation. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -112203,6 +116144,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -112211,7 +116153,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.setLabels({ + * const res = await compute.interconnectGroups.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -112222,8 +116164,7 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} + * // "permissions": [] * // } * }, * }); @@ -112231,32 +116172,7 @@ export namespace compute_v1 { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -112272,53 +116188,57 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Interconnects$Setlabels, + testIamPermissions( + params: Params$Resource$Interconnectgroups$Testiampermissions, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Interconnects$Setlabels, + testIamPermissions( + params?: Params$Resource$Interconnectgroups$Testiampermissions, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Interconnects$Setlabels, + ): Promise>; + testIamPermissions( + params: Params$Resource$Interconnectgroups$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Interconnects$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Interconnectgroups$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Interconnects$Setlabels, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Interconnectgroups$Testiampermissions, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Interconnects$Setlabels - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Setlabels; + {}) as Params$Resource$Interconnectgroups$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Setlabels; + params = {} as Params$Resource$Interconnectgroups$Testiampermissions; options = {}; } @@ -112333,7 +116253,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{resource}/setLabels' + '/compute/v1/projects/{project}/global/interconnectGroups/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -112346,21 +116266,36 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Interconnects$Delete extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Createmembers extends StandardParameters { /** - * Name of the interconnect to delete. + * Name of the group resource to create members for. */ - interconnect?: string; + interconnectGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InterconnectGroupsCreateMembersRequest; + } + export interface Params$Resource$Interconnectgroups$Delete extends StandardParameters { + /** + * Name of the InterconnectGroup resource to delete. + */ + interconnectGroup?: string; /** * Project ID for this request. */ @@ -112379,40 +116314,45 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; } - export interface Params$Resource$Interconnects$Get extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Get extends StandardParameters { /** - * Name of the interconnect to return. + * Name of the InterconnectGroup resource to return. */ - interconnect?: string; + interconnectGroup?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Interconnects$Getdiagnostics extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Getiampolicy extends StandardParameters { /** - * Name of the interconnect resource to query. + * Requested IAM Policy version. */ - interconnect?: string; + optionsRequestedPolicyVersion?: number; /** * Project ID for this request. */ project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; } - export interface Params$Resource$Interconnects$Getmacsecconfig extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Getoperationalstatus extends StandardParameters { /** - * Name of the interconnect resource to query. + * Name of the interconnectGroup resource to query. */ - interconnect?: string; + interconnectGroup?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Interconnects$Insert extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -112431,15 +116371,16 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; /** * Request body metadata */ - requestBody?: Schema$Interconnect; + requestBody?: Schema$InterconnectGroup; } - export interface Params$Resource$Interconnects$List extends StandardParameters { + export interface Params$Resource$Interconnectgroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -112543,11 +116484,11 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Interconnects$Patch extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Patch extends StandardParameters { /** - * Name of the interconnect to update. + * Name of the InterconnectGroup resource to patch. */ - interconnect?: string; + interconnectGroup?: string; /** * Project ID for this request. */ @@ -112566,15 +116507,20 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; + /** + * The list of fields to update. + */ + updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$Interconnect; + requestBody?: Schema$InterconnectGroup; } - export interface Params$Resource$Interconnects$Setlabels extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -112587,21 +116533,33 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$GlobalSetLabelsRequest; + requestBody?: Schema$GlobalSetPolicyRequest; } + export interface Params$Resource$Interconnectgroups$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - export class Resource$Licensecodes { + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Interconnectlocations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Return a specified license code. License codes are mirrored across - * all projects that have permissions to read the License Code. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Returns the details for the specified interconnect location. Gets a list of + * available interconnect locations by making a list() request. * @example * ```js * // Before running the sample: @@ -112634,9 +116592,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenseCodes.get({ - * // Number corresponding to the License code resource to return. - * licenseCode: '[0-9]{0,61}?', + * const res = await compute.interconnectLocations.get({ + * // Name of the interconnect location to return. + * interconnectLocation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -112645,15 +116603,26 @@ export namespace compute_v1 { * * // Example response * // { + * // "address": "my_address", + * // "availabilityZone": "my_availabilityZone", + * // "availableFeatures": [], + * // "availableLinkTypes": [], + * // "city": "my_city", + * // "continent": "my_continent", * // "creationTimestamp": "my_creationTimestamp", + * // "crossSiteInterconnectInfos": [], * // "description": "my_description", + * // "facilityProvider": "my_facilityProvider", + * // "facilityProviderFacilityId": "my_facilityProviderFacilityId", * // "id": "my_id", * // "kind": "my_kind", - * // "licenseAlias": [], * // "name": "my_name", + * // "peeringdbFacilityId": "my_peeringdbFacilityId", + * // "regionInfos": [], * // "selfLink": "my_selfLink", - * // "state": "my_state", - * // "transferable": false + * // "singleRegionProductionCriticalPeerLocations": [], + * // "status": "my_status", + * // "supportsPzs": false * // } * } * @@ -112670,51 +116639,54 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Licensecodes$Get, + params: Params$Resource$Interconnectlocations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Licensecodes$Get, + params?: Params$Resource$Interconnectlocations$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Licensecodes$Get, + params: Params$Resource$Interconnectlocations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Licensecodes$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Interconnectlocations$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Licensecodes$Get, - callback: BodyResponseCallback + params: Params$Resource$Interconnectlocations$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Licensecodes$Get - | BodyResponseCallback + | Params$Resource$Interconnectlocations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licensecodes$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectlocations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licensecodes$Get; + params = {} as Params$Resource$Interconnectlocations$Get; options = {}; } @@ -112729,7 +116701,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/licenseCodes/{licenseCode}' + '/compute/v1/projects/{project}/global/interconnectLocations/{interconnectLocation}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -112737,25 +116709,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'licenseCode'], - pathParams: ['licenseCode', 'project'], + requiredParams: ['project', 'interconnectLocation'], + pathParams: ['interconnectLocation', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Retrieves the list of interconnect locations available to the specified + * project. * @example * ```js * // Before running the sample: @@ -112788,26 +116758,109 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenseCodes.testIamPermissions({ + * const res = await compute.interconnectLocations.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -112823,57 +116876,55 @@ export namespace compute_v1 { * @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$Licensecodes$Testiampermissions, + list( + params: Params$Resource$Interconnectlocations$List, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Licensecodes$Testiampermissions, + list( + params?: Params$Resource$Interconnectlocations$List, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, + ): Promise>; + list( + params: Params$Resource$Interconnectlocations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, + list( + params: Params$Resource$Interconnectlocations$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + list( + params: Params$Resource$Interconnectlocations$List, + callback: BodyResponseCallback ): void; - testIamPermissions( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Licensecodes$Testiampermissions - | BodyResponseCallback + | Params$Resource$Interconnectlocations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licensecodes$Testiampermissions; + {}) as Params$Resource$Interconnectlocations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licensecodes$Testiampermissions; + params = {} as Params$Resource$Interconnectlocations$List; options = {}; } @@ -112888,66 +116939,153 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/licenseCodes/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/interconnectLocations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Licensecodes$Get extends StandardParameters { + export interface Params$Resource$Interconnectlocations$Get extends StandardParameters { /** - * Number corresponding to the License code resource to return. + * Name of the interconnect location to return. */ - licenseCode?: string; + interconnectLocation?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Licensecodes$Testiampermissions extends StandardParameters { + export interface Params$Resource$Interconnectlocations$List extends StandardParameters { /** - * Project ID for this request. + * 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 onresource 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 GoogleRE2 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. */ - project?: string; + filter?: string; /** - * Name or id of the resource for this request. + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) */ - resource?: string; - + maxResults?: number; /** - * Request body metadata + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - requestBody?: Schema$TestPermissionsRequest; + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; } - export class Resource$Licenses { + export class Resource$Interconnectremotelocations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified license. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Returns the details for the specified interconnect remote location. Gets a + * list of available interconnect remote locations by making alist() request. * @example * ```js * // Before running the sample: @@ -112971,6 +117109,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -112979,57 +117118,39 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.delete({ - * // Name of the license resource to delete. - * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectRemoteLocations.get({ + * // Name of the interconnect remote location to return. + * interconnectRemoteLocation: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "address": "my_address", + * // "attachmentConfigurationConstraints": {}, + * // "city": "my_city", + * // "constraints": {}, + * // "continent": "my_continent", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "facilityProvider": "my_facilityProvider", + * // "facilityProviderFacilityId": "my_facilityProviderFacilityId", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", + * // "lacp": "my_lacp", + * // "maxLagSize100Gbps": 0, + * // "maxLagSize10Gbps": 0, + * // "maxLagSize400Gbps": 0, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "peeringdbFacilityId": "my_peeringdbFacilityId", + * // "permittedConnections": [], + * // "remoteService": "my_remoteService", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "status": "my_status" * // } * } * @@ -113045,52 +117166,57 @@ export namespace compute_v1 { * @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$Licenses$Delete, + get( + params: Params$Resource$Interconnectremotelocations$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Licenses$Delete, + get( + params?: Params$Resource$Interconnectremotelocations$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Licenses$Delete, + ): Promise>; + get( + params: Params$Resource$Interconnectremotelocations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Licenses$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Interconnectremotelocations$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Licenses$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Interconnectremotelocations$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get( + callback: BodyResponseCallback + ): void; + get( paramsOrCallback?: - | Params$Resource$Licenses$Delete - | BodyResponseCallback + | Params$Resource$Interconnectremotelocations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Delete; + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectremotelocations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Delete; + params = {} as Params$Resource$Interconnectremotelocations$Get; options = {}; } @@ -113105,33 +117231,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/licenses/{license}' + '/compute/v1/projects/{project}/global/interconnectRemoteLocations/{interconnectRemoteLocation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'license'], - pathParams: ['license', 'project'], + requiredParams: ['project', 'interconnectRemoteLocation'], + pathParams: ['interconnectRemoteLocation', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified License resource. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Retrieves the list of interconnect remote locations available to the + * specified project. * @example * ```js * // Before running the sample: @@ -113164,39 +117288,109 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.get({ - * // Name of the License resource to return. - * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectRemoteLocations.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "allowedReplacementLicenses": [], - * // "appendableToDisk": false, - * // "chargesUseFee": false, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", * // "id": "my_id", - * // "incompatibleLicenses": [], + * // "items": [], * // "kind": "my_kind", - * // "licenseCode": "my_licenseCode", - * // "minimumRetention": {}, - * // "multiTenantOnly": false, - * // "name": "my_name", - * // "osLicense": false, - * // "params": {}, - * // "removableFromDisk": false, - * // "requiredCoattachedLicenses": [], - * // "resourceRequirements": {}, + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "soleTenantOnly": false, - * // "transferable": false, - * // "updateTimestamp": "my_updateTimestamp" + * // "warning": {} * // } * } * @@ -113212,52 +117406,57 @@ export namespace compute_v1 { * @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$Licenses$Get, + list( + params: Params$Resource$Interconnectremotelocations$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Licenses$Get, + list( + params?: Params$Resource$Interconnectremotelocations$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Licenses$Get, + ): Promise>; + list( + params: Params$Resource$Interconnectremotelocations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Licenses$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Interconnectremotelocations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Licenses$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Interconnectremotelocations$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Licenses$Get - | BodyResponseCallback + | Params$Resource$Interconnectremotelocations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectremotelocations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Get; + params = {} as Params$Resource$Interconnectremotelocations$List; options = {}; } @@ -113272,7 +117471,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/licenses/{license}' + '/compute/v1/projects/{project}/global/interconnectRemoteLocations' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -113280,26 +117479,146 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'license'], - pathParams: ['license', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Interconnectremotelocations$Get extends StandardParameters { /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Name of the interconnect remote location to return. + */ + interconnectRemoteLocation?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Interconnectremotelocations$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Interconnects { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified Interconnect. * @example * ```js * // Before running the sample: @@ -113323,7 +117642,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -113332,23 +117650,58 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.interconnects.delete({ + * // Name of the interconnect to delete. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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. + * // + * // 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: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -113364,53 +117717,53 @@ export namespace compute_v1 { * @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$Licenses$Getiampolicy, + delete( + params: Params$Resource$Interconnects$Delete, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Licenses$Getiampolicy, + delete( + params?: Params$Resource$Interconnects$Delete, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Licenses$Getiampolicy, + ): Promise>; + delete( + params: Params$Resource$Interconnects$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Licenses$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Interconnects$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Licenses$Getiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Interconnects$Delete, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Licenses$Getiampolicy - | BodyResponseCallback + | Params$Resource$Interconnects$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licenses$Getiampolicy; + {}) as Params$Resource$Interconnects$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Getiampolicy; + params = {} as Params$Resource$Interconnects$Delete; options = {}; } @@ -113425,33 +117778,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/licenses/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/global/interconnects/{interconnect}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Create a License resource in the specified project. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Returns the specified Interconnect. Get a list of available Interconnects + * by making a list() request. * @example * ```js * // Before running the sample: @@ -113475,9 +117826,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/devstorage.full_control', - * 'https://www.googleapis.com/auth/devstorage.read_only', - * 'https://www.googleapis.com/auth/devstorage.read_write', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -113486,84 +117835,53 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.insert({ + * const res = await compute.interconnects.get({ + * // Name of the interconnect to return. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allowedReplacementLicenses": [], - * // "appendableToDisk": false, - * // "chargesUseFee": false, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "id": "my_id", - * // "incompatibleLicenses": [], - * // "kind": "my_kind", - * // "licenseCode": "my_licenseCode", - * // "minimumRetention": {}, - * // "multiTenantOnly": false, - * // "name": "my_name", - * // "osLicense": false, - * // "params": {}, - * // "removableFromDisk": false, - * // "requiredCoattachedLicenses": [], - * // "resourceRequirements": {}, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "soleTenantOnly": false, - * // "transferable": false, - * // "updateTimestamp": "my_updateTimestamp" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "aaiEnabled": false, + * // "adminEnabled": false, + * // "applicationAwareInterconnect": {}, + * // "availableFeatures": [], + * // "circuitInfos": [], * // "creationTimestamp": "my_creationTimestamp", + * // "customerName": "my_customerName", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "expectedOutages": [], + * // "googleIpAddress": "my_googleIpAddress", + * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "interconnectAttachments": [], + * // "interconnectGroups": [], + * // "interconnectType": "my_interconnectType", * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "linkType": "my_linkType", + * // "location": "my_location", + * // "macsec": {}, + * // "macsecEnabled": false, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nocContactEmail": "my_nocContactEmail", + * // "operationalStatus": "my_operationalStatus", + * // "params": {}, + * // "peerIpAddress": "my_peerIpAddress", + * // "provisionedLinkCount": 0, + * // "remoteLocation": "my_remoteLocation", + * // "requestedFeatures": [], + * // "requestedLinkCount": 0, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "state": "my_state", + * // "subzone": "my_subzone", + * // "wireGroups": [] * // } * } * @@ -113579,52 +117897,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Licenses$Insert, + get( + params: Params$Resource$Interconnects$Get, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Licenses$Insert, + get( + params?: Params$Resource$Interconnects$Get, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Licenses$Insert, + ): Promise>; + get( + params: Params$Resource$Interconnects$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Licenses$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Interconnects$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Licenses$Insert, - callback: BodyResponseCallback + get( + params: Params$Resource$Interconnects$Get, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Licenses$Insert - | BodyResponseCallback + | Params$Resource$Interconnects$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Insert; + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnects$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Insert; + params = {} as Params$Resource$Interconnects$Get; options = {}; } @@ -113638,38 +117957,40 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/licenses' + rootUrl + + '/compute/v1/projects/{project}/global/interconnects/{interconnect}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of licenses - * available in the specified project. This method does not - * get any licenses that belong to other projects, including licenses attached - * to publicly-available images, like Debian 9. If you want to get a list of - * publicly-available licenses, use this method to make a request to the - * respective image project, such as debian-cloud orwindows-cloud. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Returns the interconnectDiagnostics for the specified + * Interconnect. + * + * In the event of a + * global outage, do not use this API to make decisions about where to + * redirect your network traffic. + * + * Unlike a VLAN attachment, which is regional, a Cloud Interconnect + * connection is a global resource. A global outage can prevent this + * API from functioning properly. * @example * ```js * // Before running the sample: @@ -113702,108 +118023,18 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.interconnects.getDiagnostics({ + * // Name of the interconnect resource to query. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "result": {} * // } * } * @@ -113819,54 +118050,61 @@ export namespace compute_v1 { * @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$Licenses$List, + getDiagnostics( + params: Params$Resource$Interconnects$Getdiagnostics, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Licenses$List, + getDiagnostics( + params?: Params$Resource$Interconnects$Getdiagnostics, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Licenses$List, + ): Promise< + GaxiosResponseWithHTTP2 + >; + getDiagnostics( + params: Params$Resource$Interconnects$Getdiagnostics, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Licenses$List, + getDiagnostics( + params: Params$Resource$Interconnects$Getdiagnostics, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Licenses$List, - callback: BodyResponseCallback + getDiagnostics( + params: Params$Resource$Interconnects$Getdiagnostics, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + getDiagnostics( + callback: BodyResponseCallback + ): void; + getDiagnostics( paramsOrCallback?: - | Params$Resource$Licenses$List - | BodyResponseCallback + | Params$Resource$Interconnects$Getdiagnostics + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnects$Getdiagnostics; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$List; + params = {} as Params$Resource$Interconnects$Getdiagnostics; options = {}; } @@ -113880,7 +118118,8 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/licenses' + rootUrl + + '/compute/v1/projects/{project}/global/interconnects/{interconnect}/getDiagnostics' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -113888,26 +118127,25 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Returns the interconnectMacsecConfig for the specified + * Interconnect. * @example * ```js * // Before running the sample: @@ -113931,6 +118169,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -113939,31 +118178,19 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.setIamPolicy({ + * const res = await compute.interconnects.getMacsecConfig({ + * // Name of the interconnect resource to query. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], * // "etag": "my_etag", - * // "version": 0 + * // "result": {} * // } * } * @@ -113979,53 +118206,61 @@ export namespace compute_v1 { * @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$Licenses$Setiampolicy, + getMacsecConfig( + params: Params$Resource$Interconnects$Getmacsecconfig, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Licenses$Setiampolicy, + getMacsecConfig( + params?: Params$Resource$Interconnects$Getmacsecconfig, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Licenses$Setiampolicy, + ): Promise< + GaxiosResponseWithHTTP2 + >; + getMacsecConfig( + params: Params$Resource$Interconnects$Getmacsecconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Licenses$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getMacsecConfig( + params: Params$Resource$Interconnects$Getmacsecconfig, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Licenses$Setiampolicy, - callback: BodyResponseCallback + getMacsecConfig( + params: Params$Resource$Interconnects$Getmacsecconfig, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + getMacsecConfig( + callback: BodyResponseCallback + ): void; + getMacsecConfig( paramsOrCallback?: - | Params$Resource$Licenses$Setiampolicy - | BodyResponseCallback + | Params$Resource$Interconnects$Getmacsecconfig + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licenses$Setiampolicy; + {}) as Params$Resource$Interconnects$Getmacsecconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Setiampolicy; + params = {} as Params$Resource$Interconnects$Getmacsecconfig; options = {}; } @@ -114040,33 +118275,33 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/licenses/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/global/interconnects/{interconnect}/getMacsecConfig' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Returns permissions that a caller has on the specified resource. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Creates an Interconnect in the specified project using + * the data included in the request. * @example * ```js * // Before running the sample: @@ -114090,7 +118325,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -114099,18 +118333,65 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.testIamPermissions({ + * const res = await compute.interconnects.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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. + * // + * // 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: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "aaiEnabled": false, + * // "adminEnabled": false, + * // "applicationAwareInterconnect": {}, + * // "availableFeatures": [], + * // "circuitInfos": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "customerName": "my_customerName", + * // "description": "my_description", + * // "expectedOutages": [], + * // "googleIpAddress": "my_googleIpAddress", + * // "googleReferenceId": "my_googleReferenceId", + * // "id": "my_id", + * // "interconnectAttachments": [], + * // "interconnectGroups": [], + * // "interconnectType": "my_interconnectType", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "linkType": "my_linkType", + * // "location": "my_location", + * // "macsec": {}, + * // "macsecEnabled": false, + * // "name": "my_name", + * // "nocContactEmail": "my_nocContactEmail", + * // "operationalStatus": "my_operationalStatus", + * // "params": {}, + * // "peerIpAddress": "my_peerIpAddress", + * // "provisionedLinkCount": 0, + * // "remoteLocation": "my_remoteLocation", + * // "requestedFeatures": [], + * // "requestedLinkCount": 0, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "state": "my_state", + * // "subzone": "my_subzone", + * // "wireGroups": [] * // } * }, * }); @@ -114118,7 +118399,33 @@ export namespace compute_v1 { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -114134,57 +118441,287 @@ export namespace compute_v1 { * @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$Licenses$Testiampermissions, + insert( + params: Params$Resource$Interconnects$Insert, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Licenses$Testiampermissions, + insert( + params?: Params$Resource$Interconnects$Insert, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Licenses$Testiampermissions, + ): Promise>; + insert( + params: Params$Resource$Interconnects$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Licenses$Testiampermissions, - options: + insert( + params: Params$Resource$Interconnects$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Interconnects$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Interconnects$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnects$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Interconnects$Insert; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/projects/{project}/global/interconnects' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the list of Interconnects available to the specified project. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.interconnects.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Interconnects$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Interconnects$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Interconnects$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Licenses$Testiampermissions, - callback: BodyResponseCallback + list( + params: Params$Resource$Interconnects$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + list( + params: Params$Resource$Interconnects$List, + callback: BodyResponseCallback ): void; - testIamPermissions( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Licenses$Testiampermissions - | BodyResponseCallback + | Params$Resource$Interconnects$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licenses$Testiampermissions; + {}) as Params$Resource$Interconnects$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Testiampermissions; + params = {} as Params$Resource$Interconnects$List; options = {}; } @@ -114198,34 +118735,33 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/licenses/{resource}/testIamPermissions' + rootUrl + '/compute/v1/projects/{project}/global/interconnects' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a License resource in the specified project. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Updates the specified Interconnect with the data included in the request. + * This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -114257,9 +118793,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.update({ - * // The license name for this request. - * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnects.patch({ + * // Name of the interconnect to update. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -114277,35 +118813,47 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "allowedReplacementLicenses": [], - * // "appendableToDisk": false, - * // "chargesUseFee": false, + * // "aaiEnabled": false, + * // "adminEnabled": false, + * // "applicationAwareInterconnect": {}, + * // "availableFeatures": [], + * // "circuitInfos": [], * // "creationTimestamp": "my_creationTimestamp", + * // "customerName": "my_customerName", * // "description": "my_description", + * // "expectedOutages": [], + * // "googleIpAddress": "my_googleIpAddress", + * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", - * // "incompatibleLicenses": [], + * // "interconnectAttachments": [], + * // "interconnectGroups": [], + * // "interconnectType": "my_interconnectType", * // "kind": "my_kind", - * // "licenseCode": "my_licenseCode", - * // "minimumRetention": {}, - * // "multiTenantOnly": false, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "linkType": "my_linkType", + * // "location": "my_location", + * // "macsec": {}, + * // "macsecEnabled": false, * // "name": "my_name", - * // "osLicense": false, + * // "nocContactEmail": "my_nocContactEmail", + * // "operationalStatus": "my_operationalStatus", * // "params": {}, - * // "removableFromDisk": false, - * // "requiredCoattachedLicenses": [], - * // "resourceRequirements": {}, + * // "peerIpAddress": "my_peerIpAddress", + * // "provisionedLinkCount": 0, + * // "remoteLocation": "my_remoteLocation", + * // "requestedFeatures": [], + * // "requestedLinkCount": 0, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "soleTenantOnly": false, - * // "transferable": false, - * // "updateTimestamp": "my_updateTimestamp" + * // "state": "my_state", + * // "subzone": "my_subzone", + * // "wireGroups": [] * // } * }, * }); @@ -114318,6 +118866,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -114354,32 +118903,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Licenses$Update, + patch( + params: Params$Resource$Interconnects$Patch, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Licenses$Update, + patch( + params?: Params$Resource$Interconnects$Patch, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Licenses$Update, + patch( + params: Params$Resource$Interconnects$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Licenses$Update, + patch( + params: Params$Resource$Interconnects$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Licenses$Update, + patch( + params: Params$Resource$Interconnects$Patch, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Licenses$Update + | Params$Resource$Interconnects$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -114394,12 +118943,13 @@ export namespace compute_v1 { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Update; + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnects$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Update; + params = {} as Params$Resource$Interconnects$Patch; options = {}; } @@ -114414,7 +118964,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/licenses/{license}' + '/compute/v1/projects/{project}/global/interconnects/{interconnect}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -114422,8 +118972,188 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'license'], - pathParams: ['license', 'project'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the labels on an Interconnect. To learn more about labels, + * read the Labeling + * Resources documentation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.interconnects.setLabels({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + setLabels( + params: Params$Resource$Interconnects$Setlabels, + options: StreamMethodOptions + ): Promise>; + setLabels( + params?: Params$Resource$Interconnects$Setlabels, + options?: MethodOptions + ): Promise>; + setLabels( + params: Params$Resource$Interconnects$Setlabels, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Interconnects$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Interconnects$Setlabels, + callback: BodyResponseCallback + ): void; + setLabels(callback: BodyResponseCallback): void; + setLabels( + paramsOrCallback?: + | Params$Resource$Interconnects$Setlabels + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnects$Setlabels; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Interconnects$Setlabels; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/interconnects/{resource}/setLabels' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -114437,11 +119167,11 @@ export namespace compute_v1 { } } - export interface Params$Resource$Licenses$Delete extends StandardParameters { + export interface Params$Resource$Interconnects$Delete extends StandardParameters { /** - * Name of the license resource to delete. + * Name of the interconnect to delete. */ - license?: string; + interconnect?: string; /** * Project ID for this request. */ @@ -114463,31 +119193,37 @@ export namespace compute_v1 { */ requestId?: string; } - export interface Params$Resource$Licenses$Get extends StandardParameters { + export interface Params$Resource$Interconnects$Get extends StandardParameters { /** - * Name of the License resource to return. + * Name of the interconnect to return. */ - license?: string; + interconnect?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Licenses$Getiampolicy extends StandardParameters { + export interface Params$Resource$Interconnects$Getdiagnostics extends StandardParameters { /** - * Requested IAM Policy version. + * Name of the interconnect resource to query. */ - optionsRequestedPolicyVersion?: number; + interconnect?: string; /** * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Interconnects$Getmacsecconfig extends StandardParameters { /** - * Name or id of the resource for this request. + * Name of the interconnect resource to query. */ - resource?: string; + interconnect?: string; + /** + * Project ID for this request. + */ + project?: string; } - export interface Params$Resource$Licenses$Insert extends StandardParameters { + export interface Params$Resource$Interconnects$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -114512,9 +119248,9 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$License; + requestBody?: Schema$Interconnect; } - export interface Params$Resource$Licenses$List extends StandardParameters { + export interface Params$Resource$Interconnects$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -114618,41 +119354,11 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Licenses$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Licenses$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - export interface Params$Resource$Licenses$Update extends StandardParameters { + export interface Params$Resource$Interconnects$Patch extends StandardParameters { /** - * The license name for this request. + * Name of the interconnect to update. */ - license?: string; + interconnect?: string; /** * Project ID for this request. */ @@ -114673,27 +119379,41 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** - * update_mask indicates fields to be updated as part of this request. + * Request body metadata */ - updateMask?: string; + requestBody?: Schema$Interconnect; + } + export interface Params$Resource$Interconnects$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; /** * Request body metadata */ - requestBody?: Schema$License; + requestBody?: Schema$GlobalSetLabelsRequest; } - export class Resource$Machineimages { + export class Resource$Licensecodes { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified machine image. Deleting a machine image is permanent - * and cannot be undone. - * @example + * Return a specified license code. License codes are mirrored across + * all projects that have permissions to read the License Code. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. + * @example * ```js * // Before running the sample: * // - Enable the API at: @@ -114716,6 +119436,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -114724,9 +119445,706 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.delete({ - * // The name of the machine image to delete. - * machineImage: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenseCodes.get({ + * // Number corresponding to the License code resource to return. + * licenseCode: '[0-9]{0,61}?', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "incompatibleLicenses": [], + * // "kind": "my_kind", + * // "licenseAlias": [], + * // "minimumRetention": {}, + * // "multiTenantOnly": false, + * // "name": "my_name", + * // "osLicense": false, + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], + * // "selfLink": "my_selfLink", + * // "soleTenantOnly": false, + * // "state": "my_state", + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Licensecodes$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Licensecodes$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Licensecodes$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Licensecodes$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Licensecodes$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Licensecodes$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Licensecodes$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Licensecodes$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/licenseCodes/{licenseCode}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'licenseCode'], + pathParams: ['licenseCode', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.licenseCodes.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Licensecodes$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Licensecodes$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Licensecodes$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Licensecodes$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Licensecodes$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Licensecodes$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Licensecodes$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Licensecodes$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/licenseCodes/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', '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. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.licenseCodes.setIamPolicy({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Licensecodes$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Licensecodes$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Licensecodes$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Licensecodes$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Licensecodes$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/licenseCodes/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', '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. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.licenseCodes.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Licensecodes$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Licensecodes$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Licensecodes$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Licensecodes$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Licensecodes$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/licenseCodes/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Licensecodes$Get extends StandardParameters { + /** + * Number corresponding to the License code resource to return. + */ + licenseCode?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Licensecodes$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Licensecodes$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Licensecodes$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Licenses { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified license. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.licenses.delete({ + * // Name of the license resource to delete. + * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -114754,6 +120172,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -114791,31 +120210,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Machineimages$Delete, + params: Params$Resource$Licenses$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Machineimages$Delete, + params?: Params$Resource$Licenses$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Machineimages$Delete, + params: Params$Resource$Licenses$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Machineimages$Delete, + params: Params$Resource$Licenses$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Machineimages$Delete, + params: Params$Resource$Licenses$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Machineimages$Delete + | Params$Resource$Licenses$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -114830,13 +120249,12 @@ export namespace compute_v1 { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Delete; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Delete; + params = {} as Params$Resource$Licenses$Delete; options = {}; } @@ -114851,7 +120269,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/machineImages/{machineImage}' + '/compute/v1/projects/{project}/global/licenses/{license}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -114859,8 +120277,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'machineImage'], - pathParams: ['machineImage', 'project'], + requiredParams: ['project', 'license'], + pathParams: ['license', 'project'], context: this.context, }; if (callback) { @@ -114874,7 +120292,10 @@ export namespace compute_v1 { } /** - * Returns the specified machine image. + * Returns the specified License resource. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -114907,9 +120328,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.get({ - * // The name of the machine image. - * machineImage: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenses.get({ + * // Name of the License resource to return. + * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -114918,27 +120339,28 @@ export namespace compute_v1 { * * // Example response * // { + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, + * // "chargesUseFee": false, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "guestFlush": false, * // "id": "my_id", - * // "instanceProperties": {}, + * // "incompatibleLicenses": [], * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "machineImageEncryptionKey": {}, + * // "licenseCode": "my_licenseCode", + * // "minimumRetention": {}, + * // "multiTenantOnly": false, * // "name": "my_name", + * // "osLicense": false, * // "params": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "savedDisks": [], + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], + * // "resourceRequirements": {}, * // "selfLink": "my_selfLink", - * // "sourceDiskEncryptionKeys": [], - * // "sourceInstance": "my_sourceInstance", - * // "sourceInstanceProperties": {}, - * // "status": "my_status", - * // "storageLocations": [], - * // "totalStorageBytes": "my_totalStorageBytes" + * // "selfLinkWithId": "my_selfLinkWithId", + * // "soleTenantOnly": false, + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -114955,52 +120377,51 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Machineimages$Get, + params: Params$Resource$Licenses$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Machineimages$Get, + params?: Params$Resource$Licenses$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Machineimages$Get, + params: Params$Resource$Licenses$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Machineimages$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Licenses$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Machineimages$Get, - callback: BodyResponseCallback + params: Params$Resource$Licenses$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Machineimages$Get - | BodyResponseCallback + | Params$Resource$Licenses$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Get; + params = {} as Params$Resource$Licenses$Get; options = {}; } @@ -115015,7 +120436,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/machineImages/{machineImage}' + '/compute/v1/projects/{project}/global/licenses/{license}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -115023,23 +120444,26 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'machineImage'], - pathParams: ['machineImage', 'project'], + requiredParams: ['project', 'license'], + pathParams: ['license', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** * Gets the access control policy for a resource. May be empty if no such * policy or resource exists. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -115072,7 +120496,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.getIamPolicy({ + * const res = await compute.licenses.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. @@ -115105,31 +120529,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Machineimages$Getiampolicy, + params: Params$Resource$Licenses$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Machineimages$Getiampolicy, + params?: Params$Resource$Licenses$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Machineimages$Getiampolicy, + params: Params$Resource$Licenses$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Machineimages$Getiampolicy, + params: Params$Resource$Licenses$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Machineimages$Getiampolicy, + params: Params$Resource$Licenses$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Machineimages$Getiampolicy + | Params$Resource$Licenses$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -115145,12 +120569,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Getiampolicy; + {}) as Params$Resource$Licenses$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Getiampolicy; + params = {} as Params$Resource$Licenses$Getiampolicy; options = {}; } @@ -115165,7 +120589,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/machineImages/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/global/licenses/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -115188,11 +120612,10 @@ export namespace compute_v1 { } /** - * Creates a machine image in the specified project using the - * data that is included in the request. If you are creating a new machine - * image to update an existing instance, your new machine image should use the - * same network or, if applicable, the same subnetwork as the original - * instance. + * Create a License resource in the specified project. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -115216,6 +120639,9 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/devstorage.full_control', + * 'https://www.googleapis.com/auth/devstorage.read_only', + * 'https://www.googleapis.com/auth/devstorage.read_write', * ], * }); * @@ -115224,7 +120650,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.insert({ + * const res = await compute.licenses.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -115242,34 +120668,33 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Required. Source instance that is used to create the machine image from. - * sourceInstance: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, + * // "chargesUseFee": false, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "guestFlush": false, * // "id": "my_id", - * // "instanceProperties": {}, + * // "incompatibleLicenses": [], * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "machineImageEncryptionKey": {}, + * // "licenseCode": "my_licenseCode", + * // "minimumRetention": {}, + * // "multiTenantOnly": false, * // "name": "my_name", + * // "osLicense": false, * // "params": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "savedDisks": [], + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], + * // "resourceRequirements": {}, * // "selfLink": "my_selfLink", - * // "sourceDiskEncryptionKeys": [], - * // "sourceInstance": "my_sourceInstance", - * // "sourceInstanceProperties": {}, - * // "status": "my_status", - * // "storageLocations": [], - * // "totalStorageBytes": "my_totalStorageBytes" + * // "selfLinkWithId": "my_selfLinkWithId", + * // "soleTenantOnly": false, + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -115282,6 +120707,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -115319,31 +120745,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Machineimages$Insert, + params: Params$Resource$Licenses$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Machineimages$Insert, + params?: Params$Resource$Licenses$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Machineimages$Insert, + params: Params$Resource$Licenses$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Machineimages$Insert, + params: Params$Resource$Licenses$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Machineimages$Insert, + params: Params$Resource$Licenses$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Machineimages$Insert + | Params$Resource$Licenses$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -115358,13 +120784,12 @@ export namespace compute_v1 { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Insert; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Insert; + params = {} as Params$Resource$Licenses$Insert; options = {}; } @@ -115378,7 +120803,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/machineImages' + rootUrl + '/compute/v1/projects/{project}/global/licenses' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -115401,8 +120826,15 @@ export namespace compute_v1 { } /** - * Retrieves a list of machine images that are contained within - * the specified project. + * Retrieves the list of licenses + * available in the specified project. This method does not + * get any licenses that belong to other projects, including licenses attached + * to publicly-available images, like Debian 9. If you want to get a list of + * publicly-available licenses, use this method to make a request to the + * respective image project, such as debian-cloud orwindows-cloud. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -115435,7 +120867,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.list({ + * const res = await compute.licenses.list({ * // 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 @@ -115534,7 +120966,6 @@ export namespace compute_v1 { * // { * // "id": "my_id", * // "items": [], - * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", * // "warning": {} @@ -115554,52 +120985,53 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Machineimages$List, + params: Params$Resource$Licenses$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Machineimages$List, + params?: Params$Resource$Licenses$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Machineimages$List, + params: Params$Resource$Licenses$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Machineimages$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Licenses$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Machineimages$List, - callback: BodyResponseCallback + params: Params$Resource$Licenses$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Machineimages$List - | BodyResponseCallback + | Params$Resource$Licenses$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$List; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$List; + params = {} as Params$Resource$Licenses$List; options = {}; } @@ -115613,7 +121045,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/machineImages' + rootUrl + '/compute/v1/projects/{project}/global/licenses' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -115626,18 +121058,21 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** * Sets the access control policy on the specified resource. * Replaces any existing policy. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -115669,7 +121104,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.setIamPolicy({ + * const res = await compute.licenses.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -115710,31 +121145,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Machineimages$Setiampolicy, + params: Params$Resource$Licenses$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Machineimages$Setiampolicy, + params?: Params$Resource$Licenses$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Machineimages$Setiampolicy, + params: Params$Resource$Licenses$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Machineimages$Setiampolicy, + params: Params$Resource$Licenses$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Machineimages$Setiampolicy, + params: Params$Resource$Licenses$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Machineimages$Setiampolicy + | Params$Resource$Licenses$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -115750,12 +121185,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Setiampolicy; + {}) as Params$Resource$Licenses$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Setiampolicy; + params = {} as Params$Resource$Licenses$Setiampolicy; options = {}; } @@ -115770,7 +121205,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/machineImages/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/global/licenses/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -115793,8 +121228,10 @@ export namespace compute_v1 { } /** - * Sets the labels on a machine image. To learn more about labels, read theLabeling - * Resources documentation. + * Returns permissions that a caller has on the specified resource. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -115818,6 +121255,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -115826,7 +121264,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.setLabels({ + * const res = await compute.licenses.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -115837,8 +121275,7 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} + * // "permissions": [] * // } * }, * }); @@ -115846,32 +121283,7 @@ export namespace compute_v1 { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -115887,53 +121299,57 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Machineimages$Setlabels, + testIamPermissions( + params: Params$Resource$Licenses$Testiampermissions, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Machineimages$Setlabels, + testIamPermissions( + params?: Params$Resource$Licenses$Testiampermissions, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Machineimages$Setlabels, + ): Promise>; + testIamPermissions( + params: Params$Resource$Licenses$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Machineimages$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setLabels( - params: Params$Resource$Machineimages$Setlabels, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Licenses$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + testIamPermissions( + params: Params$Resource$Licenses$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Machineimages$Setlabels - | BodyResponseCallback + | Params$Resource$Licenses$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Setlabels; + {}) as Params$Resource$Licenses$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Setlabels; + params = {} as Params$Resource$Licenses$Testiampermissions; options = {}; } @@ -115948,7 +121364,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/machineImages/{resource}/setLabels' + '/compute/v1/projects/{project}/global/licenses/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -115961,17 +121377,20 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Updates a License resource in the specified project. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -115995,7 +121414,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -116004,18 +121422,55 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.testIamPermissions({ + * const res = await compute.licenses.update({ + * // The license name for this request. + * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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. + * // + * // 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: 'placeholder-value', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, + * // "chargesUseFee": false, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "incompatibleLicenses": [], + * // "kind": "my_kind", + * // "licenseCode": "my_licenseCode", + * // "minimumRetention": {}, + * // "multiTenantOnly": false, + * // "name": "my_name", + * // "osLicense": false, + * // "params": {}, + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], + * // "resourceRequirements": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "soleTenantOnly": false, + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -116023,7 +121478,33 @@ export namespace compute_v1 { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -116039,57 +121520,52 @@ export namespace compute_v1 { * @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$Machineimages$Testiampermissions, + update( + params: Params$Resource$Licenses$Update, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Machineimages$Testiampermissions, + update( + params?: Params$Resource$Licenses$Update, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Machineimages$Testiampermissions, + ): Promise>; + update( + params: Params$Resource$Licenses$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Machineimages$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Machineimages$Testiampermissions, - callback: BodyResponseCallback + update( + params: Params$Resource$Licenses$Update, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + update( + params: Params$Resource$Licenses$Update, + callback: BodyResponseCallback ): void; - testIamPermissions( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Machineimages$Testiampermissions - | BodyResponseCallback + | Params$Resource$Licenses$Update + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Testiampermissions; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Testiampermissions; + params = {} as Params$Resource$Licenses$Update; options = {}; } @@ -116104,34 +121580,34 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/machineImages/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/licenses/{license}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'license'], + pathParams: ['license', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Machineimages$Delete extends StandardParameters { + export interface Params$Resource$Licenses$Delete extends StandardParameters { /** - * The name of the machine image to delete. + * Name of the license resource to delete. */ - machineImage?: string; + license?: string; /** * Project ID for this request. */ @@ -116153,17 +121629,17 @@ export namespace compute_v1 { */ requestId?: string; } - export interface Params$Resource$Machineimages$Get extends StandardParameters { + export interface Params$Resource$Licenses$Get extends StandardParameters { /** - * The name of the machine image. + * Name of the License resource to return. */ - machineImage?: string; + license?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Machineimages$Getiampolicy extends StandardParameters { + export interface Params$Resource$Licenses$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -116177,7 +121653,7 @@ export namespace compute_v1 { */ resource?: string; } - export interface Params$Resource$Machineimages$Insert extends StandardParameters { + export interface Params$Resource$Licenses$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -116198,17 +121674,13 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * Required. Source instance that is used to create the machine image from. - */ - sourceInstance?: string; /** * Request body metadata */ - requestBody?: Schema$MachineImage; + requestBody?: Schema$License; } - export interface Params$Resource$Machineimages$List extends StandardParameters { + export interface Params$Resource$Licenses$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -116312,7 +121784,7 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Machineimages$Setiampolicy extends StandardParameters { + export interface Params$Resource$Licenses$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -116327,7 +121799,7 @@ export namespace compute_v1 { */ requestBody?: Schema$GlobalSetPolicyRequest; } - export interface Params$Resource$Machineimages$Setlabels extends StandardParameters { + export interface Params$Resource$Licenses$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -116340,35 +121812,53 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$GlobalSetLabelsRequest; + requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Machineimages$Testiampermissions extends StandardParameters { + export interface Params$Resource$Licenses$Update extends StandardParameters { + /** + * The license name for this request. + */ + license?: string; /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * 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. + * + * 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). */ - resource?: string; + requestId?: string; + /** + * update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$License; } - export class Resource$Machinetypes { + export class Resource$Machineimages { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of machine types. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Deletes the specified machine image. Deleting a machine image is permanent + * and cannot be undone. * @example * ```js * // Before running the sample: @@ -116392,7 +121882,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -116401,121 +121890,58 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineTypes.aggregatedList({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.machineImages.delete({ + * // The name of the machine image to delete. + * machineImage: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // 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: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -116531,57 +121957,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Machinetypes$Aggregatedlist, + delete( + params: Params$Resource$Machineimages$Delete, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Machinetypes$Aggregatedlist, + delete( + params?: Params$Resource$Machineimages$Delete, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Machinetypes$Aggregatedlist, + ): Promise>; + delete( + params: Params$Resource$Machineimages$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Machinetypes$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Machinetypes$Aggregatedlist, - callback: BodyResponseCallback + delete( + params: Params$Resource$Machineimages$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + delete( + params: Params$Resource$Machineimages$Delete, + callback: BodyResponseCallback ): void; - aggregatedList( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Machinetypes$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Machineimages$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machinetypes$Aggregatedlist; + {}) as Params$Resource$Machineimages$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machinetypes$Aggregatedlist; + params = {} as Params$Resource$Machineimages$Delete; options = {}; } @@ -116595,30 +122017,31 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/aggregated/machineTypes' + rootUrl + + '/compute/v1/projects/{project}/global/machineImages/{machineImage}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'machineImage'], + pathParams: ['machineImage', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified machine type. + * Returns the specified machine image. * @example * ```js * // Before running the sample: @@ -116651,36 +122074,38 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineTypes.get({ - * // Name of the machine type to return. - * machineType: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.machineImages.get({ + * // The name of the machine image. + * machineImage: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "accelerators": [], - * // "architecture": "my_architecture", - * // "bundledLocalSsds": {}, * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", - * // "guestCpus": 0, + * // "guestFlush": false, * // "id": "my_id", - * // "imageSpaceGb": 0, - * // "isSharedCpu": false, + * // "instanceProperties": {}, * // "kind": "my_kind", - * // "maximumPersistentDisks": 0, - * // "maximumPersistentDisksSizeGb": "my_maximumPersistentDisksSizeGb", - * // "memoryMb": 0, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "machineImageEncryptionKey": {}, * // "name": "my_name", + * // "params": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "savedDisks": [], * // "selfLink": "my_selfLink", - * // "zone": "my_zone" + * // "sourceDiskEncryptionKeys": [], + * // "sourceInstance": "my_sourceInstance", + * // "sourceInstanceProperties": {}, + * // "status": "my_status", + * // "storageLocations": [], + * // "totalStorageBytes": "my_totalStorageBytes" * // } * } * @@ -116697,51 +122122,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Machinetypes$Get, + params: Params$Resource$Machineimages$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Machinetypes$Get, + params?: Params$Resource$Machineimages$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Machinetypes$Get, + params: Params$Resource$Machineimages$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Machinetypes$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Machineimages$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Machinetypes$Get, - callback: BodyResponseCallback + params: Params$Resource$Machineimages$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Machinetypes$Get - | BodyResponseCallback + | Params$Resource$Machineimages$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Machinetypes$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Machineimages$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machinetypes$Get; + params = {} as Params$Resource$Machineimages$Get; options = {}; } @@ -116756,7 +122182,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/machineTypes/{machineType}' + '/compute/v1/projects/{project}/global/machineImages/{machineImage}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -116764,23 +122190,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'machineType'], - pathParams: ['machineType', 'project', 'zone'], + requiredParams: ['project', 'machineImage'], + pathParams: ['machineImage', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of machine types available to the specified - * project. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -116813,7 +122239,371 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineTypes.list({ + * const res = await compute.machineImages.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Machineimages$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Machineimages$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Machineimages$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Machineimages$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Machineimages$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Machineimages$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Machineimages$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Machineimages$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/machineImages/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a machine image in the specified project using the + * data that is included in the request. If you are creating a new machine + * image to update an existing instance, your new machine image should use the + * same network or, if applicable, the same subnetwork as the original + * instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.machineImages.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // Required. Source instance that is used to create the machine image from. + * sourceInstance: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "guestFlush": false, + * // "id": "my_id", + * // "instanceProperties": {}, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "machineImageEncryptionKey": {}, + * // "name": "my_name", + * // "params": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "savedDisks": [], + * // "selfLink": "my_selfLink", + * // "sourceDiskEncryptionKeys": [], + * // "sourceInstance": "my_sourceInstance", + * // "sourceInstanceProperties": {}, + * // "status": "my_status", + * // "storageLocations": [], + * // "totalStorageBytes": "my_totalStorageBytes" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + insert( + params: Params$Resource$Machineimages$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Machineimages$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Machineimages$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Machineimages$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Machineimages$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Machineimages$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Machineimages$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Machineimages$Insert; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/projects/{project}/global/machineImages' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a list of machine images that are contained within + * the specified project. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.machineImages.list({ * // 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 @@ -116905,8 +122695,6 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -116934,52 +122722,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Machinetypes$List, + params: Params$Resource$Machineimages$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Machinetypes$List, + params?: Params$Resource$Machineimages$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Machinetypes$List, + params: Params$Resource$Machineimages$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Machinetypes$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Machineimages$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Machinetypes$List, - callback: BodyResponseCallback + params: Params$Resource$Machineimages$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Machinetypes$List - | BodyResponseCallback + | Params$Resource$Machineimages$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machinetypes$List; + {}) as Params$Resource$Machineimages$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machinetypes$List; + params = {} as Params$Resource$Machineimages$List; options = {}; } @@ -116993,8 +122781,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/machineTypes' + rootUrl + '/compute/v1/projects/{project}/global/machineImages' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -117002,155 +122789,595 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Machinetypes$Aggregatedlist 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. - * 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`. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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:* - * ``` + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * 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 onresource labels. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); * - * 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) - * ``` + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * 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: + * // Do the magic + * const res = await compute.machineImages.setIamPolicy({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, + * }); + * console.log(res.data); * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. + * ``` + * + * @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. */ - includeAllScopes?: boolean; + setIamPolicy( + params: Params$Resource$Machineimages$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Machineimages$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Machineimages$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Machineimages$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Machineimages$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Machineimages$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Machineimages$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Machineimages$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/machineImages/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) + * Sets the labels on a machine image. To learn more about labels, read theLabeling + * Resources documentation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.machineImages.setLabels({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - maxResults?: number; + setLabels( + params: Params$Resource$Machineimages$Setlabels, + options: StreamMethodOptions + ): Promise>; + setLabels( + params?: Params$Resource$Machineimages$Setlabels, + options?: MethodOptions + ): Promise>; + setLabels( + params: Params$Resource$Machineimages$Setlabels, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Machineimages$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Machineimages$Setlabels, + callback: BodyResponseCallback + ): void; + setLabels(callback: BodyResponseCallback): void; + setLabels( + paramsOrCallback?: + | Params$Resource$Machineimages$Setlabels + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Machineimages$Setlabels; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Machineimages$Setlabels; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/machineImages/{resource}/setLabels' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.machineImages.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - orderBy?: string; + testIamPermissions( + params: Params$Resource$Machineimages$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Machineimages$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Machineimages$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Machineimages$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Machineimages$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Machineimages$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Machineimages$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Machineimages$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/machineImages/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Machineimages$Delete extends StandardParameters { /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * The name of the machine image to delete. */ - pageToken?: string; + machineImage?: string; /** * Project ID for this request. */ project?: string; /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * 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. * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. + * 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). */ - returnPartialSuccess?: boolean; + requestId?: string; + } + export interface Params$Resource$Machineimages$Get extends StandardParameters { /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. + * The name of the machine image. */ - serviceProjectNumber?: string; + machineImage?: string; + /** + * Project ID for this request. + */ + project?: string; } - export interface Params$Resource$Machinetypes$Get extends StandardParameters { + export interface Params$Resource$Machineimages$Getiampolicy extends StandardParameters { /** - * Name of the machine type to return. + * Requested IAM Policy version. */ - machineType?: string; + optionsRequestedPolicyVersion?: number; /** * Project ID for this request. */ project?: string; /** - * The name of the zone for this request. + * Name or id of the resource for this request. */ - zone?: string; + resource?: string; } - export interface Params$Resource$Machinetypes$List extends StandardParameters { + export interface Params$Resource$Machineimages$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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. Source instance that is used to create the machine image from. + */ + sourceInstance?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$MachineImage; + } + export interface Params$Resource$Machineimages$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -117253,21 +123480,61 @@ export namespace compute_v1 { * with an error code. */ returnPartialSuccess?: boolean; + } + export interface Params$Resource$Machineimages$Setiampolicy extends StandardParameters { /** - * The name of the zone for this request. + * Project ID for this request. */ - zone?: string; + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Machineimages$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetLabelsRequest; + } + export interface Params$Resource$Machineimages$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Networkattachments { + export class Resource$Machinetypes { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves the list of all NetworkAttachment resources, - * regional and global, available to the specified project. + * Retrieves an aggregated list of machine types. * * To prevent failure, Google recommends that you set the * `returnPartialSuccess` parameter to `true`. @@ -117303,7 +123570,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.aggregatedList({ + * const res = await compute.machineTypes.aggregatedList({ * // 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 @@ -117416,6 +123683,7 @@ export namespace compute_v1 { * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -117433,56 +123701,56 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Networkattachments$Aggregatedlist, + params: Params$Resource$Machinetypes$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Networkattachments$Aggregatedlist, + params?: Params$Resource$Machinetypes$Aggregatedlist, options?: MethodOptions - ): Promise>; + ): Promise>; aggregatedList( - params: Params$Resource$Networkattachments$Aggregatedlist, + params: Params$Resource$Machinetypes$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Networkattachments$Aggregatedlist, + params: Params$Resource$Machinetypes$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Networkattachments$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Machinetypes$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Networkattachments$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Machinetypes$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Aggregatedlist; + {}) as Params$Resource$Machinetypes$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Aggregatedlist; + params = {} as Params$Resource$Machinetypes$Aggregatedlist; options = {}; } @@ -117496,8 +123764,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/aggregated/networkAttachments' + rootUrl + '/compute/v1/projects/{project}/aggregated/machineTypes' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -117510,19 +123777,17 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Deletes the specified NetworkAttachment in the given scope + * Returns the specified machine type. * @example * ```js * // Before running the sample: @@ -117546,6 +123811,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -117554,59 +123820,35 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.delete({ - * // Name of the NetworkAttachment resource to delete. - * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.machineTypes.get({ + * // Name of the machine type to return. + * machineType: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region of this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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). - * // end_interface: MixerMutationRequestBuilder - * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "accelerators": [], + * // "architecture": "my_architecture", + * // "bundledLocalSsds": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "guestCpus": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "imageSpaceGb": 0, + * // "isSharedCpu": false, * // "kind": "my_kind", + * // "maximumPersistentDisks": 0, + * // "maximumPersistentDisksSizeGb": "my_maximumPersistentDisksSizeGb", + * // "memoryMb": 0, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -117623,53 +123865,52 @@ export namespace compute_v1 { * @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$Networkattachments$Delete, + get( + params: Params$Resource$Machinetypes$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Networkattachments$Delete, + get( + params?: Params$Resource$Machinetypes$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Networkattachments$Delete, + ): Promise>; + get( + params: Params$Resource$Machinetypes$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networkattachments$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Machinetypes$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networkattachments$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Machinetypes$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Networkattachments$Delete - | BodyResponseCallback + | Params$Resource$Machinetypes$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Delete; + let params = (paramsOrCallback || {}) as Params$Resource$Machinetypes$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Delete; + params = {} as Params$Resource$Machinetypes$Get; options = {}; } @@ -117684,30 +123925,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' + '/compute/v1/projects/{project}/zones/{zone}/machineTypes/{machineType}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'networkAttachment'], - pathParams: ['networkAttachment', 'project', 'region'], + requiredParams: ['project', 'zone', 'machineType'], + pathParams: ['machineType', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified NetworkAttachment resource in the given scope. + * Retrieves a list of machine types available to the specified + * project. * @example * ```js * // Before running the sample: @@ -117740,34 +123982,111 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.get({ - * // Name of the NetworkAttachment resource to return. - * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.machineTypes.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region of this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "connectionEndpoints": [], - * // "connectionPreference": "my_connectionPreference", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", * // "id": "my_id", + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "network": "my_network", - * // "producerAcceptLists": [], - * // "producerRejectLists": [], - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] + * // "warning": {} * // } * } * @@ -117783,53 +124102,53 @@ export namespace compute_v1 { * @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$Networkattachments$Get, + list( + params: Params$Resource$Machinetypes$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Networkattachments$Get, + list( + params?: Params$Resource$Machinetypes$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Networkattachments$Get, + ): Promise>; + list( + params: Params$Resource$Machinetypes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Networkattachments$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Machinetypes$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Networkattachments$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Machinetypes$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Networkattachments$Get - | BodyResponseCallback + | Params$Resource$Machinetypes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Get; + {}) as Params$Resource$Machinetypes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Get; + params = {} as Params$Resource$Machinetypes$List; options = {}; } @@ -117844,7 +124163,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' + '/compute/v1/projects/{project}/zones/{zone}/machineTypes' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -117852,87 +124171,938 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'networkAttachment'], - pathParams: ['networkAttachment', 'project', 'region'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Machinetypes$Aggregatedlist extends StandardParameters { /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); + * 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. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * 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 `:`. * - * // Do the magic - * const res = await compute.networkAttachments.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * }); - * console.log(res.data); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } + * 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:* + * ``` * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * 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 onresource labels. * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: * ``` - * - * @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. + * (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 GoogleRE2 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; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Machinetypes$Get extends StandardParameters { + /** + * Name of the machine type to return. + */ + machineType?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Machinetypes$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of the zone for this request. + */ + zone?: string; + } + + export class Resource$Networkattachments { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the list of all NetworkAttachment resources, + * regional and global, available to the specified project. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkAttachments.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + aggregatedList( + params: Params$Resource$Networkattachments$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Networkattachments$Aggregatedlist, + options?: MethodOptions + ): Promise>; + aggregatedList( + params: Params$Resource$Networkattachments$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Networkattachments$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Networkattachments$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Networkattachments$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkattachments$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkattachments$Aggregatedlist; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/aggregated/networkAttachments' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Deletes the specified NetworkAttachment in the given scope + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkAttachments.delete({ + * // Name of the NetworkAttachment resource to delete. + * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region of this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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). + * // end_interface: MixerMutationRequestBuilder + * requestId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Networkattachments$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Networkattachments$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Networkattachments$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Networkattachments$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Networkattachments$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Networkattachments$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkattachments$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkattachments$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'networkAttachment'], + pathParams: ['networkAttachment', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the specified NetworkAttachment resource in the given scope. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkAttachments.get({ + * // Name of the NetworkAttachment resource to return. + * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region of this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "connectionEndpoints": [], + * // "connectionPreference": "my_connectionPreference", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "network": "my_network", + * // "producerAcceptLists": [], + * // "producerRejectLists": [], + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "subnetworks": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Networkattachments$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Networkattachments$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Networkattachments$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Networkattachments$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Networkattachments$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Networkattachments$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkattachments$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkattachments$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'networkAttachment'], + pathParams: ['networkAttachment', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkAttachments.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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( @@ -118105,6 +125275,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -118554,6 +125725,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -119723,6 +126895,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -120085,6 +127258,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -120291,6 +127465,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -120994,6 +128169,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -121186,6 +128362,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -121381,6 +128558,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -121776,6 +128954,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -123160,6 +130339,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -123370,6 +130550,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -123583,6 +130764,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -124029,6 +131211,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -124211,6 +131394,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -125203,6 +132387,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -125641,6 +132826,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -125847,6 +133033,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -126056,6 +133243,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -126240,6 +133428,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -126425,6 +133614,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -126612,6 +133802,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -128355,6 +135546,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -128474,6 +135666,201 @@ export namespace compute_v1 { } } + /** + * Cancel requests to remove a peering from the specified network. Applicable + * only for PeeringConnection with update_strategy=CONSENSUS. Cancels a + * request to remove a peering from the specified network. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networks.cancelRequestRemovePeering({ + * // Name of the network resource to remove peering from. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "name": "my_name" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + cancelRequestRemovePeering( + params: Params$Resource$Networks$Cancelrequestremovepeering, + options: StreamMethodOptions + ): Promise>; + cancelRequestRemovePeering( + params?: Params$Resource$Networks$Cancelrequestremovepeering, + options?: MethodOptions + ): Promise>; + cancelRequestRemovePeering( + params: Params$Resource$Networks$Cancelrequestremovepeering, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancelRequestRemovePeering( + params: Params$Resource$Networks$Cancelrequestremovepeering, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancelRequestRemovePeering( + params: Params$Resource$Networks$Cancelrequestremovepeering, + callback: BodyResponseCallback + ): void; + cancelRequestRemovePeering( + callback: BodyResponseCallback + ): void; + cancelRequestRemovePeering( + paramsOrCallback?: + | Params$Resource$Networks$Cancelrequestremovepeering + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networks$Cancelrequestremovepeering; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networks$Cancelrequestremovepeering; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/networks/{network}/cancelRequestRemovePeering' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Deletes the specified network. * @example @@ -128537,6 +135924,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -129061,6 +136449,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -129750,6 +137139,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -129939,6 +137329,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -130130,6 +137521,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -130314,6 +137706,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -130506,6 +137899,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -130657,6 +138051,37 @@ export namespace compute_v1 { */ requestBody?: Schema$NetworksAddPeeringRequest; } + export interface Params$Resource$Networks$Cancelrequestremovepeering extends StandardParameters { + /** + * Name of the network resource to remove peering from. + */ + network?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworksCancelRequestRemovePeeringRequest; + } export interface Params$Resource$Networks$Delete extends StandardParameters { /** * Name of the network to delete. @@ -131185,6 +138610,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -131623,6 +139049,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -131815,6 +139242,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -132340,6 +139768,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -133022,6 +140451,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -133214,6 +140644,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -133565,6 +140996,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -133758,6 +141190,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -135049,6 +142482,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -135568,6 +143002,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -137590,6 +145025,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -137792,6 +145228,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -137978,6 +145415,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -138161,6 +145599,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -138854,6 +146293,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -139676,6 +147116,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -139886,6 +147327,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -140090,6 +147532,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -140276,6 +147719,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -140463,6 +147907,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -141425,6 +148870,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -141786,6 +149232,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -142231,6 +149678,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -143339,6 +150787,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -143672,6 +151121,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -143860,6 +151310,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -144039,6 +151490,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -144228,6 +151680,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -145223,6 +152676,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -145418,6 +152872,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -145608,6 +153063,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -145798,6 +153254,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -145990,6 +153447,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -146185,6 +153643,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -146861,6 +154320,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -147044,6 +154504,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -147408,6 +154869,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -147855,6 +155317,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -148037,6 +155500,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -148741,6 +156205,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -148925,6 +156390,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -149298,6 +156764,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -149751,6 +157218,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -149936,6 +157404,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -150527,6 +157996,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -150890,6 +158360,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -151338,6 +158809,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -151702,6 +159174,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -152095,14 +159568,14 @@ export namespace compute_v1 { requestBody?: Schema$Autoscaler; } - export class Resource$Regionbackendservices { + export class Resource$Regionbackendbuckets { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified regional BackendService resource. + * Deletes the specified regional BackendBucket resource. * @example * ```js * // Before running the sample: @@ -152134,9 +159607,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionBackendServices.delete({ - * // Name of the BackendService resource to delete. - * backendService: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionBackendBuckets.delete({ + * // Name of the BackendBucket resource to delete. + * backendBucket: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -152155,6 +159628,7 @@ export namespace compute_v1 { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). + * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', * }); * console.log(res.data); @@ -152166,6 +159640,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -152203,31 +159678,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Regionbackendservices$Delete, + params: Params$Resource$Regionbackendbuckets$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Regionbackendservices$Delete, + params?: Params$Resource$Regionbackendbuckets$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Regionbackendservices$Delete, + params: Params$Resource$Regionbackendbuckets$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regionbackendservices$Delete, + params: Params$Resource$Regionbackendbuckets$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regionbackendservices$Delete, + params: Params$Resource$Regionbackendbuckets$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Regionbackendservices$Delete + | Params$Resource$Regionbackendbuckets$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -152243,12 +159718,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionbackendservices$Delete; + {}) as Params$Resource$Regionbackendbuckets$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionbackendservices$Delete; + params = {} as Params$Resource$Regionbackendbuckets$Delete; options = {}; } @@ -152263,7 +159738,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}' + '/compute/v1/projects/{project}/regions/{region}/backendBuckets/{backendBucket}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -152271,8 +159746,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'backendService'], - pathParams: ['backendService', 'project', 'region'], + requiredParams: ['project', 'region', 'backendBucket'], + pathParams: ['backendBucket', 'project', 'region'], context: this.context, }; if (callback) { @@ -152286,7 +159761,7 @@ export namespace compute_v1 { } /** - * Returns the specified regional BackendService resource. + * Returns the specified regional BackendBucket resource. * @example * ```js * // Before running the sample: @@ -152319,9 +159794,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionBackendServices.get({ - * // Name of the BackendService resource to return. - * backendService: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionBackendBuckets.get({ + * // Name of the BackendBucket resource to return. + * backendBucket: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -152332,57 +159807,21 @@ export namespace compute_v1 { * * // Example response * // { - * // "affinityCookieTtlSec": 0, - * // "backends": [], + * // "bucketName": "my_bucketName", * // "cdnPolicy": {}, - * // "circuitBreakers": {}, * // "compressionMode": "my_compressionMode", - * // "connectionDraining": {}, - * // "connectionTrackingPolicy": {}, - * // "consistentHash": {}, * // "creationTimestamp": "my_creationTimestamp", - * // "customMetrics": [], - * // "customRequestHeaders": [], * // "customResponseHeaders": [], * // "description": "my_description", * // "edgeSecurityPolicy": "my_edgeSecurityPolicy", - * // "enableCDN": false, - * // "externalManagedMigrationState": "my_externalManagedMigrationState", - * // "externalManagedMigrationTestingPercentage": {}, - * // "failoverPolicy": {}, - * // "fingerprint": "my_fingerprint", - * // "haPolicy": {}, - * // "healthChecks": [], - * // "iap": {}, + * // "enableCdn": false, * // "id": "my_id", - * // "ipAddressSelectionPolicy": "my_ipAddressSelectionPolicy", * // "kind": "my_kind", * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "localityLbPolicies": [], - * // "localityLbPolicy": "my_localityLbPolicy", - * // "logConfig": {}, - * // "maxStreamDuration": {}, - * // "metadatas": {}, * // "name": "my_name", - * // "network": "my_network", - * // "networkPassThroughLbTrafficPolicy": {}, - * // "orchestrationInfo": {}, - * // "outlierDetection": {}, * // "params": {}, - * // "port": 0, - * // "portName": "my_portName", - * // "protocol": "my_protocol", * // "region": "my_region", - * // "securityPolicy": "my_securityPolicy", - * // "securitySettings": {}, * // "selfLink": "my_selfLink", - * // "serviceBindings": [], - * // "serviceLbPolicy": "my_serviceLbPolicy", - * // "sessionAffinity": "my_sessionAffinity", - * // "strongSessionAffinityCookie": {}, - * // "subsetting": {}, - * // "timeoutSec": 0, - * // "tlsSettings": {}, * // "usedBy": [] * // } * } @@ -152400,52 +159839,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regionbackendservices$Get, + params: Params$Resource$Regionbackendbuckets$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regionbackendservices$Get, + params?: Params$Resource$Regionbackendbuckets$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regionbackendservices$Get, + params: Params$Resource$Regionbackendbuckets$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionbackendservices$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regionbackendbuckets$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionbackendservices$Get, - callback: BodyResponseCallback + params: Params$Resource$Regionbackendbuckets$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regionbackendservices$Get - | BodyResponseCallback + | Params$Resource$Regionbackendbuckets$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionbackendservices$Get; + {}) as Params$Resource$Regionbackendbuckets$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionbackendservices$Get; + params = {} as Params$Resource$Regionbackendbuckets$Get; options = {}; } @@ -152460,7 +159899,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}' + '/compute/v1/projects/{project}/regions/{region}/backendBuckets/{backendBucket}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -152468,23 +159907,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'backendService'], - pathParams: ['backendService', 'project', 'region'], + requiredParams: ['project', 'region', 'backendBucket'], + pathParams: ['backendBucket', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the most recent health check results for this - * regional BackendService. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -152517,168 +159956,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionBackendServices.getHealth({ - * // Name of the BackendService resource for which to get health. - * backendService: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "group": "my_group" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "annotations": {}, - * // "healthStatus": [], - * // "kind": "my_kind" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - getHealth( - params: Params$Resource$Regionbackendservices$Gethealth, - options: StreamMethodOptions - ): Promise>; - getHealth( - params?: Params$Resource$Regionbackendservices$Gethealth, - options?: MethodOptions - ): Promise>; - getHealth( - params: Params$Resource$Regionbackendservices$Gethealth, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getHealth( - params: Params$Resource$Regionbackendservices$Gethealth, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getHealth( - params: Params$Resource$Regionbackendservices$Gethealth, - callback: BodyResponseCallback - ): void; - getHealth( - callback: BodyResponseCallback - ): void; - getHealth( - paramsOrCallback?: - | Params$Resource$Regionbackendservices$Gethealth - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regionbackendservices$Gethealth; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Regionbackendservices$Gethealth; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}/getHealth' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'backendService'], - pathParams: ['backendService', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.regionBackendServices.getIamPolicy({ + * const res = await compute.regionBackendBuckets.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. @@ -152713,31 +159991,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Regionbackendservices$Getiampolicy, + params: Params$Resource$Regionbackendbuckets$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Regionbackendservices$Getiampolicy, + params?: Params$Resource$Regionbackendbuckets$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Regionbackendservices$Getiampolicy, + params: Params$Resource$Regionbackendbuckets$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Regionbackendservices$Getiampolicy, + params: Params$Resource$Regionbackendbuckets$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Regionbackendservices$Getiampolicy, + params: Params$Resource$Regionbackendbuckets$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Regionbackendservices$Getiampolicy + | Params$Resource$Regionbackendbuckets$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -152753,12 +160031,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionbackendservices$Getiampolicy; + {}) as Params$Resource$Regionbackendbuckets$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionbackendservices$Getiampolicy; + params = {} as Params$Resource$Regionbackendbuckets$Getiampolicy; options = {}; } @@ -152773,7 +160051,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/backendServices/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/backendBuckets/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -152796,9 +160074,8 @@ export namespace compute_v1 { } /** - * Creates a regional BackendService resource in the specified project using - * the data included in the request. For more information, see - * Backend services overview. + * Creates a RegionBackendBucket in the specified project in the given scope + * using the parameters that are included in the request. * @example * ```js * // Before running the sample: @@ -152830,11 +160107,11 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionBackendServices.insert({ + * const res = await compute.regionBackendBuckets.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Name of the region of this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -152855,57 +160132,21 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "affinityCookieTtlSec": 0, - * // "backends": [], + * // "bucketName": "my_bucketName", * // "cdnPolicy": {}, - * // "circuitBreakers": {}, * // "compressionMode": "my_compressionMode", - * // "connectionDraining": {}, - * // "connectionTrackingPolicy": {}, - * // "consistentHash": {}, * // "creationTimestamp": "my_creationTimestamp", - * // "customMetrics": [], - * // "customRequestHeaders": [], * // "customResponseHeaders": [], * // "description": "my_description", * // "edgeSecurityPolicy": "my_edgeSecurityPolicy", - * // "enableCDN": false, - * // "externalManagedMigrationState": "my_externalManagedMigrationState", - * // "externalManagedMigrationTestingPercentage": {}, - * // "failoverPolicy": {}, - * // "fingerprint": "my_fingerprint", - * // "haPolicy": {}, - * // "healthChecks": [], - * // "iap": {}, + * // "enableCdn": false, * // "id": "my_id", - * // "ipAddressSelectionPolicy": "my_ipAddressSelectionPolicy", * // "kind": "my_kind", * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "localityLbPolicies": [], - * // "localityLbPolicy": "my_localityLbPolicy", - * // "logConfig": {}, - * // "maxStreamDuration": {}, - * // "metadatas": {}, * // "name": "my_name", - * // "network": "my_network", - * // "networkPassThroughLbTrafficPolicy": {}, - * // "orchestrationInfo": {}, - * // "outlierDetection": {}, * // "params": {}, - * // "port": 0, - * // "portName": "my_portName", - * // "protocol": "my_protocol", * // "region": "my_region", - * // "securityPolicy": "my_securityPolicy", - * // "securitySettings": {}, * // "selfLink": "my_selfLink", - * // "serviceBindings": [], - * // "serviceLbPolicy": "my_serviceLbPolicy", - * // "sessionAffinity": "my_sessionAffinity", - * // "strongSessionAffinityCookie": {}, - * // "subsetting": {}, - * // "timeoutSec": 0, - * // "tlsSettings": {}, * // "usedBy": [] * // } * }, @@ -152919,6 +160160,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -152956,31 +160198,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Regionbackendservices$Insert, + params: Params$Resource$Regionbackendbuckets$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Regionbackendservices$Insert, + params?: Params$Resource$Regionbackendbuckets$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Regionbackendservices$Insert, + params: Params$Resource$Regionbackendbuckets$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Regionbackendservices$Insert, + params: Params$Resource$Regionbackendbuckets$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Regionbackendservices$Insert, + params: Params$Resource$Regionbackendbuckets$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Regionbackendservices$Insert + | Params$Resource$Regionbackendbuckets$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -152996,12 +160238,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionbackendservices$Insert; + {}) as Params$Resource$Regionbackendbuckets$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionbackendservices$Insert; + params = {} as Params$Resource$Regionbackendbuckets$Insert; options = {}; } @@ -153016,7 +160258,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/backendServices' + '/compute/v1/projects/{project}/regions/{region}/backendBuckets' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -153039,8 +160281,8 @@ export namespace compute_v1 { } /** - * Retrieves the list of regional BackendService resources available to the - * specified project in the given region. + * Retrieves the list of BackendBucket resources available to the specified + * project in the given region. * @example * ```js * // Before running the sample: @@ -153073,7 +160315,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionBackendServices.list({ + * const res = await compute.regionBackendBuckets.list({ * // 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 @@ -153158,7 +160400,7 @@ export namespace compute_v1 { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Name of the region of this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. @@ -153194,52 +160436,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Regionbackendservices$List, + params: Params$Resource$Regionbackendbuckets$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Regionbackendservices$List, + params?: Params$Resource$Regionbackendbuckets$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Regionbackendservices$List, + params: Params$Resource$Regionbackendbuckets$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regionbackendservices$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regionbackendbuckets$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regionbackendservices$List, - callback: BodyResponseCallback + params: Params$Resource$Regionbackendbuckets$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Regionbackendservices$List - | BodyResponseCallback + | Params$Resource$Regionbackendbuckets$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionbackendservices$List; + {}) as Params$Resource$Regionbackendbuckets$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionbackendservices$List; + params = {} as Params$Resource$Regionbackendbuckets$List; options = {}; } @@ -153254,7 +160496,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/backendServices' + '/compute/v1/projects/{project}/regions/{region}/backendBuckets' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -153267,17 +160509,17 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of all usable backend services in the specified project in + * Retrieves a list of all usable backend buckets in the specified project in * the given region. * @example * ```js @@ -153311,7 +160553,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionBackendServices.listUsable({ + * const res = await compute.regionBackendBuckets.listUsable({ * // 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 @@ -153398,7 +160640,7 @@ export namespace compute_v1 { * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * // It must be a string that meets the requirements in RFC1035. - * region: 'placeholder-value', + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -153433,56 +160675,56 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ listUsable( - params: Params$Resource$Regionbackendservices$Listusable, + params: Params$Resource$Regionbackendbuckets$Listusable, options: StreamMethodOptions ): Promise>; listUsable( - params?: Params$Resource$Regionbackendservices$Listusable, + params?: Params$Resource$Regionbackendbuckets$Listusable, options?: MethodOptions - ): Promise>; + ): Promise>; listUsable( - params: Params$Resource$Regionbackendservices$Listusable, + params: Params$Resource$Regionbackendbuckets$Listusable, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; listUsable( - params: Params$Resource$Regionbackendservices$Listusable, + params: Params$Resource$Regionbackendbuckets$Listusable, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; listUsable( - params: Params$Resource$Regionbackendservices$Listusable, - callback: BodyResponseCallback + params: Params$Resource$Regionbackendbuckets$Listusable, + callback: BodyResponseCallback ): void; listUsable( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; listUsable( paramsOrCallback?: - | Params$Resource$Regionbackendservices$Listusable - | BodyResponseCallback + | Params$Resource$Regionbackendbuckets$Listusable + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionbackendservices$Listusable; + {}) as Params$Resource$Regionbackendbuckets$Listusable; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionbackendservices$Listusable; + params = {} as Params$Resource$Regionbackendbuckets$Listusable; options = {}; } @@ -153497,7 +160739,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/backendServices/listUsable' + '/compute/v1/projects/{project}/regions/{region}/backendBuckets/listUsable' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -153510,20 +160752,19 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the specified regional BackendService resource with the data - * included in the request. For more information, see - * Understanding backend services This method - * supports PATCH semantics and uses the JSON merge + * Updates the specified BackendBucket resource with the data included in the + * request. This method supportsPATCH + * semantics and uses theJSON merge * patch format and processing rules. * @example * ```js @@ -153556,9 +160797,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionBackendServices.patch({ - * // Name of the BackendService resource to patch. - * backendService: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionBackendBuckets.patch({ + * // Name of the BackendBucket resource to patch. + * backendBucket: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -153577,63 +160818,28 @@ export namespace compute_v1 { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). + * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "affinityCookieTtlSec": 0, - * // "backends": [], + * // "bucketName": "my_bucketName", * // "cdnPolicy": {}, - * // "circuitBreakers": {}, * // "compressionMode": "my_compressionMode", - * // "connectionDraining": {}, - * // "connectionTrackingPolicy": {}, - * // "consistentHash": {}, * // "creationTimestamp": "my_creationTimestamp", - * // "customMetrics": [], - * // "customRequestHeaders": [], * // "customResponseHeaders": [], * // "description": "my_description", * // "edgeSecurityPolicy": "my_edgeSecurityPolicy", - * // "enableCDN": false, - * // "externalManagedMigrationState": "my_externalManagedMigrationState", - * // "externalManagedMigrationTestingPercentage": {}, - * // "failoverPolicy": {}, - * // "fingerprint": "my_fingerprint", - * // "haPolicy": {}, - * // "healthChecks": [], - * // "iap": {}, + * // "enableCdn": false, * // "id": "my_id", - * // "ipAddressSelectionPolicy": "my_ipAddressSelectionPolicy", * // "kind": "my_kind", * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "localityLbPolicies": [], - * // "localityLbPolicy": "my_localityLbPolicy", - * // "logConfig": {}, - * // "maxStreamDuration": {}, - * // "metadatas": {}, * // "name": "my_name", - * // "network": "my_network", - * // "networkPassThroughLbTrafficPolicy": {}, - * // "orchestrationInfo": {}, - * // "outlierDetection": {}, * // "params": {}, - * // "port": 0, - * // "portName": "my_portName", - * // "protocol": "my_protocol", * // "region": "my_region", - * // "securityPolicy": "my_securityPolicy", - * // "securitySettings": {}, * // "selfLink": "my_selfLink", - * // "serviceBindings": [], - * // "serviceLbPolicy": "my_serviceLbPolicy", - * // "sessionAffinity": "my_sessionAffinity", - * // "strongSessionAffinityCookie": {}, - * // "subsetting": {}, - * // "timeoutSec": 0, - * // "tlsSettings": {}, * // "usedBy": [] * // } * }, @@ -153647,6 +160853,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -153684,31 +160891,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Regionbackendservices$Patch, + params: Params$Resource$Regionbackendbuckets$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Regionbackendservices$Patch, + params?: Params$Resource$Regionbackendbuckets$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Regionbackendservices$Patch, + params: Params$Resource$Regionbackendbuckets$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Regionbackendservices$Patch, + params: Params$Resource$Regionbackendbuckets$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Regionbackendservices$Patch, + params: Params$Resource$Regionbackendbuckets$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Regionbackendservices$Patch + | Params$Resource$Regionbackendbuckets$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -153724,12 +160931,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionbackendservices$Patch; + {}) as Params$Resource$Regionbackendbuckets$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionbackendservices$Patch; + params = {} as Params$Resource$Regionbackendbuckets$Patch; options = {}; } @@ -153744,7 +160951,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}' + '/compute/v1/projects/{project}/regions/{region}/backendBuckets/{backendBucket}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -153752,8 +160959,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'backendService'], - pathParams: ['backendService', 'project', 'region'], + requiredParams: ['project', 'region', 'backendBucket'], + pathParams: ['backendBucket', 'project', 'region'], context: this.context, }; if (callback) { @@ -153800,7 +161007,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionBackendServices.setIamPolicy({ + * const res = await compute.regionBackendBuckets.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -153843,31 +161050,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Regionbackendservices$Setiampolicy, + params: Params$Resource$Regionbackendbuckets$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Regionbackendservices$Setiampolicy, + params?: Params$Resource$Regionbackendbuckets$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Regionbackendservices$Setiampolicy, + params: Params$Resource$Regionbackendbuckets$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Regionbackendservices$Setiampolicy, + params: Params$Resource$Regionbackendbuckets$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Regionbackendservices$Setiampolicy, + params: Params$Resource$Regionbackendbuckets$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Regionbackendservices$Setiampolicy + | Params$Resource$Regionbackendbuckets$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -153883,12 +161090,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionbackendservices$Setiampolicy; + {}) as Params$Resource$Regionbackendbuckets$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionbackendservices$Setiampolicy; + params = {} as Params$Resource$Regionbackendbuckets$Setiampolicy; options = {}; } @@ -153903,7 +161110,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/backendServices/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/backendBuckets/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -153925,201 +161132,6 @@ export namespace compute_v1 { } } - /** - * Sets the Google Cloud Armor security policy for the specified backend - * service. For more information, seeGoogle - * Cloud Armor Overview - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.regionBackendServices.setSecurityPolicy({ - * // Name of the BackendService resource to which the security policy should be - * // set. The name should conform to RFC1035. - * backendService: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "securityPolicy": "my_securityPolicy" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - setSecurityPolicy( - params: Params$Resource$Regionbackendservices$Setsecuritypolicy, - options: StreamMethodOptions - ): Promise>; - setSecurityPolicy( - params?: Params$Resource$Regionbackendservices$Setsecuritypolicy, - options?: MethodOptions - ): Promise>; - setSecurityPolicy( - params: Params$Resource$Regionbackendservices$Setsecuritypolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setSecurityPolicy( - params: Params$Resource$Regionbackendservices$Setsecuritypolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setSecurityPolicy( - params: Params$Resource$Regionbackendservices$Setsecuritypolicy, - callback: BodyResponseCallback - ): void; - setSecurityPolicy(callback: BodyResponseCallback): void; - setSecurityPolicy( - paramsOrCallback?: - | Params$Resource$Regionbackendservices$Setsecuritypolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regionbackendservices$Setsecuritypolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Regionbackendservices$Setsecuritypolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}/setSecurityPolicy' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'backendService'], - pathParams: ['backendService', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - /** * Returns permissions that a caller has on the specified resource. * @example @@ -154154,7 +161166,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionBackendServices.testIamPermissions({ + * const res = await compute.regionBackendBuckets.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -154192,27 +161204,27 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Regionbackendservices$Testiampermissions, + params: Params$Resource$Regionbackendbuckets$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Regionbackendservices$Testiampermissions, + params?: Params$Resource$Regionbackendbuckets$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Regionbackendservices$Testiampermissions, + params: Params$Resource$Regionbackendbuckets$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Regionbackendservices$Testiampermissions, + params: Params$Resource$Regionbackendbuckets$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Regionbackendservices$Testiampermissions, + params: Params$Resource$Regionbackendbuckets$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -154220,7 +161232,7 @@ export namespace compute_v1 { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Regionbackendservices$Testiampermissions + | Params$Resource$Regionbackendbuckets$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -154236,12 +161248,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionbackendservices$Testiampermissions; + {}) as Params$Resource$Regionbackendbuckets$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionbackendservices$Testiampermissions; + params = {} as Params$Resource$Regionbackendbuckets$Testiampermissions; options = {}; } @@ -154256,7 +161268,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/backendServices/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/regions/{region}/backendBuckets/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -154277,259 +161289,13 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } - - /** - * Updates the specified regional BackendService resource with the data - * included in the request. For more information, - * see - * Backend services overview. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.regionBackendServices.update({ - * // Name of the BackendService resource to update. - * backendService: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "affinityCookieTtlSec": 0, - * // "backends": [], - * // "cdnPolicy": {}, - * // "circuitBreakers": {}, - * // "compressionMode": "my_compressionMode", - * // "connectionDraining": {}, - * // "connectionTrackingPolicy": {}, - * // "consistentHash": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "customMetrics": [], - * // "customRequestHeaders": [], - * // "customResponseHeaders": [], - * // "description": "my_description", - * // "edgeSecurityPolicy": "my_edgeSecurityPolicy", - * // "enableCDN": false, - * // "externalManagedMigrationState": "my_externalManagedMigrationState", - * // "externalManagedMigrationTestingPercentage": {}, - * // "failoverPolicy": {}, - * // "fingerprint": "my_fingerprint", - * // "haPolicy": {}, - * // "healthChecks": [], - * // "iap": {}, - * // "id": "my_id", - * // "ipAddressSelectionPolicy": "my_ipAddressSelectionPolicy", - * // "kind": "my_kind", - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "localityLbPolicies": [], - * // "localityLbPolicy": "my_localityLbPolicy", - * // "logConfig": {}, - * // "maxStreamDuration": {}, - * // "metadatas": {}, - * // "name": "my_name", - * // "network": "my_network", - * // "networkPassThroughLbTrafficPolicy": {}, - * // "orchestrationInfo": {}, - * // "outlierDetection": {}, - * // "params": {}, - * // "port": 0, - * // "portName": "my_portName", - * // "protocol": "my_protocol", - * // "region": "my_region", - * // "securityPolicy": "my_securityPolicy", - * // "securitySettings": {}, - * // "selfLink": "my_selfLink", - * // "serviceBindings": [], - * // "serviceLbPolicy": "my_serviceLbPolicy", - * // "sessionAffinity": "my_sessionAffinity", - * // "strongSessionAffinityCookie": {}, - * // "subsetting": {}, - * // "timeoutSec": 0, - * // "tlsSettings": {}, - * // "usedBy": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - update( - params: Params$Resource$Regionbackendservices$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Regionbackendservices$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Regionbackendservices$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Regionbackendservices$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Regionbackendservices$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Regionbackendservices$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regionbackendservices$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Regionbackendservices$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'backendService'], - pathParams: ['backendService', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } } - export interface Params$Resource$Regionbackendservices$Delete extends StandardParameters { + export interface Params$Resource$Regionbackendbuckets$Delete extends StandardParameters { /** - * Name of the BackendService resource to delete. + * Name of the BackendBucket resource to delete. */ - backendService?: string; + backendBucket?: string; /** * Project ID for this request. */ @@ -154552,14 +161318,15 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; } - export interface Params$Resource$Regionbackendservices$Get extends StandardParameters { + export interface Params$Resource$Regionbackendbuckets$Get extends StandardParameters { /** - * Name of the BackendService resource to return. + * Name of the BackendBucket resource to return. */ - backendService?: string; + backendBucket?: string; /** * Project ID for this request. */ @@ -154569,26 +161336,7 @@ export namespace compute_v1 { */ region?: string; } - export interface Params$Resource$Regionbackendservices$Gethealth extends StandardParameters { - /** - * Name of the BackendService resource for which to get health. - */ - backendService?: string; - /** - * - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ResourceGroupReference; - } - export interface Params$Resource$Regionbackendservices$Getiampolicy extends StandardParameters { + export interface Params$Resource$Regionbackendbuckets$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -154606,13 +161354,13 @@ export namespace compute_v1 { */ resource?: string; } - export interface Params$Resource$Regionbackendservices$Insert extends StandardParameters { + export interface Params$Resource$Regionbackendbuckets$Insert extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * Name of the region of this request. */ region?: string; /** @@ -154635,9 +161383,9 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$BackendService; + requestBody?: Schema$BackendBucket; } - export interface Params$Resource$Regionbackendservices$List extends StandardParameters { + export interface Params$Resource$Regionbackendbuckets$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -154732,7 +161480,7 @@ export namespace compute_v1 { */ project?: string; /** - * Name of the region scoping this request. + * Name of the region of this request. */ region?: string; /** @@ -154745,7 +161493,7 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Regionbackendservices$Listusable extends StandardParameters { + export interface Params$Resource$Regionbackendbuckets$Listusable extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -154854,11 +161602,11 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Regionbackendservices$Patch extends StandardParameters { + export interface Params$Resource$Regionbackendbuckets$Patch extends StandardParameters { /** - * Name of the BackendService resource to patch. + * Name of the BackendBucket resource to patch. */ - backendService?: string; + backendBucket?: string; /** * Project ID for this request. */ @@ -154881,15 +161629,16 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; /** * Request body metadata */ - requestBody?: Schema$BackendService; + requestBody?: Schema$BackendBucket; } - export interface Params$Resource$Regionbackendservices$Setiampolicy extends StandardParameters { + export interface Params$Resource$Regionbackendbuckets$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -154908,43 +161657,7 @@ export namespace compute_v1 { */ requestBody?: Schema$RegionSetPolicyRequest; } - export interface Params$Resource$Regionbackendservices$Setsecuritypolicy extends StandardParameters { - /** - * Name of the BackendService resource to which the security policy should be - * set. The name should conform to RFC1035. - */ - backendService?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$SecurityPolicyReference; - } - export interface Params$Resource$Regionbackendservices$Testiampermissions extends StandardParameters { + export interface Params$Resource$Regionbackendbuckets$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -154963,53 +161676,15 @@ export namespace compute_v1 { */ requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Regionbackendservices$Update extends StandardParameters { - /** - * Name of the BackendService resource to update. - */ - backendService?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$BackendService; - } - export class Resource$Regioncommitments { + export class Resource$Regionbackendservices { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of commitments by region. - * - * To prevent failure, it is recommended that you set the - * `returnPartialSuccess` parameter to `true`. + * Deletes the specified regional BackendService resource. * @example * ```js * // Before running the sample: @@ -155033,7 +161708,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -155042,121 +161716,60 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionCommitments.aggregatedList({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionBackendServices.delete({ + * // Name of the BackendService resource to delete. + * backendService: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // 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: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -155172,57 +161785,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Regioncommitments$Aggregatedlist, + delete( + params: Params$Resource$Regionbackendservices$Delete, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Regioncommitments$Aggregatedlist, + delete( + params?: Params$Resource$Regionbackendservices$Delete, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Regioncommitments$Aggregatedlist, + ): Promise>; + delete( + params: Params$Resource$Regionbackendservices$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Regioncommitments$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Regioncommitments$Aggregatedlist, - callback: BodyResponseCallback + delete( + params: Params$Resource$Regionbackendservices$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + delete( + params: Params$Resource$Regionbackendservices$Delete, + callback: BodyResponseCallback ): void; - aggregatedList( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Regioncommitments$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Regionbackendservices$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioncommitments$Aggregatedlist; + {}) as Params$Resource$Regionbackendservices$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioncommitments$Aggregatedlist; + params = {} as Params$Resource$Regionbackendservices$Delete; options = {}; } @@ -155236,30 +161845,31 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/aggregated/commitments' + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region', 'backendService'], + pathParams: ['backendService', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified commitment resource. + * Returns the specified regional BackendService resource. * @example * ```js * // Before running the sample: @@ -155292,42 +161902,71 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionCommitments.get({ - * // Name of the commitment to return. - * commitment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionBackendServices.get({ + * // Name of the BackendService resource to return. + * backendService: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "autoRenew": false, - * // "category": "my_category", + * // "affinityCookieTtlSec": 0, + * // "backends": [], + * // "cdnPolicy": {}, + * // "circuitBreakers": {}, + * // "compressionMode": "my_compressionMode", + * // "connectionDraining": {}, + * // "connectionTrackingPolicy": {}, + * // "consistentHash": {}, * // "creationTimestamp": "my_creationTimestamp", - * // "customEndTimestamp": "my_customEndTimestamp", + * // "customMetrics": [], + * // "customRequestHeaders": [], + * // "customResponseHeaders": [], * // "description": "my_description", - * // "endTimestamp": "my_endTimestamp", - * // "existingReservations": [], + * // "edgeSecurityPolicy": "my_edgeSecurityPolicy", + * // "enableCDN": false, + * // "externalManagedMigrationState": "my_externalManagedMigrationState", + * // "externalManagedMigrationTestingPercentage": {}, + * // "failoverPolicy": {}, + * // "fingerprint": "my_fingerprint", + * // "haPolicy": {}, + * // "healthChecks": [], + * // "iap": {}, * // "id": "my_id", + * // "ipAddressSelectionPolicy": "my_ipAddressSelectionPolicy", * // "kind": "my_kind", - * // "licenseResource": {}, - * // "mergeSourceCommitments": [], + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "localityLbPolicies": [], + * // "localityLbPolicy": "my_localityLbPolicy", + * // "logConfig": {}, + * // "maxStreamDuration": {}, + * // "metadatas": {}, * // "name": "my_name", - * // "plan": "my_plan", + * // "network": "my_network", + * // "networkPassThroughLbTrafficPolicy": {}, + * // "orchestrationInfo": {}, + * // "outlierDetection": {}, + * // "params": {}, + * // "port": 0, + * // "portName": "my_portName", + * // "protocol": "my_protocol", * // "region": "my_region", - * // "reservations": [], - * // "resourceStatus": {}, - * // "resources": [], + * // "securityPolicy": "my_securityPolicy", + * // "securitySettings": {}, * // "selfLink": "my_selfLink", - * // "splitSourceCommitment": "my_splitSourceCommitment", - * // "startTimestamp": "my_startTimestamp", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "type": "my_type" + * // "serviceBindings": [], + * // "serviceLbPolicy": "my_serviceLbPolicy", + * // "sessionAffinity": "my_sessionAffinity", + * // "strongSessionAffinityCookie": {}, + * // "subsetting": {}, + * // "timeoutSec": 0, + * // "tlsSettings": {}, + * // "usedBy": [] * // } * } * @@ -155344,52 +161983,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regioncommitments$Get, + params: Params$Resource$Regionbackendservices$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regioncommitments$Get, + params?: Params$Resource$Regionbackendservices$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regioncommitments$Get, + params: Params$Resource$Regionbackendservices$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regioncommitments$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regionbackendservices$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regioncommitments$Get, - callback: BodyResponseCallback + params: Params$Resource$Regionbackendservices$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regioncommitments$Get - | BodyResponseCallback + | Params$Resource$Regionbackendservices$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioncommitments$Get; + {}) as Params$Resource$Regionbackendservices$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioncommitments$Get; + params = {} as Params$Resource$Regionbackendservices$Get; options = {}; } @@ -155404,7 +162043,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/commitments/{commitment}' + '/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -155412,23 +162051,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'commitment'], - pathParams: ['commitment', 'project', 'region'], + requiredParams: ['project', 'region', 'backendService'], + pathParams: ['backendService', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a commitment in the specified project using the data - * included in the request. + * Gets the most recent health check results for this + * regional BackendService. * @example * ```js * // Before running the sample: @@ -155452,6 +162091,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -155460,54 +162100,20 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionCommitments.insert({ - * // Project ID for this request. + * const res = await compute.regionBackendServices.getHealth({ + * // Name of the BackendService resource for which to get health. + * backendService: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "autoRenew": false, - * // "category": "my_category", - * // "creationTimestamp": "my_creationTimestamp", - * // "customEndTimestamp": "my_customEndTimestamp", - * // "description": "my_description", - * // "endTimestamp": "my_endTimestamp", - * // "existingReservations": [], - * // "id": "my_id", - * // "kind": "my_kind", - * // "licenseResource": {}, - * // "mergeSourceCommitments": [], - * // "name": "my_name", - * // "plan": "my_plan", - * // "region": "my_region", - * // "reservations": [], - * // "resourceStatus": {}, - * // "resources": [], - * // "selfLink": "my_selfLink", - * // "splitSourceCommitment": "my_splitSourceCommitment", - * // "startTimestamp": "my_startTimestamp", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "type": "my_type" + * // "group": "my_group" * // } * }, * }); @@ -155515,32 +162121,9 @@ export namespace compute_v1 { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "annotations": {}, + * // "healthStatus": [], + * // "kind": "my_kind" * // } * } * @@ -155556,53 +162139,57 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regioncommitments$Insert, + getHealth( + params: Params$Resource$Regionbackendservices$Gethealth, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regioncommitments$Insert, + getHealth( + params?: Params$Resource$Regionbackendservices$Gethealth, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Regioncommitments$Insert, + ): Promise>; + getHealth( + params: Params$Resource$Regionbackendservices$Gethealth, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regioncommitments$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getHealth( + params: Params$Resource$Regionbackendservices$Gethealth, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regioncommitments$Insert, - callback: BodyResponseCallback + getHealth( + params: Params$Resource$Regionbackendservices$Gethealth, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + getHealth( + callback: BodyResponseCallback + ): void; + getHealth( paramsOrCallback?: - | Params$Resource$Regioncommitments$Insert - | BodyResponseCallback + | Params$Resource$Regionbackendservices$Gethealth + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioncommitments$Insert; + {}) as Params$Resource$Regionbackendservices$Gethealth; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioncommitments$Insert; + params = {} as Params$Resource$Regionbackendservices$Gethealth; options = {}; } @@ -155617,7 +162204,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/commitments' + '/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}/getHealth' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -155625,23 +162212,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'backendService'], + pathParams: ['backendService', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of commitments contained within - * the specified region. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -155674,111 +162261,25 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionCommitments.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionBackendServices.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -155794,53 +162295,53 @@ export namespace compute_v1 { * @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$Regioncommitments$List, + getIamPolicy( + params: Params$Resource$Regionbackendservices$Getiampolicy, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regioncommitments$List, + getIamPolicy( + params?: Params$Resource$Regionbackendservices$Getiampolicy, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regioncommitments$List, + ): Promise>; + getIamPolicy( + params: Params$Resource$Regionbackendservices$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regioncommitments$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Regionbackendservices$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regioncommitments$List, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Regionbackendservices$Getiampolicy, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Regioncommitments$List - | BodyResponseCallback + | Params$Resource$Regionbackendservices$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioncommitments$List; + {}) as Params$Resource$Regionbackendservices$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioncommitments$List; + params = {} as Params$Resource$Regionbackendservices$Getiampolicy; options = {}; } @@ -155855,7 +162356,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/commitments' + '/compute/v1/projects/{project}/regions/{region}/backendServices/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -155863,24 +162364,24 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the specified commitment with the data included in the request. - * Update is performed only on selected fields included as part of - * update-mask. Only the following fields can be updated: auto_renew and plan. + * Creates a regional BackendService resource in the specified project using + * the data included in the request. For more information, see + * Backend services overview. * @example * ```js * // Before running the sample: @@ -155912,15 +162413,11 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionCommitments.update({ - * // Name of the commitment that you want to update. - * commitment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * paths: 'placeholder-value', + * const res = await compute.regionBackendServices.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -155936,36 +162433,63 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "autoRenew": false, - * // "category": "my_category", + * // "affinityCookieTtlSec": 0, + * // "backends": [], + * // "cdnPolicy": {}, + * // "circuitBreakers": {}, + * // "compressionMode": "my_compressionMode", + * // "connectionDraining": {}, + * // "connectionTrackingPolicy": {}, + * // "consistentHash": {}, * // "creationTimestamp": "my_creationTimestamp", - * // "customEndTimestamp": "my_customEndTimestamp", + * // "customMetrics": [], + * // "customRequestHeaders": [], + * // "customResponseHeaders": [], * // "description": "my_description", - * // "endTimestamp": "my_endTimestamp", - * // "existingReservations": [], + * // "edgeSecurityPolicy": "my_edgeSecurityPolicy", + * // "enableCDN": false, + * // "externalManagedMigrationState": "my_externalManagedMigrationState", + * // "externalManagedMigrationTestingPercentage": {}, + * // "failoverPolicy": {}, + * // "fingerprint": "my_fingerprint", + * // "haPolicy": {}, + * // "healthChecks": [], + * // "iap": {}, * // "id": "my_id", + * // "ipAddressSelectionPolicy": "my_ipAddressSelectionPolicy", * // "kind": "my_kind", - * // "licenseResource": {}, - * // "mergeSourceCommitments": [], + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "localityLbPolicies": [], + * // "localityLbPolicy": "my_localityLbPolicy", + * // "logConfig": {}, + * // "maxStreamDuration": {}, + * // "metadatas": {}, * // "name": "my_name", - * // "plan": "my_plan", + * // "network": "my_network", + * // "networkPassThroughLbTrafficPolicy": {}, + * // "orchestrationInfo": {}, + * // "outlierDetection": {}, + * // "params": {}, + * // "port": 0, + * // "portName": "my_portName", + * // "protocol": "my_protocol", * // "region": "my_region", - * // "reservations": [], - * // "resourceStatus": {}, - * // "resources": [], + * // "securityPolicy": "my_securityPolicy", + * // "securitySettings": {}, * // "selfLink": "my_selfLink", - * // "splitSourceCommitment": "my_splitSourceCommitment", - * // "startTimestamp": "my_startTimestamp", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "type": "my_type" + * // "serviceBindings": [], + * // "serviceLbPolicy": "my_serviceLbPolicy", + * // "sessionAffinity": "my_sessionAffinity", + * // "strongSessionAffinityCookie": {}, + * // "subsetting": {}, + * // "timeoutSec": 0, + * // "tlsSettings": {}, + * // "usedBy": [] * // } * }, * }); @@ -155978,6 +162502,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -156014,32 +162539,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Regioncommitments$Update, + insert( + params: Params$Resource$Regionbackendservices$Insert, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Regioncommitments$Update, + insert( + params?: Params$Resource$Regionbackendservices$Insert, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Regioncommitments$Update, + insert( + params: Params$Resource$Regionbackendservices$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Regioncommitments$Update, + insert( + params: Params$Resource$Regionbackendservices$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Regioncommitments$Update, + insert( + params: Params$Resource$Regionbackendservices$Insert, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regioncommitments$Update + | Params$Resource$Regionbackendservices$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -156055,12 +162580,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioncommitments$Update; + {}) as Params$Resource$Regionbackendservices$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioncommitments$Update; + params = {} as Params$Resource$Regionbackendservices$Insert; options = {}; } @@ -156075,16 +162600,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/commitments/{commitment}' + '/compute/v1/projects/{project}/regions/{region}/backendServices' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'commitment'], - pathParams: ['commitment', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -156096,334 +162621,10 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Regioncommitments$Aggregatedlist 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. - * 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 onresource 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 GoogleRE2 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; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Regioncommitments$Get extends StandardParameters { - /** - * Name of the commitment to return. - */ - commitment?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - } - export interface Params$Resource$Regioncommitments$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$Commitment; - } - export interface Params$Resource$Regioncommitments$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Regioncommitments$Update extends StandardParameters { - /** - * Name of the commitment that you want to update. - */ - commitment?: string; - /** - * - */ - paths?: string[]; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * 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. - * - * 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; - /** - * update_mask indicates fields to be updated as part of this request. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Commitment; - } - - export class Resource$Regiondisks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Adds existing resource policies to a regional disk. You can only add one - * policy which will be applied to this disk for scheduling snapshot - * creation. + * Retrieves the list of regional BackendService resources available to the + * specified project in the given region. * @example * ```js * // Before running the sample: @@ -156447,6 +162648,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -156455,67 +162657,111 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.addResourcePolicies({ - * // The disk name for this request. - * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionBackendServices.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "resourcePolicies": [] - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -156531,53 +162777,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addResourcePolicies( - params: Params$Resource$Regiondisks$Addresourcepolicies, + list( + params: Params$Resource$Regionbackendservices$List, options: StreamMethodOptions ): Promise>; - addResourcePolicies( - params?: Params$Resource$Regiondisks$Addresourcepolicies, + list( + params?: Params$Resource$Regionbackendservices$List, options?: MethodOptions - ): Promise>; - addResourcePolicies( - params: Params$Resource$Regiondisks$Addresourcepolicies, + ): Promise>; + list( + params: Params$Resource$Regionbackendservices$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addResourcePolicies( - params: Params$Resource$Regiondisks$Addresourcepolicies, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionbackendservices$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - addResourcePolicies( - params: Params$Resource$Regiondisks$Addresourcepolicies, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionbackendservices$List, + callback: BodyResponseCallback ): void; - addResourcePolicies(callback: BodyResponseCallback): void; - addResourcePolicies( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Regiondisks$Addresourcepolicies - | BodyResponseCallback + | Params$Resource$Regionbackendservices$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Addresourcepolicies; + {}) as Params$Resource$Regionbackendservices$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Addresourcepolicies; + params = {} as Params$Resource$Regionbackendservices$List; options = {}; } @@ -156592,30 +162838,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/addResourcePolicies' + '/compute/v1/projects/{project}/regions/{region}/backendServices' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'disk'], - pathParams: ['disk', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Bulk create a set of disks. + * Retrieves a list of all usable backend services in the specified project in + * the given region. * @example * ```js * // Before running the sample: @@ -156639,6 +162886,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -156647,65 +162895,112 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.bulkInsert({ + * const res = await compute.regionBackendServices.listUsable({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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. + * // Name of the region scoping this request. + * // It must be a string that meets the requirements in RFC1035. + * region: 'placeholder-value', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "sourceConsistencyGroupPolicy": "my_sourceConsistencyGroupPolicy" - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -156721,53 +163016,57 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkInsert( - params: Params$Resource$Regiondisks$Bulkinsert, + listUsable( + params: Params$Resource$Regionbackendservices$Listusable, options: StreamMethodOptions ): Promise>; - bulkInsert( - params?: Params$Resource$Regiondisks$Bulkinsert, + listUsable( + params?: Params$Resource$Regionbackendservices$Listusable, options?: MethodOptions - ): Promise>; - bulkInsert( - params: Params$Resource$Regiondisks$Bulkinsert, + ): Promise>; + listUsable( + params: Params$Resource$Regionbackendservices$Listusable, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkInsert( - params: Params$Resource$Regiondisks$Bulkinsert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listUsable( + params: Params$Resource$Regionbackendservices$Listusable, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - bulkInsert( - params: Params$Resource$Regiondisks$Bulkinsert, - callback: BodyResponseCallback + listUsable( + params: Params$Resource$Regionbackendservices$Listusable, + callback: BodyResponseCallback ): void; - bulkInsert(callback: BodyResponseCallback): void; - bulkInsert( + listUsable( + callback: BodyResponseCallback + ): void; + listUsable( paramsOrCallback?: - | Params$Resource$Regiondisks$Bulkinsert - | BodyResponseCallback + | Params$Resource$Regionbackendservices$Listusable + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Bulkinsert; + {}) as Params$Resource$Regionbackendservices$Listusable; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Bulkinsert; + params = {} as Params$Resource$Regionbackendservices$Listusable; options = {}; } @@ -156782,9 +163081,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/bulkInsert' + '/compute/v1/projects/{project}/regions/{region}/backendServices/listUsable' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -156795,20 +163094,21 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a snapshot of a specified persistent disk. For regular snapshot - * creation, consider using snapshots.insert - * instead, as that method supports more features, such as creating snapshots - * in a project different from the source disk project. + * Updates the specified regional BackendService resource with the data + * included in the request. For more information, see + * Understanding backend services This method + * supports PATCH semantics and uses the JSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -156840,13 +163140,13 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.createSnapshot({ - * // Name of the regional persistent disk to snapshot. - * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionBackendServices.patch({ + * // Name of the BackendService resource to patch. + * backendService: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -156867,44 +163167,58 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "architecture": "my_architecture", - * // "autoCreated": false, - * // "chainName": "my_chainName", - * // "creationSizeBytes": "my_creationSizeBytes", + * // "affinityCookieTtlSec": 0, + * // "backends": [], + * // "cdnPolicy": {}, + * // "circuitBreakers": {}, + * // "compressionMode": "my_compressionMode", + * // "connectionDraining": {}, + * // "connectionTrackingPolicy": {}, + * // "consistentHash": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "customMetrics": [], + * // "customRequestHeaders": [], + * // "customResponseHeaders": [], * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "downloadBytes": "my_downloadBytes", - * // "enableConfidentialCompute": false, - * // "guestFlush": false, - * // "guestOsFeatures": [], + * // "edgeSecurityPolicy": "my_edgeSecurityPolicy", + * // "enableCDN": false, + * // "externalManagedMigrationState": "my_externalManagedMigrationState", + * // "externalManagedMigrationTestingPercentage": {}, + * // "failoverPolicy": {}, + * // "fingerprint": "my_fingerprint", + * // "haPolicy": {}, + * // "healthChecks": [], + * // "iap": {}, * // "id": "my_id", + * // "ipAddressSelectionPolicy": "my_ipAddressSelectionPolicy", * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], - * // "locationHint": "my_locationHint", + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "localityLbPolicies": [], + * // "localityLbPolicy": "my_localityLbPolicy", + * // "logConfig": {}, + * // "maxStreamDuration": {}, + * // "metadatas": {}, * // "name": "my_name", + * // "network": "my_network", + * // "networkPassThroughLbTrafficPolicy": {}, + * // "orchestrationInfo": {}, + * // "outlierDetection": {}, * // "params": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "port": 0, + * // "portName": "my_portName", + * // "protocol": "my_protocol", + * // "region": "my_region", + * // "securityPolicy": "my_securityPolicy", + * // "securitySettings": {}, * // "selfLink": "my_selfLink", - * // "snapshotEncryptionKey": {}, - * // "snapshotType": "my_snapshotType", - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskForRecoveryCheckpoint": "my_sourceDiskForRecoveryCheckpoint", - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", - * // "sourceInstantSnapshotEncryptionKey": {}, - * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", - * // "sourceSnapshotSchedulePolicy": "my_sourceSnapshotSchedulePolicy", - * // "sourceSnapshotSchedulePolicyId": "my_sourceSnapshotSchedulePolicyId", - * // "status": "my_status", - * // "storageBytes": "my_storageBytes", - * // "storageBytesStatus": "my_storageBytesStatus", - * // "storageLocations": [] + * // "serviceBindings": [], + * // "serviceLbPolicy": "my_serviceLbPolicy", + * // "sessionAffinity": "my_sessionAffinity", + * // "strongSessionAffinityCookie": {}, + * // "subsetting": {}, + * // "timeoutSec": 0, + * // "tlsSettings": {}, + * // "usedBy": [] * // } * }, * }); @@ -156917,6 +163231,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -156953,32 +163268,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - createSnapshot( - params: Params$Resource$Regiondisks$Createsnapshot, + patch( + params: Params$Resource$Regionbackendservices$Patch, options: StreamMethodOptions ): Promise>; - createSnapshot( - params?: Params$Resource$Regiondisks$Createsnapshot, + patch( + params?: Params$Resource$Regionbackendservices$Patch, options?: MethodOptions ): Promise>; - createSnapshot( - params: Params$Resource$Regiondisks$Createsnapshot, + patch( + params: Params$Resource$Regionbackendservices$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - createSnapshot( - params: Params$Resource$Regiondisks$Createsnapshot, + patch( + params: Params$Resource$Regionbackendservices$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - createSnapshot( - params: Params$Resource$Regiondisks$Createsnapshot, + patch( + params: Params$Resource$Regionbackendservices$Patch, callback: BodyResponseCallback ): void; - createSnapshot(callback: BodyResponseCallback): void; - createSnapshot( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Regiondisks$Createsnapshot + | Params$Resource$Regionbackendservices$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -156994,12 +163309,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Createsnapshot; + {}) as Params$Resource$Regionbackendservices$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Createsnapshot; + params = {} as Params$Resource$Regionbackendservices$Patch; options = {}; } @@ -157014,16 +163329,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/createSnapshot' + '/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'disk'], - pathParams: ['disk', 'project', 'region'], + requiredParams: ['project', 'region', 'backendService'], + pathParams: ['backendService', 'project', 'region'], context: this.context, }; if (callback) { @@ -157037,11 +163352,8 @@ export namespace compute_v1 { } /** - * Deletes the specified regional persistent disk. Deleting a regional disk - * removes all the replicas of its data permanently and is irreversible. - * However, deleting a disk does not delete anysnapshots - * previously made from the disk. You must separatelydelete - * snapshots. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -157073,59 +163385,33 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.delete({ - * // Name of the regional persistent disk to delete. - * disk: '\S{1,66}', + * const res = await compute.regionBackendServices.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -157141,53 +163427,53 @@ export namespace compute_v1 { * @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$Regiondisks$Delete, + setIamPolicy( + params: Params$Resource$Regionbackendservices$Setiampolicy, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Regiondisks$Delete, + setIamPolicy( + params?: Params$Resource$Regionbackendservices$Setiampolicy, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Regiondisks$Delete, + ): Promise>; + setIamPolicy( + params: Params$Resource$Regionbackendservices$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regiondisks$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Regionbackendservices$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regiondisks$Delete, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Regionbackendservices$Setiampolicy, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Regiondisks$Delete - | BodyResponseCallback + | Params$Resource$Regionbackendservices$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Delete; + {}) as Params$Resource$Regionbackendservices$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Delete; + params = {} as Params$Resource$Regionbackendservices$Setiampolicy; options = {}; } @@ -157202,30 +163488,32 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{disk}' + '/compute/v1/projects/{project}/regions/{region}/backendServices/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'disk'], - pathParams: ['disk', 'project', 'region'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns a specified regional persistent disk. + * Sets the Google Cloud Armor security policy for the specified backend + * service. For more information, seeGoogle + * Cloud Armor Overview * @example * ```js * // Before running the sample: @@ -157249,7 +163537,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -157258,68 +163545,68 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.get({ - * // Name of the regional persistent disk to return. - * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionBackendServices.setSecurityPolicy({ + * // Name of the BackendService resource to which the security policy should be + * // set. The name should conform to RFC1035. + * backendService: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "securityPolicy": "my_securityPolicy" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "accessMode": "my_accessMode", - * // "architecture": "my_architecture", - * // "asyncPrimaryDisk": {}, - * // "asyncSecondaryDisks": {}, + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "diskEncryptionKey": {}, - * // "enableConfidentialCompute": false, - * // "guestOsFeatures": [], + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "lastAttachTimestamp": "my_lastAttachTimestamp", - * // "lastDetachTimestamp": "my_lastDetachTimestamp", - * // "licenseCodes": [], - * // "licenses": [], - * // "locationHint": "my_locationHint", * // "name": "my_name", - * // "options": "my_options", - * // "params": {}, - * // "physicalBlockSizeBytes": "my_physicalBlockSizeBytes", - * // "provisionedIops": "my_provisionedIops", - * // "provisionedThroughput": "my_provisionedThroughput", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", - * // "replicaZones": [], - * // "resourcePolicies": [], - * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "sizeGb": "my_sizeGb", - * // "sourceConsistencyGroupPolicy": "my_sourceConsistencyGroupPolicy", - * // "sourceConsistencyGroupPolicyId": "my_sourceConsistencyGroupPolicyId", - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", - * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceStorageObject": "my_sourceStorageObject", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", * // "status": "my_status", - * // "storagePool": "my_storagePool", - * // "type": "my_type", - * // "users": [], + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -157336,52 +163623,53 @@ export namespace compute_v1 { * @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$Regiondisks$Get, + setSecurityPolicy( + params: Params$Resource$Regionbackendservices$Setsecuritypolicy, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Regiondisks$Get, + setSecurityPolicy( + params?: Params$Resource$Regionbackendservices$Setsecuritypolicy, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Regiondisks$Get, + ): Promise>; + setSecurityPolicy( + params: Params$Resource$Regionbackendservices$Setsecuritypolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regiondisks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setSecurityPolicy( + params: Params$Resource$Regionbackendservices$Setsecuritypolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regiondisks$Get, - callback: BodyResponseCallback + setSecurityPolicy( + params: Params$Resource$Regionbackendservices$Setsecuritypolicy, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + setSecurityPolicy(callback: BodyResponseCallback): void; + setSecurityPolicy( paramsOrCallback?: - | Params$Resource$Regiondisks$Get - | BodyResponseCallback + | Params$Resource$Regionbackendservices$Setsecuritypolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Regiondisks$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Regionbackendservices$Setsecuritypolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Get; + params = {} as Params$Resource$Regionbackendservices$Setsecuritypolicy; options = {}; } @@ -157396,31 +163684,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{disk}' + '/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}/setSecurityPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'disk'], - pathParams: ['disk', 'project', 'region'], + requiredParams: ['project', 'region', 'backendService'], + pathParams: ['backendService', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -157453,9 +163740,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.regionBackendServices.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -157463,15 +163748,20 @@ export namespace compute_v1 { * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Name or id of the resource for this request. * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "permissions": [] * // } * } * @@ -157487,53 +163777,57 @@ export namespace compute_v1 { * @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$Regiondisks$Getiampolicy, + testIamPermissions( + params: Params$Resource$Regionbackendservices$Testiampermissions, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Regiondisks$Getiampolicy, + testIamPermissions( + params?: Params$Resource$Regionbackendservices$Testiampermissions, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Regiondisks$Getiampolicy, + ): Promise>; + testIamPermissions( + params: Params$Resource$Regionbackendservices$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Regiondisks$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regionbackendservices$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Regiondisks$Getiampolicy, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regionbackendservices$Testiampermissions, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Regiondisks$Getiampolicy - | BodyResponseCallback + | Params$Resource$Regionbackendservices$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Getiampolicy; + {}) as Params$Resource$Regionbackendservices$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Getiampolicy; + params = {} as Params$Resource$Regionbackendservices$Testiampermissions; options = {}; } @@ -157548,9 +163842,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/backendServices/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -157561,18 +163855,20 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a persistent regional disk in the specified project using the data - * included in the request. + * Updates the specified regional BackendService resource with the data + * included in the request. For more information, + * see + * Backend services overview. * @example * ```js * // Before running the sample: @@ -157604,11 +163900,13 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.insert({ + * const res = await compute.regionBackendServices.update({ + * // Name of the BackendService resource to update. + * backendService: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -157624,63 +163922,63 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Source image to restore onto a disk. This field is optional. - * sourceImage: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "accessMode": "my_accessMode", - * // "architecture": "my_architecture", - * // "asyncPrimaryDisk": {}, - * // "asyncSecondaryDisks": {}, + * // "affinityCookieTtlSec": 0, + * // "backends": [], + * // "cdnPolicy": {}, + * // "circuitBreakers": {}, + * // "compressionMode": "my_compressionMode", + * // "connectionDraining": {}, + * // "connectionTrackingPolicy": {}, + * // "consistentHash": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "customMetrics": [], + * // "customRequestHeaders": [], + * // "customResponseHeaders": [], * // "description": "my_description", - * // "diskEncryptionKey": {}, - * // "enableConfidentialCompute": false, - * // "guestOsFeatures": [], + * // "edgeSecurityPolicy": "my_edgeSecurityPolicy", + * // "enableCDN": false, + * // "externalManagedMigrationState": "my_externalManagedMigrationState", + * // "externalManagedMigrationTestingPercentage": {}, + * // "failoverPolicy": {}, + * // "fingerprint": "my_fingerprint", + * // "haPolicy": {}, + * // "healthChecks": [], + * // "iap": {}, * // "id": "my_id", + * // "ipAddressSelectionPolicy": "my_ipAddressSelectionPolicy", * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "lastAttachTimestamp": "my_lastAttachTimestamp", - * // "lastDetachTimestamp": "my_lastDetachTimestamp", - * // "licenseCodes": [], - * // "licenses": [], - * // "locationHint": "my_locationHint", + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "localityLbPolicies": [], + * // "localityLbPolicy": "my_localityLbPolicy", + * // "logConfig": {}, + * // "maxStreamDuration": {}, + * // "metadatas": {}, * // "name": "my_name", - * // "options": "my_options", + * // "network": "my_network", + * // "networkPassThroughLbTrafficPolicy": {}, + * // "orchestrationInfo": {}, + * // "outlierDetection": {}, * // "params": {}, - * // "physicalBlockSizeBytes": "my_physicalBlockSizeBytes", - * // "provisionedIops": "my_provisionedIops", - * // "provisionedThroughput": "my_provisionedThroughput", + * // "port": 0, + * // "portName": "my_portName", + * // "protocol": "my_protocol", * // "region": "my_region", - * // "replicaZones": [], - * // "resourcePolicies": [], - * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "securityPolicy": "my_securityPolicy", + * // "securitySettings": {}, * // "selfLink": "my_selfLink", - * // "sizeGb": "my_sizeGb", - * // "sourceConsistencyGroupPolicy": "my_sourceConsistencyGroupPolicy", - * // "sourceConsistencyGroupPolicyId": "my_sourceConsistencyGroupPolicyId", - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", - * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceStorageObject": "my_sourceStorageObject", - * // "status": "my_status", - * // "storagePool": "my_storagePool", - * // "type": "my_type", - * // "users": [], - * // "zone": "my_zone" + * // "serviceBindings": [], + * // "serviceLbPolicy": "my_serviceLbPolicy", + * // "sessionAffinity": "my_sessionAffinity", + * // "strongSessionAffinityCookie": {}, + * // "subsetting": {}, + * // "timeoutSec": 0, + * // "tlsSettings": {}, + * // "usedBy": [] * // } * }, * }); @@ -157693,6 +163991,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -157729,32 +164028,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regiondisks$Insert, + update( + params: Params$Resource$Regionbackendservices$Update, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regiondisks$Insert, + update( + params?: Params$Resource$Regionbackendservices$Update, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Regiondisks$Insert, + update( + params: Params$Resource$Regionbackendservices$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regiondisks$Insert, + update( + params: Params$Resource$Regionbackendservices$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regiondisks$Insert, + update( + params: Params$Resource$Regionbackendservices$Update, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Regiondisks$Insert + | Params$Resource$Regionbackendservices$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -157770,12 +164069,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Insert; + {}) as Params$Resource$Regionbackendservices$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Insert; + params = {} as Params$Resource$Regionbackendservices$Update; options = {}; } @@ -157789,16 +164088,17 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/regions/{region}/disks' + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PUT', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'backendService'], + pathParams: ['backendService', 'project', 'region'], context: this.context, }; if (callback) { @@ -157810,10 +164110,493 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Regionbackendservices$Delete extends StandardParameters { /** - * Retrieves the list of persistent disks contained within - * the specified region. + * Name of the BackendService resource to delete. + */ + backendService?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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$Regionbackendservices$Get extends StandardParameters { + /** + * Name of the BackendService resource to return. + */ + backendService?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } + export interface Params$Resource$Regionbackendservices$Gethealth extends StandardParameters { + /** + * Name of the BackendService resource for which to get health. + */ + backendService?: string; + /** + * + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ResourceGroupReference; + } + export interface Params$Resource$Regionbackendservices$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Regionbackendservices$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$BackendService; + } + export interface Params$Resource$Regionbackendservices$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regionbackendservices$Listusable 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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + * It must be a string that meets the requirements in RFC1035. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regionbackendservices$Patch extends StandardParameters { + /** + * Name of the BackendService resource to patch. + */ + backendService?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$BackendService; + } + export interface Params$Resource$Regionbackendservices$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionSetPolicyRequest; + } + export interface Params$Resource$Regionbackendservices$Setsecuritypolicy extends StandardParameters { + /** + * Name of the BackendService resource to which the security policy should be + * set. The name should conform to RFC1035. + */ + backendService?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicyReference; + } + export interface Params$Resource$Regionbackendservices$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Regionbackendservices$Update extends StandardParameters { + /** + * Name of the BackendService resource to update. + */ + backendService?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$BackendService; + } + + export class Resource$Regioncommitments { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves an aggregated list of commitments by region. + * + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -157846,7 +164629,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.list({ + * const res = await compute.regionCommitments.aggregatedList({ * // 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 @@ -157906,6 +164689,14 @@ export namespace compute_v1 { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -157931,8 +164722,6 @@ export namespace compute_v1 { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -157940,16 +164729,20 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "id": "my_id", - * // "items": [], + * // "items": {}, * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -157966,52 +164759,57 @@ export namespace compute_v1 { * @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$Regiondisks$List, + aggregatedList( + params: Params$Resource$Regioncommitments$Aggregatedlist, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regiondisks$List, + aggregatedList( + params?: Params$Resource$Regioncommitments$Aggregatedlist, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regiondisks$List, + ): Promise>; + aggregatedList( + params: Params$Resource$Regioncommitments$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regiondisks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Regioncommitments$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regiondisks$List, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Regioncommitments$Aggregatedlist, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Regiondisks$List - | BodyResponseCallback + | Params$Resource$Regioncommitments$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Regiondisks$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Regioncommitments$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$List; + params = {} as Params$Resource$Regioncommitments$Aggregatedlist; options = {}; } @@ -158025,7 +164823,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/regions/{region}/disks' + rootUrl + '/compute/v1/projects/{project}/aggregated/commitments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -158033,22 +164831,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Removes resource policies from a regional disk. + * Returns the specified commitment resource. * @example * ```js * // Before running the sample: @@ -158072,6 +164870,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -158080,67 +164879,43 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.removeResourcePolicies({ - * // The disk name for this request. - * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionCommitments.get({ + * // Name of the commitment to return. + * commitment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "resourcePolicies": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "autoRenew": false, + * // "category": "my_category", * // "creationTimestamp": "my_creationTimestamp", + * // "customEndTimestamp": "my_customEndTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "endTimestamp": "my_endTimestamp", + * // "existingReservations": [], * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", + * // "licenseResource": {}, + * // "mergeSourceCommitments": [], * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "params": {}, + * // "plan": "my_plan", * // "region": "my_region", + * // "reservations": [], + * // "resourceStatus": {}, + * // "resources": [], * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", + * // "splitSourceCommitment": "my_splitSourceCommitment", + * // "startTimestamp": "my_startTimestamp", * // "status": "my_status", * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "type": "my_type" * // } * } * @@ -158156,55 +164931,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeResourcePolicies( - params: Params$Resource$Regiondisks$Removeresourcepolicies, + get( + params: Params$Resource$Regioncommitments$Get, options: StreamMethodOptions ): Promise>; - removeResourcePolicies( - params?: Params$Resource$Regiondisks$Removeresourcepolicies, + get( + params?: Params$Resource$Regioncommitments$Get, options?: MethodOptions - ): Promise>; - removeResourcePolicies( - params: Params$Resource$Regiondisks$Removeresourcepolicies, + ): Promise>; + get( + params: Params$Resource$Regioncommitments$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeResourcePolicies( - params: Params$Resource$Regiondisks$Removeresourcepolicies, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - removeResourcePolicies( - params: Params$Resource$Regiondisks$Removeresourcepolicies, - callback: BodyResponseCallback + get( + params: Params$Resource$Regioncommitments$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - removeResourcePolicies( - callback: BodyResponseCallback + get( + params: Params$Resource$Regioncommitments$Get, + callback: BodyResponseCallback ): void; - removeResourcePolicies( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Regiondisks$Removeresourcepolicies - | BodyResponseCallback + | Params$Resource$Regioncommitments$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Removeresourcepolicies; + {}) as Params$Resource$Regioncommitments$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Removeresourcepolicies; + params = {} as Params$Resource$Regioncommitments$Get; options = {}; } @@ -158219,30 +164992,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/removeResourcePolicies' + '/compute/v1/projects/{project}/regions/{region}/commitments/{commitment}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'disk'], - pathParams: ['disk', 'project', 'region'], + requiredParams: ['project', 'region', 'commitment'], + pathParams: ['commitment', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Resizes the specified regional persistent disk. + * Creates a commitment in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -158274,10 +165048,8 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.resize({ - * // Name of the regional persistent disk. - * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The project ID for this request. + * const res = await compute.regionCommitments.insert({ + * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region for this request. @@ -158301,7 +165073,30 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "sizeGb": "my_sizeGb" + * // "autoRenew": false, + * // "category": "my_category", + * // "creationTimestamp": "my_creationTimestamp", + * // "customEndTimestamp": "my_customEndTimestamp", + * // "description": "my_description", + * // "endTimestamp": "my_endTimestamp", + * // "existingReservations": [], + * // "id": "my_id", + * // "kind": "my_kind", + * // "licenseResource": {}, + * // "mergeSourceCommitments": [], + * // "name": "my_name", + * // "params": {}, + * // "plan": "my_plan", + * // "region": "my_region", + * // "reservations": [], + * // "resourceStatus": {}, + * // "resources": [], + * // "selfLink": "my_selfLink", + * // "splitSourceCommitment": "my_splitSourceCommitment", + * // "startTimestamp": "my_startTimestamp", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "type": "my_type" * // } * }, * }); @@ -158314,6 +165109,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -158350,32 +165146,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resize( - params: Params$Resource$Regiondisks$Resize, + insert( + params: Params$Resource$Regioncommitments$Insert, options: StreamMethodOptions ): Promise>; - resize( - params?: Params$Resource$Regiondisks$Resize, + insert( + params?: Params$Resource$Regioncommitments$Insert, options?: MethodOptions ): Promise>; - resize( - params: Params$Resource$Regiondisks$Resize, + insert( + params: Params$Resource$Regioncommitments$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resize( - params: Params$Resource$Regiondisks$Resize, + insert( + params: Params$Resource$Regioncommitments$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resize( - params: Params$Resource$Regiondisks$Resize, + insert( + params: Params$Resource$Regioncommitments$Insert, callback: BodyResponseCallback ): void; - resize(callback: BodyResponseCallback): void; - resize( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regiondisks$Resize + | Params$Resource$Regioncommitments$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -158391,12 +165187,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Resize; + {}) as Params$Resource$Regioncommitments$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Resize; + params = {} as Params$Resource$Regioncommitments$Insert; options = {}; } @@ -158411,7 +165207,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/resize' + '/compute/v1/projects/{project}/regions/{region}/commitments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -158419,8 +165215,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'disk'], - pathParams: ['disk', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -158434,8 +165230,8 @@ export namespace compute_v1 { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Retrieves a list of commitments contained within + * the specified region. * @example * ```js * // Before running the sample: @@ -158459,6 +165255,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -158467,33 +165264,111 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.setIamPolicy({ + * const res = await compute.regionCommitments.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} - * // } - * }, + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -158509,53 +165384,53 @@ export namespace compute_v1 { * @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$Regiondisks$Setiampolicy, + list( + params: Params$Resource$Regioncommitments$List, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Regiondisks$Setiampolicy, + list( + params?: Params$Resource$Regioncommitments$List, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Regiondisks$Setiampolicy, + ): Promise>; + list( + params: Params$Resource$Regioncommitments$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Regiondisks$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Regioncommitments$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Regiondisks$Setiampolicy, - callback: BodyResponseCallback + list( + params: Params$Resource$Regioncommitments$List, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Regiondisks$Setiampolicy - | BodyResponseCallback + | Params$Resource$Regioncommitments$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Setiampolicy; + {}) as Params$Resource$Regioncommitments$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Setiampolicy; + params = {} as Params$Resource$Regioncommitments$List; options = {}; } @@ -158570,30 +165445,32 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/commitments' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the labels on the target regional disk. + * Updates the specified commitment with the data included in the request. + * Update is performed only on selected fields included as part of + * update-mask. Only the following fields can be updated: auto_renew and plan. * @example * ```js * // Before running the sample: @@ -158625,11 +165502,15 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.setLabels({ + * const res = await compute.regionCommitments.update({ + * // Name of the commitment that you want to update. + * commitment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * paths: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The region for this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -158645,15 +165526,37 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} + * // "autoRenew": false, + * // "category": "my_category", + * // "creationTimestamp": "my_creationTimestamp", + * // "customEndTimestamp": "my_customEndTimestamp", + * // "description": "my_description", + * // "endTimestamp": "my_endTimestamp", + * // "existingReservations": [], + * // "id": "my_id", + * // "kind": "my_kind", + * // "licenseResource": {}, + * // "mergeSourceCommitments": [], + * // "name": "my_name", + * // "params": {}, + * // "plan": "my_plan", + * // "region": "my_region", + * // "reservations": [], + * // "resourceStatus": {}, + * // "resources": [], + * // "selfLink": "my_selfLink", + * // "splitSourceCommitment": "my_splitSourceCommitment", + * // "startTimestamp": "my_startTimestamp", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "type": "my_type" * // } * }, * }); @@ -158666,6 +165569,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -158702,32 +165606,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Regiondisks$Setlabels, + update( + params: Params$Resource$Regioncommitments$Update, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Regiondisks$Setlabels, + update( + params?: Params$Resource$Regioncommitments$Update, options?: MethodOptions ): Promise>; - setLabels( - params: Params$Resource$Regiondisks$Setlabels, + update( + params: Params$Resource$Regioncommitments$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Regiondisks$Setlabels, + update( + params: Params$Resource$Regioncommitments$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Regiondisks$Setlabels, + update( + params: Params$Resource$Regioncommitments$Update, callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Regiondisks$Setlabels + | Params$Resource$Regioncommitments$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -158743,12 +165647,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Setlabels; + {}) as Params$Resource$Regioncommitments$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Setlabels; + params = {} as Params$Resource$Regioncommitments$Update; options = {}; } @@ -158763,16 +165667,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{resource}/setLabels' + '/compute/v1/projects/{project}/regions/{region}/commitments/{commitment}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'region', 'commitment'], + pathParams: ['commitment', 'project', 'region'], context: this.context, }; if (callback) { @@ -158784,10 +165688,336 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Regioncommitments$Aggregatedlist extends StandardParameters { /** - * Starts asynchronous replication. - * Must be invoked on the primary disk. + * 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 onresource 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 GoogleRE2 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; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Regioncommitments$Get extends StandardParameters { + /** + * Name of the commitment to return. + */ + commitment?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + } + export interface Params$Resource$Regioncommitments$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$Commitment; + } + export interface Params$Resource$Regioncommitments$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regioncommitments$Update extends StandardParameters { + /** + * Name of the commitment that you want to update. + */ + commitment?: string; + /** + * + */ + paths?: string[]; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Commitment; + } + + export class Resource$Regioncompositehealthchecks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the list of all CompositeHealthCheck resources (all + * regional) available to the specified project. + * + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -158811,6 +166041,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -158819,67 +166050,121 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.startAsyncReplication({ - * // The name of the persistent disk. - * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. + * const res = await compute.regionCompositeHealthChecks.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the project scoping this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "asyncSecondaryDisk": "my_asyncSecondaryDisk" - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -158895,55 +166180,62 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - startAsyncReplication( - params: Params$Resource$Regiondisks$Startasyncreplication, + aggregatedList( + params: Params$Resource$Regioncompositehealthchecks$Aggregatedlist, options: StreamMethodOptions ): Promise>; - startAsyncReplication( - params?: Params$Resource$Regiondisks$Startasyncreplication, + aggregatedList( + params?: Params$Resource$Regioncompositehealthchecks$Aggregatedlist, options?: MethodOptions - ): Promise>; - startAsyncReplication( - params: Params$Resource$Regiondisks$Startasyncreplication, + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Regioncompositehealthchecks$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - startAsyncReplication( - params: Params$Resource$Regiondisks$Startasyncreplication, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Regioncompositehealthchecks$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - startAsyncReplication( - params: Params$Resource$Regiondisks$Startasyncreplication, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Regioncompositehealthchecks$Aggregatedlist, + callback: BodyResponseCallback ): void; - startAsyncReplication( - callback: BodyResponseCallback + aggregatedList( + callback: BodyResponseCallback ): void; - startAsyncReplication( + aggregatedList( paramsOrCallback?: - | Params$Resource$Regiondisks$Startasyncreplication - | BodyResponseCallback + | Params$Resource$Regioncompositehealthchecks$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Startasyncreplication; + {}) as Params$Resource$Regioncompositehealthchecks$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Startasyncreplication; + params = + {} as Params$Resource$Regioncompositehealthchecks$Aggregatedlist; options = {}; } @@ -158958,31 +166250,32 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/startAsyncReplication' + '/compute/v1/projects/{project}/aggregated/compositeHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'disk'], - pathParams: ['disk', 'project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Stops asynchronous replication. - * Can be invoked either on the primary or on the secondary disk. + * Deletes the specified CompositeHealthCheck in the given region * @example * ```js * // Before running the sample: @@ -159014,13 +166307,13 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.stopAsyncReplication({ - * // The name of the persistent disk. - * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionCompositeHealthChecks.delete({ + * // Name of the CompositeHealthCheck resource to delete. + * compositeHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -159046,6 +166339,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -159082,34 +166376,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - stopAsyncReplication( - params: Params$Resource$Regiondisks$Stopasyncreplication, + delete( + params: Params$Resource$Regioncompositehealthchecks$Delete, options: StreamMethodOptions ): Promise>; - stopAsyncReplication( - params?: Params$Resource$Regiondisks$Stopasyncreplication, + delete( + params?: Params$Resource$Regioncompositehealthchecks$Delete, options?: MethodOptions ): Promise>; - stopAsyncReplication( - params: Params$Resource$Regiondisks$Stopasyncreplication, + delete( + params: Params$Resource$Regioncompositehealthchecks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stopAsyncReplication( - params: Params$Resource$Regiondisks$Stopasyncreplication, + delete( + params: Params$Resource$Regioncompositehealthchecks$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stopAsyncReplication( - params: Params$Resource$Regiondisks$Stopasyncreplication, - callback: BodyResponseCallback - ): void; - stopAsyncReplication( + delete( + params: Params$Resource$Regioncompositehealthchecks$Delete, callback: BodyResponseCallback ): void; - stopAsyncReplication( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Regiondisks$Stopasyncreplication + | Params$Resource$Regioncompositehealthchecks$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -159125,12 +166417,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Stopasyncreplication; + {}) as Params$Resource$Regioncompositehealthchecks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Stopasyncreplication; + params = {} as Params$Resource$Regioncompositehealthchecks$Delete; options = {}; } @@ -159145,16 +166437,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/stopAsyncReplication' + '/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'disk'], - pathParams: ['disk', 'project', 'region'], + requiredParams: ['project', 'region', 'compositeHealthCheck'], + pathParams: ['compositeHealthCheck', 'project', 'region'], context: this.context, }; if (callback) { @@ -159168,8 +166460,7 @@ export namespace compute_v1 { } /** - * Stops asynchronous replication for a consistency group of disks. - * Can be invoked either in the primary or secondary scope. + * Returns the specified CompositeHealthCheck resource in the given region. * @example * ```js * // Before running the sample: @@ -159193,6 +166484,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -159201,33 +166493,353 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.stopGroupAsyncReplication({ + * const res = await compute.regionCompositeHealthChecks.get({ + * // Name of the CompositeHealthCheck resource to return. + * compositeHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. This must be the region of the - * // primary or secondary disks in the consistency group. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', + * }); + * console.log(res.data); * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "resourcePolicy": "my_resourcePolicy" + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "healthDestination": "my_healthDestination", + * // "healthSources": [], + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regioncompositehealthchecks$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Regioncompositehealthchecks$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Regioncompositehealthchecks$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regioncompositehealthchecks$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regioncompositehealthchecks$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Regioncompositehealthchecks$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioncompositehealthchecks$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioncompositehealthchecks$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'compositeHealthCheck'], + pathParams: ['compositeHealthCheck', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the most recent health check results for this + * regional CompositeHealthCheck. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionCompositeHealthChecks.getHealth({ + * // Name of the CompositeHealthCheck resource to get health for. + * compositeHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "healthSources": [], + * // "healthState": "my_healthState", + * // "kind": "my_kind" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getHealth( + params: Params$Resource$Regioncompositehealthchecks$Gethealth, + options: StreamMethodOptions + ): Promise>; + getHealth( + params?: Params$Resource$Regioncompositehealthchecks$Gethealth, + options?: MethodOptions + ): Promise>; + getHealth( + params: Params$Resource$Regioncompositehealthchecks$Gethealth, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getHealth( + params: Params$Resource$Regioncompositehealthchecks$Gethealth, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getHealth( + params: Params$Resource$Regioncompositehealthchecks$Gethealth, + callback: BodyResponseCallback + ): void; + getHealth( + callback: BodyResponseCallback + ): void; + getHealth( + paramsOrCallback?: + | Params$Resource$Regioncompositehealthchecks$Gethealth + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioncompositehealthchecks$Gethealth; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioncompositehealthchecks$Gethealth; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}/getHealth' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'compositeHealthCheck'], + pathParams: ['compositeHealthCheck', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Create a CompositeHealthCheck in the specified project in the given region + * using the parameters that are included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionCompositeHealthChecks.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "healthDestination": "my_healthDestination", + * // "healthSources": [], + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId" * // } * }, * }); @@ -159240,6 +166852,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -159276,34 +166889,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - stopGroupAsyncReplication( - params: Params$Resource$Regiondisks$Stopgroupasyncreplication, + insert( + params: Params$Resource$Regioncompositehealthchecks$Insert, options: StreamMethodOptions ): Promise>; - stopGroupAsyncReplication( - params?: Params$Resource$Regiondisks$Stopgroupasyncreplication, + insert( + params?: Params$Resource$Regioncompositehealthchecks$Insert, options?: MethodOptions ): Promise>; - stopGroupAsyncReplication( - params: Params$Resource$Regiondisks$Stopgroupasyncreplication, + insert( + params: Params$Resource$Regioncompositehealthchecks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stopGroupAsyncReplication( - params: Params$Resource$Regiondisks$Stopgroupasyncreplication, + insert( + params: Params$Resource$Regioncompositehealthchecks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stopGroupAsyncReplication( - params: Params$Resource$Regiondisks$Stopgroupasyncreplication, - callback: BodyResponseCallback - ): void; - stopGroupAsyncReplication( + insert( + params: Params$Resource$Regioncompositehealthchecks$Insert, callback: BodyResponseCallback ): void; - stopGroupAsyncReplication( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regiondisks$Stopgroupasyncreplication + | Params$Resource$Regioncompositehealthchecks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -159319,12 +166930,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Stopgroupasyncreplication; + {}) as Params$Resource$Regioncompositehealthchecks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Stopgroupasyncreplication; + params = {} as Params$Resource$Regioncompositehealthchecks$Insert; options = {}; } @@ -159339,7 +166950,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/stopGroupAsyncReplication' + '/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -159362,7 +166973,7 @@ export namespace compute_v1 { } /** - * Returns permissions that a caller has on the specified resource. + * Lists the CompositeHealthChecks for a project in the given region. * @example * ```js * // Before running the sample: @@ -159395,28 +167006,111 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.testIamPermissions({ + * const res = await compute.regionCompositeHealthChecks.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -159432,57 +167126,55 @@ export namespace compute_v1 { * @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$Regiondisks$Testiampermissions, + list( + params: Params$Resource$Regioncompositehealthchecks$List, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Regiondisks$Testiampermissions, + list( + params?: Params$Resource$Regioncompositehealthchecks$List, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Regiondisks$Testiampermissions, + ): Promise>; + list( + params: Params$Resource$Regioncompositehealthchecks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Regiondisks$Testiampermissions, + list( + params: Params$Resource$Regioncompositehealthchecks$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Regiondisks$Testiampermissions, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + list( + params: Params$Resource$Regioncompositehealthchecks$List, + callback: BodyResponseCallback ): void; - testIamPermissions( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Regiondisks$Testiampermissions - | BodyResponseCallback + | Params$Resource$Regioncompositehealthchecks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Testiampermissions; + {}) as Params$Resource$Regioncompositehealthchecks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Testiampermissions; + params = {} as Params$Resource$Regioncompositehealthchecks$List; options = {}; } @@ -159497,31 +167189,33 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Update the specified disk with the data included in the request. Update is - * performed only on selected fields included as part of update-mask. + * Updates the specified regional CompositeHealthCheck resource + * with the data included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -159553,15 +167247,14 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDisks.update({ - * // The disk name for this request. - * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * paths: 'placeholder-value', + * const res = await compute.regionCompositeHealthChecks.patch({ + * // Name of the CompositeHealthCheck to update. The name + * // must be 1-63 characters long, and comply with RFC1035. + * compositeHealthCheck: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -159577,63 +167270,22 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "accessMode": "my_accessMode", - * // "architecture": "my_architecture", - * // "asyncPrimaryDisk": {}, - * // "asyncSecondaryDisks": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "diskEncryptionKey": {}, - * // "enableConfidentialCompute": false, - * // "guestOsFeatures": [], + * // "fingerprint": "my_fingerprint", + * // "healthDestination": "my_healthDestination", + * // "healthSources": [], * // "id": "my_id", * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "lastAttachTimestamp": "my_lastAttachTimestamp", - * // "lastDetachTimestamp": "my_lastDetachTimestamp", - * // "licenseCodes": [], - * // "licenses": [], - * // "locationHint": "my_locationHint", * // "name": "my_name", - * // "options": "my_options", - * // "params": {}, - * // "physicalBlockSizeBytes": "my_physicalBlockSizeBytes", - * // "provisionedIops": "my_provisionedIops", - * // "provisionedThroughput": "my_provisionedThroughput", * // "region": "my_region", - * // "replicaZones": [], - * // "resourcePolicies": [], - * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "sizeGb": "my_sizeGb", - * // "sourceConsistencyGroupPolicy": "my_sourceConsistencyGroupPolicy", - * // "sourceConsistencyGroupPolicyId": "my_sourceConsistencyGroupPolicyId", - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", - * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceStorageObject": "my_sourceStorageObject", - * // "status": "my_status", - * // "storagePool": "my_storagePool", - * // "type": "my_type", - * // "users": [], - * // "zone": "my_zone" + * // "selfLinkWithId": "my_selfLinkWithId" * // } * }, * }); @@ -159646,6 +167298,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -159682,32 +167335,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Regiondisks$Update, + patch( + params: Params$Resource$Regioncompositehealthchecks$Patch, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Regiondisks$Update, + patch( + params?: Params$Resource$Regioncompositehealthchecks$Patch, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Regiondisks$Update, + patch( + params: Params$Resource$Regioncompositehealthchecks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Regiondisks$Update, + patch( + params: Params$Resource$Regioncompositehealthchecks$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Regiondisks$Update, + patch( + params: Params$Resource$Regioncompositehealthchecks$Patch, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Regiondisks$Update + | Params$Resource$Regioncompositehealthchecks$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -159723,12 +167376,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisks$Update; + {}) as Params$Resource$Regioncompositehealthchecks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisks$Update; + params = {} as Params$Resource$Regioncompositehealthchecks$Patch; options = {}; } @@ -159743,7 +167396,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/disks/{disk}' + '/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{compositeHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -159751,8 +167404,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'disk'], - pathParams: ['disk', 'project', 'region'], + requiredParams: ['project', 'region', 'compositeHealthCheck'], + pathParams: ['compositeHealthCheck', 'project', 'region'], context: this.context, }; if (callback) { @@ -159764,120 +167417,297 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } - } - export interface Params$Resource$Regiondisks$Addresourcepolicies extends StandardParameters { - /** - * The disk name for this request. - */ - disk?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; /** - * 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. + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionCompositeHealthChecks.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - requestId?: string; + testIamPermissions( + params: Params$Resource$Regioncompositehealthchecks$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Regioncompositehealthchecks$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Regioncompositehealthchecks$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regioncompositehealthchecks$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regioncompositehealthchecks$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Regioncompositehealthchecks$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioncompositehealthchecks$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioncompositehealthchecks$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + export interface Params$Resource$Regioncompositehealthchecks$Aggregatedlist extends StandardParameters { /** - * Request body metadata + * 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 onresource 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 GoogleRE2 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. */ - requestBody?: Schema$RegionDisksAddResourcePoliciesRequest; - } - export interface Params$Resource$Regiondisks$Bulkinsert extends StandardParameters { + filter?: string; /** - * Project ID for this request. + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. */ - project?: string; + includeAllScopes?: boolean; /** - * The name of the region for this request. + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) */ - region?: string; + maxResults?: number; /** - * 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. + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. * - * 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. + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - requestBody?: Schema$BulkInsertDiskResource; - } - export interface Params$Resource$Regiondisks$Createsnapshot extends StandardParameters { + orderBy?: string; /** - * Name of the regional persistent disk to snapshot. + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. */ - disk?: string; + pageToken?: string; /** - * Project ID for this request. + * Name of the project scoping this request. */ project?: string; /** - * Name of the region for this request. - */ - region?: string; - /** - * 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. - * - * 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. + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - requestId?: string; - + returnPartialSuccess?: boolean; /** - * Request body metadata + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. */ - requestBody?: Schema$Snapshot; + serviceProjectNumber?: string; } - export interface Params$Resource$Regiondisks$Delete extends StandardParameters { + export interface Params$Resource$Regioncompositehealthchecks$Delete extends StandardParameters { /** - * Name of the regional persistent disk to delete. + * Name of the CompositeHealthCheck resource to delete. */ - disk?: string; + compositeHealthCheck?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region for this request. + * Name of the region scoping this request. */ region?: string; /** @@ -159897,45 +167727,41 @@ export namespace compute_v1 { */ requestId?: string; } - export interface Params$Resource$Regiondisks$Get extends StandardParameters { + export interface Params$Resource$Regioncompositehealthchecks$Get extends StandardParameters { /** - * Name of the regional persistent disk to return. + * Name of the CompositeHealthCheck resource to return. */ - disk?: string; + compositeHealthCheck?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region for this request. + * Name of the region scoping this request. */ region?: string; } - export interface Params$Resource$Regiondisks$Getiampolicy extends StandardParameters { + export interface Params$Resource$Regioncompositehealthchecks$Gethealth extends StandardParameters { /** - * Requested IAM Policy version. + * Name of the CompositeHealthCheck resource to get health for. */ - optionsRequestedPolicyVersion?: number; + compositeHealthCheck?: string; /** - * Project ID for this request. + * Name of the project scoping this request. */ project?: string; /** - * The name of the region for this request. + * Name of the region scoping this request. */ region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; } - export interface Params$Resource$Regiondisks$Insert extends StandardParameters { + export interface Params$Resource$Regioncompositehealthchecks$Insert extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the region for this request. + * Name of the region scoping this request. */ region?: string; /** @@ -159954,17 +167780,13 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * Source image to restore onto a disk. This field is optional. - */ - sourceImage?: string; /** * Request body metadata */ - requestBody?: Schema$Disk; + requestBody?: Schema$CompositeHealthCheck; } - export interface Params$Resource$Regiondisks$List extends StandardParameters { + export interface Params$Resource$Regioncompositehealthchecks$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -160059,7 +167881,7 @@ export namespace compute_v1 { */ project?: string; /** - * Name of the region for this request. + * Name of the region scoping this request. */ region?: string; /** @@ -160072,52 +167894,18 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Regiondisks$Removeresourcepolicies extends StandardParameters { + export interface Params$Resource$Regioncompositehealthchecks$Patch extends StandardParameters { /** - * The disk name for this request. + * Name of the CompositeHealthCheck to update. The name + * must be 1-63 characters long, and comply with RFC1035. */ - disk?: string; + compositeHealthCheck?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the region for this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionDisksRemoveResourcePoliciesRequest; - } - export interface Params$Resource$Regiondisks$Resize extends StandardParameters { - /** - * Name of the regional persistent disk. - */ - disk?: string; - /** - * The project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. + * Name of the region scoping this request. */ region?: string; /** @@ -160140,9 +167928,9 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$RegionDisksResizeRequest; + requestBody?: Schema$CompositeHealthCheck; } - export interface Params$Resource$Regiondisks$Setiampolicy extends StandardParameters { + export interface Params$Resource$Regioncompositehealthchecks$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -160159,227 +167947,35 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$RegionSetPolicyRequest; + requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Regiondisks$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The region for this request. - */ - region?: string; - /** - * 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. - * - * 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; - /** - * Name or id of the resource for this request. - */ - resource?: string; + + export class Resource$Regiondisks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Request body metadata - */ - requestBody?: Schema$RegionSetLabelsRequest; - } - export interface Params$Resource$Regiondisks$Startasyncreplication extends StandardParameters { - /** - * The name of the persistent disk. - */ - disk?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * 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. + * Adds existing resource policies to a regional disk. You can only add one + * policy which will be applied to this disk for scheduling snapshot + * creation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionDisksStartAsyncReplicationRequest; - } - export interface Params$Resource$Regiondisks$Stopasyncreplication extends StandardParameters { - /** - * The name of the persistent disk. - */ - disk?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * 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. - * - * 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$Regiondisks$Stopgroupasyncreplication extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. This must be the region of the - * primary or secondary disks in the consistency group. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$DisksStopGroupAsyncReplicationResource; - } - export interface Params$Resource$Regiondisks$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - export interface Params$Resource$Regiondisks$Update extends StandardParameters { - /** - * The disk name for this request. - */ - disk?: string; - /** - * - */ - paths?: string[]; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * 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. - * - * 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; - /** - * update_mask indicates fields to be updated as part of this request. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Disk; - } - - export class Resource$Regiondisktypes { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Returns the specified regional disk type. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * * async function main() { * const auth = new google.auth.GoogleAuth({ @@ -160387,7 +167983,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -160396,29 +167991,67 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDiskTypes.get({ - * // Name of the disk type to return. - * diskType: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionDisks.addResourcePolicies({ + * // The disk name for this request. + * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "resourcePolicies": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "defaultDiskSizeGb": "my_defaultDiskSizeGb", - * // "deprecated": {}, * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "validDiskSize": "my_validDiskSize", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -160435,53 +168068,53 @@ export namespace compute_v1 { * @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$Regiondisktypes$Get, + addResourcePolicies( + params: Params$Resource$Regiondisks$Addresourcepolicies, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Regiondisktypes$Get, + addResourcePolicies( + params?: Params$Resource$Regiondisks$Addresourcepolicies, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Regiondisktypes$Get, + ): Promise>; + addResourcePolicies( + params: Params$Resource$Regiondisks$Addresourcepolicies, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regiondisktypes$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + addResourcePolicies( + params: Params$Resource$Regiondisks$Addresourcepolicies, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regiondisktypes$Get, - callback: BodyResponseCallback + addResourcePolicies( + params: Params$Resource$Regiondisks$Addresourcepolicies, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + addResourcePolicies(callback: BodyResponseCallback): void; + addResourcePolicies( paramsOrCallback?: - | Params$Resource$Regiondisktypes$Get - | BodyResponseCallback + | Params$Resource$Regiondisks$Addresourcepolicies + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisktypes$Get; + {}) as Params$Resource$Regiondisks$Addresourcepolicies; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisktypes$Get; + params = {} as Params$Resource$Regiondisks$Addresourcepolicies; options = {}; } @@ -160496,30 +168129,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/diskTypes/{diskType}' + '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/addResourcePolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'diskType'], - pathParams: ['diskType', 'project', 'region'], + requiredParams: ['project', 'region', 'disk'], + pathParams: ['disk', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of regional disk types available to the specified project. + * Bulk create a set of disks. * @example * ```js * // Before running the sample: @@ -160543,7 +168176,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -160552,111 +168184,68 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionDiskTypes.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionDisks.bulkInsert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instantSnapshotGroupParameters": {}, + * // "snapshotGroupParameters": {}, + * // "sourceConsistencyGroupPolicy": "my_sourceConsistencyGroupPolicy" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -160672,53 +168261,53 @@ export namespace compute_v1 { * @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$Regiondisktypes$List, + bulkInsert( + params: Params$Resource$Regiondisks$Bulkinsert, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regiondisktypes$List, + bulkInsert( + params?: Params$Resource$Regiondisks$Bulkinsert, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regiondisktypes$List, + ): Promise>; + bulkInsert( + params: Params$Resource$Regiondisks$Bulkinsert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regiondisktypes$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + bulkInsert( + params: Params$Resource$Regiondisks$Bulkinsert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regiondisktypes$List, - callback: BodyResponseCallback + bulkInsert( + params: Params$Resource$Regiondisks$Bulkinsert, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + bulkInsert(callback: BodyResponseCallback): void; + bulkInsert( paramsOrCallback?: - | Params$Resource$Regiondisktypes$List - | BodyResponseCallback + | Params$Resource$Regiondisks$Bulkinsert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiondisktypes$List; + {}) as Params$Resource$Regiondisks$Bulkinsert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiondisktypes$List; + params = {} as Params$Resource$Regiondisks$Bulkinsert; options = {}; } @@ -160733,9 +168322,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/diskTypes' + '/compute/v1/projects/{project}/regions/{region}/disks/bulkInsert' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -160746,151 +168335,20 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Regiondisktypes$Get extends StandardParameters { - /** - * Name of the disk type to return. - */ - diskType?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - } - export interface Params$Resource$Regiondisktypes$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - - export class Resource$Regionhealthaggregationpolicies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Retrieves the list of all HealthAggregationPolicy resources, - * regional and global, available to the specified project. - * - * To prevent failure, it is recommended that you set the - * `returnPartialSuccess` parameter to `true`. + * Creates a snapshot of a specified persistent disk. For regular snapshot + * creation, consider using snapshots.insert + * instead, as that method supports more features, such as creating snapshots + * in a project different from the source disk project. * @example * ```js * // Before running the sample: @@ -160914,7 +168372,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -160923,121 +168380,108 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthAggregationPolicies.aggregatedList({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Name of the project scoping this request. + * const res = await compute.regionDisks.createSnapshot({ + * // Name of the regional persistent disk to snapshot. + * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "architecture": "my_architecture", + * // "autoCreated": false, + * // "chainName": "my_chainName", + * // "creationSizeBytes": "my_creationSizeBytes", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "downloadBytes": "my_downloadBytes", + * // "enableConfidentialCompute": false, + * // "guestFlush": false, + * // "guestOsFeatures": [], + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], + * // "locationHint": "my_locationHint", + * // "name": "my_name", + * // "params": {}, + * // "region": "my_region", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "snapshotEncryptionKey": {}, + * // "snapshotGroupId": "my_snapshotGroupId", + * // "snapshotGroupName": "my_snapshotGroupName", + * // "snapshotType": "my_snapshotType", + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskForRecoveryCheckpoint": "my_sourceDiskForRecoveryCheckpoint", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", + * // "sourceInstantSnapshotEncryptionKey": {}, + * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", + * // "sourceSnapshotSchedulePolicy": "my_sourceSnapshotSchedulePolicy", + * // "sourceSnapshotSchedulePolicyId": "my_sourceSnapshotSchedulePolicyId", + * // "status": "my_status", + * // "storageBytes": "my_storageBytes", + * // "storageBytesStatus": "my_storageBytesStatus", + * // "storageLocations": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -161053,62 +168497,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist, + createSnapshot( + params: Params$Resource$Regiondisks$Createsnapshot, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist, + createSnapshot( + params?: Params$Resource$Regiondisks$Createsnapshot, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist, + ): Promise>; + createSnapshot( + params: Params$Resource$Regiondisks$Createsnapshot, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist, - callback: BodyResponseCallback + createSnapshot( + params: Params$Resource$Regiondisks$Createsnapshot, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + createSnapshot( + params: Params$Resource$Regiondisks$Createsnapshot, + callback: BodyResponseCallback ): void; - aggregatedList( + createSnapshot(callback: BodyResponseCallback): void; + createSnapshot( paramsOrCallback?: - | Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Regiondisks$Createsnapshot + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist; + {}) as Params$Resource$Regiondisks$Createsnapshot; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist; + params = {} as Params$Resource$Regiondisks$Createsnapshot; options = {}; } @@ -161123,32 +168558,34 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/aggregated/healthAggregationPolicies' + '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/createSnapshot' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region', 'disk'], + pathParams: ['disk', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Deletes the specified HealthAggregationPolicy in the given region. + * Deletes the specified regional persistent disk. Deleting a regional disk + * removes all the replicas of its data permanently and is irreversible. + * However, deleting a disk does not delete anysnapshots + * previously made from the disk. You must separatelydelete + * snapshots. * @example * ```js * // Before running the sample: @@ -161180,14 +168617,13 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthAggregationPolicies.delete({ - * // Name of the HealthAggregationPolicy resource to delete. - * healthAggregationPolicy: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionDisks.delete({ + * // Name of the regional persistent disk to delete. + * disk: '\S{1,66}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -161213,6 +168649,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -161250,31 +168687,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Regionhealthaggregationpolicies$Delete, + params: Params$Resource$Regiondisks$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Regionhealthaggregationpolicies$Delete, + params?: Params$Resource$Regiondisks$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Regionhealthaggregationpolicies$Delete, + params: Params$Resource$Regiondisks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regionhealthaggregationpolicies$Delete, + params: Params$Resource$Regiondisks$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regionhealthaggregationpolicies$Delete, + params: Params$Resource$Regiondisks$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Regionhealthaggregationpolicies$Delete + | Params$Resource$Regiondisks$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -161290,12 +168727,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthaggregationpolicies$Delete; + {}) as Params$Resource$Regiondisks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthaggregationpolicies$Delete; + params = {} as Params$Resource$Regiondisks$Delete; options = {}; } @@ -161310,7 +168747,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{healthAggregationPolicy}' + '/compute/v1/projects/{project}/regions/{region}/disks/{disk}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -161318,8 +168755,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'healthAggregationPolicy'], - pathParams: ['healthAggregationPolicy', 'project', 'region'], + requiredParams: ['project', 'region', 'disk'], + pathParams: ['disk', 'project', 'region'], context: this.context, }; if (callback) { @@ -161333,7 +168770,7 @@ export namespace compute_v1 { } /** - * Returns the specified HealthAggregationPolicy resource in the given region. + * Returns a specified regional persistent disk. * @example * ```js * // Before running the sample: @@ -161366,32 +168803,69 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthAggregationPolicies.get({ - * // Name of the HealthAggregationPolicy resource to return. - * healthAggregationPolicy: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionDisks.get({ + * // Name of the regional persistent disk to return. + * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "accessMode": "my_accessMode", + * // "architecture": "my_architecture", + * // "asyncPrimaryDisk": {}, + * // "asyncSecondaryDisks": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "healthyPercentThreshold": 0, + * // "diskEncryptionKey": {}, + * // "enableConfidentialCompute": false, + * // "guestOsFeatures": [], * // "id": "my_id", * // "kind": "my_kind", - * // "minHealthyThreshold": 0, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "lastAttachTimestamp": "my_lastAttachTimestamp", + * // "lastDetachTimestamp": "my_lastDetachTimestamp", + * // "licenseCodes": [], + * // "licenses": [], + * // "locationHint": "my_locationHint", * // "name": "my_name", - * // "policyType": "my_policyType", + * // "options": "my_options", + * // "params": {}, + * // "physicalBlockSizeBytes": "my_physicalBlockSizeBytes", + * // "provisionedIops": "my_provisionedIops", + * // "provisionedThroughput": "my_provisionedThroughput", * // "region": "my_region", + * // "replicaZones": [], + * // "resourcePolicies": [], + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId" + * // "sizeGb": "my_sizeGb", + * // "sourceConsistencyGroupPolicy": "my_sourceConsistencyGroupPolicy", + * // "sourceConsistencyGroupPolicyId": "my_sourceConsistencyGroupPolicyId", + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", + * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceStorageObject": "my_sourceStorageObject", + * // "status": "my_status", + * // "storagePool": "my_storagePool", + * // "type": "my_type", + * // "users": [], + * // "zone": "my_zone" * // } * } * @@ -161408,54 +168882,51 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regionhealthaggregationpolicies$Get, + params: Params$Resource$Regiondisks$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regionhealthaggregationpolicies$Get, + params?: Params$Resource$Regiondisks$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regionhealthaggregationpolicies$Get, + params: Params$Resource$Regiondisks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionhealthaggregationpolicies$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regiondisks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionhealthaggregationpolicies$Get, - callback: BodyResponseCallback + params: Params$Resource$Regiondisks$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regionhealthaggregationpolicies$Get - | BodyResponseCallback + | Params$Resource$Regiondisks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthaggregationpolicies$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Regiondisks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthaggregationpolicies$Get; + params = {} as Params$Resource$Regiondisks$Get; options = {}; } @@ -161470,7 +168941,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{healthAggregationPolicy}' + '/compute/v1/projects/{project}/regions/{region}/disks/{disk}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -161478,23 +168949,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'healthAggregationPolicy'], - pathParams: ['healthAggregationPolicy', 'project', 'region'], + requiredParams: ['project', 'region', 'disk'], + pathParams: ['disk', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Create a HealthAggregationPolicy in the specified project in the given - * region using the parameters that are included in the request. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -161518,6 +168989,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -161526,43 +168998,234 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthAggregationPolicies.insert({ + * const res = await compute.regionDisks.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regiondisks$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Regiondisks$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Regiondisks$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Regiondisks$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Regiondisks$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Regiondisks$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regiondisks$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regiondisks$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/disks/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a persistent regional disk in the specified project using the data + * included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionDisks.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * // Source image to restore onto a disk. This field is optional. + * sourceImage: 'placeholder-value', + * + * // Request body metadata + * requestBody: { * // request body parameters * // { + * // "accessMode": "my_accessMode", + * // "architecture": "my_architecture", + * // "asyncPrimaryDisk": {}, + * // "asyncSecondaryDisks": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "healthyPercentThreshold": 0, + * // "diskEncryptionKey": {}, + * // "enableConfidentialCompute": false, + * // "guestOsFeatures": [], * // "id": "my_id", * // "kind": "my_kind", - * // "minHealthyThreshold": 0, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "lastAttachTimestamp": "my_lastAttachTimestamp", + * // "lastDetachTimestamp": "my_lastDetachTimestamp", + * // "licenseCodes": [], + * // "licenses": [], + * // "locationHint": "my_locationHint", * // "name": "my_name", - * // "policyType": "my_policyType", + * // "options": "my_options", + * // "params": {}, + * // "physicalBlockSizeBytes": "my_physicalBlockSizeBytes", + * // "provisionedIops": "my_provisionedIops", + * // "provisionedThroughput": "my_provisionedThroughput", * // "region": "my_region", + * // "replicaZones": [], + * // "resourcePolicies": [], + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId" + * // "sizeGb": "my_sizeGb", + * // "sourceConsistencyGroupPolicy": "my_sourceConsistencyGroupPolicy", + * // "sourceConsistencyGroupPolicyId": "my_sourceConsistencyGroupPolicyId", + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", + * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceStorageObject": "my_sourceStorageObject", + * // "status": "my_status", + * // "storagePool": "my_storagePool", + * // "type": "my_type", + * // "users": [], + * // "zone": "my_zone" * // } * }, * }); @@ -161575,6 +169238,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -161612,31 +169276,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Regionhealthaggregationpolicies$Insert, + params: Params$Resource$Regiondisks$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Regionhealthaggregationpolicies$Insert, + params?: Params$Resource$Regiondisks$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Regionhealthaggregationpolicies$Insert, + params: Params$Resource$Regiondisks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Regionhealthaggregationpolicies$Insert, + params: Params$Resource$Regiondisks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Regionhealthaggregationpolicies$Insert, + params: Params$Resource$Regiondisks$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Regionhealthaggregationpolicies$Insert + | Params$Resource$Regiondisks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -161652,12 +169316,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthaggregationpolicies$Insert; + {}) as Params$Resource$Regiondisks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthaggregationpolicies$Insert; + params = {} as Params$Resource$Regiondisks$Insert; options = {}; } @@ -161671,8 +169335,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies' + rootUrl + '/compute/v1/projects/{project}/regions/{region}/disks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -161695,7 +169358,8 @@ export namespace compute_v1 { } /** - * Lists the HealthAggregationPolicies for a project in the given region. + * Retrieves the list of persistent disks contained within + * the specified region. * @example * ```js * // Before running the sample: @@ -161728,7 +169392,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthAggregationPolicies.list({ + * const res = await compute.regionDisks.list({ * // 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 @@ -161813,7 +169477,7 @@ export namespace compute_v1 { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. @@ -161849,56 +169513,51 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Regionhealthaggregationpolicies$List, + params: Params$Resource$Regiondisks$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Regionhealthaggregationpolicies$List, + params?: Params$Resource$Regiondisks$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Regionhealthaggregationpolicies$List, + params: Params$Resource$Regiondisks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regionhealthaggregationpolicies$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Regionhealthaggregationpolicies$List, - callback: BodyResponseCallback + params: Params$Resource$Regiondisks$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Regiondisks$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Regionhealthaggregationpolicies$List - | BodyResponseCallback + | Params$Resource$Regiondisks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthaggregationpolicies$List; + let params = (paramsOrCallback || {}) as Params$Resource$Regiondisks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthaggregationpolicies$List; + params = {} as Params$Resource$Regiondisks$List; options = {}; } @@ -161912,8 +169571,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies' + rootUrl + '/compute/v1/projects/{project}/regions/{region}/disks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -161926,20 +169584,17 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the specified regional HealthAggregationPolicy - * resource with the data included in the request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Removes resource policies from a regional disk. * @example * ```js * // Before running the sample: @@ -161971,14 +169626,13 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthAggregationPolicies.patch({ - * // Name of the HealthAggregationPolicy to update. The name - * // must be 1-63 characters long, and comply with RFC1035. - * healthAggregationPolicy: 'placeholder-value', + * const res = await compute.regionDisks.removeResourcePolicies({ + * // The disk name for this request. + * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -161999,18 +169653,7 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "healthyPercentThreshold": 0, - * // "id": "my_id", - * // "kind": "my_kind", - * // "minHealthyThreshold": 0, - * // "name": "my_name", - * // "policyType": "my_policyType", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId" + * // "resourcePolicies": [] * // } * }, * }); @@ -162023,6 +169666,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -162059,32 +169703,34 @@ export namespace compute_v1 { * @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$Regionhealthaggregationpolicies$Patch, + removeResourcePolicies( + params: Params$Resource$Regiondisks$Removeresourcepolicies, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Regionhealthaggregationpolicies$Patch, + removeResourcePolicies( + params?: Params$Resource$Regiondisks$Removeresourcepolicies, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Regionhealthaggregationpolicies$Patch, + removeResourcePolicies( + params: Params$Resource$Regiondisks$Removeresourcepolicies, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionhealthaggregationpolicies$Patch, + removeResourcePolicies( + params: Params$Resource$Regiondisks$Removeresourcepolicies, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionhealthaggregationpolicies$Patch, + removeResourcePolicies( + params: Params$Resource$Regiondisks$Removeresourcepolicies, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + removeResourcePolicies( + callback: BodyResponseCallback + ): void; + removeResourcePolicies( paramsOrCallback?: - | Params$Resource$Regionhealthaggregationpolicies$Patch + | Params$Resource$Regiondisks$Removeresourcepolicies | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -162100,12 +169746,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthaggregationpolicies$Patch; + {}) as Params$Resource$Regiondisks$Removeresourcepolicies; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthaggregationpolicies$Patch; + params = {} as Params$Resource$Regiondisks$Removeresourcepolicies; options = {}; } @@ -162120,16 +169766,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{healthAggregationPolicy}' + '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/removeResourcePolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'healthAggregationPolicy'], - pathParams: ['healthAggregationPolicy', 'project', 'region'], + requiredParams: ['project', 'region', 'disk'], + pathParams: ['disk', 'project', 'region'], context: this.context, }; if (callback) { @@ -162143,7 +169789,7 @@ export namespace compute_v1 { } /** - * Returns permissions that a caller has on the specified resource. + * Resizes the specified regional persistent disk. * @example * ```js * // Before running the sample: @@ -162167,7 +169813,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -162176,20 +169821,34 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthAggregationPolicies.testIamPermissions({ - * // Project ID for this request. + * const res = await compute.regionDisks.resize({ + * // Name of the regional persistent disk. + * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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. + * // + * // 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: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "sizeGb": "my_sizeGb" * // } * }, * }); @@ -162197,7 +169856,33 @@ export namespace compute_v1 { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -162213,58 +169898,53 @@ export namespace compute_v1 { * @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$Regionhealthaggregationpolicies$Testiampermissions, + resize( + params: Params$Resource$Regiondisks$Resize, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Regionhealthaggregationpolicies$Testiampermissions, + resize( + params?: Params$Resource$Regiondisks$Resize, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Regionhealthaggregationpolicies$Testiampermissions, + ): Promise>; + resize( + params: Params$Resource$Regiondisks$Resize, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Regionhealthaggregationpolicies$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Regionhealthaggregationpolicies$Testiampermissions, - callback: BodyResponseCallback + resize( + params: Params$Resource$Regiondisks$Resize, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + resize( + params: Params$Resource$Regiondisks$Resize, + callback: BodyResponseCallback ): void; - testIamPermissions( + resize(callback: BodyResponseCallback): void; + resize( paramsOrCallback?: - | Params$Resource$Regionhealthaggregationpolicies$Testiampermissions - | BodyResponseCallback + | Params$Resource$Regiondisks$Resize + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthaggregationpolicies$Testiampermissions; + {}) as Params$Resource$Regiondisks$Resize; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regionhealthaggregationpolicies$Testiampermissions; + params = {} as Params$Resource$Regiondisks$Resize; options = {}; } @@ -162279,7 +169959,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/resize' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -162287,387 +169967,181 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'region', 'disk'], + pathParams: ['disk', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist 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. - * 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 onresource 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 GoogleRE2 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; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Name of the project scoping this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Regionhealthaggregationpolicies$Delete extends StandardParameters { - /** - * Name of the HealthAggregationPolicy resource to delete. - */ - healthAggregationPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; /** - * 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. - * - * 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. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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$Regionhealthaggregationpolicies$Get extends StandardParameters { - /** - * Name of the HealthAggregationPolicy resource to return. - */ - healthAggregationPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - } - export interface Params$Resource$Regionhealthaggregationpolicies$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * 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. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$HealthAggregationPolicy; - } - export interface Params$Resource$Regionhealthaggregationpolicies$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. - * These two types of filter expressions cannot be mixed in one request. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * 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 `:`. + * // Do the magic + * const res = await compute.regionDisks.setIamPolicy({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, + * }); + * console.log(res.data); * - * 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:* - * ``` + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } * - * 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 onresource labels. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Regionhealthaggregationpolicies$Patch extends StandardParameters { - /** - * Name of the HealthAggregationPolicy to update. The name - * must be 1-63 characters long, and comply with RFC1035. - */ - healthAggregationPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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). + * @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. */ - requestId?: string; + setIamPolicy( + params: Params$Resource$Regiondisks$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Regiondisks$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Regiondisks$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Regiondisks$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Regiondisks$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Regiondisks$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regiondisks$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$HealthAggregationPolicy; - } - export interface Params$Resource$Regionhealthaggregationpolicies$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regiondisks$Setiampolicy; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Regionhealthchecks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/disks/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Deletes the specified HealthCheck resource. + * Sets the labels on the target regional disk. * @example * ```js * // Before running the sample: @@ -162699,13 +170173,11 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthChecks.delete({ - * // Name of the HealthCheck resource to delete. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionDisks.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -162721,6 +170193,17 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, * }); * console.log(res.data); * @@ -162731,6 +170214,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -162767,32 +170251,32 @@ export namespace compute_v1 { * @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$Regionhealthchecks$Delete, + setLabels( + params: Params$Resource$Regiondisks$Setlabels, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Regionhealthchecks$Delete, + setLabels( + params?: Params$Resource$Regiondisks$Setlabels, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Regionhealthchecks$Delete, + setLabels( + params: Params$Resource$Regiondisks$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regionhealthchecks$Delete, + setLabels( + params: Params$Resource$Regiondisks$Setlabels, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regionhealthchecks$Delete, + setLabels( + params: Params$Resource$Regiondisks$Setlabels, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Regionhealthchecks$Delete + | Params$Resource$Regiondisks$Setlabels | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -162808,12 +170292,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthchecks$Delete; + {}) as Params$Resource$Regiondisks$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthchecks$Delete; + params = {} as Params$Resource$Regiondisks$Setlabels; options = {}; } @@ -162828,16 +170312,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthChecks/{healthCheck}' + '/compute/v1/projects/{project}/regions/{region}/disks/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'healthCheck'], - pathParams: ['healthCheck', 'project', 'region'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -162851,7 +170335,8 @@ export namespace compute_v1 { } /** - * Returns the specified HealthCheck resource. + * Starts asynchronous replication. + * Must be invoked on the primary disk. * @example * ```js * // Before running the sample: @@ -162875,7 +170360,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -162884,40 +170368,68 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthChecks.get({ - * // Name of the HealthCheck resource to return. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionDisks.startAsyncReplication({ + * // The name of the persistent disk. + * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "asyncSecondaryDisk": "my_asyncSecondaryDisk" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "checkIntervalSec": 0, + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "logConfig": {}, * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "unhealthyThreshold": 0 + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -162933,53 +170445,55 @@ export namespace compute_v1 { * @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$Regionhealthchecks$Get, + startAsyncReplication( + params: Params$Resource$Regiondisks$Startasyncreplication, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Regionhealthchecks$Get, + startAsyncReplication( + params?: Params$Resource$Regiondisks$Startasyncreplication, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Regionhealthchecks$Get, + ): Promise>; + startAsyncReplication( + params: Params$Resource$Regiondisks$Startasyncreplication, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regionhealthchecks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + startAsyncReplication( + params: Params$Resource$Regiondisks$Startasyncreplication, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regionhealthchecks$Get, - callback: BodyResponseCallback + startAsyncReplication( + params: Params$Resource$Regiondisks$Startasyncreplication, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + startAsyncReplication( + callback: BodyResponseCallback + ): void; + startAsyncReplication( paramsOrCallback?: - | Params$Resource$Regionhealthchecks$Get - | BodyResponseCallback + | Params$Resource$Regiondisks$Startasyncreplication + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthchecks$Get; + {}) as Params$Resource$Regiondisks$Startasyncreplication; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthchecks$Get; + params = {} as Params$Resource$Regiondisks$Startasyncreplication; options = {}; } @@ -162994,31 +170508,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthChecks/{healthCheck}' + '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/startAsyncReplication' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'healthCheck'], - pathParams: ['healthCheck', 'project', 'region'], + requiredParams: ['project', 'region', 'disk'], + pathParams: ['disk', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a HealthCheck resource in the specified project using the data - * included in the request. + * Stops asynchronous replication. + * Can be invoked either on the primary or on the secondary disk. * @example * ```js * // Before running the sample: @@ -163050,11 +170564,13 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthChecks.insert({ + * const res = await compute.regionDisks.stopAsyncReplication({ + * // The name of the persistent disk. + * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -163070,34 +170586,6 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "checkIntervalSec": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "logConfig": {}, - * // "name": "my_name", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "unhealthyThreshold": 0 - * // } - * }, * }); * console.log(res.data); * @@ -163108,6 +170596,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -163144,32 +170633,34 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regionhealthchecks$Insert, + stopAsyncReplication( + params: Params$Resource$Regiondisks$Stopasyncreplication, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regionhealthchecks$Insert, + stopAsyncReplication( + params?: Params$Resource$Regiondisks$Stopasyncreplication, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Regionhealthchecks$Insert, + stopAsyncReplication( + params: Params$Resource$Regiondisks$Stopasyncreplication, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionhealthchecks$Insert, + stopAsyncReplication( + params: Params$Resource$Regiondisks$Stopasyncreplication, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionhealthchecks$Insert, + stopAsyncReplication( + params: Params$Resource$Regiondisks$Stopasyncreplication, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + stopAsyncReplication( + callback: BodyResponseCallback + ): void; + stopAsyncReplication( paramsOrCallback?: - | Params$Resource$Regionhealthchecks$Insert + | Params$Resource$Regiondisks$Stopasyncreplication | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -163185,12 +170676,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthchecks$Insert; + {}) as Params$Resource$Regiondisks$Stopasyncreplication; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthchecks$Insert; + params = {} as Params$Resource$Regiondisks$Stopasyncreplication; options = {}; } @@ -163205,7 +170696,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthChecks' + '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/stopAsyncReplication' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -163213,8 +170704,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'disk'], + pathParams: ['disk', 'project', 'region'], context: this.context, }; if (callback) { @@ -163228,8 +170719,8 @@ export namespace compute_v1 { } /** - * Retrieves the list of HealthCheck resources available to the specified - * project. + * Stops asynchronous replication for a consistency group of disks. + * Can be invoked either in the primary or secondary scope. * @example * ```js * // Before running the sample: @@ -163253,7 +170744,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -163262,111 +170752,67 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthChecks.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionDisks.stopGroupAsyncReplication({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The name of the region for this request. This must be the region of the + * // primary or secondary disks in the consistency group. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "resourcePolicy": "my_resourcePolicy" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -163382,53 +170828,55 @@ export namespace compute_v1 { * @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$Regionhealthchecks$List, + stopGroupAsyncReplication( + params: Params$Resource$Regiondisks$Stopgroupasyncreplication, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regionhealthchecks$List, + stopGroupAsyncReplication( + params?: Params$Resource$Regiondisks$Stopgroupasyncreplication, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regionhealthchecks$List, + ): Promise>; + stopGroupAsyncReplication( + params: Params$Resource$Regiondisks$Stopgroupasyncreplication, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionhealthchecks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + stopGroupAsyncReplication( + params: Params$Resource$Regiondisks$Stopgroupasyncreplication, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionhealthchecks$List, - callback: BodyResponseCallback + stopGroupAsyncReplication( + params: Params$Resource$Regiondisks$Stopgroupasyncreplication, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + stopGroupAsyncReplication( + callback: BodyResponseCallback + ): void; + stopGroupAsyncReplication( paramsOrCallback?: - | Params$Resource$Regionhealthchecks$List - | BodyResponseCallback + | Params$Resource$Regiondisks$Stopgroupasyncreplication + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthchecks$List; + {}) as Params$Resource$Regiondisks$Stopgroupasyncreplication; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthchecks$List; + params = {} as Params$Resource$Regiondisks$Stopgroupasyncreplication; options = {}; } @@ -163443,9 +170891,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthChecks' + '/compute/v1/projects/{project}/regions/{region}/disks/stopGroupAsyncReplication' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -163456,20 +170904,17 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HealthCheck resource in the specified project using the data - * included in the request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -163493,6 +170938,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -163501,54 +170947,20 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthChecks.patch({ - * // Name of the HealthCheck resource to patch. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionDisks.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "logConfig": {}, - * // "name": "my_name", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "unhealthyThreshold": 0 + * // "permissions": [] * // } * }, * }); @@ -163556,32 +170968,7 @@ export namespace compute_v1 { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -163597,53 +170984,57 @@ export namespace compute_v1 { * @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$Regionhealthchecks$Patch, + testIamPermissions( + params: Params$Resource$Regiondisks$Testiampermissions, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Regionhealthchecks$Patch, + testIamPermissions( + params?: Params$Resource$Regiondisks$Testiampermissions, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Regionhealthchecks$Patch, + ): Promise>; + testIamPermissions( + params: Params$Resource$Regiondisks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionhealthchecks$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regiondisks$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionhealthchecks$Patch, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regiondisks$Testiampermissions, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Regionhealthchecks$Patch - | BodyResponseCallback + | Params$Resource$Regiondisks$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthchecks$Patch; + {}) as Params$Resource$Regiondisks$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthchecks$Patch; + params = {} as Params$Resource$Regiondisks$Testiampermissions; options = {}; } @@ -163658,30 +171049,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthChecks/{healthCheck}' + '/compute/v1/projects/{project}/regions/{region}/disks/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'healthCheck'], - pathParams: ['healthCheck', 'project', 'region'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Update the specified disk with the data included in the request. Update is + * performed only on selected fields included as part of update-mask. * @example * ```js * // Before running the sample: @@ -163705,7 +171097,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -163714,20 +171105,87 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthChecks.testIamPermissions({ + * const res = await compute.regionDisks.update({ + * // The disk name for this request. + * disk: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * paths: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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. + * // + * // 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: 'placeholder-value', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "accessMode": "my_accessMode", + * // "architecture": "my_architecture", + * // "asyncPrimaryDisk": {}, + * // "asyncSecondaryDisks": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "diskEncryptionKey": {}, + * // "enableConfidentialCompute": false, + * // "guestOsFeatures": [], + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "lastAttachTimestamp": "my_lastAttachTimestamp", + * // "lastDetachTimestamp": "my_lastDetachTimestamp", + * // "licenseCodes": [], + * // "licenses": [], + * // "locationHint": "my_locationHint", + * // "name": "my_name", + * // "options": "my_options", + * // "params": {}, + * // "physicalBlockSizeBytes": "my_physicalBlockSizeBytes", + * // "provisionedIops": "my_provisionedIops", + * // "provisionedThroughput": "my_provisionedThroughput", + * // "region": "my_region", + * // "replicaZones": [], + * // "resourcePolicies": [], + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "sizeGb": "my_sizeGb", + * // "sourceConsistencyGroupPolicy": "my_sourceConsistencyGroupPolicy", + * // "sourceConsistencyGroupPolicyId": "my_sourceConsistencyGroupPolicyId", + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", + * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceStorageObject": "my_sourceStorageObject", + * // "status": "my_status", + * // "storagePool": "my_storagePool", + * // "type": "my_type", + * // "users": [], + * // "zone": "my_zone" * // } * }, * }); @@ -163735,7 +171193,33 @@ export namespace compute_v1 { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -163751,57 +171235,53 @@ export namespace compute_v1 { * @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$Regionhealthchecks$Testiampermissions, + update( + params: Params$Resource$Regiondisks$Update, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Regionhealthchecks$Testiampermissions, + update( + params?: Params$Resource$Regiondisks$Update, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Regionhealthchecks$Testiampermissions, + ): Promise>; + update( + params: Params$Resource$Regiondisks$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Regionhealthchecks$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Regionhealthchecks$Testiampermissions, - callback: BodyResponseCallback + update( + params: Params$Resource$Regiondisks$Update, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + update( + params: Params$Resource$Regiondisks$Update, + callback: BodyResponseCallback ): void; - testIamPermissions( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Regionhealthchecks$Testiampermissions - | BodyResponseCallback + | Params$Resource$Regiondisks$Update + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthchecks$Testiampermissions; + {}) as Params$Resource$Regiondisks$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthchecks$Testiampermissions; + params = {} as Params$Resource$Regiondisks$Update; options = {}; } @@ -163816,31 +171296,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthChecks/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/regions/{region}/disks/{disk}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'region', 'disk'], + pathParams: ['disk', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HealthCheck resource in the specified project using the data - * included in the request. + * Rotates the customer-managed + * encryption key to the latest version for the specified persistent disk. * @example * ```js * // Before running the sample: @@ -163872,13 +171352,13 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthChecks.update({ - * // Name of the HealthCheck resource to update. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionDisks.updateKmsKey({ + * // Name of the Disk resource, should conform to RFC1035. + * disk: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -163899,27 +171379,7 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "logConfig": {}, - * // "name": "my_name", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "unhealthyThreshold": 0 + * // "kmsKeyName": "my_kmsKeyName" * // } * }, * }); @@ -163932,6 +171392,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -163968,32 +171429,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Regionhealthchecks$Update, + updateKmsKey( + params: Params$Resource$Regiondisks$Updatekmskey, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Regionhealthchecks$Update, + updateKmsKey( + params?: Params$Resource$Regiondisks$Updatekmskey, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Regionhealthchecks$Update, + updateKmsKey( + params: Params$Resource$Regiondisks$Updatekmskey, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Regionhealthchecks$Update, + updateKmsKey( + params: Params$Resource$Regiondisks$Updatekmskey, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Regionhealthchecks$Update, + updateKmsKey( + params: Params$Resource$Regiondisks$Updatekmskey, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + updateKmsKey(callback: BodyResponseCallback): void; + updateKmsKey( paramsOrCallback?: - | Params$Resource$Regionhealthchecks$Update + | Params$Resource$Regiondisks$Updatekmskey | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -164009,12 +171470,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthchecks$Update; + {}) as Params$Resource$Regiondisks$Updatekmskey; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthchecks$Update; + params = {} as Params$Resource$Regiondisks$Updatekmskey; options = {}; } @@ -164029,16 +171490,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthChecks/{healthCheck}' + '/compute/v1/projects/{project}/regions/{region}/disks/{disk}/updateKmsKey' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'healthCheck'], - pathParams: ['healthCheck', 'project', 'region'], + requiredParams: ['project', 'region', 'disk'], + pathParams: ['disk', 'project', 'region'], context: this.context, }; if (callback) { @@ -164052,17 +171513,48 @@ export namespace compute_v1 { } } - export interface Params$Resource$Regionhealthchecks$Delete extends StandardParameters { + export interface Params$Resource$Regiondisks$Addresourcepolicies extends StandardParameters { /** - * Name of the HealthCheck resource to delete. + * The disk name for this request. */ - healthCheck?: string; + disk?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * The name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionDisksAddResourcePoliciesRequest; + } + export interface Params$Resource$Regiondisks$Bulkinsert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. */ region?: string; /** @@ -164081,28 +171573,116 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BulkInsertDiskResource; } - export interface Params$Resource$Regionhealthchecks$Get extends StandardParameters { + export interface Params$Resource$Regiondisks$Createsnapshot extends StandardParameters { /** - * Name of the HealthCheck resource to return. + * Name of the regional persistent disk to snapshot. */ - healthCheck?: string; + disk?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * Name of the region for this request. */ region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$Snapshot; } - export interface Params$Resource$Regionhealthchecks$Insert extends StandardParameters { + export interface Params$Resource$Regiondisks$Delete extends StandardParameters { + /** + * Name of the regional persistent disk to delete. + */ + disk?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * Name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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$Regiondisks$Get extends StandardParameters { + /** + * Name of the regional persistent disk to return. + */ + disk?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + } + export interface Params$Resource$Regiondisks$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Regiondisks$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. */ region?: string; /** @@ -164121,13 +171701,17 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * Source image to restore onto a disk. This field is optional. + */ + sourceImage?: string; /** * Request body metadata */ - requestBody?: Schema$HealthCheck; + requestBody?: Schema$Disk; } - export interface Params$Resource$Regionhealthchecks$List extends StandardParameters { + export interface Params$Resource$Regiondisks$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -164222,7 +171806,7 @@ export namespace compute_v1 { */ project?: string; /** - * Name of the region scoping this request. + * Name of the region for this request. */ region?: string; /** @@ -164235,17 +171819,17 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Regionhealthchecks$Patch extends StandardParameters { + export interface Params$Resource$Regiondisks$Removeresourcepolicies extends StandardParameters { /** - * Name of the HealthCheck resource to patch. + * The disk name for this request. */ - healthCheck?: string; + disk?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * The name of the region for this request. */ region?: string; /** @@ -164268,9 +171852,44 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$HealthCheck; + requestBody?: Schema$RegionDisksRemoveResourcePoliciesRequest; } - export interface Params$Resource$Regionhealthchecks$Testiampermissions extends StandardParameters { + export interface Params$Resource$Regiondisks$Resize extends StandardParameters { + /** + * Name of the regional persistent disk. + */ + disk?: string; + /** + * The project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionDisksResizeRequest; + } + export interface Params$Resource$Regiondisks$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -164287,19 +171906,15 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$RegionSetPolicyRequest; } - export interface Params$Resource$Regionhealthchecks$Update extends StandardParameters { - /** - * Name of the HealthCheck resource to update. - */ - healthCheck?: string; + export interface Params$Resource$Regiondisks$Setlabels extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * The region for this request. */ region?: string; /** @@ -164318,206 +171933,219 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; /** * Request body metadata */ - requestBody?: Schema$HealthCheck; + requestBody?: Schema$RegionSetLabelsRequest; } - - export class Resource$Regionhealthcheckservices { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - + export interface Params$Resource$Regiondisks$Startasyncreplication extends StandardParameters { /** - * Deletes the specified regional HealthCheckService. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); + * The name of the persistent disk. + */ + disk?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * 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. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * 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. * - * // Do the magic - * const res = await compute.regionHealthCheckServices.delete({ - * // Name of the HealthCheckService to delete. The name - * // must be 1-63 characters long, and comply with RFC1035. - * healthCheckService: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * }); - * console.log(res.data); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionDisksStartAsyncReplicationRequest; + } + export interface Params$Resource$Regiondisks$Stopasyncreplication extends StandardParameters { + /** + * The name of the persistent disk. + */ + disk?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * 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. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * 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$Regiondisks$Stopgroupasyncreplication extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. This must be the region of the + * primary or secondary disks in the consistency group. + */ + region?: string; + /** + * 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. * - * ``` + * 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - delete( - params: Params$Resource$Regionhealthcheckservices$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Regionhealthcheckservices$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Regionhealthcheckservices$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Regionhealthcheckservices$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Regionhealthcheckservices$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Regionhealthcheckservices$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthcheckservices$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; + requestId?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthcheckservices$Delete; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$DisksStopGroupAsyncReplicationResource; + } + export interface Params$Resource$Regiondisks$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Regiondisks$Update extends StandardParameters { + /** + * The disk name for this request. + */ + disk?: string; + /** + * + */ + paths?: string[]; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'healthCheckService'], - pathParams: ['healthCheckService', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + /** + * Request body metadata + */ + requestBody?: Schema$Disk; + } + export interface Params$Resource$Regiondisks$Updatekmskey extends StandardParameters { + /** + * Name of the Disk resource, should conform to RFC1035. + */ + disk?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionDiskUpdateKmsKeyRequest; + } + + export class Resource$Regiondisktypes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Returns the specified regional HealthCheckService resource. + * Returns the specified regional disk type. * @example * ```js * // Before running the sample: @@ -164550,14 +172178,13 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthCheckServices.get({ - * // Name of the HealthCheckService to update. The name - * // must be 1-63 characters long, and comply with RFC1035. - * healthCheckService: 'placeholder-value', + * const res = await compute.regionDiskTypes.get({ + * // Name of the disk type to return. + * diskType: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); @@ -164565,17 +172192,16 @@ export namespace compute_v1 { * // Example response * // { * // "creationTimestamp": "my_creationTimestamp", + * // "defaultDiskSizeGb": "my_defaultDiskSizeGb", + * // "deprecated": {}, * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "healthChecks": [], - * // "healthStatusAggregationPolicy": "my_healthStatusAggregationPolicy", * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", - * // "networkEndpointGroups": [], - * // "notificationEndpoints": [], * // "region": "my_region", - * // "selfLink": "my_selfLink" + * // "selfLink": "my_selfLink", + * // "validDiskSize": "my_validDiskSize", + * // "zone": "my_zone" * // } * } * @@ -164592,52 +172218,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regionhealthcheckservices$Get, + params: Params$Resource$Regiondisktypes$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regionhealthcheckservices$Get, + params?: Params$Resource$Regiondisktypes$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regionhealthcheckservices$Get, + params: Params$Resource$Regiondisktypes$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionhealthcheckservices$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regiondisktypes$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionhealthcheckservices$Get, - callback: BodyResponseCallback + params: Params$Resource$Regiondisktypes$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regionhealthcheckservices$Get - | BodyResponseCallback + | Params$Resource$Regiondisktypes$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthcheckservices$Get; + {}) as Params$Resource$Regiondisktypes$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthcheckservices$Get; + params = {} as Params$Resource$Regiondisktypes$Get; options = {}; } @@ -164652,7 +172278,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}' + '/compute/v1/projects/{project}/regions/{region}/diskTypes/{diskType}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -164660,23 +172286,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'healthCheckService'], - pathParams: ['healthCheckService', 'project', 'region'], + requiredParams: ['project', 'region', 'diskType'], + pathParams: ['diskType', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a regional HealthCheckService resource in the - * specified project and region using the data included in the request. + * Retrieves a list of regional disk types available to the specified project. * @example * ```js * // Before running the sample: @@ -164700,6 +172325,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -164708,76 +172334,111 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthCheckServices.insert({ + * const res = await compute.regionDiskTypes.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "healthChecks": [], - * // "healthStatusAggregationPolicy": "my_healthStatusAggregationPolicy", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "networkEndpointGroups": [], - * // "notificationEndpoints": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink" - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -164793,53 +172454,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regionhealthcheckservices$Insert, + list( + params: Params$Resource$Regiondisktypes$List, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regionhealthcheckservices$Insert, + list( + params?: Params$Resource$Regiondisktypes$List, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Regionhealthcheckservices$Insert, + ): Promise>; + list( + params: Params$Resource$Regiondisktypes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionhealthcheckservices$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Regiondisktypes$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionhealthcheckservices$Insert, - callback: BodyResponseCallback + list( + params: Params$Resource$Regiondisktypes$List, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Regionhealthcheckservices$Insert - | BodyResponseCallback + | Params$Resource$Regiondisktypes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthcheckservices$Insert; + {}) as Params$Resource$Regiondisktypes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthcheckservices$Insert; + params = {} as Params$Resource$Regiondisktypes$List; options = {}; } @@ -164854,9 +172515,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthCheckServices' + '/compute/v1/projects/{project}/regions/{region}/diskTypes' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -164867,18 +172528,151 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Regiondisktypes$Get extends StandardParameters { /** - * Lists all the HealthCheckService resources that have been - * configured for the specified project in the given region. + * Name of the disk type to return. + */ + diskType?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + } + export interface Params$Resource$Regiondisktypes$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Regionhealthaggregationpolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the list of all HealthAggregationPolicy resources, + * regional and global, available to the specified project. + * + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -164911,7 +172705,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthCheckServices.list({ + * const res = await compute.regionHealthAggregationPolicies.aggregatedList({ * // 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 @@ -164971,6 +172765,14 @@ export namespace compute_v1 { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -164993,11 +172795,9 @@ export namespace compute_v1 { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Project ID for this request. + * // Name of the project scoping this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -165005,16 +172805,20 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "id": "my_id", - * // "items": [], + * // "items": {}, * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -165031,55 +172835,62 @@ export namespace compute_v1 { * @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$Regionhealthcheckservices$List, + aggregatedList( + params: Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regionhealthcheckservices$List, + aggregatedList( + params?: Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regionhealthcheckservices$List, + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionhealthcheckservices$List, + aggregatedList( + params: Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionhealthcheckservices$List, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Regionhealthcheckservices$List - | BodyResponseCallback + | Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthcheckservices$List; + {}) as Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthcheckservices$List; + params = + {} as Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist; options = {}; } @@ -165094,7 +172905,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthCheckServices' + '/compute/v1/projects/{project}/aggregated/healthAggregationPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -165102,25 +172913,24 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Updates the specified regional HealthCheckService resource - * with the data included in the request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Deletes the specified HealthAggregationPolicy in the given region. * @example * ```js * // Before running the sample: @@ -165152,10 +172962,10 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthCheckServices.patch({ - * // Name of the HealthCheckService to update. The name - * // must be 1-63 characters long, and comply with RFC1035. - * healthCheckService: 'placeholder-value', + * const res = await compute.regionHealthAggregationPolicies.delete({ + * // Name of the HealthAggregationPolicy resource to delete. + * healthAggregationPolicy: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -165175,25 +172985,6 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "healthChecks": [], - * // "healthStatusAggregationPolicy": "my_healthStatusAggregationPolicy", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "networkEndpointGroups": [], - * // "notificationEndpoints": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink" - * // } - * }, * }); * console.log(res.data); * @@ -165204,6 +172995,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -165240,32 +173032,32 @@ export namespace compute_v1 { * @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$Regionhealthcheckservices$Patch, + delete( + params: Params$Resource$Regionhealthaggregationpolicies$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Regionhealthcheckservices$Patch, + delete( + params?: Params$Resource$Regionhealthaggregationpolicies$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Regionhealthcheckservices$Patch, + delete( + params: Params$Resource$Regionhealthaggregationpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionhealthcheckservices$Patch, + delete( + params: Params$Resource$Regionhealthaggregationpolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionhealthcheckservices$Patch, + delete( + params: Params$Resource$Regionhealthaggregationpolicies$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Regionhealthcheckservices$Patch + | Params$Resource$Regionhealthaggregationpolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -165281,12 +173073,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthcheckservices$Patch; + {}) as Params$Resource$Regionhealthaggregationpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionhealthcheckservices$Patch; + params = {} as Params$Resource$Regionhealthaggregationpolicies$Delete; options = {}; } @@ -165301,16 +173093,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}' + '/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{healthAggregationPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'healthCheckService'], - pathParams: ['healthCheckService', 'project', 'region'], + requiredParams: ['project', 'region', 'healthAggregationPolicy'], + pathParams: ['healthAggregationPolicy', 'project', 'region'], context: this.context, }; if (callback) { @@ -165324,7 +173116,7 @@ export namespace compute_v1 { } /** - * Returns permissions that a caller has on the specified resource. + * Returns the specified HealthAggregationPolicy resource in the given region. * @example * ```js * // Before running the sample: @@ -165357,28 +173149,32 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionHealthCheckServices.testIamPermissions({ + * const res = await compute.regionHealthAggregationPolicies.get({ + * // Name of the HealthAggregationPolicy resource to return. + * healthAggregationPolicy: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "healthyPercentThreshold": 0, + * // "id": "my_id", + * // "kind": "my_kind", + * // "minHealthyThreshold": 0, + * // "name": "my_name", + * // "policyType": "my_policyType", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId" * // } * } * @@ -165394,58 +173190,55 @@ export namespace compute_v1 { * @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$Regionhealthcheckservices$Testiampermissions, + get( + params: Params$Resource$Regionhealthaggregationpolicies$Get, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Regionhealthcheckservices$Testiampermissions, + get( + params?: Params$Resource$Regionhealthaggregationpolicies$Get, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Regionhealthcheckservices$Testiampermissions, + ): Promise>; + get( + params: Params$Resource$Regionhealthaggregationpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Regionhealthcheckservices$Testiampermissions, + get( + params: Params$Resource$Regionhealthaggregationpolicies$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Regionhealthcheckservices$Testiampermissions, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + get( + params: Params$Resource$Regionhealthaggregationpolicies$Get, + callback: BodyResponseCallback ): void; - testIamPermissions( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Regionhealthcheckservices$Testiampermissions - | BodyResponseCallback + | Params$Resource$Regionhealthaggregationpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionhealthcheckservices$Testiampermissions; + {}) as Params$Resource$Regionhealthaggregationpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regionhealthcheckservices$Testiampermissions; + params = {} as Params$Resource$Regionhealthaggregationpolicies$Get; options = {}; } @@ -165460,308 +173253,47 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{healthAggregationPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'region', 'healthAggregationPolicy'], + pathParams: ['healthAggregationPolicy', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Regionhealthcheckservices$Delete extends StandardParameters { - /** - * Name of the HealthCheckService to delete. The name - * must be 1-63 characters long, and comply with RFC1035. - */ - healthCheckService?: string; - /** - * Project ID for this request. - */ - project?: string; /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. + * Create a HealthAggregationPolicy in the specified project in the given + * region using the parameters that are included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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$Regionhealthcheckservices$Get extends StandardParameters { - /** - * Name of the HealthCheckService to update. The name - * must be 1-63 characters long, and comply with RFC1035. - */ - healthCheckService?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - } - export interface Params$Resource$Regionhealthcheckservices$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$HealthCheckService; - } - export interface Params$Resource$Regionhealthcheckservices$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Regionhealthcheckservices$Patch extends StandardParameters { - /** - * Name of the HealthCheckService to update. The name - * must be 1-63 characters long, and comply with RFC1035. - */ - healthCheckService?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$HealthCheckService; - } - export interface Params$Resource$Regionhealthcheckservices$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - - export class Resource$Regioninstancegroupmanagers { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Flags the specified instances to be immediately removed from the managed - * instance group. Abandoning an instance does not delete the - * instance, but it does remove the instance from any target pools that are - * applied by the managed instance group. This method reduces thetargetSize of the managed instance group by the - * number of instances that you abandon. This operation is marked asDONE when the action is scheduled even if the instances have - * not yet been removed from the group. You must separately verify the - * status of the abandoning action with thelistmanagedinstances - * method. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. - * - * You can specify a maximum of 1000 instances with this method per request. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * * async function main() { * const auth = new google.auth.GoogleAuth({ @@ -165777,14 +173309,12 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.abandonInstances({ - * // Name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionHealthAggregationPolicies.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. - * region: 'placeholder-value', + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -165804,7 +173334,18 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "instances": [] + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "healthyPercentThreshold": 0, + * // "id": "my_id", + * // "kind": "my_kind", + * // "minHealthyThreshold": 0, + * // "name": "my_name", + * // "policyType": "my_policyType", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId" * // } * }, * }); @@ -165817,6 +173358,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -165853,218 +173395,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - abandonInstances( - params: Params$Resource$Regioninstancegroupmanagers$Abandoninstances, - options: StreamMethodOptions - ): Promise>; - abandonInstances( - params?: Params$Resource$Regioninstancegroupmanagers$Abandoninstances, - options?: MethodOptions - ): Promise>; - abandonInstances( - params: Params$Resource$Regioninstancegroupmanagers$Abandoninstances, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - abandonInstances( - params: Params$Resource$Regioninstancegroupmanagers$Abandoninstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - abandonInstances( - params: Params$Resource$Regioninstancegroupmanagers$Abandoninstances, - callback: BodyResponseCallback - ): void; - abandonInstances(callback: BodyResponseCallback): void; - abandonInstances( - paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Abandoninstances - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Abandoninstances; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Abandoninstances; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Apply updates to selected instances the managed instance group. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.regionInstanceGroupManagers.applyUpdatesToInstances( - * { - * // The name of the managed instance group, should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request, should conform to RFC1035. - * region: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allInstances": false, - * // "instances": [], - * // "minimalAction": "my_minimalAction", - * // "mostDisruptiveAllowedAction": "my_mostDisruptiveAllowedAction" - * // } - * }, - * }, - * ); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - applyUpdatesToInstances( - params: Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances, + insert( + params: Params$Resource$Regionhealthaggregationpolicies$Insert, options: StreamMethodOptions ): Promise>; - applyUpdatesToInstances( - params?: Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances, + insert( + params?: Params$Resource$Regionhealthaggregationpolicies$Insert, options?: MethodOptions ): Promise>; - applyUpdatesToInstances( - params: Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances, + insert( + params: Params$Resource$Regionhealthaggregationpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - applyUpdatesToInstances( - params: Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances, + insert( + params: Params$Resource$Regionhealthaggregationpolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - applyUpdatesToInstances( - params: Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances, - callback: BodyResponseCallback - ): void; - applyUpdatesToInstances( + insert( + params: Params$Resource$Regionhealthaggregationpolicies$Insert, callback: BodyResponseCallback ): void; - applyUpdatesToInstances( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances + | Params$Resource$Regionhealthaggregationpolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -166080,13 +173436,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances; + {}) as Params$Resource$Regionhealthaggregationpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances; + params = {} as Params$Resource$Regionhealthaggregationpolicies$Insert; options = {}; } @@ -166101,7 +173456,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances' + '/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -166109,8 +173464,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -166124,12 +173479,7 @@ export namespace compute_v1 { } /** - * Creates instances with per-instance configurations in this regional managed - * instance group. Instances are created using the current instance template. - * The create instances operation is marked DONE if - * the createInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of thecreating or actions with the listmanagedinstances - * method. + * Lists the HealthAggregationPolicies for a project in the given region. * @example * ```js * // Before running the sample: @@ -166153,6 +173503,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -166161,69 +173512,111 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.createInstances({ - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionHealthAggregationPolicies.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of theregion - * // where the managed instance group is located. - * // It should conform to RFC1035. - * region: 'placeholder-value', - * // 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. - * // - * // 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. + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -166239,54 +173632,57 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - createInstances( - params: Params$Resource$Regioninstancegroupmanagers$Createinstances, + list( + params: Params$Resource$Regionhealthaggregationpolicies$List, options: StreamMethodOptions ): Promise>; - createInstances( - params?: Params$Resource$Regioninstancegroupmanagers$Createinstances, + list( + params?: Params$Resource$Regionhealthaggregationpolicies$List, options?: MethodOptions - ): Promise>; - createInstances( - params: Params$Resource$Regioninstancegroupmanagers$Createinstances, + ): Promise>; + list( + params: Params$Resource$Regionhealthaggregationpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - createInstances( - params: Params$Resource$Regioninstancegroupmanagers$Createinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionhealthaggregationpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - createInstances( - params: Params$Resource$Regioninstancegroupmanagers$Createinstances, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionhealthaggregationpolicies$List, + callback: BodyResponseCallback ): void; - createInstances(callback: BodyResponseCallback): void; - createInstances( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Createinstances - | BodyResponseCallback + | Params$Resource$Regionhealthaggregationpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Createinstances; + {}) as Params$Resource$Regionhealthaggregationpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Createinstances; + params = {} as Params$Resource$Regionhealthaggregationpolicies$List; options = {}; } @@ -166301,31 +173697,33 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/createInstances' + '/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specified managed instance group and all of the instances - * in that group. + * Updates the specified regional HealthAggregationPolicy + * resource with the data included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -166357,14 +173755,15 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.delete({ - * // Name of the managed instance group to delete. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionHealthAggregationPolicies.patch({ + * // Name of the HealthAggregationPolicy to update. The name + * // must be 1-63 characters long, and comply with RFC1035. + * healthAggregationPolicy: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. - * region: 'placeholder-value', + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -166379,6 +173778,25 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "healthyPercentThreshold": 0, + * // "id": "my_id", + * // "kind": "my_kind", + * // "minHealthyThreshold": 0, + * // "name": "my_name", + * // "policyType": "my_policyType", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId" + * // } + * }, * }); * console.log(res.data); * @@ -166389,6 +173807,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -166425,32 +173844,32 @@ export namespace compute_v1 { * @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$Regioninstancegroupmanagers$Delete, + patch( + params: Params$Resource$Regionhealthaggregationpolicies$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Regioninstancegroupmanagers$Delete, + patch( + params?: Params$Resource$Regionhealthaggregationpolicies$Patch, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Regioninstancegroupmanagers$Delete, + patch( + params: Params$Resource$Regionhealthaggregationpolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regioninstancegroupmanagers$Delete, + patch( + params: Params$Resource$Regionhealthaggregationpolicies$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regioninstancegroupmanagers$Delete, + patch( + params: Params$Resource$Regionhealthaggregationpolicies$Patch, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Delete + | Params$Resource$Regionhealthaggregationpolicies$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -166466,12 +173885,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Delete; + {}) as Params$Resource$Regionhealthaggregationpolicies$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancegroupmanagers$Delete; + params = {} as Params$Resource$Regionhealthaggregationpolicies$Patch; options = {}; } @@ -166486,16 +173905,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}' + '/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{healthAggregationPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region', 'healthAggregationPolicy'], + pathParams: ['healthAggregationPolicy', 'project', 'region'], context: this.context, }; if (callback) { @@ -166509,21 +173928,7 @@ export namespace compute_v1 { } /** - * Flags the specified instances in the managed instance group to be - * immediately deleted. The instances are also removed from any target - * pools of which they were a member. This method reduces thetargetSize of the managed instance group by the number of - * instances that you delete. - * The deleteInstances operation is marked DONE if - * the deleteInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of thedeleting action with thelistmanagedinstances - * method. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. - * - * You can specify a maximum of 1000 instances with this method per request. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -166547,6 +173952,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -166555,35 +173961,20 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.deleteInstances({ - * // Name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionHealthAggregationPolicies.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', - * // 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. - * // - * // 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: 'placeholder-value', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "instances": [], - * // "skipInstancesOnValidationError": false + * // "permissions": [] * // } * }, * }); @@ -166591,32 +173982,7 @@ export namespace compute_v1 { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -166632,54 +173998,58 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deleteInstances( - params: Params$Resource$Regioninstancegroupmanagers$Deleteinstances, + testIamPermissions( + params: Params$Resource$Regionhealthaggregationpolicies$Testiampermissions, options: StreamMethodOptions ): Promise>; - deleteInstances( - params?: Params$Resource$Regioninstancegroupmanagers$Deleteinstances, + testIamPermissions( + params?: Params$Resource$Regionhealthaggregationpolicies$Testiampermissions, options?: MethodOptions - ): Promise>; - deleteInstances( - params: Params$Resource$Regioninstancegroupmanagers$Deleteinstances, + ): Promise>; + testIamPermissions( + params: Params$Resource$Regionhealthaggregationpolicies$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteInstances( - params: Params$Resource$Regioninstancegroupmanagers$Deleteinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regionhealthaggregationpolicies$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - deleteInstances( - params: Params$Resource$Regioninstancegroupmanagers$Deleteinstances, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regionhealthaggregationpolicies$Testiampermissions, + callback: BodyResponseCallback ): void; - deleteInstances(callback: BodyResponseCallback): void; - deleteInstances( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Deleteinstances - | BodyResponseCallback + | Params$Resource$Regionhealthaggregationpolicies$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Deleteinstances; + {}) as Params$Resource$Regionhealthaggregationpolicies$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Regioninstancegroupmanagers$Deleteinstances; + {} as Params$Resource$Regionhealthaggregationpolicies$Testiampermissions; options = {}; } @@ -166694,7 +174064,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances' + '/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -166702,145 +174072,513 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Regionhealthaggregationpolicies$Aggregatedlist extends StandardParameters { /** - * Deletes selected per-instance configurations for the managed instance - * group. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * 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. * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); + * 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 `:`. * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * 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:* + * ``` * - * // Do the magic - * const res = - * await compute.regionInstanceGroupManagers.deletePerInstanceConfigs({ - * // The name of the managed instance group. It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request, should conform to RFC1035. - * region: 'placeholder-value', + * 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 onresource labels. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "names": [] - * // } - * }, - * }); - * console.log(res.data); + * 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) + * ``` * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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: * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * `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 GoogleRE2 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; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Regionhealthaggregationpolicies$Delete extends StandardParameters { + /** + * Name of the HealthAggregationPolicy resource to delete. + */ + healthAggregationPolicy?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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$Regionhealthaggregationpolicies$Get extends StandardParameters { + /** + * Name of the HealthAggregationPolicy resource to return. + */ + healthAggregationPolicy?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } + export interface Params$Resource$Regionhealthaggregationpolicies$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HealthAggregationPolicy; + } + export interface Params$Resource$Regionhealthaggregationpolicies$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regionhealthaggregationpolicies$Patch extends StandardParameters { + /** + * Name of the HealthAggregationPolicy to update. The name + * must be 1-63 characters long, and comply with RFC1035. + */ + healthAggregationPolicy?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HealthAggregationPolicy; + } + export interface Params$Resource$Regionhealthaggregationpolicies$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Regionhealthchecks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified HealthCheck resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthChecks.delete({ + * // Name of the HealthCheck resource to delete. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` * * @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. */ - deletePerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs, + delete( + params: Params$Resource$Regionhealthchecks$Delete, options: StreamMethodOptions ): Promise>; - deletePerInstanceConfigs( - params?: Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs, + delete( + params?: Params$Resource$Regionhealthchecks$Delete, options?: MethodOptions ): Promise>; - deletePerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs, + delete( + params: Params$Resource$Regionhealthchecks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deletePerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs, + delete( + params: Params$Resource$Regionhealthchecks$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deletePerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs, - callback: BodyResponseCallback - ): void; - deletePerInstanceConfigs( + delete( + params: Params$Resource$Regionhealthchecks$Delete, callback: BodyResponseCallback ): void; - deletePerInstanceConfigs( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs + | Params$Resource$Regionhealthchecks$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -166856,13 +174594,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs; + {}) as Params$Resource$Regionhealthchecks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs; + params = {} as Params$Resource$Regionhealthchecks$Delete; options = {}; } @@ -166877,16 +174614,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs' + '/compute/v1/projects/{project}/regions/{region}/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region', 'healthCheck'], + pathParams: ['healthCheck', 'project', 'region'], context: this.context, }; if (callback) { @@ -166900,7 +174637,7 @@ export namespace compute_v1 { } /** - * Returns all of the details about the specified managed instance group. + * Returns the specified HealthCheck resource. * @example * ```js * // Before running the sample: @@ -166933,51 +174670,40 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.get({ - * // Name of the managed instance group to return. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionHealthChecks.get({ + * // Name of the HealthCheck resource to return. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. - * region: 'placeholder-value', + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "allInstancesConfig": {}, - * // "autoHealingPolicies": [], - * // "baseInstanceName": "my_baseInstanceName", + * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", - * // "currentActions": {}, * // "description": "my_description", - * // "distributionPolicy": {}, - * // "fingerprint": "my_fingerprint", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, + * // "healthyThreshold": 0, + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, * // "id": "my_id", - * // "instanceFlexibilityPolicy": {}, - * // "instanceGroup": "my_instanceGroup", - * // "instanceLifecyclePolicy": {}, - * // "instanceTemplate": "my_instanceTemplate", * // "kind": "my_kind", - * // "listManagedInstancesResults": "my_listManagedInstancesResults", + * // "logConfig": {}, * // "name": "my_name", - * // "namedPorts": [], * // "region": "my_region", - * // "resourcePolicies": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "standbyPolicy": {}, - * // "statefulPolicy": {}, - * // "status": {}, - * // "targetPools": [], - * // "targetSize": 0, - * // "targetStoppedSize": 0, - * // "targetSuspendedSize": 0, - * // "updatePolicy": {}, - * // "versions": [], - * // "zone": "my_zone" + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, + * // "timeoutSec": 0, + * // "type": "my_type", + * // "unhealthyThreshold": 0 * // } * } * @@ -166994,100 +174720,12363 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regioninstancegroupmanagers$Get, + params: Params$Resource$Regionhealthchecks$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regioninstancegroupmanagers$Get, + params?: Params$Resource$Regionhealthchecks$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regioninstancegroupmanagers$Get, + params: Params$Resource$Regionhealthchecks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regioninstancegroupmanagers$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regionhealthchecks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regioninstancegroupmanagers$Get, - callback: BodyResponseCallback + params: Params$Resource$Regionhealthchecks$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Get - | BodyResponseCallback + | Params$Resource$Regionhealthchecks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Get; + {}) as Params$Resource$Regionhealthchecks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancegroupmanagers$Get; + params = {} as Params$Resource$Regionhealthchecks$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthChecks/{healthCheck}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'healthCheck'], + pathParams: ['healthCheck', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a HealthCheck resource in the specified project using the data + * included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthChecks.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, + * // "healthyThreshold": 0, + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, + * // "id": "my_id", + * // "kind": "my_kind", + * // "logConfig": {}, + * // "name": "my_name", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, + * // "timeoutSec": 0, + * // "type": "my_type", + * // "unhealthyThreshold": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + insert( + params: Params$Resource$Regionhealthchecks$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Regionhealthchecks$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Regionhealthchecks$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regionhealthchecks$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regionhealthchecks$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Regionhealthchecks$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthchecks$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthchecks$Insert; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthChecks' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the list of HealthCheck resources available to the specified + * project. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthChecks.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthchecks$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Regionhealthchecks$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Regionhealthchecks$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regionhealthchecks$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regionhealthchecks$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Regionhealthchecks$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthchecks$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthchecks$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; options = {}; } - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthChecks' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates a HealthCheck resource in the specified project using the data + * included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthChecks.patch({ + * // Name of the HealthCheck resource to patch. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, + * // "healthyThreshold": 0, + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, + * // "id": "my_id", + * // "kind": "my_kind", + * // "logConfig": {}, + * // "name": "my_name", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, + * // "timeoutSec": 0, + * // "type": "my_type", + * // "unhealthyThreshold": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthchecks$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Regionhealthchecks$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Regionhealthchecks$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Regionhealthchecks$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Regionhealthchecks$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Regionhealthchecks$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthchecks$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthchecks$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthChecks/{healthCheck}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'healthCheck'], + pathParams: ['healthCheck', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthChecks.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthchecks$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Regionhealthchecks$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Regionhealthchecks$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regionhealthchecks$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regionhealthchecks$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Regionhealthchecks$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthchecks$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthchecks$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthChecks/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates a HealthCheck resource in the specified project using the data + * included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthChecks.update({ + * // Name of the HealthCheck resource to update. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, + * // "healthyThreshold": 0, + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, + * // "id": "my_id", + * // "kind": "my_kind", + * // "logConfig": {}, + * // "name": "my_name", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, + * // "timeoutSec": 0, + * // "type": "my_type", + * // "unhealthyThreshold": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + update( + params: Params$Resource$Regionhealthchecks$Update, + options: StreamMethodOptions + ): Promise>; + update( + params?: Params$Resource$Regionhealthchecks$Update, + options?: MethodOptions + ): Promise>; + update( + params: Params$Resource$Regionhealthchecks$Update, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + update( + params: Params$Resource$Regionhealthchecks$Update, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + update( + params: Params$Resource$Regionhealthchecks$Update, + callback: BodyResponseCallback + ): void; + update(callback: BodyResponseCallback): void; + update( + paramsOrCallback?: + | Params$Resource$Regionhealthchecks$Update + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthchecks$Update; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthchecks$Update; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthChecks/{healthCheck}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PUT', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'healthCheck'], + pathParams: ['healthCheck', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Regionhealthchecks$Delete extends StandardParameters { + /** + * Name of the HealthCheck resource to delete. + */ + healthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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$Regionhealthchecks$Get extends StandardParameters { + /** + * Name of the HealthCheck resource to return. + */ + healthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } + export interface Params$Resource$Regionhealthchecks$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HealthCheck; + } + export interface Params$Resource$Regionhealthchecks$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regionhealthchecks$Patch extends StandardParameters { + /** + * Name of the HealthCheck resource to patch. + */ + healthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HealthCheck; + } + export interface Params$Resource$Regionhealthchecks$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Regionhealthchecks$Update extends StandardParameters { + /** + * Name of the HealthCheck resource to update. + */ + healthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HealthCheck; + } + + export class Resource$Regionhealthcheckservices { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the list of all HealthCheckService resources, + * regional and global, available to the specified project. + * + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthCheckServices.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + aggregatedList( + params: Params$Resource$Regionhealthcheckservices$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Regionhealthcheckservices$Aggregatedlist, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Regionhealthcheckservices$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Regionhealthcheckservices$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Regionhealthcheckservices$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Regionhealthcheckservices$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthcheckservices$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthcheckservices$Aggregatedlist; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/aggregated/healthCheckServices' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Deletes the specified regional HealthCheckService. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthCheckServices.delete({ + * // Name of the HealthCheckService to delete. The name + * // must be 1-63 characters long, and comply with RFC1035. + * healthCheckService: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthcheckservices$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Regionhealthcheckservices$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Regionhealthcheckservices$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regionhealthcheckservices$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regionhealthcheckservices$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Regionhealthcheckservices$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthcheckservices$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthcheckservices$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'healthCheckService'], + pathParams: ['healthCheckService', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the specified regional HealthCheckService resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthCheckServices.get({ + * // Name of the HealthCheckService to update. The name + * // must be 1-63 characters long, and comply with RFC1035. + * healthCheckService: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "healthChecks": [], + * // "healthStatusAggregationPolicy": "my_healthStatusAggregationPolicy", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "networkEndpointGroups": [], + * // "notificationEndpoints": [], + * // "region": "my_region", + * // "selfLink": "my_selfLink" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthcheckservices$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Regionhealthcheckservices$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Regionhealthcheckservices$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regionhealthcheckservices$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regionhealthcheckservices$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Regionhealthcheckservices$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthcheckservices$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthcheckservices$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'healthCheckService'], + pathParams: ['healthCheckService', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a regional HealthCheckService resource in the + * specified project and region using the data included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthCheckServices.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "healthChecks": [], + * // "healthStatusAggregationPolicy": "my_healthStatusAggregationPolicy", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "networkEndpointGroups": [], + * // "notificationEndpoints": [], + * // "region": "my_region", + * // "selfLink": "my_selfLink" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + insert( + params: Params$Resource$Regionhealthcheckservices$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Regionhealthcheckservices$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Regionhealthcheckservices$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regionhealthcheckservices$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regionhealthcheckservices$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Regionhealthcheckservices$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthcheckservices$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthcheckservices$Insert; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthCheckServices' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists all the HealthCheckService resources that have been + * configured for the specified project in the given region. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthCheckServices.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthcheckservices$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Regionhealthcheckservices$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Regionhealthcheckservices$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regionhealthcheckservices$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regionhealthcheckservices$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Regionhealthcheckservices$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthcheckservices$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthcheckservices$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthCheckServices' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the specified regional HealthCheckService resource + * with the data included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthCheckServices.patch({ + * // Name of the HealthCheckService to update. The name + * // must be 1-63 characters long, and comply with RFC1035. + * healthCheckService: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "healthChecks": [], + * // "healthStatusAggregationPolicy": "my_healthStatusAggregationPolicy", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "networkEndpointGroups": [], + * // "notificationEndpoints": [], + * // "region": "my_region", + * // "selfLink": "my_selfLink" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthcheckservices$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Regionhealthcheckservices$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Regionhealthcheckservices$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Regionhealthcheckservices$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Regionhealthcheckservices$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Regionhealthcheckservices$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthcheckservices$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthcheckservices$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'healthCheckService'], + pathParams: ['healthCheckService', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthCheckServices.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthcheckservices$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Regionhealthcheckservices$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Regionhealthcheckservices$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regionhealthcheckservices$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regionhealthcheckservices$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Regionhealthcheckservices$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthcheckservices$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regionhealthcheckservices$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Regionhealthcheckservices$Aggregatedlist 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. + * 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 onresource 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 GoogleRE2 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; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Regionhealthcheckservices$Delete extends StandardParameters { + /** + * Name of the HealthCheckService to delete. The name + * must be 1-63 characters long, and comply with RFC1035. + */ + healthCheckService?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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$Regionhealthcheckservices$Get extends StandardParameters { + /** + * Name of the HealthCheckService to update. The name + * must be 1-63 characters long, and comply with RFC1035. + */ + healthCheckService?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } + export interface Params$Resource$Regionhealthcheckservices$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HealthCheckService; + } + export interface Params$Resource$Regionhealthcheckservices$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regionhealthcheckservices$Patch extends StandardParameters { + /** + * Name of the HealthCheckService to update. The name + * must be 1-63 characters long, and comply with RFC1035. + */ + healthCheckService?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HealthCheckService; + } + export interface Params$Resource$Regionhealthcheckservices$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Regionhealthsources { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the list of all HealthSource resources (all + * regional) available to the specified project. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthSources.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + aggregatedList( + params: Params$Resource$Regionhealthsources$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Regionhealthsources$Aggregatedlist, + options?: MethodOptions + ): Promise>; + aggregatedList( + params: Params$Resource$Regionhealthsources$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Regionhealthsources$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Regionhealthsources$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Regionhealthsources$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthsources$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthsources$Aggregatedlist; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/aggregated/healthSources' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified HealthSource in the given region + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthSources.delete({ + * // Name of the HealthSource resource to delete. + * healthSource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthsources$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Regionhealthsources$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Regionhealthsources$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regionhealthsources$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regionhealthsources$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Regionhealthsources$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthsources$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthsources$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthSources/{healthSource}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'healthSource'], + pathParams: ['healthSource', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the specified HealthSource resource in the given region. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthSources.get({ + * // Name of the HealthSource resource to return. + * healthSource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "healthAggregationPolicy": "my_healthAggregationPolicy", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceType": "my_sourceType", + * // "sources": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthsources$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Regionhealthsources$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Regionhealthsources$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regionhealthsources$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regionhealthsources$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Regionhealthsources$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthsources$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthsources$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthSources/{healthSource}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'healthSource'], + pathParams: ['healthSource', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the most recent health check results for this + * regional HealthSource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthSources.getHealth({ + * // Name of the HealthSource resource to get health for. + * healthSource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "healthState": "my_healthState", + * // "kind": "my_kind", + * // "sources": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getHealth( + params: Params$Resource$Regionhealthsources$Gethealth, + options: StreamMethodOptions + ): Promise>; + getHealth( + params?: Params$Resource$Regionhealthsources$Gethealth, + options?: MethodOptions + ): Promise>; + getHealth( + params: Params$Resource$Regionhealthsources$Gethealth, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getHealth( + params: Params$Resource$Regionhealthsources$Gethealth, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getHealth( + params: Params$Resource$Regionhealthsources$Gethealth, + callback: BodyResponseCallback + ): void; + getHealth(callback: BodyResponseCallback): void; + getHealth( + paramsOrCallback?: + | Params$Resource$Regionhealthsources$Gethealth + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthsources$Gethealth; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthsources$Gethealth; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthSources/{healthSource}/getHealth' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'healthSource'], + pathParams: ['healthSource', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Create a HealthSource in the specified project in the given region + * using the parameters that are included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthSources.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "healthAggregationPolicy": "my_healthAggregationPolicy", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceType": "my_sourceType", + * // "sources": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + insert( + params: Params$Resource$Regionhealthsources$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Regionhealthsources$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Regionhealthsources$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regionhealthsources$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regionhealthsources$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Regionhealthsources$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthsources$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthsources$Insert; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthSources' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists the HealthSources for a project in the given region. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthSources.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthsources$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Regionhealthsources$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Regionhealthsources$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regionhealthsources$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regionhealthsources$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Regionhealthsources$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthsources$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthsources$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthSources' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the specified regional HealthSource resource + * with the data included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthSources.patch({ + * // Name of the HealthSource to update. The name + * // must be 1-63 characters long, and comply with RFC1035. + * healthSource: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "healthAggregationPolicy": "my_healthAggregationPolicy", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceType": "my_sourceType", + * // "sources": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthsources$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Regionhealthsources$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Regionhealthsources$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Regionhealthsources$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Regionhealthsources$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Regionhealthsources$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthsources$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthsources$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthSources/{healthSource}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'healthSource'], + pathParams: ['healthSource', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionHealthSources.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionhealthsources$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Regionhealthsources$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Regionhealthsources$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regionhealthsources$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regionhealthsources$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Regionhealthsources$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionhealthsources$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionhealthsources$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/healthSources/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Regionhealthsources$Aggregatedlist 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. + * 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 onresource 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 GoogleRE2 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; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Regionhealthsources$Delete extends StandardParameters { + /** + * Name of the HealthSource resource to delete. + */ + healthSource?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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$Regionhealthsources$Get extends StandardParameters { + /** + * Name of the HealthSource resource to return. + */ + healthSource?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } + export interface Params$Resource$Regionhealthsources$Gethealth extends StandardParameters { + /** + * Name of the HealthSource resource to get health for. + */ + healthSource?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } + export interface Params$Resource$Regionhealthsources$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HealthSource; + } + export interface Params$Resource$Regionhealthsources$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regionhealthsources$Patch extends StandardParameters { + /** + * Name of the HealthSource to update. The name + * must be 1-63 characters long, and comply with RFC1035. + */ + healthSource?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$HealthSource; + } + export interface Params$Resource$Regionhealthsources$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Regioninstancegroupmanagerresizerequests { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Cancels the specified resize request. + * Cancelled resize request no longer waits for the resources to be + * provisioned. Cancel is only possible for requests that are in accepted + * state. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagerResizeRequests.cancel({ + * // The name of the managed instance group. + * // Name should conform to RFC1035 or be a resource ID. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region + * // scoping this request. Name should conform to RFC1035. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of the resize request to cancel. + * // Name should conform to RFC1035 or be a resource ID. + * resizeRequest: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regioninstancegroupmanagerresizerequests$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + options?: MethodOptions + ): Promise>; + cancel( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'project', + 'region', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'region', + 'resizeRequest', + ], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified, inactive resize request. Requests that are still + * active cannot be deleted. Deleting request does not delete instances that + * were provisioned previously. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagerResizeRequests.delete({ + * // The name of the managed instance group. + * // Name should conform to RFC1035 or be a resource ID. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region + * // scoping this request. Name should conform to RFC1035. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of the resize request to delete. + * // Name should conform to RFC1035 or be a resource ID. + * resizeRequest: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regioninstancegroupmanagerresizerequests$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagerresizerequests$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagerresizerequests$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagerresizerequests$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'project', + 'region', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'region', + 'resizeRequest', + ], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns all of the details about the specified resize request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagerResizeRequests.get({ + * // The name of the managed instance group. + * // Name should conform to RFC1035 or be a resource ID. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region + * // scoping this request. Name should conform to RFC1035. + * region: 'placeholder-value', + * // The name of the resize request. + * // Name should conform to RFC1035 or be a resource ID. + * resizeRequest: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "requestedRunDuration": {}, + * // "resizeBy": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "status": {}, + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regioninstancegroupmanagerresizerequests$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Regioninstancegroupmanagerresizerequests$Get, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagerresizerequests$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagerresizerequests$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagerresizerequests$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'project', + 'region', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'region', + 'resizeRequest', + ], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Creates a new Resize Request that starts provisioning VMs immediately + * or queues VM creation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagerResizeRequests.insert({ + * // Name of the managed instance group to which the resize request is scoped. + * // Name should conform to RFC1035 or be a resource ID. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region + * // scoping this request. Name should conform to RFC1035. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "requestedRunDuration": {}, + * // "resizeBy": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "status": {}, + * // "zone": "my_zone" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + insert( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Regioninstancegroupmanagerresizerequests$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagerresizerequests$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagerresizerequests$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagerresizerequests$Insert; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a list of Resize Requests that are contained in the + * managed instance group. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagerResizeRequests.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The name of the managed instance group. The name should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region + * // scoping this request. Name should conform to RFC1035. + * region: 'placeholder-value', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regioninstancegroupmanagerresizerequests$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Regioninstancegroupmanagerresizerequests$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regioninstancegroupmanagerresizerequests$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagerresizerequests$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagerresizerequests$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagerresizerequests$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Regioninstancegroupmanagerresizerequests$Cancel extends StandardParameters { + /** + * The name of the managed instance group. + * Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region + * scoping this request. Name should conform to RFC1035. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * The name of the resize request to cancel. + * Name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + } + export interface Params$Resource$Regioninstancegroupmanagerresizerequests$Delete extends StandardParameters { + /** + * The name of the managed instance group. + * Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region + * scoping this request. Name should conform to RFC1035. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * The name of the resize request to delete. + * Name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + } + export interface Params$Resource$Regioninstancegroupmanagerresizerequests$Get extends StandardParameters { + /** + * The name of the managed instance group. + * Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region + * scoping this request. Name should conform to RFC1035. + */ + region?: string; + /** + * The name of the resize request. + * Name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + } + export interface Params$Resource$Regioninstancegroupmanagerresizerequests$Insert extends StandardParameters { + /** + * Name of the managed instance group to which the resize request is scoped. + * Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region + * scoping this request. Name should conform to RFC1035. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagerResizeRequest; + } + export interface Params$Resource$Regioninstancegroupmanagerresizerequests$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The name of the managed instance group. The name should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region + * scoping this request. Name should conform to RFC1035. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Regioninstancegroupmanagers { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Flags the specified instances to be immediately removed from the managed + * instance group. Abandoning an instance does not delete the + * instance, but it does remove the instance from any target pools that are + * applied by the managed instance group. This method reduces thetargetSize of the managed instance group by the + * number of instances that you abandon. This operation is marked asDONE when the action is scheduled even if the instances have + * not yet been removed from the group. You must separately verify the + * status of the abandoning action with thelistmanagedinstances + * method. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. + * + * You can specify a maximum of 1000 instances with this method per request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.abandonInstances({ + * // Name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + abandonInstances( + params: Params$Resource$Regioninstancegroupmanagers$Abandoninstances, + options: StreamMethodOptions + ): Promise>; + abandonInstances( + params?: Params$Resource$Regioninstancegroupmanagers$Abandoninstances, + options?: MethodOptions + ): Promise>; + abandonInstances( + params: Params$Resource$Regioninstancegroupmanagers$Abandoninstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + abandonInstances( + params: Params$Resource$Regioninstancegroupmanagers$Abandoninstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + abandonInstances( + params: Params$Resource$Regioninstancegroupmanagers$Abandoninstances, + callback: BodyResponseCallback + ): void; + abandonInstances(callback: BodyResponseCallback): void; + abandonInstances( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Abandoninstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Abandoninstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Abandoninstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Apply updates to selected instances the managed instance group. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.applyUpdatesToInstances( + * { + * // The name of the managed instance group, should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request, should conform to RFC1035. + * region: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "allInstances": false, + * // "instances": [], + * // "minimalAction": "my_minimalAction", + * // "mostDisruptiveAllowedAction": "my_mostDisruptiveAllowedAction" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + applyUpdatesToInstances( + params: Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances, + options: StreamMethodOptions + ): Promise>; + applyUpdatesToInstances( + params?: Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances, + options?: MethodOptions + ): Promise>; + applyUpdatesToInstances( + params: Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + applyUpdatesToInstances( + params: Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + applyUpdatesToInstances( + params: Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances, + callback: BodyResponseCallback + ): void; + applyUpdatesToInstances( + callback: BodyResponseCallback + ): void; + applyUpdatesToInstances( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates instances with per-instance configurations in this regional managed + * instance group. Instances are created using the current instance template. + * The create instances operation is marked DONE if + * the createInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of thecreating or actions with the listmanagedinstances + * method. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.createInstances({ + * // The name of the managed instance group. + * // It should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of theregion + * // where the managed instance group is located. + * // It should conform to RFC1035. + * region: 'placeholder-value', + * // 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. + * // + * // 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. + * // + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + createInstances( + params: Params$Resource$Regioninstancegroupmanagers$Createinstances, + options: StreamMethodOptions + ): Promise>; + createInstances( + params?: Params$Resource$Regioninstancegroupmanagers$Createinstances, + options?: MethodOptions + ): Promise>; + createInstances( + params: Params$Resource$Regioninstancegroupmanagers$Createinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createInstances( + params: Params$Resource$Regioninstancegroupmanagers$Createinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createInstances( + params: Params$Resource$Regioninstancegroupmanagers$Createinstances, + callback: BodyResponseCallback + ): void; + createInstances(callback: BodyResponseCallback): void; + createInstances( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Createinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Createinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Createinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/createInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified managed instance group and all of the instances + * in that group. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.delete({ + * // Name of the managed instance group to delete. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regioninstancegroupmanagers$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Regioninstancegroupmanagers$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Regioninstancegroupmanagers$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regioninstancegroupmanagers$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regioninstancegroupmanagers$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstancegroupmanagers$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Flags the specified instances in the managed instance group to be + * immediately deleted. The instances are also removed from any target + * pools of which they were a member. This method reduces thetargetSize of the managed instance group by the number of + * instances that you delete. + * The deleteInstances operation is marked DONE if + * the deleteInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of thedeleting action with thelistmanagedinstances + * method. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. + * + * You can specify a maximum of 1000 instances with this method per request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.deleteInstances({ + * // Name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [], + * // "skipInstancesOnValidationError": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + deleteInstances( + params: Params$Resource$Regioninstancegroupmanagers$Deleteinstances, + options: StreamMethodOptions + ): Promise>; + deleteInstances( + params?: Params$Resource$Regioninstancegroupmanagers$Deleteinstances, + options?: MethodOptions + ): Promise>; + deleteInstances( + params: Params$Resource$Regioninstancegroupmanagers$Deleteinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + deleteInstances( + params: Params$Resource$Regioninstancegroupmanagers$Deleteinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + deleteInstances( + params: Params$Resource$Regioninstancegroupmanagers$Deleteinstances, + callback: BodyResponseCallback + ): void; + deleteInstances(callback: BodyResponseCallback): void; + deleteInstances( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Deleteinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Deleteinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Deleteinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes selected per-instance configurations for the managed instance + * group. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await compute.regionInstanceGroupManagers.deletePerInstanceConfigs({ + * // The name of the managed instance group. It should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request, should conform to RFC1035. + * region: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "names": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + deletePerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs, + options: StreamMethodOptions + ): Promise>; + deletePerInstanceConfigs( + params?: Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs, + options?: MethodOptions + ): Promise>; + deletePerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + deletePerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + deletePerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs, + callback: BodyResponseCallback + ): void; + deletePerInstanceConfigs( + callback: BodyResponseCallback + ): void; + deletePerInstanceConfigs( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns all of the details about the specified managed instance group. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.get({ + * // Name of the managed instance group to return. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "allInstancesConfig": {}, + * // "autoHealingPolicies": [], + * // "baseInstanceName": "my_baseInstanceName", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentActions": {}, + * // "description": "my_description", + * // "distributionPolicy": {}, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "instanceFlexibilityPolicy": {}, + * // "instanceGroup": "my_instanceGroup", + * // "instanceLifecyclePolicy": {}, + * // "instanceTemplate": "my_instanceTemplate", + * // "kind": "my_kind", + * // "listManagedInstancesResults": "my_listManagedInstancesResults", + * // "name": "my_name", + * // "namedPorts": [], + * // "region": "my_region", + * // "resourcePolicies": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "standbyPolicy": {}, + * // "statefulPolicy": {}, + * // "status": {}, + * // "targetPools": [], + * // "targetSize": 0, + * // "targetSizePolicy": {}, + * // "targetStoppedSize": 0, + * // "targetSuspendedSize": 0, + * // "updatePolicy": {}, + * // "versions": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regioninstancegroupmanagers$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Regioninstancegroupmanagers$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Regioninstancegroupmanagers$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regioninstancegroupmanagers$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regioninstancegroupmanagers$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstancegroupmanagers$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a managed instance group using the information that you specify + * in the request. After the group is created, instances in the group are + * created using the specified instance template. + * This operation is marked as DONE when the group is created + * even if the instances in the group have not yet been created. You must + * separately verify the status of the individual instances with thelistmanagedinstances + * method. + * + * A regional managed instance group can contain up to 2000 instances. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "allInstancesConfig": {}, + * // "autoHealingPolicies": [], + * // "baseInstanceName": "my_baseInstanceName", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentActions": {}, + * // "description": "my_description", + * // "distributionPolicy": {}, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "instanceFlexibilityPolicy": {}, + * // "instanceGroup": "my_instanceGroup", + * // "instanceLifecyclePolicy": {}, + * // "instanceTemplate": "my_instanceTemplate", + * // "kind": "my_kind", + * // "listManagedInstancesResults": "my_listManagedInstancesResults", + * // "name": "my_name", + * // "namedPorts": [], + * // "region": "my_region", + * // "resourcePolicies": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "standbyPolicy": {}, + * // "statefulPolicy": {}, + * // "status": {}, + * // "targetPools": [], + * // "targetSize": 0, + * // "targetSizePolicy": {}, + * // "targetStoppedSize": 0, + * // "targetSuspendedSize": 0, + * // "updatePolicy": {}, + * // "versions": [], + * // "zone": "my_zone" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + insert( + params: Params$Resource$Regioninstancegroupmanagers$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Regioninstancegroupmanagers$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Regioninstancegroupmanagers$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regioninstancegroupmanagers$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regioninstancegroupmanagers$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstancegroupmanagers$Insert; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the list of managed instance groups that are contained + * within the specified region. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regioninstancegroupmanagers$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Regioninstancegroupmanagers$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Regioninstancegroupmanagers$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regioninstancegroupmanagers$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regioninstancegroupmanagers$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstancegroupmanagers$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists all errors thrown by actions on instances for a given regional + * managed instance group. The filter andorderBy query parameters are not supported. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.listErrors({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The name of the managed instance group. + * // It must be a string that meets the requirements in RFC1035, or an + * // unsigned long integer: must match regexp pattern: + * // (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. + * instanceGroupManager: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * // This should conform to RFC1035. + * region: 'placeholder-value', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "items": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + listErrors( + params: Params$Resource$Regioninstancegroupmanagers$Listerrors, + options: StreamMethodOptions + ): Promise>; + listErrors( + params?: Params$Resource$Regioninstancegroupmanagers$Listerrors, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + listErrors( + params: Params$Resource$Regioninstancegroupmanagers$Listerrors, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listErrors( + params: Params$Resource$Regioninstancegroupmanagers$Listerrors, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listErrors( + params: Params$Resource$Regioninstancegroupmanagers$Listerrors, + callback: BodyResponseCallback + ): void; + listErrors( + callback: BodyResponseCallback + ): void; + listErrors( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Listerrors + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Listerrors; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstancegroupmanagers$Listerrors; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listErrors' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists the instances in the managed instance group and instances that are + * scheduled to be created. The list includes any current actions + * that the group has scheduled for its instances. The orderBy + * query parameter is not supported. The `pageToken` query parameter is + * supported only if the group's `listManagedInstancesResults` field is set + * to `PAGINATED`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.listManagedInstances({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "managedInstances": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + listManagedInstances( + params: Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances, + options: StreamMethodOptions + ): Promise>; + listManagedInstances( + params?: Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + listManagedInstances( + params: Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listManagedInstances( + params: Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listManagedInstances( + params: Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances, + callback: BodyResponseCallback + ): void; + listManagedInstances( + callback: BodyResponseCallback + ): void; + listManagedInstances( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists all of the per-instance configurations defined for the managed + * instance group. The orderBy query parameter is not supported. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.listPerInstanceConfigs({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The name of the managed instance group. It should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request, should conform to RFC1035. + * region: 'placeholder-value', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "items": [], + * // "nextPageToken": "my_nextPageToken", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + listPerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs, + options: StreamMethodOptions + ): Promise>; + listPerInstanceConfigs( + params?: Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + listPerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listPerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listPerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs, + callback: BodyResponseCallback + ): void; + listPerInstanceConfigs( + callback: BodyResponseCallback + ): void; + listPerInstanceConfigs( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates a managed instance group using the information that you specify + * in the request. + * This operation is marked as DONE when the group is patched + * even if the instances in the group are still in the process of being + * patched. You must separately verify the status of the individual instances + * with the listmanagedinstances + * method. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. + * + * If you update your group to specify a new template or instance + * configuration, it's possible that your intended specification for each VM + * in the group is different from the current state of that VM. To learn how + * to apply an updated configuration to the VMs in a MIG, seeUpdating instances in + * a MIG. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.patch({ + * // The name of the instance group manager. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "allInstancesConfig": {}, + * // "autoHealingPolicies": [], + * // "baseInstanceName": "my_baseInstanceName", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentActions": {}, + * // "description": "my_description", + * // "distributionPolicy": {}, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "instanceFlexibilityPolicy": {}, + * // "instanceGroup": "my_instanceGroup", + * // "instanceLifecyclePolicy": {}, + * // "instanceTemplate": "my_instanceTemplate", + * // "kind": "my_kind", + * // "listManagedInstancesResults": "my_listManagedInstancesResults", + * // "name": "my_name", + * // "namedPorts": [], + * // "region": "my_region", + * // "resourcePolicies": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "standbyPolicy": {}, + * // "statefulPolicy": {}, + * // "status": {}, + * // "targetPools": [], + * // "targetSize": 0, + * // "targetSizePolicy": {}, + * // "targetStoppedSize": 0, + * // "targetSuspendedSize": 0, + * // "updatePolicy": {}, + * // "versions": [], + * // "zone": "my_zone" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regioninstancegroupmanagers$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Regioninstancegroupmanagers$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Regioninstancegroupmanagers$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Regioninstancegroupmanagers$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Regioninstancegroupmanagers$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstancegroupmanagers$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Inserts or patches per-instance configurations for the managed instance + * group. perInstanceConfig.name serves as a key used to + * distinguish whether to perform insert or patch. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.patchPerInstanceConfigs( + * { + * // The name of the managed instance group. + * // It should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request, should conform to RFC1035. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "perInstanceConfigs": [] + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + patchPerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs, + options: StreamMethodOptions + ): Promise>; + patchPerInstanceConfigs( + params?: Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs, + options?: MethodOptions + ): Promise>; + patchPerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patchPerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patchPerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs, + callback: BodyResponseCallback + ): void; + patchPerInstanceConfigs( + callback: BodyResponseCallback + ): void; + patchPerInstanceConfigs( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Flags the specified VM instances in the managed instance group to be + * immediately recreated. Each instance is recreated using the group's current + * configuration. This operation is marked as DONE when the flag + * is set even if the instances have not yet been recreated. You must + * separately verify the status of each instance by checking itscurrentAction field; for more information, see Checking + * the status of managed instances. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. + * + * You can specify a maximum of 1000 instances with this method per request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.recreateInstances({ + * // Name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + recreateInstances( + params: Params$Resource$Regioninstancegroupmanagers$Recreateinstances, + options: StreamMethodOptions + ): Promise>; + recreateInstances( + params?: Params$Resource$Regioninstancegroupmanagers$Recreateinstances, + options?: MethodOptions + ): Promise>; + recreateInstances( + params: Params$Resource$Regioninstancegroupmanagers$Recreateinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + recreateInstances( + params: Params$Resource$Regioninstancegroupmanagers$Recreateinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + recreateInstances( + params: Params$Resource$Regioninstancegroupmanagers$Recreateinstances, + callback: BodyResponseCallback + ): void; + recreateInstances(callback: BodyResponseCallback): void; + recreateInstances( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Recreateinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Recreateinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Recreateinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Changes the intended size of the managed instance group. If you increase + * the size, the group creates new instances using the current instance + * template. If you decrease the size, the group deletes one or more + * instances. + * + * The resize operation is marked DONE if theresize request is successful. The underlying actions take + * additional time. You must separately verify the status of thecreating or deleting actions with thelistmanagedinstances + * method. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.resize({ + * // Name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * // Number of instances that should exist in this instance group + * // manager. + * size: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + resize( + params: Params$Resource$Regioninstancegroupmanagers$Resize, + options: StreamMethodOptions + ): Promise>; + resize( + params?: Params$Resource$Regioninstancegroupmanagers$Resize, + options?: MethodOptions + ): Promise>; + resize( + params: Params$Resource$Regioninstancegroupmanagers$Resize, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resize( + params: Params$Resource$Regioninstancegroupmanagers$Resize, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resize( + params: Params$Resource$Regioninstancegroupmanagers$Resize, + callback: BodyResponseCallback + ): void; + resize(callback: BodyResponseCallback): void; + resize( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Resize + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Resize; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstancegroupmanagers$Resize; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager', 'size'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Flags the specified instances in the managed instance group to be + * resumed. This method increases thetargetSize and decreases the targetSuspendedSize + * of the managed instance group by the number of instances that you resume. + * The resumeInstances operation is marked DONE if + * the resumeInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theRESUMING action with thelistmanagedinstances + * method. + * + * In this request, you can only specify instances that are suspended. For + * example, if an instance was previously suspended using the suspendInstances + * method, it can be resumed using the resumeInstances method. + * + * If a health check is attached to the managed instance group, the specified + * instances will be verified as healthy after they are resumed. + * + * You can specify a maximum of 1000 instances with this method per request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.resumeInstances({ + * // Name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + resumeInstances( + params: Params$Resource$Regioninstancegroupmanagers$Resumeinstances, + options: StreamMethodOptions + ): Promise>; + resumeInstances( + params?: Params$Resource$Regioninstancegroupmanagers$Resumeinstances, + options?: MethodOptions + ): Promise>; + resumeInstances( + params: Params$Resource$Regioninstancegroupmanagers$Resumeinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resumeInstances( + params: Params$Resource$Regioninstancegroupmanagers$Resumeinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resumeInstances( + params: Params$Resource$Regioninstancegroupmanagers$Resumeinstances, + callback: BodyResponseCallback + ): void; + resumeInstances(callback: BodyResponseCallback): void; + resumeInstances( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Resumeinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Resumeinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Resumeinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resumeInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the instance template to use when creating new instances or recreating + * instances in this group. Existing instances are not affected. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.setInstanceTemplate({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instanceTemplate": "my_instanceTemplate" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + setInstanceTemplate( + params: Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate, + options: StreamMethodOptions + ): Promise>; + setInstanceTemplate( + params?: Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate, + options?: MethodOptions + ): Promise>; + setInstanceTemplate( + params: Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setInstanceTemplate( + params: Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setInstanceTemplate( + params: Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate, + callback: BodyResponseCallback + ): void; + setInstanceTemplate(callback: BodyResponseCallback): void; + setInstanceTemplate( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Modifies the target pools to which all new instances in this group are + * assigned. Existing instances in the group are not affected. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.setTargetPools({ + * // Name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "fingerprint": "my_fingerprint", + * // "targetPools": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + setTargetPools( + params: Params$Resource$Regioninstancegroupmanagers$Settargetpools, + options: StreamMethodOptions + ): Promise>; + setTargetPools( + params?: Params$Resource$Regioninstancegroupmanagers$Settargetpools, + options?: MethodOptions + ): Promise>; + setTargetPools( + params: Params$Resource$Regioninstancegroupmanagers$Settargetpools, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setTargetPools( + params: Params$Resource$Regioninstancegroupmanagers$Settargetpools, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setTargetPools( + params: Params$Resource$Regioninstancegroupmanagers$Settargetpools, + callback: BodyResponseCallback + ): void; + setTargetPools(callback: BodyResponseCallback): void; + setTargetPools( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Settargetpools + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Settargetpools; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Settargetpools; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Flags the specified instances in the managed instance group to be + * started. This method increases thetargetSize and decreases the targetStoppedSize + * of the managed instance group by the number of instances that you start. + * The startInstances operation is marked DONE if + * the startInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theSTARTING action with thelistmanagedinstances + * method. + * + * In this request, you can only specify instances that are stopped. For + * example, if an instance was previously stopped using the stopInstances + * method, it can be started using the startInstances method. + * + * If a health check is attached to the managed instance group, the specified + * instances will be verified as healthy after they are started. + * + * You can specify a maximum of 1000 instances with this method per request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.startInstances({ + * // Name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + startInstances( + params: Params$Resource$Regioninstancegroupmanagers$Startinstances, + options: StreamMethodOptions + ): Promise>; + startInstances( + params?: Params$Resource$Regioninstancegroupmanagers$Startinstances, + options?: MethodOptions + ): Promise>; + startInstances( + params: Params$Resource$Regioninstancegroupmanagers$Startinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + startInstances( + params: Params$Resource$Regioninstancegroupmanagers$Startinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + startInstances( + params: Params$Resource$Regioninstancegroupmanagers$Startinstances, + callback: BodyResponseCallback + ): void; + startInstances(callback: BodyResponseCallback): void; + startInstances( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Startinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Startinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Startinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/startInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Flags the specified instances in the managed instance group to be + * immediately stopped. You can only specify instances that are running in + * this request. This method reduces thetargetSize and increases the targetStoppedSize + * of the managed instance group by the number of instances that you stop. + * The stopInstances operation is marked DONE if + * the stopInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theSTOPPING action with thelistmanagedinstances + * method. + * + * If the standbyPolicy.initialDelaySec field is set, the group + * delays stopping the instances until initialDelaySec have + * passed from instance.creationTimestamp (that is, when the + * instance was created). This delay gives your application time to + * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there + * will be zero delay. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is stopped. + * + * Stopped instances can be started using the startInstances + * method. + * + * You can specify a maximum of 1000 instances with this method per request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.stopInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "forceStop": false, + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + stopInstances( + params: Params$Resource$Regioninstancegroupmanagers$Stopinstances, + options: StreamMethodOptions + ): Promise>; + stopInstances( + params?: Params$Resource$Regioninstancegroupmanagers$Stopinstances, + options?: MethodOptions + ): Promise>; + stopInstances( + params: Params$Resource$Regioninstancegroupmanagers$Stopinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stopInstances( + params: Params$Resource$Regioninstancegroupmanagers$Stopinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stopInstances( + params: Params$Resource$Regioninstancegroupmanagers$Stopinstances, + callback: BodyResponseCallback + ): void; + stopInstances(callback: BodyResponseCallback): void; + stopInstances( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Stopinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Stopinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Stopinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/stopInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Flags the specified instances in the managed instance group to be + * immediately suspended. You can only specify instances that are running in + * this request. This method reduces thetargetSize and increases the targetSuspendedSize + * of the managed instance group by the number of instances that you suspend. + * The suspendInstances operation is marked DONE if + * the suspendInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theSUSPENDING action with thelistmanagedinstances + * method. + * + * If the standbyPolicy.initialDelaySec field is set, the group + * delays suspension of the instances until initialDelaySec have + * passed from instance.creationTimestamp (that is, when the + * instance was created). This delay gives your application time to + * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there + * will be zero delay. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is suspended. + * + * Suspended instances can be resumed using the resumeInstances + * method. + * + * You can specify a maximum of 1000 instances with this method per request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroupManagers.suspendInstances({ + * // Name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "forceSuspend": false, + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + suspendInstances( + params: Params$Resource$Regioninstancegroupmanagers$Suspendinstances, + options: StreamMethodOptions + ): Promise>; + suspendInstances( + params?: Params$Resource$Regioninstancegroupmanagers$Suspendinstances, + options?: MethodOptions + ): Promise>; + suspendInstances( + params: Params$Resource$Regioninstancegroupmanagers$Suspendinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + suspendInstances( + params: Params$Resource$Regioninstancegroupmanagers$Suspendinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + suspendInstances( + params: Params$Resource$Regioninstancegroupmanagers$Suspendinstances, + callback: BodyResponseCallback + ): void; + suspendInstances(callback: BodyResponseCallback): void; + suspendInstances( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Suspendinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Suspendinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Suspendinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/suspendInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Inserts or updates per-instance configurations for the managed instance + * group. perInstanceConfig.name serves as a key used to + * distinguish whether to perform insert or patch. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await compute.regionInstanceGroupManagers.updatePerInstanceConfigs({ + * // The name of the managed instance group. + * // It should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request, should conform to RFC1035. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "perInstanceConfigs": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + updatePerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs, + options: StreamMethodOptions + ): Promise>; + updatePerInstanceConfigs( + params?: Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs, + options?: MethodOptions + ): Promise>; + updatePerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updatePerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updatePerInstanceConfigs( + params: Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs, + callback: BodyResponseCallback + ): void; + updatePerInstanceConfigs( + callback: BodyResponseCallback + ): void; + updatePerInstanceConfigs( + paramsOrCallback?: + | Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Regioninstancegroupmanagers$Abandoninstances extends StandardParameters { + /** + * Name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagersAbandonInstancesRequest; + } + export interface Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances extends StandardParameters { + /** + * The name of the managed instance group, should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request, should conform to RFC1035. + */ + region?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagersApplyUpdatesRequest; + } + export interface Params$Resource$Regioninstancegroupmanagers$Createinstances extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of theregion + * where the managed instance group is located. + * It should conform to RFC1035. + */ + region?: string; + /** + * 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. + * + * 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. + * + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagersCreateInstancesRequest; + } + export interface Params$Resource$Regioninstancegroupmanagers$Delete extends StandardParameters { + /** + * Name of the managed instance group to delete. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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$Regioninstancegroupmanagers$Deleteinstances extends StandardParameters { + /** + * Name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagersDeleteInstancesRequest; + } + export interface Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs extends StandardParameters { + /** + * The name of the managed instance group. It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request, should conform to RFC1035. + */ + region?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagerDeleteInstanceConfigReq; + } + export interface Params$Resource$Regioninstancegroupmanagers$Get extends StandardParameters { + /** + * Name of the managed instance group to return. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } + export interface Params$Resource$Regioninstancegroupmanagers$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManager; + } + export interface Params$Resource$Regioninstancegroupmanagers$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regioninstancegroupmanagers$Listerrors 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. + * 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 onresource 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 GoogleRE2 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; + /** + * The name of the managed instance group. + * It must be a string that meets the requirements in RFC1035, or an + * unsigned long integer: must match regexp pattern: + * (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + * This should conform to RFC1035. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances 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. + * 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 onresource 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 GoogleRE2 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; + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs 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. + * 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 onresource 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 GoogleRE2 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; + /** + * The name of the managed instance group. It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request, should conform to RFC1035. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regioninstancegroupmanagers$Patch extends StandardParameters { + /** + * The name of the instance group manager. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManager; + } + export interface Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request, should conform to RFC1035. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagerPatchInstanceConfigReq; + } + export interface Params$Resource$Regioninstancegroupmanagers$Recreateinstances extends StandardParameters { + /** + * Name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagersRecreateRequest; + } + export interface Params$Resource$Regioninstancegroupmanagers$Resize extends StandardParameters { + /** + * Name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * Number of instances that should exist in this instance group + * manager. + */ + size?: number; + } + export interface Params$Resource$Regioninstancegroupmanagers$Resumeinstances extends StandardParameters { + /** + * Name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagersResumeInstancesRequest; + } + export interface Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagersSetTemplateRequest; + } + export interface Params$Resource$Regioninstancegroupmanagers$Settargetpools extends StandardParameters { + /** + * Name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagersSetTargetPoolsRequest; + } + export interface Params$Resource$Regioninstancegroupmanagers$Startinstances extends StandardParameters { + /** + * Name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagersStartInstancesRequest; + } + export interface Params$Resource$Regioninstancegroupmanagers$Stopinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagersStopInstancesRequest; + } + export interface Params$Resource$Regioninstancegroupmanagers$Suspendinstances extends StandardParameters { + /** + * Name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagersSuspendInstancesRequest; + } + export interface Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request, should conform to RFC1035. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupManagerUpdateInstanceConfigReq; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Regioninstancegroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Creates a managed instance group using the information that you specify - * in the request. After the group is created, instances in the group are - * created using the specified instance template. - * This operation is marked as DONE when the group is created - * even if the instances in the group have not yet been created. You must - * separately verify the status of the individual instances with thelistmanagedinstances - * method. - * - * A regional managed instance group can contain up to 2000 instances. + * Returns the specified instance group resource. * @example * ```js * // Before running the sample: @@ -167111,6 +187100,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -167119,95 +187109,31 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.insert({ + * const res = await compute.regionInstanceGroups.get({ + * // Name of the instance group resource to return. + * instanceGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: 'placeholder-value', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allInstancesConfig": {}, - * // "autoHealingPolicies": [], - * // "baseInstanceName": "my_baseInstanceName", - * // "creationTimestamp": "my_creationTimestamp", - * // "currentActions": {}, - * // "description": "my_description", - * // "distributionPolicy": {}, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "instanceFlexibilityPolicy": {}, - * // "instanceGroup": "my_instanceGroup", - * // "instanceLifecyclePolicy": {}, - * // "instanceTemplate": "my_instanceTemplate", - * // "kind": "my_kind", - * // "listManagedInstancesResults": "my_listManagedInstancesResults", - * // "name": "my_name", - * // "namedPorts": [], - * // "region": "my_region", - * // "resourcePolicies": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "standbyPolicy": {}, - * // "statefulPolicy": {}, - * // "status": {}, - * // "targetPools": [], - * // "targetSize": 0, - * // "targetStoppedSize": 0, - * // "targetSuspendedSize": 0, - * // "updatePolicy": {}, - * // "versions": [], - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "namedPorts": [], + * // "network": "my_network", * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], + * // "size": 0, + * // "subnetwork": "my_subnetwork", * // "zone": "my_zone" * // } * } @@ -167224,53 +187150,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regioninstancegroupmanagers$Insert, + get( + params: Params$Resource$Regioninstancegroups$Get, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regioninstancegroupmanagers$Insert, + get( + params?: Params$Resource$Regioninstancegroups$Get, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Regioninstancegroupmanagers$Insert, + ): Promise>; + get( + params: Params$Resource$Regioninstancegroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regioninstancegroupmanagers$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Regioninstancegroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regioninstancegroupmanagers$Insert, - callback: BodyResponseCallback + get( + params: Params$Resource$Regioninstancegroups$Get, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Insert - | BodyResponseCallback + | Params$Resource$Regioninstancegroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Insert; + {}) as Params$Resource$Regioninstancegroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancegroupmanagers$Insert; + params = {} as Params$Resource$Regioninstancegroups$Get; options = {}; } @@ -167285,31 +187211,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers' + '/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instanceGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of managed instance groups that are contained - * within the specified region. + * Retrieves the list of instance group resources contained within + * the specified region. * @example * ```js * // Before running the sample: @@ -167342,7 +187268,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.list({ + * const res = await compute.regionInstanceGroups.list({ * // 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 @@ -167463,56 +187389,54 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Regioninstancegroupmanagers$List, + params: Params$Resource$Regioninstancegroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Regioninstancegroupmanagers$List, + params?: Params$Resource$Regioninstancegroups$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Regioninstancegroupmanagers$List, + params: Params$Resource$Regioninstancegroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regioninstancegroupmanagers$List, + params: Params$Resource$Regioninstancegroups$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Regioninstancegroupmanagers$List, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Regioninstancegroups$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$List - | BodyResponseCallback + | Params$Resource$Regioninstancegroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$List; + {}) as Params$Resource$Regioninstancegroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancegroupmanagers$List; + params = {} as Params$Resource$Regioninstancegroups$List; options = {}; } @@ -167527,7 +187451,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers' + '/compute/v1/projects/{project}/regions/{region}/instanceGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -167540,20 +187464,20 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Lists all errors thrown by actions on instances for a given regional - * managed instance group. The filter andorderBy query parameters are not supported. + * Lists the instances in the specified instance group and displays + * information about the named ports. Depending on the specified options, this + * method can list all instances or only the instances that are running. + * The orderBy query parameter is not supported. * @example * ```js * // Before running the sample: @@ -167586,7 +187510,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.listErrors({ + * const res = await compute.regionInstanceGroups.listInstances({ * // 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 @@ -167646,11 +187570,9 @@ export namespace compute_v1 { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', - * // The name of the managed instance group. - * // It must be a string that meets the requirements in RFC1035, or an - * // unsigned long integer: must match regexp pattern: - * // (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. - * instanceGroupManager: 'placeholder-value', + * // Name of the regional instance group for which we want to list the + * // instances. + * instanceGroup: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -167677,7 +187599,6 @@ export namespace compute_v1 { * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. - * // This should conform to RFC1035. * region: 'placeholder-value', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. @@ -167686,13 +187607,26 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instanceState": "my_instanceState", + * // "portName": "my_portName" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "id": "my_id", * // "items": [], - * // "nextPageToken": "my_nextPageToken" + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -167708,61 +187642,61 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listErrors( - params: Params$Resource$Regioninstancegroupmanagers$Listerrors, + listInstances( + params: Params$Resource$Regioninstancegroups$Listinstances, options: StreamMethodOptions ): Promise>; - listErrors( - params?: Params$Resource$Regioninstancegroupmanagers$Listerrors, + listInstances( + params?: Params$Resource$Regioninstancegroups$Listinstances, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - listErrors( - params: Params$Resource$Regioninstancegroupmanagers$Listerrors, + listInstances( + params: Params$Resource$Regioninstancegroups$Listinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listErrors( - params: Params$Resource$Regioninstancegroupmanagers$Listerrors, + listInstances( + params: Params$Resource$Regioninstancegroups$Listinstances, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listErrors( - params: Params$Resource$Regioninstancegroupmanagers$Listerrors, - callback: BodyResponseCallback + listInstances( + params: Params$Resource$Regioninstancegroups$Listinstances, + callback: BodyResponseCallback ): void; - listErrors( - callback: BodyResponseCallback + listInstances( + callback: BodyResponseCallback ): void; - listErrors( + listInstances( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Listerrors - | BodyResponseCallback + | Params$Resource$Regioninstancegroups$Listinstances + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Listerrors; + {}) as Params$Resource$Regioninstancegroups$Listinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancegroupmanagers$Listerrors; + params = {} as Params$Resource$Regioninstancegroups$Listinstances; options = {}; } @@ -167777,37 +187711,32 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listErrors' + '/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Lists the instances in the managed instance group and instances that are - * scheduled to be created. The list includes any current actions - * that the group has scheduled for its instances. The orderBy - * query parameter is not supported. The `pageToken` query parameter is - * supported only if the group's `listManagedInstancesResults` field is set - * to `PAGINATED`. + * Sets the named ports for the specified regional instance group. * @example * ```js * // Before running the sample: @@ -167831,7 +187760,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -167840,109 +187768,69 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.listManagedInstances({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionInstanceGroups.setNamedPorts({ + * // The name of the regional instance group where the named ports are updated. + * instanceGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: 'placeholder-value', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "fingerprint": "my_fingerprint", + * // "namedPorts": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "managedInstances": [], - * // "nextPageToken": "my_nextPageToken" + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -167958,62 +187846,211 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listManagedInstances( - params: Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances, + setNamedPorts( + params: Params$Resource$Regioninstancegroups$Setnamedports, options: StreamMethodOptions ): Promise>; - listManagedInstances( - params?: Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances, + setNamedPorts( + params?: Params$Resource$Regioninstancegroups$Setnamedports, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listManagedInstances( - params: Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances, + ): Promise>; + setNamedPorts( + params: Params$Resource$Regioninstancegroups$Setnamedports, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listManagedInstances( - params: Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances, + setNamedPorts( + params: Params$Resource$Regioninstancegroups$Setnamedports, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setNamedPorts( + params: Params$Resource$Regioninstancegroups$Setnamedports, + callback: BodyResponseCallback + ): void; + setNamedPorts(callback: BodyResponseCallback): void; + setNamedPorts( + paramsOrCallback?: + | Params$Resource$Regioninstancegroups$Setnamedports + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancegroups$Setnamedports; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstancegroups$Setnamedports; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionInstanceGroups.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regioninstancegroups$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Regioninstancegroups$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Regioninstancegroups$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regioninstancegroups$Testiampermissions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listManagedInstances( - params: Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regioninstancegroups$Testiampermissions, + callback: BodyResponseCallback ): void; - listManagedInstances( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - listManagedInstances( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances - | BodyResponseCallback + | Params$Resource$Regioninstancegroups$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances; + {}) as Params$Resource$Regioninstancegroups$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances; + params = {} as Params$Resource$Regioninstancegroups$Testiampermissions; options = {}; } @@ -168022,39 +188059,339 @@ export namespace compute_v1 { options = {}; } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Regioninstancegroups$Get extends StandardParameters { + /** + * Name of the instance group resource to return. + */ + instanceGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } + export interface Params$Resource$Regioninstancegroups$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regioninstancegroups$Listinstances 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. + * 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 onresource 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 GoogleRE2 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; + /** + * Name of the regional instance group for which we want to list the + * instances. + */ + instanceGroup?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupsListInstancesRequest; + } + export interface Params$Resource$Regioninstancegroups$Setnamedports extends StandardParameters { + /** + * The name of the regional instance group where the named ports are updated. + */ + instanceGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionInstanceGroupsSetNamedPortsRequest; + } + export interface Params$Resource$Regioninstancegroups$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Regioninstances { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Lists all of the per-instance configurations defined for the managed - * instance group. The orderBy query parameter is not supported. + * Creates multiple instances in a given region. Count specifies the number of + * instances to create. * @example * ```js * // Before running the sample: @@ -168078,7 +188415,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -168087,110 +188423,73 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.listPerInstanceConfigs({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The name of the managed instance group. It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionInstances.bulkInsert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request, should conform to RFC1035. - * region: 'placeholder-value', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "count": "my_count", + * // "instanceFlexibilityPolicy": {}, + * // "instanceProperties": {}, + * // "locationPolicy": {}, + * // "minCount": "my_minCount", + * // "namePattern": "my_namePattern", + * // "perInstanceProperties": {}, + * // "sourceInstanceTemplate": "my_sourceInstanceTemplate" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "items": [], - * // "nextPageToken": "my_nextPageToken", - * // "warning": {} + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -168206,62 +188505,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listPerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs, + bulkInsert( + params: Params$Resource$Regioninstances$Bulkinsert, options: StreamMethodOptions ): Promise>; - listPerInstanceConfigs( - params?: Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs, + bulkInsert( + params?: Params$Resource$Regioninstances$Bulkinsert, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listPerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs, + ): Promise>; + bulkInsert( + params: Params$Resource$Regioninstances$Bulkinsert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listPerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listPerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs, - callback: BodyResponseCallback + bulkInsert( + params: Params$Resource$Regioninstances$Bulkinsert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listPerInstanceConfigs( - callback: BodyResponseCallback + bulkInsert( + params: Params$Resource$Regioninstances$Bulkinsert, + callback: BodyResponseCallback ): void; - listPerInstanceConfigs( + bulkInsert(callback: BodyResponseCallback): void; + bulkInsert( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs - | BodyResponseCallback + | Params$Resource$Regioninstances$Bulkinsert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs; + {}) as Params$Resource$Regioninstances$Bulkinsert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs; + params = {} as Params$Resource$Regioninstances$Bulkinsert; options = {}; } @@ -168276,7 +188566,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs' + '/compute/v1/projects/{project}/regions/{region}/instances/bulkInsert' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -168284,38 +188574,62 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Regioninstances$Bulkinsert extends StandardParameters { /** - * Updates a managed instance group using the information that you specify - * in the request. - * This operation is marked as DONE when the group is patched - * even if the instances in the group are still in the process of being - * patched. You must separately verify the status of the individual instances - * with the listmanagedinstances - * method. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * 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. * - * If you update your group to specify a new template or instance - * configuration, it's possible that your intended specification for each VM - * in the group is different from the current state of that VM. To learn how - * to apply an updated configuration to the VMs in a MIG, seeUpdating instances in - * a MIG. + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$BulkInsertInstanceResource; + } + + export class Resource$Regioninstancetemplates { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified instance template. Deleting an instance template is + * permanent and cannot be undone. * @example * ```js * // Before running the sample: @@ -168347,14 +188661,14 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.patch({ - * // The name of the instance group manager. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionInstanceTemplates.delete({ + * // The name of the instance template to delete. + * instanceTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -168369,45 +188683,6 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allInstancesConfig": {}, - * // "autoHealingPolicies": [], - * // "baseInstanceName": "my_baseInstanceName", - * // "creationTimestamp": "my_creationTimestamp", - * // "currentActions": {}, - * // "description": "my_description", - * // "distributionPolicy": {}, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "instanceFlexibilityPolicy": {}, - * // "instanceGroup": "my_instanceGroup", - * // "instanceLifecyclePolicy": {}, - * // "instanceTemplate": "my_instanceTemplate", - * // "kind": "my_kind", - * // "listManagedInstancesResults": "my_listManagedInstancesResults", - * // "name": "my_name", - * // "namedPorts": [], - * // "region": "my_region", - * // "resourcePolicies": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "standbyPolicy": {}, - * // "statefulPolicy": {}, - * // "status": {}, - * // "targetPools": [], - * // "targetSize": 0, - * // "targetStoppedSize": 0, - * // "targetSuspendedSize": 0, - * // "updatePolicy": {}, - * // "versions": [], - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * @@ -168418,6 +188693,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -168454,32 +188730,32 @@ export namespace compute_v1 { * @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$Regioninstancegroupmanagers$Patch, + delete( + params: Params$Resource$Regioninstancetemplates$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Regioninstancegroupmanagers$Patch, + delete( + params?: Params$Resource$Regioninstancetemplates$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Regioninstancegroupmanagers$Patch, + delete( + params: Params$Resource$Regioninstancetemplates$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regioninstancegroupmanagers$Patch, + delete( + params: Params$Resource$Regioninstancetemplates$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regioninstancegroupmanagers$Patch, + delete( + params: Params$Resource$Regioninstancetemplates$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Patch + | Params$Resource$Regioninstancetemplates$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -168495,12 +188771,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Patch; + {}) as Params$Resource$Regioninstancetemplates$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancegroupmanagers$Patch; + params = {} as Params$Resource$Regioninstancetemplates$Delete; options = {}; } @@ -168515,16 +188791,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}' + '/compute/v1/projects/{project}/regions/{region}/instanceTemplates/{instanceTemplate}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region', 'instanceTemplate'], + pathParams: ['instanceTemplate', 'project', 'region'], context: this.context, }; if (callback) { @@ -168538,9 +188814,7 @@ export namespace compute_v1 { } /** - * Inserts or patches per-instance configurations for the managed instance - * group. perInstanceConfig.name serves as a key used to - * distinguish whether to perform insert or patch. + * Returns the specified instance template. * @example * ```js * // Before running the sample: @@ -168564,6 +188838,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -168572,70 +188847,29 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.patchPerInstanceConfigs( - * { - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request, should conform to RFC1035. - * region: 'placeholder-value', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "perInstanceConfigs": [] - * // } - * }, - * }, - * ); + * const res = await compute.regionInstanceTemplates.get({ + * // The name of the instance template. + * instanceTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "properties": {}, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "sourceInstance": "my_sourceInstance", + * // "sourceInstanceParams": {} * // } * } * @@ -168651,56 +188885,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchPerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs, + get( + params: Params$Resource$Regioninstancetemplates$Get, options: StreamMethodOptions ): Promise>; - patchPerInstanceConfigs( - params?: Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs, + get( + params?: Params$Resource$Regioninstancetemplates$Get, options?: MethodOptions - ): Promise>; - patchPerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs, + ): Promise>; + get( + params: Params$Resource$Regioninstancetemplates$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patchPerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs, - callback: BodyResponseCallback + get( + params: Params$Resource$Regioninstancetemplates$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( - callback: BodyResponseCallback + get( + params: Params$Resource$Regioninstancetemplates$Get, + callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs - | BodyResponseCallback + | Params$Resource$Regioninstancetemplates$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs; + {}) as Params$Resource$Regioninstancetemplates$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs; + params = {} as Params$Resource$Regioninstancetemplates$Get; options = {}; } @@ -168715,42 +188946,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs' + '/compute/v1/projects/{project}/regions/{region}/instanceTemplates/{instanceTemplate}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region', 'instanceTemplate'], + pathParams: ['instanceTemplate', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Flags the specified VM instances in the managed instance group to be - * immediately recreated. Each instance is recreated using the group's current - * configuration. This operation is marked as DONE when the flag - * is set even if the instances have not yet been recreated. You must - * separately verify the status of each instance by checking itscurrentAction field; for more information, see Checking - * the status of managed instances. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. - * - * You can specify a maximum of 1000 instances with this method per request. + * Creates an instance template in the specified project and region using the + * global instance template whose URL is included in the request. * @example * ```js * // Before running the sample: @@ -168782,14 +189002,12 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.recreateInstances({ - * // Name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionInstanceTemplates.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -168809,7 +189027,16 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "instances": [] + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "properties": {}, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "sourceInstance": "my_sourceInstance", + * // "sourceInstanceParams": {} * // } * }, * }); @@ -168822,6 +189049,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -168858,32 +189086,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - recreateInstances( - params: Params$Resource$Regioninstancegroupmanagers$Recreateinstances, + insert( + params: Params$Resource$Regioninstancetemplates$Insert, options: StreamMethodOptions ): Promise>; - recreateInstances( - params?: Params$Resource$Regioninstancegroupmanagers$Recreateinstances, + insert( + params?: Params$Resource$Regioninstancetemplates$Insert, options?: MethodOptions ): Promise>; - recreateInstances( - params: Params$Resource$Regioninstancegroupmanagers$Recreateinstances, + insert( + params: Params$Resource$Regioninstancetemplates$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - recreateInstances( - params: Params$Resource$Regioninstancegroupmanagers$Recreateinstances, + insert( + params: Params$Resource$Regioninstancetemplates$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - recreateInstances( - params: Params$Resource$Regioninstancegroupmanagers$Recreateinstances, + insert( + params: Params$Resource$Regioninstancetemplates$Insert, callback: BodyResponseCallback ): void; - recreateInstances(callback: BodyResponseCallback): void; - recreateInstances( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Recreateinstances + | Params$Resource$Regioninstancetemplates$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -168899,13 +189127,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Recreateinstances; + {}) as Params$Resource$Regioninstancetemplates$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Recreateinstances; + params = {} as Params$Resource$Regioninstancetemplates$Insert; options = {}; } @@ -168920,7 +189147,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances' + '/compute/v1/projects/{project}/regions/{region}/instanceTemplates' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -168928,8 +189155,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -168943,19 +189170,8 @@ export namespace compute_v1 { } /** - * Changes the intended size of the managed instance group. If you increase - * the size, the group creates new instances using the current instance - * template. If you decrease the size, the group deletes one or more - * instances. - * - * The resize operation is marked DONE if theresize request is successful. The underlying actions take - * additional time. You must separately verify the status of thecreating or deleting actions with thelistmanagedinstances - * method. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. + * Retrieves a list of instance templates that are contained within the + * specified project and region. * @example * ```js * // Before running the sample: @@ -168979,6 +189195,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -168987,62 +189204,111 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.resize({ - * // Name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionInstanceTemplates.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', - * // 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. - * // - * // 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 name of the regions for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // Number of instances that should exist in this instance group - * // manager. - * size: 'placeholder-value', + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -169053,111 +189319,289 @@ export namespace compute_v1 { * * ``` * - * @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. + * @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$Regioninstancetemplates$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Regioninstancetemplates$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Regioninstancetemplates$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regioninstancetemplates$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regioninstancetemplates$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Regioninstancetemplates$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstancetemplates$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstancetemplates$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instanceTemplates' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Regioninstancetemplates$Delete extends StandardParameters { + /** + * The name of the instance template to delete. + */ + instanceTemplate?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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$Regioninstancetemplates$Get extends StandardParameters { + /** + * The name of the instance template. + */ + instanceTemplate?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + } + export interface Params$Resource$Regioninstancetemplates$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceTemplate; + } + export interface Params$Resource$Regioninstancetemplates$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the regions for this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - resize( - params: Params$Resource$Regioninstancegroupmanagers$Resize, - options: StreamMethodOptions - ): Promise>; - resize( - params?: Params$Resource$Regioninstancegroupmanagers$Resize, - options?: MethodOptions - ): Promise>; - resize( - params: Params$Resource$Regioninstancegroupmanagers$Resize, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - resize( - params: Params$Resource$Regioninstancegroupmanagers$Resize, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - resize( - params: Params$Resource$Regioninstancegroupmanagers$Resize, - callback: BodyResponseCallback - ): void; - resize(callback: BodyResponseCallback): void; - resize( - paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Resize - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Resize; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancegroupmanagers$Resize; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + returnPartialSuccess?: boolean; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'instanceGroupManager', 'size'], - pathParams: ['instanceGroupManager', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Regioninstantsnapshotgroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Flags the specified instances in the managed instance group to be - * resumed. This method increases thetargetSize and decreases the targetSuspendedSize - * of the managed instance group by the number of instances that you resume. - * The resumeInstances operation is marked DONE if - * the resumeInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theRESUMING action with thelistmanagedinstances - * method. - * - * In this request, you can only specify instances that are suspended. For - * example, if an instance was previously suspended using the suspendInstances - * method, it can be resumed using the resumeInstances method. - * - * If a health check is attached to the managed instance group, the specified - * instances will be verified as healthy after they are resumed. - * - * You can specify a maximum of 1000 instances with this method per request. + * deletes a Regional InstantSnapshotGroup resource * @example * ```js * // Before running the sample: @@ -169189,14 +189633,14 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.resumeInstances({ - * // Name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionInstantSnapshotGroups.delete({ + * // Name of the InstantSnapshotGroup resource to delete. + * instantSnapshotGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -169211,14 +189655,6 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, * }); * console.log(res.data); * @@ -169229,6 +189665,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -169265,32 +189702,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resumeInstances( - params: Params$Resource$Regioninstancegroupmanagers$Resumeinstances, + delete( + params: Params$Resource$Regioninstantsnapshotgroups$Delete, options: StreamMethodOptions ): Promise>; - resumeInstances( - params?: Params$Resource$Regioninstancegroupmanagers$Resumeinstances, + delete( + params?: Params$Resource$Regioninstantsnapshotgroups$Delete, options?: MethodOptions ): Promise>; - resumeInstances( - params: Params$Resource$Regioninstancegroupmanagers$Resumeinstances, + delete( + params: Params$Resource$Regioninstantsnapshotgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resumeInstances( - params: Params$Resource$Regioninstancegroupmanagers$Resumeinstances, + delete( + params: Params$Resource$Regioninstantsnapshotgroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resumeInstances( - params: Params$Resource$Regioninstancegroupmanagers$Resumeinstances, + delete( + params: Params$Resource$Regioninstantsnapshotgroups$Delete, callback: BodyResponseCallback ): void; - resumeInstances(callback: BodyResponseCallback): void; - resumeInstances( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Resumeinstances + | Params$Resource$Regioninstantsnapshotgroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -169306,13 +189743,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Resumeinstances; + {}) as Params$Resource$Regioninstantsnapshotgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Resumeinstances; + params = {} as Params$Resource$Regioninstantsnapshotgroups$Delete; options = {}; } @@ -169327,16 +189763,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resumeInstances' + '/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{instantSnapshotGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region', 'instantSnapshotGroup'], + pathParams: ['instantSnapshotGroup', 'project', 'region'], context: this.context, }; if (callback) { @@ -169350,8 +189786,8 @@ export namespace compute_v1 { } /** - * Sets the instance template to use when creating new instances or recreating - * instances in this group. Existing instances are not affected. + * returns the specified InstantSnapshotGroup resource in the specified + * region. * @example * ```js * // Before running the sample: @@ -169375,6 +189811,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -169383,66 +189820,30 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.setInstanceTemplate({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionInstantSnapshotGroups.get({ + * // Name of the InstantSnapshotGroup resource to return. + * instantSnapshotGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instanceTemplate": "my_instanceTemplate" - * // } - * }, + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, * // "region": "my_region", + * // "resourceStatus": {}, * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceConsistencyGroup": "my_sourceConsistencyGroup", * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -169459,54 +189860,55 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setInstanceTemplate( - params: Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate, + get( + params: Params$Resource$Regioninstantsnapshotgroups$Get, options: StreamMethodOptions ): Promise>; - setInstanceTemplate( - params?: Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate, + get( + params?: Params$Resource$Regioninstantsnapshotgroups$Get, options?: MethodOptions - ): Promise>; - setInstanceTemplate( - params: Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate, + ): Promise>; + get( + params: Params$Resource$Regioninstantsnapshotgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setInstanceTemplate( - params: Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Regioninstantsnapshotgroups$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setInstanceTemplate( - params: Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate, - callback: BodyResponseCallback + get( + params: Params$Resource$Regioninstantsnapshotgroups$Get, + callback: BodyResponseCallback ): void; - setInstanceTemplate(callback: BodyResponseCallback): void; - setInstanceTemplate( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate - | BodyResponseCallback + | Params$Resource$Regioninstantsnapshotgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate; + {}) as Params$Resource$Regioninstantsnapshotgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate; + params = {} as Params$Resource$Regioninstantsnapshotgroups$Get; options = {}; } @@ -169521,31 +189923,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate' + '/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{instantSnapshotGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region', 'instantSnapshotGroup'], + pathParams: ['instantSnapshotGroup', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Modifies the target pools to which all new instances in this group are - * assigned. Existing instances in the group are not affected. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -169569,6 +189971,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -169577,68 +189980,25 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.setTargetPools({ - * // Name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionInstantSnapshotGroups.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "fingerprint": "my_fingerprint", - * // "targetPools": [] - * // } - * }, + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -169654,54 +190014,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setTargetPools( - params: Params$Resource$Regioninstancegroupmanagers$Settargetpools, + getIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Getiampolicy, options: StreamMethodOptions ): Promise>; - setTargetPools( - params?: Params$Resource$Regioninstancegroupmanagers$Settargetpools, + getIamPolicy( + params?: Params$Resource$Regioninstantsnapshotgroups$Getiampolicy, options?: MethodOptions - ): Promise>; - setTargetPools( - params: Params$Resource$Regioninstancegroupmanagers$Settargetpools, + ): Promise>; + getIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTargetPools( - params: Params$Resource$Regioninstancegroupmanagers$Settargetpools, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setTargetPools( - params: Params$Resource$Regioninstancegroupmanagers$Settargetpools, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Getiampolicy, + callback: BodyResponseCallback ): void; - setTargetPools(callback: BodyResponseCallback): void; - setTargetPools( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Settargetpools - | BodyResponseCallback + | Params$Resource$Regioninstantsnapshotgroups$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Settargetpools; + {}) as Params$Resource$Regioninstantsnapshotgroups$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Settargetpools; + params = {} as Params$Resource$Regioninstantsnapshotgroups$Getiampolicy; options = {}; } @@ -169716,45 +190075,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools' + '/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Flags the specified instances in the managed instance group to be - * started. This method increases thetargetSize and decreases the targetStoppedSize - * of the managed instance group by the number of instances that you start. - * The startInstances operation is marked DONE if - * the startInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theSTARTING action with thelistmanagedinstances - * method. - * - * In this request, you can only specify instances that are stopped. For - * example, if an instance was previously stopped using the stopInstances - * method, it can be started using the startInstances method. - * - * If a health check is attached to the managed instance group, the specified - * instances will be verified as healthy after they are started. - * - * You can specify a maximum of 1000 instances with this method per request. + * creates a Regional InstantSnapshotGroup resource * @example * ```js * // Before running the sample: @@ -169786,14 +190130,12 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.startInstances({ - * // Name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionInstantSnapshotGroups.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -169808,12 +190150,25 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // begin_interface: MixerMutationRequestBuilder + * sourceConsistencyGroup: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "instances": [] + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "resourceStatus": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceConsistencyGroup": "my_sourceConsistencyGroup", + * // "status": "my_status", + * // "zone": "my_zone" * // } * }, * }); @@ -169826,6 +190181,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -169862,32 +190218,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - startInstances( - params: Params$Resource$Regioninstancegroupmanagers$Startinstances, + insert( + params: Params$Resource$Regioninstantsnapshotgroups$Insert, options: StreamMethodOptions ): Promise>; - startInstances( - params?: Params$Resource$Regioninstancegroupmanagers$Startinstances, + insert( + params?: Params$Resource$Regioninstantsnapshotgroups$Insert, options?: MethodOptions ): Promise>; - startInstances( - params: Params$Resource$Regioninstancegroupmanagers$Startinstances, + insert( + params: Params$Resource$Regioninstantsnapshotgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - startInstances( - params: Params$Resource$Regioninstancegroupmanagers$Startinstances, + insert( + params: Params$Resource$Regioninstantsnapshotgroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - startInstances( - params: Params$Resource$Regioninstancegroupmanagers$Startinstances, + insert( + params: Params$Resource$Regioninstantsnapshotgroups$Insert, callback: BodyResponseCallback ): void; - startInstances(callback: BodyResponseCallback): void; - startInstances( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Startinstances + | Params$Resource$Regioninstantsnapshotgroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -169903,13 +190259,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Startinstances; + {}) as Params$Resource$Regioninstantsnapshotgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Startinstances; + params = {} as Params$Resource$Regioninstantsnapshotgroups$Insert; options = {}; } @@ -169924,7 +190279,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/startInstances' + '/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -169932,8 +190287,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -169947,31 +190302,8 @@ export namespace compute_v1 { } /** - * Flags the specified instances in the managed instance group to be - * immediately stopped. You can only specify instances that are running in - * this request. This method reduces thetargetSize and increases the targetStoppedSize - * of the managed instance group by the number of instances that you stop. - * The stopInstances operation is marked DONE if - * the stopInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theSTOPPING action with thelistmanagedinstances - * method. - * - * If the standbyPolicy.initialDelaySec field is set, the group - * delays stopping the instances until initialDelaySec have - * passed from instance.creationTimestamp (that is, when the - * instance was created). This delay gives your application time to - * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there - * will be zero delay. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is stopped. - * - * Stopped instances can be started using the startInstances - * method. - * - * You can specify a maximum of 1000 instances with this method per request. + * retrieves the list of InstantSnapshotGroup resources contained within + * the specified region. * @example * ```js * // Before running the sample: @@ -169995,6 +190327,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -170003,68 +190336,113 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.stopInstances({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionInstantSnapshotGroups.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', - * // 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. - * // - * // 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 name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "forceStop": false, - * // "instances": [] - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -170080,54 +190458,57 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - stopInstances( - params: Params$Resource$Regioninstancegroupmanagers$Stopinstances, + list( + params: Params$Resource$Regioninstantsnapshotgroups$List, options: StreamMethodOptions ): Promise>; - stopInstances( - params?: Params$Resource$Regioninstancegroupmanagers$Stopinstances, + list( + params?: Params$Resource$Regioninstantsnapshotgroups$List, options?: MethodOptions - ): Promise>; - stopInstances( - params: Params$Resource$Regioninstancegroupmanagers$Stopinstances, + ): Promise>; + list( + params: Params$Resource$Regioninstantsnapshotgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stopInstances( - params: Params$Resource$Regioninstancegroupmanagers$Stopinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Regioninstantsnapshotgroups$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - stopInstances( - params: Params$Resource$Regioninstancegroupmanagers$Stopinstances, - callback: BodyResponseCallback + list( + params: Params$Resource$Regioninstantsnapshotgroups$List, + callback: BodyResponseCallback ): void; - stopInstances(callback: BodyResponseCallback): void; - stopInstances( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Stopinstances - | BodyResponseCallback + | Params$Resource$Regioninstantsnapshotgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Stopinstances; + {}) as Params$Resource$Regioninstantsnapshotgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Stopinstances; + params = {} as Params$Resource$Regioninstantsnapshotgroups$List; options = {}; } @@ -170142,54 +190523,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/stopInstances' + '/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Flags the specified instances in the managed instance group to be - * immediately suspended. You can only specify instances that are running in - * this request. This method reduces thetargetSize and increases the targetSuspendedSize - * of the managed instance group by the number of instances that you suspend. - * The suspendInstances operation is marked DONE if - * the suspendInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theSUSPENDING action with thelistmanagedinstances - * method. - * - * If the standbyPolicy.initialDelaySec field is set, the group - * delays suspension of the instances until initialDelaySec have - * passed from instance.creationTimestamp (that is, when the - * instance was created). This delay gives your application time to - * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there - * will be zero delay. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is suspended. - * - * Suspended instances can be resumed using the resumeInstances - * method. - * - * You can specify a maximum of 1000 instances with this method per request. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -170221,35 +190579,22 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroupManagers.suspendInstances({ - * // Name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.regionInstantSnapshotGroups.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', - * // 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. - * // - * // 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: 'placeholder-value', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "forceSuspend": false, - * // "instances": [] + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -170257,32 +190602,10 @@ export namespace compute_v1 { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -170298,54 +190621,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - suspendInstances( - params: Params$Resource$Regioninstancegroupmanagers$Suspendinstances, + setIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Setiampolicy, options: StreamMethodOptions ): Promise>; - suspendInstances( - params?: Params$Resource$Regioninstancegroupmanagers$Suspendinstances, + setIamPolicy( + params?: Params$Resource$Regioninstantsnapshotgroups$Setiampolicy, options?: MethodOptions - ): Promise>; - suspendInstances( - params: Params$Resource$Regioninstancegroupmanagers$Suspendinstances, + ): Promise>; + setIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - suspendInstances( - params: Params$Resource$Regioninstancegroupmanagers$Suspendinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - suspendInstances( - params: Params$Resource$Regioninstancegroupmanagers$Suspendinstances, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Regioninstantsnapshotgroups$Setiampolicy, + callback: BodyResponseCallback ): void; - suspendInstances(callback: BodyResponseCallback): void; - suspendInstances( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Suspendinstances - | BodyResponseCallback + | Params$Resource$Regioninstantsnapshotgroups$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Suspendinstances; + {}) as Params$Resource$Regioninstantsnapshotgroups$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Suspendinstances; + params = {} as Params$Resource$Regioninstantsnapshotgroups$Setiampolicy; options = {}; } @@ -170360,7 +190682,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/suspendInstances' + '/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -170368,24 +190690,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Inserts or updates per-instance configurations for the managed instance - * group. perInstanceConfig.name serves as a key used to - * distinguish whether to perform insert or patch. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -170409,6 +190729,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -170417,69 +190738,28 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await compute.regionInstanceGroupManagers.updatePerInstanceConfigs({ - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request, should conform to RFC1035. - * region: 'placeholder-value', - * // 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. - * // - * // 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: 'placeholder-value', + * const res = await compute.regionInstantSnapshotGroups.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "perInstanceConfigs": [] - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -170495,195 +190775,106 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updatePerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs, + testIamPermissions( + params: Params$Resource$Regioninstantsnapshotgroups$Testiampermissions, options: StreamMethodOptions ): Promise>; - updatePerInstanceConfigs( - params?: Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs, + testIamPermissions( + params?: Params$Resource$Regioninstantsnapshotgroups$Testiampermissions, options?: MethodOptions - ): Promise>; - updatePerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs, + ): Promise>; + testIamPermissions( + params: Params$Resource$Regioninstantsnapshotgroups$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regioninstantsnapshotgroups$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( - params: Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regioninstantsnapshotgroups$Testiampermissions, + callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs - | BodyResponseCallback + | Params$Resource$Regioninstantsnapshotgroups$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Regioninstancegroupmanagers$Abandoninstances extends StandardParameters { - /** - * Name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagersAbandonInstancesRequest; - } - export interface Params$Resource$Regioninstancegroupmanagers$Applyupdatestoinstances extends StandardParameters { - /** - * The name of the managed instance group, should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request, should conform to RFC1035. - */ - region?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagersApplyUpdatesRequest; - } - export interface Params$Resource$Regioninstancegroupmanagers$Createinstances extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of theregion - * where the managed instance group is located. - * It should conform to RFC1035. - */ - region?: string; - /** - * 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. - * - * 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. - * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstantsnapshotgroups$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagersCreateInstancesRequest; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regioninstantsnapshotgroups$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } - export interface Params$Resource$Regioninstancegroupmanagers$Delete extends StandardParameters { + + export interface Params$Resource$Regioninstantsnapshotgroups$Delete extends StandardParameters { /** - * Name of the managed instance group to delete. + * Name of the InstantSnapshotGroup resource to delete. */ - instanceGroupManager?: string; + instantSnapshotGroup?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * The name of the region for this request. */ region?: string; /** @@ -170703,81 +190894,45 @@ export namespace compute_v1 { */ requestId?: string; } - export interface Params$Resource$Regioninstancegroupmanagers$Deleteinstances extends StandardParameters { + export interface Params$Resource$Regioninstantsnapshotgroups$Get extends StandardParameters { /** - * Name of the managed instance group. + * Name of the InstantSnapshotGroup resource to return. */ - instanceGroupManager?: string; + instantSnapshotGroup?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * The name of the region for this request. */ region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagersDeleteInstancesRequest; } - export interface Params$Resource$Regioninstancegroupmanagers$Deleteperinstanceconfigs extends StandardParameters { + export interface Params$Resource$Regioninstantsnapshotgroups$Getiampolicy extends StandardParameters { /** - * The name of the managed instance group. It should conform to RFC1035. + * Requested IAM Policy version. */ - instanceGroupManager?: string; + optionsRequestedPolicyVersion?: number; /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request, should conform to RFC1035. + * The name of the region for this request. */ region?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagerDeleteInstanceConfigReq; - } - export interface Params$Resource$Regioninstancegroupmanagers$Get extends StandardParameters { - /** - * Name of the managed instance group to return. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; /** - * Name of the region scoping this request. + * Name or id of the resource for this request. */ - region?: string; + resource?: string; } - export interface Params$Resource$Regioninstancegroupmanagers$Insert extends StandardParameters { + export interface Params$Resource$Regioninstantsnapshotgroups$Insert extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * Name of the region for this request. */ region?: string; /** @@ -170796,13 +190951,17 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * begin_interface: MixerMutationRequestBuilder + */ + sourceConsistencyGroup?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManager; + requestBody?: Schema$InstantSnapshotGroup; } - export interface Params$Resource$Regioninstancegroupmanagers$List extends StandardParameters { + export interface Params$Resource$Regioninstantsnapshotgroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -170897,7 +191056,7 @@ export namespace compute_v1 { */ project?: string; /** - * Name of the region scoping this request. + * The name of the region for this request. */ region?: string; /** @@ -170910,742 +191069,564 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Regioninstancegroupmanagers$Listerrors 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. - * 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 onresource 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 GoogleRE2 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; - /** - * The name of the managed instance group. - * It must be a string that meets the requirements in RFC1035, or an - * unsigned long integer: must match regexp pattern: - * (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. - */ - instanceGroupManager?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; + export interface Params$Resource$Regioninstantsnapshotgroups$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. - * This should conform to RFC1035. + * The name of the region for this request. */ region?: string; /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Regioninstancegroupmanagers$Listmanagedinstances 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. - * 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 onresource 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 GoogleRE2 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; - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * Name or id of the resource for this request. */ - orderBy?: string; + resource?: string; + /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * Request body metadata */ - pageToken?: string; + requestBody?: Schema$RegionSetPolicyRequest; + } + export interface Params$Resource$Regioninstantsnapshotgroups$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * The name of the region for this request. */ region?: string; /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. + * Name or id of the resource for this request. */ - returnPartialSuccess?: boolean; + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Regioninstancegroupmanagers$Listperinstanceconfigs extends StandardParameters { + + export class Resource$Regioninstantsnapshots { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + /** - * 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 onresource 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: + * Deletes the specified InstantSnapshot resource. Keep in mind that deleting + * a single instantSnapshot might not necessarily delete all the data on that + * instantSnapshot. If any data on the instantSnapshot that is marked for + * deletion is needed for subsequent instantSnapshots, the data will be moved + * to the next corresponding instantSnapshot. * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * For more information, seeDeleting + * instantSnapshots. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The name of the managed instance group. It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * // Do the magic + * const res = await compute.regionInstantSnapshots.delete({ + * // Name of the InstantSnapshot resource to delete. + * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * }); + * console.log(res.data); * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request, should conform to RFC1035. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Regioninstancegroupmanagers$Patch extends StandardParameters { - /** - * The name of the instance group manager. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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). + * @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. */ - requestId?: string; + delete( + params: Params$Resource$Regioninstantsnapshots$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Regioninstantsnapshots$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Regioninstantsnapshots$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regioninstantsnapshots$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regioninstantsnapshots$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Regioninstantsnapshots$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstantsnapshots$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManager; - } - export interface Params$Resource$Regioninstancegroupmanagers$Patchperinstanceconfigs extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request, should conform to RFC1035. - */ - region?: string; - /** - * 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. - * - * 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; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstantsnapshots$Delete; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagerPatchInstanceConfigReq; - } - export interface Params$Resource$Regioninstancegroupmanagers$Recreateinstances extends StandardParameters { - /** - * Name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{instantSnapshot}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instantSnapshot'], + pathParams: ['instantSnapshot', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagersRecreateRequest; - } - export interface Params$Resource$Regioninstancegroupmanagers$Resize extends StandardParameters { - /** - * Name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. + * Returns the specified InstantSnapshot resource in the specified region. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * Number of instances that should exist in this instance group - * manager. - */ - size?: number; - } - export interface Params$Resource$Regioninstancegroupmanagers$Resumeinstances extends StandardParameters { - /** - * Name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); * - * 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. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagersResumeInstancesRequest; - } - export interface Params$Resource$Regioninstancegroupmanagers$Setinstancetemplate extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. + * // Do the magic + * const res = await compute.regionInstantSnapshots.get({ + * // Name of the InstantSnapshot resource to return. + * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); * - * 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. + * // Example response + * // { + * // "architecture": "my_architecture", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "params": {}, + * // "region": "my_region", + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshotGroup": "my_sourceInstantSnapshotGroup", + * // "sourceInstantSnapshotGroupId": "my_sourceInstantSnapshotGroupId", + * // "status": "my_status", + * // "zone": "my_zone" + * // } + * } * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagersSetTemplateRequest; - } - export interface Params$Resource$Regioninstancegroupmanagers$Settargetpools extends StandardParameters { - /** - * Name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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). + * @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. */ - requestId?: string; + get( + params: Params$Resource$Regioninstantsnapshots$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Regioninstantsnapshots$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Regioninstantsnapshots$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regioninstantsnapshots$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regioninstantsnapshots$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Regioninstantsnapshots$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstantsnapshots$Get; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagersSetTargetPoolsRequest; - } - export interface Params$Resource$Regioninstancegroupmanagers$Startinstances extends StandardParameters { - /** - * Name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstantsnapshots$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{instantSnapshot}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'instantSnapshot'], + pathParams: ['instantSnapshot', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagersStartInstancesRequest; - } - export interface Params$Resource$Regioninstancegroupmanagers$Stopinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagersStopInstancesRequest; - } - export interface Params$Resource$Regioninstancegroupmanagers$Suspendinstances extends StandardParameters { - /** - * Name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); * - * 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. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagersSuspendInstancesRequest; - } - export interface Params$Resource$Regioninstancegroupmanagers$Updateperinstanceconfigs extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request, should conform to RFC1035. - */ - region?: string; - /** - * 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. + * // Do the magic + * const res = await compute.regionInstantSnapshots.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); * - * 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. + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - requestId?: string; + getIamPolicy( + params: Params$Resource$Regioninstantsnapshots$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Regioninstantsnapshots$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Regioninstantsnapshots$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Regioninstantsnapshots$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Regioninstantsnapshots$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Regioninstantsnapshots$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regioninstantsnapshots$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstanceGroupManagerUpdateInstanceConfigReq; - } + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regioninstantsnapshots$Getiampolicy; + options = {}; + } - export class Resource$Regioninstancegroups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Returns the specified instance group resource. + * Creates an instant snapshot in the specified region. * @example * ```js * // Before running the sample: @@ -171669,7 +191650,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -171678,31 +191658,86 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroups.get({ - * // Name of the instance group resource to return. - * instanceGroup: 'placeholder-value', + * const res = await compute.regionInstantSnapshots.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "architecture": "my_architecture", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "params": {}, + * // "region": "my_region", + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshotGroup": "my_sourceInstantSnapshotGroup", + * // "sourceInstantSnapshotGroupId": "my_sourceInstantSnapshotGroupId", + * // "status": "my_status", + * // "zone": "my_zone" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "fingerprint": "my_fingerprint", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "namedPorts": [], - * // "network": "my_network", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "size": 0, - * // "subnetwork": "my_subnetwork", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -171719,53 +191754,53 @@ export namespace compute_v1 { * @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$Regioninstancegroups$Get, + insert( + params: Params$Resource$Regioninstantsnapshots$Insert, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Regioninstancegroups$Get, + insert( + params?: Params$Resource$Regioninstantsnapshots$Insert, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Regioninstancegroups$Get, + ): Promise>; + insert( + params: Params$Resource$Regioninstantsnapshots$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regioninstancegroups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Regioninstantsnapshots$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regioninstancegroups$Get, - callback: BodyResponseCallback + insert( + params: Params$Resource$Regioninstantsnapshots$Insert, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regioninstancegroups$Get - | BodyResponseCallback + | Params$Resource$Regioninstantsnapshots$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroups$Get; + {}) as Params$Resource$Regioninstantsnapshots$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancegroups$Get; + params = {} as Params$Resource$Regioninstantsnapshots$Insert; options = {}; } @@ -171780,30 +191815,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instanceGroup}' + '/compute/v1/projects/{project}/regions/{region}/instantSnapshots' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of instance group resources contained within + * Retrieves the list of InstantSnapshot resources contained within * the specified region. * @example * ```js @@ -171837,7 +191872,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroups.list({ + * const res = await compute.regionInstantSnapshots.list({ * // 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 @@ -171922,8 +191957,8 @@ export namespace compute_v1 { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -171958,54 +191993,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Regioninstancegroups$List, + params: Params$Resource$Regioninstantsnapshots$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Regioninstancegroups$List, + params?: Params$Resource$Regioninstantsnapshots$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Regioninstancegroups$List, + params: Params$Resource$Regioninstantsnapshots$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regioninstancegroups$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regioninstantsnapshots$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regioninstancegroups$List, - callback: BodyResponseCallback + params: Params$Resource$Regioninstantsnapshots$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Regioninstancegroups$List - | BodyResponseCallback + | Params$Resource$Regioninstantsnapshots$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroups$List; + {}) as Params$Resource$Regioninstantsnapshots$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancegroups$List; + params = {} as Params$Resource$Regioninstantsnapshots$List; options = {}; } @@ -172020,7 +192053,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroups' + '/compute/v1/projects/{project}/regions/{region}/instantSnapshots' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -172033,20 +192066,18 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the instances in the specified instance group and displays - * information about the named ports. Depending on the specified options, this - * method can list all instances or only the instances that are running. - * The orderBy query parameter is not supported. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -172070,7 +192101,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -172079,110 +192109,22 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroups.listInstances({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // Name of the regional instance group for which we want to list the - * // instances. - * instanceGroup: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionInstantSnapshots.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "instanceState": "my_instanceState", - * // "portName": "my_portName" + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -172190,12 +192132,10 @@ export namespace compute_v1 { * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -172211,61 +192151,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listInstances( - params: Params$Resource$Regioninstancegroups$Listinstances, + setIamPolicy( + params: Params$Resource$Regioninstantsnapshots$Setiampolicy, options: StreamMethodOptions ): Promise>; - listInstances( - params?: Params$Resource$Regioninstancegroups$Listinstances, + setIamPolicy( + params?: Params$Resource$Regioninstantsnapshots$Setiampolicy, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listInstances( - params: Params$Resource$Regioninstancegroups$Listinstances, + ): Promise>; + setIamPolicy( + params: Params$Resource$Regioninstantsnapshots$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listInstances( - params: Params$Resource$Regioninstancegroups$Listinstances, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listInstances( - params: Params$Resource$Regioninstancegroups$Listinstances, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Regioninstantsnapshots$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listInstances( - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Regioninstantsnapshots$Setiampolicy, + callback: BodyResponseCallback ): void; - listInstances( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Regioninstancegroups$Listinstances - | BodyResponseCallback + | Params$Resource$Regioninstantsnapshots$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroups$Listinstances; + {}) as Params$Resource$Regioninstantsnapshots$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancegroups$Listinstances; + params = {} as Params$Resource$Regioninstantsnapshots$Setiampolicy; options = {}; } @@ -172280,7 +192212,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances' + '/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -172288,24 +192220,24 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'region'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Sets the named ports for the specified regional instance group. + * Sets the labels on a instantSnapshot in the given region. To learn more + * about labels, read the Labeling + * Resources documentation. * @example * ```js * // Before running the sample: @@ -172337,14 +192269,12 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroups.setNamedPorts({ - * // The name of the regional instance group where the named ports are updated. - * instanceGroup: 'placeholder-value', + * const res = await compute.regionInstantSnapshots.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: 'placeholder-value', + * // The region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -172359,13 +192289,15 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "fingerprint": "my_fingerprint", - * // "namedPorts": [] + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} * // } * }, * }); @@ -172378,6 +192310,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -172414,32 +192347,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setNamedPorts( - params: Params$Resource$Regioninstancegroups$Setnamedports, + setLabels( + params: Params$Resource$Regioninstantsnapshots$Setlabels, options: StreamMethodOptions ): Promise>; - setNamedPorts( - params?: Params$Resource$Regioninstancegroups$Setnamedports, + setLabels( + params?: Params$Resource$Regioninstantsnapshots$Setlabels, options?: MethodOptions ): Promise>; - setNamedPorts( - params: Params$Resource$Regioninstancegroups$Setnamedports, + setLabels( + params: Params$Resource$Regioninstantsnapshots$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setNamedPorts( - params: Params$Resource$Regioninstancegroups$Setnamedports, + setLabels( + params: Params$Resource$Regioninstantsnapshots$Setlabels, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setNamedPorts( - params: Params$Resource$Regioninstancegroups$Setnamedports, + setLabels( + params: Params$Resource$Regioninstantsnapshots$Setlabels, callback: BodyResponseCallback ): void; - setNamedPorts(callback: BodyResponseCallback): void; - setNamedPorts( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Regioninstancegroups$Setnamedports + | Params$Resource$Regioninstantsnapshots$Setlabels | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -172455,12 +192388,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroups$Setnamedports; + {}) as Params$Resource$Regioninstantsnapshots$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancegroups$Setnamedports; + params = {} as Params$Resource$Regioninstantsnapshots$Setlabels; options = {}; } @@ -172475,7 +192408,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts' + '/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -172483,8 +192416,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'region'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -172531,7 +192464,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceGroups.testIamPermissions({ + * const res = await compute.regionInstantSnapshots.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -172569,27 +192502,27 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Regioninstancegroups$Testiampermissions, + params: Params$Resource$Regioninstantsnapshots$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Regioninstancegroups$Testiampermissions, + params?: Params$Resource$Regioninstantsnapshots$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Regioninstancegroups$Testiampermissions, + params: Params$Resource$Regioninstantsnapshots$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Regioninstancegroups$Testiampermissions, + params: Params$Resource$Regioninstantsnapshots$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Regioninstancegroups$Testiampermissions, + params: Params$Resource$Regioninstantsnapshots$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -172597,7 +192530,7 @@ export namespace compute_v1 { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Regioninstancegroups$Testiampermissions + | Params$Resource$Regioninstantsnapshots$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -172613,12 +192546,13 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancegroups$Testiampermissions; + {}) as Params$Resource$Regioninstantsnapshots$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancegroups$Testiampermissions; + params = + {} as Params$Resource$Regioninstantsnapshots$Testiampermissions; options = {}; } @@ -172633,7 +192567,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -172656,129 +192590,100 @@ export namespace compute_v1 { } } - export interface Params$Resource$Regioninstancegroups$Get extends StandardParameters { + export interface Params$Resource$Regioninstantsnapshots$Delete extends StandardParameters { /** - * Name of the instance group resource to return. + * Name of the InstantSnapshot resource to delete. */ - instanceGroup?: string; + instantSnapshot?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * The name of the region for this request. */ region?: string; - } - export interface Params$Resource$Regioninstancegroups$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. - * 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 onresource 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 GoogleRE2 library syntax. - * The literal value must match the entire field. + * 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. * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * 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. * - * You cannot combine constraints on multiple fields using regular - * expressions. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - filter?: string; + requestId?: string; + } + export interface Params$Resource$Regioninstantsnapshots$Get extends StandardParameters { /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) + * Name of the InstantSnapshot resource to return. */ - maxResults?: number; + instantSnapshot?: string; /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * Project ID for this request. */ - orderBy?: string; + project?: string; /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * The name of the region for this request. */ - pageToken?: string; + region?: string; + } + export interface Params$Resource$Regioninstantsnapshots$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * The name of the region for this request. */ region?: string; /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Regioninstantsnapshots$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * 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. * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. + * 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). */ - returnPartialSuccess?: boolean; + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstantSnapshot; } - export interface Params$Resource$Regioninstancegroups$Listinstances extends StandardParameters { + export interface Params$Resource$Regioninstantsnapshots$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -172840,11 +192745,6 @@ export namespace compute_v1 { * expressions. */ filter?: string; - /** - * Name of the regional instance group for which we want to list the - * instances. - */ - instanceGroup?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -172878,7 +192778,7 @@ export namespace compute_v1 { */ project?: string; /** - * Name of the region scoping this request. + * The name of the region for this request. */ region?: string; /** @@ -172890,23 +192790,33 @@ export namespace compute_v1 { * with an error code. */ returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regioninstantsnapshots$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; /** * Request body metadata */ - requestBody?: Schema$RegionInstanceGroupsListInstancesRequest; + requestBody?: Schema$RegionSetPolicyRequest; } - export interface Params$Resource$Regioninstancegroups$Setnamedports extends StandardParameters { - /** - * The name of the regional instance group where the named ports are updated. - */ - instanceGroup?: string; + export interface Params$Resource$Regioninstantsnapshots$Setlabels extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * The region for this request. */ region?: string; /** @@ -172925,13 +192835,17 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; /** * Request body metadata */ - requestBody?: Schema$RegionInstanceGroupsSetNamedPortsRequest; + requestBody?: Schema$RegionSetLabelsRequest; } - export interface Params$Resource$Regioninstancegroups$Testiampermissions extends StandardParameters { + export interface Params$Resource$Regioninstantsnapshots$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -172943,23 +192857,222 @@ export namespace compute_v1 { /** * Name or id of the resource for this request. */ - resource?: string; + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Regionnetworkendpointgroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Attach a list of network endpoints to the specified network endpoint group. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionNetworkEndpointGroups.attachNetworkEndpoints({ + * // The name of the network endpoint group where you are attaching network + * // endpoints to. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region where + * // you want to create the network endpoint group. It should comply with + * // RFC1035. + * region: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "networkEndpoints": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + attachNetworkEndpoints( + params: Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints, + options: StreamMethodOptions + ): Promise>; + attachNetworkEndpoints( + params?: Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints, + options?: MethodOptions + ): Promise>; + attachNetworkEndpoints( + params: Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + attachNetworkEndpoints( + params: Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + attachNetworkEndpoints( + params: Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints, + callback: BodyResponseCallback + ): void; + attachNetworkEndpoints( + callback: BodyResponseCallback + ): void; + attachNetworkEndpoints( + paramsOrCallback?: + | Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints; + options = {}; + } - export class Resource$Regioninstances { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Creates multiple instances in a given region. Count specifies the number of - * instances to create. + * Deletes the specified network endpoint group. Note that the NEG cannot be + * deleted if it is configured as a backend of a backend service. * @example * ```js * // Before running the sample: @@ -172991,12 +193104,16 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstances.bulkInsert({ + * const res = await compute.regionNetworkEndpointGroups.delete({ + * // The name of the network endpoint group to delete. It should comply with + * // RFC1035. + * networkEndpointGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the region where + * // the network endpoint group is located. It should comply with RFC1035. + * region: 'placeholder-value', * // 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. @@ -173011,21 +193128,6 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "count": "my_count", - * // "instanceFlexibilityPolicy": {}, - * // "instanceProperties": {}, - * // "locationPolicy": {}, - * // "minCount": "my_minCount", - * // "namePattern": "my_namePattern", - * // "perInstanceProperties": {}, - * // "sourceInstanceTemplate": "my_sourceInstanceTemplate" - * // } - * }, * }); * console.log(res.data); * @@ -173036,6 +193138,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -173072,32 +193175,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkInsert( - params: Params$Resource$Regioninstances$Bulkinsert, + delete( + params: Params$Resource$Regionnetworkendpointgroups$Delete, options: StreamMethodOptions ): Promise>; - bulkInsert( - params?: Params$Resource$Regioninstances$Bulkinsert, + delete( + params?: Params$Resource$Regionnetworkendpointgroups$Delete, options?: MethodOptions ): Promise>; - bulkInsert( - params: Params$Resource$Regioninstances$Bulkinsert, + delete( + params: Params$Resource$Regionnetworkendpointgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkInsert( - params: Params$Resource$Regioninstances$Bulkinsert, + delete( + params: Params$Resource$Regionnetworkendpointgroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkInsert( - params: Params$Resource$Regioninstances$Bulkinsert, + delete( + params: Params$Resource$Regionnetworkendpointgroups$Delete, callback: BodyResponseCallback ): void; - bulkInsert(callback: BodyResponseCallback): void; - bulkInsert( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Regioninstances$Bulkinsert + | Params$Resource$Regionnetworkendpointgroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -173113,12 +193216,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstances$Bulkinsert; + {}) as Params$Resource$Regionnetworkendpointgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstances$Bulkinsert; + params = {} as Params$Resource$Regionnetworkendpointgroups$Delete; options = {}; } @@ -173133,16 +193236,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instances/bulkInsert' + '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'region'], context: this.context, }; if (callback) { @@ -173154,49 +193257,9 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Regioninstances$Bulkinsert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$BulkInsertInstanceResource; - } - - export class Resource$Regioninstancetemplates { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes the specified instance template. Deleting an instance template is - * permanent and cannot be undone. + * Detach the network endpoint from the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -173228,14 +193291,17 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceTemplates.delete({ - * // The name of the instance template to delete. - * instanceTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionNetworkEndpointGroups.detachNetworkEndpoints({ + * // The name of the network endpoint group you are detaching network + * // endpoints from. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the region where + * // the network endpoint group is located. It should comply with + * // RFC1035. + * region: 'placeholder-value', * // 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. @@ -173249,7 +193315,16 @@ export namespace compute_v1 { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). + * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "networkEndpoints": [] + * // } + * }, * }); * console.log(res.data); * @@ -173260,6 +193335,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -173296,32 +193372,34 @@ export namespace compute_v1 { * @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$Regioninstancetemplates$Delete, + detachNetworkEndpoints( + params: Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Regioninstancetemplates$Delete, + detachNetworkEndpoints( + params?: Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Regioninstancetemplates$Delete, + detachNetworkEndpoints( + params: Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regioninstancetemplates$Delete, + detachNetworkEndpoints( + params: Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regioninstancetemplates$Delete, + detachNetworkEndpoints( + params: Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + detachNetworkEndpoints( + callback: BodyResponseCallback + ): void; + detachNetworkEndpoints( paramsOrCallback?: - | Params$Resource$Regioninstancetemplates$Delete + | Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -173337,12 +193415,13 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancetemplates$Delete; + {}) as Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancetemplates$Delete; + params = + {} as Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints; options = {}; } @@ -173357,16 +193436,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceTemplates/{instanceTemplate}' + '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instanceTemplate'], - pathParams: ['instanceTemplate', 'project', 'region'], + requiredParams: ['project', 'region', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'region'], context: this.context, }; if (callback) { @@ -173380,7 +193459,7 @@ export namespace compute_v1 { } /** - * Returns the specified instance template. + * Returns the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -173413,29 +193492,39 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceTemplates.get({ - * // The name of the instance template. - * instanceTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionNetworkEndpointGroups.get({ + * // The name of the network endpoint group. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the region where + * // the network endpoint group is located. It should comply with RFC1035. + * region: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "annotations": {}, + * // "appEngine": {}, + * // "cloudFunction": {}, + * // "cloudRun": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "defaultPort": 0, * // "description": "my_description", * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", - * // "properties": {}, + * // "network": "my_network", + * // "networkEndpointType": "my_networkEndpointType", + * // "pscData": {}, + * // "pscTargetService": "my_pscTargetService", * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "sourceInstance": "my_sourceInstance", - * // "sourceInstanceParams": {} + * // "size": 0, + * // "subnetwork": "my_subnetwork", + * // "zone": "my_zone" * // } * } * @@ -173452,52 +193541,54 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regioninstancetemplates$Get, + params: Params$Resource$Regionnetworkendpointgroups$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regioninstancetemplates$Get, + params?: Params$Resource$Regionnetworkendpointgroups$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regioninstancetemplates$Get, + params: Params$Resource$Regionnetworkendpointgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regioninstancetemplates$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regionnetworkendpointgroups$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regioninstancetemplates$Get, - callback: BodyResponseCallback + params: Params$Resource$Regionnetworkendpointgroups$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regioninstancetemplates$Get - | BodyResponseCallback + | Params$Resource$Regionnetworkendpointgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancetemplates$Get; + {}) as Params$Resource$Regionnetworkendpointgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancetemplates$Get; + params = {} as Params$Resource$Regionnetworkendpointgroups$Get; options = {}; } @@ -173512,7 +193603,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceTemplates/{instanceTemplate}' + '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -173520,23 +193611,37 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'instanceTemplate'], - pathParams: ['instanceTemplate', 'project', 'region'], + requiredParams: ['project', 'region', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates an instance template in the specified project and region using the - * global instance template whose URL is included in the request. + * Creates a network endpoint group in the specified project using the + * parameters that are included in the request. + * + * Note: Use the following APIs to manage network endpoint groups: + * + * - + * To manage NEGs with zonal scope (such as zonal NEGs, hybrid connectivity + * NEGs): zonal + * API + * - + * To manage NEGs with regional scope (such as regional internet NEGs, + * serverless NEGs, Private Service Connect NEGs): regional + * API + * - + * To manage NEGs with global scope (such as global internet NEGs):global + * API * @example * ```js * // Before running the sample: @@ -173568,12 +193673,14 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceTemplates.insert({ + * const res = await compute.regionNetworkEndpointGroups.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the region where + * // you want to create the network endpoint group. It should comply with + * // RFC1035. + * region: 'placeholder-value', * // 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. @@ -173593,16 +193700,25 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { + * // "annotations": {}, + * // "appEngine": {}, + * // "cloudFunction": {}, + * // "cloudRun": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "defaultPort": 0, * // "description": "my_description", * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", - * // "properties": {}, + * // "network": "my_network", + * // "networkEndpointType": "my_networkEndpointType", + * // "pscData": {}, + * // "pscTargetService": "my_pscTargetService", * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "sourceInstance": "my_sourceInstance", - * // "sourceInstanceParams": {} + * // "size": 0, + * // "subnetwork": "my_subnetwork", + * // "zone": "my_zone" * // } * }, * }); @@ -173615,6 +193731,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -173652,31 +193769,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Regioninstancetemplates$Insert, + params: Params$Resource$Regionnetworkendpointgroups$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Regioninstancetemplates$Insert, + params?: Params$Resource$Regionnetworkendpointgroups$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Regioninstancetemplates$Insert, + params: Params$Resource$Regionnetworkendpointgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Regioninstancetemplates$Insert, + params: Params$Resource$Regionnetworkendpointgroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Regioninstancetemplates$Insert, + params: Params$Resource$Regionnetworkendpointgroups$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Regioninstancetemplates$Insert + | Params$Resource$Regionnetworkendpointgroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -173692,12 +193809,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancetemplates$Insert; + {}) as Params$Resource$Regionnetworkendpointgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancetemplates$Insert; + params = {} as Params$Resource$Regionnetworkendpointgroups$Insert; options = {}; } @@ -173712,7 +193829,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceTemplates' + '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -173735,8 +193852,8 @@ export namespace compute_v1 { } /** - * Retrieves a list of instance templates that are contained within the - * specified project and region. + * Retrieves the list of regional network endpoint groups available to the + * specified project in the given region. * @example * ```js * // Before running the sample: @@ -173769,7 +193886,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstanceTemplates.list({ + * const res = await compute.regionNetworkEndpointGroups.list({ * // 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 @@ -173854,8 +193971,9 @@ export namespace compute_v1 { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the regions for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of theregion + * // where the network endpoint group is located. It should comply with RFC1035. + * region: 'placeholder-value', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -173890,54 +194008,54 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Regioninstancetemplates$List, + params: Params$Resource$Regionnetworkendpointgroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Regioninstancetemplates$List, + params?: Params$Resource$Regionnetworkendpointgroups$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Regioninstancetemplates$List, + params: Params$Resource$Regionnetworkendpointgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regioninstancetemplates$List, + params: Params$Resource$Regionnetworkendpointgroups$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regioninstancetemplates$List, - callback: BodyResponseCallback + params: Params$Resource$Regionnetworkendpointgroups$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Regioninstancetemplates$List - | BodyResponseCallback + | Params$Resource$Regionnetworkendpointgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstancetemplates$List; + {}) as Params$Resource$Regionnetworkendpointgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstancetemplates$List; + params = {} as Params$Resource$Regionnetworkendpointgroups$List; options = {}; } @@ -173952,7 +194070,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instanceTemplates' + '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -173965,27 +194083,281 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); + } + } + + /** + * Lists the network endpoints in the specified network endpoint group. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionNetworkEndpointGroups.listNetworkEndpoints({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // The name of the network endpoint group from which you want to generate a + * // list of included network endpoints. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of theregion + * // where the network endpoint group is located. It should comply with RFC1035. + * region: 'placeholder-value', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + listNetworkEndpoints( + params: Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints, + options: StreamMethodOptions + ): Promise>; + listNetworkEndpoints( + params?: Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + listNetworkEndpoints( + params: Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listNetworkEndpoints( + params: Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listNetworkEndpoints( + params: Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints, + callback: BodyResponseCallback + ): void; + listNetworkEndpoints( + callback: BodyResponseCallback + ): void; + listNetworkEndpoints( + paramsOrCallback?: + | Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Regioninstancetemplates$Delete extends StandardParameters { + export interface Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints extends StandardParameters { /** - * The name of the instance template to delete. + * The name of the network endpoint group where you are attaching network + * endpoints to. It should comply with RFC1035. */ - instanceTemplate?: string; + networkEndpointGroup?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the region for this request. + * The name of the region where + * you want to create the network endpoint group. It should comply with + * RFC1035. */ region?: string; /** @@ -174004,28 +194376,58 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionNetworkEndpointGroupsAttachEndpointsRequest; } - export interface Params$Resource$Regioninstancetemplates$Get extends StandardParameters { + export interface Params$Resource$Regionnetworkendpointgroups$Delete extends StandardParameters { /** - * The name of the instance template. + * The name of the network endpoint group to delete. It should comply with + * RFC1035. */ - instanceTemplate?: string; + networkEndpointGroup?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the region for this request. + * The name of the region where + * the network endpoint group is located. It should comply with RFC1035. */ region?: string; + /** + * 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. + * + * 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$Regioninstancetemplates$Insert extends StandardParameters { + export interface Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints extends StandardParameters { + /** + * The name of the network endpoint group you are detaching network + * endpoints from. It should comply with RFC1035. + */ + networkEndpointGroup?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the region for this request. + * The name of the region where + * the network endpoint group is located. It should comply with + * RFC1035. */ region?: string; /** @@ -174042,15 +194444,64 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceTemplate; + requestBody?: Schema$RegionNetworkEndpointGroupsDetachEndpointsRequest; } - export interface Params$Resource$Regioninstancetemplates$List extends StandardParameters { + export interface Params$Resource$Regionnetworkendpointgroups$Get extends StandardParameters { + /** + * The name of the network endpoint group. It should comply with RFC1035. + */ + networkEndpointGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region where + * the network endpoint group is located. It should comply with RFC1035. + */ + region?: string; + } + export interface Params$Resource$Regionnetworkendpointgroups$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region where + * you want to create the network endpoint group. It should comply with + * RFC1035. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkEndpointGroup; + } + export interface Params$Resource$Regionnetworkendpointgroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -174145,7 +194596,122 @@ export namespace compute_v1 { */ project?: string; /** - * The name of the regions for this request. + * The name of theregion + * where the network endpoint group is located. It should comply with RFC1035. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints 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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * The name of the network endpoint group from which you want to generate a + * list of included network endpoints. It should comply with RFC1035. + */ + networkEndpointGroup?: string; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of theregion + * where the network endpoint group is located. It should comply with RFC1035. */ region?: string; /** @@ -174159,21 +194725,14 @@ export namespace compute_v1 { returnPartialSuccess?: boolean; } - export class Resource$Regioninstantsnapshots { + export class Resource$Regionnetworkfirewallpolicies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified InstantSnapshot resource. Keep in mind that deleting - * a single instantSnapshot might not necessarily delete all the data on that - * instantSnapshot. If any data on the instantSnapshot that is marked for - * deletion is needed for subsequent instantSnapshots, the data will be moved - * to the next corresponding instantSnapshot. - * - * For more information, seeDeleting - * instantSnapshots. + * Inserts an association for the specified network firewall policy. * @example * ```js * // Before running the sample: @@ -174205,14 +194764,18 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstantSnapshots.delete({ - * // Name of the InstantSnapshot resource to delete. - * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionNetworkFirewallPolicies.addAssociation({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Indicates whether or not to replace it if an association already exists. + * // This is false by default, in which case an error will be returned if an + * // association already exists. + * replaceExistingAssociation: 'placeholder-value', * // 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. @@ -174227,6 +194790,18 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "attachmentTarget": "my_attachmentTarget", + * // "displayName": "my_displayName", + * // "firewallPolicyId": "my_firewallPolicyId", + * // "name": "my_name", + * // "shortName": "my_shortName" + * // } + * }, * }); * console.log(res.data); * @@ -174237,6 +194812,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -174273,32 +194849,32 @@ export namespace compute_v1 { * @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$Regioninstantsnapshots$Delete, + addAssociation( + params: Params$Resource$Regionnetworkfirewallpolicies$Addassociation, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Regioninstantsnapshots$Delete, + addAssociation( + params?: Params$Resource$Regionnetworkfirewallpolicies$Addassociation, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Regioninstantsnapshots$Delete, + addAssociation( + params: Params$Resource$Regionnetworkfirewallpolicies$Addassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regioninstantsnapshots$Delete, + addAssociation( + params: Params$Resource$Regionnetworkfirewallpolicies$Addassociation, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regioninstantsnapshots$Delete, + addAssociation( + params: Params$Resource$Regionnetworkfirewallpolicies$Addassociation, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + addAssociation(callback: BodyResponseCallback): void; + addAssociation( paramsOrCallback?: - | Params$Resource$Regioninstantsnapshots$Delete + | Params$Resource$Regionnetworkfirewallpolicies$Addassociation | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -174314,12 +194890,13 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstantsnapshots$Delete; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Addassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstantsnapshots$Delete; + params = + {} as Params$Resource$Regionnetworkfirewallpolicies$Addassociation; options = {}; } @@ -174334,16 +194911,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{instantSnapshot}' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/addAssociation' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instantSnapshot'], - pathParams: ['instantSnapshot', 'project', 'region'], + requiredParams: ['project', 'region', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project', 'region'], context: this.context, }; if (callback) { @@ -174357,7 +194934,7 @@ export namespace compute_v1 { } /** - * Returns the specified InstantSnapshot resource in the specified region. + * Inserts a rule into a network firewall policy. * @example * ```js * // Before running the sample: @@ -174381,7 +194958,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -174390,38 +194966,87 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstantSnapshots.get({ - * // Name of the InstantSnapshot resource to return. - * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionNetworkFirewallPolicies.addRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * // This field is exclusive with rule.priority. + * maxPriority: 'placeholder-value', + * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * // This field is exclusive with rule.priority. + * minPriority: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, + * // "kind": "my_kind", + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "tlsInspect": false + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "architecture": "my_architecture", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, * // "name": "my_name", - * // "params": {}, + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", - * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskId": "my_sourceDiskId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -174438,53 +195063,53 @@ export namespace compute_v1 { * @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$Regioninstantsnapshots$Get, + addRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Addrule, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Regioninstantsnapshots$Get, + addRule( + params?: Params$Resource$Regionnetworkfirewallpolicies$Addrule, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Regioninstantsnapshots$Get, + ): Promise>; + addRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Addrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regioninstantsnapshots$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + addRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Addrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regioninstantsnapshots$Get, - callback: BodyResponseCallback + addRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Addrule, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + addRule(callback: BodyResponseCallback): void; + addRule( paramsOrCallback?: - | Params$Resource$Regioninstantsnapshots$Get - | BodyResponseCallback + | Params$Resource$Regionnetworkfirewallpolicies$Addrule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstantsnapshots$Get; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Addrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstantsnapshots$Get; + params = {} as Params$Resource$Regionnetworkfirewallpolicies$Addrule; options = {}; } @@ -174499,31 +195124,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{instantSnapshot}' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/addRule' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'instantSnapshot'], - pathParams: ['instantSnapshot', 'project', 'region'], + requiredParams: ['project', 'region', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Copies rules to the specified network firewall policy. * @example * ```js * // Before running the sample: @@ -174547,7 +195171,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -174556,25 +195179,62 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstantSnapshots.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.regionNetworkFirewallPolicies.cloneRules({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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. + * // + * // 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: 'placeholder-value', + * // The firewall policy from which to copy rules. + * sourceFirewallPolicy: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -174590,53 +195250,53 @@ export namespace compute_v1 { * @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$Regioninstantsnapshots$Getiampolicy, + cloneRules( + params: Params$Resource$Regionnetworkfirewallpolicies$Clonerules, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Regioninstantsnapshots$Getiampolicy, + cloneRules( + params?: Params$Resource$Regionnetworkfirewallpolicies$Clonerules, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Regioninstantsnapshots$Getiampolicy, + ): Promise>; + cloneRules( + params: Params$Resource$Regionnetworkfirewallpolicies$Clonerules, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Regioninstantsnapshots$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + cloneRules( + params: Params$Resource$Regionnetworkfirewallpolicies$Clonerules, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Regioninstantsnapshots$Getiampolicy, - callback: BodyResponseCallback + cloneRules( + params: Params$Resource$Regionnetworkfirewallpolicies$Clonerules, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + cloneRules(callback: BodyResponseCallback): void; + cloneRules( paramsOrCallback?: - | Params$Resource$Regioninstantsnapshots$Getiampolicy - | BodyResponseCallback + | Params$Resource$Regionnetworkfirewallpolicies$Clonerules + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstantsnapshots$Getiampolicy; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Clonerules; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstantsnapshots$Getiampolicy; + params = {} as Params$Resource$Regionnetworkfirewallpolicies$Clonerules; options = {}; } @@ -174651,30 +195311,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/cloneRules' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'region', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates an instant snapshot in the specified region. + * Deletes the specified network firewall policy. * @example * ```js * // Before running the sample: @@ -174706,11 +195366,13 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstantSnapshots.insert({ + * const res = await compute.regionNetworkFirewallPolicies.delete({ + * // Name of the firewall policy to delete. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -174726,33 +195388,6 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "architecture": "my_architecture", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "id": "my_id", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "name": "my_name", - * // "params": {}, - * // "region": "my_region", - * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskId": "my_sourceDiskId", - * // "status": "my_status", - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * @@ -174763,6 +195398,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -174799,32 +195435,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regioninstantsnapshots$Insert, + delete( + params: Params$Resource$Regionnetworkfirewallpolicies$Delete, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regioninstantsnapshots$Insert, + delete( + params?: Params$Resource$Regionnetworkfirewallpolicies$Delete, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Regioninstantsnapshots$Insert, + delete( + params: Params$Resource$Regionnetworkfirewallpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regioninstantsnapshots$Insert, + delete( + params: Params$Resource$Regionnetworkfirewallpolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regioninstantsnapshots$Insert, + delete( + params: Params$Resource$Regionnetworkfirewallpolicies$Delete, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Regioninstantsnapshots$Insert + | Params$Resource$Regionnetworkfirewallpolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -174840,12 +195476,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstantsnapshots$Insert; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstantsnapshots$Insert; + params = {} as Params$Resource$Regionnetworkfirewallpolicies$Delete; options = {}; } @@ -174860,16 +195496,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instantSnapshots' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project', 'region'], context: this.context, }; if (callback) { @@ -174883,8 +195519,7 @@ export namespace compute_v1 { } /** - * Retrieves the list of InstantSnapshot resources contained within - * the specified region. + * Returns the specified network firewall policy. * @example * ```js * // Before running the sample: @@ -174917,111 +195552,36 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstantSnapshots.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionNetworkFirewallPolicies.get({ + * // Name of the firewall policy to get. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "associations": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "items": [], * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "packetMirroringRules": [], + * // "parent": "my_parent", + * // "policyType": "my_policyType", + * // "region": "my_region", + * // "ruleTupleCount": 0, + * // "rules": [], * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shortName": "my_shortName" * // } * } * @@ -175037,53 +195597,53 @@ export namespace compute_v1 { * @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$Regioninstantsnapshots$List, + get( + params: Params$Resource$Regionnetworkfirewallpolicies$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regioninstantsnapshots$List, + get( + params?: Params$Resource$Regionnetworkfirewallpolicies$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regioninstantsnapshots$List, + ): Promise>; + get( + params: Params$Resource$Regionnetworkfirewallpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regioninstantsnapshots$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Regionnetworkfirewallpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regioninstantsnapshots$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Regionnetworkfirewallpolicies$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Regioninstantsnapshots$List - | BodyResponseCallback + | Params$Resource$Regionnetworkfirewallpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstantsnapshots$List; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstantsnapshots$List; + params = {} as Params$Resource$Regionnetworkfirewallpolicies$Get; options = {}; } @@ -175098,7 +195658,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instantSnapshots' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -175106,23 +195666,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Gets an association with the specified name. * @example * ```js * // Before running the sample: @@ -175146,6 +195705,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -175154,33 +195714,26 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstantSnapshots.setIamPolicy({ + * const res = await compute.regionNetworkFirewallPolicies.getAssociation({ + * // Name of the firewall policy to which the queried association belongs. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the association to get from the firewall policy. + * name: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "attachmentTarget": "my_attachmentTarget", + * // "displayName": "my_displayName", + * // "firewallPolicyId": "my_firewallPolicyId", + * // "name": "my_name", + * // "shortName": "my_shortName" * // } * } * @@ -175196,53 +195749,58 @@ export namespace compute_v1 { * @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$Regioninstantsnapshots$Setiampolicy, + getAssociation( + params: Params$Resource$Regionnetworkfirewallpolicies$Getassociation, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Regioninstantsnapshots$Setiampolicy, + getAssociation( + params?: Params$Resource$Regionnetworkfirewallpolicies$Getassociation, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Regioninstantsnapshots$Setiampolicy, + ): Promise>; + getAssociation( + params: Params$Resource$Regionnetworkfirewallpolicies$Getassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Regioninstantsnapshots$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getAssociation( + params: Params$Resource$Regionnetworkfirewallpolicies$Getassociation, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Regioninstantsnapshots$Setiampolicy, - callback: BodyResponseCallback + getAssociation( + params: Params$Resource$Regionnetworkfirewallpolicies$Getassociation, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + getAssociation( + callback: BodyResponseCallback + ): void; + getAssociation( paramsOrCallback?: - | Params$Resource$Regioninstantsnapshots$Setiampolicy - | BodyResponseCallback + | Params$Resource$Regionnetworkfirewallpolicies$Getassociation + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstantsnapshots$Setiampolicy; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Getassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstantsnapshots$Setiampolicy; + params = + {} as Params$Resource$Regionnetworkfirewallpolicies$Getassociation; options = {}; } @@ -175257,32 +195815,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/getAssociation' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'region', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the labels on a instantSnapshot in the given region. To learn more - * about labels, read the Labeling - * Resources documentation. + * Returns the effective firewalls on a given network. * @example * ```js * // Before running the sample: @@ -175306,6 +195862,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -175314,68 +195871,23 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstantSnapshots.setLabels({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} - * // } + * const res = await compute.regionNetworkFirewallPolicies.getEffectiveFirewalls( + * { + * // Network reference + * network: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }, - * }); + * ); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "firewallPolicys": [], + * // "firewalls": [] * // } * } * @@ -175391,53 +195903,62 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Regioninstantsnapshots$Setlabels, + getEffectiveFirewalls( + params: Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Regioninstantsnapshots$Setlabels, + getEffectiveFirewalls( + params?: Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Regioninstantsnapshots$Setlabels, + ): Promise< + GaxiosResponseWithHTTP2 + >; + getEffectiveFirewalls( + params: Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Regioninstantsnapshots$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getEffectiveFirewalls( + params: Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Regioninstantsnapshots$Setlabels, - callback: BodyResponseCallback + getEffectiveFirewalls( + params: Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + getEffectiveFirewalls( + callback: BodyResponseCallback + ): void; + getEffectiveFirewalls( paramsOrCallback?: - | Params$Resource$Regioninstantsnapshots$Setlabels - | BodyResponseCallback + | Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstantsnapshots$Setlabels; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstantsnapshots$Setlabels; + params = + {} as Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls; options = {}; } @@ -175452,30 +195973,33 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/setLabels' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/getEffectiveFirewalls' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'region', 'network'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Returns permissions that a caller has on the specified resource. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -175508,7 +196032,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionInstantSnapshots.testIamPermissions({ + * const res = await compute.regionNetworkFirewallPolicies.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -175516,20 +196042,15 @@ export namespace compute_v1 { * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Name or id of the resource for this request. * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -175545,58 +196066,54 @@ export namespace compute_v1 { * @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$Regioninstantsnapshots$Testiampermissions, + getIamPolicy( + params: Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Regioninstantsnapshots$Testiampermissions, + getIamPolicy( + params?: Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Regioninstantsnapshots$Testiampermissions, + ): Promise>; + getIamPolicy( + params: Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Regioninstantsnapshots$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Regioninstantsnapshots$Testiampermissions, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy, + callback: BodyResponseCallback ): void; - testIamPermissions( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Regioninstantsnapshots$Testiampermissions - | BodyResponseCallback + | Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstantsnapshots$Testiampermissions; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Regioninstantsnapshots$Testiampermissions; + {} as Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy; options = {}; } @@ -175611,9 +196128,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -175624,299 +196141,179 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Regioninstantsnapshots$Delete extends StandardParameters { - /** - * Name of the InstantSnapshot resource to delete. - */ - instantSnapshot?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * 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. - * - * 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$Regioninstantsnapshots$Get extends StandardParameters { - /** - * Name of the InstantSnapshot resource to return. - */ - instantSnapshot?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - } - export interface Params$Resource$Regioninstantsnapshots$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - } - export interface Params$Resource$Regioninstantsnapshots$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$InstantSnapshot; - } - export interface Params$Resource$Regioninstantsnapshots$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Regioninstantsnapshots$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionSetPolicyRequest; - } - export interface Params$Resource$Regioninstantsnapshots$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The region for this request. - */ - region?: string; + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * 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. + * Gets a rule of the specified priority. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * Name or id of the resource for this request. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionNetworkFirewallPolicies.getRule({ + * // Name of the firewall policy to which the queried rule belongs. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to get from the firewall policy. + * priority: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, + * // "kind": "my_kind", + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "tlsInspect": false + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - resource?: string; + getRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Getrule, + options: StreamMethodOptions + ): Promise>; + getRule( + params?: Params$Resource$Regionnetworkfirewallpolicies$Getrule, + options?: MethodOptions + ): Promise>; + getRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Getrule, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Getrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Getrule, + callback: BodyResponseCallback + ): void; + getRule(callback: BodyResponseCallback): void; + getRule( + paramsOrCallback?: + | Params$Resource$Regionnetworkfirewallpolicies$Getrule + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionnetworkfirewallpolicies$Getrule; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$RegionSetLabelsRequest; - } - export interface Params$Resource$Regioninstantsnapshots$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionnetworkfirewallpolicies$Getrule; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Regionnetworkendpointgroups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/getRule' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Attach a list of network endpoints to the specified network endpoint group. + * Creates a new network firewall policy in the specified project and region. * @example * ```js * // Before running the sample: @@ -175948,19 +196345,14 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkEndpointGroups.attachNetworkEndpoints({ - * // The name of the network endpoint group where you are attaching network - * // endpoints to. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.regionNetworkFirewallPolicies.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region where - * // you want to create the network endpoint group. It should comply with - * // RFC1035. - * region: 'placeholder-value', - * // 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 + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. * // * // For example, consider a situation where you make an initial request and @@ -175978,7 +196370,23 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "networkEndpoints": [] + * // "associations": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "packetMirroringRules": [], + * // "parent": "my_parent", + * // "policyType": "my_policyType", + * // "region": "my_region", + * // "ruleTupleCount": 0, + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shortName": "my_shortName" * // } * }, * }); @@ -175991,6 +196399,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -176027,34 +196436,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - attachNetworkEndpoints( - params: Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints, + insert( + params: Params$Resource$Regionnetworkfirewallpolicies$Insert, options: StreamMethodOptions ): Promise>; - attachNetworkEndpoints( - params?: Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints, + insert( + params?: Params$Resource$Regionnetworkfirewallpolicies$Insert, options?: MethodOptions ): Promise>; - attachNetworkEndpoints( - params: Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints, + insert( + params: Params$Resource$Regionnetworkfirewallpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( - params: Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints, + insert( + params: Params$Resource$Regionnetworkfirewallpolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( - params: Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints, - callback: BodyResponseCallback - ): void; - attachNetworkEndpoints( + insert( + params: Params$Resource$Regionnetworkfirewallpolicies$Insert, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints + | Params$Resource$Regionnetworkfirewallpolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -176070,13 +196477,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints; + params = {} as Params$Resource$Regionnetworkfirewallpolicies$Insert; options = {}; } @@ -176091,7 +196497,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -176099,8 +196505,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -176114,8 +196520,8 @@ export namespace compute_v1 { } /** - * Deletes the specified network endpoint group. Note that the NEG cannot be - * deleted if it is configured as a backend of a backend service. + * Lists all the network firewall policies that have been configured + * for the specified project in the given region. * @example * ```js * // Before running the sample: @@ -176139,6 +196545,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -176147,16 +196554,249 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkEndpointGroups.delete({ - * // The name of the network endpoint group to delete. It should comply with - * // RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.regionNetworkFirewallPolicies.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region where - * // the network endpoint group is located. It should comply with RFC1035. - * region: 'placeholder-value', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionnetworkfirewallpolicies$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Regionnetworkfirewallpolicies$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Regionnetworkfirewallpolicies$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regionnetworkfirewallpolicies$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regionnetworkfirewallpolicies$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Regionnetworkfirewallpolicies$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionnetworkfirewallpolicies$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionnetworkfirewallpolicies$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Patches the specified network firewall policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionNetworkFirewallPolicies.patch({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -176171,6 +196811,30 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "associations": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "packetMirroringRules": [], + * // "parent": "my_parent", + * // "policyType": "my_policyType", + * // "region": "my_region", + * // "ruleTupleCount": 0, + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shortName": "my_shortName" + * // } + * }, * }); * console.log(res.data); * @@ -176181,6 +196845,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -176217,32 +196882,32 @@ export namespace compute_v1 { * @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$Regionnetworkendpointgroups$Delete, + patch( + params: Params$Resource$Regionnetworkfirewallpolicies$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Regionnetworkendpointgroups$Delete, + patch( + params?: Params$Resource$Regionnetworkfirewallpolicies$Patch, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Regionnetworkendpointgroups$Delete, + patch( + params: Params$Resource$Regionnetworkfirewallpolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regionnetworkendpointgroups$Delete, + patch( + params: Params$Resource$Regionnetworkfirewallpolicies$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regionnetworkendpointgroups$Delete, + patch( + params: Params$Resource$Regionnetworkfirewallpolicies$Patch, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Regionnetworkendpointgroups$Delete + | Params$Resource$Regionnetworkfirewallpolicies$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -176258,12 +196923,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkendpointgroups$Delete; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkendpointgroups$Delete; + params = {} as Params$Resource$Regionnetworkfirewallpolicies$Patch; options = {}; } @@ -176278,16 +196943,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'region'], + requiredParams: ['project', 'region', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project', 'region'], context: this.context, }; if (callback) { @@ -176301,7 +196966,7 @@ export namespace compute_v1 { } /** - * Detach the network endpoint from the specified network endpoint group. + * Patches a rule of the specified priority. * @example * ```js * // Before running the sample: @@ -176333,17 +196998,16 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkEndpointGroups.detachNetworkEndpoints({ - * // The name of the network endpoint group you are detaching network - * // endpoints from. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.regionNetworkFirewallPolicies.patchRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to patch. + * priority: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region where - * // the network endpoint group is located. It should comply with - * // RFC1035. - * region: 'placeholder-value', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -176357,14 +197021,27 @@ export namespace compute_v1 { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). - * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "networkEndpoints": [] + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, + * // "kind": "my_kind", + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "tlsInspect": false * // } * }, * }); @@ -176377,6 +197054,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -176413,34 +197091,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - detachNetworkEndpoints( - params: Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints, + patchRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Patchrule, options: StreamMethodOptions ): Promise>; - detachNetworkEndpoints( - params?: Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints, + patchRule( + params?: Params$Resource$Regionnetworkfirewallpolicies$Patchrule, options?: MethodOptions ): Promise>; - detachNetworkEndpoints( - params: Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints, + patchRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Patchrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( - params: Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints, + patchRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Patchrule, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( - params: Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints, - callback: BodyResponseCallback - ): void; - detachNetworkEndpoints( + patchRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Patchrule, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( + patchRule(callback: BodyResponseCallback): void; + patchRule( paramsOrCallback?: - | Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints + | Params$Resource$Regionnetworkfirewallpolicies$Patchrule | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -176456,13 +197132,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Patchrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints; + params = {} as Params$Resource$Regionnetworkfirewallpolicies$Patchrule; options = {}; } @@ -176477,7 +197152,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/patchRule' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -176485,8 +197160,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'region'], + requiredParams: ['project', 'region', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project', 'region'], context: this.context, }; if (callback) { @@ -176500,7 +197175,7 @@ export namespace compute_v1 { } /** - * Returns the specified network endpoint group. + * Removes an association for the specified network firewall policy. * @example * ```js * // Before running the sample: @@ -176524,7 +197199,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -176533,38 +197207,61 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkEndpointGroups.get({ - * // The name of the network endpoint group. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.regionNetworkFirewallPolicies.removeAssociation({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name for the association that will be removed. + * name: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region where - * // the network endpoint group is located. It should comply with RFC1035. - * region: 'placeholder-value', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "annotations": {}, - * // "appEngine": {}, - * // "cloudFunction": {}, - * // "cloudRun": {}, + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "defaultPort": 0, * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "network": "my_network", - * // "networkEndpointType": "my_networkEndpointType", - * // "pscData": {}, - * // "pscTargetService": "my_pscTargetService", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "size": 0, - * // "subnetwork": "my_subnetwork", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -176581,55 +197278,54 @@ export namespace compute_v1 { * @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$Regionnetworkendpointgroups$Get, + removeAssociation( + params: Params$Resource$Regionnetworkfirewallpolicies$Removeassociation, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Regionnetworkendpointgroups$Get, + removeAssociation( + params?: Params$Resource$Regionnetworkfirewallpolicies$Removeassociation, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Regionnetworkendpointgroups$Get, + ): Promise>; + removeAssociation( + params: Params$Resource$Regionnetworkfirewallpolicies$Removeassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regionnetworkendpointgroups$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + removeAssociation( + params: Params$Resource$Regionnetworkfirewallpolicies$Removeassociation, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regionnetworkendpointgroups$Get, - callback: BodyResponseCallback + removeAssociation( + params: Params$Resource$Regionnetworkfirewallpolicies$Removeassociation, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + removeAssociation(callback: BodyResponseCallback): void; + removeAssociation( paramsOrCallback?: - | Params$Resource$Regionnetworkendpointgroups$Get - | BodyResponseCallback + | Params$Resource$Regionnetworkfirewallpolicies$Removeassociation + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkendpointgroups$Get; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Removeassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkendpointgroups$Get; + params = + {} as Params$Resource$Regionnetworkfirewallpolicies$Removeassociation; options = {}; } @@ -176644,45 +197340,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/removeAssociation' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'region'], + requiredParams: ['project', 'region', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a network endpoint group in the specified project using the - * parameters that are included in the request. - * - * Note: Use the following APIs to manage network endpoint groups: - * - * - - * To manage NEGs with zonal scope (such as zonal NEGs, hybrid connectivity - * NEGs): zonal - * API - * - - * To manage NEGs with regional scope (such as regional internet NEGs, - * serverless NEGs, Private Service Connect NEGs): regional - * API - * - - * To manage NEGs with global scope (such as global internet NEGs):global - * API + * Deletes a rule of the specified priority. * @example * ```js * // Before running the sample: @@ -176714,14 +197395,16 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkEndpointGroups.insert({ + * const res = await compute.regionNetworkFirewallPolicies.removeRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to remove from the firewall policy. + * priority: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region where - * // you want to create the network endpoint group. It should comply with - * // RFC1035. - * region: 'placeholder-value', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -176736,32 +197419,6 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "annotations": {}, - * // "appEngine": {}, - * // "cloudFunction": {}, - * // "cloudRun": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "defaultPort": 0, - * // "description": "my_description", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "network": "my_network", - * // "networkEndpointType": "my_networkEndpointType", - * // "pscData": {}, - * // "pscTargetService": "my_pscTargetService", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "size": 0, - * // "subnetwork": "my_subnetwork", - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * @@ -176772,6 +197429,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -176808,32 +197466,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regionnetworkendpointgroups$Insert, + removeRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Removerule, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regionnetworkendpointgroups$Insert, + removeRule( + params?: Params$Resource$Regionnetworkfirewallpolicies$Removerule, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Regionnetworkendpointgroups$Insert, + removeRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Removerule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionnetworkendpointgroups$Insert, + removeRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Removerule, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionnetworkendpointgroups$Insert, + removeRule( + params: Params$Resource$Regionnetworkfirewallpolicies$Removerule, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + removeRule(callback: BodyResponseCallback): void; + removeRule( paramsOrCallback?: - | Params$Resource$Regionnetworkendpointgroups$Insert + | Params$Resource$Regionnetworkfirewallpolicies$Removerule | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -176849,12 +197507,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkendpointgroups$Insert; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Removerule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkendpointgroups$Insert; + params = {} as Params$Resource$Regionnetworkfirewallpolicies$Removerule; options = {}; } @@ -176869,7 +197527,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/removeRule' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -176877,8 +197535,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project', 'region'], context: this.context, }; if (callback) { @@ -176892,8 +197550,8 @@ export namespace compute_v1 { } /** - * Retrieves the list of regional network endpoint groups available to the - * specified project in the given region. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -176917,7 +197575,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -176926,112 +197583,33 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkEndpointGroups.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionNetworkFirewallPolicies.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of theregion - * // where the network endpoint group is located. It should comply with RFC1035. - * region: 'placeholder-value', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -177047,55 +197625,54 @@ export namespace compute_v1 { * @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$Regionnetworkendpointgroups$List, + setIamPolicy( + params: Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regionnetworkendpointgroups$List, + setIamPolicy( + params?: Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regionnetworkendpointgroups$List, + ): Promise>; + setIamPolicy( + params: Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionnetworkendpointgroups$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionnetworkendpointgroups$List, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Regionnetworkendpointgroups$List - | BodyResponseCallback + | Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkendpointgroups$List; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkendpointgroups$List; + params = + {} as Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy; options = {}; } @@ -177110,30 +197687,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the network endpoints in the specified network endpoint group. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -177166,114 +197743,28 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkEndpointGroups.listNetworkEndpoints({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // The name of the network endpoint group from which you want to generate a - * // list of included network endpoints. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionNetworkFirewallPolicies.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of theregion - * // where the network endpoint group is located. It should comply with RFC1035. - * region: 'placeholder-value', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "warning": {} + * // "permissions": [] * // } * } * @@ -177289,62 +197780,58 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listNetworkEndpoints( - params: Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints, + testIamPermissions( + params: Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions, options: StreamMethodOptions ): Promise>; - listNetworkEndpoints( - params?: Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints, + testIamPermissions( + params?: Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listNetworkEndpoints( - params: Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints, + ): Promise>; + testIamPermissions( + params: Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listNetworkEndpoints( - params: Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints, + testIamPermissions( + params: Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listNetworkEndpoints( - params: Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions, + callback: BodyResponseCallback ): void; - listNetworkEndpoints( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - listNetworkEndpoints( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints - | BodyResponseCallback + | Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints; + {}) as Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints; + {} as Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions; options = {}; } @@ -177359,7 +197846,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints' + '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -177367,39 +197854,40 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'region'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Regionnetworkendpointgroups$Attachnetworkendpoints extends StandardParameters { + export interface Params$Resource$Regionnetworkfirewallpolicies$Addassociation extends StandardParameters { /** - * The name of the network endpoint group where you are attaching network - * endpoints to. It should comply with RFC1035. + * Name of the firewall policy to update. */ - networkEndpointGroup?: string; + firewallPolicy?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the region where - * you want to create the network endpoint group. It should comply with - * RFC1035. + * Name of the region scoping this request. */ region?: string; + /** + * Indicates whether or not to replace it if an association already exists. + * This is false by default, in which case an error will be returned if an + * association already exists. + */ + replaceExistingAssociation?: boolean; /** * 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 @@ -177420,21 +197908,64 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$RegionNetworkEndpointGroupsAttachEndpointsRequest; + requestBody?: Schema$FirewallPolicyAssociation; } - export interface Params$Resource$Regionnetworkendpointgroups$Delete extends StandardParameters { + export interface Params$Resource$Regionnetworkfirewallpolicies$Addrule extends StandardParameters { /** - * The name of the network endpoint group to delete. It should comply with - * RFC1035. + * Name of the firewall policy to update. */ - networkEndpointGroup?: string; + firewallPolicy?: string; + /** + * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * This field is exclusive with rule.priority. + */ + maxPriority?: number; + /** + * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * This field is exclusive with rule.priority. + */ + minPriority?: number; /** * Project ID for this request. */ project?: string; /** - * The name of the region where - * the network endpoint group is located. It should comply with RFC1035. + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$FirewallPolicyRule; + } + export interface Params$Resource$Regionnetworkfirewallpolicies$Clonerules extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. */ region?: string; /** @@ -177453,21 +197984,22 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * The firewall policy from which to copy rules. + */ + sourceFirewallPolicy?: string; } - export interface Params$Resource$Regionnetworkendpointgroups$Detachnetworkendpoints extends StandardParameters { + export interface Params$Resource$Regionnetworkfirewallpolicies$Delete extends StandardParameters { /** - * The name of the network endpoint group you are detaching network - * endpoints from. It should comply with RFC1035. + * Name of the firewall policy to delete. */ - networkEndpointGroup?: string; + firewallPolicy?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the region where - * the network endpoint group is located. It should comply with - * RFC1035. + * Name of the region scoping this request. */ region?: string; /** @@ -177484,44 +198016,103 @@ export namespace compute_v1 { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder */ requestId?: string; - + } + export interface Params$Resource$Regionnetworkfirewallpolicies$Get extends StandardParameters { /** - * Request body metadata + * Name of the firewall policy to get. */ - requestBody?: Schema$RegionNetworkEndpointGroupsDetachEndpointsRequest; + firewallPolicy?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; } - export interface Params$Resource$Regionnetworkendpointgroups$Get extends StandardParameters { + export interface Params$Resource$Regionnetworkfirewallpolicies$Getassociation extends StandardParameters { /** - * The name of the network endpoint group. It should comply with RFC1035. + * Name of the firewall policy to which the queried association belongs. */ - networkEndpointGroup?: string; + firewallPolicy?: string; + /** + * The name of the association to get from the firewall policy. + */ + name?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the region where - * the network endpoint group is located. It should comply with RFC1035. + * Name of the region scoping this request. */ region?: string; } - export interface Params$Resource$Regionnetworkendpointgroups$Insert extends StandardParameters { + export interface Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls extends StandardParameters { + /** + * Network reference + */ + network?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the region where - * you want to create the network endpoint group. It should comply with - * RFC1035. + * Name of the region scoping this request. */ region?: string; + } + export interface Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy extends StandardParameters { /** - * 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 + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Regionnetworkfirewallpolicies$Getrule extends StandardParameters { + /** + * Name of the firewall policy to which the queried rule belongs. + */ + firewallPolicy?: string; + /** + * The priority of the rule to get from the firewall policy. + */ + priority?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } + export interface Params$Resource$Regionnetworkfirewallpolicies$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. * * For example, consider a situation where you make an initial request and @@ -177539,9 +198130,9 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$NetworkEndpointGroup; + requestBody?: Schema$FirewallPolicy; } - export interface Params$Resource$Regionnetworkendpointgroups$List extends StandardParameters { + export interface Params$Resource$Regionnetworkfirewallpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -177636,8 +198227,7 @@ export namespace compute_v1 { */ project?: string; /** - * The name of theregion - * where the network endpoint group is located. It should comply with RFC1035. + * Name of the region scoping this request. */ region?: string; /** @@ -177650,542 +198240,196 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Regionnetworkendpointgroups$Listnetworkendpoints extends StandardParameters { + export interface Params$Resource$Regionnetworkfirewallpolicies$Patch 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. - * 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 onresource 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 GoogleRE2 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. + * Name of the firewall policy to update. */ - filter?: string; + firewallPolicy?: string; /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) + * Project ID for this request. */ - maxResults?: number; + project?: string; /** - * The name of the network endpoint group from which you want to generate a - * list of included network endpoints. It should comply with RFC1035. + * Name of the region scoping this request. */ - networkEndpointGroup?: string; + region?: string; /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * 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. * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * 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. * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - orderBy?: string; + requestId?: string; + /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * Request body metadata */ - pageToken?: string; + requestBody?: Schema$FirewallPolicy; + } + export interface Params$Resource$Regionnetworkfirewallpolicies$Patchrule extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * The priority of the rule to patch. + */ + priority?: number; /** * Project ID for this request. */ project?: string; /** - * The name of theregion - * where the network endpoint group is located. It should comply with RFC1035. + * Name of the region scoping this request. */ region?: string; /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * 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. * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. + * 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). */ - returnPartialSuccess?: boolean; - } - - export class Resource$Regionnetworkfirewallpolicies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } + requestId?: string; /** - * Inserts an association for the specified network firewall policy. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.addAssociation({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Indicates whether or not to replace it if an association already exists. - * // This is false by default, in which case an error will be returned if an - * // association already exists. - * replaceExistingAssociation: 'placeholder-value', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "attachmentTarget": "my_attachmentTarget", - * // "displayName": "my_displayName", - * // "firewallPolicyId": "my_firewallPolicyId", - * // "name": "my_name", - * // "shortName": "my_shortName" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. + * Request body metadata */ - addAssociation( - params: Params$Resource$Regionnetworkfirewallpolicies$Addassociation, - options: StreamMethodOptions - ): Promise>; - addAssociation( - params?: Params$Resource$Regionnetworkfirewallpolicies$Addassociation, - options?: MethodOptions - ): Promise>; - addAssociation( - params: Params$Resource$Regionnetworkfirewallpolicies$Addassociation, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addAssociation( - params: Params$Resource$Regionnetworkfirewallpolicies$Addassociation, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addAssociation( - params: Params$Resource$Regionnetworkfirewallpolicies$Addassociation, - callback: BodyResponseCallback - ): void; - addAssociation(callback: BodyResponseCallback): void; - addAssociation( - paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Addassociation - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Addassociation; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Regionnetworkfirewallpolicies$Addassociation; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/addAssociation' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - + requestBody?: Schema$FirewallPolicyRule; + } + export interface Params$Resource$Regionnetworkfirewallpolicies$Removeassociation extends StandardParameters { /** - * Inserts a rule into a network firewall policy. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.addRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * // This field is exclusive with rule.priority. - * maxPriority: 'placeholder-value', - * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * // This field is exclusive with rule.priority. - * minPriority: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, - * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "tlsInspect": false - * // } - * }, - * }); - * console.log(res.data); + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * Name for the association that will be removed. + */ + name?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * 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$Regionnetworkfirewallpolicies$Removerule extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * The priority of the rule to remove from the firewall policy. + */ + priority?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. * - * ``` + * 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - addRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Addrule, - options: StreamMethodOptions - ): Promise>; - addRule( - params?: Params$Resource$Regionnetworkfirewallpolicies$Addrule, - options?: MethodOptions - ): Promise>; - addRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Addrule, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Addrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Addrule, - callback: BodyResponseCallback - ): void; - addRule(callback: BodyResponseCallback): void; - addRule( - paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Addrule - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Addrule; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkfirewallpolicies$Addrule; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + requestId?: string; + } + export interface Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/addRule' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + /** + * Request body metadata + */ + requestBody?: Schema$RegionSetPolicyRequest; + } + export interface Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Regionnotificationendpoints { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Copies rules to the specified network firewall policy. + * Retrieves the list of all NotificationEndpoint resources, + * regional and global, available to the specified project. * @example * ```js * // Before running the sample: @@ -178209,6 +198453,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -178217,61 +198462,121 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.cloneRules({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. + * const res = await compute.regionNotificationEndpoints.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the project scoping this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The firewall policy from which to copy rules. - * sourceFirewallPolicy: 'placeholder-value', + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -178287,53 +198592,62 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - cloneRules( - params: Params$Resource$Regionnetworkfirewallpolicies$Clonerules, + aggregatedList( + params: Params$Resource$Regionnotificationendpoints$Aggregatedlist, options: StreamMethodOptions ): Promise>; - cloneRules( - params?: Params$Resource$Regionnetworkfirewallpolicies$Clonerules, + aggregatedList( + params?: Params$Resource$Regionnotificationendpoints$Aggregatedlist, options?: MethodOptions - ): Promise>; - cloneRules( - params: Params$Resource$Regionnetworkfirewallpolicies$Clonerules, + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Regionnotificationendpoints$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cloneRules( - params: Params$Resource$Regionnetworkfirewallpolicies$Clonerules, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Regionnotificationendpoints$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cloneRules( - params: Params$Resource$Regionnetworkfirewallpolicies$Clonerules, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Regionnotificationendpoints$Aggregatedlist, + callback: BodyResponseCallback ): void; - cloneRules(callback: BodyResponseCallback): void; - cloneRules( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Clonerules - | BodyResponseCallback + | Params$Resource$Regionnotificationendpoints$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Clonerules; + {}) as Params$Resource$Regionnotificationendpoints$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkfirewallpolicies$Clonerules; + params = + {} as Params$Resource$Regionnotificationendpoints$Aggregatedlist; options = {}; } @@ -178348,30 +198662,32 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/cloneRules' + '/compute/v1/projects/{project}/aggregated/notificationEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes the specified network firewall policy. + * Deletes the specified NotificationEndpoint in the given region * @example * ```js * // Before running the sample: @@ -178403,9 +198719,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.delete({ - * // Name of the firewall policy to delete. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionNotificationEndpoints.delete({ + * // Name of the NotificationEndpoint resource to delete. + * notificationEndpoint: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -178435,6 +198751,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -178472,31 +198789,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Regionnetworkfirewallpolicies$Delete, + params: Params$Resource$Regionnotificationendpoints$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Regionnetworkfirewallpolicies$Delete, + params?: Params$Resource$Regionnotificationendpoints$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Regionnetworkfirewallpolicies$Delete, + params: Params$Resource$Regionnotificationendpoints$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regionnetworkfirewallpolicies$Delete, + params: Params$Resource$Regionnotificationendpoints$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regionnetworkfirewallpolicies$Delete, + params: Params$Resource$Regionnotificationendpoints$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Delete + | Params$Resource$Regionnotificationendpoints$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -178512,12 +198829,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Delete; + {}) as Params$Resource$Regionnotificationendpoints$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkfirewallpolicies$Delete; + params = {} as Params$Resource$Regionnotificationendpoints$Delete; options = {}; } @@ -178532,7 +198849,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}' + '/compute/v1/projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -178540,8 +198857,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project', 'region'], + requiredParams: ['project', 'region', 'notificationEndpoint'], + pathParams: ['notificationEndpoint', 'project', 'region'], context: this.context, }; if (callback) { @@ -178555,7 +198872,7 @@ export namespace compute_v1 { } /** - * Returns the specified network firewall policy. + * Returns the specified NotificationEndpoint resource in the given region. * @example * ```js * // Before running the sample: @@ -178588,9 +198905,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.get({ - * // Name of the firewall policy to get. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionNotificationEndpoints.get({ + * // Name of the NotificationEndpoint resource to return. + * notificationEndpoint: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -178601,23 +198918,14 @@ export namespace compute_v1 { * * // Example response * // { - * // "associations": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "displayName": "my_displayName", - * // "fingerprint": "my_fingerprint", + * // "grpcSettings": {}, * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", - * // "packetMirroringRules": [], - * // "parent": "my_parent", - * // "policyType": "my_policyType", * // "region": "my_region", - * // "ruleTupleCount": 0, - * // "rules": [], - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shortName": "my_shortName" + * // "selfLink": "my_selfLink" * // } * } * @@ -178634,52 +198942,54 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regionnetworkfirewallpolicies$Get, + params: Params$Resource$Regionnotificationendpoints$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regionnetworkfirewallpolicies$Get, + params?: Params$Resource$Regionnotificationendpoints$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regionnetworkfirewallpolicies$Get, + params: Params$Resource$Regionnotificationendpoints$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionnetworkfirewallpolicies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regionnotificationendpoints$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionnetworkfirewallpolicies$Get, - callback: BodyResponseCallback + params: Params$Resource$Regionnotificationendpoints$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Get - | BodyResponseCallback + | Params$Resource$Regionnotificationendpoints$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Get; + {}) as Params$Resource$Regionnotificationendpoints$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkfirewallpolicies$Get; + params = {} as Params$Resource$Regionnotificationendpoints$Get; options = {}; } @@ -178694,7 +199004,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}' + '/compute/v1/projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -178702,22 +199012,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project', 'region'], + requiredParams: ['project', 'region', 'notificationEndpoint'], + pathParams: ['notificationEndpoint', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets an association with the specified name. + * Create a NotificationEndpoint in the specified project in the given region + * using the parameters that are included in the request. * @example * ```js * // Before running the sample: @@ -178741,7 +199052,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -178750,26 +199060,73 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.getAssociation({ - * // Name of the firewall policy to which the queried association belongs. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the association to get from the firewall policy. - * name: 'placeholder-value', + * const res = await compute.regionNotificationEndpoints.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "grpcSettings": {}, + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "selfLink": "my_selfLink" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "attachmentTarget": "my_attachmentTarget", - * // "displayName": "my_displayName", - * // "firewallPolicyId": "my_firewallPolicyId", + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", * // "name": "my_name", - * // "shortName": "my_shortName" + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -178785,58 +199142,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getAssociation( - params: Params$Resource$Regionnetworkfirewallpolicies$Getassociation, + insert( + params: Params$Resource$Regionnotificationendpoints$Insert, options: StreamMethodOptions ): Promise>; - getAssociation( - params?: Params$Resource$Regionnetworkfirewallpolicies$Getassociation, + insert( + params?: Params$Resource$Regionnotificationendpoints$Insert, options?: MethodOptions - ): Promise>; - getAssociation( - params: Params$Resource$Regionnetworkfirewallpolicies$Getassociation, + ): Promise>; + insert( + params: Params$Resource$Regionnotificationendpoints$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getAssociation( - params: Params$Resource$Regionnetworkfirewallpolicies$Getassociation, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getAssociation( - params: Params$Resource$Regionnetworkfirewallpolicies$Getassociation, - callback: BodyResponseCallback + insert( + params: Params$Resource$Regionnotificationendpoints$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getAssociation( - callback: BodyResponseCallback + insert( + params: Params$Resource$Regionnotificationendpoints$Insert, + callback: BodyResponseCallback ): void; - getAssociation( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Getassociation - | BodyResponseCallback + | Params$Resource$Regionnotificationendpoints$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Getassociation; + {}) as Params$Resource$Regionnotificationendpoints$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regionnetworkfirewallpolicies$Getassociation; + params = {} as Params$Resource$Regionnotificationendpoints$Insert; options = {}; } @@ -178851,30 +199203,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/getAssociation' + '/compute/v1/projects/{project}/regions/{region}/notificationEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the effective firewalls on a given network. + * Lists the NotificationEndpoints for a project in the given region. * @example * ```js * // Before running the sample: @@ -178907,23 +199259,111 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.getEffectiveFirewalls( - * { - * // Network reference - * network: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * }, - * ); + * const res = await compute.regionNotificationEndpoints.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "firewallPolicys": [], - * // "firewalls": [] + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -178939,62 +199379,55 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getEffectiveFirewalls( - params: Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls, + list( + params: Params$Resource$Regionnotificationendpoints$List, options: StreamMethodOptions ): Promise>; - getEffectiveFirewalls( - params?: Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls, + list( + params?: Params$Resource$Regionnotificationendpoints$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getEffectiveFirewalls( - params: Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls, + ): Promise>; + list( + params: Params$Resource$Regionnotificationendpoints$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getEffectiveFirewalls( - params: Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls, + list( + params: Params$Resource$Regionnotificationendpoints$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getEffectiveFirewalls( - params: Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getEffectiveFirewalls( - callback: BodyResponseCallback + list( + params: Params$Resource$Regionnotificationendpoints$List, + callback: BodyResponseCallback ): void; - getEffectiveFirewalls( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls - | BodyResponseCallback + | Params$Resource$Regionnotificationendpoints$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls; + {}) as Params$Resource$Regionnotificationendpoints$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls; + params = {} as Params$Resource$Regionnotificationendpoints$List; options = {}; } @@ -179009,7 +199442,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/getEffectiveFirewalls' + '/compute/v1/projects/{project}/regions/{region}/notificationEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -179017,25 +199450,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'network'], + requiredParams: ['project', 'region'], pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -179068,9 +199498,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.regionNotificationEndpoints.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -179078,15 +199506,20 @@ export namespace compute_v1 { * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Name or id of the resource for this request. * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "permissions": [] * // } * } * @@ -179102,54 +199535,58 @@ export namespace compute_v1 { * @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$Regionnetworkfirewallpolicies$Getiampolicy, + testIamPermissions( + params: Params$Resource$Regionnotificationendpoints$Testiampermissions, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy, + testIamPermissions( + params?: Params$Resource$Regionnotificationendpoints$Testiampermissions, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy, + ): Promise>; + testIamPermissions( + params: Params$Resource$Regionnotificationendpoints$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regionnotificationendpoints$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regionnotificationendpoints$Testiampermissions, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy - | BodyResponseCallback + | Params$Resource$Regionnotificationendpoints$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy; + {}) as Params$Resource$Regionnotificationendpoints$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy; + {} as Params$Resource$Regionnotificationendpoints$Testiampermissions; options = {}; } @@ -179164,9 +199601,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/notificationEndpoints/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -179177,17 +199614,346 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + + export interface Params$Resource$Regionnotificationendpoints$Aggregatedlist 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. + * 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 onresource 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 GoogleRE2 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; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Regionnotificationendpoints$Delete extends StandardParameters { + /** + * Name of the NotificationEndpoint resource to delete. + */ + notificationEndpoint?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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$Regionnotificationendpoints$Get extends StandardParameters { + /** + * Name of the NotificationEndpoint resource to return. + */ + notificationEndpoint?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } + export interface Params$Resource$Regionnotificationendpoints$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$NotificationEndpoint; + } + export interface Params$Resource$Regionnotificationendpoints$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regionnotificationendpoints$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Regionoperations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Gets a rule of the specified priority. + * Deletes the specified region-specific Operations resource. * @example * ```js * // Before running the sample: @@ -179211,7 +199977,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -179220,37 +199985,17 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.getRule({ - * // Name of the firewall policy to which the queried rule belongs. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to get from the firewall policy. - * priority: 'placeholder-value', + * const res = await compute.regionOperations.delete({ + * // Name of the Operations resource to delete, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); - * - * // Example response - * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, - * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "tlsInspect": false - * // } * } * * main().catch(e => { @@ -179265,53 +200010,51 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Getrule, + delete( + params: Params$Resource$Regionoperations$Delete, options: StreamMethodOptions ): Promise>; - getRule( - params?: Params$Resource$Regionnetworkfirewallpolicies$Getrule, + delete( + params?: Params$Resource$Regionoperations$Delete, options?: MethodOptions - ): Promise>; - getRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Getrule, + ): Promise>; + delete( + params: Params$Resource$Regionoperations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Getrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Regionoperations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Getrule, - callback: BodyResponseCallback + delete( + params: Params$Resource$Regionoperations$Delete, + callback: BodyResponseCallback ): void; - getRule(callback: BodyResponseCallback): void; - getRule( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Getrule - | BodyResponseCallback + | Params$Resource$Regionoperations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback + callback?: BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Getrule; + {}) as Params$Resource$Regionoperations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkfirewallpolicies$Getrule; + params = {} as Params$Resource$Regionoperations$Delete; options = {}; } @@ -179326,30 +200069,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/getRule' + '/compute/v1/projects/{project}/regions/{region}/operations/{operation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project', 'region'], + requiredParams: ['project', 'region', 'operation'], + pathParams: ['operation', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a new network firewall policy in the specified project and region. + * Retrieves the specified region-specific Operations resource. * @example * ```js * // Before running the sample: @@ -179373,6 +200116,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -179381,50 +200125,15 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.insert({ + * const res = await compute.regionOperations.get({ + * // Name of the Operations resource to return, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "associations": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "packetMirroringRules": [], - * // "parent": "my_parent", - * // "policyType": "my_policyType", - * // "region": "my_region", - * // "ruleTupleCount": 0, - * // "rules": [], - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shortName": "my_shortName" - * // } - * }, * }); * console.log(res.data); * @@ -179435,6 +200144,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -179471,32 +200181,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regionnetworkfirewallpolicies$Insert, + get( + params: Params$Resource$Regionoperations$Get, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regionnetworkfirewallpolicies$Insert, + get( + params?: Params$Resource$Regionoperations$Get, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Regionnetworkfirewallpolicies$Insert, + get( + params: Params$Resource$Regionoperations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionnetworkfirewallpolicies$Insert, + get( + params: Params$Resource$Regionoperations$Get, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionnetworkfirewallpolicies$Insert, + get( + params: Params$Resource$Regionoperations$Get, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Insert + | Params$Resource$Regionoperations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -179512,12 +200222,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Insert; + {}) as Params$Resource$Regionoperations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkfirewallpolicies$Insert; + params = {} as Params$Resource$Regionoperations$Get; options = {}; } @@ -179532,16 +200242,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies' + '/compute/v1/projects/{project}/regions/{region}/operations/{operation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'operation'], + pathParams: ['operation', 'project', 'region'], context: this.context, }; if (callback) { @@ -179555,8 +200265,8 @@ export namespace compute_v1 { } /** - * Lists all the network firewall policies that have been configured - * for the specified project in the given region. + * Retrieves a list of Operation resources contained within + * the specified region. * @example * ```js * // Before running the sample: @@ -179589,7 +200299,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.list({ + * const res = await compute.regionOperations.list({ * // 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 @@ -179674,7 +200384,7 @@ export namespace compute_v1 { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. @@ -179692,6 +200402,7 @@ export namespace compute_v1 { * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", * // "warning": {} * // } * } @@ -179709,52 +200420,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Regionnetworkfirewallpolicies$List, + params: Params$Resource$Regionoperations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Regionnetworkfirewallpolicies$List, + params?: Params$Resource$Regionoperations$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Regionnetworkfirewallpolicies$List, + params: Params$Resource$Regionoperations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regionnetworkfirewallpolicies$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regionoperations$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regionnetworkfirewallpolicies$List, - callback: BodyResponseCallback + params: Params$Resource$Regionoperations$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$List - | BodyResponseCallback + | Params$Resource$Regionoperations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$List; + {}) as Params$Resource$Regionoperations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkfirewallpolicies$List; + params = {} as Params$Resource$Regionoperations$List; options = {}; } @@ -179769,7 +200480,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies' + '/compute/v1/projects/{project}/regions/{region}/operations' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -179782,17 +200493,32 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified network firewall policy. + * Waits for the specified Operation resource to return as `DONE` + * or for the request to approach the 2 minute deadline, and retrieves the + * specified Operation resource. This method differs from the + * `GET` method in that it waits for no more than the default + * deadline (2 minutes) and then returns the current state of the operation, + * which might be `DONE` or still in progress. + * + * This method is called on a best-effort basis. Specifically: + * + * + * - In uncommon cases, when the server is overloaded, the request might + * return before the default deadline is reached, or might return after zero + * seconds. + * - If the default deadline is reached, there is no guarantee that the + * operation is actually done when the method returns. Be prepared to retry + * if the operation is not `DONE`. * @example * ```js * // Before running the sample: @@ -179816,6 +200542,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -179824,52 +200551,15 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.patch({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionOperations.wait({ + * // Name of the Operations resource to return, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "associations": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "packetMirroringRules": [], - * // "parent": "my_parent", - * // "policyType": "my_policyType", - * // "region": "my_region", - * // "ruleTupleCount": 0, - * // "rules": [], - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shortName": "my_shortName" - * // } - * }, * }); * console.log(res.data); * @@ -179880,6 +200570,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -179916,32 +200607,32 @@ export namespace compute_v1 { * @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$Regionnetworkfirewallpolicies$Patch, + wait( + params: Params$Resource$Regionoperations$Wait, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Regionnetworkfirewallpolicies$Patch, + wait( + params?: Params$Resource$Regionoperations$Wait, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Regionnetworkfirewallpolicies$Patch, + wait( + params: Params$Resource$Regionoperations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionnetworkfirewallpolicies$Patch, + wait( + params: Params$Resource$Regionoperations$Wait, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionnetworkfirewallpolicies$Patch, + wait( + params: Params$Resource$Regionoperations$Wait, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + wait(callback: BodyResponseCallback): void; + wait( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Patch + | Params$Resource$Regionoperations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -179957,12 +200648,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Patch; + {}) as Params$Resource$Regionoperations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkfirewallpolicies$Patch; + params = {} as Params$Resource$Regionoperations$Wait; options = {}; } @@ -179977,16 +200668,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}' + '/compute/v1/projects/{project}/regions/{region}/operations/{operation}/wait' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project', 'region'], + requiredParams: ['project', 'region', 'operation'], + pathParams: ['operation', 'project', 'region'], context: this.context, }; if (callback) { @@ -179998,9 +200689,187 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Regionoperations$Delete extends StandardParameters { /** - * Patches a rule of the specified priority. + * Name of the Operations resource to delete, or its unique numeric + * identifier. + */ + operation?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + } + export interface Params$Resource$Regionoperations$Get extends StandardParameters { + /** + * Name of the Operations resource to return, or its unique numeric + * identifier. + */ + operation?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + } + export interface Params$Resource$Regionoperations$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regionoperations$Wait extends StandardParameters { + /** + * Name of the Operations resource to return, or its unique numeric + * identifier. + */ + operation?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + } + + export class Resource$Regions { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns the specified Region resource. + * + * To decrease latency for this method, you can optionally omit any unneeded + * information from the response by using a field mask. This practice is + * especially recommended for unused quota information (the `quotas` field). + * To exclude one or more fields, set your request's `fields` query parameter + * to only include the fields you need. For example, to only include the `id` + * and `selfLink` fields, add the query parameter `?fields=id,selfLink` to + * your request. + * + * This method fails if the quota information is unavailable for the region + * and if the organization policy constraint + * compute.requireBasicQuotaInResponse is enforced. This + * constraint, when enforced, disables the fail-open behaviour when quota + * information (the `items.quotas` field) is unavailable for the region. + * It is recommended to use the default setting + * for the constraint unless your application requires the fail-closed + * behaviour for this method. * @example * ```js * // Before running the sample: @@ -180024,6 +200893,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -180032,83 +200902,280 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.patchRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to patch. - * priority: 'placeholder-value', + * const res = await compute.regions.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, - * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "tlsInspect": false - * // } - * }, + * // Name of the region resource to return. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "quotaStatusWarning": {}, + * // "quotas": [], * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "supportsPzs": false, + * // "zones": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regions$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Regions$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Regions$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regions$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regions$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Regions$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Regions$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regions$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/projects/{project}/regions/{region}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the list of region resources available to the specified project. + * + * To decrease latency for this method, you can optionally omit any unneeded + * information from the response by using a field mask. This practice is + * especially recommended for unused quota information + * (the `items.quotas` field). + * To exclude one or more fields, set your request's `fields` query parameter + * to only include the fields you need. For example, to only include the `id` + * and `selfLink` fields, add the query parameter `?fields=id,selfLink` to + * your request. + * + * This method fails if the quota information is unavailable for the region + * and if the organization policy constraint + * compute.requireBasicQuotaInResponse is enforced. This + * constraint, when enforced, disables the fail-open behaviour when quota + * information (the `items.quotas` field) is unavailable for the region. + * It is recommended to use the default setting + * for the constraint unless your application requires the fail-closed + * behaviour for this method. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regions.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -180117,98 +201184,219 @@ export namespace compute_v1 { * throw e; * }); * - * ``` + * ``` + * + * @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$Regions$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Regions$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Regions$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regions$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regions$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Regions$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Regions$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regions$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/compute/v1/projects/{project}/regions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Regions$Get extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region resource to return. + */ + region?: string; + } + export interface Params$Resource$Regions$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. * - * @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. + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - patchRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Patchrule, - options: StreamMethodOptions - ): Promise>; - patchRule( - params?: Params$Resource$Regionnetworkfirewallpolicies$Patchrule, - options?: MethodOptions - ): Promise>; - patchRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Patchrule, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patchRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Patchrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patchRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Patchrule, - callback: BodyResponseCallback - ): void; - patchRule(callback: BodyResponseCallback): void; - patchRule( - paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Patchrule - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Patchrule; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkfirewallpolicies$Patchrule; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + returnPartialSuccess?: boolean; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/patchRule' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Regionsecuritypolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Removes an association for the specified network firewall policy. + * Inserts a rule into a security policy. * @example * ```js * // Before running the sample: @@ -180240,30 +201428,34 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.removeAssociation({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Name for the association that will be removed. - * name: 'placeholder-value', + * const res = await compute.regionSecurityPolicies.addRule({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', + * // Name of the security policy to update. + * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // If true, the request will not be committed. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "headerAction": {}, + * // "kind": "my_kind", + * // "match": {}, + * // "networkMatch": {}, + * // "preconfiguredWafConfig": {}, + * // "preview": false, + * // "priority": 0, + * // "rateLimitOptions": {}, + * // "redirectOptions": {} + * // } + * }, * }); * console.log(res.data); * @@ -180274,6 +201466,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -180310,32 +201503,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeAssociation( - params: Params$Resource$Regionnetworkfirewallpolicies$Removeassociation, + addRule( + params: Params$Resource$Regionsecuritypolicies$Addrule, options: StreamMethodOptions ): Promise>; - removeAssociation( - params?: Params$Resource$Regionnetworkfirewallpolicies$Removeassociation, + addRule( + params?: Params$Resource$Regionsecuritypolicies$Addrule, options?: MethodOptions ): Promise>; - removeAssociation( - params: Params$Resource$Regionnetworkfirewallpolicies$Removeassociation, + addRule( + params: Params$Resource$Regionsecuritypolicies$Addrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeAssociation( - params: Params$Resource$Regionnetworkfirewallpolicies$Removeassociation, + addRule( + params: Params$Resource$Regionsecuritypolicies$Addrule, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeAssociation( - params: Params$Resource$Regionnetworkfirewallpolicies$Removeassociation, + addRule( + params: Params$Resource$Regionsecuritypolicies$Addrule, callback: BodyResponseCallback ): void; - removeAssociation(callback: BodyResponseCallback): void; - removeAssociation( + addRule(callback: BodyResponseCallback): void; + addRule( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Removeassociation + | Params$Resource$Regionsecuritypolicies$Addrule | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -180351,13 +201544,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Removeassociation; + {}) as Params$Resource$Regionsecuritypolicies$Addrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regionnetworkfirewallpolicies$Removeassociation; + params = {} as Params$Resource$Regionsecuritypolicies$Addrule; options = {}; } @@ -180372,7 +201564,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/removeAssociation' + '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/addRule' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -180380,8 +201572,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project', 'region'], + requiredParams: ['project', 'region', 'securityPolicy'], + pathParams: ['project', 'region', 'securityPolicy'], context: this.context, }; if (callback) { @@ -180395,7 +201587,7 @@ export namespace compute_v1 { } /** - * Deletes a rule of the specified priority. + * Deletes the specified policy. * @example * ```js * // Before running the sample: @@ -180427,11 +201619,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.removeRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to remove from the firewall policy. - * priority: 'placeholder-value', + * const res = await compute.regionSecurityPolicies.delete({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -180451,6 +201639,8 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Name of the security policy to delete. + * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -180461,6 +201651,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -180497,32 +201688,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Removerule, + delete( + params: Params$Resource$Regionsecuritypolicies$Delete, options: StreamMethodOptions ): Promise>; - removeRule( - params?: Params$Resource$Regionnetworkfirewallpolicies$Removerule, + delete( + params?: Params$Resource$Regionsecuritypolicies$Delete, options?: MethodOptions ): Promise>; - removeRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Removerule, + delete( + params: Params$Resource$Regionsecuritypolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Removerule, + delete( + params: Params$Resource$Regionsecuritypolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeRule( - params: Params$Resource$Regionnetworkfirewallpolicies$Removerule, + delete( + params: Params$Resource$Regionsecuritypolicies$Delete, callback: BodyResponseCallback ): void; - removeRule(callback: BodyResponseCallback): void; - removeRule( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Removerule + | Params$Resource$Regionsecuritypolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -180538,12 +201729,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Removerule; + {}) as Params$Resource$Regionsecuritypolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnetworkfirewallpolicies$Removerule; + params = {} as Params$Resource$Regionsecuritypolicies$Delete; options = {}; } @@ -180558,16 +201749,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewallPolicy}/removeRule' + '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project', 'region'], + requiredParams: ['project', 'region', 'securityPolicy'], + pathParams: ['project', 'region', 'securityPolicy'], context: this.context, }; if (callback) { @@ -180581,8 +201772,7 @@ export namespace compute_v1 { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * List all of the ordered rules present in a single specified policy. * @example * ```js * // Before running the sample: @@ -180606,6 +201796,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -180614,33 +201805,39 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.setIamPolicy({ + * const res = await compute.regionSecurityPolicies.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} - * // } - * }, + * // Name of the security policy to get. + * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "adaptiveProtectionConfig": {}, + * // "advancedOptionsConfig": {}, + * // "associations": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "ddosProtectionConfig": {}, + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "parent": "my_parent", + * // "recaptchaOptionsConfig": {}, + * // "region": "my_region", + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "shortName": "my_shortName", + * // "type": "my_type", + * // "userDefinedFields": [] * // } * } * @@ -180656,54 +201853,53 @@ export namespace compute_v1 { * @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$Regionnetworkfirewallpolicies$Setiampolicy, + get( + params: Params$Resource$Regionsecuritypolicies$Get, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy, + get( + params?: Params$Resource$Regionsecuritypolicies$Get, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy, + ): Promise>; + get( + params: Params$Resource$Regionsecuritypolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Regionsecuritypolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy, - callback: BodyResponseCallback + get( + params: Params$Resource$Regionsecuritypolicies$Get, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy - | BodyResponseCallback + | Params$Resource$Regionsecuritypolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy; + {}) as Params$Resource$Regionsecuritypolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regionnetworkfirewallpolicies$Setiampolicy; + params = {} as Params$Resource$Regionsecuritypolicies$Get; options = {}; } @@ -180718,30 +201914,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'region', 'securityPolicy'], + pathParams: ['project', 'region', 'securityPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Gets a rule at the specified priority. * @example * ```js * // Before running the sample: @@ -180774,28 +201970,32 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNetworkFirewallPolicies.testIamPermissions({ + * const res = await compute.regionSecurityPolicies.getRule({ + * // The priority of the rule to get from the security policy. + * priority: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * // Name of the security policy to which the queried rule belongs. + * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "action": "my_action", + * // "description": "my_description", + * // "headerAction": {}, + * // "kind": "my_kind", + * // "match": {}, + * // "networkMatch": {}, + * // "preconfiguredWafConfig": {}, + * // "preview": false, + * // "priority": 0, + * // "rateLimitOptions": {}, + * // "redirectOptions": {} * // } * } * @@ -180811,655 +202011,92 @@ export namespace compute_v1 { * @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$Regionnetworkfirewallpolicies$Testiampermissions, + getRule( + params: Params$Resource$Regionsecuritypolicies$Getrule, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions, + getRule( + params?: Params$Resource$Regionsecuritypolicies$Getrule, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions, + ): Promise>; + getRule( + params: Params$Resource$Regionsecuritypolicies$Getrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions, - callback: BodyResponseCallback + getRule( + params: Params$Resource$Regionsecuritypolicies$Getrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + getRule( + params: Params$Resource$Regionsecuritypolicies$Getrule, + callback: BodyResponseCallback ): void; - testIamPermissions( + getRule(callback: BodyResponseCallback): void; + getRule( paramsOrCallback?: - | Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{resource}/testIamPermissions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Regionnetworkfirewallpolicies$Addassociation extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * Indicates whether or not to replace it if an association already exists. - * This is false by default, in which case an error will be returned if an - * association already exists. - */ - replaceExistingAssociation?: boolean; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$FirewallPolicyAssociation; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$Addrule extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; - /** - * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * This field is exclusive with rule.priority. - */ - maxPriority?: number; - /** - * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * This field is exclusive with rule.priority. - */ - minPriority?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$FirewallPolicyRule; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$Clonerules extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - /** - * The firewall policy from which to copy rules. - */ - sourceFirewallPolicy?: string; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$Delete extends StandardParameters { - /** - * Name of the firewall policy to delete. - */ - firewallPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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$Regionnetworkfirewallpolicies$Get extends StandardParameters { - /** - * Name of the firewall policy to get. - */ - firewallPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$Getassociation extends StandardParameters { - /** - * Name of the firewall policy to which the queried association belongs. - */ - firewallPolicy?: string; - /** - * The name of the association to get from the firewall policy. - */ - name?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$Geteffectivefirewalls extends StandardParameters { - /** - * Network reference - */ - network?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$Getrule extends StandardParameters { - /** - * Name of the firewall policy to which the queried rule belongs. - */ - firewallPolicy?: string; - /** - * The priority of the rule to get from the firewall policy. - */ - priority?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$FirewallPolicy; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$Patch extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$FirewallPolicy; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$Patchrule extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; - /** - * The priority of the rule to patch. - */ - priority?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$FirewallPolicyRule; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$Removeassociation extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; - /** - * Name for the association that will be removed. - */ - name?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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$Regionnetworkfirewallpolicies$Removerule extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; - /** - * The priority of the rule to remove from the firewall policy. - */ - priority?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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$Regionnetworkfirewallpolicies$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionSetPolicyRequest; - } - export interface Params$Resource$Regionnetworkfirewallpolicies$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; + | Params$Resource$Regionsecuritypolicies$Getrule + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionsecuritypolicies$Getrule; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionsecuritypolicies$Getrule; + options = {}; + } - export class Resource$Regionnotificationendpoints { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/getRule' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'securityPolicy'], + pathParams: ['project', 'region', 'securityPolicy'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Deletes the specified NotificationEndpoint in the given region + * Creates a new policy in the specified project using the data included in + * the request. * @example * ```js * // Before running the sample: @@ -181491,9 +202128,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNotificationEndpoints.delete({ - * // Name of the NotificationEndpoint resource to delete. - * notificationEndpoint: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionSecurityPolicies.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -181513,6 +202148,35 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // If true, the request will not be committed. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adaptiveProtectionConfig": {}, + * // "advancedOptionsConfig": {}, + * // "associations": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "ddosProtectionConfig": {}, + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "parent": "my_parent", + * // "recaptchaOptionsConfig": {}, + * // "region": "my_region", + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "shortName": "my_shortName", + * // "type": "my_type", + * // "userDefinedFields": [] + * // } + * }, * }); * console.log(res.data); * @@ -181523,6 +202187,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -181559,32 +202224,32 @@ export namespace compute_v1 { * @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$Regionnotificationendpoints$Delete, + insert( + params: Params$Resource$Regionsecuritypolicies$Insert, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Regionnotificationendpoints$Delete, + insert( + params?: Params$Resource$Regionsecuritypolicies$Insert, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Regionnotificationendpoints$Delete, + insert( + params: Params$Resource$Regionsecuritypolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regionnotificationendpoints$Delete, + insert( + params: Params$Resource$Regionsecuritypolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regionnotificationendpoints$Delete, + insert( + params: Params$Resource$Regionsecuritypolicies$Insert, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regionnotificationendpoints$Delete + | Params$Resource$Regionsecuritypolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -181600,12 +202265,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnotificationendpoints$Delete; + {}) as Params$Resource$Regionsecuritypolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnotificationendpoints$Delete; + params = {} as Params$Resource$Regionsecuritypolicies$Insert; options = {}; } @@ -181620,16 +202285,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}' + '/compute/v1/projects/{project}/regions/{region}/securityPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'notificationEndpoint'], - pathParams: ['notificationEndpoint', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -181643,7 +202308,8 @@ export namespace compute_v1 { } /** - * Returns the specified NotificationEndpoint resource in the given region. + * List all the policies that have been configured for the specified project + * and region. * @example * ```js * // Before running the sample: @@ -181676,27 +202342,110 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNotificationEndpoints.get({ - * // Name of the NotificationEndpoint resource to return. - * notificationEndpoint: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionSecurityPolicies.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "grpcSettings": {}, * // "id": "my_id", + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "region": "my_region", - * // "selfLink": "my_selfLink" + * // "nextPageToken": "my_nextPageToken", + * // "warning": {} * // } * } * @@ -181712,55 +202461,53 @@ export namespace compute_v1 { * @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$Regionnotificationendpoints$Get, + list( + params: Params$Resource$Regionsecuritypolicies$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Regionnotificationendpoints$Get, + list( + params?: Params$Resource$Regionsecuritypolicies$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Regionnotificationendpoints$Get, + ): Promise>; + list( + params: Params$Resource$Regionsecuritypolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regionnotificationendpoints$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionsecuritypolicies$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regionnotificationendpoints$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionsecuritypolicies$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Regionnotificationendpoints$Get - | BodyResponseCallback + | Params$Resource$Regionsecuritypolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnotificationendpoints$Get; + {}) as Params$Resource$Regionsecuritypolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnotificationendpoints$Get; + params = {} as Params$Resource$Regionsecuritypolicies$List; options = {}; } @@ -181775,7 +202522,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}' + '/compute/v1/projects/{project}/regions/{region}/securityPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -181783,23 +202530,26 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'notificationEndpoint'], - pathParams: ['notificationEndpoint', 'project', 'region'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Create a NotificationEndpoint in the specified project in the given region - * using the parameters that are included in the request. + * Patches the specified policy with the data included in the request. To + * clear fields in the policy, leave the fields empty and specify them in the + * updateMask. This cannot be used to be update the rules in the policy. + * Please use the per rule methods like addRule, patchRule, and removeRule + * instead. * @example * ```js * // Before running the sample: @@ -181831,7 +202581,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNotificationEndpoints.insert({ + * const res = await compute.regionSecurityPolicies.patch({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -181851,19 +202601,35 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Name of the security policy to update. + * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Indicates fields to be cleared as part of this request. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "adaptiveProtectionConfig": {}, + * // "advancedOptionsConfig": {}, + * // "associations": [], * // "creationTimestamp": "my_creationTimestamp", + * // "ddosProtectionConfig": {}, * // "description": "my_description", - * // "grpcSettings": {}, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, * // "name": "my_name", + * // "parent": "my_parent", + * // "recaptchaOptionsConfig": {}, * // "region": "my_region", - * // "selfLink": "my_selfLink" + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "shortName": "my_shortName", + * // "type": "my_type", + * // "userDefinedFields": [] * // } * }, * }); @@ -181876,6 +202642,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -181912,32 +202679,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regionnotificationendpoints$Insert, + patch( + params: Params$Resource$Regionsecuritypolicies$Patch, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regionnotificationendpoints$Insert, + patch( + params?: Params$Resource$Regionsecuritypolicies$Patch, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Regionnotificationendpoints$Insert, + patch( + params: Params$Resource$Regionsecuritypolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionnotificationendpoints$Insert, + patch( + params: Params$Resource$Regionsecuritypolicies$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionnotificationendpoints$Insert, + patch( + params: Params$Resource$Regionsecuritypolicies$Patch, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Regionnotificationendpoints$Insert + | Params$Resource$Regionsecuritypolicies$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -181953,12 +202720,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnotificationendpoints$Insert; + {}) as Params$Resource$Regionsecuritypolicies$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnotificationendpoints$Insert; + params = {} as Params$Resource$Regionsecuritypolicies$Patch; options = {}; } @@ -181973,16 +202740,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/notificationEndpoints' + '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'securityPolicy'], + pathParams: ['project', 'region', 'securityPolicy'], context: this.context, }; if (callback) { @@ -181996,7 +202763,8 @@ export namespace compute_v1 { } /** - * Lists the NotificationEndpoints for a project in the given region. + * Patches a rule at the specified priority. To clear fields in the rule, + * leave the fields empty and specify them in the updateMask. * @example * ```js * // Before running the sample: @@ -182020,7 +202788,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -182029,111 +202796,70 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNotificationEndpoints.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionSecurityPolicies.patchRule({ + * // The priority of the rule to patch. + * priority: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // Name of the security policy to update. + * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Indicates fields to be cleared as part of this request. + * updateMask: 'placeholder-value', + * // If true, the request will not be committed. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "headerAction": {}, + * // "kind": "my_kind", + * // "match": {}, + * // "networkMatch": {}, + * // "preconfiguredWafConfig": {}, + * // "preview": false, + * // "priority": 0, + * // "rateLimitOptions": {}, + * // "redirectOptions": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -182149,55 +202875,226 @@ export namespace compute_v1 { * @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$Regionnotificationendpoints$List, + patchRule( + params: Params$Resource$Regionsecuritypolicies$Patchrule, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regionnotificationendpoints$List, + patchRule( + params?: Params$Resource$Regionsecuritypolicies$Patchrule, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regionnotificationendpoints$List, + ): Promise>; + patchRule( + params: Params$Resource$Regionsecuritypolicies$Patchrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionnotificationendpoints$List, - options: + patchRule( + params: Params$Resource$Regionsecuritypolicies$Patchrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patchRule( + params: Params$Resource$Regionsecuritypolicies$Patchrule, + callback: BodyResponseCallback + ): void; + patchRule(callback: BodyResponseCallback): void; + patchRule( + paramsOrCallback?: + | Params$Resource$Regionsecuritypolicies$Patchrule + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionsecuritypolicies$Patchrule; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionsecuritypolicies$Patchrule; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/patchRule' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'securityPolicy'], + pathParams: ['project', 'region', 'securityPolicy'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a rule at the specified priority. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionSecurityPolicies.removeRule({ + * // The priority of the rule to remove from the security policy. + * priority: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the security policy to update. + * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + removeRule( + params: Params$Resource$Regionsecuritypolicies$Removerule, + options: StreamMethodOptions + ): Promise>; + removeRule( + params?: Params$Resource$Regionsecuritypolicies$Removerule, + options?: MethodOptions + ): Promise>; + removeRule( + params: Params$Resource$Regionsecuritypolicies$Removerule, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionnotificationendpoints$List, - callback: BodyResponseCallback + removeRule( + params: Params$Resource$Regionsecuritypolicies$Removerule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + removeRule( + params: Params$Resource$Regionsecuritypolicies$Removerule, + callback: BodyResponseCallback + ): void; + removeRule(callback: BodyResponseCallback): void; + removeRule( paramsOrCallback?: - | Params$Resource$Regionnotificationendpoints$List - | BodyResponseCallback + | Params$Resource$Regionsecuritypolicies$Removerule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnotificationendpoints$List; + {}) as Params$Resource$Regionsecuritypolicies$Removerule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionnotificationendpoints$List; + params = {} as Params$Resource$Regionsecuritypolicies$Removerule; options = {}; } @@ -182212,30 +203109,32 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/notificationEndpoints' + '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/removeRule' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'securityPolicy'], + pathParams: ['project', 'region', 'securityPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Sets the labels on a security policy. To learn more about labels, + * read the Labeling Resources + * documentation. * @example * ```js * // Before running the sample: @@ -182259,7 +203158,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -182268,12 +203166,26 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionNotificationEndpoints.testIamPermissions({ + * const res = await compute.regionSecurityPolicies.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. + * // The region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', * // Name or id of the resource for this request. * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * @@ -182281,7 +203193,8 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} * // } * }, * }); @@ -182289,7 +203202,33 @@ export namespace compute_v1 { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -182305,58 +203244,53 @@ export namespace compute_v1 { * @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$Regionnotificationendpoints$Testiampermissions, + setLabels( + params: Params$Resource$Regionsecuritypolicies$Setlabels, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Regionnotificationendpoints$Testiampermissions, + setLabels( + params?: Params$Resource$Regionsecuritypolicies$Setlabels, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Regionnotificationendpoints$Testiampermissions, + ): Promise>; + setLabels( + params: Params$Resource$Regionsecuritypolicies$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Regionnotificationendpoints$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Regionnotificationendpoints$Testiampermissions, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Regionsecuritypolicies$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Regionsecuritypolicies$Setlabels, + callback: BodyResponseCallback ): void; - testIamPermissions( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Regionnotificationendpoints$Testiampermissions - | BodyResponseCallback + | Params$Resource$Regionsecuritypolicies$Setlabels + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionnotificationendpoints$Testiampermissions; + {}) as Params$Resource$Regionsecuritypolicies$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regionnotificationendpoints$Testiampermissions; + params = {} as Params$Resource$Regionsecuritypolicies$Setlabels; options = {}; } @@ -182371,7 +203305,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/notificationEndpoints/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -182384,21 +203318,40 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Regionnotificationendpoints$Delete extends StandardParameters { + export interface Params$Resource$Regionsecuritypolicies$Addrule extends StandardParameters { /** - * Name of the NotificationEndpoint resource to delete. + * Project ID for this request. */ - notificationEndpoint?: string; + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + /** + * If true, the request will not be committed. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicyRule; + } + export interface Params$Resource$Regionsecuritypolicies$Delete extends StandardParameters { /** * Project ID for this request. */ @@ -182423,12 +203376,30 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * Name of the security policy to delete. + */ + securityPolicy?: string; } - export interface Params$Resource$Regionnotificationendpoints$Get extends StandardParameters { + export interface Params$Resource$Regionsecuritypolicies$Get extends StandardParameters { /** - * Name of the NotificationEndpoint resource to return. + * Project ID for this request. */ - notificationEndpoint?: string; + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Name of the security policy to get. + */ + securityPolicy?: string; + } + export interface Params$Resource$Regionsecuritypolicies$Getrule extends StandardParameters { + /** + * The priority of the rule to get from the security policy. + */ + priority?: number; /** * Project ID for this request. */ @@ -182437,8 +203408,12 @@ export namespace compute_v1 { * Name of the region scoping this request. */ region?: string; + /** + * Name of the security policy to which the queried rule belongs. + */ + securityPolicy?: string; } - export interface Params$Resource$Regionnotificationendpoints$Insert extends StandardParameters { + export interface Params$Resource$Regionsecuritypolicies$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -182463,13 +203438,17 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * If true, the request will not be committed. + */ + validateOnly?: boolean; /** * Request body metadata */ - requestBody?: Schema$NotificationEndpoint; + requestBody?: Schema$SecurityPolicy; } - export interface Params$Resource$Regionnotificationendpoints$List extends StandardParameters { + export interface Params$Resource$Regionsecuritypolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -182577,15 +203556,119 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Regionnotificationendpoints$Testiampermissions extends StandardParameters { + export interface Params$Resource$Regionsecuritypolicies$Patch extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * The name of the region for this request. + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + /** + * Indicates fields to be cleared as part of this request. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicy; + } + export interface Params$Resource$Regionsecuritypolicies$Patchrule extends StandardParameters { + /** + * The priority of the rule to patch. + */ + priority?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. */ region?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + /** + * Indicates fields to be cleared as part of this request. + */ + updateMask?: string; + /** + * If true, the request will not be committed. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicyRule; + } + export interface Params$Resource$Regionsecuritypolicies$Removerule extends StandardParameters { + /** + * The priority of the rule to remove from the security policy. + */ + priority?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + } + export interface Params$Resource$Regionsecuritypolicies$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The region for this request. + */ + region?: string; + /** + * 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. + * + * 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; /** * Name or id of the resource for this request. */ @@ -182594,17 +203677,24 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$RegionSetLabelsRequest; } - export class Resource$Regionoperations { + export class Resource$Regionsnapshots { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified region-specific Operations resource. + * Deletes the specified Snapshot resource. Keep in mind that deleting + * a single snapshot might not necessarily delete all the data on that + * snapshot. If any data on the snapshot that is marked for deletion is + * needed for subsequent snapshots, the data will be moved to the next + * corresponding snapshot. + * + * For more information, seeDeleting + * snapshots. * @example * ```js * // Before running the sample: @@ -182636,17 +203726,61 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionOperations.delete({ - * // Name of the Operations resource to delete, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionSnapshots.delete({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the snapshot resource to delete. + * snapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } * } * * main().catch(e => { @@ -182662,50 +203796,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Regionoperations$Delete, + params: Params$Resource$Regionsnapshots$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Regionoperations$Delete, + params?: Params$Resource$Regionsnapshots$Delete, options?: MethodOptions - ): Promise>; + ): Promise>; delete( - params: Params$Resource$Regionoperations$Delete, + params: Params$Resource$Regionsnapshots$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regionoperations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regionsnapshots$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regionoperations$Delete, - callback: BodyResponseCallback + params: Params$Resource$Regionsnapshots$Delete, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; + delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Regionoperations$Delete - | BodyResponseCallback + | Params$Resource$Regionsnapshots$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback + callback?: + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionoperations$Delete; + {}) as Params$Resource$Regionsnapshots$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionoperations$Delete; + params = {} as Params$Resource$Regionsnapshots$Delete; options = {}; } @@ -182720,7 +203856,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/operations/{operation}' + '/compute/v1/projects/{project}/regions/{region}/snapshots/{snapshot}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -182728,22 +203864,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'operation'], - pathParams: ['operation', 'project', 'region'], + requiredParams: ['project', 'region', 'snapshot'], + pathParams: ['project', 'region', 'snapshot'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the specified region-specific Operations resource. + * Returns the specified Snapshot resource. * @example * ```js * // Before running the sample: @@ -182776,46 +203912,60 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionOperations.get({ - * // Name of the Operations resource to return, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionSnapshots.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the Snapshot resource to return. + * snapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "architecture": "my_architecture", + * // "autoCreated": false, + * // "chainName": "my_chainName", + * // "creationSizeBytes": "my_creationSizeBytes", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "diskSizeGb": "my_diskSizeGb", + * // "downloadBytes": "my_downloadBytes", + * // "enableConfidentialCompute": false, + * // "guestFlush": false, + * // "guestOsFeatures": [], * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], + * // "locationHint": "my_locationHint", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "params": {}, * // "region": "my_region", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", + * // "snapshotEncryptionKey": {}, + * // "snapshotGroupId": "my_snapshotGroupId", + * // "snapshotGroupName": "my_snapshotGroupName", + * // "snapshotType": "my_snapshotType", + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskForRecoveryCheckpoint": "my_sourceDiskForRecoveryCheckpoint", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", + * // "sourceInstantSnapshotEncryptionKey": {}, + * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", + * // "sourceSnapshotSchedulePolicy": "my_sourceSnapshotSchedulePolicy", + * // "sourceSnapshotSchedulePolicyId": "my_sourceSnapshotSchedulePolicyId", * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "storageBytes": "my_storageBytes", + * // "storageBytesStatus": "my_storageBytesStatus", + * // "storageLocations": [] * // } * } * @@ -182832,52 +203982,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regionoperations$Get, + params: Params$Resource$Regionsnapshots$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regionoperations$Get, + params?: Params$Resource$Regionsnapshots$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regionoperations$Get, + params: Params$Resource$Regionsnapshots$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionoperations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regionsnapshots$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionoperations$Get, - callback: BodyResponseCallback + params: Params$Resource$Regionsnapshots$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regionoperations$Get - | BodyResponseCallback + | Params$Resource$Regionsnapshots$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionoperations$Get; + {}) as Params$Resource$Regionsnapshots$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionoperations$Get; + params = {} as Params$Resource$Regionsnapshots$Get; options = {}; } @@ -182892,7 +204042,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/operations/{operation}' + '/compute/v1/projects/{project}/regions/{region}/snapshots/{snapshot}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -182900,23 +204050,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'operation'], - pathParams: ['operation', 'project', 'region'], + requiredParams: ['project', 'region', 'snapshot'], + pathParams: ['project', 'region', 'snapshot'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of Operation resources contained within - * the specified region. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -182949,111 +204099,25 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionOperations.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionSnapshots.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -183069,53 +204133,53 @@ export namespace compute_v1 { * @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$Regionoperations$List, + getIamPolicy( + params: Params$Resource$Regionsnapshots$Getiampolicy, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regionoperations$List, + getIamPolicy( + params?: Params$Resource$Regionsnapshots$Getiampolicy, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regionoperations$List, + ): Promise>; + getIamPolicy( + params: Params$Resource$Regionsnapshots$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionoperations$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Regionsnapshots$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionoperations$List, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Regionsnapshots$Getiampolicy, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Regionoperations$List - | BodyResponseCallback + | Params$Resource$Regionsnapshots$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionoperations$List; + {}) as Params$Resource$Regionsnapshots$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionoperations$List; + params = {} as Params$Resource$Regionsnapshots$Getiampolicy; options = {}; } @@ -183130,7 +204194,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/operations' + '/compute/v1/projects/{project}/regions/{region}/snapshots/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -183138,37 +204202,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Waits for the specified Operation resource to return as `DONE` - * or for the request to approach the 2 minute deadline, and retrieves the - * specified Operation resource. This method differs from the - * `GET` method in that it waits for no more than the default - * deadline (2 minutes) and then returns the current state of the operation, - * which might be `DONE` or still in progress. - * - * This method is called on a best-effort basis. Specifically: - * - * - * - In uncommon cases, when the server is overloaded, the request might - * return before the default deadline is reached, or might return after zero - * seconds. - * - If the default deadline is reached, there is no guarantee that the - * operation is actually done when the method returns. Be prepared to retry - * if the operation is not `DONE`. + * Creates a snapshot in the specified region using the data included + * in the request. * @example * ```js * // Before running the sample: @@ -183192,7 +204242,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -183201,15 +204250,74 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionOperations.wait({ - * // Name of the Operations resource to return, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.regionSnapshots.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "architecture": "my_architecture", + * // "autoCreated": false, + * // "chainName": "my_chainName", + * // "creationSizeBytes": "my_creationSizeBytes", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "downloadBytes": "my_downloadBytes", + * // "enableConfidentialCompute": false, + * // "guestFlush": false, + * // "guestOsFeatures": [], + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], + * // "locationHint": "my_locationHint", + * // "name": "my_name", + * // "params": {}, + * // "region": "my_region", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "snapshotEncryptionKey": {}, + * // "snapshotGroupId": "my_snapshotGroupId", + * // "snapshotGroupName": "my_snapshotGroupName", + * // "snapshotType": "my_snapshotType", + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskForRecoveryCheckpoint": "my_sourceDiskForRecoveryCheckpoint", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", + * // "sourceInstantSnapshotEncryptionKey": {}, + * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", + * // "sourceSnapshotSchedulePolicy": "my_sourceSnapshotSchedulePolicy", + * // "sourceSnapshotSchedulePolicyId": "my_sourceSnapshotSchedulePolicyId", + * // "status": "my_status", + * // "storageBytes": "my_storageBytes", + * // "storageBytesStatus": "my_storageBytesStatus", + * // "storageLocations": [] + * // } + * }, * }); * console.log(res.data); * @@ -183220,6 +204328,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -183256,32 +204365,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - wait( - params: Params$Resource$Regionoperations$Wait, + insert( + params: Params$Resource$Regionsnapshots$Insert, options: StreamMethodOptions ): Promise>; - wait( - params?: Params$Resource$Regionoperations$Wait, + insert( + params?: Params$Resource$Regionsnapshots$Insert, options?: MethodOptions ): Promise>; - wait( - params: Params$Resource$Regionoperations$Wait, + insert( + params: Params$Resource$Regionsnapshots$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Regionoperations$Wait, + insert( + params: Params$Resource$Regionsnapshots$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Regionoperations$Wait, + insert( + params: Params$Resource$Regionsnapshots$Insert, callback: BodyResponseCallback ): void; - wait(callback: BodyResponseCallback): void; - wait( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regionoperations$Wait + | Params$Resource$Regionsnapshots$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -183297,12 +204406,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionoperations$Wait; + {}) as Params$Resource$Regionsnapshots$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionoperations$Wait; + params = {} as Params$Resource$Regionsnapshots$Insert; options = {}; } @@ -183317,7 +204426,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/operations/{operation}/wait' + '/compute/v1/projects/{project}/regions/{region}/snapshots' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -183325,371 +204434,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'operation'], - pathParams: ['operation', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Regionoperations$Delete extends StandardParameters { - /** - * Name of the Operations resource to delete, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - } - export interface Params$Resource$Regionoperations$Get extends StandardParameters { - /** - * Name of the Operations resource to return, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - } - export interface Params$Resource$Regionoperations$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Regionoperations$Wait extends StandardParameters { - /** - * Name of the Operations resource to return, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - } - - export class Resource$Regions { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Returns the specified Region resource. - * - * To decrease latency for this method, you can optionally omit any unneeded - * information from the response by using a field mask. This practice is - * especially recommended for unused quota information (the `quotas` field). - * To exclude one or more fields, set your request's `fields` query parameter - * to only include the fields you need. For example, to only include the `id` - * and `selfLink` fields, add the query parameter `?fields=id,selfLink` to - * your request. - * - * This method fails if the quota information is unavailable for the region - * and if the organization policy constraint - * compute.requireBasicQuotaInResponse is enforced. This - * constraint, when enforced, disables the fail-open behaviour when quota - * information (the `items.quotas` field) is unavailable for the region. - * It is recommended to use the default setting - * for the constraint unless your application requires the fail-closed - * behaviour for this method. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.regions.get({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region resource to return. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, - * // "description": "my_description", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "quotaStatusWarning": {}, - * // "quotas": [], - * // "selfLink": "my_selfLink", - * // "status": "my_status", - * // "supportsPzs": false, - * // "zones": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Regions$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Regions$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Regions$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Regions$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Regions$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Regions$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Regions$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Regions$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/compute/v1/projects/{project}/regions/{region}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, requiredParams: ['project', 'region'], pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of region resources available to the specified project. - * - * To decrease latency for this method, you can optionally omit any unneeded - * information from the response by using a field mask. This practice is - * especially recommended for unused quota information - * (the `items.quotas` field). - * To exclude one or more fields, set your request's `fields` query parameter - * to only include the fields you need. For example, to only include the `id` - * and `selfLink` fields, add the query parameter `?fields=id,selfLink` to - * your request. - * - * This method fails if the quota information is unavailable for the region - * and if the organization policy constraint - * compute.requireBasicQuotaInResponse is enforced. This - * constraint, when enforced, disables the fail-open behaviour when quota - * information (the `items.quotas` field) is unavailable for the region. - * It is recommended to use the default setting - * for the constraint unless your application requires the fail-closed - * behaviour for this method. + * Retrieves the list of Snapshot resources contained within + * the specified region. * @example * ```js * // Before running the sample: @@ -183722,7 +204483,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regions.list({ + * const res = await compute.regionSnapshots.list({ * // 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 @@ -183807,6 +204568,8 @@ export namespace compute_v1 { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -183841,51 +204604,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Regions$List, + params: Params$Resource$Regionsnapshots$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Regions$List, + params?: Params$Resource$Regionsnapshots$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Regions$List, + params: Params$Resource$Regionsnapshots$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regions$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regionsnapshots$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regions$List, - callback: BodyResponseCallback + params: Params$Resource$Regionsnapshots$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Regions$List - | BodyResponseCallback + | Params$Resource$Regionsnapshots$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Regions$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Regionsnapshots$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regions$List; + params = {} as Params$Resource$Regionsnapshots$List; options = {}; } @@ -183898,154 +204662,33 @@ export namespace compute_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/compute/v1/projects/{project}/regions').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/snapshots' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Regions$Get extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region resource to return. - */ - region?: string; - } - export interface Params$Resource$Regions$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - - export class Resource$Regionsecuritypolicies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Inserts a rule into a security policy. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -184077,65 +204720,33 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSecurityPolicies.addRule({ + * const res = await compute.regionSnapshots.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the security policy to update. - * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // If true, the request will not be committed. - * validateOnly: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "action": "my_action", - * // "description": "my_description", - * // "headerAction": {}, - * // "kind": "my_kind", - * // "match": {}, - * // "networkMatch": {}, - * // "preconfiguredWafConfig": {}, - * // "preview": false, - * // "priority": 0, - * // "rateLimitOptions": {}, - * // "redirectOptions": {} + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -184151,53 +204762,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addRule( - params: Params$Resource$Regionsecuritypolicies$Addrule, + setIamPolicy( + params: Params$Resource$Regionsnapshots$Setiampolicy, options: StreamMethodOptions ): Promise>; - addRule( - params?: Params$Resource$Regionsecuritypolicies$Addrule, + setIamPolicy( + params?: Params$Resource$Regionsnapshots$Setiampolicy, options?: MethodOptions - ): Promise>; - addRule( - params: Params$Resource$Regionsecuritypolicies$Addrule, + ): Promise>; + setIamPolicy( + params: Params$Resource$Regionsnapshots$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addRule( - params: Params$Resource$Regionsecuritypolicies$Addrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Regionsnapshots$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - addRule( - params: Params$Resource$Regionsecuritypolicies$Addrule, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Regionsnapshots$Setiampolicy, + callback: BodyResponseCallback ): void; - addRule(callback: BodyResponseCallback): void; - addRule( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Regionsecuritypolicies$Addrule - | BodyResponseCallback + | Params$Resource$Regionsnapshots$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsecuritypolicies$Addrule; + {}) as Params$Resource$Regionsnapshots$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsecuritypolicies$Addrule; + params = {} as Params$Resource$Regionsnapshots$Setiampolicy; options = {}; } @@ -184212,7 +204823,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/addRule' + '/compute/v1/projects/{project}/regions/{region}/snapshots/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -184220,22 +204831,24 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'securityPolicy'], - pathParams: ['project', 'region', 'securityPolicy'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specified policy. + * Sets the labels on a regional snapshot. To learn more about labels, read + * the Labeling Resources + * documentation. * @example * ```js * // Before running the sample: @@ -184267,11 +204880,11 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSecurityPolicies.delete({ + * const res = await compute.regionSnapshots.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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 @@ -184287,8 +204900,17 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the security policy to delete. - * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, * }); * console.log(res.data); * @@ -184299,6 +204921,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -184335,32 +204958,32 @@ export namespace compute_v1 { * @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$Regionsecuritypolicies$Delete, + setLabels( + params: Params$Resource$Regionsnapshots$Setlabels, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Regionsecuritypolicies$Delete, + setLabels( + params?: Params$Resource$Regionsnapshots$Setlabels, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Regionsecuritypolicies$Delete, + setLabels( + params: Params$Resource$Regionsnapshots$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regionsecuritypolicies$Delete, + setLabels( + params: Params$Resource$Regionsnapshots$Setlabels, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regionsecuritypolicies$Delete, + setLabels( + params: Params$Resource$Regionsnapshots$Setlabels, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Regionsecuritypolicies$Delete + | Params$Resource$Regionsnapshots$Setlabels | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -184376,12 +204999,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsecuritypolicies$Delete; + {}) as Params$Resource$Regionsnapshots$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsecuritypolicies$Delete; + params = {} as Params$Resource$Regionsnapshots$Setlabels; options = {}; } @@ -184396,16 +205019,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}' + '/compute/v1/projects/{project}/regions/{region}/snapshots/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'securityPolicy'], - pathParams: ['project', 'region', 'securityPolicy'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -184419,7 +205042,7 @@ export namespace compute_v1 { } /** - * List all of the ordered rules present in a single specified policy. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -184452,39 +205075,28 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSecurityPolicies.get({ + * const res = await compute.regionSnapshots.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // The name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the security policy to get. - * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "adaptiveProtectionConfig": {}, - * // "advancedOptionsConfig": {}, - * // "associations": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "ddosProtectionConfig": {}, - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "name": "my_name", - * // "parent": "my_parent", - * // "recaptchaOptionsConfig": {}, - * // "region": "my_region", - * // "rules": [], - * // "selfLink": "my_selfLink", - * // "shortName": "my_shortName", - * // "type": "my_type", - * // "userDefinedFields": [] + * // "permissions": [] * // } * } * @@ -184500,53 +205112,57 @@ export namespace compute_v1 { * @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$Regionsecuritypolicies$Get, + testIamPermissions( + params: Params$Resource$Regionsnapshots$Testiampermissions, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Regionsecuritypolicies$Get, + testIamPermissions( + params?: Params$Resource$Regionsnapshots$Testiampermissions, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Regionsecuritypolicies$Get, + ): Promise>; + testIamPermissions( + params: Params$Resource$Regionsnapshots$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regionsecuritypolicies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regionsnapshots$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regionsecuritypolicies$Get, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Regionsnapshots$Testiampermissions, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Regionsecuritypolicies$Get - | BodyResponseCallback + | Params$Resource$Regionsnapshots$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsecuritypolicies$Get; + {}) as Params$Resource$Regionsnapshots$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsecuritypolicies$Get; + params = {} as Params$Resource$Regionsnapshots$Testiampermissions; options = {}; } @@ -184561,30 +205177,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}' + '/compute/v1/projects/{project}/regions/{region}/snapshots/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'securityPolicy'], - pathParams: ['project', 'region', 'securityPolicy'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a rule at the specified priority. + * Rotates the customer-managed + * encryption key to the latest version for the specified snapshot. * @example * ```js * // Before running the sample: @@ -184608,7 +205225,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -184617,32 +205233,68 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSecurityPolicies.getRule({ - * // The priority of the rule to get from the security policy. - * priority: 'placeholder-value', + * const res = await compute.regionSnapshots.updateKmsKey({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the security policy to which the queried rule belongs. - * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the snapshot resource to update. Should conform to RFC1035. + * snapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "kmsKeyName": "my_kmsKeyName" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "action": "my_action", + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "headerAction": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "match": {}, - * // "networkMatch": {}, - * // "preconfiguredWafConfig": {}, - * // "preview": false, - * // "priority": 0, - * // "rateLimitOptions": {}, - * // "redirectOptions": {} + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -184658,53 +205310,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getRule( - params: Params$Resource$Regionsecuritypolicies$Getrule, + updateKmsKey( + params: Params$Resource$Regionsnapshots$Updatekmskey, options: StreamMethodOptions ): Promise>; - getRule( - params?: Params$Resource$Regionsecuritypolicies$Getrule, + updateKmsKey( + params?: Params$Resource$Regionsnapshots$Updatekmskey, options?: MethodOptions - ): Promise>; - getRule( - params: Params$Resource$Regionsecuritypolicies$Getrule, + ): Promise>; + updateKmsKey( + params: Params$Resource$Regionsnapshots$Updatekmskey, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getRule( - params: Params$Resource$Regionsecuritypolicies$Getrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + updateKmsKey( + params: Params$Resource$Regionsnapshots$Updatekmskey, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getRule( - params: Params$Resource$Regionsecuritypolicies$Getrule, - callback: BodyResponseCallback + updateKmsKey( + params: Params$Resource$Regionsnapshots$Updatekmskey, + callback: BodyResponseCallback ): void; - getRule(callback: BodyResponseCallback): void; - getRule( + updateKmsKey(callback: BodyResponseCallback): void; + updateKmsKey( paramsOrCallback?: - | Params$Resource$Regionsecuritypolicies$Getrule - | BodyResponseCallback + | Params$Resource$Regionsnapshots$Updatekmskey + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsecuritypolicies$Getrule; + {}) as Params$Resource$Regionsnapshots$Updatekmskey; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsecuritypolicies$Getrule; + params = {} as Params$Resource$Regionsnapshots$Updatekmskey; options = {}; } @@ -184719,31 +205371,347 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/getRule' + '/compute/v1/projects/{project}/regions/{region}/snapshots/{snapshot}/updateKmsKey' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'securityPolicy'], - pathParams: ['project', 'region', 'securityPolicy'], + requiredParams: ['project', 'region', 'snapshot'], + pathParams: ['project', 'region', 'snapshot'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Regionsnapshots$Delete extends StandardParameters { /** - * Creates a new policy in the specified project using the data included in - * the request. + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * Name of the snapshot resource to delete. + */ + snapshot?: string; + } + export interface Params$Resource$Regionsnapshots$Get extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * Name of the Snapshot resource to return. + */ + snapshot?: string; + } + export interface Params$Resource$Regionsnapshots$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Regionsnapshots$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$Snapshot; + } + export interface Params$Resource$Regionsnapshots$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regionsnapshots$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionSetPolicyRequest; + } + export interface Params$Resource$Regionsnapshots$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionSetLabelsRequest; + } + export interface Params$Resource$Regionsnapshots$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Regionsnapshots$Updatekmskey extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * Name of the snapshot resource to update. Should conform to RFC1035. + */ + snapshot?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionSnapshotUpdateKmsKeyRequest; + } + + export class Resource$Regionsnapshotsettings { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Get region snapshot settings. * @example * ```js * // Before running the sample: @@ -184767,6 +205735,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -184775,86 +205744,19 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSecurityPolicies.insert({ + * const res = await compute.regionSnapshotSettings.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * // If true, the request will not be committed. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "adaptiveProtectionConfig": {}, - * // "advancedOptionsConfig": {}, - * // "associations": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "ddosProtectionConfig": {}, - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "name": "my_name", - * // "parent": "my_parent", - * // "recaptchaOptionsConfig": {}, - * // "region": "my_region", - * // "rules": [], - * // "selfLink": "my_selfLink", - * // "shortName": "my_shortName", - * // "type": "my_type", - * // "userDefinedFields": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "accessLocation": {}, + * // "storageLocation": {} * // } * } * @@ -184870,53 +205772,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regionsecuritypolicies$Insert, + get( + params: Params$Resource$Regionsnapshotsettings$Get, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regionsecuritypolicies$Insert, + get( + params?: Params$Resource$Regionsnapshotsettings$Get, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Regionsecuritypolicies$Insert, + ): Promise>; + get( + params: Params$Resource$Regionsnapshotsettings$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionsecuritypolicies$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Regionsnapshotsettings$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionsecuritypolicies$Insert, - callback: BodyResponseCallback + get( + params: Params$Resource$Regionsnapshotsettings$Get, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Regionsecuritypolicies$Insert - | BodyResponseCallback + | Params$Resource$Regionsnapshotsettings$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsecuritypolicies$Insert; + {}) as Params$Resource$Regionsnapshotsettings$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsecuritypolicies$Insert; + params = {} as Params$Resource$Regionsnapshotsettings$Get; options = {}; } @@ -184931,9 +205833,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/securityPolicies' + '/compute/v1/projects/{project}/regions/{region}/snapshotSettings' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -184944,18 +205846,17 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * List all the policies that have been configured for the specified project - * and region. + * Patch region snapshot settings. * @example * ```js * // Before running the sample: @@ -184979,7 +205880,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -184988,110 +205888,69 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSecurityPolicies.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionSnapshotSettings.patch({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Name of the region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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: 'placeholder-value', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessLocation": {}, + * // "storageLocation": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "warning": {} + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -185107,53 +205966,53 @@ export namespace compute_v1 { * @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$Regionsecuritypolicies$List, + patch( + params: Params$Resource$Regionsnapshotsettings$Patch, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regionsecuritypolicies$List, + patch( + params?: Params$Resource$Regionsnapshotsettings$Patch, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regionsecuritypolicies$List, + ): Promise>; + patch( + params: Params$Resource$Regionsnapshotsettings$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionsecuritypolicies$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Regionsnapshotsettings$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionsecuritypolicies$List, - callback: BodyResponseCallback + patch( + params: Params$Resource$Regionsnapshotsettings$Patch, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Regionsecuritypolicies$List - | BodyResponseCallback + | Params$Resource$Regionsnapshotsettings$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsecuritypolicies$List; + {}) as Params$Resource$Regionsnapshotsettings$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsecuritypolicies$List; + params = {} as Params$Resource$Regionsnapshotsettings$Patch; options = {}; } @@ -185168,9 +206027,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/securityPolicies' + '/compute/v1/projects/{project}/regions/{region}/snapshotSettings' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options @@ -185181,21 +206040,70 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Regionsnapshotsettings$Get extends StandardParameters { /** - * Patches the specified policy with the data included in the request. To - * clear fields in the policy, leave the fields empty and specify them in the - * updateMask. This cannot be used to be update the rules in the policy. - * Please use the per rule methods like addRule, patchRule, and removeRule - * instead. + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + } + export interface Params$Resource$Regionsnapshotsettings$Patch extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SnapshotSettings; + } + + export class Resource$Regionsslcertificates { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified SslCertificate resource in the region. * @example * ```js * // Before running the sample: @@ -185221,64 +206129,35 @@ export namespace compute_v1 { * 'https://www.googleapis.com/auth/compute', * ], * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.regionSecurityPolicies.patch({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Indicates fields to be cleared as part of this request. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "adaptiveProtectionConfig": {}, - * // "advancedOptionsConfig": {}, - * // "associations": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "ddosProtectionConfig": {}, - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "name": "my_name", - * // "parent": "my_parent", - * // "recaptchaOptionsConfig": {}, - * // "region": "my_region", - * // "rules": [], - * // "selfLink": "my_selfLink", - * // "shortName": "my_shortName", - * // "type": "my_type", - * // "userDefinedFields": [] - * // } - * }, - * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionSslCertificates.delete({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the SslCertificate resource to delete. + * sslCertificate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); * console.log(res.data); * * // Example response @@ -185288,6 +206167,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -185324,32 +206204,32 @@ export namespace compute_v1 { * @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$Regionsecuritypolicies$Patch, + delete( + params: Params$Resource$Regionsslcertificates$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Regionsecuritypolicies$Patch, + delete( + params?: Params$Resource$Regionsslcertificates$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Regionsecuritypolicies$Patch, + delete( + params: Params$Resource$Regionsslcertificates$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionsecuritypolicies$Patch, + delete( + params: Params$Resource$Regionsslcertificates$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionsecuritypolicies$Patch, + delete( + params: Params$Resource$Regionsslcertificates$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Regionsecuritypolicies$Patch + | Params$Resource$Regionsslcertificates$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -185365,12 +206245,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsecuritypolicies$Patch; + {}) as Params$Resource$Regionsslcertificates$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsecuritypolicies$Patch; + params = {} as Params$Resource$Regionsslcertificates$Delete; options = {}; } @@ -185385,16 +206265,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}' + '/compute/v1/projects/{project}/regions/{region}/sslCertificates/{sslCertificate}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'securityPolicy'], - pathParams: ['project', 'region', 'securityPolicy'], + requiredParams: ['project', 'region', 'sslCertificate'], + pathParams: ['project', 'region', 'sslCertificate'], context: this.context, }; if (callback) { @@ -185408,8 +206288,9 @@ export namespace compute_v1 { } /** - * Patches a rule at the specified priority. To clear fields in the rule, - * leave the fields empty and specify them in the updateMask. + * Returns the specified SslCertificate resource in the specified region. Get + * a list of available SSL certificates by making a list() + * request. * @example * ```js * // Before running the sample: @@ -185433,6 +206314,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -185441,69 +206323,33 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSecurityPolicies.patchRule({ - * // The priority of the rule to patch. - * priority: 'placeholder-value', + * const res = await compute.regionSslCertificates.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the security policy to update. - * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Indicates fields to be cleared as part of this request. - * updateMask: 'placeholder-value', - * // If true, the request will not be committed. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "description": "my_description", - * // "headerAction": {}, - * // "kind": "my_kind", - * // "match": {}, - * // "networkMatch": {}, - * // "preconfiguredWafConfig": {}, - * // "preview": false, - * // "priority": 0, - * // "rateLimitOptions": {}, - * // "redirectOptions": {} - * // } - * }, + * // Name of the SslCertificate resource to return. + * sslCertificate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "certificate": "my_certificate", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "expireTime": "my_expireTime", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", + * // "managed": {}, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "privateKey": "my_privateKey", * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "selfManaged": {}, + * // "subjectAlternativeNames": [], + * // "type": "my_type" * // } * } * @@ -185519,53 +206365,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchRule( - params: Params$Resource$Regionsecuritypolicies$Patchrule, + get( + params: Params$Resource$Regionsslcertificates$Get, options: StreamMethodOptions ): Promise>; - patchRule( - params?: Params$Resource$Regionsecuritypolicies$Patchrule, + get( + params?: Params$Resource$Regionsslcertificates$Get, options?: MethodOptions - ): Promise>; - patchRule( - params: Params$Resource$Regionsecuritypolicies$Patchrule, + ): Promise>; + get( + params: Params$Resource$Regionsslcertificates$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchRule( - params: Params$Resource$Regionsecuritypolicies$Patchrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Regionsslcertificates$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patchRule( - params: Params$Resource$Regionsecuritypolicies$Patchrule, - callback: BodyResponseCallback + get( + params: Params$Resource$Regionsslcertificates$Get, + callback: BodyResponseCallback ): void; - patchRule(callback: BodyResponseCallback): void; - patchRule( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Regionsecuritypolicies$Patchrule - | BodyResponseCallback + | Params$Resource$Regionsslcertificates$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsecuritypolicies$Patchrule; + {}) as Params$Resource$Regionsslcertificates$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsecuritypolicies$Patchrule; + params = {} as Params$Resource$Regionsslcertificates$Get; options = {}; } @@ -185580,30 +206426,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/patchRule' + '/compute/v1/projects/{project}/regions/{region}/sslCertificates/{sslCertificate}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'securityPolicy'], - pathParams: ['project', 'region', 'securityPolicy'], + requiredParams: ['project', 'region', 'sslCertificate'], + pathParams: ['project', 'region', 'sslCertificate'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a rule at the specified priority. + * Creates a SslCertificate resource in the specified project and region using + * the data included in the request * @example * ```js * // Before running the sample: @@ -185635,16 +206482,47 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSecurityPolicies.removeRule({ - * // The priority of the rule to remove from the security policy. - * priority: 'placeholder-value', + * const res = await compute.regionSslCertificates.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the security policy to update. - * securityPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "certificate": "my_certificate", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "expireTime": "my_expireTime", + * // "id": "my_id", + * // "kind": "my_kind", + * // "managed": {}, + * // "name": "my_name", + * // "privateKey": "my_privateKey", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfManaged": {}, + * // "subjectAlternativeNames": [], + * // "type": "my_type" + * // } + * }, * }); * console.log(res.data); * @@ -185655,6 +206533,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -185691,32 +206570,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeRule( - params: Params$Resource$Regionsecuritypolicies$Removerule, + insert( + params: Params$Resource$Regionsslcertificates$Insert, options: StreamMethodOptions ): Promise>; - removeRule( - params?: Params$Resource$Regionsecuritypolicies$Removerule, + insert( + params?: Params$Resource$Regionsslcertificates$Insert, options?: MethodOptions ): Promise>; - removeRule( - params: Params$Resource$Regionsecuritypolicies$Removerule, + insert( + params: Params$Resource$Regionsslcertificates$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeRule( - params: Params$Resource$Regionsecuritypolicies$Removerule, + insert( + params: Params$Resource$Regionsslcertificates$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeRule( - params: Params$Resource$Regionsecuritypolicies$Removerule, + insert( + params: Params$Resource$Regionsslcertificates$Insert, callback: BodyResponseCallback ): void; - removeRule(callback: BodyResponseCallback): void; - removeRule( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regionsecuritypolicies$Removerule + | Params$Resource$Regionsslcertificates$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -185732,12 +206611,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsecuritypolicies$Removerule; + {}) as Params$Resource$Regionsslcertificates$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsecuritypolicies$Removerule; + params = {} as Params$Resource$Regionsslcertificates$Insert; options = {}; } @@ -185752,7 +206631,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{securityPolicy}/removeRule' + '/compute/v1/projects/{project}/regions/{region}/sslCertificates' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -185760,8 +206639,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'securityPolicy'], - pathParams: ['project', 'region', 'securityPolicy'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -185775,9 +206654,8 @@ export namespace compute_v1 { } /** - * Sets the labels on a security policy. To learn more about labels, - * read the Labeling Resources - * documentation. + * Retrieves the list of SslCertificate resources available to the specified + * project in the specified region. * @example * ```js * // Before running the sample: @@ -185801,6 +206679,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -185809,68 +206688,111 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSecurityPolicies.setLabels({ + * const res = await compute.regionSslCertificates.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -185886,53 +206808,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Regionsecuritypolicies$Setlabels, + list( + params: Params$Resource$Regionsslcertificates$List, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Regionsecuritypolicies$Setlabels, + list( + params?: Params$Resource$Regionsslcertificates$List, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Regionsecuritypolicies$Setlabels, + ): Promise>; + list( + params: Params$Resource$Regionsslcertificates$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Regionsecuritypolicies$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionsslcertificates$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Regionsecuritypolicies$Setlabels, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionsslcertificates$List, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Regionsecuritypolicies$Setlabels - | BodyResponseCallback + | Params$Resource$Regionsslcertificates$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsecuritypolicies$Setlabels; + {}) as Params$Resource$Regionsslcertificates$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsecuritypolicies$Setlabels; + params = {} as Params$Resource$Regionsslcertificates$List; options = {}; } @@ -185947,53 +206869,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/securityPolicies/{resource}/setLabels' + '/compute/v1/projects/{project}/regions/{region}/sslCertificates' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Regionsecuritypolicies$Addrule extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; - /** - * If true, the request will not be committed. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$SecurityPolicyRule; - } - export interface Params$Resource$Regionsecuritypolicies$Delete extends StandardParameters { + export interface Params$Resource$Regionsslcertificates$Delete extends StandardParameters { /** * Project ID for this request. */ @@ -186019,29 +206918,11 @@ export namespace compute_v1 { */ requestId?: string; /** - * Name of the security policy to delete. - */ - securityPolicy?: string; - } - export interface Params$Resource$Regionsecuritypolicies$Get extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * Name of the security policy to get. + * Name of the SslCertificate resource to delete. */ - securityPolicy?: string; + sslCertificate?: string; } - export interface Params$Resource$Regionsecuritypolicies$Getrule extends StandardParameters { - /** - * The priority of the rule to get from the security policy. - */ - priority?: number; + export interface Params$Resource$Regionsslcertificates$Get extends StandardParameters { /** * Project ID for this request. */ @@ -186051,11 +206932,11 @@ export namespace compute_v1 { */ region?: string; /** - * Name of the security policy to which the queried rule belongs. + * Name of the SslCertificate resource to return. */ - securityPolicy?: string; + sslCertificate?: string; } - export interface Params$Resource$Regionsecuritypolicies$Insert extends StandardParameters { + export interface Params$Resource$Regionsslcertificates$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -186080,17 +206961,13 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * If true, the request will not be committed. - */ - validateOnly?: boolean; /** * Request body metadata */ - requestBody?: Schema$SecurityPolicy; + requestBody?: Schema$SslCertificate; } - export interface Params$Resource$Regionsecuritypolicies$List extends StandardParameters { + export interface Params$Resource$Regionsslcertificates$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -186198,138 +207075,17 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Regionsecuritypolicies$Patch extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; - /** - * Indicates fields to be cleared as part of this request. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$SecurityPolicy; - } - export interface Params$Resource$Regionsecuritypolicies$Patchrule extends StandardParameters { - /** - * The priority of the rule to patch. - */ - priority?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; - /** - * Indicates fields to be cleared as part of this request. - */ - updateMask?: string; - /** - * If true, the request will not be committed. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$SecurityPolicyRule; - } - export interface Params$Resource$Regionsecuritypolicies$Removerule extends StandardParameters { - /** - * The priority of the rule to remove from the security policy. - */ - priority?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; - } - export interface Params$Resource$Regionsecuritypolicies$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The region for this request. - */ - region?: string; - /** - * 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. - * - * 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; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionSetLabelsRequest; - } - export class Resource$Regionsslcertificates { + export class Resource$Regionsslpolicies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified SslCertificate resource in the region. + * Deletes the specified SSL policy. The SSL policy resource can be deleted + * only if it is not in use by any TargetHttpsProxy or TargetSslProxy + * resources. * @example * ```js * // Before running the sample: @@ -186361,7 +207117,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSslCertificates.delete({ + * const res = await compute.regionSslPolicies.delete({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -186381,8 +207137,9 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the SslCertificate resource to delete. - * sslCertificate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the SSL policy to delete. The name must be 1-63 characters long, + * // and comply with RFC1035. + * sslPolicy: 'placeholder-value', * }); * console.log(res.data); * @@ -186393,6 +207150,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -186430,31 +207188,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Regionsslcertificates$Delete, + params: Params$Resource$Regionsslpolicies$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Regionsslcertificates$Delete, + params?: Params$Resource$Regionsslpolicies$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Regionsslcertificates$Delete, + params: Params$Resource$Regionsslpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regionsslcertificates$Delete, + params: Params$Resource$Regionsslpolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regionsslcertificates$Delete, + params: Params$Resource$Regionsslpolicies$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Regionsslcertificates$Delete + | Params$Resource$Regionsslpolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -186470,12 +207228,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsslcertificates$Delete; + {}) as Params$Resource$Regionsslpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsslcertificates$Delete; + params = {} as Params$Resource$Regionsslpolicies$Delete; options = {}; } @@ -186490,7 +207248,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/sslCertificates/{sslCertificate}' + '/compute/v1/projects/{project}/regions/{region}/sslPolicies/{sslPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -186498,8 +207256,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'sslCertificate'], - pathParams: ['project', 'region', 'sslCertificate'], + requiredParams: ['project', 'region', 'sslPolicy'], + pathParams: ['project', 'region', 'sslPolicy'], context: this.context, }; if (callback) { @@ -186513,9 +207271,7 @@ export namespace compute_v1 { } /** - * Returns the specified SslCertificate resource in the specified region. Get - * a list of available SSL certificates by making a list() - * request. + * Lists all of the ordered rules present in a single specified policy. * @example * ```js * // Before running the sample: @@ -186548,33 +207304,34 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSslCertificates.get({ + * const res = await compute.regionSslPolicies.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the SslCertificate resource to return. - * sslCertificate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the SSL policy to update. The name must be 1-63 characters long, + * // and comply with RFC1035. + * sslPolicy: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "certificate": "my_certificate", * // "creationTimestamp": "my_creationTimestamp", + * // "customFeatures": [], * // "description": "my_description", - * // "expireTime": "my_expireTime", + * // "enabledFeatures": [], + * // "fingerprint": "my_fingerprint", * // "id": "my_id", * // "kind": "my_kind", - * // "managed": {}, + * // "minTlsVersion": "my_minTlsVersion", * // "name": "my_name", - * // "privateKey": "my_privateKey", + * // "postQuantumKeyExchange": "my_postQuantumKeyExchange", + * // "profile": "my_profile", * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "selfManaged": {}, - * // "subjectAlternativeNames": [], - * // "type": "my_type" + * // "warnings": [] * // } * } * @@ -186591,52 +207348,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regionsslcertificates$Get, + params: Params$Resource$Regionsslpolicies$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regionsslcertificates$Get, + params?: Params$Resource$Regionsslpolicies$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regionsslcertificates$Get, + params: Params$Resource$Regionsslpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionsslcertificates$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regionsslpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionsslcertificates$Get, - callback: BodyResponseCallback + params: Params$Resource$Regionsslpolicies$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regionsslcertificates$Get - | BodyResponseCallback + | Params$Resource$Regionsslpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsslcertificates$Get; + {}) as Params$Resource$Regionsslpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsslcertificates$Get; + params = {} as Params$Resource$Regionsslpolicies$Get; options = {}; } @@ -186651,7 +207408,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/sslCertificates/{sslCertificate}' + '/compute/v1/projects/{project}/regions/{region}/sslPolicies/{sslPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -186659,23 +207416,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'sslCertificate'], - pathParams: ['project', 'region', 'sslCertificate'], + requiredParams: ['project', 'region', 'sslPolicy'], + pathParams: ['project', 'region', 'sslPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a SslCertificate resource in the specified project and region using - * the data included in the request + * Creates a new policy in the specified project and region using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -186707,78 +207464,317 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSslCertificates.insert({ + * const res = await compute.regionSslPolicies.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "customFeatures": [], + * // "description": "my_description", + * // "enabledFeatures": [], + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "minTlsVersion": "my_minTlsVersion", + * // "name": "my_name", + * // "postQuantumKeyExchange": "my_postQuantumKeyExchange", + * // "profile": "my_profile", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "warnings": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + insert( + params: Params$Resource$Regionsslpolicies$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Regionsslpolicies$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Regionsslpolicies$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regionsslpolicies$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Regionsslpolicies$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Regionsslpolicies$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionsslpolicies$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionsslpolicies$Insert; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/sslPolicies' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists all the SSL policies that have been configured for the specified + * project and region. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionSslPolicies.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "certificate": "my_certificate", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "expireTime": "my_expireTime", - * // "id": "my_id", - * // "kind": "my_kind", - * // "managed": {}, - * // "name": "my_name", - * // "privateKey": "my_privateKey", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfManaged": {}, - * // "subjectAlternativeNames": [], - * // "type": "my_type" - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -186794,53 +207790,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regionsslcertificates$Insert, + list( + params: Params$Resource$Regionsslpolicies$List, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regionsslcertificates$Insert, + list( + params?: Params$Resource$Regionsslpolicies$List, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Regionsslcertificates$Insert, + ): Promise>; + list( + params: Params$Resource$Regionsslpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionsslcertificates$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionsslpolicies$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionsslcertificates$Insert, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionsslpolicies$List, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Regionsslcertificates$Insert - | BodyResponseCallback + | Params$Resource$Regionsslpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsslcertificates$Insert; + {}) as Params$Resource$Regionsslpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsslcertificates$Insert; + params = {} as Params$Resource$Regionsslpolicies$List; options = {}; } @@ -186855,9 +207851,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/sslCertificates' + '/compute/v1/projects/{project}/regions/{region}/sslPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -186868,18 +207864,18 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of SslCertificate resources available to the specified - * project in the specified region. + * Lists all features that can be specified in the SSL policy when using + * custom profile. * @example * ```js * // Before running the sample: @@ -186912,7 +207908,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSslCertificates.list({ + * const res = await compute.regionSslPolicies.listAvailableFeatures({ * // 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 @@ -187011,12 +208007,7 @@ export namespace compute_v1 { * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "features": [] * // } * } * @@ -187032,53 +208023,61 @@ export namespace compute_v1 { * @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$Regionsslcertificates$List, + listAvailableFeatures( + params: Params$Resource$Regionsslpolicies$Listavailablefeatures, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regionsslcertificates$List, + listAvailableFeatures( + params?: Params$Resource$Regionsslpolicies$Listavailablefeatures, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regionsslcertificates$List, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listAvailableFeatures( + params: Params$Resource$Regionsslpolicies$Listavailablefeatures, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionsslcertificates$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listAvailableFeatures( + params: Params$Resource$Regionsslpolicies$Listavailablefeatures, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionsslcertificates$List, - callback: BodyResponseCallback + listAvailableFeatures( + params: Params$Resource$Regionsslpolicies$Listavailablefeatures, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + listAvailableFeatures( + callback: BodyResponseCallback + ): void; + listAvailableFeatures( paramsOrCallback?: - | Params$Resource$Regionsslcertificates$List - | BodyResponseCallback + | Params$Resource$Regionsslpolicies$Listavailablefeatures + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsslcertificates$List; + {}) as Params$Resource$Regionsslpolicies$Listavailablefeatures; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsslcertificates$List; + params = {} as Params$Resource$Regionsslpolicies$Listavailablefeatures; options = {}; } @@ -187093,7 +208092,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/sslCertificates' + '/compute/v1/projects/{project}/regions/{region}/sslPolicies/listAvailableFeatures' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -187106,17 +208105,226 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); + } + } + + /** + * Patches the specified SSL policy with the data included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionSslPolicies.patch({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the SSL policy to update. The name must be 1-63 characters long, + * // and comply with RFC1035. + * sslPolicy: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "customFeatures": [], + * // "description": "my_description", + * // "enabledFeatures": [], + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "minTlsVersion": "my_minTlsVersion", + * // "name": "my_name", + * // "postQuantumKeyExchange": "my_postQuantumKeyExchange", + * // "profile": "my_profile", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "warnings": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regionsslpolicies$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Regionsslpolicies$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Regionsslpolicies$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Regionsslpolicies$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Regionsslpolicies$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Regionsslpolicies$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionsslpolicies$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionsslpolicies$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/sslPolicies/{sslPolicy}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'sslPolicy'], + pathParams: ['project', 'region', 'sslPolicy'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); } } } - export interface Params$Resource$Regionsslcertificates$Delete extends StandardParameters { + export interface Params$Resource$Regionsslpolicies$Delete extends StandardParameters { /** * Project ID for this request. */ @@ -187142,11 +208350,12 @@ export namespace compute_v1 { */ requestId?: string; /** - * Name of the SslCertificate resource to delete. + * Name of the SSL policy to delete. The name must be 1-63 characters long, + * and comply with RFC1035. */ - sslCertificate?: string; + sslPolicy?: string; } - export interface Params$Resource$Regionsslcertificates$Get extends StandardParameters { + export interface Params$Resource$Regionsslpolicies$Get extends StandardParameters { /** * Project ID for this request. */ @@ -187156,11 +208365,12 @@ export namespace compute_v1 { */ region?: string; /** - * Name of the SslCertificate resource to return. + * Name of the SSL policy to update. The name must be 1-63 characters long, + * and comply with RFC1035. */ - sslCertificate?: string; + sslPolicy?: string; } - export interface Params$Resource$Regionsslcertificates$Insert extends StandardParameters { + export interface Params$Resource$Regionsslpolicies$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -187189,9 +208399,117 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$SslCertificate; + requestBody?: Schema$SslPolicy; } - export interface Params$Resource$Regionsslcertificates$List extends StandardParameters { + export interface Params$Resource$Regionsslpolicies$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regionsslpolicies$Listavailablefeatures extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -187299,17 +208617,51 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } + export interface Params$Resource$Regionsslpolicies$Patch extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * Name of the SSL policy to update. The name must be 1-63 characters long, + * and comply with RFC1035. + */ + sslPolicy?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SslPolicy; + } - export class Resource$Regionsslpolicies { + export class Resource$Regiontargethttpproxies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified SSL policy. The SSL policy resource can be deleted - * only if it is not in use by any TargetHttpsProxy or TargetSslProxy - * resources. + * Deletes the specified TargetHttpProxy resource. * @example * ```js * // Before running the sample: @@ -187341,7 +208693,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSslPolicies.delete({ + * const res = await compute.regionTargetHttpProxies.delete({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -187361,9 +208713,8 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the SSL policy to delete. The name must be 1-63 characters long, - * // and comply with RFC1035. - * sslPolicy: 'placeholder-value', + * // Name of the TargetHttpProxy resource to delete. + * targetHttpProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -187374,6 +208725,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -187411,31 +208763,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Regionsslpolicies$Delete, + params: Params$Resource$Regiontargethttpproxies$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Regionsslpolicies$Delete, + params?: Params$Resource$Regiontargethttpproxies$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Regionsslpolicies$Delete, + params: Params$Resource$Regiontargethttpproxies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regionsslpolicies$Delete, + params: Params$Resource$Regiontargethttpproxies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regionsslpolicies$Delete, + params: Params$Resource$Regiontargethttpproxies$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Regionsslpolicies$Delete + | Params$Resource$Regiontargethttpproxies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -187451,12 +208803,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsslpolicies$Delete; + {}) as Params$Resource$Regiontargethttpproxies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsslpolicies$Delete; + params = {} as Params$Resource$Regiontargethttpproxies$Delete; options = {}; } @@ -187471,7 +208823,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/sslPolicies/{sslPolicy}' + '/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -187479,8 +208831,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'sslPolicy'], - pathParams: ['project', 'region', 'sslPolicy'], + requiredParams: ['project', 'region', 'targetHttpProxy'], + pathParams: ['project', 'region', 'targetHttpProxy'], context: this.context, }; if (callback) { @@ -187494,7 +208846,7 @@ export namespace compute_v1 { } /** - * Lists all of the ordered rules present in a single specified policy. + * Returns the specified TargetHttpProxy resource in the specified region. * @example * ```js * // Before running the sample: @@ -187527,33 +208879,30 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSslPolicies.get({ + * const res = await compute.regionTargetHttpProxies.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the SSL policy to update. The name must be 1-63 characters long, - * // and comply with RFC1035. - * sslPolicy: 'placeholder-value', + * // Name of the TargetHttpProxy resource to return. + * targetHttpProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { * // "creationTimestamp": "my_creationTimestamp", - * // "customFeatures": [], * // "description": "my_description", - * // "enabledFeatures": [], * // "fingerprint": "my_fingerprint", + * // "httpKeepAliveTimeoutSec": 0, * // "id": "my_id", * // "kind": "my_kind", - * // "minTlsVersion": "my_minTlsVersion", * // "name": "my_name", - * // "profile": "my_profile", + * // "proxyBind": false, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warnings": [] + * // "urlMap": "my_urlMap" * // } * } * @@ -187570,255 +208919,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regionsslpolicies$Get, + params: Params$Resource$Regiontargethttpproxies$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regionsslpolicies$Get, + params?: Params$Resource$Regiontargethttpproxies$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regionsslpolicies$Get, + params: Params$Resource$Regiontargethttpproxies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionsslpolicies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regiontargethttpproxies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionsslpolicies$Get, - callback: BodyResponseCallback + params: Params$Resource$Regiontargethttpproxies$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regionsslpolicies$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regionsslpolicies$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Regionsslpolicies$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/sslPolicies/{sslPolicy}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'sslPolicy'], - pathParams: ['project', 'region', 'sslPolicy'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Creates a new policy in the specified project and region using the data - * included in the request. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.regionSslPolicies.insert({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "customFeatures": [], - * // "description": "my_description", - * // "enabledFeatures": [], - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "minTlsVersion": "my_minTlsVersion", - * // "name": "my_name", - * // "profile": "my_profile", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "warnings": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - insert( - params: Params$Resource$Regionsslpolicies$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Regionsslpolicies$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Regionsslpolicies$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Regionsslpolicies$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Regionsslpolicies$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Regionsslpolicies$Insert - | BodyResponseCallback + | Params$Resource$Regiontargethttpproxies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsslpolicies$Insert; + {}) as Params$Resource$Regiontargethttpproxies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsslpolicies$Insert; + params = {} as Params$Resource$Regiontargethttpproxies$Get; options = {}; } @@ -187829,172 +208975,136 @@ export namespace compute_v1 { const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/sslPolicies' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists all the SSL policies that have been configured for the specified - * project and region. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.regionSslPolicies.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'targetHttpProxy'], + pathParams: ['project', 'region', 'targetHttpProxy'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a TargetHttpProxy resource in the specified project and region + * using the data included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionTargetHttpProxies.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "httpKeepAliveTimeoutSec": 0, + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "proxyBind": false, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "urlMap": "my_urlMap" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -188010,53 +209120,53 @@ export namespace compute_v1 { * @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$Regionsslpolicies$List, + insert( + params: Params$Resource$Regiontargethttpproxies$Insert, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regionsslpolicies$List, + insert( + params?: Params$Resource$Regiontargethttpproxies$Insert, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regionsslpolicies$List, + ): Promise>; + insert( + params: Params$Resource$Regiontargethttpproxies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionsslpolicies$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Regiontargethttpproxies$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionsslpolicies$List, - callback: BodyResponseCallback + insert( + params: Params$Resource$Regiontargethttpproxies$Insert, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regionsslpolicies$List - | BodyResponseCallback + | Params$Resource$Regiontargethttpproxies$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsslpolicies$List; + {}) as Params$Resource$Regiontargethttpproxies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsslpolicies$List; + params = {} as Params$Resource$Regiontargethttpproxies$Insert; options = {}; } @@ -188071,9 +209181,9 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/sslPolicies' + '/compute/v1/projects/{project}/regions/{region}/targetHttpProxies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -188084,18 +209194,18 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists all features that can be specified in the SSL policy when using - * custom profile. + * Retrieves the list of TargetHttpProxy resources available + * to the specified project in the specified region. * @example * ```js * // Before running the sample: @@ -188128,7 +209238,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSslPolicies.listAvailableFeatures({ + * const res = await compute.regionTargetHttpProxies.list({ * // 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 @@ -188227,7 +209337,12 @@ export namespace compute_v1 { * * // Example response * // { - * // "features": [] + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -188243,61 +209358,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listAvailableFeatures( - params: Params$Resource$Regionsslpolicies$Listavailablefeatures, + list( + params: Params$Resource$Regiontargethttpproxies$List, options: StreamMethodOptions ): Promise>; - listAvailableFeatures( - params?: Params$Resource$Regionsslpolicies$Listavailablefeatures, + list( + params?: Params$Resource$Regiontargethttpproxies$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listAvailableFeatures( - params: Params$Resource$Regionsslpolicies$Listavailablefeatures, + ): Promise>; + list( + params: Params$Resource$Regiontargethttpproxies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listAvailableFeatures( - params: Params$Resource$Regionsslpolicies$Listavailablefeatures, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listAvailableFeatures( - params: Params$Resource$Regionsslpolicies$Listavailablefeatures, - callback: BodyResponseCallback + list( + params: Params$Resource$Regiontargethttpproxies$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listAvailableFeatures( - callback: BodyResponseCallback + list( + params: Params$Resource$Regiontargethttpproxies$List, + callback: BodyResponseCallback ): void; - listAvailableFeatures( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Regionsslpolicies$Listavailablefeatures - | BodyResponseCallback + | Params$Resource$Regiontargethttpproxies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsslpolicies$Listavailablefeatures; + {}) as Params$Resource$Regiontargethttpproxies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsslpolicies$Listavailablefeatures; + params = {} as Params$Resource$Regiontargethttpproxies$List; options = {}; } @@ -188312,7 +209419,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/sslPolicies/listAvailableFeatures' + '/compute/v1/projects/{project}/regions/{region}/targetHttpProxies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -188325,19 +209432,17 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Patches the specified SSL policy with the data included in the request. + * Changes the URL map for TargetHttpProxy. * @example * ```js * // Before running the sample: @@ -188369,7 +209474,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionSslPolicies.patch({ + * const res = await compute.regionTargetHttpProxies.setUrlMap({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -188389,27 +209494,14 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the SSL policy to update. The name must be 1-63 characters long, - * // and comply with RFC1035. - * sslPolicy: 'placeholder-value', + * // Name of the TargetHttpProxy to set a URL map for. + * targetHttpProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "customFeatures": [], - * // "description": "my_description", - * // "enabledFeatures": [], - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "minTlsVersion": "my_minTlsVersion", - * // "name": "my_name", - * // "profile": "my_profile", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "warnings": [] + * // "urlMap": "my_urlMap" * // } * }, * }); @@ -188422,6 +209514,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -188458,32 +209551,32 @@ export namespace compute_v1 { * @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$Regionsslpolicies$Patch, + setUrlMap( + params: Params$Resource$Regiontargethttpproxies$Seturlmap, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Regionsslpolicies$Patch, + setUrlMap( + params?: Params$Resource$Regiontargethttpproxies$Seturlmap, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Regionsslpolicies$Patch, + setUrlMap( + params: Params$Resource$Regiontargethttpproxies$Seturlmap, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionsslpolicies$Patch, + setUrlMap( + params: Params$Resource$Regiontargethttpproxies$Seturlmap, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionsslpolicies$Patch, + setUrlMap( + params: Params$Resource$Regiontargethttpproxies$Seturlmap, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + setUrlMap(callback: BodyResponseCallback): void; + setUrlMap( paramsOrCallback?: - | Params$Resource$Regionsslpolicies$Patch + | Params$Resource$Regiontargethttpproxies$Seturlmap | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -188499,12 +209592,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionsslpolicies$Patch; + {}) as Params$Resource$Regiontargethttpproxies$Seturlmap; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionsslpolicies$Patch; + params = {} as Params$Resource$Regiontargethttpproxies$Seturlmap; options = {}; } @@ -188519,16 +209612,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/sslPolicies/{sslPolicy}' + '/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}/setUrlMap' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'sslPolicy'], - pathParams: ['project', 'region', 'sslPolicy'], + requiredParams: ['project', 'region', 'targetHttpProxy'], + pathParams: ['project', 'region', 'targetHttpProxy'], context: this.context, }; if (callback) { @@ -188542,7 +209635,7 @@ export namespace compute_v1 { } } - export interface Params$Resource$Regionsslpolicies$Delete extends StandardParameters { + export interface Params$Resource$Regiontargethttpproxies$Delete extends StandardParameters { /** * Project ID for this request. */ @@ -188568,12 +209661,11 @@ export namespace compute_v1 { */ requestId?: string; /** - * Name of the SSL policy to delete. The name must be 1-63 characters long, - * and comply with RFC1035. + * Name of the TargetHttpProxy resource to delete. */ - sslPolicy?: string; + targetHttpProxy?: string; } - export interface Params$Resource$Regionsslpolicies$Get extends StandardParameters { + export interface Params$Resource$Regiontargethttpproxies$Get extends StandardParameters { /** * Project ID for this request. */ @@ -188583,12 +209675,11 @@ export namespace compute_v1 { */ region?: string; /** - * Name of the SSL policy to update. The name must be 1-63 characters long, - * and comply with RFC1035. + * Name of the TargetHttpProxy resource to return. */ - sslPolicy?: string; + targetHttpProxy?: string; } - export interface Params$Resource$Regionsslpolicies$Insert extends StandardParameters { + export interface Params$Resource$Regiontargethttpproxies$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -188617,117 +209708,9 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$SslPolicy; - } - export interface Params$Resource$Regionsslpolicies$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; + requestBody?: Schema$TargetHttpProxy; } - export interface Params$Resource$Regionsslpolicies$Listavailablefeatures extends StandardParameters { + export interface Params$Resource$Regiontargethttpproxies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -188835,7 +209818,7 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Regionsslpolicies$Patch extends StandardParameters { + export interface Params$Resource$Regiontargethttpproxies$Seturlmap extends StandardParameters { /** * Project ID for this request. */ @@ -188861,25 +209844,24 @@ export namespace compute_v1 { */ requestId?: string; /** - * Name of the SSL policy to update. The name must be 1-63 characters long, - * and comply with RFC1035. + * Name of the TargetHttpProxy to set a URL map for. */ - sslPolicy?: string; + targetHttpProxy?: string; /** * Request body metadata */ - requestBody?: Schema$SslPolicy; + requestBody?: Schema$UrlMapReference; } - export class Resource$Regiontargethttpproxies { + export class Resource$Regiontargethttpsproxies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified TargetHttpProxy resource. + * Deletes the specified TargetHttpsProxy resource. * @example * ```js * // Before running the sample: @@ -188911,7 +209893,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetHttpProxies.delete({ + * const res = await compute.regionTargetHttpsProxies.delete({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -188931,8 +209913,8 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the TargetHttpProxy resource to delete. - * targetHttpProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the TargetHttpsProxy resource to delete. + * targetHttpsProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -188943,6 +209925,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -188980,31 +209963,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Regiontargethttpproxies$Delete, + params: Params$Resource$Regiontargethttpsproxies$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Regiontargethttpproxies$Delete, + params?: Params$Resource$Regiontargethttpsproxies$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Regiontargethttpproxies$Delete, + params: Params$Resource$Regiontargethttpsproxies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regiontargethttpproxies$Delete, + params: Params$Resource$Regiontargethttpsproxies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regiontargethttpproxies$Delete, + params: Params$Resource$Regiontargethttpsproxies$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Regiontargethttpproxies$Delete + | Params$Resource$Regiontargethttpsproxies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -189020,12 +210003,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargethttpproxies$Delete; + {}) as Params$Resource$Regiontargethttpsproxies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargethttpproxies$Delete; + params = {} as Params$Resource$Regiontargethttpsproxies$Delete; options = {}; } @@ -189040,7 +210023,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}' + '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -189048,8 +210031,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'targetHttpProxy'], - pathParams: ['project', 'region', 'targetHttpProxy'], + requiredParams: ['project', 'region', 'targetHttpsProxy'], + pathParams: ['project', 'region', 'targetHttpsProxy'], context: this.context, }; if (callback) { @@ -189063,7 +210046,7 @@ export namespace compute_v1 { } /** - * Returns the specified TargetHttpProxy resource in the specified region. + * Returns the specified TargetHttpsProxy resource in the specified region. * @example * ```js * // Before running the sample: @@ -189096,19 +210079,21 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetHttpProxies.get({ + * const res = await compute.regionTargetHttpsProxies.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the TargetHttpProxy resource to return. - * targetHttpProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the TargetHttpsProxy resource to return. + * targetHttpsProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { + * // "authorizationPolicy": "my_authorizationPolicy", + * // "certificateMap": "my_certificateMap", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "fingerprint": "my_fingerprint", @@ -189117,8 +210102,13 @@ export namespace compute_v1 { * // "kind": "my_kind", * // "name": "my_name", * // "proxyBind": false, + * // "quicOverride": "my_quicOverride", * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "serverTlsPolicy": "my_serverTlsPolicy", + * // "sslCertificates": [], + * // "sslPolicy": "my_sslPolicy", + * // "tlsEarlyData": "my_tlsEarlyData", * // "urlMap": "my_urlMap" * // } * } @@ -189136,52 +210126,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regiontargethttpproxies$Get, + params: Params$Resource$Regiontargethttpsproxies$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regiontargethttpproxies$Get, + params?: Params$Resource$Regiontargethttpsproxies$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regiontargethttpproxies$Get, + params: Params$Resource$Regiontargethttpsproxies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regiontargethttpproxies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regiontargethttpsproxies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regiontargethttpproxies$Get, - callback: BodyResponseCallback + params: Params$Resource$Regiontargethttpsproxies$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regiontargethttpproxies$Get - | BodyResponseCallback + | Params$Resource$Regiontargethttpsproxies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargethttpproxies$Get; + {}) as Params$Resource$Regiontargethttpsproxies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargethttpproxies$Get; + params = {} as Params$Resource$Regiontargethttpsproxies$Get; options = {}; } @@ -189196,7 +210186,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}' + '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -189204,22 +210194,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'targetHttpProxy'], - pathParams: ['project', 'region', 'targetHttpProxy'], + requiredParams: ['project', 'region', 'targetHttpsProxy'], + pathParams: ['project', 'region', 'targetHttpsProxy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a TargetHttpProxy resource in the specified project and region + * Creates a TargetHttpsProxy resource in the specified project and region * using the data included in the request. * @example * ```js @@ -189252,7 +210242,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetHttpProxies.insert({ + * const res = await compute.regionTargetHttpsProxies.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -189277,6 +210267,8 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { + * // "authorizationPolicy": "my_authorizationPolicy", + * // "certificateMap": "my_certificateMap", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "fingerprint": "my_fingerprint", @@ -189285,8 +210277,13 @@ export namespace compute_v1 { * // "kind": "my_kind", * // "name": "my_name", * // "proxyBind": false, + * // "quicOverride": "my_quicOverride", * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "serverTlsPolicy": "my_serverTlsPolicy", + * // "sslCertificates": [], + * // "sslPolicy": "my_sslPolicy", + * // "tlsEarlyData": "my_tlsEarlyData", * // "urlMap": "my_urlMap" * // } * }, @@ -189300,6 +210297,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -189337,31 +210335,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Regiontargethttpproxies$Insert, + params: Params$Resource$Regiontargethttpsproxies$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Regiontargethttpproxies$Insert, + params?: Params$Resource$Regiontargethttpsproxies$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Regiontargethttpproxies$Insert, + params: Params$Resource$Regiontargethttpsproxies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Regiontargethttpproxies$Insert, + params: Params$Resource$Regiontargethttpsproxies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Regiontargethttpproxies$Insert, + params: Params$Resource$Regiontargethttpsproxies$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Regiontargethttpproxies$Insert + | Params$Resource$Regiontargethttpsproxies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -189377,12 +210375,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargethttpproxies$Insert; + {}) as Params$Resource$Regiontargethttpsproxies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargethttpproxies$Insert; + params = {} as Params$Resource$Regiontargethttpsproxies$Insert; options = {}; } @@ -189397,7 +210395,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetHttpProxies' + '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -189420,7 +210418,7 @@ export namespace compute_v1 { } /** - * Retrieves the list of TargetHttpProxy resources available + * Retrieves the list of TargetHttpsProxy resources available * to the specified project in the specified region. * @example * ```js @@ -189445,7 +210443,458 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionTargetHttpsProxies.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regiontargethttpsproxies$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Regiontargethttpsproxies$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Regiontargethttpsproxies$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regiontargethttpsproxies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regiontargethttpsproxies$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Regiontargethttpsproxies$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regiontargethttpsproxies$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regiontargethttpsproxies$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Patches the specified regional TargetHttpsProxy resource with the data + * included in the request. This method supports PATCH + * semantics and usesJSON merge + * patch format and processing rules. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionTargetHttpsProxies.patch({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the TargetHttpsProxy resource to patch. + * targetHttpsProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "authorizationPolicy": "my_authorizationPolicy", + * // "certificateMap": "my_certificateMap", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "httpKeepAliveTimeoutSec": 0, + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "proxyBind": false, + * // "quicOverride": "my_quicOverride", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "serverTlsPolicy": "my_serverTlsPolicy", + * // "sslCertificates": [], + * // "sslPolicy": "my_sslPolicy", + * // "tlsEarlyData": "my_tlsEarlyData", + * // "urlMap": "my_urlMap" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Regiontargethttpsproxies$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Regiontargethttpsproxies$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Regiontargethttpsproxies$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Regiontargethttpsproxies$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Regiontargethttpsproxies$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Regiontargethttpsproxies$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regiontargethttpsproxies$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regiontargethttpsproxies$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'targetHttpsProxy'], + pathParams: ['project', 'region', 'targetHttpsProxy'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Replaces SslCertificates for TargetHttpsProxy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', * ], * }); * @@ -189454,111 +210903,69 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetHttpProxies.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionTargetHttpsProxies.setSslCertificates({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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: 'placeholder-value', + * // Name of the TargetHttpsProxy resource to set an + * // SslCertificates resource for. + * targetHttpsProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "sslCertificates": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -189574,53 +210981,54 @@ export namespace compute_v1 { * @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$Regiontargethttpproxies$List, + setSslCertificates( + params: Params$Resource$Regiontargethttpsproxies$Setsslcertificates, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regiontargethttpproxies$List, + setSslCertificates( + params?: Params$Resource$Regiontargethttpsproxies$Setsslcertificates, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regiontargethttpproxies$List, + ): Promise>; + setSslCertificates( + params: Params$Resource$Regiontargethttpsproxies$Setsslcertificates, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regiontargethttpproxies$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setSslCertificates( + params: Params$Resource$Regiontargethttpsproxies$Setsslcertificates, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regiontargethttpproxies$List, - callback: BodyResponseCallback + setSslCertificates( + params: Params$Resource$Regiontargethttpsproxies$Setsslcertificates, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + setSslCertificates(callback: BodyResponseCallback): void; + setSslCertificates( paramsOrCallback?: - | Params$Resource$Regiontargethttpproxies$List - | BodyResponseCallback + | Params$Resource$Regiontargethttpsproxies$Setsslcertificates + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargethttpproxies$List; + {}) as Params$Resource$Regiontargethttpsproxies$Setsslcertificates; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargethttpproxies$List; + params = + {} as Params$Resource$Regiontargethttpsproxies$Setsslcertificates; options = {}; } @@ -189635,30 +211043,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetHttpProxies' + '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'targetHttpsProxy'], + pathParams: ['project', 'region', 'targetHttpsProxy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Changes the URL map for TargetHttpProxy. + * Changes the URL map for TargetHttpsProxy. * @example * ```js * // Before running the sample: @@ -189690,7 +211098,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetHttpProxies.setUrlMap({ + * const res = await compute.regionTargetHttpsProxies.setUrlMap({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -189710,8 +211118,8 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the TargetHttpProxy to set a URL map for. - * targetHttpProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the TargetHttpsProxy to set a URL map for. + * targetHttpsProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { @@ -189730,6 +211138,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -189767,31 +211176,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ setUrlMap( - params: Params$Resource$Regiontargethttpproxies$Seturlmap, + params: Params$Resource$Regiontargethttpsproxies$Seturlmap, options: StreamMethodOptions ): Promise>; setUrlMap( - params?: Params$Resource$Regiontargethttpproxies$Seturlmap, + params?: Params$Resource$Regiontargethttpsproxies$Seturlmap, options?: MethodOptions ): Promise>; setUrlMap( - params: Params$Resource$Regiontargethttpproxies$Seturlmap, + params: Params$Resource$Regiontargethttpsproxies$Seturlmap, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setUrlMap( - params: Params$Resource$Regiontargethttpproxies$Seturlmap, + params: Params$Resource$Regiontargethttpsproxies$Seturlmap, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setUrlMap( - params: Params$Resource$Regiontargethttpproxies$Seturlmap, + params: Params$Resource$Regiontargethttpsproxies$Seturlmap, callback: BodyResponseCallback ): void; setUrlMap(callback: BodyResponseCallback): void; setUrlMap( paramsOrCallback?: - | Params$Resource$Regiontargethttpproxies$Seturlmap + | Params$Resource$Regiontargethttpsproxies$Seturlmap | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -189807,12 +211216,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargethttpproxies$Seturlmap; + {}) as Params$Resource$Regiontargethttpsproxies$Seturlmap; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargethttpproxies$Seturlmap; + params = {} as Params$Resource$Regiontargethttpsproxies$Seturlmap; options = {}; } @@ -189827,7 +211236,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}/setUrlMap' + '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -189835,8 +211244,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'targetHttpProxy'], - pathParams: ['project', 'region', 'targetHttpProxy'], + requiredParams: ['project', 'region', 'targetHttpsProxy'], + pathParams: ['project', 'region', 'targetHttpsProxy'], context: this.context, }; if (callback) { @@ -189850,7 +211259,7 @@ export namespace compute_v1 { } } - export interface Params$Resource$Regiontargethttpproxies$Delete extends StandardParameters { + export interface Params$Resource$Regiontargethttpsproxies$Delete extends StandardParameters { /** * Project ID for this request. */ @@ -189876,11 +211285,11 @@ export namespace compute_v1 { */ requestId?: string; /** - * Name of the TargetHttpProxy resource to delete. + * Name of the TargetHttpsProxy resource to delete. */ - targetHttpProxy?: string; + targetHttpsProxy?: string; } - export interface Params$Resource$Regiontargethttpproxies$Get extends StandardParameters { + export interface Params$Resource$Regiontargethttpsproxies$Get extends StandardParameters { /** * Project ID for this request. */ @@ -189890,11 +211299,11 @@ export namespace compute_v1 { */ region?: string; /** - * Name of the TargetHttpProxy resource to return. + * Name of the TargetHttpsProxy resource to return. */ - targetHttpProxy?: string; + targetHttpsProxy?: string; } - export interface Params$Resource$Regiontargethttpproxies$Insert extends StandardParameters { + export interface Params$Resource$Regiontargethttpsproxies$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -189923,9 +211332,9 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$TargetHttpProxy; + requestBody?: Schema$TargetHttpsProxy; } - export interface Params$Resource$Regiontargethttpproxies$List extends StandardParameters { + export interface Params$Resource$Regiontargethttpsproxies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -190033,7 +211442,42 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Regiontargethttpproxies$Seturlmap extends StandardParameters { + export interface Params$Resource$Regiontargethttpsproxies$Patch extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * Name of the TargetHttpsProxy resource to patch. + */ + targetHttpsProxy?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TargetHttpsProxy; + } + export interface Params$Resource$Regiontargethttpsproxies$Setsslcertificates extends StandardParameters { /** * Project ID for this request. */ @@ -190059,9 +211503,45 @@ export namespace compute_v1 { */ requestId?: string; /** - * Name of the TargetHttpProxy to set a URL map for. + * Name of the TargetHttpsProxy resource to set an + * SslCertificates resource for. */ - targetHttpProxy?: string; + targetHttpsProxy?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionTargetHttpsProxiesSetSslCertificatesRequest; + } + export interface Params$Resource$Regiontargethttpsproxies$Seturlmap extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * Name of the TargetHttpsProxy to set a URL map for. + */ + targetHttpsProxy?: string; /** * Request body metadata @@ -190069,14 +211549,14 @@ export namespace compute_v1 { requestBody?: Schema$UrlMapReference; } - export class Resource$Regiontargethttpsproxies { + export class Resource$Regiontargettcpproxies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified TargetHttpsProxy resource. + * Deletes the specified TargetTcpProxy resource. * @example * ```js * // Before running the sample: @@ -190108,7 +211588,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetHttpsProxies.delete({ + * const res = await compute.regionTargetTcpProxies.delete({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -190128,8 +211608,8 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the TargetHttpsProxy resource to delete. - * targetHttpsProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the TargetTcpProxy resource to delete. + * targetTcpProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -190140,6 +211620,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -190177,31 +211658,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Regiontargethttpsproxies$Delete, + params: Params$Resource$Regiontargettcpproxies$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Regiontargethttpsproxies$Delete, + params?: Params$Resource$Regiontargettcpproxies$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Regiontargethttpsproxies$Delete, + params: Params$Resource$Regiontargettcpproxies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regiontargethttpsproxies$Delete, + params: Params$Resource$Regiontargettcpproxies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Regiontargethttpsproxies$Delete, + params: Params$Resource$Regiontargettcpproxies$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Regiontargethttpsproxies$Delete + | Params$Resource$Regiontargettcpproxies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -190217,12 +211698,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargethttpsproxies$Delete; + {}) as Params$Resource$Regiontargettcpproxies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargethttpsproxies$Delete; + params = {} as Params$Resource$Regiontargettcpproxies$Delete; options = {}; } @@ -190237,7 +211718,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}' + '/compute/v1/projects/{project}/regions/{region}/targetTcpProxies/{targetTcpProxy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -190245,8 +211726,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'targetHttpsProxy'], - pathParams: ['project', 'region', 'targetHttpsProxy'], + requiredParams: ['project', 'region', 'targetTcpProxy'], + pathParams: ['project', 'region', 'targetTcpProxy'], context: this.context, }; if (callback) { @@ -190260,7 +211741,7 @@ export namespace compute_v1 { } /** - * Returns the specified TargetHttpsProxy resource in the specified region. + * Returns the specified TargetTcpProxy resource. * @example * ```js * // Before running the sample: @@ -190293,37 +211774,29 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetHttpsProxies.get({ + * const res = await compute.regionTargetTcpProxies.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the TargetHttpsProxy resource to return. - * targetHttpsProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the TargetTcpProxy resource to return. + * targetTcpProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "authorizationPolicy": "my_authorizationPolicy", - * // "certificateMap": "my_certificateMap", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "httpKeepAliveTimeoutSec": 0, * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", * // "proxyBind": false, - * // "quicOverride": "my_quicOverride", + * // "proxyHeader": "my_proxyHeader", * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "serverTlsPolicy": "my_serverTlsPolicy", - * // "sslCertificates": [], - * // "sslPolicy": "my_sslPolicy", - * // "tlsEarlyData": "my_tlsEarlyData", - * // "urlMap": "my_urlMap" + * // "service": "my_service" * // } * } * @@ -190340,52 +211813,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regiontargethttpsproxies$Get, + params: Params$Resource$Regiontargettcpproxies$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regiontargethttpsproxies$Get, + params?: Params$Resource$Regiontargettcpproxies$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regiontargethttpsproxies$Get, + params: Params$Resource$Regiontargettcpproxies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regiontargethttpsproxies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regiontargettcpproxies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regiontargethttpsproxies$Get, - callback: BodyResponseCallback + params: Params$Resource$Regiontargettcpproxies$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regiontargethttpsproxies$Get - | BodyResponseCallback + | Params$Resource$Regiontargettcpproxies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargethttpsproxies$Get; + {}) as Params$Resource$Regiontargettcpproxies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargethttpsproxies$Get; + params = {} as Params$Resource$Regiontargettcpproxies$Get; options = {}; } @@ -190400,7 +211873,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}' + '/compute/v1/projects/{project}/regions/{region}/targetTcpProxies/{targetTcpProxy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -190408,23 +211881,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'targetHttpsProxy'], - pathParams: ['project', 'region', 'targetHttpsProxy'], + requiredParams: ['project', 'region', 'targetTcpProxy'], + pathParams: ['project', 'region', 'targetTcpProxy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a TargetHttpsProxy resource in the specified project and region - * using the data included in the request. + * Creates a TargetTcpProxy resource in the specified project and region using + * the data included in the request. * @example * ```js * // Before running the sample: @@ -190456,7 +211929,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetHttpsProxies.insert({ + * const res = await compute.regionTargetTcpProxies.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -190481,24 +211954,16 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { - * // "authorizationPolicy": "my_authorizationPolicy", - * // "certificateMap": "my_certificateMap", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "httpKeepAliveTimeoutSec": 0, * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", * // "proxyBind": false, - * // "quicOverride": "my_quicOverride", + * // "proxyHeader": "my_proxyHeader", * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "serverTlsPolicy": "my_serverTlsPolicy", - * // "sslCertificates": [], - * // "sslPolicy": "my_sslPolicy", - * // "tlsEarlyData": "my_tlsEarlyData", - * // "urlMap": "my_urlMap" + * // "service": "my_service" * // } * }, * }); @@ -190511,6 +211976,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -190548,31 +212014,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Regiontargethttpsproxies$Insert, + params: Params$Resource$Regiontargettcpproxies$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Regiontargethttpsproxies$Insert, + params?: Params$Resource$Regiontargettcpproxies$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Regiontargethttpsproxies$Insert, + params: Params$Resource$Regiontargettcpproxies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Regiontargethttpsproxies$Insert, + params: Params$Resource$Regiontargettcpproxies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Regiontargethttpsproxies$Insert, + params: Params$Resource$Regiontargettcpproxies$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Regiontargethttpsproxies$Insert + | Params$Resource$Regiontargettcpproxies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -190588,12 +212054,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargethttpsproxies$Insert; + {}) as Params$Resource$Regiontargettcpproxies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargethttpsproxies$Insert; + params = {} as Params$Resource$Regiontargettcpproxies$Insert; options = {}; } @@ -190608,7 +212074,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies' + '/compute/v1/projects/{project}/regions/{region}/targetTcpProxies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -190631,8 +212097,8 @@ export namespace compute_v1 { } /** - * Retrieves the list of TargetHttpsProxy resources available - * to the specified project in the specified region. + * Retrieves a list of TargetTcpProxy resources + * available to the specified project in a given region. * @example * ```js * // Before running the sample: @@ -190665,7 +212131,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetHttpsProxies.list({ + * const res = await compute.regionTargetTcpProxies.list({ * // 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 @@ -190786,54 +212252,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Regiontargethttpsproxies$List, + params: Params$Resource$Regiontargettcpproxies$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Regiontargethttpsproxies$List, + params?: Params$Resource$Regiontargettcpproxies$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Regiontargethttpsproxies$List, + params: Params$Resource$Regiontargettcpproxies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regiontargethttpsproxies$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Regiontargettcpproxies$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regiontargethttpsproxies$List, - callback: BodyResponseCallback + params: Params$Resource$Regiontargettcpproxies$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Regiontargethttpsproxies$List - | BodyResponseCallback + | Params$Resource$Regiontargettcpproxies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargethttpsproxies$List; + {}) as Params$Resource$Regiontargettcpproxies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargethttpsproxies$List; + params = {} as Params$Resource$Regiontargettcpproxies$List; options = {}; } @@ -190848,7 +212312,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies' + '/compute/v1/projects/{project}/regions/{region}/targetTcpProxies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -190861,20 +212325,208 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Regiontargettcpproxies$Delete extends StandardParameters { /** - * Patches the specified regional TargetHttpsProxy resource with the data - * included in the request. This method supports PATCH - * semantics and usesJSON merge - * patch format and processing rules. + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * Name of the TargetTcpProxy resource to delete. + */ + targetTcpProxy?: string; + } + export interface Params$Resource$Regiontargettcpproxies$Get extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Name of the TargetTcpProxy resource to return. + */ + targetTcpProxy?: string; + } + export interface Params$Resource$Regiontargettcpproxies$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$TargetTcpProxy; + } + export interface Params$Resource$Regiontargettcpproxies$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Regionurlmaps { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified UrlMap resource. * @example * ```js * // Before running the sample: @@ -190906,53 +212558,17 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetHttpsProxies.patch({ + * const res = await compute.regionUrlMaps.delete({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. + * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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). + * // begin_interface: MixerMutationRequestBuilder + * // Request ID to support idempotency. * requestId: 'placeholder-value', - * // Name of the TargetHttpsProxy resource to patch. - * targetHttpsProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "authorizationPolicy": "my_authorizationPolicy", - * // "certificateMap": "my_certificateMap", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "httpKeepAliveTimeoutSec": 0, - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "proxyBind": false, - * // "quicOverride": "my_quicOverride", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "serverTlsPolicy": "my_serverTlsPolicy", - * // "sslCertificates": [], - * // "sslPolicy": "my_sslPolicy", - * // "tlsEarlyData": "my_tlsEarlyData", - * // "urlMap": "my_urlMap" - * // } - * }, + * // Name of the UrlMap resource to delete. + * urlMap: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -190963,6 +212579,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -190999,32 +212616,32 @@ export namespace compute_v1 { * @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$Regiontargethttpsproxies$Patch, + delete( + params: Params$Resource$Regionurlmaps$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Regiontargethttpsproxies$Patch, + delete( + params?: Params$Resource$Regionurlmaps$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Regiontargethttpsproxies$Patch, + delete( + params: Params$Resource$Regionurlmaps$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regiontargethttpsproxies$Patch, + delete( + params: Params$Resource$Regionurlmaps$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regiontargethttpsproxies$Patch, + delete( + params: Params$Resource$Regionurlmaps$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Regiontargethttpsproxies$Patch + | Params$Resource$Regionurlmaps$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -191040,12 +212657,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargethttpsproxies$Patch; + {}) as Params$Resource$Regionurlmaps$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargethttpsproxies$Patch; + params = {} as Params$Resource$Regionurlmaps$Delete; options = {}; } @@ -191060,16 +212677,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}' + '/compute/v1/projects/{project}/regions/{region}/urlMaps/{urlMap}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'targetHttpsProxy'], - pathParams: ['project', 'region', 'targetHttpsProxy'], + requiredParams: ['project', 'region', 'urlMap'], + pathParams: ['project', 'region', 'urlMap'], context: this.context, }; if (callback) { @@ -191083,7 +212700,7 @@ export namespace compute_v1 { } /** - * Replaces SslCertificates for TargetHttpsProxy. + * Returns the specified UrlMap resource. * @example * ```js * // Before running the sample: @@ -191107,6 +212724,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -191115,68 +212733,35 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetHttpsProxies.setSslCertificates({ + * const res = await compute.regionUrlMaps.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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: 'placeholder-value', - * // Name of the TargetHttpsProxy resource to set an - * // SslCertificates resource for. - * targetHttpsProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "sslCertificates": [] - * // } - * }, + * // Name of the UrlMap resource to return. + * urlMap: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", + * // "defaultCustomErrorResponsePolicy": {}, + * // "defaultRouteAction": {}, + * // "defaultService": "my_defaultService", + * // "defaultUrlRedirect": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "fingerprint": "my_fingerprint", + * // "headerAction": {}, + * // "hostRules": [], * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "tests": [] * // } * } * @@ -191192,54 +212777,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setSslCertificates( - params: Params$Resource$Regiontargethttpsproxies$Setsslcertificates, + get( + params: Params$Resource$Regionurlmaps$Get, options: StreamMethodOptions ): Promise>; - setSslCertificates( - params?: Params$Resource$Regiontargethttpsproxies$Setsslcertificates, + get( + params?: Params$Resource$Regionurlmaps$Get, options?: MethodOptions - ): Promise>; - setSslCertificates( - params: Params$Resource$Regiontargethttpsproxies$Setsslcertificates, + ): Promise>; + get( + params: Params$Resource$Regionurlmaps$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setSslCertificates( - params: Params$Resource$Regiontargethttpsproxies$Setsslcertificates, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Regionurlmaps$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setSslCertificates( - params: Params$Resource$Regiontargethttpsproxies$Setsslcertificates, - callback: BodyResponseCallback + get( + params: Params$Resource$Regionurlmaps$Get, + callback: BodyResponseCallback ): void; - setSslCertificates(callback: BodyResponseCallback): void; - setSslCertificates( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Regiontargethttpsproxies$Setsslcertificates - | BodyResponseCallback + | Params$Resource$Regionurlmaps$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargethttpsproxies$Setsslcertificates; + {}) as Params$Resource$Regionurlmaps$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Regiontargethttpsproxies$Setsslcertificates; + params = {} as Params$Resource$Regionurlmaps$Get; options = {}; } @@ -191254,30 +212838,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates' + '/compute/v1/projects/{project}/regions/{region}/urlMaps/{urlMap}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'targetHttpsProxy'], - pathParams: ['project', 'region', 'targetHttpsProxy'], + requiredParams: ['project', 'region', 'urlMap'], + pathParams: ['project', 'region', 'urlMap'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Changes the URL map for TargetHttpsProxy. + * Creates a UrlMap resource in the specified project using + * the data included in the request. * @example * ```js * // Before running the sample: @@ -191309,34 +212894,36 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetHttpsProxies.setUrlMap({ + * const res = await compute.regionUrlMaps.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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). + * // begin_interface: MixerMutationRequestBuilder + * // Request ID to support idempotency. * requestId: 'placeholder-value', - * // Name of the TargetHttpsProxy to set a URL map for. - * targetHttpsProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "urlMap": "my_urlMap" + * // "creationTimestamp": "my_creationTimestamp", + * // "defaultCustomErrorResponsePolicy": {}, + * // "defaultRouteAction": {}, + * // "defaultService": "my_defaultService", + * // "defaultUrlRedirect": {}, + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "headerAction": {}, + * // "hostRules": [], + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "pathMatchers": [], + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "tests": [] * // } * }, * }); @@ -191349,6 +212936,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -191385,32 +212973,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setUrlMap( - params: Params$Resource$Regiontargethttpsproxies$Seturlmap, + insert( + params: Params$Resource$Regionurlmaps$Insert, options: StreamMethodOptions ): Promise>; - setUrlMap( - params?: Params$Resource$Regiontargethttpsproxies$Seturlmap, + insert( + params?: Params$Resource$Regionurlmaps$Insert, options?: MethodOptions ): Promise>; - setUrlMap( - params: Params$Resource$Regiontargethttpsproxies$Seturlmap, + insert( + params: Params$Resource$Regionurlmaps$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setUrlMap( - params: Params$Resource$Regiontargethttpsproxies$Seturlmap, + insert( + params: Params$Resource$Regionurlmaps$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setUrlMap( - params: Params$Resource$Regiontargethttpsproxies$Seturlmap, + insert( + params: Params$Resource$Regionurlmaps$Insert, callback: BodyResponseCallback ): void; - setUrlMap(callback: BodyResponseCallback): void; - setUrlMap( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Regiontargethttpsproxies$Seturlmap + | Params$Resource$Regionurlmaps$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -191426,12 +213014,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargethttpsproxies$Seturlmap; + {}) as Params$Resource$Regionurlmaps$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargethttpsproxies$Seturlmap; + params = {} as Params$Resource$Regionurlmaps$Insert; options = {}; } @@ -191446,7 +213034,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap' + '/compute/v1/projects/{project}/regions/{region}/urlMaps' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -191454,8 +213042,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'targetHttpsProxy'], - pathParams: ['project', 'region', 'targetHttpsProxy'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -191467,306 +213055,10 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Regiontargethttpsproxies$Delete extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - /** - * Name of the TargetHttpsProxy resource to delete. - */ - targetHttpsProxy?: string; - } - export interface Params$Resource$Regiontargethttpsproxies$Get extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * Name of the TargetHttpsProxy resource to return. - */ - targetHttpsProxy?: string; - } - export interface Params$Resource$Regiontargethttpsproxies$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - - /** - * Request body metadata - */ - requestBody?: Schema$TargetHttpsProxy; - } - export interface Params$Resource$Regiontargethttpsproxies$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Regiontargethttpsproxies$Patch extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * 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. - * - * 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; - /** - * Name of the TargetHttpsProxy resource to patch. - */ - targetHttpsProxy?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TargetHttpsProxy; - } - export interface Params$Resource$Regiontargethttpsproxies$Setsslcertificates extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - /** - * Name of the TargetHttpsProxy resource to set an - * SslCertificates resource for. - */ - targetHttpsProxy?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionTargetHttpsProxiesSetSslCertificatesRequest; - } - export interface Params$Resource$Regiontargethttpsproxies$Seturlmap extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * 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. - * - * 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; - /** - * Name of the TargetHttpsProxy to set a URL map for. - */ - targetHttpsProxy?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$UrlMapReference; - } - - export class Resource$Regiontargettcpproxies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes the specified TargetTcpProxy resource. + * Retrieves the list of UrlMap resources available to the specified + * project in the specified region. * @example * ```js * // Before running the sample: @@ -191790,6 +213082,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -191798,59 +213091,111 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetTcpProxies.delete({ + * const res = await compute.regionUrlMaps.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // Name of the TargetTcpProxy resource to delete. - * targetTcpProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -191866,53 +213211,53 @@ export namespace compute_v1 { * @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$Regiontargettcpproxies$Delete, + list( + params: Params$Resource$Regionurlmaps$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Regiontargettcpproxies$Delete, + list( + params?: Params$Resource$Regionurlmaps$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Regiontargettcpproxies$Delete, + ): Promise>; + list( + params: Params$Resource$Regionurlmaps$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regiontargettcpproxies$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionurlmaps$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regiontargettcpproxies$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionurlmaps$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Regiontargettcpproxies$Delete - | BodyResponseCallback + | Params$Resource$Regionurlmaps$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargettcpproxies$Delete; + {}) as Params$Resource$Regionurlmaps$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargettcpproxies$Delete; + params = {} as Params$Resource$Regionurlmaps$List; options = {}; } @@ -191927,30 +213272,33 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetTcpProxies/{targetTcpProxy}' + '/compute/v1/projects/{project}/regions/{region}/urlMaps' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'targetTcpProxy'], - pathParams: ['project', 'region', 'targetTcpProxy'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified TargetTcpProxy resource. + * Patches the specified UrlMap resource with the data included in the + * request. This method supportsPATCH + * semantics and usesJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -191974,7 +213322,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -191983,29 +213330,72 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetTcpProxies.get({ + * const res = await compute.regionUrlMaps.patch({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the TargetTcpProxy resource to return. - * targetTcpProxy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // begin_interface: MixerMutationRequestBuilder + * // Request ID to support idempotency. + * requestId: 'placeholder-value', + * // Name of the UrlMap resource to patch. + * urlMap: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "defaultCustomErrorResponsePolicy": {}, + * // "defaultRouteAction": {}, + * // "defaultService": "my_defaultService", + * // "defaultUrlRedirect": {}, + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "headerAction": {}, + * // "hostRules": [], + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "pathMatchers": [], + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "tests": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "proxyBind": false, - * // "proxyHeader": "my_proxyHeader", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "service": "my_service" + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -192021,53 +213411,53 @@ export namespace compute_v1 { * @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$Regiontargettcpproxies$Get, + patch( + params: Params$Resource$Regionurlmaps$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Regiontargettcpproxies$Get, + patch( + params?: Params$Resource$Regionurlmaps$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Regiontargettcpproxies$Get, + ): Promise>; + patch( + params: Params$Resource$Regionurlmaps$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regiontargettcpproxies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Regionurlmaps$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Regiontargettcpproxies$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Regionurlmaps$Patch, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Regiontargettcpproxies$Get - | BodyResponseCallback + | Params$Resource$Regionurlmaps$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargettcpproxies$Get; + {}) as Params$Resource$Regionurlmaps$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargettcpproxies$Get; + params = {} as Params$Resource$Regionurlmaps$Patch; options = {}; } @@ -192082,31 +213472,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetTcpProxies/{targetTcpProxy}' + '/compute/v1/projects/{project}/regions/{region}/urlMaps/{urlMap}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'targetTcpProxy'], - pathParams: ['project', 'region', 'targetTcpProxy'], + requiredParams: ['project', 'region', 'urlMap'], + pathParams: ['project', 'region', 'urlMap'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a TargetTcpProxy resource in the specified project and region using - * the data included in the request. + * Updates the specified UrlMap resource with the data included in the + * request. * @example * ```js * // Before running the sample: @@ -192138,41 +213528,38 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetTcpProxies.insert({ + * const res = await compute.regionUrlMaps.update({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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. - * // - * // 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). + * // begin_interface: MixerMutationRequestBuilder + * // Request ID to support idempotency. * requestId: 'placeholder-value', + * // Name of the UrlMap resource to update. + * urlMap: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { * // "creationTimestamp": "my_creationTimestamp", + * // "defaultCustomErrorResponsePolicy": {}, + * // "defaultRouteAction": {}, + * // "defaultService": "my_defaultService", + * // "defaultUrlRedirect": {}, * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "headerAction": {}, + * // "hostRules": [], * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", - * // "proxyBind": false, - * // "proxyHeader": "my_proxyHeader", + * // "pathMatchers": [], * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "service": "my_service" + * // "tests": [] * // } * }, * }); @@ -192185,6 +213572,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -192221,32 +213609,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regiontargettcpproxies$Insert, + update( + params: Params$Resource$Regionurlmaps$Update, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regiontargettcpproxies$Insert, + update( + params?: Params$Resource$Regionurlmaps$Update, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Regiontargettcpproxies$Insert, + update( + params: Params$Resource$Regionurlmaps$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regiontargettcpproxies$Insert, + update( + params: Params$Resource$Regionurlmaps$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regiontargettcpproxies$Insert, + update( + params: Params$Resource$Regionurlmaps$Update, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Regiontargettcpproxies$Insert + | Params$Resource$Regionurlmaps$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -192262,12 +213650,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargettcpproxies$Insert; + {}) as Params$Resource$Regionurlmaps$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargettcpproxies$Insert; + params = {} as Params$Resource$Regionurlmaps$Update; options = {}; } @@ -192282,16 +213670,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetTcpProxies' + '/compute/v1/projects/{project}/regions/{region}/urlMaps/{urlMap}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PUT', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'urlMap'], + pathParams: ['project', 'region', 'urlMap'], context: this.context, }; if (callback) { @@ -192305,8 +213693,9 @@ export namespace compute_v1 { } /** - * Retrieves a list of TargetTcpProxy resources - * available to the specified project in a given region. + * Runs static validation for the UrlMap. In particular, the tests of the + * provided UrlMap will be run. Calling this method does NOT create the + * UrlMap. * @example * ```js * // Before running the sample: @@ -192330,7 +213719,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -192339,111 +213727,28 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionTargetTcpProxies.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.regionUrlMaps.validate({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name of the region scoping this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // Name of the UrlMap resource to be validated as. + * urlMap: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "resource": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "result": {} * // } * } * @@ -192459,53 +213764,57 @@ export namespace compute_v1 { * @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$Regiontargettcpproxies$List, + validate( + params: Params$Resource$Regionurlmaps$Validate, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regiontargettcpproxies$List, + validate( + params?: Params$Resource$Regionurlmaps$Validate, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regiontargettcpproxies$List, + ): Promise>; + validate( + params: Params$Resource$Regionurlmaps$Validate, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regiontargettcpproxies$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + validate( + params: Params$Resource$Regionurlmaps$Validate, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regiontargettcpproxies$List, - callback: BodyResponseCallback + validate( + params: Params$Resource$Regionurlmaps$Validate, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + validate( + callback: BodyResponseCallback + ): void; + validate( paramsOrCallback?: - | Params$Resource$Regiontargettcpproxies$List - | BodyResponseCallback + | Params$Resource$Regionurlmaps$Validate + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regiontargettcpproxies$List; + {}) as Params$Resource$Regionurlmaps$Validate; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regiontargettcpproxies$List; + params = {} as Params$Resource$Regionurlmaps$Validate; options = {}; } @@ -192520,30 +213829,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/targetTcpProxies' + '/compute/v1/projects/{project}/regions/{region}/urlMaps/{urlMap}/validate' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'region', 'urlMap'], + pathParams: ['project', 'region', 'urlMap'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Regiontargettcpproxies$Delete extends StandardParameters { + export interface Params$Resource$Regionurlmaps$Delete extends StandardParameters { /** * Project ID for this request. */ @@ -192553,27 +213862,16 @@ export namespace compute_v1 { */ region?: string; /** - * 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. - * - * 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). + * begin_interface: MixerMutationRequestBuilder + * Request ID to support idempotency. */ requestId?: string; /** - * Name of the TargetTcpProxy resource to delete. + * Name of the UrlMap resource to delete. */ - targetTcpProxy?: string; + urlMap?: string; } - export interface Params$Resource$Regiontargettcpproxies$Get extends StandardParameters { + export interface Params$Resource$Regionurlmaps$Get extends StandardParameters { /** * Project ID for this request. */ @@ -192583,11 +213881,11 @@ export namespace compute_v1 { */ region?: string; /** - * Name of the TargetTcpProxy resource to return. + * Name of the UrlMap resource to return. */ - targetTcpProxy?: string; + urlMap?: string; } - export interface Params$Resource$Regiontargettcpproxies$Insert extends StandardParameters { + export interface Params$Resource$Regionurlmaps$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -192597,28 +213895,17 @@ export namespace compute_v1 { */ region?: string; /** - * 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. - * - * 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). + * begin_interface: MixerMutationRequestBuilder + * Request ID to support idempotency. */ requestId?: string; /** * Request body metadata */ - requestBody?: Schema$TargetTcpProxy; + requestBody?: Schema$UrlMap; } - export interface Params$Resource$Regiontargettcpproxies$List extends StandardParameters { + export interface Params$Resource$Regionurlmaps$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -192726,15 +214013,83 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } + export interface Params$Resource$Regionurlmaps$Patch extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * begin_interface: MixerMutationRequestBuilder + * Request ID to support idempotency. + */ + requestId?: string; + /** + * Name of the UrlMap resource to patch. + */ + urlMap?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$UrlMap; + } + export interface Params$Resource$Regionurlmaps$Update extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * begin_interface: MixerMutationRequestBuilder + * Request ID to support idempotency. + */ + requestId?: string; + /** + * Name of the UrlMap resource to update. + */ + urlMap?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$UrlMap; + } + export interface Params$Resource$Regionurlmaps$Validate extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * Name of the UrlMap resource to be validated as. + */ + urlMap?: string; - export class Resource$Regionurlmaps { + /** + * Request body metadata + */ + requestBody?: Schema$RegionUrlMapsValidateRequest; + } + + export class Resource$Regionzones { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified UrlMap resource. + * Retrieves the list of Zone resources under the specific region available to + * the specified project. * @example * ```js * // Before running the sample: @@ -192758,6 +214113,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -192766,48 +214122,111 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionUrlMaps.delete({ + * const res = await compute.regionZones.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. + * // Region for this request. * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // begin_interface: MixerMutationRequestBuilder - * // Request ID to support idempotency. - * requestId: 'placeholder-value', - * // Name of the UrlMap resource to delete. - * urlMap: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -192823,53 +214242,52 @@ export namespace compute_v1 { * @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$Regionurlmaps$Delete, + list( + params: Params$Resource$Regionzones$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Regionurlmaps$Delete, + list( + params?: Params$Resource$Regionzones$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Regionurlmaps$Delete, + ): Promise>; + list( + params: Params$Resource$Regionzones$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regionurlmaps$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionzones$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Regionurlmaps$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Regionzones$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Regionurlmaps$Delete - | BodyResponseCallback + | Params$Resource$Regionzones$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Regionurlmaps$Delete; + let params = (paramsOrCallback || {}) as Params$Resource$Regionzones$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionurlmaps$Delete; + params = {} as Params$Resource$Regionzones$List; options = {}; } @@ -192883,31 +214301,146 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/urlMaps/{urlMap}' + rootUrl + '/compute/v1/projects/{project}/regions/{region}/zones' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'urlMap'], - pathParams: ['project', 'region', 'urlMap'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + + export interface Params$Resource$Regionzones$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Region for this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Reservationblocks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Returns the specified UrlMap resource. + * Retrieves information about the specified reservation block. * @example * ```js * // Before running the sample: @@ -192940,35 +214473,25 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionUrlMaps.get({ + * const res = await compute.reservationBlocks.get({ * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the UrlMap resource to return. - * urlMap: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * project: 'placeholder-value', + * // The name of the reservation. + * // Name should conform to RFC1035 or be a resource ID. + * reservation: 'placeholder-value', + * // The name of the reservation block. + * // Name should conform to RFC1035 or be a resource ID. + * reservationBlock: 'placeholder-value', + * // View of the Block. + * view: 'placeholder-value', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "defaultCustomErrorResponsePolicy": {}, - * // "defaultRouteAction": {}, - * // "defaultService": "my_defaultService", - * // "defaultUrlRedirect": {}, - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "headerAction": {}, - * // "hostRules": [], - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "pathMatchers": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "tests": [] + * // "resource": {} * // } * } * @@ -192985,52 +214508,56 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Regionurlmaps$Get, + params: Params$Resource$Reservationblocks$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Regionurlmaps$Get, + params?: Params$Resource$Reservationblocks$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Regionurlmaps$Get, + params: Params$Resource$Reservationblocks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionurlmaps$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Reservationblocks$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Regionurlmaps$Get, - callback: BodyResponseCallback + params: Params$Resource$Reservationblocks$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Regionurlmaps$Get - | BodyResponseCallback + | Params$Resource$Reservationblocks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionurlmaps$Get; + {}) as Params$Resource$Reservationblocks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionurlmaps$Get; + params = {} as Params$Resource$Reservationblocks$Get; options = {}; } @@ -193045,7 +214572,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/urlMaps/{urlMap}' + '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -193053,23 +214580,25 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'urlMap'], - pathParams: ['project', 'region', 'urlMap'], + requiredParams: ['project', 'zone', 'reservation', 'reservationBlock'], + pathParams: ['project', 'reservation', 'reservationBlock', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Creates a UrlMap resource in the specified project using - * the data included in the request. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -193084,86 +214613,45 @@ export namespace compute_v1 { * // $ npm install googleapis * // ``` * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.regionUrlMaps.insert({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // begin_interface: MixerMutationRequestBuilder - * // Request ID to support idempotency. - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "defaultCustomErrorResponsePolicy": {}, - * // "defaultRouteAction": {}, - * // "defaultService": "my_defaultService", - * // "defaultUrlRedirect": {}, - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "headerAction": {}, - * // "hostRules": [], - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "pathMatchers": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "tests": [] - * // } - * }, + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.reservationBlocks.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', + * // Name or id of parent resource of the resource for this request. + * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -193179,53 +214667,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Regionurlmaps$Insert, + getIamPolicy( + params: Params$Resource$Reservationblocks$Getiampolicy, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Regionurlmaps$Insert, + getIamPolicy( + params?: Params$Resource$Reservationblocks$Getiampolicy, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Regionurlmaps$Insert, + ): Promise>; + getIamPolicy( + params: Params$Resource$Reservationblocks$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionurlmaps$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Reservationblocks$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Regionurlmaps$Insert, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Reservationblocks$Getiampolicy, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Regionurlmaps$Insert - | BodyResponseCallback + | Params$Resource$Reservationblocks$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionurlmaps$Insert; + {}) as Params$Resource$Reservationblocks$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionurlmaps$Insert; + params = {} as Params$Resource$Reservationblocks$Getiampolicy; options = {}; } @@ -193240,31 +214728,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/urlMaps' + '/compute/v1/projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'zone', 'parentResource', 'resource'], + pathParams: ['parentResource', 'project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of UrlMap resources available to the specified - * project in the specified region. + * Retrieves a list of reservation blocks under a single reservation. * @example * ```js * // Before running the sample: @@ -193297,7 +214784,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionUrlMaps.list({ + * const res = await compute.reservationBlocks.list({ * // 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 @@ -193380,10 +214867,10 @@ export namespace compute_v1 { * // the next page of results. * pageToken: 'placeholder-value', * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * project: 'placeholder-value', + * // The name of the reservation. + * // Name should conform to RFC1035 or be a resource ID. + * reservation: 'placeholder-value', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -193391,6 +214878,8 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -193418,52 +214907,56 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Regionurlmaps$List, + params: Params$Resource$Reservationblocks$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Regionurlmaps$List, + params?: Params$Resource$Reservationblocks$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Regionurlmaps$List, + params: Params$Resource$Reservationblocks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regionurlmaps$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Reservationblocks$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Regionurlmaps$List, - callback: BodyResponseCallback + params: Params$Resource$Reservationblocks$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Regionurlmaps$List - | BodyResponseCallback + | Params$Resource$Reservationblocks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionurlmaps$List; + {}) as Params$Resource$Reservationblocks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionurlmaps$List; + params = {} as Params$Resource$Reservationblocks$List; options = {}; } @@ -193478,7 +214971,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/urlMaps' + '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -193486,25 +214979,24 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'zone', 'reservation'], + pathParams: ['project', 'reservation', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Patches the specified UrlMap resource with the data included in the - * request. This method supportsPATCH - * semantics and usesJSON merge - * patch format and processing rules. + * Allows customers to perform maintenance on a reservation block * @example * ```js * // Before running the sample: @@ -193536,38 +215028,37 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionUrlMaps.patch({ + * const res = await compute.reservationBlocks.performMaintenance({ * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // begin_interface: MixerMutationRequestBuilder - * // Request ID to support idempotency. + * project: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', - * // Name of the UrlMap resource to patch. - * urlMap: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the reservation. + * // Name should conform to RFC1035 or be a resource ID. + * reservation: 'placeholder-value', + * // The name of the reservation block. + * // Name should conform to RFC1035 or be a resource ID. + * reservationBlock: 'placeholder-value', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "defaultCustomErrorResponsePolicy": {}, - * // "defaultRouteAction": {}, - * // "defaultService": "my_defaultService", - * // "defaultUrlRedirect": {}, - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "headerAction": {}, - * // "hostRules": [], - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "pathMatchers": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "tests": [] + * // "maintenanceScope": "my_maintenanceScope" * // } * }, * }); @@ -193580,6 +215071,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -193616,32 +215108,32 @@ export namespace compute_v1 { * @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$Regionurlmaps$Patch, + performMaintenance( + params: Params$Resource$Reservationblocks$Performmaintenance, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Regionurlmaps$Patch, + performMaintenance( + params?: Params$Resource$Reservationblocks$Performmaintenance, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Regionurlmaps$Patch, + performMaintenance( + params: Params$Resource$Reservationblocks$Performmaintenance, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionurlmaps$Patch, + performMaintenance( + params: Params$Resource$Reservationblocks$Performmaintenance, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Regionurlmaps$Patch, + performMaintenance( + params: Params$Resource$Reservationblocks$Performmaintenance, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + performMaintenance(callback: BodyResponseCallback): void; + performMaintenance( paramsOrCallback?: - | Params$Resource$Regionurlmaps$Patch + | Params$Resource$Reservationblocks$Performmaintenance | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -193657,12 +215149,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionurlmaps$Patch; + {}) as Params$Resource$Reservationblocks$Performmaintenance; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionurlmaps$Patch; + params = {} as Params$Resource$Reservationblocks$Performmaintenance; options = {}; } @@ -193677,16 +215169,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/urlMaps/{urlMap}' + '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}/performMaintenance' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'urlMap'], - pathParams: ['project', 'region', 'urlMap'], + requiredParams: ['project', 'zone', 'reservation', 'reservationBlock'], + pathParams: ['project', 'reservation', 'reservationBlock', 'zone'], context: this.context, }; if (callback) { @@ -193700,8 +215192,8 @@ export namespace compute_v1 { } /** - * Updates the specified UrlMap resource with the data included in the - * request. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -193733,38 +215225,24 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionUrlMaps.update({ + * const res = await compute.reservationBlocks.setIamPolicy({ + * // Name or id of parent resource of the resource for this request. + * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // begin_interface: MixerMutationRequestBuilder - * // Request ID to support idempotency. - * requestId: 'placeholder-value', - * // Name of the UrlMap resource to update. - * urlMap: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "defaultCustomErrorResponsePolicy": {}, - * // "defaultRouteAction": {}, - * // "defaultService": "my_defaultService", - * // "defaultUrlRedirect": {}, - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "headerAction": {}, - * // "hostRules": [], - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "pathMatchers": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "tests": [] + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -193772,32 +215250,10 @@ export namespace compute_v1 { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -193813,53 +215269,53 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Regionurlmaps$Update, + setIamPolicy( + params: Params$Resource$Reservationblocks$Setiampolicy, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Regionurlmaps$Update, + setIamPolicy( + params?: Params$Resource$Reservationblocks$Setiampolicy, options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Regionurlmaps$Update, + ): Promise>; + setIamPolicy( + params: Params$Resource$Reservationblocks$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Regionurlmaps$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Reservationblocks$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Regionurlmaps$Update, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Reservationblocks$Setiampolicy, + callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Regionurlmaps$Update - | BodyResponseCallback + | Params$Resource$Reservationblocks$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionurlmaps$Update; + {}) as Params$Resource$Reservationblocks$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionurlmaps$Update; + params = {} as Params$Resource$Reservationblocks$Setiampolicy; options = {}; } @@ -193874,32 +215330,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/urlMaps/{urlMap}' + '/compute/v1/projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'urlMap'], - pathParams: ['project', 'region', 'urlMap'], + requiredParams: ['project', 'zone', 'parentResource', 'resource'], + pathParams: ['parentResource', 'project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Runs static validation for the UrlMap. In particular, the tests of the - * provided UrlMap will be run. Calling this method does NOT create the - * UrlMap. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -193923,6 +215377,7 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -193931,20 +215386,22 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionUrlMaps.validate({ + * const res = await compute.reservationBlocks.testIamPermissions({ + * // Name or id of parent resource of the resource for this request. + * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the UrlMap resource to be validated as. - * urlMap: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "resource": {} + * // "permissions": [] * // } * }, * }); @@ -193952,7 +215409,7 @@ export namespace compute_v1 { * * // Example response * // { - * // "result": {} + * // "permissions": [] * // } * } * @@ -193968,57 +215425,57 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - validate( - params: Params$Resource$Regionurlmaps$Validate, + testIamPermissions( + params: Params$Resource$Reservationblocks$Testiampermissions, options: StreamMethodOptions ): Promise>; - validate( - params?: Params$Resource$Regionurlmaps$Validate, + testIamPermissions( + params?: Params$Resource$Reservationblocks$Testiampermissions, options?: MethodOptions - ): Promise>; - validate( - params: Params$Resource$Regionurlmaps$Validate, + ): Promise>; + testIamPermissions( + params: Params$Resource$Reservationblocks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - validate( - params: Params$Resource$Regionurlmaps$Validate, + testIamPermissions( + params: Params$Resource$Reservationblocks$Testiampermissions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - validate( - params: Params$Resource$Regionurlmaps$Validate, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Reservationblocks$Testiampermissions, + callback: BodyResponseCallback ): void; - validate( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - validate( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Regionurlmaps$Validate - | BodyResponseCallback + | Params$Resource$Reservationblocks$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Regionurlmaps$Validate; + {}) as Params$Resource$Reservationblocks$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionurlmaps$Validate; + params = {} as Params$Resource$Reservationblocks$Testiampermissions; options = {}; } @@ -194033,7 +215490,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/urlMaps/{urlMap}/validate' + '/compute/v1/projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -194041,75 +215498,68 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'urlMap'], - pathParams: ['project', 'region', 'urlMap'], + requiredParams: ['project', 'zone', 'parentResource', 'resource'], + pathParams: ['parentResource', 'project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Regionurlmaps$Delete extends StandardParameters { + export interface Params$Resource$Reservationblocks$Get extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * The name of the reservation. + * Name should conform to RFC1035 or be a resource ID. */ - region?: string; + reservation?: string; /** - * begin_interface: MixerMutationRequestBuilder - * Request ID to support idempotency. + * The name of the reservation block. + * Name should conform to RFC1035 or be a resource ID. */ - requestId?: string; + reservationBlock?: string; /** - * Name of the UrlMap resource to delete. + * View of the Block. */ - urlMap?: string; - } - export interface Params$Resource$Regionurlmaps$Get extends StandardParameters { + view?: string; /** - * Project ID for this request. + * Name of the zone for this request. Zone name should conform to RFC1035. */ - project?: string; + zone?: string; + } + export interface Params$Resource$Reservationblocks$Getiampolicy extends StandardParameters { /** - * Name of the region scoping this request. + * Requested IAM Policy version. */ - region?: string; + optionsRequestedPolicyVersion?: number; /** - * Name of the UrlMap resource to return. + * Name or id of parent resource of the resource for this request. */ - urlMap?: string; - } - export interface Params$Resource$Regionurlmaps$Insert extends StandardParameters { + parentResource?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. - */ - region?: string; - /** - * begin_interface: MixerMutationRequestBuilder - * Request ID to support idempotency. + * Name or id of the resource for this request. */ - requestId?: string; - + resource?: string; /** - * Request body metadata + * The name of the zone for this request. */ - requestBody?: Schema$UrlMap; + zone?: string; } - export interface Params$Resource$Regionurlmaps$List extends StandardParameters { + export interface Params$Resource$Reservationblocks$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -194204,9 +215654,10 @@ export namespace compute_v1 { */ project?: string; /** - * Name of the region scoping this request. + * The name of the reservation. + * Name should conform to RFC1035 or be a resource ID. */ - region?: string; + reservation?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -194216,84 +215667,545 @@ export namespace compute_v1 { * with an error code. */ returnPartialSuccess?: boolean; + /** + * Name of the zone for this request. Zone name should conform to RFC1035. + */ + zone?: string; } - export interface Params$Resource$Regionurlmaps$Patch extends StandardParameters { + export interface Params$Resource$Reservationblocks$Performmaintenance extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * 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. + * + * 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). */ - region?: string; + requestId?: string; /** - * begin_interface: MixerMutationRequestBuilder - * Request ID to support idempotency. + * The name of the reservation. + * Name should conform to RFC1035 or be a resource ID. */ - requestId?: string; + reservation?: string; /** - * Name of the UrlMap resource to patch. + * The name of the reservation block. + * Name should conform to RFC1035 or be a resource ID. */ - urlMap?: string; + reservationBlock?: string; + /** + * Name of the zone for this request. Zone name should conform to RFC1035. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$UrlMap; + requestBody?: Schema$ReservationsBlocksPerformMaintenanceRequest; } - export interface Params$Resource$Regionurlmaps$Update extends StandardParameters { + export interface Params$Resource$Reservationblocks$Setiampolicy extends StandardParameters { /** - * Project ID for this request. + * Name or id of parent resource of the resource for this request. */ - project?: string; + parentResource?: string; /** - * Name of the region scoping this request. + * Project ID for this request. */ - region?: string; + project?: string; /** - * begin_interface: MixerMutationRequestBuilder - * Request ID to support idempotency. + * Name or id of the resource for this request. */ - requestId?: string; + resource?: string; /** - * Name of the UrlMap resource to update. + * The name of the zone for this request. */ - urlMap?: string; + zone?: string; /** * Request body metadata */ - requestBody?: Schema$UrlMap; + requestBody?: Schema$ZoneSetNestedPolicyRequest; } - export interface Params$Resource$Regionurlmaps$Validate extends StandardParameters { + export interface Params$Resource$Reservationblocks$Testiampermissions extends StandardParameters { + /** + * Name or id of parent resource of the resource for this request. + */ + parentResource?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region scoping this request. + * Name or id of the resource for this request. */ - region?: string; + resource?: string; /** - * Name of the UrlMap resource to be validated as. + * The name of the zone for this request. */ - urlMap?: string; + zone?: string; /** * Request body metadata */ - requestBody?: Schema$RegionUrlMapsValidateRequest; + requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Regionzones { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + export class Resource$Reservations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves an aggregated list of reservations. + * + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.reservations.aggregatedList({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + aggregatedList( + params: Params$Resource$Reservations$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Reservations$Aggregatedlist, + options?: MethodOptions + ): Promise>; + aggregatedList( + params: Params$Resource$Reservations$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Reservations$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Reservations$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Reservations$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Reservations$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Reservations$Aggregatedlist; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/projects/{project}/aggregated/reservations' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified reservation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.reservations.delete({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the reservation to delete. + * reservation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Reservations$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Reservations$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Reservations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Reservations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Reservations$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Reservations$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Reservations$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Reservations$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'reservation'], + pathParams: ['project', 'reservation', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Retrieves the list of Zone resources under the specific region available to - * the specified project. + * Retrieves information about the specified reservation. * @example * ```js * // Before running the sample: @@ -194326,111 +216238,47 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.regionZones.list({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.reservations.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // Name of the reservation to retrieve. + * reservation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "advancedDeploymentControl": {}, + * // "aggregateReservation": {}, + * // "commitment": "my_commitment", + * // "confidentialComputeType": "my_confidentialComputeType", + * // "creationTimestamp": "my_creationTimestamp", + * // "deleteAfterDuration": {}, + * // "deleteAtTime": "my_deleteAtTime", + * // "deploymentType": "my_deploymentType", + * // "description": "my_description", + * // "earlyAccessMaintenance": "my_earlyAccessMaintenance", + * // "enableEmergentMaintenance": false, * // "id": "my_id", - * // "items": [], * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "linkedCommitments": [], + * // "name": "my_name", + * // "params": {}, + * // "protectionTier": "my_protectionTier", + * // "reservationSharingPolicy": {}, + * // "resourcePolicies": {}, + * // "resourceStatus": {}, + * // "satisfiesPzs": false, + * // "schedulingType": "my_schedulingType", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "shareSettings": {}, + * // "specificReservation": {}, + * // "specificReservationRequired": false, + * // "status": "my_status", + * // "zone": "my_zone" * // } * } * @@ -194446,52 +216294,52 @@ export namespace compute_v1 { * @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$Regionzones$List, + get( + params: Params$Resource$Reservations$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Regionzones$List, + get( + params?: Params$Resource$Reservations$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Regionzones$List, + ): Promise>; + get( + params: Params$Resource$Reservations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionzones$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Reservations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Regionzones$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Reservations$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Regionzones$List - | BodyResponseCallback + | Params$Resource$Reservations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Regionzones$List; + let params = (paramsOrCallback || {}) as Params$Resource$Reservations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Regionzones$List; + params = {} as Params$Resource$Reservations$Get; options = {}; } @@ -194505,7 +216353,8 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/regions/{region}/zones' + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -194513,138 +216362,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'zone', 'reservation'], + pathParams: ['project', 'reservation', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Regionzones$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Region for this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - - export class Resource$Reservationblocks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Retrieves information about the specified reservation block. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -194677,25 +216411,25 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationBlocks.get({ + * const res = await compute.reservations.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. - * project: 'placeholder-value', - * // The name of the reservation. - * // Name should conform to RFC1035 or be a resource ID. - * reservation: 'placeholder-value', - * // The name of the reservation block. - * // Name should conform to RFC1035 or be a resource ID. - * reservationBlock: 'placeholder-value', - * // View of the Block. - * view: 'placeholder-value', - * // Name of the zone for this request. Zone name should conform to RFC1035. - * zone: 'placeholder-value', + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "resource": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -194711,57 +216445,53 @@ export namespace compute_v1 { * @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$Reservationblocks$Get, + getIamPolicy( + params: Params$Resource$Reservations$Getiampolicy, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Reservationblocks$Get, + getIamPolicy( + params?: Params$Resource$Reservations$Getiampolicy, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Reservationblocks$Get, + ): Promise>; + getIamPolicy( + params: Params$Resource$Reservations$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Reservationblocks$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Reservationblocks$Get, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Reservations$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Reservations$Getiampolicy, + callback: BodyResponseCallback ): void; - get( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Reservationblocks$Get - | BodyResponseCallback + | Params$Resource$Reservations$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationblocks$Get; + {}) as Params$Resource$Reservations$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationblocks$Get; + params = {} as Params$Resource$Reservations$Getiampolicy; options = {}; } @@ -194776,7 +216506,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}' + '/compute/v1/projects/{project}/zones/{zone}/reservations/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -194784,25 +216514,23 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'reservation', 'reservationBlock'], - pathParams: ['project', 'reservation', 'reservationBlock', 'zone'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Creates a new reservation. For more information, readReserving zonal + * resources. * @example * ```js * // Before running the sample: @@ -194826,7 +216554,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -194835,27 +216562,93 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationBlocks.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', - * // Name or id of parent resource of the resource for this request. - * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', + * const res = await compute.reservations.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advancedDeploymentControl": {}, + * // "aggregateReservation": {}, + * // "commitment": "my_commitment", + * // "confidentialComputeType": "my_confidentialComputeType", + * // "creationTimestamp": "my_creationTimestamp", + * // "deleteAfterDuration": {}, + * // "deleteAtTime": "my_deleteAtTime", + * // "deploymentType": "my_deploymentType", + * // "description": "my_description", + * // "earlyAccessMaintenance": "my_earlyAccessMaintenance", + * // "enableEmergentMaintenance": false, + * // "id": "my_id", + * // "kind": "my_kind", + * // "linkedCommitments": [], + * // "name": "my_name", + * // "params": {}, + * // "protectionTier": "my_protectionTier", + * // "reservationSharingPolicy": {}, + * // "resourcePolicies": {}, + * // "resourceStatus": {}, + * // "satisfiesPzs": false, + * // "schedulingType": "my_schedulingType", + * // "selfLink": "my_selfLink", + * // "shareSettings": {}, + * // "specificReservation": {}, + * // "specificReservationRequired": false, + * // "status": "my_status", + * // "zone": "my_zone" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -194871,53 +216664,53 @@ export namespace compute_v1 { * @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$Reservationblocks$Getiampolicy, + insert( + params: Params$Resource$Reservations$Insert, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Reservationblocks$Getiampolicy, + insert( + params?: Params$Resource$Reservations$Insert, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Reservationblocks$Getiampolicy, + ): Promise>; + insert( + params: Params$Resource$Reservations$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Reservationblocks$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Reservations$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Reservationblocks$Getiampolicy, - callback: BodyResponseCallback + insert( + params: Params$Resource$Reservations$Insert, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Reservationblocks$Getiampolicy - | BodyResponseCallback + | Params$Resource$Reservations$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationblocks$Getiampolicy; + {}) as Params$Resource$Reservations$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationblocks$Getiampolicy; + params = {} as Params$Resource$Reservations$Insert; options = {}; } @@ -194932,30 +216725,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/reservations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'parentResource', 'resource'], - pathParams: ['parentResource', 'project', 'resource', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of reservation blocks under a single reservation. + * A list of all the reservations that have been configured for the + * specified project in specified zone. * @example * ```js * // Before running the sample: @@ -194988,7 +216782,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationBlocks.list({ + * const res = await compute.reservations.list({ * // 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 @@ -195071,10 +216865,8 @@ export namespace compute_v1 { * // the next page of results. * pageToken: 'placeholder-value', * // Project ID for this request. - * project: 'placeholder-value', - * // The name of the reservation. - * // Name should conform to RFC1035 or be a resource ID. - * reservation: 'placeholder-value', + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -195082,8 +216874,8 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // Name of the zone for this request. Zone name should conform to RFC1035. - * zone: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -195111,56 +216903,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Reservationblocks$List, + params: Params$Resource$Reservations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Reservationblocks$List, + params?: Params$Resource$Reservations$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Reservationblocks$List, + params: Params$Resource$Reservations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Reservationblocks$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Reservationblocks$List, - callback: BodyResponseCallback + params: Params$Resource$Reservations$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Reservations$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Reservationblocks$List - | BodyResponseCallback + | Params$Resource$Reservations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationblocks$List; + {}) as Params$Resource$Reservations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationblocks$List; + params = {} as Params$Resource$Reservations$List; options = {}; } @@ -195175,7 +216963,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks' + '/compute/v1/projects/{project}/zones/{zone}/reservations' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -195183,24 +216971,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'reservation'], - pathParams: ['project', 'reservation', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Allows customers to perform maintenance on a reservation block + * Perform maintenance on an extended reservation * @example * ```js * // Before running the sample: @@ -195232,7 +217018,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationBlocks.performMaintenance({ + * const res = await compute.reservations.performMaintenance({ * // Project ID for this request. * project: 'placeholder-value', * // An optional request ID to identify requests. Specify a unique request ID so @@ -195251,10 +217037,7 @@ export namespace compute_v1 { * requestId: 'placeholder-value', * // The name of the reservation. * // Name should conform to RFC1035 or be a resource ID. - * reservation: 'placeholder-value', - * // The name of the reservation block. - * // Name should conform to RFC1035 or be a resource ID. - * reservationBlock: 'placeholder-value', + * reservation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Name of the zone for this request. Zone name should conform to RFC1035. * zone: 'placeholder-value', * @@ -195275,6 +217058,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -195312,31 +217096,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ performMaintenance( - params: Params$Resource$Reservationblocks$Performmaintenance, + params: Params$Resource$Reservations$Performmaintenance, options: StreamMethodOptions ): Promise>; performMaintenance( - params?: Params$Resource$Reservationblocks$Performmaintenance, + params?: Params$Resource$Reservations$Performmaintenance, options?: MethodOptions ): Promise>; performMaintenance( - params: Params$Resource$Reservationblocks$Performmaintenance, + params: Params$Resource$Reservations$Performmaintenance, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; performMaintenance( - params: Params$Resource$Reservationblocks$Performmaintenance, + params: Params$Resource$Reservations$Performmaintenance, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; performMaintenance( - params: Params$Resource$Reservationblocks$Performmaintenance, + params: Params$Resource$Reservations$Performmaintenance, callback: BodyResponseCallback ): void; performMaintenance(callback: BodyResponseCallback): void; performMaintenance( paramsOrCallback?: - | Params$Resource$Reservationblocks$Performmaintenance + | Params$Resource$Reservations$Performmaintenance | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -195352,12 +217136,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationblocks$Performmaintenance; + {}) as Params$Resource$Reservations$Performmaintenance; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationblocks$Performmaintenance; + params = {} as Params$Resource$Reservations$Performmaintenance; options = {}; } @@ -195372,7 +217156,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}/reservationBlocks/{reservationBlock}/performMaintenance' + '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}/performMaintenance' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -195380,8 +217164,203 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'reservation', 'reservationBlock'], - pathParams: ['project', 'reservation', 'reservationBlock', 'zone'], + requiredParams: ['project', 'zone', 'reservation'], + pathParams: ['project', 'reservation', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Resizes the reservation (applicable to standalone reservations only). For + * more information, readModifying + * reservations. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.reservations.resize({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the reservation to update. + * reservation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "specificSkuCount": "my_specificSkuCount" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + resize( + params: Params$Resource$Reservations$Resize, + options: StreamMethodOptions + ): Promise>; + resize( + params?: Params$Resource$Reservations$Resize, + options?: MethodOptions + ): Promise>; + resize( + params: Params$Resource$Reservations$Resize, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resize( + params: Params$Resource$Reservations$Resize, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resize( + params: Params$Resource$Reservations$Resize, + callback: BodyResponseCallback + ): void; + resize(callback: BodyResponseCallback): void; + resize( + paramsOrCallback?: + | Params$Resource$Reservations$Resize + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Reservations$Resize; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Reservations$Resize; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}/resize' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'reservation'], + pathParams: ['project', 'reservation', 'zone'], context: this.context, }; if (callback) { @@ -195428,9 +217407,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationBlocks.setIamPolicy({ - * // Name or id of parent resource of the resource for this request. - * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', + * const res = await compute.reservations.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -195453,10 +217430,164 @@ export namespace compute_v1 { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Reservations$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Reservations$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Reservations$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Reservations$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Reservations$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Reservations$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Reservations$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Reservations$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/reservations/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.reservations.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] * // } * } * @@ -195472,53 +217603,57 @@ export namespace compute_v1 { * @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$Reservationblocks$Setiampolicy, + testIamPermissions( + params: Params$Resource$Reservations$Testiampermissions, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Reservationblocks$Setiampolicy, + testIamPermissions( + params?: Params$Resource$Reservations$Testiampermissions, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Reservationblocks$Setiampolicy, + ): Promise>; + testIamPermissions( + params: Params$Resource$Reservations$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Reservationblocks$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Reservations$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Reservationblocks$Setiampolicy, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Reservations$Testiampermissions, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Reservationblocks$Setiampolicy - | BodyResponseCallback + | Params$Resource$Reservations$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationblocks$Setiampolicy; + {}) as Params$Resource$Reservations$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationblocks$Setiampolicy; + params = {} as Params$Resource$Reservations$Testiampermissions; options = {}; } @@ -195533,7 +217668,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/reservations/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -195541,22 +217676,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'parentResource', 'resource'], - pathParams: ['parentResource', 'project', 'resource', 'zone'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Update share settings of the reservation. * @example * ```js * // Before running the sample: @@ -195580,7 +217715,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -195589,22 +217723,64 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationBlocks.testIamPermissions({ - * // Name or id of parent resource of the resource for this request. - * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', + * const res = await compute.reservations.update({ + * paths: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the reservation to update. + * reservation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', + * // Name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "advancedDeploymentControl": {}, + * // "aggregateReservation": {}, + * // "commitment": "my_commitment", + * // "confidentialComputeType": "my_confidentialComputeType", + * // "creationTimestamp": "my_creationTimestamp", + * // "deleteAfterDuration": {}, + * // "deleteAtTime": "my_deleteAtTime", + * // "deploymentType": "my_deploymentType", + * // "description": "my_description", + * // "earlyAccessMaintenance": "my_earlyAccessMaintenance", + * // "enableEmergentMaintenance": false, + * // "id": "my_id", + * // "kind": "my_kind", + * // "linkedCommitments": [], + * // "name": "my_name", + * // "params": {}, + * // "protectionTier": "my_protectionTier", + * // "reservationSharingPolicy": {}, + * // "resourcePolicies": {}, + * // "resourceStatus": {}, + * // "satisfiesPzs": false, + * // "schedulingType": "my_schedulingType", + * // "selfLink": "my_selfLink", + * // "shareSettings": {}, + * // "specificReservation": {}, + * // "specificReservationRequired": false, + * // "status": "my_status", + * // "zone": "my_zone" * // } * }, * }); @@ -195612,7 +217788,33 @@ export namespace compute_v1 { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -195628,57 +217830,53 @@ export namespace compute_v1 { * @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$Reservationblocks$Testiampermissions, + update( + params: Params$Resource$Reservations$Update, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Reservationblocks$Testiampermissions, + update( + params?: Params$Resource$Reservations$Update, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Reservationblocks$Testiampermissions, + ): Promise>; + update( + params: Params$Resource$Reservations$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Reservationblocks$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Reservationblocks$Testiampermissions, - callback: BodyResponseCallback + update( + params: Params$Resource$Reservations$Update, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + update( + params: Params$Resource$Reservations$Update, + callback: BodyResponseCallback ): void; - testIamPermissions( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Reservationblocks$Testiampermissions - | BodyResponseCallback + | Params$Resource$Reservations$Update + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationblocks$Testiampermissions; + {}) as Params$Resource$Reservations$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationblocks$Testiampermissions; + params = {} as Params$Resource$Reservations$Update; options = {}; } @@ -195693,62 +217891,197 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{parentResource}/reservationBlocks/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'parentResource', 'resource'], - pathParams: ['parentResource', 'project', 'resource', 'zone'], + requiredParams: ['project', 'zone', 'reservation'], + pathParams: ['project', 'reservation', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Reservationblocks$Get extends StandardParameters { + export interface Params$Resource$Reservations$Aggregatedlist 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. + * 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 onresource 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 GoogleRE2 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; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the reservation. - * Name should conform to RFC1035 or be a resource ID. + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Reservations$Delete extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * Name of the reservation to delete. */ reservation?: string; /** - * The name of the reservation block. - * Name should conform to RFC1035 or be a resource ID. + * Name of the zone for this request. */ - reservationBlock?: string; + zone?: string; + } + export interface Params$Resource$Reservations$Get extends StandardParameters { /** - * View of the Block. + * Project ID for this request. */ - view?: string; + project?: string; /** - * Name of the zone for this request. Zone name should conform to RFC1035. + * Name of the reservation to retrieve. + */ + reservation?: string; + /** + * Name of the zone for this request. */ zone?: string; } - export interface Params$Resource$Reservationblocks$Getiampolicy extends StandardParameters { + export interface Params$Resource$Reservations$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ optionsRequestedPolicyVersion?: number; - /** - * Name or id of parent resource of the resource for this request. - */ - parentResource?: string; /** * Project ID for this request. */ @@ -195762,7 +218095,38 @@ export namespace compute_v1 { */ zone?: string; } - export interface Params$Resource$Reservationblocks$List extends StandardParameters { + export interface Params$Resource$Reservations$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * Name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Reservation; + } + export interface Params$Resource$Reservations$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -195856,11 +218220,6 @@ export namespace compute_v1 { * Project ID for this request. */ project?: string; - /** - * The name of the reservation. - * Name should conform to RFC1035 or be a resource ID. - */ - reservation?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -195871,11 +218230,11 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; /** - * Name of the zone for this request. Zone name should conform to RFC1035. + * Name of the zone for this request. */ zone?: string; } - export interface Params$Resource$Reservationblocks$Performmaintenance extends StandardParameters { + export interface Params$Resource$Reservations$Performmaintenance extends StandardParameters { /** * Project ID for this request. */ @@ -195901,11 +218260,6 @@ export namespace compute_v1 { * Name should conform to RFC1035 or be a resource ID. */ reservation?: string; - /** - * The name of the reservation block. - * Name should conform to RFC1035 or be a resource ID. - */ - reservationBlock?: string; /** * Name of the zone for this request. Zone name should conform to RFC1035. */ @@ -195914,13 +218268,44 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$ReservationsBlocksPerformMaintenanceRequest; + requestBody?: Schema$ReservationsPerformMaintenanceRequest; } - export interface Params$Resource$Reservationblocks$Setiampolicy extends StandardParameters { + export interface Params$Resource$Reservations$Resize extends StandardParameters { /** - * Name or id of parent resource of the resource for this request. + * Project ID for this request. */ - parentResource?: string; + project?: string; + /** + * 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. + * + * 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; + /** + * Name of the reservation to update. + */ + reservation?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ReservationsResizeRequest; + } + export interface Params$Resource$Reservations$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -195937,13 +218322,9 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$ZoneSetNestedPolicyRequest; + requestBody?: Schema$ZoneSetPolicyRequest; } - export interface Params$Resource$Reservationblocks$Testiampermissions extends StandardParameters { - /** - * Name or id of parent resource of the resource for this request. - */ - parentResource?: string; + export interface Params$Resource$Reservations$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -195962,18 +218343,409 @@ export namespace compute_v1 { */ requestBody?: Schema$TestPermissionsRequest; } + export interface Params$Resource$Reservations$Update extends StandardParameters { + /** + * + */ + paths?: string[]; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * Name of the reservation to update. + */ + reservation?: string; + /** + * Update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; + /** + * Name of the zone for this request. + */ + zone?: string; - export class Resource$Reservations { + /** + * Request body metadata + */ + requestBody?: Schema$Reservation; + } + + export class Resource$Reservationslots { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of reservations. + * Retrieves information about the specified reservation slot. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * To prevent failure, it is recommended that you set the - * `returnPartialSuccess` parameter to `true`. + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.reservationSlots.get({ + * // The name of the parent reservation and parent block, formatted as + * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} + * parentName: + * 'reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})', + * // The project ID for this request. + * project: 'placeholder-value', + * // The name of the reservation slot, formatted as RFC1035 or a resource ID + * // number. + * reservationSlot: 'placeholder-value', + * // The name of the zone for this request, formatted as RFC1035. + * zone: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "resource": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Reservationslots$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Reservationslots$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Reservationslots$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Reservationslots$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Reservationslots$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Reservationslots$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Reservationslots$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Reservationslots$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'parentName', 'reservationSlot'], + pathParams: ['parentName', 'project', 'reservationSlot', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Allows customers to get SBOM versions of a reservation slot. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.reservationSlots.getVersion({ + * // The name of the parent reservation and parent block. In the format of + * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} + * parentName: + * 'reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})', + * // Project ID for this request. + * project: 'placeholder-value', + * // 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. + * // + * // 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: 'placeholder-value', + * // The name of the reservation slot. + * // Name should conform to RFC1035 or be a resource ID. + * reservationSlot: 'placeholder-value', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "sbomSelections": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getVersion( + params: Params$Resource$Reservationslots$Getversion, + options: StreamMethodOptions + ): Promise>; + getVersion( + params?: Params$Resource$Reservationslots$Getversion, + options?: MethodOptions + ): Promise>; + getVersion( + params: Params$Resource$Reservationslots$Getversion, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getVersion( + params: Params$Resource$Reservationslots$Getversion, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getVersion( + params: Params$Resource$Reservationslots$Getversion, + callback: BodyResponseCallback + ): void; + getVersion(callback: BodyResponseCallback): void; + getVersion( + paramsOrCallback?: + | Params$Resource$Reservationslots$Getversion + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Reservationslots$Getversion; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Reservationslots$Getversion; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}/getVersion' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'parentName', 'reservationSlot'], + pathParams: ['parentName', 'project', 'reservationSlot', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a list of reservation slots under a single reservation. * @example * ```js * // Before running the sample: @@ -196006,7 +218778,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservations.aggregatedList({ + * const res = await compute.reservationSlots.list({ * // 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 @@ -196066,14 +218838,6 @@ export namespace compute_v1 { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -196096,9 +218860,12 @@ export namespace compute_v1 { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the parent reservation and parent block, formatted as + * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} + * parentName: + * 'reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})', + * // The project ID for this request. + * project: 'placeholder-value', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -196106,20 +218873,18 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // The name of the zone for this request, formatted as RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "id": "my_id", - * // "items": {}, + * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -196136,57 +218901,57 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Reservations$Aggregatedlist, + list( + params: Params$Resource$Reservationslots$List, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Reservations$Aggregatedlist, + list( + params?: Params$Resource$Reservationslots$List, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Reservations$Aggregatedlist, + ): Promise>; + list( + params: Params$Resource$Reservationslots$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Reservations$Aggregatedlist, + list( + params: Params$Resource$Reservationslots$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Reservations$Aggregatedlist, - callback: BodyResponseCallback + list( + params: Params$Resource$Reservationslots$List, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - aggregatedList( + list( paramsOrCallback?: - | Params$Resource$Reservations$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Reservationslots$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservations$Aggregatedlist; + {}) as Params$Resource$Reservationslots$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservations$Aggregatedlist; + params = {} as Params$Resource$Reservationslots$List; options = {}; } @@ -196200,7 +218965,8 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/aggregated/reservations' + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSlots' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -196208,22 +218974,24 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'parentName'], + pathParams: ['parentName', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes the specified reservation. + * Update a reservation slot in the specified sub-block. * @example * ```js * // Before running the sample: @@ -196255,28 +219023,36 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservations.delete({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', - * // Name of the reservation to delete. - * reservation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.reservationSlots.update({ + * // The name of the sub-block resource. + * parentName: + * 'reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})', + * // The project ID for this request. + * project: 'placeholder-value', + * // The name of the slot resource. + * reservationSlot: 'placeholder-value', + * // The fields to be updated as part of this request. + * updateMask: 'placeholder-value', + * // The name of the zone for this request, formatted as RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "physicalTopology": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shareSettings": {}, + * // "state": "my_state", + * // "status": {}, + * // "zone": "my_zone" + * // } + * }, * }); * console.log(res.data); * @@ -196287,6 +219063,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -196323,32 +219100,32 @@ export namespace compute_v1 { * @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$Reservations$Delete, + update( + params: Params$Resource$Reservationslots$Update, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Reservations$Delete, + update( + params?: Params$Resource$Reservationslots$Update, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Reservations$Delete, + update( + params: Params$Resource$Reservationslots$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Reservations$Delete, + update( + params: Params$Resource$Reservationslots$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Reservations$Delete, + update( + params: Params$Resource$Reservationslots$Update, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Reservations$Delete + | Params$Resource$Reservationslots$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -196364,12 +219141,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservations$Delete; + {}) as Params$Resource$Reservationslots$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservations$Delete; + params = {} as Params$Resource$Reservationslots$Update; options = {}; } @@ -196384,16 +219161,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}' + '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'reservation'], - pathParams: ['project', 'reservation', 'zone'], + requiredParams: ['project', 'zone', 'parentName', 'reservationSlot'], + pathParams: ['parentName', 'project', 'reservationSlot', 'zone'], context: this.context, }; if (callback) { @@ -196405,9 +219182,218 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Reservationslots$Get extends StandardParameters { /** - * Retrieves information about the specified reservation. + * The name of the parent reservation and parent block, formatted as + * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} + */ + parentName?: string; + /** + * The project ID for this request. + */ + project?: string; + /** + * The name of the reservation slot, formatted as RFC1035 or a resource ID + * number. + */ + reservationSlot?: string; + /** + * The name of the zone for this request, formatted as RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Reservationslots$Getversion extends StandardParameters { + /** + * The name of the parent reservation and parent block. In the format of + * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} + */ + parentName?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * The name of the reservation slot. + * Name should conform to RFC1035 or be a resource ID. + */ + reservationSlot?: string; + /** + * Name of the zone for this request. Zone name should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ReservationSlotsGetVersionRequest; + } + export interface Params$Resource$Reservationslots$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * The name of the parent reservation and parent block, formatted as + * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} + */ + parentName?: string; + /** + * The project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of the zone for this request, formatted as RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Reservationslots$Update extends StandardParameters { + /** + * The name of the sub-block resource. + */ + parentName?: string; + /** + * The project ID for this request. + */ + project?: string; + /** + * The name of the slot resource. + */ + reservationSlot?: string; + /** + * The fields to be updated as part of this request. + */ + updateMask?: string; + /** + * The name of the zone for this request, formatted as RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ReservationSlot; + } + + export class Resource$Reservationsubblocks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves information about the specified reservation subBlock. * @example * ```js * // Before running the sample: @@ -196440,46 +219426,26 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservations.get({ + * const res = await compute.reservationSubBlocks.get({ + * // The name of the parent reservation and parent block. In the format of + * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} + * parentName: + * 'reservations/my-reservation/reservationBlocks/my-reservationBlock', * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the reservation to retrieve. - * reservation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * project: 'placeholder-value', + * // The name of the reservation subBlock. + * // Name should conform to RFC1035 or be a resource ID. + * reservationSubBlock: 'placeholder-value', + * // View of the subBlock. + * view: 'placeholder-value', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "advancedDeploymentControl": {}, - * // "aggregateReservation": {}, - * // "commitment": "my_commitment", - * // "creationTimestamp": "my_creationTimestamp", - * // "deleteAfterDuration": {}, - * // "deleteAtTime": "my_deleteAtTime", - * // "deploymentType": "my_deploymentType", - * // "description": "my_description", - * // "earlyAccessMaintenance": "my_earlyAccessMaintenance", - * // "enableEmergentMaintenance": false, - * // "id": "my_id", - * // "kind": "my_kind", - * // "linkedCommitments": [], - * // "name": "my_name", - * // "params": {}, - * // "protectionTier": "my_protectionTier", - * // "reservationSharingPolicy": {}, - * // "resourcePolicies": {}, - * // "resourceStatus": {}, - * // "satisfiesPzs": false, - * // "schedulingType": "my_schedulingType", - * // "selfLink": "my_selfLink", - * // "shareSettings": {}, - * // "specificReservation": {}, - * // "specificReservationRequired": false, - * // "status": "my_status", - * // "zone": "my_zone" + * // "resource": {} * // } * } * @@ -196496,51 +219462,56 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Reservations$Get, + params: Params$Resource$Reservationsubblocks$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Reservations$Get, + params?: Params$Resource$Reservationsubblocks$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Reservations$Get, + params: Params$Resource$Reservationsubblocks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Reservations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Reservationsubblocks$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Reservations$Get, - callback: BodyResponseCallback + params: Params$Resource$Reservationsubblocks$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Reservations$Get - | BodyResponseCallback + | Params$Resource$Reservationsubblocks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Reservations$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Reservationsubblocks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservations$Get; + params = {} as Params$Resource$Reservationsubblocks$Get; options = {}; } @@ -196555,7 +219526,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}' + '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -196563,17 +219534,24 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'reservation'], - pathParams: ['project', 'reservation', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'parentName', + 'reservationSubBlock', + ], + pathParams: ['parentName', 'project', 'reservationSubBlock', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } @@ -196612,9 +219590,11 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservations.getIamPolicy({ + * const res = await compute.reservationSubBlocks.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', + * // Name or id of parent resource of the resource for this request. + * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -196647,31 +219627,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Reservations$Getiampolicy, + params: Params$Resource$Reservationsubblocks$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Reservations$Getiampolicy, + params?: Params$Resource$Reservationsubblocks$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Reservations$Getiampolicy, + params: Params$Resource$Reservationsubblocks$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Reservations$Getiampolicy, + params: Params$Resource$Reservationsubblocks$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Reservations$Getiampolicy, + params: Params$Resource$Reservationsubblocks$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Reservations$Getiampolicy + | Params$Resource$Reservationsubblocks$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -196687,12 +219667,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservations$Getiampolicy; + {}) as Params$Resource$Reservationsubblocks$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservations$Getiampolicy; + params = {} as Params$Resource$Reservationsubblocks$Getiampolicy; options = {}; } @@ -196707,7 +219687,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -196715,8 +219695,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'zone', 'parentResource', 'resource'], + pathParams: ['parentResource', 'project', 'resource', 'zone'], context: this.context, }; if (callback) { @@ -196730,8 +219710,7 @@ export namespace compute_v1 { } /** - * Creates a new reservation. For more information, readReserving zonal - * resources. + * Allows customers to get SBOM versions of a reservation subBlock. * @example * ```js * // Before running the sample: @@ -196763,10 +219742,13 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservations.insert({ + * const res = await compute.reservationSubBlocks.getVersion({ + * // The name of the parent reservation and parent block. In the format of + * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} + * parentName: + * 'reservations/my-reservation/reservationBlocks/my-reservationBlock', * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * project: 'placeholder-value', * // 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. @@ -196781,40 +219763,17 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the reservation subBlock. + * // Name should conform to RFC1035 or be a resource ID. + * reservationSubBlock: 'placeholder-value', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "advancedDeploymentControl": {}, - * // "aggregateReservation": {}, - * // "commitment": "my_commitment", - * // "creationTimestamp": "my_creationTimestamp", - * // "deleteAfterDuration": {}, - * // "deleteAtTime": "my_deleteAtTime", - * // "deploymentType": "my_deploymentType", - * // "description": "my_description", - * // "earlyAccessMaintenance": "my_earlyAccessMaintenance", - * // "enableEmergentMaintenance": false, - * // "id": "my_id", - * // "kind": "my_kind", - * // "linkedCommitments": [], - * // "name": "my_name", - * // "params": {}, - * // "protectionTier": "my_protectionTier", - * // "reservationSharingPolicy": {}, - * // "resourcePolicies": {}, - * // "resourceStatus": {}, - * // "satisfiesPzs": false, - * // "schedulingType": "my_schedulingType", - * // "selfLink": "my_selfLink", - * // "shareSettings": {}, - * // "specificReservation": {}, - * // "specificReservationRequired": false, - * // "status": "my_status", - * // "zone": "my_zone" + * // "sbomSelections": [] * // } * }, * }); @@ -196827,6 +219786,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -196863,32 +219823,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Reservations$Insert, + getVersion( + params: Params$Resource$Reservationsubblocks$Getversion, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Reservations$Insert, + getVersion( + params?: Params$Resource$Reservationsubblocks$Getversion, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Reservations$Insert, + getVersion( + params: Params$Resource$Reservationsubblocks$Getversion, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Reservations$Insert, + getVersion( + params: Params$Resource$Reservationsubblocks$Getversion, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Reservations$Insert, + getVersion( + params: Params$Resource$Reservationsubblocks$Getversion, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + getVersion(callback: BodyResponseCallback): void; + getVersion( paramsOrCallback?: - | Params$Resource$Reservations$Insert + | Params$Resource$Reservationsubblocks$Getversion | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -196904,12 +219864,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservations$Insert; + {}) as Params$Resource$Reservationsubblocks$Getversion; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservations$Insert; + params = {} as Params$Resource$Reservationsubblocks$Getversion; options = {}; } @@ -196924,7 +219884,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations' + '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}/getVersion' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -196932,8 +219892,13 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'parentName', + 'reservationSubBlock', + ], + pathParams: ['parentName', 'project', 'reservationSubBlock', 'zone'], context: this.context, }; if (callback) { @@ -196947,8 +219912,7 @@ export namespace compute_v1 { } /** - * A list of all the reservations that have been configured for the - * specified project in specified zone. + * Retrieves a list of reservation subBlocks under a single reservation. * @example * ```js * // Before running the sample: @@ -196981,7 +219945,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservations.list({ + * const res = await compute.reservationSubBlocks.list({ * // 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 @@ -197063,9 +220027,12 @@ export namespace compute_v1 { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', + * // The name of the parent reservation and parent block. In the format of + * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} + * parentName: + * 'reservations/my-reservation/reservationBlocks/my-reservationBlock', * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * project: 'placeholder-value', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -197073,8 +220040,8 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // Name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -197102,52 +220069,60 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Reservations$List, + params: Params$Resource$Reservationsubblocks$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Reservations$List, + params?: Params$Resource$Reservationsubblocks$List, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; list( - params: Params$Resource$Reservations$List, + params: Params$Resource$Reservationsubblocks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Reservations$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Reservationsubblocks$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Reservations$List, - callback: BodyResponseCallback + params: Params$Resource$Reservationsubblocks$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Reservations$List - | BodyResponseCallback + | Params$Resource$Reservationsubblocks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservations$List; + {}) as Params$Resource$Reservationsubblocks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservations$List; + params = {} as Params$Resource$Reservationsubblocks$List; options = {}; } @@ -197162,7 +220137,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations' + '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -197170,22 +220145,24 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'parentName'], + pathParams: ['parentName', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Perform maintenance on an extended reservation + * Allows customers to perform maintenance on a reservation subBlock * @example * ```js * // Before running the sample: @@ -197217,7 +220194,11 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservations.performMaintenance({ + * const res = await compute.reservationSubBlocks.performMaintenance({ + * // The name of the parent reservation and parent block. In the format of + * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} + * parentName: + * 'reservations/my-reservation/reservationBlocks/my-reservationBlock', * // Project ID for this request. * project: 'placeholder-value', * // An optional request ID to identify requests. Specify a unique request ID so @@ -197234,19 +220215,11 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the reservation. + * // The name of the reservation subBlock. * // Name should conform to RFC1035 or be a resource ID. - * reservation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * reservationSubBlock: 'placeholder-value', * // Name of the zone for this request. Zone name should conform to RFC1035. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "maintenanceScope": "my_maintenanceScope" - * // } - * }, * }); * console.log(res.data); * @@ -197257,6 +220230,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -197294,31 +220268,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ performMaintenance( - params: Params$Resource$Reservations$Performmaintenance, + params: Params$Resource$Reservationsubblocks$Performmaintenance, options: StreamMethodOptions ): Promise>; performMaintenance( - params?: Params$Resource$Reservations$Performmaintenance, + params?: Params$Resource$Reservationsubblocks$Performmaintenance, options?: MethodOptions ): Promise>; performMaintenance( - params: Params$Resource$Reservations$Performmaintenance, + params: Params$Resource$Reservationsubblocks$Performmaintenance, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; performMaintenance( - params: Params$Resource$Reservations$Performmaintenance, + params: Params$Resource$Reservationsubblocks$Performmaintenance, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; performMaintenance( - params: Params$Resource$Reservations$Performmaintenance, + params: Params$Resource$Reservationsubblocks$Performmaintenance, callback: BodyResponseCallback ): void; performMaintenance(callback: BodyResponseCallback): void; performMaintenance( paramsOrCallback?: - | Params$Resource$Reservations$Performmaintenance + | Params$Resource$Reservationsubblocks$Performmaintenance | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -197334,12 +220308,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservations$Performmaintenance; + {}) as Params$Resource$Reservationsubblocks$Performmaintenance; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservations$Performmaintenance; + params = {} as Params$Resource$Reservationsubblocks$Performmaintenance; options = {}; } @@ -197354,7 +220328,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}/performMaintenance' + '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}/performMaintenance' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -197362,8 +220336,13 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'reservation'], - pathParams: ['project', 'reservation', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'parentName', + 'reservationSubBlock', + ], + pathParams: ['parentName', 'project', 'reservationSubBlock', 'zone'], context: this.context, }; if (callback) { @@ -197377,9 +220356,7 @@ export namespace compute_v1 { } /** - * Resizes the reservation (applicable to standalone reservations only). For - * more information, readModifying - * reservations. + * Allows customers to report a faulty subBlock. * @example * ```js * // Before running the sample: @@ -197411,10 +220388,13 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservations.resize({ + * const res = await compute.reservationSubBlocks.reportFaulty({ + * // The name of the parent reservation and parent block. In the format of + * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} + * parentName: + * 'reservations/my-reservation/reservationBlocks/my-reservationBlock', * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * project: 'placeholder-value', * // 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. @@ -197429,16 +220409,19 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the reservation to update. - * reservation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the reservation subBlock. + * // Name should conform to RFC1035 or be a resource ID. + * reservationSubBlock: 'placeholder-value', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "specificSkuCount": "my_specificSkuCount" + * // "disruptionSchedule": "my_disruptionSchedule", + * // "failureComponent": "my_failureComponent", + * // "faultReasons": [] * // } * }, * }); @@ -197451,6 +220434,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -197487,32 +220471,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resize( - params: Params$Resource$Reservations$Resize, + reportFaulty( + params: Params$Resource$Reservationsubblocks$Reportfaulty, options: StreamMethodOptions ): Promise>; - resize( - params?: Params$Resource$Reservations$Resize, + reportFaulty( + params?: Params$Resource$Reservationsubblocks$Reportfaulty, options?: MethodOptions ): Promise>; - resize( - params: Params$Resource$Reservations$Resize, + reportFaulty( + params: Params$Resource$Reservationsubblocks$Reportfaulty, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resize( - params: Params$Resource$Reservations$Resize, + reportFaulty( + params: Params$Resource$Reservationsubblocks$Reportfaulty, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resize( - params: Params$Resource$Reservations$Resize, + reportFaulty( + params: Params$Resource$Reservationsubblocks$Reportfaulty, callback: BodyResponseCallback ): void; - resize(callback: BodyResponseCallback): void; - resize( + reportFaulty(callback: BodyResponseCallback): void; + reportFaulty( paramsOrCallback?: - | Params$Resource$Reservations$Resize + | Params$Resource$Reservationsubblocks$Reportfaulty | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -197528,12 +220512,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservations$Resize; + {}) as Params$Resource$Reservationsubblocks$Reportfaulty; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservations$Resize; + params = {} as Params$Resource$Reservationsubblocks$Reportfaulty; options = {}; } @@ -197548,7 +220532,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}/resize' + '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}/reportFaulty' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -197556,8 +220540,13 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'reservation'], - pathParams: ['project', 'reservation', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'parentName', + 'reservationSubBlock', + ], + pathParams: ['parentName', 'project', 'reservationSubBlock', 'zone'], context: this.context, }; if (callback) { @@ -197604,7 +220593,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservations.setIamPolicy({ + * const res = await compute.reservationSubBlocks.setIamPolicy({ + * // Name or id of parent resource of the resource for this request. + * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -197647,31 +220638,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Reservations$Setiampolicy, + params: Params$Resource$Reservationsubblocks$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Reservations$Setiampolicy, + params?: Params$Resource$Reservationsubblocks$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Reservations$Setiampolicy, + params: Params$Resource$Reservationsubblocks$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Reservations$Setiampolicy, + params: Params$Resource$Reservationsubblocks$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Reservations$Setiampolicy, + params: Params$Resource$Reservationsubblocks$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Reservations$Setiampolicy + | Params$Resource$Reservationsubblocks$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -197687,12 +220678,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservations$Setiampolicy; + {}) as Params$Resource$Reservationsubblocks$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservations$Setiampolicy; + params = {} as Params$Resource$Reservationsubblocks$Setiampolicy; options = {}; } @@ -197707,7 +220698,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -197715,8 +220706,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'zone', 'parentResource', 'resource'], + pathParams: ['parentResource', 'project', 'resource', 'zone'], context: this.context, }; if (callback) { @@ -197763,7 +220754,9 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservations.testIamPermissions({ + * const res = await compute.reservationSubBlocks.testIamPermissions({ + * // Name or id of parent resource of the resource for this request. + * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -197801,27 +220794,27 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Reservations$Testiampermissions, + params: Params$Resource$Reservationsubblocks$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Reservations$Testiampermissions, + params?: Params$Resource$Reservationsubblocks$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Reservations$Testiampermissions, + params: Params$Resource$Reservationsubblocks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Reservations$Testiampermissions, + params: Params$Resource$Reservationsubblocks$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Reservations$Testiampermissions, + params: Params$Resource$Reservationsubblocks$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -197829,454 +220822,98 @@ export namespace compute_v1 { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Reservations$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: + | Params$Resource$Reservationsubblocks$Testiampermissions | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Reservations$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Reservations$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{resource}/testIamPermissions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Update share settings of the reservation. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.reservations.update({ - * paths: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // 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. - * // - * // 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: 'placeholder-value', - * // Name of the reservation to update. - * reservation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', - * // Name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advancedDeploymentControl": {}, - * // "aggregateReservation": {}, - * // "commitment": "my_commitment", - * // "creationTimestamp": "my_creationTimestamp", - * // "deleteAfterDuration": {}, - * // "deleteAtTime": "my_deleteAtTime", - * // "deploymentType": "my_deploymentType", - * // "description": "my_description", - * // "earlyAccessMaintenance": "my_earlyAccessMaintenance", - * // "enableEmergentMaintenance": false, - * // "id": "my_id", - * // "kind": "my_kind", - * // "linkedCommitments": [], - * // "name": "my_name", - * // "params": {}, - * // "protectionTier": "my_protectionTier", - * // "reservationSharingPolicy": {}, - * // "resourcePolicies": {}, - * // "resourceStatus": {}, - * // "satisfiesPzs": false, - * // "schedulingType": "my_schedulingType", - * // "selfLink": "my_selfLink", - * // "shareSettings": {}, - * // "specificReservation": {}, - * // "specificReservationRequired": false, - * // "status": "my_status", - * // "zone": "my_zone" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - update( - params: Params$Resource$Reservations$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Reservations$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Reservations$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Reservations$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Reservations$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Reservations$Update - | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Reservations$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Reservations$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'reservation'], - pathParams: ['project', 'reservation', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Reservations$Aggregatedlist 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. - * 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 onresource 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 GoogleRE2 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; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Reservationsubblocks$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Reservationsubblocks$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'parentResource', 'resource'], + pathParams: ['parentResource', 'project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Reservationsubblocks$Get extends StandardParameters { /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. + * The name of the parent reservation and parent block. In the format of + * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Reservations$Delete extends StandardParameters { + parentName?: string; /** * Project ID for this request. */ project?: string; /** - * 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. - * - * 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; - /** - * Name of the reservation to delete. - */ - reservation?: string; - /** - * Name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Reservations$Get extends StandardParameters { - /** - * Project ID for this request. + * The name of the reservation subBlock. + * Name should conform to RFC1035 or be a resource ID. */ - project?: string; + reservationSubBlock?: string; /** - * Name of the reservation to retrieve. + * View of the subBlock. */ - reservation?: string; + view?: string; /** - * Name of the zone for this request. + * Name of the zone for this request. Zone name should conform to RFC1035. */ zone?: string; } - export interface Params$Resource$Reservations$Getiampolicy extends StandardParameters { + export interface Params$Resource$Reservationsubblocks$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ optionsRequestedPolicyVersion?: number; + /** + * Name or id of parent resource of the resource for this request. + */ + parentResource?: string; /** * Project ID for this request. */ @@ -198290,7 +220927,12 @@ export namespace compute_v1 { */ zone?: string; } - export interface Params$Resource$Reservations$Insert extends StandardParameters { + export interface Params$Resource$Reservationsubblocks$Getversion extends StandardParameters { + /** + * The name of the parent reservation and parent block. In the format of + * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} + */ + parentName?: string; /** * Project ID for this request. */ @@ -198312,16 +220954,21 @@ export namespace compute_v1 { */ requestId?: string; /** - * Name of the zone for this request. + * The name of the reservation subBlock. + * Name should conform to RFC1035 or be a resource ID. + */ + reservationSubBlock?: string; + /** + * Name of the zone for this request. Zone name should conform to RFC1035. */ zone?: string; /** * Request body metadata */ - requestBody?: Schema$Reservation; + requestBody?: Schema$ReservationSubBlocksGetVersionRequest; } - export interface Params$Resource$Reservations$List extends StandardParameters { + export interface Params$Resource$Reservationsubblocks$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -198411,6 +221058,11 @@ export namespace compute_v1 { * the next page of results. */ pageToken?: string; + /** + * The name of the parent reservation and parent block. In the format of + * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} + */ + parentName?: string; /** * Project ID for this request. */ @@ -198425,11 +221077,16 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; /** - * Name of the zone for this request. + * Name of the zone for this request. Zone name should conform to RFC1035. */ zone?: string; } - export interface Params$Resource$Reservations$Performmaintenance extends StandardParameters { + export interface Params$Resource$Reservationsubblocks$Performmaintenance extends StandardParameters { + /** + * The name of the parent reservation and parent block. In the format of + * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} + */ + parentName?: string; /** * Project ID for this request. */ @@ -198451,21 +221108,21 @@ export namespace compute_v1 { */ requestId?: string; /** - * The name of the reservation. + * The name of the reservation subBlock. * Name should conform to RFC1035 or be a resource ID. */ - reservation?: string; + reservationSubBlock?: string; /** * Name of the zone for this request. Zone name should conform to RFC1035. */ zone?: string; - + } + export interface Params$Resource$Reservationsubblocks$Reportfaulty extends StandardParameters { /** - * Request body metadata + * The name of the parent reservation and parent block. In the format of + * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} */ - requestBody?: Schema$ReservationsPerformMaintenanceRequest; - } - export interface Params$Resource$Reservations$Resize extends StandardParameters { + parentName?: string; /** * Project ID for this request. */ @@ -198487,39 +221144,25 @@ export namespace compute_v1 { */ requestId?: string; /** - * Name of the reservation to update. + * The name of the reservation subBlock. + * Name should conform to RFC1035 or be a resource ID. */ - reservation?: string; + reservationSubBlock?: string; /** - * Name of the zone for this request. + * Name of the zone for this request. Zone name should conform to RFC1035. */ zone?: string; /** * Request body metadata */ - requestBody?: Schema$ReservationsResizeRequest; + requestBody?: Schema$ReservationSubBlocksReportFaultyRequest; } - export interface Params$Resource$Reservations$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - + export interface Params$Resource$Reservationsubblocks$Setiampolicy extends StandardParameters { /** - * Request body metadata + * Name or id of parent resource of the resource for this request. */ - requestBody?: Schema$ZoneSetPolicyRequest; - } - export interface Params$Resource$Reservations$Testiampermissions extends StandardParameters { + parentResource?: string; /** * Project ID for this request. */ @@ -198536,214 +221179,43 @@ export namespace compute_v1 { /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$ZoneSetNestedPolicyRequest; } - export interface Params$Resource$Reservations$Update extends StandardParameters { + export interface Params$Resource$Reservationsubblocks$Testiampermissions extends StandardParameters { /** - * + * Name or id of parent resource of the resource for this request. */ - paths?: string[]; + parentResource?: string; /** * Project ID for this request. */ project?: string; /** - * 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. - * - * 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; - /** - * Name of the reservation to update. - */ - reservation?: string; - /** - * Update_mask indicates fields to be updated as part of this request. + * Name or id of the resource for this request. */ - updateMask?: string; + resource?: string; /** - * Name of the zone for this request. + * The name of the zone for this request. */ zone?: string; /** * Request body metadata */ - requestBody?: Schema$Reservation; + requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Reservationslots { + export class Resource$Resourcepolicies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves information about the specified reservation slot. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.reservationSlots.get({ - * // The name of the parent reservation and parent block, formatted as - * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} - * parentName: - * 'reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})', - * // The project ID for this request. - * project: 'placeholder-value', - * // The name of the reservation slot, formatted as RFC1035 or a resource ID - * // number. - * reservationSlot: 'placeholder-value', - * // The name of the zone for this request, formatted as RFC1035. - * zone: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "resource": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` + * Retrieves an aggregated list of resource policies. * - * @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$Reservationslots$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Reservationslots$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Reservationslots$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Reservationslots$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Reservationslots$Get, - callback: BodyResponseCallback - ): void; - get( - callback: BodyResponseCallback - ): void; - get( - paramsOrCallback?: - | Params$Resource$Reservationslots$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Reservationslots$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Reservationslots$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'parentName', 'reservationSlot'], - pathParams: ['parentName', 'project', 'reservationSlot', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Retrieves a list of reservation slots under a single reservation. + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -198776,7 +221248,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationSlots.list({ + * const res = await compute.resourcePolicies.aggregatedList({ * // 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 @@ -198836,6 +221308,14 @@ export namespace compute_v1 { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -198858,12 +221338,9 @@ export namespace compute_v1 { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // The name of the parent reservation and parent block, formatted as - * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} - * parentName: - * 'reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})', - * // The project ID for this request. - * project: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -198871,18 +221348,21 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The name of the zone for this request, formatted as RFC1035. - * zone: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", - * // "items": [], + * // "items": {}, * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -198899,57 +221379,57 @@ export namespace compute_v1 { * @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$Reservationslots$List, + aggregatedList( + params: Params$Resource$Resourcepolicies$Aggregatedlist, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Reservationslots$List, + aggregatedList( + params?: Params$Resource$Resourcepolicies$Aggregatedlist, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Reservationslots$List, + ): Promise>; + aggregatedList( + params: Params$Resource$Resourcepolicies$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Reservationslots$List, + aggregatedList( + params: Params$Resource$Resourcepolicies$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Reservationslots$List, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Resourcepolicies$Aggregatedlist, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + aggregatedList( + callback: BodyResponseCallback ): void; - list( + aggregatedList( paramsOrCallback?: - | Params$Resource$Reservationslots$List - | BodyResponseCallback + | Params$Resource$Resourcepolicies$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationslots$List; + {}) as Params$Resource$Resourcepolicies$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationslots$List; + params = {} as Params$Resource$Resourcepolicies$Aggregatedlist; options = {}; } @@ -198964,7 +221444,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSlots' + '/compute/v1/projects/{project}/aggregated/resourcePolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -198972,24 +221452,24 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'parentName'], - pathParams: ['parentName', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Update a reservation slot in the specified sub-block. + * Deletes the specified resource policy. * @example * ```js * // Before running the sample: @@ -199021,36 +221501,28 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationSlots.update({ - * // The name of the sub-block resource. - * parentName: - * 'reservations/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})/reservationSubBlocks/([a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19})', - * // The project ID for this request. - * project: 'placeholder-value', - * // The name of the slot resource. - * reservationSlot: 'placeholder-value', - * // The fields to be updated as part of this request. - * updateMask: 'placeholder-value', - * // The name of the zone for this request, formatted as RFC1035. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "physicalTopology": {}, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shareSettings": {}, - * // "state": "my_state", - * // "status": {}, - * // "zone": "my_zone" - * // } - * }, + * const res = await compute.resourcePolicies.delete({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the resource policy to delete. + * resourcePolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -199061,6 +221533,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -199097,32 +221570,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Reservationslots$Update, + delete( + params: Params$Resource$Resourcepolicies$Delete, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Reservationslots$Update, + delete( + params?: Params$Resource$Resourcepolicies$Delete, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Reservationslots$Update, + delete( + params: Params$Resource$Resourcepolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Reservationslots$Update, + delete( + params: Params$Resource$Resourcepolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Reservationslots$Update, + delete( + params: Params$Resource$Resourcepolicies$Delete, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Reservationslots$Update + | Params$Resource$Resourcepolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -199138,12 +221611,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationslots$Update; + {}) as Params$Resource$Resourcepolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationslots$Update; + params = {} as Params$Resource$Resourcepolicies$Delete; options = {}; } @@ -199158,16 +221631,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSlots/{reservationSlot}' + '/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'parentName', 'reservationSlot'], - pathParams: ['parentName', 'project', 'reservationSlot', 'zone'], + requiredParams: ['project', 'region', 'resourcePolicy'], + pathParams: ['project', 'region', 'resourcePolicy'], context: this.context, }; if (callback) { @@ -199179,177 +221652,9 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Reservationslots$Get extends StandardParameters { - /** - * The name of the parent reservation and parent block, formatted as - * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} - */ - parentName?: string; - /** - * The project ID for this request. - */ - project?: string; - /** - * The name of the reservation slot, formatted as RFC1035 or a resource ID - * number. - */ - reservationSlot?: string; - /** - * The name of the zone for this request, formatted as RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Reservationslots$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. - * 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 onresource 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 GoogleRE2 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; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * The name of the parent reservation and parent block, formatted as - * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\}/reservationSubBlocks/{reservation_sub_block_name\} - */ - parentName?: string; - /** - * The project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The name of the zone for this request, formatted as RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Reservationslots$Update extends StandardParameters { - /** - * The name of the sub-block resource. - */ - parentName?: string; - /** - * The project ID for this request. - */ - project?: string; - /** - * The name of the slot resource. - */ - reservationSlot?: string; - /** - * The fields to be updated as part of this request. - */ - updateMask?: string; - /** - * The name of the zone for this request, formatted as RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ReservationSlot; - } - - export class Resource$Reservationsubblocks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Retrieves information about the specified reservation subBlock. + * Retrieves all information of the specified resource policy. * @example * ```js * // Before running the sample: @@ -199382,26 +221687,33 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationSubBlocks.get({ - * // The name of the parent reservation and parent block. In the format of - * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} - * parentName: - * 'reservations/my-reservation/reservationBlocks/my-reservationBlock', + * const res = await compute.resourcePolicies.get({ * // Project ID for this request. - * project: 'placeholder-value', - * // The name of the reservation subBlock. - * // Name should conform to RFC1035 or be a resource ID. - * reservationSubBlock: 'placeholder-value', - * // View of the subBlock. - * view: 'placeholder-value', - * // Name of the zone for this request. Zone name should conform to RFC1035. - * zone: 'placeholder-value', + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the resource policy to retrieve. + * resourcePolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "resource": {} + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "diskConsistencyGroupPolicy": {}, + * // "groupPlacementPolicy": {}, + * // "id": "my_id", + * // "instanceSchedulePolicy": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "resourceStatus": {}, + * // "selfLink": "my_selfLink", + * // "snapshotSchedulePolicy": {}, + * // "status": "my_status", + * // "workloadPolicy": {} * // } * } * @@ -199418,56 +221730,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Reservationsubblocks$Get, + params: Params$Resource$Resourcepolicies$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Reservationsubblocks$Get, + params?: Params$Resource$Resourcepolicies$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Reservationsubblocks$Get, + params: Params$Resource$Resourcepolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Reservationsubblocks$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Reservationsubblocks$Get, - callback: BodyResponseCallback + params: Params$Resource$Resourcepolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + params: Params$Resource$Resourcepolicies$Get, + callback: BodyResponseCallback ): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Reservationsubblocks$Get - | BodyResponseCallback + | Params$Resource$Resourcepolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationsubblocks$Get; + {}) as Params$Resource$Resourcepolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationsubblocks$Get; + params = {} as Params$Resource$Resourcepolicies$Get; options = {}; } @@ -199482,7 +221790,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}' + '/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -199490,24 +221798,17 @@ export namespace compute_v1 { options ), params, - requiredParams: [ - 'project', - 'zone', - 'parentName', - 'reservationSubBlock', - ], - pathParams: ['parentName', 'project', 'reservationSubBlock', 'zone'], + requiredParams: ['project', 'region', 'resourcePolicy'], + pathParams: ['project', 'region', 'resourcePolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } @@ -199546,18 +221847,16 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationSubBlocks.getIamPolicy({ + * const res = await compute.resourcePolicies.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', - * // Name or id of parent resource of the resource for this request. - * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Name or id of the resource for this request. * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -199583,52 +221882,256 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Reservationsubblocks$Getiampolicy, + params: Params$Resource$Resourcepolicies$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Resourcepolicies$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Resourcepolicies$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Resourcepolicies$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Resourcepolicies$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Resourcepolicies$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Resourcepolicies$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Resourcepolicies$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a new resource policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.resourcePolicies.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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. + * // + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "diskConsistencyGroupPolicy": {}, + * // "groupPlacementPolicy": {}, + * // "id": "my_id", + * // "instanceSchedulePolicy": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "resourceStatus": {}, + * // "selfLink": "my_selfLink", + * // "snapshotSchedulePolicy": {}, + * // "status": "my_status", + * // "workloadPolicy": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + insert( + params: Params$Resource$Resourcepolicies$Insert, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Reservationsubblocks$Getiampolicy, + insert( + params?: Params$Resource$Resourcepolicies$Insert, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Reservationsubblocks$Getiampolicy, + ): Promise>; + insert( + params: Params$Resource$Resourcepolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Reservationsubblocks$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Resourcepolicies$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Reservationsubblocks$Getiampolicy, - callback: BodyResponseCallback + insert( + params: Params$Resource$Resourcepolicies$Insert, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Reservationsubblocks$Getiampolicy - | BodyResponseCallback + | Params$Resource$Resourcepolicies$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationsubblocks$Getiampolicy; + {}) as Params$Resource$Resourcepolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationsubblocks$Getiampolicy; + params = {} as Params$Resource$Resourcepolicies$Insert; options = {}; } @@ -199643,30 +222146,31 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/resourcePolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'parentResource', 'resource'], - pathParams: ['parentResource', 'project', 'resource', 'zone'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of reservation subBlocks under a single reservation. + * A list all the resource policies that have been configured for the + * specified project in specified region. * @example * ```js * // Before running the sample: @@ -199699,7 +222203,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationSubBlocks.list({ + * const res = await compute.resourcePolicies.list({ * // 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 @@ -199781,12 +222285,11 @@ export namespace compute_v1 { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // The name of the parent reservation and parent block. In the format of - * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} - * parentName: - * 'reservations/my-reservation/reservationBlocks/my-reservationBlock', * // Project ID for this request. - * project: 'placeholder-value', + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -199794,13 +222297,12 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // Name of the zone for this request. Zone name should conform to RFC1035. - * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", @@ -199823,60 +222325,52 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Reservationsubblocks$List, + params: Params$Resource$Resourcepolicies$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Reservationsubblocks$List, + params?: Params$Resource$Resourcepolicies$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; list( - params: Params$Resource$Reservationsubblocks$List, + params: Params$Resource$Resourcepolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Reservationsubblocks$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Reservationsubblocks$List, - callback: BodyResponseCallback + params: Params$Resource$Resourcepolicies$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Resourcepolicies$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Reservationsubblocks$List - | BodyResponseCallback + | Params$Resource$Resourcepolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationsubblocks$List; + {}) as Params$Resource$Resourcepolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationsubblocks$List; + params = {} as Params$Resource$Resourcepolicies$List; options = {}; } @@ -199891,7 +222385,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks' + '/compute/v1/projects/{project}/regions/{region}/resourcePolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -199899,217 +222393,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'parentName'], - pathParams: ['parentName', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Allows customers to perform maintenance on a reservation subBlock - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.reservationSubBlocks.performMaintenance({ - * // The name of the parent reservation and parent block. In the format of - * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} - * parentName: - * 'reservations/my-reservation/reservationBlocks/my-reservationBlock', - * // Project ID for this request. - * project: 'placeholder-value', - * // 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. - * // - * // 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: 'placeholder-value', - * // The name of the reservation subBlock. - * // Name should conform to RFC1035 or be a resource ID. - * reservationSubBlock: 'placeholder-value', - * // Name of the zone for this request. Zone name should conform to RFC1035. - * zone: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - performMaintenance( - params: Params$Resource$Reservationsubblocks$Performmaintenance, - options: StreamMethodOptions - ): Promise>; - performMaintenance( - params?: Params$Resource$Reservationsubblocks$Performmaintenance, - options?: MethodOptions - ): Promise>; - performMaintenance( - params: Params$Resource$Reservationsubblocks$Performmaintenance, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - performMaintenance( - params: Params$Resource$Reservationsubblocks$Performmaintenance, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - performMaintenance( - params: Params$Resource$Reservationsubblocks$Performmaintenance, - callback: BodyResponseCallback - ): void; - performMaintenance(callback: BodyResponseCallback): void; - performMaintenance( - paramsOrCallback?: - | Params$Resource$Reservationsubblocks$Performmaintenance - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Reservationsubblocks$Performmaintenance; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Reservationsubblocks$Performmaintenance; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}/performMaintenance' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: [ - 'project', - 'zone', - 'parentName', - 'reservationSubBlock', - ], - pathParams: ['parentName', 'project', 'reservationSubBlock', 'zone'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Allows customers to report a faulty subBlock. + * Modify the specified resource policy. * @example * ```js * // Before running the sample: @@ -200141,13 +222440,12 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationSubBlocks.reportFaulty({ - * // The name of the parent reservation and parent block. In the format of - * // reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} - * parentName: - * 'reservations/my-reservation/reservationBlocks/my-reservationBlock', + * const res = await compute.resourcePolicies.patch({ * // Project ID for this request. - * project: 'placeholder-value', + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -200162,19 +222460,29 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the reservation subBlock. - * // Name should conform to RFC1035 or be a resource ID. - * reservationSubBlock: 'placeholder-value', - * // Name of the zone for this request. Zone name should conform to RFC1035. - * zone: 'placeholder-value', + * // Id of the resource policy to patch. + * resourcePolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "disruptionSchedule": "my_disruptionSchedule", - * // "failureComponent": "my_failureComponent", - * // "faultReasons": [] + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "diskConsistencyGroupPolicy": {}, + * // "groupPlacementPolicy": {}, + * // "id": "my_id", + * // "instanceSchedulePolicy": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "resourceStatus": {}, + * // "selfLink": "my_selfLink", + * // "snapshotSchedulePolicy": {}, + * // "status": "my_status", + * // "workloadPolicy": {} * // } * }, * }); @@ -200187,6 +222495,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -200223,32 +222532,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - reportFaulty( - params: Params$Resource$Reservationsubblocks$Reportfaulty, + patch( + params: Params$Resource$Resourcepolicies$Patch, options: StreamMethodOptions ): Promise>; - reportFaulty( - params?: Params$Resource$Reservationsubblocks$Reportfaulty, + patch( + params?: Params$Resource$Resourcepolicies$Patch, options?: MethodOptions ): Promise>; - reportFaulty( - params: Params$Resource$Reservationsubblocks$Reportfaulty, + patch( + params: Params$Resource$Resourcepolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reportFaulty( - params: Params$Resource$Reservationsubblocks$Reportfaulty, + patch( + params: Params$Resource$Resourcepolicies$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reportFaulty( - params: Params$Resource$Reservationsubblocks$Reportfaulty, + patch( + params: Params$Resource$Resourcepolicies$Patch, callback: BodyResponseCallback ): void; - reportFaulty(callback: BodyResponseCallback): void; - reportFaulty( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Reservationsubblocks$Reportfaulty + | Params$Resource$Resourcepolicies$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -200264,12 +222573,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationsubblocks$Reportfaulty; + {}) as Params$Resource$Resourcepolicies$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationsubblocks$Reportfaulty; + params = {} as Params$Resource$Resourcepolicies$Patch; options = {}; } @@ -200284,21 +222593,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{+parentName}/reservationSubBlocks/{reservationSubBlock}/reportFaulty' + '/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: [ - 'project', - 'zone', - 'parentName', - 'reservationSubBlock', - ], - pathParams: ['parentName', 'project', 'reservationSubBlock', 'zone'], + requiredParams: ['project', 'region', 'resourcePolicy'], + pathParams: ['project', 'region', 'resourcePolicy'], context: this.context, }; if (callback) { @@ -200345,16 +222649,14 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationSubBlocks.setIamPolicy({ - * // Name or id of parent resource of the resource for this request. - * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', + * const res = await compute.resourcePolicies.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Name or id of the resource for this request. * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { @@ -200390,31 +222692,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Reservationsubblocks$Setiampolicy, + params: Params$Resource$Resourcepolicies$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Reservationsubblocks$Setiampolicy, + params?: Params$Resource$Resourcepolicies$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Reservationsubblocks$Setiampolicy, + params: Params$Resource$Resourcepolicies$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Reservationsubblocks$Setiampolicy, + params: Params$Resource$Resourcepolicies$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Reservationsubblocks$Setiampolicy, + params: Params$Resource$Resourcepolicies$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Reservationsubblocks$Setiampolicy + | Params$Resource$Resourcepolicies$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -200430,12 +222732,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationsubblocks$Setiampolicy; + {}) as Params$Resource$Resourcepolicies$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationsubblocks$Setiampolicy; + params = {} as Params$Resource$Resourcepolicies$Setiampolicy; options = {}; } @@ -200450,7 +222752,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -200458,8 +222760,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'parentResource', 'resource'], - pathParams: ['parentResource', 'project', 'resource', 'zone'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -200506,16 +222808,14 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.reservationSubBlocks.testIamPermissions({ - * // Name or id of parent resource of the resource for this request. - * parentResource: '[a-z](?:[-a-zA-Z0-9/]{0,255}[a-zA-Z0-9])?', + * const res = await compute.resourcePolicies.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Name or id of the resource for this request. * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { @@ -200546,27 +222846,27 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Reservationsubblocks$Testiampermissions, + params: Params$Resource$Resourcepolicies$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Reservationsubblocks$Testiampermissions, + params?: Params$Resource$Resourcepolicies$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Reservationsubblocks$Testiampermissions, + params: Params$Resource$Resourcepolicies$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Reservationsubblocks$Testiampermissions, + params: Params$Resource$Resourcepolicies$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Reservationsubblocks$Testiampermissions, + params: Params$Resource$Resourcepolicies$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -200574,7 +222874,7 @@ export namespace compute_v1 { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Reservationsubblocks$Testiampermissions + | Params$Resource$Resourcepolicies$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -200590,12 +222890,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Reservationsubblocks$Testiampermissions; + {}) as Params$Resource$Resourcepolicies$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Reservationsubblocks$Testiampermissions; + params = {} as Params$Resource$Resourcepolicies$Testiampermissions; options = {}; } @@ -200610,7 +222910,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{+parentResource}/reservationSubBlocks/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -200618,8 +222918,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'parentResource', 'resource'], - pathParams: ['parentResource', 'project', 'resource', 'zone'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -200633,53 +222933,7 @@ export namespace compute_v1 { } } - export interface Params$Resource$Reservationsubblocks$Get extends StandardParameters { - /** - * The name of the parent reservation and parent block. In the format of - * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} - */ - parentName?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the reservation subBlock. - * Name should conform to RFC1035 or be a resource ID. - */ - reservationSubBlock?: string; - /** - * View of the subBlock. - */ - view?: string; - /** - * Name of the zone for this request. Zone name should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Reservationsubblocks$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Name or id of parent resource of the resource for this request. - */ - parentResource?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Reservationsubblocks$List extends StandardParameters { + export interface Params$Resource$Resourcepolicies$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -200741,6 +222995,16 @@ export namespace compute_v1 { * expressions. */ filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -200769,11 +223033,6 @@ export namespace compute_v1 { * the next page of results. */ pageToken?: string; - /** - * The name of the parent reservation and parent block. In the format of - * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} - */ - parentName?: string; /** * Project ID for this request. */ @@ -200788,20 +223047,20 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; /** - * Name of the zone for this request. Zone name should conform to RFC1035. + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. */ - zone?: string; + serviceProjectNumber?: string; } - export interface Params$Resource$Reservationsubblocks$Performmaintenance extends StandardParameters { - /** - * The name of the parent reservation and parent block. In the format of - * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} - */ - parentName?: string; + export interface Params$Resource$Resourcepolicies$Delete extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * Name of the region for this request. + */ + region?: string; /** * 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 @@ -200819,25 +223078,51 @@ export namespace compute_v1 { */ requestId?: string; /** - * The name of the reservation subBlock. - * Name should conform to RFC1035 or be a resource ID. + * Name of the resource policy to delete. */ - reservationSubBlock?: string; + resourcePolicy?: string; + } + export interface Params$Resource$Resourcepolicies$Get extends StandardParameters { /** - * Name of the zone for this request. Zone name should conform to RFC1035. + * Project ID for this request. */ - zone?: string; + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * Name of the resource policy to retrieve. + */ + resourcePolicy?: string; } - export interface Params$Resource$Reservationsubblocks$Reportfaulty extends StandardParameters { + export interface Params$Resource$Resourcepolicies$Getiampolicy extends StandardParameters { /** - * The name of the parent reservation and parent block. In the format of - * reservations/{reservation_name\}/reservationBlocks/{reservation_block_name\} + * Requested IAM Policy version. */ - parentName?: string; + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Resourcepolicies$Insert extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * Name of the region for this request. + */ + region?: string; /** * 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 @@ -200854,61 +223139,191 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** - * The name of the reservation subBlock. - * Name should conform to RFC1035 or be a resource ID. + * Request body metadata */ - reservationSubBlock?: string; + requestBody?: Schema$ResourcePolicy; + } + export interface Params$Resource$Resourcepolicies$List extends StandardParameters { /** - * Name of the zone for this request. Zone name should conform to RFC1035. + * 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 onresource 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 GoogleRE2 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. */ - zone?: string; - + filter?: string; /** - * Request body metadata + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) */ - requestBody?: Schema$ReservationSubBlocksReportFaultyRequest; - } - export interface Params$Resource$Reservationsubblocks$Setiampolicy extends StandardParameters { + maxResults?: number; /** - * Name or id of parent resource of the resource for this request. + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - parentResource?: string; + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * Name of the region for this request. */ - resource?: string; + region?: string; /** - * The name of the zone for this request. + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - zone?: string; + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Resourcepolicies$Patch extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * 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. + * + * 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; + /** + * Id of the resource policy to patch. + */ + resourcePolicy?: string; + /** + * update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$ZoneSetNestedPolicyRequest; + requestBody?: Schema$ResourcePolicy; } - export interface Params$Resource$Reservationsubblocks$Testiampermissions extends StandardParameters { - /** - * Name or id of parent resource of the resource for this request. - */ - parentResource?: string; + export interface Params$Resource$Resourcepolicies$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * The name of the region for this request. + */ + region?: string; /** * Name or id of the resource for this request. */ resource?: string; + /** - * The name of the zone for this request. + * Request body metadata */ - zone?: string; + requestBody?: Schema$RegionSetPolicyRequest; + } + export interface Params$Resource$Resourcepolicies$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; /** * Request body metadata @@ -200916,271 +223331,14 @@ export namespace compute_v1 { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Resourcepolicies { + export class Resource$Rolloutplans { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of resource policies. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.resourcePolicies.aggregatedList({ - * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "etag": "my_etag", - * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - aggregatedList( - params: Params$Resource$Resourcepolicies$Aggregatedlist, - options: StreamMethodOptions - ): Promise>; - aggregatedList( - params?: Params$Resource$Resourcepolicies$Aggregatedlist, - options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Resourcepolicies$Aggregatedlist, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Resourcepolicies$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Resourcepolicies$Aggregatedlist, - callback: BodyResponseCallback - ): void; - aggregatedList( - callback: BodyResponseCallback - ): void; - aggregatedList( - paramsOrCallback?: - | Params$Resource$Resourcepolicies$Aggregatedlist - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Resourcepolicies$Aggregatedlist; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Resourcepolicies$Aggregatedlist; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/aggregated/resourcePolicies' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Deletes the specified resource policy. + * Deletes a RolloutPlan. * @example * ```js * // Before running the sample: @@ -201212,12 +223370,10 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.resourcePolicies.delete({ + * const res = await compute.rolloutPlans.delete({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -201232,8 +223388,8 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the resource policy to delete. - * resourcePolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the RolloutPlan resource to delete. + * rolloutPlan: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -201244,6 +223400,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -201281,31 +223438,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Resourcepolicies$Delete, + params: Params$Resource$Rolloutplans$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Resourcepolicies$Delete, + params?: Params$Resource$Rolloutplans$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Resourcepolicies$Delete, + params: Params$Resource$Rolloutplans$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Resourcepolicies$Delete, + params: Params$Resource$Rolloutplans$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Resourcepolicies$Delete, + params: Params$Resource$Rolloutplans$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Resourcepolicies$Delete + | Params$Resource$Rolloutplans$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -201321,12 +223478,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Resourcepolicies$Delete; + {}) as Params$Resource$Rolloutplans$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Resourcepolicies$Delete; + params = {} as Params$Resource$Rolloutplans$Delete; options = {}; } @@ -201341,7 +223498,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}' + '/compute/v1/projects/{project}/global/rolloutPlans/{rolloutPlan}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -201349,8 +223506,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'resourcePolicy'], - pathParams: ['project', 'region', 'resourcePolicy'], + requiredParams: ['project', 'rolloutPlan'], + pathParams: ['project', 'rolloutPlan'], context: this.context, }; if (callback) { @@ -201364,7 +223521,7 @@ export namespace compute_v1 { } /** - * Retrieves all information of the specified resource policy. + * Gets details of a single project-scoped RolloutPlan. * @example * ```js * // Before running the sample: @@ -201397,14 +223554,12 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.resourcePolicies.get({ + * const res = await compute.rolloutPlans.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the resource policy to retrieve. - * resourcePolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the persistent rollout plan to return. + * rolloutPlan: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -201412,18 +223567,13 @@ export namespace compute_v1 { * // { * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "diskConsistencyGroupPolicy": {}, - * // "groupPlacementPolicy": {}, * // "id": "my_id", - * // "instanceSchedulePolicy": {}, * // "kind": "my_kind", + * // "locationScope": "my_locationScope", * // "name": "my_name", - * // "region": "my_region", - * // "resourceStatus": {}, * // "selfLink": "my_selfLink", - * // "snapshotSchedulePolicy": {}, - * // "status": "my_status", - * // "workloadPolicy": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "waves": [] * // } * } * @@ -201440,204 +223590,51 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Resourcepolicies$Get, + params: Params$Resource$Rolloutplans$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Resourcepolicies$Get, + params?: Params$Resource$Rolloutplans$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Resourcepolicies$Get, + params: Params$Resource$Rolloutplans$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Resourcepolicies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Rolloutplans$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Resourcepolicies$Get, - callback: BodyResponseCallback + params: Params$Resource$Rolloutplans$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Resourcepolicies$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Resourcepolicies$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Resourcepolicies$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'resourcePolicy'], - pathParams: ['project', 'region', 'resourcePolicy'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.resourcePolicies.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Resourcepolicies$Getiampolicy, - options: StreamMethodOptions - ): Promise>; - getIamPolicy( - params?: Params$Resource$Resourcepolicies$Getiampolicy, - options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Resourcepolicies$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Resourcepolicies$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Resourcepolicies$Getiampolicy, - callback: BodyResponseCallback - ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( - paramsOrCallback?: - | Params$Resource$Resourcepolicies$Getiampolicy - | BodyResponseCallback + | Params$Resource$Rolloutplans$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Resourcepolicies$Getiampolicy; + let params = (paramsOrCallback || {}) as Params$Resource$Rolloutplans$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Resourcepolicies$Getiampolicy; + params = {} as Params$Resource$Rolloutplans$Get; options = {}; } @@ -201652,7 +223649,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/global/rolloutPlans/{rolloutPlan}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -201660,22 +223657,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'rolloutPlan'], + pathParams: ['project', 'rolloutPlan'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a new resource policy. + * Creates a new RolloutPlan in a given project and location. * @example * ```js * // Before running the sample: @@ -201707,12 +223704,10 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.resourcePolicies.insert({ + * const res = await compute.rolloutPlans.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -201734,18 +223729,13 @@ export namespace compute_v1 { * // { * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "diskConsistencyGroupPolicy": {}, - * // "groupPlacementPolicy": {}, * // "id": "my_id", - * // "instanceSchedulePolicy": {}, * // "kind": "my_kind", + * // "locationScope": "my_locationScope", * // "name": "my_name", - * // "region": "my_region", - * // "resourceStatus": {}, * // "selfLink": "my_selfLink", - * // "snapshotSchedulePolicy": {}, - * // "status": "my_status", - * // "workloadPolicy": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "waves": [] * // } * }, * }); @@ -201758,6 +223748,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -201795,31 +223786,31 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Resourcepolicies$Insert, + params: Params$Resource$Rolloutplans$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Resourcepolicies$Insert, + params?: Params$Resource$Rolloutplans$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Resourcepolicies$Insert, + params: Params$Resource$Rolloutplans$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Resourcepolicies$Insert, + params: Params$Resource$Rolloutplans$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Resourcepolicies$Insert, + params: Params$Resource$Rolloutplans$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Resourcepolicies$Insert + | Params$Resource$Rolloutplans$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -201835,12 +223826,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Resourcepolicies$Insert; + {}) as Params$Resource$Rolloutplans$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Resourcepolicies$Insert; + params = {} as Params$Resource$Rolloutplans$Insert; options = {}; } @@ -201854,8 +223845,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/resourcePolicies' + rootUrl + '/compute/v1/projects/{project}/global/rolloutPlans' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -201863,8 +223853,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -201878,8 +223868,7 @@ export namespace compute_v1 { } /** - * A list all the resource policies that have been configured for the - * specified project in specified region. + * Lists RolloutPlans in a given project and location. * @example * ```js * // Before running the sample: @@ -201912,7 +223901,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.resourcePolicies.list({ + * const res = await compute.rolloutPlans.list({ * // 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 @@ -201997,8 +223986,6 @@ export namespace compute_v1 { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -202014,9 +224001,9 @@ export namespace compute_v1 { * // "etag": "my_etag", * // "id": "my_id", * // "items": [], - * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -202034,52 +224021,54 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Resourcepolicies$List, + params: Params$Resource$Rolloutplans$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Resourcepolicies$List, + params?: Params$Resource$Rolloutplans$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Resourcepolicies$List, + params: Params$Resource$Rolloutplans$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Resourcepolicies$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Rolloutplans$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Resourcepolicies$List, - callback: BodyResponseCallback + params: Params$Resource$Rolloutplans$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Resourcepolicies$List - | BodyResponseCallback + | Params$Resource$Rolloutplans$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Resourcepolicies$List; + {}) as Params$Resource$Rolloutplans$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Resourcepolicies$List; + params = {} as Params$Resource$Rolloutplans$List; options = {}; } @@ -202093,8 +224082,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/resourcePolicies' + rootUrl + '/compute/v1/projects/{project}/global/rolloutPlans' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -202102,22 +224090,197 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Rolloutplans$Delete extends StandardParameters { /** - * Modify the specified resource policy. + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * Name of the RolloutPlan resource to delete. + */ + rolloutPlan?: string; + } + export interface Params$Resource$Rolloutplans$Get extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the persistent rollout plan to return. + */ + rolloutPlan?: string; + } + export interface Params$Resource$Rolloutplans$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + + /** + * Request body metadata + */ + requestBody?: Schema$RolloutPlan; + } + export interface Params$Resource$Rolloutplans$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Rollouts { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Cancels a Rollout. * @example * ```js * // Before running the sample: @@ -202149,12 +224312,10 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.resourcePolicies.patch({ + * const res = await compute.rollouts.cancel({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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. @@ -202169,31 +224330,13 @@ export namespace compute_v1 { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Id of the resource policy to patch. - * resourcePolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "diskConsistencyGroupPolicy": {}, - * // "groupPlacementPolicy": {}, - * // "id": "my_id", - * // "instanceSchedulePolicy": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "region": "my_region", - * // "resourceStatus": {}, - * // "selfLink": "my_selfLink", - * // "snapshotSchedulePolicy": {}, - * // "status": "my_status", - * // "workloadPolicy": {} - * // } - * }, + * // Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel + * // the rollout without taking any further actions. Note that products must + * // support at least one of these options, however, it does not need to support + * // both. + * rollback: 'placeholder-value', + * // Name of the Rollout resource to cancel. + * rollout: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -202204,6 +224347,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -202240,32 +224384,32 @@ export namespace compute_v1 { * @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$Resourcepolicies$Patch, + cancel( + params: Params$Resource$Rollouts$Cancel, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Resourcepolicies$Patch, + cancel( + params?: Params$Resource$Rollouts$Cancel, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Resourcepolicies$Patch, + cancel( + params: Params$Resource$Rollouts$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Resourcepolicies$Patch, + cancel( + params: Params$Resource$Rollouts$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Resourcepolicies$Patch, + cancel( + params: Params$Resource$Rollouts$Cancel, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Resourcepolicies$Patch + | Params$Resource$Rollouts$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -202280,13 +224424,12 @@ export namespace compute_v1 { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Resourcepolicies$Patch; + let params = (paramsOrCallback || {}) as Params$Resource$Rollouts$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Resourcepolicies$Patch; + params = {} as Params$Resource$Rollouts$Cancel; options = {}; } @@ -202301,7 +224444,7 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}' + '/compute/v1/projects/{project}/global/rollouts/{rollout}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -202309,8 +224452,8 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'region', 'resourcePolicy'], - pathParams: ['project', 'region', 'resourcePolicy'], + requiredParams: ['project', 'rollout'], + pathParams: ['project', 'rollout'], context: this.context, }; if (callback) { @@ -202324,8 +224467,7 @@ export namespace compute_v1 { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Deletes a Rollout. * @example * ```js * // Before running the sample: @@ -202357,33 +224499,58 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.resourcePolicies.setIamPolicy({ + * const res = await compute.rollouts.delete({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} - * // } - * }, + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the Rollout resource to delete. + * rollout: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -202399,53 +224566,52 @@ export namespace compute_v1 { * @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$Resourcepolicies$Setiampolicy, + delete( + params: Params$Resource$Rollouts$Delete, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Resourcepolicies$Setiampolicy, + delete( + params?: Params$Resource$Rollouts$Delete, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Resourcepolicies$Setiampolicy, + ): Promise>; + delete( + params: Params$Resource$Rollouts$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Resourcepolicies$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Rollouts$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Resourcepolicies$Setiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Rollouts$Delete, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Resourcepolicies$Setiampolicy - | BodyResponseCallback + | Params$Resource$Rollouts$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Resourcepolicies$Setiampolicy; + let params = (paramsOrCallback || {}) as Params$Resource$Rollouts$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Resourcepolicies$Setiampolicy; + params = {} as Params$Resource$Rollouts$Delete; options = {}; } @@ -202460,30 +224626,30 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/global/rollouts/{rollout}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'rollout'], + pathParams: ['project', 'rollout'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Gets details of a single project-scoped Rollout. * @example * ```js * // Before running the sample: @@ -202516,28 +224682,32 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.resourcePolicies.testIamPermissions({ + * const res = await compute.rollouts.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * // Name of the persistent rollout to return. + * rollout: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "cancellationTime": "my_cancellationTime", + * // "completionTime": "my_completionTime", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentWaveNumber": "my_currentWaveNumber", + * // "description": "my_description", + * // "etag": "my_etag", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "rolloutEntity": {}, + * // "rolloutPlan": "my_rolloutPlan", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "waveDetails": [] * // } * } * @@ -202553,57 +224723,52 @@ export namespace compute_v1 { * @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$Resourcepolicies$Testiampermissions, + get( + params: Params$Resource$Rollouts$Get, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Resourcepolicies$Testiampermissions, + get( + params?: Params$Resource$Rollouts$Get, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Resourcepolicies$Testiampermissions, + ): Promise>; + get( + params: Params$Resource$Rollouts$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Resourcepolicies$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Resourcepolicies$Testiampermissions, - callback: BodyResponseCallback + get( + params: Params$Resource$Rollouts$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + get( + params: Params$Resource$Rollouts$Get, + callback: BodyResponseCallback ): void; - testIamPermissions( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Resourcepolicies$Testiampermissions - | BodyResponseCallback + | Params$Resource$Rollouts$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Resourcepolicies$Testiampermissions; + let params = (paramsOrCallback || {}) as Params$Resource$Rollouts$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Resourcepolicies$Testiampermissions; + params = {} as Params$Resource$Rollouts$Get; options = {}; } @@ -202618,157 +224783,270 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/rollouts/{rollout}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'rollout'], + pathParams: ['project', 'rollout'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Resourcepolicies$Aggregatedlist 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. - * 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 onresource 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) - * ``` + * Lists Rollouts in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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: + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Do the magic + * const res = await compute.rollouts.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * // Example response + * // { + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * ``` * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. + * @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. */ - serviceProjectNumber?: string; + list( + params: Params$Resource$Rollouts$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Rollouts$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Rollouts$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Rollouts$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Rollouts$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Rollouts$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Rollouts$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Rollouts$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/projects/{project}/global/rollouts' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } - export interface Params$Resource$Resourcepolicies$Delete extends StandardParameters { + + export interface Params$Resource$Rollouts$Cancel extends StandardParameters { /** * Project ID for this request. */ project?: string; - /** - * Name of the region for this request. - */ - region?: string; /** * 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 @@ -202786,51 +225064,22 @@ export namespace compute_v1 { */ requestId?: string; /** - * Name of the resource policy to delete. - */ - resourcePolicy?: string; - } - export interface Params$Resource$Resourcepolicies$Get extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * Name of the resource policy to retrieve. - */ - resourcePolicy?: string; - } - export interface Params$Resource$Resourcepolicies$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. + * Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel + * the rollout without taking any further actions. Note that products must + * support at least one of these options, however, it does not need to support + * both. */ - region?: string; + rollback?: boolean; /** - * Name or id of the resource for this request. + * Name of the Rollout resource to cancel. */ - resource?: string; + rollout?: string; } - export interface Params$Resource$Resourcepolicies$Insert extends StandardParameters { + export interface Params$Resource$Rollouts$Delete extends StandardParameters { /** * Project ID for this request. */ project?: string; - /** - * Name of the region for this request. - */ - region?: string; /** * 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 @@ -202847,13 +225096,22 @@ export namespace compute_v1 { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * Request body metadata + * Name of the Rollout resource to delete. */ - requestBody?: Schema$ResourcePolicy; + rollout?: string; } - export interface Params$Resource$Resourcepolicies$List extends StandardParameters { + export interface Params$Resource$Rollouts$Get extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the persistent rollout to return. + */ + rollout?: string; + } + export interface Params$Resource$Rollouts$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -202947,10 +225205,6 @@ export namespace compute_v1 { * Project ID for this request. */ project?: string; - /** - * Name of the region for this request. - */ - region?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -202961,83 +225215,6 @@ export namespace compute_v1 { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Resourcepolicies$Patch extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * 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. - * - * 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; - /** - * Id of the resource policy to patch. - */ - resourcePolicy?: string; - /** - * update_mask indicates fields to be updated as part of this request. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ResourcePolicy; - } - export interface Params$Resource$Resourcepolicies$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionSetPolicyRequest; - } - export interface Params$Resource$Resourcepolicies$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } export class Resource$Routers { context: APIRequestContext; @@ -203363,6 +225540,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -203548,6 +225726,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -204619,6 +226798,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -205569,6 +227749,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -205764,6 +227945,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -206145,6 +228327,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -206340,6 +228523,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -207447,6 +229631,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -207828,6 +230013,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -208593,6 +230779,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -209033,6 +231220,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -209562,6 +231750,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -210251,6 +232440,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -210444,6 +232634,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -210614,6 +232805,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -210793,6 +232985,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -211760,6 +233953,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -212291,6 +234485,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -212746,6 +234941,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -213658,6 +235854,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -213841,10 +236038,13 @@ export namespace compute_v1 { * // "locationHint": "my_locationHint", * // "name": "my_name", * // "params": {}, + * // "region": "my_region", * // "satisfiesPzi": false, * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "snapshotEncryptionKey": {}, + * // "snapshotGroupId": "my_snapshotGroupId", + * // "snapshotGroupName": "my_snapshotGroupName", * // "snapshotType": "my_snapshotType", * // "sourceDisk": "my_sourceDisk", * // "sourceDiskEncryptionKey": {}, @@ -214186,10 +236386,13 @@ export namespace compute_v1 { * // "locationHint": "my_locationHint", * // "name": "my_name", * // "params": {}, + * // "region": "my_region", * // "satisfiesPzi": false, * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "snapshotEncryptionKey": {}, + * // "snapshotGroupId": "my_snapshotGroupId", + * // "snapshotGroupName": "my_snapshotGroupName", * // "snapshotType": "my_snapshotType", * // "sourceDisk": "my_sourceDisk", * // "sourceDiskEncryptionKey": {}, @@ -214216,6 +236419,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -214783,6 +236987,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -215057,6 +237262,198 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } + + /** + * Rotates the customer-managed + * encryption key to the latest version for the specified snapshot. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.snapshots.updateKmsKey({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the snapshot resource to update. Should conform to RFC1035. + * snapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "kmsKeyName": "my_kmsKeyName" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + updateKmsKey( + params: Params$Resource$Snapshots$Updatekmskey, + options: StreamMethodOptions + ): Promise>; + updateKmsKey( + params?: Params$Resource$Snapshots$Updatekmskey, + options?: MethodOptions + ): Promise>; + updateKmsKey( + params: Params$Resource$Snapshots$Updatekmskey, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateKmsKey( + params: Params$Resource$Snapshots$Updatekmskey, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateKmsKey( + params: Params$Resource$Snapshots$Updatekmskey, + callback: BodyResponseCallback + ): void; + updateKmsKey(callback: BodyResponseCallback): void; + updateKmsKey( + paramsOrCallback?: + | Params$Resource$Snapshots$Updatekmskey + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Snapshots$Updatekmskey; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Snapshots$Updatekmskey; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/snapshots/{snapshot}/updateKmsKey' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'snapshot'], + pathParams: ['project', 'snapshot'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Snapshots$Delete extends StandardParameters { @@ -215285,6 +237682,37 @@ export namespace compute_v1 { */ requestBody?: Schema$TestPermissionsRequest; } + export interface Params$Resource$Snapshots$Updatekmskey extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * Name of the snapshot resource to update. Should conform to RFC1035. + */ + snapshot?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SnapshotUpdateKmsKeyRequest; + } export class Resource$Snapshotsettings { context: APIRequestContext; @@ -215335,6 +237763,7 @@ export namespace compute_v1 { * * // Example response * // { + * // "accessLocation": {}, * // "storageLocation": {} * // } * } @@ -215491,6 +237920,7 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { + * // "accessLocation": {}, * // "storageLocation": {} * // } * }, @@ -215504,6 +237934,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -215987,6 +238418,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -216346,6 +238778,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -217314,6 +239747,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -217488,6 +239922,7 @@ export namespace compute_v1 { * // "kind": "my_kind", * // "minTlsVersion": "my_minTlsVersion", * // "name": "my_name", + * // "postQuantumKeyExchange": "my_postQuantumKeyExchange", * // "profile": "my_profile", * // "region": "my_region", * // "selfLink": "my_selfLink", @@ -217654,6 +240089,7 @@ export namespace compute_v1 { * // "kind": "my_kind", * // "minTlsVersion": "my_minTlsVersion", * // "name": "my_name", + * // "postQuantumKeyExchange": "my_postQuantumKeyExchange", * // "profile": "my_profile", * // "region": "my_region", * // "selfLink": "my_selfLink", @@ -217670,6 +240106,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -218331,6 +240768,7 @@ export namespace compute_v1 { * // "kind": "my_kind", * // "minTlsVersion": "my_minTlsVersion", * // "name": "my_name", + * // "postQuantumKeyExchange": "my_postQuantumKeyExchange", * // "profile": "my_profile", * // "region": "my_region", * // "selfLink": "my_selfLink", @@ -218347,6 +240785,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -219221,6 +241660,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -219750,6 +242190,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -220770,6 +243211,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -222634,6 +245076,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -222826,6 +245269,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -223384,6 +245828,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -224112,6 +246557,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -224464,6 +246910,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -225423,6 +247870,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -225774,6 +248222,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -226211,6 +248660,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -226855,6 +249305,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -227208,6 +249659,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -227647,6 +250099,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -227837,6 +250290,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -228632,6 +251086,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -228999,6 +251454,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -229447,6 +251903,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -229638,6 +252095,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -229829,6 +252287,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -230020,6 +252479,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -230214,6 +252674,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -230405,6 +252866,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -231330,6 +253792,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -231687,6 +254150,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -232120,6 +254584,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -232835,6 +255300,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -233027,6 +255493,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -233464,6 +255931,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -233984,6 +256452,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -234413,6 +256882,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -234605,6 +257075,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -234799,6 +257270,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -234994,6 +257466,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -235897,6 +258370,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -236250,6 +258724,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -236675,6 +259150,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -236866,6 +259342,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -237056,6 +259533,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -237247,6 +259725,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -237441,6 +259920,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -238385,6 +260865,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -238736,6 +261217,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -239161,6 +261643,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -239351,6 +261834,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -240319,6 +262803,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -240682,6 +263167,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -241116,6 +263602,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -241897,6 +264384,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -242256,6 +264744,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -242450,6 +264939,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -242892,6 +265382,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -243252,6 +265743,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -244261,6 +266753,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -244775,6 +267268,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -245206,6 +267700,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -246179,6 +268674,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -246565,6 +269061,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -246996,6 +269493,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -247525,6 +270023,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -247884,6 +270383,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -248331,6 +270831,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -248830,7 +271331,765 @@ export namespace compute_v1 { } /** - * Retrieves the specified zone-specific Operations resource. + * Retrieves the specified zone-specific Operations resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.zoneOperations.get({ + * // Name of the Operations resource to return, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Zoneoperations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Zoneoperations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Zoneoperations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Zoneoperations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Zoneoperations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Zoneoperations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Zoneoperations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Zoneoperations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/operations/{operation}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'operation'], + pathParams: ['operation', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a list of Operation resources contained within + * the specified zone. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.zoneOperations.list({ + * // 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 onresource 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 GoogleRE2 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: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // Name of the zone for request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Zoneoperations$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Zoneoperations$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Zoneoperations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Zoneoperations$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Zoneoperations$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Zoneoperations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Zoneoperations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Zoneoperations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/projects/{project}/zones/{zone}/operations' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Waits for the specified Operation resource to return as `DONE` + * or for the request to approach the 2 minute deadline, and retrieves the + * specified Operation resource. This method waits for no more than the + * 2 minutes and then returns the current state of the + * operation, which might be `DONE` or still in progress. + * + * This method is called on a best-effort basis. Specifically: + * + * + * - In uncommon cases, when the server is overloaded, the request might + * return before the default deadline is reached, or might return after zero + * seconds. + * - If the default deadline is reached, there is no guarantee that the + * operation is actually done when the method returns. Be prepared to retry + * if the operation is not `DONE`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.zoneOperations.wait({ + * // Name of the Operations resource to return, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + wait( + params: Params$Resource$Zoneoperations$Wait, + options: StreamMethodOptions + ): Promise>; + wait( + params?: Params$Resource$Zoneoperations$Wait, + options?: MethodOptions + ): Promise>; + wait( + params: Params$Resource$Zoneoperations$Wait, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + wait( + params: Params$Resource$Zoneoperations$Wait, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + wait( + params: Params$Resource$Zoneoperations$Wait, + callback: BodyResponseCallback + ): void; + wait(callback: BodyResponseCallback): void; + wait( + paramsOrCallback?: + | Params$Resource$Zoneoperations$Wait + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Zoneoperations$Wait; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Zoneoperations$Wait; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/operations/{operation}/wait' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'operation'], + pathParams: ['operation', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Zoneoperations$Delete extends StandardParameters { + /** + * Name of the Operations resource to delete, or its unique numeric + * identifier. + */ + operation?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Zoneoperations$Get extends StandardParameters { + /** + * Name of the Operations resource to return, or its unique numeric + * identifier. + */ + operation?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Zoneoperations$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. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * Name of the zone for request. + */ + zone?: string; + } + export interface Params$Resource$Zoneoperations$Wait extends StandardParameters { + /** + * Name of the Operations resource to return, or its unique numeric + * identifier. + */ + operation?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + + export class Resource$Zones { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns the specified Zone resource. * @example * ```js * // Before running the sample: @@ -248863,46 +272122,28 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.zoneOperations.get({ - * // Name of the Operations resource to return, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.zones.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the zone resource to return. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "availableCpuPlatforms": [], * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "supportsPzs": false * // } * } * @@ -248919,52 +272160,51 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Zoneoperations$Get, + params: Params$Resource$Zones$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Zoneoperations$Get, + params?: Params$Resource$Zones$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Zoneoperations$Get, + params: Params$Resource$Zones$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Zoneoperations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Zones$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Zoneoperations$Get, - callback: BodyResponseCallback + params: Params$Resource$Zones$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Zoneoperations$Get - | BodyResponseCallback + | Params$Resource$Zones$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Zoneoperations$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Zones$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Zoneoperations$Get; + params = {} as Params$Resource$Zones$Get; options = {}; } @@ -248978,8 +272218,7 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/operations/{operation}' + rootUrl + '/compute/v1/projects/{project}/zones/{zone}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -248987,23 +272226,22 @@ export namespace compute_v1 { options ), params, - requiredParams: ['project', 'zone', 'operation'], - pathParams: ['operation', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of Operation resources contained within - * the specified zone. + * Retrieves the list of Zone resources available to the specified project. * @example * ```js * // Before running the sample: @@ -249036,7 +272274,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.zoneOperations.list({ + * const res = await compute.zones.list({ * // 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 @@ -249128,8 +272366,6 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // Name of the zone for request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -249157,52 +272393,51 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Zoneoperations$List, + params: Params$Resource$Zones$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Zoneoperations$List, + params?: Params$Resource$Zones$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Zoneoperations$List, + params: Params$Resource$Zones$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Zoneoperations$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Zones$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Zoneoperations$List, - callback: BodyResponseCallback + params: Params$Resource$Zones$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Zoneoperations$List - | BodyResponseCallback + | Params$Resource$Zones$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Zoneoperations$List; + let params = (paramsOrCallback || {}) as Params$Resource$Zones$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Zoneoperations$List; + params = {} as Params$Resource$Zones$List; options = {}; } @@ -249215,45 +272450,154 @@ export namespace compute_v1 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/compute/v1/projects/{project}/zones/{zone}/operations' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/compute/v1/projects/{project}/zones').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Zones$Get extends StandardParameters { /** - * Waits for the specified Operation resource to return as `DONE` - * or for the request to approach the 2 minute deadline, and retrieves the - * specified Operation resource. This method waits for no more than the - * 2 minutes and then returns the current state of the - * operation, which might be `DONE` or still in progress. + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone resource to return. + */ + zone?: string; + } + export interface Params$Resource$Zones$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. + * These two types of filter expressions cannot be mixed in one request. * - * This method is called on a best-effort basis. Specifically: + * 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`. * - * - In uncommon cases, when the server is overloaded, the request might - * return before the default deadline is reached, or might return after zero - * seconds. - * - If the default deadline is reached, there is no guarantee that the - * operation is actually done when the method returns. Be prepared to retry - * if the operation is not `DONE`. + * 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 onresource 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 GoogleRE2 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; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Zonevmextensionpolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes a specified zone VM extension policy within a project. * @example * ```js * // Before running the sample: @@ -249277,7 +272621,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -249286,13 +272629,26 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.zoneOperations.wait({ - * // Name of the Operations resource to return, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.zoneVmExtensionPolicies.delete({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the zone VM extension policy to delete. + * vmExtensionPolicy: 'placeholder-value', * // Name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); @@ -249305,6 +272661,7 @@ export namespace compute_v1 { * // "description": "my_description", * // "endTime": "my_endTime", * // "error": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -249341,32 +272698,32 @@ export namespace compute_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - wait( - params: Params$Resource$Zoneoperations$Wait, + delete( + params: Params$Resource$Zonevmextensionpolicies$Delete, options: StreamMethodOptions ): Promise>; - wait( - params?: Params$Resource$Zoneoperations$Wait, + delete( + params?: Params$Resource$Zonevmextensionpolicies$Delete, options?: MethodOptions ): Promise>; - wait( - params: Params$Resource$Zoneoperations$Wait, + delete( + params: Params$Resource$Zonevmextensionpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Zoneoperations$Wait, + delete( + params: Params$Resource$Zonevmextensionpolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Zoneoperations$Wait, + delete( + params: Params$Resource$Zonevmextensionpolicies$Delete, callback: BodyResponseCallback ): void; - wait(callback: BodyResponseCallback): void; - wait( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Zoneoperations$Wait + | Params$Resource$Zonevmextensionpolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -249382,12 +272739,12 @@ export namespace compute_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Zoneoperations$Wait; + {}) as Params$Resource$Zonevmextensionpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Zoneoperations$Wait; + params = {} as Params$Resource$Zonevmextensionpolicies$Delete; options = {}; } @@ -249402,16 +272759,16 @@ export namespace compute_v1 { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/operations/{operation}/wait' + '/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'operation'], - pathParams: ['operation', 'project', 'zone'], + requiredParams: ['project', 'zone', 'vmExtensionPolicy'], + pathParams: ['project', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { @@ -249423,170 +272780,168 @@ export namespace compute_v1 { return createAPIRequest(parameters); } } - } - export interface Params$Resource$Zoneoperations$Delete extends StandardParameters { - /** - * Name of the Operations resource to delete, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Zoneoperations$Get extends StandardParameters { - /** - * Name of the Operations resource to return, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Zoneoperations$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. - * 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 onresource 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) - * ``` + * Retrieves details of a specific zone VM extension policy within a project. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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: + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Do the magic + * const res = await compute.zoneVmExtensionPolicies.get({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the VM extension policy resource to return. + * vmExtensionPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", + * // "id": "my_id", + * // "instanceSelectors": [], + * // "kind": "my_kind", + * // "managedByGlobal": false, + * // "name": "my_name", + * // "priority": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" + * // } + * } * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * ``` * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * Name of the zone for request. - */ - zone?: string; - } - export interface Params$Resource$Zoneoperations$Wait extends StandardParameters { - /** - * Name of the Operations resource to return, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the zone for this request. + * @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. */ - zone?: string; - } + get( + params: Params$Resource$Zonevmextensionpolicies$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Zonevmextensionpolicies$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Zonevmextensionpolicies$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Zonevmextensionpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Zonevmextensionpolicies$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Zonevmextensionpolicies$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Zonevmextensionpolicies$Get; + let options = (optionsOrCallback || {}) as MethodOptions; - export class Resource$Zones { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Zonevmextensionpolicies$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'vmExtensionPolicy'], + pathParams: ['project', 'vmExtensionPolicy', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Returns the specified Zone resource. + * Creates a new zone-level VM extension policy within a project. * @example * ```js * // Before running the sample: @@ -249610,7 +272965,6 @@ export namespace compute_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -249619,28 +272973,79 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.zones.get({ + * const res = await compute.zoneVmExtensionPolicies.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the zone resource to return. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", + * // "id": "my_id", + * // "instanceSelectors": [], + * // "kind": "my_kind", + * // "managedByGlobal": false, + * // "name": "my_name", + * // "priority": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "availableCpuPlatforms": [], + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", * // "status": "my_status", - * // "supportsPzs": false + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -249656,52 +273061,53 @@ export namespace compute_v1 { * @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$Zones$Get, + insert( + params: Params$Resource$Zonevmextensionpolicies$Insert, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Zones$Get, + insert( + params?: Params$Resource$Zonevmextensionpolicies$Insert, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Zones$Get, + ): Promise>; + insert( + params: Params$Resource$Zonevmextensionpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Zones$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Zonevmextensionpolicies$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Zones$Get, - callback: BodyResponseCallback + insert( + params: Params$Resource$Zonevmextensionpolicies$Insert, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Zones$Get - | BodyResponseCallback + | Params$Resource$Zonevmextensionpolicies$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Zones$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Zonevmextensionpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Zones$Get; + params = {} as Params$Resource$Zonevmextensionpolicies$Insert; options = {}; } @@ -249715,9 +273121,10 @@ export namespace compute_v1 { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/zones/{zone}' + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -249728,17 +273135,17 @@ export namespace compute_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of Zone resources available to the specified project. + * Lists all VM extension policies within a specific zone for a project. * @example * ```js * // Before running the sample: @@ -249771,7 +273178,7 @@ export namespace compute_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.zones.list({ + * const res = await compute.zoneVmExtensionPolicies.list({ * // 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 @@ -249863,16 +273270,20 @@ export namespace compute_v1 { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -249890,51 +273301,54 @@ export namespace compute_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Zones$List, + params: Params$Resource$Zonevmextensionpolicies$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Zones$List, + params?: Params$Resource$Zonevmextensionpolicies$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Zones$List, + params: Params$Resource$Zonevmextensionpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Zones$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Zonevmextensionpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Zones$List, - callback: BodyResponseCallback + params: Params$Resource$Zonevmextensionpolicies$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Zones$List - | BodyResponseCallback + | Params$Resource$Zonevmextensionpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Zones$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Zonevmextensionpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Zones$List; + params = {} as Params$Resource$Zonevmextensionpolicies$List; options = {}; } @@ -249947,42 +273361,313 @@ export namespace compute_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/compute/v1/projects/{project}/zones').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); + } + } + + /** + * Modifies an existing zone VM extension policy within a project. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.zoneVmExtensionPolicies.update({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // 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. + * // + * // 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: 'placeholder-value', + * // Name of the zone VM extension policy to update. + * vmExtensionPolicy: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", + * // "id": "my_id", + * // "instanceSelectors": [], + * // "kind": "my_kind", + * // "managedByGlobal": false, + * // "name": "my_name", + * // "priority": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + update( + params: Params$Resource$Zonevmextensionpolicies$Update, + options: StreamMethodOptions + ): Promise>; + update( + params?: Params$Resource$Zonevmextensionpolicies$Update, + options?: MethodOptions + ): Promise>; + update( + params: Params$Resource$Zonevmextensionpolicies$Update, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + update( + params: Params$Resource$Zonevmextensionpolicies$Update, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + update( + params: Params$Resource$Zonevmextensionpolicies$Update, + callback: BodyResponseCallback + ): void; + update(callback: BodyResponseCallback): void; + update( + paramsOrCallback?: + | Params$Resource$Zonevmextensionpolicies$Update + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Zonevmextensionpolicies$Update; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Zonevmextensionpolicies$Update; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'vmExtensionPolicy'], + pathParams: ['project', 'vmExtensionPolicy', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); } } } - export interface Params$Resource$Zones$Get extends StandardParameters { + export interface Params$Resource$Zonevmextensionpolicies$Delete extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the zone resource to return. + * 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. + * + * 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; + /** + * Name of the zone VM extension policy to delete. + */ + vmExtensionPolicy?: string; + /** + * Name of the zone for this request. */ zone?: string; } - export interface Params$Resource$Zones$List extends StandardParameters { + export interface Params$Resource$Zonevmextensionpolicies$Get extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the VM extension policy resource to return. + */ + vmExtensionPolicy?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Zonevmextensionpolicies$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * Name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$VmExtensionPolicy; + } + export interface Params$Resource$Zonevmextensionpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -250085,5 +273770,44 @@ export namespace compute_v1 { * with an error code. */ returnPartialSuccess?: boolean; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Zonevmextensionpolicies$Update extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * 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. + * + * 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; + /** + * Name of the zone VM extension policy to update. + */ + vmExtensionPolicy?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$VmExtensionPolicy; } } diff --git a/src/apis/config/v1.ts b/src/apis/config/v1.ts index 19c5fb650ce..8d1e9c6663a 100644 --- a/src/apis/config/v1.ts +++ b/src/apis/config/v1.ts @@ -315,6 +315,76 @@ export namespace config_v1 { */ workerPool?: string | null; } + /** + * A DeploymentGroup is a collection of DeploymentUnits that in a DAG-like structure. + */ + export interface Schema$DeploymentGroup { + /** + * Optional. Arbitrary key-value metadata storage e.g. to help client tools identify deployment group during automation. See https://google.aip.dev/148#annotations for details on format and size limitations. + */ + annotations?: {[key: string]: string} | null; + /** + * Output only. Time when the deployment group was created. + */ + createTime?: string | null; + /** + * The deployment units of the deployment group in a DAG like structure. When a deployment group is being provisioned, the deployment units are deployed in a DAG order. The provided units must be in a DAG order, otherwise an error will be returned. + */ + deploymentUnits?: Schema$DeploymentUnit[]; + /** + * Optional. User-defined metadata for the deployment group. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. The name of the deployment group. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}'. + */ + name?: string | null; + /** + * Output only. The error status of the deployment group provisioning or deprovisioning. + */ + provisioningError?: Schema$Status; + /** + * Output only. The provisioning state of the deployment group. + */ + provisioningState?: string | null; + /** + * Output only. Additional information regarding the current provisioning state. + */ + provisioningStateDescription?: string | null; + /** + * Output only. Current state of the deployment group. + */ + state?: string | null; + /** + * Output only. Additional information regarding the current state. + */ + stateDescription?: string | null; + /** + * Output only. Time when the deployment group was last updated. + */ + updateTime?: string | null; + } + /** + * A DeploymentGroupRevision represents a snapshot of a DeploymentGroup at a given point in time, created when a DeploymentGroup is provisioned or deprovisioned. + */ + export interface Schema$DeploymentGroupRevision { + /** + * Output only. The alternative IDs of the deployment group revision. + */ + alternativeIds?: string[] | null; + /** + * Output only. Time when the deployment group revision was created. + */ + createTime?: string | null; + /** + * Identifier. The name of the deployment group revision. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}/revisions/{revision\}'. + */ + name?: string | null; + /** + * Output only. The snapshot of the deployment group at this revision. + */ + snapshot?: Schema$DeploymentGroup; + } /** * Ephemeral metadata content describing the state of a deployment operation. */ @@ -336,6 +406,120 @@ export namespace config_v1 { */ step?: string | null; } + /** + * The summary of the deployment operation. + */ + export interface Schema$DeploymentOperationSummary { + /** + * Output only. Location of Deployment operations artifacts in `gs://{bucket\}/{object\}` format. + */ + artifacts?: string | null; + /** + * Output only. Cloud Build instance UUID associated with this operation. + */ + build?: string | null; + /** + * Output only. Location of Deployment operations content in `gs://{bucket\}/{object\}` format. + */ + content?: string | null; + /** + * Output only. The current step the deployment operation is running. + */ + deploymentStep?: string | null; + /** + * Output only. Location of Deployment operations logs in `gs://{bucket\}/{object\}` format. + */ + logs?: string | null; + } + /** + * Configuration for a value sourced from a Deployment. + */ + export interface Schema$DeploymentSource { + /** + * Required. The resource name of the source Deployment to import the output from. Format: projects/{project\}/locations/{location\}/deployments/{deployment\} The source deployment must be in the same project and location. + */ + deployment?: string | null; + /** + * Required. The name of the output variable in the source deployment's latest successfully applied revision. + */ + outputName?: string | null; + } + /** + * Spec for a deployment to be created. + */ + export interface Schema$DeploymentSpec { + /** + * Required. The deployment to be created. + */ + deployment?: Schema$Deployment; + /** + * Required. The id of the deployment to be created which doesn't include the project id and location. + */ + deploymentId?: string | null; + } + /** + * A DeploymentUnit is a container for a deployment and its dependencies. An existing deployment can be provided directly in the unit, or the unit can act as a placeholder to define the DAG, with the deployment specs supplied in a `provisionDeploymentRequest`. + */ + export interface Schema$DeploymentUnit { + /** + * Required. The IDs of the deployment units within the deployment group that this unit depends on. + */ + dependencies?: string[] | null; + /** + * Optional. The name of the deployment to be provisioned. Format: 'projects/{project_id\}/locations/{location\}/deployments/{deployment\}'. + */ + deployment?: string | null; + /** + * The id of the deployment unit. Must be unique within the deployment group. + */ + id?: string | null; + } + /** + * The progress of a deployment unit provisioning or deprovisioning. + */ + export interface Schema$DeploymentUnitProgress { + /** + * Output only. The name of the deployment to be provisioned. Format: 'projects/{project\}/locations/{location\}/deployments/{deployment\}'. + */ + deployment?: string | null; + /** + * Output only. The summary of the deployment operation. + */ + deploymentOperationSummary?: Schema$DeploymentOperationSummary; + /** + * Output only. Holds the error status of the deployment unit provisioning. + */ + error?: Schema$Status; + /** + * Output only. The intent of the deployment unit. + */ + intent?: string | null; + /** + * Output only. The current step of the deployment unit provisioning. + */ + state?: string | null; + /** + * Output only. Additional information regarding the current state. + */ + stateDescription?: string | null; + /** + * Output only. The unit id of the deployment unit to be provisioned. + */ + unitId?: string | null; + } + /** + * The request message for the DeprovisionDeploymentGroup method. + */ + export interface Schema$DeprovisionDeploymentGroupRequest { + /** + * Optional. Policy on how resources within each deployment should be handled during deletion. This policy is applied globally to the deletion of all deployments in this group. This corresponds to the 'delete_policy' field in DeleteDeploymentRequest. + */ + deletePolicy?: string | null; + /** + * Optional. If set to true, this option is propagated to the deletion of each deployment in the group. This corresponds to the 'force' field in DeleteDeploymentRequest. + */ + force?: boolean | 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); \} */ @@ -387,6 +571,15 @@ export namespace config_v1 { */ title?: string | null; } + /** + * Configuration for a source of an external value. + */ + export interface Schema$ExternalValueSource { + /** + * A source from a Deployment. + */ + deploymentSource?: Schema$DeploymentSource; + } /** * A set of files in a Git repository. */ @@ -413,6 +606,40 @@ export namespace config_v1 { */ lockId?: string | null; } + /** + * The response message for the ListDeploymentGroupRevisions method. + */ + export interface Schema$ListDeploymentGroupRevisionsResponse { + /** + * The deployment group revisions from the specified collection. + */ + deploymentGroupRevisions?: Schema$DeploymentGroupRevision[]; + /** + * Token to be supplied to the next ListDeploymentGroupRevisions request via `page_token` to obtain the next set of results. + */ + nextPageToken?: string | null; + /** + * Unordered list. Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * The response message for the ListDeploymentGroups method. + */ + export interface Schema$ListDeploymentGroupsResponse { + /** + * The deployment groups from the specified collection. + */ + deploymentGroups?: Schema$DeploymentGroup[]; + /** + * Token to be supplied to the next ListDeploymentGroups request via `page_token` to obtain the next set of results. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } export interface Schema$ListDeploymentsResponse { /** * List of Deployments. @@ -666,6 +893,10 @@ export namespace config_v1 { * Output only. Metadata about the preview operation state. */ previewMetadata?: Schema$PreviewOperationMetadata; + /** + * Output only. Metadata about ProvisionDeploymentGroup operation state. + */ + provisionDeploymentGroupMetadata?: Schema$ProvisionDeploymentGroupOperationMetadata; /** * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`. */ @@ -899,6 +1130,28 @@ export namespace config_v1 { */ sourceType?: string | null; } + /** + * Operation metadata for `ProvisionDeploymentGroup` and `DeprovisionDeploymentGroup` long-running operations. + */ + export interface Schema$ProvisionDeploymentGroupOperationMetadata { + /** + * Output only. Progress information for each deployment unit within the operation. + */ + deploymentUnitProgresses?: Schema$DeploymentUnitProgress[]; + /** + * Output only. The current step of the deployment group operation. + */ + step?: string | null; + } + /** + * The request message for the ProvisionDeploymentGroup method. + */ + export interface Schema$ProvisionDeploymentGroupRequest { + /** + * Optional. The deployment specs of the deployment units to be created within the same project and location of the deployment group. The key is the unit ID, and the value is the `DeploymentSpec`. Provisioning will fail if a `deployment_spec` has a `deployment_id` that matches an existing deployment in the same project and location. If an existing deployment was part of the last successful revision but is no longer in the current DeploymentGroup's `deployment_units`, it will be recreated if included in `deployment_specs`. + */ + deploymentSpecs?: {[key: string]: Schema$DeploymentSpec} | null; + } /** * Resource represents a Google Cloud Platform resource actuated by IM. Resources are child resources of Revisions. */ @@ -1166,6 +1419,10 @@ export namespace config_v1 { * TerraformBlueprint describes the source of a Terraform root module which describes the resources and configs to be deployed. */ export interface Schema$TerraformBlueprint { + /** + * Optional. Map of input variable names in this blueprint to configurations for importing values from external sources. + */ + externalValues?: {[key: string]: Schema$ExternalValueSource} | null; /** * URI of an object in Google Cloud Storage. Format: `gs://{bucket\}/{object\}` URI may also specify an object version for zipped objects. Format: `gs://{bucket\}/{object\}#{version\}` */ @@ -1286,12 +1543,16 @@ export namespace config_v1 { export class Resource$Projects$Locations { context: APIRequestContext; + deploymentGroups: Resource$Projects$Locations$Deploymentgroups; deployments: Resource$Projects$Locations$Deployments; operations: Resource$Projects$Locations$Operations; previews: Resource$Projects$Locations$Previews; terraformVersions: Resource$Projects$Locations$Terraformversions; constructor(context: APIRequestContext) { this.context = context; + this.deploymentGroups = new Resource$Projects$Locations$Deploymentgroups( + this.context + ); this.deployments = new Resource$Projects$Locations$Deployments( this.context ); @@ -1581,7 +1842,7 @@ export namespace config_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1611,7 +1872,7 @@ export namespace config_v1 { * * // Do the magic * const res = await config.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1896,7 +2157,7 @@ export namespace config_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -1932,6 +2193,1516 @@ export namespace config_v1 { requestBody?: Schema$AutoMigrationConfig; } + export class Resource$Projects$Locations$Deploymentgroups { + context: APIRequestContext; + revisions: Resource$Projects$Locations$Deploymentgroups$Revisions; + constructor(context: APIRequestContext) { + this.context = context; + this.revisions = + new Resource$Projects$Locations$Deploymentgroups$Revisions( + this.context + ); + } + + /** + * Creates a DeploymentGroup The newly created DeploymentGroup will be in the `CREATING` state and can be retrieved via Get and List calls. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/config.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const config = google.config('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await config.projects.locations.deploymentGroups.create({ + * // Required. The deployment group ID. + * deploymentGroupId: 'placeholder-value', + * // Required. The parent in whose context the Deployment Group is created. The parent value is in the format: 'projects/{project_id\}/locations/{location\}' + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "deploymentUnits": [], + * // "labels": {}, + * // "name": "my_name", + * // "provisioningError": {}, + * // "provisioningState": "my_provisioningState", + * // "provisioningStateDescription": "my_provisioningStateDescription", + * // "state": "my_state", + * // "stateDescription": "my_stateDescription", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Deploymentgroups$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Deploymentgroups$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Deploymentgroups$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Deploymentgroups$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Deploymentgroups$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Deploymentgroups$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Deploymentgroups$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Deploymentgroups$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://config.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/deploymentGroups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a DeploymentGroup + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/config.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const config = google.config('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await config.projects.locations.deploymentGroups.delete({ + * // Optional. Policy on how to handle referenced deployments when deleting the DeploymentGroup. If unspecified, the default behavior is to fail the deletion if any deployments currently referenced in the `deployment_units` of the DeploymentGroup or in the latest revision are not deleted. + * deploymentReferencePolicy: 'placeholder-value', + * // Optional. If set to true, any revisions for this deployment group will also be deleted. (Otherwise, the request will only work if the deployment group has no revisions.) + * force: 'placeholder-value', + * // Required. The name of DeploymentGroup in the format projects/{project_id\}/locations/{location_id\}/deploymentGroups/{deploymentGroup\} + * name: 'projects/my-project/locations/my-location/deploymentGroups/my-deploymentGroup', + * // 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: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Deploymentgroups$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Deploymentgroups$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Deploymentgroups$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Deploymentgroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Deploymentgroups$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Deploymentgroups$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Deploymentgroups$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Deploymentgroups$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://config.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deprovisions a deployment group. NOTE: As a first step of this operation, Infra Manager will automatically delete any Deployments that were part of the *last successful* DeploymentGroupRevision but are *no longer* included in the *current* DeploymentGroup definition (e.g., following an `UpdateDeploymentGroup` call), along with their actuated resources. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/config.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const config = google.config('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await config.projects.locations.deploymentGroups.deprovision({ + * // Required. The name of the deployment group to deprovision. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}'. + * name: 'projects/my-project/locations/my-location/deploymentGroups/my-deploymentGroup', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "deletePolicy": "my_deletePolicy", + * // "force": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + deprovision( + params: Params$Resource$Projects$Locations$Deploymentgroups$Deprovision, + options: StreamMethodOptions + ): Promise>; + deprovision( + params?: Params$Resource$Projects$Locations$Deploymentgroups$Deprovision, + options?: MethodOptions + ): Promise>; + deprovision( + params: Params$Resource$Projects$Locations$Deploymentgroups$Deprovision, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + deprovision( + params: Params$Resource$Projects$Locations$Deploymentgroups$Deprovision, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + deprovision( + params: Params$Resource$Projects$Locations$Deploymentgroups$Deprovision, + callback: BodyResponseCallback + ): void; + deprovision(callback: BodyResponseCallback): void; + deprovision( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Deploymentgroups$Deprovision + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Deploymentgroups$Deprovision; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Deploymentgroups$Deprovision; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://config.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:deprovision').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Get a DeploymentGroup for a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/config.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const config = google.config('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await config.projects.locations.deploymentGroups.get({ + * // Required. The name of the deployment group to retrieve. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}'. + * name: 'projects/my-project/locations/my-location/deploymentGroups/my-deploymentGroup', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "deploymentUnits": [], + * // "labels": {}, + * // "name": "my_name", + * // "provisioningError": {}, + * // "provisioningState": "my_provisioningState", + * // "provisioningStateDescription": "my_provisioningStateDescription", + * // "state": "my_state", + * // "stateDescription": "my_stateDescription", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Deploymentgroups$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Deploymentgroups$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Deploymentgroups$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Deploymentgroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Deploymentgroups$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Deploymentgroups$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Deploymentgroups$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Deploymentgroups$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://config.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * List DeploymentGroups for a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/config.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const config = google.config('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await config.projects.locations.deploymentGroups.list({ + * // Optional. Lists the DeploymentGroups that match the filter expression. A filter expression filters the deployment groups listed in the response. The expression must be of the form '{field\} {operator\} {value\}' where operators: '<', '\>', '<=', '\>=', '!=', '=', ':' are supported (colon ':' represents a HAS operator which is roughly synonymous with equality). {field\} can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = "projects/foo/locations/us-central1/deploymentGroups/bar" - Filter by labels: - Resources that have a key called 'foo' labels.foo:* - Resources that have a key called 'foo' whose value is 'bar' labels.foo = bar - Filter by state: - DeploymentGroups in CREATING state. state=CREATING + * filter: 'placeholder-value', + * // Optional. Field to use to sort the list. + * orderBy: 'placeholder-value', + * // Optional. When requesting a page of resources, 'page_size' specifies number of resources to return. If unspecified, at most 500 will be returned. The maximum value is 1000. + * pageSize: 'placeholder-value', + * // Optional. Token returned by previous call to 'ListDeploymentGroups' which specifies the position in the list from where to continue listing the deployment groups. + * pageToken: 'placeholder-value', + * // Required. The parent, which owns this collection of deployment groups. Format: 'projects/{project_id\}/locations/{location\}'. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "deploymentGroups": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Deploymentgroups$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Deploymentgroups$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Deploymentgroups$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Deploymentgroups$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Deploymentgroups$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Deploymentgroups$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Deploymentgroups$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Deploymentgroups$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://config.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/deploymentGroups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates a DeploymentGroup + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/config.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const config = google.config('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await config.projects.locations.deploymentGroups.patch({ + * // Identifier. The name of the deployment group. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}'. + * name: 'projects/my-project/locations/my-location/deploymentGroups/my-deploymentGroup', + * // 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: 'placeholder-value', + * // Optional. Field mask used to specify the fields to be overwritten in the Deployment Group 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "deploymentUnits": [], + * // "labels": {}, + * // "name": "my_name", + * // "provisioningError": {}, + * // "provisioningState": "my_provisioningState", + * // "provisioningStateDescription": "my_provisioningStateDescription", + * // "state": "my_state", + * // "stateDescription": "my_stateDescription", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Deploymentgroups$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Deploymentgroups$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Deploymentgroups$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Deploymentgroups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Deploymentgroups$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Deploymentgroups$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Deploymentgroups$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Deploymentgroups$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://config.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Provisions a deployment group. NOTE: As a first step of this operation, Infra Manager will automatically delete any Deployments that were part of the *last successful* DeploymentGroupRevision but are *no longer* included in the *current* DeploymentGroup definition (e.g., following an `UpdateDeploymentGroup` call), along with their actuated resources. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/config.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const config = google.config('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await config.projects.locations.deploymentGroups.provision({ + * // Required. The name of the deployment group to provision. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}'. + * name: 'projects/my-project/locations/my-location/deploymentGroups/my-deploymentGroup', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "deploymentSpecs": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + provision( + params: Params$Resource$Projects$Locations$Deploymentgroups$Provision, + options: StreamMethodOptions + ): Promise>; + provision( + params?: Params$Resource$Projects$Locations$Deploymentgroups$Provision, + options?: MethodOptions + ): Promise>; + provision( + params: Params$Resource$Projects$Locations$Deploymentgroups$Provision, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + provision( + params: Params$Resource$Projects$Locations$Deploymentgroups$Provision, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + provision( + params: Params$Resource$Projects$Locations$Deploymentgroups$Provision, + callback: BodyResponseCallback + ): void; + provision(callback: BodyResponseCallback): void; + provision( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Deploymentgroups$Provision + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Deploymentgroups$Provision; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Deploymentgroups$Provision; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://config.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:provision').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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$Deploymentgroups$Create extends StandardParameters { + /** + * Required. The deployment group ID. + */ + deploymentGroupId?: string; + /** + * Required. The parent in whose context the Deployment Group is created. The parent value is in the format: 'projects/{project_id\}/locations/{location\}' + */ + 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; + + /** + * Request body metadata + */ + requestBody?: Schema$DeploymentGroup; + } + export interface Params$Resource$Projects$Locations$Deploymentgroups$Delete extends StandardParameters { + /** + * Optional. Policy on how to handle referenced deployments when deleting the DeploymentGroup. If unspecified, the default behavior is to fail the deletion if any deployments currently referenced in the `deployment_units` of the DeploymentGroup or in the latest revision are not deleted. + */ + deploymentReferencePolicy?: string; + /** + * Optional. If set to true, any revisions for this deployment group will also be deleted. (Otherwise, the request will only work if the deployment group has no revisions.) + */ + force?: boolean; + /** + * Required. The name of DeploymentGroup in the format projects/{project_id\}/locations/{location_id\}/deploymentGroups/{deploymentGroup\} + */ + 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; + } + export interface Params$Resource$Projects$Locations$Deploymentgroups$Deprovision extends StandardParameters { + /** + * Required. The name of the deployment group to deprovision. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}'. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DeprovisionDeploymentGroupRequest; + } + export interface Params$Resource$Projects$Locations$Deploymentgroups$Get extends StandardParameters { + /** + * Required. The name of the deployment group to retrieve. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}'. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Deploymentgroups$List extends StandardParameters { + /** + * Optional. Lists the DeploymentGroups that match the filter expression. A filter expression filters the deployment groups listed in the response. The expression must be of the form '{field\} {operator\} {value\}' where operators: '<', '\>', '<=', '\>=', '!=', '=', ':' are supported (colon ':' represents a HAS operator which is roughly synonymous with equality). {field\} can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = "projects/foo/locations/us-central1/deploymentGroups/bar" - Filter by labels: - Resources that have a key called 'foo' labels.foo:* - Resources that have a key called 'foo' whose value is 'bar' labels.foo = bar - Filter by state: - DeploymentGroups in CREATING state. state=CREATING + */ + filter?: string; + /** + * Optional. Field to use to sort the list. + */ + orderBy?: string; + /** + * Optional. When requesting a page of resources, 'page_size' specifies number of resources to return. If unspecified, at most 500 will be returned. The maximum value is 1000. + */ + pageSize?: number; + /** + * Optional. Token returned by previous call to 'ListDeploymentGroups' which specifies the position in the list from where to continue listing the deployment groups. + */ + pageToken?: string; + /** + * Required. The parent, which owns this collection of deployment groups. Format: 'projects/{project_id\}/locations/{location\}'. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Deploymentgroups$Patch extends StandardParameters { + /** + * Identifier. The name of the deployment group. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}'. + */ + 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 used to specify the fields to be overwritten in the Deployment Group 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; + + /** + * Request body metadata + */ + requestBody?: Schema$DeploymentGroup; + } + export interface Params$Resource$Projects$Locations$Deploymentgroups$Provision extends StandardParameters { + /** + * Required. The name of the deployment group to provision. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}'. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ProvisionDeploymentGroupRequest; + } + + export class Resource$Projects$Locations$Deploymentgroups$Revisions { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets details about a DeploymentGroupRevision. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/config.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const config = google.config('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await config.projects.locations.deploymentGroups.revisions.get({ + * // Required. The name of the deployment group revision to retrieve. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}/revisions/{revision\}'. + * name: 'projects/my-project/locations/my-location/deploymentGroups/my-deploymentGroup/revisions/my-revision', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "alternativeIds": [], + * // "createTime": "my_createTime", + * // "name": "my_name", + * // "snapshot": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Deploymentgroups$Revisions$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Deploymentgroups$Revisions$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Deploymentgroups$Revisions$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Deploymentgroups$Revisions$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Deploymentgroups$Revisions$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Deploymentgroups$Revisions$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Deploymentgroups$Revisions$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Deploymentgroups$Revisions$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://config.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists DeploymentGroupRevisions in a given DeploymentGroup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/config.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const config = google.config('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await config.projects.locations.deploymentGroups.revisions.list({ + * // Optional. When requesting a page of resources, 'page_size' specifies number of resources to return. If unspecified, a sensible default will be used by the server. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. Token returned by previous call to 'ListDeploymentGroupRevisions' which specifies the position in the list from where to continue listing the deployment group revisions. All other parameters provided to `ListDeploymentGroupRevisions` must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The parent, which owns this collection of deployment group revisions. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}'. + * parent: + * 'projects/my-project/locations/my-location/deploymentGroups/my-deploymentGroup', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "deploymentGroupRevisions": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Deploymentgroups$Revisions$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Deploymentgroups$Revisions$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Deploymentgroups$Revisions$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Deploymentgroups$Revisions$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Deploymentgroups$Revisions$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Deploymentgroups$Revisions$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Deploymentgroups$Revisions$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Deploymentgroups$Revisions$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://config.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/revisions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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$Deploymentgroups$Revisions$Get extends StandardParameters { + /** + * Required. The name of the deployment group revision to retrieve. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}/revisions/{revision\}'. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Deploymentgroups$Revisions$List extends StandardParameters { + /** + * Optional. When requesting a page of resources, 'page_size' specifies number of resources to return. If unspecified, a sensible default will be used by the server. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. Token returned by previous call to 'ListDeploymentGroupRevisions' which specifies the position in the list from where to continue listing the deployment group revisions. All other parameters provided to `ListDeploymentGroupRevisions` must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The parent, which owns this collection of deployment group revisions. Format: 'projects/{project_id\}/locations/{location\}/deploymentGroups/{deployment_group\}'. + */ + parent?: string; + } + export class Resource$Projects$Locations$Deployments { context: APIRequestContext; revisions: Resource$Projects$Locations$Deployments$Revisions; diff --git a/src/apis/connectors/v1.ts b/src/apis/connectors/v1.ts index e96a816f5e9..cf36adf5fcc 100644 --- a/src/apis/connectors/v1.ts +++ b/src/apis/connectors/v1.ts @@ -124,6 +124,31 @@ export namespace connectors_v1 { } } + /** + * * AdminFilters defines a set of filters that can be applied to a connection. These are currently used by Gemini Enterprise connections. + */ + export interface Schema$AdminFilters { + /** + * Required. Unique name for the filter, e.g., "SharePointSiteURL", "DocumentType", "ChatSpaceName". + */ + filterKey?: string | null; + /** + * Required. Type of the filter. + */ + filterType?: string | null; + /** + * Optional. A single integer value. + */ + intValue?: string | null; + /** + * Optional. List of string values. + */ + stringListValues?: Schema$StringListValues; + /** + * Optional. A single string value. + */ + stringValue?: string | null; + } /** * Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { "audit_configs": [ { "service": "allServices", "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ "user:jose@example.com" ] \}, { "log_type": "DATA_WRITE" \}, { "log_type": "ADMIN_READ" \} ] \}, { "service": "sampleservice.googleapis.com", "audit_log_configs": [ { "log_type": "DATA_READ" \}, { "log_type": "DATA_WRITE", "exempted_members": [ "user:aliya@example.com" ] \} ] \} ] \} For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging. */ @@ -376,15 +401,15 @@ export namespace connectors_v1 { */ export interface Schema$ConfigVariable { /** - * Value is a bool. + * Optional. Value is a bool. */ boolValue?: boolean | null; /** - * Value is a Encryption Key. + * Optional. Value is a Encryption Key. */ encryptionKeyValue?: Schema$EncryptionKey; /** - * Value is an integer + * Optional. Value is an integer */ intValue?: string | null; /** @@ -392,11 +417,11 @@ export namespace connectors_v1 { */ key?: string | null; /** - * Value is a secret. + * Optional. Value is a secret. */ secretValue?: Schema$Secret; /** - * Value is a string. + * Optional. Value is a string. */ stringValue?: string | null; } @@ -469,6 +494,10 @@ export namespace connectors_v1 { * Connection represents an instance of connector. */ export interface Schema$Connection { + /** + * Optional. Admin filters for the connection. These are used by Gemini Enterprise. + */ + adminFilters?: Schema$AdminFilters[]; /** * Optional. Async operations enabled for the connection. If Async Operations is enabled, Connection allows the customers to initiate async long running operations using the actions API. */ @@ -1165,7 +1194,7 @@ export namespace connectors_v1 { */ host?: string | null; /** - * The port is the target port number that is accepted by the destination. + * Optional. The port is the target port number that is accepted by the destination. */ port?: number | null; /** @@ -1178,11 +1207,11 @@ export namespace connectors_v1 { */ export interface Schema$DestinationConfig { /** - * The destinations for the key. + * Optional. The destinations for the key. */ destinations?: Schema$Destination[]; /** - * The key is the destination identifier that is supported by the Connector. + * Optional. The key is the destination identifier that is supported by the Connector. */ key?: string | null; } @@ -1286,7 +1315,7 @@ export namespace connectors_v1 { */ kmsKeyName?: string | null; /** - * Type. + * Optional. Specifies the type of the encryption key. */ type?: string | null; } @@ -1690,13 +1719,17 @@ export namespace connectors_v1 { secretVersion?: string | null; } /** - * Eventing Configuration of a connection next: 19 + * Eventing Configuration of a connection next: 21 */ export interface Schema$EventingConfig { /** * Optional. Additional eventing related field values */ additionalVariables?: Schema$ConfigVariable[]; + /** + * Optional. List of allowed event types for the connection. + */ + allowedEventTypes?: string[] | null; /** * Optional. Auth details for the webhook adapter. */ @@ -1714,9 +1747,13 @@ export namespace connectors_v1 { */ enrichmentEnabled?: boolean | null; /** - * Optional. Ingress endpoint of the event listener. This is used only when private connectivity is enabled. + * Output only. Ingress endpoint of the event listener. This is used only when private connectivity is enabled. */ eventsListenerIngressEndpoint?: string | null; + /** + * Optional. Filter to be applied on the events to be received by the connection. + */ + globalEventFilter?: string | null; /** * Optional. Auth details for the event listener. */ @@ -1831,6 +1868,10 @@ export namespace connectors_v1 { * Output only. Array of search keywords. */ searchTags?: string[] | null; + /** + * The webhook model supported by this connector. + */ + subscriptionType?: string | null; /** * Output only. The type of the event listener for a specific connector. */ @@ -1890,6 +1931,10 @@ export namespace connectors_v1 { * Optional. Event type id of the event of current EventSubscription. */ eventTypeId?: string | null; + /** + * Optional. Filter for the event subscription. Incoming events are filtered based on the filter expression. + */ + filter?: string | null; /** * Optional. JMS is the source for the event listener. */ @@ -2050,6 +2095,24 @@ export namespace connectors_v1 { */ jsonSchema?: Schema$JsonAuthSchema; } + /** + * Request message for FetchConnectionToolspecOverride API. + */ + export interface Schema$FetchConnectionToolspecOverrideRequest { + /** + * Required. List of tools for which the tool spec override is to be generated. + */ + toolNames?: Schema$ToolName[]; + } + /** + * Response message for FetchConnectionToolspecOverride API. + */ + export interface Schema$FetchConnectionToolspecOverrideResponse { + /** + * Toolspec overrides for the connection. + */ + toolspecOverride?: Schema$ToolspecOverride; + } /** * Metadata of an entity field. */ @@ -2298,26 +2361,106 @@ export namespace connectors_v1 { * JsonSchema representation of schema metadata */ export interface Schema$JsonSchema { + /** + * A comment on the schema. + */ + $comment?: string | null; + /** + * Definitions for the schema. + */ + $defs?: {[key: string]: Schema$JsonSchema} | null; + /** + * The URI defining the core schema meta-schema. + */ + $id?: string | null; + /** + * A reference to another schema. + */ + $ref?: string | null; + /** + * The URI defining the schema. + */ + $schema?: string | null; /** * Additional details apart from standard json schema fields, this gives flexibility to store metadata about the schema */ additionalDetails?: {[key: string]: any} | null; + /** + * Schema for additional items. + */ + additionalItems?: Schema$JsonSchema; + /** + * Schema for additional properties. + */ + additionalProperties?: Schema$JsonSchema; + /** + * Schema that must be valid against all of the sub-schemas. + */ + allOf?: Schema$JsonSchema[]; + /** + * Schema that must be valid against at least one of the sub-schemas. + */ + anyOf?: Schema$JsonSchema[]; + /** + * Const value that the data must match. + */ + const?: any | null; + /** + * Schema that applies to at least one item in an array. + */ + contains?: Schema$JsonSchema; + /** + * Encoding of the content. + */ + contentEncoding?: string | null; + /** + * Media type of the content. + */ + contentMediaType?: string | null; /** * The default value of the field or object described by this schema. */ default?: any | null; + /** + * Definitions for the schema. + */ + definitions?: {[key: string]: Schema$JsonSchema} | null; + /** + * Dependencies for the schema. + */ + dependencies?: {[key: string]: any} | null; /** * A description of this schema. */ description?: string | null; + /** + * Schema that must be valid if the "if" schema is invalid. + */ + else?: Schema$JsonSchema; /** * Possible values for an enumeration. This works in conjunction with `type` to represent types with a fixed set of legal values */ enum?: any[] | null; + /** + * Examples of the value. + */ + examples?: any[] | null; + /** + * Whether the maximum number value is exclusive. + */ + exclusiveMaximum?: any | null; + /** + * Whether the minimum number value is exclusive. + */ + exclusiveMinimum?: any | null; /** * Format of the value as per https://json-schema.org/understanding-json-schema/reference/string.html#format */ format?: string | null; + /** + * Schema that must be valid if the "if" schema is valid. + */ + if?: Schema$JsonSchema; /** * Schema that applies to array values, applicable only if this is of type `array`. */ @@ -2326,18 +2469,94 @@ export namespace connectors_v1 { * JDBC datatype of the field. */ jdbcType?: string | null; + /** + * Maximum value of the number field. + */ + maximum?: any | null; + /** + * Maximum number of items in the array field. + */ + maxItems?: number | null; + /** + * Maximum length of the string field. + */ + maxLength?: number | null; + /** + * Maximum number of properties. + */ + maxProperties?: number | null; + /** + * Minimum value of the number field. + */ + minimum?: any | null; + /** + * Minimum number of items in the array field. + */ + minItems?: number | null; + /** + * Minimum length of the string field. + */ + minLength?: number | null; + /** + * Minimum number of properties. + */ + minProperties?: number | null; + /** + * Number must be a multiple of this value. + */ + multipleOf?: number | null; + /** + * Schema that must not be valid. + */ + not?: Schema$JsonSchema; + /** + * Schema that must be valid against at least one of the sub-schemas. + */ + oneOf?: Schema$JsonSchema[]; + /** + * Regex pattern of the string field. This is a string value that describes the regular expression that the string value should match. + */ + pattern?: string | null; + /** + * Pattern properties for the schema. + */ + patternProperties?: {[key: string]: Schema$JsonSchema} | null; /** * The child schemas, applicable only if this is of type `object`. The key is the name of the property and the value is the json schema that describes that property */ properties?: {[key: string]: Schema$JsonSchema} | null; + /** + * Schema for property names. + */ + propertyNames?: Schema$JsonSchema; + /** + * Whether the value is read-only. + */ + readOnly?: boolean | null; /** * Whether this property is required. */ required?: string[] | null; + /** + * Schema that must be valid if the "if" schema is valid. + */ + then?: Schema$JsonSchema; + /** + * A title of the schema. + */ + title?: string | null; /** * JSON Schema Validation: A Vocabulary for Structural Validation of JSON */ type?: string[] | null; + /** + * Whether the items in the array field are unique. + */ + uniqueItems?: boolean | null; + /** + * Whether the value is write-only. + */ + writeOnly?: boolean | null; } /** * JWT claims used for the jwt-bearer authorization grant. @@ -3339,6 +3558,10 @@ export namespace connectors_v1 { * Regional Settings details. */ export interface Schema$RegionalSettings { + /** + * Optional. Client type for the regional settings. + */ + client?: string | null; /** * Optional. Regional encryption config to hold CMEK details. */ @@ -3840,6 +4063,15 @@ export namespace connectors_v1 { */ message?: string | null; } + /** + * StringListValues is a message to store a list of string values. + */ + export interface Schema$StringListValues { + /** + * Required. The list of string values. + */ + listValues?: string[] | null; + } /** * Supported runtime features of a connector version. */ @@ -3921,6 +4153,10 @@ export namespace connectors_v1 { * Toolspec overrides for a connection only holds the information that is to be displayed in the UI for admins. */ export interface Schema$ToolspecOverride { + /** + * Required. Represents the base version of the toolspec for which admin has added overrides. + */ + baseVersion?: string | null; /** * Output only. Created time. */ @@ -3939,7 +4175,7 @@ export namespace connectors_v1 { */ export interface Schema$TrafficShapingConfig { /** - * Required. * The duration over which the API call quota limits are calculated. This duration is used to define the time window for evaluating if the number of API calls made by a user is within the allowed quota limits. For example: - To define a quota sampled over 16 seconds, set `seconds` to 16 - To define a quota sampled over 5 minutes, set `seconds` to 300 (5 * 60) - To define a quota sampled over 1 day, set `seconds` to 86400 (24 * 60 * 60) and so on. It is important to note that this duration is not the time the quota is valid for, but rather the time window over which the quota is evaluated. For example, if the quota is 100 calls per 10 seconds, then this duration field would be set to 10 seconds. + * Required. Specifies the duration over which the API call quota limits are calculated. This duration is used to define the time window for evaluating if the number of API calls made by a user is within the allowed quota limits. For example: - To define a quota sampled over 16 seconds, set `seconds` to 16 - To define a quota sampled over 5 minutes, set `seconds` to 300 (5 * 60) - To define a quota sampled over 1 day, set `seconds` to 86400 (24 * 60 * 60) and so on. It is important to note that this duration is not the time the quota is valid for, but rather the time window over which the quota is evaluated. For example, if the quota is 100 calls per 10 seconds, then this duration field would be set to 10 seconds. */ duration?: string | null; /** @@ -4028,6 +4264,14 @@ export namespace connectors_v1 { * Output only. Timestamp when the webhook was created. */ createTime?: string | null; + /** + * Output only. List of event subscriptions which are using the webhook. + */ + eventSubscriptions?: string[] | null; + /** + * Output only. List of event types for the webhook. This is the event types subscribed by the current webhook. + */ + eventTypes?: string[] | null; /** * Output only. ID to uniquely identify webhook. */ @@ -4278,6 +4522,7 @@ export namespace connectors_v1 { * * // Example response * // { + * // "client": "my_client", * // "encryptionConfig": {}, * // "name": "my_name", * // "networkConfig": {}, @@ -4525,7 +4770,7 @@ export namespace connectors_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -4555,7 +4800,7 @@ export namespace connectors_v1 { * * // Do the magic * const res = await connectors.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -4712,6 +4957,7 @@ export namespace connectors_v1 { * requestBody: { * // request body parameters * // { + * // "client": "my_client", * // "encryptionConfig": {}, * // "name": "my_name", * // "networkConfig": {}, @@ -4847,7 +5093,7 @@ export namespace connectors_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -4954,6 +5200,7 @@ export namespace connectors_v1 { * requestBody: { * // request body parameters * // { + * // "adminFilters": [], * // "asyncOperationsEnabled": false, * // "authConfig": {}, * // "authOverrideEnabled": false, @@ -5239,6 +5486,163 @@ export namespace connectors_v1 { } } + /** + * Fetches Toolspec Override for a connection for the given list of tools. Returns results from the db if the tool is already present. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/connectors.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const connectors = google.connectors('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await connectors.projects.locations.connections.fetchToolspecOverride({ + * // Required. Resource name format: projects/{project\}/locations/{location\}/connections/{connection\} + * name: 'projects/my-project/locations/my-location/connections/my-connection', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "toolNames": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "toolspecOverride": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + fetchToolspecOverride( + params: Params$Resource$Projects$Locations$Connections$Fetchtoolspecoverride, + options: StreamMethodOptions + ): Promise>; + fetchToolspecOverride( + params?: Params$Resource$Projects$Locations$Connections$Fetchtoolspecoverride, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + fetchToolspecOverride( + params: Params$Resource$Projects$Locations$Connections$Fetchtoolspecoverride, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetchToolspecOverride( + params: Params$Resource$Projects$Locations$Connections$Fetchtoolspecoverride, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetchToolspecOverride( + params: Params$Resource$Projects$Locations$Connections$Fetchtoolspecoverride, + callback: BodyResponseCallback + ): void; + fetchToolspecOverride( + callback: BodyResponseCallback + ): void; + fetchToolspecOverride( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Connections$Fetchtoolspecoverride + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Connections$Fetchtoolspecoverride; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Connections$Fetchtoolspecoverride; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://connectors.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:fetchToolspecOverride').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Generates Toolspec Override for a connection for the given list of entityTypes and operations. Returns results from the db if the entityType and operation are already present. * @example @@ -5436,6 +5840,7 @@ export namespace connectors_v1 { * * // Example response * // { + * // "adminFilters": [], * // "asyncOperationsEnabled": false, * // "authConfig": {}, * // "authOverrideEnabled": false, @@ -6353,6 +6758,7 @@ export namespace connectors_v1 { * requestBody: { * // request body parameters * // { + * // "adminFilters": [], * // "asyncOperationsEnabled": false, * // "authConfig": {}, * // "authOverrideEnabled": false, @@ -7261,6 +7667,17 @@ export namespace connectors_v1 { */ name?: string; } + export interface Params$Resource$Projects$Locations$Connections$Fetchtoolspecoverride extends StandardParameters { + /** + * Required. Resource name format: projects/{project\}/locations/{location\}/connections/{connection\} + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FetchConnectionToolspecOverrideRequest; + } export interface Params$Resource$Projects$Locations$Connections$Generatetoolspecoverride extends StandardParameters { /** * Required. Resource name format: projects/{project\}/locations/{location\}/connections/{connection\} @@ -9167,6 +9584,7 @@ export namespace connectors_v1 { * // "createTime": "my_createTime", * // "destinations": {}, * // "eventTypeId": "my_eventTypeId", + * // "filter": "my_filter", * // "jms": {}, * // "name": "my_name", * // "status": {}, @@ -9467,6 +9885,7 @@ export namespace connectors_v1 { * // "createTime": "my_createTime", * // "destinations": {}, * // "eventTypeId": "my_eventTypeId", + * // "filter": "my_filter", * // "jms": {}, * // "name": "my_name", * // "status": {}, @@ -9770,6 +10189,7 @@ export namespace connectors_v1 { * // "createTime": "my_createTime", * // "destinations": {}, * // "eventTypeId": "my_eventTypeId", + * // "filter": "my_filter", * // "jms": {}, * // "name": "my_name", * // "status": {}, diff --git a/src/apis/contactcenteraiplatform/v1alpha1.ts b/src/apis/contactcenteraiplatform/v1alpha1.ts index 6e356558da4..07afff98a3c 100644 --- a/src/apis/contactcenteraiplatform/v1alpha1.ts +++ b/src/apis/contactcenteraiplatform/v1alpha1.ts @@ -1214,7 +1214,7 @@ export namespace contactcenteraiplatform_v1alpha1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1244,7 +1244,7 @@ export namespace contactcenteraiplatform_v1alpha1 { * * // Do the magic * const res = await contactcenteraiplatform.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1525,7 +1525,7 @@ export namespace contactcenteraiplatform_v1alpha1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/contactcenterinsights/v1.ts b/src/apis/contactcenterinsights/v1.ts index 236911cfffc..cf768f57814 100644 --- a/src/apis/contactcenterinsights/v1.ts +++ b/src/apis/contactcenterinsights/v1.ts @@ -124,6 +124,208 @@ export namespace contactcenterinsights_v1 { } } + /** + * Represents an event indicating the transfer of a conversation to a different agent. + */ + export interface Schema$GoogleCloudCesV1mainAgentTransfer { + /** + * Output only. Display name of the agent. + */ + displayName?: string | null; + /** + * Required. The agent to which the conversation is being transferred. The agent will handle the conversation from this point forward. Format: `projects/{project\}/locations/{location\}/apps/{app\}/agents/{agent\}` + */ + targetAgent?: string | null; + } + /** + * Represents a blob input or output in the conversation. + */ + export interface Schema$GoogleCloudCesV1mainBlob { + /** + * Required. Raw bytes of the blob. + */ + data?: string | null; + /** + * Required. The IANA standard MIME type of the source data. + */ + mimeType?: string | null; + } + /** + * A chunk of content within a message. + */ + export interface Schema$GoogleCloudCesV1mainChunk { + /** + * Optional. Agent transfer event. + */ + agentTransfer?: Schema$GoogleCloudCesV1mainAgentTransfer; + /** + * Optional. Blob data. + */ + blob?: Schema$GoogleCloudCesV1mainBlob; + /** + * A struct represents default variables at the start of the conversation, keyed by variable names. + */ + defaultVariables?: {[key: string]: any} | null; + /** + * Optional. Image data. + */ + image?: Schema$GoogleCloudCesV1mainImage; + /** + * Optional. Custom payload data. + */ + payload?: {[key: string]: any} | null; + /** + * Optional. Text data. + */ + text?: string | null; + /** + * Optional. Tool execution request. + */ + toolCall?: Schema$GoogleCloudCesV1mainToolCall; + /** + * Optional. Tool execution response. + */ + toolResponse?: Schema$GoogleCloudCesV1mainToolResponse; + /** + * Optional. Transcript associated with the audio. + */ + transcript?: string | null; + /** + * A struct represents variables that were updated in the conversation, keyed by variable names. + */ + updatedVariables?: {[key: string]: any} | null; + } + /** + * Indicates the session has terminated, due to either successful completion (e.g. user says "Good bye!" ) or an agent escalation. The agent will not process any further inputs after session is terminated and the client should half-close and disconnect after receiving all remaining responses from the agent. + */ + export interface Schema$GoogleCloudCesV1mainEndSession { + /** + * Optional. Provides additional information about the end session signal, such as the reason for ending the session. + */ + metadata?: {[key: string]: any} | null; + } + /** + * Represents an image input or output in the conversation. + */ + export interface Schema$GoogleCloudCesV1mainImage { + /** + * Required. Raw bytes of the image. + */ + data?: string | null; + /** + * Required. The IANA standard MIME type of the source data. Supported image types includes: * image/png * image/jpeg * image/webp + */ + mimeType?: string | null; + } + /** + * A message within a conversation. + */ + export interface Schema$GoogleCloudCesV1mainMessage { + /** + * Optional. Content of the message as a series of chunks. + */ + chunks?: Schema$GoogleCloudCesV1mainChunk[]; + /** + * Optional. Timestamp when the message was sent or received. Should not be used if the message is part of an example. + */ + eventTime?: string | null; + /** + * Optional. The role within the conversation, e.g., user, agent. + */ + role?: string | null; + } + /** + * A span is a unit of work or a single operation during the request processing. + */ + export interface Schema$GoogleCloudCesV1mainSpan { + /** + * Output only. Key-value attributes associated with the span. + */ + attributes?: {[key: string]: any} | null; + /** + * Output only. The child spans that are nested under this span. + */ + childSpans?: Schema$GoogleCloudCesV1mainSpan[]; + /** + * Output only. The duration of the span. + */ + duration?: string | null; + /** + * Output only. The end time of the span. + */ + endTime?: string | null; + /** + * Output only. The name of the span. + */ + name?: string | null; + /** + * Output only. The start time of the span. + */ + startTime?: string | null; + } + /** + * Request for the client or the agent to execute the specified tool. + */ + export interface Schema$GoogleCloudCesV1mainToolCall { + /** + * Optional. The input parameters and values for the tool in JSON object format. + */ + args?: {[key: string]: any} | null; + /** + * Output only. Display name of the tool. + */ + displayName?: string | null; + /** + * Optional. The unique identifier of the tool call. If populated, the client should return the execution result with the matching ID in ToolResponse. + */ + id?: string | null; + /** + * Optional. The name of the tool to execute. Format: `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` + */ + tool?: string | null; + /** + * Optional. The toolset tool to execute. + */ + toolsetTool?: Schema$GoogleCloudCesV1mainToolsetTool; + } + /** + * The execution result of a specific tool from the client or the agent. + */ + export interface Schema$GoogleCloudCesV1mainToolResponse { + /** + * Output only. Display name of the tool. + */ + displayName?: string | null; + /** + * Optional. The matching ID of the tool call the response is for. + */ + id?: string | null; + /** + * Required. The tool execution result in JSON object format. Use "output" key to specify tool response and "error" key to specify error details (if any). If "output" and "error" keys are not specified, then whole "response" is treated as tool execution result. + */ + response?: {[key: string]: any} | null; + /** + * Optional. The name of the tool to execute. Format: `projects/{project\}/locations/{location\}/apps/{app\}/tools/{tool\}` + */ + tool?: string | null; + /** + * Optional. The toolset tool that got executed. + */ + toolsetTool?: Schema$GoogleCloudCesV1mainToolsetTool; + } + /** + * A tool that is created from a toolset. + */ + export interface Schema$GoogleCloudCesV1mainToolsetTool { + /** + * Optional. The tool ID to filter the tools to retrieve the schema for. + */ + toolId?: string | null; + /** + * Required. The resource name of the Toolset from which this tool is derived. Format: `projects/{project\}/locations/{location\}/apps/{app\}/toolsets/{toolset\}` + */ + toolset?: string | null; + } /** * The analysis resource. */ @@ -236,6 +438,10 @@ export namespace contactcenterinsights_v1 { * Configuration for the QA annotator. */ qaConfig?: Schema$GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorQaConfig; + /** + * Optional. Whether to run the auto-labeling annotator. If true, the auto-labeling annotator will be run. This is a non-billable operation designed for fixing or backfilling custom labels. + */ + runAutoLabelingAnnotator?: boolean | null; /** * Whether to run the entity annotator. */ @@ -382,6 +588,10 @@ export namespace contactcenterinsights_v1 { * Output only. Partial errors during bulk analyze operation that might cause the operation output to be incomplete. */ partialErrors?: Schema$GoogleRpcStatus[]; + /** + * Output only. If true, the labeling rules will be re-evaluated for the conversations. + */ + relabel?: boolean | null; /** * The original request for bulk analyze. */ @@ -411,6 +621,10 @@ export namespace contactcenterinsights_v1 { * Required. The parent resource to create analyses in. */ parent?: string | null; + /** + * Optional. If true, the labeling rules will be re-evaluated for the conversations. + */ + relabel?: boolean | null; } /** * The response for a bulk analyze conversations operation. @@ -550,6 +764,28 @@ export namespace contactcenterinsights_v1 { */ silenceData?: Schema$GoogleCloudContactcenterinsightsV1alpha1SilenceData; } + /** + * The CES end session annotation. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1CesEndSessionAnnotation { + /** + * End session signal from CES. + */ + endSession?: Schema$GoogleCloudCesV1mainEndSession; + } + /** + * The CES diagnostic information. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1CesTurnAnnotation { + /** + * The messages in the turn. + */ + messages?: Schema$GoogleCloudCesV1mainMessage[]; + /** + * The root span of the action processing. + */ + rootSpan?: Schema$GoogleCloudCesV1mainSpan; + } /** * The result of testing a constraint expression on a pair of conversations. */ @@ -761,6 +997,23 @@ export namespace contactcenterinsights_v1 { * Cloud Storage URI that points to a file that contains the conversation metadata. */ metadataUri?: string | null; + /** + * Cloud Storage URIs that points to files that contain the conversation audio for each turn. Assume the order of the URIs is the same as the order of the transcript turns. + */ + turnLevelAudios?: Schema$GoogleCloudContactcenterinsightsV1alpha1ConversationDataSourceTurnLevelAudio[]; + } + /** + * A wrapper for holding the audio for any given turn. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1ConversationDataSourceTurnLevelAudio { + /** + * The duration of the audio. + */ + audioDuration?: string | null; + /** + * The Cloud Storage URI of the audio for any given turn. + */ + audioGcsUri?: string | null; } /** * One channel of conversation-level sentiment data. @@ -866,6 +1119,10 @@ export namespace contactcenterinsights_v1 { * A user-provided string indicating the outcome of the agent's segment of the call. */ dispositionCode?: string | null; + /** + * The entry subagent's display name. + */ + entrySubagentDisplayName?: string | null; /** * The agent's location. */ @@ -965,6 +1222,10 @@ export namespace contactcenterinsights_v1 { * The text of this segment. */ text?: string | null; + /** + * Turn level audio for this transcript segment. + */ + turnLevelAudio?: Schema$GoogleCloudContactcenterinsightsV1alpha1ConversationDataSourceTurnLevelAudio; /** * A list of the word-specific information for each word in the segment. */ @@ -1196,6 +1457,163 @@ export namespace contactcenterinsights_v1 { * The response to deploy an issue model. */ export interface Schema$GoogleCloudContactcenterinsightsV1alpha1DeployIssueModelResponse {} + /** + * Metadata for a DiagnoseConversations operation. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsMetadata { + /** + * Output only. The time the operation was created. + */ + createTime?: string | null; + /** + * Output only. The diagnostic report containing metrics and intent breakdowns. + */ + diagnosticReport?: Schema$GoogleCloudContactcenterinsightsV1alpha1DiagnosticReport; + /** + * Output only. The time the operation finished running. + */ + endTime?: string | null; + /** + * Output only. If true, the agent generated a full diagnostic report for all sub-agents. + */ + fullReport?: boolean | null; + /** + * Output only. The most recent thought or action from the agent. + */ + latestStep?: Schema$GoogleCloudContactcenterinsightsV1alpha1SherlockStep; + /** + * Output only. The type of metric being diagnosed. + */ + metricType?: string | null; + /** + * Output only. Deprecated: Use partial_trajectory_steps instead. The intermediate trajectory updates (partial trajectory). + */ + partialTrajectories?: string[] | null; + /** + * Output only. The intermediate trajectory updates. This can be used for live progress tracking of the agent's thoughts and actions as it works through the analysis. + */ + partialTrajectorySteps?: Schema$GoogleCloudContactcenterinsightsV1alpha1SherlockStep[]; + /** + * Output only. The request that created the operation. + */ + request?: Schema$GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsRequest; + } + /** + * The request to analyze conversation data using agentic workflows. This RPC triggers a complex analysis process that may involve several steps of reasoning and tool execution. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsRequest { + /** + * Optional. If true, the request will be validated and a simulation of the analysis will be performed without actually executing the task. + */ + dryRun?: boolean | null; + /** + * Optional. AIP-160 compliant filter for selecting target conversations. + */ + filter?: string | null; + /** + * Optional. If true, the agent will generate a full diagnostic report for all sub-agents. + */ + fullReport?: boolean | null; + /** + * Optional. Specific instructions for the agent. + */ + instructions?: string | null; + /** + * Optional. The maximum number of steps the agent can take during the execution of the task. Defaults to 10. + */ + maxSteps?: number | null; + /** + * Optional. The type of metric being diagnosed. + */ + metricType?: string | null; + /** + * Optional. The configuration for the output of the task. + */ + outputConfig?: Schema$GoogleCloudContactcenterinsightsV1alpha1OutputConfig; + /** + * Required. The parent resource where the analysis will be performed. + */ + parent?: string | null; + /** + * Optional. Required. A unique ID that identifies the request. If the service receives two `DiagnoseConversationsRequest`s with the same `request_id`, then the second request will be ignored; instead, the response of the first request will be returned. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters. + */ + requestId?: string | null; + /** + * Optional. A natural language description of the analysis goal or question. + */ + taskQuery?: string | null; + /** + * Optional. If true, the request will only be validated (permissions, filter syntax, etc.) without actually triggering the analysis. + */ + validateOnly?: boolean | null; + } + /** + * The response from a DiagnoseConversations request. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsResponse { + /** + * Output only. The final, high-level answer or diagnostic summary returned by the Sherlock worker. + */ + answer?: string | null; + /** + * Output only. If an external destination was requested, the URI of the exported data. + */ + exportUri?: string | null; + /** + * Output only. Deprecated: Use full_trajectory_steps instead. The complete sequence of thoughts and actions (full trajectory). + */ + fullTrajectories?: string[] | null; + /** + * Output only. The complete sequence of thoughts and actions taken by the agent. + */ + fullTrajectorySteps?: Schema$GoogleCloudContactcenterinsightsV1alpha1SherlockStep[]; + } + /** + * A diagnostic report containing aggregate metrics and intent breakdowns. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1DiagnosticReport { + /** + * Output only. A breakdown of metrics grouped by intent. + */ + intentStats?: Schema$GoogleCloudContactcenterinsightsV1alpha1DiagnosticReportIntentStats[]; + /** + * Output only. A list of loss patterns identified for the entire project/dataset. + */ + lossPatterns?: Schema$GoogleCloudContactcenterinsightsV1alpha1LossPattern[]; + /** + * Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics. + */ + metrics?: { + [key: string]: Schema$GoogleCloudContactcenterinsightsV1alpha1MetricValue; + } | null; + } + /** + * A breakdown of metrics grouped by intent. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1DiagnosticReportIntentStats { + /** + * Output only. The number of conversations associated with this intent. + */ + conversationCount?: number | null; + /** + * Output only. The display name of the intent. + */ + intentDisplayName?: string | null; + /** + * Output only. The unique identifier for the intent (from Discovery Engine). + */ + intentId?: string | null; + /** + * Output only. A list of loss patterns identified for this intent. + */ + lossPatterns?: Schema$GoogleCloudContactcenterinsightsV1alpha1LossPattern[]; + /** + * Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics. + */ + metrics?: { + [key: string]: Schema$GoogleCloudContactcenterinsightsV1alpha1MetricValue; + } | null; + } /** * The data for a Dialogflow intent. Represents a detected intent in the conversation, e.g. MAKES_PROMISE. */ @@ -2301,6 +2719,128 @@ export namespace contactcenterinsights_v1 { */ nextPageToken?: string | null; } + /** + * A loss pattern of a virtual agent and suggested fixes. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1LossPattern { + /** + * Output only. A list of conversation IDs that match this loss pattern. + */ + conversationIds?: string[] | null; + /** + * Output only. A markdown description of the loss pattern. + */ + description?: string | null; + /** + * Output only. The display name of the loss pattern. + */ + displayName?: string | null; + /** + * Output only. A markdown of loss pattern examples. + */ + examples?: string | null; + /** + * Output only. The unique identifier for the loss pattern. + */ + id?: string | null; + /** + * Output only. The percentage of conversations that match this loss pattern. + */ + percentage?: number | null; + /** + * Output only. A markdown description of the suggested fixes. + */ + suggestedFixes?: string | null; + } + /** + * Deprecated: MetricValue is no longer used for diagnostics. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1MetricValue { + /** + * Output only. The list of conversation names that contributed to this metric (hits). Format: `projects/{project\}/locations/{location\}/conversations/{conversation\}` + */ + conversations?: string[] | null; + /** + * Output only. The user-visible name of the metric (e.g., "Containment Rate"). + */ + displayName?: string | null; + /** + * Output only. The number of positive matches (hits) for this metric. + */ + hitCount?: number | null; + /** + * Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics. + */ + metricType?: string | null; + /** + * Output only. The resource name of the underlying Insights primitive (e.g., Tag or QaQuestion) used to calculate this metric. + */ + sourceId?: string | null; + /** + * Output only. The total number of items evaluated for this metric. + */ + totalCount?: number | null; + /** + * Output only. The calculated value of the metric (usually a ratio or rate 0.0 - 1.0). + */ + value?: number | null; + } + /** + * Configuration for where to export or return the analysis findings. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1OutputConfig { + /** + * Optional. Export to BigQuery. + */ + bigqueryDestination?: Schema$GoogleCloudContactcenterinsightsV1alpha1OutputConfigBigQueryDestination; + /** + * Optional. Export to a Cloud Storage bucket. + */ + gcsDestination?: Schema$GoogleCloudContactcenterinsightsV1alpha1OutputConfigGcsDestination; + /** + * Optional. Export directly to a Google Sheet. + */ + googleSheetsDestination?: Schema$GoogleCloudContactcenterinsightsV1alpha1OutputConfigGoogleSheetsDestination; + } + /** + * BigQuery destination configuration. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1OutputConfigBigQueryDestination { + /** + * Required. The name of the BigQuery dataset. + */ + dataset?: string | null; + /** + * Optional. A project ID or number. + */ + projectId?: string | null; + /** + * Required. The BigQuery table name. + */ + table?: string | null; + } + /** + * Cloud Storage destination configuration. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1OutputConfigGcsDestination { + /** + * Required. The Cloud Storage URI to export the results to. + */ + uri?: string | null; + } + /** + * Google Sheets destination configuration. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1OutputConfigGoogleSheetsDestination { + /** + * Optional. The sheet name. + */ + sheet?: string | null; + /** + * Optional. An existing Google Sheets ID. + */ + spreadsheetId?: string | null; + } /** * The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match. */ @@ -2912,6 +3452,14 @@ export namespace contactcenterinsights_v1 { * Agent Assist Article Suggestion data. */ articleSuggestion?: Schema$GoogleCloudContactcenterinsightsV1alpha1ArticleSuggestionData; + /** + * The CES end session annotation. + */ + cesEndSessionAnnotation?: Schema$GoogleCloudContactcenterinsightsV1alpha1CesEndSessionAnnotation; + /** + * The CES turn annotation. + */ + cesTurnAnnotation?: Schema$GoogleCloudContactcenterinsightsV1alpha1CesTurnAnnotation; /** * Conversation summarization suggestion data. */ @@ -3059,6 +3607,27 @@ export namespace contactcenterinsights_v1 { */ score?: number | null; } + /** + * A step in the agent's reasoning process (Trajectory Step). + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1SherlockStep { + /** + * Output only. Natural language input stimulus. + */ + textInput?: string[] | null; + /** + * Output only. The reasoning or internal monologue of the agent. + */ + thought?: string | null; + /** + * Output only. The tool call issued by the agent. + */ + toolCalls?: Schema$GoogleCloudContactcenterinsightsV1alpha1ToolCall[]; + /** + * Output only. The output response from the tool execution. + */ + toolOutput?: {[key: string]: any} | null; + } /** * The data for a silence annotation. */ @@ -3199,6 +3768,19 @@ export namespace contactcenterinsights_v1 { */ joinKeyResults?: Schema$GoogleCloudContactcenterinsightsV1alpha1ConversationCorrelationResult[]; } + /** + * A tool call from the agent. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1alpha1ToolCall { + /** + * Output only. The input arguments to the tool. + */ + input?: {[key: string]: any} | null; + /** + * Output only. The name of the tool being called. + */ + toolName?: string | null; + } /** * Metadata for undeploying an issue model. */ @@ -3456,6 +4038,10 @@ export namespace contactcenterinsights_v1 { * Configuration for the QA annotator. */ qaConfig?: Schema$GoogleCloudContactcenterinsightsV1AnnotatorSelectorQaConfig; + /** + * Optional. Whether to run the auto-labeling annotator. If true, the auto-labeling annotator will be run. This is a non-billable operation designed for fixing or backfilling custom labels. + */ + runAutoLabelingAnnotator?: boolean | null; /** * Whether to run the entity annotator. */ @@ -3764,6 +4350,10 @@ export namespace contactcenterinsights_v1 { * Output only. Partial errors during bulk analyze operation that might cause the operation output to be incomplete. */ partialErrors?: Schema$GoogleRpcStatus[]; + /** + * Output only. If true, the labeling rules will be re-evaluated for the conversations. + */ + relabel?: boolean | null; /** * The original request for bulk analyze. */ @@ -3793,6 +4383,10 @@ export namespace contactcenterinsights_v1 { * Required. The parent resource to create analyses in. */ parent?: string | null; + /** + * Optional. If true, the labeling rules will be re-evaluated for the conversations. + */ + relabel?: boolean | null; } /** * The response for a bulk analyze conversations operation. @@ -4181,10 +4775,36 @@ export namespace contactcenterinsights_v1 { */ silenceData?: Schema$GoogleCloudContactcenterinsightsV1SilenceData; } + /** + * The CES end session annotation. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1CesEndSessionAnnotation { + /** + * End session signal from CES. + */ + endSession?: Schema$GoogleCloudCesV1mainEndSession; + } + /** + * The CES diagnostic information. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1CesTurnAnnotation { + /** + * The messages in the turn. + */ + messages?: Schema$GoogleCloudCesV1mainMessage[]; + /** + * The root span of the action processing. + */ + rootSpan?: Schema$GoogleCloudCesV1mainSpan; + } /** * Configurable dashboard's widget that displays data as a chart. */ export interface Schema$GoogleCloudContactcenterinsightsV1Chart { + /** + * Optional action to be taken when the chart is clicked. + */ + action?: Schema$GoogleCloudContactcenterinsightsV1ChartAction; /** * Output only. Chart type. */ @@ -4231,6 +4851,15 @@ export namespace contactcenterinsights_v1 { */ width?: number | null; } + /** + * The action to be taken when the chart is clicked. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1ChartAction { + /** + * Redirect action. + */ + redirectAction?: Schema$GoogleCloudContactcenterinsightsV1RedirectAction; + } /** * The request data for visualizing the dataset in the chart. */ @@ -4499,6 +5128,10 @@ export namespace contactcenterinsights_v1 { * Cloud Storage URI that points to a file that contains the conversation metadata. */ metadataUri?: string | null; + /** + * Cloud Storage URIs that points to files that contain the conversation audio for each turn. Assume the order of the URIs is the same as the order of the transcript turns. + */ + turnLevelAudios?: Schema$GoogleCloudContactcenterinsightsV1ConversationDataSourceTurnLevelAudio[]; } /** * A wrapper for holding the audio for any given turn. @@ -4617,6 +5250,10 @@ export namespace contactcenterinsights_v1 { * A user-provided string indicating the outcome of the agent's segment of the call. */ dispositionCode?: string | null; + /** + * The entry subagent's display name. + */ + entrySubagentDisplayName?: string | null; /** * The agent's location. */ @@ -4716,6 +5353,10 @@ export namespace contactcenterinsights_v1 { * The text of this segment. */ text?: string | null; + /** + * Turn level audio for this transcript segment. + */ + turnLevelAudio?: Schema$GoogleCloudContactcenterinsightsV1ConversationDataSourceTurnLevelAudio; /** * A list of the word-specific information for each word in the segment. */ @@ -5069,6 +5710,188 @@ export namespace contactcenterinsights_v1 { * The request to deploy a QaScorecardRevision */ export interface Schema$GoogleCloudContactcenterinsightsV1DeployQaScorecardRevisionRequest {} + /** + * Metadata for a DiagnoseConversations operation. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1DiagnoseConversationsMetadata { + /** + * Output only. The time the operation was created. + */ + createTime?: string | null; + /** + * Output only. The diagnostic report containing metrics and intent breakdowns. + */ + diagnosticReport?: Schema$GoogleCloudContactcenterinsightsV1DiagnosticReport; + /** + * Output only. The time the operation finished running. + */ + endTime?: string | null; + /** + * Output only. If true, the agent generated a full diagnostic report for all sub-agents. + */ + fullReport?: boolean | null; + /** + * Output only. The most recent thought or action from the agent. + */ + latestStep?: Schema$GoogleCloudContactcenterinsightsV1SherlockStep; + /** + * Output only. The type of metric being diagnosed. + */ + metricType?: string | null; + /** + * Output only. Deprecated: Use partial_trajectory_steps instead. The intermediate trajectory updates (partial trajectory). + */ + partialTrajectories?: string[] | null; + /** + * Output only. The intermediate trajectory updates. This can be used for live progress tracking of the agent's thoughts and actions as it works through the analysis. + */ + partialTrajectorySteps?: Schema$GoogleCloudContactcenterinsightsV1SherlockStep[]; + /** + * Output only. The request that created the operation. + */ + request?: Schema$GoogleCloudContactcenterinsightsV1DiagnoseConversationsRequest; + } + /** + * The request to analyze conversation data using agentic workflows. This RPC triggers a complex analysis process that may involve several steps of reasoning and tool execution. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1DiagnoseConversationsRequest { + /** + * Optional. If true, the request will be validated and a simulation of the analysis will be performed without actually executing the task. + */ + dryRun?: boolean | null; + /** + * Optional. AIP-160 compliant filter for selecting target conversations. + */ + filter?: string | null; + /** + * Optional. If true, the agent will generate a full diagnostic report for all sub-agents. + */ + fullReport?: boolean | null; + /** + * Optional. Specific instructions for the agent. + */ + instructions?: string | null; + /** + * Optional. The maximum number of steps the agent can take during the execution of the task. Defaults to 10. + */ + maxSteps?: number | null; + /** + * Optional. The type of metric being diagnosed. + */ + metricType?: string | null; + /** + * Optional. The configuration for the output of the task. + */ + outputConfig?: Schema$GoogleCloudContactcenterinsightsV1OutputConfig; + /** + * Required. The parent resource where the analysis will be performed. + */ + parent?: string | null; + /** + * Optional. Required. A unique ID that identifies the request. If the service receives two `DiagnoseConversationsRequest`s with the same `request_id`, then the second request will be ignored; instead, the response of the first request will be returned. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters. + */ + requestId?: string | null; + /** + * Optional. A natural language description of the analysis goal or question. + */ + taskQuery?: string | null; + /** + * Optional. If true, the request will only be validated (permissions, filter syntax, etc.) without actually triggering the analysis. + */ + validateOnly?: boolean | null; + } + /** + * The response from a DiagnoseConversations request. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1DiagnoseConversationsResponse { + /** + * Output only. The final, high-level answer or diagnostic summary returned by the Sherlock worker. + */ + answer?: string | null; + /** + * Output only. If an external destination was requested, the URI of the exported data. + */ + exportUri?: string | null; + /** + * Output only. Deprecated: Use full_trajectory_steps instead. The complete sequence of thoughts and actions (full trajectory). + */ + fullTrajectories?: string[] | null; + /** + * Output only. The complete sequence of thoughts and actions taken by the agent. + */ + fullTrajectorySteps?: Schema$GoogleCloudContactcenterinsightsV1SherlockStep[]; + } + /** + * The diagnostic resource. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1Diagnostic { + /** + * Output only. The complete sequence of thoughts and actions taken by the agent. + */ + analysisSummary?: string | null; + /** + * Output only. The filter used to select the conversations that were included in the diagnostic. + */ + conversationFilter?: string | null; + /** + * Output only. The time at which the diagnostic was created. + */ + createTime?: string | null; + /** + * Immutable. Identifier. The resource name of the diagnostic. + */ + name?: string | null; + /** + * Output only. The report containing the findings of the diagnostic. + */ + report?: Schema$GoogleCloudContactcenterinsightsV1DiagnosticReport; + } + /** + * A diagnostic report containing aggregate metrics and intent breakdowns. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1DiagnosticReport { + /** + * Output only. A breakdown of metrics grouped by intent. + */ + intentStats?: Schema$GoogleCloudContactcenterinsightsV1DiagnosticReportIntentStats[]; + /** + * Output only. A list of loss patterns identified for the entire project/dataset. + */ + lossPatterns?: Schema$GoogleCloudContactcenterinsightsV1LossPattern[]; + /** + * Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics. + */ + metrics?: { + [key: string]: Schema$GoogleCloudContactcenterinsightsV1MetricValue; + } | null; + } + /** + * A breakdown of metrics grouped by intent. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1DiagnosticReportIntentStats { + /** + * Output only. The number of conversations associated with this intent. + */ + conversationCount?: number | null; + /** + * Output only. The display name of the intent. + */ + intentDisplayName?: string | null; + /** + * Output only. The unique identifier for the intent (from Discovery Engine). + */ + intentId?: string | null; + /** + * Output only. A list of loss patterns identified for this intent. + */ + lossPatterns?: Schema$GoogleCloudContactcenterinsightsV1LossPattern[]; + /** + * Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics. + */ + metrics?: { + [key: string]: Schema$GoogleCloudContactcenterinsightsV1MetricValue; + } | null; + } /** * The data for a Dialogflow intent. Represents a detected intent in the conversation, e.g. MAKES_PROMISE. */ @@ -6487,6 +7310,19 @@ export namespace contactcenterinsights_v1 { */ nextPageToken?: string | null; } + /** + * The response from a ListDiagnostics request. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1ListDiagnosticsResponse { + /** + * Optional. The diagnostics that match the request. + */ + diagnostics?: Schema$GoogleCloudContactcenterinsightsV1Diagnostic[]; + /** + * Optional. A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + } /** * The response for listing feedback labels. */ @@ -6609,6 +7445,39 @@ export namespace contactcenterinsights_v1 { */ views?: Schema$GoogleCloudContactcenterinsightsV1View[]; } + /** + * A loss pattern of a virtual agent and suggested fixes. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1LossPattern { + /** + * Output only. A list of conversation IDs that match this loss pattern. + */ + conversationIds?: string[] | null; + /** + * Output only. A markdown description of the loss pattern. + */ + description?: string | null; + /** + * Output only. The display name of the loss pattern. + */ + displayName?: string | null; + /** + * Output only. A markdown of loss pattern examples. + */ + examples?: string | null; + /** + * Output only. The unique identifier for the loss pattern. + */ + id?: string | null; + /** + * Output only. The percentage of conversations that match this loss pattern. + */ + percentage?: number | null; + /** + * Output only. A markdown description of the suggested fixes. + */ + suggestedFixes?: string | null; + } /** * The analysis resource. */ @@ -6721,6 +7590,10 @@ export namespace contactcenterinsights_v1 { * Configuration for the QA annotator. */ qaConfig?: Schema$GoogleCloudContactcenterinsightsV1mainAnnotatorSelectorQaConfig; + /** + * Optional. Whether to run the auto-labeling annotator. If true, the auto-labeling annotator will be run. This is a non-billable operation designed for fixing or backfilling custom labels. + */ + runAutoLabelingAnnotator?: boolean | null; /** * Whether to run the entity annotator. */ @@ -6867,6 +7740,10 @@ export namespace contactcenterinsights_v1 { * Output only. Partial errors during bulk analyze operation that might cause the operation output to be incomplete. */ partialErrors?: Schema$GoogleRpcStatus[]; + /** + * Output only. If true, the labeling rules will be re-evaluated for the conversations. + */ + relabel?: boolean | null; /** * The original request for bulk analyze. */ @@ -6896,6 +7773,10 @@ export namespace contactcenterinsights_v1 { * Required. The parent resource to create analyses in. */ parent?: string | null; + /** + * Optional. If true, the labeling rules will be re-evaluated for the conversations. + */ + relabel?: boolean | null; } /** * The response for a bulk analyze conversations operation. @@ -7160,6 +8041,28 @@ export namespace contactcenterinsights_v1 { */ silenceData?: Schema$GoogleCloudContactcenterinsightsV1mainSilenceData; } + /** + * The CES end session annotation. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainCesEndSessionAnnotation { + /** + * End session signal from CES. + */ + endSession?: Schema$GoogleCloudCesV1mainEndSession; + } + /** + * The CES diagnostic information. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainCesTurnAnnotation { + /** + * The messages in the turn. + */ + messages?: Schema$GoogleCloudCesV1mainMessage[]; + /** + * The root span of the action processing. + */ + rootSpan?: Schema$GoogleCloudCesV1mainSpan; + } /** * The result of testing a constraint expression on a pair of conversations. */ @@ -7371,6 +8274,23 @@ export namespace contactcenterinsights_v1 { * Cloud Storage URI that points to a file that contains the conversation metadata. */ metadataUri?: string | null; + /** + * Cloud Storage URIs that points to files that contain the conversation audio for each turn. Assume the order of the URIs is the same as the order of the transcript turns. + */ + turnLevelAudios?: Schema$GoogleCloudContactcenterinsightsV1mainConversationDataSourceTurnLevelAudio[]; + } + /** + * A wrapper for holding the audio for any given turn. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainConversationDataSourceTurnLevelAudio { + /** + * The duration of the audio. + */ + audioDuration?: string | null; + /** + * The Cloud Storage URI of the audio for any given turn. + */ + audioGcsUri?: string | null; } /** * One channel of conversation-level sentiment data. @@ -7476,6 +8396,10 @@ export namespace contactcenterinsights_v1 { * A user-provided string indicating the outcome of the agent's segment of the call. */ dispositionCode?: string | null; + /** + * The entry subagent's display name. + */ + entrySubagentDisplayName?: string | null; /** * The agent's location. */ @@ -7575,6 +8499,10 @@ export namespace contactcenterinsights_v1 { * The text of this segment. */ text?: string | null; + /** + * Turn level audio for this transcript segment. + */ + turnLevelAudio?: Schema$GoogleCloudContactcenterinsightsV1mainConversationDataSourceTurnLevelAudio; /** * A list of the word-specific information for each word in the segment. */ @@ -7806,6 +8734,163 @@ export namespace contactcenterinsights_v1 { * The response to deploy an issue model. */ export interface Schema$GoogleCloudContactcenterinsightsV1mainDeployIssueModelResponse {} + /** + * Metadata for a DiagnoseConversations operation. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsMetadata { + /** + * Output only. The time the operation was created. + */ + createTime?: string | null; + /** + * Output only. The diagnostic report containing metrics and intent breakdowns. + */ + diagnosticReport?: Schema$GoogleCloudContactcenterinsightsV1mainDiagnosticReport; + /** + * Output only. The time the operation finished running. + */ + endTime?: string | null; + /** + * Output only. If true, the agent generated a full diagnostic report for all sub-agents. + */ + fullReport?: boolean | null; + /** + * Output only. The most recent thought or action from the agent. + */ + latestStep?: Schema$GoogleCloudContactcenterinsightsV1mainSherlockStep; + /** + * Output only. The type of metric being diagnosed. + */ + metricType?: string | null; + /** + * Output only. Deprecated: Use partial_trajectory_steps instead. The intermediate trajectory updates (partial trajectory). + */ + partialTrajectories?: string[] | null; + /** + * Output only. The intermediate trajectory updates. This can be used for live progress tracking of the agent's thoughts and actions as it works through the analysis. + */ + partialTrajectorySteps?: Schema$GoogleCloudContactcenterinsightsV1mainSherlockStep[]; + /** + * Output only. The request that created the operation. + */ + request?: Schema$GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsRequest; + } + /** + * The request to analyze conversation data using agentic workflows. This RPC triggers a complex analysis process that may involve several steps of reasoning and tool execution. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsRequest { + /** + * Optional. If true, the request will be validated and a simulation of the analysis will be performed without actually executing the task. + */ + dryRun?: boolean | null; + /** + * Optional. AIP-160 compliant filter for selecting target conversations. + */ + filter?: string | null; + /** + * Optional. If true, the agent will generate a full diagnostic report for all sub-agents. + */ + fullReport?: boolean | null; + /** + * Optional. Specific instructions for the agent. + */ + instructions?: string | null; + /** + * Optional. The maximum number of steps the agent can take during the execution of the task. Defaults to 10. + */ + maxSteps?: number | null; + /** + * Optional. The type of metric being diagnosed. + */ + metricType?: string | null; + /** + * Optional. The configuration for the output of the task. + */ + outputConfig?: Schema$GoogleCloudContactcenterinsightsV1mainOutputConfig; + /** + * Required. The parent resource where the analysis will be performed. + */ + parent?: string | null; + /** + * Optional. Required. A unique ID that identifies the request. If the service receives two `DiagnoseConversationsRequest`s with the same `request_id`, then the second request will be ignored; instead, the response of the first request will be returned. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters. + */ + requestId?: string | null; + /** + * Optional. A natural language description of the analysis goal or question. + */ + taskQuery?: string | null; + /** + * Optional. If true, the request will only be validated (permissions, filter syntax, etc.) without actually triggering the analysis. + */ + validateOnly?: boolean | null; + } + /** + * The response from a DiagnoseConversations request. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsResponse { + /** + * Output only. The final, high-level answer or diagnostic summary returned by the Sherlock worker. + */ + answer?: string | null; + /** + * Output only. If an external destination was requested, the URI of the exported data. + */ + exportUri?: string | null; + /** + * Output only. Deprecated: Use full_trajectory_steps instead. The complete sequence of thoughts and actions (full trajectory). + */ + fullTrajectories?: string[] | null; + /** + * Output only. The complete sequence of thoughts and actions taken by the agent. + */ + fullTrajectorySteps?: Schema$GoogleCloudContactcenterinsightsV1mainSherlockStep[]; + } + /** + * A diagnostic report containing aggregate metrics and intent breakdowns. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainDiagnosticReport { + /** + * Output only. A breakdown of metrics grouped by intent. + */ + intentStats?: Schema$GoogleCloudContactcenterinsightsV1mainDiagnosticReportIntentStats[]; + /** + * Output only. A list of loss patterns identified for the entire project/dataset. + */ + lossPatterns?: Schema$GoogleCloudContactcenterinsightsV1mainLossPattern[]; + /** + * Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics. + */ + metrics?: { + [key: string]: Schema$GoogleCloudContactcenterinsightsV1mainMetricValue; + } | null; + } + /** + * A breakdown of metrics grouped by intent. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainDiagnosticReportIntentStats { + /** + * Output only. The number of conversations associated with this intent. + */ + conversationCount?: number | null; + /** + * Output only. The display name of the intent. + */ + intentDisplayName?: string | null; + /** + * Output only. The unique identifier for the intent (from Discovery Engine). + */ + intentId?: string | null; + /** + * Output only. A list of loss patterns identified for this intent. + */ + lossPatterns?: Schema$GoogleCloudContactcenterinsightsV1mainLossPattern[]; + /** + * Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics. + */ + metrics?: { + [key: string]: Schema$GoogleCloudContactcenterinsightsV1mainMetricValue; + } | null; + } /** * The data for a Dialogflow intent. Represents a detected intent in the conversation, e.g. MAKES_PROMISE. */ @@ -8911,6 +9996,128 @@ export namespace contactcenterinsights_v1 { */ nextPageToken?: string | null; } + /** + * A loss pattern of a virtual agent and suggested fixes. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainLossPattern { + /** + * Output only. A list of conversation IDs that match this loss pattern. + */ + conversationIds?: string[] | null; + /** + * Output only. A markdown description of the loss pattern. + */ + description?: string | null; + /** + * Output only. The display name of the loss pattern. + */ + displayName?: string | null; + /** + * Output only. A markdown of loss pattern examples. + */ + examples?: string | null; + /** + * Output only. The unique identifier for the loss pattern. + */ + id?: string | null; + /** + * Output only. The percentage of conversations that match this loss pattern. + */ + percentage?: number | null; + /** + * Output only. A markdown description of the suggested fixes. + */ + suggestedFixes?: string | null; + } + /** + * Deprecated: MetricValue is no longer used for diagnostics. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainMetricValue { + /** + * Output only. The list of conversation names that contributed to this metric (hits). Format: `projects/{project\}/locations/{location\}/conversations/{conversation\}` + */ + conversations?: string[] | null; + /** + * Output only. The user-visible name of the metric (e.g., "Containment Rate"). + */ + displayName?: string | null; + /** + * Output only. The number of positive matches (hits) for this metric. + */ + hitCount?: number | null; + /** + * Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics. + */ + metricType?: string | null; + /** + * Output only. The resource name of the underlying Insights primitive (e.g., Tag or QaQuestion) used to calculate this metric. + */ + sourceId?: string | null; + /** + * Output only. The total number of items evaluated for this metric. + */ + totalCount?: number | null; + /** + * Output only. The calculated value of the metric (usually a ratio or rate 0.0 - 1.0). + */ + value?: number | null; + } + /** + * Configuration for where to export or return the analysis findings. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainOutputConfig { + /** + * Optional. Export to BigQuery. + */ + bigqueryDestination?: Schema$GoogleCloudContactcenterinsightsV1mainOutputConfigBigQueryDestination; + /** + * Optional. Export to a Cloud Storage bucket. + */ + gcsDestination?: Schema$GoogleCloudContactcenterinsightsV1mainOutputConfigGcsDestination; + /** + * Optional. Export directly to a Google Sheet. + */ + googleSheetsDestination?: Schema$GoogleCloudContactcenterinsightsV1mainOutputConfigGoogleSheetsDestination; + } + /** + * BigQuery destination configuration. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainOutputConfigBigQueryDestination { + /** + * Required. The name of the BigQuery dataset. + */ + dataset?: string | null; + /** + * Optional. A project ID or number. + */ + projectId?: string | null; + /** + * Required. The BigQuery table name. + */ + table?: string | null; + } + /** + * Cloud Storage destination configuration. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainOutputConfigGcsDestination { + /** + * Required. The Cloud Storage URI to export the results to. + */ + uri?: string | null; + } + /** + * Google Sheets destination configuration. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainOutputConfigGoogleSheetsDestination { + /** + * Optional. The sheet name. + */ + sheet?: string | null; + /** + * Optional. An existing Google Sheets ID. + */ + spreadsheetId?: string | null; + } /** * The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match. */ @@ -9522,6 +10729,14 @@ export namespace contactcenterinsights_v1 { * Agent Assist Article Suggestion data. */ articleSuggestion?: Schema$GoogleCloudContactcenterinsightsV1mainArticleSuggestionData; + /** + * The CES end session annotation. + */ + cesEndSessionAnnotation?: Schema$GoogleCloudContactcenterinsightsV1mainCesEndSessionAnnotation; + /** + * The CES turn annotation. + */ + cesTurnAnnotation?: Schema$GoogleCloudContactcenterinsightsV1mainCesTurnAnnotation; /** * Conversation summarization suggestion data. */ @@ -9669,6 +10884,27 @@ export namespace contactcenterinsights_v1 { */ score?: number | null; } + /** + * A step in the agent's reasoning process (Trajectory Step). + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainSherlockStep { + /** + * Output only. Natural language input stimulus. + */ + textInput?: string[] | null; + /** + * Output only. The reasoning or internal monologue of the agent. + */ + thought?: string | null; + /** + * Output only. The tool call issued by the agent. + */ + toolCalls?: Schema$GoogleCloudContactcenterinsightsV1mainToolCall[]; + /** + * Output only. The output response from the tool execution. + */ + toolOutput?: {[key: string]: any} | null; + } /** * The data for a silence annotation. */ @@ -9809,6 +11045,19 @@ export namespace contactcenterinsights_v1 { */ joinKeyResults?: Schema$GoogleCloudContactcenterinsightsV1mainConversationCorrelationResult[]; } + /** + * A tool call from the agent. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1mainToolCall { + /** + * Output only. The input arguments to the tool. + */ + input?: {[key: string]: any} | null; + /** + * Output only. The name of the tool being called. + */ + toolName?: string | null; + } /** * Metadata for undeploying an issue model. */ @@ -9919,6 +11168,52 @@ export namespace contactcenterinsights_v1 { */ speechConfig?: Schema$GoogleCloudContactcenterinsightsV1mainSpeechConfig; } + /** + * A definition for a metric to be calculated during analysis. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1MetricDefinition { + /** + * Output only. The user-visible name of the metric (e.g., "Containment Rate"). + */ + displayName?: string | null; + /** + * Output only. The resource name of the underlying Insights primitive (e.g., Tag or QaQuestion) used to calculate this metric. + */ + sourceId?: string | null; + } + /** + * Deprecated: MetricValue is no longer used for diagnostics. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1MetricValue { + /** + * Output only. The list of conversation names that contributed to this metric (hits). Format: `projects/{project\}/locations/{location\}/conversations/{conversation\}` + */ + conversations?: string[] | null; + /** + * Output only. The user-visible name of the metric (e.g., "Containment Rate"). + */ + displayName?: string | null; + /** + * Output only. The number of positive matches (hits) for this metric. + */ + hitCount?: number | null; + /** + * Output only. Deprecated: The type of the metric. Metrics for Outcome Based Insights derived from QueryMetrics. + */ + metricType?: string | null; + /** + * Output only. The resource name of the underlying Insights primitive (e.g., Tag or QaQuestion) used to calculate this metric. + */ + sourceId?: string | null; + /** + * Output only. The total number of items evaluated for this metric. + */ + totalCount?: number | null; + /** + * Output only. The calculated value of the metric (usually a ratio or rate 0.0 - 1.0). + */ + value?: number | null; + } /** * The conversation assessment note resource. */ @@ -9978,6 +11273,62 @@ export namespace contactcenterinsights_v1 { */ qaQuestion?: string | null; } + /** + * Configuration for where to export or return the analysis findings. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1OutputConfig { + /** + * Optional. Export to BigQuery. + */ + bigqueryDestination?: Schema$GoogleCloudContactcenterinsightsV1OutputConfigBigQueryDestination; + /** + * Optional. Export to a Cloud Storage bucket. + */ + gcsDestination?: Schema$GoogleCloudContactcenterinsightsV1OutputConfigGcsDestination; + /** + * Optional. Export directly to a Google Sheet. + */ + googleSheetsDestination?: Schema$GoogleCloudContactcenterinsightsV1OutputConfigGoogleSheetsDestination; + } + /** + * BigQuery destination configuration. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1OutputConfigBigQueryDestination { + /** + * Required. The name of the BigQuery dataset. + */ + dataset?: string | null; + /** + * Optional. A project ID or number. + */ + projectId?: string | null; + /** + * Required. The BigQuery table name. + */ + table?: string | null; + } + /** + * Cloud Storage destination configuration. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1OutputConfigGcsDestination { + /** + * Required. The Cloud Storage URI to export the results to. + */ + uri?: string | null; + } + /** + * Google Sheets destination configuration. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1OutputConfigGoogleSheetsDestination { + /** + * Optional. The sheet name. + */ + sheet?: string | null; + /** + * Optional. An existing Google Sheets ID. + */ + spreadsheetId?: string | null; + } /** * The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match. */ @@ -10931,6 +12282,15 @@ export namespace contactcenterinsights_v1 { */ inspectTemplate?: string | null; } + /** + * The redirect action to be taken when the chart is clicked. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1RedirectAction { + /** + * The relative path to redirect to. + */ + relativePath?: string | null; + } /** * Regex match configuration. */ @@ -10951,6 +12311,14 @@ export namespace contactcenterinsights_v1 { * Agent Assist Article Suggestion data. */ articleSuggestion?: Schema$GoogleCloudContactcenterinsightsV1ArticleSuggestionData; + /** + * The CES end session annotation. + */ + cesEndSessionAnnotation?: Schema$GoogleCloudContactcenterinsightsV1CesEndSessionAnnotation; + /** + * The CES turn annotation. + */ + cesTurnAnnotation?: Schema$GoogleCloudContactcenterinsightsV1CesTurnAnnotation; /** * Conversation summarization suggestion data. */ @@ -11148,6 +12516,10 @@ export namespace contactcenterinsights_v1 { * Output only. The time at which the settings was created. */ createTime?: string | null; + /** + * Optional. Configuration for diagnostic metrics. + */ + diagnosticMetricConfig?: Schema$GoogleCloudContactcenterinsightsV1SettingsDiagnosticMetricConfig; /** * A language code to be applied to each transcript segment unless the segment already specifies a language code. Language code defaults to "en-US" if it is neither specified on the segment nor here. */ @@ -11172,6 +12544,10 @@ export namespace contactcenterinsights_v1 { * Optional. Default Speech-to-Text resources to use while ingesting audio files. Optional, CCAI Insights will create a default if not provided. This applies to conversations ingested from the `UploadConversation` and `IngestConversations` endpoints, including conversations coming from CCAI Platform. */ speechConfig?: Schema$GoogleCloudContactcenterinsightsV1SpeechConfig; + /** + * Optional. The time zone applied to the project. This is a string representation of the time zone, for example, "America/New_York". This field follows the IANA TZ database format. See https://www.iana.org/time-zones for a list of valid values. If no value is set the user time zone will be used. + */ + timeZone?: string | null; /** * Output only. The time at which the settings were last updated. */ @@ -11194,6 +12570,38 @@ export namespace contactcenterinsights_v1 { */ uploadConversationAnalysisPercentage?: number | null; } + /** + * Configuration for diagnostic metrics. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1SettingsDiagnosticMetricConfig { + /** + * Optional. A map of diagnostic metrics. The key is a unique identifier for the metric (e.g., "containment"). + */ + metrics?: { + [key: string]: Schema$GoogleCloudContactcenterinsightsV1MetricDefinition; + } | null; + } + /** + * A step in the agent's reasoning process (Trajectory Step). + */ + export interface Schema$GoogleCloudContactcenterinsightsV1SherlockStep { + /** + * Output only. Natural language input stimulus. + */ + textInput?: string[] | null; + /** + * Output only. The reasoning or internal monologue of the agent. + */ + thought?: string | null; + /** + * Output only. The tool call issued by the agent. + */ + toolCalls?: Schema$GoogleCloudContactcenterinsightsV1ToolCall[]; + /** + * Output only. The output response from the tool execution. + */ + toolOutput?: {[key: string]: any} | null; + } /** * Signed audio URIs for a conversation. */ @@ -11403,6 +12811,19 @@ export namespace contactcenterinsights_v1 { */ joinKeyResults?: Schema$GoogleCloudContactcenterinsightsV1ConversationCorrelationResult[]; } + /** + * A tool call from the agent. + */ + export interface Schema$GoogleCloudContactcenterinsightsV1ToolCall { + /** + * Output only. The input arguments to the tool. + */ + input?: {[key: string]: any} | null; + /** + * Output only. The name of the tool being called. + */ + toolName?: string | null; + } /** * Request for TuneQaScorecardRevision endpoint. */ @@ -11796,6 +13217,7 @@ export namespace contactcenterinsights_v1 { conversations: Resource$Projects$Locations$Conversations; dashboards: Resource$Projects$Locations$Dashboards; datasets: Resource$Projects$Locations$Datasets; + diagnostics: Resource$Projects$Locations$Diagnostics; encryptionSpec: Resource$Projects$Locations$Encryptionspec; insightsdata: Resource$Projects$Locations$Insightsdata; issueModels: Resource$Projects$Locations$Issuemodels; @@ -11823,6 +13245,9 @@ export namespace contactcenterinsights_v1 { this.context ); this.datasets = new Resource$Projects$Locations$Datasets(this.context); + this.diagnostics = new Resource$Projects$Locations$Diagnostics( + this.context + ); this.encryptionSpec = new Resource$Projects$Locations$Encryptionspec( this.context ); @@ -12325,6 +13750,171 @@ export namespace contactcenterinsights_v1 { } } + /** + * Analyzes conversation data using specialized agentic workflows, such as ReAct, to diagnose issues and provide insights. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/contactcenterinsights.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const contactcenterinsights = google.contactcenterinsights('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await contactcenterinsights.projects.locations.diagnoseConversations({ + * // Required. The parent resource where the analysis will be performed. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "dryRun": false, + * // "filter": "my_filter", + * // "fullReport": false, + * // "instructions": "my_instructions", + * // "maxSteps": 0, + * // "metricType": "my_metricType", + * // "outputConfig": {}, + * // "parent": "my_parent", + * // "requestId": "my_requestId", + * // "taskQuery": "my_taskQuery", + * // "validateOnly": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + diagnoseConversations( + params: Params$Resource$Projects$Locations$Diagnoseconversations, + options: StreamMethodOptions + ): Promise>; + diagnoseConversations( + params?: Params$Resource$Projects$Locations$Diagnoseconversations, + options?: MethodOptions + ): Promise>; + diagnoseConversations( + params: Params$Resource$Projects$Locations$Diagnoseconversations, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + diagnoseConversations( + params: Params$Resource$Projects$Locations$Diagnoseconversations, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + diagnoseConversations( + params: Params$Resource$Projects$Locations$Diagnoseconversations, + callback: BodyResponseCallback + ): void; + diagnoseConversations( + callback: BodyResponseCallback + ): void; + diagnoseConversations( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Diagnoseconversations + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Diagnoseconversations; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Diagnoseconversations; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://contactcenterinsights.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}:diagnoseConversations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Natural language based Insights which powers the next generation of dashboards in Insights. Next generation of QueryMetrics. * @example @@ -12825,12 +14415,14 @@ export namespace contactcenterinsights_v1 { * // "analysisConfig": {}, * // "conversationTtl": "my_conversationTtl", * // "createTime": "my_createTime", + * // "diagnosticMetricConfig": {}, * // "languageCode": "my_languageCode", * // "name": "my_name", * // "pubsubNotificationSettings": {}, * // "redactionConfig": {}, * // "screenRecordingBucketUri": "my_screenRecordingBucketUri", * // "speechConfig": {}, + * // "timeZone": "my_timeZone", * // "updateTime": "my_updateTime" * // } * } @@ -13774,12 +15366,14 @@ export namespace contactcenterinsights_v1 { * // "analysisConfig": {}, * // "conversationTtl": "my_conversationTtl", * // "createTime": "my_createTime", + * // "diagnosticMetricConfig": {}, * // "languageCode": "my_languageCode", * // "name": "my_name", * // "pubsubNotificationSettings": {}, * // "redactionConfig": {}, * // "screenRecordingBucketUri": "my_screenRecordingBucketUri", * // "speechConfig": {}, + * // "timeZone": "my_timeZone", * // "updateTime": "my_updateTime" * // } * }, @@ -13791,12 +15385,14 @@ export namespace contactcenterinsights_v1 { * // "analysisConfig": {}, * // "conversationTtl": "my_conversationTtl", * // "createTime": "my_createTime", + * // "diagnosticMetricConfig": {}, * // "languageCode": "my_languageCode", * // "name": "my_name", * // "pubsubNotificationSettings": {}, * // "redactionConfig": {}, * // "screenRecordingBucketUri": "my_screenRecordingBucketUri", * // "speechConfig": {}, + * // "timeZone": "my_timeZone", * // "updateTime": "my_updateTime" * // } * } @@ -13938,6 +15534,17 @@ export namespace contactcenterinsights_v1 { */ requestBody?: Schema$GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequest; } + export interface Params$Resource$Projects$Locations$Diagnoseconversations extends StandardParameters { + /** + * Required. The parent resource where the analysis will be performed. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudContactcenterinsightsV1DiagnoseConversationsRequest; + } export interface Params$Resource$Projects$Locations$Generativeinsights extends StandardParameters { /** * Required. The location of the data. "projects/{project\}/locations/{location\}" @@ -23873,7 +25480,8 @@ export namespace contactcenterinsights_v1 { * // "analysisPercentage": {}, * // "annotatorSelector": {}, * // "filter": "my_filter", - * // "parent": "my_parent" + * // "parent": "my_parent", + * // "relabel": false * // } * }, * }); @@ -29430,7 +31038,8 @@ export namespace contactcenterinsights_v1 { * // "analysisPercentage": {}, * // "annotatorSelector": {}, * // "filter": "my_filter", - * // "parent": "my_parent" + * // "parent": "my_parent", + * // "relabel": false * // } * }, * }, @@ -30473,6 +32082,7 @@ export namespace contactcenterinsights_v1 { * requestBody: { * // request body parameters * // { + * // "action": {}, * // "chartType": "my_chartType", * // "chartVisualizationType": "my_chartVisualizationType", * // "createTime": "my_createTime", @@ -30492,6 +32102,7 @@ export namespace contactcenterinsights_v1 { * * // Example response * // { + * // "action": {}, * // "chartType": "my_chartType", * // "chartVisualizationType": "my_chartVisualizationType", * // "createTime": "my_createTime", @@ -30788,6 +32399,7 @@ export namespace contactcenterinsights_v1 { * * // Example response * // { + * // "action": {}, * // "chartType": "my_chartType", * // "chartVisualizationType": "my_chartVisualizationType", * // "createTime": "my_createTime", @@ -31099,6 +32711,7 @@ export namespace contactcenterinsights_v1 { * requestBody: { * // request body parameters * // { + * // "action": {}, * // "chartType": "my_chartType", * // "chartVisualizationType": "my_chartVisualizationType", * // "createTime": "my_createTime", @@ -31118,6 +32731,7 @@ export namespace contactcenterinsights_v1 { * * // Example response * // { + * // "action": {}, * // "chartType": "my_chartType", * // "chartVisualizationType": "my_chartVisualizationType", * // "createTime": "my_createTime", @@ -35269,6 +36883,483 @@ export namespace contactcenterinsights_v1 { requestBody?: Schema$GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest; } + export class Resource$Projects$Locations$Diagnostics { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes a diagnostic. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/contactcenterinsights.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const contactcenterinsights = google.contactcenterinsights('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await contactcenterinsights.projects.locations.diagnostics.delete( + * { + * // Required. The name of the diagnostic to delete. + * name: 'projects/my-project/locations/my-location/diagnostics/my-diagnostic', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Diagnostics$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Diagnostics$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Diagnostics$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Diagnostics$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Diagnostics$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Diagnostics$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Diagnostics$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Diagnostics$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://contactcenterinsights.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets a diagnostic. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/contactcenterinsights.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const contactcenterinsights = google.contactcenterinsights('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await contactcenterinsights.projects.locations.diagnostics.get({ + * // Required. The name of the diagnostic to retrieve. + * name: 'projects/my-project/locations/my-location/diagnostics/my-diagnostic', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "analysisSummary": "my_analysisSummary", + * // "conversationFilter": "my_conversationFilter", + * // "createTime": "my_createTime", + * // "name": "my_name", + * // "report": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Diagnostics$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Diagnostics$Get, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Projects$Locations$Diagnostics$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Diagnostics$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Diagnostics$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Diagnostics$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Diagnostics$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Diagnostics$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://contactcenterinsights.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists diagnostics. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/contactcenterinsights.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const contactcenterinsights = google.contactcenterinsights('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await contactcenterinsights.projects.locations.diagnostics.list({ + * // Optional. A filter to apply to the list (e.g. `create_time \> "2023-01-01T00:00:00Z"`). + * filter: 'placeholder-value', + * // Optional. The maximum number of diagnostics to return. The service may return fewer than this value. If unspecified, at most 100 diagnostics will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous `ListDiagnostics` call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent resource of the diagnostics. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "diagnostics": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Diagnostics$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Diagnostics$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Diagnostics$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Diagnostics$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Diagnostics$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Diagnostics$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Diagnostics$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Diagnostics$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://contactcenterinsights.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/diagnostics').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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$Diagnostics$Delete extends StandardParameters { + /** + * Required. The name of the diagnostic to delete. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Diagnostics$Get extends StandardParameters { + /** + * Required. The name of the diagnostic to retrieve. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Diagnostics$List extends StandardParameters { + /** + * Optional. A filter to apply to the list (e.g. `create_time \> "2023-01-01T00:00:00Z"`). + */ + filter?: string; + /** + * Optional. The maximum number of diagnostics to return. The service may return fewer than this value. If unspecified, at most 100 diagnostics will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous `ListDiagnostics` call. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent resource of the diagnostics. + */ + parent?: string; + } + export class Resource$Projects$Locations$Encryptionspec { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/container/v1.ts b/src/apis/container/v1.ts index 97cda662311..b156cf6a16e 100644 --- a/src/apis/container/v1.ts +++ b/src/apis/container/v1.ts @@ -149,6 +149,15 @@ export namespace container_v1 { */ gpuSharingConfig?: Schema$GPUSharingConfig; } + /** + * AccurateTimeConfig contains configuration for the accurate time synchronization feature. + */ + export interface Schema$AccurateTimeConfig { + /** + * Enables enhanced time synchronization using PTP-KVM. + */ + enablePtpKvmTimeSync?: boolean | null; + } /** * AdditionalIPRangesConfig is the configuration for individual additional subnetwork attached to the cluster */ @@ -269,10 +278,18 @@ export namespace container_v1 { * Configuration for NetworkPolicy. This only tracks whether the addon is enabled or not on the Master, it does not track whether network policy is enabled for the nodes. */ networkPolicyConfig?: Schema$NetworkPolicyConfig; + /** + * Optional. Configuration for NodeReadinessController add-on. + */ + nodeReadinessConfig?: Schema$NodeReadinessConfig; /** * Configuration for the Cloud Storage Parallelstore CSI driver. */ parallelstoreCsiDriverConfig?: Schema$ParallelstoreCsiDriverConfig; + /** + * Optional. Configuration for the Pod Snapshot feature. + */ + podSnapshotConfig?: Schema$PodSnapshotConfig; /** * Optional. Configuration for Ray Operator addon. */ @@ -281,6 +298,10 @@ export namespace container_v1 { * Optional. Configuration for the slice controller add-on. */ sliceControllerConfig?: Schema$SliceControllerConfig; + /** + * Configuration for the Slurm Operator. + */ + slurmOperatorConfig?: Schema$SlurmOperatorConfig; /** * Optional. Configuration for the StatefulHA add-on. */ @@ -364,6 +385,10 @@ export namespace container_v1 { * Autopilot is the configuration for Autopilot settings on the cluster. */ export interface Schema$Autopilot { + /** + * ClusterPolicyConfig denotes cluster level policies that are enforced for the cluster. + */ + clusterPolicyConfig?: Schema$ClusterPolicyConfig; /** * Enable Autopilot */ @@ -407,7 +432,7 @@ export namespace container_v1 { subjects?: string[] | null; } /** - * AutopilotConfig contains configuration of autopilot feature for this nodepool. + * AutopilotConfig contains configuration of autopilot feature for this node pool. */ export interface Schema$AutopilotConfig { /** @@ -564,7 +589,7 @@ export namespace container_v1 { standardRolloutPolicy?: Schema$StandardRolloutPolicy; } /** - * BootDisk specifies the boot disk configuration for nodepools. + * BootDisk specifies the boot disk configuration for node pools. */ export interface Schema$BootDisk { /** @@ -623,7 +648,7 @@ export namespace container_v1 { */ export interface Schema$CertificateAuthorityDomainConfig { /** - * List of fully qualified domain names (FQDN). Specifying port is supported. Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000 + * List of fully qualified domain names (FQDN). Specifying port is supported. Wildcards are NOT supported. Examples: - `my.customdomain.com` - `10.0.1.2:5000` */ fqdns?: string[] | null; /** @@ -749,6 +774,10 @@ export namespace container_v1 { * Configuration of Confidential Nodes. All the nodes in the cluster will be Confidential VM once enabled. */ confidentialNodes?: Schema$ConfidentialNodes; + /** + * Configuration for control plane egress control. + */ + controlPlaneEgress?: Schema$ControlPlaneEgress; /** * Configuration for all cluster's control plane endpoints. */ @@ -873,6 +902,10 @@ export namespace container_v1 { * Configure the maintenance policy for this cluster. */ maintenancePolicy?: Schema$MaintenancePolicy; + /** + * Configuration for Managed Machine Learning Diagnostics. + */ + managedMachineLearningDiagnosticsConfig?: Schema$ManagedMachineLearningDiagnosticsConfig; /** * Configuration for Managed OpenTelemetry pipeline. */ @@ -973,10 +1006,18 @@ export namespace container_v1 { * Output only. Reserved for future use. */ satisfiesPzs?: boolean | null; + /** + * Optional. Configuration for scheduled upgrades. + */ + scheduleUpgradeConfig?: Schema$ScheduleUpgradeConfig; /** * Secret CSI driver configuration. */ secretManagerConfig?: Schema$SecretManagerConfig; + /** + * Configuration for sync Secret Manager secrets as k8s secrets. + */ + secretSyncConfig?: Schema$SecretSyncConfig; /** * Optional. Enable/Disable Security Posture API features for the cluster. */ @@ -1068,6 +1109,27 @@ export namespace container_v1 { */ totalEgressBandwidthTier?: string | null; } + /** + * ClusterPolicyConfig stores the configuration for cluster wide policies. + */ + export interface Schema$ClusterPolicyConfig { + /** + * Denotes preventing standard node pools and requiring only autopilot node pools. + */ + noStandardNodePools?: boolean | null; + /** + * Denotes preventing impersonation and CSRs for GKE System users. + */ + noSystemImpersonation?: boolean | null; + /** + * Denotes that preventing creation and mutation of resources in GKE managed namespaces and cluster-scoped GKE managed resources . + */ + noSystemMutation?: boolean | null; + /** + * Denotes preventing unsafe webhooks. + */ + noUnsafeWebhooks?: boolean | null; + } /** * ClusterUpdate describes an update to the cluster. Exactly one update can be applied to a cluster with each request, so at most one field can be provided. */ @@ -1096,6 +1158,10 @@ export namespace container_v1 { * AutoIpamConfig contains all information related to Auto IPAM */ desiredAutoIpamConfig?: Schema$AutoIpamConfig; + /** + * The desired autopilot cluster policies that to be enforced in the cluster. + */ + desiredAutopilotClusterPolicyConfig?: Schema$ClusterPolicyConfig; /** * WorkloadPolicyConfig is the configuration related to GCW workload policy */ @@ -1116,6 +1182,10 @@ export namespace container_v1 { * The desired containerd config for the cluster. */ desiredContainerdConfig?: Schema$ContainerdConfig; + /** + * The desired control plane egress control config for the cluster. + */ + desiredControlPlaneEgress?: Schema$ControlPlaneEgress; /** * Control plane endpoints configuration. */ @@ -1216,6 +1286,10 @@ export namespace container_v1 { * The logging service the cluster should use to write logs. Currently available options: * `logging.googleapis.com/kubernetes` - The Cloud Logging service with a Kubernetes-native resource model * `logging.googleapis.com` - The legacy Cloud Logging service (no longer available as of GKE 1.15). * `none` - no logs will be exported from the cluster. If left as an empty string,`logging.googleapis.com/kubernetes` will be used for GKE 1.14+ or `logging.googleapis.com` for earlier versions. */ desiredLoggingService?: string | null; + /** + * The desired managed machine learning diagnostics configuration. + */ + desiredManagedMachineLearningDiagnosticsConfig?: Schema$ManagedMachineLearningDiagnosticsConfig; /** * The desired managed open telemetry configuration. */ @@ -1324,6 +1398,10 @@ export namespace container_v1 { * Enable/Disable Secret Manager Config. */ desiredSecretManagerConfig?: Schema$SecretManagerConfig; + /** + * Configuration for sync Secret Manager secrets as k8s secrets. + */ + desiredSecretSyncConfig?: Schema$SecretSyncConfig; /** * Enable/Disable Security Posture API features for the cluster. */ @@ -1501,6 +1579,15 @@ export namespace container_v1 { */ writableCgroups?: Schema$WritableCgroups; } + /** + * ControlPlaneEgress defines the settings needed to enable control plane egress control. + */ + export interface Schema$ControlPlaneEgress { + /** + * Defines the mode of control plane egress. + */ + mode?: string | null; + } /** * Configuration for all of the cluster's control plane endpoints. */ @@ -1578,6 +1665,15 @@ export namespace container_v1 { */ zone?: string | null; } + /** + * Support for running custom init code while bootstrapping nodes. + */ + export interface Schema$CustomNodeInit { + /** + * Optional. The init script to be executed on the node. + */ + initScript?: Schema$InitScript; + } /** * Time window specified for daily maintenance operations. */ @@ -1616,6 +1712,23 @@ export namespace container_v1 { */ state?: string | null; } + /** + * Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp + */ + export interface Schema$Date { + /** + * Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. + */ + day?: number | null; + /** + * Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. + */ + month?: number | null; + /** + * Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. + */ + year?: number | null; + } /** * Provisions a new, separate local NVMe SSD exclusively for swap. */ @@ -2128,7 +2241,7 @@ export namespace container_v1 { */ header?: Schema$RegistryHeader[]; /** - * Host configures the registry host/mirror. It supports fully qualified domain names (FQDN) and IP addresses: Specifying port is supported. Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000 + * Host configures the registry host/mirror. It supports fully qualified domain names (FQDNs) and IP addresses. Specifying scheme, port or path is supported. Scheme can only be http or https. Wildcards are NOT supported. Examples: - `my.customdomain.com` - `https://my.customdomain.com/path` - `10.0.1.2:5000` */ host?: string | null; /** @@ -2193,6 +2306,27 @@ export namespace container_v1 { */ enabled?: boolean | null; } + /** + * InitScript provide a simply bash script to be executed on the node. + */ + export interface Schema$InitScript { + /** + * Optional. The optional arguments line to be passed to the init script. + */ + args?: string[] | null; + /** + * The resource name of the secret manager secret hosting the init script. Both global and regional secrets are supported with format below: Global secret: projects/{project\}/secrets/{secret\}/versions/{version\} Regional secret: projects/{project\}/locations/{location\}/secrets/{secret\}/versions/{version\} Example: projects/1234567890/secrets/script_1/versions/1. Accept version number only, not support version alias. User can't configure both gcp_secret_manager_secret_uri and gcs_uri. + */ + gcpSecretManagerSecretUri?: string | null; + /** + * The generation of the init script stored in Gloud Storage. This is the required field to identify the version of the init script. User can get the genetaion from `gcloud storage objects describe gs://BUCKET_NAME/OBJECT_NAME --format="value(generation)"` or from the "Version history" tab of the object in the Cloud Console UI. + */ + gcsGeneration?: string | null; + /** + * The Cloud Storage URI for storing the init script. Format: gs://BUCKET_NAME/OBJECT_NAME The service account on the node pool must have read access to the object. User can't configure both gcs_uri and gcp_secret_manager_secret_uri. + */ + gcsUri?: string | null; + } /** * IntraNodeVisibilityConfig contains the desired config of the intra-node visibility on this cluster. */ @@ -2404,10 +2538,18 @@ export namespace container_v1 { * Parameters that can be configured on Linux nodes. */ export interface Schema$LinuxNodeConfig { + /** + * Optional. The accurate time configuration for the node pool. + */ + accurateTimeConfig?: Schema$AccurateTimeConfig; /** * cgroup_mode specifies the cgroup mode to be used on the node. */ cgroupMode?: string | null; + /** + * Optional. Allow users to run arbitrary bash script or container on the node. + */ + customNodeInit?: Schema$CustomNodeInit; /** * Optional. Amounts for 2M and 1G hugepages */ @@ -2521,6 +2663,10 @@ export namespace container_v1 { * Configuration for the Lustre CSI driver. */ export interface Schema$LustreCsiDriverConfig { + /** + * When set to true, this disables multi-NIC support for the Lustre CSI driver. By default, GKE enables multi-NIC support, which allows the Lustre CSI driver to automatically detect and configure all suitable network interfaces on a node to maximize I/O performance for demanding workloads. + */ + disableMultiNic?: boolean | null; /** * Whether the Lustre CSI driver is enabled for this cluster. */ @@ -2572,11 +2718,24 @@ export namespace container_v1 { * Exceptions to maintenance window. Non-emergency maintenance should not occur in these windows. */ maintenanceExclusions?: {[key: string]: Schema$TimeWindow} | null; + /** + * RecurringMaintenanceWindow specifies some number of recurring time periods for maintenance to occur. The time windows may be overlapping. If no maintenance windows are set, maintenance can occur at any time. Alternative to RecurringWindow, with renamed fields. + */ + recurringMaintenanceWindow?: Schema$RecurringMaintenanceWindow; /** * RecurringWindow specifies some number of recurring time periods for maintenance to occur. The time windows may be overlapping. If no maintenance windows are set, maintenance can occur at any time. */ recurringWindow?: Schema$RecurringTimeWindow; } + /** + * ManagedMachineLearningDiagnosticsConfig is the configuration for the GKE Managed Machine Learning Diagnostics pipeline. + */ + export interface Schema$ManagedMachineLearningDiagnosticsConfig { + /** + * Enable/Disable Managed Machine Learning Diagnostics. + */ + enabled?: boolean | null; + } /** * ManagedOpenTelemetryConfig is the configuration for the GKE Managed OpenTelemetry pipeline. */ @@ -2943,7 +3102,7 @@ export namespace container_v1 { */ kubeletConfig?: Schema$NodeKubeletConfig; /** - * The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ + * The Kubernetes labels (key/value pairs) to apply to each node. The values in this field are added to the set of default labels Kubernetes applies to nodes. This field has the following restrictions: * Labels must use a valid Kubernetes syntax and character set, as defined in https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#syntax-and-character-set. * This field supports up to 1,024 total characters in a single request. Depending on the Kubernetes version, keys in this field might conflict with the keys of the default labels, which might change which of your labels are applied to the nodes. Assume that the behavior is unpredictable and avoid label key conflicts. For more information about the default labels, see: https://kubernetes.io/docs/reference/labels-annotations-taints/ */ labels?: {[key: string]: string} | null; /** @@ -3042,6 +3201,10 @@ export namespace container_v1 { * The list of instance tags applied to all nodes. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during cluster or node pool creation. Each tag within the list must comply with RFC1035. */ tags?: string[] | null; + /** + * Optional. The taint configuration for the node pool. + */ + taintConfig?: Schema$TaintConfig; /** * List of kubernetes taints to be applied to each node. For more information, including usage and the valid values, see: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ */ @@ -3077,7 +3240,7 @@ export namespace container_v1 { nodeKubeletConfig?: Schema$NodeKubeletConfig; } /** - * NodeDrainConfig contains the node drain related configurations for this nodepool. + * NodeDrainConfig contains the node drain related configurations for this node pool. */ export interface Schema$NodeDrainConfig { /** @@ -3221,6 +3384,10 @@ export namespace container_v1 { * Parameters for node pool-level network config. */ export interface Schema$NodeNetworkConfig { + /** + * Immutable. The accelerator network profile for the node pool. For now the only valid value is "auto". If specified, the network configuration of the nodes in this node pool will be managed by this profile for the supported machine types, zone, etc. + */ + acceleratorNetworkProfile?: string | null; /** * We specify the additional node networks for this node pool using this list. Each node network corresponds to an additional interface */ @@ -3246,7 +3413,7 @@ export namespace container_v1 { */ networkTierConfig?: Schema$NetworkTierConfig; /** - * [PRIVATE FIELD] Pod CIDR size overprovisioning config for the nodepool. Pod CIDR size per node depends on max_pods_per_node. By default, the value of max_pods_per_node is rounded off to next power of 2 and we then double that to get the size of pod CIDR block per node. Example: max_pods_per_node of 30 would result in 64 IPs (/26). This config can disable the doubling of IPs (we still round off to next power of 2) Example: max_pods_per_node of 30 will result in 32 IPs (/27) when overprovisioning is disabled. + * [PRIVATE FIELD] Pod CIDR size overprovisioning config for the node pool. Pod CIDR size per node depends on max_pods_per_node. By default, the value of max_pods_per_node is rounded off to next power of 2 and we then double that to get the size of pod CIDR block per node. Example: max_pods_per_node of 30 would result in 64 IPs (/26). This config can disable the doubling of IPs (we still round off to next power of 2) Example: max_pods_per_node of 30 will result in 32 IPs (/27) when overprovisioning is disabled. */ podCidrOverprovisionConfig?: Schema$PodCIDROverprovisionConfig; /** @@ -3397,7 +3564,7 @@ export namespace container_v1 { */ enabled?: boolean | null; /** - * Location policy used when scaling up a nodepool. + * Location policy used when scaling up a node pool. */ locationPolicy?: string | null; /** @@ -3427,7 +3594,7 @@ export namespace container_v1 { nodeConfigDefaults?: Schema$NodeConfigDefaults; } /** - * NodePoolLoggingConfig specifies logging configuration for nodepools. + * NodePoolLoggingConfig specifies logging configuration for node pools. */ export interface Schema$NodePoolLoggingConfig { /** @@ -3436,7 +3603,7 @@ export namespace container_v1 { variantConfig?: Schema$LoggingVariantConfig; } /** - * NodePoolUpgradeInfo contains the upgrade information of a nodepool. + * NodePoolUpgradeInfo contains the upgrade information of a node pool. */ export interface Schema$NodePoolUpgradeInfo { /** @@ -3444,11 +3611,11 @@ export namespace container_v1 { */ autoUpgradeStatus?: string[] | null; /** - * The nodepool's current minor version's end of extended support timestamp. + * The node pool's current minor version's end of extended support timestamp. */ endOfExtendedSupportTimestamp?: string | null; /** - * The nodepool's current minor version's end of standard support timestamp. + * The node pool's current minor version's end of standard support timestamp. */ endOfStandardSupportTimestamp?: string | null; /** @@ -3468,6 +3635,15 @@ export namespace container_v1 { */ upgradeDetails?: Schema$UpgradeDetails[]; } + /** + * Configuration for the GKE Node Readiness Controller. + */ + export interface Schema$NodeReadinessConfig { + /** + * Optional. Whether the GKE Node Readiness Controller is enabled for this cluster. + */ + enabled?: boolean | null; + } /** * Kubernetes taint is composed of three fields: key, value, and effect. Effect can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute. See [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration) for more information, including usage and the valid values. */ @@ -3676,6 +3852,15 @@ export namespace container_v1 { */ disable?: boolean | null; } + /** + * PodSnapshotConfig is the configuration for GKE Pod Snapshots feature. + */ + export interface Schema$PodSnapshotConfig { + /** + * Whether or not the Pod Snapshots feature is enabled. + */ + enabled?: boolean | null; + } /** * Configuration options for private clusters. */ @@ -3766,7 +3951,7 @@ export namespace container_v1 { */ export interface Schema$QueuedProvisioning { /** - * Denotes that this nodepool is QRM specific, meaning nodes can be only obtained through queuing via the Cluster Autoscaler ProvisioningRequest API. + * Denotes that this node pool is QRM specific, meaning nodes can be only obtained through queuing via the Cluster Autoscaler ProvisioningRequest API. */ enabled?: boolean | null; } @@ -3831,6 +4016,27 @@ export namespace container_v1 { */ enableInsecureBindingSystemUnauthenticated?: boolean | null; } + /** + * Represents an arbitrary window of time that recurs. Will replace RecurringTimeWindow. + */ + export interface Schema$RecurringMaintenanceWindow { + /** + * Optional. Specifies the date before which will not be scheduled. Depending on the recurrence, this may be the date the first window appears. Days are measured in the UTC timezone. This setting must be used when INTERVAL\>1 or FREQ=WEEKLY/MONTHLY and no BYDAY specified. + */ + delayUntil?: Schema$Date; + /** + * Required. An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how this window recurs. For example, to have something repeat every weekday, you'd use: `FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR` To repeat some window daily (equivalent to the DailyMaintenanceWindow): `FREQ=DAILY` For the first weekend of every month: `FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU` The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported. + */ + recurrence?: string | null; + /** + * Required. Duration of the window. + */ + windowDuration?: string | null; + /** + * Required. Start time of the window on days that it is scheduled, assuming UTC timezone. + */ + windowStartTime?: Schema$TimeOfDay; + } /** * Represents an arbitrary window of time that recurs. */ @@ -3866,7 +4072,7 @@ export namespace container_v1 { */ hosts?: Schema$HostConfig[]; /** - * Defines the host name of the registry server, which will be used to create configuration file as /etc/containerd/hosts.d//hosts.toml. It supports fully qualified domain names (FQDN) and IP addresses: Specifying port is supported. Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000 + * Defines the host name of the registry server, which will be used to create configuration file as /etc/containerd/hosts.d//hosts.toml. It supports fully qualified domain names (FQDN) and IP addresses: Specifying port is supported, while scheme and path are NOT supported. Wildcards are NOT supported. Examples: - `my.customdomain.com` - `10.0.1.2:5000` */ server?: string | null; } @@ -4020,6 +4226,15 @@ export namespace container_v1 { */ type?: string | null; } + /** + * Configuration for scheduled upgrades on the cluster. + */ + export interface Schema$ScheduleUpgradeConfig { + /** + * Optional. Whether or not scheduled upgrades are enabled. + */ + enabled?: boolean | null; + } /** * SecondaryBootDisk represents a persistent disk attached to a node with special configurations based on its mode. */ @@ -4050,6 +4265,19 @@ export namespace container_v1 { */ rotationConfig?: Schema$RotationConfig; } + /** + * Configuration for sync Secret Manager secrets as k8s secrets. + */ + export interface Schema$SecretSyncConfig { + /** + * Enable/Disable Secret Sync Config. + */ + enabled?: boolean | null; + /** + * Rotation config for secret manager. + */ + rotationConfig?: Schema$SyncRotationConfig; + } /** * SecurityBulletinEvent is a notification sent to customers when a security bulletin has been posted that they are vulnerable to. */ @@ -4501,6 +4729,15 @@ export namespace container_v1 { */ enabled?: boolean | null; } + /** + * Configuration for the Slurm Operator. + */ + export interface Schema$SlurmOperatorConfig { + /** + * When enabled, it runs a Slurm Operator that manages the set of compute pods for Slurm Cluster. + */ + enabled?: boolean | null; + } /** * SoleTenantConfig contains the NodeAffinities to specify what shared sole tenant node groups should back the node pool. */ @@ -4624,6 +4861,49 @@ export namespace container_v1 { */ ephemeralLocalSsdProfile?: Schema$EphemeralLocalSsdProfile; } + /** + * SyncRotationConfig is config for secret manager auto rotation. + */ + export interface Schema$SyncRotationConfig { + /** + * Whether the rotation is enabled. + */ + enabled?: boolean | null; + /** + * The interval between two consecutive rotations. Default rotation interval is 2 minutes. + */ + rotationInterval?: string | null; + } + /** + * TaintConfig contains the configuration for the taints of the node pool. + */ + export interface Schema$TaintConfig { + /** + * Optional. Controls architecture tainting behavior. + */ + architectureTaintBehavior?: 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$TimeOfDay { + /** + * Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. + */ + hours?: number | null; + /** + * Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59. + */ + minutes?: number | null; + /** + * Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999. + */ + nanos?: number | null; + /** + * Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds. + */ + seconds?: number | null; + } /** * Represents an arbitrary window of time. */ @@ -4845,6 +5125,10 @@ export namespace container_v1 { * The desired network tags to be applied to all nodes in the node pool. If this field is not present, the tags will not be changed. Otherwise, the existing network tags will be *replaced* with the provided tags. */ tags?: Schema$NetworkTags; + /** + * The taint configuration for the node pool. + */ + taintConfig?: Schema$TaintConfig; /** * The desired node taints to be applied to all nodes in the node pool. If this field is not present, the taints will not be changed. Otherwise, the existing node taints will be *replaced* with the provided taints. */ @@ -6394,6 +6678,7 @@ export namespace container_v1 { * // "compliancePostureConfig": {}, * // "conditions": [], * // "confidentialNodes": {}, + * // "controlPlaneEgress": {}, * // "controlPlaneEndpointsConfig": {}, * // "costManagementConfig": {}, * // "createTime": "my_createTime", @@ -6425,6 +6710,7 @@ export namespace container_v1 { * // "loggingConfig": {}, * // "loggingService": "my_loggingService", * // "maintenancePolicy": {}, + * // "managedMachineLearningDiagnosticsConfig": {}, * // "managedOpentelemetryConfig": {}, * // "masterAuth": {}, * // "masterAuthorizedNetworksConfig": {}, @@ -6450,7 +6736,9 @@ export namespace container_v1 { * // "resourceUsageExportConfig": {}, * // "satisfiesPzi": false, * // "satisfiesPzs": false, + * // "scheduleUpgradeConfig": {}, * // "secretManagerConfig": {}, + * // "secretSyncConfig": {}, * // "securityPostureConfig": {}, * // "selfLink": "my_selfLink", * // "servicesIpv4Cidr": "my_servicesIpv4Cidr", @@ -9504,7 +9792,7 @@ export namespace container_v1 { } /** - * Fetch upgrade information of a specific nodepool. + * Fetch upgrade information of a specific node pool. * @example * ```js * // Before running the sample: @@ -9536,7 +9824,7 @@ export namespace container_v1 { * const res = * await container.projects.locations.clusters.nodePools.fetchNodePoolUpgradeInfo( * { - * // Required. The name (project, location, cluster, nodepool) of the nodepool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. + * // Required. The name (project, location, cluster, node pool) of the node pool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. * name: 'projects/my-project/locations/my-location/clusters/my-cluster/nodePools/my-nodePool', * // API request version that initiates this operation. * version: 'placeholder-value', @@ -10697,6 +10985,7 @@ export namespace container_v1 { * // "resourceManagerTags": {}, * // "storagePools": [], * // "tags": {}, + * // "taintConfig": {}, * // "taints": {}, * // "upgradeSettings": {}, * // "windowsNodeConfig": {}, @@ -10867,7 +11156,7 @@ export namespace container_v1 { } export interface Params$Resource$Projects$Locations$Clusters$Nodepools$Fetchnodepoolupgradeinfo extends StandardParameters { /** - * Required. The name (project, location, cluster, nodepool) of the nodepool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. + * Required. The name (project, location, cluster, node pool) of the node pool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. */ name?: string; /** @@ -12666,6 +12955,7 @@ export namespace container_v1 { * // "compliancePostureConfig": {}, * // "conditions": [], * // "confidentialNodes": {}, + * // "controlPlaneEgress": {}, * // "controlPlaneEndpointsConfig": {}, * // "costManagementConfig": {}, * // "createTime": "my_createTime", @@ -12697,6 +12987,7 @@ export namespace container_v1 { * // "loggingConfig": {}, * // "loggingService": "my_loggingService", * // "maintenancePolicy": {}, + * // "managedMachineLearningDiagnosticsConfig": {}, * // "managedOpentelemetryConfig": {}, * // "masterAuth": {}, * // "masterAuthorizedNetworksConfig": {}, @@ -12722,7 +13013,9 @@ export namespace container_v1 { * // "resourceUsageExportConfig": {}, * // "satisfiesPzi": false, * // "satisfiesPzs": false, + * // "scheduleUpgradeConfig": {}, * // "secretManagerConfig": {}, + * // "secretSyncConfig": {}, * // "securityPostureConfig": {}, * // "selfLink": "my_selfLink", * // "servicesIpv4Cidr": "my_servicesIpv4Cidr", @@ -15646,7 +15939,7 @@ export namespace container_v1 { } /** - * Fetch upgrade information of a specific nodepool. + * Fetch upgrade information of a specific node pool. * @example * ```js * // Before running the sample: @@ -15677,7 +15970,7 @@ export namespace container_v1 { * // Do the magic * const res = * await container.projects.zones.clusters.nodePools.fetchNodePoolUpgradeInfo({ - * // Required. The name (project, location, cluster, nodepool) of the nodepool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. + * // Required. The name (project, location, cluster, node pool) of the node pool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. * name: 'projects/my-project/zones/my-zone/clusters/my-cluster/nodePools/my-nodePool', * // API request version that initiates this operation. * version: 'placeholder-value', @@ -16695,6 +16988,7 @@ export namespace container_v1 { * // "resourceManagerTags": {}, * // "storagePools": [], * // "tags": {}, + * // "taintConfig": {}, * // "taints": {}, * // "upgradeSettings": {}, * // "windowsNodeConfig": {}, @@ -16887,7 +17181,7 @@ export namespace container_v1 { } export interface Params$Resource$Projects$Zones$Clusters$Nodepools$Fetchnodepoolupgradeinfo extends StandardParameters { /** - * Required. The name (project, location, cluster, nodepool) of the nodepool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. + * Required. The name (project, location, cluster, node pool) of the node pool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. */ name?: string; /** diff --git a/src/apis/container/v1beta1.ts b/src/apis/container/v1beta1.ts index 8b11011a2ed..413d063215f 100644 --- a/src/apis/container/v1beta1.ts +++ b/src/apis/container/v1beta1.ts @@ -153,6 +153,15 @@ export namespace container_v1beta1 { */ maxTimeSharedClientsPerGpu?: string | null; } + /** + * AccurateTimeConfig contains configuration for the accurate time synchronization feature. + */ + export interface Schema$AccurateTimeConfig { + /** + * Enables enhanced time synchronization using PTP-KVM. + */ + enablePtpKvmTimeSync?: boolean | null; + } /** * AdditionalIPRangesConfig is the configuration for individual additional subnetwork attached to the cluster */ @@ -221,6 +230,10 @@ export namespace container_v1beta1 { * Configuration for the addons that can be automatically spun up in the cluster, enabling additional functionality. */ export interface Schema$AddonsConfig { + /** + * Optional. Configuration for the AgentSandbox addon. + */ + agentSandboxConfig?: Schema$AgentSandboxConfig; /** * Configuration for the Cloud Run addon. The `IstioConfig` addon must be enabled in order to enable Cloud Run addon. This option can only be enabled at cluster creation time. */ @@ -281,6 +294,10 @@ export namespace container_v1beta1 { * Configuration for NetworkPolicy. This only tracks whether the addon is enabled or not on the Master, it does not track whether network policy is enabled for the nodes. */ networkPolicyConfig?: Schema$NetworkPolicyConfig; + /** + * Optional. Configuration for NodeReadinessController add-on. + */ + nodeReadinessConfig?: Schema$NodeReadinessConfig; /** * Configuration for the Cloud Storage Parallelstore CSI driver. */ @@ -297,6 +314,10 @@ export namespace container_v1beta1 { * Optional. Configuration for the slice controller add-on. */ sliceControllerConfig?: Schema$SliceControllerConfig; + /** + * Configuration for the Slurm Operator. + */ + slurmOperatorConfig?: Schema$SlurmOperatorConfig; /** * Optional. Configuration for the StatefulHA add-on. */ @@ -336,6 +357,15 @@ export namespace container_v1beta1 { */ threadsPerCore?: string | null; } + /** + * Configuration for the AgentSandbox addon. + */ + export interface Schema$AgentSandboxConfig { + /** + * Optional. Whether AgentSandbox is enabled for this cluster. + */ + enabled?: boolean | null; + } /** * AnonymousAuthenticationConfig defines the settings needed to limit endpoints that allow anonymous authentication. */ @@ -380,6 +410,10 @@ export namespace container_v1beta1 { * Autopilot is the configuration for Autopilot settings on the cluster. */ export interface Schema$Autopilot { + /** + * ClusterPolicyConfig denotes cluster level policies that are enforced for the cluster. + */ + clusterPolicyConfig?: Schema$ClusterPolicyConfig; /** * Output only. ConversionStatus shows conversion status. */ @@ -427,7 +461,7 @@ export namespace container_v1beta1 { subjects?: string[] | null; } /** - * AutopilotConfig contains configuration of autopilot feature for this nodepool. + * AutopilotConfig contains configuration of autopilot feature for this node pool. */ export interface Schema$AutopilotConfig { /** @@ -610,7 +644,7 @@ export namespace container_v1beta1 { standardRolloutPolicy?: Schema$StandardRolloutPolicy; } /** - * BootDisk specifies the boot disk configuration for nodepools. + * BootDisk specifies the boot disk configuration for node pools. */ export interface Schema$BootDisk { /** @@ -669,7 +703,7 @@ export namespace container_v1beta1 { */ export interface Schema$CertificateAuthorityDomainConfig { /** - * List of fully qualified domain names (FQDN). Specifying port is supported. Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000 + * List of fully qualified domain names (FQDN). Specifying port is supported. Wildcards are NOT supported. Examples: - `my.customdomain.com` - `10.0.1.2:5000` */ fqdns?: string[] | null; /** @@ -799,6 +833,10 @@ export namespace container_v1beta1 { * Configuration of Confidential Nodes. All the nodes in the cluster will be Confidential VM once enabled. */ confidentialNodes?: Schema$ConfidentialNodes; + /** + * Configuration for control plane egress control. + */ + controlPlaneEgress?: Schema$ControlPlaneEgress; /** * Configuration for all cluster's control plane endpoints. */ @@ -927,6 +965,10 @@ export namespace container_v1beta1 { * Configure the maintenance policy for this cluster. */ maintenancePolicy?: Schema$MaintenancePolicy; + /** + * Configuration for managed machine learning diagnostics. + */ + managedMachineLearningDiagnosticsConfig?: Schema$ManagedMachineLearningDiagnosticsConfig; /** * Configuration for Managed OpenTelemetry pipeline. */ @@ -995,6 +1037,10 @@ export namespace container_v1beta1 { * The node pools associated with this cluster. This field should not be set if "node_config" or "initial_node_count" are specified. */ nodePools?: Schema$NodePool[]; + /** + * The node pool upgrade concurrency config of the cluster. This field is used for auto upgrade. + */ + nodePoolUpgradeConcurrencyConfig?: Schema$NodePoolUpgradeConcurrencyConfig; /** * Notification configuration of the cluster. */ @@ -1051,6 +1097,10 @@ export namespace container_v1beta1 { * Output only. Reserved for future use. */ satisfiesPzs?: boolean | null; + /** + * Optional. Configuration for scheduled upgrades. + */ + scheduleUpgradeConfig?: Schema$ScheduleUpgradeConfig; /** * Secret CSI driver configuration. */ @@ -1162,6 +1212,27 @@ export namespace container_v1beta1 { */ totalEgressBandwidthTier?: string | null; } + /** + * ClusterPolicyConfig stores the configuration for cluster wide policies. + */ + export interface Schema$ClusterPolicyConfig { + /** + * Denotes preventing standard node pools and requiring only autopilot node pools. + */ + noStandardNodePools?: boolean | null; + /** + * Denotes preventing impersonation and CSRs for GKE System users. + */ + noSystemImpersonation?: boolean | null; + /** + * Denotes that preventing creation and mutation of resources in GKE managed namespaces and cluster-scoped GKE managed resources . + */ + noSystemMutation?: boolean | null; + /** + * Denotes preventing unsafe webhooks. + */ + noUnsafeWebhooks?: boolean | null; + } /** * Telemetry integration for the cluster. */ @@ -1199,6 +1270,10 @@ export namespace container_v1beta1 { * AutoIpamConfig contains all information related to Auto IPAM */ desiredAutoIpamConfig?: Schema$AutoIpamConfig; + /** + * The desired autopilot cluster policies that to be enforced in the cluster. + */ + desiredAutopilotClusterPolicyConfig?: Schema$ClusterPolicyConfig; /** * WorkloadPolicyConfig is the configuration related to GCW workload policy */ @@ -1223,6 +1298,10 @@ export namespace container_v1beta1 { * The desired containerd config for the cluster. */ desiredContainerdConfig?: Schema$ContainerdConfig; + /** + * The desired control plane egress control config for the cluster. + */ + desiredControlPlaneEgress?: Schema$ControlPlaneEgress; /** * Control plane endpoints configuration. */ @@ -1327,6 +1406,10 @@ export namespace container_v1beta1 { * The logging service the cluster should use to write logs. Currently available options: * `logging.googleapis.com/kubernetes` - The Cloud Logging service with a Kubernetes-native resource model * `logging.googleapis.com` - The legacy Cloud Logging service (no longer available as of GKE 1.15). * `none` - no logs will be exported from the cluster. If left as an empty string,`logging.googleapis.com/kubernetes` will be used for GKE 1.14+ or `logging.googleapis.com` for earlier versions. */ desiredLoggingService?: string | null; + /** + * The desired managed machine learning diagnostics configuration. + */ + desiredManagedMachineLearningDiagnosticsConfig?: Schema$ManagedMachineLearningDiagnosticsConfig; /** * The desired managed open telemetry configuration. */ @@ -1395,6 +1478,10 @@ export namespace container_v1beta1 { * The desired node pool logging configuration defaults for the cluster. */ desiredNodePoolLoggingConfig?: Schema$NodePoolLoggingConfig; + /** + * The desired node pool upgrade concurrency configuration. + */ + desiredNodePoolUpgradeConcurrencyConfig?: Schema$NodePoolUpgradeConcurrencyConfig; /** * The Kubernetes version to change the nodes to (typically an upgrade). Users may specify either explicit versions offered by Kubernetes Engine or version aliases, which have the following behavior: - "latest": picks the highest valid Kubernetes version - "1.X": picks the highest valid patch+gke.N patch in the 1.X version - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version - "1.X.Y-gke.N": picks an explicit Kubernetes version - "-": picks the Kubernetes master version */ @@ -1447,6 +1534,10 @@ export namespace container_v1beta1 { * The desired rollback safe upgrade configuration. */ desiredRollbackSafeUpgrade?: Schema$RollbackSafeUpgrade; + /** + * Optional. The desired scheduled upgrades configuration for the cluster. + */ + desiredScheduleUpgradeConfig?: Schema$ScheduleUpgradeConfig; /** * Enable/Disable Secret Manager Config. */ @@ -1674,6 +1765,15 @@ export namespace container_v1beta1 { */ writableCgroups?: Schema$WritableCgroups; } + /** + * ControlPlaneEgress defines the settings needed to enable control plane egress control. + */ + export interface Schema$ControlPlaneEgress { + /** + * Defines the mode of control plane egress. + */ + mode?: string | null; + } /** * Configuration for all of the cluster's control plane endpoints. */ @@ -1751,6 +1851,15 @@ export namespace container_v1beta1 { */ zone?: string | null; } + /** + * Support for running custom init code while bootstrapping nodes. + */ + export interface Schema$CustomNodeInit { + /** + * Optional. The init script to be executed on the node. + */ + initScript?: Schema$InitScript; + } /** * Time window specified for daily maintenance operations. */ @@ -2327,7 +2436,7 @@ export namespace container_v1beta1 { */ header?: Schema$RegistryHeader[]; /** - * Host configures the registry host/mirror. It supports fully qualified domain names (FQDN) and IP addresses: Specifying port is supported. Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000 + * Host configures the registry host/mirror. It supports fully qualified domain names (FQDNs) and IP addresses. Specifying scheme, port or path is supported. Scheme can only be http or https. Wildcards are NOT supported. Examples: - `my.customdomain.com` - `https://my.customdomain.com/path` - `10.0.1.2:5000` */ host?: string | null; /** @@ -2405,6 +2514,27 @@ export namespace container_v1beta1 { */ enabled?: boolean | null; } + /** + * InitScript provide a simply bash script to be executed on the node. + */ + export interface Schema$InitScript { + /** + * Optional. The optional arguments line to be passed to the init script. + */ + args?: string[] | null; + /** + * The resource name of the secret manager secret hosting the init script. Both global and regional secrets are supported with format below: Global secret: projects/{project\}/secrets/{secret\}/versions/{version\} Regional secret: projects/{project\}/locations/{location\}/secrets/{secret\}/versions/{version\} Example: projects/1234567890/secrets/script_1/versions/1. Accept version number only, not support version alias. User can't configure both gcp_secret_manager_secret_uri and gcs_uri. + */ + gcpSecretManagerSecretUri?: string | null; + /** + * The generation of the init script stored in Gloud Storage. This is the required field to identify the version of the init script. User can get the genetaion from `gcloud storage objects describe gs://BUCKET_NAME/OBJECT_NAME --format="value(generation)"` or from the "Version history" tab of the object in the Cloud Console UI. + */ + gcsGeneration?: string | null; + /** + * The Cloud Storage URI for storing the init script. Format: gs://BUCKET_NAME/OBJECT_NAME The service account on the node pool must have read access to the object. User can't configure both gcs_uri and gcp_secret_manager_secret_uri. + */ + gcsUri?: string | null; + } /** * IntraNodeVisibilityConfig contains the desired config of the intra-node visibility on this cluster. */ @@ -2642,10 +2772,18 @@ export namespace container_v1beta1 { * Parameters that can be configured on Linux nodes. */ export interface Schema$LinuxNodeConfig { + /** + * Optional. The accurate time configuration for the node pool. + */ + accurateTimeConfig?: Schema$AccurateTimeConfig; /** * cgroup_mode specifies the cgroup mode to be used on the node. */ cgroupMode?: string | null; + /** + * Optional. Allow users to run arbitrary bash script or container on the node. + */ + customNodeInit?: Schema$CustomNodeInit; /** * Optional. Amounts for 2M and 1G hugepages */ @@ -2789,6 +2927,10 @@ export namespace container_v1beta1 { * Configuration for the Lustre CSI driver. */ export interface Schema$LustreCsiDriverConfig { + /** + * When set to true, this disables multi-NIC support for the Lustre CSI driver. By default, GKE enables multi-NIC support, which allows the Lustre CSI driver to automatically detect and configure all suitable network interfaces on a node to maximize I/O performance for demanding workloads. + */ + disableMultiNic?: boolean | null; /** * Whether the Lustre CSI driver is enabled for this cluster. */ @@ -2840,11 +2982,24 @@ export namespace container_v1beta1 { * Exceptions to maintenance window. Non-emergency maintenance should not occur in these windows. */ maintenanceExclusions?: {[key: string]: Schema$TimeWindow} | null; + /** + * RecurringMaintenanceWindow specifies some number of recurring time periods for maintenance to occur. The time windows may be overlapping. If no maintenance windows are set, maintenance can occur at any time. Alternative to RecurringWindow, with renamed fields. + */ + recurringMaintenanceWindow?: Schema$RecurringMaintenanceWindow; /** * RecurringWindow specifies some number of recurring time periods for maintenance to occur. The time windows may be overlapping. If no maintenance windows are set, maintenance can occur at any time. */ recurringWindow?: Schema$RecurringTimeWindow; } + /** + * ManagedMachineLearningDiagnosticsConfig is the configuration for the GKE Managed Machine Learning Diagnostics pipeline. + */ + export interface Schema$ManagedMachineLearningDiagnosticsConfig { + /** + * Enable/Disable Managed Machine Learning Diagnostics. + */ + enabled?: boolean | null; + } /** * ManagedOpenTelemetryConfig is the configuration for the GKE Managed OpenTelemetry pipeline. */ @@ -3232,7 +3387,7 @@ export namespace container_v1beta1 { */ kubeletConfig?: Schema$NodeKubeletConfig; /** - * The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. In case of conflict in label keys, the applied set may differ depending on the Kubernetes version -- it's best to assume the behavior is undefined and conflicts should be avoided. For more information, including usage and the valid values, see: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ + * The Kubernetes labels (key/value pairs) to apply to each node. The values in this field are added to the set of default labels Kubernetes applies to nodes. This field has the following restrictions: * Labels must use a valid Kubernetes syntax and character set, as defined in https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#syntax-and-character-set. * This field supports up to 1,024 total characters in a single request. Depending on the Kubernetes version, keys in this field might conflict with the keys of the default labels, which might change which of your labels are applied to the nodes. Assume that the behavior is unpredictable and avoid label key conflicts. For more information about the default labels, see: https://kubernetes.io/docs/reference/labels-annotations-taints/ */ labels?: {[key: string]: string} | null; /** @@ -3331,6 +3486,10 @@ export namespace container_v1beta1 { * The list of instance tags applied to all nodes. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during cluster or node pool creation. Each tag within the list must comply with RFC1035. */ tags?: string[] | null; + /** + * Optional. The taint configuration for the node pool. + */ + taintConfig?: Schema$TaintConfig; /** * List of kubernetes taints to be applied to each node. For more information, including usage and the valid values, see: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ */ @@ -3370,7 +3529,7 @@ export namespace container_v1beta1 { nodeKubeletConfig?: Schema$NodeKubeletConfig; } /** - * NodeDrainConfig contains the node drain related configurations for this nodepool. + * NodeDrainConfig contains the node drain related configurations for this node pool. */ export interface Schema$NodeDrainConfig { /** @@ -3543,7 +3702,7 @@ export namespace container_v1beta1 { */ networkTierConfig?: Schema$NetworkTierConfig; /** - * [PRIVATE FIELD] Pod CIDR size overprovisioning config for the nodepool. Pod CIDR size per node depends on max_pods_per_node. By default, the value of max_pods_per_node is rounded off to next power of 2 and we then double that to get the size of pod CIDR block per node. Example: max_pods_per_node of 30 would result in 64 IPs (/26). This config can disable the doubling of IPs (we still round off to next power of 2) Example: max_pods_per_node of 30 will result in 32 IPs (/27) when overprovisioning is disabled. + * [PRIVATE FIELD] Pod CIDR size overprovisioning config for the node pool. Pod CIDR size per node depends on max_pods_per_node. By default, the value of max_pods_per_node is rounded off to next power of 2 and we then double that to get the size of pod CIDR block per node. Example: max_pods_per_node of 30 would result in 64 IPs (/26). This config can disable the doubling of IPs (we still round off to next power of 2) Example: max_pods_per_node of 30 will result in 32 IPs (/27) when overprovisioning is disabled. */ podCidrOverprovisionConfig?: Schema$PodCIDROverprovisionConfig; /** @@ -3694,7 +3853,7 @@ export namespace container_v1beta1 { */ enabled?: boolean | null; /** - * Location policy used when scaling up a nodepool. + * Location policy used when scaling up a node pool. */ locationPolicy?: string | null; /** @@ -3724,7 +3883,7 @@ export namespace container_v1beta1 { nodeConfigDefaults?: Schema$NodeConfigDefaults; } /** - * NodePoolLoggingConfig specifies logging configuration for nodepools. + * NodePoolLoggingConfig specifies logging configuration for node pools. */ export interface Schema$NodePoolLoggingConfig { /** @@ -3733,7 +3892,16 @@ export namespace container_v1beta1 { variantConfig?: Schema$LoggingVariantConfig; } /** - * NodePoolUpgradeInfo contains the upgrade information of a nodepool. + * NodePoolUpgradeConcurrencyConfig is the configuration for the node pool auto upgrade concurrency. + */ + export interface Schema$NodePoolUpgradeConcurrencyConfig { + /** + * If set, no more than max_count node pools can be upgraded concurrently. + */ + maxCount?: string | null; + } + /** + * NodePoolUpgradeInfo contains the upgrade information of a node pool. */ export interface Schema$NodePoolUpgradeInfo { /** @@ -3741,11 +3909,11 @@ export namespace container_v1beta1 { */ autoUpgradeStatus?: string[] | null; /** - * The nodepool's current minor version's end of extended support timestamp. + * The node pool's current minor version's end of extended support timestamp. */ endOfExtendedSupportTimestamp?: string | null; /** - * The nodepool's current minor version's end of standard support timestamp. + * The node pool's current minor version's end of standard support timestamp. */ endOfStandardSupportTimestamp?: string | null; /** @@ -3765,6 +3933,15 @@ export namespace container_v1beta1 { */ upgradeDetails?: Schema$UpgradeDetails[]; } + /** + * Configuration for the GKE Node Readiness Controller. + */ + export interface Schema$NodeReadinessConfig { + /** + * Optional. Whether the GKE Node Readiness Controller is enabled for this cluster. + */ + enabled?: boolean | null; + } /** * Kubernetes taint is composed of three fields: key, value, and effect. Effect can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute. See [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration) for more information, including usage and the valid values. */ @@ -4120,7 +4297,7 @@ export namespace container_v1beta1 { */ export interface Schema$QueuedProvisioning { /** - * Denotes that this nodepool is QRM specific, meaning nodes can be only obtained through queuing via the Cluster Autoscaler ProvisioningRequest API. + * Denotes that this node pool is QRM specific, meaning nodes can be only obtained through queuing via the Cluster Autoscaler ProvisioningRequest API. */ enabled?: boolean | null; } @@ -4185,6 +4362,27 @@ export namespace container_v1beta1 { */ enableInsecureBindingSystemUnauthenticated?: boolean | null; } + /** + * Represents an arbitrary window of time that recurs. Alternative to RecurringTimeWindow, with renamed fields. + */ + export interface Schema$RecurringMaintenanceWindow { + /** + * Optional. Windows will not be scheduled before that day. Depending on the recurrence, this may be the date the first window appears. Days are measured in the UTC timezone. This setting must be used when INTERVAL\>1 or FREQ=WEEKLY/MONTHLY and no BYDAY specified. + */ + delayUntil?: Schema$Date; + /** + * Required. An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how this window reccurs. For example, to have something repeat every weekday, you'd use: `FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR` To repeat some window daily (equivalent to the DailyMaintenanceWindow): `FREQ=DAILY` For the first weekend of every month: `FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU` The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported. + */ + recurrence?: string | null; + /** + * Required. Duration of the window. + */ + windowDuration?: string | null; + /** + * Required. Start time of the window on days that it is scheduled, assuming UTC timezone. + */ + windowStartTime?: Schema$TimeOfDay; + } /** * Represents an arbitrary window of time that recurs. */ @@ -4220,7 +4418,7 @@ export namespace container_v1beta1 { */ hosts?: Schema$HostConfig[]; /** - * Defines the host name of the registry server, which will be used to create configuration file as /etc/containerd/hosts.d//hosts.toml. It supports fully qualified domain names (FQDN) and IP addresses: Specifying port is supported. Wildcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000 + * Defines the host name of the registry server, which will be used to create configuration file as /etc/containerd/hosts.d//hosts.toml. It supports fully qualified domain names (FQDN) and IP addresses: Specifying port is supported, while scheme and path are NOT supported. Wildcards are NOT supported. Examples: - `my.customdomain.com` - `10.0.1.2:5000` */ server?: string | null; } @@ -4408,6 +4606,15 @@ export namespace container_v1beta1 { */ type?: string | null; } + /** + * Configuration for scheduled upgrades on the cluster. + */ + export interface Schema$ScheduleUpgradeConfig { + /** + * Optional. Whether or not scheduled upgrades are enabled. + */ + enabled?: boolean | null; + } /** * SecondaryBootDisk represents a persistent disk attached to a node with special configurations based on its mode. */ @@ -4906,6 +5113,15 @@ export namespace container_v1beta1 { */ enabled?: boolean | null; } + /** + * Configuration for the Slurm Operator. + */ + export interface Schema$SlurmOperatorConfig { + /** + * Whether the Slurm Operator is enabled in the cluster. + */ + enabled?: boolean | null; + } /** * SoleTenantConfig contains the NodeAffinities to specify what shared sole tenant node groups should back the node pool. */ @@ -5042,6 +5258,36 @@ export namespace container_v1beta1 { */ rotationInterval?: string | null; } + /** + * TaintConfig contains the configuration for the taints of the node pool. + */ + export interface Schema$TaintConfig { + /** + * Optional. Controls architecture tainting behavior. + */ + architectureTaintBehavior?: 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$TimeOfDay { + /** + * Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. + */ + hours?: number | null; + /** + * Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59. + */ + minutes?: number | null; + /** + * Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999. + */ + nanos?: number | null; + /** + * Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds. + */ + seconds?: number | null; + } /** * Represents an arbitrary window of time. */ @@ -5280,6 +5526,10 @@ export namespace container_v1beta1 { * The desired network tags to be applied to all nodes in the node pool. If this field is not present, the tags will not be changed. Otherwise, the existing network tags will be *replaced* with the provided tags. */ tags?: Schema$NetworkTags; + /** + * The taint configuration for the node pool. + */ + taintConfig?: Schema$TaintConfig; /** * The desired node taints to be applied to all nodes in the node pool. If this field is not present, the taints will not be changed. Otherwise, the existing node taints will be *replaced* with the provided taints. */ @@ -7232,6 +7482,7 @@ export namespace container_v1beta1 { * // "compliancePostureConfig": {}, * // "conditions": [], * // "confidentialNodes": {}, + * // "controlPlaneEgress": {}, * // "controlPlaneEndpointsConfig": {}, * // "costManagementConfig": {}, * // "createTime": "my_createTime", @@ -7264,6 +7515,7 @@ export namespace container_v1beta1 { * // "loggingConfig": {}, * // "loggingService": "my_loggingService", * // "maintenancePolicy": {}, + * // "managedMachineLearningDiagnosticsConfig": {}, * // "managedOpentelemetryConfig": {}, * // "master": {}, * // "masterAuth": {}, @@ -7280,6 +7532,7 @@ export namespace container_v1beta1 { * // "nodeIpv4CidrSize": 0, * // "nodePoolAutoConfig": {}, * // "nodePoolDefaults": {}, + * // "nodePoolUpgradeConcurrencyConfig": {}, * // "nodePools": [], * // "notificationConfig": {}, * // "parentProductConfig": {}, @@ -7295,6 +7548,7 @@ export namespace container_v1beta1 { * // "rollbackSafeUpgrade": {}, * // "satisfiesPzi": false, * // "satisfiesPzs": false, + * // "scheduleUpgradeConfig": {}, * // "secretManagerConfig": {}, * // "secretSyncConfig": {}, * // "securityPostureConfig": {}, @@ -10367,7 +10621,7 @@ export namespace container_v1beta1 { } /** - * Fetch upgrade information of a specific nodepool. + * Fetch upgrade information of a specific node pool. * @example * ```js * // Before running the sample: @@ -10399,7 +10653,7 @@ export namespace container_v1beta1 { * const res = * await container.projects.locations.clusters.nodePools.fetchNodePoolUpgradeInfo( * { - * // Required. The name (project, location, cluster, nodepool) of the nodepool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. + * // Required. The name (project, location, cluster, node pool) of the node pool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. * name: 'projects/my-project/locations/my-location/clusters/my-cluster/nodePools/my-nodePool', * // API request version that initiates this operation. * version: 'placeholder-value', @@ -11559,6 +11813,7 @@ export namespace container_v1beta1 { * // "resourceManagerTags": {}, * // "storagePools": [], * // "tags": {}, + * // "taintConfig": {}, * // "taints": {}, * // "upgradeSettings": {}, * // "windowsNodeConfig": {}, @@ -11729,7 +11984,7 @@ export namespace container_v1beta1 { } export interface Params$Resource$Projects$Locations$Clusters$Nodepools$Fetchnodepoolupgradeinfo extends StandardParameters { /** - * Required. The name (project, location, cluster, nodepool) of the nodepool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. + * Required. The name (project, location, cluster, node pool) of the node pool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. */ name?: string; /** @@ -13697,6 +13952,7 @@ export namespace container_v1beta1 { * // "compliancePostureConfig": {}, * // "conditions": [], * // "confidentialNodes": {}, + * // "controlPlaneEgress": {}, * // "controlPlaneEndpointsConfig": {}, * // "costManagementConfig": {}, * // "createTime": "my_createTime", @@ -13729,6 +13985,7 @@ export namespace container_v1beta1 { * // "loggingConfig": {}, * // "loggingService": "my_loggingService", * // "maintenancePolicy": {}, + * // "managedMachineLearningDiagnosticsConfig": {}, * // "managedOpentelemetryConfig": {}, * // "master": {}, * // "masterAuth": {}, @@ -13745,6 +14002,7 @@ export namespace container_v1beta1 { * // "nodeIpv4CidrSize": 0, * // "nodePoolAutoConfig": {}, * // "nodePoolDefaults": {}, + * // "nodePoolUpgradeConcurrencyConfig": {}, * // "nodePools": [], * // "notificationConfig": {}, * // "parentProductConfig": {}, @@ -13760,6 +14018,7 @@ export namespace container_v1beta1 { * // "rollbackSafeUpgrade": {}, * // "satisfiesPzi": false, * // "satisfiesPzs": false, + * // "scheduleUpgradeConfig": {}, * // "secretManagerConfig": {}, * // "secretSyncConfig": {}, * // "securityPostureConfig": {}, @@ -16699,7 +16958,7 @@ export namespace container_v1beta1 { } /** - * Fetch upgrade information of a specific nodepool. + * Fetch upgrade information of a specific node pool. * @example * ```js * // Before running the sample: @@ -16730,7 +16989,7 @@ export namespace container_v1beta1 { * // Do the magic * const res = * await container.projects.zones.clusters.nodePools.fetchNodePoolUpgradeInfo({ - * // Required. The name (project, location, cluster, nodepool) of the nodepool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. + * // Required. The name (project, location, cluster, node pool) of the node pool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. * name: 'projects/my-project/zones/my-zone/clusters/my-cluster/nodePools/my-nodePool', * // API request version that initiates this operation. * version: 'placeholder-value', @@ -17747,6 +18006,7 @@ export namespace container_v1beta1 { * // "resourceManagerTags": {}, * // "storagePools": [], * // "tags": {}, + * // "taintConfig": {}, * // "taints": {}, * // "upgradeSettings": {}, * // "windowsNodeConfig": {}, @@ -17939,7 +18199,7 @@ export namespace container_v1beta1 { } export interface Params$Resource$Projects$Zones$Clusters$Nodepools$Fetchnodepoolupgradeinfo extends StandardParameters { /** - * Required. The name (project, location, cluster, nodepool) of the nodepool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. + * Required. The name (project, location, cluster, node pool) of the node pool to get. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x` or `projects/x/zones/x/clusters/x/nodePools/x`. */ name?: string; /** diff --git a/src/apis/containeranalysis/v1.ts b/src/apis/containeranalysis/v1.ts index 10ea82d3edb..dc2673ce066 100644 --- a/src/apis/containeranalysis/v1.ts +++ b/src/apis/containeranalysis/v1.ts @@ -124,6 +124,23 @@ export namespace containeranalysis_v1 { } } + /** + * AISkillAnalysisNote provides the metadata of an AI-based skill analysis. + */ + export interface Schema$AISkillAnalysisNote {} + /** + * AISkillAnalysisOccurrence provides the results of an AI-based skill analysis. + */ + export interface Schema$AISkillAnalysisOccurrence { + /** + * Findings produced by the analysis. + */ + findings?: Schema$Finding[]; + /** + * Name of the skill that produced this analysis. + */ + skillName?: string | null; + } /** * An alias to a repo revision. */ @@ -675,6 +692,10 @@ export namespace containeranalysis_v1 { * Artifacts produced by a build that should be uploaded upon successful completion of all build steps. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts { + /** + * Optional. A list of generic artifacts to be uploaded to Artifact Registry upon successful completion of all build steps. If any artifacts fail to be pushed, the build is marked FAILURE. + */ + genericArtifacts?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact[]; /** * Optional. A list of Go modules to be uploaded to Artifact Registry upon successful completion of all build steps. If any objects fail to be pushed, the build is marked FAILURE. */ @@ -695,6 +716,10 @@ export namespace containeranalysis_v1 { * A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the specified Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE. */ objects?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects; + /** + * Optional. A list of OCI images to be uploaded to Artifact Registry upon successful completion of all build steps. OCI images in the specified paths will be uploaded to the specified Artifact Registry repository using the builder service account's credentials. If any images fail to be pushed, the build is marked FAILURE. + */ + oci?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci[]; /** * A list of Python packages to be uploaded to Artifact Registry upon successful completion of all build steps. The build service account credentials will be used to perform the upload. If any objects fail to be pushed, the build is marked FAILURE. */ @@ -717,6 +742,19 @@ export namespace containeranalysis_v1 { */ timing?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan; } + /** + * Generic artifact to upload to Artifact Registry upon successful completion of all build steps. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact { + /** + * Required. Path to the generic artifact in the build's workspace to be uploaded to Artifact Registry. + */ + folder?: string | null; + /** + * Required. Registry path to upload the generic artifact to, in the form projects/$PROJECT/locations/$LOCATION/repositories/$REPO/packages/$PACKAGE/versions/$VERSION + */ + registryPath?: string | null; + } /** * Go module to upload to Artifact Registry upon successful completion of all build steps. A module refers to all dependencies in a go.mod file. */ @@ -788,6 +826,23 @@ export namespace containeranalysis_v1 { */ repository?: string | null; } + /** + * OCI image to upload to Artifact Registry upon successful completion of all build steps. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci { + /** + * Required. Path on the local file system where to find the container to upload. e.g. /workspace/my-image.tar + */ + file?: string | null; + /** + * Required. Registry path to upload the container to. e.g. us-east1-docker.pkg.dev/my-project/my-repo/my-image + */ + registryPath?: string | null; + /** + * Optional. Tags to apply to the uploaded image. e.g. latest, 1.0.0 + */ + tags?: string[] | null; + } /** * Python package to upload to Artifact Registry upon successful completion of all build steps. A package can encapsulate multiple objects to be uploaded to a single repository. */ @@ -1092,6 +1147,10 @@ export namespace containeranalysis_v1 { * Output only. Stores timing information for pulling this build step's builder image only. */ pullTiming?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan; + /** + * Declaration of results for this build step. + */ + results?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult[]; /** * A shell script to be executed in the step. When script is provided, the user cannot specify the entrypoint or args. */ @@ -1121,6 +1180,15 @@ export namespace containeranalysis_v1 { */ waitFor?: string[] | null; } + /** + * Results for a build step. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults { + /** + * Results for a build step. + */ + results?: {[key: string]: string} | null; + } /** * A non-fatal problem encountered during the execution of the build. */ @@ -1150,6 +1218,10 @@ export namespace containeranalysis_v1 { * Name used to push the container image to Google Container Registry, as presented to `docker push`. */ name?: string | null; + /** + * Output only. The OCI media type of the artifact. Non-OCI images, such as Docker images, will have an unspecified value. + */ + ociMediaType?: string | null; /** * Output only. Stores timing information for pushing the specified image. */ @@ -1180,11 +1252,28 @@ export namespace containeranalysis_v1 { * If set to true disable all dependency fetching (ignoring the default source as well). */ empty?: boolean | null; + /** + * Represents a generic artifact as a build dependency. + */ + genericArtifact?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency; /** * Represents a git repository as a build dependency. */ gitSource?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGitSourceDependency; } + /** + * Represents a generic artifact as a build dependency. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency { + /** + * Required. Where the artifact files should be placed on the worker. + */ + destPath?: string | null; + /** + * Required. The location to download the artifact files from. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1 + */ + resource?: string | null; + } /** * Represents a git repository as a build dependency. */ @@ -1367,6 +1456,18 @@ export namespace containeranalysis_v1 { * List of build step outputs, produced by builder images, in the order corresponding to build step indices. [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders) can produce this output by writing to `$BUILDER_OUTPUT/output`. Only the first 50KB of data is stored. Note that the `$BUILDER_OUTPUT` variable is read-only and can't be substituted. */ buildStepOutputs?: string[] | null; + /** + * Results for build steps. step_id -\> + */ + buildStepResults?: { + [ + key: string + ]: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults; + } | null; + /** + * Output only. Generic artifacts uploaded to Artifact Registry at the end of the build. + */ + genericArtifacts?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact[]; /** * Optional. Go module artifacts uploaded to Artifact Registry at the end of the build. */ @@ -1493,6 +1594,23 @@ export namespace containeranalysis_v1 { */ resolvedStorageSourceManifest?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest; } + /** + * StepResult is the declaration of a result for a build step. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult { + /** + * Optional. The content of the attestation to be generated. + */ + attestationContent?: string | null; + /** + * Optional. The type of attestation to be generated. + */ + attestationType?: string | null; + /** + * Required. The name of the result. + */ + name?: string | null; + } /** * Location of the source in an archive file in Cloud Storage. */ @@ -1544,6 +1662,35 @@ export namespace containeranalysis_v1 { */ startTime?: string | null; } + /** + * A generic artifact uploaded to Artifact Registry using the GenericArtifact directive. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact { + /** + * Output only. The hash of the whole artifact. + */ + artifactFingerprint?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes; + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; + /** + * Output only. The file hashes that make up the generic artifact. + */ + fileHashes?: { + [ + key: string + ]: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes; + } | null; + /** + * Output only. Stores timing information for pushing the specified artifact. + */ + pushTiming?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan; + /** + * Output only. URI of the uploaded artifact. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1 + */ + uri?: string | null; + } /** * A Go module artifact uploaded to Artifact Registry using the GoModule directive. */ @@ -1989,6 +2136,39 @@ export namespace containeranalysis_v1 { */ fileHash?: Schema$Hash[]; } + /** + * Finding provides details for a single finding within an AISkillAnalysisOccurrence. + */ + export interface Schema$Finding { + /** + * Category of the finding. + */ + category?: string | null; + /** + * Detailed description of the finding. + */ + description?: string | null; + /** + * Path to the file where the finding was detected. + */ + filePath?: string | null; + /** + * Unique identifier of the rule that produced this finding. + */ + ruleId?: string | null; + /** + * Severity of the finding. + */ + severity?: string | null; + /** + * Code snippet relevant to the finding. + */ + snippet?: string | null; + /** + * Title of the finding. + */ + title?: string | null; + } /** * A set of properties that uniquely identify a given Docker image. */ @@ -2104,6 +2284,10 @@ export namespace containeranalysis_v1 { * Each package found in a file should have its own layer metadata (that is, information from the origin layer of the package). */ layerDetails?: Schema$LayerDetails; + /** + * Line number in the file where the package was found. Optional field that only applies to source repository scanning. + */ + lineNumber?: number | null; } /** * Identifies the entity that executed the recipe, which is trusted to have correctly performed the operation and populated this provenance. @@ -2456,6 +2640,10 @@ export namespace containeranalysis_v1 { * A type of analysis that can be done for a resource. */ export interface Schema$Note { + /** + * A note describing an AI skill analysis. + */ + aiSkillAnalysis?: Schema$AISkillAnalysisNote; /** * A note describing an attestation role. */ @@ -2549,6 +2737,14 @@ export namespace containeranalysis_v1 { * An instance of an analysis type that has been found on a resource. */ export interface Schema$Occurrence { + /** + * The time this advisory was published by the source. + */ + advisoryPublishTime?: string | null; + /** + * Describes an AI skill analysis. + */ + aiSkillAnalysis?: Schema$AISkillAnalysisOccurrence; /** * Describes an attestation of an artifact. */ @@ -3853,6 +4049,7 @@ export namespace containeranalysis_v1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -3882,6 +4079,7 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -4174,6 +4372,7 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -4628,6 +4827,7 @@ export namespace containeranalysis_v1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -4657,6 +4857,7 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -5561,6 +5762,8 @@ export namespace containeranalysis_v1 { * requestBody: { * // request body parameters * // { + * // "advisoryPublishTime": "my_advisoryPublishTime", + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -5588,6 +5791,8 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "advisoryPublishTime": "my_advisoryPublishTime", + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -5878,6 +6083,8 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "advisoryPublishTime": "my_advisoryPublishTime", + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -6183,6 +6390,7 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -6643,6 +6851,8 @@ export namespace containeranalysis_v1 { * requestBody: { * // request body parameters * // { + * // "advisoryPublishTime": "my_advisoryPublishTime", + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -6670,6 +6880,8 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "advisoryPublishTime": "my_advisoryPublishTime", + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -7579,6 +7791,7 @@ export namespace containeranalysis_v1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -7608,6 +7821,7 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -7900,6 +8114,7 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -8354,6 +8569,7 @@ export namespace containeranalysis_v1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -8383,6 +8599,7 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -9280,6 +9497,8 @@ export namespace containeranalysis_v1 { * requestBody: { * // request body parameters * // { + * // "advisoryPublishTime": "my_advisoryPublishTime", + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -9307,6 +9526,8 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "advisoryPublishTime": "my_advisoryPublishTime", + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -9597,6 +9818,8 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "advisoryPublishTime": "my_advisoryPublishTime", + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -9899,6 +10122,7 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -10357,6 +10581,8 @@ export namespace containeranalysis_v1 { * requestBody: { * // request body parameters * // { + * // "advisoryPublishTime": "my_advisoryPublishTime", + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, @@ -10384,6 +10610,8 @@ export namespace containeranalysis_v1 { * * // Example response * // { + * // "advisoryPublishTime": "my_advisoryPublishTime", + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "compliance": {}, diff --git a/src/apis/containeranalysis/v1alpha1.ts b/src/apis/containeranalysis/v1alpha1.ts index 6c65a9441ed..f39639b7985 100644 --- a/src/apis/containeranalysis/v1alpha1.ts +++ b/src/apis/containeranalysis/v1alpha1.ts @@ -126,6 +126,23 @@ export namespace containeranalysis_v1alpha1 { } } + /** + * AISkillAnalysisNote provides the metadata of an AI-based skill analysis. + */ + export interface Schema$AISkillAnalysisNote {} + /** + * AISkillAnalysisOccurrence provides the results of an AI-based skill analysis. + */ + export interface Schema$AISkillAnalysisOccurrence { + /** + * Optional. Findings produced by the analysis. + */ + findings?: Schema$Finding[]; + /** + * Optional. Name of the skill that produced this analysis. + */ + skillName?: string | null; + } /** * Indicates which analysis completed successfully. Multiple types of analysis can be performed on a single resource. */ @@ -658,6 +675,10 @@ export namespace containeranalysis_v1alpha1 { * Artifacts produced by a build that should be uploaded upon successful completion of all build steps. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts { + /** + * Optional. A list of generic artifacts to be uploaded to Artifact Registry upon successful completion of all build steps. If any artifacts fail to be pushed, the build is marked FAILURE. + */ + genericArtifacts?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact[]; /** * Optional. A list of Go modules to be uploaded to Artifact Registry upon successful completion of all build steps. If any objects fail to be pushed, the build is marked FAILURE. */ @@ -678,6 +699,10 @@ export namespace containeranalysis_v1alpha1 { * A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the specified Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE. */ objects?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects; + /** + * Optional. A list of OCI images to be uploaded to Artifact Registry upon successful completion of all build steps. OCI images in the specified paths will be uploaded to the specified Artifact Registry repository using the builder service account's credentials. If any images fail to be pushed, the build is marked FAILURE. + */ + oci?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci[]; /** * A list of Python packages to be uploaded to Artifact Registry upon successful completion of all build steps. The build service account credentials will be used to perform the upload. If any objects fail to be pushed, the build is marked FAILURE. */ @@ -700,6 +725,19 @@ export namespace containeranalysis_v1alpha1 { */ timing?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan; } + /** + * Generic artifact to upload to Artifact Registry upon successful completion of all build steps. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact { + /** + * Required. Path to the generic artifact in the build's workspace to be uploaded to Artifact Registry. + */ + folder?: string | null; + /** + * Required. Registry path to upload the generic artifact to, in the form projects/$PROJECT/locations/$LOCATION/repositories/$REPO/packages/$PACKAGE/versions/$VERSION + */ + registryPath?: string | null; + } /** * Go module to upload to Artifact Registry upon successful completion of all build steps. A module refers to all dependencies in a go.mod file. */ @@ -771,6 +809,23 @@ export namespace containeranalysis_v1alpha1 { */ repository?: string | null; } + /** + * OCI image to upload to Artifact Registry upon successful completion of all build steps. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci { + /** + * Required. Path on the local file system where to find the container to upload. e.g. /workspace/my-image.tar + */ + file?: string | null; + /** + * Required. Registry path to upload the container to. e.g. us-east1-docker.pkg.dev/my-project/my-repo/my-image + */ + registryPath?: string | null; + /** + * Optional. Tags to apply to the uploaded image. e.g. latest, 1.0.0 + */ + tags?: string[] | null; + } /** * Python package to upload to Artifact Registry upon successful completion of all build steps. A package can encapsulate multiple objects to be uploaded to a single repository. */ @@ -1075,6 +1130,10 @@ export namespace containeranalysis_v1alpha1 { * Output only. Stores timing information for pulling this build step's builder image only. */ pullTiming?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan; + /** + * Declaration of results for this build step. + */ + results?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult[]; /** * A shell script to be executed in the step. When script is provided, the user cannot specify the entrypoint or args. */ @@ -1104,6 +1163,15 @@ export namespace containeranalysis_v1alpha1 { */ waitFor?: string[] | null; } + /** + * Results for a build step. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults { + /** + * Results for a build step. + */ + results?: {[key: string]: string} | null; + } /** * A non-fatal problem encountered during the execution of the build. */ @@ -1133,6 +1201,10 @@ export namespace containeranalysis_v1alpha1 { * Name used to push the container image to Google Container Registry, as presented to `docker push`. */ name?: string | null; + /** + * Output only. The OCI media type of the artifact. Non-OCI images, such as Docker images, will have an unspecified value. + */ + ociMediaType?: string | null; /** * Output only. Stores timing information for pushing the specified image. */ @@ -1163,11 +1235,28 @@ export namespace containeranalysis_v1alpha1 { * If set to true disable all dependency fetching (ignoring the default source as well). */ empty?: boolean | null; + /** + * Represents a generic artifact as a build dependency. + */ + genericArtifact?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency; /** * Represents a git repository as a build dependency. */ gitSource?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGitSourceDependency; } + /** + * Represents a generic artifact as a build dependency. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency { + /** + * Required. Where the artifact files should be placed on the worker. + */ + destPath?: string | null; + /** + * Required. The location to download the artifact files from. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1 + */ + resource?: string | null; + } /** * Represents a git repository as a build dependency. */ @@ -1350,6 +1439,18 @@ export namespace containeranalysis_v1alpha1 { * List of build step outputs, produced by builder images, in the order corresponding to build step indices. [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders) can produce this output by writing to `$BUILDER_OUTPUT/output`. Only the first 50KB of data is stored. Note that the `$BUILDER_OUTPUT` variable is read-only and can't be substituted. */ buildStepOutputs?: string[] | null; + /** + * Results for build steps. step_id -\> + */ + buildStepResults?: { + [ + key: string + ]: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults; + } | null; + /** + * Output only. Generic artifacts uploaded to Artifact Registry at the end of the build. + */ + genericArtifacts?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact[]; /** * Optional. Go module artifacts uploaded to Artifact Registry at the end of the build. */ @@ -1476,6 +1577,23 @@ export namespace containeranalysis_v1alpha1 { */ resolvedStorageSourceManifest?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest; } + /** + * StepResult is the declaration of a result for a build step. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult { + /** + * Optional. The content of the attestation to be generated. + */ + attestationContent?: string | null; + /** + * Optional. The type of attestation to be generated. + */ + attestationType?: string | null; + /** + * Required. The name of the result. + */ + name?: string | null; + } /** * Location of the source in an archive file in Cloud Storage. */ @@ -1527,6 +1645,35 @@ export namespace containeranalysis_v1alpha1 { */ startTime?: string | null; } + /** + * A generic artifact uploaded to Artifact Registry using the GenericArtifact directive. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact { + /** + * Output only. The hash of the whole artifact. + */ + artifactFingerprint?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes; + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; + /** + * Output only. The file hashes that make up the generic artifact. + */ + fileHashes?: { + [ + key: string + ]: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes; + } | null; + /** + * Output only. Stores timing information for pushing the specified artifact. + */ + pushTiming?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan; + /** + * Output only. URI of the uploaded artifact. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1 + */ + uri?: string | null; + } /** * A Go module artifact uploaded to Artifact Registry using the GoModule directive. */ @@ -2109,6 +2256,10 @@ export namespace containeranalysis_v1alpha1 { * Each package found in a file should have its own layer metadata (that is, information from the origin layer of the package). */ layerDetails?: Schema$LayerDetails; + /** + * Line number in the file where the package is found. Optional field that only applies to source repository scanning. + */ + lineNumber?: number | null; } /** * FileNote represents an SPDX File Information section: https://spdx.github.io/spdx-spec/4-file-information/ @@ -2164,6 +2315,39 @@ export namespace containeranalysis_v1alpha1 { */ notice?: string | null; } + /** + * Finding provides details for a single finding within an AISkillAnalysisOccurrence. + */ + export interface Schema$Finding { + /** + * Optional. Category of the finding. + */ + category?: string | null; + /** + * Optional. Detailed description of the finding. + */ + description?: string | null; + /** + * Optional. Path to the file where the finding was detected. + */ + filePath?: string | null; + /** + * Optional. Unique identifier of the rule that produced this finding. + */ + ruleId?: string | null; + /** + * Optional. Severity of the finding. + */ + severity?: string | null; + /** + * Optional. Code snippet relevant to the finding. + */ + snippet?: string | null; + /** + * Optional. Title of the finding. + */ + title?: string | null; + } /** * A set of properties that uniquely identify a given Docker image. */ @@ -2734,6 +2918,10 @@ export namespace containeranalysis_v1alpha1 { * Provides a detailed description of a `Note`. */ export interface Schema$Note { + /** + * A note describing an AI skill analysis. + */ + aiSkillAnalysis?: Schema$AISkillAnalysisNote; /** * A note describing an attestation role. */ @@ -2839,6 +3027,10 @@ export namespace containeranalysis_v1alpha1 { * `Occurrence` includes information about analysis occurrences for an image. */ export interface Schema$Occurrence { + /** + * This represents an AI skill analysis occurrence + */ + aiSkillAnalysis?: Schema$AISkillAnalysisOccurrence; /** * Describes an attestation of an artifact. */ @@ -4183,6 +4375,7 @@ export namespace containeranalysis_v1alpha1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "buildType": {}, @@ -4215,6 +4408,7 @@ export namespace containeranalysis_v1alpha1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "buildType": {}, @@ -4510,6 +4704,7 @@ export namespace containeranalysis_v1alpha1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "buildType": {}, @@ -4966,6 +5161,7 @@ export namespace containeranalysis_v1alpha1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "buildType": {}, @@ -4998,6 +5194,7 @@ export namespace containeranalysis_v1alpha1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "buildType": {}, @@ -5741,6 +5938,7 @@ export namespace containeranalysis_v1alpha1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "buildDetails": {}, * // "compliance": {}, @@ -5773,6 +5971,7 @@ export namespace containeranalysis_v1alpha1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "buildDetails": {}, * // "compliance": {}, @@ -6068,6 +6267,7 @@ export namespace containeranalysis_v1alpha1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "buildDetails": {}, * // "compliance": {}, @@ -6375,6 +6575,7 @@ export namespace containeranalysis_v1alpha1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "buildType": {}, @@ -6841,6 +7042,7 @@ export namespace containeranalysis_v1alpha1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "buildDetails": {}, * // "compliance": {}, @@ -6873,6 +7075,7 @@ export namespace containeranalysis_v1alpha1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "buildDetails": {}, * // "compliance": {}, @@ -8285,6 +8488,7 @@ export namespace containeranalysis_v1alpha1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "buildType": {}, @@ -8317,6 +8521,7 @@ export namespace containeranalysis_v1alpha1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "buildType": {}, @@ -8612,6 +8817,7 @@ export namespace containeranalysis_v1alpha1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "buildType": {}, @@ -9068,6 +9274,7 @@ export namespace containeranalysis_v1alpha1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "buildType": {}, @@ -9100,6 +9307,7 @@ export namespace containeranalysis_v1alpha1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "buildType": {}, diff --git a/src/apis/containeranalysis/v1beta1.ts b/src/apis/containeranalysis/v1beta1.ts index 0a6135546ed..c844814a906 100644 --- a/src/apis/containeranalysis/v1beta1.ts +++ b/src/apis/containeranalysis/v1beta1.ts @@ -124,6 +124,23 @@ export namespace containeranalysis_v1beta1 { } } + /** + * AISkillAnalysisNote provides the metadata of an AI-based skill analysis. + */ + export interface Schema$AISkillAnalysisNote {} + /** + * AISkillAnalysisOccurrence provides the results of an AI-based skill analysis. + */ + export interface Schema$AISkillAnalysisOccurrence { + /** + * Findings produced by the analysis. + */ + findings?: Schema$Finding[]; + /** + * Name of the skill that produced this analysis. + */ + skillName?: string | null; + } /** * An alias to a repo revision. */ @@ -572,6 +589,10 @@ export namespace containeranalysis_v1beta1 { * Artifacts produced by a build that should be uploaded upon successful completion of all build steps. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts { + /** + * Optional. A list of generic artifacts to be uploaded to Artifact Registry upon successful completion of all build steps. If any artifacts fail to be pushed, the build is marked FAILURE. + */ + genericArtifacts?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact[]; /** * Optional. A list of Go modules to be uploaded to Artifact Registry upon successful completion of all build steps. If any objects fail to be pushed, the build is marked FAILURE. */ @@ -592,6 +613,10 @@ export namespace containeranalysis_v1beta1 { * A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the specified Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE. */ objects?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects; + /** + * Optional. A list of OCI images to be uploaded to Artifact Registry upon successful completion of all build steps. OCI images in the specified paths will be uploaded to the specified Artifact Registry repository using the builder service account's credentials. If any images fail to be pushed, the build is marked FAILURE. + */ + oci?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci[]; /** * A list of Python packages to be uploaded to Artifact Registry upon successful completion of all build steps. The build service account credentials will be used to perform the upload. If any objects fail to be pushed, the build is marked FAILURE. */ @@ -614,6 +639,19 @@ export namespace containeranalysis_v1beta1 { */ timing?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan; } + /** + * Generic artifact to upload to Artifact Registry upon successful completion of all build steps. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsGenericArtifact { + /** + * Required. Path to the generic artifact in the build's workspace to be uploaded to Artifact Registry. + */ + folder?: string | null; + /** + * Required. Registry path to upload the generic artifact to, in the form projects/$PROJECT/locations/$LOCATION/repositories/$REPO/packages/$PACKAGE/versions/$VERSION + */ + registryPath?: string | null; + } /** * Go module to upload to Artifact Registry upon successful completion of all build steps. A module refers to all dependencies in a go.mod file. */ @@ -685,6 +723,23 @@ export namespace containeranalysis_v1beta1 { */ repository?: string | null; } + /** + * OCI image to upload to Artifact Registry upon successful completion of all build steps. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsOci { + /** + * Required. Path on the local file system where to find the container to upload. e.g. /workspace/my-image.tar + */ + file?: string | null; + /** + * Required. Registry path to upload the container to. e.g. us-east1-docker.pkg.dev/my-project/my-repo/my-image + */ + registryPath?: string | null; + /** + * Optional. Tags to apply to the uploaded image. e.g. latest, 1.0.0 + */ + tags?: string[] | null; + } /** * Python package to upload to Artifact Registry upon successful completion of all build steps. A package can encapsulate multiple objects to be uploaded to a single repository. */ @@ -989,6 +1044,10 @@ export namespace containeranalysis_v1beta1 { * Output only. Stores timing information for pulling this build step's builder image only. */ pullTiming?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan; + /** + * Declaration of results for this build step. + */ + results?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult[]; /** * A shell script to be executed in the step. When script is provided, the user cannot specify the entrypoint or args. */ @@ -1018,6 +1077,15 @@ export namespace containeranalysis_v1beta1 { */ waitFor?: string[] | null; } + /** + * Results for a build step. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults { + /** + * Results for a build step. + */ + results?: {[key: string]: string} | null; + } /** * A non-fatal problem encountered during the execution of the build. */ @@ -1047,6 +1115,10 @@ export namespace containeranalysis_v1beta1 { * Name used to push the container image to Google Container Registry, as presented to `docker push`. */ name?: string | null; + /** + * Output only. The OCI media type of the artifact. Non-OCI images, such as Docker images, will have an unspecified value. + */ + ociMediaType?: string | null; /** * Output only. Stores timing information for pushing the specified image. */ @@ -1077,11 +1149,28 @@ export namespace containeranalysis_v1beta1 { * If set to true disable all dependency fetching (ignoring the default source as well). */ empty?: boolean | null; + /** + * Represents a generic artifact as a build dependency. + */ + genericArtifact?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency; /** * Represents a git repository as a build dependency. */ gitSource?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGitSourceDependency; } + /** + * Represents a generic artifact as a build dependency. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1DependencyGenericArtifactDependency { + /** + * Required. Where the artifact files should be placed on the worker. + */ + destPath?: string | null; + /** + * Required. The location to download the artifact files from. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1 + */ + resource?: string | null; + } /** * Represents a git repository as a build dependency. */ @@ -1264,6 +1353,18 @@ export namespace containeranalysis_v1beta1 { * List of build step outputs, produced by builder images, in the order corresponding to build step indices. [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders) can produce this output by writing to `$BUILDER_OUTPUT/output`. Only the first 50KB of data is stored. Note that the `$BUILDER_OUTPUT` variable is read-only and can't be substituted. */ buildStepOutputs?: string[] | null; + /** + * Results for build steps. step_id -\> + */ + buildStepResults?: { + [ + key: string + ]: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStepResults; + } | null; + /** + * Output only. Generic artifacts uploaded to Artifact Registry at the end of the build. + */ + genericArtifacts?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact[]; /** * Optional. Go module artifacts uploaded to Artifact Registry at the end of the build. */ @@ -1390,6 +1491,23 @@ export namespace containeranalysis_v1beta1 { */ resolvedStorageSourceManifest?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest; } + /** + * StepResult is the declaration of a result for a build step. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1StepResult { + /** + * Optional. The content of the attestation to be generated. + */ + attestationContent?: string | null; + /** + * Optional. The type of attestation to be generated. + */ + attestationType?: string | null; + /** + * Required. The name of the result. + */ + name?: string | null; + } /** * Location of the source in an archive file in Cloud Storage. */ @@ -1441,6 +1559,35 @@ export namespace containeranalysis_v1beta1 { */ startTime?: string | null; } + /** + * A generic artifact uploaded to Artifact Registry using the GenericArtifact directive. + */ + export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGenericArtifact { + /** + * Output only. The hash of the whole artifact. + */ + artifactFingerprint?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes; + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; + /** + * Output only. The file hashes that make up the generic artifact. + */ + fileHashes?: { + [ + key: string + ]: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes; + } | null; + /** + * Output only. Stores timing information for pushing the specified artifact. + */ + pushTiming?: Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan; + /** + * Output only. URI of the uploaded artifact. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1 + */ + uri?: string | null; + } /** * A Go module artifact uploaded to Artifact Registry using the GoModule directive. */ @@ -2032,6 +2179,39 @@ export namespace containeranalysis_v1beta1 { */ notice?: string | null; } + /** + * Finding provides details for a single finding within an AISkillAnalysisOccurrence. + */ + export interface Schema$Finding { + /** + * Category of the finding. + */ + category?: string | null; + /** + * Detailed description of the finding. + */ + description?: string | null; + /** + * Path to the file where the finding was detected. + */ + filePath?: string | null; + /** + * Unique identifier of the rule that produced this finding. + */ + ruleId?: string | null; + /** + * Severity of the finding. + */ + severity?: string | null; + /** + * Code snippet relevant to the finding. + */ + snippet?: string | null; + /** + * Title of the finding. + */ + title?: string | null; + } /** * A set of properties that uniquely identify a given Docker image. */ @@ -2523,6 +2703,10 @@ export namespace containeranalysis_v1beta1 { * A type of analysis that can be done for a resource. */ export interface Schema$Note { + /** + * A note describing an AI Skill analysis. + */ + aiSkillAnalysis?: Schema$AISkillAnalysisNote; /** * A note describing an attestation role. */ @@ -2624,6 +2808,10 @@ export namespace containeranalysis_v1beta1 { * An instance of an analysis type that has been found on a resource. */ export interface Schema$Occurrence { + /** + * Describes a specific AI Skill Analysis occurrence. + */ + aiSkillAnalysis?: Schema$AISkillAnalysisOccurrence; /** * Describes an attestation of an artifact. */ @@ -3833,6 +4021,7 @@ export namespace containeranalysis_v1beta1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "build": {}, @@ -3864,6 +4053,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "build": {}, @@ -4158,6 +4348,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "build": {}, @@ -4614,6 +4805,7 @@ export namespace containeranalysis_v1beta1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "build": {}, @@ -4645,6 +4837,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "build": {}, @@ -5550,6 +5743,7 @@ export namespace containeranalysis_v1beta1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "createTime": "my_createTime", @@ -5579,6 +5773,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "createTime": "my_createTime", @@ -5871,6 +6066,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "createTime": "my_createTime", @@ -6178,6 +6374,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "build": {}, @@ -6643,6 +6840,7 @@ export namespace containeranalysis_v1beta1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "createTime": "my_createTime", @@ -6672,6 +6870,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "createTime": "my_createTime", @@ -7745,6 +7944,7 @@ export namespace containeranalysis_v1beta1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "build": {}, @@ -7776,6 +7976,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "build": {}, @@ -8070,6 +8271,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "build": {}, @@ -8526,6 +8728,7 @@ export namespace containeranalysis_v1beta1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "build": {}, @@ -8557,6 +8760,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "build": {}, @@ -9455,6 +9659,7 @@ export namespace containeranalysis_v1beta1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "createTime": "my_createTime", @@ -9484,6 +9689,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "createTime": "my_createTime", @@ -9776,6 +9982,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "createTime": "my_createTime", @@ -10080,6 +10287,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestationAuthority": {}, * // "baseImage": {}, * // "build": {}, @@ -10543,6 +10751,7 @@ export namespace containeranalysis_v1beta1 { * requestBody: { * // request body parameters * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "createTime": "my_createTime", @@ -10572,6 +10781,7 @@ export namespace containeranalysis_v1beta1 { * * // Example response * // { + * // "aiSkillAnalysis": {}, * // "attestation": {}, * // "build": {}, * // "createTime": "my_createTime", diff --git a/src/apis/content/v2.1.ts b/src/apis/content/v2.1.ts index e8e724f48c0..959ac2b014b 100644 --- a/src/apis/content/v2.1.ts +++ b/src/apis/content/v2.1.ts @@ -19067,7 +19067,7 @@ export namespace content_v2_1 { } /** - * Start an action. The action can be requested by merchants in third-party application. Before merchants can request the action, the third-party application needs to show them action specific content and display a user input form. You can request access using [Trigger action allowlist form](https://docs.google.com/forms/d/e/1FAIpQLSfeV_sBW9MBQv9BMTV6JZ1g11PGHLdHsrefca-9h0LmpU7CUg/viewform?usp=sharing). The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user. + * Start an action. The action can be requested by merchants in third-party application. Before merchants can request the action, the third-party application needs to show them action specific content and display a user input form. You can submit an allowlist request in the [Shopping API Support Form](https://support.google.com/merchants/contact/shopping_api_support_form) under "What is the issue/question?" to get access to this feature. The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user. * @example * ```js * // Before running the sample: diff --git a/src/apis/css/v1.ts b/src/apis/css/v1.ts index fcc10918160..409b018dc82 100644 --- a/src/apis/css/v1.ts +++ b/src/apis/css/v1.ts @@ -330,6 +330,14 @@ export namespace css_v1 { * The material of which the item is made. */ material?: string | null; + /** + * Maximum rating score of the product. Required if `rating` is provided. This field is for an upcoming feature and is not yet used. + */ + maxRating?: string | null; + /** + * Minimum rating score of the product. Required if `rating` is provided. This field is for an upcoming feature and is not yet used. + */ + minRating?: string | null; /** * Manufacturer Part Number ([MPN](https://support.google.com/merchants/answer/188494#mpn)) of the item. */ @@ -378,6 +386,14 @@ export namespace css_v1 { * The width of the product in the units provided. The value must be between 0 (exclusive) and 3000 (inclusive). */ productWidth?: Schema$ProductDimension; + /** + * Average rating score of the product. The value must be within the range of [`min_rating`, `max_rating`], inclusive. When displayed on the product page, this rating is normalized to a scale of [1, 5] with one decimal place. If provided, `review_count`, `min_rating`, and `max_rating` are also required. This field is for an upcoming feature and is not yet used. + */ + rating?: number | null; + /** + * Number of reviews of the product. Required if `rating` is provided. This field is for an upcoming feature and is not yet used. + */ + reviewCount?: string | null; /** * Size of the item. Only one value is allowed. For variants with different sizes, insert a separate product for each size with the same `itemGroupId` value (see [https://support.google.com/merchants/answer/6324492](size definition)). */ @@ -387,7 +403,7 @@ export namespace css_v1 { */ sizeSystem?: string | null; /** - * The cut of the item. It can be used to represent combined size types for apparel items. Maximum two of size types can be provided (see [https://support.google.com/merchants/answer/6324497](size type)). + * The cut of the item. It can be used to represent combined size types for apparel items. Maximum two of size types can be provided (see [size type](https://support.google.com/merchants/answer/6324497). */ sizeTypes?: string[] | null; /** diff --git a/src/apis/dataflow/v1b3.ts b/src/apis/dataflow/v1b3.ts index 3d109ec01c9..8c83eaf6fa8 100644 --- a/src/apis/dataflow/v1b3.ts +++ b/src/apis/dataflow/v1b3.ts @@ -1082,7 +1082,7 @@ export namespace dataflow_v1b3 { */ kmsKeyName?: string | null; /** - * The machine type to use for launching the job. The default is n1-standard-1. + * The machine type to use for launching the job. If not set, Dataflow will select a default machine type. */ launcherMachineType?: string | null; /** @@ -2618,13 +2618,17 @@ export namespace dataflow_v1b3 { */ export interface Schema$RuntimeUpdatableParams { /** - * Optional. Deprecated: Use `autoscaling_tier` instead. The backlog threshold duration in seconds for autoscaling. Value must be non-negative. + * Optional. Deprecated: Use `latency_tier` instead. The backlog threshold duration in seconds for autoscaling. Value must be non-negative. */ acceptableBacklogDuration?: string | null; /** - * Optional. The backlog threshold tier for autoscaling. Value must be one of "low-latency", "medium-latency", or "high-latency". + * Optional. Deprecated: Use `latency_tier` instead. The backlog threshold tier for autoscaling. Value must be one of "low-latency", "medium-latency", or "high-latency". */ autoscalingTier?: string | null; + /** + * Optional. The backlog threshold tier for autoscaling. Value must be one of "low-latency", "medium-latency", or "high-latency". + */ + latencyTier?: string | null; /** * The maximum number of workers to cap autoscaling at. This field is currently only supported for Streaming Engine jobs. */ diff --git a/src/apis/dataform/v1.ts b/src/apis/dataform/v1.ts index 84238edeab5..6b2f868757c 100644 --- a/src/apis/dataform/v1.ts +++ b/src/apis/dataform/v1.ts @@ -628,6 +628,24 @@ export namespace dataform_v1 { * Represents the delete file operation. */ export interface Schema$DeleteFile {} + /** + * `DeleteFolderTree` request message. + */ + export interface Schema$DeleteFolderTreeRequest { + /** + * Optional. If `false` (default): The operation will fail if any Repository within the folder hierarchy has associated Release Configs or Workflow Configs. If `true`: The operation will attempt to delete everything, including any Release Configs and Workflow Configs linked to Repositories within the folder hierarchy. This permanently removes schedules and resources. + */ + force?: boolean | null; + } + /** + * `DeleteTeamFolderTree` request message. + */ + export interface Schema$DeleteTeamFolderTreeRequest { + /** + * Optional. If `false` (default): The operation will fail if any Repository within the folder hierarchy has associated Release Configs or Workflow Configs. If `true`: The operation will attempt to delete everything, including any Release Configs and Workflow Configs linked to Repositories within the folder hierarchy. This permanently removes schedules and resources. + */ + force?: boolean | null; + } /** * Represents a single entry in a directory. */ @@ -640,6 +658,10 @@ export namespace dataform_v1 { * A file in the directory. */ file?: string | null; + /** + * Entry with metadata. + */ + metadata?: Schema$FilesystemEntryMetadata; } /** * Client-facing representation of a directory entry in search results. @@ -763,6 +785,69 @@ export namespace dataform_v1 { */ path?: string | null; } + /** + * Represents metadata for a single entry in a filesystem. + */ + export interface Schema$FilesystemEntryMetadata { + /** + * Output only. Provides the size of the entry in bytes. For directories, this will be 0. + */ + sizeBytes?: string | null; + /** + * Output only. Represents the time of the last modification of the entry. + */ + updateTime?: string | null; + } + /** + * Represents a Dataform Folder. This is a resource that is used to organize Files and other Folders and provide hierarchical access controls. + */ + export interface Schema$Folder { + /** + * Optional. The containing Folder resource name. This should take the format: projects/{project\}/locations/{location\}/folders/{folder\}, projects/{project\}/locations/{location\}/teamFolders/{teamFolder\}, or just "" if this is a root Folder. This field can only be updated through MoveFolder. + */ + containingFolder?: string | null; + /** + * Output only. The timestamp of when the Folder was created. + */ + createTime?: string | null; + /** + * Output only. The IAM principal identifier of the creator of the Folder. + */ + creatorIamPrincipal?: string | null; + /** + * Required. The Folder's user-friendly name. + */ + displayName?: string | null; + /** + * Output only. All the metadata information that is used internally to serve the resource. For example: timestamps, flags, status fields, etc. The format of this field is a JSON string. + */ + internalMetadata?: string | null; + /** + * Identifier. The Folder's name. + */ + name?: string | null; + /** + * Output only. The resource name of the TeamFolder that this Folder is associated with. This should take the format: projects/{project\}/locations/{location\}/teamFolders/{teamFolder\}. If this is not set, the Folder is not associated with a TeamFolder and is a UserFolder. + */ + teamFolderName?: string | null; + /** + * Output only. The timestamp of when the Folder was last updated. + */ + updateTime?: string | null; + } + /** + * Represents a single content entry. + */ + export interface Schema$FolderContentsEntry { + /** + * A subfolder. + */ + folder?: Schema$Folder; + /** + * A repository. + */ + repository?: Schema$Repository; + } /** * Controls Git remote configuration for a repository. */ @@ -772,7 +857,7 @@ export namespace dataform_v1 { */ authenticationTokenSecretVersion?: string | null; /** - * Required. The Git remote's default branch name. + * Required. The Git remote's default branch name. If not set, `main` will be used and stored for the repository. */ defaultBranch?: string | null; /** @@ -1118,6 +1203,24 @@ export namespace dataform_v1 { * `MoveFile` response message. */ export interface Schema$MoveFileResponse {} + /** + * `MoveFolder` request message. + */ + export interface Schema$MoveFolderRequest { + /** + * Optional. The name of the Folder, TeamFolder, or root location to move the Folder to. Can be in the format of: "" to move into the root User folder, `projects/x/locations/x/folders/x`, `projects/x/locations/x/teamFolders/x` + */ + destinationContainingFolder?: string | null; + } + /** + * `MoveRepository` request message. + */ + export interface Schema$MoveRepositoryRequest { + /** + * Optional. The name of the Folder, TeamFolder, or root location to move the repository to. Can be in the format of: "" to move into the root User folder, `projects/x/locations/x/folders/x`, `projects/x/locations/x/teamFolders/x` + */ + destinationContainingFolder?: string | null; + } /** * Represents a notebook. */ @@ -1351,6 +1454,19 @@ export namespace dataform_v1 { */ nextPageToken?: string | null; } + /** + * `QueryFolderContents` response message. + */ + export interface Schema$QueryFolderContentsResponse { + /** + * List of entries in the folder. + */ + entries?: Schema$FolderContentsEntry[]; + /** + * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + } /** * `QueryRepositoryDirectoryContents` response message. */ @@ -1364,6 +1480,32 @@ export namespace dataform_v1 { */ nextPageToken?: string | null; } + /** + * `QueryTeamFolderContents` response message. + */ + export interface Schema$QueryTeamFolderContentsResponse { + /** + * List of entries in the TeamFolder. + */ + entries?: Schema$TeamFolderContentsEntry[]; + /** + * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + } + /** + * `QueryUserRootContents` response message. + */ + export interface Schema$QueryUserRootContentsResponse { + /** + * List of entries in the folder. + */ + entries?: Schema$RootContentsEntry[]; + /** + * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + } /** * `QueryWorkflowInvocationActions` response message. */ @@ -1560,6 +1702,10 @@ export namespace dataform_v1 { * Represents a Dataform Git repository. */ export interface Schema$Repository { + /** + * Optional. The name of the containing folder of the repository. The field is immutable and it can be modified via a MoveRepository operation. Format: `projects/x/locations/x/folders/x`. or `projects/x/locations/x/teamFolders/x`. + */ + containingFolder?: string | null; /** * Output only. The timestamp of when the repository was created. */ @@ -1604,6 +1750,10 @@ export namespace dataform_v1 { * Optional. Input only. If set to true, the authenticated user will be granted the roles/dataform.admin role on the created repository. */ setAuthenticatedUserAdmin?: boolean | null; + /** + * Output only. The resource name of the TeamFolder that this Repository is associated with. This should take the format: projects/{project\}/locations/{location\}/teamFolders/{teamFolder\}. If this is not set, the Repository is not associated with a TeamFolder. + */ + teamFolderName?: string | null; /** * Optional. If set, fields of `workspace_compilation_overrides` override the default compilation settings that are specified in dataform.json when creating workspace-scoped compilation results. See documentation for `WorkspaceCompilationOverrides` for more information. */ @@ -1626,6 +1776,19 @@ export namespace dataform_v1 { * `ResetWorkspaceChanges` response message. */ export interface Schema$ResetWorkspaceChangesResponse {} + /** + * Represents a single content entry. + */ + export interface Schema$RootContentsEntry { + /** + * A subfolder. + */ + folder?: Schema$Folder; + /** + * A repository. + */ + repository?: Schema$Repository; + } /** * A record of an attempt to create a workflow invocation for this workflow config. */ @@ -1686,6 +1849,19 @@ export namespace dataform_v1 { */ file?: Schema$FileSearchResult; } + /** + * `SearchTeamFolders` response message. + */ + export interface Schema$SearchTeamFoldersResponse { + /** + * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * List of TeamFolders that match the search query. + */ + results?: Schema$TeamFolderSearchResult[]; + } /** * Request message for `SetIamPolicy` method. */ @@ -1763,6 +1939,57 @@ export namespace dataform_v1 { */ schema?: string | null; } + /** + * Represents a Dataform TeamFolder. This is a resource that sits at the project level and is used to organize Repositories and Folders with hierarchical access controls. They provide a team context and stricter access controls. + */ + export interface Schema$TeamFolder { + /** + * Output only. The timestamp of when the TeamFolder was created. + */ + createTime?: string | null; + /** + * Output only. The IAM principal identifier of the creator of the TeamFolder. + */ + creatorIamPrincipal?: string | null; + /** + * Required. The TeamFolder's user-friendly name. + */ + displayName?: string | null; + /** + * Output only. All the metadata information that is used internally to serve the resource. For example: timestamps, flags, status fields, etc. The format of this field is a JSON string. + */ + internalMetadata?: string | null; + /** + * Identifier. The TeamFolder's name. + */ + name?: string | null; + /** + * Output only. The timestamp of when the TeamFolder was last updated. + */ + updateTime?: string | null; + } + /** + * Represents a single content entry. + */ + export interface Schema$TeamFolderContentsEntry { + /** + * A subfolder. + */ + folder?: Schema$Folder; + /** + * A repository. + */ + repository?: Schema$Repository; + } + /** + * Represents a single content entry. + */ + export interface Schema$TeamFolderSearchResult { + /** + * A TeamFolder resource that is in the project / location. + */ + teamFolder?: Schema$TeamFolder; + } /** * Request message for `TestIamPermissions` method. */ @@ -1937,6 +2164,10 @@ export namespace dataform_v1 { * Output only. A data encryption state of a Git repository if this Workspace is protected by a KMS key. */ dataEncryptionState?: Schema$DataEncryptionState; + /** + * Optional. If set to true, workspaces will not be moved if its linked Repository is moved. Instead, it will be deleted. + */ + disableMoves?: boolean | null; /** * Output only. All the metadata information that is used internally to serve the resource. For example: timestamps, flags, status fields, etc. The format of this field is a JSON string. */ @@ -2304,7 +2535,7 @@ export namespace dataform_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2455,7 +2686,7 @@ export namespace dataform_v1 { } /** - * Update default config for a given project and location. **Note:** *This method does not fully implement [AIP/134](https://google.aip.dev/134). The wildcard entry (\*) is treated as a bad request, and when the `field_mask` is omitted, the request is treated as a full update on all modifiable fields.* + * Returns the contents of a caller's root folder in a given location. The root folder contains all resources that are created by the user and not contained in any other folder. * @example * ```js * // Before running the sample: @@ -2487,29 +2718,24 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.updateConfig({ - * // Identifier. The config name. - * name: 'projects/my-project/locations/my-location/config', - * // Optional. Specifies the fields to be updated in the config. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "defaultKmsKeyName": "my_defaultKmsKeyName", - * // "internalMetadata": "my_internalMetadata", - * // "name": "my_name" - * // } - * }, + * const res = await dataform.projects.locations.queryUserRootContents({ + * // Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` + * filter: 'placeholder-value', + * // Required. Location of the user root folder to list contents for. Format: projects/x/locations/x + * location: 'projects/my-project/locations/my-location', + * // Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), created_at, last_modified_at. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` + * orderBy: 'placeholder-value', + * // Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `QueryUserRootContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryUserRootFolderContents`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "defaultKmsKeyName": "my_defaultKmsKeyName", - * // "internalMetadata": "my_internalMetadata", - * // "name": "my_name" + * // "entries": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -2525,53 +2751,57 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updateConfig( - params: Params$Resource$Projects$Locations$Updateconfig, + queryUserRootContents( + params: Params$Resource$Projects$Locations$Queryuserrootcontents, options: StreamMethodOptions ): Promise>; - updateConfig( - params?: Params$Resource$Projects$Locations$Updateconfig, + queryUserRootContents( + params?: Params$Resource$Projects$Locations$Queryuserrootcontents, options?: MethodOptions - ): Promise>; - updateConfig( - params: Params$Resource$Projects$Locations$Updateconfig, + ): Promise>; + queryUserRootContents( + params: Params$Resource$Projects$Locations$Queryuserrootcontents, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updateConfig( - params: Params$Resource$Projects$Locations$Updateconfig, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + queryUserRootContents( + params: Params$Resource$Projects$Locations$Queryuserrootcontents, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - updateConfig( - params: Params$Resource$Projects$Locations$Updateconfig, - callback: BodyResponseCallback + queryUserRootContents( + params: Params$Resource$Projects$Locations$Queryuserrootcontents, + callback: BodyResponseCallback ): void; - updateConfig(callback: BodyResponseCallback): void; - updateConfig( + queryUserRootContents( + callback: BodyResponseCallback + ): void; + queryUserRootContents( paramsOrCallback?: - | Params$Resource$Projects$Locations$Updateconfig - | BodyResponseCallback + | Params$Resource$Projects$Locations$Queryuserrootcontents + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Updateconfig; + {}) as Params$Resource$Projects$Locations$Queryuserrootcontents; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Updateconfig; + params = {} as Params$Resource$Projects$Locations$Queryuserrootcontents; options = {}; } @@ -2584,86 +2814,34 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1/{+location}:queryUserRootContents').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['location'], + pathParams: ['location'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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$Getconfig extends StandardParameters { - /** - * Required. The config name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$List extends StandardParameters { - /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. - */ - extraLocationTypes?: string[]; - /** - * 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 interface Params$Resource$Projects$Locations$Updateconfig extends StandardParameters { - /** - * Identifier. The config name. - */ - name?: string; - /** - * Optional. Specifies the fields to be updated in the config. - */ - updateMask?: string; /** - * Request body metadata - */ - requestBody?: Schema$Config; - } - - export class Resource$Projects$Locations$Folders { - 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. + * Update default config for a given project and location. **Note:** *This method does not fully implement [AIP/134](https://google.aip.dev/134). The wildcard entry (\*) is treated as a bad request, and when the `field_mask` is omitted, the request is treated as a full update on all modifiable fields.* * @example * ```js * // Before running the sample: @@ -2695,19 +2873,29 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.folders.getIamPolicy({ - * // 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': 'placeholder-value', - * // 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: 'projects/my-project/locations/my-location/folders/my-folder', + * const res = await dataform.projects.locations.updateConfig({ + * // Identifier. The config name. + * name: 'projects/my-project/locations/my-location/config', + * // Optional. Specifies the fields to be updated in the config. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "defaultKmsKeyName": "my_defaultKmsKeyName", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "defaultKmsKeyName": "my_defaultKmsKeyName", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name" * // } * } * @@ -2723,53 +2911,53 @@ export namespace dataform_v1 { * @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$Folders$Getiampolicy, + updateConfig( + params: Params$Resource$Projects$Locations$Updateconfig, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Folders$Getiampolicy, + updateConfig( + params?: Params$Resource$Projects$Locations$Updateconfig, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Folders$Getiampolicy, + ): Promise>; + updateConfig( + params: Params$Resource$Projects$Locations$Updateconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Folders$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + updateConfig( + params: Params$Resource$Projects$Locations$Updateconfig, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Folders$Getiampolicy, - callback: BodyResponseCallback + updateConfig( + params: Params$Resource$Projects$Locations$Updateconfig, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + updateConfig(callback: BodyResponseCallback): void; + updateConfig( paramsOrCallback?: - | Params$Resource$Projects$Locations$Folders$Getiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Updateconfig + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Folders$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Updateconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Folders$Getiampolicy; + params = {} as Params$Resource$Projects$Locations$Updateconfig; options = {}; } @@ -2782,32 +2970,108 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Get extends StandardParameters { /** - * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * Resource name for the location. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Getconfig extends StandardParameters { + /** + * Required. The config name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$List extends StandardParameters { + /** + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + */ + extraLocationTypes?: string[]; + /** + * 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 interface Params$Resource$Projects$Locations$Queryuserrootcontents extends StandardParameters { + /** + * Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` + */ + filter?: string; + /** + * Required. Location of the user root folder to list contents for. Format: projects/x/locations/x + */ + location?: string; + /** + * Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), created_at, last_modified_at. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` + */ + orderBy?: string; + /** + * Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `QueryUserRootContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryUserRootFolderContents`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + } + export interface Params$Resource$Projects$Locations$Updateconfig extends StandardParameters { + /** + * Identifier. The config name. + */ + name?: string; + /** + * Optional. Specifies the fields to be updated in the config. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Config; + } + + export class Resource$Projects$Locations$Folders { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new Folder in a given project and location. * @example * ```js * // Before running the sample: @@ -2839,15 +3103,22 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.folders.setIamPolicy({ - * // 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: 'projects/my-project/locations/my-location/folders/my-folder', + * const res = await dataform.projects.locations.folders.create({ + * // Required. The location in which to create the Folder. Must be in the format `projects/x/locations/x`. + * parent: 'projects/my-project/locations/my-location', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "policy": {} + * // "containingFolder": "my_containingFolder", + * // "createTime": "my_createTime", + * // "creatorIamPrincipal": "my_creatorIamPrincipal", + * // "displayName": "my_displayName", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "teamFolderName": "my_teamFolderName", + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -2855,9 +3126,14 @@ export namespace dataform_v1 { * * // Example response * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "containingFolder": "my_containingFolder", + * // "createTime": "my_createTime", + * // "creatorIamPrincipal": "my_creatorIamPrincipal", + * // "displayName": "my_displayName", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "teamFolderName": "my_teamFolderName", + * // "updateTime": "my_updateTime" * // } * } * @@ -2873,53 +3149,53 @@ export namespace dataform_v1 { * @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$Folders$Setiampolicy, + create( + params: Params$Resource$Projects$Locations$Folders$Create, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Folders$Setiampolicy, + create( + params?: Params$Resource$Projects$Locations$Folders$Create, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Folders$Setiampolicy, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Folders$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Folders$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Folders$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Folders$Setiampolicy, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Folders$Create, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Folders$Setiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Folders$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Folders$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Folders$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Folders$Setiampolicy; + params = {} as Params$Resource$Projects$Locations$Folders$Create; options = {}; } @@ -2932,7 +3208,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( + url: (rootUrl + '/v1/{+parent}/folders').replace( /([^:]\/)\/+/g, '$1' ), @@ -2942,22 +3218,22 @@ export namespace dataform_v1 { options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Deletes a single Folder. * @example * ```js * // Before running the sample: @@ -2989,24 +3265,14 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.folders.testIamPermissions({ - * // 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: 'projects/my-project/locations/my-location/folders/my-folder', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * const res = await dataform.projects.locations.folders.delete({ + * // Required. The Folder's name. + * name: 'projects/my-project/locations/my-location/folders/my-folder', * }); * console.log(res.data); * * // Example response - * // { - * // "permissions": [] - * // } + * // {} * } * * main().catch(e => { @@ -3021,58 +3287,53 @@ export namespace dataform_v1 { * @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$Folders$Testiampermissions, + delete( + params: Params$Resource$Projects$Locations$Folders$Delete, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Folders$Testiampermissions, + delete( + params?: Params$Resource$Projects$Locations$Folders$Delete, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Projects$Locations$Folders$Testiampermissions, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Folders$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Folders$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Folders$Testiampermissions, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Folders$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Folders$Delete, + callback: BodyResponseCallback ): void; - testIamPermissions( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Folders$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Folders$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Folders$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Folders$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Folders$Testiampermissions; + params = {} as Params$Resource$Projects$Locations$Folders$Delete; options = {}; } @@ -3085,72 +3346,29 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Folders$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$Folders$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$Folders$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$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`. + * Deletes a Folder with its contents (Folders, Repositories, Workspaces, ReleaseConfigs, and WorkflowConfigs). * @example * ```js * // Before running the sample: @@ -3182,20 +3400,28 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/operations/my-operation', + * const res = await dataform.projects.locations.folders.deleteTree({ + * // Required. The Folder's name. Format: projects/{project\}/locations/{location\}/folders/{folder\} + * name: 'projects/my-project/locations/my-location/folders/my-folder', * * // Request body metadata * requestBody: { * // request body parameters - * // {} + * // { + * // "force": false + * // } * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -3210,53 +3436,53 @@ export namespace dataform_v1 { * @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, + deleteTree( + params: Params$Resource$Projects$Locations$Folders$Deletetree, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Projects$Locations$Operations$Cancel, + deleteTree( + params?: Params$Resource$Projects$Locations$Folders$Deletetree, options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Projects$Locations$Operations$Cancel, + ): Promise>; + deleteTree( + params: Params$Resource$Projects$Locations$Folders$Deletetree, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Projects$Locations$Operations$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + deleteTree( + params: Params$Resource$Projects$Locations$Folders$Deletetree, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Projects$Locations$Operations$Cancel, - callback: BodyResponseCallback + deleteTree( + params: Params$Resource$Projects$Locations$Folders$Deletetree, + callback: BodyResponseCallback ): void; - cancel(callback: BodyResponseCallback): void; - cancel( + deleteTree(callback: BodyResponseCallback): void; + deleteTree( paramsOrCallback?: - | Params$Resource$Projects$Locations$Operations$Cancel - | BodyResponseCallback + | Params$Resource$Projects$Locations$Folders$Deletetree + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Operations$Cancel; + {}) as Params$Resource$Projects$Locations$Folders$Deletetree; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Operations$Cancel; + params = {} as Params$Resource$Projects$Locations$Folders$Deletetree; options = {}; } @@ -3269,7 +3495,10 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+name}:deleteTree').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'POST', apiVersion: '', }, @@ -3281,17 +3510,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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`. + * Fetches a single Folder. * @example * ```js * // Before running the sample: @@ -3323,14 +3552,23 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/operations/my-operation', + * const res = await dataform.projects.locations.folders.get({ + * // Required. The Folder's name. + * name: 'projects/my-project/locations/my-location/folders/my-folder', * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "containingFolder": "my_containingFolder", + * // "createTime": "my_createTime", + * // "creatorIamPrincipal": "my_creatorIamPrincipal", + * // "displayName": "my_displayName", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "teamFolderName": "my_teamFolderName", + * // "updateTime": "my_updateTime" + * // } * } * * main().catch(e => { @@ -3345,53 +3583,53 @@ export namespace dataform_v1 { * @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, + get( + params: Params$Resource$Projects$Locations$Folders$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Operations$Delete, + get( + params?: Params$Resource$Projects$Locations$Folders$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Operations$Delete, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Folders$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Operations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Folders$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Operations$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Folders$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Operations$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Folders$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Operations$Delete; + {}) as Params$Resource$Projects$Locations$Folders$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Operations$Delete; + params = {} as Params$Resource$Projects$Locations$Folders$Get; options = {}; } @@ -3405,7 +3643,7 @@ export namespace dataform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options @@ -3416,17 +3654,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. * @example * ```js * // Before running the sample: @@ -3458,19 +3696,19 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.operations.get({ - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/operations/my-operation', + * const res = await dataform.projects.locations.folders.getIamPolicy({ + * // 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': 'placeholder-value', + * // 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: 'projects/my-project/locations/my-location/folders/my-folder', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -3486,53 +3724,53 @@ export namespace dataform_v1 { * @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, + getIamPolicy( + params: Params$Resource$Projects$Locations$Folders$Getiampolicy, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Operations$Get, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Folders$Getiampolicy, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Operations$Get, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Folders$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Operations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Folders$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Operations$Get, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Folders$Getiampolicy, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Operations$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Folders$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Operations$Get; + {}) as Params$Resource$Projects$Locations$Folders$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Operations$Get; + params = {} as Params$Resource$Projects$Locations$Folders$Getiampolicy; options = {}; } @@ -3545,29 +3783,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + * Moves a Folder to a new Folder, TeamFolder, or the root location. * @example * ```js * // Before running the sample: @@ -3599,25 +3840,27 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', + * const res = await dataform.projects.locations.folders.move({ + * // Required. The full resource name of the Folder to move. + * name: 'projects/my-project/locations/my-location/folders/my-folder', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "destinationContainingFolder": "my_destinationContainingFolder" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "operations": [], - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -3633,55 +3876,53 @@ export namespace dataform_v1 { * @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, + move( + params: Params$Resource$Projects$Locations$Folders$Move, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Operations$List, + move( + params?: Params$Resource$Projects$Locations$Folders$Move, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Operations$List, + ): Promise>; + move( + params: Params$Resource$Projects$Locations$Folders$Move, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Operations$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + move( + params: Params$Resource$Projects$Locations$Folders$Move, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Operations$List, - callback: BodyResponseCallback + move( + params: Params$Resource$Projects$Locations$Folders$Move, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + move(callback: BodyResponseCallback): void; + move( paramsOrCallback?: - | Params$Resource$Projects$Locations$Operations$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Folders$Move + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Operations$List; + {}) as Params$Resource$Projects$Locations$Folders$Move; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Operations$List; + params = {} as Params$Resource$Projects$Locations$Folders$Move; options = {}; } @@ -3694,11 +3935,8 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}/operations').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}:move').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -3709,94 +3947,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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; - /** - * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - */ - returnPartialSuccess?: boolean; - } - - export class Resource$Projects$Locations$Repositories { - context: APIRequestContext; - compilationResults: Resource$Projects$Locations$Repositories$Compilationresults; - releaseConfigs: Resource$Projects$Locations$Repositories$Releaseconfigs; - workflowConfigs: Resource$Projects$Locations$Repositories$Workflowconfigs; - workflowInvocations: Resource$Projects$Locations$Repositories$Workflowinvocations; - workspaces: Resource$Projects$Locations$Repositories$Workspaces; - constructor(context: APIRequestContext) { - this.context = context; - this.compilationResults = - new Resource$Projects$Locations$Repositories$Compilationresults( - this.context - ); - this.releaseConfigs = - new Resource$Projects$Locations$Repositories$Releaseconfigs( - this.context - ); - this.workflowConfigs = - new Resource$Projects$Locations$Repositories$Workflowconfigs( - this.context - ); - this.workflowInvocations = - new Resource$Projects$Locations$Repositories$Workflowinvocations( - this.context - ); - this.workspaces = new Resource$Projects$Locations$Repositories$Workspaces( - this.context - ); - } /** - * Applies a Git commit to a Repository. The Repository must not have a value for `git_remote_settings.url`. + * Updates a single Folder. * @example * ```js * // Before running the sample: @@ -3828,17 +3989,24 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.commit({ - * // Required. The repository's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', + * const res = await dataform.projects.locations.folders.patch({ + * // Identifier. The Folder's name. + * name: 'projects/my-project/locations/my-location/folders/my-folder', + * // Optional. Specifies the fields to be updated in the Folder. If left unset, all fields that can be updated, will be updated. A few fields cannot be updated and will be ignored if specified in the update_mask (e.g. parent_name, team_folder_name). + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "commitMetadata": {}, - * // "fileOperations": {}, - * // "requiredHeadCommitSha": "my_requiredHeadCommitSha" + * // "containingFolder": "my_containingFolder", + * // "createTime": "my_createTime", + * // "creatorIamPrincipal": "my_creatorIamPrincipal", + * // "displayName": "my_displayName", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "teamFolderName": "my_teamFolderName", + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -3846,7 +4014,14 @@ export namespace dataform_v1 { * * // Example response * // { - * // "commitSha": "my_commitSha" + * // "containingFolder": "my_containingFolder", + * // "createTime": "my_createTime", + * // "creatorIamPrincipal": "my_creatorIamPrincipal", + * // "displayName": "my_displayName", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "teamFolderName": "my_teamFolderName", + * // "updateTime": "my_updateTime" * // } * } * @@ -3862,57 +4037,53 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - commit( - params: Params$Resource$Projects$Locations$Repositories$Commit, + patch( + params: Params$Resource$Projects$Locations$Folders$Patch, options: StreamMethodOptions ): Promise>; - commit( - params?: Params$Resource$Projects$Locations$Repositories$Commit, + patch( + params?: Params$Resource$Projects$Locations$Folders$Patch, options?: MethodOptions - ): Promise>; - commit( - params: Params$Resource$Projects$Locations$Repositories$Commit, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Folders$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - commit( - params: Params$Resource$Projects$Locations$Repositories$Commit, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - commit( - params: Params$Resource$Projects$Locations$Repositories$Commit, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Folders$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - commit( - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Folders$Patch, + callback: BodyResponseCallback ): void; - commit( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Commit - | BodyResponseCallback + | Params$Resource$Projects$Locations$Folders$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Commit; + {}) as Params$Resource$Projects$Locations$Folders$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Repositories$Commit; + params = {} as Params$Resource$Projects$Locations$Folders$Patch; options = {}; } @@ -3925,8 +4096,8 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:commit').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options @@ -3937,19 +4108,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Computes a Repository's Git access token status. + * Returns the contents of a given Folder. * @example * ```js * // Before running the sample: @@ -3981,16 +4150,24 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.computeAccessTokenStatus({ - * // Required. The repository's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', - * }); + * const res = await dataform.projects.locations.folders.queryFolderContents({ + * // Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` + * filter: 'placeholder-value', + * // Required. Resource name of the Folder to list contents for. Format: projects/x/locations/x/folders/x + * folder: 'projects/my-project/locations/my-location/folders/my-folder', + * // Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), create_time, last_modified_time. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` + * orderBy: 'placeholder-value', + * // Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `QueryFolderContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryFolderContents`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "tokenStatus": "my_tokenStatus" + * // "entries": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -4006,62 +4183,58 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - computeAccessTokenStatus( - params: Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus, + queryFolderContents( + params: Params$Resource$Projects$Locations$Folders$Queryfoldercontents, options: StreamMethodOptions ): Promise>; - computeAccessTokenStatus( - params?: Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus, + queryFolderContents( + params?: Params$Resource$Projects$Locations$Folders$Queryfoldercontents, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - computeAccessTokenStatus( - params: Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus, + ): Promise>; + queryFolderContents( + params: Params$Resource$Projects$Locations$Folders$Queryfoldercontents, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - computeAccessTokenStatus( - params: Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus, + queryFolderContents( + params: Params$Resource$Projects$Locations$Folders$Queryfoldercontents, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - computeAccessTokenStatus( - params: Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus, - callback: BodyResponseCallback + queryFolderContents( + params: Params$Resource$Projects$Locations$Folders$Queryfoldercontents, + callback: BodyResponseCallback ): void; - computeAccessTokenStatus( - callback: BodyResponseCallback + queryFolderContents( + callback: BodyResponseCallback ): void; - computeAccessTokenStatus( + queryFolderContents( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus - | BodyResponseCallback + | Params$Resource$Projects$Locations$Folders$Queryfoldercontents + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus; + {}) as Params$Resource$Projects$Locations$Folders$Queryfoldercontents; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus; + {} as Params$Resource$Projects$Locations$Folders$Queryfoldercontents; options = {}; } @@ -4074,7 +4247,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:computeAccessTokenStatus').replace( + url: (rootUrl + '/v1/{+folder}:queryFolderContents').replace( /([^:]\/)\/+/g, '$1' ), @@ -4084,24 +4257,22 @@ export namespace dataform_v1 { options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['folder'], + pathParams: ['folder'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a new Repository in a given project and location. + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. * @example * ```js * // Before running the sample: @@ -4133,28 +4304,15 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.create({ - * // Required. The location in which to create the repository. Must be in the format `projects/x/locations/x`. - * parent: 'projects/my-project/locations/my-location', - * // Required. The ID to use for the repository, which will become the final component of the repository's resource name. - * repositoryId: 'placeholder-value', + * const res = await dataform.projects.locations.folders.setIamPolicy({ + * // 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: 'projects/my-project/locations/my-location/folders/my-folder', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "createTime": "my_createTime", - * // "dataEncryptionState": {}, - * // "displayName": "my_displayName", - * // "gitRemoteSettings": {}, - * // "internalMetadata": "my_internalMetadata", - * // "kmsKeyName": "my_kmsKeyName", - * // "labels": {}, - * // "name": "my_name", - * // "npmrcEnvironmentVariablesSecretVersion": "my_npmrcEnvironmentVariablesSecretVersion", - * // "serviceAccount": "my_serviceAccount", - * // "setAuthenticatedUserAdmin": false, - * // "workspaceCompilationOverrides": {} + * // "policy": {} * // } * }, * }); @@ -4162,18 +4320,9 @@ export namespace dataform_v1 { * * // Example response * // { - * // "createTime": "my_createTime", - * // "dataEncryptionState": {}, - * // "displayName": "my_displayName", - * // "gitRemoteSettings": {}, - * // "internalMetadata": "my_internalMetadata", - * // "kmsKeyName": "my_kmsKeyName", - * // "labels": {}, - * // "name": "my_name", - * // "npmrcEnvironmentVariablesSecretVersion": "my_npmrcEnvironmentVariablesSecretVersion", - * // "serviceAccount": "my_serviceAccount", - * // "setAuthenticatedUserAdmin": false, - * // "workspaceCompilationOverrides": {} + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -4189,53 +4338,53 @@ export namespace dataform_v1 { * @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$Repositories$Create, + setIamPolicy( + params: Params$Resource$Projects$Locations$Folders$Setiampolicy, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Repositories$Create, + setIamPolicy( + params?: Params$Resource$Projects$Locations$Folders$Setiampolicy, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Repositories$Create, + ): Promise>; + setIamPolicy( + params: Params$Resource$Projects$Locations$Folders$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Repositories$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Projects$Locations$Folders$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Repositories$Create, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Projects$Locations$Folders$Setiampolicy, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Folders$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Create; + {}) as Params$Resource$Projects$Locations$Folders$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Repositories$Create; + params = {} as Params$Resource$Projects$Locations$Folders$Setiampolicy; options = {}; } @@ -4248,7 +4397,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/repositories').replace( + url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), @@ -4258,22 +4407,22 @@ export namespace dataform_v1 { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a single Repository. + * 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. * @example * ```js * // Before running the sample: @@ -4305,16 +4454,24 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.delete({ - * // Optional. If set to true, child resources of this repository (compilation results and workflow invocations) will also be deleted. Otherwise, the request will only succeed if the repository has no child resources. **Note:** *This flag doesn't support deletion of workspaces, release configs or workflow configs. If any of such resources exists in the repository, the request will fail.*. - * force: 'placeholder-value', - * // Required. The repository's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', + * const res = await dataform.projects.locations.folders.testIamPermissions({ + * // 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: 'projects/my-project/locations/my-location/folders/my-folder', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "permissions": [] + * // } * } * * main().catch(e => { @@ -4329,53 +4486,58 @@ export namespace dataform_v1 { * @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$Repositories$Delete, + testIamPermissions( + params: Params$Resource$Projects$Locations$Folders$Testiampermissions, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Repositories$Delete, + testIamPermissions( + params?: Params$Resource$Projects$Locations$Folders$Testiampermissions, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Repositories$Delete, + ): Promise>; + testIamPermissions( + params: Params$Resource$Projects$Locations$Folders$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Repositories$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Folders$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Repositories$Delete, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Folders$Testiampermissions, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Folders$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Delete; + {}) as Params$Resource$Projects$Locations$Folders$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Repositories$Delete; + params = + {} as Params$Resource$Projects$Locations$Folders$Testiampermissions; options = {}; } @@ -4388,181 +4550,154 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Folders$Create extends StandardParameters { /** - * Fetches a Repository's history of commits. The Repository must not have a value for `git_remote_settings.url`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataform = google.dataform('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/bigquery', - * 'https://www.googleapis.com/auth/cloud-platform', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataform.projects.locations.repositories.fetchHistory({ - * // Required. The repository's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', - * // Optional. Maximum number of commits to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous `FetchRepositoryHistory` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `FetchRepositoryHistory`, with the exception of `page_size`, must match the call that provided the page token. - * pageToken: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "commits": [], - * // "nextPageToken": "my_nextPageToken" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. + * Required. The location in which to create the Folder. Must be in the format `projects/x/locations/x`. */ - fetchHistory( - params: Params$Resource$Projects$Locations$Repositories$Fetchhistory, - options: StreamMethodOptions - ): Promise>; - fetchHistory( - params?: Params$Resource$Projects$Locations$Repositories$Fetchhistory, - options?: MethodOptions - ): Promise>; - fetchHistory( - params: Params$Resource$Projects$Locations$Repositories$Fetchhistory, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - fetchHistory( - params: Params$Resource$Projects$Locations$Repositories$Fetchhistory, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - fetchHistory( - params: Params$Resource$Projects$Locations$Repositories$Fetchhistory, - callback: BodyResponseCallback - ): void; - fetchHistory( - callback: BodyResponseCallback - ): void; - fetchHistory( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Fetchhistory - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Fetchhistory; - let options = (optionsOrCallback || {}) as MethodOptions; + parent?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Repositories$Fetchhistory; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$Folder; + } + export interface Params$Resource$Projects$Locations$Folders$Delete extends StandardParameters { + /** + * Required. The Folder's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Folders$Deletetree extends StandardParameters { + /** + * Required. The Folder's name. Format: projects/{project\}/locations/{location\}/folders/{folder\} + */ + name?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$DeleteFolderTreeRequest; + } + export interface Params$Resource$Projects$Locations$Folders$Get extends StandardParameters { + /** + * Required. The Folder's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Folders$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$Folders$Move extends StandardParameters { + /** + * Required. The full resource name of the Folder to move. + */ + name?: string; - const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}:fetchHistory').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } + /** + * Request body metadata + */ + requestBody?: Schema$MoveFolderRequest; + } + export interface Params$Resource$Projects$Locations$Folders$Patch extends StandardParameters { + /** + * Identifier. The Folder's name. + */ + name?: string; + /** + * Optional. Specifies the fields to be updated in the Folder. If left unset, all fields that can be updated, will be updated. A few fields cannot be updated and will be ignored if specified in the update_mask (e.g. parent_name, team_folder_name). + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Folder; + } + export interface Params$Resource$Projects$Locations$Folders$Queryfoldercontents extends StandardParameters { + /** + * Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` + */ + filter?: string; + /** + * Required. Resource name of the Folder to list contents for. Format: projects/x/locations/x/folders/x + */ + folder?: string; + /** + * Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), create_time, last_modified_time. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` + */ + orderBy?: string; + /** + * Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `QueryFolderContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryFolderContents`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + } + export interface Params$Resource$Projects$Locations$Folders$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$Folders$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$Operations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Fetches a Repository's remote branches. + * 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`. * @example * ```js * // Before running the sample: @@ -4594,17 +4729,20 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.fetchRemoteBranches({ - * // Required. The repository's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', - * }); + * const res = await dataform.projects.locations.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); * console.log(res.data); * * // Example response - * // { - * // "branches": [] - * // } + * // {} * } * * main().catch(e => { @@ -4619,58 +4757,53 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - fetchRemoteBranches( - params: Params$Resource$Projects$Locations$Repositories$Fetchremotebranches, + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, options: StreamMethodOptions ): Promise>; - fetchRemoteBranches( - params?: Params$Resource$Projects$Locations$Repositories$Fetchremotebranches, + cancel( + params?: Params$Resource$Projects$Locations$Operations$Cancel, options?: MethodOptions - ): Promise>; - fetchRemoteBranches( - params: Params$Resource$Projects$Locations$Repositories$Fetchremotebranches, + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - fetchRemoteBranches( - params: Params$Resource$Projects$Locations$Repositories$Fetchremotebranches, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - fetchRemoteBranches( - params: Params$Resource$Projects$Locations$Repositories$Fetchremotebranches, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - fetchRemoteBranches( - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + callback: BodyResponseCallback ): void; - fetchRemoteBranches( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Fetchremotebranches - | BodyResponseCallback + | Params$Resource$Projects$Locations$Operations$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Fetchremotebranches; + {}) as Params$Resource$Projects$Locations$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Repositories$Fetchremotebranches; + params = {} as Params$Resource$Projects$Locations$Operations$Cancel; options = {}; } @@ -4683,11 +4816,8 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:fetchRemoteBranches').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -4698,17 +4828,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Fetches a single Repository. + * 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`. * @example * ```js * // Before running the sample: @@ -4740,27 +4870,14 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.get({ - * // Required. The repository's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', + * const res = await dataform.projects.locations.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/operations/my-operation', * }); * console.log(res.data); * * // Example response - * // { - * // "createTime": "my_createTime", - * // "dataEncryptionState": {}, - * // "displayName": "my_displayName", - * // "gitRemoteSettings": {}, - * // "internalMetadata": "my_internalMetadata", - * // "kmsKeyName": "my_kmsKeyName", - * // "labels": {}, - * // "name": "my_name", - * // "npmrcEnvironmentVariablesSecretVersion": "my_npmrcEnvironmentVariablesSecretVersion", - * // "serviceAccount": "my_serviceAccount", - * // "setAuthenticatedUserAdmin": false, - * // "workspaceCompilationOverrides": {} - * // } + * // {} * } * * main().catch(e => { @@ -4775,53 +4892,53 @@ export namespace dataform_v1 { * @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$Repositories$Get, + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Repositories$Get, + delete( + params?: Params$Resource$Projects$Locations$Operations$Delete, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Repositories$Get, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Repositories$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Repositories$Get, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Operations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Get; + {}) as Params$Resource$Projects$Locations$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Repositories$Get; + params = {} as Params$Resource$Projects$Locations$Operations$Delete; options = {}; } @@ -4835,7 +4952,7 @@ export namespace dataform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options @@ -4846,17 +4963,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * 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. * @example * ```js * // Before running the sample: @@ -4888,20 +5005,19 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.getIamPolicy({ - * // 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': 'placeholder-value', - * // 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: - * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * const res = await dataform.projects.locations.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/operations/my-operation', * }); * console.log(res.data); * * // Example response * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -4917,54 +5033,53 @@ export namespace dataform_v1 { * @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$Repositories$Getiampolicy, + get( + params: Params$Resource$Projects$Locations$Operations$Get, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Repositories$Getiampolicy, + get( + params?: Params$Resource$Projects$Locations$Operations$Get, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Repositories$Getiampolicy, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Repositories$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Repositories$Getiampolicy, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Operations$Get, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Getiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Operations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Repositories$Getiampolicy; + params = {} as Params$Resource$Projects$Locations$Operations$Get; options = {}; } @@ -4977,32 +5092,29 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists Repositories in a given project and location. **Note:** *This method can return repositories not shown in the [Dataform UI](https://console.cloud.google.com/bigquery/dataform)*. + * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. * @example * ```js * // Before running the sample: @@ -5034,24 +5146,24 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.list({ - * // Optional. Filter for the returned list. + * const res = await dataform.projects.locations.operations.list({ + * // The standard list filter. * filter: 'placeholder-value', - * // Optional. This field only supports ordering by `name`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. - * orderBy: 'placeholder-value', - * // Optional. Maximum number of repositories to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location', + * // The standard list page size. * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous `ListRepositories` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListRepositories`, with the exception of `page_size`, must match the call that provided the page token. + * // The standard list page token. * pageToken: 'placeholder-value', - * // Required. The location in which to list repositories. Must be in the format `projects/x/locations/x`. - * parent: 'projects/my-project/locations/my-location', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "repositories": [], + * // "operations": [], * // "unreachable": [] * // } * } @@ -5069,54 +5181,54 @@ export namespace dataform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Repositories$List, + params: Params$Resource$Projects$Locations$Operations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Repositories$List, + params?: Params$Resource$Projects$Locations$Operations$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Projects$Locations$Repositories$List, + params: Params$Resource$Projects$Locations$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Repositories$List, + params: Params$Resource$Projects$Locations$Operations$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Repositories$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Operations$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Operations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$List; + {}) as Params$Resource$Projects$Locations$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Repositories$List; + params = {} as Params$Resource$Projects$Locations$Operations$List; options = {}; } @@ -5129,7 +5241,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/repositories').replace( + url: (rootUrl + '/v1/{+name}/operations').replace( /([^:]\/)\/+/g, '$1' ), @@ -5139,75 +5251,141 @@ export namespace dataform_v1 { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Operations$Cancel extends StandardParameters { /** - * Updates a single Repository. **Note:** *This method does not fully implement [AIP/134](https://google.aip.dev/134). The wildcard entry (\*) is treated as a bad request, and when the `field_mask` is omitted, the request is treated as a full update on all modifiable fields.* - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataform = google.dataform('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/bigquery', - * 'https://www.googleapis.com/auth/cloud-platform', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataform.projects.locations.repositories.patch({ - * // Identifier. The repository's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', - * // Optional. Specifies the fields to be updated in the repository. If left unset, all fields will be updated. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "dataEncryptionState": {}, - * // "displayName": "my_displayName", - * // "gitRemoteSettings": {}, - * // "internalMetadata": "my_internalMetadata", - * // "kmsKeyName": "my_kmsKeyName", - * // "labels": {}, - * // "name": "my_name", - * // "npmrcEnvironmentVariablesSecretVersion": "my_npmrcEnvironmentVariablesSecretVersion", - * // "serviceAccount": "my_serviceAccount", - * // "setAuthenticatedUserAdmin": false, - * // "workspaceCompilationOverrides": {} + * 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; + /** + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Projects$Locations$Repositories { + context: APIRequestContext; + compilationResults: Resource$Projects$Locations$Repositories$Compilationresults; + releaseConfigs: Resource$Projects$Locations$Repositories$Releaseconfigs; + workflowConfigs: Resource$Projects$Locations$Repositories$Workflowconfigs; + workflowInvocations: Resource$Projects$Locations$Repositories$Workflowinvocations; + workspaces: Resource$Projects$Locations$Repositories$Workspaces; + constructor(context: APIRequestContext) { + this.context = context; + this.compilationResults = + new Resource$Projects$Locations$Repositories$Compilationresults( + this.context + ); + this.releaseConfigs = + new Resource$Projects$Locations$Repositories$Releaseconfigs( + this.context + ); + this.workflowConfigs = + new Resource$Projects$Locations$Repositories$Workflowconfigs( + this.context + ); + this.workflowInvocations = + new Resource$Projects$Locations$Repositories$Workflowinvocations( + this.context + ); + this.workspaces = new Resource$Projects$Locations$Repositories$Workspaces( + this.context + ); + } + + /** + * Applies a Git commit to a Repository. The Repository must not have a value for `git_remote_settings.url`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataform.projects.locations.repositories.commit({ + * // Required. The repository's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "commitMetadata": {}, + * // "fileOperations": {}, + * // "requiredHeadCommitSha": "my_requiredHeadCommitSha" * // } * }, * }); @@ -5215,18 +5393,7 @@ export namespace dataform_v1 { * * // Example response * // { - * // "createTime": "my_createTime", - * // "dataEncryptionState": {}, - * // "displayName": "my_displayName", - * // "gitRemoteSettings": {}, - * // "internalMetadata": "my_internalMetadata", - * // "kmsKeyName": "my_kmsKeyName", - * // "labels": {}, - * // "name": "my_name", - * // "npmrcEnvironmentVariablesSecretVersion": "my_npmrcEnvironmentVariablesSecretVersion", - * // "serviceAccount": "my_serviceAccount", - * // "setAuthenticatedUserAdmin": false, - * // "workspaceCompilationOverrides": {} + * // "commitSha": "my_commitSha" * // } * } * @@ -5242,53 +5409,57 @@ export namespace dataform_v1 { * @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$Repositories$Patch, + commit( + params: Params$Resource$Projects$Locations$Repositories$Commit, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Repositories$Patch, + commit( + params?: Params$Resource$Projects$Locations$Repositories$Commit, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Repositories$Patch, + ): Promise>; + commit( + params: Params$Resource$Projects$Locations$Repositories$Commit, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Repositories$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + commit( + params: Params$Resource$Projects$Locations$Repositories$Commit, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Repositories$Patch, - callback: BodyResponseCallback + commit( + params: Params$Resource$Projects$Locations$Repositories$Commit, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + commit( + callback: BodyResponseCallback + ): void; + commit( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Commit + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Patch; + {}) as Params$Resource$Projects$Locations$Repositories$Commit; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Repositories$Patch; + params = {} as Params$Resource$Projects$Locations$Repositories$Commit; options = {}; } @@ -5301,8 +5472,8 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1/{+name}:commit').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -5313,17 +5484,19 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Returns the contents of a given Repository directory. The Repository must not have a value for `git_remote_settings.url`. + * Computes a Repository's Git access token status. * @example * ```js * // Before running the sample: @@ -5356,24 +5529,15 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.queryDirectoryContents({ - * // Optional. The Commit SHA for the commit to query from. If unset, the directory will be queried from HEAD. - * commitSha: 'placeholder-value', + * await dataform.projects.locations.repositories.computeAccessTokenStatus({ * // Required. The repository's name. * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', - * // Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous `QueryRepositoryDirectoryContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryRepositoryDirectoryContents`, with the exception of `page_size`, must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Optional. The directory's full path including directory name, relative to root. If left unset, the root is used. - * path: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "directoryEntries": [], - * // "nextPageToken": "my_nextPageToken" + * // "tokenStatus": "my_tokenStatus" * // } * } * @@ -5389,62 +5553,62 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - queryDirectoryContents( - params: Params$Resource$Projects$Locations$Repositories$Querydirectorycontents, + computeAccessTokenStatus( + params: Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus, options: StreamMethodOptions ): Promise>; - queryDirectoryContents( - params?: Params$Resource$Projects$Locations$Repositories$Querydirectorycontents, + computeAccessTokenStatus( + params?: Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - queryDirectoryContents( - params: Params$Resource$Projects$Locations$Repositories$Querydirectorycontents, + computeAccessTokenStatus( + params: Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - queryDirectoryContents( - params: Params$Resource$Projects$Locations$Repositories$Querydirectorycontents, + computeAccessTokenStatus( + params: Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - queryDirectoryContents( - params: Params$Resource$Projects$Locations$Repositories$Querydirectorycontents, - callback: BodyResponseCallback + computeAccessTokenStatus( + params: Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus, + callback: BodyResponseCallback ): void; - queryDirectoryContents( - callback: BodyResponseCallback + computeAccessTokenStatus( + callback: BodyResponseCallback ): void; - queryDirectoryContents( + computeAccessTokenStatus( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Querydirectorycontents - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Querydirectorycontents; + {}) as Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Querydirectorycontents; + {} as Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus; options = {}; } @@ -5457,7 +5621,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:queryDirectoryContents').replace( + url: (rootUrl + '/v1/{+name}:computeAccessTokenStatus').replace( /([^:]\/)\/+/g, '$1' ), @@ -5472,19 +5636,19 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Returns the contents of a file (inside a Repository). The Repository must not have a value for `git_remote_settings.url`. + * Creates a new Repository in a given project and location. * @example * ```js * // Before running the sample: @@ -5516,19 +5680,51 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.readFile({ - * // Optional. The commit SHA for the commit to read from. If unset, the file will be read from HEAD. - * commitSha: 'placeholder-value', - * // Required. The repository's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', - * // Required. Full file path to read including filename, from repository root. - * path: 'placeholder-value', + * const res = await dataform.projects.locations.repositories.create({ + * // Required. The location in which to create the repository. Must be in the format `projects/x/locations/x`. + * parent: 'projects/my-project/locations/my-location', + * // Required. The ID to use for the repository, which will become the final component of the repository's resource name. + * repositoryId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "containingFolder": "my_containingFolder", + * // "createTime": "my_createTime", + * // "dataEncryptionState": {}, + * // "displayName": "my_displayName", + * // "gitRemoteSettings": {}, + * // "internalMetadata": "my_internalMetadata", + * // "kmsKeyName": "my_kmsKeyName", + * // "labels": {}, + * // "name": "my_name", + * // "npmrcEnvironmentVariablesSecretVersion": "my_npmrcEnvironmentVariablesSecretVersion", + * // "serviceAccount": "my_serviceAccount", + * // "setAuthenticatedUserAdmin": false, + * // "teamFolderName": "my_teamFolderName", + * // "workspaceCompilationOverrides": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "contents": "my_contents" + * // "containingFolder": "my_containingFolder", + * // "createTime": "my_createTime", + * // "dataEncryptionState": {}, + * // "displayName": "my_displayName", + * // "gitRemoteSettings": {}, + * // "internalMetadata": "my_internalMetadata", + * // "kmsKeyName": "my_kmsKeyName", + * // "labels": {}, + * // "name": "my_name", + * // "npmrcEnvironmentVariablesSecretVersion": "my_npmrcEnvironmentVariablesSecretVersion", + * // "serviceAccount": "my_serviceAccount", + * // "setAuthenticatedUserAdmin": false, + * // "teamFolderName": "my_teamFolderName", + * // "workspaceCompilationOverrides": {} * // } * } * @@ -5544,57 +5740,53 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - readFile( - params: Params$Resource$Projects$Locations$Repositories$Readfile, + create( + params: Params$Resource$Projects$Locations$Repositories$Create, options: StreamMethodOptions ): Promise>; - readFile( - params?: Params$Resource$Projects$Locations$Repositories$Readfile, + create( + params?: Params$Resource$Projects$Locations$Repositories$Create, options?: MethodOptions - ): Promise>; - readFile( - params: Params$Resource$Projects$Locations$Repositories$Readfile, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Repositories$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - readFile( - params: Params$Resource$Projects$Locations$Repositories$Readfile, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - readFile( - params: Params$Resource$Projects$Locations$Repositories$Readfile, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Repositories$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - readFile( - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Repositories$Create, + callback: BodyResponseCallback ): void; - readFile( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Readfile - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Readfile; + {}) as Params$Resource$Projects$Locations$Repositories$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Repositories$Readfile; + params = {} as Params$Resource$Projects$Locations$Repositories$Create; options = {}; } @@ -5607,32 +5799,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:readFile').replace( + url: (rootUrl + '/v1/{+parent}/repositories').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Deletes a single Repository. * @example * ```js * // Before running the sample: @@ -5664,27 +5856,16 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.setIamPolicy({ - * // 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: - * 'projects/my-project/locations/my-location/repositories/my-repositorie', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {} - * // } - * }, + * const res = await dataform.projects.locations.repositories.delete({ + * // Optional. If set to true, child resources of this repository (compilation results and workflow invocations) will also be deleted. Otherwise, the request will only succeed if the repository has no child resources. **Note:** *This flag doesn't support deletion of workspaces, release configs or workflow configs. If any of such resources exists in the repository, the request will fail.*. + * force: 'placeholder-value', + * // Required. The repository's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', * }); * console.log(res.data); * * // Example response - * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } + * // {} * } * * main().catch(e => { @@ -5699,54 +5880,53 @@ export namespace dataform_v1 { * @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$Repositories$Setiampolicy, + delete( + params: Params$Resource$Projects$Locations$Repositories$Delete, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Repositories$Setiampolicy, + delete( + params?: Params$Resource$Projects$Locations$Repositories$Delete, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Repositories$Setiampolicy, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Repositories$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Repositories$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Repositories$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Repositories$Setiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Repositories$Delete, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Setiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Repositories$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Repositories$Setiampolicy; + params = {} as Params$Resource$Projects$Locations$Repositories$Delete; options = {}; } @@ -5759,32 +5939,29 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Fetches a Repository's history of commits. The Repository must not have a value for `git_remote_settings.url`. * @example * ```js * // Before running the sample: @@ -5816,26 +5993,20 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.testIamPermissions( - * { - * // 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: - * 'projects/my-project/locations/my-location/repositories/my-repositorie', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }, - * ); + * const res = await dataform.projects.locations.repositories.fetchHistory({ + * // Required. The repository's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', + * // Optional. Maximum number of commits to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `FetchRepositoryHistory` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `FetchRepositoryHistory`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "commits": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -5851,58 +6022,58 @@ export namespace dataform_v1 { * @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$Repositories$Testiampermissions, + fetchHistory( + params: Params$Resource$Projects$Locations$Repositories$Fetchhistory, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Repositories$Testiampermissions, + fetchHistory( + params?: Params$Resource$Projects$Locations$Repositories$Fetchhistory, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Projects$Locations$Repositories$Testiampermissions, + ): Promise>; + fetchHistory( + params: Params$Resource$Projects$Locations$Repositories$Fetchhistory, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Repositories$Testiampermissions, + fetchHistory( + params: Params$Resource$Projects$Locations$Repositories$Fetchhistory, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Repositories$Testiampermissions, - callback: BodyResponseCallback + fetchHistory( + params: Params$Resource$Projects$Locations$Repositories$Fetchhistory, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + fetchHistory( + callback: BodyResponseCallback ): void; - testIamPermissions( + fetchHistory( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Fetchhistory + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Repositories$Fetchhistory; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Testiampermissions; + {} as Params$Resource$Projects$Locations$Repositories$Fetchhistory; options = {}; } @@ -5915,213 +6086,34 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( + url: (rootUrl + '/v1/{+name}:fetchHistory').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - - export interface Params$Resource$Projects$Locations$Repositories$Commit extends StandardParameters { - /** - * Required. The repository's name. - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CommitRepositoryChangesRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus extends StandardParameters { - /** - * Required. The repository's name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Create extends StandardParameters { - /** - * Required. The location in which to create the repository. Must be in the format `projects/x/locations/x`. - */ - parent?: string; - /** - * Required. The ID to use for the repository, which will become the final component of the repository's resource name. - */ - repositoryId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Repository; - } - export interface Params$Resource$Projects$Locations$Repositories$Delete extends StandardParameters { - /** - * Optional. If set to true, child resources of this repository (compilation results and workflow invocations) will also be deleted. Otherwise, the request will only succeed if the repository has no child resources. **Note:** *This flag doesn't support deletion of workspaces, release configs or workflow configs. If any of such resources exists in the repository, the request will fail.*. - */ - force?: boolean; - /** - * Required. The repository's name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Fetchhistory extends StandardParameters { - /** - * Required. The repository's name. - */ - name?: string; - /** - * Optional. Maximum number of commits to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous `FetchRepositoryHistory` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `FetchRepositoryHistory`, with the exception of `page_size`, must match the call that provided the page token. - */ - pageToken?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Fetchremotebranches extends StandardParameters { - /** - * Required. The repository's name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Get extends StandardParameters { - /** - * Required. The repository's name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$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$Repositories$List extends StandardParameters { - /** - * Optional. Filter for the returned list. - */ - filter?: string; - /** - * Optional. This field only supports ordering by `name`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. - */ - orderBy?: string; - /** - * Optional. Maximum number of repositories to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous `ListRepositories` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListRepositories`, with the exception of `page_size`, must match the call that provided the page token. - */ - pageToken?: string; - /** - * Required. The location in which to list repositories. Must be in the format `projects/x/locations/x`. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Patch extends StandardParameters { - /** - * Identifier. The repository's name. - */ - name?: string; - /** - * Optional. Specifies the fields to be updated in the repository. If left unset, all fields will be updated. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Repository; - } - export interface Params$Resource$Projects$Locations$Repositories$Querydirectorycontents extends StandardParameters { - /** - * Optional. The Commit SHA for the commit to query from. If unset, the directory will be queried from HEAD. - */ - commitSha?: string; - /** - * Required. The repository's name. - */ - name?: string; - /** - * Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous `QueryRepositoryDirectoryContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryRepositoryDirectoryContents`, with the exception of `page_size`, must match the call that provided the page token. - */ - pageToken?: string; - /** - * Optional. The directory's full path including directory name, relative to root. If left unset, the root is used. - */ - path?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Readfile extends StandardParameters { - /** - * Optional. The commit SHA for the commit to read from. If unset, the file will be read from HEAD. - */ - commitSha?: string; - /** - * Required. The repository's name. - */ - name?: string; - /** - * Required. Full file path to read including filename, from repository root. - */ - path?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$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$Repositories$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$Compilationresults { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new CompilationResult in a given project and location. + * Fetches a Repository's remote branches. * @example * ```js * // Before running the sample: @@ -6154,46 +6146,15 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.compilationResults.create({ - * // Required. The repository in which to create the compilation result. Must be in the format `projects/x/locations/x/repositories/x`. - * parent: - * 'projects/my-project/locations/my-location/repositories/my-repositorie', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "codeCompilationConfig": {}, - * // "compilationErrors": [], - * // "createTime": "my_createTime", - * // "dataEncryptionState": {}, - * // "dataformCoreVersion": "my_dataformCoreVersion", - * // "gitCommitish": "my_gitCommitish", - * // "internalMetadata": "my_internalMetadata", - * // "name": "my_name", - * // "privateResourceMetadata": {}, - * // "releaseConfig": "my_releaseConfig", - * // "resolvedGitCommitSha": "my_resolvedGitCommitSha", - * // "workspace": "my_workspace" - * // } - * }, + * await dataform.projects.locations.repositories.fetchRemoteBranches({ + * // Required. The repository's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', * }); * console.log(res.data); * * // Example response * // { - * // "codeCompilationConfig": {}, - * // "compilationErrors": [], - * // "createTime": "my_createTime", - * // "dataEncryptionState": {}, - * // "dataformCoreVersion": "my_dataformCoreVersion", - * // "gitCommitish": "my_gitCommitish", - * // "internalMetadata": "my_internalMetadata", - * // "name": "my_name", - * // "privateResourceMetadata": {}, - * // "releaseConfig": "my_releaseConfig", - * // "resolvedGitCommitSha": "my_resolvedGitCommitSha", - * // "workspace": "my_workspace" + * // "branches": [] * // } * } * @@ -6209,54 +6170,58 @@ export namespace dataform_v1 { * @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$Repositories$Compilationresults$Create, + fetchRemoteBranches( + params: Params$Resource$Projects$Locations$Repositories$Fetchremotebranches, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Repositories$Compilationresults$Create, + fetchRemoteBranches( + params?: Params$Resource$Projects$Locations$Repositories$Fetchremotebranches, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Create, + ): Promise>; + fetchRemoteBranches( + params: Params$Resource$Projects$Locations$Repositories$Fetchremotebranches, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + fetchRemoteBranches( + params: Params$Resource$Projects$Locations$Repositories$Fetchremotebranches, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Create, - callback: BodyResponseCallback + fetchRemoteBranches( + params: Params$Resource$Projects$Locations$Repositories$Fetchremotebranches, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + fetchRemoteBranches( + callback: BodyResponseCallback + ): void; + fetchRemoteBranches( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Compilationresults$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Fetchremotebranches + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Compilationresults$Create; + {}) as Params$Resource$Projects$Locations$Repositories$Fetchremotebranches; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Compilationresults$Create; + {} as Params$Resource$Projects$Locations$Repositories$Fetchremotebranches; options = {}; } @@ -6269,32 +6234,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/compilationResults').replace( + url: (rootUrl + '/v1/{+name}:fetchRemoteBranches').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Fetches a single CompilationResult. + * Fetches a single Repository. * @example * ```js * // Before running the sample: @@ -6326,27 +6291,28 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.compilationResults.get({ - * // Required. The compilation result's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/compilationResults/my-compilationResult', - * }); + * const res = await dataform.projects.locations.repositories.get({ + * // Required. The repository's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', + * }); * console.log(res.data); * * // Example response * // { - * // "codeCompilationConfig": {}, - * // "compilationErrors": [], + * // "containingFolder": "my_containingFolder", * // "createTime": "my_createTime", * // "dataEncryptionState": {}, - * // "dataformCoreVersion": "my_dataformCoreVersion", - * // "gitCommitish": "my_gitCommitish", + * // "displayName": "my_displayName", + * // "gitRemoteSettings": {}, * // "internalMetadata": "my_internalMetadata", + * // "kmsKeyName": "my_kmsKeyName", + * // "labels": {}, * // "name": "my_name", - * // "privateResourceMetadata": {}, - * // "releaseConfig": "my_releaseConfig", - * // "resolvedGitCommitSha": "my_resolvedGitCommitSha", - * // "workspace": "my_workspace" + * // "npmrcEnvironmentVariablesSecretVersion": "my_npmrcEnvironmentVariablesSecretVersion", + * // "serviceAccount": "my_serviceAccount", + * // "setAuthenticatedUserAdmin": false, + * // "teamFolderName": "my_teamFolderName", + * // "workspaceCompilationOverrides": {} * // } * } * @@ -6363,53 +6329,52 @@ export namespace dataform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Get, + params: Params$Resource$Projects$Locations$Repositories$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Repositories$Compilationresults$Get, + params?: Params$Resource$Projects$Locations$Repositories$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Get, + params: Params$Resource$Projects$Locations$Repositories$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Repositories$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Get, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Repositories$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Compilationresults$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Compilationresults$Get; + {}) as Params$Resource$Projects$Locations$Repositories$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Repositories$Compilationresults$Get; + params = {} as Params$Resource$Projects$Locations$Repositories$Get; options = {}; } @@ -6434,17 +6399,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists CompilationResults in a given Repository. + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. * @example * ```js * // Before running the sample: @@ -6476,27 +6441,20 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.compilationResults.list({ - * // Optional. Filter for the returned list. - * filter: 'placeholder-value', - * // Optional. This field only supports ordering by `name` and `create_time`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. - * orderBy: 'placeholder-value', - * // Optional. Maximum number of compilation results to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous `ListCompilationResults` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCompilationResults`, with the exception of `page_size`, must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The repository in which to list compilation results. Must be in the format `projects/x/locations/x/repositories/x`. - * parent: - * 'projects/my-project/locations/my-location/repositories/my-repositorie', - * }); + * const res = await dataform.projects.locations.repositories.getIamPolicy({ + * // 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': 'placeholder-value', + * // 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: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * }); * console.log(res.data); * * // Example response * // { - * // "compilationResults": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -6512,58 +6470,54 @@ export namespace dataform_v1 { * @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$Repositories$Compilationresults$List, + getIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Getiampolicy, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Repositories$Compilationresults$List, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Repositories$Getiampolicy, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$List, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$List, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Getiampolicy, + callback: BodyResponseCallback ): void; - list( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Compilationresults$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Compilationresults$List; + {}) as Params$Resource$Projects$Locations$Repositories$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Compilationresults$List; + {} as Params$Resource$Projects$Locations$Repositories$Getiampolicy; options = {}; } @@ -6576,7 +6530,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/compilationResults').replace( + url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), @@ -6586,24 +6540,22 @@ export namespace dataform_v1 { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Returns CompilationResultActions in a given CompilationResult. + * Lists Repositories in a given project and location. **Note:** *This method can return repositories not shown in the [Dataform UI](https://console.cloud.google.com/bigquery/dataform)*. * @example * ```js * // Before running the sample: @@ -6635,23 +6587,25 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.compilationResults.query({ - * // Optional. Optional filter for the returned list. Filtering is only currently supported on the `file_path` field. - * filter: 'placeholder-value', - * // Required. The compilation result's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/compilationResults/my-compilationResult', - * // Optional. Maximum number of compilation results to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous `QueryCompilationResultActions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryCompilationResultActions`, with the exception of `page_size`, must match the call that provided the page token. - * pageToken: 'placeholder-value', - * }); + * const res = await dataform.projects.locations.repositories.list({ + * // Optional. Filter for the returned list. + * filter: 'placeholder-value', + * // Optional. This field only supports ordering by `name`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. + * orderBy: 'placeholder-value', + * // Optional. Maximum number of repositories to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `ListRepositories` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListRepositories`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The location in which to list repositories. Must be in the format `projects/x/locations/x`. + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "compilationResultActions": [], - * // "nextPageToken": "my_nextPageToken" + * // "nextPageToken": "my_nextPageToken", + * // "repositories": [], + * // "unreachable": [] * // } * } * @@ -6667,62 +6621,55 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - query( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Query, + list( + params: Params$Resource$Projects$Locations$Repositories$List, options: StreamMethodOptions ): Promise>; - query( - params?: Params$Resource$Projects$Locations$Repositories$Compilationresults$Query, + list( + params?: Params$Resource$Projects$Locations$Repositories$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - query( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Query, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Repositories$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - query( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Query, + list( + params: Params$Resource$Projects$Locations$Repositories$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - query( - params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Query, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - query( - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Repositories$List, + callback: BodyResponseCallback ): void; - query( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Compilationresults$Query - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Compilationresults$Query; + {}) as Params$Resource$Projects$Locations$Repositories$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Repositories$Compilationresults$Query; + params = {} as Params$Resource$Projects$Locations$Repositories$List; options = {}; } @@ -6735,96 +6682,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:query').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+parent}/repositories').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Repositories$Compilationresults$Create extends StandardParameters { - /** - * Required. The repository in which to create the compilation result. Must be in the format `projects/x/locations/x/repositories/x`. - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CompilationResult; - } - export interface Params$Resource$Projects$Locations$Repositories$Compilationresults$Get extends StandardParameters { - /** - * Required. The compilation result's name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Compilationresults$List extends StandardParameters { - /** - * Optional. Filter for the returned list. - */ - filter?: string; - /** - * Optional. This field only supports ordering by `name` and `create_time`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. - */ - orderBy?: string; - /** - * Optional. Maximum number of compilation results to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous `ListCompilationResults` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCompilationResults`, with the exception of `page_size`, must match the call that provided the page token. - */ - pageToken?: string; - /** - * Required. The repository in which to list compilation results. Must be in the format `projects/x/locations/x/repositories/x`. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Compilationresults$Query extends StandardParameters { - /** - * Optional. Optional filter for the returned list. Filtering is only currently supported on the `file_path` field. - */ - filter?: string; - /** - * Required. The compilation result's name. - */ - name?: string; - /** - * Optional. Maximum number of compilation results to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous `QueryCompilationResultActions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryCompilationResultActions`, with the exception of `page_size`, must match the call that provided the page token. - */ - pageToken?: string; - } - - export class Resource$Projects$Locations$Repositories$Releaseconfigs { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new ReleaseConfig in a given Repository. + * Moves a Repository to a new location. * @example * ```js * // Before running the sample: @@ -6856,43 +6739,27 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.releaseConfigs.create({ - * // Required. The repository in which to create the release config. Must be in the format `projects/x/locations/x/repositories/x`. - * parent: - * 'projects/my-project/locations/my-location/repositories/my-repositorie', - * // Required. The ID to use for the release config, which will become the final component of the release config's resource name. - * releaseConfigId: 'placeholder-value', + * const res = await dataform.projects.locations.repositories.move({ + * // Required. The full resource name of the repository to move. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "codeCompilationConfig": {}, - * // "cronSchedule": "my_cronSchedule", - * // "disabled": false, - * // "gitCommitish": "my_gitCommitish", - * // "internalMetadata": "my_internalMetadata", - * // "name": "my_name", - * // "recentScheduledReleaseRecords": [], - * // "releaseCompilationResult": "my_releaseCompilationResult", - * // "timeZone": "my_timeZone" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "destinationContainingFolder": "my_destinationContainingFolder" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "codeCompilationConfig": {}, - * // "cronSchedule": "my_cronSchedule", - * // "disabled": false, - * // "gitCommitish": "my_gitCommitish", - * // "internalMetadata": "my_internalMetadata", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "recentScheduledReleaseRecords": [], - * // "releaseCompilationResult": "my_releaseCompilationResult", - * // "timeZone": "my_timeZone" + * // "response": {} * // } * } * @@ -6908,54 +6775,53 @@ export namespace dataform_v1 { * @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$Repositories$Releaseconfigs$Create, + move( + params: Params$Resource$Projects$Locations$Repositories$Move, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create, + move( + params?: Params$Resource$Projects$Locations$Repositories$Move, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create, + ): Promise>; + move( + params: Params$Resource$Projects$Locations$Repositories$Move, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + move( + params: Params$Resource$Projects$Locations$Repositories$Move, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create, - callback: BodyResponseCallback + move( + params: Params$Resource$Projects$Locations$Repositories$Move, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + move(callback: BodyResponseCallback): void; + move( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Move + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create; + {}) as Params$Resource$Projects$Locations$Repositories$Move; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create; + params = {} as Params$Resource$Projects$Locations$Repositories$Move; options = {}; } @@ -6968,32 +6834,29 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/releaseConfigs').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}:move').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a single ReleaseConfig. + * Updates a single Repository. **Note:** *This method does not fully implement [AIP/134](https://google.aip.dev/134). The wildcard entry (\*) is treated as a bad request, and when the `field_mask` is omitted, the request is treated as a full update on all modifiable fields.* * @example * ```js * // Before running the sample: @@ -7025,18 +6888,55 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.releaseConfigs.delete({ - * // Required. The release config's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/releaseConfigs/my-releaseConfig', - * }); + * const res = await dataform.projects.locations.repositories.patch({ + * // Identifier. The repository's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', + * // Optional. Specifies the fields to be updated in the repository. If left unset, all fields will be updated. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "containingFolder": "my_containingFolder", + * // "createTime": "my_createTime", + * // "dataEncryptionState": {}, + * // "displayName": "my_displayName", + * // "gitRemoteSettings": {}, + * // "internalMetadata": "my_internalMetadata", + * // "kmsKeyName": "my_kmsKeyName", + * // "labels": {}, + * // "name": "my_name", + * // "npmrcEnvironmentVariablesSecretVersion": "my_npmrcEnvironmentVariablesSecretVersion", + * // "serviceAccount": "my_serviceAccount", + * // "setAuthenticatedUserAdmin": false, + * // "teamFolderName": "my_teamFolderName", + * // "workspaceCompilationOverrides": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response - * // {} - * } - * - * main().catch(e => { + * // { + * // "containingFolder": "my_containingFolder", + * // "createTime": "my_createTime", + * // "dataEncryptionState": {}, + * // "displayName": "my_displayName", + * // "gitRemoteSettings": {}, + * // "internalMetadata": "my_internalMetadata", + * // "kmsKeyName": "my_kmsKeyName", + * // "labels": {}, + * // "name": "my_name", + * // "npmrcEnvironmentVariablesSecretVersion": "my_npmrcEnvironmentVariablesSecretVersion", + * // "serviceAccount": "my_serviceAccount", + * // "setAuthenticatedUserAdmin": false, + * // "teamFolderName": "my_teamFolderName", + * // "workspaceCompilationOverrides": {} + * // } + * } + * + * main().catch(e => { * console.error(e); * throw e; * }); @@ -7048,54 +6948,53 @@ export namespace dataform_v1 { * @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$Repositories$Releaseconfigs$Delete, + patch( + params: Params$Resource$Projects$Locations$Repositories$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete, + patch( + params?: Params$Resource$Projects$Locations$Repositories$Patch, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Repositories$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Repositories$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Repositories$Patch, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete; + {}) as Params$Resource$Projects$Locations$Repositories$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete; + params = {} as Params$Resource$Projects$Locations$Repositories$Patch; options = {}; } @@ -7109,7 +7008,7 @@ export namespace dataform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'PATCH', apiVersion: '', }, options @@ -7120,17 +7019,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Fetches a single ReleaseConfig. + * Returns the contents of a given Repository directory. The Repository must not have a value for `git_remote_settings.url`. * @example * ```js * // Before running the sample: @@ -7162,25 +7061,25 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.releaseConfigs.get( - * { - * // Required. The release config's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/releaseConfigs/my-releaseConfig', - * }, - * ); + * const res = + * await dataform.projects.locations.repositories.queryDirectoryContents({ + * // Optional. The Commit SHA for the commit to query from. If unset, the directory will be queried from HEAD. + * commitSha: 'placeholder-value', + * // Required. The repository's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', + * // Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `QueryRepositoryDirectoryContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryRepositoryDirectoryContents`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Optional. The directory's full path including directory name, relative to root. If left unset, the root is used. + * path: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "codeCompilationConfig": {}, - * // "cronSchedule": "my_cronSchedule", - * // "disabled": false, - * // "gitCommitish": "my_gitCommitish", - * // "internalMetadata": "my_internalMetadata", - * // "name": "my_name", - * // "recentScheduledReleaseRecords": [], - * // "releaseCompilationResult": "my_releaseCompilationResult", - * // "timeZone": "my_timeZone" + * // "directoryEntries": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -7196,54 +7095,62 @@ export namespace dataform_v1 { * @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$Repositories$Releaseconfigs$Get, + queryDirectoryContents( + params: Params$Resource$Projects$Locations$Repositories$Querydirectorycontents, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get, + queryDirectoryContents( + params?: Params$Resource$Projects$Locations$Repositories$Querydirectorycontents, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + queryDirectoryContents( + params: Params$Resource$Projects$Locations$Repositories$Querydirectorycontents, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + queryDirectoryContents( + params: Params$Resource$Projects$Locations$Repositories$Querydirectorycontents, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get, - callback: BodyResponseCallback + queryDirectoryContents( + params: Params$Resource$Projects$Locations$Repositories$Querydirectorycontents, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + queryDirectoryContents( + callback: BodyResponseCallback + ): void; + queryDirectoryContents( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Querydirectorycontents + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get; + {}) as Params$Resource$Projects$Locations$Repositories$Querydirectorycontents; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get; + {} as Params$Resource$Projects$Locations$Repositories$Querydirectorycontents; options = {}; } @@ -7256,7 +7163,10 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+name}:queryDirectoryContents').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, @@ -7268,17 +7178,19 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Lists ReleaseConfigs in a given Repository. + * Returns the contents of a file (inside a Repository). The Repository must not have a value for `git_remote_settings.url`. * @example * ```js * // Before running the sample: @@ -7310,23 +7222,19 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.releaseConfigs.list({ - * // Optional. Maximum number of release configs to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous `ListReleaseConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListReleaseConfigs`, with the exception of `page_size`, must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The repository in which to list release configs. Must be in the format `projects/x/locations/x/repositories/x`. - * parent: - * 'projects/my-project/locations/my-location/repositories/my-repositorie', - * }); + * const res = await dataform.projects.locations.repositories.readFile({ + * // Optional. The commit SHA for the commit to read from. If unset, the file will be read from HEAD. + * commitSha: 'placeholder-value', + * // Required. The repository's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie', + * // Required. Full file path to read including filename, from repository root. + * path: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "releaseConfigs": [], - * // "unreachable": [] + * // "contents": "my_contents" * // } * } * @@ -7342,58 +7250,57 @@ export namespace dataform_v1 { * @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$Repositories$Releaseconfigs$List, + readFile( + params: Params$Resource$Projects$Locations$Repositories$Readfile, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List, + readFile( + params?: Params$Resource$Projects$Locations$Repositories$Readfile, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List, + ): Promise>; + readFile( + params: Params$Resource$Projects$Locations$Repositories$Readfile, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List, + readFile( + params: Params$Resource$Projects$Locations$Repositories$Readfile, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List, - callback: BodyResponseCallback + readFile( + params: Params$Resource$Projects$Locations$Repositories$Readfile, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + readFile( + callback: BodyResponseCallback ): void; - list( + readFile( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Readfile + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List; + {}) as Params$Resource$Projects$Locations$Repositories$Readfile; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List; + params = {} as Params$Resource$Projects$Locations$Repositories$Readfile; options = {}; } @@ -7406,7 +7313,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/releaseConfigs').replace( + url: (rootUrl + '/v1/{+name}:readFile').replace( /([^:]\/)\/+/g, '$1' ), @@ -7416,22 +7323,22 @@ export namespace dataform_v1 { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a single ReleaseConfig. **Note:** *This method does not fully implement [AIP/134](https://google.aip.dev/134). The wildcard entry (\*) is treated as a bad request, and when the `field_mask` is omitted, the request is treated as a full update on all modifiable fields.* + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. * @example * ```js * // Before running the sample: @@ -7463,42 +7370,26 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.releaseConfigs.patch({ - * // Identifier. The release config's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/releaseConfigs/my-releaseConfig', - * // Optional. Specifies the fields to be updated in the release config. If left unset, all fields will be updated. - * updateMask: 'placeholder-value', + * const res = await dataform.projects.locations.repositories.setIamPolicy({ + * // 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: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "codeCompilationConfig": {}, - * // "cronSchedule": "my_cronSchedule", - * // "disabled": false, - * // "gitCommitish": "my_gitCommitish", - * // "internalMetadata": "my_internalMetadata", - * // "name": "my_name", - * // "recentScheduledReleaseRecords": [], - * // "releaseCompilationResult": "my_releaseCompilationResult", - * // "timeZone": "my_timeZone" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "codeCompilationConfig": {}, - * // "cronSchedule": "my_cronSchedule", - * // "disabled": false, - * // "gitCommitish": "my_gitCommitish", - * // "internalMetadata": "my_internalMetadata", - * // "name": "my_name", - * // "recentScheduledReleaseRecords": [], - * // "releaseCompilationResult": "my_releaseCompilationResult", - * // "timeZone": "my_timeZone" + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -7514,54 +7405,54 @@ export namespace dataform_v1 { * @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$Repositories$Releaseconfigs$Patch, + setIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Setiampolicy, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch, + setIamPolicy( + params?: Params$Resource$Projects$Locations$Repositories$Setiampolicy, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch, + ): Promise>; + setIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Setiampolicy, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch; + {}) as Params$Resource$Projects$Locations$Repositories$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch; + {} as Params$Resource$Projects$Locations$Repositories$Setiampolicy; options = {}; } @@ -7574,93 +7465,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create extends StandardParameters { - /** - * Required. The repository in which to create the release config. Must be in the format `projects/x/locations/x/repositories/x`. - */ - parent?: string; - /** - * Required. The ID to use for the release config, which will become the final component of the release config's resource name. - */ - releaseConfigId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ReleaseConfig; - } - export interface Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete extends StandardParameters { - /** - * Required. The release config's name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get extends StandardParameters { - /** - * Required. The release config's name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List extends StandardParameters { - /** - * Optional. Maximum number of release configs to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous `ListReleaseConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListReleaseConfigs`, with the exception of `page_size`, must match the call that provided the page token. - */ - pageToken?: string; - /** - * Required. The repository in which to list release configs. Must be in the format `projects/x/locations/x/repositories/x`. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch extends StandardParameters { - /** - * Identifier. The release config's name. - */ - name?: string; - /** - * Optional. Specifies the fields to be updated in the release config. If left unset, all fields will be updated. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ReleaseConfig; - } - - export class Resource$Projects$Locations$Repositories$Workflowconfigs { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new WorkflowConfig in a given Repository. + * 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. * @example * ```js * // Before running the sample: @@ -7692,45 +7522,26 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.workflowConfigs.create({ - * // Required. The repository in which to create the workflow config. Must be in the format `projects/x/locations/x/repositories/x`. - * parent: + * const res = await dataform.projects.locations.repositories.testIamPermissions( + * { + * // 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: * 'projects/my-project/locations/my-location/repositories/my-repositorie', - * // Required. The ID to use for the workflow config, which will become the final component of the workflow config's resource name. - * workflowConfigId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "createTime": "my_createTime", - * // "cronSchedule": "my_cronSchedule", - * // "disabled": false, - * // "internalMetadata": "my_internalMetadata", - * // "invocationConfig": {}, - * // "name": "my_name", - * // "recentScheduledExecutionRecords": [], - * // "releaseConfig": "my_releaseConfig", - * // "timeZone": "my_timeZone", - * // "updateTime": "my_updateTime" + * // "permissions": [] * // } * }, - * }); + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "cronSchedule": "my_cronSchedule", - * // "disabled": false, - * // "internalMetadata": "my_internalMetadata", - * // "invocationConfig": {}, - * // "name": "my_name", - * // "recentScheduledExecutionRecords": [], - * // "releaseConfig": "my_releaseConfig", - * // "timeZone": "my_timeZone", - * // "updateTime": "my_updateTime" + * // "permissions": [] * // } * } * @@ -7746,54 +7557,58 @@ export namespace dataform_v1 { * @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$Repositories$Workflowconfigs$Create, + testIamPermissions( + params: Params$Resource$Projects$Locations$Repositories$Testiampermissions, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create, + testIamPermissions( + params?: Params$Resource$Projects$Locations$Repositories$Testiampermissions, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create, + ): Promise>; + testIamPermissions( + params: Params$Resource$Projects$Locations$Repositories$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Repositories$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Repositories$Testiampermissions, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create; + {}) as Params$Resource$Projects$Locations$Repositories$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create; + {} as Params$Resource$Projects$Locations$Repositories$Testiampermissions; options = {}; } @@ -7806,7 +7621,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/workflowConfigs').replace( + url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( /([^:]\/)\/+/g, '$1' ), @@ -7816,22 +7631,214 @@ export namespace dataform_v1 { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Repositories$Commit extends StandardParameters { /** - * Deletes a single WorkflowConfig. + * Required. The repository's name. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CommitRepositoryChangesRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Computeaccesstokenstatus extends StandardParameters { + /** + * Required. The repository's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Create extends StandardParameters { + /** + * Required. The location in which to create the repository. Must be in the format `projects/x/locations/x`. + */ + parent?: string; + /** + * Required. The ID to use for the repository, which will become the final component of the repository's resource name. + */ + repositoryId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Repository; + } + export interface Params$Resource$Projects$Locations$Repositories$Delete extends StandardParameters { + /** + * Optional. If set to true, child resources of this repository (compilation results and workflow invocations) will also be deleted. Otherwise, the request will only succeed if the repository has no child resources. **Note:** *This flag doesn't support deletion of workspaces, release configs or workflow configs. If any of such resources exists in the repository, the request will fail.*. + */ + force?: boolean; + /** + * Required. The repository's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Fetchhistory extends StandardParameters { + /** + * Required. The repository's name. + */ + name?: string; + /** + * Optional. Maximum number of commits to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `FetchRepositoryHistory` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `FetchRepositoryHistory`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Fetchremotebranches extends StandardParameters { + /** + * Required. The repository's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Get extends StandardParameters { + /** + * Required. The repository's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$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$Repositories$List extends StandardParameters { + /** + * Optional. Filter for the returned list. + */ + filter?: string; + /** + * Optional. This field only supports ordering by `name`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. + */ + orderBy?: string; + /** + * Optional. Maximum number of repositories to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `ListRepositories` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListRepositories`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The location in which to list repositories. Must be in the format `projects/x/locations/x`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Move extends StandardParameters { + /** + * Required. The full resource name of the repository to move. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$MoveRepositoryRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Patch extends StandardParameters { + /** + * Identifier. The repository's name. + */ + name?: string; + /** + * Optional. Specifies the fields to be updated in the repository. If left unset, all fields will be updated. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Repository; + } + export interface Params$Resource$Projects$Locations$Repositories$Querydirectorycontents extends StandardParameters { + /** + * Optional. The Commit SHA for the commit to query from. If unset, the directory will be queried from HEAD. + */ + commitSha?: string; + /** + * Required. The repository's name. + */ + name?: string; + /** + * Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `QueryRepositoryDirectoryContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryRepositoryDirectoryContents`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + /** + * Optional. The directory's full path including directory name, relative to root. If left unset, the root is used. + */ + path?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Readfile extends StandardParameters { + /** + * Optional. The commit SHA for the commit to read from. If unset, the file will be read from HEAD. + */ + commitSha?: string; + /** + * Required. The repository's name. + */ + name?: string; + /** + * Required. Full file path to read including filename, from repository root. + */ + path?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$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$Repositories$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$Compilationresults { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new CompilationResult in a given project and location. * @example * ```js * // Before running the sample: @@ -7864,14 +7871,47 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workflowConfigs.delete({ - * // Required. The workflow config's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowConfigs/my-workflowConfig', + * await dataform.projects.locations.repositories.compilationResults.create({ + * // Required. The repository in which to create the compilation result. Must be in the format `projects/x/locations/x/repositories/x`. + * parent: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "codeCompilationConfig": {}, + * // "compilationErrors": [], + * // "createTime": "my_createTime", + * // "dataEncryptionState": {}, + * // "dataformCoreVersion": "my_dataformCoreVersion", + * // "gitCommitish": "my_gitCommitish", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "privateResourceMetadata": {}, + * // "releaseConfig": "my_releaseConfig", + * // "resolvedGitCommitSha": "my_resolvedGitCommitSha", + * // "workspace": "my_workspace" + * // } + * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "codeCompilationConfig": {}, + * // "compilationErrors": [], + * // "createTime": "my_createTime", + * // "dataEncryptionState": {}, + * // "dataformCoreVersion": "my_dataformCoreVersion", + * // "gitCommitish": "my_gitCommitish", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "privateResourceMetadata": {}, + * // "releaseConfig": "my_releaseConfig", + * // "resolvedGitCommitSha": "my_resolvedGitCommitSha", + * // "workspace": "my_workspace" + * // } * } * * main().catch(e => { @@ -7886,54 +7926,54 @@ export namespace dataform_v1 { * @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$Repositories$Workflowconfigs$Delete, + create( + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Create, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete, + create( + params?: Params$Resource$Projects$Locations$Repositories$Compilationresults$Create, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Create, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Compilationresults$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete; + {}) as Params$Resource$Projects$Locations$Repositories$Compilationresults$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete; + {} as Params$Resource$Projects$Locations$Repositories$Compilationresults$Create; options = {}; } @@ -7946,29 +7986,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+parent}/compilationResults').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Fetches a single WorkflowConfig. + * Fetches a single CompilationResult. * @example * ```js * // Before running the sample: @@ -8001,24 +8044,26 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workflowConfigs.get({ - * // Required. The workflow config's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowConfigs/my-workflowConfig', + * await dataform.projects.locations.repositories.compilationResults.get({ + * // Required. The compilation result's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/compilationResults/my-compilationResult', * }); * console.log(res.data); * * // Example response * // { + * // "codeCompilationConfig": {}, + * // "compilationErrors": [], * // "createTime": "my_createTime", - * // "cronSchedule": "my_cronSchedule", - * // "disabled": false, + * // "dataEncryptionState": {}, + * // "dataformCoreVersion": "my_dataformCoreVersion", + * // "gitCommitish": "my_gitCommitish", * // "internalMetadata": "my_internalMetadata", - * // "invocationConfig": {}, * // "name": "my_name", - * // "recentScheduledExecutionRecords": [], + * // "privateResourceMetadata": {}, * // "releaseConfig": "my_releaseConfig", - * // "timeZone": "my_timeZone", - * // "updateTime": "my_updateTime" + * // "resolvedGitCommitSha": "my_resolvedGitCommitSha", + * // "workspace": "my_workspace" * // } * } * @@ -8035,53 +8080,53 @@ export namespace dataform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get, + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get, + params?: Params$Resource$Projects$Locations$Repositories$Compilationresults$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get, + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Compilationresults$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get; + {}) as Params$Resource$Projects$Locations$Repositories$Compilationresults$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get; + {} as Params$Resource$Projects$Locations$Repositories$Compilationresults$Get; options = {}; } @@ -8106,17 +8151,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists WorkflowConfigs in a given Repository. + * Lists CompilationResults in a given Repository. * @example * ```js * // Before running the sample: @@ -8149,12 +8194,16 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workflowConfigs.list({ - * // Optional. Maximum number of workflow configs to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * await dataform.projects.locations.repositories.compilationResults.list({ + * // Optional. Filter for the returned list. + * filter: 'placeholder-value', + * // Optional. This field only supports ordering by `name` and `create_time`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. + * orderBy: 'placeholder-value', + * // Optional. Maximum number of compilation results to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous `ListWorkflowConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListWorkflowConfigs`, with the exception of `page_size`, must match the call that provided the page token. + * // Optional. Page token received from a previous `ListCompilationResults` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCompilationResults`, with the exception of `page_size`, must match the call that provided the page token. * pageToken: 'placeholder-value', - * // Required. The repository in which to list workflow configs. Must be in the format `projects/x/locations/x/repositories/x`. + * // Required. The repository in which to list compilation results. Must be in the format `projects/x/locations/x/repositories/x`. * parent: * 'projects/my-project/locations/my-location/repositories/my-repositorie', * }); @@ -8162,9 +8211,9 @@ export namespace dataform_v1 { * * // Example response * // { + * // "compilationResults": [], * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [], - * // "workflowConfigs": [] + * // "unreachable": [] * // } * } * @@ -8181,57 +8230,57 @@ export namespace dataform_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List, + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List, + params?: Params$Resource$Projects$Locations$Repositories$Compilationresults$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List, + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List, + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Compilationresults$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List; + {}) as Params$Resource$Projects$Locations$Repositories$Compilationresults$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List; + {} as Params$Resource$Projects$Locations$Repositories$Compilationresults$List; options = {}; } @@ -8244,7 +8293,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/workflowConfigs').replace( + url: (rootUrl + '/v1/{+parent}/compilationResults').replace( /([^:]\/)\/+/g, '$1' ), @@ -8259,17 +8308,19 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Updates a single WorkflowConfig. **Note:** *This method does not fully implement [AIP/134](https://google.aip.dev/134). The wildcard entry (\*) is treated as a bad request, and when the `field_mask` is omitted, the request is treated as a full update on all modifiable fields.* + * Returns CompilationResultActions in a given CompilationResult. * @example * ```js * // Before running the sample: @@ -8302,43 +8353,22 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workflowConfigs.patch({ - * // Identifier. The workflow config's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowConfigs/my-workflowConfig', - * // Optional. Specifies the fields to be updated in the workflow config. If left unset, all fields will be updated. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "cronSchedule": "my_cronSchedule", - * // "disabled": false, - * // "internalMetadata": "my_internalMetadata", - * // "invocationConfig": {}, - * // "name": "my_name", - * // "recentScheduledExecutionRecords": [], - * // "releaseConfig": "my_releaseConfig", - * // "timeZone": "my_timeZone", - * // "updateTime": "my_updateTime" - * // } - * }, + * await dataform.projects.locations.repositories.compilationResults.query({ + * // Optional. Optional filter for the returned list. Filtering is only currently supported on the `file_path` field. + * filter: 'placeholder-value', + * // Required. The compilation result's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/compilationResults/my-compilationResult', + * // Optional. Maximum number of compilation results to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `QueryCompilationResultActions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryCompilationResultActions`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "cronSchedule": "my_cronSchedule", - * // "disabled": false, - * // "internalMetadata": "my_internalMetadata", - * // "invocationConfig": {}, - * // "name": "my_name", - * // "recentScheduledExecutionRecords": [], - * // "releaseConfig": "my_releaseConfig", - * // "timeZone": "my_timeZone", - * // "updateTime": "my_updateTime" + * // "compilationResultActions": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -8354,54 +8384,62 @@ export namespace dataform_v1 { * @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$Repositories$Workflowconfigs$Patch, + query( + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Query, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch, + query( + params?: Params$Resource$Projects$Locations$Repositories$Compilationresults$Query, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch, + ): Promise< + GaxiosResponseWithHTTP2 + >; + query( + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Query, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + query( + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Query, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch, - callback: BodyResponseCallback + query( + params: Params$Resource$Projects$Locations$Repositories$Compilationresults$Query, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + query( + callback: BodyResponseCallback + ): void; + query( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Compilationresults$Query + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch; + {}) as Params$Resource$Projects$Locations$Repositories$Compilationresults$Query; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch; + {} as Params$Resource$Projects$Locations$Repositories$Compilationresults$Query; options = {}; } @@ -8414,8 +8452,8 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1/{+name}:query').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options @@ -8426,81 +8464,84 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create extends StandardParameters { + export interface Params$Resource$Projects$Locations$Repositories$Compilationresults$Create extends StandardParameters { /** - * Required. The repository in which to create the workflow config. Must be in the format `projects/x/locations/x/repositories/x`. + * Required. The repository in which to create the compilation result. Must be in the format `projects/x/locations/x/repositories/x`. */ parent?: string; - /** - * Required. The ID to use for the workflow config, which will become the final component of the workflow config's resource name. - */ - workflowConfigId?: string; /** * Request body metadata */ - requestBody?: Schema$WorkflowConfig; + requestBody?: Schema$CompilationResult; } - export interface Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Repositories$Compilationresults$Get extends StandardParameters { /** - * Required. The workflow config's name. + * Required. The compilation result's name. */ name?: string; } - export interface Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Repositories$Compilationresults$List extends StandardParameters { /** - * Required. The workflow config's name. + * Optional. Filter for the returned list. */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List extends StandardParameters { + filter?: string; /** - * Optional. Maximum number of workflow configs to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * Optional. This field only supports ordering by `name` and `create_time`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. + */ + orderBy?: string; + /** + * Optional. Maximum number of compilation results to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. */ pageSize?: number; /** - * Optional. Page token received from a previous `ListWorkflowConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListWorkflowConfigs`, with the exception of `page_size`, must match the call that provided the page token. + * Optional. Page token received from a previous `ListCompilationResults` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCompilationResults`, with the exception of `page_size`, must match the call that provided the page token. */ pageToken?: string; /** - * Required. The repository in which to list workflow configs. Must be in the format `projects/x/locations/x/repositories/x`. + * Required. The repository in which to list compilation results. Must be in the format `projects/x/locations/x/repositories/x`. */ parent?: string; } - export interface Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch extends StandardParameters { + export interface Params$Resource$Projects$Locations$Repositories$Compilationresults$Query extends StandardParameters { /** - * Identifier. The workflow config's name. + * Optional. Optional filter for the returned list. Filtering is only currently supported on the `file_path` field. + */ + filter?: string; + /** + * Required. The compilation result's name. */ name?: string; /** - * Optional. Specifies the fields to be updated in the workflow config. If left unset, all fields will be updated. + * Optional. Maximum number of compilation results to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. */ - updateMask?: string; - + pageSize?: number; /** - * Request body metadata + * Optional. Page token received from a previous `QueryCompilationResultActions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryCompilationResultActions`, with the exception of `page_size`, must match the call that provided the page token. */ - requestBody?: Schema$WorkflowConfig; + pageToken?: string; } - export class Resource$Projects$Locations$Repositories$Workflowinvocations { + export class Resource$Projects$Locations$Repositories$Releaseconfigs { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Requests cancellation of a running WorkflowInvocation. + * Creates a new ReleaseConfig in a given Repository. * @example * ```js * // Before running the sample: @@ -8533,20 +8574,43 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workflowInvocations.cancel({ - * // Required. The workflow invocation resource's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowInvocations/my-workflowInvocation', + * await dataform.projects.locations.repositories.releaseConfigs.create({ + * // Required. The repository in which to create the release config. Must be in the format `projects/x/locations/x/repositories/x`. + * parent: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * // Required. The ID to use for the release config, which will become the final component of the release config's resource name. + * releaseConfigId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters - * // {} + * // { + * // "codeCompilationConfig": {}, + * // "cronSchedule": "my_cronSchedule", + * // "disabled": false, + * // "gitCommitish": "my_gitCommitish", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "recentScheduledReleaseRecords": [], + * // "releaseCompilationResult": "my_releaseCompilationResult", + * // "timeZone": "my_timeZone" + * // } * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "codeCompilationConfig": {}, + * // "cronSchedule": "my_cronSchedule", + * // "disabled": false, + * // "gitCommitish": "my_gitCommitish", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "recentScheduledReleaseRecords": [], + * // "releaseCompilationResult": "my_releaseCompilationResult", + * // "timeZone": "my_timeZone" + * // } * } * * main().catch(e => { @@ -8561,62 +8625,54 @@ export namespace dataform_v1 { * @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$Repositories$Workflowinvocations$Cancel, + create( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel, + create( + params?: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - cancel( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - cancel( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cancel( - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create, + callback: BodyResponseCallback ): void; - cancel( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel; + {}) as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel; + {} as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create; options = {}; } @@ -8629,31 +8685,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+parent}/releaseConfigs').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a new WorkflowInvocation in a given Repository. + * Deletes a single ReleaseConfig. * @example * ```js * // Before running the sample: @@ -8686,43 +8743,14 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workflowInvocations.create({ - * // Required. The repository in which to create the workflow invocation. Must be in the format `projects/x/locations/x/repositories/x`. - * parent: - * 'projects/my-project/locations/my-location/repositories/my-repositorie', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "compilationResult": "my_compilationResult", - * // "dataEncryptionState": {}, - * // "internalMetadata": "my_internalMetadata", - * // "invocationConfig": {}, - * // "invocationTiming": {}, - * // "name": "my_name", - * // "privateResourceMetadata": {}, - * // "resolvedCompilationResult": "my_resolvedCompilationResult", - * // "state": "my_state", - * // "workflowConfig": "my_workflowConfig" - * // } - * }, + * await dataform.projects.locations.repositories.releaseConfigs.delete({ + * // Required. The release config's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/releaseConfigs/my-releaseConfig', * }); * console.log(res.data); * * // Example response - * // { - * // "compilationResult": "my_compilationResult", - * // "dataEncryptionState": {}, - * // "internalMetadata": "my_internalMetadata", - * // "invocationConfig": {}, - * // "invocationTiming": {}, - * // "name": "my_name", - * // "privateResourceMetadata": {}, - * // "resolvedCompilationResult": "my_resolvedCompilationResult", - * // "state": "my_state", - * // "workflowConfig": "my_workflowConfig" - * // } + * // {} * } * * main().catch(e => { @@ -8737,54 +8765,54 @@ export namespace dataform_v1 { * @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$Repositories$Workflowinvocations$Create, + delete( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create, + delete( + params?: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create; + {}) as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create; + {} as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete; options = {}; } @@ -8797,32 +8825,29 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/workflowInvocations').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a single WorkflowInvocation. + * Fetches a single ReleaseConfig. * @example * ```js * // Before running the sample: @@ -8854,15 +8879,26 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.workflowInvocations.delete({ - * // Required. The workflow invocation resource's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowInvocations/my-workflowInvocation', - * }); + * const res = await dataform.projects.locations.repositories.releaseConfigs.get( + * { + * // Required. The release config's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/releaseConfigs/my-releaseConfig', + * }, + * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "codeCompilationConfig": {}, + * // "cronSchedule": "my_cronSchedule", + * // "disabled": false, + * // "gitCommitish": "my_gitCommitish", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "recentScheduledReleaseRecords": [], + * // "releaseCompilationResult": "my_releaseCompilationResult", + * // "timeZone": "my_timeZone" + * // } * } * * main().catch(e => { @@ -8877,54 +8913,54 @@ export namespace dataform_v1 { * @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$Repositories$Workflowinvocations$Delete, + get( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete, + get( + params?: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete; + {}) as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete; + {} as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get; options = {}; } @@ -8938,7 +8974,7 @@ export namespace dataform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options @@ -8949,17 +8985,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Fetches a single WorkflowInvocation. + * Lists ReleaseConfigs in a given Repository. * @example * ```js * // Before running the sample: @@ -8992,24 +9028,22 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workflowInvocations.get({ - * // Required. The workflow invocation resource's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowInvocations/my-workflowInvocation', + * await dataform.projects.locations.repositories.releaseConfigs.list({ + * // Optional. Maximum number of release configs to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `ListReleaseConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListReleaseConfigs`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The repository in which to list release configs. Must be in the format `projects/x/locations/x/repositories/x`. + * parent: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', * }); * console.log(res.data); * * // Example response * // { - * // "compilationResult": "my_compilationResult", - * // "dataEncryptionState": {}, - * // "internalMetadata": "my_internalMetadata", - * // "invocationConfig": {}, - * // "invocationTiming": {}, - * // "name": "my_name", - * // "privateResourceMetadata": {}, - * // "resolvedCompilationResult": "my_resolvedCompilationResult", - * // "state": "my_state", - * // "workflowConfig": "my_workflowConfig" + * // "nextPageToken": "my_nextPageToken", + * // "releaseConfigs": [], + * // "unreachable": [] * // } * } * @@ -9025,54 +9059,58 @@ export namespace dataform_v1 { * @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$Repositories$Workflowinvocations$Get, + list( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get, + list( + params?: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get; + {}) as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get; + {} as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List; options = {}; } @@ -9085,29 +9123,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+parent}/releaseConfigs').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists WorkflowInvocations in a given Repository. + * Updates a single ReleaseConfig. **Note:** *This method does not fully implement [AIP/134](https://google.aip.dev/134). The wildcard entry (\*) is treated as a bad request, and when the `field_mask` is omitted, the request is treated as a full update on all modifiable fields.* * @example * ```js * // Before running the sample: @@ -9140,26 +9181,41 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workflowInvocations.list({ - * // Optional. Filter for the returned list. - * filter: 'placeholder-value', - * // Optional. This field only supports ordering by `name`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. - * orderBy: 'placeholder-value', - * // Optional. Maximum number of workflow invocations to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous `ListWorkflowInvocations` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListWorkflowInvocations`, with the exception of `page_size`, must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The parent resource of the WorkflowInvocation type. Must be in the format `projects/x/locations/x/repositories/x`. - * parent: - * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * await dataform.projects.locations.repositories.releaseConfigs.patch({ + * // Identifier. The release config's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/releaseConfigs/my-releaseConfig', + * // Optional. Specifies the fields to be updated in the release config. If left unset, all fields will be updated. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "codeCompilationConfig": {}, + * // "cronSchedule": "my_cronSchedule", + * // "disabled": false, + * // "gitCommitish": "my_gitCommitish", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "recentScheduledReleaseRecords": [], + * // "releaseCompilationResult": "my_releaseCompilationResult", + * // "timeZone": "my_timeZone" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [], - * // "workflowInvocations": [] + * // "codeCompilationConfig": {}, + * // "cronSchedule": "my_cronSchedule", + * // "disabled": false, + * // "gitCommitish": "my_gitCommitish", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "recentScheduledReleaseRecords": [], + * // "releaseCompilationResult": "my_releaseCompilationResult", + * // "timeZone": "my_timeZone" * // } * } * @@ -9175,58 +9231,54 @@ export namespace dataform_v1 { * @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$Repositories$Workflowinvocations$List, + patch( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List, + patch( + params?: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List, - callback: BodyResponseCallback - ): void; - list( - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch, + callback: BodyResponseCallback ): void; - list( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List; + {}) as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List; + {} as Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch; options = {}; } @@ -9239,34 +9291,93 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/workflowInvocations').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Create extends StandardParameters { /** - * Returns WorkflowInvocationActions in a given WorkflowInvocation. + * Required. The repository in which to create the release config. Must be in the format `projects/x/locations/x/repositories/x`. + */ + parent?: string; + /** + * Required. The ID to use for the release config, which will become the final component of the release config's resource name. + */ + releaseConfigId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ReleaseConfig; + } + export interface Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Delete extends StandardParameters { + /** + * Required. The release config's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Get extends StandardParameters { + /** + * Required. The release config's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Releaseconfigs$List extends StandardParameters { + /** + * Optional. Maximum number of release configs to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `ListReleaseConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListReleaseConfigs`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The repository in which to list release configs. Must be in the format `projects/x/locations/x/repositories/x`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Releaseconfigs$Patch extends StandardParameters { + /** + * Identifier. The release config's name. + */ + name?: string; + /** + * Optional. Specifies the fields to be updated in the release config. If left unset, all fields will be updated. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ReleaseConfig; + } + + export class Resource$Projects$Locations$Repositories$Workflowconfigs { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new WorkflowConfig in a given Repository. * @example * ```js * // Before running the sample: @@ -9299,20 +9410,44 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workflowInvocations.query({ - * // Required. The workflow invocation's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowInvocations/my-workflowInvocation', - * // Optional. Maximum number of workflow invocations to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous `QueryWorkflowInvocationActions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryWorkflowInvocationActions`, with the exception of `page_size`, must match the call that provided the page token. - * pageToken: 'placeholder-value', + * await dataform.projects.locations.repositories.workflowConfigs.create({ + * // Required. The repository in which to create the workflow config. Must be in the format `projects/x/locations/x/repositories/x`. + * parent: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * // Required. The ID to use for the workflow config, which will become the final component of the workflow config's resource name. + * workflowConfigId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "cronSchedule": "my_cronSchedule", + * // "disabled": false, + * // "internalMetadata": "my_internalMetadata", + * // "invocationConfig": {}, + * // "name": "my_name", + * // "recentScheduledExecutionRecords": [], + * // "releaseConfig": "my_releaseConfig", + * // "timeZone": "my_timeZone", + * // "updateTime": "my_updateTime" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "workflowInvocationActions": [] + * // "createTime": "my_createTime", + * // "cronSchedule": "my_cronSchedule", + * // "disabled": false, + * // "internalMetadata": "my_internalMetadata", + * // "invocationConfig": {}, + * // "name": "my_name", + * // "recentScheduledExecutionRecords": [], + * // "releaseConfig": "my_releaseConfig", + * // "timeZone": "my_timeZone", + * // "updateTime": "my_updateTime" * // } * } * @@ -9328,62 +9463,54 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - query( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query, + create( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create, options: StreamMethodOptions ): Promise>; - query( - params?: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query, + create( + params?: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - query( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - query( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - query( - params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - query( - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create, + callback: BodyResponseCallback ): void; - query( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query; + {}) as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query; + {} as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create; options = {}; } @@ -9396,109 +9523,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:query').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+parent}/workflowConfigs').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel extends StandardParameters { - /** - * Required. The workflow invocation resource's name. - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CancelWorkflowInvocationRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create extends StandardParameters { - /** - * Required. The repository in which to create the workflow invocation. Must be in the format `projects/x/locations/x/repositories/x`. - */ - parent?: string; /** - * Request body metadata - */ - requestBody?: Schema$WorkflowInvocation; - } - export interface Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete extends StandardParameters { - /** - * Required. The workflow invocation resource's name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get extends StandardParameters { - /** - * Required. The workflow invocation resource's name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List extends StandardParameters { - /** - * Optional. Filter for the returned list. - */ - filter?: string; - /** - * Optional. This field only supports ordering by `name`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. - */ - orderBy?: string; - /** - * Optional. Maximum number of workflow invocations to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous `ListWorkflowInvocations` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListWorkflowInvocations`, with the exception of `page_size`, must match the call that provided the page token. - */ - pageToken?: string; - /** - * Required. The parent resource of the WorkflowInvocation type. Must be in the format `projects/x/locations/x/repositories/x`. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query extends StandardParameters { - /** - * Required. The workflow invocation's name. - */ - name?: string; - /** - * Optional. Maximum number of workflow invocations to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous `QueryWorkflowInvocationActions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryWorkflowInvocationActions`, with the exception of `page_size`, must match the call that provided the page token. - */ - pageToken?: string; - } - - export class Resource$Projects$Locations$Repositories$Workspaces { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Applies a Git commit for uncommitted files in a Workspace. + * Deletes a single WorkflowConfig. * @example * ```js * // Before running the sample: @@ -9530,20 +9580,11 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.workspaces.commit({ - * // Required. The workspace's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "author": {}, - * // "commitMessage": "my_commitMessage", - * // "paths": [] - * // } - * }, - * }); + * const res = + * await dataform.projects.locations.repositories.workflowConfigs.delete({ + * // Required. The workflow config's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowConfigs/my-workflowConfig', + * }); * console.log(res.data); * * // Example response @@ -9562,58 +9603,54 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - commit( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Commit, + delete( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete, options: StreamMethodOptions ): Promise>; - commit( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Commit, + delete( + params?: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete, options?: MethodOptions - ): Promise>; - commit( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Commit, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - commit( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Commit, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - commit( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Commit, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - commit( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete, + callback: BodyResponseCallback ): void; - commit( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Commit - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Commit; + {}) as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Commit; + {} as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete; options = {}; } @@ -9626,8 +9663,8 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:commit').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options @@ -9638,19 +9675,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a new Workspace in a given Repository. + * Fetches a single WorkflowConfig. * @example * ```js * // Before running the sample: @@ -9682,34 +9717,25 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.workspaces.create({ - * // Required. The repository in which to create the workspace. Must be in the format `projects/x/locations/x/repositories/x`. - * parent: - * 'projects/my-project/locations/my-location/repositories/my-repositorie', - * // Required. The ID to use for the workspace, which will become the final component of the workspace's resource name. - * workspaceId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "dataEncryptionState": {}, - * // "internalMetadata": "my_internalMetadata", - * // "name": "my_name", - * // "privateResourceMetadata": {} - * // } - * }, - * }); + * const res = + * await dataform.projects.locations.repositories.workflowConfigs.get({ + * // Required. The workflow config's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowConfigs/my-workflowConfig', + * }); * console.log(res.data); * * // Example response * // { * // "createTime": "my_createTime", - * // "dataEncryptionState": {}, + * // "cronSchedule": "my_cronSchedule", + * // "disabled": false, * // "internalMetadata": "my_internalMetadata", + * // "invocationConfig": {}, * // "name": "my_name", - * // "privateResourceMetadata": {} + * // "recentScheduledExecutionRecords": [], + * // "releaseConfig": "my_releaseConfig", + * // "timeZone": "my_timeZone", + * // "updateTime": "my_updateTime" * // } * } * @@ -9725,54 +9751,54 @@ export namespace dataform_v1 { * @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$Repositories$Workspaces$Create, + get( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Create, + get( + params?: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Create, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Create, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Create; + {}) as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Create; + {} as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get; options = {}; } @@ -9785,32 +9811,29 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/workspaces').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a single Workspace. + * Lists WorkflowConfigs in a given Repository. * @example * ```js * // Before running the sample: @@ -9842,14 +9865,24 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.workspaces.delete({ - * // Required. The workspace resource's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', - * }); + * const res = + * await dataform.projects.locations.repositories.workflowConfigs.list({ + * // Optional. Maximum number of workflow configs to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `ListWorkflowConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListWorkflowConfigs`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The repository in which to list workflow configs. Must be in the format `projects/x/locations/x/repositories/x`. + * parent: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [], + * // "workflowConfigs": [] + * // } * } * * main().catch(e => { @@ -9864,54 +9897,58 @@ export namespace dataform_v1 { * @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$Repositories$Workspaces$Delete, + list( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Delete, + list( + params?: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Delete, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Delete; + {}) as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Delete; + {} as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List; options = {}; } @@ -9924,29 +9961,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+parent}/workflowConfigs').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Fetches Git diff for an uncommitted file in a Workspace. + * Updates a single WorkflowConfig. **Note:** *This method does not fully implement [AIP/134](https://google.aip.dev/134). The wildcard entry (\*) is treated as a bad request, and when the `field_mask` is omitted, the request is treated as a full update on all modifiable fields.* * @example * ```js * // Before running the sample: @@ -9979,18 +10019,43 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workspaces.fetchFileDiff({ - * // Required. The file's full path including filename, relative to the workspace root. - * path: 'placeholder-value', - * // Required. The workspace's name. - * workspace: - * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * await dataform.projects.locations.repositories.workflowConfigs.patch({ + * // Identifier. The workflow config's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowConfigs/my-workflowConfig', + * // Optional. Specifies the fields to be updated in the workflow config. If left unset, all fields will be updated. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "cronSchedule": "my_cronSchedule", + * // "disabled": false, + * // "internalMetadata": "my_internalMetadata", + * // "invocationConfig": {}, + * // "name": "my_name", + * // "recentScheduledExecutionRecords": [], + * // "releaseConfig": "my_releaseConfig", + * // "timeZone": "my_timeZone", + * // "updateTime": "my_updateTime" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "formattedDiff": "my_formattedDiff" + * // "createTime": "my_createTime", + * // "cronSchedule": "my_cronSchedule", + * // "disabled": false, + * // "internalMetadata": "my_internalMetadata", + * // "invocationConfig": {}, + * // "name": "my_name", + * // "recentScheduledExecutionRecords": [], + * // "releaseConfig": "my_releaseConfig", + * // "timeZone": "my_timeZone", + * // "updateTime": "my_updateTime" * // } * } * @@ -10006,58 +10071,54 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - fetchFileDiff( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff, + patch( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch, options: StreamMethodOptions ): Promise>; - fetchFileDiff( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff, + patch( + params?: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch, options?: MethodOptions - ): Promise>; - fetchFileDiff( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - fetchFileDiff( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - fetchFileDiff( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - fetchFileDiff( - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch, + callback: BodyResponseCallback ): void; - fetchFileDiff( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff; + {}) as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff; + {} as Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch; options = {}; } @@ -10070,32 +10131,93 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+workspace}:fetchFileDiff').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['workspace'], - pathParams: ['workspace'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Create extends StandardParameters { /** - * Fetches Git statuses for the files in a Workspace. + * Required. The repository in which to create the workflow config. Must be in the format `projects/x/locations/x/repositories/x`. + */ + parent?: string; + /** + * Required. The ID to use for the workflow config, which will become the final component of the workflow config's resource name. + */ + workflowConfigId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$WorkflowConfig; + } + export interface Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Delete extends StandardParameters { + /** + * Required. The workflow config's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Get extends StandardParameters { + /** + * Required. The workflow config's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workflowconfigs$List extends StandardParameters { + /** + * Optional. Maximum number of workflow configs to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `ListWorkflowConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListWorkflowConfigs`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The repository in which to list workflow configs. Must be in the format `projects/x/locations/x/repositories/x`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workflowconfigs$Patch extends StandardParameters { + /** + * Identifier. The workflow config's name. + */ + name?: string; + /** + * Optional. Specifies the fields to be updated in the workflow config. If left unset, all fields will be updated. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$WorkflowConfig; + } + + export class Resource$Projects$Locations$Repositories$Workflowinvocations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Requests cancellation of a running WorkflowInvocation. * @example * ```js * // Before running the sample: @@ -10128,18 +10250,20 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workspaces.fetchFileGitStatuses( - * { - * // Required. The workspace's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * await dataform.projects.locations.repositories.workflowInvocations.cancel({ + * // Required. The workflow invocation resource's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowInvocations/my-workflowInvocation', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} * }, - * ); + * }); * console.log(res.data); * * // Example response - * // { - * // "uncommittedFileChanges": [] - * // } + * // {} * } * * main().catch(e => { @@ -10154,58 +10278,62 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - fetchFileGitStatuses( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses, + cancel( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel, options: StreamMethodOptions ): Promise>; - fetchFileGitStatuses( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses, + cancel( + params?: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel, options?: MethodOptions - ): Promise>; - fetchFileGitStatuses( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses, + ): Promise< + GaxiosResponseWithHTTP2 + >; + cancel( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - fetchFileGitStatuses( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses, + cancel( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - fetchFileGitStatuses( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel, + callback: BodyResponseCallback ): void; - fetchFileGitStatuses( - callback: BodyResponseCallback + cancel( + callback: BodyResponseCallback ): void; - fetchFileGitStatuses( + cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses; + {}) as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses; + {} as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel; options = {}; } @@ -10218,11 +10346,8 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:fetchFileGitStatuses').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -10233,19 +10358,19 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Fetches Git ahead/behind against a remote branch. + * Creates a new WorkflowInvocation in a given Repository. * @example * ```js * // Before running the sample: @@ -10278,20 +10403,42 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workspaces.fetchGitAheadBehind( - * { - * // Required. The workspace's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', - * // Optional. The name of the branch in the Git remote against which this workspace should be compared. If left unset, the repository's default branch name will be used. - * remoteBranch: 'placeholder-value', + * await dataform.projects.locations.repositories.workflowInvocations.create({ + * // Required. The repository in which to create the workflow invocation. Must be in the format `projects/x/locations/x/repositories/x`. + * parent: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "compilationResult": "my_compilationResult", + * // "dataEncryptionState": {}, + * // "internalMetadata": "my_internalMetadata", + * // "invocationConfig": {}, + * // "invocationTiming": {}, + * // "name": "my_name", + * // "privateResourceMetadata": {}, + * // "resolvedCompilationResult": "my_resolvedCompilationResult", + * // "state": "my_state", + * // "workflowConfig": "my_workflowConfig" + * // } * }, - * ); + * }); * console.log(res.data); * * // Example response * // { - * // "commitsAhead": 0, - * // "commitsBehind": 0 + * // "compilationResult": "my_compilationResult", + * // "dataEncryptionState": {}, + * // "internalMetadata": "my_internalMetadata", + * // "invocationConfig": {}, + * // "invocationTiming": {}, + * // "name": "my_name", + * // "privateResourceMetadata": {}, + * // "resolvedCompilationResult": "my_resolvedCompilationResult", + * // "state": "my_state", + * // "workflowConfig": "my_workflowConfig" * // } * } * @@ -10307,58 +10454,54 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - fetchGitAheadBehind( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind, + create( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create, options: StreamMethodOptions ): Promise>; - fetchGitAheadBehind( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind, + create( + params?: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create, options?: MethodOptions - ): Promise>; - fetchGitAheadBehind( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - fetchGitAheadBehind( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - fetchGitAheadBehind( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - fetchGitAheadBehind( - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create, + callback: BodyResponseCallback ): void; - fetchGitAheadBehind( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind; + {}) as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind; + {} as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create; options = {}; } @@ -10371,32 +10514,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:fetchGitAheadBehind').replace( + url: (rootUrl + '/v1/{+parent}/workflowInvocations').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Fetches a single Workspace. + * Deletes a single WorkflowInvocation. * @example * ```js * // Before running the sample: @@ -10428,20 +10571,15 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.workspaces.get({ - * // Required. The workspace's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', - * }); + * const res = + * await dataform.projects.locations.repositories.workflowInvocations.delete({ + * // Required. The workflow invocation resource's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowInvocations/my-workflowInvocation', + * }); * console.log(res.data); * * // Example response - * // { - * // "createTime": "my_createTime", - * // "dataEncryptionState": {}, - * // "internalMetadata": "my_internalMetadata", - * // "name": "my_name", - * // "privateResourceMetadata": {} - * // } + * // {} * } * * main().catch(e => { @@ -10456,54 +10594,54 @@ export namespace dataform_v1 { * @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$Repositories$Workspaces$Get, + delete( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Get, + delete( + params?: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Get, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Get, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Get; + {}) as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Get; + {} as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete; options = {}; } @@ -10517,7 +10655,7 @@ export namespace dataform_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options @@ -10528,17 +10666,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * Fetches a single WorkflowInvocation. * @example * ```js * // Before running the sample: @@ -10571,20 +10709,24 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workspaces.getIamPolicy({ - * // 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': 'placeholder-value', - * // 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: - * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * await dataform.projects.locations.repositories.workflowInvocations.get({ + * // Required. The workflow invocation resource's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowInvocations/my-workflowInvocation', * }); * console.log(res.data); * * // Example response * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "compilationResult": "my_compilationResult", + * // "dataEncryptionState": {}, + * // "internalMetadata": "my_internalMetadata", + * // "invocationConfig": {}, + * // "invocationTiming": {}, + * // "name": "my_name", + * // "privateResourceMetadata": {}, + * // "resolvedCompilationResult": "my_resolvedCompilationResult", + * // "state": "my_state", + * // "workflowConfig": "my_workflowConfig" * // } * } * @@ -10600,54 +10742,54 @@ export namespace dataform_v1 { * @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$Repositories$Workspaces$Getiampolicy, + get( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy, + get( + params?: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy; + {} as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get; options = {}; } @@ -10660,32 +10802,29 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Installs dependency NPM packages (inside a Workspace). + * Lists WorkflowInvocations in a given Repository. * @example * ```js * // Before running the sample: @@ -10718,23 +10857,27 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workspaces.installNpmPackages( - * { - * // Required. The workspace's name. - * workspace: - * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, - * }, - * ); + * await dataform.projects.locations.repositories.workflowInvocations.list({ + * // Optional. Filter for the returned list. + * filter: 'placeholder-value', + * // Optional. This field only supports ordering by `name`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. + * orderBy: 'placeholder-value', + * // Optional. Maximum number of workflow invocations to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `ListWorkflowInvocations` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListWorkflowInvocations`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The parent resource of the WorkflowInvocation type. Must be in the format `projects/x/locations/x/repositories/x`. + * parent: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [], + * // "workflowInvocations": [] + * // } * } * * main().catch(e => { @@ -10749,58 +10892,58 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - installNpmPackages( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages, + list( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List, options: StreamMethodOptions ): Promise>; - installNpmPackages( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages, + list( + params?: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List, options?: MethodOptions - ): Promise>; - installNpmPackages( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - installNpmPackages( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages, + list( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - installNpmPackages( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List, + callback: BodyResponseCallback ): void; - installNpmPackages( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - installNpmPackages( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages; + {}) as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages; + {} as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List; options = {}; } @@ -10813,32 +10956,34 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+workspace}:installNpmPackages').replace( + url: (rootUrl + '/v1/{+parent}/workflowInvocations').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['workspace'], - pathParams: ['workspace'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Lists Workspaces in a given Repository. + * Returns WorkflowInvocationActions in a given WorkflowInvocation. * @example * ```js * // Before running the sample: @@ -10870,26 +11015,21 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.workspaces.list({ - * // Optional. Filter for the returned list. - * filter: 'placeholder-value', - * // Optional. This field only supports ordering by `name`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. - * orderBy: 'placeholder-value', - * // Optional. Maximum number of workspaces to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous `ListWorkspaces` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListWorkspaces`, with the exception of `page_size`, must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The repository in which to list workspaces. Must be in the format `projects/x/locations/x/repositories/x`. - * parent: - * 'projects/my-project/locations/my-location/repositories/my-repositorie', - * }); + * const res = + * await dataform.projects.locations.repositories.workflowInvocations.query({ + * // Required. The workflow invocation's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workflowInvocations/my-workflowInvocation', + * // Optional. Maximum number of workflow invocations to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `QueryWorkflowInvocationActions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryWorkflowInvocationActions`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [], - * // "workspaces": [] + * // "workflowInvocationActions": [] * // } * } * @@ -10905,56 +11045,62 @@ export namespace dataform_v1 { * @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$Repositories$Workspaces$List, + query( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$List, + query( + params?: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$List, + ): Promise< + GaxiosResponseWithHTTP2 + >; + query( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$List, + query( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$List, - callback: BodyResponseCallback + query( + params: Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + query( + callback: BodyResponseCallback + ): void; + query( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$List; + {}) as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$List; + {} as Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query; options = {}; } @@ -10967,46 +11113,123 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/workspaces').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}:query').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Cancel extends StandardParameters { /** - * Creates a directory inside a Workspace. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataform.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * + * Required. The workflow invocation resource's name. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CancelWorkflowInvocationRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Create extends StandardParameters { + /** + * Required. The repository in which to create the workflow invocation. Must be in the format `projects/x/locations/x/repositories/x`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$WorkflowInvocation; + } + export interface Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Delete extends StandardParameters { + /** + * Required. The workflow invocation resource's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Get extends StandardParameters { + /** + * Required. The workflow invocation resource's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workflowinvocations$List extends StandardParameters { + /** + * Optional. Filter for the returned list. + */ + filter?: string; + /** + * Optional. This field only supports ordering by `name`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. + */ + orderBy?: string; + /** + * Optional. Maximum number of workflow invocations to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `ListWorkflowInvocations` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListWorkflowInvocations`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The parent resource of the WorkflowInvocation type. Must be in the format `projects/x/locations/x/repositories/x`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workflowinvocations$Query extends StandardParameters { + /** + * Required. The workflow invocation's name. + */ + name?: string; + /** + * Optional. Maximum number of workflow invocations to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `QueryWorkflowInvocationActions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryWorkflowInvocationActions`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + } + + export class Resource$Projects$Locations$Repositories$Workspaces { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Applies a Git commit for uncommitted files in a Workspace. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * * const {google} = require('googleapis'); * const dataform = google.dataform('v1'); * @@ -11024,20 +11247,20 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.workspaces.makeDirectory({ - * // Required. The workspace's name. - * workspace: - * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * const res = await dataform.projects.locations.repositories.workspaces.commit({ + * // Required. The workspace's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "path": "my_path" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "author": {}, + * // "commitMessage": "my_commitMessage", + * // "paths": [] + * // } + * }, + * }); * console.log(res.data); * * // Example response @@ -11056,58 +11279,58 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - makeDirectory( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory, + commit( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Commit, options: StreamMethodOptions ): Promise>; - makeDirectory( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory, + commit( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Commit, options?: MethodOptions - ): Promise>; - makeDirectory( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory, + ): Promise>; + commit( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Commit, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - makeDirectory( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory, + commit( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Commit, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - makeDirectory( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory, - callback: BodyResponseCallback + commit( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Commit, + callback: BodyResponseCallback ): void; - makeDirectory( - callback: BodyResponseCallback + commit( + callback: BodyResponseCallback ): void; - makeDirectory( + commit( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$Commit + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Commit; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Commit; options = {}; } @@ -11120,32 +11343,31 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+workspace}:makeDirectory').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}:commit').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['workspace'], - pathParams: ['workspace'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Moves a directory (inside a Workspace), and all of its contents, to a new location. + * Creates a new Workspace in a given Repository. * @example * ```js * // Before running the sample: @@ -11177,25 +11399,37 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.workspaces.moveDirectory({ - * // Required. The workspace's name. - * workspace: - * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * const res = await dataform.projects.locations.repositories.workspaces.create({ + * // Required. The repository in which to create the workspace. Must be in the format `projects/x/locations/x/repositories/x`. + * parent: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * // Required. The ID to use for the workspace, which will become the final component of the workspace's resource name. + * workspaceId: 'placeholder-value', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "newPath": "my_newPath", - * // "path": "my_path" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "dataEncryptionState": {}, + * // "disableMoves": false, + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "privateResourceMetadata": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "createTime": "my_createTime", + * // "dataEncryptionState": {}, + * // "disableMoves": false, + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "privateResourceMetadata": {} + * // } * } * * main().catch(e => { @@ -11210,58 +11444,54 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - moveDirectory( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory, + create( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Create, options: StreamMethodOptions ): Promise>; - moveDirectory( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory, + create( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Create, options?: MethodOptions - ): Promise>; - moveDirectory( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - moveDirectory( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - moveDirectory( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - moveDirectory( - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Create, + callback: BodyResponseCallback ): void; - moveDirectory( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Create; options = {}; } @@ -11274,7 +11504,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+workspace}:moveDirectory').replace( + url: (rootUrl + '/v1/{+parent}/workspaces').replace( /([^:]\/)\/+/g, '$1' ), @@ -11284,22 +11514,22 @@ export namespace dataform_v1 { options ), params, - requiredParams: ['workspace'], - pathParams: ['workspace'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Moves a file (inside a Workspace) to a new location. + * Deletes a single Workspace. * @example * ```js * // Before running the sample: @@ -11331,21 +11561,10 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.workspaces.moveFile({ - * // Required. The workspace's name. - * workspace: - * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "newPath": "my_newPath", - * // "path": "my_path" - * // } - * }, - * }); + * const res = await dataform.projects.locations.repositories.workspaces.delete({ + * // Required. The workspace resource's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * }); * console.log(res.data); * * // Example response @@ -11364,54 +11583,54 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - moveFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile, + delete( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Delete, options: StreamMethodOptions ): Promise>; - moveFile( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile, + delete( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Delete, options?: MethodOptions - ): Promise>; - moveFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - moveFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - moveFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Delete, + callback: BodyResponseCallback ): void; - moveFile(callback: BodyResponseCallback): void; - moveFile( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Delete; options = {}; } @@ -11424,32 +11643,29 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+workspace}:moveFile').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['workspace'], - pathParams: ['workspace'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Pulls Git commits from the Repository's remote into a Workspace. + * Fetches Git diff for an uncommitted file in a Workspace. * @example * ```js * // Before running the sample: @@ -11481,23 +11697,20 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.workspaces.pull({ - * // Required. The workspace's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "author": {}, - * // "remoteBranch": "my_remoteBranch" - * // } - * }, - * }); + * const res = + * await dataform.projects.locations.repositories.workspaces.fetchFileDiff({ + * // Required. The file's full path including filename, relative to the workspace root. + * path: 'placeholder-value', + * // Required. The workspace's name. + * workspace: + * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "formattedDiff": "my_formattedDiff" + * // } * } * * main().catch(e => { @@ -11512,56 +11725,58 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - pull( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Pull, + fetchFileDiff( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff, options: StreamMethodOptions ): Promise>; - pull( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Pull, + fetchFileDiff( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff, options?: MethodOptions - ): Promise>; - pull( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Pull, + ): Promise>; + fetchFileDiff( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - pull( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Pull, + fetchFileDiff( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - pull( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Pull, - callback: BodyResponseCallback + fetchFileDiff( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff, + callback: BodyResponseCallback ): void; - pull(callback: BodyResponseCallback): void; - pull( + fetchFileDiff( + callback: BodyResponseCallback + ): void; + fetchFileDiff( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Pull - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Pull; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Pull; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff; options = {}; } @@ -11574,29 +11789,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:pull').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+workspace}:fetchFileDiff').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['workspace'], + pathParams: ['workspace'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Pushes Git commits from a Workspace to the Repository's remote. + * Fetches Git statuses for the files in a Workspace. * @example * ```js * // Before running the sample: @@ -11628,22 +11846,19 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.workspaces.push({ - * // Required. The workspace's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "remoteBranch": "my_remoteBranch" - * // } - * }, - * }); + * const res = + * await dataform.projects.locations.repositories.workspaces.fetchFileGitStatuses( + * { + * // Required. The workspace's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * }, + * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "uncommittedFileChanges": [] + * // } * } * * main().catch(e => { @@ -11658,56 +11873,58 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - push( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Push, + fetchFileGitStatuses( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses, options: StreamMethodOptions ): Promise>; - push( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Push, + fetchFileGitStatuses( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses, options?: MethodOptions - ): Promise>; - push( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Push, + ): Promise>; + fetchFileGitStatuses( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - push( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Push, + fetchFileGitStatuses( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - push( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Push, - callback: BodyResponseCallback + fetchFileGitStatuses( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses, + callback: BodyResponseCallback ): void; - push(callback: BodyResponseCallback): void; - push( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Push - | BodyResponseCallback + fetchFileGitStatuses( + callback: BodyResponseCallback + ): void; + fetchFileGitStatuses( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Push; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Push; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses; options = {}; } @@ -11720,8 +11937,11 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:push').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}:fetchFileGitStatuses').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options @@ -11732,17 +11952,19 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Returns the contents of a given Workspace directory. + * Fetches Git ahead/behind against a remote branch. * @example * ```js * // Before running the sample: @@ -11775,25 +11997,20 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workspaces.queryDirectoryContents( + * await dataform.projects.locations.repositories.workspaces.fetchGitAheadBehind( * { - * // Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous `QueryDirectoryContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryDirectoryContents`, with the exception of `page_size`, must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Optional. The directory's full path including directory name, relative to the workspace root. If left unset, the workspace root is used. - * path: 'placeholder-value', * // Required. The workspace's name. - * workspace: - * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * // Optional. The name of the branch in the Git remote against which this workspace should be compared. If left unset, the repository's default branch name will be used. + * remoteBranch: 'placeholder-value', * }, * ); * console.log(res.data); * * // Example response * // { - * // "directoryEntries": [], - * // "nextPageToken": "my_nextPageToken" + * // "commitsAhead": 0, + * // "commitsBehind": 0 * // } * } * @@ -11809,58 +12026,58 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - queryDirectoryContents( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents, + fetchGitAheadBehind( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind, options: StreamMethodOptions ): Promise>; - queryDirectoryContents( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents, + fetchGitAheadBehind( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind, options?: MethodOptions - ): Promise>; - queryDirectoryContents( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents, + ): Promise>; + fetchGitAheadBehind( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - queryDirectoryContents( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents, + fetchGitAheadBehind( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - queryDirectoryContents( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents, - callback: BodyResponseCallback + fetchGitAheadBehind( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind, + callback: BodyResponseCallback ): void; - queryDirectoryContents( - callback: BodyResponseCallback + fetchGitAheadBehind( + callback: BodyResponseCallback ): void; - queryDirectoryContents( + fetchGitAheadBehind( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind; options = {}; } @@ -11873,7 +12090,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+workspace}:queryDirectoryContents').replace( + url: (rootUrl + '/v1/{+name}:fetchGitAheadBehind').replace( /([^:]\/)\/+/g, '$1' ), @@ -11883,24 +12100,22 @@ export namespace dataform_v1 { options ), params, - requiredParams: ['workspace'], - pathParams: ['workspace'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Returns the contents of a file (inside a Workspace). + * Fetches a single Workspace. * @example * ```js * // Before running the sample: @@ -11932,21 +12147,20 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.workspaces.readFile({ - * // Required. The file's full path including filename, relative to the workspace root. - * path: 'placeholder-value', - * // Optional. The Git revision of the file to return. If left empty, the current contents of `path` will be returned. - * revision: 'placeholder-value', - * // Required. The workspace's name. - * workspace: - * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', - * }); + * const res = await dataform.projects.locations.repositories.workspaces.get({ + * // Required. The workspace's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * }); * console.log(res.data); * * // Example response * // { - * // "fileContents": "my_fileContents" + * // "createTime": "my_createTime", + * // "dataEncryptionState": {}, + * // "disableMoves": false, + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "privateResourceMetadata": {} * // } * } * @@ -11962,54 +12176,54 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - readFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile, + get( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Get, options: StreamMethodOptions ): Promise>; - readFile( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile, + get( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Get, options?: MethodOptions - ): Promise>; - readFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - readFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - readFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Get, + callback: BodyResponseCallback ): void; - readFile(callback: BodyResponseCallback): void; - readFile( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Get; options = {}; } @@ -12022,32 +12236,29 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+workspace}:readFile').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['workspace'], - pathParams: ['workspace'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a directory (inside a Workspace) and all of its contents. + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. * @example * ```js * // Before running the sample: @@ -12080,23 +12291,21 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workspaces.removeDirectory({ - * // Required. The workspace's name. - * workspace: + * await dataform.projects.locations.repositories.workspaces.getIamPolicy({ + * // 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': 'placeholder-value', + * // 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: * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "path": "my_path" - * // } - * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } * } * * main().catch(e => { @@ -12111,58 +12320,54 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeDirectory( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory, + getIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy, options: StreamMethodOptions ): Promise>; - removeDirectory( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy, options?: MethodOptions - ): Promise>; - removeDirectory( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeDirectory( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - removeDirectory( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - removeDirectory( - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy, + callback: BodyResponseCallback ): void; - removeDirectory( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Getiampolicy; options = {}; } @@ -12175,32 +12380,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+workspace}:removeDirectory').replace( + url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['workspace'], - pathParams: ['workspace'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a file (inside a Workspace). + * Installs dependency NPM packages (inside a Workspace). * @example * ```js * // Before running the sample: @@ -12233,19 +12438,19 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workspaces.removeFile({ - * // Required. The workspace's name. - * workspace: - * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * await dataform.projects.locations.repositories.workspaces.installNpmPackages( + * { + * // Required. The workspace's name. + * workspace: + * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "path": "my_path" - * // } + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, * }, - * }); + * ); * console.log(res.data); * * // Example response @@ -12264,54 +12469,58 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile, + installNpmPackages( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages, options: StreamMethodOptions ): Promise>; - removeFile( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile, + installNpmPackages( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages, options?: MethodOptions - ): Promise>; - removeFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile, + ): Promise>; + installNpmPackages( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + installNpmPackages( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - removeFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile, - callback: BodyResponseCallback + installNpmPackages( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages, + callback: BodyResponseCallback ): void; - removeFile(callback: BodyResponseCallback): void; - removeFile( + installNpmPackages( + callback: BodyResponseCallback + ): void; + installNpmPackages( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Installnpmpackages; options = {}; } @@ -12324,7 +12533,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+workspace}:removeFile').replace( + url: (rootUrl + '/v1/{+workspace}:installNpmPackages').replace( /([^:]\/)\/+/g, '$1' ), @@ -12339,17 +12548,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Performs a Git reset for uncommitted files in a Workspace. + * Lists Workspaces in a given Repository. * @example * ```js * // Before running the sample: @@ -12381,23 +12590,27 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.repositories.workspaces.reset({ - * // Required. The workspace's name. - * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "clean": false, - * // "paths": [] - * // } - * }, + * const res = await dataform.projects.locations.repositories.workspaces.list({ + * // Optional. Filter for the returned list. + * filter: 'placeholder-value', + * // Optional. This field only supports ordering by `name`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. + * orderBy: 'placeholder-value', + * // Optional. Maximum number of workspaces to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `ListWorkspaces` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListWorkspaces`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The repository in which to list workspaces. Must be in the format `projects/x/locations/x/repositories/x`. + * parent: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [], + * // "workspaces": [] + * // } * } * * main().catch(e => { @@ -12412,58 +12625,56 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - reset( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Reset, + list( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$List, options: StreamMethodOptions ): Promise>; - reset( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Reset, + list( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$List, options?: MethodOptions - ): Promise>; - reset( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Reset, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reset( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Reset, + list( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - reset( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Reset, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - reset( - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$List, + callback: BodyResponseCallback ): void; - reset( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Reset - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Reset; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Reset; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$List; options = {}; } @@ -12476,31 +12687,32 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:reset').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+parent}/workspaces').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Finds the contents of a given Workspace directory by filter. + * Creates a directory inside a Workspace. * @example * ```js * // Before running the sample: @@ -12533,24 +12745,23 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workspaces.searchFiles({ - * // Optional. Optional filter for the returned list in filtering format. Filtering is only currently supported on the `path` field. See https://google.aip.dev/160 for details. - * filter: 'placeholder-value', - * // Optional. Maximum number of search results to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous `SearchFilesRequest` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `SearchFilesRequest`, with the exception of `page_size`, must match the call that provided the page token. - * pageToken: 'placeholder-value', + * await dataform.projects.locations.repositories.workspaces.makeDirectory({ * // Required. The workspace's name. * workspace: * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "path": "my_path" + * // } + * }, * }); * console.log(res.data); * * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "searchResults": [] - * // } + * // {} * } * * main().catch(e => { @@ -12565,56 +12776,58 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - searchFiles( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles, + makeDirectory( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory, options: StreamMethodOptions ): Promise>; - searchFiles( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles, + makeDirectory( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory, options?: MethodOptions - ): Promise>; - searchFiles( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles, + ): Promise>; + makeDirectory( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - searchFiles( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + makeDirectory( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - searchFiles( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles, - callback: BodyResponseCallback + makeDirectory( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory, + callback: BodyResponseCallback ): void; - searchFiles( - callback: BodyResponseCallback + makeDirectory( + callback: BodyResponseCallback ): void; - searchFiles( + makeDirectory( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory; options = {}; } @@ -12627,11 +12840,11 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+workspace}:searchFiles').replace( + url: (rootUrl + '/v1/{+workspace}:makeDirectory').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -12642,17 +12855,17 @@ export namespace dataform_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Moves a directory (inside a Workspace), and all of its contents, to a new location. * @example * ```js * // Before running the sample: @@ -12685,27 +12898,24 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workspaces.setIamPolicy({ - * // 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: + * await dataform.projects.locations.repositories.workspaces.moveDirectory({ + * // Required. The workspace's name. + * workspace: * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "policy": {} + * // "newPath": "my_newPath", + * // "path": "my_path" * // } * }, * }); * console.log(res.data); * * // Example response - * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } + * // {} * } * * main().catch(e => { @@ -12720,54 +12930,58 @@ export namespace dataform_v1 { * @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$Repositories$Workspaces$Setiampolicy, + moveDirectory( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy, + moveDirectory( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy, + ): Promise>; + moveDirectory( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + moveDirectory( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy, - callback: BodyResponseCallback + moveDirectory( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + moveDirectory( + callback: BodyResponseCallback + ): void; + moveDirectory( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory; options = {}; } @@ -12780,7 +12994,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( + url: (rootUrl + '/v1/{+workspace}:moveDirectory').replace( /([^:]\/)\/+/g, '$1' ), @@ -12790,22 +13004,22 @@ export namespace dataform_v1 { options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['workspace'], + pathParams: ['workspace'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Moves a file (inside a Workspace) to a new location. * @example * ```js * // Before running the sample: @@ -12838,27 +13052,24 @@ export namespace dataform_v1 { * * // Do the magic * const res = - * await dataform.projects.locations.repositories.workspaces.testIamPermissions( - * { - * // 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: - * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * await dataform.projects.locations.repositories.workspaces.moveFile({ + * // Required. The workspace's name. + * workspace: + * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "newPath": "my_newPath", + * // "path": "my_path" + * // } * }, - * ); + * }); * console.log(res.data); * * // Example response - * // { - * // "permissions": [] - * // } + * // {} * } * * main().catch(e => { @@ -12873,58 +13084,54 @@ export namespace dataform_v1 { * @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$Repositories$Workspaces$Testiampermissions, + moveFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions, + moveFile( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions, + ): Promise>; + moveFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions, - callback: BodyResponseCallback + moveFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + moveFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile, + callback: BodyResponseCallback ): void; - testIamPermissions( + moveFile(callback: BodyResponseCallback): void; + moveFile( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile; options = {}; } @@ -12937,7 +13144,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( + url: (rootUrl + '/v1/{+workspace}:moveFile').replace( /([^:]\/)\/+/g, '$1' ), @@ -12947,22 +13154,22 @@ export namespace dataform_v1 { options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['workspace'], + pathParams: ['workspace'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Writes to a file (inside a Workspace). + * Pulls Git commits from the Repository's remote into a Workspace. * @example * ```js * // Before running the sample: @@ -12994,21 +13201,19 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataform.projects.locations.repositories.workspaces.writeFile({ - * // Required. The workspace's name. - * workspace: - * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * const res = await dataform.projects.locations.repositories.workspaces.pull({ + * // Required. The workspace's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "contents": "my_contents", - * // "path": "my_path" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "author": {}, + * // "remoteBranch": "my_remoteBranch" + * // } + * }, + * }); * console.log(res.data); * * // Example response @@ -13027,54 +13232,56 @@ export namespace dataform_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - writeFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile, + pull( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Pull, options: StreamMethodOptions ): Promise>; - writeFile( - params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile, + pull( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Pull, options?: MethodOptions - ): Promise>; - writeFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile, + ): Promise>; + pull( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Pull, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - writeFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + pull( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Pull, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - writeFile( - params: Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile, - callback: BodyResponseCallback + pull( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Pull, + callback: BodyResponseCallback ): void; - writeFile(callback: BodyResponseCallback): void; - writeFile( + pull(callback: BodyResponseCallback): void; + pull( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Workspaces$Pull + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile; + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Pull; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile; + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Pull; options = {}; } @@ -13087,318 +13294,2885 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+workspace}:writeFile').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}:pull').replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['workspace'], - pathParams: ['workspace'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Commit extends StandardParameters { /** - * Required. The workspace's name. + * Pushes Git commits from a Workspace to the Repository's remote. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataform.projects.locations.repositories.workspaces.push({ + * // Required. The workspace's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "remoteBranch": "my_remoteBranch" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - name?: string; + push( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Push, + options: StreamMethodOptions + ): Promise>; + push( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Push, + options?: MethodOptions + ): Promise>; + push( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Push, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + push( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Push, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + push( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Push, + callback: BodyResponseCallback + ): void; + push(callback: BodyResponseCallback): void; + push( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Workspaces$Push + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Push; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$CommitWorkspaceChangesRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Create extends StandardParameters { - /** - * Required. The repository in which to create the workspace. Must be in the format `projects/x/locations/x/repositories/x`. - */ - parent?: string; - /** - * Required. The ID to use for the workspace, which will become the final component of the workspace's resource name. - */ - workspaceId?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Push; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$Workspace; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Delete extends StandardParameters { - /** - * Required. The workspace resource's name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff extends StandardParameters { - /** - * Required. The file's full path including filename, relative to the workspace root. - */ - path?: string; - /** - * Required. The workspace's name. - */ - workspace?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses extends StandardParameters { - /** - * Required. The workspace's name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind extends StandardParameters { - /** - * Required. The workspace's name. - */ - name?: string; - /** - * Optional. The name of the branch in the Git remote against which this workspace should be compared. If left unset, the repository's default branch name will be used. - */ - remoteBranch?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Get extends StandardParameters { - /** - * Required. The workspace's name. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$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$Repositories$Workspaces$Installnpmpackages extends StandardParameters { - /** - * Required. The workspace's name. - */ - workspace?: string; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:push').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$InstallNpmPackagesRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$List extends StandardParameters { - /** - * Optional. Filter for the returned list. - */ - filter?: string; - /** - * Optional. This field only supports ordering by `name`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. - */ - orderBy?: string; - /** - * Optional. Maximum number of workspaces to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - */ + * Returns the contents of a given Workspace directory. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await dataform.projects.locations.repositories.workspaces.queryDirectoryContents( + * { + * // Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `QueryDirectoryContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryDirectoryContents`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Optional. The directory's full path including directory name, relative to the workspace root. If left unset, the workspace root is used. + * path: 'placeholder-value', + * // Optional. Specifies the metadata to return for each directory entry. If unspecified, the default is `DIRECTORY_CONTENTS_VIEW_BASIC`. Currently the `DIRECTORY_CONTENTS_VIEW_METADATA` view is not supported by CMEK-protected workspaces. + * view: 'placeholder-value', + * // Required. The workspace's name. + * workspace: + * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "directoryEntries": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + queryDirectoryContents( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents, + options: StreamMethodOptions + ): Promise>; + queryDirectoryContents( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents, + options?: MethodOptions + ): Promise>; + queryDirectoryContents( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + queryDirectoryContents( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + queryDirectoryContents( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents, + callback: BodyResponseCallback + ): void; + queryDirectoryContents( + callback: BodyResponseCallback + ): void; + queryDirectoryContents( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+workspace}:queryDirectoryContents').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['workspace'], + pathParams: ['workspace'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Returns the contents of a file (inside a Workspace). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await dataform.projects.locations.repositories.workspaces.readFile({ + * // Required. The file's full path including filename, relative to the workspace root. + * path: 'placeholder-value', + * // Optional. The Git revision of the file to return. If left empty, the current contents of `path` will be returned. + * revision: 'placeholder-value', + * // Required. The workspace's name. + * workspace: + * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "fileContents": "my_fileContents" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + readFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile, + options: StreamMethodOptions + ): Promise>; + readFile( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile, + options?: MethodOptions + ): Promise>; + readFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + readFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + readFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile, + callback: BodyResponseCallback + ): void; + readFile(callback: BodyResponseCallback): void; + readFile( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+workspace}:readFile').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['workspace'], + pathParams: ['workspace'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a directory (inside a Workspace) and all of its contents. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await dataform.projects.locations.repositories.workspaces.removeDirectory({ + * // Required. The workspace's name. + * workspace: + * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "path": "my_path" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + removeDirectory( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory, + options: StreamMethodOptions + ): Promise>; + removeDirectory( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory, + options?: MethodOptions + ): Promise>; + removeDirectory( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeDirectory( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeDirectory( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory, + callback: BodyResponseCallback + ): void; + removeDirectory( + callback: BodyResponseCallback + ): void; + removeDirectory( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+workspace}:removeDirectory').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['workspace'], + pathParams: ['workspace'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a file (inside a Workspace). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await dataform.projects.locations.repositories.workspaces.removeFile({ + * // Required. The workspace's name. + * workspace: + * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "path": "my_path" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + removeFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile, + options: StreamMethodOptions + ): Promise>; + removeFile( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile, + options?: MethodOptions + ): Promise>; + removeFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile, + callback: BodyResponseCallback + ): void; + removeFile(callback: BodyResponseCallback): void; + removeFile( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+workspace}:removeFile').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['workspace'], + pathParams: ['workspace'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Performs a Git reset for uncommitted files in a Workspace. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataform.projects.locations.repositories.workspaces.reset({ + * // Required. The workspace's name. + * name: 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "clean": false, + * // "paths": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + reset( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Reset, + options: StreamMethodOptions + ): Promise>; + reset( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Reset, + options?: MethodOptions + ): Promise>; + reset( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Reset, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + reset( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Reset, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + reset( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Reset, + callback: BodyResponseCallback + ): void; + reset( + callback: BodyResponseCallback + ): void; + reset( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Workspaces$Reset + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Reset; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Reset; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:reset').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Finds the contents of a given Workspace directory by filter. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await dataform.projects.locations.repositories.workspaces.searchFiles({ + * // Optional. Optional filter for the returned list in filtering format. Filtering is only currently supported on the `path` field. See https://google.aip.dev/160 for details. + * filter: 'placeholder-value', + * // Optional. Maximum number of search results to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `SearchFilesRequest` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `SearchFilesRequest`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The workspace's name. + * workspace: + * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "searchResults": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + searchFiles( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles, + options: StreamMethodOptions + ): Promise>; + searchFiles( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles, + options?: MethodOptions + ): Promise>; + searchFiles( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + searchFiles( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + searchFiles( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles, + callback: BodyResponseCallback + ): void; + searchFiles( + callback: BodyResponseCallback + ): void; + searchFiles( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+workspace}:searchFiles').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['workspace'], + pathParams: ['workspace'], + 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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await dataform.projects.locations.repositories.workspaces.setIamPolicy({ + * // 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: + * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Repositories$Workspaces$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await dataform.projects.locations.repositories.workspaces.testIamPermissions( + * { + * // 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: + * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Repositories$Workspaces$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Writes to a file (inside a Workspace). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await dataform.projects.locations.repositories.workspaces.writeFile({ + * // Required. The workspace's name. + * workspace: + * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "contents": "my_contents", + * // "path": "my_path" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + writeFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile, + options: StreamMethodOptions + ): Promise>; + writeFile( + params?: Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile, + options?: MethodOptions + ): Promise>; + writeFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + writeFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + writeFile( + params: Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile, + callback: BodyResponseCallback + ): void; + writeFile(callback: BodyResponseCallback): void; + writeFile( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+workspace}:writeFile').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['workspace'], + pathParams: ['workspace'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Commit extends StandardParameters { + /** + * Required. The workspace's name. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CommitWorkspaceChangesRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Create extends StandardParameters { + /** + * Required. The repository in which to create the workspace. Must be in the format `projects/x/locations/x/repositories/x`. + */ + parent?: string; + /** + * Required. The ID to use for the workspace, which will become the final component of the workspace's resource name. + */ + workspaceId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Workspace; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Delete extends StandardParameters { + /** + * Required. The workspace resource's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilediff extends StandardParameters { + /** + * Required. The file's full path including filename, relative to the workspace root. + */ + path?: string; + /** + * Required. The workspace's name. + */ + workspace?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchfilegitstatuses extends StandardParameters { + /** + * Required. The workspace's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Fetchgitaheadbehind extends StandardParameters { + /** + * Required. The workspace's name. + */ + name?: string; + /** + * Optional. The name of the branch in the Git remote against which this workspace should be compared. If left unset, the repository's default branch name will be used. + */ + remoteBranch?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Get extends StandardParameters { + /** + * Required. The workspace's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$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$Repositories$Workspaces$Installnpmpackages extends StandardParameters { + /** + * Required. The workspace's name. + */ + workspace?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstallNpmPackagesRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$List extends StandardParameters { + /** + * Optional. Filter for the returned list. + */ + filter?: string; + /** + * Optional. This field only supports ordering by `name`. If unspecified, the server will choose the ordering. If specified, the default order is ascending for the `name` field. + */ + orderBy?: string; + /** + * Optional. Maximum number of workspaces to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `ListWorkspaces` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListWorkspaces`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The repository in which to list workspaces. Must be in the format `projects/x/locations/x/repositories/x`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory extends StandardParameters { + /** + * Required. The workspace's name. + */ + workspace?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$MakeDirectoryRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory extends StandardParameters { + /** + * Required. The workspace's name. + */ + workspace?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$MoveDirectoryRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile extends StandardParameters { + /** + * Required. The workspace's name. + */ + workspace?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$MoveFileRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Pull extends StandardParameters { + /** + * Required. The workspace's name. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$PullGitCommitsRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Push extends StandardParameters { + /** + * Required. The workspace's name. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$PushGitCommitsRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents extends StandardParameters { + /** + * Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ pageSize?: number; /** - * Optional. Page token received from a previous `ListWorkspaces` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListWorkspaces`, with the exception of `page_size`, must match the call that provided the page token. + * Optional. Page token received from a previous `QueryDirectoryContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryDirectoryContents`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + /** + * Optional. The directory's full path including directory name, relative to the workspace root. If left unset, the workspace root is used. + */ + path?: string; + /** + * Optional. Specifies the metadata to return for each directory entry. If unspecified, the default is `DIRECTORY_CONTENTS_VIEW_BASIC`. Currently the `DIRECTORY_CONTENTS_VIEW_METADATA` view is not supported by CMEK-protected workspaces. + */ + view?: string; + /** + * Required. The workspace's name. + */ + workspace?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile extends StandardParameters { + /** + * Required. The file's full path including filename, relative to the workspace root. + */ + path?: string; + /** + * Optional. The Git revision of the file to return. If left empty, the current contents of `path` will be returned. + */ + revision?: string; + /** + * Required. The workspace's name. + */ + workspace?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory extends StandardParameters { + /** + * Required. The workspace's name. + */ + workspace?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RemoveDirectoryRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile extends StandardParameters { + /** + * Required. The workspace's name. + */ + workspace?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RemoveFileRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Reset extends StandardParameters { + /** + * Required. The workspace's name. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ResetWorkspaceChangesRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles extends StandardParameters { + /** + * Optional. Optional filter for the returned list in filtering format. Filtering is only currently supported on the `path` field. See https://google.aip.dev/160 for details. + */ + filter?: string; + /** + * Optional. Maximum number of search results to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `SearchFilesRequest` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `SearchFilesRequest`, with the exception of `page_size`, must match the call that provided the page token. */ pageToken?: string; /** - * Required. The repository in which to list workspaces. Must be in the format `projects/x/locations/x/repositories/x`. + * Required. The workspace's name. + */ + workspace?: string; + } + export interface Params$Resource$Projects$Locations$Repositories$Workspaces$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$Repositories$Workspaces$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 interface Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile extends StandardParameters { + /** + * Required. The workspace's name. + */ + workspace?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$WriteFileRequest; + } + + export class Resource$Projects$Locations$Teamfolders { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new TeamFolder in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataform.projects.locations.teamFolders.create({ + * // Required. The location in which to create the TeamFolder. Must be in the format `projects/x/locations/x`. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "creatorIamPrincipal": "my_creatorIamPrincipal", + * // "displayName": "my_displayName", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "creatorIamPrincipal": "my_creatorIamPrincipal", + * // "displayName": "my_displayName", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Teamfolders$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Teamfolders$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Teamfolders$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Teamfolders$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Teamfolders$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Teamfolders$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Teamfolders$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Teamfolders$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/teamFolders').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single TeamFolder. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataform.projects.locations.teamFolders.delete({ + * // Required. The TeamFolder's name. + * name: 'projects/my-project/locations/my-location/teamFolders/my-teamFolder', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Makedirectory extends StandardParameters { + delete( + params: Params$Resource$Projects$Locations$Teamfolders$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Teamfolders$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Teamfolders$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Teamfolders$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Teamfolders$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Teamfolders$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Teamfolders$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Teamfolders$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * Required. The workspace's name. + * Deletes a TeamFolder with its contents (Folders, Repositories, Workspaces, ReleaseConfigs, and WorkflowConfigs). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataform.projects.locations.teamFolders.deleteTree({ + * // Required. The TeamFolder's name. Format: projects/{project\}/locations/{location\}/teamFolders/{team_folder\} + * name: 'projects/my-project/locations/my-location/teamFolders/my-teamFolder', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "force": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - workspace?: string; + deleteTree( + params: Params$Resource$Projects$Locations$Teamfolders$Deletetree, + options: StreamMethodOptions + ): Promise>; + deleteTree( + params?: Params$Resource$Projects$Locations$Teamfolders$Deletetree, + options?: MethodOptions + ): Promise>; + deleteTree( + params: Params$Resource$Projects$Locations$Teamfolders$Deletetree, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + deleteTree( + params: Params$Resource$Projects$Locations$Teamfolders$Deletetree, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + deleteTree( + params: Params$Resource$Projects$Locations$Teamfolders$Deletetree, + callback: BodyResponseCallback + ): void; + deleteTree(callback: BodyResponseCallback): void; + deleteTree( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Teamfolders$Deletetree + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Teamfolders$Deletetree; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Teamfolders$Deletetree; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:deleteTree').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$MakeDirectoryRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Movedirectory extends StandardParameters { - /** - * Required. The workspace's name. + * Fetches a single TeamFolder. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataform.projects.locations.teamFolders.get({ + * // Required. The TeamFolder's name. + * name: 'projects/my-project/locations/my-location/teamFolders/my-teamFolder', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "creatorIamPrincipal": "my_creatorIamPrincipal", + * // "displayName": "my_displayName", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - workspace?: string; + get( + params: Params$Resource$Projects$Locations$Teamfolders$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Teamfolders$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Teamfolders$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Teamfolders$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Teamfolders$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Teamfolders$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Teamfolders$Get; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$MoveDirectoryRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Movefile extends StandardParameters { - /** - * Required. The workspace's name. - */ - workspace?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Teamfolders$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$MoveFileRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Pull extends StandardParameters { - /** - * Required. The workspace's name. + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataform.projects.locations.teamFolders.getIamPolicy({ + * // 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': 'placeholder-value', + * // 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: + * 'projects/my-project/locations/my-location/teamFolders/my-teamFolder', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - name?: string; + getIamPolicy( + params: Params$Resource$Projects$Locations$Teamfolders$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Projects$Locations$Teamfolders$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Teamfolders$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Teamfolders$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Teamfolders$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Teamfolders$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Teamfolders$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Teamfolders$Getiampolicy; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$PullGitCommitsRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Push extends StandardParameters { - /** - * Required. The workspace's name. - */ - name?: string; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$PushGitCommitsRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Querydirectorycontents extends StandardParameters { - /** - * Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous `QueryDirectoryContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryDirectoryContents`, with the exception of `page_size`, must match the call that provided the page token. - */ - pageToken?: string; - /** - * Optional. The directory's full path including directory name, relative to the workspace root. If left unset, the workspace root is used. - */ - path?: string; - /** - * Required. The workspace's name. - */ - workspace?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Readfile extends StandardParameters { - /** - * Required. The file's full path including filename, relative to the workspace root. - */ - path?: string; - /** - * Optional. The Git revision of the file to return. If left empty, the current contents of `path` will be returned. - */ - revision?: string; - /** - * Required. The workspace's name. - */ - workspace?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Removedirectory extends StandardParameters { - /** - * Required. The workspace's name. - */ - workspace?: string; + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$RemoveDirectoryRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Removefile extends StandardParameters { - /** - * Required. The workspace's name. + * Updates a single TeamFolder. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataform.projects.locations.teamFolders.patch({ + * // Identifier. The TeamFolder's name. + * name: 'projects/my-project/locations/my-location/teamFolders/my-teamFolder', + * // Optional. Specifies the fields to be updated in the Folder. If left unset, all fields will be updated. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "creatorIamPrincipal": "my_creatorIamPrincipal", + * // "displayName": "my_displayName", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "creatorIamPrincipal": "my_creatorIamPrincipal", + * // "displayName": "my_displayName", + * // "internalMetadata": "my_internalMetadata", + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - workspace?: string; + patch( + params: Params$Resource$Projects$Locations$Teamfolders$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Teamfolders$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Teamfolders$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Teamfolders$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Teamfolders$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Teamfolders$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Teamfolders$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$RemoveFileRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Reset extends StandardParameters { - /** - * Required. The workspace's name. - */ - name?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Teamfolders$Patch; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$ResetWorkspaceChangesRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Searchfiles extends StandardParameters { - /** - * Optional. Optional filter for the returned list in filtering format. Filtering is only currently supported on the `path` field. See https://google.aip.dev/160 for details. - */ - filter?: string; - /** - * Optional. Maximum number of search results to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous `SearchFilesRequest` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `SearchFilesRequest`, with the exception of `page_size`, must match the call that provided the page token. - */ - pageToken?: string; - /** - * Required. The workspace's name. - */ - workspace?: string; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$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; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$SetIamPolicyRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$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. + * Returns the contents of a given TeamFolder. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataform.projects.locations.teamFolders.queryContents({ + * // Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` + * filter: 'placeholder-value', + * // Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: `display_name` (default), `create_time`, last_modified_time. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` + * orderBy: 'placeholder-value', + * // Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `QueryTeamFolderContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryTeamFolderContents`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. Resource name of the TeamFolder to list contents for. Format: `projects/x/locations/x/teamFolders/x`. + * teamFolder: + * 'projects/my-project/locations/my-location/teamFolders/my-teamFolder', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "entries": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - resource?: string; + queryContents( + params: Params$Resource$Projects$Locations$Teamfolders$Querycontents, + options: StreamMethodOptions + ): Promise>; + queryContents( + params?: Params$Resource$Projects$Locations$Teamfolders$Querycontents, + options?: MethodOptions + ): Promise>; + queryContents( + params: Params$Resource$Projects$Locations$Teamfolders$Querycontents, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + queryContents( + params: Params$Resource$Projects$Locations$Teamfolders$Querycontents, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + queryContents( + params: Params$Resource$Projects$Locations$Teamfolders$Querycontents, + callback: BodyResponseCallback + ): void; + queryContents( + callback: BodyResponseCallback + ): void; + queryContents( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Teamfolders$Querycontents + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Teamfolders$Querycontents; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$TestIamPermissionsRequest; - } - export interface Params$Resource$Projects$Locations$Repositories$Workspaces$Writefile extends StandardParameters { - /** - * Required. The workspace's name. - */ - workspace?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Teamfolders$Querycontents; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$WriteFileRequest; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Projects$Locations$Teamfolders { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+teamFolder}:queryContents').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['teamFolder'], + pathParams: ['teamFolder'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } } /** - * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * Returns all TeamFolders in a given location that the caller has access to and match the provided filter. * @example * ```js * // Before running the sample: @@ -13430,20 +16204,24 @@ export namespace dataform_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataform.projects.locations.teamFolders.getIamPolicy({ - * // 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': 'placeholder-value', - * // 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: - * 'projects/my-project/locations/my-location/teamFolders/my-teamFolder', + * const res = await dataform.projects.locations.teamFolders.search({ + * // Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` + * filter: 'placeholder-value', + * // Required. Location in which to query TeamFolders. Format: `projects/x/locations/x`. + * location: 'projects/my-project/locations/my-location', + * // Optional. Field to additionally sort results by. Supported keywords: `display_name` (default), `create_time`, `last_modified_time`. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` + * orderBy: 'placeholder-value', + * // Optional. Maximum number of TeamFolders to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous `SearchTeamFolders` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `SearchTeamFolders`, with the exception of `page_size`, must match the call that provided the page token. + * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "nextPageToken": "my_nextPageToken", + * // "results": [] * // } * } * @@ -13459,54 +16237,57 @@ export namespace dataform_v1 { * @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$Teamfolders$Getiampolicy, + search( + params: Params$Resource$Projects$Locations$Teamfolders$Search, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Teamfolders$Getiampolicy, + search( + params?: Params$Resource$Projects$Locations$Teamfolders$Search, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Teamfolders$Getiampolicy, + ): Promise>; + search( + params: Params$Resource$Projects$Locations$Teamfolders$Search, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Teamfolders$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + search( + params: Params$Resource$Projects$Locations$Teamfolders$Search, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Teamfolders$Getiampolicy, - callback: BodyResponseCallback + search( + params: Params$Resource$Projects$Locations$Teamfolders$Search, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + search( + callback: BodyResponseCallback + ): void; + search( paramsOrCallback?: - | Params$Resource$Projects$Locations$Teamfolders$Getiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Teamfolders$Search + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Teamfolders$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Teamfolders$Search; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Teamfolders$Getiampolicy; + params = {} as Params$Resource$Projects$Locations$Teamfolders$Search; options = {}; } @@ -13519,7 +16300,7 @@ export namespace dataform_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( + url: (rootUrl + '/v1/{+location}/teamFolders:search').replace( /([^:]\/)\/+/g, '$1' ), @@ -13529,17 +16310,17 @@ export namespace dataform_v1 { options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['location'], + pathParams: ['location'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -13850,6 +16631,40 @@ export namespace dataform_v1 { } } + export interface Params$Resource$Projects$Locations$Teamfolders$Create extends StandardParameters { + /** + * Required. The location in which to create the TeamFolder. Must be in the format `projects/x/locations/x`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TeamFolder; + } + export interface Params$Resource$Projects$Locations$Teamfolders$Delete extends StandardParameters { + /** + * Required. The TeamFolder's name. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Teamfolders$Deletetree extends StandardParameters { + /** + * Required. The TeamFolder's name. Format: projects/{project\}/locations/{location\}/teamFolders/{team_folder\} + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DeleteTeamFolderTreeRequest; + } + export interface Params$Resource$Projects$Locations$Teamfolders$Get extends StandardParameters { + /** + * Required. The TeamFolder's name. + */ + name?: string; + } export interface Params$Resource$Projects$Locations$Teamfolders$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). @@ -13860,6 +16675,65 @@ export namespace dataform_v1 { */ resource?: string; } + export interface Params$Resource$Projects$Locations$Teamfolders$Patch extends StandardParameters { + /** + * Identifier. The TeamFolder's name. + */ + name?: string; + /** + * Optional. Specifies the fields to be updated in the Folder. If left unset, all fields will be updated. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TeamFolder; + } + export interface Params$Resource$Projects$Locations$Teamfolders$Querycontents extends StandardParameters { + /** + * Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` + */ + filter?: string; + /** + * Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: `display_name` (default), `create_time`, last_modified_time. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` + */ + orderBy?: string; + /** + * Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `QueryTeamFolderContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryTeamFolderContents`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. Resource name of the TeamFolder to list contents for. Format: `projects/x/locations/x/teamFolders/x`. + */ + teamFolder?: string; + } + export interface Params$Resource$Projects$Locations$Teamfolders$Search extends StandardParameters { + /** + * Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` + */ + filter?: string; + /** + * Required. Location in which to query TeamFolders. Format: `projects/x/locations/x`. + */ + location?: string; + /** + * Optional. Field to additionally sort results by. Supported keywords: `display_name` (default), `create_time`, `last_modified_time`. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` + */ + orderBy?: string; + /** + * Optional. Maximum number of TeamFolders to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. Page token received from a previous `SearchTeamFolders` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `SearchTeamFolders`, with the exception of `page_size`, must match the call that provided the page token. + */ + pageToken?: string; + } export interface Params$Resource$Projects$Locations$Teamfolders$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. diff --git a/src/apis/dataform/v1beta1.ts b/src/apis/dataform/v1beta1.ts index 046e4c73850..f1ff625797b 100644 --- a/src/apis/dataform/v1beta1.ts +++ b/src/apis/dataform/v1beta1.ts @@ -628,6 +628,24 @@ export namespace dataform_v1beta1 { * Represents the delete file operation. */ export interface Schema$DeleteFile {} + /** + * `DeleteFolderTree` request message. + */ + export interface Schema$DeleteFolderTreeRequest { + /** + * Optional. If `false` (default): The operation will fail if any Repository within the folder hierarchy has associated Release Configs or Workflow Configs. If `true`: The operation will attempt to delete everything, including any Release Configs and Workflow Configs linked to Repositories within the folder hierarchy. This permanently removes schedules and resources. + */ + force?: boolean | null; + } + /** + * `DeleteTeamFolderTree` request message. + */ + export interface Schema$DeleteTeamFolderTreeRequest { + /** + * Optional. If `false` (default): The operation will fail if any Repository within the folder hierarchy has associated Release Configs or Workflow Configs. If `true`: The operation will attempt to delete everything, including any Release Configs and Workflow Configs linked to Repositories within the folder hierarchy. This permanently removes schedules and resources. + */ + force?: boolean | null; + } /** * Represents a single entry in a directory. */ @@ -640,6 +658,10 @@ export namespace dataform_v1beta1 { * A file in the directory. */ file?: string | null; + /** + * Entry with metadata. + */ + metadata?: Schema$FilesystemEntryMetadata; } /** * Client-facing representation of a directory entry in search results. @@ -763,12 +785,25 @@ export namespace dataform_v1beta1 { */ path?: string | null; } + /** + * Represents metadata for a single entry in a filesystem. + */ + export interface Schema$FilesystemEntryMetadata { + /** + * Output only. Provides the size of the entry in bytes. For directories, this will be 0. + */ + sizeBytes?: string | null; + /** + * Output only. Represents the time of the last modification of the entry. + */ + updateTime?: string | null; + } /** * Represents a Dataform Folder. This is a resource that is used to organize Files and other Folders and provide hierarchical access controls. */ export interface Schema$Folder { /** - * Optional. The containing Folder resource name. This should take the format: projects/{project\}/locations/{location\}/folders/{folder\}, projects/{project\}/locations/{location\}/teamFolders/{teamFolder\}, or just projects/{project\}/locations/{location\} if this is a root Folder. This field can only be updated through MoveFolder. + * Optional. The containing Folder resource name. This should take the format: projects/{project\}/locations/{location\}/folders/{folder\}, projects/{project\}/locations/{location\}/teamFolders/{teamFolder\}, or just "" if this is a root Folder. This field can only be updated through MoveFolder. */ containingFolder?: string | null; /** @@ -822,7 +857,7 @@ export namespace dataform_v1beta1 { */ authenticationTokenSecretVersion?: string | null; /** - * Required. The Git remote's default branch name. + * Required. The Git remote's default branch name. If not set, `main` will be used and stored for the repository. */ defaultBranch?: string | null; /** @@ -2500,7 +2535,7 @@ export namespace dataform_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2684,11 +2719,11 @@ export namespace dataform_v1beta1 { * * // Do the magic * const res = await dataform.projects.locations.queryUserRootContents({ - * // Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: - `filter="display_name="MyFolder""` + * // Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` * filter: 'placeholder-value', - * // Required. Location of the user root folder whose contents to list. Format: projects/x/locations/x + * // Required. Location of the user root folder to list contents for. Format: projects/x/locations/x * location: 'projects/my-project/locations/my-location', - * // Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), created_at, last_modified_at. Examples: - `orderBy="display_name"` - `orderBy="display_name desc"` + * // Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), created_at, last_modified_at. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` * orderBy: 'placeholder-value', * // Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. * pageSize: 'placeholder-value', @@ -2992,15 +3027,15 @@ export namespace dataform_v1beta1 { } export interface Params$Resource$Projects$Locations$Queryuserrootcontents extends StandardParameters { /** - * Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: - `filter="display_name="MyFolder""` + * Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` */ filter?: string; /** - * Required. Location of the user root folder whose contents to list. Format: projects/x/locations/x + * Required. Location of the user root folder to list contents for. Format: projects/x/locations/x */ location?: string; /** - * Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), created_at, last_modified_at. Examples: - `orderBy="display_name"` - `orderBy="display_name desc"` + * Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), created_at, last_modified_at. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` */ orderBy?: string; /** @@ -3068,7 +3103,7 @@ export namespace dataform_v1beta1 { * * // Do the magic * const res = await dataform.projects.locations.folders.create({ - * // The ID to use for the Folder, which will become the final component of the Folder's resource name. + * // Deprecated: This field is not used. The resource name is generated automatically. The ID to use for the Folder, which will become the final component of the Folder's resource name. * folderId: 'placeholder-value', * // Required. The location in which to create the Folder. Must be in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', @@ -3333,6 +3368,158 @@ export namespace dataform_v1beta1 { } } + /** + * Deletes a Folder with its contents (Folders, Repositories, Workspaces, ReleaseConfigs, and WorkflowConfigs). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataform.projects.locations.folders.deleteTree({ + * // Required. The Folder's name. Format: projects/{project\}/locations/{location\}/folders/{folder\} + * name: 'projects/my-project/locations/my-location/folders/my-folder', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "force": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + deleteTree( + params: Params$Resource$Projects$Locations$Folders$Deletetree, + options: StreamMethodOptions + ): Promise>; + deleteTree( + params?: Params$Resource$Projects$Locations$Folders$Deletetree, + options?: MethodOptions + ): Promise>; + deleteTree( + params: Params$Resource$Projects$Locations$Folders$Deletetree, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + deleteTree( + params: Params$Resource$Projects$Locations$Folders$Deletetree, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + deleteTree( + params: Params$Resource$Projects$Locations$Folders$Deletetree, + callback: BodyResponseCallback + ): void; + deleteTree(callback: BodyResponseCallback): void; + deleteTree( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Folders$Deletetree + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Folders$Deletetree; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Folders$Deletetree; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}:deleteTree').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Fetches a single Folder. * @example @@ -3968,11 +4155,11 @@ export namespace dataform_v1beta1 { * * // Do the magic * const res = await dataform.projects.locations.folders.queryFolderContents({ - * // Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: - `filter="display_name="MyFolder""` + * // Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` * filter: 'placeholder-value', - * // Required. Name of the folder whose contents to list. Format: projects/x/locations/x/folders/x + * // Required. Resource name of the Folder to list contents for. Format: projects/x/locations/x/folders/x * folder: 'projects/my-project/locations/my-location/folders/my-folder', - * // Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), create_time, last_modified_time. Examples: - `orderBy="display_name"` - `orderBy="display_name desc"` + * // Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), create_time, last_modified_time. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` * orderBy: 'placeholder-value', * // Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. * pageSize: 'placeholder-value', @@ -4394,7 +4581,7 @@ export namespace dataform_v1beta1 { export interface Params$Resource$Projects$Locations$Folders$Create extends StandardParameters { /** - * The ID to use for the Folder, which will become the final component of the Folder's resource name. + * Deprecated: This field is not used. The resource name is generated automatically. The ID to use for the Folder, which will become the final component of the Folder's resource name. */ folderId?: string; /** @@ -4413,6 +4600,17 @@ export namespace dataform_v1beta1 { */ name?: string; } + export interface Params$Resource$Projects$Locations$Folders$Deletetree extends StandardParameters { + /** + * Required. The Folder's name. Format: projects/{project\}/locations/{location\}/folders/{folder\} + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DeleteFolderTreeRequest; + } export interface Params$Resource$Projects$Locations$Folders$Get extends StandardParameters { /** * Required. The Folder's name. @@ -4457,15 +4655,15 @@ export namespace dataform_v1beta1 { } export interface Params$Resource$Projects$Locations$Folders$Queryfoldercontents extends StandardParameters { /** - * Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: - `filter="display_name="MyFolder""` + * Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` */ filter?: string; /** - * Required. Name of the folder whose contents to list. Format: projects/x/locations/x/folders/x + * Required. Resource name of the Folder to list contents for. Format: projects/x/locations/x/folders/x */ folder?: string; /** - * Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), create_time, last_modified_time. Examples: - `orderBy="display_name"` - `orderBy="display_name desc"` + * Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: display_name (default), create_time, last_modified_time. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` */ orderBy?: string; /** @@ -13339,6 +13537,8 @@ export namespace dataform_v1beta1 { * pageToken: 'placeholder-value', * // Optional. The directory's full path including directory name, relative to the workspace root. If left unset, the workspace root is used. * path: 'placeholder-value', + * // Optional. Specifies the metadata to return for each directory entry. If unspecified, the default is `DIRECTORY_CONTENTS_VIEW_BASIC`. Currently the `DIRECTORY_CONTENTS_VIEW_METADATA` view is not supported by CMEK-protected workspaces. + * view: 'placeholder-value', * // Required. The workspace's name. * workspace: * 'projects/my-project/locations/my-location/repositories/my-repositorie/workspaces/my-workspace', @@ -14845,6 +15045,10 @@ export namespace dataform_v1beta1 { * Optional. The directory's full path including directory name, relative to the workspace root. If left unset, the workspace root is used. */ path?: string; + /** + * Optional. Specifies the metadata to return for each directory entry. If unspecified, the default is `DIRECTORY_CONTENTS_VIEW_BASIC`. Currently the `DIRECTORY_CONTENTS_VIEW_METADATA` view is not supported by CMEK-protected workspaces. + */ + view?: string; /** * Required. The workspace's name. */ @@ -14991,7 +15195,7 @@ export namespace dataform_v1beta1 { * const res = await dataform.projects.locations.teamFolders.create({ * // Required. The location in which to create the TeamFolder. Must be in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', - * // The ID to use for the TeamFolder, which will become the final component of the TeamFolder's resource name. + * // Deprecated: This field is not used. The resource name is generated automatically. The ID to use for the TeamFolder, which will become the final component of the TeamFolder's resource name. * teamFolderId: 'placeholder-value', * * // Request body metadata @@ -15250,6 +15454,159 @@ export namespace dataform_v1beta1 { } } + /** + * Deletes a TeamFolder with its contents (Folders, Repositories, Workspaces, ReleaseConfigs, and WorkflowConfigs). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataform.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataform = google.dataform('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/bigquery', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataform.projects.locations.teamFolders.deleteTree({ + * // Required. The TeamFolder's name. Format: projects/{project\}/locations/{location\}/teamFolders/{team_folder\} + * name: 'projects/my-project/locations/my-location/teamFolders/my-teamFolder', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "force": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + deleteTree( + params: Params$Resource$Projects$Locations$Teamfolders$Deletetree, + options: StreamMethodOptions + ): Promise>; + deleteTree( + params?: Params$Resource$Projects$Locations$Teamfolders$Deletetree, + options?: MethodOptions + ): Promise>; + deleteTree( + params: Params$Resource$Projects$Locations$Teamfolders$Deletetree, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + deleteTree( + params: Params$Resource$Projects$Locations$Teamfolders$Deletetree, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + deleteTree( + params: Params$Resource$Projects$Locations$Teamfolders$Deletetree, + callback: BodyResponseCallback + ): void; + deleteTree(callback: BodyResponseCallback): void; + deleteTree( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Teamfolders$Deletetree + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Teamfolders$Deletetree; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Teamfolders$Deletetree; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}:deleteTree').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Fetches a single TeamFolder. * @example @@ -15729,15 +16086,15 @@ export namespace dataform_v1beta1 { * * // Do the magic * const res = await dataform.projects.locations.teamFolders.queryContents({ - * // Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: - `filter="display_name="MyFolder""` + * // Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` * filter: 'placeholder-value', - * // Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: `display_name` (default), `create_time`, last_modified_time. Examples: - `orderBy="display_name"` - `orderBy="display_name desc"` + * // Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: `display_name` (default), `create_time`, last_modified_time. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` * orderBy: 'placeholder-value', * // Optional. Maximum number of paths to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. * pageSize: 'placeholder-value', * // Optional. Page token received from a previous `QueryTeamFolderContents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `QueryTeamFolderContents`, with the exception of `page_size`, must match the call that provided the page token. * pageToken: 'placeholder-value', - * // Required. Name of the team_folder whose contents to list. Format: `projects/x/locations/x/teamFolders/x`. + * // Required. Resource name of the TeamFolder to list contents for. Format: `projects/x/locations/x/teamFolders/x`. * teamFolder: * 'projects/my-project/locations/my-location/teamFolders/my-teamFolder', * }); @@ -15886,11 +16243,11 @@ export namespace dataform_v1beta1 { * * // Do the magic * const res = await dataform.projects.locations.teamFolders.search({ - * // Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: - `filter="display_name="MyFolder""` + * // Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` * filter: 'placeholder-value', * // Required. Location in which to query TeamFolders. Format: `projects/x/locations/x`. * location: 'projects/my-project/locations/my-location', - * // Optional. Field to additionally sort results by. Supported keywords: `display_name` (default), `create_time`, `last_modified_time`. Examples: - `orderBy="display_name"` - `orderBy="display_name desc"` + * // Optional. Field to additionally sort results by. Supported keywords: `display_name` (default), `create_time`, `last_modified_time`. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` * orderBy: 'placeholder-value', * // Optional. Maximum number of TeamFolders to return. The server may return fewer items than requested. If unspecified, the server will pick an appropriate default. * pageSize: 'placeholder-value', @@ -16318,7 +16675,7 @@ export namespace dataform_v1beta1 { */ parent?: string; /** - * The ID to use for the TeamFolder, which will become the final component of the TeamFolder's resource name. + * Deprecated: This field is not used. The resource name is generated automatically. The ID to use for the TeamFolder, which will become the final component of the TeamFolder's resource name. */ teamFolderId?: string; @@ -16333,6 +16690,17 @@ export namespace dataform_v1beta1 { */ name?: string; } + export interface Params$Resource$Projects$Locations$Teamfolders$Deletetree extends StandardParameters { + /** + * Required. The TeamFolder's name. Format: projects/{project\}/locations/{location\}/teamFolders/{team_folder\} + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DeleteTeamFolderTreeRequest; + } export interface Params$Resource$Projects$Locations$Teamfolders$Get extends StandardParameters { /** * Required. The TeamFolder's name. @@ -16366,11 +16734,11 @@ export namespace dataform_v1beta1 { } export interface Params$Resource$Projects$Locations$Teamfolders$Querycontents extends StandardParameters { /** - * Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: - `filter="display_name="MyFolder""` + * Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` */ filter?: string; /** - * Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: `display_name` (default), `create_time`, last_modified_time. Examples: - `orderBy="display_name"` - `orderBy="display_name desc"` + * Optional. Field to additionally sort results by. Will order Folders before Repositories, and then by `order_by` in ascending order. Supported keywords: `display_name` (default), `create_time`, last_modified_time. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` */ orderBy?: string; /** @@ -16382,13 +16750,13 @@ export namespace dataform_v1beta1 { */ pageToken?: string; /** - * Required. Name of the team_folder whose contents to list. Format: `projects/x/locations/x/teamFolders/x`. + * Required. Resource name of the TeamFolder to list contents for. Format: `projects/x/locations/x/teamFolders/x`. */ teamFolder?: string; } export interface Params$Resource$Projects$Locations$Teamfolders$Search extends StandardParameters { /** - * Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: - `filter="display_name="MyFolder""` + * Optional. Optional filtering for the returned list. Filtering is currently only supported on the `display_name` field. Example: * `filter="display_name="MyFolder""` */ filter?: string; /** @@ -16396,7 +16764,7 @@ export namespace dataform_v1beta1 { */ location?: string; /** - * Optional. Field to additionally sort results by. Supported keywords: `display_name` (default), `create_time`, `last_modified_time`. Examples: - `orderBy="display_name"` - `orderBy="display_name desc"` + * Optional. Field to additionally sort results by. Supported keywords: `display_name` (default), `create_time`, `last_modified_time`. Examples: * `orderBy="display_name"` * `orderBy="display_name desc"` */ orderBy?: string; /** diff --git a/src/apis/datamanager/v1.ts b/src/apis/datamanager/v1.ts index 44ddd366d73..eb13804d0ef 100644 --- a/src/apis/datamanager/v1.ts +++ b/src/apis/datamanager/v1.ts @@ -913,7 +913,7 @@ export namespace datamanager_v1 { */ cleanRoomIdentifier?: string | null; /** - * Optional. This field denotes the percentage of membership match of this user list with the corresponding publisher's first party data. Must be between 0 and 100 inclusive. + * Required. This field denotes the percentage of membership match of this user list with the corresponding publisher's first party data. Must be between 0 and 100 inclusive. */ matchRatePercentage?: number | null; /** @@ -1814,7 +1814,7 @@ export namespace datamanager_v1 { } /** - * Creates a partner link for the given account. Authorization Headers: This method supports the following optional headers to define how the API authorizes access for the request: * `login-account`: (Optional) The resource name of the account where the Google Account of the credentials is a user. If not set, defaults to the account of the request. Format: `accountTypes/{loginAccountType\}/accounts/{loginAccountId\}` * `linked-account`: (Optional) The resource name of the account with an established product link to the `login-account`. Format: `accountTypes/{linkedAccountType\}/accounts/{linkedAccountId\}` + * Creates a partner link for the given account. Authorization Headers: This method supports the following optional headers to define how the API authorizes access for the request: * `login-account`: (Optional) The resource name of the account where the Google Account of the credentials is a user. If not set, defaults to the account of the request. Format: `accountTypes/{loginAccountType\}/accounts/{loginAccountId\}` * @example * ```js * // Before running the sample: @@ -1835,7 +1835,10 @@ export namespace datamanager_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/datamanager'], + * scopes: [ + * 'https://www.googleapis.com/auth/datamanager', + * 'https://www.googleapis.com/auth/datamanager.partnerlink', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -1966,7 +1969,7 @@ export namespace datamanager_v1 { } /** - * Deletes a partner link for the given account. Authorization Headers: This method supports the following optional headers to define how the API authorizes access for the request: * `login-account`: (Optional) The resource name of the account where the Google Account of the credentials is a user. If not set, defaults to the account of the request. Format: `accountTypes/{loginAccountType\}/accounts/{loginAccountId\}` * `linked-account`: (Optional) The resource name of the account with an established product link to the `login-account`. Format: `accountTypes/{linkedAccountType\}/accounts/{linkedAccountId\}` + * Deletes a partner link for the given account. Authorization Headers: This method supports the following optional headers to define how the API authorizes access for the request: * `login-account`: (Optional) The resource name of the account where the Google Account of the credentials is a user. If not set, defaults to the account of the request. Format: `accountTypes/{loginAccountType\}/accounts/{loginAccountId\}` * @example * ```js * // Before running the sample: @@ -1987,7 +1990,10 @@ export namespace datamanager_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/datamanager'], + * scopes: [ + * 'https://www.googleapis.com/auth/datamanager', + * 'https://www.googleapis.com/auth/datamanager.partnerlink', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -2099,7 +2105,7 @@ export namespace datamanager_v1 { } /** - * Searches for all partner links to and from a given account. Authorization Headers: This method supports the following optional headers to define how the API authorizes access for the request: * `login-account`: (Optional) The resource name of the account where the Google Account of the credentials is a user. If not set, defaults to the account of the request. Format: `accountTypes/{loginAccountType\}/accounts/{loginAccountId\}` * `linked-account`: (Optional) The resource name of the account with an established product link to the `login-account`. Format: `accountTypes/{linkedAccountType\}/accounts/{linkedAccountId\}` + * Searches for all partner links to and from a given account. Authorization Headers: This method supports the following optional headers to define how the API authorizes access for the request: * `login-account`: (Optional) The resource name of the account where the Google Account of the credentials is a user. If not set, defaults to the account of the request. Format: `accountTypes/{loginAccountType\}/accounts/{loginAccountId\}` * @example * ```js * // Before running the sample: @@ -2120,7 +2126,10 @@ export namespace datamanager_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/datamanager'], + * scopes: [ + * 'https://www.googleapis.com/auth/datamanager', + * 'https://www.googleapis.com/auth/datamanager.partnerlink', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -2129,7 +2138,7 @@ export namespace datamanager_v1 { * * // Do the magic * const res = await datamanager.accountTypes.accounts.partnerLinks.search({ - * // Optional. A [filter string](//google.aip.dev/160). All fields need to be on the left hand side of each condition (for example: `partner_link_id = 123456789`). Supported operations: - `AND` - `=` - `!=` Supported fields: - `partner_link_id` - `owning_account.account_type` - `owning_account.account_id` - `partner_account.account_type` - `partner_account.account_id` Example: `owning_account.account_type = "GOOGLE_ADS" AND partner_account.account_id = 987654321` + * // Optional. A [filter string](https://google.aip.dev/160). All fields need to be on the left hand side of each condition (for example: `partner_link_id = 123456789`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. Supported operations: - `AND` - `=` - `!=` Supported fields: - `partner_link_id` - `owning_account.account_type` - `owning_account.account_id` - `partner_account.account_type` - `partner_account.account_id` Example: `owning_account.account_type = "GOOGLE_ADS" AND partner_account.account_id = 987654321` * filter: 'placeholder-value', * // The maximum number of partner links to return. The service may return fewer than this value. If unspecified, at most 10 partner links will be returned. The maximum value is 100; values above 100 will be coerced to 100. * pageSize: 'placeholder-value', @@ -2267,7 +2276,7 @@ export namespace datamanager_v1 { } export interface Params$Resource$Accounttypes$Accounts$Partnerlinks$Search extends StandardParameters { /** - * Optional. A [filter string](//google.aip.dev/160). All fields need to be on the left hand side of each condition (for example: `partner_link_id = 123456789`). Supported operations: - `AND` - `=` - `!=` Supported fields: - `partner_link_id` - `owning_account.account_type` - `owning_account.account_id` - `partner_account.account_type` - `partner_account.account_id` Example: `owning_account.account_type = "GOOGLE_ADS" AND partner_account.account_id = 987654321` + * Optional. A [filter string](https://google.aip.dev/160). All fields need to be on the left hand side of each condition (for example: `partner_link_id = 123456789`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. Supported operations: - `AND` - `=` - `!=` Supported fields: - `partner_link_id` - `owning_account.account_type` - `owning_account.account_id` - `partner_account.account_type` - `partner_account.account_id` Example: `owning_account.account_type = "GOOGLE_ADS" AND partner_account.account_id = 987654321` */ filter?: string; /** @@ -2636,7 +2645,7 @@ export namespace datamanager_v1 { * // Do the magic * const res = * await datamanager.accountTypes.accounts.userListDirectLicenses.list({ - * // Optional. Filters to apply to the list request. All fields need to be on the left hand side of each condition (for example: user_list_id = 123). **Supported Operations:** - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time` + * // Optional. A [filter string](https://google.aip.dev/160) to apply to the list request. All fields need to be on the left hand side of each condition (for example: `user_list_id = 123`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. **Supported Operations:** - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time` * filter: 'placeholder-value', * // Optional. The maximum number of licenses to return per page. The service may return fewer than this value. If unspecified, at most 50 licenses will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', @@ -2946,7 +2955,7 @@ export namespace datamanager_v1 { } export interface Params$Resource$Accounttypes$Accounts$Userlistdirectlicenses$List extends StandardParameters { /** - * Optional. Filters to apply to the list request. All fields need to be on the left hand side of each condition (for example: user_list_id = 123). **Supported Operations:** - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time` + * Optional. A [filter string](https://google.aip.dev/160) to apply to the list request. All fields need to be on the left hand side of each condition (for example: `user_list_id = 123`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. **Supported Operations:** - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time` */ filter?: string; /** @@ -3329,7 +3338,7 @@ export namespace datamanager_v1 { * // Do the magic * const res = * await datamanager.accountTypes.accounts.userListGlobalLicenses.list({ - * // Optional. Filters to apply to the list request. All fields need to be on the left hand side of each condition (for example: user_list_id = 123). **Supported Operations:** - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time` + * // Optional. A [filter string](https://google.aip.dev/160) to apply to the list request. All fields need to be on the left hand side of each condition (for example: `user_list_id = 123`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. **Supported Operations:** - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time` * filter: 'placeholder-value', * // Optional. The maximum number of licenses to return. The service may return fewer than this value. If unspecified, at most 50 licenses will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', @@ -3635,7 +3644,7 @@ export namespace datamanager_v1 { } export interface Params$Resource$Accounttypes$Accounts$Userlistgloballicenses$List extends StandardParameters { /** - * Optional. Filters to apply to the list request. All fields need to be on the left hand side of each condition (for example: user_list_id = 123). **Supported Operations:** - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time` + * Optional. A [filter string](https://google.aip.dev/160) to apply to the list request. All fields need to be on the left hand side of each condition (for example: `user_list_id = 123`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. **Supported Operations:** - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time` */ filter?: string; /** @@ -3706,7 +3715,7 @@ export namespace datamanager_v1 { * const res = * await datamanager.accountTypes.accounts.userListGlobalLicenses.userListGlobalLicenseCustomerInfos.list( * { - * // Optional. Filters to apply to the list request. All fields need to be on the left hand side of each condition (for example: user_list_id = 123). **Supported Operations:** - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time` + * // Optional. A [filter string](https://google.aip.dev/160) to apply to the list request. All fields need to be on the left hand side of each condition (for example: `user_list_id = 123`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. **Supported Operations:** - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time` * filter: 'placeholder-value', * // Optional. The maximum number of licenses to return. The service may return fewer than this value. If unspecified, at most 50 licenses will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', @@ -3834,7 +3843,7 @@ export namespace datamanager_v1 { export interface Params$Resource$Accounttypes$Accounts$Userlistgloballicenses$Userlistgloballicensecustomerinfos$List extends StandardParameters { /** - * Optional. Filters to apply to the list request. All fields need to be on the left hand side of each condition (for example: user_list_id = 123). **Supported Operations:** - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time` + * Optional. A [filter string](https://google.aip.dev/160) to apply to the list request. All fields need to be on the left hand side of each condition (for example: `user_list_id = 123`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. **Supported Operations:** - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` **Unsupported Fields:** - `name` (use get method instead) - `historical_pricings` and all its subfields - `pricing.start_time` - `pricing.end_time` */ filter?: string; /** @@ -4342,7 +4351,7 @@ export namespace datamanager_v1 { * * // Do the magic * const res = await datamanager.accountTypes.accounts.userLists.list({ - * // Optional. A [filter string](//google.aip.dev/160). All fields need to be on the left hand side of each condition (for example: `display_name = "list 1"`). Supported operations: - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` - `:` (has) Supported fields: - `id` - `display_name` - `description` - `membership_status` - `integration_code` - `access_reason` - `ingested_user_list_info.upload_key_types` + * // Optional. A [filter string](https://google.aip.dev/160). All fields need to be on the left hand side of each condition (for example: `display_name = "list 1"`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. Supported operations: - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` - `:` (has) Supported fields: - `id` - `display_name` - `description` - `membership_status` - `integration_code` - `access_reason` - `ingested_user_list_info.upload_key_types` * filter: 'placeholder-value', * // Optional. The maximum number of user lists to return. The service may return fewer than this value. If unspecified, at most 50 user lists will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', @@ -4663,7 +4672,7 @@ export namespace datamanager_v1 { } export interface Params$Resource$Accounttypes$Accounts$Userlists$List extends StandardParameters { /** - * Optional. A [filter string](//google.aip.dev/160). All fields need to be on the left hand side of each condition (for example: `display_name = "list 1"`). Supported operations: - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` - `:` (has) Supported fields: - `id` - `display_name` - `description` - `membership_status` - `integration_code` - `access_reason` - `ingested_user_list_info.upload_key_types` + * Optional. A [filter string](https://google.aip.dev/160). All fields need to be on the left hand side of each condition (for example: `display_name = "list 1"`). Fields must be specified using either all [camel case](https://en.wikipedia.org/wiki/Camel_case) or all [snake case](https://en.wikipedia.org/wiki/Snake_case). Don't use a combination of camel case and snake case. Supported operations: - `AND` - `=` - `!=` - `\>` - `\>=` - `<` - `<=` - `:` (has) Supported fields: - `id` - `display_name` - `description` - `membership_status` - `integration_code` - `access_reason` - `ingested_user_list_info.upload_key_types` */ filter?: string; /** diff --git a/src/apis/datamigration/v1.ts b/src/apis/datamigration/v1.ts index 44c75208a24..7291cea6fa4 100644 --- a/src/apis/datamigration/v1.ts +++ b/src/apis/datamigration/v1.ts @@ -2301,6 +2301,10 @@ export namespace datamigration_v1 { * Optional. The name of the specific database within the host. */ database?: string | null; + /** + * Optional. If true, Database Migration Service will use IAM database authentication to connect to the database. + */ + enableIamAuthentication?: boolean | null; /** * Forward SSH tunnel connectivity. */ @@ -3870,7 +3874,7 @@ export namespace datamigration_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/datamigration/v1beta1.ts b/src/apis/datamigration/v1beta1.ts index 0bb837c3894..d4e47ca3abf 100644 --- a/src/apis/datamigration/v1beta1.ts +++ b/src/apis/datamigration/v1beta1.ts @@ -1237,7 +1237,7 @@ export namespace datamigration_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/dataplex/v1.ts b/src/apis/dataplex/v1.ts index baf915ff01f..a5a14910b95 100644 --- a/src/apis/dataplex/v1.ts +++ b/src/apis/dataplex/v1.ts @@ -276,7 +276,7 @@ export namespace dataplex_v1 { */ export interface Schema$GoogleCloudDataplexV1ActionUnauthorizedResource {} /** - * An aspect is a single piece of metadata describing an entry. + * Represents a single piece of metadata describing an entry or entry link. */ export interface Schema$GoogleCloudDataplexV1Aspect { /** @@ -747,76 +747,21 @@ export namespace dataplex_v1 { resource?: string | null; } /** - * Cancel task jobs. + * Request message for the CancelDataScanJob method. */ - export interface Schema$GoogleCloudDataplexV1CancelJobRequest {} + export interface Schema$GoogleCloudDataplexV1CancelDataScanJobRequest {} /** - * Cancel metadata job request. + * Response message for the CancelDataScanJob method. */ - export interface Schema$GoogleCloudDataplexV1CancelMetadataJobRequest {} - /** - * Content represents a user-visible notebook or a sql script - */ - export interface Schema$GoogleCloudDataplexV1Content { - /** - * Output only. Content creation time. - */ - createTime?: string | null; - /** - * Required. Content data in string format. - */ - dataText?: string | null; - /** - * Optional. Description of the content. - */ - description?: string | null; - /** - * Optional. User defined labels for the content. - */ - labels?: {[key: string]: string} | null; - /** - * Output only. The relative resource name of the content, of the form: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - */ - name?: string | null; - /** - * Notebook related configurations. - */ - notebook?: Schema$GoogleCloudDataplexV1ContentNotebook; - /** - * Required. The path for the Content file, represented as directory structure. Unique within a lake. Limited to alphanumerics, hyphens, underscores, dots and slashes. - */ - path?: string | null; - /** - * Sql Script related configurations. - */ - sqlScript?: Schema$GoogleCloudDataplexV1ContentSqlScript; - /** - * Output only. System generated globally unique ID for the content. This ID will be different if the content is deleted and re-created with the same name. - */ - uid?: string | null; - /** - * Output only. The time when the content was last updated. - */ - updateTime?: string | null; - } + export interface Schema$GoogleCloudDataplexV1CancelDataScanJobResponse {} /** - * Configuration for Notebook content. + * Cancel task jobs. */ - export interface Schema$GoogleCloudDataplexV1ContentNotebook { - /** - * Required. Kernel Type of the notebook. - */ - kernelType?: string | null; - } + export interface Schema$GoogleCloudDataplexV1CancelJobRequest {} /** - * Configuration for the Sql Script content. + * Cancel metadata job request. */ - export interface Schema$GoogleCloudDataplexV1ContentSqlScript { - /** - * Required. Query Engine to be used for the Sql Query. - */ - engine?: string | null; - } + export interface Schema$GoogleCloudDataplexV1CancelMetadataJobRequest {} /** * DataAccessSpec holds the access control configuration to be enforced on data stored within resources (eg: rows, columns in BigQuery Tables). When associated with data, the data is only accessible to principals explicitly granted access through the DataAccessSpec. Principals with access to the containing resource are not implicitly granted access. */ @@ -1110,6 +1055,10 @@ export namespace dataplex_v1 { * Optional. Configuration for JSON data. */ jsonOptions?: Schema$GoogleCloudDataplexV1DataDiscoverySpecStorageConfigJsonOptions; + /** + * Optional. Specifies configuration for unstructured data discovery. + */ + unstructuredDataOptions?: Schema$GoogleCloudDataplexV1DataDiscoverySpecStorageConfigUnstructuredDataOptions; } /** * Describes CSV and similar semi-structured data formats. @@ -1149,15 +1098,49 @@ export namespace dataplex_v1 { */ typeInferenceDisabled?: boolean | null; } + /** + * Describes options for unstructured data discovery. + */ + export interface Schema$GoogleCloudDataplexV1DataDiscoverySpecStorageConfigUnstructuredDataOptions { + /** + * Optional. Deprecated: Use semantic_inference_enabled instead. Specifies whether deeper entity inference over the objects' contents using GenAI is enabled. + */ + entityInferenceEnabled?: boolean | null; + /** + * Optional. Specifies whether deeper semantic inference over the objects' contents using GenAI is enabled. + */ + semanticInferenceEnabled?: boolean | null; + } /** * The output of a DataDocumentation scan. */ export interface Schema$GoogleCloudDataplexV1DataDocumentationResult { /** - * Output only. Table result for insights. + * Output only. Insights for a Dataset resource. + */ + datasetResult?: Schema$GoogleCloudDataplexV1DataDocumentationResultDatasetResult; + /** + * Output only. Insights for a Table resource. */ tableResult?: Schema$GoogleCloudDataplexV1DataDocumentationResultTableResult; } + /** + * Insights for a dataset resource. + */ + export interface Schema$GoogleCloudDataplexV1DataDocumentationResultDatasetResult { + /** + * Output only. Generated Dataset description. + */ + overview?: string | null; + /** + * Output only. Sample SQL queries for the dataset. + */ + queries?: Schema$GoogleCloudDataplexV1DataDocumentationResultQuery[]; + /** + * Output only. Relationships suggesting how tables in the dataset are related to each other, based on their schema. + */ + schemaRelationships?: Schema$GoogleCloudDataplexV1DataDocumentationResultSchemaRelationship[]; + } /** * Column of a table with generated metadata and nested fields. */ @@ -1198,7 +1181,41 @@ export namespace dataplex_v1 { fields?: Schema$GoogleCloudDataplexV1DataDocumentationResultField[]; } /** - * Generated metadata about the table. + * Details of the relationship between the schema of two resources. + */ + export interface Schema$GoogleCloudDataplexV1DataDocumentationResultSchemaRelationship { + /** + * Output only. An ordered list of fields for the join from the first table. The size of this list must be the same as right_schema_paths. Each field at index i in this list must correspond to a field at the same index in the right_schema_paths list. + */ + leftSchemaPaths?: Schema$GoogleCloudDataplexV1DataDocumentationResultSchemaRelationshipSchemaPaths; + /** + * Output only. An ordered list of fields for the join from the second table. The size of this list must be the same as left_schema_paths. Each field at index i in this list must correspond to a field at the same index in the left_schema_paths list. + */ + rightSchemaPaths?: Schema$GoogleCloudDataplexV1DataDocumentationResultSchemaRelationshipSchemaPaths; + /** + * Output only. Sources which generated the schema relation edge. + */ + sources?: string[] | null; + /** + * Output only. The type of relationship between the schema paths. + */ + type?: string | null; + } + /** + * Represents an ordered set of paths within a table's schema. + */ + export interface Schema$GoogleCloudDataplexV1DataDocumentationResultSchemaRelationshipSchemaPaths { + /** + * Output only. An ordered set of Paths to fields within the schema of the table. For fields nested within a top level field of type record, use '.' to separate field names. Examples: Top level field - top_level Nested field - top_level.child.sub_field + */ + paths?: string[] | null; + /** + * Output only. The service-qualified full resource name of the table Ex: //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID + */ + tableFqn?: string | null; + } + /** + * Insights for a table resource. */ export interface Schema$GoogleCloudDataplexV1DataDocumentationResultTableResult { /** @@ -1522,6 +1539,10 @@ export namespace dataplex_v1 { * Optional. The fields to include in data profile.If not specified, all fields at the time of profile scan job execution are included, except for ones listed in exclude_fields. */ includeFields?: Schema$GoogleCloudDataplexV1DataProfileSpecSelectedFields; + /** + * Optional. The execution mode for the profile scan. + */ + mode?: string | null; /** * Optional. Actions to take upon job completion.. */ @@ -1701,6 +1722,10 @@ export namespace dataplex_v1 { * A rule captures data quality intent about a data source. */ export interface Schema$GoogleCloudDataplexV1DataQualityRule { + /** + * Optional. Map of attribute name and value linked to the rule. The rules to evaluate can be filtered based on attributes provided here and a filter expression provided in the DataQualitySpec.filter field. + */ + attributes?: {[key: string]: string} | null; /** * Optional. The unnested column which this rule is evaluated against. */ @@ -1741,6 +1766,10 @@ export namespace dataplex_v1 { * Row-level rule which evaluates whether each row in a table passes the specified condition. */ rowConditionExpectation?: Schema$GoogleCloudDataplexV1DataQualityRuleRowConditionExpectation; + /** + * Output only. Contains information about the source of the rule and its relationship with the BigQuery table, where applicable. + */ + ruleSource?: Schema$GoogleCloudDataplexV1DataQualityRuleRuleSource; /** * Row-level rule which evaluates whether each column value is contained by a specified set. */ @@ -1761,6 +1790,10 @@ export namespace dataplex_v1 { * Aggregate rule which evaluates whether the provided expression is true for a table. */ tableConditionExpectation?: Schema$GoogleCloudDataplexV1DataQualityRuleTableConditionExpectation; + /** + * Aggregate rule which references a rule template and provides the parameters to be substituted in the template. If any rows are returned, this rule fails. + */ + templateReference?: Schema$GoogleCloudDataplexV1DataQualityRuleTemplateReference; /** * Optional. The minimum ratio of passing_rows / total_rows required to pass this rule, with a range of 0.0, 1.0.0 indicates default value (i.e. 1.0).This field is only valid for row-level type rules. */ @@ -1893,6 +1926,58 @@ export namespace dataplex_v1 { */ sqlExpression?: string | null; } + /** + * Represents the rule source information from Catalog. + */ + export interface Schema$GoogleCloudDataplexV1DataQualityRuleRuleSource { + /** + * Output only. Rule path elements represent information about the individual items in the relationship path between the scan resource and rule origin in that order. + */ + rulePathElements?: Schema$GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElement[]; + } + /** + * Path Element represents the direct relationship between the rule origin (aspects) to the BigQuery Entry. Ordering of the rule relationship will be maintained such that the first entry in the list is the closest ancestor (BigQuery table itself). A blank source denotes that the rule is derived directly from the DataScan itself. + */ + export interface Schema$GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElement { + /** + * Output only. Entry link source represents information about the entry link. + */ + entryLinkSource?: Schema$GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElementEntryLinkSource; + /** + * Output only. Entry source represents information about the related source entry. + */ + entrySource?: Schema$GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElementEntrySource; + } + /** + * Entry link source represents information about the entry link. + */ + export interface Schema$GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElementEntryLinkSource { + /** + * Output only. The entry link name in the form of: projects/{project_id_or_number\}/locations/{location_id\}/entryGroups/{entry_group_id\}/entryLinks/{entry_link_id\} + */ + entryLink?: string | null; + /** + * Output only. The entry link type to represent the current relationship between the entry and the next entry in the path. In the form of: projects/{project_id_or_number\}/locations/{location_id\}/entryLinkTypes/{entry_link_type_id\} + */ + entryLinkType?: string | null; + } + /** + * Entry source represents information about the related source entry. + */ + export interface Schema$GoogleCloudDataplexV1DataQualityRuleRuleSourceRulePathElementEntrySource { + /** + * Output only. The display name of the entry. + */ + displayName?: string | null; + /** + * Output only. The entry name in the form of: projects/{project_id_or_number\}/locations/{location_id\}/entryGroups/{entry_group_id\}/entries/{entry_id\} + */ + entry?: string | null; + /** + * Output only. The entry type to represent the current characteristics of the entry in the form of: projects/{project_id_or_number\}/locations/{location_id\}/entryTypes/{entry-type-id\}. + */ + entryType?: string | null; + } /** * Evaluates whether each column value is contained by a specified set. */ @@ -1945,6 +2030,91 @@ export namespace dataplex_v1 { */ sqlExpression?: string | null; } + /** + * DataQualityRuleTemplate represents a template which can be reused across multiple data quality rules. + */ + export interface Schema$GoogleCloudDataplexV1DataQualityRuleTemplate { + /** + * Output only. A list of features or properties supported by this rule template. + */ + capabilities?: string[] | null; + /** + * Output only. The dimension a rule template belongs to. Rule level results are also aggregated at the dimension level. + */ + dimension?: string | null; + /** + * Output only. Description for input parameters + */ + inputParameters?: { + [ + key: string + ]: Schema$GoogleCloudDataplexV1DataQualityRuleTemplateParameterDescription; + } | null; + /** + * Output only. The name of the rule template in the format: projects/{project_id_or_number\}/locations/{location_id\}/entryGroups/{entry_group_id\}/entries/{entry_id\} + */ + name?: string | null; + /** + * Output only. Collection of SQLs for data quality rules. Currently only one SQL is supported. + */ + sqlCollection?: Schema$GoogleCloudDataplexV1DataQualityRuleTemplateSql[]; + } + /** + * Description of the input parameter. It can include the type(s) supported by the parameter and intended usage. It is for information purposes only and does not affect the behavior of the rule template. + */ + export interface Schema$GoogleCloudDataplexV1DataQualityRuleTemplateParameterDescription { + /** + * Output only. The default value for the parameter if no value is provided. + */ + defaultValue?: string | null; + /** + * Output only. Description of the input parameter. It can include the type(s) supported by the parameter and intended usage. It is for information purposes only and does not affect the behavior of the rule template. + */ + description?: string | null; + } + /** + * A rule that constructs a SQL statement to evaluate using a rule template and parameter values. If the constructed statement returns any rows, this rule fails + */ + export interface Schema$GoogleCloudDataplexV1DataQualityRuleTemplateReference { + /** + * Required. The template entry name. Entry must be of EntryType projects/dataplex-types/locations/global/entryTypes/data-quality-rule-template and contains top-level aspect of AspectType projects/dataplex-types/locations/global/aspectTypes/data-quality-rule-template. The format is: projects/{project_id_or_number\}/locations/{location_id\}/entryGroups/{entry_group_id\}/entries/{entry_id\} + */ + name?: string | null; + /** + * Output only. The resolved SQL statement generated from the template with parameters substituted. It is only populated in the result. + */ + resolvedSql?: string | null; + /** + * Output only. The rule template used to resolve the rule. It is only populated in the result. + */ + ruleTemplate?: Schema$GoogleCloudDataplexV1DataQualityRuleTemplate; + /** + * Optional. Provides the map of parameter name and value. The maximum size of the field is 120KB (encoded as UTF-8). + */ + values?: { + [ + key: string + ]: Schema$GoogleCloudDataplexV1DataQualityRuleTemplateReferenceParameterValue; + } | null; + } + /** + * Represents a parameter value. + */ + export interface Schema$GoogleCloudDataplexV1DataQualityRuleTemplateReferenceParameterValue { + /** + * Required. Represents the string value of the parameter. + */ + value?: string | null; + } + /** + * Templatized SQL query for data quality rules. It can have parameters that can be substituted with values when a rule is created using this template. + */ + export interface Schema$GoogleCloudDataplexV1DataQualityRuleTemplateSql { + /** + * Output only. Templatized SQL query for data quality rules. + */ + query?: string | null; + } /** * Evaluates whether the column has duplicates. */ @@ -2014,6 +2184,14 @@ export namespace dataplex_v1 { * Optional. If set, the latest DataScan job result will be published as Dataplex Universal Catalog metadata. */ catalogPublishingEnabled?: boolean | null; + /** + * Optional. If enabled, the data scan will retrieve rules defined in the dataplex-types.global.data-rules aspect on all paths of the catalog entry corresponding to the BigQuery table resource and all attached glossary terms. The path that data-rules aspect is attached on the table entry defines the column that the rule will be evaluated against. For glossary terms, the path that the terms are attached on the table entry defines the column that the rule will be evaluated against. At the start of scan execution, the rules reflect the latest state retrieved from the catalog entry and any updates on the rules thereafter are ignored for that execution. The updates will be reflected from the next execution. Rules defined in the datascan must be empty if this field is enabled. + */ + enableCatalogBasedRules?: boolean | null; + /** + * Optional. Filter for selectively running a subset of rules. You can filter the request by the name or attribute key-value pairs defined on the rule. If not specified, all rules are run. The filter is applicable to both, the rules retrieved from catalog and explicitly defined rules in the scan. Please see filter syntax (https://docs.cloud.google.com/dataplex/docs/auto-data-quality-overview#rule-filtering) for more details. + */ + filter?: string | null; /** * Optional. Actions to take upon job completion. */ @@ -2101,7 +2279,7 @@ export namespace dataplex_v1 { scoreThreshold?: number | null; } /** - * Represents a user-visible job which provides the insights for the related data source.For example: Data quality: generates queries based on the rules and runs against the data to get data quality check results. For more information, see Auto data quality overview (https://cloud.google.com/dataplex/docs/auto-data-quality-overview). Data profile: analyzes the data in tables and generates insights about the structure, content and relationships (such as null percent, cardinality, min/max/mean, etc). For more information, see About data profiling (https://cloud.google.com/dataplex/docs/data-profiling-overview). Data discovery: scans data in Cloud Storage buckets to extract and then catalog metadata. For more information, see Discover and catalog Cloud Storage data (https://cloud.google.com/bigquery/docs/automatic-discovery). Data documentation: analyzes the table details and generates insights including descriptions and sample SQL queries for the table. For more information, see Generate data insights in BigQuery (https://cloud.google.com/bigquery/docs/data-insights). + * Represents a user-visible job which provides the insights for the related data source.For example: Data quality: generates queries based on the rules and runs against the data to get data quality check results. For more information, see Auto data quality overview (https://cloud.google.com/dataplex/docs/auto-data-quality-overview). Data profile: analyzes the data in tables and generates insights about the structure, content and relationships (such as null percent, cardinality, min/max/mean, etc). For more information, see About data profiling (https://cloud.google.com/dataplex/docs/data-profiling-overview). Data discovery: scans data in Cloud Storage buckets to extract and then catalog metadata. For more information, see Discover and catalog Cloud Storage data (https://cloud.google.com/bigquery/docs/automatic-discovery). Data documentation: analyzes the table or dataset metadata and generates insights. For tables, insights include descriptions and sample SQL queries. For datasets, insights include descriptions, schema relationships and sample SQL queries. For more information, see Generate data insights in BigQuery (https://cloud.google.com/bigquery/docs/data-insights). */ export interface Schema$GoogleCloudDataplexV1DataScan { /** @@ -2152,6 +2330,10 @@ export namespace dataplex_v1 { * Optional. User friendly display name. Must be between 1-256 characters. */ displayName?: string | null; + /** + * Optional. Immutable. The identity to run the datascan. If not specified, defaults to the Dataplex Service Agent. + */ + executionIdentity?: Schema$GoogleCloudDataplexV1ExecutionIdentity; /** * Optional. DataScan execution settings.If not specified, the fields in it will use their default values. */ @@ -2439,6 +2621,10 @@ export namespace dataplex_v1 { * Output only. Identifier. The relative resource name of the DataScanJob, of the form: projects/{project\}/locations/{location_id\}/dataScans/{datascan_id\}/jobs/{job_id\}, where project refers to a project_id or project_number and location_id refers to a Google Cloud region. */ name?: string | null; + /** + * Output only. A message indicating partial failure details. + */ + partialFailureMessage?: string | null; /** * Output only. The time when the DataScanJob was started. */ @@ -2465,7 +2651,7 @@ export namespace dataplex_v1 { */ entity?: string | null; /** - * Immutable. The service-qualified full resource name of the cloud resource for a DataScan job to scan against. The field could either be: Cloud Storage bucket for DataDiscoveryScan Format: //storage.googleapis.com/projects/PROJECT_ID/buckets/BUCKET_ID or BigQuery table of type "TABLE" for DataProfileScan/DataQualityScan/DataDocumentationScan Format: //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID + * Immutable. The service-qualified full resource name of the cloud resource for a DataScan job to scan against. The field could either be: Cloud Storage bucket for DataDiscoveryScan Format: //storage.googleapis.com/projects/PROJECT_ID/buckets/BUCKET_ID or BigQuery table of type "TABLE" for DataProfileScan/DataQualityScan/DataDocumentationScan Format: //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID or BigQuery dataset for DataDocumentationScan only Format: //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID */ resource?: string | null; } @@ -2871,6 +3057,10 @@ export namespace dataplex_v1 { * EntryLink represents a link between two Entries. */ export interface Schema$GoogleCloudDataplexV1EntryLink { + /** + * Optional. The aspects that are attached to the entry link. The format of the aspect key has to be the following: {project_id_or_number\}.{location_id\}.{aspect_type_id\} Currently, only a single aspect of a Dataplex-owned Aspect Type is allowed. + */ + aspects?: {[key: string]: Schema$GoogleCloudDataplexV1Aspect} | null; /** * Output only. The time when the Entry Link was created. */ @@ -2880,7 +3070,7 @@ export namespace dataplex_v1 { */ entryLinkType?: string | null; /** - * Required. Specifies the Entries referenced in the Entry Link. There should be exactly two entry references. + * Required. Immutable. Specifies the Entries referenced in the Entry Link. There should be exactly two entry references. */ entryReferences?: Schema$GoogleCloudDataplexV1EntryLinkEntryReference[]; /** @@ -3057,144 +3247,39 @@ export namespace dataplex_v1 { alternateUsePermission?: string | null; } /** - * Environment represents a user-visible compute infrastructure for analytics within a lake. + * The identity to run the datascan. */ - export interface Schema$GoogleCloudDataplexV1Environment { - /** - * Output only. Environment creation time. - */ - createTime?: string | null; - /** - * Optional. Description of the environment. - */ - description?: string | null; - /** - * Optional. User friendly display name. - */ - displayName?: string | null; - /** - * Output only. URI Endpoints to access sessions associated with the Environment. - */ - endpoints?: Schema$GoogleCloudDataplexV1EnvironmentEndpoints; + export interface Schema$GoogleCloudDataplexV1ExecutionIdentity { /** - * Required. Infrastructure specification for the Environment. + * Optional. The Dataplex service agent associated with the user's project. */ - infrastructureSpec?: Schema$GoogleCloudDataplexV1EnvironmentInfrastructureSpec; + dataplexServiceAgent?: Schema$GoogleCloudDataplexV1ExecutionIdentityDataplexServiceAgent; /** - * Optional. User defined labels for the environment. + * Optional. The provided service account. */ - labels?: {[key: string]: string} | null; + serviceAccount?: Schema$GoogleCloudDataplexV1ExecutionIdentityServiceAccount; /** - * Output only. The relative resource name of the environment, of the form: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/environment/{environment_id\} + * Optional. The credential of the calling user. Supports only ONE_TIME trigger type. */ - name?: string | null; - /** - * Optional. Configuration for sessions created for this environment. - */ - sessionSpec?: Schema$GoogleCloudDataplexV1EnvironmentSessionSpec; - /** - * Output only. Status of sessions created for this environment. - */ - sessionStatus?: Schema$GoogleCloudDataplexV1EnvironmentSessionStatus; - /** - * Output only. Current state of the environment. - */ - state?: string | null; - /** - * Output only. System generated globally unique ID for the environment. This ID will be different if the environment is deleted and re-created with the same name. - */ - uid?: string | null; - /** - * Output only. The time when the environment was last updated. - */ - updateTime?: string | null; + userCredential?: Schema$GoogleCloudDataplexV1ExecutionIdentityUserCredential; } /** - * URI Endpoints to access sessions associated with the Environment. + * The Dataplex service agent associated with the user's project. */ - export interface Schema$GoogleCloudDataplexV1EnvironmentEndpoints { - /** - * Output only. URI to serve notebook APIs - */ - notebooks?: string | null; - /** - * Output only. URI to serve SQL APIs - */ - sql?: string | null; - } + export interface Schema$GoogleCloudDataplexV1ExecutionIdentityDataplexServiceAgent {} /** - * Configuration for the underlying infrastructure used to run workloads. + * The service account */ - export interface Schema$GoogleCloudDataplexV1EnvironmentInfrastructureSpec { + export interface Schema$GoogleCloudDataplexV1ExecutionIdentityServiceAccount { /** - * Optional. Compute resources needed for analyze interactive workloads. + * Required. Service account email. The datascan will execute with this service account's credentials. The user calling this API must have permissions to act as this service account. Dataplex service agent must be granted iam.serviceAccounts.getAccessToken permission on this service account, for example, through the iam.serviceAccountTokenCreator role . */ - compute?: Schema$GoogleCloudDataplexV1EnvironmentInfrastructureSpecComputeResources; - /** - * Required. Software Runtime Configuration for analyze interactive workloads. - */ - osImage?: Schema$GoogleCloudDataplexV1EnvironmentInfrastructureSpecOsImageRuntime; + email?: string | null; } /** - * Compute resources associated with the analyze interactive workloads. + * The credential of the calling user. */ - export interface Schema$GoogleCloudDataplexV1EnvironmentInfrastructureSpecComputeResources { - /** - * Optional. Size in GB of the disk. Default is 100 GB. - */ - diskSizeGb?: number | null; - /** - * Optional. Max configurable nodes. If max_node_count \> node_count, then auto-scaling is enabled. - */ - maxNodeCount?: number | null; - /** - * Optional. Total number of nodes in the sessions created for this environment. - */ - nodeCount?: number | null; - } - /** - * Software Runtime Configuration to run Analyze. - */ - export interface Schema$GoogleCloudDataplexV1EnvironmentInfrastructureSpecOsImageRuntime { - /** - * Required. Dataplex Universal Catalog Image version. - */ - imageVersion?: string | null; - /** - * Optional. List of Java jars to be included in the runtime environment. Valid input includes Cloud Storage URIs to Jar binaries. For example, gs://bucket-name/my/path/to/file.jar - */ - javaLibraries?: string[] | null; - /** - * Optional. Spark properties to provide configuration for use in sessions created for this environment. The properties to set on daemon config files. Property keys are specified in prefix:property format. The prefix must be "spark". - */ - properties?: {[key: string]: string} | null; - /** - * Optional. A list of python packages to be installed. Valid formats include Cloud Storage URI to a PIP installable library. For example, gs://bucket-name/my/path/to/lib.tar.gz - */ - pythonPackages?: string[] | null; - } - /** - * Configuration for sessions created for this environment. - */ - export interface Schema$GoogleCloudDataplexV1EnvironmentSessionSpec { - /** - * Optional. If True, this causes sessions to be pre-created and available for faster startup to enable interactive exploration use-cases. This defaults to False to avoid additional billed charges. These can only be set to True for the environment with name set to "default", and with default configuration. - */ - enableFastStartup?: boolean | null; - /** - * Optional. The idle time configuration of the session. The session will be auto-terminated at the end of this period. - */ - maxIdleDuration?: string | null; - } - /** - * Status of sessions created for this environment. - */ - export interface Schema$GoogleCloudDataplexV1EnvironmentSessionStatus { - /** - * Output only. Queries over sessions to mark whether the environment is currently active or not - */ - active?: boolean | null; - } + export interface Schema$GoogleCloudDataplexV1ExecutionIdentityUserCredential {} /** * Request details for generating data quality rule recommendations. */ @@ -3602,19 +3687,6 @@ export namespace dataplex_v1 { */ nextPageToken?: string | null; } - /** - * List content response. - */ - export interface Schema$GoogleCloudDataplexV1ListContentResponse { - /** - * Content under the given parent lake. - */ - content?: Schema$GoogleCloudDataplexV1Content[]; - /** - * Token to retrieve the next page of results, or empty if there are no more results in the list. - */ - nextPageToken?: string | null; - } /** * Response message for listing data assets. */ @@ -3803,19 +3875,6 @@ export namespace dataplex_v1 { */ unreachableLocations?: string[] | null; } - /** - * List environments response. - */ - export interface Schema$GoogleCloudDataplexV1ListEnvironmentsResponse { - /** - * Environments under the given parent lake. - */ - environments?: Schema$GoogleCloudDataplexV1Environment[]; - /** - * Token to retrieve the next page of results, or empty if there are no more results in the list. - */ - nextPageToken?: string | null; - } /** * List Glossaries Response */ @@ -3944,19 +4003,6 @@ export namespace dataplex_v1 { */ partitions?: Schema$GoogleCloudDataplexV1Partition[]; } - /** - * List sessions response. - */ - export interface Schema$GoogleCloudDataplexV1ListSessionsResponse { - /** - * Token to retrieve the next page of results, or empty if there are no more results in the list. - */ - nextPageToken?: string | null; - /** - * Sessions under a given environment. - */ - sessions?: Schema$GoogleCloudDataplexV1Session[]; - } /** * List tasks response. */ @@ -3987,6 +4033,28 @@ export namespace dataplex_v1 { */ zones?: Schema$GoogleCloudDataplexV1Zone[]; } + /** + * Lookup Context using permissions in the source system. + */ + export interface Schema$GoogleCloudDataplexV1LookupContextRequest { + /** + * Optional. Allows to configure the context.Supported options: format - The format of the context (one of yaml, xml, json, default is yaml). context_budget - If provided, the output will be intelligently truncated on a best-effort basis to contain approximately the desired amount of characters. There is no guarantee to achieve the specific amount. + */ + options?: {[key: string]: string} | null; + /** + * Required. The entry names to look up the context for. The maximum number of resources for a request is limited to 10.Examples:projects/{project\}/locations/{location\}/entryGroups/{entry_group\}/entries/{entry\} + */ + resources?: string[] | null; + } + /** + * Lookup Context response. + */ + export interface Schema$GoogleCloudDataplexV1LookupContextResponse { + /** + * Pre-formatted block of text containing the context for the requested resources. + */ + context?: string | null; + } /** * Response message for LookupEntryLinks. */ @@ -4291,6 +4359,27 @@ export namespace dataplex_v1 { */ updateTime?: string | null; } + /** + * Modify Entry request using permissions in the source system. + */ + export interface Schema$GoogleCloudDataplexV1ModifyEntryRequest { + /** + * Optional. The aspect keys which the service should modify. It supports the following syntaxes: - matches an aspect of the given type and empty path. @path - matches an aspect of the given type and specified path. For example, to attach an aspect to a field that is specified by the schema aspect, the path should have the format Schema.. @* - matches aspects of the given type for all paths. *@path - matches aspects of all types on the given path.The service will not remove existing aspects matching the syntax unless delete_missing_aspects is set to true.If this field is left empty, the service treats it as specifying exactly those Aspects present in the request. + */ + aspectKeys?: string[] | null; + /** + * Optional. If set to true, any aspects not specified in the request will be deleted. The default is false. + */ + deleteMissingAspects?: boolean | null; + /** + * Required. The entry to modify. + */ + entry?: Schema$GoogleCloudDataplexV1Entry; + /** + * Optional. Mask of fields to update. To update Aspects, the update_mask must contain the value "aspects".If the update_mask is empty, the service will update all modifiable fields present in the request. + */ + updateMask?: string | null; + } /** * Represents the metadata of a long-running operation. */ @@ -4517,27 +4606,6 @@ export namespace dataplex_v1 { */ dataplexEntry?: Schema$GoogleCloudDataplexV1Entry; } - /** - * Represents an active analyze session running for a user. - */ - export interface Schema$GoogleCloudDataplexV1Session { - /** - * Output only. Session start time. - */ - createTime?: string | null; - /** - * Output only. The relative resource name of the content, of the form: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/environment/{environment_id\}/sessions/{session_id\} - */ - name?: string | null; - /** - * Output only. State of Session - */ - state?: string | null; - /** - * Output only. Email of user running the session. - */ - userId?: string | null; - } /** * These messages contain information about sessions within an environment. The monitored resource is 'Environment'. */ @@ -5360,7 +5428,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5523,7 +5594,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5668,7 +5742,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5820,7 +5897,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5967,7 +6047,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6125,7 +6208,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6285,7 +6371,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6439,7 +6528,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6707,7 +6799,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6846,7 +6941,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6979,7 +7077,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7121,7 +7222,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7317,6 +7421,7 @@ export namespace dataplex_v1 { aspectTypes: Resource$Projects$Locations$Aspecttypes; changeRequests: Resource$Projects$Locations$Changerequests; dataAttributeBindings: Resource$Projects$Locations$Dataattributebindings; + dataDomains: Resource$Projects$Locations$Datadomains; dataProducts: Resource$Projects$Locations$Dataproducts; dataScans: Resource$Projects$Locations$Datascans; dataTaxonomies: Resource$Projects$Locations$Datataxonomies; @@ -7329,7 +7434,6 @@ export namespace dataplex_v1 { metadataFeeds: Resource$Projects$Locations$Metadatafeeds; metadataJobs: Resource$Projects$Locations$Metadatajobs; operations: Resource$Projects$Locations$Operations; - policyIntents: Resource$Projects$Locations$Policyintents; constructor(context: APIRequestContext) { this.context = context; this.aspectTypes = new Resource$Projects$Locations$Aspecttypes( @@ -7340,6 +7444,9 @@ export namespace dataplex_v1 { ); this.dataAttributeBindings = new Resource$Projects$Locations$Dataattributebindings(this.context); + this.dataDomains = new Resource$Projects$Locations$Datadomains( + this.context + ); this.dataProducts = new Resource$Projects$Locations$Dataproducts( this.context ); @@ -7372,9 +7479,6 @@ export namespace dataplex_v1 { this.operations = new Resource$Projects$Locations$Operations( this.context ); - this.policyIntents = new Resource$Projects$Locations$Policyintents( - this.context - ); } /** @@ -7399,7 +7503,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7520,7 +7627,7 @@ export namespace dataplex_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -7541,7 +7648,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7550,7 +7660,7 @@ export namespace dataplex_v1 { * * // Do the magic * const res = await dataplex.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -7676,7 +7786,7 @@ export namespace dataplex_v1 { } /** - * Looks up an entry by name using the permission on the source system. + * Looks up LLM Context for the specified resources. * @example * ```js * // Before running the sample: @@ -7697,7 +7807,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7705,182 +7820,24 @@ export namespace dataplex_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataplex.projects.locations.lookupEntry({ - * // Optional. Limits the aspects returned to the provided aspect types. It only works for CUSTOM view. - * aspectTypes: 'placeholder-value', - * // Required. The resource name of the Entry: projects/{project\}/locations/{location\}/entryGroups/{entry_group\}/entries/{entry\}. - * entry: 'placeholder-value', + * const res = await dataplex.projects.locations.lookupContext({ * // Required. The project to which the request should be attributed in the following form: projects/{project\}/locations/{location\}. * name: 'projects/my-project/locations/my-location', - * // Optional. Limits the aspects returned to those associated with the provided paths within the Entry. It only works for CUSTOM view. - * paths: 'placeholder-value', - * // Optional. View to control which parts of an entry the service should return. - * view: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "aspects": {}, - * // "createTime": "my_createTime", - * // "entrySource": {}, - * // "entryType": "my_entryType", - * // "fullyQualifiedName": "my_fullyQualifiedName", - * // "name": "my_name", - * // "parentEntry": "my_parentEntry", - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - lookupEntry( - params: Params$Resource$Projects$Locations$Lookupentry, - options: StreamMethodOptions - ): Promise>; - lookupEntry( - params?: Params$Resource$Projects$Locations$Lookupentry, - options?: MethodOptions - ): Promise>; - lookupEntry( - params: Params$Resource$Projects$Locations$Lookupentry, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - lookupEntry( - params: Params$Resource$Projects$Locations$Lookupentry, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - lookupEntry( - params: Params$Resource$Projects$Locations$Lookupentry, - callback: BodyResponseCallback - ): void; - lookupEntry( - callback: BodyResponseCallback - ): void; - lookupEntry( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lookupentry - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lookupentry; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lookupentry; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}:lookupEntry').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Looks up Entry Links referencing the specified Entry. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lookupEntryLinks({ - * // Required. The resource name of the referred Entry. Format: projects/{project_id_or_number\}/locations/{location_id\}/entryGroups/{entry_group_id\}/entries/{entry_id\}. Entry Links which references this entry will be returned in the response. - * entry: 'placeholder-value', - * // Entry link types to filter the response by. If empty, all entry link types will be returned. At most 10 entry link types can be specified. - * entryLinkTypes: 'placeholder-value', - * // Mode of entry reference. - * entryMode: 'placeholder-value', - * // Required. The project to which the request should be attributed to Format: projects/{project_id_or_number\}/locations/{location_id\}. - * name: 'projects/my-project/locations/my-location', - * // Maximum number of EntryLinks to return. The service may return fewer than this value. If unspecified, at most 10 EntryLinks will be returned. The maximum value is 10; values above 10 will be coerced to 10. - * pageSize: 'placeholder-value', - * // Page token received from a previous LookupEntryLinks call. Provide this to retrieve the subsequent page. When paginating, all other parameters that are provided to the LookupEntryLinks request must match the call that provided the page token. - * pageToken: 'placeholder-value', + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "options": {}, + * // "resources": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "entryLinks": [], - * // "nextPageToken": "my_nextPageToken" + * // "context": "my_context" * // } * } * @@ -7896,61 +7853,61 @@ export namespace dataplex_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - lookupEntryLinks( - params: Params$Resource$Projects$Locations$Lookupentrylinks, + lookupContext( + params: Params$Resource$Projects$Locations$Lookupcontext, options: StreamMethodOptions ): Promise>; - lookupEntryLinks( - params?: Params$Resource$Projects$Locations$Lookupentrylinks, + lookupContext( + params?: Params$Resource$Projects$Locations$Lookupcontext, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - lookupEntryLinks( - params: Params$Resource$Projects$Locations$Lookupentrylinks, + lookupContext( + params: Params$Resource$Projects$Locations$Lookupcontext, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - lookupEntryLinks( - params: Params$Resource$Projects$Locations$Lookupentrylinks, + lookupContext( + params: Params$Resource$Projects$Locations$Lookupcontext, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - lookupEntryLinks( - params: Params$Resource$Projects$Locations$Lookupentrylinks, - callback: BodyResponseCallback + lookupContext( + params: Params$Resource$Projects$Locations$Lookupcontext, + callback: BodyResponseCallback ): void; - lookupEntryLinks( - callback: BodyResponseCallback + lookupContext( + callback: BodyResponseCallback ): void; - lookupEntryLinks( + lookupContext( paramsOrCallback?: - | Params$Resource$Projects$Locations$Lookupentrylinks - | BodyResponseCallback + | Params$Resource$Projects$Locations$Lookupcontext + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lookupentrylinks; + {}) as Params$Resource$Projects$Locations$Lookupcontext; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lookupentrylinks; + params = {} as Params$Resource$Projects$Locations$Lookupcontext; options = {}; } @@ -7963,11 +7920,11 @@ export namespace dataplex_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:lookupEntryLinks').replace( + url: (rootUrl + '/v1/{+name}:lookupContext').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -7978,19 +7935,19 @@ export namespace dataplex_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Searches for Entries matching the given query and scope. + * Looks up an entry by name using the permission on the source system. * @example * ```js * // Before running the sample: @@ -8011,7 +7968,496 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataplex.projects.locations.lookupEntry({ + * // Optional. Limits the aspects returned to the provided aspect types. It only works for CUSTOM view. + * aspectTypes: 'placeholder-value', + * // Required. The resource name of the Entry: projects/{project\}/locations/{location\}/entryGroups/{entry_group\}/entries/{entry\}. + * entry: 'placeholder-value', + * // Required. The project to which the request should be attributed in the following form: projects/{project\}/locations/{location\}. + * name: 'projects/my-project/locations/my-location', + * // Optional. Limits the aspects returned to those associated with the provided paths within the Entry. It only works for CUSTOM view. + * paths: 'placeholder-value', + * // Optional. View to control which parts of an entry the service should return. Please check the limitations on returned aspects in the Entry view documentation. Amount of returned aspects depends on the selected Entry View. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "aspects": {}, + * // "createTime": "my_createTime", + * // "entrySource": {}, + * // "entryType": "my_entryType", + * // "fullyQualifiedName": "my_fullyQualifiedName", + * // "name": "my_name", + * // "parentEntry": "my_parentEntry", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + lookupEntry( + params: Params$Resource$Projects$Locations$Lookupentry, + options: StreamMethodOptions + ): Promise>; + lookupEntry( + params?: Params$Resource$Projects$Locations$Lookupentry, + options?: MethodOptions + ): Promise>; + lookupEntry( + params: Params$Resource$Projects$Locations$Lookupentry, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + lookupEntry( + params: Params$Resource$Projects$Locations$Lookupentry, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + lookupEntry( + params: Params$Resource$Projects$Locations$Lookupentry, + callback: BodyResponseCallback + ): void; + lookupEntry( + callback: BodyResponseCallback + ): void; + lookupEntry( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Lookupentry + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Lookupentry; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Lookupentry; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:lookupEntry').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Looks up Entry Links referencing the specified Entry. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataplex.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataplex = google.dataplex('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataplex.projects.locations.lookupEntryLinks({ + * // Required. The resource name of the referred Entry. Format: projects/{project_id_or_number\}/locations/{location_id\}/entryGroups/{entry_group_id\}/entries/{entry_id\}. Entry Links which references this entry will be returned in the response. + * entry: 'placeholder-value', + * // Entry link types to filter the response by. If empty, all entry link types will be returned. At most 10 entry link types can be specified. + * entryLinkTypes: 'placeholder-value', + * // Mode of entry reference. + * entryMode: 'placeholder-value', + * // Required. The project to which the request should be attributed to Format: projects/{project_id_or_number\}/locations/{location_id\}. + * name: 'projects/my-project/locations/my-location', + * // Maximum number of EntryLinks to return. The service may return fewer than this value. If unspecified, at most 10 EntryLinks will be returned. The maximum value is 10; values above 10 will be coerced to 10. + * pageSize: 'placeholder-value', + * // Page token received from a previous LookupEntryLinks call. Provide this to retrieve the subsequent page. When paginating, all other parameters that are provided to the LookupEntryLinks request must match the call that provided the page token. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "entryLinks": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + lookupEntryLinks( + params: Params$Resource$Projects$Locations$Lookupentrylinks, + options: StreamMethodOptions + ): Promise>; + lookupEntryLinks( + params?: Params$Resource$Projects$Locations$Lookupentrylinks, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + lookupEntryLinks( + params: Params$Resource$Projects$Locations$Lookupentrylinks, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + lookupEntryLinks( + params: Params$Resource$Projects$Locations$Lookupentrylinks, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + lookupEntryLinks( + params: Params$Resource$Projects$Locations$Lookupentrylinks, + callback: BodyResponseCallback + ): void; + lookupEntryLinks( + callback: BodyResponseCallback + ): void; + lookupEntryLinks( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Lookupentrylinks + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Lookupentrylinks; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Lookupentrylinks; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:lookupEntryLinks').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Modifies an entry using the permission on the source system. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataplex.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataplex = google.dataplex('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataplex.projects.locations.modifyEntry({ + * // Required. The project to which the request should be attributed in the following form: projects/{project\}/locations/{location\}. + * name: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "aspectKeys": [], + * // "deleteMissingAspects": false, + * // "entry": {}, + * // "updateMask": "my_updateMask" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "aspects": {}, + * // "createTime": "my_createTime", + * // "entrySource": {}, + * // "entryType": "my_entryType", + * // "fullyQualifiedName": "my_fullyQualifiedName", + * // "name": "my_name", + * // "parentEntry": "my_parentEntry", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + modifyEntry( + params: Params$Resource$Projects$Locations$Modifyentry, + options: StreamMethodOptions + ): Promise>; + modifyEntry( + params?: Params$Resource$Projects$Locations$Modifyentry, + options?: MethodOptions + ): Promise>; + modifyEntry( + params: Params$Resource$Projects$Locations$Modifyentry, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + modifyEntry( + params: Params$Resource$Projects$Locations$Modifyentry, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + modifyEntry( + params: Params$Resource$Projects$Locations$Modifyentry, + callback: BodyResponseCallback + ): void; + modifyEntry( + callback: BodyResponseCallback + ): void; + modifyEntry( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Modifyentry + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Modifyentry; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Modifyentry; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:modifyEntry').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Searches for Entries matching the given query and scope. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataplex.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataplex = google.dataplex('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8160,7 +8606,7 @@ export namespace dataplex_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -8180,6 +8626,17 @@ export namespace dataplex_v1 { */ pageToken?: string; } + export interface Params$Resource$Projects$Locations$Lookupcontext extends StandardParameters { + /** + * Required. The project to which the request should be attributed in the following form: projects/{project\}/locations/{location\}. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDataplexV1LookupContextRequest; + } export interface Params$Resource$Projects$Locations$Lookupentry extends StandardParameters { /** * Optional. Limits the aspects returned to the provided aspect types. It only works for CUSTOM view. @@ -8198,7 +8655,7 @@ export namespace dataplex_v1 { */ paths?: string[]; /** - * Optional. View to control which parts of an entry the service should return. + * Optional. View to control which parts of an entry the service should return. Please check the limitations on returned aspects in the Entry view documentation. Amount of returned aspects depends on the selected Entry View. */ view?: string; } @@ -8228,6 +8685,17 @@ export namespace dataplex_v1 { */ pageToken?: string; } + export interface Params$Resource$Projects$Locations$Modifyentry extends StandardParameters { + /** + * Required. The project to which the request should be attributed in the following form: projects/{project\}/locations/{location\}. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDataplexV1ModifyEntryRequest; + } export interface Params$Resource$Projects$Locations$Searchentries extends StandardParameters { /** * Required. The project to which the request should be attributed in the following form: projects/{project\}/locations/global. @@ -8287,7 +8755,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8455,7 +8926,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8599,7 +9073,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8750,7 +9229,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8896,7 +9378,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9053,7 +9540,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9218,7 +9708,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9371,7 +9864,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9644,7 +10140,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9790,7 +10289,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9943,7 +10445,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10141,7 +10646,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10309,7 +10817,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10454,7 +10965,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10609,7 +11123,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10756,7 +11273,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10914,7 +11434,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11079,7 +11602,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11233,7 +11759,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11479,6 +12008,511 @@ export namespace dataplex_v1 { requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; } + export class Resource$Projects$Locations$Datadomains { + 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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataplex.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataplex = google.dataplex('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataplex.projects.locations.dataDomains.getIamPolicy({ + * // 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': 'placeholder-value', + * // 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: + * 'projects/my-project/locations/my-location/dataDomains/my-dataDomain', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Datadomains$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Projects$Locations$Datadomains$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Datadomains$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Datadomains$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Datadomains$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy( + callback: BodyResponseCallback + ): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Datadomains$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Datadomains$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Datadomains$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataplex.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataplex = google.dataplex('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataplex.projects.locations.dataDomains.setIamPolicy({ + * // 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: + * 'projects/my-project/locations/my-location/dataDomains/my-dataDomain', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Datadomains$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Projects$Locations$Datadomains$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Projects$Locations$Datadomains$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Datadomains$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Datadomains$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy( + callback: BodyResponseCallback + ): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Datadomains$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Datadomains$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Datadomains$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataplex.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataplex = google.dataplex('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataplex.projects.locations.dataDomains.testIamPermissions({ + * // 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: + * 'projects/my-project/locations/my-location/dataDomains/my-dataDomain', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Datadomains$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Projects$Locations$Datadomains$Testiampermissions, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + testIamPermissions( + params: Params$Resource$Projects$Locations$Datadomains$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Datadomains$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Datadomains$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Datadomains$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Datadomains$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Datadomains$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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$Datadomains$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$Datadomains$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$GoogleIamV1SetIamPolicyRequest; + } + export interface Params$Resource$Projects$Locations$Datadomains$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$GoogleIamV1TestIamPermissionsRequest; + } + export class Resource$Projects$Locations$Dataproducts { context: APIRequestContext; dataAssets: Resource$Projects$Locations$Dataproducts$Dataassets; @@ -11511,7 +12545,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11679,7 +12716,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11825,7 +12865,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11980,7 +13025,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12126,7 +13174,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12283,7 +13336,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12448,7 +13504,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12601,7 +13660,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12880,7 +13942,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13046,7 +14111,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13193,7 +14261,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13341,7 +14414,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13499,7 +14577,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13751,7 +14832,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13783,6 +14867,7 @@ export namespace dataplex_v1 { * // "dataQualitySpec": {}, * // "description": "my_description", * // "displayName": "my_displayName", + * // "executionIdentity": {}, * // "executionSpec": {}, * // "executionStatus": {}, * // "labels": {}, @@ -13927,7 +15012,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14071,7 +15159,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14226,7 +15317,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14256,6 +15352,7 @@ export namespace dataplex_v1 { * // "dataQualitySpec": {}, * // "description": "my_description", * // "displayName": "my_displayName", + * // "executionIdentity": {}, * // "executionSpec": {}, * // "executionStatus": {}, * // "labels": {}, @@ -14387,7 +15484,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14532,7 +15632,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14689,7 +15794,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14721,6 +15829,7 @@ export namespace dataplex_v1 { * // "dataQualitySpec": {}, * // "description": "my_description", * // "displayName": "my_displayName", + * // "executionIdentity": {}, * // "executionSpec": {}, * // "executionStatus": {}, * // "labels": {}, @@ -14862,7 +15971,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15012,7 +16124,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15164,7 +16279,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15440,6 +16558,157 @@ export namespace dataplex_v1 { this.context = context; } + /** + * Cancels a running/pending DataScan job. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataplex.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataplex = google.dataplex('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataplex.projects.locations.dataScans.jobs.cancel({ + * // Required. The resource name of the DataScanJob: projects/{project_id_or_number\}/locations/{location_id\}/dataScans/{data_scan_id\}/jobs/{data_scan_job_id\} where project_id_or_number refers to a project_id or project_number and location_id refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/dataScans/my-dataScan/jobs/my-job', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Datascans$Jobs$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Projects$Locations$Datascans$Jobs$Cancel, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + cancel( + params: Params$Resource$Projects$Locations$Datascans$Jobs$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Datascans$Jobs$Cancel, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Datascans$Jobs$Cancel, + callback: BodyResponseCallback + ): void; + cancel( + callback: BodyResponseCallback + ): void; + cancel( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Datascans$Jobs$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Datascans$Jobs$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Datascans$Jobs$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Generates recommended data quality rules based on the results of a data profiling scan.Use the recommendations to build rules for a data quality scan. * @example @@ -15462,7 +16731,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15617,7 +16889,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15647,6 +16924,7 @@ export namespace dataplex_v1 { * // "endTime": "my_endTime", * // "message": "my_message", * // "name": "my_name", + * // "partialFailureMessage": "my_partialFailureMessage", * // "startTime": "my_startTime", * // "state": "my_state", * // "type": "my_type", @@ -15778,7 +17056,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15908,6 +17191,17 @@ export namespace dataplex_v1 { } } + export interface Params$Resource$Projects$Locations$Datascans$Jobs$Cancel extends StandardParameters { + /** + * Required. The resource name of the DataScanJob: projects/{project_id_or_number\}/locations/{location_id\}/dataScans/{data_scan_id\}/jobs/{data_scan_job_id\} where project_id_or_number refers to a project_id or project_number and location_id refers to a Google Cloud region. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDataplexV1CancelDataScanJobRequest; + } export interface Params$Resource$Projects$Locations$Datascans$Jobs$Generatedataqualityrules extends StandardParameters { /** * Required. The name must be one of the following: The name of a data scan with at least one successful, completed data profiling job The name of a successful, completed data profiling job (a data scan job where the job type is data profiling) @@ -15979,7 +17273,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16145,7 +17442,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16289,7 +17589,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16441,7 +17744,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16587,7 +17893,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16744,7 +18053,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16907,7 +18219,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17060,7 +18375,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17334,7 +18652,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17505,7 +18826,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17651,7 +18975,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17807,7 +19134,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17954,7 +19284,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18113,7 +19446,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18281,7 +19617,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18435,7 +19774,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18719,7 +20061,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18884,7 +20229,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -19028,7 +20376,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -19176,7 +20529,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -19322,7 +20678,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -19479,7 +20840,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -19641,7 +21005,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -19794,7 +21161,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20067,7 +21437,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20234,7 +21607,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20380,7 +21756,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20395,7 +21776,7 @@ export namespace dataplex_v1 { * name: 'projects/my-project/locations/my-location/entryGroups/my-entryGroup/entries/.*', * // Optional. Limits the aspects returned to those associated with the provided paths within the Entry. It only works for CUSTOM view. * paths: 'placeholder-value', - * // Optional. View to control which parts of an entry the service should return. + * // Optional. View to control which parts of an entry the service should return. Please check the limitations on returned aspects in the Entry view documentation. Amount of returned aspects depends on the selected Entry View. * view: 'placeholder-value', * }); * console.log(res.data); @@ -20532,7 +21913,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20688,7 +22074,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20871,7 +22260,7 @@ export namespace dataplex_v1 { */ paths?: string[]; /** - * Optional. View to control which parts of an entry the service should return. + * Optional. View to control which parts of an entry the service should return. Please check the limitations on returned aspects in the Entry view documentation. Amount of returned aspects depends on the selected Entry View. */ view?: string; } @@ -20949,7 +22338,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20968,6 +22360,7 @@ export namespace dataplex_v1 { * requestBody: { * // request body parameters * // { + * // "aspects": {}, * // "createTime": "my_createTime", * // "entryLinkType": "my_entryLinkType", * // "entryReferences": [], @@ -20980,6 +22373,7 @@ export namespace dataplex_v1 { * * // Example response * // { + * // "aspects": {}, * // "createTime": "my_createTime", * // "entryLinkType": "my_entryLinkType", * // "entryReferences": [], @@ -21112,7 +22506,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -21128,6 +22525,7 @@ export namespace dataplex_v1 { * * // Example response * // { + * // "aspects": {}, * // "createTime": "my_createTime", * // "entryLinkType": "my_entryLinkType", * // "entryReferences": [], @@ -21257,7 +22655,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -21273,6 +22674,7 @@ export namespace dataplex_v1 { * * // Example response * // { + * // "aspects": {}, * // "createTime": "my_createTime", * // "entryLinkType": "my_entryLinkType", * // "entryReferences": [], @@ -21379,6 +22781,172 @@ export namespace dataplex_v1 { ); } } + + /** + * Updates an Entry Link. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/dataplex.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const dataplex = google.dataplex('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await dataplex.projects.locations.entryGroups.entryLinks.patch({ + * // Optional. If set to true and the entry link doesn't exist, the service will create it. + * allowMissing: 'placeholder-value', + * // Optional. The map keys of the Aspects which the service should modify. It should be the aspect type reference in the format {project_id_or_number\}.{location_id\}.{aspect_type_id\}.If this field is left empty, the service treats it as specifying exactly those Aspects present in the request. + * aspectKeys: 'placeholder-value', + * // Output only. Immutable. Identifier. The relative resource name of the Entry Link, of the form: projects/{project_id_or_number\}/locations/{location_id\}/entryGroups/{entry_group_id\}/entryLinks/{entry_link_id\} + * name: 'projects/my-project/locations/my-location/entryGroups/my-entryGroup/entryLinks/.*', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "aspects": {}, + * // "createTime": "my_createTime", + * // "entryLinkType": "my_entryLinkType", + * // "entryReferences": [], + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "aspects": {}, + * // "createTime": "my_createTime", + * // "entryLinkType": "my_entryLinkType", + * // "entryReferences": [], + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Entrygroups$Entrylinks$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Entrygroups$Entrylinks$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Entrygroups$Entrylinks$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Entrygroups$Entrylinks$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Entrygroups$Entrylinks$Patch, + callback: BodyResponseCallback + ): void; + patch( + callback: BodyResponseCallback + ): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Entrygroups$Entrylinks$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Entrygroups$Entrylinks$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Entrygroups$Entrylinks$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Entrygroups$Entrylinks$Create extends StandardParameters { @@ -21408,6 +22976,25 @@ export namespace dataplex_v1 { */ name?: string; } + export interface Params$Resource$Projects$Locations$Entrygroups$Entrylinks$Patch extends StandardParameters { + /** + * Optional. If set to true and the entry link doesn't exist, the service will create it. + */ + allowMissing?: boolean; + /** + * Optional. The map keys of the Aspects which the service should modify. It should be the aspect type reference in the format {project_id_or_number\}.{location_id\}.{aspect_type_id\}.If this field is left empty, the service treats it as specifying exactly those Aspects present in the request. + */ + aspectKeys?: string[]; + /** + * Output only. Immutable. Identifier. The relative resource name of the Entry Link, of the form: projects/{project_id_or_number\}/locations/{location_id\}/entryGroups/{entry_group_id\}/entryLinks/{entry_link_id\} + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDataplexV1EntryLink; + } export class Resource$Projects$Locations$Entrylinktypes { context: APIRequestContext; @@ -21437,7 +23024,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -21583,7 +23173,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -21736,7 +23329,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -21934,7 +23530,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -22103,7 +23702,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -22247,7 +23849,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -22399,7 +24006,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -22545,7 +24155,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -22702,7 +24317,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -22868,7 +24486,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -23021,7 +24642,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -23302,7 +24926,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -23468,7 +25095,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -23612,7 +25242,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -23761,7 +25396,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -23907,7 +25545,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -24064,7 +25707,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -24227,7 +25873,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -24380,7 +26029,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -24653,7 +26305,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -24825,7 +26480,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -24958,7 +26616,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -25110,7 +26773,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -25257,7 +26923,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -25415,7 +27086,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -25584,7 +27258,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -25738,7 +27415,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -26000,7 +27680,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -26172,7 +27855,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -26305,7 +27991,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -26456,7 +28147,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -26602,7 +28296,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -26759,7 +28458,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -26928,7 +28630,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -27081,7 +28786,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -27343,7 +29051,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -27489,7 +29200,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -27642,7 +29356,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -27815,9 +29532,6 @@ export namespace dataplex_v1 { export class Resource$Projects$Locations$Lakes { context: APIRequestContext; actions: Resource$Projects$Locations$Lakes$Actions; - content: Resource$Projects$Locations$Lakes$Content; - contentitems: Resource$Projects$Locations$Lakes$Contentitems; - environments: Resource$Projects$Locations$Lakes$Environments; tasks: Resource$Projects$Locations$Lakes$Tasks; zones: Resource$Projects$Locations$Lakes$Zones; constructor(context: APIRequestContext) { @@ -27825,15 +29539,6 @@ export namespace dataplex_v1 { this.actions = new Resource$Projects$Locations$Lakes$Actions( this.context ); - this.content = new Resource$Projects$Locations$Lakes$Content( - this.context - ); - this.contentitems = new Resource$Projects$Locations$Lakes$Contentitems( - this.context - ); - this.environments = new Resource$Projects$Locations$Lakes$Environments( - this.context - ); this.tasks = new Resource$Projects$Locations$Lakes$Tasks(this.context); this.zones = new Resource$Projects$Locations$Lakes$Zones(this.context); } @@ -27860,7 +29565,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -27920,4243 +29628,27 @@ export namespace dataplex_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Projects$Locations$Lakes$Create, - options: StreamMethodOptions - ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Lakes$Create, - options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Lakes$Create, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Lakes$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Lakes$Create, - callback: BodyResponseCallback - ): void; - create( - callback: BodyResponseCallback - ): void; - create( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Create - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Create; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$Create; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/lakes').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Deletes a lake resource. All zones within the lake must be deleted before the lake can be deleted. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.delete({ - * // Required. The resource name of the lake: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. - * name: 'projects/my-project/locations/my-location/lakes/my-lake', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Lakes$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Lakes$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Lakes$Delete, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Lakes$Delete, - callback: BodyResponseCallback - ): void; - delete( - callback: BodyResponseCallback - ): void; - delete( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Retrieves a lake resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.get({ - * // Required. The resource name of the lake: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. - * name: 'projects/my-project/locations/my-location/lakes/my-lake', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "assetStatus": {}, - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "labels": {}, - * // "metastore": {}, - * // "metastoreStatus": {}, - * // "name": "my_name", - * // "serviceAccount": "my_serviceAccount", - * // "state": "my_state", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Lakes$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Lakes$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Lakes$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Lakes$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.getIamPolicy({ - * // 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': 'placeholder-value', - * // 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: 'projects/my-project/locations/my-location/lakes/my-lake', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Getiampolicy, - options: StreamMethodOptions - ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Lakes$Getiampolicy, - options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Getiampolicy, - callback: BodyResponseCallback - ): void; - getIamPolicy( - callback: BodyResponseCallback - ): void; - getIamPolicy( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Getiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Getiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$Getiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists lake resources in a project and location. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.list({ - * // Optional. Filter request. - * filter: 'placeholder-value', - * // Optional. Order by fields for the result. - * orderBy: 'placeholder-value', - * // Optional. Maximum number of Lakes to return. The service may return fewer than this value. If unspecified, at most 10 lakes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous ListLakes call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListLakes must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The resource name of the lake location, of the form: projects/{project_number\}/locations/{location_id\} where location_id refers to a Google Cloud region. - * parent: 'projects/my-project/locations/my-location', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "lakes": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachableLocations": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Lakes$List, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Lakes$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Lakes$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Lakes$List, - callback: BodyResponseCallback - ): void; - list( - callback: BodyResponseCallback - ): void; - list( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/lakes').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Updates a lake resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.patch({ - * // Output only. The relative resource name of the lake, of the form: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. - * name: 'projects/my-project/locations/my-location/lakes/my-lake', - * // Required. Mask of fields to update. - * updateMask: 'placeholder-value', - * // Optional. Only validate the request, but do not perform mutations. The default is false. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "assetStatus": {}, - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "labels": {}, - * // "metastore": {}, - * // "metastoreStatus": {}, - * // "name": "my_name", - * // "serviceAccount": "my_serviceAccount", - * // "state": "my_state", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Lakes$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Lakes$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Projects$Locations$Lakes$Patch, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Projects$Locations$Lakes$Patch, - callback: BodyResponseCallback - ): void; - patch( - callback: BodyResponseCallback - ): void; - patch( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - 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. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.setIamPolicy({ - * // 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: 'projects/my-project/locations/my-location/lakes/my-lake', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Setiampolicy, - options: StreamMethodOptions - ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Lakes$Setiampolicy, - options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Setiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Setiampolicy, - callback: BodyResponseCallback - ): void; - setIamPolicy( - callback: BodyResponseCallback - ): void; - setIamPolicy( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Setiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Setiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$Setiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - 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. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.testIamPermissions({ - * // 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: 'projects/my-project/locations/my-location/lakes/my-lake', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "permissions": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Lakes$Testiampermissions, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - 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$Lakes$Create extends StandardParameters { - /** - * Required. Lake identifier. This ID will be used to generate names such as database and dataset names when publishing metadata to Hive Metastore and BigQuery. * Must contain only lowercase letters, numbers and hyphens. * Must start with a letter. * Must end with a number or a letter. * Must be between 1-63 characters. * Must be unique within the customer project / location. - */ - lakeId?: string; - /** - * Required. The resource name of the lake location, of the form: projects/{project_number\}/locations/{location_id\} where location_id refers to a Google Cloud region. - */ - parent?: string; - /** - * Optional. Only validate the request, but do not perform mutations. The default is false. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDataplexV1Lake; - } - export interface Params$Resource$Projects$Locations$Lakes$Delete extends StandardParameters { - /** - * Required. The resource name of the lake: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Lakes$Get extends StandardParameters { - /** - * Required. The resource name of the lake: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Lakes$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$Lakes$List extends StandardParameters { - /** - * Optional. Filter request. - */ - filter?: string; - /** - * Optional. Order by fields for the result. - */ - orderBy?: string; - /** - * Optional. Maximum number of Lakes to return. The service may return fewer than this value. If unspecified, at most 10 lakes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous ListLakes call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListLakes must match the call that provided the page token. - */ - pageToken?: string; - /** - * Required. The resource name of the lake location, of the form: projects/{project_number\}/locations/{location_id\} where location_id refers to a Google Cloud region. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Lakes$Patch extends StandardParameters { - /** - * Output only. The relative resource name of the lake, of the form: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. - */ - name?: string; - /** - * Required. Mask of fields to update. - */ - updateMask?: string; - /** - * Optional. Only validate the request, but do not perform mutations. The default is false. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDataplexV1Lake; - } - export interface Params$Resource$Projects$Locations$Lakes$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$GoogleIamV1SetIamPolicyRequest; - } - export interface Params$Resource$Projects$Locations$Lakes$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$GoogleIamV1TestIamPermissionsRequest; - } - - export class Resource$Projects$Locations$Lakes$Actions { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Lists action resources in a lake. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.actions.list({ - * // Optional. Maximum number of actions to return. The service may return fewer than this value. If unspecified, at most 10 actions will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous ListLakeActions call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListLakeActions must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The resource name of the parent lake: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. - * parent: 'projects/my-project/locations/my-location/lakes/my-lake', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "actions": [], - * // "nextPageToken": "my_nextPageToken" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Actions$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Lakes$Actions$List, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Lakes$Actions$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Lakes$Actions$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Lakes$Actions$List, - callback: BodyResponseCallback - ): void; - list( - callback: BodyResponseCallback - ): void; - list( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Actions$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Actions$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$Actions$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/actions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - 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$Lakes$Actions$List extends StandardParameters { - /** - * Optional. Maximum number of actions to return. The service may return fewer than this value. If unspecified, at most 10 actions will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous ListLakeActions call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListLakeActions must match the call that provided the page token. - */ - pageToken?: string; - /** - * Required. The resource name of the parent lake: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. - */ - parent?: string; - } - - export class Resource$Projects$Locations$Lakes$Content { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Create a content. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.content.create({ - * // Required. The resource name of the parent lake: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\} - * parent: 'projects/my-project/locations/my-location/lakes/my-lake', - * // Optional. Only validate the request, but do not perform mutations. The default is false. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "dataText": "my_dataText", - * // "description": "my_description", - * // "labels": {}, - * // "name": "my_name", - * // "notebook": {}, - * // "path": "my_path", - * // "sqlScript": {}, - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "createTime": "my_createTime", - * // "dataText": "my_dataText", - * // "description": "my_description", - * // "labels": {}, - * // "name": "my_name", - * // "notebook": {}, - * // "path": "my_path", - * // "sqlScript": {}, - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Content$Create, - options: StreamMethodOptions - ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Lakes$Content$Create, - options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Lakes$Content$Create, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Lakes$Content$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Lakes$Content$Create, - callback: BodyResponseCallback - ): void; - create( - callback: BodyResponseCallback - ): void; - create( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Content$Create - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Content$Create; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$Content$Create; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/content').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Delete a content. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.content.delete({ - * // Required. The resource name of the content: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - * name: 'projects/my-project/locations/my-location/lakes/my-lake/content/.*', - * }); - * console.log(res.data); - * - * // Example response - * // {} - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Content$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Lakes$Content$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Lakes$Content$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Lakes$Content$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Lakes$Content$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Content$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Content$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$Content$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Get a content resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.content.get({ - * // Required. The resource name of the content: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - * name: 'projects/my-project/locations/my-location/lakes/my-lake/content/.*', - * // Optional. Specify content view to make a partial request. - * view: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "createTime": "my_createTime", - * // "dataText": "my_dataText", - * // "description": "my_description", - * // "labels": {}, - * // "name": "my_name", - * // "notebook": {}, - * // "path": "my_path", - * // "sqlScript": {}, - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Content$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Lakes$Content$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Lakes$Content$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Lakes$Content$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Lakes$Content$Get, - callback: BodyResponseCallback - ): void; - get( - callback: BodyResponseCallback - ): void; - get( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Content$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Content$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$Content$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Gets the access control policy for a contentitem resource. A NOT_FOUND error is returned if the resource does not exist. An empty policy is returned if the resource exists but does not have a policy set on it.Caller must have Google IAM dataplex.content.getIamPolicy permission on the resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.content.getIamPolicy({ - * // 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': 'placeholder-value', - * // 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: - * 'projects/my-project/locations/my-location/lakes/my-lake/content/.*', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Content$Getiampolicy, - options: StreamMethodOptions - ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Lakes$Content$Getiampolicy, - options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Content$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Content$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Content$Getiampolicy, - callback: BodyResponseCallback - ): void; - getIamPolicy( - callback: BodyResponseCallback - ): void; - getIamPolicy( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Content$Getiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Content$Getiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Content$Getiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * List content. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.content.list({ - * // Optional. Filter request. Filters are case-sensitive. The following formats are supported:labels.key1 = "value1" labels:key1 type = "NOTEBOOK" type = "SQL_SCRIPT"These restrictions can be coinjoined with AND, OR and NOT conjunctions. - * filter: 'placeholder-value', - * // Optional. Maximum number of content to return. The service may return fewer than this value. If unspecified, at most 10 content will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous ListContent call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListContent must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The resource name of the parent lake: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\} - * parent: 'projects/my-project/locations/my-location/lakes/my-lake', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "content": [], - * // "nextPageToken": "my_nextPageToken" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Content$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Lakes$Content$List, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Lakes$Content$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Lakes$Content$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Lakes$Content$List, - callback: BodyResponseCallback - ): void; - list( - callback: BodyResponseCallback - ): void; - list( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Content$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Content$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$Content$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/content').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Update a content. Only supports full resource update. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.content.patch({ - * // Output only. The relative resource name of the content, of the form: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - * name: 'projects/my-project/locations/my-location/lakes/my-lake/content/.*', - * // Required. Mask of fields to update. - * updateMask: 'placeholder-value', - * // Optional. Only validate the request, but do not perform mutations. The default is false. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "dataText": "my_dataText", - * // "description": "my_description", - * // "labels": {}, - * // "name": "my_name", - * // "notebook": {}, - * // "path": "my_path", - * // "sqlScript": {}, - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "createTime": "my_createTime", - * // "dataText": "my_dataText", - * // "description": "my_description", - * // "labels": {}, - * // "name": "my_name", - * // "notebook": {}, - * // "path": "my_path", - * // "sqlScript": {}, - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Content$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Lakes$Content$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Lakes$Content$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Projects$Locations$Lakes$Content$Patch, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Projects$Locations$Lakes$Content$Patch, - callback: BodyResponseCallback - ): void; - patch( - callback: BodyResponseCallback - ): void; - patch( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Content$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Content$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Lakes$Content$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Sets the access control policy on the specified contentitem resource. Replaces any existing policy.Caller must have Google IAM dataplex.content.setIamPolicy permission on the resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.content.setIamPolicy({ - * // 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: - * 'projects/my-project/locations/my-location/lakes/my-lake/content/.*', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Content$Setiampolicy, - options: StreamMethodOptions - ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Lakes$Content$Setiampolicy, - options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Content$Setiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Content$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Content$Setiampolicy, - callback: BodyResponseCallback - ): void; - setIamPolicy( - callback: BodyResponseCallback - ): void; - setIamPolicy( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Content$Setiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Content$Setiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Content$Setiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns the caller's permissions on a resource. If the resource does not exist, an empty set of permissions is returned (a NOT_FOUND error is not returned).A caller is not required to have Google IAM permission to make this request.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. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await dataplex.projects.locations.lakes.content.testIamPermissions({ - * // 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: - * 'projects/my-project/locations/my-location/lakes/my-lake/content/.*', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "permissions": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Content$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Lakes$Content$Testiampermissions, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Content$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Content$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Content$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Content$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Content$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Content$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - 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$Lakes$Content$Create extends StandardParameters { - /** - * Required. The resource name of the parent lake: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\} - */ - parent?: string; - /** - * Optional. Only validate the request, but do not perform mutations. The default is false. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDataplexV1Content; - } - export interface Params$Resource$Projects$Locations$Lakes$Content$Delete extends StandardParameters { - /** - * Required. The resource name of the content: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Lakes$Content$Get extends StandardParameters { - /** - * Required. The resource name of the content: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - */ - name?: string; - /** - * Optional. Specify content view to make a partial request. - */ - view?: string; - } - export interface Params$Resource$Projects$Locations$Lakes$Content$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$Lakes$Content$List extends StandardParameters { - /** - * Optional. Filter request. Filters are case-sensitive. The following formats are supported:labels.key1 = "value1" labels:key1 type = "NOTEBOOK" type = "SQL_SCRIPT"These restrictions can be coinjoined with AND, OR and NOT conjunctions. - */ - filter?: string; - /** - * Optional. Maximum number of content to return. The service may return fewer than this value. If unspecified, at most 10 content will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous ListContent call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListContent must match the call that provided the page token. - */ - pageToken?: string; - /** - * Required. The resource name of the parent lake: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\} - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Lakes$Content$Patch extends StandardParameters { - /** - * Output only. The relative resource name of the content, of the form: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - */ - name?: string; - /** - * Required. Mask of fields to update. - */ - updateMask?: string; - /** - * Optional. Only validate the request, but do not perform mutations. The default is false. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDataplexV1Content; - } - export interface Params$Resource$Projects$Locations$Lakes$Content$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$GoogleIamV1SetIamPolicyRequest; - } - export interface Params$Resource$Projects$Locations$Lakes$Content$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$GoogleIamV1TestIamPermissionsRequest; - } - - export class Resource$Projects$Locations$Lakes$Contentitems { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Create a content. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.contentitems.create({ - * // Required. The resource name of the parent lake: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\} - * parent: 'projects/my-project/locations/my-location/lakes/my-lake', - * // Optional. Only validate the request, but do not perform mutations. The default is false. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "dataText": "my_dataText", - * // "description": "my_description", - * // "labels": {}, - * // "name": "my_name", - * // "notebook": {}, - * // "path": "my_path", - * // "sqlScript": {}, - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "createTime": "my_createTime", - * // "dataText": "my_dataText", - * // "description": "my_description", - * // "labels": {}, - * // "name": "my_name", - * // "notebook": {}, - * // "path": "my_path", - * // "sqlScript": {}, - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Contentitems$Create, - options: StreamMethodOptions - ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Lakes$Contentitems$Create, - options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Create, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Create, - callback: BodyResponseCallback - ): void; - create( - callback: BodyResponseCallback - ): void; - create( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Contentitems$Create - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Contentitems$Create; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Contentitems$Create; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/contentitems').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Delete a content. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.contentitems.delete({ - * // Required. The resource name of the content: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - * name: 'projects/my-project/locations/my-location/lakes/my-lake/contentitems/.*', - * }); - * console.log(res.data); - * - * // Example response - * // {} - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Contentitems$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Lakes$Contentitems$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Contentitems$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Contentitems$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Contentitems$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Get a content resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.contentitems.get({ - * // Required. The resource name of the content: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - * name: 'projects/my-project/locations/my-location/lakes/my-lake/contentitems/.*', - * // Optional. Specify content view to make a partial request. - * view: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "createTime": "my_createTime", - * // "dataText": "my_dataText", - * // "description": "my_description", - * // "labels": {}, - * // "name": "my_name", - * // "notebook": {}, - * // "path": "my_path", - * // "sqlScript": {}, - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Contentitems$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Lakes$Contentitems$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Get, - callback: BodyResponseCallback - ): void; - get( - callback: BodyResponseCallback - ): void; - get( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Contentitems$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Contentitems$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Contentitems$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Gets the access control policy for a contentitem resource. A NOT_FOUND error is returned if the resource does not exist. An empty policy is returned if the resource exists but does not have a policy set on it.Caller must have Google IAM dataplex.content.getIamPolicy permission on the resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.contentitems.getIamPolicy( - * { - * // 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': 'placeholder-value', - * // 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: - * 'projects/my-project/locations/my-location/lakes/my-lake/contentitems/.*', - * }, - * ); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Contentitems$Getiampolicy, - options: StreamMethodOptions - ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Lakes$Contentitems$Getiampolicy, - options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Getiampolicy, - callback: BodyResponseCallback - ): void; - getIamPolicy( - callback: BodyResponseCallback - ): void; - getIamPolicy( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Contentitems$Getiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Contentitems$Getiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Contentitems$Getiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * List content. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.contentitems.list({ - * // Optional. Filter request. Filters are case-sensitive. The following formats are supported:labels.key1 = "value1" labels:key1 type = "NOTEBOOK" type = "SQL_SCRIPT"These restrictions can be coinjoined with AND, OR and NOT conjunctions. - * filter: 'placeholder-value', - * // Optional. Maximum number of content to return. The service may return fewer than this value. If unspecified, at most 10 content will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous ListContent call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListContent must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The resource name of the parent lake: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\} - * parent: 'projects/my-project/locations/my-location/lakes/my-lake', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "content": [], - * // "nextPageToken": "my_nextPageToken" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Contentitems$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Lakes$Contentitems$List, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$List, - callback: BodyResponseCallback - ): void; - list( - callback: BodyResponseCallback - ): void; - list( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Contentitems$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Contentitems$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Contentitems$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/contentitems').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Update a content. Only supports full resource update. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.contentitems.patch({ - * // Output only. The relative resource name of the content, of the form: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - * name: 'projects/my-project/locations/my-location/lakes/my-lake/contentitems/.*', - * // Required. Mask of fields to update. - * updateMask: 'placeholder-value', - * // Optional. Only validate the request, but do not perform mutations. The default is false. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "dataText": "my_dataText", - * // "description": "my_description", - * // "labels": {}, - * // "name": "my_name", - * // "notebook": {}, - * // "path": "my_path", - * // "sqlScript": {}, - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "createTime": "my_createTime", - * // "dataText": "my_dataText", - * // "description": "my_description", - * // "labels": {}, - * // "name": "my_name", - * // "notebook": {}, - * // "path": "my_path", - * // "sqlScript": {}, - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Contentitems$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Lakes$Contentitems$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Patch, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Patch, - callback: BodyResponseCallback - ): void; - patch( - callback: BodyResponseCallback - ): void; - patch( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Contentitems$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Contentitems$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Contentitems$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Sets the access control policy on the specified contentitem resource. Replaces any existing policy.Caller must have Google IAM dataplex.content.setIamPolicy permission on the resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.contentitems.setIamPolicy( - * { - * // 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: - * 'projects/my-project/locations/my-location/lakes/my-lake/contentitems/.*', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, - * }, - * ); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Contentitems$Setiampolicy, - options: StreamMethodOptions - ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Lakes$Contentitems$Setiampolicy, - options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Setiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Setiampolicy, - callback: BodyResponseCallback - ): void; - setIamPolicy( - callback: BodyResponseCallback - ): void; - setIamPolicy( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Contentitems$Setiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Contentitems$Setiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Contentitems$Setiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns the caller's permissions on a resource. If the resource does not exist, an empty set of permissions is returned (a NOT_FOUND error is not returned).A caller is not required to have Google IAM permission to make this request.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. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await dataplex.projects.locations.lakes.contentitems.testIamPermissions({ - * // 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: - * 'projects/my-project/locations/my-location/lakes/my-lake/contentitems/.*', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "permissions": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Contentitems$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Lakes$Contentitems$Testiampermissions, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Contentitems$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Contentitems$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Contentitems$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Contentitems$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - 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$Lakes$Contentitems$Create extends StandardParameters { - /** - * Required. The resource name of the parent lake: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\} - */ - parent?: string; - /** - * Optional. Only validate the request, but do not perform mutations. The default is false. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDataplexV1Content; - } - export interface Params$Resource$Projects$Locations$Lakes$Contentitems$Delete extends StandardParameters { - /** - * Required. The resource name of the content: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Lakes$Contentitems$Get extends StandardParameters { - /** - * Required. The resource name of the content: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - */ - name?: string; - /** - * Optional. Specify content view to make a partial request. - */ - view?: string; - } - export interface Params$Resource$Projects$Locations$Lakes$Contentitems$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$Lakes$Contentitems$List extends StandardParameters { - /** - * Optional. Filter request. Filters are case-sensitive. The following formats are supported:labels.key1 = "value1" labels:key1 type = "NOTEBOOK" type = "SQL_SCRIPT"These restrictions can be coinjoined with AND, OR and NOT conjunctions. - */ - filter?: string; - /** - * Optional. Maximum number of content to return. The service may return fewer than this value. If unspecified, at most 10 content will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. Page token received from a previous ListContent call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListContent must match the call that provided the page token. - */ - pageToken?: string; - /** - * Required. The resource name of the parent lake: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\} - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Lakes$Contentitems$Patch extends StandardParameters { - /** - * Output only. The relative resource name of the content, of the form: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} - */ - name?: string; - /** - * Required. Mask of fields to update. - */ - updateMask?: string; - /** - * Optional. Only validate the request, but do not perform mutations. The default is false. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDataplexV1Content; - } - export interface Params$Resource$Projects$Locations$Lakes$Contentitems$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$GoogleIamV1SetIamPolicyRequest; - } - export interface Params$Resource$Projects$Locations$Lakes$Contentitems$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$GoogleIamV1TestIamPermissionsRequest; - } - - export class Resource$Projects$Locations$Lakes$Environments { - context: APIRequestContext; - sessions: Resource$Projects$Locations$Lakes$Environments$Sessions; - constructor(context: APIRequestContext) { - this.context = context; - this.sessions = - new Resource$Projects$Locations$Lakes$Environments$Sessions( - this.context - ); - } - - /** - * Create an environment resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.lakes.environments.create({ - * // Required. Environment identifier. * Must contain only lowercase letters, numbers and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the lake. - * environmentId: 'placeholder-value', - * // Required. The resource name of the parent lake: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}. - * parent: 'projects/my-project/locations/my-location/lakes/my-lake', - * // Optional. Only validate the request, but do not perform mutations. The default is false. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "endpoints": {}, - * // "infrastructureSpec": {}, - * // "labels": {}, - * // "name": "my_name", - * // "sessionSpec": {}, - * // "sessionStatus": {}, - * // "state": "my_state", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Lakes$Environments$Create, + params: Params$Resource$Projects$Locations$Lakes$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Projects$Locations$Lakes$Environments$Create, + params?: Params$Resource$Projects$Locations$Lakes$Create, options?: MethodOptions ): Promise>; create( - params: Params$Resource$Projects$Locations$Lakes$Environments$Create, + params: Params$Resource$Projects$Locations$Lakes$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Projects$Locations$Lakes$Environments$Create, + params: Params$Resource$Projects$Locations$Lakes$Create, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Projects$Locations$Lakes$Environments$Create, + params: Params$Resource$Projects$Locations$Lakes$Create, callback: BodyResponseCallback ): void; create( @@ -32164,7 +29656,7 @@ export namespace dataplex_v1 { ): void; create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Environments$Create + | Params$Resource$Projects$Locations$Lakes$Create | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -32180,13 +29672,12 @@ export namespace dataplex_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Environments$Create; + {}) as Params$Resource$Projects$Locations$Lakes$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Environments$Create; + params = {} as Params$Resource$Projects$Locations$Lakes$Create; options = {}; } @@ -32199,7 +29690,7 @@ export namespace dataplex_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/environments').replace( + url: (rootUrl + '/v1/{+parent}/lakes').replace( /([^:]\/)\/+/g, '$1' ), @@ -32224,7 +29715,7 @@ export namespace dataplex_v1 { } /** - * Delete the environment resource. All the child resources must have been deleted before environment deletion can be initiated. + * Deletes a lake resource. All zones within the lake must be deleted before the lake can be deleted. * @example * ```js * // Before running the sample: @@ -32245,7 +29736,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -32253,9 +29747,9 @@ export namespace dataplex_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataplex.projects.locations.lakes.environments.delete({ - * // Required. The resource name of the environment: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/environments/{environment_id\}. - * name: 'projects/my-project/locations/my-location/lakes/my-lake/environments/my-environment', + * const res = await dataplex.projects.locations.lakes.delete({ + * // Required. The resource name of the lake: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. + * name: 'projects/my-project/locations/my-location/lakes/my-lake', * }); * console.log(res.data); * @@ -32282,27 +29776,27 @@ export namespace dataplex_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Lakes$Environments$Delete, + params: Params$Resource$Projects$Locations$Lakes$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Lakes$Environments$Delete, + params?: Params$Resource$Projects$Locations$Lakes$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Lakes$Environments$Delete, + params: Params$Resource$Projects$Locations$Lakes$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Lakes$Environments$Delete, + params: Params$Resource$Projects$Locations$Lakes$Delete, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Lakes$Environments$Delete, + params: Params$Resource$Projects$Locations$Lakes$Delete, callback: BodyResponseCallback ): void; delete( @@ -32310,7 +29804,7 @@ export namespace dataplex_v1 { ): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Environments$Delete + | Params$Resource$Projects$Locations$Lakes$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -32326,13 +29820,12 @@ export namespace dataplex_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Environments$Delete; + {}) as Params$Resource$Projects$Locations$Lakes$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Environments$Delete; + params = {} as Params$Resource$Projects$Locations$Lakes$Delete; options = {}; } @@ -32367,7 +29860,7 @@ export namespace dataplex_v1 { } /** - * Get environment resource. + * Retrieves a lake resource. * @example * ```js * // Before running the sample: @@ -32388,7 +29881,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -32396,23 +29894,23 @@ export namespace dataplex_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataplex.projects.locations.lakes.environments.get({ - * // Required. The resource name of the environment: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/environments/{environment_id\}. - * name: 'projects/my-project/locations/my-location/lakes/my-lake/environments/my-environment', + * const res = await dataplex.projects.locations.lakes.get({ + * // Required. The resource name of the lake: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. + * name: 'projects/my-project/locations/my-location/lakes/my-lake', * }); * console.log(res.data); * * // Example response * // { + * // "assetStatus": {}, * // "createTime": "my_createTime", * // "description": "my_description", * // "displayName": "my_displayName", - * // "endpoints": {}, - * // "infrastructureSpec": {}, * // "labels": {}, + * // "metastore": {}, + * // "metastoreStatus": {}, * // "name": "my_name", - * // "sessionSpec": {}, - * // "sessionStatus": {}, + * // "serviceAccount": "my_serviceAccount", * // "state": "my_state", * // "uid": "my_uid", * // "updateTime": "my_updateTime" @@ -32432,61 +29930,54 @@ export namespace dataplex_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Lakes$Environments$Get, + params: Params$Resource$Projects$Locations$Lakes$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Lakes$Environments$Get, + params?: Params$Resource$Projects$Locations$Lakes$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; get( - params: Params$Resource$Projects$Locations$Lakes$Environments$Get, + params: Params$Resource$Projects$Locations$Lakes$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Lakes$Environments$Get, + params: Params$Resource$Projects$Locations$Lakes$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Lakes$Environments$Get, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Lakes$Get, + callback: BodyResponseCallback ): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Environments$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Lakes$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Environments$Get; + {}) as Params$Resource$Projects$Locations$Lakes$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Environments$Get; + params = {} as Params$Resource$Projects$Locations$Lakes$Get; options = {}; } @@ -32511,14 +30002,12 @@ export namespace dataplex_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } @@ -32544,7 +30033,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -32552,15 +30044,12 @@ export namespace dataplex_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataplex.projects.locations.lakes.environments.getIamPolicy( - * { - * // 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': 'placeholder-value', - * // 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: - * 'projects/my-project/locations/my-location/lakes/my-lake/environments/my-environment', - * }, - * ); + * const res = await dataplex.projects.locations.lakes.getIamPolicy({ + * // 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': 'placeholder-value', + * // 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: 'projects/my-project/locations/my-location/lakes/my-lake', + * }); * console.log(res.data); * * // Example response @@ -32585,25 +30074,25 @@ export namespace dataplex_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Environments$Getiampolicy, + params: Params$Resource$Projects$Locations$Lakes$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Projects$Locations$Lakes$Environments$Getiampolicy, + params?: Params$Resource$Projects$Locations$Lakes$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Environments$Getiampolicy, + params: Params$Resource$Projects$Locations$Lakes$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Environments$Getiampolicy, + params: Params$Resource$Projects$Locations$Lakes$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Environments$Getiampolicy, + params: Params$Resource$Projects$Locations$Lakes$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy( @@ -32611,7 +30100,7 @@ export namespace dataplex_v1 { ): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Environments$Getiampolicy + | Params$Resource$Projects$Locations$Lakes$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -32627,13 +30116,12 @@ export namespace dataplex_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Environments$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Lakes$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Environments$Getiampolicy; + params = {} as Params$Resource$Projects$Locations$Lakes$Getiampolicy; options = {}; } @@ -32671,7 +30159,7 @@ export namespace dataplex_v1 { } /** - * Lists environments under the given lake. + * Lists lake resources in a project and location. * @example * ```js * // Before running the sample: @@ -32692,7 +30180,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -32700,24 +30193,25 @@ export namespace dataplex_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataplex.projects.locations.lakes.environments.list({ + * const res = await dataplex.projects.locations.lakes.list({ * // Optional. Filter request. * filter: 'placeholder-value', * // Optional. Order by fields for the result. * orderBy: 'placeholder-value', - * // Optional. Maximum number of environments to return. The service may return fewer than this value. If unspecified, at most 10 environments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * // Optional. Maximum number of Lakes to return. The service may return fewer than this value. If unspecified, at most 10 lakes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous ListEnvironments call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListEnvironments must match the call that provided the page token. + * // Optional. Page token received from a previous ListLakes call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListLakes must match the call that provided the page token. * pageToken: 'placeholder-value', - * // Required. The resource name of the parent lake: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}. - * parent: 'projects/my-project/locations/my-location/lakes/my-lake', + * // Required. The resource name of the lake location, of the form: projects/{project_number\}/locations/{location_id\} where location_id refers to a Google Cloud region. + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "environments": [], - * // "nextPageToken": "my_nextPageToken" + * // "lakes": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachableLocations": [] * // } * } * @@ -32734,61 +30228,60 @@ export namespace dataplex_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Lakes$Environments$List, + params: Params$Resource$Projects$Locations$Lakes$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Lakes$Environments$List, + params?: Params$Resource$Projects$Locations$Lakes$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Lakes$Environments$List, + params: Params$Resource$Projects$Locations$Lakes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Lakes$Environments$List, + params: Params$Resource$Projects$Locations$Lakes$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Lakes$Environments$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Lakes$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Environments$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Lakes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Environments$List; + {}) as Params$Resource$Projects$Locations$Lakes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Environments$List; + params = {} as Params$Resource$Projects$Locations$Lakes$List; options = {}; } @@ -32801,7 +30294,7 @@ export namespace dataplex_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/environments').replace( + url: (rootUrl + '/v1/{+parent}/lakes').replace( /([^:]\/)\/+/g, '$1' ), @@ -32816,19 +30309,19 @@ export namespace dataplex_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Update the environment resource. + * Updates a lake resource. * @example * ```js * // Before running the sample: @@ -32849,7 +30342,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -32857,9 +30353,9 @@ export namespace dataplex_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataplex.projects.locations.lakes.environments.patch({ - * // Output only. The relative resource name of the environment, of the form: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/environment/{environment_id\} - * name: 'projects/my-project/locations/my-location/lakes/my-lake/environments/my-environment', + * const res = await dataplex.projects.locations.lakes.patch({ + * // Output only. The relative resource name of the lake, of the form: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. + * name: 'projects/my-project/locations/my-location/lakes/my-lake', * // Required. Mask of fields to update. * updateMask: 'placeholder-value', * // Optional. Only validate the request, but do not perform mutations. The default is false. @@ -32869,15 +30365,15 @@ export namespace dataplex_v1 { * requestBody: { * // request body parameters * // { + * // "assetStatus": {}, * // "createTime": "my_createTime", * // "description": "my_description", * // "displayName": "my_displayName", - * // "endpoints": {}, - * // "infrastructureSpec": {}, * // "labels": {}, + * // "metastore": {}, + * // "metastoreStatus": {}, * // "name": "my_name", - * // "sessionSpec": {}, - * // "sessionStatus": {}, + * // "serviceAccount": "my_serviceAccount", * // "state": "my_state", * // "uid": "my_uid", * // "updateTime": "my_updateTime" @@ -32909,27 +30405,27 @@ export namespace dataplex_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Projects$Locations$Lakes$Environments$Patch, + params: Params$Resource$Projects$Locations$Lakes$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Projects$Locations$Lakes$Environments$Patch, + params?: Params$Resource$Projects$Locations$Lakes$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Projects$Locations$Lakes$Environments$Patch, + params: Params$Resource$Projects$Locations$Lakes$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Projects$Locations$Lakes$Environments$Patch, + params: Params$Resource$Projects$Locations$Lakes$Patch, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Projects$Locations$Lakes$Environments$Patch, + params: Params$Resource$Projects$Locations$Lakes$Patch, callback: BodyResponseCallback ): void; patch( @@ -32937,7 +30433,7 @@ export namespace dataplex_v1 { ): void; patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Environments$Patch + | Params$Resource$Projects$Locations$Lakes$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -32953,13 +30449,12 @@ export namespace dataplex_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Environments$Patch; + {}) as Params$Resource$Projects$Locations$Lakes$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Environments$Patch; + params = {} as Params$Resource$Projects$Locations$Lakes$Patch; options = {}; } @@ -33015,7 +30510,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -33023,22 +30521,19 @@ export namespace dataplex_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataplex.projects.locations.lakes.environments.setIamPolicy( - * { - * // 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: - * 'projects/my-project/locations/my-location/lakes/my-lake/environments/my-environment', + * const res = await dataplex.projects.locations.lakes.setIamPolicy({ + * // 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: 'projects/my-project/locations/my-location/lakes/my-lake', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } * }, - * ); + * }); * console.log(res.data); * * // Example response @@ -33063,25 +30558,25 @@ export namespace dataplex_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Environments$Setiampolicy, + params: Params$Resource$Projects$Locations$Lakes$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Projects$Locations$Lakes$Environments$Setiampolicy, + params?: Params$Resource$Projects$Locations$Lakes$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Environments$Setiampolicy, + params: Params$Resource$Projects$Locations$Lakes$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Environments$Setiampolicy, + params: Params$Resource$Projects$Locations$Lakes$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Projects$Locations$Lakes$Environments$Setiampolicy, + params: Params$Resource$Projects$Locations$Lakes$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy( @@ -33089,7 +30584,7 @@ export namespace dataplex_v1 { ): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Environments$Setiampolicy + | Params$Resource$Projects$Locations$Lakes$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -33105,13 +30600,12 @@ export namespace dataplex_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Environments$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Lakes$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Environments$Setiampolicy; + params = {} as Params$Resource$Projects$Locations$Lakes$Setiampolicy; options = {}; } @@ -33170,7 +30664,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -33178,20 +30675,18 @@ export namespace dataplex_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataplex.projects.locations.lakes.environments.testIamPermissions({ - * // 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: - * 'projects/my-project/locations/my-location/lakes/my-lake/environments/my-environment', + * const res = await dataplex.projects.locations.lakes.testIamPermissions({ + * // 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: 'projects/my-project/locations/my-location/lakes/my-lake', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); * console.log(res.data); * * // Example response @@ -33213,29 +30708,29 @@ export namespace dataplex_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Environments$Testiampermissions, + params: Params$Resource$Projects$Locations$Lakes$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Projects$Locations$Lakes$Environments$Testiampermissions, + params?: Params$Resource$Projects$Locations$Lakes$Testiampermissions, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Environments$Testiampermissions, + params: Params$Resource$Projects$Locations$Lakes$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Environments$Testiampermissions, + params: Params$Resource$Projects$Locations$Lakes$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Projects$Locations$Lakes$Environments$Testiampermissions, + params: Params$Resource$Projects$Locations$Lakes$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -33243,7 +30738,7 @@ export namespace dataplex_v1 { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Environments$Testiampermissions + | Params$Resource$Projects$Locations$Lakes$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -33261,13 +30756,13 @@ export namespace dataplex_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Environments$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Lakes$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Lakes$Environments$Testiampermissions; + {} as Params$Resource$Projects$Locations$Lakes$Testiampermissions; options = {}; } @@ -33307,13 +30802,13 @@ export namespace dataplex_v1 { } } - export interface Params$Resource$Projects$Locations$Lakes$Environments$Create extends StandardParameters { + export interface Params$Resource$Projects$Locations$Lakes$Create extends StandardParameters { /** - * Required. Environment identifier. * Must contain only lowercase letters, numbers and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the lake. + * Required. Lake identifier. This ID will be used to generate names such as database and dataset names when publishing metadata to Hive Metastore and BigQuery. * Must contain only lowercase letters, numbers and hyphens. * Must start with a letter. * Must end with a number or a letter. * Must be between 1-63 characters. * Must be unique within the customer project / location. */ - environmentId?: string; + lakeId?: string; /** - * Required. The resource name of the parent lake: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}. + * Required. The resource name of the lake location, of the form: projects/{project_number\}/locations/{location_id\} where location_id refers to a Google Cloud region. */ parent?: string; /** @@ -33324,21 +30819,21 @@ export namespace dataplex_v1 { /** * Request body metadata */ - requestBody?: Schema$GoogleCloudDataplexV1Environment; + requestBody?: Schema$GoogleCloudDataplexV1Lake; } - export interface Params$Resource$Projects$Locations$Lakes$Environments$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Lakes$Delete extends StandardParameters { /** - * Required. The resource name of the environment: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/environments/{environment_id\}. + * Required. The resource name of the lake: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. */ name?: string; } - export interface Params$Resource$Projects$Locations$Lakes$Environments$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Lakes$Get extends StandardParameters { /** - * Required. The resource name of the environment: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/environments/{environment_id\}. + * Required. The resource name of the lake: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. */ name?: string; } - export interface Params$Resource$Projects$Locations$Lakes$Environments$Getiampolicy extends StandardParameters { + export interface Params$Resource$Projects$Locations$Lakes$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). */ @@ -33348,7 +30843,7 @@ export namespace dataplex_v1 { */ resource?: string; } - export interface Params$Resource$Projects$Locations$Lakes$Environments$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Lakes$List extends StandardParameters { /** * Optional. Filter request. */ @@ -33358,21 +30853,21 @@ export namespace dataplex_v1 { */ orderBy?: string; /** - * Optional. Maximum number of environments to return. The service may return fewer than this value. If unspecified, at most 10 environments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * Optional. Maximum number of Lakes to return. The service may return fewer than this value. If unspecified, at most 10 lakes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. */ pageSize?: number; /** - * Optional. Page token received from a previous ListEnvironments call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListEnvironments must match the call that provided the page token. + * Optional. Page token received from a previous ListLakes call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListLakes must match the call that provided the page token. */ pageToken?: string; /** - * Required. The resource name of the parent lake: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}. + * Required. The resource name of the lake location, of the form: projects/{project_number\}/locations/{location_id\} where location_id refers to a Google Cloud region. */ parent?: string; } - export interface Params$Resource$Projects$Locations$Lakes$Environments$Patch extends StandardParameters { + export interface Params$Resource$Projects$Locations$Lakes$Patch extends StandardParameters { /** - * Output only. The relative resource name of the environment, of the form: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/environment/{environment_id\} + * Output only. The relative resource name of the lake, of the form: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. */ name?: string; /** @@ -33387,9 +30882,9 @@ export namespace dataplex_v1 { /** * Request body metadata */ - requestBody?: Schema$GoogleCloudDataplexV1Environment; + requestBody?: Schema$GoogleCloudDataplexV1Lake; } - export interface Params$Resource$Projects$Locations$Lakes$Environments$Setiampolicy extends StandardParameters { + export interface Params$Resource$Projects$Locations$Lakes$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. */ @@ -33400,7 +30895,7 @@ export namespace dataplex_v1 { */ requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; } - export interface Params$Resource$Projects$Locations$Lakes$Environments$Testiampermissions extends StandardParameters { + export interface Params$Resource$Projects$Locations$Lakes$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. */ @@ -33412,14 +30907,14 @@ export namespace dataplex_v1 { requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; } - export class Resource$Projects$Locations$Lakes$Environments$Sessions { + export class Resource$Projects$Locations$Lakes$Actions { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Lists session resources in an environment. + * Lists action resources in a lake. * @example * ```js * // Before running the sample: @@ -33440,7 +30935,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -33448,24 +30948,20 @@ export namespace dataplex_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataplex.projects.locations.lakes.environments.sessions.list({ - * // Optional. Filter request. The following mode filter is supported to return only the sessions belonging to the requester when the mode is USER and return sessions of all the users when the mode is ADMIN. When no filter is sent default to USER mode. NOTE: When the mode is ADMIN, the requester should have dataplex.environments.listAllSessions permission to list all sessions, in absence of the permission, the request fails.mode = ADMIN | USER - * filter: 'placeholder-value', - * // Optional. Maximum number of sessions to return. The service may return fewer than this value. If unspecified, at most 10 sessions will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. Page token received from a previous ListSessions call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListSessions must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The resource name of the parent environment: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}/environment/{environment_id\}. - * parent: - * 'projects/my-project/locations/my-location/lakes/my-lake/environments/my-environment', - * }); + * const res = await dataplex.projects.locations.lakes.actions.list({ + * // Optional. Maximum number of actions to return. The service may return fewer than this value. If unspecified, at most 10 actions will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. Page token received from a previous ListLakeActions call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListLakeActions must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The resource name of the parent lake: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. + * parent: 'projects/my-project/locations/my-location/lakes/my-lake', + * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "sessions": [] + * // "actions": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -33482,61 +30978,60 @@ export namespace dataplex_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Lakes$Environments$Sessions$List, + params: Params$Resource$Projects$Locations$Lakes$Actions$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Lakes$Environments$Sessions$List, + params?: Params$Resource$Projects$Locations$Lakes$Actions$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Lakes$Environments$Sessions$List, + params: Params$Resource$Projects$Locations$Lakes$Actions$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Lakes$Environments$Sessions$List, + params: Params$Resource$Projects$Locations$Lakes$Actions$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Lakes$Environments$Sessions$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Lakes$Actions$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Lakes$Environments$Sessions$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Lakes$Actions$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Lakes$Environments$Sessions$List; + {}) as Params$Resource$Projects$Locations$Lakes$Actions$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Lakes$Environments$Sessions$List; + params = {} as Params$Resource$Projects$Locations$Lakes$Actions$List; options = {}; } @@ -33549,7 +31044,7 @@ export namespace dataplex_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/sessions').replace( + url: (rootUrl + '/v1/{+parent}/actions').replace( /([^:]\/)\/+/g, '$1' ), @@ -33564,33 +31059,29 @@ export namespace dataplex_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } } - export interface Params$Resource$Projects$Locations$Lakes$Environments$Sessions$List extends StandardParameters { - /** - * Optional. Filter request. The following mode filter is supported to return only the sessions belonging to the requester when the mode is USER and return sessions of all the users when the mode is ADMIN. When no filter is sent default to USER mode. NOTE: When the mode is ADMIN, the requester should have dataplex.environments.listAllSessions permission to list all sessions, in absence of the permission, the request fails.mode = ADMIN | USER - */ - filter?: string; + export interface Params$Resource$Projects$Locations$Lakes$Actions$List extends StandardParameters { /** - * Optional. Maximum number of sessions to return. The service may return fewer than this value. If unspecified, at most 10 sessions will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * Optional. Maximum number of actions to return. The service may return fewer than this value. If unspecified, at most 10 actions will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. */ pageSize?: number; /** - * Optional. Page token received from a previous ListSessions call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListSessions must match the call that provided the page token. + * Optional. Page token received from a previous ListLakeActions call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListLakeActions must match the call that provided the page token. */ pageToken?: string; /** - * Required. The resource name of the parent environment: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}/environment/{environment_id\}. + * Required. The resource name of the parent lake: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. */ parent?: string; } @@ -33627,7 +31118,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -33796,7 +31290,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -33938,7 +31435,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -34086,7 +31588,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -34232,7 +31737,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -34389,7 +31899,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -34555,7 +32068,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -34708,7 +32224,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -34861,7 +32380,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -35141,7 +32663,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -35280,7 +32805,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -35427,7 +32957,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -35628,7 +33163,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -35796,7 +33334,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -35938,7 +33479,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -36085,7 +33631,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -36231,7 +33780,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -36387,7 +33941,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -36552,7 +34109,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -36705,7 +34265,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -36974,7 +34537,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -37154,7 +34722,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -37325,7 +34896,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -37468,7 +35042,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -37619,7 +35198,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -37767,7 +35349,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -37925,7 +35512,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -38092,7 +35682,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -38247,7 +35840,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -38517,7 +36113,12 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * 'https://www.googleapis.com/auth/dataplex.readonly', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -38700,7 +36301,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -38887,7 +36491,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -39022,7 +36629,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -39180,7 +36790,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -39338,7 +36951,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -39601,7 +37217,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -39763,7 +37382,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -39899,7 +37521,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -40044,7 +37669,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -40258,7 +37886,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -40422,7 +38053,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -40564,7 +38198,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -40715,7 +38352,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -40872,7 +38512,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -41113,7 +38756,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -41251,7 +38897,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -41418,7 +39067,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -41572,7 +39224,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -41795,7 +39450,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -41933,7 +39591,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -42065,7 +39726,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -42207,7 +39871,10 @@ export namespace dataplex_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataplex.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -42388,501 +40055,4 @@ export namespace dataplex_v1 { */ returnPartialSuccess?: boolean; } - - export class Resource$Projects$Locations$Policyintents { - 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. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.policyIntents.getIamPolicy({ - * // 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': 'placeholder-value', - * // 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: - * 'projects/my-project/locations/my-location/policyIntents/my-policyIntent', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Policyintents$Getiampolicy, - options: StreamMethodOptions - ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Policyintents$Getiampolicy, - options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Policyintents$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Policyintents$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Policyintents$Getiampolicy, - callback: BodyResponseCallback - ): void; - getIamPolicy( - callback: BodyResponseCallback - ): void; - getIamPolicy( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Policyintents$Getiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Policyintents$Getiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Policyintents$Getiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - 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. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await dataplex.projects.locations.policyIntents.setIamPolicy({ - * // 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: - * 'projects/my-project/locations/my-location/policyIntents/my-policyIntent', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Policyintents$Setiampolicy, - options: StreamMethodOptions - ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Policyintents$Setiampolicy, - options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Policyintents$Setiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Policyintents$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Policyintents$Setiampolicy, - callback: BodyResponseCallback - ): void; - setIamPolicy( - callback: BodyResponseCallback - ): void; - setIamPolicy( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Policyintents$Setiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Policyintents$Setiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Policyintents$Setiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - 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. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/dataplex.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const dataplex = google.dataplex('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await dataplex.projects.locations.policyIntents.testIamPermissions({ - * // 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: - * 'projects/my-project/locations/my-location/policyIntents/my-policyIntent', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "permissions": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Policyintents$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Policyintents$Testiampermissions, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - testIamPermissions( - params: Params$Resource$Projects$Locations$Policyintents$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Policyintents$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Policyintents$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Policyintents$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Policyintents$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Policyintents$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - 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$Policyintents$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$Policyintents$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$GoogleIamV1SetIamPolicyRequest; - } - export interface Params$Resource$Projects$Locations$Policyintents$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$GoogleIamV1TestIamPermissionsRequest; - } } diff --git a/src/apis/dataproc/v1.ts b/src/apis/dataproc/v1.ts index 690d6997ec9..e61c05dce3a 100644 --- a/src/apis/dataproc/v1.ts +++ b/src/apis/dataproc/v1.ts @@ -540,6 +540,10 @@ export namespace dataproc_v1 { * Optional. PySpark batch config. */ pysparkBatch?: Schema$PySparkBatch; + /** + * Optional. PySpark notebook batch config. + */ + pysparkNotebookBatch?: Schema$PySparkNotebookBatch; /** * Optional. Runtime configuration for the batch execution. */ @@ -733,6 +737,10 @@ export namespace dataproc_v1 { * Optional. Port/endpoint configuration for this cluster */ endpointConfig?: Schema$EndpointConfig; + /** + * Optional. The cluster engine. + */ + engine?: string | null; /** * Optional. The shared Compute Engine config settings for all instances in a cluster. */ @@ -913,6 +921,19 @@ export namespace dataproc_v1 { */ clusterRepairAction?: string | null; } + /** + * Information about the cohort that the workload belongs to. + */ + export interface Schema$CohortInfo { + /** + * Output only. Final cohort that was used to tune the workload. + */ + cohort?: string | null; + /** + * Output only. Source of the cohort. + */ + cohortSource?: string | null; + } /** * Confidential Instance Config for clusters using Confidential VMs (https://cloud.google.com/compute/confidential-vm/docs) */ @@ -1108,6 +1129,10 @@ export namespace dataproc_v1 { * Optional. Network URI to connect workload to. */ networkUri?: string | null; + /** + * Optional. Associates Resource Manager tags with the workload nodes. There is a max limit of 30 tags. Keys and values can be either in numeric format, such as tagKeys/{tag_key_id\} and tagValues/{tag_value_id\}, or in namespaced format, such as {org_id|project_id\}/{tag_key_short_name\} and {tag_value_short_name\}. + */ + resourceManagerTags?: {[key: string]: string} | null; /** * Optional. Service account that used to execute workload. */ @@ -1593,6 +1618,10 @@ export namespace dataproc_v1 { * Instance flexibility Policy allowing a mixture of VM shapes and provisioning models. */ export interface Schema$InstanceFlexibilityPolicy { + /** + * Output only. A map of instance short name to machine type. The key is the short name of the Compute Engine instance, and the value is the full machine-type name (e.g., 'n1-standard-16'). See Machine types for more information on valid machine type strings. + */ + instanceMachineTypes?: {[key: string]: string} | null; /** * Optional. List of instance selection options that the group will use when creating new VMs. */ @@ -2798,6 +2827,35 @@ export namespace dataproc_v1 { */ pythonFileUris?: string[] | null; } + /** + * A configuration for running a PySpark Notebook batch workload. + */ + export interface Schema$PySparkNotebookBatch { + /** + * Optional. HCFS URIs of archives to be extracted into the working directory of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip. + */ + archiveUris?: string[] | null; + /** + * Optional. HCFS URIs of files to be placed in the working directory of each executor + */ + fileUris?: string[] | null; + /** + * Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH. + */ + jarFileUris?: string[] | null; + /** + * Required. The HCFS URI of the notebook file to execute. + */ + notebookFileUri?: string | null; + /** + * Optional. The parameters to pass to the notebook. + */ + params?: {[key: string]: string} | null; + /** + * Optional. HCFS URIs of Python files to pass to the PySpark framework. + */ + pythonFileUris?: string[] | null; + } /** * Quantile metrics data related to Tasks. Units can be seconds, bytes, milliseconds, etc depending on the message type. */ @@ -3045,6 +3103,10 @@ export namespace dataproc_v1 { * Output only. Approximate workload resource usage, calculated when the workload completes (see Dataproc Serverless pricing (https://cloud.google.com/dataproc-serverless/pricing)).Note: This metric calculation may change in the future, for example, to capture cumulative workload resource consumption during workload execution (see the Dataproc Serverless release notes (https://cloud.google.com/dataproc-serverless/docs/release-notes) for announcements, changes, fixes and other Dataproc developments). */ approximateUsage?: Schema$UsageMetrics; + /** + * Output only. Information about the cohort that the workload belongs to. + */ + cohortInfo?: Schema$CohortInfo; /** * Output only. Snapshot of current workload resource usage. */ @@ -3765,6 +3827,10 @@ export namespace dataproc_v1 { */ export interface Schema$SparkPlanGraphCluster { desc?: string | null; + /** + * Optional. Additional metadata for the spark plan graph cluster. + */ + metadata?: {[key: string]: string} | null; metrics?: Schema$SqlPlanMetric[]; name?: string | null; nodes?: Schema$SparkPlanGraphNodeWrapper[]; @@ -3782,6 +3848,10 @@ export namespace dataproc_v1 { */ export interface Schema$SparkPlanGraphNode { desc?: string | null; + /** + * Optional. Additional metadata for the spark plan graph cluster. + */ + metadata?: {[key: string]: string} | null; metrics?: Schema$SqlPlanMetric[]; name?: string | null; sparkPlanGraphNodeId?: string | null; @@ -4907,7 +4977,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5065,7 +5138,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5198,7 +5274,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5339,7 +5418,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5489,7 +5571,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5638,7 +5723,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5788,7 +5876,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5940,7 +6031,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6187,7 +6281,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6337,7 +6434,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6364,6 +6464,7 @@ export namespace dataproc_v1 { * // "name": "my_name", * // "operation": "my_operation", * // "pysparkBatch": {}, + * // "pysparkNotebookBatch": {}, * // "runtimeConfig": {}, * // "runtimeInfo": {}, * // "sparkBatch": {}, @@ -6506,7 +6607,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6638,7 +6742,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6661,6 +6769,7 @@ export namespace dataproc_v1 { * // "name": "my_name", * // "operation": "my_operation", * // "pysparkBatch": {}, + * // "pysparkNotebookBatch": {}, * // "runtimeConfig": {}, * // "runtimeInfo": {}, * // "sparkBatch": {}, @@ -6788,7 +6897,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7007,7 +7120,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7151,7 +7268,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7304,7 +7425,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7457,7 +7582,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7610,7 +7739,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7767,7 +7900,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7926,7 +8063,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8081,7 +8222,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8241,7 +8386,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8401,7 +8550,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8563,7 +8716,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8721,7 +8878,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8883,7 +9044,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9045,7 +9210,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9211,7 +9380,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9371,7 +9544,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9527,7 +9704,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9678,7 +9859,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9835,7 +10020,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9988,7 +10177,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10531,7 +10723,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10663,7 +10858,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10795,7 +10993,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10933,7 +11135,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11132,7 +11338,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11300,7 +11509,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11440,7 +11652,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11589,7 +11805,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11735,7 +11955,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11956,7 +12179,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12104,7 +12331,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12257,7 +12488,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12410,7 +12645,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12563,7 +12802,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12722,7 +12965,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12881,7 +13128,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13036,7 +13287,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13200,7 +13455,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13360,7 +13619,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13522,7 +13785,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13682,7 +13949,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13846,7 +14117,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14008,7 +14283,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14174,7 +14453,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14336,7 +14619,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14492,7 +14779,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14645,7 +14936,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14802,7 +15097,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14957,7 +15256,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15519,7 +15821,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15685,7 +15990,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15818,7 +16126,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15962,7 +16274,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16112,7 +16428,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16335,7 +16654,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16501,7 +16823,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16636,7 +16961,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16782,7 +17111,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16931,7 +17263,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17083,7 +17418,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17245,7 +17583,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17395,7 +17737,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17544,7 +17889,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17696,7 +18044,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18002,7 +18353,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18160,7 +18514,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18293,7 +18650,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18433,7 +18793,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18582,7 +18945,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18731,7 +19097,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18880,7 +19249,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -19032,7 +19404,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -19280,7 +19655,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -19442,7 +19820,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -19593,7 +19974,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -19752,7 +20136,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -19901,7 +20289,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20048,7 +20439,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20202,7 +20596,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20213,9 +20611,9 @@ export namespace dataproc_v1 { * const res = await dataproc.projects.regions.clusters.list({ * // Optional. A filter constraining the clusters to list. Filters are case-sensitive and have the following syntax:field = value AND field = value ...where field is one of status.state, clusterName, or labels.[KEY], and [KEY] is a label key. value can be * to match all values. status.state can be one of the following: ACTIVE, INACTIVE, CREATING, RUNNING, ERROR, DELETING, UPDATING, STOPPING, or STOPPED. ACTIVE contains the CREATING, UPDATING, and RUNNING states. INACTIVE contains the DELETING, ERROR, STOPPING, and STOPPED states. clusterName is the name of the cluster provided at creation time. Only the logical AND operator is supported; space-separated items are treated as having an implicit AND operator.Example filter:status.state = ACTIVE AND clusterName = mycluster AND labels.env = staging AND labels.starred = * * filter: 'placeholder-value', - * // Optional. The standard List page size. + * // Optional. The maximum number of clusters to return in each response. The service may return fewer than this value. If unspecified, the default value is 200. The maximum value is 1000. * pageSize: 'placeholder-value', - * // Optional. The standard List page token. + * // Optional. A page token received from a previous ListClusters call. Provide this token to retrieve the subsequent page. * pageToken: 'placeholder-value', * // Required. The ID of the Google Cloud Platform project that the cluster belongs to. * projectId: 'placeholder-value', @@ -20349,7 +20747,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20516,7 +20917,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20675,7 +21079,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20822,7 +21229,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -20976,7 +21386,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -21130,7 +21543,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -21377,11 +21793,11 @@ export namespace dataproc_v1 { */ filter?: string; /** - * Optional. The standard List page size. + * Optional. The maximum number of clusters to return in each response. The service may return fewer than this value. If unspecified, the default value is 200. The maximum value is 1000. */ pageSize?: number; /** - * Optional. The standard List page token. + * Optional. A page token received from a previous ListClusters call. Provide this token to retrieve the subsequent page. */ pageToken?: string; /** @@ -21532,7 +21948,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -21691,7 +22110,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -21828,7 +22251,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -21977,7 +22403,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -22186,7 +22615,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -22354,7 +22786,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -22492,7 +22927,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -22653,7 +23092,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -22800,7 +23242,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -22950,7 +23396,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -23142,7 +23591,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -23289,7 +23741,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -23457,7 +23912,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -23609,7 +24067,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -23929,7 +24390,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -24061,7 +24525,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -24193,7 +24660,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -24331,7 +24802,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -24478,7 +24952,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -24624,7 +25102,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -24771,7 +25252,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -25002,7 +25486,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -25168,7 +25655,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -25303,7 +25793,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -25449,7 +25943,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -25598,7 +26095,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -25750,7 +26250,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -25912,7 +26415,11 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * 'https://www.googleapis.com/auth/dataproc.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -26061,7 +26568,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -26210,7 +26720,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -26362,7 +26875,10 @@ export namespace dataproc_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/dataproc', + * ], * }); * * // Acquire an auth client, and bind it to all future calls diff --git a/src/apis/datastream/v1.ts b/src/apis/datastream/v1.ts index a9b89a2486b..dc64296872e 100644 --- a/src/apis/datastream/v1.ts +++ b/src/apis/datastream/v1.ts @@ -173,6 +173,10 @@ export namespace datastream_v1 { * Output only. Errors which caused the backfill job to fail. */ errors?: Schema$Error[]; + /** + * Output only. The filter for performing a partial backfill. + */ + eventFilter?: Schema$EventFilter; /** * Output only. Backfill job's end time. */ @@ -654,7 +658,7 @@ export namespace datastream_v1 { */ description?: string | null; /** - * A path that leads to a field in the request body. The value will be a sequence of dot-separated identifiers that identify a protocol buffer field. Consider the following: message CreateContactRequest { message EmailAddress { enum Type { TYPE_UNSPECIFIED = 0; HOME = 1; WORK = 2; \} optional string email = 1; repeated EmailType type = 2; \} string full_name = 1; repeated EmailAddress email_addresses = 2; \} In this example, in proto `field` could take one of the following values: * `full_name` for a violation in the `full_name` value * `email_addresses[1].email` for a violation in the `email` field of the first `email_addresses` message * `email_addresses[3].type[2]` for a violation in the second `type` value in the third `email_addresses` message. In JSON, the same values are represented as: * `fullName` for a violation in the `fullName` value * `emailAddresses[1].email` for a violation in the `email` field of the first `emailAddresses` message * `emailAddresses[3].type[2]` for a violation in the second `type` value in the third `emailAddresses` message. + * A path that leads to a field in the request body. The value will be a sequence of dot-separated identifiers that identify a protocol buffer field. Consider the following: message CreateContactRequest { message EmailAddress { enum Type { TYPE_UNSPECIFIED = 0; HOME = 1; WORK = 2; \} optional string email = 1; repeated EmailType type = 2; \} string full_name = 1; repeated EmailAddress email_addresses = 2; \} In this example, in proto `field` could take one of the following values: * `full_name` for a violation in the `full_name` value * `email_addresses[0].email` for a violation in the `email` field of the first `email_addresses` message * `email_addresses[2].type[1]` for a violation in the second `type` value in the third `email_addresses` message. In JSON, the same values are represented as: * `fullName` for a violation in the `fullName` value * `emailAddresses[0].email` for a violation in the `email` field of the first `emailAddresses` message * `emailAddresses[2].type[1]` for a violation in the second `type` value in the third `emailAddresses` message. */ field?: string | null; /** @@ -1942,7 +1946,7 @@ export namespace datastream_v1 { */ export interface Schema$QuotaFailureViolation { /** - * The API Service from which the `QuotaFailure.Violation` orginates. In some cases, Quota issues originate from an API Service other than the one that was called. In other words, a dependency of the called API Service could be the cause of the `QuotaFailure`, and this field would have the dependency API service name. For example, if the called API is Kubernetes Engine API (container.googleapis.com), and a quota violation occurs in the Kubernetes Engine API itself, this field would be "container.googleapis.com". On the other hand, if the quota violation occurs when the Kubernetes Engine API creates VMs in the Compute Engine API (compute.googleapis.com), this field would be "compute.googleapis.com". + * The API Service from which the `QuotaFailure.Violation` originates. In some cases, Quota issues originate from an API Service other than the one that was called. In other words, a dependency of the called API Service could be the cause of the `QuotaFailure`, and this field would have the dependency API service name. For example, if the called API is Kubernetes Engine API (container.googleapis.com), and a quota violation occurs in the Kubernetes Engine API itself, this field would be "container.googleapis.com". On the other hand, if the quota violation occurs when the Kubernetes Engine API creates VMs in the Compute Engine API (compute.googleapis.com), this field would be "compute.googleapis.com". */ apiService?: string | null; /** @@ -2627,7 +2631,7 @@ export namespace datastream_v1 { */ export interface Schema$StartBackfillJobRequest { /** - * Optional. Optional event filter. If not set, or empty, the backfill will be performed on the entire object. This is currently used for partial backfill and only supported for SQL Server sources. + * Optional. Optional event filter. If not set, or empty, the backfill will be performed on the entire object. This is currently used for partial backfill and only supported for SQL sources. */ eventFilter?: Schema$EventFilter; } @@ -3199,7 +3203,7 @@ export namespace datastream_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3229,7 +3233,7 @@ export namespace datastream_v1 { * * // Do the magic * const res = await datastream.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3369,7 +3373,7 @@ export namespace datastream_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/datastream/v1alpha1.ts b/src/apis/datastream/v1alpha1.ts index 82cf016eb91..e636bfffff2 100644 --- a/src/apis/datastream/v1alpha1.ts +++ b/src/apis/datastream/v1alpha1.ts @@ -383,7 +383,7 @@ export namespace datastream_v1alpha1 { */ description?: string | null; /** - * A path that leads to a field in the request body. The value will be a sequence of dot-separated identifiers that identify a protocol buffer field. Consider the following: message CreateContactRequest { message EmailAddress { enum Type { TYPE_UNSPECIFIED = 0; HOME = 1; WORK = 2; \} optional string email = 1; repeated EmailType type = 2; \} string full_name = 1; repeated EmailAddress email_addresses = 2; \} In this example, in proto `field` could take one of the following values: * `full_name` for a violation in the `full_name` value * `email_addresses[1].email` for a violation in the `email` field of the first `email_addresses` message * `email_addresses[3].type[2]` for a violation in the second `type` value in the third `email_addresses` message. In JSON, the same values are represented as: * `fullName` for a violation in the `fullName` value * `emailAddresses[1].email` for a violation in the `email` field of the first `emailAddresses` message * `emailAddresses[3].type[2]` for a violation in the second `type` value in the third `emailAddresses` message. + * A path that leads to a field in the request body. The value will be a sequence of dot-separated identifiers that identify a protocol buffer field. Consider the following: message CreateContactRequest { message EmailAddress { enum Type { TYPE_UNSPECIFIED = 0; HOME = 1; WORK = 2; \} optional string email = 1; repeated EmailType type = 2; \} string full_name = 1; repeated EmailAddress email_addresses = 2; \} In this example, in proto `field` could take one of the following values: * `full_name` for a violation in the `full_name` value * `email_addresses[0].email` for a violation in the `email` field of the first `email_addresses` message * `email_addresses[2].type[1]` for a violation in the second `type` value in the third `email_addresses` message. In JSON, the same values are represented as: * `fullName` for a violation in the `fullName` value * `emailAddresses[0].email` for a violation in the `email` field of the first `emailAddresses` message * `emailAddresses[2].type[1]` for a violation in the second `type` value in the third `emailAddresses` message. */ field?: string | null; /** @@ -1069,7 +1069,7 @@ export namespace datastream_v1alpha1 { */ export interface Schema$QuotaFailureViolation { /** - * The API Service from which the `QuotaFailure.Violation` orginates. In some cases, Quota issues originate from an API Service other than the one that was called. In other words, a dependency of the called API Service could be the cause of the `QuotaFailure`, and this field would have the dependency API service name. For example, if the called API is Kubernetes Engine API (container.googleapis.com), and a quota violation occurs in the Kubernetes Engine API itself, this field would be "container.googleapis.com". On the other hand, if the quota violation occurs when the Kubernetes Engine API creates VMs in the Compute Engine API (compute.googleapis.com), this field would be "compute.googleapis.com". + * The API Service from which the `QuotaFailure.Violation` originates. In some cases, Quota issues originate from an API Service other than the one that was called. In other words, a dependency of the called API Service could be the cause of the `QuotaFailure`, and this field would have the dependency API service name. For example, if the called API is Kubernetes Engine API (container.googleapis.com), and a quota violation occurs in the Kubernetes Engine API itself, this field would be "container.googleapis.com". On the other hand, if the quota violation occurs when the Kubernetes Engine API creates VMs in the Compute Engine API (compute.googleapis.com), this field would be "compute.googleapis.com". */ apiService?: string | null; /** @@ -1703,7 +1703,7 @@ export namespace datastream_v1alpha1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1733,7 +1733,7 @@ export namespace datastream_v1alpha1 { * * // Do the magic * const res = await datastream.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1873,7 +1873,7 @@ export namespace datastream_v1alpha1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/deploymentmanager/alpha.ts b/src/apis/deploymentmanager/alpha.ts index 355bbcc6f6c..2f08dd91139 100644 --- a/src/apis/deploymentmanager/alpha.ts +++ b/src/apis/deploymentmanager/alpha.ts @@ -547,6 +547,19 @@ export namespace deploymentmanager_alpha { */ allocatedPriority?: number | null; } + export interface Schema$GetVersionOperationMetadata { + inlineSbomInfo?: Schema$GetVersionOperationMetadataSbomInfo; + } + export interface Schema$GetVersionOperationMetadataSbomInfo { + /** + * SBOM versions currently applied to the resource. The key is the component name and the value is the version. + */ + currentComponentVersions?: {[key: string]: string} | null; + /** + * SBOM versions scheduled for the next maintenance. The key is the component name and the value is the version. + */ + targetComponentVersions?: {[key: string]: string} | null; + } export interface Schema$GlobalSetPolicyRequest { /** * Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify bindings. @@ -759,6 +772,7 @@ export namespace deploymentmanager_alpha { }>; } | null; firewallPolicyRuleOperationMetadata?: Schema$FirewallPolicyRuleOperationMetadata; + getVersionOperationMetadata?: Schema$GetVersionOperationMetadata; /** * [Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as `NOT FOUND`. */ @@ -1471,6 +1485,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -1814,6 +1829,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -2161,6 +2177,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -2351,6 +2368,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -2642,6 +2660,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -2818,6 +2837,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -3325,6 +3345,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -3680,6 +3701,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -4018,6 +4040,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -4375,6 +4398,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -5145,6 +5169,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -5885,6 +5910,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -6388,6 +6414,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -6898,6 +6925,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -7090,6 +7118,7 @@ export namespace deploymentmanager_alpha { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", diff --git a/src/apis/deploymentmanager/v2.ts b/src/apis/deploymentmanager/v2.ts index 8854dbe3a8f..b5510d37cda 100644 --- a/src/apis/deploymentmanager/v2.ts +++ b/src/apis/deploymentmanager/v2.ts @@ -372,6 +372,19 @@ export namespace deploymentmanager_v2 { */ allocatedPriority?: number | null; } + export interface Schema$GetVersionOperationMetadata { + inlineSbomInfo?: Schema$GetVersionOperationMetadataSbomInfo; + } + export interface Schema$GetVersionOperationMetadataSbomInfo { + /** + * SBOM versions currently applied to the resource. The key is the component name and the value is the version. + */ + currentComponentVersions?: {[key: string]: string} | null; + /** + * SBOM versions scheduled for the next maintenance. The key is the component name and the value is the version. + */ + targetComponentVersions?: {[key: string]: string} | null; + } export interface Schema$GlobalSetPolicyRequest { /** * Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify bindings. @@ -538,6 +551,7 @@ export namespace deploymentmanager_v2 { }>; } | null; firewallPolicyRuleOperationMetadata?: Schema$FirewallPolicyRuleOperationMetadata; + getVersionOperationMetadata?: Schema$GetVersionOperationMetadata; /** * [Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as `NOT FOUND`. */ @@ -993,6 +1007,7 @@ export namespace deploymentmanager_v2 { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -1169,6 +1184,7 @@ export namespace deploymentmanager_v2 { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -1672,6 +1688,7 @@ export namespace deploymentmanager_v2 { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -2025,6 +2042,7 @@ export namespace deploymentmanager_v2 { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -2363,6 +2381,7 @@ export namespace deploymentmanager_v2 { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -2718,6 +2737,7 @@ export namespace deploymentmanager_v2 { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -3488,6 +3508,7 @@ export namespace deploymentmanager_v2 { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", diff --git a/src/apis/deploymentmanager/v2beta.ts b/src/apis/deploymentmanager/v2beta.ts index 809b5fc79ed..ec2c8f04d2a 100644 --- a/src/apis/deploymentmanager/v2beta.ts +++ b/src/apis/deploymentmanager/v2beta.ts @@ -518,6 +518,19 @@ export namespace deploymentmanager_v2beta { */ allocatedPriority?: number | null; } + export interface Schema$GetVersionOperationMetadata { + inlineSbomInfo?: Schema$GetVersionOperationMetadataSbomInfo; + } + export interface Schema$GetVersionOperationMetadataSbomInfo { + /** + * SBOM versions currently applied to the resource. The key is the component name and the value is the version. + */ + currentComponentVersions?: {[key: string]: string} | null; + /** + * SBOM versions scheduled for the next maintenance. The key is the component name and the value is the version. + */ + targetComponentVersions?: {[key: string]: string} | null; + } export interface Schema$GlobalSetPolicyRequest { /** * Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify bindings. @@ -705,6 +718,7 @@ export namespace deploymentmanager_v2beta { }>; } | null; firewallPolicyRuleOperationMetadata?: Schema$FirewallPolicyRuleOperationMetadata; + getVersionOperationMetadata?: Schema$GetVersionOperationMetadata; /** * [Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as `NOT FOUND`. */ @@ -1401,6 +1415,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -1744,6 +1759,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -2091,6 +2107,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -2281,6 +2298,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -2572,6 +2590,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -2748,6 +2767,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -3251,6 +3271,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -3604,6 +3625,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -3942,6 +3964,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -4297,6 +4320,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -5067,6 +5091,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -5805,6 +5830,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -6308,6 +6334,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -6818,6 +6845,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", @@ -7010,6 +7038,7 @@ export namespace deploymentmanager_v2beta { * // "endTime": "my_endTime", * // "error": {}, * // "firewallPolicyRuleOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, * // "id": "my_id", diff --git a/src/apis/developerconnect/v1.ts b/src/apis/developerconnect/v1.ts index 19b0e6e1789..d948ed0940a 100644 --- a/src/apis/developerconnect/v1.ts +++ b/src/apis/developerconnect/v1.ts @@ -136,6 +136,10 @@ export namespace developerconnect_v1 { * Output only. The timestamp when the accountConnector was created. */ createTime?: string | null; + /** + * Custom OAuth config. + */ + customOauthConfig?: Schema$CustomOAuthConfig; /** * Optional. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. */ @@ -156,6 +160,14 @@ export namespace developerconnect_v1 { * Optional. Provider OAuth config. */ providerOauthConfig?: Schema$ProviderOAuthConfig; + /** + * Optional. Configuration for the http and git proxy features. + */ + proxyConfig?: Schema$ProxyConfig; + /** + * Output only. A system-assigned unique identifier for the Account Connector. + */ + uid?: string | null; /** * Output only. The timestamp when the accountConnector was updated. */ @@ -378,7 +390,7 @@ export namespace developerconnect_v1 { */ gitlabEnterpriseConfig?: Schema$GitLabEnterpriseConfig; /** - * Optional. Configuration for the git proxy feature. Enabling the git proxy allows clients to perform git operations on the repositories linked in the connection. + * Optional. Configuration for the git proxy feature. Enabling the git proxy allows clients to perform git operations on the repositories linked in the connection. [Learn more](https://docs.cloud.google.com/developer-connect/docs/configure-git-proxy). */ gitProxyConfig?: Schema$GitProxyConfig; /** @@ -423,6 +435,55 @@ export namespace developerconnect_v1 { */ keyReference?: string | null; } + /** + * Message for a customized OAuth config. + */ + export interface Schema$CustomOAuthConfig { + /** + * Required. Immutable. The OAuth2 authorization server URL. + */ + authUri?: string | null; + /** + * Required. The client ID of the OAuth application. + */ + clientId?: string | null; + /** + * Required. Input only. The client secret of the OAuth application. It will be provided as plain text, but encrypted and stored in developer connect. As INPUT_ONLY field, it will not be included in the output. + */ + clientSecret?: string | null; + /** + * Required. The host URI of the OAuth application. + */ + hostUri?: string | null; + /** + * Optional. Disable PKCE for this OAuth config. PKCE is enabled by default. + */ + pkceDisabled?: boolean | null; + /** + * Required. The type of the SCM provider. + */ + scmProvider?: string | null; + /** + * Required. The scopes to be requested during OAuth. + */ + scopes?: string[] | null; + /** + * Output only. SCM server version installed at the host URI. + */ + serverVersion?: string | null; + /** + * Optional. Configuration for using Service Directory to connect to a private service. + */ + serviceDirectoryConfig?: Schema$ServiceDirectoryConfig; + /** + * Optional. SSL certificate to use for requests to a private service. + */ + sslCaCertificate?: string | null; + /** + * Required. Immutable. The OAuth2 token request URL. + */ + tokenUri?: string | null; + } /** * The DeploymentEvent resource represents the deployment of the artifact within the InsightsConfig resource. */ @@ -583,6 +644,19 @@ export namespace developerconnect_v1 { */ token?: string | null; } + /** + * Response message for FetchUserRepositories. + */ + export interface Schema$FetchUserRepositoriesResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * The repositories that the user can access with this account connector. + */ + userRepos?: Schema$UserRepository[]; + } /** * Message for responding to finishing an OAuth flow. */ @@ -1251,6 +1325,19 @@ export namespace developerconnect_v1 { */ systemProviderId?: string | null; } + /** + * The proxy configuration. + */ + export interface Schema$ProxyConfig { + /** + * Optional. Setting this to true allows the git and http proxies to perform actions on behalf of the user configured under the account connector. + */ + enabled?: boolean | null; + /** + * Output only. The base URI for the HTTP proxy endpoint. Has the format `https://{generatedID\}-a-h-{shortRegion\}.developerconnect.dev` Populated only when `enabled` is set to `true`. This endpoint is used by other Google services that integrate with Developer Connect. + */ + httpProxyBaseUri?: string | null; + } /** * RuntimeConfig represents the runtimes where the application is deployed. */ @@ -1382,6 +1469,23 @@ export namespace developerconnect_v1 { */ userTokenSecretVersion?: string | null; } + /** + * A user repository that can be linked to the account connector. Consists of the repo name and the git proxy URL to forward requests to this repo. + */ + export interface Schema$UserRepository { + /** + * Output only. The git clone URL of the repo. For example: https://github.com/myuser/myrepo.git + */ + cloneUri?: string | null; + /** + * Output only. The user friendly repo name (e.g., myuser/myrepo) + */ + displayName?: string | null; + /** + * Output only. The Git proxy URL for this repo. For example: https://us-west1-git.developerconnect.dev/a/my-proj/my-ac/myuser/myrepo.git. Populated only when `proxy_config.enabled` is set to `true` in the Account Connector. This URL is used by other Google services that integrate with Developer Connect. + */ + gitProxyUri?: string | null; + } export class Resource$Projects { context: APIRequestContext; @@ -1553,7 +1657,7 @@ export namespace developerconnect_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1583,7 +1687,7 @@ export namespace developerconnect_v1 { * * // Do the magic * const res = await developerconnect.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1710,7 +1814,7 @@ export namespace developerconnect_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -1788,11 +1892,14 @@ export namespace developerconnect_v1 { * // { * // "annotations": {}, * // "createTime": "my_createTime", + * // "customOauthConfig": {}, * // "etag": "my_etag", * // "labels": {}, * // "name": "my_name", * // "oauthStartUri": "my_oauthStartUri", * // "providerOauthConfig": {}, + * // "proxyConfig": {}, + * // "uid": "my_uid", * // "updateTime": "my_updateTime" * // } * }, @@ -2055,6 +2162,161 @@ export namespace developerconnect_v1 { } } + /** + * FetchUserRepositories returns a list of UserRepos that are available for an account connector resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/developerconnect.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const developerconnect = google.developerconnect('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await developerconnect.projects.locations.accountConnectors.fetchUserRepositories( + * { + * // Required. The name of the Account Connector resource in the format: `projects/x/locations/x/accountConnectors/x`. + * accountConnector: + * 'projects/my-project/locations/my-location/accountConnectors/my-accountConnector', + * // Optional. Number of results to return in the list. Defaults to 20. + * pageSize: 'placeholder-value', + * // Optional. Page start. + * pageToken: 'placeholder-value', + * // Optional. The name of the repository. When specified, only the UserRepository with this name will be returned if the repository is accessible under this Account Connector for the calling user. + * repository: 'placeholder-value', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "userRepos": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + fetchUserRepositories( + params: Params$Resource$Projects$Locations$Accountconnectors$Fetchuserrepositories, + options: StreamMethodOptions + ): Promise>; + fetchUserRepositories( + params?: Params$Resource$Projects$Locations$Accountconnectors$Fetchuserrepositories, + options?: MethodOptions + ): Promise>; + fetchUserRepositories( + params: Params$Resource$Projects$Locations$Accountconnectors$Fetchuserrepositories, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetchUserRepositories( + params: Params$Resource$Projects$Locations$Accountconnectors$Fetchuserrepositories, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetchUserRepositories( + params: Params$Resource$Projects$Locations$Accountconnectors$Fetchuserrepositories, + callback: BodyResponseCallback + ): void; + fetchUserRepositories( + callback: BodyResponseCallback + ): void; + fetchUserRepositories( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Accountconnectors$Fetchuserrepositories + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Accountconnectors$Fetchuserrepositories; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Accountconnectors$Fetchuserrepositories; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://developerconnect.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1/{+accountConnector}:fetchUserRepositories' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['accountConnector'], + pathParams: ['accountConnector'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Gets details of a single AccountConnector. * @example @@ -2095,11 +2357,14 @@ export namespace developerconnect_v1 { * // { * // "annotations": {}, * // "createTime": "my_createTime", + * // "customOauthConfig": {}, * // "etag": "my_etag", * // "labels": {}, * // "name": "my_name", * // "oauthStartUri": "my_oauthStartUri", * // "providerOauthConfig": {}, + * // "proxyConfig": {}, + * // "uid": "my_uid", * // "updateTime": "my_updateTime" * // } * } @@ -2401,11 +2666,14 @@ export namespace developerconnect_v1 { * // { * // "annotations": {}, * // "createTime": "my_createTime", + * // "customOauthConfig": {}, * // "etag": "my_etag", * // "labels": {}, * // "name": "my_name", * // "oauthStartUri": "my_oauthStartUri", * // "providerOauthConfig": {}, + * // "proxyConfig": {}, + * // "uid": "my_uid", * // "updateTime": "my_updateTime" * // } * }, @@ -2563,6 +2831,24 @@ export namespace developerconnect_v1 { */ validateOnly?: boolean; } + export interface Params$Resource$Projects$Locations$Accountconnectors$Fetchuserrepositories extends StandardParameters { + /** + * Required. The name of the Account Connector resource in the format: `projects/x/locations/x/accountConnectors/x`. + */ + accountConnector?: string; + /** + * Optional. Number of results to return in the list. Defaults to 20. + */ + pageSize?: number; + /** + * Optional. Page start. + */ + pageToken?: string; + /** + * Optional. The name of the repository. When specified, only the UserRepository with this name will be returned if the repository is accessible under this Account Connector for the calling user. + */ + repository?: string; + } export interface Params$Resource$Projects$Locations$Accountconnectors$Get extends StandardParameters { /** * Required. Name of the resource diff --git a/src/apis/developerknowledge/README.md b/src/apis/developerknowledge/README.md new file mode 100644 index 00000000000..0ca69b0b344 --- /dev/null +++ b/src/apis/developerknowledge/README.md @@ -0,0 +1,28 @@ +Google Inc. logo + +# developerknowledge + +> The Developer Knowledge API provides access to Google's developer knowledge. + +## Installation + +```sh +$ npm install @googleapis/developerknowledge +``` + +## 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/developerknowledge/classes/Developerknowledge.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/developerknowledge/index.ts b/src/apis/developerknowledge/index.ts new file mode 100644 index 00000000000..744d0dee8cf --- /dev/null +++ b/src/apis/developerknowledge/index.ts @@ -0,0 +1,64 @@ +// 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 {developerknowledge_v1} from './v1'; +import {developerknowledge_v1alpha} from './v1alpha'; + +export const VERSIONS = { + v1: developerknowledge_v1.Developerknowledge, + v1alpha: developerknowledge_v1alpha.Developerknowledge, +}; + +export function developerknowledge( + version: 'v1' +): developerknowledge_v1.Developerknowledge; +export function developerknowledge( + options: developerknowledge_v1.Options +): developerknowledge_v1.Developerknowledge; +export function developerknowledge( + version: 'v1alpha' +): developerknowledge_v1alpha.Developerknowledge; +export function developerknowledge( + options: developerknowledge_v1alpha.Options +): developerknowledge_v1alpha.Developerknowledge; +export function developerknowledge< + T = + | developerknowledge_v1.Developerknowledge + | developerknowledge_v1alpha.Developerknowledge, +>( + this: GoogleConfigurable, + versionOrOptions: + | 'v1' + | developerknowledge_v1.Options + | 'v1alpha' + | developerknowledge_v1alpha.Options +) { + return getAPI('developerknowledge', versionOrOptions, VERSIONS, this); +} + +const auth = new AuthPlus(); +export {auth}; +export {developerknowledge_v1}; +export {developerknowledge_v1alpha}; +export { + AuthPlus, + GlobalOptions, + APIRequestContext, + GoogleConfigurable, + StreamMethodOptions, + MethodOptions, + BodyResponseCallback, +} from 'googleapis-common'; diff --git a/src/apis/developerknowledge/package.json b/src/apis/developerknowledge/package.json new file mode 100644 index 00000000000..bca147e256b --- /dev/null +++ b/src/apis/developerknowledge/package.json @@ -0,0 +1,43 @@ +{ + "name": "@googleapis/developerknowledge", + "version": "0.1.0", + "description": "developerknowledge", + "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": "^8.0.0" + }, + "devDependencies": { + "@microsoft/api-documenter": "^7.8.10", + "@microsoft/api-extractor": "^7.8.10", + "gts": "^6.0.0", + "null-loader": "^4.0.0", + "ts-loader": "^9.0.0", + "typescript": "5.7.3", + "webpack": "^5.0.0", + "webpack-cli": "^5.0.0" + } +} diff --git a/src/apis/developerknowledge/tsconfig.json b/src/apis/developerknowledge/tsconfig.json new file mode 100644 index 00000000000..e0810904968 --- /dev/null +++ b/src/apis/developerknowledge/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "./node_modules/gts/tsconfig-google.json", + "compilerOptions": { + "rootDir": ".", + "outDir": "build" + }, + "include": [ + "*.ts", + ] +} diff --git a/src/apis/developerknowledge/v1.ts b/src/apis/developerknowledge/v1.ts new file mode 100644 index 00000000000..51fe8173f7d --- /dev/null +++ b/src/apis/developerknowledge/v1.ts @@ -0,0 +1,691 @@ +// 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, + GaxiosResponseWithHTTP2, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace developerknowledge_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; + } + + /** + * Developer Knowledge API + * + * The Developer Knowledge API provides access to Google's developer knowledge. + * + * @example + * ```js + * const {google} = require('googleapis'); + * const developerknowledge = google.developerknowledge('v1'); + * ``` + */ + export class Developerknowledge { + context: APIRequestContext; + documents: Resource$Documents; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + + this.documents = new Resource$Documents(this.context); + } + } + + /** + * Response message for DeveloperKnowledge.BatchGetDocuments. + */ + export interface Schema$BatchGetDocumentsResponse { + /** + * Contains the documents requested. + */ + documents?: Schema$Document[]; + } + /** + * A Document represents a piece of content from the Developer Knowledge corpus. + */ + export interface Schema$Document { + /** + * Output only. Contains the full content of the document in Markdown format. + */ + content?: string | null; + /** + * Output only. Specifies the data source of the document. Example data source: `firebase.google.com` + */ + dataSource?: string | null; + /** + * Output only. Provides a description of the document. + */ + description?: string | null; + /** + * Identifier. Contains the resource name of the document. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + */ + name?: string | null; + /** + * Output only. Provides the title of the document. + */ + title?: string | null; + /** + * Output only. Represents the timestamp when the content or metadata of the document was last updated. + */ + updateTime?: string | null; + /** + * Output only. Provides the URI of the content, such as `docs.cloud.google.com/storage/docs/creating-buckets`. + */ + uri?: string | null; + /** + * Output only. Specifies the DocumentView of the document. + */ + view?: string | null; + } + /** + * A DocumentChunk represents a piece of content from a Document in the DeveloperKnowledge corpus. To fetch the entire document content, pass the `parent` to DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments. + */ + export interface Schema$DocumentChunk { + /** + * Output only. Contains the content of the document chunk. + */ + content?: string | null; + /** + * Output only. Represents metadata about the Document this chunk is from. The DocumentView of this Document message will be set to `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients do not need to call DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments if they only need the metadata fields. Otherwise, clients should use DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments to fetch the full document content. + */ + document?: Schema$Document; + /** + * Output only. Specifies the ID of this chunk within the document. The chunk ID is unique within a document, but not globally unique across documents. The chunk ID is not stable and may change over time. + */ + id?: string | null; + /** + * Output only. Contains the resource name of the document this chunk is from. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + */ + parent?: string | null; + } + /** + * Response message for DeveloperKnowledge.SearchDocumentChunks. + */ + export interface Schema$SearchDocumentChunksResponse { + /** + * Optional. Provides a token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * Contains the search results for the given query. Each DocumentChunk in this list contains a snippet of content relevant to the search query. Use the DocumentChunk.parent field of each result with DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments to retrieve the full document content. + */ + results?: Schema$DocumentChunk[]; + } + + export class Resource$Documents { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves multiple documents, each with its full Markdown content. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/developerknowledge.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const developerknowledge = google.developerknowledge('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await developerknowledge.documents.batchGet({ + * // Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * names: 'placeholder-value', + * // Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.BatchGetDocuments defaults to `DOCUMENT_VIEW_CONTENT`. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "documents": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + batchGet( + params: Params$Resource$Documents$Batchget, + options: StreamMethodOptions + ): Promise>; + batchGet( + params?: Params$Resource$Documents$Batchget, + options?: MethodOptions + ): Promise>; + batchGet( + params: Params$Resource$Documents$Batchget, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + batchGet( + params: Params$Resource$Documents$Batchget, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + batchGet( + params: Params$Resource$Documents$Batchget, + callback: BodyResponseCallback + ): void; + batchGet( + callback: BodyResponseCallback + ): void; + batchGet( + paramsOrCallback?: + | Params$Resource$Documents$Batchget + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Documents$Batchget; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Documents$Batchget; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://developerknowledge.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/documents:batchGet').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a single document with its full Markdown content. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/developerknowledge.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const developerknowledge = google.developerknowledge('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await developerknowledge.documents.get({ + * // Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * name: 'documents/.*', + * // Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.GetDocument defaults to `DOCUMENT_VIEW_CONTENT`. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "content": "my_content", + * // "dataSource": "my_dataSource", + * // "description": "my_description", + * // "name": "my_name", + * // "title": "my_title", + * // "updateTime": "my_updateTime", + * // "uri": "my_uri", + * // "view": "my_view" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Documents$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Documents$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Documents$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Documents$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Documents$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Documents$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Documents$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Documents$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://developerknowledge.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Searches for developer knowledge across Google's developer documentation. Returns DocumentChunks based on the user's query. There may be many chunks from the same Document. To retrieve full documents, use DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments with the DocumentChunk.parent returned in the SearchDocumentChunksResponse.results. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/developerknowledge.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const developerknowledge = google.developerknowledge('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await developerknowledge.documents.searchDocumentChunks({ + * // Optional. Applies a strict filter to the search results. The expression supports a subset of the syntax described at https://google.aip.dev/160. While `SearchDocumentChunks` returns DocumentChunks, the filter is applied to `DocumentChunk.document` fields. Supported fields for filtering: * `data_source` (STRING): The source of the document, e.g. `docs.cloud.google.com`. See https://developers.google.com/knowledge/reference/corpus-reference for the complete list of data sources in the corpus. * `update_time` (TIMESTAMP): The timestamp of when the document was last meaningfully updated. A meaningful update is one that changes document's markdown content or metadata. * `uri` (STRING): The document URI, e.g. `https://docs.cloud.google.com/bigquery/docs/tables`. STRING fields support `=` (equals) and `!=` (not equals) operators for **exact match** on the whole string. Partial match, prefix match, and regexp match are not supported. TIMESTAMP fields support `=`, `<`, `<=`, `\>`, and `\>=` operators. Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`. You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical operators. `OR` has higher precedence than `AND`. Use parentheses for explicit precedence grouping. Examples: * `data_source = "docs.cloud.google.com" OR data_source = "firebase.google.com"` * `data_source != "firebase.google.com"` * `update_time < "2024-01-01T00:00:00Z"` * `update_time \>= "2025-01-22T00:00:00Z" AND (data_source = "developer.chrome.com" OR data_source = "web.dev")` * `uri = "https://docs.cloud.google.com/release-notes"` The `filter` string must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. + * filter: 'placeholder-value', + * // Optional. Specifies the maximum number of results to return. The service may return fewer than this value. If unspecified, at most 5 results will be returned. The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT error. + * pageSize: 'placeholder-value', + * // Optional. Contains a page token, received from a previous `SearchDocumentChunks` call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?". + * query: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "results": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + searchDocumentChunks( + params: Params$Resource$Documents$Searchdocumentchunks, + options: StreamMethodOptions + ): Promise>; + searchDocumentChunks( + params?: Params$Resource$Documents$Searchdocumentchunks, + options?: MethodOptions + ): Promise>; + searchDocumentChunks( + params: Params$Resource$Documents$Searchdocumentchunks, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + searchDocumentChunks( + params: Params$Resource$Documents$Searchdocumentchunks, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + searchDocumentChunks( + params: Params$Resource$Documents$Searchdocumentchunks, + callback: BodyResponseCallback + ): void; + searchDocumentChunks( + callback: BodyResponseCallback + ): void; + searchDocumentChunks( + paramsOrCallback?: + | Params$Resource$Documents$Searchdocumentchunks + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Documents$Searchdocumentchunks; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Documents$Searchdocumentchunks; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://developerknowledge.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/documents:searchDocumentChunks').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Documents$Batchget extends StandardParameters { + /** + * Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + */ + names?: string[]; + /** + * Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.BatchGetDocuments defaults to `DOCUMENT_VIEW_CONTENT`. + */ + view?: string; + } + export interface Params$Resource$Documents$Get extends StandardParameters { + /** + * Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + */ + name?: string; + /** + * Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.GetDocument defaults to `DOCUMENT_VIEW_CONTENT`. + */ + view?: string; + } + export interface Params$Resource$Documents$Searchdocumentchunks extends StandardParameters { + /** + * Optional. Applies a strict filter to the search results. The expression supports a subset of the syntax described at https://google.aip.dev/160. While `SearchDocumentChunks` returns DocumentChunks, the filter is applied to `DocumentChunk.document` fields. Supported fields for filtering: * `data_source` (STRING): The source of the document, e.g. `docs.cloud.google.com`. See https://developers.google.com/knowledge/reference/corpus-reference for the complete list of data sources in the corpus. * `update_time` (TIMESTAMP): The timestamp of when the document was last meaningfully updated. A meaningful update is one that changes document's markdown content or metadata. * `uri` (STRING): The document URI, e.g. `https://docs.cloud.google.com/bigquery/docs/tables`. STRING fields support `=` (equals) and `!=` (not equals) operators for **exact match** on the whole string. Partial match, prefix match, and regexp match are not supported. TIMESTAMP fields support `=`, `<`, `<=`, `\>`, and `\>=` operators. Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`. You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical operators. `OR` has higher precedence than `AND`. Use parentheses for explicit precedence grouping. Examples: * `data_source = "docs.cloud.google.com" OR data_source = "firebase.google.com"` * `data_source != "firebase.google.com"` * `update_time < "2024-01-01T00:00:00Z"` * `update_time \>= "2025-01-22T00:00:00Z" AND (data_source = "developer.chrome.com" OR data_source = "web.dev")` * `uri = "https://docs.cloud.google.com/release-notes"` The `filter` string must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. + */ + filter?: string; + /** + * Optional. Specifies the maximum number of results to return. The service may return fewer than this value. If unspecified, at most 5 results will be returned. The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT error. + */ + pageSize?: number; + /** + * Optional. Contains a page token, received from a previous `SearchDocumentChunks` call. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?". + */ + query?: string; + } +} diff --git a/src/apis/developerknowledge/v1alpha.ts b/src/apis/developerknowledge/v1alpha.ts new file mode 100644 index 00000000000..b9bc9c0be7b --- /dev/null +++ b/src/apis/developerknowledge/v1alpha.ts @@ -0,0 +1,879 @@ +// 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, + GaxiosResponseWithHTTP2, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace developerknowledge_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; + } + + /** + * Developer Knowledge API + * + * The Developer Knowledge API provides access to Google's developer knowledge. + * + * @example + * ```js + * const {google} = require('googleapis'); + * const developerknowledge = google.developerknowledge('v1alpha'); + * ``` + */ + export class Developerknowledge { + context: APIRequestContext; + documents: Resource$Documents; + v1alpha: Resource$V1alpha; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + + this.documents = new Resource$Documents(this.context); + this.v1alpha = new Resource$V1alpha(this.context); + } + } + + /** + * An answer to a query. + */ + export interface Schema$Answer { + /** + * The text of the answer. + */ + answerText?: string | null; + } + /** + * Request message for DeveloperKnowledge.AnswerQuery. + */ + export interface Schema$AnswerQueryRequest { + /** + * Required. The query to answer. + */ + query?: string | null; + } + /** + * Response message for DeveloperKnowledge.AnswerQuery. + */ + export interface Schema$AnswerQueryResponse { + /** + * The answer to the query. + */ + answer?: Schema$Answer; + } + /** + * Response message for DeveloperKnowledge.BatchGetDocuments. + */ + export interface Schema$BatchGetDocumentsResponse { + /** + * Contains the documents requested. + */ + documents?: Schema$Document[]; + } + /** + * A Document represents a piece of content from the Developer Knowledge corpus. + */ + export interface Schema$Document { + /** + * Output only. Contains the full content of the document in Markdown format. + */ + content?: string | null; + /** + * Output only. Specifies the data source of the document. Example data source: `firebase.google.com` + */ + dataSource?: string | null; + /** + * Output only. Provides a description of the document. + */ + description?: string | null; + /** + * Identifier. Contains the resource name of the document. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + */ + name?: string | null; + /** + * Output only. Provides the title of the document. + */ + title?: string | null; + /** + * Output only. Represents the timestamp when the content or metadata of the document was last updated. + */ + updateTime?: string | null; + /** + * Output only. Provides the URI of the content, such as `docs.cloud.google.com/storage/docs/creating-buckets`. + */ + uri?: string | null; + /** + * Output only. Specifies the DocumentView of the document. + */ + view?: string | null; + } + /** + * A DocumentChunk represents a piece of content from a Document in the DeveloperKnowledge corpus. To fetch the entire document content, pass the `parent` to DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments. + */ + export interface Schema$DocumentChunk { + /** + * Output only. Contains the content of the document chunk. + */ + content?: string | null; + /** + * Output only. Represents metadata about the Document this chunk is from. The DocumentView of this Document message will be set to `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients do not need to call DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments if they only need the metadata fields. Otherwise, clients should use DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments to fetch the full document content. + */ + document?: Schema$Document; + /** + * Output only. Specifies the ID of this chunk within the document. The chunk ID is unique within a document, but not globally unique across documents. The chunk ID is not stable and may change over time. + */ + id?: string | null; + /** + * Output only. Contains the resource name of the document this chunk is from. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + */ + parent?: string | null; + } + /** + * Response message for DeveloperKnowledge.SearchDocumentChunks. + */ + export interface Schema$SearchDocumentChunksResponse { + /** + * Optional. Provides a token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * Contains the search results for the given query. Each DocumentChunk in this list contains a snippet of content relevant to the search query. Use the DocumentChunk.parent field of each result with DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments to retrieve the full document content. + */ + results?: Schema$DocumentChunk[]; + } + + export class Resource$Documents { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves multiple documents, each with its full Markdown content. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/developerknowledge.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const developerknowledge = google.developerknowledge('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await developerknowledge.documents.batchGet({ + * // Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * names: 'placeholder-value', + * // Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.BatchGetDocuments defaults to `DOCUMENT_VIEW_CONTENT`. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "documents": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + batchGet( + params: Params$Resource$Documents$Batchget, + options: StreamMethodOptions + ): Promise>; + batchGet( + params?: Params$Resource$Documents$Batchget, + options?: MethodOptions + ): Promise>; + batchGet( + params: Params$Resource$Documents$Batchget, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + batchGet( + params: Params$Resource$Documents$Batchget, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + batchGet( + params: Params$Resource$Documents$Batchget, + callback: BodyResponseCallback + ): void; + batchGet( + callback: BodyResponseCallback + ): void; + batchGet( + paramsOrCallback?: + | Params$Resource$Documents$Batchget + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Documents$Batchget; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Documents$Batchget; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://developerknowledge.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/documents:batchGet').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a single document with its full Markdown content. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/developerknowledge.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const developerknowledge = google.developerknowledge('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await developerknowledge.documents.get({ + * // Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * name: 'documents/.*', + * // Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.GetDocument defaults to `DOCUMENT_VIEW_CONTENT`. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "content": "my_content", + * // "dataSource": "my_dataSource", + * // "description": "my_description", + * // "name": "my_name", + * // "title": "my_title", + * // "updateTime": "my_updateTime", + * // "uri": "my_uri", + * // "view": "my_view" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Documents$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Documents$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Documents$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Documents$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Documents$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Documents$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Documents$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Documents$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://developerknowledge.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Searches for developer knowledge across Google's developer documentation. Returns DocumentChunks based on the user's query. There may be many chunks from the same Document. To retrieve full documents, use DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments with the DocumentChunk.parent returned in the SearchDocumentChunksResponse.results. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/developerknowledge.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const developerknowledge = google.developerknowledge('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await developerknowledge.documents.searchDocumentChunks({ + * // Optional. Applies a strict filter to the search results. The expression supports a subset of the syntax described at https://google.aip.dev/160. While `SearchDocumentChunks` returns DocumentChunks, the filter is applied to `DocumentChunk.document` fields. Supported fields for filtering: * `data_source` (STRING): The source of the document, e.g. `docs.cloud.google.com`. See https://developers.google.com/knowledge/reference/corpus-reference for the complete list of data sources in the corpus. * `update_time` (TIMESTAMP): The timestamp of when the document was last meaningfully updated. A meaningful update is one that changes document's markdown content or metadata. * `uri` (STRING): The document URI, e.g. `https://docs.cloud.google.com/bigquery/docs/tables`. STRING fields support `=` (equals) and `!=` (not equals) operators for **exact match** on the whole string. Partial match, prefix match, and regexp match are not supported. TIMESTAMP fields support `=`, `<`, `<=`, `\>`, and `\>=` operators. Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`. You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical operators. `OR` has higher precedence than `AND`. Use parentheses for explicit precedence grouping. Examples: * `data_source = "docs.cloud.google.com" OR data_source = "firebase.google.com"` * `data_source != "firebase.google.com"` * `update_time < "2024-01-01T00:00:00Z"` * `update_time \>= "2025-01-22T00:00:00Z" AND (data_source = "developer.chrome.com" OR data_source = "web.dev")` * `uri = "https://docs.cloud.google.com/release-notes"` The `filter` string must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. + * filter: 'placeholder-value', + * // Optional. Specifies the maximum number of results to return. The service may return fewer than this value. If unspecified, at most 5 results will be returned. The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT error. + * pageSize: 'placeholder-value', + * // Optional. Contains a page token, received from a previous `SearchDocumentChunks` call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?". + * query: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "results": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + searchDocumentChunks( + params: Params$Resource$Documents$Searchdocumentchunks, + options: StreamMethodOptions + ): Promise>; + searchDocumentChunks( + params?: Params$Resource$Documents$Searchdocumentchunks, + options?: MethodOptions + ): Promise>; + searchDocumentChunks( + params: Params$Resource$Documents$Searchdocumentchunks, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + searchDocumentChunks( + params: Params$Resource$Documents$Searchdocumentchunks, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + searchDocumentChunks( + params: Params$Resource$Documents$Searchdocumentchunks, + callback: BodyResponseCallback + ): void; + searchDocumentChunks( + callback: BodyResponseCallback + ): void; + searchDocumentChunks( + paramsOrCallback?: + | Params$Resource$Documents$Searchdocumentchunks + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Documents$Searchdocumentchunks; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Documents$Searchdocumentchunks; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://developerknowledge.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/documents:searchDocumentChunks').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Documents$Batchget extends StandardParameters { + /** + * Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + */ + names?: string[]; + /** + * Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.BatchGetDocuments defaults to `DOCUMENT_VIEW_CONTENT`. + */ + view?: string; + } + export interface Params$Resource$Documents$Get extends StandardParameters { + /** + * Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + */ + name?: string; + /** + * Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.GetDocument defaults to `DOCUMENT_VIEW_CONTENT`. + */ + view?: string; + } + export interface Params$Resource$Documents$Searchdocumentchunks extends StandardParameters { + /** + * Optional. Applies a strict filter to the search results. The expression supports a subset of the syntax described at https://google.aip.dev/160. While `SearchDocumentChunks` returns DocumentChunks, the filter is applied to `DocumentChunk.document` fields. Supported fields for filtering: * `data_source` (STRING): The source of the document, e.g. `docs.cloud.google.com`. See https://developers.google.com/knowledge/reference/corpus-reference for the complete list of data sources in the corpus. * `update_time` (TIMESTAMP): The timestamp of when the document was last meaningfully updated. A meaningful update is one that changes document's markdown content or metadata. * `uri` (STRING): The document URI, e.g. `https://docs.cloud.google.com/bigquery/docs/tables`. STRING fields support `=` (equals) and `!=` (not equals) operators for **exact match** on the whole string. Partial match, prefix match, and regexp match are not supported. TIMESTAMP fields support `=`, `<`, `<=`, `\>`, and `\>=` operators. Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`. You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical operators. `OR` has higher precedence than `AND`. Use parentheses for explicit precedence grouping. Examples: * `data_source = "docs.cloud.google.com" OR data_source = "firebase.google.com"` * `data_source != "firebase.google.com"` * `update_time < "2024-01-01T00:00:00Z"` * `update_time \>= "2025-01-22T00:00:00Z" AND (data_source = "developer.chrome.com" OR data_source = "web.dev")` * `uri = "https://docs.cloud.google.com/release-notes"` The `filter` string must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. + */ + filter?: string; + /** + * Optional. Specifies the maximum number of results to return. The service may return fewer than this value. If unspecified, at most 5 results will be returned. The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT error. + */ + pageSize?: number; + /** + * Optional. Contains a page token, received from a previous `SearchDocumentChunks` call. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?". + */ + query?: string; + } + + export class Resource$V1alpha { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Answers a query using grounded generation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/developerknowledge.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const developerknowledge = google.developerknowledge('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await developerknowledge.answerQuery({ + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "query": "my_query" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "answer": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + answerQuery( + params: Params$Resource$V1alpha$Answerquery, + options: StreamMethodOptions + ): Promise>; + answerQuery( + params?: Params$Resource$V1alpha$Answerquery, + options?: MethodOptions + ): Promise>; + answerQuery( + params: Params$Resource$V1alpha$Answerquery, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + answerQuery( + params: Params$Resource$V1alpha$Answerquery, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + answerQuery( + params: Params$Resource$V1alpha$Answerquery, + callback: BodyResponseCallback + ): void; + answerQuery( + callback: BodyResponseCallback + ): void; + answerQuery( + paramsOrCallback?: + | Params$Resource$V1alpha$Answerquery + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$V1alpha$Answerquery; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$V1alpha$Answerquery; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://developerknowledge.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha:answerQuery').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$V1alpha$Answerquery extends StandardParameters { + /** + * Request body metadata + */ + requestBody?: Schema$AnswerQueryRequest; + } +} diff --git a/src/apis/developerknowledge/webpack.config.js b/src/apis/developerknowledge/webpack.config.js new file mode 100644 index 00000000000..8168a1c8dda --- /dev/null +++ b/src/apis/developerknowledge/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: 'Developerknowledge', + filename: 'developerknowledge.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: [], +}; diff --git a/src/apis/dfareporting/v5.ts b/src/apis/dfareporting/v5.ts index 49b049ffb65..363ba5bd7f0 100644 --- a/src/apis/dfareporting/v5.ts +++ b/src/apis/dfareporting/v5.ts @@ -33336,6 +33336,12 @@ export namespace dfareporting_v5 { * profileId: '[^/]+', * // Tag formats to generate for these placements. *Note:* PLACEMENT_TAG_STANDARD can only be generated for 1x1 placements. * tagFormats: 'placeholder-value', + * // Optional. Indicates whether to include the dc_dbm macro in the generated tags. [Learn more](https://support.google.com/campaignmanager/answer/9280273) about this macro. + * 'tagProperties.dcDbmMacroIncluded': 'placeholder-value', + * // Optional. Indicates whether to include the GPP macro in the generated tags. [Learn more](https://support.google.com/campaignmanager/answer/10031693) about this macro. + * 'tagProperties.gppMacrosIncluded': 'placeholder-value', + * // Optional. Indicates whether to include the TCF macro in the generated tags. Default true. [Learn more](https://support.google.com/campaignmanager/answer/10031693) about this macro. + * 'tagProperties.tcfGdprMacrosIncluded': 'placeholder-value', * }); * console.log(res.data); * @@ -34548,6 +34554,18 @@ export namespace dfareporting_v5 { * Tag formats to generate for these placements. *Note:* PLACEMENT_TAG_STANDARD can only be generated for 1x1 placements. */ tagFormats?: string[]; + /** + * Optional. Indicates whether to include the dc_dbm macro in the generated tags. [Learn more](https://support.google.com/campaignmanager/answer/9280273) about this macro. + */ + 'tagProperties.dcDbmMacroIncluded'?: boolean; + /** + * Optional. Indicates whether to include the GPP macro in the generated tags. [Learn more](https://support.google.com/campaignmanager/answer/10031693) about this macro. + */ + 'tagProperties.gppMacrosIncluded'?: boolean; + /** + * Optional. Indicates whether to include the TCF macro in the generated tags. Default true. [Learn more](https://support.google.com/campaignmanager/answer/10031693) about this macro. + */ + 'tagProperties.tcfGdprMacrosIncluded'?: boolean; } export interface Params$Resource$Placements$Get extends StandardParameters { /** diff --git a/src/apis/dialogflow/v2.ts b/src/apis/dialogflow/v2.ts index b1297262ab2..763a4fe1091 100644 --- a/src/apis/dialogflow/v2.ts +++ b/src/apis/dialogflow/v2.ts @@ -397,6 +397,7 @@ export namespace dialogflow_v2 { export interface Schema$GoogleCloudDialogflowCxV3beta1Intent { description?: string | null; displayName?: string | null; + dtmfPattern?: string | null; isFallback?: boolean | null; labels?: {[key: string]: string} | null; name?: string | null; @@ -895,6 +896,7 @@ export namespace dialogflow_v2 { export interface Schema$GoogleCloudDialogflowCxV3Intent { description?: string | null; displayName?: string | null; + dtmfPattern?: string | null; isFallback?: boolean | null; labels?: {[key: string]: string} | null; name?: string | null; @@ -1835,8 +1837,14 @@ export namespace dialogflow_v2 { } export interface Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer { answerText?: string | null; + eventSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource; faqSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource; generativeSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + playbookSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + } + export interface Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource { + event?: string | null; + snippets?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; } export interface Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource { question?: string | null; @@ -2050,6 +2058,9 @@ export namespace dialogflow_v2 { export interface Schema$GoogleCloudDialogflowV2beta1ToolCall { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; createTime?: string | null; inputParameters?: {[key: string]: any} | null; state?: string | null; @@ -2060,6 +2071,9 @@ export namespace dialogflow_v2 { export interface Schema$GoogleCloudDialogflowV2beta1ToolCallResult { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; content?: string | null; createTime?: string | null; error?: Schema$GoogleCloudDialogflowV2beta1ToolCallResultError; @@ -2087,6 +2101,14 @@ export namespace dialogflow_v2 { sessionEntityTypes?: Schema$GoogleCloudDialogflowV2beta1SessionEntityType[]; source?: string | null; } + export interface Schema$GoogleCloudDialogflowV2CesAppSpec { + cesApp?: string | null; + confirmationRequirement?: string | null; + } + export interface Schema$GoogleCloudDialogflowV2CesToolSpec { + cesTool?: string | null; + confirmationRequirement?: string | null; + } export interface Schema$GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata { conversationProfile?: string | null; createTime?: string | null; @@ -2120,6 +2142,10 @@ export namespace dialogflow_v2 { ingestedContextReferences?: { [key: string]: Schema$GoogleCloudDialogflowV2ConversationContextReference; } | null; + initialConversationProfile?: Schema$GoogleCloudDialogflowV2ConversationProfile; + initialGeneratorContexts?: { + [key: string]: Schema$GoogleCloudDialogflowV2ConversationGeneratorContext; + } | null; lifecycleState?: string | null; name?: string | null; phoneNumber?: Schema$GoogleCloudDialogflowV2ConversationPhoneNumber; @@ -2159,6 +2185,9 @@ export namespace dialogflow_v2 { newRecognitionResultPayload?: Schema$GoogleCloudDialogflowV2StreamingRecognitionResult; type?: string | null; } + export interface Schema$GoogleCloudDialogflowV2ConversationGeneratorContext { + generatorType?: string | null; + } export interface Schema$GoogleCloudDialogflowV2ConversationInfo { languageCode?: string | null; } @@ -2456,6 +2485,8 @@ export namespace dialogflow_v2 { } export interface Schema$GoogleCloudDialogflowV2Generator { agentCoachingContext?: Schema$GoogleCloudDialogflowV2AgentCoachingContext; + cesAppSpecs?: Schema$GoogleCloudDialogflowV2CesAppSpec[]; + cesToolSpecs?: Schema$GoogleCloudDialogflowV2CesToolSpec[]; createTime?: string | null; description?: string | null; freeFormContext?: Schema$GoogleCloudDialogflowV2FreeFormContext; @@ -2465,6 +2496,7 @@ export namespace dialogflow_v2 { suggestionDedupingConfig?: Schema$GoogleCloudDialogflowV2SuggestionDedupingConfig; summarizationContext?: Schema$GoogleCloudDialogflowV2SummarizationContext; tools?: string[] | null; + toolsetTools?: Schema$GoogleCloudDialogflowV2ToolsetTool[]; triggerEvent?: string | null; updateTime?: string | null; } @@ -2897,8 +2929,14 @@ export namespace dialogflow_v2 { } export interface Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer { answerText?: string | null; + eventSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource; faqSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource; generativeSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + playbookSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + } + export interface Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource { + event?: string | null; + snippets?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; } export interface Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource { question?: string | null; @@ -3529,6 +3567,9 @@ export namespace dialogflow_v2 { export interface Schema$GoogleCloudDialogflowV2ToolCall { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; createTime?: string | null; inputParameters?: {[key: string]: any} | null; state?: string | null; @@ -3539,6 +3580,9 @@ export namespace dialogflow_v2 { export interface Schema$GoogleCloudDialogflowV2ToolCallResult { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; content?: string | null; createTime?: string | null; error?: Schema$GoogleCloudDialogflowV2ToolCallResultError; @@ -3579,6 +3623,11 @@ export namespace dialogflow_v2 { export interface Schema$GoogleCloudDialogflowV2ToolServiceDirectoryConfig { service?: string | null; } + export interface Schema$GoogleCloudDialogflowV2ToolsetTool { + confirmationRequirement?: string | null; + operationId?: string | null; + toolset?: string | null; + } export interface Schema$GoogleCloudDialogflowV2ToolTLSConfig { caCerts?: Schema$GoogleCloudDialogflowV2ToolTLSConfigCACert[]; } @@ -19779,6 +19828,8 @@ export namespace dialogflow_v2 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -19937,6 +19988,8 @@ export namespace dialogflow_v2 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -19953,6 +20006,8 @@ export namespace dialogflow_v2 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -20109,6 +20164,8 @@ export namespace dialogflow_v2 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -22774,6 +22831,8 @@ export namespace dialogflow_v2 { * // request body parameters * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -22783,6 +22842,7 @@ export namespace dialogflow_v2 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -22793,6 +22853,8 @@ export namespace dialogflow_v2 { * // Example response * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -22802,6 +22864,7 @@ export namespace dialogflow_v2 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -40611,6 +40674,8 @@ export namespace dialogflow_v2 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -40770,6 +40835,8 @@ export namespace dialogflow_v2 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -40786,6 +40853,8 @@ export namespace dialogflow_v2 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -40942,6 +41011,8 @@ export namespace dialogflow_v2 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -43972,6 +44043,8 @@ export namespace dialogflow_v2 { * // request body parameters * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -43981,6 +44054,7 @@ export namespace dialogflow_v2 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -43991,6 +44065,8 @@ export namespace dialogflow_v2 { * // Example response * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -44000,6 +44076,7 @@ export namespace dialogflow_v2 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -44283,6 +44360,8 @@ export namespace dialogflow_v2 { * // Example response * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -44292,6 +44371,7 @@ export namespace dialogflow_v2 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -44594,6 +44674,8 @@ export namespace dialogflow_v2 { * // request body parameters * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -44603,6 +44685,7 @@ export namespace dialogflow_v2 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -44613,6 +44696,8 @@ export namespace dialogflow_v2 { * // Example response * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -44622,6 +44707,7 @@ export namespace dialogflow_v2 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } diff --git a/src/apis/dialogflow/v2beta1.ts b/src/apis/dialogflow/v2beta1.ts index 95b9997550b..6a39bf01e0d 100644 --- a/src/apis/dialogflow/v2beta1.ts +++ b/src/apis/dialogflow/v2beta1.ts @@ -397,6 +397,7 @@ export namespace dialogflow_v2beta1 { export interface Schema$GoogleCloudDialogflowCxV3beta1Intent { description?: string | null; displayName?: string | null; + dtmfPattern?: string | null; isFallback?: boolean | null; labels?: {[key: string]: string} | null; name?: string | null; @@ -895,6 +896,7 @@ export namespace dialogflow_v2beta1 { export interface Schema$GoogleCloudDialogflowCxV3Intent { description?: string | null; displayName?: string | null; + dtmfPattern?: string | null; isFallback?: boolean | null; labels?: {[key: string]: string} | null; name?: string | null; @@ -1475,6 +1477,14 @@ export namespace dialogflow_v2beta1 { export interface Schema$GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse { intents?: Schema$GoogleCloudDialogflowV2beta1Intent[]; } + export interface Schema$GoogleCloudDialogflowV2beta1CesAppSpec { + cesApp?: string | null; + confirmationRequirement?: string | null; + } + export interface Schema$GoogleCloudDialogflowV2beta1CesToolSpec { + cesTool?: string | null; + confirmationRequirement?: string | null; + } export interface Schema$GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata { conversationProfile?: string | null; createTime?: string | null; @@ -1519,6 +1529,12 @@ export namespace dialogflow_v2beta1 { key: string ]: Schema$GoogleCloudDialogflowV2beta1ConversationContextReference; } | null; + initialConversationProfile?: Schema$GoogleCloudDialogflowV2beta1ConversationProfile; + initialGeneratorContexts?: { + [ + key: string + ]: Schema$GoogleCloudDialogflowV2beta1ConversationGeneratorContext; + } | null; lifecycleState?: string | null; name?: string | null; phoneNumber?: Schema$GoogleCloudDialogflowV2beta1ConversationPhoneNumber; @@ -1547,6 +1563,9 @@ export namespace dialogflow_v2beta1 { newRecognitionResultPayload?: Schema$GoogleCloudDialogflowV2beta1StreamingRecognitionResult; type?: string | null; } + export interface Schema$GoogleCloudDialogflowV2beta1ConversationGeneratorContext { + generatorType?: string | null; + } export interface Schema$GoogleCloudDialogflowV2beta1ConversationPhoneNumber { countryCode?: number | null; phoneNumber?: string | null; @@ -1785,6 +1804,8 @@ export namespace dialogflow_v2beta1 { } export interface Schema$GoogleCloudDialogflowV2beta1Generator { agentCoachingContext?: Schema$GoogleCloudDialogflowV2beta1AgentCoachingContext; + cesAppSpecs?: Schema$GoogleCloudDialogflowV2beta1CesAppSpec[]; + cesToolSpecs?: Schema$GoogleCloudDialogflowV2beta1CesToolSpec[]; createTime?: string | null; description?: string | null; freeFormContext?: Schema$GoogleCloudDialogflowV2beta1FreeFormContext; @@ -1794,6 +1815,7 @@ export namespace dialogflow_v2beta1 { suggestionDedupingConfig?: Schema$GoogleCloudDialogflowV2beta1SuggestionDedupingConfig; summarizationContext?: Schema$GoogleCloudDialogflowV2beta1SummarizationContext; tools?: string[] | null; + toolsetTools?: Schema$GoogleCloudDialogflowV2beta1ToolsetTool[]; triggerEvent?: string | null; updateTime?: string | null; } @@ -2291,8 +2313,14 @@ export namespace dialogflow_v2beta1 { } export interface Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer { answerText?: string | null; + eventSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource; faqSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource; generativeSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + playbookSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + } + export interface Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource { + event?: string | null; + snippets?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; } export interface Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource { question?: string | null; @@ -2474,10 +2502,16 @@ export namespace dialogflow_v2beta1 { role?: string | null; } export interface Schema$GoogleCloudDialogflowV2beta1PhoneNumber { + allowedSipTrunks?: Schema$GoogleCloudDialogflowV2beta1PhoneNumberAllowedSipTrunks; conversationProfile?: string | null; lifecycleState?: string | null; name?: string | null; phoneNumber?: string | null; + purgeTime?: string | null; + } + export interface Schema$GoogleCloudDialogflowV2beta1PhoneNumberAllowedSipTrunks { + carrierIds?: string[] | null; + sipTrunks?: string[] | null; } export interface Schema$GoogleCloudDialogflowV2beta1QueryInput { audioConfig?: Schema$GoogleCloudDialogflowV2beta1InputAudioConfig; @@ -2983,6 +3017,9 @@ export namespace dialogflow_v2beta1 { export interface Schema$GoogleCloudDialogflowV2beta1ToolCall { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; createTime?: string | null; inputParameters?: {[key: string]: any} | null; state?: string | null; @@ -2993,6 +3030,9 @@ export namespace dialogflow_v2beta1 { export interface Schema$GoogleCloudDialogflowV2beta1ToolCallResult { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; content?: string | null; createTime?: string | null; error?: Schema$GoogleCloudDialogflowV2beta1ToolCallResultError; @@ -3033,6 +3073,11 @@ export namespace dialogflow_v2beta1 { export interface Schema$GoogleCloudDialogflowV2beta1ToolServiceDirectoryConfig { service?: string | null; } + export interface Schema$GoogleCloudDialogflowV2beta1ToolsetTool { + confirmationRequirement?: string | null; + operationId?: string | null; + toolset?: string | null; + } export interface Schema$GoogleCloudDialogflowV2beta1ToolTLSConfig { caCerts?: Schema$GoogleCloudDialogflowV2beta1ToolTLSConfigCACert[]; } @@ -3426,8 +3471,14 @@ export namespace dialogflow_v2beta1 { } export interface Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer { answerText?: string | null; + eventSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource; faqSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource; generativeSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + playbookSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + } + export interface Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource { + event?: string | null; + snippets?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; } export interface Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource { question?: string | null; @@ -3603,6 +3654,9 @@ export namespace dialogflow_v2beta1 { export interface Schema$GoogleCloudDialogflowV2ToolCall { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; createTime?: string | null; inputParameters?: {[key: string]: any} | null; state?: string | null; @@ -3613,6 +3667,9 @@ export namespace dialogflow_v2beta1 { export interface Schema$GoogleCloudDialogflowV2ToolCallResult { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; content?: string | null; createTime?: string | null; error?: Schema$GoogleCloudDialogflowV2ToolCallResultError; @@ -18203,6 +18260,8 @@ export namespace dialogflow_v2beta1 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -18361,6 +18420,8 @@ export namespace dialogflow_v2beta1 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -18377,6 +18438,8 @@ export namespace dialogflow_v2beta1 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -18533,6 +18596,8 @@ export namespace dialogflow_v2beta1 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -21712,6 +21777,8 @@ export namespace dialogflow_v2beta1 { * // request body parameters * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -21721,6 +21788,7 @@ export namespace dialogflow_v2beta1 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -21731,6 +21799,8 @@ export namespace dialogflow_v2beta1 { * // Example response * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -21740,6 +21810,7 @@ export namespace dialogflow_v2beta1 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -37292,6 +37363,8 @@ export namespace dialogflow_v2beta1 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -37451,6 +37524,8 @@ export namespace dialogflow_v2beta1 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -37467,6 +37542,8 @@ export namespace dialogflow_v2beta1 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -37623,6 +37700,8 @@ export namespace dialogflow_v2beta1 { * // "conversationStage": "my_conversationStage", * // "endTime": "my_endTime", * // "ingestedContextReferences": {}, + * // "initialConversationProfile": {}, + * // "initialGeneratorContexts": {}, * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", * // "phoneNumber": {}, @@ -40820,6 +40899,8 @@ export namespace dialogflow_v2beta1 { * // request body parameters * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -40829,6 +40910,7 @@ export namespace dialogflow_v2beta1 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -40839,6 +40921,8 @@ export namespace dialogflow_v2beta1 { * // Example response * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -40848,6 +40932,7 @@ export namespace dialogflow_v2beta1 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -41131,6 +41216,8 @@ export namespace dialogflow_v2beta1 { * // Example response * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -41140,6 +41227,7 @@ export namespace dialogflow_v2beta1 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -41442,6 +41530,8 @@ export namespace dialogflow_v2beta1 { * // request body parameters * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -41451,6 +41541,7 @@ export namespace dialogflow_v2beta1 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -41461,6 +41552,8 @@ export namespace dialogflow_v2beta1 { * // Example response * // { * // "agentCoachingContext": {}, + * // "cesAppSpecs": [], + * // "cesToolSpecs": [], * // "createTime": "my_createTime", * // "description": "my_description", * // "freeFormContext": {}, @@ -41470,6 +41563,7 @@ export namespace dialogflow_v2beta1 { * // "suggestionDedupingConfig": {}, * // "summarizationContext": {}, * // "tools": [], + * // "toolsetTools": [], * // "triggerEvent": "my_triggerEvent", * // "updateTime": "my_updateTime" * // } @@ -44844,10 +44938,12 @@ export namespace dialogflow_v2beta1 { * * // Example response * // { + * // "allowedSipTrunks": {}, * // "conversationProfile": "my_conversationProfile", * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", - * // "phoneNumber": "my_phoneNumber" + * // "phoneNumber": "my_phoneNumber", + * // "purgeTime": "my_purgeTime" * // } * } * @@ -45149,10 +45245,12 @@ export namespace dialogflow_v2beta1 { * requestBody: { * // request body parameters * // { + * // "allowedSipTrunks": {}, * // "conversationProfile": "my_conversationProfile", * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", - * // "phoneNumber": "my_phoneNumber" + * // "phoneNumber": "my_phoneNumber", + * // "purgeTime": "my_purgeTime" * // } * }, * }); @@ -45160,10 +45258,12 @@ export namespace dialogflow_v2beta1 { * * // Example response * // { + * // "allowedSipTrunks": {}, * // "conversationProfile": "my_conversationProfile", * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", - * // "phoneNumber": "my_phoneNumber" + * // "phoneNumber": "my_phoneNumber", + * // "purgeTime": "my_purgeTime" * // } * } * @@ -45314,10 +45414,12 @@ export namespace dialogflow_v2beta1 { * * // Example response * // { + * // "allowedSipTrunks": {}, * // "conversationProfile": "my_conversationProfile", * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", - * // "phoneNumber": "my_phoneNumber" + * // "phoneNumber": "my_phoneNumber", + * // "purgeTime": "my_purgeTime" * // } * } * @@ -48227,10 +48329,12 @@ export namespace dialogflow_v2beta1 { * * // Example response * // { + * // "allowedSipTrunks": {}, * // "conversationProfile": "my_conversationProfile", * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", - * // "phoneNumber": "my_phoneNumber" + * // "phoneNumber": "my_phoneNumber", + * // "purgeTime": "my_purgeTime" * // } * } * @@ -48532,10 +48636,12 @@ export namespace dialogflow_v2beta1 { * requestBody: { * // request body parameters * // { + * // "allowedSipTrunks": {}, * // "conversationProfile": "my_conversationProfile", * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", - * // "phoneNumber": "my_phoneNumber" + * // "phoneNumber": "my_phoneNumber", + * // "purgeTime": "my_purgeTime" * // } * }, * }); @@ -48543,10 +48649,12 @@ export namespace dialogflow_v2beta1 { * * // Example response * // { + * // "allowedSipTrunks": {}, * // "conversationProfile": "my_conversationProfile", * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", - * // "phoneNumber": "my_phoneNumber" + * // "phoneNumber": "my_phoneNumber", + * // "purgeTime": "my_purgeTime" * // } * } * @@ -48697,10 +48805,12 @@ export namespace dialogflow_v2beta1 { * * // Example response * // { + * // "allowedSipTrunks": {}, * // "conversationProfile": "my_conversationProfile", * // "lifecycleState": "my_lifecycleState", * // "name": "my_name", - * // "phoneNumber": "my_phoneNumber" + * // "phoneNumber": "my_phoneNumber", + * // "purgeTime": "my_purgeTime" * // } * } * diff --git a/src/apis/dialogflow/v3.ts b/src/apis/dialogflow/v3.ts index db12d099707..f29cc3ee1bb 100644 --- a/src/apis/dialogflow/v3.ts +++ b/src/apis/dialogflow/v3.ts @@ -479,6 +479,7 @@ export namespace dialogflow_v3 { export interface Schema$GoogleCloudDialogflowCxV3beta1Intent { description?: string | null; displayName?: string | null; + dtmfPattern?: string | null; isFallback?: boolean | null; labels?: {[key: string]: string} | null; name?: string | null; @@ -1146,6 +1147,10 @@ export namespace dialogflow_v3 { enableMultiLanguageDetection?: boolean | null; supportedResponseLanguageCodes?: string[] | null; } + export interface Schema$GoogleCloudDialogflowCxV3FlowTraceMetadata { + displayName?: string | null; + flow?: string | null; + } export interface Schema$GoogleCloudDialogflowCxV3FlowTransition { displayName?: string | null; flow?: string | null; @@ -1351,6 +1356,7 @@ export namespace dialogflow_v3 { export interface Schema$GoogleCloudDialogflowCxV3Intent { description?: string | null; displayName?: string | null; + dtmfPattern?: string | null; isFallback?: boolean | null; labels?: {[key: string]: string} | null; name?: string | null; @@ -1611,6 +1617,10 @@ export namespace dialogflow_v3 { steps?: Schema$GoogleCloudDialogflowCxV3PlaybookStep[]; text?: string | null; } + export interface Schema$GoogleCloudDialogflowCxV3PlaybookTraceMetadata { + displayName?: string | null; + playbook?: string | null; + } export interface Schema$GoogleCloudDialogflowCxV3PlaybookTransition { displayName?: string | null; playbook?: string | null; @@ -1667,6 +1677,7 @@ export namespace dialogflow_v3 { responseMessages?: Schema$GoogleCloudDialogflowCxV3ResponseMessage[]; sentimentAnalysisResult?: Schema$GoogleCloudDialogflowCxV3SentimentAnalysisResult; text?: string | null; + traceBlocks?: Schema$GoogleCloudDialogflowCxV3TraceBlock[]; transcript?: string | null; triggerEvent?: string | null; triggerIntent?: string | null; @@ -1831,6 +1842,9 @@ export namespace dialogflow_v3 { parameters?: {[key: string]: any} | null; session?: string | null; } + export interface Schema$GoogleCloudDialogflowCxV3SpeechProcessingMetadata { + displayName?: string | null; + } export interface Schema$GoogleCloudDialogflowCxV3SpeechToTextSettings { enableSpeechAdaptation?: boolean | null; } @@ -1984,6 +1998,17 @@ export namespace dialogflow_v3 { tool?: Schema$GoogleCloudDialogflowCxV3Tool; updateTime?: string | null; } + export interface Schema$GoogleCloudDialogflowCxV3TraceBlock { + actions?: Schema$GoogleCloudDialogflowCxV3Action[]; + completeTime?: string | null; + endState?: string | null; + flowTraceMetadata?: Schema$GoogleCloudDialogflowCxV3FlowTraceMetadata; + inputParameters?: {[key: string]: any} | null; + outputParameters?: {[key: string]: any} | null; + playbookTraceMetadata?: Schema$GoogleCloudDialogflowCxV3PlaybookTraceMetadata; + speechProcessingMetadata?: Schema$GoogleCloudDialogflowCxV3SpeechProcessingMetadata; + startTime?: string | null; + } export interface Schema$GoogleCloudDialogflowCxV3TrainFlowRequest {} export interface Schema$GoogleCloudDialogflowCxV3TransitionCoverage { coverageScore?: number | null; @@ -2691,8 +2716,14 @@ export namespace dialogflow_v3 { } export interface Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer { answerText?: string | null; + eventSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource; faqSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource; generativeSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + playbookSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + } + export interface Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource { + event?: string | null; + snippets?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; } export interface Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource { question?: string | null; @@ -2906,6 +2937,9 @@ export namespace dialogflow_v3 { export interface Schema$GoogleCloudDialogflowV2beta1ToolCall { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; createTime?: string | null; inputParameters?: {[key: string]: any} | null; state?: string | null; @@ -2916,6 +2950,9 @@ export namespace dialogflow_v3 { export interface Schema$GoogleCloudDialogflowV2beta1ToolCallResult { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; content?: string | null; createTime?: string | null; error?: Schema$GoogleCloudDialogflowV2beta1ToolCallResultError; @@ -3290,8 +3327,14 @@ export namespace dialogflow_v3 { } export interface Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer { answerText?: string | null; + eventSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource; faqSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource; generativeSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + playbookSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + } + export interface Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource { + event?: string | null; + snippets?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; } export interface Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource { question?: string | null; @@ -3467,6 +3510,9 @@ export namespace dialogflow_v3 { export interface Schema$GoogleCloudDialogflowV2ToolCall { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; createTime?: string | null; inputParameters?: {[key: string]: any} | null; state?: string | null; @@ -3477,6 +3523,9 @@ export namespace dialogflow_v3 { export interface Schema$GoogleCloudDialogflowV2ToolCallResult { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; content?: string | null; createTime?: string | null; error?: Schema$GoogleCloudDialogflowV2ToolCallResultError; @@ -17605,6 +17654,7 @@ export namespace dialogflow_v3 { * // { * // "description": "my_description", * // "displayName": "my_displayName", + * // "dtmfPattern": "my_dtmfPattern", * // "isFallback": false, * // "labels": {}, * // "name": "my_name", @@ -17620,6 +17670,7 @@ export namespace dialogflow_v3 { * // { * // "description": "my_description", * // "displayName": "my_displayName", + * // "dtmfPattern": "my_dtmfPattern", * // "isFallback": false, * // "labels": {}, * // "name": "my_name", @@ -18063,6 +18114,7 @@ export namespace dialogflow_v3 { * // { * // "description": "my_description", * // "displayName": "my_displayName", + * // "dtmfPattern": "my_dtmfPattern", * // "isFallback": false, * // "labels": {}, * // "name": "my_name", @@ -18528,6 +18580,7 @@ export namespace dialogflow_v3 { * // { * // "description": "my_description", * // "displayName": "my_displayName", + * // "dtmfPattern": "my_dtmfPattern", * // "isFallback": false, * // "labels": {}, * // "name": "my_name", @@ -18543,6 +18596,7 @@ export namespace dialogflow_v3 { * // { * // "description": "my_description", * // "displayName": "my_displayName", + * // "dtmfPattern": "my_dtmfPattern", * // "isFallback": false, * // "labels": {}, * // "name": "my_name", diff --git a/src/apis/dialogflow/v3beta1.ts b/src/apis/dialogflow/v3beta1.ts index 253e116e3cc..3897cd3d1a0 100644 --- a/src/apis/dialogflow/v3beta1.ts +++ b/src/apis/dialogflow/v3beta1.ts @@ -775,6 +775,10 @@ export namespace dialogflow_v3beta1 { enableMultiLanguageDetection?: boolean | null; supportedResponseLanguageCodes?: string[] | null; } + export interface Schema$GoogleCloudDialogflowCxV3beta1FlowTraceMetadata { + displayName?: string | null; + flow?: string | null; + } export interface Schema$GoogleCloudDialogflowCxV3beta1FlowTransition { displayName?: string | null; flow?: string | null; @@ -985,6 +989,7 @@ export namespace dialogflow_v3beta1 { export interface Schema$GoogleCloudDialogflowCxV3beta1Intent { description?: string | null; displayName?: string | null; + dtmfPattern?: string | null; isFallback?: boolean | null; labels?: {[key: string]: string} | null; name?: string | null; @@ -1282,6 +1287,10 @@ export namespace dialogflow_v3beta1 { steps?: Schema$GoogleCloudDialogflowCxV3beta1PlaybookStep[]; text?: string | null; } + export interface Schema$GoogleCloudDialogflowCxV3beta1PlaybookTraceMetadata { + displayName?: string | null; + playbook?: string | null; + } export interface Schema$GoogleCloudDialogflowCxV3beta1PlaybookTransition { displayName?: string | null; inputActionParameters?: {[key: string]: any} | null; @@ -1340,6 +1349,7 @@ export namespace dialogflow_v3beta1 { responseMessages?: Schema$GoogleCloudDialogflowCxV3beta1ResponseMessage[]; sentimentAnalysisResult?: Schema$GoogleCloudDialogflowCxV3beta1SentimentAnalysisResult; text?: string | null; + traceBlocks?: Schema$GoogleCloudDialogflowCxV3beta1TraceBlock[]; transcript?: string | null; triggerEvent?: string | null; triggerIntent?: string | null; @@ -1514,6 +1524,9 @@ export namespace dialogflow_v3beta1 { startTime?: string | null; tags?: string[] | null; } + export interface Schema$GoogleCloudDialogflowCxV3beta1SpeechProcessingMetadata { + displayName?: string | null; + } export interface Schema$GoogleCloudDialogflowCxV3beta1SpeechToTextSettings { enableSpeechAdaptation?: boolean | null; } @@ -1713,6 +1726,17 @@ export namespace dialogflow_v3beta1 { tool?: Schema$GoogleCloudDialogflowCxV3beta1Tool; updateTime?: string | null; } + export interface Schema$GoogleCloudDialogflowCxV3beta1TraceBlock { + actions?: Schema$GoogleCloudDialogflowCxV3beta1Action[]; + completeTime?: string | null; + endState?: string | null; + flowTraceMetadata?: Schema$GoogleCloudDialogflowCxV3beta1FlowTraceMetadata; + inputParameters?: {[key: string]: any} | null; + outputParameters?: {[key: string]: any} | null; + playbookTraceMetadata?: Schema$GoogleCloudDialogflowCxV3beta1PlaybookTraceMetadata; + speechProcessingMetadata?: Schema$GoogleCloudDialogflowCxV3beta1SpeechProcessingMetadata; + startTime?: string | null; + } export interface Schema$GoogleCloudDialogflowCxV3beta1TrainFlowRequest {} export interface Schema$GoogleCloudDialogflowCxV3beta1TransitionCoverage { coverageScore?: number | null; @@ -2111,6 +2135,7 @@ export namespace dialogflow_v3beta1 { export interface Schema$GoogleCloudDialogflowCxV3Intent { description?: string | null; displayName?: string | null; + dtmfPattern?: string | null; isFallback?: boolean | null; labels?: {[key: string]: string} | null; name?: string | null; @@ -2921,8 +2946,14 @@ export namespace dialogflow_v3beta1 { } export interface Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswer { answerText?: string | null; + eventSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource; faqSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource; generativeSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + playbookSource?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + } + export interface Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerEventSource { + event?: string | null; + snippets?: Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; } export interface Schema$GoogleCloudDialogflowV2beta1KnowledgeAssistAnswerKnowledgeAnswerFaqSource { question?: string | null; @@ -3136,6 +3167,9 @@ export namespace dialogflow_v3beta1 { export interface Schema$GoogleCloudDialogflowV2beta1ToolCall { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; createTime?: string | null; inputParameters?: {[key: string]: any} | null; state?: string | null; @@ -3146,6 +3180,9 @@ export namespace dialogflow_v3beta1 { export interface Schema$GoogleCloudDialogflowV2beta1ToolCallResult { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; content?: string | null; createTime?: string | null; error?: Schema$GoogleCloudDialogflowV2beta1ToolCallResultError; @@ -3520,8 +3557,14 @@ export namespace dialogflow_v3beta1 { } export interface Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswer { answerText?: string | null; + eventSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource; faqSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource; generativeSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + playbookSource?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; + } + export interface Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerEventSource { + event?: string | null; + snippets?: Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerGenerativeSource; } export interface Schema$GoogleCloudDialogflowV2KnowledgeAssistAnswerKnowledgeAnswerFaqSource { question?: string | null; @@ -3697,6 +3740,9 @@ export namespace dialogflow_v3beta1 { export interface Schema$GoogleCloudDialogflowV2ToolCall { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; createTime?: string | null; inputParameters?: {[key: string]: any} | null; state?: string | null; @@ -3707,6 +3753,9 @@ export namespace dialogflow_v3beta1 { export interface Schema$GoogleCloudDialogflowV2ToolCallResult { action?: string | null; answerRecord?: string | null; + cesApp?: string | null; + cesTool?: string | null; + cesToolset?: string | null; content?: string | null; createTime?: string | null; error?: Schema$GoogleCloudDialogflowV2ToolCallResultError; @@ -18383,6 +18432,7 @@ export namespace dialogflow_v3beta1 { * // { * // "description": "my_description", * // "displayName": "my_displayName", + * // "dtmfPattern": "my_dtmfPattern", * // "isFallback": false, * // "labels": {}, * // "name": "my_name", @@ -18398,6 +18448,7 @@ export namespace dialogflow_v3beta1 { * // { * // "description": "my_description", * // "displayName": "my_displayName", + * // "dtmfPattern": "my_dtmfPattern", * // "isFallback": false, * // "labels": {}, * // "name": "my_name", @@ -18845,6 +18896,7 @@ export namespace dialogflow_v3beta1 { * // { * // "description": "my_description", * // "displayName": "my_displayName", + * // "dtmfPattern": "my_dtmfPattern", * // "isFallback": false, * // "labels": {}, * // "name": "my_name", @@ -19314,6 +19366,7 @@ export namespace dialogflow_v3beta1 { * // { * // "description": "my_description", * // "displayName": "my_displayName", + * // "dtmfPattern": "my_dtmfPattern", * // "isFallback": false, * // "labels": {}, * // "name": "my_name", @@ -19329,6 +19382,7 @@ export namespace dialogflow_v3beta1 { * // { * // "description": "my_description", * // "displayName": "my_displayName", + * // "dtmfPattern": "my_dtmfPattern", * // "isFallback": false, * // "labels": {}, * // "name": "my_name", diff --git a/src/apis/discoveryengine/v1.ts b/src/apis/discoveryengine/v1.ts index 8353bb9b269..2312c8611f0 100644 --- a/src/apis/discoveryengine/v1.ts +++ b/src/apis/discoveryengine/v1.ts @@ -112,6 +112,7 @@ export namespace discoveryengine_v1 { */ export class Discoveryengine { context: APIRequestContext; + billingAccounts: Resource$Billingaccounts; projects: Resource$Projects; constructor(options: GlobalOptions, google?: GoogleConfigurable) { @@ -120,6 +121,7 @@ export namespace discoveryengine_v1 { google, }; + this.billingAccounts = new Resource$Billingaccounts(this.context); this.projects = new Resource$Projects(this.context); } } @@ -1096,6 +1098,10 @@ export namespace discoveryengine_v1 { * Optional. Action parameters in structured json format. */ actionParams?: {[key: string]: any} | null; + /** + * Optional. Whether to create a BAP connection for the connector. + */ + createBapConnection?: boolean | null; /** * Output only. The connector contains the necessary parameters and is configured to support actions. */ @@ -1108,11 +1114,26 @@ export namespace discoveryengine_v1 { * Optional. The Service Directory resource name (projects/x/locations/x/namespaces/x/services/x) representing a VPC network endpoint used to connect to the data source's `instance_uri`, defined in DataConnector.params. Required when VPC Service Controls are enabled. */ serviceName?: string | null; + /** + * Optional. Mapping from operation name to the list of scopes. Only be populated if there are user specified scopes. + */ + userDefinedScopesMapping?: { + [key: string]: Schema$GoogleCloudDiscoveryengineV1ActionConfigScopeList; + } | null; /** * Optional. Whether to use static secrets for the connector. If true, the secrets provided in the action_params will be ignored. */ useStaticSecrets?: boolean | null; } + /** + * Stores a list of scopes. + */ + export interface Schema$GoogleCloudDiscoveryengineV1ActionConfigScopeList { + /** + * Optional. The list of scopes. + */ + scopes?: string[] | null; + } /** * Request message for CompletionService.AdvancedCompleteQuery method. . */ @@ -1331,6 +1352,24 @@ export namespace discoveryengine_v1 { */ disableInitialIndex?: boolean | null; } + /** + * Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1AgentGatewaySetting { + /** + * Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE. + */ + defaultEgressAgentGateway?: Schema$GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference; + } + /** + * Reference to an Agent Gateway resource. + */ + export interface Schema$GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference { + /** + * Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number\}/locations/{location\}/agentGateways/{agent_gateway\}`. + */ + name?: string | null; + } /** * The connector level alert config. */ @@ -1407,6 +1446,10 @@ export namespace discoveryengine_v1 { * Optional. Action parameters in structured json format. */ actionParams?: {[key: string]: any} | null; + /** + * Optional. Whether to create a BAP connection for the connector. + */ + createBapConnection?: boolean | null; /** * Output only. The connector contains the necessary parameters and is configured to support actions. */ @@ -1419,11 +1462,28 @@ export namespace discoveryengine_v1 { * Optional. The Service Directory resource name (projects/x/locations/x/namespaces/x/services/x) representing a VPC network endpoint used to connect to the data source's `instance_uri`, defined in DataConnector.params. Required when VPC Service Controls are enabled. */ serviceName?: string | null; + /** + * Optional. Mapping from operation name to the list of scopes. Only be populated if there are user specified scopes. + */ + userDefinedScopesMapping?: { + [ + key: string + ]: Schema$GoogleCloudDiscoveryengineV1alphaActionConfigScopeList; + } | null; /** * Optional. Whether to use static secrets for the connector. If true, the secrets provided in the action_params will be ignored. */ useStaticSecrets?: boolean | null; } + /** + * Stores a list of scopes. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaActionConfigScopeList { + /** + * Optional. The list of scopes. + */ + scopes?: string[] | null; + } /** * Request for DataStoreService.AddPatientFilter method. */ @@ -1450,6 +1510,24 @@ export namespace discoveryengine_v1 { */ disableInitialIndex?: boolean | null; } + /** + * Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting { + /** + * Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE. + */ + defaultEgressAgentGateway?: Schema$GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference; + } + /** + * Reference to an Agent Gateway resource. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference { + /** + * Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number\}/locations/{location\}/agentGateways/{agent_gateway\}`. + */ + name?: string | null; + } /** * The connector level alert config. */ @@ -1531,7 +1609,7 @@ export namespace discoveryengine_v1 { */ answerText?: string | null; /** - * List of blob attachments in the answer. + * Output only. List of blob attachments in the answer. */ blobAttachments?: Schema$GoogleCloudDiscoveryengineV1alphaAnswerBlobAttachment[]; /** @@ -2001,6 +2079,10 @@ export namespace discoveryengine_v1 { * One part of the multi-part response of the assist call. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaAssistAnswerReply { + /** + * The time when the reply was created. + */ + createTime?: string | null; /** * Possibly grounded response text or media from the assistant. */ @@ -2120,11 +2202,19 @@ export namespace discoveryengine_v1 { * Grounding information for parts of the text. */ segments?: Schema$GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataSegment[]; + /** + * Grounding information for parts of the visual content. + */ + visualSegments?: Schema$GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment[]; } /** * Referenced content and related document metadata. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataReference { + /** + * Chunk of code snippet from the referenced document. + */ + codeSnippet?: string | null; /** * Referenced text content. */ @@ -2146,6 +2236,7 @@ export namespace discoveryengine_v1 { * Domain name from the document URI. Note that the `uri` field may contain a URL that redirects to the actual website, in which case this will contain the domain name of the target site. */ domain?: string | null; + language?: string | null; /** * The mime type of the document. https://www.iana.org/assignments/media-types/media-types.xhtml. */ @@ -2188,6 +2279,19 @@ export namespace discoveryengine_v1 { */ text?: string | null; } + /** + * Grounding information for a visual segment. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment { + /** + * The content id of the visual segment. In order to display the citation of the visual element, this content_id needs to match with the `grounded_content.content_metadata.content_id` field. + */ + contentId?: string | null; + /** + * References for the visual segment. + */ + referenceIndices?: number[] | null; + } /** * The configuration for the BAP connector. */ @@ -2295,6 +2399,15 @@ export namespace discoveryengine_v1 { */ citations?: Schema$GoogleCloudDiscoveryengineV1alphaCitation[]; } + /** + * The configuration for the CLI execution based connectors. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaCliConfig { + /** + * Optional. The actions enabled on the associated CLI connection. + */ + enabledActions?: string[] | null; + } /** * Configurations used to enable CMEK data encryption with Cloud KMS keys. */ @@ -2791,6 +2904,10 @@ export namespace discoveryengine_v1 { * Output only. User actions that must be completed before the connector can start syncing data. */ blockingReasons?: string[] | null; + /** + * Optional. The configuration for establishing a CLI connection. + */ + cliConfig?: Schema$GoogleCloudDiscoveryengineV1alphaCliConfig; /** * Optional. The modes enabled for this connector. Default state is CONNECTOR_MODE_UNSPECIFIED. */ @@ -2812,7 +2929,7 @@ export namespace discoveryengine_v1 { */ dataProtectionPolicy?: Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy; /** - * Required. The name of the data source. Supported values: `salesforce`, `jira`, `confluence`, `bigquery`. + * Required. The identifier for the data source. This is a partial list of supported connectors. Please refer to the [documentation](https://docs.cloud.google.com/gemini/enterprise/docs/connectors/introduction-to-connectors-and-data-stores) for the full list of connectors. Supported first-party connectors include: * `gcs` * `bigquery` * `gcp_fhir` * `google_mail` * `google_drive` * `google_calendar` * `google_chat` Supported third-party connectors include: Generally available (GA) connectors: * `onedrive` * `outlook` * `confluence` * `jira` * `servicenow` * `sharepoint` Preview connectors: * `asana` * `azure_active_directory` * `box` * `canva` * `confluence_server` * `custom_connector` * `docusign` * `dropbox` * `dynamics365` * `github` * `gitlab` * `hubspot` * `jira_server` * `linear` * `native_cloud_identity` * `notion` * `okta` * `pagerduty` * `peoplesoft` * `salesforce` * `shopify` * `slack` * `snowflake` * `teams` * `trello` * `workday` * `zendesk` */ dataSource?: string | null; /** @@ -2820,7 +2937,11 @@ export namespace discoveryengine_v1 { */ destinationConfigs?: Schema$GoogleCloudDiscoveryengineV1alphaDestinationConfig[]; /** - * Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. Note: This field is derived from both the DataConnector.params, and connector source spec. It should only be used for CAIS and Org Policy evaluation purposes. + * Output only. The dynamic tools fetched for this connector. + */ + dynamicTools?: Schema$GoogleCloudDiscoveryengineV1alphaDynamicTool[]; + /** + * Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. */ egressFqdns?: string[] | null; /** @@ -2876,7 +2997,7 @@ export namespace discoveryengine_v1 { */ latestPauseTime?: string | null; /** - * Output only. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. + * Identifier. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. */ name?: string | null; /** @@ -2928,7 +3049,7 @@ export namespace discoveryengine_v1 { */ updateTime?: string | null; /** - * Output only. Whether the connector is created with VPC-SC enabled. This is only used for CuOP evaluation purpose. + * Output only. Whether the connector is created with VPC-SC enabled. */ vpcscEnabled?: boolean | null; } @@ -3034,11 +3155,11 @@ export namespace discoveryengine_v1 { startingSchema?: Schema$GoogleCloudDiscoveryengineV1alphaSchema; } /** - * Data protection policy config for a connector. + * Contains the data protection policy config for a DataStore or a connector. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy { /** - * Optional. The sensitive data protection policy for the connector source. + * Optional. Specifies the sensitive data protection policy for the connector source. */ sensitiveDataProtectionPolicy?: Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicySensitiveDataProtectionPolicy; } @@ -3047,7 +3168,7 @@ export namespace discoveryengine_v1 { */ export interface Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicySensitiveDataProtectionPolicy { /** - * Optional. The Sensitive Data Protection content policy resource name. + * Optional. Specifies the resource name of the Sensitive Data Protection content policy. */ policy?: string | null; } @@ -3087,6 +3208,10 @@ export namespace discoveryengine_v1 { * Output only. Timestamp the DataStore was created at. */ createTime?: string | null; + /** + * Optional. Specifies the data protection policy for the data store. + */ + dataProtectionPolicy?: Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy; /** * Output only. The id of the default Schema associated to this data store. */ @@ -3099,6 +3224,10 @@ export namespace discoveryengine_v1 { * Configuration for Document understanding and enrichment. */ documentProcessingConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDocumentProcessingConfig; + /** + * Optional. If set, this DataStore is a federated search DataStore. + */ + federatedSearchConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig; /** * Optional. Configuration for `HEALTHCARE_FHIR` vertical. */ @@ -3181,6 +3310,100 @@ export namespace discoveryengine_v1 { */ websiteDataUpdateTime?: string | null; } + /** + * Stores information for federated search. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig { + /** + * AlloyDB config. If set, this DataStore is connected to AlloyDB. + */ + alloyDbConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig; + /** + * NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise. + */ + notebooklmConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig; + /** + * Third Party OAuth config. If set, this DataStore is connected to a third party application. + */ + thirdPartyOauthConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig; + } + /** + * Stores information for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig { + /** + * Optional. Configuration for Magic. + */ + alloydbAiNlConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig; + /** + * Required. Configuration for connecting to AlloyDB. + */ + alloydbConnectionConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig; + /** + * Optional. Fields to be returned in the search results. If empty, all fields will be returned. + */ + returnedFields?: string[] | null; + } + /** + * Configuration for AlloyDB AI Natural Language. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig { + /** + * Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty. + */ + nlConfigId?: string | null; + } + /** + * Configuration for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig { + /** + * Optional. Auth mode. + */ + authMode?: string | null; + /** + * Required. The AlloyDB database to connect to. + */ + database?: string | null; + /** + * Optional. If true, enable PSVS for AlloyDB. + */ + enablePsvs?: boolean | null; + /** + * Required. The AlloyDB instance to connect to. + */ + instance?: string | null; + /** + * Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user. + */ + password?: string | null; + /** + * Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user. + */ + user?: string | null; + } + /** + * Config for connecting to NotebookLM Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig { + /** + * Required. Search config name. Format: projects/x/locations/global/notebookLmSearchConfigs/x + */ + searchConfig?: string | null; + } + /** + * Stores information for third party applicationOAuth. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig { + /** + * Optional. The type of the application. E.g., "jira", "box", etc. + */ + appName?: string | null; + /** + * Optional. The instance name identifying the 3P app, e.g., "vaissptbots-my". This is different from the instance_uri which is the full URL of the 3P app e.g., "https://vaissptbots-my.sharepoint.com". + */ + instanceName?: string | null; + } /** * Stores information regarding the serving configurations at DataStore level. */ @@ -3528,6 +3751,27 @@ export namespace discoveryengine_v1 { */ useNativeText?: boolean | null; } + /** + * Configuration for dynamic tools. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDynamicTool { + /** + * Optional. The description of the tool. + */ + description?: string | null; + /** + * Optional. The display name of the tool. + */ + displayName?: string | null; + /** + * Optional. Whether the tool is enabled. + */ + enabled?: boolean | null; + /** + * Required. The name of the tool. + */ + name?: string | null; + } /** * Metadata related to the progress of the SiteSearchEngineService.EnableAdvancedSiteSearch operation. This will be returned by the google.longrunning.Operation.metadata field. */ @@ -3549,6 +3793,10 @@ export namespace discoveryengine_v1 { * Metadata that describes the training and serving parameters of an Engine. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaEngine { + /** + * Optional. The agent gateway setting for the engine. + */ + agentGatewaySetting?: Schema$GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting; /** * Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type. */ @@ -3594,7 +3842,7 @@ export namespace discoveryengine_v1 { */ displayName?: string | null; /** - * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` + * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills` */ features?: {[key: string]: string} | null; /** @@ -3626,9 +3874,9 @@ export namespace discoveryengine_v1 { */ observabilityConfig?: Schema$GoogleCloudDiscoveryengineV1alphaObservabilityConfig; /** - * Optional. The email of the procurement contact. + * Optional. The emails of the procurement contacts. */ - procurementContactEmail?: string | null; + procurementContactEmails?: string[] | null; /** * Output only. Additional information of a recommendation engine. Only applicable if solution_type is SOLUTION_TYPE_RECOMMENDATION. */ @@ -4013,6 +4261,10 @@ export namespace discoveryengine_v1 { * Field paths for indexing custom attribute from schema.org data. More details of schema.org and its defined types can be found at [schema.org](https://schema.org). It is only used on advanced site search schema. Currently only support full path from root. The full path to a field is constructed by concatenating field names, starting from `_root`, with a period `.` as the delimiter. Examples: * Publish date of the root: _root.datePublished * Publish date of the reviews: _root.review.datePublished */ schemaOrgPaths?: string[] | null; + /** + * Optional. Specifies the importance of the field when `searchable_option` is `SEARCHABLE_ENABLED`. If `searchable_option` is `SEARCHABLE_DISABLED`, this field is ignored. If `searchable_option` is `SEARCHABLE_ENABLED` and this is `SEARCHABLE_FIELD_IMPORTANCE_UNSPECIFIED`, it behaves as `DEFAULT_IMPORTANCE`. + */ + searchableFieldImportance?: string | null; /** * If searchable_option is SEARCHABLE_ENABLED, field values are searchable by text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is numerical, field values will not be searchable by text queries in SearchService.Search, as there are no text values associated to numerical fields. If searchable_option is unset, the server behavior defaults to SEARCHABLE_DISABLED for fields that support setting searchable options. Only `string` fields that have no key property mapping support setting searchable_option. For those fields that do not support setting searchable options, the server will skip searchable option setting, and setting searchable_option for those fields will throw `INVALID_ARGUMENT` error. */ @@ -4284,7 +4536,7 @@ export namespace discoveryengine_v1 { */ successCount?: string | null; /** - * Operation last update time. If the operation is done, this is also the finish time. + * Output only. Operation last update time. If the operation is done, this is also the finish time. */ updateTime?: string | null; } @@ -4460,11 +4712,11 @@ export namespace discoveryengine_v1 { */ export interface Schema$GoogleCloudDiscoveryengineV1alphaObservabilityConfig { /** - * Optional. Enables observability. If false, all other flags are ignored. + * Optional. Enables observability. If `false`, all other flags are ignored. */ observabilityEnabled?: boolean | null; /** - * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields. + * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields. */ sensitiveLoggingEnabled?: boolean | null; } @@ -4557,7 +4809,7 @@ export namespace discoveryengine_v1 { } | null; } /** - * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). + * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus { /** @@ -4584,6 +4836,10 @@ export namespace discoveryengine_v1 { * Output only. The latest terminate effective time of search qpm and indexing core subscriptions. */ terminateTime?: string | null; + /** + * Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject. + */ + updateType?: string | null; } /** * Customer provided configurations. @@ -5229,6 +5485,10 @@ export namespace discoveryengine_v1 { * Custom fine tuning configs. If set, it has higher priority than the configs set in ServingConfig.custom_fine_tuning_spec. */ customFineTuningSpec?: Schema$GoogleCloudDiscoveryengineV1alphaCustomFineTuningSpec; + /** + * Optional. Optional configuration for the Custom Ranking feature. + */ + customRankingParams?: Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams; /** * Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used. */ @@ -5241,6 +5501,10 @@ export namespace discoveryengine_v1 { * Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.EmbeddingSpec.EmbeddingVector.vector and the document embedding that is provided in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path. If SearchRequest.EmbeddingSpec.EmbeddingVector.field_path is not provided, it will use ServingConfig.EmbeddingConfig.field_path. */ embeddingSpec?: Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestEmbeddingSpec; + /** + * Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, "Google US", "Google Ads", "Waymo", "google.com", "youtube.com", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity. + */ + entity?: string | null; /** * Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -5346,7 +5610,7 @@ export namespace discoveryengine_v1 { */ servingConfig?: string | null; /** - * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. */ session?: string | null; /** @@ -5607,6 +5871,15 @@ export namespace discoveryengine_v1 { */ mode?: string | null; } + /** + * Configuration parameters for the Custom Ranking feature. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams { + /** + * Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field. + */ + expressionsToPrecompute?: string[] | null; + } /** * A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -5743,7 +6016,7 @@ export namespace discoveryengine_v1 { */ filterExtractionCondition?: string | null; /** - * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names. + * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. */ geoSearchQueryDetectionFieldNames?: string[] | null; } @@ -5831,7 +6104,7 @@ export namespace discoveryengine_v1 { condition?: string | null; } /** - * Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * Session specification. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestSessionSpec { /** @@ -5909,6 +6182,10 @@ export namespace discoveryengine_v1 { * Output only. In ConversationalSearchService.GetSession API, if GetSessionRequest.include_answer_details is set to true, this field will be populated when getting assistant session. */ detailedAssistAnswer?: Schema$GoogleCloudDiscoveryengineV1alphaAssistAnswer; + /** + * Optional. Indicates whether this turn is a live turn. + */ + live?: boolean | null; /** * Optional. The user query. May not be set if this turn is merely regenerating an answer to a different turn */ @@ -6204,6 +6481,10 @@ export namespace discoveryengine_v1 { * Information of an end user. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaUserInfo { + /** + * Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents. + */ + preciseLocation?: Schema$GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation; /** * Optional. IANA time zone, e.g. Europe/Budapest. */ @@ -6213,10 +6494,23 @@ export namespace discoveryengine_v1 { */ userAgent?: string | null; /** - * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. + * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded. */ userId?: string | null; } + /** + * Precise location info with multiple representation options. Currently only latitude and longitude point is supported. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation { + /** + * Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon. + */ + address?: string | null; + /** + * Optional. Location represented by a latitude/longitude point. + */ + point?: Schema$GoogleTypeLatLng; + } /** * User License information assigned by the admin. */ @@ -7189,6 +7483,10 @@ export namespace discoveryengine_v1 { * One part of the multi-part response of the assist call. */ export interface Schema$GoogleCloudDiscoveryengineV1AssistAnswerReply { + /** + * The time when the reply was created. + */ + createTime?: string | null; /** * Possibly grounded response text or media from the assistant. */ @@ -7198,6 +7496,10 @@ export namespace discoveryengine_v1 { * Discovery Engine Assistant resource. */ export interface Schema$GoogleCloudDiscoveryengineV1Assistant { + /** + * Output only. Represents the time when this Assistant was created. + */ + createTime?: string | null; /** * Optional. Customer policy for the assistant. */ @@ -7228,6 +7530,10 @@ export namespace discoveryengine_v1 { * Immutable. Resource name of the assistant. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}` It must be a UTF-8 encoded string with a length limit of 1024 characters. */ name?: string | null; + /** + * Output only. Represents the time when this Assistant was most recently updated. + */ + updateTime?: string | null; /** * Optional. The type of web grounding to use. */ @@ -7420,11 +7726,19 @@ export namespace discoveryengine_v1 { * Grounding information for parts of the text. */ segments?: Schema$GoogleCloudDiscoveryengineV1AssistantGroundedContentTextGroundingMetadataSegment[]; + /** + * Grounding information for parts of the visual content. + */ + visualSegments?: Schema$GoogleCloudDiscoveryengineV1AssistantGroundedContentTextGroundingMetadataVisualSegment[]; } /** * Referenced content and related document metadata. */ export interface Schema$GoogleCloudDiscoveryengineV1AssistantGroundedContentTextGroundingMetadataReference { + /** + * Chunk of code snippet from the referenced document. + */ + codeSnippet?: string | null; /** * Referenced text content. */ @@ -7446,6 +7760,7 @@ export namespace discoveryengine_v1 { * Domain name from the document URI. Note that the `uri` field may contain a URL that redirects to the actual website, in which case this will contain the domain name of the target site. */ domain?: string | null; + language?: string | null; /** * The mime type of the document. https://www.iana.org/assignments/media-types/media-types.xhtml. */ @@ -7488,6 +7803,19 @@ export namespace discoveryengine_v1 { */ text?: string | null; } + /** + * Grounding information for a visual segment. + */ + export interface Schema$GoogleCloudDiscoveryengineV1AssistantGroundedContentTextGroundingMetadataVisualSegment { + /** + * The content id of the visual segment. In order to display the citation of the visual element, this content_id needs to match with the `grounded_content.content_metadata.content_id` field. + */ + contentId?: string | null; + /** + * References for the visual segment. + */ + referenceIndices?: number[] | null; + } /** * Information to identify a tool. */ @@ -7700,6 +8028,24 @@ export namespace discoveryengine_v1 { */ disableInitialIndex?: boolean | null; } + /** + * Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaAgentGatewaySetting { + /** + * Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE. + */ + defaultEgressAgentGateway?: Schema$GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference; + } + /** + * Reference to an Agent Gateway resource. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference { + /** + * Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number\}/locations/{location\}/agentGateways/{agent_gateway\}`. + */ + name?: string | null; + } /** * Metadata related to the progress of the SiteSearchEngineService.BatchCreateTargetSites operation. This will be returned by the google.longrunning.Operation.metadata field. */ @@ -8114,6 +8460,10 @@ export namespace discoveryengine_v1 { * Configuration for Document understanding and enrichment. */ documentProcessingConfig?: Schema$GoogleCloudDiscoveryengineV1betaDocumentProcessingConfig; + /** + * Optional. If set, this DataStore is a federated search DataStore. + */ + federatedSearchConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig; /** * Optional. Configuration for `HEALTHCARE_FHIR` vertical. */ @@ -8192,6 +8542,100 @@ export namespace discoveryengine_v1 { */ websiteDataUpdateTime?: string | null; } + /** + * Stores information for federated search. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig { + /** + * AlloyDB config. If set, this DataStore is connected to AlloyDB. + */ + alloyDbConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig; + /** + * NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise. + */ + notebooklmConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig; + /** + * Third Party OAuth config. If set, this DataStore is connected to a third party application. + */ + thirdPartyOauthConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig; + } + /** + * Stores information for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig { + /** + * Optional. Configuration for Magic. + */ + alloydbAiNlConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig; + /** + * Required. Configuration for connecting to AlloyDB. + */ + alloydbConnectionConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig; + /** + * Optional. Fields to be returned in the search results. If empty, all fields will be returned. + */ + returnedFields?: string[] | null; + } + /** + * Configuration for AlloyDB AI Natural Language. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig { + /** + * Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty. + */ + nlConfigId?: string | null; + } + /** + * Configuration for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig { + /** + * Optional. Auth mode. + */ + authMode?: string | null; + /** + * Required. The AlloyDB database to connect to. + */ + database?: string | null; + /** + * Optional. If true, enable PSVS for AlloyDB. + */ + enablePsvs?: boolean | null; + /** + * Required. The AlloyDB instance to connect to. + */ + instance?: string | null; + /** + * Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user. + */ + password?: string | null; + /** + * Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user. + */ + user?: string | null; + } + /** + * Config for connecting to NotebookLM Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig { + /** + * Required. Search config name. Format: projects/x/locations/global/notebookLmSearchConfigs/x + */ + searchConfig?: string | null; + } + /** + * Stores information for third party applicationOAuth. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig { + /** + * Optional. The type of the application. E.g., "jira", "box", etc. + */ + appName?: string | null; + /** + * Optional. The instance name identifying the 3P app, e.g., "vaissptbots-my". This is different from the instance_uri which is the full URL of the 3P app e.g., "https://vaissptbots-my.sharepoint.com". + */ + instanceName?: string | null; + } /** * Stores information regarding the serving configurations at DataStore level. */ @@ -8456,6 +8900,10 @@ export namespace discoveryengine_v1 { * Metadata that describes the training and serving parameters of an Engine. */ export interface Schema$GoogleCloudDiscoveryengineV1betaEngine { + /** + * Optional. The agent gateway setting for the engine. + */ + agentGatewaySetting?: Schema$GoogleCloudDiscoveryengineV1betaAgentGatewaySetting; /** * Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type. */ @@ -8501,7 +8949,7 @@ export namespace discoveryengine_v1 { */ displayName?: string | null; /** - * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` + * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills` */ features?: {[key: string]: string} | null; /** @@ -8533,9 +8981,9 @@ export namespace discoveryengine_v1 { */ observabilityConfig?: Schema$GoogleCloudDiscoveryengineV1betaObservabilityConfig; /** - * Optional. The email of the procurement contact. + * Optional. The emails of the procurement contacts. */ - procurementContactEmail?: string | null; + procurementContactEmails?: string[] | null; /** * Configurations for the Search Engine. Only applicable if solution_type is SOLUTION_TYPE_SEARCH. */ @@ -9027,7 +9475,7 @@ export namespace discoveryengine_v1 { */ successCount?: string | null; /** - * Operation last update time. If the operation is done, this is also the finish time. + * Output only. Operation last update time. If the operation is done, this is also the finish time. */ updateTime?: string | null; } @@ -9161,11 +9609,11 @@ export namespace discoveryengine_v1 { */ export interface Schema$GoogleCloudDiscoveryengineV1betaObservabilityConfig { /** - * Optional. Enables observability. If false, all other flags are ignored. + * Optional. Enables observability. If `false`, all other flags are ignored. */ observabilityEnabled?: boolean | null; /** - * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields. + * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields. */ sensitiveLoggingEnabled?: boolean | null; } @@ -9235,7 +9683,7 @@ export namespace discoveryengine_v1 { } | null; } /** - * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). + * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation. */ export interface Schema$GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus { /** @@ -9262,6 +9710,10 @@ export namespace discoveryengine_v1 { * Output only. The latest terminate effective time of search qpm and indexing core subscriptions. */ terminateTime?: string | null; + /** + * Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject. + */ + updateType?: string | null; } /** * Customer provided configurations. @@ -9559,6 +10011,10 @@ export namespace discoveryengine_v1 { * Optional. Crowding specifications for improving result diversity. If multiple CrowdingSpecs are specified, crowding will be evaluated on each unique combination of the `field` values, and max_count will be the maximum value of `max_count` across all CrowdingSpecs. For example, if the first CrowdingSpec has `field` = "color" and `max_count` = 3, and the second CrowdingSpec has `field` = "size" and `max_count` = 2, then after 3 documents that share the same color AND size have been returned, subsequent ones should be removed or demoted. */ crowdingSpecs?: Schema$GoogleCloudDiscoveryengineV1betaSearchRequestCrowdingSpec[]; + /** + * Optional. Optional configuration for the Custom Ranking feature. + */ + customRankingParams?: Schema$GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams; /** * Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used. */ @@ -9571,6 +10027,10 @@ export namespace discoveryengine_v1 { * Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.EmbeddingSpec.EmbeddingVector.vector and the document embedding that is provided in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path. If SearchRequest.EmbeddingSpec.EmbeddingVector.field_path is not provided, it will use ServingConfig.EmbeddingConfig.field_path. */ embeddingSpec?: Schema$GoogleCloudDiscoveryengineV1betaSearchRequestEmbeddingSpec; + /** + * Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, "Google US", "Google Ads", "Waymo", "google.com", "youtube.com", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity. + */ + entity?: string | null; /** * Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -9676,7 +10136,7 @@ export namespace discoveryengine_v1 { */ servingConfig?: string | null; /** - * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. */ session?: string | null; /** @@ -9933,6 +10393,15 @@ export namespace discoveryengine_v1 { */ mode?: string | null; } + /** + * Configuration parameters for the Custom Ranking feature. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams { + /** + * Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field. + */ + expressionsToPrecompute?: string[] | null; + } /** * A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -10069,7 +10538,7 @@ export namespace discoveryengine_v1 { */ filterExtractionCondition?: string | null; /** - * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names. + * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. */ geoSearchQueryDetectionFieldNames?: string[] | null; } @@ -10157,7 +10626,7 @@ export namespace discoveryengine_v1 { condition?: string | null; } /** - * Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * Session specification. */ export interface Schema$GoogleCloudDiscoveryengineV1betaSearchRequestSessionSpec { /** @@ -10387,6 +10856,10 @@ export namespace discoveryengine_v1 { * Information of an end user. */ export interface Schema$GoogleCloudDiscoveryengineV1betaUserInfo { + /** + * Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents. + */ + preciseLocation?: Schema$GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation; /** * Optional. IANA time zone, e.g. Europe/Budapest. */ @@ -10396,10 +10869,23 @@ export namespace discoveryengine_v1 { */ userAgent?: string | null; /** - * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. + * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded. */ userId?: string | null; } + /** + * Precise location info with multiple representation options. Currently only latitude and longitude point is supported. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation { + /** + * Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon. + */ + address?: string | null; + /** + * Optional. Location represented by a latitude/longitude point. + */ + point?: Schema$GoogleTypeLatLng; + } /** * User License information assigned by the admin. */ @@ -10841,6 +11327,15 @@ export namespace discoveryengine_v1 { */ citations?: Schema$GoogleCloudDiscoveryengineV1Citation[]; } + /** + * The configuration for the CLI execution based connectors. + */ + export interface Schema$GoogleCloudDiscoveryengineV1CliConfig { + /** + * Optional. The actions enabled on the associated CLI connection. + */ + enabledActions?: string[] | null; + } /** * Cloud SQL source import data from. */ @@ -11464,6 +11959,10 @@ export namespace discoveryengine_v1 { * Output only. User actions that must be completed before the connector can start syncing data. */ blockingReasons?: string[] | null; + /** + * Optional. The configuration for establishing a CLI connection. + */ + cliConfig?: Schema$GoogleCloudDiscoveryengineV1CliConfig; /** * Optional. The modes enabled for this connector. Default state is CONNECTOR_MODE_UNSPECIFIED. */ @@ -11481,7 +11980,7 @@ export namespace discoveryengine_v1 { */ createTime?: string | null; /** - * Required. The name of the data source. Supported values: `salesforce`, `jira`, `confluence`, `bigquery`. + * Required. The identifier for the data source. This is a partial list of supported connectors. Please refer to the [documentation](https://docs.cloud.google.com/gemini/enterprise/docs/connectors/introduction-to-connectors-and-data-stores) for the full list of connectors. Supported first-party connectors include: * `gcs` * `bigquery` * `gcp_fhir` * `google_mail` * `google_drive` * `google_calendar` * `google_chat` Supported third-party connectors include: Generally available (GA) connectors: * `onedrive` * `outlook` * `confluence` * `jira` * `servicenow` * `sharepoint` Preview connectors: * `asana` * `azure_active_directory` * `box` * `canva` * `confluence_server` * `custom_connector` * `docusign` * `dropbox` * `dynamics365` * `github` * `gitlab` * `hubspot` * `jira_server` * `linear` * `native_cloud_identity` * `notion` * `okta` * `pagerduty` * `peoplesoft` * `salesforce` * `shopify` * `slack` * `snowflake` * `teams` * `trello` * `workday` * `zendesk` */ dataSource?: string | null; /** @@ -11489,7 +11988,11 @@ export namespace discoveryengine_v1 { */ destinationConfigs?: Schema$GoogleCloudDiscoveryengineV1DestinationConfig[]; /** - * Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. Note: This field is derived from both the DataConnector.params, and connector source spec. It should only be used for CAIS and Org Policy evaluation purposes. + * Output only. The dynamic tools fetched for this connector. + */ + dynamicTools?: Schema$GoogleCloudDiscoveryengineV1DynamicTool[]; + /** + * Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. */ egressFqdns?: string[] | null; /** @@ -11545,7 +12048,7 @@ export namespace discoveryengine_v1 { */ latestPauseTime?: string | null; /** - * Output only. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. + * Identifier. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. */ name?: string | null; /** @@ -11597,7 +12100,7 @@ export namespace discoveryengine_v1 { */ updateTime?: string | null; /** - * Output only. Whether the connector is created with VPC-SC enabled. This is only used for CuOP evaluation purpose. + * Output only. Whether the connector is created with VPC-SC enabled. */ vpcscEnabled?: boolean | null; } @@ -11750,6 +12253,10 @@ export namespace discoveryengine_v1 { * Configuration for Document understanding and enrichment. */ documentProcessingConfig?: Schema$GoogleCloudDiscoveryengineV1DocumentProcessingConfig; + /** + * Optional. If set, this DataStore is a federated search DataStore. + */ + federatedSearchConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig; /** * Optional. Configuration for `HEALTHCARE_FHIR` vertical. */ @@ -11824,6 +12331,100 @@ export namespace discoveryengine_v1 { */ websiteDataUpdateTime?: string | null; } + /** + * Stores information for federated search. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig { + /** + * AlloyDB config. If set, this DataStore is connected to AlloyDB. + */ + alloyDbConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig; + /** + * NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise. + */ + notebooklmConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig; + /** + * Third Party OAuth config. If set, this DataStore is connected to a third party application. + */ + thirdPartyOauthConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig; + } + /** + * Stores information for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig { + /** + * Optional. Configuration for Magic. + */ + alloydbAiNlConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig; + /** + * Required. Configuration for connecting to AlloyDB. + */ + alloydbConnectionConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig; + /** + * Optional. Fields to be returned in the search results. If empty, all fields will be returned. + */ + returnedFields?: string[] | null; + } + /** + * Configuration for AlloyDB AI Natural Language. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig { + /** + * Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty. + */ + nlConfigId?: string | null; + } + /** + * Configuration for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig { + /** + * Optional. Auth mode. + */ + authMode?: string | null; + /** + * Required. The AlloyDB database to connect to. + */ + database?: string | null; + /** + * Optional. If true, enable PSVS for AlloyDB. + */ + enablePsvs?: boolean | null; + /** + * Required. The AlloyDB instance to connect to. + */ + instance?: string | null; + /** + * Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user. + */ + password?: string | null; + /** + * Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user. + */ + user?: string | null; + } + /** + * Config for connecting to NotebookLM Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig { + /** + * Required. Search config name. Format: projects/x/locations/global/notebookLmSearchConfigs/x + */ + searchConfig?: string | null; + } + /** + * Stores information for third party applicationOAuth. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig { + /** + * Optional. The type of the application. E.g., "jira", "box", etc. + */ + appName?: string | null; + /** + * Optional. The instance name identifying the 3P app, e.g., "vaissptbots-my". This is different from the instance_uri which is the full URL of the 3P app e.g., "https://vaissptbots-my.sharepoint.com". + */ + instanceName?: string | null; + } /** * Stores information regarding the serving configurations at DataStore level. */ @@ -11992,6 +12593,36 @@ export namespace discoveryengine_v1 { * Response message for SiteSearchEngineService.DisableAdvancedSiteSearch method. */ export interface Schema$GoogleCloudDiscoveryengineV1DisableAdvancedSiteSearchResponse {} + /** + * Request message for LicenseConfigService.DistributeLicenseConfig method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DistributeLicenseConfigRequest { + /** + * Optional. Distribute seats to this license config instead of creating a new one. If not specified, a new license config will be created from the billing account license config. + */ + licenseConfigId?: string | null; + /** + * Required. The number of licenses to distribute. + */ + licenseCount?: string | null; + /** + * Required. The target GCP project region to distribute the license config to. + */ + location?: string | null; + /** + * Required. The target GCP project number to distribute the license config to. + */ + projectNumber?: string | null; + } + /** + * Response message for LicenseConfigService.DistributeLicenseConfig method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DistributeLicenseConfigResponse { + /** + * The updated or created LicenseConfig. + */ + licenseConfig?: Schema$GoogleCloudDiscoveryengineV1LicenseConfig; + } /** * Document captures all raw metadata information of items to be recommended or searched. */ @@ -12017,7 +12648,7 @@ export namespace discoveryengine_v1 { */ indexStatus?: Schema$GoogleCloudDiscoveryengineV1DocumentIndexStatus; /** - * Output only. The last time the document was indexed. If this field is set, the document could be returned in search results. This field is OUTPUT_ONLY. If this field is not populated, it means the document has never been indexed. + * Output only. The time when the document was last indexed. If this field is populated, it means the document has been indexed. While documents typically become searchable within seconds of indexing, it can sometimes take up to a few hours. If this field is not populated, it means the document has never been indexed. */ indexTime?: string | null; /** @@ -12089,7 +12720,7 @@ export namespace discoveryengine_v1 { */ errorSamples?: Schema$GoogleRpcStatus[]; /** - * The time when the document was indexed. If this field is populated, it means the document has been indexed. + * The time when the document was indexed. If this field is populated, it means the document has been indexed. While documents typically become searchable within seconds of indexing, it can sometimes take up to a few hours. */ indexTime?: string | null; /** @@ -12257,6 +12888,27 @@ export namespace discoveryengine_v1 { */ values?: number[] | null; } + /** + * Configuration for dynamic tools. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DynamicTool { + /** + * Optional. The description of the tool. + */ + description?: string | null; + /** + * Optional. The display name of the tool. + */ + displayName?: string | null; + /** + * Optional. Whether the tool is enabled. + */ + enabled?: boolean | null; + /** + * Required. The name of the tool. + */ + name?: string | null; + } /** * Metadata related to the progress of the SiteSearchEngineService.EnableAdvancedSiteSearch operation. This will be returned by the google.longrunning.Operation.metadata field. */ @@ -12282,6 +12934,10 @@ export namespace discoveryengine_v1 { * Metadata that describes the training and serving parameters of an Engine. */ export interface Schema$GoogleCloudDiscoveryengineV1Engine { + /** + * Optional. The agent gateway setting for the engine. + */ + agentGatewaySetting?: Schema$GoogleCloudDiscoveryengineV1AgentGatewaySetting; /** * Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type. */ @@ -12327,7 +12983,7 @@ export namespace discoveryengine_v1 { */ displayName?: string | null; /** - * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` + * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills` */ features?: {[key: string]: string} | null; /** @@ -12359,9 +13015,9 @@ export namespace discoveryengine_v1 { */ observabilityConfig?: Schema$GoogleCloudDiscoveryengineV1ObservabilityConfig; /** - * Optional. The email of the procurement contact. + * Optional. The emails of the procurement contacts. */ - procurementContactEmail?: string | null; + procurementContactEmails?: string[] | null; /** * Configurations for the Search Engine. Only applicable if solution_type is SOLUTION_TYPE_SEARCH. */ @@ -13087,7 +13743,7 @@ export namespace discoveryengine_v1 { */ successCount?: string | null; /** - * Operation last update time. If the operation is done, this is also the finish time. + * Output only. Operation last update time. If the operation is done, this is also the finish time. */ updateTime?: string | null; } @@ -13456,11 +14112,11 @@ export namespace discoveryengine_v1 { */ export interface Schema$GoogleCloudDiscoveryengineV1ObservabilityConfig { /** - * Optional. Enables observability. If false, all other flags are ignored. + * Optional. Enables observability. If `false`, all other flags are ignored. */ observabilityEnabled?: boolean | null; /** - * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields. + * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields. */ sensitiveLoggingEnabled?: boolean | null; } @@ -13559,7 +14215,7 @@ export namespace discoveryengine_v1 { } | null; } /** - * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). + * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation. */ export interface Schema$GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus { /** @@ -13586,6 +14242,10 @@ export namespace discoveryengine_v1 { * Output only. The latest terminate effective time of search qpm and indexing core subscriptions. */ terminateTime?: string | null; + /** + * Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject. + */ + updateType?: string | null; } /** * Customer provided configurations. @@ -13913,7 +14573,7 @@ export namespace discoveryengine_v1 { */ id?: string | null; /** - * The score of this record based on the given query and selected model. The score will be rounded to 2 decimal places. If the score is close to 0, it will be rounded to 0.0001 to avoid returning unset. + * The score of this record based on the given query and selected model. The score will be rounded to 4 decimal places. If the score is close to 0, it will be rounded to 0.00001 to avoid returning unset. */ score?: number | null; /** @@ -14048,6 +14708,32 @@ export namespace discoveryengine_v1 { */ summary?: Schema$GoogleCloudDiscoveryengineV1SearchResponseSummary; } + /** + * Request message for LicenseConfigService.RetractLicenseConfig method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1RetractLicenseConfigRequest { + /** + * Optional. If set to true, retract the entire license config. Otherwise, retract the specified license count. + */ + fullRetract?: boolean | null; + /** + * Required. Full resource name of LicenseConfig. Format: `projects/{project\}/locations/{location\}/licenseConfigs/{license_config_id\}`. + */ + licenseConfig?: string | null; + /** + * Optional. The number of licenses to retract. Only used when full_retract is false. + */ + licenseCount?: string | null; + } + /** + * Response message for LicenseConfigService.RetractLicenseConfig method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1RetractLicenseConfigResponse { + /** + * The updated LicenseConfig. + */ + licenseConfig?: Schema$GoogleCloudDiscoveryengineV1LicenseConfig; + } /** * Safety rating corresponding to the generated content. */ @@ -14164,6 +14850,10 @@ export namespace discoveryengine_v1 { * Optional. Crowding specifications for improving result diversity. If multiple CrowdingSpecs are specified, crowding will be evaluated on each unique combination of the `field` values, and max_count will be the maximum value of `max_count` across all CrowdingSpecs. For example, if the first CrowdingSpec has `field` = "color" and `max_count` = 3, and the second CrowdingSpec has `field` = "size" and `max_count` = 2, then after 3 documents that share the same color AND size have been returned, subsequent ones should be removed or demoted. */ crowdingSpecs?: Schema$GoogleCloudDiscoveryengineV1SearchRequestCrowdingSpec[]; + /** + * Optional. Optional configuration for the Custom Ranking feature. + */ + customRankingParams?: Schema$GoogleCloudDiscoveryengineV1SearchRequestCustomRankingParams; /** * Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used. */ @@ -14172,6 +14862,10 @@ export namespace discoveryengine_v1 { * Optional. Config for display feature, like match highlighting on search results. */ displaySpec?: Schema$GoogleCloudDiscoveryengineV1SearchRequestDisplaySpec; + /** + * Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, "Google US", "Google Ads", "Waymo", "google.com", "youtube.com", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity. + */ + entity?: string | null; /** * Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -14192,6 +14886,10 @@ export namespace discoveryengine_v1 { * Optional. Config for natural language query understanding capabilities, such as extracting structured field filters from the query. Refer to [this documentation](https://cloud.google.com/generative-ai-app-builder/docs/natural-language-queries) for more information. If `naturalLanguageQueryUnderstandingSpec` is not specified, no additional natural language query understanding will be done. */ naturalLanguageQueryUnderstandingSpec?: Schema$GoogleCloudDiscoveryengineV1SearchRequestNaturalLanguageQueryUnderstandingSpec; + /** + * Optional. The maximum number of results to retrieve from each data store. If not specified, it will use the SearchRequest.DataStoreSpec.num_results if provided, otherwise there is no limit. + */ + numResultsPerDataStore?: number | null; /** * A 0-indexed integer that specifies the current offset (that is, starting result location, amongst the Documents deemed by the API as relevant) in search results. This field is only considered if page_token is unset. If this field is negative, an `INVALID_ARGUMENT` is returned. A large offset may be capped to a reasonable threshold. */ @@ -14253,7 +14951,7 @@ export namespace discoveryengine_v1 { */ searchAsYouTypeSpec?: Schema$GoogleCloudDiscoveryengineV1SearchRequestSearchAsYouTypeSpec; /** - * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. */ session?: string | null; /** @@ -14497,6 +15195,15 @@ export namespace discoveryengine_v1 { */ mode?: string | null; } + /** + * Configuration parameters for the Custom Ranking feature. + */ + export interface Schema$GoogleCloudDiscoveryengineV1SearchRequestCustomRankingParams { + /** + * Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field. + */ + expressionsToPrecompute?: string[] | null; + } /** * A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -14517,6 +15224,10 @@ export namespace discoveryengine_v1 { * Optional. Filter specification to filter documents in the data store specified by data_store field. For more information on filtering, see [Filtering](https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata) */ filter?: string | null; + /** + * Optional. The maximum number of results to retrieve from this data store. If not specified, it will use the SearchRequest.num_results_per_data_store if provided, otherwise there is no limit. If both this field and SearchRequest.num_results_per_data_store are specified, this field will be used. + */ + numResults?: number | null; } /** * Specifies features for display, like match highlighting. @@ -14607,7 +15318,7 @@ export namespace discoveryengine_v1 { */ filterExtractionCondition?: string | null; /** - * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names. + * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. */ geoSearchQueryDetectionFieldNames?: string[] | null; } @@ -14643,7 +15354,7 @@ export namespace discoveryengine_v1 { condition?: string | null; } /** - * Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * Session specification. */ export interface Schema$GoogleCloudDiscoveryengineV1SearchRequestSessionSpec { /** @@ -14959,6 +15670,10 @@ export namespace discoveryengine_v1 { * Optional. Predicted conversion rate adjustment as a rank. */ pctrRank?: number | null; + /** + * Optional. A list of precomputed expression results for a given document, in the same order as requested in `SearchRequest.custom_ranking_params.expressions_to_precompute`. + */ + precomputedExpressionValues?: number[] | null; /** * Optional. Semantic relevance adjustment. */ @@ -15294,6 +16009,10 @@ export namespace discoveryengine_v1 { * Output only. In ConversationalSearchService.GetSession API, if GetSessionRequest.include_answer_details is set to true, this field will be populated when getting assistant session. */ detailedAssistAnswer?: Schema$GoogleCloudDiscoveryengineV1AssistAnswer; + /** + * Optional. Indicates whether this turn is a live turn. + */ + live?: boolean | null; /** * Optional. The user query. May not be set if this turn is merely regenerating an answer to a different turn */ @@ -15316,7 +16035,7 @@ export namespace discoveryengine_v1 { */ collectionDisplayName?: string | null; /** - * Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an INVALID_ARGUMENT error is returned. + * Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. Should conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. */ collectionId?: string | null; /** @@ -15799,6 +16518,10 @@ export namespace discoveryengine_v1 { * The Engine resource name, in the form of `projects/{project\}/locations/{location\}/collections/{collection_id\}/engines/{engine_id\}`. Optional. Only required for Engine produced user events. For example, user events from blended search. */ engine?: string | null; + /** + * Optional. Represents the entity for customers that may run multiple different entities, domains, sites or regions, for example, `Google US`, `Google Ads`, `Waymo`, `google.com`, `youtube.com`, etc. We recommend that you set `entity` to get better per-entity search, completion, and prediction results. + */ + entity?: string | null; /** * Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened. */ @@ -15860,6 +16583,10 @@ export namespace discoveryengine_v1 { * Information of an end user. */ export interface Schema$GoogleCloudDiscoveryengineV1UserInfo { + /** + * Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents. + */ + preciseLocation?: Schema$GoogleCloudDiscoveryengineV1UserInfoPreciseLocation; /** * Optional. IANA time zone, e.g. Europe/Budapest. */ @@ -15869,10 +16596,23 @@ export namespace discoveryengine_v1 { */ userAgent?: string | null; /** - * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. + * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded. */ userId?: string | null; } + /** + * Precise location info with multiple representation options. Currently only latitude and longitude point is supported. + */ + export interface Schema$GoogleCloudDiscoveryengineV1UserInfoPreciseLocation { + /** + * Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon. + */ + address?: string | null; + /** + * Optional. Location represented by a latitude/longitude point. + */ + point?: Schema$GoogleTypeLatLng; + } /** * User License information assigned by the admin. */ @@ -16374,7 +17114,7 @@ export namespace discoveryengine_v1 { */ enableVisualContentSummary?: boolean | null; /** - * Output only. Feature config for the engine to opt in or opt out of features. Supported keys: * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` + * Output only. Feature config for the engine to opt in or opt out of features. Supported keys: * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills` */ features?: {[key: string]: string} | null; /** @@ -16737,6 +17477,19 @@ export namespace discoveryengine_v1 { */ title?: string | null; } + /** + * An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. + */ + export interface Schema$GoogleTypeLatLng { + /** + * The latitude in degrees. It must be in the range [-90.0, +90.0]. + */ + latitude?: number | null; + /** + * The longitude in degrees. It must be in the range [-180.0, +180.0]. + */ + longitude?: number | null; + } /** * Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). */ @@ -16751,18 +17504,24 @@ export namespace discoveryengine_v1 { version?: string | null; } - export class Resource$Projects { + export class Resource$Billingaccounts { + context: APIRequestContext; + billingAccountLicenseConfigs: Resource$Billingaccounts$Billingaccountlicenseconfigs; + constructor(context: APIRequestContext) { + this.context = context; + this.billingAccountLicenseConfigs = + new Resource$Billingaccounts$Billingaccountlicenseconfigs(this.context); + } + } + + export class Resource$Billingaccounts$Billingaccountlicenseconfigs { context: APIRequestContext; - locations: Resource$Projects$Locations; - operations: Resource$Projects$Operations; constructor(context: APIRequestContext) { this.context = context; - this.locations = new Resource$Projects$Locations(this.context); - this.operations = new Resource$Projects$Operations(this.context); } /** - * Provisions the project resource. During the process, related systems will get prepared and initialized. Caller must read the [Terms for data use](https://cloud.google.com/retail/data-use-terms), and optionally specify in request to provide consent to that service terms. + * Distributes a LicenseConfig from billing account level to project level. * @example * ```js * // Before running the sample: @@ -16786,6 +17545,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -16794,29 +17554,30 @@ export namespace discoveryengine_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await discoveryengine.projects.provision({ - * // Required. Full resource name of a Project, such as `projects/{project_id_or_number\}`. - * name: 'projects/my-project', + * const res = + * await discoveryengine.billingAccounts.billingAccountLicenseConfigs.distributeLicenseConfig( + * { + * // Required. Full resource name of BillingAccountLicenseConfig. Format: `billingAccounts/{billing_account\}/billingAccountLicenseConfigs/{billing_account_license_config_id\}`. + * billingAccountLicenseConfig: + * 'billingAccounts/my-billingAccount/billingAccountLicenseConfigs/my-billingAccountLicenseConfig', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "acceptDataUseTerms": false, - * // "dataUseTermsVersion": "my_dataUseTermsVersion", - * // "saasParams": {} - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "licenseConfigId": "my_licenseConfigId", + * // "licenseCount": "my_licenseCount", + * // "location": "my_location", + * // "projectNumber": "my_projectNumber" + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "licenseConfig": {} * // } * } * @@ -16832,57 +17593,62 @@ export namespace discoveryengine_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - provision( - params: Params$Resource$Projects$Provision, + distributeLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig, options: StreamMethodOptions ): Promise>; - provision( - params?: Params$Resource$Projects$Provision, + distributeLicenseConfig( + params?: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig, options?: MethodOptions - ): Promise>; - provision( - params: Params$Resource$Projects$Provision, + ): Promise< + GaxiosResponseWithHTTP2 + >; + distributeLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - provision( - params: Params$Resource$Projects$Provision, + distributeLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - provision( - params: Params$Resource$Projects$Provision, - callback: BodyResponseCallback + distributeLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig, + callback: BodyResponseCallback ): void; - provision( - callback: BodyResponseCallback + distributeLicenseConfig( + callback: BodyResponseCallback ): void; - provision( + distributeLicenseConfig( paramsOrCallback?: - | Params$Resource$Projects$Provision - | BodyResponseCallback + | Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Provision; + {}) as Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Provision; + params = + {} as Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig; options = {}; } @@ -16896,92 +17662,34 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:provision').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + + '/v1/{+billingAccountLicenseConfig}:distributeLicenseConfig' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['billingAccountLicenseConfig'], + pathParams: ['billingAccountLicenseConfig'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - - export interface Params$Resource$Projects$Provision extends StandardParameters { - /** - * Required. Full resource name of a Project, such as `projects/{project_id_or_number\}`. - */ - name?: string; /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDiscoveryengineV1ProvisionProjectRequest; - } - - export class Resource$Projects$Locations { - context: APIRequestContext; - cmekConfigs: Resource$Projects$Locations$Cmekconfigs; - collections: Resource$Projects$Locations$Collections; - dataStores: Resource$Projects$Locations$Datastores; - groundingConfigs: Resource$Projects$Locations$Groundingconfigs; - identityMappingStores: Resource$Projects$Locations$Identitymappingstores; - licenseConfigs: Resource$Projects$Locations$Licenseconfigs; - operations: Resource$Projects$Locations$Operations; - podcasts: Resource$Projects$Locations$Podcasts; - rankingConfigs: Resource$Projects$Locations$Rankingconfigs; - userEvents: Resource$Projects$Locations$Userevents; - userStores: Resource$Projects$Locations$Userstores; - constructor(context: APIRequestContext) { - this.context = context; - this.cmekConfigs = new Resource$Projects$Locations$Cmekconfigs( - this.context - ); - this.collections = new Resource$Projects$Locations$Collections( - this.context - ); - this.dataStores = new Resource$Projects$Locations$Datastores( - this.context - ); - this.groundingConfigs = new Resource$Projects$Locations$Groundingconfigs( - this.context - ); - this.identityMappingStores = - new Resource$Projects$Locations$Identitymappingstores(this.context); - this.licenseConfigs = new Resource$Projects$Locations$Licenseconfigs( - this.context - ); - this.operations = new Resource$Projects$Locations$Operations( - this.context - ); - this.podcasts = new Resource$Projects$Locations$Podcasts(this.context); - this.rankingConfigs = new Resource$Projects$Locations$Rankingconfigs( - this.context - ); - this.userEvents = new Resource$Projects$Locations$Userevents( - this.context - ); - this.userStores = new Resource$Projects$Locations$Userstores( - this.context - ); - } - - /** - * Gets the AclConfig. + * This method is called from the billing account side to retract the LicenseConfig from the given project back to the billing account. * @example * ```js * // Before running the sample: @@ -17005,6 +17713,428 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await discoveryengine.billingAccounts.billingAccountLicenseConfigs.retractLicenseConfig( + * { + * // Required. Full resource name of BillingAccountLicenseConfig. Format: `billingAccounts/{billing_account\}/billingAccountLicenseConfigs/{billing_account_license_config_id\}`. + * billingAccountLicenseConfig: + * 'billingAccounts/my-billingAccount/billingAccountLicenseConfigs/my-billingAccountLicenseConfig', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "fullRetract": false, + * // "licenseConfig": "my_licenseConfig", + * // "licenseCount": "my_licenseCount" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "licenseConfig": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + retractLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig, + options: StreamMethodOptions + ): Promise>; + retractLicenseConfig( + params?: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + retractLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + retractLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + retractLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig, + callback: BodyResponseCallback + ): void; + retractLicenseConfig( + callback: BodyResponseCallback + ): void; + retractLicenseConfig( + paramsOrCallback?: + | Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://discoveryengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1/{+billingAccountLicenseConfig}:retractLicenseConfig' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['billingAccountLicenseConfig'], + pathParams: ['billingAccountLicenseConfig'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig extends StandardParameters { + /** + * Required. Full resource name of BillingAccountLicenseConfig. Format: `billingAccounts/{billing_account\}/billingAccountLicenseConfigs/{billing_account_license_config_id\}`. + */ + billingAccountLicenseConfig?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1DistributeLicenseConfigRequest; + } + export interface Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig extends StandardParameters { + /** + * Required. Full resource name of BillingAccountLicenseConfig. Format: `billingAccounts/{billing_account\}/billingAccountLicenseConfigs/{billing_account_license_config_id\}`. + */ + billingAccountLicenseConfig?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1RetractLicenseConfigRequest; + } + + export class Resource$Projects { + context: APIRequestContext; + locations: Resource$Projects$Locations; + operations: Resource$Projects$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.locations = new Resource$Projects$Locations(this.context); + this.operations = new Resource$Projects$Operations(this.context); + } + + /** + * Provisions the project resource. During the process, related systems will get prepared and initialized. Caller must read the [Terms for data use](https://cloud.google.com/retail/data-use-terms), and optionally specify in request to provide consent to that service terms. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const discoveryengine = google.discoveryengine('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await discoveryengine.projects.provision({ + * // Required. Full resource name of a Project, such as `projects/{project_id_or_number\}`. + * name: 'projects/my-project', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "acceptDataUseTerms": false, + * // "dataUseTermsVersion": "my_dataUseTermsVersion", + * // "saasParams": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + provision( + params: Params$Resource$Projects$Provision, + options: StreamMethodOptions + ): Promise>; + provision( + params?: Params$Resource$Projects$Provision, + options?: MethodOptions + ): Promise>; + provision( + params: Params$Resource$Projects$Provision, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + provision( + params: Params$Resource$Projects$Provision, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + provision( + params: Params$Resource$Projects$Provision, + callback: BodyResponseCallback + ): void; + provision( + callback: BodyResponseCallback + ): void; + provision( + paramsOrCallback?: + | Params$Resource$Projects$Provision + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Provision; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Provision; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://discoveryengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:provision').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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$Provision extends StandardParameters { + /** + * Required. Full resource name of a Project, such as `projects/{project_id_or_number\}`. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1ProvisionProjectRequest; + } + + export class Resource$Projects$Locations { + context: APIRequestContext; + cmekConfigs: Resource$Projects$Locations$Cmekconfigs; + collections: Resource$Projects$Locations$Collections; + dataStores: Resource$Projects$Locations$Datastores; + groundingConfigs: Resource$Projects$Locations$Groundingconfigs; + identityMappingStores: Resource$Projects$Locations$Identitymappingstores; + licenseConfigs: Resource$Projects$Locations$Licenseconfigs; + operations: Resource$Projects$Locations$Operations; + podcasts: Resource$Projects$Locations$Podcasts; + rankingConfigs: Resource$Projects$Locations$Rankingconfigs; + userEvents: Resource$Projects$Locations$Userevents; + userStores: Resource$Projects$Locations$Userstores; + constructor(context: APIRequestContext) { + this.context = context; + this.cmekConfigs = new Resource$Projects$Locations$Cmekconfigs( + this.context + ); + this.collections = new Resource$Projects$Locations$Collections( + this.context + ); + this.dataStores = new Resource$Projects$Locations$Datastores( + this.context + ); + this.groundingConfigs = new Resource$Projects$Locations$Groundingconfigs( + this.context + ); + this.identityMappingStores = + new Resource$Projects$Locations$Identitymappingstores(this.context); + this.licenseConfigs = new Resource$Projects$Locations$Licenseconfigs( + this.context + ); + this.operations = new Resource$Projects$Locations$Operations( + this.context + ); + this.podcasts = new Resource$Projects$Locations$Podcasts(this.context); + this.rankingConfigs = new Resource$Projects$Locations$Rankingconfigs( + this.context + ); + this.userEvents = new Resource$Projects$Locations$Userevents( + this.context + ); + this.userStores = new Resource$Projects$Locations$Userstores( + this.context + ); + } + + /** + * Gets the AclConfig. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const discoveryengine = google.discoveryengine('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17154,6 +18284,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17310,6 +18441,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17470,6 +18602,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17481,7 +18614,7 @@ export namespace discoveryengine_v1 { * const res = await discoveryengine.projects.locations.setUpDataConnectorV2({ * // Required. The display name of the Collection. Should be human readable, used to display collections in the Console Dashboard. UTF-8 encoded string with limit of 1024 characters. * collectionDisplayName: 'placeholder-value', - * // Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an INVALID_ARGUMENT error is returned. + * // Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. Should conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. * collectionId: 'placeholder-value', * // Required. The parent of Collection, in the format of `projects/{project\}/locations/{location\}`. * parent: 'projects/my-project/locations/my-location', @@ -17497,12 +18630,14 @@ export namespace discoveryengine_v1 { * // "autoRunDisabled": false, * // "bapConfig": {}, * // "blockingReasons": [], + * // "cliConfig": {}, * // "connectorModes": [], * // "connectorType": "my_connectorType", * // "createEuaSaas": false, * // "createTime": "my_createTime", * // "dataSource": "my_dataSource", * // "destinationConfigs": [], + * // "dynamicTools": [], * // "egressFqdns": [], * // "endUserConfig": {}, * // "entities": [], @@ -17671,6 +18806,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17829,6 +18965,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17997,7 +19134,7 @@ export namespace discoveryengine_v1 { */ collectionDisplayName?: string; /** - * Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an INVALID_ARGUMENT error is returned. + * Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. Should conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. */ collectionId?: string; /** @@ -18068,6 +19205,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18214,6 +19352,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18369,6 +19508,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18520,6 +19660,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18739,6 +19880,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18886,6 +20028,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18896,7 +20039,7 @@ export namespace discoveryengine_v1 { * // Do the magic * const res = * await discoveryengine.projects.locations.collections.getDataConnector({ - * // Required. Full resource name of DataConnector, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector`. If the caller does not have permission to access the DataConnector, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. If the requested DataConnector does not exist, a NOT_FOUND error is returned. + * // Required. Full resource name of DataConnector, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector`. If the caller does not have permission to access the DataConnector, regardless of whether or not it exists, a `PERMISSION_DENIED` error is returned. If the requested DataConnector does not exist, a `NOT_FOUND` error is returned. * name: 'projects/my-project/locations/my-location/collections/my-collection/dataConnector', * }); * console.log(res.data); @@ -18910,12 +20053,14 @@ export namespace discoveryengine_v1 { * // "autoRunDisabled": false, * // "bapConfig": {}, * // "blockingReasons": [], + * // "cliConfig": {}, * // "connectorModes": [], * // "connectorType": "my_connectorType", * // "createEuaSaas": false, * // "createTime": "my_createTime", * // "dataSource": "my_dataSource", * // "destinationConfigs": [], + * // "dynamicTools": [], * // "egressFqdns": [], * // "endUserConfig": {}, * // "entities": [], @@ -19077,6 +20222,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19087,9 +20233,9 @@ export namespace discoveryengine_v1 { * // Do the magic * const res = * await discoveryengine.projects.locations.collections.updateDataConnector({ - * // Output only. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. + * // Identifier. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. * name: 'projects/my-project/locations/my-location/collections/my-collection/dataConnector', - * // Indicates which fields in the provided DataConnector to update. Supported field paths include: - `refresh_interval` - `params` - `auto_run_disabled` - `action_config` - `action_config.action_params` - `action_config.service_name` - `destination_configs` - `blocking_reasons` - `sync_mode` - `incremental_sync_disabled` - `incremental_refresh_interval` - `data_protection_policy` Note: Support for these fields may vary depending on the connector type. For example, not all connectors support `destination_configs`. If an unsupported or unknown field path is provided, the request will return an INVALID_ARGUMENT error. + * // Indicates which fields in the provided DataConnector to update. Supported field paths include: - `refresh_interval` - `params` - `auto_run_disabled` - `action_config` - `action_config.action_params` - `action_config.service_name` - `destination_configs` - `blocking_reasons` - `sync_mode` - `incremental_sync_disabled` - `incremental_refresh_interval` - `data_protection_policy` Note: Support for these fields may vary depending on the connector type. For example, not all connectors support `destination_configs`. If an unsupported or unknown field path is provided, the request will return an `INVALID_ARGUMENT` error. * updateMask: 'placeholder-value', * * // Request body metadata @@ -19103,12 +20249,14 @@ export namespace discoveryengine_v1 { * // "autoRunDisabled": false, * // "bapConfig": {}, * // "blockingReasons": [], + * // "cliConfig": {}, * // "connectorModes": [], * // "connectorType": "my_connectorType", * // "createEuaSaas": false, * // "createTime": "my_createTime", * // "dataSource": "my_dataSource", * // "destinationConfigs": [], + * // "dynamicTools": [], * // "egressFqdns": [], * // "endUserConfig": {}, * // "entities": [], @@ -19151,12 +20299,14 @@ export namespace discoveryengine_v1 { * // "autoRunDisabled": false, * // "bapConfig": {}, * // "blockingReasons": [], + * // "cliConfig": {}, * // "connectorModes": [], * // "connectorType": "my_connectorType", * // "createEuaSaas": false, * // "createTime": "my_createTime", * // "dataSource": "my_dataSource", * // "destinationConfigs": [], + * // "dynamicTools": [], * // "egressFqdns": [], * // "endUserConfig": {}, * // "entities": [], @@ -19301,17 +20451,17 @@ export namespace discoveryengine_v1 { } export interface Params$Resource$Projects$Locations$Collections$Getdataconnector extends StandardParameters { /** - * Required. Full resource name of DataConnector, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector`. If the caller does not have permission to access the DataConnector, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. If the requested DataConnector does not exist, a NOT_FOUND error is returned. + * Required. Full resource name of DataConnector, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector`. If the caller does not have permission to access the DataConnector, regardless of whether or not it exists, a `PERMISSION_DENIED` error is returned. If the requested DataConnector does not exist, a `NOT_FOUND` error is returned. */ name?: string; } export interface Params$Resource$Projects$Locations$Collections$Updatedataconnector extends StandardParameters { /** - * Output only. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. + * Identifier. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. */ name?: string; /** - * Indicates which fields in the provided DataConnector to update. Supported field paths include: - `refresh_interval` - `params` - `auto_run_disabled` - `action_config` - `action_config.action_params` - `action_config.service_name` - `destination_configs` - `blocking_reasons` - `sync_mode` - `incremental_sync_disabled` - `incremental_refresh_interval` - `data_protection_policy` Note: Support for these fields may vary depending on the connector type. For example, not all connectors support `destination_configs`. If an unsupported or unknown field path is provided, the request will return an INVALID_ARGUMENT error. + * Indicates which fields in the provided DataConnector to update. Supported field paths include: - `refresh_interval` - `params` - `auto_run_disabled` - `action_config` - `action_config.action_params` - `action_config.service_name` - `destination_configs` - `blocking_reasons` - `sync_mode` - `incremental_sync_disabled` - `incremental_refresh_interval` - `data_protection_policy` Note: Support for these fields may vary depending on the connector type. For example, not all connectors support `destination_configs`. If an unsupported or unknown field path is provided, the request will return an `INVALID_ARGUMENT` error. */ updateMask?: string; @@ -19331,6 +20481,188 @@ export namespace discoveryengine_v1 { this.context ); } + + /** + * ServeMcpDeleteRequest serves a MCP DELETE request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const discoveryengine = google.discoveryengine('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await discoveryengine.projects.locations.collections.dataConnector.mcp({ + * collectionsId: 'placeholder-value', + * // The HTTP Content-Type header value specifying the content type of the body. + * contentType: 'placeholder-value', + * // The HTTP request/response body as raw binary. + * data: 'placeholder-value', + * // Application specific response metadata. Must be set in the first response for streaming APIs. + * extensions: 'placeholder-value', + * + * locationsId: 'placeholder-value', + * + * projectsId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "contentType": "my_contentType", + * // "data": "my_data", + * // "extensions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + mcp( + params: Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp, + options: StreamMethodOptions + ): Promise>; + mcp( + params?: Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp, + options?: MethodOptions + ): Promise>; + mcp( + params: Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + mcp( + params: Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + mcp( + params: Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp, + callback: BodyResponseCallback + ): void; + mcp(callback: BodyResponseCallback): void; + mcp( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://discoveryengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataConnector/mcp' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['projectsId', 'locationsId', 'collectionsId'], + pathParams: ['collectionsId', 'locationsId', 'projectsId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp extends StandardParameters { + /** + * + */ + collectionsId?: string; + /** + * The HTTP Content-Type header value specifying the content type of the body. + */ + contentType?: string; + /** + * The HTTP request/response body as raw binary. + */ + data?: string; + /** + * Application specific response metadata. Must be set in the first response for streaming APIs. + */ + extensions?: {[key: string]: any}[]; + /** + * + */ + locationsId?: string; + /** + * + */ + projectsId?: string; } export class Resource$Projects$Locations$Collections$Dataconnector$Operations { @@ -19364,6 +20696,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19514,6 +20847,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19791,6 +21125,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19956,6 +21291,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19995,6 +21331,7 @@ export namespace discoveryengine_v1 { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -20147,6 +21484,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20295,6 +21633,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20323,6 +21662,7 @@ export namespace discoveryengine_v1 { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -20466,6 +21806,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20618,6 +21959,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20779,6 +22121,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20809,6 +22152,7 @@ export namespace discoveryengine_v1 { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -20838,6 +22182,7 @@ export namespace discoveryengine_v1 { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -20981,6 +22326,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21279,6 +22625,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21461,6 +22808,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21647,6 +22995,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21787,6 +23136,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21949,6 +23299,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22125,6 +23476,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22286,6 +23638,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22470,6 +23823,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22726,6 +24080,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22872,6 +24227,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23022,6 +24378,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23236,6 +24593,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud_search.query', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23432,6 +24790,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23597,6 +24956,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23786,6 +25146,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23972,6 +25333,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24112,6 +25474,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24274,6 +25637,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24437,6 +25801,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24687,6 +26052,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24859,6 +26225,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25033,6 +26400,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25173,6 +26541,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25330,6 +26699,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25495,6 +26865,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25746,6 +27117,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25928,6 +27300,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26078,6 +27451,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26279,6 +27653,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26429,6 +27804,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26635,6 +28011,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26801,6 +28178,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26951,6 +28329,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27105,6 +28484,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27266,6 +28646,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27492,6 +28873,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27642,6 +29024,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27843,6 +29226,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27854,7 +29238,7 @@ export namespace discoveryengine_v1 { * const res = * await discoveryengine.projects.locations.collections.dataStores.servingConfigs.answer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/collections/my-collection/dataStores/my-dataStore/servingConfigs/my-servingConfig', * @@ -28020,6 +29404,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28224,6 +29609,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28364,6 +29750,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28535,6 +29922,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28696,6 +30084,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28896,6 +30285,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29069,6 +30459,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29093,13 +30484,16 @@ export namespace discoveryengine_v1 { * // "canonicalFilter": "my_canonicalFilter", * // "contentSearchSpec": {}, * // "crowdingSpecs": [], + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, * // "languageCode": "my_languageCode", * // "naturalLanguageQueryUnderstandingSpec": {}, + * // "numResultsPerDataStore": 0, * // "offset": 0, * // "oneBoxPageSize": 0, * // "orderBy": "my_orderBy", @@ -29278,6 +30672,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29302,13 +30697,16 @@ export namespace discoveryengine_v1 { * // "canonicalFilter": "my_canonicalFilter", * // "contentSearchSpec": {}, * // "crowdingSpecs": [], + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, * // "languageCode": "my_languageCode", * // "naturalLanguageQueryUnderstandingSpec": {}, + * // "numResultsPerDataStore": 0, * // "offset": 0, * // "oneBoxPageSize": 0, * // "orderBy": "my_orderBy", @@ -29486,6 +30884,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29497,7 +30896,7 @@ export namespace discoveryengine_v1 { * const res = * await discoveryengine.projects.locations.collections.dataStores.servingConfigs.streamAnswer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/collections/my-collection/dataStores/my-dataStore/servingConfigs/my-servingConfig', * @@ -29641,7 +31040,7 @@ export namespace discoveryengine_v1 { export interface Params$Resource$Projects$Locations$Collections$Datastores$Servingconfigs$Answer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -29741,7 +31140,7 @@ export namespace discoveryengine_v1 { } export interface Params$Resource$Projects$Locations$Collections$Datastores$Servingconfigs$Streamanswer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -29788,6 +31187,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29802,6 +31202,8 @@ export namespace discoveryengine_v1 { * // Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` * parent: * 'projects/my-project/locations/my-location/collections/my-collection/dataStores/my-dataStore', + * // Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + * sessionId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -29969,6 +31371,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30110,6 +31513,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30273,6 +31677,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30439,6 +31844,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30598,6 +32004,10 @@ export namespace discoveryengine_v1 { * Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` */ parent?: string; + /** + * Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + */ + sessionId?: string; /** * Request body metadata @@ -30689,6 +32099,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30883,6 +32294,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31043,6 +32455,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31202,6 +32615,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31361,6 +32775,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31522,6 +32937,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31751,6 +33167,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31901,6 +33318,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32102,6 +33520,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32266,6 +33685,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32416,6 +33836,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32614,6 +34035,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32776,6 +34198,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32947,6 +34370,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33097,6 +34521,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33258,6 +34683,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33420,6 +34846,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33654,6 +35081,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33804,6 +35232,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34006,6 +35435,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34169,6 +35599,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34359,6 +35790,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34514,6 +35946,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34680,6 +36113,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34844,6 +36278,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34873,6 +36308,7 @@ export namespace discoveryengine_v1 { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -34903,6 +36339,7 @@ export namespace discoveryengine_v1 { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -35116,6 +36553,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35310,6 +36748,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35621,6 +37060,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35641,6 +37081,7 @@ export namespace discoveryengine_v1 { * requestBody: { * // request body parameters * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -35660,7 +37101,7 @@ export namespace discoveryengine_v1 { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", * // "updateTime": "my_updateTime" @@ -35805,6 +37246,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35953,6 +37395,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35969,6 +37412,7 @@ export namespace discoveryengine_v1 { * * // Example response * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -35988,7 +37432,7 @@ export namespace discoveryengine_v1 { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", * // "updateTime": "my_updateTime" @@ -36124,6 +37568,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36274,6 +37719,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36436,6 +37882,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36455,6 +37902,7 @@ export namespace discoveryengine_v1 { * requestBody: { * // request body parameters * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -36474,7 +37922,7 @@ export namespace discoveryengine_v1 { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", * // "updateTime": "my_updateTime" @@ -36485,6 +37933,7 @@ export namespace discoveryengine_v1 { * * // Example response * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -36504,7 +37953,7 @@ export namespace discoveryengine_v1 { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", * // "updateTime": "my_updateTime" @@ -36640,6 +38089,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36891,6 +38341,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36912,6 +38363,7 @@ export namespace discoveryengine_v1 { * requestBody: { * // request body parameters * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -36919,6 +38371,7 @@ export namespace discoveryengine_v1 { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * }, @@ -36928,6 +38381,7 @@ export namespace discoveryengine_v1 { * * // Example response * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -36935,6 +38389,7 @@ export namespace discoveryengine_v1 { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * } @@ -37072,6 +38527,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37213,6 +38669,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37232,6 +38689,7 @@ export namespace discoveryengine_v1 { * * // Example response * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -37239,6 +38697,7 @@ export namespace discoveryengine_v1 { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * } @@ -37373,6 +38832,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37535,6 +38995,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37555,6 +39016,7 @@ export namespace discoveryengine_v1 { * requestBody: { * // request body parameters * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -37562,6 +39024,7 @@ export namespace discoveryengine_v1 { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * }, @@ -37571,6 +39034,7 @@ export namespace discoveryengine_v1 { * * // Example response * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -37578,6 +39042,7 @@ export namespace discoveryengine_v1 { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * } @@ -37712,6 +39177,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37928,21 +39394,45 @@ export namespace discoveryengine_v1 { export class Resource$Projects$Locations$Collections$Engines$Assistants$Agents { context: APIRequestContext; - message: Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message; + a2a: Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a; operations: Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations; - tasks: Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks; constructor(context: APIRequestContext) { this.context = context; - this.message = - new Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message( + this.a2a = + new Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a( this.context ); this.operations = new Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations( this.context ); + } + } + + export class Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a { + context: APIRequestContext; + v1: Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1; + constructor(context: APIRequestContext) { + this.context = context; + this.v1 = + new Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1( + this.context + ); + } + } + + export class Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1 { + context: APIRequestContext; + message: Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message; + tasks: Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks; + constructor(context: APIRequestContext) { + this.context = context; + this.message = + new Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message( + this.context + ); this.tasks = - new Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks( + new Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks( this.context ); } @@ -37969,7 +39459,11 @@ export namespace discoveryengine_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -37978,7 +39472,7 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.getCard( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.getCard( * { * // Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release. * tenant: @@ -38023,31 +39517,31 @@ export namespace discoveryengine_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ getCard( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getcard, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Getcard, options: StreamMethodOptions ): Promise>; getCard( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getcard, + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Getcard, options?: MethodOptions ): Promise>; getCard( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getcard, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Getcard, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getCard( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getcard, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Getcard, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getCard( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getcard, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Getcard, callback: BodyResponseCallback ): void; getCard(callback: BodyResponseCallback): void; getCard( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getcard + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Getcard | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -38063,13 +39557,13 @@ export namespace discoveryengine_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getcard; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Getcard; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getcard; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Getcard; options = {}; } @@ -38083,7 +39577,10 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/{+tenant}/card').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+tenant}/a2a/v1/card').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, @@ -38105,14 +39602,14 @@ export namespace discoveryengine_v1 { } } - export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Getcard extends StandardParameters { + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Getcard extends StandardParameters { /** * Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release. */ tenant?: string; } - export class Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message { + export class Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -38140,7 +39637,11 @@ export namespace discoveryengine_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -38149,7 +39650,7 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.message.send( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.message.send( * { * // Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release. * tenant: @@ -38188,33 +39689,33 @@ export namespace discoveryengine_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ send( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Send, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Send, options: StreamMethodOptions ): Promise>; send( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Send, + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Send, options?: MethodOptions ): Promise>; send( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Send, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Send, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; send( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Send, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Send, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; send( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Send, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Send, callback: BodyResponseCallback ): void; send(callback: BodyResponseCallback): void; send( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Send + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Send | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -38230,13 +39731,13 @@ export namespace discoveryengine_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Send; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Send; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Send; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Send; options = {}; } @@ -38250,7 +39751,7 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/{+tenant}/message:send').replace( + url: (rootUrl + '/v1/{+tenant}/a2a/v1/message:send').replace( /([^:]\/)\/+/g, '$1' ), @@ -38296,7 +39797,11 @@ export namespace discoveryengine_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -38305,7 +39810,7 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.message.stream( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.message.stream( * { * // Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release. * tenant: @@ -38346,31 +39851,31 @@ export namespace discoveryengine_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ stream( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Stream, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Stream, options: StreamMethodOptions ): Promise>; stream( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Stream, + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Stream, options?: MethodOptions ): Promise>; stream( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Stream, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Stream, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; stream( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Stream, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Stream, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; stream( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Stream, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Stream, callback: BodyResponseCallback ): void; stream(callback: BodyResponseCallback): void; stream( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Stream + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Stream | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -38386,13 +39891,13 @@ export namespace discoveryengine_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Stream; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Stream; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Stream; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Stream; options = {}; } @@ -38406,7 +39911,7 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/{+tenant}/message:stream').replace( + url: (rootUrl + '/v1/{+tenant}/a2a/v1/message:stream').replace( /([^:]\/)\/+/g, '$1' ), @@ -38431,7 +39936,7 @@ export namespace discoveryengine_v1 { } } - export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Send extends StandardParameters { + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Send extends StandardParameters { /** * Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release. */ @@ -38442,7 +39947,7 @@ export namespace discoveryengine_v1 { */ requestBody?: Schema$A2aV1SendMessageRequest; } - export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Message$Stream extends StandardParameters { + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Message$Stream extends StandardParameters { /** * Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release. */ @@ -38454,14 +39959,19 @@ export namespace discoveryengine_v1 { requestBody?: Schema$A2aV1SendMessageRequest; } - export class Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations { + export class Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks { context: APIRequestContext; + pushNotificationConfigs: Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs; constructor(context: APIRequestContext) { this.context = context; + this.pushNotificationConfigs = + new Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs( + this.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. + * Cancel a task from the agent. If supported one should expect no more task updates for the task. * @example * ```js * // Before running the sample: @@ -38485,6 +39995,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -38494,21 +40005,31 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.operations.get( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.cancel( * { - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/assistants/my-assistant/agents/my-agent/operations/my-operation', + * // The resource name of the task to cancel. Format: tasks/{task_id\} + * name: 'tasks/my-task', + * // Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release. + * tenant: + * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/assistants/my-assistant/agents/my-agent', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, * }, * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, + * // "artifacts": [], + * // "contextId": "my_contextId", + * // "history": [], + * // "id": "my_id", * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "status": {} * // } * } * @@ -38524,58 +40045,54 @@ export namespace discoveryengine_v1 { * @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$Collections$Engines$Assistants$Agents$Operations$Get, + cancel( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Cancel, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get, + cancel( + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Cancel, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get, + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + cancel( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Cancel, + callback: BodyResponseCallback ): void; - get( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Cancel; options = {}; } @@ -38589,48 +40106,32 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+tenant}/a2a/v1/{+name}:cancel').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['tenant', 'name'], + pathParams: ['name', 'tenant'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get extends StandardParameters { /** - * The name of the operation resource. - */ - name?: string; - } - - export class Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks { - context: APIRequestContext; - pushNotificationConfigs: Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs; - constructor(context: APIRequestContext) { - this.context = context; - this.pushNotificationConfigs = - new Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs( - this.context - ); - } - - /** - * Cancel a task from the agent. If supported one should expect no more task updates for the task. + * Get the current state of a task from the agent. * @example * ```js * // Before running the sample: @@ -38651,7 +40152,11 @@ export namespace discoveryengine_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -38660,167 +40165,11 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.cancel( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.get( * { - * // The resource name of the task to cancel. Format: tasks/{task_id\} - * name: 'tasks/my-task', - * // Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release. - * tenant: - * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/assistants/my-assistant/agents/my-agent', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, - * }, - * ); - * console.log(res.data); - * - * // Example response - * // { - * // "artifacts": [], - * // "contextId": "my_contextId", - * // "history": [], - * // "id": "my_id", - * // "metadata": {}, - * // "status": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Collections$Engines$Assistants$Agents$Tasks$Cancel, - options: StreamMethodOptions - ): Promise>; - cancel( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Cancel, - options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Cancel, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - cancel( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - cancel( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Cancel, - callback: BodyResponseCallback - ): void; - cancel(callback: BodyResponseCallback): void; - cancel( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Cancel - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Cancel; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Cancel; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = - options.rootUrl || 'https://discoveryengine.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/{+tenant}/{+name}:cancel').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['tenant', 'name'], - pathParams: ['name', 'tenant'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Get the current state of a task from the agent. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const discoveryengine = google.discoveryengine('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.get( - * { - * // The number of most recent messages from the task's history to retrieve. - * historyLength: 'placeholder-value', - * // Required. The resource name of the task. Format: tasks/{task_id\} + * // The number of most recent messages from the task's history to retrieve. + * historyLength: 'placeholder-value', + * // Required. The resource name of the task. Format: tasks/{task_id\} * name: 'tasks/my-task', * // Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release. * tenant: @@ -38853,31 +40202,31 @@ export namespace discoveryengine_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Get, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Get, + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Get, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Get, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Get, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Get, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Get, callback: BodyResponseCallback ): void; get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Get + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -38893,13 +40242,13 @@ export namespace discoveryengine_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Get; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Get; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Get; options = {}; } @@ -38913,7 +40262,10 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/{+tenant}/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+tenant}/a2a/v1/{+name}').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, @@ -38956,7 +40308,11 @@ export namespace discoveryengine_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -38965,7 +40321,7 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.subscribe( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.subscribe( * { * // The resource name of the task to subscribe to. Format: tasks/{task_id\} * name: 'tasks/my-task', @@ -38998,31 +40354,31 @@ export namespace discoveryengine_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ subscribe( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Subscribe, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Subscribe, options: StreamMethodOptions ): Promise>; subscribe( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Subscribe, + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Subscribe, options?: MethodOptions ): Promise>; subscribe( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Subscribe, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Subscribe, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; subscribe( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Subscribe, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Subscribe, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; subscribe( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Subscribe, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Subscribe, callback: BodyResponseCallback ): void; subscribe(callback: BodyResponseCallback): void; subscribe( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Subscribe + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Subscribe | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -39038,13 +40394,13 @@ export namespace discoveryengine_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Subscribe; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Subscribe; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Subscribe; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Subscribe; options = {}; } @@ -39058,7 +40414,7 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/{+tenant}/{+name}:subscribe').replace( + url: (rootUrl + '/v1/{+tenant}/a2a/v1/{+name}:subscribe').replace( /([^:]\/)\/+/g, '$1' ), @@ -39083,7 +40439,7 @@ export namespace discoveryengine_v1 { } } - export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Cancel extends StandardParameters { + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Cancel extends StandardParameters { /** * The resource name of the task to cancel. Format: tasks/{task_id\} */ @@ -39098,7 +40454,7 @@ export namespace discoveryengine_v1 { */ requestBody?: Schema$A2aV1CancelTaskRequest; } - export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Get extends StandardParameters { /** * The number of most recent messages from the task's history to retrieve. */ @@ -39112,7 +40468,7 @@ export namespace discoveryengine_v1 { */ tenant?: string; } - export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Subscribe extends StandardParameters { + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Subscribe extends StandardParameters { /** * The resource name of the task to subscribe to. Format: tasks/{task_id\} */ @@ -39123,7 +40479,7 @@ export namespace discoveryengine_v1 { tenant?: string; } - export class Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs { + export class Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; @@ -39151,7 +40507,11 @@ export namespace discoveryengine_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -39160,7 +40520,7 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.pushNotificationConfigs.create( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.pushNotificationConfigs.create( * { * // Required. The ID for the new config. * configId: 'placeholder-value', @@ -39202,27 +40562,27 @@ export namespace discoveryengine_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Create, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Create, + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Create, options?: MethodOptions ): Promise>; create( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Create, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Create, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Create, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Create, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Create, callback: BodyResponseCallback ): void; create( @@ -39230,7 +40590,7 @@ export namespace discoveryengine_v1 { ): void; create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Create + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Create | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -39246,13 +40606,13 @@ export namespace discoveryengine_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Create; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Create; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Create; options = {}; } @@ -39266,7 +40626,7 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/{+tenant}/{+parent}').replace( + url: (rootUrl + '/v1/{+tenant}/a2a/v1/{+parent}').replace( /([^:]\/)\/+/g, '$1' ), @@ -39314,7 +40674,11 @@ export namespace discoveryengine_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -39323,7 +40687,7 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.pushNotificationConfigs.delete( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.pushNotificationConfigs.delete( * { * // The resource name of the config to delete. Format: tasks/{task_id\}/pushNotificationConfigs/{config_id\} * name: 'tasks/my-task/pushNotificationConfigs/my-pushNotificationConfig', @@ -39351,31 +40715,31 @@ export namespace discoveryengine_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Delete, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Delete, + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Delete, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Delete, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Delete, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Delete + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -39391,13 +40755,13 @@ export namespace discoveryengine_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Delete; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Delete; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Delete; options = {}; } @@ -39411,7 +40775,10 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/{+tenant}/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+tenant}/a2a/v1/{+name}').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'DELETE', apiVersion: '', }, @@ -39454,7 +40821,11 @@ export namespace discoveryengine_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -39463,7 +40834,7 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.pushNotificationConfigs.get( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.pushNotificationConfigs.get( * { * // The resource name of the config to retrieve. Format: tasks/{task_id\}/pushNotificationConfigs/{config_id\} * name: 'tasks/my-task/pushNotificationConfigs/my-pushNotificationConfig', @@ -39494,27 +40865,27 @@ export namespace discoveryengine_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Get, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Get, + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Get, options?: MethodOptions ): Promise>; get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Get, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Get, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Get, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Get, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Get, callback: BodyResponseCallback ): void; get( @@ -39522,7 +40893,7 @@ export namespace discoveryengine_v1 { ): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Get + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -39538,13 +40909,13 @@ export namespace discoveryengine_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Get; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Get; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Get; options = {}; } @@ -39558,7 +40929,10 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/{+tenant}/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+tenant}/a2a/v1/{+name}').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, @@ -39603,7 +40977,11 @@ export namespace discoveryengine_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -39612,7 +40990,7 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.assistants.agents.tasks.pushNotificationConfigs.list( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.a2a.v1.tasks.pushNotificationConfigs.list( * { * // For AIP-158 these fields are present. Usually not used/needed. The maximum number of configurations to return. If unspecified, all configs will be returned. * pageSize: 'placeholder-value', @@ -39647,29 +41025,29 @@ export namespace discoveryengine_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$List, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$List, + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$List, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$List, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$List, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$List, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$List, + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$List, callback: BodyResponseCallback ): void; list( @@ -39677,7 +41055,7 @@ export namespace discoveryengine_v1 { ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$List + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$List | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -39695,13 +41073,13 @@ export namespace discoveryengine_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$List; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$List; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$List; options = {}; } @@ -39716,7 +41094,7 @@ export namespace discoveryengine_v1 { options: Object.assign( { url: ( - rootUrl + '/{+tenant}/{+parent}/pushNotificationConfigs' + rootUrl + '/v1/{+tenant}/a2a/v1/{+parent}/pushNotificationConfigs' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -39741,7 +41119,7 @@ export namespace discoveryengine_v1 { } } - export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Create extends StandardParameters { + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Create extends StandardParameters { /** * Required. The ID for the new config. */ @@ -39760,7 +41138,7 @@ export namespace discoveryengine_v1 { */ requestBody?: Schema$A2aV1TaskPushNotificationConfig; } - export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Delete extends StandardParameters { /** * The resource name of the config to delete. Format: tasks/{task_id\}/pushNotificationConfigs/{config_id\} */ @@ -39770,7 +41148,7 @@ export namespace discoveryengine_v1 { */ tenant?: string; } - export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$Get extends StandardParameters { /** * The resource name of the config to retrieve. Format: tasks/{task_id\}/pushNotificationConfigs/{config_id\} */ @@ -39780,7 +41158,7 @@ export namespace discoveryengine_v1 { */ tenant?: string; } - export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Tasks$Pushnotificationconfigs$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$A2a$V1$Tasks$Pushnotificationconfigs$List extends StandardParameters { /** * For AIP-158 these fields are present. Usually not used/needed. The maximum number of configurations to return. If unspecified, all configs will be returned. */ @@ -39799,14 +41177,14 @@ export namespace discoveryengine_v1 { tenant?: string; } - export class Resource$Projects$Locations$Collections$Engines$Completionconfig { + export class Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Completes the user input with advanced keyword suggestions. + * 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. * @example * ```js * // Before running the sample: @@ -39829,9 +41207,8 @@ export namespace discoveryengine_v1 { * // Scopes can be specified either as an array or as a single, space-delimited string. * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud_search.query', - * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -39841,38 +41218,21 @@ export namespace discoveryengine_v1 { * * // Do the magic * const res = - * await discoveryengine.projects.locations.collections.engines.completionConfig.completeQuery( + * await discoveryengine.projects.locations.collections.engines.assistants.agents.operations.get( * { - * // Required. The completion_config of the parent dataStore or engine resource name for which the completion is performed, such as `projects/x/locations/global/collections/default_collection/dataStores/x/completionConfig` `projects/x/locations/global/collections/default_collection/engines/x/completionConfig`. - * completionConfig: - * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/completionConfig', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "boostSpec": {}, - * // "experimentIds": [], - * // "includeTailSuggestions": false, - * // "query": "my_query", - * // "queryModel": "my_queryModel", - * // "suggestionTypeSpecs": [], - * // "suggestionTypes": [], - * // "userInfo": {}, - * // "userPseudoId": "my_userPseudoId" - * // } - * }, + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/assistants/my-assistant/agents/my-agent/operations/my-operation', * }, * ); * console.log(res.data); * * // Example response * // { - * // "contentSuggestions": [], - * // "peopleSuggestions": [], - * // "querySuggestions": [], - * // "recentSearchSuggestions": [], - * // "tailMatchTriggered": false + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -39888,62 +41248,58 @@ export namespace discoveryengine_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - completeQuery( - params: Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery, + get( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get, options: StreamMethodOptions ): Promise>; - completeQuery( - params?: Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery, + get( + params?: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - completeQuery( - params: Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - completeQuery( - params: Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery, + get( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - completeQuery( - params: Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get, + callback: BodyResponseCallback ): void; - completeQuery( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - completeQuery( + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery - | BodyResponseCallback + | Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery; + {}) as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery; + {} as Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get; options = {}; } @@ -39957,53 +41313,241 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+completionConfig}:completeQuery').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['completionConfig'], - pathParams: ['completionConfig'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery extends StandardParameters { - /** - * Required. The completion_config of the parent dataStore or engine resource name for which the completion is performed, such as `projects/x/locations/global/collections/default_collection/dataStores/x/completionConfig` `projects/x/locations/global/collections/default_collection/engines/x/completionConfig`. - */ - completionConfig?: string; - + export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$Operations$Get extends StandardParameters { /** - * Request body metadata + * The name of the operation resource. */ - requestBody?: Schema$GoogleCloudDiscoveryengineV1AdvancedCompleteQueryRequest; + name?: string; } - export class Resource$Projects$Locations$Collections$Engines$Controls { + export class Resource$Projects$Locations$Collections$Engines$Completionconfig { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Creates a Control. By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the Control to create already exists, an ALREADY_EXISTS error is returned. + * Completes the user input with advanced keyword suggestions. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const discoveryengine = google.discoveryengine('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud_search.query', + * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await discoveryengine.projects.locations.collections.engines.completionConfig.completeQuery( + * { + * // Required. The completion_config of the parent dataStore or engine resource name for which the completion is performed, such as `projects/x/locations/global/collections/default_collection/dataStores/x/completionConfig` `projects/x/locations/global/collections/default_collection/engines/x/completionConfig`. + * completionConfig: + * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/completionConfig', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "boostSpec": {}, + * // "experimentIds": [], + * // "includeTailSuggestions": false, + * // "query": "my_query", + * // "queryModel": "my_queryModel", + * // "suggestionTypeSpecs": [], + * // "suggestionTypes": [], + * // "userInfo": {}, + * // "userPseudoId": "my_userPseudoId" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "contentSuggestions": [], + * // "peopleSuggestions": [], + * // "querySuggestions": [], + * // "recentSearchSuggestions": [], + * // "tailMatchTriggered": false + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + completeQuery( + params: Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery, + options: StreamMethodOptions + ): Promise>; + completeQuery( + params?: Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + completeQuery( + params: Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + completeQuery( + params: Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + completeQuery( + params: Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery, + callback: BodyResponseCallback + ): void; + completeQuery( + callback: BodyResponseCallback + ): void; + completeQuery( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://discoveryengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+completionConfig}:completeQuery').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['completionConfig'], + pathParams: ['completionConfig'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Collections$Engines$Completionconfig$Completequery extends StandardParameters { + /** + * Required. The completion_config of the parent dataStore or engine resource name for which the completion is performed, such as `projects/x/locations/global/collections/default_collection/dataStores/x/completionConfig` `projects/x/locations/global/collections/default_collection/engines/x/completionConfig`. + */ + completionConfig?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1AdvancedCompleteQueryRequest; + } + + export class Resource$Projects$Locations$Collections$Engines$Controls { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a Control. By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the Control to create already exists, an ALREADY_EXISTS error is returned. * @example * ```js * // Before running the sample: @@ -40027,6 +41571,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40213,6 +41758,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40353,6 +41899,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40513,6 +42060,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40674,6 +42222,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40924,6 +42473,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41096,6 +42646,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41270,6 +42821,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41410,6 +42962,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41567,6 +43120,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41732,6 +43286,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41983,6 +43538,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42129,6 +43685,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42279,6 +43836,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42491,6 +44049,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42502,7 +44061,7 @@ export namespace discoveryengine_v1 { * const res = * await discoveryengine.projects.locations.collections.engines.servingConfigs.answer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/servingConfigs/my-servingConfig', * @@ -42668,6 +44227,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42872,6 +44432,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43012,6 +44573,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43183,6 +44745,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43344,6 +44907,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43544,6 +45108,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43717,6 +45282,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43741,13 +45307,16 @@ export namespace discoveryengine_v1 { * // "canonicalFilter": "my_canonicalFilter", * // "contentSearchSpec": {}, * // "crowdingSpecs": [], + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, * // "languageCode": "my_languageCode", * // "naturalLanguageQueryUnderstandingSpec": {}, + * // "numResultsPerDataStore": 0, * // "offset": 0, * // "oneBoxPageSize": 0, * // "orderBy": "my_orderBy", @@ -43926,6 +45495,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43950,13 +45520,16 @@ export namespace discoveryengine_v1 { * // "canonicalFilter": "my_canonicalFilter", * // "contentSearchSpec": {}, * // "crowdingSpecs": [], + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, * // "languageCode": "my_languageCode", * // "naturalLanguageQueryUnderstandingSpec": {}, + * // "numResultsPerDataStore": 0, * // "offset": 0, * // "oneBoxPageSize": 0, * // "orderBy": "my_orderBy", @@ -44134,6 +45707,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44145,7 +45719,7 @@ export namespace discoveryengine_v1 { * const res = * await discoveryengine.projects.locations.collections.engines.servingConfigs.streamAnswer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/servingConfigs/my-servingConfig', * @@ -44289,7 +45863,7 @@ export namespace discoveryengine_v1 { export interface Params$Resource$Projects$Locations$Collections$Engines$Servingconfigs$Answer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -44389,7 +45963,7 @@ export namespace discoveryengine_v1 { } export interface Params$Resource$Projects$Locations$Collections$Engines$Servingconfigs$Streamanswer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -44436,6 +46010,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44450,6 +46025,8 @@ export namespace discoveryengine_v1 { * // Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` * parent: * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine', + * // Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + * sessionId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -44617,6 +46194,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44758,6 +46336,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44919,6 +46498,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45083,6 +46663,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45242,6 +46823,10 @@ export namespace discoveryengine_v1 { * Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` */ parent?: string; + /** + * Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + */ + sessionId?: string; /** * Request body metadata @@ -45333,6 +46918,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45513,6 +47099,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45707,6 +47294,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45978,6 +47566,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46126,6 +47715,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46383,6 +47973,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46547,6 +48138,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46584,6 +48176,7 @@ export namespace discoveryengine_v1 { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -46735,6 +48328,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46881,6 +48475,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46908,6 +48503,7 @@ export namespace discoveryengine_v1 { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -47050,6 +48646,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47200,6 +48797,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47358,6 +48956,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47387,6 +48986,7 @@ export namespace discoveryengine_v1 { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -47416,6 +49016,7 @@ export namespace discoveryengine_v1 { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -47680,6 +49281,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47862,6 +49464,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48048,6 +49651,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48188,6 +49792,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48348,6 +49953,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48524,6 +50130,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48685,6 +50292,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48869,6 +50477,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49125,6 +50734,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49271,6 +50881,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49421,6 +51032,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49635,6 +51247,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud_search.query', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49831,6 +51444,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49996,6 +51610,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50185,6 +51800,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50369,6 +51985,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50507,6 +52124,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50666,6 +52284,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50828,6 +52447,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51076,6 +52696,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51246,6 +52867,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51418,6 +53040,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51556,6 +53179,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51711,6 +53335,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51874,6 +53499,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52135,6 +53761,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52283,6 +53910,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52482,6 +54110,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52630,6 +54259,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52829,6 +54459,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52993,6 +54624,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53141,6 +54773,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53292,6 +54925,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53449,6 +55083,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53674,6 +55309,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53684,7 +55320,7 @@ export namespace discoveryengine_v1 { * // Do the magic * const res = * await discoveryengine.projects.locations.dataStores.servingConfigs.answer({ - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/dataStores/my-dataStore/servingConfigs/my-servingConfig', * @@ -53849,6 +55485,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54051,6 +55688,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54189,6 +55827,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54358,6 +55997,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54517,6 +56157,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54715,6 +56356,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54888,6 +56530,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54911,13 +56554,16 @@ export namespace discoveryengine_v1 { * // "canonicalFilter": "my_canonicalFilter", * // "contentSearchSpec": {}, * // "crowdingSpecs": [], + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, * // "languageCode": "my_languageCode", * // "naturalLanguageQueryUnderstandingSpec": {}, + * // "numResultsPerDataStore": 0, * // "offset": 0, * // "oneBoxPageSize": 0, * // "orderBy": "my_orderBy", @@ -55095,6 +56741,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55119,13 +56766,16 @@ export namespace discoveryengine_v1 { * // "canonicalFilter": "my_canonicalFilter", * // "contentSearchSpec": {}, * // "crowdingSpecs": [], + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, * // "languageCode": "my_languageCode", * // "naturalLanguageQueryUnderstandingSpec": {}, + * // "numResultsPerDataStore": 0, * // "offset": 0, * // "oneBoxPageSize": 0, * // "orderBy": "my_orderBy", @@ -55303,6 +56953,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55314,7 +56965,7 @@ export namespace discoveryengine_v1 { * const res = * await discoveryengine.projects.locations.dataStores.servingConfigs.streamAnswer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/dataStores/my-dataStore/servingConfigs/my-servingConfig', * @@ -55458,7 +57109,7 @@ export namespace discoveryengine_v1 { export interface Params$Resource$Projects$Locations$Datastores$Servingconfigs$Answer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -55558,7 +57209,7 @@ export namespace discoveryengine_v1 { } export interface Params$Resource$Projects$Locations$Datastores$Servingconfigs$Streamanswer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -55605,6 +57256,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55618,6 +57270,8 @@ export namespace discoveryengine_v1 { * // Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` * parent: * 'projects/my-project/locations/my-location/dataStores/my-dataStore', + * // Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + * sessionId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -55784,6 +57438,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55923,6 +57578,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56083,6 +57739,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56248,6 +57905,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56405,6 +58063,10 @@ export namespace discoveryengine_v1 { * Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` */ parent?: string; + /** + * Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + */ + sessionId?: string; /** * Request body metadata @@ -56496,6 +58158,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56683,6 +58346,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56842,6 +58506,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57001,6 +58666,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57205,6 +58871,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57369,6 +59036,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57519,6 +59187,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57712,6 +59381,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57874,6 +59544,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58045,6 +59716,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58195,6 +59867,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58356,6 +60029,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58518,6 +60192,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58753,6 +60428,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58916,6 +60592,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59105,6 +60782,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59258,6 +60936,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59422,6 +61101,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59584,6 +61264,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59612,6 +61293,7 @@ export namespace discoveryengine_v1 { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -59641,6 +61323,7 @@ export namespace discoveryengine_v1 { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -59854,6 +61537,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60046,6 +61730,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60315,6 +62000,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60506,6 +62192,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60677,6 +62364,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60825,6 +62513,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60977,6 +62666,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61138,6 +62828,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61296,6 +62987,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61456,6 +63148,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61712,6 +63405,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61862,6 +63556,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62063,6 +63758,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62246,6 +63942,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62405,6 +64102,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62629,6 +64327,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62775,6 +64474,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62983,6 +64683,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63144,6 +64845,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63329,6 +65031,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63479,6 +65182,7 @@ export namespace discoveryengine_v1 { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63526,462 +65230,36 @@ export namespace discoveryengine_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - import( - params: Params$Resource$Projects$Locations$Userevents$Import, - options: StreamMethodOptions - ): Promise>; - import( - params?: Params$Resource$Projects$Locations$Userevents$Import, - options?: MethodOptions - ): Promise>; - import( - params: Params$Resource$Projects$Locations$Userevents$Import, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - import( - params: Params$Resource$Projects$Locations$Userevents$Import, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - import( - params: Params$Resource$Projects$Locations$Userevents$Import, - callback: BodyResponseCallback - ): void; - import( - callback: BodyResponseCallback - ): void; - import( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Userevents$Import - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Userevents$Import; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Userevents$Import; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = - options.rootUrl || 'https://discoveryengine.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/userEvents:import').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Writes a single user event. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const discoveryengine = google.discoveryengine('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', - * 'https://www.googleapis.com/auth/discoveryengine.readwrite', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await discoveryengine.projects.locations.userEvents.write({ - * // Required. The parent resource name. If the write user event action is applied in DataStore level, the format is: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}`. If the write user event action is applied in Location level, for example, the event with Document across multiple DataStore, the format is: `projects/{project\}/locations/{location\}`. - * parent: 'projects/my-project/locations/my-location', - * // If set to true, the user event is written asynchronously after validation, and the API responds without waiting for the write. - * writeAsync: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "attributes": {}, - * // "attributionToken": "my_attributionToken", - * // "completionInfo": {}, - * // "conversionType": "my_conversionType", - * // "dataStore": "my_dataStore", - * // "directUserRequest": false, - * // "documents": [], - * // "engine": "my_engine", - * // "eventTime": "my_eventTime", - * // "eventType": "my_eventType", - * // "filter": "my_filter", - * // "mediaInfo": {}, - * // "pageInfo": {}, - * // "panel": {}, - * // "panels": [], - * // "promotionIds": [], - * // "searchInfo": {}, - * // "sessionId": "my_sessionId", - * // "tagIds": [], - * // "transactionInfo": {}, - * // "userInfo": {}, - * // "userPseudoId": "my_userPseudoId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "attributes": {}, - * // "attributionToken": "my_attributionToken", - * // "completionInfo": {}, - * // "conversionType": "my_conversionType", - * // "dataStore": "my_dataStore", - * // "directUserRequest": false, - * // "documents": [], - * // "engine": "my_engine", - * // "eventTime": "my_eventTime", - * // "eventType": "my_eventType", - * // "filter": "my_filter", - * // "mediaInfo": {}, - * // "pageInfo": {}, - * // "panel": {}, - * // "panels": [], - * // "promotionIds": [], - * // "searchInfo": {}, - * // "sessionId": "my_sessionId", - * // "tagIds": [], - * // "transactionInfo": {}, - * // "userInfo": {}, - * // "userPseudoId": "my_userPseudoId" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - write( - params: Params$Resource$Projects$Locations$Userevents$Write, - options: StreamMethodOptions - ): Promise>; - write( - params?: Params$Resource$Projects$Locations$Userevents$Write, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - write( - params: Params$Resource$Projects$Locations$Userevents$Write, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - write( - params: Params$Resource$Projects$Locations$Userevents$Write, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - write( - params: Params$Resource$Projects$Locations$Userevents$Write, - callback: BodyResponseCallback - ): void; - write( - callback: BodyResponseCallback - ): void; - write( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Userevents$Write - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Userevents$Write; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Userevents$Write; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = - options.rootUrl || 'https://discoveryengine.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/userEvents:write').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - 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$Userevents$Collect extends StandardParameters { - /** - * The event timestamp in milliseconds. This prevents browser caching of otherwise identical get requests. The name is abbreviated to reduce the payload bytes. - */ - ets?: string; - /** - * Required. The parent resource name. If the collect user event action is applied in DataStore level, the format is: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}`. If the collect user event action is applied in Location level, for example, the event with Document across multiple DataStore, the format is: `projects/{project\}/locations/{location\}`. - */ - parent?: string; - /** - * The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for third-party requests. - */ - uri?: string; - /** - * Required. URL encoded UserEvent proto with a length limit of 2,000,000 characters. - */ - userEvent?: string; - } - export interface Params$Resource$Projects$Locations$Userevents$Import extends StandardParameters { - /** - * Required. Parent DataStore resource name, of the form `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}` - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDiscoveryengineV1ImportUserEventsRequest; - } - export interface Params$Resource$Projects$Locations$Userevents$Write extends StandardParameters { - /** - * Required. The parent resource name. If the write user event action is applied in DataStore level, the format is: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}`. If the write user event action is applied in Location level, for example, the event with Document across multiple DataStore, the format is: `projects/{project\}/locations/{location\}`. - */ - parent?: string; - /** - * If set to true, the user event is written asynchronously after validation, and the API responds without waiting for the write. - */ - writeAsync?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDiscoveryengineV1UserEvent; - } - - export class Resource$Projects$Locations$Userstores { - context: APIRequestContext; - licenseConfigsUsageStats: Resource$Projects$Locations$Userstores$Licenseconfigsusagestats; - userLicenses: Resource$Projects$Locations$Userstores$Userlicenses; - constructor(context: APIRequestContext) { - this.context = context; - this.licenseConfigsUsageStats = - new Resource$Projects$Locations$Userstores$Licenseconfigsusagestats( - this.context - ); - this.userLicenses = - new Resource$Projects$Locations$Userstores$Userlicenses(this.context); - } - - /** - * Updates the User License. This method is used for batch assign/unassign licenses to users. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const discoveryengine = google.discoveryengine('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/discoveryengine.readwrite', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await discoveryengine.projects.locations.userStores.batchUpdateUserLicenses( - * { - * // Required. The parent UserStore resource name, format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}`. - * parent: - * 'projects/my-project/locations/my-location/userStores/my-userStore', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "deleteUnassignedUserLicenses": false, - * // "inlineSource": {} - * // } - * }, - * }, - * ); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - batchUpdateUserLicenses( - params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, + import( + params: Params$Resource$Projects$Locations$Userevents$Import, options: StreamMethodOptions ): Promise>; - batchUpdateUserLicenses( - params?: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, + import( + params?: Params$Resource$Projects$Locations$Userevents$Import, options?: MethodOptions ): Promise>; - batchUpdateUserLicenses( - params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, + import( + params: Params$Resource$Projects$Locations$Userevents$Import, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - batchUpdateUserLicenses( - params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, + import( + params: Params$Resource$Projects$Locations$Userevents$Import, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - batchUpdateUserLicenses( - params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, + import( + params: Params$Resource$Projects$Locations$Userevents$Import, callback: BodyResponseCallback ): void; - batchUpdateUserLicenses( + import( callback: BodyResponseCallback ): void; - batchUpdateUserLicenses( + import( paramsOrCallback?: - | Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses + | Params$Resource$Projects$Locations$Userevents$Import | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -63997,13 +65275,12 @@ export namespace discoveryengine_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses; + {}) as Params$Resource$Projects$Locations$Userevents$Import; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses; + params = {} as Params$Resource$Projects$Locations$Userevents$Import; options = {}; } @@ -64017,7 +65294,7 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}:batchUpdateUserLicenses').replace( + url: (rootUrl + '/v1/{+parent}/userEvents:import').replace( /([^:]\/)\/+/g, '$1' ), @@ -64042,7 +65319,7 @@ export namespace discoveryengine_v1 { } /** - * Creates a new User Store. + * Writes a single user event. * @example * ```js * // Before running the sample: @@ -64065,7 +65342,9 @@ export namespace discoveryengine_v1 { * // Scopes can be specified either as an array or as a single, space-delimited string. * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64074,21 +65353,39 @@ export namespace discoveryengine_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await discoveryengine.projects.locations.userStores.create({ - * // Required. The parent collection resource name, such as `projects/{project\}/locations/{location\}`. + * const res = await discoveryengine.projects.locations.userEvents.write({ + * // Required. The parent resource name. If the write user event action is applied in DataStore level, the format is: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}`. If the write user event action is applied in Location level, for example, the event with Document across multiple DataStore, the format is: `projects/{project\}/locations/{location\}`. * parent: 'projects/my-project/locations/my-location', - * // Required. The ID of the User Store to create. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 63 characters. - * userStoreId: 'placeholder-value', + * // If set to true, the user event is written asynchronously after validation, and the API responds without waiting for the write. + * writeAsync: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "defaultLicenseConfig": "my_defaultLicenseConfig", - * // "displayName": "my_displayName", - * // "enableExpiredLicenseAutoUpdate": false, - * // "enableLicenseAutoRegister": false, - * // "name": "my_name" + * // "attributes": {}, + * // "attributionToken": "my_attributionToken", + * // "completionInfo": {}, + * // "conversionType": "my_conversionType", + * // "dataStore": "my_dataStore", + * // "directUserRequest": false, + * // "documents": [], + * // "engine": "my_engine", + * // "entity": "my_entity", + * // "eventTime": "my_eventTime", + * // "eventType": "my_eventType", + * // "filter": "my_filter", + * // "mediaInfo": {}, + * // "pageInfo": {}, + * // "panel": {}, + * // "panels": [], + * // "promotionIds": [], + * // "searchInfo": {}, + * // "sessionId": "my_sessionId", + * // "tagIds": [], + * // "transactionInfo": {}, + * // "userInfo": {}, + * // "userPseudoId": "my_userPseudoId" * // } * }, * }); @@ -64096,11 +65393,29 @@ export namespace discoveryengine_v1 { * * // Example response * // { - * // "defaultLicenseConfig": "my_defaultLicenseConfig", - * // "displayName": "my_displayName", - * // "enableExpiredLicenseAutoUpdate": false, - * // "enableLicenseAutoRegister": false, - * // "name": "my_name" + * // "attributes": {}, + * // "attributionToken": "my_attributionToken", + * // "completionInfo": {}, + * // "conversionType": "my_conversionType", + * // "dataStore": "my_dataStore", + * // "directUserRequest": false, + * // "documents": [], + * // "engine": "my_engine", + * // "entity": "my_entity", + * // "eventTime": "my_eventTime", + * // "eventType": "my_eventType", + * // "filter": "my_filter", + * // "mediaInfo": {}, + * // "pageInfo": {}, + * // "panel": {}, + * // "panels": [], + * // "promotionIds": [], + * // "searchInfo": {}, + * // "sessionId": "my_sessionId", + * // "tagIds": [], + * // "transactionInfo": {}, + * // "userInfo": {}, + * // "userPseudoId": "my_userPseudoId" * // } * } * @@ -64116,61 +65431,61 @@ export namespace discoveryengine_v1 { * @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$Userstores$Create, + write( + params: Params$Resource$Projects$Locations$Userevents$Write, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Userstores$Create, + write( + params?: Params$Resource$Projects$Locations$Userevents$Write, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - create( - params: Params$Resource$Projects$Locations$Userstores$Create, + write( + params: Params$Resource$Projects$Locations$Userevents$Write, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Userstores$Create, + write( + params: Params$Resource$Projects$Locations$Userevents$Write, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Userstores$Create, - callback: BodyResponseCallback + write( + params: Params$Resource$Projects$Locations$Userevents$Write, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + write( + callback: BodyResponseCallback ): void; - create( + write( paramsOrCallback?: - | Params$Resource$Projects$Locations$Userstores$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Userevents$Write + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Userstores$Create; + {}) as Params$Resource$Projects$Locations$Userevents$Write; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Userstores$Create; + params = {} as Params$Resource$Projects$Locations$Userevents$Write; options = {}; } @@ -64184,7 +65499,7 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/userStores').replace( + url: (rootUrl + '/v1/{+parent}/userEvents:write').replace( /([^:]\/)\/+/g, '$1' ), @@ -64199,19 +65514,79 @@ export namespace discoveryengine_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } + } + + export interface Params$Resource$Projects$Locations$Userevents$Collect extends StandardParameters { + /** + * The event timestamp in milliseconds. This prevents browser caching of otherwise identical get requests. The name is abbreviated to reduce the payload bytes. + */ + ets?: string; + /** + * Required. The parent resource name. If the collect user event action is applied in DataStore level, the format is: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}`. If the collect user event action is applied in Location level, for example, the event with Document across multiple DataStore, the format is: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + /** + * The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for third-party requests. + */ + uri?: string; + /** + * Required. URL encoded UserEvent proto with a length limit of 2,000,000 characters. + */ + userEvent?: string; + } + export interface Params$Resource$Projects$Locations$Userevents$Import extends StandardParameters { + /** + * Required. Parent DataStore resource name, of the form `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}` + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1ImportUserEventsRequest; + } + export interface Params$Resource$Projects$Locations$Userevents$Write extends StandardParameters { + /** + * Required. The parent resource name. If the write user event action is applied in DataStore level, the format is: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}`. If the write user event action is applied in Location level, for example, the event with Document across multiple DataStore, the format is: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + /** + * If set to true, the user event is written asynchronously after validation, and the API responds without waiting for the write. + */ + writeAsync?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1UserEvent; + } + + export class Resource$Projects$Locations$Userstores { + context: APIRequestContext; + licenseConfigsUsageStats: Resource$Projects$Locations$Userstores$Licenseconfigsusagestats; + userLicenses: Resource$Projects$Locations$Userstores$Userlicenses; + constructor(context: APIRequestContext) { + this.context = context; + this.licenseConfigsUsageStats = + new Resource$Projects$Locations$Userstores$Licenseconfigsusagestats( + this.context + ); + this.userLicenses = + new Resource$Projects$Locations$Userstores$Userlicenses(this.context); + } /** - * Deletes the User Store. + * Updates the User License. This method is used for batch assign/unassign licenses to users. * @example * ```js * // Before running the sample: @@ -64235,6 +65610,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64243,10 +65619,23 @@ export namespace discoveryengine_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await discoveryengine.projects.locations.userStores.delete({ - * // Required. The name of the User Store to delete. Format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}` - * name: 'projects/my-project/locations/my-location/userStores/my-userStore', - * }); + * const res = + * await discoveryengine.projects.locations.userStores.batchUpdateUserLicenses( + * { + * // Required. The parent UserStore resource name, format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}`. + * parent: + * 'projects/my-project/locations/my-location/userStores/my-userStore', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "deleteUnassignedUserLicenses": false, + * // "inlineSource": {} + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response @@ -64271,36 +65660,36 @@ export namespace discoveryengine_v1 { * @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$Userstores$Delete, + batchUpdateUserLicenses( + params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Userstores$Delete, + batchUpdateUserLicenses( + params?: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Userstores$Delete, + batchUpdateUserLicenses( + params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Userstores$Delete, + batchUpdateUserLicenses( + params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Userstores$Delete, + batchUpdateUserLicenses( + params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, callback: BodyResponseCallback ): void; - delete( + batchUpdateUserLicenses( callback: BodyResponseCallback ): void; - delete( + batchUpdateUserLicenses( paramsOrCallback?: - | Params$Resource$Projects$Locations$Userstores$Delete + | Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -64316,12 +65705,13 @@ export namespace discoveryengine_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Userstores$Delete; + {}) as Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Userstores$Delete; + params = + {} as Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses; options = {}; } @@ -64335,15 +65725,18 @@ export namespace discoveryengine_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+parent}:batchUpdateUserLicenses').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { @@ -64381,6 +65774,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64533,6 +65927,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64686,27 +66081,6 @@ export namespace discoveryengine_v1 { */ requestBody?: Schema$GoogleCloudDiscoveryengineV1BatchUpdateUserLicensesRequest; } - export interface Params$Resource$Projects$Locations$Userstores$Create extends StandardParameters { - /** - * Required. The parent collection resource name, such as `projects/{project\}/locations/{location\}`. - */ - parent?: string; - /** - * Required. The ID of the User Store to create. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 63 characters. - */ - userStoreId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDiscoveryengineV1UserStore; - } - export interface Params$Resource$Projects$Locations$Userstores$Delete extends StandardParameters { - /** - * Required. The name of the User Store to delete. Format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}` - */ - name?: string; - } export interface Params$Resource$Projects$Locations$Userstores$Get extends StandardParameters { /** * Required. The name of the User Store to get. Format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}` @@ -64760,6 +66134,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64930,6 +66305,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64940,7 +66316,9 @@ export namespace discoveryengine_v1 { * // Do the magic * const res = * await discoveryengine.projects.locations.userStores.userLicenses.list({ - * // Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a " desc" suffix. Redundant space characters in the syntax are insignificant. Supported fields: * `license_assignment_state` * `user_principal` * `user_profile` * `last_login_date` * `update_time` If not set, the default ordering is by `user_principal`. Examples: * `user_principal desc` to order by `user_principal` in descending order. * `license_assignment_state` to order by `license_assignment_state` in ascending order. * `last_login_date desc` to order by `last_login_date` in descending order. * `update_time desc` to order by `update_time` in descending order. * `last_login_date desc, user_principal` to order by `last_login_date` in descending order and then by `user_principal` in ascending order. + * // Optional. Filter for the list request. Supported fields: * `license_assignment_state` * `user_principal` * Examples: * `license_assignment_state = ASSIGNED` to list assigned user licenses. * `license_assignment_state = NO_LICENSE` to list not licensed users. * `license_assignment_state = NO_LICENSE_ATTEMPTED_LOGIN` to list users who attempted login but no license assigned. * `license_assignment_state != NO_LICENSE_ATTEMPTED_LOGIN` to filter out users who attempted login but no license assigned. * `user_principal = user1@example.com` to list user license for `user1@example.com`. + * filter: 'placeholder-value', + * // Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a " desc" suffix. Redundant space characters in the syntax are insignificant. Supported fields (only `user_principal` is supported for now): * `user_principal` If not set, the default ordering is by `user_principal`. Examples: * `user_principal` to order by `user_principal` in ascending order. * `user_principal desc` to order by `user_principal` in descending order. * orderBy: 'placeholder-value', * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, defaults to 10. The maximum value is 50; values above 50 will be coerced to 50. If this field is negative, an INVALID_ARGUMENT error is returned. * pageSize: 'placeholder-value', @@ -65069,7 +66447,11 @@ export namespace discoveryengine_v1 { export interface Params$Resource$Projects$Locations$Userstores$Userlicenses$List extends StandardParameters { /** - * Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a " desc" suffix. Redundant space characters in the syntax are insignificant. Supported fields: * `license_assignment_state` * `user_principal` * `user_profile` * `last_login_date` * `update_time` If not set, the default ordering is by `user_principal`. Examples: * `user_principal desc` to order by `user_principal` in descending order. * `license_assignment_state` to order by `license_assignment_state` in ascending order. * `last_login_date desc` to order by `last_login_date` in descending order. * `update_time desc` to order by `update_time` in descending order. * `last_login_date desc, user_principal` to order by `last_login_date` in descending order and then by `user_principal` in ascending order. + * Optional. Filter for the list request. Supported fields: * `license_assignment_state` * `user_principal` * Examples: * `license_assignment_state = ASSIGNED` to list assigned user licenses. * `license_assignment_state = NO_LICENSE` to list not licensed users. * `license_assignment_state = NO_LICENSE_ATTEMPTED_LOGIN` to list users who attempted login but no license assigned. * `license_assignment_state != NO_LICENSE_ATTEMPTED_LOGIN` to filter out users who attempted login but no license assigned. * `user_principal = user1@example.com` to list user license for `user1@example.com`. + */ + filter?: string; + /** + * Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a " desc" suffix. Redundant space characters in the syntax are insignificant. Supported fields (only `user_principal` is supported for now): * `user_principal` If not set, the default ordering is by `user_principal`. Examples: * `user_principal` to order by `user_principal` in ascending order. * `user_principal desc` to order by `user_principal` in descending order. */ orderBy?: string; /** @@ -65117,6 +66499,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -65259,6 +66642,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -65405,6 +66789,7 @@ export namespace discoveryengine_v1 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * diff --git a/src/apis/discoveryengine/v1alpha.ts b/src/apis/discoveryengine/v1alpha.ts index 824392fa51c..68d54f82e9e 100644 --- a/src/apis/discoveryengine/v1alpha.ts +++ b/src/apis/discoveryengine/v1alpha.ts @@ -461,6 +461,10 @@ export namespace discoveryengine_v1alpha { * Optional. Action parameters in structured json format. */ actionParams?: {[key: string]: any} | null; + /** + * Optional. Whether to create a BAP connection for the connector. + */ + createBapConnection?: boolean | null; /** * Output only. The connector contains the necessary parameters and is configured to support actions. */ @@ -473,11 +477,26 @@ export namespace discoveryengine_v1alpha { * Optional. The Service Directory resource name (projects/x/locations/x/namespaces/x/services/x) representing a VPC network endpoint used to connect to the data source's `instance_uri`, defined in DataConnector.params. Required when VPC Service Controls are enabled. */ serviceName?: string | null; + /** + * Optional. Mapping from operation name to the list of scopes. Only be populated if there are user specified scopes. + */ + userDefinedScopesMapping?: { + [key: string]: Schema$GoogleCloudDiscoveryengineV1ActionConfigScopeList; + } | null; /** * Optional. Whether to use static secrets for the connector. If true, the secrets provided in the action_params will be ignored. */ useStaticSecrets?: boolean | null; } + /** + * Stores a list of scopes. + */ + export interface Schema$GoogleCloudDiscoveryengineV1ActionConfigScopeList { + /** + * Optional. The list of scopes. + */ + scopes?: string[] | null; + } /** * Configuration data for advance site search. */ @@ -491,6 +510,24 @@ export namespace discoveryengine_v1alpha { */ disableInitialIndex?: boolean | null; } + /** + * Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1AgentGatewaySetting { + /** + * Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE. + */ + defaultEgressAgentGateway?: Schema$GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference; + } + /** + * Reference to an Agent Gateway resource. + */ + export interface Schema$GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference { + /** + * Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number\}/locations/{location\}/agentGateways/{agent_gateway\}`. + */ + name?: string | null; + } /** * The connector level alert config. */ @@ -559,7 +596,12 @@ export namespace discoveryengine_v1alpha { /** * Request message for the DataConnectorService.AcquireAccessToken method. */ - export interface Schema$GoogleCloudDiscoveryengineV1alphaAcquireAccessTokenRequest {} + export interface Schema$GoogleCloudDiscoveryengineV1alphaAcquireAccessTokenRequest { + /** + * Optional. The scope to request for the access token. Scope will override default scope if specified. + */ + scope?: string | null; + } /** * Response message for the DataConnectorService.AcquireAccessToken method. */ @@ -581,6 +623,10 @@ export namespace discoveryengine_v1alpha { * Optional. Action parameters in structured json format. */ actionParams?: {[key: string]: any} | null; + /** + * Optional. Whether to create a BAP connection for the connector. + */ + createBapConnection?: boolean | null; /** * Output only. The connector contains the necessary parameters and is configured to support actions. */ @@ -593,11 +639,28 @@ export namespace discoveryengine_v1alpha { * Optional. The Service Directory resource name (projects/x/locations/x/namespaces/x/services/x) representing a VPC network endpoint used to connect to the data source's `instance_uri`, defined in DataConnector.params. Required when VPC Service Controls are enabled. */ serviceName?: string | null; + /** + * Optional. Mapping from operation name to the list of scopes. Only be populated if there are user specified scopes. + */ + userDefinedScopesMapping?: { + [ + key: string + ]: Schema$GoogleCloudDiscoveryengineV1alphaActionConfigScopeList; + } | null; /** * Optional. Whether to use static secrets for the connector. If true, the secrets provided in the action_params will be ignored. */ useStaticSecrets?: boolean | null; } + /** + * Stores a list of scopes. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaActionConfigScopeList { + /** + * Optional. The list of scopes. + */ + scopes?: string[] | null; + } /** * Request for DataStoreService.AddPatientFilter method. */ @@ -903,6 +966,10 @@ export namespace discoveryengine_v1alpha { * Identifier. Resource name of the agent. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}/agents/{agent\}` */ name?: string | null; + /** + * Optional. Observability config for the agent. + */ + observabilityConfig?: Schema$GoogleCloudDiscoveryengineV1alphaObservabilityConfig; /** * Output only. The reason why the agent was rejected. Only set if the state is PRIVATE, and got there via rejection. */ @@ -945,6 +1012,24 @@ export namespace discoveryengine_v1alpha { */ name?: string | null; } + /** + * Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting { + /** + * Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE. + */ + defaultEgressAgentGateway?: Schema$GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference; + } + /** + * Reference to an Agent Gateway resource. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference { + /** + * Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number\}/locations/{location\}/agentGateways/{agent_gateway\}`. + */ + name?: string | null; + } /** * Represents an image. */ @@ -1099,7 +1184,7 @@ export namespace discoveryengine_v1alpha { */ answerText?: string | null; /** - * List of blob attachments in the answer. + * Output only. List of blob attachments in the answer. */ blobAttachments?: Schema$GoogleCloudDiscoveryengineV1alphaAnswerBlobAttachment[]; /** @@ -1557,7 +1642,7 @@ export namespace discoveryengine_v1alpha { */ boostSpec?: Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestBoostSpec; /** - * Custom fine tuning configs. + * Optional. Custom fine tuning configs. */ customFineTuningSpec?: Schema$GoogleCloudDiscoveryengineV1alphaCustomFineTuningSpec; /** @@ -2063,6 +2148,10 @@ export namespace discoveryengine_v1alpha { * One part of the multi-part response of the assist call. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaAssistAnswerReply { + /** + * The time when the reply was created. + */ + createTime?: string | null; /** * Possibly grounded response text or media from the assistant. */ @@ -2076,6 +2165,10 @@ export namespace discoveryengine_v1alpha { * Discovery Engine Assistant resource. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaAssistant { + /** + * Output only. Represents the time when this Assistant was created. + */ + createTime?: string | null; /** * Optional. Customer policy for the assistant. */ @@ -2110,6 +2203,10 @@ export namespace discoveryengine_v1alpha { * Immutable. Resource name of the assistant. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}` It must be a UTF-8 encoded string with a length limit of 1024 characters. */ name?: string | null; + /** + * Output only. Represents the time when this Assistant was most recently updated. + */ + updateTime?: string | null; /** * Optional. The type of web grounding to use. */ @@ -2302,11 +2399,19 @@ export namespace discoveryengine_v1alpha { * Grounding information for parts of the text. */ segments?: Schema$GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataSegment[]; + /** + * Grounding information for parts of the visual content. + */ + visualSegments?: Schema$GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment[]; } /** * Referenced content and related document metadata. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataReference { + /** + * Chunk of code snippet from the referenced document. + */ + codeSnippet?: string | null; /** * Referenced text content. */ @@ -2328,6 +2433,7 @@ export namespace discoveryengine_v1alpha { * Domain name from the document URI. Note that the `uri` field may contain a URL that redirects to the actual website, in which case this will contain the domain name of the target site. */ domain?: string | null; + language?: string | null; /** * The mime type of the document. https://www.iana.org/assignments/media-types/media-types.xhtml. */ @@ -2370,6 +2476,19 @@ export namespace discoveryengine_v1alpha { */ text?: string | null; } + /** + * Grounding information for a visual segment. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment { + /** + * The content id of the visual segment. In order to display the citation of the visual element, this content_id needs to match with the `grounded_content.content_metadata.content_id` field. + */ + contentId?: string | null; + /** + * References for the visual segment. + */ + referenceIndices?: number[] | null; + } /** * Information to identify a tool. */ @@ -3233,6 +3352,15 @@ export namespace discoveryengine_v1alpha { */ citations?: Schema$GoogleCloudDiscoveryengineV1alphaCitation[]; } + /** + * The configuration for the CLI execution based connectors. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaCliConfig { + /** + * Optional. The actions enabled on the associated CLI connection. + */ + enabledActions?: string[] | null; + } /** * Cloud SQL source import data from. */ @@ -4019,6 +4147,10 @@ export namespace discoveryengine_v1alpha { * Output only. User actions that must be completed before the connector can start syncing data. */ blockingReasons?: string[] | null; + /** + * Optional. The configuration for establishing a CLI connection. + */ + cliConfig?: Schema$GoogleCloudDiscoveryengineV1alphaCliConfig; /** * Optional. The modes enabled for this connector. Default state is CONNECTOR_MODE_UNSPECIFIED. */ @@ -4040,7 +4172,7 @@ export namespace discoveryengine_v1alpha { */ dataProtectionPolicy?: Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy; /** - * Required. The name of the data source. Supported values: `salesforce`, `jira`, `confluence`, `bigquery`. + * Required. The identifier for the data source. This is a partial list of supported connectors. Please refer to the [documentation](https://docs.cloud.google.com/gemini/enterprise/docs/connectors/introduction-to-connectors-and-data-stores) for the full list of connectors. Supported first-party connectors include: * `gcs` * `bigquery` * `gcp_fhir` * `google_mail` * `google_drive` * `google_calendar` * `google_chat` Supported third-party connectors include: Generally available (GA) connectors: * `onedrive` * `outlook` * `confluence` * `jira` * `servicenow` * `sharepoint` Preview connectors: * `asana` * `azure_active_directory` * `box` * `canva` * `confluence_server` * `custom_connector` * `docusign` * `dropbox` * `dynamics365` * `github` * `gitlab` * `hubspot` * `jira_server` * `linear` * `native_cloud_identity` * `notion` * `okta` * `pagerduty` * `peoplesoft` * `salesforce` * `shopify` * `slack` * `snowflake` * `teams` * `trello` * `workday` * `zendesk` */ dataSource?: string | null; /** @@ -4048,7 +4180,11 @@ export namespace discoveryengine_v1alpha { */ destinationConfigs?: Schema$GoogleCloudDiscoveryengineV1alphaDestinationConfig[]; /** - * Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. Note: This field is derived from both the DataConnector.params, and connector source spec. It should only be used for CAIS and Org Policy evaluation purposes. + * Output only. The dynamic tools fetched for this connector. + */ + dynamicTools?: Schema$GoogleCloudDiscoveryengineV1alphaDynamicTool[]; + /** + * Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. */ egressFqdns?: string[] | null; /** @@ -4104,7 +4240,7 @@ export namespace discoveryengine_v1alpha { */ latestPauseTime?: string | null; /** - * Output only. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. + * Identifier. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. */ name?: string | null; /** @@ -4156,7 +4292,7 @@ export namespace discoveryengine_v1alpha { */ updateTime?: string | null; /** - * Output only. Whether the connector is created with VPC-SC enabled. This is only used for CuOP evaluation purpose. + * Output only. Whether the connector is created with VPC-SC enabled. */ vpcscEnabled?: boolean | null; } @@ -4262,11 +4398,11 @@ export namespace discoveryengine_v1alpha { startingSchema?: Schema$GoogleCloudDiscoveryengineV1alphaSchema; } /** - * Data protection policy config for a connector. + * Contains the data protection policy config for a DataStore or a connector. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy { /** - * Optional. The sensitive data protection policy for the connector source. + * Optional. Specifies the sensitive data protection policy for the connector source. */ sensitiveDataProtectionPolicy?: Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicySensitiveDataProtectionPolicy; } @@ -4275,7 +4411,7 @@ export namespace discoveryengine_v1alpha { */ export interface Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicySensitiveDataProtectionPolicy { /** - * Optional. The Sensitive Data Protection content policy resource name. + * Optional. Specifies the resource name of the Sensitive Data Protection content policy. */ policy?: string | null; } @@ -4315,6 +4451,10 @@ export namespace discoveryengine_v1alpha { * Output only. Timestamp the DataStore was created at. */ createTime?: string | null; + /** + * Optional. Specifies the data protection policy for the data store. + */ + dataProtectionPolicy?: Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy; /** * Output only. The id of the default Schema associated to this data store. */ @@ -4327,6 +4467,10 @@ export namespace discoveryengine_v1alpha { * Configuration for Document understanding and enrichment. */ documentProcessingConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDocumentProcessingConfig; + /** + * Optional. If set, this DataStore is a federated search DataStore. + */ + federatedSearchConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig; /** * Optional. Configuration for `HEALTHCARE_FHIR` vertical. */ @@ -4409,6 +4553,100 @@ export namespace discoveryengine_v1alpha { */ websiteDataUpdateTime?: string | null; } + /** + * Stores information for federated search. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig { + /** + * AlloyDB config. If set, this DataStore is connected to AlloyDB. + */ + alloyDbConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig; + /** + * NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise. + */ + notebooklmConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig; + /** + * Third Party OAuth config. If set, this DataStore is connected to a third party application. + */ + thirdPartyOauthConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig; + } + /** + * Stores information for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig { + /** + * Optional. Configuration for Magic. + */ + alloydbAiNlConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig; + /** + * Required. Configuration for connecting to AlloyDB. + */ + alloydbConnectionConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig; + /** + * Optional. Fields to be returned in the search results. If empty, all fields will be returned. + */ + returnedFields?: string[] | null; + } + /** + * Configuration for AlloyDB AI Natural Language. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig { + /** + * Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty. + */ + nlConfigId?: string | null; + } + /** + * Configuration for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig { + /** + * Optional. Auth mode. + */ + authMode?: string | null; + /** + * Required. The AlloyDB database to connect to. + */ + database?: string | null; + /** + * Optional. If true, enable PSVS for AlloyDB. + */ + enablePsvs?: boolean | null; + /** + * Required. The AlloyDB instance to connect to. + */ + instance?: string | null; + /** + * Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user. + */ + password?: string | null; + /** + * Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user. + */ + user?: string | null; + } + /** + * Config for connecting to NotebookLM Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig { + /** + * Required. Search config name. Format: projects/x/locations/global/notebookLmSearchConfigs/x + */ + searchConfig?: string | null; + } + /** + * Stores information for third party applicationOAuth. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig { + /** + * Optional. The type of the application. E.g., "jira", "box", etc. + */ + appName?: string | null; + /** + * Optional. The instance name identifying the 3P app, e.g., "vaissptbots-my". This is different from the instance_uri which is the full URL of the 3P app e.g., "https://vaissptbots-my.sharepoint.com". + */ + instanceName?: string | null; + } /** * Stores information regarding the serving configurations at DataStore level. */ @@ -4706,7 +4944,7 @@ export namespace discoveryengine_v1alpha { */ indexStatus?: Schema$GoogleCloudDiscoveryengineV1alphaDocumentIndexStatus; /** - * Output only. The last time the document was indexed. If this field is set, the document could be returned in search results. This field is OUTPUT_ONLY. If this field is not populated, it means the document has never been indexed. + * Output only. The time when the document was last indexed. If this field is populated, it means the document has been indexed. While documents typically become searchable within seconds of indexing, it can sometimes take up to a few hours. If this field is not populated, it means the document has never been indexed. */ indexTime?: string | null; /** @@ -4778,7 +5016,7 @@ export namespace discoveryengine_v1alpha { */ errorSamples?: Schema$GoogleRpcStatus[]; /** - * The time when the document was indexed. If this field is populated, it means the document has been indexed. + * The time when the document was indexed. If this field is populated, it means the document has been indexed. While documents typically become searchable within seconds of indexing, it can sometimes take up to a few hours. */ indexTime?: string | null; /** @@ -4946,6 +5184,27 @@ export namespace discoveryengine_v1alpha { */ values?: number[] | null; } + /** + * Configuration for dynamic tools. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDynamicTool { + /** + * Optional. The description of the tool. + */ + description?: string | null; + /** + * Optional. The display name of the tool. + */ + displayName?: string | null; + /** + * Optional. Whether the tool is enabled. + */ + enabled?: boolean | null; + /** + * Required. The name of the tool. + */ + name?: string | null; + } /** * Defines embedding config, used for bring your own embeddings feature. */ @@ -4980,6 +5239,10 @@ export namespace discoveryengine_v1alpha { * Metadata that describes the training and serving parameters of an Engine. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaEngine { + /** + * Optional. The agent gateway setting for the engine. + */ + agentGatewaySetting?: Schema$GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting; /** * Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type. */ @@ -5025,7 +5288,7 @@ export namespace discoveryengine_v1alpha { */ displayName?: string | null; /** - * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` + * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills` */ features?: {[key: string]: string} | null; /** @@ -5057,9 +5320,9 @@ export namespace discoveryengine_v1alpha { */ observabilityConfig?: Schema$GoogleCloudDiscoveryengineV1alphaObservabilityConfig; /** - * Optional. The email of the procurement contact. + * Optional. The emails of the procurement contacts. */ - procurementContactEmail?: string | null; + procurementContactEmails?: string[] | null; /** * Output only. Additional information of a recommendation engine. Only applicable if solution_type is SOLUTION_TYPE_RECOMMENDATION. */ @@ -5636,6 +5899,10 @@ export namespace discoveryengine_v1alpha { * Field paths for indexing custom attribute from schema.org data. More details of schema.org and its defined types can be found at [schema.org](https://schema.org). It is only used on advanced site search schema. Currently only support full path from root. The full path to a field is constructed by concatenating field names, starting from `_root`, with a period `.` as the delimiter. Examples: * Publish date of the root: _root.datePublished * Publish date of the reviews: _root.review.datePublished */ schemaOrgPaths?: string[] | null; + /** + * Optional. Specifies the importance of the field when `searchable_option` is `SEARCHABLE_ENABLED`. If `searchable_option` is `SEARCHABLE_DISABLED`, this field is ignored. If `searchable_option` is `SEARCHABLE_ENABLED` and this is `SEARCHABLE_FIELD_IMPORTANCE_UNSPECIFIED`, it behaves as `DEFAULT_IMPORTANCE`. + */ + searchableFieldImportance?: string | null; /** * If searchable_option is SEARCHABLE_ENABLED, field values are searchable by text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is numerical, field values will not be searchable by text queries in SearchService.Search, as there are no text values associated to numerical fields. If searchable_option is unset, the server behavior defaults to SEARCHABLE_DISABLED for fields that support setting searchable options. Only `string` fields that have no key property mapping support setting searchable_option. For those fields that do not support setting searchable options, the server will skip searchable option setting, and setting searchable_option for those fields will throw `INVALID_ARGUMENT` error. */ @@ -6360,7 +6627,7 @@ export namespace discoveryengine_v1alpha { */ successCount?: string | null; /** - * Operation last update time. If the operation is done, this is also the finish time. + * Output only. Operation last update time. If the operation is done, this is also the finish time. */ updateTime?: string | null; } @@ -6961,11 +7228,11 @@ export namespace discoveryengine_v1alpha { */ export interface Schema$GoogleCloudDiscoveryengineV1alphaObservabilityConfig { /** - * Optional. Enables observability. If false, all other flags are ignored. + * Optional. Enables observability. If `false`, all other flags are ignored. */ observabilityEnabled?: boolean | null; /** - * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields. + * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields. */ sensitiveLoggingEnabled?: boolean | null; } @@ -7156,7 +7423,7 @@ export namespace discoveryengine_v1alpha { } | null; } /** - * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). + * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus { /** @@ -7183,6 +7450,10 @@ export namespace discoveryengine_v1alpha { * Output only. The latest terminate effective time of search qpm and indexing core subscriptions. */ terminateTime?: string | null; + /** + * Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject. + */ + updateType?: string | null; } /** * Customer provided configurations. @@ -7749,7 +8020,7 @@ export namespace discoveryengine_v1alpha { */ id?: string | null; /** - * The score of this record based on the given query and selected model. The score will be rounded to 2 decimal places. If the score is close to 0, it will be rounded to 0.0001 to avoid returning unset. + * The score of this record based on the given query and selected model. The score will be rounded to 4 decimal places. If the score is close to 0, it will be rounded to 0.00001 to avoid returning unset. */ score?: number | null; /** @@ -8456,6 +8727,10 @@ export namespace discoveryengine_v1alpha { * Custom fine tuning configs. If set, it has higher priority than the configs set in ServingConfig.custom_fine_tuning_spec. */ customFineTuningSpec?: Schema$GoogleCloudDiscoveryengineV1alphaCustomFineTuningSpec; + /** + * Optional. Optional configuration for the Custom Ranking feature. + */ + customRankingParams?: Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams; /** * Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used. */ @@ -8468,6 +8743,10 @@ export namespace discoveryengine_v1alpha { * Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.EmbeddingSpec.EmbeddingVector.vector and the document embedding that is provided in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path. If SearchRequest.EmbeddingSpec.EmbeddingVector.field_path is not provided, it will use ServingConfig.EmbeddingConfig.field_path. */ embeddingSpec?: Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestEmbeddingSpec; + /** + * Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, "Google US", "Google Ads", "Waymo", "google.com", "youtube.com", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity. + */ + entity?: string | null; /** * Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -8573,7 +8852,7 @@ export namespace discoveryengine_v1alpha { */ servingConfig?: string | null; /** - * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. */ session?: string | null; /** @@ -8834,6 +9113,15 @@ export namespace discoveryengine_v1alpha { */ mode?: string | null; } + /** + * Configuration parameters for the Custom Ranking feature. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams { + /** + * Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field. + */ + expressionsToPrecompute?: string[] | null; + } /** * A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -8970,7 +9258,7 @@ export namespace discoveryengine_v1alpha { */ filterExtractionCondition?: string | null; /** - * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names. + * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. */ geoSearchQueryDetectionFieldNames?: string[] | null; } @@ -9058,7 +9346,7 @@ export namespace discoveryengine_v1alpha { condition?: string | null; } /** - * Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * Session specification. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestSessionSpec { /** @@ -9443,6 +9731,10 @@ export namespace discoveryengine_v1alpha { * Optional. Predicted conversion rate adjustment as a rank. */ pctrRank?: number | null; + /** + * Optional. A list of precomputed expression results for a given document, in the same order as requested in `SearchRequest.custom_ranking_params.expressions_to_precompute`. + */ + precomputedExpressionValues?: number[] | null; /** * Optional. Semantic relevance adjustment. */ @@ -9828,6 +10120,10 @@ export namespace discoveryengine_v1alpha { * Output only. In ConversationalSearchService.GetSession API, if GetSessionRequest.include_answer_details is set to true, this field will be populated when getting assistant session. */ detailedAssistAnswer?: Schema$GoogleCloudDiscoveryengineV1alphaAssistAnswer; + /** + * Optional. Indicates whether this turn is a live turn. + */ + live?: boolean | null; /** * Optional. The user query. May not be set if this turn is merely regenerating an answer to a different turn */ @@ -9897,7 +10193,7 @@ export namespace discoveryengine_v1alpha { */ collectionDisplayName?: string | null; /** - * Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an INVALID_ARGUMENT error is returned. + * Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. Should conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. */ collectionId?: string | null; /** @@ -10495,6 +10791,10 @@ export namespace discoveryengine_v1alpha { * The Engine resource name, in the form of `projects/{project\}/locations/{location\}/collections/{collection_id\}/engines/{engine_id\}`. Optional. Only required for Engine produced user events. For example, user events from blended search. */ engine?: string | null; + /** + * Optional. Represents the entity for customers that may run multiple different entities, domains, sites or regions, for example, `Google US`, `Google Ads`, `Waymo`, `google.com`, `youtube.com`, etc. We recommend that you set `entity` to get better per-entity search, completion, and prediction results. + */ + entity?: string | null; /** * Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened. */ @@ -10556,6 +10856,10 @@ export namespace discoveryengine_v1alpha { * Information of an end user. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaUserInfo { + /** + * Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents. + */ + preciseLocation?: Schema$GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation; /** * Optional. IANA time zone, e.g. Europe/Budapest. */ @@ -10565,10 +10869,23 @@ export namespace discoveryengine_v1alpha { */ userAgent?: string | null; /** - * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. + * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded. */ userId?: string | null; } + /** + * Precise location info with multiple representation options. Currently only latitude and longitude point is supported. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation { + /** + * Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon. + */ + address?: string | null; + /** + * Optional. Location represented by a latitude/longitude point. + */ + point?: Schema$GoogleTypeLatLng; + } /** * User License information assigned by the admin. */ @@ -11115,7 +11432,7 @@ export namespace discoveryengine_v1alpha { */ enableVisualContentSummary?: boolean | null; /** - * Output only. Feature config for the engine to opt in or opt out of features. Supported keys: * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` + * Output only. Feature config for the engine to opt in or opt out of features. Supported keys: * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills` */ features?: {[key: string]: string} | null; /** @@ -11281,6 +11598,10 @@ export namespace discoveryengine_v1alpha { * Discovery Engine Assistant resource. */ export interface Schema$GoogleCloudDiscoveryengineV1Assistant { + /** + * Output only. Represents the time when this Assistant was created. + */ + createTime?: string | null; /** * Optional. Customer policy for the assistant. */ @@ -11311,6 +11632,10 @@ export namespace discoveryengine_v1alpha { * Immutable. Resource name of the assistant. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}` It must be a UTF-8 encoded string with a length limit of 1024 characters. */ name?: string | null; + /** + * Output only. Represents the time when this Assistant was most recently updated. + */ + updateTime?: string | null; /** * Optional. The type of web grounding to use. */ @@ -11510,6 +11835,24 @@ export namespace discoveryengine_v1alpha { */ disableInitialIndex?: boolean | null; } + /** + * Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaAgentGatewaySetting { + /** + * Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE. + */ + defaultEgressAgentGateway?: Schema$GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference; + } + /** + * Reference to an Agent Gateway resource. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference { + /** + * Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number\}/locations/{location\}/agentGateways/{agent_gateway\}`. + */ + name?: string | null; + } /** * Metadata related to the progress of the SiteSearchEngineService.BatchCreateTargetSites operation. This will be returned by the google.longrunning.Operation.metadata field. */ @@ -11924,6 +12267,10 @@ export namespace discoveryengine_v1alpha { * Configuration for Document understanding and enrichment. */ documentProcessingConfig?: Schema$GoogleCloudDiscoveryengineV1betaDocumentProcessingConfig; + /** + * Optional. If set, this DataStore is a federated search DataStore. + */ + federatedSearchConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig; /** * Optional. Configuration for `HEALTHCARE_FHIR` vertical. */ @@ -12002,6 +12349,100 @@ export namespace discoveryengine_v1alpha { */ websiteDataUpdateTime?: string | null; } + /** + * Stores information for federated search. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig { + /** + * AlloyDB config. If set, this DataStore is connected to AlloyDB. + */ + alloyDbConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig; + /** + * NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise. + */ + notebooklmConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig; + /** + * Third Party OAuth config. If set, this DataStore is connected to a third party application. + */ + thirdPartyOauthConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig; + } + /** + * Stores information for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig { + /** + * Optional. Configuration for Magic. + */ + alloydbAiNlConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig; + /** + * Required. Configuration for connecting to AlloyDB. + */ + alloydbConnectionConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig; + /** + * Optional. Fields to be returned in the search results. If empty, all fields will be returned. + */ + returnedFields?: string[] | null; + } + /** + * Configuration for AlloyDB AI Natural Language. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig { + /** + * Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty. + */ + nlConfigId?: string | null; + } + /** + * Configuration for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig { + /** + * Optional. Auth mode. + */ + authMode?: string | null; + /** + * Required. The AlloyDB database to connect to. + */ + database?: string | null; + /** + * Optional. If true, enable PSVS for AlloyDB. + */ + enablePsvs?: boolean | null; + /** + * Required. The AlloyDB instance to connect to. + */ + instance?: string | null; + /** + * Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user. + */ + password?: string | null; + /** + * Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user. + */ + user?: string | null; + } + /** + * Config for connecting to NotebookLM Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig { + /** + * Required. Search config name. Format: projects/x/locations/global/notebookLmSearchConfigs/x + */ + searchConfig?: string | null; + } + /** + * Stores information for third party applicationOAuth. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig { + /** + * Optional. The type of the application. E.g., "jira", "box", etc. + */ + appName?: string | null; + /** + * Optional. The instance name identifying the 3P app, e.g., "vaissptbots-my". This is different from the instance_uri which is the full URL of the 3P app e.g., "https://vaissptbots-my.sharepoint.com". + */ + instanceName?: string | null; + } /** * Stores information regarding the serving configurations at DataStore level. */ @@ -12266,6 +12707,10 @@ export namespace discoveryengine_v1alpha { * Metadata that describes the training and serving parameters of an Engine. */ export interface Schema$GoogleCloudDiscoveryengineV1betaEngine { + /** + * Optional. The agent gateway setting for the engine. + */ + agentGatewaySetting?: Schema$GoogleCloudDiscoveryengineV1betaAgentGatewaySetting; /** * Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type. */ @@ -12311,7 +12756,7 @@ export namespace discoveryengine_v1alpha { */ displayName?: string | null; /** - * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` + * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills` */ features?: {[key: string]: string} | null; /** @@ -12343,9 +12788,9 @@ export namespace discoveryengine_v1alpha { */ observabilityConfig?: Schema$GoogleCloudDiscoveryengineV1betaObservabilityConfig; /** - * Optional. The email of the procurement contact. + * Optional. The emails of the procurement contacts. */ - procurementContactEmail?: string | null; + procurementContactEmails?: string[] | null; /** * Configurations for the Search Engine. Only applicable if solution_type is SOLUTION_TYPE_SEARCH. */ @@ -12837,7 +13282,7 @@ export namespace discoveryengine_v1alpha { */ successCount?: string | null; /** - * Operation last update time. If the operation is done, this is also the finish time. + * Output only. Operation last update time. If the operation is done, this is also the finish time. */ updateTime?: string | null; } @@ -12971,11 +13416,11 @@ export namespace discoveryengine_v1alpha { */ export interface Schema$GoogleCloudDiscoveryengineV1betaObservabilityConfig { /** - * Optional. Enables observability. If false, all other flags are ignored. + * Optional. Enables observability. If `false`, all other flags are ignored. */ observabilityEnabled?: boolean | null; /** - * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields. + * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields. */ sensitiveLoggingEnabled?: boolean | null; } @@ -13045,7 +13490,7 @@ export namespace discoveryengine_v1alpha { } | null; } /** - * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). + * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation. */ export interface Schema$GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus { /** @@ -13072,6 +13517,10 @@ export namespace discoveryengine_v1alpha { * Output only. The latest terminate effective time of search qpm and indexing core subscriptions. */ terminateTime?: string | null; + /** + * Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject. + */ + updateType?: string | null; } /** * Customer provided configurations. @@ -13369,6 +13818,10 @@ export namespace discoveryengine_v1alpha { * Optional. Crowding specifications for improving result diversity. If multiple CrowdingSpecs are specified, crowding will be evaluated on each unique combination of the `field` values, and max_count will be the maximum value of `max_count` across all CrowdingSpecs. For example, if the first CrowdingSpec has `field` = "color" and `max_count` = 3, and the second CrowdingSpec has `field` = "size" and `max_count` = 2, then after 3 documents that share the same color AND size have been returned, subsequent ones should be removed or demoted. */ crowdingSpecs?: Schema$GoogleCloudDiscoveryengineV1betaSearchRequestCrowdingSpec[]; + /** + * Optional. Optional configuration for the Custom Ranking feature. + */ + customRankingParams?: Schema$GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams; /** * Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used. */ @@ -13381,6 +13834,10 @@ export namespace discoveryengine_v1alpha { * Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.EmbeddingSpec.EmbeddingVector.vector and the document embedding that is provided in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path. If SearchRequest.EmbeddingSpec.EmbeddingVector.field_path is not provided, it will use ServingConfig.EmbeddingConfig.field_path. */ embeddingSpec?: Schema$GoogleCloudDiscoveryengineV1betaSearchRequestEmbeddingSpec; + /** + * Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, "Google US", "Google Ads", "Waymo", "google.com", "youtube.com", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity. + */ + entity?: string | null; /** * Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -13486,7 +13943,7 @@ export namespace discoveryengine_v1alpha { */ servingConfig?: string | null; /** - * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. */ session?: string | null; /** @@ -13743,6 +14200,15 @@ export namespace discoveryengine_v1alpha { */ mode?: string | null; } + /** + * Configuration parameters for the Custom Ranking feature. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams { + /** + * Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field. + */ + expressionsToPrecompute?: string[] | null; + } /** * A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -13879,7 +14345,7 @@ export namespace discoveryengine_v1alpha { */ filterExtractionCondition?: string | null; /** - * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names. + * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. */ geoSearchQueryDetectionFieldNames?: string[] | null; } @@ -13967,7 +14433,7 @@ export namespace discoveryengine_v1alpha { condition?: string | null; } /** - * Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * Session specification. */ export interface Schema$GoogleCloudDiscoveryengineV1betaSearchRequestSessionSpec { /** @@ -14197,6 +14663,10 @@ export namespace discoveryengine_v1alpha { * Information of an end user. */ export interface Schema$GoogleCloudDiscoveryengineV1betaUserInfo { + /** + * Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents. + */ + preciseLocation?: Schema$GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation; /** * Optional. IANA time zone, e.g. Europe/Budapest. */ @@ -14206,10 +14676,23 @@ export namespace discoveryengine_v1alpha { */ userAgent?: string | null; /** - * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. + * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded. */ userId?: string | null; } + /** + * Precise location info with multiple representation options. Currently only latitude and longitude point is supported. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation { + /** + * Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon. + */ + address?: string | null; + /** + * Optional. Location represented by a latitude/longitude point. + */ + point?: Schema$GoogleTypeLatLng; + } /** * User License information assigned by the admin. */ @@ -14289,6 +14772,15 @@ export namespace discoveryengine_v1alpha { */ type?: string | null; } + /** + * The configuration for the CLI execution based connectors. + */ + export interface Schema$GoogleCloudDiscoveryengineV1CliConfig { + /** + * Optional. The actions enabled on the associated CLI connection. + */ + enabledActions?: string[] | null; + } /** * Configurations used to enable CMEK data encryption with Cloud KMS keys. */ @@ -14635,6 +15127,10 @@ export namespace discoveryengine_v1alpha { * Output only. User actions that must be completed before the connector can start syncing data. */ blockingReasons?: string[] | null; + /** + * Optional. The configuration for establishing a CLI connection. + */ + cliConfig?: Schema$GoogleCloudDiscoveryengineV1CliConfig; /** * Optional. The modes enabled for this connector. Default state is CONNECTOR_MODE_UNSPECIFIED. */ @@ -14652,7 +15148,7 @@ export namespace discoveryengine_v1alpha { */ createTime?: string | null; /** - * Required. The name of the data source. Supported values: `salesforce`, `jira`, `confluence`, `bigquery`. + * Required. The identifier for the data source. This is a partial list of supported connectors. Please refer to the [documentation](https://docs.cloud.google.com/gemini/enterprise/docs/connectors/introduction-to-connectors-and-data-stores) for the full list of connectors. Supported first-party connectors include: * `gcs` * `bigquery` * `gcp_fhir` * `google_mail` * `google_drive` * `google_calendar` * `google_chat` Supported third-party connectors include: Generally available (GA) connectors: * `onedrive` * `outlook` * `confluence` * `jira` * `servicenow` * `sharepoint` Preview connectors: * `asana` * `azure_active_directory` * `box` * `canva` * `confluence_server` * `custom_connector` * `docusign` * `dropbox` * `dynamics365` * `github` * `gitlab` * `hubspot` * `jira_server` * `linear` * `native_cloud_identity` * `notion` * `okta` * `pagerduty` * `peoplesoft` * `salesforce` * `shopify` * `slack` * `snowflake` * `teams` * `trello` * `workday` * `zendesk` */ dataSource?: string | null; /** @@ -14660,7 +15156,11 @@ export namespace discoveryengine_v1alpha { */ destinationConfigs?: Schema$GoogleCloudDiscoveryengineV1DestinationConfig[]; /** - * Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. Note: This field is derived from both the DataConnector.params, and connector source spec. It should only be used for CAIS and Org Policy evaluation purposes. + * Output only. The dynamic tools fetched for this connector. + */ + dynamicTools?: Schema$GoogleCloudDiscoveryengineV1DynamicTool[]; + /** + * Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. */ egressFqdns?: string[] | null; /** @@ -14716,7 +15216,7 @@ export namespace discoveryengine_v1alpha { */ latestPauseTime?: string | null; /** - * Output only. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. + * Identifier. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. */ name?: string | null; /** @@ -14768,7 +15268,7 @@ export namespace discoveryengine_v1alpha { */ updateTime?: string | null; /** - * Output only. Whether the connector is created with VPC-SC enabled. This is only used for CuOP evaluation purpose. + * Output only. Whether the connector is created with VPC-SC enabled. */ vpcscEnabled?: boolean | null; } @@ -14921,6 +15421,10 @@ export namespace discoveryengine_v1alpha { * Configuration for Document understanding and enrichment. */ documentProcessingConfig?: Schema$GoogleCloudDiscoveryengineV1DocumentProcessingConfig; + /** + * Optional. If set, this DataStore is a federated search DataStore. + */ + federatedSearchConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig; /** * Optional. Configuration for `HEALTHCARE_FHIR` vertical. */ @@ -14995,6 +15499,100 @@ export namespace discoveryengine_v1alpha { */ websiteDataUpdateTime?: string | null; } + /** + * Stores information for federated search. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig { + /** + * AlloyDB config. If set, this DataStore is connected to AlloyDB. + */ + alloyDbConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig; + /** + * NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise. + */ + notebooklmConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig; + /** + * Third Party OAuth config. If set, this DataStore is connected to a third party application. + */ + thirdPartyOauthConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig; + } + /** + * Stores information for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig { + /** + * Optional. Configuration for Magic. + */ + alloydbAiNlConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig; + /** + * Required. Configuration for connecting to AlloyDB. + */ + alloydbConnectionConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig; + /** + * Optional. Fields to be returned in the search results. If empty, all fields will be returned. + */ + returnedFields?: string[] | null; + } + /** + * Configuration for AlloyDB AI Natural Language. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig { + /** + * Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty. + */ + nlConfigId?: string | null; + } + /** + * Configuration for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig { + /** + * Optional. Auth mode. + */ + authMode?: string | null; + /** + * Required. The AlloyDB database to connect to. + */ + database?: string | null; + /** + * Optional. If true, enable PSVS for AlloyDB. + */ + enablePsvs?: boolean | null; + /** + * Required. The AlloyDB instance to connect to. + */ + instance?: string | null; + /** + * Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user. + */ + password?: string | null; + /** + * Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user. + */ + user?: string | null; + } + /** + * Config for connecting to NotebookLM Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig { + /** + * Required. Search config name. Format: projects/x/locations/global/notebookLmSearchConfigs/x + */ + searchConfig?: string | null; + } + /** + * Stores information for third party applicationOAuth. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig { + /** + * Optional. The type of the application. E.g., "jira", "box", etc. + */ + appName?: string | null; + /** + * Optional. The instance name identifying the 3P app, e.g., "vaissptbots-my". This is different from the instance_uri which is the full URL of the 3P app e.g., "https://vaissptbots-my.sharepoint.com". + */ + instanceName?: string | null; + } /** * Stores information regarding the serving configurations at DataStore level. */ @@ -15277,6 +15875,27 @@ export namespace discoveryengine_v1alpha { */ useNativeText?: boolean | null; } + /** + * Configuration for dynamic tools. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DynamicTool { + /** + * Optional. The description of the tool. + */ + description?: string | null; + /** + * Optional. The display name of the tool. + */ + displayName?: string | null; + /** + * Optional. Whether the tool is enabled. + */ + enabled?: boolean | null; + /** + * Required. The name of the tool. + */ + name?: string | null; + } /** * Metadata related to the progress of the SiteSearchEngineService.EnableAdvancedSiteSearch operation. This will be returned by the google.longrunning.Operation.metadata field. */ @@ -15298,6 +15917,10 @@ export namespace discoveryengine_v1alpha { * Metadata that describes the training and serving parameters of an Engine. */ export interface Schema$GoogleCloudDiscoveryengineV1Engine { + /** + * Optional. The agent gateway setting for the engine. + */ + agentGatewaySetting?: Schema$GoogleCloudDiscoveryengineV1AgentGatewaySetting; /** * Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type. */ @@ -15343,7 +15966,7 @@ export namespace discoveryengine_v1alpha { */ displayName?: string | null; /** - * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` + * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills` */ features?: {[key: string]: string} | null; /** @@ -15375,9 +15998,9 @@ export namespace discoveryengine_v1alpha { */ observabilityConfig?: Schema$GoogleCloudDiscoveryengineV1ObservabilityConfig; /** - * Optional. The email of the procurement contact. + * Optional. The emails of the procurement contacts. */ - procurementContactEmail?: string | null; + procurementContactEmails?: string[] | null; /** * Configurations for the Search Engine. Only applicable if solution_type is SOLUTION_TYPE_SEARCH. */ @@ -15785,7 +16408,7 @@ export namespace discoveryengine_v1alpha { */ successCount?: string | null; /** - * Operation last update time. If the operation is done, this is also the finish time. + * Output only. Operation last update time. If the operation is done, this is also the finish time. */ updateTime?: string | null; } @@ -15877,11 +16500,11 @@ export namespace discoveryengine_v1alpha { */ export interface Schema$GoogleCloudDiscoveryengineV1ObservabilityConfig { /** - * Optional. Enables observability. If false, all other flags are ignored. + * Optional. Enables observability. If `false`, all other flags are ignored. */ observabilityEnabled?: boolean | null; /** - * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields. + * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields. */ sensitiveLoggingEnabled?: boolean | null; } @@ -15917,7 +16540,7 @@ export namespace discoveryengine_v1alpha { } | null; } /** - * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). + * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation. */ export interface Schema$GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus { /** @@ -15944,6 +16567,10 @@ export namespace discoveryengine_v1alpha { * Output only. The latest terminate effective time of search qpm and indexing core subscriptions. */ terminateTime?: string | null; + /** + * Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject. + */ + updateType?: string | null; } /** * Customer provided configurations. @@ -17570,6 +18197,19 @@ export namespace discoveryengine_v1alpha { */ title?: string | null; } + /** + * An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. + */ + export interface Schema$GoogleTypeLatLng { + /** + * The latitude in degrees. It must be in the range [-90.0, +90.0]. + */ + latitude?: number | null; + /** + * The longitude in degrees. It must be in the range [-180.0, +180.0]. + */ + longitude?: number | null; + } /** * Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). */ @@ -17625,6 +18265,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17792,6 +18433,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17956,6 +18598,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18113,6 +18756,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18333,6 +18977,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18485,6 +19130,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18652,6 +19298,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18811,6 +19458,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19088,6 +19736,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19248,6 +19897,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19406,6 +20056,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19555,6 +20206,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19710,6 +20362,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19872,6 +20525,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20043,6 +20697,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20202,6 +20857,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20362,6 +21018,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20522,6 +21179,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20533,7 +21191,7 @@ export namespace discoveryengine_v1alpha { * const res = await discoveryengine.projects.locations.setUpDataConnectorV2({ * // Required. The display name of the Collection. Should be human readable, used to display collections in the Console Dashboard. UTF-8 encoded string with limit of 1024 characters. * collectionDisplayName: 'placeholder-value', - * // Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an INVALID_ARGUMENT error is returned. + * // Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. Should conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. * collectionId: 'placeholder-value', * // Required. The parent of Collection, in the format of `projects/{project\}/locations/{location\}`. * parent: 'projects/my-project/locations/my-location', @@ -20549,6 +21207,7 @@ export namespace discoveryengine_v1alpha { * // "autoRunDisabled": false, * // "bapConfig": {}, * // "blockingReasons": [], + * // "cliConfig": {}, * // "connectorModes": [], * // "connectorType": "my_connectorType", * // "createEuaSaas": false, @@ -20556,6 +21215,7 @@ export namespace discoveryengine_v1alpha { * // "dataProtectionPolicy": {}, * // "dataSource": "my_dataSource", * // "destinationConfigs": [], + * // "dynamicTools": [], * // "egressFqdns": [], * // "endUserConfig": {}, * // "entities": [], @@ -20724,6 +21384,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20882,6 +21543,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21154,7 +21816,7 @@ export namespace discoveryengine_v1alpha { */ collectionDisplayName?: string; /** - * Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an INVALID_ARGUMENT error is returned. + * Required. The ID to use for the Collection, which will become the final component of the Collection's resource name. A new Collection is created as part of the DataConnector setup. DataConnector is a singleton resource under Collection, managing all DataStores of the Collection. Should conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. */ collectionId?: string; /** @@ -21225,6 +21887,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21390,6 +22053,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21526,6 +22190,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21676,6 +22341,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21832,6 +22498,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22058,6 +22725,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22204,6 +22872,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22359,6 +23028,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22510,6 +23180,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22729,6 +23400,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22875,6 +23547,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23027,6 +23700,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23037,7 +23711,7 @@ export namespace discoveryengine_v1alpha { * // Do the magic * const res = * await discoveryengine.projects.locations.collections.getDataConnector({ - * // Required. Full resource name of DataConnector, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector`. If the caller does not have permission to access the DataConnector, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. If the requested DataConnector does not exist, a NOT_FOUND error is returned. + * // Required. Full resource name of DataConnector, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector`. If the caller does not have permission to access the DataConnector, regardless of whether or not it exists, a `PERMISSION_DENIED` error is returned. If the requested DataConnector does not exist, a `NOT_FOUND` error is returned. * name: 'projects/my-project/locations/my-location/collections/my-collection/dataConnector', * }); * console.log(res.data); @@ -23051,6 +23725,7 @@ export namespace discoveryengine_v1alpha { * // "autoRunDisabled": false, * // "bapConfig": {}, * // "blockingReasons": [], + * // "cliConfig": {}, * // "connectorModes": [], * // "connectorType": "my_connectorType", * // "createEuaSaas": false, @@ -23058,6 +23733,7 @@ export namespace discoveryengine_v1alpha { * // "dataProtectionPolicy": {}, * // "dataSource": "my_dataSource", * // "destinationConfigs": [], + * // "dynamicTools": [], * // "egressFqdns": [], * // "endUserConfig": {}, * // "entities": [], @@ -23218,6 +23894,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23376,6 +24053,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23536,6 +24214,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23546,9 +24225,9 @@ export namespace discoveryengine_v1alpha { * // Do the magic * const res = * await discoveryengine.projects.locations.collections.updateDataConnector({ - * // Output only. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. + * // Identifier. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. * name: 'projects/my-project/locations/my-location/collections/my-collection/dataConnector', - * // Indicates which fields in the provided DataConnector to update. Supported field paths include: - `refresh_interval` - `params` - `auto_run_disabled` - `action_config` - `action_config.action_params` - `action_config.service_name` - `destination_configs` - `blocking_reasons` - `sync_mode` - `incremental_sync_disabled` - `incremental_refresh_interval` - `data_protection_policy` Note: Support for these fields may vary depending on the connector type. For example, not all connectors support `destination_configs`. If an unsupported or unknown field path is provided, the request will return an INVALID_ARGUMENT error. + * // Indicates which fields in the provided DataConnector to update. Supported field paths include: - `refresh_interval` - `params` - `auto_run_disabled` - `action_config` - `action_config.action_params` - `action_config.service_name` - `destination_configs` - `blocking_reasons` - `sync_mode` - `incremental_sync_disabled` - `incremental_refresh_interval` - `data_protection_policy` Note: Support for these fields may vary depending on the connector type. For example, not all connectors support `destination_configs`. If an unsupported or unknown field path is provided, the request will return an `INVALID_ARGUMENT` error. * updateMask: 'placeholder-value', * * // Request body metadata @@ -23562,6 +24241,7 @@ export namespace discoveryengine_v1alpha { * // "autoRunDisabled": false, * // "bapConfig": {}, * // "blockingReasons": [], + * // "cliConfig": {}, * // "connectorModes": [], * // "connectorType": "my_connectorType", * // "createEuaSaas": false, @@ -23569,6 +24249,7 @@ export namespace discoveryengine_v1alpha { * // "dataProtectionPolicy": {}, * // "dataSource": "my_dataSource", * // "destinationConfigs": [], + * // "dynamicTools": [], * // "egressFqdns": [], * // "endUserConfig": {}, * // "entities": [], @@ -23611,6 +24292,7 @@ export namespace discoveryengine_v1alpha { * // "autoRunDisabled": false, * // "bapConfig": {}, * // "blockingReasons": [], + * // "cliConfig": {}, * // "connectorModes": [], * // "connectorType": "my_connectorType", * // "createEuaSaas": false, @@ -23618,6 +24300,7 @@ export namespace discoveryengine_v1alpha { * // "dataProtectionPolicy": {}, * // "dataSource": "my_dataSource", * // "destinationConfigs": [], + * // "dynamicTools": [], * // "egressFqdns": [], * // "endUserConfig": {}, * // "entities": [], @@ -23768,7 +24451,7 @@ export namespace discoveryengine_v1alpha { } export interface Params$Resource$Projects$Locations$Collections$Getdataconnector extends StandardParameters { /** - * Required. Full resource name of DataConnector, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector`. If the caller does not have permission to access the DataConnector, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. If the requested DataConnector does not exist, a NOT_FOUND error is returned. + * Required. Full resource name of DataConnector, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector`. If the caller does not have permission to access the DataConnector, regardless of whether or not it exists, a `PERMISSION_DENIED` error is returned. If the requested DataConnector does not exist, a `NOT_FOUND` error is returned. */ name?: string; } @@ -23807,11 +24490,11 @@ export namespace discoveryengine_v1alpha { } export interface Params$Resource$Projects$Locations$Collections$Updatedataconnector extends StandardParameters { /** - * Output only. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. + * Identifier. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. */ name?: string; /** - * Indicates which fields in the provided DataConnector to update. Supported field paths include: - `refresh_interval` - `params` - `auto_run_disabled` - `action_config` - `action_config.action_params` - `action_config.service_name` - `destination_configs` - `blocking_reasons` - `sync_mode` - `incremental_sync_disabled` - `incremental_refresh_interval` - `data_protection_policy` Note: Support for these fields may vary depending on the connector type. For example, not all connectors support `destination_configs`. If an unsupported or unknown field path is provided, the request will return an INVALID_ARGUMENT error. + * Indicates which fields in the provided DataConnector to update. Supported field paths include: - `refresh_interval` - `params` - `auto_run_disabled` - `action_config` - `action_config.action_params` - `action_config.service_name` - `destination_configs` - `blocking_reasons` - `sync_mode` - `incremental_sync_disabled` - `incremental_refresh_interval` - `data_protection_policy` Note: Support for these fields may vary depending on the connector type. For example, not all connectors support `destination_configs`. If an unsupported or unknown field path is provided, the request will return an `INVALID_ARGUMENT` error. */ updateMask?: string; @@ -23863,6 +24546,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23880,7 +24564,9 @@ export namespace discoveryengine_v1alpha { * // Request body metadata * requestBody: { * // request body parameters - * // {} + * // { + * // "scope": "my_scope" + * // } * }, * }, * ); @@ -24026,6 +24712,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24182,6 +24869,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24317,6 +25005,161 @@ export namespace discoveryengine_v1alpha { } } + /** + * ServeMcpDeleteRequest serves a MCP DELETE request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const discoveryengine = google.discoveryengine('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await discoveryengine.projects.locations.collections.dataConnector.mcp({ + * collectionsId: 'placeholder-value', + * // The HTTP Content-Type header value specifying the content type of the body. + * contentType: 'placeholder-value', + * // The HTTP request/response body as raw binary. + * data: 'placeholder-value', + * // Application specific response metadata. Must be set in the first response for streaming APIs. + * extensions: 'placeholder-value', + * + * locationsId: 'placeholder-value', + * + * projectsId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "contentType": "my_contentType", + * // "data": "my_data", + * // "extensions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + mcp( + params: Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp, + options: StreamMethodOptions + ): Promise>; + mcp( + params?: Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp, + options?: MethodOptions + ): Promise>; + mcp( + params: Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + mcp( + params: Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + mcp( + params: Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp, + callback: BodyResponseCallback + ): void; + mcp(callback: BodyResponseCallback): void; + mcp( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://discoveryengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataConnector/mcp' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['projectsId', 'locationsId', 'collectionsId'], + pathParams: ['collectionsId', 'locationsId', 'projectsId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Starts an immediate synchronization process for a DataConnector. Third Party Connector Users must specify which entities should be synced. FHIR Connectors must provide a timestamp to indicate the point in time from which data should be synced. * @example @@ -24343,6 +25186,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24518,6 +25362,32 @@ export namespace discoveryengine_v1alpha { */ name?: string; } + export interface Params$Resource$Projects$Locations$Collections$Dataconnector$Mcp extends StandardParameters { + /** + * + */ + collectionsId?: string; + /** + * The HTTP Content-Type header value specifying the content type of the body. + */ + contentType?: string; + /** + * The HTTP request/response body as raw binary. + */ + data?: string; + /** + * Application specific response metadata. Must be set in the first response for streaming APIs. + */ + extensions?: {[key: string]: any}[]; + /** + * + */ + locationsId?: string; + /** + * + */ + projectsId?: string; + } export interface Params$Resource$Projects$Locations$Collections$Dataconnector$Startconnectorrun extends StandardParameters { /** * Required. Connector name of the form `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector` @@ -24562,6 +25432,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24573,11 +25444,11 @@ export namespace discoveryengine_v1alpha { * const res = * await discoveryengine.projects.locations.collections.dataConnector.connectorRuns.list( * { - * // Requested page size. Server may return fewer items than requested. If unspecified, defaults to 10. The maximum value is 50; values above 50 will be coerced to 50. If this field is negative, an INVALID_ARGUMENT error is returned. + * // Requested page size. Server may return fewer items than requested. If unspecified, defaults to 10. The maximum value is 50; values above 50 will be coerced to 50. If this field is negative, an `INVALID_ARGUMENT` error is returned. * pageSize: 'placeholder-value', * // A page token, received from a previous `ListConnectorRuns` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListConnectorRuns` must match the call that provided the page token. * pageToken: 'placeholder-value', - * // Required. The parent DataConnector resource name, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector`. If the caller does not have permission to list ConnectorRuns under this DataConnector, regardless of whether or not this DataConnector exists, a PERMISSION_DENIED error is returned. + * // Required. The parent DataConnector resource name, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector`. If the caller does not have permission to list ConnectorRuns under this DataConnector, regardless of whether or not this DataConnector exists, a `PERMISSION_DENIED` error is returned. * parent: * 'projects/my-project/locations/my-location/collections/my-collection/dataConnector', * }, @@ -24701,7 +25572,7 @@ export namespace discoveryengine_v1alpha { export interface Params$Resource$Projects$Locations$Collections$Dataconnector$Connectorruns$List extends StandardParameters { /** - * Requested page size. Server may return fewer items than requested. If unspecified, defaults to 10. The maximum value is 50; values above 50 will be coerced to 50. If this field is negative, an INVALID_ARGUMENT error is returned. + * Requested page size. Server may return fewer items than requested. If unspecified, defaults to 10. The maximum value is 50; values above 50 will be coerced to 50. If this field is negative, an `INVALID_ARGUMENT` error is returned. */ pageSize?: number; /** @@ -24709,7 +25580,7 @@ export namespace discoveryengine_v1alpha { */ pageToken?: string; /** - * Required. The parent DataConnector resource name, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector`. If the caller does not have permission to list ConnectorRuns under this DataConnector, regardless of whether or not this DataConnector exists, a PERMISSION_DENIED error is returned. + * Required. The parent DataConnector resource name, such as `projects/{project\}/locations/{location\}/collections/{collection_id\}/dataConnector`. If the caller does not have permission to list ConnectorRuns under this DataConnector, regardless of whether or not this DataConnector exists, a `PERMISSION_DENIED` error is returned. */ parent?: string; } @@ -24745,6 +25616,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24895,6 +25767,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25171,6 +26044,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25335,6 +26209,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25501,6 +26376,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25537,9 +26413,11 @@ export namespace discoveryengine_v1alpha { * // "configurableBillingApproachUpdateTime": "my_configurableBillingApproachUpdateTime", * // "contentConfig": "my_contentConfig", * // "createTime": "my_createTime", + * // "dataProtectionPolicy": {}, * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "idpConfig": {}, @@ -25695,6 +26573,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25843,6 +26722,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26005,6 +26885,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26030,9 +26911,11 @@ export namespace discoveryengine_v1alpha { * // "configurableBillingApproachUpdateTime": "my_configurableBillingApproachUpdateTime", * // "contentConfig": "my_contentConfig", * // "createTime": "my_createTime", + * // "dataProtectionPolicy": {}, * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "idpConfig": {}, @@ -26178,6 +27061,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26333,6 +27217,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26485,6 +27370,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26646,6 +27532,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26673,9 +27560,11 @@ export namespace discoveryengine_v1alpha { * // "configurableBillingApproachUpdateTime": "my_configurableBillingApproachUpdateTime", * // "contentConfig": "my_contentConfig", * // "createTime": "my_createTime", + * // "dataProtectionPolicy": {}, * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "idpConfig": {}, @@ -26704,9 +27593,11 @@ export namespace discoveryengine_v1alpha { * // "configurableBillingApproachUpdateTime": "my_configurableBillingApproachUpdateTime", * // "contentConfig": "my_contentConfig", * // "createTime": "my_createTime", + * // "dataProtectionPolicy": {}, * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "idpConfig": {}, @@ -26852,6 +27743,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27014,6 +27906,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27176,6 +28069,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27341,6 +28235,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27707,6 +28602,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27866,6 +28762,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28024,6 +28921,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28229,6 +29127,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28415,6 +29314,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28555,6 +29455,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28717,6 +29618,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28879,6 +29781,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29055,6 +29958,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29216,6 +30120,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29400,6 +30305,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29674,6 +30580,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29836,6 +30743,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30025,6 +30933,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30174,6 +31083,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30324,6 +31234,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30538,6 +31449,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud_search.query', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30733,6 +31645,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30898,6 +31811,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31087,6 +32001,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31273,6 +32188,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31413,6 +32329,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31575,6 +32492,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31738,6 +32656,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31988,6 +32907,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32161,6 +33081,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32335,6 +33256,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32475,6 +33397,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32632,6 +33555,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32797,6 +33721,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33048,6 +33973,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33230,6 +34156,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33380,6 +34307,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33581,6 +34509,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33731,6 +34660,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33937,6 +34867,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34104,6 +35035,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34254,6 +35186,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34409,6 +35342,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34570,6 +35504,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34797,6 +35732,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34947,6 +35883,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35149,6 +36086,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35160,7 +36098,7 @@ export namespace discoveryengine_v1alpha { * const res = * await discoveryengine.projects.locations.collections.dataStores.servingConfigs.answer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/collections/my-collection/dataStores/my-dataStore/servingConfigs/my-servingConfig', * @@ -35326,6 +36264,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35538,6 +36477,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35678,6 +36618,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35853,6 +36794,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36014,6 +36956,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36222,6 +37165,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36395,6 +37339,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36420,9 +37365,11 @@ export namespace discoveryengine_v1alpha { * // "contentSearchSpec": {}, * // "crowdingSpecs": [], * // "customFineTuningSpec": {}, + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, * // "embeddingSpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, @@ -36618,6 +37565,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36643,9 +37591,11 @@ export namespace discoveryengine_v1alpha { * // "contentSearchSpec": {}, * // "crowdingSpecs": [], * // "customFineTuningSpec": {}, + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, * // "embeddingSpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, @@ -36841,6 +37791,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36852,7 +37803,7 @@ export namespace discoveryengine_v1alpha { * const res = * await discoveryengine.projects.locations.collections.dataStores.servingConfigs.streamAnswer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/collections/my-collection/dataStores/my-dataStore/servingConfigs/my-servingConfig', * @@ -36996,7 +37947,7 @@ export namespace discoveryengine_v1alpha { export interface Params$Resource$Projects$Locations$Collections$Datastores$Servingconfigs$Answer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -37096,7 +38047,7 @@ export namespace discoveryengine_v1alpha { } export interface Params$Resource$Projects$Locations$Collections$Datastores$Servingconfigs$Streamanswer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -37143,6 +38094,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37157,6 +38109,8 @@ export namespace discoveryengine_v1alpha { * // Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` * parent: * 'projects/my-project/locations/my-location/collections/my-collection/dataStores/my-dataStore', + * // Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + * sessionId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -37324,6 +38278,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37465,6 +38420,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37628,6 +38584,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37794,6 +38751,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37953,6 +38911,10 @@ export namespace discoveryengine_v1alpha { * Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` */ parent?: string; + /** + * Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + */ + sessionId?: string; /** * Request body metadata @@ -38044,6 +39006,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -38239,6 +39202,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -38398,6 +39362,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -38557,6 +39522,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -38716,6 +39682,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -38878,6 +39845,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -39033,6 +40001,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -39196,6 +40165,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -39442,6 +40412,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -39592,6 +40563,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -39793,6 +40765,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -39957,6 +40930,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40107,6 +41081,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40305,6 +41280,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40466,6 +41442,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40637,6 +41614,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40787,6 +41765,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40948,6 +41927,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41110,6 +42090,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41344,6 +42325,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41494,6 +42476,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41696,6 +42679,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41859,6 +42843,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42049,6 +43034,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42204,6 +43190,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42370,6 +43357,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42534,6 +43522,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42563,6 +43552,7 @@ export namespace discoveryengine_v1alpha { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -42593,6 +43583,7 @@ export namespace discoveryengine_v1alpha { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -42806,6 +43797,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43000,6 +43992,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43316,6 +44309,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43336,6 +44330,7 @@ export namespace discoveryengine_v1alpha { * requestBody: { * // request body parameters * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -43355,7 +44350,7 @@ export namespace discoveryengine_v1alpha { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "recommendationMetadata": {}, * // "searchEngineConfig": {}, * // "similarDocumentsConfig": {}, @@ -43502,6 +44497,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43650,6 +44646,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43666,6 +44663,7 @@ export namespace discoveryengine_v1alpha { * * // Example response * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -43685,7 +44683,7 @@ export namespace discoveryengine_v1alpha { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "recommendationMetadata": {}, * // "searchEngineConfig": {}, * // "similarDocumentsConfig": {}, @@ -43823,6 +44821,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43973,6 +44972,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44128,6 +45128,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44290,6 +45291,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44309,6 +45311,7 @@ export namespace discoveryengine_v1alpha { * requestBody: { * // request body parameters * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -44328,7 +45331,7 @@ export namespace discoveryengine_v1alpha { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "recommendationMetadata": {}, * // "searchEngineConfig": {}, * // "similarDocumentsConfig": {}, @@ -44341,6 +45344,7 @@ export namespace discoveryengine_v1alpha { * * // Example response * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -44360,7 +45364,7 @@ export namespace discoveryengine_v1alpha { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "recommendationMetadata": {}, * // "searchEngineConfig": {}, * // "similarDocumentsConfig": {}, @@ -44498,6 +45502,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44521,6 +45526,7 @@ export namespace discoveryengine_v1alpha { * * // Example response * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -44540,7 +45546,7 @@ export namespace discoveryengine_v1alpha { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "recommendationMetadata": {}, * // "searchEngineConfig": {}, * // "similarDocumentsConfig": {}, @@ -44681,6 +45687,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44704,6 +45711,7 @@ export namespace discoveryengine_v1alpha { * * // Example response * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -44723,7 +45731,7 @@ export namespace discoveryengine_v1alpha { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "recommendationMetadata": {}, * // "searchEngineConfig": {}, * // "similarDocumentsConfig": {}, @@ -44864,6 +45872,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45020,6 +46029,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45306,6 +46316,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45468,6 +46479,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45621,6 +46633,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45836,6 +46849,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45857,6 +46871,7 @@ export namespace discoveryengine_v1alpha { * requestBody: { * // request body parameters * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -45865,6 +46880,7 @@ export namespace discoveryengine_v1alpha { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * }, @@ -45874,6 +46890,7 @@ export namespace discoveryengine_v1alpha { * * // Example response * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -45882,6 +46899,7 @@ export namespace discoveryengine_v1alpha { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * } @@ -46019,6 +47037,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46160,6 +47179,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46179,6 +47199,7 @@ export namespace discoveryengine_v1alpha { * * // Example response * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -46187,6 +47208,7 @@ export namespace discoveryengine_v1alpha { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * } @@ -46321,6 +47343,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46483,6 +47506,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46503,6 +47527,7 @@ export namespace discoveryengine_v1alpha { * requestBody: { * // request body parameters * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -46511,6 +47536,7 @@ export namespace discoveryengine_v1alpha { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * }, @@ -46520,6 +47546,7 @@ export namespace discoveryengine_v1alpha { * * // Example response * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -46528,6 +47555,7 @@ export namespace discoveryengine_v1alpha { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * } @@ -46662,6 +47690,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46919,6 +47948,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46951,6 +47981,7 @@ export namespace discoveryengine_v1alpha { * // "languageCode": "my_languageCode", * // "managedAgentDefinition": {}, * // "name": "my_name", + * // "observabilityConfig": {}, * // "rejectionReason": "my_rejectionReason", * // "sharingConfig": {}, * // "starterPrompts": [], @@ -46978,6 +48009,7 @@ export namespace discoveryengine_v1alpha { * // "languageCode": "my_languageCode", * // "managedAgentDefinition": {}, * // "name": "my_name", + * // "observabilityConfig": {}, * // "rejectionReason": "my_rejectionReason", * // "sharingConfig": {}, * // "starterPrompts": [], @@ -47120,6 +48152,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47271,6 +48304,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47303,6 +48337,7 @@ export namespace discoveryengine_v1alpha { * // "languageCode": "my_languageCode", * // "managedAgentDefinition": {}, * // "name": "my_name", + * // "observabilityConfig": {}, * // "rejectionReason": "my_rejectionReason", * // "sharingConfig": {}, * // "starterPrompts": [], @@ -47442,6 +48477,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47453,6 +48489,8 @@ export namespace discoveryengine_v1alpha { * const res = * await discoveryengine.projects.locations.collections.engines.assistants.agents.list( * { + * // Optional. Filters the Agents list. Supported fields: * `display_name`: display name of the agent. Supports `=`, `:`. * `id`: ID of the agent. Supports `=`. * `state`: state of the agent. Supports `=`. * `create_time`: timestamp when the agent was created. Supports `=`, `\>`, `<`, `\>=`, `<=`. * `update_time`: timestamp when the agent was last updated. Supports `=`, `\>`, `<`, `\>=`, `<=`. Examples: * `display_name = "My Agent"` * `create_time \> "2023-01-01T00:00:00Z"` + * filter: 'placeholder-value', * // Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "desc" after a field name for descending. Supported fields: * `update_time` * `is_pinned` Example: * "update_time desc" * "is_pinned desc,update_time desc": list agents by is_pinned first, then by update_time. * orderBy: 'placeholder-value', * // Optional. Maximum number of Agents to return. If unspecified, defaults to 100. The maximum allowed value is 1000; anything above that will be coerced down to 1000. @@ -47606,6 +48644,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47639,6 +48678,7 @@ export namespace discoveryengine_v1alpha { * // "languageCode": "my_languageCode", * // "managedAgentDefinition": {}, * // "name": "my_name", + * // "observabilityConfig": {}, * // "rejectionReason": "my_rejectionReason", * // "sharingConfig": {}, * // "starterPrompts": [], @@ -47666,6 +48706,7 @@ export namespace discoveryengine_v1alpha { * // "languageCode": "my_languageCode", * // "managedAgentDefinition": {}, * // "name": "my_name", + * // "observabilityConfig": {}, * // "rejectionReason": "my_rejectionReason", * // "sharingConfig": {}, * // "starterPrompts": [], @@ -47804,6 +48845,10 @@ export namespace discoveryengine_v1alpha { name?: string; } export interface Params$Resource$Projects$Locations$Collections$Engines$Assistants$Agents$List extends StandardParameters { + /** + * Optional. Filters the Agents list. Supported fields: * `display_name`: display name of the agent. Supports `=`, `:`. * `id`: ID of the agent. Supports `=`. * `state`: state of the agent. Supports `=`. * `create_time`: timestamp when the agent was created. Supports `=`, `\>`, `<`, `\>=`, `<=`. * `update_time`: timestamp when the agent was last updated. Supports `=`, `\>`, `<`, `\>=`, `<=`. Examples: * `display_name = "My Agent"` * `create_time \> "2023-01-01T00:00:00Z"` + */ + filter?: string; /** * Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "desc" after a field name for descending. Supported fields: * `update_time` * `is_pinned` Example: * "update_time desc" * "is_pinned desc,update_time desc": list agents by is_pinned first, then by update_time. */ @@ -47869,6 +48914,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48053,6 +49099,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48218,6 +49265,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48397,6 +49445,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48538,6 +49587,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48697,6 +49747,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48861,6 +49912,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49105,6 +50157,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud_search.query', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49281,6 +50334,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49476,6 +50530,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49662,6 +50717,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49802,6 +50858,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49962,6 +51019,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50123,6 +51181,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50373,6 +51432,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50546,6 +51606,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50720,6 +51781,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50860,6 +51922,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51017,6 +52080,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51182,6 +52246,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51433,6 +52498,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51583,6 +52649,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51785,6 +52852,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51796,7 +52864,7 @@ export namespace discoveryengine_v1alpha { * const res = * await discoveryengine.projects.locations.collections.engines.servingConfigs.answer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/servingConfigs/my-servingConfig', * @@ -51962,6 +53030,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52174,6 +53243,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52314,6 +53384,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52489,6 +53560,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52650,6 +53722,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52858,6 +53931,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53031,6 +54105,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53056,9 +54131,11 @@ export namespace discoveryengine_v1alpha { * // "contentSearchSpec": {}, * // "crowdingSpecs": [], * // "customFineTuningSpec": {}, + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, * // "embeddingSpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, @@ -53254,6 +54331,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53279,9 +54357,11 @@ export namespace discoveryengine_v1alpha { * // "contentSearchSpec": {}, * // "crowdingSpecs": [], * // "customFineTuningSpec": {}, + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, * // "embeddingSpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, @@ -53477,6 +54557,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53488,7 +54569,7 @@ export namespace discoveryengine_v1alpha { * const res = * await discoveryengine.projects.locations.collections.engines.servingConfigs.streamAnswer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/servingConfigs/my-servingConfig', * @@ -53632,7 +54713,7 @@ export namespace discoveryengine_v1alpha { export interface Params$Resource$Projects$Locations$Collections$Engines$Servingconfigs$Answer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -53732,7 +54813,7 @@ export namespace discoveryengine_v1alpha { } export interface Params$Resource$Projects$Locations$Collections$Engines$Servingconfigs$Streamanswer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -53794,6 +54875,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53808,6 +54890,8 @@ export namespace discoveryengine_v1alpha { * // Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` * parent: * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine', + * // Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + * sessionId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -53975,6 +55059,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54116,6 +55201,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54277,6 +55363,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54441,6 +55528,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54600,6 +55688,10 @@ export namespace discoveryengine_v1alpha { * Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` */ parent?: string; + /** + * Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + */ + sessionId?: string; /** * Request body metadata @@ -54703,6 +55795,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54867,6 +55960,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55048,6 +56142,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55243,6 +56338,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55408,6 +56504,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55602,6 +56699,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55873,6 +56971,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56021,6 +57120,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56277,6 +57377,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56439,6 +57540,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56604,6 +57706,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56638,9 +57741,11 @@ export namespace discoveryengine_v1alpha { * // "configurableBillingApproachUpdateTime": "my_configurableBillingApproachUpdateTime", * // "contentConfig": "my_contentConfig", * // "createTime": "my_createTime", + * // "dataProtectionPolicy": {}, * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "idpConfig": {}, @@ -56795,6 +57900,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56941,6 +58047,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57101,6 +58208,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57125,9 +58233,11 @@ export namespace discoveryengine_v1alpha { * // "configurableBillingApproachUpdateTime": "my_configurableBillingApproachUpdateTime", * // "contentConfig": "my_contentConfig", * // "createTime": "my_createTime", + * // "dataProtectionPolicy": {}, * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "idpConfig": {}, @@ -57272,6 +58382,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57427,6 +58538,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57577,6 +58689,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57735,6 +58848,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57761,9 +58875,11 @@ export namespace discoveryengine_v1alpha { * // "configurableBillingApproachUpdateTime": "my_configurableBillingApproachUpdateTime", * // "contentConfig": "my_contentConfig", * // "createTime": "my_createTime", + * // "dataProtectionPolicy": {}, * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "idpConfig": {}, @@ -57792,9 +58908,11 @@ export namespace discoveryengine_v1alpha { * // "configurableBillingApproachUpdateTime": "my_configurableBillingApproachUpdateTime", * // "contentConfig": "my_contentConfig", * // "createTime": "my_createTime", + * // "dataProtectionPolicy": {}, * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "idpConfig": {}, @@ -57939,6 +59057,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58099,6 +59218,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58259,6 +59379,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58614,6 +59735,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58773,6 +59895,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58928,6 +60051,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59132,6 +60256,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59318,6 +60443,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59458,6 +60584,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59618,6 +60745,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59780,6 +60908,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59956,6 +61085,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60117,6 +61247,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60301,6 +61432,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60575,6 +61707,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60737,6 +61870,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60926,6 +62060,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61075,6 +62210,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61225,6 +62361,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61439,6 +62576,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud_search.query', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61634,6 +62772,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61799,6 +62938,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61988,6 +63128,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62172,6 +63313,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62310,6 +63452,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62469,6 +63612,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62631,6 +63775,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62879,6 +64024,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63050,6 +64196,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63222,6 +64369,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63360,6 +64508,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63515,6 +64664,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63678,6 +64828,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63939,6 +65090,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64087,6 +65239,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64286,6 +65439,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64434,6 +65588,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64633,6 +65788,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64798,6 +65954,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64946,6 +66103,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -65098,6 +66256,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -65255,6 +66414,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -65482,6 +66642,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -65492,7 +66653,7 @@ export namespace discoveryengine_v1alpha { * // Do the magic * const res = * await discoveryengine.projects.locations.dataStores.servingConfigs.answer({ - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/dataStores/my-dataStore/servingConfigs/my-servingConfig', * @@ -65657,6 +66818,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -65867,6 +67029,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -66005,6 +67168,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -66178,6 +67342,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -66337,6 +67502,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -66543,6 +67709,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -66716,6 +67883,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -66740,9 +67908,11 @@ export namespace discoveryengine_v1alpha { * // "contentSearchSpec": {}, * // "crowdingSpecs": [], * // "customFineTuningSpec": {}, + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, * // "embeddingSpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, @@ -66937,6 +68107,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -66962,9 +68133,11 @@ export namespace discoveryengine_v1alpha { * // "contentSearchSpec": {}, * // "crowdingSpecs": [], * // "customFineTuningSpec": {}, + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, * // "embeddingSpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, @@ -67160,6 +68333,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -67171,7 +68345,7 @@ export namespace discoveryengine_v1alpha { * const res = * await discoveryengine.projects.locations.dataStores.servingConfigs.streamAnswer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/dataStores/my-dataStore/servingConfigs/my-servingConfig', * @@ -67315,7 +68489,7 @@ export namespace discoveryengine_v1alpha { export interface Params$Resource$Projects$Locations$Datastores$Servingconfigs$Answer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -67415,7 +68589,7 @@ export namespace discoveryengine_v1alpha { } export interface Params$Resource$Projects$Locations$Datastores$Servingconfigs$Streamanswer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -67462,6 +68636,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -67475,6 +68650,8 @@ export namespace discoveryengine_v1alpha { * // Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` * parent: * 'projects/my-project/locations/my-location/dataStores/my-dataStore', + * // Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + * sessionId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -67641,6 +68818,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -67780,6 +68958,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -67940,6 +69119,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -68105,6 +69285,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -68262,6 +69443,10 @@ export namespace discoveryengine_v1alpha { * Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` */ parent?: string; + /** + * Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + */ + sessionId?: string; /** * Request body metadata @@ -68353,6 +69538,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -68541,6 +69727,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -68700,6 +69887,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -68859,6 +70047,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -69063,6 +70252,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -69227,6 +70417,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -69377,6 +70568,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -69570,6 +70762,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -69731,6 +70924,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -69902,6 +71096,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -70052,6 +71247,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -70213,6 +71409,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -70375,6 +71572,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -70610,6 +71808,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -70773,6 +71972,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -70962,6 +72162,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -71115,6 +72316,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -71279,6 +72481,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -71441,6 +72644,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -71469,6 +72673,7 @@ export namespace discoveryengine_v1alpha { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -71498,6 +72703,7 @@ export namespace discoveryengine_v1alpha { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -71711,6 +72917,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -71903,6 +73110,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -72177,6 +73385,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -72341,6 +73550,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -72496,6 +73706,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -72652,6 +73863,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -72863,6 +74075,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -73025,6 +74238,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -73216,6 +74430,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -73389,6 +74604,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -73537,6 +74753,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -73690,6 +74907,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -73852,6 +75070,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -74010,6 +75229,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -74170,6 +75390,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -74426,6 +75647,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -74576,6 +75798,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -74777,6 +76000,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -74962,6 +76186,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -75122,6 +76347,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -75355,6 +76581,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -75504,6 +76731,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -75675,6 +76903,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -75829,6 +77058,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -75986,6 +77216,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -76205,6 +77436,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -76366,6 +77598,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -76530,6 +77763,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -76691,6 +77925,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -76842,6 +78077,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -77030,6 +78266,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -77176,6 +78413,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -77384,6 +78622,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -77545,6 +78784,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -77729,6 +78969,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -77923,6 +79164,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -78091,6 +79333,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -78228,6 +79471,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -78379,6 +79623,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -78535,6 +79780,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -78763,6 +80009,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -78925,6 +80172,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -79095,6 +80343,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -79235,6 +80484,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -79387,6 +80637,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -79552,6 +80803,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -79713,6 +80965,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -79955,6 +81208,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -80105,6 +81359,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -80266,6 +81521,7 @@ export namespace discoveryengine_v1alpha { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -80292,6 +81548,7 @@ export namespace discoveryengine_v1alpha { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -80321,6 +81578,7 @@ export namespace discoveryengine_v1alpha { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -80533,6 +81791,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -80670,321 +81929,6 @@ export namespace discoveryengine_v1alpha { } } - /** - * Creates a new User Store. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const discoveryengine = google.discoveryengine('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/discoveryengine.readwrite', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await discoveryengine.projects.locations.userStores.create({ - * // Required. The parent collection resource name, such as `projects/{project\}/locations/{location\}`. - * parent: 'projects/my-project/locations/my-location', - * // Required. The ID of the User Store to create. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 63 characters. - * userStoreId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "defaultLicenseConfig": "my_defaultLicenseConfig", - * // "displayName": "my_displayName", - * // "enableExpiredLicenseAutoUpdate": false, - * // "enableLicenseAutoRegister": false, - * // "name": "my_name" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "defaultLicenseConfig": "my_defaultLicenseConfig", - * // "displayName": "my_displayName", - * // "enableExpiredLicenseAutoUpdate": false, - * // "enableLicenseAutoRegister": false, - * // "name": "my_name" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Userstores$Create, - options: StreamMethodOptions - ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Userstores$Create, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - create( - params: Params$Resource$Projects$Locations$Userstores$Create, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Userstores$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Userstores$Create, - callback: BodyResponseCallback - ): void; - create( - callback: BodyResponseCallback - ): void; - create( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Userstores$Create - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Userstores$Create; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Userstores$Create; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = - options.rootUrl || 'https://discoveryengine.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+parent}/userStores').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Deletes the User Store. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const discoveryengine = google.discoveryengine('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/discoveryengine.readwrite', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await discoveryengine.projects.locations.userStores.delete({ - * // Required. The name of the User Store to delete. Format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}` - * name: 'projects/my-project/locations/my-location/userStores/my-userStore', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Userstores$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Userstores$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Userstores$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Userstores$Delete, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Userstores$Delete, - callback: BodyResponseCallback - ): void; - delete( - callback: BodyResponseCallback - ): void; - delete( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Userstores$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Userstores$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Userstores$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = - options.rootUrl || 'https://discoveryengine.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - /** * Gets the User Store. * @example @@ -81010,6 +81954,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -81162,6 +82107,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -81315,27 +82261,6 @@ export namespace discoveryengine_v1alpha { */ requestBody?: Schema$GoogleCloudDiscoveryengineV1alphaBatchUpdateUserLicensesRequest; } - export interface Params$Resource$Projects$Locations$Userstores$Create extends StandardParameters { - /** - * Required. The parent collection resource name, such as `projects/{project\}/locations/{location\}`. - */ - parent?: string; - /** - * Required. The ID of the User Store to create. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 63 characters. - */ - userStoreId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDiscoveryengineV1alphaUserStore; - } - export interface Params$Resource$Projects$Locations$Userstores$Delete extends StandardParameters { - /** - * Required. The name of the User Store to delete. Format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}` - */ - name?: string; - } export interface Params$Resource$Projects$Locations$Userstores$Get extends StandardParameters { /** * Required. The name of the User Store to get. Format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}` @@ -81389,6 +82314,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -81558,6 +82484,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -81706,6 +82633,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -81905,6 +82833,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -81915,7 +82844,9 @@ export namespace discoveryengine_v1alpha { * // Do the magic * const res = * await discoveryengine.projects.locations.userStores.userLicenses.list({ - * // Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a " desc" suffix. Redundant space characters in the syntax are insignificant. Supported fields: * `license_assignment_state` * `user_principal` * `user_profile` * `last_login_date` * `update_time` If not set, the default ordering is by `user_principal`. Examples: * `user_principal desc` to order by `user_principal` in descending order. * `license_assignment_state` to order by `license_assignment_state` in ascending order. * `last_login_date desc` to order by `last_login_date` in descending order. * `update_time desc` to order by `update_time` in descending order. * `last_login_date desc, user_principal` to order by `last_login_date` in descending order and then by `user_principal` in ascending order. + * // Optional. Filter for the list request. Supported fields: * `license_assignment_state` * `user_principal` * Examples: * `license_assignment_state = ASSIGNED` to list assigned user licenses. * `license_assignment_state = NO_LICENSE` to list not licensed users. * `license_assignment_state = NO_LICENSE_ATTEMPTED_LOGIN` to list users who attempted login but no license assigned. * `license_assignment_state != NO_LICENSE_ATTEMPTED_LOGIN` to filter out users who attempted login but no license assigned. * `user_principal = user1@example.com` to list user license for `user1@example.com`. + * filter: 'placeholder-value', + * // Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a " desc" suffix. Redundant space characters in the syntax are insignificant. Supported fields (only `user_principal` is supported for now): * `user_principal` If not set, the default ordering is by `user_principal`. Examples: * `user_principal` to order by `user_principal` in ascending order. * `user_principal desc` to order by `user_principal` in descending order. * orderBy: 'placeholder-value', * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, defaults to 10. The maximum value is 50; values above 50 will be coerced to 50. If this field is negative, an INVALID_ARGUMENT error is returned. * pageSize: 'placeholder-value', @@ -82044,7 +82975,11 @@ export namespace discoveryengine_v1alpha { export interface Params$Resource$Projects$Locations$Userstores$Userlicenses$List extends StandardParameters { /** - * Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a " desc" suffix. Redundant space characters in the syntax are insignificant. Supported fields: * `license_assignment_state` * `user_principal` * `user_profile` * `last_login_date` * `update_time` If not set, the default ordering is by `user_principal`. Examples: * `user_principal desc` to order by `user_principal` in descending order. * `license_assignment_state` to order by `license_assignment_state` in ascending order. * `last_login_date desc` to order by `last_login_date` in descending order. * `update_time desc` to order by `update_time` in descending order. * `last_login_date desc, user_principal` to order by `last_login_date` in descending order and then by `user_principal` in ascending order. + * Optional. Filter for the list request. Supported fields: * `license_assignment_state` * `user_principal` * Examples: * `license_assignment_state = ASSIGNED` to list assigned user licenses. * `license_assignment_state = NO_LICENSE` to list not licensed users. * `license_assignment_state = NO_LICENSE_ATTEMPTED_LOGIN` to list users who attempted login but no license assigned. * `license_assignment_state != NO_LICENSE_ATTEMPTED_LOGIN` to filter out users who attempted login but no license assigned. * `user_principal = user1@example.com` to list user license for `user1@example.com`. + */ + filter?: string; + /** + * Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a " desc" suffix. Redundant space characters in the syntax are insignificant. Supported fields (only `user_principal` is supported for now): * `user_principal` If not set, the default ordering is by `user_principal`. Examples: * `user_principal` to order by `user_principal` in ascending order. * `user_principal desc` to order by `user_principal` in descending order. */ orderBy?: string; /** @@ -82092,6 +83027,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -82238,6 +83174,7 @@ export namespace discoveryengine_v1alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * diff --git a/src/apis/discoveryengine/v1beta.ts b/src/apis/discoveryengine/v1beta.ts index 6af8abb6493..f9cc93b1a9a 100644 --- a/src/apis/discoveryengine/v1beta.ts +++ b/src/apis/discoveryengine/v1beta.ts @@ -112,6 +112,7 @@ export namespace discoveryengine_v1beta { */ export class Discoveryengine { context: APIRequestContext; + billingAccounts: Resource$Billingaccounts; projects: Resource$Projects; constructor(options: GlobalOptions, google?: GoogleConfigurable) { @@ -120,6 +121,7 @@ export namespace discoveryengine_v1beta { google, }; + this.billingAccounts = new Resource$Billingaccounts(this.context); this.projects = new Resource$Projects(this.context); } } @@ -459,6 +461,10 @@ export namespace discoveryengine_v1beta { * Optional. Action parameters in structured json format. */ actionParams?: {[key: string]: any} | null; + /** + * Optional. Whether to create a BAP connection for the connector. + */ + createBapConnection?: boolean | null; /** * Output only. The connector contains the necessary parameters and is configured to support actions. */ @@ -471,11 +477,26 @@ export namespace discoveryengine_v1beta { * Optional. The Service Directory resource name (projects/x/locations/x/namespaces/x/services/x) representing a VPC network endpoint used to connect to the data source's `instance_uri`, defined in DataConnector.params. Required when VPC Service Controls are enabled. */ serviceName?: string | null; + /** + * Optional. Mapping from operation name to the list of scopes. Only be populated if there are user specified scopes. + */ + userDefinedScopesMapping?: { + [key: string]: Schema$GoogleCloudDiscoveryengineV1ActionConfigScopeList; + } | null; /** * Optional. Whether to use static secrets for the connector. If true, the secrets provided in the action_params will be ignored. */ useStaticSecrets?: boolean | null; } + /** + * Stores a list of scopes. + */ + export interface Schema$GoogleCloudDiscoveryengineV1ActionConfigScopeList { + /** + * Optional. The list of scopes. + */ + scopes?: string[] | null; + } /** * Configuration data for advance site search. */ @@ -489,6 +510,24 @@ export namespace discoveryengine_v1beta { */ disableInitialIndex?: boolean | null; } + /** + * Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1AgentGatewaySetting { + /** + * Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE. + */ + defaultEgressAgentGateway?: Schema$GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference; + } + /** + * Reference to an Agent Gateway resource. + */ + export interface Schema$GoogleCloudDiscoveryengineV1AgentGatewaySettingAgentGatewayReference { + /** + * Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number\}/locations/{location\}/agentGateways/{agent_gateway\}`. + */ + name?: string | null; + } /** * The connector level alert config. */ @@ -536,6 +575,10 @@ export namespace discoveryengine_v1beta { * Optional. Action parameters in structured json format. */ actionParams?: {[key: string]: any} | null; + /** + * Optional. Whether to create a BAP connection for the connector. + */ + createBapConnection?: boolean | null; /** * Output only. The connector contains the necessary parameters and is configured to support actions. */ @@ -548,11 +591,28 @@ export namespace discoveryengine_v1beta { * Optional. The Service Directory resource name (projects/x/locations/x/namespaces/x/services/x) representing a VPC network endpoint used to connect to the data source's `instance_uri`, defined in DataConnector.params. Required when VPC Service Controls are enabled. */ serviceName?: string | null; + /** + * Optional. Mapping from operation name to the list of scopes. Only be populated if there are user specified scopes. + */ + userDefinedScopesMapping?: { + [ + key: string + ]: Schema$GoogleCloudDiscoveryengineV1alphaActionConfigScopeList; + } | null; /** * Optional. Whether to use static secrets for the connector. If true, the secrets provided in the action_params will be ignored. */ useStaticSecrets?: boolean | null; } + /** + * Stores a list of scopes. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaActionConfigScopeList { + /** + * Optional. The list of scopes. + */ + scopes?: string[] | null; + } /** * Request for DataStoreService.AddPatientFilter method. */ @@ -579,6 +639,24 @@ export namespace discoveryengine_v1beta { */ disableInitialIndex?: boolean | null; } + /** + * Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting { + /** + * Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE. + */ + defaultEgressAgentGateway?: Schema$GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference; + } + /** + * Reference to an Agent Gateway resource. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAgentGatewaySettingAgentGatewayReference { + /** + * Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number\}/locations/{location\}/agentGateways/{agent_gateway\}`. + */ + name?: string | null; + } /** * The connector level alert config. */ @@ -660,7 +738,7 @@ export namespace discoveryengine_v1beta { */ answerText?: string | null; /** - * List of blob attachments in the answer. + * Output only. List of blob attachments in the answer. */ blobAttachments?: Schema$GoogleCloudDiscoveryengineV1alphaAnswerBlobAttachment[]; /** @@ -1130,6 +1208,10 @@ export namespace discoveryengine_v1beta { * One part of the multi-part response of the assist call. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaAssistAnswerReply { + /** + * The time when the reply was created. + */ + createTime?: string | null; /** * Possibly grounded response text or media from the assistant. */ @@ -1249,11 +1331,19 @@ export namespace discoveryengine_v1beta { * Grounding information for parts of the text. */ segments?: Schema$GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataSegment[]; + /** + * Grounding information for parts of the visual content. + */ + visualSegments?: Schema$GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment[]; } /** * Referenced content and related document metadata. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataReference { + /** + * Chunk of code snippet from the referenced document. + */ + codeSnippet?: string | null; /** * Referenced text content. */ @@ -1275,6 +1365,7 @@ export namespace discoveryengine_v1beta { * Domain name from the document URI. Note that the `uri` field may contain a URL that redirects to the actual website, in which case this will contain the domain name of the target site. */ domain?: string | null; + language?: string | null; /** * The mime type of the document. https://www.iana.org/assignments/media-types/media-types.xhtml. */ @@ -1317,6 +1408,19 @@ export namespace discoveryengine_v1beta { */ text?: string | null; } + /** + * Grounding information for a visual segment. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment { + /** + * The content id of the visual segment. In order to display the citation of the visual element, this content_id needs to match with the `grounded_content.content_metadata.content_id` field. + */ + contentId?: string | null; + /** + * References for the visual segment. + */ + referenceIndices?: number[] | null; + } /** * The configuration for the BAP connector. */ @@ -1424,6 +1528,15 @@ export namespace discoveryengine_v1beta { */ citations?: Schema$GoogleCloudDiscoveryengineV1alphaCitation[]; } + /** + * The configuration for the CLI execution based connectors. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaCliConfig { + /** + * Optional. The actions enabled on the associated CLI connection. + */ + enabledActions?: string[] | null; + } /** * Configurations used to enable CMEK data encryption with Cloud KMS keys. */ @@ -1920,6 +2033,10 @@ export namespace discoveryengine_v1beta { * Output only. User actions that must be completed before the connector can start syncing data. */ blockingReasons?: string[] | null; + /** + * Optional. The configuration for establishing a CLI connection. + */ + cliConfig?: Schema$GoogleCloudDiscoveryengineV1alphaCliConfig; /** * Optional. The modes enabled for this connector. Default state is CONNECTOR_MODE_UNSPECIFIED. */ @@ -1941,7 +2058,7 @@ export namespace discoveryengine_v1beta { */ dataProtectionPolicy?: Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy; /** - * Required. The name of the data source. Supported values: `salesforce`, `jira`, `confluence`, `bigquery`. + * Required. The identifier for the data source. This is a partial list of supported connectors. Please refer to the [documentation](https://docs.cloud.google.com/gemini/enterprise/docs/connectors/introduction-to-connectors-and-data-stores) for the full list of connectors. Supported first-party connectors include: * `gcs` * `bigquery` * `gcp_fhir` * `google_mail` * `google_drive` * `google_calendar` * `google_chat` Supported third-party connectors include: Generally available (GA) connectors: * `onedrive` * `outlook` * `confluence` * `jira` * `servicenow` * `sharepoint` Preview connectors: * `asana` * `azure_active_directory` * `box` * `canva` * `confluence_server` * `custom_connector` * `docusign` * `dropbox` * `dynamics365` * `github` * `gitlab` * `hubspot` * `jira_server` * `linear` * `native_cloud_identity` * `notion` * `okta` * `pagerduty` * `peoplesoft` * `salesforce` * `shopify` * `slack` * `snowflake` * `teams` * `trello` * `workday` * `zendesk` */ dataSource?: string | null; /** @@ -1949,7 +2066,11 @@ export namespace discoveryengine_v1beta { */ destinationConfigs?: Schema$GoogleCloudDiscoveryengineV1alphaDestinationConfig[]; /** - * Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. Note: This field is derived from both the DataConnector.params, and connector source spec. It should only be used for CAIS and Org Policy evaluation purposes. + * Output only. The dynamic tools fetched for this connector. + */ + dynamicTools?: Schema$GoogleCloudDiscoveryengineV1alphaDynamicTool[]; + /** + * Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. */ egressFqdns?: string[] | null; /** @@ -2005,7 +2126,7 @@ export namespace discoveryengine_v1beta { */ latestPauseTime?: string | null; /** - * Output only. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. + * Identifier. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. */ name?: string | null; /** @@ -2057,7 +2178,7 @@ export namespace discoveryengine_v1beta { */ updateTime?: string | null; /** - * Output only. Whether the connector is created with VPC-SC enabled. This is only used for CuOP evaluation purpose. + * Output only. Whether the connector is created with VPC-SC enabled. */ vpcscEnabled?: boolean | null; } @@ -2163,11 +2284,11 @@ export namespace discoveryengine_v1beta { startingSchema?: Schema$GoogleCloudDiscoveryengineV1alphaSchema; } /** - * Data protection policy config for a connector. + * Contains the data protection policy config for a DataStore or a connector. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy { /** - * Optional. The sensitive data protection policy for the connector source. + * Optional. Specifies the sensitive data protection policy for the connector source. */ sensitiveDataProtectionPolicy?: Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicySensitiveDataProtectionPolicy; } @@ -2176,7 +2297,7 @@ export namespace discoveryengine_v1beta { */ export interface Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicySensitiveDataProtectionPolicy { /** - * Optional. The Sensitive Data Protection content policy resource name. + * Optional. Specifies the resource name of the Sensitive Data Protection content policy. */ policy?: string | null; } @@ -2216,6 +2337,10 @@ export namespace discoveryengine_v1beta { * Output only. Timestamp the DataStore was created at. */ createTime?: string | null; + /** + * Optional. Specifies the data protection policy for the data store. + */ + dataProtectionPolicy?: Schema$GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy; /** * Output only. The id of the default Schema associated to this data store. */ @@ -2228,6 +2353,10 @@ export namespace discoveryengine_v1beta { * Configuration for Document understanding and enrichment. */ documentProcessingConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDocumentProcessingConfig; + /** + * Optional. If set, this DataStore is a federated search DataStore. + */ + federatedSearchConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig; /** * Optional. Configuration for `HEALTHCARE_FHIR` vertical. */ @@ -2310,6 +2439,100 @@ export namespace discoveryengine_v1beta { */ websiteDataUpdateTime?: string | null; } + /** + * Stores information for federated search. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfig { + /** + * AlloyDB config. If set, this DataStore is connected to AlloyDB. + */ + alloyDbConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig; + /** + * NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise. + */ + notebooklmConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig; + /** + * Third Party OAuth config. If set, this DataStore is connected to a third party application. + */ + thirdPartyOauthConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig; + } + /** + * Stores information for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfig { + /** + * Optional. Configuration for Magic. + */ + alloydbAiNlConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig; + /** + * Required. Configuration for connecting to AlloyDB. + */ + alloydbConnectionConfig?: Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig; + /** + * Optional. Fields to be returned in the search results. If empty, all fields will be returned. + */ + returnedFields?: string[] | null; + } + /** + * Configuration for AlloyDB AI Natural Language. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig { + /** + * Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty. + */ + nlConfigId?: string | null; + } + /** + * Configuration for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig { + /** + * Optional. Auth mode. + */ + authMode?: string | null; + /** + * Required. The AlloyDB database to connect to. + */ + database?: string | null; + /** + * Optional. If true, enable PSVS for AlloyDB. + */ + enablePsvs?: boolean | null; + /** + * Required. The AlloyDB instance to connect to. + */ + instance?: string | null; + /** + * Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user. + */ + password?: string | null; + /** + * Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user. + */ + user?: string | null; + } + /** + * Config for connecting to NotebookLM Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigNotebooklmConfig { + /** + * Required. Search config name. Format: projects/x/locations/global/notebookLmSearchConfigs/x + */ + searchConfig?: string | null; + } + /** + * Stores information for third party applicationOAuth. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDataStoreFederatedSearchConfigThirdPartyOauthConfig { + /** + * Optional. The type of the application. E.g., "jira", "box", etc. + */ + appName?: string | null; + /** + * Optional. The instance name identifying the 3P app, e.g., "vaissptbots-my". This is different from the instance_uri which is the full URL of the 3P app e.g., "https://vaissptbots-my.sharepoint.com". + */ + instanceName?: string | null; + } /** * Stores information regarding the serving configurations at DataStore level. */ @@ -2657,6 +2880,27 @@ export namespace discoveryengine_v1beta { */ useNativeText?: boolean | null; } + /** + * Configuration for dynamic tools. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaDynamicTool { + /** + * Optional. The description of the tool. + */ + description?: string | null; + /** + * Optional. The display name of the tool. + */ + displayName?: string | null; + /** + * Optional. Whether the tool is enabled. + */ + enabled?: boolean | null; + /** + * Required. The name of the tool. + */ + name?: string | null; + } /** * Metadata related to the progress of the SiteSearchEngineService.EnableAdvancedSiteSearch operation. This will be returned by the google.longrunning.Operation.metadata field. */ @@ -2678,6 +2922,10 @@ export namespace discoveryengine_v1beta { * Metadata that describes the training and serving parameters of an Engine. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaEngine { + /** + * Optional. The agent gateway setting for the engine. + */ + agentGatewaySetting?: Schema$GoogleCloudDiscoveryengineV1alphaAgentGatewaySetting; /** * Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type. */ @@ -2723,7 +2971,7 @@ export namespace discoveryengine_v1beta { */ displayName?: string | null; /** - * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` + * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills` */ features?: {[key: string]: string} | null; /** @@ -2755,9 +3003,9 @@ export namespace discoveryengine_v1beta { */ observabilityConfig?: Schema$GoogleCloudDiscoveryengineV1alphaObservabilityConfig; /** - * Optional. The email of the procurement contact. + * Optional. The emails of the procurement contacts. */ - procurementContactEmail?: string | null; + procurementContactEmails?: string[] | null; /** * Output only. Additional information of a recommendation engine. Only applicable if solution_type is SOLUTION_TYPE_RECOMMENDATION. */ @@ -3142,6 +3390,10 @@ export namespace discoveryengine_v1beta { * Field paths for indexing custom attribute from schema.org data. More details of schema.org and its defined types can be found at [schema.org](https://schema.org). It is only used on advanced site search schema. Currently only support full path from root. The full path to a field is constructed by concatenating field names, starting from `_root`, with a period `.` as the delimiter. Examples: * Publish date of the root: _root.datePublished * Publish date of the reviews: _root.review.datePublished */ schemaOrgPaths?: string[] | null; + /** + * Optional. Specifies the importance of the field when `searchable_option` is `SEARCHABLE_ENABLED`. If `searchable_option` is `SEARCHABLE_DISABLED`, this field is ignored. If `searchable_option` is `SEARCHABLE_ENABLED` and this is `SEARCHABLE_FIELD_IMPORTANCE_UNSPECIFIED`, it behaves as `DEFAULT_IMPORTANCE`. + */ + searchableFieldImportance?: string | null; /** * If searchable_option is SEARCHABLE_ENABLED, field values are searchable by text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is numerical, field values will not be searchable by text queries in SearchService.Search, as there are no text values associated to numerical fields. If searchable_option is unset, the server behavior defaults to SEARCHABLE_DISABLED for fields that support setting searchable options. Only `string` fields that have no key property mapping support setting searchable_option. For those fields that do not support setting searchable options, the server will skip searchable option setting, and setting searchable_option for those fields will throw `INVALID_ARGUMENT` error. */ @@ -3413,7 +3665,7 @@ export namespace discoveryengine_v1beta { */ successCount?: string | null; /** - * Operation last update time. If the operation is done, this is also the finish time. + * Output only. Operation last update time. If the operation is done, this is also the finish time. */ updateTime?: string | null; } @@ -3589,11 +3841,11 @@ export namespace discoveryengine_v1beta { */ export interface Schema$GoogleCloudDiscoveryengineV1alphaObservabilityConfig { /** - * Optional. Enables observability. If false, all other flags are ignored. + * Optional. Enables observability. If `false`, all other flags are ignored. */ observabilityEnabled?: boolean | null; /** - * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields. + * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields. */ sensitiveLoggingEnabled?: boolean | null; } @@ -3686,7 +3938,7 @@ export namespace discoveryengine_v1beta { } | null; } /** - * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). + * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus { /** @@ -3713,6 +3965,10 @@ export namespace discoveryengine_v1beta { * Output only. The latest terminate effective time of search qpm and indexing core subscriptions. */ terminateTime?: string | null; + /** + * Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject. + */ + updateType?: string | null; } /** * Customer provided configurations. @@ -4358,6 +4614,10 @@ export namespace discoveryengine_v1beta { * Custom fine tuning configs. If set, it has higher priority than the configs set in ServingConfig.custom_fine_tuning_spec. */ customFineTuningSpec?: Schema$GoogleCloudDiscoveryengineV1alphaCustomFineTuningSpec; + /** + * Optional. Optional configuration for the Custom Ranking feature. + */ + customRankingParams?: Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams; /** * Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used. */ @@ -4370,6 +4630,10 @@ export namespace discoveryengine_v1beta { * Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.EmbeddingSpec.EmbeddingVector.vector and the document embedding that is provided in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path. If SearchRequest.EmbeddingSpec.EmbeddingVector.field_path is not provided, it will use ServingConfig.EmbeddingConfig.field_path. */ embeddingSpec?: Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestEmbeddingSpec; + /** + * Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, "Google US", "Google Ads", "Waymo", "google.com", "youtube.com", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity. + */ + entity?: string | null; /** * Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -4475,7 +4739,7 @@ export namespace discoveryengine_v1beta { */ servingConfig?: string | null; /** - * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. */ session?: string | null; /** @@ -4736,6 +5000,15 @@ export namespace discoveryengine_v1beta { */ mode?: string | null; } + /** + * Configuration parameters for the Custom Ranking feature. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams { + /** + * Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field. + */ + expressionsToPrecompute?: string[] | null; + } /** * A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -4872,7 +5145,7 @@ export namespace discoveryengine_v1beta { */ filterExtractionCondition?: string | null; /** - * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names. + * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. */ geoSearchQueryDetectionFieldNames?: string[] | null; } @@ -4960,7 +5233,7 @@ export namespace discoveryengine_v1beta { condition?: string | null; } /** - * Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * Session specification. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaSearchRequestSessionSpec { /** @@ -5038,6 +5311,10 @@ export namespace discoveryengine_v1beta { * Output only. In ConversationalSearchService.GetSession API, if GetSessionRequest.include_answer_details is set to true, this field will be populated when getting assistant session. */ detailedAssistAnswer?: Schema$GoogleCloudDiscoveryengineV1alphaAssistAnswer; + /** + * Optional. Indicates whether this turn is a live turn. + */ + live?: boolean | null; /** * Optional. The user query. May not be set if this turn is merely regenerating an answer to a different turn */ @@ -5333,6 +5610,10 @@ export namespace discoveryengine_v1beta { * Information of an end user. */ export interface Schema$GoogleCloudDiscoveryengineV1alphaUserInfo { + /** + * Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents. + */ + preciseLocation?: Schema$GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation; /** * Optional. IANA time zone, e.g. Europe/Budapest. */ @@ -5342,10 +5623,23 @@ export namespace discoveryengine_v1beta { */ userAgent?: string | null; /** - * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. + * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded. */ userId?: string | null; } + /** + * Precise location info with multiple representation options. Currently only latitude and longitude point is supported. + */ + export interface Schema$GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation { + /** + * Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon. + */ + address?: string | null; + /** + * Optional. Location represented by a latitude/longitude point. + */ + point?: Schema$GoogleTypeLatLng; + } /** * User License information assigned by the admin. */ @@ -5450,6 +5744,10 @@ export namespace discoveryengine_v1beta { * Discovery Engine Assistant resource. */ export interface Schema$GoogleCloudDiscoveryengineV1Assistant { + /** + * Output only. Represents the time when this Assistant was created. + */ + createTime?: string | null; /** * Optional. Customer policy for the assistant. */ @@ -5480,6 +5778,10 @@ export namespace discoveryengine_v1beta { * Immutable. Resource name of the assistant. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}` It must be a UTF-8 encoded string with a length limit of 1024 characters. */ name?: string | null; + /** + * Output only. Represents the time when this Assistant was most recently updated. + */ + updateTime?: string | null; /** * Optional. The type of web grounding to use. */ @@ -5884,6 +6186,24 @@ export namespace discoveryengine_v1beta { */ disableInitialIndex?: boolean | null; } + /** + * Agent Gateway setting, which may be attached to Gemini Enterprise resources for egress control of Gemini Enterprise agents to agents and tools outside of Gemini Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaAgentGatewaySetting { + /** + * Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource. The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE. + */ + defaultEgressAgentGateway?: Schema$GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference; + } + /** + * Reference to an Agent Gateway resource. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaAgentGatewaySettingAgentGatewayReference { + /** + * Required. Immutable. The resource name of the agent gateway. Expected format: `projects/{project_number\}/locations/{location\}/agentGateways/{agent_gateway\}`. + */ + name?: string | null; + } /** * AlloyDB source import data from. */ @@ -5926,7 +6246,7 @@ export namespace discoveryengine_v1beta { */ answerText?: string | null; /** - * List of blob attachments in the answer. + * Output only. List of blob attachments in the answer. */ blobAttachments?: Schema$GoogleCloudDiscoveryengineV1betaAnswerBlobAttachment[]; /** @@ -6886,6 +7206,10 @@ export namespace discoveryengine_v1beta { * One part of the multi-part response of the assist call. */ export interface Schema$GoogleCloudDiscoveryengineV1betaAssistAnswerReply { + /** + * The time when the reply was created. + */ + createTime?: string | null; /** * Possibly grounded response text or media from the assistant. */ @@ -6895,6 +7219,10 @@ export namespace discoveryengine_v1beta { * Discovery Engine Assistant resource. */ export interface Schema$GoogleCloudDiscoveryengineV1betaAssistant { + /** + * Output only. Represents the time when this Assistant was created. + */ + createTime?: string | null; /** * Optional. Customer policy for the assistant. */ @@ -6925,6 +7253,10 @@ export namespace discoveryengine_v1beta { * Immutable. Resource name of the assistant. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/engines/{engine\}/assistants/{assistant\}` It must be a UTF-8 encoded string with a length limit of 1024 characters. */ name?: string | null; + /** + * Output only. Represents the time when this Assistant was most recently updated. + */ + updateTime?: string | null; /** * Optional. The type of web grounding to use. */ @@ -7117,11 +7449,19 @@ export namespace discoveryengine_v1beta { * Grounding information for parts of the text. */ segments?: Schema$GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataSegment[]; + /** + * Grounding information for parts of the visual content. + */ + visualSegments?: Schema$GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataVisualSegment[]; } /** * Referenced content and related document metadata. */ export interface Schema$GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataReference { + /** + * Chunk of code snippet from the referenced document. + */ + codeSnippet?: string | null; /** * Referenced text content. */ @@ -7143,6 +7483,7 @@ export namespace discoveryengine_v1beta { * Domain name from the document URI. Note that the `uri` field may contain a URL that redirects to the actual website, in which case this will contain the domain name of the target site. */ domain?: string | null; + language?: string | null; /** * The mime type of the document. https://www.iana.org/assignments/media-types/media-types.xhtml. */ @@ -7185,6 +7526,19 @@ export namespace discoveryengine_v1beta { */ text?: string | null; } + /** + * Grounding information for a visual segment. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataVisualSegment { + /** + * The content id of the visual segment. In order to display the citation of the visual element, this content_id needs to match with the `grounded_content.content_metadata.content_id` field. + */ + contentId?: string | null; + /** + * References for the visual segment. + */ + referenceIndices?: number[] | null; + } /** * Information to identify a tool. */ @@ -8359,6 +8713,10 @@ export namespace discoveryengine_v1beta { * Configuration for Document understanding and enrichment. */ documentProcessingConfig?: Schema$GoogleCloudDiscoveryengineV1betaDocumentProcessingConfig; + /** + * Optional. If set, this DataStore is a federated search DataStore. + */ + federatedSearchConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig; /** * Optional. Configuration for `HEALTHCARE_FHIR` vertical. */ @@ -8437,6 +8795,100 @@ export namespace discoveryengine_v1beta { */ websiteDataUpdateTime?: string | null; } + /** + * Stores information for federated search. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfig { + /** + * AlloyDB config. If set, this DataStore is connected to AlloyDB. + */ + alloyDbConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig; + /** + * NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise. + */ + notebooklmConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig; + /** + * Third Party OAuth config. If set, this DataStore is connected to a third party application. + */ + thirdPartyOauthConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig; + } + /** + * Stores information for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfig { + /** + * Optional. Configuration for Magic. + */ + alloydbAiNlConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig; + /** + * Required. Configuration for connecting to AlloyDB. + */ + alloydbConnectionConfig?: Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig; + /** + * Optional. Fields to be returned in the search results. If empty, all fields will be returned. + */ + returnedFields?: string[] | null; + } + /** + * Configuration for AlloyDB AI Natural Language. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig { + /** + * Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty. + */ + nlConfigId?: string | null; + } + /** + * Configuration for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig { + /** + * Optional. Auth mode. + */ + authMode?: string | null; + /** + * Required. The AlloyDB database to connect to. + */ + database?: string | null; + /** + * Optional. If true, enable PSVS for AlloyDB. + */ + enablePsvs?: boolean | null; + /** + * Required. The AlloyDB instance to connect to. + */ + instance?: string | null; + /** + * Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user. + */ + password?: string | null; + /** + * Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user. + */ + user?: string | null; + } + /** + * Config for connecting to NotebookLM Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigNotebooklmConfig { + /** + * Required. Search config name. Format: projects/x/locations/global/notebookLmSearchConfigs/x + */ + searchConfig?: string | null; + } + /** + * Stores information for third party applicationOAuth. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDataStoreFederatedSearchConfigThirdPartyOauthConfig { + /** + * Optional. The type of the application. E.g., "jira", "box", etc. + */ + appName?: string | null; + /** + * Optional. The instance name identifying the 3P app, e.g., "vaissptbots-my". This is different from the instance_uri which is the full URL of the 3P app e.g., "https://vaissptbots-my.sharepoint.com". + */ + instanceName?: string | null; + } /** * Stores information regarding the serving configurations at DataStore level. */ @@ -8566,6 +9018,36 @@ export namespace discoveryengine_v1beta { * Response message for SiteSearchEngineService.DisableAdvancedSiteSearch method. */ export interface Schema$GoogleCloudDiscoveryengineV1betaDisableAdvancedSiteSearchResponse {} + /** + * Request message for LicenseConfigService.DistributeLicenseConfig method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDistributeLicenseConfigRequest { + /** + * Optional. Distribute seats to this license config instead of creating a new one. If not specified, a new license config will be created from the billing account license config. + */ + licenseConfigId?: string | null; + /** + * Required. The number of licenses to distribute. + */ + licenseCount?: string | null; + /** + * Required. The target GCP project region to distribute the license config to. + */ + location?: string | null; + /** + * Required. The target GCP project number to distribute the license config to. + */ + projectNumber?: string | null; + } + /** + * Response message for LicenseConfigService.DistributeLicenseConfig method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaDistributeLicenseConfigResponse { + /** + * The updated or created LicenseConfig. + */ + licenseConfig?: Schema$GoogleCloudDiscoveryengineV1betaLicenseConfig; + } /** * Document captures all raw metadata information of items to be recommended or searched. */ @@ -8591,7 +9073,7 @@ export namespace discoveryengine_v1beta { */ indexStatus?: Schema$GoogleCloudDiscoveryengineV1betaDocumentIndexStatus; /** - * Output only. The last time the document was indexed. If this field is set, the document could be returned in search results. This field is OUTPUT_ONLY. If this field is not populated, it means the document has never been indexed. + * Output only. The time when the document was last indexed. If this field is populated, it means the document has been indexed. While documents typically become searchable within seconds of indexing, it can sometimes take up to a few hours. If this field is not populated, it means the document has never been indexed. */ indexTime?: string | null; /** @@ -8663,7 +9145,7 @@ export namespace discoveryengine_v1beta { */ errorSamples?: Schema$GoogleRpcStatus[]; /** - * The time when the document was indexed. If this field is populated, it means the document has been indexed. + * The time when the document was indexed. If this field is populated, it means the document has been indexed. While documents typically become searchable within seconds of indexing, it can sometimes take up to a few hours. */ indexTime?: string | null; /** @@ -8865,6 +9347,10 @@ export namespace discoveryengine_v1beta { * Metadata that describes the training and serving parameters of an Engine. */ export interface Schema$GoogleCloudDiscoveryengineV1betaEngine { + /** + * Optional. The agent gateway setting for the engine. + */ + agentGatewaySetting?: Schema$GoogleCloudDiscoveryengineV1betaAgentGatewaySetting; /** * Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type. */ @@ -8910,7 +9396,7 @@ export namespace discoveryengine_v1beta { */ displayName?: string | null; /** - * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` + * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills` */ features?: {[key: string]: string} | null; /** @@ -8942,9 +9428,9 @@ export namespace discoveryengine_v1beta { */ observabilityConfig?: Schema$GoogleCloudDiscoveryengineV1betaObservabilityConfig; /** - * Optional. The email of the procurement contact. + * Optional. The emails of the procurement contacts. */ - procurementContactEmail?: string | null; + procurementContactEmails?: string[] | null; /** * Configurations for the Search Engine. Only applicable if solution_type is SOLUTION_TYPE_SEARCH. */ @@ -9784,7 +10270,7 @@ export namespace discoveryengine_v1beta { */ successCount?: string | null; /** - * Operation last update time. If the operation is done, this is also the finish time. + * Output only. Operation last update time. If the operation is done, this is also the finish time. */ updateTime?: string | null; } @@ -10239,11 +10725,11 @@ export namespace discoveryengine_v1beta { */ export interface Schema$GoogleCloudDiscoveryengineV1betaObservabilityConfig { /** - * Optional. Enables observability. If false, all other flags are ignored. + * Optional. Enables observability. If `false`, all other flags are ignored. */ observabilityEnabled?: boolean | null; /** - * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields. + * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields. */ sensitiveLoggingEnabled?: boolean | null; } @@ -10389,7 +10875,7 @@ export namespace discoveryengine_v1beta { } | null; } /** - * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). + * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation. */ export interface Schema$GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus { /** @@ -10416,6 +10902,10 @@ export namespace discoveryengine_v1beta { * Output only. The latest terminate effective time of search qpm and indexing core subscriptions. */ terminateTime?: string | null; + /** + * Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject. + */ + updateType?: string | null; } /** * Customer provided configurations. @@ -10763,7 +11253,7 @@ export namespace discoveryengine_v1beta { */ id?: string | null; /** - * The score of this record based on the given query and selected model. The score will be rounded to 2 decimal places. If the score is close to 0, it will be rounded to 0.0001 to avoid returning unset. + * The score of this record based on the given query and selected model. The score will be rounded to 4 decimal places. If the score is close to 0, it will be rounded to 0.00001 to avoid returning unset. */ score?: number | null; /** @@ -10995,6 +11485,32 @@ export namespace discoveryengine_v1beta { * Request for resuming training of an engine. */ export interface Schema$GoogleCloudDiscoveryengineV1betaResumeEngineRequest {} + /** + * Request message for LicenseConfigService.RetractLicenseConfig method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaRetractLicenseConfigRequest { + /** + * Optional. If set to true, retract the entire license config. Otherwise, retract the specified license count. + */ + fullRetract?: boolean | null; + /** + * Required. Full resource name of LicenseConfig. Format: `projects/{project\}/locations/{location\}/licenseConfigs/{license_config_id\}`. + */ + licenseConfig?: string | null; + /** + * Optional. The number of licenses to retract. Only used when full_retract is false. + */ + licenseCount?: string | null; + } + /** + * Response message for LicenseConfigService.RetractLicenseConfig method. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaRetractLicenseConfigResponse { + /** + * The updated LicenseConfig. + */ + licenseConfig?: Schema$GoogleCloudDiscoveryengineV1betaLicenseConfig; + } /** * Safety rating corresponding to the generated content. */ @@ -11179,6 +11695,10 @@ export namespace discoveryengine_v1beta { * Optional. Crowding specifications for improving result diversity. If multiple CrowdingSpecs are specified, crowding will be evaluated on each unique combination of the `field` values, and max_count will be the maximum value of `max_count` across all CrowdingSpecs. For example, if the first CrowdingSpec has `field` = "color" and `max_count` = 3, and the second CrowdingSpec has `field` = "size" and `max_count` = 2, then after 3 documents that share the same color AND size have been returned, subsequent ones should be removed or demoted. */ crowdingSpecs?: Schema$GoogleCloudDiscoveryengineV1betaSearchRequestCrowdingSpec[]; + /** + * Optional. Optional configuration for the Custom Ranking feature. + */ + customRankingParams?: Schema$GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams; /** * Specifications that define the specific DataStores to be searched, along with configurations for those data stores. This is only considered for Engines with multiple data stores. For engines with a single data store, the specs directly under SearchRequest should be used. */ @@ -11191,6 +11711,10 @@ export namespace discoveryengine_v1beta { * Uses the provided embedding to do additional semantic document retrieval. The retrieval is based on the dot product of SearchRequest.EmbeddingSpec.EmbeddingVector.vector and the document embedding that is provided in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path. If SearchRequest.EmbeddingSpec.EmbeddingVector.field_path is not provided, it will use ServingConfig.EmbeddingConfig.field_path. */ embeddingSpec?: Schema$GoogleCloudDiscoveryengineV1betaSearchRequestEmbeddingSpec; + /** + * Optional. The entity for customers that may run multiple different entities, domains, sites or regions, for example, "Google US", "Google Ads", "Waymo", "google.com", "youtube.com", etc. If this is set, it should be exactly matched with UserEvent.entity to get search results boosted by entity. + */ + entity?: string | null; /** * Facet specifications for faceted search. If empty, no facets are returned. A maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -11296,7 +11820,7 @@ export namespace discoveryengine_v1beta { */ servingConfig?: string | null; /** - * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * The session resource name. Optional. Session allows users to do multi-turn /search API calls or coordination between /search API calls and /answer API calls. Example #1 (multi-turn /search API calls): Call /search API with the session ID generated in the first call. Here, the previous search query gets considered in query standing. I.e., if the first query is "How did Alphabet do in 2022?" and the current query is "How about 2023?", the current query will be interpreted as "How did Alphabet do in 2023?". Example #2 (coordination between /search API calls and /answer API calls): Call /answer API with the session ID generated in the first call. Here, the answer generation happens in the context of the search results from the first search call. */ session?: string | null; /** @@ -11553,6 +12077,15 @@ export namespace discoveryengine_v1beta { */ mode?: string | null; } + /** + * Configuration parameters for the Custom Ranking feature. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams { + /** + * Optional. A list of ranking expressions (see `ranking_expression` for the syntax documentation) to evaluate. The evaluation results will be returned in `SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field. + */ + expressionsToPrecompute?: string[] | null; + } /** * A struct to define data stores to filter on in a search call and configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error is returned. */ @@ -11689,7 +12222,7 @@ export namespace discoveryengine_v1beta { */ filterExtractionCondition?: string | null; /** - * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. If this field is set, it overrides the field names set in ServingConfig.geo_search_query_detection_field_names. + * Field names used for location-based filtering, where geolocation filters are detected in natural language search queries. Only valid when the FilterExtractionCondition is set to `ENABLED`. */ geoSearchQueryDetectionFieldNames?: string[] | null; } @@ -11777,7 +12310,7 @@ export namespace discoveryengine_v1beta { condition?: string | null; } /** - * Session specification. Multi-turn Search feature is currently at private GA stage. Please use v1alpha or v1beta version instead before we launch this feature to public GA. Or ask for allowlisting through Google Support team. + * Session specification. */ export interface Schema$GoogleCloudDiscoveryengineV1betaSearchRequestSessionSpec { /** @@ -12162,6 +12695,10 @@ export namespace discoveryengine_v1beta { * Optional. Predicted conversion rate adjustment as a rank. */ pctrRank?: number | null; + /** + * Optional. A list of precomputed expression results for a given document, in the same order as requested in `SearchRequest.custom_ranking_params.expressions_to_precompute`. + */ + precomputedExpressionValues?: number[] | null; /** * Optional. Semantic relevance adjustment. */ @@ -12539,6 +13076,10 @@ export namespace discoveryengine_v1beta { * Output only. In ConversationalSearchService.GetSession API, if GetSessionRequest.include_answer_details is set to true, this field will be populated when getting assistant session. */ detailedAssistAnswer?: Schema$GoogleCloudDiscoveryengineV1betaAssistAnswer; + /** + * Optional. Indicates whether this turn is a live turn. + */ + live?: boolean | null; /** * Optional. The user query. May not be set if this turn is merely regenerating an answer to a different turn */ @@ -13057,6 +13598,10 @@ export namespace discoveryengine_v1beta { * The Engine resource name, in the form of `projects/{project\}/locations/{location\}/collections/{collection_id\}/engines/{engine_id\}`. Optional. Only required for Engine produced user events. For example, user events from blended search. */ engine?: string | null; + /** + * Optional. Represents the entity for customers that may run multiple different entities, domains, sites or regions, for example, `Google US`, `Google Ads`, `Waymo`, `google.com`, `youtube.com`, etc. We recommend that you set `entity` to get better per-entity search, completion, and prediction results. + */ + entity?: string | null; /** * Only required for UserEventService.ImportUserEvents method. Timestamp of when the user event happened. */ @@ -13118,6 +13663,10 @@ export namespace discoveryengine_v1beta { * Information of an end user. */ export interface Schema$GoogleCloudDiscoveryengineV1betaUserInfo { + /** + * Optional. Input only. Precise location of the user. It is used in Custom Ranking to calculate the distance between the user and the relevant documents. + */ + preciseLocation?: Schema$GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation; /** * Optional. IANA time zone, e.g. Europe/Budapest. */ @@ -13127,10 +13676,23 @@ export namespace discoveryengine_v1beta { */ userAgent?: string | null; /** - * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. + * Highly recommended for logged-in users. Unique identifier for logged-in user, such as a user name. Don't set for anonymous users. Always use a hashed value for this ID. Don't set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. Represents an opaque ID to the Search API. The Search API doesn't interpret the value in any way. This field is used to associate events with a user across sessions if the events are being uploaded. */ userId?: string | null; } + /** + * Precise location info with multiple representation options. Currently only latitude and longitude point is supported. + */ + export interface Schema$GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation { + /** + * Optional. Location represented by a natural language address. Will later be geocoded and converted to either a point or a polygon. + */ + address?: string | null; + /** + * Optional. Location represented by a latitude/longitude point. + */ + point?: Schema$GoogleTypeLatLng; + } /** * User License information assigned by the admin. */ @@ -13210,6 +13772,15 @@ export namespace discoveryengine_v1beta { */ type?: string | null; } + /** + * The configuration for the CLI execution based connectors. + */ + export interface Schema$GoogleCloudDiscoveryengineV1CliConfig { + /** + * Optional. The actions enabled on the associated CLI connection. + */ + enabledActions?: string[] | null; + } /** * Configurations used to enable CMEK data encryption with Cloud KMS keys. */ @@ -13556,6 +14127,10 @@ export namespace discoveryengine_v1beta { * Output only. User actions that must be completed before the connector can start syncing data. */ blockingReasons?: string[] | null; + /** + * Optional. The configuration for establishing a CLI connection. + */ + cliConfig?: Schema$GoogleCloudDiscoveryengineV1CliConfig; /** * Optional. The modes enabled for this connector. Default state is CONNECTOR_MODE_UNSPECIFIED. */ @@ -13573,7 +14148,7 @@ export namespace discoveryengine_v1beta { */ createTime?: string | null; /** - * Required. The name of the data source. Supported values: `salesforce`, `jira`, `confluence`, `bigquery`. + * Required. The identifier for the data source. This is a partial list of supported connectors. Please refer to the [documentation](https://docs.cloud.google.com/gemini/enterprise/docs/connectors/introduction-to-connectors-and-data-stores) for the full list of connectors. Supported first-party connectors include: * `gcs` * `bigquery` * `gcp_fhir` * `google_mail` * `google_drive` * `google_calendar` * `google_chat` Supported third-party connectors include: Generally available (GA) connectors: * `onedrive` * `outlook` * `confluence` * `jira` * `servicenow` * `sharepoint` Preview connectors: * `asana` * `azure_active_directory` * `box` * `canva` * `confluence_server` * `custom_connector` * `docusign` * `dropbox` * `dynamics365` * `github` * `gitlab` * `hubspot` * `jira_server` * `linear` * `native_cloud_identity` * `notion` * `okta` * `pagerduty` * `peoplesoft` * `salesforce` * `shopify` * `slack` * `snowflake` * `teams` * `trello` * `workday` * `zendesk` */ dataSource?: string | null; /** @@ -13581,7 +14156,11 @@ export namespace discoveryengine_v1beta { */ destinationConfigs?: Schema$GoogleCloudDiscoveryengineV1DestinationConfig[]; /** - * Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. Note: This field is derived from both the DataConnector.params, and connector source spec. It should only be used for CAIS and Org Policy evaluation purposes. + * Output only. The dynamic tools fetched for this connector. + */ + dynamicTools?: Schema$GoogleCloudDiscoveryengineV1DynamicTool[]; + /** + * Output only. The list of FQDNs of the data connector can egress to. This includes both FQDN derived from the customer provided instance URL and default per connector type FQDNs. */ egressFqdns?: string[] | null; /** @@ -13637,7 +14216,7 @@ export namespace discoveryengine_v1beta { */ latestPauseTime?: string | null; /** - * Output only. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. + * Identifier. The full resource name of the Data Connector. Format: `projects/x/locations/x/collections/x/dataConnector`. */ name?: string | null; /** @@ -13689,7 +14268,7 @@ export namespace discoveryengine_v1beta { */ updateTime?: string | null; /** - * Output only. Whether the connector is created with VPC-SC enabled. This is only used for CuOP evaluation purpose. + * Output only. Whether the connector is created with VPC-SC enabled. */ vpcscEnabled?: boolean | null; } @@ -13842,6 +14421,10 @@ export namespace discoveryengine_v1beta { * Configuration for Document understanding and enrichment. */ documentProcessingConfig?: Schema$GoogleCloudDiscoveryengineV1DocumentProcessingConfig; + /** + * Optional. If set, this DataStore is a federated search DataStore. + */ + federatedSearchConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig; /** * Optional. Configuration for `HEALTHCARE_FHIR` vertical. */ @@ -13916,6 +14499,100 @@ export namespace discoveryengine_v1beta { */ websiteDataUpdateTime?: string | null; } + /** + * Stores information for federated search. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfig { + /** + * AlloyDB config. If set, this DataStore is connected to AlloyDB. + */ + alloyDbConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig; + /** + * NotebookLM config. If set, this DataStore is connected to NotebookLM Enterprise. + */ + notebooklmConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig; + /** + * Third Party OAuth config. If set, this DataStore is connected to a third party application. + */ + thirdPartyOauthConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig; + } + /** + * Stores information for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfig { + /** + * Optional. Configuration for Magic. + */ + alloydbAiNlConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig; + /** + * Required. Configuration for connecting to AlloyDB. + */ + alloydbConnectionConfig?: Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig; + /** + * Optional. Fields to be returned in the search results. If empty, all fields will be returned. + */ + returnedFields?: string[] | null; + } + /** + * Configuration for AlloyDB AI Natural Language. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbAiNaturalLanguageConfig { + /** + * Optional. AlloyDb AI NL config id, i.e. the value that was used for calling `SELECT alloydb_ai_nl.g_create_configuration(...)`. Can be empty. + */ + nlConfigId?: string | null; + } + /** + * Configuration for connecting to AlloyDB. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigAlloyDbConfigAlloyDbConnectionConfig { + /** + * Optional. Auth mode. + */ + authMode?: string | null; + /** + * Required. The AlloyDB database to connect to. + */ + database?: string | null; + /** + * Optional. If true, enable PSVS for AlloyDB. + */ + enablePsvs?: boolean | null; + /** + * Required. The AlloyDB instance to connect to. + */ + instance?: string | null; + /** + * Required. Database password. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the password will be inferred on the AlloyDB side, based on the authenticated user. + */ + password?: string | null; + /** + * Required. Database user. If auth_mode = END_USER_ACCOUNT, it can be unset. In that case, the user will be inferred on the AlloyDB side, based on the authenticated user. + */ + user?: string | null; + } + /** + * Config for connecting to NotebookLM Enterprise. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigNotebooklmConfig { + /** + * Required. Search config name. Format: projects/x/locations/global/notebookLmSearchConfigs/x + */ + searchConfig?: string | null; + } + /** + * Stores information for third party applicationOAuth. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DataStoreFederatedSearchConfigThirdPartyOauthConfig { + /** + * Optional. The type of the application. E.g., "jira", "box", etc. + */ + appName?: string | null; + /** + * Optional. The instance name identifying the 3P app, e.g., "vaissptbots-my". This is different from the instance_uri which is the full URL of the 3P app e.g., "https://vaissptbots-my.sharepoint.com". + */ + instanceName?: string | null; + } /** * Stores information regarding the serving configurations at DataStore level. */ @@ -14198,6 +14875,27 @@ export namespace discoveryengine_v1beta { */ useNativeText?: boolean | null; } + /** + * Configuration for dynamic tools. + */ + export interface Schema$GoogleCloudDiscoveryengineV1DynamicTool { + /** + * Optional. The description of the tool. + */ + description?: string | null; + /** + * Optional. The display name of the tool. + */ + displayName?: string | null; + /** + * Optional. Whether the tool is enabled. + */ + enabled?: boolean | null; + /** + * Required. The name of the tool. + */ + name?: string | null; + } /** * Metadata related to the progress of the SiteSearchEngineService.EnableAdvancedSiteSearch operation. This will be returned by the google.longrunning.Operation.metadata field. */ @@ -14219,6 +14917,10 @@ export namespace discoveryengine_v1beta { * Metadata that describes the training and serving parameters of an Engine. */ export interface Schema$GoogleCloudDiscoveryengineV1Engine { + /** + * Optional. The agent gateway setting for the engine. + */ + agentGatewaySetting?: Schema$GoogleCloudDiscoveryengineV1AgentGatewaySetting; /** * Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type. */ @@ -14264,7 +14966,7 @@ export namespace discoveryengine_v1beta { */ displayName?: string | null; /** - * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` + * Optional. Feature config for the engine to opt in or opt out of features. Supported keys: * `*`: all features, if it's present, all other feature state settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `personalization-memory` * `personalization-suggested-highlights` * `disable-mobile-app-access` * `disable-agent-sharing` * `disable-image-generation` * `disable-video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `disable-canvas-workspace` * `disable-skills` */ features?: {[key: string]: string} | null; /** @@ -14296,9 +14998,9 @@ export namespace discoveryengine_v1beta { */ observabilityConfig?: Schema$GoogleCloudDiscoveryengineV1ObservabilityConfig; /** - * Optional. The email of the procurement contact. + * Optional. The emails of the procurement contacts. */ - procurementContactEmail?: string | null; + procurementContactEmails?: string[] | null; /** * Configurations for the Search Engine. Only applicable if solution_type is SOLUTION_TYPE_SEARCH. */ @@ -14706,7 +15408,7 @@ export namespace discoveryengine_v1beta { */ successCount?: string | null; /** - * Operation last update time. If the operation is done, this is also the finish time. + * Output only. Operation last update time. If the operation is done, this is also the finish time. */ updateTime?: string | null; } @@ -14798,11 +15500,11 @@ export namespace discoveryengine_v1beta { */ export interface Schema$GoogleCloudDiscoveryengineV1ObservabilityConfig { /** - * Optional. Enables observability. If false, all other flags are ignored. + * Optional. Enables observability. If `false`, all other flags are ignored. */ observabilityEnabled?: boolean | null; /** - * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields. + * Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If `false`, will sanitize all sensitive fields. */ sensitiveLoggingEnabled?: boolean | null; } @@ -14838,7 +15540,7 @@ export namespace discoveryengine_v1beta { } | null; } /** - * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). + * Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). We also include the update type to indicate the type of update performed on the configurable billing configuration in the UpdateProject operation. */ export interface Schema$GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus { /** @@ -14865,6 +15567,10 @@ export namespace discoveryengine_v1beta { * Output only. The latest terminate effective time of search qpm and indexing core subscriptions. */ terminateTime?: string | null; + /** + * Output only. The type of update performed in this operation. This field is populated in the response of UpdateProject. + */ + updateType?: string | null; } /** * Customer provided configurations. @@ -15910,6 +16616,19 @@ export namespace discoveryengine_v1beta { */ title?: string | null; } + /** + * An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. + */ + export interface Schema$GoogleTypeLatLng { + /** + * The latitude in degrees. It must be in the range [-90.0, +90.0]. + */ + latitude?: number | null; + /** + * The longitude in degrees. It must be in the range [-180.0, +180.0]. + */ + longitude?: number | null; + } /** * Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). */ @@ -15924,18 +16643,24 @@ export namespace discoveryengine_v1beta { version?: string | null; } - export class Resource$Projects { + export class Resource$Billingaccounts { + context: APIRequestContext; + billingAccountLicenseConfigs: Resource$Billingaccounts$Billingaccountlicenseconfigs; + constructor(context: APIRequestContext) { + this.context = context; + this.billingAccountLicenseConfigs = + new Resource$Billingaccounts$Billingaccountlicenseconfigs(this.context); + } + } + + export class Resource$Billingaccounts$Billingaccountlicenseconfigs { context: APIRequestContext; - locations: Resource$Projects$Locations; - operations: Resource$Projects$Operations; constructor(context: APIRequestContext) { this.context = context; - this.locations = new Resource$Projects$Locations(this.context); - this.operations = new Resource$Projects$Operations(this.context); } /** - * Provisions the project resource. During the process, related systems will get prepared and initialized. Caller must read the [Terms for data use](https://cloud.google.com/retail/data-use-terms), and optionally specify in request to provide consent to that service terms. + * Distributes a LicenseConfig from billing account level to project level. * @example * ```js * // Before running the sample: @@ -15959,6 +16684,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -15967,29 +16693,30 @@ export namespace discoveryengine_v1beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await discoveryengine.projects.provision({ - * // Required. Full resource name of a Project, such as `projects/{project_id_or_number\}`. - * name: 'projects/my-project', + * const res = + * await discoveryengine.billingAccounts.billingAccountLicenseConfigs.distributeLicenseConfig( + * { + * // Required. Full resource name of BillingAccountLicenseConfig. Format: `billingAccounts/{billing_account\}/billingAccountLicenseConfigs/{billing_account_license_config_id\}`. + * billingAccountLicenseConfig: + * 'billingAccounts/my-billingAccount/billingAccountLicenseConfigs/my-billingAccountLicenseConfig', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "acceptDataUseTerms": false, - * // "dataUseTermsVersion": "my_dataUseTermsVersion", - * // "saasParams": {} - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "licenseConfigId": "my_licenseConfigId", + * // "licenseCount": "my_licenseCount", + * // "location": "my_location", + * // "projectNumber": "my_projectNumber" + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "licenseConfig": {} * // } * } * @@ -16005,57 +16732,62 @@ export namespace discoveryengine_v1beta { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - provision( - params: Params$Resource$Projects$Provision, + distributeLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig, options: StreamMethodOptions ): Promise>; - provision( - params?: Params$Resource$Projects$Provision, + distributeLicenseConfig( + params?: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig, options?: MethodOptions - ): Promise>; - provision( - params: Params$Resource$Projects$Provision, + ): Promise< + GaxiosResponseWithHTTP2 + >; + distributeLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - provision( - params: Params$Resource$Projects$Provision, + distributeLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - provision( - params: Params$Resource$Projects$Provision, - callback: BodyResponseCallback + distributeLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig, + callback: BodyResponseCallback ): void; - provision( - callback: BodyResponseCallback + distributeLicenseConfig( + callback: BodyResponseCallback ): void; - provision( + distributeLicenseConfig( paramsOrCallback?: - | Params$Resource$Projects$Provision - | BodyResponseCallback + | Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Provision; + {}) as Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Provision; + params = + {} as Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig; options = {}; } @@ -16069,100 +16801,34 @@ export namespace discoveryengine_v1beta { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta/{+name}:provision').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + + '/v1beta/{+billingAccountLicenseConfig}:distributeLicenseConfig' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['billingAccountLicenseConfig'], + pathParams: ['billingAccountLicenseConfig'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - - export interface Params$Resource$Projects$Provision extends StandardParameters { - /** - * Required. Full resource name of a Project, such as `projects/{project_id_or_number\}`. - */ - name?: string; /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDiscoveryengineV1betaProvisionProjectRequest; - } - - export class Resource$Projects$Locations { - context: APIRequestContext; - cmekConfigs: Resource$Projects$Locations$Cmekconfigs; - collections: Resource$Projects$Locations$Collections; - dataStores: Resource$Projects$Locations$Datastores; - evaluations: Resource$Projects$Locations$Evaluations; - groundingConfigs: Resource$Projects$Locations$Groundingconfigs; - identityMappingStores: Resource$Projects$Locations$Identitymappingstores; - licenseConfigs: Resource$Projects$Locations$Licenseconfigs; - operations: Resource$Projects$Locations$Operations; - podcasts: Resource$Projects$Locations$Podcasts; - rankingConfigs: Resource$Projects$Locations$Rankingconfigs; - sampleQuerySets: Resource$Projects$Locations$Samplequerysets; - userEvents: Resource$Projects$Locations$Userevents; - userStores: Resource$Projects$Locations$Userstores; - constructor(context: APIRequestContext) { - this.context = context; - this.cmekConfigs = new Resource$Projects$Locations$Cmekconfigs( - this.context - ); - this.collections = new Resource$Projects$Locations$Collections( - this.context - ); - this.dataStores = new Resource$Projects$Locations$Datastores( - this.context - ); - this.evaluations = new Resource$Projects$Locations$Evaluations( - this.context - ); - this.groundingConfigs = new Resource$Projects$Locations$Groundingconfigs( - this.context - ); - this.identityMappingStores = - new Resource$Projects$Locations$Identitymappingstores(this.context); - this.licenseConfigs = new Resource$Projects$Locations$Licenseconfigs( - this.context - ); - this.operations = new Resource$Projects$Locations$Operations( - this.context - ); - this.podcasts = new Resource$Projects$Locations$Podcasts(this.context); - this.rankingConfigs = new Resource$Projects$Locations$Rankingconfigs( - this.context - ); - this.sampleQuerySets = new Resource$Projects$Locations$Samplequerysets( - this.context - ); - this.userEvents = new Resource$Projects$Locations$Userevents( - this.context - ); - this.userStores = new Resource$Projects$Locations$Userstores( - this.context - ); - } - - /** - * Gets the AclConfig. + * This method is called from the billing account side to retract the LicenseConfig from the given project back to the billing account. * @example * ```js * // Before running the sample: @@ -16186,6 +16852,436 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await discoveryengine.billingAccounts.billingAccountLicenseConfigs.retractLicenseConfig( + * { + * // Required. Full resource name of BillingAccountLicenseConfig. Format: `billingAccounts/{billing_account\}/billingAccountLicenseConfigs/{billing_account_license_config_id\}`. + * billingAccountLicenseConfig: + * 'billingAccounts/my-billingAccount/billingAccountLicenseConfigs/my-billingAccountLicenseConfig', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "fullRetract": false, + * // "licenseConfig": "my_licenseConfig", + * // "licenseCount": "my_licenseCount" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "licenseConfig": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + retractLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig, + options: StreamMethodOptions + ): Promise>; + retractLicenseConfig( + params?: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + retractLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + retractLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + retractLicenseConfig( + params: Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig, + callback: BodyResponseCallback + ): void; + retractLicenseConfig( + callback: BodyResponseCallback + ): void; + retractLicenseConfig( + paramsOrCallback?: + | Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://discoveryengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1beta/{+billingAccountLicenseConfig}:retractLicenseConfig' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['billingAccountLicenseConfig'], + pathParams: ['billingAccountLicenseConfig'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Distributelicenseconfig extends StandardParameters { + /** + * Required. Full resource name of BillingAccountLicenseConfig. Format: `billingAccounts/{billing_account\}/billingAccountLicenseConfigs/{billing_account_license_config_id\}`. + */ + billingAccountLicenseConfig?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1betaDistributeLicenseConfigRequest; + } + export interface Params$Resource$Billingaccounts$Billingaccountlicenseconfigs$Retractlicenseconfig extends StandardParameters { + /** + * Required. Full resource name of BillingAccountLicenseConfig. Format: `billingAccounts/{billing_account\}/billingAccountLicenseConfigs/{billing_account_license_config_id\}`. + */ + billingAccountLicenseConfig?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1betaRetractLicenseConfigRequest; + } + + export class Resource$Projects { + context: APIRequestContext; + locations: Resource$Projects$Locations; + operations: Resource$Projects$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.locations = new Resource$Projects$Locations(this.context); + this.operations = new Resource$Projects$Operations(this.context); + } + + /** + * Provisions the project resource. During the process, related systems will get prepared and initialized. Caller must read the [Terms for data use](https://cloud.google.com/retail/data-use-terms), and optionally specify in request to provide consent to that service terms. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const discoveryengine = google.discoveryengine('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await discoveryengine.projects.provision({ + * // Required. Full resource name of a Project, such as `projects/{project_id_or_number\}`. + * name: 'projects/my-project', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "acceptDataUseTerms": false, + * // "dataUseTermsVersion": "my_dataUseTermsVersion", + * // "saasParams": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + provision( + params: Params$Resource$Projects$Provision, + options: StreamMethodOptions + ): Promise>; + provision( + params?: Params$Resource$Projects$Provision, + options?: MethodOptions + ): Promise>; + provision( + params: Params$Resource$Projects$Provision, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + provision( + params: Params$Resource$Projects$Provision, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + provision( + params: Params$Resource$Projects$Provision, + callback: BodyResponseCallback + ): void; + provision( + callback: BodyResponseCallback + ): void; + provision( + paramsOrCallback?: + | Params$Resource$Projects$Provision + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Provision; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Provision; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://discoveryengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}:provision').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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$Provision extends StandardParameters { + /** + * Required. Full resource name of a Project, such as `projects/{project_id_or_number\}`. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1betaProvisionProjectRequest; + } + + export class Resource$Projects$Locations { + context: APIRequestContext; + cmekConfigs: Resource$Projects$Locations$Cmekconfigs; + collections: Resource$Projects$Locations$Collections; + dataStores: Resource$Projects$Locations$Datastores; + evaluations: Resource$Projects$Locations$Evaluations; + groundingConfigs: Resource$Projects$Locations$Groundingconfigs; + identityMappingStores: Resource$Projects$Locations$Identitymappingstores; + licenseConfigs: Resource$Projects$Locations$Licenseconfigs; + operations: Resource$Projects$Locations$Operations; + podcasts: Resource$Projects$Locations$Podcasts; + rankingConfigs: Resource$Projects$Locations$Rankingconfigs; + sampleQuerySets: Resource$Projects$Locations$Samplequerysets; + userEvents: Resource$Projects$Locations$Userevents; + userStores: Resource$Projects$Locations$Userstores; + constructor(context: APIRequestContext) { + this.context = context; + this.cmekConfigs = new Resource$Projects$Locations$Cmekconfigs( + this.context + ); + this.collections = new Resource$Projects$Locations$Collections( + this.context + ); + this.dataStores = new Resource$Projects$Locations$Datastores( + this.context + ); + this.evaluations = new Resource$Projects$Locations$Evaluations( + this.context + ); + this.groundingConfigs = new Resource$Projects$Locations$Groundingconfigs( + this.context + ); + this.identityMappingStores = + new Resource$Projects$Locations$Identitymappingstores(this.context); + this.licenseConfigs = new Resource$Projects$Locations$Licenseconfigs( + this.context + ); + this.operations = new Resource$Projects$Locations$Operations( + this.context + ); + this.podcasts = new Resource$Projects$Locations$Podcasts(this.context); + this.rankingConfigs = new Resource$Projects$Locations$Rankingconfigs( + this.context + ); + this.sampleQuerySets = new Resource$Projects$Locations$Samplequerysets( + this.context + ); + this.userEvents = new Resource$Projects$Locations$Userevents( + this.context + ); + this.userStores = new Resource$Projects$Locations$Userstores( + this.context + ); + } + + /** + * Gets the AclConfig. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const discoveryengine = google.discoveryengine('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -16335,6 +17431,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -16490,6 +17587,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -16652,6 +17750,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -16811,6 +17910,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -16970,6 +18070,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17128,6 +18229,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17370,6 +18472,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17516,6 +18619,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17671,6 +18775,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -17822,6 +18927,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18060,6 +19166,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18210,6 +19317,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18482,6 +19590,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18647,6 +19756,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18686,6 +19796,7 @@ export namespace discoveryengine_v1beta { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -18839,6 +19950,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -18987,6 +20099,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19015,6 +20128,7 @@ export namespace discoveryengine_v1beta { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -19159,6 +20273,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19311,6 +20426,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19472,6 +20588,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19502,6 +20619,7 @@ export namespace discoveryengine_v1beta { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -19532,6 +20650,7 @@ export namespace discoveryengine_v1beta { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -19676,6 +20795,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -19974,6 +21094,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20155,6 +21276,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20341,6 +21463,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20481,6 +21604,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20643,6 +21767,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20819,6 +21944,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -20980,6 +22106,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21164,6 +22291,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21420,6 +22548,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21569,6 +22698,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21719,6 +22849,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -21933,6 +23064,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud_search.query', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22128,6 +23260,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22293,6 +23426,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22482,6 +23616,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22668,6 +23803,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22808,6 +23944,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -22970,6 +24107,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23133,6 +24271,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23383,6 +24522,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23556,6 +24696,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23730,6 +24871,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -23870,6 +25012,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24027,6 +25170,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24192,6 +25336,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24443,6 +25588,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24625,6 +25771,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24775,6 +25922,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -24976,6 +26124,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25126,6 +26275,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25332,6 +26482,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25498,6 +26649,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25648,6 +26800,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25802,6 +26955,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -25963,6 +27117,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26189,6 +27344,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26339,6 +27495,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26540,6 +27697,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26551,7 +27709,7 @@ export namespace discoveryengine_v1beta { * const res = * await discoveryengine.projects.locations.collections.dataStores.servingConfigs.answer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/collections/my-collection/dataStores/my-dataStore/servingConfigs/my-servingConfig', * @@ -26717,6 +27875,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -26925,6 +28084,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27065,6 +28225,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27238,6 +28399,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27399,6 +28561,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27603,6 +28766,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27776,6 +28940,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -27800,9 +28965,11 @@ export namespace discoveryengine_v1beta { * // "canonicalFilter": "my_canonicalFilter", * // "contentSearchSpec": {}, * // "crowdingSpecs": [], + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, * // "embeddingSpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, @@ -27997,6 +29164,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28021,9 +29189,11 @@ export namespace discoveryengine_v1beta { * // "canonicalFilter": "my_canonicalFilter", * // "contentSearchSpec": {}, * // "crowdingSpecs": [], + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, * // "embeddingSpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, @@ -28217,6 +29387,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28228,7 +29399,7 @@ export namespace discoveryengine_v1beta { * const res = * await discoveryengine.projects.locations.collections.dataStores.servingConfigs.streamAnswer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/collections/my-collection/dataStores/my-dataStore/servingConfigs/my-servingConfig', * @@ -28372,7 +29543,7 @@ export namespace discoveryengine_v1beta { export interface Params$Resource$Projects$Locations$Collections$Datastores$Servingconfigs$Answer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -28472,7 +29643,7 @@ export namespace discoveryengine_v1beta { } export interface Params$Resource$Projects$Locations$Collections$Datastores$Servingconfigs$Streamanswer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -28519,6 +29690,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28533,6 +29705,8 @@ export namespace discoveryengine_v1beta { * // Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` * parent: * 'projects/my-project/locations/my-location/collections/my-collection/dataStores/my-dataStore', + * // Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + * sessionId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -28700,6 +29874,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -28841,6 +30016,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29004,6 +30180,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29170,6 +30347,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29329,6 +30507,10 @@ export namespace discoveryengine_v1beta { * Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` */ parent?: string; + /** + * Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + */ + sessionId?: string; /** * Request body metadata @@ -29420,6 +30602,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29615,6 +30798,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29775,6 +30959,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -29934,6 +31119,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30093,6 +31279,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30255,6 +31442,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30484,6 +31672,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30634,6 +31823,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30835,6 +32025,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -30999,6 +32190,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31149,6 +32341,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31347,6 +32540,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31508,6 +32702,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31679,6 +32874,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31829,6 +33025,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -31990,6 +33187,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32152,6 +33350,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32386,6 +33585,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32536,6 +33736,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32738,6 +33939,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -32901,6 +34103,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33091,6 +34294,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33246,6 +34450,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33412,6 +34617,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33576,6 +34782,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33605,6 +34812,7 @@ export namespace discoveryengine_v1beta { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -33635,6 +34843,7 @@ export namespace discoveryengine_v1beta { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -33882,6 +35091,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -33902,6 +35112,7 @@ export namespace discoveryengine_v1beta { * requestBody: { * // request body parameters * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -33921,7 +35132,7 @@ export namespace discoveryengine_v1beta { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", * // "updateTime": "my_updateTime" @@ -34066,6 +35277,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34214,6 +35426,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34230,6 +35443,7 @@ export namespace discoveryengine_v1beta { * * // Example response * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -34249,7 +35463,7 @@ export namespace discoveryengine_v1beta { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", * // "updateTime": "my_updateTime" @@ -34385,6 +35599,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34535,6 +35750,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34697,6 +35913,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34716,6 +35933,7 @@ export namespace discoveryengine_v1beta { * requestBody: { * // request body parameters * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -34735,7 +35953,7 @@ export namespace discoveryengine_v1beta { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", * // "updateTime": "my_updateTime" @@ -34746,6 +35964,7 @@ export namespace discoveryengine_v1beta { * * // Example response * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -34765,7 +35984,7 @@ export namespace discoveryengine_v1beta { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", * // "updateTime": "my_updateTime" @@ -34901,6 +36120,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -34924,6 +36144,7 @@ export namespace discoveryengine_v1beta { * * // Example response * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -34943,7 +36164,7 @@ export namespace discoveryengine_v1beta { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", * // "updateTime": "my_updateTime" @@ -35082,6 +36303,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35105,6 +36327,7 @@ export namespace discoveryengine_v1beta { * * // Example response * // { + * // "agentGatewaySetting": {}, * // "appType": "my_appType", * // "chatEngineConfig": {}, * // "chatEngineMetadata": {}, @@ -35124,7 +36347,7 @@ export namespace discoveryengine_v1beta { * // "modelConfigs": {}, * // "name": "my_name", * // "observabilityConfig": {}, - * // "procurementContactEmail": "my_procurementContactEmail", + * // "procurementContactEmails": [], * // "searchEngineConfig": {}, * // "solutionType": "my_solutionType", * // "updateTime": "my_updateTime" @@ -35263,6 +36486,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35419,6 +36643,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35705,6 +36930,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -35726,6 +36952,7 @@ export namespace discoveryengine_v1beta { * requestBody: { * // request body parameters * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -35733,6 +36960,7 @@ export namespace discoveryengine_v1beta { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * }, @@ -35742,6 +36970,7 @@ export namespace discoveryengine_v1beta { * * // Example response * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -35749,6 +36978,7 @@ export namespace discoveryengine_v1beta { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * } @@ -35886,6 +37116,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36027,6 +37258,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36046,6 +37278,7 @@ export namespace discoveryengine_v1beta { * * // Example response * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -36053,6 +37286,7 @@ export namespace discoveryengine_v1beta { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * } @@ -36187,6 +37421,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36349,6 +37584,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36369,6 +37605,7 @@ export namespace discoveryengine_v1beta { * requestBody: { * // request body parameters * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -36376,6 +37613,7 @@ export namespace discoveryengine_v1beta { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * }, @@ -36385,6 +37623,7 @@ export namespace discoveryengine_v1beta { * * // Example response * // { + * // "createTime": "my_createTime", * // "customerPolicy": {}, * // "defaultWebGroundingToggleOff": false, * // "description": "my_description", @@ -36392,6 +37631,7 @@ export namespace discoveryengine_v1beta { * // "enabledTools": {}, * // "generationConfig": {}, * // "name": "my_name", + * // "updateTime": "my_updateTime", * // "webGroundingType": "my_webGroundingType" * // } * } @@ -36526,6 +37766,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36783,6 +38024,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -36949,6 +38191,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud_search.query', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37125,6 +38368,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37320,6 +38564,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37506,6 +38751,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37646,6 +38892,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37806,6 +39053,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -37967,6 +39215,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -38217,6 +39466,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -38390,6 +39640,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -38564,6 +39815,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -38704,6 +39956,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -38861,6 +40114,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -39026,6 +40280,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -39277,6 +40532,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -39427,6 +40683,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -39628,6 +40885,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -39639,7 +40897,7 @@ export namespace discoveryengine_v1beta { * const res = * await discoveryengine.projects.locations.collections.engines.servingConfigs.answer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/servingConfigs/my-servingConfig', * @@ -39805,6 +41063,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40013,6 +41272,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40153,6 +41413,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40326,6 +41587,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40487,6 +41749,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40691,6 +41954,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40864,6 +42128,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -40888,9 +42153,11 @@ export namespace discoveryengine_v1beta { * // "canonicalFilter": "my_canonicalFilter", * // "contentSearchSpec": {}, * // "crowdingSpecs": [], + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, * // "embeddingSpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, @@ -41085,6 +42352,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41109,9 +42377,11 @@ export namespace discoveryengine_v1beta { * // "canonicalFilter": "my_canonicalFilter", * // "contentSearchSpec": {}, * // "crowdingSpecs": [], + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, * // "embeddingSpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, @@ -41305,6 +42575,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41316,7 +42587,7 @@ export namespace discoveryengine_v1beta { * const res = * await discoveryengine.projects.locations.collections.engines.servingConfigs.streamAnswer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine/servingConfigs/my-servingConfig', * @@ -41460,7 +42731,7 @@ export namespace discoveryengine_v1beta { export interface Params$Resource$Projects$Locations$Collections$Engines$Servingconfigs$Answer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -41560,7 +42831,7 @@ export namespace discoveryengine_v1beta { } export interface Params$Resource$Projects$Locations$Collections$Engines$Servingconfigs$Streamanswer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -41607,6 +42878,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41621,6 +42893,8 @@ export namespace discoveryengine_v1beta { * // Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` * parent: * 'projects/my-project/locations/my-location/collections/my-collection/engines/my-engine', + * // Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + * sessionId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -41788,6 +43062,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -41929,6 +43204,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42090,6 +43366,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42254,6 +43531,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42413,6 +43691,10 @@ export namespace discoveryengine_v1beta { * Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` */ parent?: string; + /** + * Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + */ + sessionId?: string; /** * Request body metadata @@ -42504,6 +43786,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42684,6 +43967,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -42832,6 +44116,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43086,6 +44371,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43250,6 +44536,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43287,6 +44574,7 @@ export namespace discoveryengine_v1beta { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -43439,6 +44727,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43585,6 +44874,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43612,6 +44902,7 @@ export namespace discoveryengine_v1beta { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -43755,6 +45046,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -43905,6 +45197,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44063,6 +45356,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44092,6 +45386,7 @@ export namespace discoveryengine_v1beta { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -44122,6 +45417,7 @@ export namespace discoveryengine_v1beta { * // "defaultSchemaId": "my_defaultSchemaId", * // "displayName": "my_displayName", * // "documentProcessingConfig": {}, + * // "federatedSearchConfig": {}, * // "healthcareFhirConfig": {}, * // "identityMappingStore": "my_identityMappingStore", * // "industryVertical": "my_industryVertical", @@ -44387,6 +45683,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44568,6 +45865,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44754,6 +46052,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -44894,6 +46193,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45054,6 +46354,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45230,6 +46531,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45391,6 +46693,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45575,6 +46878,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45831,6 +47135,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -45980,6 +47285,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46130,6 +47436,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46344,6 +47651,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud_search.query', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46539,6 +47847,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46704,6 +48013,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -46893,6 +48203,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47077,6 +48388,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47215,6 +48527,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47374,6 +48687,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47536,6 +48850,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47784,6 +49099,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -47955,6 +49271,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48127,6 +49444,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48265,6 +49583,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48420,6 +49739,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48583,6 +49903,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48844,6 +50165,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -48992,6 +50314,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49191,6 +50514,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49339,6 +50663,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49538,6 +50863,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49702,6 +51028,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -49850,6 +51177,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50001,6 +51329,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50158,6 +51487,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50383,6 +51713,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50393,7 +51724,7 @@ export namespace discoveryengine_v1beta { * // Do the magic * const res = * await discoveryengine.projects.locations.dataStores.servingConfigs.answer({ - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/dataStores/my-dataStore/servingConfigs/my-servingConfig', * @@ -50558,6 +51889,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50764,6 +52096,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -50902,6 +52235,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51073,6 +52407,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51232,6 +52567,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51434,6 +52770,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51607,6 +52944,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51630,9 +52968,11 @@ export namespace discoveryengine_v1beta { * // "canonicalFilter": "my_canonicalFilter", * // "contentSearchSpec": {}, * // "crowdingSpecs": [], + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, * // "embeddingSpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, @@ -51826,6 +53166,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -51850,9 +53191,11 @@ export namespace discoveryengine_v1beta { * // "canonicalFilter": "my_canonicalFilter", * // "contentSearchSpec": {}, * // "crowdingSpecs": [], + * // "customRankingParams": {}, * // "dataStoreSpecs": [], * // "displaySpec": {}, * // "embeddingSpec": {}, + * // "entity": "my_entity", * // "facetSpecs": [], * // "filter": "my_filter", * // "imageQuery": {}, @@ -52046,6 +53389,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52057,7 +53401,7 @@ export namespace discoveryengine_v1beta { * const res = * await discoveryengine.projects.locations.dataStores.servingConfigs.streamAnswer( * { - * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * // Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. * servingConfig: * 'projects/my-project/locations/my-location/dataStores/my-dataStore/servingConfigs/my-servingConfig', * @@ -52201,7 +53545,7 @@ export namespace discoveryengine_v1beta { export interface Params$Resource$Projects$Locations$Datastores$Servingconfigs$Answer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -52301,7 +53645,7 @@ export namespace discoveryengine_v1beta { } export interface Params$Resource$Projects$Locations$Datastores$Servingconfigs$Streamanswer extends StandardParameters { /** - * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. This field is used to identify the serving configuration name, set of models used to make the search. + * Required. The resource name of the Search serving config, such as `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_serving_config`, or `projects/x/locations/global/collections/default_collection/dataStores/x/servingConfigs/default_serving_config`. Or the resource name of the agent engine serving config, such as: `projects/x/locations/global/collections/default_collection/engines/x/servingConfigs/default_agent_answer`. (use when `enable_agent_invocation` set to true, and you have custom `AI_MODE` agent engine configured) This field is used to identify the serving configuration name, set of models used to make the search. */ servingConfig?: string; @@ -52348,6 +53692,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52361,6 +53706,8 @@ export namespace discoveryengine_v1beta { * // Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` * parent: * 'projects/my-project/locations/my-location/dataStores/my-dataStore', + * // Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + * sessionId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -52527,6 +53874,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52666,6 +54014,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52826,6 +54175,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -52991,6 +54341,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53148,6 +54499,10 @@ export namespace discoveryengine_v1beta { * Required. Full resource name of parent data store. Format: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store_id\}` */ parent?: string; + /** + * Optional. The ID to use for the session, which will become the final component of the session's resource name. This value should be 1-63 characters, and valid characters are /a-z0-9{0,61\}[a-z0-9]/. If not specified, a unique ID will be generated. + */ + sessionId?: string; /** * Request body metadata @@ -53239,6 +54594,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53427,6 +54783,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53586,6 +54943,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53745,6 +55103,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -53949,6 +55308,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54113,6 +55473,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54263,6 +55624,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54456,6 +55818,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54617,6 +55980,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54788,6 +56152,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -54938,6 +56303,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55099,6 +56465,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55261,6 +56628,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55496,6 +56864,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55659,6 +57028,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -55848,6 +57218,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56001,6 +57372,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56165,6 +57537,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56327,6 +57700,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56355,6 +57729,7 @@ export namespace discoveryengine_v1beta { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -56384,6 +57759,7 @@ export namespace discoveryengine_v1beta { * // "directUserRequest": false, * // "documents": [], * // "engine": "my_engine", + * // "entity": "my_entity", * // "eventTime": "my_eventTime", * // "eventType": "my_eventType", * // "filter": "my_filter", @@ -56601,6 +57977,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56765,6 +58142,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -56920,6 +58298,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57076,6 +58455,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57287,6 +58667,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57449,6 +58830,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57640,6 +59022,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57811,6 +59194,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -57959,6 +59343,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58111,6 +59496,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58272,6 +59658,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58430,6 +59817,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58590,6 +59978,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58846,6 +60235,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -58996,6 +60386,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59197,6 +60588,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59380,6 +60772,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59539,6 +60932,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59763,6 +61157,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -59909,6 +61304,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60117,6 +61513,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60278,6 +61675,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60472,6 +61870,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60640,6 +62039,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60777,6 +62177,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -60928,6 +62329,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61084,6 +62486,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61312,6 +62715,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61474,6 +62878,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61644,6 +63049,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61784,6 +63190,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -61936,6 +63343,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62101,6 +63509,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62262,6 +63671,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62504,6 +63914,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62654,6 +64065,7 @@ export namespace discoveryengine_v1beta { * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -62701,462 +64113,36 @@ export namespace discoveryengine_v1beta { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - import( - params: Params$Resource$Projects$Locations$Userevents$Import, - options: StreamMethodOptions - ): Promise>; - import( - params?: Params$Resource$Projects$Locations$Userevents$Import, - options?: MethodOptions - ): Promise>; - import( - params: Params$Resource$Projects$Locations$Userevents$Import, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - import( - params: Params$Resource$Projects$Locations$Userevents$Import, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - import( - params: Params$Resource$Projects$Locations$Userevents$Import, - callback: BodyResponseCallback - ): void; - import( - callback: BodyResponseCallback - ): void; - import( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Userevents$Import - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Userevents$Import; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Userevents$Import; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = - options.rootUrl || 'https://discoveryengine.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1beta/{+parent}/userEvents:import').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Writes a single user event. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const discoveryengine = google.discoveryengine('v1beta'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', - * 'https://www.googleapis.com/auth/discoveryengine.readwrite', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await discoveryengine.projects.locations.userEvents.write({ - * // Required. The parent resource name. If the write user event action is applied in DataStore level, the format is: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}`. If the write user event action is applied in Location level, for example, the event with Document across multiple DataStore, the format is: `projects/{project\}/locations/{location\}`. - * parent: 'projects/my-project/locations/my-location', - * // If set to true, the user event is written asynchronously after validation, and the API responds without waiting for the write. - * writeAsync: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "attributes": {}, - * // "attributionToken": "my_attributionToken", - * // "completionInfo": {}, - * // "conversionType": "my_conversionType", - * // "dataStore": "my_dataStore", - * // "directUserRequest": false, - * // "documents": [], - * // "engine": "my_engine", - * // "eventTime": "my_eventTime", - * // "eventType": "my_eventType", - * // "filter": "my_filter", - * // "mediaInfo": {}, - * // "pageInfo": {}, - * // "panel": {}, - * // "panels": [], - * // "promotionIds": [], - * // "searchInfo": {}, - * // "sessionId": "my_sessionId", - * // "tagIds": [], - * // "transactionInfo": {}, - * // "userInfo": {}, - * // "userPseudoId": "my_userPseudoId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "attributes": {}, - * // "attributionToken": "my_attributionToken", - * // "completionInfo": {}, - * // "conversionType": "my_conversionType", - * // "dataStore": "my_dataStore", - * // "directUserRequest": false, - * // "documents": [], - * // "engine": "my_engine", - * // "eventTime": "my_eventTime", - * // "eventType": "my_eventType", - * // "filter": "my_filter", - * // "mediaInfo": {}, - * // "pageInfo": {}, - * // "panel": {}, - * // "panels": [], - * // "promotionIds": [], - * // "searchInfo": {}, - * // "sessionId": "my_sessionId", - * // "tagIds": [], - * // "transactionInfo": {}, - * // "userInfo": {}, - * // "userPseudoId": "my_userPseudoId" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - write( - params: Params$Resource$Projects$Locations$Userevents$Write, - options: StreamMethodOptions - ): Promise>; - write( - params?: Params$Resource$Projects$Locations$Userevents$Write, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - write( - params: Params$Resource$Projects$Locations$Userevents$Write, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - write( - params: Params$Resource$Projects$Locations$Userevents$Write, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - write( - params: Params$Resource$Projects$Locations$Userevents$Write, - callback: BodyResponseCallback - ): void; - write( - callback: BodyResponseCallback - ): void; - write( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Userevents$Write - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Userevents$Write; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Userevents$Write; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = - options.rootUrl || 'https://discoveryengine.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1beta/{+parent}/userEvents:write').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - 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$Userevents$Collect extends StandardParameters { - /** - * The event timestamp in milliseconds. This prevents browser caching of otherwise identical get requests. The name is abbreviated to reduce the payload bytes. - */ - ets?: string; - /** - * Required. The parent resource name. If the collect user event action is applied in DataStore level, the format is: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}`. If the collect user event action is applied in Location level, for example, the event with Document across multiple DataStore, the format is: `projects/{project\}/locations/{location\}`. - */ - parent?: string; - /** - * The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for third-party requests. - */ - uri?: string; - /** - * Required. URL encoded UserEvent proto with a length limit of 2,000,000 characters. - */ - userEvent?: string; - } - export interface Params$Resource$Projects$Locations$Userevents$Import extends StandardParameters { - /** - * Required. Parent DataStore resource name, of the form `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}` - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDiscoveryengineV1betaImportUserEventsRequest; - } - export interface Params$Resource$Projects$Locations$Userevents$Write extends StandardParameters { - /** - * Required. The parent resource name. If the write user event action is applied in DataStore level, the format is: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}`. If the write user event action is applied in Location level, for example, the event with Document across multiple DataStore, the format is: `projects/{project\}/locations/{location\}`. - */ - parent?: string; - /** - * If set to true, the user event is written asynchronously after validation, and the API responds without waiting for the write. - */ - writeAsync?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDiscoveryengineV1betaUserEvent; - } - - export class Resource$Projects$Locations$Userstores { - context: APIRequestContext; - licenseConfigsUsageStats: Resource$Projects$Locations$Userstores$Licenseconfigsusagestats; - userLicenses: Resource$Projects$Locations$Userstores$Userlicenses; - constructor(context: APIRequestContext) { - this.context = context; - this.licenseConfigsUsageStats = - new Resource$Projects$Locations$Userstores$Licenseconfigsusagestats( - this.context - ); - this.userLicenses = - new Resource$Projects$Locations$Userstores$Userlicenses(this.context); - } - - /** - * Updates the User License. This method is used for batch assign/unassign licenses to users. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/discoveryengine.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const discoveryengine = google.discoveryengine('v1beta'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/discoveryengine.readwrite', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await discoveryengine.projects.locations.userStores.batchUpdateUserLicenses( - * { - * // Required. The parent UserStore resource name, format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}`. - * parent: - * 'projects/my-project/locations/my-location/userStores/my-userStore', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "deleteUnassignedUserLicenses": false, - * // "inlineSource": {} - * // } - * }, - * }, - * ); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - batchUpdateUserLicenses( - params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, + import( + params: Params$Resource$Projects$Locations$Userevents$Import, options: StreamMethodOptions ): Promise>; - batchUpdateUserLicenses( - params?: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, + import( + params?: Params$Resource$Projects$Locations$Userevents$Import, options?: MethodOptions ): Promise>; - batchUpdateUserLicenses( - params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, + import( + params: Params$Resource$Projects$Locations$Userevents$Import, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - batchUpdateUserLicenses( - params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, + import( + params: Params$Resource$Projects$Locations$Userevents$Import, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - batchUpdateUserLicenses( - params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, + import( + params: Params$Resource$Projects$Locations$Userevents$Import, callback: BodyResponseCallback ): void; - batchUpdateUserLicenses( + import( callback: BodyResponseCallback ): void; - batchUpdateUserLicenses( + import( paramsOrCallback?: - | Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses + | Params$Resource$Projects$Locations$Userevents$Import | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -63172,13 +64158,12 @@ export namespace discoveryengine_v1beta { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses; + {}) as Params$Resource$Projects$Locations$Userevents$Import; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses; + params = {} as Params$Resource$Projects$Locations$Userevents$Import; options = {}; } @@ -63192,9 +64177,10 @@ export namespace discoveryengine_v1beta { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v1beta/{+parent}:batchUpdateUserLicenses' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1beta/{+parent}/userEvents:import').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'POST', apiVersion: '', }, @@ -63216,7 +64202,7 @@ export namespace discoveryengine_v1beta { } /** - * Creates a new User Store. + * Writes a single user event. * @example * ```js * // Before running the sample: @@ -63239,7 +64225,9 @@ export namespace discoveryengine_v1beta { * // Scopes can be specified either as an array or as a single, space-delimited string. * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/discoveryengine.assist.readwrite', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63248,21 +64236,39 @@ export namespace discoveryengine_v1beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await discoveryengine.projects.locations.userStores.create({ - * // Required. The parent collection resource name, such as `projects/{project\}/locations/{location\}`. + * const res = await discoveryengine.projects.locations.userEvents.write({ + * // Required. The parent resource name. If the write user event action is applied in DataStore level, the format is: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}`. If the write user event action is applied in Location level, for example, the event with Document across multiple DataStore, the format is: `projects/{project\}/locations/{location\}`. * parent: 'projects/my-project/locations/my-location', - * // Required. The ID of the User Store to create. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 63 characters. - * userStoreId: 'placeholder-value', + * // If set to true, the user event is written asynchronously after validation, and the API responds without waiting for the write. + * writeAsync: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "defaultLicenseConfig": "my_defaultLicenseConfig", - * // "displayName": "my_displayName", - * // "enableExpiredLicenseAutoUpdate": false, - * // "enableLicenseAutoRegister": false, - * // "name": "my_name" + * // "attributes": {}, + * // "attributionToken": "my_attributionToken", + * // "completionInfo": {}, + * // "conversionType": "my_conversionType", + * // "dataStore": "my_dataStore", + * // "directUserRequest": false, + * // "documents": [], + * // "engine": "my_engine", + * // "entity": "my_entity", + * // "eventTime": "my_eventTime", + * // "eventType": "my_eventType", + * // "filter": "my_filter", + * // "mediaInfo": {}, + * // "pageInfo": {}, + * // "panel": {}, + * // "panels": [], + * // "promotionIds": [], + * // "searchInfo": {}, + * // "sessionId": "my_sessionId", + * // "tagIds": [], + * // "transactionInfo": {}, + * // "userInfo": {}, + * // "userPseudoId": "my_userPseudoId" * // } * }, * }); @@ -63270,11 +64276,29 @@ export namespace discoveryengine_v1beta { * * // Example response * // { - * // "defaultLicenseConfig": "my_defaultLicenseConfig", - * // "displayName": "my_displayName", - * // "enableExpiredLicenseAutoUpdate": false, - * // "enableLicenseAutoRegister": false, - * // "name": "my_name" + * // "attributes": {}, + * // "attributionToken": "my_attributionToken", + * // "completionInfo": {}, + * // "conversionType": "my_conversionType", + * // "dataStore": "my_dataStore", + * // "directUserRequest": false, + * // "documents": [], + * // "engine": "my_engine", + * // "entity": "my_entity", + * // "eventTime": "my_eventTime", + * // "eventType": "my_eventType", + * // "filter": "my_filter", + * // "mediaInfo": {}, + * // "pageInfo": {}, + * // "panel": {}, + * // "panels": [], + * // "promotionIds": [], + * // "searchInfo": {}, + * // "sessionId": "my_sessionId", + * // "tagIds": [], + * // "transactionInfo": {}, + * // "userInfo": {}, + * // "userPseudoId": "my_userPseudoId" * // } * } * @@ -63290,61 +64314,61 @@ export namespace discoveryengine_v1beta { * @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$Userstores$Create, + write( + params: Params$Resource$Projects$Locations$Userevents$Write, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Userstores$Create, + write( + params?: Params$Resource$Projects$Locations$Userevents$Write, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - create( - params: Params$Resource$Projects$Locations$Userstores$Create, + write( + params: Params$Resource$Projects$Locations$Userevents$Write, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Userstores$Create, + write( + params: Params$Resource$Projects$Locations$Userevents$Write, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Userstores$Create, - callback: BodyResponseCallback + write( + params: Params$Resource$Projects$Locations$Userevents$Write, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + write( + callback: BodyResponseCallback ): void; - create( + write( paramsOrCallback?: - | Params$Resource$Projects$Locations$Userstores$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Userevents$Write + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Userstores$Create; + {}) as Params$Resource$Projects$Locations$Userevents$Write; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Userstores$Create; + params = {} as Params$Resource$Projects$Locations$Userevents$Write; options = {}; } @@ -63358,7 +64382,7 @@ export namespace discoveryengine_v1beta { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta/{+parent}/userStores').replace( + url: (rootUrl + '/v1beta/{+parent}/userEvents:write').replace( /([^:]\/)\/+/g, '$1' ), @@ -63373,19 +64397,79 @@ export namespace discoveryengine_v1beta { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } + } + export interface Params$Resource$Projects$Locations$Userevents$Collect extends StandardParameters { + /** + * The event timestamp in milliseconds. This prevents browser caching of otherwise identical get requests. The name is abbreviated to reduce the payload bytes. + */ + ets?: string; /** - * Deletes the User Store. + * Required. The parent resource name. If the collect user event action is applied in DataStore level, the format is: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}`. If the collect user event action is applied in Location level, for example, the event with Document across multiple DataStore, the format is: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + /** + * The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for third-party requests. + */ + uri?: string; + /** + * Required. URL encoded UserEvent proto with a length limit of 2,000,000 characters. + */ + userEvent?: string; + } + export interface Params$Resource$Projects$Locations$Userevents$Import extends StandardParameters { + /** + * Required. Parent DataStore resource name, of the form `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}` + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1betaImportUserEventsRequest; + } + export interface Params$Resource$Projects$Locations$Userevents$Write extends StandardParameters { + /** + * Required. The parent resource name. If the write user event action is applied in DataStore level, the format is: `projects/{project\}/locations/{location\}/collections/{collection\}/dataStores/{data_store\}`. If the write user event action is applied in Location level, for example, the event with Document across multiple DataStore, the format is: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + /** + * If set to true, the user event is written asynchronously after validation, and the API responds without waiting for the write. + */ + writeAsync?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudDiscoveryengineV1betaUserEvent; + } + + export class Resource$Projects$Locations$Userstores { + context: APIRequestContext; + licenseConfigsUsageStats: Resource$Projects$Locations$Userstores$Licenseconfigsusagestats; + userLicenses: Resource$Projects$Locations$Userstores$Userlicenses; + constructor(context: APIRequestContext) { + this.context = context; + this.licenseConfigsUsageStats = + new Resource$Projects$Locations$Userstores$Licenseconfigsusagestats( + this.context + ); + this.userLicenses = + new Resource$Projects$Locations$Userstores$Userlicenses(this.context); + } + + /** + * Updates the User License. This method is used for batch assign/unassign licenses to users. * @example * ```js * // Before running the sample: @@ -63409,6 +64493,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63417,10 +64502,23 @@ export namespace discoveryengine_v1beta { * google.options({auth: authClient}); * * // Do the magic - * const res = await discoveryengine.projects.locations.userStores.delete({ - * // Required. The name of the User Store to delete. Format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}` - * name: 'projects/my-project/locations/my-location/userStores/my-userStore', - * }); + * const res = + * await discoveryengine.projects.locations.userStores.batchUpdateUserLicenses( + * { + * // Required. The parent UserStore resource name, format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}`. + * parent: + * 'projects/my-project/locations/my-location/userStores/my-userStore', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "deleteUnassignedUserLicenses": false, + * // "inlineSource": {} + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response @@ -63445,36 +64543,36 @@ export namespace discoveryengine_v1beta { * @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$Userstores$Delete, + batchUpdateUserLicenses( + params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Userstores$Delete, + batchUpdateUserLicenses( + params?: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Userstores$Delete, + batchUpdateUserLicenses( + params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Userstores$Delete, + batchUpdateUserLicenses( + params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Userstores$Delete, + batchUpdateUserLicenses( + params: Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses, callback: BodyResponseCallback ): void; - delete( + batchUpdateUserLicenses( callback: BodyResponseCallback ): void; - delete( + batchUpdateUserLicenses( paramsOrCallback?: - | Params$Resource$Projects$Locations$Userstores$Delete + | Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -63490,12 +64588,13 @@ export namespace discoveryengine_v1beta { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Userstores$Delete; + {}) as Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Userstores$Delete; + params = + {} as Params$Resource$Projects$Locations$Userstores$Batchupdateuserlicenses; options = {}; } @@ -63509,15 +64608,17 @@ export namespace discoveryengine_v1beta { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: ( + rootUrl + '/v1beta/{+parent}:batchUpdateUserLicenses' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { @@ -63555,6 +64656,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63707,6 +64809,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -63860,27 +64963,6 @@ export namespace discoveryengine_v1beta { */ requestBody?: Schema$GoogleCloudDiscoveryengineV1betaBatchUpdateUserLicensesRequest; } - export interface Params$Resource$Projects$Locations$Userstores$Create extends StandardParameters { - /** - * Required. The parent collection resource name, such as `projects/{project\}/locations/{location\}`. - */ - parent?: string; - /** - * Required. The ID of the User Store to create. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 63 characters. - */ - userStoreId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudDiscoveryengineV1betaUserStore; - } - export interface Params$Resource$Projects$Locations$Userstores$Delete extends StandardParameters { - /** - * Required. The name of the User Store to delete. Format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}` - */ - name?: string; - } export interface Params$Resource$Projects$Locations$Userstores$Get extends StandardParameters { /** * Required. The name of the User Store to get. Format: `projects/{project\}/locations/{location\}/userStores/{user_store_id\}` @@ -63934,6 +65016,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64103,6 +65186,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64113,7 +65197,9 @@ export namespace discoveryengine_v1beta { * // Do the magic * const res = * await discoveryengine.projects.locations.userStores.userLicenses.list({ - * // Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a " desc" suffix. Redundant space characters in the syntax are insignificant. Supported fields: * `license_assignment_state` * `user_principal` * `user_profile` * `last_login_date` * `update_time` If not set, the default ordering is by `user_principal`. Examples: * `user_principal desc` to order by `user_principal` in descending order. * `license_assignment_state` to order by `license_assignment_state` in ascending order. * `last_login_date desc` to order by `last_login_date` in descending order. * `update_time desc` to order by `update_time` in descending order. * `last_login_date desc, user_principal` to order by `last_login_date` in descending order and then by `user_principal` in ascending order. + * // Optional. Filter for the list request. Supported fields: * `license_assignment_state` * `user_principal` * Examples: * `license_assignment_state = ASSIGNED` to list assigned user licenses. * `license_assignment_state = NO_LICENSE` to list not licensed users. * `license_assignment_state = NO_LICENSE_ATTEMPTED_LOGIN` to list users who attempted login but no license assigned. * `license_assignment_state != NO_LICENSE_ATTEMPTED_LOGIN` to filter out users who attempted login but no license assigned. * `user_principal = user1@example.com` to list user license for `user1@example.com`. + * filter: 'placeholder-value', + * // Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a " desc" suffix. Redundant space characters in the syntax are insignificant. Supported fields (only `user_principal` is supported for now): * `user_principal` If not set, the default ordering is by `user_principal`. Examples: * `user_principal` to order by `user_principal` in ascending order. * `user_principal desc` to order by `user_principal` in descending order. * orderBy: 'placeholder-value', * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, defaults to 10. The maximum value is 50; values above 50 will be coerced to 50. If this field is negative, an INVALID_ARGUMENT error is returned. * pageSize: 'placeholder-value', @@ -64242,7 +65328,11 @@ export namespace discoveryengine_v1beta { export interface Params$Resource$Projects$Locations$Userstores$Userlicenses$List extends StandardParameters { /** - * Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a " desc" suffix. Redundant space characters in the syntax are insignificant. Supported fields: * `license_assignment_state` * `user_principal` * `user_profile` * `last_login_date` * `update_time` If not set, the default ordering is by `user_principal`. Examples: * `user_principal desc` to order by `user_principal` in descending order. * `license_assignment_state` to order by `license_assignment_state` in ascending order. * `last_login_date desc` to order by `last_login_date` in descending order. * `update_time desc` to order by `update_time` in descending order. * `last_login_date desc, user_principal` to order by `last_login_date` in descending order and then by `user_principal` in ascending order. + * Optional. Filter for the list request. Supported fields: * `license_assignment_state` * `user_principal` * Examples: * `license_assignment_state = ASSIGNED` to list assigned user licenses. * `license_assignment_state = NO_LICENSE` to list not licensed users. * `license_assignment_state = NO_LICENSE_ATTEMPTED_LOGIN` to list users who attempted login but no license assigned. * `license_assignment_state != NO_LICENSE_ATTEMPTED_LOGIN` to filter out users who attempted login but no license assigned. * `user_principal = user1@example.com` to list user license for `user1@example.com`. + */ + filter?: string; + /** + * Optional. The order in which the UserLicenses are listed. The value must be a comma-separated list of fields. Default sorting order is ascending. To specify descending order for a field, append a " desc" suffix. Redundant space characters in the syntax are insignificant. Supported fields (only `user_principal` is supported for now): * `user_principal` If not set, the default ordering is by `user_principal`. Examples: * `user_principal` to order by `user_principal` in ascending order. * `user_principal desc` to order by `user_principal` in descending order. */ orderBy?: string; /** @@ -64290,6 +65380,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * @@ -64436,6 +65527,7 @@ export namespace discoveryengine_v1beta { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/discoveryengine.readwrite', + * 'https://www.googleapis.com/auth/discoveryengine.serving.readwrite', * ], * }); * diff --git a/src/apis/displayvideo/v2.ts b/src/apis/displayvideo/v2.ts index 46048715b38..e951bb09f5a 100644 --- a/src/apis/displayvideo/v2.ts +++ b/src/apis/displayvideo/v2.ts @@ -120,7 +120,6 @@ export namespace displayvideo_v2 { googleAudiences: Resource$Googleaudiences; guaranteedOrders: Resource$Guaranteedorders; inventorySourceGroups: Resource$Inventorysourcegroups; - inventorySources: Resource$Inventorysources; media: Resource$Media; partners: Resource$Partners; sdfdownloadtasks: Resource$Sdfdownloadtasks; @@ -145,7 +144,6 @@ export namespace displayvideo_v2 { this.inventorySourceGroups = new Resource$Inventorysourcegroups( this.context ); - this.inventorySources = new Resource$Inventorysources(this.context); this.media = new Resource$Media(this.context); this.partners = new Resource$Partners(this.context); this.sdfdownloadtasks = new Resource$Sdfdownloadtasks(this.context); @@ -847,6 +845,10 @@ export namespace displayvideo_v2 { * Settings that control the bid strategy. Bid strategy determines the bid price. */ export interface Schema$BiddingStrategy { + /** + * A bid strategy used by Demand Gen resources. It can only be used for a Demand Gen line item or ad group entity. + */ + demandGenBid?: Schema$DemandGenBiddingStrategy; /** * A strategy that uses a fixed bid price. */ @@ -916,11 +918,11 @@ export namespace displayvideo_v2 { */ export interface Schema$BulkEditAdvertiserAssignedTargetingOptionsRequest { /** - * The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` */ createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; /** - * The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` */ deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; } @@ -1686,6 +1688,10 @@ export namespace displayvideo_v2 { * The percentage of post-view conversions to count, in millis (1/1000 of a percent). Must be between 0 and 100000 inclusive. For example, to track 50% of the post-click conversions, set a value of 50000. */ postViewCountPercentageMillis?: string | null; + /** + * Optional. The attribution model to use for conversion measurement. This attribution model will determine how conversions are counted. The Primary model can be set by you for a floodlight config or group. More details [here](https://support.google.com/displayvideo/answer/7409983). Only applicable to Demand Gen line items. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + primaryAttributionModelId?: string | null; } /** * Counter event of the creative. @@ -1953,23 +1959,6 @@ export namespace displayvideo_v2 { */ vpaid?: boolean | null; } - /** - * Creative requirements configuration for the inventory source. - */ - export interface Schema$CreativeConfig { - /** - * The type of creative that can be assigned to the inventory source. Only the following types are supported: * `CREATIVE_TYPE_STANDARD` * `CREATIVE_TYPE_VIDEO` - */ - creativeType?: string | null; - /** - * The configuration for display creatives. Applicable when creative_type is `CREATIVE_TYPE_STANDARD`. - */ - displayCreativeConfig?: Schema$InventorySourceDisplayCreativeConfig; - /** - * The configuration for video creatives. Applicable when creative_type is `CREATIVE_TYPE_VIDEO`. - */ - videoCreativeConfig?: Schema$InventorySourceVideoCreativeConfig; - } /** * A single custom bidding algorithm. */ @@ -2169,7 +2158,7 @@ export namespace displayvideo_v2 { */ startHour?: number | null; /** - * Required. The mechanism used to determine which timezone to use for this day and time targeting setting. + * Required. The mechanism used to determine which timezone to use for this day and time targeting setting. For Demand Gen line items, this field is always `TIME_ZONE_RESOLUTION_ADVERTISER`. */ timeZoneResolution?: string | null; } @@ -2190,6 +2179,44 @@ export namespace displayvideo_v2 { */ targetingType?: string | null; } + /** + * Settings that control the bid strategy for Demand Gen resources. + */ + export interface Schema$DemandGenBiddingStrategy { + /** + * Output only. The value effectively used by the bidding strategy. This field will be the same as value if set. If value is not set and the strategy is assigned to an ad group, this field will be inherited from the line item's bidding strategy. If type is not `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA` or `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS`, this field will be 0. + */ + effectiveBiddingValue?: string | null; + /** + * Output only. Source of the effective bidding value. + */ + effectiveBiddingValueSource?: string | null; + /** + * Optional. The type of the bidding strategy. This can only be set when assigned to a line item. Ad groups will inherit this value from their line item. + */ + type?: string | null; + /** + * Optional. The value used by the bidding strategy. This can be set when assigned to line items or ad groups. This field is only applicable for the following strategy types: * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPC` * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS` Value of this field is in micros of the advertiser's currency or ROAS value. For example, 1000000 represents 1.0 standard units of the currency or 100% ROAS value. If not using an applicable strategy, the value of this field will be 0. + */ + value?: string | null; + } + /** + * Settings for Demand Gen line items. + */ + export interface Schema$DemandGenSettings { + /** + * Optional. Immutable. Whether location and language targeting can be set at the line item level. Otherwise, relevant targeting types must be assigned directly to ad groups. + */ + geoLanguageTargetingEnabled?: boolean | null; + /** + * Optional. The ID of the Merchant Center account used to provide a product feed. This Merchant Center account must already be linked to the advertiser. + */ + linkedMerchantId?: string | null; + /** + * Optional. The third party measurement settings for the Demand Gen line item. + */ + thirdPartyMeasurementConfigs?: Schema$ThirdPartyMeasurementConfigs; + } /** * Assigned device make and model targeting option details. This will be populated in the device_make_model_details field when targeting_type is `TARGETING_TYPE_DEVICE_MAKE_MODEL`. */ @@ -2434,36 +2461,6 @@ export namespace displayvideo_v2 { */ readAdvertiserIds?: string[] | null; } - /** - * Request message for InventorySourceService.EditInventorySourceReadWriteAccessors. - */ - export interface Schema$EditInventorySourceReadWriteAccessorsRequest { - /** - * The advertisers to add or remove from the list of advertisers that have read/write access to the inventory source. This change will remove an existing partner read/write accessor. - */ - advertisersUpdate?: Schema$EditInventorySourceReadWriteAccessorsRequestAdvertisersUpdate; - /** - * Set the partner context as read/write accessor of the inventory source. This will remove all other current read/write advertiser accessors. - */ - assignPartner?: boolean | null; - /** - * Required. The partner context by which the accessors change is being made. - */ - partnerId?: string | null; - } - /** - * Update to the list of advertisers with read/write access to the inventory source. - */ - export interface Schema$EditInventorySourceReadWriteAccessorsRequestAdvertisersUpdate { - /** - * The advertisers to add. - */ - addedAdvertisers?: string[] | null; - /** - * The advertisers to remove. - */ - removedAdvertisers?: 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); \} */ @@ -2910,6 +2907,10 @@ export namespace displayvideo_v2 { * Meta data of an image asset. */ export interface Schema$ImageAsset { + /** + * Required. The unique ID of the asset. + */ + assetId?: string | null; /** * Output only. File size of the image asset in bytes. */ @@ -3043,7 +3044,7 @@ export namespace displayvideo_v2 { */ commonInStreamAttribute?: Schema$CommonInStreamAttribute; /** - * The custom parameters to pass custom values to tracking URL template. + * The custom parameters and accompanying values to add to the tracking URL. */ customParameters?: {[key: string]: string} | null; } @@ -3121,118 +3122,6 @@ export namespace displayvideo_v2 { */ integrationCode?: string | null; } - /** - * An inventory source. Next ID: 22 - */ - export interface Schema$InventorySource { - /** - * Whether the inventory source has a guaranteed or non-guaranteed delivery. - */ - commitment?: string | null; - /** - * The creative requirements of the inventory source. Not applicable for auction packages. - */ - creativeConfigs?: Schema$CreativeConfig[]; - /** - * The ID in the exchange space that uniquely identifies the inventory source. Must be unique across buyers within each exchange but not necessarily unique across exchanges. - */ - dealId?: string | null; - /** - * The delivery method of the inventory source. * For non-guaranteed inventory sources, the only acceptable value is `INVENTORY_SOURCE_DELIVERY_METHOD_PROGRAMMATIC`. * For guaranteed inventory sources, acceptable values are `INVENTORY_SOURCE_DELIVERY_METHOD_TAG` and `INVENTORY_SOURCE_DELIVERY_METHOD_PROGRAMMATIC`. - */ - deliveryMethod?: string | null; - /** - * The display name of the inventory source. Must be UTF-8 encoded with a maximum size of 240 bytes. - */ - displayName?: string | null; - /** - * The exchange to which the inventory source belongs. - */ - exchange?: string | null; - /** - * Immutable. The ID of the guaranteed order that this inventory source belongs to. Only applicable when commitment is `INVENTORY_SOURCE_COMMITMENT_GUARANTEED`. - */ - guaranteedOrderId?: string | null; - /** - * Output only. The unique ID of the inventory source. Assigned by the system. - */ - inventorySourceId?: string | null; - /** - * Output only. The product type of the inventory source, denoting the way through which it sells inventory. - */ - inventorySourceProductType?: string | null; - /** - * Denotes the type of the inventory source. - */ - inventorySourceType?: string | null; - /** - * Output only. The resource name of the inventory source. - */ - name?: string | null; - /** - * The publisher/seller name of the inventory source. - */ - publisherName?: string | null; - /** - * Required. The rate details of the inventory source. - */ - rateDetails?: Schema$RateDetails; - /** - * Output only. The IDs of advertisers with read-only access to the inventory source. - */ - readAdvertiserIds?: string[] | null; - /** - * Output only. The IDs of partners with read-only access to the inventory source. All advertisers of partners in this field inherit read-only access to the inventory source. - */ - readPartnerIds?: string[] | null; - /** - * The partner or advertisers that have read/write access to the inventory source. Output only when commitment is `INVENTORY_SOURCE_COMMITMENT_GUARANTEED`, in which case the read/write accessors are inherited from the parent guaranteed order. Required when commitment is `INVENTORY_SOURCE_COMMITMENT_NON_GUARANTEED`. If commitment is `INVENTORY_SOURCE_COMMITMENT_NON_GUARANTEED` and a partner is set in this field, all advertisers under this partner will automatically have read-only access to the inventory source. These advertisers will not be included in read_advertiser_ids. - */ - readWriteAccessors?: Schema$InventorySourceAccessors; - /** - * The status settings of the inventory source. - */ - status?: Schema$InventorySourceStatus; - /** - * The time range when this inventory source starts and stops serving. - */ - timeRange?: Schema$TimeRange; - /** - * Output only. The timestamp when the inventory source was last updated. Assigned by the system. - */ - updateTime?: string | null; - } - /** - * The partner or advertisers with access to the inventory source. - */ - export interface Schema$InventorySourceAccessors { - /** - * The advertisers with access to the inventory source. All advertisers must belong to the same partner. - */ - advertisers?: Schema$InventorySourceAccessorsAdvertiserAccessors; - /** - * The partner with access to the inventory source. - */ - partner?: Schema$InventorySourceAccessorsPartnerAccessor; - } - /** - * The advertisers with access to the inventory source. - */ - export interface Schema$InventorySourceAccessorsAdvertiserAccessors { - /** - * The IDs of the advertisers. - */ - advertiserIds?: string[] | null; - } - /** - * The partner with access to the inventory source. - */ - export interface Schema$InventorySourceAccessorsPartnerAccessor { - /** - * The ID of the partner. - */ - partnerId?: string | null; - } /** * Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE`. */ @@ -3242,15 +3131,6 @@ export namespace displayvideo_v2 { */ inventorySourceId?: string | null; } - /** - * The configuration for display creatives. - */ - export interface Schema$InventorySourceDisplayCreativeConfig { - /** - * The size requirements for display creatives that can be assigned to the inventory source. - */ - creativeSize?: Schema$Dimensions; - } /** * A filtering option for filtering on Inventory Source entities. */ @@ -3286,40 +3166,6 @@ export namespace displayvideo_v2 { */ inventorySourceGroupId?: string | null; } - /** - * The status related settings of the inventory source. - */ - export interface Schema$InventorySourceStatus { - /** - * Output only. The configuration status of the inventory source. Only applicable for guaranteed inventory sources. Acceptable values are `INVENTORY_SOURCE_CONFIG_STATUS_PENDING` and `INVENTORY_SOURCE_CONFIG_STATUS_COMPLETED`. An inventory source must be configured (fill in the required fields, choose creatives, and select a default campaign) before it can serve. - */ - configStatus?: string | null; - /** - * The user-provided reason for pausing this inventory source. Must not exceed 100 characters. Only applicable when entity_status is set to `ENTITY_STATUS_PAUSED`. - */ - entityPauseReason?: string | null; - /** - * Whether or not the inventory source is servable. Acceptable values are `ENTITY_STATUS_ACTIVE`, `ENTITY_STATUS_ARCHIVED`, and `ENTITY_STATUS_PAUSED`. Default value is `ENTITY_STATUS_ACTIVE`. - */ - entityStatus?: string | null; - /** - * Output only. The seller-provided reason for pausing this inventory source. Only applicable for inventory sources synced directly from the publishers and when seller_status is set to `ENTITY_STATUS_PAUSED`. - */ - sellerPauseReason?: string | null; - /** - * Output only. The status set by the seller for the inventory source. Only applicable for inventory sources synced directly from the publishers. Acceptable values are `ENTITY_STATUS_ACTIVE` and `ENTITY_STATUS_PAUSED`. - */ - sellerStatus?: string | null; - } - /** - * The configuration for video creatives. - */ - export interface Schema$InventorySourceVideoCreativeConfig { - /** - * The duration requirements for the video creatives that can be assigned to the inventory source. - */ - duration?: string | null; - } /** * A single invoice. */ @@ -3409,6 +3255,10 @@ export namespace displayvideo_v2 { * Details for assigned keyword targeting option. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_KEYWORD`. */ export interface Schema$KeywordAssignedTargetingOptionDetails { + /** + * Optional. The policy names to exempt the keyword from. When attempting to target a keyword that violates a policy, the error returned will include the name of the relevant policy. Use that name in this field to exempt the targeted keyword from the policy. This field is only applicable for positively-targeted keywords assigned to Demand Gen resources. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + exemptedPolicyNames?: string[] | null; /** * Required. The keyword, for example `car insurance`. Positive keyword cannot be offensive word. Must be UTF-8 encoded with a maximum size of 255 bytes. Maximum number of characters is 80. Maximum number of words is 10. */ @@ -3476,6 +3326,10 @@ export namespace displayvideo_v2 { * The IDs of the creatives associated with the line item. */ creativeIds?: string[] | null; + /** + * Optional. Settings specific to Demand Gen line items. Only applicable to Demand Gen line items. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + demandGenSettings?: Schema$DemandGenSettings; /** * Required. The display name of the line item. Must be UTF-8 encoded with a maximum size of 240 bytes. */ @@ -3493,7 +3347,7 @@ export namespace displayvideo_v2 { */ flight?: Schema$LineItemFlight; /** - * Required. The impression frequency cap settings of the line item. The max_impressions field in this settings object must be used if assigning a limited cap. + * Optional. Required if the line item type is not `LINE_ITEM_TYPE_DEMAND_GEN`. The impression frequency cap settings of the line item. The max_impressions field in this settings object must be used if assigning a limited cap. */ frequencyCap?: Schema$FrequencyCap; /** @@ -3520,6 +3374,10 @@ export namespace displayvideo_v2 { * Output only. The resource name of the line item. */ name?: string | null; + /** + * Optional. Whether to enable DV360's bid optimization for fixed bid line items. By default, DV360 optimizes your fixed bid by automatically lowering bids for impressions that are less likely to perform well. This optimization is enabled by default (value is true). When this field is set to `false`, this optimization is disabled, and the bid will not be lowered for any reason. This setting only applies to line items with a `bidding_strategy` of type `FIXED_BID`. + */ + optimizeFixedBidding?: boolean | null; /** * Required. The budget spending speed setting of the line item. */ @@ -3571,7 +3429,7 @@ export namespace displayvideo_v2 { */ export interface Schema$LineItemBudget { /** - * Required. The type of the budget allocation. `LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC` is only applicable when automatic budget allocation is enabled for the parent insertion order. + * Required. The type of the budget allocation. `LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC` is only applicable when automatic budget allocation is enabled for the parent insertion order. This field must be set to `LINE_ITEM_BUDGET_ALLOCATION_TYPE_FIXED` for Demand Gen line items. */ budgetAllocationType?: string | null; /** @@ -3768,16 +3626,6 @@ export namespace displayvideo_v2 { */ nextPageToken?: string | null; } - export interface Schema$ListInventorySourcesResponse { - /** - * The list of inventory sources. This list will be absent if empty. - */ - inventorySources?: Schema$InventorySource[]; - /** - * A token to retrieve the next page of results. Pass this value in the page_token field in the subsequent call to `ListInventorySources` method to retrieve the next page of results. - */ - nextPageToken?: string | null; - } export interface Schema$ListInvoicesResponse { /** * The list of invoices. This list will be absent if empty. @@ -4127,23 +3975,6 @@ export namespace displayvideo_v2 { */ publisher?: string | null; } - /** - * Represents an amount of money with its currency type. - */ - export interface Schema$Money { - /** - * The three-letter currency code defined in ISO 4217. - */ - currencyCode?: string | null; - /** - * Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. - */ - nanos?: number | null; - /** - * The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. - */ - units?: string | null; - } /** * Details for native content position assigned targeting option. This will be populated in the native_content_position_details field when targeting_type is `TARGETING_TYPE_NATIVE_CONTENT_POSITION`. Explicitly targeting all options is not supported. Remove all native content position targeting options to achieve this effect. */ @@ -4218,7 +4049,7 @@ export namespace displayvideo_v2 { */ commonInStreamAttribute?: Schema$CommonInStreamAttribute; /** - * The custom parameters to pass custom values to tracking URL template. + * The custom parameters and accompanying values to add to the tracking URL. */ customParameters?: {[key: string]: string} | null; } @@ -4516,7 +4347,7 @@ export namespace displayvideo_v2 { */ markupAmount?: string | null; /** - * Required. The markup type of the partner revenue model. + * Required. The markup type of the partner revenue model. This field must be set to `PARTNER_REVENUE_MODEL_MARKUP_TYPE_TOTAL_MEDIA_COST_MARKUP` for Demand Gen line items. */ markupType?: string | null; } @@ -4711,27 +4542,6 @@ export namespace displayvideo_v2 { */ status?: string | null; } - /** - * The rate related settings of the inventory source. - */ - export interface Schema$RateDetails { - /** - * The rate type. Acceptable values are `INVENTORY_SOURCE_RATE_TYPE_CPM_FIXED`, `INVENTORY_SOURCE_RATE_TYPE_CPM_FLOOR`, and `INVENTORY_SOURCE_RATE_TYPE_CPD`. - */ - inventorySourceRateType?: string | null; - /** - * Output only. The amount that the buyer has committed to spending on the inventory source up front. Only applicable for guaranteed inventory sources. - */ - minimumSpend?: Schema$Money; - /** - * The rate for the inventory source. - */ - rate?: Schema$Money; - /** - * Required for guaranteed inventory sources. The number of impressions guaranteed by the seller. - */ - unitsPurchased?: string | null; - } /** * Targeting details for regional location list. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_REGIONAL_LOCATION_LIST`. */ @@ -5025,6 +4835,10 @@ export namespace displayvideo_v2 { * Settings that control the [optimized targeting](//support.google.com/displayvideo/answer/12060859) settings of the line item. */ export interface Schema$TargetingExpansionConfig { + /** + * Optional. Whether to exclude demographic expansion for Optimized Targeting. This field can only be set for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + excludeDemographicExpansion?: boolean | null; /** * Whether to exclude first-party audiences from use in targeting expansion. This field was deprecated with the launch of [optimized targeting](//support.google.com/displayvideo/answer/12060859). This field will be set to `false`. If this field is set to `true` when deprecated, all positive first-party audience targeting assigned to this line item will be replaced with negative targeting of the same first-party audiences to ensure the continued exclusion of those audiences. */ @@ -5183,6 +4997,27 @@ export namespace displayvideo_v2 { */ viewabilityDetails?: Schema$ViewabilityTargetingOptionDetails; } + /** + * Settings that control what third-party vendors are measuring specific line item metrics. + */ + export interface Schema$ThirdPartyMeasurementConfigs { + /** + * Optional. The third-party vendors measuring brand lift. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_DYNATA` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_INTAGE` * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_MACROMILL` + */ + brandLiftVendorConfigs?: Schema$ThirdPartyVendorConfig[]; + /** + * Optional. The third-party vendors measuring brand safety. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_ZEFR` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` + */ + brandSafetyVendorConfigs?: Schema$ThirdPartyVendorConfig[]; + /** + * Optional. The third-party vendors measuring reach. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_VIDEO_RESEARCH` * `THIRD_PARTY_VENDOR_MEDIA_SCOPE` * `THIRD_PARTY_VENDOR_AUDIENCE_PROJECT` * `THIRD_PARTY_VENDOR_VIDEO_AMP` * `THIRD_PARTY_VENDOR_ISPOT_TV` * `THIRD_PARTY_VENDOR_GEMIUS` + */ + reachVendorConfigs?: Schema$ThirdPartyVendorConfig[]; + /** + * Optional. The third-party vendors measuring viewability. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_MOAT` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_TELEMETRY` * `THIRD_PARTY_VENDOR_MEETRICS` + */ + viewabilityVendorConfigs?: Schema$ThirdPartyVendorConfig[]; + } /** * Settings for advertisers that use third-party ad servers only. */ @@ -5235,19 +5070,6 @@ export namespace displayvideo_v2 { */ integralAdScience?: Schema$IntegralAdScience; } - /** - * A time range. - */ - export interface Schema$TimeRange { - /** - * Required. The upper bound of a time range, inclusive. - */ - endTime?: string | null; - /** - * Required. The lower bound of a time range, inclusive. - */ - startTime?: string | null; - } /** * Timer event of the creative. */ @@ -5408,6 +5230,10 @@ export namespace displayvideo_v2 { * Optional. Whether ads can serve as in-stream format. */ allowInStream?: boolean | null; + /** + * Optional. Indicates whether ads can serve as non-skippable in-stream format. + */ + allowNonSkippableInStream?: boolean | null; /** * Optional. Whether ads can serve as shorts format. */ @@ -5485,7 +5311,7 @@ export namespace displayvideo_v2 { */ companionBanners?: Schema$ImageAsset[]; /** - * The custom parameters to pass custom values to tracking URL template. + * The custom parameters and accompanying values to add to the tracking URL. */ customParameters?: {[key: string]: string} | null; /** @@ -5513,7 +5339,7 @@ export namespace displayvideo_v2 { */ headlines?: string[] | null; /** - * The list of lone headlines shown on the call-to-action banner. + * The list of long headlines shown on the call-to-action banner. */ longHeadlines?: string[] | null; /** @@ -5705,7 +5531,7 @@ export namespace displayvideo_v2 { */ type?: string | null; /** - * The value used by the bidding strategy. When the bidding strategy is assigned at the line item level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_SHARE_OF_VOICE` When the bidding strategy is assigned at the ad group level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPV` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` If not using an applicable strategy, the value of this field will be 0. + * The value used by the bidding strategy. When the bidding strategy is assigned at the line item level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` When the bidding strategy is assigned at the ad group level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPV` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` If not using an applicable strategy, the value of this field will be 0. */ value?: string | null; } @@ -5755,7 +5581,7 @@ export namespace displayvideo_v2 { */ leadFormId?: string | null; /** - * Optional. The ID of the merchant which is linked to the line item for product feed. + * Optional. The ID of the Merchant Center account used to provide a product feed. This Merchant Center account must already be linked to the advertiser. */ linkedMerchantId?: string | null; /** @@ -5843,7 +5669,7 @@ export namespace displayvideo_v2 { */ unavailableReason?: string | null; /** - * Required. The YouTube video asset id. This is ad_asset.ad_asset_id. + * Required. The YouTube video asset id. This is the adAssetId of an AdAsset resource. */ videoAssetId?: string | null; } @@ -12590,6 +12416,7 @@ export namespace displayvideo_v2 { * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", * // "conversionCounting": {}, * // "creativeIds": [], + * // "demandGenSettings": {}, * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", * // "excludeNewExchanges": false, @@ -12601,6 +12428,7 @@ export namespace displayvideo_v2 { * // "lineItemType": "my_lineItemType", * // "mobileApp": {}, * // "name": "my_name", + * // "optimizeFixedBidding": false, * // "pacing": {}, * // "partnerCosts": [], * // "partnerRevenueModel": {}, @@ -12623,6 +12451,7 @@ export namespace displayvideo_v2 { * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", * // "conversionCounting": {}, * // "creativeIds": [], + * // "demandGenSettings": {}, * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", * // "excludeNewExchanges": false, @@ -12634,6 +12463,7 @@ export namespace displayvideo_v2 { * // "lineItemType": "my_lineItemType", * // "mobileApp": {}, * // "name": "my_name", + * // "optimizeFixedBidding": false, * // "pacing": {}, * // "partnerCosts": [], * // "partnerRevenueModel": {}, @@ -13075,6 +12905,7 @@ export namespace displayvideo_v2 { * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", * // "conversionCounting": {}, * // "creativeIds": [], + * // "demandGenSettings": {}, * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", * // "excludeNewExchanges": false, @@ -13086,6 +12917,7 @@ export namespace displayvideo_v2 { * // "lineItemType": "my_lineItemType", * // "mobileApp": {}, * // "name": "my_name", + * // "optimizeFixedBidding": false, * // "pacing": {}, * // "partnerCosts": [], * // "partnerRevenueModel": {}, @@ -13388,6 +13220,7 @@ export namespace displayvideo_v2 { * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", * // "conversionCounting": {}, * // "creativeIds": [], + * // "demandGenSettings": {}, * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", * // "excludeNewExchanges": false, @@ -13399,6 +13232,7 @@ export namespace displayvideo_v2 { * // "lineItemType": "my_lineItemType", * // "mobileApp": {}, * // "name": "my_name", + * // "optimizeFixedBidding": false, * // "pacing": {}, * // "partnerCosts": [], * // "partnerRevenueModel": {}, @@ -13421,6 +13255,7 @@ export namespace displayvideo_v2 { * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", * // "conversionCounting": {}, * // "creativeIds": [], + * // "demandGenSettings": {}, * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", * // "excludeNewExchanges": false, @@ -13432,6 +13267,7 @@ export namespace displayvideo_v2 { * // "lineItemType": "my_lineItemType", * // "mobileApp": {}, * // "name": "my_name", + * // "optimizeFixedBidding": false, * // "pacing": {}, * // "partnerCosts": [], * // "partnerRevenueModel": {}, @@ -14148,7 +13984,7 @@ export namespace displayvideo_v2 { * assignedTargetingOptionId: '[^/]+', * // Required. The ID of the line item the assigned targeting option belongs to. * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * targetingType: '[^/]+', * }, * ); @@ -14365,7 +14201,7 @@ export namespace displayvideo_v2 { * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItemAssignedTargetingOptions` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * targetingType: '[^/]+', * }, * ); @@ -14536,7 +14372,7 @@ export namespace displayvideo_v2 { */ lineItemId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) */ targetingType?: string; } @@ -14566,7 +14402,7 @@ export namespace displayvideo_v2 { */ pageToken?: string; /** - * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) */ targetingType?: string; } @@ -18688,7 +18524,7 @@ export namespace displayvideo_v2 { * { * // Required. The ID of the advertiser. * advertiserId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * targetingType: '[^/]+', * * // Request body metadata @@ -18949,7 +18785,7 @@ export namespace displayvideo_v2 { * advertiserId: '[^/]+', * // Required. The ID of the assigned targeting option to delete. * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * targetingType: '[^/]+', * }, * ); @@ -19437,7 +19273,7 @@ export namespace displayvideo_v2 { */ advertiserId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` */ targetingType?: string; @@ -19456,7 +19292,7 @@ export namespace displayvideo_v2 { */ assignedTargetingOptionId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` */ targetingType?: string; } @@ -26408,932 +26244,6 @@ export namespace displayvideo_v2 { partnerId?: string; } - export class Resource$Inventorysources { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Creates a new inventory source. Returns the newly created inventory source if successful. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const displayvideo = google.displayvideo('v2'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await displayvideo.inventorySources.create({ - * // The ID of the advertiser that the request is being made within. - * advertiserId: 'placeholder-value', - * // The ID of the partner that the request is being made within. - * partnerId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "commitment": "my_commitment", - * // "creativeConfigs": [], - * // "dealId": "my_dealId", - * // "deliveryMethod": "my_deliveryMethod", - * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "inventorySourceId": "my_inventorySourceId", - * // "inventorySourceProductType": "my_inventorySourceProductType", - * // "inventorySourceType": "my_inventorySourceType", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "rateDetails": {}, - * // "readAdvertiserIds": [], - * // "readPartnerIds": [], - * // "readWriteAccessors": {}, - * // "status": {}, - * // "timeRange": {}, - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "commitment": "my_commitment", - * // "creativeConfigs": [], - * // "dealId": "my_dealId", - * // "deliveryMethod": "my_deliveryMethod", - * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "inventorySourceId": "my_inventorySourceId", - * // "inventorySourceProductType": "my_inventorySourceProductType", - * // "inventorySourceType": "my_inventorySourceType", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "rateDetails": {}, - * // "readAdvertiserIds": [], - * // "readPartnerIds": [], - * // "readWriteAccessors": {}, - * // "status": {}, - * // "timeRange": {}, - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Inventorysources$Create, - options: StreamMethodOptions - ): Promise>; - create( - params?: Params$Resource$Inventorysources$Create, - options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Inventorysources$Create, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Inventorysources$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Inventorysources$Create, - callback: BodyResponseCallback - ): void; - create(callback: BodyResponseCallback): void; - create( - paramsOrCallback?: - | Params$Resource$Inventorysources$Create - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysources$Create; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysources$Create; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v2/inventorySources').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Edits read/write accessors of an inventory source. Returns the updated read_write_accessors for the inventory source. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const displayvideo = google.displayvideo('v2'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await displayvideo.inventorySources.editInventorySourceReadWriteAccessors({ - * // Required. The ID of inventory source to update. - * inventorySourceId: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advertisersUpdate": {}, - * // "assignPartner": false, - * // "partnerId": "my_partnerId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "advertisers": {}, - * // "partner": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - editInventorySourceReadWriteAccessors( - params: Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors, - options: StreamMethodOptions - ): Promise>; - editInventorySourceReadWriteAccessors( - params?: Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors, - options?: MethodOptions - ): Promise>; - editInventorySourceReadWriteAccessors( - params: Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - editInventorySourceReadWriteAccessors( - params: Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - editInventorySourceReadWriteAccessors( - params: Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors, - callback: BodyResponseCallback - ): void; - editInventorySourceReadWriteAccessors( - callback: BodyResponseCallback - ): void; - editInventorySourceReadWriteAccessors( - paramsOrCallback?: - | Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/v2/inventorySources/{+inventorySourceId}:editInventorySourceReadWriteAccessors' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['inventorySourceId'], - pathParams: ['inventorySourceId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets an inventory source. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const displayvideo = google.displayvideo('v2'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await displayvideo.inventorySources.get({ - * // Required. The ID of the inventory source to fetch. - * inventorySourceId: '[^/]+', - * // Required. The ID of the DV360 partner to which the fetched inventory source is permissioned. - * partnerId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "commitment": "my_commitment", - * // "creativeConfigs": [], - * // "dealId": "my_dealId", - * // "deliveryMethod": "my_deliveryMethod", - * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "inventorySourceId": "my_inventorySourceId", - * // "inventorySourceProductType": "my_inventorySourceProductType", - * // "inventorySourceType": "my_inventorySourceType", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "rateDetails": {}, - * // "readAdvertiserIds": [], - * // "readPartnerIds": [], - * // "readWriteAccessors": {}, - * // "status": {}, - * // "timeRange": {}, - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Inventorysources$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Inventorysources$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Inventorysources$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Inventorysources$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Inventorysources$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Inventorysources$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysources$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysources$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/v2/inventorySources/{+inventorySourceId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['inventorySourceId'], - pathParams: ['inventorySourceId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists inventory sources that are accessible to the current user. The order is defined by the order_by parameter. If a filter by entity_status is not specified, inventory sources with entity status `ENTITY_STATUS_ARCHIVED` will not be included in the results. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const displayvideo = google.displayvideo('v2'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await displayvideo.inventorySources.list({ - * // The ID of the advertiser that has access to the inventory source. - * advertiserId: 'placeholder-value', - * // Allows filtering by inventory source fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `status.entityStatus` * `commitment` * `deliveryMethod` * `rateDetails.rateType` * `exchange` Examples: * All active inventory sources: `status.entityStatus="ENTITY_STATUS_ACTIVE"` * Inventory sources belonging to Google Ad Manager or Rubicon exchanges: `exchange="EXCHANGE_GOOGLE_AD_MANAGER" OR exchange="EXCHANGE_RUBICON"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. For example, `displayName desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInventorySources` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // The ID of the partner that has access to the inventory source. - * partnerId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "inventorySources": [], - * // "nextPageToken": "my_nextPageToken" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Inventorysources$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Inventorysources$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Inventorysources$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Inventorysources$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Inventorysources$List, - callback: BodyResponseCallback - ): void; - list( - callback: BodyResponseCallback - ): void; - list( - paramsOrCallback?: - | Params$Resource$Inventorysources$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysources$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysources$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v2/inventorySources').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Updates an existing inventory source. Returns the updated inventory source if successful. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const displayvideo = google.displayvideo('v2'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await displayvideo.inventorySources.patch({ - * // The ID of the advertiser that the request is being made within. - * advertiserId: 'placeholder-value', - * // Output only. The unique ID of the inventory source. Assigned by the system. - * inventorySourceId: '[^/]+', - * // The ID of the partner that the request is being made within. - * partnerId: 'placeholder-value', - * // Required. The mask to control which fields to update. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "commitment": "my_commitment", - * // "creativeConfigs": [], - * // "dealId": "my_dealId", - * // "deliveryMethod": "my_deliveryMethod", - * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "inventorySourceId": "my_inventorySourceId", - * // "inventorySourceProductType": "my_inventorySourceProductType", - * // "inventorySourceType": "my_inventorySourceType", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "rateDetails": {}, - * // "readAdvertiserIds": [], - * // "readPartnerIds": [], - * // "readWriteAccessors": {}, - * // "status": {}, - * // "timeRange": {}, - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "commitment": "my_commitment", - * // "creativeConfigs": [], - * // "dealId": "my_dealId", - * // "deliveryMethod": "my_deliveryMethod", - * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "inventorySourceId": "my_inventorySourceId", - * // "inventorySourceProductType": "my_inventorySourceProductType", - * // "inventorySourceType": "my_inventorySourceType", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "rateDetails": {}, - * // "readAdvertiserIds": [], - * // "readPartnerIds": [], - * // "readWriteAccessors": {}, - * // "status": {}, - * // "timeRange": {}, - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Inventorysources$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Inventorysources$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Inventorysources$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Inventorysources$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Inventorysources$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Inventorysources$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysources$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysources$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/v2/inventorySources/{+inventorySourceId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['inventorySourceId'], - pathParams: ['inventorySourceId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Inventorysources$Create extends StandardParameters { - /** - * The ID of the advertiser that the request is being made within. - */ - advertiserId?: string; - /** - * The ID of the partner that the request is being made within. - */ - partnerId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InventorySource; - } - export interface Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors extends StandardParameters { - /** - * Required. The ID of inventory source to update. - */ - inventorySourceId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$EditInventorySourceReadWriteAccessorsRequest; - } - export interface Params$Resource$Inventorysources$Get extends StandardParameters { - /** - * Required. The ID of the inventory source to fetch. - */ - inventorySourceId?: string; - /** - * Required. The ID of the DV360 partner to which the fetched inventory source is permissioned. - */ - partnerId?: string; - } - export interface Params$Resource$Inventorysources$List extends StandardParameters { - /** - * The ID of the advertiser that has access to the inventory source. - */ - advertiserId?: string; - /** - * Allows filtering by inventory source fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `status.entityStatus` * `commitment` * `deliveryMethod` * `rateDetails.rateType` * `exchange` Examples: * All active inventory sources: `status.entityStatus="ENTITY_STATUS_ACTIVE"` * Inventory sources belonging to Google Ad Manager or Rubicon exchanges: `exchange="EXCHANGE_GOOGLE_AD_MANAGER" OR exchange="EXCHANGE_RUBICON"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. For example, `displayName desc`. - */ - orderBy?: string; - /** - * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInventorySources` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - /** - * The ID of the partner that has access to the inventory source. - */ - partnerId?: string; - } - export interface Params$Resource$Inventorysources$Patch extends StandardParameters { - /** - * The ID of the advertiser that the request is being made within. - */ - advertiserId?: string; - /** - * Output only. The unique ID of the inventory source. Assigned by the system. - */ - inventorySourceId?: string; - /** - * The ID of the partner that the request is being made within. - */ - partnerId?: string; - /** - * Required. The mask to control which fields to update. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InventorySource; - } - export class Resource$Media { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/displayvideo/v3.ts b/src/apis/displayvideo/v3.ts index 6c72ae7a380..0ea5814faaa 100644 --- a/src/apis/displayvideo/v3.ts +++ b/src/apis/displayvideo/v3.ts @@ -121,7 +121,6 @@ export namespace displayvideo_v3 { googleAudiences: Resource$Googleaudiences; guaranteedOrders: Resource$Guaranteedorders; inventorySourceGroups: Resource$Inventorysourcegroups; - inventorySources: Resource$Inventorysources; media: Resource$Media; partners: Resource$Partners; sdfdownloadtasks: Resource$Sdfdownloadtasks; @@ -148,7 +147,6 @@ export namespace displayvideo_v3 { this.inventorySourceGroups = new Resource$Inventorysourcegroups( this.context ); - this.inventorySources = new Resource$Inventorysources(this.context); this.media = new Resource$Media(this.context); this.partners = new Resource$Partners(this.context); this.sdfdownloadtasks = new Resource$Sdfdownloadtasks(this.context); @@ -187,13 +185,17 @@ export namespace displayvideo_v3 { */ export interface Schema$AdGroup { /** - * Required. The format of the ads in the ad group. + * Required. Immutable. The format of the ads in the ad group. */ adGroupFormat?: string | null; /** * Output only. The unique ID of the ad group. Assigned by the system. */ adGroupId?: string | null; + /** + * Optional. Required for Demand Gen ad groups. Specifies the inventory control of the ad group. + */ + adGroupInventoryControl?: Schema$AdGroupInventoryControl; /** * Output only. The unique ID of the advertiser the ad group belongs to. */ @@ -211,7 +213,7 @@ export namespace displayvideo_v3 { */ entityStatus?: string | null; /** - * Required. The unique ID of the line item that the ad group belongs to. + * Required. Immutable. The unique ID of the line item that the ad group belongs to. */ lineItemId?: string | null; /** @@ -236,7 +238,7 @@ export namespace displayvideo_v3 { */ adGroupAdId?: string | null; /** - * Required. The unique ID of the ad group that the ad belongs to. + * Required. Immutable. The unique ID of the ad group that the ad belongs to. */ adGroupId?: string | null; /** @@ -259,6 +261,26 @@ export namespace displayvideo_v3 { * Output only. Details of a [non-skippable short video ad](//support.google.com/displayvideo/answer/6274216), equal to or less than 6 seconds, used for reach. */ bumperAd?: Schema$BumperAd; + /** + * Optional. The DCM tracking ad info. Only valid for Demand Gen ads. To remove the DCM tracking ad info, please leave this field empty. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + dcmTrackingInfo?: Schema$DcmTrackingInfo; + /** + * Details of a [Demand Gen carousel ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#CarouselAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + demandGenCarouselAd?: Schema$DemandGenCarouselAd; + /** + * Details of a [Demand Gen image ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#ImageAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + demandGenImageAd?: Schema$DemandGenImageAd; + /** + * Details of a [Demand Gen product ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#Product-onlyAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + demandGenProductAd?: Schema$DemandGenProductAd; + /** + * Details of a [Demand Gen video ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#VideoAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + demandGenVideoAd?: Schema$DemandGenVideoAd; /** * Required. The display name of the ad. Must be UTF-8 encoded with a maximum size of 255 bytes. */ @@ -309,6 +331,19 @@ export namespace displayvideo_v3 { */ assignedTargetingOption?: Schema$AssignedTargetingOption; } + /** + * The inventory control of the ad group. + */ + export interface Schema$AdGroupInventoryControl { + /** + * The inventory strategy. + */ + adGroupInventoryStrategy?: string | null; + /** + * The selected inventories. + */ + selectedInventories?: Schema$SelectedInventories; + } /** * Details of Scope3 (previously known as Adloox) brand safety settings. */ @@ -1592,6 +1627,10 @@ export namespace displayvideo_v3 { * Settings that control the bid strategy. Bid strategy determines the bid price. */ export interface Schema$BiddingStrategy { + /** + * A bid strategy used by Demand Gen resources. It can only be used for a Demand Gen line item or ad group entity. + */ + demandGenBid?: Schema$DemandGenBiddingStrategy; /** * A strategy that uses a fixed bid price. */ @@ -1660,16 +1699,50 @@ export namespace displayvideo_v3 { */ totalAmountMicros?: string | null; } + /** + * Request message for BulkEditAdGroupAssignedTargetingOptions. + */ + export interface Schema$BulkEditAdGroupAssignedTargetingOptionsRequest { + /** + * Required. The IDs of the ad groups the assigned targeting options will belong to. A maximum of 25 ad group IDs can be specified. + */ + adGroupIds?: string[] | null; + /** + * Optional. The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + */ + createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; + /** + * Optional. The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + */ + deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; + } + /** + * Response message for BulkEditAssignedTargetingOptions. + */ + export interface Schema$BulkEditAdGroupAssignedTargetingOptionsResponse { + /** + * Output only. The error information for each ad group that failed to update. + */ + errors?: Schema$Status[]; + /** + * Output only. The IDs of the ad groups which failed to update. + */ + failedAdGroupIds?: string[] | null; + /** + * Output only. The IDs of the ad groups which were successfully updated. + */ + updatedAdGroupIds?: string[] | null; + } /** * Request message for BulkEditAdvertiserAssignedTargetingOptions. */ export interface Schema$BulkEditAdvertiserAssignedTargetingOptionsRequest { /** - * The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` */ createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; /** - * The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` */ deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; } @@ -2089,6 +2162,39 @@ export namespace displayvideo_v3 { */ performanceGoal?: Schema$PerformanceGoal; } + /** + * Details for a Demand Gen carousel card. + */ + export interface Schema$CarouselCard { + /** + * Required. The text on the call-to-action button shown on the card. Must use 10 characters or less. + */ + callToAction?: string | null; + /** + * Optional. The URL address of the webpage that people reach after they click the card on a mobile device. + */ + finalMobileUrl?: string | null; + /** + * Required. The URL address of the webpage that people reach after they click the card. + */ + finalUrl?: string | null; + /** + * Required. The headline of the card. + */ + headline?: string | null; + /** + * Optional. The marketing image shown on the card. + */ + marketingImage?: Schema$ImageAsset; + /** + * Optional. The portrait marketing image shown on the card. + */ + portraitMarketingImage?: Schema$ImageAsset; + /** + * Optional. The square marketing image shown on the card. + */ + squareMarketingImage?: Schema$ImageAsset; + } /** * Details for assigned carrier and ISP targeting option. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_CARRIER_AND_ISP`. */ @@ -2516,6 +2622,10 @@ export namespace displayvideo_v3 { * The percentage of post-view conversions to count, in millis (1/1000 of a percent). Must be between 0 and 100000 inclusive. For example, to track 50% of the post-click conversions, set a value of 50000. */ postViewCountPercentageMillis?: string | null; + /** + * Optional. The attribution model to use for conversion measurement. This attribution model will determine how conversions are counted. The Primary model can be set by you for a floodlight config or group. More details [here](https://support.google.com/displayvideo/answer/7409983). Only applicable to Demand Gen line items. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + primaryAttributionModelId?: string | null; } /** * Counter event of the creative. @@ -2783,23 +2893,6 @@ export namespace displayvideo_v3 { */ vpaid?: boolean | null; } - /** - * Creative requirements configuration for the inventory source. - */ - export interface Schema$CreativeConfig { - /** - * The type of creative that can be assigned to the inventory source. Only the following types are supported: * `CREATIVE_TYPE_STANDARD` * `CREATIVE_TYPE_VIDEO` - */ - creativeType?: string | null; - /** - * The configuration for display creatives. Applicable when creative_type is `CREATIVE_TYPE_STANDARD`. - */ - displayCreativeConfig?: Schema$InventorySourceDisplayCreativeConfig; - /** - * The configuration for video creatives. Applicable when creative_type is `CREATIVE_TYPE_VIDEO`. - */ - videoCreativeConfig?: Schema$InventorySourceVideoCreativeConfig; - } /** * A single custom bidding algorithm. */ @@ -3071,10 +3164,27 @@ export namespace displayvideo_v3 { */ startHour?: number | null; /** - * Required. The mechanism used to determine which timezone to use for this day and time targeting setting. + * Required. The mechanism used to determine which timezone to use for this day and time targeting setting. For Demand Gen line items, this field is always `TIME_ZONE_RESOLUTION_ADVERTISER`. */ timeZoneResolution?: string | null; } + /** + * Details on the DCM tracking. + */ + export interface Schema$DcmTrackingInfo { + /** + * Required. The DCM creative id. + */ + creativeId?: string | null; + /** + * Required. The DCM placement id. + */ + placementId?: string | null; + /** + * Required. The DCM tracking ad id. + */ + trackingAdId?: string | null; + } /** * A request listing which assigned targeting options of a given targeting type should be deleted. */ @@ -3088,6 +3198,272 @@ export namespace displayvideo_v3 { */ targetingType?: string | null; } + /** + * Settings that control the bid strategy for Demand Gen resources. + */ + export interface Schema$DemandGenBiddingStrategy { + /** + * Output only. The value effectively used by the bidding strategy. This field will be the same as value if set. If value is not set and the strategy is assigned to an ad group, this field will be inherited from the line item's bidding strategy. If type is not `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA` or `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS`, this field will be 0. + */ + effectiveBiddingValue?: string | null; + /** + * Output only. Source of the effective bidding value. + */ + effectiveBiddingValueSource?: string | null; + /** + * Optional. The type of the bidding strategy. This can only be set when assigned to a line item. Ad groups will inherit this value from their line item. + */ + type?: string | null; + /** + * Optional. The value used by the bidding strategy. This can be set when assigned to line items or ad groups. This field is only applicable for the following strategy types: * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPC` * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS` Value of this field is in micros of the advertiser's currency or ROAS value. For example, 1000000 represents 1.0 standard units of the currency or 100% ROAS value. If not using an applicable strategy, the value of this field will be 0. + */ + value?: string | null; + } + /** + * Details for a Demand Gen carousel ad. + */ + export interface Schema$DemandGenCarouselAd { + /** + * Required. The business name shown on the ad. + */ + businessName?: string | null; + /** + * Required. The list of cards shown on the ad. + */ + cards?: Schema$CarouselCard[]; + /** + * Optional. The custom parameters and accompanying values to add to the tracking URL. + */ + customParameters?: {[key: string]: string} | null; + /** + * Required. The description of the ad. + */ + description?: string | null; + /** + * Required. The URL address of the webpage that people reach after they click the ad. + */ + finalUrl?: string | null; + /** + * Optional. The suffix to append to landing page URLs. + */ + finalUrlSuffix?: string | null; + /** + * Required. The headline of the ad. + */ + headline?: string | null; + /** + * Required. The logo image used by this ad. + */ + logo?: Schema$ImageAsset; + /** + * Output only. The URL address loaded in the background for tracking purposes. + */ + trackingUrl?: string | null; + /** + * Optional. The tracking URL specified by the user manually. + */ + userSpecifiedTrackingUrl?: string | null; + } + /** + * Details for a Demand Gen image ad. + */ + export interface Schema$DemandGenImageAd { + /** + * Required. The business name shown on the ad. + */ + businessName?: string | null; + /** + * Required. The call-to-action button shown on the ad. + */ + callToAction?: string | null; + /** + * Optional. The custom parameters and accompanying values to add to the tracking URL. + */ + customParameters?: {[key: string]: string} | null; + /** + * Required. The list of descriptions shown on the ad. + */ + descriptions?: string[] | null; + /** + * Optional. The URL address of the webpage that people reach after they click the ad on a mobile device. + */ + finalMobileUrl?: string | null; + /** + * Required. The URL address of the webpage that people reach after they click the ad. + */ + finalUrl?: string | null; + /** + * Optional. The suffix to append to landing page URLs. + */ + finalUrlSuffix?: string | null; + /** + * Required. The list of headlines shown on the ad. + */ + headlines?: string[] | null; + /** + * The list of logo images shown on the ad. + */ + logoImages?: Schema$ImageAsset[]; + /** + * The list of marketing images shown on the ad. + */ + marketingImages?: Schema$ImageAsset[]; + /** + * The list of portrait marketing images shown on the ad. + */ + portraitMarketingImages?: Schema$ImageAsset[]; + /** + * The list of square marketing images shown on the ad. + */ + squareMarketingImages?: Schema$ImageAsset[]; + /** + * Output only. The URL address loaded in the background for tracking purposes. + */ + trackingUrl?: string | null; + /** + * Optional. The tracking URL specified by the user manually. + */ + userSpecifiedTrackingUrl?: string | null; + } + /** + * Details for a Demand Gen product ad. + */ + export interface Schema$DemandGenProductAd { + /** + * Required. The business name shown on the ad. + */ + businessName?: string | null; + /** + * Required. The call-to-action button shown on the ad. The supported values are: * `AUTOMATED` * `APPLY_NOW` * `BOOK_NOW` * `CONTACT_US` * `DOWNLOAD` * `GET_QUOTE` * `LEARN_MORE` * `SHOP_NOW` * `SIGN_UP` * `SUBSCRIBE` + */ + callToAction?: string | null; + /** + * Optional. The custom parameters and accompanying values to add to the tracking URL. + */ + customParameters?: {[key: string]: string} | null; + /** + * Required. The description of the ad. + */ + description?: string | null; + /** + * Optional. The first piece after the domain in the display URL. + */ + displayUrlBreadcrumb1?: string | null; + /** + * Optional. The second piece after the domain in the display URL. + */ + displayUrlBreadcrumb2?: string | null; + /** + * Required. The URL address of the webpage that people reach after they click the ad. + */ + finalUrl?: string | null; + /** + * Optional. The suffix to append to landing page URLs. + */ + finalUrlSuffix?: string | null; + /** + * Required. The headline of the ad. + */ + headline?: string | null; + /** + * Required. The logo image used by this ad. + */ + logo?: Schema$ImageAsset; + /** + * Output only. The URL address loaded in the background for tracking purposes. + */ + trackingUrl?: string | null; + /** + * Optional. The tracking URL specified by the user manually. + */ + userSpecifiedTrackingUrl?: string | null; + } + /** + * Settings for Demand Gen line items. + */ + export interface Schema$DemandGenSettings { + /** + * Optional. Immutable. Whether location and language targeting can be set at the line item level. Otherwise, relevant targeting types must be assigned directly to ad groups. + */ + geoLanguageTargetingEnabled?: boolean | null; + /** + * Optional. The ID of the Merchant Center account used to provide a product feed. This Merchant Center account must already be linked to the advertiser. + */ + linkedMerchantId?: string | null; + /** + * Optional. The third party measurement settings for the Demand Gen line item. + */ + thirdPartyMeasurementConfigs?: Schema$ThirdPartyMeasurementConfigs; + } + /** + * Details for a Demand Gen video ad. + */ + export interface Schema$DemandGenVideoAd { + /** + * Required. The business name shown on the ad. + */ + businessName?: string | null; + /** + * Required. The call-to-action button shown on the ad. The supported values are: * `AUTOMATED` * `LEARN_MORE` * `GET_QUOTE` * `APPLY_NOW` * `SIGN_UP` * `CONTACT_US` * `SUBSCRIBE` * `DOWNLOAD` * `BOOK_NOW` * `SHOP_NOW` * `BUY_NOW` * `DONATE_NOW` * `ORDER_NOW` * `PLAY_NOW` * `SEE_MORE` * `START_NOW` * `VISIT_SITE` * `WATCH_NOW` + */ + callToAction?: string | null; + /** + * Optional. The companion banner used by this ad. + */ + companionBanner?: Schema$ImageAsset; + /** + * Optional. The custom parameters and accompanying values to add to the tracking URL. + */ + customParameters?: {[key: string]: string} | null; + /** + * Required. The list of descriptions shown on the ad. + */ + descriptions?: string[] | null; + /** + * Optional. The first piece after the domain in the display URL. + */ + displayUrlBreadcrumb1?: string | null; + /** + * Optional. The second piece after the domain in the display URL. + */ + displayUrlBreadcrumb2?: string | null; + /** + * Optional. The URL address of the webpage that people reach after they click the ad on a mobile device. + */ + finalMobileUrl?: string | null; + /** + * Required. The URL address of the webpage that people reach after they click the ad. + */ + finalUrl?: string | null; + /** + * Optional. The suffix to append to landing page URLs. + */ + finalUrlSuffix?: string | null; + /** + * Required. The list of headlines shown on the ad. + */ + headlines?: string[] | null; + /** + * Required. The logo image used by this ad. + */ + logo?: Schema$ImageAsset; + /** + * Required. The list of long headlines shown on the ad. + */ + longHeadlines?: string[] | null; + /** + * Output only. The URL address loaded in the background for tracking purposes. + */ + trackingUrl?: string | null; + /** + * Optional. The tracking URL specified by the user manually. + */ + userSpecifiedTrackingUrl?: string | null; + /** + * Required. The list of YouTube video assets used by this ad. + */ + videos?: Schema$YoutubeVideoDetails[]; + } /** * Assigned device make and model targeting option details. This will be populated in the device_make_model_details field when targeting_type is `TARGETING_TYPE_DEVICE_MAKE_MODEL`. */ @@ -3367,37 +3743,7 @@ export namespace displayvideo_v3 { readAdvertiserIds?: string[] | null; } /** - * Request message for InventorySourceService.EditInventorySourceReadWriteAccessors. - */ - export interface Schema$EditInventorySourceReadWriteAccessorsRequest { - /** - * The advertisers to add or remove from the list of advertisers that have read/write access to the inventory source. This change will remove an existing partner read/write accessor. - */ - advertisersUpdate?: Schema$EditInventorySourceReadWriteAccessorsRequestAdvertisersUpdate; - /** - * Set the partner context as read/write accessor of the inventory source. This will remove all other current read/write advertiser accessors. - */ - assignPartner?: boolean | null; - /** - * Required. The partner context by which the accessors change is being made. - */ - partnerId?: string | null; - } - /** - * Update to the list of advertisers with read/write access to the inventory source. - */ - export interface Schema$EditInventorySourceReadWriteAccessorsRequestAdvertisersUpdate { - /** - * The advertisers to add. - */ - addedAdvertisers?: string[] | null; - /** - * The advertisers to remove. - */ - removedAdvertisers?: 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); \} + * 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 {} /** @@ -3949,6 +4295,10 @@ export namespace displayvideo_v3 { * Meta data of an image asset. */ export interface Schema$ImageAsset { + /** + * Required. The unique ID of the asset. + */ + assetId?: string | null; /** * Output only. File size of the image asset in bytes. */ @@ -4082,7 +4432,7 @@ export namespace displayvideo_v3 { */ commonInStreamAttribute?: Schema$CommonInStreamAttribute; /** - * The custom parameters to pass custom values to tracking URL template. + * The custom parameters and accompanying values to add to the tracking URL. */ customParameters?: {[key: string]: string} | null; } @@ -4164,118 +4514,6 @@ export namespace displayvideo_v3 { */ integrationCode?: string | null; } - /** - * An inventory source. Next ID: 22 - */ - export interface Schema$InventorySource { - /** - * Whether the inventory source has a guaranteed or non-guaranteed delivery. - */ - commitment?: string | null; - /** - * The creative requirements of the inventory source. Not applicable for auction packages. - */ - creativeConfigs?: Schema$CreativeConfig[]; - /** - * The ID in the exchange space that uniquely identifies the inventory source. Must be unique across buyers within each exchange but not necessarily unique across exchanges. - */ - dealId?: string | null; - /** - * The delivery method of the inventory source. * For non-guaranteed inventory sources, the only acceptable value is `INVENTORY_SOURCE_DELIVERY_METHOD_PROGRAMMATIC`. * For guaranteed inventory sources, acceptable values are `INVENTORY_SOURCE_DELIVERY_METHOD_TAG` and `INVENTORY_SOURCE_DELIVERY_METHOD_PROGRAMMATIC`. - */ - deliveryMethod?: string | null; - /** - * The display name of the inventory source. Must be UTF-8 encoded with a maximum size of 240 bytes. - */ - displayName?: string | null; - /** - * The exchange to which the inventory source belongs. - */ - exchange?: string | null; - /** - * Immutable. The ID of the guaranteed order that this inventory source belongs to. Only applicable when commitment is `INVENTORY_SOURCE_COMMITMENT_GUARANTEED`. - */ - guaranteedOrderId?: string | null; - /** - * Output only. The unique ID of the inventory source. Assigned by the system. - */ - inventorySourceId?: string | null; - /** - * Output only. The product type of the inventory source, denoting the way through which it sells inventory. - */ - inventorySourceProductType?: string | null; - /** - * Denotes the type of the inventory source. - */ - inventorySourceType?: string | null; - /** - * Output only. The resource name of the inventory source. - */ - name?: string | null; - /** - * The publisher/seller name of the inventory source. - */ - publisherName?: string | null; - /** - * Required. The rate details of the inventory source. - */ - rateDetails?: Schema$RateDetails; - /** - * Output only. The IDs of advertisers with read-only access to the inventory source. - */ - readAdvertiserIds?: string[] | null; - /** - * Output only. The IDs of partners with read-only access to the inventory source. All advertisers of partners in this field inherit read-only access to the inventory source. - */ - readPartnerIds?: string[] | null; - /** - * The partner or advertisers that have read/write access to the inventory source. Output only when commitment is `INVENTORY_SOURCE_COMMITMENT_GUARANTEED`, in which case the read/write accessors are inherited from the parent guaranteed order. Required when commitment is `INVENTORY_SOURCE_COMMITMENT_NON_GUARANTEED`. If commitment is `INVENTORY_SOURCE_COMMITMENT_NON_GUARANTEED` and a partner is set in this field, all advertisers under this partner will automatically have read-only access to the inventory source. These advertisers will not be included in read_advertiser_ids. - */ - readWriteAccessors?: Schema$InventorySourceAccessors; - /** - * The status settings of the inventory source. - */ - status?: Schema$InventorySourceStatus; - /** - * The time range when this inventory source starts and stops serving. - */ - timeRange?: Schema$TimeRange; - /** - * Output only. The timestamp when the inventory source was last updated. Assigned by the system. - */ - updateTime?: string | null; - } - /** - * The partner or advertisers with access to the inventory source. - */ - export interface Schema$InventorySourceAccessors { - /** - * The advertisers with access to the inventory source. All advertisers must belong to the same partner. - */ - advertisers?: Schema$InventorySourceAccessorsAdvertiserAccessors; - /** - * The partner with access to the inventory source. - */ - partner?: Schema$InventorySourceAccessorsPartnerAccessor; - } - /** - * The advertisers with access to the inventory source. - */ - export interface Schema$InventorySourceAccessorsAdvertiserAccessors { - /** - * The IDs of the advertisers. - */ - advertiserIds?: string[] | null; - } - /** - * The partner with access to the inventory source. - */ - export interface Schema$InventorySourceAccessorsPartnerAccessor { - /** - * The ID of the partner. - */ - partnerId?: string | null; - } /** * Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE`. */ @@ -4285,15 +4523,6 @@ export namespace displayvideo_v3 { */ inventorySourceId?: string | null; } - /** - * The configuration for display creatives. - */ - export interface Schema$InventorySourceDisplayCreativeConfig { - /** - * The size requirements for display creatives that can be assigned to the inventory source. - */ - creativeSize?: Schema$Dimensions; - } /** * A filtering option for filtering on Inventory Source entities. */ @@ -4329,40 +4558,6 @@ export namespace displayvideo_v3 { */ inventorySourceGroupId?: string | null; } - /** - * The status related settings of the inventory source. - */ - export interface Schema$InventorySourceStatus { - /** - * Output only. The configuration status of the inventory source. Only applicable for guaranteed inventory sources. Acceptable values are `INVENTORY_SOURCE_CONFIG_STATUS_PENDING` and `INVENTORY_SOURCE_CONFIG_STATUS_COMPLETED`. An inventory source must be configured (fill in the required fields, choose creatives, and select a default campaign) before it can serve. - */ - configStatus?: string | null; - /** - * The user-provided reason for pausing this inventory source. Must not exceed 100 characters. Only applicable when entity_status is set to `ENTITY_STATUS_PAUSED`. - */ - entityPauseReason?: string | null; - /** - * Whether or not the inventory source is servable. Acceptable values are `ENTITY_STATUS_ACTIVE`, `ENTITY_STATUS_ARCHIVED`, and `ENTITY_STATUS_PAUSED`. Default value is `ENTITY_STATUS_ACTIVE`. - */ - entityStatus?: string | null; - /** - * Output only. The seller-provided reason for pausing this inventory source. Only applicable for inventory sources synced directly from the publishers and when seller_status is set to `ENTITY_STATUS_PAUSED`. - */ - sellerPauseReason?: string | null; - /** - * Output only. The status set by the seller for the inventory source. Only applicable for inventory sources synced directly from the publishers. Acceptable values are `ENTITY_STATUS_ACTIVE` and `ENTITY_STATUS_PAUSED`. - */ - sellerStatus?: string | null; - } - /** - * The configuration for video creatives. - */ - export interface Schema$InventorySourceVideoCreativeConfig { - /** - * The duration requirements for the video creatives that can be assigned to the inventory source. - */ - duration?: string | null; - } /** * A single invoice. */ @@ -4452,6 +4647,10 @@ export namespace displayvideo_v3 { * Details for assigned keyword targeting option. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_KEYWORD`. */ export interface Schema$KeywordAssignedTargetingOptionDetails { + /** + * Optional. The policy names to exempt the keyword from. When attempting to target a keyword that violates a policy, the error returned will include the name of the relevant policy. Use that name in this field to exempt the targeted keyword from the policy. This field is only applicable for positively-targeted keywords assigned to Demand Gen resources. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + exemptedPolicyNames?: string[] | null; /** * Required. The keyword, for example `car insurance`. Positive keyword cannot be offensive word. Must be UTF-8 encoded with a maximum size of 255 bytes. Maximum number of characters is 80. Maximum number of words is 10. */ @@ -4544,6 +4743,10 @@ export namespace displayvideo_v3 { * The IDs of the creatives associated with the line item. */ creativeIds?: string[] | null; + /** + * Optional. Settings specific to Demand Gen line items. Only applicable to Demand Gen line items. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + demandGenSettings?: Schema$DemandGenSettings; /** * Required. The display name of the line item. Must be UTF-8 encoded with a maximum size of 240 bytes. */ @@ -4561,7 +4764,7 @@ export namespace displayvideo_v3 { */ flight?: Schema$LineItemFlight; /** - * Required. The impression frequency cap settings of the line item. The max_impressions field in this settings object must be used if assigning a limited cap. + * Optional. Required if the line item type is not `LINE_ITEM_TYPE_DEMAND_GEN`. The impression frequency cap settings of the line item. The max_impressions field in this settings object must be used if assigning a limited cap. */ frequencyCap?: Schema$FrequencyCap; /** @@ -4588,6 +4791,10 @@ export namespace displayvideo_v3 { * Output only. The resource name of the line item. */ name?: string | null; + /** + * Optional. Whether to enable DV360's bid optimization for fixed bid line items. By default, DV360 optimizes your fixed bid by automatically lowering bids for impressions that are less likely to perform well. This optimization is enabled by default (value is true). When this field is set to `false`, this optimization is disabled, and the bid will not be lowered for any reason. This setting only applies to line items with a `bidding_strategy` of type `FIXED_BID`. + */ + optimizeFixedBidding?: boolean | null; /** * Required. The budget spending speed setting of the line item. */ @@ -4639,7 +4846,7 @@ export namespace displayvideo_v3 { */ export interface Schema$LineItemBudget { /** - * Required. The type of the budget allocation. `LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC` is only applicable when automatic budget allocation is enabled for the parent insertion order. + * Required. The type of the budget allocation. `LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC` is only applicable when automatic budget allocation is enabled for the parent insertion order. This field must be set to `LINE_ITEM_BUDGET_ALLOCATION_TYPE_FIXED` for Demand Gen line items. */ budgetAllocationType?: string | null; /** @@ -4889,16 +5096,6 @@ export namespace displayvideo_v3 { */ nextPageToken?: string | null; } - export interface Schema$ListInventorySourcesResponse { - /** - * The list of inventory sources. This list will be absent if empty. - */ - inventorySources?: Schema$InventorySource[]; - /** - * A token to retrieve the next page of results. Pass this value in the page_token field in the subsequent call to `ListInventorySources` method to retrieve the next page of results. - */ - nextPageToken?: string | null; - } export interface Schema$ListInvoicesResponse { /** * The list of invoices. This list will be absent if empty. @@ -5185,23 +5382,6 @@ export namespace displayvideo_v3 { */ mobileDeviceIds?: string[] | null; } - /** - * Represents an amount of money with its currency type. - */ - export interface Schema$Money { - /** - * The three-letter currency code defined in ISO 4217. - */ - currencyCode?: string | null; - /** - * Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. - */ - nanos?: number | null; - /** - * The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. - */ - units?: string | null; - } /** * Details for native content position assigned targeting option. This will be populated in the native_content_position_details field when targeting_type is `TARGETING_TYPE_NATIVE_CONTENT_POSITION`. Explicitly targeting all options is not supported. Remove all native content position targeting options to achieve this effect. */ @@ -5276,7 +5456,7 @@ export namespace displayvideo_v3 { */ commonInStreamAttribute?: Schema$CommonInStreamAttribute; /** - * The custom parameters to pass custom values to tracking URL template. + * The custom parameters and accompanying values to add to the tracking URL. */ customParameters?: {[key: string]: string} | null; } @@ -5587,7 +5767,7 @@ export namespace displayvideo_v3 { */ markupAmount?: string | null; /** - * Required. The markup type of the partner revenue model. + * Required. The markup type of the partner revenue model. This field must be set to `PARTNER_REVENUE_MODEL_MARKUP_TYPE_TOTAL_MEDIA_COST_MARKUP` for Demand Gen line items. */ markupType?: string | null; } @@ -5782,27 +5962,6 @@ export namespace displayvideo_v3 { */ status?: string | null; } - /** - * The rate related settings of the inventory source. - */ - export interface Schema$RateDetails { - /** - * The rate type. Acceptable values are `INVENTORY_SOURCE_RATE_TYPE_CPM_FIXED`, `INVENTORY_SOURCE_RATE_TYPE_CPM_FLOOR`, and `INVENTORY_SOURCE_RATE_TYPE_CPD`. - */ - inventorySourceRateType?: string | null; - /** - * Output only. The amount that the buyer has committed to spending on the inventory source up front. Only applicable for guaranteed inventory sources. - */ - minimumSpend?: Schema$Money; - /** - * The rate for the inventory source. - */ - rate?: Schema$Money; - /** - * Required for guaranteed inventory sources. The number of impressions guaranteed by the seller. - */ - unitsPurchased?: string | null; - } /** * Targeting details for regional location list. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_REGIONAL_LOCATION_LIST`. */ @@ -6000,6 +6159,35 @@ export namespace displayvideo_v3 { */ targetingOptions?: Schema$TargetingOption[]; } + /** + * The inventory control of the ad group. + */ + export interface Schema$SelectedInventories { + /** + * Whether the ad group is opted-in to Discover inventory. + */ + allowDiscover?: boolean | null; + /** + * Whether the ad group is opted-in to Gmail inventory. + */ + allowGmail?: boolean | null; + /** + * Whether the ad group is opted-in to Google Display Network inventory. + */ + allowGoogleDisplayNetwork?: boolean | null; + /** + * Whether the ad group is opted-in to YouTube in-feed inventory. + */ + allowYoutubeFeed?: boolean | null; + /** + * Whether the ad group is opted-in to YouTube shorts inventory. + */ + allowYoutubeShorts?: boolean | null; + /** + * Whether the ad group is opted-in to YouTube in-stream inventory. + */ + allowYoutubeStream?: boolean | null; + } /** * Targeting details for sensitive category. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION`. */ @@ -6108,6 +6296,10 @@ export namespace displayvideo_v3 { * Required. Whether to enable Optimized Targeting for the line item. Optimized targeting is not compatible with all bid strategies. Attempting to set this field to `true` for a line item using the BiddingStrategy field fixed_bid or one of the following combinations of BiddingStrategy fields and BiddingStrategyPerformanceGoalType will result in an error: maximize_auto_spend_bid: * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CIVA` * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_IVO_TEN` * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_AV_VIEWED` performance_goal_auto_bid: * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_VIEWABLE_CPM` This also applies if the line item inherits one of the above bid strategies from the parent insertion order. Bid strategies set at the insertion order-level will be inherited by their line items if the `InsertionOrder` budget field automationType is set to `INSERTION_ORDER_AUTOMATION_TYPE_BUDGET` or `INSERTION_ORDER_AUTOMATION_TYPE_BID_BUDGET`. */ enableOptimizedTargeting?: boolean | null; + /** + * Optional. Whether to exclude demographic expansion for Optimized Targeting. This field can only be set for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + excludeDemographicExpansion?: boolean | null; } /** * Represents a single targeting option, which is a targetable concept in DV360. @@ -6267,19 +6459,19 @@ export namespace displayvideo_v3 { */ export interface Schema$ThirdPartyMeasurementConfigs { /** - * Optional. The third-party vendors measuring brand lift. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_DYNATA` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_KANTAR_MILLWARD_BROWN` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` * `THIRD_PARTY_VENDOR_INTAGE` * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_MACROMILL` + * Optional. The third-party vendors measuring brand lift. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_DYNATA` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_INTAGE` * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_MACROMILL` */ brandLiftVendorConfigs?: Schema$ThirdPartyVendorConfig[]; /** - * Optional. The third-party vendors measuring brand safety. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_ZERF` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` * `THIRD_PARTY_VENDOR_ZEFR` + * Optional. The third-party vendors measuring brand safety. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_ZEFR` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` */ brandSafetyVendorConfigs?: Schema$ThirdPartyVendorConfig[]; /** - * Optional. The third-party vendors measuring reach. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` * `THIRD_PARTY_VENDOR_KANTAR_MILLWARD_BROWN` * `THIRD_PARTY_VENDOR_VIDEO_RESEARCH` * `THIRD_PARTY_VENDOR_MEDIA_SCOPE` * `THIRD_PARTY_VENDOR_AUDIENCE_PROJECT` * `THIRD_PARTY_VENDOR_VIDEO_AMP` * `THIRD_PARTY_VENDOR_ISPOT_TV` + * Optional. The third-party vendors measuring reach. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_VIDEO_RESEARCH` * `THIRD_PARTY_VENDOR_MEDIA_SCOPE` * `THIRD_PARTY_VENDOR_AUDIENCE_PROJECT` * `THIRD_PARTY_VENDOR_VIDEO_AMP` * `THIRD_PARTY_VENDOR_ISPOT_TV` * `THIRD_PARTY_VENDOR_GEMIUS` */ reachVendorConfigs?: Schema$ThirdPartyVendorConfig[]; /** - * Optional. The third-party vendors measuring viewability. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_MOAT` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_TELEMETRY` * `THIRD_PARTY_VENDOR_MEETRICS` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` + * Optional. The third-party vendors measuring viewability. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_MOAT` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_TELEMETRY` * `THIRD_PARTY_VENDOR_MEETRICS` */ viewabilityVendorConfigs?: Schema$ThirdPartyVendorConfig[]; } @@ -6335,19 +6527,6 @@ export namespace displayvideo_v3 { */ integralAdScience?: Schema$IntegralAdScience; } - /** - * A time range. - */ - export interface Schema$TimeRange { - /** - * Required. The upper bound of a time range, inclusive. - */ - endTime?: string | null; - /** - * Required. The lower bound of a time range, inclusive. - */ - startTime?: string | null; - } /** * Timer event of the creative. */ @@ -6508,6 +6687,10 @@ export namespace displayvideo_v3 { * Optional. Whether ads can serve as in-stream format. */ allowInStream?: boolean | null; + /** + * Optional. Indicates whether ads can serve as non-skippable in-stream format. + */ + allowNonSkippableInStream?: boolean | null; /** * Optional. Whether ads can serve as shorts format. */ @@ -6585,7 +6768,7 @@ export namespace displayvideo_v3 { */ companionBanners?: Schema$ImageAsset[]; /** - * The custom parameters to pass custom values to tracking URL template. + * The custom parameters and accompanying values to add to the tracking URL. */ customParameters?: {[key: string]: string} | null; /** @@ -6613,7 +6796,7 @@ export namespace displayvideo_v3 { */ headlines?: string[] | null; /** - * The list of lone headlines shown on the call-to-action banner. + * The list of long headlines shown on the call-to-action banner. */ longHeadlines?: string[] | null; /** @@ -6678,7 +6861,7 @@ export namespace displayvideo_v3 { */ type?: string | null; /** - * The value used by the bidding strategy. When the bidding strategy is assigned at the line item level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_SHARE_OF_VOICE` When the bidding strategy is assigned at the ad group level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPV` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` If not using an applicable strategy, the value of this field will be 0. + * The value used by the bidding strategy. When the bidding strategy is assigned at the line item level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` When the bidding strategy is assigned at the ad group level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPV` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` If not using an applicable strategy, the value of this field will be 0. */ value?: string | null; } @@ -6720,7 +6903,7 @@ export namespace displayvideo_v3 { */ leadFormId?: string | null; /** - * Optional. The ID of the merchant which is linked to the line item for product feed. + * Optional. The ID of the Merchant Center account used to provide a product feed. This Merchant Center account must already be linked to the advertiser. */ linkedMerchantId?: string | null; /** @@ -6787,7 +6970,7 @@ export namespace displayvideo_v3 { */ unavailableReason?: string | null; /** - * Required. The YouTube video asset id. This is ad_asset.ad_asset_id. + * Required. The YouTube video asset id. This is the adAssetId of an AdAsset resource. */ videoAssetId?: string | null; } @@ -8166,7 +8349,7 @@ export namespace displayvideo_v3 { } /** - * Gets an ad group ad. + * Creates an ad group ad. This method is only supported for Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -8195,11 +8378,37 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.adGroupAds.get({ - * // Required. The ID of the ad to fetch. - * adGroupAdId: '[^/]+', - * // Required. The ID of the advertiser this ad group ad belongs to. + * const res = await displayvideo.advertisers.adGroupAds.create({ + * // Output only. The unique ID of the advertiser the ad belongs to. * advertiserId: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adGroupAdId": "my_adGroupAdId", + * // "adGroupId": "my_adGroupId", + * // "adPolicy": {}, + * // "adUrls": [], + * // "advertiserId": "my_advertiserId", + * // "audioAd": {}, + * // "bumperAd": {}, + * // "dcmTrackingInfo": {}, + * // "demandGenCarouselAd": {}, + * // "demandGenImageAd": {}, + * // "demandGenProductAd": {}, + * // "demandGenVideoAd": {}, + * // "displayName": "my_displayName", + * // "displayVideoSourceAd": {}, + * // "entityStatus": "my_entityStatus", + * // "inStreamAd": {}, + * // "mastheadAd": {}, + * // "name": "my_name", + * // "nonSkippableAd": {}, + * // "videoDiscoverAd": {}, + * // "videoPerformanceAd": {} + * // } + * }, * }); * console.log(res.data); * @@ -8212,6 +8421,11 @@ export namespace displayvideo_v3 { * // "advertiserId": "my_advertiserId", * // "audioAd": {}, * // "bumperAd": {}, + * // "dcmTrackingInfo": {}, + * // "demandGenCarouselAd": {}, + * // "demandGenImageAd": {}, + * // "demandGenProductAd": {}, + * // "demandGenVideoAd": {}, * // "displayName": "my_displayName", * // "displayVideoSourceAd": {}, * // "entityStatus": "my_entityStatus", @@ -8236,32 +8450,32 @@ export namespace displayvideo_v3 { * @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$Advertisers$Adgroupads$Get, + create( + params: Params$Resource$Advertisers$Adgroupads$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Advertisers$Adgroupads$Get, + create( + params?: Params$Resource$Advertisers$Adgroupads$Create, options?: MethodOptions ): Promise>; - get( - params: Params$Resource$Advertisers$Adgroupads$Get, + create( + params: Params$Resource$Advertisers$Adgroupads$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Adgroupads$Get, + create( + params: Params$Resource$Advertisers$Adgroupads$Create, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Adgroupads$Get, + create( + params: Params$Resource$Advertisers$Adgroupads$Create, callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Advertisers$Adgroupads$Get + | Params$Resource$Advertisers$Adgroupads$Create | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -8277,12 +8491,12 @@ export namespace displayvideo_v3 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Adgroupads$Get; + {}) as Params$Resource$Advertisers$Adgroupads$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Adgroupads$Get; + params = {} as Params$Resource$Advertisers$Adgroupads$Create; options = {}; } @@ -8296,17 +8510,16 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/advertisers/{+advertiserId}/adGroupAds/{+adGroupAdId}' + rootUrl + '/v3/advertisers/{+advertiserId}/adGroupAds' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'adGroupAdId'], - pathParams: ['adGroupAdId', 'advertiserId'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { @@ -8320,7 +8533,7 @@ export namespace displayvideo_v3 { } /** - * Lists ad group ads. + * Deletes an ad group ad. This method is only supported for Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -8349,25 +8562,16 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.adGroupAds.list({ - * // Required. The ID of the advertiser the ads belong to. + * const res = await displayvideo.advertisers.adGroupAds.delete({ + * // Required. The ID of the ad to delete. Only Demand Gen ads are supported. + * adGroupAdId: '[^/]+', + * // Required. The ID of the advertiser the ad belongs to. * advertiserId: '[^/]+', - * // Optional. Allows filtering by ad group ad fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `adGroupId` * `displayName` * `entityStatus` * `adGroupAdId` Examples: * All ad group ads under an ad group: `adGroupId="1234"` * All ad group ads under an ad group with an entityStatus of `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED`: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupId="12345"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - * orderBy: 'placeholder-value', - * // Optional. Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAds` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response - * // { - * // "adGroupAds": [], - * // "nextPageToken": "my_nextPageToken" - * // } + * // {} * } * * main().catch(e => { @@ -8382,55 +8586,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Adgroupads$List, + delete( + params: Params$Resource$Advertisers$Adgroupads$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Adgroupads$List, + delete( + params?: Params$Resource$Advertisers$Adgroupads$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Advertisers$Adgroupads$List, + ): Promise>; + delete( + params: Params$Resource$Advertisers$Adgroupads$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Adgroupads$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Adgroupads$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Adgroupads$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Adgroupads$Delete, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Advertisers$Adgroupads$List - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroupads$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Adgroupads$List; + {}) as Params$Resource$Advertisers$Adgroupads$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Adgroupads$List; + params = {} as Params$Resource$Advertisers$Adgroupads$Delete; options = {}; } @@ -8444,74 +8646,31 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/adGroupAds' + rootUrl + + '/v3/advertisers/{+advertiserId}/adGroupAds/{+adGroupAdId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'adGroupAdId'], + pathParams: ['adGroupAdId', 'advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Advertisers$Adgroupads$Get extends StandardParameters { - /** - * Required. The ID of the ad to fetch. - */ - adGroupAdId?: string; - /** - * Required. The ID of the advertiser this ad group ad belongs to. - */ - advertiserId?: string; - } - export interface Params$Resource$Advertisers$Adgroupads$List extends StandardParameters { - /** - * Required. The ID of the advertiser the ads belong to. - */ - advertiserId?: string; - /** - * Optional. Allows filtering by ad group ad fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `adGroupId` * `displayName` * `entityStatus` * `adGroupAdId` Examples: * All ad group ads under an ad group: `adGroupId="1234"` * All ad group ads under an ad group with an entityStatus of `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED`: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupId="12345"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - */ - orderBy?: string; - /** - * Optional. Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAds` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - } - - export class Resource$Advertisers$Adgroups { - context: APIRequestContext; - targetingTypes: Resource$Advertisers$Adgroups$Targetingtypes; - constructor(context: APIRequestContext) { - this.context = context; - this.targetingTypes = new Resource$Advertisers$Adgroups$Targetingtypes( - this.context - ); - } /** - * Lists assigned targeting options for multiple ad groups across targeting types. Inherited assigned targeting options are not included. + * Gets an ad group ad. * @example * ```js * // Before running the sample: @@ -8540,29 +8699,37 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.adGroups.bulkListAdGroupAssignedTargetingOptions( - * { - * // Required. The IDs of the ad groups to list assigned targeting options for. - * adGroupIds: 'placeholder-value', - * // Required. The ID of the advertiser the line items belongs to. - * advertiserId: '[^/]+', - * // Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_YOUTUBE_VIDEO` or `TARGETING_TYPE_YOUTUBE_CHANNEL`: `targetingType="TARGETING_TYPE_YOUTUBE_VIDEO" OR targetingType="TARGETING_TYPE_YOUTUBE_CHANNEL"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Optional. Field by which to sort the list. Acceptable values are: * `adGroupId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `targetingType desc`. - * orderBy: 'placeholder-value', - * // Optional. Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // Optional. A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * }, - * ); + * const res = await displayvideo.advertisers.adGroupAds.get({ + * // Required. The ID of the ad to fetch. + * adGroupAdId: '[^/]+', + * // Required. The ID of the advertiser this ad group ad belongs to. + * advertiserId: '[^/]+', + * }); * console.log(res.data); * * // Example response * // { - * // "adGroupAssignedTargetingOptions": [], - * // "nextPageToken": "my_nextPageToken" + * // "adGroupAdId": "my_adGroupAdId", + * // "adGroupId": "my_adGroupId", + * // "adPolicy": {}, + * // "adUrls": [], + * // "advertiserId": "my_advertiserId", + * // "audioAd": {}, + * // "bumperAd": {}, + * // "dcmTrackingInfo": {}, + * // "demandGenCarouselAd": {}, + * // "demandGenImageAd": {}, + * // "demandGenProductAd": {}, + * // "demandGenVideoAd": {}, + * // "displayName": "my_displayName", + * // "displayVideoSourceAd": {}, + * // "entityStatus": "my_entityStatus", + * // "inStreamAd": {}, + * // "mastheadAd": {}, + * // "name": "my_name", + * // "nonSkippableAd": {}, + * // "videoDiscoverAd": {}, + * // "videoPerformanceAd": {} * // } * } * @@ -8578,62 +8745,53 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkListAdGroupAssignedTargetingOptions( - params: Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions, + get( + params: Params$Resource$Advertisers$Adgroupads$Get, options: StreamMethodOptions ): Promise>; - bulkListAdGroupAssignedTargetingOptions( - params?: Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions, + get( + params?: Params$Resource$Advertisers$Adgroupads$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - bulkListAdGroupAssignedTargetingOptions( - params: Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions, + ): Promise>; + get( + params: Params$Resource$Advertisers$Adgroupads$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkListAdGroupAssignedTargetingOptions( - params: Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - bulkListAdGroupAssignedTargetingOptions( - params: Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions, - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Adgroupads$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - bulkListAdGroupAssignedTargetingOptions( - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Adgroupads$Get, + callback: BodyResponseCallback ): void; - bulkListAdGroupAssignedTargetingOptions( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroupads$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions; + {}) as Params$Resource$Advertisers$Adgroupads$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions; + params = {} as Params$Resource$Advertisers$Adgroupads$Get; options = {}; } @@ -8648,7 +8806,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/adGroups:bulkListAdGroupAssignedTargetingOptions' + '/v3/advertisers/{+advertiserId}/adGroupAds/{+adGroupAdId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -8656,24 +8814,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'adGroupAdId'], + pathParams: ['adGroupAdId', 'advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Gets an ad group. + * Lists ad group ads. * @example * ```js * // Before running the sample: @@ -8702,26 +8858,24 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.adGroups.get({ - * // Required. The ID of the ad group to fetch. - * adGroupId: '[^/]+', - * // Required. The ID of the advertiser this ad group belongs to. + * const res = await displayvideo.advertisers.adGroupAds.list({ + * // Required. The ID of the advertiser the ads belong to. * advertiserId: '[^/]+', + * // Optional. Allows filtering by ad group ad fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `adGroupId` * `displayName` * `entityStatus` * `adGroupAdId` Examples: * All ad group ads under an ad group: `adGroupId="1234"` * All ad group ads under an ad group with an entityStatus of `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED`: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupId="12345"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAds` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "adGroupFormat": "my_adGroupFormat", - * // "adGroupId": "my_adGroupId", - * // "advertiserId": "my_advertiserId", - * // "bidStrategy": {}, - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "lineItemId": "my_lineItemId", - * // "name": "my_name", - * // "productFeedData": {}, - * // "targetingExpansion": {} + * // "adGroupAds": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -8737,53 +8891,55 @@ export namespace displayvideo_v3 { * @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$Advertisers$Adgroups$Get, + list( + params: Params$Resource$Advertisers$Adgroupads$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Advertisers$Adgroups$Get, + list( + params?: Params$Resource$Advertisers$Adgroupads$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Advertisers$Adgroups$Get, + ): Promise>; + list( + params: Params$Resource$Advertisers$Adgroupads$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Adgroups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Adgroupads$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Adgroups$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Adgroupads$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Advertisers$Adgroups$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroupads$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Adgroups$Get; + {}) as Params$Resource$Advertisers$Adgroupads$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Adgroups$Get; + params = {} as Params$Resource$Advertisers$Adgroupads$List; options = {}; } @@ -8797,7 +8953,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}' + rootUrl + '/v3/advertisers/{+advertiserId}/adGroupAds' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -8805,22 +8961,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'adGroupId'], - pathParams: ['adGroupId', 'advertiserId'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists ad groups. + * Updates an ad group ad. This method is only supported for Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -8849,24 +9005,67 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.adGroups.list({ - * // Required. The ID of the advertiser the ad groups belongs to. + * const res = await displayvideo.advertisers.adGroupAds.patch({ + * // Output only. The unique ID of the ad. Assigned by the system. + * adGroupAdId: '[^/]+', + * // Output only. The unique ID of the advertiser the ad belongs to. * advertiserId: '[^/]+', - * // Optional. Allows filtering by custom ad group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported properties: * `adGroupId` * `displayName` * `entityStatus` * `lineItemId` * `adGroupFormat` Examples: * All ad groups under an line item: `lineItemId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` `AD_GROUP_FORMAT_IN_STREAM` ad groups under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupFormat="AD_GROUP_FORMAT_IN_STREAM"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - * orderBy: 'placeholder-value', - * // Optional. Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroups` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', + * // Required. The mask to control which fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adGroupAdId": "my_adGroupAdId", + * // "adGroupId": "my_adGroupId", + * // "adPolicy": {}, + * // "adUrls": [], + * // "advertiserId": "my_advertiserId", + * // "audioAd": {}, + * // "bumperAd": {}, + * // "dcmTrackingInfo": {}, + * // "demandGenCarouselAd": {}, + * // "demandGenImageAd": {}, + * // "demandGenProductAd": {}, + * // "demandGenVideoAd": {}, + * // "displayName": "my_displayName", + * // "displayVideoSourceAd": {}, + * // "entityStatus": "my_entityStatus", + * // "inStreamAd": {}, + * // "mastheadAd": {}, + * // "name": "my_name", + * // "nonSkippableAd": {}, + * // "videoDiscoverAd": {}, + * // "videoPerformanceAd": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "adGroups": [], - * // "nextPageToken": "my_nextPageToken" + * // "adGroupAdId": "my_adGroupAdId", + * // "adGroupId": "my_adGroupId", + * // "adPolicy": {}, + * // "adUrls": [], + * // "advertiserId": "my_advertiserId", + * // "audioAd": {}, + * // "bumperAd": {}, + * // "dcmTrackingInfo": {}, + * // "demandGenCarouselAd": {}, + * // "demandGenImageAd": {}, + * // "demandGenProductAd": {}, + * // "demandGenVideoAd": {}, + * // "displayName": "my_displayName", + * // "displayVideoSourceAd": {}, + * // "entityStatus": "my_entityStatus", + * // "inStreamAd": {}, + * // "mastheadAd": {}, + * // "name": "my_name", + * // "nonSkippableAd": {}, + * // "videoDiscoverAd": {}, + * // "videoPerformanceAd": {} * // } * } * @@ -8882,55 +9081,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Adgroups$List, + patch( + params: Params$Resource$Advertisers$Adgroupads$Patch, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Adgroups$List, + patch( + params?: Params$Resource$Advertisers$Adgroupads$Patch, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Advertisers$Adgroups$List, + ): Promise>; + patch( + params: Params$Resource$Advertisers$Adgroupads$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Adgroups$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Advertisers$Adgroupads$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Adgroups$List, - callback: BodyResponseCallback + patch( + params: Params$Resource$Advertisers$Adgroupads$Patch, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Advertisers$Adgroups$List - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroupads$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Adgroups$List; + {}) as Params$Resource$Advertisers$Adgroupads$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Adgroups$List; + params = {} as Params$Resource$Advertisers$Adgroupads$Patch; options = {}; } @@ -8943,74 +9140,69 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/advertisers/{+advertiserId}/adGroups').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: ( + rootUrl + + '/v3/advertisers/{+advertiserId}/adGroupAds/{+adGroupAdId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'adGroupAdId'], + pathParams: ['adGroupAdId', 'advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions extends StandardParameters { - /** - * Required. The IDs of the ad groups to list assigned targeting options for. - */ - adGroupIds?: string[]; + export interface Params$Resource$Advertisers$Adgroupads$Create extends StandardParameters { /** - * Required. The ID of the advertiser the line items belongs to. + * Output only. The unique ID of the advertiser the ad belongs to. */ advertiserId?: string; + /** - * Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_YOUTUBE_VIDEO` or `TARGETING_TYPE_YOUTUBE_CHANNEL`: `targetingType="TARGETING_TYPE_YOUTUBE_VIDEO" OR targetingType="TARGETING_TYPE_YOUTUBE_CHANNEL"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Optional. Field by which to sort the list. Acceptable values are: * `adGroupId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `targetingType desc`. + * Request body metadata */ - orderBy?: string; + requestBody?: Schema$AdGroupAd; + } + export interface Params$Resource$Advertisers$Adgroupads$Delete extends StandardParameters { /** - * Optional. Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * Required. The ID of the ad to delete. Only Demand Gen ads are supported. */ - pageSize?: number; + adGroupAdId?: string; /** - * Optional. A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. + * Required. The ID of the advertiser the ad belongs to. */ - pageToken?: string; + advertiserId?: string; } - export interface Params$Resource$Advertisers$Adgroups$Get extends StandardParameters { + export interface Params$Resource$Advertisers$Adgroupads$Get extends StandardParameters { /** - * Required. The ID of the ad group to fetch. + * Required. The ID of the ad to fetch. */ - adGroupId?: string; + adGroupAdId?: string; /** - * Required. The ID of the advertiser this ad group belongs to. + * Required. The ID of the advertiser this ad group ad belongs to. */ advertiserId?: string; } - export interface Params$Resource$Advertisers$Adgroups$List extends StandardParameters { + export interface Params$Resource$Advertisers$Adgroupads$List extends StandardParameters { /** - * Required. The ID of the advertiser the ad groups belongs to. + * Required. The ID of the advertiser the ads belong to. */ advertiserId?: string; /** - * Optional. Allows filtering by custom ad group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported properties: * `adGroupId` * `displayName` * `entityStatus` * `lineItemId` * `adGroupFormat` Examples: * All ad groups under an line item: `lineItemId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` `AD_GROUP_FORMAT_IN_STREAM` ad groups under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupFormat="AD_GROUP_FORMAT_IN_STREAM"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * Optional. Allows filtering by ad group ad fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `adGroupId` * `displayName` * `entityStatus` * `adGroupAdId` Examples: * All ad group ads under an ad group: `adGroupId="1234"` * All ad group ads under an ad group with an entityStatus of `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED`: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupId="12345"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ filter?: string; /** @@ -9018,35 +9210,46 @@ export namespace displayvideo_v3 { */ orderBy?: string; /** - * Optional. Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * Optional. Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. */ pageSize?: number; /** - * Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroups` method. If not specified, the first page of results will be returned. + * Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAds` method. If not specified, the first page of results will be returned. */ pageToken?: string; } + export interface Params$Resource$Advertisers$Adgroupads$Patch extends StandardParameters { + /** + * Output only. The unique ID of the ad. Assigned by the system. + */ + adGroupAdId?: string; + /** + * Output only. The unique ID of the advertiser the ad belongs to. + */ + advertiserId?: string; + /** + * Required. The mask to control which fields to update. + */ + updateMask?: string; - export class Resource$Advertisers$Adgroups$Targetingtypes { - context: APIRequestContext; - assignedTargetingOptions: Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions; - constructor(context: APIRequestContext) { - this.context = context; - this.assignedTargetingOptions = - new Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions( - this.context - ); - } + /** + * Request body metadata + */ + requestBody?: Schema$AdGroupAd; } - export class Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions { + export class Resource$Advertisers$Adgroups { context: APIRequestContext; + targetingTypes: Resource$Advertisers$Adgroups$Targetingtypes; constructor(context: APIRequestContext) { this.context = context; + this.targetingTypes = new Resource$Advertisers$Adgroups$Targetingtypes( + this.context + ); } /** - * Gets a single targeting option assigned to an ad group. Inherited assigned targeting options are not included. + * Bulk edits targeting options for multiple ad groups. The same set of delete and create requests will be applied to all specified ad groups. Specifically, the operation will delete the assigned targeting options provided in BulkEditAdGroupAssignedTargetingOptionsRequest.delete_requests from each ad group, and then create the assigned targeting options provided in BulkEditAdGroupAssignedTargetingOptionsRequest.create_requests. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -9076,76 +9279,27 @@ export namespace displayvideo_v3 { * * // Do the magic * const res = - * await displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.get( - * { - * // Required. The ID of the ad group the assigned targeting option belongs to. - * adGroupId: '[^/]+', - * // Required. The ID of the advertiser the ad group belongs to. - * advertiserId: '[^/]+', - * // Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested. - * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` - * targetingType: '[^/]+', + * await displayvideo.advertisers.adGroups.bulkEditAssignedTargetingOptions({ + * // Required. The ID of the advertiser the ad groups belong to. + * advertiserId: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adGroupIds": [], + * // "createRequests": [], + * // "deleteRequests": [] + * // } * }, - * ); + * }); * console.log(res.data); * * // Example response * // { - * // "ageRangeDetails": {}, - * // "appCategoryDetails": {}, - * // "appDetails": {}, - * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", - * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", - * // "audienceGroupDetails": {}, - * // "audioContentTypeDetails": {}, - * // "authorizedSellerStatusDetails": {}, - * // "browserDetails": {}, - * // "businessChainDetails": {}, - * // "carrierAndIspDetails": {}, - * // "categoryDetails": {}, - * // "channelDetails": {}, - * // "contentDurationDetails": {}, - * // "contentGenreDetails": {}, - * // "contentInstreamPositionDetails": {}, - * // "contentOutstreamPositionDetails": {}, - * // "contentStreamTypeDetails": {}, - * // "contentThemeExclusionDetails": {}, - * // "dayAndTimeDetails": {}, - * // "deviceMakeModelDetails": {}, - * // "deviceTypeDetails": {}, - * // "digitalContentLabelExclusionDetails": {}, - * // "environmentDetails": {}, - * // "exchangeDetails": {}, - * // "genderDetails": {}, - * // "geoRegionDetails": {}, - * // "householdIncomeDetails": {}, - * // "inheritance": "my_inheritance", - * // "inventorySourceDetails": {}, - * // "inventorySourceGroupDetails": {}, - * // "keywordDetails": {}, - * // "languageDetails": {}, - * // "name": "my_name", - * // "nativeContentPositionDetails": {}, - * // "negativeKeywordListDetails": {}, - * // "omidDetails": {}, - * // "onScreenPositionDetails": {}, - * // "operatingSystemDetails": {}, - * // "parentalStatusDetails": {}, - * // "poiDetails": {}, - * // "proximityLocationListDetails": {}, - * // "regionalLocationListDetails": {}, - * // "sensitiveCategoryExclusionDetails": {}, - * // "sessionPositionDetails": {}, - * // "subExchangeDetails": {}, - * // "targetingType": "my_targetingType", - * // "thirdPartyVerifierDetails": {}, - * // "urlDetails": {}, - * // "userRewardedContentDetails": {}, - * // "videoPlayerSizeDetails": {}, - * // "viewabilityDetails": {}, - * // "youtubeChannelDetails": {}, - * // "youtubeVideoDetails": {} + * // "errors": [], + * // "failedAdGroupIds": [], + * // "updatedAdGroupIds": [] * // } * } * @@ -9161,56 +9315,62 @@ export namespace displayvideo_v3 { * @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$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get, + bulkEditAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get, + bulkEditAssignedTargetingOptions( + params?: Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + bulkEditAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get, + bulkEditAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get, - callback: BodyResponseCallback + bulkEditAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + bulkEditAssignedTargetingOptions( + callback: BodyResponseCallback + ): void; + bulkEditAssignedTargetingOptions( paramsOrCallback?: - | Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get; + {}) as Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get; + {} as Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions; options = {}; } @@ -9225,40 +9385,32 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}' + '/v3/advertisers/{+advertiserId}/adGroups:bulkEditAssignedTargetingOptions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: [ - 'advertiserId', - 'adGroupId', - 'targetingType', - 'assignedTargetingOptionId', - ], - pathParams: [ - 'adGroupId', - 'advertiserId', - 'assignedTargetingOptionId', - 'targetingType', - ], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Lists the targeting options assigned to an ad group. Inherited assigned targeting options are not included. + * Lists assigned targeting options for multiple ad groups across targeting types. Inherited assigned targeting options are not included. * @example * ```js * // Before running the sample: @@ -9288,29 +9440,27 @@ export namespace displayvideo_v3 { * * // Do the magic * const res = - * await displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.list( + * await displayvideo.advertisers.adGroups.bulkListAdGroupAssignedTargetingOptions( * { - * // Required. The ID of the ad group to list assigned targeting options for. - * adGroupId: '[^/]+', - * // Required. The ID of the advertiser the ad group belongs to. + * // Required. The IDs of the ad groups to list assigned targeting options for. + * adGroupIds: 'placeholder-value', + * // Required. The ID of the advertiser the line items belongs to. * advertiserId: '[^/]+', - * // Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` Examples: * `AssignedTargetingOption` resources with ID 1 or 2: `assignedTargetingOptionId="1" OR assignedTargetingOptionId="2"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * // Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_YOUTUBE_VIDEO` or `TARGETING_TYPE_YOUTUBE_CHANNEL`: `targetingType="TARGETING_TYPE_YOUTUBE_VIDEO" OR targetingType="TARGETING_TYPE_YOUTUBE_CHANNEL"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. * filter: 'placeholder-value', - * // Optional. Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `assignedTargetingOptionId desc`. + * // Optional. Field by which to sort the list. Acceptable values are: * `adGroupId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `targetingType desc`. * orderBy: 'placeholder-value', - * // Optional. Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * // Optional. Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. + * // Optional. A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` - * targetingType: '[^/]+', * }, * ); * console.log(res.data); * * // Example response * // { - * // "assignedTargetingOptions": [], + * // "adGroupAssignedTargetingOptions": [], * // "nextPageToken": "my_nextPageToken" * // } * } @@ -9327,62 +9477,62 @@ export namespace displayvideo_v3 { * @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$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List, + bulkListAdGroupAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List, + bulkListAdGroupAssignedTargetingOptions( + params?: Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - list( - params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List, + bulkListAdGroupAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List, + bulkListAdGroupAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List, - callback: BodyResponseCallback + bulkListAdGroupAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + bulkListAdGroupAssignedTargetingOptions( + callback: BodyResponseCallback ): void; - list( + bulkListAdGroupAssignedTargetingOptions( paramsOrCallback?: - | Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List; + {}) as Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List; + {} as Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions; options = {}; } @@ -9397,7 +9547,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions' + '/v3/advertisers/{+advertiserId}/adGroups:bulkListAdGroupAssignedTargetingOptions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -9405,80 +9555,24 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'adGroupId', 'targetingType'], - pathParams: ['adGroupId', 'advertiserId', 'targetingType'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } - } - - export interface Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get extends StandardParameters { - /** - * Required. The ID of the ad group the assigned targeting option belongs to. - */ - adGroupId?: string; - /** - * Required. The ID of the advertiser the ad group belongs to. - */ - advertiserId?: string; - /** - * Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested. - */ - assignedTargetingOptionId?: string; - /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` - */ - targetingType?: string; - } - export interface Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List extends StandardParameters { - /** - * Required. The ID of the ad group to list assigned targeting options for. - */ - adGroupId?: string; - /** - * Required. The ID of the advertiser the ad group belongs to. - */ - advertiserId?: string; - /** - * Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` Examples: * `AssignedTargetingOption` resources with ID 1 or 2: `assignedTargetingOptionId="1" OR assignedTargetingOptionId="2"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Optional. Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `assignedTargetingOptionId desc`. - */ - orderBy?: string; - /** - * Optional. Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - /** - * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` - */ - targetingType?: string; - } - - export class Resource$Advertisers$Assets { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Uploads an asset. Returns the ID of the newly uploaded asset if successful. The asset file size should be no more than 10 MB for images, 200 MB for ZIP files, and 1 GB for videos. Must be used within the [multipart media upload process](/display-video/api/guides/how-tos/upload#multipart). Examples using provided client libraries can be found in our [Creating Creatives guide](/display-video/api/guides/creating-creatives/overview#upload_an_asset). + * Creates a new ad group. Returns the newly created ad group if successful. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -9507,27 +9601,43 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.assets.upload({ - * // Required. The ID of the advertiser this asset belongs to. + * const res = await displayvideo.advertisers.adGroups.create({ + * // Output only. The unique ID of the advertiser the ad group belongs to. * advertiserId: '[^/]+', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "filename": "my_filename" + * // "adGroupFormat": "my_adGroupFormat", + * // "adGroupId": "my_adGroupId", + * // "adGroupInventoryControl": {}, + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "lineItemId": "my_lineItemId", + * // "name": "my_name", + * // "productFeedData": {}, + * // "targetingExpansion": {} * // } * }, - * media: { - * mimeType: 'placeholder-value', - * body: 'placeholder-value', - * }, * }); * console.log(res.data); * * // Example response * // { - * // "asset": {} + * // "adGroupFormat": "my_adGroupFormat", + * // "adGroupId": "my_adGroupId", + * // "adGroupInventoryControl": {}, + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "lineItemId": "my_lineItemId", + * // "name": "my_name", + * // "productFeedData": {}, + * // "targetingExpansion": {} * // } * } * @@ -9543,53 +9653,53 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - upload( - params: Params$Resource$Advertisers$Assets$Upload, + create( + params: Params$Resource$Advertisers$Adgroups$Create, options: StreamMethodOptions ): Promise>; - upload( - params?: Params$Resource$Advertisers$Assets$Upload, + create( + params?: Params$Resource$Advertisers$Adgroups$Create, options?: MethodOptions - ): Promise>; - upload( - params: Params$Resource$Advertisers$Assets$Upload, + ): Promise>; + create( + params: Params$Resource$Advertisers$Adgroups$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - upload( - params: Params$Resource$Advertisers$Assets$Upload, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Adgroups$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - upload( - params: Params$Resource$Advertisers$Assets$Upload, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Adgroups$Create, + callback: BodyResponseCallback ): void; - upload(callback: BodyResponseCallback): void; - upload( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Advertisers$Assets$Upload - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Assets$Upload; + {}) as Params$Resource$Advertisers$Adgroups$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Assets$Upload; + params = {} as Params$Resource$Advertisers$Adgroups$Create; options = {}; } @@ -9602,7 +9712,7 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/advertisers/{+advertiserId}/assets').replace( + url: (rootUrl + '/v3/advertisers/{+advertiserId}/adGroups').replace( /([^:]\/)\/+/g, '$1' ), @@ -9612,59 +9722,22 @@ export namespace displayvideo_v3 { options ), params, - mediaUrl: ( - rootUrl + '/upload/v3/advertisers/{+advertiserId}/assets' - ).replace(/([^:]\/)\/+/g, '$1'), requiredParams: ['advertiserId'], pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Advertisers$Assets$Upload extends StandardParameters { - /** - * Required. The ID of the advertiser this asset belongs to. - */ - advertiserId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CreateAssetRequest; - - /** - * Media metadata - */ - media?: { - /** - * Media mime-type - */ - mimeType?: string; - - /** - * Media body contents - */ - body?: any; - }; - } - - export class Resource$Advertisers$Campaigns { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new campaign. Returns the newly created campaign if successful. + * Deletes a AdGroup. Returns error code `NOT_FOUND` if the ad group does not exist. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -9685,10 +9758,7 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/display-video', - * 'https://www.googleapis.com/auth/display-video-mediaplanning', - * ], + * scopes: ['https://www.googleapis.com/auth/display-video'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9696,42 +9766,16 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.campaigns.create({ - * // Output only. The unique ID of the advertiser the campaign belongs to. + * const res = await displayvideo.advertisers.adGroups.delete({ + * // Required. The ID of the ad group to delete. + * adGroupId: '[^/]+', + * // Required. The ID of the advertiser this ad group belongs to. * advertiserId: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advertiserId": "my_advertiserId", - * // "campaignBudgets": [], - * // "campaignFlight": {}, - * // "campaignGoal": {}, - * // "campaignId": "my_campaignId", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "frequencyCap": {}, - * // "name": "my_name", - * // "updateTime": "my_updateTime" - * // } - * }, * }); * console.log(res.data); * * // Example response - * // { - * // "advertiserId": "my_advertiserId", - * // "campaignBudgets": [], - * // "campaignFlight": {}, - * // "campaignGoal": {}, - * // "campaignId": "my_campaignId", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "frequencyCap": {}, - * // "name": "my_name", - * // "updateTime": "my_updateTime" - * // } + * // {} * } * * main().catch(e => { @@ -9746,53 +9790,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Campaigns$Create, + delete( + params: Params$Resource$Advertisers$Adgroups$Delete, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Advertisers$Campaigns$Create, + delete( + params?: Params$Resource$Advertisers$Adgroups$Delete, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Advertisers$Campaigns$Create, + ): Promise>; + delete( + params: Params$Resource$Advertisers$Adgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Campaigns$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Adgroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Campaigns$Create, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Adgroups$Delete, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Advertisers$Campaigns$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Campaigns$Create; + {}) as Params$Resource$Advertisers$Adgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Campaigns$Create; + params = {} as Params$Resource$Advertisers$Adgroups$Delete; options = {}; } @@ -9806,30 +9850,30 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/campaigns' + rootUrl + '/v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'adGroupId'], + pathParams: ['adGroupId', 'advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Permanently deletes a campaign. A deleted campaign cannot be recovered. The campaign should be archived first, i.e. set entity_status to `ENTITY_STATUS_ARCHIVED`, to be able to delete it. **This method regularly experiences high latency.** We recommend [increasing your default timeout](/display-video/api/guides/best-practices/timeouts#client_library_timeout) to avoid errors. + * Gets an ad group. * @example * ```js * // Before running the sample: @@ -9850,10 +9894,7 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/display-video', - * 'https://www.googleapis.com/auth/display-video-mediaplanning', - * ], + * scopes: ['https://www.googleapis.com/auth/display-video'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9861,16 +9902,28 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.campaigns.delete({ - * // The ID of the advertiser this campaign belongs to. + * const res = await displayvideo.advertisers.adGroups.get({ + * // Required. The ID of the ad group to fetch. + * adGroupId: '[^/]+', + * // Required. The ID of the advertiser this ad group belongs to. * advertiserId: '[^/]+', - * // The ID of the campaign we need to delete. - * campaignId: '[^/]+', * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "adGroupFormat": "my_adGroupFormat", + * // "adGroupId": "my_adGroupId", + * // "adGroupInventoryControl": {}, + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "lineItemId": "my_lineItemId", + * // "name": "my_name", + * // "productFeedData": {}, + * // "targetingExpansion": {} + * // } * } * * main().catch(e => { @@ -9885,53 +9938,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Campaigns$Delete, + get( + params: Params$Resource$Advertisers$Adgroups$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Advertisers$Campaigns$Delete, + get( + params?: Params$Resource$Advertisers$Adgroups$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Advertisers$Campaigns$Delete, + ): Promise>; + get( + params: Params$Resource$Advertisers$Adgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Campaigns$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Adgroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Campaigns$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Adgroups$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Advertisers$Campaigns$Delete - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Campaigns$Delete; + {}) as Params$Resource$Advertisers$Adgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Campaigns$Delete; + params = {} as Params$Resource$Advertisers$Adgroups$Get; options = {}; } @@ -9945,31 +9998,30 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/advertisers/{+advertiserId}/campaigns/{+campaignId}' + rootUrl + '/v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'campaignId'], - pathParams: ['advertiserId', 'campaignId'], + requiredParams: ['advertiserId', 'adGroupId'], + pathParams: ['adGroupId', 'advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a campaign. + * Lists ad groups. * @example * ```js * // Before running the sample: @@ -9990,10 +10042,7 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/display-video', - * 'https://www.googleapis.com/auth/display-video-mediaplanning', - * ], + * scopes: ['https://www.googleapis.com/auth/display-video'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10001,175 +10050,24 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.campaigns.get({ - * // Required. The ID of the advertiser this campaign belongs to. + * const res = await displayvideo.advertisers.adGroups.list({ + * // Required. The ID of the advertiser the ad groups belongs to. * advertiserId: '[^/]+', - * // Required. The ID of the campaign to fetch. - * campaignId: '[^/]+', + * // Optional. Allows filtering by custom ad group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported properties: * `adGroupId` * `displayName` * `entityStatus` * `lineItemId` * `adGroupFormat` Examples: * All ad groups under an line item: `lineItemId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` `AD_GROUP_FORMAT_IN_STREAM` ad groups under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupFormat="AD_GROUP_FORMAT_IN_STREAM"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroups` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "advertiserId": "my_advertiserId", - * // "campaignBudgets": [], - * // "campaignFlight": {}, - * // "campaignGoal": {}, - * // "campaignId": "my_campaignId", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "frequencyCap": {}, - * // "name": "my_name", - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Advertisers$Campaigns$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Advertisers$Campaigns$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Advertisers$Campaigns$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Advertisers$Campaigns$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Advertisers$Campaigns$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Advertisers$Campaigns$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Campaigns$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Campaigns$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/v3/advertisers/{+advertiserId}/campaigns/{+campaignId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['advertiserId', 'campaignId'], - pathParams: ['advertiserId', 'campaignId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists campaigns in an advertiser. The order is defined by the order_by parameter. If a filter by entity_status is not specified, campaigns with `ENTITY_STATUS_ARCHIVED` will not be included in the results. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const displayvideo = google.displayvideo('v3'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/display-video', - * 'https://www.googleapis.com/auth/display-video-mediaplanning', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await displayvideo.advertisers.campaigns.list({ - * // The ID of the advertiser to list campaigns for. - * advertiserId: '[^/]+', - * // Allows filtering by campaign fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` campaigns under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED")` * All campaigns with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime<="2020-11-04T18:54:47Z"` * All campaigns with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCampaigns` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "campaigns": [], - * // "nextPageToken": "my_nextPageToken" + * // "adGroups": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -10186,54 +10084,54 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Advertisers$Campaigns$List, + params: Params$Resource$Advertisers$Adgroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Advertisers$Campaigns$List, + params?: Params$Resource$Advertisers$Adgroups$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Advertisers$Campaigns$List, + params: Params$Resource$Advertisers$Adgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Advertisers$Campaigns$List, + params: Params$Resource$Advertisers$Adgroups$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Advertisers$Campaigns$List, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Adgroups$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Advertisers$Campaigns$List - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Campaigns$List; + {}) as Params$Resource$Advertisers$Adgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Campaigns$List; + params = {} as Params$Resource$Advertisers$Adgroups$List; options = {}; } @@ -10246,9 +10144,10 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/campaigns' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v3/advertisers/{+advertiserId}/adGroups').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, @@ -10260,17 +10159,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates an existing campaign. Returns the updated campaign if successful. + * Updates an existing ad group. Returns the updated ad group if successful. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -10291,10 +10190,7 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/display-video', - * 'https://www.googleapis.com/auth/display-video-mediaplanning', - * ], + * scopes: ['https://www.googleapis.com/auth/display-video'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10302,11 +10198,11 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.campaigns.patch({ - * // Output only. The unique ID of the advertiser the campaign belongs to. + * const res = await displayvideo.advertisers.adGroups.patch({ + * // Output only. The unique ID of the ad group. Assigned by the system. + * adGroupId: '[^/]+', + * // Output only. The unique ID of the advertiser the ad group belongs to. * advertiserId: '[^/]+', - * // Output only. The unique ID of the campaign. Assigned by the system. - * campaignId: '[^/]+', * // Required. The mask to control which fields to update. * updateMask: 'placeholder-value', * @@ -10314,16 +10210,17 @@ export namespace displayvideo_v3 { * requestBody: { * // request body parameters * // { + * // "adGroupFormat": "my_adGroupFormat", + * // "adGroupId": "my_adGroupId", + * // "adGroupInventoryControl": {}, * // "advertiserId": "my_advertiserId", - * // "campaignBudgets": [], - * // "campaignFlight": {}, - * // "campaignGoal": {}, - * // "campaignId": "my_campaignId", + * // "bidStrategy": {}, * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", - * // "frequencyCap": {}, + * // "lineItemId": "my_lineItemId", * // "name": "my_name", - * // "updateTime": "my_updateTime" + * // "productFeedData": {}, + * // "targetingExpansion": {} * // } * }, * }); @@ -10331,16 +10228,17 @@ export namespace displayvideo_v3 { * * // Example response * // { + * // "adGroupFormat": "my_adGroupFormat", + * // "adGroupId": "my_adGroupId", + * // "adGroupInventoryControl": {}, * // "advertiserId": "my_advertiserId", - * // "campaignBudgets": [], - * // "campaignFlight": {}, - * // "campaignGoal": {}, - * // "campaignId": "my_campaignId", + * // "bidStrategy": {}, * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", - * // "frequencyCap": {}, + * // "lineItemId": "my_lineItemId", * // "name": "my_name", - * // "updateTime": "my_updateTime" + * // "productFeedData": {}, + * // "targetingExpansion": {} * // } * } * @@ -10357,52 +10255,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Advertisers$Campaigns$Patch, + params: Params$Resource$Advertisers$Adgroups$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Advertisers$Campaigns$Patch, + params?: Params$Resource$Advertisers$Adgroups$Patch, options?: MethodOptions - ): Promise>; + ): Promise>; patch( - params: Params$Resource$Advertisers$Campaigns$Patch, + params: Params$Resource$Advertisers$Adgroups$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Advertisers$Campaigns$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Adgroups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Advertisers$Campaigns$Patch, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Adgroups$Patch, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; + patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Advertisers$Campaigns$Patch - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Campaigns$Patch; + {}) as Params$Resource$Advertisers$Adgroups$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Campaigns$Patch; + params = {} as Params$Resource$Advertisers$Adgroups$Patch; options = {}; } @@ -10416,8 +10314,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/advertisers/{+advertiserId}/campaigns/{+campaignId}' + rootUrl + '/v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -10425,83 +10322,120 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'campaignId'], - pathParams: ['advertiserId', 'campaignId'], + requiredParams: ['advertiserId', 'adGroupId'], + pathParams: ['adGroupId', 'advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Advertisers$Campaigns$Create extends StandardParameters { + export interface Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions extends StandardParameters { /** - * Output only. The unique ID of the advertiser the campaign belongs to. + * Required. The ID of the advertiser the ad groups belong to. */ advertiserId?: string; /** * Request body metadata */ - requestBody?: Schema$Campaign; + requestBody?: Schema$BulkEditAdGroupAssignedTargetingOptionsRequest; } - export interface Params$Resource$Advertisers$Campaigns$Delete extends StandardParameters { + export interface Params$Resource$Advertisers$Adgroups$Bulklistadgroupassignedtargetingoptions extends StandardParameters { /** - * The ID of the advertiser this campaign belongs to. + * Required. The IDs of the ad groups to list assigned targeting options for. + */ + adGroupIds?: string[]; + /** + * Required. The ID of the advertiser the line items belongs to. */ advertiserId?: string; /** - * The ID of the campaign we need to delete. + * Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_YOUTUBE_VIDEO` or `TARGETING_TYPE_YOUTUBE_CHANNEL`: `targetingType="TARGETING_TYPE_YOUTUBE_VIDEO" OR targetingType="TARGETING_TYPE_YOUTUBE_CHANNEL"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ - campaignId?: string; + filter?: string; + /** + * Optional. Field by which to sort the list. Acceptable values are: * `adGroupId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `targetingType desc`. + */ + orderBy?: string; + /** + * Optional. Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * Optional. A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; } - export interface Params$Resource$Advertisers$Campaigns$Get extends StandardParameters { + export interface Params$Resource$Advertisers$Adgroups$Create extends StandardParameters { /** - * Required. The ID of the advertiser this campaign belongs to. + * Output only. The unique ID of the advertiser the ad group belongs to. */ advertiserId?: string; + /** - * Required. The ID of the campaign to fetch. + * Request body metadata */ - campaignId?: string; + requestBody?: Schema$AdGroup; } - export interface Params$Resource$Advertisers$Campaigns$List extends StandardParameters { + export interface Params$Resource$Advertisers$Adgroups$Delete extends StandardParameters { /** - * The ID of the advertiser to list campaigns for. + * Required. The ID of the ad group to delete. + */ + adGroupId?: string; + /** + * Required. The ID of the advertiser this ad group belongs to. */ advertiserId?: string; + } + export interface Params$Resource$Advertisers$Adgroups$Get extends StandardParameters { /** - * Allows filtering by campaign fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` campaigns under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED")` * All campaigns with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime<="2020-11-04T18:54:47Z"` * All campaigns with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * Required. The ID of the ad group to fetch. + */ + adGroupId?: string; + /** + * Required. The ID of the advertiser this ad group belongs to. + */ + advertiserId?: string; + } + export interface Params$Resource$Advertisers$Adgroups$List extends StandardParameters { + /** + * Required. The ID of the advertiser the ad groups belongs to. + */ + advertiserId?: string; + /** + * Optional. Allows filtering by custom ad group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported properties: * `adGroupId` * `displayName` * `entityStatus` * `lineItemId` * `adGroupFormat` Examples: * All ad groups under an line item: `lineItemId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` `AD_GROUP_FORMAT_IN_STREAM` ad groups under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupFormat="AD_GROUP_FORMAT_IN_STREAM"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ filter?: string; /** - * Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. */ orderBy?: string; /** - * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. + * Optional. Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. */ pageSize?: number; /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCampaigns` method. If not specified, the first page of results will be returned. + * Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroups` method. If not specified, the first page of results will be returned. */ pageToken?: string; } - export interface Params$Resource$Advertisers$Campaigns$Patch extends StandardParameters { + export interface Params$Resource$Advertisers$Adgroups$Patch extends StandardParameters { /** - * Output only. The unique ID of the advertiser the campaign belongs to. + * Output only. The unique ID of the ad group. Assigned by the system. */ - advertiserId?: string; + adGroupId?: string; /** - * Output only. The unique ID of the campaign. Assigned by the system. + * Output only. The unique ID of the advertiser the ad group belongs to. */ - campaignId?: string; + advertiserId?: string; /** * Required. The mask to control which fields to update. */ @@ -10510,19 +10444,29 @@ export namespace displayvideo_v3 { /** * Request body metadata */ - requestBody?: Schema$Campaign; + requestBody?: Schema$AdGroup; } - export class Resource$Advertisers$Channels { + export class Resource$Advertisers$Adgroups$Targetingtypes { + context: APIRequestContext; + assignedTargetingOptions: Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions; + constructor(context: APIRequestContext) { + this.context = context; + this.assignedTargetingOptions = + new Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions( + this.context + ); + } + } + + export class Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions { context: APIRequestContext; - sites: Resource$Advertisers$Channels$Sites; constructor(context: APIRequestContext) { this.context = context; - this.sites = new Resource$Advertisers$Channels$Sites(this.context); } /** - * Creates a new channel. Returns the newly created channel if successful. + * Assigns a targeting option to an ad group. Returns the assigned targeting option if successful. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -10551,37 +10495,136 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.channels.create({ - * // The ID of the advertiser that owns the created channel. - * advertiserId: '[^/]+', - * // The ID of the partner that owns the created channel. - * partnerId: 'placeholder-value', + * const res = + * await displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.create( + * { + * // Required. The ID of the ad group the assigned targeting option will belong to. + * adGroupId: '[^/]+', + * // Required. The ID of the advertiser the ad group belongs to. + * advertiserId: '[^/]+', + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * targetingType: '[^/]+', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advertiserId": "my_advertiserId", - * // "channelId": "my_channelId", - * // "displayName": "my_displayName", - * // "name": "my_name", - * // "negativelyTargetedLineItemCount": "my_negativelyTargetedLineItemCount", - * // "partnerId": "my_partnerId", - * // "positivelyTargetedLineItemCount": "my_positivelyTargetedLineItemCount" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "ageRangeDetails": {}, + * // "appCategoryDetails": {}, + * // "appDetails": {}, + * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", + * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", + * // "audienceGroupDetails": {}, + * // "audioContentTypeDetails": {}, + * // "authorizedSellerStatusDetails": {}, + * // "browserDetails": {}, + * // "businessChainDetails": {}, + * // "carrierAndIspDetails": {}, + * // "categoryDetails": {}, + * // "channelDetails": {}, + * // "contentDurationDetails": {}, + * // "contentGenreDetails": {}, + * // "contentInstreamPositionDetails": {}, + * // "contentOutstreamPositionDetails": {}, + * // "contentStreamTypeDetails": {}, + * // "contentThemeExclusionDetails": {}, + * // "dayAndTimeDetails": {}, + * // "deviceMakeModelDetails": {}, + * // "deviceTypeDetails": {}, + * // "digitalContentLabelExclusionDetails": {}, + * // "environmentDetails": {}, + * // "exchangeDetails": {}, + * // "genderDetails": {}, + * // "geoRegionDetails": {}, + * // "householdIncomeDetails": {}, + * // "inheritance": "my_inheritance", + * // "inventorySourceDetails": {}, + * // "inventorySourceGroupDetails": {}, + * // "keywordDetails": {}, + * // "languageDetails": {}, + * // "name": "my_name", + * // "nativeContentPositionDetails": {}, + * // "negativeKeywordListDetails": {}, + * // "omidDetails": {}, + * // "onScreenPositionDetails": {}, + * // "operatingSystemDetails": {}, + * // "parentalStatusDetails": {}, + * // "poiDetails": {}, + * // "proximityLocationListDetails": {}, + * // "regionalLocationListDetails": {}, + * // "sensitiveCategoryExclusionDetails": {}, + * // "sessionPositionDetails": {}, + * // "subExchangeDetails": {}, + * // "targetingType": "my_targetingType", + * // "thirdPartyVerifierDetails": {}, + * // "urlDetails": {}, + * // "userRewardedContentDetails": {}, + * // "videoPlayerSizeDetails": {}, + * // "viewabilityDetails": {}, + * // "youtubeChannelDetails": {}, + * // "youtubeVideoDetails": {} + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "advertiserId": "my_advertiserId", - * // "channelId": "my_channelId", - * // "displayName": "my_displayName", + * // "ageRangeDetails": {}, + * // "appCategoryDetails": {}, + * // "appDetails": {}, + * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", + * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", + * // "audienceGroupDetails": {}, + * // "audioContentTypeDetails": {}, + * // "authorizedSellerStatusDetails": {}, + * // "browserDetails": {}, + * // "businessChainDetails": {}, + * // "carrierAndIspDetails": {}, + * // "categoryDetails": {}, + * // "channelDetails": {}, + * // "contentDurationDetails": {}, + * // "contentGenreDetails": {}, + * // "contentInstreamPositionDetails": {}, + * // "contentOutstreamPositionDetails": {}, + * // "contentStreamTypeDetails": {}, + * // "contentThemeExclusionDetails": {}, + * // "dayAndTimeDetails": {}, + * // "deviceMakeModelDetails": {}, + * // "deviceTypeDetails": {}, + * // "digitalContentLabelExclusionDetails": {}, + * // "environmentDetails": {}, + * // "exchangeDetails": {}, + * // "genderDetails": {}, + * // "geoRegionDetails": {}, + * // "householdIncomeDetails": {}, + * // "inheritance": "my_inheritance", + * // "inventorySourceDetails": {}, + * // "inventorySourceGroupDetails": {}, + * // "keywordDetails": {}, + * // "languageDetails": {}, * // "name": "my_name", - * // "negativelyTargetedLineItemCount": "my_negativelyTargetedLineItemCount", - * // "partnerId": "my_partnerId", - * // "positivelyTargetedLineItemCount": "my_positivelyTargetedLineItemCount" + * // "nativeContentPositionDetails": {}, + * // "negativeKeywordListDetails": {}, + * // "omidDetails": {}, + * // "onScreenPositionDetails": {}, + * // "operatingSystemDetails": {}, + * // "parentalStatusDetails": {}, + * // "poiDetails": {}, + * // "proximityLocationListDetails": {}, + * // "regionalLocationListDetails": {}, + * // "sensitiveCategoryExclusionDetails": {}, + * // "sessionPositionDetails": {}, + * // "subExchangeDetails": {}, + * // "targetingType": "my_targetingType", + * // "thirdPartyVerifierDetails": {}, + * // "urlDetails": {}, + * // "userRewardedContentDetails": {}, + * // "videoPlayerSizeDetails": {}, + * // "viewabilityDetails": {}, + * // "youtubeChannelDetails": {}, + * // "youtubeVideoDetails": {} * // } * } * @@ -10598,52 +10641,57 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Advertisers$Channels$Create, + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Advertisers$Channels$Create, + params?: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create, options?: MethodOptions - ): Promise>; + ): Promise>; create( - params: Params$Resource$Advertisers$Channels$Create, + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Advertisers$Channels$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; create( - params: Params$Resource$Advertisers$Channels$Create, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create, + callback: BodyResponseCallback + ): void; + create( + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; create( paramsOrCallback?: - | Params$Resource$Advertisers$Channels$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Channels$Create; + {}) as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Channels$Create; + params = + {} as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create; options = {}; } @@ -10656,32 +10704,32 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/advertisers/{+advertiserId}/channels').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + + '/v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'adGroupId', 'targetingType'], + pathParams: ['adGroupId', 'advertiserId', 'targetingType'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a channel for a partner or advertiser. + * Deletes an assigned targeting option from an ad group. This method is only supported for Demand Gen ad groups with the AdGroupFormat `AD_GROUP_FORMAT_DEMAND_GEN`. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -10710,26 +10758,23 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.channels.get({ - * // The ID of the advertiser that owns the fetched channel. - * advertiserId: '[^/]+', - * // Required. The ID of the channel to fetch. - * channelId: '[^/]+', - * // The ID of the partner that owns the fetched channel. - * partnerId: 'placeholder-value', - * }); + * const res = + * await displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.delete( + * { + * // Required. The ID of the ad group the assigned targeting option belongs to. + * adGroupId: '[^/]+', + * // Required. The ID of the advertiser the ad group belongs to. + * advertiserId: '[^/]+', + * // Required. The ID of the assigned targeting option to delete. + * assignedTargetingOptionId: '[^/]+', + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * targetingType: '[^/]+', + * }, + * ); * console.log(res.data); * * // Example response - * // { - * // "advertiserId": "my_advertiserId", - * // "channelId": "my_channelId", - * // "displayName": "my_displayName", - * // "name": "my_name", - * // "negativelyTargetedLineItemCount": "my_negativelyTargetedLineItemCount", - * // "partnerId": "my_partnerId", - * // "positivelyTargetedLineItemCount": "my_positivelyTargetedLineItemCount" - * // } + * // {} * } * * main().catch(e => { @@ -10744,53 +10789,54 @@ export namespace displayvideo_v3 { * @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$Advertisers$Channels$Get, + delete( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Advertisers$Channels$Get, + delete( + params?: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Advertisers$Channels$Get, + ): Promise>; + delete( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Channels$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Channels$Get, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Advertisers$Channels$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Channels$Get; + {}) as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Channels$Get; + params = + {} as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete; options = {}; } @@ -10804,30 +10850,41 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/channels/{+channelId}' + rootUrl + + '/v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'channelId'], - pathParams: ['advertiserId', 'channelId'], + requiredParams: [ + 'advertiserId', + 'adGroupId', + 'targetingType', + 'assignedTargetingOptionId', + ], + pathParams: [ + 'adGroupId', + 'advertiserId', + 'assignedTargetingOptionId', + 'targetingType', + ], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists channels for a partner or advertiser. + * Gets a single targeting option assigned to an ad group. Inherited assigned targeting options are not included. * @example * ```js * // Before running the sample: @@ -10856,26 +10913,77 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.channels.list({ - * // The ID of the advertiser that owns the channels. - * advertiserId: '[^/]+', - * // Allows filtering by channel fields. Supported syntax: * Filter expressions for channel can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All channels for which the display name contains "google": `displayName : "google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `displayName` (default) * `channelId` The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `displayName desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListChannels` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // The ID of the partner that owns the channels. - * partnerId: 'placeholder-value', - * }); + * const res = + * await displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.get( + * { + * // Required. The ID of the ad group the assigned targeting option belongs to. + * adGroupId: '[^/]+', + * // Required. The ID of the advertiser the ad group belongs to. + * advertiserId: '[^/]+', + * // Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested. + * assignedTargetingOptionId: '[^/]+', + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * targetingType: '[^/]+', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "channels": [], - * // "nextPageToken": "my_nextPageToken" + * // "ageRangeDetails": {}, + * // "appCategoryDetails": {}, + * // "appDetails": {}, + * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", + * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", + * // "audienceGroupDetails": {}, + * // "audioContentTypeDetails": {}, + * // "authorizedSellerStatusDetails": {}, + * // "browserDetails": {}, + * // "businessChainDetails": {}, + * // "carrierAndIspDetails": {}, + * // "categoryDetails": {}, + * // "channelDetails": {}, + * // "contentDurationDetails": {}, + * // "contentGenreDetails": {}, + * // "contentInstreamPositionDetails": {}, + * // "contentOutstreamPositionDetails": {}, + * // "contentStreamTypeDetails": {}, + * // "contentThemeExclusionDetails": {}, + * // "dayAndTimeDetails": {}, + * // "deviceMakeModelDetails": {}, + * // "deviceTypeDetails": {}, + * // "digitalContentLabelExclusionDetails": {}, + * // "environmentDetails": {}, + * // "exchangeDetails": {}, + * // "genderDetails": {}, + * // "geoRegionDetails": {}, + * // "householdIncomeDetails": {}, + * // "inheritance": "my_inheritance", + * // "inventorySourceDetails": {}, + * // "inventorySourceGroupDetails": {}, + * // "keywordDetails": {}, + * // "languageDetails": {}, + * // "name": "my_name", + * // "nativeContentPositionDetails": {}, + * // "negativeKeywordListDetails": {}, + * // "omidDetails": {}, + * // "onScreenPositionDetails": {}, + * // "operatingSystemDetails": {}, + * // "parentalStatusDetails": {}, + * // "poiDetails": {}, + * // "proximityLocationListDetails": {}, + * // "regionalLocationListDetails": {}, + * // "sensitiveCategoryExclusionDetails": {}, + * // "sessionPositionDetails": {}, + * // "subExchangeDetails": {}, + * // "targetingType": "my_targetingType", + * // "thirdPartyVerifierDetails": {}, + * // "urlDetails": {}, + * // "userRewardedContentDetails": {}, + * // "videoPlayerSizeDetails": {}, + * // "viewabilityDetails": {}, + * // "youtubeChannelDetails": {}, + * // "youtubeVideoDetails": {} * // } * } * @@ -10891,55 +10999,56 @@ export namespace displayvideo_v3 { * @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$Advertisers$Channels$List, + get( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Channels$List, + get( + params?: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Advertisers$Channels$List, + ): Promise>; + get( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Channels$List, + get( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Channels$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Advertisers$Channels$List - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Channels$List; + {}) as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Channels$List; + params = + {} as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get; options = {}; } @@ -10952,32 +11061,42 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/advertisers/{+advertiserId}/channels').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + + '/v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: [ + 'advertiserId', + 'adGroupId', + 'targetingType', + 'assignedTargetingOptionId', + ], + pathParams: [ + 'adGroupId', + 'advertiserId', + 'assignedTargetingOptionId', + 'targetingType', + ], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a channel. Returns the updated channel if successful. + * Lists the targeting options assigned to an ad group. Inherited assigned targeting options are not included. * @example * ```js * // Before running the sample: @@ -11006,41 +11125,31 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.channels.patch({ - * // The ID of the advertiser that owns the created channel. - * advertiserId: '[^/]+', - * // Output only. The unique ID of the channel. Assigned by the system. - * channelId: 'placeholder-value', - * // The ID of the partner that owns the created channel. - * partnerId: 'placeholder-value', - * // Required. The mask to control which fields to update. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advertiserId": "my_advertiserId", - * // "channelId": "my_channelId", - * // "displayName": "my_displayName", - * // "name": "my_name", - * // "negativelyTargetedLineItemCount": "my_negativelyTargetedLineItemCount", - * // "partnerId": "my_partnerId", - * // "positivelyTargetedLineItemCount": "my_positivelyTargetedLineItemCount" - * // } - * }, - * }); + * const res = + * await displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.list( + * { + * // Required. The ID of the ad group to list assigned targeting options for. + * adGroupId: '[^/]+', + * // Required. The ID of the advertiser the ad group belongs to. + * advertiserId: '[^/]+', + * // Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` Examples: * `AssignedTargetingOption` resources with ID 1 or 2: `assignedTargetingOptionId="1" OR assignedTargetingOptionId="2"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Optional. Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `assignedTargetingOptionId desc`. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * targetingType: '[^/]+', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "advertiserId": "my_advertiserId", - * // "channelId": "my_channelId", - * // "displayName": "my_displayName", - * // "name": "my_name", - * // "negativelyTargetedLineItemCount": "my_negativelyTargetedLineItemCount", - * // "partnerId": "my_partnerId", - * // "positivelyTargetedLineItemCount": "my_positivelyTargetedLineItemCount" + * // "assignedTargetingOptions": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -11056,53 +11165,62 @@ export namespace displayvideo_v3 { * @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$Advertisers$Channels$Patch, + list( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Advertisers$Channels$Patch, + list( + params?: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Advertisers$Channels$Patch, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Advertisers$Channels$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Advertisers$Channels$Patch, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Advertisers$Channels$Patch - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Channels$Patch; + {}) as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Channels$Patch; + params = + {} as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List; options = {}; } @@ -11116,116 +11234,126 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/channels/{channelId}' + rootUrl + + '/v3/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'channelId'], - pathParams: ['advertiserId', 'channelId'], + requiredParams: ['advertiserId', 'adGroupId', 'targetingType'], + pathParams: ['adGroupId', 'advertiserId', 'targetingType'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Advertisers$Channels$Create extends StandardParameters { + export interface Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create extends StandardParameters { /** - * The ID of the advertiser that owns the created channel. + * Required. The ID of the ad group the assigned targeting option will belong to. + */ + adGroupId?: string; + /** + * Required. The ID of the advertiser the ad group belongs to. */ advertiserId?: string; /** - * The ID of the partner that owns the created channel. + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ - partnerId?: string; + targetingType?: string; /** * Request body metadata */ - requestBody?: Schema$Channel; + requestBody?: Schema$AssignedTargetingOption; } - export interface Params$Resource$Advertisers$Channels$Get extends StandardParameters { + export interface Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete extends StandardParameters { /** - * The ID of the advertiser that owns the fetched channel. + * Required. The ID of the ad group the assigned targeting option belongs to. + */ + adGroupId?: string; + /** + * Required. The ID of the advertiser the ad group belongs to. */ advertiserId?: string; /** - * Required. The ID of the channel to fetch. + * Required. The ID of the assigned targeting option to delete. */ - channelId?: string; + assignedTargetingOptionId?: string; /** - * The ID of the partner that owns the fetched channel. + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ - partnerId?: string; + targetingType?: string; } - export interface Params$Resource$Advertisers$Channels$List extends StandardParameters { + export interface Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get extends StandardParameters { /** - * The ID of the advertiser that owns the channels. + * Required. The ID of the ad group the assigned targeting option belongs to. */ - advertiserId?: string; + adGroupId?: string; /** - * Allows filtering by channel fields. Supported syntax: * Filter expressions for channel can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All channels for which the display name contains "google": `displayName : "google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * Required. The ID of the advertiser the ad group belongs to. */ - filter?: string; + advertiserId?: string; /** - * Field by which to sort the list. Acceptable values are: * `displayName` (default) * `channelId` The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `displayName desc`. + * Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested. */ - orderBy?: string; + assignedTargetingOptionId?: string; /** - * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ - pageSize?: number; + targetingType?: string; + } + export interface Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$List extends StandardParameters { /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListChannels` method. If not specified, the first page of results will be returned. + * Required. The ID of the ad group to list assigned targeting options for. */ - pageToken?: string; + adGroupId?: string; /** - * The ID of the partner that owns the channels. + * Required. The ID of the advertiser the ad group belongs to. */ - partnerId?: string; - } - export interface Params$Resource$Advertisers$Channels$Patch extends StandardParameters { + advertiserId?: string; /** - * The ID of the advertiser that owns the created channel. + * Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` Examples: * `AssignedTargetingOption` resources with ID 1 or 2: `assignedTargetingOptionId="1" OR assignedTargetingOptionId="2"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ - advertiserId?: string; + filter?: string; /** - * Output only. The unique ID of the channel. Assigned by the system. + * Optional. Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `assignedTargetingOptionId desc`. */ - channelId?: string; + orderBy?: string; /** - * The ID of the partner that owns the created channel. + * Optional. Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. */ - partnerId?: string; + pageSize?: number; /** - * Required. The mask to control which fields to update. + * Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. */ - updateMask?: string; - + pageToken?: string; /** - * Request body metadata + * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ - requestBody?: Schema$Channel; + targetingType?: string; } - export class Resource$Advertisers$Channels$Sites { + export class Resource$Advertisers$Assets { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Bulk edits sites under a single channel. The operation will delete the sites provided in BulkEditSitesRequest.deleted_sites and then create the sites provided in BulkEditSitesRequest.created_sites. + * Uploads an asset. Returns the ID of the newly uploaded asset if successful. The asset file size should be no more than 10 MB for images, 200 MB for ZIP files, and 1 GB for videos. Must be used within the [multipart media upload process](/display-video/api/guides/how-tos/upload#multipart). Examples using provided client libraries can be found in our [Creating Creatives guide](/display-video/api/guides/creating-creatives/overview#upload_an_asset). * @example * ```js * // Before running the sample: @@ -11254,28 +11382,27 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.channels.sites.bulkEdit({ - * // The ID of the advertiser that owns the parent channel. - * advertiserId: 'placeholder-value', - * // Required. The ID of the parent channel to which the sites belong. - * channelId: '[^/]+', + * const res = await displayvideo.advertisers.assets.upload({ + * // Required. The ID of the advertiser this asset belongs to. + * advertiserId: '[^/]+', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "advertiserId": "my_advertiserId", - * // "createdSites": [], - * // "deletedSites": [], - * // "partnerId": "my_partnerId" + * // "filename": "my_filename" * // } * }, + * media: { + * mimeType: 'placeholder-value', + * body: 'placeholder-value', + * }, * }); * console.log(res.data); * * // Example response * // { - * // "sites": [] + * // "asset": {} * // } * } * @@ -11291,57 +11418,53 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkEdit( - params: Params$Resource$Advertisers$Channels$Sites$Bulkedit, + upload( + params: Params$Resource$Advertisers$Assets$Upload, options: StreamMethodOptions ): Promise>; - bulkEdit( - params?: Params$Resource$Advertisers$Channels$Sites$Bulkedit, + upload( + params?: Params$Resource$Advertisers$Assets$Upload, options?: MethodOptions - ): Promise>; - bulkEdit( - params: Params$Resource$Advertisers$Channels$Sites$Bulkedit, + ): Promise>; + upload( + params: Params$Resource$Advertisers$Assets$Upload, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkEdit( - params: Params$Resource$Advertisers$Channels$Sites$Bulkedit, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - bulkEdit( - params: Params$Resource$Advertisers$Channels$Sites$Bulkedit, - callback: BodyResponseCallback + upload( + params: Params$Resource$Advertisers$Assets$Upload, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - bulkEdit( - callback: BodyResponseCallback + upload( + params: Params$Resource$Advertisers$Assets$Upload, + callback: BodyResponseCallback ): void; - bulkEdit( + upload(callback: BodyResponseCallback): void; + upload( paramsOrCallback?: - | Params$Resource$Advertisers$Channels$Sites$Bulkedit - | BodyResponseCallback + | Params$Resource$Advertisers$Assets$Upload + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Channels$Sites$Bulkedit; + {}) as Params$Resource$Advertisers$Assets$Upload; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Channels$Sites$Bulkedit; + params = {} as Params$Resource$Advertisers$Assets$Upload; options = {}; } @@ -11354,32 +11477,69 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + - '/v3/advertisers/{advertiserId}/channels/{+channelId}/sites:bulkEdit' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v3/advertisers/{+advertiserId}/assets').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'channelId'], - pathParams: ['advertiserId', 'channelId'], + mediaUrl: ( + rootUrl + '/upload/v3/advertisers/{+advertiserId}/assets' + ).replace(/([^:]\/)\/+/g, '$1'), + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Advertisers$Assets$Upload extends StandardParameters { /** - * Creates a site in a channel. + * Required. The ID of the advertiser this asset belongs to. + */ + advertiserId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CreateAssetRequest; + + /** + * Media metadata + */ + media?: { + /** + * Media mime-type + */ + mimeType?: string; + + /** + * Media body contents + */ + body?: any; + }; + } + + export class Resource$Advertisers$Campaigns { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new campaign. Returns the newly created campaign if successful. * @example * ```js * // Before running the sample: @@ -11400,7 +11560,10 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], + * scopes: [ + * 'https://www.googleapis.com/auth/display-video', + * 'https://www.googleapis.com/auth/display-video-mediaplanning', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11408,20 +11571,24 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.channels.sites.create({ - * // The ID of the advertiser that owns the parent channel. - * advertiserId: 'placeholder-value', - * // Required. The ID of the parent channel in which the site will be created. - * channelId: '[^/]+', - * // The ID of the partner that owns the parent channel. - * partnerId: 'placeholder-value', + * const res = await displayvideo.advertisers.campaigns.create({ + * // Output only. The unique ID of the advertiser the campaign belongs to. + * advertiserId: '[^/]+', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "advertiserId": "my_advertiserId", + * // "campaignBudgets": [], + * // "campaignFlight": {}, + * // "campaignGoal": {}, + * // "campaignId": "my_campaignId", + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "frequencyCap": {}, * // "name": "my_name", - * // "urlOrAppId": "my_urlOrAppId" + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -11429,8 +11596,16 @@ export namespace displayvideo_v3 { * * // Example response * // { + * // "advertiserId": "my_advertiserId", + * // "campaignBudgets": [], + * // "campaignFlight": {}, + * // "campaignGoal": {}, + * // "campaignId": "my_campaignId", + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "frequencyCap": {}, * // "name": "my_name", - * // "urlOrAppId": "my_urlOrAppId" + * // "updateTime": "my_updateTime" * // } * } * @@ -11447,52 +11622,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Advertisers$Channels$Sites$Create, + params: Params$Resource$Advertisers$Campaigns$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Advertisers$Channels$Sites$Create, + params?: Params$Resource$Advertisers$Campaigns$Create, options?: MethodOptions - ): Promise>; + ): Promise>; create( - params: Params$Resource$Advertisers$Channels$Sites$Create, + params: Params$Resource$Advertisers$Campaigns$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Advertisers$Channels$Sites$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Campaigns$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; create( - params: Params$Resource$Advertisers$Channels$Sites$Create, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Campaigns$Create, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; + create(callback: BodyResponseCallback): void; create( paramsOrCallback?: - | Params$Resource$Advertisers$Channels$Sites$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Campaigns$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Channels$Sites$Create; + {}) as Params$Resource$Advertisers$Campaigns$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Channels$Sites$Create; + params = {} as Params$Resource$Advertisers$Campaigns$Create; options = {}; } @@ -11506,8 +11681,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/advertisers/{advertiserId}/channels/{+channelId}/sites' + rootUrl + '/v3/advertisers/{+advertiserId}/campaigns' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -11515,22 +11689,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'channelId'], - pathParams: ['advertiserId', 'channelId'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a site from a channel. + * Permanently deletes a campaign. A deleted campaign cannot be recovered. The campaign should be archived first, i.e. set entity_status to `ENTITY_STATUS_ARCHIVED`, to be able to delete it. **This method regularly experiences high latency.** We recommend [increasing your default timeout](/display-video/api/guides/best-practices/timeouts#client_library_timeout) to avoid errors. * @example * ```js * // Before running the sample: @@ -11551,7 +11725,10 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], + * scopes: [ + * 'https://www.googleapis.com/auth/display-video', + * 'https://www.googleapis.com/auth/display-video-mediaplanning', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11559,15 +11736,11 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.channels.sites.delete({ - * // The ID of the advertiser that owns the parent channel. - * advertiserId: 'placeholder-value', - * // Required. The ID of the parent channel to which the site belongs. - * channelId: '[^/]+', - * // The ID of the partner that owns the parent channel. - * partnerId: 'placeholder-value', - * // Required. The URL or app ID of the site to delete. - * urlOrAppId: '[^/]+', + * const res = await displayvideo.advertisers.campaigns.delete({ + * // The ID of the advertiser this campaign belongs to. + * advertiserId: '[^/]+', + * // The ID of the campaign we need to delete. + * campaignId: '[^/]+', * }); * console.log(res.data); * @@ -11588,31 +11761,31 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Advertisers$Channels$Sites$Delete, + params: Params$Resource$Advertisers$Campaigns$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Advertisers$Channels$Sites$Delete, + params?: Params$Resource$Advertisers$Campaigns$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Advertisers$Channels$Sites$Delete, + params: Params$Resource$Advertisers$Campaigns$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Advertisers$Channels$Sites$Delete, + params: Params$Resource$Advertisers$Campaigns$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Advertisers$Channels$Sites$Delete, + params: Params$Resource$Advertisers$Campaigns$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Advertisers$Channels$Sites$Delete + | Params$Resource$Advertisers$Campaigns$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -11628,12 +11801,12 @@ export namespace displayvideo_v3 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Channels$Sites$Delete; + {}) as Params$Resource$Advertisers$Campaigns$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Channels$Sites$Delete; + params = {} as Params$Resource$Advertisers$Campaigns$Delete; options = {}; } @@ -11648,7 +11821,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{advertiserId}/channels/{+channelId}/sites/{+urlOrAppId}' + '/v3/advertisers/{+advertiserId}/campaigns/{+campaignId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -11656,8 +11829,8 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'channelId', 'urlOrAppId'], - pathParams: ['advertiserId', 'channelId', 'urlOrAppId'], + requiredParams: ['advertiserId', 'campaignId'], + pathParams: ['advertiserId', 'campaignId'], context: this.context, }; if (callback) { @@ -11671,7 +11844,7 @@ export namespace displayvideo_v3 { } /** - * Lists sites in a channel. + * Gets a campaign. * @example * ```js * // Before running the sample: @@ -11692,7 +11865,10 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], + * scopes: [ + * 'https://www.googleapis.com/auth/display-video', + * 'https://www.googleapis.com/auth/display-video-mediaplanning', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11700,28 +11876,26 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.channels.sites.list({ - * // The ID of the advertiser that owns the parent channel. + * const res = await displayvideo.advertisers.campaigns.get({ + * // Required. The ID of the advertiser this campaign belongs to. * advertiserId: '[^/]+', - * // Required. The ID of the parent channel to which the requested sites belong. - * channelId: '[^/]+', - * // Allows filtering by site fields. Supported syntax: * Filter expressions for site retrieval can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `urlOrAppId` Examples: * All sites for which the URL or app ID contains "google": `urlOrAppId : "google"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `urlOrAppId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `urlOrAppId desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `10000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListSites` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // The ID of the partner that owns the parent channel. - * partnerId: 'placeholder-value', + * // Required. The ID of the campaign to fetch. + * campaignId: '[^/]+', * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "sites": [] + * // "advertiserId": "my_advertiserId", + * // "campaignBudgets": [], + * // "campaignFlight": {}, + * // "campaignGoal": {}, + * // "campaignId": "my_campaignId", + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "frequencyCap": {}, + * // "name": "my_name", + * // "updateTime": "my_updateTime" * // } * } * @@ -11737,53 +11911,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Channels$Sites$List, + get( + params: Params$Resource$Advertisers$Campaigns$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Channels$Sites$List, + get( + params?: Params$Resource$Advertisers$Campaigns$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Advertisers$Channels$Sites$List, + ): Promise>; + get( + params: Params$Resource$Advertisers$Campaigns$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Channels$Sites$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Campaigns$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Channels$Sites$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Campaigns$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Advertisers$Channels$Sites$List - | BodyResponseCallback + | Params$Resource$Advertisers$Campaigns$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Channels$Sites$List; + {}) as Params$Resource$Advertisers$Campaigns$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Channels$Sites$List; + params = {} as Params$Resource$Advertisers$Campaigns$Get; options = {}; } @@ -11798,7 +11972,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/channels/{+channelId}/sites' + '/v3/advertisers/{+advertiserId}/campaigns/{+campaignId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -11806,22 +11980,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'channelId'], - pathParams: ['advertiserId', 'channelId'], + requiredParams: ['advertiserId', 'campaignId'], + pathParams: ['advertiserId', 'campaignId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Replaces all of the sites under a single channel. The operation will replace the sites under a channel with the sites provided in ReplaceSitesRequest.new_sites. **This method regularly experiences high latency.** We recommend [increasing your default timeout](/display-video/api/guides/best-practices/timeouts#client_library_timeout) to avoid errors. + * Lists campaigns in an advertiser. The order is defined by the order_by parameter. If a filter by entity_status is not specified, campaigns with `ENTITY_STATUS_ARCHIVED` will not be included in the results. * @example * ```js * // Before running the sample: @@ -11842,7 +12016,10 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], + * scopes: [ + * 'https://www.googleapis.com/auth/display-video', + * 'https://www.googleapis.com/auth/display-video-mediaplanning', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11850,27 +12027,24 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.channels.sites.replace({ - * // The ID of the advertiser that owns the parent channel. - * advertiserId: 'placeholder-value', - * // Required. The ID of the parent channel whose sites will be replaced. - * channelId: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advertiserId": "my_advertiserId", - * // "newSites": [], - * // "partnerId": "my_partnerId" - * // } - * }, + * const res = await displayvideo.advertisers.campaigns.list({ + * // The ID of the advertiser to list campaigns for. + * advertiserId: '[^/]+', + * // Allows filtering by campaign fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` campaigns under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED")` * All campaigns with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime<="2020-11-04T18:54:47Z"` * All campaigns with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCampaigns` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "sites": [] + * // "campaigns": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -11886,55 +12060,55 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - replace( - params: Params$Resource$Advertisers$Channels$Sites$Replace, + list( + params: Params$Resource$Advertisers$Campaigns$List, options: StreamMethodOptions ): Promise>; - replace( - params?: Params$Resource$Advertisers$Channels$Sites$Replace, + list( + params?: Params$Resource$Advertisers$Campaigns$List, options?: MethodOptions - ): Promise>; - replace( - params: Params$Resource$Advertisers$Channels$Sites$Replace, + ): Promise>; + list( + params: Params$Resource$Advertisers$Campaigns$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - replace( - params: Params$Resource$Advertisers$Channels$Sites$Replace, + list( + params: Params$Resource$Advertisers$Campaigns$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - replace( - params: Params$Resource$Advertisers$Channels$Sites$Replace, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Campaigns$List, + callback: BodyResponseCallback ): void; - replace(callback: BodyResponseCallback): void; - replace( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Advertisers$Channels$Sites$Replace - | BodyResponseCallback + | Params$Resource$Advertisers$Campaigns$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Channels$Sites$Replace; + {}) as Params$Resource$Advertisers$Campaigns$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Channels$Sites$Replace; + params = {} as Params$Resource$Advertisers$Campaigns$List; options = {}; } @@ -11948,136 +12122,30 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/advertisers/{advertiserId}/channels/{+channelId}/sites:replace' + rootUrl + '/v3/advertisers/{+advertiserId}/campaigns' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'channelId'], - pathParams: ['advertiserId', 'channelId'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Advertisers$Channels$Sites$Bulkedit extends StandardParameters { - /** - * The ID of the advertiser that owns the parent channel. - */ - advertiserId?: string; - /** - * Required. The ID of the parent channel to which the sites belong. - */ - channelId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$BulkEditSitesRequest; - } - export interface Params$Resource$Advertisers$Channels$Sites$Create extends StandardParameters { - /** - * The ID of the advertiser that owns the parent channel. - */ - advertiserId?: string; - /** - * Required. The ID of the parent channel in which the site will be created. - */ - channelId?: string; - /** - * The ID of the partner that owns the parent channel. - */ - partnerId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Site; - } - export interface Params$Resource$Advertisers$Channels$Sites$Delete extends StandardParameters { - /** - * The ID of the advertiser that owns the parent channel. - */ - advertiserId?: string; - /** - * Required. The ID of the parent channel to which the site belongs. - */ - channelId?: string; - /** - * The ID of the partner that owns the parent channel. - */ - partnerId?: string; - /** - * Required. The URL or app ID of the site to delete. - */ - urlOrAppId?: string; - } - export interface Params$Resource$Advertisers$Channels$Sites$List extends StandardParameters { - /** - * The ID of the advertiser that owns the parent channel. - */ - advertiserId?: string; - /** - * Required. The ID of the parent channel to which the requested sites belong. - */ - channelId?: string; - /** - * Allows filtering by site fields. Supported syntax: * Filter expressions for site retrieval can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `urlOrAppId` Examples: * All sites for which the URL or app ID contains "google": `urlOrAppId : "google"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Field by which to sort the list. Acceptable values are: * `urlOrAppId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `urlOrAppId desc`. - */ - orderBy?: string; - /** - * Requested page size. Must be between `1` and `10000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListSites` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - /** - * The ID of the partner that owns the parent channel. - */ - partnerId?: string; - } - export interface Params$Resource$Advertisers$Channels$Sites$Replace extends StandardParameters { - /** - * The ID of the advertiser that owns the parent channel. - */ - advertiserId?: string; - /** - * Required. The ID of the parent channel whose sites will be replaced. - */ - channelId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ReplaceSitesRequest; - } - - export class Resource$Advertisers$Creatives { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new creative. Returns the newly created creative if successful. A ["Standard" user role](//support.google.com/displayvideo/answer/2723011) or greater for the parent advertiser or partner is required to make this request. + * Updates an existing campaign. Returns the updated campaign if successful. * @example * ```js * // Before running the sample: @@ -12098,7 +12166,10 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], + * scopes: [ + * 'https://www.googleapis.com/auth/display-video', + * 'https://www.googleapis.com/auth/display-video-mediaplanning', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12106,61 +12177,28 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.creatives.create({ - * // Output only. The unique ID of the advertiser the creative belongs to. + * const res = await displayvideo.advertisers.campaigns.patch({ + * // Output only. The unique ID of the advertiser the campaign belongs to. * advertiserId: '[^/]+', + * // Output only. The unique ID of the campaign. Assigned by the system. + * campaignId: '[^/]+', + * // Required. The mask to control which fields to update. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "additionalDimensions": [], * // "advertiserId": "my_advertiserId", - * // "appendedTag": "my_appendedTag", - * // "assets": [], - * // "cmPlacementId": "my_cmPlacementId", - * // "cmTrackingAd": {}, - * // "companionCreativeIds": [], - * // "counterEvents": [], - * // "createTime": "my_createTime", - * // "creativeAttributes": [], - * // "creativeId": "my_creativeId", - * // "creativeType": "my_creativeType", - * // "dimensions": {}, + * // "campaignBudgets": [], + * // "campaignFlight": {}, + * // "campaignGoal": {}, + * // "campaignId": "my_campaignId", * // "displayName": "my_displayName", - * // "dynamic": false, * // "entityStatus": "my_entityStatus", - * // "exitEvents": [], - * // "expandOnHover": false, - * // "expandingDirection": "my_expandingDirection", - * // "hostingSource": "my_hostingSource", - * // "html5Video": false, - * // "iasCampaignMonitoring": false, - * // "integrationCode": "my_integrationCode", - * // "jsTrackerUrl": "my_jsTrackerUrl", - * // "lineItemIds": [], - * // "mediaDuration": "my_mediaDuration", - * // "mp3Audio": false, + * // "frequencyCap": {}, * // "name": "my_name", - * // "notes": "my_notes", - * // "obaIcon": {}, - * // "oggAudio": false, - * // "progressOffset": {}, - * // "requireHtml5": false, - * // "requireMraid": false, - * // "requirePingForAttribution": false, - * // "reviewStatus": {}, - * // "skipOffset": {}, - * // "skippable": false, - * // "thirdPartyTag": "my_thirdPartyTag", - * // "thirdPartyUrls": [], - * // "timerEvents": [], - * // "trackerUrls": [], - * // "transcodes": [], - * // "universalAdId": {}, - * // "updateTime": "my_updateTime", - * // "vastTagUrl": "my_vastTagUrl", - * // "vpaid": false + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -12168,53 +12206,16 @@ export namespace displayvideo_v3 { * * // Example response * // { - * // "additionalDimensions": [], * // "advertiserId": "my_advertiserId", - * // "appendedTag": "my_appendedTag", - * // "assets": [], - * // "cmPlacementId": "my_cmPlacementId", - * // "cmTrackingAd": {}, - * // "companionCreativeIds": [], - * // "counterEvents": [], - * // "createTime": "my_createTime", - * // "creativeAttributes": [], - * // "creativeId": "my_creativeId", - * // "creativeType": "my_creativeType", - * // "dimensions": {}, + * // "campaignBudgets": [], + * // "campaignFlight": {}, + * // "campaignGoal": {}, + * // "campaignId": "my_campaignId", * // "displayName": "my_displayName", - * // "dynamic": false, * // "entityStatus": "my_entityStatus", - * // "exitEvents": [], - * // "expandOnHover": false, - * // "expandingDirection": "my_expandingDirection", - * // "hostingSource": "my_hostingSource", - * // "html5Video": false, - * // "iasCampaignMonitoring": false, - * // "integrationCode": "my_integrationCode", - * // "jsTrackerUrl": "my_jsTrackerUrl", - * // "lineItemIds": [], - * // "mediaDuration": "my_mediaDuration", - * // "mp3Audio": false, + * // "frequencyCap": {}, * // "name": "my_name", - * // "notes": "my_notes", - * // "obaIcon": {}, - * // "oggAudio": false, - * // "progressOffset": {}, - * // "requireHtml5": false, - * // "requireMraid": false, - * // "requirePingForAttribution": false, - * // "reviewStatus": {}, - * // "skipOffset": {}, - * // "skippable": false, - * // "thirdPartyTag": "my_thirdPartyTag", - * // "thirdPartyUrls": [], - * // "timerEvents": [], - * // "trackerUrls": [], - * // "transcodes": [], - * // "universalAdId": {}, - * // "updateTime": "my_updateTime", - * // "vastTagUrl": "my_vastTagUrl", - * // "vpaid": false + * // "updateTime": "my_updateTime" * // } * } * @@ -12230,53 +12231,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Creatives$Create, + patch( + params: Params$Resource$Advertisers$Campaigns$Patch, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Advertisers$Creatives$Create, + patch( + params?: Params$Resource$Advertisers$Campaigns$Patch, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Advertisers$Creatives$Create, + ): Promise>; + patch( + params: Params$Resource$Advertisers$Campaigns$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Creatives$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Advertisers$Campaigns$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Creatives$Create, - callback: BodyResponseCallback + patch( + params: Params$Resource$Advertisers$Campaigns$Patch, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Advertisers$Creatives$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Campaigns$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Creatives$Create; + {}) as Params$Resource$Advertisers$Campaigns$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Creatives$Create; + params = {} as Params$Resource$Advertisers$Campaigns$Patch; options = {}; } @@ -12290,30 +12291,113 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/creatives' + rootUrl + + '/v3/advertisers/{+advertiserId}/campaigns/{+campaignId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'campaignId'], + pathParams: ['advertiserId', 'campaignId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Advertisers$Campaigns$Create extends StandardParameters { /** - * Deletes a creative. Returns error code `NOT_FOUND` if the creative does not exist. The creative should be archived first, i.e. set entity_status to `ENTITY_STATUS_ARCHIVED`, before it can be deleted. A ["Standard" user role](//support.google.com/displayvideo/answer/2723011) or greater for the parent advertiser or partner is required to make this request. + * Output only. The unique ID of the advertiser the campaign belongs to. + */ + advertiserId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Campaign; + } + export interface Params$Resource$Advertisers$Campaigns$Delete extends StandardParameters { + /** + * The ID of the advertiser this campaign belongs to. + */ + advertiserId?: string; + /** + * The ID of the campaign we need to delete. + */ + campaignId?: string; + } + export interface Params$Resource$Advertisers$Campaigns$Get extends StandardParameters { + /** + * Required. The ID of the advertiser this campaign belongs to. + */ + advertiserId?: string; + /** + * Required. The ID of the campaign to fetch. + */ + campaignId?: string; + } + export interface Params$Resource$Advertisers$Campaigns$List extends StandardParameters { + /** + * The ID of the advertiser to list campaigns for. + */ + advertiserId?: string; + /** + * Allows filtering by campaign fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` campaigns under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED")` * All campaigns with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime<="2020-11-04T18:54:47Z"` * All campaigns with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + */ + orderBy?: string; + /** + * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCampaigns` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + } + export interface Params$Resource$Advertisers$Campaigns$Patch extends StandardParameters { + /** + * Output only. The unique ID of the advertiser the campaign belongs to. + */ + advertiserId?: string; + /** + * Output only. The unique ID of the campaign. Assigned by the system. + */ + campaignId?: string; + /** + * Required. The mask to control which fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Campaign; + } + + export class Resource$Advertisers$Channels { + context: APIRequestContext; + sites: Resource$Advertisers$Channels$Sites; + constructor(context: APIRequestContext) { + this.context = context; + this.sites = new Resource$Advertisers$Channels$Sites(this.context); + } + + /** + * Creates a new channel. Returns the newly created channel if successful. * @example * ```js * // Before running the sample: @@ -12342,16 +12426,38 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.creatives.delete({ - * // The ID of the advertiser this creative belongs to. + * const res = await displayvideo.advertisers.channels.create({ + * // The ID of the advertiser that owns the created channel. * advertiserId: '[^/]+', - * // The ID of the creative to be deleted. - * creativeId: '[^/]+', + * // The ID of the partner that owns the created channel. + * partnerId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advertiserId": "my_advertiserId", + * // "channelId": "my_channelId", + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "negativelyTargetedLineItemCount": "my_negativelyTargetedLineItemCount", + * // "partnerId": "my_partnerId", + * // "positivelyTargetedLineItemCount": "my_positivelyTargetedLineItemCount" + * // } + * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "advertiserId": "my_advertiserId", + * // "channelId": "my_channelId", + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "negativelyTargetedLineItemCount": "my_negativelyTargetedLineItemCount", + * // "partnerId": "my_partnerId", + * // "positivelyTargetedLineItemCount": "my_positivelyTargetedLineItemCount" + * // } * } * * main().catch(e => { @@ -12366,53 +12472,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Creatives$Delete, + create( + params: Params$Resource$Advertisers$Channels$Create, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Advertisers$Creatives$Delete, + create( + params?: Params$Resource$Advertisers$Channels$Create, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Advertisers$Creatives$Delete, + ): Promise>; + create( + params: Params$Resource$Advertisers$Channels$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Creatives$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Channels$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Creatives$Delete, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Channels$Create, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Advertisers$Creatives$Delete - | BodyResponseCallback + | Params$Resource$Advertisers$Channels$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Creatives$Delete; + {}) as Params$Resource$Advertisers$Channels$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Creatives$Delete; + params = {} as Params$Resource$Advertisers$Channels$Create; options = {}; } @@ -12425,32 +12531,32 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + - '/v3/advertisers/{+advertiserId}/creatives/{+creativeId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v3/advertisers/{+advertiserId}/channels').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'creativeId'], - pathParams: ['advertiserId', 'creativeId'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a creative. + * Gets a channel for a partner or advertiser. * @example * ```js * // Before running the sample: @@ -12479,63 +12585,25 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.creatives.get({ - * // Required. The ID of the advertiser this creative belongs to. + * const res = await displayvideo.advertisers.channels.get({ + * // The ID of the advertiser that owns the fetched channel. * advertiserId: '[^/]+', - * // Required. The ID of the creative to fetch. - * creativeId: '[^/]+', + * // Required. The ID of the channel to fetch. + * channelId: '[^/]+', + * // The ID of the partner that owns the fetched channel. + * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "additionalDimensions": [], * // "advertiserId": "my_advertiserId", - * // "appendedTag": "my_appendedTag", - * // "assets": [], - * // "cmPlacementId": "my_cmPlacementId", - * // "cmTrackingAd": {}, - * // "companionCreativeIds": [], - * // "counterEvents": [], - * // "createTime": "my_createTime", - * // "creativeAttributes": [], - * // "creativeId": "my_creativeId", - * // "creativeType": "my_creativeType", - * // "dimensions": {}, + * // "channelId": "my_channelId", * // "displayName": "my_displayName", - * // "dynamic": false, - * // "entityStatus": "my_entityStatus", - * // "exitEvents": [], - * // "expandOnHover": false, - * // "expandingDirection": "my_expandingDirection", - * // "hostingSource": "my_hostingSource", - * // "html5Video": false, - * // "iasCampaignMonitoring": false, - * // "integrationCode": "my_integrationCode", - * // "jsTrackerUrl": "my_jsTrackerUrl", - * // "lineItemIds": [], - * // "mediaDuration": "my_mediaDuration", - * // "mp3Audio": false, * // "name": "my_name", - * // "notes": "my_notes", - * // "obaIcon": {}, - * // "oggAudio": false, - * // "progressOffset": {}, - * // "requireHtml5": false, - * // "requireMraid": false, - * // "requirePingForAttribution": false, - * // "reviewStatus": {}, - * // "skipOffset": {}, - * // "skippable": false, - * // "thirdPartyTag": "my_thirdPartyTag", - * // "thirdPartyUrls": [], - * // "timerEvents": [], - * // "trackerUrls": [], - * // "transcodes": [], - * // "universalAdId": {}, - * // "updateTime": "my_updateTime", - * // "vastTagUrl": "my_vastTagUrl", - * // "vpaid": false + * // "negativelyTargetedLineItemCount": "my_negativelyTargetedLineItemCount", + * // "partnerId": "my_partnerId", + * // "positivelyTargetedLineItemCount": "my_positivelyTargetedLineItemCount" * // } * } * @@ -12552,52 +12620,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Advertisers$Creatives$Get, + params: Params$Resource$Advertisers$Channels$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Advertisers$Creatives$Get, + params?: Params$Resource$Advertisers$Channels$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Advertisers$Creatives$Get, + params: Params$Resource$Advertisers$Channels$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Advertisers$Creatives$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Channels$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Advertisers$Creatives$Get, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Channels$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Advertisers$Creatives$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Channels$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Creatives$Get; + {}) as Params$Resource$Advertisers$Channels$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Creatives$Get; + params = {} as Params$Resource$Advertisers$Channels$Get; options = {}; } @@ -12611,8 +12679,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/advertisers/{+advertiserId}/creatives/{+creativeId}' + rootUrl + '/v3/advertisers/{+advertiserId}/channels/{+channelId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -12620,22 +12687,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'creativeId'], - pathParams: ['advertiserId', 'creativeId'], + requiredParams: ['advertiserId', 'channelId'], + pathParams: ['advertiserId', 'channelId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists creatives in an advertiser. The order is defined by the order_by parameter. If a filter by entity_status is not specified, creatives with `ENTITY_STATUS_ARCHIVED` will not be included in the results. + * Lists channels for a partner or advertiser. * @example * ```js * // Before running the sample: @@ -12664,23 +12731,25 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.creatives.list({ - * // Required. The ID of the advertiser to list creatives for. + * const res = await displayvideo.advertisers.channels.list({ + * // The ID of the advertiser that owns the channels. * advertiserId: '[^/]+', - * // Allows filtering by creative fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `lineItemIds` field must use the `HAS (:)` operator. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. * For `entityStatus`, `minDuration`, `maxDuration`, `updateTime`, and `dynamic` fields, there may be at most one restriction. Supported Fields: * `approvalStatus` * `creativeId` * `creativeType` * `dimensions` (input in the form of `{width\}x{height\}`) * `dynamic` * `entityStatus` * `exchangeReviewStatus` (input in the form of `{exchange\}-{reviewStatus\}`) * `lineItemIds` * `maxDuration` (input in the form of `{duration\}s`. Only seconds are supported) * `minDuration` (input in the form of `{duration\}s`. Only seconds are supported) * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Notes: * For `updateTime`, a creative resource's field value reflects the last time that a creative has been updated, which includes updates made by the system (e.g. creative review updates). Examples: * All native creatives: `creativeType="CREATIVE_TYPE_NATIVE"` * All active creatives with 300x400 or 50x100 dimensions: `entityStatus="ENTITY_STATUS_ACTIVE" AND (dimensions="300x400" OR dimensions="50x100")` * All dynamic creatives that are approved by AdX or AppNexus, with a minimum duration of 5 seconds and 200ms: `dynamic="true" AND minDuration="5.2s" AND (exchangeReviewStatus="EXCHANGE_GOOGLE_AD_MANAGER-REVIEW_STATUS_APPROVED" OR exchangeReviewStatus="EXCHANGE_APPNEXUS-REVIEW_STATUS_APPROVED")` * All video creatives that are associated with line item ID 1 or 2: `creativeType="CREATIVE_TYPE_VIDEO" AND (lineItemIds:1 OR lineItemIds:2)` * Find creatives by multiple creative IDs: `creativeId=1 OR creativeId=2` * All creatives with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * // Allows filtering by channel fields. Supported syntax: * Filter expressions for channel can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All channels for which the display name contains "google": `displayName : "google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `creativeId` (default) * `createTime` * `mediaDuration` * `dimensions` (sorts by width first, then by height) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `createTime desc`. + * // Field by which to sort the list. Acceptable values are: * `displayName` (default) * `channelId` The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `displayName desc`. * orderBy: 'placeholder-value', * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCreatives` method. If not specified, the first page of results will be returned. + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListChannels` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', + * // The ID of the partner that owns the channels. + * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "creatives": [], + * // "channels": [], * // "nextPageToken": "my_nextPageToken" * // } * } @@ -12698,54 +12767,54 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Advertisers$Creatives$List, + params: Params$Resource$Advertisers$Channels$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Advertisers$Creatives$List, + params?: Params$Resource$Advertisers$Channels$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Advertisers$Creatives$List, + params: Params$Resource$Advertisers$Channels$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Advertisers$Creatives$List, + params: Params$Resource$Advertisers$Channels$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Advertisers$Creatives$List, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Channels$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Advertisers$Creatives$List - | BodyResponseCallback + | Params$Resource$Advertisers$Channels$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Creatives$List; + {}) as Params$Resource$Advertisers$Channels$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Creatives$List; + params = {} as Params$Resource$Advertisers$Channels$List; options = {}; } @@ -12758,9 +12827,10 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/creatives' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v3/advertisers/{+advertiserId}/channels').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, @@ -12772,17 +12842,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates an existing creative. Returns the updated creative if successful. A ["Standard" user role](//support.google.com/displayvideo/answer/2723011) or greater for the parent advertiser or partner is required to make this request. + * Updates a channel. Returns the updated channel if successful. * @example * ```js * // Before running the sample: @@ -12811,11 +12881,13 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.creatives.patch({ - * // Output only. The unique ID of the advertiser the creative belongs to. + * const res = await displayvideo.advertisers.channels.patch({ + * // The ID of the advertiser that owns the created channel. * advertiserId: '[^/]+', - * // Output only. The unique ID of the creative. Assigned by the system. - * creativeId: '[^/]+', + * // Output only. The unique ID of the channel. Assigned by the system. + * channelId: 'placeholder-value', + * // The ID of the partner that owns the created channel. + * partnerId: 'placeholder-value', * // Required. The mask to control which fields to update. * updateMask: 'placeholder-value', * @@ -12823,53 +12895,13 @@ export namespace displayvideo_v3 { * requestBody: { * // request body parameters * // { - * // "additionalDimensions": [], * // "advertiserId": "my_advertiserId", - * // "appendedTag": "my_appendedTag", - * // "assets": [], - * // "cmPlacementId": "my_cmPlacementId", - * // "cmTrackingAd": {}, - * // "companionCreativeIds": [], - * // "counterEvents": [], - * // "createTime": "my_createTime", - * // "creativeAttributes": [], - * // "creativeId": "my_creativeId", - * // "creativeType": "my_creativeType", - * // "dimensions": {}, + * // "channelId": "my_channelId", * // "displayName": "my_displayName", - * // "dynamic": false, - * // "entityStatus": "my_entityStatus", - * // "exitEvents": [], - * // "expandOnHover": false, - * // "expandingDirection": "my_expandingDirection", - * // "hostingSource": "my_hostingSource", - * // "html5Video": false, - * // "iasCampaignMonitoring": false, - * // "integrationCode": "my_integrationCode", - * // "jsTrackerUrl": "my_jsTrackerUrl", - * // "lineItemIds": [], - * // "mediaDuration": "my_mediaDuration", - * // "mp3Audio": false, * // "name": "my_name", - * // "notes": "my_notes", - * // "obaIcon": {}, - * // "oggAudio": false, - * // "progressOffset": {}, - * // "requireHtml5": false, - * // "requireMraid": false, - * // "requirePingForAttribution": false, - * // "reviewStatus": {}, - * // "skipOffset": {}, - * // "skippable": false, - * // "thirdPartyTag": "my_thirdPartyTag", - * // "thirdPartyUrls": [], - * // "timerEvents": [], - * // "trackerUrls": [], - * // "transcodes": [], - * // "universalAdId": {}, - * // "updateTime": "my_updateTime", - * // "vastTagUrl": "my_vastTagUrl", - * // "vpaid": false + * // "negativelyTargetedLineItemCount": "my_negativelyTargetedLineItemCount", + * // "partnerId": "my_partnerId", + * // "positivelyTargetedLineItemCount": "my_positivelyTargetedLineItemCount" * // } * }, * }); @@ -12877,53 +12909,13 @@ export namespace displayvideo_v3 { * * // Example response * // { - * // "additionalDimensions": [], * // "advertiserId": "my_advertiserId", - * // "appendedTag": "my_appendedTag", - * // "assets": [], - * // "cmPlacementId": "my_cmPlacementId", - * // "cmTrackingAd": {}, - * // "companionCreativeIds": [], - * // "counterEvents": [], - * // "createTime": "my_createTime", - * // "creativeAttributes": [], - * // "creativeId": "my_creativeId", - * // "creativeType": "my_creativeType", - * // "dimensions": {}, + * // "channelId": "my_channelId", * // "displayName": "my_displayName", - * // "dynamic": false, - * // "entityStatus": "my_entityStatus", - * // "exitEvents": [], - * // "expandOnHover": false, - * // "expandingDirection": "my_expandingDirection", - * // "hostingSource": "my_hostingSource", - * // "html5Video": false, - * // "iasCampaignMonitoring": false, - * // "integrationCode": "my_integrationCode", - * // "jsTrackerUrl": "my_jsTrackerUrl", - * // "lineItemIds": [], - * // "mediaDuration": "my_mediaDuration", - * // "mp3Audio": false, * // "name": "my_name", - * // "notes": "my_notes", - * // "obaIcon": {}, - * // "oggAudio": false, - * // "progressOffset": {}, - * // "requireHtml5": false, - * // "requireMraid": false, - * // "requirePingForAttribution": false, - * // "reviewStatus": {}, - * // "skipOffset": {}, - * // "skippable": false, - * // "thirdPartyTag": "my_thirdPartyTag", - * // "thirdPartyUrls": [], - * // "timerEvents": [], - * // "trackerUrls": [], - * // "transcodes": [], - * // "universalAdId": {}, - * // "updateTime": "my_updateTime", - * // "vastTagUrl": "my_vastTagUrl", - * // "vpaid": false + * // "negativelyTargetedLineItemCount": "my_negativelyTargetedLineItemCount", + * // "partnerId": "my_partnerId", + * // "positivelyTargetedLineItemCount": "my_positivelyTargetedLineItemCount" * // } * } * @@ -12940,52 +12932,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Advertisers$Creatives$Patch, + params: Params$Resource$Advertisers$Channels$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Advertisers$Creatives$Patch, + params?: Params$Resource$Advertisers$Channels$Patch, options?: MethodOptions - ): Promise>; + ): Promise>; patch( - params: Params$Resource$Advertisers$Creatives$Patch, + params: Params$Resource$Advertisers$Channels$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Advertisers$Creatives$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Channels$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Advertisers$Creatives$Patch, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Channels$Patch, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; + patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Advertisers$Creatives$Patch - | BodyResponseCallback + | Params$Resource$Advertisers$Channels$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Creatives$Patch; + {}) as Params$Resource$Advertisers$Channels$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Creatives$Patch; + params = {} as Params$Resource$Advertisers$Channels$Patch; options = {}; } @@ -12999,8 +12991,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/advertisers/{+advertiserId}/creatives/{+creativeId}' + rootUrl + '/v3/advertisers/{+advertiserId}/channels/{channelId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -13008,63 +12999,61 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'creativeId'], - pathParams: ['advertiserId', 'creativeId'], + requiredParams: ['advertiserId', 'channelId'], + pathParams: ['advertiserId', 'channelId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Advertisers$Creatives$Create extends StandardParameters { + export interface Params$Resource$Advertisers$Channels$Create extends StandardParameters { /** - * Output only. The unique ID of the advertiser the creative belongs to. + * The ID of the advertiser that owns the created channel. */ advertiserId?: string; + /** + * The ID of the partner that owns the created channel. + */ + partnerId?: string; /** * Request body metadata */ - requestBody?: Schema$Creative; + requestBody?: Schema$Channel; } - export interface Params$Resource$Advertisers$Creatives$Delete extends StandardParameters { + export interface Params$Resource$Advertisers$Channels$Get extends StandardParameters { /** - * The ID of the advertiser this creative belongs to. + * The ID of the advertiser that owns the fetched channel. */ advertiserId?: string; /** - * The ID of the creative to be deleted. - */ - creativeId?: string; - } - export interface Params$Resource$Advertisers$Creatives$Get extends StandardParameters { - /** - * Required. The ID of the advertiser this creative belongs to. + * Required. The ID of the channel to fetch. */ - advertiserId?: string; + channelId?: string; /** - * Required. The ID of the creative to fetch. + * The ID of the partner that owns the fetched channel. */ - creativeId?: string; + partnerId?: string; } - export interface Params$Resource$Advertisers$Creatives$List extends StandardParameters { + export interface Params$Resource$Advertisers$Channels$List extends StandardParameters { /** - * Required. The ID of the advertiser to list creatives for. + * The ID of the advertiser that owns the channels. */ advertiserId?: string; /** - * Allows filtering by creative fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `lineItemIds` field must use the `HAS (:)` operator. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. * For `entityStatus`, `minDuration`, `maxDuration`, `updateTime`, and `dynamic` fields, there may be at most one restriction. Supported Fields: * `approvalStatus` * `creativeId` * `creativeType` * `dimensions` (input in the form of `{width\}x{height\}`) * `dynamic` * `entityStatus` * `exchangeReviewStatus` (input in the form of `{exchange\}-{reviewStatus\}`) * `lineItemIds` * `maxDuration` (input in the form of `{duration\}s`. Only seconds are supported) * `minDuration` (input in the form of `{duration\}s`. Only seconds are supported) * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Notes: * For `updateTime`, a creative resource's field value reflects the last time that a creative has been updated, which includes updates made by the system (e.g. creative review updates). Examples: * All native creatives: `creativeType="CREATIVE_TYPE_NATIVE"` * All active creatives with 300x400 or 50x100 dimensions: `entityStatus="ENTITY_STATUS_ACTIVE" AND (dimensions="300x400" OR dimensions="50x100")` * All dynamic creatives that are approved by AdX or AppNexus, with a minimum duration of 5 seconds and 200ms: `dynamic="true" AND minDuration="5.2s" AND (exchangeReviewStatus="EXCHANGE_GOOGLE_AD_MANAGER-REVIEW_STATUS_APPROVED" OR exchangeReviewStatus="EXCHANGE_APPNEXUS-REVIEW_STATUS_APPROVED")` * All video creatives that are associated with line item ID 1 or 2: `creativeType="CREATIVE_TYPE_VIDEO" AND (lineItemIds:1 OR lineItemIds:2)` * Find creatives by multiple creative IDs: `creativeId=1 OR creativeId=2` * All creatives with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * Allows filtering by channel fields. Supported syntax: * Filter expressions for channel can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All channels for which the display name contains "google": `displayName : "google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ filter?: string; /** - * Field by which to sort the list. Acceptable values are: * `creativeId` (default) * `createTime` * `mediaDuration` * `dimensions` (sorts by width first, then by height) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `createTime desc`. + * Field by which to sort the list. Acceptable values are: * `displayName` (default) * `channelId` The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `displayName desc`. */ orderBy?: string; /** @@ -13072,19 +13061,27 @@ export namespace displayvideo_v3 { */ pageSize?: number; /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCreatives` method. If not specified, the first page of results will be returned. + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListChannels` method. If not specified, the first page of results will be returned. */ pageToken?: string; + /** + * The ID of the partner that owns the channels. + */ + partnerId?: string; } - export interface Params$Resource$Advertisers$Creatives$Patch extends StandardParameters { + export interface Params$Resource$Advertisers$Channels$Patch extends StandardParameters { /** - * Output only. The unique ID of the advertiser the creative belongs to. + * The ID of the advertiser that owns the created channel. */ advertiserId?: string; /** - * Output only. The unique ID of the creative. Assigned by the system. + * Output only. The unique ID of the channel. Assigned by the system. */ - creativeId?: string; + channelId?: string; + /** + * The ID of the partner that owns the created channel. + */ + partnerId?: string; /** * Required. The mask to control which fields to update. */ @@ -13093,17 +13090,17 @@ export namespace displayvideo_v3 { /** * Request body metadata */ - requestBody?: Schema$Creative; + requestBody?: Schema$Channel; } - export class Resource$Advertisers$Insertionorders { + export class Resource$Advertisers$Channels$Sites { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Creates a new insertion order. Returns the newly created insertion order if successful. + * Bulk edits sites under a single channel. The operation will delete the sites provided in BulkEditSitesRequest.deleted_sites and then create the sites provided in BulkEditSitesRequest.created_sites. * @example * ```js * // Before running the sample: @@ -13132,31 +13129,20 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.insertionOrders.create({ - * // Output only. The unique ID of the advertiser the insertion order belongs to. - * advertiserId: '[^/]+', + * const res = await displayvideo.advertisers.channels.sites.bulkEdit({ + * // The ID of the advertiser that owns the parent channel. + * advertiserId: 'placeholder-value', + * // Required. The ID of the parent channel to which the sites belong. + * channelId: '[^/]+', * * // Request body metadata * requestBody: { * // request body parameters * // { * // "advertiserId": "my_advertiserId", - * // "bidStrategy": {}, - * // "budget": {}, - * // "campaignId": "my_campaignId", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "frequencyCap": {}, - * // "insertionOrderId": "my_insertionOrderId", - * // "insertionOrderType": "my_insertionOrderType", - * // "integrationDetails": {}, - * // "kpi": {}, - * // "name": "my_name", - * // "optimizationObjective": "my_optimizationObjective", - * // "pacing": {}, - * // "partnerCosts": [], - * // "reservationType": "my_reservationType", - * // "updateTime": "my_updateTime" + * // "createdSites": [], + * // "deletedSites": [], + * // "partnerId": "my_partnerId" * // } * }, * }); @@ -13164,23 +13150,7 @@ export namespace displayvideo_v3 { * * // Example response * // { - * // "advertiserId": "my_advertiserId", - * // "bidStrategy": {}, - * // "budget": {}, - * // "campaignId": "my_campaignId", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "frequencyCap": {}, - * // "insertionOrderId": "my_insertionOrderId", - * // "insertionOrderType": "my_insertionOrderType", - * // "integrationDetails": {}, - * // "kpi": {}, - * // "name": "my_name", - * // "optimizationObjective": "my_optimizationObjective", - * // "pacing": {}, - * // "partnerCosts": [], - * // "reservationType": "my_reservationType", - * // "updateTime": "my_updateTime" + * // "sites": [] * // } * } * @@ -13196,53 +13166,57 @@ export namespace displayvideo_v3 { * @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$Advertisers$Insertionorders$Create, + bulkEdit( + params: Params$Resource$Advertisers$Channels$Sites$Bulkedit, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Advertisers$Insertionorders$Create, + bulkEdit( + params?: Params$Resource$Advertisers$Channels$Sites$Bulkedit, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Advertisers$Insertionorders$Create, + ): Promise>; + bulkEdit( + params: Params$Resource$Advertisers$Channels$Sites$Bulkedit, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Insertionorders$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + bulkEdit( + params: Params$Resource$Advertisers$Channels$Sites$Bulkedit, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Insertionorders$Create, - callback: BodyResponseCallback + bulkEdit( + params: Params$Resource$Advertisers$Channels$Sites$Bulkedit, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + bulkEdit( + callback: BodyResponseCallback + ): void; + bulkEdit( paramsOrCallback?: - | Params$Resource$Advertisers$Insertionorders$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Channels$Sites$Bulkedit + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Insertionorders$Create; + {}) as Params$Resource$Advertisers$Channels$Sites$Bulkedit; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Insertionorders$Create; + params = {} as Params$Resource$Advertisers$Channels$Sites$Bulkedit; options = {}; } @@ -13256,7 +13230,8 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/insertionOrders' + rootUrl + + '/v3/advertisers/{advertiserId}/channels/{+channelId}/sites:bulkEdit' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -13264,22 +13239,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'channelId'], + pathParams: ['advertiserId', 'channelId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes an insertion order. Returns error code `NOT_FOUND` if the insertion order does not exist. The insertion order should be archived first, i.e. set entity_status to `ENTITY_STATUS_ARCHIVED`, to be able to delete it. + * Creates a site in a channel. * @example * ```js * // Before running the sample: @@ -13308,16 +13283,30 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.insertionOrders.delete({ - * // The ID of the advertiser this insertion order belongs to. - * advertiserId: '[^/]+', - * // The ID of the insertion order to delete. - * insertionOrderId: '[^/]+', + * const res = await displayvideo.advertisers.channels.sites.create({ + * // The ID of the advertiser that owns the parent channel. + * advertiserId: 'placeholder-value', + * // Required. The ID of the parent channel in which the site will be created. + * channelId: '[^/]+', + * // The ID of the partner that owns the parent channel. + * partnerId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "name": "my_name", + * // "urlOrAppId": "my_urlOrAppId" + * // } + * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "name": "my_name", + * // "urlOrAppId": "my_urlOrAppId" + * // } * } * * main().catch(e => { @@ -13332,53 +13321,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Insertionorders$Delete, + create( + params: Params$Resource$Advertisers$Channels$Sites$Create, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Advertisers$Insertionorders$Delete, + create( + params?: Params$Resource$Advertisers$Channels$Sites$Create, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Advertisers$Insertionorders$Delete, + ): Promise>; + create( + params: Params$Resource$Advertisers$Channels$Sites$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Insertionorders$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Channels$Sites$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Insertionorders$Delete, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Channels$Sites$Create, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Advertisers$Insertionorders$Delete - | BodyResponseCallback + | Params$Resource$Advertisers$Channels$Sites$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Insertionorders$Delete; + {}) as Params$Resource$Advertisers$Channels$Sites$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Insertionorders$Delete; + params = {} as Params$Resource$Advertisers$Channels$Sites$Create; options = {}; } @@ -13393,30 +13382,30 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/insertionOrders/{+insertionOrderId}' + '/v3/advertisers/{advertiserId}/channels/{+channelId}/sites' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'insertionOrderId'], - pathParams: ['advertiserId', 'insertionOrderId'], + requiredParams: ['advertiserId', 'channelId'], + pathParams: ['advertiserId', 'channelId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets an insertion order. Returns error code `NOT_FOUND` if the insertion order does not exist. + * Deletes a site from a channel. * @example * ```js * // Before running the sample: @@ -13445,34 +13434,20 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.insertionOrders.get({ - * // Required. The ID of the advertiser this insertion order belongs to. - * advertiserId: '[^/]+', - * // Required. The ID of the insertion order to fetch. - * insertionOrderId: '[^/]+', + * const res = await displayvideo.advertisers.channels.sites.delete({ + * // The ID of the advertiser that owns the parent channel. + * advertiserId: 'placeholder-value', + * // Required. The ID of the parent channel to which the site belongs. + * channelId: '[^/]+', + * // The ID of the partner that owns the parent channel. + * partnerId: 'placeholder-value', + * // Required. The URL or app ID of the site to delete. + * urlOrAppId: '[^/]+', * }); * console.log(res.data); * * // Example response - * // { - * // "advertiserId": "my_advertiserId", - * // "bidStrategy": {}, - * // "budget": {}, - * // "campaignId": "my_campaignId", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "frequencyCap": {}, - * // "insertionOrderId": "my_insertionOrderId", - * // "insertionOrderType": "my_insertionOrderType", - * // "integrationDetails": {}, - * // "kpi": {}, - * // "name": "my_name", - * // "optimizationObjective": "my_optimizationObjective", - * // "pacing": {}, - * // "partnerCosts": [], - * // "reservationType": "my_reservationType", - * // "updateTime": "my_updateTime" - * // } + * // {} * } * * main().catch(e => { @@ -13487,53 +13462,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Insertionorders$Get, + delete( + params: Params$Resource$Advertisers$Channels$Sites$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Advertisers$Insertionorders$Get, + delete( + params?: Params$Resource$Advertisers$Channels$Sites$Delete, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Advertisers$Insertionorders$Get, + ): Promise>; + delete( + params: Params$Resource$Advertisers$Channels$Sites$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Insertionorders$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Channels$Sites$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Insertionorders$Get, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Channels$Sites$Delete, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Advertisers$Insertionorders$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Channels$Sites$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Insertionorders$Get; + {}) as Params$Resource$Advertisers$Channels$Sites$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Insertionorders$Get; + params = {} as Params$Resource$Advertisers$Channels$Sites$Delete; options = {}; } @@ -13548,30 +13523,30 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/insertionOrders/{+insertionOrderId}' + '/v3/advertisers/{advertiserId}/channels/{+channelId}/sites/{+urlOrAppId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'insertionOrderId'], - pathParams: ['advertiserId', 'insertionOrderId'], + requiredParams: ['advertiserId', 'channelId', 'urlOrAppId'], + pathParams: ['advertiserId', 'channelId', 'urlOrAppId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists insertion orders in an advertiser. The order is defined by the order_by parameter. If a filter by entity_status is not specified, insertion orders with `ENTITY_STATUS_ARCHIVED` will not be included in the results. + * Lists sites in a channel. * @example * ```js * // Before running the sample: @@ -13600,24 +13575,28 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.insertionOrders.list({ - * // Required. The ID of the advertiser to list insertion orders for. + * const res = await displayvideo.advertisers.channels.sites.list({ + * // The ID of the advertiser that owns the parent channel. * advertiserId: '[^/]+', - * // Allows filtering by insertion order fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All insertion orders under a campaign: `campaignId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` insertion orders under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED")` * All insertion orders with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime<="2020-11-04T18:54:47Z"` * All insertion orders with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * "displayName" (default) * "entityStatus" * "updateTime" The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * // Required. The ID of the parent channel to which the requested sites belong. + * channelId: '[^/]+', + * // Allows filtering by site fields. Supported syntax: * Filter expressions for site retrieval can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `urlOrAppId` Examples: * All sites for which the URL or app ID contains "google": `urlOrAppId : "google"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `urlOrAppId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `urlOrAppId desc`. * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * // Requested page size. Must be between `1` and `10000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInsertionOrders` method. If not specified, the first page of results will be returned. + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListSites` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', + * // The ID of the partner that owns the parent channel. + * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "insertionOrders": [], - * // "nextPageToken": "my_nextPageToken" + * // "nextPageToken": "my_nextPageToken", + * // "sites": [] * // } * } * @@ -13634,56 +13613,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Advertisers$Insertionorders$List, + params: Params$Resource$Advertisers$Channels$Sites$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Advertisers$Insertionorders$List, + params?: Params$Resource$Advertisers$Channels$Sites$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Advertisers$Insertionorders$List, + params: Params$Resource$Advertisers$Channels$Sites$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Advertisers$Insertionorders$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Advertisers$Insertionorders$List, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Channels$Sites$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Channels$Sites$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Advertisers$Insertionorders$List - | BodyResponseCallback + | Params$Resource$Advertisers$Channels$Sites$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Insertionorders$List; + {}) as Params$Resource$Advertisers$Channels$Sites$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Insertionorders$List; + params = {} as Params$Resource$Advertisers$Channels$Sites$List; options = {}; } @@ -13697,7 +13672,8 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/insertionOrders' + rootUrl + + '/v3/advertisers/{+advertiserId}/channels/{+channelId}/sites' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -13705,22 +13681,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'channelId'], + pathParams: ['advertiserId', 'channelId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates an existing insertion order. Returns the updated insertion order if successful. + * Replaces all of the sites under a single channel. The operation will replace the sites under a channel with the sites provided in ReplaceSitesRequest.new_sites. **This method regularly experiences high latency.** We recommend [increasing your default timeout](/display-video/api/guides/best-practices/timeouts#client_library_timeout) to avoid errors. * @example * ```js * // Before running the sample: @@ -13749,35 +13725,19 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.insertionOrders.patch({ - * // Output only. The unique ID of the advertiser the insertion order belongs to. - * advertiserId: '[^/]+', - * // Output only. The unique ID of the insertion order. Assigned by the system. - * insertionOrderId: '[^/]+', - * // Required. The mask to control which fields to update. - * updateMask: 'placeholder-value', + * const res = await displayvideo.advertisers.channels.sites.replace({ + * // The ID of the advertiser that owns the parent channel. + * advertiserId: 'placeholder-value', + * // Required. The ID of the parent channel whose sites will be replaced. + * channelId: '[^/]+', * * // Request body metadata * requestBody: { * // request body parameters * // { * // "advertiserId": "my_advertiserId", - * // "bidStrategy": {}, - * // "budget": {}, - * // "campaignId": "my_campaignId", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "frequencyCap": {}, - * // "insertionOrderId": "my_insertionOrderId", - * // "insertionOrderType": "my_insertionOrderType", - * // "integrationDetails": {}, - * // "kpi": {}, - * // "name": "my_name", - * // "optimizationObjective": "my_optimizationObjective", - * // "pacing": {}, - * // "partnerCosts": [], - * // "reservationType": "my_reservationType", - * // "updateTime": "my_updateTime" + * // "newSites": [], + * // "partnerId": "my_partnerId" * // } * }, * }); @@ -13785,23 +13745,7 @@ export namespace displayvideo_v3 { * * // Example response * // { - * // "advertiserId": "my_advertiserId", - * // "bidStrategy": {}, - * // "budget": {}, - * // "campaignId": "my_campaignId", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "frequencyCap": {}, - * // "insertionOrderId": "my_insertionOrderId", - * // "insertionOrderType": "my_insertionOrderType", - * // "integrationDetails": {}, - * // "kpi": {}, - * // "name": "my_name", - * // "optimizationObjective": "my_optimizationObjective", - * // "pacing": {}, - * // "partnerCosts": [], - * // "reservationType": "my_reservationType", - * // "updateTime": "my_updateTime" + * // "sites": [] * // } * } * @@ -13817,53 +13761,55 @@ export namespace displayvideo_v3 { * @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$Advertisers$Insertionorders$Patch, + replace( + params: Params$Resource$Advertisers$Channels$Sites$Replace, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Advertisers$Insertionorders$Patch, + replace( + params?: Params$Resource$Advertisers$Channels$Sites$Replace, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Advertisers$Insertionorders$Patch, + ): Promise>; + replace( + params: Params$Resource$Advertisers$Channels$Sites$Replace, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Advertisers$Insertionorders$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + replace( + params: Params$Resource$Advertisers$Channels$Sites$Replace, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Advertisers$Insertionorders$Patch, - callback: BodyResponseCallback + replace( + params: Params$Resource$Advertisers$Channels$Sites$Replace, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + replace(callback: BodyResponseCallback): void; + replace( paramsOrCallback?: - | Params$Resource$Advertisers$Insertionorders$Patch - | BodyResponseCallback + | Params$Resource$Advertisers$Channels$Sites$Replace + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Insertionorders$Patch; + {}) as Params$Resource$Advertisers$Channels$Sites$Replace; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Insertionorders$Patch; + params = {} as Params$Resource$Advertisers$Channels$Sites$Replace; options = {}; } @@ -13878,110 +13824,135 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/insertionOrders/{+insertionOrderId}' + '/v3/advertisers/{advertiserId}/channels/{+channelId}/sites:replace' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'insertionOrderId'], - pathParams: ['advertiserId', 'insertionOrderId'], + requiredParams: ['advertiserId', 'channelId'], + pathParams: ['advertiserId', 'channelId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Advertisers$Insertionorders$Create extends StandardParameters { + export interface Params$Resource$Advertisers$Channels$Sites$Bulkedit extends StandardParameters { /** - * Output only. The unique ID of the advertiser the insertion order belongs to. + * The ID of the advertiser that owns the parent channel. */ advertiserId?: string; + /** + * Required. The ID of the parent channel to which the sites belong. + */ + channelId?: string; /** * Request body metadata */ - requestBody?: Schema$InsertionOrder; + requestBody?: Schema$BulkEditSitesRequest; } - export interface Params$Resource$Advertisers$Insertionorders$Delete extends StandardParameters { + export interface Params$Resource$Advertisers$Channels$Sites$Create extends StandardParameters { /** - * The ID of the advertiser this insertion order belongs to. + * The ID of the advertiser that owns the parent channel. */ advertiserId?: string; /** - * The ID of the insertion order to delete. + * Required. The ID of the parent channel in which the site will be created. */ - insertionOrderId?: string; + channelId?: string; + /** + * The ID of the partner that owns the parent channel. + */ + partnerId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Site; } - export interface Params$Resource$Advertisers$Insertionorders$Get extends StandardParameters { + export interface Params$Resource$Advertisers$Channels$Sites$Delete extends StandardParameters { /** - * Required. The ID of the advertiser this insertion order belongs to. + * The ID of the advertiser that owns the parent channel. */ advertiserId?: string; /** - * Required. The ID of the insertion order to fetch. + * Required. The ID of the parent channel to which the site belongs. */ - insertionOrderId?: string; + channelId?: string; + /** + * The ID of the partner that owns the parent channel. + */ + partnerId?: string; + /** + * Required. The URL or app ID of the site to delete. + */ + urlOrAppId?: string; } - export interface Params$Resource$Advertisers$Insertionorders$List extends StandardParameters { + export interface Params$Resource$Advertisers$Channels$Sites$List extends StandardParameters { /** - * Required. The ID of the advertiser to list insertion orders for. + * The ID of the advertiser that owns the parent channel. */ advertiserId?: string; /** - * Allows filtering by insertion order fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All insertion orders under a campaign: `campaignId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` insertion orders under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED")` * All insertion orders with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime<="2020-11-04T18:54:47Z"` * All insertion orders with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * Required. The ID of the parent channel to which the requested sites belong. + */ + channelId?: string; + /** + * Allows filtering by site fields. Supported syntax: * Filter expressions for site retrieval can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `urlOrAppId` Examples: * All sites for which the URL or app ID contains "google": `urlOrAppId : "google"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ filter?: string; /** - * Field by which to sort the list. Acceptable values are: * "displayName" (default) * "entityStatus" * "updateTime" The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * Field by which to sort the list. Acceptable values are: * `urlOrAppId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `urlOrAppId desc`. */ orderBy?: string; /** - * Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * Requested page size. Must be between `1` and `10000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. */ pageSize?: number; /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInsertionOrders` method. If not specified, the first page of results will be returned. + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListSites` method. If not specified, the first page of results will be returned. */ pageToken?: string; - } - export interface Params$Resource$Advertisers$Insertionorders$Patch extends StandardParameters { /** - * Output only. The unique ID of the advertiser the insertion order belongs to. + * The ID of the partner that owns the parent channel. */ - advertiserId?: string; + partnerId?: string; + } + export interface Params$Resource$Advertisers$Channels$Sites$Replace extends StandardParameters { /** - * Output only. The unique ID of the insertion order. Assigned by the system. + * The ID of the advertiser that owns the parent channel. */ - insertionOrderId?: string; + advertiserId?: string; /** - * Required. The mask to control which fields to update. + * Required. The ID of the parent channel whose sites will be replaced. */ - updateMask?: string; + channelId?: string; /** * Request body metadata */ - requestBody?: Schema$InsertionOrder; + requestBody?: Schema$ReplaceSitesRequest; } - export class Resource$Advertisers$Invoices { + export class Resource$Advertisers$Creatives { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Lists invoices posted for an advertiser in a given month. Invoices generated by billing profiles with a "Partner" invoice level are not retrievable through this method. + * Creates a new creative. Returns the newly created creative if successful. A ["Standard" user role](//support.google.com/displayvideo/answer/2723011) or greater for the parent advertiser or partner is required to make this request. * @example * ```js * // Before running the sample: @@ -14002,10 +13973,7 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/display-video', - * 'https://www.googleapis.com/auth/display-video-mediaplanning', - * ], + * scopes: ['https://www.googleapis.com/auth/display-video'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14013,24 +13981,115 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.invoices.list({ - * // Required. The ID of the advertiser to list invoices for. + * const res = await displayvideo.advertisers.creatives.create({ + * // Output only. The unique ID of the advertiser the creative belongs to. * advertiserId: '[^/]+', - * // The month to list the invoices for. If not set, the request will retrieve invoices for the previous month. Must be in the format YYYYMM. - * issueMonth: 'placeholder-value', - * // Select type of invoice to retrieve for Loi Sapin advertisers. Only applicable to Loi Sapin advertisers. Will be ignored otherwise. - * loiSapinInvoiceType: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInvoices` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "additionalDimensions": [], + * // "advertiserId": "my_advertiserId", + * // "appendedTag": "my_appendedTag", + * // "assets": [], + * // "cmPlacementId": "my_cmPlacementId", + * // "cmTrackingAd": {}, + * // "companionCreativeIds": [], + * // "counterEvents": [], + * // "createTime": "my_createTime", + * // "creativeAttributes": [], + * // "creativeId": "my_creativeId", + * // "creativeType": "my_creativeType", + * // "dimensions": {}, + * // "displayName": "my_displayName", + * // "dynamic": false, + * // "entityStatus": "my_entityStatus", + * // "exitEvents": [], + * // "expandOnHover": false, + * // "expandingDirection": "my_expandingDirection", + * // "hostingSource": "my_hostingSource", + * // "html5Video": false, + * // "iasCampaignMonitoring": false, + * // "integrationCode": "my_integrationCode", + * // "jsTrackerUrl": "my_jsTrackerUrl", + * // "lineItemIds": [], + * // "mediaDuration": "my_mediaDuration", + * // "mp3Audio": false, + * // "name": "my_name", + * // "notes": "my_notes", + * // "obaIcon": {}, + * // "oggAudio": false, + * // "progressOffset": {}, + * // "requireHtml5": false, + * // "requireMraid": false, + * // "requirePingForAttribution": false, + * // "reviewStatus": {}, + * // "skipOffset": {}, + * // "skippable": false, + * // "thirdPartyTag": "my_thirdPartyTag", + * // "thirdPartyUrls": [], + * // "timerEvents": [], + * // "trackerUrls": [], + * // "transcodes": [], + * // "universalAdId": {}, + * // "updateTime": "my_updateTime", + * // "vastTagUrl": "my_vastTagUrl", + * // "vpaid": false + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "invoices": [], - * // "nextPageToken": "my_nextPageToken" + * // "additionalDimensions": [], + * // "advertiserId": "my_advertiserId", + * // "appendedTag": "my_appendedTag", + * // "assets": [], + * // "cmPlacementId": "my_cmPlacementId", + * // "cmTrackingAd": {}, + * // "companionCreativeIds": [], + * // "counterEvents": [], + * // "createTime": "my_createTime", + * // "creativeAttributes": [], + * // "creativeId": "my_creativeId", + * // "creativeType": "my_creativeType", + * // "dimensions": {}, + * // "displayName": "my_displayName", + * // "dynamic": false, + * // "entityStatus": "my_entityStatus", + * // "exitEvents": [], + * // "expandOnHover": false, + * // "expandingDirection": "my_expandingDirection", + * // "hostingSource": "my_hostingSource", + * // "html5Video": false, + * // "iasCampaignMonitoring": false, + * // "integrationCode": "my_integrationCode", + * // "jsTrackerUrl": "my_jsTrackerUrl", + * // "lineItemIds": [], + * // "mediaDuration": "my_mediaDuration", + * // "mp3Audio": false, + * // "name": "my_name", + * // "notes": "my_notes", + * // "obaIcon": {}, + * // "oggAudio": false, + * // "progressOffset": {}, + * // "requireHtml5": false, + * // "requireMraid": false, + * // "requirePingForAttribution": false, + * // "reviewStatus": {}, + * // "skipOffset": {}, + * // "skippable": false, + * // "thirdPartyTag": "my_thirdPartyTag", + * // "thirdPartyUrls": [], + * // "timerEvents": [], + * // "trackerUrls": [], + * // "transcodes": [], + * // "universalAdId": {}, + * // "updateTime": "my_updateTime", + * // "vastTagUrl": "my_vastTagUrl", + * // "vpaid": false * // } * } * @@ -14046,55 +14105,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Invoices$List, + create( + params: Params$Resource$Advertisers$Creatives$Create, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Invoices$List, + create( + params?: Params$Resource$Advertisers$Creatives$Create, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Advertisers$Invoices$List, + ): Promise>; + create( + params: Params$Resource$Advertisers$Creatives$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Invoices$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Creatives$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Invoices$List, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Creatives$Create, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Advertisers$Invoices$List - | BodyResponseCallback + | Params$Resource$Advertisers$Creatives$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Invoices$List; + {}) as Params$Resource$Advertisers$Creatives$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Invoices$List; + params = {} as Params$Resource$Advertisers$Creatives$Create; options = {}; } @@ -14107,11 +14164,10 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/advertisers/{+advertiserId}/invoices').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: ( + rootUrl + '/v3/advertisers/{+advertiserId}/creatives' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -14122,17 +14178,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the invoice currency used by an advertiser in a given month. + * Deletes a creative. Returns error code `NOT_FOUND` if the creative does not exist. The creative should be archived first, i.e. set entity_status to `ENTITY_STATUS_ARCHIVED`, before it can be deleted. A ["Standard" user role](//support.google.com/displayvideo/answer/2723011) or greater for the parent advertiser or partner is required to make this request. * @example * ```js * // Before running the sample: @@ -14153,10 +14209,7 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/display-video', - * 'https://www.googleapis.com/auth/display-video-mediaplanning', - * ], + * scopes: ['https://www.googleapis.com/auth/display-video'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14164,18 +14217,16 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.invoices.lookupInvoiceCurrency({ - * // Required. The ID of the advertiser to lookup currency for. + * const res = await displayvideo.advertisers.creatives.delete({ + * // The ID of the advertiser this creative belongs to. * advertiserId: '[^/]+', - * // Month for which the currency is needed. If not set, the request will return existing currency settings for the advertiser. Must be in the format YYYYMM. - * invoiceMonth: 'placeholder-value', + * // The ID of the creative to be deleted. + * creativeId: '[^/]+', * }); * console.log(res.data); * * // Example response - * // { - * // "currencyCode": "my_currencyCode" - * // } + * // {} * } * * main().catch(e => { @@ -14190,58 +14241,53 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - lookupInvoiceCurrency( - params: Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency, + delete( + params: Params$Resource$Advertisers$Creatives$Delete, options: StreamMethodOptions ): Promise>; - lookupInvoiceCurrency( - params?: Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency, + delete( + params?: Params$Resource$Advertisers$Creatives$Delete, options?: MethodOptions - ): Promise>; - lookupInvoiceCurrency( - params: Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency, + ): Promise>; + delete( + params: Params$Resource$Advertisers$Creatives$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - lookupInvoiceCurrency( - params: Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - lookupInvoiceCurrency( - params: Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Creatives$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - lookupInvoiceCurrency( - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Creatives$Delete, + callback: BodyResponseCallback ): void; - lookupInvoiceCurrency( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency - | BodyResponseCallback + | Params$Resource$Advertisers$Creatives$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency; + {}) as Params$Resource$Advertisers$Creatives$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency; + params = {} as Params$Resource$Advertisers$Creatives$Delete; options = {}; } @@ -14256,76 +14302,30 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/invoices:lookupInvoiceCurrency' + '/v3/advertisers/{+advertiserId}/creatives/{+creativeId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'creativeId'], + pathParams: ['advertiserId', 'creativeId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Advertisers$Invoices$List extends StandardParameters { - /** - * Required. The ID of the advertiser to list invoices for. - */ - advertiserId?: string; - /** - * The month to list the invoices for. If not set, the request will retrieve invoices for the previous month. Must be in the format YYYYMM. - */ - issueMonth?: string; - /** - * Select type of invoice to retrieve for Loi Sapin advertisers. Only applicable to Loi Sapin advertisers. Will be ignored otherwise. - */ - loiSapinInvoiceType?: string; - /** - * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInvoices` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - } - export interface Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency extends StandardParameters { - /** - * Required. The ID of the advertiser to lookup currency for. - */ - advertiserId?: string; - /** - * Month for which the currency is needed. If not set, the request will return existing currency settings for the advertiser. Must be in the format YYYYMM. - */ - invoiceMonth?: string; - } - - export class Resource$Advertisers$Lineitems { - context: APIRequestContext; - targetingTypes: Resource$Advertisers$Lineitems$Targetingtypes; - constructor(context: APIRequestContext) { - this.context = context; - this.targetingTypes = new Resource$Advertisers$Lineitems$Targetingtypes( - this.context - ); - } /** - * Bulk edits targeting options under multiple line items. The operation will delete the assigned targeting options provided in BulkEditAssignedTargetingOptionsRequest.delete_requests and then create the assigned targeting options provided in BulkEditAssignedTargetingOptionsRequest.create_requests. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * lineItems.bulkUpdate * lineItems.patch * assignedTargetingOptions.create * assignedTargetingOptions.delete YouTube & Partners line items cannot be created or updated using the API. + * Gets a creative. * @example * ```js * // Before running the sample: @@ -14354,28 +14354,63 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.lineItems.bulkEditAssignedTargetingOptions({ - * // Required. The ID of the advertiser the line items belong to. - * advertiserId: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createRequests": [], - * // "deleteRequests": [], - * // "lineItemIds": [] - * // } - * }, - * }); + * const res = await displayvideo.advertisers.creatives.get({ + * // Required. The ID of the advertiser this creative belongs to. + * advertiserId: '[^/]+', + * // Required. The ID of the creative to fetch. + * creativeId: '[^/]+', + * }); * console.log(res.data); * * // Example response * // { - * // "errors": [], - * // "failedLineItemIds": [], - * // "updatedLineItemIds": [] + * // "additionalDimensions": [], + * // "advertiserId": "my_advertiserId", + * // "appendedTag": "my_appendedTag", + * // "assets": [], + * // "cmPlacementId": "my_cmPlacementId", + * // "cmTrackingAd": {}, + * // "companionCreativeIds": [], + * // "counterEvents": [], + * // "createTime": "my_createTime", + * // "creativeAttributes": [], + * // "creativeId": "my_creativeId", + * // "creativeType": "my_creativeType", + * // "dimensions": {}, + * // "displayName": "my_displayName", + * // "dynamic": false, + * // "entityStatus": "my_entityStatus", + * // "exitEvents": [], + * // "expandOnHover": false, + * // "expandingDirection": "my_expandingDirection", + * // "hostingSource": "my_hostingSource", + * // "html5Video": false, + * // "iasCampaignMonitoring": false, + * // "integrationCode": "my_integrationCode", + * // "jsTrackerUrl": "my_jsTrackerUrl", + * // "lineItemIds": [], + * // "mediaDuration": "my_mediaDuration", + * // "mp3Audio": false, + * // "name": "my_name", + * // "notes": "my_notes", + * // "obaIcon": {}, + * // "oggAudio": false, + * // "progressOffset": {}, + * // "requireHtml5": false, + * // "requireMraid": false, + * // "requirePingForAttribution": false, + * // "reviewStatus": {}, + * // "skipOffset": {}, + * // "skippable": false, + * // "thirdPartyTag": "my_thirdPartyTag", + * // "thirdPartyUrls": [], + * // "timerEvents": [], + * // "trackerUrls": [], + * // "transcodes": [], + * // "universalAdId": {}, + * // "updateTime": "my_updateTime", + * // "vastTagUrl": "my_vastTagUrl", + * // "vpaid": false * // } * } * @@ -14391,62 +14426,53 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkEditAssignedTargetingOptions( - params: Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions, + get( + params: Params$Resource$Advertisers$Creatives$Get, options: StreamMethodOptions ): Promise>; - bulkEditAssignedTargetingOptions( - params?: Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions, + get( + params?: Params$Resource$Advertisers$Creatives$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - bulkEditAssignedTargetingOptions( - params: Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions, + ): Promise>; + get( + params: Params$Resource$Advertisers$Creatives$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkEditAssignedTargetingOptions( - params: Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - bulkEditAssignedTargetingOptions( - params: Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions, - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Creatives$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - bulkEditAssignedTargetingOptions( - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Creatives$Get, + callback: BodyResponseCallback ): void; - bulkEditAssignedTargetingOptions( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions - | BodyResponseCallback + | Params$Resource$Advertisers$Creatives$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions; + {}) as Params$Resource$Advertisers$Creatives$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions; + params = {} as Params$Resource$Advertisers$Creatives$Get; options = {}; } @@ -14461,32 +14487,30 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/lineItems:bulkEditAssignedTargetingOptions' + '/v3/advertisers/{+advertiserId}/creatives/{+creativeId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'creativeId'], + pathParams: ['advertiserId', 'creativeId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Lists assigned targeting options for multiple line items across targeting types. + * Lists creatives in an advertiser. The order is defined by the order_by parameter. If a filter by entity_status is not specified, creatives with `ENTITY_STATUS_ARCHIVED` will not be included in the results. * @example * ```js * // Before running the sample: @@ -14515,26 +14539,23 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.lineItems.bulkListAssignedTargetingOptions({ - * // Required. The ID of the advertiser the line items belongs to. - * advertiserId: '[^/]+', - * // Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR` on the same field. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` * `inheritance` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` or `TARGETING_TYPE_CHANNEL`: `targetingType="TARGETING_TYPE_PROXIMITY_LOCATION_LIST" OR targetingType="TARGETING_TYPE_CHANNEL"` * `AssignedTargetingOption` resources with inheritance status of `NOT_INHERITED` or `INHERITED_FROM_PARTNER`: `inheritance="NOT_INHERITED" OR inheritance="INHERITED_FROM_PARTNER"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Required. The IDs of the line items to list assigned targeting options for. - * lineItemIds: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `lineItemId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `targetingType desc`. - * orderBy: 'placeholder-value', - * // Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAssignedTargetingOptions` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * }); + * const res = await displayvideo.advertisers.creatives.list({ + * // Required. The ID of the advertiser to list creatives for. + * advertiserId: '[^/]+', + * // Allows filtering by creative fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `lineItemIds` field must use the `HAS (:)` operator. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. * For `entityStatus`, `minDuration`, `maxDuration`, `updateTime`, and `dynamic` fields, there may be at most one restriction. Supported Fields: * `approvalStatus` * `creativeId` * `creativeType` * `dimensions` (input in the form of `{width\}x{height\}`) * `dynamic` * `entityStatus` * `exchangeReviewStatus` (input in the form of `{exchange\}-{reviewStatus\}`) * `lineItemIds` * `maxDuration` (input in the form of `{duration\}s`. Only seconds are supported) * `minDuration` (input in the form of `{duration\}s`. Only seconds are supported) * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Notes: * For `updateTime`, a creative resource's field value reflects the last time that a creative has been updated, which includes updates made by the system (e.g. creative review updates). Examples: * All native creatives: `creativeType="CREATIVE_TYPE_NATIVE"` * All active creatives with 300x400 or 50x100 dimensions: `entityStatus="ENTITY_STATUS_ACTIVE" AND (dimensions="300x400" OR dimensions="50x100")` * All dynamic creatives that are approved by AdX or AppNexus, with a minimum duration of 5 seconds and 200ms: `dynamic="true" AND minDuration="5.2s" AND (exchangeReviewStatus="EXCHANGE_GOOGLE_AD_MANAGER-REVIEW_STATUS_APPROVED" OR exchangeReviewStatus="EXCHANGE_APPNEXUS-REVIEW_STATUS_APPROVED")` * All video creatives that are associated with line item ID 1 or 2: `creativeType="CREATIVE_TYPE_VIDEO" AND (lineItemIds:1 OR lineItemIds:2)` * Find creatives by multiple creative IDs: `creativeId=1 OR creativeId=2` * All creatives with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `creativeId` (default) * `createTime` * `mediaDuration` * `dimensions` (sorts by width first, then by height) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `createTime desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCreatives` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "lineItemAssignedTargetingOptions": [], + * // "creatives": [], * // "nextPageToken": "my_nextPageToken" * // } * } @@ -14551,62 +14572,55 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkListAssignedTargetingOptions( - params: Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions, + list( + params: Params$Resource$Advertisers$Creatives$List, options: StreamMethodOptions ): Promise>; - bulkListAssignedTargetingOptions( - params?: Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions, + list( + params?: Params$Resource$Advertisers$Creatives$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - bulkListAssignedTargetingOptions( - params: Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions, + ): Promise>; + list( + params: Params$Resource$Advertisers$Creatives$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkListAssignedTargetingOptions( - params: Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions, + list( + params: Params$Resource$Advertisers$Creatives$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - bulkListAssignedTargetingOptions( - params: Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Creatives$List, + callback: BodyResponseCallback ): void; - bulkListAssignedTargetingOptions( - callback: BodyResponseCallback - ): void; - bulkListAssignedTargetingOptions( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions - | BodyResponseCallback + | Params$Resource$Advertisers$Creatives$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions; + {}) as Params$Resource$Advertisers$Creatives$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions; + params = {} as Params$Resource$Advertisers$Creatives$List; options = {}; } @@ -14620,8 +14634,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/advertisers/{+advertiserId}/lineItems:bulkListAssignedTargetingOptions' + rootUrl + '/v3/advertisers/{+advertiserId}/creatives' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -14634,19 +14647,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates multiple line items. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * UpdateLineItem * assignedTargetingOptions.create * assignedTargetingOptions.delete YouTube & Partners line items cannot be created or updated using the API. + * Updates an existing creative. Returns the updated creative if successful. A ["Standard" user role](//support.google.com/displayvideo/answer/2723011) or greater for the parent advertiser or partner is required to make this request. * @example * ```js * // Before running the sample: @@ -14675,17 +14686,65 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.lineItems.bulkUpdate({ - * // Required. The ID of the advertiser this line item belongs to. + * const res = await displayvideo.advertisers.creatives.patch({ + * // Output only. The unique ID of the advertiser the creative belongs to. * advertiserId: '[^/]+', + * // Output only. The unique ID of the creative. Assigned by the system. + * creativeId: '[^/]+', + * // Required. The mask to control which fields to update. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "additionalDimensions": [], + * // "advertiserId": "my_advertiserId", + * // "appendedTag": "my_appendedTag", + * // "assets": [], + * // "cmPlacementId": "my_cmPlacementId", + * // "cmTrackingAd": {}, + * // "companionCreativeIds": [], + * // "counterEvents": [], + * // "createTime": "my_createTime", + * // "creativeAttributes": [], + * // "creativeId": "my_creativeId", + * // "creativeType": "my_creativeType", + * // "dimensions": {}, + * // "displayName": "my_displayName", + * // "dynamic": false, + * // "entityStatus": "my_entityStatus", + * // "exitEvents": [], + * // "expandOnHover": false, + * // "expandingDirection": "my_expandingDirection", + * // "hostingSource": "my_hostingSource", + * // "html5Video": false, + * // "iasCampaignMonitoring": false, + * // "integrationCode": "my_integrationCode", + * // "jsTrackerUrl": "my_jsTrackerUrl", * // "lineItemIds": [], - * // "targetLineItem": {}, - * // "updateMask": "my_updateMask" + * // "mediaDuration": "my_mediaDuration", + * // "mp3Audio": false, + * // "name": "my_name", + * // "notes": "my_notes", + * // "obaIcon": {}, + * // "oggAudio": false, + * // "progressOffset": {}, + * // "requireHtml5": false, + * // "requireMraid": false, + * // "requirePingForAttribution": false, + * // "reviewStatus": {}, + * // "skipOffset": {}, + * // "skippable": false, + * // "thirdPartyTag": "my_thirdPartyTag", + * // "thirdPartyUrls": [], + * // "timerEvents": [], + * // "trackerUrls": [], + * // "transcodes": [], + * // "universalAdId": {}, + * // "updateTime": "my_updateTime", + * // "vastTagUrl": "my_vastTagUrl", + * // "vpaid": false * // } * }, * }); @@ -14693,10 +14752,53 @@ export namespace displayvideo_v3 { * * // Example response * // { - * // "errors": [], - * // "failedLineItemIds": [], - * // "skippedLineItemIds": [], - * // "updatedLineItemIds": [] + * // "additionalDimensions": [], + * // "advertiserId": "my_advertiserId", + * // "appendedTag": "my_appendedTag", + * // "assets": [], + * // "cmPlacementId": "my_cmPlacementId", + * // "cmTrackingAd": {}, + * // "companionCreativeIds": [], + * // "counterEvents": [], + * // "createTime": "my_createTime", + * // "creativeAttributes": [], + * // "creativeId": "my_creativeId", + * // "creativeType": "my_creativeType", + * // "dimensions": {}, + * // "displayName": "my_displayName", + * // "dynamic": false, + * // "entityStatus": "my_entityStatus", + * // "exitEvents": [], + * // "expandOnHover": false, + * // "expandingDirection": "my_expandingDirection", + * // "hostingSource": "my_hostingSource", + * // "html5Video": false, + * // "iasCampaignMonitoring": false, + * // "integrationCode": "my_integrationCode", + * // "jsTrackerUrl": "my_jsTrackerUrl", + * // "lineItemIds": [], + * // "mediaDuration": "my_mediaDuration", + * // "mp3Audio": false, + * // "name": "my_name", + * // "notes": "my_notes", + * // "obaIcon": {}, + * // "oggAudio": false, + * // "progressOffset": {}, + * // "requireHtml5": false, + * // "requireMraid": false, + * // "requirePingForAttribution": false, + * // "reviewStatus": {}, + * // "skipOffset": {}, + * // "skippable": false, + * // "thirdPartyTag": "my_thirdPartyTag", + * // "thirdPartyUrls": [], + * // "timerEvents": [], + * // "trackerUrls": [], + * // "transcodes": [], + * // "universalAdId": {}, + * // "updateTime": "my_updateTime", + * // "vastTagUrl": "my_vastTagUrl", + * // "vpaid": false * // } * } * @@ -14712,57 +14814,53 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkUpdate( - params: Params$Resource$Advertisers$Lineitems$Bulkupdate, + patch( + params: Params$Resource$Advertisers$Creatives$Patch, options: StreamMethodOptions ): Promise>; - bulkUpdate( - params?: Params$Resource$Advertisers$Lineitems$Bulkupdate, + patch( + params?: Params$Resource$Advertisers$Creatives$Patch, options?: MethodOptions - ): Promise>; - bulkUpdate( - params: Params$Resource$Advertisers$Lineitems$Bulkupdate, + ): Promise>; + patch( + params: Params$Resource$Advertisers$Creatives$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkUpdate( - params: Params$Resource$Advertisers$Lineitems$Bulkupdate, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - bulkUpdate( - params: Params$Resource$Advertisers$Lineitems$Bulkupdate, - callback: BodyResponseCallback + patch( + params: Params$Resource$Advertisers$Creatives$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - bulkUpdate( - callback: BodyResponseCallback + patch( + params: Params$Resource$Advertisers$Creatives$Patch, + callback: BodyResponseCallback ): void; - bulkUpdate( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$Bulkupdate - | BodyResponseCallback + | Params$Resource$Advertisers$Creatives$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$Bulkupdate; + {}) as Params$Resource$Advertisers$Creatives$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Lineitems$Bulkupdate; + params = {} as Params$Resource$Advertisers$Creatives$Patch; options = {}; } @@ -14776,92 +14874,164 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/lineItems:bulkUpdate' + rootUrl + + '/v3/advertisers/{+advertiserId}/creatives/{+creativeId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'creativeId'], + pathParams: ['advertiserId', 'creativeId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Advertisers$Creatives$Create extends StandardParameters { /** - * Creates a new line item. Returns the newly created line item if successful. YouTube & Partners line items cannot be created or updated using the API. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const displayvideo = google.displayvideo('v3'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await displayvideo.advertisers.lineItems.create({ - * // Output only. The unique ID of the advertiser the line item belongs to. - * advertiserId: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advertiserId": "my_advertiserId", - * // "bidStrategy": {}, - * // "budget": {}, - * // "campaignId": "my_campaignId", - * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", - * // "conversionCounting": {}, - * // "creativeIds": [], - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "excludeNewExchanges": false, - * // "flight": {}, - * // "frequencyCap": {}, - * // "insertionOrderId": "my_insertionOrderId", - * // "integrationDetails": {}, - * // "lineItemId": "my_lineItemId", - * // "lineItemType": "my_lineItemType", - * // "mobileApp": {}, + * Output only. The unique ID of the advertiser the creative belongs to. + */ + advertiserId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Creative; + } + export interface Params$Resource$Advertisers$Creatives$Delete extends StandardParameters { + /** + * The ID of the advertiser this creative belongs to. + */ + advertiserId?: string; + /** + * The ID of the creative to be deleted. + */ + creativeId?: string; + } + export interface Params$Resource$Advertisers$Creatives$Get extends StandardParameters { + /** + * Required. The ID of the advertiser this creative belongs to. + */ + advertiserId?: string; + /** + * Required. The ID of the creative to fetch. + */ + creativeId?: string; + } + export interface Params$Resource$Advertisers$Creatives$List extends StandardParameters { + /** + * Required. The ID of the advertiser to list creatives for. + */ + advertiserId?: string; + /** + * Allows filtering by creative fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `lineItemIds` field must use the `HAS (:)` operator. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. * For `entityStatus`, `minDuration`, `maxDuration`, `updateTime`, and `dynamic` fields, there may be at most one restriction. Supported Fields: * `approvalStatus` * `creativeId` * `creativeType` * `dimensions` (input in the form of `{width\}x{height\}`) * `dynamic` * `entityStatus` * `exchangeReviewStatus` (input in the form of `{exchange\}-{reviewStatus\}`) * `lineItemIds` * `maxDuration` (input in the form of `{duration\}s`. Only seconds are supported) * `minDuration` (input in the form of `{duration\}s`. Only seconds are supported) * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Notes: * For `updateTime`, a creative resource's field value reflects the last time that a creative has been updated, which includes updates made by the system (e.g. creative review updates). Examples: * All native creatives: `creativeType="CREATIVE_TYPE_NATIVE"` * All active creatives with 300x400 or 50x100 dimensions: `entityStatus="ENTITY_STATUS_ACTIVE" AND (dimensions="300x400" OR dimensions="50x100")` * All dynamic creatives that are approved by AdX or AppNexus, with a minimum duration of 5 seconds and 200ms: `dynamic="true" AND minDuration="5.2s" AND (exchangeReviewStatus="EXCHANGE_GOOGLE_AD_MANAGER-REVIEW_STATUS_APPROVED" OR exchangeReviewStatus="EXCHANGE_APPNEXUS-REVIEW_STATUS_APPROVED")` * All video creatives that are associated with line item ID 1 or 2: `creativeType="CREATIVE_TYPE_VIDEO" AND (lineItemIds:1 OR lineItemIds:2)` * Find creatives by multiple creative IDs: `creativeId=1 OR creativeId=2` * All creatives with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Field by which to sort the list. Acceptable values are: * `creativeId` (default) * `createTime` * `mediaDuration` * `dimensions` (sorts by width first, then by height) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `createTime desc`. + */ + orderBy?: string; + /** + * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCreatives` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + } + export interface Params$Resource$Advertisers$Creatives$Patch extends StandardParameters { + /** + * Output only. The unique ID of the advertiser the creative belongs to. + */ + advertiserId?: string; + /** + * Output only. The unique ID of the creative. Assigned by the system. + */ + creativeId?: string; + /** + * Required. The mask to control which fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Creative; + } + + export class Resource$Advertisers$Insertionorders { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new insertion order. Returns the newly created insertion order if successful. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.advertisers.insertionOrders.create({ + * // Output only. The unique ID of the advertiser the insertion order belongs to. + * advertiserId: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "budget": {}, + * // "campaignId": "my_campaignId", + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "frequencyCap": {}, + * // "insertionOrderId": "my_insertionOrderId", + * // "insertionOrderType": "my_insertionOrderType", + * // "integrationDetails": {}, + * // "kpi": {}, * // "name": "my_name", + * // "optimizationObjective": "my_optimizationObjective", * // "pacing": {}, * // "partnerCosts": [], - * // "partnerRevenueModel": {}, * // "reservationType": "my_reservationType", - * // "targetingExpansion": {}, - * // "updateTime": "my_updateTime", - * // "warningMessages": [], - * // "youtubeAndPartnersSettings": {} + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -14873,28 +15043,19 @@ export namespace displayvideo_v3 { * // "bidStrategy": {}, * // "budget": {}, * // "campaignId": "my_campaignId", - * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", - * // "conversionCounting": {}, - * // "creativeIds": [], * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", - * // "excludeNewExchanges": false, - * // "flight": {}, * // "frequencyCap": {}, * // "insertionOrderId": "my_insertionOrderId", + * // "insertionOrderType": "my_insertionOrderType", * // "integrationDetails": {}, - * // "lineItemId": "my_lineItemId", - * // "lineItemType": "my_lineItemType", - * // "mobileApp": {}, + * // "kpi": {}, * // "name": "my_name", + * // "optimizationObjective": "my_optimizationObjective", * // "pacing": {}, * // "partnerCosts": [], - * // "partnerRevenueModel": {}, * // "reservationType": "my_reservationType", - * // "targetingExpansion": {}, - * // "updateTime": "my_updateTime", - * // "warningMessages": [], - * // "youtubeAndPartnersSettings": {} + * // "updateTime": "my_updateTime" * // } * } * @@ -14911,52 +15072,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Advertisers$Lineitems$Create, + params: Params$Resource$Advertisers$Insertionorders$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Advertisers$Lineitems$Create, + params?: Params$Resource$Advertisers$Insertionorders$Create, options?: MethodOptions - ): Promise>; + ): Promise>; create( - params: Params$Resource$Advertisers$Lineitems$Create, + params: Params$Resource$Advertisers$Insertionorders$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Advertisers$Lineitems$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Insertionorders$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; create( - params: Params$Resource$Advertisers$Lineitems$Create, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Insertionorders$Create, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; + create(callback: BodyResponseCallback): void; create( paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Insertionorders$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$Create; + {}) as Params$Resource$Advertisers$Insertionorders$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Lineitems$Create; + params = {} as Params$Resource$Advertisers$Insertionorders$Create; options = {}; } @@ -14970,7 +15131,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/lineItems' + rootUrl + '/v3/advertisers/{+advertiserId}/insertionOrders' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -14983,17 +15144,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a line item. Returns error code `NOT_FOUND` if the line item does not exist. The line item should be archived first, i.e. set entity_status to `ENTITY_STATUS_ARCHIVED`, to be able to delete it. YouTube & Partners line items cannot be created or updated using the API. + * Deletes an insertion order. Returns error code `NOT_FOUND` if the insertion order does not exist. The insertion order should be archived first, i.e. set entity_status to `ENTITY_STATUS_ARCHIVED`, to be able to delete it. * @example * ```js * // Before running the sample: @@ -15022,11 +15183,11 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.lineItems.delete({ - * // The ID of the advertiser this line item belongs to. + * const res = await displayvideo.advertisers.insertionOrders.delete({ + * // The ID of the advertiser this insertion order belongs to. * advertiserId: '[^/]+', - * // The ID of the line item to delete. - * lineItemId: '[^/]+', + * // The ID of the insertion order to delete. + * insertionOrderId: '[^/]+', * }); * console.log(res.data); * @@ -15047,31 +15208,31 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Advertisers$Lineitems$Delete, + params: Params$Resource$Advertisers$Insertionorders$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Advertisers$Lineitems$Delete, + params?: Params$Resource$Advertisers$Insertionorders$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Advertisers$Lineitems$Delete, + params: Params$Resource$Advertisers$Insertionorders$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Advertisers$Lineitems$Delete, + params: Params$Resource$Advertisers$Insertionorders$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Advertisers$Lineitems$Delete, + params: Params$Resource$Advertisers$Insertionorders$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$Delete + | Params$Resource$Advertisers$Insertionorders$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -15087,12 +15248,12 @@ export namespace displayvideo_v3 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$Delete; + {}) as Params$Resource$Advertisers$Insertionorders$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Lineitems$Delete; + params = {} as Params$Resource$Advertisers$Insertionorders$Delete; options = {}; } @@ -15107,7 +15268,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}' + '/v3/advertisers/{+advertiserId}/insertionOrders/{+insertionOrderId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -15115,8 +15276,8 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'lineItemId'], - pathParams: ['advertiserId', 'lineItemId'], + requiredParams: ['advertiserId', 'insertionOrderId'], + pathParams: ['advertiserId', 'insertionOrderId'], context: this.context, }; if (callback) { @@ -15130,7 +15291,7 @@ export namespace displayvideo_v3 { } /** - * Duplicates a line item. Returns the ID of the created line item if successful. YouTube & Partners line items cannot be created or updated using the API. **This method regularly experiences high latency.** We recommend [increasing your default timeout](/display-video/api/guides/best-practices/timeouts#client_library_timeout) to avoid errors. + * Gets an insertion order. Returns error code `NOT_FOUND` if the insertion order does not exist. * @example * ```js * // Before running the sample: @@ -15159,163 +15320,11 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.lineItems.duplicate({ - * // Required. The ID of the advertiser this line item belongs to. + * const res = await displayvideo.advertisers.insertionOrders.get({ + * // Required. The ID of the advertiser this insertion order belongs to. * advertiserId: '[^/]+', - * // Required. The ID of the line item to duplicate. - * lineItemId: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", - * // "targetDisplayName": "my_targetDisplayName" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "duplicateLineItemId": "my_duplicateLineItemId" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - duplicate( - params: Params$Resource$Advertisers$Lineitems$Duplicate, - options: StreamMethodOptions - ): Promise>; - duplicate( - params?: Params$Resource$Advertisers$Lineitems$Duplicate, - options?: MethodOptions - ): Promise>; - duplicate( - params: Params$Resource$Advertisers$Lineitems$Duplicate, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - duplicate( - params: Params$Resource$Advertisers$Lineitems$Duplicate, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - duplicate( - params: Params$Resource$Advertisers$Lineitems$Duplicate, - callback: BodyResponseCallback - ): void; - duplicate( - callback: BodyResponseCallback - ): void; - duplicate( - paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$Duplicate - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$Duplicate; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Lineitems$Duplicate; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}:duplicate' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['advertiserId', 'lineItemId'], - pathParams: ['advertiserId', 'lineItemId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets a line item. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const displayvideo = google.displayvideo('v3'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await displayvideo.advertisers.lineItems.get({ - * // Required. The ID of the advertiser this line item belongs to. - * advertiserId: '[^/]+', - * // Required. The ID of the line item to fetch. - * lineItemId: '[^/]+', + * // Required. The ID of the insertion order to fetch. + * insertionOrderId: '[^/]+', * }); * console.log(res.data); * @@ -15325,28 +15334,19 @@ export namespace displayvideo_v3 { * // "bidStrategy": {}, * // "budget": {}, * // "campaignId": "my_campaignId", - * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", - * // "conversionCounting": {}, - * // "creativeIds": [], * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", - * // "excludeNewExchanges": false, - * // "flight": {}, * // "frequencyCap": {}, * // "insertionOrderId": "my_insertionOrderId", + * // "insertionOrderType": "my_insertionOrderType", * // "integrationDetails": {}, - * // "lineItemId": "my_lineItemId", - * // "lineItemType": "my_lineItemType", - * // "mobileApp": {}, + * // "kpi": {}, * // "name": "my_name", + * // "optimizationObjective": "my_optimizationObjective", * // "pacing": {}, * // "partnerCosts": [], - * // "partnerRevenueModel": {}, * // "reservationType": "my_reservationType", - * // "targetingExpansion": {}, - * // "updateTime": "my_updateTime", - * // "warningMessages": [], - * // "youtubeAndPartnersSettings": {} + * // "updateTime": "my_updateTime" * // } * } * @@ -15363,52 +15363,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Advertisers$Lineitems$Get, + params: Params$Resource$Advertisers$Insertionorders$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Advertisers$Lineitems$Get, + params?: Params$Resource$Advertisers$Insertionorders$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Advertisers$Lineitems$Get, + params: Params$Resource$Advertisers$Insertionorders$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Advertisers$Lineitems$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Insertionorders$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Advertisers$Lineitems$Get, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Insertionorders$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Insertionorders$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$Get; + {}) as Params$Resource$Advertisers$Insertionorders$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Lineitems$Get; + params = {} as Params$Resource$Advertisers$Insertionorders$Get; options = {}; } @@ -15423,7 +15423,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}' + '/v3/advertisers/{+advertiserId}/insertionOrders/{+insertionOrderId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -15431,22 +15431,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'lineItemId'], - pathParams: ['advertiserId', 'lineItemId'], + requiredParams: ['advertiserId', 'insertionOrderId'], + pathParams: ['advertiserId', 'insertionOrderId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists line items in an advertiser. The order is defined by the order_by parameter. If a filter by entity_status is not specified, line items with `ENTITY_STATUS_ARCHIVED` will not be included in the results. + * Lists insertion orders in an advertiser. The order is defined by the order_by parameter. If a filter by entity_status is not specified, insertion orders with `ENTITY_STATUS_ARCHIVED` will not be included in the results. * @example * ```js * // Before running the sample: @@ -15475,23 +15475,23 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.lineItems.list({ - * // Required. The ID of the advertiser to list line items for. + * const res = await displayvideo.advertisers.insertionOrders.list({ + * // Required. The ID of the advertiser to list insertion orders for. * advertiserId: '[^/]+', - * // Allows filtering by line item fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `insertionOrderId` * `lineItemId` * `lineItemType` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All line items under an insertion order: `insertionOrderId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT"` * All line items with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime<="2020-11-04T18:54:47Z"` * All line items with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * // Allows filtering by insertion order fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All insertion orders under a campaign: `campaignId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` insertion orders under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED")` * All insertion orders with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime<="2020-11-04T18:54:47Z"` * All insertion orders with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * // Field by which to sort the list. Acceptable values are: * "displayName" (default) * "entityStatus" * "updateTime" The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * // Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItems` method. If not specified, the first page of results will be returned. + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInsertionOrders` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "lineItems": [], + * // "insertionOrders": [], * // "nextPageToken": "my_nextPageToken" * // } * } @@ -15509,54 +15509,56 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Advertisers$Lineitems$List, + params: Params$Resource$Advertisers$Insertionorders$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Advertisers$Lineitems$List, + params?: Params$Resource$Advertisers$Insertionorders$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Advertisers$Lineitems$List, + params: Params$Resource$Advertisers$Insertionorders$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Advertisers$Lineitems$List, + params: Params$Resource$Advertisers$Insertionorders$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Advertisers$Lineitems$List, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Insertionorders$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$List - | BodyResponseCallback + | Params$Resource$Advertisers$Insertionorders$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$List; + {}) as Params$Resource$Advertisers$Insertionorders$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Lineitems$List; + params = {} as Params$Resource$Advertisers$Insertionorders$List; options = {}; } @@ -15570,7 +15572,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/lineItems' + rootUrl + '/v3/advertisers/{+advertiserId}/insertionOrders' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -15583,17 +15585,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates an existing line item. Returns the updated line item if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdateLineItems * assignedTargetingOptions.create * assignedTargetingOptions.delete YouTube & Partners line items cannot be created or updated using the API. **This method regularly experiences high latency.** We recommend [increasing your default timeout](/display-video/api/guides/best-practices/timeouts#client_library_timeout) to avoid errors. + * Updates an existing insertion order. Returns the updated insertion order if successful. * @example * ```js * // Before running the sample: @@ -15622,11 +15624,11 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.lineItems.patch({ - * // Output only. The unique ID of the advertiser the line item belongs to. + * const res = await displayvideo.advertisers.insertionOrders.patch({ + * // Output only. The unique ID of the advertiser the insertion order belongs to. * advertiserId: '[^/]+', - * // Output only. The unique ID of the line item. Assigned by the system. - * lineItemId: '[^/]+', + * // Output only. The unique ID of the insertion order. Assigned by the system. + * insertionOrderId: '[^/]+', * // Required. The mask to control which fields to update. * updateMask: 'placeholder-value', * @@ -15638,28 +15640,19 @@ export namespace displayvideo_v3 { * // "bidStrategy": {}, * // "budget": {}, * // "campaignId": "my_campaignId", - * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", - * // "conversionCounting": {}, - * // "creativeIds": [], * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", - * // "excludeNewExchanges": false, - * // "flight": {}, * // "frequencyCap": {}, * // "insertionOrderId": "my_insertionOrderId", + * // "insertionOrderType": "my_insertionOrderType", * // "integrationDetails": {}, - * // "lineItemId": "my_lineItemId", - * // "lineItemType": "my_lineItemType", - * // "mobileApp": {}, + * // "kpi": {}, * // "name": "my_name", + * // "optimizationObjective": "my_optimizationObjective", * // "pacing": {}, * // "partnerCosts": [], - * // "partnerRevenueModel": {}, * // "reservationType": "my_reservationType", - * // "targetingExpansion": {}, - * // "updateTime": "my_updateTime", - * // "warningMessages": [], - * // "youtubeAndPartnersSettings": {} + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -15671,28 +15664,19 @@ export namespace displayvideo_v3 { * // "bidStrategy": {}, * // "budget": {}, * // "campaignId": "my_campaignId", - * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", - * // "conversionCounting": {}, - * // "creativeIds": [], * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", - * // "excludeNewExchanges": false, - * // "flight": {}, * // "frequencyCap": {}, * // "insertionOrderId": "my_insertionOrderId", + * // "insertionOrderType": "my_insertionOrderType", * // "integrationDetails": {}, - * // "lineItemId": "my_lineItemId", - * // "lineItemType": "my_lineItemType", - * // "mobileApp": {}, + * // "kpi": {}, * // "name": "my_name", + * // "optimizationObjective": "my_optimizationObjective", * // "pacing": {}, * // "partnerCosts": [], - * // "partnerRevenueModel": {}, * // "reservationType": "my_reservationType", - * // "targetingExpansion": {}, - * // "updateTime": "my_updateTime", - * // "warningMessages": [], - * // "youtubeAndPartnersSettings": {} + * // "updateTime": "my_updateTime" * // } * } * @@ -15709,52 +15693,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Advertisers$Lineitems$Patch, + params: Params$Resource$Advertisers$Insertionorders$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Advertisers$Lineitems$Patch, + params?: Params$Resource$Advertisers$Insertionorders$Patch, options?: MethodOptions - ): Promise>; + ): Promise>; patch( - params: Params$Resource$Advertisers$Lineitems$Patch, + params: Params$Resource$Advertisers$Insertionorders$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Advertisers$Lineitems$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Insertionorders$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Advertisers$Lineitems$Patch, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Insertionorders$Patch, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; + patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$Patch - | BodyResponseCallback + | Params$Resource$Advertisers$Insertionorders$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$Patch; + {}) as Params$Resource$Advertisers$Insertionorders$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Lineitems$Patch; + params = {} as Params$Resource$Advertisers$Insertionorders$Patch; options = {}; } @@ -15769,7 +15753,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}' + '/v3/advertisers/{+advertiserId}/insertionOrders/{+insertionOrderId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -15777,146 +15761,83 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'lineItemId'], - pathParams: ['advertiserId', 'lineItemId'], + requiredParams: ['advertiserId', 'insertionOrderId'], + pathParams: ['advertiserId', 'insertionOrderId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions extends StandardParameters { - /** - * Required. The ID of the advertiser the line items belong to. - */ - advertiserId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$BulkEditAssignedTargetingOptionsRequest; - } - export interface Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions extends StandardParameters { - /** - * Required. The ID of the advertiser the line items belongs to. - */ - advertiserId?: string; - /** - * Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR` on the same field. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` * `inheritance` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` or `TARGETING_TYPE_CHANNEL`: `targetingType="TARGETING_TYPE_PROXIMITY_LOCATION_LIST" OR targetingType="TARGETING_TYPE_CHANNEL"` * `AssignedTargetingOption` resources with inheritance status of `NOT_INHERITED` or `INHERITED_FROM_PARTNER`: `inheritance="NOT_INHERITED" OR inheritance="INHERITED_FROM_PARTNER"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Required. The IDs of the line items to list assigned targeting options for. - */ - lineItemIds?: string[]; - /** - * Field by which to sort the list. Acceptable values are: * `lineItemId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `targetingType desc`. - */ - orderBy?: string; - /** - * Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAssignedTargetingOptions` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - } - export interface Params$Resource$Advertisers$Lineitems$Bulkupdate extends StandardParameters { - /** - * Required. The ID of the advertiser this line item belongs to. - */ - advertiserId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$BulkUpdateLineItemsRequest; - } - export interface Params$Resource$Advertisers$Lineitems$Create extends StandardParameters { + export interface Params$Resource$Advertisers$Insertionorders$Create extends StandardParameters { /** - * Output only. The unique ID of the advertiser the line item belongs to. + * Output only. The unique ID of the advertiser the insertion order belongs to. */ advertiserId?: string; /** * Request body metadata */ - requestBody?: Schema$LineItem; - } - export interface Params$Resource$Advertisers$Lineitems$Delete extends StandardParameters { - /** - * The ID of the advertiser this line item belongs to. - */ - advertiserId?: string; - /** - * The ID of the line item to delete. - */ - lineItemId?: string; + requestBody?: Schema$InsertionOrder; } - export interface Params$Resource$Advertisers$Lineitems$Duplicate extends StandardParameters { + export interface Params$Resource$Advertisers$Insertionorders$Delete extends StandardParameters { /** - * Required. The ID of the advertiser this line item belongs to. + * The ID of the advertiser this insertion order belongs to. */ advertiserId?: string; /** - * Required. The ID of the line item to duplicate. - */ - lineItemId?: string; - - /** - * Request body metadata + * The ID of the insertion order to delete. */ - requestBody?: Schema$DuplicateLineItemRequest; + insertionOrderId?: string; } - export interface Params$Resource$Advertisers$Lineitems$Get extends StandardParameters { + export interface Params$Resource$Advertisers$Insertionorders$Get extends StandardParameters { /** - * Required. The ID of the advertiser this line item belongs to. + * Required. The ID of the advertiser this insertion order belongs to. */ advertiserId?: string; /** - * Required. The ID of the line item to fetch. + * Required. The ID of the insertion order to fetch. */ - lineItemId?: string; + insertionOrderId?: string; } - export interface Params$Resource$Advertisers$Lineitems$List extends StandardParameters { + export interface Params$Resource$Advertisers$Insertionorders$List extends StandardParameters { /** - * Required. The ID of the advertiser to list line items for. + * Required. The ID of the advertiser to list insertion orders for. */ advertiserId?: string; /** - * Allows filtering by line item fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `insertionOrderId` * `lineItemId` * `lineItemType` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All line items under an insertion order: `insertionOrderId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT"` * All line items with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime<="2020-11-04T18:54:47Z"` * All line items with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * Allows filtering by insertion order fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All insertion orders under a campaign: `campaignId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` insertion orders under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED")` * All insertion orders with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime<="2020-11-04T18:54:47Z"` * All insertion orders with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ filter?: string; /** - * Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * Field by which to sort the list. Acceptable values are: * "displayName" (default) * "entityStatus" * "updateTime" The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. */ orderBy?: string; /** - * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. */ pageSize?: number; /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItems` method. If not specified, the first page of results will be returned. + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInsertionOrders` method. If not specified, the first page of results will be returned. */ pageToken?: string; } - export interface Params$Resource$Advertisers$Lineitems$Patch extends StandardParameters { + export interface Params$Resource$Advertisers$Insertionorders$Patch extends StandardParameters { /** - * Output only. The unique ID of the advertiser the line item belongs to. + * Output only. The unique ID of the advertiser the insertion order belongs to. */ advertiserId?: string; /** - * Output only. The unique ID of the line item. Assigned by the system. + * Output only. The unique ID of the insertion order. Assigned by the system. */ - lineItemId?: string; + insertionOrderId?: string; /** * Required. The mask to control which fields to update. */ @@ -15925,29 +15846,17 @@ export namespace displayvideo_v3 { /** * Request body metadata */ - requestBody?: Schema$LineItem; - } - - export class Resource$Advertisers$Lineitems$Targetingtypes { - context: APIRequestContext; - assignedTargetingOptions: Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions; - constructor(context: APIRequestContext) { - this.context = context; - this.assignedTargetingOptions = - new Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions( - this.context - ); - } + requestBody?: Schema$InsertionOrder; } - export class Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions { + export class Resource$Advertisers$Invoices { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Assigns a targeting option to a line item. Returns the assigned targeting option if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * lineItems.bulkEditAssignedTargetingOptions * lineItems.bulkUpdate * lineItems.patch * DeleteLineItemAssignedTargetingOption YouTube & Partners line items cannot be created or updated using the API. + * Lists invoices posted for an advertiser in a given month. Invoices generated by billing profiles with a "Partner" invoice level are not retrievable through this method. * @example * ```js * // Before running the sample: @@ -15968,7 +15877,10 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], + * scopes: [ + * 'https://www.googleapis.com/auth/display-video', + * 'https://www.googleapis.com/auth/display-video-mediaplanning', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15976,136 +15888,24 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.create( - * { - * // Required. The ID of the advertiser the line item belongs to. - * advertiserId: '[^/]+', - * // Required. The ID of the line item the assigned targeting option will belong to. - * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` - * targetingType: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "ageRangeDetails": {}, - * // "appCategoryDetails": {}, - * // "appDetails": {}, - * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", - * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", - * // "audienceGroupDetails": {}, - * // "audioContentTypeDetails": {}, - * // "authorizedSellerStatusDetails": {}, - * // "browserDetails": {}, - * // "businessChainDetails": {}, - * // "carrierAndIspDetails": {}, - * // "categoryDetails": {}, - * // "channelDetails": {}, - * // "contentDurationDetails": {}, - * // "contentGenreDetails": {}, - * // "contentInstreamPositionDetails": {}, - * // "contentOutstreamPositionDetails": {}, - * // "contentStreamTypeDetails": {}, - * // "contentThemeExclusionDetails": {}, - * // "dayAndTimeDetails": {}, - * // "deviceMakeModelDetails": {}, - * // "deviceTypeDetails": {}, - * // "digitalContentLabelExclusionDetails": {}, - * // "environmentDetails": {}, - * // "exchangeDetails": {}, - * // "genderDetails": {}, - * // "geoRegionDetails": {}, - * // "householdIncomeDetails": {}, - * // "inheritance": "my_inheritance", - * // "inventorySourceDetails": {}, - * // "inventorySourceGroupDetails": {}, - * // "keywordDetails": {}, - * // "languageDetails": {}, - * // "name": "my_name", - * // "nativeContentPositionDetails": {}, - * // "negativeKeywordListDetails": {}, - * // "omidDetails": {}, - * // "onScreenPositionDetails": {}, - * // "operatingSystemDetails": {}, - * // "parentalStatusDetails": {}, - * // "poiDetails": {}, - * // "proximityLocationListDetails": {}, - * // "regionalLocationListDetails": {}, - * // "sensitiveCategoryExclusionDetails": {}, - * // "sessionPositionDetails": {}, - * // "subExchangeDetails": {}, - * // "targetingType": "my_targetingType", - * // "thirdPartyVerifierDetails": {}, - * // "urlDetails": {}, - * // "userRewardedContentDetails": {}, - * // "videoPlayerSizeDetails": {}, - * // "viewabilityDetails": {}, - * // "youtubeChannelDetails": {}, - * // "youtubeVideoDetails": {} - * // } - * }, - * }, - * ); - * console.log(res.data); + * const res = await displayvideo.advertisers.invoices.list({ + * // Required. The ID of the advertiser to list invoices for. + * advertiserId: '[^/]+', + * // The month to list the invoices for. If not set, the request will retrieve invoices for the previous month. Must be in the format YYYYMM. + * issueMonth: 'placeholder-value', + * // Select type of invoice to retrieve for Loi Sapin advertisers. Only applicable to Loi Sapin advertisers. Will be ignored otherwise. + * loiSapinInvoiceType: 'placeholder-value', + * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInvoices` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); * * // Example response * // { - * // "ageRangeDetails": {}, - * // "appCategoryDetails": {}, - * // "appDetails": {}, - * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", - * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", - * // "audienceGroupDetails": {}, - * // "audioContentTypeDetails": {}, - * // "authorizedSellerStatusDetails": {}, - * // "browserDetails": {}, - * // "businessChainDetails": {}, - * // "carrierAndIspDetails": {}, - * // "categoryDetails": {}, - * // "channelDetails": {}, - * // "contentDurationDetails": {}, - * // "contentGenreDetails": {}, - * // "contentInstreamPositionDetails": {}, - * // "contentOutstreamPositionDetails": {}, - * // "contentStreamTypeDetails": {}, - * // "contentThemeExclusionDetails": {}, - * // "dayAndTimeDetails": {}, - * // "deviceMakeModelDetails": {}, - * // "deviceTypeDetails": {}, - * // "digitalContentLabelExclusionDetails": {}, - * // "environmentDetails": {}, - * // "exchangeDetails": {}, - * // "genderDetails": {}, - * // "geoRegionDetails": {}, - * // "householdIncomeDetails": {}, - * // "inheritance": "my_inheritance", - * // "inventorySourceDetails": {}, - * // "inventorySourceGroupDetails": {}, - * // "keywordDetails": {}, - * // "languageDetails": {}, - * // "name": "my_name", - * // "nativeContentPositionDetails": {}, - * // "negativeKeywordListDetails": {}, - * // "omidDetails": {}, - * // "onScreenPositionDetails": {}, - * // "operatingSystemDetails": {}, - * // "parentalStatusDetails": {}, - * // "poiDetails": {}, - * // "proximityLocationListDetails": {}, - * // "regionalLocationListDetails": {}, - * // "sensitiveCategoryExclusionDetails": {}, - * // "sessionPositionDetails": {}, - * // "subExchangeDetails": {}, - * // "targetingType": "my_targetingType", - * // "thirdPartyVerifierDetails": {}, - * // "urlDetails": {}, - * // "userRewardedContentDetails": {}, - * // "videoPlayerSizeDetails": {}, - * // "viewabilityDetails": {}, - * // "youtubeChannelDetails": {}, - * // "youtubeVideoDetails": {} + * // "invoices": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -16121,58 +15921,55 @@ export namespace displayvideo_v3 { * @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$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create, + list( + params: Params$Resource$Advertisers$Invoices$List, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create, + list( + params?: Params$Resource$Advertisers$Invoices$List, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create, + ): Promise>; + list( + params: Params$Resource$Advertisers$Invoices$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create, + list( + params: Params$Resource$Advertisers$Invoices$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Invoices$List, + callback: BodyResponseCallback ): void; - create( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Invoices$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create; + {}) as Params$Resource$Advertisers$Invoices$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create; + params = {} as Params$Resource$Advertisers$Invoices$List; options = {}; } @@ -16185,32 +15982,32 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + - '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}/targetingTypes/{+targetingType}/assignedTargetingOptions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v3/advertisers/{+advertiserId}/invoices').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'lineItemId', 'targetingType'], - pathParams: ['advertiserId', 'lineItemId', 'targetingType'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes an assigned targeting option from a line item. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * lineItems.bulkEditAssignedTargetingOptions * lineItems.bulkUpdate * lineItems.patch * CreateLineItemAssignedTargetingOption YouTube & Partners line items cannot be created or updated using the API. + * Retrieves the invoice currency used by an advertiser in a given month. * @example * ```js * // Before running the sample: @@ -16231,7 +16028,10 @@ export namespace displayvideo_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], + * scopes: [ + * 'https://www.googleapis.com/auth/display-video', + * 'https://www.googleapis.com/auth/display-video-mediaplanning', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16239,23 +16039,18 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.delete( - * { - * // Required. The ID of the advertiser the line item belongs to. - * advertiserId: '[^/]+', - * // Required. The ID of the assigned targeting option to delete. - * assignedTargetingOptionId: '[^/]+', - * // Required. The ID of the line item the assigned targeting option belongs to. - * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` - * targetingType: '[^/]+', - * }, - * ); + * const res = await displayvideo.advertisers.invoices.lookupInvoiceCurrency({ + * // Required. The ID of the advertiser to lookup currency for. + * advertiserId: '[^/]+', + * // Month for which the currency is needed. If not set, the request will return existing currency settings for the advertiser. Must be in the format YYYYMM. + * invoiceMonth: 'placeholder-value', + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "currencyCode": "my_currencyCode" + * // } * } * * main().catch(e => { @@ -16270,54 +16065,58 @@ export namespace displayvideo_v3 { * @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$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete, + lookupInvoiceCurrency( + params: Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete, + lookupInvoiceCurrency( + params?: Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete, + ): Promise>; + lookupInvoiceCurrency( + params: Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + lookupInvoiceCurrency( + params: Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete, - callback: BodyResponseCallback + lookupInvoiceCurrency( + params: Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + lookupInvoiceCurrency( + callback: BodyResponseCallback + ): void; + lookupInvoiceCurrency( paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete - | BodyResponseCallback + | Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete; + {}) as Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete; + {} as Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency; options = {}; } @@ -16332,40 +16131,76 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}' + '/v3/advertisers/{+advertiserId}/invoices:lookupInvoiceCurrency' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: [ - 'advertiserId', - 'lineItemId', - 'targetingType', - 'assignedTargetingOptionId', - ], - pathParams: [ - 'advertiserId', - 'assignedTargetingOptionId', - 'lineItemId', - 'targetingType', - ], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Advertisers$Invoices$List extends StandardParameters { /** - * Gets a single targeting option assigned to a line item. + * Required. The ID of the advertiser to list invoices for. + */ + advertiserId?: string; + /** + * The month to list the invoices for. If not set, the request will retrieve invoices for the previous month. Must be in the format YYYYMM. + */ + issueMonth?: string; + /** + * Select type of invoice to retrieve for Loi Sapin advertisers. Only applicable to Loi Sapin advertisers. Will be ignored otherwise. + */ + loiSapinInvoiceType?: string; + /** + * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInvoices` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + } + export interface Params$Resource$Advertisers$Invoices$Lookupinvoicecurrency extends StandardParameters { + /** + * Required. The ID of the advertiser to lookup currency for. + */ + advertiserId?: string; + /** + * Month for which the currency is needed. If not set, the request will return existing currency settings for the advertiser. Must be in the format YYYYMM. + */ + invoiceMonth?: string; + } + + export class Resource$Advertisers$Lineitems { + context: APIRequestContext; + targetingTypes: Resource$Advertisers$Lineitems$Targetingtypes; + constructor(context: APIRequestContext) { + this.context = context; + this.targetingTypes = new Resource$Advertisers$Lineitems$Targetingtypes( + this.context + ); + } + + /** + * Bulk edits targeting options under multiple line items. The operation will delete the assigned targeting options provided in BulkEditAssignedTargetingOptionsRequest.delete_requests and then create the assigned targeting options provided in BulkEditAssignedTargetingOptionsRequest.create_requests. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * lineItems.bulkUpdate * lineItems.patch * assignedTargetingOptions.create * assignedTargetingOptions.delete YouTube & Partners line items cannot be created or updated using the API. * @example * ```js * // Before running the sample: @@ -16395,76 +16230,27 @@ export namespace displayvideo_v3 { * * // Do the magic * const res = - * await displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.get( - * { - * // Required. The ID of the advertiser the line item belongs to. - * advertiserId: '[^/]+', - * // Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested. - * assignedTargetingOptionId: '[^/]+', - * // Required. The ID of the line item the assigned targeting option belongs to. - * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) - * targetingType: '[^/]+', + * await displayvideo.advertisers.lineItems.bulkEditAssignedTargetingOptions({ + * // Required. The ID of the advertiser the line items belong to. + * advertiserId: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createRequests": [], + * // "deleteRequests": [], + * // "lineItemIds": [] + * // } * }, - * ); + * }); * console.log(res.data); * * // Example response * // { - * // "ageRangeDetails": {}, - * // "appCategoryDetails": {}, - * // "appDetails": {}, - * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", - * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", - * // "audienceGroupDetails": {}, - * // "audioContentTypeDetails": {}, - * // "authorizedSellerStatusDetails": {}, - * // "browserDetails": {}, - * // "businessChainDetails": {}, - * // "carrierAndIspDetails": {}, - * // "categoryDetails": {}, - * // "channelDetails": {}, - * // "contentDurationDetails": {}, - * // "contentGenreDetails": {}, - * // "contentInstreamPositionDetails": {}, - * // "contentOutstreamPositionDetails": {}, - * // "contentStreamTypeDetails": {}, - * // "contentThemeExclusionDetails": {}, - * // "dayAndTimeDetails": {}, - * // "deviceMakeModelDetails": {}, - * // "deviceTypeDetails": {}, - * // "digitalContentLabelExclusionDetails": {}, - * // "environmentDetails": {}, - * // "exchangeDetails": {}, - * // "genderDetails": {}, - * // "geoRegionDetails": {}, - * // "householdIncomeDetails": {}, - * // "inheritance": "my_inheritance", - * // "inventorySourceDetails": {}, - * // "inventorySourceGroupDetails": {}, - * // "keywordDetails": {}, - * // "languageDetails": {}, - * // "name": "my_name", - * // "nativeContentPositionDetails": {}, - * // "negativeKeywordListDetails": {}, - * // "omidDetails": {}, - * // "onScreenPositionDetails": {}, - * // "operatingSystemDetails": {}, - * // "parentalStatusDetails": {}, - * // "poiDetails": {}, - * // "proximityLocationListDetails": {}, - * // "regionalLocationListDetails": {}, - * // "sensitiveCategoryExclusionDetails": {}, - * // "sessionPositionDetails": {}, - * // "subExchangeDetails": {}, - * // "targetingType": "my_targetingType", - * // "thirdPartyVerifierDetails": {}, - * // "urlDetails": {}, - * // "userRewardedContentDetails": {}, - * // "videoPlayerSizeDetails": {}, - * // "viewabilityDetails": {}, - * // "youtubeChannelDetails": {}, - * // "youtubeVideoDetails": {} + * // "errors": [], + * // "failedLineItemIds": [], + * // "updatedLineItemIds": [] * // } * } * @@ -16480,56 +16266,62 @@ export namespace displayvideo_v3 { * @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$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get, + bulkEditAssignedTargetingOptions( + params: Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get, + bulkEditAssignedTargetingOptions( + params?: Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + bulkEditAssignedTargetingOptions( + params: Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get, + bulkEditAssignedTargetingOptions( + params: Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get, - callback: BodyResponseCallback + bulkEditAssignedTargetingOptions( + params: Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + bulkEditAssignedTargetingOptions( + callback: BodyResponseCallback + ): void; + bulkEditAssignedTargetingOptions( paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get; + {}) as Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get; + {} as Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions; options = {}; } @@ -16544,40 +16336,32 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}' + '/v3/advertisers/{+advertiserId}/lineItems:bulkEditAssignedTargetingOptions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: [ - 'advertiserId', - 'lineItemId', - 'targetingType', - 'assignedTargetingOptionId', - ], - pathParams: [ - 'advertiserId', - 'assignedTargetingOptionId', - 'lineItemId', - 'targetingType', - ], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Lists the targeting options assigned to a line item. + * Lists assigned targeting options for multiple line items across targeting types. * @example * ```js * // Before running the sample: @@ -16607,29 +16391,25 @@ export namespace displayvideo_v3 { * * // Do the magic * const res = - * await displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.list( - * { - * // Required. The ID of the advertiser the line item belongs to. - * advertiserId: '[^/]+', - * // Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` * `inheritance` Examples: * `AssignedTargetingOption` resources with ID 1 or 2: `assignedTargetingOptionId="1" OR assignedTargetingOptionId="2"` * `AssignedTargetingOption` resources with inheritance status of `NOT_INHERITED` or `INHERITED_FROM_PARTNER`: `inheritance="NOT_INHERITED" OR inheritance="INHERITED_FROM_PARTNER"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Required. The ID of the line item to list assigned targeting options for. - * lineItemId: '[^/]+', - * // Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `assignedTargetingOptionId desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItemAssignedTargetingOptions` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) - * targetingType: '[^/]+', - * }, - * ); + * await displayvideo.advertisers.lineItems.bulkListAssignedTargetingOptions({ + * // Required. The ID of the advertiser the line items belongs to. + * advertiserId: '[^/]+', + * // Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR` on the same field. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` * `inheritance` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` or `TARGETING_TYPE_CHANNEL`: `targetingType="TARGETING_TYPE_PROXIMITY_LOCATION_LIST" OR targetingType="TARGETING_TYPE_CHANNEL"` * `AssignedTargetingOption` resources with inheritance status of `NOT_INHERITED` or `INHERITED_FROM_PARTNER`: `inheritance="NOT_INHERITED" OR inheritance="INHERITED_FROM_PARTNER"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Required. The IDs of the line items to list assigned targeting options for. + * lineItemIds: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `lineItemId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `targetingType desc`. + * orderBy: 'placeholder-value', + * // Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAssignedTargetingOptions` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "assignedTargetingOptions": [], + * // "lineItemAssignedTargetingOptions": [], * // "nextPageToken": "my_nextPageToken" * // } * } @@ -16646,62 +16426,62 @@ export namespace displayvideo_v3 { * @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$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List, + bulkListAssignedTargetingOptions( + params: Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List, + bulkListAssignedTargetingOptions( + params?: Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - list( - params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List, + bulkListAssignedTargetingOptions( + params: Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List, + bulkListAssignedTargetingOptions( + params: Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List, - callback: BodyResponseCallback + bulkListAssignedTargetingOptions( + params: Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + bulkListAssignedTargetingOptions( + callback: BodyResponseCallback ): void; - list( + bulkListAssignedTargetingOptions( paramsOrCallback?: - | Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List - | BodyResponseCallback + | Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List; + {}) as Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List; + {} as Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions; options = {}; } @@ -16716,7 +16496,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}/targetingTypes/{+targetingType}/assignedTargetingOptions' + '/v3/advertisers/{+advertiserId}/lineItems:bulkListAssignedTargetingOptions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -16724,120 +16504,24 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'lineItemId', 'targetingType'], - pathParams: ['advertiserId', 'lineItemId', 'targetingType'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } - } - - export interface Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create extends StandardParameters { - /** - * Required. The ID of the advertiser the line item belongs to. - */ - advertiserId?: string; - /** - * Required. The ID of the line item the assigned targeting option will belong to. - */ - lineItemId?: string; - /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` - */ - targetingType?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$AssignedTargetingOption; - } - export interface Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete extends StandardParameters { - /** - * Required. The ID of the advertiser the line item belongs to. - */ - advertiserId?: string; - /** - * Required. The ID of the assigned targeting option to delete. - */ - assignedTargetingOptionId?: string; - /** - * Required. The ID of the line item the assigned targeting option belongs to. - */ - lineItemId?: string; - /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` - */ - targetingType?: string; - } - export interface Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get extends StandardParameters { - /** - * Required. The ID of the advertiser the line item belongs to. - */ - advertiserId?: string; - /** - * Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested. - */ - assignedTargetingOptionId?: string; - /** - * Required. The ID of the line item the assigned targeting option belongs to. - */ - lineItemId?: string; - /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) - */ - targetingType?: string; - } - export interface Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List extends StandardParameters { - /** - * Required. The ID of the advertiser the line item belongs to. - */ - advertiserId?: string; - /** - * Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` * `inheritance` Examples: * `AssignedTargetingOption` resources with ID 1 or 2: `assignedTargetingOptionId="1" OR assignedTargetingOptionId="2"` * `AssignedTargetingOption` resources with inheritance status of `NOT_INHERITED` or `INHERITED_FROM_PARTNER`: `inheritance="NOT_INHERITED" OR inheritance="INHERITED_FROM_PARTNER"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Required. The ID of the line item to list assigned targeting options for. - */ - lineItemId?: string; - /** - * Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `assignedTargetingOptionId desc`. - */ - orderBy?: string; - /** - * Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItemAssignedTargetingOptions` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - /** - * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) - */ - targetingType?: string; - } - - export class Resource$Advertisers$Locationlists { - context: APIRequestContext; - assignedLocations: Resource$Advertisers$Locationlists$Assignedlocations; - constructor(context: APIRequestContext) { - this.context = context; - this.assignedLocations = - new Resource$Advertisers$Locationlists$Assignedlocations(this.context); - } /** - * Creates a new location list. Returns the newly created location list if successful. + * Updates multiple line items. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * UpdateLineItem * assignedTargetingOptions.create * assignedTargetingOptions.delete YouTube & Partners line items cannot be created or updated using the API. * @example * ```js * // Before running the sample: @@ -16866,19 +16550,17 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.locationLists.create({ - * // Required. The ID of the DV360 advertiser to which the location list belongs. + * const res = await displayvideo.advertisers.lineItems.bulkUpdate({ + * // Required. The ID of the advertiser this line item belongs to. * advertiserId: '[^/]+', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "advertiserId": "my_advertiserId", - * // "displayName": "my_displayName", - * // "locationListId": "my_locationListId", - * // "locationType": "my_locationType", - * // "name": "my_name" + * // "lineItemIds": [], + * // "targetLineItem": {}, + * // "updateMask": "my_updateMask" * // } * }, * }); @@ -16886,11 +16568,10 @@ export namespace displayvideo_v3 { * * // Example response * // { - * // "advertiserId": "my_advertiserId", - * // "displayName": "my_displayName", - * // "locationListId": "my_locationListId", - * // "locationType": "my_locationType", - * // "name": "my_name" + * // "errors": [], + * // "failedLineItemIds": [], + * // "skippedLineItemIds": [], + * // "updatedLineItemIds": [] * // } * } * @@ -16906,53 +16587,57 @@ export namespace displayvideo_v3 { * @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$Advertisers$Locationlists$Create, + bulkUpdate( + params: Params$Resource$Advertisers$Lineitems$Bulkupdate, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Advertisers$Locationlists$Create, + bulkUpdate( + params?: Params$Resource$Advertisers$Lineitems$Bulkupdate, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Advertisers$Locationlists$Create, + ): Promise>; + bulkUpdate( + params: Params$Resource$Advertisers$Lineitems$Bulkupdate, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Locationlists$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + bulkUpdate( + params: Params$Resource$Advertisers$Lineitems$Bulkupdate, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Locationlists$Create, - callback: BodyResponseCallback + bulkUpdate( + params: Params$Resource$Advertisers$Lineitems$Bulkupdate, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + bulkUpdate( + callback: BodyResponseCallback + ): void; + bulkUpdate( paramsOrCallback?: - | Params$Resource$Advertisers$Locationlists$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Lineitems$Bulkupdate + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Locationlists$Create; + {}) as Params$Resource$Advertisers$Lineitems$Bulkupdate; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Locationlists$Create; + params = {} as Params$Resource$Advertisers$Lineitems$Bulkupdate; options = {}; } @@ -16966,7 +16651,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/locationLists' + rootUrl + '/v3/advertisers/{+advertiserId}/lineItems:bulkUpdate' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -16979,17 +16664,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a location list. + * Creates a new line item. Returns the newly created line item if successful. YouTube & Partners line items cannot be created or updated using the API. * @example * ```js * // Before running the sample: @@ -17018,83 +16703,139 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.locationLists.get({ - * // Required. The ID of the DV360 advertiser to which the fetched location list belongs. + * const res = await displayvideo.advertisers.lineItems.create({ + * // Output only. The unique ID of the advertiser the line item belongs to. * advertiserId: '[^/]+', - * // Required. The ID of the location list to fetch. - * locationListId: '[^/]+', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "advertiserId": "my_advertiserId", - * // "displayName": "my_displayName", - * // "locationListId": "my_locationListId", - * // "locationType": "my_locationType", - * // "name": "my_name" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); * - * ``` - * - * @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$Advertisers$Locationlists$Get, + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "budget": {}, + * // "campaignId": "my_campaignId", + * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", + * // "conversionCounting": {}, + * // "creativeIds": [], + * // "demandGenSettings": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "excludeNewExchanges": false, + * // "flight": {}, + * // "frequencyCap": {}, + * // "insertionOrderId": "my_insertionOrderId", + * // "integrationDetails": {}, + * // "lineItemId": "my_lineItemId", + * // "lineItemType": "my_lineItemType", + * // "mobileApp": {}, + * // "name": "my_name", + * // "optimizeFixedBidding": false, + * // "pacing": {}, + * // "partnerCosts": [], + * // "partnerRevenueModel": {}, + * // "reservationType": "my_reservationType", + * // "targetingExpansion": {}, + * // "updateTime": "my_updateTime", + * // "warningMessages": [], + * // "youtubeAndPartnersSettings": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "budget": {}, + * // "campaignId": "my_campaignId", + * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", + * // "conversionCounting": {}, + * // "creativeIds": [], + * // "demandGenSettings": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "excludeNewExchanges": false, + * // "flight": {}, + * // "frequencyCap": {}, + * // "insertionOrderId": "my_insertionOrderId", + * // "integrationDetails": {}, + * // "lineItemId": "my_lineItemId", + * // "lineItemType": "my_lineItemType", + * // "mobileApp": {}, + * // "name": "my_name", + * // "optimizeFixedBidding": false, + * // "pacing": {}, + * // "partnerCosts": [], + * // "partnerRevenueModel": {}, + * // "reservationType": "my_reservationType", + * // "targetingExpansion": {}, + * // "updateTime": "my_updateTime", + * // "warningMessages": [], + * // "youtubeAndPartnersSettings": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Advertisers$Lineitems$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Advertisers$Locationlists$Get, + create( + params?: Params$Resource$Advertisers$Lineitems$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Advertisers$Locationlists$Get, + ): Promise>; + create( + params: Params$Resource$Advertisers$Lineitems$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Locationlists$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Lineitems$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Locationlists$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Lineitems$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Advertisers$Locationlists$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Lineitems$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Locationlists$Get; + {}) as Params$Resource$Advertisers$Lineitems$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Locationlists$Get; + params = {} as Params$Resource$Advertisers$Lineitems$Create; options = {}; } @@ -17108,31 +16849,30 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/advertisers/{+advertiserId}/locationLists/{+locationListId}' + rootUrl + '/v3/advertisers/{+advertiserId}/lineItems' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'locationListId'], - pathParams: ['advertiserId', 'locationListId'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists location lists based on a given advertiser id. + * Deletes a line item. Returns error code `NOT_FOUND` if the line item does not exist. The line item should be archived first, i.e. set entity_status to `ENTITY_STATUS_ARCHIVED`, to be able to delete it. YouTube & Partners line items cannot be created or updated using the API. * @example * ```js * // Before running the sample: @@ -17161,25 +16901,16 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.locationLists.list({ - * // Required. The ID of the DV360 advertiser to which the fetched location lists belong. + * const res = await displayvideo.advertisers.lineItems.delete({ + * // The ID of the advertiser this line item belongs to. * advertiserId: '[^/]+', - * // Allows filtering by location list fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `locationType` Examples: * All regional location list: `locationType="TARGETING_LOCATION_TYPE_REGIONAL"` * All proximity location list: `locationType="TARGETING_LOCATION_TYPE_PROXIMITY"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `locationListId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. Defaults to `100` if not set. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLocationLists` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', + * // The ID of the line item to delete. + * lineItemId: '[^/]+', * }); * console.log(res.data); * * // Example response - * // { - * // "locationLists": [], - * // "nextPageToken": "my_nextPageToken" - * // } + * // {} * } * * main().catch(e => { @@ -17194,57 +16925,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Locationlists$List, + delete( + params: Params$Resource$Advertisers$Lineitems$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Locationlists$List, + delete( + params?: Params$Resource$Advertisers$Lineitems$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Advertisers$Locationlists$List, + ): Promise>; + delete( + params: Params$Resource$Advertisers$Lineitems$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Locationlists$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Advertisers$Locationlists$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Lineitems$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Lineitems$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Advertisers$Locationlists$List - | BodyResponseCallback + | Params$Resource$Advertisers$Lineitems$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Locationlists$List; + {}) as Params$Resource$Advertisers$Lineitems$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Locationlists$List; + params = {} as Params$Resource$Advertisers$Lineitems$Delete; options = {}; } @@ -17258,30 +16985,31 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/locationLists' + rootUrl + + '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'lineItemId'], + pathParams: ['advertiserId', 'lineItemId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a location list. Returns the updated location list if successful. + * Duplicates a line item. Returns the ID of the created line item if successful. YouTube & Partners line items cannot be created or updated using the API. **This method regularly experiences high latency.** We recommend [increasing your default timeout](/display-video/api/guides/best-practices/timeouts#client_library_timeout) to avoid errors. * @example * ```js * // Before running the sample: @@ -17310,23 +17038,18 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.locationLists.patch({ - * // Required. The ID of the DV360 advertiser to which the location lists belongs. + * const res = await displayvideo.advertisers.lineItems.duplicate({ + * // Required. The ID of the advertiser this line item belongs to. * advertiserId: '[^/]+', - * // Output only. The unique ID of the location list. Assigned by the system. - * locationListId: 'placeholder-value', - * // Required. The mask to control which fields to update. - * updateMask: 'placeholder-value', + * // Required. The ID of the line item to duplicate. + * lineItemId: '[^/]+', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "advertiserId": "my_advertiserId", - * // "displayName": "my_displayName", - * // "locationListId": "my_locationListId", - * // "locationType": "my_locationType", - * // "name": "my_name" + * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", + * // "targetDisplayName": "my_targetDisplayName" * // } * }, * }); @@ -17334,11 +17057,7 @@ export namespace displayvideo_v3 { * * // Example response * // { - * // "advertiserId": "my_advertiserId", - * // "displayName": "my_displayName", - * // "locationListId": "my_locationListId", - * // "locationType": "my_locationType", - * // "name": "my_name" + * // "duplicateLineItemId": "my_duplicateLineItemId" * // } * } * @@ -17354,53 +17073,57 @@ export namespace displayvideo_v3 { * @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$Advertisers$Locationlists$Patch, + duplicate( + params: Params$Resource$Advertisers$Lineitems$Duplicate, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Advertisers$Locationlists$Patch, + duplicate( + params?: Params$Resource$Advertisers$Lineitems$Duplicate, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Advertisers$Locationlists$Patch, + ): Promise>; + duplicate( + params: Params$Resource$Advertisers$Lineitems$Duplicate, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Advertisers$Locationlists$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + duplicate( + params: Params$Resource$Advertisers$Lineitems$Duplicate, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Advertisers$Locationlists$Patch, - callback: BodyResponseCallback + duplicate( + params: Params$Resource$Advertisers$Lineitems$Duplicate, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + duplicate( + callback: BodyResponseCallback + ): void; + duplicate( paramsOrCallback?: - | Params$Resource$Advertisers$Locationlists$Patch - | BodyResponseCallback + | Params$Resource$Advertisers$Lineitems$Duplicate + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Locationlists$Patch; + {}) as Params$Resource$Advertisers$Lineitems$Duplicate; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Locationlists$Patch; + params = {} as Params$Resource$Advertisers$Lineitems$Duplicate; options = {}; } @@ -17415,100 +17138,30 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/locationLists/{locationListId}' + '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}:duplicate' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'locationListId'], - pathParams: ['advertiserId', 'locationListId'], + requiredParams: ['advertiserId', 'lineItemId'], + pathParams: ['advertiserId', 'lineItemId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Advertisers$Locationlists$Create extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the location list belongs. - */ - advertiserId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$LocationList; - } - export interface Params$Resource$Advertisers$Locationlists$Get extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the fetched location list belongs. - */ - advertiserId?: string; - /** - * Required. The ID of the location list to fetch. - */ - locationListId?: string; - } - export interface Params$Resource$Advertisers$Locationlists$List extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the fetched location lists belong. - */ - advertiserId?: string; - /** - * Allows filtering by location list fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `locationType` Examples: * All regional location list: `locationType="TARGETING_LOCATION_TYPE_REGIONAL"` * All proximity location list: `locationType="TARGETING_LOCATION_TYPE_PROXIMITY"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Field by which to sort the list. Acceptable values are: * `locationListId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - */ - orderBy?: string; - /** - * Requested page size. Must be between `1` and `200`. Defaults to `100` if not set. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLocationLists` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - } - export interface Params$Resource$Advertisers$Locationlists$Patch extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the location lists belongs. - */ - advertiserId?: string; - /** - * Output only. The unique ID of the location list. Assigned by the system. - */ - locationListId?: string; - /** - * Required. The mask to control which fields to update. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$LocationList; - } - - export class Resource$Advertisers$Locationlists$Assignedlocations { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Bulk edits multiple assignments between locations and a single location list. The operation will delete the assigned locations provided in deletedAssignedLocations and then create the assigned locations provided in createdAssignedLocations. + * Gets a line item. * @example * ```js * // Before running the sample: @@ -17537,27 +17190,44 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.locationLists.assignedLocations.bulkEdit({ - * // Required. The ID of the DV360 advertiser to which the location list belongs. - * advertiserId: 'placeholder-value', - * // Required. The ID of the location list to which these assignments are assigned. - * locationListId: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createdAssignedLocations": [], - * // "deletedAssignedLocations": [] - * // } - * }, - * }); + * const res = await displayvideo.advertisers.lineItems.get({ + * // Required. The ID of the advertiser this line item belongs to. + * advertiserId: '[^/]+', + * // Required. The ID of the line item to fetch. + * lineItemId: '[^/]+', + * }); * console.log(res.data); * * // Example response * // { - * // "assignedLocations": [] + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "budget": {}, + * // "campaignId": "my_campaignId", + * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", + * // "conversionCounting": {}, + * // "creativeIds": [], + * // "demandGenSettings": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "excludeNewExchanges": false, + * // "flight": {}, + * // "frequencyCap": {}, + * // "insertionOrderId": "my_insertionOrderId", + * // "integrationDetails": {}, + * // "lineItemId": "my_lineItemId", + * // "lineItemType": "my_lineItemType", + * // "mobileApp": {}, + * // "name": "my_name", + * // "optimizeFixedBidding": false, + * // "pacing": {}, + * // "partnerCosts": [], + * // "partnerRevenueModel": {}, + * // "reservationType": "my_reservationType", + * // "targetingExpansion": {}, + * // "updateTime": "my_updateTime", + * // "warningMessages": [], + * // "youtubeAndPartnersSettings": {} * // } * } * @@ -17573,62 +17243,53 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkEdit( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit, + get( + params: Params$Resource$Advertisers$Lineitems$Get, options: StreamMethodOptions ): Promise>; - bulkEdit( - params?: Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit, + get( + params?: Params$Resource$Advertisers$Lineitems$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - bulkEdit( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit, + ): Promise>; + get( + params: Params$Resource$Advertisers$Lineitems$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkEdit( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - bulkEdit( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit, - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Lineitems$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - bulkEdit( - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Lineitems$Get, + callback: BodyResponseCallback ): void; - bulkEdit( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit - | BodyResponseCallback + | Params$Resource$Advertisers$Lineitems$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit; + {}) as Params$Resource$Advertisers$Lineitems$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit; + params = {} as Params$Resource$Advertisers$Lineitems$Get; options = {}; } @@ -17643,32 +17304,30 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{advertiserId}/locationLists/{+locationListId}/assignedLocations:bulkEdit' + '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'locationListId'], - pathParams: ['advertiserId', 'locationListId'], + requiredParams: ['advertiserId', 'lineItemId'], + pathParams: ['advertiserId', 'lineItemId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates an assignment between a location and a location list. + * Lists line items in an advertiser. The order is defined by the order_by parameter. If a filter by entity_status is not specified, line items with `ENTITY_STATUS_ARCHIVED` will not be included in the results. * @example * ```js * // Before running the sample: @@ -17697,30 +17356,24 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.locationLists.assignedLocations.create({ - * // Required. The ID of the DV360 advertiser to which the location list belongs. - * advertiserId: 'placeholder-value', - * // Required. The ID of the location list for which the assignment will be created. - * locationListId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "assignedLocationId": "my_assignedLocationId", - * // "name": "my_name", - * // "targetingOptionId": "my_targetingOptionId" - * // } - * }, - * }); + * const res = await displayvideo.advertisers.lineItems.list({ + * // Required. The ID of the advertiser to list line items for. + * advertiserId: '[^/]+', + * // Allows filtering by line item fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `insertionOrderId` * `lineItemId` * `lineItemType` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All line items under an insertion order: `insertionOrderId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT"` * All line items with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime<="2020-11-04T18:54:47Z"` * All line items with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItems` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "assignedLocationId": "my_assignedLocationId", - * // "name": "my_name", - * // "targetingOptionId": "my_targetingOptionId" + * // "lineItems": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -17736,54 +17389,55 @@ export namespace displayvideo_v3 { * @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$Advertisers$Locationlists$Assignedlocations$Create, + list( + params: Params$Resource$Advertisers$Lineitems$List, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Advertisers$Locationlists$Assignedlocations$Create, + list( + params?: Params$Resource$Advertisers$Lineitems$List, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Create, + ): Promise>; + list( + params: Params$Resource$Advertisers$Lineitems$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Lineitems$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Create, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Lineitems$List, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Advertisers$Locationlists$Assignedlocations$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Lineitems$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Locationlists$Assignedlocations$Create; + {}) as Params$Resource$Advertisers$Lineitems$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Locationlists$Assignedlocations$Create; + params = {} as Params$Resource$Advertisers$Lineitems$List; options = {}; } @@ -17797,31 +17451,30 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/advertisers/{advertiserId}/locationLists/{locationListId}/assignedLocations' + rootUrl + '/v3/advertisers/{+advertiserId}/lineItems' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'locationListId'], - pathParams: ['advertiserId', 'locationListId'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the assignment between a location and a location list. + * Updates an existing line item. Returns the updated line item if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * BulkEditAssignedTargetingOptions * BulkUpdateLineItems * assignedTargetingOptions.create * assignedTargetingOptions.delete YouTube & Partners line items cannot be created or updated using the API. **This method regularly experiences high latency.** We recommend [increasing your default timeout](/display-video/api/guides/best-practices/timeouts#client_library_timeout) to avoid errors. * @example * ```js * // Before running the sample: @@ -17850,19 +17503,82 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.locationLists.assignedLocations.delete({ - * // Required. The ID of the DV360 advertiser to which the location list belongs. - * advertiserId: 'placeholder-value', - * // Required. The ID of the assigned location to delete. - * assignedLocationId: '[^/]+', - * // Required. The ID of the location list to which this assignment is assigned. - * locationListId: 'placeholder-value', - * }); + * const res = await displayvideo.advertisers.lineItems.patch({ + * // Output only. The unique ID of the advertiser the line item belongs to. + * advertiserId: '[^/]+', + * // Output only. The unique ID of the line item. Assigned by the system. + * lineItemId: '[^/]+', + * // Required. The mask to control which fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "budget": {}, + * // "campaignId": "my_campaignId", + * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", + * // "conversionCounting": {}, + * // "creativeIds": [], + * // "demandGenSettings": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "excludeNewExchanges": false, + * // "flight": {}, + * // "frequencyCap": {}, + * // "insertionOrderId": "my_insertionOrderId", + * // "integrationDetails": {}, + * // "lineItemId": "my_lineItemId", + * // "lineItemType": "my_lineItemType", + * // "mobileApp": {}, + * // "name": "my_name", + * // "optimizeFixedBidding": false, + * // "pacing": {}, + * // "partnerCosts": [], + * // "partnerRevenueModel": {}, + * // "reservationType": "my_reservationType", + * // "targetingExpansion": {}, + * // "updateTime": "my_updateTime", + * // "warningMessages": [], + * // "youtubeAndPartnersSettings": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "budget": {}, + * // "campaignId": "my_campaignId", + * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", + * // "conversionCounting": {}, + * // "creativeIds": [], + * // "demandGenSettings": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "excludeNewExchanges": false, + * // "flight": {}, + * // "frequencyCap": {}, + * // "insertionOrderId": "my_insertionOrderId", + * // "integrationDetails": {}, + * // "lineItemId": "my_lineItemId", + * // "lineItemType": "my_lineItemType", + * // "mobileApp": {}, + * // "name": "my_name", + * // "optimizeFixedBidding": false, + * // "pacing": {}, + * // "partnerCosts": [], + * // "partnerRevenueModel": {}, + * // "reservationType": "my_reservationType", + * // "targetingExpansion": {}, + * // "updateTime": "my_updateTime", + * // "warningMessages": [], + * // "youtubeAndPartnersSettings": {} + * // } * } * * main().catch(e => { @@ -17877,54 +17593,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Locationlists$Assignedlocations$Delete, + patch( + params: Params$Resource$Advertisers$Lineitems$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete, + patch( + params?: Params$Resource$Advertisers$Lineitems$Patch, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete, + ): Promise>; + patch( + params: Params$Resource$Advertisers$Lineitems$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Advertisers$Lineitems$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete, - callback: BodyResponseCallback + patch( + params: Params$Resource$Advertisers$Lineitems$Patch, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete - | BodyResponseCallback + | Params$Resource$Advertisers$Lineitems$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete; + {}) as Params$Resource$Advertisers$Lineitems$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete; + params = {} as Params$Resource$Advertisers$Lineitems$Patch; options = {}; } @@ -17939,83 +17654,1128 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{advertiserId}/locationLists/{locationListId}/assignedLocations/{+assignedLocationId}' + '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: [ - 'advertiserId', - 'locationListId', - 'assignedLocationId', - ], - pathParams: ['advertiserId', 'assignedLocationId', 'locationListId'], + requiredParams: ['advertiserId', 'lineItemId'], + pathParams: ['advertiserId', 'lineItemId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Advertisers$Lineitems$Bulkeditassignedtargetingoptions extends StandardParameters { /** - * Lists locations assigned to a location list. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const displayvideo = google.displayvideo('v3'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * Required. The ID of the advertiser the line items belong to. + */ + advertiserId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BulkEditAssignedTargetingOptionsRequest; + } + export interface Params$Resource$Advertisers$Lineitems$Bulklistassignedtargetingoptions extends StandardParameters { + /** + * Required. The ID of the advertiser the line items belongs to. + */ + advertiserId?: string; + /** + * Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR` on the same field. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` * `inheritance` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` or `TARGETING_TYPE_CHANNEL`: `targetingType="TARGETING_TYPE_PROXIMITY_LOCATION_LIST" OR targetingType="TARGETING_TYPE_CHANNEL"` * `AssignedTargetingOption` resources with inheritance status of `NOT_INHERITED` or `INHERITED_FROM_PARTNER`: `inheritance="NOT_INHERITED" OR inheritance="INHERITED_FROM_PARTNER"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Required. The IDs of the line items to list assigned targeting options for. + */ + lineItemIds?: string[]; + /** + * Field by which to sort the list. Acceptable values are: * `lineItemId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `targetingType desc`. + */ + orderBy?: string; + /** + * Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAssignedTargetingOptions` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + } + export interface Params$Resource$Advertisers$Lineitems$Bulkupdate extends StandardParameters { + /** + * Required. The ID of the advertiser this line item belongs to. + */ + advertiserId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BulkUpdateLineItemsRequest; + } + export interface Params$Resource$Advertisers$Lineitems$Create extends StandardParameters { + /** + * Output only. The unique ID of the advertiser the line item belongs to. + */ + advertiserId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$LineItem; + } + export interface Params$Resource$Advertisers$Lineitems$Delete extends StandardParameters { + /** + * The ID of the advertiser this line item belongs to. + */ + advertiserId?: string; + /** + * The ID of the line item to delete. + */ + lineItemId?: string; + } + export interface Params$Resource$Advertisers$Lineitems$Duplicate extends StandardParameters { + /** + * Required. The ID of the advertiser this line item belongs to. + */ + advertiserId?: string; + /** + * Required. The ID of the line item to duplicate. + */ + lineItemId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DuplicateLineItemRequest; + } + export interface Params$Resource$Advertisers$Lineitems$Get extends StandardParameters { + /** + * Required. The ID of the advertiser this line item belongs to. + */ + advertiserId?: string; + /** + * Required. The ID of the line item to fetch. + */ + lineItemId?: string; + } + export interface Params$Resource$Advertisers$Lineitems$List extends StandardParameters { + /** + * Required. The ID of the advertiser to list line items for. + */ + advertiserId?: string; + /** + * Allows filtering by line item fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `insertionOrderId` * `lineItemId` * `lineItemType` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All line items under an insertion order: `insertionOrderId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT"` * All line items with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime<="2020-11-04T18:54:47Z"` * All line items with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\>="2020-11-04T18:54:47Z"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + */ + orderBy?: string; + /** + * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItems` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + } + export interface Params$Resource$Advertisers$Lineitems$Patch extends StandardParameters { + /** + * Output only. The unique ID of the advertiser the line item belongs to. + */ + advertiserId?: string; + /** + * Output only. The unique ID of the line item. Assigned by the system. + */ + lineItemId?: string; + /** + * Required. The mask to control which fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$LineItem; + } + + export class Resource$Advertisers$Lineitems$Targetingtypes { + context: APIRequestContext; + assignedTargetingOptions: Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions; + constructor(context: APIRequestContext) { + this.context = context; + this.assignedTargetingOptions = + new Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions( + this.context + ); + } + } + + export class Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Assigns a targeting option to a line item. Returns the assigned targeting option if successful. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * lineItems.bulkEditAssignedTargetingOptions * lineItems.bulkUpdate * lineItems.patch * DeleteLineItemAssignedTargetingOption YouTube & Partners line items cannot be created or updated using the API. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.create( + * { + * // Required. The ID of the advertiser the line item belongs to. + * advertiserId: '[^/]+', + * // Required. The ID of the line item the assigned targeting option will belong to. + * lineItemId: '[^/]+', + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * targetingType: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "ageRangeDetails": {}, + * // "appCategoryDetails": {}, + * // "appDetails": {}, + * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", + * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", + * // "audienceGroupDetails": {}, + * // "audioContentTypeDetails": {}, + * // "authorizedSellerStatusDetails": {}, + * // "browserDetails": {}, + * // "businessChainDetails": {}, + * // "carrierAndIspDetails": {}, + * // "categoryDetails": {}, + * // "channelDetails": {}, + * // "contentDurationDetails": {}, + * // "contentGenreDetails": {}, + * // "contentInstreamPositionDetails": {}, + * // "contentOutstreamPositionDetails": {}, + * // "contentStreamTypeDetails": {}, + * // "contentThemeExclusionDetails": {}, + * // "dayAndTimeDetails": {}, + * // "deviceMakeModelDetails": {}, + * // "deviceTypeDetails": {}, + * // "digitalContentLabelExclusionDetails": {}, + * // "environmentDetails": {}, + * // "exchangeDetails": {}, + * // "genderDetails": {}, + * // "geoRegionDetails": {}, + * // "householdIncomeDetails": {}, + * // "inheritance": "my_inheritance", + * // "inventorySourceDetails": {}, + * // "inventorySourceGroupDetails": {}, + * // "keywordDetails": {}, + * // "languageDetails": {}, + * // "name": "my_name", + * // "nativeContentPositionDetails": {}, + * // "negativeKeywordListDetails": {}, + * // "omidDetails": {}, + * // "onScreenPositionDetails": {}, + * // "operatingSystemDetails": {}, + * // "parentalStatusDetails": {}, + * // "poiDetails": {}, + * // "proximityLocationListDetails": {}, + * // "regionalLocationListDetails": {}, + * // "sensitiveCategoryExclusionDetails": {}, + * // "sessionPositionDetails": {}, + * // "subExchangeDetails": {}, + * // "targetingType": "my_targetingType", + * // "thirdPartyVerifierDetails": {}, + * // "urlDetails": {}, + * // "userRewardedContentDetails": {}, + * // "videoPlayerSizeDetails": {}, + * // "viewabilityDetails": {}, + * // "youtubeChannelDetails": {}, + * // "youtubeVideoDetails": {} + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "ageRangeDetails": {}, + * // "appCategoryDetails": {}, + * // "appDetails": {}, + * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", + * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", + * // "audienceGroupDetails": {}, + * // "audioContentTypeDetails": {}, + * // "authorizedSellerStatusDetails": {}, + * // "browserDetails": {}, + * // "businessChainDetails": {}, + * // "carrierAndIspDetails": {}, + * // "categoryDetails": {}, + * // "channelDetails": {}, + * // "contentDurationDetails": {}, + * // "contentGenreDetails": {}, + * // "contentInstreamPositionDetails": {}, + * // "contentOutstreamPositionDetails": {}, + * // "contentStreamTypeDetails": {}, + * // "contentThemeExclusionDetails": {}, + * // "dayAndTimeDetails": {}, + * // "deviceMakeModelDetails": {}, + * // "deviceTypeDetails": {}, + * // "digitalContentLabelExclusionDetails": {}, + * // "environmentDetails": {}, + * // "exchangeDetails": {}, + * // "genderDetails": {}, + * // "geoRegionDetails": {}, + * // "householdIncomeDetails": {}, + * // "inheritance": "my_inheritance", + * // "inventorySourceDetails": {}, + * // "inventorySourceGroupDetails": {}, + * // "keywordDetails": {}, + * // "languageDetails": {}, + * // "name": "my_name", + * // "nativeContentPositionDetails": {}, + * // "negativeKeywordListDetails": {}, + * // "omidDetails": {}, + * // "onScreenPositionDetails": {}, + * // "operatingSystemDetails": {}, + * // "parentalStatusDetails": {}, + * // "poiDetails": {}, + * // "proximityLocationListDetails": {}, + * // "regionalLocationListDetails": {}, + * // "sensitiveCategoryExclusionDetails": {}, + * // "sessionPositionDetails": {}, + * // "subExchangeDetails": {}, + * // "targetingType": "my_targetingType", + * // "thirdPartyVerifierDetails": {}, + * // "urlDetails": {}, + * // "userRewardedContentDetails": {}, + * // "videoPlayerSizeDetails": {}, + * // "viewabilityDetails": {}, + * // "youtubeChannelDetails": {}, + * // "youtubeVideoDetails": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create, + callback: BodyResponseCallback + ): void; + create( + callback: BodyResponseCallback + ): void; + create( + paramsOrCallback?: + | Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}/targetingTypes/{+targetingType}/assignedTargetingOptions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId', 'lineItemId', 'targetingType'], + pathParams: ['advertiserId', 'lineItemId', 'targetingType'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes an assigned targeting option from a line item. Requests to this endpoint cannot be made concurrently with the following requests updating the same line item: * lineItems.bulkEditAssignedTargetingOptions * lineItems.bulkUpdate * lineItems.patch * CreateLineItemAssignedTargetingOption YouTube & Partners line items cannot be created or updated using the API. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.delete( + * { + * // Required. The ID of the advertiser the line item belongs to. + * advertiserId: '[^/]+', + * // Required. The ID of the assigned targeting option to delete. + * assignedTargetingOptionId: '[^/]+', + * // Required. The ID of the line item the assigned targeting option belongs to. + * lineItemId: '[^/]+', + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * targetingType: '[^/]+', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'advertiserId', + 'lineItemId', + 'targetingType', + 'assignedTargetingOptionId', + ], + pathParams: [ + 'advertiserId', + 'assignedTargetingOptionId', + 'lineItemId', + 'targetingType', + ], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets a single targeting option assigned to a line item. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.get( + * { + * // Required. The ID of the advertiser the line item belongs to. + * advertiserId: '[^/]+', + * // Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested. + * assignedTargetingOptionId: '[^/]+', + * // Required. The ID of the line item the assigned targeting option belongs to. + * lineItemId: '[^/]+', + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * targetingType: '[^/]+', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "ageRangeDetails": {}, + * // "appCategoryDetails": {}, + * // "appDetails": {}, + * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", + * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", + * // "audienceGroupDetails": {}, + * // "audioContentTypeDetails": {}, + * // "authorizedSellerStatusDetails": {}, + * // "browserDetails": {}, + * // "businessChainDetails": {}, + * // "carrierAndIspDetails": {}, + * // "categoryDetails": {}, + * // "channelDetails": {}, + * // "contentDurationDetails": {}, + * // "contentGenreDetails": {}, + * // "contentInstreamPositionDetails": {}, + * // "contentOutstreamPositionDetails": {}, + * // "contentStreamTypeDetails": {}, + * // "contentThemeExclusionDetails": {}, + * // "dayAndTimeDetails": {}, + * // "deviceMakeModelDetails": {}, + * // "deviceTypeDetails": {}, + * // "digitalContentLabelExclusionDetails": {}, + * // "environmentDetails": {}, + * // "exchangeDetails": {}, + * // "genderDetails": {}, + * // "geoRegionDetails": {}, + * // "householdIncomeDetails": {}, + * // "inheritance": "my_inheritance", + * // "inventorySourceDetails": {}, + * // "inventorySourceGroupDetails": {}, + * // "keywordDetails": {}, + * // "languageDetails": {}, + * // "name": "my_name", + * // "nativeContentPositionDetails": {}, + * // "negativeKeywordListDetails": {}, + * // "omidDetails": {}, + * // "onScreenPositionDetails": {}, + * // "operatingSystemDetails": {}, + * // "parentalStatusDetails": {}, + * // "poiDetails": {}, + * // "proximityLocationListDetails": {}, + * // "regionalLocationListDetails": {}, + * // "sensitiveCategoryExclusionDetails": {}, + * // "sessionPositionDetails": {}, + * // "subExchangeDetails": {}, + * // "targetingType": "my_targetingType", + * // "thirdPartyVerifierDetails": {}, + * // "urlDetails": {}, + * // "userRewardedContentDetails": {}, + * // "videoPlayerSizeDetails": {}, + * // "viewabilityDetails": {}, + * // "youtubeChannelDetails": {}, + * // "youtubeVideoDetails": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'advertiserId', + 'lineItemId', + 'targetingType', + 'assignedTargetingOptionId', + ], + pathParams: [ + 'advertiserId', + 'assignedTargetingOptionId', + 'lineItemId', + 'targetingType', + ], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists the targeting options assigned to a line item. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await displayvideo.advertisers.lineItems.targetingTypes.assignedTargetingOptions.list( + * { + * // Required. The ID of the advertiser the line item belongs to. + * advertiserId: '[^/]+', + * // Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` * `inheritance` Examples: * `AssignedTargetingOption` resources with ID 1 or 2: `assignedTargetingOptionId="1" OR assignedTargetingOptionId="2"` * `AssignedTargetingOption` resources with inheritance status of `NOT_INHERITED` or `INHERITED_FROM_PARTNER`: `inheritance="NOT_INHERITED" OR inheritance="INHERITED_FROM_PARTNER"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Required. The ID of the line item to list assigned targeting options for. + * lineItemId: '[^/]+', + * // Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `assignedTargetingOptionId desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItemAssignedTargetingOptions` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * targetingType: '[^/]+', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "assignedTargetingOptions": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v3/advertisers/{+advertiserId}/lineItems/{+lineItemId}/targetingTypes/{+targetingType}/assignedTargetingOptions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId', 'lineItemId', 'targetingType'], + pathParams: ['advertiserId', 'lineItemId', 'targetingType'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Create extends StandardParameters { + /** + * Required. The ID of the advertiser the line item belongs to. + */ + advertiserId?: string; + /** + * Required. The ID of the line item the assigned targeting option will belong to. + */ + lineItemId?: string; + /** + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + */ + targetingType?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AssignedTargetingOption; + } + export interface Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Delete extends StandardParameters { + /** + * Required. The ID of the advertiser the line item belongs to. + */ + advertiserId?: string; + /** + * Required. The ID of the assigned targeting option to delete. + */ + assignedTargetingOptionId?: string; + /** + * Required. The ID of the line item the assigned targeting option belongs to. + */ + lineItemId?: string; + /** + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + */ + targetingType?: string; + } + export interface Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$Get extends StandardParameters { + /** + * Required. The ID of the advertiser the line item belongs to. + */ + advertiserId?: string; + /** + * Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested. + */ + assignedTargetingOptionId?: string; + /** + * Required. The ID of the line item the assigned targeting option belongs to. + */ + lineItemId?: string; + /** + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + */ + targetingType?: string; + } + export interface Params$Resource$Advertisers$Lineitems$Targetingtypes$Assignedtargetingoptions$List extends StandardParameters { + /** + * Required. The ID of the advertiser the line item belongs to. + */ + advertiserId?: string; + /** + * Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` * `inheritance` Examples: * `AssignedTargetingOption` resources with ID 1 or 2: `assignedTargetingOptionId="1" OR assignedTargetingOptionId="2"` * `AssignedTargetingOption` resources with inheritance status of `NOT_INHERITED` or `INHERITED_FROM_PARTNER`: `inheritance="NOT_INHERITED" OR inheritance="INHERITED_FROM_PARTNER"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Required. The ID of the line item to list assigned targeting options for. + */ + lineItemId?: string; + /** + * Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `assignedTargetingOptionId desc`. + */ + orderBy?: string; + /** + * Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItemAssignedTargetingOptions` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + /** + * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + */ + targetingType?: string; + } + + export class Resource$Advertisers$Locationlists { + context: APIRequestContext; + assignedLocations: Resource$Advertisers$Locationlists$Assignedlocations; + constructor(context: APIRequestContext) { + this.context = context; + this.assignedLocations = + new Resource$Advertisers$Locationlists$Assignedlocations(this.context); + } + + /** + * Creates a new location list. Returns the newly created location list if successful. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.locationLists.assignedLocations.list({ - * // Required. The ID of the DV360 advertiser to which the location list belongs. - * advertiserId: 'placeholder-value', - * // Allows filtering by location list assignment fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the `OR` logical operator. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedLocationId` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Required. The ID of the location list to which these assignments are assigned. - * locationListId: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `assignedLocationId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `assignedLocationId desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAssignedLocations` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * }); + * const res = await displayvideo.advertisers.locationLists.create({ + * // Required. The ID of the DV360 advertiser to which the location list belongs. + * advertiserId: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advertiserId": "my_advertiserId", + * // "displayName": "my_displayName", + * // "locationListId": "my_locationListId", + * // "locationType": "my_locationType", + * // "name": "my_name" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "assignedLocations": [], - * // "nextPageToken": "my_nextPageToken" + * // "advertiserId": "my_advertiserId", + * // "displayName": "my_displayName", + * // "locationListId": "my_locationListId", + * // "locationType": "my_locationType", + * // "name": "my_name" * // } * } * @@ -18031,58 +18791,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Locationlists$Assignedlocations$List, + create( + params: Params$Resource$Advertisers$Locationlists$Create, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Locationlists$Assignedlocations$List, + create( + params?: Params$Resource$Advertisers$Locationlists$Create, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$List, + ): Promise>; + create( + params: Params$Resource$Advertisers$Locationlists$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Advertisers$Locationlists$Assignedlocations$List, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Locationlists$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Locationlists$Create, + callback: BodyResponseCallback ): void; - list( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Advertisers$Locationlists$Assignedlocations$List - | BodyResponseCallback + | Params$Resource$Advertisers$Locationlists$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Locationlists$Assignedlocations$List; + {}) as Params$Resource$Advertisers$Locationlists$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Locationlists$Assignedlocations$List; + params = {} as Params$Resource$Advertisers$Locationlists$Create; options = {}; } @@ -18096,116 +18851,173 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/advertisers/{advertiserId}/locationLists/{locationListId}/assignedLocations' + rootUrl + '/v3/advertisers/{+advertiserId}/locationLists' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'locationListId'], - pathParams: ['advertiserId', 'locationListId'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the location list belongs. - */ - advertiserId?: string; - /** - * Required. The ID of the location list to which these assignments are assigned. - */ - locationListId?: string; /** - * Request body metadata - */ - requestBody?: Schema$BulkEditAssignedLocationsRequest; - } - export interface Params$Resource$Advertisers$Locationlists$Assignedlocations$Create extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the location list belongs. - */ - advertiserId?: string; - /** - * Required. The ID of the location list for which the assignment will be created. + * Gets a location list. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.advertisers.locationLists.get({ + * // Required. The ID of the DV360 advertiser to which the fetched location list belongs. + * advertiserId: '[^/]+', + * // Required. The ID of the location list to fetch. + * locationListId: '[^/]+', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "advertiserId": "my_advertiserId", + * // "displayName": "my_displayName", + * // "locationListId": "my_locationListId", + * // "locationType": "my_locationType", + * // "name": "my_name" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - locationListId?: string; + get( + params: Params$Resource$Advertisers$Locationlists$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Advertisers$Locationlists$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Advertisers$Locationlists$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Advertisers$Locationlists$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Advertisers$Locationlists$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Advertisers$Locationlists$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Locationlists$Get; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$AssignedLocation; - } - export interface Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the location list belongs. - */ - advertiserId?: string; - /** - * Required. The ID of the assigned location to delete. - */ - assignedLocationId?: string; - /** - * Required. The ID of the location list to which this assignment is assigned. - */ - locationListId?: string; - } - export interface Params$Resource$Advertisers$Locationlists$Assignedlocations$List extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the location list belongs. - */ - advertiserId?: string; - /** - * Allows filtering by location list assignment fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the `OR` logical operator. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedLocationId` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Required. The ID of the location list to which these assignments are assigned. - */ - locationListId?: string; - /** - * Field by which to sort the list. Acceptable values are: * `assignedLocationId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `assignedLocationId desc`. - */ - orderBy?: string; - /** - * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAssignedLocations` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - } + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Advertisers$Locationlists$Get; + options = {}; + } - export class Resource$Advertisers$Negativekeywordlists { - context: APIRequestContext; - negativeKeywords: Resource$Advertisers$Negativekeywordlists$Negativekeywords; - constructor(context: APIRequestContext) { - this.context = context; - this.negativeKeywords = - new Resource$Advertisers$Negativekeywordlists$Negativekeywords( - this.context + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v3/advertisers/{+advertiserId}/locationLists/{+locationListId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId', 'locationListId'], + pathParams: ['advertiserId', 'locationListId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback ); + } else { + return createAPIRequest(parameters); + } } /** - * Creates a new negative keyword list. Returns the newly created negative keyword list if successful. + * Lists location lists based on a given advertiser id. * @example * ```js * // Before running the sample: @@ -18234,31 +19046,24 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.negativeKeywordLists.create({ - * // Required. The ID of the DV360 advertiser to which the negative keyword list will belong. + * const res = await displayvideo.advertisers.locationLists.list({ + * // Required. The ID of the DV360 advertiser to which the fetched location lists belong. * advertiserId: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advertiserId": "my_advertiserId", - * // "displayName": "my_displayName", - * // "name": "my_name", - * // "negativeKeywordListId": "my_negativeKeywordListId", - * // "targetedLineItemCount": "my_targetedLineItemCount" - * // } - * }, + * // Allows filtering by location list fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `locationType` Examples: * All regional location list: `locationType="TARGETING_LOCATION_TYPE_REGIONAL"` * All proximity location list: `locationType="TARGETING_LOCATION_TYPE_PROXIMITY"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `locationListId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `200`. Defaults to `100` if not set. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLocationLists` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "advertiserId": "my_advertiserId", - * // "displayName": "my_displayName", - * // "name": "my_name", - * // "negativeKeywordListId": "my_negativeKeywordListId", - * // "targetedLineItemCount": "my_targetedLineItemCount" + * // "locationLists": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -18274,53 +19079,57 @@ export namespace displayvideo_v3 { * @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$Advertisers$Negativekeywordlists$Create, + list( + params: Params$Resource$Advertisers$Locationlists$List, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Advertisers$Negativekeywordlists$Create, + list( + params?: Params$Resource$Advertisers$Locationlists$List, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Advertisers$Negativekeywordlists$Create, + ): Promise>; + list( + params: Params$Resource$Advertisers$Locationlists$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Negativekeywordlists$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Locationlists$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Negativekeywordlists$Create, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Locationlists$List, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Advertisers$Negativekeywordlists$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Locationlists$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Negativekeywordlists$Create; + {}) as Params$Resource$Advertisers$Locationlists$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Negativekeywordlists$Create; + params = {} as Params$Resource$Advertisers$Locationlists$List; options = {}; } @@ -18334,9 +19143,9 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/negativeKeywordLists' + rootUrl + '/v3/advertisers/{+advertiserId}/locationLists' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -18347,17 +19156,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a negative keyword list given an advertiser ID and a negative keyword list ID. + * Updates a location list. Returns the updated location list if successful. * @example * ```js * // Before running the sample: @@ -18386,16 +19195,36 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.negativeKeywordLists.delete({ - * // Required. The ID of the DV360 advertiser to which the negative keyword list belongs. + * const res = await displayvideo.advertisers.locationLists.patch({ + * // Required. The ID of the DV360 advertiser to which the location lists belongs. * advertiserId: '[^/]+', - * // Required. The ID of the negative keyword list to delete. - * negativeKeywordListId: '[^/]+', + * // Output only. The unique ID of the location list. Assigned by the system. + * locationListId: 'placeholder-value', + * // Required. The mask to control which fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advertiserId": "my_advertiserId", + * // "displayName": "my_displayName", + * // "locationListId": "my_locationListId", + * // "locationType": "my_locationType", + * // "name": "my_name" + * // } + * }, * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "advertiserId": "my_advertiserId", + * // "displayName": "my_displayName", + * // "locationListId": "my_locationListId", + * // "locationType": "my_locationType", + * // "name": "my_name" + * // } * } * * main().catch(e => { @@ -18410,53 +19239,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Negativekeywordlists$Delete, + patch( + params: Params$Resource$Advertisers$Locationlists$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Advertisers$Negativekeywordlists$Delete, + patch( + params?: Params$Resource$Advertisers$Locationlists$Patch, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Advertisers$Negativekeywordlists$Delete, + ): Promise>; + patch( + params: Params$Resource$Advertisers$Locationlists$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Negativekeywordlists$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Advertisers$Locationlists$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Negativekeywordlists$Delete, - callback: BodyResponseCallback + patch( + params: Params$Resource$Advertisers$Locationlists$Patch, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Advertisers$Negativekeywordlists$Delete - | BodyResponseCallback + | Params$Resource$Advertisers$Locationlists$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Negativekeywordlists$Delete; + {}) as Params$Resource$Advertisers$Locationlists$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Negativekeywordlists$Delete; + params = {} as Params$Resource$Advertisers$Locationlists$Patch; options = {}; } @@ -18471,30 +19300,100 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/negativeKeywordLists/{+negativeKeywordListId}' + '/v3/advertisers/{+advertiserId}/locationLists/{locationListId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'negativeKeywordListId'], - pathParams: ['advertiserId', 'negativeKeywordListId'], + requiredParams: ['advertiserId', 'locationListId'], + pathParams: ['advertiserId', 'locationListId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + + export interface Params$Resource$Advertisers$Locationlists$Create extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the location list belongs. + */ + advertiserId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$LocationList; + } + export interface Params$Resource$Advertisers$Locationlists$Get extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the fetched location list belongs. + */ + advertiserId?: string; + /** + * Required. The ID of the location list to fetch. + */ + locationListId?: string; + } + export interface Params$Resource$Advertisers$Locationlists$List extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the fetched location lists belong. + */ + advertiserId?: string; + /** + * Allows filtering by location list fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `locationType` Examples: * All regional location list: `locationType="TARGETING_LOCATION_TYPE_REGIONAL"` * All proximity location list: `locationType="TARGETING_LOCATION_TYPE_PROXIMITY"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Field by which to sort the list. Acceptable values are: * `locationListId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + */ + orderBy?: string; + /** + * Requested page size. Must be between `1` and `200`. Defaults to `100` if not set. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLocationLists` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + } + export interface Params$Resource$Advertisers$Locationlists$Patch extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the location lists belongs. + */ + advertiserId?: string; + /** + * Output only. The unique ID of the location list. Assigned by the system. + */ + locationListId?: string; + /** + * Required. The mask to control which fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$LocationList; + } + + export class Resource$Advertisers$Locationlists$Assignedlocations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Gets a negative keyword list given an advertiser ID and a negative keyword list ID. + * Bulk edits multiple assignments between locations and a single location list. The operation will delete the assigned locations provided in deletedAssignedLocations and then create the assigned locations provided in createdAssignedLocations. * @example * ```js * // Before running the sample: @@ -18523,21 +19422,27 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.negativeKeywordLists.get({ - * // Required. The ID of the DV360 advertiser to which the fetched negative keyword list belongs. - * advertiserId: '[^/]+', - * // Required. The ID of the negative keyword list to fetch. - * negativeKeywordListId: '[^/]+', - * }); + * const res = + * await displayvideo.advertisers.locationLists.assignedLocations.bulkEdit({ + * // Required. The ID of the DV360 advertiser to which the location list belongs. + * advertiserId: 'placeholder-value', + * // Required. The ID of the location list to which these assignments are assigned. + * locationListId: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createdAssignedLocations": [], + * // "deletedAssignedLocations": [] + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "advertiserId": "my_advertiserId", - * // "displayName": "my_displayName", - * // "name": "my_name", - * // "negativeKeywordListId": "my_negativeKeywordListId", - * // "targetedLineItemCount": "my_targetedLineItemCount" + * // "assignedLocations": [] * // } * } * @@ -18553,53 +19458,62 @@ export namespace displayvideo_v3 { * @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$Advertisers$Negativekeywordlists$Get, + bulkEdit( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Advertisers$Negativekeywordlists$Get, + bulkEdit( + params?: Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Advertisers$Negativekeywordlists$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + bulkEdit( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Negativekeywordlists$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + bulkEdit( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Negativekeywordlists$Get, - callback: BodyResponseCallback + bulkEdit( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + bulkEdit( + callback: BodyResponseCallback + ): void; + bulkEdit( paramsOrCallback?: - | Params$Resource$Advertisers$Negativekeywordlists$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Negativekeywordlists$Get; + {}) as Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Negativekeywordlists$Get; + params = + {} as Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit; options = {}; } @@ -18614,30 +19528,32 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/negativeKeywordLists/{+negativeKeywordListId}' + '/v3/advertisers/{advertiserId}/locationLists/{+locationListId}/assignedLocations:bulkEdit' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'negativeKeywordListId'], - pathParams: ['advertiserId', 'negativeKeywordListId'], + requiredParams: ['advertiserId', 'locationListId'], + pathParams: ['advertiserId', 'locationListId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Lists negative keyword lists based on a given advertiser id. + * Creates an assignment between a location and a location list. * @example * ```js * // Before running the sample: @@ -18666,20 +19582,30 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.negativeKeywordLists.list({ - * // Required. The ID of the DV360 advertiser to which the fetched negative keyword lists belong. - * advertiserId: '[^/]+', - * // Requested page size. Must be between `1` and `200`. Defaults to `100` if not set. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListNegativeKeywordLists` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * }); + * const res = + * await displayvideo.advertisers.locationLists.assignedLocations.create({ + * // Required. The ID of the DV360 advertiser to which the location list belongs. + * advertiserId: 'placeholder-value', + * // Required. The ID of the location list for which the assignment will be created. + * locationListId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "assignedLocationId": "my_assignedLocationId", + * // "name": "my_name", + * // "targetingOptionId": "my_targetingOptionId" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "negativeKeywordLists": [], - * // "nextPageToken": "my_nextPageToken" + * // "assignedLocationId": "my_assignedLocationId", + * // "name": "my_name", + * // "targetingOptionId": "my_targetingOptionId" * // } * } * @@ -18695,61 +19621,54 @@ export namespace displayvideo_v3 { * @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$Advertisers$Negativekeywordlists$List, + create( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Create, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Negativekeywordlists$List, + create( + params?: Params$Resource$Advertisers$Locationlists$Assignedlocations$Create, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Advertisers$Negativekeywordlists$List, + ): Promise>; + create( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Negativekeywordlists$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Advertisers$Negativekeywordlists$List, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Create, + callback: BodyResponseCallback ): void; - list( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Advertisers$Negativekeywordlists$List - | BodyResponseCallback + | Params$Resource$Advertisers$Locationlists$Assignedlocations$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Negativekeywordlists$List; + {}) as Params$Resource$Advertisers$Locationlists$Assignedlocations$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Negativekeywordlists$List; + params = + {} as Params$Resource$Advertisers$Locationlists$Assignedlocations$Create; options = {}; } @@ -18763,32 +19682,31 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/advertisers/{+advertiserId}/negativeKeywordLists' + rootUrl + + '/v3/advertisers/{advertiserId}/locationLists/{locationListId}/assignedLocations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'locationListId'], + pathParams: ['advertiserId', 'locationListId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates a negative keyword list. Returns the updated negative keyword list if successful. + * Deletes the assignment between a location and a location list. * @example * ```js * // Before running the sample: @@ -18804,49 +19722,32 @@ export namespace displayvideo_v3 { * // ``` * * const {google} = require('googleapis'); - * const displayvideo = google.displayvideo('v3'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await displayvideo.advertisers.negativeKeywordLists.patch({ - * // Required. The ID of the DV360 advertiser to which the negative keyword list belongs. - * advertiserId: '[^/]+', - * // Output only. The unique ID of the negative keyword list. Assigned by the system. - * negativeKeywordListId: 'placeholder-value', - * // Required. The mask to control which fields to update. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advertiserId": "my_advertiserId", - * // "displayName": "my_displayName", - * // "name": "my_name", - * // "negativeKeywordListId": "my_negativeKeywordListId", - * // "targetedLineItemCount": "my_targetedLineItemCount" - * // } - * }, + * const displayvideo = google.displayvideo('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await displayvideo.advertisers.locationLists.assignedLocations.delete({ + * // Required. The ID of the DV360 advertiser to which the location list belongs. + * advertiserId: 'placeholder-value', + * // Required. The ID of the assigned location to delete. + * assignedLocationId: '[^/]+', + * // Required. The ID of the location list to which this assignment is assigned. + * locationListId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response - * // { - * // "advertiserId": "my_advertiserId", - * // "displayName": "my_displayName", - * // "name": "my_name", - * // "negativeKeywordListId": "my_negativeKeywordListId", - * // "targetedLineItemCount": "my_targetedLineItemCount" - * // } + * // {} * } * * main().catch(e => { @@ -18861,53 +19762,54 @@ export namespace displayvideo_v3 { * @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$Advertisers$Negativekeywordlists$Patch, + delete( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Advertisers$Negativekeywordlists$Patch, + delete( + params?: Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Advertisers$Negativekeywordlists$Patch, + ): Promise>; + delete( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Advertisers$Negativekeywordlists$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Advertisers$Negativekeywordlists$Patch, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Advertisers$Negativekeywordlists$Patch - | BodyResponseCallback + | Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Negativekeywordlists$Patch; + {}) as Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Negativekeywordlists$Patch; + params = + {} as Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete; options = {}; } @@ -18922,102 +19824,34 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/negativeKeywordLists/{negativeKeywordListId}' + '/v3/advertisers/{advertiserId}/locationLists/{locationListId}/assignedLocations/{+assignedLocationId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'negativeKeywordListId'], - pathParams: ['advertiserId', 'negativeKeywordListId'], + requiredParams: [ + 'advertiserId', + 'locationListId', + 'assignedLocationId', + ], + pathParams: ['advertiserId', 'assignedLocationId', 'locationListId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Advertisers$Negativekeywordlists$Create extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the negative keyword list will belong. - */ - advertiserId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NegativeKeywordList; - } - export interface Params$Resource$Advertisers$Negativekeywordlists$Delete extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the negative keyword list belongs. - */ - advertiserId?: string; - /** - * Required. The ID of the negative keyword list to delete. - */ - negativeKeywordListId?: string; - } - export interface Params$Resource$Advertisers$Negativekeywordlists$Get extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the fetched negative keyword list belongs. - */ - advertiserId?: string; - /** - * Required. The ID of the negative keyword list to fetch. - */ - negativeKeywordListId?: string; - } - export interface Params$Resource$Advertisers$Negativekeywordlists$List extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the fetched negative keyword lists belong. - */ - advertiserId?: string; - /** - * Requested page size. Must be between `1` and `200`. Defaults to `100` if not set. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListNegativeKeywordLists` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - } - export interface Params$Resource$Advertisers$Negativekeywordlists$Patch extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the negative keyword list belongs. - */ - advertiserId?: string; - /** - * Output only. The unique ID of the negative keyword list. Assigned by the system. - */ - negativeKeywordListId?: string; - /** - * Required. The mask to control which fields to update. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NegativeKeywordList; - } - - export class Resource$Advertisers$Negativekeywordlists$Negativekeywords { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Bulk edits negative keywords in a single negative keyword list. The operation will delete the negative keywords provided in BulkEditNegativeKeywordsRequest.deleted_negative_keywords and then create the negative keywords provided in BulkEditNegativeKeywordsRequest.created_negative_keywords. This operation is guaranteed to be atomic and will never result in a partial success or partial failure. + * Lists locations assigned to a location list. * @example * ```js * // Before running the sample: @@ -19047,28 +19881,26 @@ export namespace displayvideo_v3 { * * // Do the magic * const res = - * await displayvideo.advertisers.negativeKeywordLists.negativeKeywords.bulkEdit( - * { - * // Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. - * advertiserId: 'placeholder-value', - * // Required. The ID of the parent negative keyword list to which the negative keywords belong. - * negativeKeywordListId: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createdNegativeKeywords": [], - * // "deletedNegativeKeywords": [] - * // } - * }, - * }, - * ); + * await displayvideo.advertisers.locationLists.assignedLocations.list({ + * // Required. The ID of the DV360 advertiser to which the location list belongs. + * advertiserId: 'placeholder-value', + * // Allows filtering by location list assignment fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the `OR` logical operator. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedLocationId` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Required. The ID of the location list to which these assignments are assigned. + * locationListId: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `assignedLocationId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `assignedLocationId desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAssignedLocations` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "negativeKeywords": [] + * // "assignedLocations": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -19084,62 +19916,58 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkEdit( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit, + list( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$List, options: StreamMethodOptions ): Promise>; - bulkEdit( - params?: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit, + list( + params?: Params$Resource$Advertisers$Locationlists$Assignedlocations$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - bulkEdit( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit, + ): Promise>; + list( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkEdit( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit, + list( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - bulkEdit( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Locationlists$Assignedlocations$List, + callback: BodyResponseCallback ): void; - bulkEdit( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - bulkEdit( + list( paramsOrCallback?: - | Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit - | BodyResponseCallback + | Params$Resource$Advertisers$Locationlists$Assignedlocations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit; + {}) as Params$Resource$Advertisers$Locationlists$Assignedlocations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit; + {} as Params$Resource$Advertisers$Locationlists$Assignedlocations$List; options = {}; } @@ -19154,32 +19982,115 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{advertiserId}/negativeKeywordLists/{+negativeKeywordListId}/negativeKeywords:bulkEdit' + '/v3/advertisers/{advertiserId}/locationLists/{locationListId}/assignedLocations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'negativeKeywordListId'], - pathParams: ['advertiserId', 'negativeKeywordListId'], + requiredParams: ['advertiserId', 'locationListId'], + pathParams: ['advertiserId', 'locationListId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } + } + export interface Params$Resource$Advertisers$Locationlists$Assignedlocations$Bulkedit extends StandardParameters { /** - * Creates a negative keyword in a negative keyword list. + * Required. The ID of the DV360 advertiser to which the location list belongs. + */ + advertiserId?: string; + /** + * Required. The ID of the location list to which these assignments are assigned. + */ + locationListId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BulkEditAssignedLocationsRequest; + } + export interface Params$Resource$Advertisers$Locationlists$Assignedlocations$Create extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the location list belongs. + */ + advertiserId?: string; + /** + * Required. The ID of the location list for which the assignment will be created. + */ + locationListId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AssignedLocation; + } + export interface Params$Resource$Advertisers$Locationlists$Assignedlocations$Delete extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the location list belongs. + */ + advertiserId?: string; + /** + * Required. The ID of the assigned location to delete. + */ + assignedLocationId?: string; + /** + * Required. The ID of the location list to which this assignment is assigned. + */ + locationListId?: string; + } + export interface Params$Resource$Advertisers$Locationlists$Assignedlocations$List extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the location list belongs. + */ + advertiserId?: string; + /** + * Allows filtering by location list assignment fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the `OR` logical operator. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedLocationId` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Required. The ID of the location list to which these assignments are assigned. + */ + locationListId?: string; + /** + * Field by which to sort the list. Acceptable values are: * `assignedLocationId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `assignedLocationId desc`. + */ + orderBy?: string; + /** + * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAssignedLocations` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + } + + export class Resource$Advertisers$Negativekeywordlists { + context: APIRequestContext; + negativeKeywords: Resource$Advertisers$Negativekeywordlists$Negativekeywords; + constructor(context: APIRequestContext) { + this.context = context; + this.negativeKeywords = + new Resource$Advertisers$Negativekeywordlists$Negativekeywords( + this.context + ); + } + + /** + * Creates a new negative keyword list. Returns the newly created negative keyword list if successful. * @example * ```js * // Before running the sample: @@ -19208,30 +20119,31 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.negativeKeywordLists.negativeKeywords.create( - * { - * // Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. - * advertiserId: 'placeholder-value', - * // Required. The ID of the parent negative keyword list in which the negative keyword will be created. - * negativeKeywordListId: '[^/]+', + * const res = await displayvideo.advertisers.negativeKeywordLists.create({ + * // Required. The ID of the DV360 advertiser to which the negative keyword list will belong. + * advertiserId: '[^/]+', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "keywordValue": "my_keywordValue", - * // "name": "my_name" - * // } - * }, - * }, - * ); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advertiserId": "my_advertiserId", + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "negativeKeywordListId": "my_negativeKeywordListId", + * // "targetedLineItemCount": "my_targetedLineItemCount" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "keywordValue": "my_keywordValue", - * // "name": "my_name" + * // "advertiserId": "my_advertiserId", + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "negativeKeywordListId": "my_negativeKeywordListId", + * // "targetedLineItemCount": "my_targetedLineItemCount" * // } * } * @@ -19248,53 +20160,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create, + params: Params$Resource$Advertisers$Negativekeywordlists$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create, + params?: Params$Resource$Advertisers$Negativekeywordlists$Create, options?: MethodOptions - ): Promise>; + ): Promise>; create( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create, + params: Params$Resource$Advertisers$Negativekeywordlists$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Negativekeywordlists$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; create( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Negativekeywordlists$Create, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; + create(callback: BodyResponseCallback): void; create( paramsOrCallback?: - | Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Negativekeywordlists$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create; + {}) as Params$Resource$Advertisers$Negativekeywordlists$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create; + params = {} as Params$Resource$Advertisers$Negativekeywordlists$Create; options = {}; } @@ -19308,8 +20219,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/advertisers/{advertiserId}/negativeKeywordLists/{+negativeKeywordListId}/negativeKeywords' + rootUrl + '/v3/advertisers/{+advertiserId}/negativeKeywordLists' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -19317,22 +20227,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['advertiserId', 'negativeKeywordListId'], - pathParams: ['advertiserId', 'negativeKeywordListId'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a negative keyword from a negative keyword list. + * Deletes a negative keyword list given an advertiser ID and a negative keyword list ID. * @example * ```js * // Before running the sample: @@ -19361,17 +20271,12 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.negativeKeywordLists.negativeKeywords.delete( - * { - * // Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. - * advertiserId: 'placeholder-value', - * // Required. The keyword value of the negative keyword to delete. - * keywordValue: '[^/]+', - * // Required. The ID of the parent negative keyword list to which the negative keyword belongs. - * negativeKeywordListId: '[^/]+', - * }, - * ); + * const res = await displayvideo.advertisers.negativeKeywordLists.delete({ + * // Required. The ID of the DV360 advertiser to which the negative keyword list belongs. + * advertiserId: '[^/]+', + * // Required. The ID of the negative keyword list to delete. + * negativeKeywordListId: '[^/]+', + * }); * console.log(res.data); * * // Example response @@ -19391,31 +20296,31 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete, + params: Params$Resource$Advertisers$Negativekeywordlists$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete, + params?: Params$Resource$Advertisers$Negativekeywordlists$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete, + params: Params$Resource$Advertisers$Negativekeywordlists$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete, + params: Params$Resource$Advertisers$Negativekeywordlists$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete, + params: Params$Resource$Advertisers$Negativekeywordlists$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete + | Params$Resource$Advertisers$Negativekeywordlists$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -19431,13 +20336,12 @@ export namespace displayvideo_v3 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete; + {}) as Params$Resource$Advertisers$Negativekeywordlists$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete; + params = {} as Params$Resource$Advertisers$Negativekeywordlists$Delete; options = {}; } @@ -19452,7 +20356,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{advertiserId}/negativeKeywordLists/{+negativeKeywordListId}/negativeKeywords/{+keywordValue}' + '/v3/advertisers/{+advertiserId}/negativeKeywordLists/{+negativeKeywordListId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -19460,12 +20364,8 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: [ - 'advertiserId', - 'negativeKeywordListId', - 'keywordValue', - ], - pathParams: ['advertiserId', 'keywordValue', 'negativeKeywordListId'], + requiredParams: ['advertiserId', 'negativeKeywordListId'], + pathParams: ['advertiserId', 'negativeKeywordListId'], context: this.context, }; if (callback) { @@ -19479,7 +20379,7 @@ export namespace displayvideo_v3 { } /** - * Lists negative keywords in a negative keyword list. + * Gets a negative keyword list given an advertiser ID and a negative keyword list ID. * @example * ```js * // Before running the sample: @@ -19508,27 +20408,21 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.negativeKeywordLists.negativeKeywords.list({ - * // Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. - * advertiserId: '[^/]+', - * // Allows filtering by negative keyword fields. Supported syntax: * Filter expressions for negative keywords can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `keywordValue` Examples: * All negative keywords for which the keyword value contains "google": `keywordValue : "google"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Required. The ID of the parent negative keyword list to which the requested negative keywords belong. - * negativeKeywordListId: '[^/]+', - * // Field by which to sort the list. Acceptable values are: * `keywordValue` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `keywordValue desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `1000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListNegativeKeywords` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * }); + * const res = await displayvideo.advertisers.negativeKeywordLists.get({ + * // Required. The ID of the DV360 advertiser to which the fetched negative keyword list belongs. + * advertiserId: '[^/]+', + * // Required. The ID of the negative keyword list to fetch. + * negativeKeywordListId: '[^/]+', + * }); * console.log(res.data); * * // Example response * // { - * // "negativeKeywords": [], - * // "nextPageToken": "my_nextPageToken" + * // "advertiserId": "my_advertiserId", + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "negativeKeywordListId": "my_negativeKeywordListId", + * // "targetedLineItemCount": "my_targetedLineItemCount" * // } * } * @@ -19544,58 +20438,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Negativekeywordlists$Negativekeywords$List, + get( + params: Params$Resource$Advertisers$Negativekeywordlists$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List, + get( + params?: Params$Resource$Advertisers$Negativekeywordlists$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List, + ): Promise>; + get( + params: Params$Resource$Advertisers$Negativekeywordlists$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Negativekeywordlists$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Negativekeywordlists$Get, + callback: BodyResponseCallback ): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List - | BodyResponseCallback + | Params$Resource$Advertisers$Negativekeywordlists$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List; + {}) as Params$Resource$Advertisers$Negativekeywordlists$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List; + params = {} as Params$Resource$Advertisers$Negativekeywordlists$Get; options = {}; } @@ -19610,7 +20499,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/negativeKeywordLists/{+negativeKeywordListId}/negativeKeywords' + '/v3/advertisers/{+advertiserId}/negativeKeywordLists/{+negativeKeywordListId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -19623,19 +20512,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Replaces all negative keywords in a single negative keyword list. The operation will replace the keywords in a negative keyword list with keywords provided in ReplaceNegativeKeywordsRequest.new_negative_keywords. + * Lists negative keyword lists based on a given advertiser id. * @example * ```js * // Before running the sample: @@ -19664,28 +20551,20 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.negativeKeywordLists.negativeKeywords.replace( - * { - * // Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. - * advertiserId: 'placeholder-value', - * // Required. The ID of the parent negative keyword list to which the negative keywords belong. - * negativeKeywordListId: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "newNegativeKeywords": [] - * // } - * }, - * }, - * ); + * const res = await displayvideo.advertisers.negativeKeywordLists.list({ + * // Required. The ID of the DV360 advertiser to which the fetched negative keyword lists belong. + * advertiserId: '[^/]+', + * // Requested page size. Must be between `1` and `200`. Defaults to `100` if not set. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListNegativeKeywordLists` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "negativeKeywords": [] + * // "negativeKeywordLists": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -19701,203 +20580,100 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - replace( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace, + list( + params: Params$Resource$Advertisers$Negativekeywordlists$List, options: StreamMethodOptions ): Promise>; - replace( - params?: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace, + list( + params?: Params$Resource$Advertisers$Negativekeywordlists$List, options?: MethodOptions - ): Promise>; - replace( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Advertisers$Negativekeywordlists$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - replace( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace, + list( + params: Params$Resource$Advertisers$Negativekeywordlists$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - replace( - params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Negativekeywordlists$List, + callback: BodyResponseCallback ): void; - replace( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - replace( + list( paramsOrCallback?: - | Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace - | BodyResponseCallback + | Params$Resource$Advertisers$Negativekeywordlists$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace; + {}) as Params$Resource$Advertisers$Negativekeywordlists$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; + params = {} as Params$Resource$Advertisers$Negativekeywordlists$List; options = {}; } - const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/v3/advertisers/{advertiserId}/negativeKeywordLists/{+negativeKeywordListId}/negativeKeywords:replace' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['advertiserId', 'negativeKeywordListId'], - pathParams: ['advertiserId', 'negativeKeywordListId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - } - - export interface Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. - */ - advertiserId?: string; - /** - * Required. The ID of the parent negative keyword list to which the negative keywords belong. - */ - negativeKeywordListId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$BulkEditNegativeKeywordsRequest; - } - export interface Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. - */ - advertiserId?: string; - /** - * Required. The ID of the parent negative keyword list in which the negative keyword will be created. - */ - negativeKeywordListId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NegativeKeyword; - } - export interface Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. - */ - advertiserId?: string; - /** - * Required. The keyword value of the negative keyword to delete. - */ - keywordValue?: string; - /** - * Required. The ID of the parent negative keyword list to which the negative keyword belongs. - */ - negativeKeywordListId?: string; - } - export interface Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. - */ - advertiserId?: string; - /** - * Allows filtering by negative keyword fields. Supported syntax: * Filter expressions for negative keywords can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `keywordValue` Examples: * All negative keywords for which the keyword value contains "google": `keywordValue : "google"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Required. The ID of the parent negative keyword list to which the requested negative keywords belong. - */ - negativeKeywordListId?: string; - /** - * Field by which to sort the list. Acceptable values are: * `keywordValue` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `keywordValue desc`. - */ - orderBy?: string; - /** - * Requested page size. Must be between `1` and `1000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListNegativeKeywords` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - } - export interface Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace extends StandardParameters { - /** - * Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. - */ - advertiserId?: string; - /** - * Required. The ID of the parent negative keyword list to which the negative keywords belong. - */ - negativeKeywordListId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ReplaceNegativeKeywordsRequest; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Advertisers$Targetingtypes { - context: APIRequestContext; - assignedTargetingOptions: Resource$Advertisers$Targetingtypes$Assignedtargetingoptions; - constructor(context: APIRequestContext) { - this.context = context; - this.assignedTargetingOptions = - new Resource$Advertisers$Targetingtypes$Assignedtargetingoptions( - this.context + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v3/advertisers/{+advertiserId}/negativeKeywordLists' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback ); - } - } - - export class Resource$Advertisers$Targetingtypes$Assignedtargetingoptions { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + } else { + return createAPIRequest( + parameters + ); + } } /** - * Assigns a targeting option to an advertiser. Returns the assigned targeting option if successful. + * Updates a negative keyword list. Returns the updated negative keyword list if successful. * @example * ```js * // Before running the sample: @@ -19926,134 +20702,35 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.targetingTypes.assignedTargetingOptions.create( - * { - * // Required. The ID of the advertiser. - * advertiserId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` - * targetingType: '[^/]+', + * const res = await displayvideo.advertisers.negativeKeywordLists.patch({ + * // Required. The ID of the DV360 advertiser to which the negative keyword list belongs. + * advertiserId: '[^/]+', + * // Output only. The unique ID of the negative keyword list. Assigned by the system. + * negativeKeywordListId: 'placeholder-value', + * // Required. The mask to control which fields to update. + * updateMask: 'placeholder-value', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "ageRangeDetails": {}, - * // "appCategoryDetails": {}, - * // "appDetails": {}, - * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", - * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", - * // "audienceGroupDetails": {}, - * // "audioContentTypeDetails": {}, - * // "authorizedSellerStatusDetails": {}, - * // "browserDetails": {}, - * // "businessChainDetails": {}, - * // "carrierAndIspDetails": {}, - * // "categoryDetails": {}, - * // "channelDetails": {}, - * // "contentDurationDetails": {}, - * // "contentGenreDetails": {}, - * // "contentInstreamPositionDetails": {}, - * // "contentOutstreamPositionDetails": {}, - * // "contentStreamTypeDetails": {}, - * // "contentThemeExclusionDetails": {}, - * // "dayAndTimeDetails": {}, - * // "deviceMakeModelDetails": {}, - * // "deviceTypeDetails": {}, - * // "digitalContentLabelExclusionDetails": {}, - * // "environmentDetails": {}, - * // "exchangeDetails": {}, - * // "genderDetails": {}, - * // "geoRegionDetails": {}, - * // "householdIncomeDetails": {}, - * // "inheritance": "my_inheritance", - * // "inventorySourceDetails": {}, - * // "inventorySourceGroupDetails": {}, - * // "keywordDetails": {}, - * // "languageDetails": {}, - * // "name": "my_name", - * // "nativeContentPositionDetails": {}, - * // "negativeKeywordListDetails": {}, - * // "omidDetails": {}, - * // "onScreenPositionDetails": {}, - * // "operatingSystemDetails": {}, - * // "parentalStatusDetails": {}, - * // "poiDetails": {}, - * // "proximityLocationListDetails": {}, - * // "regionalLocationListDetails": {}, - * // "sensitiveCategoryExclusionDetails": {}, - * // "sessionPositionDetails": {}, - * // "subExchangeDetails": {}, - * // "targetingType": "my_targetingType", - * // "thirdPartyVerifierDetails": {}, - * // "urlDetails": {}, - * // "userRewardedContentDetails": {}, - * // "videoPlayerSizeDetails": {}, - * // "viewabilityDetails": {}, - * // "youtubeChannelDetails": {}, - * // "youtubeVideoDetails": {} - * // } - * }, - * }, - * ); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advertiserId": "my_advertiserId", + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "negativeKeywordListId": "my_negativeKeywordListId", + * // "targetedLineItemCount": "my_targetedLineItemCount" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "ageRangeDetails": {}, - * // "appCategoryDetails": {}, - * // "appDetails": {}, - * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", - * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", - * // "audienceGroupDetails": {}, - * // "audioContentTypeDetails": {}, - * // "authorizedSellerStatusDetails": {}, - * // "browserDetails": {}, - * // "businessChainDetails": {}, - * // "carrierAndIspDetails": {}, - * // "categoryDetails": {}, - * // "channelDetails": {}, - * // "contentDurationDetails": {}, - * // "contentGenreDetails": {}, - * // "contentInstreamPositionDetails": {}, - * // "contentOutstreamPositionDetails": {}, - * // "contentStreamTypeDetails": {}, - * // "contentThemeExclusionDetails": {}, - * // "dayAndTimeDetails": {}, - * // "deviceMakeModelDetails": {}, - * // "deviceTypeDetails": {}, - * // "digitalContentLabelExclusionDetails": {}, - * // "environmentDetails": {}, - * // "exchangeDetails": {}, - * // "genderDetails": {}, - * // "geoRegionDetails": {}, - * // "householdIncomeDetails": {}, - * // "inheritance": "my_inheritance", - * // "inventorySourceDetails": {}, - * // "inventorySourceGroupDetails": {}, - * // "keywordDetails": {}, - * // "languageDetails": {}, + * // "advertiserId": "my_advertiserId", + * // "displayName": "my_displayName", * // "name": "my_name", - * // "nativeContentPositionDetails": {}, - * // "negativeKeywordListDetails": {}, - * // "omidDetails": {}, - * // "onScreenPositionDetails": {}, - * // "operatingSystemDetails": {}, - * // "parentalStatusDetails": {}, - * // "poiDetails": {}, - * // "proximityLocationListDetails": {}, - * // "regionalLocationListDetails": {}, - * // "sensitiveCategoryExclusionDetails": {}, - * // "sessionPositionDetails": {}, - * // "subExchangeDetails": {}, - * // "targetingType": "my_targetingType", - * // "thirdPartyVerifierDetails": {}, - * // "urlDetails": {}, - * // "userRewardedContentDetails": {}, - * // "videoPlayerSizeDetails": {}, - * // "viewabilityDetails": {}, - * // "youtubeChannelDetails": {}, - * // "youtubeVideoDetails": {} + * // "negativeKeywordListId": "my_negativeKeywordListId", + * // "targetedLineItemCount": "my_targetedLineItemCount" * // } * } * @@ -20069,58 +20746,53 @@ export namespace displayvideo_v3 { * @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$Advertisers$Targetingtypes$Assignedtargetingoptions$Create, + patch( + params: Params$Resource$Advertisers$Negativekeywordlists$Patch, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create, + patch( + params?: Params$Resource$Advertisers$Negativekeywordlists$Patch, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create, + ): Promise>; + patch( + params: Params$Resource$Advertisers$Negativekeywordlists$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create, - callback: BodyResponseCallback + patch( + params: Params$Resource$Advertisers$Negativekeywordlists$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + patch( + params: Params$Resource$Advertisers$Negativekeywordlists$Patch, + callback: BodyResponseCallback ): void; - create( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Negativekeywordlists$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create; + {}) as Params$Resource$Advertisers$Negativekeywordlists$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create; + params = {} as Params$Resource$Advertisers$Negativekeywordlists$Patch; options = {}; } @@ -20135,30 +20807,102 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/targetingTypes/{+targetingType}/assignedTargetingOptions' + '/v3/advertisers/{+advertiserId}/negativeKeywordLists/{negativeKeywordListId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'targetingType'], - pathParams: ['advertiserId', 'targetingType'], + requiredParams: ['advertiserId', 'negativeKeywordListId'], + pathParams: ['advertiserId', 'negativeKeywordListId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Advertisers$Negativekeywordlists$Create extends StandardParameters { /** - * Deletes an assigned targeting option from an advertiser. + * Required. The ID of the DV360 advertiser to which the negative keyword list will belong. + */ + advertiserId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NegativeKeywordList; + } + export interface Params$Resource$Advertisers$Negativekeywordlists$Delete extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the negative keyword list belongs. + */ + advertiserId?: string; + /** + * Required. The ID of the negative keyword list to delete. + */ + negativeKeywordListId?: string; + } + export interface Params$Resource$Advertisers$Negativekeywordlists$Get extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the fetched negative keyword list belongs. + */ + advertiserId?: string; + /** + * Required. The ID of the negative keyword list to fetch. + */ + negativeKeywordListId?: string; + } + export interface Params$Resource$Advertisers$Negativekeywordlists$List extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the fetched negative keyword lists belong. + */ + advertiserId?: string; + /** + * Requested page size. Must be between `1` and `200`. Defaults to `100` if not set. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListNegativeKeywordLists` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + } + export interface Params$Resource$Advertisers$Negativekeywordlists$Patch extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the negative keyword list belongs. + */ + advertiserId?: string; + /** + * Output only. The unique ID of the negative keyword list. Assigned by the system. + */ + negativeKeywordListId?: string; + /** + * Required. The mask to control which fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NegativeKeywordList; + } + + export class Resource$Advertisers$Negativekeywordlists$Negativekeywords { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Bulk edits negative keywords in a single negative keyword list. The operation will delete the negative keywords provided in BulkEditNegativeKeywordsRequest.deleted_negative_keywords and then create the negative keywords provided in BulkEditNegativeKeywordsRequest.created_negative_keywords. This operation is guaranteed to be atomic and will never result in a partial success or partial failure. * @example * ```js * // Before running the sample: @@ -20188,20 +20932,29 @@ export namespace displayvideo_v3 { * * // Do the magic * const res = - * await displayvideo.advertisers.targetingTypes.assignedTargetingOptions.delete( + * await displayvideo.advertisers.negativeKeywordLists.negativeKeywords.bulkEdit( * { - * // Required. The ID of the advertiser. - * advertiserId: '[^/]+', - * // Required. The ID of the assigned targeting option to delete. - * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` - * targetingType: '[^/]+', + * // Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. + * advertiserId: 'placeholder-value', + * // Required. The ID of the parent negative keyword list to which the negative keywords belong. + * negativeKeywordListId: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createdNegativeKeywords": [], + * // "deletedNegativeKeywords": [] + * // } + * }, * }, * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "negativeKeywords": [] + * // } * } * * main().catch(e => { @@ -20216,54 +20969,62 @@ export namespace displayvideo_v3 { * @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$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete, + bulkEdit( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete, + bulkEdit( + params?: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete, + ): Promise< + GaxiosResponseWithHTTP2 + >; + bulkEdit( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + bulkEdit( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete, - callback: BodyResponseCallback + bulkEdit( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + bulkEdit( + callback: BodyResponseCallback + ): void; + bulkEdit( paramsOrCallback?: - | Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete - | BodyResponseCallback + | Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete; + {}) as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete; + {} as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit; options = {}; } @@ -20278,38 +21039,32 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}' + '/v3/advertisers/{advertiserId}/negativeKeywordLists/{+negativeKeywordListId}/negativeKeywords:bulkEdit' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: [ - 'advertiserId', - 'targetingType', - 'assignedTargetingOptionId', - ], - pathParams: [ - 'advertiserId', - 'assignedTargetingOptionId', - 'targetingType', - ], + requiredParams: ['advertiserId', 'negativeKeywordListId'], + pathParams: ['advertiserId', 'negativeKeywordListId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Gets a single targeting option assigned to an advertiser. + * Creates a negative keyword in a negative keyword list. * @example * ```js * // Before running the sample: @@ -20339,72 +21094,29 @@ export namespace displayvideo_v3 { * * // Do the magic * const res = - * await displayvideo.advertisers.targetingTypes.assignedTargetingOptions.get({ - * // Required. The ID of the advertiser. - * advertiserId: '[^/]+', - * // Required. An identifier unique to the targeting type in this advertiser that identifies the assigned targeting option being requested. - * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_CONTENT_THEME_EXCLUSION` - * targetingType: '[^/]+', - * }); - * console.log(res.data); + * await displayvideo.advertisers.negativeKeywordLists.negativeKeywords.create( + * { + * // Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. + * advertiserId: 'placeholder-value', + * // Required. The ID of the parent negative keyword list in which the negative keyword will be created. + * negativeKeywordListId: '[^/]+', * - * // Example response - * // { - * // "ageRangeDetails": {}, - * // "appCategoryDetails": {}, - * // "appDetails": {}, - * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", - * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", - * // "audienceGroupDetails": {}, - * // "audioContentTypeDetails": {}, - * // "authorizedSellerStatusDetails": {}, - * // "browserDetails": {}, - * // "businessChainDetails": {}, - * // "carrierAndIspDetails": {}, - * // "categoryDetails": {}, - * // "channelDetails": {}, - * // "contentDurationDetails": {}, - * // "contentGenreDetails": {}, - * // "contentInstreamPositionDetails": {}, - * // "contentOutstreamPositionDetails": {}, - * // "contentStreamTypeDetails": {}, - * // "contentThemeExclusionDetails": {}, - * // "dayAndTimeDetails": {}, - * // "deviceMakeModelDetails": {}, - * // "deviceTypeDetails": {}, - * // "digitalContentLabelExclusionDetails": {}, - * // "environmentDetails": {}, - * // "exchangeDetails": {}, - * // "genderDetails": {}, - * // "geoRegionDetails": {}, - * // "householdIncomeDetails": {}, - * // "inheritance": "my_inheritance", - * // "inventorySourceDetails": {}, - * // "inventorySourceGroupDetails": {}, - * // "keywordDetails": {}, - * // "languageDetails": {}, - * // "name": "my_name", - * // "nativeContentPositionDetails": {}, - * // "negativeKeywordListDetails": {}, - * // "omidDetails": {}, - * // "onScreenPositionDetails": {}, - * // "operatingSystemDetails": {}, - * // "parentalStatusDetails": {}, - * // "poiDetails": {}, - * // "proximityLocationListDetails": {}, - * // "regionalLocationListDetails": {}, - * // "sensitiveCategoryExclusionDetails": {}, - * // "sessionPositionDetails": {}, - * // "subExchangeDetails": {}, - * // "targetingType": "my_targetingType", - * // "thirdPartyVerifierDetails": {}, - * // "urlDetails": {}, - * // "userRewardedContentDetails": {}, - * // "videoPlayerSizeDetails": {}, - * // "viewabilityDetails": {}, - * // "youtubeChannelDetails": {}, - * // "youtubeVideoDetails": {} + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "keywordValue": "my_keywordValue", + * // "name": "my_name" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "keywordValue": "my_keywordValue", + * // "name": "my_name" * // } * } * @@ -20420,56 +21132,54 @@ export namespace displayvideo_v3 { * @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$Advertisers$Targetingtypes$Assignedtargetingoptions$Get, + create( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get, + create( + params?: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get, + ): Promise>; + create( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get; + {}) as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get; + {} as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create; options = {}; } @@ -20484,38 +21194,30 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}' + '/v3/advertisers/{advertiserId}/negativeKeywordLists/{+negativeKeywordListId}/negativeKeywords' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: [ - 'advertiserId', - 'targetingType', - 'assignedTargetingOptionId', - ], - pathParams: [ - 'advertiserId', - 'assignedTargetingOptionId', - 'targetingType', - ], + requiredParams: ['advertiserId', 'negativeKeywordListId'], + pathParams: ['advertiserId', 'negativeKeywordListId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the targeting options assigned to an advertiser. + * Deletes a negative keyword from a negative keyword list. * @example * ```js * // Before running the sample: @@ -20545,29 +21247,20 @@ export namespace displayvideo_v3 { * * // Do the magic * const res = - * await displayvideo.advertisers.targetingTypes.assignedTargetingOptions.list( + * await displayvideo.advertisers.negativeKeywordLists.negativeKeywords.delete( * { - * // Required. The ID of the advertiser. - * advertiserId: '[^/]+', - * // Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the `OR` logical operator. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` Examples: * `AssignedTargetingOption` with ID 123456: `assignedTargetingOptionId="123456"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `assignedTargetingOptionId desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdvertiserAssignedTargetingOptions` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // Required. Identifies the type of assigned targeting options to list. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_CONTENT_THEME_EXCLUSION` - * targetingType: '[^/]+', + * // Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. + * advertiserId: 'placeholder-value', + * // Required. The keyword value of the negative keyword to delete. + * keywordValue: '[^/]+', + * // Required. The ID of the parent negative keyword list to which the negative keyword belongs. + * negativeKeywordListId: '[^/]+', * }, * ); * console.log(res.data); * * // Example response - * // { - * // "assignedTargetingOptions": [], - * // "nextPageToken": "my_nextPageToken" - * // } + * // {} * } * * main().catch(e => { @@ -20582,62 +21275,54 @@ export namespace displayvideo_v3 { * @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$Advertisers$Targetingtypes$Assignedtargetingoptions$List, + delete( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List, + delete( + params?: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List, + ): Promise>; + delete( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List - | BodyResponseCallback + | Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List; + {}) as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List; + {} as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete; options = {}; } @@ -20652,109 +21337,34 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/advertisers/{+advertiserId}/targetingTypes/{+targetingType}/assignedTargetingOptions' + '/v3/advertisers/{advertiserId}/negativeKeywordLists/{+negativeKeywordListId}/negativeKeywords/{+keywordValue}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['advertiserId', 'targetingType'], - pathParams: ['advertiserId', 'targetingType'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - } - - export interface Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create extends StandardParameters { - /** - * Required. The ID of the advertiser. - */ - advertiserId?: string; - /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` - */ - targetingType?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$AssignedTargetingOption; - } - export interface Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete extends StandardParameters { - /** - * Required. The ID of the advertiser. - */ - advertiserId?: string; - /** - * Required. The ID of the assigned targeting option to delete. - */ - assignedTargetingOptionId?: string; - /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` - */ - targetingType?: string; - } - export interface Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get extends StandardParameters { - /** - * Required. The ID of the advertiser. - */ - advertiserId?: string; - /** - * Required. An identifier unique to the targeting type in this advertiser that identifies the assigned targeting option being requested. - */ - assignedTargetingOptionId?: string; - /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_CONTENT_THEME_EXCLUSION` - */ - targetingType?: string; - } - export interface Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List extends StandardParameters { - /** - * Required. The ID of the advertiser. - */ - advertiserId?: string; - /** - * Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the `OR` logical operator. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` Examples: * `AssignedTargetingOption` with ID 123456: `assignedTargetingOptionId="123456"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `assignedTargetingOptionId desc`. - */ - orderBy?: string; - /** - * Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdvertiserAssignedTargetingOptions` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - /** - * Required. Identifies the type of assigned targeting options to list. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_CONTENT_THEME_EXCLUSION` - */ - targetingType?: string; - } - - export class Resource$Combinedaudiences { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: [ + 'advertiserId', + 'negativeKeywordListId', + 'keywordValue', + ], + pathParams: ['advertiserId', 'keywordValue', 'negativeKeywordListId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Gets a combined audience. + * Lists negative keywords in a negative keyword list. * @example * ```js * // Before running the sample: @@ -20783,21 +21393,27 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.combinedAudiences.get({ - * // The ID of the advertiser that has access to the fetched combined audience. - * advertiserId: 'placeholder-value', - * // Required. The ID of the combined audience to fetch. - * combinedAudienceId: '[^/]+', - * // The ID of the partner that has access to the fetched combined audience. - * partnerId: 'placeholder-value', - * }); + * const res = + * await displayvideo.advertisers.negativeKeywordLists.negativeKeywords.list({ + * // Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. + * advertiserId: '[^/]+', + * // Allows filtering by negative keyword fields. Supported syntax: * Filter expressions for negative keywords can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `keywordValue` Examples: * All negative keywords for which the keyword value contains "google": `keywordValue : "google"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Required. The ID of the parent negative keyword list to which the requested negative keywords belong. + * negativeKeywordListId: '[^/]+', + * // Field by which to sort the list. Acceptable values are: * `keywordValue` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `keywordValue desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `1000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListNegativeKeywords` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "combinedAudienceId": "my_combinedAudienceId", - * // "displayName": "my_displayName", - * // "name": "my_name" + * // "negativeKeywords": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -20813,53 +21429,58 @@ export namespace displayvideo_v3 { * @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$Combinedaudiences$Get, + list( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Combinedaudiences$Get, + list( + params?: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Combinedaudiences$Get, + ): Promise>; + list( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Combinedaudiences$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Combinedaudiences$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Combinedaudiences$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Combinedaudiences$Get; + {}) as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Combinedaudiences$Get; + params = + {} as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List; options = {}; } @@ -20873,7 +21494,8 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/combinedAudiences/{+combinedAudienceId}' + rootUrl + + '/v3/advertisers/{+advertiserId}/negativeKeywordLists/{+negativeKeywordListId}/negativeKeywords' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -20881,22 +21503,24 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['combinedAudienceId'], - pathParams: ['combinedAudienceId'], + requiredParams: ['advertiserId', 'negativeKeywordListId'], + pathParams: ['advertiserId', 'negativeKeywordListId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Lists combined audiences. The order is defined by the order_by parameter. + * Replaces all negative keywords in a single negative keyword list. The operation will replace the keywords in a negative keyword list with keywords provided in ReplaceNegativeKeywordsRequest.new_negative_keywords. * @example * ```js * // Before running the sample: @@ -20925,26 +21549,28 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.combinedAudiences.list({ - * // The ID of the advertiser that has access to the fetched combined audiences. - * advertiserId: 'placeholder-value', - * // Allows filtering by combined audience fields. Supported syntax: * Filter expressions for combined audiences can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All combined audiences for which the display name contains "Google": `displayName : "Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `combinedAudienceId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCombinedAudiences` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // The ID of the partner that has access to the fetched combined audiences. - * partnerId: 'placeholder-value', - * }); + * const res = + * await displayvideo.advertisers.negativeKeywordLists.negativeKeywords.replace( + * { + * // Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. + * advertiserId: 'placeholder-value', + * // Required. The ID of the parent negative keyword list to which the negative keywords belong. + * negativeKeywordListId: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "newNegativeKeywords": [] + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "combinedAudiences": [], - * // "nextPageToken": "my_nextPageToken" + * // "negativeKeywords": [] * // } * } * @@ -20960,57 +21586,58 @@ export namespace displayvideo_v3 { * @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$Combinedaudiences$List, + replace( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Combinedaudiences$List, + replace( + params?: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Combinedaudiences$List, + ): Promise>; + replace( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Combinedaudiences$List, + replace( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Combinedaudiences$List, - callback: BodyResponseCallback + replace( + params: Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + replace( + callback: BodyResponseCallback ): void; - list( + replace( paramsOrCallback?: - | Params$Resource$Combinedaudiences$List - | BodyResponseCallback + | Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Combinedaudiences$List; + {}) as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Combinedaudiences$List; + params = + {} as Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace; options = {}; } @@ -21023,86 +21650,139 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/combinedAudiences').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: ( + rootUrl + + '/v3/advertisers/{advertiserId}/negativeKeywordLists/{+negativeKeywordListId}/negativeKeywords:replace' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['advertiserId', 'negativeKeywordListId'], + pathParams: ['advertiserId', 'negativeKeywordListId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } } - export interface Params$Resource$Combinedaudiences$Get extends StandardParameters { + export interface Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Bulkedit extends StandardParameters { /** - * The ID of the advertiser that has access to the fetched combined audience. + * Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. */ advertiserId?: string; /** - * Required. The ID of the combined audience to fetch. + * Required. The ID of the parent negative keyword list to which the negative keywords belong. */ - combinedAudienceId?: string; + negativeKeywordListId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BulkEditNegativeKeywordsRequest; + } + export interface Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Create extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. + */ + advertiserId?: string; + /** + * Required. The ID of the parent negative keyword list in which the negative keyword will be created. + */ + negativeKeywordListId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NegativeKeyword; + } + export interface Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Delete extends StandardParameters { + /** + * Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. + */ + advertiserId?: string; + /** + * Required. The keyword value of the negative keyword to delete. + */ + keywordValue?: string; /** - * The ID of the partner that has access to the fetched combined audience. + * Required. The ID of the parent negative keyword list to which the negative keyword belongs. */ - partnerId?: string; + negativeKeywordListId?: string; } - export interface Params$Resource$Combinedaudiences$List extends StandardParameters { + export interface Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$List extends StandardParameters { /** - * The ID of the advertiser that has access to the fetched combined audiences. + * Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. */ advertiserId?: string; /** - * Allows filtering by combined audience fields. Supported syntax: * Filter expressions for combined audiences can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All combined audiences for which the display name contains "Google": `displayName : "Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * Allows filtering by negative keyword fields. Supported syntax: * Filter expressions for negative keywords can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `keywordValue` Examples: * All negative keywords for which the keyword value contains "google": `keywordValue : "google"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ filter?: string; /** - * Field by which to sort the list. Acceptable values are: * `combinedAudienceId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * Required. The ID of the parent negative keyword list to which the requested negative keywords belong. + */ + negativeKeywordListId?: string; + /** + * Field by which to sort the list. Acceptable values are: * `keywordValue` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `keywordValue desc`. */ orderBy?: string; /** - * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * Requested page size. Must be between `1` and `1000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. */ pageSize?: number; /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCombinedAudiences` method. If not specified, the first page of results will be returned. + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListNegativeKeywords` method. If not specified, the first page of results will be returned. */ pageToken?: string; + } + export interface Params$Resource$Advertisers$Negativekeywordlists$Negativekeywords$Replace extends StandardParameters { /** - * The ID of the partner that has access to the fetched combined audiences. + * Required. The ID of the DV360 advertiser to which the parent negative keyword list belongs. */ - partnerId?: string; + advertiserId?: string; + /** + * Required. The ID of the parent negative keyword list to which the negative keywords belong. + */ + negativeKeywordListId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ReplaceNegativeKeywordsRequest; } - export class Resource$Custombiddingalgorithms { + export class Resource$Advertisers$Targetingtypes { + context: APIRequestContext; + assignedTargetingOptions: Resource$Advertisers$Targetingtypes$Assignedtargetingoptions; + constructor(context: APIRequestContext) { + this.context = context; + this.assignedTargetingOptions = + new Resource$Advertisers$Targetingtypes$Assignedtargetingoptions( + this.context + ); + } + } + + export class Resource$Advertisers$Targetingtypes$Assignedtargetingoptions { context: APIRequestContext; - rules: Resource$Custombiddingalgorithms$Rules; - scripts: Resource$Custombiddingalgorithms$Scripts; constructor(context: APIRequestContext) { this.context = context; - this.rules = new Resource$Custombiddingalgorithms$Rules(this.context); - this.scripts = new Resource$Custombiddingalgorithms$Scripts(this.context); } /** - * Creates a new custom bidding algorithm. Returns the newly created custom bidding algorithm if successful. + * Assigns a targeting option to an advertiser. Returns the assigned targeting option if successful. * @example * ```js * // Before running the sample: @@ -21131,36 +21811,134 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customBiddingAlgorithms.create({ - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advertiserId": "my_advertiserId", - * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", - * // "customBiddingAlgorithmType": "my_customBiddingAlgorithmType", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "modelDetails": [], - * // "name": "my_name", - * // "partnerId": "my_partnerId", - * // "sharedAdvertiserIds": [] - * // } - * }, - * }); + * const res = + * await displayvideo.advertisers.targetingTypes.assignedTargetingOptions.create( + * { + * // Required. The ID of the advertiser. + * advertiserId: '[^/]+', + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * targetingType: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "ageRangeDetails": {}, + * // "appCategoryDetails": {}, + * // "appDetails": {}, + * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", + * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", + * // "audienceGroupDetails": {}, + * // "audioContentTypeDetails": {}, + * // "authorizedSellerStatusDetails": {}, + * // "browserDetails": {}, + * // "businessChainDetails": {}, + * // "carrierAndIspDetails": {}, + * // "categoryDetails": {}, + * // "channelDetails": {}, + * // "contentDurationDetails": {}, + * // "contentGenreDetails": {}, + * // "contentInstreamPositionDetails": {}, + * // "contentOutstreamPositionDetails": {}, + * // "contentStreamTypeDetails": {}, + * // "contentThemeExclusionDetails": {}, + * // "dayAndTimeDetails": {}, + * // "deviceMakeModelDetails": {}, + * // "deviceTypeDetails": {}, + * // "digitalContentLabelExclusionDetails": {}, + * // "environmentDetails": {}, + * // "exchangeDetails": {}, + * // "genderDetails": {}, + * // "geoRegionDetails": {}, + * // "householdIncomeDetails": {}, + * // "inheritance": "my_inheritance", + * // "inventorySourceDetails": {}, + * // "inventorySourceGroupDetails": {}, + * // "keywordDetails": {}, + * // "languageDetails": {}, + * // "name": "my_name", + * // "nativeContentPositionDetails": {}, + * // "negativeKeywordListDetails": {}, + * // "omidDetails": {}, + * // "onScreenPositionDetails": {}, + * // "operatingSystemDetails": {}, + * // "parentalStatusDetails": {}, + * // "poiDetails": {}, + * // "proximityLocationListDetails": {}, + * // "regionalLocationListDetails": {}, + * // "sensitiveCategoryExclusionDetails": {}, + * // "sessionPositionDetails": {}, + * // "subExchangeDetails": {}, + * // "targetingType": "my_targetingType", + * // "thirdPartyVerifierDetails": {}, + * // "urlDetails": {}, + * // "userRewardedContentDetails": {}, + * // "videoPlayerSizeDetails": {}, + * // "viewabilityDetails": {}, + * // "youtubeChannelDetails": {}, + * // "youtubeVideoDetails": {} + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "advertiserId": "my_advertiserId", - * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", - * // "customBiddingAlgorithmType": "my_customBiddingAlgorithmType", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "modelDetails": [], + * // "ageRangeDetails": {}, + * // "appCategoryDetails": {}, + * // "appDetails": {}, + * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", + * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", + * // "audienceGroupDetails": {}, + * // "audioContentTypeDetails": {}, + * // "authorizedSellerStatusDetails": {}, + * // "browserDetails": {}, + * // "businessChainDetails": {}, + * // "carrierAndIspDetails": {}, + * // "categoryDetails": {}, + * // "channelDetails": {}, + * // "contentDurationDetails": {}, + * // "contentGenreDetails": {}, + * // "contentInstreamPositionDetails": {}, + * // "contentOutstreamPositionDetails": {}, + * // "contentStreamTypeDetails": {}, + * // "contentThemeExclusionDetails": {}, + * // "dayAndTimeDetails": {}, + * // "deviceMakeModelDetails": {}, + * // "deviceTypeDetails": {}, + * // "digitalContentLabelExclusionDetails": {}, + * // "environmentDetails": {}, + * // "exchangeDetails": {}, + * // "genderDetails": {}, + * // "geoRegionDetails": {}, + * // "householdIncomeDetails": {}, + * // "inheritance": "my_inheritance", + * // "inventorySourceDetails": {}, + * // "inventorySourceGroupDetails": {}, + * // "keywordDetails": {}, + * // "languageDetails": {}, * // "name": "my_name", - * // "partnerId": "my_partnerId", - * // "sharedAdvertiserIds": [] + * // "nativeContentPositionDetails": {}, + * // "negativeKeywordListDetails": {}, + * // "omidDetails": {}, + * // "onScreenPositionDetails": {}, + * // "operatingSystemDetails": {}, + * // "parentalStatusDetails": {}, + * // "poiDetails": {}, + * // "proximityLocationListDetails": {}, + * // "regionalLocationListDetails": {}, + * // "sensitiveCategoryExclusionDetails": {}, + * // "sessionPositionDetails": {}, + * // "subExchangeDetails": {}, + * // "targetingType": "my_targetingType", + * // "thirdPartyVerifierDetails": {}, + * // "urlDetails": {}, + * // "userRewardedContentDetails": {}, + * // "videoPlayerSizeDetails": {}, + * // "viewabilityDetails": {}, + * // "youtubeChannelDetails": {}, + * // "youtubeVideoDetails": {} * // } * } * @@ -21177,54 +21955,57 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Custombiddingalgorithms$Create, + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Custombiddingalgorithms$Create, + params?: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create, options?: MethodOptions - ): Promise>; + ): Promise>; create( - params: Params$Resource$Custombiddingalgorithms$Create, + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Custombiddingalgorithms$Create, + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; create( - params: Params$Resource$Custombiddingalgorithms$Create, - callback: BodyResponseCallback + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create, + callback: BodyResponseCallback + ): void; + create( + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; create( paramsOrCallback?: - | Params$Resource$Custombiddingalgorithms$Create - | BodyResponseCallback + | Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Custombiddingalgorithms$Create; + {}) as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Custombiddingalgorithms$Create; + params = + {} as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create; options = {}; } @@ -21237,32 +22018,32 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/customBiddingAlgorithms').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + + '/v3/advertisers/{+advertiserId}/targetingTypes/{+targetingType}/assignedTargetingOptions' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['advertiserId', 'targetingType'], + pathParams: ['advertiserId', 'targetingType'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a custom bidding algorithm. + * Deletes an assigned targeting option from an advertiser. * @example * ```js * // Before running the sample: @@ -21291,28 +22072,21 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customBiddingAlgorithms.get({ - * // The ID of the DV360 partner that has access to the custom bidding algorithm. - * advertiserId: 'placeholder-value', - * // Required. The ID of the custom bidding algorithm to fetch. - * customBiddingAlgorithmId: '[^/]+', - * // The ID of the DV360 partner that has access to the custom bidding algorithm. - * partnerId: 'placeholder-value', - * }); + * const res = + * await displayvideo.advertisers.targetingTypes.assignedTargetingOptions.delete( + * { + * // Required. The ID of the advertiser. + * advertiserId: '[^/]+', + * // Required. The ID of the assigned targeting option to delete. + * assignedTargetingOptionId: '[^/]+', + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * targetingType: '[^/]+', + * }, + * ); * console.log(res.data); * * // Example response - * // { - * // "advertiserId": "my_advertiserId", - * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", - * // "customBiddingAlgorithmType": "my_customBiddingAlgorithmType", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "modelDetails": [], - * // "name": "my_name", - * // "partnerId": "my_partnerId", - * // "sharedAdvertiserIds": [] - * // } + * // {} * } * * main().catch(e => { @@ -21327,55 +22101,54 @@ export namespace displayvideo_v3 { * @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$Custombiddingalgorithms$Get, + delete( + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Custombiddingalgorithms$Get, + delete( + params?: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Custombiddingalgorithms$Get, + ): Promise>; + delete( + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Custombiddingalgorithms$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Custombiddingalgorithms$Get, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Custombiddingalgorithms$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Custombiddingalgorithms$Get; + {}) as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Custombiddingalgorithms$Get; + params = + {} as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete; options = {}; } @@ -21390,30 +22163,38 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}' + '/v3/advertisers/{+advertiserId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['customBiddingAlgorithmId'], - pathParams: ['customBiddingAlgorithmId'], + requiredParams: [ + 'advertiserId', + 'targetingType', + 'assignedTargetingOptionId', + ], + pathParams: [ + 'advertiserId', + 'assignedTargetingOptionId', + 'targetingType', + ], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists custom bidding algorithms that are accessible to the current user and can be used in bidding stratgies. The order is defined by the order_by parameter. + * Gets a single targeting option assigned to an advertiser. * @example * ```js * // Before running the sample: @@ -21442,26 +22223,73 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customBiddingAlgorithms.list({ - * // The ID of the DV360 advertiser that has access to the custom bidding algorithm. - * advertiserId: 'placeholder-value', - * // Allows filtering by custom bidding algorithm fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `customBiddingAlgorithmType` field must use the `EQUALS (=)` operator. * The `displayName` field must use the `HAS (:)` operator. Supported fields: * `customBiddingAlgorithmType` * `displayName` Examples: * All custom bidding algorithms for which the display name contains "politics": `displayName:"politics"`. * All custom bidding algorithms for which the type is "SCRIPT_BASED": `customBiddingAlgorithmType=SCRIPT_BASED` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomBiddingAlgorithms` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // The ID of the DV360 partner that has access to the custom bidding algorithm. - * partnerId: 'placeholder-value', - * }); + * const res = + * await displayvideo.advertisers.targetingTypes.assignedTargetingOptions.get({ + * // Required. The ID of the advertiser. + * advertiserId: '[^/]+', + * // Required. An identifier unique to the targeting type in this advertiser that identifies the assigned targeting option being requested. + * assignedTargetingOptionId: '[^/]+', + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_CONTENT_THEME_EXCLUSION` + * targetingType: '[^/]+', + * }); * console.log(res.data); * * // Example response * // { - * // "customBiddingAlgorithms": [], - * // "nextPageToken": "my_nextPageToken" + * // "ageRangeDetails": {}, + * // "appCategoryDetails": {}, + * // "appDetails": {}, + * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", + * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", + * // "audienceGroupDetails": {}, + * // "audioContentTypeDetails": {}, + * // "authorizedSellerStatusDetails": {}, + * // "browserDetails": {}, + * // "businessChainDetails": {}, + * // "carrierAndIspDetails": {}, + * // "categoryDetails": {}, + * // "channelDetails": {}, + * // "contentDurationDetails": {}, + * // "contentGenreDetails": {}, + * // "contentInstreamPositionDetails": {}, + * // "contentOutstreamPositionDetails": {}, + * // "contentStreamTypeDetails": {}, + * // "contentThemeExclusionDetails": {}, + * // "dayAndTimeDetails": {}, + * // "deviceMakeModelDetails": {}, + * // "deviceTypeDetails": {}, + * // "digitalContentLabelExclusionDetails": {}, + * // "environmentDetails": {}, + * // "exchangeDetails": {}, + * // "genderDetails": {}, + * // "geoRegionDetails": {}, + * // "householdIncomeDetails": {}, + * // "inheritance": "my_inheritance", + * // "inventorySourceDetails": {}, + * // "inventorySourceGroupDetails": {}, + * // "keywordDetails": {}, + * // "languageDetails": {}, + * // "name": "my_name", + * // "nativeContentPositionDetails": {}, + * // "negativeKeywordListDetails": {}, + * // "omidDetails": {}, + * // "onScreenPositionDetails": {}, + * // "operatingSystemDetails": {}, + * // "parentalStatusDetails": {}, + * // "poiDetails": {}, + * // "proximityLocationListDetails": {}, + * // "regionalLocationListDetails": {}, + * // "sensitiveCategoryExclusionDetails": {}, + * // "sessionPositionDetails": {}, + * // "subExchangeDetails": {}, + * // "targetingType": "my_targetingType", + * // "thirdPartyVerifierDetails": {}, + * // "urlDetails": {}, + * // "userRewardedContentDetails": {}, + * // "videoPlayerSizeDetails": {}, + * // "viewabilityDetails": {}, + * // "youtubeChannelDetails": {}, + * // "youtubeVideoDetails": {} * // } * } * @@ -21477,61 +22305,56 @@ export namespace displayvideo_v3 { * @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$Custombiddingalgorithms$List, + get( + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Custombiddingalgorithms$List, + get( + params?: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Custombiddingalgorithms$List, + ): Promise>; + get( + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Custombiddingalgorithms$List, + get( + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Custombiddingalgorithms$List, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get, + callback: BodyResponseCallback ): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Custombiddingalgorithms$List - | BodyResponseCallback + | Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Custombiddingalgorithms$List; + {}) as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Custombiddingalgorithms$List; + params = + {} as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get; options = {}; } @@ -21544,34 +22367,40 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/customBiddingAlgorithms').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + + '/v3/advertisers/{+advertiserId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: [ + 'advertiserId', + 'targetingType', + 'assignedTargetingOptionId', + ], + pathParams: [ + 'advertiserId', + 'assignedTargetingOptionId', + 'targetingType', + ], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates an existing custom bidding algorithm. Returns the updated custom bidding algorithm if successful. Requests updating a custom bidding algorithm assigned to a line item will return an error. + * Lists the targeting options assigned to an advertiser. * @example * ```js * // Before running the sample: @@ -21600,41 +22429,29 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customBiddingAlgorithms.patch({ - * // Output only. The unique ID of the custom bidding algorithm. Assigned by the system. - * customBiddingAlgorithmId: '[^/]+', - * // Required. The mask to control which fields to update. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advertiserId": "my_advertiserId", - * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", - * // "customBiddingAlgorithmType": "my_customBiddingAlgorithmType", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "modelDetails": [], - * // "name": "my_name", - * // "partnerId": "my_partnerId", - * // "sharedAdvertiserIds": [] - * // } - * }, - * }); + * const res = + * await displayvideo.advertisers.targetingTypes.assignedTargetingOptions.list( + * { + * // Required. The ID of the advertiser. + * advertiserId: '[^/]+', + * // Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the `OR` logical operator. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` Examples: * `AssignedTargetingOption` with ID 123456: `assignedTargetingOptionId="123456"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `assignedTargetingOptionId desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdvertiserAssignedTargetingOptions` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * // Required. Identifies the type of assigned targeting options to list. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_CONTENT_THEME_EXCLUSION` + * targetingType: '[^/]+', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "advertiserId": "my_advertiserId", - * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", - * // "customBiddingAlgorithmType": "my_customBiddingAlgorithmType", - * // "displayName": "my_displayName", - * // "entityStatus": "my_entityStatus", - * // "modelDetails": [], - * // "name": "my_name", - * // "partnerId": "my_partnerId", - * // "sharedAdvertiserIds": [] + * // "assignedTargetingOptions": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -21650,55 +22467,62 @@ export namespace displayvideo_v3 { * @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$Custombiddingalgorithms$Patch, + list( + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Custombiddingalgorithms$Patch, + list( + params?: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Custombiddingalgorithms$Patch, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Custombiddingalgorithms$Patch, + list( + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Custombiddingalgorithms$Patch, - callback: BodyResponseCallback + list( + params: Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Custombiddingalgorithms$Patch - | BodyResponseCallback + | Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Custombiddingalgorithms$Patch; + {}) as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Custombiddingalgorithms$Patch; + params = + {} as Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List; options = {}; } @@ -21713,30 +22537,109 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}' + '/v3/advertisers/{+advertiserId}/targetingTypes/{+targetingType}/assignedTargetingOptions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['customBiddingAlgorithmId'], - pathParams: ['customBiddingAlgorithmId'], + requiredParams: ['advertiserId', 'targetingType'], + pathParams: ['advertiserId', 'targetingType'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Create extends StandardParameters { /** - * Creates a rules reference object for an AlgorithmRules file. The resulting reference object provides a resource path where the AlgorithmRules file should be uploaded. This reference object should be included when creating a new CustomBiddingAlgorithmRules resource. + * Required. The ID of the advertiser. + */ + advertiserId?: string; + /** + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + */ + targetingType?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AssignedTargetingOption; + } + export interface Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Delete extends StandardParameters { + /** + * Required. The ID of the advertiser. + */ + advertiserId?: string; + /** + * Required. The ID of the assigned targeting option to delete. + */ + assignedTargetingOptionId?: string; + /** + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + */ + targetingType?: string; + } + export interface Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$Get extends StandardParameters { + /** + * Required. The ID of the advertiser. + */ + advertiserId?: string; + /** + * Required. An identifier unique to the targeting type in this advertiser that identifies the assigned targeting option being requested. + */ + assignedTargetingOptionId?: string; + /** + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_CONTENT_THEME_EXCLUSION` + */ + targetingType?: string; + } + export interface Params$Resource$Advertisers$Targetingtypes$Assignedtargetingoptions$List extends StandardParameters { + /** + * Required. The ID of the advertiser. + */ + advertiserId?: string; + /** + * Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the `OR` logical operator. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedTargetingOptionId` Examples: * `AssignedTargetingOption` with ID 123456: `assignedTargetingOptionId="123456"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `assignedTargetingOptionId desc`. + */ + orderBy?: string; + /** + * Requested page size. Must be between `1` and `5000`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdvertiserAssignedTargetingOptions` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + /** + * Required. Identifies the type of assigned targeting options to list. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_CONTENT_THEME_EXCLUSION` + */ + targetingType?: string; + } + + export class Resource$Combinedaudiences { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets a combined audience. * @example * ```js * // Before running the sample: @@ -21765,19 +22668,21 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customBiddingAlgorithms.uploadRules({ - * // The ID of the advertiser that owns the parent custom bidding algorithm. + * const res = await displayvideo.combinedAudiences.get({ + * // The ID of the advertiser that has access to the fetched combined audience. * advertiserId: 'placeholder-value', - * // Required. The ID of the custom bidding algorithm that owns the rules resource. - * customBiddingAlgorithmId: '[^/]+', - * // The ID of the partner that owns the parent custom bidding algorithm. + * // Required. The ID of the combined audience to fetch. + * combinedAudienceId: '[^/]+', + * // The ID of the partner that has access to the fetched combined audience. * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "resourceName": "my_resourceName" + * // "combinedAudienceId": "my_combinedAudienceId", + * // "displayName": "my_displayName", + * // "name": "my_name" * // } * } * @@ -21793,57 +22698,53 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - uploadRules( - params: Params$Resource$Custombiddingalgorithms$Uploadrules, + get( + params: Params$Resource$Combinedaudiences$Get, options: StreamMethodOptions ): Promise>; - uploadRules( - params?: Params$Resource$Custombiddingalgorithms$Uploadrules, + get( + params?: Params$Resource$Combinedaudiences$Get, options?: MethodOptions - ): Promise>; - uploadRules( - params: Params$Resource$Custombiddingalgorithms$Uploadrules, + ): Promise>; + get( + params: Params$Resource$Combinedaudiences$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - uploadRules( - params: Params$Resource$Custombiddingalgorithms$Uploadrules, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - uploadRules( - params: Params$Resource$Custombiddingalgorithms$Uploadrules, - callback: BodyResponseCallback + get( + params: Params$Resource$Combinedaudiences$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - uploadRules( - callback: BodyResponseCallback + get( + params: Params$Resource$Combinedaudiences$Get, + callback: BodyResponseCallback ): void; - uploadRules( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Custombiddingalgorithms$Uploadrules - | BodyResponseCallback + | Params$Resource$Combinedaudiences$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Custombiddingalgorithms$Uploadrules; + {}) as Params$Resource$Combinedaudiences$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Custombiddingalgorithms$Uploadrules; + params = {} as Params$Resource$Combinedaudiences$Get; options = {}; } @@ -21857,8 +22758,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}:uploadRules' + rootUrl + '/v3/combinedAudiences/{+combinedAudienceId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -21866,24 +22766,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['customBiddingAlgorithmId'], - pathParams: ['customBiddingAlgorithmId'], + requiredParams: ['combinedAudienceId'], + pathParams: ['combinedAudienceId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a custom bidding script reference object for a script file. The resulting reference object provides a resource path to which the script file should be uploaded. This reference object should be included in when creating a new custom bidding script object. + * Lists combined audiences. The order is defined by the order_by parameter. * @example * ```js * // Before running the sample: @@ -21912,19 +22810,26 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customBiddingAlgorithms.uploadScript({ - * // The ID of the advertiser that owns the parent custom bidding algorithm. + * const res = await displayvideo.combinedAudiences.list({ + * // The ID of the advertiser that has access to the fetched combined audiences. * advertiserId: 'placeholder-value', - * // Required. The ID of the custom bidding algorithm owns the script. - * customBiddingAlgorithmId: '[^/]+', - * // The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. + * // Allows filtering by combined audience fields. Supported syntax: * Filter expressions for combined audiences can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All combined audiences for which the display name contains "Google": `displayName : "Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `combinedAudienceId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCombinedAudiences` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * // The ID of the partner that has access to the fetched combined audiences. * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "resourceName": "my_resourceName" + * // "combinedAudiences": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -21940,57 +22845,57 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - uploadScript( - params: Params$Resource$Custombiddingalgorithms$Uploadscript, + list( + params: Params$Resource$Combinedaudiences$List, options: StreamMethodOptions ): Promise>; - uploadScript( - params?: Params$Resource$Custombiddingalgorithms$Uploadscript, + list( + params?: Params$Resource$Combinedaudiences$List, options?: MethodOptions - ): Promise>; - uploadScript( - params: Params$Resource$Custombiddingalgorithms$Uploadscript, + ): Promise>; + list( + params: Params$Resource$Combinedaudiences$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - uploadScript( - params: Params$Resource$Custombiddingalgorithms$Uploadscript, + list( + params: Params$Resource$Combinedaudiences$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - uploadScript( - params: Params$Resource$Custombiddingalgorithms$Uploadscript, - callback: BodyResponseCallback + list( + params: Params$Resource$Combinedaudiences$List, + callback: BodyResponseCallback ): void; - uploadScript( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - uploadScript( + list( paramsOrCallback?: - | Params$Resource$Custombiddingalgorithms$Uploadscript - | BodyResponseCallback + | Params$Resource$Combinedaudiences$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Custombiddingalgorithms$Uploadscript; + {}) as Params$Resource$Combinedaudiences$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Custombiddingalgorithms$Uploadscript; + params = {} as Params$Resource$Combinedaudiences$List; options = {}; } @@ -22003,62 +22908,58 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + - '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}:uploadScript' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v3/combinedAudiences').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['customBiddingAlgorithmId'], - pathParams: ['customBiddingAlgorithmId'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Custombiddingalgorithms$Create extends StandardParameters { - /** - * Request body metadata - */ - requestBody?: Schema$CustomBiddingAlgorithm; - } - export interface Params$Resource$Custombiddingalgorithms$Get extends StandardParameters { + export interface Params$Resource$Combinedaudiences$Get extends StandardParameters { /** - * The ID of the DV360 partner that has access to the custom bidding algorithm. + * The ID of the advertiser that has access to the fetched combined audience. */ advertiserId?: string; /** - * Required. The ID of the custom bidding algorithm to fetch. + * Required. The ID of the combined audience to fetch. */ - customBiddingAlgorithmId?: string; + combinedAudienceId?: string; /** - * The ID of the DV360 partner that has access to the custom bidding algorithm. + * The ID of the partner that has access to the fetched combined audience. */ partnerId?: string; } - export interface Params$Resource$Custombiddingalgorithms$List extends StandardParameters { + export interface Params$Resource$Combinedaudiences$List extends StandardParameters { /** - * The ID of the DV360 advertiser that has access to the custom bidding algorithm. + * The ID of the advertiser that has access to the fetched combined audiences. */ advertiserId?: string; /** - * Allows filtering by custom bidding algorithm fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `customBiddingAlgorithmType` field must use the `EQUALS (=)` operator. * The `displayName` field must use the `HAS (:)` operator. Supported fields: * `customBiddingAlgorithmType` * `displayName` Examples: * All custom bidding algorithms for which the display name contains "politics": `displayName:"politics"`. * All custom bidding algorithms for which the type is "SCRIPT_BASED": `customBiddingAlgorithmType=SCRIPT_BASED` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * Allows filtering by combined audience fields. Supported syntax: * Filter expressions for combined audiences can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All combined audiences for which the display name contains "Google": `displayName : "Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ filter?: string; /** - * Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * Field by which to sort the list. Acceptable values are: * `combinedAudienceId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. */ orderBy?: string; /** @@ -22066,66 +22967,187 @@ export namespace displayvideo_v3 { */ pageSize?: number; /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomBiddingAlgorithms` method. If not specified, the first page of results will be returned. + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCombinedAudiences` method. If not specified, the first page of results will be returned. */ pageToken?: string; /** - * The ID of the DV360 partner that has access to the custom bidding algorithm. + * The ID of the partner that has access to the fetched combined audiences. */ partnerId?: string; } - export interface Params$Resource$Custombiddingalgorithms$Patch extends StandardParameters { - /** - * Output only. The unique ID of the custom bidding algorithm. Assigned by the system. - */ - customBiddingAlgorithmId?: string; - /** - * Required. The mask to control which fields to update. - */ - updateMask?: string; + + export class Resource$Custombiddingalgorithms { + context: APIRequestContext; + rules: Resource$Custombiddingalgorithms$Rules; + scripts: Resource$Custombiddingalgorithms$Scripts; + constructor(context: APIRequestContext) { + this.context = context; + this.rules = new Resource$Custombiddingalgorithms$Rules(this.context); + this.scripts = new Resource$Custombiddingalgorithms$Scripts(this.context); + } /** - * Request body metadata - */ - requestBody?: Schema$CustomBiddingAlgorithm; - } - export interface Params$Resource$Custombiddingalgorithms$Uploadrules extends StandardParameters { - /** - * The ID of the advertiser that owns the parent custom bidding algorithm. - */ - advertiserId?: string; - /** - * Required. The ID of the custom bidding algorithm that owns the rules resource. - */ - customBiddingAlgorithmId?: string; - /** - * The ID of the partner that owns the parent custom bidding algorithm. - */ - partnerId?: string; - } - export interface Params$Resource$Custombiddingalgorithms$Uploadscript extends StandardParameters { - /** - * The ID of the advertiser that owns the parent custom bidding algorithm. - */ - advertiserId?: string; - /** - * Required. The ID of the custom bidding algorithm owns the script. - */ - customBiddingAlgorithmId?: string; - /** - * The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. + * Creates a new custom bidding algorithm. Returns the newly created custom bidding algorithm if successful. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.customBiddingAlgorithms.create({ + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advertiserId": "my_advertiserId", + * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", + * // "customBiddingAlgorithmType": "my_customBiddingAlgorithmType", + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "modelDetails": [], + * // "name": "my_name", + * // "partnerId": "my_partnerId", + * // "sharedAdvertiserIds": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "advertiserId": "my_advertiserId", + * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", + * // "customBiddingAlgorithmType": "my_customBiddingAlgorithmType", + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "modelDetails": [], + * // "name": "my_name", + * // "partnerId": "my_partnerId", + * // "sharedAdvertiserIds": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - partnerId?: string; - } + create( + params: Params$Resource$Custombiddingalgorithms$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Custombiddingalgorithms$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Custombiddingalgorithms$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Custombiddingalgorithms$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Custombiddingalgorithms$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Custombiddingalgorithms$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Custombiddingalgorithms$Create; + let options = (optionsOrCallback || {}) as MethodOptions; - export class Resource$Custombiddingalgorithms$Rules { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Custombiddingalgorithms$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/customBiddingAlgorithms').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Creates a new rules resource. Returns the newly created rules resource if successful. Requests creating a custom bidding rules resource under an algorithm assigned to a line item will return an error. + * Gets a custom bidding algorithm. * @example * ```js * // Before running the sample: @@ -22154,41 +23176,27 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customBiddingAlgorithms.rules.create({ - * // The ID of the advertiser that owns the parent custom bidding algorithm. + * const res = await displayvideo.customBiddingAlgorithms.get({ + * // The ID of the DV360 partner that has access to the custom bidding algorithm. * advertiserId: 'placeholder-value', - * // Required. The ID of the custom bidding algorithm that owns the rules resource. + * // Required. The ID of the custom bidding algorithm to fetch. * customBiddingAlgorithmId: '[^/]+', - * // The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this rules resource. + * // The ID of the DV360 partner that has access to the custom bidding algorithm. * partnerId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "active": false, - * // "createTime": "my_createTime", - * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", - * // "customBiddingAlgorithmRulesId": "my_customBiddingAlgorithmRulesId", - * // "error": {}, - * // "name": "my_name", - * // "rules": {}, - * // "state": "my_state" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "active": false, - * // "createTime": "my_createTime", + * // "advertiserId": "my_advertiserId", * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", - * // "customBiddingAlgorithmRulesId": "my_customBiddingAlgorithmRulesId", - * // "error": {}, + * // "customBiddingAlgorithmType": "my_customBiddingAlgorithmType", + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "modelDetails": [], * // "name": "my_name", - * // "rules": {}, - * // "state": "my_state" + * // "partnerId": "my_partnerId", + * // "sharedAdvertiserIds": [] * // } * } * @@ -22204,57 +23212,55 @@ export namespace displayvideo_v3 { * @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$Custombiddingalgorithms$Rules$Create, + get( + params: Params$Resource$Custombiddingalgorithms$Get, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Custombiddingalgorithms$Rules$Create, + get( + params?: Params$Resource$Custombiddingalgorithms$Get, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Custombiddingalgorithms$Rules$Create, + ): Promise>; + get( + params: Params$Resource$Custombiddingalgorithms$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Custombiddingalgorithms$Rules$Create, + get( + params: Params$Resource$Custombiddingalgorithms$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Custombiddingalgorithms$Rules$Create, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + get( + params: Params$Resource$Custombiddingalgorithms$Get, + callback: BodyResponseCallback ): void; - create( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Custombiddingalgorithms$Rules$Create - | BodyResponseCallback + | Params$Resource$Custombiddingalgorithms$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Custombiddingalgorithms$Rules$Create; + {}) as Params$Resource$Custombiddingalgorithms$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Custombiddingalgorithms$Rules$Create; + params = {} as Params$Resource$Custombiddingalgorithms$Get; options = {}; } @@ -22269,9 +23275,9 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}/rules' + '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -22282,17 +23288,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a rules resource. + * Lists custom bidding algorithms that are accessible to the current user and can be used in bidding stratgies. The order is defined by the order_by parameter. * @example * ```js * // Before running the sample: @@ -22321,28 +23327,26 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customBiddingAlgorithms.rules.get({ - * // The ID of the advertiser that owns the parent custom bidding algorithm. + * const res = await displayvideo.customBiddingAlgorithms.list({ + * // The ID of the DV360 advertiser that has access to the custom bidding algorithm. * advertiserId: 'placeholder-value', - * // Required. The ID of the custom bidding algorithm that owns the rules resource. - * customBiddingAlgorithmId: '[^/]+', - * // Required. The ID of the rules resource to fetch. - * customBiddingAlgorithmRulesId: '[^/]+', - * // The ID of the partner that owns the parent custom bidding algorithm. + * // Allows filtering by custom bidding algorithm fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `customBiddingAlgorithmType` field must use the `EQUALS (=)` operator. * The `displayName` field must use the `HAS (:)` operator. Supported fields: * `customBiddingAlgorithmType` * `displayName` Examples: * All custom bidding algorithms for which the display name contains "politics": `displayName:"politics"`. * All custom bidding algorithms for which the type is "SCRIPT_BASED": `customBiddingAlgorithmType=SCRIPT_BASED` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomBiddingAlgorithms` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * // The ID of the DV360 partner that has access to the custom bidding algorithm. * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "active": false, - * // "createTime": "my_createTime", - * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", - * // "customBiddingAlgorithmRulesId": "my_customBiddingAlgorithmRulesId", - * // "error": {}, - * // "name": "my_name", - * // "rules": {}, - * // "state": "my_state" + * // "customBiddingAlgorithms": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -22358,57 +23362,61 @@ export namespace displayvideo_v3 { * @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$Custombiddingalgorithms$Rules$Get, + list( + params: Params$Resource$Custombiddingalgorithms$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Custombiddingalgorithms$Rules$Get, + list( + params?: Params$Resource$Custombiddingalgorithms$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Custombiddingalgorithms$Rules$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Custombiddingalgorithms$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Custombiddingalgorithms$Rules$Get, + list( + params: Params$Resource$Custombiddingalgorithms$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Custombiddingalgorithms$Rules$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Custombiddingalgorithms$List, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - get( + list( paramsOrCallback?: - | Params$Resource$Custombiddingalgorithms$Rules$Get - | BodyResponseCallback + | Params$Resource$Custombiddingalgorithms$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Custombiddingalgorithms$Rules$Get; + {}) as Params$Resource$Custombiddingalgorithms$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Custombiddingalgorithms$Rules$Get; + params = {} as Params$Resource$Custombiddingalgorithms$List; options = {}; } @@ -22421,38 +23429,34 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + - '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}/rules/{+customBiddingAlgorithmRulesId}' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v3/customBiddingAlgorithms').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: [ - 'customBiddingAlgorithmId', - 'customBiddingAlgorithmRulesId', - ], - pathParams: [ - 'customBiddingAlgorithmId', - 'customBiddingAlgorithmRulesId', - ], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Lists rules resources that belong to the given algorithm. The order is defined by the order_by parameter. + * Updates an existing custom bidding algorithm. Returns the updated custom bidding algorithm if successful. Requests updating a custom bidding algorithm assigned to a line item will return an error. * @example * ```js * // Before running the sample: @@ -22481,26 +23485,41 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customBiddingAlgorithms.rules.list({ - * // The ID of the advertiser that owns the parent custom bidding algorithm. - * advertiserId: 'placeholder-value', - * // Required. The ID of the custom bidding algorithm that owns the rules resource. + * const res = await displayvideo.customBiddingAlgorithms.patch({ + * // Output only. The unique ID of the custom bidding algorithm. Assigned by the system. * customBiddingAlgorithmId: '[^/]+', - * // Field by which to sort the list. Acceptable values are: * `createTime desc` (default) The default sorting order is descending. To specify ascending order for a field, the suffix "desc" should be removed. Example: `createTime`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomBiddingAlgorithmRules` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // The ID of the partner that owns the parent custom bidding algorithm. - * partnerId: 'placeholder-value', + * // Required. The mask to control which fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advertiserId": "my_advertiserId", + * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", + * // "customBiddingAlgorithmType": "my_customBiddingAlgorithmType", + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "modelDetails": [], + * // "name": "my_name", + * // "partnerId": "my_partnerId", + * // "sharedAdvertiserIds": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "customBiddingRules": [], - * // "nextPageToken": "my_nextPageToken" + * // "advertiserId": "my_advertiserId", + * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", + * // "customBiddingAlgorithmType": "my_customBiddingAlgorithmType", + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "modelDetails": [], + * // "name": "my_name", + * // "partnerId": "my_partnerId", + * // "sharedAdvertiserIds": [] * // } * } * @@ -22516,61 +23535,55 @@ export namespace displayvideo_v3 { * @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$Custombiddingalgorithms$Rules$List, + patch( + params: Params$Resource$Custombiddingalgorithms$Patch, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Custombiddingalgorithms$Rules$List, + patch( + params?: Params$Resource$Custombiddingalgorithms$Patch, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Custombiddingalgorithms$Rules$List, + ): Promise>; + patch( + params: Params$Resource$Custombiddingalgorithms$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Custombiddingalgorithms$Rules$List, + patch( + params: Params$Resource$Custombiddingalgorithms$Patch, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Custombiddingalgorithms$Rules$List, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + patch( + params: Params$Resource$Custombiddingalgorithms$Patch, + callback: BodyResponseCallback ): void; - list( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Custombiddingalgorithms$Rules$List - | BodyResponseCallback + | Params$Resource$Custombiddingalgorithms$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Custombiddingalgorithms$Rules$List; + {}) as Params$Resource$Custombiddingalgorithms$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Custombiddingalgorithms$Rules$List; + params = {} as Params$Resource$Custombiddingalgorithms$Patch; options = {}; } @@ -22585,9 +23598,9 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}/rules' + '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options @@ -22598,90 +23611,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Custombiddingalgorithms$Rules$Create extends StandardParameters { - /** - * The ID of the advertiser that owns the parent custom bidding algorithm. - */ - advertiserId?: string; - /** - * Required. The ID of the custom bidding algorithm that owns the rules resource. - */ - customBiddingAlgorithmId?: string; - /** - * The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this rules resource. - */ - partnerId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CustomBiddingAlgorithmRules; - } - export interface Params$Resource$Custombiddingalgorithms$Rules$Get extends StandardParameters { - /** - * The ID of the advertiser that owns the parent custom bidding algorithm. - */ - advertiserId?: string; - /** - * Required. The ID of the custom bidding algorithm that owns the rules resource. - */ - customBiddingAlgorithmId?: string; - /** - * Required. The ID of the rules resource to fetch. - */ - customBiddingAlgorithmRulesId?: string; - /** - * The ID of the partner that owns the parent custom bidding algorithm. - */ - partnerId?: string; - } - export interface Params$Resource$Custombiddingalgorithms$Rules$List extends StandardParameters { - /** - * The ID of the advertiser that owns the parent custom bidding algorithm. - */ - advertiserId?: string; - /** - * Required. The ID of the custom bidding algorithm that owns the rules resource. - */ - customBiddingAlgorithmId?: string; - /** - * Field by which to sort the list. Acceptable values are: * `createTime desc` (default) The default sorting order is descending. To specify ascending order for a field, the suffix "desc" should be removed. Example: `createTime`. - */ - orderBy?: string; - /** - * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomBiddingAlgorithmRules` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - /** - * The ID of the partner that owns the parent custom bidding algorithm. - */ - partnerId?: string; - } - - export class Resource$Custombiddingalgorithms$Scripts { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new custom bidding script. Returns the newly created script if successful. Requests creating a custom bidding script under an algorithm assigned to a line item will return an error. + * Creates a rules reference object for an AlgorithmRules file. The resulting reference object provides a resource path where the AlgorithmRules file should be uploaded. This reference object should be included when creating a new CustomBiddingAlgorithmRules resource. * @example * ```js * // Before running the sample: @@ -22710,41 +23650,19 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customBiddingAlgorithms.scripts.create({ + * const res = await displayvideo.customBiddingAlgorithms.uploadRules({ * // The ID of the advertiser that owns the parent custom bidding algorithm. * advertiserId: 'placeholder-value', - * // Required. The ID of the custom bidding algorithm that owns the script. + * // Required. The ID of the custom bidding algorithm that owns the rules resource. * customBiddingAlgorithmId: '[^/]+', - * // The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. + * // The ID of the partner that owns the parent custom bidding algorithm. * partnerId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "active": false, - * // "createTime": "my_createTime", - * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", - * // "customBiddingScriptId": "my_customBiddingScriptId", - * // "errors": [], - * // "name": "my_name", - * // "script": {}, - * // "state": "my_state" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "active": false, - * // "createTime": "my_createTime", - * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", - * // "customBiddingScriptId": "my_customBiddingScriptId", - * // "errors": [], - * // "name": "my_name", - * // "script": {}, - * // "state": "my_state" + * // "resourceName": "my_resourceName" * // } * } * @@ -22760,53 +23678,57 @@ export namespace displayvideo_v3 { * @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$Custombiddingalgorithms$Scripts$Create, + uploadRules( + params: Params$Resource$Custombiddingalgorithms$Uploadrules, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Custombiddingalgorithms$Scripts$Create, + uploadRules( + params?: Params$Resource$Custombiddingalgorithms$Uploadrules, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Custombiddingalgorithms$Scripts$Create, + ): Promise>; + uploadRules( + params: Params$Resource$Custombiddingalgorithms$Uploadrules, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Custombiddingalgorithms$Scripts$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + uploadRules( + params: Params$Resource$Custombiddingalgorithms$Uploadrules, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Custombiddingalgorithms$Scripts$Create, - callback: BodyResponseCallback + uploadRules( + params: Params$Resource$Custombiddingalgorithms$Uploadrules, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + uploadRules( + callback: BodyResponseCallback + ): void; + uploadRules( paramsOrCallback?: - | Params$Resource$Custombiddingalgorithms$Scripts$Create - | BodyResponseCallback + | Params$Resource$Custombiddingalgorithms$Uploadrules + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Custombiddingalgorithms$Scripts$Create; + {}) as Params$Resource$Custombiddingalgorithms$Uploadrules; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Custombiddingalgorithms$Scripts$Create; + params = {} as Params$Resource$Custombiddingalgorithms$Uploadrules; options = {}; } @@ -22821,9 +23743,9 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}/scripts' + '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}:uploadRules' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -22834,17 +23756,19 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Gets a custom bidding script. + * Creates a custom bidding script reference object for a script file. The resulting reference object provides a resource path to which the script file should be uploaded. This reference object should be included in when creating a new custom bidding script object. * @example * ```js * // Before running the sample: @@ -22873,13 +23797,11 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customBiddingAlgorithms.scripts.get({ + * const res = await displayvideo.customBiddingAlgorithms.uploadScript({ * // The ID of the advertiser that owns the parent custom bidding algorithm. * advertiserId: 'placeholder-value', * // Required. The ID of the custom bidding algorithm owns the script. * customBiddingAlgorithmId: '[^/]+', - * // Required. The ID of the custom bidding script to fetch. - * customBiddingScriptId: '[^/]+', * // The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. * partnerId: 'placeholder-value', * }); @@ -22887,14 +23809,7 @@ export namespace displayvideo_v3 { * * // Example response * // { - * // "active": false, - * // "createTime": "my_createTime", - * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", - * // "customBiddingScriptId": "my_customBiddingScriptId", - * // "errors": [], - * // "name": "my_name", - * // "script": {}, - * // "state": "my_state" + * // "resourceName": "my_resourceName" * // } * } * @@ -22910,53 +23825,57 @@ export namespace displayvideo_v3 { * @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$Custombiddingalgorithms$Scripts$Get, + uploadScript( + params: Params$Resource$Custombiddingalgorithms$Uploadscript, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Custombiddingalgorithms$Scripts$Get, + uploadScript( + params?: Params$Resource$Custombiddingalgorithms$Uploadscript, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Custombiddingalgorithms$Scripts$Get, + ): Promise>; + uploadScript( + params: Params$Resource$Custombiddingalgorithms$Uploadscript, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Custombiddingalgorithms$Scripts$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + uploadScript( + params: Params$Resource$Custombiddingalgorithms$Uploadscript, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Custombiddingalgorithms$Scripts$Get, - callback: BodyResponseCallback + uploadScript( + params: Params$Resource$Custombiddingalgorithms$Uploadscript, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + uploadScript( + callback: BodyResponseCallback + ): void; + uploadScript( paramsOrCallback?: - | Params$Resource$Custombiddingalgorithms$Scripts$Get - | BodyResponseCallback + | Params$Resource$Custombiddingalgorithms$Uploadscript + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Custombiddingalgorithms$Scripts$Get; + {}) as Params$Resource$Custombiddingalgorithms$Uploadscript; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Custombiddingalgorithms$Scripts$Get; + params = {} as Params$Resource$Custombiddingalgorithms$Uploadscript; options = {}; } @@ -22971,7 +23890,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}/scripts/{+customBiddingScriptId}' + '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}:uploadScript' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -22979,22 +23898,119 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['customBiddingAlgorithmId', 'customBiddingScriptId'], - pathParams: ['customBiddingAlgorithmId', 'customBiddingScriptId'], + requiredParams: ['customBiddingAlgorithmId'], + pathParams: ['customBiddingAlgorithmId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Custombiddingalgorithms$Create extends StandardParameters { /** - * Lists custom bidding scripts that belong to the given algorithm. The order is defined by the order_by parameter. + * Request body metadata + */ + requestBody?: Schema$CustomBiddingAlgorithm; + } + export interface Params$Resource$Custombiddingalgorithms$Get extends StandardParameters { + /** + * The ID of the DV360 partner that has access to the custom bidding algorithm. + */ + advertiserId?: string; + /** + * Required. The ID of the custom bidding algorithm to fetch. + */ + customBiddingAlgorithmId?: string; + /** + * The ID of the DV360 partner that has access to the custom bidding algorithm. + */ + partnerId?: string; + } + export interface Params$Resource$Custombiddingalgorithms$List extends StandardParameters { + /** + * The ID of the DV360 advertiser that has access to the custom bidding algorithm. + */ + advertiserId?: string; + /** + * Allows filtering by custom bidding algorithm fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * The `customBiddingAlgorithmType` field must use the `EQUALS (=)` operator. * The `displayName` field must use the `HAS (:)` operator. Supported fields: * `customBiddingAlgorithmType` * `displayName` Examples: * All custom bidding algorithms for which the display name contains "politics": `displayName:"politics"`. * All custom bidding algorithms for which the type is "SCRIPT_BASED": `customBiddingAlgorithmType=SCRIPT_BASED` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + */ + orderBy?: string; + /** + * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomBiddingAlgorithms` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + /** + * The ID of the DV360 partner that has access to the custom bidding algorithm. + */ + partnerId?: string; + } + export interface Params$Resource$Custombiddingalgorithms$Patch extends StandardParameters { + /** + * Output only. The unique ID of the custom bidding algorithm. Assigned by the system. + */ + customBiddingAlgorithmId?: string; + /** + * Required. The mask to control which fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CustomBiddingAlgorithm; + } + export interface Params$Resource$Custombiddingalgorithms$Uploadrules extends StandardParameters { + /** + * The ID of the advertiser that owns the parent custom bidding algorithm. + */ + advertiserId?: string; + /** + * Required. The ID of the custom bidding algorithm that owns the rules resource. + */ + customBiddingAlgorithmId?: string; + /** + * The ID of the partner that owns the parent custom bidding algorithm. + */ + partnerId?: string; + } + export interface Params$Resource$Custombiddingalgorithms$Uploadscript extends StandardParameters { + /** + * The ID of the advertiser that owns the parent custom bidding algorithm. + */ + advertiserId?: string; + /** + * Required. The ID of the custom bidding algorithm owns the script. + */ + customBiddingAlgorithmId?: string; + /** + * The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. + */ + partnerId?: string; + } + + export class Resource$Custombiddingalgorithms$Rules { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new rules resource. Returns the newly created rules resource if successful. Requests creating a custom bidding rules resource under an algorithm assigned to a line item will return an error. * @example * ```js * // Before running the sample: @@ -23023,26 +24039,41 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customBiddingAlgorithms.scripts.list({ + * const res = await displayvideo.customBiddingAlgorithms.rules.create({ * // The ID of the advertiser that owns the parent custom bidding algorithm. * advertiserId: 'placeholder-value', - * // Required. The ID of the custom bidding algorithm owns the script. + * // Required. The ID of the custom bidding algorithm that owns the rules resource. * customBiddingAlgorithmId: '[^/]+', - * // Field by which to sort the list. Acceptable values are: * `createTime desc` (default) The default sorting order is descending. To specify ascending order for a field, the suffix "desc" should be removed. Example: `createTime`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomBiddingScripts` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. + * // The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this rules resource. * partnerId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "active": false, + * // "createTime": "my_createTime", + * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", + * // "customBiddingAlgorithmRulesId": "my_customBiddingAlgorithmRulesId", + * // "error": {}, + * // "name": "my_name", + * // "rules": {}, + * // "state": "my_state" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "customBiddingScripts": [], - * // "nextPageToken": "my_nextPageToken" + * // "active": false, + * // "createTime": "my_createTime", + * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", + * // "customBiddingAlgorithmRulesId": "my_customBiddingAlgorithmRulesId", + * // "error": {}, + * // "name": "my_name", + * // "rules": {}, + * // "state": "my_state" * // } * } * @@ -23058,61 +24089,57 @@ export namespace displayvideo_v3 { * @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$Custombiddingalgorithms$Scripts$List, + create( + params: Params$Resource$Custombiddingalgorithms$Rules$Create, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Custombiddingalgorithms$Scripts$List, + create( + params?: Params$Resource$Custombiddingalgorithms$Rules$Create, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Custombiddingalgorithms$Scripts$List, + ): Promise>; + create( + params: Params$Resource$Custombiddingalgorithms$Rules$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Custombiddingalgorithms$Scripts$List, + create( + params: Params$Resource$Custombiddingalgorithms$Rules$Create, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Custombiddingalgorithms$Scripts$List, - callback: BodyResponseCallback + create( + params: Params$Resource$Custombiddingalgorithms$Rules$Create, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + create( + callback: BodyResponseCallback ): void; - list( + create( paramsOrCallback?: - | Params$Resource$Custombiddingalgorithms$Scripts$List - | BodyResponseCallback + | Params$Resource$Custombiddingalgorithms$Rules$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Custombiddingalgorithms$Scripts$List; + {}) as Params$Resource$Custombiddingalgorithms$Rules$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Custombiddingalgorithms$Scripts$List; + params = {} as Params$Resource$Custombiddingalgorithms$Rules$Create; options = {}; } @@ -23127,9 +24154,9 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}/scripts' + '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}/rules' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -23140,90 +24167,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Custombiddingalgorithms$Scripts$Create extends StandardParameters { - /** - * The ID of the advertiser that owns the parent custom bidding algorithm. - */ - advertiserId?: string; - /** - * Required. The ID of the custom bidding algorithm that owns the script. - */ - customBiddingAlgorithmId?: string; - /** - * The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. - */ - partnerId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CustomBiddingScript; - } - export interface Params$Resource$Custombiddingalgorithms$Scripts$Get extends StandardParameters { - /** - * The ID of the advertiser that owns the parent custom bidding algorithm. - */ - advertiserId?: string; - /** - * Required. The ID of the custom bidding algorithm owns the script. - */ - customBiddingAlgorithmId?: string; - /** - * Required. The ID of the custom bidding script to fetch. - */ - customBiddingScriptId?: string; - /** - * The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. - */ - partnerId?: string; - } - export interface Params$Resource$Custombiddingalgorithms$Scripts$List extends StandardParameters { - /** - * The ID of the advertiser that owns the parent custom bidding algorithm. - */ - advertiserId?: string; - /** - * Required. The ID of the custom bidding algorithm owns the script. - */ - customBiddingAlgorithmId?: string; - /** - * Field by which to sort the list. Acceptable values are: * `createTime desc` (default) The default sorting order is descending. To specify ascending order for a field, the suffix "desc" should be removed. Example: `createTime`. - */ - orderBy?: string; - /** - * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomBiddingScripts` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - /** - * The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. - */ - partnerId?: string; - } - - export class Resource$Customlists { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Gets a custom list. + * Retrieves a rules resource. * @example * ```js * // Before running the sample: @@ -23252,19 +24206,28 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customLists.get({ - * // The ID of the DV360 advertiser that has access to the fetched custom lists. + * const res = await displayvideo.customBiddingAlgorithms.rules.get({ + * // The ID of the advertiser that owns the parent custom bidding algorithm. * advertiserId: 'placeholder-value', - * // Required. The ID of the custom list to fetch. - * customListId: '[^/]+', + * // Required. The ID of the custom bidding algorithm that owns the rules resource. + * customBiddingAlgorithmId: '[^/]+', + * // Required. The ID of the rules resource to fetch. + * customBiddingAlgorithmRulesId: '[^/]+', + * // The ID of the partner that owns the parent custom bidding algorithm. + * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "customListId": "my_customListId", - * // "displayName": "my_displayName", - * // "name": "my_name" + * // "active": false, + * // "createTime": "my_createTime", + * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", + * // "customBiddingAlgorithmRulesId": "my_customBiddingAlgorithmRulesId", + * // "error": {}, + * // "name": "my_name", + * // "rules": {}, + * // "state": "my_state" * // } * } * @@ -23281,51 +24244,56 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Customlists$Get, + params: Params$Resource$Custombiddingalgorithms$Rules$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Customlists$Get, + params?: Params$Resource$Custombiddingalgorithms$Rules$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Customlists$Get, + params: Params$Resource$Custombiddingalgorithms$Rules$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Customlists$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Custombiddingalgorithms$Rules$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Customlists$Get, - callback: BodyResponseCallback + params: Params$Resource$Custombiddingalgorithms$Rules$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Customlists$Get - | BodyResponseCallback + | Params$Resource$Custombiddingalgorithms$Rules$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Customlists$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Custombiddingalgorithms$Rules$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Customlists$Get; + params = {} as Params$Resource$Custombiddingalgorithms$Rules$Get; options = {}; } @@ -23338,32 +24306,38 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/customLists/{+customListId}').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + + '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}/rules/{+customBiddingAlgorithmRulesId}' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['customListId'], - pathParams: ['customListId'], + requiredParams: [ + 'customBiddingAlgorithmId', + 'customBiddingAlgorithmRulesId', + ], + pathParams: [ + 'customBiddingAlgorithmId', + 'customBiddingAlgorithmRulesId', + ], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists custom lists. The order is defined by the order_by parameter. + * Lists rules resources that belong to the given algorithm. The order is defined by the order_by parameter. * @example * ```js * // Before running the sample: @@ -23392,23 +24366,25 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.customLists.list({ - * // The ID of the DV360 advertiser that has access to the fetched custom lists. + * const res = await displayvideo.customBiddingAlgorithms.rules.list({ + * // The ID of the advertiser that owns the parent custom bidding algorithm. * advertiserId: 'placeholder-value', - * // Allows filtering by custom list fields. Supported syntax: * Filter expressions for custom lists can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All custom lists for which the display name contains "Google": `displayName:"Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `customListId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * // Required. The ID of the custom bidding algorithm that owns the rules resource. + * customBiddingAlgorithmId: '[^/]+', + * // Field by which to sort the list. Acceptable values are: * `createTime desc` (default) The default sorting order is descending. To specify ascending order for a field, the suffix "desc" should be removed. Example: `createTime`. * orderBy: 'placeholder-value', * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomLists` method. If not specified, the first page of results will be returned. + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomBiddingAlgorithmRules` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', + * // The ID of the partner that owns the parent custom bidding algorithm. + * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "customLists": [], + * // "customBiddingRules": [], * // "nextPageToken": "my_nextPageToken" * // } * } @@ -23426,53 +24402,60 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Customlists$List, + params: Params$Resource$Custombiddingalgorithms$Rules$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Customlists$List, + params?: Params$Resource$Custombiddingalgorithms$Rules$List, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; list( - params: Params$Resource$Customlists$List, + params: Params$Resource$Custombiddingalgorithms$Rules$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Customlists$List, + params: Params$Resource$Custombiddingalgorithms$Rules$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Customlists$List, - callback: BodyResponseCallback + params: Params$Resource$Custombiddingalgorithms$Rules$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Customlists$List - | BodyResponseCallback + | Params$Resource$Custombiddingalgorithms$Rules$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Customlists$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Custombiddingalgorithms$Rules$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Customlists$List; + params = {} as Params$Resource$Custombiddingalgorithms$Rules$List; options = {}; } @@ -23485,49 +24468,81 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/customLists').replace(/([^:]\/)\/+/g, '$1'), + url: ( + rootUrl + + '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}/rules' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['customBiddingAlgorithmId'], + pathParams: ['customBiddingAlgorithmId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Customlists$Get extends StandardParameters { + export interface Params$Resource$Custombiddingalgorithms$Rules$Create extends StandardParameters { /** - * The ID of the DV360 advertiser that has access to the fetched custom lists. + * The ID of the advertiser that owns the parent custom bidding algorithm. */ advertiserId?: string; /** - * Required. The ID of the custom list to fetch. + * Required. The ID of the custom bidding algorithm that owns the rules resource. */ - customListId?: string; + customBiddingAlgorithmId?: string; + /** + * The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this rules resource. + */ + partnerId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CustomBiddingAlgorithmRules; } - export interface Params$Resource$Customlists$List extends StandardParameters { + export interface Params$Resource$Custombiddingalgorithms$Rules$Get extends StandardParameters { /** - * The ID of the DV360 advertiser that has access to the fetched custom lists. + * The ID of the advertiser that owns the parent custom bidding algorithm. */ advertiserId?: string; /** - * Allows filtering by custom list fields. Supported syntax: * Filter expressions for custom lists can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All custom lists for which the display name contains "Google": `displayName:"Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * Required. The ID of the custom bidding algorithm that owns the rules resource. */ - filter?: string; + customBiddingAlgorithmId?: string; /** - * Field by which to sort the list. Acceptable values are: * `customListId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * Required. The ID of the rules resource to fetch. + */ + customBiddingAlgorithmRulesId?: string; + /** + * The ID of the partner that owns the parent custom bidding algorithm. + */ + partnerId?: string; + } + export interface Params$Resource$Custombiddingalgorithms$Rules$List extends StandardParameters { + /** + * The ID of the advertiser that owns the parent custom bidding algorithm. + */ + advertiserId?: string; + /** + * Required. The ID of the custom bidding algorithm that owns the rules resource. + */ + customBiddingAlgorithmId?: string; + /** + * Field by which to sort the list. Acceptable values are: * `createTime desc` (default) The default sorting order is descending. To specify ascending order for a field, the suffix "desc" should be removed. Example: `createTime`. */ orderBy?: string; /** @@ -23535,19 +24550,23 @@ export namespace displayvideo_v3 { */ pageSize?: number; /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomLists` method. If not specified, the first page of results will be returned. + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomBiddingAlgorithmRules` method. If not specified, the first page of results will be returned. */ pageToken?: string; + /** + * The ID of the partner that owns the parent custom bidding algorithm. + */ + partnerId?: string; } - export class Resource$Firstandthirdpartyaudiences { + export class Resource$Custombiddingalgorithms$Scripts { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Creates a FirstAndThirdPartyAudience. Only supported for the following audience_type: * `CUSTOMER_MATCH_CONTACT_INFO` * `CUSTOMER_MATCH_DEVICE_ID` + * Creates a new custom bidding script. Returns the newly created script if successful. Requests creating a custom bidding script under an algorithm assigned to a line item will return an error. * @example * ```js * // Before running the sample: @@ -23576,32 +24595,26 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.firstAndThirdPartyAudiences.create({ - * // Required. The ID of the advertiser under whom the FirstAndThirdPartyAudience will be created. + * const res = await displayvideo.customBiddingAlgorithms.scripts.create({ + * // The ID of the advertiser that owns the parent custom bidding algorithm. * advertiserId: 'placeholder-value', + * // Required. The ID of the custom bidding algorithm that owns the script. + * customBiddingAlgorithmId: '[^/]+', + * // The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. + * partnerId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "activeDisplayAudienceSize": "my_activeDisplayAudienceSize", - * // "appId": "my_appId", - * // "audienceSource": "my_audienceSource", - * // "audienceType": "my_audienceType", - * // "contactInfoList": {}, - * // "description": "my_description", - * // "displayAudienceSize": "my_displayAudienceSize", - * // "displayDesktopAudienceSize": "my_displayDesktopAudienceSize", - * // "displayMobileAppAudienceSize": "my_displayMobileAppAudienceSize", - * // "displayMobileWebAudienceSize": "my_displayMobileWebAudienceSize", - * // "displayName": "my_displayName", - * // "firstAndThirdPartyAudienceId": "my_firstAndThirdPartyAudienceId", - * // "firstAndThirdPartyAudienceType": "my_firstAndThirdPartyAudienceType", - * // "gmailAudienceSize": "my_gmailAudienceSize", - * // "membershipDurationDays": "my_membershipDurationDays", - * // "mobileDeviceIdList": {}, + * // "active": false, + * // "createTime": "my_createTime", + * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", + * // "customBiddingScriptId": "my_customBiddingScriptId", + * // "errors": [], * // "name": "my_name", - * // "youtubeAudienceSize": "my_youtubeAudienceSize" + * // "script": {}, + * // "state": "my_state" * // } * }, * }); @@ -23609,24 +24622,14 @@ export namespace displayvideo_v3 { * * // Example response * // { - * // "activeDisplayAudienceSize": "my_activeDisplayAudienceSize", - * // "appId": "my_appId", - * // "audienceSource": "my_audienceSource", - * // "audienceType": "my_audienceType", - * // "contactInfoList": {}, - * // "description": "my_description", - * // "displayAudienceSize": "my_displayAudienceSize", - * // "displayDesktopAudienceSize": "my_displayDesktopAudienceSize", - * // "displayMobileAppAudienceSize": "my_displayMobileAppAudienceSize", - * // "displayMobileWebAudienceSize": "my_displayMobileWebAudienceSize", - * // "displayName": "my_displayName", - * // "firstAndThirdPartyAudienceId": "my_firstAndThirdPartyAudienceId", - * // "firstAndThirdPartyAudienceType": "my_firstAndThirdPartyAudienceType", - * // "gmailAudienceSize": "my_gmailAudienceSize", - * // "membershipDurationDays": "my_membershipDurationDays", - * // "mobileDeviceIdList": {}, + * // "active": false, + * // "createTime": "my_createTime", + * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", + * // "customBiddingScriptId": "my_customBiddingScriptId", + * // "errors": [], * // "name": "my_name", - * // "youtubeAudienceSize": "my_youtubeAudienceSize" + * // "script": {}, + * // "state": "my_state" * // } * } * @@ -23643,56 +24646,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Firstandthirdpartyaudiences$Create, + params: Params$Resource$Custombiddingalgorithms$Scripts$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Firstandthirdpartyaudiences$Create, + params?: Params$Resource$Custombiddingalgorithms$Scripts$Create, options?: MethodOptions - ): Promise>; + ): Promise>; create( - params: Params$Resource$Firstandthirdpartyaudiences$Create, + params: Params$Resource$Custombiddingalgorithms$Scripts$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Firstandthirdpartyaudiences$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Firstandthirdpartyaudiences$Create, - callback: BodyResponseCallback + params: Params$Resource$Custombiddingalgorithms$Scripts$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; create( - callback: BodyResponseCallback + params: Params$Resource$Custombiddingalgorithms$Scripts$Create, + callback: BodyResponseCallback ): void; + create(callback: BodyResponseCallback): void; create( paramsOrCallback?: - | Params$Resource$Firstandthirdpartyaudiences$Create - | BodyResponseCallback + | Params$Resource$Custombiddingalgorithms$Scripts$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Firstandthirdpartyaudiences$Create; + {}) as Params$Resource$Custombiddingalgorithms$Scripts$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Firstandthirdpartyaudiences$Create; + params = {} as Params$Resource$Custombiddingalgorithms$Scripts$Create; options = {}; } @@ -23705,32 +24704,32 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/firstAndThirdPartyAudiences').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + + '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}/scripts' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['customBiddingAlgorithmId'], + pathParams: ['customBiddingAlgorithmId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the member list of a Customer Match audience. Only supported for the following audience_type: * `CUSTOMER_MATCH_CONTACT_INFO` * `CUSTOMER_MATCH_DEVICE_ID` + * Gets a custom bidding script. * @example * ```js * // Before running the sample: @@ -23759,28 +24758,28 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.firstAndThirdPartyAudiences.editCustomerMatchMembers({ - * // Required. The ID of the Customer Match FirstAndThirdPartyAudience whose members will be edited. - * firstAndThirdPartyAudienceId: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "addedContactInfoList": {}, - * // "addedMobileDeviceIdList": {}, - * // "advertiserId": "my_advertiserId", - * // "removedContactInfoList": {}, - * // "removedMobileDeviceIdList": {} - * // } - * }, - * }); + * const res = await displayvideo.customBiddingAlgorithms.scripts.get({ + * // The ID of the advertiser that owns the parent custom bidding algorithm. + * advertiserId: 'placeholder-value', + * // Required. The ID of the custom bidding algorithm owns the script. + * customBiddingAlgorithmId: '[^/]+', + * // Required. The ID of the custom bidding script to fetch. + * customBiddingScriptId: '[^/]+', + * // The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. + * partnerId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "firstAndThirdPartyAudienceId": "my_firstAndThirdPartyAudienceId" + * // "active": false, + * // "createTime": "my_createTime", + * // "customBiddingAlgorithmId": "my_customBiddingAlgorithmId", + * // "customBiddingScriptId": "my_customBiddingScriptId", + * // "errors": [], + * // "name": "my_name", + * // "script": {}, + * // "state": "my_state" * // } * } * @@ -23796,62 +24795,53 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - editCustomerMatchMembers( - params: Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers, + get( + params: Params$Resource$Custombiddingalgorithms$Scripts$Get, options: StreamMethodOptions - ): Promise>; - editCustomerMatchMembers( - params?: Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - editCustomerMatchMembers( - params: Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers, + ): Promise>; + get( + params?: Params$Resource$Custombiddingalgorithms$Scripts$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Custombiddingalgorithms$Scripts$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - editCustomerMatchMembers( - params: Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - editCustomerMatchMembers( - params: Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers, - callback: BodyResponseCallback + get( + params: Params$Resource$Custombiddingalgorithms$Scripts$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - editCustomerMatchMembers( - callback: BodyResponseCallback + get( + params: Params$Resource$Custombiddingalgorithms$Scripts$Get, + callback: BodyResponseCallback ): void; - editCustomerMatchMembers( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers - | BodyResponseCallback + | Params$Resource$Custombiddingalgorithms$Scripts$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers; + {}) as Params$Resource$Custombiddingalgorithms$Scripts$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers; + params = {} as Params$Resource$Custombiddingalgorithms$Scripts$Get; options = {}; } @@ -23866,32 +24856,30 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/firstAndThirdPartyAudiences/{+firstAndThirdPartyAudienceId}:editCustomerMatchMembers' + '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}/scripts/{+customBiddingScriptId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['firstAndThirdPartyAudienceId'], - pathParams: ['firstAndThirdPartyAudienceId'], + requiredParams: ['customBiddingAlgorithmId', 'customBiddingScriptId'], + pathParams: ['customBiddingAlgorithmId', 'customBiddingScriptId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Gets a first and third party audience. + * Lists custom bidding scripts that belong to the given algorithm. The order is defined by the order_by parameter. * @example * ```js * // Before running the sample: @@ -23920,36 +24908,26 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.firstAndThirdPartyAudiences.get({ - * // The ID of the advertiser that has access to the fetched first and third party audience. + * const res = await displayvideo.customBiddingAlgorithms.scripts.list({ + * // The ID of the advertiser that owns the parent custom bidding algorithm. * advertiserId: 'placeholder-value', - * // Required. The ID of the first and third party audience to fetch. - * firstAndThirdPartyAudienceId: '[^/]+', - * // The ID of the partner that has access to the fetched first and third party audience. + * // Required. The ID of the custom bidding algorithm owns the script. + * customBiddingAlgorithmId: '[^/]+', + * // Field by which to sort the list. Acceptable values are: * `createTime desc` (default) The default sorting order is descending. To specify ascending order for a field, the suffix "desc" should be removed. Example: `createTime`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomBiddingScripts` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * // The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "activeDisplayAudienceSize": "my_activeDisplayAudienceSize", - * // "appId": "my_appId", - * // "audienceSource": "my_audienceSource", - * // "audienceType": "my_audienceType", - * // "contactInfoList": {}, - * // "description": "my_description", - * // "displayAudienceSize": "my_displayAudienceSize", - * // "displayDesktopAudienceSize": "my_displayDesktopAudienceSize", - * // "displayMobileAppAudienceSize": "my_displayMobileAppAudienceSize", - * // "displayMobileWebAudienceSize": "my_displayMobileWebAudienceSize", - * // "displayName": "my_displayName", - * // "firstAndThirdPartyAudienceId": "my_firstAndThirdPartyAudienceId", - * // "firstAndThirdPartyAudienceType": "my_firstAndThirdPartyAudienceType", - * // "gmailAudienceSize": "my_gmailAudienceSize", - * // "membershipDurationDays": "my_membershipDurationDays", - * // "mobileDeviceIdList": {}, - * // "name": "my_name", - * // "youtubeAudienceSize": "my_youtubeAudienceSize" + * // "customBiddingScripts": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -23965,57 +24943,61 @@ export namespace displayvideo_v3 { * @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$Firstandthirdpartyaudiences$Get, + list( + params: Params$Resource$Custombiddingalgorithms$Scripts$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Firstandthirdpartyaudiences$Get, + list( + params?: Params$Resource$Custombiddingalgorithms$Scripts$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Firstandthirdpartyaudiences$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Custombiddingalgorithms$Scripts$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Firstandthirdpartyaudiences$Get, + list( + params: Params$Resource$Custombiddingalgorithms$Scripts$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Firstandthirdpartyaudiences$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Custombiddingalgorithms$Scripts$List, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - get( + list( paramsOrCallback?: - | Params$Resource$Firstandthirdpartyaudiences$Get - | BodyResponseCallback + | Params$Resource$Custombiddingalgorithms$Scripts$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Firstandthirdpartyaudiences$Get; + {}) as Params$Resource$Custombiddingalgorithms$Scripts$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Firstandthirdpartyaudiences$Get; + params = {} as Params$Resource$Custombiddingalgorithms$Scripts$List; options = {}; } @@ -24030,7 +25012,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/firstAndThirdPartyAudiences/{+firstAndThirdPartyAudienceId}' + '/v3/customBiddingAlgorithms/{+customBiddingAlgorithmId}/scripts' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -24038,22 +25020,95 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['firstAndThirdPartyAudienceId'], - pathParams: ['firstAndThirdPartyAudienceId'], + requiredParams: ['customBiddingAlgorithmId'], + pathParams: ['customBiddingAlgorithmId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Custombiddingalgorithms$Scripts$Create extends StandardParameters { /** - * Lists first and third party audiences. The order is defined by the order_by parameter. + * The ID of the advertiser that owns the parent custom bidding algorithm. + */ + advertiserId?: string; + /** + * Required. The ID of the custom bidding algorithm that owns the script. + */ + customBiddingAlgorithmId?: string; + /** + * The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. + */ + partnerId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CustomBiddingScript; + } + export interface Params$Resource$Custombiddingalgorithms$Scripts$Get extends StandardParameters { + /** + * The ID of the advertiser that owns the parent custom bidding algorithm. + */ + advertiserId?: string; + /** + * Required. The ID of the custom bidding algorithm owns the script. + */ + customBiddingAlgorithmId?: string; + /** + * Required. The ID of the custom bidding script to fetch. + */ + customBiddingScriptId?: string; + /** + * The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. + */ + partnerId?: string; + } + export interface Params$Resource$Custombiddingalgorithms$Scripts$List extends StandardParameters { + /** + * The ID of the advertiser that owns the parent custom bidding algorithm. + */ + advertiserId?: string; + /** + * Required. The ID of the custom bidding algorithm owns the script. + */ + customBiddingAlgorithmId?: string; + /** + * Field by which to sort the list. Acceptable values are: * `createTime desc` (default) The default sorting order is descending. To specify ascending order for a field, the suffix "desc" should be removed. Example: `createTime`. + */ + orderBy?: string; + /** + * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomBiddingScripts` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + /** + * The ID of the partner that owns the parent custom bidding algorithm. Only this partner will have write access to this custom bidding script. + */ + partnerId?: string; + } + + export class Resource$Customlists { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets a custom list. * @example * ```js * // Before running the sample: @@ -24082,26 +25137,19 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.firstAndThirdPartyAudiences.list({ - * // The ID of the advertiser that has access to the fetched first and third party audiences. + * const res = await displayvideo.customLists.get({ + * // The ID of the DV360 advertiser that has access to the fetched custom lists. * advertiserId: 'placeholder-value', - * // Allows filtering by first and third party audience fields. Supported syntax: * Filter expressions for first and third party audiences can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All first and third party audiences for which the display name contains "Google": `displayName:"Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `firstAndThirdPartyAudienceId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `5000`. If unspecified, this value defaults to `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListFirstAndThirdPartyAudiences` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // The ID of the partner that has access to the fetched first and third party audiences. - * partnerId: 'placeholder-value', + * // Required. The ID of the custom list to fetch. + * customListId: '[^/]+', * }); * console.log(res.data); * * // Example response * // { - * // "firstAndThirdPartyAudiences": [], - * // "nextPageToken": "my_nextPageToken" + * // "customListId": "my_customListId", + * // "displayName": "my_displayName", + * // "name": "my_name" * // } * } * @@ -24117,61 +25165,52 @@ export namespace displayvideo_v3 { * @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$Firstandthirdpartyaudiences$List, + get( + params: Params$Resource$Customlists$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Firstandthirdpartyaudiences$List, + get( + params?: Params$Resource$Customlists$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Firstandthirdpartyaudiences$List, + ): Promise>; + get( + params: Params$Resource$Customlists$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Firstandthirdpartyaudiences$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Firstandthirdpartyaudiences$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Customlists$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + get( + params: Params$Resource$Customlists$Get, + callback: BodyResponseCallback ): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Firstandthirdpartyaudiences$List - | BodyResponseCallback + | Params$Resource$Customlists$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Firstandthirdpartyaudiences$List; + let params = (paramsOrCallback || {}) as Params$Resource$Customlists$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Firstandthirdpartyaudiences$List; + params = {} as Params$Resource$Customlists$Get; options = {}; } @@ -24184,7 +25223,7 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/firstAndThirdPartyAudiences').replace( + url: (rootUrl + '/v3/customLists/{+customListId}').replace( /([^:]\/)\/+/g, '$1' ), @@ -24194,24 +25233,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['customListId'], + pathParams: ['customListId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates an existing FirstAndThirdPartyAudience. Only supported for the following audience_type: * `CUSTOMER_MATCH_CONTACT_INFO` * `CUSTOMER_MATCH_DEVICE_ID` + * Lists custom lists. The order is defined by the order_by parameter. * @example * ```js * // Before running the sample: @@ -24240,61 +25277,24 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.firstAndThirdPartyAudiences.patch({ - * // Required. The ID of the owner advertiser of the updated FirstAndThirdPartyAudience. + * const res = await displayvideo.customLists.list({ + * // The ID of the DV360 advertiser that has access to the fetched custom lists. * advertiserId: 'placeholder-value', - * // Output only. The unique ID of the first and third party audience. Assigned by the system. - * firstAndThirdPartyAudienceId: '[^/]+', - * // Required. The mask to control which fields to update. Updates are only supported for the following fields: * `displayName` * `description` * `membershipDurationDays` - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "activeDisplayAudienceSize": "my_activeDisplayAudienceSize", - * // "appId": "my_appId", - * // "audienceSource": "my_audienceSource", - * // "audienceType": "my_audienceType", - * // "contactInfoList": {}, - * // "description": "my_description", - * // "displayAudienceSize": "my_displayAudienceSize", - * // "displayDesktopAudienceSize": "my_displayDesktopAudienceSize", - * // "displayMobileAppAudienceSize": "my_displayMobileAppAudienceSize", - * // "displayMobileWebAudienceSize": "my_displayMobileWebAudienceSize", - * // "displayName": "my_displayName", - * // "firstAndThirdPartyAudienceId": "my_firstAndThirdPartyAudienceId", - * // "firstAndThirdPartyAudienceType": "my_firstAndThirdPartyAudienceType", - * // "gmailAudienceSize": "my_gmailAudienceSize", - * // "membershipDurationDays": "my_membershipDurationDays", - * // "mobileDeviceIdList": {}, - * // "name": "my_name", - * // "youtubeAudienceSize": "my_youtubeAudienceSize" - * // } - * }, + * // Allows filtering by custom list fields. Supported syntax: * Filter expressions for custom lists can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All custom lists for which the display name contains "Google": `displayName:"Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `customListId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomLists` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "activeDisplayAudienceSize": "my_activeDisplayAudienceSize", - * // "appId": "my_appId", - * // "audienceSource": "my_audienceSource", - * // "audienceType": "my_audienceType", - * // "contactInfoList": {}, - * // "description": "my_description", - * // "displayAudienceSize": "my_displayAudienceSize", - * // "displayDesktopAudienceSize": "my_displayDesktopAudienceSize", - * // "displayMobileAppAudienceSize": "my_displayMobileAppAudienceSize", - * // "displayMobileWebAudienceSize": "my_displayMobileWebAudienceSize", - * // "displayName": "my_displayName", - * // "firstAndThirdPartyAudienceId": "my_firstAndThirdPartyAudienceId", - * // "firstAndThirdPartyAudienceType": "my_firstAndThirdPartyAudienceType", - * // "gmailAudienceSize": "my_gmailAudienceSize", - * // "membershipDurationDays": "my_membershipDurationDays", - * // "mobileDeviceIdList": {}, - * // "name": "my_name", - * // "youtubeAudienceSize": "my_youtubeAudienceSize" + * // "customLists": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -24310,57 +25310,54 @@ export namespace displayvideo_v3 { * @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$Firstandthirdpartyaudiences$Patch, + list( + params: Params$Resource$Customlists$List, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Firstandthirdpartyaudiences$Patch, + list( + params?: Params$Resource$Customlists$List, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Firstandthirdpartyaudiences$Patch, + ): Promise>; + list( + params: Params$Resource$Customlists$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Firstandthirdpartyaudiences$Patch, + list( + params: Params$Resource$Customlists$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Firstandthirdpartyaudiences$Patch, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + list( + params: Params$Resource$Customlists$List, + callback: BodyResponseCallback ): void; - patch( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Firstandthirdpartyaudiences$Patch - | BodyResponseCallback + | Params$Resource$Customlists$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Firstandthirdpartyaudiences$Patch; + let params = (paramsOrCallback || {}) as Params$Resource$Customlists$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Firstandthirdpartyaudiences$Patch; + params = {} as Params$Resource$Customlists$List; options = {}; } @@ -24373,124 +25370,69 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + - '/v3/firstAndThirdPartyAudiences/{+firstAndThirdPartyAudienceId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v3/customLists').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['firstAndThirdPartyAudienceId'], - pathParams: ['firstAndThirdPartyAudienceId'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Firstandthirdpartyaudiences$Create extends StandardParameters { - /** - * Required. The ID of the advertiser under whom the FirstAndThirdPartyAudience will be created. - */ - advertiserId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$FirstAndThirdPartyAudience; - } - export interface Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers extends StandardParameters { - /** - * Required. The ID of the Customer Match FirstAndThirdPartyAudience whose members will be edited. - */ - firstAndThirdPartyAudienceId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$EditCustomerMatchMembersRequest; - } - export interface Params$Resource$Firstandthirdpartyaudiences$Get extends StandardParameters { - /** - * The ID of the advertiser that has access to the fetched first and third party audience. - */ - advertiserId?: string; - /** - * Required. The ID of the first and third party audience to fetch. - */ - firstAndThirdPartyAudienceId?: string; - /** - * The ID of the partner that has access to the fetched first and third party audience. - */ - partnerId?: string; - } - export interface Params$Resource$Firstandthirdpartyaudiences$List extends StandardParameters { + export interface Params$Resource$Customlists$Get extends StandardParameters { /** - * The ID of the advertiser that has access to the fetched first and third party audiences. + * The ID of the DV360 advertiser that has access to the fetched custom lists. */ advertiserId?: string; /** - * Allows filtering by first and third party audience fields. Supported syntax: * Filter expressions for first and third party audiences can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All first and third party audiences for which the display name contains "Google": `displayName:"Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Field by which to sort the list. Acceptable values are: * `firstAndThirdPartyAudienceId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - */ - orderBy?: string; - /** - * Requested page size. Must be between `1` and `5000`. If unspecified, this value defaults to `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListFirstAndThirdPartyAudiences` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - /** - * The ID of the partner that has access to the fetched first and third party audiences. + * Required. The ID of the custom list to fetch. */ - partnerId?: string; + customListId?: string; } - export interface Params$Resource$Firstandthirdpartyaudiences$Patch extends StandardParameters { + export interface Params$Resource$Customlists$List extends StandardParameters { /** - * Required. The ID of the owner advertiser of the updated FirstAndThirdPartyAudience. + * The ID of the DV360 advertiser that has access to the fetched custom lists. */ advertiserId?: string; /** - * Output only. The unique ID of the first and third party audience. Assigned by the system. + * Allows filtering by custom list fields. Supported syntax: * Filter expressions for custom lists can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All custom lists for which the display name contains "Google": `displayName:"Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ - firstAndThirdPartyAudienceId?: string; + filter?: string; /** - * Required. The mask to control which fields to update. Updates are only supported for the following fields: * `displayName` * `description` * `membershipDurationDays` + * Field by which to sort the list. Acceptable values are: * `customListId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. */ - updateMask?: string; - + orderBy?: string; /** - * Request body metadata + * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. */ - requestBody?: Schema$FirstAndThirdPartyAudience; + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListCustomLists` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; } - export class Resource$Floodlightgroups { + export class Resource$Firstandthirdpartyaudiences { context: APIRequestContext; - floodlightActivities: Resource$Floodlightgroups$Floodlightactivities; constructor(context: APIRequestContext) { this.context = context; - this.floodlightActivities = - new Resource$Floodlightgroups$Floodlightactivities(this.context); } /** - * Gets a Floodlight group. + * Creates a FirstAndThirdPartyAudience. Only supported for the following audience_type: * `CUSTOMER_MATCH_CONTACT_INFO` * `CUSTOMER_MATCH_DEVICE_ID` * @example * ```js * // Before running the sample: @@ -24519,23 +25461,57 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.floodlightGroups.get({ - * // Required. The ID of the Floodlight group to fetch. - * floodlightGroupId: '[^/]+', - * // Required. The partner context by which the Floodlight group is being accessed. - * partnerId: 'placeholder-value', + * const res = await displayvideo.firstAndThirdPartyAudiences.create({ + * // Required. The ID of the advertiser under whom the FirstAndThirdPartyAudience will be created. + * advertiserId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "activeDisplayAudienceSize": "my_activeDisplayAudienceSize", + * // "appId": "my_appId", + * // "audienceSource": "my_audienceSource", + * // "audienceType": "my_audienceType", + * // "contactInfoList": {}, + * // "description": "my_description", + * // "displayAudienceSize": "my_displayAudienceSize", + * // "displayDesktopAudienceSize": "my_displayDesktopAudienceSize", + * // "displayMobileAppAudienceSize": "my_displayMobileAppAudienceSize", + * // "displayMobileWebAudienceSize": "my_displayMobileWebAudienceSize", + * // "displayName": "my_displayName", + * // "firstAndThirdPartyAudienceId": "my_firstAndThirdPartyAudienceId", + * // "firstAndThirdPartyAudienceType": "my_firstAndThirdPartyAudienceType", + * // "gmailAudienceSize": "my_gmailAudienceSize", + * // "membershipDurationDays": "my_membershipDurationDays", + * // "mobileDeviceIdList": {}, + * // "name": "my_name", + * // "youtubeAudienceSize": "my_youtubeAudienceSize" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "activeViewConfig": {}, - * // "customVariables": {}, + * // "activeDisplayAudienceSize": "my_activeDisplayAudienceSize", + * // "appId": "my_appId", + * // "audienceSource": "my_audienceSource", + * // "audienceType": "my_audienceType", + * // "contactInfoList": {}, + * // "description": "my_description", + * // "displayAudienceSize": "my_displayAudienceSize", + * // "displayDesktopAudienceSize": "my_displayDesktopAudienceSize", + * // "displayMobileAppAudienceSize": "my_displayMobileAppAudienceSize", + * // "displayMobileWebAudienceSize": "my_displayMobileWebAudienceSize", * // "displayName": "my_displayName", - * // "floodlightGroupId": "my_floodlightGroupId", - * // "lookbackWindow": {}, + * // "firstAndThirdPartyAudienceId": "my_firstAndThirdPartyAudienceId", + * // "firstAndThirdPartyAudienceType": "my_firstAndThirdPartyAudienceType", + * // "gmailAudienceSize": "my_gmailAudienceSize", + * // "membershipDurationDays": "my_membershipDurationDays", + * // "mobileDeviceIdList": {}, * // "name": "my_name", - * // "webTagType": "my_webTagType" + * // "youtubeAudienceSize": "my_youtubeAudienceSize" * // } * } * @@ -24551,53 +25527,57 @@ export namespace displayvideo_v3 { * @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$Floodlightgroups$Get, + create( + params: Params$Resource$Firstandthirdpartyaudiences$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Floodlightgroups$Get, + create( + params?: Params$Resource$Firstandthirdpartyaudiences$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Floodlightgroups$Get, + ): Promise>; + create( + params: Params$Resource$Firstandthirdpartyaudiences$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Floodlightgroups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Firstandthirdpartyaudiences$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Floodlightgroups$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Firstandthirdpartyaudiences$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create( + callback: BodyResponseCallback + ): void; + create( paramsOrCallback?: - | Params$Resource$Floodlightgroups$Get - | BodyResponseCallback + | Params$Resource$Firstandthirdpartyaudiences$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Floodlightgroups$Get; + {}) as Params$Resource$Firstandthirdpartyaudiences$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Floodlightgroups$Get; + params = {} as Params$Resource$Firstandthirdpartyaudiences$Create; options = {}; } @@ -24610,31 +25590,32 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v3/floodlightGroups/{+floodlightGroupId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v3/firstAndThirdPartyAudiences').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['floodlightGroupId'], - pathParams: ['floodlightGroupId'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates an existing Floodlight group. Returns the updated Floodlight group if successful. + * Updates the member list of a Customer Match audience. Only supported for the following audience_type: * `CUSTOMER_MATCH_CONTACT_INFO` * `CUSTOMER_MATCH_DEVICE_ID` * @example * ```js * // Before running the sample: @@ -24663,39 +25644,28 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.floodlightGroups.patch({ - * // Output only. The unique ID of the Floodlight group. Assigned by the system. - * floodlightGroupId: 'placeholder-value', - * // Required. The partner context by which the Floodlight group is being accessed. - * partnerId: 'placeholder-value', - * // Required. The mask to control which fields to update. - * updateMask: 'placeholder-value', + * const res = + * await displayvideo.firstAndThirdPartyAudiences.editCustomerMatchMembers({ + * // Required. The ID of the Customer Match FirstAndThirdPartyAudience whose members will be edited. + * firstAndThirdPartyAudienceId: '[^/]+', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "activeViewConfig": {}, - * // "customVariables": {}, - * // "displayName": "my_displayName", - * // "floodlightGroupId": "my_floodlightGroupId", - * // "lookbackWindow": {}, - * // "name": "my_name", - * // "webTagType": "my_webTagType" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "addedContactInfoList": {}, + * // "addedMobileDeviceIdList": {}, + * // "advertiserId": "my_advertiserId", + * // "removedContactInfoList": {}, + * // "removedMobileDeviceIdList": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "activeViewConfig": {}, - * // "customVariables": {}, - * // "displayName": "my_displayName", - * // "floodlightGroupId": "my_floodlightGroupId", - * // "lookbackWindow": {}, - * // "name": "my_name", - * // "webTagType": "my_webTagType" + * // "firstAndThirdPartyAudienceId": "my_firstAndThirdPartyAudienceId" * // } * } * @@ -24711,53 +25681,62 @@ export namespace displayvideo_v3 { * @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$Floodlightgroups$Patch, + editCustomerMatchMembers( + params: Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Floodlightgroups$Patch, + editCustomerMatchMembers( + params?: Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Floodlightgroups$Patch, + ): Promise< + GaxiosResponseWithHTTP2 + >; + editCustomerMatchMembers( + params: Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Floodlightgroups$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + editCustomerMatchMembers( + params: Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Floodlightgroups$Patch, - callback: BodyResponseCallback + editCustomerMatchMembers( + params: Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + editCustomerMatchMembers( + callback: BodyResponseCallback + ): void; + editCustomerMatchMembers( paramsOrCallback?: - | Params$Resource$Floodlightgroups$Patch - | BodyResponseCallback + | Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Floodlightgroups$Patch; + {}) as Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Floodlightgroups$Patch; + params = + {} as Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers; options = {}; } @@ -24770,69 +25749,34 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/floodlightGroups/{floodlightGroupId}').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'PATCH', + url: ( + rootUrl + + '/v3/firstAndThirdPartyAudiences/{+firstAndThirdPartyAudienceId}:editCustomerMatchMembers' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['floodlightGroupId'], - pathParams: ['floodlightGroupId'], + requiredParams: ['firstAndThirdPartyAudienceId'], + pathParams: ['firstAndThirdPartyAudienceId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - - export interface Params$Resource$Floodlightgroups$Get extends StandardParameters { - /** - * Required. The ID of the Floodlight group to fetch. - */ - floodlightGroupId?: string; - /** - * Required. The partner context by which the Floodlight group is being accessed. - */ - partnerId?: string; - } - export interface Params$Resource$Floodlightgroups$Patch extends StandardParameters { - /** - * Output only. The unique ID of the Floodlight group. Assigned by the system. - */ - floodlightGroupId?: string; - /** - * Required. The partner context by which the Floodlight group is being accessed. - */ - partnerId?: string; - /** - * Required. The mask to control which fields to update. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$FloodlightGroup; - } - - export class Resource$Floodlightgroups$Floodlightactivities { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Gets a Floodlight activity. + * Gets a first and third party audience. * @example * ```js * // Before running the sample: @@ -24861,26 +25805,36 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.floodlightGroups.floodlightActivities.get({ - * // Required. The ID of the Floodlight activity to fetch. - * floodlightActivityId: '[^/]+', - * // Required. The ID of the parent Floodlight group to which the requested Floodlight activity belongs. - * floodlightGroupId: '[^/]+', - * // Required. The ID of the partner through which the Floodlight activity is being accessed. + * const res = await displayvideo.firstAndThirdPartyAudiences.get({ + * // The ID of the advertiser that has access to the fetched first and third party audience. + * advertiserId: 'placeholder-value', + * // Required. The ID of the first and third party audience to fetch. + * firstAndThirdPartyAudienceId: '[^/]+', + * // The ID of the partner that has access to the fetched first and third party audience. * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "advertiserIds": [], + * // "activeDisplayAudienceSize": "my_activeDisplayAudienceSize", + * // "appId": "my_appId", + * // "audienceSource": "my_audienceSource", + * // "audienceType": "my_audienceType", + * // "contactInfoList": {}, + * // "description": "my_description", + * // "displayAudienceSize": "my_displayAudienceSize", + * // "displayDesktopAudienceSize": "my_displayDesktopAudienceSize", + * // "displayMobileAppAudienceSize": "my_displayMobileAppAudienceSize", + * // "displayMobileWebAudienceSize": "my_displayMobileWebAudienceSize", * // "displayName": "my_displayName", - * // "floodlightActivityId": "my_floodlightActivityId", - * // "floodlightGroupId": "my_floodlightGroupId", + * // "firstAndThirdPartyAudienceId": "my_firstAndThirdPartyAudienceId", + * // "firstAndThirdPartyAudienceType": "my_firstAndThirdPartyAudienceType", + * // "gmailAudienceSize": "my_gmailAudienceSize", + * // "membershipDurationDays": "my_membershipDurationDays", + * // "mobileDeviceIdList": {}, * // "name": "my_name", - * // "remarketingConfigs": [], - * // "servingStatus": "my_servingStatus", - * // "sslRequired": false + * // "youtubeAudienceSize": "my_youtubeAudienceSize" * // } * } * @@ -24897,53 +25851,56 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Floodlightgroups$Floodlightactivities$Get, + params: Params$Resource$Firstandthirdpartyaudiences$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Floodlightgroups$Floodlightactivities$Get, + params?: Params$Resource$Firstandthirdpartyaudiences$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Floodlightgroups$Floodlightactivities$Get, + params: Params$Resource$Firstandthirdpartyaudiences$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Floodlightgroups$Floodlightactivities$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Firstandthirdpartyaudiences$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Floodlightgroups$Floodlightactivities$Get, - callback: BodyResponseCallback + params: Params$Resource$Firstandthirdpartyaudiences$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Floodlightgroups$Floodlightactivities$Get - | BodyResponseCallback + | Params$Resource$Firstandthirdpartyaudiences$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Floodlightgroups$Floodlightactivities$Get; + {}) as Params$Resource$Firstandthirdpartyaudiences$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Floodlightgroups$Floodlightactivities$Get; + params = {} as Params$Resource$Firstandthirdpartyaudiences$Get; options = {}; } @@ -24958,7 +25915,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/floodlightGroups/{+floodlightGroupId}/floodlightActivities/{+floodlightActivityId}' + '/v3/firstAndThirdPartyAudiences/{+firstAndThirdPartyAudienceId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -24966,22 +25923,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['floodlightGroupId', 'floodlightActivityId'], - pathParams: ['floodlightActivityId', 'floodlightGroupId'], + requiredParams: ['firstAndThirdPartyAudienceId'], + pathParams: ['firstAndThirdPartyAudienceId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists Floodlight activities in a Floodlight group. + * Lists first and third party audiences. The order is defined by the order_by parameter. * @example * ```js * // Before running the sample: @@ -25010,23 +25967,25 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.floodlightGroups.floodlightActivities.list({ - * // Required. The ID of the parent Floodlight group to which the requested Floodlight activities belong. - * floodlightGroupId: '[^/]+', - * // Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `floodlightActivityId` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * const res = await displayvideo.firstAndThirdPartyAudiences.list({ + * // The ID of the advertiser that has access to the fetched first and third party audiences. + * advertiserId: 'placeholder-value', + * // Allows filtering by first and third party audience fields. Supported syntax: * Filter expressions for first and third party audiences can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All first and third party audiences for which the display name contains "Google": `displayName:"Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `firstAndThirdPartyAudienceId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. * orderBy: 'placeholder-value', - * // Optional. Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * // Requested page size. Must be between `1` and `5000`. If unspecified, this value defaults to `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListFloodlightActivities` method. If not specified, the first page of results will be returned. + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListFirstAndThirdPartyAudiences` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. The ID of the partner through which the Floodlight activities are being accessed. + * // The ID of the partner that has access to the fetched first and third party audiences. * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "floodlightActivities": [], + * // "firstAndThirdPartyAudiences": [], * // "nextPageToken": "my_nextPageToken" * // } * } @@ -25044,61 +26003,60 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Floodlightgroups$Floodlightactivities$List, + params: Params$Resource$Firstandthirdpartyaudiences$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Floodlightgroups$Floodlightactivities$List, + params?: Params$Resource$Firstandthirdpartyaudiences$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Floodlightgroups$Floodlightactivities$List, + params: Params$Resource$Firstandthirdpartyaudiences$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Floodlightgroups$Floodlightactivities$List, + params: Params$Resource$Firstandthirdpartyaudiences$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Floodlightgroups$Floodlightactivities$List, - callback: BodyResponseCallback + params: Params$Resource$Firstandthirdpartyaudiences$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Floodlightgroups$Floodlightactivities$List - | BodyResponseCallback + | Params$Resource$Firstandthirdpartyaudiences$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Floodlightgroups$Floodlightactivities$List; + {}) as Params$Resource$Firstandthirdpartyaudiences$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Floodlightgroups$Floodlightactivities$List; + params = {} as Params$Resource$Firstandthirdpartyaudiences$List; options = {}; } @@ -25111,78 +26069,34 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + - '/v3/floodlightGroups/{+floodlightGroupId}/floodlightActivities' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v3/firstAndThirdPartyAudiences').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['floodlightGroupId'], - pathParams: ['floodlightGroupId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - } - - export interface Params$Resource$Floodlightgroups$Floodlightactivities$Get extends StandardParameters { - /** - * Required. The ID of the Floodlight activity to fetch. - */ - floodlightActivityId?: string; - /** - * Required. The ID of the parent Floodlight group to which the requested Floodlight activity belongs. - */ - floodlightGroupId?: string; - /** - * Required. The ID of the partner through which the Floodlight activity is being accessed. - */ - partnerId?: string; - } - export interface Params$Resource$Floodlightgroups$Floodlightactivities$List extends StandardParameters { - /** - * Required. The ID of the parent Floodlight group to which the requested Floodlight activities belong. - */ - floodlightGroupId?: string; - /** - * Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `floodlightActivityId` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - */ - orderBy?: string; - /** - * Optional. Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListFloodlightActivities` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - /** - * Required. The ID of the partner through which the Floodlight activities are being accessed. - */ - partnerId?: string; - } - - export class Resource$Googleaudiences { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } } /** - * Gets a Google audience. + * Updates an existing FirstAndThirdPartyAudience. Only supported for the following audience_type: * `CUSTOMER_MATCH_CONTACT_INFO` * `CUSTOMER_MATCH_DEVICE_ID` * @example * ```js * // Before running the sample: @@ -25211,22 +26125,61 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.googleAudiences.get({ - * // The ID of the advertiser that has access to the fetched Google audience. + * const res = await displayvideo.firstAndThirdPartyAudiences.patch({ + * // Required. The ID of the owner advertiser of the updated FirstAndThirdPartyAudience. * advertiserId: 'placeholder-value', - * // Required. The ID of the Google audience to fetch. - * googleAudienceId: '[^/]+', - * // The ID of the partner that has access to the fetched Google audience. - * partnerId: 'placeholder-value', + * // Output only. The unique ID of the first and third party audience. Assigned by the system. + * firstAndThirdPartyAudienceId: '[^/]+', + * // Required. The mask to control which fields to update. Updates are only supported for the following fields: * `displayName` * `description` * `membershipDurationDays` + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "activeDisplayAudienceSize": "my_activeDisplayAudienceSize", + * // "appId": "my_appId", + * // "audienceSource": "my_audienceSource", + * // "audienceType": "my_audienceType", + * // "contactInfoList": {}, + * // "description": "my_description", + * // "displayAudienceSize": "my_displayAudienceSize", + * // "displayDesktopAudienceSize": "my_displayDesktopAudienceSize", + * // "displayMobileAppAudienceSize": "my_displayMobileAppAudienceSize", + * // "displayMobileWebAudienceSize": "my_displayMobileWebAudienceSize", + * // "displayName": "my_displayName", + * // "firstAndThirdPartyAudienceId": "my_firstAndThirdPartyAudienceId", + * // "firstAndThirdPartyAudienceType": "my_firstAndThirdPartyAudienceType", + * // "gmailAudienceSize": "my_gmailAudienceSize", + * // "membershipDurationDays": "my_membershipDurationDays", + * // "mobileDeviceIdList": {}, + * // "name": "my_name", + * // "youtubeAudienceSize": "my_youtubeAudienceSize" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "activeDisplayAudienceSize": "my_activeDisplayAudienceSize", + * // "appId": "my_appId", + * // "audienceSource": "my_audienceSource", + * // "audienceType": "my_audienceType", + * // "contactInfoList": {}, + * // "description": "my_description", + * // "displayAudienceSize": "my_displayAudienceSize", + * // "displayDesktopAudienceSize": "my_displayDesktopAudienceSize", + * // "displayMobileAppAudienceSize": "my_displayMobileAppAudienceSize", + * // "displayMobileWebAudienceSize": "my_displayMobileWebAudienceSize", * // "displayName": "my_displayName", - * // "googleAudienceId": "my_googleAudienceId", - * // "googleAudienceType": "my_googleAudienceType", - * // "name": "my_name" + * // "firstAndThirdPartyAudienceId": "my_firstAndThirdPartyAudienceId", + * // "firstAndThirdPartyAudienceType": "my_firstAndThirdPartyAudienceType", + * // "gmailAudienceSize": "my_gmailAudienceSize", + * // "membershipDurationDays": "my_membershipDurationDays", + * // "mobileDeviceIdList": {}, + * // "name": "my_name", + * // "youtubeAudienceSize": "my_youtubeAudienceSize" * // } * } * @@ -25242,53 +26195,57 @@ export namespace displayvideo_v3 { * @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$Googleaudiences$Get, + patch( + params: Params$Resource$Firstandthirdpartyaudiences$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Googleaudiences$Get, + patch( + params?: Params$Resource$Firstandthirdpartyaudiences$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Googleaudiences$Get, + ): Promise>; + patch( + params: Params$Resource$Firstandthirdpartyaudiences$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Googleaudiences$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Firstandthirdpartyaudiences$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Googleaudiences$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Firstandthirdpartyaudiences$Patch, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + patch( + callback: BodyResponseCallback + ): void; + patch( paramsOrCallback?: - | Params$Resource$Googleaudiences$Get - | BodyResponseCallback + | Params$Resource$Firstandthirdpartyaudiences$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Googleaudiences$Get; + {}) as Params$Resource$Firstandthirdpartyaudiences$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Googleaudiences$Get; + params = {} as Params$Resource$Firstandthirdpartyaudiences$Patch; options = {}; } @@ -25301,32 +26258,124 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/googleAudiences/{+googleAudienceId}').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: ( + rootUrl + + '/v3/firstAndThirdPartyAudiences/{+firstAndThirdPartyAudienceId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['googleAudienceId'], - pathParams: ['googleAudienceId'], + requiredParams: ['firstAndThirdPartyAudienceId'], + pathParams: ['firstAndThirdPartyAudienceId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Firstandthirdpartyaudiences$Create extends StandardParameters { /** - * Lists Google audiences. The order is defined by the order_by parameter. + * Required. The ID of the advertiser under whom the FirstAndThirdPartyAudience will be created. + */ + advertiserId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirstAndThirdPartyAudience; + } + export interface Params$Resource$Firstandthirdpartyaudiences$Editcustomermatchmembers extends StandardParameters { + /** + * Required. The ID of the Customer Match FirstAndThirdPartyAudience whose members will be edited. + */ + firstAndThirdPartyAudienceId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$EditCustomerMatchMembersRequest; + } + export interface Params$Resource$Firstandthirdpartyaudiences$Get extends StandardParameters { + /** + * The ID of the advertiser that has access to the fetched first and third party audience. + */ + advertiserId?: string; + /** + * Required. The ID of the first and third party audience to fetch. + */ + firstAndThirdPartyAudienceId?: string; + /** + * The ID of the partner that has access to the fetched first and third party audience. + */ + partnerId?: string; + } + export interface Params$Resource$Firstandthirdpartyaudiences$List extends StandardParameters { + /** + * The ID of the advertiser that has access to the fetched first and third party audiences. + */ + advertiserId?: string; + /** + * Allows filtering by first and third party audience fields. Supported syntax: * Filter expressions for first and third party audiences can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All first and third party audiences for which the display name contains "Google": `displayName:"Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Field by which to sort the list. Acceptable values are: * `firstAndThirdPartyAudienceId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + */ + orderBy?: string; + /** + * Requested page size. Must be between `1` and `5000`. If unspecified, this value defaults to `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListFirstAndThirdPartyAudiences` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + /** + * The ID of the partner that has access to the fetched first and third party audiences. + */ + partnerId?: string; + } + export interface Params$Resource$Firstandthirdpartyaudiences$Patch extends StandardParameters { + /** + * Required. The ID of the owner advertiser of the updated FirstAndThirdPartyAudience. + */ + advertiserId?: string; + /** + * Output only. The unique ID of the first and third party audience. Assigned by the system. + */ + firstAndThirdPartyAudienceId?: string; + /** + * Required. The mask to control which fields to update. Updates are only supported for the following fields: * `displayName` * `description` * `membershipDurationDays` + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirstAndThirdPartyAudience; + } + + export class Resource$Floodlightgroups { + context: APIRequestContext; + floodlightActivities: Resource$Floodlightgroups$Floodlightactivities; + constructor(context: APIRequestContext) { + this.context = context; + this.floodlightActivities = + new Resource$Floodlightgroups$Floodlightactivities(this.context); + } + + /** + * Gets a Floodlight group. * @example * ```js * // Before running the sample: @@ -25346,35 +26395,32 @@ export namespace displayvideo_v3 { * * async function main() { * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/display-video'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await displayvideo.googleAudiences.list({ - * // The ID of the advertiser that has access to the fetched Google audiences. - * advertiserId: 'placeholder-value', - * // Allows filtering by Google audience fields. Supported syntax: * Filter expressions for Google audiences can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All Google audiences for which the display name contains "Google": `displayName:"Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `googleAudienceId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListGoogleAudiences` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // The ID of the partner that has access to the fetched Google audiences. + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.floodlightGroups.get({ + * // Required. The ID of the Floodlight group to fetch. + * floodlightGroupId: '[^/]+', + * // Required. The partner context by which the Floodlight group is being accessed. * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "googleAudiences": [], - * // "nextPageToken": "my_nextPageToken" + * // "activeViewConfig": {}, + * // "customVariables": {}, + * // "displayName": "my_displayName", + * // "floodlightGroupId": "my_floodlightGroupId", + * // "lookbackWindow": {}, + * // "name": "my_name", + * // "webTagType": "my_webTagType" * // } * } * @@ -25390,57 +26436,53 @@ export namespace displayvideo_v3 { * @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$Googleaudiences$List, + get( + params: Params$Resource$Floodlightgroups$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Googleaudiences$List, + get( + params?: Params$Resource$Floodlightgroups$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Googleaudiences$List, + ): Promise>; + get( + params: Params$Resource$Floodlightgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Googleaudiences$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Googleaudiences$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Floodlightgroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + get( + params: Params$Resource$Floodlightgroups$Get, + callback: BodyResponseCallback ): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Googleaudiences$List - | BodyResponseCallback + | Params$Resource$Floodlightgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Googleaudiences$List; + {}) as Params$Resource$Floodlightgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Googleaudiences$List; + params = {} as Params$Resource$Floodlightgroups$Get; options = {}; } @@ -25453,80 +26495,31 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/googleAudiences').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + '/v3/floodlightGroups/{+floodlightGroupId}' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['floodlightGroupId'], + pathParams: ['floodlightGroupId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Googleaudiences$Get extends StandardParameters { - /** - * The ID of the advertiser that has access to the fetched Google audience. - */ - advertiserId?: string; - /** - * Required. The ID of the Google audience to fetch. - */ - googleAudienceId?: string; - /** - * The ID of the partner that has access to the fetched Google audience. - */ - partnerId?: string; - } - export interface Params$Resource$Googleaudiences$List extends StandardParameters { - /** - * The ID of the advertiser that has access to the fetched Google audiences. - */ - advertiserId?: string; - /** - * Allows filtering by Google audience fields. Supported syntax: * Filter expressions for Google audiences can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All Google audiences for which the display name contains "Google": `displayName:"Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Field by which to sort the list. Acceptable values are: * `googleAudienceId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - */ - orderBy?: string; - /** - * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListGoogleAudiences` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - /** - * The ID of the partner that has access to the fetched Google audiences. - */ - partnerId?: string; - } - - export class Resource$Guaranteedorders { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new guaranteed order. Returns the newly created guaranteed order if successful. + * Updates an existing Floodlight group. Returns the updated Floodlight group if successful. * @example * ```js * // Before running the sample: @@ -25555,30 +26548,25 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.guaranteedOrders.create({ - * // The ID of the advertiser that the request is being made within. - * advertiserId: 'placeholder-value', - * // The ID of the partner that the request is being made within. + * const res = await displayvideo.floodlightGroups.patch({ + * // Output only. The unique ID of the Floodlight group. Assigned by the system. + * floodlightGroupId: 'placeholder-value', + * // Required. The partner context by which the Floodlight group is being accessed. * partnerId: 'placeholder-value', + * // Required. The mask to control which fields to update. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "defaultAdvertiserId": "my_defaultAdvertiserId", - * // "defaultCampaignId": "my_defaultCampaignId", + * // "activeViewConfig": {}, + * // "customVariables": {}, * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "legacyGuaranteedOrderId": "my_legacyGuaranteedOrderId", + * // "floodlightGroupId": "my_floodlightGroupId", + * // "lookbackWindow": {}, * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "readAccessInherited": false, - * // "readAdvertiserIds": [], - * // "readWriteAdvertiserId": "my_readWriteAdvertiserId", - * // "readWritePartnerId": "my_readWritePartnerId", - * // "status": {}, - * // "updateTime": "my_updateTime" + * // "webTagType": "my_webTagType" * // } * }, * }); @@ -25586,20 +26574,13 @@ export namespace displayvideo_v3 { * * // Example response * // { - * // "defaultAdvertiserId": "my_defaultAdvertiserId", - * // "defaultCampaignId": "my_defaultCampaignId", + * // "activeViewConfig": {}, + * // "customVariables": {}, * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "legacyGuaranteedOrderId": "my_legacyGuaranteedOrderId", + * // "floodlightGroupId": "my_floodlightGroupId", + * // "lookbackWindow": {}, * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "readAccessInherited": false, - * // "readAdvertiserIds": [], - * // "readWriteAdvertiserId": "my_readWriteAdvertiserId", - * // "readWritePartnerId": "my_readWritePartnerId", - * // "status": {}, - * // "updateTime": "my_updateTime" + * // "webTagType": "my_webTagType" * // } * } * @@ -25615,53 +26596,53 @@ export namespace displayvideo_v3 { * @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$Guaranteedorders$Create, + patch( + params: Params$Resource$Floodlightgroups$Patch, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Guaranteedorders$Create, + patch( + params?: Params$Resource$Floodlightgroups$Patch, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Guaranteedorders$Create, + ): Promise>; + patch( + params: Params$Resource$Floodlightgroups$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Guaranteedorders$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Floodlightgroups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Guaranteedorders$Create, - callback: BodyResponseCallback + patch( + params: Params$Resource$Floodlightgroups$Patch, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Guaranteedorders$Create - | BodyResponseCallback + | Params$Resource$Floodlightgroups$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Guaranteedorders$Create; + {}) as Params$Resource$Floodlightgroups$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Guaranteedorders$Create; + params = {} as Params$Resource$Floodlightgroups$Patch; options = {}; } @@ -25674,32 +26655,69 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/guaranteedOrders').replace( + url: (rootUrl + '/v3/floodlightGroups/{floodlightGroupId}').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['floodlightGroupId'], + pathParams: ['floodlightGroupId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + + export interface Params$Resource$Floodlightgroups$Get extends StandardParameters { + /** + * Required. The ID of the Floodlight group to fetch. + */ + floodlightGroupId?: string; + /** + * Required. The partner context by which the Floodlight group is being accessed. + */ + partnerId?: string; + } + export interface Params$Resource$Floodlightgroups$Patch extends StandardParameters { + /** + * Output only. The unique ID of the Floodlight group. Assigned by the system. + */ + floodlightGroupId?: string; + /** + * Required. The partner context by which the Floodlight group is being accessed. + */ + partnerId?: string; + /** + * Required. The mask to control which fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FloodlightGroup; + } + + export class Resource$Floodlightgroups$Floodlightactivities { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Edits read advertisers of a guaranteed order. + * Gets a Floodlight activity. * @example * ```js * // Before running the sample: @@ -25728,28 +26746,26 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.guaranteedOrders.editGuaranteedOrderReadAccessors({ - * // Required. The ID of the guaranteed order to edit. The ID is of the format `{exchange\}-{legacy_guaranteed_order_id\}` - * guaranteedOrderId: '[^/]+', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "addedAdvertisers": [], - * // "partnerId": "my_partnerId", - * // "readAccessInherited": false, - * // "removedAdvertisers": [] - * // } - * }, - * }); + * const res = await displayvideo.floodlightGroups.floodlightActivities.get({ + * // Required. The ID of the Floodlight activity to fetch. + * floodlightActivityId: '[^/]+', + * // Required. The ID of the parent Floodlight group to which the requested Floodlight activity belongs. + * floodlightGroupId: '[^/]+', + * // Required. The ID of the partner through which the Floodlight activity is being accessed. + * partnerId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "readAccessInherited": false, - * // "readAdvertiserIds": [] + * // "advertiserIds": [], + * // "displayName": "my_displayName", + * // "floodlightActivityId": "my_floodlightActivityId", + * // "floodlightGroupId": "my_floodlightGroupId", + * // "name": "my_name", + * // "remarketingConfigs": [], + * // "servingStatus": "my_servingStatus", + * // "sslRequired": false * // } * } * @@ -25765,62 +26781,54 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - editGuaranteedOrderReadAccessors( - params: Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors, + get( + params: Params$Resource$Floodlightgroups$Floodlightactivities$Get, options: StreamMethodOptions ): Promise>; - editGuaranteedOrderReadAccessors( - params?: Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors, + get( + params?: Params$Resource$Floodlightgroups$Floodlightactivities$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - editGuaranteedOrderReadAccessors( - params: Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors, + ): Promise>; + get( + params: Params$Resource$Floodlightgroups$Floodlightactivities$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - editGuaranteedOrderReadAccessors( - params: Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - editGuaranteedOrderReadAccessors( - params: Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors, - callback: BodyResponseCallback + get( + params: Params$Resource$Floodlightgroups$Floodlightactivities$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - editGuaranteedOrderReadAccessors( - callback: BodyResponseCallback + get( + params: Params$Resource$Floodlightgroups$Floodlightactivities$Get, + callback: BodyResponseCallback ): void; - editGuaranteedOrderReadAccessors( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors - | BodyResponseCallback + | Params$Resource$Floodlightgroups$Floodlightactivities$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors; + {}) as Params$Resource$Floodlightgroups$Floodlightactivities$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors; + {} as Params$Resource$Floodlightgroups$Floodlightactivities$Get; options = {}; } @@ -25835,32 +26843,30 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/guaranteedOrders/{+guaranteedOrderId}:editGuaranteedOrderReadAccessors' + '/v3/floodlightGroups/{+floodlightGroupId}/floodlightActivities/{+floodlightActivityId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['guaranteedOrderId'], - pathParams: ['guaranteedOrderId'], + requiredParams: ['floodlightGroupId', 'floodlightActivityId'], + pathParams: ['floodlightActivityId', 'floodlightGroupId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Gets a guaranteed order. + * Lists Floodlight activities in a Floodlight group. * @example * ```js * // Before running the sample: @@ -25889,32 +26895,24 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.guaranteedOrders.get({ - * // The ID of the advertiser that has access to the guaranteed order. - * advertiserId: 'placeholder-value', - * // Required. The ID of the guaranteed order to fetch. The ID is of the format `{exchange\}-{legacy_guaranteed_order_id\}` - * guaranteedOrderId: '[^/]+', - * // The ID of the partner that has access to the guaranteed order. + * const res = await displayvideo.floodlightGroups.floodlightActivities.list({ + * // Required. The ID of the parent Floodlight group to which the requested Floodlight activities belong. + * floodlightGroupId: '[^/]+', + * // Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `floodlightActivityId` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListFloodlightActivities` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * // Required. The ID of the partner through which the Floodlight activities are being accessed. * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "defaultAdvertiserId": "my_defaultAdvertiserId", - * // "defaultCampaignId": "my_defaultCampaignId", - * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "legacyGuaranteedOrderId": "my_legacyGuaranteedOrderId", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "readAccessInherited": false, - * // "readAdvertiserIds": [], - * // "readWriteAdvertiserId": "my_readWriteAdvertiserId", - * // "readWritePartnerId": "my_readWritePartnerId", - * // "status": {}, - * // "updateTime": "my_updateTime" + * // "floodlightActivities": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -25930,53 +26928,62 @@ export namespace displayvideo_v3 { * @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$Guaranteedorders$Get, + list( + params: Params$Resource$Floodlightgroups$Floodlightactivities$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Guaranteedorders$Get, + list( + params?: Params$Resource$Floodlightgroups$Floodlightactivities$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Guaranteedorders$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Floodlightgroups$Floodlightactivities$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Guaranteedorders$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Floodlightgroups$Floodlightactivities$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Guaranteedorders$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Floodlightgroups$Floodlightactivities$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Guaranteedorders$Get - | BodyResponseCallback + | Params$Resource$Floodlightgroups$Floodlightactivities$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Guaranteedorders$Get; + {}) as Params$Resource$Floodlightgroups$Floodlightactivities$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Guaranteedorders$Get; + params = + {} as Params$Resource$Floodlightgroups$Floodlightactivities$List; options = {}; } @@ -25990,7 +26997,8 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/guaranteedOrders/{+guaranteedOrderId}' + rootUrl + + '/v3/floodlightGroups/{+floodlightGroupId}/floodlightActivities' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -25998,22 +27006,68 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['guaranteedOrderId'], - pathParams: ['guaranteedOrderId'], + requiredParams: ['floodlightGroupId'], + pathParams: ['floodlightGroupId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + + export interface Params$Resource$Floodlightgroups$Floodlightactivities$Get extends StandardParameters { + /** + * Required. The ID of the Floodlight activity to fetch. + */ + floodlightActivityId?: string; + /** + * Required. The ID of the parent Floodlight group to which the requested Floodlight activity belongs. + */ + floodlightGroupId?: string; + /** + * Required. The ID of the partner through which the Floodlight activity is being accessed. + */ + partnerId?: string; + } + export interface Params$Resource$Floodlightgroups$Floodlightactivities$List extends StandardParameters { + /** + * Required. The ID of the parent Floodlight group to which the requested Floodlight activities belong. + */ + floodlightGroupId?: string; + /** + * Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `floodlightActivityId` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + */ + orderBy?: string; + /** + * Optional. Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListFloodlightActivities` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + /** + * Required. The ID of the partner through which the Floodlight activities are being accessed. + */ + partnerId?: string; + } + + export class Resource$Googleaudiences { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Lists guaranteed orders that are accessible to the current user. The order is defined by the order_by parameter. If a filter by entity_status is not specified, guaranteed orders with entity status `ENTITY_STATUS_ARCHIVED` will not be included in the results. + * Gets a Google audience. * @example * ```js * // Before running the sample: @@ -26042,26 +27096,22 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.guaranteedOrders.list({ - * // The ID of the advertiser that has access to the guaranteed order. + * const res = await displayvideo.googleAudiences.get({ + * // The ID of the advertiser that has access to the fetched Google audience. * advertiserId: 'placeholder-value', - * // Allows filtering by guaranteed order fields. * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `guaranteed_order_id` * `exchange` * `display_name` * `status.entityStatus` Examples: * All active guaranteed orders: `status.entityStatus="ENTITY_STATUS_ACTIVE"` * Guaranteed orders belonging to Google Ad Manager or Rubicon exchanges: `exchange="EXCHANGE_GOOGLE_AD_MANAGER" OR exchange="EXCHANGE_RUBICON"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. For example, `displayName desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListGuaranteedOrders` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // The ID of the partner that has access to the guaranteed order. + * // Required. The ID of the Google audience to fetch. + * googleAudienceId: '[^/]+', + * // The ID of the partner that has access to the fetched Google audience. * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "guaranteedOrders": [], - * // "nextPageToken": "my_nextPageToken" + * // "displayName": "my_displayName", + * // "googleAudienceId": "my_googleAudienceId", + * // "googleAudienceType": "my_googleAudienceType", + * // "name": "my_name" * // } * } * @@ -26077,57 +27127,53 @@ export namespace displayvideo_v3 { * @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$Guaranteedorders$List, + get( + params: Params$Resource$Googleaudiences$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Guaranteedorders$List, + get( + params?: Params$Resource$Googleaudiences$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Guaranteedorders$List, + ): Promise>; + get( + params: Params$Resource$Googleaudiences$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Guaranteedorders$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Guaranteedorders$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Googleaudiences$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + get( + params: Params$Resource$Googleaudiences$Get, + callback: BodyResponseCallback ): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Guaranteedorders$List - | BodyResponseCallback + | Params$Resource$Googleaudiences$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Guaranteedorders$List; + {}) as Params$Resource$Googleaudiences$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Guaranteedorders$List; + params = {} as Params$Resource$Googleaudiences$Get; options = {}; } @@ -26140,7 +27186,7 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/guaranteedOrders').replace( + url: (rootUrl + '/v3/googleAudiences/{+googleAudienceId}').replace( /([^:]\/)\/+/g, '$1' ), @@ -26150,24 +27196,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['googleAudienceId'], + pathParams: ['googleAudienceId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates an existing guaranteed order. Returns the updated guaranteed order if successful. + * Lists Google audiences. The order is defined by the order_by parameter. * @example * ```js * // Before running the sample: @@ -26196,55 +27240,26 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.guaranteedOrders.patch({ - * // The ID of the advertiser that the request is being made within. + * const res = await displayvideo.googleAudiences.list({ + * // The ID of the advertiser that has access to the fetched Google audiences. * advertiserId: 'placeholder-value', - * // Output only. The unique identifier of the guaranteed order. The guaranteed order IDs have the format `{exchange\}-{legacy_guaranteed_order_id\}`. - * guaranteedOrderId: '[^/]+', - * // The ID of the partner that the request is being made within. + * // Allows filtering by Google audience fields. Supported syntax: * Filter expressions for Google audiences can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All Google audiences for which the display name contains "Google": `displayName:"Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `googleAudienceId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListGoogleAudiences` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * // The ID of the partner that has access to the fetched Google audiences. * partnerId: 'placeholder-value', - * // Required. The mask to control which fields to update. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "defaultAdvertiserId": "my_defaultAdvertiserId", - * // "defaultCampaignId": "my_defaultCampaignId", - * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "legacyGuaranteedOrderId": "my_legacyGuaranteedOrderId", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "readAccessInherited": false, - * // "readAdvertiserIds": [], - * // "readWriteAdvertiserId": "my_readWriteAdvertiserId", - * // "readWritePartnerId": "my_readWritePartnerId", - * // "status": {}, - * // "updateTime": "my_updateTime" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "defaultAdvertiserId": "my_defaultAdvertiserId", - * // "defaultCampaignId": "my_defaultCampaignId", - * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "legacyGuaranteedOrderId": "my_legacyGuaranteedOrderId", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "readAccessInherited": false, - * // "readAdvertiserIds": [], - * // "readWriteAdvertiserId": "my_readWriteAdvertiserId", - * // "readWritePartnerId": "my_readWritePartnerId", - * // "status": {}, - * // "updateTime": "my_updateTime" + * // "googleAudiences": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -26260,53 +27275,57 @@ export namespace displayvideo_v3 { * @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$Guaranteedorders$Patch, + list( + params: Params$Resource$Googleaudiences$List, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Guaranteedorders$Patch, + list( + params?: Params$Resource$Googleaudiences$List, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Guaranteedorders$Patch, + ): Promise>; + list( + params: Params$Resource$Googleaudiences$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Guaranteedorders$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Googleaudiences$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Guaranteedorders$Patch, - callback: BodyResponseCallback + list( + params: Params$Resource$Googleaudiences$List, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Guaranteedorders$Patch - | BodyResponseCallback + | Params$Resource$Googleaudiences$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Guaranteedorders$Patch; + {}) as Params$Resource$Googleaudiences$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Guaranteedorders$Patch; + params = {} as Params$Resource$Googleaudiences$List; options = {}; } @@ -26319,133 +27338,80 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v3/guaranteedOrders/{+guaranteedOrderId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v3/googleAudiences').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['guaranteedOrderId'], - pathParams: ['guaranteedOrderId'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Guaranteedorders$Create extends StandardParameters { - /** - * The ID of the advertiser that the request is being made within. - */ - advertiserId?: string; - /** - * The ID of the partner that the request is being made within. - */ - partnerId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GuaranteedOrder; - } - export interface Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors extends StandardParameters { - /** - * Required. The ID of the guaranteed order to edit. The ID is of the format `{exchange\}-{legacy_guaranteed_order_id\}` - */ - guaranteedOrderId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$EditGuaranteedOrderReadAccessorsRequest; + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } - export interface Params$Resource$Guaranteedorders$Get extends StandardParameters { + + export interface Params$Resource$Googleaudiences$Get extends StandardParameters { /** - * The ID of the advertiser that has access to the guaranteed order. + * The ID of the advertiser that has access to the fetched Google audience. */ advertiserId?: string; /** - * Required. The ID of the guaranteed order to fetch. The ID is of the format `{exchange\}-{legacy_guaranteed_order_id\}` + * Required. The ID of the Google audience to fetch. */ - guaranteedOrderId?: string; + googleAudienceId?: string; /** - * The ID of the partner that has access to the guaranteed order. + * The ID of the partner that has access to the fetched Google audience. */ partnerId?: string; } - export interface Params$Resource$Guaranteedorders$List extends StandardParameters { + export interface Params$Resource$Googleaudiences$List extends StandardParameters { /** - * The ID of the advertiser that has access to the guaranteed order. + * The ID of the advertiser that has access to the fetched Google audiences. */ advertiserId?: string; /** - * Allows filtering by guaranteed order fields. * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `guaranteed_order_id` * `exchange` * `display_name` * `status.entityStatus` Examples: * All active guaranteed orders: `status.entityStatus="ENTITY_STATUS_ACTIVE"` * Guaranteed orders belonging to Google Ad Manager or Rubicon exchanges: `exchange="EXCHANGE_GOOGLE_AD_MANAGER" OR exchange="EXCHANGE_RUBICON"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * Allows filtering by Google audience fields. Supported syntax: * Filter expressions for Google audiences can only contain at most one restriction. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `HAS (:)` operator. Supported fields: * `displayName` Examples: * All Google audiences for which the display name contains "Google": `displayName:"Google"`. The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ filter?: string; /** - * Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. For example, `displayName desc`. + * Field by which to sort the list. Acceptable values are: * `googleAudienceId` (default) * `displayName` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. */ orderBy?: string; /** - * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. + * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. */ pageSize?: number; /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListGuaranteedOrders` method. If not specified, the first page of results will be returned. + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListGoogleAudiences` method. If not specified, the first page of results will be returned. */ pageToken?: string; /** - * The ID of the partner that has access to the guaranteed order. - */ - partnerId?: string; - } - export interface Params$Resource$Guaranteedorders$Patch extends StandardParameters { - /** - * The ID of the advertiser that the request is being made within. - */ - advertiserId?: string; - /** - * Output only. The unique identifier of the guaranteed order. The guaranteed order IDs have the format `{exchange\}-{legacy_guaranteed_order_id\}`. - */ - guaranteedOrderId?: string; - /** - * The ID of the partner that the request is being made within. + * The ID of the partner that has access to the fetched Google audiences. */ partnerId?: string; - /** - * Required. The mask to control which fields to update. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GuaranteedOrder; } - export class Resource$Inventorysourcegroups { + export class Resource$Guaranteedorders { context: APIRequestContext; - assignedInventorySources: Resource$Inventorysourcegroups$Assignedinventorysources; constructor(context: APIRequestContext) { this.context = context; - this.assignedInventorySources = - new Resource$Inventorysourcegroups$Assignedinventorysources( - this.context - ); } /** - * Creates a new inventory source group. Returns the newly created inventory source group if successful. + * Creates a new guaranteed order. Returns the newly created guaranteed order if successful. * @example * ```js * // Before running the sample: @@ -26474,19 +27440,30 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.inventorySourceGroups.create({ - * // The ID of the advertiser that owns the inventory source group. The parent partner will not have access to this group. + * const res = await displayvideo.guaranteedOrders.create({ + * // The ID of the advertiser that the request is being made within. * advertiserId: 'placeholder-value', - * // The ID of the partner that owns the inventory source group. Only this partner will have write access to this group. Only advertisers to which this group is explicitly shared will have read access to this group. + * // The ID of the partner that the request is being made within. * partnerId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "defaultAdvertiserId": "my_defaultAdvertiserId", + * // "defaultCampaignId": "my_defaultCampaignId", * // "displayName": "my_displayName", - * // "inventorySourceGroupId": "my_inventorySourceGroupId", - * // "name": "my_name" + * // "exchange": "my_exchange", + * // "guaranteedOrderId": "my_guaranteedOrderId", + * // "legacyGuaranteedOrderId": "my_legacyGuaranteedOrderId", + * // "name": "my_name", + * // "publisherName": "my_publisherName", + * // "readAccessInherited": false, + * // "readAdvertiserIds": [], + * // "readWriteAdvertiserId": "my_readWriteAdvertiserId", + * // "readWritePartnerId": "my_readWritePartnerId", + * // "status": {}, + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -26494,9 +27471,20 @@ export namespace displayvideo_v3 { * * // Example response * // { + * // "defaultAdvertiserId": "my_defaultAdvertiserId", + * // "defaultCampaignId": "my_defaultCampaignId", * // "displayName": "my_displayName", - * // "inventorySourceGroupId": "my_inventorySourceGroupId", - * // "name": "my_name" + * // "exchange": "my_exchange", + * // "guaranteedOrderId": "my_guaranteedOrderId", + * // "legacyGuaranteedOrderId": "my_legacyGuaranteedOrderId", + * // "name": "my_name", + * // "publisherName": "my_publisherName", + * // "readAccessInherited": false, + * // "readAdvertiserIds": [], + * // "readWriteAdvertiserId": "my_readWriteAdvertiserId", + * // "readWritePartnerId": "my_readWritePartnerId", + * // "status": {}, + * // "updateTime": "my_updateTime" * // } * } * @@ -26513,54 +27501,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Inventorysourcegroups$Create, + params: Params$Resource$Guaranteedorders$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Inventorysourcegroups$Create, + params?: Params$Resource$Guaranteedorders$Create, options?: MethodOptions - ): Promise>; + ): Promise>; create( - params: Params$Resource$Inventorysourcegroups$Create, + params: Params$Resource$Guaranteedorders$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Inventorysourcegroups$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Guaranteedorders$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; create( - params: Params$Resource$Inventorysourcegroups$Create, - callback: BodyResponseCallback + params: Params$Resource$Guaranteedorders$Create, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; + create(callback: BodyResponseCallback): void; create( paramsOrCallback?: - | Params$Resource$Inventorysourcegroups$Create - | BodyResponseCallback + | Params$Resource$Guaranteedorders$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysourcegroups$Create; + {}) as Params$Resource$Guaranteedorders$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysourcegroups$Create; + params = {} as Params$Resource$Guaranteedorders$Create; options = {}; } @@ -26573,7 +27559,7 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/inventorySourceGroups').replace( + url: (rootUrl + '/v3/guaranteedOrders').replace( /([^:]\/)\/+/g, '$1' ), @@ -26588,17 +27574,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes an inventory source group. + * Edits read advertisers of a guaranteed order. * @example * ```js * // Before running the sample: @@ -26627,18 +27613,29 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.inventorySourceGroups.delete({ - * // The ID of the advertiser that owns the inventory source group. The parent partner does not have access to this group. - * advertiserId: 'placeholder-value', - * // Required. The ID of the inventory source group to delete. - * inventorySourceGroupId: '[^/]+', - * // The ID of the partner that owns the inventory source group. Only this partner has write access to this group. - * partnerId: 'placeholder-value', - * }); + * const res = + * await displayvideo.guaranteedOrders.editGuaranteedOrderReadAccessors({ + * // Required. The ID of the guaranteed order to edit. The ID is of the format `{exchange\}-{legacy_guaranteed_order_id\}` + * guaranteedOrderId: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "addedAdvertisers": [], + * // "partnerId": "my_partnerId", + * // "readAccessInherited": false, + * // "removedAdvertisers": [] + * // } + * }, + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "readAccessInherited": false, + * // "readAdvertiserIds": [] + * // } * } * * main().catch(e => { @@ -26653,53 +27650,62 @@ export namespace displayvideo_v3 { * @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$Inventorysourcegroups$Delete, + editGuaranteedOrderReadAccessors( + params: Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Inventorysourcegroups$Delete, + editGuaranteedOrderReadAccessors( + params?: Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Inventorysourcegroups$Delete, + ): Promise< + GaxiosResponseWithHTTP2 + >; + editGuaranteedOrderReadAccessors( + params: Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Inventorysourcegroups$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + editGuaranteedOrderReadAccessors( + params: Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Inventorysourcegroups$Delete, - callback: BodyResponseCallback + editGuaranteedOrderReadAccessors( + params: Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + editGuaranteedOrderReadAccessors( + callback: BodyResponseCallback + ): void; + editGuaranteedOrderReadAccessors( paramsOrCallback?: - | Params$Resource$Inventorysourcegroups$Delete - | BodyResponseCallback + | Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysourcegroups$Delete; + {}) as Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysourcegroups$Delete; + params = + {} as Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors; options = {}; } @@ -26713,30 +27719,33 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/inventorySourceGroups/{+inventorySourceGroupId}' + rootUrl + + '/v3/guaranteedOrders/{+guaranteedOrderId}:editGuaranteedOrderReadAccessors' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['inventorySourceGroupId'], - pathParams: ['inventorySourceGroupId'], + requiredParams: ['guaranteedOrderId'], + pathParams: ['guaranteedOrderId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Gets an inventory source group. + * Gets a guaranteed order. * @example * ```js * // Before running the sample: @@ -26765,21 +27774,32 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.inventorySourceGroups.get({ - * // The ID of the advertiser that has access to the inventory source group. If an inventory source group is partner-owned, only advertisers to which the group is explicitly shared can access the group. + * const res = await displayvideo.guaranteedOrders.get({ + * // The ID of the advertiser that has access to the guaranteed order. * advertiserId: 'placeholder-value', - * // Required. The ID of the inventory source group to fetch. - * inventorySourceGroupId: '[^/]+', - * // The ID of the partner that has access to the inventory source group. A partner cannot access an advertiser-owned inventory source group. + * // Required. The ID of the guaranteed order to fetch. The ID is of the format `{exchange\}-{legacy_guaranteed_order_id\}` + * guaranteedOrderId: '[^/]+', + * // The ID of the partner that has access to the guaranteed order. * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "defaultAdvertiserId": "my_defaultAdvertiserId", + * // "defaultCampaignId": "my_defaultCampaignId", * // "displayName": "my_displayName", - * // "inventorySourceGroupId": "my_inventorySourceGroupId", - * // "name": "my_name" + * // "exchange": "my_exchange", + * // "guaranteedOrderId": "my_guaranteedOrderId", + * // "legacyGuaranteedOrderId": "my_legacyGuaranteedOrderId", + * // "name": "my_name", + * // "publisherName": "my_publisherName", + * // "readAccessInherited": false, + * // "readAdvertiserIds": [], + * // "readWriteAdvertiserId": "my_readWriteAdvertiserId", + * // "readWritePartnerId": "my_readWritePartnerId", + * // "status": {}, + * // "updateTime": "my_updateTime" * // } * } * @@ -26796,54 +27816,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Inventorysourcegroups$Get, + params: Params$Resource$Guaranteedorders$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Inventorysourcegroups$Get, + params?: Params$Resource$Guaranteedorders$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Inventorysourcegroups$Get, + params: Params$Resource$Guaranteedorders$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Inventorysourcegroups$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Guaranteedorders$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Inventorysourcegroups$Get, - callback: BodyResponseCallback + params: Params$Resource$Guaranteedorders$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Inventorysourcegroups$Get - | BodyResponseCallback + | Params$Resource$Guaranteedorders$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysourcegroups$Get; + {}) as Params$Resource$Guaranteedorders$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysourcegroups$Get; + params = {} as Params$Resource$Guaranteedorders$Get; options = {}; } @@ -26857,7 +27875,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/inventorySourceGroups/{+inventorySourceGroupId}' + rootUrl + '/v3/guaranteedOrders/{+guaranteedOrderId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -26865,22 +27883,22 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['inventorySourceGroupId'], - pathParams: ['inventorySourceGroupId'], + requiredParams: ['guaranteedOrderId'], + pathParams: ['guaranteedOrderId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists inventory source groups that are accessible to the current user. The order is defined by the order_by parameter. + * Lists guaranteed orders that are accessible to the current user. The order is defined by the order_by parameter. If a filter by entity_status is not specified, guaranteed orders with entity status `ENTITY_STATUS_ARCHIVED` will not be included in the results. * @example * ```js * // Before running the sample: @@ -26909,25 +27927,25 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.inventorySourceGroups.list({ - * // The ID of the advertiser that has access to the inventory source group. If an inventory source group is partner-owned, only advertisers to which the group is explicitly shared can access the group. + * const res = await displayvideo.guaranteedOrders.list({ + * // The ID of the advertiser that has access to the guaranteed order. * advertiserId: 'placeholder-value', - * // Allows filtering by inventory source group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `inventorySourceGroupId` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * // Allows filtering by guaranteed order fields. * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `guaranteed_order_id` * `exchange` * `display_name` * `status.entityStatus` Examples: * All active guaranteed orders: `status.entityStatus="ENTITY_STATUS_ACTIVE"` * Guaranteed orders belonging to Google Ad Manager or Rubicon exchanges: `exchange="EXCHANGE_GOOGLE_AD_MANAGER" OR exchange="EXCHANGE_RUBICON"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `displayName` (default) * `inventorySourceGroupId` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. For example, `displayName desc`. + * // Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. For example, `displayName desc`. * orderBy: 'placeholder-value', * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInventorySources` method. If not specified, the first page of results will be returned. + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListGuaranteedOrders` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // The ID of the partner that has access to the inventory source group. A partner cannot access advertiser-owned inventory source groups. + * // The ID of the partner that has access to the guaranteed order. * partnerId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "inventorySourceGroups": [], + * // "guaranteedOrders": [], * // "nextPageToken": "my_nextPageToken" * // } * } @@ -26945,60 +27963,56 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Inventorysourcegroups$List, + params: Params$Resource$Guaranteedorders$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Inventorysourcegroups$List, + params?: Params$Resource$Guaranteedorders$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; list( - params: Params$Resource$Inventorysourcegroups$List, + params: Params$Resource$Guaranteedorders$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Inventorysourcegroups$List, + params: Params$Resource$Guaranteedorders$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Inventorysourcegroups$List, - callback: BodyResponseCallback + params: Params$Resource$Guaranteedorders$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Inventorysourcegroups$List - | BodyResponseCallback + | Params$Resource$Guaranteedorders$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysourcegroups$List; + {}) as Params$Resource$Guaranteedorders$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysourcegroups$List; + params = {} as Params$Resource$Guaranteedorders$List; options = {}; } @@ -27011,7 +28025,7 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/inventorySourceGroups').replace( + url: (rootUrl + '/v3/guaranteedOrders').replace( /([^:]\/)\/+/g, '$1' ), @@ -27026,19 +28040,19 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Updates an inventory source group. Returns the updated inventory source group if successful. + * Updates an existing guaranteed order. Returns the updated guaranteed order if successful. * @example * ```js * // Before running the sample: @@ -27067,12 +28081,12 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.inventorySourceGroups.patch({ - * // The ID of the advertiser that owns the inventory source group. The parent partner does not have access to this group. + * const res = await displayvideo.guaranteedOrders.patch({ + * // The ID of the advertiser that the request is being made within. * advertiserId: 'placeholder-value', - * // Output only. The unique ID of the inventory source group. Assigned by the system. - * inventorySourceGroupId: 'placeholder-value', - * // The ID of the partner that owns the inventory source group. Only this partner has write access to this group. + * // Output only. The unique identifier of the guaranteed order. The guaranteed order IDs have the format `{exchange\}-{legacy_guaranteed_order_id\}`. + * guaranteedOrderId: '[^/]+', + * // The ID of the partner that the request is being made within. * partnerId: 'placeholder-value', * // Required. The mask to control which fields to update. * updateMask: 'placeholder-value', @@ -27081,9 +28095,20 @@ export namespace displayvideo_v3 { * requestBody: { * // request body parameters * // { + * // "defaultAdvertiserId": "my_defaultAdvertiserId", + * // "defaultCampaignId": "my_defaultCampaignId", * // "displayName": "my_displayName", - * // "inventorySourceGroupId": "my_inventorySourceGroupId", - * // "name": "my_name" + * // "exchange": "my_exchange", + * // "guaranteedOrderId": "my_guaranteedOrderId", + * // "legacyGuaranteedOrderId": "my_legacyGuaranteedOrderId", + * // "name": "my_name", + * // "publisherName": "my_publisherName", + * // "readAccessInherited": false, + * // "readAdvertiserIds": [], + * // "readWriteAdvertiserId": "my_readWriteAdvertiserId", + * // "readWritePartnerId": "my_readWritePartnerId", + * // "status": {}, + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -27091,9 +28116,20 @@ export namespace displayvideo_v3 { * * // Example response * // { + * // "defaultAdvertiserId": "my_defaultAdvertiserId", + * // "defaultCampaignId": "my_defaultCampaignId", * // "displayName": "my_displayName", - * // "inventorySourceGroupId": "my_inventorySourceGroupId", - * // "name": "my_name" + * // "exchange": "my_exchange", + * // "guaranteedOrderId": "my_guaranteedOrderId", + * // "legacyGuaranteedOrderId": "my_legacyGuaranteedOrderId", + * // "name": "my_name", + * // "publisherName": "my_publisherName", + * // "readAccessInherited": false, + * // "readAdvertiserIds": [], + * // "readWriteAdvertiserId": "my_readWriteAdvertiserId", + * // "readWritePartnerId": "my_readWritePartnerId", + * // "status": {}, + * // "updateTime": "my_updateTime" * // } * } * @@ -27110,54 +28146,52 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Inventorysourcegroups$Patch, + params: Params$Resource$Guaranteedorders$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Inventorysourcegroups$Patch, + params?: Params$Resource$Guaranteedorders$Patch, options?: MethodOptions - ): Promise>; + ): Promise>; patch( - params: Params$Resource$Inventorysourcegroups$Patch, + params: Params$Resource$Guaranteedorders$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Inventorysourcegroups$Patch, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Guaranteedorders$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Inventorysourcegroups$Patch, - callback: BodyResponseCallback + params: Params$Resource$Guaranteedorders$Patch, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; + patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Inventorysourcegroups$Patch - | BodyResponseCallback + | Params$Resource$Guaranteedorders$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysourcegroups$Patch; + {}) as Params$Resource$Guaranteedorders$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysourcegroups$Patch; + params = {} as Params$Resource$Guaranteedorders$Patch; options = {}; } @@ -27171,7 +28205,7 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/inventorySourceGroups/{inventorySourceGroupId}' + rootUrl + '/v3/guaranteedOrders/{+guaranteedOrderId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -27179,75 +28213,72 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['inventorySourceGroupId'], - pathParams: ['inventorySourceGroupId'], + requiredParams: ['guaranteedOrderId'], + pathParams: ['guaranteedOrderId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Inventorysourcegroups$Create extends StandardParameters { + export interface Params$Resource$Guaranteedorders$Create extends StandardParameters { /** - * The ID of the advertiser that owns the inventory source group. The parent partner will not have access to this group. + * The ID of the advertiser that the request is being made within. */ advertiserId?: string; /** - * The ID of the partner that owns the inventory source group. Only this partner will have write access to this group. Only advertisers to which this group is explicitly shared will have read access to this group. + * The ID of the partner that the request is being made within. */ partnerId?: string; /** * Request body metadata */ - requestBody?: Schema$InventorySourceGroup; + requestBody?: Schema$GuaranteedOrder; } - export interface Params$Resource$Inventorysourcegroups$Delete extends StandardParameters { - /** - * The ID of the advertiser that owns the inventory source group. The parent partner does not have access to this group. - */ - advertiserId?: string; + export interface Params$Resource$Guaranteedorders$Editguaranteedorderreadaccessors extends StandardParameters { /** - * Required. The ID of the inventory source group to delete. + * Required. The ID of the guaranteed order to edit. The ID is of the format `{exchange\}-{legacy_guaranteed_order_id\}` */ - inventorySourceGroupId?: string; + guaranteedOrderId?: string; + /** - * The ID of the partner that owns the inventory source group. Only this partner has write access to this group. + * Request body metadata */ - partnerId?: string; + requestBody?: Schema$EditGuaranteedOrderReadAccessorsRequest; } - export interface Params$Resource$Inventorysourcegroups$Get extends StandardParameters { + export interface Params$Resource$Guaranteedorders$Get extends StandardParameters { /** - * The ID of the advertiser that has access to the inventory source group. If an inventory source group is partner-owned, only advertisers to which the group is explicitly shared can access the group. + * The ID of the advertiser that has access to the guaranteed order. */ advertiserId?: string; /** - * Required. The ID of the inventory source group to fetch. + * Required. The ID of the guaranteed order to fetch. The ID is of the format `{exchange\}-{legacy_guaranteed_order_id\}` */ - inventorySourceGroupId?: string; + guaranteedOrderId?: string; /** - * The ID of the partner that has access to the inventory source group. A partner cannot access an advertiser-owned inventory source group. + * The ID of the partner that has access to the guaranteed order. */ partnerId?: string; } - export interface Params$Resource$Inventorysourcegroups$List extends StandardParameters { + export interface Params$Resource$Guaranteedorders$List extends StandardParameters { /** - * The ID of the advertiser that has access to the inventory source group. If an inventory source group is partner-owned, only advertisers to which the group is explicitly shared can access the group. + * The ID of the advertiser that has access to the guaranteed order. */ advertiserId?: string; /** - * Allows filtering by inventory source group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `inventorySourceGroupId` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * Allows filtering by guaranteed order fields. * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `guaranteed_order_id` * `exchange` * `display_name` * `status.entityStatus` Examples: * All active guaranteed orders: `status.entityStatus="ENTITY_STATUS_ACTIVE"` * Guaranteed orders belonging to Google Ad Manager or Rubicon exchanges: `exchange="EXCHANGE_GOOGLE_AD_MANAGER" OR exchange="EXCHANGE_RUBICON"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ filter?: string; /** - * Field by which to sort the list. Acceptable values are: * `displayName` (default) * `inventorySourceGroupId` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. For example, `displayName desc`. + * Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. For example, `displayName desc`. */ orderBy?: string; /** @@ -27255,25 +28286,25 @@ export namespace displayvideo_v3 { */ pageSize?: number; /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInventorySources` method. If not specified, the first page of results will be returned. + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListGuaranteedOrders` method. If not specified, the first page of results will be returned. */ pageToken?: string; /** - * The ID of the partner that has access to the inventory source group. A partner cannot access advertiser-owned inventory source groups. + * The ID of the partner that has access to the guaranteed order. */ partnerId?: string; } - export interface Params$Resource$Inventorysourcegroups$Patch extends StandardParameters { + export interface Params$Resource$Guaranteedorders$Patch extends StandardParameters { /** - * The ID of the advertiser that owns the inventory source group. The parent partner does not have access to this group. + * The ID of the advertiser that the request is being made within. */ advertiserId?: string; /** - * Output only. The unique ID of the inventory source group. Assigned by the system. + * Output only. The unique identifier of the guaranteed order. The guaranteed order IDs have the format `{exchange\}-{legacy_guaranteed_order_id\}`. */ - inventorySourceGroupId?: string; + guaranteedOrderId?: string; /** - * The ID of the partner that owns the inventory source group. Only this partner has write access to this group. + * The ID of the partner that the request is being made within. */ partnerId?: string; /** @@ -27284,17 +28315,22 @@ export namespace displayvideo_v3 { /** * Request body metadata */ - requestBody?: Schema$InventorySourceGroup; + requestBody?: Schema$GuaranteedOrder; } - export class Resource$Inventorysourcegroups$Assignedinventorysources { + export class Resource$Inventorysourcegroups { context: APIRequestContext; + assignedInventorySources: Resource$Inventorysourcegroups$Assignedinventorysources; constructor(context: APIRequestContext) { this.context = context; + this.assignedInventorySources = + new Resource$Inventorysourcegroups$Assignedinventorysources( + this.context + ); } /** - * Bulk edits multiple assignments between inventory sources and a single inventory source group. The operation will delete the assigned inventory sources provided in BulkEditAssignedInventorySourcesRequest.deleted_assigned_inventory_sources and then create the assigned inventory sources provided in BulkEditAssignedInventorySourcesRequest.created_assigned_inventory_sources. + * Creates a new inventory source group. Returns the newly created inventory source group if successful. * @example * ```js * // Before running the sample: @@ -27323,27 +28359,29 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.inventorySourceGroups.assignedInventorySources.bulkEdit({ - * // Required. The ID of the inventory source group to which the assignments are assigned. - * inventorySourceGroupId: '[^/]+', + * const res = await displayvideo.inventorySourceGroups.create({ + * // The ID of the advertiser that owns the inventory source group. The parent partner will not have access to this group. + * advertiserId: 'placeholder-value', + * // The ID of the partner that owns the inventory source group. Only this partner will have write access to this group. Only advertisers to which this group is explicitly shared will have read access to this group. + * partnerId: 'placeholder-value', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advertiserId": "my_advertiserId", - * // "createdAssignedInventorySources": [], - * // "deletedAssignedInventorySources": [], - * // "partnerId": "my_partnerId" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "displayName": "my_displayName", + * // "inventorySourceGroupId": "my_inventorySourceGroupId", + * // "name": "my_name" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "assignedInventorySources": [] + * // "displayName": "my_displayName", + * // "inventorySourceGroupId": "my_inventorySourceGroupId", + * // "name": "my_name" * // } * } * @@ -27359,62 +28397,55 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkEdit( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit, + create( + params: Params$Resource$Inventorysourcegroups$Create, options: StreamMethodOptions ): Promise>; - bulkEdit( - params?: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit, + create( + params?: Params$Resource$Inventorysourcegroups$Create, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - bulkEdit( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit, + ): Promise>; + create( + params: Params$Resource$Inventorysourcegroups$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkEdit( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit, + create( + params: Params$Resource$Inventorysourcegroups$Create, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - bulkEdit( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - bulkEdit( - callback: BodyResponseCallback + create( + params: Params$Resource$Inventorysourcegroups$Create, + callback: BodyResponseCallback ): void; - bulkEdit( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit - | BodyResponseCallback + | Params$Resource$Inventorysourcegroups$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit; + {}) as Params$Resource$Inventorysourcegroups$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit; + params = {} as Params$Resource$Inventorysourcegroups$Create; options = {}; } @@ -27427,34 +28458,32 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + - '/v3/inventorySourceGroups/{+inventorySourceGroupId}/assignedInventorySources:bulkEdit' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v3/inventorySourceGroups').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['inventorySourceGroupId'], - pathParams: ['inventorySourceGroupId'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates an assignment between an inventory source and an inventory source group. + * Deletes an inventory source group. * @example * ```js * // Before running the sample: @@ -27483,33 +28512,18 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.inventorySourceGroups.assignedInventorySources.create({ - * // The ID of the advertiser that owns the parent inventory source group. The parent partner will not have access to this assigned inventory source. - * advertiserId: 'placeholder-value', - * // Required. The ID of the inventory source group to which the assignment will be assigned. - * inventorySourceGroupId: '[^/]+', - * // The ID of the partner that owns the parent inventory source group. Only this partner will have write access to this assigned inventory source. - * partnerId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "assignedInventorySourceId": "my_assignedInventorySourceId", - * // "inventorySourceId": "my_inventorySourceId", - * // "name": "my_name" - * // } - * }, - * }); + * const res = await displayvideo.inventorySourceGroups.delete({ + * // The ID of the advertiser that owns the inventory source group. The parent partner does not have access to this group. + * advertiserId: 'placeholder-value', + * // Required. The ID of the inventory source group to delete. + * inventorySourceGroupId: '[^/]+', + * // The ID of the partner that owns the inventory source group. Only this partner has write access to this group. + * partnerId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response - * // { - * // "assignedInventorySourceId": "my_assignedInventorySourceId", - * // "inventorySourceId": "my_inventorySourceId", - * // "name": "my_name" - * // } + * // {} * } * * main().catch(e => { @@ -27524,58 +28538,53 @@ export namespace displayvideo_v3 { * @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$Inventorysourcegroups$Assignedinventorysources$Create, + delete( + params: Params$Resource$Inventorysourcegroups$Delete, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create, + delete( + params?: Params$Resource$Inventorysourcegroups$Delete, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create, + ): Promise>; + delete( + params: Params$Resource$Inventorysourcegroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create, - callback: BodyResponseCallback + delete( + params: Params$Resource$Inventorysourcegroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + delete( + params: Params$Resource$Inventorysourcegroups$Delete, + callback: BodyResponseCallback ): void; - create( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create - | BodyResponseCallback + | Params$Resource$Inventorysourcegroups$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create; + {}) as Params$Resource$Inventorysourcegroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create; + params = {} as Params$Resource$Inventorysourcegroups$Delete; options = {}; } @@ -27589,10 +28598,9 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/inventorySourceGroups/{+inventorySourceGroupId}/assignedInventorySources' + rootUrl + '/v3/inventorySourceGroups/{+inventorySourceGroupId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options @@ -27603,17 +28611,17 @@ export namespace displayvideo_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the assignment between an inventory source and an inventory source group. + * Gets an inventory source group. * @example * ```js * // Before running the sample: @@ -27642,21 +28650,22 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.inventorySourceGroups.assignedInventorySources.delete({ - * // The ID of the advertiser that owns the parent inventory source group. The parent partner does not have access to this assigned inventory source. - * advertiserId: 'placeholder-value', - * // Required. The ID of the assigned inventory source to delete. - * assignedInventorySourceId: '[^/]+', - * // Required. The ID of the inventory source group to which this assignment is assigned. - * inventorySourceGroupId: '[^/]+', - * // The ID of the partner that owns the parent inventory source group. Only this partner has write access to this assigned inventory source. - * partnerId: 'placeholder-value', - * }); + * const res = await displayvideo.inventorySourceGroups.get({ + * // The ID of the advertiser that has access to the inventory source group. If an inventory source group is partner-owned, only advertisers to which the group is explicitly shared can access the group. + * advertiserId: 'placeholder-value', + * // Required. The ID of the inventory source group to fetch. + * inventorySourceGroupId: '[^/]+', + * // The ID of the partner that has access to the inventory source group. A partner cannot access an advertiser-owned inventory source group. + * partnerId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "displayName": "my_displayName", + * // "inventorySourceGroupId": "my_inventorySourceGroupId", + * // "name": "my_name" + * // } * } * * main().catch(e => { @@ -27671,54 +28680,55 @@ export namespace displayvideo_v3 { * @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$Inventorysourcegroups$Assignedinventorysources$Delete, + get( + params: Params$Resource$Inventorysourcegroups$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete, + get( + params?: Params$Resource$Inventorysourcegroups$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete, + ): Promise>; + get( + params: Params$Resource$Inventorysourcegroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Inventorysourcegroups$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Inventorysourcegroups$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete - | BodyResponseCallback + | Params$Resource$Inventorysourcegroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete; + {}) as Params$Resource$Inventorysourcegroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete; + params = {} as Params$Resource$Inventorysourcegroups$Get; options = {}; } @@ -27732,31 +28742,30 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + - '/v3/inventorySourceGroups/{+inventorySourceGroupId}/assignedInventorySources/{+assignedInventorySourceId}' + rootUrl + '/v3/inventorySourceGroups/{+inventorySourceGroupId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['inventorySourceGroupId', 'assignedInventorySourceId'], - pathParams: ['assignedInventorySourceId', 'inventorySourceGroupId'], + requiredParams: ['inventorySourceGroupId'], + pathParams: ['inventorySourceGroupId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists inventory sources assigned to an inventory source group. + * Lists inventory source groups that are accessible to the current user. The order is defined by the order_by parameter. * @example * ```js * // Before running the sample: @@ -27785,28 +28794,25 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.inventorySourceGroups.assignedInventorySources.list({ - * // The ID of the advertiser that has access to the assignment. If the parent inventory source group is partner-owned, only advertisers to which the parent group is explicitly shared can access the assigned inventory source. - * advertiserId: 'placeholder-value', - * // Allows filtering by assigned inventory source fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the `OR` logical operator. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedInventorySourceId` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Required. The ID of the inventory source group to which these assignments are assigned. - * inventorySourceGroupId: '[^/]+', - * // Field by which to sort the list. Acceptable values are: * `assignedInventorySourceId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `assignedInventorySourceId desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAssignedInventorySources` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // The ID of the partner that has access to the assignment. If the parent inventory source group is advertiser-owned, the assignment cannot be accessed via a partner. - * partnerId: 'placeholder-value', - * }); + * const res = await displayvideo.inventorySourceGroups.list({ + * // The ID of the advertiser that has access to the inventory source group. If an inventory source group is partner-owned, only advertisers to which the group is explicitly shared can access the group. + * advertiserId: 'placeholder-value', + * // Allows filtering by inventory source group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `inventorySourceGroupId` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Field by which to sort the list. Acceptable values are: * `displayName` (default) * `inventorySourceGroupId` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. For example, `displayName desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInventorySources` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * // The ID of the partner that has access to the inventory source group. A partner cannot access advertiser-owned inventory source groups. + * partnerId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "assignedInventorySources": [], + * // "inventorySourceGroups": [], * // "nextPageToken": "my_nextPageToken" * // } * } @@ -27824,61 +28830,60 @@ export namespace displayvideo_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$List, + params: Params$Resource$Inventorysourcegroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Inventorysourcegroups$Assignedinventorysources$List, + params?: Params$Resource$Inventorysourcegroups$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$List, + params: Params$Resource$Inventorysourcegroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$List, + params: Params$Resource$Inventorysourcegroups$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$List, - callback: BodyResponseCallback + params: Params$Resource$Inventorysourcegroups$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Inventorysourcegroups$Assignedinventorysources$List - | BodyResponseCallback + | Params$Resource$Inventorysourcegroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysourcegroups$Assignedinventorysources$List; + {}) as Params$Resource$Inventorysourcegroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Inventorysourcegroups$Assignedinventorysources$List; + params = {} as Params$Resource$Inventorysourcegroups$List; options = {}; } @@ -27891,120 +28896,34 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: ( - rootUrl + - '/v3/inventorySourceGroups/{+inventorySourceGroupId}/assignedInventorySources' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v3/inventorySourceGroups').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['inventorySourceGroupId'], - pathParams: ['inventorySourceGroupId'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } - } - - export interface Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit extends StandardParameters { - /** - * Required. The ID of the inventory source group to which the assignments are assigned. - */ - inventorySourceGroupId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$BulkEditAssignedInventorySourcesRequest; - } - export interface Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create extends StandardParameters { - /** - * The ID of the advertiser that owns the parent inventory source group. The parent partner will not have access to this assigned inventory source. - */ - advertiserId?: string; - /** - * Required. The ID of the inventory source group to which the assignment will be assigned. - */ - inventorySourceGroupId?: string; - /** - * The ID of the partner that owns the parent inventory source group. Only this partner will have write access to this assigned inventory source. - */ - partnerId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$AssignedInventorySource; - } - export interface Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete extends StandardParameters { - /** - * The ID of the advertiser that owns the parent inventory source group. The parent partner does not have access to this assigned inventory source. - */ - advertiserId?: string; - /** - * Required. The ID of the assigned inventory source to delete. - */ - assignedInventorySourceId?: string; - /** - * Required. The ID of the inventory source group to which this assignment is assigned. - */ - inventorySourceGroupId?: string; - /** - * The ID of the partner that owns the parent inventory source group. Only this partner has write access to this assigned inventory source. - */ - partnerId?: string; - } - export interface Params$Resource$Inventorysourcegroups$Assignedinventorysources$List extends StandardParameters { - /** - * The ID of the advertiser that has access to the assignment. If the parent inventory source group is partner-owned, only advertisers to which the parent group is explicitly shared can access the assigned inventory source. - */ - advertiserId?: string; - /** - * Allows filtering by assigned inventory source fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the `OR` logical operator. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedInventorySourceId` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Required. The ID of the inventory source group to which these assignments are assigned. - */ - inventorySourceGroupId?: string; - /** - * Field by which to sort the list. Acceptable values are: * `assignedInventorySourceId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `assignedInventorySourceId desc`. - */ - orderBy?: string; - /** - * Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAssignedInventorySources` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - /** - * The ID of the partner that has access to the assignment. If the parent inventory source group is advertiser-owned, the assignment cannot be accessed via a partner. - */ - partnerId?: string; - } - - export class Resource$Inventorysources { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new inventory source. Returns the newly created inventory source if successful. + * Updates an inventory source group. Returns the updated inventory source group if successful. * @example * ```js * // Before running the sample: @@ -28033,61 +28952,33 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.inventorySources.create({ - * // The ID of the advertiser that the request is being made within. + * const res = await displayvideo.inventorySourceGroups.patch({ + * // The ID of the advertiser that owns the inventory source group. The parent partner does not have access to this group. * advertiserId: 'placeholder-value', - * // The ID of the partner that the request is being made within. + * // Output only. The unique ID of the inventory source group. Assigned by the system. + * inventorySourceGroupId: 'placeholder-value', + * // The ID of the partner that owns the inventory source group. Only this partner has write access to this group. * partnerId: 'placeholder-value', + * // Required. The mask to control which fields to update. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "commitment": "my_commitment", - * // "creativeConfigs": [], - * // "dealId": "my_dealId", - * // "deliveryMethod": "my_deliveryMethod", * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "inventorySourceId": "my_inventorySourceId", - * // "inventorySourceProductType": "my_inventorySourceProductType", - * // "inventorySourceType": "my_inventorySourceType", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "rateDetails": {}, - * // "readAdvertiserIds": [], - * // "readPartnerIds": [], - * // "readWriteAccessors": {}, - * // "status": {}, - * // "timeRange": {}, - * // "updateTime": "my_updateTime" + * // "inventorySourceGroupId": "my_inventorySourceGroupId", + * // "name": "my_name" * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "commitment": "my_commitment", - * // "creativeConfigs": [], - * // "dealId": "my_dealId", - * // "deliveryMethod": "my_deliveryMethod", - * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "inventorySourceId": "my_inventorySourceId", - * // "inventorySourceProductType": "my_inventorySourceProductType", - * // "inventorySourceType": "my_inventorySourceType", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "rateDetails": {}, - * // "readAdvertiserIds": [], - * // "readPartnerIds": [], - * // "readWriteAccessors": {}, - * // "status": {}, - * // "timeRange": {}, - * // "updateTime": "my_updateTime" + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "displayName": "my_displayName", + * // "inventorySourceGroupId": "my_inventorySourceGroupId", + * // "name": "my_name" * // } * } * @@ -28103,53 +28994,55 @@ export namespace displayvideo_v3 { * @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$Inventorysources$Create, + patch( + params: Params$Resource$Inventorysourcegroups$Patch, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Inventorysources$Create, + patch( + params?: Params$Resource$Inventorysourcegroups$Patch, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Inventorysources$Create, + ): Promise>; + patch( + params: Params$Resource$Inventorysourcegroups$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Inventorysources$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Inventorysourcegroups$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Inventorysources$Create, - callback: BodyResponseCallback + patch( + params: Params$Resource$Inventorysourcegroups$Patch, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Inventorysources$Create - | BodyResponseCallback + | Params$Resource$Inventorysourcegroups$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysources$Create; + {}) as Params$Resource$Inventorysourcegroups$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysources$Create; + params = {} as Params$Resource$Inventorysourcegroups$Patch; options = {}; } @@ -28162,32 +29055,131 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/inventorySources').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: ( + rootUrl + '/v3/inventorySourceGroups/{inventorySourceGroupId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['inventorySourceGroupId'], + pathParams: ['inventorySourceGroupId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + + export interface Params$Resource$Inventorysourcegroups$Create extends StandardParameters { + /** + * The ID of the advertiser that owns the inventory source group. The parent partner will not have access to this group. + */ + advertiserId?: string; + /** + * The ID of the partner that owns the inventory source group. Only this partner will have write access to this group. Only advertisers to which this group is explicitly shared will have read access to this group. + */ + partnerId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InventorySourceGroup; + } + export interface Params$Resource$Inventorysourcegroups$Delete extends StandardParameters { + /** + * The ID of the advertiser that owns the inventory source group. The parent partner does not have access to this group. + */ + advertiserId?: string; + /** + * Required. The ID of the inventory source group to delete. + */ + inventorySourceGroupId?: string; + /** + * The ID of the partner that owns the inventory source group. Only this partner has write access to this group. + */ + partnerId?: string; + } + export interface Params$Resource$Inventorysourcegroups$Get extends StandardParameters { + /** + * The ID of the advertiser that has access to the inventory source group. If an inventory source group is partner-owned, only advertisers to which the group is explicitly shared can access the group. + */ + advertiserId?: string; + /** + * Required. The ID of the inventory source group to fetch. + */ + inventorySourceGroupId?: string; + /** + * The ID of the partner that has access to the inventory source group. A partner cannot access an advertiser-owned inventory source group. + */ + partnerId?: string; + } + export interface Params$Resource$Inventorysourcegroups$List extends StandardParameters { + /** + * The ID of the advertiser that has access to the inventory source group. If an inventory source group is partner-owned, only advertisers to which the group is explicitly shared can access the group. + */ + advertiserId?: string; + /** + * Allows filtering by inventory source group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `inventorySourceGroupId` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Field by which to sort the list. Acceptable values are: * `displayName` (default) * `inventorySourceGroupId` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. For example, `displayName desc`. + */ + orderBy?: string; + /** + * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInventorySources` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + /** + * The ID of the partner that has access to the inventory source group. A partner cannot access advertiser-owned inventory source groups. + */ + partnerId?: string; + } + export interface Params$Resource$Inventorysourcegroups$Patch extends StandardParameters { + /** + * The ID of the advertiser that owns the inventory source group. The parent partner does not have access to this group. + */ + advertiserId?: string; + /** + * Output only. The unique ID of the inventory source group. Assigned by the system. + */ + inventorySourceGroupId?: string; + /** + * The ID of the partner that owns the inventory source group. Only this partner has write access to this group. + */ + partnerId?: string; + /** + * Required. The mask to control which fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InventorySourceGroup; + } + + export class Resource$Inventorysourcegroups$Assignedinventorysources { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Edits read/write accessors of an inventory source. Returns the updated read_write_accessors for the inventory source. + * Bulk edits multiple assignments between inventory sources and a single inventory source group. The operation will delete the assigned inventory sources provided in BulkEditAssignedInventorySourcesRequest.deleted_assigned_inventory_sources and then create the assigned inventory sources provided in BulkEditAssignedInventorySourcesRequest.created_assigned_inventory_sources. * @example * ```js * // Before running the sample: @@ -28217,16 +29209,17 @@ export namespace displayvideo_v3 { * * // Do the magic * const res = - * await displayvideo.inventorySources.editInventorySourceReadWriteAccessors({ - * // Required. The ID of inventory source to update. - * inventorySourceId: '[^/]+', + * await displayvideo.inventorySourceGroups.assignedInventorySources.bulkEdit({ + * // Required. The ID of the inventory source group to which the assignments are assigned. + * inventorySourceGroupId: '[^/]+', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "advertisersUpdate": {}, - * // "assignPartner": false, + * // "advertiserId": "my_advertiserId", + * // "createdAssignedInventorySources": [], + * // "deletedAssignedInventorySources": [], * // "partnerId": "my_partnerId" * // } * }, @@ -28235,8 +29228,7 @@ export namespace displayvideo_v3 { * * // Example response * // { - * // "advertisers": {}, - * // "partner": {} + * // "assignedInventorySources": [] * // } * } * @@ -28252,58 +29244,62 @@ export namespace displayvideo_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - editInventorySourceReadWriteAccessors( - params: Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors, + bulkEdit( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit, options: StreamMethodOptions ): Promise>; - editInventorySourceReadWriteAccessors( - params?: Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors, + bulkEdit( + params?: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit, options?: MethodOptions - ): Promise>; - editInventorySourceReadWriteAccessors( - params: Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors, + ): Promise< + GaxiosResponseWithHTTP2 + >; + bulkEdit( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - editInventorySourceReadWriteAccessors( - params: Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors, + bulkEdit( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - editInventorySourceReadWriteAccessors( - params: Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors, - callback: BodyResponseCallback + bulkEdit( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit, + callback: BodyResponseCallback ): void; - editInventorySourceReadWriteAccessors( - callback: BodyResponseCallback + bulkEdit( + callback: BodyResponseCallback ): void; - editInventorySourceReadWriteAccessors( + bulkEdit( paramsOrCallback?: - | Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors - | BodyResponseCallback + | Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors; + {}) as Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors; + {} as Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit; options = {}; } @@ -28318,7 +29314,7 @@ export namespace displayvideo_v3 { { url: ( rootUrl + - '/v3/inventorySources/{+inventorySourceId}:editInventorySourceReadWriteAccessors' + '/v3/inventorySourceGroups/{+inventorySourceGroupId}/assignedInventorySources:bulkEdit' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -28326,22 +29322,24 @@ export namespace displayvideo_v3 { options ), params, - requiredParams: ['inventorySourceId'], - pathParams: ['inventorySourceId'], + requiredParams: ['inventorySourceGroupId'], + pathParams: ['inventorySourceGroupId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Gets an inventory source. + * Creates an assignment between an inventory source and an inventory source group. * @example * ```js * // Before running the sample: @@ -28370,37 +29368,32 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.inventorySources.get({ - * // Optional. The ID of the DV360 advertiser to which the fetched inventory source is permissioned. If the user only has access to the advertiser and not the parent partner, use this field to specify the relevant advertiser. - * advertiserId: 'placeholder-value', - * // Required. The ID of the inventory source to fetch. - * inventorySourceId: '[^/]+', - * // Required. The ID of the DV360 partner to which the fetched inventory source is permissioned. - * partnerId: 'placeholder-value', - * }); + * const res = + * await displayvideo.inventorySourceGroups.assignedInventorySources.create({ + * // The ID of the advertiser that owns the parent inventory source group. The parent partner will not have access to this assigned inventory source. + * advertiserId: 'placeholder-value', + * // Required. The ID of the inventory source group to which the assignment will be assigned. + * inventorySourceGroupId: '[^/]+', + * // The ID of the partner that owns the parent inventory source group. Only this partner will have write access to this assigned inventory source. + * partnerId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "assignedInventorySourceId": "my_assignedInventorySourceId", + * // "inventorySourceId": "my_inventorySourceId", + * // "name": "my_name" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "commitment": "my_commitment", - * // "creativeConfigs": [], - * // "dealId": "my_dealId", - * // "deliveryMethod": "my_deliveryMethod", - * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", + * // "assignedInventorySourceId": "my_assignedInventorySourceId", * // "inventorySourceId": "my_inventorySourceId", - * // "inventorySourceProductType": "my_inventorySourceProductType", - * // "inventorySourceType": "my_inventorySourceType", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "rateDetails": {}, - * // "readAdvertiserIds": [], - * // "readPartnerIds": [], - * // "readWriteAccessors": {}, - * // "status": {}, - * // "timeRange": {}, - * // "updateTime": "my_updateTime" + * // "name": "my_name" * // } * } * @@ -28416,53 +29409,58 @@ export namespace displayvideo_v3 { * @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$Inventorysources$Get, + create( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Inventorysources$Get, + create( + params?: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Inventorysources$Get, + ): Promise>; + create( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Inventorysources$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Inventorysources$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create( + callback: BodyResponseCallback + ): void; + create( paramsOrCallback?: - | Params$Resource$Inventorysources$Get - | BodyResponseCallback + | Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysources$Get; + {}) as Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysources$Get; + params = + {} as Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create; options = {}; } @@ -28476,30 +29474,31 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/inventorySources/{+inventorySourceId}' + rootUrl + + '/v3/inventorySourceGroups/{+inventorySourceGroupId}/assignedInventorySources' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['inventorySourceId'], - pathParams: ['inventorySourceId'], + requiredParams: ['inventorySourceGroupId'], + pathParams: ['inventorySourceGroupId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists inventory sources that are accessible to the current user. The order is defined by the order_by parameter. If a filter by entity_status is not specified, inventory sources with entity status `ENTITY_STATUS_ARCHIVED` will not be included in the results. + * Deletes the assignment between an inventory source and an inventory source group. * @example * ```js * // Before running the sample: @@ -28528,27 +29527,21 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.inventorySources.list({ - * // The ID of the advertiser that has access to the inventory source. - * advertiserId: 'placeholder-value', - * // Allows filtering by inventory source fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `status.entityStatus` * `commitment` * `deliveryMethod` * `rateDetails.rateType` * `exchange` Examples: * All active inventory sources: `status.entityStatus="ENTITY_STATUS_ACTIVE"` * Inventory sources belonging to Google Ad Manager or Rubicon exchanges: `exchange="EXCHANGE_GOOGLE_AD_MANAGER" OR exchange="EXCHANGE_RUBICON"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. For example, `displayName desc`. - * orderBy: 'placeholder-value', - * // Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInventorySources` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * // The ID of the partner that has access to the inventory source. - * partnerId: 'placeholder-value', - * }); + * const res = + * await displayvideo.inventorySourceGroups.assignedInventorySources.delete({ + * // The ID of the advertiser that owns the parent inventory source group. The parent partner does not have access to this assigned inventory source. + * advertiserId: 'placeholder-value', + * // Required. The ID of the assigned inventory source to delete. + * assignedInventorySourceId: '[^/]+', + * // Required. The ID of the inventory source group to which this assignment is assigned. + * inventorySourceGroupId: '[^/]+', + * // The ID of the partner that owns the parent inventory source group. Only this partner has write access to this assigned inventory source. + * partnerId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response - * // { - * // "inventorySources": [], - * // "nextPageToken": "my_nextPageToken" - * // } + * // {} * } * * main().catch(e => { @@ -28563,57 +29556,54 @@ export namespace displayvideo_v3 { * @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$Inventorysources$List, + delete( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Inventorysources$List, + delete( + params?: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Inventorysources$List, + ): Promise>; + delete( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Inventorysources$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Inventorysources$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Inventorysources$List - | BodyResponseCallback + | Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysources$List; + {}) as Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysources$List; + params = + {} as Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete; options = {}; } @@ -28626,34 +29616,32 @@ export namespace displayvideo_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/inventorySources').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: ( + rootUrl + + '/v3/inventorySourceGroups/{+inventorySourceGroupId}/assignedInventorySources/{+assignedInventorySourceId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['inventorySourceGroupId', 'assignedInventorySourceId'], + pathParams: ['assignedInventorySourceId', 'inventorySourceGroupId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates an existing inventory source. Returns the updated inventory source if successful. + * Lists inventory sources assigned to an inventory source group. * @example * ```js * // Before running the sample: @@ -28682,65 +29670,29 @@ export namespace displayvideo_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.inventorySources.patch({ - * // The ID of the advertiser that the request is being made within. - * advertiserId: 'placeholder-value', - * // Output only. The unique ID of the inventory source. Assigned by the system. - * inventorySourceId: '[^/]+', - * // The ID of the partner that the request is being made within. - * partnerId: 'placeholder-value', - * // Required. The mask to control which fields to update. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "commitment": "my_commitment", - * // "creativeConfigs": [], - * // "dealId": "my_dealId", - * // "deliveryMethod": "my_deliveryMethod", - * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "inventorySourceId": "my_inventorySourceId", - * // "inventorySourceProductType": "my_inventorySourceProductType", - * // "inventorySourceType": "my_inventorySourceType", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "rateDetails": {}, - * // "readAdvertiserIds": [], - * // "readPartnerIds": [], - * // "readWriteAccessors": {}, - * // "status": {}, - * // "timeRange": {}, - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * const res = + * await displayvideo.inventorySourceGroups.assignedInventorySources.list({ + * // The ID of the advertiser that has access to the assignment. If the parent inventory source group is partner-owned, only advertisers to which the parent group is explicitly shared can access the assigned inventory source. + * advertiserId: 'placeholder-value', + * // Allows filtering by assigned inventory source fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the `OR` logical operator. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedInventorySourceId` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Required. The ID of the inventory source group to which these assignments are assigned. + * inventorySourceGroupId: '[^/]+', + * // Field by which to sort the list. Acceptable values are: * `assignedInventorySourceId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `assignedInventorySourceId desc`. + * orderBy: 'placeholder-value', + * // Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAssignedInventorySources` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * // The ID of the partner that has access to the assignment. If the parent inventory source group is advertiser-owned, the assignment cannot be accessed via a partner. + * partnerId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "commitment": "my_commitment", - * // "creativeConfigs": [], - * // "dealId": "my_dealId", - * // "deliveryMethod": "my_deliveryMethod", - * // "displayName": "my_displayName", - * // "exchange": "my_exchange", - * // "guaranteedOrderId": "my_guaranteedOrderId", - * // "inventorySourceId": "my_inventorySourceId", - * // "inventorySourceProductType": "my_inventorySourceProductType", - * // "inventorySourceType": "my_inventorySourceType", - * // "name": "my_name", - * // "publisherName": "my_publisherName", - * // "rateDetails": {}, - * // "readAdvertiserIds": [], - * // "readPartnerIds": [], - * // "readWriteAccessors": {}, - * // "status": {}, - * // "timeRange": {}, - * // "updateTime": "my_updateTime" + * // "assignedInventorySources": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -28756,53 +29708,62 @@ export namespace displayvideo_v3 { * @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$Inventorysources$Patch, + list( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$List, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Inventorysources$Patch, + list( + params?: Params$Resource$Inventorysourcegroups$Assignedinventorysources$List, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Inventorysources$Patch, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Inventorysources$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Inventorysources$Patch, - callback: BodyResponseCallback + list( + params: Params$Resource$Inventorysourcegroups$Assignedinventorysources$List, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Inventorysources$Patch - | BodyResponseCallback + | Params$Resource$Inventorysourcegroups$Assignedinventorysources$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Inventorysources$Patch; + {}) as Params$Resource$Inventorysourcegroups$Assignedinventorysources$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Inventorysources$Patch; + params = + {} as Params$Resource$Inventorysourcegroups$Assignedinventorysources$List; options = {}; } @@ -28816,117 +29777,109 @@ export namespace displayvideo_v3 { options: Object.assign( { url: ( - rootUrl + '/v3/inventorySources/{+inventorySourceId}' + rootUrl + + '/v3/inventorySourceGroups/{+inventorySourceGroupId}/assignedInventorySources' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['inventorySourceId'], - pathParams: ['inventorySourceId'], + requiredParams: ['inventorySourceGroupId'], + pathParams: ['inventorySourceGroupId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Inventorysources$Create extends StandardParameters { - /** - * The ID of the advertiser that the request is being made within. - */ - advertiserId?: string; + export interface Params$Resource$Inventorysourcegroups$Assignedinventorysources$Bulkedit extends StandardParameters { /** - * The ID of the partner that the request is being made within. + * Required. The ID of the inventory source group to which the assignments are assigned. */ - partnerId?: string; + inventorySourceGroupId?: string; /** * Request body metadata */ - requestBody?: Schema$InventorySource; + requestBody?: Schema$BulkEditAssignedInventorySourcesRequest; } - export interface Params$Resource$Inventorysources$Editinventorysourcereadwriteaccessors extends StandardParameters { + export interface Params$Resource$Inventorysourcegroups$Assignedinventorysources$Create extends StandardParameters { + /** + * The ID of the advertiser that owns the parent inventory source group. The parent partner will not have access to this assigned inventory source. + */ + advertiserId?: string; + /** + * Required. The ID of the inventory source group to which the assignment will be assigned. + */ + inventorySourceGroupId?: string; /** - * Required. The ID of inventory source to update. + * The ID of the partner that owns the parent inventory source group. Only this partner will have write access to this assigned inventory source. */ - inventorySourceId?: string; + partnerId?: string; /** * Request body metadata */ - requestBody?: Schema$EditInventorySourceReadWriteAccessorsRequest; + requestBody?: Schema$AssignedInventorySource; } - export interface Params$Resource$Inventorysources$Get extends StandardParameters { + export interface Params$Resource$Inventorysourcegroups$Assignedinventorysources$Delete extends StandardParameters { /** - * Optional. The ID of the DV360 advertiser to which the fetched inventory source is permissioned. If the user only has access to the advertiser and not the parent partner, use this field to specify the relevant advertiser. + * The ID of the advertiser that owns the parent inventory source group. The parent partner does not have access to this assigned inventory source. */ advertiserId?: string; /** - * Required. The ID of the inventory source to fetch. + * Required. The ID of the assigned inventory source to delete. + */ + assignedInventorySourceId?: string; + /** + * Required. The ID of the inventory source group to which this assignment is assigned. */ - inventorySourceId?: string; + inventorySourceGroupId?: string; /** - * Required. The ID of the DV360 partner to which the fetched inventory source is permissioned. + * The ID of the partner that owns the parent inventory source group. Only this partner has write access to this assigned inventory source. */ partnerId?: string; } - export interface Params$Resource$Inventorysources$List extends StandardParameters { + export interface Params$Resource$Inventorysourcegroups$Assignedinventorysources$List extends StandardParameters { /** - * The ID of the advertiser that has access to the inventory source. + * The ID of the advertiser that has access to the assignment. If the parent inventory source group is partner-owned, only advertisers to which the parent group is explicitly shared can access the assigned inventory source. */ advertiserId?: string; /** - * Allows filtering by inventory source fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `status.entityStatus` * `commitment` * `deliveryMethod` * `rateDetails.rateType` * `exchange` Examples: * All active inventory sources: `status.entityStatus="ENTITY_STATUS_ACTIVE"` * Inventory sources belonging to Google Ad Manager or Rubicon exchanges: `exchange="EXCHANGE_GOOGLE_AD_MANAGER" OR exchange="EXCHANGE_RUBICON"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * Allows filtering by assigned inventory source fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the `OR` logical operator. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `assignedInventorySourceId` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. */ filter?: string; /** - * Field by which to sort the list. Acceptable values are: * `displayName` (default) The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. For example, `displayName desc`. + * Required. The ID of the inventory source group to which these assignments are assigned. + */ + inventorySourceGroupId?: string; + /** + * Field by which to sort the list. Acceptable values are: * `assignedInventorySourceId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be added to the field name. Example: `assignedInventorySourceId desc`. */ orderBy?: string; /** - * Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. + * Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. */ pageSize?: number; /** - * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListInventorySources` method. If not specified, the first page of results will be returned. + * A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAssignedInventorySources` method. If not specified, the first page of results will be returned. */ pageToken?: string; /** - * The ID of the partner that has access to the inventory source. - */ - partnerId?: string; - } - export interface Params$Resource$Inventorysources$Patch extends StandardParameters { - /** - * The ID of the advertiser that the request is being made within. - */ - advertiserId?: string; - /** - * Output only. The unique ID of the inventory source. Assigned by the system. - */ - inventorySourceId?: string; - /** - * The ID of the partner that the request is being made within. + * The ID of the partner that has access to the assignment. If the parent inventory source group is advertiser-owned, the assignment cannot be accessed via a partner. */ partnerId?: string; - /** - * Required. The mask to control which fields to update. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InventorySource; } export class Resource$Media { diff --git a/src/apis/displayvideo/v4.ts b/src/apis/displayvideo/v4.ts index 6988c5759ca..88c9aa81a28 100644 --- a/src/apis/displayvideo/v4.ts +++ b/src/apis/displayvideo/v4.ts @@ -214,13 +214,17 @@ export namespace displayvideo_v4 { */ export interface Schema$AdGroup { /** - * Required. The format of the ads in the ad group. + * Required. Immutable. The format of the ads in the ad group. */ adGroupFormat?: string | null; /** * Output only. The unique ID of the ad group. Assigned by the system. */ adGroupId?: string | null; + /** + * Optional. Required for Demand Gen ad groups. Specifies the inventory control of the ad group. + */ + adGroupInventoryControl?: Schema$AdGroupInventoryControl; /** * Output only. The unique ID of the advertiser the ad group belongs to. */ @@ -238,7 +242,7 @@ export namespace displayvideo_v4 { */ entityStatus?: string | null; /** - * Required. The unique ID of the line item that the ad group belongs to. + * Required. Immutable. The unique ID of the line item that the ad group belongs to. */ lineItemId?: string | null; /** @@ -263,7 +267,7 @@ export namespace displayvideo_v4 { */ adGroupAdId?: string | null; /** - * Required. The unique ID of the ad group that the ad belongs to. + * Required. Immutable. The unique ID of the ad group that the ad belongs to. */ adGroupId?: string | null; /** @@ -286,6 +290,26 @@ export namespace displayvideo_v4 { * Output only. Details of a [non-skippable short video ad](//support.google.com/displayvideo/answer/6274216), equal to or less than 6 seconds, used for reach. */ bumperAd?: Schema$BumperAd; + /** + * Optional. The DCM tracking ad info. Only valid for Demand Gen ads. To remove the DCM tracking ad info, please leave this field empty. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + dcmTrackingInfo?: Schema$DcmTrackingInfo; + /** + * Details of a [Demand Gen carousel ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#CarouselAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + demandGenCarouselAd?: Schema$DemandGenCarouselAd; + /** + * Details of a [Demand Gen image ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#ImageAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + demandGenImageAd?: Schema$DemandGenImageAd; + /** + * Details of a [Demand Gen product ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#Product-onlyAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + demandGenProductAd?: Schema$DemandGenProductAd; + /** + * Details of a [Demand Gen video ad](//support.google.com/displayvideo/answer/15598924?&sjid=11207068802760924844-NC#VideoAd). Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + demandGenVideoAd?: Schema$DemandGenVideoAd; /** * Required. The display name of the ad. Must be UTF-8 encoded with a maximum size of 255 bytes. */ @@ -336,6 +360,19 @@ export namespace displayvideo_v4 { */ assignedTargetingOption?: Schema$AssignedTargetingOption; } + /** + * The inventory control of the ad group. + */ + export interface Schema$AdGroupInventoryControl { + /** + * The inventory strategy. + */ + adGroupInventoryStrategy?: string | null; + /** + * The selected inventories. + */ + selectedInventories?: Schema$SelectedInventories; + } /** * Details of Scope3 (previously known as Adloox) brand safety settings. */ @@ -1619,6 +1656,10 @@ export namespace displayvideo_v4 { * Settings that control the bid strategy. Bid strategy determines the bid price. */ export interface Schema$BiddingStrategy { + /** + * A bid strategy used by Demand Gen resources. It can only be used for a Demand Gen line item or ad group entity. + */ + demandGenBid?: Schema$DemandGenBiddingStrategy; /** * A strategy that uses a fixed bid price. */ @@ -1705,16 +1746,50 @@ export namespace displayvideo_v4 { */ adAssets?: Schema$AdAsset[]; } + /** + * Request message for BulkEditAdGroupAssignedTargetingOptions. + */ + export interface Schema$BulkEditAdGroupAssignedTargetingOptionsRequest { + /** + * Required. The IDs of the ad groups the assigned targeting options will belong to. A maximum of 25 ad group IDs can be specified. + */ + adGroupIds?: string[] | null; + /** + * Optional. The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + */ + createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; + /** + * Optional. The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + */ + deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; + } + /** + * Response message for BulkEditAssignedTargetingOptions. + */ + export interface Schema$BulkEditAdGroupAssignedTargetingOptionsResponse { + /** + * Output only. The error information for each ad group that failed to update. + */ + errors?: Schema$Status[]; + /** + * Output only. The IDs of the ad groups which failed to update. + */ + failedAdGroupIds?: string[] | null; + /** + * Output only. The IDs of the ad groups which were successfully updated. + */ + updatedAdGroupIds?: string[] | null; + } /** * Request message for BulkEditAdvertiserAssignedTargetingOptions. */ export interface Schema$BulkEditAdvertiserAssignedTargetingOptionsRequest { /** - * The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` */ createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; /** - * The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` */ deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; } @@ -2134,6 +2209,39 @@ export namespace displayvideo_v4 { */ performanceGoal?: Schema$PerformanceGoal; } + /** + * Details for a Demand Gen carousel card. + */ + export interface Schema$CarouselCard { + /** + * Required. The text on the call-to-action button shown on the card. Must use 10 characters or less. + */ + callToAction?: string | null; + /** + * Optional. The URL address of the webpage that people reach after they click the card on a mobile device. + */ + finalMobileUrl?: string | null; + /** + * Required. The URL address of the webpage that people reach after they click the card. + */ + finalUrl?: string | null; + /** + * Required. The headline of the card. + */ + headline?: string | null; + /** + * Optional. The marketing image shown on the card. + */ + marketingImage?: Schema$ImageAsset; + /** + * Optional. The portrait marketing image shown on the card. + */ + portraitMarketingImage?: Schema$ImageAsset; + /** + * Optional. The square marketing image shown on the card. + */ + squareMarketingImage?: Schema$ImageAsset; + } /** * Details for assigned carrier and ISP targeting option. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_CARRIER_AND_ISP`. */ @@ -2561,6 +2669,10 @@ export namespace displayvideo_v4 { * The percentage of post-view conversions to count, in millis (1/1000 of a percent). Must be between 0 and 100000 inclusive. For example, to track 50% of the post-click conversions, set a value of 50000. */ postViewCountPercentageMillis?: string | null; + /** + * Optional. The attribution model to use for conversion measurement. This attribution model will determine how conversions are counted. The Primary model can be set by you for a floodlight config or group. More details [here](https://support.google.com/displayvideo/answer/7409983). Only applicable to Demand Gen line items. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + primaryAttributionModelId?: string | null; } /** * Counter event of the creative. @@ -3129,10 +3241,27 @@ export namespace displayvideo_v4 { */ startHour?: number | null; /** - * Required. The mechanism used to determine which timezone to use for this day and time targeting setting. + * Required. The mechanism used to determine which timezone to use for this day and time targeting setting. For Demand Gen line items, this field is always `TIME_ZONE_RESOLUTION_ADVERTISER`. */ timeZoneResolution?: string | null; } + /** + * Details on the DCM tracking. + */ + export interface Schema$DcmTrackingInfo { + /** + * Required. The DCM creative id. + */ + creativeId?: string | null; + /** + * Required. The DCM placement id. + */ + placementId?: string | null; + /** + * Required. The DCM tracking ad id. + */ + trackingAdId?: string | null; + } /** * A request listing which assigned targeting options of a given targeting type should be deleted. */ @@ -3146,6 +3275,272 @@ export namespace displayvideo_v4 { */ targetingType?: string | null; } + /** + * Settings that control the bid strategy for Demand Gen resources. + */ + export interface Schema$DemandGenBiddingStrategy { + /** + * Output only. The value effectively used by the bidding strategy. This field will be the same as value if set. If value is not set and the strategy is assigned to an ad group, this field will be inherited from the line item's bidding strategy. If type is not `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA` or `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS`, this field will be 0. + */ + effectiveBiddingValue?: string | null; + /** + * Output only. Source of the effective bidding value. + */ + effectiveBiddingValueSource?: string | null; + /** + * Optional. The type of the bidding strategy. This can only be set when assigned to a line item. Ad groups will inherit this value from their line item. + */ + type?: string | null; + /** + * Optional. The value used by the bidding strategy. This can be set when assigned to line items or ad groups. This field is only applicable for the following strategy types: * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_CPC` * `DEMAND_GEN_BIDDING_STRATEGY_TYPE_TARGET_ROAS` Value of this field is in micros of the advertiser's currency or ROAS value. For example, 1000000 represents 1.0 standard units of the currency or 100% ROAS value. If not using an applicable strategy, the value of this field will be 0. + */ + value?: string | null; + } + /** + * Details for a Demand Gen carousel ad. + */ + export interface Schema$DemandGenCarouselAd { + /** + * Required. The business name shown on the ad. + */ + businessName?: string | null; + /** + * Required. The list of cards shown on the ad. + */ + cards?: Schema$CarouselCard[]; + /** + * Optional. The custom parameters and accompanying values to add to the tracking URL. + */ + customParameters?: {[key: string]: string} | null; + /** + * Required. The description of the ad. + */ + description?: string | null; + /** + * Required. The URL address of the webpage that people reach after they click the ad. + */ + finalUrl?: string | null; + /** + * Optional. The suffix to append to landing page URLs. + */ + finalUrlSuffix?: string | null; + /** + * Required. The headline of the ad. + */ + headline?: string | null; + /** + * Required. The logo image used by this ad. + */ + logo?: Schema$ImageAsset; + /** + * Output only. The URL address loaded in the background for tracking purposes. + */ + trackingUrl?: string | null; + /** + * Optional. The tracking URL specified by the user manually. + */ + userSpecifiedTrackingUrl?: string | null; + } + /** + * Details for a Demand Gen image ad. + */ + export interface Schema$DemandGenImageAd { + /** + * Required. The business name shown on the ad. + */ + businessName?: string | null; + /** + * Required. The call-to-action button shown on the ad. + */ + callToAction?: string | null; + /** + * Optional. The custom parameters and accompanying values to add to the tracking URL. + */ + customParameters?: {[key: string]: string} | null; + /** + * Required. The list of descriptions shown on the ad. + */ + descriptions?: string[] | null; + /** + * Optional. The URL address of the webpage that people reach after they click the ad on a mobile device. + */ + finalMobileUrl?: string | null; + /** + * Required. The URL address of the webpage that people reach after they click the ad. + */ + finalUrl?: string | null; + /** + * Optional. The suffix to append to landing page URLs. + */ + finalUrlSuffix?: string | null; + /** + * Required. The list of headlines shown on the ad. + */ + headlines?: string[] | null; + /** + * The list of logo images shown on the ad. + */ + logoImages?: Schema$ImageAsset[]; + /** + * The list of marketing images shown on the ad. + */ + marketingImages?: Schema$ImageAsset[]; + /** + * The list of portrait marketing images shown on the ad. + */ + portraitMarketingImages?: Schema$ImageAsset[]; + /** + * The list of square marketing images shown on the ad. + */ + squareMarketingImages?: Schema$ImageAsset[]; + /** + * Output only. The URL address loaded in the background for tracking purposes. + */ + trackingUrl?: string | null; + /** + * Optional. The tracking URL specified by the user manually. + */ + userSpecifiedTrackingUrl?: string | null; + } + /** + * Details for a Demand Gen product ad. + */ + export interface Schema$DemandGenProductAd { + /** + * Required. The business name shown on the ad. + */ + businessName?: string | null; + /** + * Required. The call-to-action button shown on the ad. The supported values are: * `AUTOMATED` * `APPLY_NOW` * `BOOK_NOW` * `CONTACT_US` * `DOWNLOAD` * `GET_QUOTE` * `LEARN_MORE` * `SHOP_NOW` * `SIGN_UP` * `SUBSCRIBE` + */ + callToAction?: string | null; + /** + * Optional. The custom parameters and accompanying values to add to the tracking URL. + */ + customParameters?: {[key: string]: string} | null; + /** + * Required. The description of the ad. + */ + description?: string | null; + /** + * Optional. The first piece after the domain in the display URL. + */ + displayUrlBreadcrumb1?: string | null; + /** + * Optional. The second piece after the domain in the display URL. + */ + displayUrlBreadcrumb2?: string | null; + /** + * Required. The URL address of the webpage that people reach after they click the ad. + */ + finalUrl?: string | null; + /** + * Optional. The suffix to append to landing page URLs. + */ + finalUrlSuffix?: string | null; + /** + * Required. The headline of the ad. + */ + headline?: string | null; + /** + * Required. The logo image used by this ad. + */ + logo?: Schema$ImageAsset; + /** + * Output only. The URL address loaded in the background for tracking purposes. + */ + trackingUrl?: string | null; + /** + * Optional. The tracking URL specified by the user manually. + */ + userSpecifiedTrackingUrl?: string | null; + } + /** + * Settings for Demand Gen line items. + */ + export interface Schema$DemandGenSettings { + /** + * Optional. Immutable. Whether location and language targeting can be set at the line item level. Otherwise, relevant targeting types must be assigned directly to ad groups. + */ + geoLanguageTargetingEnabled?: boolean | null; + /** + * Optional. The ID of the Merchant Center account used to provide a product feed. This Merchant Center account must already be linked to the advertiser. + */ + linkedMerchantId?: string | null; + /** + * Optional. The third party measurement settings for the Demand Gen line item. + */ + thirdPartyMeasurementConfigs?: Schema$ThirdPartyMeasurementConfigs; + } + /** + * Details for a Demand Gen video ad. + */ + export interface Schema$DemandGenVideoAd { + /** + * Required. The business name shown on the ad. + */ + businessName?: string | null; + /** + * Required. The call-to-action button shown on the ad. The supported values are: * `AUTOMATED` * `LEARN_MORE` * `GET_QUOTE` * `APPLY_NOW` * `SIGN_UP` * `CONTACT_US` * `SUBSCRIBE` * `DOWNLOAD` * `BOOK_NOW` * `SHOP_NOW` * `BUY_NOW` * `DONATE_NOW` * `ORDER_NOW` * `PLAY_NOW` * `SEE_MORE` * `START_NOW` * `VISIT_SITE` * `WATCH_NOW` + */ + callToAction?: string | null; + /** + * Optional. The companion banner used by this ad. + */ + companionBanner?: Schema$ImageAsset; + /** + * Optional. The custom parameters and accompanying values to add to the tracking URL. + */ + customParameters?: {[key: string]: string} | null; + /** + * Required. The list of descriptions shown on the ad. + */ + descriptions?: string[] | null; + /** + * Optional. The first piece after the domain in the display URL. + */ + displayUrlBreadcrumb1?: string | null; + /** + * Optional. The second piece after the domain in the display URL. + */ + displayUrlBreadcrumb2?: string | null; + /** + * Optional. The URL address of the webpage that people reach after they click the ad on a mobile device. + */ + finalMobileUrl?: string | null; + /** + * Required. The URL address of the webpage that people reach after they click the ad. + */ + finalUrl?: string | null; + /** + * Optional. The suffix to append to landing page URLs. + */ + finalUrlSuffix?: string | null; + /** + * Required. The list of headlines shown on the ad. + */ + headlines?: string[] | null; + /** + * Required. The logo image used by this ad. + */ + logo?: Schema$ImageAsset; + /** + * Required. The list of long headlines shown on the ad. + */ + longHeadlines?: string[] | null; + /** + * Output only. The URL address loaded in the background for tracking purposes. + */ + trackingUrl?: string | null; + /** + * Optional. The tracking URL specified by the user manually. + */ + userSpecifiedTrackingUrl?: string | null; + /** + * Required. The list of YouTube video assets used by this ad. + */ + videos?: Schema$YoutubeVideoDetails[]; + } /** * Assigned device make and model targeting option details. This will be populated in the device_make_model_details field when targeting_type is `TARGETING_TYPE_DEVICE_MAKE_MODEL`. */ @@ -4007,6 +4402,10 @@ export namespace displayvideo_v4 { * Meta data of an image asset. */ export interface Schema$ImageAsset { + /** + * Required. The unique ID of the asset. + */ + assetId?: string | null; /** * Output only. File size of the image asset in bytes. */ @@ -4140,7 +4539,7 @@ export namespace displayvideo_v4 { */ commonInStreamAttribute?: Schema$CommonInStreamAttribute; /** - * The custom parameters to pass custom values to tracking URL template. + * The custom parameters and accompanying values to add to the tracking URL. */ customParameters?: {[key: string]: string} | null; } @@ -4223,7 +4622,7 @@ export namespace displayvideo_v4 { integrationCode?: string | null; } /** - * An inventory source. Next ID: 22 + * An inventory source. */ export interface Schema$InventorySource { /** @@ -4510,6 +4909,10 @@ export namespace displayvideo_v4 { * Details for assigned keyword targeting option. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_KEYWORD`. */ export interface Schema$KeywordAssignedTargetingOptionDetails { + /** + * Optional. The policy names to exempt the keyword from. When attempting to target a keyword that violates a policy, the error returned will include the name of the relevant policy. Use that name in this field to exempt the targeted keyword from the policy. This field is only applicable for positively-targeted keywords assigned to Demand Gen resources. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + exemptedPolicyNames?: string[] | null; /** * Required. The keyword, for example `car insurance`. Positive keyword cannot be offensive word. Must be UTF-8 encoded with a maximum size of 255 bytes. Maximum number of characters is 80. Maximum number of words is 10. */ @@ -4602,6 +5005,10 @@ export namespace displayvideo_v4 { * The IDs of the creatives associated with the line item. */ creativeIds?: string[] | null; + /** + * Optional. Settings specific to Demand Gen line items. Only applicable to Demand Gen line items. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + demandGenSettings?: Schema$DemandGenSettings; /** * Required. The display name of the line item. Must be UTF-8 encoded with a maximum size of 240 bytes. */ @@ -4619,7 +5026,7 @@ export namespace displayvideo_v4 { */ flight?: Schema$LineItemFlight; /** - * Required. The impression frequency cap settings of the line item. The max_impressions field in this settings object must be used if assigning a limited cap. + * Optional. Required if the line item type is not `LINE_ITEM_TYPE_DEMAND_GEN`. The impression frequency cap settings of the line item. The max_impressions field in this settings object must be used if assigning a limited cap. */ frequencyCap?: Schema$FrequencyCap; /** @@ -4646,6 +5053,10 @@ export namespace displayvideo_v4 { * Output only. The resource name of the line item. */ name?: string | null; + /** + * Optional. Whether to enable DV360's bid optimization for fixed bid line items. By default, DV360 optimizes your fixed bid by automatically lowering bids for impressions that are less likely to perform well. This optimization is enabled by default (value is true). When this field is set to `false`, this optimization is disabled, and the bid will not be lowered for any reason. This setting only applies to line items with a `bidding_strategy` of type `FIXED_BID`. + */ + optimizeFixedBidding?: boolean | null; /** * Required. The budget spending speed setting of the line item. */ @@ -4697,7 +5108,7 @@ export namespace displayvideo_v4 { */ export interface Schema$LineItemBudget { /** - * Required. The type of the budget allocation. `LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC` is only applicable when automatic budget allocation is enabled for the parent insertion order. + * Required. The type of the budget allocation. `LINE_ITEM_BUDGET_ALLOCATION_TYPE_AUTOMATIC` is only applicable when automatic budget allocation is enabled for the parent insertion order. This field must be set to `LINE_ITEM_BUDGET_ALLOCATION_TYPE_FIXED` for Demand Gen line items. */ budgetAllocationType?: string | null; /** @@ -5360,7 +5771,7 @@ export namespace displayvideo_v4 { */ commonInStreamAttribute?: Schema$CommonInStreamAttribute; /** - * The custom parameters to pass custom values to tracking URL template. + * The custom parameters and accompanying values to add to the tracking URL. */ customParameters?: {[key: string]: string} | null; } @@ -5671,7 +6082,7 @@ export namespace displayvideo_v4 { */ markupAmount?: string | null; /** - * Required. The markup type of the partner revenue model. + * Required. The markup type of the partner revenue model. This field must be set to `PARTNER_REVENUE_MODEL_MARKUP_TYPE_TOTAL_MEDIA_COST_MARKUP` for Demand Gen line items. */ markupType?: string | null; } @@ -6068,14 +6479,43 @@ export namespace displayvideo_v4 { targetingOptions?: Schema$TargetingOption[]; } /** - * Targeting details for sensitive category. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION`. + * The inventory control of the ad group. */ - export interface Schema$SensitiveCategoryAssignedTargetingOptionDetails { + export interface Schema$SelectedInventories { /** - * Required. An enum for the DV360 Sensitive category content classified to be EXCLUDED. + * Whether the ad group is opted-in to Discover inventory. */ - excludedSensitiveCategory?: string | null; - } + allowDiscover?: boolean | null; + /** + * Whether the ad group is opted-in to Gmail inventory. + */ + allowGmail?: boolean | null; + /** + * Whether the ad group is opted-in to Google Display Network inventory. + */ + allowGoogleDisplayNetwork?: boolean | null; + /** + * Whether the ad group is opted-in to YouTube in-feed inventory. + */ + allowYoutubeFeed?: boolean | null; + /** + * Whether the ad group is opted-in to YouTube shorts inventory. + */ + allowYoutubeShorts?: boolean | null; + /** + * Whether the ad group is opted-in to YouTube in-stream inventory. + */ + allowYoutubeStream?: boolean | null; + } + /** + * Targeting details for sensitive category. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION`. + */ + export interface Schema$SensitiveCategoryAssignedTargetingOptionDetails { + /** + * Required. An enum for the DV360 Sensitive category content classified to be EXCLUDED. + */ + excludedSensitiveCategory?: string | null; + } /** * Represents a targetable sensitive category. This will be populated in the sensitive_category_details field of the TargetingOption when targeting_type is `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION`. */ @@ -6175,6 +6615,10 @@ export namespace displayvideo_v4 { * Required. Whether to enable Optimized Targeting for the line item. Optimized targeting is not compatible with all bid strategies. Attempting to set this field to `true` for a line item using the BiddingStrategy field fixed_bid or one of the following combinations of BiddingStrategy fields and BiddingStrategyPerformanceGoalType will result in an error: maximize_auto_spend_bid: * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CIVA` * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_IVO_TEN` * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_AV_VIEWED` performance_goal_auto_bid: * `BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_VIEWABLE_CPM` This also applies if the line item inherits one of the above bid strategies from the parent insertion order. Bid strategies set at the insertion order-level will be inherited by their line items if the `InsertionOrder` budget field automationType is set to `INSERTION_ORDER_AUTOMATION_TYPE_BUDGET` or `INSERTION_ORDER_AUTOMATION_TYPE_BID_BUDGET`. */ enableOptimizedTargeting?: boolean | null; + /** + * Optional. Whether to exclude demographic expansion for Optimized Targeting. This field can only be set for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This field is only available to allowlisted users. + */ + excludeDemographicExpansion?: boolean | null; } /** * Represents a single targeting option, which is a targetable concept in DV360. @@ -6334,19 +6778,19 @@ export namespace displayvideo_v4 { */ export interface Schema$ThirdPartyMeasurementConfigs { /** - * Optional. The third-party vendors measuring brand lift. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_DYNATA` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_KANTAR_MILLWARD_BROWN` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` * `THIRD_PARTY_VENDOR_INTAGE` * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_MACROMILL` + * Optional. The third-party vendors measuring brand lift. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_DYNATA` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_INTAGE` * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_MACROMILL` */ brandLiftVendorConfigs?: Schema$ThirdPartyVendorConfig[]; /** - * Optional. The third-party vendors measuring brand safety. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_ZERF` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` * `THIRD_PARTY_VENDOR_ZEFR` + * Optional. The third-party vendors measuring brand safety. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_ZEFR` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` */ brandSafetyVendorConfigs?: Schema$ThirdPartyVendorConfig[]; /** - * Optional. The third-party vendors measuring reach. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` * `THIRD_PARTY_VENDOR_KANTAR_MILLWARD_BROWN` * `THIRD_PARTY_VENDOR_VIDEO_RESEARCH` * `THIRD_PARTY_VENDOR_MEDIA_SCOPE` * `THIRD_PARTY_VENDOR_AUDIENCE_PROJECT` * `THIRD_PARTY_VENDOR_VIDEO_AMP` * `THIRD_PARTY_VENDOR_ISPOT_TV` + * Optional. The third-party vendors measuring reach. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_NIELSEN` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_KANTAR` * `THIRD_PARTY_VENDOR_VIDEO_RESEARCH` * `THIRD_PARTY_VENDOR_MEDIA_SCOPE` * `THIRD_PARTY_VENDOR_AUDIENCE_PROJECT` * `THIRD_PARTY_VENDOR_VIDEO_AMP` * `THIRD_PARTY_VENDOR_ISPOT_TV` * `THIRD_PARTY_VENDOR_GEMIUS` */ reachVendorConfigs?: Schema$ThirdPartyVendorConfig[]; /** - * Optional. The third-party vendors measuring viewability. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_MOAT` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_TELEMETRY` * `THIRD_PARTY_VENDOR_MEETRICS` * `THIRD_PARTY_VENDOR_GOOGLE_INTERNAL` + * Optional. The third-party vendors measuring viewability. The following third-party vendors are applicable: * `THIRD_PARTY_VENDOR_MOAT` * `THIRD_PARTY_VENDOR_DOUBLE_VERIFY` * `THIRD_PARTY_VENDOR_INTEGRAL_AD_SCIENCE` * `THIRD_PARTY_VENDOR_COMSCORE` * `THIRD_PARTY_VENDOR_TELEMETRY` * `THIRD_PARTY_VENDOR_MEETRICS` */ viewabilityVendorConfigs?: Schema$ThirdPartyVendorConfig[]; } @@ -6597,6 +7041,10 @@ export namespace displayvideo_v4 { * Optional. Whether ads can serve as in-stream format. */ allowInStream?: boolean | null; + /** + * Optional. Indicates whether ads can serve as non-skippable in-stream format. + */ + allowNonSkippableInStream?: boolean | null; /** * Optional. Whether ads can serve as shorts format. */ @@ -6674,7 +7122,7 @@ export namespace displayvideo_v4 { */ companionBanners?: Schema$ImageAsset[]; /** - * The custom parameters to pass custom values to tracking URL template. + * The custom parameters and accompanying values to add to the tracking URL. */ customParameters?: {[key: string]: string} | null; /** @@ -6702,7 +7150,7 @@ export namespace displayvideo_v4 { */ headlines?: string[] | null; /** - * The list of lone headlines shown on the call-to-action banner. + * The list of long headlines shown on the call-to-action banner. */ longHeadlines?: string[] | null; /** @@ -6767,7 +7215,7 @@ export namespace displayvideo_v4 { */ type?: string | null; /** - * The value used by the bidding strategy. When the bidding strategy is assigned at the line item level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_SHARE_OF_VOICE` When the bidding strategy is assigned at the ad group level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPV` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` If not using an applicable strategy, the value of this field will be 0. + * The value used by the bidding strategy. When the bidding strategy is assigned at the line item level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` When the bidding strategy is assigned at the ad group level, this field is only applicable for the following strategy types: * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_MANUAL_CPV` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPA` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_RESERVE_CPM` * `YOUTUBE_AND_PARTNERS_BIDDING_STRATEGY_TYPE_TARGET_ROAS` If not using an applicable strategy, the value of this field will be 0. */ value?: string | null; } @@ -6809,7 +7257,7 @@ export namespace displayvideo_v4 { */ leadFormId?: string | null; /** - * Optional. The ID of the merchant which is linked to the line item for product feed. + * Optional. The ID of the Merchant Center account used to provide a product feed. This Merchant Center account must already be linked to the advertiser. */ linkedMerchantId?: string | null; /** @@ -6997,7 +7445,7 @@ export namespace displayvideo_v4 { */ unavailableReason?: string | null; /** - * Required. The YouTube video asset id. This is ad_asset.ad_asset_id. + * Required. The YouTube video asset id. This is the adAssetId of an AdAsset resource. */ videoAssetId?: string | null; } @@ -9208,7 +9656,7 @@ export namespace displayvideo_v4 { } /** - * Gets an ad group ad. + * Creates an ad group ad. This method is only supported for Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -9237,11 +9685,37 @@ export namespace displayvideo_v4 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.adGroupAds.get({ - * // Required. The ID of the ad to fetch. - * adGroupAdId: '[^/]+', - * // Required. The ID of the advertiser this ad group ad belongs to. + * const res = await displayvideo.advertisers.adGroupAds.create({ + * // Output only. The unique ID of the advertiser the ad belongs to. * advertiserId: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adGroupAdId": "my_adGroupAdId", + * // "adGroupId": "my_adGroupId", + * // "adPolicy": {}, + * // "adUrls": [], + * // "advertiserId": "my_advertiserId", + * // "audioAd": {}, + * // "bumperAd": {}, + * // "dcmTrackingInfo": {}, + * // "demandGenCarouselAd": {}, + * // "demandGenImageAd": {}, + * // "demandGenProductAd": {}, + * // "demandGenVideoAd": {}, + * // "displayName": "my_displayName", + * // "displayVideoSourceAd": {}, + * // "entityStatus": "my_entityStatus", + * // "inStreamAd": {}, + * // "mastheadAd": {}, + * // "name": "my_name", + * // "nonSkippableAd": {}, + * // "videoDiscoverAd": {}, + * // "videoPerformanceAd": {} + * // } + * }, * }); * console.log(res.data); * @@ -9254,6 +9728,11 @@ export namespace displayvideo_v4 { * // "advertiserId": "my_advertiserId", * // "audioAd": {}, * // "bumperAd": {}, + * // "dcmTrackingInfo": {}, + * // "demandGenCarouselAd": {}, + * // "demandGenImageAd": {}, + * // "demandGenProductAd": {}, + * // "demandGenVideoAd": {}, * // "displayName": "my_displayName", * // "displayVideoSourceAd": {}, * // "entityStatus": "my_entityStatus", @@ -9278,32 +9757,32 @@ export namespace displayvideo_v4 { * @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$Advertisers$Adgroupads$Get, + create( + params: Params$Resource$Advertisers$Adgroupads$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Advertisers$Adgroupads$Get, + create( + params?: Params$Resource$Advertisers$Adgroupads$Create, options?: MethodOptions ): Promise>; - get( - params: Params$Resource$Advertisers$Adgroupads$Get, + create( + params: Params$Resource$Advertisers$Adgroupads$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Adgroupads$Get, + create( + params: Params$Resource$Advertisers$Adgroupads$Create, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Adgroupads$Get, + create( + params: Params$Resource$Advertisers$Adgroupads$Create, callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Advertisers$Adgroupads$Get + | Params$Resource$Advertisers$Adgroupads$Create | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -9319,12 +9798,12 @@ export namespace displayvideo_v4 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Adgroupads$Get; + {}) as Params$Resource$Advertisers$Adgroupads$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Adgroupads$Get; + params = {} as Params$Resource$Advertisers$Adgroupads$Create; options = {}; } @@ -9338,17 +9817,16 @@ export namespace displayvideo_v4 { options: Object.assign( { url: ( - rootUrl + - '/v4/advertisers/{+advertiserId}/adGroupAds/{+adGroupAdId}' + rootUrl + '/v4/advertisers/{+advertiserId}/adGroupAds' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'adGroupAdId'], - pathParams: ['adGroupAdId', 'advertiserId'], + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], context: this.context, }; if (callback) { @@ -9362,7 +9840,7 @@ export namespace displayvideo_v4 { } /** - * Lists ad group ads. + * Deletes an ad group ad. This method is only supported for Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -9391,25 +9869,16 @@ export namespace displayvideo_v4 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.adGroupAds.list({ - * // Required. The ID of the advertiser the ads belong to. + * const res = await displayvideo.advertisers.adGroupAds.delete({ + * // Required. The ID of the ad to delete. Only Demand Gen ads are supported. + * adGroupAdId: '[^/]+', + * // Required. The ID of the advertiser the ad belongs to. * advertiserId: '[^/]+', - * // Optional. Allows filtering by ad group ad fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `adGroupId` * `displayName` * `entityStatus` * `adGroupAdId` Examples: * All ad group ads under an ad group: `adGroupId="1234"` * All ad group ads under an ad group with an entityStatus of `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED`: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupId="12345"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - * orderBy: 'placeholder-value', - * // Optional. Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAds` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response - * // { - * // "adGroupAds": [], - * // "nextPageToken": "my_nextPageToken" - * // } + * // {} * } * * main().catch(e => { @@ -9424,55 +9893,53 @@ export namespace displayvideo_v4 { * @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$Advertisers$Adgroupads$List, + delete( + params: Params$Resource$Advertisers$Adgroupads$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Adgroupads$List, + delete( + params?: Params$Resource$Advertisers$Adgroupads$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Advertisers$Adgroupads$List, + ): Promise>; + delete( + params: Params$Resource$Advertisers$Adgroupads$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Adgroupads$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Adgroupads$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Adgroupads$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Adgroupads$Delete, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Advertisers$Adgroupads$List - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroupads$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Adgroupads$List; + {}) as Params$Resource$Advertisers$Adgroupads$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Adgroupads$List; + params = {} as Params$Resource$Advertisers$Adgroupads$Delete; options = {}; } @@ -9486,77 +9953,31 @@ export namespace displayvideo_v4 { options: Object.assign( { url: ( - rootUrl + '/v4/advertisers/{+advertiserId}/adGroupAds' + rootUrl + + '/v4/advertisers/{+advertiserId}/adGroupAds/{+adGroupAdId}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: ['advertiserId', 'adGroupAdId'], + pathParams: ['adGroupAdId', 'advertiserId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Advertisers$Adgroupads$Get extends StandardParameters { - /** - * Required. The ID of the ad to fetch. - */ - adGroupAdId?: string; - /** - * Required. The ID of the advertiser this ad group ad belongs to. - */ - advertiserId?: string; - } - export interface Params$Resource$Advertisers$Adgroupads$List extends StandardParameters { - /** - * Required. The ID of the advertiser the ads belong to. - */ - advertiserId?: string; - /** - * Optional. Allows filtering by ad group ad fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `adGroupId` * `displayName` * `entityStatus` * `adGroupAdId` Examples: * All ad group ads under an ad group: `adGroupId="1234"` * All ad group ads under an ad group with an entityStatus of `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED`: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupId="12345"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - */ - orderBy?: string; - /** - * Optional. Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAds` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - } - - export class Resource$Advertisers$Adgroups { - context: APIRequestContext; - targetingTypes: Resource$Advertisers$Adgroups$Targetingtypes; - youtubeAssetTypes: Resource$Advertisers$Adgroups$Youtubeassettypes; - constructor(context: APIRequestContext) { - this.context = context; - this.targetingTypes = new Resource$Advertisers$Adgroups$Targetingtypes( - this.context - ); - this.youtubeAssetTypes = - new Resource$Advertisers$Adgroups$Youtubeassettypes(this.context); - } /** - * Lists assigned targeting options for multiple ad groups across targeting types. Inherited assigned targeting options are not included. + * Gets an ad group ad. * @example * ```js * // Before running the sample: @@ -9585,27 +10006,37 @@ export namespace displayvideo_v4 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await displayvideo.advertisers.adGroups.bulkListAssignedTargetingOptions({ - * // Required. The IDs of the ad groups to list assigned targeting options for. - * adGroupIds: 'placeholder-value', - * // Required. The ID of the advertiser the line items belongs to. - * advertiserId: '[^/]+', - * // Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_YOUTUBE_VIDEO` or `TARGETING_TYPE_YOUTUBE_CHANNEL`: `targetingType="TARGETING_TYPE_YOUTUBE_VIDEO" OR targetingType="TARGETING_TYPE_YOUTUBE_CHANNEL"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Optional. Field by which to sort the list. Acceptable values are: * `adGroupId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `targetingType desc`. - * orderBy: 'placeholder-value', - * // Optional. Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // Optional. A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * }); + * const res = await displayvideo.advertisers.adGroupAds.get({ + * // Required. The ID of the ad to fetch. + * adGroupAdId: '[^/]+', + * // Required. The ID of the advertiser this ad group ad belongs to. + * advertiserId: '[^/]+', + * }); * console.log(res.data); * * // Example response * // { - * // "adGroupAssignedTargetingOptions": [], - * // "nextPageToken": "my_nextPageToken" + * // "adGroupAdId": "my_adGroupAdId", + * // "adGroupId": "my_adGroupId", + * // "adPolicy": {}, + * // "adUrls": [], + * // "advertiserId": "my_advertiserId", + * // "audioAd": {}, + * // "bumperAd": {}, + * // "dcmTrackingInfo": {}, + * // "demandGenCarouselAd": {}, + * // "demandGenImageAd": {}, + * // "demandGenProductAd": {}, + * // "demandGenVideoAd": {}, + * // "displayName": "my_displayName", + * // "displayVideoSourceAd": {}, + * // "entityStatus": "my_entityStatus", + * // "inStreamAd": {}, + * // "mastheadAd": {}, + * // "name": "my_name", + * // "nonSkippableAd": {}, + * // "videoDiscoverAd": {}, + * // "videoPerformanceAd": {} * // } * } * @@ -9621,62 +10052,53 @@ export namespace displayvideo_v4 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkListAssignedTargetingOptions( - params: Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions, + get( + params: Params$Resource$Advertisers$Adgroupads$Get, options: StreamMethodOptions ): Promise>; - bulkListAssignedTargetingOptions( - params?: Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions, + get( + params?: Params$Resource$Advertisers$Adgroupads$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - bulkListAssignedTargetingOptions( - params: Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions, + ): Promise>; + get( + params: Params$Resource$Advertisers$Adgroupads$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkListAssignedTargetingOptions( - params: Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Adgroupads$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - bulkListAssignedTargetingOptions( - params: Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions, - callback: BodyResponseCallback - ): void; - bulkListAssignedTargetingOptions( - callback: BodyResponseCallback + get( + params: Params$Resource$Advertisers$Adgroupads$Get, + callback: BodyResponseCallback ): void; - bulkListAssignedTargetingOptions( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroupads$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions; + {}) as Params$Resource$Advertisers$Adgroupads$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions; + params = {} as Params$Resource$Advertisers$Adgroupads$Get; options = {}; } @@ -9691,7 +10113,154 @@ export namespace displayvideo_v4 { { url: ( rootUrl + - '/v4/advertisers/{+advertiserId}/adGroups:bulkListAssignedTargetingOptions' + '/v4/advertisers/{+advertiserId}/adGroupAds/{+adGroupAdId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId', 'adGroupAdId'], + pathParams: ['adGroupAdId', 'advertiserId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists ad group ads. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.advertisers.adGroupAds.list({ + * // Required. The ID of the advertiser the ads belong to. + * advertiserId: '[^/]+', + * // Optional. Allows filtering by ad group ad fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `adGroupId` * `displayName` * `entityStatus` * `adGroupAdId` Examples: * All ad group ads under an ad group: `adGroupId="1234"` * All ad group ads under an ad group with an entityStatus of `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED`: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupId="12345"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAds` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "adGroupAds": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Advertisers$Adgroupads$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Advertisers$Adgroupads$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Advertisers$Adgroupads$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Advertisers$Adgroupads$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Advertisers$Adgroupads$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Advertisers$Adgroupads$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Adgroupads$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Advertisers$Adgroupads$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v4/advertisers/{+advertiserId}/adGroupAds' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -9704,19 +10273,17 @@ export namespace displayvideo_v4 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Gets an ad group. + * Updates an ad group ad. This method is only supported for Demand Gen ads. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -9745,26 +10312,67 @@ export namespace displayvideo_v4 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.adGroups.get({ - * // Required. The ID of the ad group to fetch. - * adGroupId: '[^/]+', - * // Required. The ID of the advertiser this ad group belongs to. + * const res = await displayvideo.advertisers.adGroupAds.patch({ + * // Output only. The unique ID of the ad. Assigned by the system. + * adGroupAdId: '[^/]+', + * // Output only. The unique ID of the advertiser the ad belongs to. * advertiserId: '[^/]+', + * // Required. The mask to control which fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adGroupAdId": "my_adGroupAdId", + * // "adGroupId": "my_adGroupId", + * // "adPolicy": {}, + * // "adUrls": [], + * // "advertiserId": "my_advertiserId", + * // "audioAd": {}, + * // "bumperAd": {}, + * // "dcmTrackingInfo": {}, + * // "demandGenCarouselAd": {}, + * // "demandGenImageAd": {}, + * // "demandGenProductAd": {}, + * // "demandGenVideoAd": {}, + * // "displayName": "my_displayName", + * // "displayVideoSourceAd": {}, + * // "entityStatus": "my_entityStatus", + * // "inStreamAd": {}, + * // "mastheadAd": {}, + * // "name": "my_name", + * // "nonSkippableAd": {}, + * // "videoDiscoverAd": {}, + * // "videoPerformanceAd": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "adGroupFormat": "my_adGroupFormat", + * // "adGroupAdId": "my_adGroupAdId", * // "adGroupId": "my_adGroupId", + * // "adPolicy": {}, + * // "adUrls": [], * // "advertiserId": "my_advertiserId", - * // "bidStrategy": {}, + * // "audioAd": {}, + * // "bumperAd": {}, + * // "dcmTrackingInfo": {}, + * // "demandGenCarouselAd": {}, + * // "demandGenImageAd": {}, + * // "demandGenProductAd": {}, + * // "demandGenVideoAd": {}, * // "displayName": "my_displayName", + * // "displayVideoSourceAd": {}, * // "entityStatus": "my_entityStatus", - * // "lineItemId": "my_lineItemId", + * // "inStreamAd": {}, + * // "mastheadAd": {}, * // "name": "my_name", - * // "productFeedData": {}, - * // "targetingExpansion": {} + * // "nonSkippableAd": {}, + * // "videoDiscoverAd": {}, + * // "videoPerformanceAd": {} * // } * } * @@ -9780,53 +10388,1618 @@ export namespace displayvideo_v4 { * @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$Advertisers$Adgroups$Get, + patch( + params: Params$Resource$Advertisers$Adgroupads$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Advertisers$Adgroups$Get, + patch( + params?: Params$Resource$Advertisers$Adgroupads$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Advertisers$Adgroups$Get, + ): Promise>; + patch( + params: Params$Resource$Advertisers$Adgroupads$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Advertisers$Adgroupads$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Advertisers$Adgroupads$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Advertisers$Adgroupads$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Adgroupads$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Advertisers$Adgroupads$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v4/advertisers/{+advertiserId}/adGroupAds/{+adGroupAdId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId', 'adGroupAdId'], + pathParams: ['adGroupAdId', 'advertiserId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Advertisers$Adgroupads$Create extends StandardParameters { + /** + * Output only. The unique ID of the advertiser the ad belongs to. + */ + advertiserId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AdGroupAd; + } + export interface Params$Resource$Advertisers$Adgroupads$Delete extends StandardParameters { + /** + * Required. The ID of the ad to delete. Only Demand Gen ads are supported. + */ + adGroupAdId?: string; + /** + * Required. The ID of the advertiser the ad belongs to. + */ + advertiserId?: string; + } + export interface Params$Resource$Advertisers$Adgroupads$Get extends StandardParameters { + /** + * Required. The ID of the ad to fetch. + */ + adGroupAdId?: string; + /** + * Required. The ID of the advertiser this ad group ad belongs to. + */ + advertiserId?: string; + } + export interface Params$Resource$Advertisers$Adgroupads$List extends StandardParameters { + /** + * Required. The ID of the advertiser the ads belong to. + */ + advertiserId?: string; + /** + * Optional. Allows filtering by ad group ad fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `adGroupId` * `displayName` * `entityStatus` * `adGroupAdId` Examples: * All ad group ads under an ad group: `adGroupId="1234"` * All ad group ads under an ad group with an entityStatus of `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED`: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupId="12345"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + */ + orderBy?: string; + /** + * Optional. Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAds` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + } + export interface Params$Resource$Advertisers$Adgroupads$Patch extends StandardParameters { + /** + * Output only. The unique ID of the ad. Assigned by the system. + */ + adGroupAdId?: string; + /** + * Output only. The unique ID of the advertiser the ad belongs to. + */ + advertiserId?: string; + /** + * Required. The mask to control which fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AdGroupAd; + } + + export class Resource$Advertisers$Adgroups { + context: APIRequestContext; + targetingTypes: Resource$Advertisers$Adgroups$Targetingtypes; + youtubeAssetTypes: Resource$Advertisers$Adgroups$Youtubeassettypes; + constructor(context: APIRequestContext) { + this.context = context; + this.targetingTypes = new Resource$Advertisers$Adgroups$Targetingtypes( + this.context + ); + this.youtubeAssetTypes = + new Resource$Advertisers$Adgroups$Youtubeassettypes(this.context); + } + + /** + * Bulk edits targeting options for multiple ad groups. The same set of delete and create requests will be applied to all specified ad groups. Specifically, the operation will delete the assigned targeting options provided in BulkEditAdGroupAssignedTargetingOptionsRequest.delete_requests from each ad group, and then create the assigned targeting options provided in BulkEditAdGroupAssignedTargetingOptionsRequest.create_requests. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await displayvideo.advertisers.adGroups.bulkEditAssignedTargetingOptions({ + * // Required. The ID of the advertiser the ad groups belong to. + * advertiserId: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adGroupIds": [], + * // "createRequests": [], + * // "deleteRequests": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "errors": [], + * // "failedAdGroupIds": [], + * // "updatedAdGroupIds": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + bulkEditAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions, + options: StreamMethodOptions + ): Promise>; + bulkEditAssignedTargetingOptions( + params?: Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + bulkEditAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + bulkEditAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + bulkEditAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions, + callback: BodyResponseCallback + ): void; + bulkEditAssignedTargetingOptions( + callback: BodyResponseCallback + ): void; + bulkEditAssignedTargetingOptions( + paramsOrCallback?: + | Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v4/advertisers/{+advertiserId}/adGroups:bulkEditAssignedTargetingOptions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists assigned targeting options for multiple ad groups across targeting types. Inherited assigned targeting options are not included. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await displayvideo.advertisers.adGroups.bulkListAssignedTargetingOptions({ + * // Required. The IDs of the ad groups to list assigned targeting options for. + * adGroupIds: 'placeholder-value', + * // Required. The ID of the advertiser the line items belongs to. + * advertiserId: '[^/]+', + * // Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_YOUTUBE_VIDEO` or `TARGETING_TYPE_YOUTUBE_CHANNEL`: `targetingType="TARGETING_TYPE_YOUTUBE_VIDEO" OR targetingType="TARGETING_TYPE_YOUTUBE_CHANNEL"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Optional. Field by which to sort the list. Acceptable values are: * `adGroupId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `targetingType desc`. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // Optional. A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "adGroupAssignedTargetingOptions": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + bulkListAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions, + options: StreamMethodOptions + ): Promise>; + bulkListAssignedTargetingOptions( + params?: Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + bulkListAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + bulkListAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + bulkListAssignedTargetingOptions( + params: Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions, + callback: BodyResponseCallback + ): void; + bulkListAssignedTargetingOptions( + callback: BodyResponseCallback + ): void; + bulkListAssignedTargetingOptions( + paramsOrCallback?: + | Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v4/advertisers/{+advertiserId}/adGroups:bulkListAssignedTargetingOptions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Creates a new ad group. Returns the newly created ad group if successful. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.advertisers.adGroups.create({ + * // Output only. The unique ID of the advertiser the ad group belongs to. + * advertiserId: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adGroupFormat": "my_adGroupFormat", + * // "adGroupId": "my_adGroupId", + * // "adGroupInventoryControl": {}, + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "lineItemId": "my_lineItemId", + * // "name": "my_name", + * // "productFeedData": {}, + * // "targetingExpansion": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "adGroupFormat": "my_adGroupFormat", + * // "adGroupId": "my_adGroupId", + * // "adGroupInventoryControl": {}, + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "lineItemId": "my_lineItemId", + * // "name": "my_name", + * // "productFeedData": {}, + * // "targetingExpansion": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Advertisers$Adgroups$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Advertisers$Adgroups$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Advertisers$Adgroups$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Advertisers$Adgroups$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Advertisers$Adgroups$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Advertisers$Adgroups$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Adgroups$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Advertisers$Adgroups$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/advertisers/{+advertiserId}/adGroups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a AdGroup. Returns error code `NOT_FOUND` if the ad group does not exist. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.advertisers.adGroups.delete({ + * // Required. The ID of the ad group to delete. + * adGroupId: '[^/]+', + * // Required. The ID of the advertiser this ad group belongs to. + * advertiserId: '[^/]+', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Advertisers$Adgroups$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Advertisers$Adgroups$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Advertisers$Adgroups$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Advertisers$Adgroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Advertisers$Adgroups$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Advertisers$Adgroups$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Adgroups$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Advertisers$Adgroups$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId', 'adGroupId'], + pathParams: ['adGroupId', 'advertiserId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets an ad group. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.advertisers.adGroups.get({ + * // Required. The ID of the ad group to fetch. + * adGroupId: '[^/]+', + * // Required. The ID of the advertiser this ad group belongs to. + * advertiserId: '[^/]+', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "adGroupFormat": "my_adGroupFormat", + * // "adGroupId": "my_adGroupId", + * // "adGroupInventoryControl": {}, + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "lineItemId": "my_lineItemId", + * // "name": "my_name", + * // "productFeedData": {}, + * // "targetingExpansion": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Advertisers$Adgroups$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Advertisers$Adgroups$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Advertisers$Adgroups$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Advertisers$Adgroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Advertisers$Adgroups$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Advertisers$Adgroups$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Adgroups$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Advertisers$Adgroups$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId', 'adGroupId'], + pathParams: ['adGroupId', 'advertiserId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists ad groups. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.advertisers.adGroups.list({ + * // Required. The ID of the advertiser the ad groups belongs to. + * advertiserId: '[^/]+', + * // Optional. Allows filtering by custom ad group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported properties: * `adGroupId` * `displayName` * `entityStatus` * `lineItemId` * `adGroupFormat` Examples: * All ad groups under an line item: `lineItemId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` `AD_GROUP_FORMAT_IN_STREAM` ad groups under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupFormat="AD_GROUP_FORMAT_IN_STREAM"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + * filter: 'placeholder-value', + * // Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroups` method. If not specified, the first page of results will be returned. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "adGroups": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Advertisers$Adgroups$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Advertisers$Adgroups$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Advertisers$Adgroups$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Advertisers$Adgroups$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Advertisers$Adgroups$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Advertisers$Adgroups$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Adgroups$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Advertisers$Adgroups$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/advertisers/{+advertiserId}/adGroups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId'], + pathParams: ['advertiserId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates an existing ad group. Returns the updated ad group if successful. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.advertisers.adGroups.patch({ + * // Output only. The unique ID of the ad group. Assigned by the system. + * adGroupId: '[^/]+', + * // Output only. The unique ID of the advertiser the ad group belongs to. + * advertiserId: '[^/]+', + * // Required. The mask to control which fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adGroupFormat": "my_adGroupFormat", + * // "adGroupId": "my_adGroupId", + * // "adGroupInventoryControl": {}, + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "lineItemId": "my_lineItemId", + * // "name": "my_name", + * // "productFeedData": {}, + * // "targetingExpansion": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "adGroupFormat": "my_adGroupFormat", + * // "adGroupId": "my_adGroupId", + * // "adGroupInventoryControl": {}, + * // "advertiserId": "my_advertiserId", + * // "bidStrategy": {}, + * // "displayName": "my_displayName", + * // "entityStatus": "my_entityStatus", + * // "lineItemId": "my_lineItemId", + * // "name": "my_name", + * // "productFeedData": {}, + * // "targetingExpansion": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Advertisers$Adgroups$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Advertisers$Adgroups$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Advertisers$Adgroups$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Advertisers$Adgroups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Advertisers$Adgroups$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Advertisers$Adgroups$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Advertisers$Adgroups$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Advertisers$Adgroups$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['advertiserId', 'adGroupId'], + pathParams: ['adGroupId', 'advertiserId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Advertisers$Adgroups$Bulkeditassignedtargetingoptions extends StandardParameters { + /** + * Required. The ID of the advertiser the ad groups belong to. + */ + advertiserId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BulkEditAdGroupAssignedTargetingOptionsRequest; + } + export interface Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions extends StandardParameters { + /** + * Required. The IDs of the ad groups to list assigned targeting options for. + */ + adGroupIds?: string[]; + /** + * Required. The ID of the advertiser the line items belongs to. + */ + advertiserId?: string; + /** + * Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_YOUTUBE_VIDEO` or `TARGETING_TYPE_YOUTUBE_CHANNEL`: `targetingType="TARGETING_TYPE_YOUTUBE_VIDEO" OR targetingType="TARGETING_TYPE_YOUTUBE_CHANNEL"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Optional. Field by which to sort the list. Acceptable values are: * `adGroupId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `targetingType desc`. + */ + orderBy?: string; + /** + * Optional. Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * Optional. A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + } + export interface Params$Resource$Advertisers$Adgroups$Create extends StandardParameters { + /** + * Output only. The unique ID of the advertiser the ad group belongs to. + */ + advertiserId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AdGroup; + } + export interface Params$Resource$Advertisers$Adgroups$Delete extends StandardParameters { + /** + * Required. The ID of the ad group to delete. + */ + adGroupId?: string; + /** + * Required. The ID of the advertiser this ad group belongs to. + */ + advertiserId?: string; + } + export interface Params$Resource$Advertisers$Adgroups$Get extends StandardParameters { + /** + * Required. The ID of the ad group to fetch. + */ + adGroupId?: string; + /** + * Required. The ID of the advertiser this ad group belongs to. + */ + advertiserId?: string; + } + export interface Params$Resource$Advertisers$Adgroups$List extends StandardParameters { + /** + * Required. The ID of the advertiser the ad groups belongs to. + */ + advertiserId?: string; + /** + * Optional. Allows filtering by custom ad group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported properties: * `adGroupId` * `displayName` * `entityStatus` * `lineItemId` * `adGroupFormat` Examples: * All ad groups under an line item: `lineItemId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` `AD_GROUP_FORMAT_IN_STREAM` ad groups under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupFormat="AD_GROUP_FORMAT_IN_STREAM"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. + */ + filter?: string; + /** + * Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. + */ + orderBy?: string; + /** + * Optional. Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroups` method. If not specified, the first page of results will be returned. + */ + pageToken?: string; + } + export interface Params$Resource$Advertisers$Adgroups$Patch extends StandardParameters { + /** + * Output only. The unique ID of the ad group. Assigned by the system. + */ + adGroupId?: string; + /** + * Output only. The unique ID of the advertiser the ad group belongs to. + */ + advertiserId?: string; + /** + * Required. The mask to control which fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AdGroup; + } + + export class Resource$Advertisers$Adgroups$Targetingtypes { + context: APIRequestContext; + assignedTargetingOptions: Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions; + constructor(context: APIRequestContext) { + this.context = context; + this.assignedTargetingOptions = + new Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions( + this.context + ); + } + } + + export class Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Assigns a targeting option to an ad group. Returns the assigned targeting option if successful. This method is only supported for Demand Gen ad groups. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/display-video'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.create( + * { + * // Required. The ID of the ad group the assigned targeting option will belong to. + * adGroupId: '[^/]+', + * // Required. The ID of the advertiser the ad group belongs to. + * advertiserId: '[^/]+', + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * targetingType: '[^/]+', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "ageRangeDetails": {}, + * // "appCategoryDetails": {}, + * // "appDetails": {}, + * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", + * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", + * // "audienceGroupDetails": {}, + * // "audioContentTypeDetails": {}, + * // "authorizedSellerStatusDetails": {}, + * // "browserDetails": {}, + * // "businessChainDetails": {}, + * // "carrierAndIspDetails": {}, + * // "categoryDetails": {}, + * // "channelDetails": {}, + * // "contentDurationDetails": {}, + * // "contentGenreDetails": {}, + * // "contentInstreamPositionDetails": {}, + * // "contentOutstreamPositionDetails": {}, + * // "contentStreamTypeDetails": {}, + * // "contentThemeExclusionDetails": {}, + * // "dayAndTimeDetails": {}, + * // "deviceMakeModelDetails": {}, + * // "deviceTypeDetails": {}, + * // "digitalContentLabelExclusionDetails": {}, + * // "environmentDetails": {}, + * // "exchangeDetails": {}, + * // "genderDetails": {}, + * // "geoRegionDetails": {}, + * // "householdIncomeDetails": {}, + * // "inheritance": "my_inheritance", + * // "inventorySourceDetails": {}, + * // "inventorySourceGroupDetails": {}, + * // "keywordDetails": {}, + * // "languageDetails": {}, + * // "name": "my_name", + * // "nativeContentPositionDetails": {}, + * // "negativeKeywordListDetails": {}, + * // "omidDetails": {}, + * // "onScreenPositionDetails": {}, + * // "operatingSystemDetails": {}, + * // "parentalStatusDetails": {}, + * // "poiDetails": {}, + * // "proximityLocationListDetails": {}, + * // "regionalLocationListDetails": {}, + * // "sensitiveCategoryExclusionDetails": {}, + * // "sessionPositionDetails": {}, + * // "subExchangeDetails": {}, + * // "targetingType": "my_targetingType", + * // "thirdPartyVerifierDetails": {}, + * // "urlDetails": {}, + * // "userRewardedContentDetails": {}, + * // "videoPlayerSizeDetails": {}, + * // "viewabilityDetails": {}, + * // "youtubeChannelDetails": {}, + * // "youtubeVideoDetails": {} + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "ageRangeDetails": {}, + * // "appCategoryDetails": {}, + * // "appDetails": {}, + * // "assignedTargetingOptionId": "my_assignedTargetingOptionId", + * // "assignedTargetingOptionIdAlias": "my_assignedTargetingOptionIdAlias", + * // "audienceGroupDetails": {}, + * // "audioContentTypeDetails": {}, + * // "authorizedSellerStatusDetails": {}, + * // "browserDetails": {}, + * // "businessChainDetails": {}, + * // "carrierAndIspDetails": {}, + * // "categoryDetails": {}, + * // "channelDetails": {}, + * // "contentDurationDetails": {}, + * // "contentGenreDetails": {}, + * // "contentInstreamPositionDetails": {}, + * // "contentOutstreamPositionDetails": {}, + * // "contentStreamTypeDetails": {}, + * // "contentThemeExclusionDetails": {}, + * // "dayAndTimeDetails": {}, + * // "deviceMakeModelDetails": {}, + * // "deviceTypeDetails": {}, + * // "digitalContentLabelExclusionDetails": {}, + * // "environmentDetails": {}, + * // "exchangeDetails": {}, + * // "genderDetails": {}, + * // "geoRegionDetails": {}, + * // "householdIncomeDetails": {}, + * // "inheritance": "my_inheritance", + * // "inventorySourceDetails": {}, + * // "inventorySourceGroupDetails": {}, + * // "keywordDetails": {}, + * // "languageDetails": {}, + * // "name": "my_name", + * // "nativeContentPositionDetails": {}, + * // "negativeKeywordListDetails": {}, + * // "omidDetails": {}, + * // "onScreenPositionDetails": {}, + * // "operatingSystemDetails": {}, + * // "parentalStatusDetails": {}, + * // "poiDetails": {}, + * // "proximityLocationListDetails": {}, + * // "regionalLocationListDetails": {}, + * // "sensitiveCategoryExclusionDetails": {}, + * // "sessionPositionDetails": {}, + * // "subExchangeDetails": {}, + * // "targetingType": "my_targetingType", + * // "thirdPartyVerifierDetails": {}, + * // "urlDetails": {}, + * // "userRewardedContentDetails": {}, + * // "videoPlayerSizeDetails": {}, + * // "viewabilityDetails": {}, + * // "youtubeChannelDetails": {}, + * // "youtubeVideoDetails": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Adgroups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Advertisers$Adgroups$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create( + callback: BodyResponseCallback + ): void; + create( paramsOrCallback?: - | Params$Resource$Advertisers$Adgroups$Get - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Adgroups$Get; + {}) as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Adgroups$Get; + params = + {} as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create; options = {}; } @@ -9840,30 +12013,31 @@ export namespace displayvideo_v4 { options: Object.assign( { url: ( - rootUrl + '/v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}' + rootUrl + + '/v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId', 'adGroupId'], - pathParams: ['adGroupId', 'advertiserId'], + requiredParams: ['advertiserId', 'adGroupId', 'targetingType'], + pathParams: ['adGroupId', 'advertiserId', 'targetingType'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists ad groups. + * Deletes an assigned targeting option from an ad group. This method is only supported for Demand Gen ad groups with the AdGroupFormat `AD_GROUP_FORMAT_DEMAND_GEN`. Retrieval and management of Demand Gen resources is currently in beta. This method is only available to allowlisted users. * @example * ```js * // Before running the sample: @@ -9892,25 +12066,23 @@ export namespace displayvideo_v4 { * google.options({auth: authClient}); * * // Do the magic - * const res = await displayvideo.advertisers.adGroups.list({ - * // Required. The ID of the advertiser the ad groups belongs to. - * advertiserId: '[^/]+', - * // Optional. Allows filtering by custom ad group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported properties: * `adGroupId` * `displayName` * `entityStatus` * `lineItemId` * `adGroupFormat` Examples: * All ad groups under an line item: `lineItemId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` `AD_GROUP_FORMAT_IN_STREAM` ad groups under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupFormat="AD_GROUP_FORMAT_IN_STREAM"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - * filter: 'placeholder-value', - * // Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - * orderBy: 'placeholder-value', - * // Optional. Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroups` method. If not specified, the first page of results will be returned. - * pageToken: 'placeholder-value', - * }); + * const res = + * await displayvideo.advertisers.adGroups.targetingTypes.assignedTargetingOptions.delete( + * { + * // Required. The ID of the ad group the assigned targeting option belongs to. + * adGroupId: '[^/]+', + * // Required. The ID of the advertiser the ad group belongs to. + * advertiserId: '[^/]+', + * // Required. The ID of the assigned targeting option to delete. + * assignedTargetingOptionId: '[^/]+', + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * targetingType: '[^/]+', + * }, + * ); * console.log(res.data); * * // Example response - * // { - * // "adGroups": [], - * // "nextPageToken": "my_nextPageToken" - * // } + * // {} * } * * main().catch(e => { @@ -9925,55 +12097,54 @@ export namespace displayvideo_v4 { * @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$Advertisers$Adgroups$List, + delete( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Advertisers$Adgroups$List, + delete( + params?: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Advertisers$Adgroups$List, + ): Promise>; + delete( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Adgroups$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Advertisers$Adgroups$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Advertisers$Adgroups$List - | BodyResponseCallback + | Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Advertisers$Adgroups$List; + {}) as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Advertisers$Adgroups$List; + params = + {} as Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete; options = {}; } @@ -9986,107 +12157,39 @@ export namespace displayvideo_v4 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v4/advertisers/{+advertiserId}/adGroups').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: ( + rootUrl + + '/v4/advertisers/{+advertiserId}/adGroups/{+adGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['advertiserId'], - pathParams: ['advertiserId'], + requiredParams: [ + 'advertiserId', + 'adGroupId', + 'targetingType', + 'assignedTargetingOptionId', + ], + pathParams: [ + 'adGroupId', + 'advertiserId', + 'assignedTargetingOptionId', + 'targetingType', + ], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Advertisers$Adgroups$Bulklistassignedtargetingoptions extends StandardParameters { - /** - * Required. The IDs of the ad groups to list assigned targeting options for. - */ - adGroupIds?: string[]; - /** - * Required. The ID of the advertiser the line items belongs to. - */ - advertiserId?: string; - /** - * Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_YOUTUBE_VIDEO` or `TARGETING_TYPE_YOUTUBE_CHANNEL`: `targetingType="TARGETING_TYPE_YOUTUBE_VIDEO" OR targetingType="TARGETING_TYPE_YOUTUBE_CHANNEL"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Optional. Field by which to sort the list. Acceptable values are: * `adGroupId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `targetingType desc`. - */ - orderBy?: string; - /** - * Optional. Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * Optional. A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - } - export interface Params$Resource$Advertisers$Adgroups$Get extends StandardParameters { - /** - * Required. The ID of the ad group to fetch. - */ - adGroupId?: string; - /** - * Required. The ID of the advertiser this ad group belongs to. - */ - advertiserId?: string; - } - export interface Params$Resource$Advertisers$Adgroups$List extends StandardParameters { - /** - * Required. The ID of the advertiser the ad groups belongs to. - */ - advertiserId?: string; - /** - * Optional. Allows filtering by custom ad group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field\} {operator\} {value\}`. * All fields must use the `EQUALS (=)` operator. Supported properties: * `adGroupId` * `displayName` * `entityStatus` * `lineItemId` * `adGroupFormat` Examples: * All ad groups under an line item: `lineItemId="1234"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` `AD_GROUP_FORMAT_IN_STREAM` ad groups under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND adGroupFormat="AD_GROUP_FORMAT_IN_STREAM"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information. - */ - filter?: string; - /** - * Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` The default sorting order is ascending. To specify descending order for a field, a suffix "desc" should be added to the field name. Example: `displayName desc`. - */ - orderBy?: string; - /** - * Optional. Requested page size. Must be between `1` and `200`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroups` method. If not specified, the first page of results will be returned. - */ - pageToken?: string; - } - - export class Resource$Advertisers$Adgroups$Targetingtypes { - context: APIRequestContext; - assignedTargetingOptions: Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions; - constructor(context: APIRequestContext) { - this.context = context; - this.assignedTargetingOptions = - new Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions( - this.context - ); - } - } - - export class Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** * Gets a single targeting option assigned to an ad group. Inherited assigned targeting options are not included. @@ -10127,7 +12230,7 @@ export namespace displayvideo_v4 { * advertiserId: '[^/]+', * // Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested. * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` * targetingType: '[^/]+', * }, * ); @@ -10345,7 +12448,7 @@ export namespace displayvideo_v4 { * pageSize: 'placeholder-value', * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` * targetingType: '[^/]+', * }, * ); @@ -10465,6 +12568,43 @@ export namespace displayvideo_v4 { } } + export interface Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Create extends StandardParameters { + /** + * Required. The ID of the ad group the assigned targeting option will belong to. + */ + adGroupId?: string; + /** + * Required. The ID of the advertiser the ad group belongs to. + */ + advertiserId?: string; + /** + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + */ + targetingType?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AssignedTargetingOption; + } + export interface Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Delete extends StandardParameters { + /** + * Required. The ID of the ad group the assigned targeting option belongs to. + */ + adGroupId?: string; + /** + * Required. The ID of the advertiser the ad group belongs to. + */ + advertiserId?: string; + /** + * Required. The ID of the assigned targeting option to delete. + */ + assignedTargetingOptionId?: string; + /** + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + */ + targetingType?: string; + } export interface Params$Resource$Advertisers$Adgroups$Targetingtypes$Assignedtargetingoptions$Get extends StandardParameters { /** * Required. The ID of the ad group the assigned targeting option belongs to. @@ -10479,7 +12619,7 @@ export namespace displayvideo_v4 { */ assignedTargetingOptionId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ targetingType?: string; } @@ -10509,7 +12649,7 @@ export namespace displayvideo_v4 { */ pageToken?: string; /** - * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ targetingType?: string; } @@ -16468,6 +18608,7 @@ export namespace displayvideo_v4 { * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", * // "conversionCounting": {}, * // "creativeIds": [], + * // "demandGenSettings": {}, * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", * // "excludeNewExchanges": false, @@ -16479,6 +18620,7 @@ export namespace displayvideo_v4 { * // "lineItemType": "my_lineItemType", * // "mobileApp": {}, * // "name": "my_name", + * // "optimizeFixedBidding": false, * // "pacing": {}, * // "partnerCosts": [], * // "partnerRevenueModel": {}, @@ -16501,6 +18643,7 @@ export namespace displayvideo_v4 { * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", * // "conversionCounting": {}, * // "creativeIds": [], + * // "demandGenSettings": {}, * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", * // "excludeNewExchanges": false, @@ -16512,6 +18655,7 @@ export namespace displayvideo_v4 { * // "lineItemType": "my_lineItemType", * // "mobileApp": {}, * // "name": "my_name", + * // "optimizeFixedBidding": false, * // "pacing": {}, * // "partnerCosts": [], * // "partnerRevenueModel": {}, @@ -16953,6 +19097,7 @@ export namespace displayvideo_v4 { * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", * // "conversionCounting": {}, * // "creativeIds": [], + * // "demandGenSettings": {}, * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", * // "excludeNewExchanges": false, @@ -16964,6 +19109,7 @@ export namespace displayvideo_v4 { * // "lineItemType": "my_lineItemType", * // "mobileApp": {}, * // "name": "my_name", + * // "optimizeFixedBidding": false, * // "pacing": {}, * // "partnerCosts": [], * // "partnerRevenueModel": {}, @@ -17266,6 +19412,7 @@ export namespace displayvideo_v4 { * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", * // "conversionCounting": {}, * // "creativeIds": [], + * // "demandGenSettings": {}, * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", * // "excludeNewExchanges": false, @@ -17277,6 +19424,7 @@ export namespace displayvideo_v4 { * // "lineItemType": "my_lineItemType", * // "mobileApp": {}, * // "name": "my_name", + * // "optimizeFixedBidding": false, * // "pacing": {}, * // "partnerCosts": [], * // "partnerRevenueModel": {}, @@ -17299,6 +19447,7 @@ export namespace displayvideo_v4 { * // "containsEuPoliticalAds": "my_containsEuPoliticalAds", * // "conversionCounting": {}, * // "creativeIds": [], + * // "demandGenSettings": {}, * // "displayName": "my_displayName", * // "entityStatus": "my_entityStatus", * // "excludeNewExchanges": false, @@ -17310,6 +19459,7 @@ export namespace displayvideo_v4 { * // "lineItemType": "my_lineItemType", * // "mobileApp": {}, * // "name": "my_name", + * // "optimizeFixedBidding": false, * // "pacing": {}, * // "partnerCosts": [], * // "partnerRevenueModel": {}, @@ -18028,7 +20178,7 @@ export namespace displayvideo_v4 { * assignedTargetingOptionId: '[^/]+', * // Required. The ID of the line item the assigned targeting option belongs to. * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * targetingType: '[^/]+', * }, * ); @@ -18246,7 +20396,7 @@ export namespace displayvideo_v4 { * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItemAssignedTargetingOptions` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * targetingType: '[^/]+', * }, * ); @@ -18417,7 +20567,7 @@ export namespace displayvideo_v4 { */ lineItemId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) */ targetingType?: string; } @@ -18447,7 +20597,7 @@ export namespace displayvideo_v4 { */ pageToken?: string; /** - * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_INVENTORY_MODE` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) */ targetingType?: string; } @@ -22135,7 +24285,7 @@ export namespace displayvideo_v4 { * { * // Required. The ID of the advertiser. * advertiserId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * targetingType: '[^/]+', * * // Request body metadata @@ -22398,7 +24548,7 @@ export namespace displayvideo_v4 { * advertiserId: '[^/]+', * // Required. The ID of the assigned targeting option to delete. * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * targetingType: '[^/]+', * }, * ); @@ -22887,7 +25037,7 @@ export namespace displayvideo_v4 { */ advertiserId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` */ targetingType?: string; @@ -22906,7 +25056,7 @@ export namespace displayvideo_v4 { */ assignedTargetingOptionId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_INVENTORY_MODE` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` */ targetingType?: string; } diff --git a/src/apis/dlp/v2.ts b/src/apis/dlp/v2.ts index 9f30f44e640..544a530bd59 100644 --- a/src/apis/dlp/v2.ts +++ b/src/apis/dlp/v2.ts @@ -206,7 +206,7 @@ export namespace dlp_v2 { */ infoTypes?: Schema$GooglePrivacyDlpV2InfoType[]; /** - * How the adjustment rule is applied. Only MATCHING_TYPE_PARTIAL_MATCH is supported: - Partial match: adjusts the findings of infoTypes specified in the inspection rule when they have a nonempty intersection with a finding of an infoType specified in this adjustment rule. + * How the adjustment rule is applied. Only `MATCHING_TYPE_PARTIAL_MATCH` is supported: - Partial match: adjusts the findings of infoTypes specified in the inspection rule when they have a nonempty intersection with a finding of an infoType specified in this adjustment rule. */ matchingType?: string | null; /** @@ -1012,6 +1012,10 @@ export namespace dlp_v2 { * Content data to inspect or redact. Replaces `type` and `data`. */ byteItem?: Schema$GooglePrivacyDlpV2ByteContentItem; + /** + * User provided metadata for the content. + */ + contentMetadata?: Schema$GooglePrivacyDlpV2ContentMetadata; /** * Structured content for inspection. See https://cloud.google.com/sensitive-data-protection/docs/inspecting-text#inspecting_a_table to learn more. */ @@ -1054,6 +1058,15 @@ export namespace dlp_v2 { */ recordLocation?: Schema$GooglePrivacyDlpV2RecordLocation; } + /** + * Metadata on content to be scanned. + */ + export interface Schema$GooglePrivacyDlpV2ContentMetadata { + /** + * User provided key-value pairs of content metadata. + */ + properties?: Schema$GooglePrivacyDlpV2KeyValueMetadataProperty[]; + } /** * Request message for CreateConnection. */ @@ -1242,7 +1255,7 @@ export namespace dlp_v2 { */ export interface Schema$GooglePrivacyDlpV2CustomInfoType { /** - * Set of detection rules to apply to all findings of this CustomInfoType. Rules are applied in order that they are specified. Not supported for the `surrogate_type`, `metadata_key_value_expression`, and `prompt` CustomInfoType. + * Set of detection rules to apply to all findings of this CustomInfoType. Rules are applied in the order that they are specified. Only supported for the `dictionary`, `regex`, and `stored_type` CustomInfoTypes. */ detectionRules?: Schema$GooglePrivacyDlpV2DetectionRule[]; /** @@ -1250,7 +1263,7 @@ export namespace dlp_v2 { */ dictionary?: Schema$GooglePrivacyDlpV2Dictionary; /** - * If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding to be returned. It still can be used for rules matching. Not supported for the `metadata_key_value_expression` and `prompt` CustomInfoType. + * If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding to be returned. It still can be used for rules matching. Only supported for the `dictionary`, `regex`, and `stored_type` CustomInfoTypes. */ exclusionType?: string | null; /** @@ -1261,6 +1274,10 @@ export namespace dlp_v2 { * Likelihood to return for this CustomInfoType. This base value can be altered by a detection rule if the finding meets the criteria specified by the rule. Defaults to `VERY_LIKELY` if not specified. */ likelihood?: string | null; + /** + * Key-value pair to detect in the metadata. + */ + metadataKeyValueExpression?: Schema$GooglePrivacyDlpV2MetadataKeyValueExpression; /** * Regular expression based CustomInfoType. */ @@ -2428,7 +2445,7 @@ export namespace dlp_v2 { */ export interface Schema$GooglePrivacyDlpV2Export { /** - * Store all profiles to BigQuery. * The system will create a new dataset and table for you if none are are provided. The dataset will be named `sensitive_data_protection_discovery` and table will be named `discovery_profiles`. This table will be placed in the same project as the container project running the scan. After the first profile is generated and the dataset and table are created, the discovery scan configuration will be updated with the dataset and table names. * See [Analyze data profiles stored in BigQuery](https://cloud.google.com/sensitive-data-protection/docs/analyze-data-profiles). * See [Sample queries for your BigQuery table](https://cloud.google.com/sensitive-data-protection/docs/analyze-data-profiles#sample_sql_queries). * Data is inserted using [streaming insert](https://cloud.google.com/blog/products/bigquery/life-of-a-bigquery-streaming-insert) and so data may be in the buffer for a period of time after the profile has finished. * The Pub/Sub notification is sent before the streaming buffer is guaranteed to be written, so data may not be instantly visible to queries by the time your topic receives the Pub/Sub notification. * The best practice is to use the same table for an entire organization so that you can take advantage of the [provided Looker reports](https://cloud.google.com/sensitive-data-protection/docs/analyze-data-profiles#use_a_premade_report). If you use VPC Service Controls to define security perimeters, then you must use a separate table for each boundary. + * Store all profiles to BigQuery. * The system will create a new dataset and table for you if none are are provided. The dataset will be named `sensitive_data_protection_discovery` and table will be named `discovery_profiles`. This table will be placed in the same project as the container project running the scan. After the first profile is generated and the dataset and table are created, the discovery scan configuration will be updated with the dataset and table names. * See [Analyze data profiles stored in BigQuery](https://cloud.google.com/sensitive-data-protection/docs/analyze-data-profiles). * See [Sample queries for your BigQuery table](https://cloud.google.com/sensitive-data-protection/docs/analyze-data-profiles#sample_sql_queries). * Data is inserted using [streaming insert](https://cloud.google.com/blog/products/bigquery/life-of-a-bigquery-streaming-insert) and so data may be in the buffer for a period of time after the profile has finished. * The Pub/Sub notification is sent before the streaming buffer is guaranteed to be written, so data may not be instantly visible to queries by the time your topic receives the Pub/Sub notification. * The best practice is to use the same table for an entire organization so that you can take advantage of the [provided Data Studio reports](https://cloud.google.com/sensitive-data-protection/docs/analyze-data-profiles#use_a_premade_report). If you use VPC Service Controls to define security perimeters, then you must use a separate table for each boundary. */ profileTable?: Schema$GooglePrivacyDlpV2BigQueryTable; /** @@ -3198,7 +3215,7 @@ export namespace dlp_v2 { */ minLikelihoodPerInfoType?: Schema$GooglePrivacyDlpV2InfoTypeLikelihood[]; /** - * Set of rules to apply to the findings for this InspectConfig. Exclusion rules, contained in the set are executed in the end, other rules are executed in the order they are specified for each info type. + * Set of rules to apply to the findings for this InspectConfig. Exclusion rules, contained in the set are executed in the end, other rules are executed in the order they are specified for each info type. Not supported for the `metadata_key_value_expression` CustomInfoType. */ ruleSet?: Schema$GooglePrivacyDlpV2InspectionRuleSet[]; } @@ -3460,6 +3477,28 @@ export namespace dlp_v2 { */ path?: Schema$GooglePrivacyDlpV2PathElement[]; } + /** + * The metadata key that contains a finding. + */ + export interface Schema$GooglePrivacyDlpV2KeyValueMetadataLabel { + /** + * The metadata key. The format depends on the source of the metadata. Example: - `MSIP_Label_122709e3-8f6b-4860-985f-7f722a94f61e_Enabled` (a Microsoft Purview Information Protection key example) + */ + key?: string | null; + } + /** + * A key-value pair in the Metadata. + */ + export interface Schema$GooglePrivacyDlpV2KeyValueMetadataProperty { + /** + * The key of the property. + */ + key?: string | null; + /** + * The value of the property. + */ + value?: string | null; + } /** * A representation of a Datastore kind. */ @@ -3847,10 +3886,27 @@ export namespace dlp_v2 { * Job trigger option for hybrid jobs. Jobs must be manually created and finished. */ export interface Schema$GooglePrivacyDlpV2Manual {} + /** + * Configuration for a custom infoType that detects key-value pairs in the metadata matching the specified regular expressions. + */ + export interface Schema$GooglePrivacyDlpV2MetadataKeyValueExpression { + /** + * The regular expression for the key. Key should be non-empty. + */ + keyRegex?: string | null; + /** + * The regular expression for the value. Value should be non-empty. + */ + valueRegex?: string | null; + } /** * Metadata Location */ export interface Schema$GooglePrivacyDlpV2MetadataLocation { + /** + * Metadata key that contains the finding. + */ + keyValueMetadataLabel?: Schema$GooglePrivacyDlpV2KeyValueMetadataLabel; /** * Storage metadata. */ diff --git a/src/apis/dns/v1.ts b/src/apis/dns/v1.ts index 9315d6be4b7..2ee0e5573ba 100644 --- a/src/apis/dns/v1.ts +++ b/src/apis/dns/v1.ts @@ -414,6 +414,31 @@ export namespace dns_v1 { */ permissions?: string[] | null; } + /** + * This resource represents a long-running operation that is the result of a network API call. + */ + export interface Schema$GoogleLongrunningOperation { + /** + * 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; + } /** * A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service. */ @@ -1192,6 +1217,23 @@ export namespace dns_v1 { */ weight?: number | 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; + } export class Resource$Changes { context: APIRequestContext; @@ -5753,19 +5795,19 @@ export namespace dns_v1 { * * // Do the magic * const res = await dns.resourceRecordSets.list({ - * // Specify a filter expression to view records that exactly match the specified domain. Both the name and type parameters are not supported when you use filter and must be omitted. Your filter expression must conform to AIP-160 and you must specify a domain in the name field. Optionally, you can include the type field to filter records by type. You can also include the has_suffix function to view records that match by domain suffix. Examples: - name="example.com." - name="example.com." AND type="A" - name=has_suffix("example.com.") - name=has_suffix("example.com.") AND type="A" + * // Specify a filter expression to view records that exactly match the specified domain. Both the `name` and `type` parameters are not supported and must be omitted when you use `filter`. Your `filter` expression must conform to AIP-160 and you must specify a domain in the `name` field. Optionally, you can include the `type` field to filter records by type. You can also include the `has_suffix` function to view records that match by domain suffix. Examples: * `name`="example.com." * `name`="example.com." AND type="A" * `name`=`has_suffix`("example.com.") * `name`=`has_suffix`("example.com.") AND type="A" * filter: 'placeholder-value', * // Identifies the managed zone addressed by this request. Can be the managed zone name or ID. * managedZone: 'placeholder-value', * // Optional. Maximum number of results to be returned. If unspecified, the server decides how many results to return. * maxResults: 'placeholder-value', - * // Specify a fully qualified domain name to view only those records. The name parameter is not supported and must be omitted when you use filter. + * // Specify a fully qualified domain name to view only those records. The `name` parameter is not supported and must be omitted when you use `filter`. * name: 'placeholder-value', * // Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request. * pageToken: 'placeholder-value', * // Identifies the project addressed by this request. * project: 'placeholder-value', - * // Specify a record type to view only those records. You must also specify the name parameter. The type parameter is not supported and must be omitted when you use filter. + * // Specify a record type to view only those records. You must also specify the `name` parameter. The `type` parameter is not supported and must be omitted when you use `filter`. * type: 'placeholder-value', * }); * console.log(res.data); @@ -6113,7 +6155,7 @@ export namespace dns_v1 { } export interface Params$Resource$Resourcerecordsets$List extends StandardParameters { /** - * Specify a filter expression to view records that exactly match the specified domain. Both the name and type parameters are not supported when you use filter and must be omitted. Your filter expression must conform to AIP-160 and you must specify a domain in the name field. Optionally, you can include the type field to filter records by type. You can also include the has_suffix function to view records that match by domain suffix. Examples: - name="example.com." - name="example.com." AND type="A" - name=has_suffix("example.com.") - name=has_suffix("example.com.") AND type="A" + * Specify a filter expression to view records that exactly match the specified domain. Both the `name` and `type` parameters are not supported and must be omitted when you use `filter`. Your `filter` expression must conform to AIP-160 and you must specify a domain in the `name` field. Optionally, you can include the `type` field to filter records by type. You can also include the `has_suffix` function to view records that match by domain suffix. Examples: * `name`="example.com." * `name`="example.com." AND type="A" * `name`=`has_suffix`("example.com.") * `name`=`has_suffix`("example.com.") AND type="A" */ filter?: string; /** @@ -6125,7 +6167,7 @@ export namespace dns_v1 { */ maxResults?: number; /** - * Specify a fully qualified domain name to view only those records. The name parameter is not supported and must be omitted when you use filter. + * Specify a fully qualified domain name to view only those records. The `name` parameter is not supported and must be omitted when you use `filter`. */ name?: string; /** @@ -6137,7 +6179,7 @@ export namespace dns_v1 { */ project?: string; /** - * Specify a record type to view only those records. You must also specify the name parameter. The type parameter is not supported and must be omitted when you use filter. + * Specify a record type to view only those records. You must also specify the `name` parameter. The `type` parameter is not supported and must be omitted when you use `filter`. */ type?: string; } diff --git a/src/apis/dns/v1beta2.ts b/src/apis/dns/v1beta2.ts index d52f5bb6454..fc3f4cf3391 100644 --- a/src/apis/dns/v1beta2.ts +++ b/src/apis/dns/v1beta2.ts @@ -414,6 +414,31 @@ export namespace dns_v1beta2 { */ permissions?: string[] | null; } + /** + * This resource represents a long-running operation that is the result of a network API call. + */ + export interface Schema$GoogleLongrunningOperation { + /** + * 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; + } /** * A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service. */ @@ -1193,6 +1218,23 @@ export namespace dns_v1beta2 { */ weight?: number | 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; + } export class Resource$Changes { context: APIRequestContext; @@ -5740,19 +5782,19 @@ export namespace dns_v1beta2 { * * // Do the magic * const res = await dns.resourceRecordSets.list({ - * // Specify a filter expression to view records that exactly match the specified domain. Both the name and type parameters are not supported when you use filter and must be omitted. Your filter expression must conform to AIP-160 and you must specify a domain in the name field. Optionally, you can include the type field to filter records by type. You can also include the has_suffix function to view records that match by domain suffix. Examples: - name="example.com." - name="example.com." AND type="A" - name=has_suffix("example.com.") - name=has_suffix("example.com.") AND type="A" + * // Specify a filter expression to view records that exactly match the specified domain. Both the `name` and `type` parameters are not supported and must be omitted when you use `filter`. Your `filter` expression must conform to AIP-160 and you must specify a domain in the `name` field. Optionally, you can include the `type` field to filter records by type. You can also include the `has_suffix` function to view records that match by domain suffix. Examples: * `name`="example.com." * `name`="example.com." AND type="A" * `name`=`has_suffix`("example.com.") * `name`=`has_suffix`("example.com.") AND type="A" * filter: 'placeholder-value', * // Identifies the managed zone addressed by this request. Can be the managed zone name or ID. * managedZone: 'placeholder-value', * // Optional. Maximum number of results to be returned. If unspecified, the server decides how many results to return. * maxResults: 'placeholder-value', - * // Specify a fully qualified domain name to view only those records. The name parameter is not supported and must be omitted when you use filter. + * // Specify a fully qualified domain name to view only those records. The `name` parameter is not supported and must be omitted when you use `filter`. * name: 'placeholder-value', * // Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request. * pageToken: 'placeholder-value', * // Identifies the project addressed by this request. * project: 'placeholder-value', - * // Specify a record type to view only those records. You must also specify the name parameter. The type parameter is not supported and must be omitted when you use filter. + * // Specify a record type to view only those records. You must also specify the `name` parameter. The `type` parameter is not supported and must be omitted when you use `filter`. * type: 'placeholder-value', * }); * console.log(res.data); @@ -6100,7 +6142,7 @@ export namespace dns_v1beta2 { } export interface Params$Resource$Resourcerecordsets$List extends StandardParameters { /** - * Specify a filter expression to view records that exactly match the specified domain. Both the name and type parameters are not supported when you use filter and must be omitted. Your filter expression must conform to AIP-160 and you must specify a domain in the name field. Optionally, you can include the type field to filter records by type. You can also include the has_suffix function to view records that match by domain suffix. Examples: - name="example.com." - name="example.com." AND type="A" - name=has_suffix("example.com.") - name=has_suffix("example.com.") AND type="A" + * Specify a filter expression to view records that exactly match the specified domain. Both the `name` and `type` parameters are not supported and must be omitted when you use `filter`. Your `filter` expression must conform to AIP-160 and you must specify a domain in the `name` field. Optionally, you can include the `type` field to filter records by type. You can also include the `has_suffix` function to view records that match by domain suffix. Examples: * `name`="example.com." * `name`="example.com." AND type="A" * `name`=`has_suffix`("example.com.") * `name`=`has_suffix`("example.com.") AND type="A" */ filter?: string; /** @@ -6112,7 +6154,7 @@ export namespace dns_v1beta2 { */ maxResults?: number; /** - * Specify a fully qualified domain name to view only those records. The name parameter is not supported and must be omitted when you use filter. + * Specify a fully qualified domain name to view only those records. The `name` parameter is not supported and must be omitted when you use `filter`. */ name?: string; /** @@ -6124,7 +6166,7 @@ export namespace dns_v1beta2 { */ project?: string; /** - * Specify a record type to view only those records. You must also specify the name parameter. The type parameter is not supported and must be omitted when you use filter. + * Specify a record type to view only those records. You must also specify the `name` parameter. The `type` parameter is not supported and must be omitted when you use `filter`. */ type?: string; } diff --git a/src/apis/docs/v1.ts b/src/apis/docs/v1.ts index 907df17c86b..dd7bc826de9 100644 --- a/src/apis/docs/v1.ts +++ b/src/apis/docs/v1.ts @@ -498,7 +498,7 @@ export namespace docs_v1 { */ export interface Schema$DateElementProperties { /** - * Determines how the date part of the DateElement will be displayed in the document. If unset, the default value is DATE_FORMAT_MONTH_DAY_YEAR_ABBREVIATED, indicating the DateElement will be formatted as `MMM d, y` in `en_US`, or locale specific equivalent. + * Determines how the date part of the DateElement will be displayed in the document. If unset, the default value is DATE_FORMAT_MONTH_DAY_YEAR_ABBREVIATED, indicating the DateElement will be formatted as `MMM d, y` in `en`, or locale specific equivalent. */ dateFormat?: string | null; /** @@ -506,7 +506,7 @@ export namespace docs_v1 { */ displayText?: string | null; /** - * The locale of the document, as defined by the Unicode Common Locale Data Repository (CLDR) project. For example, `en_US`. If unset, the default locale is `en_US`. + * The language code of the DateElement. For example, `en`. If unset, the default locale is `en`. Limited to the following locales: `af`, `am`, `ar`, `as`, `az`, `be`, `bg`, `bn`, `ca`, `cs`, `da`, `de`, `el`, `en`, `en-CA`, `en-GB`, `es`, `es-419`, `et`, `eu`, `fa`, `fi`, `fil`, `fr`, `fr-CA`, `gl`, `gu`, `hi`, `hr`, `hu`, `hy`, `id`, `is`, `it`, `iw`, `ja`, `ka`, `kk`, `km`, `kn`, `ko`, `lo`, `lt`, `lv`, `mk`, `ml`, `mn`, `mr`, `ms`, `ne`, `nl`, `no`, `or`, `pa`, `pl`, `pt-BR`, `pt-PT`, `ro`, `ru`, `si`, `sk`, `sl`, `sq`, `sr`, `sv`, `sw`, `ta`, `te`, `th`, `tr`, `uk`, `ur`, `uz`, `vi`, `zh-CN`, `zh-HK`, `zh-TW`, `zu`, `cy`, `my`. */ locale?: string | null; /** @@ -514,11 +514,11 @@ export namespace docs_v1 { */ timeFormat?: string | null; /** - * The point in time to represent, in seconds and nanoseconds since Unix epoch: January 1, 1970 at midnight UTC. Timestamp is expected to be in UTC. If time_zone_id is set, the timestamp is adjusted according to the time zone. For example, a timestamp of `18000` with a date format of `DATE_FORMAT_ISO8601` and time format of `TIME_FORMAT_HOUR_MINUTE` would be displayed as `1970-01-01 5:00 AM`. A timestamp of `18000` with date format of `DATE_FORMAT_8SO8601`, time format of `TIME_FORMAT_HOUR_MINUTE`, and time zone set to `America/New_York` will instead be `1970-01-01 12:00 AM`. + * The point in time to represent, in seconds and nanoseconds since Unix epoch: January 1, 1970 at midnight UTC. Timestamp is expected to be in UTC. If time_zone_id is set, the timestamp is adjusted according to the time zone. For example, a timestamp of `18000` with a date format of `DATE_FORMAT_ISO8601` and time format of `TIME_FORMAT_HOUR_MINUTE` would be displayed as `1970-01-01 5:00 AM`. A timestamp of `18000` with date format of `DATE_FORMAT_ISO8601`, time format of `TIME_FORMAT_HOUR_MINUTE`, and time zone set to `America/New_York` will instead be `1970-01-01 12:00 AM`. */ timestamp?: string | null; /** - * The time zone of the DateElement, as defined by the Unicode Common Locale Data Repository (CLDR) project. For example, `America/New York`. If unset, the default time zone is `etc/UTC`. + * The time zone of the DateElement, as defined by the Unicode Common Locale Data Repository (CLDR) project. For example, `America/New_York`. If unset, the default time zone is `etc/UTC`. */ timeZoneId?: string | null; } @@ -1474,6 +1474,23 @@ export namespace docs_v1 { */ personProperties?: Schema$PersonProperties; } + /** + * Inserts a RichLink at the specified location. + */ + export interface Schema$InsertRichLinkRequest { + /** + * Inserts the rich link at the end of a header, footer, footnote or the document body. + */ + endOfSegmentLocation?: Schema$EndOfSegmentLocation; + /** + * Inserts the rich link at a specific index in the document. The rich link must be inserted inside the bounds of an existing Paragraph. For instance, it cannot be inserted at a table's start index (i.e. between the table and its preceding paragraph). The rich link cannot be inserted inside an equation. + */ + location?: Schema$Location; + /** + * The properties of the rich link to insert. + */ + richLinkProperties?: Schema$RichLinkProperties; + } /** * Inserts a section break at the given location. A newline character will be inserted before the section break. */ @@ -2476,6 +2493,10 @@ export namespace docs_v1 { * Inserts a person mention. */ insertPerson?: Schema$InsertPersonRequest; + /** + * Insert a rich link. + */ + insertRichLink?: Schema$InsertRichLinkRequest; /** * Inserts a section break at the specified location. */ @@ -2528,6 +2549,10 @@ export namespace docs_v1 { * Updates the properties of a document tab. */ updateDocumentTabProperties?: Schema$UpdateDocumentTabPropertiesRequest; + /** + * Updates a named style. + */ + updateNamedStyle?: Schema$UpdateNamedStyleRequest; /** * Updates the paragraph style at the specified range. */ @@ -3578,6 +3603,23 @@ export namespace docs_v1 { */ tabProperties?: Schema$TabProperties; } + /** + * Updates a named style. + */ + export interface Schema$UpdateNamedStyleRequest { + /** + * The NamedStyle fields that should be updated. At least `named_style_type` must be specified. The root `named_style` is implied and should not be specified. A single `"*"` can be used as short-hand for listing every field. For example, to update the text style to bold, set `fields` to include `"text_style"` and `"text_style.bold"`. To update the paragraph style's alignment property, set `fields` to include `"paragraph_style"` and `"paragraph_style.alignment"`. To reset a property to its default value, include its field name in the field mask but leave the field itself unset. Specifying `"text_style"` or `"paragraph_style"` with an empty TextStyle or ParagraphStyle will reset all of its nested fields. + */ + fields?: string | null; + /** + * The document style to update. + */ + namedStyle?: Schema$NamedStyle; + /** + * The document tab to update. By default, the update is applied to the first tab. + */ + tabId?: string | null; + } /** * Update the styling of all paragraphs that overlap with the given range. */ diff --git a/src/apis/documentai/v1.ts b/src/apis/documentai/v1.ts index af283172a36..705b4500c91 100644 --- a/src/apis/documentai/v1.ts +++ b/src/apis/documentai/v1.ts @@ -5054,6 +5054,10 @@ export namespace documentai_v1 { * Optional. The multiplier to apply to the recommended learning rate. Valid values are between 0.1 and 10. If not provided, recommended learning rate will be used. */ learningRateMultiplier?: number | null; + /** + * Optional. Resource name of a previously fine tuned version id to copy the overwritten configs from. The base_processor_version should be newer than the base processor version used to fine tune this provided processor version. Format: `projects/{project\}/locations/{location\}/processors/{processor\}/processorVersions/{processorVersion\}`. + */ + previousFineTunedProcessorVersionName?: string | null; /** * Optional. The number of steps to run for model tuning. Valid values are between 1 and 400. If not provided, recommended steps will be used. */ @@ -5838,7 +5842,7 @@ export namespace documentai_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/documentai/v1beta3.ts b/src/apis/documentai/v1beta3.ts index 0cb7e8fa687..596e4af5492 100644 --- a/src/apis/documentai/v1beta3.ts +++ b/src/apis/documentai/v1beta3.ts @@ -4809,6 +4809,10 @@ export namespace documentai_v1beta3 { * Optional. The multiplier to apply to the recommended learning rate. Valid values are between 0.1 and 10. If not provided, recommended learning rate will be used. */ learningRateMultiplier?: number | null; + /** + * Optional. Resource name of a previously fine tuned version id to copy the overwritten configs from. The base_processor_version should be newer than the base processor version used to fine tune this provided processor version. Format: `projects/{project\}/locations/{location\}/processors/{processor\}/processorVersions/{processorVersion\}`. + */ + previousFineTunedProcessorVersionName?: string | null; /** * Optional. The number of steps to run for model tuning. Valid values are between 1 and 400. If not provided, recommended steps will be used. */ @@ -5680,7 +5684,7 @@ export namespace documentai_v1beta3 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/domains/v1.ts b/src/apis/domains/v1.ts index ed7454a2e16..b1ac59a22df 100644 --- a/src/apis/domains/v1.ts +++ b/src/apis/domains/v1.ts @@ -226,6 +226,10 @@ export namespace domains_v1 { * Required. The field mask describing which fields to update as a comma-separated list. For example, if only the transfer lock is being updated, the `update_mask` is `"transfer_lock_state"`. */ updateMask?: string | null; + /** + * Optional. If set, validates the request without actually updating the management settings. + */ + validateOnly?: boolean | null; } /** * Details required for a contact associated with a `Registration`. @@ -1322,7 +1326,7 @@ export namespace domains_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1352,7 +1356,7 @@ export namespace domains_v1 { * * // Do the magic * const res = await domains.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1478,7 +1482,7 @@ export namespace domains_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -2181,7 +2185,8 @@ export namespace domains_v1 { * // request body parameters * // { * // "managementSettings": {}, - * // "updateMask": "my_updateMask" + * // "updateMask": "my_updateMask", + * // "validateOnly": false * // } * }, * }); diff --git a/src/apis/domains/v1alpha2.ts b/src/apis/domains/v1alpha2.ts index bfa8f6a9f34..e70451f1333 100644 --- a/src/apis/domains/v1alpha2.ts +++ b/src/apis/domains/v1alpha2.ts @@ -226,6 +226,10 @@ export namespace domains_v1alpha2 { * Required. The field mask describing which fields to update as a comma-separated list. For example, if only the transfer lock is being updated, the `update_mask` is `"transfer_lock_state"`. */ updateMask?: string | null; + /** + * Optional. If set, validates the request without actually updating the management settings. + */ + validateOnly?: boolean | null; } /** * Details required for a contact associated with a `Registration`. @@ -1326,7 +1330,7 @@ export namespace domains_v1alpha2 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1356,7 +1360,7 @@ export namespace domains_v1alpha2 { * * // Do the magic * const res = await domains.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1482,7 +1486,7 @@ export namespace domains_v1alpha2 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -2184,7 +2188,8 @@ export namespace domains_v1alpha2 { * // request body parameters * // { * // "managementSettings": {}, - * // "updateMask": "my_updateMask" + * // "updateMask": "my_updateMask", + * // "validateOnly": false * // } * }, * }); diff --git a/src/apis/domains/v1beta1.ts b/src/apis/domains/v1beta1.ts index 56a004fc2d4..8eb74b817eb 100644 --- a/src/apis/domains/v1beta1.ts +++ b/src/apis/domains/v1beta1.ts @@ -226,6 +226,10 @@ export namespace domains_v1beta1 { * Required. The field mask describing which fields to update as a comma-separated list. For example, if only the transfer lock is being updated, the `update_mask` is `"transfer_lock_state"`. */ updateMask?: string | null; + /** + * Optional. If set, validates the request without actually updating the management settings. + */ + validateOnly?: boolean | null; } /** * Details required for a contact associated with a `Registration`. @@ -1322,7 +1326,7 @@ export namespace domains_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1352,7 +1356,7 @@ export namespace domains_v1beta1 { * * // Do the magic * const res = await domains.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1478,7 +1482,7 @@ export namespace domains_v1beta1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -2180,7 +2184,8 @@ export namespace domains_v1beta1 { * // request body parameters * // { * // "managementSettings": {}, - * // "updateMask": "my_updateMask" + * // "updateMask": "my_updateMask", + * // "validateOnly": false * // } * }, * }); diff --git a/src/apis/drive/v2.ts b/src/apis/drive/v2.ts index ca68e3482b6..8ed27f137e4 100644 --- a/src/apis/drive/v2.ts +++ b/src/apis/drive/v2.ts @@ -170,7 +170,7 @@ export namespace drive_v2 { */ canCreateTeamDrives?: boolean | null; /** - * The domain sharing policy for the current user. Possible values are: * `allowed` * `allowedWithWarning` * `incomingOnly` * `disallowed` + * Deprecated: Does not granularly represent allowlisted domains or Trust Rules. The domain sharing policy for the current user. Possible values are: * `allowed` * `allowedWithWarning` * `incomingOnly` * `disallowed` Note that if the user is enrolled in Trust Rules, `disallowed` will always be returned. If sharing is restricted to allowlisted domains, either `incomingOnly` or `allowedWithWarning` will be returned, depending on whether receiving files from outside the allowlisted domains is permitted. */ domainSharingPolicy?: string | null; /** @@ -596,6 +596,19 @@ export namespace drive_v2 { */ selfLink?: string | null; } + /** + * Details about the client-side encryption applied to the file. + */ + export interface Schema$ClientEncryptionDetails { + /** + * The metadata used for client-side operations. + */ + decryptionMetadata?: Schema$DecryptionMetadata; + /** + * The encryption state of the file. The values expected here are: - encrypted - unencrypted + */ + encryptionState?: string | null; + } /** * A comment on a file in Google Drive. */ @@ -785,6 +798,39 @@ export namespace drive_v2 { */ type?: string | null; } + /** + * Representation of the CSE DecryptionMetadata. + */ + export interface Schema$DecryptionMetadata { + /** + * Chunk size used if content was encrypted with the AES 256 GCM Cipher. Possible values are: - default - small + */ + aes256GcmChunkSize?: string | null; + /** + * The URL-safe Base64 encoded HMAC-SHA256 digest of the resource metadata with its DEK (Data Encryption Key); see https://developers.google.com/workspace/cse/reference + */ + encryptionResourceKeyHash?: string | null; + /** + * The signed JSON Web Token (JWT) which can be used to authorize the requesting user with the Key ACL Service (KACLS). The JWT asserts that the requesting user has at least read permissions on the file. + */ + jwt?: string | null; + /** + * The ID of the KACLS (Key ACL Service) used to encrypt the file. + */ + kaclsId?: string | null; + /** + * The name of the KACLS (Key ACL Service) used to encrypt the file. + */ + kaclsName?: string | null; + /** + * Key format for the unwrapped key. Must be `tinkAesGcmKey`. + */ + keyFormat?: string | null; + /** + * The URL-safe Base64 encoded wrapped key used to encrypt the contents of the file. + */ + wrappedKey?: string | null; + } /** * Representation of a shared drive. Some resource methods (such as `drives.update`) require a `driveId`. Use the `drives.list` method to retrieve the ID for a shared drive. */ @@ -955,6 +1001,10 @@ export namespace drive_v2 { canTrashChildren?: boolean; canUntrash?: boolean; } | null; + /** + * Client Side Encryption related details. Contains details about the encryption state of the file and details regarding the encryption mechanism that clients need to use when decrypting the contents of this item. This will only be present on files and not on folders or shortcuts. + */ + clientEncryptionDetails?: Schema$ClientEncryptionDetails; /** * Restrictions for accessing the content of the file. Only populated if such a restriction exists. */ @@ -1313,6 +1363,31 @@ export namespace drive_v2 { */ selfLink?: string | null; } + /** + * JWT and associated metadata used to generate CSE files. + */ + export interface Schema$GenerateCseTokenResponse { + /** + * The current Key ACL Service (KACLS) ID associated with the JWT. + */ + currentKaclsId?: string | null; + /** + * Name of the KACLs that the returned KACLs ID points to. + */ + currentKaclsName?: string | null; + /** + * The fileId for which the JWT was generated. + */ + fileId?: string | null; + /** + * The signed JSON Web Token (JWT) for the file. + */ + jwt?: string | null; + /** + * Output only. Identifies what kind of resource this is. Value: the fixed string `"drive#generateCseTokenResponse"`. + */ + kind?: string | null; + } /** * A list of generated IDs which can be provided in insert requests */ @@ -5886,7 +5961,7 @@ export namespace drive_v2 { } /** - * Lists the user's shared drives. This method accepts the `q` parameter, which is a search query combining one or more search terms. For more information, see the [Search for shared drives](/workspace/drive/api/guides/search-shareddrives) guide. + * Lists the user's shared drives. This method accepts the `q` parameter, which is a search query combining one or more search terms. For more information, see the [Search for shared drives](https://developers.google.com/workspace/drive/api/guides/search-shareddrives) guide. * @example * ```js * // Before running the sample: @@ -6505,6 +6580,7 @@ export namespace drive_v2 { * // "canComment": false, * // "canReadRevisions": false, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, * // "copyable": false, @@ -6588,6 +6664,7 @@ export namespace drive_v2 { * // "canComment": false, * // "canReadRevisions": false, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, * // "copyable": false, @@ -7162,6 +7239,153 @@ export namespace drive_v2 { } } + /** + * Generates a CSE token which can be used to create or update CSE files. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/drive.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const drive = google.drive('v2'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/drive'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await drive.files.generateCseToken({ + * // The ID of the file for which the JWT should be generated. If not provided, an id will be generated. + * fileId: 'placeholder-value', + * // The ID of the expected parent of the file. Used when generating a JWT for a new CSE file. If specified, the parent will be fetched, and if the parent is a shared drive item, the shared drive's policy will be used to determine the KACLS that should be used. It is invalid to specify both file_id and parent in a single request. + * parent: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "currentKaclsId": "my_currentKaclsId", + * // "currentKaclsName": "my_currentKaclsName", + * // "fileId": "my_fileId", + * // "jwt": "my_jwt", + * // "kind": "my_kind" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + generateCseToken( + params: Params$Resource$Files$Generatecsetoken, + options: StreamMethodOptions + ): Promise>; + generateCseToken( + params?: Params$Resource$Files$Generatecsetoken, + options?: MethodOptions + ): Promise>; + generateCseToken( + params: Params$Resource$Files$Generatecsetoken, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + generateCseToken( + params: Params$Resource$Files$Generatecsetoken, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + generateCseToken( + params: Params$Resource$Files$Generatecsetoken, + callback: BodyResponseCallback + ): void; + generateCseToken( + callback: BodyResponseCallback + ): void; + generateCseToken( + paramsOrCallback?: + | Params$Resource$Files$Generatecsetoken + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Files$Generatecsetoken; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Files$Generatecsetoken; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://www.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/drive/v2/files/generateCseToken').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Generates a set of file IDs which can be provided in insert or copy requests. * @example @@ -7310,7 +7534,7 @@ export namespace drive_v2 { } /** - * Gets a file's metadata or content by ID. If you provide the URL parameter `alt=media`, then the response includes the file contents in the response body. Downloading content with `alt=media` only works if the file is stored in Drive. To download Google Docs, Sheets, and Slides use [`files.export`](/workspace/drive/api/reference/rest/v2/files/export) instead. For more information, see [Download & export files](/workspace/drive/api/guides/manage-downloads). + * Gets a file's metadata or content by ID. If you provide the URL parameter `alt=media`, then the response includes the file contents in the response body. Downloading content with `alt=media` only works if the file is stored in Drive. To download Google Docs, Sheets, and Slides use [`files.export`](https://developers.google.com/workspace/drive/api/reference/rest/v2/files/export) instead. For more information, see [Download & export files](https://developers.google.com/workspace/drive/api/guides/manage-downloads). * @example * ```js * // Before running the sample: @@ -7377,6 +7601,7 @@ export namespace drive_v2 { * // "canComment": false, * // "canReadRevisions": false, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, * // "copyable": false, @@ -7546,7 +7771,7 @@ export namespace drive_v2 { } /** - * Inserts a new file. This method supports an x/upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:*`x/x` Note: Specify a valid MIME type, rather than the literal `x/x` value. The literal `x/x` is only used to indicate that any valid MIME type can be uploaded. For more information on uploading files, see [Upload file data](/workspace/drive/api/guides/manage-uploads). Apps creating shortcuts with `files.insert` must specify the MIME type `application/vnd.google-apps.shortcut`. Apps should specify a file extension in the `title` property when inserting files with the API. For example, an operation to insert a JPEG file should specify something like `"title": "cat.jpg"` in the metadata. Subsequent `GET` requests include the read-only `fileExtension` property populated with the extension originally specified in the `title` property. When a Google Drive user requests to download a file, or when the file is downloaded through the sync client, Drive builds a full filename (with extension) based on the title. In cases where the extension is missing, Drive attempts to determine the extension based on the file's MIME type. + * Inserts a new file. This method supports an x/upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:*`x/x` Note: Specify a valid MIME type, rather than the literal `x/x` value. The literal `x/x` is only used to indicate that any valid MIME type can be uploaded. For more information on uploading files, see [Upload file data](https://developers.google.com/workspace/drive/api/guides/manage-uploads). Apps creating shortcuts with `files.insert` must specify the MIME type `application/vnd.google-apps.shortcut`. Apps should specify a file extension in the `title` property when inserting files with the API. For example, an operation to insert a JPEG file should specify something like `"title": "cat.jpg"` in the metadata. Subsequent `GET` requests include the read-only `fileExtension` property populated with the extension originally specified in the `title` property. When a Google Drive user requests to download a file, or when the file is downloaded through the sync client, Drive builds a full filename (with extension) based on the title. In cases where the extension is missing, Drive attempts to determine the extension based on the file's MIME type. * @example * ```js * // Before running the sample: @@ -7617,6 +7842,7 @@ export namespace drive_v2 { * // "canComment": false, * // "canReadRevisions": false, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, * // "copyable": false, @@ -7704,6 +7930,7 @@ export namespace drive_v2 { * // "canComment": false, * // "canReadRevisions": false, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, * // "copyable": false, @@ -7874,7 +8101,7 @@ export namespace drive_v2 { } /** - * Lists the user's files. For more information, see [Search for files and folders](/workspace/drive/api/guides/search-files). This method accepts the `q` parameter, which is a search query combining one or more search terms. This method returns *all* files by default, including trashed files. If you don't want trashed files to appear in the list, use the `trashed=false` query parameter to remove trashed files from the results. + * Lists the user's files. For more information, see [Search for files and folders](https://developers.google.com/workspace/drive/api/guides/search-files). This method accepts the `q` parameter, which is a search query combining one or more search terms. This method returns *all* files by default, including trashed files. If you don't want trashed files to appear in the list, use the `trashed=false` query parameter to remove trashed files from the results. * @example * ```js * // Before running the sample: @@ -8442,6 +8669,7 @@ export namespace drive_v2 { * // "canComment": false, * // "canReadRevisions": false, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, * // "copyable": false, @@ -8525,6 +8753,7 @@ export namespace drive_v2 { * // "canComment": false, * // "canReadRevisions": false, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, * // "copyable": false, @@ -8750,6 +8979,7 @@ export namespace drive_v2 { * // "canComment": false, * // "canReadRevisions": false, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, * // "copyable": false, @@ -8974,6 +9204,7 @@ export namespace drive_v2 { * // "canComment": false, * // "canReadRevisions": false, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, * // "copyable": false, @@ -9198,6 +9429,7 @@ export namespace drive_v2 { * // "canComment": false, * // "canReadRevisions": false, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, * // "copyable": false, @@ -9367,7 +9599,7 @@ export namespace drive_v2 { } /** - * Updates a file's metadata, content, or both. When calling this method, only populate fields in the request that you want to modify. When updating fields, some fields might be changed automatically, such as `modifiedDate`. This method supports patch semantics. This method supports an x/upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:* `x/x` (Specify a valid MIME type, rather than the literal `x/x` value. The literal `x/x` is only used to indicate that any valid MIME type can be uploaded. For more information, see [Google Workspace and Google Drive supported MIME types](/workspace/drive/api/guides/mime-types).) For more information on uploading files, see [Upload file data](/workspace/drive/api/guides/manage-uploads). + * Updates a file's metadata, content, or both. When calling this method, only populate fields in the request that you want to modify. When updating fields, some fields might be changed automatically, such as `modifiedDate`. This method supports patch semantics. This method supports an x/upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:* `x/x` (Specify a valid MIME type, rather than the literal `x/x` value. The literal `x/x` is only used to indicate that any valid MIME type can be uploaded. For more information, see [Google Workspace and Google Drive supported MIME types](https://developers.google.com/workspace/drive/api/guides/mime-types).) For more information on uploading files, see [Upload file data](https://developers.google.com/workspace/drive/api/guides/manage-uploads). * @example * ```js * // Before running the sample: @@ -9452,6 +9684,7 @@ export namespace drive_v2 { * // "canComment": false, * // "canReadRevisions": false, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, * // "copyable": false, @@ -9539,6 +9772,7 @@ export namespace drive_v2 { * // "canComment": false, * // "canReadRevisions": false, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, * // "copyable": false, @@ -9996,6 +10230,16 @@ export namespace drive_v2 { */ mimeType?: string; } + export interface Params$Resource$Files$Generatecsetoken extends StandardParameters { + /** + * The ID of the file for which the JWT should be generated. If not provided, an id will be generated. + */ + fileId?: string; + /** + * The ID of the expected parent of the file. Used when generating a JWT for a new CSE file. If specified, the parent will be fetched, and if the parent is a shared drive item, the shared drive's policy will be used to determine the KACLS that should be used. It is invalid to specify both file_id and parent in a single request. + */ + parent?: string; + } export interface Params$Resource$Files$Generateids extends StandardParameters { /** * Maximum number of IDs to return. @@ -11200,7 +11444,7 @@ export namespace drive_v2 { * * // Do the magic * const res = await drive.permissions.delete({ - * // Whether the request should enforce expansive access rules. + * // Deprecated: All requests use the expansive access rules. * enforceExpansiveAccess: 'placeholder-value', * // The ID for the file or shared drive. * fileId: 'placeholder-value', @@ -11662,7 +11906,7 @@ export namespace drive_v2 { * const res = await drive.permissions.insert({ * // A plain text custom message to include in notification emails. * emailMessage: 'placeholder-value', - * // Whether the request should enforce expansive access rules. + * // Deprecated: All requests use the expansive access rules. * enforceExpansiveAccess: 'placeholder-value', * // Deprecated: See `moveToNewOwnersRoot` for details. * enforceSingleParent: 'placeholder-value', @@ -12024,7 +12268,7 @@ export namespace drive_v2 { * * // Do the magic * const res = await drive.permissions.patch({ - * // Whether the request should enforce expansive access rules. + * // Deprecated: All requests use the expansive access rules. * enforceExpansiveAccess: 'placeholder-value', * // The ID for the file or shared drive. * fileId: 'placeholder-value', @@ -12225,7 +12469,7 @@ export namespace drive_v2 { * * // Do the magic * const res = await drive.permissions.update({ - * // Whether the request should enforce expansive access rules. + * // Deprecated: All requests use the expansive access rules. * enforceExpansiveAccess: 'placeholder-value', * // The ID for the file or shared drive. * fileId: 'placeholder-value', @@ -12395,7 +12639,7 @@ export namespace drive_v2 { export interface Params$Resource$Permissions$Delete extends StandardParameters { /** - * Whether the request should enforce expansive access rules. + * Deprecated: All requests use the expansive access rules. */ enforceExpansiveAccess?: boolean; /** @@ -12453,7 +12697,7 @@ export namespace drive_v2 { */ emailMessage?: string; /** - * Whether the request should enforce expansive access rules. + * Deprecated: All requests use the expansive access rules. */ enforceExpansiveAccess?: boolean; /** @@ -12522,7 +12766,7 @@ export namespace drive_v2 { } export interface Params$Resource$Permissions$Patch extends StandardParameters { /** - * Whether the request should enforce expansive access rules. + * Deprecated: All requests use the expansive access rules. */ enforceExpansiveAccess?: boolean; /** @@ -12561,7 +12805,7 @@ export namespace drive_v2 { } export interface Params$Resource$Permissions$Update extends StandardParameters { /** - * Whether the request should enforce expansive access rules. + * Deprecated: All requests use the expansive access rules. */ enforceExpansiveAccess?: boolean; /** diff --git a/src/apis/drive/v3.ts b/src/apis/drive/v3.ts index 73234000841..3a62f81955e 100644 --- a/src/apis/drive/v3.ts +++ b/src/apis/drive/v3.ts @@ -266,6 +266,15 @@ export namespace drive_v3 { */ view?: string | null; } + /** + * Representation of a reviewer addition. + */ + export interface Schema$AddReviewer { + /** + * Required. The email of the reviewer to add. + */ + addedReviewerEmail?: string | null; + } /** * The `apps` resource provides a list of apps that a user has installed, with information about each app's supported MIME types, file extensions, and other details. Some resource methods (such as `apps.get`) require an `appId`. Use the `apps.list` method to retrieve the ID for an installed application. */ @@ -403,11 +412,11 @@ export namespace drive_v3 { selfLink?: string | null; } /** - * Metadata for an approval. An approval is a review/approve process for a Drive item. + * Metadata for an approval. An approval is a review or approve process for a Drive item. */ export interface Schema$Approval { /** - * The Approval ID. + * The approval ID. */ approvalId?: string | null; /** @@ -423,7 +432,7 @@ export namespace drive_v3 { */ dueTime?: string | null; /** - * The user that requested the Approval. + * The user that requested the approval. */ initiator?: Schema$User; /** @@ -435,7 +444,7 @@ export namespace drive_v3 { */ modifyTime?: string | null; /** - * The responses made on the Approval by reviewers. + * The responses made on the approval by reviewers. */ reviewerResponses?: Schema$ReviewerResponse[]; /** @@ -448,11 +457,11 @@ export namespace drive_v3 { targetFileId?: string | null; } /** - * The response of an Approvals list request. + * The response of an approvals list request. */ export interface Schema$ApprovalList { /** - * The list of Approvals. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched. + * The list of approvals. If `nextPageToken` is populated, then this list may be incomplete and an additional page of results should be fetched. */ items?: Schema$Approval[]; /** @@ -460,10 +469,28 @@ export namespace drive_v3 { */ kind?: string | null; /** - * The page token for the next page of Approvals. This will be absent if the end of the Approvals list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results. + * The page token for the next page of approvals. This is absent if the end of the approvals list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results. */ nextPageToken?: string | null; } + /** + * Request for approving an approval as a reviewer. + */ + export interface Schema$ApproveApprovalRequest { + /** + * Optional. A message to accompany the reviewer response on the approval. This message is included in notifications for the action and in the approval activity log. + */ + message?: string | null; + } + /** + * Request for cancelling an approval as an initiator. + */ + export interface Schema$CancelApprovalRequest { + /** + * Optional. A message to accompany the cancellation of the approval. This message is included in notifications for the action and in the approval activity log. + */ + message?: string | null; + } /** * A change to a file or shared drive. */ @@ -579,6 +606,19 @@ export namespace drive_v3 { */ type?: string | null; } + /** + * Details about the client-side encryption applied to the file. + */ + export interface Schema$ClientEncryptionDetails { + /** + * The metadata used for client-side operations. + */ + decryptionMetadata?: Schema$DecryptionMetadata; + /** + * The encryption state of the file. The values expected here are: - encrypted - unencrypted + */ + encryptionState?: string | null; + } /** * A comment on a file. Some resource methods (such as `comments.update`) require a `commentId`. Use the `comments.list` method to retrieve the ID for a comment in a file. */ @@ -640,6 +680,15 @@ export namespace drive_v3 { */ resolved?: boolean | null; } + /** + * Request for commenting on an approval. + */ + export interface Schema$CommentApprovalRequest { + /** + * Required. A message to comment on the approval. This message is included in notifications for the action and in the approval activity log. + */ + message?: string | null; + } /** * A list of comments on a file. */ @@ -690,6 +739,48 @@ export namespace drive_v3 { */ type?: string | null; } + /** + * Request for declining an approval as a reviewer. + */ + export interface Schema$DeclineApprovalRequest { + /** + * Optional. A message to accompany the reviewer response on the approval. This message is included in notifications for the action and in the approval activity log. + */ + message?: string | null; + } + /** + * Representation of the CSE DecryptionMetadata. + */ + export interface Schema$DecryptionMetadata { + /** + * Chunk size used if content was encrypted with the AES 256 GCM Cipher. Possible values are: - default - small + */ + aes256GcmChunkSize?: string | null; + /** + * The URL-safe Base64 encoded HMAC-SHA256 digest of the resource metadata with its DEK (Data Encryption Key); see https://developers.google.com/workspace/cse/reference + */ + encryptionResourceKeyHash?: string | null; + /** + * The signed JSON Web Token (JWT) which can be used to authorize the requesting user with the Key ACL Service (KACLS). The JWT asserts that the requesting user has at least read permissions on the file. + */ + jwt?: string | null; + /** + * The ID of the KACLS (Key ACL Service) used to encrypt the file. + */ + kaclsId?: string | null; + /** + * The name of the KACLS (Key ACL Service) used to encrypt the file. + */ + kaclsName?: string | null; + /** + * Key format for the unwrapped key. Must be `tinkAesGcmKey`. + */ + keyFormat?: string | null; + /** + * The URL-safe Base64 encoded wrapped key used to encrypt the contents of the file. + */ + wrappedKey?: string | null; + } /** * A restriction for copy and download of the file. */ @@ -699,7 +790,7 @@ export namespace drive_v3 { */ restrictedForReaders?: boolean | null; /** - * Whether download and copy is restricted for writers. If `true`, download is also restricted for readers. + * Whether download and copy is restricted for writers. If true, download is also restricted for readers. */ restrictedForWriters?: boolean | null; } @@ -874,10 +965,15 @@ export namespace drive_v3 { canRemoveMyDriveParent?: boolean; canRename?: boolean; canShare?: boolean; + canStartApproval?: boolean; canTrash?: boolean; canTrashChildren?: boolean; canUntrash?: boolean; } | null; + /** + * Client Side Encryption related details. Contains details about the encryption state of the file and details regarding the encryption mechanism that clients need to use when decrypting the contents of this item. This will only be present on files and not on folders or shortcuts. + */ + clientEncryptionDetails?: Schema$ClientEncryptionDetails; /** * Additional information about the content of the file. These fields are never populated in responses. */ @@ -988,7 +1084,7 @@ export namespace drive_v3 { */ kind?: string | null; /** - * Output only. An overview of the labels on the file. + * Label information on the file. */ labelInfo?: {labels?: Schema$Label[]} | null; /** @@ -1084,7 +1180,7 @@ export namespace drive_v3 { */ sharingUser?: Schema$User; /** - * Shortcut file details. Only populated for shortcut files, which have the mimeType field set to `application/vnd.google-apps.shortcut`. Can only be set on `files.create` requests. + * Information about a shortcut file. */ shortcutDetails?: { targetId?: string; @@ -1116,7 +1212,7 @@ export namespace drive_v3 { */ thumbnailVersion?: string | null; /** - * Whether the file has been trashed, either explicitly or from a trashed parent folder. Only the owner may trash a file, and other users cannot see files in the owner's trash. + * Whether the file has been trashed, either explicitly or from a trashed parent folder. Only the owner may trash a file, but other users can still access the file in the owner's trash until it's permanently deleted. */ trashed?: boolean | null; /** @@ -1185,6 +1281,31 @@ export namespace drive_v3 { */ nextPageToken?: string | null; } + /** + * JWT and associated metadata used to generate CSE files. + */ + export interface Schema$GenerateCseTokenResponse { + /** + * The current Key ACL Service (KACLS) ID associated with the JWT. + */ + currentKaclsId?: string | null; + /** + * Name of the KACLs that the returned KACLs ID points to. + */ + currentKaclsName?: string | null; + /** + * The fileId for which the JWT was generated. + */ + fileId?: string | null; + /** + * The signed JSON Web Token (JWT) for the file. + */ + jwt?: string | null; + /** + * Output only. Identifies what kind of resource this is. Value: the fixed string `"drive#generateCseTokenResponse"`. + */ + kind?: string | null; + } /** * A list of generated file IDs which can be provided in create requests. */ @@ -1416,11 +1537,11 @@ export namespace drive_v3 { */ displayName?: string | null; /** - * The domain to which this permission refers. + * Output only. The domain to which this permission refers. */ domain?: string | null; /** - * The email address of the user or group to which this permission refers. + * Output only. The email address of the user or group to which this permission refers. */ emailAddress?: string | null; /** @@ -1495,6 +1616,36 @@ export namespace drive_v3 { */ permissions?: Schema$Permission[]; } + /** + * Request for reassigning an approval. Reviewers can be added or replaced, but not removed. + */ + export interface Schema$ReassignApprovalRequest { + /** + * Optional. The list of reviewers to add. + */ + addReviewers?: Schema$AddReviewer[]; + /** + * Optional. A message to send to the new reviewers. This message is included in notifications for the action and in the approval activity log. + */ + message?: string | null; + /** + * Optional. The list of reviewer replacements. + */ + replaceReviewers?: Schema$ReplaceReviewer[]; + } + /** + * Representation of a reviewer replacement. + */ + export interface Schema$ReplaceReviewer { + /** + * Required. The email of the reviewer to add. + */ + addedReviewerEmail?: string | null; + /** + * Required. The email of the reviewer to remove. + */ + removedReviewerEmail?: string | null; + } /** * A reply to a comment on a file. Some resource methods (such as `replies.update`) require a `replyId`. Use the `replies.list` method to retrieve the ID for a reply. */ @@ -1583,7 +1734,7 @@ export namespace drive_v3 { view?: string | null; } /** - * A response on an Approval made by a specific Reviewer. + * A response on an approval made by a specific reviewer. */ export interface Schema$ReviewerResponse { /** @@ -1591,11 +1742,11 @@ export namespace drive_v3 { */ kind?: string | null; /** - * A Reviewer’s Response for the Approval. + * A reviewer’s response for the approval. */ response?: string | null; /** - * The user that is responsible for this response. + * The user that's responsible for this response. */ reviewer?: Schema$User; } @@ -1677,6 +1828,27 @@ export namespace drive_v3 { */ revisions?: Schema$Revision[]; } + /** + * Allows creating an approval on a file. + */ + export interface Schema$StartApprovalRequest { + /** + * Optional. The time that the approval is due. + */ + dueTime?: string | null; + /** + * Optional. Whether to lock the file when starting the approval. + */ + lockFile?: boolean | null; + /** + * Optional. A message to send to reviewers when notifying them of the approval request. + */ + message?: string | null; + /** + * Required. The emails of the users who are set to review the approval. + */ + reviewerEmails?: string[] | null; + } export interface Schema$StartPageToken { /** * Identifies what kind of resource this is. Value: the fixed string `"drive#startPageToken"`. @@ -1705,11 +1877,11 @@ export namespace drive_v3 { message?: string | null; } /** - * Deprecated: use the drive collection instead. + * Deprecated: use the drive collection instead. Next ID: 33 */ export interface Schema$TeamDrive { /** - * An image file and cropping parameters from which a background image for this Team Drive is set. This is a write only field; it can only be set on `drive.teamdrives.update` requests that don't set `themeId`. When specified, all fields of the `backgroundImageFile` must be set. + * The background image file for a Team Drive. */ backgroundImageFile?: { id?: string; @@ -2496,7 +2668,7 @@ export namespace drive_v3 { } /** - * Gets an Approval by ID. + * Approves an approval. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). This is used to update the ReviewerResponse of the requesting user with a Response of `APPROVED`. If this is the last required reviewer response, this also completes the approval and sets the approval Status to `APPROVED`. * @example * ```js * // Before running the sample: @@ -2519,11 +2691,8 @@ export namespace drive_v3 { * // Scopes can be specified either as an array or as a single, space-delimited string. * scopes: [ * 'https://www.googleapis.com/auth/drive', - * 'https://www.googleapis.com/auth/drive.appdata', * 'https://www.googleapis.com/auth/drive.file', * 'https://www.googleapis.com/auth/drive.metadata', - * 'https://www.googleapis.com/auth/drive.metadata.readonly', - * 'https://www.googleapis.com/auth/drive.readonly', * ], * }); * @@ -2532,11 +2701,19 @@ export namespace drive_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await drive.approvals.get({ - * // Required. The ID of the Approval. + * const res = await drive.approvals.approve({ + * // Required. The ID of the approval to approve. * approvalId: 'placeholder-value', - * // Required. The ID of the file the Approval is on. + * // Required. The ID of the file that the approval is on. * fileId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "message": "my_message" + * // } + * }, * }); * console.log(res.data); * @@ -2567,32 +2744,974 @@ export namespace drive_v3 { * @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$Approvals$Get, + approve( + params: Params$Resource$Approvals$Approve, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Approvals$Get, + approve( + params?: Params$Resource$Approvals$Approve, options?: MethodOptions ): Promise>; - get( - params: Params$Resource$Approvals$Get, + approve( + params: Params$Resource$Approvals$Approve, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + approve( + params: Params$Resource$Approvals$Approve, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + approve( + params: Params$Resource$Approvals$Approve, + callback: BodyResponseCallback + ): void; + approve(callback: BodyResponseCallback): void; + approve( + paramsOrCallback?: + | Params$Resource$Approvals$Approve + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Approvals$Approve; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Approvals$Approve; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://www.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/drive/v3/files/{fileId}/approvals/{approvalId}:approve' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['fileId', 'approvalId'], + pathParams: ['approvalId', 'fileId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Cancels an approval. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). Updates the approval Status to `CANCELLED`. This can be called by any user with the `writer` permission on the file while the approval Status is `IN_PROGRESS`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/drive.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const drive = google.drive('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await drive.approvals.cancel({ + * // Required. The ID of the approval to cancel. + * approvalId: 'placeholder-value', + * // Required. The ID of the file that the approval is on. + * fileId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "message": "my_message" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "approvalId": "my_approvalId", + * // "completeTime": "my_completeTime", + * // "createTime": "my_createTime", + * // "dueTime": "my_dueTime", + * // "initiator": {}, + * // "kind": "my_kind", + * // "modifyTime": "my_modifyTime", + * // "reviewerResponses": [], + * // "status": "my_status", + * // "targetFileId": "my_targetFileId" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Approvals$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Approvals$Cancel, + options?: MethodOptions + ): Promise>; + cancel( + params: Params$Resource$Approvals$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Approvals$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Approvals$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Approvals$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Approvals$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Approvals$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://www.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/drive/v3/files/{fileId}/approvals/{approvalId}:cancel' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['fileId', 'approvalId'], + pathParams: ['approvalId', 'fileId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Comments on an approval. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). This sends a notification to both the initiator and the reviewers. Additionally, a message is also added to the approval activity log. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/drive.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const drive = google.drive('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await drive.approvals.comment({ + * // Required. The ID of the approval to comment on. + * approvalId: 'placeholder-value', + * // Required. The ID of the file that the approval is on. + * fileId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "message": "my_message" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "approvalId": "my_approvalId", + * // "completeTime": "my_completeTime", + * // "createTime": "my_createTime", + * // "dueTime": "my_dueTime", + * // "initiator": {}, + * // "kind": "my_kind", + * // "modifyTime": "my_modifyTime", + * // "reviewerResponses": [], + * // "status": "my_status", + * // "targetFileId": "my_targetFileId" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + comment( + params: Params$Resource$Approvals$Comment, + options: StreamMethodOptions + ): Promise>; + comment( + params?: Params$Resource$Approvals$Comment, + options?: MethodOptions + ): Promise>; + comment( + params: Params$Resource$Approvals$Comment, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + comment( + params: Params$Resource$Approvals$Comment, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + comment( + params: Params$Resource$Approvals$Comment, + callback: BodyResponseCallback + ): void; + comment(callback: BodyResponseCallback): void; + comment( + paramsOrCallback?: + | Params$Resource$Approvals$Comment + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Approvals$Comment; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Approvals$Comment; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://www.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/drive/v3/files/{fileId}/approvals/{approvalId}:comment' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['fileId', 'approvalId'], + pathParams: ['approvalId', 'fileId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Declines an approval. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). This is used to update the ReviewerResponse of the requesting user with a Response of `DECLINED`. This also completes the approval and sets the approval Status to `DECLINED`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/drive.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const drive = google.drive('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await drive.approvals.decline({ + * // Required. The ID of the approval to decline. + * approvalId: 'placeholder-value', + * // Required. The ID of the file that the approval is on. + * fileId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "message": "my_message" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "approvalId": "my_approvalId", + * // "completeTime": "my_completeTime", + * // "createTime": "my_createTime", + * // "dueTime": "my_dueTime", + * // "initiator": {}, + * // "kind": "my_kind", + * // "modifyTime": "my_modifyTime", + * // "reviewerResponses": [], + * // "status": "my_status", + * // "targetFileId": "my_targetFileId" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + decline( + params: Params$Resource$Approvals$Decline, + options: StreamMethodOptions + ): Promise>; + decline( + params?: Params$Resource$Approvals$Decline, + options?: MethodOptions + ): Promise>; + decline( + params: Params$Resource$Approvals$Decline, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + decline( + params: Params$Resource$Approvals$Decline, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + decline( + params: Params$Resource$Approvals$Decline, + callback: BodyResponseCallback + ): void; + decline(callback: BodyResponseCallback): void; + decline( + paramsOrCallback?: + | Params$Resource$Approvals$Decline + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Approvals$Decline; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Approvals$Decline; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://www.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/drive/v3/files/{fileId}/approvals/{approvalId}:decline' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['fileId', 'approvalId'], + pathParams: ['approvalId', 'fileId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets an approval by ID. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/drive.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const drive = google.drive('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.appdata', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * 'https://www.googleapis.com/auth/drive.metadata.readonly', + * 'https://www.googleapis.com/auth/drive.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await drive.approvals.get({ + * // Required. The ID of the approval. + * approvalId: 'placeholder-value', + * // Required. The ID of the file that the approval is on. + * fileId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "approvalId": "my_approvalId", + * // "completeTime": "my_completeTime", + * // "createTime": "my_createTime", + * // "dueTime": "my_dueTime", + * // "initiator": {}, + * // "kind": "my_kind", + * // "modifyTime": "my_modifyTime", + * // "reviewerResponses": [], + * // "status": "my_status", + * // "targetFileId": "my_targetFileId" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Approvals$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Approvals$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Approvals$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Approvals$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Approvals$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Approvals$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Approvals$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Approvals$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://www.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/drive/v3/files/{fileId}/approvals/{approvalId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['fileId', 'approvalId'], + pathParams: ['approvalId', 'fileId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists the approvals on a file. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/drive.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const drive = google.drive('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.appdata', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * 'https://www.googleapis.com/auth/drive.metadata.readonly', + * 'https://www.googleapis.com/auth/drive.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await drive.approvals.list({ + * // Required. The ID of the file that the approval is on. + * fileId: 'placeholder-value', + * // The maximum number of approvals to return. When not set, at most 100 approvals are returned. + * pageSize: 'placeholder-value', + * // The token for continuing a previous list request on the next page. This should be set to the value of `nextPageToken` from a previous response. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Approvals$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Approvals$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Approvals$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Approvals$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Approvals$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Approvals$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Approvals$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Approvals$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://www.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/drive/v3/files/{fileId}/approvals').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['fileId'], + pathParams: ['fileId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Reassigns the reviewers on an approval. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). Adds or replaces reviewers in the ReviewerResponse of the approval. This can be called by any user with the `writer` permission on the file while the approval Status is `IN_PROGRESS` and the Response for the reviewer being reassigned is `NO_RESPONSE`. A user with the `reader` permission can only reassign an approval that's assigned to themselves. Removing a reviewer isn't allowed. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/drive.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const drive = google.drive('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await drive.approvals.reassign({ + * // Required. The ID of the approval to reassign. + * approvalId: 'placeholder-value', + * // Required. The ID of the file that the approval is on. + * fileId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "addReviewers": [], + * // "message": "my_message", + * // "replaceReviewers": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "approvalId": "my_approvalId", + * // "completeTime": "my_completeTime", + * // "createTime": "my_createTime", + * // "dueTime": "my_dueTime", + * // "initiator": {}, + * // "kind": "my_kind", + * // "modifyTime": "my_modifyTime", + * // "reviewerResponses": [], + * // "status": "my_status", + * // "targetFileId": "my_targetFileId" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + reassign( + params: Params$Resource$Approvals$Reassign, + options: StreamMethodOptions + ): Promise>; + reassign( + params?: Params$Resource$Approvals$Reassign, + options?: MethodOptions + ): Promise>; + reassign( + params: Params$Resource$Approvals$Reassign, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Approvals$Get, + reassign( + params: Params$Resource$Approvals$Reassign, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Approvals$Get, + reassign( + params: Params$Resource$Approvals$Reassign, callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + reassign(callback: BodyResponseCallback): void; + reassign( paramsOrCallback?: - | Params$Resource$Approvals$Get + | Params$Resource$Approvals$Reassign | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -2607,12 +3726,13 @@ export namespace drive_v3 { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Approvals$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Approvals$Reassign; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Approvals$Get; + params = {} as Params$Resource$Approvals$Reassign; options = {}; } @@ -2626,9 +3746,10 @@ export namespace drive_v3 { options: Object.assign( { url: ( - rootUrl + '/drive/v3/files/{fileId}/approvals/{approvalId}' + rootUrl + + '/drive/v3/files/{fileId}/approvals/{approvalId}:reassign' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -2649,7 +3770,7 @@ export namespace drive_v3 { } /** - * Lists the Approvals on a file. + * Starts an approval on a file. For more information, see [Manage approvals](https://developers.google.com/workspace/drive/api/guides/approvals). * @example * ```js * // Before running the sample: @@ -2672,11 +3793,8 @@ export namespace drive_v3 { * // Scopes can be specified either as an array or as a single, space-delimited string. * scopes: [ * 'https://www.googleapis.com/auth/drive', - * 'https://www.googleapis.com/auth/drive.appdata', * 'https://www.googleapis.com/auth/drive.file', * 'https://www.googleapis.com/auth/drive.metadata', - * 'https://www.googleapis.com/auth/drive.metadata.readonly', - * 'https://www.googleapis.com/auth/drive.readonly', * ], * }); * @@ -2685,21 +3803,35 @@ export namespace drive_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await drive.approvals.list({ - * // Required. The ID of the file the Approval is on. + * const res = await drive.approvals.start({ + * // Required. The ID of the file that the approval is created on. * fileId: 'placeholder-value', - * // The maximum number of Approvals to return. When not set, at most 100 Approvals will be returned. - * pageSize: 'placeholder-value', - * // The token for continuing a previous list request on the next page. This should be set to the value of nextPageToken from a previous response. - * pageToken: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "dueTime": "my_dueTime", + * // "lockFile": false, + * // "message": "my_message", + * // "reviewerEmails": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "items": [], + * // "approvalId": "my_approvalId", + * // "completeTime": "my_completeTime", + * // "createTime": "my_createTime", + * // "dueTime": "my_dueTime", + * // "initiator": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken" + * // "modifyTime": "my_modifyTime", + * // "reviewerResponses": [], + * // "status": "my_status", + * // "targetFileId": "my_targetFileId" * // } * } * @@ -2715,52 +3847,52 @@ export namespace drive_v3 { * @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$Approvals$List, + start( + params: Params$Resource$Approvals$Start, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Approvals$List, + start( + params?: Params$Resource$Approvals$Start, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Approvals$List, + ): Promise>; + start( + params: Params$Resource$Approvals$Start, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Approvals$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + start( + params: Params$Resource$Approvals$Start, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Approvals$List, - callback: BodyResponseCallback + start( + params: Params$Resource$Approvals$Start, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + start(callback: BodyResponseCallback): void; + start( paramsOrCallback?: - | Params$Resource$Approvals$List - | BodyResponseCallback + | Params$Resource$Approvals$Start + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Approvals$List; + let params = (paramsOrCallback || {}) as Params$Resource$Approvals$Start; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Approvals$List; + params = {} as Params$Resource$Approvals$Start; options = {}; } @@ -2773,11 +3905,11 @@ export namespace drive_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/drive/v3/files/{fileId}/approvals').replace( + url: (rootUrl + '/drive/v3/files/{fileId}/approvals:start').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -2788,40 +3920,126 @@ export namespace drive_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } + export interface Params$Resource$Approvals$Approve extends StandardParameters { + /** + * Required. The ID of the approval to approve. + */ + approvalId?: string; + /** + * Required. The ID of the file that the approval is on. + */ + fileId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ApproveApprovalRequest; + } + export interface Params$Resource$Approvals$Cancel extends StandardParameters { + /** + * Required. The ID of the approval to cancel. + */ + approvalId?: string; + /** + * Required. The ID of the file that the approval is on. + */ + fileId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CancelApprovalRequest; + } + export interface Params$Resource$Approvals$Comment extends StandardParameters { + /** + * Required. The ID of the approval to comment on. + */ + approvalId?: string; + /** + * Required. The ID of the file that the approval is on. + */ + fileId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CommentApprovalRequest; + } + export interface Params$Resource$Approvals$Decline extends StandardParameters { + /** + * Required. The ID of the approval to decline. + */ + approvalId?: string; + /** + * Required. The ID of the file that the approval is on. + */ + fileId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DeclineApprovalRequest; + } export interface Params$Resource$Approvals$Get extends StandardParameters { /** - * Required. The ID of the Approval. + * Required. The ID of the approval. */ approvalId?: string; /** - * Required. The ID of the file the Approval is on. + * Required. The ID of the file that the approval is on. */ fileId?: string; } export interface Params$Resource$Approvals$List extends StandardParameters { /** - * Required. The ID of the file the Approval is on. + * Required. The ID of the file that the approval is on. */ fileId?: string; /** - * The maximum number of Approvals to return. When not set, at most 100 Approvals will be returned. + * The maximum number of approvals to return. When not set, at most 100 approvals are returned. */ pageSize?: number; /** - * The token for continuing a previous list request on the next page. This should be set to the value of nextPageToken from a previous response. + * The token for continuing a previous list request on the next page. This should be set to the value of `nextPageToken` from a previous response. */ pageToken?: string; } + export interface Params$Resource$Approvals$Reassign extends StandardParameters { + /** + * Required. The ID of the approval to reassign. + */ + approvalId?: string; + /** + * Required. The ID of the file that the approval is on. + */ + fileId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ReassignApprovalRequest; + } + export interface Params$Resource$Approvals$Start extends StandardParameters { + /** + * Required. The ID of the file that the approval is created on. + */ + fileId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$StartApprovalRequest; + } export class Resource$Apps { context: APIRequestContext; @@ -5464,7 +6682,7 @@ export namespace drive_v3 { } /** - * Lists the user's shared drives. This method accepts the `q` parameter, which is a search query combining one or more search terms. For more information, see the [Search for shared drives](/workspace/drive/api/guides/search-shareddrives) guide. + * Lists the user's shared drives. This method accepts the `q` parameter, which is a search query combining one or more search terms. For more information, see the [Search for shared drives](https://developers.google.com/workspace/drive/api/guides/search-shareddrives) guide. * @example * ```js * // Before running the sample: @@ -6071,6 +7289,7 @@ export namespace drive_v3 { * // { * // "appProperties": {}, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentHints": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, @@ -6142,6 +7361,7 @@ export namespace drive_v3 { * // { * // "appProperties": {}, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentHints": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, @@ -6302,7 +7522,7 @@ export namespace drive_v3 { } /** - * Creates a file. For more information, see [Create and manage files](/workspace/drive/api/guides/create-file). This method supports an x/upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:* `x/x` (Specify a valid MIME type, rather than the literal `x/x` value. The literal `x/x` is only used to indicate that any valid MIME type can be uploaded. For more information, see [Google Workspace and Google Drive supported MIME types](/workspace/drive/api/guides/mime-types).) For more information on uploading files, see [Upload file data](/workspace/drive/api/guides/manage-uploads). Apps creating shortcuts with the `create` method must specify the MIME type `application/vnd.google-apps.shortcut`. Apps should specify a file extension in the `name` property when inserting files with the API. For example, an operation to insert a JPEG file should specify something like `"name": "cat.jpg"` in the metadata. Subsequent `GET` requests include the read-only `fileExtension` property populated with the extension originally specified in the `name` property. When a Google Drive user requests to download a file, or when the file is downloaded through the sync client, Drive builds a full filename (with extension) based on the name. In cases where the extension is missing, Drive attempts to determine the extension based on the file's MIME type. + * Creates a file. For more information, see [Create and manage files](https://developers.google.com/workspace/drive/api/guides/create-file). This method supports an x/upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:* `x/x` (Specify a valid MIME type, rather than the literal `x/x` value. The literal `x/x` is only used to indicate that any valid MIME type can be uploaded. For more information, see [Google Workspace and Google Drive supported MIME types](https://developers.google.com/workspace/drive/api/guides/mime-types).) For more information on uploading files, see [Upload file data](https://developers.google.com/workspace/drive/api/guides/manage-uploads). Apps creating shortcuts with the `create` method must specify the MIME type `application/vnd.google-apps.shortcut`. Apps should specify a file extension in the `name` property when inserting files with the API. For example, an operation to insert a JPEG file should specify something like `"name": "cat.jpg"` in the metadata. Subsequent `GET` requests include the read-only `fileExtension` property populated with the extension originally specified in the `name` property. When a Google Drive user requests to download a file, or when the file is downloaded through the sync client, Drive builds a full filename (with extension) based on the name. In cases where the extension is missing, Drive attempts to determine the extension based on the file's MIME type. * @example * ```js * // Before running the sample: @@ -6361,6 +7581,7 @@ export namespace drive_v3 { * // { * // "appProperties": {}, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentHints": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, @@ -6436,6 +7657,7 @@ export namespace drive_v3 { * // { * // "appProperties": {}, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentHints": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, @@ -7150,6 +8372,153 @@ export namespace drive_v3 { } } + /** + * Generates a CSE token which can be used to create or update CSE files. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/drive.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const drive = google.drive('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/drive'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await drive.files.generateCseToken({ + * // The ID of the file for which the JWT should be generated. If not provided, an id will be generated. + * fileId: 'placeholder-value', + * // The ID of the expected parent of the file. Used when generating a JWT for a new CSE file. If specified, the parent will be fetched, and if the parent is a shared drive item, the shared drive's policy will be used to determine the KACLS that should be used. It is invalid to specify both file_id and parent in a single request. + * parent: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "currentKaclsId": "my_currentKaclsId", + * // "currentKaclsName": "my_currentKaclsName", + * // "fileId": "my_fileId", + * // "jwt": "my_jwt", + * // "kind": "my_kind" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + generateCseToken( + params: Params$Resource$Files$Generatecsetoken, + options: StreamMethodOptions + ): Promise>; + generateCseToken( + params?: Params$Resource$Files$Generatecsetoken, + options?: MethodOptions + ): Promise>; + generateCseToken( + params: Params$Resource$Files$Generatecsetoken, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + generateCseToken( + params: Params$Resource$Files$Generatecsetoken, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + generateCseToken( + params: Params$Resource$Files$Generatecsetoken, + callback: BodyResponseCallback + ): void; + generateCseToken( + callback: BodyResponseCallback + ): void; + generateCseToken( + paramsOrCallback?: + | Params$Resource$Files$Generatecsetoken + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Files$Generatecsetoken; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Files$Generatecsetoken; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://www.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/drive/v3/files/generateCseToken').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Generates a set of file IDs which can be provided in create or copy requests. For more information, see [Create and manage files](https://developers.google.com/workspace/drive/api/guides/create-file). * @example @@ -7298,7 +8667,7 @@ export namespace drive_v3 { } /** - * Gets a file's metadata or content by ID. For more information, see [Search for files and folders](/workspace/drive/api/guides/search-files). If you provide the URL parameter `alt=media`, then the response includes the file contents in the response body. Downloading content with `alt=media` only works if the file is stored in Drive. To download Google Docs, Sheets, and Slides use [`files.export`](/workspace/drive/api/reference/rest/v3/files/export) instead. For more information, see [Download and export files](/workspace/drive/api/guides/manage-downloads). + * Gets a file's metadata or content by ID. For more information, see [Search for files and folders](https://developers.google.com/workspace/drive/api/guides/search-files). If you provide the URL parameter `alt=media`, then the response includes the file contents in the response body. Downloading content with `alt=media` only works if the file is stored in Drive. To download Google Docs, Sheets, and Slides use [`files.export`](https://developers.google.com/workspace/drive/api/reference/rest/v3/files/export) instead. For more information, see [Download and export files](https://developers.google.com/workspace/drive/api/guides/manage-downloads). * @example * ```js * // Before running the sample: @@ -7356,6 +8725,7 @@ export namespace drive_v3 { * // { * // "appProperties": {}, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentHints": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, @@ -7516,7 +8886,7 @@ export namespace drive_v3 { } /** - * Lists the user's files. For more information, see [Search for files and folders](/workspace/drive/api/guides/search-files). This method accepts the `q` parameter, which is a search query combining one or more search terms. This method returns *all* files by default, including trashed files. If you don't want trashed files to appear in the list, use the `trashed=false` query parameter to remove trashed files from the results. + * Lists the user's files. For more information, see [Search for files and folders](https://developers.google.com/workspace/drive/api/guides/search-files). This method accepts the `q` parameter, which is a search query combining one or more search terms. This method returns *all* files by default, including trashed files. If you don't want trashed files to appear in the list, use the `trashed=false` query parameter to remove trashed files from the results. * @example * ```js * // Before running the sample: @@ -7569,9 +8939,9 @@ export namespace drive_v3 { * includePermissionsForView: 'placeholder-value', * // Deprecated: Use `includeItemsFromAllDrives` instead. * includeTeamDriveItems: 'placeholder-value', - * // A comma-separated list of sort keys. Valid keys are: * `createdTime`: When the file was created. Avoid using this key for queries on large item collections as it might result in timeouts or other issues. For time-related sorting on large item collections, use `modifiedTime` instead. * `folder`: The folder ID. This field is sorted using alphabetical ordering. * `modifiedByMeTime`: The last time the file was modified by the user. * `modifiedTime`: The last time the file was modified by anyone. * `name`: The name of the file. This field is sorted using alphabetical ordering, so 1, 12, 2, 22. * `name_natural`: The name of the file. This field is sorted using natural sort ordering, so 1, 2, 12, 22. * `quotaBytesUsed`: The number of storage quota bytes used by the file. * `recency`: The most recent timestamp from the file's date-time fields. * `sharedWithMeTime`: When the file was shared with the user, if applicable. * `starred`: Whether the user has starred the file. * `viewedByMeTime`: The last time the file was viewed by the user. Each key sorts ascending by default, but can be reversed with the `desc` modifier. Example usage: `?orderBy=folder,modifiedTime desc,name`. + * // A comma-separated list of sort keys. Valid keys are: * `createdTime`: When the file was created. Avoid using this key for queries on large item collections as it might result in timeouts or other issues. For time-related sorting on large item collections, use `modifiedTime desc` instead. * `folder`: The folder ID. This field is sorted using alphabetical ordering. * `modifiedByMeTime`: The last time the file was modified by the user. * `modifiedTime`: The last time the file was modified by anyone. * `name`: The name of the file. This field is sorted using alphabetical ordering, so 1, 12, 2, 22. * `name_natural`: The name of the file. This field is sorted using natural sort ordering, so 1, 2, 12, 22. * `quotaBytesUsed`: The number of storage quota bytes used by the file. * `recency`: The most recent timestamp from the file's date-time fields. * `sharedWithMeTime`: When the file was shared with the user, if applicable. * `starred`: Whether the user has starred the file. * `viewedByMeTime`: The last time the file was viewed by the user. Each key sorts ascending by default, but can be reversed with the `desc` modifier. Example usage: `?orderBy=folder,modifiedTime desc,name`. * orderBy: 'placeholder-value', - * // The maximum number of files to return per page. Partial or empty result pages are possible even before the end of the files list has been reached. + * // The maximum number of files to return per page. Pages may be partial or empty even before reaching the end of the file list. If unspecified, at most 100 files are returned for shared drives, and the entire list of files for non-shared drives. The maximum value is 100; values above 100 are changed to 100. * pageSize: 'placeholder-value', * // The token for continuing a previous list request on the next page. This should be set to the value of `nextPageToken` from the previous response. * pageToken: 'placeholder-value', @@ -7993,7 +9363,7 @@ export namespace drive_v3 { } /** - * Updates a file's metadata, content, or both. When calling this method, only populate fields in the request that you want to modify. When updating fields, some fields might be changed automatically, such as `modifiedDate`. This method supports patch semantics. This method supports an x/upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:* `x/x` (Specify a valid MIME type, rather than the literal `x/x` value. The literal `x/x` is only used to indicate that any valid MIME type can be uploaded. For more information, see [Google Workspace and Google Drive supported MIME types](/workspace/drive/api/guides/mime-types).) For more information on uploading files, see [Upload file data](/workspace/drive/api/guides/manage-uploads). + * Updates a file's metadata, content, or both. When calling this method, only populate fields in the request that you want to modify. When updating fields, some fields might be changed automatically, such as `modifiedDate`. This method supports patch semantics. This method supports an x/upload* URI and accepts uploaded media with the following characteristics: - *Maximum file size:* 5,120 GB - *Accepted Media MIME types:* `x/x` (Specify a valid MIME type, rather than the literal `x/x` value. The literal `x/x` is only used to indicate that any valid MIME type can be uploaded. For more information, see [Google Workspace and Google Drive supported MIME types](https://developers.google.com/workspace/drive/api/guides/mime-types).) For more information on uploading files, see [Upload file data](https://developers.google.com/workspace/drive/api/guides/manage-uploads). * @example * ```js * // Before running the sample: @@ -8058,6 +9428,7 @@ export namespace drive_v3 { * // { * // "appProperties": {}, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentHints": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, @@ -8133,6 +9504,7 @@ export namespace drive_v3 { * // { * // "appProperties": {}, * // "capabilities": {}, + * // "clientEncryptionDetails": {}, * // "contentHints": {}, * // "contentRestrictions": [], * // "copyRequiresWriterPermission": false, @@ -8631,6 +10003,16 @@ export namespace drive_v3 { */ mimeType?: string; } + export interface Params$Resource$Files$Generatecsetoken extends StandardParameters { + /** + * The ID of the file for which the JWT should be generated. If not provided, an id will be generated. + */ + fileId?: string; + /** + * The ID of the expected parent of the file. Used when generating a JWT for a new CSE file. If specified, the parent will be fetched, and if the parent is a shared drive item, the shared drive's policy will be used to determine the KACLS that should be used. It is invalid to specify both file_id and parent in a single request. + */ + parent?: string; + } export interface Params$Resource$Files$Generateids extends StandardParameters { /** * The number of IDs to return. @@ -8701,11 +10083,11 @@ export namespace drive_v3 { */ includeTeamDriveItems?: boolean; /** - * A comma-separated list of sort keys. Valid keys are: * `createdTime`: When the file was created. Avoid using this key for queries on large item collections as it might result in timeouts or other issues. For time-related sorting on large item collections, use `modifiedTime` instead. * `folder`: The folder ID. This field is sorted using alphabetical ordering. * `modifiedByMeTime`: The last time the file was modified by the user. * `modifiedTime`: The last time the file was modified by anyone. * `name`: The name of the file. This field is sorted using alphabetical ordering, so 1, 12, 2, 22. * `name_natural`: The name of the file. This field is sorted using natural sort ordering, so 1, 2, 12, 22. * `quotaBytesUsed`: The number of storage quota bytes used by the file. * `recency`: The most recent timestamp from the file's date-time fields. * `sharedWithMeTime`: When the file was shared with the user, if applicable. * `starred`: Whether the user has starred the file. * `viewedByMeTime`: The last time the file was viewed by the user. Each key sorts ascending by default, but can be reversed with the `desc` modifier. Example usage: `?orderBy=folder,modifiedTime desc,name`. + * A comma-separated list of sort keys. Valid keys are: * `createdTime`: When the file was created. Avoid using this key for queries on large item collections as it might result in timeouts or other issues. For time-related sorting on large item collections, use `modifiedTime desc` instead. * `folder`: The folder ID. This field is sorted using alphabetical ordering. * `modifiedByMeTime`: The last time the file was modified by the user. * `modifiedTime`: The last time the file was modified by anyone. * `name`: The name of the file. This field is sorted using alphabetical ordering, so 1, 12, 2, 22. * `name_natural`: The name of the file. This field is sorted using natural sort ordering, so 1, 2, 12, 22. * `quotaBytesUsed`: The number of storage quota bytes used by the file. * `recency`: The most recent timestamp from the file's date-time fields. * `sharedWithMeTime`: When the file was shared with the user, if applicable. * `starred`: Whether the user has starred the file. * `viewedByMeTime`: The last time the file was viewed by the user. Each key sorts ascending by default, but can be reversed with the `desc` modifier. Example usage: `?orderBy=folder,modifiedTime desc,name`. */ orderBy?: string; /** - * The maximum number of files to return per page. Partial or empty result pages are possible even before the end of the files list has been reached. + * The maximum number of files to return per page. Pages may be partial or empty even before reaching the end of the file list. If unspecified, at most 100 files are returned for shared drives, and the entire list of files for non-shared drives. The maximum value is 100; values above 100 are changed to 100. */ pageSize?: number; /** @@ -9057,7 +10439,7 @@ export namespace drive_v3 { * const res = await drive.permissions.create({ * // A plain text custom message to include in the notification email. * emailMessage: 'placeholder-value', - * // Whether the request should enforce expansive access rules. + * // Deprecated: All requests use the expansive access rules. * enforceExpansiveAccess: 'placeholder-value', * // Deprecated: See `moveToNewOwnersRoot` for details. * enforceSingleParent: 'placeholder-value', @@ -9251,7 +10633,7 @@ export namespace drive_v3 { * * // Do the magic * const res = await drive.permissions.delete({ - * // Whether the request should enforce expansive access rules. + * // Deprecated: All requests use the expansive access rules. * enforceExpansiveAccess: 'placeholder-value', * // The ID of the file or shared drive. * fileId: 'placeholder-value', @@ -9717,7 +11099,7 @@ export namespace drive_v3 { * * // Do the magic * const res = await drive.permissions.update({ - * // Whether the request should enforce expansive access rules. + * // Deprecated: All requests use the expansive access rules. * enforceExpansiveAccess: 'placeholder-value', * // The ID of the file or shared drive. * fileId: 'placeholder-value', @@ -9881,7 +11263,7 @@ export namespace drive_v3 { */ emailMessage?: string; /** - * Whether the request should enforce expansive access rules. + * Deprecated: All requests use the expansive access rules. */ enforceExpansiveAccess?: boolean; /** @@ -9924,7 +11306,7 @@ export namespace drive_v3 { } export interface Params$Resource$Permissions$Delete extends StandardParameters { /** - * Whether the request should enforce expansive access rules. + * Deprecated: All requests use the expansive access rules. */ enforceExpansiveAccess?: boolean; /** @@ -10002,7 +11384,7 @@ export namespace drive_v3 { } export interface Params$Resource$Permissions$Update extends StandardParameters { /** - * Whether the request should enforce expansive access rules. + * Deprecated: All requests use the expansive access rules. */ enforceExpansiveAccess?: boolean; /** diff --git a/src/apis/essentialcontacts/v1.ts b/src/apis/essentialcontacts/v1.ts index 125a50b9078..8015c7dcc2f 100644 --- a/src/apis/essentialcontacts/v1.ts +++ b/src/apis/essentialcontacts/v1.ts @@ -188,7 +188,7 @@ export namespace essentialcontacts_v1 { */ export interface Schema$GoogleCloudEssentialcontactsV1SendTestMessageRequest { /** - * Required. The list of names of the contacts to send a test message to. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * Required. The list of names of the contacts to send a test message to. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) */ contacts?: string[] | null; /** @@ -253,7 +253,7 @@ export namespace essentialcontacts_v1 { * pageSize: 'placeholder-value', * // Optional. If present, retrieves the next batch of results from the preceding call to this method. `page_token` must be the value of `next_page_token` from the previous response. The values of other method parameters should be identical to those in the previous call. * pageToken: 'placeholder-value', - * // Required. The name of the resource to compute contacts for. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * // Required. The name of the resource to compute contacts for. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) * parent: 'folders/my-folder', * }); * console.log(res.data); @@ -402,7 +402,7 @@ export namespace essentialcontacts_v1 { * * // Do the magic * const res = await essentialcontacts.folders.contacts.create({ - * // Required. The resource to save this contact for. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * // Required. The resource to save this contact for. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) * parent: 'folders/my-folder', * * // Request body metadata @@ -568,7 +568,7 @@ export namespace essentialcontacts_v1 { * * // Do the magic * const res = await essentialcontacts.folders.contacts.delete({ - * // Required. The name of the contact to delete. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * // Required. The name of the contact to delete. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) * name: 'folders/my-folder/contacts/my-contact', * }); * console.log(res.data); @@ -701,7 +701,7 @@ export namespace essentialcontacts_v1 { * * // Do the magic * const res = await essentialcontacts.folders.contacts.get({ - * // Required. The name of the contact to retrieve. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * // Required. The name of the contact to retrieve. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) * name: 'folders/my-folder/contacts/my-contact', * }); * console.log(res.data); @@ -855,7 +855,7 @@ export namespace essentialcontacts_v1 { * pageSize: 'placeholder-value', * // Optional. If present, retrieves the next batch of results from the preceding call to this method. `page_token` must be the value of `next_page_token` from the previous response. The values of other method parameters should be identical to those in the previous call. * pageToken: 'placeholder-value', - * // Required. The parent resource name. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * // Required. The parent resource name. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) * parent: 'folders/my-folder', * }); * console.log(res.data); @@ -1169,7 +1169,7 @@ export namespace essentialcontacts_v1 { * * // Do the magic * const res = await essentialcontacts.folders.contacts.sendTestMessage({ - * // Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * // Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) * resource: 'folders/my-folder', * * // Request body metadata @@ -1300,13 +1300,13 @@ export namespace essentialcontacts_v1 { */ pageToken?: string; /** - * Required. The name of the resource to compute contacts for. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * Required. The name of the resource to compute contacts for. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) */ parent?: string; } export interface Params$Resource$Folders$Contacts$Create extends StandardParameters { /** - * Required. The resource to save this contact for. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * Required. The resource to save this contact for. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) */ parent?: string; @@ -1317,13 +1317,13 @@ export namespace essentialcontacts_v1 { } export interface Params$Resource$Folders$Contacts$Delete extends StandardParameters { /** - * Required. The name of the contact to delete. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * Required. The name of the contact to delete. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) */ name?: string; } export interface Params$Resource$Folders$Contacts$Get extends StandardParameters { /** - * Required. The name of the contact to retrieve. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * Required. The name of the contact to retrieve. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) */ name?: string; } @@ -1337,7 +1337,7 @@ export namespace essentialcontacts_v1 { */ pageToken?: string; /** - * Required. The parent resource name. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * Required. The parent resource name. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) */ parent?: string; } @@ -1358,7 +1358,7 @@ export namespace essentialcontacts_v1 { } export interface Params$Resource$Folders$Contacts$Sendtestmessage extends StandardParameters { /** - * Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) */ resource?: string; @@ -1420,7 +1420,7 @@ export namespace essentialcontacts_v1 { * pageSize: 'placeholder-value', * // Optional. If present, retrieves the next batch of results from the preceding call to this method. `page_token` must be the value of `next_page_token` from the previous response. The values of other method parameters should be identical to those in the previous call. * pageToken: 'placeholder-value', - * // Required. The name of the resource to compute contacts for. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * // Required. The name of the resource to compute contacts for. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) * parent: 'organizations/my-organization', * }); * console.log(res.data); @@ -1569,7 +1569,7 @@ export namespace essentialcontacts_v1 { * * // Do the magic * const res = await essentialcontacts.organizations.contacts.create({ - * // Required. The resource to save this contact for. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * // Required. The resource to save this contact for. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) * parent: 'organizations/my-organization', * * // Request body metadata @@ -1735,7 +1735,7 @@ export namespace essentialcontacts_v1 { * * // Do the magic * const res = await essentialcontacts.organizations.contacts.delete({ - * // Required. The name of the contact to delete. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * // Required. The name of the contact to delete. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) * name: 'organizations/my-organization/contacts/my-contact', * }); * console.log(res.data); @@ -1868,7 +1868,7 @@ export namespace essentialcontacts_v1 { * * // Do the magic * const res = await essentialcontacts.organizations.contacts.get({ - * // Required. The name of the contact to retrieve. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * // Required. The name of the contact to retrieve. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) * name: 'organizations/my-organization/contacts/my-contact', * }); * console.log(res.data); @@ -2022,7 +2022,7 @@ export namespace essentialcontacts_v1 { * pageSize: 'placeholder-value', * // Optional. If present, retrieves the next batch of results from the preceding call to this method. `page_token` must be the value of `next_page_token` from the previous response. The values of other method parameters should be identical to those in the previous call. * pageToken: 'placeholder-value', - * // Required. The parent resource name. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * // Required. The parent resource name. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) * parent: 'organizations/my-organization', * }); * console.log(res.data); @@ -2336,7 +2336,7 @@ export namespace essentialcontacts_v1 { * * // Do the magic * const res = await essentialcontacts.organizations.contacts.sendTestMessage({ - * // Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * // Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) * resource: 'organizations/my-organization', * * // Request body metadata @@ -2467,13 +2467,13 @@ export namespace essentialcontacts_v1 { */ pageToken?: string; /** - * Required. The name of the resource to compute contacts for. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * Required. The name of the resource to compute contacts for. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) */ parent?: string; } export interface Params$Resource$Organizations$Contacts$Create extends StandardParameters { /** - * Required. The resource to save this contact for. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * Required. The resource to save this contact for. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) */ parent?: string; @@ -2484,13 +2484,13 @@ export namespace essentialcontacts_v1 { } export interface Params$Resource$Organizations$Contacts$Delete extends StandardParameters { /** - * Required. The name of the contact to delete. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * Required. The name of the contact to delete. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) */ name?: string; } export interface Params$Resource$Organizations$Contacts$Get extends StandardParameters { /** - * Required. The name of the contact to retrieve. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * Required. The name of the contact to retrieve. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) */ name?: string; } @@ -2504,7 +2504,7 @@ export namespace essentialcontacts_v1 { */ pageToken?: string; /** - * Required. The parent resource name. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * Required. The parent resource name. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) */ parent?: string; } @@ -2525,7 +2525,7 @@ export namespace essentialcontacts_v1 { } export interface Params$Resource$Organizations$Contacts$Sendtestmessage extends StandardParameters { /** - * Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) */ resource?: string; @@ -2587,7 +2587,7 @@ export namespace essentialcontacts_v1 { * pageSize: 'placeholder-value', * // Optional. If present, retrieves the next batch of results from the preceding call to this method. `page_token` must be the value of `next_page_token` from the previous response. The values of other method parameters should be identical to those in the previous call. * pageToken: 'placeholder-value', - * // Required. The name of the resource to compute contacts for. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * // Required. The name of the resource to compute contacts for. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) * parent: 'projects/my-project', * }); * console.log(res.data); @@ -2736,7 +2736,7 @@ export namespace essentialcontacts_v1 { * * // Do the magic * const res = await essentialcontacts.projects.contacts.create({ - * // Required. The resource to save this contact for. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * // Required. The resource to save this contact for. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) * parent: 'projects/my-project', * * // Request body metadata @@ -2902,7 +2902,7 @@ export namespace essentialcontacts_v1 { * * // Do the magic * const res = await essentialcontacts.projects.contacts.delete({ - * // Required. The name of the contact to delete. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * // Required. The name of the contact to delete. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) * name: 'projects/my-project/contacts/my-contact', * }); * console.log(res.data); @@ -3035,7 +3035,7 @@ export namespace essentialcontacts_v1 { * * // Do the magic * const res = await essentialcontacts.projects.contacts.get({ - * // Required. The name of the contact to retrieve. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * // Required. The name of the contact to retrieve. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) * name: 'projects/my-project/contacts/my-contact', * }); * console.log(res.data); @@ -3189,7 +3189,7 @@ export namespace essentialcontacts_v1 { * pageSize: 'placeholder-value', * // Optional. If present, retrieves the next batch of results from the preceding call to this method. `page_token` must be the value of `next_page_token` from the previous response. The values of other method parameters should be identical to those in the previous call. * pageToken: 'placeholder-value', - * // Required. The parent resource name. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * // Required. The parent resource name. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) * parent: 'projects/my-project', * }); * console.log(res.data); @@ -3503,7 +3503,7 @@ export namespace essentialcontacts_v1 { * * // Do the magic * const res = await essentialcontacts.projects.contacts.sendTestMessage({ - * // Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * // Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) * resource: 'projects/my-project', * * // Request body metadata @@ -3634,13 +3634,13 @@ export namespace essentialcontacts_v1 { */ pageToken?: string; /** - * Required. The name of the resource to compute contacts for. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * Required. The name of the resource to compute contacts for. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) */ parent?: string; } export interface Params$Resource$Projects$Contacts$Create extends StandardParameters { /** - * Required. The resource to save this contact for. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * Required. The resource to save this contact for. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) */ parent?: string; @@ -3651,13 +3651,13 @@ export namespace essentialcontacts_v1 { } export interface Params$Resource$Projects$Contacts$Delete extends StandardParameters { /** - * Required. The name of the contact to delete. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * Required. The name of the contact to delete. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) */ name?: string; } export interface Params$Resource$Projects$Contacts$Get extends StandardParameters { /** - * Required. The name of the contact to retrieve. Format: organizations/{organization_id\}/contacts/{contact_id\}, folders/{folder_id\}/contacts/{contact_id\} or projects/{project_id\}/contacts/{contact_id\} + * Required. The name of the contact to retrieve. Format: organizations/{organization\}/contacts/{contact\}, folders/{folder\}/contacts/{contact\} or projects/{project\}/contacts/{contact\} (where {project\} is the project number) */ name?: string; } @@ -3671,7 +3671,7 @@ export namespace essentialcontacts_v1 { */ pageToken?: string; /** - * Required. The parent resource name. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * Required. The parent resource name. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) */ parent?: string; } @@ -3692,7 +3692,7 @@ export namespace essentialcontacts_v1 { } export interface Params$Resource$Projects$Contacts$Sendtestmessage extends StandardParameters { /** - * Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization_id\}, folders/{folder_id\} or projects/{project_id\} + * Required. The name of the resource to send the test message for. All contacts must either be set directly on this resource or inherited from another resource that is an ancestor of this one. Format: organizations/{organization\}, folders/{folder\} or projects/{project\} (where {project\} is the project number) */ resource?: string; diff --git a/src/apis/eventarc/v1.ts b/src/apis/eventarc/v1.ts index 008a977194b..b25d2d96693 100644 --- a/src/apis/eventarc/v1.ts +++ b/src/apis/eventarc/v1.ts @@ -1641,7 +1641,7 @@ export namespace eventarc_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1671,7 +1671,7 @@ export namespace eventarc_v1 { * * // Do the magic * const res = await eventarc.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1956,7 +1956,7 @@ export namespace eventarc_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/fcm/v1.ts b/src/apis/fcm/v1.ts index 71f0117352a..b3804531e04 100644 --- a/src/apis/fcm/v1.ts +++ b/src/apis/fcm/v1.ts @@ -153,7 +153,7 @@ export namespace fcm_v1 { */ notification?: Schema$AndroidNotification; /** - * Message priority. Can take "normal" and "high" values. For more information, see [Setting the priority of a message](https://goo.gl/GjONJv). + * Message priority. Can take "normal" and "high" values. For more information, see [Setting the priority of a message](https://firebase.google.com/docs/cloud-messaging/customize-messages/setting-message-priority). */ priority?: string | null; /** @@ -194,10 +194,6 @@ export namespace fcm_v1 { * The key to the body string in the app's string resources to use to localize the body text to the user's current localization. See [String Resources](https://goo.gl/NdFZGI) for more information. */ bodyLocKey?: string | null; - /** - * If set, display notifications delivered to the device will be handled by the app instead of the proxy. - */ - bypassProxyNotification?: boolean | null; /** * The [notification's channel id](https://developer.android.com/guide/topics/ui/notifiers/notifications#ManageChannels) (new in Android O). The app must create a channel with this channel ID before any notification with this channel ID is received. If you don't send this channel ID in the request, or if the channel ID provided has not yet been created by the app, FCM uses the channel ID specified in the app manifest. */ @@ -247,7 +243,7 @@ export namespace fcm_v1 { */ notificationCount?: number | null; /** - * Set the relative priority for this notification. Priority is an indication of how much of the user's attention should be consumed by this notification. Low-priority notifications may be hidden from the user in certain situations, while the user might be interrupted for a higher-priority notification. The effect of setting the same priorities may differ slightly on different platforms. Note this priority differs from `AndroidMessagePriority`. This priority is processed by the client after the message has been delivered, whereas [AndroidMessagePriority](https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#androidmessagepriority) is an FCM concept that controls when the message is delivered. + * Set the relative priority for this notification. Priority is an indication of how much of the user's attention should be consumed by this notification. Low-priority notifications may be hidden from the user in certain situations, while the user might be interrupted for a higher-priority notification. This parameter affects notification priority only on devices running Android 7.1 (API level 25) and lower. On Android 8.0 (API level 26) and higher, priority is ignored in favor of channel [importance](https://developer.android.com/develop/ui/views/notifications/channels#importance). Note this priority differs from `AndroidMessagePriority`. This priority is processed by the client after the message has been delivered, whereas [AndroidMessagePriority](https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#androidmessagepriority) is an FCM concept that controls when the message is delivered. */ notificationPriority?: string | null; /** diff --git a/src/apis/file/v1.ts b/src/apis/file/v1.ts index 50ea58403c0..ad3d12ae56e 100644 --- a/src/apis/file/v1.ts +++ b/src/apis/file/v1.ts @@ -278,7 +278,7 @@ export namespace file_v1 { */ sourceBackup?: string | null; /** - * The resource name of the BackupDR backup, in the format `projects/{project_id\}/locations/{location_id\}/backupVaults/{backupvault_id\}/dataSources/{datasource_id\}/backups/{backup_id\}`, TODO (b/443690479) - Remove visibility restrictions once the feature is ready + * The resource name of the BackupDR backup, in the format `projects/{project_id\}/locations/{location_id\}/backupVaults/{backupvault_id\}/dataSources/{datasource_id\}/backups/{backup_id\}`, */ sourceBackupdrBackup?: string | null; } @@ -1308,7 +1308,7 @@ export namespace file_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1338,7 +1338,7 @@ export namespace file_v1 { * * // Do the magic * const res = await file.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1464,7 +1464,7 @@ export namespace file_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/file/v1beta1.ts b/src/apis/file/v1beta1.ts index 5c35958b1d7..ab49b4975b6 100644 --- a/src/apis/file/v1beta1.ts +++ b/src/apis/file/v1beta1.ts @@ -282,7 +282,7 @@ export namespace file_v1beta1 { */ sourceBackup?: string | null; /** - * The resource name of the BackupDR backup, in the format `projects/{project_id\}/locations/{location_id\}/backupVaults/{backupvault_id\}/dataSources/{datasource_id\}/backups/{backup_id\}`, TODO (b/443690479) - Remove visibility restrictions once the feature is ready + * The resource name of the BackupDR backup, in the format `projects/{project_id\}/locations/{location_id\}/backupVaults/{backupvault_id\}/dataSources/{datasource_id\}/backups/{backup_id\}`, */ sourceBackupdrBackup?: string | null; } @@ -1407,7 +1407,7 @@ export namespace file_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1437,7 +1437,7 @@ export namespace file_v1beta1 { * * // Do the magic * const res = await file.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1563,7 +1563,7 @@ export namespace file_v1beta1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/firebaseappcheck/v1.ts b/src/apis/firebaseappcheck/v1.ts index c16262628f7..b22b6601964 100644 --- a/src/apis/firebaseappcheck/v1.ts +++ b/src/apis/firebaseappcheck/v1.ts @@ -260,6 +260,10 @@ export namespace firebaseappcheck_v1 { * Required. A human readable display name used to identify this debug token. */ displayName?: string | null; + /** + * Optional. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. This etag is strongly validated as defined by RFC 7232. + */ + etag?: string | null; /** * Required. The relative resource name of the debug token, in the format: ``` projects/{project_number\}/apps/{app_id\}/debugTokens/{debug_token_id\} ``` */ @@ -704,10 +708,22 @@ export namespace firebaseappcheck_v1 { * Required. The App Check enforcement mode for this service. */ enforcementMode?: string | null; + /** + * Optional. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. This etag is strongly validated as defined by RFC 7232. + */ + etag?: string | null; /** * Required. The relative resource name of the service configuration object, in the format: ``` projects/{project_number\}/services/{service_id\} ``` Note that the `service_id` element must be a supported service ID. Currently, the following service IDs are supported: * `firebasestorage.googleapis.com` (Cloud Storage for Firebase) * `firebasedatabase.googleapis.com` (Firebase Realtime Database) * `firestore.googleapis.com` (Cloud Firestore) * `oauth2.googleapis.com` (Google Identity for iOS) */ name?: string | null; + /** + * Optional. The replay protection enforcement mode for this service. Note that this field cannot be set to a level higher than the overall App Check enforcement mode. For example, if the overall App Check enforcement mode is set to `UNENFORCED`, this field cannot be set to `ENFORCED`. In order to enforce replay protection, you must first enforce App Check. An HTTP 400 error will be returned in this case. By default, this field is set to `OFF`. Setting this field to `UNENFORCED` or `ENFORCED` is considered opting into replay protection. Once opted in, requests to your protected services may experience higher latency. To opt out of replay protection after opting in, set this field to `OFF`. + */ + replayProtection?: string | null; + /** + * Output only. Timestamp when this service configuration object was most recently updated. + */ + updateTime?: string | null; } /** * Request message for the UpdateResourcePolicy method as well as an individual update message for the BatchUpdateResourcePolicies method. @@ -4085,6 +4101,7 @@ export namespace firebaseappcheck_v1 { * // request body parameters * // { * // "displayName": "my_displayName", + * // "etag": "my_etag", * // "name": "my_name", * // "token": "my_token", * // "updateTime": "my_updateTime" @@ -4096,6 +4113,7 @@ export namespace firebaseappcheck_v1 { * // Example response * // { * // "displayName": "my_displayName", + * // "etag": "my_etag", * // "name": "my_name", * // "token": "my_token", * // "updateTime": "my_updateTime" @@ -4242,6 +4260,8 @@ export namespace firebaseappcheck_v1 { * * // Do the magic * const res = await firebaseappcheck.projects.apps.debugTokens.delete({ + * // Optional. The checksum to be validated against the current DebugToken, to ensure the client has an up-to-date value before proceeding. This checksum is computed by the server based on the values of fields in the DebugToken object, and can be obtained from the DebugToken object received from the last CreateDebugToken, GetDebugToken, ListDebugTokens, or UpdateDebugToken call. This etag is strongly validated as defined by RFC 7232. + * etag: 'placeholder-value', * // Required. The relative resource name of the DebugToken to delete, in the format: ``` projects/{project_number\}/apps/{app_id\}/debugTokens/{debug_token_id\} ``` * name: 'projects/my-project/apps/my-app/debugTokens/my-debugToken', * }); @@ -4386,6 +4406,7 @@ export namespace firebaseappcheck_v1 { * // Example response * // { * // "displayName": "my_displayName", + * // "etag": "my_etag", * // "name": "my_name", * // "token": "my_token", * // "updateTime": "my_updateTime" @@ -4695,6 +4716,7 @@ export namespace firebaseappcheck_v1 { * // request body parameters * // { * // "displayName": "my_displayName", + * // "etag": "my_etag", * // "name": "my_name", * // "token": "my_token", * // "updateTime": "my_updateTime" @@ -4706,6 +4728,7 @@ export namespace firebaseappcheck_v1 { * // Example response * // { * // "displayName": "my_displayName", + * // "etag": "my_etag", * // "name": "my_name", * // "token": "my_token", * // "updateTime": "my_updateTime" @@ -4828,6 +4851,10 @@ export namespace firebaseappcheck_v1 { requestBody?: Schema$GoogleFirebaseAppcheckV1DebugToken; } export interface Params$Resource$Projects$Apps$Debugtokens$Delete extends StandardParameters { + /** + * Optional. The checksum to be validated against the current DebugToken, to ensure the client has an up-to-date value before proceeding. This checksum is computed by the server based on the values of fields in the DebugToken object, and can be obtained from the DebugToken object received from the last CreateDebugToken, GetDebugToken, ListDebugTokens, or UpdateDebugToken call. This etag is strongly validated as defined by RFC 7232. + */ + etag?: string; /** * Required. The relative resource name of the DebugToken to delete, in the format: ``` projects/{project_number\}/apps/{app_id\}/debugTokens/{debug_token_id\} ``` */ @@ -7624,7 +7651,10 @@ export namespace firebaseappcheck_v1 { * // Example response * // { * // "enforcementMode": "my_enforcementMode", - * // "name": "my_name" + * // "etag": "my_etag", + * // "name": "my_name", + * // "replayProtection": "my_replayProtection", + * // "updateTime": "my_updateTime" * // } * } * @@ -7927,7 +7957,10 @@ export namespace firebaseappcheck_v1 { * // request body parameters * // { * // "enforcementMode": "my_enforcementMode", - * // "name": "my_name" + * // "etag": "my_etag", + * // "name": "my_name", + * // "replayProtection": "my_replayProtection", + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -7936,7 +7969,10 @@ export namespace firebaseappcheck_v1 { * // Example response * // { * // "enforcementMode": "my_enforcementMode", - * // "name": "my_name" + * // "etag": "my_etag", + * // "name": "my_name", + * // "replayProtection": "my_replayProtection", + * // "updateTime": "my_updateTime" * // } * } * diff --git a/src/apis/firebaseappcheck/v1beta.ts b/src/apis/firebaseappcheck/v1beta.ts index 2c2f8d56c0b..60bbcc72d1d 100644 --- a/src/apis/firebaseappcheck/v1beta.ts +++ b/src/apis/firebaseappcheck/v1beta.ts @@ -286,6 +286,10 @@ export namespace firebaseappcheck_v1beta { * Required. A human readable display name used to identify this debug token. */ displayName?: string | null; + /** + * Optional. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. This etag is strongly validated as defined by RFC 7232. + */ + etag?: string | null; /** * Required. The relative resource name of the debug token, in the format: ``` projects/{project_number\}/apps/{app_id\}/debugTokens/{debug_token_id\} ``` */ @@ -780,6 +784,10 @@ export namespace firebaseappcheck_v1beta { * Required. The relative resource name of the service configuration object, in the format: ``` projects/{project_number\}/services/{service_id\} ``` Note that the `service_id` element must be a supported service ID. Currently, the following service IDs are supported: * `firebasestorage.googleapis.com` (Cloud Storage for Firebase) * `firebasedatabase.googleapis.com` (Firebase Realtime Database) * `firestore.googleapis.com` (Cloud Firestore) * `identitytoolkit.googleapis.com` (Firebase Authentication with Identity Platform) * `oauth2.googleapis.com` (Google Identity for iOS) */ name?: string | null; + /** + * Optional. The replay protection enforcement mode for this service. Note that this field cannot be set to a level higher than the overall App Check enforcement mode. For example, if the overall App Check enforcement mode is set to `UNENFORCED`, this field cannot be set to `ENFORCED`. In order to enforce replay protection, you must first enforce App Check. An HTTP 400 error will be returned in this case. By default, this field is set to `OFF`. Setting this field to `UNENFORCED` or `ENFORCED` is considered opting into replay protection. Once opted in, requests to your protected services may experience higher latency. To opt out of replay protection after opting in, set this field to `OFF`. + */ + replayProtection?: string | null; /** * Output only. Timestamp when this service configuration object was most recently updated. */ @@ -4532,6 +4540,7 @@ export namespace firebaseappcheck_v1beta { * // request body parameters * // { * // "displayName": "my_displayName", + * // "etag": "my_etag", * // "name": "my_name", * // "token": "my_token", * // "updateTime": "my_updateTime" @@ -4543,6 +4552,7 @@ export namespace firebaseappcheck_v1beta { * // Example response * // { * // "displayName": "my_displayName", + * // "etag": "my_etag", * // "name": "my_name", * // "token": "my_token", * // "updateTime": "my_updateTime" @@ -4689,6 +4699,8 @@ export namespace firebaseappcheck_v1beta { * * // Do the magic * const res = await firebaseappcheck.projects.apps.debugTokens.delete({ + * // Optional. The checksum to be validated against the current DebugToken, to ensure the client has an up-to-date value before proceeding. This checksum is computed by the server based on the values of fields in the DebugToken object, and can be obtained from the DebugToken object received from the last CreateDebugToken, GetDebugToken, ListDebugTokens, or UpdateDebugToken call. This etag is strongly validated as defined by RFC 7232. + * etag: 'placeholder-value', * // Required. The relative resource name of the DebugToken to delete, in the format: ``` projects/{project_number\}/apps/{app_id\}/debugTokens/{debug_token_id\} ``` * name: 'projects/my-project/apps/my-app/debugTokens/my-debugToken', * }); @@ -4833,6 +4845,7 @@ export namespace firebaseappcheck_v1beta { * // Example response * // { * // "displayName": "my_displayName", + * // "etag": "my_etag", * // "name": "my_name", * // "token": "my_token", * // "updateTime": "my_updateTime" @@ -5142,6 +5155,7 @@ export namespace firebaseappcheck_v1beta { * // request body parameters * // { * // "displayName": "my_displayName", + * // "etag": "my_etag", * // "name": "my_name", * // "token": "my_token", * // "updateTime": "my_updateTime" @@ -5153,6 +5167,7 @@ export namespace firebaseappcheck_v1beta { * // Example response * // { * // "displayName": "my_displayName", + * // "etag": "my_etag", * // "name": "my_name", * // "token": "my_token", * // "updateTime": "my_updateTime" @@ -5275,6 +5290,10 @@ export namespace firebaseappcheck_v1beta { requestBody?: Schema$GoogleFirebaseAppcheckV1betaDebugToken; } export interface Params$Resource$Projects$Apps$Debugtokens$Delete extends StandardParameters { + /** + * Optional. The checksum to be validated against the current DebugToken, to ensure the client has an up-to-date value before proceeding. This checksum is computed by the server based on the values of fields in the DebugToken object, and can be obtained from the DebugToken object received from the last CreateDebugToken, GetDebugToken, ListDebugTokens, or UpdateDebugToken call. This etag is strongly validated as defined by RFC 7232. + */ + etag?: string; /** * Required. The relative resource name of the DebugToken to delete, in the format: ``` projects/{project_number\}/apps/{app_id\}/debugTokens/{debug_token_id\} ``` */ @@ -8582,6 +8601,7 @@ export namespace firebaseappcheck_v1beta { * // "enforcementMode": "my_enforcementMode", * // "etag": "my_etag", * // "name": "my_name", + * // "replayProtection": "my_replayProtection", * // "updateTime": "my_updateTime" * // } * } @@ -8891,6 +8911,7 @@ export namespace firebaseappcheck_v1beta { * // "enforcementMode": "my_enforcementMode", * // "etag": "my_etag", * // "name": "my_name", + * // "replayProtection": "my_replayProtection", * // "updateTime": "my_updateTime" * // } * }, @@ -8902,6 +8923,7 @@ export namespace firebaseappcheck_v1beta { * // "enforcementMode": "my_enforcementMode", * // "etag": "my_etag", * // "name": "my_name", + * // "replayProtection": "my_replayProtection", * // "updateTime": "my_updateTime" * // } * } diff --git a/src/apis/firebaseappdistribution/v1.ts b/src/apis/firebaseappdistribution/v1.ts index ca7aa2d2f37..714b1ab095a 100644 --- a/src/apis/firebaseappdistribution/v1.ts +++ b/src/apis/firebaseappdistribution/v1.ts @@ -224,6 +224,10 @@ export namespace firebaseappdistribution_v1 { * The content type of the file derived from the file extension of the original file name used by the client. */ fromFileName?: string | null; + /** + * The content type of the file detected by Fusion ID. go/fusionid + */ + fromFusionId?: string | null; /** * The content type of the file as specified in the request headers, multipart headers, or RUPIO start request. */ @@ -232,6 +236,10 @@ export namespace firebaseappdistribution_v1 { * The content type of the file derived from the file extension of the URL path. The URL path is assumed to represent a file name (which is typically only true for agents that are providing a REST API). */ fromUrlPath?: string | null; + /** + * Metadata information from Fusion ID detection. Serialized FusionIdDetectionMetadata proto. Only set if from_fusion_id is set. + */ + fusionIdDetectionMetadata?: string | null; } /** * Backend response for a Diff get checksums response. For details on the Scotty Diff protocol, visit http://go/scotty-diff-protocol. diff --git a/src/apis/firebaseappdistribution/v1alpha.ts b/src/apis/firebaseappdistribution/v1alpha.ts index 982012a80c6..55338eb18c9 100644 --- a/src/apis/firebaseappdistribution/v1alpha.ts +++ b/src/apis/firebaseappdistribution/v1alpha.ts @@ -182,7 +182,7 @@ export namespace firebaseappdistribution_v1alpha { */ hint?: string | null; /** - * Optional. A description of criteria the agent should use to determine if the goal has been successfully completed + * Optional. A visual description of the screen's expected state after the step has been successfully completed. This is referred to as the "final screen assertion" in the Firebase console and CLI tools. This field must be provided for the last step in a test case, and is optional for all other steps. */ successCriteria?: string | null; /** @@ -449,6 +449,14 @@ export namespace firebaseappdistribution_v1alpha { * Output only. A tap action. */ tap?: Schema$AndroidxCrawlerOutputPoint; + /** + * Output only. The target folded state of the device in a set folded state action. The valid string values are device-dependent, and can be found using `adb shell cmd device_state print-states`. + */ + targetFoldedState?: string | null; + /** + * Output only. The target orientation of the device in a set orientation action. + */ + targetOrientation?: string | null; /** * Output only. A text input action, that types some text into whatever field is currently focused, if any. Unlike `enter_text` this action requires that the field be brought into focus first, for example by emitting a tap action before this one. */ @@ -780,6 +788,10 @@ export namespace firebaseappdistribution_v1alpha { * The name of the release test resource. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}/tests/{test\}` */ name?: string | null; + /** + * Optional. Input only. The custom Cloud Storage bucket where test results are stored. Format: `projects/{project_number\}/buckets/{bucket\}` If not provided, the default test lab bucket is used. + */ + resultsBucket?: string | null; /** * Optional. The test case that was used to generate this release test. Note: The test case may have changed or been deleted since the release test was created. Format: `projects/{project_number\}/apps/{app\}/testCases/{test_case\}` */ @@ -894,6 +906,10 @@ export namespace firebaseappdistribution_v1alpha { * Identifier. The name of the test configuration resource. Format: `projects/{project_number\}/apps/{app\}/testConfig` */ name?: string | null; + /** + * Optional. The custom Cloud Storage bucket where test results are stored. Format: `projects/{project_number\}/buckets/{bucket\}` If not provided, the default test lab bucket is used. + */ + resultsBucket?: string | null; /** * Optional. Configuration for Robo crawler */ @@ -2465,6 +2481,7 @@ export namespace firebaseappdistribution_v1alpha { * // { * // "displayName": "my_displayName", * // "name": "my_name", + * // "resultsBucket": "my_resultsBucket", * // "roboCrawler": {}, * // "testDevices": [] * // } @@ -2615,6 +2632,7 @@ export namespace firebaseappdistribution_v1alpha { * // { * // "displayName": "my_displayName", * // "name": "my_name", + * // "resultsBucket": "my_resultsBucket", * // "roboCrawler": {}, * // "testDevices": [] * // } @@ -2626,6 +2644,7 @@ export namespace firebaseappdistribution_v1alpha { * // { * // "displayName": "my_displayName", * // "name": "my_name", + * // "resultsBucket": "my_resultsBucket", * // "roboCrawler": {}, * // "testDevices": [] * // } @@ -2967,6 +2986,7 @@ export namespace firebaseappdistribution_v1alpha { * // "displayName": "my_displayName", * // "loginCredential": {}, * // "name": "my_name", + * // "resultsBucket": "my_resultsBucket", * // "testCase": "my_testCase", * // "testState": "my_testState" * // } @@ -2983,6 +3003,7 @@ export namespace firebaseappdistribution_v1alpha { * // "displayName": "my_displayName", * // "loginCredential": {}, * // "name": "my_name", + * // "resultsBucket": "my_resultsBucket", * // "testCase": "my_testCase", * // "testState": "my_testState" * // } @@ -3138,6 +3159,7 @@ export namespace firebaseappdistribution_v1alpha { * // "displayName": "my_displayName", * // "loginCredential": {}, * // "name": "my_name", + * // "resultsBucket": "my_resultsBucket", * // "testCase": "my_testCase", * // "testState": "my_testState" * // } diff --git a/src/apis/firebaseapphosting/v1.ts b/src/apis/firebaseapphosting/v1.ts index e03edbe51f6..a5278a87d94 100644 --- a/src/apis/firebaseapphosting/v1.ts +++ b/src/apis/firebaseapphosting/v1.ts @@ -648,7 +648,7 @@ export namespace firebaseapphosting_v1 { */ value?: string | null; /** - * Required. The name of the environment variable. - Must be a valid environment variable name (e.g. A-Z or underscores). - May not start with "FIREBASE" or "GOOGLE". - May not be a reserved environment variable for KNative/Cloud Run + * Required. The name of the environment variable. The environment variables reserved by [Cloud Run](https://docs.cloud.google.com/run/docs/configuring/services/environment-variables#reserved) should not be set. Additionally, variable names cannot start with "X_FIREBASE_". */ variable?: string | null; } @@ -1315,7 +1315,7 @@ export namespace firebaseapphosting_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1345,7 +1345,7 @@ export namespace firebaseapphosting_v1 { * * // Do the magic * const res = await firebaseapphosting.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1472,7 +1472,7 @@ export namespace firebaseapphosting_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/firebaseapphosting/v1beta.ts b/src/apis/firebaseapphosting/v1beta.ts index 41edb7f5e3f..0538c9094db 100644 --- a/src/apis/firebaseapphosting/v1beta.ts +++ b/src/apis/firebaseapphosting/v1beta.ts @@ -660,7 +660,7 @@ export namespace firebaseapphosting_v1beta { */ value?: string | null; /** - * Required. The name of the environment variable. - Must be a valid environment variable name (e.g. A-Z or underscores). - May not start with "FIREBASE" or "GOOGLE". - May not be a reserved environment variable for KNative/Cloud Run + * Required. The name of the environment variable. The environment variables reserved by [Cloud Run](https://docs.cloud.google.com/run/docs/configuring/services/environment-variables#reserved) should not be set. Additionally, variable names cannot start with "X_FIREBASE_". */ variable?: string | null; } @@ -779,6 +779,15 @@ export namespace firebaseapphosting_v1beta { */ unreachable?: string[] | null; } + /** + * Response message for a list of supported runtimes. + */ + export interface Schema$ListSupportedRuntimesResponse { + /** + * The list of supported runtimes. + */ + supportedRuntimes?: Schema$SupportedRuntime[]; + } /** * A set of updates including ACME challenges and DNS records that allow App Hosting to create an SSL certificate and establish project ownership for your domain name before you direct traffic to App Hosting servers. Use these updates to facilitate zero downtime migrations to App Hosting from other services. After you've made the recommended updates, check your custom domain's `ownershipState` and `certState`. To avoid downtime, they should be `OWNERSHIP_ACTIVE` and `CERT_ACTIVE`, respectively, before you update your `A` and `AAAA` records. */ @@ -1077,6 +1086,31 @@ export namespace firebaseapphosting_v1beta { */ message?: string | null; } + /** + * Represents a single FAH supported runtime. Although instances of this resource are parented by a project and location, the set of available runtimes may vary across projects and locations, for example, during staged rollouts of new runtime support. + */ + export interface Schema$SupportedRuntime { + /** + * Output only. True if Automatic Base Image Updates (ABIU) is supported for this runtime. + */ + automaticBaseImageUpdatesSupported?: boolean | null; + /** + * Output only. The time at which this runtime will be decommissioned. After this date, the runtime can no longer be used for new builds. + */ + decommissionTime?: string | null; + /** + * Output only. The time at which this runtime will effectively be deprecated. After this date, the runtime is still usable but may not receive new features or updates. + */ + deprecateTime?: string | null; + /** + * Identifier. The resource name of the supported runtime. Format: projects/{project\}/locations/{location\}/supportedRuntimes/{runtime_id\} + */ + name?: string | null; + /** + * Output only. The identifier of the runtime, e.g., "nodejs22". + */ + runtimeId?: string | null; + } /** * Controls traffic configuration for the backend. */ @@ -1179,12 +1213,15 @@ export namespace firebaseapphosting_v1beta { context: APIRequestContext; backends: Resource$Projects$Locations$Backends; operations: Resource$Projects$Locations$Operations; + supportedRuntimes: Resource$Projects$Locations$Supportedruntimes; constructor(context: APIRequestContext) { this.context = context; this.backends = new Resource$Projects$Locations$Backends(this.context); this.operations = new Resource$Projects$Locations$Operations( this.context ); + this.supportedRuntimes = + new Resource$Projects$Locations$Supportedruntimes(this.context); } /** @@ -1327,7 +1364,7 @@ export namespace firebaseapphosting_v1beta { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1357,7 +1394,7 @@ export namespace firebaseapphosting_v1beta { * * // Do the magic * const res = await firebaseapphosting.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1484,7 +1521,7 @@ export namespace firebaseapphosting_v1beta { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -5529,4 +5566,170 @@ export namespace firebaseapphosting_v1beta { */ returnPartialSuccess?: boolean; } + + export class Resource$Projects$Locations$Supportedruntimes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists the runtimes supported by the backend. The list of runtimes may vary across projects and locations, for example, during staged rollouts of new runtime support. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/firebaseapphosting.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const firebaseapphosting = google.firebaseapphosting('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await firebaseapphosting.projects.locations.supportedRuntimes.list({ + * // Optional. The suggested number of runtimes to return. This field is ignored. We return all runtimes in a single page regardless of the page size. + * pageSize: 'placeholder-value', + * // Required. The parent, which owns this collection of SupportedRuntime. Format: projects/{project\}/locations/{location\} + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "supportedRuntimes": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Supportedruntimes$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Supportedruntimes$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Supportedruntimes$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Supportedruntimes$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Supportedruntimes$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Supportedruntimes$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Supportedruntimes$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Supportedruntimes$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://firebaseapphosting.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/supportedRuntimes').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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$Supportedruntimes$List extends StandardParameters { + /** + * Optional. The suggested number of runtimes to return. This field is ignored. We return all runtimes in a single page regardless of the page size. + */ + pageSize?: number; + /** + * Required. The parent, which owns this collection of SupportedRuntime. Format: projects/{project\}/locations/{location\} + */ + parent?: string; + } } diff --git a/src/apis/firebasedataconnect/README.md b/src/apis/firebasedataconnect/README.md index 1c7bacdb4e3..c81f337a449 100644 --- a/src/apis/firebasedataconnect/README.md +++ b/src/apis/firebasedataconnect/README.md @@ -2,7 +2,7 @@ # firebasedataconnect -> Firebase Data Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database. +> Firebase SQL Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database. ## Installation diff --git a/src/apis/firebasedataconnect/v1.ts b/src/apis/firebasedataconnect/v1.ts index d15d535eb88..78ef345a011 100644 --- a/src/apis/firebasedataconnect/v1.ts +++ b/src/apis/firebasedataconnect/v1.ts @@ -102,7 +102,7 @@ export namespace firebasedataconnect_v1 { /** * Firebase Data Connect API * - * Firebase Data Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database. + * Firebase SQL Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database. * * @example * ```js @@ -200,7 +200,7 @@ export namespace firebasedataconnect_v1 { updateTime?: string | null; } /** - * Data Connect specific properties for a path under response.data. + * SQL Connect specific properties for a path under response.data. */ export interface Schema$DataConnectProperties { /** @@ -221,7 +221,7 @@ export namespace firebasedataconnect_v1 { path?: any[] | null; } /** - * A data source that backs Firebase Data Connect services. + * A data source that backs Firebase SQL Connect services. */ export interface Schema$Datasource { /** @@ -238,7 +238,7 @@ export namespace firebasedataconnect_v1 { */ export interface Schema$Empty {} /** - * The ExecuteMutation request to Firebase Data Connect. + * The ExecuteMutation request to Firebase SQL Connect. */ export interface Schema$ExecuteMutationRequest { /** @@ -251,7 +251,7 @@ export namespace firebasedataconnect_v1 { variables?: {[key: string]: any} | null; } /** - * The ExecuteMutation response from Firebase Data Connect. + * The ExecuteMutation response from Firebase SQL Connect. */ export interface Schema$ExecuteMutationResponse { /** @@ -268,7 +268,7 @@ export namespace firebasedataconnect_v1 { extensions?: Schema$GraphqlResponseExtensions; } /** - * The ExecuteQuery request to Firebase Data Connect. + * The ExecuteQuery request to Firebase SQL Connect. */ export interface Schema$ExecuteQueryRequest { /** @@ -281,7 +281,7 @@ export namespace firebasedataconnect_v1 { variables?: {[key: string]: any} | null; } /** - * The ExecuteQuery response from Firebase Data Connect. + * The ExecuteQuery response from Firebase SQL Connect. */ export interface Schema$ExecuteQueryResponse { /** @@ -311,7 +311,7 @@ export namespace firebasedataconnect_v1 { path?: string | null; } /** - * GraphqlError conforms to the GraphQL error spec. https://spec.graphql.org/draft/#sec-Errors Firebase Data Connect API surfaces `GraphqlError` in various APIs: - Upon compile error, `UpdateSchema` and `UpdateConnector` return Code.Invalid_Argument with a list of `GraphqlError` in error details. - Upon query compile error, `ExecuteGraphql`, `ExecuteGraphqlRead` and `IntrospectGraphql` return Code.OK with a list of `GraphqlError` in response body. - Upon query execution error, `ExecuteGraphql`, `ExecuteGraphqlRead`, `ExecuteMutation`, `ExecuteQuery`, `IntrospectGraphql`, `ImpersonateQuery` and `ImpersonateMutation` all return Code.OK with a list of `GraphqlError` in response body. + * GraphqlError conforms to the GraphQL error spec. https://spec.graphql.org/draft/#sec-Errors Firebase SQL Connect API surfaces `GraphqlError` in various APIs: - Upon compile error, `UpdateSchema` and `UpdateConnector` return Code.Invalid_Argument with a list of `GraphqlError` in error details. - Upon query compile error, `ExecuteGraphql`, `ExecuteGraphqlRead` and `IntrospectGraphql` return Code.OK with a list of `GraphqlError` in response body. - Upon query execution error, `ExecuteGraphql`, `ExecuteGraphqlRead`, `ExecuteMutation`, `ExecuteQuery`, `IntrospectGraphql`, `ImpersonateQuery` and `ImpersonateMutation` all return Code.OK with a list of `GraphqlError` in response body. */ export interface Schema$GraphqlError { /** @@ -340,7 +340,7 @@ export namespace firebasedataconnect_v1 { */ code?: string | null; /** - * More detailed error message to assist debugging. It contains application business logic that are inappropriate to leak publicly. In the emulator, Data Connect API always includes it to assist local development and debugging. In the backend, ConnectorService always hides it. GraphqlService without impersonation always include it. GraphqlService with impersonation includes it only if explicitly opted-in with `include_debug_details` in `GraphqlRequestExtensions`. + * More detailed error message to assist debugging. It contains application business logic that are inappropriate to leak publicly. In the emulator, SQL Connect API always includes it to assist local development and debugging. In the backend, ConnectorService always hides it. GraphqlService without impersonation always include it. GraphqlService with impersonation includes it only if explicitly opted-in with `include_debug_details` in `GraphqlRequestExtensions`. */ debugDetails?: string | null; /** @@ -357,7 +357,7 @@ export namespace firebasedataconnect_v1 { workarounds?: Schema$Workaround[]; } /** - * The GraphQL request to Firebase Data Connect. It strives to match the GraphQL over HTTP spec. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#post + * The GraphQL request to Firebase SQL Connect. It strives to match the GraphQL over HTTP spec. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#post */ export interface Schema$GraphqlRequest { /** @@ -387,7 +387,7 @@ export namespace firebasedataconnect_v1 { impersonate?: Schema$Impersonation; } /** - * The GraphQL response from Firebase Data Connect. It strives to match the GraphQL over HTTP spec. Note: Firebase Data Connect always responds with `Content-Type: application/json`. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#body + * The GraphQL response from Firebase SQL Connect. It strives to match the GraphQL over HTTP spec. Note: Firebase SQL Connect always responds with `Content-Type: application/json`. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#body */ export interface Schema$GraphqlResponse { /** @@ -408,7 +408,7 @@ export namespace firebasedataconnect_v1 { */ export interface Schema$GraphqlResponseExtensions { /** - * Data Connect specific GraphQL extension, a list of paths and properties. + * SQL Connect specific GraphQL extension, a list of paths and properties. */ dataConnect?: Schema$DataConnectProperties[]; } @@ -426,7 +426,7 @@ export namespace firebasedataconnect_v1 { uri?: string | null; } /** - * The Impersonate request to Firebase Data Connect. + * The Impersonate request to Firebase SQL Connect. */ export interface Schema$ImpersonateRequest { /** @@ -636,9 +636,13 @@ export namespace firebasedataconnect_v1 { */ database?: string | null; /** - * Output only. Ephemeral is true if this data connect service is served from temporary in-memory emulation of Postgres. While Cloud SQL is being provisioned, the data connect service provides the ephemeral service to help developers get started. Once the Cloud SQL is provisioned, Data Connect service will transfer its data on a best-effort basis to the Cloud SQL instance. WARNING: Ephemeral data sources will expire after 24 hour. The data will be lost if they aren't transferred to the Cloud SQL instance. WARNING: When `ephemeral=true`, mutations to the database are not guaranteed to be durably persisted, even if an OK status code is returned. All or parts of the data may be lost or reverted to earlier versions. + * Output only. Ephemeral is true if this SQL Connect service is served from temporary in-memory emulation of Postgres. While Cloud SQL is being provisioned, the SQL Connect service provides the ephemeral service to help developers get started. Once the Cloud SQL is provisioned, SQL Connect service will transfer its data on a best-effort basis to the Cloud SQL instance. WARNING: Ephemeral data sources will expire after 24 hour. The data will be lost if they aren't transferred to the Cloud SQL instance. WARNING: When `ephemeral=true`, mutations to the database are not guaranteed to be durably persisted, even if an OK status code is returned. All or parts of the data may be lost or reverted to earlier versions. */ ephemeral?: boolean | null; + /** + * Optional. User-configured PostgreSQL schema. Defaults to "public" if not specified. + */ + schema?: string | null; /** * Optional. Configure how to perform Postgresql schema migration. */ @@ -653,7 +657,7 @@ export namespace firebasedataconnect_v1 { unlinked?: boolean | null; } /** - * The application schema of a Firebase Data Connect service. + * The application schema of a Firebase SQL Connect service. */ export interface Schema$Schema { /** @@ -702,7 +706,7 @@ export namespace firebasedataconnect_v1 { updateTime?: string | null; } /** - * A Firebase Data Connect service. + * A Firebase SQL Connect service. */ export interface Schema$Service { /** @@ -726,7 +730,7 @@ export namespace firebasedataconnect_v1 { */ labels?: {[key: string]: string} | null; /** - * Identifier. The relative resource name of the Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` Note that the service ID is specific to Firebase Data Connect and does not correspond to any of the instance IDs of the underlying data source connections. + * Identifier. The relative resource name of the Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` Note that the service ID is specific to Firebase SQL Connect and does not correspond to any of the instance IDs of the underlying data source connections. */ name?: string | null; /** @@ -960,7 +964,7 @@ export namespace firebasedataconnect_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -990,7 +994,7 @@ export namespace firebasedataconnect_v1 { * * // Do the magic * const res = await firebasedataconnect.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1117,7 +1121,7 @@ export namespace firebasedataconnect_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -2080,7 +2084,7 @@ export namespace firebasedataconnect_v1 { } /** - * Execute any GraphQL query and mutation against the Firebase Data Connect's generated GraphQL schema. Grants full read and write access to the connected data sources. Note: Use introspection query to explore the generated GraphQL schema. + * Execute any GraphQL query or mutation against the Firebase SQL Connect's generated GraphQL schema. Grants full read and write access to the connected data sources. Note: Use introspection query to explore the generated GraphQL schema. * @example * ```js * // Before running the sample: @@ -2111,7 +2115,7 @@ export namespace firebasedataconnect_v1 { * // Do the magic * const res = * await firebasedataconnect.projects.locations.services.executeGraphql({ - * // Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` + * // Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` * name: 'projects/my-project/locations/my-location/services/my-service', * * // Request body metadata @@ -2235,7 +2239,7 @@ export namespace firebasedataconnect_v1 { } /** - * Execute any GraphQL query against the Firebase Data Connect's generated GraphQL schema. Grants full read to the connected data sources. `ExecuteGraphqlRead` is identical to `ExecuteGraphql` except it only accepts read-only query. + * Execute any GraphQL query against the Firebase SQL Connect's generated GraphQL schema. Grants full read to the connected data sources. `ExecuteGraphqlRead` is identical to `ExecuteGraphql` except it only accepts read-only query. * @example * ```js * // Before running the sample: @@ -2266,7 +2270,7 @@ export namespace firebasedataconnect_v1 { * // Do the magic * const res = * await firebasedataconnect.projects.locations.services.executeGraphqlRead({ - * // Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` + * // Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` * name: 'projects/my-project/locations/my-location/services/my-service', * * // Request body metadata @@ -2533,7 +2537,7 @@ export namespace firebasedataconnect_v1 { } /** - * Execute introspection query against the Firebase Data Connect's generated GraphQL schema. GraphQL introspection query provides metadata such as what tables the schema have, what queries and mutations can be performed on the schema, and so on. Read more at https://graphql.org/learn/introspection. IntrospectGraphql can read schema metadata but cannot read rows from Cloud SQL instance, which can be done via ExecuteGraphqlRead. + * Execute introspection query against the Firebase SQL Connect's generated GraphQL schema. GraphQL introspection query provides metadata such as what tables the schema have, what queries and mutations can be performed on the schema, and so on. Read more at https://graphql.org/learn/introspection. IntrospectGraphql can read schema metadata but cannot read rows from Cloud SQL instance, which can be done via ExecuteGraphqlRead. * @example * ```js * // Before running the sample: @@ -2564,7 +2568,7 @@ export namespace firebasedataconnect_v1 { * // Do the magic * const res = * await firebasedataconnect.projects.locations.services.introspectGraphql({ - * // Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` + * // Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` * name: 'projects/my-project/locations/my-location/services/my-service', * * // Request body metadata @@ -2870,7 +2874,7 @@ export namespace firebasedataconnect_v1 { * const res = await firebasedataconnect.projects.locations.services.patch({ * // Optional. If true and the Service is not found, a new Service will be created. In this case, `update_mask` is ignored. * allowMissing: 'placeholder-value', - * // Identifier. The relative resource name of the Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` Note that the service ID is specific to Firebase Data Connect and does not correspond to any of the instance IDs of the underlying data source connections. + * // Identifier. The relative resource name of the Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` Note that the service ID is specific to Firebase SQL Connect and does not correspond to any of the instance IDs of the underlying data source connections. * name: 'projects/my-project/locations/my-location/services/my-service', * // 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: 'placeholder-value', @@ -3052,7 +3056,7 @@ export namespace firebasedataconnect_v1 { } export interface Params$Resource$Projects$Locations$Services$Executegraphql extends StandardParameters { /** - * Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` + * Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` */ name?: string; @@ -3063,7 +3067,7 @@ export namespace firebasedataconnect_v1 { } export interface Params$Resource$Projects$Locations$Services$Executegraphqlread extends StandardParameters { /** - * Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` + * Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` */ name?: string; @@ -3080,7 +3084,7 @@ export namespace firebasedataconnect_v1 { } export interface Params$Resource$Projects$Locations$Services$Introspectgraphql extends StandardParameters { /** - * Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` + * Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` */ name?: string; @@ -3117,7 +3121,7 @@ export namespace firebasedataconnect_v1 { */ allowMissing?: boolean; /** - * Identifier. The relative resource name of the Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` Note that the service ID is specific to Firebase Data Connect and does not correspond to any of the instance IDs of the underlying data source connections. + * Identifier. The relative resource name of the Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` Note that the service ID is specific to Firebase SQL Connect and does not correspond to any of the instance IDs of the underlying data source connections. */ name?: string; /** @@ -3926,7 +3930,7 @@ export namespace firebasedataconnect_v1 { } /** - * Impersonate a mutation defined on a Firebase Data Connect connector. It grants the admin SDK access to mutations defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely. + * Impersonate a mutation defined on a Firebase SQL Connect connector. It grants the admin SDK access to mutations defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely. * @example * ```js * // Before running the sample: @@ -4082,7 +4086,7 @@ export namespace firebasedataconnect_v1 { } /** - * Impersonate a query defined on a Firebase Data Connect connector. It grants the admin SDK access to queries defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely. + * Impersonate a query defined on a Firebase SQL Connect connector. It grants the admin SDK access to queries defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely. * @example * ```js * // Before running the sample: diff --git a/src/apis/firebasedataconnect/v1beta.ts b/src/apis/firebasedataconnect/v1beta.ts index 7d5f25278d9..8a58b14495a 100644 --- a/src/apis/firebasedataconnect/v1beta.ts +++ b/src/apis/firebasedataconnect/v1beta.ts @@ -102,7 +102,7 @@ export namespace firebasedataconnect_v1beta { /** * Firebase Data Connect API * - * Firebase Data Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database. + * Firebase SQL Connect is a relational database service for mobile and web apps that lets you build and scale using a fully-managed PostgreSQL database powered by Cloud SQL. The REST API lets developers manage the connections to their database, change the schema of their database, and query the database. * * @example * ```js @@ -200,7 +200,7 @@ export namespace firebasedataconnect_v1beta { updateTime?: string | null; } /** - * Data Connect specific properties for a path under response.data. + * SQL Connect specific properties for a path under response.data. */ export interface Schema$DataConnectProperties { /** @@ -221,7 +221,7 @@ export namespace firebasedataconnect_v1beta { path?: any[] | null; } /** - * A data source that backs Firebase Data Connect services. + * A data source that backs Firebase SQL Connect services. */ export interface Schema$Datasource { /** @@ -238,7 +238,7 @@ export namespace firebasedataconnect_v1beta { */ export interface Schema$Empty {} /** - * The ExecuteMutation request to Firebase Data Connect. + * The ExecuteMutation request to Firebase SQL Connect. */ export interface Schema$ExecuteMutationRequest { /** @@ -251,7 +251,7 @@ export namespace firebasedataconnect_v1beta { variables?: {[key: string]: any} | null; } /** - * The ExecuteMutation response from Firebase Data Connect. + * The ExecuteMutation response from Firebase SQL Connect. */ export interface Schema$ExecuteMutationResponse { /** @@ -268,7 +268,7 @@ export namespace firebasedataconnect_v1beta { extensions?: Schema$GraphqlResponseExtensions; } /** - * The ExecuteQuery request to Firebase Data Connect. + * The ExecuteQuery request to Firebase SQL Connect. */ export interface Schema$ExecuteQueryRequest { /** @@ -281,7 +281,7 @@ export namespace firebasedataconnect_v1beta { variables?: {[key: string]: any} | null; } /** - * The ExecuteQuery response from Firebase Data Connect. + * The ExecuteQuery response from Firebase SQL Connect. */ export interface Schema$ExecuteQueryResponse { /** @@ -311,7 +311,7 @@ export namespace firebasedataconnect_v1beta { path?: string | null; } /** - * GraphqlError conforms to the GraphQL error spec. https://spec.graphql.org/draft/#sec-Errors Firebase Data Connect API surfaces `GraphqlError` in various APIs: - Upon compile error, `UpdateSchema` and `UpdateConnector` return Code.Invalid_Argument with a list of `GraphqlError` in error details. - Upon query compile error, `ExecuteGraphql`, `ExecuteGraphqlRead` and `IntrospectGraphql` return Code.OK with a list of `GraphqlError` in response body. - Upon query execution error, `ExecuteGraphql`, `ExecuteGraphqlRead`, `ExecuteMutation`, `ExecuteQuery`, `IntrospectGraphql`, `ImpersonateQuery` and `ImpersonateMutation` all return Code.OK with a list of `GraphqlError` in response body. + * GraphqlError conforms to the GraphQL error spec. https://spec.graphql.org/draft/#sec-Errors Firebase SQL Connect API surfaces `GraphqlError` in various APIs: - Upon compile error, `UpdateSchema` and `UpdateConnector` return Code.Invalid_Argument with a list of `GraphqlError` in error details. - Upon query compile error, `ExecuteGraphql`, `ExecuteGraphqlRead` and `IntrospectGraphql` return Code.OK with a list of `GraphqlError` in response body. - Upon query execution error, `ExecuteGraphql`, `ExecuteGraphqlRead`, `ExecuteMutation`, `ExecuteQuery`, `IntrospectGraphql`, `ImpersonateQuery` and `ImpersonateMutation` all return Code.OK with a list of `GraphqlError` in response body. */ export interface Schema$GraphqlError { /** @@ -340,7 +340,7 @@ export namespace firebasedataconnect_v1beta { */ code?: string | null; /** - * More detailed error message to assist debugging. It contains application business logic that are inappropriate to leak publicly. In the emulator, Data Connect API always includes it to assist local development and debugging. In the backend, ConnectorService always hides it. GraphqlService without impersonation always include it. GraphqlService with impersonation includes it only if explicitly opted-in with `include_debug_details` in `GraphqlRequestExtensions`. + * More detailed error message to assist debugging. It contains application business logic that are inappropriate to leak publicly. In the emulator, SQL Connect API always includes it to assist local development and debugging. In the backend, ConnectorService always hides it. GraphqlService without impersonation always include it. GraphqlService with impersonation includes it only if explicitly opted-in with `include_debug_details` in `GraphqlRequestExtensions`. */ debugDetails?: string | null; /** @@ -357,7 +357,7 @@ export namespace firebasedataconnect_v1beta { workarounds?: Schema$Workaround[]; } /** - * The GraphQL request to Firebase Data Connect. It strives to match the GraphQL over HTTP spec. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#post + * The GraphQL request to Firebase SQL Connect. It strives to match the GraphQL over HTTP spec. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#post */ export interface Schema$GraphqlRequest { /** @@ -387,7 +387,7 @@ export namespace firebasedataconnect_v1beta { impersonate?: Schema$Impersonation; } /** - * The GraphQL response from Firebase Data Connect. It strives to match the GraphQL over HTTP spec. Note: Firebase Data Connect always responds with `Content-Type: application/json`. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#body + * The GraphQL response from Firebase SQL Connect. It strives to match the GraphQL over HTTP spec. Note: Firebase SQL Connect always responds with `Content-Type: application/json`. https://github.com/graphql/graphql-over-http/blob/main/spec/GraphQLOverHTTP.md#body */ export interface Schema$GraphqlResponse { /** @@ -408,7 +408,7 @@ export namespace firebasedataconnect_v1beta { */ export interface Schema$GraphqlResponseExtensions { /** - * Data Connect specific GraphQL extension, a list of paths and properties. + * SQL Connect specific GraphQL extension, a list of paths and properties. */ dataConnect?: Schema$DataConnectProperties[]; } @@ -426,7 +426,7 @@ export namespace firebasedataconnect_v1beta { uri?: string | null; } /** - * The Impersonate request to Firebase Data Connect. + * The Impersonate request to Firebase SQL Connect. */ export interface Schema$ImpersonateRequest { /** @@ -636,9 +636,13 @@ export namespace firebasedataconnect_v1beta { */ database?: string | null; /** - * Output only. Ephemeral is true if this data connect service is served from temporary in-memory emulation of Postgres. While Cloud SQL is being provisioned, the data connect service provides the ephemeral service to help developers get started. Once the Cloud SQL is provisioned, Data Connect service will transfer its data on a best-effort basis to the Cloud SQL instance. WARNING: Ephemeral data sources will expire after 24 hour. The data will be lost if they aren't transferred to the Cloud SQL instance. WARNING: When `ephemeral=true`, mutations to the database are not guaranteed to be durably persisted, even if an OK status code is returned. All or parts of the data may be lost or reverted to earlier versions. + * Output only. Ephemeral is true if this SQL Connect service is served from temporary in-memory emulation of Postgres. While Cloud SQL is being provisioned, the SQL Connect service provides the ephemeral service to help developers get started. Once the Cloud SQL is provisioned, SQL Connect service will transfer its data on a best-effort basis to the Cloud SQL instance. WARNING: Ephemeral data sources will expire after 24 hour. The data will be lost if they aren't transferred to the Cloud SQL instance. WARNING: When `ephemeral=true`, mutations to the database are not guaranteed to be durably persisted, even if an OK status code is returned. All or parts of the data may be lost or reverted to earlier versions. */ ephemeral?: boolean | null; + /** + * Optional. User-configured PostgreSQL schema. Defaults to "public" if not specified. + */ + schema?: string | null; /** * Optional. Configure how to perform Postgresql schema migration. */ @@ -653,7 +657,7 @@ export namespace firebasedataconnect_v1beta { unlinked?: boolean | null; } /** - * The application schema of a Firebase Data Connect service. + * The application schema of a Firebase SQL Connect service. */ export interface Schema$Schema { /** @@ -702,7 +706,7 @@ export namespace firebasedataconnect_v1beta { updateTime?: string | null; } /** - * A Firebase Data Connect service. + * A Firebase SQL Connect service. */ export interface Schema$Service { /** @@ -726,7 +730,7 @@ export namespace firebasedataconnect_v1beta { */ labels?: {[key: string]: string} | null; /** - * Identifier. The relative resource name of the Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` Note that the service ID is specific to Firebase Data Connect and does not correspond to any of the instance IDs of the underlying data source connections. + * Identifier. The relative resource name of the Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` Note that the service ID is specific to Firebase SQL Connect and does not correspond to any of the instance IDs of the underlying data source connections. */ name?: string | null; /** @@ -960,7 +964,7 @@ export namespace firebasedataconnect_v1beta { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -990,7 +994,7 @@ export namespace firebasedataconnect_v1beta { * * // Do the magic * const res = await firebasedataconnect.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1117,7 +1121,7 @@ export namespace firebasedataconnect_v1beta { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -2083,7 +2087,7 @@ export namespace firebasedataconnect_v1beta { } /** - * Execute any GraphQL query and mutation against the Firebase Data Connect's generated GraphQL schema. Grants full read and write access to the connected data sources. Note: Use introspection query to explore the generated GraphQL schema. + * Execute any GraphQL query or mutation against the Firebase SQL Connect's generated GraphQL schema. Grants full read and write access to the connected data sources. Note: Use introspection query to explore the generated GraphQL schema. * @example * ```js * // Before running the sample: @@ -2114,7 +2118,7 @@ export namespace firebasedataconnect_v1beta { * // Do the magic * const res = * await firebasedataconnect.projects.locations.services.executeGraphql({ - * // Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` + * // Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` * name: 'projects/my-project/locations/my-location/services/my-service', * * // Request body metadata @@ -2238,7 +2242,7 @@ export namespace firebasedataconnect_v1beta { } /** - * Execute any GraphQL query against the Firebase Data Connect's generated GraphQL schema. Grants full read to the connected data sources. `ExecuteGraphqlRead` is identical to `ExecuteGraphql` except it only accepts read-only query. + * Execute any GraphQL query against the Firebase SQL Connect's generated GraphQL schema. Grants full read to the connected data sources. `ExecuteGraphqlRead` is identical to `ExecuteGraphql` except it only accepts read-only query. * @example * ```js * // Before running the sample: @@ -2269,7 +2273,7 @@ export namespace firebasedataconnect_v1beta { * // Do the magic * const res = * await firebasedataconnect.projects.locations.services.executeGraphqlRead({ - * // Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` + * // Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` * name: 'projects/my-project/locations/my-location/services/my-service', * * // Request body metadata @@ -2536,7 +2540,7 @@ export namespace firebasedataconnect_v1beta { } /** - * Execute introspection query against the Firebase Data Connect's generated GraphQL schema. GraphQL introspection query provides metadata such as what tables the schema have, what queries and mutations can be performed on the schema, and so on. Read more at https://graphql.org/learn/introspection. IntrospectGraphql can read schema metadata but cannot read rows from Cloud SQL instance, which can be done via ExecuteGraphqlRead. + * Execute introspection query against the Firebase SQL Connect's generated GraphQL schema. GraphQL introspection query provides metadata such as what tables the schema have, what queries and mutations can be performed on the schema, and so on. Read more at https://graphql.org/learn/introspection. IntrospectGraphql can read schema metadata but cannot read rows from Cloud SQL instance, which can be done via ExecuteGraphqlRead. * @example * ```js * // Before running the sample: @@ -2567,7 +2571,7 @@ export namespace firebasedataconnect_v1beta { * // Do the magic * const res = * await firebasedataconnect.projects.locations.services.introspectGraphql({ - * // Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` + * // Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` * name: 'projects/my-project/locations/my-location/services/my-service', * * // Request body metadata @@ -2873,7 +2877,7 @@ export namespace firebasedataconnect_v1beta { * const res = await firebasedataconnect.projects.locations.services.patch({ * // Optional. If true and the Service is not found, a new Service will be created. In this case, `update_mask` is ignored. * allowMissing: 'placeholder-value', - * // Identifier. The relative resource name of the Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` Note that the service ID is specific to Firebase Data Connect and does not correspond to any of the instance IDs of the underlying data source connections. + * // Identifier. The relative resource name of the Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` Note that the service ID is specific to Firebase SQL Connect and does not correspond to any of the instance IDs of the underlying data source connections. * name: 'projects/my-project/locations/my-location/services/my-service', * // 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: 'placeholder-value', @@ -3055,7 +3059,7 @@ export namespace firebasedataconnect_v1beta { } export interface Params$Resource$Projects$Locations$Services$Executegraphql extends StandardParameters { /** - * Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` + * Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` */ name?: string; @@ -3066,7 +3070,7 @@ export namespace firebasedataconnect_v1beta { } export interface Params$Resource$Projects$Locations$Services$Executegraphqlread extends StandardParameters { /** - * Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` + * Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` */ name?: string; @@ -3083,7 +3087,7 @@ export namespace firebasedataconnect_v1beta { } export interface Params$Resource$Projects$Locations$Services$Introspectgraphql extends StandardParameters { /** - * Required. The relative resource name of Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` + * Required. The relative resource name of Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` */ name?: string; @@ -3120,7 +3124,7 @@ export namespace firebasedataconnect_v1beta { */ allowMissing?: boolean; /** - * Identifier. The relative resource name of the Firebase Data Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` Note that the service ID is specific to Firebase Data Connect and does not correspond to any of the instance IDs of the underlying data source connections. + * Identifier. The relative resource name of the Firebase SQL Connect service, in the format: ``` projects/{project\}/locations/{location\}/services/{service\} ``` Note that the service ID is specific to Firebase SQL Connect and does not correspond to any of the instance IDs of the underlying data source connections. */ name?: string; /** @@ -3929,7 +3933,7 @@ export namespace firebasedataconnect_v1beta { } /** - * Impersonate a mutation defined on a Firebase Data Connect connector. It grants the admin SDK access to mutations defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely. + * Impersonate a mutation defined on a Firebase SQL Connect connector. It grants the admin SDK access to mutations defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely. * @example * ```js * // Before running the sample: @@ -4085,7 +4089,7 @@ export namespace firebasedataconnect_v1beta { } /** - * Impersonate a query defined on a Firebase Data Connect connector. It grants the admin SDK access to queries defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely. + * Impersonate a query defined on a Firebase SQL Connect connector. It grants the admin SDK access to queries defined in the given connector. The caller can choose to impersonate a particular Firebase Auth user, or skip @auth completely. * @example * ```js * // Before running the sample: diff --git a/src/apis/firebaseml/v2beta.ts b/src/apis/firebaseml/v2beta.ts index 5c9de1ed006..3a0eee6f0c8 100644 --- a/src/apis/firebaseml/v2beta.ts +++ b/src/apis/firebaseml/v2beta.ts @@ -358,7 +358,7 @@ export namespace firebaseml_v2beta { citations?: Schema$GoogleCloudAiplatformV1beta1Citation[]; } /** - * Result of executing the [ExecutableCode]. Only generated when using the [CodeExecution] tool, and always follows a `part` containing the [ExecutableCode]. + * Result of executing the ExecutableCode. Generated only when the `CodeExecution` tool is used. */ export interface Schema$GoogleCloudAiplatformV1beta1CodeExecutionResult { /** @@ -456,7 +456,7 @@ export namespace firebaseml_v2beta { excludeDomains?: string[] | null; } /** - * Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the [CodeExecution] tool, in which the code will be automatically executed, and a corresponding [CodeExecutionResult] will also be generated. + * Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the `CodeExecution` tool, in which the code will be automatically executed, and a corresponding CodeExecutionResult will also be generated. */ export interface Schema$GoogleCloudAiplatformV1beta1ExecutableCode { /** @@ -536,11 +536,11 @@ export namespace firebaseml_v2beta { mimeType?: string | null; } /** - * A predicted [FunctionCall] returned from the model that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing the parameters and their values. + * A predicted FunctionCall returned from the model that contains a string representing the FunctionDeclaration.name and a structured JSON object containing the parameters and their values. */ export interface Schema$GoogleCloudAiplatformV1beta1FunctionCall { /** - * Optional. The function parameters and values in JSON object format. See [FunctionDeclaration.parameters] for parameter details. + * Optional. The function parameters and values in JSON object format. See FunctionDeclaration.parameters for parameter details. */ args?: {[key: string]: any} | null; /** @@ -548,7 +548,7 @@ export namespace firebaseml_v2beta { */ id?: string | null; /** - * Optional. The name of the function to call. Matches [FunctionDeclaration.name]. + * Optional. The name of the function to call. Matches FunctionDeclaration.name. */ name?: string | null; /** @@ -565,7 +565,7 @@ export namespace firebaseml_v2beta { */ export interface Schema$GoogleCloudAiplatformV1beta1FunctionCallingConfig { /** - * Optional. Function names to call. Only set when the Mode is ANY. Function names should match [FunctionDeclaration.name]. With mode set to ANY, model will predict a function call from the set of function names provided. + * Optional. Function names to call. Only set when the Mode is ANY. Function names should match FunctionDeclaration.name. With mode set to ANY, model will predict a function call from the set of function names provided. */ allowedFunctionNames?: string[] | null; /** @@ -573,7 +573,7 @@ export namespace firebaseml_v2beta { */ mode?: string | null; /** - * Optional. When set to true, arguments of a single function call will be streamed out in multiple parts/contents/responses. Partial parameter results will be returned in the [FunctionCall.partial_args] field. + * Optional. When set to true, arguments of a single function call will be streamed out in multiple parts/contents/responses. Partial parameter results will be returned in the `FunctionCall.partial_args` field. */ streamFunctionCallArguments?: boolean | null; } @@ -586,7 +586,7 @@ export namespace firebaseml_v2beta { */ description?: string | null; /** - * Required. The name of the function to call. Must start with a letter or an underscore. Must be a-z, A-Z, 0-9, or contain underscores, dots, colons and dashes, with a maximum length of 64. + * Required. The name of the function to call. Must start with a letter or an underscore. Must be a-z, A-Z, 0-9, or contain underscores, dots, colons and dashes, with a maximum length of 128. */ name?: string | null; /** @@ -607,7 +607,7 @@ export namespace firebaseml_v2beta { responseJsonSchema?: any | null; } /** - * The result output from a [FunctionCall] that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a [FunctionCall] made based on model prediction. + * The result output from a FunctionCall that contains a string representing the FunctionDeclaration.name and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a `FunctionCall` made based on model prediction. */ export interface Schema$GoogleCloudAiplatformV1beta1FunctionResponse { /** @@ -615,7 +615,7 @@ export namespace firebaseml_v2beta { */ id?: string | null; /** - * Required. The name of the function to call. Matches [FunctionDeclaration.name] and [FunctionCall.name]. + * Required. The name of the function to call. Matches FunctionDeclaration.name and FunctionCall.name. */ name?: string | null; /** @@ -867,7 +867,7 @@ export namespace firebaseml_v2beta { */ responseLogprobs?: boolean | null; /** - * Optional. The IANA standard MIME type of the response. The model will generate output that conforms to this MIME type. Supported values include 'text/plain' (default) and 'application/json'. The model needs to be prompted to output the appropriate response type, otherwise the behavior is undefined. This is a preview feature. + * Optional. The IANA standard MIME type of the response. The model will generate output that conforms to this MIME type. Supported values include 'text/plain' (default) and 'application/json'. The model needs to be prompted to output the appropriate response type, otherwise the behavior is undefined. */ responseMimeType?: string | null; /** @@ -1237,6 +1237,10 @@ export namespace firebaseml_v2beta { * Optional. Controls whether the model can generate people. */ personGeneration?: string | null; + /** + * Optional. Controls whether prominent people (celebrities) generation is allowed. If used with personGeneration, personGeneration enum would take precedence. For instance, if ALLOW_NONE is set, all person generation would be blocked. If this field is unspecified, the default behavior is to allow prominent people. + */ + prominentPeople?: string | null; } /** * The image output format for generated images. @@ -1425,6 +1429,14 @@ export namespace firebaseml_v2beta { * A RagChunk includes the content of a chunk of a RagFile, and associated metadata. */ export interface Schema$GoogleCloudAiplatformV1beta1RagChunk { + /** + * The ID of the chunk. + */ + chunkId?: string | null; + /** + * The ID of the file that the chunk belongs to. + */ + fileId?: string | null; /** * If populated, represents where the chunk starts and ends in the document. */ @@ -1848,7 +1860,7 @@ export namespace firebaseml_v2beta { urlContext?: Schema$GoogleCloudAiplatformV1beta1UrlContext; } /** - * Tool that executes code generated by the model, and automatically returns the result to the model. See also [ExecutableCode]and [CodeExecutionResult] which are input and output to this tool. + * Tool that executes code generated by the model, and automatically returns the result to the model. See also ExecutableCode and CodeExecutionResult, which are input and output to this tool. */ export interface Schema$GoogleCloudAiplatformV1beta1ToolCodeExecution {} /** diff --git a/src/apis/firestore/v1.ts b/src/apis/firestore/v1.ts index 9542dc6c20b..1d977ac01c4 100644 --- a/src/apis/firestore/v1.ts +++ b/src/apis/firestore/v1.ts @@ -916,7 +916,7 @@ export namespace firestore_v1 { */ cmekConfig?: Schema$GoogleFirestoreAdminV1CmekConfig; /** - * The concurrency control mode to use for this database. If unspecified in a CreateDatabase request, this will default based on the database edition: Optimistic for Enterprise and Pessimistic for all other databases. + * The default concurrency control mode to use for this database. If unspecified in a CreateDatabase request, this will default based on the database edition: Optimistic for Enterprise and Pessimistic for all other databases. While transactions can explicitly specify their own concurrency mode, this setting defines the default behavior when left unspecified. Important: This database-level setting is not respected for Firestore with MongoDB compatibility. All transactions through the MongoDB compatibility layer will use optimistic concurrency control, regardless of this setting. */ concurrencyMode?: string | null; /** @@ -956,7 +956,7 @@ export namespace firestore_v1 { */ keyPrefix?: string | null; /** - * The location of the database. Available locations are listed at https://cloud.google.com/firestore/docs/locations. + * Required. The location of the database. Available locations are listed at https://cloud.google.com/firestore/docs/locations. */ locationId?: string | null; /** @@ -988,7 +988,7 @@ export namespace firestore_v1 { */ tags?: {[key: string]: string} | null; /** - * The type of the database. See https://cloud.google.com/datastore/docs/firestore-or-datastore for information about how to choose. + * Required. The type of the database. See https://cloud.google.com/datastore/docs/firestore-or-datastore for information about how to choose. */ type?: string | null; /** @@ -1248,6 +1248,10 @@ export namespace firestore_v1 { * Indexes with a collection query scope specified allow queries against a collection that is the child of a specific document, specified at query time, and that has the same collection ID. Indexes with a collection group query scope specified allow queries against all collections descended from a specific document, specified at query time, and that have the same collection ID as this index. */ queryScope?: string | null; + /** + * Optional. Options for search indexes that are at the index definition level. This field is only currently supported for indexes with MONGODB_COMPATIBLE_API ApiScope. + */ + searchIndexOptions?: Schema$GoogleFirestoreAdminV1SearchIndexOptions; /** * Optional. The number of shards for the index. */ @@ -1311,6 +1315,10 @@ export namespace firestore_v1 { * Indicates that this field supports ordering by the specified order or comparing using =, !=, <, <=, \>, \>=. */ order?: string | null; + /** + * Indicates that this field supports search operations. + */ + searchConfig?: Schema$GoogleFirestoreAdminV1SearchConfig; /** * Indicates that this field supports nearest neighbor and distance operations on vector. */ @@ -1512,6 +1520,63 @@ export namespace firestore_v1 { */ tags?: {[key: string]: string} | null; } + /** + * The configuration for how to index a field for search. + */ + export interface Schema$GoogleFirestoreAdminV1SearchConfig { + /** + * Optional. The specification for building a geo search index for a field. + */ + geoSpec?: Schema$GoogleFirestoreAdminV1SearchGeoSpec; + /** + * Optional. The specification for building a text search index for a field. + */ + textSpec?: Schema$GoogleFirestoreAdminV1SearchTextSpec; + } + /** + * The specification for how to build a geo search index for a field. + */ + export interface Schema$GoogleFirestoreAdminV1SearchGeoSpec { + /** + * Optional. Disables geoJSON indexing for the field. By default, geoJSON points are indexed. + */ + geoJsonIndexingDisabled?: boolean | null; + } + /** + * Options for search indexes at the definition level. + */ + export interface Schema$GoogleFirestoreAdminV1SearchIndexOptions { + /** + * Optional. The language to use for text search indexes. Used as the default language if not overridden at the document level by specifying the `text_language_override_field`. The language is specified as a BCP 47 language code. For indexes with MONGODB_COMPATIBLE_API ApiScope: If unspecified, the default language is English. For indexes with `ANY_API` ApiScope: If unspecified, the default behavior is autodetect. + */ + textLanguage?: string | null; + /** + * Optional. The field in the document that specifies which language to use for that specific document. For indexes with MONGODB_COMPATIBLE_API ApiScope: if unspecified, the language is taken from the "language" field if it exists or from `text_language` if it does not. + */ + textLanguageOverrideFieldPath?: string | null; + } + /** + * Specification of how the field should be indexed for search text indexes. + */ + export interface Schema$GoogleFirestoreAdminV1SearchTextIndexSpec { + /** + * Required. How to index the text field value. + */ + indexType?: string | null; + /** + * Required. How to match the text field value. + */ + matchType?: string | null; + } + /** + * The specification for how to build a text search index for a field. + */ + export interface Schema$GoogleFirestoreAdminV1SearchTextSpec { + /** + * Required. Specifications for how the field should be indexed. Repeated so that the field can be indexed in multiple ways. + */ + indexSpecs?: Schema$GoogleFirestoreAdminV1SearchTextIndexSpec[]; + } /** * The configuration options for using the same encryption method as the source. */ @@ -1547,9 +1612,13 @@ export namespace firestore_v1 { sizeBytes?: string | null; } /** - * The TTL (time-to-live) configuration for documents that have this `Field` set. Storing a timestamp value into a TTL-enabled field will be treated as the document's absolute expiration time. For Enterprise edition databases, the timestamp value may also be stored in an array value in the TTL-enabled field. Timestamp values in the past indicate that the document is eligible for immediate expiration. Using any other data type or leaving the field absent will disable expiration for the individual document. + * The TTL (time-to-live) configuration for documents that have this `Field` set. A timestamp stored in a TTL-enabled field will be used to determine the expiration time of the document. The expiration time is the sum of the timestamp value and the `expiration_offset`. For Enterprise edition databases, the timestamp value may alternatively be stored in an array value in the TTL-enabled field. An expiration time in the past indicates that the document is eligible for immediate expiration. Using any other data type or leaving the field absent will disable expiration for the individual document. */ export interface Schema$GoogleFirestoreAdminV1TtlConfig { + /** + * Optional. The offset, relative to the timestamp value from the TTL-enabled field, used to determine the document's expiration time. `expiration_offset.seconds` must be between 0 and 2,147,483,647 inclusive. Values more precise than seconds are rejected. If unset, defaults to 0, in which case the expiration time is the same as the timestamp value from the TTL-enabled field. + */ + expirationOffset?: string | null; /** * Output only. The state of the TTL configuration. */ @@ -1563,6 +1632,10 @@ export namespace firestore_v1 { * Specifies how the TTL configuration is changing. */ changeType?: string | null; + /** + * The offset, relative to the timestamp value in the TTL-enabled field, used determine the document's expiration time. + */ + expirationOffset?: string | null; } /** * Metadata related to the update database operation. @@ -1924,9 +1997,13 @@ export namespace firestore_v1 { readTime?: string | null; } /** - * Options for a transaction that can be used to read and write documents. Firestore does not allow 3rd party auth requests to create read-write. transactions. + * Options for a transaction that can be used to read and write documents. */ export interface Schema$ReadWrite { + /** + * Optional. The concurrency control mode to use for this transaction. A database is able to use different concurrency modes for different transactions simultaneously. 3rd party auth requests are only allowed to create optimistic read-write transactions and must specify that here even if the database-level setting is already configured to optimistic. + */ + concurrencyMode?: string | null; /** * An optional transaction to retry. */ @@ -2126,7 +2203,7 @@ export namespace firestore_v1 { */ offset?: number | null; /** - * The order to apply to the query results. Firestore allows callers to provide a full ordering, a partial ordering, or no ordering at all. In all cases, Firestore guarantees a stable ordering through the following rules: * The `order_by` is required to reference all fields used with an inequality filter. * All fields that are required to be in the `order_by` but are not already present are appended in lexicographical ordering of the field name. * If an order on `__name__` is not specified, it is appended by default. Fields are appended with the same sort direction as the last order specified, or 'ASCENDING' if no order was specified. For example: * `ORDER BY a` becomes `ORDER BY a ASC, __name__ ASC` * `ORDER BY a DESC` becomes `ORDER BY a DESC, __name__ DESC` * `WHERE a \> 1` becomes `WHERE a \> 1 ORDER BY a ASC, __name__ ASC` * `WHERE __name__ \> ... AND a \> 1` becomes `WHERE __name__ \> ... AND a \> 1 ORDER BY a ASC, __name__ ASC` + * The order to apply to the query results. Callers can provide a full ordering, a partial ordering, or no ordering at all. While Firestore will always respect the provided order, the behavior for queries without a full ordering is different per database edition: In Standard edition, Firestore guarantees a stable ordering through the following rules: * The `order_by` is required to reference all fields used with an inequality filter. * All fields that are required to be in the `order_by` but are not already present are appended in lexicographical ordering of the field name. * If an order on `__name__` is not specified, it is appended by default. Fields are appended with the same sort direction as the last order specified, or 'ASCENDING' if no order was specified. For example: * `ORDER BY a` becomes `ORDER BY a ASC, __name__ ASC` * `ORDER BY a DESC` becomes `ORDER BY a DESC, __name__ DESC` * `WHERE a \> 1` becomes `WHERE a \> 1 ORDER BY a ASC, __name__ ASC` * `WHERE __name__ \> ... AND a \> 1` becomes `WHERE __name__ \> ... AND a \> 1 ORDER BY a ASC, __name__ ASC` In Enterprise edition, Firestore does not guarantee a stable ordering. Instead it will pick the most efficient ordering based on the indexes available at the time of query execution. This will result in a different ordering for queries that are otherwise identical. To ensure a stable ordering, always include a unique field in the `order_by` clause, such as `__name__`. */ orderBy?: Schema$Order[]; /** @@ -2295,6 +2372,10 @@ export namespace firestore_v1 { * A timestamp value. Precise only to microseconds. When stored, any additional precision is rounded down. */ timestampValue?: string | null; + /** + * Pointer to a variable defined elsewhere in a pipeline. Unlike `field_reference_value` which references a field within a document, this refers to a variable, defined in a separate namespace than the fields of a document. + */ + variableReferenceValue?: string | null; } /** * A write on a document. @@ -5548,6 +5629,7 @@ export namespace firestore_v1 { * // "multikey": false, * // "name": "my_name", * // "queryScope": "my_queryScope", + * // "searchIndexOptions": {}, * // "shardCount": 0, * // "state": "my_state", * // "unique": false @@ -5850,6 +5932,7 @@ export namespace firestore_v1 { * // "multikey": false, * // "name": "my_name", * // "queryScope": "my_queryScope", + * // "searchIndexOptions": {}, * // "shardCount": 0, * // "state": "my_state", * // "unique": false @@ -7570,7 +7653,7 @@ export namespace firestore_v1 { * * // Do the magic * const res = await firestore.projects.databases.documents.listCollectionIds({ - * // Required. The parent document. In the format: `projects/{project_id\}/databases/{database_id\}/documents/{document_path\}`. For example: `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom` + * // Required. The parent document. In the format: `projects/{project_id\}/databases/{database_id\}/documents/{document_path\}`. For example: `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom` Use `projects/{project_id\}/databases/{database_id\}/documents` to list top-level collections. * parent: * 'projects/my-project/databases/my-database/documents/my-document/.*', * @@ -9097,7 +9180,7 @@ export namespace firestore_v1 { } export interface Params$Resource$Projects$Databases$Documents$Listcollectionids extends StandardParameters { /** - * Required. The parent document. In the format: `projects/{project_id\}/databases/{database_id\}/documents/{document_path\}`. For example: `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom` + * Required. The parent document. In the format: `projects/{project_id\}/databases/{database_id\}/documents/{document_path\}`. For example: `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom` Use `projects/{project_id\}/databases/{database_id\}/documents` to list top-level collections. */ parent?: string; @@ -11164,7 +11247,7 @@ export namespace firestore_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -11197,7 +11280,7 @@ export namespace firestore_v1 { * * // Do the magic * const res = await firestore.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -11323,7 +11406,7 @@ export namespace firestore_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/firestore/v1beta1.ts b/src/apis/firestore/v1beta1.ts index 0dfb9ea62a6..28bc1d42c96 100644 --- a/src/apis/firestore/v1beta1.ts +++ b/src/apis/firestore/v1beta1.ts @@ -1279,9 +1279,13 @@ export namespace firestore_v1beta1 { readTime?: string | null; } /** - * Options for a transaction that can be used to read and write documents. Firestore does not allow 3rd party auth requests to create read-write. transactions. + * Options for a transaction that can be used to read and write documents. */ export interface Schema$ReadWrite { + /** + * Optional. The concurrency control mode to use for this transaction. A database is able to use different concurrency modes for different transactions simultaneously. 3rd party auth requests are only allowed to create optimistic read-write transactions and must specify that here even if the database-level setting is already configured to optimistic. + */ + concurrencyMode?: string | null; /** * An optional transaction to retry. */ @@ -1481,7 +1485,7 @@ export namespace firestore_v1beta1 { */ offset?: number | null; /** - * The order to apply to the query results. Firestore allows callers to provide a full ordering, a partial ordering, or no ordering at all. In all cases, Firestore guarantees a stable ordering through the following rules: * The `order_by` is required to reference all fields used with an inequality filter. * All fields that are required to be in the `order_by` but are not already present are appended in lexicographical ordering of the field name. * If an order on `__name__` is not specified, it is appended by default. Fields are appended with the same sort direction as the last order specified, or 'ASCENDING' if no order was specified. For example: * `ORDER BY a` becomes `ORDER BY a ASC, __name__ ASC` * `ORDER BY a DESC` becomes `ORDER BY a DESC, __name__ DESC` * `WHERE a \> 1` becomes `WHERE a \> 1 ORDER BY a ASC, __name__ ASC` * `WHERE __name__ \> ... AND a \> 1` becomes `WHERE __name__ \> ... AND a \> 1 ORDER BY a ASC, __name__ ASC` + * The order to apply to the query results. Callers can provide a full ordering, a partial ordering, or no ordering at all. While Firestore will always respect the provided order, the behavior for queries without a full ordering is different per database edition: In Standard edition, Firestore guarantees a stable ordering through the following rules: * The `order_by` is required to reference all fields used with an inequality filter. * All fields that are required to be in the `order_by` but are not already present are appended in lexicographical ordering of the field name. * If an order on `__name__` is not specified, it is appended by default. Fields are appended with the same sort direction as the last order specified, or 'ASCENDING' if no order was specified. For example: * `ORDER BY a` becomes `ORDER BY a ASC, __name__ ASC` * `ORDER BY a DESC` becomes `ORDER BY a DESC, __name__ DESC` * `WHERE a \> 1` becomes `WHERE a \> 1 ORDER BY a ASC, __name__ ASC` * `WHERE __name__ \> ... AND a \> 1` becomes `WHERE __name__ \> ... AND a \> 1 ORDER BY a ASC, __name__ ASC` In Enterprise edition, Firestore does not guarantee a stable ordering. Instead it will pick the most efficient ordering based on the indexes available at the time of query execution. This will result in a different ordering for queries that are otherwise identical. To ensure a stable ordering, always include a unique field in the `order_by` clause, such as `__name__`. */ orderBy?: Schema$Order[]; /** @@ -1650,6 +1654,10 @@ export namespace firestore_v1beta1 { * A timestamp value. Precise only to microseconds. When stored, any additional precision is rounded down. */ timestampValue?: string | null; + /** + * Pointer to a variable defined elsewhere in a pipeline. Unlike `field_reference_value` which references a field within a document, this refers to a variable, defined in a separate namespace than the fields of a document. + */ + variableReferenceValue?: string | null; } /** * A write on a document. @@ -3507,7 +3515,7 @@ export namespace firestore_v1beta1 { * * // Do the magic * const res = await firestore.projects.databases.documents.listCollectionIds({ - * // Required. The parent document. In the format: `projects/{project_id\}/databases/{database_id\}/documents/{document_path\}`. For example: `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom` + * // Required. The parent document. In the format: `projects/{project_id\}/databases/{database_id\}/documents/{document_path\}`. For example: `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom` Use `projects/{project_id\}/databases/{database_id\}/documents` to list top-level collections. * parent: * 'projects/my-project/databases/my-database/documents/my-document/.*', * @@ -5034,7 +5042,7 @@ export namespace firestore_v1beta1 { } export interface Params$Resource$Projects$Databases$Documents$Listcollectionids extends StandardParameters { /** - * Required. The parent document. In the format: `projects/{project_id\}/databases/{database_id\}/documents/{document_path\}`. For example: `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom` + * Required. The parent document. In the format: `projects/{project_id\}/databases/{database_id\}/documents/{document_path\}`. For example: `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom` Use `projects/{project_id\}/databases/{database_id\}/documents` to list top-level collections. */ parent?: string; diff --git a/src/apis/games/v1.ts b/src/apis/games/v1.ts index 5ae655f96d7..6bf5ce70d31 100644 --- a/src/apis/games/v1.ts +++ b/src/apis/games/v1.ts @@ -154,6 +154,10 @@ export namespace games_v1 { * An achievement definition object. */ export interface Schema$AchievementDefinition { + /** + * Output only. The lifecycle state of the achievement. + */ + achievementLifecycleState?: string | null; /** * The type of the achievement. */ diff --git a/src/apis/gkebackup/v1.ts b/src/apis/gkebackup/v1.ts index 191cf25f756..9178f308de1 100644 --- a/src/apis/gkebackup/v1.ts +++ b/src/apis/gkebackup/v1.ts @@ -653,7 +653,7 @@ export namespace gkebackup_v1 { workloadsAffectedCount?: number | null; } /** - * Log entry for Backup and Restore Job for resources using BackupPlan based protection. Next Id: 23 + * Log entry for Backup and Restore Job for resources using BackupPlan based protection. Next Id: 24 */ export interface Schema$BDRBackupRestoreJobLog { /** @@ -680,6 +680,10 @@ export namespace gkebackup_v1 { * Full resource name backup vault name */ backupVaultName?: string | null; + /** + * Canonical Data Source Name + */ + dataSourceName?: string | null; /** * End time of the job. */ @@ -2206,7 +2210,7 @@ export namespace gkebackup_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2236,7 +2240,7 @@ export namespace gkebackup_v1 { * * // Do the magic * const res = await gkebackup.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2362,7 +2366,7 @@ export namespace gkebackup_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/gkehub/v1.ts b/src/apis/gkehub/v1.ts index df610ea7d8b..a8595538f26 100644 --- a/src/apis/gkehub/v1.ts +++ b/src/apis/gkehub/v1.ts @@ -1836,7 +1836,7 @@ export namespace gkehub_v1 { */ nodeCount?: number | null; /** - * Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the node_count will be zero and the node_provider_id will be empty. + * Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE on Google Cloud), the node_count will be zero and the node_provider_id will be empty. */ nodeProviderId?: string | null; /** @@ -2194,7 +2194,7 @@ export namespace gkehub_v1 { */ edgeCluster?: Schema$EdgeCluster; /** - * Optional. Specific information for a GKE-on-GCP cluster. + * Optional. Specific information for a GKE on Google Cloud cluster. */ gkeCluster?: Schema$GkeCluster; /** @@ -3519,7 +3519,7 @@ export namespace gkehub_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3549,7 +3549,7 @@ export namespace gkehub_v1 { * * // Do the magic * const res = await gkehub.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3675,7 +3675,7 @@ export namespace gkehub_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/gkehub/v1alpha.ts b/src/apis/gkehub/v1alpha.ts index e8d2e2c2647..0391293870b 100644 --- a/src/apis/gkehub/v1alpha.ts +++ b/src/apis/gkehub/v1alpha.ts @@ -203,6 +203,15 @@ export namespace gkehub_v1alpha { */ workloadIdentityPool?: string | null; } + /** + * Configuration for automatic upgrades. + */ + export interface Schema$AutoUpgradeConfig { + /** + * Optional. Specifies the scope of automation for the creation of rollouts. Represents the types of rollouts (version upgrades) the sequence should initiate automatically. If this field is `unset`, it defaults to all types. If this field is `set` but the internal `upgrade_types` list is `empty`, most automatic rollouts are disabled for this sequence. Exceptions are rollouts enforcing our security policies (e.g. such as end-of-support and outdated control plane patch enforcements). These policy enforcements cannot be disabled. + */ + rolloutCreationScope?: Schema$RolloutCreationScope; + } /** * BinaryAuthorizationConfig defines the fleet level configuration of binary authorization feature. */ @@ -1581,6 +1590,15 @@ export namespace gkehub_v1alpha { */ mode?: string | null; } + /** + * Request message for force-completing a rollout stage. + */ + export interface Schema$ForceCompleteRolloutStageRequest { + /** + * Required. The stage number to force-complete. + */ + stageNumber?: number | null; + } /** * GenerateConnectManifestResponse contains manifest information for installing/upgrading a Connect agent. */ @@ -1994,7 +2012,7 @@ export namespace gkehub_v1alpha { */ nodeCount?: number | null; /** - * Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the node_count will be zero and the node_provider_id will be empty. + * Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE on Google Cloud), the node_count will be zero and the node_provider_id will be empty. */ nodeProviderId?: string | null; /** @@ -2395,7 +2413,7 @@ export namespace gkehub_v1alpha { */ edgeCluster?: Schema$EdgeCluster; /** - * Optional. Specific information for a GKE-on-GCP cluster. + * Optional. Specific information for a GKE on Google Cloud cluster. */ gkeCluster?: Schema$GkeCluster; /** @@ -3118,7 +3136,7 @@ export namespace gkehub_v1alpha { predefinedRole?: string | null; } /** - * Rollout contains the Rollout metadata and configuration. + * Rollout contains the Rollout metadata and configuration. Next ID: 28 */ export interface Schema$Rollout { /** @@ -3169,6 +3187,10 @@ export namespace gkehub_v1alpha { * Output only. A human-readable description explaining the reason for the current state. */ stateReason?: string | null; + /** + * Output only. StateReasonType specifies the reason type of the Rollout state. + */ + stateReasonType?: string | null; /** * Output only. Google-generated UUID for this resource. This is unique across all Rollout resources. If a Rollout resource is deleted and another resource with the same name is created, it gets a different uid. */ @@ -3182,6 +3204,15 @@ export namespace gkehub_v1alpha { */ versionUpgrade?: Schema$VersionUpgrade; } + /** + * The scope for automatic rollout creation. + */ + export interface Schema$RolloutCreationScope { + /** + * Optional. The list of enabled upgrade types. + */ + upgradeTypes?: string[] | null; + } /** * Metadata about single cluster (GKE Hub membership) that's part of this Rollout. */ @@ -3203,6 +3234,10 @@ export namespace gkehub_v1alpha { * RolloutSequence defines the desired order of upgrades. */ export interface Schema$RolloutSequence { + /** + * Optional. Configuration for automatic upgrades. If this message is `unset`, the system applies default behavior. + */ + autoUpgradeConfig?: Schema$AutoUpgradeConfig; /** * Output only. The timestamp at which the Rollout Sequence was created. */ @@ -3215,10 +3250,18 @@ export namespace gkehub_v1alpha { * Optional. Human readable display name of the Rollout Sequence. */ displayName?: string | null; + /** + * Output only. The resolved auto-upgrade options which are in effect. + */ + effectiveAutoUpgradeConfig?: Schema$AutoUpgradeConfig; /** * Output only. etag of the Rollout Sequence Ex. abc1234 */ etag?: string | null; + /** + * Optional. Selector for clusters to exclude from the Rollout Sequence. + */ + ignoredClustersSelector?: Schema$ClusterSelector; /** * Optional. Labels for this Rollout Sequence. */ @@ -3248,6 +3291,10 @@ export namespace gkehub_v1alpha { * State and reasons of the Rollout Sequence. */ export interface Schema$RolloutSequenceState { + /** + * Output only. The timestamp at which the LifecycleState was last changed. Used to track how long it has been in the current state. + */ + lastStateChangeTime?: string | null; /** * Output only. Lifecycle state of the Rollout Sequence. */ @@ -3262,23 +3309,23 @@ export namespace gkehub_v1alpha { */ export interface Schema$RolloutStage { /** - * Optional. Output only. The time at which the wave ended. + * Optional. Output only. The time at which the stage ended. */ endTime?: string | null; /** - * Optional. Duration to soak after this wave before starting the next wave. + * Optional. Duration to soak after this stage before starting the next stage. */ soakDuration?: string | null; /** - * Output only. The wave number to which this status applies. + * Output only. The stage number to which this status applies. */ stageNumber?: number | null; /** - * Optional. Output only. The time at which the wave started. + * Optional. Output only. The time at which the stage started. */ startTime?: string | null; /** - * Output only. The state of the wave. + * Output only. The state of the stage. */ state?: string | null; } @@ -4167,7 +4214,7 @@ export namespace gkehub_v1alpha { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -4197,7 +4244,7 @@ export namespace gkehub_v1alpha { * * // Do the magic * const res = await gkehub.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -4323,7 +4370,7 @@ export namespace gkehub_v1alpha { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -11133,7 +11180,157 @@ export namespace gkehub_v1alpha { } /** - * Retrieve a single rollout. + * Force-completes a rollout stage. Only the active stage of an active rollout can be force-completed. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/gkehub.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const gkehub = google.gkehub('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await gkehub.projects.locations.rollouts.forceCompleteStage({ + * // Required. The name of the rollout. Format: projects/{project\}/locations/{location\}/rollouts/{rollout\} + * name: 'projects/my-project/locations/my-location/rollouts/my-rollout', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "stageNumber": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + forceCompleteStage( + params: Params$Resource$Projects$Locations$Rollouts$Forcecompletestage, + options: StreamMethodOptions + ): Promise>; + forceCompleteStage( + params?: Params$Resource$Projects$Locations$Rollouts$Forcecompletestage, + options?: MethodOptions + ): Promise>; + forceCompleteStage( + params: Params$Resource$Projects$Locations$Rollouts$Forcecompletestage, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + forceCompleteStage( + params: Params$Resource$Projects$Locations$Rollouts$Forcecompletestage, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + forceCompleteStage( + params: Params$Resource$Projects$Locations$Rollouts$Forcecompletestage, + callback: BodyResponseCallback + ): void; + forceCompleteStage(callback: BodyResponseCallback): void; + forceCompleteStage( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Rollouts$Forcecompletestage + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Rollouts$Forcecompletestage; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Rollouts$Forcecompletestage; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://gkehub.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}:forceCompleteStage').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a single rollout. * @example * ```js * // Before running the sample: @@ -11182,6 +11379,7 @@ export namespace gkehub_v1alpha { * // "stages": [], * // "state": "my_state", * // "stateReason": "my_stateReason", + * // "stateReasonType": "my_stateReasonType", * // "uid": "my_uid", * // "updateTime": "my_updateTime", * // "versionUpgrade": {} @@ -11281,7 +11479,7 @@ export namespace gkehub_v1alpha { } /** - * Retrieve the list of all rollouts. + * Retrieves the list of all rollouts. * @example * ```js * // Before running the sample: @@ -11427,6 +11625,17 @@ export namespace gkehub_v1alpha { } } + export interface Params$Resource$Projects$Locations$Rollouts$Forcecompletestage extends StandardParameters { + /** + * Required. The name of the rollout. Format: projects/{project\}/locations/{location\}/rollouts/{rollout\} + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ForceCompleteRolloutStageRequest; + } export interface Params$Resource$Projects$Locations$Rollouts$Get extends StandardParameters { /** * Required. The name of the rollout to retrieve. projects/{project\}/locations/{location\}/rollouts/{rollout\} @@ -11459,7 +11668,7 @@ export namespace gkehub_v1alpha { } /** - * Create a new rollout sequence resource. + * Creates a new rollout sequence resource. * @example * ```js * // Before running the sample: @@ -11498,10 +11707,13 @@ export namespace gkehub_v1alpha { * requestBody: { * // request body parameters * // { + * // "autoUpgradeConfig": {}, * // "createTime": "my_createTime", * // "deleteTime": "my_deleteTime", * // "displayName": "my_displayName", + * // "effectiveAutoUpgradeConfig": {}, * // "etag": "my_etag", + * // "ignoredClustersSelector": {}, * // "labels": {}, * // "name": "my_name", * // "stages": [], @@ -11620,7 +11832,7 @@ export namespace gkehub_v1alpha { } /** - * Remove a RolloutSequence. + * Removes a RolloutSequence. * @example * ```js * // Before running the sample: @@ -11796,10 +12008,13 @@ export namespace gkehub_v1alpha { * * // Example response * // { + * // "autoUpgradeConfig": {}, * // "createTime": "my_createTime", * // "deleteTime": "my_deleteTime", * // "displayName": "my_displayName", + * // "effectiveAutoUpgradeConfig": {}, * // "etag": "my_etag", + * // "ignoredClustersSelector": {}, * // "labels": {}, * // "name": "my_name", * // "stages": [], @@ -11902,7 +12117,7 @@ export namespace gkehub_v1alpha { } /** - * Retrieve the list of all rollout sequences. + * Retrieves the list of all rollout sequences. * @example * ```js * // Before running the sample: @@ -12052,7 +12267,7 @@ export namespace gkehub_v1alpha { } /** - * Update a rollout sequence. + * Updates a rollout sequence. * @example * ```js * // Before running the sample: @@ -12091,10 +12306,13 @@ export namespace gkehub_v1alpha { * requestBody: { * // request body parameters * // { + * // "autoUpgradeConfig": {}, * // "createTime": "my_createTime", * // "deleteTime": "my_deleteTime", * // "displayName": "my_displayName", + * // "effectiveAutoUpgradeConfig": {}, * // "etag": "my_etag", + * // "ignoredClustersSelector": {}, * // "labels": {}, * // "name": "my_name", * // "stages": [], diff --git a/src/apis/gkehub/v1beta.ts b/src/apis/gkehub/v1beta.ts index fa0c69a87fa..d67f04ecfc5 100644 --- a/src/apis/gkehub/v1beta.ts +++ b/src/apis/gkehub/v1beta.ts @@ -203,6 +203,15 @@ export namespace gkehub_v1beta { */ workloadIdentityPool?: string | null; } + /** + * Configuration for automatic upgrades. + */ + export interface Schema$AutoUpgradeConfig { + /** + * Optional. Specifies the scope of automation for the creation of rollouts. Represents the types of rollouts (version upgrades) the sequence should initiate automatically. If this field is `unset`, it defaults to all types. If this field is `set` but the internal `upgrade_types` list is `empty`, most automatic rollouts are disabled for this sequence. Exceptions are rollouts enforcing our security policies (e.g. such as end-of-support and outdated control plane patch enforcements). These policy enforcements cannot be disabled. + */ + rolloutCreationScope?: Schema$RolloutCreationScope; + } /** * BinaryAuthorizationConfig defines the fleet level configuration of binary authorization feature. */ @@ -1484,6 +1493,15 @@ export namespace gkehub_v1beta { */ mode?: string | null; } + /** + * Request message for force-completing a rollout stage. + */ + export interface Schema$ForceCompleteRolloutStageRequest { + /** + * Required. The stage number to force-complete. + */ + stageNumber?: number | null; + } /** * GenerateConnectManifestResponse contains manifest information for installing/upgrading a Connect agent. */ @@ -1884,7 +1902,7 @@ export namespace gkehub_v1beta { */ nodeCount?: number | null; /** - * Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the node_count will be zero and the node_provider_id will be empty. + * Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE on Google Cloud), the node_count will be zero and the node_provider_id will be empty. */ nodeProviderId?: string | null; /** @@ -2268,7 +2286,7 @@ export namespace gkehub_v1beta { */ edgeCluster?: Schema$EdgeCluster; /** - * Optional. Specific information for a GKE-on-GCP cluster. + * Optional. Specific information for a GKE on Google Cloud cluster. */ gkeCluster?: Schema$GkeCluster; /** @@ -2962,7 +2980,7 @@ export namespace gkehub_v1beta { predefinedRole?: string | null; } /** - * Rollout contains the Rollout metadata and configuration. + * Rollout contains the Rollout metadata and configuration. Next ID: 28 */ export interface Schema$Rollout { /** @@ -3013,6 +3031,10 @@ export namespace gkehub_v1beta { * Output only. A human-readable description explaining the reason for the current state. */ stateReason?: string | null; + /** + * Output only. StateReasonType specifies the reason type of the Rollout state. + */ + stateReasonType?: string | null; /** * Output only. Google-generated UUID for this resource. This is unique across all Rollout resources. If a Rollout resource is deleted and another resource with the same name is created, it gets a different uid. */ @@ -3026,6 +3048,15 @@ export namespace gkehub_v1beta { */ versionUpgrade?: Schema$VersionUpgrade; } + /** + * The scope for automatic rollout creation. + */ + export interface Schema$RolloutCreationScope { + /** + * Optional. The list of enabled upgrade types. + */ + upgradeTypes?: string[] | null; + } /** * Metadata about single cluster (GKE Hub membership) that's part of this Rollout. */ @@ -3047,6 +3078,10 @@ export namespace gkehub_v1beta { * RolloutSequence defines the desired order of upgrades. */ export interface Schema$RolloutSequence { + /** + * Optional. Configuration for automatic upgrades. If this message is `unset`, the system applies default behavior. + */ + autoUpgradeConfig?: Schema$AutoUpgradeConfig; /** * Output only. The timestamp at which the Rollout Sequence was created. */ @@ -3059,10 +3094,18 @@ export namespace gkehub_v1beta { * Optional. Human readable display name of the Rollout Sequence. */ displayName?: string | null; + /** + * Output only. The resolved auto-upgrade options which are in effect. + */ + effectiveAutoUpgradeConfig?: Schema$AutoUpgradeConfig; /** * Output only. etag of the Rollout Sequence Ex. abc1234 */ etag?: string | null; + /** + * Optional. Selector for clusters to exclude from the Rollout Sequence. + */ + ignoredClustersSelector?: Schema$ClusterSelector; /** * Optional. Labels for this Rollout Sequence. */ @@ -3092,6 +3135,10 @@ export namespace gkehub_v1beta { * State and reasons of the Rollout Sequence. */ export interface Schema$RolloutSequenceState { + /** + * Output only. The timestamp at which the LifecycleState was last changed. Used to track how long it has been in the current state. + */ + lastStateChangeTime?: string | null; /** * Output only. Lifecycle state of the Rollout Sequence. */ @@ -3106,23 +3153,23 @@ export namespace gkehub_v1beta { */ export interface Schema$RolloutStage { /** - * Optional. Output only. The time at which the wave ended. + * Optional. Output only. The time at which the stage ended. */ endTime?: string | null; /** - * Optional. Duration to soak after this wave before starting the next wave. + * Optional. Duration to soak after this stage before starting the next stage. */ soakDuration?: string | null; /** - * Output only. The wave number to which this status applies. + * Output only. The stage number to which this status applies. */ stageNumber?: number | null; /** - * Optional. Output only. The time at which the wave started. + * Optional. Output only. The time at which the stage started. */ startTime?: string | null; /** - * Output only. The state of the wave. + * Output only. The state of the stage. */ state?: string | null; } @@ -3857,7 +3904,7 @@ export namespace gkehub_v1beta { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3887,7 +3934,7 @@ export namespace gkehub_v1beta { * * // Do the magic * const res = await gkehub.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -4013,7 +4060,7 @@ export namespace gkehub_v1beta { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -10151,7 +10198,157 @@ export namespace gkehub_v1beta { } /** - * Retrieve a single rollout. + * Force-completes a rollout stage. Only the active stage of an active rollout can be force-completed. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/gkehub.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const gkehub = google.gkehub('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await gkehub.projects.locations.rollouts.forceCompleteStage({ + * // Required. The name of the rollout. Format: projects/{project\}/locations/{location\}/rollouts/{rollout\} + * name: 'projects/my-project/locations/my-location/rollouts/my-rollout', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "stageNumber": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + forceCompleteStage( + params: Params$Resource$Projects$Locations$Rollouts$Forcecompletestage, + options: StreamMethodOptions + ): Promise>; + forceCompleteStage( + params?: Params$Resource$Projects$Locations$Rollouts$Forcecompletestage, + options?: MethodOptions + ): Promise>; + forceCompleteStage( + params: Params$Resource$Projects$Locations$Rollouts$Forcecompletestage, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + forceCompleteStage( + params: Params$Resource$Projects$Locations$Rollouts$Forcecompletestage, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + forceCompleteStage( + params: Params$Resource$Projects$Locations$Rollouts$Forcecompletestage, + callback: BodyResponseCallback + ): void; + forceCompleteStage(callback: BodyResponseCallback): void; + forceCompleteStage( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Rollouts$Forcecompletestage + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Rollouts$Forcecompletestage; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Rollouts$Forcecompletestage; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://gkehub.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}:forceCompleteStage').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a single rollout. * @example * ```js * // Before running the sample: @@ -10200,6 +10397,7 @@ export namespace gkehub_v1beta { * // "stages": [], * // "state": "my_state", * // "stateReason": "my_stateReason", + * // "stateReasonType": "my_stateReasonType", * // "uid": "my_uid", * // "updateTime": "my_updateTime", * // "versionUpgrade": {} @@ -10299,7 +10497,7 @@ export namespace gkehub_v1beta { } /** - * Retrieve the list of all rollouts. + * Retrieves the list of all rollouts. * @example * ```js * // Before running the sample: @@ -10445,6 +10643,17 @@ export namespace gkehub_v1beta { } } + export interface Params$Resource$Projects$Locations$Rollouts$Forcecompletestage extends StandardParameters { + /** + * Required. The name of the rollout. Format: projects/{project\}/locations/{location\}/rollouts/{rollout\} + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ForceCompleteRolloutStageRequest; + } export interface Params$Resource$Projects$Locations$Rollouts$Get extends StandardParameters { /** * Required. The name of the rollout to retrieve. projects/{project\}/locations/{location\}/rollouts/{rollout\} @@ -10477,7 +10686,7 @@ export namespace gkehub_v1beta { } /** - * Create a new rollout sequence resource. + * Creates a new rollout sequence resource. * @example * ```js * // Before running the sample: @@ -10516,10 +10725,13 @@ export namespace gkehub_v1beta { * requestBody: { * // request body parameters * // { + * // "autoUpgradeConfig": {}, * // "createTime": "my_createTime", * // "deleteTime": "my_deleteTime", * // "displayName": "my_displayName", + * // "effectiveAutoUpgradeConfig": {}, * // "etag": "my_etag", + * // "ignoredClustersSelector": {}, * // "labels": {}, * // "name": "my_name", * // "stages": [], @@ -10638,7 +10850,7 @@ export namespace gkehub_v1beta { } /** - * Remove a RolloutSequence. + * Removes a RolloutSequence. * @example * ```js * // Before running the sample: @@ -10814,10 +11026,13 @@ export namespace gkehub_v1beta { * * // Example response * // { + * // "autoUpgradeConfig": {}, * // "createTime": "my_createTime", * // "deleteTime": "my_deleteTime", * // "displayName": "my_displayName", + * // "effectiveAutoUpgradeConfig": {}, * // "etag": "my_etag", + * // "ignoredClustersSelector": {}, * // "labels": {}, * // "name": "my_name", * // "stages": [], @@ -10920,7 +11135,7 @@ export namespace gkehub_v1beta { } /** - * Retrieve the list of all rollout sequences. + * Retrieves the list of all rollout sequences. * @example * ```js * // Before running the sample: @@ -11070,7 +11285,7 @@ export namespace gkehub_v1beta { } /** - * Update a rollout sequence. + * Updates a rollout sequence. * @example * ```js * // Before running the sample: @@ -11109,10 +11324,13 @@ export namespace gkehub_v1beta { * requestBody: { * // request body parameters * // { + * // "autoUpgradeConfig": {}, * // "createTime": "my_createTime", * // "deleteTime": "my_deleteTime", * // "displayName": "my_displayName", + * // "effectiveAutoUpgradeConfig": {}, * // "etag": "my_etag", + * // "ignoredClustersSelector": {}, * // "labels": {}, * // "name": "my_name", * // "stages": [], diff --git a/src/apis/gkehub/v1beta1.ts b/src/apis/gkehub/v1beta1.ts index 7a3c66e9e0e..0b1f7ff29ba 100644 --- a/src/apis/gkehub/v1beta1.ts +++ b/src/apis/gkehub/v1beta1.ts @@ -129,7 +129,7 @@ export namespace gkehub_v1beta1 { */ export interface Schema$ApplianceCluster { /** - * Immutable. Self-link of the GCP resource for the Appliance Cluster. For example: //transferappliance.googleapis.com/projects/my-project/locations/us-west1-a/appliances/my-appliance + * Immutable. Self-link of the Google Cloud resource for the Appliance Cluster. For example: //transferappliance.googleapis.com/projects/my-project/locations/us-west1-a/appliances/my-appliance */ resourceLink?: string | null; } @@ -227,7 +227,7 @@ export namespace gkehub_v1beta1 { */ export interface Schema$EdgeCluster { /** - * Immutable. Self-link of the GCP resource for the Edge Cluster. For example: //edgecontainer.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster + * Immutable. Self-link of the Google Cloud resource for the Edge Cluster. For example: //edgecontainer.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster */ resourceLink?: string | null; } @@ -287,7 +287,7 @@ export namespace gkehub_v1beta1 { */ clusterMissing?: boolean | null; /** - * Immutable. Self-link of the GCP resource for the GKE cluster. For example: //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster Zonal clusters are also supported. + * Immutable. Self-link of the Google Cloud resource for the GKE cluster. For example: //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster Zonal clusters are also supported. */ resourceLink?: string | null; } @@ -325,7 +325,7 @@ export namespace gkehub_v1beta1 { */ nodeCount?: number | null; /** - * Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the node_count will be zero and the node_provider_id will be empty. + * Output only. Node providerID as reported by the first node in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-Google Cloud), the node_count will be zero and the node_provider_id will be empty. */ nodeProviderId?: string | null; /** @@ -463,7 +463,7 @@ export namespace gkehub_v1beta1 { */ infrastructureType?: string | null; /** - * Optional. GCP labels for this membership. These labels are not leveraged by multi-cluster features, instead, we prefer cluster labels, which can be set on GKE cluster or other cluster types. + * Optional. Google Cloud labels for this membership. These labels are not leveraged by multi-cluster features, instead, we prefer cluster labels, which can be set on GKE cluster or other cluster types. */ labels?: {[key: string]: string} | null; /** @@ -508,7 +508,7 @@ export namespace gkehub_v1beta1 { */ edgeCluster?: Schema$EdgeCluster; /** - * Optional. Specific information for a GKE-on-GCP cluster. + * Optional. Specific information for a GKE-on-Google Cloud cluster. */ gkeCluster?: Schema$GkeCluster; /** @@ -579,7 +579,7 @@ export namespace gkehub_v1beta1 { */ clusterMissing?: boolean | null; /** - * Immutable. Self-link of the GCP resource for the GKE Multi-Cloud cluster. For example: //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/awsClusters/my-cluster //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/azureClusters/my-cluster //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/attachedClusters/my-cluster + * Immutable. Self-link of the Google Cloud resource for the GKE Multi-Cloud cluster. For example: //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/awsClusters/my-cluster //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/azureClusters/my-cluster //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/attachedClusters/my-cluster */ resourceLink?: string | null; } @@ -600,7 +600,7 @@ export namespace gkehub_v1beta1 { */ clusterType?: string | null; /** - * Immutable. Self-link of the GCP resource for the GKE On-Prem cluster. For example: //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/vmwareClusters/my-cluster //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/bareMetalClusters/my-cluster + * Immutable. Self-link of the Google Cloud resource for the GKE On-Prem cluster. For example: //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/vmwareClusters/my-cluster //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/bareMetalClusters/my-cluster */ resourceLink?: string | null; } @@ -933,7 +933,7 @@ export namespace gkehub_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -963,7 +963,7 @@ export namespace gkehub_v1beta1 { * * // Do the magic * const res = await gkehub.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1089,7 +1089,7 @@ export namespace gkehub_v1beta1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/gkehub/v2.ts b/src/apis/gkehub/v2.ts index fe08e0210ef..6d441cb545e 100644 --- a/src/apis/gkehub/v2.ts +++ b/src/apis/gkehub/v2.ts @@ -1414,7 +1414,7 @@ export namespace gkehub_v2 { */ deleteTime?: string | null; /** - * GCP labels for this MembershipFeature. + * Google Cloud labels for this MembershipFeature. */ labels?: {[key: string]: string} | null; /** @@ -2151,7 +2151,7 @@ export namespace gkehub_v2 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2181,7 +2181,7 @@ export namespace gkehub_v2 { * * // Do the magic * const res = await gkehub.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2307,7 +2307,7 @@ export namespace gkehub_v2 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/gkehub/v2alpha.ts b/src/apis/gkehub/v2alpha.ts index f506d888239..17940f0d31c 100644 --- a/src/apis/gkehub/v2alpha.ts +++ b/src/apis/gkehub/v2alpha.ts @@ -1414,7 +1414,7 @@ export namespace gkehub_v2alpha { */ deleteTime?: string | null; /** - * GCP labels for this MembershipFeature. + * Google Cloud labels for this MembershipFeature. */ labels?: {[key: string]: string} | null; /** @@ -2151,7 +2151,7 @@ export namespace gkehub_v2alpha { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2181,7 +2181,7 @@ export namespace gkehub_v2alpha { * * // Do the magic * const res = await gkehub.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2307,7 +2307,7 @@ export namespace gkehub_v2alpha { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/gkehub/v2beta.ts b/src/apis/gkehub/v2beta.ts index 3ffa6da1578..1210853b417 100644 --- a/src/apis/gkehub/v2beta.ts +++ b/src/apis/gkehub/v2beta.ts @@ -1414,7 +1414,7 @@ export namespace gkehub_v2beta { */ deleteTime?: string | null; /** - * GCP labels for this MembershipFeature. + * Google Cloud labels for this MembershipFeature. */ labels?: {[key: string]: string} | null; /** @@ -2151,7 +2151,7 @@ export namespace gkehub_v2beta { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2181,7 +2181,7 @@ export namespace gkehub_v2beta { * * // Do the magic * const res = await gkehub.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2307,7 +2307,7 @@ export namespace gkehub_v2beta { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/gkeonprem/v1.ts b/src/apis/gkeonprem/v1.ts index f650432259f..d9770349546 100644 --- a/src/apis/gkeonprem/v1.ts +++ b/src/apis/gkeonprem/v1.ts @@ -3226,7 +3226,7 @@ export namespace gkeonprem_v1 { } /** - * Lists information about the supported locations for this service. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3256,7 +3256,7 @@ export namespace gkeonprem_v1 { * * // Do the magic * const res = await gkeonprem.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3382,7 +3382,7 @@ export namespace gkeonprem_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/gmail/v1.ts b/src/apis/gmail/v1.ts index 273e160d0f7..89a0b392239 100644 --- a/src/apis/gmail/v1.ts +++ b/src/apis/gmail/v1.ts @@ -314,7 +314,7 @@ export namespace gmail_v1 { */ addLabelIds?: string[] | null; /** - * Email address that the message should be forwarded to. + * Email address that the message should be forwarded to. This effectively redirects the message to the address specified in this field, maintaining the original sender in the "From" field. */ forward?: string | null; /** @@ -515,11 +515,11 @@ export namespace gmail_v1 { } export interface Schema$LabelColor { /** - * The background color represented as hex string #RRGGBB (ex #000000). This field is required in order to set the color of a label. Only the following predefined set of color values are allowed: \#000000, #434343, #666666, #999999, #cccccc, #efefef, #f3f3f3, #ffffff, \#fb4c2f, #ffad47, #fad165, #16a766, #43d692, #4a86e8, #a479e2, #f691b3, \#f6c5be, #ffe6c7, #fef1d1, #b9e4d0, #c6f3de, #c9daf8, #e4d7f5, #fcdee8, \#efa093, #ffd6a2, #fce8b3, #89d3b2, #a0eac9, #a4c2f4, #d0bcf1, #fbc8d9, \#e66550, #ffbc6b, #fcda83, #44b984, #68dfa9, #6d9eeb, #b694e8, #f7a7c0, \#cc3a21, #eaa041, #f2c960, #149e60, #3dc789, #3c78d8, #8e63ce, #e07798, \#ac2b16, #cf8933, #d5ae49, #0b804b, #2a9c68, #285bac, #653e9b, #b65775, \#822111, #a46a21, #aa8831, #076239, #1a764d, #1c4587, #41236d, #83334c \#464646, #e7e7e7, #0d3472, #b6cff5, #0d3b44, #98d7e4, #3d188e, #e3d7ff, \#711a36, #fbd3e0, #8a1c0a, #f2b2a8, #7a2e0b, #ffc8af, #7a4706, #ffdeb5, \#594c05, #fbe983, #684e07, #fdedc1, #0b4f30, #b3efd3, #04502e, #a2dcc1, \#c2c2c2, #4986e7, #2da2bb, #b99aff, #994a64, #f691b2, #ff7537, #ffad46, \#662e37, #ebdbde, #cca6ac, #094228, #42d692, #16a765 + * The background color represented as hex string #RRGGBB (ex #000000). This field is required in order to set the color of a label. Only the following predefined set of color values are allowed: \#000000, #434343, #666666, #999999, #cccccc, #efefef, #f3f3f3, #ffffff, \#fb4c2f, #ffad47, #fad165, #16a766, #43d692, #4a86e8, #a479e2, #f691b3, \#f6c5be, #ffe6c7, #fef1d1, #b9e4d0, #c6f3de, #c9daf8, #e4d7f5, #fcdee8, \#efa093, #ffd6a2, #fce8b3, #89d3b2, #a0eac9, #a4c2f4, #d0bcf1, #fbc8d9, \#e66550, #ffbc6b, #fcda83, #44b984, #68dfa9, #6d9eeb, #b694e8, #f7a7c0, \#cc3a21, #eaa041, #f2c960, #149e60, #3dc789, #3c78d8, #8e63ce, #e07798, \#ac2b16, #cf8933, #d5ae49, #0b804b, #2a9c68, #285bac, #653e9b, #b65775, \#822111, #a46a21, #aa8831, #076239, #1a764d, #1c4587, #41236d, #83334c, \#464646, #e7e7e7, #0d3472, #b6cff5, #0d3b44, #98d7e4, #3d188e, #e3d7ff, \#711a36, #fbd3e0, #8a1c0a, #f2b2a8, #7a2e0b, #ffc8af, #7a4706, #ffdeb5, \#594c05, #fbe983, #684e07, #fdedc1, #0b4f30, #b3efd3, #04502e, #a2dcc1, \#c2c2c2, #4986e7, #2da2bb, #b99aff, #994a64, #f691b2, #ff7537, #ffad46, \#662e37, #ebdbde, #cca6ac, #094228, #42d692, #16a765 */ backgroundColor?: string | null; /** - * The text color of the label, represented as hex string. This field is required in order to set the color of a label. Only the following predefined set of color values are allowed: \#000000, #434343, #666666, #999999, #cccccc, #efefef, #f3f3f3, #ffffff, \#fb4c2f, #ffad47, #fad165, #16a766, #43d692, #4a86e8, #a479e2, #f691b3, \#f6c5be, #ffe6c7, #fef1d1, #b9e4d0, #c6f3de, #c9daf8, #e4d7f5, #fcdee8, \#efa093, #ffd6a2, #fce8b3, #89d3b2, #a0eac9, #a4c2f4, #d0bcf1, #fbc8d9, \#e66550, #ffbc6b, #fcda83, #44b984, #68dfa9, #6d9eeb, #b694e8, #f7a7c0, \#cc3a21, #eaa041, #f2c960, #149e60, #3dc789, #3c78d8, #8e63ce, #e07798, \#ac2b16, #cf8933, #d5ae49, #0b804b, #2a9c68, #285bac, #653e9b, #b65775, \#822111, #a46a21, #aa8831, #076239, #1a764d, #1c4587, #41236d, #83334c \#464646, #e7e7e7, #0d3472, #b6cff5, #0d3b44, #98d7e4, #3d188e, #e3d7ff, \#711a36, #fbd3e0, #8a1c0a, #f2b2a8, #7a2e0b, #ffc8af, #7a4706, #ffdeb5, \#594c05, #fbe983, #684e07, #fdedc1, #0b4f30, #b3efd3, #04502e, #a2dcc1, \#c2c2c2, #4986e7, #2da2bb, #b99aff, #994a64, #f691b2, #ff7537, #ffad46, \#662e37, #ebdbde, #cca6ac, #094228, #42d692, #16a765 + * The text color of the label, represented as hex string. This field is required in order to set the color of a label. Only the following predefined set of color values are allowed: \#000000, #434343, #666666, #999999, #cccccc, #efefef, #f3f3f3, #ffffff, \#fb4c2f, #ffad47, #fad165, #16a766, #43d692, #4a86e8, #a479e2, #f691b3, \#f6c5be, #ffe6c7, #fef1d1, #b9e4d0, #c6f3de, #c9daf8, #e4d7f5, #fcdee8, \#efa093, #ffd6a2, #fce8b3, #89d3b2, #a0eac9, #a4c2f4, #d0bcf1, #fbc8d9, \#e66550, #ffbc6b, #fcda83, #44b984, #68dfa9, #6d9eeb, #b694e8, #f7a7c0, \#cc3a21, #eaa041, #f2c960, #149e60, #3dc789, #3c78d8, #8e63ce, #e07798, \#ac2b16, #cf8933, #d5ae49, #0b804b, #2a9c68, #285bac, #653e9b, #b65775, \#822111, #a46a21, #aa8831, #076239, #1a764d, #1c4587, #41236d, #83334c, \#464646, #e7e7e7, #0d3472, #b6cff5, #0d3b44, #98d7e4, #3d188e, #e3d7ff, \#711a36, #fbd3e0, #8a1c0a, #f2b2a8, #7a2e0b, #ffc8af, #7a4706, #ffdeb5, \#594c05, #fbe983, #684e07, #fdedc1, #0b4f30, #b3efd3, #04502e, #a2dcc1, \#c2c2c2, #4986e7, #2da2bb, #b99aff, #994a64, #f691b2, #ff7537, #ffad46, \#662e37, #ebdbde, #cca6ac, #094228, #42d692, #16a765 */ textColor?: string | null; } @@ -816,7 +816,7 @@ export namespace gmail_v1 { threadsTotal?: number | null; } /** - * Settings associated with a send-as alias, which can be either the primary login address associated with the account or a custom "from" address. Send-as aliases correspond to the "Send Mail As" feature in the web interface. + * Settings associated with a send-as alias, which can be either the primary login address associated with the account or a custom "from" address. Send-as aliases correspond to the "Send Mail As" feature in the web interface. The send-as alias must be a valid email address. */ export interface Schema$SendAs { /** @@ -1184,7 +1184,7 @@ export namespace gmail_v1 { } /** - * Stop receiving push notifications for the given user mailbox. + * Turn off push notification delivery for the given user mailbox. For more information, see [Configure push notifications in Gmail API](https://developers.google.com/workspace/gmail/api/guides/push). * @example * ```js * // Before running the sample: @@ -1318,7 +1318,7 @@ export namespace gmail_v1 { } /** - * Set up or update a push notification watch on the given user mailbox. + * Set up or update a push notification watch on the given user mailbox. For more information, see [Configure push notifications in Gmail API](https://developers.google.com/workspace/gmail/api/guides/push). * @example * ```js * // Before running the sample: @@ -1502,7 +1502,7 @@ export namespace gmail_v1 { } /** - * Creates a new draft with the `DRAFT` label. + * Creates a draft with the `DRAFT` label. For more information, see [Create and send draft emails](https://developers.google.com/workspace/gmail/api/guides/drafts). * @example * ```js * // Before running the sample: @@ -1662,7 +1662,7 @@ export namespace gmail_v1 { } /** - * Immediately and permanently deletes the specified draft. Does not simply trash it. + * Immediately and permanently deletes the specified draft. Does not simply trash it. For more information, see [Create and send draft emails](https://developers.google.com/workspace/gmail/api/guides/drafts). * @example * ```js * // Before running the sample: @@ -1799,7 +1799,7 @@ export namespace gmail_v1 { } /** - * Gets the specified draft. + * Gets the specified draft. For more information, see [Create and send draft emails](https://developers.google.com/workspace/gmail/api/guides/drafts). * @example * ```js * // Before running the sample: @@ -1945,7 +1945,7 @@ export namespace gmail_v1 { } /** - * Lists the drafts in the user's mailbox. + * Lists the drafts in the user's mailbox. For more information, see [Create and send draft emails](https://developers.google.com/workspace/gmail/api/guides/drafts). * @example * ```js * // Before running the sample: @@ -2097,7 +2097,7 @@ export namespace gmail_v1 { } /** - * Sends the specified, existing draft to the recipients in the `To`, `Cc`, and `Bcc` headers. + * Sends the specified, existing draft to the recipients in the `To`, `Cc`, and `Bcc` headers. For more information, see [Create and send draft emails](https://developers.google.com/workspace/gmail/api/guides/drafts). * @example * ```js * // Before running the sample: @@ -2264,7 +2264,7 @@ export namespace gmail_v1 { } /** - * Replaces a draft's content. + * Replaces a draft's content. For more information, see [Create and send draft emails](https://developers.google.com/workspace/gmail/api/guides/drafts). * @example * ```js * // Before running the sample: @@ -2561,7 +2561,7 @@ export namespace gmail_v1 { } /** - * Lists the history of all changes to the given mailbox. History results are returned in chronological order (increasing `historyId`). + * Lists the history of all changes to the given mailbox. History results are returned in chronological order (increasing `historyId`). For more information, see [Synchronize clients with Gmail](https://developers.google.com/workspace/gmail/api/guides/sync). * @example * ```js * // Before running the sample: @@ -2749,7 +2749,7 @@ export namespace gmail_v1 { } /** - * Creates a new label. + * Creates a label. For more information, see [Manage labels](https://developers.google.com/workspace/gmail/api/guides/labels). * @example * ```js * // Before running the sample: @@ -2916,7 +2916,7 @@ export namespace gmail_v1 { } /** - * Immediately and permanently deletes the specified label and removes it from any messages and threads that it is applied to. + * Immediately and permanently deletes the specified label and removes it from any messages and threads that it's applied to. For more information, see [Manage labels](https://developers.google.com/workspace/gmail/api/guides/labels). * @example * ```js * // Before running the sample: @@ -3052,7 +3052,7 @@ export namespace gmail_v1 { } /** - * Gets the specified label. + * Gets the specified label. For more information, see [Manage labels](https://developers.google.com/workspace/gmail/api/guides/labels). * @example * ```js * // Before running the sample: @@ -3205,7 +3205,7 @@ export namespace gmail_v1 { } /** - * Lists all labels in the user's mailbox. + * Lists all labels in the user's mailbox. For more information, see [Manage labels](https://developers.google.com/workspace/gmail/api/guides/labels). * @example * ```js * // Before running the sample: @@ -3348,7 +3348,7 @@ export namespace gmail_v1 { } /** - * Patch the specified label. + * Patch the specified label. For more information, see [Manage labels](https://developers.google.com/workspace/gmail/api/guides/labels). * @example * ```js * // Before running the sample: @@ -3517,7 +3517,7 @@ export namespace gmail_v1 { } /** - * Updates the specified label. + * Updates the specified label. For more information, see [Manage labels](https://developers.google.com/workspace/gmail/api/guides/labels). * @example * ```js * // Before running the sample: @@ -4334,7 +4334,7 @@ export namespace gmail_v1 { } /** - * Imports a message into only this user's mailbox, with standard email delivery scanning and classification similar to receiving via SMTP. This method doesn't perform SPF checks, so it might not work for some spam messages, such as those attempting to perform domain spoofing. This method does not send a message. Note that the maximum size of the message is 150MB. + * Imports a message into only this user's mailbox, with standard email delivery scanning and classification similar to receiving via SMTP. This method doesn't perform SPF checks, so it might not work for some spam messages, such as those attempting to perform domain spoofing. This method does not send a message. Note that the maximum size of the message is 150 MB. * @example * ```js * // Before running the sample: @@ -4516,7 +4516,7 @@ export namespace gmail_v1 { } /** - * Directly inserts a message into only this user's mailbox similar to `IMAP APPEND`, bypassing most scanning and classification. Does not send a message. + * Directly inserts a message into only this user's mailbox similar to `IMAP APPEND`, bypassing most scanning and classification. Does not send a message. For more information, see [Create and send email messages](https://developers.google.com/workspace/gmail/api/guides/sending). * @example * ```js * // Before running the sample: @@ -4694,7 +4694,7 @@ export namespace gmail_v1 { } /** - * Lists the messages in the user's mailbox. For example usage, see [List Gmail messages](https://developers.google.com/workspace/gmail/api/guides/list-messages). + * Lists the messages in the user's mailbox. For more information, see [List Gmail messages](https://developers.google.com/workspace/gmail/api/guides/list-messages). * @example * ```js * // Before running the sample: @@ -5009,7 +5009,7 @@ export namespace gmail_v1 { } /** - * Sends the specified message to the recipients in the `To`, `Cc`, and `Bcc` headers. For example usage, see [Sending email](https://developers.google.com/workspace/gmail/api/guides/sending). + * Sends the specified message to the recipients in the `To`, `Cc`, and `Bcc` headers. For more information, see [Create and send email messages](https://developers.google.com/workspace/gmail/api/guides/sending). * @example * ```js * // Before running the sample: @@ -5888,7 +5888,7 @@ export namespace gmail_v1 { } /** - * Gets the auto-forwarding setting for the specified account. + * Gets the auto-forwarding setting for the specified account. For more information, see [Manage email forwarding](https://developers.google.com/workspace/gmail/api/guides/forwarding_settings). * @example * ```js * // Before running the sample: @@ -6033,7 +6033,7 @@ export namespace gmail_v1 { } /** - * Gets IMAP settings. + * Gets IMAP settings. For more information, see [Configure POP and IMAP settings with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/pop_imap_settings). * @example * ```js * // Before running the sample: @@ -6178,7 +6178,7 @@ export namespace gmail_v1 { } /** - * Gets language settings. + * Gets language settings. For more information, see [Manage language settings](https://developers.google.com/workspace/gmail/api/guides/language-settings). * @example * ```js * // Before running the sample: @@ -6319,7 +6319,7 @@ export namespace gmail_v1 { } /** - * Gets POP settings. + * Gets POP settings. For more information, see [Configure POP and IMAP settings with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/pop_imap_settings). * @example * ```js * // Before running the sample: @@ -6462,7 +6462,7 @@ export namespace gmail_v1 { } /** - * Gets vacation responder settings. + * Gets vacation responder settings. For more information, see [Manage vacation settings with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/vacation_settings). * @example * ```js * // Before running the sample: @@ -6610,7 +6610,7 @@ export namespace gmail_v1 { } /** - * Updates the auto-forwarding setting for the specified account. A verified forwarding address must be specified when auto-forwarding is enabled. This method is only available to service account clients that have been delegated domain-wide authority. + * Updates the auto-forwarding setting for the specified account. A verified forwarding address must be specified when auto-forwarding is enabled. For more information, see [Manage email forwarding](https://developers.google.com/workspace/gmail/api/guides/forwarding_settings). This method is only available to service account clients that have been delegated domain-wide authority. * @example * ```js * // Before running the sample: @@ -6760,7 +6760,7 @@ export namespace gmail_v1 { } /** - * Updates IMAP settings. + * Updates IMAP settings. For more information, see [Configure POP and IMAP settings with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/pop_imap_settings). * @example * ```js * // Before running the sample: @@ -6911,7 +6911,7 @@ export namespace gmail_v1 { } /** - * Updates language settings. If successful, the return object contains the `displayLanguage` that was saved for the user, which may differ from the value passed into the request. This is because the requested `displayLanguage` may not be directly supported by Gmail but have a close variant that is, and so the variant may be chosen and saved instead. + * Updates language settings. For more information, see [Manage language settings](https://developers.google.com/workspace/gmail/api/guides/language-settings). If successful, the return object contains the `displayLanguage` that was saved for the user, which may differ from the value passed into the request. This is because the requested `displayLanguage` may not be directly supported by Gmail but have a close variant that is, and so the variant may be chosen and saved instead. * @example * ```js * // Before running the sample: @@ -7057,7 +7057,7 @@ export namespace gmail_v1 { } /** - * Updates POP settings. + * Updates POP settings. For more information, see [Configure POP and IMAP settings with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/pop_imap_settings). * @example * ```js * // Before running the sample: @@ -7204,7 +7204,7 @@ export namespace gmail_v1 { } /** - * Updates vacation responder settings. + * Updates vacation responder settings. For more information, see [Manage vacation settings with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/vacation_settings). * @example * ```js * // Before running the sample: @@ -9272,7 +9272,7 @@ export namespace gmail_v1 { } /** - * Adds a delegate with its verification status set directly to `accepted`, without sending any verification email. The delegate user must be a member of the same Google Workspace organization as the delegator user. Gmail imposes limitations on the number of delegates and delegators each user in a Google Workspace organization can have. These limits depend on your organization, but in general each user can have up to 25 delegates and up to 10 delegators. Note that a delegate user must be referred to by their primary email address, and not an email alias. Also note that when a new delegate is created, there may be up to a one minute delay before the new delegate is available for use. This method is only available to service account clients that have been delegated domain-wide authority. + * Adds a delegate with its verification status set directly to `accepted`, without sending any verification email. The delegate user must be a member of the same Google Workspace organization as the delegator user. For more information, see [Manage delegates](https://developers.google.com/workspace/gmail/api/guides/delegate_settings). Gmail imposes limitations on the number of delegates and delegators each user in a Google Workspace organization can have. These limits depend on your organization, but in general each user can have up to 25 delegates and up to 10 delegators. A delegate user must be referred to by their primary email address, and not an email alias. When a new delegate is created, there may be up to a one minute delay before the new delegate is available for use. This method is only available to service account clients that have been delegated domain-wide authority. * @example * ```js * // Before running the sample: @@ -9418,7 +9418,7 @@ export namespace gmail_v1 { } /** - * Removes the specified delegate (which can be of any verification status), and revokes any verification that may have been required for using it. Note that a delegate user must be referred to by their primary email address, and not an email alias. This method is only available to service account clients that have been delegated domain-wide authority. + * Removes the specified delegate (which can be of any verification status), and revokes any verification that may have been required for using it. For more information, see [Manage delegates](https://developers.google.com/workspace/gmail/api/guides/delegate_settings). A delegate user must be referred to by their primary email address, and not an email alias. This method is only available to service account clients that have been delegated domain-wide authority. * @example * ```js * // Before running the sample: @@ -9550,7 +9550,7 @@ export namespace gmail_v1 { } /** - * Gets the specified delegate. Note that a delegate user must be referred to by their primary email address, and not an email alias. This method is only available to service account clients that have been delegated domain-wide authority. + * Gets the specified delegate. For more information, see [Manage delegates](https://developers.google.com/workspace/gmail/api/guides/delegate_settings). A delegate user must be referred to by their primary email address, and not an email alias. This method is only available to service account clients that have been delegated domain-wide authority. * @example * ```js * // Before running the sample: @@ -9695,7 +9695,7 @@ export namespace gmail_v1 { } /** - * Lists the delegates for the specified account. This method is only available to service account clients that have been delegated domain-wide authority. + * Lists the delegates for the specified account. For more information, see [Manage delegates](https://developers.google.com/workspace/gmail/api/guides/delegate_settings). This method is only available to service account clients that have been delegated domain-wide authority. * @example * ```js * // Before running the sample: @@ -9883,7 +9883,7 @@ export namespace gmail_v1 { } /** - * Creates a filter. Note: you can only create a maximum of 1,000 filters. + * Creates a filter. Note: you can only create a maximum of 1,000 filters. For more information, see [Manage Gmail filters](https://developers.google.com/workspace/gmail/api/guides/filter_settings). * @example * ```js * // Before running the sample: @@ -10031,7 +10031,7 @@ export namespace gmail_v1 { } /** - * Immediately and permanently deletes the specified filter. + * Immediately and permanently deletes the specified filter. For more information, see [Manage Gmail filters](https://developers.google.com/workspace/gmail/api/guides/filter_settings). * @example * ```js * // Before running the sample: @@ -10162,7 +10162,7 @@ export namespace gmail_v1 { } /** - * Gets a filter. + * Gets a filter. For more information, see [Manage Gmail filters](https://developers.google.com/workspace/gmail/api/guides/filter_settings). * @example * ```js * // Before running the sample: @@ -10307,7 +10307,7 @@ export namespace gmail_v1 { } /** - * Lists the message filters of a Gmail user. + * Lists the message filters of a Gmail user. For more information, see [Manage Gmail filters](https://developers.google.com/workspace/gmail/api/guides/filter_settings). * @example * ```js * // Before running the sample: @@ -10493,7 +10493,7 @@ export namespace gmail_v1 { } /** - * Creates a forwarding address. If ownership verification is required, a message will be sent to the recipient and the resource's verification status will be set to `pending`; otherwise, the resource will be created with verification status set to `accepted`. This method is only available to service account clients that have been delegated domain-wide authority. + * Creates a forwarding address. If ownership verification is required, a message will be sent to the recipient and the resource's verification status will be set to `pending`; otherwise, the resource will be created with verification status set to `accepted`. For more information, see [Manage email forwarding](https://developers.google.com/workspace/gmail/api/guides/forwarding_settings). This method is only available to service account clients that have been delegated domain-wide authority. * @example * ```js * // Before running the sample: @@ -10640,7 +10640,7 @@ export namespace gmail_v1 { } /** - * Deletes the specified forwarding address and revokes any verification that may have been required. This method is only available to service account clients that have been delegated domain-wide authority. + * Deletes the specified forwarding address and revokes any verification that may have been required. For more information, see [Manage email forwarding](https://developers.google.com/workspace/gmail/api/guides/forwarding_settings). This method is only available to service account clients that have been delegated domain-wide authority. * @example * ```js * // Before running the sample: @@ -10773,7 +10773,7 @@ export namespace gmail_v1 { } /** - * Gets the specified forwarding address. + * Gets the specified forwarding address. For more information, see [Manage email forwarding](https://developers.google.com/workspace/gmail/api/guides/forwarding_settings). * @example * ```js * // Before running the sample: @@ -10918,7 +10918,7 @@ export namespace gmail_v1 { } /** - * Lists the forwarding addresses for the specified account. + * Lists the forwarding addresses for the specified account. For more information, see [Manage email forwarding](https://developers.google.com/workspace/gmail/api/guides/forwarding_settings). * @example * ```js * // Before running the sample: @@ -11114,7 +11114,7 @@ export namespace gmail_v1 { } /** - * Creates a custom "from" send-as alias. If an SMTP MSA is specified, Gmail will attempt to connect to the SMTP service to validate the configuration before creating the alias. If ownership verification is required for the alias, a message will be sent to the email address and the resource's verification status will be set to `pending`; otherwise, the resource will be created with verification status set to `accepted`. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias. This method is only available to service account clients that have been delegated domain-wide authority. + * Creates a custom "from" send-as alias. If an SMTP MSA is specified, Gmail will attempt to connect to the SMTP service to validate the configuration before creating the alias. If ownership verification is required for the alias, a message will be sent to the email address and the resource's verification status will be set to `pending`; otherwise, the resource will be created with verification status set to `accepted`. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings). This method is only available to service account clients that have been delegated domain-wide authority. * @example * ```js * // Before running the sample: @@ -11275,7 +11275,7 @@ export namespace gmail_v1 { } /** - * Deletes the specified send-as alias. Revokes any verification that may have been required for using it. This method is only available to service account clients that have been delegated domain-wide authority. + * Deletes the specified send-as alias. Revokes any verification that may have been required for using it. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings). This method is only available to service account clients that have been delegated domain-wide authority. * @example * ```js * // Before running the sample: @@ -11406,7 +11406,7 @@ export namespace gmail_v1 { } /** - * Gets the specified send-as alias. Fails with an HTTP 404 error if the specified address is not a member of the collection. + * Gets the specified send-as alias. Fails with an HTTP 404 error if the specified address is not a member of the collection. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings). * @example * ```js * // Before running the sample: @@ -11557,7 +11557,7 @@ export namespace gmail_v1 { } /** - * Lists the send-as aliases for the specified account. The result includes the primary send-as address associated with the account as well as any custom "from" aliases. + * Lists the send-as aliases for the specified account. The result includes the primary send-as address associated with the account as well as any custom "from" aliases. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings). * @example * ```js * // Before running the sample: @@ -11699,7 +11699,7 @@ export namespace gmail_v1 { } /** - * Patch the specified send-as alias. + * Patch the specified send-as alias. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings). * @example * ```js * // Before running the sample: @@ -11864,7 +11864,7 @@ export namespace gmail_v1 { } /** - * Updates a send-as alias. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias. Addresses other than the primary address for the account can only be updated by service account clients that have been delegated domain-wide authority. + * Updates a send-as alias. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings). Addresses other than the primary address for the account can only be updated by service account clients that have been delegated domain-wide authority. * @example * ```js * // Before running the sample: @@ -12029,7 +12029,7 @@ export namespace gmail_v1 { } /** - * Sends a verification email to the specified send-as alias address. The verification status must be `pending`. This method is only available to service account clients that have been delegated domain-wide authority. + * Sends a verification email to the specified send-as alias address. The verification status must be `pending`. For more information, see [Manage aliases and signatures with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/alias_and_signature_settings). This method is only available to service account clients that have been delegated domain-wide authority. * @example * ```js * // Before running the sample: @@ -12246,7 +12246,7 @@ export namespace gmail_v1 { } /** - * Deletes the specified S/MIME config for the specified send-as alias. + * Deletes the specified S/MIME config for the specified send-as alias. For more information, see [Manage S/MIME certificates with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/smime_certs). * @example * ```js * // Before running the sample: @@ -12383,7 +12383,7 @@ export namespace gmail_v1 { } /** - * Gets the specified S/MIME config for the specified send-as alias. + * Gets the specified S/MIME config for the specified send-as alias. For more information, see [Manage S/MIME certificates with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/smime_certs). * @example * ```js * // Before running the sample: @@ -12536,7 +12536,7 @@ export namespace gmail_v1 { } /** - * Insert (upload) the given S/MIME config for the specified send-as alias. Note that pkcs12 format is required for the key. + * Insert (upload) the given S/MIME config for the specified send-as alias. Note that `pkcs12` format is required for the key. For more information, see [Manage S/MIME certificates with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/smime_certs). * @example * ```js * // Before running the sample: @@ -12698,7 +12698,7 @@ export namespace gmail_v1 { } /** - * Lists S/MIME configs for the specified send-as alias. + * Lists S/MIME configs for the specified send-as alias. For more information, see [Manage S/MIME certificates with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/smime_certs). * @example * ```js * // Before running the sample: @@ -12845,7 +12845,7 @@ export namespace gmail_v1 { } /** - * Sets the default S/MIME config for the specified send-as alias. + * Sets the default S/MIME config for the specified send-as alias. For more information, see [Manage S/MIME certificates with the Gmail API](https://developers.google.com/workspace/gmail/api/guides/smime_certs). * @example * ```js * // Before running the sample: @@ -13058,7 +13058,7 @@ export namespace gmail_v1 { } /** - * Immediately and permanently deletes the specified thread. Any messages that belong to the thread are also deleted. This operation cannot be undone. Prefer `threads.trash` instead. + * Immediately and permanently deletes the specified thread. Any messages that belong to the thread are also deleted. This operation cannot be undone. Prefer `threads.trash` instead. For more information, see [Manage threads](https://developers.google.com/workspace/gmail/api/guides/threads). * @example * ```js * // Before running the sample: @@ -13190,7 +13190,7 @@ export namespace gmail_v1 { } /** - * Gets the specified thread. + * Gets the specified thread. For more information, see [Manage threads](https://developers.google.com/workspace/gmail/api/guides/threads). * @example * ```js * // Before running the sample: @@ -13344,7 +13344,7 @@ export namespace gmail_v1 { } /** - * Lists the threads in the user's mailbox. + * Lists the threads in the user's mailbox. For more information, see [Manage threads](https://developers.google.com/workspace/gmail/api/guides/threads). * @example * ```js * // Before running the sample: @@ -13498,7 +13498,7 @@ export namespace gmail_v1 { } /** - * Modifies the labels applied to the thread. This applies to all messages in the thread. + * Modifies the labels applied to the thread. This applies to all messages in the thread. For more information, see [Manage threads](https://developers.google.com/workspace/gmail/api/guides/threads). * @example * ```js * // Before running the sample: @@ -13651,7 +13651,7 @@ export namespace gmail_v1 { } /** - * Moves the specified thread to the trash. Any messages that belong to the thread are also moved to the trash. + * Moves the specified thread to the trash. Any messages that belong to the thread are also moved to the trash. For more information, see [Manage threads](https://developers.google.com/workspace/gmail/api/guides/threads). * @example * ```js * // Before running the sample: @@ -13795,7 +13795,7 @@ export namespace gmail_v1 { } /** - * Removes the specified thread from the trash. Any messages that belong to the thread are also removed from the trash. + * Removes the specified thread from the trash. Any messages that belong to the thread are also removed from the trash. For more information, see [Manage threads](https://developers.google.com/workspace/gmail/api/guides/threads). * @example * ```js * // Before running the sample: diff --git a/src/apis/gmailpostmastertools/v2.ts b/src/apis/gmailpostmastertools/v2.ts index 30d8ab5d298..0933a99a76d 100644 --- a/src/apis/gmailpostmastertools/v2.ts +++ b/src/apis/gmailpostmastertools/v2.ts @@ -1,4 +1,4 @@ -// Copyright 2026 Google LLC +// 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 diff --git a/src/apis/health/README.md b/src/apis/health/README.md new file mode 100644 index 00000000000..3a8a537584a --- /dev/null +++ b/src/apis/health/README.md @@ -0,0 +1,28 @@ +Google Inc. logo + +# health + +> The Google Health API lets you view and manage health and fitness metrics and measurement data. + +## Installation + +```sh +$ npm install @googleapis/health +``` + +## 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/health/classes/Health.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/health/index.ts b/src/apis/health/index.ts new file mode 100644 index 00000000000..3b017c16ef0 --- /dev/null +++ b/src/apis/health/index.ts @@ -0,0 +1,43 @@ +// 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 {health_v4} from './v4'; + +export const VERSIONS = { + v4: health_v4.Health, +}; + +export function health(version: 'v4'): health_v4.Health; +export function health(options: health_v4.Options): health_v4.Health; +export function health( + this: GoogleConfigurable, + versionOrOptions: 'v4' | health_v4.Options +) { + return getAPI('health', versionOrOptions, VERSIONS, this); +} + +const auth = new AuthPlus(); +export {auth}; +export {health_v4}; +export { + AuthPlus, + GlobalOptions, + APIRequestContext, + GoogleConfigurable, + StreamMethodOptions, + MethodOptions, + BodyResponseCallback, +} from 'googleapis-common'; diff --git a/src/apis/health/package.json b/src/apis/health/package.json new file mode 100644 index 00000000000..23e4e637e29 --- /dev/null +++ b/src/apis/health/package.json @@ -0,0 +1,43 @@ +{ + "name": "@googleapis/health", + "version": "0.1.0", + "description": "health", + "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": "^8.0.0" + }, + "devDependencies": { + "@microsoft/api-documenter": "^7.8.10", + "@microsoft/api-extractor": "^7.8.10", + "gts": "^6.0.0", + "null-loader": "^4.0.0", + "ts-loader": "^9.0.0", + "typescript": "5.7.3", + "webpack": "^5.0.0", + "webpack-cli": "^5.0.0" + } +} diff --git a/src/apis/health/tsconfig.json b/src/apis/health/tsconfig.json new file mode 100644 index 00000000000..e0810904968 --- /dev/null +++ b/src/apis/health/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "./node_modules/gts/tsconfig-google.json", + "compilerOptions": { + "rootDir": ".", + "outDir": "build" + }, + "include": [ + "*.ts", + ] +} diff --git a/src/apis/health/v4.ts b/src/apis/health/v4.ts new file mode 100644 index 00000000000..3b3c41bef60 --- /dev/null +++ b/src/apis/health/v4.ts @@ -0,0 +1,5424 @@ +// 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, + GaxiosResponseWithHTTP2, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace health_v4 { + export interface Options extends GlobalOptions { + version: 'v4'; + } + + 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; + } + + /** + * Google Health API + * + * The Google Health API lets you view and manage health and fitness metrics and measurement data. + * + * @example + * ```js + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * ``` + */ + export class Health { + context: APIRequestContext; + projects: Resource$Projects; + users: Resource$Users; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + + this.projects = new Resource$Projects(this.context); + this.users = new Resource$Users(this.context); + } + } + + /** + * Record of active minutes in a given time interval. + */ + export interface Schema$ActiveMinutes { + /** + * Required. Active minutes by activity level. At most one record per activity level is allowed. + */ + activeMinutesByActivityLevel?: Schema$ActiveMinutesByActivityLevel[]; + /** + * Required. Observed interval. + */ + interval?: Schema$ObservationTimeInterval; + } + /** + * Active minutes at a given activity level. + */ + export interface Schema$ActiveMinutesByActivityLevel { + /** + * Required. Number of whole minutes spent in activity. + */ + activeMinutes?: string | null; + /** + * Required. The level of activity. + */ + activityLevel?: string | null; + } + /** + * Active minutes by activity level. + */ + export interface Schema$ActiveMinutesRollupByActivityLevel { + /** + * Number of whole minutes spent in activity. + */ + activeMinutesSum?: string | null; + /** + * The level of activity. + */ + activityLevel?: string | null; + } + /** + * Represents the result of the rollup of the active minutes data type. + */ + export interface Schema$ActiveMinutesRollupValue { + /** + * Active minutes by activity level. At most one record per activity level is allowed. + */ + activeMinutesRollupByActivityLevel?: Schema$ActiveMinutesRollupByActivityLevel[]; + } + /** + * Record of active zone minutes in a given time interval. + */ + export interface Schema$ActiveZoneMinutes { + /** + * Required. Number of Active Zone Minutes earned in the given time interval. Note: active_zone_minutes equals to 1 for low intensity (fat burn) zones or 2 for high intensity zones (cardio, peak). + */ + activeZoneMinutes?: string | null; + /** + * Required. Heart rate zone in which the active zone minutes have been earned, in the given time interval. + */ + heartRateZone?: string | null; + /** + * Required. Observed interval. + */ + interval?: Schema$ObservationTimeInterval; + } + /** + * Represents the result of the rollup of the active zone minutes data type. + */ + export interface Schema$ActiveZoneMinutesRollupValue { + /** + * Active zone minutes in `HeartRateZone.CARDIO`. + */ + sumInCardioHeartZone?: string | null; + /** + * Active zone minutes in `HeartRateZone.FAT_BURN`. + */ + sumInFatBurnHeartZone?: string | null; + /** + * Active zone minutes in `HeartRateZone.PEAK`. + */ + sumInPeakHeartZone?: string | null; + } + /** + * Internal type to capture activity level during a certain time interval. + */ + export interface Schema$ActivityLevel { + /** + * Required. Activity level type in the given time interval. + */ + activityLevelType?: string | null; + /** + * Required. Observed interval. + */ + interval?: Schema$ObservationTimeInterval; + } + /** + * Represents the total duration in a specific activity level type. + */ + export interface Schema$ActivityLevelRollupByActivityLevelType { + /** + * Activity level type. + */ + activityLevelType?: string | null; + /** + * Total duration in the activity level type. + */ + totalDuration?: string | null; + } + /** + * Represents the result of the rollup of the activity level data type. + */ + export interface Schema$ActivityLevelRollupValue { + /** + * List of total durations in each activity level type. + */ + activityLevelRollupsByActivityLevelType?: Schema$ActivityLevelRollupByActivityLevelType[]; + } + /** + * Captures the altitude gain (i.e. deltas), and not level above sea, for a user in millimeters. + */ + export interface Schema$Altitude { + /** + * Required. Altitude gain in millimeters over the observed interval. + */ + gainMillimeters?: string | null; + /** + * Required. Observed interval. + */ + interval?: Schema$ObservationTimeInterval; + } + /** + * Represents the result of the rollup of the user's altitude. + */ + export interface Schema$AltitudeRollupValue { + /** + * Sum of the altitude gain in millimeters. + */ + gainMillimetersSum?: string | null; + } + /** + * Optional metadata for the application that provided this data. + */ + export interface Schema$Application { + /** + * Output only. The Google OAuth 2.0 client ID of the web application or service that recorded the data. This is the client ID used during the Google OAuth flow to obtain user credentials. This field is system-populated when the data is uploaded from Google Web API. + */ + googleWebClientId?: string | null; + /** + * Output only. A unique identifier for the mobile application that was the source of the data. This is typically the application's package name on Android (e.g., `com.google.fitbit`) or the bundle ID on iOS. This field is informational and helps trace data origin. This field is system-populated when the data is uploaded from the Fitbit mobile application, Health Connect or Health Kit. + */ + packageName?: string | null; + /** + * Output only. The client ID of the application that recorded the data. This ID is a legacy Fitbit API client ID, which is different from a Google OAuth client ID. Example format: `ABC123`. This field is system-populated and used for tracing data from legacy Fitbit API integrations. This field is system-populated when the data is uploaded from a legacy Fitbit API integration. + */ + webClientId?: string | null; + } + /** + * Number of calories burned due to basal metabolic rate (BMR) over a period of time. + */ + export interface Schema$BasalEnergyBurned { + /** + * Required. Observed interval. + */ + interval?: Schema$ObservationTimeInterval; + /** + * Required. Number of calories burned due to basal metabolic rate in kilocalories over the observed interval. + */ + kcal?: number | null; + } + /** + * Request to delete a batch of identifiable data points. + */ + export interface Schema$BatchDeleteDataPointsRequest { + /** + * Required. The names of the DataPoints to delete. A maximum of 10000 data points can be deleted in a single request. + */ + names?: string[] | null; + } + /** + * Body fat measurement. + */ + export interface Schema$BodyFat { + /** + * Required. Body fat percentage, in range [0, 100]. + */ + percentage?: number | null; + /** + * Required. The time at which body fat was measured. + */ + sampleTime?: Schema$ObservationSampleTime; + } + /** + * Represents the result of the rollup of the body fat data type. + */ + export interface Schema$BodyFatRollupValue { + /** + * Average body fat percentage. + */ + bodyFatPercentageAvg?: number | null; + } + /** + * Represents the result of the rollup of the calories in heart rate zone data type. + */ + export interface Schema$CaloriesInHeartRateZoneRollupValue { + /** + * List of calories burned in each heart rate zone. + */ + caloriesInHeartRateZones?: Schema$CaloriesInHeartRateZoneValue[]; + } + /** + * Represents the amount of kilocalories burned in a specific heart rate zone. + */ + export interface Schema$CaloriesInHeartRateZoneValue { + /** + * The heart rate zone. + */ + heartRateZone?: string | null; + /** + * The amount of kilocalories burned in the specified heart rate zone. + */ + kcal?: number | null; + } + /** + * Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. + */ + export interface Schema$CivilDateTime { + /** + * Required. Calendar date. + */ + date?: Schema$Date; + /** + * Optional. Time of day. Defaults to the start of the day, at midnight if omitted. + */ + time?: Schema$TimeOfDay; + } + /** + * Counterpart of google.type.Interval, but using CivilDateTime. + */ + export interface Schema$CivilTimeInterval { + /** + * Required. The exclusive end of the range. + */ + end?: Schema$CivilDateTime; + /** + * Required. The inclusive start of the range. + */ + start?: Schema$CivilDateTime; + } + /** + * Payload for creating a subscriber. + */ + export interface Schema$CreateSubscriberPayload { + /** + * Required. Authorization mechanism for the subscriber endpoint. The `secret` within this message is crucial for endpoint verification and for securing webhook notifications. + */ + endpointAuthorization?: Schema$EndpointAuthorization; + /** + * Required. The full HTTPS URI where update notifications will be sent. The URI must be a valid URL and use HTTPS as the scheme. This endpoint will be verified during the `CreateSubscriber` call. See CreateSubscriber RPC documentation for verification details. + */ + endpointUri?: string | null; + /** + * Optional. Configuration for the subscriber. + */ + subscriberConfigs?: Schema$SubscriberConfig[]; + } + /** + * Represents the daily heart rate variability data type. At least one of the following fields must be set: - `average_heart_rate_variability_milliseconds` - `non_rem_heart_rate_beats_per_minute` - `entropy` - `deep_sleep_root_mean_square_of_successive_differences_milliseconds` + */ + export interface Schema$DailyHeartRateVariability { + /** + * Optional. A user's average heart rate variability calculated using the root mean square of successive differences (RMSSD) in times between heartbeats. + */ + averageHeartRateVariabilityMilliseconds?: number | null; + /** + * Required. Date (in the user's timezone) of heart rate variability measurement. + */ + date?: Schema$Date; + /** + * Optional. The root mean square of successive differences (RMSSD) value during deep sleep. + */ + deepSleepRootMeanSquareOfSuccessiveDifferencesMilliseconds?: number | null; + /** + * Optional. The Shanon entropy of heartbeat intervals. Entropy quantifies randomness or disorder in a system. High entropy indicates high HRV. Entropy is measured from the histogram of time interval between successive heart beats values measured during sleep. + */ + entropy?: number | null; + /** + * Optional. Non-REM heart rate + */ + nonRemHeartRateBeatsPerMinute?: string | null; + } + /** + * User's heart rate zone thresholds based on the Karvonen algorithm for a specific day. + */ + export interface Schema$DailyHeartRateZones { + /** + * Required. Date (in user's timezone) of the heart rate zones record. + */ + date?: Schema$Date; + /** + * Required. The heart rate zones. + */ + heartRateZones?: Schema$HeartRateZone[]; + } + /** + * A daily oxygen saturation (SpO2) record. Represents the user's daily oxygen saturation summary, typically calculated during sleep. + */ + export interface Schema$DailyOxygenSaturation { + /** + * Required. The average value of the oxygen saturation samples during the sleep. + */ + averagePercentage?: number | null; + /** + * Required. Date (in user's timezone) of the daily oxygen saturation record. + */ + date?: Schema$Date; + /** + * Required. The lower bound of the confidence interval of oxygen saturation samples during sleep. + */ + lowerBoundPercentage?: number | null; + /** + * Optional. Standard deviation of the daily oxygen saturation averages from the past 7-30 days. + */ + standardDeviationPercentage?: number | null; + /** + * Required. The upper bound of the confidence interval of oxygen saturation samples during sleep. + */ + upperBoundPercentage?: number | null; + } + /** + * A daily average respiratory rate (breaths per minute) for a day of the year. One data point per day calculated for the main sleep. + */ + export interface Schema$DailyRespiratoryRate { + /** + * Required. The average number of breaths taken per minute. + */ + breathsPerMinute?: number | null; + /** + * Required. The date on which the respiratory rate was measured. + */ + date?: Schema$Date; + } + /** + * Measures the daily resting heart rate for a user, calculated using the all day heart rate measurements. + */ + export interface Schema$DailyRestingHeartRate { + /** + * Required. The resting heart rate value in beats per minute. + */ + beatsPerMinute?: string | null; + /** + * Optional. Metadata for the daily resting heart rate. + */ + dailyRestingHeartRateMetadata?: Schema$DailyRestingHeartRateMetadata; + /** + * Required. Date (in the user's timezone) of the resting heart rate measurement. + */ + date?: Schema$Date; + } + /** + * Metadata for the daily resting heart rate. + */ + export interface Schema$DailyRestingHeartRateMetadata { + /** + * Required. The method used to calculate the resting heart rate. + */ + calculationMethod?: string | null; + } + /** + * Value of a daily rollup for a single civil time interval (aggregation window) + */ + export interface Schema$DailyRollupDataPoint { + /** + * Returned by default when rolling up data points from the `active-minutes` data type, or when requested explicitly using the `active-minutes` rollup type identifier. + */ + activeMinutes?: Schema$ActiveMinutesRollupValue; + /** + * Returned by default when rolling up data points from the `active-zone-minutes` data type, or when requested explicitly using the `active-zone-minutes` rollup type identifier. + */ + activeZoneMinutes?: Schema$ActiveZoneMinutesRollupValue; + /** + * Returned by default when rolling up data points from the `activity-level` data type, or when requested explicitly using the `activity-level` rollup type identifier. + */ + activityLevel?: Schema$ActivityLevelRollupValue; + /** + * Returned by default when rolling up data points from the `altitude` data type, or when requested explicitly using the `altitude` rollup type identifier. + */ + altitude?: Schema$AltitudeRollupValue; + /** + * Returned by default when rolling up data points from the `body-fat` data type, or when requested explicitly using the `body-fat` rollup type identifier. + */ + bodyFat?: Schema$BodyFatRollupValue; + /** + * Returned by default when rolling up data points from the `calories-in-heart-rate-zone` data type, or when requested explicitly using the `calories-in-heart-rate-zone` rollup type identifier. + */ + caloriesInHeartRateZone?: Schema$CaloriesInHeartRateZoneRollupValue; + /** + * End time of the window this value aggregates over + */ + civilEndTime?: Schema$CivilDateTime; + /** + * Start time of the window this value aggregates over + */ + civilStartTime?: Schema$CivilDateTime; + /** + * Returned by default when rolling up data points from the `distance` data type, or when requested explicitly using the `distance` rollup type identifier. + */ + distance?: Schema$DistanceRollupValue; + /** + * Returned by default when rolling up data points from the `floors` data type, or when requested explicitly using the `floors` rollup type identifier. + */ + floors?: Schema$FloorsRollupValue; + /** + * Returned by default when rolling up data points from the `heart-rate` data type, or when requested explicitly using the `heart-rate` rollup type identifier. + */ + heartRate?: Schema$HeartRateRollupValue; + /** + * Returned by default when rolling up data points from the `daily-heart-rate-variability` data type, or when requested explicitly using the `heart-rate-variability-personal-range` rollup type identifier. + */ + heartRateVariabilityPersonalRange?: Schema$HeartRateVariabilityPersonalRangeRollupValue; + /** + * Returned by default when rolling up data points from the `hydration-log` data type, or when requested explicitly using the `hydration-log` rollup type identifier. + */ + hydrationLog?: Schema$HydrationLogRollupValue; + /** + * Returned by default when rolling up data points from the `daily-resting-heart-rate` data type, or when requested explicitly using the `resting-heart-rate-personal-range` rollup type identifier. + */ + restingHeartRatePersonalRange?: Schema$RestingHeartRatePersonalRangeRollupValue; + /** + * Returned by default when rolling up data points from the `run-vo2-max` data type, or when requested explicitly using the `run-vo2-max` rollup type identifier. + */ + runVo2Max?: Schema$RunVO2MaxRollupValue; + /** + * Returned by default when rolling up data points from the `sedentary-period` data type, or when requested explicitly using the `sedentary-period` rollup type identifier. + */ + sedentaryPeriod?: Schema$SedentaryPeriodRollupValue; + /** + * Returned by default when rolling up data points from the `steps` data type, or when requested explicitly using the `steps` rollup type identifier. + */ + steps?: Schema$StepsRollupValue; + /** + * Returned by default when rolling up data points from the `swim-lengths-data` data type, or when requested explicitly using the `swim-lengths-data` rollup type identifier. + */ + swimLengthsData?: Schema$SwimLengthsDataRollupValue; + /** + * Returned by default when rolling up data points from the `time-in-heart-rate-zone` data type, or when requested explicitly using the `time-in-heart-rate-zone` rollup type identifier. + */ + timeInHeartRateZone?: Schema$TimeInHeartRateZoneRollupValue; + /** + * Returned by default when rolling up data points from the `total-calories` data type, or when requested explicitly using the `total-calories` rollup type identifier. + */ + totalCalories?: Schema$TotalCaloriesRollupValue; + /** + * Returned by default when rolling up data points from the `weight` data type, or when requested explicitly using the `weight` rollup type identifier. + */ + weight?: Schema$WeightRollupValue; + } + /** + * Request to roll up data points by civil time intervals. + */ + export interface Schema$DailyRollUpDataPointsRequest { + /** + * Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family\}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources + */ + dataSourceFamily?: string | null; + /** + * Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly. + */ + pageSize?: number | null; + /** + * Optional. The `next_page_token` from a previous request, if any. All other request fields need to be the same as in the initial request when the page token is specified. + */ + pageToken?: string | null; + /** + * Required. Closed-open range of data points that will be rolled up. The start time must be aligned with the aggregation window. The maximum range for `calories-in-heart-rate-zone`, `heart-rate`, `active-minutes` and `total-calories` is 14 days. The maximum range for all other data types is 90 days. + */ + range?: Schema$CivilTimeInterval; + /** + * Optional. Aggregation window size, in number of days. Defaults to 1 if not specified. + */ + windowSizeDays?: number | null; + } + /** + * Response containing the list of rolled up data points. + */ + export interface Schema$DailyRollUpDataPointsResponse { + /** + * Values for each aggregation time window. + */ + rollupDataPoints?: Schema$DailyRollupDataPoint[]; + } + /** + * Provides derived sleep temperature values, calculated from skin or internal device temperature readings during sleep. + */ + export interface Schema$DailySleepTemperatureDerivations { + /** + * Optional. The user's baseline skin temperature. It is the median of the user's nightly skin temperature over the past 30 days. + */ + baselineTemperatureCelsius?: number | null; + /** + * Required. Date for which the sleep temperature derivations are calculated. + */ + date?: Schema$Date; + /** + * Required. The user's nightly skin temperature. It is the mean of skin temperature samples taken from the user’s sleep. + */ + nightlyTemperatureCelsius?: number | null; + /** + * Optional. The standard deviation of the user’s relative nightly skin temperature (temperature - baseline) over the past 30 days. + */ + relativeNightlyStddev30dCelsius?: number | null; + } + /** + * Contains a daily summary of the user's VO2 max (cardio fitness score), which is the maximum rate of oxygen the body can use during exercise. + */ + export interface Schema$DailyVO2Max { + /** + * Optional. Represents the user's cardio fitness level based on their VO2 max. + */ + cardioFitnessLevel?: string | null; + /** + * Required. The date for which the Daily VO2 max was measured. + */ + date?: Schema$Date; + /** + * Optional. An estimated field is added to indicate when the confidence has decreased sufficiently to consider the value an estimation. + */ + estimated?: boolean | null; + /** + * Required. Daily VO2 max value measured as in ml consumed oxygen / kg of body weight / min. + */ + vo2Max?: number | null; + /** + * Optional. The covariance of the VO2 max value. + */ + vo2MaxCovariance?: number | null; + } + /** + * A computed or recorded metric. + */ + export interface Schema$DataPoint { + /** + * Optional. Data for points in the `active-minutes` interval data type collection. + */ + activeMinutes?: Schema$ActiveMinutes; + /** + * Optional. Data for points in the `active-zone-minutes` interval data type collection, measured in minutes. + */ + activeZoneMinutes?: Schema$ActiveZoneMinutes; + /** + * Optional. Data for points in the `activity-level` daily data type collection. + */ + activityLevel?: Schema$ActivityLevel; + /** + * Optional. Data for points in the `altitude` interval data type collection. + */ + altitude?: Schema$Altitude; + /** + * Optional. Data for points in the `basal-energy-burned` interval data type collection. + */ + basalEnergyBurned?: Schema$BasalEnergyBurned; + /** + * Optional. Data for points in the `body-fat` sample data type collection. + */ + bodyFat?: Schema$BodyFat; + /** + * Optional. Data for points in the `daily-heart-rate-variability` daily data type collection. + */ + dailyHeartRateVariability?: Schema$DailyHeartRateVariability; + /** + * Optional. Data for points in the `daily-heart-rate-zones` daily data type collection. + */ + dailyHeartRateZones?: Schema$DailyHeartRateZones; + /** + * Optional. Data for points in the `daily-oxygen-saturation` daily data type collection. + */ + dailyOxygenSaturation?: Schema$DailyOxygenSaturation; + /** + * Optional. Data for points in the `daily-respiratory-rate` daily data type collection. + */ + dailyRespiratoryRate?: Schema$DailyRespiratoryRate; + /** + * Optional. Data for points in the `daily-resting-heart-rate` daily data type collection. + */ + dailyRestingHeartRate?: Schema$DailyRestingHeartRate; + /** + * Optional. Data for points in the `daily-sleep-temperature-derivations` daily data type collection. + */ + dailySleepTemperatureDerivations?: Schema$DailySleepTemperatureDerivations; + /** + * Optional. Data for points in the `daily-vo2-max` daily data type collection. + */ + dailyVo2Max?: Schema$DailyVO2Max; + /** + * Optional. Data source information for the metric + */ + dataSource?: Schema$DataSource; + /** + * Optional. Data for points in the `distance` interval data type collection. + */ + distance?: Schema$Distance; + /** + * Optional. Data for points in the `exercise` session data type collection. + */ + exercise?: Schema$Exercise; + /** + * Optional. Data for points in the `floors` interval data type collection. + */ + floors?: Schema$Floors; + /** + * Optional. Data for points in the `heart-rate` sample data type collection. + */ + heartRate?: Schema$HeartRate; + /** + * Optional. Data for points in the `heart-rate-variability` sample data type collection. + */ + heartRateVariability?: Schema$HeartRateVariability; + /** + * Optional. Data for points in the `height` sample data type collection. + */ + height?: Schema$Height; + /** + * Optional. Data for points in the `hydration-log` session data type collection. + */ + hydrationLog?: Schema$HydrationLog; + /** + * Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user\}/dataTypes/{data_type\}/dataPoints/{data_point\}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user\}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type\}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point\}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens. + */ + name?: string | null; + /** + * Optional. Data for points in the `oxygen-saturation` sample data type collection. + */ + oxygenSaturation?: Schema$OxygenSaturation; + /** + * Optional. Data for points in the `respiratory-rate-sleep-summary` sample data type collection. + */ + respiratoryRateSleepSummary?: Schema$RespiratoryRateSleepSummary; + /** + * Optional. Data for points in the `run-vo2-max` sample data type collection. + */ + runVo2Max?: Schema$RunVO2Max; + /** + * Optional. Data for points in the `sedentary-period` interval data type collection. + */ + sedentaryPeriod?: Schema$SedentaryPeriod; + /** + * Optional. Data for points in the `sleep` session data type collection. + */ + sleep?: Schema$Sleep; + /** + * Optional. Data for points in the `steps` interval data type collection. + */ + steps?: Schema$Steps; + /** + * Optional. Data for points in the `swim-lengths-data` interval data type collection. + */ + swimLengthsData?: Schema$SwimLengthsData; + /** + * Optional. Data for points in the `time-in-heart-rate-zone` interval data type collection. + */ + timeInHeartRateZone?: Schema$TimeInHeartRateZone; + /** + * Optional. Data for points in the `vo2-max` sample data type collection. + */ + vo2Max?: Schema$VO2Max; + /** + * Optional. Data for points in the `weight` sample data type collection. + */ + weight?: Schema$Weight; + } + /** + * Data Source definition to track the origin of data. Each health data point, regardless of the complexity or data model (whether a simple step count or a detailed sleep session) must retain information about its source of origin (e.g. the device or app that collected it). + */ + export interface Schema$DataSource { + /** + * Output only. Captures metadata for the application that provided this data. + */ + application?: Schema$Application; + /** + * Optional. Captures metadata for raw data points originating from devices. We expect this data source to be used for data points written on device sync. + */ + device?: Schema$Device; + /** + * Output only. Captures the platform that uploaded the data. + */ + platform?: string | null; + /** + * Optional. Captures how the data was recorded. + */ + recordingMethod?: string | null; + } + /** + * Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp + */ + export interface Schema$Date { + /** + * Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. + */ + day?: number | null; + /** + * Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. + */ + month?: number | null; + /** + * Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. + */ + year?: number | null; + } + /** + * Represents civil time (or occasionally physical time). This type can represent a civil time in one of a few possible ways: * When utc_offset is set and time_zone is unset: a civil time on a calendar day with a particular offset from UTC. * When time_zone is set and utc_offset is unset: a civil time on a calendar day in a particular time zone. * When neither time_zone nor utc_offset is set: a civil time on a calendar day in local time. The date is relative to the Proleptic Gregorian Calendar. If year, month, or day are 0, the DateTime is considered not to have a specific year, month, or day respectively. This type may also be used to represent a physical time if all the date and time fields are set and either case of the `time_offset` oneof is set. Consider using `Timestamp` message for physical time instead. If your use case also would like to store the user's timezone, that can be done in another field. This type is more flexible than some applications may want. Make sure to document and validate your application's limitations. + */ + export interface Schema$DateTime { + /** + * Optional. Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a datetime without a day. + */ + day?: number | null; + /** + * Optional. Hours of day in 24 hour format. Should be from 0 to 23, defaults to 0 (midnight). An API may choose to allow the value "24:00:00" for scenarios like business closing time. + */ + hours?: number | null; + /** + * Optional. Minutes of hour of day. Must be from 0 to 59, defaults to 0. + */ + minutes?: number | null; + /** + * Optional. Month of year. Must be from 1 to 12, or 0 if specifying a datetime without a month. + */ + month?: number | null; + /** + * Optional. Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999, defaults to 0. + */ + nanos?: number | null; + /** + * Optional. Seconds of minutes of the time. Must normally be from 0 to 59, defaults to 0. An API may allow the value 60 if it allows leap-seconds. + */ + seconds?: number | null; + /** + * Time zone. + */ + timeZone?: Schema$TimeZone; + /** + * UTC offset. Must be whole seconds, between -18 hours and +18 hours. For example, a UTC offset of -4:00 would be represented as { seconds: -14400 \}. + */ + utcOffset?: string | null; + /** + * Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a datetime without a year. + */ + year?: number | null; + } + /** + * Captures metadata about the device that recorded the measurement. + */ + export interface Schema$Device { + /** + * Optional. An optional name for the device. + */ + displayName?: string | null; + /** + * Optional. Captures the form factor of the device. + */ + formFactor?: string | null; + /** + * Optional. An optional manufacturer of the device. + */ + manufacturer?: string | null; + } + /** + * Distance traveled over an interval of time. + */ + export interface Schema$Distance { + /** + * Required. Observed interval. + */ + interval?: Schema$ObservationTimeInterval; + /** + * Required. Distance in millimeters over the observed interval. + */ + millimeters?: string | null; + } + /** + * Result of the rollup of the user's distance. + */ + export interface Schema$DistanceRollupValue { + /** + * Sum of the distance in millimeters. + */ + millimetersSum?: string | null; + } + /** + * Authorization mechanism for a subscriber endpoint. For all requests sent by the Webhooks service, the JSON payload is cryptographically signed. The signature is delivered in the `X-HEALTHAPI-SIGNATURE` HTTP header. This is an ECDSA (NIST P256) signature of the JSON payload. Clients must verify this signature using Google Health API's public key to confirm the payload was sent by the Health API. + */ + export interface Schema$EndpointAuthorization { + /** + * Required. Input only. Provides a client-provided secret that will be sent with each notification to the subscriber endpoint using the "Authorization" header. The value must include the authorization scheme, e.g., "Bearer " or "Basic ", as it will be used as the full Authorization header value. This secret is used by the API to test the endpoint during `CreateSubscriber` and `UpdateSubscriber` calls, and will be sent in the `Authorization` header for all subsequent webhook notifications to this endpoint. + */ + secret?: string | null; + /** + * Output only. Whether the secret is set. + */ + secretSet?: boolean | null; + } + /** + * An exercise that stores information about a physical activity. + */ + export interface Schema$Exercise { + /** + * Optional. Duration excluding pauses. + */ + activeDuration?: string | null; + /** + * Output only. Represents the timestamp of the creation of the exercise. + */ + createTime?: string | null; + /** + * Required. Exercise display name. + */ + displayName?: string | null; + /** + * Optional. Exercise events that happen during an exercise, such as pause & restarts. + */ + exerciseEvents?: Schema$ExerciseEvent[]; + /** + * Optional. Additional exercise metadata. + */ + exerciseMetadata?: Schema$ExerciseMetadata; + /** + * Required. The type of activity performed during an exercise. + */ + exerciseType?: string | null; + /** + * Required. Observed exercise interval + */ + interval?: Schema$SessionTimeInterval; + /** + * Required. Summary metrics for this exercise ( ) + */ + metricsSummary?: Schema$MetricsSummary; + /** + * Optional. Standard free-form notes captured at manual logging. + */ + notes?: string | null; + /** + * Optional. The default split is 1 km or 1 mile. - if the movement distance is less than the default, then there are no splits - if the movement distance is greater than or equal to the default, then we have splits + */ + splits?: Schema$SplitSummary[]; + /** + * Optional. Laps or splits recorded within an exercise. Laps could be split based on distance or other criteria (duration, etc.) Laps should not be overlapping with each other. + */ + splitSummaries?: Schema$SplitSummary[]; + /** + * Output only. This is the timestamp of the last update to the exercise. + */ + updateTime?: string | null; + } + /** + * Represents instantaneous events that happen during an exercise, such as start, stop, pause, split. + */ + export interface Schema$ExerciseEvent { + /** + * Required. Exercise event time + */ + eventTime?: string | null; + /** + * Required. Exercise event time offset from UTC + */ + eventUtcOffset?: string | null; + /** + * Required. The type of the event, such as start, stop, pause, resume. + */ + exerciseEventType?: string | null; + } + /** + * Additional exercise metadata. + */ + export interface Schema$ExerciseMetadata { + /** + * Optional. Whether the exercise had GPS tracking. + */ + hasGps?: boolean | null; + /** + * Optional. Pool length in millimeters. Only present in the swimming exercises. + */ + poolLengthMillimeters?: string | null; + } + /** + * Represents a Response for exporting exercise data in TCX format. + */ + export interface Schema$ExportExerciseTcxResponse { + /** + * Contains the exported TCX data. + */ + tcxData?: string | null; + } + /** + * Gained elevation measured in floors over the time interval + */ + export interface Schema$Floors { + /** + * Required. Number of floors in the recorded interval + */ + count?: string | null; + /** + * Required. Observed interval + */ + interval?: Schema$ObservationTimeInterval; + } + /** + * Represents the result of the rollup of the user's floors. + */ + export interface Schema$FloorsRollupValue { + /** + * Sum of the floors count. + */ + countSum?: string | null; + } + /** + * Represents a type of health data a user can have data points recorded for. It matches the parent resource of collection containing data points of the given type. Clients currently do not need to interact with this resource directly. + */ + export interface Schema$GoogleDevicesandservicesHealthV4DataType { + /** + * Identifier. The resource name of the data type. Format: `users/{user\}/dataTypes/{data_type\}` See DataPoint.name for examples and possible values. + */ + name?: string | null; + } + /** + * Log message for a webhook notification sent by the Google Health API to a subscriber's endpoint. Includes the HTTP response received from the endpoint. + */ + export interface Schema$GoogleDevicesandservicesHealthV4WebhookNotificationCloudLog { + /** + * Required. Represents the HTTP response. This message includes the status code, reason phrase, headers, and body. + */ + httpResponse?: Schema$HttpResponse; + } + /** + * A heart rate measurement. + */ + export interface Schema$HeartRate { + /** + * Required. The heart rate value in beats per minute. + */ + beatsPerMinute?: string | null; + /** + * Optional. Metadata about the heart rate sample. + */ + metadata?: Schema$HeartRateMetadata; + /** + * Required. Observation time + */ + sampleTime?: Schema$ObservationSampleTime; + } + /** + * Heart rate metadata. + */ + export interface Schema$HeartRateMetadata { + /** + * Optional. Indicates the user’s level of activity when the heart rate sample was measured + */ + motionContext?: string | null; + /** + * Optional. Indicates the location of the sensor that measured the heart rate. + */ + sensorLocation?: string | null; + } + /** + * Represents the result of the rollup of the heart rate data type. + */ + export interface Schema$HeartRateRollupValue { + /** + * The average heart rate value in the interval. + */ + beatsPerMinuteAvg?: number | null; + /** + * The maximum heart rate value in the interval. + */ + beatsPerMinuteMax?: number | null; + /** + * The minimum heart rate value in the interval. + */ + beatsPerMinuteMin?: number | null; + } + /** + * Captures user's heart rate variability (HRV) as measured by the root mean square of successive differences (RMSSD) between normal heartbeats or by standard deviation of the inter-beat intervals (SDNN). + */ + export interface Schema$HeartRateVariability { + /** + * Optional. The root mean square of successive differences between normal heartbeats. This is a measure of heart rate variability used by Fitbit. + */ + rootMeanSquareOfSuccessiveDifferencesMilliseconds?: number | null; + /** + * Required. The time of the heart rate variability measurement. + */ + sampleTime?: Schema$ObservationSampleTime; + /** + * Optional. The standard deviation of the heart rate variability measurement. + */ + standardDeviationMilliseconds?: number | null; + } + /** + * Represents the result of the rollup of the user's daily heart rate variability personal range. + */ + export interface Schema$HeartRateVariabilityPersonalRangeRollupValue { + /** + * The upper bound of the user's average heart rate variability personal range. + */ + averageHeartRateVariabilityMillisecondsMax?: number | null; + /** + * The lower bound of the user's average heart rate variability personal range. + */ + averageHeartRateVariabilityMillisecondsMin?: number | null; + } + /** + * The heart rate zone. + */ + export interface Schema$HeartRateZone { + /** + * Required. The heart rate zone type. + */ + heartRateZoneType?: string | null; + /** + * Required. Maximum heart rate for this zone in beats per minute. + */ + maxBeatsPerMinute?: string | null; + /** + * Required. Minimum heart rate for this zone in beats per minute. + */ + minBeatsPerMinute?: string | null; + } + /** + * Body height measurement. + */ + export interface Schema$Height { + /** + * Required. Height of the user in millimeters. + */ + heightMillimeters?: string | null; + /** + * Required. The time at which the height was recorded. + */ + sampleTime?: Schema$ObservationSampleTime; + } + /** + * Represents an HTTP header. + */ + export interface Schema$HttpHeader { + /** + * The HTTP header key. It is case insensitive. + */ + key?: string | null; + /** + * The HTTP header value. + */ + value?: string | null; + } + /** + * Represents an HTTP response. + */ + export interface Schema$HttpResponse { + /** + * The HTTP response body. If the body is not expected, it should be empty. + */ + body?: string | null; + /** + * The HTTP response headers. The ordering of the headers is significant. Multiple headers with the same key may present for the response. + */ + headers?: Schema$HttpHeader[]; + /** + * The HTTP reason phrase, such as "OK" or "Not Found". + */ + reason?: string | null; + /** + * The HTTP status code, such as 200 or 404. + */ + status?: number | null; + } + /** + * Holds information about a user logged hydration. + */ + export interface Schema$HydrationLog { + /** + * Required. Amount of liquid (ex. water) consumed. + */ + amountConsumed?: Schema$VolumeQuantity; + /** + * Required. Observed interval. + */ + interval?: Schema$SessionTimeInterval; + } + /** + * Represents the result of the rollup of the hydration log data type. + */ + export interface Schema$HydrationLogRollupValue { + /** + * Rollup for amount consumed. + */ + amountConsumed?: Schema$VolumeQuantityRollup; + } + /** + * Represents details about the Google user's identity. + */ + export interface Schema$Identity { + /** + * Output only. The Google User Identifier in the Google Health APIs. It matches the `{user\}` resource ID segment in the resource name paths, e.g. `users/{user\}/dataTypes/steps`. Valid values are strings of 1-63 characters, and valid characters are lowercase and uppercase letters, numbers, and hyphens. + */ + healthUserId?: string | null; + /** + * Output only. The legacy Fitbit User identifier. This is the Fitbit ID used in the legacy Fitbit APIs (v1-v3). It can be referenced by clients migrating from the legacy Fitbit APIs to map their existing identifiers to the new Google user ID. It **must not** be used for any other purpose. It is not of any use for new clients using only the Google Health APIs. Valid values are strings of 1-63 characters, and valid characters are lowercase and uppercase letters, numbers, and hyphens. + */ + legacyUserId?: string | null; + /** + * Identifier. The resource name of this Identity resource. Format: `users/me/identity` + */ + name?: string | null; + } + /** + * Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time. + */ + export interface Schema$Interval { + /** + * Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end. + */ + endTime?: string | null; + /** + * Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start. + */ + startTime?: string | null; + } + /** + * Response containing raw data points matching the query + */ + export interface Schema$ListDataPointsResponse { + /** + * Data points matching the query + */ + dataPoints?: Schema$DataPoint[]; + /** + * Next page token, empty if the response is complete + */ + nextPageToken?: string | null; + } + /** + * Response message for ListSubscribers. + */ + export interface Schema$ListSubscribersResponse { + /** + * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * Subscribers from the specified project. + */ + subscribers?: Schema$Subscriber[]; + /** + * The total number of subscribers matching the request. + */ + totalSize?: number | null; + } + /** + * Summary metrics for an exercise. + */ + export interface Schema$MetricsSummary { + /** + * Optional. Total active zone minutes for the exercise. + */ + activeZoneMinutes?: string | null; + /** + * Optional. Average heart rate during the exercise. + */ + averageHeartRateBeatsPerMinute?: string | null; + /** + * Optional. Average pace in seconds per meter. + */ + averagePaceSecondsPerMeter?: number | null; + /** + * Optional. Average speed in millimeters per second. + */ + averageSpeedMillimetersPerSecond?: number | null; + /** + * Optional. Total calories burned by the user during the exercise. + */ + caloriesKcal?: number | null; + /** + * Optional. Total distance covered by the user during the exercise. + */ + distanceMillimeters?: number | null; + /** + * Optional. Total elevation gain during the exercise. + */ + elevationGainMillimeters?: number | null; + /** + * Optional. Time spent in each heart rate zone. + */ + heartRateZoneDurations?: Schema$TimeInHeartRateZones; + /** + * Optional. Mobility workouts specific metrics. Only present in the advanced running exercises. + */ + mobilityMetrics?: Schema$MobilityMetrics; + /** + * Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise. + */ + runVo2Max?: number | null; + /** + * Optional. Total steps taken during the exercise. + */ + steps?: string | null; + /** + * Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise. + */ + totalSwimLengths?: number | null; + } + /** + * Mobility workouts specific metrics + */ + export interface Schema$MobilityMetrics { + /** + * Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout. + */ + avgCadenceStepsPerMinute?: number | null; + /** + * Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride + */ + avgGroundContactTimeDuration?: string | null; + /** + * Optional. Stride length is a measure of the distance covered by a single stride + */ + avgStrideLengthMillimeters?: string | null; + /** + * Optional. Distance off the ground your center of mass moves with each stride while running + */ + avgVerticalOscillationMillimeters?: string | null; + /** + * Optional. Vertical oscillation/stride length between [5.0, 11.0]. + */ + avgVerticalRatio?: number | null; + } + /** + * Represents a sample time of an observed data point. + */ + export interface Schema$ObservationSampleTime { + /** + * Output only. The civil time in the timezone the subject is in at the time of the observation. + */ + civilTime?: Schema$CivilDateTime; + /** + * Required. The time of the observation. + */ + physicalTime?: string | null; + /** + * Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC). + */ + utcOffset?: string | null; + } + /** + * Represents a time interval of an observed data point. + */ + export interface Schema$ObservationTimeInterval { + /** + * Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval + */ + civilEndTime?: Schema$CivilDateTime; + /** + * Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval + */ + civilStartTime?: Schema$CivilDateTime; + /** + * Required. Observed interval end time. + */ + endTime?: string | null; + /** + * Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC). + */ + endUtcOffset?: string | null; + /** + * Required. Observed interval start time. + */ + startTime?: string | null; + /** + * Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC). + */ + startUtcOffset?: 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; + } + /** + * A time interval to represent an out-of-bed segment. + */ + export interface Schema$OutOfBedSegment { + /** + * Required. Segment end time. + */ + endTime?: string | null; + /** + * Required. The offset of the user's local time at the end of the segment relative to the Coordinated Universal Time (UTC). + */ + endUtcOffset?: string | null; + /** + * Required. Segment tart time. + */ + startTime?: string | null; + /** + * Required. The offset of the user's local time at the start of the segment relative to the Coordinated Universal Time (UTC). + */ + startUtcOffset?: string | null; + } + /** + * Captures the user's instantaneous oxygen saturation percentage (SpO2). + */ + export interface Schema$OxygenSaturation { + /** + * Required. The oxygen saturation percentage. Valid values are from 0 to 100. + */ + percentage?: number | null; + /** + * Required. The time at which oxygen saturation was measured. + */ + sampleTime?: Schema$ObservationSampleTime; + } + /** + * Profile details. + */ + export interface Schema$Profile { + /** + * Optional. The age in years based on the user's birth date. Updates to this field are currently not supported. + */ + age?: number | null; + /** + * Output only. The automatically calculated running stride length, in millimeters. The user must consent to one of the following access scopes to access this field: - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly` - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness` + */ + autoRunningStrideLengthMm?: number | null; + /** + * Output only. The automatically calculated walking stride length, in millimeters. The user must consent to one of the following access scopes to access this field: - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly` - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness` + */ + autoWalkingStrideLengthMm?: number | null; + /** + * Output only. The date the user created their account. Updates to this field are currently not supported. + */ + membershipStartDate?: Schema$Date; + /** + * Identifier. The resource name of this Profile resource. Format: `users/{user\}/profile` Example: `users/1234567890/profile` or `users/me/profile` The {user\} ID is a system-generated Google Health API user ID, a string of 1-63 characters consisting of lowercase and uppercase letters, numbers, and hyphens. The literal `me` can also be used to refer to the authenticated user. + */ + name?: string | null; + /** + * Optional. The user's user configured running stride length, in millimeters. The user must consent to one of the following access scopes to access this field: - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly` - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness` + */ + userConfiguredRunningStrideLengthMm?: number | null; + /** + * Optional. The user's user configured walking stride length, in millimeters. The user must consent to one of the following access scopes to access this field: - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly` - `https://www.googleapis.com/auth/googlehealth.activity_and_fitness` + */ + userConfiguredWalkingStrideLengthMm?: number | null; + } + /** + * Response containing the list of reconciled DataPoints. + */ + export interface Schema$ReconcileDataPointsResponse { + /** + * Data points matching the query + */ + dataPoints?: Schema$ReconciledDataPoint[]; + /** + * Next page token, empty if the response is complete + */ + nextPageToken?: string | null; + } + /** + * A reconciled computed or recorded metric. + */ + export interface Schema$ReconciledDataPoint { + /** + * Data for points in the `active-minutes` interval data type collection. + */ + activeMinutes?: Schema$ActiveMinutes; + /** + * Data for points in the `active-zone-minutes` interval data type collection, measured in minutes. + */ + activeZoneMinutes?: Schema$ActiveZoneMinutes; + /** + * Data for points in the `activity-level` daily data type collection. + */ + activityLevel?: Schema$ActivityLevel; + /** + * Data for points in the `altitude` interval data type collection. + */ + altitude?: Schema$Altitude; + /** + * Data for points in the `basal-energy-burned` interval data type collection. + */ + basalEnergyBurned?: Schema$BasalEnergyBurned; + /** + * Data for points in the `body-fat` sample data type collection. + */ + bodyFat?: Schema$BodyFat; + /** + * Data for points in the `daily-heart-rate-variability` daily data type collection. + */ + dailyHeartRateVariability?: Schema$DailyHeartRateVariability; + /** + * Data for points in the `daily-heart-rate-zones` daily data type collection. + */ + dailyHeartRateZones?: Schema$DailyHeartRateZones; + /** + * Data for points in the `daily-oxygen-saturation` daily data type collection. + */ + dailyOxygenSaturation?: Schema$DailyOxygenSaturation; + /** + * Data for points in the `daily-respiratory-rate` daily data type collection. + */ + dailyRespiratoryRate?: Schema$DailyRespiratoryRate; + /** + * Data for points in the `daily-resting-heart-rate` daily data type collection. + */ + dailyRestingHeartRate?: Schema$DailyRestingHeartRate; + /** + * Data for points in the `daily-sleep-temperature-derivations` daily data type collection. + */ + dailySleepTemperatureDerivations?: Schema$DailySleepTemperatureDerivations; + /** + * Data for points in the `daily-vo2-max` daily data type collection. + */ + dailyVo2Max?: Schema$DailyVO2Max; + /** + * Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user\}/dataTypes/{data_type\}/dataPoints/{data_point\}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user\}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type\}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point\}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens. + */ + dataPointName?: string | null; + /** + * Data for points in the `distance` interval data type collection. + */ + distance?: Schema$Distance; + /** + * Data for points in the `exercise` session data type collection. + */ + exercise?: Schema$Exercise; + /** + * Data for points in the `floors` interval data type collection. + */ + floors?: Schema$Floors; + /** + * Data for points in the `heart-rate` sample data type collection. + */ + heartRate?: Schema$HeartRate; + /** + * Data for points in the `heart-rate-variability` sample data type collection. + */ + heartRateVariability?: Schema$HeartRateVariability; + /** + * Data for points in the `height` sample data type collection. + */ + height?: Schema$Height; + /** + * Data for points in the `hydration-log` session data type collection. + */ + hydrationLog?: Schema$HydrationLog; + /** + * Data for points in the `oxygen-saturation` sample data type collection. + */ + oxygenSaturation?: Schema$OxygenSaturation; + /** + * Data for points in the `respiratory-rate-sleep-summary` sample data type collection. + */ + respiratoryRateSleepSummary?: Schema$RespiratoryRateSleepSummary; + /** + * Data for points in the `run-vo2-max` sample data type collection. + */ + runVo2Max?: Schema$RunVO2Max; + /** + * Data for points in the `sedentary-period` interval data type collection. + */ + sedentaryPeriod?: Schema$SedentaryPeriod; + /** + * Data for points in the `sleep` session data type collection. + */ + sleep?: Schema$Sleep; + /** + * Data for points in the `steps` interval data type collection. + */ + steps?: Schema$Steps; + /** + * Data for points in the `swim-lengths-data` interval data type collection. + */ + swimLengthsData?: Schema$SwimLengthsData; + /** + * Data for points in the `time-in-heart-rate-zone` interval data type collection. + */ + timeInHeartRateZone?: Schema$TimeInHeartRateZone; + /** + * Data for points in the `vo2-max` sample data type collection. + */ + vo2Max?: Schema$VO2Max; + /** + * Data for points in the `weight` sample data type collection. + */ + weight?: Schema$Weight; + } + /** + * Records respiratory rate details during sleep. Can have multiple per day if the user sleeps multiple times. + */ + export interface Schema$RespiratoryRateSleepSummary { + /** + * Optional. Respiratory rate statistics for deep sleep. + */ + deepSleepStats?: Schema$RespiratoryRateSleepSummaryStatistics; + /** + * Required. Full respiratory rate statistics. + */ + fullSleepStats?: Schema$RespiratoryRateSleepSummaryStatistics; + /** + * Optional. Respiratory rate statistics for light sleep. + */ + lightSleepStats?: Schema$RespiratoryRateSleepSummaryStatistics; + /** + * Optional. Respiratory rate statistics for REM sleep. + */ + remSleepStats?: Schema$RespiratoryRateSleepSummaryStatistics; + /** + * Required. The time at which respiratory rate was measured. + */ + sampleTime?: Schema$ObservationSampleTime; + } + /** + * Respiratory rate statistics for a given sleep stage. + */ + export interface Schema$RespiratoryRateSleepSummaryStatistics { + /** + * Required. Average breaths per minute. + */ + breathsPerMinute?: number | null; + /** + * Optional. How trustworthy the data is for the computation. + */ + signalToNoise?: number | null; + /** + * Optional. Standard deviation of the respiratory rate during sleep. + */ + standardDeviation?: number | null; + } + /** + * Represents the rollup value for the daily resting heart rate data type. + */ + export interface Schema$RestingHeartRatePersonalRangeRollupValue { + /** + * The upper bound of the user's daily resting heart rate personal range. + */ + beatsPerMinuteMax?: number | null; + /** + * The lower bound of the user's daily resting heart rate personal range. + */ + beatsPerMinuteMin?: number | null; + } + /** + * Value of a rollup for a single physical time interval (aggregation window) + */ + export interface Schema$RollupDataPoint { + /** + * Returned by default when rolling up data points from the `active-minutes` data type, or when requested explicitly using the `active-minutes` rollup type identifier. + */ + activeMinutes?: Schema$ActiveMinutesRollupValue; + /** + * Returned by default when rolling up data points from the `active-zone-minutes` data type, or when requested explicitly using the `active-zone-minutes` rollup type identifier. + */ + activeZoneMinutes?: Schema$ActiveZoneMinutesRollupValue; + /** + * Returned by default when rolling up data points from the `activity-level` data type, or when requested explicitly using the `activity-level` rollup type identifier. + */ + activityLevel?: Schema$ActivityLevelRollupValue; + /** + * Returned by default when rolling up data points from the `altitude` data type, or when requested explicitly using the `altitude` rollup type identifier. + */ + altitude?: Schema$AltitudeRollupValue; + /** + * Returned by default when rolling up data points from the `body-fat` data type, or when requested explicitly using the `body-fat` rollup type identifier. + */ + bodyFat?: Schema$BodyFatRollupValue; + /** + * Returned by default when rolling up data points from the `calories-in-heart-rate-zone` data type, or when requested explicitly using the `calories-in-heart-rate-zone` rollup type identifier. + */ + caloriesInHeartRateZone?: Schema$CaloriesInHeartRateZoneRollupValue; + /** + * Returned by default when rolling up data points from the `distance` data type, or when requested explicitly using the `distance` rollup type identifier. + */ + distance?: Schema$DistanceRollupValue; + /** + * End time of the window this value aggregates over + */ + endTime?: string | null; + /** + * Returned by default when rolling up data points from the `floors` data type, or when requested explicitly using the `floors` rollup type identifier. + */ + floors?: Schema$FloorsRollupValue; + /** + * Returned by default when rolling up data points from the `heart-rate` data type, or when requested explicitly using the `heart-rate` rollup type identifier. + */ + heartRate?: Schema$HeartRateRollupValue; + /** + * Returned by default when rolling up data points from the `hydration-log` data type, or when requested explicitly using the `hydration-log` rollup type identifier. + */ + hydrationLog?: Schema$HydrationLogRollupValue; + /** + * Returned by default when rolling up data points from the `run-vo2-max` data type, or when requested explicitly using the `run-vo2-max` rollup type identifier. + */ + runVo2Max?: Schema$RunVO2MaxRollupValue; + /** + * Returned by default when rolling up data points from the `sedentary-period` data type, or when requested explicitly using the `sedentary-period` rollup type identifier. + */ + sedentaryPeriod?: Schema$SedentaryPeriodRollupValue; + /** + * Start time of the window this value aggregates over + */ + startTime?: string | null; + /** + * Returned by default when rolling up data points from the `steps` data type, or when requested explicitly using the `steps` rollup type identifier. + */ + steps?: Schema$StepsRollupValue; + /** + * Returned by default when rolling up data points from the `swim-lengths-data` data type, or when requested explicitly using the `swim-lengths-data` rollup type identifier. + */ + swimLengthsData?: Schema$SwimLengthsDataRollupValue; + /** + * Returned by default when rolling up data points from the `time-in-heart-rate-zone` data type, or when requested explicitly using the `time-in-heart-rate-zone` rollup type identifier. + */ + timeInHeartRateZone?: Schema$TimeInHeartRateZoneRollupValue; + /** + * Returned by default when rolling up data points from the `total-calories` data type, or when requested explicitly using the `total-calories` rollup type identifier. + */ + totalCalories?: Schema$TotalCaloriesRollupValue; + /** + * Returned by default when rolling up data points from the `weight` data type, or when requested explicitly using the `weight` rollup type identifier. + */ + weight?: Schema$WeightRollupValue; + } + /** + * Request to roll up data points by physical time intervals. + */ + export interface Schema$RollUpDataPointsRequest { + /** + * Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family\}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources + */ + dataSourceFamily?: string | null; + /** + * Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly. + */ + pageSize?: number | null; + /** + * Optional. The next_page_token from a previous request, if any. All other request fields need to be the same as in the initial request when the page token is specified. + */ + pageToken?: string | null; + /** + * Required. Closed-open range of data points that will be rolled up. The maximum range for `calories-in-heart-rate-zone`, `heart-rate`, `active-minutes` and `total-calories` is 14 days. The maximum range for all other data types is 90 days. + */ + range?: Schema$Interval; + /** + * Required. The size of the time window to group data points into before applying the aggregation functions. + */ + windowSize?: string | null; + } + /** + * Response containing the list of rolled up data points. + */ + export interface Schema$RollUpDataPointsResponse { + /** + * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * Values for each aggregation time window. + */ + rollupDataPoints?: Schema$RollupDataPoint[]; + } + /** + * VO2 max value calculated based on the user's running activity. Value stored in ml/kg/min. + */ + export interface Schema$RunVO2Max { + /** + * Required. Run VO2 max value in ml/kg/min. + */ + runVo2Max?: number | null; + /** + * Required. The time at which the metric was measured. + */ + sampleTime?: Schema$ObservationSampleTime; + } + /** + * Represents the result of the rollup of the user's daily heart rate variability personal range. + */ + export interface Schema$RunVO2MaxRollupValue { + /** + * Average value of run VO2 max in the interval. + */ + rateAvg?: number | null; + /** + * Maximum value of run VO2 max in the interval. + */ + rateMax?: number | null; + /** + * Minimum value of run VO2 max in the interval.. + */ + rateMin?: number | null; + } + /** + * SedentaryPeriod SedentaryPeriod data represents the periods of time that the user was sedentary (i.e. not moving while wearing the device). + */ + export interface Schema$SedentaryPeriod { + /** + * Required. Observed interval. + */ + interval?: Schema$ObservationTimeInterval; + } + /** + * Represents the result of the rollup of the user's sedentary periods. + */ + export interface Schema$SedentaryPeriodRollupValue { + /** + * The total time user spent sedentary during the interval. + */ + durationSum?: string | null; + } + /** + * Represents a time interval of session data point, which bundles multiple observed metrics together. + */ + export interface Schema$SessionTimeInterval { + /** + * Output only. Session end time in civil time in the timezone the subject is in at the end of the session. + */ + civilEndTime?: Schema$CivilDateTime; + /** + * Output only. Session start time in civil time in the timezone the subject is in at the start of the session. + */ + civilStartTime?: Schema$CivilDateTime; + /** + * Required. The end time of the observed session. + */ + endTime?: string | null; + /** + * Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC). + */ + endUtcOffset?: string | null; + /** + * Required. The start time of the observed session. + */ + startTime?: string | null; + /** + * Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC). + */ + startUtcOffset?: string | null; + } + /** + * Settings details. + */ + export interface Schema$Settings { + /** + * Optional. True if the user's stride length is determined automatically. Updates to this field are currently not supported. + */ + autoStrideEnabled?: boolean | null; + /** + * Optional. The measurement unit defined in the user's account settings. Updates to this field are currently not supported. + */ + distanceUnit?: string | null; + /** + * Optional. The measurement unit defined in the user's account settings. + */ + glucoseUnit?: string | null; + /** + * Optional. The measurement unit defined in the user's account settings. + */ + heightUnit?: string | null; + /** + * Optional. The locale defined in the user's account settings. Updates to this field are currently not supported. + */ + languageLocale?: string | null; + /** + * Identifier. The resource name of this Settings resource. Format: `users/{user\}/settings` Example: `users/1234567890/settings` or `users/me/settings` The {user\} ID is a system-generated Google Health API user ID, a string of 1-63 characters consisting of lowercase and uppercase letters, numbers, and hyphens. The literal `me` can also be used to refer to the authenticated user. + */ + name?: string | null; + /** + * Optional. The stride length type defined in the user's account settings for running. Updates to this field are currently not supported. + */ + strideLengthRunningType?: string | null; + /** + * Optional. The stride length type defined in the user's account settings for walking. Updates to this field are currently not supported. + */ + strideLengthWalkingType?: string | null; + /** + * Optional. The measurement unit defined in the user's account settings. + */ + swimUnit?: string | null; + /** + * Optional. The measurement unit defined in the user's account settings. + */ + temperatureUnit?: string | null; + /** + * Optional. The timezone defined in the user's account settings. This follows the IANA [Time Zone Database](https://www.iana.org/time-zones). Updates to this field are currently not supported. + */ + timeZone?: string | null; + /** + * Optional. The user's timezone offset relative to UTC. Updates to this field are currently not supported. + */ + utcOffset?: string | null; + /** + * Optional. The measurement unit defined in the user's account settings. + */ + waterUnit?: string | null; + /** + * Optional. The measurement unit defined in the user's account settings. + */ + weightUnit?: string | null; + } + /** + * A sleep session possibly including stages. + */ + export interface Schema$Sleep { + /** + * Output only. Creation time of this sleep observation. + */ + createTime?: string | null; + /** + * Required. Observed sleep interval. + */ + interval?: Schema$SessionTimeInterval; + /** + * Optional. Sleep metadata: processing, main, manually edited, stages status. + */ + metadata?: Schema$SleepMetadata; + /** + * Optional. “Out of bed” segments that can overlap with sleep stages. + */ + outOfBedSegments?: Schema$OutOfBedSegment[]; + /** + * Optional. List of non-overlapping contiguous sleep stage segments that cover the sleep period. + */ + stages?: Schema$SleepStage[]; + /** + * Output only. Sleep summary: metrics and stages summary. + */ + summary?: Schema$SleepSummary; + /** + * Optional. SleepType: classic or stages. + */ + type?: string | null; + /** + * Output only. Last update time of this sleep observation. + */ + updateTime?: string | null; + } + /** + * Additional information about how the sleep was processed. + */ + export interface Schema$SleepMetadata { + /** + * Optional. Sleep identifier relevant in the context of the data source. + */ + externalId?: string | null; + /** + * Output only. Some sleeps autodetected by algorithms can be manually edited by users. + */ + manuallyEdited?: boolean | null; + /** + * Output only. Naps are sleeps without stages and relatively short durations. + */ + nap?: boolean | null; + /** + * Output only. Sleep and sleep stages algorithms finished processing. + */ + processed?: boolean | null; + /** + * Output only. Sleep stages algorithm processing status. + */ + stagesStatus?: string | null; + } + /** + * Sleep stage segment. + */ + export interface Schema$SleepStage { + /** + * Output only. Creation time of this sleep stages segment. + */ + createTime?: string | null; + /** + * Required. Sleep stage end time. + */ + endTime?: string | null; + /** + * Required. The offset of the user's local time at the end of the sleep stage relative to the Coordinated Universal Time (UTC). + */ + endUtcOffset?: string | null; + /** + * Required. Sleep stage start time. + */ + startTime?: string | null; + /** + * Required. The offset of the user's local time at the start of the sleep stage relative to the Coordinated Universal Time (UTC). + */ + startUtcOffset?: string | null; + /** + * Required. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc. + */ + type?: string | null; + /** + * Output only. Last update time of this sleep stages segment. + */ + updateTime?: string | null; + } + /** + * Sleep summary: metrics and stages summary. + */ + export interface Schema$SleepSummary { + /** + * Output only. Minutes after wake up calculated by restlessness algorithm. + */ + minutesAfterWakeUp?: string | null; + /** + * Output only. Total number of minutes asleep. For classic sleep it is the sum of ASLEEP stages (excluding AWAKE and RESTLESS). For "stages" sleep it is the sum of LIGHT, REM and DEEP stages (excluding AWAKE). + */ + minutesAsleep?: string | null; + /** + * Output only. Total number of minutes awake. It is a sum of all AWAKE stages. + */ + minutesAwake?: string | null; + /** + * Output only. Delta between wake time and bedtime. It is the sum of all stages. + */ + minutesInSleepPeriod?: string | null; + /** + * Output only. Minutes to fall asleep calculated by restlessness algorithm. + */ + minutesToFallAsleep?: string | null; + /** + * Output only. List of summaries (total duration and segment count) per each sleep stage type. + */ + stagesSummary?: Schema$StageSummary[]; + } + /** + * Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories. + */ + export interface Schema$SplitSummary { + /** + * Output only. Lap time excluding the pauses. + */ + activeDuration?: string | null; + /** + * Required. Lap end time + */ + endTime?: string | null; + /** + * Required. Lap end time offset from UTC + */ + endUtcOffset?: string | null; + /** + * Required. Summary metrics for this split. + */ + metricsSummary?: Schema$MetricsSummary; + /** + * Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic. + */ + splitType?: string | null; + /** + * Required. Lap start time + */ + startTime?: string | null; + /** + * Required. Lap start time offset from UTC + */ + startUtcOffset?: string | null; + } + /** + * Total duration and segment count for a stage. + */ + export interface Schema$StageSummary { + /** + * Output only. Number of sleep stages segments. + */ + count?: string | null; + /** + * Output only. Total duration in minutes of a sleep stage. + */ + minutes?: string | null; + /** + * Output only. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc. + */ + type?: 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; + } + /** + * Step count over the time interval. + */ + export interface Schema$Steps { + /** + * Required. Number of steps in the recorded interval. + */ + count?: string | null; + /** + * Required. Observed interval. + */ + interval?: Schema$ObservationTimeInterval; + } + /** + * Represents the result of the rollup of the steps data type. + */ + export interface Schema$StepsRollupValue { + /** + * Total number of steps in the interval. + */ + countSum?: string | null; + } + /** + * -- Resource Messages -- A subscriber receives notifications from Google Health API. + */ + export interface Schema$Subscriber { + /** + * Output only. The time at which the subscriber was created. + */ + createTime?: string | null; + /** + * Required. Authorization mechanism for a subscriber endpoint. This is required to ensure the endpoint can be verified. + */ + endpointAuthorization?: Schema$EndpointAuthorization; + /** + * Required. The full HTTPS URI where update notifications will be sent. The URI must be a valid URL and use HTTPS as the scheme. This endpoint will be verified during CreateSubscriber and UpdateSubscriber calls. See RPC documentation for verification details. + */ + endpointUri?: string | null; + /** + * Identifier. The resource name of the Subscriber. Format: projects/{project\}/subscribers/{subscriber\} The {project\} ID is a Google Cloud Project ID or Project Number. The {subscriber\} ID is user-settable (4-36 characters, matching /[a-z]([a-z0-9-]{2,34\}[a-z0-9])/) if provided during creation, or system-generated otherwise (e.g., a UUID). Example (User-settable subscriber ID): projects/my-project/subscribers/my-sub-123 Example (System-generated subscriber ID): projects/my-project/subscribers/a1b2c3d4-e5f6-7890-1234-567890abcdef + */ + name?: string | null; + /** + * Output only. The state of the subscriber. + */ + state?: string | null; + /** + * Optional. Configuration for the subscriber. + */ + subscriberConfigs?: Schema$SubscriberConfig[]; + /** + * Output only. The time at which the subscriber was last updated. + */ + updateTime?: string | null; + } + /** + * Configuration for a subscriber. A notification is sent to a subscription ONLY if the subscriber has a config for the data type. + */ + export interface Schema$SubscriberConfig { + /** + * Required. Supported data types are: "altitude", "distance", "floors", "sleep", "steps", "weight". Values should be in kebab-case. + */ + dataTypes?: string[] | null; + /** + * Required. Policy for subscription creation. + */ + subscriptionCreatePolicy?: string | null; + } + /** + * Swim lengths data over the time interval. + */ + export interface Schema$SwimLengthsData { + /** + * Required. Observed interval. + */ + interval?: Schema$ObservationTimeInterval; + /** + * Required. Number of strokes in the lap. + */ + strokeCount?: string | null; + /** + * Required. Swim stroke type. + */ + swimStrokeType?: string | null; + } + /** + * Represents the result of the rollup of the swim lengths data type. + */ + export interface Schema$SwimLengthsDataRollupValue { + /** + * Total number of swim strokes in the interval. + */ + strokeCountSum?: string | null; + } + /** + * Time in heart rate zone record. It's an interval spent in specific heart rate zone. + */ + export interface Schema$TimeInHeartRateZone { + /** + * Required. Heart rate zone type. + */ + heartRateZoneType?: string | null; + /** + * Required. Observed interval. + */ + interval?: Schema$ObservationTimeInterval; + } + /** + * Represents the result of the rollup of the time in heart rate zone data type. + */ + export interface Schema$TimeInHeartRateZoneRollupValue { + /** + * List of time spent in each heart rate zone. + */ + timeInHeartRateZones?: Schema$TimeInHeartRateZoneValue[]; + } + /** + * Time spent in each heart rate zone. + */ + export interface Schema$TimeInHeartRateZones { + /** + * Optional. Time spent in light heart rate zone. + */ + lightTime?: string | null; + /** + * Optional. Time spent in moderate heart rate zone. + */ + moderateTime?: string | null; + /** + * Optional. Time spent in peak heart rate zone. + */ + peakTime?: string | null; + /** + * Optional. Time spent in vigorous heart rate zone. + */ + vigorousTime?: string | null; + } + /** + * Represents the total time spent in a specific heart rate zone. + */ + export interface Schema$TimeInHeartRateZoneValue { + /** + * The total time spent in the specified heart rate zone. + */ + duration?: string | null; + /** + * The heart rate zone. + */ + heartRateZone?: 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$TimeOfDay { + /** + * Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. + */ + hours?: number | null; + /** + * Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59. + */ + minutes?: number | null; + /** + * Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999. + */ + nanos?: number | null; + /** + * Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds. + */ + seconds?: number | null; + } + /** + * Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). + */ + export interface Schema$TimeZone { + /** + * IANA Time Zone Database time zone. For example "America/New_York". + */ + id?: string | null; + /** + * Optional. IANA Time Zone Database version number. For example "2019a". + */ + version?: string | null; + } + /** + * Represents the result of the rollup of the user's total calories. + */ + export interface Schema$TotalCaloriesRollupValue { + /** + * Sum of the total calories in kilocalories. + */ + kcalSum?: number | null; + } + /** + * VO2 max measurement. + */ + export interface Schema$VO2Max { + /** + * Optional. The method used to measure the VO2 max value. + */ + measurementMethod?: string | null; + /** + * Required. The time at which VO2 max was measured. + */ + sampleTime?: Schema$ObservationSampleTime; + /** + * Required. VO2 max value measured as in ml consumed oxygen / kg of body weight / min. + */ + vo2Max?: number | null; + } + /** + * Represents the volume quantity. + */ + export interface Schema$VolumeQuantity { + /** + * Required. Value representing the volume in milliliters. + */ + milliliters?: number | null; + /** + * Optional. Value representing the user provided unit. + */ + userProvidedUnit?: string | null; + } + /** + * Rollup for volume quantity. + */ + export interface Schema$VolumeQuantityRollup { + /** + * Required. The sum of volume in milliliters. + */ + millilitersSum?: number | null; + /** + * Optional. The user provided unit on the last element. + */ + userProvidedUnitLast?: string | null; + } + /** + * Body weight measurement. + */ + export interface Schema$Weight { + /** + * Optional. Standard free-form notes captured at manual logging. + */ + notes?: string | null; + /** + * Required. The time at which the weight was measured + */ + sampleTime?: Schema$ObservationSampleTime; + /** + * Required. Weight of a user in grams. + */ + weightGrams?: number | null; + } + /** + * Represents the result of the rollup of the weight data type. + */ + export interface Schema$WeightRollupValue { + /** + * Average weight in grams. + */ + weightGramsAvg?: number | null; + } + + export class Resource$Projects { + context: APIRequestContext; + subscribers: Resource$Projects$Subscribers; + constructor(context: APIRequestContext) { + this.context = context; + this.subscribers = new Resource$Projects$Subscribers(this.context); + } + } + + export class Resource$Projects$Subscribers { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Registers a new subscriber endpoint to receive notifications. A subscriber represents an application or service that wishes to receive data change notifications for users who have granted consent. **Endpoint Verification:** For a subscriber to be successfully created, the provided `endpoint_uri` must be a valid HTTPS endpoint and must pass an automated verification check. The backend will send two HTTP POST requests to the `endpoint_uri`: 1. **Verification with Authorization:** * **Headers:** Includes `Content-Type: application/json` and `Authorization` (with the exact value from `CreateSubscriberPayload.endpoint_authorization.secret`). * **Body:** `{"type": "verification"\}` * **Expected Response:** HTTP `201 Created`. 2. **Verification without Authorization:** * **Headers:** Includes `Content-Type: application/json`. The `Authorization` header is OMITTED. * **Body:** `{"type": "verification"\}` * **Expected Response:** HTTP `401 Unauthorized` or `403 Forbidden`. Both tests must pass for the subscriber creation to succeed. If verification fails, the operation will not be completed and an error will be returned. This process ensures the endpoint is reachable and correctly validates the `Authorization` header. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.projects.subscribers.create({ + * // Required. The parent resource where this subscriber will be created. Format: projects/{project\} Example: projects/my-project-123 + * parent: 'projects/my-project', + * // Optional. The ID to use for the subscriber, which will become the final component of the subscriber's resource name. This value should be 4-36 characters, and valid characters are /[a-z]([a-z0-9-]{2,34\}[a-z0-9])/. + * subscriberId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "endpointAuthorization": {}, + * // "endpointUri": "my_endpointUri", + * // "subscriberConfigs": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Subscribers$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Subscribers$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Subscribers$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Subscribers$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Subscribers$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Subscribers$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Subscribers$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Subscribers$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+parent}/subscribers').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a subscriber registration. This will stop all notifications to the subscriber's endpoint. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.projects.subscribers.delete({ + * // Optional. If set to true, any child resources (e.g., subscriptions) will also be deleted. If false (default) and child resources exist, the request will fail. + * force: 'placeholder-value', + * // Required. The name of the subscriber to delete. Format: projects/{project\}/subscribers/{subscriber\} Example: projects/my-project/subscribers/my-subscriber-123 The {subscriber\} ID is user-settable (4-36 characters, matching /[a-z]([a-z0-9-]{2,34\}[a-z0-9])/) or system-generated if not provided during creation. + * name: 'projects/my-project/subscribers/my-subscriber', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Subscribers$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Subscribers$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Subscribers$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Subscribers$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Subscribers$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Subscribers$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Subscribers$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Subscribers$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists all subscribers registered within the owned Google Cloud Project. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.projects.subscribers.list({ + * // Optional. The maximum number of subscribers to return. The service may return fewer than this value. If unspecified, at most 50 subscribers will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous `ListSubscribers` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListSubscribers` must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The parent, which owns this collection of subscribers. Format: projects/{project\} + * parent: 'projects/my-project', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "subscribers": [], + * // "totalSize": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Subscribers$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Subscribers$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Subscribers$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Subscribers$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Subscribers$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Subscribers$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Subscribers$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Subscribers$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+parent}/subscribers').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the configuration of an existing subscriber, such as the endpoint URI or the data types it's interested in. **Endpoint Verification:** If the `endpoint_uri` or `endpoint_authorization` field is included in the `update_mask`, the backend will re-verify the endpoint. The verification process is the same as described in `CreateSubscriber`: 1. **Verification with Authorization:** POST to the new or existing `endpoint_uri` with the new or existing `Authorization` secret. Expects HTTP `201 Created`. 2. **Verification without Authorization:** POST to the `endpoint_uri` without the `Authorization` header. Expects HTTP `401 Unauthorized` or `403 Forbidden`. Both tests must pass using the potentially updated values for the subscriber update to succeed. If verification fails, the update will not be applied, and an error will be returned. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.projects.subscribers.patch({ + * // Identifier. The resource name of the Subscriber. Format: projects/{project\}/subscribers/{subscriber\} The {project\} ID is a Google Cloud Project ID or Project Number. The {subscriber\} ID is user-settable (4-36 characters, matching /[a-z]([a-z0-9-]{2,34\}[a-z0-9])/) if provided during creation, or system-generated otherwise (e.g., a UUID). Example (User-settable subscriber ID): projects/my-project/subscribers/my-sub-123 Example (System-generated subscriber ID): projects/my-project/subscribers/a1b2c3d4-e5f6-7890-1234-567890abcdef + * name: 'projects/my-project/subscribers/my-subscriber', + * // Optional. A field mask that specifies which fields of the Subscriber message are to be updated. This allows for partial updates. Supported fields: - endpoint_uri - subscriber_configs - endpoint_authorization + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "endpointAuthorization": {}, + * // "endpointUri": "my_endpointUri", + * // "name": "my_name", + * // "state": "my_state", + * // "subscriberConfigs": [], + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Subscribers$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Subscribers$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Subscribers$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Subscribers$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Subscribers$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Subscribers$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Subscribers$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Subscribers$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Subscribers$Create extends StandardParameters { + /** + * Required. The parent resource where this subscriber will be created. Format: projects/{project\} Example: projects/my-project-123 + */ + parent?: string; + /** + * Optional. The ID to use for the subscriber, which will become the final component of the subscriber's resource name. This value should be 4-36 characters, and valid characters are /[a-z]([a-z0-9-]{2,34\}[a-z0-9])/. + */ + subscriberId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CreateSubscriberPayload; + } + export interface Params$Resource$Projects$Subscribers$Delete extends StandardParameters { + /** + * Optional. If set to true, any child resources (e.g., subscriptions) will also be deleted. If false (default) and child resources exist, the request will fail. + */ + force?: boolean; + /** + * Required. The name of the subscriber to delete. Format: projects/{project\}/subscribers/{subscriber\} Example: projects/my-project/subscribers/my-subscriber-123 The {subscriber\} ID is user-settable (4-36 characters, matching /[a-z]([a-z0-9-]{2,34\}[a-z0-9])/) or system-generated if not provided during creation. + */ + name?: string; + } + export interface Params$Resource$Projects$Subscribers$List extends StandardParameters { + /** + * Optional. The maximum number of subscribers to return. The service may return fewer than this value. If unspecified, at most 50 subscribers will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous `ListSubscribers` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListSubscribers` must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The parent, which owns this collection of subscribers. Format: projects/{project\} + */ + parent?: string; + } + export interface Params$Resource$Projects$Subscribers$Patch extends StandardParameters { + /** + * Identifier. The resource name of the Subscriber. Format: projects/{project\}/subscribers/{subscriber\} The {project\} ID is a Google Cloud Project ID or Project Number. The {subscriber\} ID is user-settable (4-36 characters, matching /[a-z]([a-z0-9-]{2,34\}[a-z0-9])/) if provided during creation, or system-generated otherwise (e.g., a UUID). Example (User-settable subscriber ID): projects/my-project/subscribers/my-sub-123 Example (System-generated subscriber ID): projects/my-project/subscribers/a1b2c3d4-e5f6-7890-1234-567890abcdef + */ + name?: string; + /** + * Optional. A field mask that specifies which fields of the Subscriber message are to be updated. This allows for partial updates. Supported fields: - endpoint_uri - subscriber_configs - endpoint_authorization + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Subscriber; + } + + export class Resource$Users { + context: APIRequestContext; + dataTypes: Resource$Users$Datatypes; + constructor(context: APIRequestContext) { + this.context = context; + this.dataTypes = new Resource$Users$Datatypes(this.context); + } + + /** + * Gets the user's identity. It includes the legacy Fitbit user ID and the Google user ID and it can be used by migrating clients to map identifiers between the two systems. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.getIdentity({ + * // Required. The resource name of the Identity. Format: `users/me/identity` + * name: 'users/my-user/identity', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "healthUserId": "my_healthUserId", + * // "legacyUserId": "my_legacyUserId", + * // "name": "my_name" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getIdentity( + params: Params$Resource$Users$Getidentity, + options: StreamMethodOptions + ): Promise>; + getIdentity( + params?: Params$Resource$Users$Getidentity, + options?: MethodOptions + ): Promise>; + getIdentity( + params: Params$Resource$Users$Getidentity, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIdentity( + params: Params$Resource$Users$Getidentity, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIdentity( + params: Params$Resource$Users$Getidentity, + callback: BodyResponseCallback + ): void; + getIdentity(callback: BodyResponseCallback): void; + getIdentity( + paramsOrCallback?: + | Params$Resource$Users$Getidentity + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Getidentity; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Getidentity; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns user Profile details. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.getProfile({ + * // Required. The name of the Profile. Format: `users/me/profile`. + * name: 'users/my-user/profile', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "age": 0, + * // "autoRunningStrideLengthMm": 0, + * // "autoWalkingStrideLengthMm": 0, + * // "membershipStartDate": {}, + * // "name": "my_name", + * // "userConfiguredRunningStrideLengthMm": 0, + * // "userConfiguredWalkingStrideLengthMm": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getProfile( + params: Params$Resource$Users$Getprofile, + options: StreamMethodOptions + ): Promise>; + getProfile( + params?: Params$Resource$Users$Getprofile, + options?: MethodOptions + ): Promise>; + getProfile( + params: Params$Resource$Users$Getprofile, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getProfile( + params: Params$Resource$Users$Getprofile, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getProfile( + params: Params$Resource$Users$Getprofile, + callback: BodyResponseCallback + ): void; + getProfile(callback: BodyResponseCallback): void; + getProfile( + paramsOrCallback?: + | Params$Resource$Users$Getprofile + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Users$Getprofile; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Getprofile; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns user settings details. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.getSettings({ + * // Required. The name of the Settings. Format: `users/me/settings`. + * name: 'users/my-user/settings', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "autoStrideEnabled": false, + * // "distanceUnit": "my_distanceUnit", + * // "glucoseUnit": "my_glucoseUnit", + * // "heightUnit": "my_heightUnit", + * // "languageLocale": "my_languageLocale", + * // "name": "my_name", + * // "strideLengthRunningType": "my_strideLengthRunningType", + * // "strideLengthWalkingType": "my_strideLengthWalkingType", + * // "swimUnit": "my_swimUnit", + * // "temperatureUnit": "my_temperatureUnit", + * // "timeZone": "my_timeZone", + * // "utcOffset": "my_utcOffset", + * // "waterUnit": "my_waterUnit", + * // "weightUnit": "my_weightUnit" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getSettings( + params: Params$Resource$Users$Getsettings, + options: StreamMethodOptions + ): Promise>; + getSettings( + params?: Params$Resource$Users$Getsettings, + options?: MethodOptions + ): Promise>; + getSettings( + params: Params$Resource$Users$Getsettings, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getSettings( + params: Params$Resource$Users$Getsettings, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getSettings( + params: Params$Resource$Users$Getsettings, + callback: BodyResponseCallback + ): void; + getSettings(callback: BodyResponseCallback): void; + getSettings( + paramsOrCallback?: + | Params$Resource$Users$Getsettings + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Getsettings; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Getsettings; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the user's profile details. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.updateProfile({ + * // Identifier. The resource name of this Profile resource. Format: `users/{user\}/profile` Example: `users/1234567890/profile` or `users/me/profile` The {user\} ID is a system-generated Google Health API user ID, a string of 1-63 characters consisting of lowercase and uppercase letters, numbers, and hyphens. The literal `me` can also be used to refer to the authenticated user. + * name: 'users/my-user/profile', + * // Optional. The list of fields to be updated. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "age": 0, + * // "autoRunningStrideLengthMm": 0, + * // "autoWalkingStrideLengthMm": 0, + * // "membershipStartDate": {}, + * // "name": "my_name", + * // "userConfiguredRunningStrideLengthMm": 0, + * // "userConfiguredWalkingStrideLengthMm": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "age": 0, + * // "autoRunningStrideLengthMm": 0, + * // "autoWalkingStrideLengthMm": 0, + * // "membershipStartDate": {}, + * // "name": "my_name", + * // "userConfiguredRunningStrideLengthMm": 0, + * // "userConfiguredWalkingStrideLengthMm": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + updateProfile( + params: Params$Resource$Users$Updateprofile, + options: StreamMethodOptions + ): Promise>; + updateProfile( + params?: Params$Resource$Users$Updateprofile, + options?: MethodOptions + ): Promise>; + updateProfile( + params: Params$Resource$Users$Updateprofile, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateProfile( + params: Params$Resource$Users$Updateprofile, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateProfile( + params: Params$Resource$Users$Updateprofile, + callback: BodyResponseCallback + ): void; + updateProfile(callback: BodyResponseCallback): void; + updateProfile( + paramsOrCallback?: + | Params$Resource$Users$Updateprofile + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Updateprofile; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Updateprofile; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the user's settings details. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.updateSettings({ + * // Identifier. The resource name of this Settings resource. Format: `users/{user\}/settings` Example: `users/1234567890/settings` or `users/me/settings` The {user\} ID is a system-generated Google Health API user ID, a string of 1-63 characters consisting of lowercase and uppercase letters, numbers, and hyphens. The literal `me` can also be used to refer to the authenticated user. + * name: 'users/my-user/settings', + * // Optional. The list of fields to be updated. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "autoStrideEnabled": false, + * // "distanceUnit": "my_distanceUnit", + * // "glucoseUnit": "my_glucoseUnit", + * // "heightUnit": "my_heightUnit", + * // "languageLocale": "my_languageLocale", + * // "name": "my_name", + * // "strideLengthRunningType": "my_strideLengthRunningType", + * // "strideLengthWalkingType": "my_strideLengthWalkingType", + * // "swimUnit": "my_swimUnit", + * // "temperatureUnit": "my_temperatureUnit", + * // "timeZone": "my_timeZone", + * // "utcOffset": "my_utcOffset", + * // "waterUnit": "my_waterUnit", + * // "weightUnit": "my_weightUnit" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "autoStrideEnabled": false, + * // "distanceUnit": "my_distanceUnit", + * // "glucoseUnit": "my_glucoseUnit", + * // "heightUnit": "my_heightUnit", + * // "languageLocale": "my_languageLocale", + * // "name": "my_name", + * // "strideLengthRunningType": "my_strideLengthRunningType", + * // "strideLengthWalkingType": "my_strideLengthWalkingType", + * // "swimUnit": "my_swimUnit", + * // "temperatureUnit": "my_temperatureUnit", + * // "timeZone": "my_timeZone", + * // "utcOffset": "my_utcOffset", + * // "waterUnit": "my_waterUnit", + * // "weightUnit": "my_weightUnit" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + updateSettings( + params: Params$Resource$Users$Updatesettings, + options: StreamMethodOptions + ): Promise>; + updateSettings( + params?: Params$Resource$Users$Updatesettings, + options?: MethodOptions + ): Promise>; + updateSettings( + params: Params$Resource$Users$Updatesettings, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateSettings( + params: Params$Resource$Users$Updatesettings, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateSettings( + params: Params$Resource$Users$Updatesettings, + callback: BodyResponseCallback + ): void; + updateSettings(callback: BodyResponseCallback): void; + updateSettings( + paramsOrCallback?: + | Params$Resource$Users$Updatesettings + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Updatesettings; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Updatesettings; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Users$Getidentity extends StandardParameters { + /** + * Required. The resource name of the Identity. Format: `users/me/identity` + */ + name?: string; + } + export interface Params$Resource$Users$Getprofile extends StandardParameters { + /** + * Required. The name of the Profile. Format: `users/me/profile`. + */ + name?: string; + } + export interface Params$Resource$Users$Getsettings extends StandardParameters { + /** + * Required. The name of the Settings. Format: `users/me/settings`. + */ + name?: string; + } + export interface Params$Resource$Users$Updateprofile extends StandardParameters { + /** + * Identifier. The resource name of this Profile resource. Format: `users/{user\}/profile` Example: `users/1234567890/profile` or `users/me/profile` The {user\} ID is a system-generated Google Health API user ID, a string of 1-63 characters consisting of lowercase and uppercase letters, numbers, and hyphens. The literal `me` can also be used to refer to the authenticated user. + */ + name?: string; + /** + * Optional. The list of fields to be updated. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Profile; + } + export interface Params$Resource$Users$Updatesettings extends StandardParameters { + /** + * Identifier. The resource name of this Settings resource. Format: `users/{user\}/settings` Example: `users/1234567890/settings` or `users/me/settings` The {user\} ID is a system-generated Google Health API user ID, a string of 1-63 characters consisting of lowercase and uppercase letters, numbers, and hyphens. The literal `me` can also be used to refer to the authenticated user. + */ + name?: string; + /** + * Optional. The list of fields to be updated. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Settings; + } + + export class Resource$Users$Datatypes { + context: APIRequestContext; + dataPoints: Resource$Users$Datatypes$Datapoints; + constructor(context: APIRequestContext) { + this.context = context; + this.dataPoints = new Resource$Users$Datatypes$Datapoints(this.context); + } + } + + export class Resource$Users$Datatypes$Datapoints { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Delete a batch of identifyable data points. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.dataTypes.dataPoints.batchDelete({ + * // Optional. Parent (data type) for the Data Point collection Format: `users/me/dataTypes/{data_type\}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/-` For a list of the supported data types see the DataPoint data union field. Deleting data points across multiple data type collections is supported following https://aip.dev/159. If this is set, the parent of all of the data points specified in `names` must match this field. + * parent: 'users/my-user/dataTypes/my-dataType', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "names": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + batchDelete( + params: Params$Resource$Users$Datatypes$Datapoints$Batchdelete, + options: StreamMethodOptions + ): Promise>; + batchDelete( + params?: Params$Resource$Users$Datatypes$Datapoints$Batchdelete, + options?: MethodOptions + ): Promise>; + batchDelete( + params: Params$Resource$Users$Datatypes$Datapoints$Batchdelete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + batchDelete( + params: Params$Resource$Users$Datatypes$Datapoints$Batchdelete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + batchDelete( + params: Params$Resource$Users$Datatypes$Datapoints$Batchdelete, + callback: BodyResponseCallback + ): void; + batchDelete(callback: BodyResponseCallback): void; + batchDelete( + paramsOrCallback?: + | Params$Resource$Users$Datatypes$Datapoints$Batchdelete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Datatypes$Datapoints$Batchdelete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Datatypes$Datapoints$Batchdelete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+parent}/dataPoints:batchDelete').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a single identifiable data point. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.dataTypes.dataPoints.create({ + * // Required. The parent resource name where the data point will be created. Format: `users/{user\}/dataTypes/{data_type\}` + * parent: 'users/my-user/dataTypes/my-dataType', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "activeMinutes": {}, + * // "activeZoneMinutes": {}, + * // "activityLevel": {}, + * // "altitude": {}, + * // "basalEnergyBurned": {}, + * // "bodyFat": {}, + * // "dailyHeartRateVariability": {}, + * // "dailyHeartRateZones": {}, + * // "dailyOxygenSaturation": {}, + * // "dailyRespiratoryRate": {}, + * // "dailyRestingHeartRate": {}, + * // "dailySleepTemperatureDerivations": {}, + * // "dailyVo2Max": {}, + * // "dataSource": {}, + * // "distance": {}, + * // "exercise": {}, + * // "floors": {}, + * // "heartRate": {}, + * // "heartRateVariability": {}, + * // "height": {}, + * // "hydrationLog": {}, + * // "name": "my_name", + * // "oxygenSaturation": {}, + * // "respiratoryRateSleepSummary": {}, + * // "runVo2Max": {}, + * // "sedentaryPeriod": {}, + * // "sleep": {}, + * // "steps": {}, + * // "swimLengthsData": {}, + * // "timeInHeartRateZone": {}, + * // "vo2Max": {}, + * // "weight": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Users$Datatypes$Datapoints$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Users$Datatypes$Datapoints$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Users$Datatypes$Datapoints$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Users$Datatypes$Datapoints$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Users$Datatypes$Datapoints$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Users$Datatypes$Datapoints$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Datatypes$Datapoints$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Datatypes$Datapoints$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+parent}/dataPoints').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Roll up data points over civil time intervals for supported data types. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.dataTypes.dataPoints.dailyRollUp({ + * // Required. Parent data type of the Data Point collection. Format: `users/{user\}/dataTypes/{data_type\}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/distance` For a list of the supported data types see the DailyRollupDataPoint value union field. + * parent: 'users/my-user/dataTypes/my-dataType', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "dataSourceFamily": "my_dataSourceFamily", + * // "pageSize": 0, + * // "pageToken": "my_pageToken", + * // "range": {}, + * // "windowSizeDays": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "rollupDataPoints": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + dailyRollUp( + params: Params$Resource$Users$Datatypes$Datapoints$Dailyrollup, + options: StreamMethodOptions + ): Promise>; + dailyRollUp( + params?: Params$Resource$Users$Datatypes$Datapoints$Dailyrollup, + options?: MethodOptions + ): Promise>; + dailyRollUp( + params: Params$Resource$Users$Datatypes$Datapoints$Dailyrollup, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + dailyRollUp( + params: Params$Resource$Users$Datatypes$Datapoints$Dailyrollup, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + dailyRollUp( + params: Params$Resource$Users$Datatypes$Datapoints$Dailyrollup, + callback: BodyResponseCallback + ): void; + dailyRollUp( + callback: BodyResponseCallback + ): void; + dailyRollUp( + paramsOrCallback?: + | Params$Resource$Users$Datatypes$Datapoints$Dailyrollup + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Datatypes$Datapoints$Dailyrollup; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Datatypes$Datapoints$Dailyrollup; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+parent}/dataPoints:dailyRollUp').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Exports exercise data in TCX format. Note: While the Authorization section below states that any one of the listed scopes is accepted, this specific method requires the user to provide both one of the `activity_and_fitness` scopes (`normal` or `readonly`) AND one of the `location` scopes (`normal` or `readonly`) in their access token to succeed. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.dataTypes.dataPoints.exportExerciseTcx({ + * // Required. The resource name of the exercise data point to export. Format: `users/{user\}/dataTypes/exercise/dataPoints/{data_point\}` Example: `users/me/dataTypes/exercise/dataPoints/2026443605080188808` The `{user\}` is the alias `"me"` currently. Future versions may support user IDs. The `{data_point\}` ID maps to the exercise ID, which is a long integer. + * name: 'users/my-user/dataTypes/my-dataType/dataPoints/my-dataPoint', + * // Optional. Indicates whether to include the TCX data points when the GPS data is not available. If not specified, defaults to `false` and partial data will not be included. + * partialData: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "tcxData": "my_tcxData" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + exportExerciseTcx( + params: Params$Resource$Users$Datatypes$Datapoints$Exportexercisetcx, + options: StreamMethodOptions + ): Promise>; + exportExerciseTcx( + params?: Params$Resource$Users$Datatypes$Datapoints$Exportexercisetcx, + options?: MethodOptions + ): Promise>; + exportExerciseTcx( + params: Params$Resource$Users$Datatypes$Datapoints$Exportexercisetcx, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + exportExerciseTcx( + params: Params$Resource$Users$Datatypes$Datapoints$Exportexercisetcx, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + exportExerciseTcx( + params: Params$Resource$Users$Datatypes$Datapoints$Exportexercisetcx, + callback: BodyResponseCallback + ): void; + exportExerciseTcx( + callback: BodyResponseCallback + ): void; + exportExerciseTcx( + paramsOrCallback?: + | Params$Resource$Users$Datatypes$Datapoints$Exportexercisetcx + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Datatypes$Datapoints$Exportexercisetcx; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Users$Datatypes$Datapoints$Exportexercisetcx; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+name}:exportExerciseTcx').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Get a single identifyable data point. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.dataTypes.dataPoints.get({ + * // Required. The name of the data point to retrieve. Format: `users/{user\}/dataTypes/{data_type\}/dataPoints/{data_point\}` See DataPoint.name for examples and possible values. + * name: 'users/my-user/dataTypes/my-dataType/dataPoints/my-dataPoint', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "activeMinutes": {}, + * // "activeZoneMinutes": {}, + * // "activityLevel": {}, + * // "altitude": {}, + * // "basalEnergyBurned": {}, + * // "bodyFat": {}, + * // "dailyHeartRateVariability": {}, + * // "dailyHeartRateZones": {}, + * // "dailyOxygenSaturation": {}, + * // "dailyRespiratoryRate": {}, + * // "dailyRestingHeartRate": {}, + * // "dailySleepTemperatureDerivations": {}, + * // "dailyVo2Max": {}, + * // "dataSource": {}, + * // "distance": {}, + * // "exercise": {}, + * // "floors": {}, + * // "heartRate": {}, + * // "heartRateVariability": {}, + * // "height": {}, + * // "hydrationLog": {}, + * // "name": "my_name", + * // "oxygenSaturation": {}, + * // "respiratoryRateSleepSummary": {}, + * // "runVo2Max": {}, + * // "sedentaryPeriod": {}, + * // "sleep": {}, + * // "steps": {}, + * // "swimLengthsData": {}, + * // "timeInHeartRateZone": {}, + * // "vo2Max": {}, + * // "weight": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Users$Datatypes$Datapoints$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Users$Datatypes$Datapoints$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Users$Datatypes$Datapoints$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Users$Datatypes$Datapoints$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Users$Datatypes$Datapoints$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Users$Datatypes$Datapoints$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Datatypes$Datapoints$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Datatypes$Datapoints$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Query user health and fitness data points. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.dataTypes.dataPoints.list({ + * // Optional. Filter expression following https://google.aip.dev/160. A time range (either physical or civil) can be specified. The supported filter fields are: - Interval start time: - Pattern: `{interval_data_type\}.interval.start_time` - Supported comparison operators: `\>=`, `<` - Timestamp literal expected in RFC-3339 format - Supported logical operators: `AND` - Example: - `steps.interval.start_time \>= "2023-11-24T00:00:00Z" AND steps.interval.start_time < "2023-11-25T00:00:00Z"` - `distance.interval.start_time \>= "2024-08-14T12:34:56Z"` - Interval civil start time: - Pattern: `{interval_data_type\}.interval.civil_start_time` - Supported comparison operators: `\>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND` - Example: - `steps.interval.civil_start_time \>= "2023-11-24" AND steps.interval.civil_start_time < "2023-11-25"` - `distance.interval.civil_start_time \>= "2024-08-14T12:34:56"` - Sample observation physical time: - Pattern: `{sample_data_type\}.sample_time.physical_time` - Supported comparison operators: `\>=`, `<` - Timestamp literal expected in RFC-3339 format - Supported logical operators: `AND` - Example: - `weight.sample_time.physical_time \>= "2023-11-24T00:00:00Z" AND weight.sample_time.physical_time < "2023-11-25T00:00:00Z"` - `weight.sample_time.physical_time \>= "2024-08-14T12:34:56Z"` - Sample observation civil time: - Pattern: `{sample_data_type\}.sample_time.civil_time` - Supported comparison operators: `\>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND` - Example: - `weight.sample_time.civil_time \>= "2023-11-24" AND weight.sample_time.civil_time < "2023-11-25"` - `weight.sample_time.civil_time \>= "2024-08-14T12:34:56"` - Daily summary date: - Pattern: `{daily_summary_data_type\}.date` - Supported comparison operators: `\>=`, `<` - Date literal expected in ISO 8601 `YYYY-MM-DD` format - Supported logical operators: `AND` - Example: - `daily_heart_rate_variability.date < "2024-08-15"` - Session civil start time (**Excluding Sleep**): - Pattern: `{session_data_type\}.interval.civil_start_time` - Supported comparison operators: `\>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND` - Example: - `exercise.interval.civil_start_time \>= "2023-11-24" AND exercise.interval.civil_start_time < "2023-11-25"` - `exercise.interval.civil_start_time \>= "2024-08-14T12:34:56"` - Session end time (**Sleep specific**): - Pattern: `sleep.interval.end_time` - Supported comparison operators: `\>=`, `<` - Timestamp literal expected in RFC-3339 format - Supported logical operators: `AND`, `OR` - Example: - `sleep.interval.end_time \>= "2023-11-24T00:00:00Z" AND sleep.interval.end_time < "2023-11-25T00:00:00Z"` - Session civil end time (**Sleep specific**): - Pattern: `sleep.interval.civil_end_time` - Supported comparison operators: `\>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND`, `OR` - Example: - `sleep.interval.civil_end_time \>= "2023-11-24" AND sleep.interval.civil_end_time < "2023-11-25"` Data points in the response will be ordered by the interval start time in descending order. + * filter: 'placeholder-value', + * // Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly. For `exercise` and `sleep` the default page size is 25. The maximum page size for `exercise` and `sleep` is 25. + * pageSize: 'placeholder-value', + * // Optional. The `next_page_token` from a previous request, if any. + * pageToken: 'placeholder-value', + * // Required. Parent data type of the Data Point collection. Format: `users/me/dataTypes/{data_type\}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/weight` For a list of the supported data types see the DataPoint data union field. + * parent: 'users/my-user/dataTypes/my-dataType', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "dataPoints": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Users$Datatypes$Datapoints$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Users$Datatypes$Datapoints$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Users$Datatypes$Datapoints$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Users$Datatypes$Datapoints$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Users$Datatypes$Datapoints$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Users$Datatypes$Datapoints$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Datatypes$Datapoints$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Datatypes$Datapoints$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+parent}/dataPoints').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates a single identifiable data point. If a data point with the specified `name` is not found, the request will fail. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.dataTypes.dataPoints.patch({ + * // Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user\}/dataTypes/{data_type\}/dataPoints/{data_point\}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user\}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type\}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point\}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens. + * name: 'users/my-user/dataTypes/my-dataType/dataPoints/my-dataPoint', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "activeMinutes": {}, + * // "activeZoneMinutes": {}, + * // "activityLevel": {}, + * // "altitude": {}, + * // "basalEnergyBurned": {}, + * // "bodyFat": {}, + * // "dailyHeartRateVariability": {}, + * // "dailyHeartRateZones": {}, + * // "dailyOxygenSaturation": {}, + * // "dailyRespiratoryRate": {}, + * // "dailyRestingHeartRate": {}, + * // "dailySleepTemperatureDerivations": {}, + * // "dailyVo2Max": {}, + * // "dataSource": {}, + * // "distance": {}, + * // "exercise": {}, + * // "floors": {}, + * // "heartRate": {}, + * // "heartRateVariability": {}, + * // "height": {}, + * // "hydrationLog": {}, + * // "name": "my_name", + * // "oxygenSaturation": {}, + * // "respiratoryRateSleepSummary": {}, + * // "runVo2Max": {}, + * // "sedentaryPeriod": {}, + * // "sleep": {}, + * // "steps": {}, + * // "swimLengthsData": {}, + * // "timeInHeartRateZone": {}, + * // "vo2Max": {}, + * // "weight": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Users$Datatypes$Datapoints$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Users$Datatypes$Datapoints$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Users$Datatypes$Datapoints$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Users$Datatypes$Datapoints$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Users$Datatypes$Datapoints$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Users$Datatypes$Datapoints$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Datatypes$Datapoints$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Datatypes$Datapoints$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Reconcile data points from multiple data sources into a single data stream. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.dataTypes.dataPoints.reconcile({ + * // Optional. The data source family name to reconcile. If empty, data points from all data sources will be reconciled. Format: `users/me/dataSourceFamilies/{data_source_family\}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources + * dataSourceFamily: 'placeholder-value', + * // Optional. Filter expression based on https://aip.dev/160. A time range, either physical or civil, can be specified. See the ListDataPointsRequest.filter for the supported fields and syntax. + * filter: 'placeholder-value', + * // Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly. For `exercise` and `sleep` the default page size is 25. The maximum page size for `exercise` and `sleep` is 25. + * pageSize: 'placeholder-value', + * // Optional. The `next_page_token` from a previous request, if any. + * pageToken: 'placeholder-value', + * // Required. Parent data type of the Data Point collection. Format: `users/me/dataTypes/{data_type\}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/heart-rate` For a list of the supported data types see the DataPoint data union field. + * parent: 'users/my-user/dataTypes/my-dataType', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "dataPoints": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + reconcile( + params: Params$Resource$Users$Datatypes$Datapoints$Reconcile, + options: StreamMethodOptions + ): Promise>; + reconcile( + params?: Params$Resource$Users$Datatypes$Datapoints$Reconcile, + options?: MethodOptions + ): Promise>; + reconcile( + params: Params$Resource$Users$Datatypes$Datapoints$Reconcile, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + reconcile( + params: Params$Resource$Users$Datatypes$Datapoints$Reconcile, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + reconcile( + params: Params$Resource$Users$Datatypes$Datapoints$Reconcile, + callback: BodyResponseCallback + ): void; + reconcile( + callback: BodyResponseCallback + ): void; + reconcile( + paramsOrCallback?: + | Params$Resource$Users$Datatypes$Datapoints$Reconcile + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Datatypes$Datapoints$Reconcile; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Datatypes$Datapoints$Reconcile; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+parent}/dataPoints:reconcile').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Roll up data points over physical time intervals for supported data types. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/health.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const health = google.health('v4'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await health.users.dataTypes.dataPoints.rollUp({ + * // Required. Parent data type of the Data Point collection. Format: `users/{user\}/dataTypes/{data_type\}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/distance` For a list of the supported data types see the RollupDataPoint value union field. + * parent: 'users/my-user/dataTypes/my-dataType', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "dataSourceFamily": "my_dataSourceFamily", + * // "pageSize": 0, + * // "pageToken": "my_pageToken", + * // "range": {}, + * // "windowSize": "my_windowSize" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "rollupDataPoints": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + rollUp( + params: Params$Resource$Users$Datatypes$Datapoints$Rollup, + options: StreamMethodOptions + ): Promise>; + rollUp( + params?: Params$Resource$Users$Datatypes$Datapoints$Rollup, + options?: MethodOptions + ): Promise>; + rollUp( + params: Params$Resource$Users$Datatypes$Datapoints$Rollup, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + rollUp( + params: Params$Resource$Users$Datatypes$Datapoints$Rollup, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + rollUp( + params: Params$Resource$Users$Datatypes$Datapoints$Rollup, + callback: BodyResponseCallback + ): void; + rollUp( + callback: BodyResponseCallback + ): void; + rollUp( + paramsOrCallback?: + | Params$Resource$Users$Datatypes$Datapoints$Rollup + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Datatypes$Datapoints$Rollup; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Datatypes$Datapoints$Rollup; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://health.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v4/{+parent}/dataPoints:rollUp').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Users$Datatypes$Datapoints$Batchdelete extends StandardParameters { + /** + * Optional. Parent (data type) for the Data Point collection Format: `users/me/dataTypes/{data_type\}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/-` For a list of the supported data types see the DataPoint data union field. Deleting data points across multiple data type collections is supported following https://aip.dev/159. If this is set, the parent of all of the data points specified in `names` must match this field. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BatchDeleteDataPointsRequest; + } + export interface Params$Resource$Users$Datatypes$Datapoints$Create extends StandardParameters { + /** + * Required. The parent resource name where the data point will be created. Format: `users/{user\}/dataTypes/{data_type\}` + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DataPoint; + } + export interface Params$Resource$Users$Datatypes$Datapoints$Dailyrollup extends StandardParameters { + /** + * Required. Parent data type of the Data Point collection. Format: `users/{user\}/dataTypes/{data_type\}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/distance` For a list of the supported data types see the DailyRollupDataPoint value union field. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DailyRollUpDataPointsRequest; + } + export interface Params$Resource$Users$Datatypes$Datapoints$Exportexercisetcx extends StandardParameters { + /** + * Required. The resource name of the exercise data point to export. Format: `users/{user\}/dataTypes/exercise/dataPoints/{data_point\}` Example: `users/me/dataTypes/exercise/dataPoints/2026443605080188808` The `{user\}` is the alias `"me"` currently. Future versions may support user IDs. The `{data_point\}` ID maps to the exercise ID, which is a long integer. + */ + name?: string; + /** + * Optional. Indicates whether to include the TCX data points when the GPS data is not available. If not specified, defaults to `false` and partial data will not be included. + */ + partialData?: boolean; + } + export interface Params$Resource$Users$Datatypes$Datapoints$Get extends StandardParameters { + /** + * Required. The name of the data point to retrieve. Format: `users/{user\}/dataTypes/{data_type\}/dataPoints/{data_point\}` See DataPoint.name for examples and possible values. + */ + name?: string; + } + export interface Params$Resource$Users$Datatypes$Datapoints$List extends StandardParameters { + /** + * Optional. Filter expression following https://google.aip.dev/160. A time range (either physical or civil) can be specified. The supported filter fields are: - Interval start time: - Pattern: `{interval_data_type\}.interval.start_time` - Supported comparison operators: `\>=`, `<` - Timestamp literal expected in RFC-3339 format - Supported logical operators: `AND` - Example: - `steps.interval.start_time \>= "2023-11-24T00:00:00Z" AND steps.interval.start_time < "2023-11-25T00:00:00Z"` - `distance.interval.start_time \>= "2024-08-14T12:34:56Z"` - Interval civil start time: - Pattern: `{interval_data_type\}.interval.civil_start_time` - Supported comparison operators: `\>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND` - Example: - `steps.interval.civil_start_time \>= "2023-11-24" AND steps.interval.civil_start_time < "2023-11-25"` - `distance.interval.civil_start_time \>= "2024-08-14T12:34:56"` - Sample observation physical time: - Pattern: `{sample_data_type\}.sample_time.physical_time` - Supported comparison operators: `\>=`, `<` - Timestamp literal expected in RFC-3339 format - Supported logical operators: `AND` - Example: - `weight.sample_time.physical_time \>= "2023-11-24T00:00:00Z" AND weight.sample_time.physical_time < "2023-11-25T00:00:00Z"` - `weight.sample_time.physical_time \>= "2024-08-14T12:34:56Z"` - Sample observation civil time: - Pattern: `{sample_data_type\}.sample_time.civil_time` - Supported comparison operators: `\>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND` - Example: - `weight.sample_time.civil_time \>= "2023-11-24" AND weight.sample_time.civil_time < "2023-11-25"` - `weight.sample_time.civil_time \>= "2024-08-14T12:34:56"` - Daily summary date: - Pattern: `{daily_summary_data_type\}.date` - Supported comparison operators: `\>=`, `<` - Date literal expected in ISO 8601 `YYYY-MM-DD` format - Supported logical operators: `AND` - Example: - `daily_heart_rate_variability.date < "2024-08-15"` - Session civil start time (**Excluding Sleep**): - Pattern: `{session_data_type\}.interval.civil_start_time` - Supported comparison operators: `\>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND` - Example: - `exercise.interval.civil_start_time \>= "2023-11-24" AND exercise.interval.civil_start_time < "2023-11-25"` - `exercise.interval.civil_start_time \>= "2024-08-14T12:34:56"` - Session end time (**Sleep specific**): - Pattern: `sleep.interval.end_time` - Supported comparison operators: `\>=`, `<` - Timestamp literal expected in RFC-3339 format - Supported logical operators: `AND`, `OR` - Example: - `sleep.interval.end_time \>= "2023-11-24T00:00:00Z" AND sleep.interval.end_time < "2023-11-25T00:00:00Z"` - Session civil end time (**Sleep specific**): - Pattern: `sleep.interval.civil_end_time` - Supported comparison operators: `\>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND`, `OR` - Example: - `sleep.interval.civil_end_time \>= "2023-11-24" AND sleep.interval.civil_end_time < "2023-11-25"` Data points in the response will be ordered by the interval start time in descending order. + */ + filter?: string; + /** + * Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly. For `exercise` and `sleep` the default page size is 25. The maximum page size for `exercise` and `sleep` is 25. + */ + pageSize?: number; + /** + * Optional. The `next_page_token` from a previous request, if any. + */ + pageToken?: string; + /** + * Required. Parent data type of the Data Point collection. Format: `users/me/dataTypes/{data_type\}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/weight` For a list of the supported data types see the DataPoint data union field. + */ + parent?: string; + } + export interface Params$Resource$Users$Datatypes$Datapoints$Patch extends StandardParameters { + /** + * Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user\}/dataTypes/{data_type\}/dataPoints/{data_point\}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user\}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type\}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point\}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DataPoint; + } + export interface Params$Resource$Users$Datatypes$Datapoints$Reconcile extends StandardParameters { + /** + * Optional. The data source family name to reconcile. If empty, data points from all data sources will be reconciled. Format: `users/me/dataSourceFamilies/{data_source_family\}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources + */ + dataSourceFamily?: string; + /** + * Optional. Filter expression based on https://aip.dev/160. A time range, either physical or civil, can be specified. See the ListDataPointsRequest.filter for the supported fields and syntax. + */ + filter?: string; + /** + * Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly. For `exercise` and `sleep` the default page size is 25. The maximum page size for `exercise` and `sleep` is 25. + */ + pageSize?: number; + /** + * Optional. The `next_page_token` from a previous request, if any. + */ + pageToken?: string; + /** + * Required. Parent data type of the Data Point collection. Format: `users/me/dataTypes/{data_type\}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/heart-rate` For a list of the supported data types see the DataPoint data union field. + */ + parent?: string; + } + export interface Params$Resource$Users$Datatypes$Datapoints$Rollup extends StandardParameters { + /** + * Required. Parent data type of the Data Point collection. Format: `users/{user\}/dataTypes/{data_type\}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/distance` For a list of the supported data types see the RollupDataPoint value union field. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RollUpDataPointsRequest; + } +} diff --git a/src/apis/health/webpack.config.js b/src/apis/health/webpack.config.js new file mode 100644 index 00000000000..f7ea3d2f4e7 --- /dev/null +++ b/src/apis/health/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: 'Health', + filename: 'health.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: [], +}; diff --git a/src/apis/homegraph/v1.ts b/src/apis/homegraph/v1.ts index 4ca8ed5c512..adee9626871 100644 --- a/src/apis/homegraph/v1.ts +++ b/src/apis/homegraph/v1.ts @@ -148,6 +148,19 @@ export namespace homegraph_v1 { */ deviceId?: string | null; } + /** + * Contains the set of updates for a component. + */ + export interface Schema$ComponentTraitUpdates { + /** + * Required. ID of the component from the device provider. + */ + componentId?: string | null; + /** + * Required. The updated trait data for the component. + */ + traitData?: Schema$TraitData[]; + } /** * Third-party device definition. */ @@ -243,6 +256,62 @@ export namespace homegraph_v1 { * 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 {} + /** + * Contains the details for a single event. + */ + export interface Schema$EventData { + /** + * Required. The actual event payload. + */ + event?: {[key: string]: any} | null; + /** + * Required. The unique event ID from the device provider. + */ + eventId?: string | null; + /** + * Required. The timestamp of the event. + */ + eventTime?: string | null; + } + /** + * Contains a set of events for a specific component. + */ + export interface Schema$Events { + /** + * Optional. The ID of the provider component if the events are associated with a specific component. Optional for WHDM events, required for UDDM events. + */ + componentId?: string | null; + /** + * Required. List of events associated with the component. + */ + events?: Schema$EventData[]; + } + /** + * Contains the set of events for an item. + */ + export interface Schema$HomeEvents { + /** + * Required. / Unique identifier for the device. + */ + deviceId?: string | null; + /** + * Required. List of events for the item. + */ + events?: Schema$Events[]; + } + /** + * Contains the set of updates for a device. + */ + export interface Schema$HomeTraitUpdates { + /** + * Required. Trait updates for each component. + */ + components?: Schema$ComponentTraitUpdates[]; + /** + * Required. Unique identifier for the device. + */ + deviceId?: string | null; + } /** * Request type for the [`Query`](#google.home.graph.v1.HomeGraphApiService.Query) call. */ @@ -304,6 +373,14 @@ export namespace homegraph_v1 { * The states and notifications specific to a device. */ export interface Schema$ReportStateAndNotificationDevice { + /** + * Optional. UDDM/WHDM trait events + */ + homeEvents?: Schema$HomeEvents[]; + /** + * Optional. UDDM/WHDM trait updates. + */ + homeTraits?: Schema$HomeTraitUpdates[]; /** * Notifications metadata for devices. See the **Device NOTIFICATIONS** section of the individual trait [reference guides](https://developers.home.google.com/cloud-to-cloud/traits). */ @@ -412,6 +489,15 @@ export namespace homegraph_v1 { */ devices?: Schema$Device[]; } + /** + * Contains the trait payload for a single trait. + */ + export interface Schema$TraitData { + /** + * Optional. The Home API trait payload. + */ + trait?: {[key: string]: any} | null; + } export class Resource$Agentusers { context: APIRequestContext; diff --git a/src/apis/hypercomputecluster/v1.ts b/src/apis/hypercomputecluster/v1.ts index 5b5bd73a885..62376906f71 100644 --- a/src/apis/hypercomputecluster/v1.ts +++ b/src/apis/hypercomputecluster/v1.ts @@ -167,7 +167,7 @@ export namespace hypercomputecluster_v1 { */ createTime?: string | null; /** - * Optional. User-provided description of the cluster. + * Optional. User-provided description of the cluster. Maximum of 2048 characters. */ description?: string | null; /** @@ -179,7 +179,7 @@ export namespace hypercomputecluster_v1 { */ name?: string | null; /** - * Optional. Network resources available to the cluster. Must contain at most one value. Keys specify the ID of the network resource by which it can be referenced elsewhere, and must conform to [RFC-1034](https://datatracker.ietf.org/doc/html/rfc1034) (lower-case, alphanumeric, and at most 63 characters). + * Optional. Network resources available to the cluster. Must contain exactly one value. Keys specify the ID of the network resource by which it can be referenced elsewhere, and must conform to [RFC-1034](https://datatracker.ietf.org/doc/html/rfc1034) (lower-case, alphanumeric, and at most 63 characters). */ networkResources?: {[key: string]: Schema$NetworkResource} | null; /** @@ -578,7 +578,7 @@ export namespace hypercomputecluster_v1 { */ config?: Schema$NetworkResourceConfig; /** - * Reference to a network in Google Compute Engine. + * Output only. Reference to a network in Google Compute Engine. */ network?: Schema$NetworkReference; } @@ -678,6 +678,10 @@ export namespace hypercomputecluster_v1 { * Required. Immutable. Name of the Managed Lustre instance to create, in the format `projects/{project\}/locations/{location\}/instances/{instance\}` */ lustre?: string | null; + /** + * Optional. Immutable. Throughput of the instance in MB/s/TiB. Valid values are 125, 250, 500, 1000. See [Performance tiers and maximum storage capacities](https://cloud.google.com/managed-lustre/docs/create-instance#performance-tiers) for more information. + */ + perUnitStorageThroughput?: string | null; } /** * When set in a NetworkResourceConfig, indicates that a new network should be created. @@ -958,7 +962,7 @@ export namespace hypercomputecluster_v1 { */ export interface Schema$SlurmNodeSet { /** - * Optional. ID of the compute resource on which this nodeset will run. Must match a key in the cluster's compute_resources. + * Required. ID of the compute resource on which this nodeset will run. Must match a key in the cluster's compute_resources. */ computeId?: string | null; /** @@ -1059,7 +1063,7 @@ export namespace hypercomputecluster_v1 { */ export interface Schema$StorageResource { /** - * Reference to a Google Cloud Storage bucket. Populated if and only if the storage resource was configured to use Google Cloud Storage. + * Output only. Reference to a Google Cloud Storage bucket. Populated if and only if the storage resource was configured to use Google Cloud Storage. */ bucket?: Schema$BucketReference; /** @@ -1067,11 +1071,11 @@ export namespace hypercomputecluster_v1 { */ config?: Schema$StorageResourceConfig; /** - * Reference to a Filestore instance. Populated if and only if the storage resource was configured to use Filestore. + * Output only. Reference to a Filestore instance. Populated if and only if the storage resource was configured to use Filestore. */ filestore?: Schema$FilestoreReference; /** - * Reference to a Managed Lustre instance. Populated if and only if the storage resource was configured to use Managed Lustre. + * Output only. Reference to a Managed Lustre instance. Populated if and only if the storage resource was configured to use Managed Lustre. */ lustre?: Schema$LustreReference; } @@ -1292,7 +1296,7 @@ export namespace hypercomputecluster_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1322,7 +1326,7 @@ export namespace hypercomputecluster_v1 { * * // Do the magic * const res = await hypercomputecluster.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1449,7 +1453,7 @@ export namespace hypercomputecluster_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/iam/v1.ts b/src/apis/iam/v1.ts index bfbfd78d5fb..c6036b6acf6 100644 --- a/src/apis/iam/v1.ts +++ b/src/apis/iam/v1.ts @@ -512,6 +512,10 @@ export namespace iam_v1 { * Optional. Rotation window percentage, the percentage of remaining lifetime after which certificate rotation is initiated. Must be between 50 and 80. If no value is specified, rotation window percentage is defaulted to 50. */ rotationWindowPercentage?: number | null; + /** + * Optional. If set to true, the trust domain will utilize the GCP-provisioned default CA. A default CA in the same region as the workload will be selected to issue the certificate. Enabling this will clear any existing `ca_pools` configuration to provision the certificates. NOTE: This field is mutually exclusive with `ca_pools`. If this flag is enabled, certificates will be automatically provisioned from the default shared CAs. This flag should not be set if you want to use your own CA pools to provision the certificates. + */ + useDefaultSharedCa?: boolean | null; } /** * Defines configuration for extending trust to additional trust domains. By establishing trust with another domain, the current domain will recognize and accept certificates issued by entities within the trusted domains. Note that a trust domain automatically trusts itself, eliminating the need for explicit configuration. @@ -1413,6 +1417,10 @@ export namespace iam_v1 { * Required. List of trust anchors to be used while performing validation against a given TrustStore. The incoming end entity's certificate must be in the trust chain of one of the trust anchors here. */ trustAnchors?: Schema$TrustAnchor[]; + /** + * Optional. If set to True, the trust bundle will include the private ca managed identity regional root public certificates. Important: `trust_default_shared_ca` is only supported for managed identity trust domain resource. + */ + trustDefaultSharedCa?: boolean | null; } /** * Request message for UndeleteOauthClient. @@ -1449,10 +1457,6 @@ export namespace iam_v1 { * Gemini Enterprise only. Request message for UndeleteWorkforcePoolProviderScimTenant. */ export interface Schema$UndeleteWorkforcePoolProviderScimTenantRequest {} - /** - * Gemini Enterprise only. Request message for UndeleteWorkforcePoolProviderScimToken. - */ - export interface Schema$UndeleteWorkforcePoolProviderScimTokenRequest {} /** * Request message for UndeleteWorkforcePool. */ @@ -7727,160 +7731,6 @@ export namespace iam_v1 { ); } } - - /** - * Gemini Enterprise only. Undeletes a WorkforcePoolProviderScimToken,that was deleted fewer than 30 days ago. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/iam.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const iam = google.iam('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await iam.locations.workforcePools.providers.scimTenants.tokens.undelete({ - * // Required. Gemini Enterprise only. The name of the SCIM token to undelete. Format: `locations/{location\}/workforcePools/{workforce_pool\}/providers/{provider\}/scimTenants/{scim_tenant\}/tokens/{token\}` - * name: 'locations/my-location/workforcePools/my-workforcePool/providers/my-provider/scimTenants/my-scimTenant/tokens/my-token', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "displayName": "my_displayName", - * // "name": "my_name", - * // "securityToken": "my_securityToken", - * // "state": "my_state" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. - */ - undelete( - params: Params$Resource$Locations$Workforcepools$Providers$Scimtenants$Tokens$Undelete, - options: StreamMethodOptions - ): Promise>; - undelete( - params?: Params$Resource$Locations$Workforcepools$Providers$Scimtenants$Tokens$Undelete, - options?: MethodOptions - ): Promise>; - undelete( - params: Params$Resource$Locations$Workforcepools$Providers$Scimtenants$Tokens$Undelete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - undelete( - params: Params$Resource$Locations$Workforcepools$Providers$Scimtenants$Tokens$Undelete, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - undelete( - params: Params$Resource$Locations$Workforcepools$Providers$Scimtenants$Tokens$Undelete, - callback: BodyResponseCallback - ): void; - undelete( - callback: BodyResponseCallback - ): void; - undelete( - paramsOrCallback?: - | Params$Resource$Locations$Workforcepools$Providers$Scimtenants$Tokens$Undelete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Locations$Workforcepools$Providers$Scimtenants$Tokens$Undelete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Locations$Workforcepools$Providers$Scimtenants$Tokens$Undelete; - 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}:undelete').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } } export interface Params$Resource$Locations$Workforcepools$Providers$Scimtenants$Tokens$Create extends StandardParameters { @@ -7943,17 +7793,6 @@ export namespace iam_v1 { */ requestBody?: Schema$WorkforcePoolProviderScimToken; } - export interface Params$Resource$Locations$Workforcepools$Providers$Scimtenants$Tokens$Undelete extends StandardParameters { - /** - * Required. Gemini Enterprise only. The name of the SCIM token to undelete. Format: `locations/{location\}/workforcePools/{workforce_pool\}/providers/{provider\}/scimTenants/{scim_tenant\}/tokens/{token\}` - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$UndeleteWorkforcePoolProviderScimTokenRequest; - } export class Resource$Locations$Workforcepools$Subjects { context: APIRequestContext; @@ -11409,7 +11248,7 @@ export namespace iam_v1 { } /** - * Creates a new WorkloadIdentityPool. You cannot reuse the name of a deleted pool until 30 days after deletion. + * Add an AttestationRule on a WorkloadIdentityPoolManagedIdentity. The total attestation rules after addition must not exceed 50. * @example * ```js * // Before running the sample: @@ -11438,28 +11277,20 @@ export namespace iam_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await iam.projects.locations.workloadIdentityPools.create({ - * // Required. The parent resource to create the pool in. The only supported location is `global`. - * parent: 'projects/my-project/locations/my-location', - * // Required. The ID to use for the pool, which becomes the final component of the resource name. This value should be 4-32 characters, and may contain the characters [a-z0-9-]. The prefix `gcp-` is reserved for use by Google, and may not be specified. - * workloadIdentityPoolId: 'placeholder-value', + * const res = + * await iam.projects.locations.workloadIdentityPools.addAttestationRule({ + * // Required. The resource name of the managed identity or namespace resource to add an attestation rule to. + * resource: + * 'projects/my-project/locations/my-location/workloadIdentityPools/my-workloadIdentityPool', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "description": "my_description", - * // "disabled": false, - * // "displayName": "my_displayName", - * // "expireTime": "my_expireTime", - * // "inlineCertificateIssuanceConfig": {}, - * // "inlineTrustConfig": {}, - * // "mode": "my_mode", - * // "name": "my_name", - * // "state": "my_state" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "attestationRule": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response @@ -11484,32 +11315,32 @@ export namespace iam_v1 { * @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$Workloadidentitypools$Create, + addAttestationRule( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Addattestationrule, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Workloadidentitypools$Create, + addAttestationRule( + params?: Params$Resource$Projects$Locations$Workloadidentitypools$Addattestationrule, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Create, + addAttestationRule( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Addattestationrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Create, + addAttestationRule( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Addattestationrule, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Create, + addAttestationRule( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Addattestationrule, callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + addAttestationRule(callback: BodyResponseCallback): void; + addAttestationRule( paramsOrCallback?: - | Params$Resource$Projects$Locations$Workloadidentitypools$Create + | Params$Resource$Projects$Locations$Workloadidentitypools$Addattestationrule | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -11525,13 +11356,13 @@ export namespace iam_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Workloadidentitypools$Create; + {}) as Params$Resource$Projects$Locations$Workloadidentitypools$Addattestationrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Workloadidentitypools$Create; + {} as Params$Resource$Projects$Locations$Workloadidentitypools$Addattestationrule; options = {}; } @@ -11544,7 +11375,7 @@ export namespace iam_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/workloadIdentityPools').replace( + url: (rootUrl + '/v1/{+resource}:addAttestationRule').replace( /([^:]\/)\/+/g, '$1' ), @@ -11554,8 +11385,8 @@ export namespace iam_v1 { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { @@ -11569,7 +11400,7 @@ export namespace iam_v1 { } /** - * Deletes a WorkloadIdentityPool. You cannot use a deleted pool to exchange external credentials for Google Cloud credentials. However, deletion does not revoke credentials that have already been issued. Credentials issued for a deleted pool do not grant access to resources. If the pool is undeleted, and the credentials are not expired, they grant access again. You can undelete a pool for 30 days. After 30 days, deletion is permanent. You cannot update deleted pools. However, you can view and list them. + * Creates a new WorkloadIdentityPool. You cannot reuse the name of a deleted pool until 30 days after deletion. * @example * ```js * // Before running the sample: @@ -11598,9 +11429,27 @@ export namespace iam_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await iam.projects.locations.workloadIdentityPools.delete({ - * // Required. The name of the pool to delete. - * name: 'projects/my-project/locations/my-location/workloadIdentityPools/my-workloadIdentityPool', + * const res = await iam.projects.locations.workloadIdentityPools.create({ + * // Required. The parent resource to create the pool in. The only supported location is `global`. + * parent: 'projects/my-project/locations/my-location', + * // Required. The ID to use for the pool, which becomes the final component of the resource name. This value should be 4-32 characters, and may contain the characters [a-z0-9-]. The prefix `gcp-` is reserved for use by Google, and may not be specified. + * workloadIdentityPoolId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "description": "my_description", + * // "disabled": false, + * // "displayName": "my_displayName", + * // "expireTime": "my_expireTime", + * // "inlineCertificateIssuanceConfig": {}, + * // "inlineTrustConfig": {}, + * // "mode": "my_mode", + * // "name": "my_name", + * // "state": "my_state" + * // } + * }, * }); * console.log(res.data); * @@ -11626,16 +11475,158 @@ export namespace iam_v1 { * @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$Workloadidentitypools$Delete, + create( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Create, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Workloadidentitypools$Delete, + create( + params?: Params$Resource$Projects$Locations$Workloadidentitypools$Create, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Delete, + create( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Workloadidentitypools$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Workloadidentitypools$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Workloadidentitypools$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://iam.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/workloadIdentityPools').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a WorkloadIdentityPool. You cannot use a deleted pool to exchange external credentials for Google Cloud credentials. However, deletion does not revoke credentials that have already been issued. Credentials issued for a deleted pool do not grant access to resources. If the pool is undeleted, and the credentials are not expired, they grant access again. You can undelete a pool for 30 days. After 30 days, deletion is permanent. You cannot update deleted pools. However, you can view and list them. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/iam.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const iam = google.iam('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await iam.projects.locations.workloadIdentityPools.delete({ + * // Required. The name of the pool to delete. + * name: 'projects/my-project/locations/my-location/workloadIdentityPools/my-workloadIdentityPool', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Workloadidentitypools$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Workloadidentitypools$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; @@ -11925,47 +11916,515 @@ export namespace iam_v1 { getIamPolicy( params?: Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://iam.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists all non-deleted WorkloadIdentityPools in a project. If `show_deleted` is set to `true`, then deleted pools are also listed. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/iam.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const iam = google.iam('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await iam.projects.locations.workloadIdentityPools.list({ + * // The maximum number of pools to return. If unspecified, at most 50 pools are returned. The maximum value is 1000; values above are 1000 truncated to 1000. + * pageSize: 'placeholder-value', + * // A page token, received from a previous `ListWorkloadIdentityPools` call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent resource to list pools for. + * parent: 'projects/my-project/locations/my-location', + * // Whether to return soft-deleted pools. + * showDeleted: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "workloadIdentityPools": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Workloadidentitypools$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Workloadidentitypools$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Workloadidentitypools$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Workloadidentitypools$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Workloadidentitypools$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Workloadidentitypools$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Workloadidentitypools$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Workloadidentitypools$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://iam.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/workloadIdentityPools').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * List all AttestationRule on a WorkloadIdentityPoolManagedIdentity. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/iam.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const iam = google.iam('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await iam.projects.locations.workloadIdentityPools.listAttestationRules({ + * // Optional. A query filter. Supports the following function: * `container_ids()`: Returns only the AttestationRules under the specific container ids. The function expects a comma-delimited list with only project numbers and must use the format `projects/`. For example: `container_ids(projects/, projects/,...)`. + * filter: 'placeholder-value', + * // Optional. The maximum number of AttestationRules to return. If unspecified, at most 50 AttestationRules are returned. The maximum value is 100; values above 100 are truncated to 100. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous `ListWorkloadIdentityPoolProviderKeys` call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The resource name of the managed identity or namespace resource to list attestation rules of. + * resource: + * 'projects/my-project/locations/my-location/workloadIdentityPools/my-workloadIdentityPool', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "attestationRules": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + listAttestationRules( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Listattestationrules, + options: StreamMethodOptions + ): Promise>; + listAttestationRules( + params?: Params$Resource$Projects$Locations$Workloadidentitypools$Listattestationrules, + options?: MethodOptions + ): Promise>; + listAttestationRules( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Listattestationrules, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listAttestationRules( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Listattestationrules, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listAttestationRules( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Listattestationrules, + callback: BodyResponseCallback + ): void; + listAttestationRules( + callback: BodyResponseCallback + ): void; + listAttestationRules( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Workloadidentitypools$Listattestationrules + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Workloadidentitypools$Listattestationrules; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Workloadidentitypools$Listattestationrules; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://iam.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+resource}:listAttestationRules').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates an existing WorkloadIdentityPool. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/iam.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const iam = google.iam('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await iam.projects.locations.workloadIdentityPools.patch({ + * // Identifier. The resource name of the pool. + * name: 'projects/my-project/locations/my-location/workloadIdentityPools/my-workloadIdentityPool', + * // Required. The list of fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "description": "my_description", + * // "disabled": false, + * // "displayName": "my_displayName", + * // "expireTime": "my_expireTime", + * // "inlineCertificateIssuanceConfig": {}, + * // "inlineTrustConfig": {}, + * // "mode": "my_mode", + * // "name": "my_name", + * // "state": "my_state" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Workloadidentitypools$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Workloadidentitypools$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Patch, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Workloadidentitypools$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Workloadidentitypools$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Workloadidentitypools$Getiampolicy; + {} as Params$Resource$Projects$Locations$Workloadidentitypools$Patch; options = {}; } @@ -11978,32 +12437,29 @@ export namespace iam_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists all non-deleted WorkloadIdentityPools in a project. If `show_deleted` is set to `true`, then deleted pools are also listed. + * Remove an AttestationRule on a WorkloadIdentityPoolManagedIdentity. * @example * ```js * // Before running the sample: @@ -12032,22 +12488,29 @@ export namespace iam_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await iam.projects.locations.workloadIdentityPools.list({ - * // The maximum number of pools to return. If unspecified, at most 50 pools are returned. The maximum value is 1000; values above are 1000 truncated to 1000. - * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListWorkloadIdentityPools` call. Provide this to retrieve the subsequent page. - * pageToken: 'placeholder-value', - * // Required. The parent resource to list pools for. - * parent: 'projects/my-project/locations/my-location', - * // Whether to return soft-deleted pools. - * showDeleted: 'placeholder-value', - * }); + * const res = + * await iam.projects.locations.workloadIdentityPools.removeAttestationRule({ + * // Required. The resource name of the managed identity or namespace resource to remove an attestation rule from. + * resource: + * 'projects/my-project/locations/my-location/workloadIdentityPools/my-workloadIdentityPool', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "attestationRule": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "workloadIdentityPools": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -12063,62 +12526,56 @@ export namespace iam_v1 { * @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$Workloadidentitypools$List, + removeAttestationRule( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Removeattestationrule, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Workloadidentitypools$List, + removeAttestationRule( + params?: Params$Resource$Projects$Locations$Workloadidentitypools$Removeattestationrule, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Workloadidentitypools$List, + ): Promise>; + removeAttestationRule( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Removeattestationrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Workloadidentitypools$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + removeAttestationRule( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Removeattestationrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Workloadidentitypools$List, - callback: BodyResponseCallback + removeAttestationRule( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Removeattestationrule, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + removeAttestationRule( + callback: BodyResponseCallback ): void; - list( + removeAttestationRule( paramsOrCallback?: - | Params$Resource$Projects$Locations$Workloadidentitypools$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Workloadidentitypools$Removeattestationrule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Workloadidentitypools$List; + {}) as Params$Resource$Projects$Locations$Workloadidentitypools$Removeattestationrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Workloadidentitypools$List; + {} as Params$Resource$Projects$Locations$Workloadidentitypools$Removeattestationrule; options = {}; } @@ -12131,34 +12588,32 @@ export namespace iam_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/workloadIdentityPools').replace( + url: (rootUrl + '/v1/{+resource}:removeAttestationRule').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates an existing WorkloadIdentityPool. + * Set all AttestationRule on a WorkloadIdentityPoolManagedIdentity. A maximum of 50 AttestationRules can be set. * @example * ```js * // Before running the sample: @@ -12187,28 +12642,20 @@ export namespace iam_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await iam.projects.locations.workloadIdentityPools.patch({ - * // Identifier. The resource name of the pool. - * name: 'projects/my-project/locations/my-location/workloadIdentityPools/my-workloadIdentityPool', - * // Required. The list of fields to update. - * updateMask: 'placeholder-value', + * const res = + * await iam.projects.locations.workloadIdentityPools.setAttestationRules({ + * // Required. The resource name of the managed identity or namespace resource to add an attestation rule to. + * resource: + * 'projects/my-project/locations/my-location/workloadIdentityPools/my-workloadIdentityPool', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "description": "my_description", - * // "disabled": false, - * // "displayName": "my_displayName", - * // "expireTime": "my_expireTime", - * // "inlineCertificateIssuanceConfig": {}, - * // "inlineTrustConfig": {}, - * // "mode": "my_mode", - * // "name": "my_name", - * // "state": "my_state" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "attestationRules": [] + * // } + * }, + * }); * console.log(res.data); * * // Example response @@ -12233,32 +12680,32 @@ export namespace iam_v1 { * @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$Workloadidentitypools$Patch, + setAttestationRules( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Setattestationrules, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Workloadidentitypools$Patch, + setAttestationRules( + params?: Params$Resource$Projects$Locations$Workloadidentitypools$Setattestationrules, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Patch, + setAttestationRules( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Setattestationrules, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Patch, + setAttestationRules( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Setattestationrules, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Patch, + setAttestationRules( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Setattestationrules, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + setAttestationRules(callback: BodyResponseCallback): void; + setAttestationRules( paramsOrCallback?: - | Params$Resource$Projects$Locations$Workloadidentitypools$Patch + | Params$Resource$Projects$Locations$Workloadidentitypools$Setattestationrules | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -12274,13 +12721,13 @@ export namespace iam_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Workloadidentitypools$Patch; + {}) as Params$Resource$Projects$Locations$Workloadidentitypools$Setattestationrules; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Workloadidentitypools$Patch; + {} as Params$Resource$Projects$Locations$Workloadidentitypools$Setattestationrules; options = {}; } @@ -12293,15 +12740,18 @@ export namespace iam_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1/{+resource}:setAttestationRules').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { @@ -12766,6 +13216,17 @@ export namespace iam_v1 { } } + export interface Params$Resource$Projects$Locations$Workloadidentitypools$Addattestationrule extends StandardParameters { + /** + * Required. The resource name of the managed identity or namespace resource to add an attestation rule to. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AddAttestationRuleRequest; + } export interface Params$Resource$Projects$Locations$Workloadidentitypools$Create extends StandardParameters { /** * Required. The parent resource to create the pool in. The only supported location is `global`. @@ -12822,6 +13283,24 @@ export namespace iam_v1 { */ showDeleted?: boolean; } + export interface Params$Resource$Projects$Locations$Workloadidentitypools$Listattestationrules extends StandardParameters { + /** + * Optional. A query filter. Supports the following function: * `container_ids()`: Returns only the AttestationRules under the specific container ids. The function expects a comma-delimited list with only project numbers and must use the format `projects/`. For example: `container_ids(projects/, projects/,...)`. + */ + filter?: string; + /** + * Optional. The maximum number of AttestationRules to return. If unspecified, at most 50 AttestationRules are returned. The maximum value is 100; values above 100 are truncated to 100. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous `ListWorkloadIdentityPoolProviderKeys` call. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. The resource name of the managed identity or namespace resource to list attestation rules of. + */ + resource?: string; + } export interface Params$Resource$Projects$Locations$Workloadidentitypools$Patch extends StandardParameters { /** * Identifier. The resource name of the pool. @@ -12837,6 +13316,28 @@ export namespace iam_v1 { */ requestBody?: Schema$WorkloadIdentityPool; } + export interface Params$Resource$Projects$Locations$Workloadidentitypools$Removeattestationrule extends StandardParameters { + /** + * Required. The resource name of the managed identity or namespace resource to remove an attestation rule from. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RemoveAttestationRuleRequest; + } + export interface Params$Resource$Projects$Locations$Workloadidentitypools$Setattestationrules extends StandardParameters { + /** + * Required. The resource name of the managed identity or namespace resource to add an attestation rule to. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SetAttestationRulesRequest; + } export interface Params$Resource$Projects$Locations$Workloadidentitypools$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. diff --git a/src/apis/iamcredentials/v1.ts b/src/apis/iamcredentials/v1.ts index d5897041097..1ddf91a4abc 100644 --- a/src/apis/iamcredentials/v1.ts +++ b/src/apis/iamcredentials/v1.ts @@ -301,7 +301,7 @@ export namespace iamcredentials_v1 { * // Do the magic * const res = await iamcredentials.locations.workforcePools.getAllowedLocations( * { - * // Required. Resource name of workforce pool. + * // Required. Resource name of workforce pool. Format: `locations/global/workforcePools/{pool_id\}` * name: 'locations/my-location/workforcePools/my-workforcePool', * }, * ); @@ -420,7 +420,7 @@ export namespace iamcredentials_v1 { export interface Params$Resource$Locations$Workforcepools$Getallowedlocations extends StandardParameters { /** - * Required. Resource name of workforce pool. + * Required. Resource name of workforce pool. Format: `locations/global/workforcePools/{pool_id\}` */ name?: string; } @@ -487,7 +487,7 @@ export namespace iamcredentials_v1 { * const res = * await iamcredentials.projects.locations.workloadIdentityPools.getAllowedLocations( * { - * // Required. Resource name of workload identity pool. + * // Required. Resource name of workload identity pool. Format: `projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}` * name: 'projects/my-project/locations/my-location/workloadIdentityPools/my-workloadIdentityPool', * }, * ); @@ -610,7 +610,7 @@ export namespace iamcredentials_v1 { export interface Params$Resource$Projects$Locations$Workloadidentitypools$Getallowedlocations extends StandardParameters { /** - * Required. Resource name of workload identity pool. + * Required. Resource name of workload identity pool. Format: `projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}` */ name?: string; } @@ -962,7 +962,7 @@ export namespace iamcredentials_v1 { * // Do the magic * const res = await iamcredentials.projects.serviceAccounts.getAllowedLocations( * { - * // Required. Resource name of service account. + * // Required. Resource name of service account. Format: `projects/-/serviceAccounts/{service_account_email\}` * name: 'projects/my-project/serviceAccounts/my-serviceAccount', * }, * ); @@ -1399,7 +1399,7 @@ export namespace iamcredentials_v1 { } export interface Params$Resource$Projects$Serviceaccounts$Getallowedlocations extends StandardParameters { /** - * Required. Resource name of service account. + * Required. Resource name of service account. Format: `projects/-/serviceAccounts/{service_account_email\}` */ name?: string; } diff --git a/src/apis/iap/v1.ts b/src/apis/iap/v1.ts index 39921edc72d..909e1ba309e 100644 --- a/src/apis/iap/v1.ts +++ b/src/apis/iap/v1.ts @@ -442,15 +442,15 @@ export namespace iap_v1 { */ export interface Schema$OAuthSettings { /** - * Optional. OAuth 2.0 client ID used in the OAuth flow to generate an access token. If this field is set, you can skip obtaining the OAuth credentials in this step: https://developers.google.com/identity/protocols/OAuth2?hl=en_US#1.-obtain-oauth-2.0-credentials-from-the-google-api-console. However, this could allow for client sharing. The risks of client sharing are outlined here: https://cloud.google.com/iap/docs/sharing-oauth-clients#risks. + * Optional. OAuth 2.0 client ID used in the OAuth flow. This allows for client sharing. The risks of client sharing are outlined here: https://cloud.google.com/iap/docs/sharing-oauth-clients#risks. */ clientId?: string | null; /** - * Optional. Input only. OAuth secret paired with client ID + * Optional. Input only. OAuth secret paired with client ID. */ clientSecret?: string | null; /** - * Output only. OAuth secret sha256 paired with client ID + * Output only. OAuth secret SHA256 paired with client ID. */ clientSecretSha256?: string | null; /** @@ -548,7 +548,7 @@ export namespace iap_v1 { */ labels?: {[key: string]: string} | null; /** - * The locations of the resource. This field is used to determine whether the request is compliant with Trust Boundaries. Usage: - Must not be empty for services in-scope for Trust Boundaries. Once Trust Boundaries is GA, empty values will cause the request to be rejected if customers enforce Trust Boundaries on the parent CRM nodes. - For global resources: use a single value of "global". - For regional/multi-regional resources: use name of the GCP region(s) where the resource exists (e.g., ["us-east1", "us-west1"]). For multi-regional resources specify the name of each GCP region in the resource's multi-region. NOTE: Only GCP cloud region names are supported - go/cloud-region-names. + * The locations of the resource. This field is used to determine whether the request is compliant with Trust Boundaries. Usage: - Must not be empty for services in-scope for Trust Boundaries. Once Trust Boundaries is GA, empty values will cause the request to be rejected if customers enforce Trust Boundaries on the parent CRM nodes. - For global resources: use a single value of "global". - For regional/multi-regional resources: use name of the GCP region(s) where the resource exists (e.g., ["us-east1", "us-west1"]). For multi-regional resources specify the name of each GCP region in the resource's multi-region. NOTE: Only GCP cloud region names are supported - go/cloud-region-names. - Constraints: - Individual location strings must be less than 1000 bytes. - The cumulative size of all locations must be less than 16KB. */ locations?: string[] | null; /** diff --git a/src/apis/ids/v1.ts b/src/apis/ids/v1.ts index 3568ad74674..fd2e8d2dd07 100644 --- a/src/apis/ids/v1.ts +++ b/src/apis/ids/v1.ts @@ -498,7 +498,7 @@ export namespace ids_v1 { } /** - * Lists information about the supported locations for this service. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -528,7 +528,7 @@ export namespace ids_v1 { * * // Do the magic * const res = await ids.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -654,7 +654,7 @@ export namespace ids_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/index.ts b/src/apis/index.ts index 51a76213d7f..e36352b62b2 100644 --- a/src/apis/index.ts +++ b/src/apis/index.ts @@ -57,6 +57,10 @@ import { VERSIONS as advisorynotificationsVersions, advisorynotifications, } from './advisorynotifications'; +import { + VERSIONS as agentregistryVersions, + agentregistry, +} from './agentregistry'; import {VERSIONS as aiplatformVersions, aiplatform} from './aiplatform'; import {VERSIONS as airqualityVersions, airquality} from './airquality'; import {VERSIONS as alertcenterVersions, alertcenter} from './alertcenter'; @@ -297,6 +301,10 @@ import { VERSIONS as developerconnectVersions, developerconnect, } from './developerconnect'; +import { + VERSIONS as developerknowledgeVersions, + developerknowledge, +} from './developerknowledge'; import {VERSIONS as dfareportingVersions, dfareporting} from './dfareporting'; import {VERSIONS as dialogflowVersions, dialogflow} from './dialogflow'; import { @@ -409,6 +417,7 @@ import { VERSIONS as groupssettingsVersions, groupssettings, } from './groupssettings'; +import {VERSIONS as healthVersions, health} from './health'; import {VERSIONS as healthcareVersions, healthcare} from './healthcare'; import {VERSIONS as homegraphVersions, homegraph} from './homegraph'; import { @@ -799,6 +808,7 @@ export const APIS: APIList = { adsensehost: adsensehostVersions, adsenseplatform: adsenseplatformVersions, advisorynotifications: advisorynotificationsVersions, + agentregistry: agentregistryVersions, aiplatform: aiplatformVersions, airquality: airqualityVersions, alertcenter: alertcenterVersions, @@ -904,6 +914,7 @@ export const APIS: APIList = { datastream: datastreamVersions, deploymentmanager: deploymentmanagerVersions, developerconnect: developerconnectVersions, + developerknowledge: developerknowledgeVersions, dfareporting: dfareportingVersions, dialogflow: dialogflowVersions, digitalassetlinks: digitalassetlinksVersions, @@ -953,6 +964,7 @@ export const APIS: APIList = { gmailpostmastertools: gmailpostmastertoolsVersions, groupsmigration: groupsmigrationVersions, groupssettings: groupssettingsVersions, + health: healthVersions, healthcare: healthcareVersions, homegraph: homegraphVersions, hypercomputecluster: hypercomputeclusterVersions, @@ -1123,6 +1135,7 @@ export class GeneratedAPIs { adsensehost = adsensehost; adsenseplatform = adsenseplatform; advisorynotifications = advisorynotifications; + agentregistry = agentregistry; aiplatform = aiplatform; airquality = airquality; alertcenter = alertcenter; @@ -1228,6 +1241,7 @@ export class GeneratedAPIs { datastream = datastream; deploymentmanager = deploymentmanager; developerconnect = developerconnect; + developerknowledge = developerknowledge; dfareporting = dfareporting; dialogflow = dialogflow; digitalassetlinks = digitalassetlinks; @@ -1277,6 +1291,7 @@ export class GeneratedAPIs { gmailpostmastertools = gmailpostmastertools; groupsmigration = groupsmigration; groupssettings = groupssettings; + health = health; healthcare = healthcare; homegraph = homegraph; hypercomputecluster = hypercomputecluster; diff --git a/src/apis/kmsinventory/v1.ts b/src/apis/kmsinventory/v1.ts index fa9c4218a15..7a060c8d69e 100644 --- a/src/apis/kmsinventory/v1.ts +++ b/src/apis/kmsinventory/v1.ts @@ -264,7 +264,7 @@ export namespace kmsinventory_v1 { */ importOnly?: boolean | null; /** - * Optional. The policy used for Key Access Justifications Policy Enforcement. If this field is present and this key is enrolled in Key Access Justifications Policy Enforcement, the policy will be evaluated in encrypt, decrypt, and sign operations, and the operation will fail if rejected by the policy. The policy is defined by specifying zero or more allowed justification codes. https://cloud.google.com/assured-workloads/key-access-justifications/docs/justification-codes By default, this field is absent, and all justification codes are allowed. + * Optional. The policy used for Key Access Justifications Policy Enforcement. If this field is present and this key is enrolled in Key Access Justifications Policy Enforcement, the policy will be evaluated in encrypt, decrypt, and sign operations, and the operation will fail if rejected by the policy. The policy is defined by specifying zero or more allowed justification codes. https://cloud.google.com/assured-workloads/key-access-justifications/docs/justification-codes By default, this field is absent, and all justification codes are allowed. If the `key_access_justifications_policy.allowed_access_reasons` is empty (zero allowed justification code), all encrypt, decrypt, and sign operations will fail. */ keyAccessJustificationsPolicy?: Schema$GoogleCloudKmsV1KeyAccessJustificationsPolicy; /** @@ -392,11 +392,11 @@ export namespace kmsinventory_v1 { externalKeyUri?: string | null; } /** - * A KeyAccessJustificationsPolicy specifies zero or more allowed AccessReason values for encrypt, decrypt, and sign operations on a CryptoKey. + * A KeyAccessJustificationsPolicy specifies zero or more allowed AccessReason values for encrypt, decrypt, and sign operations on a CryptoKey or KeyAccessJustificationsPolicyConfig (the default Key Access Justifications policy). */ export interface Schema$GoogleCloudKmsV1KeyAccessJustificationsPolicy { /** - * The list of allowed reasons for access to a CryptoKey. Zero allowed access reasons means all encrypt, decrypt, and sign operations for the CryptoKey associated with this policy will fail. + * The list of allowed reasons for access to a CryptoKey. Note that empty allowed_access_reasons has a different meaning depending on where this message appears. If this is under KeyAccessJustificationsPolicyConfig, it means allow-all. If this is under CryptoKey, it means deny-all. */ allowedAccessReasons?: string[] | null; } diff --git a/src/apis/logging/README.md b/src/apis/logging/README.md index a0bc0c48867..f70052cd3f2 100644 --- a/src/apis/logging/README.md +++ b/src/apis/logging/README.md @@ -8,8 +8,8 @@ **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/logging](https://www.npmjs.com/package/@google-cloud/logging) instead. -The [@google-cloud/logging](https://www.npmjs.com/package/@google-cloud/logging) library is faster, easier to use, and better maintained. +legacy application, please use [@google-cloud/logging-winston](https://www.npmjs.com/package/@google-cloud/logging-winston) instead. +The [@google-cloud/logging-winston](https://www.npmjs.com/package/@google-cloud/logging-winston) 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). diff --git a/src/apis/logging/v2.ts b/src/apis/logging/v2.ts index 1624c04b931..6e10d00e560 100644 --- a/src/apis/logging/v2.ts +++ b/src/apis/logging/v2.ts @@ -826,7 +826,7 @@ export namespace logging_v2 { */ export interface Schema$ListLogEntriesRequest { /** - * Optional. A filter that chooses which log entries to return. For more information, see Logging query language (https://{$universe.dns_names.final_documentation_domain\}/logging/docs/view/logging-query-language).Only log entries that match the filter are returned. An empty filter matches all log entries in the resources listed in resource_names. Referencing a parent resource that is not listed in resource_names will cause the filter to return no results. The maximum length of a filter is 20,000 characters.To make queries faster, you can make the filter more selective by using restrictions on indexed fields (https://{$universe.dns_names.final_documentation_domain\}/logging/docs/view/logging-query-language#indexed-fields) as well as limit the time range of the query by adding range restrictions on the timestamp field. + * Optional. A filter that chooses which log entries to return. For more information, see Logging query language (https://docs.cloud.google.com/logging/docs/view/logging-query-language).Only log entries that match the filter are returned. An empty filter matches all log entries in the resources listed in resource_names. Referencing a parent resource that is not listed in resource_names will cause the filter to return no results. The maximum length of a filter is 20,000 characters.To make queries faster, you can make the filter more selective by using restrictions on indexed fields (https://docs.cloud.google.com/logging/docs/view/logging-query-language#indexed-fields) as well as limit the time range of the query by adding range restrictions on the timestamp field. */ filter?: string | null; /** @@ -1092,7 +1092,7 @@ export namespace logging_v2 { */ apphubSource?: Schema$AppHub; /** - * Output only. The Error Reporting (https://cloud.google.com/error-reporting) error groups associated with this LogEntry. Error Reporting sets the values for this field during error group creation.For more information, see View error details( https://cloud.google.com/error-reporting/docs/viewing-errors#view_error_details)This field isn't available during log routing (https://cloud.google.com/logging/docs/routing/overview) + * Output only. The Error Reporting (https://cloud.google.com/error-reporting) error groups associated with this LogEntry. Error Reporting sets the values for this field during error group creation.This field is populated only when log entries are stored in Cloud Logging storage (Logs Explorer and Observability Analytics). It is not available for use in log sink filters, log-based metrics, or log-based alerts, and it is excluded from log exports (Cloud Storage, BigQuery, and Pub/Sub).For more information, see View error details( https://cloud.google.com/error-reporting/docs/viewing-errors#view_error_details) */ errorGroups?: Schema$LogErrorGroup[]; /** @@ -1123,6 +1123,10 @@ export namespace logging_v2 { * Optional. Information about an operation associated with the log entry, if applicable. */ operation?: Schema$LogEntryOperation; + /** + * Optional. The structured OpenTelemetry protocol payload. Contains the OpenTelemetry Resource, Instrumentation Scope, and Entities attributes for this log as they are defined in the OTLP specification, and any other fields that do not have a direct analog in the LogEntry. See https://opentelemetry.io/docs/specs/otel/logs/data-model/ + */ + otel?: {[key: string]: any} | null; /** * The log entry payload, represented as a protocol buffer. Some Google Cloud Platform services use this field for their log entry payloads.The following protocol buffer types are supported; user-defined types are not supported:"type.googleapis.com/google.cloud.audit.AuditLog" "type.googleapis.com/google.appengine.logging.v1.RequestLog" */ @@ -1156,7 +1160,7 @@ export namespace logging_v2 { */ textPayload?: string | null; /** - * Optional. The time the event described by the log entry occurred. This time is used to compute the log entry's age and to enforce the logs retention period. If this field is omitted in a new log entry, then Logging assigns it the current time. Timestamps have nanosecond accuracy, but trailing zeros in the fractional seconds might be omitted when the timestamp is displayed.Incoming log entries must have timestamps that don't exceed the logs retention period (https://cloud.google.com/logging/quotas#logs_retention_periods) in the past, and that don't exceed 24 hours in the future. Log entries outside those time boundaries are rejected by Logging. + * Optional. The time the event described by the log entry occurred. This time is used to compute the log entry's age and to enforce the logs retention period. If this field is omitted in a new log entry, then Logging assigns it the current time. Timestamps have nanosecond accuracy, but trailing zeros in the fractional seconds might be omitted when the timestamp is displayed. */ timestamp?: string | null; /** @@ -1211,7 +1215,7 @@ export namespace logging_v2 { */ export interface Schema$LogErrorGroup { /** - * The id is a unique identifier for a particular error group; it is the last part of the error group resource name: /project/[PROJECT_ID]/errors/[ERROR_GROUP_ID]. Example: COShysOX0r_51QE. The id is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see Google Cloud Privacy Notice (https://cloud.google.com/terms/cloud-privacy-notice). + * The id is a unique identifier for a particular error group; it is the last part of the error group resource name: /project/[PROJECT_ID]/errors/[ERROR_GROUP_ID]. Example: COShysOX0r_51QE.This field can be used to search for log entries belonging to a specific error group in Logs Explorer (e.g., error_groups.id = "ID") or Observability Analytics.The id is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see Google Cloud Privacy Notice (https://cloud.google.com/terms/cloud-privacy-notice). */ id?: string | null; } @@ -2049,7 +2053,7 @@ export namespace logging_v2 { */ bufferWindow?: string | null; /** - * Optional. A filter that chooses which log entries to return. For more information, see Logging query language (https://{$universe.dns_names.final_documentation_domain\}/logging/docs/view/logging-query-language).Only log entries that match the filter are returned. An empty filter matches all log entries in the resources listed in resource_names. Referencing a parent resource that is not listed in resource_names will cause the filter to return no results. The maximum length of a filter is 20,000 characters. + * Optional. A filter that chooses which log entries to return. For more information, see Logging query language (https://docs.cloud.google.com/logging/docs/view/logging-query-language).Only log entries that match the filter are returned. An empty filter matches all log entries in the resources listed in resource_names. Referencing a parent resource that is not listed in resource_names will cause the filter to return no results. The maximum length of a filter is 20,000 characters. */ filter?: string | null; /** @@ -2118,7 +2122,7 @@ export namespace logging_v2 { */ dryRun?: boolean | null; /** - * Required. The log entries to send to Logging. The order of log entries in this list does not matter. Values supplied in this method's log_name, resource, and labels fields are copied into those log entries in this list that do not include values for their corresponding fields. For more information, see the LogEntry type.If the timestamp or insert_id fields are missing in log entries, then this method supplies the current time or a unique identifier, respectively. The supplied values are chosen so that, among the log entries that did not supply their own values, the entries earlier in the list will sort before the entries later in the list. See the entries.list method.Log entries with timestamps that are more than the logs retention period (https://cloud.google.com/logging/quotas) in the past or more than 24 hours in the future will not be available when calling entries.list. However, those log entries can still be exported with LogSinks (https://cloud.google.com/logging/docs/api/tasks/exporting-logs).To improve throughput and to avoid exceeding the quota limit (https://cloud.google.com/logging/quotas) for calls to entries.write, you should try to include several log entries in this list, rather than calling this method for each individual log entry. + * Required. The log entries to send to Logging. The order of log entries in this list does not matter. Values supplied in this method's log_name, resource, and labels fields are copied into those log entries in this list that do not include values for their corresponding fields. For more information, see the LogEntry type.If the timestamp or insert_id fields are missing in log entries, then this method supplies the current time or a unique identifier, respectively. The supplied values are chosen so that, among the log entries that did not supply their own values, the entries earlier in the list will sort before the entries later in the list. See the entries.list method.Log entries with timestamps that are more than the logs retention period (https://docs.cloud.google.com/logging/quotas) in the past or more than 24 hours in the future will not be available when calling entries.list. However, those log entries can still be exported with LogSinks (https://docs.cloud.google.com/logging/docs/routing/overview).To improve throughput and to avoid exceeding the quota limit (https://docs.cloud.google.com/logging/quotas) for calls to entries.write, you should try to include several log entries in this list, rather than calling this method for each individual log entry. */ entries?: Schema$LogEntry[]; /** @@ -3433,7 +3437,7 @@ export namespace logging_v2 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -9639,7 +9643,7 @@ export namespace logging_v2 { } /** - * Lists log entries. Use this method to retrieve log entries that originated from a project/folder/organization/billing account. For ways to export log entries, see Exporting Logs (https://cloud.google.com/logging/docs/export). + * Lists log entries. Use this method to retrieve log entries that originated from a project/folder/organization/billing account. For ways to export log entries, see Routing overview (https://docs.cloud.google.com/logging/docs/routing/overview). * @example * ```js * // Before running the sample: @@ -12375,7 +12379,7 @@ export namespace logging_v2 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -19852,7 +19856,7 @@ export namespace logging_v2 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -25927,7 +25931,7 @@ export namespace logging_v2 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -34569,7 +34573,7 @@ export namespace logging_v2 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/looker/v1.ts b/src/apis/looker/v1.ts index 59ce997e62c..ba3a212485e 100644 --- a/src/apis/looker/v1.ts +++ b/src/apis/looker/v1.ts @@ -299,6 +299,36 @@ export namespace looker_v1 { */ gcsUri?: string | null; } + /** + * Ingress IP allowlist configuration. + */ + export interface Schema$IngressIpAllowlistConfig { + /** + * Optional. List of IP range rules to allow ingress traffic. + */ + allowlistRules?: Schema$IngressIpAllowlistRule[]; + /** + * Optional. Whether ingress IP allowlist functionality is enabled on the Looker instance. + */ + enabled?: boolean | null; + /** + * Optional. Whether google service connections are enabled for the instance. + */ + googleServicesEnabled?: boolean | null; + } + /** + * Ingress IP allowlist rule. + */ + export interface Schema$IngressIpAllowlistRule { + /** + * Optional. Description for the IP range. + */ + description?: string | null; + /** + * Optional. The IP range to allow ingress traffic from. + */ + ipRange?: string | null; + } /** * A Looker instance. */ @@ -307,6 +337,10 @@ export namespace looker_v1 { * Looker Instance Admin settings. */ adminSettings?: Schema$AdminSettings; + /** + * Optional. Indicates whether catalog integration is disabled for the Looker instance. + */ + catalogIntegrationOptOut?: boolean | null; /** * Optional. Storage class of the instance. */ @@ -351,6 +385,10 @@ export namespace looker_v1 { * Optional. Whether Gemini feature is enabled on the Looker instance or not. */ geminiEnabled?: boolean | null; + /** + * Optional. Ingress IP allowlist configuration for the Looker instance. + */ + ingressIpAllowlistConfig?: Schema$IngressIpAllowlistConfig; /** * Output only. Private Ingress IP (IPv4). */ @@ -943,7 +981,7 @@ export namespace looker_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1171,6 +1209,7 @@ export namespace looker_v1 { * // request body parameters * // { * // "adminSettings": {}, + * // "catalogIntegrationOptOut": false, * // "classType": "my_classType", * // "consumerNetwork": "my_consumerNetwork", * // "controlledEgressConfig": {}, @@ -1182,6 +1221,7 @@ export namespace looker_v1 { * // "encryptionConfig": {}, * // "fipsEnabled": false, * // "geminiEnabled": false, + * // "ingressIpAllowlistConfig": {}, * // "ingressPrivateIp": "my_ingressPrivateIp", * // "ingressPublicIp": "my_ingressPublicIp", * // "lastDenyMaintenancePeriod": {}, @@ -1640,6 +1680,7 @@ export namespace looker_v1 { * // Example response * // { * // "adminSettings": {}, + * // "catalogIntegrationOptOut": false, * // "classType": "my_classType", * // "consumerNetwork": "my_consumerNetwork", * // "controlledEgressConfig": {}, @@ -1651,6 +1692,7 @@ export namespace looker_v1 { * // "encryptionConfig": {}, * // "fipsEnabled": false, * // "geminiEnabled": false, + * // "ingressIpAllowlistConfig": {}, * // "ingressPrivateIp": "my_ingressPrivateIp", * // "ingressPublicIp": "my_ingressPublicIp", * // "lastDenyMaintenancePeriod": {}, @@ -2100,6 +2142,7 @@ export namespace looker_v1 { * // request body parameters * // { * // "adminSettings": {}, + * // "catalogIntegrationOptOut": false, * // "classType": "my_classType", * // "consumerNetwork": "my_consumerNetwork", * // "controlledEgressConfig": {}, @@ -2111,6 +2154,7 @@ export namespace looker_v1 { * // "encryptionConfig": {}, * // "fipsEnabled": false, * // "geminiEnabled": false, + * // "ingressIpAllowlistConfig": {}, * // "ingressPrivateIp": "my_ingressPrivateIp", * // "ingressPublicIp": "my_ingressPublicIp", * // "lastDenyMaintenancePeriod": {}, diff --git a/src/apis/managedidentities/v1.ts b/src/apis/managedidentities/v1.ts index 8db2a2eb9c9..a0d97ebd7a6 100644 --- a/src/apis/managedidentities/v1.ts +++ b/src/apis/managedidentities/v1.ts @@ -1439,7 +1439,7 @@ export namespace managedidentities_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/managedidentities/v1alpha1.ts b/src/apis/managedidentities/v1alpha1.ts index 82c792dcf7a..7aade4f047b 100644 --- a/src/apis/managedidentities/v1alpha1.ts +++ b/src/apis/managedidentities/v1alpha1.ts @@ -1422,7 +1422,7 @@ export namespace managedidentities_v1alpha1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/managedidentities/v1beta1.ts b/src/apis/managedidentities/v1beta1.ts index c388e0bbffb..6b371f8044b 100644 --- a/src/apis/managedidentities/v1beta1.ts +++ b/src/apis/managedidentities/v1beta1.ts @@ -1447,7 +1447,7 @@ export namespace managedidentities_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/managedkafka/v1.ts b/src/apis/managedkafka/v1.ts index 8428ce76ec1..e9f7ea201d6 100644 --- a/src/apis/managedkafka/v1.ts +++ b/src/apis/managedkafka/v1.ts @@ -352,7 +352,7 @@ export namespace managedkafka_v1 { */ capacityConfig?: Schema$CapacityConfig; /** - * Optional. Configurations for the worker that are overridden from the defaults. The key of the map is a Kafka Connect worker property name, for example: `exactly.once.source.support`. + * Optional. Reserved for future use. This field is meant for worker config overrides, but is unsupported for now. */ config?: {[key: string]: string} | null; /** @@ -1251,7 +1251,7 @@ export namespace managedkafka_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1281,7 +1281,7 @@ export namespace managedkafka_v1 { * * // Do the magic * const res = await managedkafka.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1407,7 +1407,7 @@ export namespace managedkafka_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/marketingplatformadmin/v1alpha.ts b/src/apis/marketingplatformadmin/v1alpha.ts index 52e413dbb66..8b94452b66c 100644 --- a/src/apis/marketingplatformadmin/v1alpha.ts +++ b/src/apis/marketingplatformadmin/v1alpha.ts @@ -522,7 +522,7 @@ export namespace marketingplatformadmin_v1alpha { } /** - * Lookup for a single organization. + * Looks up a single organization. * @example * ```js * // Before running the sample: @@ -809,7 +809,7 @@ export namespace marketingplatformadmin_v1alpha { } /** - * Get the usage and billing data for properties within the organization for the specified month. Per direct client org, user needs to be OrgAdmin/BillingAdmin on the organization in order to view the billing and usage data. Per sales partner client org, user needs to be OrgAdmin/BillingAdmin on the sales partner org in order to view the billing and usage data, or OrgAdmin/BillingAdmin on the sales partner client org in order to view the usage data only. + * Gets the usage and billing data for properties within the organization for the specified month. Per direct client org, user needs to be OrgAdmin/BillingAdmin on the organization in order to view the billing and usage data. Per sales partner client org, user needs to be OrgAdmin/BillingAdmin on the sales partner org in order to view the billing and usage data, or OrgAdmin/BillingAdmin on the sales partner client org in order to view the usage data only. * @example * ```js * // Before running the sample: diff --git a/src/apis/meet/v2.ts b/src/apis/meet/v2.ts index acad71125bd..b3d8b7fd2cb 100644 --- a/src/apis/meet/v2.ts +++ b/src/apis/meet/v2.ts @@ -220,6 +220,19 @@ export namespace meet_v2 { * Request to end an ongoing conference of a space. */ export interface Schema$EndActiveConferenceRequest {} + /** + * Details how to join the conference through a SIP gateway. + */ + export interface Schema$GatewaySipAccess { + /** + * The permanent numeric code for manual entry on specially configured devices. + */ + sipAccessCode?: string | null; + /** + * The Session Initiation Protocol (SIP) URI the conference can be reached through. The string is in one of these formats: * "sip:USER_ID@GATEWAY_ADDRESS" * "sips:USER_ID@GATEWAY_ADDRESS" where USER_ID is the 13-digit universal pin (with the future option to support using a Meet meeting code as well), and GATEWAY_ADDRESS is a valid address to be resolved using a DNS SRV lookup, or a dotted quad. + */ + uri?: string | null; + } /** * Response of ListConferenceRecords method. */ @@ -276,6 +289,19 @@ export namespace meet_v2 { */ recordings?: Schema$Recording[]; } + /** + * Response for ListSmartNotes method. + */ + export interface Schema$ListSmartNotesResponse { + /** + * Token to be circulated back for further List call if current List doesn't include all the smart notes. Unset if all smart notes are returned. + */ + nextPageToken?: string | null; + /** + * List of smart notes in one page. + */ + smartNotes?: Schema$SmartNote[]; + } /** * Response for ListTranscriptEntries method. */ @@ -369,6 +395,27 @@ export namespace meet_v2 { */ startTime?: string | null; } + /** + * Phone access contains information required to dial into a conference using a regional phone number and a PIN that is specific to that phone number. + */ + export interface Schema$PhoneAccess { + /** + * The BCP 47/LDML language code for the language associated with this phone access. To be parsed by the i18n LanguageCode utility. Examples: "es-419" for Latin American Spanish, "fr-CA" for Canadian French. + */ + languageCode?: string | null; + /** + * The phone number to dial for this meeting space in E.164 format. Full phone number with a leading '+' character. + */ + phoneNumber?: string | null; + /** + * The PIN that users must enter after dialing the given number. The PIN consists of only decimal digits and the length may vary. + */ + pin?: string | null; + /** + * The CLDR/ISO 3166 region code for the country associated with this phone access. To be parsed by the i18n RegionCode utility. Example: "SE" for Sweden. + */ + regionCode?: string | null; + } /** * User dialing in from a phone where the user's identity is unknown because they haven't signed in with a Google Account. */ @@ -425,6 +472,31 @@ export namespace meet_v2 { */ user?: string | null; } + /** + * Metadata for a smart note generated from a conference. It refers to the notes generated from Take Notes with Gemini during the conference. + */ + export interface Schema$SmartNote { + /** + * Output only. The Google Doc destination where the smart notes are saved. + */ + docsDestination?: Schema$DocsDestination; + /** + * Output only. Timestamp when the smart notes stopped. + */ + endTime?: string | null; + /** + * Output only. Identifier. Resource name of the smart notes. Format: `conferenceRecords/{conference_record\}/smartNotes/{smart_note\}`, where `{smart_note\}` is a 1:1 mapping to each unique smart notes session of the conference. + */ + name?: string | null; + /** + * Output only. Timestamp when the smart notes started. + */ + startTime?: string | null; + /** + * Output only. Current state. + */ + state?: string | null; + } /** * Configuration related to smart notes in a meeting space. For more information about smart notes, see ["Take notes for me" in Google Meet](https://support.google.com/meet/answer/14754931). */ @@ -446,6 +518,10 @@ export namespace meet_v2 { * Configuration pertaining to the meeting space. */ config?: Schema$SpaceConfig; + /** + * Output only. The SIP-based access methods that can be used to join the conference. Can be empty. + */ + gatewaySipAccess?: Schema$GatewaySipAccess[]; /** * Output only. Type friendly unique string used to join the meeting. Format: `[a-z]+-[a-z]+-[a-z]+`. For example, `abc-mnop-xyz`. The maximum length is 128 characters. Can only be used as an alias of the space name to get the space. */ @@ -458,6 +534,10 @@ export namespace meet_v2 { * Immutable. Resource name of the space. Format: `spaces/{space\}`. `{space\}` is the resource identifier for the space. It's a unique, server-generated ID and is case sensitive. For example, `jQCFfuBOdN5z`. For more information, see [How Meet identifies a meeting space](https://developers.google.com/workspace/meet/api/guides/meeting-spaces#identify-meeting-space). */ name?: string | null; + /** + * Output only. All regional phone access methods for this meeting space. Can be empty. + */ + phoneAccess?: Schema$PhoneAccess[]; } /** * The configuration pertaining to a meeting space. @@ -556,6 +636,7 @@ export namespace meet_v2 { context: APIRequestContext; participants: Resource$Conferencerecords$Participants; recordings: Resource$Conferencerecords$Recordings; + smartNotes: Resource$Conferencerecords$Smartnotes; transcripts: Resource$Conferencerecords$Transcripts; constructor(context: APIRequestContext) { this.context = context; @@ -563,6 +644,7 @@ export namespace meet_v2 { this.context ); this.recordings = new Resource$Conferencerecords$Recordings(this.context); + this.smartNotes = new Resource$Conferencerecords$Smartnotes(this.context); this.transcripts = new Resource$Conferencerecords$Transcripts( this.context ); @@ -1857,6 +1939,322 @@ export namespace meet_v2 { parent?: string; } + export class Resource$Conferencerecords$Smartnotes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets smart notes by smart note ID. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/meet.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const meet = google.meet('v2'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/meetings.space.created', + * 'https://www.googleapis.com/auth/meetings.space.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await meet.conferenceRecords.smartNotes.get({ + * // Required. Resource name of the smart note. Format: conferenceRecords/{conference_record\}/smartNotes/{smart_note\} + * name: 'conferenceRecords/my-conferenceRecord/smartNotes/my-smartNote', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "docsDestination": {}, + * // "endTime": "my_endTime", + * // "name": "my_name", + * // "startTime": "my_startTime", + * // "state": "my_state" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Conferencerecords$Smartnotes$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Conferencerecords$Smartnotes$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Conferencerecords$Smartnotes$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Conferencerecords$Smartnotes$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Conferencerecords$Smartnotes$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Conferencerecords$Smartnotes$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Conferencerecords$Smartnotes$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Conferencerecords$Smartnotes$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://meet.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v2/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists the set of smart notes from the conference record. By default, ordered by start time and in ascending order. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/meet.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const meet = google.meet('v2'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/meetings.space.created', + * 'https://www.googleapis.com/auth/meetings.space.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await meet.conferenceRecords.smartNotes.list({ + * // Optional. Maximum number of smart notes to return. The service might return fewer than this value. If unspecified, at most 10 smart notes are returned. The maximum value is 100; values above 100 are coerced to 100. Maximum might change in the future. + * pageSize: 'placeholder-value', + * // Optional. Page token returned from previous List Call. + * pageToken: 'placeholder-value', + * // Required. Format: `conferenceRecords/{conference_record\}` + * parent: 'conferenceRecords/my-conferenceRecord', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "smartNotes": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Conferencerecords$Smartnotes$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Conferencerecords$Smartnotes$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Conferencerecords$Smartnotes$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Conferencerecords$Smartnotes$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Conferencerecords$Smartnotes$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Conferencerecords$Smartnotes$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Conferencerecords$Smartnotes$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Conferencerecords$Smartnotes$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://meet.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v2/{+parent}/smartNotes').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Conferencerecords$Smartnotes$Get extends StandardParameters { + /** + * Required. Resource name of the smart note. Format: conferenceRecords/{conference_record\}/smartNotes/{smart_note\} + */ + name?: string; + } + export interface Params$Resource$Conferencerecords$Smartnotes$List extends StandardParameters { + /** + * Optional. Maximum number of smart notes to return. The service might return fewer than this value. If unspecified, at most 10 smart notes are returned. The maximum value is 100; values above 100 are coerced to 100. Maximum might change in the future. + */ + pageSize?: number; + /** + * Optional. Page token returned from previous List Call. + */ + pageToken?: string; + /** + * Required. Format: `conferenceRecords/{conference_record\}` + */ + parent?: string; + } + export class Resource$Conferencerecords$Transcripts { context: APIRequestContext; entries: Resource$Conferencerecords$Transcripts$Entries; @@ -2543,9 +2941,11 @@ export namespace meet_v2 { * // { * // "activeConference": {}, * // "config": {}, + * // "gatewaySipAccess": [], * // "meetingCode": "my_meetingCode", * // "meetingUri": "my_meetingUri", - * // "name": "my_name" + * // "name": "my_name", + * // "phoneAccess": [] * // } * }, * }); @@ -2555,9 +2955,11 @@ export namespace meet_v2 { * // { * // "activeConference": {}, * // "config": {}, + * // "gatewaySipAccess": [], * // "meetingCode": "my_meetingCode", * // "meetingUri": "my_meetingUri", - * // "name": "my_name" + * // "name": "my_name", + * // "phoneAccess": [] * // } * } * @@ -2837,9 +3239,11 @@ export namespace meet_v2 { * // { * // "activeConference": {}, * // "config": {}, + * // "gatewaySipAccess": [], * // "meetingCode": "my_meetingCode", * // "meetingUri": "my_meetingUri", - * // "name": "my_name" + * // "name": "my_name", + * // "phoneAccess": [] * // } * } * @@ -2979,9 +3383,11 @@ export namespace meet_v2 { * // { * // "activeConference": {}, * // "config": {}, + * // "gatewaySipAccess": [], * // "meetingCode": "my_meetingCode", * // "meetingUri": "my_meetingUri", - * // "name": "my_name" + * // "name": "my_name", + * // "phoneAccess": [] * // } * }, * }); @@ -2991,9 +3397,11 @@ export namespace meet_v2 { * // { * // "activeConference": {}, * // "config": {}, + * // "gatewaySipAccess": [], * // "meetingCode": "my_meetingCode", * // "meetingUri": "my_meetingUri", - * // "name": "my_name" + * // "name": "my_name", + * // "phoneAccess": [] * // } * } * diff --git a/src/apis/merchantapi/accounts_v1.ts b/src/apis/merchantapi/accounts_v1.ts index 799c7fdf454..31bcc90cfda 100644 --- a/src/apis/merchantapi/accounts_v1.ts +++ b/src/apis/merchantapi/accounts_v1.ts @@ -166,7 +166,7 @@ export namespace merchantapi_accounts_v1 { termsOfServiceAgreementState?: Schema$TermsOfServiceAgreementState; } /** - * The `Account` message represents a business's account within Shopping Ads. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on. + * The `Account` message represents a business's account within Merchant Center. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on. */ export interface Schema$Account { /** @@ -837,7 +837,7 @@ export namespace merchantapi_accounts_v1 { */ gcpIds?: string[] | null; /** - * Identifier. The `name` (ID) of the developer registration. Generated by the Content API upon creation of a new `DeveloperRegistration`. The `account` represents the merchant ID of the merchant that owns the registration. + * Identifier. The `name` (ID) of the developer registration. Generated upon creation of a new `DeveloperRegistration`. The `account` represents the merchant ID of the merchant that owns the registration. */ name?: string | null; } @@ -936,7 +936,7 @@ export namespace merchantapi_accounts_v1 { name?: string | null; } /** - * The current status of establishing of the service. (for example, pending approval or approved). + * The current status of establishing of the service. (for example, pending approval, approved, established). */ export interface Schema$Handshake { /** @@ -1689,7 +1689,7 @@ export namespace merchantapi_accounts_v1 { resourceType?: string | null; } /** - * Defines participation in a given program for the specified account. Programs provide a mechanism for adding functionality to a Merchant Center accounts. A typical example of this is the [Free product listings](https://support.google.com/merchants/answer/13889434) program, which enables products from a business's store to be shown across Google for free. The following list is the available set of program resource IDs accessible through the API: * `checkout` * `free-listings` * `product-ratings` * `shopping-ads` * `youtube-shopping-checkout` + * Defines participation in a given program for the specified account. Programs provide a mechanism for adding functionality to a Merchant Center accounts. A typical example of this is the [Free product listings](https://support.google.com/merchants/answer/13889434) program, which enables products from a business's store to be shown across Google for free. The following list is the available set of program resource IDs accessible through the API: * `checkout` * `free-listings` * `product-ratings` * `shopping-ads` * `youtube-affiliate` * `youtube-shopping-checkout` */ export interface Schema$Program { /** @@ -1814,7 +1814,7 @@ export namespace merchantapi_accounts_v1 { */ export interface Schema$RegisterGcpRequest { /** - * Immutable. If the developer email provided is associated with a user in the merchant account provided, the user will be updated to have "API developer" access type and the email preference corresponding to that user will be updated to have the new "API notifications" preference. If the developer email provided is not associated with any user we will just add it as a contact. The email preference corresponding to that contact will have the new "API notifications" preference. Make sure the email used is associated with a Google Account (Google Workspace account or Gmail account) and is not a service account as service accounts can't receive emails. + * Immutable. Optional field. Developer role can be also added by using `users.update` method. If the developer email provided is associated with a user in the provided merchant account, the user will be updated to have `API_DEVELOPER` `access_rights` and the email preference corresponding to that user will be updated to have the new API notifications preference. If the developer email provided is not associated with any user, it is added as a contact. The email preference corresponding to that contact will have the new API notifications preference. Make sure the email used is associated with a Google Account and is not a service account as service accounts can't receive emails. */ developerEmail?: string | null; } @@ -2543,6 +2543,163 @@ export namespace merchantapi_accounts_v1 { } } + /** + * Creates a Merchant Center test account. Test accounts are intended for development and testing purposes, such as validating API integrations or new feature behavior. Key characteristics and limitations of test accounts: - Immutable Type: A test account cannot be converted into a regular (live) Merchant Center account. Likewise, a regular account cannot be converted into a test account. - Non-Serving Products: Any products, offers, or data created within a test account will not be published or made visible to end-users on any Google surfaces. They are strictly for testing environments. - Separate Environment: Test accounts operate in a sandbox-like manner, isolated from live serving and real user traffic. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/merchantapi.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const merchantapi = google.merchantapi('accounts_v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/content'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await merchantapi.accounts.createTestAccount({ + * // Required. The account resource name to create the test account under. Format: accounts/{account\} + * parent: 'accounts/my-account', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accountId": "my_accountId", + * // "accountName": "my_accountName", + * // "adultContent": false, + * // "languageCode": "my_languageCode", + * // "name": "my_name", + * // "testAccount": false, + * // "timeZone": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "accountId": "my_accountId", + * // "accountName": "my_accountName", + * // "adultContent": false, + * // "languageCode": "my_languageCode", + * // "name": "my_name", + * // "testAccount": false, + * // "timeZone": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + createTestAccount( + params: Params$Resource$Accounts$Createtestaccount, + options: StreamMethodOptions + ): Promise>; + createTestAccount( + params?: Params$Resource$Accounts$Createtestaccount, + options?: MethodOptions + ): Promise>; + createTestAccount( + params: Params$Resource$Accounts$Createtestaccount, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createTestAccount( + params: Params$Resource$Accounts$Createtestaccount, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createTestAccount( + params: Params$Resource$Accounts$Createtestaccount, + callback: BodyResponseCallback + ): void; + createTestAccount(callback: BodyResponseCallback): void; + createTestAccount( + paramsOrCallback?: + | Params$Resource$Accounts$Createtestaccount + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Accounts$Createtestaccount; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Accounts$Createtestaccount; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://merchantapi.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/accounts/v1/{+parent}:createTestAccount').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Deletes the specified account regardless of its type: standalone, advanced account or sub-account. Deleting an advanced account leads to the deletion of all of its sub-accounts. This also deletes the account's [developer registration entity](/merchant/api/reference/rest/accounts_v1/accounts.developerRegistration) and any associated GCP project to the account. Executing this method requires admin access. The deletion succeeds only if the account does not provide services to any other account and has no processed offers. You can use the `force` parameter to override this. * @example @@ -3275,6 +3432,17 @@ export namespace merchantapi_accounts_v1 { */ requestBody?: Schema$CreateAndConfigureAccountRequest; } + export interface Params$Resource$Accounts$Createtestaccount extends StandardParameters { + /** + * Required. The account resource name to create the test account under. Format: accounts/{account\} + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Account; + } export interface Params$Resource$Accounts$Delete extends StandardParameters { /** * Optional. If set to `true`, the account is deleted even if it provides services to other accounts or has processed offers. @@ -4993,7 +5161,7 @@ export namespace merchantapi_accounts_v1 { * * // Do the magic * const res = await merchantapi.accounts.developerRegistration.registerGcp({ - * // Required. The name of the developer registration to be created for the merchant account that the GCP will be registered with. Format: `accounts/{account\}/developerRegistration` + * // Required. The name of the developer registration to be created for the merchant account that the GCP will be registered with. Format: `accounts/{account\}/developerRegistration` The {account\} used must be the same account where user calling this API method is directly added to. * name: 'accounts/my-account/developerRegistration', * * // Request body metadata @@ -5265,7 +5433,7 @@ export namespace merchantapi_accounts_v1 { } export interface Params$Resource$Accounts$Developerregistration$Registergcp extends StandardParameters { /** - * Required. The name of the developer registration to be created for the merchant account that the GCP will be registered with. Format: `accounts/{account\}/developerRegistration` + * Required. The name of the developer registration to be created for the merchant account that the GCP will be registered with. Format: `accounts/{account\}/developerRegistration` The {account\} used must be the same account where user calling this API method is directly added to. */ name?: string; @@ -13229,7 +13397,7 @@ export namespace merchantapi_accounts_v1 { } /** - * Deletes a Merchant Center account user. Executing this method requires admin access. The user to be deleted can't be the last admin user of that account. Also a user is protected from deletion if it is managed by Business Manager" + * Deletes a Merchant Center account user. Executing this method requires admin access. The user to be deleted can't be the last admin user of that account. * @example * ```js * // Before running the sample: diff --git a/src/apis/merchantapi/accounts_v1beta.ts b/src/apis/merchantapi/accounts_v1beta.ts index 89862dd05f8..82cd1018a29 100644 --- a/src/apis/merchantapi/accounts_v1beta.ts +++ b/src/apis/merchantapi/accounts_v1beta.ts @@ -166,7 +166,7 @@ export namespace merchantapi_accounts_v1beta { termsOfServiceAgreementState?: Schema$TermsOfServiceAgreementState; } /** - * The `Account` message represents a business's account within Shopping Ads. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on. + * The `Account` message represents a business's account within Merchant Center. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on. */ export interface Schema$Account { /** @@ -787,7 +787,7 @@ export namespace merchantapi_accounts_v1beta { */ gcpIds?: string[] | null; /** - * Identifier. The `name` (ID) of the developer registration. Generated by the Content API upon creation of a new `DeveloperRegistration`. The `account` represents the merchant ID of the merchant that owns the registration. + * Identifier. The `name` (ID) of the developer registration. Generated upon creation of a new `DeveloperRegistration`. The `account` represents the merchant ID of the merchant that owns the registration. */ name?: string | null; } @@ -886,7 +886,7 @@ export namespace merchantapi_accounts_v1beta { name?: string | null; } /** - * The current status of establishing of the service. (for example, pending approval or approved). + * The current status of establishing of the service. (for example, pending approval, approved, established). */ export interface Schema$Handshake { /** @@ -1639,7 +1639,7 @@ export namespace merchantapi_accounts_v1beta { resourceType?: string | null; } /** - * Defines participation in a given program for the specified account. Programs provide a mechanism for adding functionality to a Merchant Center accounts. A typical example of this is the [Free product listings](https://support.google.com/merchants/answer/13889434) program, which enables products from a business's store to be shown across Google for free. The following list is the available set of program resource IDs accessible through the API: * `checkout` * `free-listings` * `product-ratings` * `shopping-ads` * `youtube-shopping-checkout` + * Defines participation in a given program for the specified account. Programs provide a mechanism for adding functionality to a Merchant Center accounts. A typical example of this is the [Free product listings](https://support.google.com/merchants/answer/13889434) program, which enables products from a business's store to be shown across Google for free. The following list is the available set of program resource IDs accessible through the API: * `checkout` * `free-listings` * `product-ratings` * `shopping-ads` * `youtube-affiliate` * `youtube-shopping-checkout` */ export interface Schema$Program { /** @@ -1764,7 +1764,7 @@ export namespace merchantapi_accounts_v1beta { */ export interface Schema$RegisterGcpRequest { /** - * Immutable. If the developer email provided is associated with a user in the merchant account provided, the user will be updated to have "API developer" access type and the email preference corresponding to that user will be updated to have the new "API notifications" preference. If the developer email provided is not associated with any user we will just add it as a contact. The email preference corresponding to that contact will have the new "API notifications" preference. Make sure the email used is associated with a Google Account (Google Workspace account or Gmail account) and is not a service account as service accounts can't receive emails. + * Immutable. Optional field. Developer role can be also added by using `users.update` method. If the developer email provided is associated with a user in the provided merchant account, the user will be updated to have `API_DEVELOPER` `access_rights` and the email preference corresponding to that user will be updated to have the new API notifications preference. If the developer email provided is not associated with any user, it is added as a contact. The email preference corresponding to that contact will have the new API notifications preference. Make sure the email used is associated with a Google Account and is not a service account as service accounts can't receive emails. */ developerEmail?: string | null; } @@ -2480,6 +2480,162 @@ export namespace merchantapi_accounts_v1beta { } } + /** + * Creates a Merchant Center test account. Test accounts are intended for development and testing purposes, such as validating API integrations or new feature behavior. Key characteristics and limitations of test accounts: - Immutable Type: A test account cannot be converted into a regular (live) Merchant Center account. Likewise, a regular account cannot be converted into a test account. - Non-Serving Products: Any products, offers, or data created within a test account will not be published or made visible to end-users on any Google surfaces. They are strictly for testing environments. - Separate Environment: Test accounts operate in a sandbox-like manner, isolated from live serving and real user traffic. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/merchantapi.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const merchantapi = google.merchantapi('accounts_v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/content'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await merchantapi.accounts.createTestAccount({ + * // Required. The account resource name to create the test account under. Format: accounts/{account\} + * parent: 'accounts/my-account', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accountId": "my_accountId", + * // "accountName": "my_accountName", + * // "adultContent": false, + * // "languageCode": "my_languageCode", + * // "name": "my_name", + * // "testAccount": false, + * // "timeZone": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "accountId": "my_accountId", + * // "accountName": "my_accountName", + * // "adultContent": false, + * // "languageCode": "my_languageCode", + * // "name": "my_name", + * // "testAccount": false, + * // "timeZone": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + createTestAccount( + params: Params$Resource$Accounts$Createtestaccount, + options: StreamMethodOptions + ): Promise>; + createTestAccount( + params?: Params$Resource$Accounts$Createtestaccount, + options?: MethodOptions + ): Promise>; + createTestAccount( + params: Params$Resource$Accounts$Createtestaccount, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createTestAccount( + params: Params$Resource$Accounts$Createtestaccount, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createTestAccount( + params: Params$Resource$Accounts$Createtestaccount, + callback: BodyResponseCallback + ): void; + createTestAccount(callback: BodyResponseCallback): void; + createTestAccount( + paramsOrCallback?: + | Params$Resource$Accounts$Createtestaccount + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Accounts$Createtestaccount; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Accounts$Createtestaccount; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://merchantapi.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/accounts/v1beta/{+parent}:createTestAccount' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Deletes the specified account regardless of its type: standalone, advanced account or sub-account. Deleting an advanced account leads to the deletion of all of its sub-accounts. This also deletes the account's [developer registration entity](/merchant/api/reference/rest/accounts_v1beta/accounts.developerRegistration) and any associated GCP project to the account. Executing this method requires admin access. The deletion succeeds only if the account does not provide services to any other account and has no processed offers. You can use the `force` parameter to override this. * @example @@ -3211,6 +3367,17 @@ export namespace merchantapi_accounts_v1beta { */ requestBody?: Schema$CreateAndConfigureAccountRequest; } + export interface Params$Resource$Accounts$Createtestaccount extends StandardParameters { + /** + * Required. The account resource name to create the test account under. Format: accounts/{account\} + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Account; + } export interface Params$Resource$Accounts$Delete extends StandardParameters { /** * Optional. If set to `true`, the account is deleted even if it provides services to other accounts or has processed offers. @@ -4929,7 +5096,7 @@ export namespace merchantapi_accounts_v1beta { * * // Do the magic * const res = await merchantapi.accounts.developerRegistration.registerGcp({ - * // Required. The name of the developer registration to be created for the merchant account that the GCP will be registered with. Format: `accounts/{account\}/developerRegistration` + * // Required. The name of the developer registration to be created for the merchant account that the GCP will be registered with. Format: `accounts/{account\}/developerRegistration` The {account\} used must be the same account where user calling this API method is directly added to. * name: 'accounts/my-account/developerRegistration', * * // Request body metadata @@ -5201,7 +5368,7 @@ export namespace merchantapi_accounts_v1beta { } export interface Params$Resource$Accounts$Developerregistration$Registergcp extends StandardParameters { /** - * Required. The name of the developer registration to be created for the merchant account that the GCP will be registered with. Format: `accounts/{account\}/developerRegistration` + * Required. The name of the developer registration to be created for the merchant account that the GCP will be registered with. Format: `accounts/{account\}/developerRegistration` The {account\} used must be the same account where user calling this API method is directly added to. */ name?: string; @@ -12881,7 +13048,7 @@ export namespace merchantapi_accounts_v1beta { } /** - * Deletes a Merchant Center account user. Executing this method requires admin access. The user to be deleted can't be the last admin user of that account. Also a user is protected from deletion if it is managed by Business Manager" + * Deletes a Merchant Center account user. Executing this method requires admin access. The user to be deleted can't be the last admin user of that account. * @example * ```js * // Before running the sample: diff --git a/src/apis/merchantapi/datasources_v1.ts b/src/apis/merchantapi/datasources_v1.ts index f3fbbc9571d..f6913d34d7c 100644 --- a/src/apis/merchantapi/datasources_v1.ts +++ b/src/apis/merchantapi/datasources_v1.ts @@ -370,7 +370,7 @@ export namespace merchantapi_datasources_v1 { */ contentLanguage?: string | null; /** - * Required. Immutable. The feed label of the offers to which the local inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). + * Required. Immutable. The feed label of the offers to which the local inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). */ feedLabel?: string | null; } @@ -399,7 +399,7 @@ export namespace merchantapi_datasources_v1 { */ destinations?: Schema$Destination[]; /** - * Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept products without that restriction. + * Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). For more information about feed label, see [Create a primary data source for products](https://developers.google.com/merchant/api/guides/data-sources/api-sources#create-primary-data-source). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept products without that restriction. */ feedLabel?: string | null; /** @@ -492,7 +492,7 @@ export namespace merchantapi_datasources_v1 { */ contentLanguage?: string | null; /** - * Required. Immutable. The feed label of the offers to which the regional inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). + * Required. Immutable. The feed label of the offers to which the regional inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). */ feedLabel?: string | null; } @@ -505,7 +505,7 @@ export namespace merchantapi_datasources_v1 { */ contentLanguage?: string | null; /** - * Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. The fields must be unset for data sources without file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept produts without that restriction. + * Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. The fields must be unset for data sources without file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept produts without that restriction. */ feedLabel?: string | null; /** diff --git a/src/apis/merchantapi/datasources_v1beta.ts b/src/apis/merchantapi/datasources_v1beta.ts index f4fab7d06bd..69caf19edaf 100644 --- a/src/apis/merchantapi/datasources_v1beta.ts +++ b/src/apis/merchantapi/datasources_v1beta.ts @@ -370,7 +370,7 @@ export namespace merchantapi_datasources_v1beta { */ contentLanguage?: string | null; /** - * Required. Immutable. The feed label of the offers to which the local inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). + * Required. Immutable. The feed label of the offers to which the local inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). */ feedLabel?: string | null; } @@ -403,7 +403,7 @@ export namespace merchantapi_datasources_v1beta { */ destinations?: Schema$Destination[]; /** - * Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept products without that restriction. + * Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). For more information about feed label, see [Create a primary data source for products](https://developers.google.com/merchant/api/guides/data-sources/api-sources#create-primary-data-source). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept products without that restriction. */ feedLabel?: string | null; } @@ -492,7 +492,7 @@ export namespace merchantapi_datasources_v1beta { */ contentLanguage?: string | null; /** - * Required. Immutable. The feed label of the offers to which the regional inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). + * Required. Immutable. The feed label of the offers to which the regional inventory is provided. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). */ feedLabel?: string | null; } @@ -505,7 +505,7 @@ export namespace merchantapi_datasources_v1beta { */ contentLanguage?: string | null; /** - * Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. The fields must be unset for data sources without file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept produts without that restriction. + * Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. The fields must be unset for data sources without file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept produts without that restriction. */ feedLabel?: string | null; /** diff --git a/src/apis/merchantapi/inventories_v1.ts b/src/apis/merchantapi/inventories_v1.ts index 5e15f793a01..3520ce4f2af 100644 --- a/src/apis/merchantapi/inventories_v1.ts +++ b/src/apis/merchantapi/inventories_v1.ts @@ -208,12 +208,16 @@ export namespace merchantapi_inventories_v1 { * Output only. The account that owns the product. This field will be ignored if set by the client. */ account?: string | null; + /** + * Output only. The unpadded base64url encoded name of the `LocalInventory` resource. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` where the `{product\}` segment is the unpadded base64url encoded value of the identifier of the form `content_language~feed_label~offer_id`. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123` for the decoded product ID `en~US~sku/123` and `store_code` "store123". Can be used directly as input to the API methods that require the local product identifier within the local inventory name to be encoded if it contains special characters, for example [`GetLocalInventory`](https://developers.google.com/merchant/api/reference/rest/inventories_v1/accounts.products.localInventories/get). + */ + base64EncodedName?: string | null; /** * Optional. A list of local inventory attributes. */ localInventoryAttributes?: Schema$LocalInventoryAttributes; /** - * Output only. The name of the `LocalInventory` resource. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` "store123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a local inventory at `store_code` "store123" would be: `accounts/123/products/online~en~US~sku123/localInventories/store123`. + * Output only. The name of the `LocalInventory` resource. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` "store123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ name?: string | null; /** @@ -346,7 +350,11 @@ export namespace merchantapi_inventories_v1 { */ account?: string | null; /** - * Output only. The name of the `RegionalInventory` resource. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a regional inventory in `region` "region123" would be: `accounts/123/products/online~en~US~sku123/regionalInventories/region123`. + * Output only. The unpadded base64url encoded name of the `RegionalInventory` resource. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` where the `{product\}` segment is the unpadded base64url encoded value of the identifier of the form `content_language~feed_label~offer_id`. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123` for the decoded product ID `en~US~sku/123` and `region` "region123". Can be used directly as input to the API methods that require the product identifier within the regional inventory name to be encoded if it contains special characters, for example [`GetRegionalInventory`](https://developers.google.com/merchant/api/reference/rest/inventories_v1/accounts.products.regionalInventories/get). + */ + base64EncodedName?: string | null; + /** + * Output only. The name of the `RegionalInventory` resource. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ name?: string | null; /** @@ -444,7 +452,7 @@ export namespace merchantapi_inventories_v1 { * * // Do the magic * const res = await merchantapi.accounts.products.localInventories.delete({ - * // Required. The name of the local inventory for the given product to delete. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` "store123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a local inventory at `store_code` "store123" would be: `accounts/123/products/online~en~US~sku123/localInventories/store123`. + * // Required. The name of the local inventory for the given product to delete. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` "store123", the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * name: 'accounts/my-account/products/my-product/localInventories/my-localInventorie', * }); * console.log(res.data); @@ -580,7 +588,7 @@ export namespace merchantapi_inventories_v1 { * * // Do the magic * const res = await merchantapi.accounts.products.localInventories.insert({ - * // Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * // Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * parent: 'accounts/my-account/products/my-product', * * // Request body metadata @@ -588,6 +596,7 @@ export namespace merchantapi_inventories_v1 { * // request body parameters * // { * // "account": "my_account", + * // "base64EncodedName": "my_base64EncodedName", * // "localInventoryAttributes": {}, * // "name": "my_name", * // "storeCode": "my_storeCode" @@ -599,6 +608,7 @@ export namespace merchantapi_inventories_v1 { * // Example response * // { * // "account": "my_account", + * // "base64EncodedName": "my_base64EncodedName", * // "localInventoryAttributes": {}, * // "name": "my_name", * // "storeCode": "my_storeCode" @@ -735,7 +745,7 @@ export namespace merchantapi_inventories_v1 { * pageSize: 'placeholder-value', * // A page token, received from a previous `ListLocalInventories` call. Provide the page token to retrieve the subsequent page. When paginating, all other parameters provided to `ListLocalInventories` must match the call that provided the page token. The token returned as nextPageToken in the response to the previous request. * pageToken: 'placeholder-value', - * // Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * // Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * parent: 'accounts/my-account/products/my-product', * }); * console.log(res.data); @@ -850,13 +860,13 @@ export namespace merchantapi_inventories_v1 { export interface Params$Resource$Accounts$Products$Localinventories$Delete extends StandardParameters { /** - * Required. The name of the local inventory for the given product to delete. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` "store123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a local inventory at `store_code` "store123" would be: `accounts/123/products/online~en~US~sku123/localInventories/store123`. + * Required. The name of the local inventory for the given product to delete. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` "store123", the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ name?: string; } export interface Params$Resource$Accounts$Products$Localinventories$Insert extends StandardParameters { /** - * Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ parent?: string; @@ -875,7 +885,7 @@ export namespace merchantapi_inventories_v1 { */ pageToken?: string; /** - * Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ parent?: string; } @@ -917,7 +927,7 @@ export namespace merchantapi_inventories_v1 { * * // Do the magic * const res = await merchantapi.accounts.products.regionalInventories.delete({ - * // Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a regional inventory in `region` "region123" would be: `accounts/123/products/online~en~US~sku123/regionalInventories/region123`. + * // Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * name: 'accounts/my-account/products/my-product/regionalInventories/my-regionalInventorie', * }); * console.log(res.data); @@ -1053,7 +1063,7 @@ export namespace merchantapi_inventories_v1 { * * // Do the magic * const res = await merchantapi.accounts.products.regionalInventories.insert({ - * // Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * // Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * parent: 'accounts/my-account/products/my-product', * * // Request body metadata @@ -1061,6 +1071,7 @@ export namespace merchantapi_inventories_v1 { * // request body parameters * // { * // "account": "my_account", + * // "base64EncodedName": "my_base64EncodedName", * // "name": "my_name", * // "region": "my_region", * // "regionalInventoryAttributes": {} @@ -1072,6 +1083,7 @@ export namespace merchantapi_inventories_v1 { * // Example response * // { * // "account": "my_account", + * // "base64EncodedName": "my_base64EncodedName", * // "name": "my_name", * // "region": "my_region", * // "regionalInventoryAttributes": {} @@ -1208,7 +1220,7 @@ export namespace merchantapi_inventories_v1 { * pageSize: 'placeholder-value', * // A page token, received from a previous `ListRegionalInventories` call. Provide the page token to retrieve the subsequent page. When paginating, all other parameters provided to `ListRegionalInventories` must match the call that provided the page token. The token returned as nextPageToken in the response to the previous request. * pageToken: 'placeholder-value', - * // Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * // Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * parent: 'accounts/my-account/products/my-product', * }); * console.log(res.data); @@ -1324,13 +1336,13 @@ export namespace merchantapi_inventories_v1 { export interface Params$Resource$Accounts$Products$Regionalinventories$Delete extends StandardParameters { /** - * Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a regional inventory in `region` "region123" would be: `accounts/123/products/online~en~US~sku123/regionalInventories/region123`. + * Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ name?: string; } export interface Params$Resource$Accounts$Products$Regionalinventories$Insert extends StandardParameters { /** - * Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ parent?: string; @@ -1349,7 +1361,7 @@ export namespace merchantapi_inventories_v1 { */ pageToken?: string; /** - * Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ parent?: string; } diff --git a/src/apis/merchantapi/inventories_v1beta.ts b/src/apis/merchantapi/inventories_v1beta.ts index 4e93b387922..82d74034e24 100644 --- a/src/apis/merchantapi/inventories_v1beta.ts +++ b/src/apis/merchantapi/inventories_v1beta.ts @@ -196,6 +196,10 @@ export namespace merchantapi_inventories_v1beta { * Availability of the product at this store. For accepted attribute values, see the [local product inventory data specification](https://support.google.com/merchants/answer/3061342) */ availability?: string | null; + /** + * Output only. The unpadded base64url encoded name of the `LocalInventory` resource. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` where the `{product\}` segment is the unpadded base64url encoded value of the identifier of the form `content_language~feed_label~offer_id`. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123` for the decoded product ID `en~US~sku/123` and `store_code` "store123". Can be used directly as input to the API methods that require the local product identifier within the local inventory name to be encoded if it contains special characters, for example [`GetLocalInventory`](https://developers.google.com/merchant/api/reference/rest/inventories_v1beta/accounts.products.localInventories/get). + */ + base64EncodedName?: string | null; /** * A list of custom (merchant-provided) attributes. You can also use `CustomAttribute` to submit any attribute of the data specification in its generic form. */ @@ -205,7 +209,7 @@ export namespace merchantapi_inventories_v1beta { */ instoreProductLocation?: string | null; /** - * Output only. The name of the `LocalInventory` resource. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` "store123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a local inventory at `store_code` "store123" would be: `accounts/123/products/online~en~US~sku123/localInventories/store123`. + * Output only. The name of the `LocalInventory` resource. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` "store123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ name?: string | null; /** @@ -324,12 +328,16 @@ export namespace merchantapi_inventories_v1beta { * Availability of the product in this region. For accepted attribute values, see the [regional product inventory data specification](https://support.google.com/merchants/answer/14644124). */ availability?: string | null; + /** + * Output only. The unpadded base64url encoded name of the `RegionalInventory` resource. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` where the `{product\}` segment is the unpadded base64url encoded value of the identifier of the form `content_language~feed_label~offer_id`. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123` for the decoded product ID `en~US~sku/123` and `region` "region123". Can be used directly as input to the API methods that require the product identifier within the regional inventory name to be encoded if it contains special characters, for example [`GetRegionalInventory`](https://developers.google.com/merchant/api/reference/rest/inventories_v1beta/accounts.products.regionalInventories/get). + */ + base64EncodedName?: string | null; /** * A list of custom (merchant-provided) attributes. You can also use `CustomAttribute` to submit any attribute of the data specification in its generic form. */ customAttributes?: Schema$CustomAttribute[]; /** - * Output only. The name of the `RegionalInventory` resource. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a regional inventory in `region` "region123" would be: `accounts/123/products/online~en~US~sku123/regionalInventories/region123`. + * Output only. The name of the `RegionalInventory` resource. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ name?: string | null; /** @@ -410,7 +418,7 @@ export namespace merchantapi_inventories_v1beta { * * // Do the magic * const res = await merchantapi.accounts.products.localInventories.delete({ - * // Required. The name of the local inventory for the given product to delete. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` "store123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a local inventory at `store_code` "store123" would be: `accounts/123/products/online~en~US~sku123/localInventories/store123`. + * // Required. The name of the local inventory for the given product to delete. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` "store123", the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * name: 'accounts/my-account/products/my-product/localInventories/my-localInventorie', * }); * console.log(res.data); @@ -546,7 +554,7 @@ export namespace merchantapi_inventories_v1beta { * * // Do the magic * const res = await merchantapi.accounts.products.localInventories.insert({ - * // Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * // Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * parent: 'accounts/my-account/products/my-product', * * // Request body metadata @@ -555,6 +563,7 @@ export namespace merchantapi_inventories_v1beta { * // { * // "account": "my_account", * // "availability": "my_availability", + * // "base64EncodedName": "my_base64EncodedName", * // "customAttributes": [], * // "instoreProductLocation": "my_instoreProductLocation", * // "name": "my_name", @@ -574,6 +583,7 @@ export namespace merchantapi_inventories_v1beta { * // { * // "account": "my_account", * // "availability": "my_availability", + * // "base64EncodedName": "my_base64EncodedName", * // "customAttributes": [], * // "instoreProductLocation": "my_instoreProductLocation", * // "name": "my_name", @@ -717,7 +727,7 @@ export namespace merchantapi_inventories_v1beta { * pageSize: 'placeholder-value', * // A page token, received from a previous `ListLocalInventories` call. Provide the page token to retrieve the subsequent page. When paginating, all other parameters provided to `ListLocalInventories` must match the call that provided the page token. The token returned as nextPageToken in the response to the previous request. * pageToken: 'placeholder-value', - * // Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * // Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * parent: 'accounts/my-account/products/my-product', * }); * console.log(res.data); @@ -832,13 +842,13 @@ export namespace merchantapi_inventories_v1beta { export interface Params$Resource$Accounts$Products$Localinventories$Delete extends StandardParameters { /** - * Required. The name of the local inventory for the given product to delete. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` "store123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a local inventory at `store_code` "store123" would be: `accounts/123/products/online~en~US~sku123/localInventories/store123`. + * Required. The name of the local inventory for the given product to delete. Format: `accounts/{account\}/products/{product\}/localInventories/{store_code\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `store_code` "store123", the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the local inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/localInventories/store123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ name?: string; } export interface Params$Resource$Accounts$Products$Localinventories$Insert extends StandardParameters { /** - * Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ parent?: string; @@ -857,7 +867,7 @@ export namespace merchantapi_inventories_v1beta { */ pageToken?: string; /** - * Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * Required. The `name` of the parent product to list local inventories for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ parent?: string; } @@ -899,7 +909,7 @@ export namespace merchantapi_inventories_v1beta { * * // Do the magic * const res = await merchantapi.accounts.products.regionalInventories.delete({ - * // Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a regional inventory in `region` "region123" would be: `accounts/123/products/online~en~US~sku123/regionalInventories/region123`. + * // Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * name: 'accounts/my-account/products/my-product/regionalInventories/my-regionalInventorie', * }); * console.log(res.data); @@ -1035,7 +1045,7 @@ export namespace merchantapi_inventories_v1beta { * * // Do the magic * const res = await merchantapi.accounts.products.regionalInventories.insert({ - * // Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * // Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * parent: 'accounts/my-account/products/my-product', * * // Request body metadata @@ -1044,6 +1054,7 @@ export namespace merchantapi_inventories_v1beta { * // { * // "account": "my_account", * // "availability": "my_availability", + * // "base64EncodedName": "my_base64EncodedName", * // "customAttributes": [], * // "name": "my_name", * // "price": {}, @@ -1059,6 +1070,7 @@ export namespace merchantapi_inventories_v1beta { * // { * // "account": "my_account", * // "availability": "my_availability", + * // "base64EncodedName": "my_base64EncodedName", * // "customAttributes": [], * // "name": "my_name", * // "price": {}, @@ -1199,7 +1211,7 @@ export namespace merchantapi_inventories_v1beta { * pageSize: 'placeholder-value', * // A page token, received from a previous `ListRegionalInventories` call. Provide the page token to retrieve the subsequent page. When paginating, all other parameters provided to `ListRegionalInventories` must match the call that provided the page token. The token returned as nextPageToken in the response to the previous request. * pageToken: 'placeholder-value', - * // Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * // Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * parent: 'accounts/my-account/products/my-product', * }); * console.log(res.data); @@ -1315,13 +1327,13 @@ export namespace merchantapi_inventories_v1beta { export interface Params$Resource$Accounts$Products$Regionalinventories$Delete extends StandardParameters { /** - * Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format for the product segment is `channel~content_language~feed_label~offer_id`. For example, the full resource name for a regional inventory in `region` "region123" would be: `accounts/123/products/online~en~US~sku123/regionalInventories/region123`. + * Required. The name of the `RegionalInventory` resource to delete. Format: `accounts/{account\}/products/{product\}/regionalInventories/{region\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123` for `region` "region123", the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the regional inventory would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw/regionalInventories/region123`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ name?: string; } export interface Params$Resource$Accounts$Products$Regionalinventories$Insert extends StandardParameters { /** - * Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * Required. The account and product where this inventory will be inserted. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ parent?: string; @@ -1340,7 +1352,7 @@ export namespace merchantapi_inventories_v1beta { */ pageToken?: string; /** - * Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * Required. The `name` of the parent product to list `RegionalInventory` resources for. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an **unpadded base64url** encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ parent?: string; } diff --git a/src/apis/merchantapi/issueresolution_v1.ts b/src/apis/merchantapi/issueresolution_v1.ts index 631b0d83a0d..670b46015f9 100644 --- a/src/apis/merchantapi/issueresolution_v1.ts +++ b/src/apis/merchantapi/issueresolution_v1.ts @@ -1093,7 +1093,7 @@ export namespace merchantapi_issueresolution_v1 { * const res = await merchantapi.issueresolution.renderproductissues({ * // Optional. The [IETF BCP-47](https://tools.ietf.org/html/bcp47) language code used to localize an issue resolution content. If not set, the result will be in default language `en-US`. * languageCode: 'placeholder-value', - * // Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * // Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * name: 'accounts/my-account/products/my-product', * // Optional. The [IANA](https://www.iana.org/time-zones) timezone used to localize times in an issue resolution content. For example 'America/Los_Angeles'. If not set, results will use as a default UTC. * timeZone: 'placeholder-value', @@ -1214,7 +1214,7 @@ export namespace merchantapi_issueresolution_v1 { } /** - * Start an action. The action can be requested by a business in third-party application. Before the business can request the action, the third-party application needs to show them action specific content and display a user input form. Access to the `triggeraction` method is restricted to an allowlist. You can request access using [Trigger action allowlist form](https://docs.google.com/forms/d/e/1FAIpQLSfeV_sBW9MBQv9BMTV6JZ1g11PGHLdHsrefca-9h0LmpU7CUg/viewform?usp=sharing). The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user. + * Start an action. The action can be requested by a business in third-party application. Before the business can request the action, the third-party application needs to show them action specific content and display a user input form. Access to the `triggeraction` method is restricted to an allowlist. You can submit an allowlist request in the [Shopping API Support Form](https://support.google.com/merchants/contact/shopping_api_support_form) under "What is the issue/question?" to get access to this feature. The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user. * @example * ```js * // Before running the sample: @@ -1390,7 +1390,7 @@ export namespace merchantapi_issueresolution_v1 { */ languageCode?: string; /** - * Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ name?: string; /** diff --git a/src/apis/merchantapi/issueresolution_v1beta.ts b/src/apis/merchantapi/issueresolution_v1beta.ts index 938c83bac67..d3d4bbd4db9 100644 --- a/src/apis/merchantapi/issueresolution_v1beta.ts +++ b/src/apis/merchantapi/issueresolution_v1beta.ts @@ -1094,7 +1094,7 @@ export namespace merchantapi_issueresolution_v1beta { * const res = await merchantapi.issueresolution.renderproductissues({ * // Optional. The [IETF BCP-47](https://tools.ietf.org/html/bcp47) language code used to localize an issue resolution content. If not set, the result will be in default language `en-US`. * languageCode: 'placeholder-value', - * // Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * // Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. * name: 'accounts/my-account/products/my-product', * // Optional. The [IANA](https://www.iana.org/time-zones) timezone used to localize times in an issue resolution content. For example 'America/Los_Angeles'. If not set, results will use as a default UTC. * timeZone: 'placeholder-value', @@ -1215,7 +1215,7 @@ export namespace merchantapi_issueresolution_v1beta { } /** - * Start an action. The action can be requested by a business in third-party application. Before the business can request the action, the third-party application needs to show them action specific content and display a user input form. Access to the `triggeraction` method is restricted to an allowlist. You can request access using [Trigger action allowlist form](https://docs.google.com/forms/d/e/1FAIpQLSfeV_sBW9MBQv9BMTV6JZ1g11PGHLdHsrefca-9h0LmpU7CUg/viewform?usp=sharing). The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user. + * Start an action. The action can be requested by a business in third-party application. Before the business can request the action, the third-party application needs to show them action specific content and display a user input form. Access to the `triggeraction` method is restricted to an allowlist. You can submit an allowlist request in the [Shopping API Support Form](https://support.google.com/merchants/contact/shopping_api_support_form) under "What is the issue/question?" to get access to this feature. The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user. * @example * ```js * // Before running the sample: @@ -1391,7 +1391,7 @@ export namespace merchantapi_issueresolution_v1beta { */ languageCode?: string; /** - * Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. */ name?: string; /** diff --git a/src/apis/merchantapi/products_v1.ts b/src/apis/merchantapi/products_v1.ts index 11ef135d21d..8558da8a921 100644 --- a/src/apis/merchantapi/products_v1.ts +++ b/src/apis/merchantapi/products_v1.ts @@ -235,6 +235,19 @@ export namespace merchantapi_products_v1 { */ unitCode?: string | null; } + /** + * The co2 emission of the vehicle. + */ + export interface Schema$Co2Emissions { + /** + * The unit of the co2 emission. + */ + unit?: string | null; + /** + * The co2 emission value. + */ + value?: string | null; + } /** * A message that represents custom attributes. Exactly one of `value` or `group_values` must not be empty. */ @@ -277,6 +290,19 @@ export namespace merchantapi_products_v1 { * 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 {} + /** + * The energy consumption of the vehicle. + */ + export interface Schema$EnergyConsumption { + /** + * The unit of the energy consumption. + */ + unit?: string | null; + /** + * The energy consumption value. + */ + value?: number | null; + } /** * Conditions to be met for a product to have free shipping. */ @@ -290,6 +316,19 @@ export namespace merchantapi_products_v1 { */ priceThreshold?: Schema$Price; } + /** + * The fuel consumption of the vehicle. + */ + export interface Schema$FuelConsumption { + /** + * The unit of the fuel consumption. + */ + unit?: string | null; + /** + * The fuel consumption value. + */ + value?: number | null; + } /** * Configuration for offer or offer-country level shipping handling cutoff time. */ @@ -428,6 +467,19 @@ export namespace merchantapi_products_v1 { */ tierLabel?: string | null; } + /** + * The mileage of the vehicle. + */ + export interface Schema$Mileage { + /** + * The unit of the mileage. + */ + unit?: string | null; + /** + * The distance value. + */ + value?: string | null; + } /** * The price represented as a number and currency. */ @@ -449,6 +501,10 @@ export namespace merchantapi_products_v1 { * Output only. The automated discounts information for the product. */ automatedDiscounts?: Schema$AutomatedDiscounts; + /** + * Output only. The **unpadded base64url encoded name** of the product. Format: `accounts/{account\}/products/{product\}` where the last section `product` is the unpadded base64url encoding of the `content_language~feed_label~offer_id` name. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw` for the decoded product name `accounts/123/products/en~US~sku/123`. This field can be used directly as input to the API methods that require the product name to be encoded if it contains special characters, for example [`GetProduct`](https://developers.google.com/merchant/api/reference/rest/products_v1/accounts.products/get). + */ + base64EncodedName?: string | null; /** * Output only. The two-letter [ISO 639-1](http://en.wikipedia.org/wiki/ISO_639-1) language code for the product. */ @@ -530,6 +586,10 @@ export namespace merchantapi_products_v1 { * The day a pre-ordered product becomes available for delivery, in [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) format. */ availabilityDate?: string | null; + /** + * The [body style](https://support.google.com/google-ads/answer/14157085) of the vehicle. + */ + bodyStyle?: string | null; /** * [Brand](https://support.google.com/merchants/answer/6324351) of the item. For example, "Google". */ @@ -546,10 +606,18 @@ export namespace merchantapi_products_v1 { * Product Certifications, for example for energy efficiency labeling of products recorded in the [EU EPREL](https://eprel.ec.europa.eu/screen/home) database. See the [Help Center](https://support.google.com/merchants/answer/13528839) article for more information. */ certifications?: Schema$ProductCertification[]; + /** + * Whether the vehicle is OEM [certified pre-owned](https://support.google.com/google-ads/answer/14156475). + */ + certifiedPreOwned?: boolean | null; /** * Extra fields to export to the Cloud Retail program. */ cloudExportAdditionalProperties?: Schema$CloudExportAdditionalProperties[]; + /** + * The [co2 emission](https://support.google.com/google-ads/answer/14546146) of the vehicle. + */ + co2Emissions?: Schema$Co2Emissions; /** * [Color](https://support.google.com/merchants/answer/6324487) of the item. For example, "red". */ @@ -582,6 +650,10 @@ export namespace merchantapi_products_v1 { * [Custom label 4](https://support.google.com/merchants/answer/6324473) for custom grouping of items in a Shopping campaign. */ customLabel4?: string | null; + /** + * The date the vehicle was first registered. Format: `YYYY-MM`. See the [Date first registered](https://support.google.com/google-ads/answer/14546138) for more information. + */ + dateFirstRegistered?: string | null; /** * Description of the item. */ @@ -610,10 +682,26 @@ export namespace merchantapi_products_v1 { * Offer margin for dynamic remarketing campaigns. For more information, see [Display ads attribute](https://support.google.com/merchants/answer/6069387). */ displayAdsValue?: number | null; + /** + * The [electric range](https://support.google.com/google-ads/answer/15162232) of the vehicle in miles/kms. + */ + electricRange?: Schema$Mileage; + /** + * The [emission standard](https://support.google.com/google-ads/answer/14869021) of the vehicle. + */ + emissionsStandard?: string | null; + /** + * The [energy consumption](https://support.google.com/google-ads/answer/14546149) of the vehicle. + */ + energyConsumption?: Schema$EnergyConsumption; /** * The [energy efficiency class](https://support.google.com/merchants/answer/7562785) as defined in EU directive 2010/30/EU. */ energyEfficiencyClass?: string | null; + /** + * The [engine](https://support.google.com/google-ads/answer/14156068) type of the vehicle. + */ + engine?: string | null; /** * The list of destinations to exclude for this target (corresponds to unchecked check boxes in Merchant Center). For more information, see [Excluded destination](https://support.google.com/merchants/answer/6324486). Note: We recommend setting destinations on datasources level for most use cases. Use this field within products to only setup exceptions. */ @@ -630,6 +718,14 @@ export namespace merchantapi_products_v1 { * Conditions to be met for a product to have free shipping. */ freeShippingThreshold?: Schema$FreeShippingThreshold[]; + /** + * The [fuel consumption](https://support.google.com/google-ads/answer/14543580) of the vehicle. + */ + fuelConsumption?: Schema$FuelConsumption; + /** + * The fuel consumption of the vehicle when the hybrid battery is discharged. See the [Help Center article](https://support.google.com/google-ads/answer/15162033) for more information. + */ + fuelConsumptionDischargedBattery?: Schema$FuelConsumption; /** * Target [gender](https://support.google.com/merchants/answer/6324479) of the item. */ @@ -639,7 +735,7 @@ export namespace merchantapi_products_v1 { */ googleProductCategory?: string | null; /** - * Global Trade Item Numbers ([GTIN](https://support.google.com/merchants/answer/188494#gtin)) of the item. You can provide up to 10 GTINs. + * Global Trade Item Numbers ([GTIN](https://support.google.com/merchants/answer/6324461)) of the item. You can provide up to 10 GTINs. */ gtins?: string[] | null; /** @@ -706,6 +802,10 @@ export namespace merchantapi_products_v1 { * Maximum retail price (MRP) of the item. Applicable to India only. */ maximumRetailPrice?: Schema$Price; + /** + * The number of miles/kms on the vehicle. See the [Mileage](https://support.google.com/google-ads/answer/14156166) for more information. + */ + mileage?: Schema$Mileage; /** * The [energy efficiency class](https://support.google.com/merchants/answer/7562785) as defined in EU directive 2010/30/EU. */ @@ -714,6 +814,10 @@ export namespace merchantapi_products_v1 { * Minimal product handling time (in business days). */ minHandlingTime?: string | null; + /** + * The [minimum value](https://support.google.com/merchants/answer/16989009) in the cart before a customer can initiate checkout. Supports multiple minimum order values. Different minimum order values can be specified per country, service and surface. Maximum entries: 100. + */ + minimumOrderValues?: Schema$ProductMinimumOrderValue[]; /** * URL for the mobile-optimized version of your item's landing page. */ @@ -723,7 +827,11 @@ export namespace merchantapi_products_v1 { */ mobileLinkTemplate?: string | null; /** - * Manufacturer Part Number ([MPN](https://support.google.com/merchants/answer/188494#mpn)) of the item. + * The [Model](https://support.google.com/google-ads/answer/14154511) of the vehicle, such as `LX`, `EX`, and others. + */ + model?: string | null; + /** + * Manufacturer Part Number ([MPN](https://support.google.com/merchants/answer/6324482)) of the item. */ mpn?: string | null; /** @@ -782,6 +890,10 @@ export namespace merchantapi_products_v1 { * The unique ID of a promotion. */ promotionIds?: string[] | null; + /** + * The return label of the product, used to group products in account-level return policies. Max. 100 characters. For more information, see [Return policy label](https://support.google.com/merchants/answer/9445425). + */ + returnPolicyLabel?: string | null; /** * Advertised sale price of the item. */ @@ -807,7 +919,7 @@ export namespace merchantapi_products_v1 { */ shippingHeight?: Schema$ShippingDimension; /** - * The shipping label of the product, used to group product in account-level shipping rules. + * The shipping label of the product, used to group products in account-level shipping rules. Max. 100 characters. For more information, see [Shipping label](https://support.google.com/merchants/answer/6324504). */ shippingLabel?: string | null; /** @@ -866,6 +978,10 @@ export namespace merchantapi_products_v1 { * The transit time label of the product, used to group product in account-level transit time tables. */ transitTimeLabel?: string | null; + /** + * The [Trim](https://support.google.com/google-ads/answer/14154176) of the vehicle model, such as `S`, `SV`, `SL` and others. + */ + trim?: string | null; /** * The preference of the denominator of the unit price. */ @@ -874,10 +990,46 @@ export namespace merchantapi_products_v1 { * The measure and dimension of an item. */ unitPricingMeasure?: Schema$UnitPricingMeasure; + /** + * The all-in advertised price for a vehicle, which includes costs for the following – any accessories attached to the vehicle, environmental levies, extra warranty, fuel, freight, pre-delivery inspection (PDI), dealer fees for handling licensing, provincial regulatory fees, miscellaneous dealer charges for security etching and nitrogen tire fill, and factory-to-customer or dealer-to-customer discounts or incentives. See the [Vehicle all-in price](https://support.google.com/google-ads/answer/14156981) for more information. + */ + vehicleAllInPrice?: Schema$Price; + /** + * The miscellaneous expenses like insurance and registration fees of the vehicle. See the [Vehicle expenses](https://support.google.com/google-ads/answer/15957154) for more information. + */ + vehicleExpenses?: Schema$Price; + /** + * Whether the vehicle is sold with mandatory inspection and maintenance performed before delivery. See the [Vehicle mandatory inspection included](https://support.google.com/google-ads/answer/15956630) for more information.` + */ + vehicleMandatoryInspectionIncluded?: boolean | null; + /** + * The MSRP (Manufacturer Suggested Retail Price) for the vehicle in its current configuration. See the [Vehicle MSRP](https://support.google.com/google-ads/answer/14154171) for more information. + */ + vehicleMsrp?: Schema$Price; + /** + * The [price type](https://support.google.com/google-ads/answer/14592783) of the vehicle. + */ + vehiclePriceType?: string | null; + /** + * Optional. A list of video URLs for the item. Use this attribute to provide more visuals for your product beyond your image attributes. See the [Help Center article](https://support.google.com/merchants/answer/15216925) for more information. + */ + videoLinks?: string[] | null; + /** + * The [Vehicle Identification Number (VIN)](https://support.google.com/google-ads/answer/14154510) of the vehicle. + */ + vin?: string | null; /** * URL of the 3D image of the item. See the [Help Center article](https://support.google.com/merchants/answer/13674896) for more information. */ virtualModelLink?: string | null; + /** + * The [warranty](https://support.google.com/google-ads/answer/15957626) of the vehicle. + */ + warranty?: Schema$Warranty; + /** + * The [Year](https://support.google.com/google-ads/answer/14152816) of the vehicle model. + */ + year?: string | null; } /** * Product [certification](https://support.google.com/merchants/answer/13528839), initially introduced for EU energy efficiency labeling compliance using the EU EPREL database. @@ -955,6 +1107,14 @@ export namespace merchantapi_products_v1 { * This resource represents input data you submit for a product, not the processed product that you see in Merchant Center, in Shopping ads, or across Google surfaces. Product inputs, rules and supplemental data source data are combined to create the processed Product. For more information, see [Manage products](/merchant/api/guides/products/overview). Required product input attributes to pass data validation checks are primarily defined in the [Products Data Specification](https://support.google.com/merchants/answer/188494). The following attributes are required: feedLabel, contentLanguage and offerId. After inserting, updating, or deleting a product input, it may take several minutes before the processed product can be retrieved. All fields in the product input and its sub-messages match the English name of their corresponding attribute in the [Products Data Specification](https://support.google.com/merchants/answer/188494) with [some exceptions](https://support.google.com/merchants/answer/7052112). The following reference documentation lists the field names in the **camelCase** casing style while the Products Data Specification lists the names in the **snake_case** casing style. */ export interface Schema$ProductInput { + /** + * Output only. The **unpadded base64url encoded name** of the product input. Format: `accounts/{account\}/productInputs/{productinput\}` where the last section `productinput` is the unpadded base64url encoding of the `content_language~feed_label~offer_id` name. Example: `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw` for the decoded product input name `accounts/123/productInputs/en~US~sku/123`. This field can be used directly as input to the API methods that require the product input name to be encoded if it contains special characters, for example [`GetProductInput`](https://developers.google.com/merchant/api/reference/rest/products_v1/accounts.productInputs/get). + */ + base64EncodedName?: string | null; + /** + * Output only. The **unpadded base64url encoded name** of the processed product. Format: `accounts/{account\}/products/{product\}` where the last section `product` is the unpadded base64url encoding of the `content_language~feed_label~offer_id` name. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw` for the decoded product name `accounts/123/products/en~US~sku/123`. This field can be used directly as input to the API methods that require the product name to be encoded if it contains special characters, for example [`GetProduct`](https://developers.google.com/merchant/api/reference/rest/products_v1/accounts.products/get). + */ + base64EncodedProduct?: string | null; /** * Required. Immutable. The two-letter [ISO 639-1](http://en.wikipedia.org/wiki/ISO_639-1) language code for the product. */ @@ -972,7 +1132,7 @@ export namespace merchantapi_products_v1 { */ legacyLocal?: boolean | null; /** - * Identifier. The name of the product. Format: `accounts/{account\}/productInputs/{productinput\}` The {productinput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productinputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productinput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`. + * Identifier. The name of the product. Format: `accounts/{account\}/productInputs/{productinput\}` The {productinput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productinput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput\}` segment is used to differentiate between the two formats. */ name?: string | null; /** @@ -1000,6 +1160,10 @@ export namespace merchantapi_products_v1 { * The amount the buyer has to pay per month. */ amount?: Schema$Price; + /** + * Optional. Annual percentage rate for `credit_type` finance + */ + annualPercentageRate?: number | null; /** * Type of installment payments. */ @@ -1012,6 +1176,31 @@ export namespace merchantapi_products_v1 { * The number of installments the buyer has to pay. */ months?: string | null; + /** + * Optional. Total amount the buyer has to pay, including interest. + */ + totalAmount?: Schema$Price; + } + /** + * The minimum order value in the cart before the checkout is permitted. + */ + export interface Schema$ProductMinimumOrderValue { + /** + * Required. The [CLDR territory code](http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml) of the country to which an item will ship. + */ + country?: string | null; + /** + * Required. The minimum cart or basket value before the checkout is permitted. + */ + price?: Schema$Price; + /** + * A free-form description of the service class or delivery speed. This should match the service value set for the Shipping attribute. See service. + */ + service?: string | null; + /** + * The surface to which the minimum order value applies. Defaults to `ONLINE_LOCAL` if not configured. + */ + surface?: string | null; } /** * The status of a product, data validation issues, that is, information about a product computed asynchronously. @@ -1133,6 +1322,14 @@ export namespace merchantapi_products_v1 { * The numeric ID of a location that the shipping rate applies to as defined in the [AdWords API](https://developers.google.com/adwords/api/docs/appendix/geotargeting). */ locationId?: string | null; + /** + * Optional. The label of the [loyalty program](https://support.google.com/merchants/answer/6324484). Must match one of the program labels set in loyalty_programs. When set (in combination with [loyalty_tier_label](https://support.google.com/merchants/answer/6324484)), this shipping option is only applicable to loyalty program members of the specified tier. + */ + loyaltyProgramLabel?: string | null; + /** + * Optional. The label of the [loyalty tier](https://support.google.com/merchants/answer/6324484) within the loyalty program. Must match one of the tiers set in the loyalty_programs. When set (in combination with [loyalty_program_label](https://support.google.com/merchants/answer/6324484)), this shipping option is only applicable to loyalty program members of the specified tier. + */ + loyaltyTierLabel?: string | null; /** * Maximum handling time (inclusive) between when the order is received and shipped in business days. 0 means that the order is shipped on the same day as it is received if it happens before the cut-off time. Both maxHandlingTime and maxTransitTime are required if providing shipping speeds. minHandlingTime is optional if maxHandlingTime is present. */ @@ -1274,6 +1471,19 @@ export namespace merchantapi_products_v1 { */ value?: number | null; } + /** + * The warranty of the vehicle. + */ + export interface Schema$Warranty { + /** + * The warranty duration in months. + */ + duration?: string | null; + /** + * The warranty mileage. + */ + mileage?: Schema$Mileage; + } export class Resource$Accounts { context: APIRequestContext; @@ -1325,7 +1535,7 @@ export namespace merchantapi_products_v1 { * const res = await merchantapi.accounts.productInputs.delete({ * // Required. The primary or supplemental data source from which the product input should be deleted. Format: `accounts/{account\}/dataSources/{datasource\}`. For example, `accounts/123456/dataSources/104628`. * dataSource: 'placeholder-value', - * // Required. The name of the product input to delete. Format: `accounts/{account\}/productInputs/{productInput\}` The {productInput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productInput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productInput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productInput\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productInput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productInput\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`. + * // Required. The name of the product input to delete. Format: `accounts/{account\}/productInputs/{productInput\}` The {productInput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productInput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productInput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productInput\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productInput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productInput\}` segment is used to differentiate between the two formats. * name: 'accounts/my-account/productInputs/my-productInput', * }); * console.log(res.data); @@ -1469,6 +1679,8 @@ export namespace merchantapi_products_v1 { * requestBody: { * // request body parameters * // { + * // "base64EncodedName": "my_base64EncodedName", + * // "base64EncodedProduct": "my_base64EncodedProduct", * // "contentLanguage": "my_contentLanguage", * // "customAttributes": [], * // "feedLabel": "my_feedLabel", @@ -1485,6 +1697,8 @@ export namespace merchantapi_products_v1 { * * // Example response * // { + * // "base64EncodedName": "my_base64EncodedName", + * // "base64EncodedProduct": "my_base64EncodedProduct", * // "contentLanguage": "my_contentLanguage", * // "customAttributes": [], * // "feedLabel": "my_feedLabel", @@ -1624,7 +1838,7 @@ export namespace merchantapi_products_v1 { * const res = await merchantapi.accounts.productInputs.patch({ * // Required. The primary or supplemental product data source where `data_source` name identifies the product input to be updated. Only API data sources are supported. Format: `accounts/{account\}/dataSources/{datasource\}`. For example, `accounts/123456/dataSources/104628`. * dataSource: 'placeholder-value', - * // Identifier. The name of the product. Format: `accounts/{account\}/productInputs/{productinput\}` The {productinput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productinputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productinput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`. + * // Identifier. The name of the product. Format: `accounts/{account\}/productInputs/{productinput\}` The {productinput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productinput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput\}` segment is used to differentiate between the two formats. * name: 'accounts/my-account/productInputs/my-productInput', * // Optional. The list of product attributes to be updated. If the update mask is omitted, then it is treated as implied field mask equivalent to all fields that are populated (have a non-empty value). Attributes specified in the update mask without a value specified in the body will be deleted from the product. Update mask can only be specified for top level fields in attributes and custom attributes. To specify the update mask for custom attributes you need to add the `custom_attribute.` prefix. Providing special "*" value for full product replacement is not supported. * updateMask: 'placeholder-value', @@ -1633,6 +1847,8 @@ export namespace merchantapi_products_v1 { * requestBody: { * // request body parameters * // { + * // "base64EncodedName": "my_base64EncodedName", + * // "base64EncodedProduct": "my_base64EncodedProduct", * // "contentLanguage": "my_contentLanguage", * // "customAttributes": [], * // "feedLabel": "my_feedLabel", @@ -1649,6 +1865,8 @@ export namespace merchantapi_products_v1 { * * // Example response * // { + * // "base64EncodedName": "my_base64EncodedName", + * // "base64EncodedProduct": "my_base64EncodedProduct", * // "contentLanguage": "my_contentLanguage", * // "customAttributes": [], * // "feedLabel": "my_feedLabel", @@ -1763,7 +1981,7 @@ export namespace merchantapi_products_v1 { */ dataSource?: string; /** - * Required. The name of the product input to delete. Format: `accounts/{account\}/productInputs/{productInput\}` The {productInput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productInput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productInput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productInput\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productInput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productInput\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`. + * Required. The name of the product input to delete. Format: `accounts/{account\}/productInputs/{productInput\}` The {productInput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productInput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productInput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productInput\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productInput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productInput\}` segment is used to differentiate between the two formats. */ name?: string; } @@ -1788,7 +2006,7 @@ export namespace merchantapi_products_v1 { */ dataSource?: string; /** - * Identifier. The name of the product. Format: `accounts/{account\}/productInputs/{productinput\}` The {productinput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productinputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productinput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`. + * Identifier. The name of the product. Format: `accounts/{account\}/productInputs/{productinput\}` The {productinput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productinput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput\}` segment is used to differentiate between the two formats. */ name?: string; /** @@ -1839,7 +2057,7 @@ export namespace merchantapi_products_v1 { * * // Do the magic * const res = await merchantapi.accounts.products.get({ - * // Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * // Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. * name: 'accounts/my-account/products/my-product', * }); * console.log(res.data); @@ -1847,6 +2065,7 @@ export namespace merchantapi_products_v1 { * // Example response * // { * // "automatedDiscounts": {}, + * // "base64EncodedName": "my_base64EncodedName", * // "contentLanguage": "my_contentLanguage", * // "customAttributes": [], * // "dataSource": "my_dataSource", @@ -2102,7 +2321,7 @@ export namespace merchantapi_products_v1 { export interface Params$Resource$Accounts$Products$Get extends StandardParameters { /** - * Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. */ name?: string; } diff --git a/src/apis/merchantapi/products_v1beta.ts b/src/apis/merchantapi/products_v1beta.ts index 3dc22f8accd..a6f3ca1cb72 100644 --- a/src/apis/merchantapi/products_v1beta.ts +++ b/src/apis/merchantapi/products_v1beta.ts @@ -269,11 +269,11 @@ export namespace merchantapi_products_v1beta { */ googleProductCategory?: string | null; /** - * Global Trade Item Numbers ([GTIN](https://support.google.com/merchants/answer/188494#gtin)) of the item. You can provide up to 10 GTINs. Deprecated: Use `gtins` instead. + * Global Trade Item Numbers ([GTIN](https://support.google.com/merchants/answer/6324461)) of the item. You can provide up to 10 GTINs. Deprecated: Use `gtins` instead. */ gtin?: string[] | null; /** - * A list of Global Trade Item Numbers ([GTIN](https://support.google.com/merchants/answer/188494#gtin)) of the item. You can provide up to 10 GTINs. + * A list of Global Trade Item Numbers ([GTIN](https://support.google.com/merchants/answer/6324461)) of the item. You can provide up to 10 GTINs. */ gtins?: string[] | null; /** @@ -353,7 +353,7 @@ export namespace merchantapi_products_v1beta { */ mobileLinkTemplate?: string | null; /** - * Manufacturer Part Number ([MPN](https://support.google.com/merchants/answer/188494#mpn)) of the item. + * Manufacturer Part Number ([MPN](https://support.google.com/merchants/answer/6324482)) of the item. */ mpn?: string | null; /** @@ -802,6 +802,10 @@ export namespace merchantapi_products_v1beta { * Output only. The automated discounts information for the product. */ automatedDiscounts?: Schema$AutomatedDiscounts; + /** + * Output only. The **unpadded base64url encoded name** of the product. Format: `accounts/{account\}/products/{product\}` where the last section `product` is the unpadded base64url encoding of the `content_language~feed_label~offer_id` name. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw` for the decoded product name `accounts/123/products/en~US~sku/123`. This field can be used directly as input to the API methods that require the product name to be encoded if it contains special characters, for example [`GetProduct`](https://developers.google.com/merchant/api/reference/rest/products_v1beta/accounts.products/get). + */ + base64EncodedName?: string | null; /** * Output only. The [channel](https://support.google.com/merchants/answer/7361332) of the product. */ @@ -898,6 +902,14 @@ export namespace merchantapi_products_v1beta { * Optional. A list of product attributes. */ attributes?: Schema$Attributes; + /** + * Output only. The **unpadded base64url encoded name** of the product input. Format: `accounts/{account\}/productInputs/{productinput\}` where the last section `productinput` is the unpadded base64url encoding of the `content_language~feed_label~offer_id` name. Example: `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw` for the decoded product input name `accounts/123/productInputs/en~US~sku/123`. This field can be used directly as input to the API methods that require the product input name to be encoded if it contains special characters, for example [`GetProductInput`](https://developers.google.com/merchant/api/reference/rest/products_v1beta/accounts.productInputs/get). + */ + base64EncodedName?: string | null; + /** + * Output only. The **unpadded base64url encoded name** of the processed product. Format: `accounts/{account\}/products/{product\}` where the last section `product` is the unpadded base64url encoding of the `content_language~feed_label~offer_id` name. Example: `accounts/123/products/ZW5-VVN-c2t1LzEyMw` for the decoded product name `accounts/123/products/en~US~sku/123`. This field can be used directly as input to the API methods that require the product name to be encoded if it contains special characters, for example [`GetProduct`](https://developers.google.com/merchant/api/reference/rest/products_v1beta/accounts.products/get). + */ + base64EncodedProduct?: string | null; /** * Immutable. The [channel](https://support.google.com/merchants/answer/7361332) of the product. */ @@ -915,7 +927,7 @@ export namespace merchantapi_products_v1beta { */ feedLabel?: string | null; /** - * Identifier. The name of the product. Format: `accounts/{account\}/productInputs/{productinput\}` The {productinput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productinputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productinput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`. + * Identifier. The name of the product. Format: `accounts/{account\}/productInputs/{productinput\}` The {productinput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productinput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput\}` segment is used to differentiate between the two formats. */ name?: string | null; /** @@ -1077,6 +1089,14 @@ export namespace merchantapi_products_v1beta { * The numeric ID of a location that the shipping rate applies to as defined in the [AdWords API](https://developers.google.com/adwords/api/docs/appendix/geotargeting). */ locationId?: string | null; + /** + * Optional. The label of the [loyalty program](https://support.google.com/merchants/answer/6324484). Must match one of the program labels set in loyalty_programs. When set (in combination with [loyalty_tier_label](https://support.google.com/merchants/answer/6324484)), this shipping option is only applicable to loyalty program members of the specified tier. + */ + loyaltyProgramLabel?: string | null; + /** + * Optional. The label of the [loyalty tier](https://support.google.com/merchants/answer/6324484) within the loyalty program. Must match one of the tiers set in the loyalty_programs. When set (in combination with [loyalty_program_label](https://support.google.com/merchants/answer/6324484)), this shipping option is only applicable to loyalty program members of the specified tier. + */ + loyaltyTierLabel?: string | null; /** * Maximum handling time (inclusive) between when the order is received and shipped in business days. 0 means that the order is shipped on the same day as it is received if it happens before the cut-off time. Both maxHandlingTime and maxTransitTime are required if providing shipping speeds. minHandlingTime is optional if maxHandlingTime is present. */ @@ -1259,7 +1279,7 @@ export namespace merchantapi_products_v1beta { * const res = await merchantapi.accounts.productInputs.delete({ * // Required. The primary or supplemental data source from which the product input should be deleted. Format: `accounts/{account\}/dataSources/{datasource\}`. For example, `accounts/123456/dataSources/104628`. * dataSource: 'placeholder-value', - * // Required. The name of the product input to delete. Format: `accounts/{account\}/productInputs/{productInput\}` The {productInput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productInput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productInput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productInput\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productInput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productInput\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`. + * // Required. The name of the product input to delete. Format: `accounts/{account\}/productInputs/{productInput\}` The {productInput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productInput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productInput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productInput\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productInput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productInput\}` segment is used to differentiate between the two formats. * name: 'accounts/my-account/productInputs/my-productInput', * }); * console.log(res.data); @@ -1404,6 +1424,8 @@ export namespace merchantapi_products_v1beta { * // request body parameters * // { * // "attributes": {}, + * // "base64EncodedName": "my_base64EncodedName", + * // "base64EncodedProduct": "my_base64EncodedProduct", * // "channel": "my_channel", * // "contentLanguage": "my_contentLanguage", * // "customAttributes": [], @@ -1420,6 +1442,8 @@ export namespace merchantapi_products_v1beta { * // Example response * // { * // "attributes": {}, + * // "base64EncodedName": "my_base64EncodedName", + * // "base64EncodedProduct": "my_base64EncodedProduct", * // "channel": "my_channel", * // "contentLanguage": "my_contentLanguage", * // "customAttributes": [], @@ -1558,7 +1582,7 @@ export namespace merchantapi_products_v1beta { * const res = await merchantapi.accounts.productInputs.patch({ * // Required. The primary or supplemental product data source where `data_source` name identifies the product input to be updated. Only API data sources are supported. Format: `accounts/{account\}/dataSources/{datasource\}`. For example, `accounts/123456/dataSources/104628`. * dataSource: 'placeholder-value', - * // Identifier. The name of the product. Format: `accounts/{account\}/productInputs/{productinput\}` The {productinput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productinputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productinput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`. + * // Identifier. The name of the product. Format: `accounts/{account\}/productInputs/{productinput\}` The {productinput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productinput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput\}` segment is used to differentiate between the two formats. * name: 'accounts/my-account/productInputs/my-productInput', * // Optional. The list of product attributes to be updated. If the update mask is omitted, then it is treated as implied field mask equivalent to all fields that are populated (have a non-empty value). Attributes specified in the update mask without a value specified in the body will be deleted from the product. Update mask can only be specified for top level fields in attributes and custom attributes. To specify the update mask for custom attributes you need to add the `custom_attribute.` prefix. Providing special "*" value for full product replacement is not supported. * updateMask: 'placeholder-value', @@ -1568,6 +1592,8 @@ export namespace merchantapi_products_v1beta { * // request body parameters * // { * // "attributes": {}, + * // "base64EncodedName": "my_base64EncodedName", + * // "base64EncodedProduct": "my_base64EncodedProduct", * // "channel": "my_channel", * // "contentLanguage": "my_contentLanguage", * // "customAttributes": [], @@ -1584,6 +1610,8 @@ export namespace merchantapi_products_v1beta { * // Example response * // { * // "attributes": {}, + * // "base64EncodedName": "my_base64EncodedName", + * // "base64EncodedProduct": "my_base64EncodedProduct", * // "channel": "my_channel", * // "contentLanguage": "my_contentLanguage", * // "customAttributes": [], @@ -1697,7 +1725,7 @@ export namespace merchantapi_products_v1beta { */ dataSource?: string; /** - * Required. The name of the product input to delete. Format: `accounts/{account\}/productInputs/{productInput\}` The {productInput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productInput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productInput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productInput\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productInput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productInput\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`. + * Required. The name of the product input to delete. Format: `accounts/{account\}/productInputs/{productInput\}` The {productInput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productInput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productInput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productInput\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productInput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productInput\}` segment is used to differentiate between the two formats. */ name?: string; } @@ -1722,7 +1750,7 @@ export namespace merchantapi_products_v1beta { */ dataSource?: string; /** - * Identifier. The name of the product. Format: `accounts/{account\}/productInputs/{productinput\}` The {productinput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/productinputs/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{productinput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/productinputs/online~en~US~sku123`. + * Identifier. The name of the product. Format: `accounts/{account\}/productInputs/{productinput\}` The {productinput\} segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the {productinput\} segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{productinput\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{productinput\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/productInputs/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{productinput\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{productinput\}` segment is used to differentiate between the two formats. */ name?: string; /** @@ -1773,7 +1801,7 @@ export namespace merchantapi_products_v1beta { * * // Do the magic * const res = await merchantapi.accounts.products.get({ - * // Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * // Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. * name: 'accounts/my-account/products/my-product', * }); * console.log(res.data); @@ -1782,6 +1810,7 @@ export namespace merchantapi_products_v1beta { * // { * // "attributes": {}, * // "automatedDiscounts": {}, + * // "base64EncodedName": "my_base64EncodedName", * // "channel": "my_channel", * // "contentLanguage": "my_contentLanguage", * // "customAttributes": [], @@ -2036,7 +2065,7 @@ export namespace merchantapi_products_v1beta { export interface Params$Resource$Accounts$Products$Get extends StandardParameters { /** - * Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the base64url encoding of this string, which is `ZW5-VVMtc2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVMtc2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. + * Required. The name of the product. Format: `accounts/{account\}/products/{product\}` The `{product\}` segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: `content_language~feed_label~offer_id`. Example: `en~US~sku123` For legacy local products, the structure is: `local~content_language~feed_label~offer_id`. Example: `local~en~US~sku123` The format of the `{product\}` segment in the URL is automatically detected by the server, supporting two options: 1. **Encoded Format**: The `{product\}` segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in the `content_language~feed_label~offer_id` structure. This encoding MUST be used if any part of the product identifier (like `offer_id`) contains characters such as `/`, `%`, or `~`. * Example: To represent the product ID `en~US~sku/123`, the `{product\}` segment must be the unpadded base64url encoding of this string, which is `ZW5-VVN-c2t1LzEyMw`. The full resource name for the product would be `accounts/123/products/ZW5-VVN-c2t1LzEyMw`. 2. **Plain Format**: The `{product\}` segment is the tilde-separated string `content_language~feed_label~offer_id`. This format is suitable only when `content_language`, `feed_label`, and `offer_id` do not contain URL-problematic characters like `/`, `%`, or `~`. We recommend using the **Encoded Format** for all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde (`~`) characters in the `{product\}` segment is used to differentiate between the two formats. Note: For calls to the v1beta version, the plain format is `channel~content_language~feed_label~offer_id`, for example: `accounts/123/products/online~en~US~sku123`. */ name?: string; } diff --git a/src/apis/merchantapi/promotions_v1.ts b/src/apis/merchantapi/promotions_v1.ts index 37285f9d32d..d8f86385a52 100644 --- a/src/apis/merchantapi/promotions_v1.ts +++ b/src/apis/merchantapi/promotions_v1.ts @@ -133,15 +133,15 @@ export namespace merchantapi_promotions_v1 { */ audience?: string | null; /** - * Optional. Product filter by [brand exclusion](https://support.google.com/merchants/answer/13861679?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by [brand exclusion](https://support.google.com/merchants/answer/13861679?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ brandExclusion?: string[] | null; /** - * Optional. Product filter by brand for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by brand for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ brandInclusion?: string[] | null; /** - * Required. The [coupon value type] (https://support.google.com/merchants/answer/13861986?ref_topic=13773355&sjid=17642868584668136159-NC) attribute to signal the type of promotion that you are running. Depending on type of the selected coupon value [some attributes are required](https://support.google.com/merchants/answer/6393006?ref_topic=7322920). + * Required. The [coupon value type] (https://support.google.com/merchants/answer/13861986?ref_topic=13773355) attribute to signal the type of promotion that you are running. Depending on type of the selected coupon value [some attributes are required](https://support.google.com/merchants/answer/6393006?ref_topic=7322920). */ couponValueType?: string | null; /** @@ -149,23 +149,23 @@ export namespace merchantapi_promotions_v1 { */ customRedemptionRestriction?: string | null; /** - * Optional. Event applicability for this promotion. When present, this field indicates you are creating a [sales event](https://support.google.com/merchants/answer/15523289?hl=en&sjid=11099988466404504696-NC) and not a product promotion. Exactly one of `product_applicability` or `event_applicability` must be set. + * Optional. Event applicability for this promotion. When present, this field indicates you are creating a [sales event](https://support.google.com/merchants/answer/15523289) and not a product promotion. Exactly one of `product_applicability` or `event_applicability` must be set. */ eventApplicability?: string | null; /** - * Optional. [Free gift description](https://support.google.com/merchants/answer/13847245?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. + * Optional. [Free gift description](https://support.google.com/merchants/answer/13847245?ref_topic=13773355) for the promotion. */ freeGiftDescription?: string | null; /** - * Optional. [Free gift item ID](https://support.google.com/merchants/answer/13857152?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. + * Optional. [Free gift item ID](https://support.google.com/merchants/answer/13857152?ref_topic=13773355) for the promotion. */ freeGiftItemId?: string | null; /** - * Optional. [Free gift value](https://support.google.com/merchants/answer/13844477?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. + * Optional. [Free gift value](https://support.google.com/merchants/answer/13844477?ref_topic=13773355) for the promotion. */ freeGiftValue?: Schema$Price; /** - * Optional. Generic redemption code for the promotion. To be used with the `offerType` field and must meet the [minimum requirements](https://support.google.com/merchants/answer/13837405?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Generic redemption code for the promotion. To be used with the `offerType` field and must meet the [minimum requirements](https://support.google.com/merchants/answer/13837405?ref_topic=13773355). */ genericRedemptionCode?: string | null; /** @@ -173,27 +173,27 @@ export namespace merchantapi_promotions_v1 { */ getThisQuantityDiscounted?: string | null; /** - * Optional. A list of Google product categories for this promotion. Set if `EventApplicability` is `SPECIFIC_CATEGORIES`. Up to 5 product categories can be specified. For more details on eligible values for product categories, checkout the `google_product_category` attribute in the [Promotion data specification](https://support.google.com/merchants/answer/2906014?hl=en). + * Optional. A list of Google product categories for this promotion. Set if `EventApplicability` is `SPECIFIC_CATEGORIES`. Up to 5 product categories can be specified. For more details on eligible values for product categories, checkout the `google_product_category` attribute in the [Promotion data specification](https://support.google.com/merchants/answer/2906014). */ googleProductCategories?: string[] | null; /** - * Optional. Product filter by [item group ID](https://support.google.com/merchants/answer/13837298?ref_topic=13773355&sjid=17642868584668136159-NC). The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). exclusion for the promotion. + * Optional. Product filter by [item group ID](https://support.google.com/merchants/answer/13837298?ref_topic=13773355). The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). exclusion for the promotion. */ itemGroupIdExclusion?: string[] | null; /** - * Optional. Product filter by item group ID for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability [product_applicability] attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by item group ID for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability [product_applicability] attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ itemGroupIdInclusion?: string[] | null; /** - * Optional. Product filter by [item ID exclusion](https://support.google.com/merchants/answer/13863524?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by [item ID exclusion](https://support.google.com/merchants/answer/13863524?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ itemIdExclusion?: string[] | null; /** - * Optional. Product filter by [item ID](https://support.google.com/merchants/answer/13861565?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by [item ID](https://support.google.com/merchants/answer/13861565?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ itemIdInclusion?: string[] | null; /** - * Optional. [Maximum purchase quantity](https://support.google.com/merchants/answer/13861564?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. + * Optional. [Maximum purchase quantity](https://support.google.com/merchants/answer/13861564?ref_topic=13773355) for the promotion. */ limitQuantity?: string | null; /** @@ -201,7 +201,7 @@ export namespace merchantapi_promotions_v1 { */ limitValue?: Schema$Price; /** - * Required. [Long title](https://support.google.com/merchants/answer/13838102?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. + * Required. [Long title](https://support.google.com/merchants/answer/13838102?ref_topic=13773355) for the promotion. */ longTitle?: string | null; /** @@ -209,16 +209,32 @@ export namespace merchantapi_promotions_v1 { */ maxDiscountAmount?: Schema$Price; /** - * Optional. [Minimum purchase amount](https://support.google.com/merchants/answer/13837705?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. + * Optional. Maximum money off amount for a promotion with `MONEY_OFF_RANGE` coupon value type. At least one of `min_money_off_amount` or `max_money_off_amount` must be present when the coupon value type is `MONEY_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned. + */ + maxMoneyOffAmount?: Schema$Price; + /** + * Optional. Maximum percent off for a promotion with `PERCENT_OFF_RANGE` coupon value type. At least one of `min_percent_off` or `max_percent_off` must be present when the coupon value type is `PERCENT_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned. + */ + maxPercentOff?: string | null; + /** + * Optional. [Minimum purchase amount](https://support.google.com/merchants/answer/13837705?ref_topic=13773355) for the promotion. */ minimumPurchaseAmount?: Schema$Price; minimumPurchaseQuantity?: string | null; /** - * Optional. The [money off amount](https://support.google.com/merchants/answer/13838101?ref_topic=13773355&sjid=17642868584668136159-NC) offered in the promotion. + * Optional. Minimum money off amount for a promotion with `MONEY_OFF_RANGE` coupon value type. At least one of `min_money_off_amount` or `max_money_off_amount` must be present when the coupon value type is `MONEY_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned. + */ + minMoneyOffAmount?: Schema$Price; + /** + * Optional. Minimum percent off for a promotion with `PERCENT_OFF_RANGE` coupon value type. At least one of `min_percent_off` or `max_percent_off` must be present when the coupon value type is `PERCENT_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned. + */ + minPercentOff?: string | null; + /** + * Optional. The [money off amount](https://support.google.com/merchants/answer/13838101?ref_topic=13773355) offered in the promotion. */ moneyOffAmount?: Schema$Price; /** - * Required. [Type](https://support.google.com/merchants/answer/13837405?ref_topic=13773355&sjid=17642868584668136159-NC) of the promotion. Use this attribute to indicate whether or not customers need a coupon code to redeem your promotion. + * Required. [Type](https://support.google.com/merchants/answer/13837405?ref_topic=13773355) of the promotion. Use this attribute to indicate whether or not customers need a coupon code to redeem your promotion. */ offerType?: string | null; /** @@ -226,19 +242,19 @@ export namespace merchantapi_promotions_v1 { */ percentOff?: string | null; /** - * Optional. Applicability of the promotion to either all products or [only specific products](https://support.google.com/merchants/answer/6396257?ref_topic=6396150&sjid=17642868584668136159-NC). Exactly one of `product_applicability` or `event_applicability` must be set. + * Optional. Applicability of the promotion to either all products or [only specific products](https://support.google.com/merchants/answer/6396257). Exactly one of `product_applicability` or `event_applicability` must be set. */ productApplicability?: string | null; /** - * Optional. Product filter by [product type exclusion](https://support.google.com/merchants/answer/13863746?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by [product type exclusion](https://support.google.com/merchants/answer/13863746?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ productTypeExclusion?: string[] | null; /** - * Optional. Product filter by product type for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by product type for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ productTypeInclusion?: string[] | null; /** - * Required. The list of destinations (also known as [Marketing methods](https://support.google.com/merchants/answer/15130232)) where the promotion applies to. If you don't specify a destination by including a supported value in your data source, your promotion will display in Shopping ads and free listings by default. You may have previously submitted the following values as destinations for your products: Shopping Actions, Surfaces across Google, Local surfaces across Google. To represent these values use `FREE_LISTINGS`, `FREE_LOCAL_LISTINGS`, `LOCAL_INVENTORY_ADS`. For more details see [Promotion destination](https://support.google.com/merchants/answer/13837465?sjid=5155774230887277618-NC) + * Required. The list of destinations (also known as [Marketing methods](https://support.google.com/merchants/answer/15130232)) where the promotion applies to. If you don't specify a destination by including a supported value in your data source, your promotion will display in Shopping ads and free listings by default. You may have previously submitted the following values as destinations for your products: Shopping Actions, Surfaces across Google, Local surfaces across Google. To represent these values use `FREE_LISTINGS`, `FREE_LOCAL_LISTINGS`, `LOCAL_INVENTORY_ADS`. For more details see [Promotion destination](https://support.google.com/merchants/answer/13837465) */ promotionDestinations?: string[] | null; /** @@ -258,7 +274,7 @@ export namespace merchantapi_promotions_v1 { */ redemptionRestriction?: string | null; /** - * Optional. A list of [regions](https://support.google.com/merchants/answer/15406457?hl=en&sjid=8815806704218720187-NC#howregionswork) where the promotion is applicable. Must be set if `audience` is set to `LOCATION`. + * Optional. A list of [regions](https://support.google.com/merchants/answer/15406457?#howregionswork) where the promotion is applicable. Must be set if `audience` is set to `LOCATION`. */ regionIdInclusion?: string[] | null; /** @@ -266,11 +282,11 @@ export namespace merchantapi_promotions_v1 { */ storeApplicability?: string | null; /** - * Optional. [Store codes to exclude](https://support.google.com/merchants/answer/13859586?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. [Store codes to exclude](https://support.google.com/merchants/answer/13859586?ref_topic=13773355) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355). */ storeCodesExclusion?: string[] | null; /** - * Optional. [Store codes to include](https://support.google.com/merchants/answer/13857470?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355&sjid=17642868584668136159-NC). Store code (the store ID from your Business Profile) of the physical store the product is sold in. See the [Local product inventory data specification](https://support.google.com/merchants/answer/3061342) for more information. + * Optional. [Store codes to include](https://support.google.com/merchants/answer/13857470?ref_topic=13773355) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355). Store code (the store ID from your Business Profile) of the physical store the product is sold in. See the [Local product inventory data specification](https://support.google.com/merchants/answer/3061342) for more information. */ storeCodesInclusion?: string[] | null; } diff --git a/src/apis/merchantapi/promotions_v1beta.ts b/src/apis/merchantapi/promotions_v1beta.ts index ca3d360f138..dbc40d9554c 100644 --- a/src/apis/merchantapi/promotions_v1beta.ts +++ b/src/apis/merchantapi/promotions_v1beta.ts @@ -133,15 +133,15 @@ export namespace merchantapi_promotions_v1beta { */ audience?: string | null; /** - * Optional. Product filter by [brand exclusion](https://support.google.com/merchants/answer/13861679?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by [brand exclusion](https://support.google.com/merchants/answer/13861679?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ brandExclusion?: string[] | null; /** - * Optional. Product filter by brand for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by brand for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ brandInclusion?: string[] | null; /** - * Required. The [coupon value type] (https://support.google.com/merchants/answer/13861986?ref_topic=13773355&sjid=17642868584668136159-NC) attribute to signal the type of promotion that you are running. Depending on type of the selected coupon value [some attributes are required](https://support.google.com/merchants/answer/6393006?ref_topic=7322920). + * Required. The [coupon value type] (https://support.google.com/merchants/answer/13861986?ref_topic=13773355) attribute to signal the type of promotion that you are running. Depending on type of the selected coupon value [some attributes are required](https://support.google.com/merchants/answer/6393006?ref_topic=7322920). */ couponValueType?: string | null; /** @@ -149,23 +149,23 @@ export namespace merchantapi_promotions_v1beta { */ customRedemptionRestriction?: string | null; /** - * Optional. Event applicability for this promotion. When present, this field indicates you are creating a [sales event](https://support.google.com/merchants/answer/15523289?hl=en&sjid=11099988466404504696-NC) and not a product promotion. Exactly one of `product_applicability` or `event_applicability` must be set. + * Optional. Event applicability for this promotion. When present, this field indicates you are creating a [sales event](https://support.google.com/merchants/answer/15523289) and not a product promotion. Exactly one of `product_applicability` or `event_applicability` must be set. */ eventApplicability?: string | null; /** - * Optional. [Free gift description](https://support.google.com/merchants/answer/13847245?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. + * Optional. [Free gift description](https://support.google.com/merchants/answer/13847245?ref_topic=13773355) for the promotion. */ freeGiftDescription?: string | null; /** - * Optional. [Free gift item ID](https://support.google.com/merchants/answer/13857152?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. + * Optional. [Free gift item ID](https://support.google.com/merchants/answer/13857152?ref_topic=13773355) for the promotion. */ freeGiftItemId?: string | null; /** - * Optional. [Free gift value](https://support.google.com/merchants/answer/13844477?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. + * Optional. [Free gift value](https://support.google.com/merchants/answer/13844477?ref_topic=13773355) for the promotion. */ freeGiftValue?: Schema$Price; /** - * Optional. Generic redemption code for the promotion. To be used with the `offerType` field and must meet the [minimum requirements](https://support.google.com/merchants/answer/13837405?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Generic redemption code for the promotion. To be used with the `offerType` field and must meet the [minimum requirements](https://support.google.com/merchants/answer/13837405?ref_topic=13773355). */ genericRedemptionCode?: string | null; /** @@ -173,27 +173,27 @@ export namespace merchantapi_promotions_v1beta { */ getThisQuantityDiscounted?: string | null; /** - * Optional. A list of Google product categories for this promotion. Set if `EventApplicability` is `SPECIFIC_CATEGORIES`. Up to 5 product categories can be specified. For more details on eligible values for product categories, checkout the `google_product_category` attribute in the [Promotion data specification](https://support.google.com/merchants/answer/2906014?hl=en). + * Optional. A list of Google product categories for this promotion. Set if `EventApplicability` is `SPECIFIC_CATEGORIES`. Up to 5 product categories can be specified. For more details on eligible values for product categories, checkout the `google_product_category` attribute in the [Promotion data specification](https://support.google.com/merchants/answer/2906014). */ googleProductCategories?: string[] | null; /** - * Optional. Product filter by [item group ID](https://support.google.com/merchants/answer/13837298?ref_topic=13773355&sjid=17642868584668136159-NC). The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). exclusion for the promotion. + * Optional. Product filter by [item group ID](https://support.google.com/merchants/answer/13837298?ref_topic=13773355). The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). exclusion for the promotion. */ itemGroupIdExclusion?: string[] | null; /** - * Optional. Product filter by item group ID for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability [product_applicability] attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by item group ID for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability [product_applicability] attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ itemGroupIdInclusion?: string[] | null; /** - * Optional. Product filter by [item ID exclusion](https://support.google.com/merchants/answer/13863524?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by [item ID exclusion](https://support.google.com/merchants/answer/13863524?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ itemIdExclusion?: string[] | null; /** - * Optional. Product filter by [item ID](https://support.google.com/merchants/answer/13861565?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by [item ID](https://support.google.com/merchants/answer/13861565?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ itemIdInclusion?: string[] | null; /** - * Optional. [Maximum purchase quantity](https://support.google.com/merchants/answer/13861564?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. + * Optional. [Maximum purchase quantity](https://support.google.com/merchants/answer/13861564?ref_topic=13773355) for the promotion. */ limitQuantity?: string | null; /** @@ -201,7 +201,7 @@ export namespace merchantapi_promotions_v1beta { */ limitValue?: Schema$Price; /** - * Required. [Long title](https://support.google.com/merchants/answer/13838102?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. + * Required. [Long title](https://support.google.com/merchants/answer/13838102?ref_topic=13773355) for the promotion. */ longTitle?: string | null; /** @@ -209,16 +209,32 @@ export namespace merchantapi_promotions_v1beta { */ maxDiscountAmount?: Schema$Price; /** - * Optional. [Minimum purchase amount](https://support.google.com/merchants/answer/13837705?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. + * Optional. Maximum money off amount for a promotion with `MONEY_OFF_RANGE` coupon value type. At least one of `min_money_off_amount` or `max_money_off_amount` must be present when the coupon value type is `MONEY_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned. + */ + maxMoneyOffAmount?: Schema$Price; + /** + * Optional. Maximum percent off for a promotion with `PERCENT_OFF_RANGE` coupon value type. At least one of `min_percent_off` or `max_percent_off` must be present when the coupon value type is `PERCENT_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned. + */ + maxPercentOff?: string | null; + /** + * Optional. [Minimum purchase amount](https://support.google.com/merchants/answer/13837705?ref_topic=13773355) for the promotion. */ minimumPurchaseAmount?: Schema$Price; minimumPurchaseQuantity?: string | null; /** - * Optional. The [money off amount](https://support.google.com/merchants/answer/13838101?ref_topic=13773355&sjid=17642868584668136159-NC) offered in the promotion. + * Optional. Minimum money off amount for a promotion with `MONEY_OFF_RANGE` coupon value type. At least one of `min_money_off_amount` or `max_money_off_amount` must be present when the coupon value type is `MONEY_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned. + */ + minMoneyOffAmount?: Schema$Price; + /** + * Optional. Minimum percent off for a promotion with `PERCENT_OFF_RANGE` coupon value type. At least one of `min_percent_off` or `max_percent_off` must be present when the coupon value type is `PERCENT_OFF_RANGE`. If neither is provided an `INVALID_PROMOTION_MISSING_BENEFIT_OR_RESTRICTION` error is returned. + */ + minPercentOff?: string | null; + /** + * Optional. The [money off amount](https://support.google.com/merchants/answer/13838101?ref_topic=13773355) offered in the promotion. */ moneyOffAmount?: Schema$Price; /** - * Required. [Type](https://support.google.com/merchants/answer/13837405?ref_topic=13773355&sjid=17642868584668136159-NC) of the promotion. Use this attribute to indicate whether or not customers need a coupon code to redeem your promotion. + * Required. [Type](https://support.google.com/merchants/answer/13837405?ref_topic=13773355) of the promotion. Use this attribute to indicate whether or not customers need a coupon code to redeem your promotion. */ offerType?: string | null; /** @@ -226,19 +242,19 @@ export namespace merchantapi_promotions_v1beta { */ percentOff?: string | null; /** - * Optional. Applicability of the promotion to either all products or [only specific products](https://support.google.com/merchants/answer/6396257?ref_topic=6396150&sjid=17642868584668136159-NC). Exactly one of `product_applicability` or `event_applicability` must be set. + * Optional. Applicability of the promotion to either all products or [only specific products](https://support.google.com/merchants/answer/6396257). Exactly one of `product_applicability` or `event_applicability` must be set. */ productApplicability?: string | null; /** - * Optional. Product filter by [product type exclusion](https://support.google.com/merchants/answer/13863746?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by [product type exclusion](https://support.google.com/merchants/answer/13863746?ref_topic=13773355) for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ productTypeExclusion?: string[] | null; /** - * Optional. Product filter by product type for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. Product filter by product type for the promotion. The product filter attributes only applies when the products eligible for promotion product applicability `product_applicability` attribute is set to [specific_products](https://support.google.com/merchants/answer/13837299?ref_topic=13773355). */ productTypeInclusion?: string[] | null; /** - * Required. The list of destinations (also known as [Marketing methods](https://support.google.com/merchants/answer/15130232)) where the promotion applies to. If you don't specify a destination by including a supported value in your data source, your promotion will display in Shopping ads and free listings by default. You may have previously submitted the following values as destinations for your products: Shopping Actions, Surfaces across Google, Local surfaces across Google. To represent these values use `FREE_LISTINGS`, `FREE_LOCAL_LISTINGS`, `LOCAL_INVENTORY_ADS`. For more details see [Promotion destination](https://support.google.com/merchants/answer/13837465?sjid=5155774230887277618-NC) + * Required. The list of destinations (also known as [Marketing methods](https://support.google.com/merchants/answer/15130232)) where the promotion applies to. If you don't specify a destination by including a supported value in your data source, your promotion will display in Shopping ads and free listings by default. You may have previously submitted the following values as destinations for your products: Shopping Actions, Surfaces across Google, Local surfaces across Google. To represent these values use `FREE_LISTINGS`, `FREE_LOCAL_LISTINGS`, `LOCAL_INVENTORY_ADS`. For more details see [Promotion destination](https://support.google.com/merchants/answer/13837465) */ promotionDestinations?: string[] | null; /** @@ -258,7 +274,7 @@ export namespace merchantapi_promotions_v1beta { */ redemptionRestriction?: string | null; /** - * Optional. A list of [regions](https://support.google.com/merchants/answer/15406457?hl=en&sjid=8815806704218720187-NC#howregionswork) where the promotion is applicable. Must be set if `audience` is set to `LOCATION`. + * Optional. A list of [regions](https://support.google.com/merchants/answer/15406457?#howregionswork) where the promotion is applicable. Must be set if `audience` is set to `LOCATION`. */ regionIdInclusion?: string[] | null; /** @@ -266,11 +282,11 @@ export namespace merchantapi_promotions_v1beta { */ storeApplicability?: string | null; /** - * Optional. [Store codes to exclude](https://support.google.com/merchants/answer/13859586?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355&sjid=17642868584668136159-NC). + * Optional. [Store codes to exclude](https://support.google.com/merchants/answer/13859586?ref_topic=13773355) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355). */ storeCodesExclusion?: string[] | null; /** - * Optional. [Store codes to include](https://support.google.com/merchants/answer/13857470?ref_topic=13773355&sjid=17642868584668136159-NC) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355&sjid=17642868584668136159-NC). Store code (the store ID from your Business Profile) of the physical store the product is sold in. See the [Local product inventory data specification](https://support.google.com/merchants/answer/3061342) for more information. + * Optional. [Store codes to include](https://support.google.com/merchants/answer/13857470?ref_topic=13773355) for the promotion. The store filter attributes only applies when the `store_applicability` attribute is set to [specific_stores](https://support.google.com/merchants/answer/13857563?ref_topic=13773355). Store code (the store ID from your Business Profile) of the physical store the product is sold in. See the [Local product inventory data specification](https://support.google.com/merchants/answer/3061342) for more information. */ storeCodesInclusion?: string[] | null; } diff --git a/src/apis/merchantapi/reports_v1.ts b/src/apis/merchantapi/reports_v1.ts index 19b0472d195..321a0427c46 100644 --- a/src/apis/merchantapi/reports_v1.ts +++ b/src/apis/merchantapi/reports_v1.ts @@ -775,6 +775,10 @@ export namespace merchantapi_reports_v1 { * [Product type (5th level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type) in merchant's own product taxonomy. Segment. */ productTypeL5?: string | null; + /** + * Store type to which metrics apply. Can be `ONLINE_STORE` or `LOCAL_STORES`. Segment. For `LOCAL_STORES` store type, further segmentation by a specific store is not available. + */ + storeType?: string | null; /** * Title of the product. Segment. */ diff --git a/src/apis/merchantapi/reports_v1beta.ts b/src/apis/merchantapi/reports_v1beta.ts index 77a764e75ba..7806720a3f4 100644 --- a/src/apis/merchantapi/reports_v1beta.ts +++ b/src/apis/merchantapi/reports_v1beta.ts @@ -775,6 +775,10 @@ export namespace merchantapi_reports_v1beta { * [Product type (5th level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type) in merchant's own product taxonomy. Segment. */ productTypeL5?: string | null; + /** + * Store type to which metrics apply. Can be `ONLINE_STORE` or `LOCAL_STORES`. Segment. For `LOCAL_STORES` store type, further segmentation by a specific store is not available. + */ + storeType?: string | null; /** * Title of the product. Segment. */ diff --git a/src/apis/metastore/v1.ts b/src/apis/metastore/v1.ts index d408a0baca7..d5713265120 100644 --- a/src/apis/metastore/v1.ts +++ b/src/apis/metastore/v1.ts @@ -360,7 +360,7 @@ export namespace metastore_v1 { username?: string | null; } /** - * Configuration information for migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore. + * Deprecated: Migrations to Dataproc Metastore are no longer supported. Use BigLake Metastore migration instead. Configuration information for migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore. */ export interface Schema$CloudSQLMigrationConfig { /** @@ -897,7 +897,7 @@ export namespace metastore_v1 { */ export interface Schema$MigrationExecution { /** - * Configuration information specific to migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore. + * Deprecated: Migrations to Dataproc Metastore are no longer supported. Use BigLake Metastore migration instead. Configuration information specific to migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore. */ cloudSqlMigrationConfig?: Schema$CloudSQLMigrationConfig; /** @@ -913,7 +913,7 @@ export namespace metastore_v1 { */ name?: string | null; /** - * Output only. The current phase of the migration execution. + * Output only. Deprecated: Phase was designed for incoming migrations to Dataproc Metastore, not applicable when migrating away from it. The current phase of the migration execution. */ phase?: string | null; /** @@ -1543,7 +1543,7 @@ export namespace metastore_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1573,7 +1573,7 @@ export namespace metastore_v1 { * * // Do the magic * const res = await metastore.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1699,7 +1699,7 @@ export namespace metastore_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/metastore/v1alpha.ts b/src/apis/metastore/v1alpha.ts index c2f634e8f27..3aeebbf47d5 100644 --- a/src/apis/metastore/v1alpha.ts +++ b/src/apis/metastore/v1alpha.ts @@ -369,7 +369,7 @@ export namespace metastore_v1alpha { username?: string | null; } /** - * Configuration information for migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore. + * Deprecated: Migrations to Dataproc Metastore are no longer supported. Use BigLake Metastore migration instead. Configuration information for migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore. */ export interface Schema$CloudSQLMigrationConfig { /** @@ -954,7 +954,7 @@ export namespace metastore_v1alpha { */ export interface Schema$MigrationExecution { /** - * Configuration information specific to migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore. + * Deprecated: Migrations to Dataproc Metastore are no longer supported. Use BigLake Metastore migration instead. Configuration information specific to migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore. */ cloudSqlMigrationConfig?: Schema$CloudSQLMigrationConfig; /** @@ -970,7 +970,7 @@ export namespace metastore_v1alpha { */ name?: string | null; /** - * Output only. The current phase of the migration execution. + * Output only. Deprecated: Phase was designed for incoming migrations to Dataproc Metastore, not applicable when migrating away from it. The current phase of the migration execution. */ phase?: string | null; /** @@ -1652,7 +1652,7 @@ export namespace metastore_v1alpha { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1682,7 +1682,7 @@ export namespace metastore_v1alpha { * * // Do the magic * const res = await metastore.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1808,7 +1808,7 @@ export namespace metastore_v1alpha { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/metastore/v1beta.ts b/src/apis/metastore/v1beta.ts index a95199bc2a7..6525261c52c 100644 --- a/src/apis/metastore/v1beta.ts +++ b/src/apis/metastore/v1beta.ts @@ -369,7 +369,7 @@ export namespace metastore_v1beta { username?: string | null; } /** - * Configuration information for migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore. + * Deprecated: Migrations to Dataproc Metastore are no longer supported. Use BigLake Metastore migration instead. Configuration information for migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore. */ export interface Schema$CloudSQLMigrationConfig { /** @@ -954,7 +954,7 @@ export namespace metastore_v1beta { */ export interface Schema$MigrationExecution { /** - * Configuration information specific to migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore. + * Deprecated: Migrations to Dataproc Metastore are no longer supported. Use BigLake Metastore migration instead. Configuration information specific to migrating from self-managed hive metastore on Google Cloud using Cloud SQL as the backend database to Dataproc Metastore. */ cloudSqlMigrationConfig?: Schema$CloudSQLMigrationConfig; /** @@ -970,7 +970,7 @@ export namespace metastore_v1beta { */ name?: string | null; /** - * Output only. The current phase of the migration execution. + * Output only. Deprecated: Phase was designed for incoming migrations to Dataproc Metastore, not applicable when migrating away from it. The current phase of the migration execution. */ phase?: string | null; /** @@ -1652,7 +1652,7 @@ export namespace metastore_v1beta { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: List all public locations: Use the path GET /v1/locations. List project-visible locations: Use the path GET /v1/projects/{project_id\}/locations. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service.This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: Global locations: If name is empty, the method lists the public locations available to all projects. Project-specific locations: If name follows the format projects/{project\}, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project.For gRPC and client library implementations, the resource name is passed as the name field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -1682,7 +1682,7 @@ export namespace metastore_v1beta { * * // Do the magic * const res = await metastore.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1808,7 +1808,7 @@ export namespace metastore_v1beta { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/migrationcenter/v1.ts b/src/apis/migrationcenter/v1.ts index a64c46c9f7b..12149ebb8da 100644 --- a/src/apis/migrationcenter/v1.ts +++ b/src/apis/migrationcenter/v1.ts @@ -4016,7 +4016,7 @@ export namespace migrationcenter_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -4046,7 +4046,7 @@ export namespace migrationcenter_v1 { * * // Do the magic * const res = await migrationcenter.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -4332,7 +4332,7 @@ export namespace migrationcenter_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/migrationcenter/v1alpha1.ts b/src/apis/migrationcenter/v1alpha1.ts index 28ccf111493..e0ef979d0da 100644 --- a/src/apis/migrationcenter/v1alpha1.ts +++ b/src/apis/migrationcenter/v1alpha1.ts @@ -279,6 +279,26 @@ export namespace migrationcenter_v1alpha1 { * Generic asset attributes. */ attributes?: {[key: string]: string} | null; + /** + * Output only. Asset information specific for AWS API Gateway REST APIs. + */ + awsApiGatewayRestApiDetails?: Schema$AwsApiGatewayRestApiDetails; + /** + * Output only. Asset information specific for AWS Application Load Balancers. + */ + awsApplicationLoadBalancerDetails?: Schema$AwsApplicationLoadBalancerDetails; + /** + * Output only. Asset information specific for AWS AppSync GraphQL APIs. + */ + awsAppSyncGraphqlApiDetails?: Schema$AwsAppSyncGraphqlApiDetails; + /** + * Output only. Asset information specific for AwsAutoscalingGroupDetails + */ + awsAutoscalingGroupDetails?: Schema$AwsAutoscalingGroupDetails; + /** + * Output only. Asset information specific for AWS Batch Compute Environments. + */ + awsBatchComputeEnvironmentDetails?: Schema$AwsBatchComputeEnvironmentDetails; /** * Output only. Asset information specific for AWS CloudFront distributions. */ @@ -287,6 +307,14 @@ export namespace migrationcenter_v1alpha1 { * Output only. Asset information specific for AWS DynamoDB tables. */ awsDynamodbTableDetails?: Schema$AwsDynamoDBTableDetails; + /** + * Output only. Asset information specific for AWS EBS Volumes. + */ + awsEbsVolumeDetails?: Schema$AwsEbsVolumeDetails; + /** + * Output only. Asset information specific for AwsEcrRepositoryDetails + */ + awsEcrRepositoryDetails?: Schema$AwsEcrRepositoryDetails; /** * Output only. Asset information specific for AWS ECS clusters. */ @@ -299,10 +327,22 @@ export namespace migrationcenter_v1alpha1 { * Output only. Asset information specific for AWS EKS clusters. */ awsEksClusterDetails?: Schema$AwsEksClusterDetails; + /** + * Output only. Asset information specific for AWS Elastic IP Addresses. + */ + awsElasticIpAddressDetails?: Schema$AwsElasticIpAddressDetails; + /** + * Output only. Asset information specific for AWS Elastic Network Interfaces. + */ + awsElasticNetworkInterfaceDetails?: Schema$AwsElasticNetworkInterfaceDetails; /** * Output only. Asset information specific for AWS Load Balancers. */ awsElbLoadBalancerDetails?: Schema$AwsElbLoadBalancerDetails; + /** + * Output only. Asset information specific for AWS Internet Gateways. + */ + awsInternetGatewayDetails?: Schema$AwsInternetGatewayDetails; /** * Output only. Asset information specific for AWS Lambda functions. */ @@ -323,6 +363,10 @@ export namespace migrationcenter_v1alpha1 { * Output only. Asset information specific for AWS S3 buckets. */ awsS3BucketDetails?: Schema$AwsS3BucketDetails; + /** + * Output only. Asset information specific for AWS SNS Topics. + */ + awsSnsTopicDetails?: Schema$AwsSnsTopicDetails; /** * Output only. Asset information specific for AWS VPCs. */ @@ -404,6 +448,26 @@ export namespace migrationcenter_v1alpha1 { * Generic asset attributes. */ attributes?: {[key: string]: string} | null; + /** + * Optional. Asset information specific for AWS API Gateway REST APIs. + */ + awsApiGatewayRestApiDetails?: Schema$AwsApiGatewayRestApiDetails; + /** + * Optional. Asset information specific for AWS Application Load Balancers. + */ + awsApplicationLoadBalancerDetails?: Schema$AwsApplicationLoadBalancerDetails; + /** + * Optional. Asset information specific for AWS AppSync GraphQL APIs. + */ + awsAppSyncGraphqlApiDetails?: Schema$AwsAppSyncGraphqlApiDetails; + /** + * Optional. Asset information specific for AwsAutoscalingGroupDetails + */ + awsAutoscalingGroupDetails?: Schema$AwsAutoscalingGroupDetails; + /** + * Optional. Asset information specific for AWS Batch Compute Environments. + */ + awsBatchComputeEnvironmentDetails?: Schema$AwsBatchComputeEnvironmentDetails; /** * Asset information specific for AWS CloudFront distributions. */ @@ -412,6 +476,14 @@ export namespace migrationcenter_v1alpha1 { * Asset information specific for AWS DynamoDB tables. */ awsDynamodbTableDetails?: Schema$AwsDynamoDBTableDetails; + /** + * Optional. Asset information specific for AWS EBS Volumes. + */ + awsEbsVolumeDetails?: Schema$AwsEbsVolumeDetails; + /** + * Asset information specific for AwsEcrRepositoryDetails + */ + awsEcrRepositoryDetails?: Schema$AwsEcrRepositoryDetails; /** * Asset information specific for AWS ECS clusters. */ @@ -424,10 +496,22 @@ export namespace migrationcenter_v1alpha1 { * Asset information specific for AWS EKS clusters. */ awsEksClusterDetails?: Schema$AwsEksClusterDetails; + /** + * Optional. Asset information specific for AWS Elastic IP Addresses. + */ + awsElasticIpAddressDetails?: Schema$AwsElasticIpAddressDetails; + /** + * Optional. Asset information specific for AWS Elastic Network Interfaces. + */ + awsElasticNetworkInterfaceDetails?: Schema$AwsElasticNetworkInterfaceDetails; /** * Asset information specific for AWS Load Balancers. */ awsElbLoadBalancerDetails?: Schema$AwsElbLoadBalancerDetails; + /** + * Optional. Asset information specific for AWS Internet Gateways. + */ + awsInternetGatewayDetails?: Schema$AwsInternetGatewayDetails; /** * Asset information specific for AWS Lambda functions. */ @@ -448,6 +532,10 @@ export namespace migrationcenter_v1alpha1 { * Asset information specific for AWS S3 buckets. */ awsS3BucketDetails?: Schema$AwsS3BucketDetails; + /** + * Optional. Asset information specific for AWS SNS Topics. + */ + awsSnsTopicDetails?: Schema$AwsSnsTopicDetails; /** * Asset information specific for AWS VPCs. */ @@ -636,6 +724,26 @@ export namespace migrationcenter_v1alpha1 { */ maxDays?: number | null; } + /** + * Asset information specific for AWS API Gateway REST APIs. + */ + export interface Schema$AwsApiGatewayRestApiDetails {} + /** + * Asset information specific for AWS Application Load Balancers. + */ + export interface Schema$AwsApplicationLoadBalancerDetails {} + /** + * Asset information specific for AWS AppSync GraphQL APIs. + */ + export interface Schema$AwsAppSyncGraphqlApiDetails {} + /** + * Asset information specific for AWS Autoscaling Group. + */ + export interface Schema$AwsAutoscalingGroupDetails {} + /** + * Asset information specific for AWS Batch Compute Environments. + */ + export interface Schema$AwsBatchComputeEnvironmentDetails {} /** * Details of an AWS CloudFront distribution. */ @@ -644,6 +752,10 @@ export namespace migrationcenter_v1alpha1 { * Details of an AWS DynamoDB table. */ export interface Schema$AwsDynamoDBTableDetails {} + /** + * Asset information specific for AWS EBS Volumes. + */ + export interface Schema$AwsEbsVolumeDetails {} /** * AWS EC2 specific details. */ @@ -661,6 +773,10 @@ export namespace migrationcenter_v1alpha1 { */ machineTypeLabel?: string | null; } + /** + * Asset information specific for AWS ECR Repository. + */ + export interface Schema$AwsEcrRepositoryDetails {} /** * Details of an AWS ECS cluster. */ @@ -673,10 +789,22 @@ export namespace migrationcenter_v1alpha1 { * Asset information specific for AWS EKS clusters. */ export interface Schema$AwsEksClusterDetails {} + /** + * Asset information specific for AWS Elastic IP Addresses. + */ + export interface Schema$AwsElasticIpAddressDetails {} + /** + * Asset information specific for AWS Elastic Network Interfaces. + */ + export interface Schema$AwsElasticNetworkInterfaceDetails {} /** * Asset information specific for AWS Load Balancers. */ export interface Schema$AwsElbLoadBalancerDetails {} + /** + * Asset information specific for AWS Internet Gateways. + */ + export interface Schema$AwsInternetGatewayDetails {} /** * Asset information specific for AWS Lambda functions. */ @@ -754,6 +882,10 @@ export namespace migrationcenter_v1alpha1 { */ enabled?: boolean | null; } + /** + * Asset information specific for AWS SNS Topics. + */ + export interface Schema$AwsSnsTopicDetails {} /** * Asset information specific for AWS VPCs. */ @@ -1811,6 +1943,23 @@ export namespace migrationcenter_v1alpha1 { */ violations?: Schema$FrameViolationEntry[]; } + /** + * Estimated usage data. + */ + export interface Schema$EstimatedUsage { + /** + * Optional. Estimated CPU utilization percentage. Must be in the range [1, 100]. + */ + estimatedCpuPercentage?: number | null; + /** + * Optional. Estimated disk utilization percentage. Must be in the range [1, 100]. + */ + estimatedDiskPercentage?: number | null; + /** + * Optional. Estimated memory utilization percentage. Must be in the range [1, 100]. + */ + estimatedMemoryPercentage?: number | null; + } /** * A resource that reports result of the import job execution. */ @@ -3748,6 +3897,10 @@ export namespace migrationcenter_v1alpha1 { * Output only. Count of assets grouped by database type. Keys here are taken from DatabaseType enum. Only present for databases. */ databaseTypes?: Schema$ReportSummaryChartData; + /** + * Output only. Estimated usage stats for the assets in this collection. + */ + estimatedUsageStats?: Schema$ReportSummaryAssetAggregateStatsEstimatedUsageStats; /** * Histogram showing a distribution of memory sizes. */ @@ -3797,6 +3950,19 @@ export namespace migrationcenter_v1alpha1 { */ totalStorageBytes?: string | null; } + /** + * Estimated usage stats for the assets in this collection. + */ + export interface Schema$ReportSummaryAssetAggregateStatsEstimatedUsageStats { + /** + * Output only. The number of assets that are using at least one estimated usage metric for rightsizing. + */ + totalAssetsUsingEstimatedUsage?: string | null; + /** + * Output only. The number of virtual machines in this finding that are using at least one estimated usage metric for rightsizing. + */ + totalVirtualMachinesUsingEstimatedUsage?: string | null; + } /** * Describes a collection of data points rendered as a Chart. */ @@ -4776,6 +4942,10 @@ export namespace migrationcenter_v1alpha1 { * Optional. Compute Engine preferences concern insights and recommendations for Compute Engine target. */ computeEnginePreferences?: Schema$ComputeEnginePreferences; + /** + * Optional. Estimated usage data for missing usage data. If performance data is available, it overrides this field. If not set, default values will be used for the usage data. + */ + estimatedUsage?: Schema$EstimatedUsage; /** * Optional. Parameters that affect network cost estimations. If not set, default values will be used for the parameters. */ @@ -5257,7 +5427,7 @@ export namespace migrationcenter_v1alpha1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -5287,7 +5457,7 @@ export namespace migrationcenter_v1alpha1 { * * // Do the magic * const res = await migrationcenter.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -5574,7 +5744,7 @@ export namespace migrationcenter_v1alpha1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -6247,17 +6417,28 @@ export namespace migrationcenter_v1alpha1 { * // { * // "assignedGroups": [], * // "attributes": {}, + * // "awsApiGatewayRestApiDetails": {}, + * // "awsAppSyncGraphqlApiDetails": {}, + * // "awsApplicationLoadBalancerDetails": {}, + * // "awsAutoscalingGroupDetails": {}, + * // "awsBatchComputeEnvironmentDetails": {}, * // "awsCloudFrontDistributionDetails": {}, * // "awsDynamodbTableDetails": {}, + * // "awsEbsVolumeDetails": {}, + * // "awsEcrRepositoryDetails": {}, * // "awsEcsClusterDetails": {}, * // "awsEfsFileSystemDetails": {}, * // "awsEksClusterDetails": {}, + * // "awsElasticIpAddressDetails": {}, + * // "awsElasticNetworkInterfaceDetails": {}, * // "awsElbLoadBalancerDetails": {}, + * // "awsInternetGatewayDetails": {}, * // "awsLambdaFunctionDetails": {}, * // "awsNatGatewayDetails": {}, * // "awsRedshiftDetails": {}, * // "awsRoute53HostedZoneDetails": {}, * // "awsS3BucketDetails": {}, + * // "awsSnsTopicDetails": {}, * // "awsVpcDetails": {}, * // "createTime": "my_createTime", * // "databaseDeploymentDetails": {}, @@ -6568,17 +6749,28 @@ export namespace migrationcenter_v1alpha1 { * // { * // "assignedGroups": [], * // "attributes": {}, + * // "awsApiGatewayRestApiDetails": {}, + * // "awsAppSyncGraphqlApiDetails": {}, + * // "awsApplicationLoadBalancerDetails": {}, + * // "awsAutoscalingGroupDetails": {}, + * // "awsBatchComputeEnvironmentDetails": {}, * // "awsCloudFrontDistributionDetails": {}, * // "awsDynamodbTableDetails": {}, + * // "awsEbsVolumeDetails": {}, + * // "awsEcrRepositoryDetails": {}, * // "awsEcsClusterDetails": {}, * // "awsEfsFileSystemDetails": {}, * // "awsEksClusterDetails": {}, + * // "awsElasticIpAddressDetails": {}, + * // "awsElasticNetworkInterfaceDetails": {}, * // "awsElbLoadBalancerDetails": {}, + * // "awsInternetGatewayDetails": {}, * // "awsLambdaFunctionDetails": {}, * // "awsNatGatewayDetails": {}, * // "awsRedshiftDetails": {}, * // "awsRoute53HostedZoneDetails": {}, * // "awsS3BucketDetails": {}, + * // "awsSnsTopicDetails": {}, * // "awsVpcDetails": {}, * // "createTime": "my_createTime", * // "databaseDeploymentDetails": {}, @@ -6606,17 +6798,28 @@ export namespace migrationcenter_v1alpha1 { * // { * // "assignedGroups": [], * // "attributes": {}, + * // "awsApiGatewayRestApiDetails": {}, + * // "awsAppSyncGraphqlApiDetails": {}, + * // "awsApplicationLoadBalancerDetails": {}, + * // "awsAutoscalingGroupDetails": {}, + * // "awsBatchComputeEnvironmentDetails": {}, * // "awsCloudFrontDistributionDetails": {}, * // "awsDynamodbTableDetails": {}, + * // "awsEbsVolumeDetails": {}, + * // "awsEcrRepositoryDetails": {}, * // "awsEcsClusterDetails": {}, * // "awsEfsFileSystemDetails": {}, * // "awsEksClusterDetails": {}, + * // "awsElasticIpAddressDetails": {}, + * // "awsElasticNetworkInterfaceDetails": {}, * // "awsElbLoadBalancerDetails": {}, + * // "awsInternetGatewayDetails": {}, * // "awsLambdaFunctionDetails": {}, * // "awsNatGatewayDetails": {}, * // "awsRedshiftDetails": {}, * // "awsRoute53HostedZoneDetails": {}, * // "awsS3BucketDetails": {}, + * // "awsSnsTopicDetails": {}, * // "awsVpcDetails": {}, * // "createTime": "my_createTime", * // "databaseDeploymentDetails": {}, diff --git a/src/apis/mybusinessaccountmanagement/v1.ts b/src/apis/mybusinessaccountmanagement/v1.ts index 8e0f8be41ee..36b72abdec9 100644 --- a/src/apis/mybusinessaccountmanagement/v1.ts +++ b/src/apis/mybusinessaccountmanagement/v1.ts @@ -344,7 +344,7 @@ export namespace mybusinessaccountmanagement_v1 { */ export interface Schema$TargetLocation { /** - * The address of the location to which the user is invited. + * The address of the location to which the user is invited. Not always populated. */ address?: string | null; /** diff --git a/src/apis/mybusinessbusinessinformation/v1.ts b/src/apis/mybusinessbusinessinformation/v1.ts index bbaa44e0783..396adbcf1ac 100644 --- a/src/apis/mybusinessbusinessinformation/v1.ts +++ b/src/apis/mybusinessbusinessinformation/v1.ts @@ -344,7 +344,7 @@ export namespace mybusinessbusinessinformation_v1 { */ export interface Schema$Empty {} /** - * Represents a free-form service offered by the merchant. These are services that are not exposed as part of our structure service data. The merchant manually enters the names for of such services via a geomerchant surface. + * Represents a free-form service offered by the merchant. These are services that are not exposed as part of our structure service data. The merchant manually enters the names for such services using a geomerchant surface. */ export interface Schema$FreeFormServiceItem { /** @@ -352,7 +352,7 @@ export namespace mybusinessbusinessinformation_v1 { */ category?: string | null; /** - * Required. Language-tagged labels for the item. We recommend that item names be 140 characters or less, and descriptions 250 characters or less. This field should only be set if the input is a custom service item. Standardized service types should be updated via service_type_id. + * Required. Language-tagged labels for the item. We recommend that item names be 140 characters or less, and descriptions 250 characters or less. This field should only be set if the input is a custom service item. Standardized service types should be updated using service_type_id. */ label?: Schema$Label; } @@ -374,11 +374,11 @@ export namespace mybusinessbusinessinformation_v1 { requestAdminRightsUri?: string | null; } /** - * Represents a location that was modified by Google. + * Represents the view of a location as it appears to consumers, which includes updates that are currently serving on Google Maps and Search. */ export interface Schema$GoogleUpdatedLocation { /** - * The fields that Google updated. + * The fields where the values in the view as it appears to consumers are different than the merchant's information. To accept these changes, patch the location. To reject, patch with your preferred values. */ diffMask?: string | null; /** @@ -386,7 +386,7 @@ export namespace mybusinessbusinessinformation_v1 { */ location?: Schema$Location; /** - * The fields that have pending edits that haven't yet been pushed to Maps and Search. + * The fields where the merchant has provided an update that is currently in flight and hasn't yet been published to Maps and Search. This mask only tracks the status of the merchant's own edits, not external changes. */ pendingMask?: string | null; } @@ -508,7 +508,7 @@ export namespace mybusinessbusinessinformation_v1 { */ phoneNumbers?: Schema$PhoneNumbers; /** - * Optional. Describes your business in your own voice and shares with users the unique story of your business and offerings. This field is required for all categories except lodging categories (e.g. hotels, motels, inns). + * Optional. Describes your business in your own voice and shares with users the unique story of your business and offerings. This field is required for all categories except lodging categories (e.g., hotels, motels, inns). */ profile?: Schema$Profile; /** @@ -585,7 +585,7 @@ export namespace mybusinessbusinessinformation_v1 { */ duplicateLocation?: string | null; /** - * Output only. Indicates whether the place ID associated with this location has updates that need to be updated or rejected by the client. If this boolean is set, you should call the `getGoogleUpdated` method to lookup information that's needs to be verified. + * Output only. Indicates whether the place ID associated with this location has updates that need to be updated or rejected by the client. If this boolean is set, you should call the `getGoogleUpdated` method to look up information that's needs to be verified. */ hasGoogleUpdated?: boolean | null; /** @@ -2557,7 +2557,7 @@ export namespace mybusinessbusinessinformation_v1 { } /** - * Returns the specified location. + * Returns the specified location as last set by the merchant. It may not reflect updates from Google or user-generated content that are live on Google Maps. * @example * ```js * // Before running the sample: @@ -2714,7 +2714,7 @@ export namespace mybusinessbusinessinformation_v1 { } /** - * Looks up all the attributes set for a given location. + * Retrieves attributes for a location as last set by the merchant. It may not reflect updates from Google or user-generated content that are live on Google Maps. * @example * ```js * // Before running the sample: @@ -2852,7 +2852,7 @@ export namespace mybusinessbusinessinformation_v1 { } /** - * Gets the Google-updated version of the specified location. + * Returns the specified location as it appears live on Google Maps and Search. This consumer-facing view may have been updated by Google or user-generated content and may differ from the merchant's version. The returned GoogleUpdatedLocation contains masks that indicate which fields differ from the merchant's information. * @example * ```js * // Before running the sample: @@ -3409,7 +3409,7 @@ export namespace mybusinessbusinessinformation_v1 { } /** - * Gets the Google-updated version of the specified location. + * Retrieves attributes for a location as they appear live on Google Maps and Search. This consumer-facing view may have been updated by Google or user-generated content and may differ from the merchant's version. * @example * ```js * // Before running the sample: diff --git a/src/apis/netapp/v1.ts b/src/apis/netapp/v1.ts index 0ec8a61c190..680ab65be2d 100644 --- a/src/apis/netapp/v1.ts +++ b/src/apis/netapp/v1.ts @@ -266,7 +266,7 @@ export namespace netapp_v1 { */ sourceSnapshot?: string | null; /** - * Volume full name of this backup belongs to. Format: `projects/{projects_id\}/locations/{location\}/volumes/{volume_id\}` + * Volume full name of this backup belongs to. Either source_volume or ontap_source should be provided. Format: `projects/{projects_id\}/locations/{location\}/volumes/{volume_id\}` */ sourceVolume?: string | null; /** @@ -655,6 +655,60 @@ export namespace netapp_v1 { */ peerVolumeName?: string | null; } + /** + * Response message for `ExecuteOntapDelete` API. + */ + export interface Schema$ExecuteOntapDeleteResponse { + /** + * The raw `JSON` body of the response. + */ + body?: {[key: string]: any} | null; + } + /** + * Response message for `ExecuteOntapGet` API. + */ + export interface Schema$ExecuteOntapGetResponse { + /** + * The raw `JSON` body of the response. + */ + body?: {[key: string]: any} | null; + } + /** + * Request message for `ExecuteOntapPatch` API. + */ + export interface Schema$ExecuteOntapPatchRequest { + /** + * Required. The raw `JSON` body of the request. The body should be in the format of the ONTAP resource. For example: ``` { "body": { "field1": "value1", "field2": "value2", \} \} ``` + */ + body?: {[key: string]: any} | null; + } + /** + * Response message for `ExecuteOntapPatch` API. + */ + export interface Schema$ExecuteOntapPatchResponse { + /** + * The raw `JSON` body of the response. + */ + body?: {[key: string]: any} | null; + } + /** + * Request message for `ExecuteOntapPost` API. + */ + export interface Schema$ExecuteOntapPostRequest { + /** + * Required. The raw `JSON` body of the request. The body should be in the format of the ONTAP resource. For example: ``` { "body": { "field1": "value1", "field2": "value2", \} \} ``` + */ + body?: {[key: string]: any} | null; + } + /** + * Response message for `ExecuteOntapPost` API. + */ + export interface Schema$ExecuteOntapPostResponse { + /** + * The raw `JSON` body of the response. + */ + body?: {[key: string]: any} | null; + } /** * Defines the export policy for the volume. */ @@ -841,6 +895,15 @@ export namespace netapp_v1 { */ stateDetails?: string | null; } + /** + * Configuration for a Large Capacity Volume. A Large Capacity Volume supports sizes ranging from 4.8 TiB to 20 PiB, it is composed of multiple internal constituents, and must be created in a large capacity pool. + */ + export interface Schema$LargeCapacityConfig { + /** + * Optional. The number of internal constituents (e.g., FlexVols) for this large volume. The minimum number of constituents is 2. + */ + constituentCount?: number | null; + } /** * ListActiveDirectoriesResponse contains all the active directories requested. */ @@ -1348,7 +1411,7 @@ export namespace netapp_v1 { */ export interface Schema$RestoreParameters { /** - * Full name of the backup resource. Format: projects/{project\}/locations/{location\}/backupVaults/{backup_vault_id\}/backups/{backup_id\} + * Full name of the backup resource. Format for standard backup: projects/{project\}/locations/{location\}/backupVaults/{backup_vault_id\}/backups/{backup_id\} Format for BackupDR backup: projects/{project\}/locations/{location\}/backupVaults/{backup_vault\}/dataSources/{data_source\}/backups/{backup\} */ sourceBackup?: string | null; /** @@ -1582,6 +1645,10 @@ export namespace netapp_v1 { * Optional. Flag indicating if the pool is NFS LDAP enabled or not. */ ldapEnabled?: boolean | null; + /** + * Optional. Mode of the storage pool. This field is used to control whether the user can perform the ONTAP operations on the storage pool using the GCNV ONTAP Mode APIs. If not specified during creation, it defaults to `DEFAULT`. + */ + mode?: string | null; /** * Identifier. Name of the storage pool */ @@ -1610,6 +1677,10 @@ export namespace netapp_v1 { * Output only. Reserved for future use */ satisfiesPzs?: boolean | null; + /** + * Optional. The scale type of the storage pool. Defaults to `SCALE_TYPE_DEFAULT` if not specified. + */ + scaleType?: string | null; /** * Required. Service level of the storage pool */ @@ -1631,7 +1702,7 @@ export namespace netapp_v1 { */ totalThroughputMibps?: string | null; /** - * Optional. Type of the storage pool. This field is used to control whether the pool supports `FILE` based volumes only or `UNIFIED` (both `FILE` and `BLOCK`) volumes or `UNIFIED_LARGE_CAPACITY` (both `FILE` and `BLOCK`) volumes with large capacity. If not specified during creation, it defaults to `FILE`. + * Optional. Type of the storage pool. This field is used to control whether the pool supports `FILE` based volumes only or `UNIFIED` (both `FILE` and `BLOCK`) volumes. If not specified during creation, it defaults to `FILE`. */ type?: string | null; /** @@ -1821,9 +1892,13 @@ export namespace netapp_v1 { */ labels?: {[key: string]: string} | null; /** - * Optional. Flag indicating if the volume will be a large capacity volume or a regular volume. + * Optional. Flag indicating if the volume will be a large capacity volume or a regular volume. This field is used for legacy FILE pools. For Unified pools, use the `large_capacity_config` field instead. This field and `large_capacity_config` are mutually exclusive. */ largeCapacity?: boolean | null; + /** + * Optional. Large capacity config for the volume. Enables and configures large capacity for volumes in Unified pools with File protocols. Not applicable for Block protocols in Unified pools. This field and the legacy `large_capacity` boolean field are mutually exclusive. + */ + largeCapacityConfig?: Schema$LargeCapacityConfig; /** * Output only. Flag indicating if the volume is NFS LDAP enabled or not. */ @@ -2130,7 +2205,7 @@ export namespace netapp_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2160,7 +2235,7 @@ export namespace netapp_v1 { * * // Do the magic * const res = await netapp.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2286,7 +2361,7 @@ export namespace netapp_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -8221,8 +8296,12 @@ export namespace netapp_v1 { export class Resource$Projects$Locations$Storagepools { context: APIRequestContext; + ontap: Resource$Projects$Locations$Storagepools$Ontap; constructor(context: APIRequestContext) { this.context = context; + this.ontap = new Resource$Projects$Locations$Storagepools$Ontap( + this.context + ); } /** @@ -8281,6 +8360,7 @@ export namespace netapp_v1 { * // "kmsConfig": "my_kmsConfig", * // "labels": {}, * // "ldapEnabled": false, + * // "mode": "my_mode", * // "name": "my_name", * // "network": "my_network", * // "psaRange": "my_psaRange", @@ -8288,6 +8368,7 @@ export namespace netapp_v1 { * // "replicaZone": "my_replicaZone", * // "satisfiesPzi": false, * // "satisfiesPzs": false, + * // "scaleType": "my_scaleType", * // "serviceLevel": "my_serviceLevel", * // "state": "my_state", * // "stateDetails": "my_stateDetails", @@ -8599,6 +8680,7 @@ export namespace netapp_v1 { * // "kmsConfig": "my_kmsConfig", * // "labels": {}, * // "ldapEnabled": false, + * // "mode": "my_mode", * // "name": "my_name", * // "network": "my_network", * // "psaRange": "my_psaRange", @@ -8606,6 +8688,7 @@ export namespace netapp_v1 { * // "replicaZone": "my_replicaZone", * // "satisfiesPzi": false, * // "satisfiesPzs": false, + * // "scaleType": "my_scaleType", * // "serviceLevel": "my_serviceLevel", * // "state": "my_state", * // "stateDetails": "my_stateDetails", @@ -8915,6 +8998,7 @@ export namespace netapp_v1 { * // "kmsConfig": "my_kmsConfig", * // "labels": {}, * // "ldapEnabled": false, + * // "mode": "my_mode", * // "name": "my_name", * // "network": "my_network", * // "psaRange": "my_psaRange", @@ -8922,6 +9006,7 @@ export namespace netapp_v1 { * // "replicaZone": "my_replicaZone", * // "satisfiesPzi": false, * // "satisfiesPzs": false, + * // "scaleType": "my_scaleType", * // "serviceLevel": "my_serviceLevel", * // "state": "my_state", * // "stateDetails": "my_stateDetails", @@ -9423,6 +9508,628 @@ export namespace netapp_v1 { requestBody?: Schema$ValidateDirectoryServiceRequest; } + export class Resource$Projects$Locations$Storagepools$Ontap { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * `ExecuteOntapDelete` dispatches the ONTAP `DELETE` request to the `StoragePool` cluster. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/netapp.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const netapp = google.netapp('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await netapp.projects.locations.storagePools.ontap.executeOntapDelete({ + * // Required. The resource path of the ONTAP resource. Format: `projects/{project_number\}/locations/{location_id\}/storagePools/{storage_pool_id\}/ontap/{ontap_resource_path\}`. For example: `projects/123456789/locations/us-central1/storagePools/my-storage-pool/ontap/api/storage/volumes`. + * ontapPath: + * 'projects/my-project/locations/my-location/storagePools/my-storagePool/ontap/.*', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "body": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + executeOntapDelete( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapdelete, + options: StreamMethodOptions + ): Promise>; + executeOntapDelete( + params?: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapdelete, + options?: MethodOptions + ): Promise>; + executeOntapDelete( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapdelete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + executeOntapDelete( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapdelete, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + executeOntapDelete( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapdelete, + callback: BodyResponseCallback + ): void; + executeOntapDelete( + callback: BodyResponseCallback + ): void; + executeOntapDelete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapdelete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapdelete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapdelete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://netapp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+ontapPath}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['ontapPath'], + pathParams: ['ontapPath'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * `ExecuteOntapGet` dispatches the ONTAP `GET` request to the `StoragePool` cluster. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/netapp.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const netapp = google.netapp('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await netapp.projects.locations.storagePools.ontap.executeOntapGet({ + * // Required. The resource path of the ONTAP resource. Format: `projects/{project_number\}/locations/{location_id\}/storagePools/{storage_pool_id\}/ontap/{ontap_resource_path\}`. For example: `projects/123456789/locations/us-central1/storagePools/my-storage-pool/ontap/api/storage/volumes`. + * ontapPath: + * 'projects/my-project/locations/my-location/storagePools/my-storagePool/ontap/.*', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "body": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + executeOntapGet( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapget, + options: StreamMethodOptions + ): Promise>; + executeOntapGet( + params?: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapget, + options?: MethodOptions + ): Promise>; + executeOntapGet( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapget, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + executeOntapGet( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapget, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + executeOntapGet( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapget, + callback: BodyResponseCallback + ): void; + executeOntapGet( + callback: BodyResponseCallback + ): void; + executeOntapGet( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapget + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapget; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapget; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://netapp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+ontapPath}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['ontapPath'], + pathParams: ['ontapPath'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * `ExecuteOntapPatch` dispatches the ONTAP `PATCH` request to the `StoragePool` cluster. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/netapp.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const netapp = google.netapp('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await netapp.projects.locations.storagePools.ontap.executeOntapPatch({ + * // Required. The resource path of the ONTAP resource. Format: `projects/{project_number\}/locations/{location_id\}/storagePools/{storage_pool_id\}/ontap/{ontap_resource_path\}`. For example: `projects/123456789/locations/us-central1/storagePools/my-storage-pool/ontap/api/storage/volumes`. + * ontapPath: + * 'projects/my-project/locations/my-location/storagePools/my-storagePool/ontap/.*', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "body": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "body": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + executeOntapPatch( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappatch, + options: StreamMethodOptions + ): Promise>; + executeOntapPatch( + params?: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappatch, + options?: MethodOptions + ): Promise>; + executeOntapPatch( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappatch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + executeOntapPatch( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappatch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + executeOntapPatch( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappatch, + callback: BodyResponseCallback + ): void; + executeOntapPatch( + callback: BodyResponseCallback + ): void; + executeOntapPatch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappatch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappatch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappatch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://netapp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+ontapPath}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['ontapPath'], + pathParams: ['ontapPath'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * `ExecuteOntapPost` dispatches the ONTAP `POST` request to the `StoragePool` cluster. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/netapp.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const netapp = google.netapp('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await netapp.projects.locations.storagePools.ontap.executeOntapPost({ + * // Required. The resource path of the ONTAP resource. Format: `projects/{project_number\}/locations/{location_id\}/storagePools/{storage_pool_id\}/ontap/{ontap_resource_path\}`. For example: `projects/123456789/locations/us-central1/storagePools/my-storage-pool/ontap/api/storage/volumes`. + * ontapPath: + * 'projects/my-project/locations/my-location/storagePools/my-storagePool/ontap/.*', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "body": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "body": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + executeOntapPost( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappost, + options: StreamMethodOptions + ): Promise>; + executeOntapPost( + params?: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappost, + options?: MethodOptions + ): Promise>; + executeOntapPost( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappost, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + executeOntapPost( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappost, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + executeOntapPost( + params: Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappost, + callback: BodyResponseCallback + ): void; + executeOntapPost( + callback: BodyResponseCallback + ): void; + executeOntapPost( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappost + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappost; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappost; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://netapp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+ontapPath}').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['ontapPath'], + pathParams: ['ontapPath'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapdelete extends StandardParameters { + /** + * Required. The resource path of the ONTAP resource. Format: `projects/{project_number\}/locations/{location_id\}/storagePools/{storage_pool_id\}/ontap/{ontap_resource_path\}`. For example: `projects/123456789/locations/us-central1/storagePools/my-storage-pool/ontap/api/storage/volumes`. + */ + ontapPath?: string; + } + export interface Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontapget extends StandardParameters { + /** + * Required. The resource path of the ONTAP resource. Format: `projects/{project_number\}/locations/{location_id\}/storagePools/{storage_pool_id\}/ontap/{ontap_resource_path\}`. For example: `projects/123456789/locations/us-central1/storagePools/my-storage-pool/ontap/api/storage/volumes`. + */ + ontapPath?: string; + } + export interface Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappatch extends StandardParameters { + /** + * Required. The resource path of the ONTAP resource. Format: `projects/{project_number\}/locations/{location_id\}/storagePools/{storage_pool_id\}/ontap/{ontap_resource_path\}`. For example: `projects/123456789/locations/us-central1/storagePools/my-storage-pool/ontap/api/storage/volumes`. + */ + ontapPath?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExecuteOntapPatchRequest; + } + export interface Params$Resource$Projects$Locations$Storagepools$Ontap$Executeontappost extends StandardParameters { + /** + * Required. The resource path of the ONTAP resource. Format: `projects/{project_number\}/locations/{location_id\}/storagePools/{storage_pool_id\}/ontap/{ontap_resource_path\}`. For example: `projects/123456789/locations/us-central1/storagePools/my-storage-pool/ontap/api/storage/volumes`. + */ + ontapPath?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExecuteOntapPostRequest; + } + export class Resource$Projects$Locations$Volumes { context: APIRequestContext; quotaRules: Resource$Projects$Locations$Volumes$Quotarules; @@ -9499,6 +10206,7 @@ export namespace netapp_v1 { * // "kmsConfig": "my_kmsConfig", * // "labels": {}, * // "largeCapacity": false, + * // "largeCapacityConfig": {}, * // "ldapEnabled": false, * // "mountOptions": [], * // "multipleEndpoints": false, @@ -9983,6 +10691,7 @@ export namespace netapp_v1 { * // "kmsConfig": "my_kmsConfig", * // "labels": {}, * // "largeCapacity": false, + * // "largeCapacityConfig": {}, * // "ldapEnabled": false, * // "mountOptions": [], * // "multipleEndpoints": false, @@ -10308,6 +11017,7 @@ export namespace netapp_v1 { * // "kmsConfig": "my_kmsConfig", * // "labels": {}, * // "largeCapacity": false, + * // "largeCapacityConfig": {}, * // "ldapEnabled": false, * // "mountOptions": [], * // "multipleEndpoints": false, diff --git a/src/apis/netapp/v1beta1.ts b/src/apis/netapp/v1beta1.ts index 52f17528cd8..e76c8f8e285 100644 --- a/src/apis/netapp/v1beta1.ts +++ b/src/apis/netapp/v1beta1.ts @@ -266,7 +266,7 @@ export namespace netapp_v1beta1 { */ sourceSnapshot?: string | null; /** - * Volume full name of this backup belongs to. Format: `projects/{projects_id\}/locations/{location\}/volumes/{volume_id\}` + * Volume full name of this backup belongs to. Either source_volume or ontap_source should be provided. Format: `projects/{projects_id\}/locations/{location\}/volumes/{volume_id\}` */ sourceVolume?: string | null; /** @@ -397,6 +397,10 @@ export namespace netapp_v1beta1 { * Output only. Create time of the backup vault. */ createTime?: string | null; + /** + * Optional. Indicates if the backup vault is a cross project vault. + */ + crossProjectVault?: boolean | null; /** * Description of the backup vault. */ @@ -896,7 +900,7 @@ export namespace netapp_v1beta1 { stateDetails?: string | null; } /** - * Configuration for a Large Capacity Volume. A Large Capacity Volume supports sizes ranging from 12 TiB to 20 PiB, it is composed of multiple internal constituents, and must be created in a large capacity pool. + * Configuration for a Large Capacity Volume. A Large Capacity Volume supports sizes ranging from 4.8 TiB to 20 PiB, it is composed of multiple internal constituents, and must be created in a large capacity pool. */ export interface Schema$LargeCapacityConfig { /** @@ -1411,7 +1415,7 @@ export namespace netapp_v1beta1 { */ export interface Schema$RestoreParameters { /** - * Full name of the backup resource. Format: projects/{project\}/locations/{location\}/backupVaults/{backup_vault_id\}/backups/{backup_id\} + * Full name of the backup resource. Format for standard backup: projects/{project\}/locations/{location\}/backupVaults/{backup_vault_id\}/backups/{backup_id\} Format for BackupDR backup: projects/{project\}/locations/{location\}/backupVaults/{backup_vault\}/dataSources/{data_source\}/backups/{backup\} */ sourceBackup?: string | null; /** @@ -1678,9 +1682,13 @@ export namespace netapp_v1beta1 { */ satisfiesPzs?: boolean | null; /** - * Optional. The effective scale tier of the storage pool. If `scale_tier` is not specified during creation, this defaults to `SCALE_TIER_STANDARD`. + * Optional. Deprecated: Use scale_type instead. The effective scale tier of the storage pool. If `scale_tier` is not specified during creation, this defaults to `SCALE_TIER_STANDARD`. */ scaleTier?: string | null; + /** + * Optional. The scale type of the storage pool. Defaults to `SCALE_TYPE_DEFAULT` if not specified. + */ + scaleType?: string | null; /** * Required. Service level of the storage pool */ @@ -1702,7 +1710,7 @@ export namespace netapp_v1beta1 { */ totalThroughputMibps?: string | null; /** - * Optional. Type of the storage pool. This field is used to control whether the pool supports `FILE` based volumes only or `UNIFIED` (both `FILE` and `BLOCK`) volumes or `UNIFIED_LARGE_CAPACITY` (both `FILE` and `BLOCK`) volumes with large capacity. If not specified during creation, it defaults to `FILE`. + * Optional. Type of the storage pool. This field is used to control whether the pool supports `FILE` based volumes only or `UNIFIED` (both `FILE` and `BLOCK`) volumes. If not specified during creation, it defaults to `FILE`. */ type?: string | null; /** @@ -1892,11 +1900,11 @@ export namespace netapp_v1beta1 { */ labels?: {[key: string]: string} | null; /** - * Optional. Flag indicating if the volume will be a large capacity volume or a regular volume. + * Optional. Flag indicating if the volume will be a large capacity volume or a regular volume. This field is used for legacy FILE pools. For Unified pools, use the `large_capacity_config` field instead. This field and `large_capacity_config` are mutually exclusive. */ largeCapacity?: boolean | null; /** - * Optional. Large capacity config for the volume. + * Optional. Large capacity config for the volume. Enables and configures large capacity for volumes in Unified pools with File protocols. Not applicable for Block protocols in Unified pools. This field and the legacy `large_capacity` boolean field are mutually exclusive. */ largeCapacityConfig?: Schema$LargeCapacityConfig; /** @@ -2205,7 +2213,7 @@ export namespace netapp_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2235,7 +2243,7 @@ export namespace netapp_v1beta1 { * * // Do the magic * const res = await netapp.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2361,7 +2369,7 @@ export namespace netapp_v1beta1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -4121,6 +4129,7 @@ export namespace netapp_v1beta1 { * // "backupVaultType": "my_backupVaultType", * // "backupsCryptoKeyVersion": "my_backupsCryptoKeyVersion", * // "createTime": "my_createTime", + * // "crossProjectVault": false, * // "description": "my_description", * // "destinationBackupVault": "my_destinationBackupVault", * // "encryptionState": "my_encryptionState", @@ -4421,6 +4430,7 @@ export namespace netapp_v1beta1 { * // "backupVaultType": "my_backupVaultType", * // "backupsCryptoKeyVersion": "my_backupsCryptoKeyVersion", * // "createTime": "my_createTime", + * // "crossProjectVault": false, * // "description": "my_description", * // "destinationBackupVault": "my_destinationBackupVault", * // "encryptionState": "my_encryptionState", @@ -4719,6 +4729,7 @@ export namespace netapp_v1beta1 { * // "backupVaultType": "my_backupVaultType", * // "backupsCryptoKeyVersion": "my_backupsCryptoKeyVersion", * // "createTime": "my_createTime", + * // "crossProjectVault": false, * // "description": "my_description", * // "destinationBackupVault": "my_destinationBackupVault", * // "encryptionState": "my_encryptionState", @@ -8375,6 +8386,7 @@ export namespace netapp_v1beta1 { * // "satisfiesPzi": false, * // "satisfiesPzs": false, * // "scaleTier": "my_scaleTier", + * // "scaleType": "my_scaleType", * // "serviceLevel": "my_serviceLevel", * // "state": "my_state", * // "stateDetails": "my_stateDetails", @@ -8695,6 +8707,7 @@ export namespace netapp_v1beta1 { * // "satisfiesPzi": false, * // "satisfiesPzs": false, * // "scaleTier": "my_scaleTier", + * // "scaleType": "my_scaleType", * // "serviceLevel": "my_serviceLevel", * // "state": "my_state", * // "stateDetails": "my_stateDetails", @@ -9013,6 +9026,7 @@ export namespace netapp_v1beta1 { * // "satisfiesPzi": false, * // "satisfiesPzs": false, * // "scaleTier": "my_scaleTier", + * // "scaleType": "my_scaleType", * // "serviceLevel": "my_serviceLevel", * // "state": "my_state", * // "stateDetails": "my_stateDetails", diff --git a/src/apis/networkconnectivity/v1.ts b/src/apis/networkconnectivity/v1.ts index 379639bc69a..a32449cecc2 100644 --- a/src/apis/networkconnectivity/v1.ts +++ b/src/apis/networkconnectivity/v1.ts @@ -910,6 +910,18 @@ export namespace networkconnectivity_v1 { * A collection of VLAN attachment resources. These resources should be redundant attachments that all advertise the same prefixes to Google Cloud. Alternatively, in active/passive configurations, all attachments should be capable of advertising the same prefixes. */ export interface Schema$LinkedInterconnectAttachments { + /** + * Optional. Dynamic routes overlapped/encompassed by exclude export ranges are excluded during export to hub. + */ + excludeExportRanges?: string[] | null; + /** + * Optional. Hub routes overlapped/encompassed by exclude import ranges are excluded during import from hub. + */ + excludeImportRanges?: string[] | null; + /** + * Optional. Dynamic routes fully encompassed by include export ranges are included during export to hub. + */ + includeExportRanges?: string[] | null; /** * Optional. Hub routes fully encompassed by include import ranges are included during import from hub. */ @@ -965,6 +977,18 @@ export namespace networkconnectivity_v1 { * A collection of router appliance instances. If you configure multiple router appliance instances to receive data from the same set of sites outside of Google Cloud, we recommend that you associate those instances with the same spoke. */ export interface Schema$LinkedRouterApplianceInstances { + /** + * Optional. Dynamic routes overlapped/encompassed by exclude export ranges are excluded during export to hub. + */ + excludeExportRanges?: string[] | null; + /** + * Optional. Hub routes overlapped/encompassed by exclude import ranges are excluded during import from hub. + */ + excludeImportRanges?: string[] | null; + /** + * Optional. Dynamic routes fully encompassed by include export ranges are included during export to hub. + */ + includeExportRanges?: string[] | null; /** * Optional. Hub routes fully encompassed by include import ranges are included during import from hub. */ @@ -1015,6 +1039,18 @@ export namespace networkconnectivity_v1 { * A collection of Cloud VPN tunnel resources. These resources should be redundant HA VPN tunnels that all advertise the same prefixes to Google Cloud. Alternatively, in a passive/active configuration, all tunnels should be capable of advertising the same prefixes. */ export interface Schema$LinkedVpnTunnels { + /** + * Optional. Dynamic routes overlapped/encompassed by exclude export ranges are excluded during export to hub. + */ + excludeExportRanges?: string[] | null; + /** + * Optional. Hub routes overlapped/encompassed by exclude import ranges are excluded during import from hub. + */ + excludeImportRanges?: string[] | null; + /** + * Optional. Dynamic routes fully encompassed by include export ranges are included during export to hub. + */ + includeExportRanges?: string[] | null; /** * Optional. Hub routes fully encompassed by include import ranges are included during import from hub. */ @@ -1211,6 +1247,23 @@ export namespace networkconnectivity_v1 { */ unreachable?: string[] | null; } + /** + * Message for response to listing RemoteTransportProfiles + */ + export interface Schema$ListRemoteTransportProfilesResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * The list of RemoteTransportProfiles. + */ + remoteTransportProfiles?: Schema$RemoteTransportProfile[]; + /** + * Unordered list. Locations that could not be reached. + */ + unreachable?: string[] | null; + } /** * Response for HubService.ListRoutes method. */ @@ -1330,6 +1383,23 @@ export namespace networkconnectivity_v1 { */ unreachable?: string[] | null; } + /** + * Message for response to listing Transports. + */ + export interface Schema$ListTransportsResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * The list of Transport. + */ + transports?: Schema$Transport[]; + /** + * Unordered list. Locations that could not be reached. + */ + unreachable?: string[] | null; + } /** * A resource that represents a Google Cloud location. */ @@ -1865,6 +1935,51 @@ export namespace networkconnectivity_v1 { */ spokeUri?: string | null; } + /** + * Message describing RemoteTransportProfile object. + */ + export interface Schema$RemoteTransportProfile { + /** + * Output only. Description of the profile. + */ + description?: string | null; + /** + * Output only. Human readable name of this profile, used to identify this profile in the UI. + */ + displayName?: string | null; + /** + * Output only. Type of provisioning flows supported by this profile. + */ + flow?: string | null; + /** + * Output only. Labels as key value pairs. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. Name of the resource in the format of $provider-$site. + */ + name?: string | null; + /** + * Output only. Order state for this profile. + */ + orderState?: string | null; + /** + * Output only. Name of the provider on the other end of this profile. E.g. “Amazon Web Services” or “Microsoft Azure”. + */ + provider?: string | null; + /** + * Output only. If the profile is a Cloud Service Provider with compute resources, this is populated with the region where connectivity is being established. If the profile provides facility-level selection, this is an identity of the facility any connections on this profile are going through. + */ + providerSite?: string | null; + /** + * Output only. Availability class that will be configured for this particular RemoteTransportProfile. + */ + sla?: string | null; + /** + * Output only. List of bandwidth enum values that are supported by this profile. + */ + supportedBandwidths?: string[] | null; + } /** * A route defines a path from VM instances within a spoke to a specific destination resource. Only VPC spokes have routes. */ @@ -2394,6 +2509,75 @@ export namespace networkconnectivity_v1 { */ permissions?: string[] | null; } + /** + * Message describing Transport object. + */ + export interface Schema$Transport { + /** + * Optional. List of IP Prefixes that will be advertised to the remote provider. Both IPv4 and IPv6 addresses are supported. + */ + advertisedRoutes?: string[] | null; + /** + * Optional. Bandwidth of the Transport. This must be one of the supported bandwidths for the remote profile, and must be set when no activation key is being provided. + */ + bandwidth?: string | null; + /** + * Output only. Create time stamp. + */ + createTime?: string | null; + /** + * Optional. Description of the Transport. + */ + description?: string | null; + /** + * Output only. Google-generated activation key. This is only output if the selected profile supports an OUTPUT key flow. Inputting this to the provider is only valid while the resource is in a PENDING_KEY state. Once the provider has accepted the key, the resource will move to the CONFIGURING state. + */ + generatedActivationKey?: string | null; + /** + * Optional. Labels as key value pairs. + */ + labels?: {[key: string]: string} | null; + /** + * Output only. The maximum transmission unit (MTU) of a packet that can be sent over this transport. + */ + mtuLimit?: number | null; + /** + * Identifier. Name of the resource. + */ + name?: string | null; + /** + * Optional. Immutable. Resource URI of the Network that will be peered with this Transport. This field must be provided during resource creation and cannot be changed. + */ + network?: string | null; + /** + * Output only. VPC Network URI that was created for the VPC Peering connection to the provided `network`. If VPC Peering is disconnected, this can be used to re-establish. + */ + peeringNetwork?: string | null; + /** + * Optional. Immutable. Key used for establishing a connection with the remote transport. This key can only be provided if the profile supports an INPUT key flow and the resource is in the PENDING_KEY state. + */ + providedActivationKey?: string | null; + /** + * Optional. Immutable. The user supplied account id for the CSP associated with the remote profile. + */ + remoteAccountId?: string | null; + /** + * Optional. Immutable. Name of the remoteTransportProfile that this Transport is connecting to. + */ + remoteProfile?: string | null; + /** + * Optional. IP version stack for the established connectivity. + */ + stackType?: string | null; + /** + * Output only. State of the underlying connectivity. + */ + state?: string | null; + /** + * Output only. Update time stamp. + */ + updateTime?: string | null; + } /** * VM instances that this policy-based route applies to. */ @@ -2439,11 +2623,13 @@ export namespace networkconnectivity_v1 { multicloudDataTransferSupportedServices: Resource$Projects$Locations$Multiclouddatatransfersupportedservices; operations: Resource$Projects$Locations$Operations; regionalEndpoints: Resource$Projects$Locations$Regionalendpoints; + remoteTransportProfiles: Resource$Projects$Locations$Remotetransportprofiles; serviceClasses: Resource$Projects$Locations$Serviceclasses; serviceConnectionMaps: Resource$Projects$Locations$Serviceconnectionmaps; serviceConnectionPolicies: Resource$Projects$Locations$Serviceconnectionpolicies; serviceConnectionTokens: Resource$Projects$Locations$Serviceconnectiontokens; spokes: Resource$Projects$Locations$Spokes; + transports: Resource$Projects$Locations$Transports; constructor(context: APIRequestContext) { this.context = context; this.automatedDnsRecords = @@ -2465,6 +2651,8 @@ export namespace networkconnectivity_v1 { ); this.regionalEndpoints = new Resource$Projects$Locations$Regionalendpoints(this.context); + this.remoteTransportProfiles = + new Resource$Projects$Locations$Remotetransportprofiles(this.context); this.serviceClasses = new Resource$Projects$Locations$Serviceclasses( this.context ); @@ -2475,6 +2663,9 @@ export namespace networkconnectivity_v1 { this.serviceConnectionTokens = new Resource$Projects$Locations$Serviceconnectiontokens(this.context); this.spokes = new Resource$Projects$Locations$Spokes(this.context); + this.transports = new Resource$Projects$Locations$Transports( + this.context + ); } /** @@ -2770,7 +2961,7 @@ export namespace networkconnectivity_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2800,7 +2991,7 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = await networkconnectivity.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2938,7 +3129,7 @@ export namespace networkconnectivity_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -13754,14 +13945,14 @@ export namespace networkconnectivity_v1 { parent?: string; } - export class Resource$Projects$Locations$Serviceclasses { + export class Resource$Projects$Locations$Remotetransportprofiles { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes a single ServiceClass. + * Gets details of a single RemoteTransportProfile. * @example * ```js * // Before running the sample: @@ -13791,23 +13982,24 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = - * await networkconnectivity.projects.locations.serviceClasses.delete({ - * // Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. - * etag: 'placeholder-value', - * // Required. The name of the ServiceClass to delete. - * name: 'projects/my-project/locations/my-location/serviceClasses/my-serviceClasse', - * // 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: 'placeholder-value', + * await networkconnectivity.projects.locations.remoteTransportProfiles.get({ + * // Required. Name of the resource. + * name: 'projects/my-project/locations/my-location/remoteTransportProfiles/my-remoteTransportProfile', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "flow": "my_flow", + * // "labels": {}, * // "name": "my_name", - * // "response": {} + * // "orderState": "my_orderState", + * // "provider": "my_provider", + * // "providerSite": "my_providerSite", + * // "sla": "my_sla", + * // "supportedBandwidths": [] * // } * } * @@ -13823,57 +14015,56 @@ export namespace networkconnectivity_v1 { * @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$Serviceclasses$Delete, + get( + params: Params$Resource$Projects$Locations$Remotetransportprofiles$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Serviceclasses$Delete, + get( + params?: Params$Resource$Projects$Locations$Remotetransportprofiles$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Serviceclasses$Delete, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Remotetransportprofiles$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Serviceclasses$Delete, + get( + params: Params$Resource$Projects$Locations$Remotetransportprofiles$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Serviceclasses$Delete, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Remotetransportprofiles$Get, + callback: BodyResponseCallback ): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceclasses$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Remotetransportprofiles$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceclasses$Delete; + {}) as Params$Resource$Projects$Locations$Remotetransportprofiles$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Serviceclasses$Delete; + params = + {} as Params$Resource$Projects$Locations$Remotetransportprofiles$Get; options = {}; } @@ -13888,7 +14079,7 @@ export namespace networkconnectivity_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options @@ -13899,17 +14090,17 @@ export namespace networkconnectivity_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets details of a single ServiceClass. + * Lists RemoteTransportProfiles in a given project and location. * @example * ```js * // Before running the sample: @@ -13938,21 +14129,26 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networkconnectivity.projects.locations.serviceClasses.get({ - * // Required. Name of the ServiceClass to get. - * name: 'projects/my-project/locations/my-location/serviceClasses/my-serviceClasse', - * }); + * const res = + * await networkconnectivity.projects.locations.remoteTransportProfiles.list({ + * // Optional. Filtering results. + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListRemoteTransportProfilesRequest. + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "serviceClass": "my_serviceClass", - * // "updateTime": "my_updateTime" + * // "nextPageToken": "my_nextPageToken", + * // "remoteTransportProfiles": [], + * // "unreachable": [] * // } * } * @@ -13968,53 +14164,62 @@ export namespace networkconnectivity_v1 { * @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$Serviceclasses$Get, + list( + params: Params$Resource$Projects$Locations$Remotetransportprofiles$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Serviceclasses$Get, + list( + params?: Params$Resource$Projects$Locations$Remotetransportprofiles$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Serviceclasses$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Remotetransportprofiles$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Serviceclasses$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Remotetransportprofiles$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Serviceclasses$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Remotetransportprofiles$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceclasses$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Remotetransportprofiles$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceclasses$Get; + {}) as Params$Resource$Projects$Locations$Remotetransportprofiles$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Serviceclasses$Get; + params = + {} as Params$Resource$Projects$Locations$Remotetransportprofiles$List; options = {}; } @@ -14028,43 +14233,84 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+parent}/remoteTransportProfiles').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Projects$Locations$Remotetransportprofiles$Get extends StandardParameters { /** - * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/networkconnectivity.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * + * Required. Name of the resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Remotetransportprofiles$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 ListRemoteTransportProfilesRequest. + */ + parent?: string; + } + + export class Resource$Projects$Locations$Serviceclasses { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes a single ServiceClass. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkconnectivity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * * const {google} = require('googleapis'); * const networkconnectivity = google.networkconnectivity('v1'); * @@ -14080,21 +14326,23 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = - * await networkconnectivity.projects.locations.serviceClasses.getIamPolicy({ - * // 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': 'placeholder-value', - * // 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: - * 'projects/my-project/locations/my-location/serviceClasses/my-serviceClasse', + * await networkconnectivity.projects.locations.serviceClasses.delete({ + * // Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. + * etag: 'placeholder-value', + * // Required. The name of the ServiceClass to delete. + * name: 'projects/my-project/locations/my-location/serviceClasses/my-serviceClasse', + * // 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: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -14110,54 +14358,57 @@ export namespace networkconnectivity_v1 { * @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$Serviceclasses$Getiampolicy, + delete( + params: Params$Resource$Projects$Locations$Serviceclasses$Delete, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Serviceclasses$Getiampolicy, + delete( + params?: Params$Resource$Projects$Locations$Serviceclasses$Delete, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Serviceclasses$Getiampolicy, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Serviceclasses$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Serviceclasses$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Serviceclasses$Delete, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Serviceclasses$Getiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Serviceclasses$Delete, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + delete( + callback: BodyResponseCallback + ): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceclasses$Getiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Serviceclasses$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceclasses$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Serviceclasses$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Serviceclasses$Getiampolicy; + params = {} as Params$Resource$Projects$Locations$Serviceclasses$Delete; options = {}; } @@ -14171,32 +14422,29 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists ServiceClasses in a given project and location. + * Gets details of a single ServiceClass. * @example * ```js * // Before running the sample: @@ -14225,25 +14473,21 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networkconnectivity.projects.locations.serviceClasses.list({ - * // A filter expression that filters the results listed in the response. - * filter: 'placeholder-value', - * // Sort the results by a certain order. - * orderBy: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * pageSize: 'placeholder-value', - * // The page token. - * pageToken: 'placeholder-value', - * // Required. The parent resource's name. ex. projects/123/locations/us-east1 - * parent: 'projects/my-project/locations/my-location', + * const res = await networkconnectivity.projects.locations.serviceClasses.get({ + * // Required. Name of the ServiceClass to get. + * name: 'projects/my-project/locations/my-location/serviceClasses/my-serviceClasse', * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "serviceClasses": [], - * // "unreachable": [] + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "serviceClass": "my_serviceClass", + * // "updateTime": "my_updateTime" * // } * } * @@ -14259,57 +14503,53 @@ export namespace networkconnectivity_v1 { * @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$Serviceclasses$List, + get( + params: Params$Resource$Projects$Locations$Serviceclasses$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Serviceclasses$List, + get( + params?: Params$Resource$Projects$Locations$Serviceclasses$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Serviceclasses$List, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Serviceclasses$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Serviceclasses$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Serviceclasses$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Serviceclasses$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Serviceclasses$Get, + callback: BodyResponseCallback ): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceclasses$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Serviceclasses$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceclasses$List; + {}) as Params$Resource$Projects$Locations$Serviceclasses$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Serviceclasses$List; + params = {} as Params$Resource$Projects$Locations$Serviceclasses$Get; options = {}; } @@ -14323,32 +14563,29 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/serviceClasses').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the parameters of a single ServiceClass. + * Lists ServiceClasses in a given project and location. * @example * ```js * // Before running the sample: @@ -14377,39 +14614,25 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networkconnectivity.projects.locations.serviceClasses.patch( - * { - * // Immutable. The name of a ServiceClass resource. Format: projects/{project\}/locations/{location\}/serviceClasses/{service_class\} See: https://google.aip.dev/122#fields-representing-resource-names - * name: 'projects/my-project/locations/my-location/serviceClasses/my-serviceClasse', - * // 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: 'placeholder-value', - * // Optional. Field mask is used to specify the fields to be overwritten in the ServiceClass 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "serviceClass": "my_serviceClass", - * // "updateTime": "my_updateTime" - * // } - * }, - * }, - * ); + * const res = await networkconnectivity.projects.locations.serviceClasses.list({ + * // A filter expression that filters the results listed in the response. + * filter: 'placeholder-value', + * // Sort the results by a certain order. + * orderBy: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * pageSize: 'placeholder-value', + * // The page token. + * pageToken: 'placeholder-value', + * // Required. The parent resource's name. ex. projects/123/locations/us-east1 + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "nextPageToken": "my_nextPageToken", + * // "serviceClasses": [], + * // "unreachable": [] * // } * } * @@ -14425,57 +14648,57 @@ export namespace networkconnectivity_v1 { * @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$Serviceclasses$Patch, + list( + params: Params$Resource$Projects$Locations$Serviceclasses$List, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Serviceclasses$Patch, + list( + params?: Params$Resource$Projects$Locations$Serviceclasses$List, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Serviceclasses$Patch, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Serviceclasses$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Serviceclasses$Patch, + list( + params: Params$Resource$Projects$Locations$Serviceclasses$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Serviceclasses$Patch, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Serviceclasses$List, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - patch( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceclasses$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Serviceclasses$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceclasses$Patch; + {}) as Params$Resource$Projects$Locations$Serviceclasses$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Serviceclasses$Patch; + params = {} as Params$Resource$Projects$Locations$Serviceclasses$List; options = {}; } @@ -14489,29 +14712,32 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1/{+parent}/serviceClasses').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Updates the parameters of a single ServiceClass. * @example * ```js * // Before running the sample: @@ -14540,29 +14766,39 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networkconnectivity.projects.locations.serviceClasses.setIamPolicy({ - * // 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: - * 'projects/my-project/locations/my-location/serviceClasses/my-serviceClasse', + * const res = await networkconnectivity.projects.locations.serviceClasses.patch( + * { + * // Immutable. The name of a ServiceClass resource. Format: projects/{project\}/locations/{location\}/serviceClasses/{service_class\} See: https://google.aip.dev/122#fields-representing-resource-names + * name: 'projects/my-project/locations/my-location/serviceClasses/my-serviceClasse', + * // 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: 'placeholder-value', + * // Optional. Field mask is used to specify the fields to be overwritten in the ServiceClass 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: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "serviceClass": "my_serviceClass", + * // "updateTime": "my_updateTime" * // } * }, - * }); + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -14578,54 +14814,57 @@ export namespace networkconnectivity_v1 { * @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$Serviceclasses$Setiampolicy, + patch( + params: Params$Resource$Projects$Locations$Serviceclasses$Patch, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Serviceclasses$Setiampolicy, + patch( + params?: Params$Resource$Projects$Locations$Serviceclasses$Patch, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Serviceclasses$Setiampolicy, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Serviceclasses$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Serviceclasses$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Serviceclasses$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Serviceclasses$Setiampolicy, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Serviceclasses$Patch, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + patch( + callback: BodyResponseCallback + ): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceclasses$Setiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Serviceclasses$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceclasses$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Serviceclasses$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Serviceclasses$Setiampolicy; + params = {} as Params$Resource$Projects$Locations$Serviceclasses$Patch; options = {}; } @@ -14639,32 +14878,98 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Serviceclasses$Delete extends StandardParameters { /** - * 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. + * Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. + */ + etag?: string; + /** + * Required. The name of the ServiceClass to delete. + */ + 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; + } + export interface Params$Resource$Projects$Locations$Serviceclasses$Get extends StandardParameters { + /** + * Required. Name of the ServiceClass to get. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Serviceclasses$List extends StandardParameters { + /** + * A filter expression that filters the results listed in the response. + */ + filter?: string; + /** + * Sort the results by a certain order. + */ + orderBy?: string; + /** + * The maximum number of results per page that should be returned. + */ + pageSize?: number; + /** + * The page token. + */ + pageToken?: string; + /** + * Required. The parent resource's name. ex. projects/123/locations/us-east1 + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Serviceclasses$Patch extends StandardParameters { + /** + * Immutable. The name of a ServiceClass resource. Format: projects/{project\}/locations/{location\}/serviceClasses/{service_class\} See: https://google.aip.dev/122#fields-representing-resource-names + */ + 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 ServiceClass 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; + + /** + * Request body metadata + */ + requestBody?: Schema$ServiceClass; + } + + export class Resource$Projects$Locations$Serviceconnectionmaps { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new ServiceConnectionMap in a given project and location. * @example * ```js * // Before running the sample: @@ -14694,269 +14999,13 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = - * await networkconnectivity.projects.locations.serviceClasses.testIamPermissions( - * { - * // 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: - * 'projects/my-project/locations/my-location/serviceClasses/my-serviceClasse', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }, - * ); - * console.log(res.data); - * - * // Example response - * // { - * // "permissions": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Serviceclasses$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Serviceclasses$Testiampermissions, - options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Projects$Locations$Serviceclasses$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Serviceclasses$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Serviceclasses$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceclasses$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceclasses$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Serviceclasses$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = - options.rootUrl || 'https://networkconnectivity.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - 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$Serviceclasses$Delete extends StandardParameters { - /** - * Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. - */ - etag?: string; - /** - * Required. The name of the ServiceClass to delete. - */ - 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; - } - export interface Params$Resource$Projects$Locations$Serviceclasses$Get extends StandardParameters { - /** - * Required. Name of the ServiceClass to get. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Serviceclasses$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$Serviceclasses$List extends StandardParameters { - /** - * A filter expression that filters the results listed in the response. - */ - filter?: string; - /** - * Sort the results by a certain order. - */ - orderBy?: string; - /** - * The maximum number of results per page that should be returned. - */ - pageSize?: number; - /** - * The page token. - */ - pageToken?: string; - /** - * Required. The parent resource's name. ex. projects/123/locations/us-east1 - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Serviceclasses$Patch extends StandardParameters { - /** - * Immutable. The name of a ServiceClass resource. Format: projects/{project\}/locations/{location\}/serviceClasses/{service_class\} See: https://google.aip.dev/122#fields-representing-resource-names - */ - 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 ServiceClass 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; - - /** - * Request body metadata - */ - requestBody?: Schema$ServiceClass; - } - export interface Params$Resource$Projects$Locations$Serviceclasses$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$Serviceclasses$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$Serviceconnectionmaps { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Creates a new ServiceConnectionMap in a given project and location. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/networkconnectivity.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const networkconnectivity = google.networkconnectivity('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await networkconnectivity.projects.locations.serviceConnectionMaps.create({ - * // Required. The parent resource's name of the ServiceConnectionMap. ex. projects/123/locations/us-east1 - * parent: 'projects/my-project/locations/my-location', - * // 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: 'placeholder-value', - * // Optional. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/serviceConnectionMaps/foo') See https://google.aip.dev/122#resource-id-segments Unique per location. If one is not provided, one will be generated. - * serviceConnectionMapId: 'placeholder-value', + * await networkconnectivity.projects.locations.serviceConnectionMaps.create({ + * // Required. The parent resource's name of the ServiceConnectionMap. ex. projects/123/locations/us-east1 + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // Optional. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/serviceConnectionMaps/foo') See https://google.aip.dev/122#resource-id-segments Unique per location. If one is not provided, one will be generated. + * serviceConnectionMapId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -15392,7 +15441,7 @@ export namespace networkconnectivity_v1 { } /** - * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * Lists ServiceConnectionMaps in a given project and location. * @example * ```js * // Before running the sample: @@ -15422,173 +15471,25 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = - * await networkconnectivity.projects.locations.serviceConnectionMaps.getIamPolicy( - * { - * // 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': 'placeholder-value', - * // 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: - * 'projects/my-project/locations/my-location/serviceConnectionMaps/my-serviceConnectionMap', - * }, - * ); + * await networkconnectivity.projects.locations.serviceConnectionMaps.list({ + * // A filter expression that filters the results listed in the response. + * filter: 'placeholder-value', + * // Sort the results by a certain order. + * orderBy: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * pageSize: 'placeholder-value', + * // The page token. + * pageToken: 'placeholder-value', + * // Required. The parent resource's name. ex. projects/123/locations/us-east1 + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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$Serviceconnectionmaps$Getiampolicy, - options: StreamMethodOptions - ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Serviceconnectionmaps$Getiampolicy, - options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Serviceconnectionmaps$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Serviceconnectionmaps$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Serviceconnectionmaps$Getiampolicy, - callback: BodyResponseCallback - ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectionmaps$Getiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectionmaps$Getiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Serviceconnectionmaps$Getiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = - options.rootUrl || 'https://networkconnectivity.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists ServiceConnectionMaps in a given project and location. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/networkconnectivity.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const networkconnectivity = google.networkconnectivity('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await networkconnectivity.projects.locations.serviceConnectionMaps.list({ - * // A filter expression that filters the results listed in the response. - * filter: 'placeholder-value', - * // Sort the results by a certain order. - * orderBy: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * pageSize: 'placeholder-value', - * // The page token. - * pageToken: 'placeholder-value', - * // Required. The parent resource's name. ex. projects/123/locations/us-east1 - * parent: 'projects/my-project/locations/my-location', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "serviceConnectionMaps": [], - * // "unreachable": [] + * // "nextPageToken": "my_nextPageToken", + * // "serviceConnectionMaps": [], + * // "unreachable": [] * // } * } * @@ -15867,9 +15768,97 @@ export namespace networkconnectivity_v1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Serviceconnectionmaps$Create extends StandardParameters { /** - * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * Required. The parent resource's name of the ServiceConnectionMap. ex. projects/123/locations/us-east1 + */ + 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. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/serviceConnectionMaps/foo') See https://google.aip.dev/122#resource-id-segments Unique per location. If one is not provided, one will be generated. + */ + serviceConnectionMapId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ServiceConnectionMap; + } + export interface Params$Resource$Projects$Locations$Serviceconnectionmaps$Delete extends StandardParameters { + /** + * Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. + */ + etag?: string; + /** + * Required. The name of the ServiceConnectionMap to delete. + */ + 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; + } + export interface Params$Resource$Projects$Locations$Serviceconnectionmaps$Get extends StandardParameters { + /** + * Required. Name of the ServiceConnectionMap to get. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Serviceconnectionmaps$List extends StandardParameters { + /** + * A filter expression that filters the results listed in the response. + */ + filter?: string; + /** + * Sort the results by a certain order. + */ + orderBy?: string; + /** + * The maximum number of results per page that should be returned. + */ + pageSize?: number; + /** + * The page token. + */ + pageToken?: string; + /** + * Required. The parent resource's name. ex. projects/123/locations/us-east1 + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Serviceconnectionmaps$Patch extends StandardParameters { + /** + * Immutable. The name of a ServiceConnectionMap. Format: projects/{project\}/locations/{location\}/serviceConnectionMaps/{service_connection_map\} See: https://google.aip.dev/122#fields-representing-resource-names + */ + 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 ServiceConnectionMap 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; + + /** + * Request body metadata + */ + requestBody?: Schema$ServiceConnectionMap; + } + + export class Resource$Projects$Locations$Serviceconnectionpolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new ServiceConnectionPolicy in a given project and location. * @example * ```js * // Before running the sample: @@ -15899,30 +15888,52 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = - * await networkconnectivity.projects.locations.serviceConnectionMaps.setIamPolicy( + * await networkconnectivity.projects.locations.serviceConnectionPolicies.create( * { - * // 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: - * 'projects/my-project/locations/my-location/serviceConnectionMaps/my-serviceConnectionMap', + * // Optional. The space where we search for a free range to create a subnetwork. It can be narrow down or pick a different space. This is in standard CIDR format. If not specified, “10.0.0.0/8” is used. Only eligible for IPV4_ONLY and IPV4_IPV6 subnetwork. + * 'autoSubnetworkConfig.allocRangeSpace': 'placeholder-value', + * // Optional. The requested IP stack for the subnetwork. If not specified, IPv4 is used. + * 'autoSubnetworkConfig.ipStack': 'placeholder-value', + * // Optional. The desired prefix length for the subnet's IP address range. E.g., 24 for a /24. The actual range is allocated from available space. If not specified, 24 is used. Only eligible for IPV4_ONLY and IPV4_IPV6 subnetwork. + * 'autoSubnetworkConfig.prefixLength': 'placeholder-value', + * // Required. The parent resource's name of the ServiceConnectionPolicy. ex. projects/123/locations/us-east1 + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // Optional. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/serviceConnectionPolicies/foo') See https://google.aip.dev/122#resource-id-segments Unique per location. + * serviceConnectionPolicyId: 'placeholder-value', + * // Optional. If this field is not set, USER_PROVIDED is the inferred value to use. + * subnetworkMode: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, - * }, - * ); - * console.log(res.data); - * - * // Example response + * // "autoCreatedSubnetInfo": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "infrastructure": "my_infrastructure", + * // "labels": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "pscConfig": {}, + * // "pscConnections": [], + * // "serviceClass": "my_serviceClass", + * // "updateTime": "my_updateTime" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -15938,54 +15949,58 @@ export namespace networkconnectivity_v1 { * @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$Serviceconnectionmaps$Setiampolicy, + create( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Serviceconnectionmaps$Setiampolicy, + create( + params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Serviceconnectionmaps$Setiampolicy, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Serviceconnectionmaps$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Serviceconnectionmaps$Setiampolicy, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + create( + callback: BodyResponseCallback + ): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectionmaps$Setiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectionmaps$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Serviceconnectionmaps$Setiampolicy; + {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create; options = {}; } @@ -15999,7 +16014,7 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( + url: (rootUrl + '/v1/{+parent}/serviceConnectionPolicies').replace( /([^:]\/)\/+/g, '$1' ), @@ -16009,22 +16024,22 @@ export namespace networkconnectivity_v1 { options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Deletes a single ServiceConnectionPolicy. * @example * ```js * // Before running the sample: @@ -16054,26 +16069,25 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = - * await networkconnectivity.projects.locations.serviceConnectionMaps.testIamPermissions( + * await networkconnectivity.projects.locations.serviceConnectionPolicies.delete( * { - * // 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: - * 'projects/my-project/locations/my-location/serviceConnectionMaps/my-serviceConnectionMap', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * // Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. + * etag: 'placeholder-value', + * // Required. The name of the ServiceConnectionPolicy to delete. + * name: 'projects/my-project/locations/my-location/serviceConnectionPolicies/my-serviceConnectionPolicie', + * // 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: 'placeholder-value', * }, * ); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -16089,58 +16103,58 @@ export namespace networkconnectivity_v1 { * @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$Serviceconnectionmaps$Testiampermissions, + delete( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Serviceconnectionmaps$Testiampermissions, + delete( + params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Projects$Locations$Serviceconnectionmaps$Testiampermissions, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Serviceconnectionmaps$Testiampermissions, + delete( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Serviceconnectionmaps$Testiampermissions, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + delete( + callback: BodyResponseCallback ): void; - testIamPermissions( + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectionmaps$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectionmaps$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Serviceconnectionmaps$Testiampermissions; + {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete; options = {}; } @@ -16154,152 +16168,179 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Serviceconnectionmaps$Create extends StandardParameters { - /** - * Required. The parent resource's name of the ServiceConnectionMap. ex. projects/123/locations/us-east1 - */ - 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. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/serviceConnectionMaps/foo') See https://google.aip.dev/122#resource-id-segments Unique per location. If one is not provided, one will be generated. - */ - serviceConnectionMapId?: string; /** - * Request body metadata - */ - requestBody?: Schema$ServiceConnectionMap; - } - export interface Params$Resource$Projects$Locations$Serviceconnectionmaps$Delete extends StandardParameters { - /** - * Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. - */ - etag?: string; - /** - * Required. The name of the ServiceConnectionMap to delete. - */ - 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). + * Gets details of a single ServiceConnectionPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkconnectivity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networkconnectivity = google.networkconnectivity('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networkconnectivity.projects.locations.serviceConnectionPolicies.get({ + * // Required. Name of the ServiceConnectionPolicy to get. + * name: 'projects/my-project/locations/my-location/serviceConnectionPolicies/my-serviceConnectionPolicie', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "autoCreatedSubnetInfo": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "infrastructure": "my_infrastructure", + * // "labels": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "pscConfig": {}, + * // "pscConnections": [], + * // "serviceClass": "my_serviceClass", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - requestId?: string; - } - export interface Params$Resource$Projects$Locations$Serviceconnectionmaps$Get extends StandardParameters { - /** - * Required. Name of the ServiceConnectionMap to get. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Serviceconnectionmaps$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$Serviceconnectionmaps$List extends StandardParameters { - /** - * A filter expression that filters the results listed in the response. - */ - filter?: string; - /** - * Sort the results by a certain order. - */ - orderBy?: string; - /** - * The maximum number of results per page that should be returned. - */ - pageSize?: number; - /** - * The page token. - */ - pageToken?: string; - /** - * Required. The parent resource's name. ex. projects/123/locations/us-east1 - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Serviceconnectionmaps$Patch extends StandardParameters { - /** - * Immutable. The name of a ServiceConnectionMap. Format: projects/{project\}/locations/{location\}/serviceConnectionMaps/{service_connection_map\} See: https://google.aip.dev/122#fields-representing-resource-names - */ - 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 ServiceConnectionMap 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; - - /** - * Request body metadata - */ - requestBody?: Schema$ServiceConnectionMap; - } - export interface Params$Resource$Projects$Locations$Serviceconnectionmaps$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; + get( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$SetIamPolicyRequest; - } - export interface Params$Resource$Projects$Locations$Serviceconnectionmaps$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; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$TestIamPermissionsRequest; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Projects$Locations$Serviceconnectionpolicies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = + options.rootUrl || 'https://networkconnectivity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Creates a new ServiceConnectionPolicy in a given project and location. + * Lists ServiceConnectionPolicies in a given project and location. * @example * ```js * // Before running the sample: @@ -16329,52 +16370,27 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = - * await networkconnectivity.projects.locations.serviceConnectionPolicies.create( + * await networkconnectivity.projects.locations.serviceConnectionPolicies.list( * { - * // Optional. The space where we search for a free range to create a subnetwork. It can be narrow down or pick a different space. This is in standard CIDR format. If not specified, “10.0.0.0/8” is used. Only eligible for IPV4_ONLY and IPV4_IPV6 subnetwork. - * 'autoSubnetworkConfig.allocRangeSpace': 'placeholder-value', - * // Optional. The requested IP stack for the subnetwork. If not specified, IPv4 is used. - * 'autoSubnetworkConfig.ipStack': 'placeholder-value', - * // Optional. The desired prefix length for the subnet's IP address range. E.g., 24 for a /24. The actual range is allocated from available space. If not specified, 24 is used. Only eligible for IPV4_ONLY and IPV4_IPV6 subnetwork. - * 'autoSubnetworkConfig.prefixLength': 'placeholder-value', - * // Required. The parent resource's name of the ServiceConnectionPolicy. ex. projects/123/locations/us-east1 + * // A filter expression that filters the results listed in the response. + * filter: 'placeholder-value', + * // Sort the results by a certain order. + * orderBy: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * pageSize: 'placeholder-value', + * // The page token. + * pageToken: 'placeholder-value', + * // Required. The parent resource's name. ex. projects/123/locations/us-east1 * parent: 'projects/my-project/locations/my-location', - * // 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: 'placeholder-value', - * // Optional. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/serviceConnectionPolicies/foo') See https://google.aip.dev/122#resource-id-segments Unique per location. - * serviceConnectionPolicyId: 'placeholder-value', - * // Optional. If this field is not set, USER_PROVIDED is the inferred value to use. - * subnetworkMode: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "autoCreatedSubnetInfo": {}, - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "etag": "my_etag", - * // "infrastructure": "my_infrastructure", - * // "labels": {}, - * // "name": "my_name", - * // "network": "my_network", - * // "pscConfig": {}, - * // "pscConnections": [], - * // "serviceClass": "my_serviceClass", - * // "updateTime": "my_updateTime" - * // } - * }, * }, * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "nextPageToken": "my_nextPageToken", + * // "serviceConnectionPolicies": [], + * // "unreachable": [] * // } * } * @@ -16390,58 +16406,62 @@ export namespace networkconnectivity_v1 { * @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$Serviceconnectionpolicies$Create, + list( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$List, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create, + list( + params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$List, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create, + list( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$List, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - create( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Serviceconnectionpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create; + {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create; + {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$List; options = {}; } @@ -16459,7 +16479,7 @@ export namespace networkconnectivity_v1 { /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -16470,17 +16490,19 @@ export namespace networkconnectivity_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes a single ServiceConnectionPolicy. + * Updates the parameters of a single ServiceConnectionPolicy. * @example * ```js * // Before running the sample: @@ -16510,14 +16532,33 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = - * await networkconnectivity.projects.locations.serviceConnectionPolicies.delete( + * await networkconnectivity.projects.locations.serviceConnectionPolicies.patch( * { - * // Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. - * etag: 'placeholder-value', - * // Required. The name of the ServiceConnectionPolicy to delete. + * // Immutable. The name of a ServiceConnectionPolicy. Format: projects/{project\}/locations/{location\}/serviceConnectionPolicies/{service_connection_policy\} See: https://google.aip.dev/122#fields-representing-resource-names * name: 'projects/my-project/locations/my-location/serviceConnectionPolicies/my-serviceConnectionPolicie', - * // 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). + * // 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: 'placeholder-value', + * // Optional. Field mask is used to specify the fields to be overwritten in the ServiceConnectionPolicy 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "autoCreatedSubnetInfo": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "infrastructure": "my_infrastructure", + * // "labels": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "pscConfig": {}, + * // "pscConnections": [], + * // "serviceClass": "my_serviceClass", + * // "updateTime": "my_updateTime" + * // } + * }, * }, * ); * console.log(res.data); @@ -16544,36 +16585,36 @@ export namespace networkconnectivity_v1 { * @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$Serviceconnectionpolicies$Delete, + patch( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete, + patch( + params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete, + patch( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete, + patch( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete, + patch( + params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch, callback: BodyResponseCallback ): void; - delete( + patch( callback: BodyResponseCallback ): void; - delete( + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete + | Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -16589,13 +16630,13 @@ export namespace networkconnectivity_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete; + {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete; + {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch; options = {}; } @@ -16610,7 +16651,7 @@ export namespace networkconnectivity_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'PATCH', apiVersion: '', }, options @@ -16629,159 +16670,113 @@ export namespace networkconnectivity_v1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create extends StandardParameters { /** - * Gets details of a single ServiceConnectionPolicy. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/networkconnectivity.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const networkconnectivity = google.networkconnectivity('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await networkconnectivity.projects.locations.serviceConnectionPolicies.get({ - * // Required. Name of the ServiceConnectionPolicy to get. - * name: 'projects/my-project/locations/my-location/serviceConnectionPolicies/my-serviceConnectionPolicie', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "autoCreatedSubnetInfo": {}, - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "etag": "my_etag", - * // "infrastructure": "my_infrastructure", - * // "labels": {}, - * // "name": "my_name", - * // "network": "my_network", - * // "pscConfig": {}, - * // "pscConnections": [], - * // "serviceClass": "my_serviceClass", - * // "updateTime": "my_updateTime" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. + * Optional. The space where we search for a free range to create a subnetwork. It can be narrow down or pick a different space. This is in standard CIDR format. If not specified, “10.0.0.0/8” is used. Only eligible for IPV4_ONLY and IPV4_IPV6 subnetwork. */ - get( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get; - let options = (optionsOrCallback || {}) as MethodOptions; + 'autoSubnetworkConfig.allocRangeSpace'?: string[]; + /** + * Optional. The requested IP stack for the subnetwork. If not specified, IPv4 is used. + */ + 'autoSubnetworkConfig.ipStack'?: string; + /** + * Optional. The desired prefix length for the subnet's IP address range. E.g., 24 for a /24. The actual range is allocated from available space. If not specified, 24 is used. Only eligible for IPV4_ONLY and IPV4_IPV6 subnetwork. + */ + 'autoSubnetworkConfig.prefixLength'?: number; + /** + * Required. The parent resource's name of the ServiceConnectionPolicy. ex. projects/123/locations/us-east1 + */ + 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. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/serviceConnectionPolicies/foo') See https://google.aip.dev/122#resource-id-segments Unique per location. + */ + serviceConnectionPolicyId?: string; + /** + * Optional. If this field is not set, USER_PROVIDED is the inferred value to use. + */ + subnetworkMode?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$ServiceConnectionPolicy; + } + export interface Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete extends StandardParameters { + /** + * Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. + */ + etag?: string; + /** + * Required. The name of the ServiceConnectionPolicy to delete. + */ + 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; + } + export interface Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get extends StandardParameters { + /** + * Required. Name of the ServiceConnectionPolicy to get. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Serviceconnectionpolicies$List extends StandardParameters { + /** + * A filter expression that filters the results listed in the response. + */ + filter?: string; + /** + * Sort the results by a certain order. + */ + orderBy?: string; + /** + * The maximum number of results per page that should be returned. + */ + pageSize?: number; + /** + * The page token. + */ + pageToken?: string; + /** + * Required. The parent resource's name. ex. projects/123/locations/us-east1 + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch extends StandardParameters { + /** + * Immutable. The name of a ServiceConnectionPolicy. Format: projects/{project\}/locations/{location\}/serviceConnectionPolicies/{service_connection_policy\} See: https://google.aip.dev/122#fields-representing-resource-names + */ + 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 ServiceConnectionPolicy 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; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$ServiceConnectionPolicy; + } - const rootUrl = - options.rootUrl || 'https://networkconnectivity.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Projects$Locations$Serviceconnectiontokens { + 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. + * Creates a new ServiceConnectionToken in a given project and location. * @example * ```js * // Before running the sample: @@ -16811,23 +16806,41 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = - * await networkconnectivity.projects.locations.serviceConnectionPolicies.getIamPolicy( + * await networkconnectivity.projects.locations.serviceConnectionTokens.create( * { - * // 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': 'placeholder-value', - * // 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: - * 'projects/my-project/locations/my-location/serviceConnectionPolicies/my-serviceConnectionPolicie', + * // Required. The parent resource's name of the ServiceConnectionToken. ex. projects/123/locations/us-east1 + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // Optional. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/ServiceConnectionTokens/foo') See https://google.aip.dev/122#resource-id-segments Unique per location. If one is not provided, one will be generated. + * serviceConnectionTokenId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "expireTime": "my_expireTime", + * // "labels": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "token": "my_token", + * // "updateTime": "my_updateTime" + * // } + * }, * }, * ); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -16843,54 +16856,58 @@ export namespace networkconnectivity_v1 { * @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$Serviceconnectionpolicies$Getiampolicy, + create( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Create, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Getiampolicy, + create( + params?: Params$Resource$Projects$Locations$Serviceconnectiontokens$Create, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Getiampolicy, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Getiampolicy, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Create, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + create( + callback: BodyResponseCallback + ): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectionpolicies$Getiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Serviceconnectiontokens$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Serviceconnectiontokens$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Getiampolicy; + {} as Params$Resource$Projects$Locations$Serviceconnectiontokens$Create; options = {}; } @@ -16904,32 +16921,32 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( + url: (rootUrl + '/v1/{+parent}/serviceConnectionTokens').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists ServiceConnectionPolicies in a given project and location. + * Deletes a single ServiceConnectionToken. * @example * ```js * // Before running the sample: @@ -16959,27 +16976,25 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = - * await networkconnectivity.projects.locations.serviceConnectionPolicies.list( + * await networkconnectivity.projects.locations.serviceConnectionTokens.delete( * { - * // A filter expression that filters the results listed in the response. - * filter: 'placeholder-value', - * // Sort the results by a certain order. - * orderBy: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * pageSize: 'placeholder-value', - * // The page token. - * pageToken: 'placeholder-value', - * // Required. The parent resource's name. ex. projects/123/locations/us-east1 - * parent: 'projects/my-project/locations/my-location', + * // Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. + * etag: 'placeholder-value', + * // Required. The name of the ServiceConnectionToken to delete. + * name: 'projects/my-project/locations/my-location/serviceConnectionTokens/my-serviceConnectionToken', + * // 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: 'placeholder-value', * }, * ); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "serviceConnectionPolicies": [], - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -16995,62 +17010,58 @@ export namespace networkconnectivity_v1 { * @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$Serviceconnectionpolicies$List, + delete( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$List, + delete( + params?: Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$List, + delete( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + callback: BodyResponseCallback ): void; - list( + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectionpolicies$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$List; + {}) as Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$List; + {} as Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete; options = {}; } @@ -17064,34 +17075,29 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/serviceConnectionPolicies').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates the parameters of a single ServiceConnectionPolicy. + * Gets details of a single ServiceConnectionToken. * @example * ```js * // Before running the sample: @@ -17121,44 +17127,23 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = - * await networkconnectivity.projects.locations.serviceConnectionPolicies.patch( - * { - * // Immutable. The name of a ServiceConnectionPolicy. Format: projects/{project\}/locations/{location\}/serviceConnectionPolicies/{service_connection_policy\} See: https://google.aip.dev/122#fields-representing-resource-names - * name: 'projects/my-project/locations/my-location/serviceConnectionPolicies/my-serviceConnectionPolicie', - * // 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: 'placeholder-value', - * // Optional. Field mask is used to specify the fields to be overwritten in the ServiceConnectionPolicy 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: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "autoCreatedSubnetInfo": {}, - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "etag": "my_etag", - * // "infrastructure": "my_infrastructure", - * // "labels": {}, - * // "name": "my_name", - * // "network": "my_network", - * // "pscConfig": {}, - * // "pscConnections": [], - * // "serviceClass": "my_serviceClass", - * // "updateTime": "my_updateTime" - * // } - * }, - * }, - * ); + * await networkconnectivity.projects.locations.serviceConnectionTokens.get({ + * // Required. Name of the ServiceConnectionToken to get. + * name: 'projects/my-project/locations/my-location/serviceConnectionTokens/my-serviceConnectionToken', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "expireTime": "my_expireTime", + * // "labels": {}, * // "name": "my_name", - * // "response": {} + * // "network": "my_network", + * // "token": "my_token", + * // "updateTime": "my_updateTime" * // } * } * @@ -17174,58 +17159,56 @@ export namespace networkconnectivity_v1 { * @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$Serviceconnectionpolicies$Patch, + get( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch, + get( + params?: Params$Resource$Projects$Locations$Serviceconnectiontokens$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch, + get( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Get, + callback: BodyResponseCallback ): void; - patch( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Serviceconnectiontokens$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch; + {}) as Params$Resource$Projects$Locations$Serviceconnectiontokens$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch; + {} as Params$Resource$Projects$Locations$Serviceconnectiontokens$Get; options = {}; } @@ -17240,7 +17223,7 @@ export namespace networkconnectivity_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -17251,17 +17234,17 @@ export namespace networkconnectivity_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Lists ServiceConnectionTokens in a given project and location. * @example * ```js * // Before running the sample: @@ -17291,30 +17274,25 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = - * await networkconnectivity.projects.locations.serviceConnectionPolicies.setIamPolicy( - * { - * // 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: - * 'projects/my-project/locations/my-location/serviceConnectionPolicies/my-serviceConnectionPolicie', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, - * }, - * ); + * await networkconnectivity.projects.locations.serviceConnectionTokens.list({ + * // A filter expression that filters the results listed in the response. + * filter: 'placeholder-value', + * // Sort the results by a certain order. + * orderBy: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * pageSize: 'placeholder-value', + * // The page token. + * pageToken: 'placeholder-value', + * // Required. The parent resource's name. ex. projects/123/locations/us-east1 + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "nextPageToken": "my_nextPageToken", + * // "serviceConnectionTokens": [], + * // "unreachable": [] * // } * } * @@ -17330,54 +17308,62 @@ export namespace networkconnectivity_v1 { * @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$Serviceconnectionpolicies$Setiampolicy, + list( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$List, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Setiampolicy, + list( + params?: Params$Resource$Projects$Locations$Serviceconnectiontokens$List, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Setiampolicy, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Setiampolicy, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Serviceconnectiontokens$List, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectionpolicies$Setiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Serviceconnectiontokens$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Serviceconnectiontokens$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Setiampolicy; + {} as Params$Resource$Projects$Locations$Serviceconnectiontokens$List; options = {}; } @@ -17391,32 +17377,103 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( + url: (rootUrl + '/v1/{+parent}/serviceConnectionTokens').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + + export interface Params$Resource$Projects$Locations$Serviceconnectiontokens$Create extends StandardParameters { + /** + * Required. The parent resource's name of the ServiceConnectionToken. ex. projects/123/locations/us-east1 + */ + 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. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/ServiceConnectionTokens/foo') See https://google.aip.dev/122#resource-id-segments Unique per location. If one is not provided, one will be generated. + */ + serviceConnectionTokenId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ServiceConnectionToken; + } + export interface Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete extends StandardParameters { + /** + * Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. + */ + etag?: string; + /** + * Required. The name of the ServiceConnectionToken to delete. + */ + 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; + } + export interface Params$Resource$Projects$Locations$Serviceconnectiontokens$Get extends StandardParameters { + /** + * Required. Name of the ServiceConnectionToken to get. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Serviceconnectiontokens$List extends StandardParameters { + /** + * A filter expression that filters the results listed in the response. + */ + filter?: string; + /** + * Sort the results by a certain order. + */ + orderBy?: string; + /** + * The maximum number of results per page that should be returned. + */ + pageSize?: number; + /** + * The page token. + */ + pageToken?: string; + /** + * Required. The parent resource's name. ex. projects/123/locations/us-east1 + */ + parent?: string; + } + + export class Resource$Projects$Locations$Spokes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * 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. + * Creates a Network Connectivity Center spoke. * @example * ```js * // Before running the sample: @@ -17445,27 +17502,48 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networkconnectivity.projects.locations.serviceConnectionPolicies.testIamPermissions( - * { - * // 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: - * 'projects/my-project/locations/my-location/serviceConnectionPolicies/my-serviceConnectionPolicie', + * const res = await networkconnectivity.projects.locations.spokes.create({ + * // Required. The parent resource. + * parent: 'projects/my-project/locations/my-location', + * // Optional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to see whether the original operation was received. If it was, the server ignores the second request. This behavior prevents clients from mistakenly 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: 'placeholder-value', + * // Required. Unique id for the spoke to create. + * spokeId: 'placeholder-value', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }, - * ); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "fieldPathsPendingUpdate": [], + * // "group": "my_group", + * // "hub": "my_hub", + * // "labels": {}, + * // "linkedInterconnectAttachments": {}, + * // "linkedProducerVpcNetwork": {}, + * // "linkedRouterApplianceInstances": {}, + * // "linkedVpcNetwork": {}, + * // "linkedVpnTunnels": {}, + * // "name": "my_name", + * // "reasons": [], + * // "spokeType": "my_spokeType", + * // "state": "my_state", + * // "uniqueId": "my_uniqueId", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -17481,58 +17559,57 @@ export namespace networkconnectivity_v1 { * @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$Serviceconnectionpolicies$Testiampermissions, + create( + params: Params$Resource$Projects$Locations$Spokes$Create, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Testiampermissions, + create( + params?: Params$Resource$Projects$Locations$Spokes$Create, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Testiampermissions, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Spokes$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Testiampermissions, + create( + params: Params$Resource$Projects$Locations$Spokes$Create, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Serviceconnectionpolicies$Testiampermissions, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Spokes$Create, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + create( + callback: BodyResponseCallback ): void; - testIamPermissions( + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectionpolicies$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Spokes$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Spokes$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Serviceconnectionpolicies$Testiampermissions; + params = {} as Params$Resource$Projects$Locations$Spokes$Create; options = {}; } @@ -17546,7 +17623,7 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( + url: (rootUrl + '/v1/{+parent}/spokes').replace( /([^:]\/)\/+/g, '$1' ), @@ -17556,158 +17633,22 @@ export namespace networkconnectivity_v1 { options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Serviceconnectionpolicies$Create extends StandardParameters { - /** - * Optional. The space where we search for a free range to create a subnetwork. It can be narrow down or pick a different space. This is in standard CIDR format. If not specified, “10.0.0.0/8” is used. Only eligible for IPV4_ONLY and IPV4_IPV6 subnetwork. - */ - 'autoSubnetworkConfig.allocRangeSpace'?: string[]; - /** - * Optional. The requested IP stack for the subnetwork. If not specified, IPv4 is used. - */ - 'autoSubnetworkConfig.ipStack'?: string; - /** - * Optional. The desired prefix length for the subnet's IP address range. E.g., 24 for a /24. The actual range is allocated from available space. If not specified, 24 is used. Only eligible for IPV4_ONLY and IPV4_IPV6 subnetwork. - */ - 'autoSubnetworkConfig.prefixLength'?: number; - /** - * Required. The parent resource's name of the ServiceConnectionPolicy. ex. projects/123/locations/us-east1 - */ - 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. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/serviceConnectionPolicies/foo') See https://google.aip.dev/122#resource-id-segments Unique per location. - */ - serviceConnectionPolicyId?: string; - /** - * Optional. If this field is not set, USER_PROVIDED is the inferred value to use. - */ - subnetworkMode?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ServiceConnectionPolicy; - } - export interface Params$Resource$Projects$Locations$Serviceconnectionpolicies$Delete extends StandardParameters { - /** - * Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. - */ - etag?: string; - /** - * Required. The name of the ServiceConnectionPolicy to delete. - */ - 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; - } - export interface Params$Resource$Projects$Locations$Serviceconnectionpolicies$Get extends StandardParameters { - /** - * Required. Name of the ServiceConnectionPolicy to get. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Serviceconnectionpolicies$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$Serviceconnectionpolicies$List extends StandardParameters { - /** - * A filter expression that filters the results listed in the response. - */ - filter?: string; - /** - * Sort the results by a certain order. - */ - orderBy?: string; - /** - * The maximum number of results per page that should be returned. - */ - pageSize?: number; - /** - * The page token. - */ - pageToken?: string; - /** - * Required. The parent resource's name. ex. projects/123/locations/us-east1 - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Serviceconnectionpolicies$Patch extends StandardParameters { - /** - * Immutable. The name of a ServiceConnectionPolicy. Format: projects/{project\}/locations/{location\}/serviceConnectionPolicies/{service_connection_policy\} See: https://google.aip.dev/122#fields-representing-resource-names - */ - 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 ServiceConnectionPolicy 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; - - /** - * Request body metadata - */ - requestBody?: Schema$ServiceConnectionPolicy; - } - export interface Params$Resource$Projects$Locations$Serviceconnectionpolicies$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$Serviceconnectionpolicies$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$Serviceconnectiontokens { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new ServiceConnectionToken in a given project and location. + * Deletes a Network Connectivity Center spoke. * @example * ```js * // Before running the sample: @@ -17736,33 +17677,12 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networkconnectivity.projects.locations.serviceConnectionTokens.create( - * { - * // Required. The parent resource's name of the ServiceConnectionToken. ex. projects/123/locations/us-east1 - * parent: 'projects/my-project/locations/my-location', - * // 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: 'placeholder-value', - * // Optional. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/ServiceConnectionTokens/foo') See https://google.aip.dev/122#resource-id-segments Unique per location. If one is not provided, one will be generated. - * serviceConnectionTokenId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "etag": "my_etag", - * // "expireTime": "my_expireTime", - * // "labels": {}, - * // "name": "my_name", - * // "network": "my_network", - * // "token": "my_token", - * // "updateTime": "my_updateTime" - * // } - * }, - * }, - * ); + * const res = await networkconnectivity.projects.locations.spokes.delete({ + * // Required. The name of the spoke to delete. + * name: 'projects/my-project/locations/my-location/spokes/my-spoke', + * // Optional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to see whether the original operation was received. If it was, the server ignores the second request. This behavior prevents clients from mistakenly 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: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -17787,36 +17707,36 @@ export namespace networkconnectivity_v1 { * @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$Serviceconnectiontokens$Create, + delete( + params: Params$Resource$Projects$Locations$Spokes$Delete, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Serviceconnectiontokens$Create, + delete( + params?: Params$Resource$Projects$Locations$Spokes$Delete, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Create, + delete( + params: Params$Resource$Projects$Locations$Spokes$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Create, + delete( + params: Params$Resource$Projects$Locations$Spokes$Delete, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Create, + delete( + params: Params$Resource$Projects$Locations$Spokes$Delete, callback: BodyResponseCallback ): void; - create( + delete( callback: BodyResponseCallback ): void; - create( + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectiontokens$Create + | Params$Resource$Projects$Locations$Spokes$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -17832,13 +17752,12 @@ export namespace networkconnectivity_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectiontokens$Create; + {}) as Params$Resource$Projects$Locations$Spokes$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Serviceconnectiontokens$Create; + params = {} as Params$Resource$Projects$Locations$Spokes$Delete; options = {}; } @@ -17852,18 +17771,15 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/serviceConnectionTokens').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -17877,7 +17793,7 @@ export namespace networkconnectivity_v1 { } /** - * Deletes a single ServiceConnectionToken. + * Gets details about a Network Connectivity Center spoke. * @example * ```js * // Before running the sample: @@ -17906,26 +17822,32 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networkconnectivity.projects.locations.serviceConnectionTokens.delete( - * { - * // Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. - * etag: 'placeholder-value', - * // Required. The name of the ServiceConnectionToken to delete. - * name: 'projects/my-project/locations/my-location/serviceConnectionTokens/my-serviceConnectionToken', - * // 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: 'placeholder-value', - * }, - * ); + * const res = await networkconnectivity.projects.locations.spokes.get({ + * // Required. The name of the spoke resource. + * name: 'projects/my-project/locations/my-location/spokes/my-spoke', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "fieldPathsPendingUpdate": [], + * // "group": "my_group", + * // "hub": "my_hub", + * // "labels": {}, + * // "linkedInterconnectAttachments": {}, + * // "linkedProducerVpcNetwork": {}, + * // "linkedRouterApplianceInstances": {}, + * // "linkedVpcNetwork": {}, + * // "linkedVpnTunnels": {}, * // "name": "my_name", - * // "response": {} + * // "reasons": [], + * // "spokeType": "my_spokeType", + * // "state": "my_state", + * // "uniqueId": "my_uniqueId", + * // "updateTime": "my_updateTime" * // } * } * @@ -17941,58 +17863,53 @@ export namespace networkconnectivity_v1 { * @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$Serviceconnectiontokens$Delete, + get( + params: Params$Resource$Projects$Locations$Spokes$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete, + get( + params?: Params$Resource$Projects$Locations$Spokes$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Spokes$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Spokes$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Spokes$Get, + callback: BodyResponseCallback ): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Spokes$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete; + {}) as Params$Resource$Projects$Locations$Spokes$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete; + params = {} as Params$Resource$Projects$Locations$Spokes$Get; options = {}; } @@ -18007,7 +17924,7 @@ export namespace networkconnectivity_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options @@ -18018,17 +17935,17 @@ export namespace networkconnectivity_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets details of a single ServiceConnectionToken. + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. * @example * ```js * // Before running the sample: @@ -18057,24 +17974,20 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networkconnectivity.projects.locations.serviceConnectionTokens.get({ - * // Required. Name of the ServiceConnectionToken to get. - * name: 'projects/my-project/locations/my-location/serviceConnectionTokens/my-serviceConnectionToken', - * }); + * const res = await networkconnectivity.projects.locations.spokes.getIamPolicy({ + * // 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': 'placeholder-value', + * // 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: 'projects/my-project/locations/my-location/spokes/my-spoke', + * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "description": "my_description", + * // "auditConfigs": [], + * // "bindings": [], * // "etag": "my_etag", - * // "expireTime": "my_expireTime", - * // "labels": {}, - * // "name": "my_name", - * // "network": "my_network", - * // "token": "my_token", - * // "updateTime": "my_updateTime" + * // "version": 0 * // } * } * @@ -18090,56 +18003,53 @@ export namespace networkconnectivity_v1 { * @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$Serviceconnectiontokens$Get, + getIamPolicy( + params: Params$Resource$Projects$Locations$Spokes$Getiampolicy, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Serviceconnectiontokens$Get, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Spokes$Getiampolicy, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Get, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Spokes$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Spokes$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$Get, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Spokes$Getiampolicy, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectiontokens$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Spokes$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectiontokens$Get; + {}) as Params$Resource$Projects$Locations$Spokes$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Serviceconnectiontokens$Get; + params = {} as Params$Resource$Projects$Locations$Spokes$Getiampolicy; options = {}; } @@ -18153,29 +18063,32 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists ServiceConnectionTokens in a given project and location. + * Lists the Network Connectivity Center spokes in a specified project and location. * @example * ```js * // Before running the sample: @@ -18204,25 +18117,24 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networkconnectivity.projects.locations.serviceConnectionTokens.list({ - * // A filter expression that filters the results listed in the response. - * filter: 'placeholder-value', - * // Sort the results by a certain order. - * orderBy: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * pageSize: 'placeholder-value', - * // The page token. - * pageToken: 'placeholder-value', - * // Required. The parent resource's name. ex. projects/123/locations/us-east1 - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = await networkconnectivity.projects.locations.spokes.list({ + * // An expression that filters the list of results. + * filter: 'placeholder-value', + * // Sort the results by a certain order. + * orderBy: 'placeholder-value', + * // The maximum number of results to return per page. + * pageSize: 'placeholder-value', + * // The page token. + * pageToken: 'placeholder-value', + * // Required. The parent resource. + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "serviceConnectionTokens": [], + * // "spokes": [], * // "unreachable": [] * // } * } @@ -18240,61 +18152,52 @@ export namespace networkconnectivity_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$List, + params: Params$Resource$Projects$Locations$Spokes$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Serviceconnectiontokens$List, + params?: Params$Resource$Projects$Locations$Spokes$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; list( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$List, + params: Params$Resource$Projects$Locations$Spokes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Serviceconnectiontokens$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Spokes$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Spokes$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Serviceconnectiontokens$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Spokes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Serviceconnectiontokens$List; + {}) as Params$Resource$Projects$Locations$Spokes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Serviceconnectiontokens$List; + params = {} as Params$Resource$Projects$Locations$Spokes$List; options = {}; } @@ -18308,7 +18211,7 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/serviceConnectionTokens').replace( + url: (rootUrl + '/v1/{+parent}/spokes').replace( /([^:]\/)\/+/g, '$1' ), @@ -18323,88 +18226,17 @@ export namespace networkconnectivity_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Serviceconnectiontokens$Create extends StandardParameters { - /** - * Required. The parent resource's name of the ServiceConnectionToken. ex. projects/123/locations/us-east1 - */ - 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. Resource ID (i.e. 'foo' in '[...]/projects/p/locations/l/ServiceConnectionTokens/foo') See https://google.aip.dev/122#resource-id-segments Unique per location. If one is not provided, one will be generated. - */ - serviceConnectionTokenId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ServiceConnectionToken; - } - export interface Params$Resource$Projects$Locations$Serviceconnectiontokens$Delete extends StandardParameters { - /** - * Optional. The etag is computed by the server, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. - */ - etag?: string; - /** - * Required. The name of the ServiceConnectionToken to delete. - */ - 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; - } - export interface Params$Resource$Projects$Locations$Serviceconnectiontokens$Get extends StandardParameters { - /** - * Required. Name of the ServiceConnectionToken to get. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Serviceconnectiontokens$List extends StandardParameters { - /** - * A filter expression that filters the results listed in the response. - */ - filter?: string; - /** - * Sort the results by a certain order. - */ - orderBy?: string; - /** - * The maximum number of results per page that should be returned. - */ - pageSize?: number; - /** - * The page token. - */ - pageToken?: string; - /** - * Required. The parent resource's name. ex. projects/123/locations/us-east1 - */ - parent?: string; - } - - export class Resource$Projects$Locations$Spokes { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a Network Connectivity Center spoke. + * Updates the parameters of a Network Connectivity Center spoke. * @example * ```js * // Before running the sample: @@ -18433,13 +18265,13 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networkconnectivity.projects.locations.spokes.create({ - * // Required. The parent resource. - * parent: 'projects/my-project/locations/my-location', + * const res = await networkconnectivity.projects.locations.spokes.patch({ + * // Immutable. The name of the spoke. Spoke names must be unique. They use the following form: `projects/{project_number\}/locations/{region\}/spokes/{spoke_id\}` + * name: 'projects/my-project/locations/my-location/spokes/my-spoke', * // Optional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to see whether the original operation was received. If it was, the server ignores the second request. This behavior prevents clients from mistakenly 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: 'placeholder-value', - * // Required. Unique id for the spoke to create. - * spokeId: 'placeholder-value', + * // Optional. In the case of an update to an existing spoke, field mask is used to specify the fields to be overwritten. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it is in the mask. If the user does not provide a mask, then all fields are overwritten. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -18490,36 +18322,36 @@ export namespace networkconnectivity_v1 { * @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$Spokes$Create, + patch( + params: Params$Resource$Projects$Locations$Spokes$Patch, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Spokes$Create, + patch( + params?: Params$Resource$Projects$Locations$Spokes$Patch, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Projects$Locations$Spokes$Create, + patch( + params: Params$Resource$Projects$Locations$Spokes$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Spokes$Create, + patch( + params: Params$Resource$Projects$Locations$Spokes$Patch, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Spokes$Create, + patch( + params: Params$Resource$Projects$Locations$Spokes$Patch, callback: BodyResponseCallback ): void; - create( + patch( callback: BodyResponseCallback ): void; - create( + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Spokes$Create + | Params$Resource$Projects$Locations$Spokes$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -18535,12 +18367,12 @@ export namespace networkconnectivity_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Spokes$Create; + {}) as Params$Resource$Projects$Locations$Spokes$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Spokes$Create; + params = {} as Params$Resource$Projects$Locations$Spokes$Patch; options = {}; } @@ -18554,18 +18386,15 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/spokes').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -18579,7 +18408,7 @@ export namespace networkconnectivity_v1 { } /** - * Deletes a Network Connectivity Center spoke. + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. * @example * ```js * // Before running the sample: @@ -18608,21 +18437,27 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networkconnectivity.projects.locations.spokes.delete({ - * // Required. The name of the spoke to delete. - * name: 'projects/my-project/locations/my-location/spokes/my-spoke', - * // Optional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to see whether the original operation was received. If it was, the server ignores the second request. This behavior prevents clients from mistakenly 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: 'placeholder-value', + * const res = await networkconnectivity.projects.locations.spokes.setIamPolicy({ + * // 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: 'projects/my-project/locations/my-location/spokes/my-spoke', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -18638,57 +18473,53 @@ export namespace networkconnectivity_v1 { * @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$Spokes$Delete, + setIamPolicy( + params: Params$Resource$Projects$Locations$Spokes$Setiampolicy, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Spokes$Delete, + setIamPolicy( + params?: Params$Resource$Projects$Locations$Spokes$Setiampolicy, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Spokes$Delete, + ): Promise>; + setIamPolicy( + params: Params$Resource$Projects$Locations$Spokes$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Spokes$Delete, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Spokes$Delete, - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; - delete( - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Projects$Locations$Spokes$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( + setIamPolicy( + params: Params$Resource$Projects$Locations$Spokes$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Spokes$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Spokes$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Spokes$Delete; + {}) as Params$Resource$Projects$Locations$Spokes$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Spokes$Delete; + params = {} as Params$Resource$Projects$Locations$Spokes$Setiampolicy; options = {}; } @@ -18702,29 +18533,32 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets details about a Network Connectivity Center spoke. + * 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. * @example * ```js * // Before running the sample: @@ -18753,32 +18587,24 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networkconnectivity.projects.locations.spokes.get({ - * // Required. The name of the spoke resource. - * name: 'projects/my-project/locations/my-location/spokes/my-spoke', - * }); + * const res = + * await networkconnectivity.projects.locations.spokes.testIamPermissions({ + * // 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: 'projects/my-project/locations/my-location/spokes/my-spoke', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "etag": "my_etag", - * // "fieldPathsPendingUpdate": [], - * // "group": "my_group", - * // "hub": "my_hub", - * // "labels": {}, - * // "linkedInterconnectAttachments": {}, - * // "linkedProducerVpcNetwork": {}, - * // "linkedRouterApplianceInstances": {}, - * // "linkedVpcNetwork": {}, - * // "linkedVpnTunnels": {}, - * // "name": "my_name", - * // "reasons": [], - * // "spokeType": "my_spokeType", - * // "state": "my_state", - * // "uniqueId": "my_uniqueId", - * // "updateTime": "my_updateTime" + * // "permissions": [] * // } * } * @@ -18794,89 +18620,213 @@ export namespace networkconnectivity_v1 { * @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$Spokes$Get, + testIamPermissions( + params: Params$Resource$Projects$Locations$Spokes$Testiampermissions, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Spokes$Get, + testIamPermissions( + params?: Params$Resource$Projects$Locations$Spokes$Testiampermissions, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Spokes$Get, + ): Promise>; + testIamPermissions( + params: Params$Resource$Projects$Locations$Spokes$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Spokes$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Spokes$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Spokes$Get, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Spokes$Testiampermissions, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Projects$Locations$Spokes$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Spokes$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Spokes$Get; + {}) as Params$Resource$Projects$Locations$Spokes$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Spokes$Get; - options = {}; - } + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Spokes$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkconnectivity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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$Spokes$Create extends StandardParameters { + /** + * Required. The parent resource. + */ + parent?: string; + /** + * Optional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to see whether the original operation was received. If it was, the server ignores the second request. This behavior prevents clients from mistakenly 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. Unique id for the spoke to create. + */ + spokeId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Spoke; + } + export interface Params$Resource$Projects$Locations$Spokes$Delete extends StandardParameters { + /** + * Required. The name of the spoke to delete. + */ + name?: string; + /** + * Optional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to see whether the original operation was received. If it was, the server ignores the second request. This behavior prevents clients from mistakenly 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$Spokes$Get extends StandardParameters { + /** + * Required. The name of the spoke resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Spokes$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$Spokes$List extends StandardParameters { + /** + * An expression that filters the list of results. + */ + filter?: string; + /** + * Sort the results by a certain order. + */ + orderBy?: string; + /** + * The maximum number of results to return per page. + */ + pageSize?: number; + /** + * The page token. + */ + pageToken?: string; + /** + * Required. The parent resource. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Spokes$Patch extends StandardParameters { + /** + * Immutable. The name of the spoke. Spoke names must be unique. They use the following form: `projects/{project_number\}/locations/{region\}/spokes/{spoke_id\}` + */ + name?: string; + /** + * Optional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to see whether the original operation was received. If it was, the server ignores the second request. This behavior prevents clients from mistakenly 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. In the case of an update to an existing spoke, field mask is used to specify the fields to be overwritten. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it is in the mask. If the user does not provide a mask, then all fields are overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Spoke; + } + export interface Params$Resource$Projects$Locations$Spokes$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$Spokes$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; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$TestIamPermissionsRequest; + } - const rootUrl = - options.rootUrl || 'https://networkconnectivity.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Projects$Locations$Transports { + 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. + * Creates a new Transport in a given project and location. * @example * ```js * // Before running the sample: @@ -18905,20 +18855,46 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networkconnectivity.projects.locations.spokes.getIamPolicy({ - * // 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': 'placeholder-value', - * // 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: 'projects/my-project/locations/my-location/spokes/my-spoke', + * const res = await networkconnectivity.projects.locations.transports.create({ + * // Required. Value for parent. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // Required. Id of the requesting object + * transportId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advertisedRoutes": [], + * // "bandwidth": "my_bandwidth", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "generatedActivationKey": "my_generatedActivationKey", + * // "labels": {}, + * // "mtuLimit": 0, + * // "name": "my_name", + * // "network": "my_network", + * // "peeringNetwork": "my_peeringNetwork", + * // "providedActivationKey": "my_providedActivationKey", + * // "remoteAccountId": "my_remoteAccountId", + * // "remoteProfile": "my_remoteProfile", + * // "stackType": "my_stackType", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -18934,53 +18910,57 @@ export namespace networkconnectivity_v1 { * @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$Spokes$Getiampolicy, + create( + params: Params$Resource$Projects$Locations$Transports$Create, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Spokes$Getiampolicy, + create( + params?: Params$Resource$Projects$Locations$Transports$Create, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Spokes$Getiampolicy, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Transports$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Spokes$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Transports$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Spokes$Getiampolicy, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Transports$Create, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + create( + callback: BodyResponseCallback + ): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Spokes$Getiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Transports$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Spokes$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Transports$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Spokes$Getiampolicy; + params = {} as Params$Resource$Projects$Locations$Transports$Create; options = {}; } @@ -18994,32 +18974,32 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( + url: (rootUrl + '/v1/{+parent}/transports').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the Network Connectivity Center spokes in a specified project and location. + * Deletes a single Transport. * @example * ```js * // Before running the sample: @@ -19048,25 +19028,21 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networkconnectivity.projects.locations.spokes.list({ - * // An expression that filters the list of results. - * filter: 'placeholder-value', - * // Sort the results by a certain order. - * orderBy: 'placeholder-value', - * // The maximum number of results to return per page. - * pageSize: 'placeholder-value', - * // The page token. - * pageToken: 'placeholder-value', - * // Required. The parent resource. - * parent: 'projects/my-project/locations/my-location', + * const res = await networkconnectivity.projects.locations.transports.delete({ + * // Required. Name of the resource. + * name: 'projects/my-project/locations/my-location/transports/my-transport', + * // 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: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "spokes": [], - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -19082,53 +19058,57 @@ export namespace networkconnectivity_v1 { * @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$Spokes$List, + delete( + params: Params$Resource$Projects$Locations$Transports$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Spokes$List, + delete( + params?: Params$Resource$Projects$Locations$Transports$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Spokes$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Transports$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Spokes$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Transports$Delete, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Spokes$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Transports$Delete, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + delete( + callback: BodyResponseCallback + ): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Spokes$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Transports$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Spokes$List; + {}) as Params$Resource$Projects$Locations$Transports$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Spokes$List; + params = {} as Params$Resource$Projects$Locations$Transports$Delete; options = {}; } @@ -19142,32 +19122,29 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/spokes').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the parameters of a Network Connectivity Center spoke. + * Gets details of a single Transport. * @example * ```js * // Before running the sample: @@ -19196,48 +19173,30 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networkconnectivity.projects.locations.spokes.patch({ - * // Immutable. The name of the spoke. Spoke names must be unique. They use the following form: `projects/{project_number\}/locations/{region\}/spokes/{spoke_id\}` - * name: 'projects/my-project/locations/my-location/spokes/my-spoke', - * // Optional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to see whether the original operation was received. If it was, the server ignores the second request. This behavior prevents clients from mistakenly 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: 'placeholder-value', - * // Optional. In the case of an update to an existing spoke, field mask is used to specify the fields to be overwritten. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it is in the mask. If the user does not provide a mask, then all fields are overwritten. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "etag": "my_etag", - * // "fieldPathsPendingUpdate": [], - * // "group": "my_group", - * // "hub": "my_hub", - * // "labels": {}, - * // "linkedInterconnectAttachments": {}, - * // "linkedProducerVpcNetwork": {}, - * // "linkedRouterApplianceInstances": {}, - * // "linkedVpcNetwork": {}, - * // "linkedVpnTunnels": {}, - * // "name": "my_name", - * // "reasons": [], - * // "spokeType": "my_spokeType", - * // "state": "my_state", - * // "uniqueId": "my_uniqueId", - * // "updateTime": "my_updateTime" - * // } - * }, + * const res = await networkconnectivity.projects.locations.transports.get({ + * // Required. Name of the resource. + * name: 'projects/my-project/locations/my-location/transports/my-transport', * }); * console.log(res.data); * * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // { + * // "advertisedRoutes": [], + * // "bandwidth": "my_bandwidth", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "generatedActivationKey": "my_generatedActivationKey", + * // "labels": {}, + * // "mtuLimit": 0, * // "name": "my_name", - * // "response": {} + * // "network": "my_network", + * // "peeringNetwork": "my_peeringNetwork", + * // "providedActivationKey": "my_providedActivationKey", + * // "remoteAccountId": "my_remoteAccountId", + * // "remoteProfile": "my_remoteProfile", + * // "stackType": "my_stackType", + * // "state": "my_state", + * // "updateTime": "my_updateTime" * // } * } * @@ -19253,57 +19212,53 @@ export namespace networkconnectivity_v1 { * @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$Spokes$Patch, + get( + params: Params$Resource$Projects$Locations$Transports$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Spokes$Patch, + get( + params?: Params$Resource$Projects$Locations$Transports$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Spokes$Patch, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Transports$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Spokes$Patch, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Projects$Locations$Spokes$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Transports$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Transports$Get, + callback: BodyResponseCallback ): void; - patch( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Spokes$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Transports$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Spokes$Patch; + {}) as Params$Resource$Projects$Locations$Transports$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Spokes$Patch; + params = {} as Params$Resource$Projects$Locations$Transports$Get; options = {}; } @@ -19318,7 +19273,7 @@ export namespace networkconnectivity_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -19329,17 +19284,17 @@ export namespace networkconnectivity_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Lists Transports in a given project and location. * @example * ```js * // Before running the sample: @@ -19368,27 +19323,25 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networkconnectivity.projects.locations.spokes.setIamPolicy({ - * // 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: 'projects/my-project/locations/my-location/spokes/my-spoke', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, + * const res = await networkconnectivity.projects.locations.transports.list({ + * // Optional. Filtering results. + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListTransportsRequest. + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "nextPageToken": "my_nextPageToken", + * // "transports": [], + * // "unreachable": [] * // } * } * @@ -19404,53 +19357,55 @@ export namespace networkconnectivity_v1 { * @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$Spokes$Setiampolicy, + list( + params: Params$Resource$Projects$Locations$Transports$List, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Spokes$Setiampolicy, + list( + params?: Params$Resource$Projects$Locations$Transports$List, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Spokes$Setiampolicy, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Transports$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Spokes$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Transports$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Spokes$Setiampolicy, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Transports$List, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Spokes$Setiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Transports$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Spokes$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Transports$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Spokes$Setiampolicy; + params = {} as Params$Resource$Projects$Locations$Transports$List; options = {}; } @@ -19464,32 +19419,32 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( + url: (rootUrl + '/v1/{+parent}/transports').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Updates the parameters of a single Transport. * @example * ```js * // Before running the sample: @@ -19518,24 +19473,46 @@ export namespace networkconnectivity_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networkconnectivity.projects.locations.spokes.testIamPermissions({ - * // 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: 'projects/my-project/locations/my-location/spokes/my-spoke', + * const res = await networkconnectivity.projects.locations.transports.patch({ + * // Identifier. Name of the resource. + * name: 'projects/my-project/locations/my-location/transports/my-transport', + * // 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: 'placeholder-value', + * // Optional. Field mask is used to specify the fields to be overwritten in the Transport 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 present in the request will be overwritten. + * updateMask: 'placeholder-value', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advertisedRoutes": [], + * // "bandwidth": "my_bandwidth", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "generatedActivationKey": "my_generatedActivationKey", + * // "labels": {}, + * // "mtuLimit": 0, + * // "name": "my_name", + * // "network": "my_network", + * // "peeringNetwork": "my_peeringNetwork", + * // "providedActivationKey": "my_providedActivationKey", + * // "remoteAccountId": "my_remoteAccountId", + * // "remoteProfile": "my_remoteProfile", + * // "stackType": "my_stackType", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -19551,58 +19528,57 @@ export namespace networkconnectivity_v1 { * @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$Spokes$Testiampermissions, + patch( + params: Params$Resource$Projects$Locations$Transports$Patch, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Spokes$Testiampermissions, + patch( + params?: Params$Resource$Projects$Locations$Transports$Patch, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Projects$Locations$Spokes$Testiampermissions, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Transports$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Spokes$Testiampermissions, + patch( + params: Params$Resource$Projects$Locations$Transports$Patch, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Spokes$Testiampermissions, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Transports$Patch, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + patch( + callback: BodyResponseCallback ): void; - testIamPermissions( + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Spokes$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Transports$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Spokes$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Transports$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Spokes$Testiampermissions; + params = {} as Params$Resource$Projects$Locations$Transports$Patch; options = {}; } @@ -19616,137 +19592,102 @@ export namespace networkconnectivity_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Projects$Locations$Spokes$Create extends StandardParameters { + export interface Params$Resource$Projects$Locations$Transports$Create extends StandardParameters { /** - * Required. The parent resource. + * Required. Value for parent. */ parent?: string; /** - * Optional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to see whether the original operation was received. If it was, the server ignores the second request. This behavior prevents clients from mistakenly 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). + * 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. Unique id for the spoke to create. + * Required. Id of the requesting object */ - spokeId?: string; + transportId?: string; /** * Request body metadata */ - requestBody?: Schema$Spoke; + requestBody?: Schema$Transport; } - export interface Params$Resource$Projects$Locations$Spokes$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Transports$Delete extends StandardParameters { /** - * Required. The name of the spoke to delete. + * Required. Name of the resource. */ name?: string; /** - * Optional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to see whether the original operation was received. If it was, the server ignores the second request. This behavior prevents clients from mistakenly 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). + * 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$Spokes$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Transports$Get extends StandardParameters { /** - * Required. The name of the spoke resource. + * Required. Name of the resource. */ name?: string; } - export interface Params$Resource$Projects$Locations$Spokes$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$Spokes$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Transports$List extends StandardParameters { /** - * An expression that filters the list of results. + * Optional. Filtering results. */ filter?: string; /** - * Sort the results by a certain order. + * Optional. Hint for how to order the results. */ orderBy?: string; /** - * The maximum number of results to return per page. + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. */ pageSize?: number; /** - * The page token. + * Optional. A token identifying a page of results the server should return. */ pageToken?: string; /** - * Required. The parent resource. + * Required. Parent value for ListTransportsRequest. */ parent?: string; } - export interface Params$Resource$Projects$Locations$Spokes$Patch extends StandardParameters { + export interface Params$Resource$Projects$Locations$Transports$Patch extends StandardParameters { /** - * Immutable. The name of the spoke. Spoke names must be unique. They use the following form: `projects/{project_number\}/locations/{region\}/spokes/{spoke_id\}` + * Identifier. Name of the resource. */ name?: string; /** - * Optional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to see whether the original operation was received. If it was, the server ignores the second request. This behavior prevents clients from mistakenly 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). + * 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. In the case of an update to an existing spoke, field mask is used to specify the fields to be overwritten. The fields specified in the update_mask are relative to the resource, not the full request. A field is overwritten if it is in the mask. If the user does not provide a mask, then all fields are overwritten. + * Optional. Field mask is used to specify the fields to be overwritten in the Transport 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 present in the request will be overwritten. */ updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$Spoke; - } - export interface Params$Resource$Projects$Locations$Spokes$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$Spokes$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; + requestBody?: Schema$Transport; } } diff --git a/src/apis/networkconnectivity/v1alpha1.ts b/src/apis/networkconnectivity/v1alpha1.ts index f6198952f09..8cdac2aa5d2 100644 --- a/src/apis/networkconnectivity/v1alpha1.ts +++ b/src/apis/networkconnectivity/v1alpha1.ts @@ -796,7 +796,7 @@ export namespace networkconnectivity_v1alpha1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -826,7 +826,7 @@ export namespace networkconnectivity_v1alpha1 { * * // Do the magic * const res = await networkconnectivity.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -953,7 +953,7 @@ export namespace networkconnectivity_v1alpha1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/networkmanagement/v1.ts b/src/apis/networkmanagement/v1.ts index 3c690117172..f12d6b5d07b 100644 --- a/src/apis/networkmanagement/v1.ts +++ b/src/apis/networkmanagement/v1.ts @@ -826,6 +826,36 @@ export namespace networkmanagement_v1 { */ internalIp?: string | null; } + /** + * For display only. Metadata associated with a GKE Network Policy. + */ + export interface Schema$GkeNetworkPolicyInfo { + /** + * Possible values: ALLOW, DENY + */ + action?: string | null; + /** + * Possible values: INGRESS, EGRESS + */ + direction?: string | null; + /** + * The name of the Network Policy. + */ + displayName?: string | null; + /** + * The URI of the Network Policy. Format for a Network Policy in a zonal cluster: `projects//zones//clusters//k8s/namespaces//networking.k8s.io/networkpolicies/` Format for a Network Policy in a regional cluster: `projects//locations//clusters//k8s/namespaces//networking.k8s.io/networkpolicies/` + */ + uri?: string | null; + } + /** + * For display only. Contains information about why GKE Network Policy evaluation was skipped. + */ + export interface Schema$GkeNetworkPolicySkippedInfo { + /** + * Reason why Network Policy evaluation was skipped. + */ + reason?: string | null; + } /** * For display only. Metadata associated with a Google Kubernetes Engine (GKE) Pod. */ @@ -1348,6 +1378,15 @@ export namespace networkmanagement_v1 { */ version?: number | null; } + /** + * For display only. Metadata associated with a Private Connection. + */ + export interface Schema$PrivateConnectionInfo { + /** + * URI of the Private Connection in format "projects/{project_id\}/locations/{location\}/privateConnections/{private_connection_id\}" + */ + uri?: string | null; + } /** * Results of active probing from the last run of the test. */ @@ -1623,7 +1662,7 @@ export namespace networkmanagement_v1 { */ protocols?: string[] | null; /** - * Region of the route. DYNAMIC, PEERING_DYNAMIC, POLICY_BASED and ADVERTISED routes only. If set for POLICY_BASED route, this is a region of VLAN attachments for Cloud Interconnect the route applies to. + * Region of the route. DYNAMIC, PEERING_DYNAMIC, POLICY_BASED and ADVERTISED routes only. If set for POLICY_BASED route, this is a region of VLAN attachments for Cloud Interconnect the route applies to. If set to "all" for POLICY_BASED route, the route applies to VLAN attachments of Cloud Interconnect in all regions. */ region?: string | null; /** @@ -1769,6 +1808,10 @@ export namespace networkmanagement_v1 { * Display information of a Cloud SQL instance. */ cloudSqlInstance?: Schema$CloudSQLInstanceInfo; + /** + * Display information of a Datastream Private Connection. + */ + datastreamPrivateConnection?: Schema$PrivateConnectionInfo; /** * Display information of the final state "deliver" and reason. */ @@ -1781,6 +1824,10 @@ export namespace networkmanagement_v1 { * Display information of a serverless direct VPC egress connection. */ directVpcEgressConnection?: Schema$DirectVpcEgressConnectionInfo; + /** + * Display information of a DMS Private Connection. + */ + dmsPrivateConnection?: Schema$PrivateConnectionInfo; /** * Display information of the final state "drop" and reason. */ @@ -1805,6 +1852,14 @@ export namespace networkmanagement_v1 { * Display information of a Google Kubernetes Engine cluster master. */ gkeMaster?: Schema$GKEMasterInfo; + /** + * Display information of a GKE Network Policy. + */ + gkeNetworkPolicy?: Schema$GkeNetworkPolicyInfo; + /** + * Display information of the reason why GKE Network Policy evaluation was skipped. + */ + gkeNetworkPolicySkipped?: Schema$GkeNetworkPolicySkippedInfo; /** * Display information of a Google Kubernetes Engine Pod. */ @@ -2263,7 +2318,7 @@ export namespace networkmanagement_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2293,7 +2348,7 @@ export namespace networkmanagement_v1 { * * // Do the magic * const res = await networkmanagement.organizations.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2420,7 +2475,7 @@ export namespace networkmanagement_v1 { } export interface Params$Resource$Organizations$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -4093,7 +4148,7 @@ export namespace networkmanagement_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -4123,7 +4178,7 @@ export namespace networkmanagement_v1 { * * // Do the magic * const res = await networkmanagement.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -4250,7 +4305,7 @@ export namespace networkmanagement_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/networkmanagement/v1beta1.ts b/src/apis/networkmanagement/v1beta1.ts index feaecbb1380..c217e9f5cfe 100644 --- a/src/apis/networkmanagement/v1beta1.ts +++ b/src/apis/networkmanagement/v1beta1.ts @@ -559,6 +559,14 @@ export namespace networkmanagement_v1beta1 { * A [Cloud SQL](https://cloud.google.com/sql) instance URI. */ cloudSqlInstance?: string | null; + /** + * A [Datastream Private Connection](https://docs.cloud.google.com/datastream/docs/reference/rest/v1/projects.locations.privateConnections) name format: projects/{project\}/locations/{location\}/privateConnections/{privateConnection\}. + */ + datastreamPrivateConnection?: string | null; + /** + * A [DMS Private Connection](https://docs.cloud.google.com/database-migration/docs/reference/rest/v1/projects.locations.privateConnections) name format: projects/{project\}/locations/{location\}/privateConnections/{privateConnection\}. + */ + dmsPrivateConnection?: string | null; /** * A forwarding rule and its corresponding IP address represent the frontend configuration of a Google Cloud load balancer. Forwarding rules are also used for protocol forwarding, Private Service Connect and other network services to provide forwarding information in the control plane. Applicable only to destination endpoint. Format: `projects/{project\}/global/forwardingRules/{id\}` or `projects/{project\}/regions/{region\}/forwardingRules/{id\}` */ @@ -826,6 +834,36 @@ export namespace networkmanagement_v1beta1 { */ internalIp?: string | null; } + /** + * For display only. Metadata associated with a GKE Network Policy. + */ + export interface Schema$GkeNetworkPolicyInfo { + /** + * Possible values: ALLOW, DENY + */ + action?: string | null; + /** + * Possible values: INGRESS, EGRESS + */ + direction?: string | null; + /** + * The name of the Network Policy. + */ + displayName?: string | null; + /** + * The URI of the Network Policy. Format for a Network Policy in a zonal cluster: `projects//zones//clusters//k8s/namespaces//networking.k8s.io/networkpolicies/` Format for a Network Policy in a regional cluster: `projects//locations//clusters//k8s/namespaces//networking.k8s.io/networkpolicies/` + */ + uri?: string | null; + } + /** + * For display only. Contains information about why GKE Network Policy evaluation was skipped. + */ + export interface Schema$GkeNetworkPolicySkippedInfo { + /** + * Reason why Network Policy evaluation was skipped. + */ + reason?: string | null; + } /** * For display only. Metadata associated with a Google Kubernetes Engine (GKE) Pod. */ @@ -1348,6 +1386,15 @@ export namespace networkmanagement_v1beta1 { */ version?: number | null; } + /** + * For display only. Metadata associated with a Private Connection. + */ + export interface Schema$PrivateConnectionInfo { + /** + * URI of the Private Connection in format "projects/{project_id\}/locations/{location\}/privateConnections/{private_connection_id\}" + */ + uri?: string | null; + } /** * Results of active probing from the last run of the test. */ @@ -1623,7 +1670,7 @@ export namespace networkmanagement_v1beta1 { */ protocols?: string[] | null; /** - * Region of the route. DYNAMIC, PEERING_DYNAMIC, POLICY_BASED and ADVERTISED routes only. If set for POLICY_BASED route, this is a region of VLAN attachments for Cloud Interconnect the route applies to. + * Region of the route. DYNAMIC, PEERING_DYNAMIC, POLICY_BASED and ADVERTISED routes only. If set for POLICY_BASED route, this is a region of VLAN attachments for Cloud Interconnect the route applies to. If set to "all" for POLICY_BASED route, the route applies to VLAN attachments of Cloud Interconnect in all regions. */ region?: string | null; /** @@ -1769,6 +1816,10 @@ export namespace networkmanagement_v1beta1 { * Display information of a Cloud SQL instance. */ cloudSqlInstance?: Schema$CloudSQLInstanceInfo; + /** + * Display information of a Datastream Private Connection. + */ + datastreamPrivateConnection?: Schema$PrivateConnectionInfo; /** * Display information of the final state "deliver" and reason. */ @@ -1781,6 +1832,10 @@ export namespace networkmanagement_v1beta1 { * Display information of a serverless direct VPC egress connection. */ directVpcEgressConnection?: Schema$DirectVpcEgressConnectionInfo; + /** + * Display information of a DMS Private Connection. + */ + dmsPrivateConnection?: Schema$PrivateConnectionInfo; /** * Display information of the final state "drop" and reason. */ @@ -1805,6 +1860,14 @@ export namespace networkmanagement_v1beta1 { * Display information of a Google Kubernetes Engine cluster master. */ gkeMaster?: Schema$GKEMasterInfo; + /** + * Display information of a GKE Network Policy. + */ + gkeNetworkPolicy?: Schema$GkeNetworkPolicyInfo; + /** + * Display information of the reason why GKE Network Policy evaluation was skipped. + */ + gkeNetworkPolicySkipped?: Schema$GkeNetworkPolicySkippedInfo; /** * Display information of a Google Kubernetes Engine Pod. */ @@ -2263,7 +2326,7 @@ export namespace networkmanagement_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2293,7 +2356,7 @@ export namespace networkmanagement_v1beta1 { * * // Do the magic * const res = await networkmanagement.organizations.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2420,7 +2483,7 @@ export namespace networkmanagement_v1beta1 { } export interface Params$Resource$Organizations$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -4096,7 +4159,7 @@ export namespace networkmanagement_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -4126,7 +4189,7 @@ export namespace networkmanagement_v1beta1 { * * // Do the magic * const res = await networkmanagement.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -4253,7 +4316,7 @@ export namespace networkmanagement_v1beta1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/networksecurity/v1.ts b/src/apis/networksecurity/v1.ts index d98d104fde0..9a6dae4d6aa 100644 --- a/src/apis/networksecurity/v1.ts +++ b/src/apis/networksecurity/v1.ts @@ -262,6 +262,10 @@ export namespace networksecurity_v1 { * Required. Identifier. Name of the `AuthzPolicy` resource in the following format: `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. */ name?: string | null; + /** + * Optional. Immutable. Defines the type of authorization being performed. If not specified, `REQUEST_AUTHZ` is applied. This field cannot be changed once AuthzPolicy is created. + */ + policyProfile?: string | null; /** * Required. Specifies the set of resources to which this policy should be applied to. */ @@ -429,6 +433,10 @@ export namespace networksecurity_v1 { * Optional. A list of HTTP Hosts to match against. The match can be one of exact, prefix, suffix, or contains (substring match). Matches are always case sensitive unless the ignoreCase is set. Limited to 10 hosts per Authorization Policy. */ hosts?: Schema$AuthzPolicyAuthzRuleStringMatch[]; + /** + * Optional. Defines the MCP protocol attributes to match on. If the MCP payload in the request body cannot be successfully parsed, the request will be denied. This field can be set only for AuthzPolicies targeting AgentGateway resources. + */ + mcp?: Schema$AuthzPolicyAuthzRuleToRequestOperationMCP; /** * Optional. A list of HTTP methods to match against. Each entry must be a valid HTTP method name (GET, PUT, POST, HEAD, PATCH, DELETE, OPTIONS). It only allows exact match and is always case sensitive. Limited to 10 methods per Authorization Policy. */ @@ -447,6 +455,32 @@ export namespace networksecurity_v1 { */ headers?: Schema$AuthzPolicyAuthzRuleHeaderMatch[]; } + /** + * Describes a set of MCP protocol attributes to match against for a given MCP request. + */ + export interface Schema$AuthzPolicyAuthzRuleToRequestOperationMCP { + /** + * Optional. If specified, matches on the MCP protocol’s non-access specific methods namely: * initialize * completion/ * logging/ * notifications/ * ping Defaults to SKIP_BASE_PROTOCOL_METHODS if not specified. + */ + baseProtocolMethodsOption?: string | null; + /** + * Optional. A list of MCP methods and associated parameters to match on. It is recommended to use this field to match on tools, prompts and resource accesses while setting the baseProtocolMethodsOption to MATCH_BASE_PROTOCOL_METHODS to match on all the other MCP protocol methods. Limited to 10 MCP methods per Authorization Policy. + */ + methods?: Schema$AuthzPolicyAuthzRuleToRequestOperationMCPMethod[]; + } + /** + * Describes a set of MCP methods to match against. + */ + export interface Schema$AuthzPolicyAuthzRuleToRequestOperationMCPMethod { + /** + * Required. The MCP method to match against. Allowed values are as follows: 1. `tools`, `prompts`, `resources` - these will match against all sub methods under the respective methods. 2. `prompts/list`, `tools/list`, `resources/list`, `resources/templates/list` 3. `prompts/get`, `tools/call`, `resources/subscribe`, `resources/unsubscribe`, `resources/read` Params cannot be specified for categories 1 and 2. + */ + name?: string | null; + /** + * Optional. A list of MCP method parameters to match against. The match can be one of exact, prefix, suffix, or contains (substring match). Matches are always case sensitive unless the ignoreCase is set. Limited to 10 MCP method parameters per Authorization Policy. + */ + params?: Schema$AuthzPolicyAuthzRuleStringMatch[]; + } /** * Allows delegating authorization decisions to Cloud IAP or to Service Extensions. */ @@ -478,11 +512,11 @@ export namespace networksecurity_v1 { */ export interface Schema$AuthzPolicyTarget { /** - * Required. All gateways and forwarding rules referenced by this policy and extensions must share the same load balancing scheme. Supported values: `INTERNAL_MANAGED` and `EXTERNAL_MANAGED`. For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service). + * Optional. All gateways and forwarding rules referenced by this policy and extensions must share the same load balancing scheme. Required only when targeting forwarding rules. If targeting Secure Web Proxy, this field must be `INTERNAL_MANAGED` or not specified. Must not be specified when targeting Agent Gateway. Supported values: `INTERNAL_MANAGED` and `EXTERNAL_MANAGED`. For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service). */ loadBalancingScheme?: string | null; /** - * Required. A list of references to the Forwarding Rules on which this policy will be applied. + * Required. A list of references to the Forwarding Rules, Secure Web Proxy Gateways, or Agent Gateways on which this policy will be applied. */ resources?: string[] | null; } @@ -696,7 +730,7 @@ export namespace networksecurity_v1 { */ associations?: Schema$FirewallEndpointAssociationReference[]; /** - * Required. Project to bill on endpoint uptime usage. + * Optional. Project to charge for the deployed firewall endpoint. This field must be specified when creating the endpoint in the organization scope, and should be omitted otherwise. */ billingProjectId?: string | null; /** @@ -1196,6 +1230,10 @@ export namespace networksecurity_v1 { * Required. Immutable. The VPC network that is associated. for example: `projects/123456789/global/networks/my-network`. See https://google.aip.dev/124. */ network?: string | null; + /** + * Output only. Identifier used by the data-path. See the NSI GENEVE format for more details: https://docs.cloud.google.com/network-security-integration/docs/understand-geneve#network_id + */ + networkCookie?: number | null; /** * Output only. The current state of the resource does not match the user's intended state, and the system is working to reconcile them. This part of the normal operation (e.g. adding a new location to the target deployment group). See https://google.aip.dev/128. */ @@ -7117,6 +7155,8 @@ export namespace networksecurity_v1 { mirroringEndpointGroupAssociations: Resource$Projects$Locations$Mirroringendpointgroupassociations; mirroringEndpointGroups: Resource$Projects$Locations$Mirroringendpointgroups; operations: Resource$Projects$Locations$Operations; + securityProfileGroups: Resource$Projects$Locations$Securityprofilegroups; + securityProfiles: Resource$Projects$Locations$Securityprofiles; serverTlsPolicies: Resource$Projects$Locations$Servertlspolicies; tlsInspectionPolicies: Resource$Projects$Locations$Tlsinspectionpolicies; urlLists: Resource$Projects$Locations$Urllists; @@ -7169,6 +7209,11 @@ export namespace networksecurity_v1 { this.operations = new Resource$Projects$Locations$Operations( this.context ); + this.securityProfileGroups = + new Resource$Projects$Locations$Securityprofilegroups(this.context); + this.securityProfiles = new Resource$Projects$Locations$Securityprofiles( + this.context + ); this.serverTlsPolicies = new Resource$Projects$Locations$Servertlspolicies(this.context); this.tlsInspectionPolicies = @@ -7316,7 +7361,7 @@ export namespace networksecurity_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -7346,7 +7391,7 @@ export namespace networksecurity_v1 { * * // Do the magic * const res = await networksecurity.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -7473,7 +7518,7 @@ export namespace networksecurity_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -10866,6 +10911,7 @@ export namespace networksecurity_v1 { * // "httpRules": [], * // "labels": {}, * // "name": "my_name", + * // "policyProfile": "my_policyProfile", * // "target": {}, * // "updateTime": "my_updateTime" * // } @@ -11165,6 +11211,7 @@ export namespace networksecurity_v1 { * // "httpRules": [], * // "labels": {}, * // "name": "my_name", + * // "policyProfile": "my_policyProfile", * // "target": {}, * // "updateTime": "my_updateTime" * // } @@ -11612,6 +11659,7 @@ export namespace networksecurity_v1 { * // "httpRules": [], * // "labels": {}, * // "name": "my_name", + * // "policyProfile": "my_policyProfile", * // "target": {}, * // "updateTime": "my_updateTime" * // } @@ -20283,6 +20331,7 @@ export namespace networksecurity_v1 { * // "locationsDetails": [], * // "name": "my_name", * // "network": "my_network", + * // "networkCookie": 0, * // "reconciling": false, * // "state": "my_state", * // "updateTime": "my_updateTime" @@ -20591,6 +20640,7 @@ export namespace networksecurity_v1 { * // "locationsDetails": [], * // "name": "my_name", * // "network": "my_network", + * // "networkCookie": 0, * // "reconciling": false, * // "state": "my_state", * // "updateTime": "my_updateTime" @@ -20912,6 +20962,7 @@ export namespace networksecurity_v1 { * // "locationsDetails": [], * // "name": "my_name", * // "network": "my_network", + * // "networkCookie": 0, * // "reconciling": false, * // "state": "my_state", * // "updateTime": "my_updateTime" @@ -26041,6 +26092,1673 @@ export namespace networksecurity_v1 { returnPartialSuccess?: boolean; } + export class Resource$Projects$Locations$Securityprofilegroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new SecurityProfileGroup in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.securityProfileGroups.create({ + * // Required. The parent resource of the SecurityProfileGroup. Must be in the format `projects|organizations/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * // Required. Short name of the SecurityProfileGroup resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "security_profile_group1". + * securityProfileGroupId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": "my_customInterceptProfile", + * // "customMirroringProfile": "my_customMirroringProfile", + * // "dataPathId": "my_dataPathId", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": "my_threatPreventionProfile", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": "my_urlFilteringProfile" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofilegroups$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Securityprofilegroups$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofilegroups$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofilegroups$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofilegroups$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/securityProfileGroups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single SecurityProfileGroup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.securityProfileGroups.delete({ + * // Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. + * etag: 'placeholder-value', + * // Required. A name of the SecurityProfileGroup to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + * name: 'projects/my-project/locations/my-location/securityProfileGroups/my-securityProfileGroup', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofilegroups$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Securityprofilegroups$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofilegroups$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofilegroups$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofilegroups$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + 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 SecurityProfileGroup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.securityProfileGroups.get({ + * // Required. A name of the SecurityProfileGroup to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + * name: 'projects/my-project/locations/my-location/securityProfileGroups/my-securityProfileGroup', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": "my_customInterceptProfile", + * // "customMirroringProfile": "my_customMirroringProfile", + * // "dataPathId": "my_dataPathId", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": "my_threatPreventionProfile", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": "my_urlFilteringProfile" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofilegroups$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Securityprofilegroups$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofilegroups$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofilegroups$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofilegroups$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists SecurityProfileGroups in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.securityProfileGroups.list({ + * // Optional. Maximum number of SecurityProfileGroups to return per call. + * pageSize: 'placeholder-value', + * // Optional. The value returned by the last `ListSecurityProfileGroupsResponse` Indicates that this is a continuation of a prior `ListSecurityProfileGroups` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project or organization and location from which the SecurityProfileGroups should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "securityProfileGroups": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofilegroups$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Securityprofilegroups$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Securityprofilegroups$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Securityprofilegroups$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Securityprofilegroups$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofilegroups$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofilegroups$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofilegroups$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/securityProfileGroups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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 SecurityProfileGroup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.securityProfileGroups.patch({ + * // Immutable. Identifier. Name of the SecurityProfileGroup resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + * name: 'projects/my-project/locations/my-location/securityProfileGroups/my-securityProfileGroup', + * // Required. Field mask is used to specify the fields to be overwritten in the SecurityProfileGroup 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. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": "my_customInterceptProfile", + * // "customMirroringProfile": "my_customMirroringProfile", + * // "dataPathId": "my_dataPathId", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": "my_threatPreventionProfile", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": "my_urlFilteringProfile" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofilegroups$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Securityprofilegroups$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofilegroups$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofilegroups$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofilegroups$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Securityprofilegroups$Create extends StandardParameters { + /** + * Required. The parent resource of the SecurityProfileGroup. Must be in the format `projects|organizations/x/locations/{location\}`. + */ + parent?: string; + /** + * Required. Short name of the SecurityProfileGroup resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "security_profile_group1". + */ + securityProfileGroupId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityProfileGroup; + } + export interface Params$Resource$Projects$Locations$Securityprofilegroups$Delete extends StandardParameters { + /** + * Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. + */ + etag?: string; + /** + * Required. A name of the SecurityProfileGroup to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Securityprofilegroups$Get extends StandardParameters { + /** + * Required. A name of the SecurityProfileGroup to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Securityprofilegroups$List extends StandardParameters { + /** + * Optional. Maximum number of SecurityProfileGroups to return per call. + */ + pageSize?: number; + /** + * Optional. The value returned by the last `ListSecurityProfileGroupsResponse` Indicates that this is a continuation of a prior `ListSecurityProfileGroups` call, and that the system should return the next page of data. + */ + pageToken?: string; + /** + * Required. The project or organization and location from which the SecurityProfileGroups should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Securityprofilegroups$Patch extends StandardParameters { + /** + * Immutable. Identifier. Name of the SecurityProfileGroup resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + */ + name?: string; + /** + * Required. Field mask is used to specify the fields to be overwritten in the SecurityProfileGroup 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. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityProfileGroup; + } + + export class Resource$Projects$Locations$Securityprofiles { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new SecurityProfile in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.securityProfiles.create({ + * // Required. The parent resource of the SecurityProfile. Must be in the format `projects|organizations/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * // Required. Short name of the SecurityProfile resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "security_profile1". + * securityProfileId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": {}, + * // "customMirroringProfile": {}, + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": {}, + * // "type": "my_type", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofiles$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Securityprofiles$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Securityprofiles$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Securityprofiles$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Securityprofiles$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofiles$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofiles$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofiles$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/securityProfiles').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single SecurityProfile. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.securityProfiles.delete({ + * // Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. + * etag: 'placeholder-value', + * // Required. A name of the SecurityProfile to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. + * name: 'projects/my-project/locations/my-location/securityProfiles/my-securityProfile', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofiles$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Securityprofiles$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Securityprofiles$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Securityprofiles$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Securityprofiles$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofiles$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofiles$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofiles$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + 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 SecurityProfile. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.securityProfiles.get({ + * // Required. A name of the SecurityProfile to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. + * name: 'projects/my-project/locations/my-location/securityProfiles/my-securityProfile', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": {}, + * // "customMirroringProfile": {}, + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": {}, + * // "type": "my_type", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofiles$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Securityprofiles$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Securityprofiles$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Securityprofiles$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Securityprofiles$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofiles$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofiles$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Securityprofiles$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists SecurityProfiles in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.securityProfiles.list({ + * // Optional. Maximum number of SecurityProfiles to return per call. + * pageSize: 'placeholder-value', + * // Optional. The value returned by the last `ListSecurityProfilesResponse` Indicates that this is a continuation of a prior `ListSecurityProfiles` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project or organization and location from which the SecurityProfiles should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "securityProfiles": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofiles$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Securityprofiles$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Securityprofiles$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Securityprofiles$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Securityprofiles$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofiles$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofiles$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Securityprofiles$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/securityProfiles').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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 SecurityProfile. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.securityProfiles.patch({ + * // Immutable. Identifier. Name of the SecurityProfile resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile\}`. + * name: 'projects/my-project/locations/my-location/securityProfiles/my-securityProfile', + * // Required. Field mask is used to specify the fields to be overwritten in the SecurityProfile 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. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": {}, + * // "customMirroringProfile": {}, + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": {}, + * // "type": "my_type", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofiles$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Securityprofiles$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Securityprofiles$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Securityprofiles$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Securityprofiles$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofiles$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofiles$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofiles$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Securityprofiles$Create extends StandardParameters { + /** + * Required. The parent resource of the SecurityProfile. Must be in the format `projects|organizations/x/locations/{location\}`. + */ + parent?: string; + /** + * Required. Short name of the SecurityProfile resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "security_profile1". + */ + securityProfileId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityProfile; + } + export interface Params$Resource$Projects$Locations$Securityprofiles$Delete extends StandardParameters { + /** + * Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. + */ + etag?: string; + /** + * Required. A name of the SecurityProfile to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Securityprofiles$Get extends StandardParameters { + /** + * Required. A name of the SecurityProfile to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Securityprofiles$List extends StandardParameters { + /** + * Optional. Maximum number of SecurityProfiles to return per call. + */ + pageSize?: number; + /** + * Optional. The value returned by the last `ListSecurityProfilesResponse` Indicates that this is a continuation of a prior `ListSecurityProfiles` call, and that the system should return the next page of data. + */ + pageToken?: string; + /** + * Required. The project or organization and location from which the SecurityProfiles should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Securityprofiles$Patch extends StandardParameters { + /** + * Immutable. Identifier. Name of the SecurityProfile resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile\}`. + */ + name?: string; + /** + * Required. Field mask is used to specify the fields to be overwritten in the SecurityProfile 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. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityProfile; + } + export class Resource$Projects$Locations$Servertlspolicies { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/networksecurity/v1beta1.ts b/src/apis/networksecurity/v1beta1.ts index 749a2d89273..16e2b829fb3 100644 --- a/src/apis/networksecurity/v1beta1.ts +++ b/src/apis/networksecurity/v1beta1.ts @@ -262,6 +262,10 @@ export namespace networksecurity_v1beta1 { * Required. Identifier. Name of the `AuthzPolicy` resource in the following format: `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. */ name?: string | null; + /** + * Optional. Immutable. Defines the type of authorization being performed. If not specified, `REQUEST_AUTHZ` is applied. This field cannot be changed once AuthzPolicy is created. + */ + policyProfile?: string | null; /** * Required. Specifies the set of resources to which this policy should be applied to. */ @@ -429,6 +433,10 @@ export namespace networksecurity_v1beta1 { * Optional. A list of HTTP Hosts to match against. The match can be one of exact, prefix, suffix, or contains (substring match). Matches are always case sensitive unless the ignoreCase is set. Limited to 10 hosts per Authorization Policy. */ hosts?: Schema$AuthzPolicyAuthzRuleStringMatch[]; + /** + * Optional. Defines the MCP protocol attributes to match on. If the MCP payload in the request body cannot be successfully parsed, the request will be denied. This field can be set only for AuthzPolicies targeting AgentGateway resources. + */ + mcp?: Schema$AuthzPolicyAuthzRuleToRequestOperationMCP; /** * Optional. A list of HTTP methods to match against. Each entry must be a valid HTTP method name (GET, PUT, POST, HEAD, PATCH, DELETE, OPTIONS). It only allows exact match and is always case sensitive. Limited to 10 methods per Authorization Policy. */ @@ -447,6 +455,32 @@ export namespace networksecurity_v1beta1 { */ headers?: Schema$AuthzPolicyAuthzRuleHeaderMatch[]; } + /** + * Describes a set of MCP protocol attributes to match against for a given MCP request. + */ + export interface Schema$AuthzPolicyAuthzRuleToRequestOperationMCP { + /** + * Optional. If specified, matches on the MCP protocol’s non-access specific methods namely: * initialize * completion/ * logging/ * notifications/ * ping Defaults to SKIP_BASE_PROTOCOL_METHODS if not specified. + */ + baseProtocolMethodsOption?: string | null; + /** + * Optional. A list of MCP methods and associated parameters to match on. It is recommended to use this field to match on tools, prompts and resource accesses while setting the baseProtocolMethodsOption to MATCH_BASE_PROTOCOL_METHODS to match on all the other MCP protocol methods. Limited to 10 MCP methods per Authorization Policy. + */ + methods?: Schema$AuthzPolicyAuthzRuleToRequestOperationMCPMethod[]; + } + /** + * Describes a set of MCP methods to match against. + */ + export interface Schema$AuthzPolicyAuthzRuleToRequestOperationMCPMethod { + /** + * Required. The MCP method to match against. Allowed values are as follows: 1. `tools`, `prompts`, `resources` - these will match against all sub methods under the respective methods. 2. `prompts/list`, `tools/list`, `resources/list`, `resources/templates/list` 3. `prompts/get`, `tools/call`, `resources/subscribe`, `resources/unsubscribe`, `resources/read` Params cannot be specified for categories 1 and 2. + */ + name?: string | null; + /** + * Optional. A list of MCP method parameters to match against. The match can be one of exact, prefix, suffix, or contains (substring match). Matches are always case sensitive unless the ignoreCase is set. Limited to 10 MCP method parameters per Authorization Policy. + */ + params?: Schema$AuthzPolicyAuthzRuleStringMatch[]; + } /** * Allows delegating authorization decisions to Cloud IAP or to Service Extensions. */ @@ -478,11 +512,11 @@ export namespace networksecurity_v1beta1 { */ export interface Schema$AuthzPolicyTarget { /** - * Required. All gateways and forwarding rules referenced by this policy and extensions must share the same load balancing scheme. Supported values: `INTERNAL_MANAGED` and `EXTERNAL_MANAGED`. For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service). + * Optional. All gateways and forwarding rules referenced by this policy and extensions must share the same load balancing scheme. Required only when targeting forwarding rules. If targeting Secure Web Proxy, this field must be `INTERNAL_MANAGED` or not specified. Must not be specified when targeting Agent Gateway. Supported values: `INTERNAL_MANAGED` and `EXTERNAL_MANAGED`. For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service). */ loadBalancingScheme?: string | null; /** - * Required. A list of references to the Forwarding Rules on which this policy will be applied. + * Required. A list of references to the Forwarding Rules, Secure Web Proxy Gateways, or Agent Gateways on which this policy will be applied. */ resources?: string[] | null; } @@ -696,7 +730,7 @@ export namespace networksecurity_v1beta1 { */ associations?: Schema$FirewallEndpointAssociationReference[]; /** - * Required. Project to bill on endpoint uptime usage. + * Optional. Project to charge for the deployed firewall endpoint. This field must be specified when creating the endpoint in the organization scope, and should be omitted otherwise. */ billingProjectId?: string | null; /** @@ -1196,6 +1230,10 @@ export namespace networksecurity_v1beta1 { * Required. Immutable. The VPC network that is associated. for example: `projects/123456789/global/networks/my-network`. See https://google.aip.dev/124. */ network?: string | null; + /** + * Output only. Identifier used by the data-path. See the NSI GENEVE format for more details: https://docs.cloud.google.com/network-security-integration/docs/understand-geneve#network_id + */ + networkCookie?: number | null; /** * Output only. The current state of the resource does not match the user's intended state, and the system is working to reconcile them. This part of the normal operation (e.g. adding a new location to the target deployment group). See https://google.aip.dev/128. */ @@ -7281,6 +7319,8 @@ export namespace networksecurity_v1beta1 { operations: Resource$Projects$Locations$Operations; sacAttachments: Resource$Projects$Locations$Sacattachments; sacRealms: Resource$Projects$Locations$Sacrealms; + securityProfileGroups: Resource$Projects$Locations$Securityprofilegroups; + securityProfiles: Resource$Projects$Locations$Securityprofiles; serverTlsPolicies: Resource$Projects$Locations$Servertlspolicies; tlsInspectionPolicies: Resource$Projects$Locations$Tlsinspectionpolicies; urlLists: Resource$Projects$Locations$Urllists; @@ -7337,6 +7377,11 @@ export namespace networksecurity_v1beta1 { this.context ); this.sacRealms = new Resource$Projects$Locations$Sacrealms(this.context); + this.securityProfileGroups = + new Resource$Projects$Locations$Securityprofilegroups(this.context); + this.securityProfiles = new Resource$Projects$Locations$Securityprofiles( + this.context + ); this.serverTlsPolicies = new Resource$Projects$Locations$Servertlspolicies(this.context); this.tlsInspectionPolicies = @@ -7484,7 +7529,7 @@ export namespace networksecurity_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -7514,7 +7559,7 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = await networksecurity.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -7641,7 +7686,7 @@ export namespace networksecurity_v1beta1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -11034,6 +11079,7 @@ export namespace networksecurity_v1beta1 { * // "httpRules": [], * // "labels": {}, * // "name": "my_name", + * // "policyProfile": "my_policyProfile", * // "target": {}, * // "updateTime": "my_updateTime" * // } @@ -11333,6 +11379,7 @@ export namespace networksecurity_v1beta1 { * // "httpRules": [], * // "labels": {}, * // "name": "my_name", + * // "policyProfile": "my_policyProfile", * // "target": {}, * // "updateTime": "my_updateTime" * // } @@ -11780,6 +11827,7 @@ export namespace networksecurity_v1beta1 { * // "httpRules": [], * // "labels": {}, * // "name": "my_name", + * // "policyProfile": "my_policyProfile", * // "target": {}, * // "updateTime": "my_updateTime" * // } @@ -20447,6 +20495,7 @@ export namespace networksecurity_v1beta1 { * // "locationsDetails": [], * // "name": "my_name", * // "network": "my_network", + * // "networkCookie": 0, * // "reconciling": false, * // "state": "my_state", * // "updateTime": "my_updateTime" @@ -20755,6 +20804,7 @@ export namespace networksecurity_v1beta1 { * // "locationsDetails": [], * // "name": "my_name", * // "network": "my_network", + * // "networkCookie": 0, * // "reconciling": false, * // "state": "my_state", * // "updateTime": "my_updateTime" @@ -21076,6 +21126,7 @@ export namespace networksecurity_v1beta1 { * // "locationsDetails": [], * // "name": "my_name", * // "network": "my_network", + * // "networkCookie": 0, * // "reconciling": false, * // "state": "my_state", * // "updateTime": "my_updateTime" @@ -27526,6 +27577,1673 @@ export namespace networksecurity_v1beta1 { parent?: string; } + export class Resource$Projects$Locations$Securityprofilegroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new SecurityProfileGroup in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.securityProfileGroups.create({ + * // Required. The parent resource of the SecurityProfileGroup. Must be in the format `projects|organizations/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * // Required. Short name of the SecurityProfileGroup resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "security_profile_group1". + * securityProfileGroupId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": "my_customInterceptProfile", + * // "customMirroringProfile": "my_customMirroringProfile", + * // "dataPathId": "my_dataPathId", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": "my_threatPreventionProfile", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": "my_urlFilteringProfile" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofilegroups$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Securityprofilegroups$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofilegroups$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofilegroups$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofilegroups$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/securityProfileGroups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single SecurityProfileGroup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.securityProfileGroups.delete({ + * // Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. + * etag: 'placeholder-value', + * // Required. A name of the SecurityProfileGroup to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + * name: 'projects/my-project/locations/my-location/securityProfileGroups/my-securityProfileGroup', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofilegroups$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Securityprofilegroups$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofilegroups$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofilegroups$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofilegroups$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + 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 SecurityProfileGroup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.securityProfileGroups.get({ + * // Required. A name of the SecurityProfileGroup to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + * name: 'projects/my-project/locations/my-location/securityProfileGroups/my-securityProfileGroup', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": "my_customInterceptProfile", + * // "customMirroringProfile": "my_customMirroringProfile", + * // "dataPathId": "my_dataPathId", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": "my_threatPreventionProfile", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": "my_urlFilteringProfile" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofilegroups$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Securityprofilegroups$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofilegroups$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofilegroups$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofilegroups$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists SecurityProfileGroups in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.securityProfileGroups.list({ + * // Optional. Maximum number of SecurityProfileGroups to return per call. + * pageSize: 'placeholder-value', + * // Optional. The value returned by the last `ListSecurityProfileGroupsResponse` Indicates that this is a continuation of a prior `ListSecurityProfileGroups` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project or organization and location from which the SecurityProfileGroups should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "securityProfileGroups": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofilegroups$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Securityprofilegroups$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Securityprofilegroups$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Securityprofilegroups$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Securityprofilegroups$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofilegroups$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofilegroups$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofilegroups$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/securityProfileGroups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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 SecurityProfileGroup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.securityProfileGroups.patch({ + * // Immutable. Identifier. Name of the SecurityProfileGroup resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + * name: 'projects/my-project/locations/my-location/securityProfileGroups/my-securityProfileGroup', + * // Required. Field mask is used to specify the fields to be overwritten in the SecurityProfileGroup 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. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": "my_customInterceptProfile", + * // "customMirroringProfile": "my_customMirroringProfile", + * // "dataPathId": "my_dataPathId", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": "my_threatPreventionProfile", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": "my_urlFilteringProfile" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofilegroups$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Securityprofilegroups$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Securityprofilegroups$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofilegroups$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofilegroups$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofilegroups$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Securityprofilegroups$Create extends StandardParameters { + /** + * Required. The parent resource of the SecurityProfileGroup. Must be in the format `projects|organizations/x/locations/{location\}`. + */ + parent?: string; + /** + * Required. Short name of the SecurityProfileGroup resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "security_profile_group1". + */ + securityProfileGroupId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityProfileGroup; + } + export interface Params$Resource$Projects$Locations$Securityprofilegroups$Delete extends StandardParameters { + /** + * Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. + */ + etag?: string; + /** + * Required. A name of the SecurityProfileGroup to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Securityprofilegroups$Get extends StandardParameters { + /** + * Required. A name of the SecurityProfileGroup to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Securityprofilegroups$List extends StandardParameters { + /** + * Optional. Maximum number of SecurityProfileGroups to return per call. + */ + pageSize?: number; + /** + * Optional. The value returned by the last `ListSecurityProfileGroupsResponse` Indicates that this is a continuation of a prior `ListSecurityProfileGroups` call, and that the system should return the next page of data. + */ + pageToken?: string; + /** + * Required. The project or organization and location from which the SecurityProfileGroups should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Securityprofilegroups$Patch extends StandardParameters { + /** + * Immutable. Identifier. Name of the SecurityProfileGroup resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + */ + name?: string; + /** + * Required. Field mask is used to specify the fields to be overwritten in the SecurityProfileGroup 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. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityProfileGroup; + } + + export class Resource$Projects$Locations$Securityprofiles { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new SecurityProfile in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.securityProfiles.create({ + * // Required. The parent resource of the SecurityProfile. Must be in the format `projects|organizations/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * // Required. Short name of the SecurityProfile resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "security_profile1". + * securityProfileId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": {}, + * // "customMirroringProfile": {}, + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": {}, + * // "type": "my_type", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofiles$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Securityprofiles$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Securityprofiles$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Securityprofiles$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Securityprofiles$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofiles$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofiles$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofiles$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/securityProfiles').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single SecurityProfile. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.securityProfiles.delete({ + * // Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. + * etag: 'placeholder-value', + * // Required. A name of the SecurityProfile to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. + * name: 'projects/my-project/locations/my-location/securityProfiles/my-securityProfile', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofiles$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Securityprofiles$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Securityprofiles$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Securityprofiles$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Securityprofiles$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofiles$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofiles$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofiles$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + 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 SecurityProfile. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.securityProfiles.get({ + * // Required. A name of the SecurityProfile to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. + * name: 'projects/my-project/locations/my-location/securityProfiles/my-securityProfile', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": {}, + * // "customMirroringProfile": {}, + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": {}, + * // "type": "my_type", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofiles$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Securityprofiles$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Securityprofiles$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Securityprofiles$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Securityprofiles$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofiles$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofiles$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Securityprofiles$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists SecurityProfiles in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.securityProfiles.list({ + * // Optional. Maximum number of SecurityProfiles to return per call. + * pageSize: 'placeholder-value', + * // Optional. The value returned by the last `ListSecurityProfilesResponse` Indicates that this is a continuation of a prior `ListSecurityProfiles` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project or organization and location from which the SecurityProfiles should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "securityProfiles": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofiles$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Securityprofiles$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Securityprofiles$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Securityprofiles$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Securityprofiles$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofiles$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofiles$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Securityprofiles$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/securityProfiles').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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 SecurityProfile. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.securityProfiles.patch({ + * // Immutable. Identifier. Name of the SecurityProfile resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile\}`. + * name: 'projects/my-project/locations/my-location/securityProfiles/my-securityProfile', + * // Required. Field mask is used to specify the fields to be overwritten in the SecurityProfile 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. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": {}, + * // "customMirroringProfile": {}, + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": {}, + * // "type": "my_type", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Securityprofiles$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Securityprofiles$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Securityprofiles$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Securityprofiles$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Securityprofiles$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Securityprofiles$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Securityprofiles$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Securityprofiles$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Securityprofiles$Create extends StandardParameters { + /** + * Required. The parent resource of the SecurityProfile. Must be in the format `projects|organizations/x/locations/{location\}`. + */ + parent?: string; + /** + * Required. Short name of the SecurityProfile resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "security_profile1". + */ + securityProfileId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityProfile; + } + export interface Params$Resource$Projects$Locations$Securityprofiles$Delete extends StandardParameters { + /** + * Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. + */ + etag?: string; + /** + * Required. A name of the SecurityProfile to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Securityprofiles$Get extends StandardParameters { + /** + * Required. A name of the SecurityProfile to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Securityprofiles$List extends StandardParameters { + /** + * Optional. Maximum number of SecurityProfiles to return per call. + */ + pageSize?: number; + /** + * Optional. The value returned by the last `ListSecurityProfilesResponse` Indicates that this is a continuation of a prior `ListSecurityProfiles` call, and that the system should return the next page of data. + */ + pageToken?: string; + /** + * Required. The project or organization and location from which the SecurityProfiles should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Securityprofiles$Patch extends StandardParameters { + /** + * Immutable. Identifier. Name of the SecurityProfile resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile\}`. + */ + name?: string; + /** + * Required. Field mask is used to specify the fields to be overwritten in the SecurityProfile 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. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityProfile; + } + export class Resource$Projects$Locations$Servertlspolicies { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/networkservices/v1.ts b/src/apis/networkservices/v1.ts index 0043090ad20..3a0c26b079e 100644 --- a/src/apis/networkservices/v1.ts +++ b/src/apis/networkservices/v1.ts @@ -155,7 +155,7 @@ export namespace networkservices_v1 { */ export interface Schema$AuthzExtension { /** - * Required. The `:authority` header in the gRPC request sent from Envoy to the extension service. + * Optional. The `:authority` header in the gRPC request sent from Envoy to the extension service. It is required when the `service` field points to a backend service or a wasm plugin. */ authority?: string | null; /** @@ -170,6 +170,10 @@ export namespace networkservices_v1 { * Optional. Determines how the proxy behaves if the call to the extension fails or times out. When set to `TRUE`, request or response processing continues without error. Any subsequent extensions in the extension chain are also executed. When set to `FALSE` or the default setting of `FALSE` is used, one of the following happens: * If response headers have not been delivered to the downstream client, a generic 500 error is returned to the client. The error response can be tailored by configuring a custom error response in the load balancer. * If response headers have been delivered, then the HTTP stream to the downstream client is reset. */ failOpen?: boolean | null; + /** + * Optional. List of the Envoy attributes to forward to the extension server. The attributes provided here are included as part of the `ProcessingRequest.attributes` field (of type `map`), where the keys are the attribute names. Refer to the [documentation](https://cloud.google.com/service-extensions/docs/cel-matcher-language-reference#attributes) for the names of attributes that can be forwarded. If omitted, no attributes are sent. Each element is a string indicating the attribute name. + */ + forwardAttributes?: string[] | null; /** * Optional. List of the HTTP headers to forward to the extension (from the client). If omitted, all headers are sent. Each element is a string indicating the header name. */ @@ -366,6 +370,10 @@ export namespace networkservices_v1 { * Optional. Determines how the proxy behaves if the call to the extension fails or times out. When set to `TRUE`, request or response processing continues without error. Any subsequent extensions in the extension chain are also executed. When set to `FALSE` or the default setting of `FALSE` is used, one of the following happens: * If response headers have not been delivered to the downstream client, a generic 500 error is returned to the client. The error response can be tailored by configuring a custom error response in the load balancer. * If response headers have been delivered, then the HTTP stream to the downstream client is reset. */ failOpen?: boolean | null; + /** + * Optional. List of the Envoy attributes to forward to the extension server. The attributes provided here are included as part of the `ProcessingRequest.attributes` field (of type `map`), where the keys are the attribute names. Refer to the [documentation](https://cloud.google.com/service-extensions/docs/cel-matcher-language-reference#attributes) for the names of attributes that can be forwarded. If omitted, no attributes are sent. Each element is a string indicating the attribute name. + */ + forwardAttributes?: string[] | null; /** * Optional. List of the HTTP headers to forward to the extension (from the client or backend). If omitted, all headers are sent. Each element is a string indicating the header name. */ @@ -379,7 +387,7 @@ export namespace networkservices_v1 { */ name?: string | null; /** - * Optional. When set to `TRUE`, enables `observability_mode` on the `ext_proc` filter. This makes `ext_proc` calls asynchronous. Envoy doesn't check for the response from `ext_proc` calls. For more information about the filter, see: https://www.envoyproxy.io/docs/envoy/v1.32.3/api-v3/extensions/filters/http/ext_proc/v3/ext_proc.proto#extensions-filters-http-ext-proc-v3-externalprocessor This field is helpful when you want to try out the extension in async log-only mode. Supported by regional `LbTrafficExtension` and `LbRouteExtension` resources. Only `STREAMED` (default) body processing mode is supported. + * Optional. When set to `true`, the calls to the extension backend are performed asynchronously, without pausing the processing of the ongoing request. In this mode, only `STREAMED` (default) body processing is supported. Responses, if any, are ignored. Supported by regional `LbTrafficExtension` and `LbRouteExtension` resources. */ observabilityMode?: boolean | null; /** @@ -420,6 +428,14 @@ export namespace networkservices_v1 { * Optional. Zero or one IPv4 or IPv6 address on which the Gateway will receive the traffic. When no address is provided, an IP from the subnetwork is allocated This field only applies to gateways of type 'SECURE_WEB_GATEWAY'. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6. */ addresses?: string[] | null; + /** + * Optional. If true, the gateway will allow traffic from clients outside of the region where the gateway is located. This field is configurable only for gateways of type SECURE_WEB_GATEWAY. + */ + allowGlobalAccess?: boolean | null; + /** + * Optional. If true, the Gateway will listen on all ports. This is mutually exclusive with the `ports` field. This field only applies to gateways of type 'SECURE_WEB_GATEWAY'. + */ + allPorts?: boolean | null; /** * Optional. A fully-qualified Certificates URL reference. The proxy presents a Certificate (selected based on SNI) when establishing a TLS connection. This feature only applies to gateways of type 'SECURE_WEB_GATEWAY'. */ @@ -2501,7 +2517,7 @@ export namespace networkservices_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2531,7 +2547,7 @@ export namespace networkservices_v1 { * * // Do the magic * const res = await networkservices.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2658,7 +2674,7 @@ export namespace networkservices_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -2731,6 +2747,7 @@ export namespace networkservices_v1 { * // "createTime": "my_createTime", * // "description": "my_description", * // "failOpen": false, + * // "forwardAttributes": [], * // "forwardHeaders": [], * // "labels": {}, * // "loadBalancingScheme": "my_loadBalancingScheme", @@ -3036,6 +3053,7 @@ export namespace networkservices_v1 { * // "createTime": "my_createTime", * // "description": "my_description", * // "failOpen": false, + * // "forwardAttributes": [], * // "forwardHeaders": [], * // "labels": {}, * // "loadBalancingScheme": "my_loadBalancingScheme", @@ -3339,6 +3357,7 @@ export namespace networkservices_v1 { * // "createTime": "my_createTime", * // "description": "my_description", * // "failOpen": false, + * // "forwardAttributes": [], * // "forwardHeaders": [], * // "labels": {}, * // "loadBalancingScheme": "my_loadBalancingScheme", @@ -5895,6 +5914,8 @@ export namespace networkservices_v1 { * // request body parameters * // { * // "addresses": [], + * // "allPorts": false, + * // "allowGlobalAccess": false, * // "certificateUrls": [], * // "createTime": "my_createTime", * // "description": "my_description", @@ -6201,6 +6222,8 @@ export namespace networkservices_v1 { * // Example response * // { * // "addresses": [], + * // "allPorts": false, + * // "allowGlobalAccess": false, * // "certificateUrls": [], * // "createTime": "my_createTime", * // "description": "my_description", @@ -6501,6 +6524,8 @@ export namespace networkservices_v1 { * // request body parameters * // { * // "addresses": [], + * // "allPorts": false, + * // "allowGlobalAccess": false, * // "certificateUrls": [], * // "createTime": "my_createTime", * // "description": "my_description", @@ -7864,6 +7889,8 @@ export namespace networkservices_v1 { * httpRouteId: 'placeholder-value', * // Required. The parent resource of the HttpRoute. Must be in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -8304,6 +8331,8 @@ export namespace networkservices_v1 { * * // Do the magic * const res = await networkservices.projects.locations.httpRoutes.list({ + * // Optional. Filter expression to restrict the list. + * filter: 'placeholder-value', * // Maximum number of HttpRoutes to return per call. * pageSize: 'placeholder-value', * // The value returned by the last `ListHttpRoutesResponse` Indicates that this is a continuation of a prior `ListHttpRoutes` call, and that the system should return the next page of data. @@ -8589,6 +8618,10 @@ export namespace networkservices_v1 { * Required. The parent resource of the HttpRoute. Must be in the format `projects/x/locations/x`. */ parent?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; /** * Request body metadata @@ -8608,6 +8641,10 @@ export namespace networkservices_v1 { name?: string; } export interface Params$Resource$Projects$Locations$Httproutes$List extends StandardParameters { + /** + * Optional. Filter expression to restrict the list. + */ + filter?: string; /** * Maximum number of HttpRoutes to return per call. */ diff --git a/src/apis/networkservices/v1beta1.ts b/src/apis/networkservices/v1beta1.ts index 229e0eec5c2..b2fe88a8dab 100644 --- a/src/apis/networkservices/v1beta1.ts +++ b/src/apis/networkservices/v1beta1.ts @@ -124,12 +124,143 @@ export namespace networkservices_v1beta1 { } } + /** + * AgentGateway represents the agent gateway resource. + */ + export interface Schema$AgentGateway { + /** + * Output only. Field for populated AgentGateway card. + */ + agentGatewayCard?: Schema$AgentGatewayAgentGatewayOutputCard; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Optional. A free-text description of the resource. Max length 1024 characters. + */ + description?: string | null; + /** + * Optional. Etag of the resource. If this is provided, it must match the server's etag. If the provided etag does not match the server's etag, the request will fail with a 409 ABORTED error. + */ + etag?: string | null; + /** + * Optional. Proxy is orchestrated and managed by GoogleCloud in a tenant project. + */ + googleManaged?: Schema$AgentGatewayGoogleManaged; + /** + * Optional. Set of label tags associated with the AgentGateway resource. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. Name of the AgentGateway resource. It matches pattern `projects/x/locations/x/agentGateways/`. + */ + name?: string | null; + /** + * Optional. Network configuration for the AgentGateway. + */ + networkConfig?: Schema$AgentGatewayNetworkConfig; + /** + * Required. List of protocols supported by an Agent Gateway + */ + protocols?: string[] | null; + /** + * Optional. A list of Agent registries containing the agents, MCP servers and tools governed by the Agent Gateway. Note: Currently limited to project-scoped registries Must be of format `//agentregistry.googleapis.com/projects/{project\}/locations/{location\}/ + */ + registries?: string[] | null; + /** + * Optional. Attach to existing Application Load Balancers or Secure Web Proxies. + */ + selfManaged?: Schema$AgentGatewaySelfManaged; + /** + * Output only. The timestamp when the resource was updated. + */ + updateTime?: string | null; + } + /** + * AgentGatewayOutputCard contains informational output-only fields + */ + export interface Schema$AgentGatewayAgentGatewayOutputCard { + /** + * Output only. mTLS Endpoint associated with this AgentGateway + */ + mtlsEndpoint?: string | null; + /** + * Output only. Root Certificates for Agents to validate this AgentGateway + */ + rootCertificates?: string[] | null; + /** + * Output only. Service Account used by Service Extensions to operate. + */ + serviceExtensionsServiceAccount?: string | null; + } + /** + * Configuration for Google Managed deployment mode. Proxy is orchestrated and managed by GoogleCloud in a tenant project. + */ + export interface Schema$AgentGatewayGoogleManaged { + /** + * Optional. Operating Mode of Agent Gateway. + */ + governedAccessPath?: string | null; + } + /** + * NetworkConfig contains network configurations for the AgentGateway. + */ + export interface Schema$AgentGatewayNetworkConfig { + /** + * Optional. Optional DNS peering configuration for connectivity to your private VPC network. + */ + dnsPeeringConfig?: Schema$AgentGatewayNetworkConfigDnsPeeringConfig; + /** + * Optional. Optional PSC-Interface network attachment for connectivity to your private VPCs network. + */ + egress?: Schema$AgentGatewayNetworkConfigEgress; + } + /** + * DNS peering config for the user VPC network. + */ + export interface Schema$AgentGatewayNetworkConfigDnsPeeringConfig { + /** + * Required. Domain names for which DNS queries should be forwarded to the target network. + */ + domains?: string[] | null; + /** + * Required. Target network in 'target project' to which DNS queries should be forwarded to. Must be in format of `projects/{project\}/global/networks/{network\}`. + */ + targetNetwork?: string | null; + /** + * Required. Target project ID to which DNS queries should be forwarded to. This can be the same project that contains the AgentGateway or a different project. + */ + targetProject?: string | null; + } + /** + * Configuration for Egress + */ + export interface Schema$AgentGatewayNetworkConfigEgress { + /** + * Optional. The URI of the Network Attachment resource. + */ + networkAttachment?: string | null; + } + /** + * Configuration for Self Managed deployment mode. Attach to existing Application Load Balancers or Secure Web Proxies. + */ + export interface Schema$AgentGatewaySelfManaged { + /** + * Optional. A supported Google Cloud networking proxy in the Project and Location + */ + resourceUri?: string | null; + /** + * Optional. List of supported Google Cloud networking proxies in the Project and Location. resource_uris is mutually exclusive with resource_uri. + */ + resourceUris?: string[] | null; + } /** * `AuthzExtension` is a resource that allows traffic forwarding to a callout backend service to make an authorization decision. */ export interface Schema$AuthzExtension { /** - * Required. The `:authority` header in the gRPC request sent from Envoy to the extension service. + * Optional. The `:authority` header in the gRPC request sent from Envoy to the extension service. It is required when the `service` field points to a backend service or a wasm plugin. */ authority?: string | null; /** @@ -144,6 +275,10 @@ export namespace networkservices_v1beta1 { * Optional. Determines how the proxy behaves if the call to the extension fails or times out. When set to `TRUE`, request or response processing continues without error. Any subsequent extensions in the extension chain are also executed. When set to `FALSE` or the default setting of `FALSE` is used, one of the following happens: * If response headers have not been delivered to the downstream client, a generic 500 error is returned to the client. The error response can be tailored by configuring a custom error response in the load balancer. * If response headers have been delivered, then the HTTP stream to the downstream client is reset. */ failOpen?: boolean | null; + /** + * Optional. List of the Envoy attributes to forward to the extension server. The attributes provided here are included as part of the `ProcessingRequest.attributes` field (of type `map`), where the keys are the attribute names. Refer to the [documentation](https://cloud.google.com/service-extensions/docs/cel-matcher-language-reference#attributes) for the names of attributes that can be forwarded. If omitted, no attributes are sent. Each element is a string indicating the attribute name. + */ + forwardAttributes?: string[] | null; /** * Optional. List of the HTTP headers to forward to the extension (from the client). If omitted, all headers are sent. Each element is a string indicating the header name. */ @@ -284,6 +419,10 @@ export namespace networkservices_v1beta1 { * Optional. Determines how the proxy behaves if the call to the extension fails or times out. When set to `TRUE`, request or response processing continues without error. Any subsequent extensions in the extension chain are also executed. When set to `FALSE` or the default setting of `FALSE` is used, one of the following happens: * If response headers have not been delivered to the downstream client, a generic 500 error is returned to the client. The error response can be tailored by configuring a custom error response in the load balancer. * If response headers have been delivered, then the HTTP stream to the downstream client is reset. */ failOpen?: boolean | null; + /** + * Optional. List of the Envoy attributes to forward to the extension server. The attributes provided here are included as part of the `ProcessingRequest.attributes` field (of type `map`), where the keys are the attribute names. Refer to the [documentation](https://cloud.google.com/service-extensions/docs/cel-matcher-language-reference#attributes) for the names of attributes that can be forwarded. If omitted, no attributes are sent. Each element is a string indicating the attribute name. + */ + forwardAttributes?: string[] | null; /** * Optional. List of the HTTP headers to forward to the extension (from the client or backend). If omitted, all headers are sent. Each element is a string indicating the header name. */ @@ -297,7 +436,7 @@ export namespace networkservices_v1beta1 { */ name?: string | null; /** - * Optional. When set to `TRUE`, enables `observability_mode` on the `ext_proc` filter. This makes `ext_proc` calls asynchronous. Envoy doesn't check for the response from `ext_proc` calls. For more information about the filter, see: https://www.envoyproxy.io/docs/envoy/v1.32.3/api-v3/extensions/filters/http/ext_proc/v3/ext_proc.proto#extensions-filters-http-ext-proc-v3-externalprocessor This field is helpful when you want to try out the extension in async log-only mode. Supported by regional `LbTrafficExtension` and `LbRouteExtension` resources. Only `STREAMED` (default) body processing mode is supported. + * Optional. When set to `true`, the calls to the extension backend are performed asynchronously, without pausing the processing of the ongoing request. In this mode, only `STREAMED` (default) body processing is supported. Responses, if any, are ignored. Supported by regional `LbTrafficExtension` and `LbRouteExtension` resources. */ observabilityMode?: boolean | null; /** @@ -338,6 +477,14 @@ export namespace networkservices_v1beta1 { * Optional. Zero or one IPv4 or IPv6 address on which the Gateway will receive the traffic. When no address is provided, an IP from the subnetwork is allocated This field only applies to gateways of type 'SECURE_WEB_GATEWAY'. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6. */ addresses?: string[] | null; + /** + * Optional. If true, the gateway will allow traffic from clients outside of the region where the gateway is located. This field is configurable only for gateways of type SECURE_WEB_GATEWAY. + */ + allowGlobalAccess?: boolean | null; + /** + * Optional. If true, the Gateway will listen on all ports. This is mutually exclusive with the `ports` field. This field only applies to gateways of type 'SECURE_WEB_GATEWAY'. + */ + allPorts?: boolean | null; /** * Optional. A fully-qualified Certificates URL reference. The proxy presents a Certificate (selected based on SNI) when establishing a TLS connection. This feature only applies to gateways of type 'SECURE_WEB_GATEWAY'. */ @@ -1231,6 +1378,23 @@ export namespace networkservices_v1beta1 { */ updateTime?: string | null; } + /** + * Response returned by the ListAgentGateways method. + */ + export interface Schema$ListAgentGatewaysResponse { + /** + * List of AgentGateway resources. + */ + agentGateways?: Schema$AgentGateway[]; + /** + * If there might be more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`. + */ + nextPageToken?: string | null; + /** + * Unreachable resources. Populated when the request attempts to list all resources across all supported locations, while some locations are temporarily unavailable. + */ + unreachable?: string[] | null; + } /** * Message for response to listing `AuthzExtension` resources. */ @@ -2251,6 +2415,7 @@ export namespace networkservices_v1beta1 { export class Resource$Projects$Locations { context: APIRequestContext; + agentGateways: Resource$Projects$Locations$Agentgateways; authzExtensions: Resource$Projects$Locations$Authzextensions; endpointPolicies: Resource$Projects$Locations$Endpointpolicies; gateways: Resource$Projects$Locations$Gateways; @@ -2269,6 +2434,9 @@ export namespace networkservices_v1beta1 { wasmPlugins: Resource$Projects$Locations$Wasmplugins; constructor(context: APIRequestContext) { this.context = context; + this.agentGateways = new Resource$Projects$Locations$Agentgateways( + this.context + ); this.authzExtensions = new Resource$Projects$Locations$Authzextensions( this.context ); @@ -2309,7 +2477,635 @@ export namespace networkservices_v1beta1 { } /** - * Gets information about a location. + * Gets information about a location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networkservices = google.networkservices('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networkservices.projects.locations.get({ + * // Resource name for the location. + * name: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "displayName": "my_displayName", + * // "labels": {}, + * // "locationId": "my_locationId", + * // "metadata": {}, + * // "name": "my_name" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Get, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + 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. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networkservices = google.networkservices('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networkservices.projects.locations.list({ + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. + * extraLocationTypes: 'placeholder-value', + * // 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: 'placeholder-value', + * // The resource that owns the locations collection, if applicable. + * name: 'projects/my-project', + * // The maximum number of results to return. If not set, the service selects a default. + * pageSize: 'placeholder-value', + * // A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "locations": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$List, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}/locations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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 { + /** + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. + */ + extraLocationTypes?: string[]; + /** + * 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$Agentgateways { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new AgentGateway in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networkservices = google.networkservices('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networkservices.projects.locations.agentGateways.create({ + * // Required. Short name of the AgentGateway resource to be created. + * agentGatewayId: 'placeholder-value', + * // Required. The parent resource of the AgentGateway. Must be in the format `projects/x/locations/x`. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "agentGatewayCard": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "googleManaged": {}, + * // "labels": {}, + * // "name": "my_name", + * // "networkConfig": {}, + * // "protocols": [], + * // "registries": [], + * // "selfManaged": {}, + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Agentgateways$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Agentgateways$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Agentgateways$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Agentgateways$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Agentgateways$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentgateways$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentgateways$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Agentgateways$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/agentGateways').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single AgentGateway. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networkservices = google.networkservices('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networkservices.projects.locations.agentGateways.delete({ + * // Optional. The etag of the AgentGateway to delete. + * etag: 'placeholder-value', + * // Required. A name of the AgentGateway to delete. Must be in the format `projects/x/locations/x/agentGateways/x`. + * name: 'projects/my-project/locations/my-location/agentGateways/my-agentGateway', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Agentgateways$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Agentgateways$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Agentgateways$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Agentgateways$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Agentgateways$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentgateways$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentgateways$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Agentgateways$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + 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 AgentGateway. * @example * ```js * // Before running the sample: @@ -2338,19 +3134,26 @@ export namespace networkservices_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networkservices.projects.locations.get({ - * // Resource name for the location. - * name: 'projects/my-project/locations/my-location', + * const res = await networkservices.projects.locations.agentGateways.get({ + * // Required. A name of the AgentGateway to get. Must be in the format `projects/x/locations/x/agentGateways/x`. + * name: 'projects/my-project/locations/my-location/agentGateways/my-agentGateway', * }); * console.log(res.data); * * // Example response * // { - * // "displayName": "my_displayName", + * // "agentGatewayCard": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "googleManaged": {}, * // "labels": {}, - * // "locationId": "my_locationId", - * // "metadata": {}, - * // "name": "my_name" + * // "name": "my_name", + * // "networkConfig": {}, + * // "protocols": [], + * // "registries": [], + * // "selfManaged": {}, + * // "updateTime": "my_updateTime" * // } * } * @@ -2367,52 +3170,52 @@ export namespace networkservices_v1beta1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Get, + params: Params$Resource$Projects$Locations$Agentgateways$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Get, + params?: Params$Resource$Projects$Locations$Agentgateways$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Projects$Locations$Get, + params: Params$Resource$Projects$Locations$Agentgateways$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Agentgateways$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Get, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Agentgateways$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Agentgateways$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Get; + {}) as Params$Resource$Projects$Locations$Agentgateways$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Get; + params = {} as Params$Resource$Projects$Locations$Agentgateways$Get; options = {}; } @@ -2438,17 +3241,17 @@ export namespace networkservices_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists AgentGateways in a given project and location. * @example * ```js * // Before running the sample: @@ -2477,24 +3280,23 @@ export namespace networkservices_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networkservices.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. - * extraLocationTypes: 'placeholder-value', - * // 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: 'placeholder-value', - * // The resource that owns the locations collection, if applicable. - * name: 'projects/my-project', - * // The maximum number of results to return. If not set, the service selects a default. + * const res = await networkservices.projects.locations.agentGateways.list({ + * // Optional. Maximum number of AgentGateways to return per call. * pageSize: 'placeholder-value', - * // A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + * // Optional. The value returned by the last `ListAgentGatewaysResponse` Indicates that this is a continuation of a prior `ListAgentGateways` call, and that the system should return the next page of data. * pageToken: 'placeholder-value', + * // Required. The project and location from which the AgentGateways should be listed, specified in the format `projects/x/locations/x`. + * parent: 'projects/my-project/locations/my-location', + * // Optional. If true, allow partial responses for multi-regional Aggregated List requests. Otherwise if one of the locations is down or unreachable, the Aggregated List request will fail. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "locations": [], - * // "nextPageToken": "my_nextPageToken" + * // "agentGateways": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -2511,54 +3313,56 @@ export namespace networkservices_v1beta1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$List, + params: Params$Resource$Projects$Locations$Agentgateways$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$List, + params?: Params$Resource$Projects$Locations$Agentgateways$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Projects$Locations$List, + params: Params$Resource$Projects$Locations$Agentgateways$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$List, + params: Params$Resource$Projects$Locations$Agentgateways$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Agentgateways$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Agentgateways$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$List; + {}) as Params$Resource$Projects$Locations$Agentgateways$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$List; + params = {} as Params$Resource$Projects$Locations$Agentgateways$List; options = {}; } @@ -2572,7 +3376,7 @@ export namespace networkservices_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}/locations').replace( + url: (rootUrl + '/v1beta1/{+parent}/agentGateways').replace( /([^:]\/)\/+/g, '$1' ), @@ -2582,48 +3386,244 @@ export namespace networkservices_v1beta1 { 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 AgentGateway. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const networkservices = google.networkservices('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networkservices.projects.locations.agentGateways.patch({ + * // Identifier. Name of the AgentGateway resource. It matches pattern `projects/x/locations/x/agentGateways/`. + * name: 'projects/my-project/locations/my-location/agentGateways/my-agentGateway', + * // Optional. Field mask is used to specify the fields to be overwritten in the AgentGateway 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: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "agentGatewayCard": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "googleManaged": {}, + * // "labels": {}, + * // "name": "my_name", + * // "networkConfig": {}, + * // "protocols": [], + * // "registries": [], + * // "selfManaged": {}, + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Agentgateways$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Agentgateways$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Agentgateways$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Agentgateways$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Agentgateways$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentgateways$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentgateways$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Agentgateways$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, requiredParams: ['name'], pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Projects$Locations$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Agentgateways$Create extends StandardParameters { /** - * Resource name for the location. + * Required. Short name of the AgentGateway resource to be created. */ - name?: string; + agentGatewayId?: string; + /** + * Required. The parent resource of the AgentGateway. Must be in the format `projects/x/locations/x`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AgentGateway; } - export interface Params$Resource$Projects$Locations$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Agentgateways$Delete extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. The etag of the AgentGateway to delete. */ - extraLocationTypes?: string[]; + etag?: string; /** - * 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). + * Required. A name of the AgentGateway to delete. Must be in the format `projects/x/locations/x/agentGateways/x`. */ - filter?: string; + name?: string; + } + export interface Params$Resource$Projects$Locations$Agentgateways$Get extends StandardParameters { /** - * The resource that owns the locations collection, if applicable. + * Required. A name of the AgentGateway to get. Must be in the format `projects/x/locations/x/agentGateways/x`. */ name?: string; + } + export interface Params$Resource$Projects$Locations$Agentgateways$List extends StandardParameters { /** - * The maximum number of results to return. If not set, the service selects a default. + * Optional. Maximum number of AgentGateways to return per call. */ pageSize?: number; /** - * A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + * Optional. The value returned by the last `ListAgentGatewaysResponse` Indicates that this is a continuation of a prior `ListAgentGateways` call, and that the system should return the next page of data. */ pageToken?: string; + /** + * Required. The project and location from which the AgentGateways should be listed, specified in the format `projects/x/locations/x`. + */ + parent?: string; + /** + * Optional. If true, allow partial responses for multi-regional Aggregated List requests. Otherwise if one of the locations is down or unreachable, the Aggregated List request will fail. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Projects$Locations$Agentgateways$Patch extends StandardParameters { + /** + * Identifier. Name of the AgentGateway resource. It matches pattern `projects/x/locations/x/agentGateways/`. + */ + name?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the AgentGateway 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; + + /** + * Request body metadata + */ + requestBody?: Schema$AgentGateway; } export class Resource$Projects$Locations$Authzextensions { @@ -2678,6 +3678,7 @@ export namespace networkservices_v1beta1 { * // "createTime": "my_createTime", * // "description": "my_description", * // "failOpen": false, + * // "forwardAttributes": [], * // "forwardHeaders": [], * // "labels": {}, * // "loadBalancingScheme": "my_loadBalancingScheme", @@ -2983,6 +3984,7 @@ export namespace networkservices_v1beta1 { * // "createTime": "my_createTime", * // "description": "my_description", * // "failOpen": false, + * // "forwardAttributes": [], * // "forwardHeaders": [], * // "labels": {}, * // "loadBalancingScheme": "my_loadBalancingScheme", @@ -3286,6 +4288,7 @@ export namespace networkservices_v1beta1 { * // "createTime": "my_createTime", * // "description": "my_description", * // "failOpen": false, + * // "forwardAttributes": [], * // "forwardHeaders": [], * // "labels": {}, * // "loadBalancingScheme": "my_loadBalancingScheme", @@ -4363,6 +5366,8 @@ export namespace networkservices_v1beta1 { * // request body parameters * // { * // "addresses": [], + * // "allPorts": false, + * // "allowGlobalAccess": false, * // "certificateUrls": [], * // "createTime": "my_createTime", * // "description": "my_description", @@ -4669,6 +5674,8 @@ export namespace networkservices_v1beta1 { * // Example response * // { * // "addresses": [], + * // "allPorts": false, + * // "allowGlobalAccess": false, * // "certificateUrls": [], * // "createTime": "my_createTime", * // "description": "my_description", @@ -4969,6 +5976,8 @@ export namespace networkservices_v1beta1 { * // request body parameters * // { * // "addresses": [], + * // "allPorts": false, + * // "allowGlobalAccess": false, * // "certificateUrls": [], * // "createTime": "my_createTime", * // "description": "my_description", @@ -6332,6 +7341,8 @@ export namespace networkservices_v1beta1 { * httpRouteId: 'placeholder-value', * // Required. The parent resource of the HttpRoute. Must be in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -6772,6 +7783,8 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.httpRoutes.list({ + * // Optional. Filter expression to restrict the list. + * filter: 'placeholder-value', * // Maximum number of HttpRoutes to return per call. * pageSize: 'placeholder-value', * // The value returned by the last `ListHttpRoutesResponse` Indicates that this is a continuation of a prior `ListHttpRoutes` call, and that the system should return the next page of data. @@ -7057,6 +8070,10 @@ export namespace networkservices_v1beta1 { * Required. The parent resource of the HttpRoute. Must be in the format `projects/x/locations/x`. */ parent?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; /** * Request body metadata @@ -7076,6 +8093,10 @@ export namespace networkservices_v1beta1 { name?: string; } export interface Params$Resource$Projects$Locations$Httproutes$List extends StandardParameters { + /** + * Optional. Filter expression to restrict the list. + */ + filter?: string; /** * Maximum number of HttpRoutes to return per call. */ diff --git a/src/apis/notebooks/v1.ts b/src/apis/notebooks/v1.ts index 50bc662d302..189cdb92b61 100644 --- a/src/apis/notebooks/v1.ts +++ b/src/apis/notebooks/v1.ts @@ -1931,7 +1931,7 @@ export namespace notebooks_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/notebooks/v2.ts b/src/apis/notebooks/v2.ts index 0821fbbf525..d70b9f17c53 100644 --- a/src/apis/notebooks/v2.ts +++ b/src/apis/notebooks/v2.ts @@ -1191,7 +1191,7 @@ export namespace notebooks_v2 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/observability/v1.ts b/src/apis/observability/v1.ts index 64854b7976f..e4fc2b51151 100644 --- a/src/apis/observability/v1.ts +++ b/src/apis/observability/v1.ts @@ -823,7 +823,7 @@ export namespace observability_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -853,7 +853,7 @@ export namespace observability_v1 { * * // Do the magic * const res = await observability.folders.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1138,7 +1138,7 @@ export namespace observability_v1 { } export interface Params$Resource$Folders$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -2085,7 +2085,7 @@ export namespace observability_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2115,7 +2115,7 @@ export namespace observability_v1 { * * // Do the magic * const res = await observability.organizations.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2400,7 +2400,7 @@ export namespace observability_v1 { } export interface Params$Resource$Organizations$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -3357,7 +3357,7 @@ export namespace observability_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3387,7 +3387,7 @@ export namespace observability_v1 { * * // Do the magic * const res = await observability.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3672,7 +3672,7 @@ export namespace observability_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/ondemandscanning/v1.ts b/src/apis/ondemandscanning/v1.ts index da86ea477f5..e7c26d5b446 100644 --- a/src/apis/ondemandscanning/v1.ts +++ b/src/apis/ondemandscanning/v1.ts @@ -124,6 +124,19 @@ export namespace ondemandscanning_v1 { } } + /** + * AISkillAnalysisOccurrence provides the results of an AI-based skill analysis. + */ + export interface Schema$AISkillAnalysisOccurrence { + /** + * Findings produced by the analysis. + */ + findings?: Schema$Finding[]; + /** + * Name of the skill that produced this analysis. + */ + skillName?: string | null; + } /** * An alias to a repo revision. */ @@ -635,6 +648,43 @@ export namespace ondemandscanning_v1 { */ filePath?: string | null; layerDetails?: Schema$LayerDetails; + /** + * Line number in the file where the package is found. Applies only to source repository scanning. Note: this field is marked as `optional` in other corresponding protos, but in edition 2023, the "optional" keyword is redundant. + */ + lineNumber?: number | null; + } + /** + * Finding provides details for a single finding within an AISkillAnalysisOccurrence. + */ + export interface Schema$Finding { + /** + * Category of the finding. + */ + category?: string | null; + /** + * Detailed description of the finding. + */ + description?: string | null; + /** + * Path to the file where the finding was detected. + */ + filePath?: string | null; + /** + * Unique identifier of the rule that produced this finding. + */ + ruleId?: string | null; + /** + * Severity of the finding. + */ + severity?: string | null; + /** + * Code snippet relevant to the finding. + */ + snippet?: string | null; + /** + * Title of the finding. + */ + title?: string | null; } /** * A set of properties that uniquely identify a given Docker image. @@ -720,6 +770,10 @@ export namespace ondemandscanning_v1 { * Each package found in a file should have its own layer metadata (that is, information from the origin layer of the package). */ layerDetails?: Schema$GrafeasV1LayerDetails; + /** + * Line number in the file where the package was found. Optional field that only applies to source repository scanning. + */ + lineNumber?: number | null; } /** * Details about the layer a package was found in. @@ -1061,6 +1115,14 @@ export namespace ondemandscanning_v1 { * An instance of an analysis type that has been found on a resource. */ export interface Schema$Occurrence { + /** + * The time this advisory was published by the source. + */ + advisoryPublishTime?: string | null; + /** + * Describes an AI skill analysis. + */ + aiSkillAnalysis?: Schema$AISkillAnalysisOccurrence; /** * Describes an attestation of an artifact. */ diff --git a/src/apis/ondemandscanning/v1beta1.ts b/src/apis/ondemandscanning/v1beta1.ts index 1263fd76cb0..f2d1a117f9d 100644 --- a/src/apis/ondemandscanning/v1beta1.ts +++ b/src/apis/ondemandscanning/v1beta1.ts @@ -124,6 +124,19 @@ export namespace ondemandscanning_v1beta1 { } } + /** + * AISkillAnalysisOccurrence provides the results of an AI-based skill analysis. + */ + export interface Schema$AISkillAnalysisOccurrence { + /** + * Findings produced by the analysis. + */ + findings?: Schema$Finding[]; + /** + * Name of the skill that produced this analysis. + */ + skillName?: string | null; + } /** * An alias to a repo revision. */ @@ -631,6 +644,43 @@ export namespace ondemandscanning_v1beta1 { */ filePath?: string | null; layerDetails?: Schema$LayerDetails; + /** + * Line number in the file where the package is found. Applies only to source repository scanning. Note: this field is marked as `optional` in other corresponding protos, but in edition 2023, the "optional" keyword is redundant. + */ + lineNumber?: number | null; + } + /** + * Finding provides details for a single finding within an AISkillAnalysisOccurrence. + */ + export interface Schema$Finding { + /** + * Category of the finding. + */ + category?: string | null; + /** + * Detailed description of the finding. + */ + description?: string | null; + /** + * Path to the file where the finding was detected. + */ + filePath?: string | null; + /** + * Unique identifier of the rule that produced this finding. + */ + ruleId?: string | null; + /** + * Severity of the finding. + */ + severity?: string | null; + /** + * Code snippet relevant to the finding. + */ + snippet?: string | null; + /** + * Title of the finding. + */ + title?: string | null; } /** * A set of properties that uniquely identify a given Docker image. @@ -716,6 +766,10 @@ export namespace ondemandscanning_v1beta1 { * Each package found in a file should have its own layer metadata (that is, information from the origin layer of the package). */ layerDetails?: Schema$GrafeasV1LayerDetails; + /** + * Line number in the file where the package was found. Optional field that only applies to source repository scanning. + */ + lineNumber?: number | null; } /** * Details about the layer a package was found in. @@ -1057,6 +1111,14 @@ export namespace ondemandscanning_v1beta1 { * An instance of an analysis type that has been found on a resource. */ export interface Schema$Occurrence { + /** + * The time this advisory was published by the source. + */ + advisoryPublishTime?: string | null; + /** + * Describes an AI skill analysis. + */ + aiSkillAnalysis?: Schema$AISkillAnalysisOccurrence; /** * Describes an attestation of an artifact. */ diff --git a/src/apis/oracledatabase/v1.ts b/src/apis/oracledatabase/v1.ts index 9f245bae847..0e94166609f 100644 --- a/src/apis/oracledatabase/v1.ts +++ b/src/apis/oracledatabase/v1.ts @@ -146,9 +146,13 @@ export namespace oracledatabase_v1 { */ export interface Schema$AutonomousDatabase { /** - * Optional. Immutable. The password for the default ADMIN user. + * Optional. Immutable. The password for the default ADMIN user. Note: Only one of `admin_password_secret_version` or `admin_password` can be populated. */ adminPassword?: string | null; + /** + * Optional. Immutable. The resource name of a secret version in Secret Manager which contains the database admin user's password. Format: projects/{project\}/secrets/{secret\}/versions/{version\}. Note: Only one of `admin_password_secret_version` or `admin_password` can be populated. + */ + adminPasswordSecretVersion?: string | null; /** * Optional. Immutable. The subnet CIDR range for the Autonomous Database. */ @@ -525,7 +529,7 @@ export namespace oracledatabase_v1 { */ isAutoScalingEnabled?: boolean | null; /** - * Output only. This field indicates whether the Autonomous Database has local (in-region) Data Guard enabled. + * Output only. Deprecated: Please use `local_data_guard_enabled` instead. This field indicates whether the Autonomous Database has local (in-region) Data Guard enabled. */ isLocalDataGuardEnabled?: boolean | null; /** @@ -541,9 +545,17 @@ export namespace oracledatabase_v1 { */ lifecycleDetails?: string | null; /** - * Output only. This field indicates the maximum data loss limit for an Autonomous Database, in seconds. + * Output only. Deprecated: Please use `local_adg_auto_failover_max_data_loss_limit_duration` instead. This field indicates the maximum data loss limit for an Autonomous Database, in seconds. */ localAdgAutoFailoverMaxDataLossLimit?: number | null; + /** + * Optional. This field indicates the maximum data loss limit for an Autonomous Database, in seconds. + */ + localAdgAutoFailoverMaxDataLossLimitDuration?: number | null; + /** + * Optional. Indicates whether the Autonomous Database has a local (in-region) standby database. Not applicable to cross-region Data Guard or dedicated Exadata infrastructure. + */ + localDataGuardEnabled?: boolean | null; /** * Output only. This field indicates the local disaster recovery (DR) type of an Autonomous Database. */ @@ -1119,9 +1131,13 @@ export namespace oracledatabase_v1 { */ export interface Schema$Database { /** - * Required. The password for the default ADMIN user. + * Optional. The password for the default ADMIN user. Note: Only one of `admin_password_secret_version` or `admin_password` can be populated. */ adminPassword?: string | null; + /** + * Optional. The resource name of a secret version in Secret Manager which contains the database admin user's password. Format: projects/{project\}/secrets/{secret\}/versions/{version\}. Note: Only one of `admin_password_secret_version` or `admin_password` can be populated. + */ + adminPasswordSecretVersion?: string | null; /** * Optional. The character set for the database. The default is AL32UTF8. */ @@ -1166,14 +1182,26 @@ export namespace oracledatabase_v1 { * Output only. The Status of Operations Insights for this Database. */ opsInsightsStatus?: string | null; + /** + * Optional. The ID of the pluggable database associated with the Database. The ID must be unique within the project and location. + */ + pluggableDatabaseId?: string | null; + /** + * Optional. The pluggable database associated with the Database. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters. + */ + pluggableDatabaseName?: string | null; /** * Optional. The properties of the Database. */ properties?: Schema$DatabaseProperties; /** - * Optional. The TDE wallet password for the database. + * Optional. The TDE wallet password for the database. Note: Only one of `tde_wallet_password_secret_version` or `tde_wallet_password` can be populated. */ tdeWalletPassword?: string | null; + /** + * Optional. The resource name of a secret version in Secret Manager which contains the TDE wallet password for the database. Format: projects/{project\}/secrets/{secret\}/versions/{version\}. Note: Only one of `tde_wallet_password_secret_version` or `tde_wallet_password` can be populated. + */ + tdeWalletPasswordSecretVersion?: string | null; } /** * Details of the Database character set resource. @@ -2141,6 +2169,10 @@ export namespace oracledatabase_v1 { * A token identifying a page of results the server should return. */ nextPageToken?: string | null; + /** + * Unreachable locations when listing resources across all locations using wildcard location '-'. + */ + unreachable?: string[] | null; } /** * The response for `AutonomousDbVersion.List`. @@ -2167,6 +2199,10 @@ export namespace oracledatabase_v1 { * A token for fetching next page of response. */ nextPageToken?: string | null; + /** + * Unreachable locations when listing resources across all locations using wildcard location '-'. + */ + unreachable?: string[] | null; } /** * The response for `CloudVmCluster.List`. @@ -2180,6 +2216,10 @@ export namespace oracledatabase_v1 { * A token to fetch the next page of results. */ nextPageToken?: string | null; + /** + * Unreachable locations when listing resources across all locations using wildcard location '-'. + */ + unreachable?: string[] | null; } /** * The response for `DatabaseCharacterSet.List`. @@ -2271,6 +2311,10 @@ export namespace oracledatabase_v1 { * A token identifying a page of results the server should return. */ nextPageToken?: string | null; + /** + * Unreachable locations when listing resources across all locations using wildcard location '-'. + */ + unreachable?: string[] | null; } /** * The response for `DbVersions.List`. @@ -2310,6 +2354,10 @@ export namespace oracledatabase_v1 { * A token identifying a page of results the server should return. */ nextPageToken?: string | null; + /** + * Unreachable locations when listing resources across all locations using wildcard location '-'. + */ + unreachable?: string[] | null; } /** * The response for `ExascaleDbStorageVault.List`. @@ -2323,6 +2371,10 @@ export namespace oracledatabase_v1 { * A token identifying a page of results the server should return. If present, the next page token can be provided to a subsequent ListExascaleDbStorageVaults call to list the next page. If empty, there are no more pages. */ nextPageToken?: string | null; + /** + * Unreachable locations when listing resources across all locations using wildcard location '-'. + */ + unreachable?: string[] | null; } /** * The response for `GiVersion.List`. @@ -3117,7 +3169,7 @@ export namespace oracledatabase_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3147,7 +3199,7 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = await oracledatabase.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3274,7 +3326,7 @@ export namespace oracledatabase_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -3712,6 +3764,7 @@ export namespace oracledatabase_v1 { * // request body parameters * // { * // "adminPassword": "my_adminPassword", + * // "adminPasswordSecretVersion": "my_adminPasswordSecretVersion", * // "cidr": "my_cidr", * // "createTime": "my_createTime", * // "database": "my_database", @@ -4332,6 +4385,7 @@ export namespace oracledatabase_v1 { * // Example response * // { * // "adminPassword": "my_adminPassword", + * // "adminPasswordSecretVersion": "my_adminPasswordSecretVersion", * // "cidr": "my_cidr", * // "createTime": "my_createTime", * // "database": "my_database", @@ -4490,7 +4544,8 @@ export namespace oracledatabase_v1 { * // Example response * // { * // "autonomousDatabases": [], - * // "nextPageToken": "my_nextPageToken" + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -4641,6 +4696,7 @@ export namespace oracledatabase_v1 { * // request body parameters * // { * // "adminPassword": "my_adminPassword", + * // "adminPasswordSecretVersion": "my_adminPasswordSecretVersion", * // "cidr": "my_cidr", * // "createTime": "my_createTime", * // "database": "my_database", @@ -6358,7 +6414,8 @@ export namespace oracledatabase_v1 { * // Example response * // { * // "cloudExadataInfrastructures": [], - * // "nextPageToken": "my_nextPageToken" + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -7218,7 +7275,8 @@ export namespace oracledatabase_v1 { * // Example response * // { * // "cloudVmClusters": [], - * // "nextPageToken": "my_nextPageToken" + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -7777,6 +7835,7 @@ export namespace oracledatabase_v1 { * // Example response * // { * // "adminPassword": "my_adminPassword", + * // "adminPasswordSecretVersion": "my_adminPasswordSecretVersion", * // "characterSet": "my_characterSet", * // "createTime": "my_createTime", * // "databaseId": "my_databaseId", @@ -7788,8 +7847,11 @@ export namespace oracledatabase_v1 { * // "ncharacterSet": "my_ncharacterSet", * // "ociUrl": "my_ociUrl", * // "opsInsightsStatus": "my_opsInsightsStatus", + * // "pluggableDatabaseId": "my_pluggableDatabaseId", + * // "pluggableDatabaseName": "my_pluggableDatabaseName", * // "properties": {}, - * // "tdeWalletPassword": "my_tdeWalletPassword" + * // "tdeWalletPassword": "my_tdeWalletPassword", + * // "tdeWalletPasswordSecretVersion": "my_tdeWalletPasswordSecretVersion" * // } * } * @@ -8736,7 +8798,8 @@ export namespace oracledatabase_v1 { * // Example response * // { * // "dbSystems": [], - * // "nextPageToken": "my_nextPageToken" + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -9919,7 +9982,8 @@ export namespace oracledatabase_v1 { * // Example response * // { * // "exadbVmClusters": [], - * // "nextPageToken": "my_nextPageToken" + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -11101,7 +11165,8 @@ export namespace oracledatabase_v1 { * // Example response * // { * // "exascaleDbStorageVaults": [], - * // "nextPageToken": "my_nextPageToken" + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * diff --git a/src/apis/orgpolicy/v2.ts b/src/apis/orgpolicy/v2.ts index 63c21dea925..eccc8b21f61 100644 --- a/src/apis/orgpolicy/v2.ts +++ b/src/apis/orgpolicy/v2.ts @@ -142,7 +142,7 @@ export namespace orgpolicy_v2 { spec?: Schema$GoogleCloudOrgpolicyV2PolicySpec; } /** - * A constraint describes a way to restrict resource's configuration. For example, you could enforce a constraint that controls which Google Cloud services can be activated across an organization, or whether a Compute Engine instance can have serial port connections established. Constraints can be configured by the organization policy administrator to fit the needs of the organization by setting a policy that includes constraints at different locations in the organization's resource hierarchy. Policies are inherited down the resource hierarchy from higher levels, but can also be overridden. For details about the inheritance rules, see `Policy`. Constraints have a default behavior determined by the `constraint_default` field, which is the enforcement behavior that is used in the absence of a policy being defined or inherited for the resource in question. + * A constraint describes a way to restrict a resource's configuration. For example, you could enforce a constraint that controls which Google Cloud services can be activated across an organization, or whether a Compute Engine instance can have serial port connections established. Constraints can be configured by the organization policy administrator to fit the needs of the organization by setting a policy that includes constraints at different locations in the organization's resource hierarchy. Policies are inherited down the resource hierarchy from higher levels, but can also be overridden. For details about the inheritance rules, see `Policy`. Constraints have a default behavior determined by the `constraint_default` field, which is the enforcement behavior that is used in the absence of a policy being defined or inherited for the resource in question. */ export interface Schema$GoogleCloudOrgpolicyV2Constraint { /** @@ -162,7 +162,7 @@ export namespace orgpolicy_v2 { */ displayName?: string | null; /** - * Managed constraint and canned constraint sometimes can have equivalents. This field is used to store the equivalent constraint name. + * Defines the equivalent constraint name, if it exists. Managed constraints can have an equivalent legacy managed constraint, and legacy managed constraints can have an equivalent managed constraint. For example, "constraints/iam.disableServiceAccountKeyUpload" is equivalent to "constraints/iam.managed.disableServiceAccountKeyUpload". */ equivalentConstraint?: string | null; /** @@ -216,7 +216,7 @@ export namespace orgpolicy_v2 { ]: Schema$GoogleCloudOrgpolicyV2ConstraintCustomConstraintDefinitionParameter; } | null; /** - * The resource instance type on which this policy applies. Format will be of the form : `/` Example: * `compute.googleapis.com/Instance`. + * The resource instance type that this policy applies to, in the format `/`. Example: * `compute.googleapis.com/Instance`. */ resourceTypes?: string[] | null; } @@ -241,7 +241,7 @@ export namespace orgpolicy_v2 { */ type?: string | null; /** - * Provides a CEL expression to specify the acceptable parameter values during assignment. For example, parameterName in ("parameterValue1", "parameterValue2") + * Provides a CEL expression to specify the acceptable parameter values during assignment. For example, parameterName in ("parameterValue1", "parameterValue2"). */ validValuesExpr?: string | null; } @@ -250,7 +250,7 @@ export namespace orgpolicy_v2 { */ export interface Schema$GoogleCloudOrgpolicyV2ConstraintCustomConstraintDefinitionParameterMetadata { /** - * Detailed description of what this `parameter` is and use of it. Mutable. + * Detailed description of what this `parameter` is and its use. Mutable. */ description?: string | null; } @@ -292,7 +292,7 @@ export namespace orgpolicy_v2 { */ methodTypes?: string[] | null; /** - * Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id\}/customConstraints/{custom_constraint_id\}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 70 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id\}/customConstraints/` is not counted. + * Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id\}/customConstraints/{custom_constraint_id\}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 71 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id\}/customConstraints/custom.` is not counted. */ name?: string | null; /** @@ -344,7 +344,7 @@ export namespace orgpolicy_v2 { policies?: Schema$GoogleCloudOrgpolicyV2Policy[]; } /** - * Defines an organization policy which is used to specify constraints for configurations of Google Cloud resources. + * Defines an organization policy that is used to specify constraints for configurations of Google Cloud resources. */ export interface Schema$GoogleCloudOrgpolicyV2Policy { /** @@ -356,11 +356,11 @@ export namespace orgpolicy_v2 { */ dryRunSpec?: Schema$GoogleCloudOrgpolicyV2PolicySpec; /** - * Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This 'etag' is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. + * Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This entity tag (ETag) is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. */ etag?: string | null; /** - * Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. + * Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. */ name?: string | null; /** @@ -369,15 +369,15 @@ export namespace orgpolicy_v2 { spec?: Schema$GoogleCloudOrgpolicyV2PolicySpec; } /** - * Defines a Google Cloud policy specification which is used to specify constraints for configurations of Google Cloud resources. + * Defines a Google Cloud policy specification that is used to specify constraints for configurations of Google Cloud resources. */ export interface Schema$GoogleCloudOrgpolicyV2PolicySpec { /** - * An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy is returned from either a `GetPolicy` or a `ListPolicies` request, this `etag` indicates the version of the current policySpec to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the `etag` will be unset. + * An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy is returned from either a `GetPolicy` or a `ListPolicies` request, this entity tag (ETag) indicates the version of the current policySpec to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the ETag will be unset. */ etag?: string | null; /** - * Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies which configure list constraints. + * Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies that configure list constraints. */ inheritFromParent?: boolean | null; /** @@ -385,7 +385,7 @@ export namespace orgpolicy_v2 { */ reset?: boolean | null; /** - * In policies for boolean constraints, the following requirements apply: - There must be one and only one policy rule where condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence. + * In policies for boolean constraints, the following requirements apply: - There must be exactly one policy rule where a condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence. */ rules?: Schema$GoogleCloudOrgpolicyV2PolicySpecPolicyRule[]; /** @@ -842,7 +842,7 @@ export namespace orgpolicy_v2 { * * // Do the magic * const res = await orgpolicy.folders.policies.delete({ - * // Optional. The current etag of policy. If an etag is provided and does not match the current etag of the policy, deletion will be blocked and an ABORTED error will be returned. + * // Optional. The current entity tag (ETag) of the organization policy. If an ETag is provided and doesn't match the current ETag of the policy, deletion of the policy will be blocked and an `ABORTED` error will be returned. * etag: 'placeholder-value', * // Required. Name of the policy to delete. See the policy entry for naming rules. * name: 'folders/my-folder/policies/my-policie', @@ -946,7 +946,7 @@ export namespace orgpolicy_v2 { } /** - * Gets a policy on a resource. If no policy is set on the resource, `NOT_FOUND` is returned. The `etag` value can be used with `UpdatePolicy()` to update a policy during read-modify-write. + * Gets a policy on a resource. If no policy is set on the resource, `NOT_FOUND` is returned. The entity tag (ETag) can be used with `UpdatePolicy()` to update a policy during read-modify-write. * @example * ```js * // Before running the sample: @@ -1090,7 +1090,7 @@ export namespace orgpolicy_v2 { } /** - * Gets the effective policy on a resource. This is the result of merging policies in the resource hierarchy and evaluating conditions. The returned policy will not have an `etag` or `condition` set because it is an evaluated policy across multiple resources. Subtrees of Resource Manager resource hierarchy with 'under:' prefix will not be expanded. + * Gets the effective policy on a resource. This is the result of merging policies in the resource hierarchy and evaluating conditions. The returned policy will not have an ETag or `condition` set because it is an evaluated policy across multiple resources. Subtrees of Resource Manager resource hierarchy with 'under:' prefix will not be expanded. * @example * ```js * // Before running the sample: @@ -1389,7 +1389,7 @@ export namespace orgpolicy_v2 { } /** - * Updates a policy. Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the constraint or the policy do not exist. Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the etag supplied in the request does not match the persisted etag of the policy Note: the supplied policy will perform a full overwrite of all fields. + * Updates a policy. Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the constraint or the policy doesn't exist. Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the ETag supplied in the request doesn't match the persisted ETag of the policy. Note: the supplied policy will perform a full overwrite of all fields. * @example * ```js * // Before running the sample: @@ -1419,9 +1419,9 @@ export namespace orgpolicy_v2 { * * // Do the magic * const res = await orgpolicy.folders.policies.patch({ - * // Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. + * // Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. * name: 'folders/my-folder/policies/my-policie', - * // Field mask used to specify the fields to be overwritten in the policy by the set. The fields specified in the update_mask are relative to the policy, not the full request. + * // Field mask used to specify the fields to be overwritten in the policy. The fields specified in the update_mask are relative to the policy, not the full request. * updateMask: 'placeholder-value', * * // Request body metadata @@ -1560,7 +1560,7 @@ export namespace orgpolicy_v2 { } export interface Params$Resource$Folders$Policies$Delete extends StandardParameters { /** - * Optional. The current etag of policy. If an etag is provided and does not match the current etag of the policy, deletion will be blocked and an ABORTED error will be returned. + * Optional. The current entity tag (ETag) of the organization policy. If an ETag is provided and doesn't match the current ETag of the policy, deletion of the policy will be blocked and an `ABORTED` error will be returned. */ etag?: string; /** @@ -1596,11 +1596,11 @@ export namespace orgpolicy_v2 { } export interface Params$Resource$Folders$Policies$Patch extends StandardParameters { /** - * Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. + * Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. */ name?: string; /** - * Field mask used to specify the fields to be overwritten in the policy by the set. The fields specified in the update_mask are relative to the policy, not the full request. + * Field mask used to specify the fields to be overwritten in the policy. The fields specified in the update_mask are relative to the policy, not the full request. */ updateMask?: string; @@ -2440,7 +2440,7 @@ export namespace orgpolicy_v2 { * * // Do the magic * const res = await orgpolicy.organizations.customConstraints.patch({ - * // Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id\}/customConstraints/{custom_constraint_id\}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 70 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id\}/customConstraints/` is not counted. + * // Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id\}/customConstraints/{custom_constraint_id\}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 71 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id\}/customConstraints/custom.` is not counted. * name: 'organizations/my-organization/customConstraints/my-customConstraint', * * // Request body metadata @@ -2615,7 +2615,7 @@ export namespace orgpolicy_v2 { } export interface Params$Resource$Organizations$Customconstraints$Patch extends StandardParameters { /** - * Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id\}/customConstraints/{custom_constraint_id\}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 70 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id\}/customConstraints/` is not counted. + * Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id\}/customConstraints/{custom_constraint_id\}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 71 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id\}/customConstraints/custom.` is not counted. */ name?: string; @@ -2821,7 +2821,7 @@ export namespace orgpolicy_v2 { * * // Do the magic * const res = await orgpolicy.organizations.policies.delete({ - * // Optional. The current etag of policy. If an etag is provided and does not match the current etag of the policy, deletion will be blocked and an ABORTED error will be returned. + * // Optional. The current entity tag (ETag) of the organization policy. If an ETag is provided and doesn't match the current ETag of the policy, deletion of the policy will be blocked and an `ABORTED` error will be returned. * etag: 'placeholder-value', * // Required. Name of the policy to delete. See the policy entry for naming rules. * name: 'organizations/my-organization/policies/my-policie', @@ -2925,7 +2925,7 @@ export namespace orgpolicy_v2 { } /** - * Gets a policy on a resource. If no policy is set on the resource, `NOT_FOUND` is returned. The `etag` value can be used with `UpdatePolicy()` to update a policy during read-modify-write. + * Gets a policy on a resource. If no policy is set on the resource, `NOT_FOUND` is returned. The entity tag (ETag) can be used with `UpdatePolicy()` to update a policy during read-modify-write. * @example * ```js * // Before running the sample: @@ -3069,7 +3069,7 @@ export namespace orgpolicy_v2 { } /** - * Gets the effective policy on a resource. This is the result of merging policies in the resource hierarchy and evaluating conditions. The returned policy will not have an `etag` or `condition` set because it is an evaluated policy across multiple resources. Subtrees of Resource Manager resource hierarchy with 'under:' prefix will not be expanded. + * Gets the effective policy on a resource. This is the result of merging policies in the resource hierarchy and evaluating conditions. The returned policy will not have an ETag or `condition` set because it is an evaluated policy across multiple resources. Subtrees of Resource Manager resource hierarchy with 'under:' prefix will not be expanded. * @example * ```js * // Before running the sample: @@ -3369,7 +3369,7 @@ export namespace orgpolicy_v2 { } /** - * Updates a policy. Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the constraint or the policy do not exist. Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the etag supplied in the request does not match the persisted etag of the policy Note: the supplied policy will perform a full overwrite of all fields. + * Updates a policy. Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the constraint or the policy doesn't exist. Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the ETag supplied in the request doesn't match the persisted ETag of the policy. Note: the supplied policy will perform a full overwrite of all fields. * @example * ```js * // Before running the sample: @@ -3399,9 +3399,9 @@ export namespace orgpolicy_v2 { * * // Do the magic * const res = await orgpolicy.organizations.policies.patch({ - * // Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. + * // Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. * name: 'organizations/my-organization/policies/my-policie', - * // Field mask used to specify the fields to be overwritten in the policy by the set. The fields specified in the update_mask are relative to the policy, not the full request. + * // Field mask used to specify the fields to be overwritten in the policy. The fields specified in the update_mask are relative to the policy, not the full request. * updateMask: 'placeholder-value', * * // Request body metadata @@ -3540,7 +3540,7 @@ export namespace orgpolicy_v2 { } export interface Params$Resource$Organizations$Policies$Delete extends StandardParameters { /** - * Optional. The current etag of policy. If an etag is provided and does not match the current etag of the policy, deletion will be blocked and an ABORTED error will be returned. + * Optional. The current entity tag (ETag) of the organization policy. If an ETag is provided and doesn't match the current ETag of the policy, deletion of the policy will be blocked and an `ABORTED` error will be returned. */ etag?: string; /** @@ -3576,11 +3576,11 @@ export namespace orgpolicy_v2 { } export interface Params$Resource$Organizations$Policies$Patch extends StandardParameters { /** - * Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. + * Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. */ name?: string; /** - * Field mask used to specify the fields to be overwritten in the policy by the set. The fields specified in the update_mask are relative to the policy, not the full request. + * Field mask used to specify the fields to be overwritten in the policy. The fields specified in the update_mask are relative to the policy, not the full request. */ updateMask?: string; @@ -3971,7 +3971,7 @@ export namespace orgpolicy_v2 { * * // Do the magic * const res = await orgpolicy.projects.policies.delete({ - * // Optional. The current etag of policy. If an etag is provided and does not match the current etag of the policy, deletion will be blocked and an ABORTED error will be returned. + * // Optional. The current entity tag (ETag) of the organization policy. If an ETag is provided and doesn't match the current ETag of the policy, deletion of the policy will be blocked and an `ABORTED` error will be returned. * etag: 'placeholder-value', * // Required. Name of the policy to delete. See the policy entry for naming rules. * name: 'projects/my-project/policies/my-policie', @@ -4075,7 +4075,7 @@ export namespace orgpolicy_v2 { } /** - * Gets a policy on a resource. If no policy is set on the resource, `NOT_FOUND` is returned. The `etag` value can be used with `UpdatePolicy()` to update a policy during read-modify-write. + * Gets a policy on a resource. If no policy is set on the resource, `NOT_FOUND` is returned. The entity tag (ETag) can be used with `UpdatePolicy()` to update a policy during read-modify-write. * @example * ```js * // Before running the sample: @@ -4219,7 +4219,7 @@ export namespace orgpolicy_v2 { } /** - * Gets the effective policy on a resource. This is the result of merging policies in the resource hierarchy and evaluating conditions. The returned policy will not have an `etag` or `condition` set because it is an evaluated policy across multiple resources. Subtrees of Resource Manager resource hierarchy with 'under:' prefix will not be expanded. + * Gets the effective policy on a resource. This is the result of merging policies in the resource hierarchy and evaluating conditions. The returned policy will not have an ETag or `condition` set because it is an evaluated policy across multiple resources. Subtrees of Resource Manager resource hierarchy with 'under:' prefix will not be expanded. * @example * ```js * // Before running the sample: @@ -4518,7 +4518,7 @@ export namespace orgpolicy_v2 { } /** - * Updates a policy. Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the constraint or the policy do not exist. Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the etag supplied in the request does not match the persisted etag of the policy Note: the supplied policy will perform a full overwrite of all fields. + * Updates a policy. Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the constraint or the policy doesn't exist. Returns a `google.rpc.Status` with `google.rpc.Code.ABORTED` if the ETag supplied in the request doesn't match the persisted ETag of the policy. Note: the supplied policy will perform a full overwrite of all fields. * @example * ```js * // Before running the sample: @@ -4548,9 +4548,9 @@ export namespace orgpolicy_v2 { * * // Do the magic * const res = await orgpolicy.projects.policies.patch({ - * // Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. + * // Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. * name: 'projects/my-project/policies/my-policie', - * // Field mask used to specify the fields to be overwritten in the policy by the set. The fields specified in the update_mask are relative to the policy, not the full request. + * // Field mask used to specify the fields to be overwritten in the policy. The fields specified in the update_mask are relative to the policy, not the full request. * updateMask: 'placeholder-value', * * // Request body metadata @@ -4689,7 +4689,7 @@ export namespace orgpolicy_v2 { } export interface Params$Resource$Projects$Policies$Delete extends StandardParameters { /** - * Optional. The current etag of policy. If an etag is provided and does not match the current etag of the policy, deletion will be blocked and an ABORTED error will be returned. + * Optional. The current entity tag (ETag) of the organization policy. If an ETag is provided and doesn't match the current ETag of the policy, deletion of the policy will be blocked and an `ABORTED` error will be returned. */ etag?: string; /** @@ -4725,11 +4725,11 @@ export namespace orgpolicy_v2 { } export interface Params$Resource$Projects$Policies$Patch extends StandardParameters { /** - * Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. + * Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. */ name?: string; /** - * Field mask used to specify the fields to be overwritten in the policy by the set. The fields specified in the update_mask are relative to the policy, not the full request. + * Field mask used to specify the fields to be overwritten in the policy. The fields specified in the update_mask are relative to the policy, not the full request. */ updateMask?: string; diff --git a/src/apis/osconfig/v1.ts b/src/apis/osconfig/v1.ts index aef7a12796c..7e1d0151a87 100644 --- a/src/apis/osconfig/v1.ts +++ b/src/apis/osconfig/v1.ts @@ -316,105 +316,6 @@ export namespace osconfig_v1 { */ object?: string | null; } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1alpha__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; - } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1main__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; - } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1__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; - } /** * OS policy assignment operation metadata provided by OS policy assignment API methods that return long running operations. */ @@ -793,23 +694,6 @@ export namespace osconfig_v1 { */ nextPageToken?: 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[]; - /** - * Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations. - */ - unreachable?: string[] | null; - } /** * A response message for listing OS Policy assignment reports including the page of results and page token. */ @@ -1344,7 +1228,7 @@ export namespace osconfig_v1 { */ export interface Schema$OSPolicyResourceFileResource { /** - * A a file with this content. The size of the content is limited to 32KiB. + * A file with this content. The size of the content is limited to 32KiB. */ content?: string | null; /** @@ -2258,15 +2142,11 @@ export namespace osconfig_v1 { context: APIRequestContext; global: Resource$Projects$Locations$Global; instances: Resource$Projects$Locations$Instances; - operations: Resource$Projects$Locations$Operations; osPolicyAssignments: Resource$Projects$Locations$Ospolicyassignments; constructor(context: APIRequestContext) { this.context = context; this.global = new Resource$Projects$Locations$Global(this.context); this.instances = new Resource$Projects$Locations$Instances(this.context); - this.operations = new Resource$Projects$Locations$Operations( - this.context - ); this.osPolicyAssignments = new Resource$Projects$Locations$Ospolicyassignments(this.context); } @@ -3619,616 +3499,6 @@ export namespace osconfig_v1 { parent?: string; } - 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`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/osconfig.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const osconfig = google.osconfig('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await osconfig.projects.locations.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/operations/my-operation', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, - * }); - * console.log(res.data); - * - * // Example response - * // {} - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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 - ): Promise>; - cancel( - params?: Params$Resource$Projects$Locations$Operations$Cancel, - options?: MethodOptions - ): Promise>; - 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 - | Promise> - | Promise> { - 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://osconfig.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - 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`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/osconfig.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const osconfig = google.osconfig('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await osconfig.projects.locations.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/operations/my-operation', - * }); - * console.log(res.data); - * - * // Example response - * // {} - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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 - ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Operations$Delete, - options?: MethodOptions - ): Promise>; - 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 - | Promise> - | Promise> { - 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://osconfig.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - 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. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/osconfig.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const osconfig = google.osconfig('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await osconfig.projects.locations.operations.get({ - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/operations/my-operation', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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 - ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Operations$Get, - options?: MethodOptions - ): Promise>; - 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 - | Promise> - | Promise> { - 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://osconfig.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - 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`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/osconfig.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const osconfig = google.osconfig('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await osconfig.projects.locations.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "operations": [], - * // "unreachable": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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 - ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Operations$List, - options?: MethodOptions - ): Promise>; - 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 - | Promise> - | Promise> { - 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://osconfig.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}/operations').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - 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; - /** - * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - */ - returnPartialSuccess?: boolean; - } - export class Resource$Projects$Locations$Ospolicyassignments { context: APIRequestContext; operations: Resource$Projects$Locations$Ospolicyassignments$Operations; diff --git a/src/apis/osconfig/v1alpha.ts b/src/apis/osconfig/v1alpha.ts index 4f22483ce93..99b5bb0ac14 100644 --- a/src/apis/osconfig/v1alpha.ts +++ b/src/apis/osconfig/v1alpha.ts @@ -211,105 +211,6 @@ export namespace osconfig_v1alpha { */ percent?: number | null; } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1alpha__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; - } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1main__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; - } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1__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; - } /** * OS policy assignment operation metadata provided by OS policy assignment API methods that return long running operations. */ @@ -755,23 +656,6 @@ export namespace osconfig_v1alpha { */ nextPageToken?: 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[]; - /** - * Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations. - */ - unreachable?: string[] | null; - } /** * A response message for listing OS Policy assignment reports including the page of results and page token. */ @@ -1309,7 +1193,7 @@ export namespace osconfig_v1alpha { */ export interface Schema$OSPolicyResourceFileResource { /** - * A a file with this content. The size of the content is limited to 32KiB. + * A file with this content. The size of the content is limited to 32KiB. */ content?: string | null; /** @@ -1728,7 +1612,6 @@ export namespace osconfig_v1alpha { context: APIRequestContext; instanceOSPoliciesCompliances: Resource$Projects$Locations$Instanceospoliciescompliances; instances: Resource$Projects$Locations$Instances; - operations: Resource$Projects$Locations$Operations; osPolicyAssignments: Resource$Projects$Locations$Ospolicyassignments; constructor(context: APIRequestContext) { this.context = context; @@ -1737,9 +1620,6 @@ export namespace osconfig_v1alpha { this.context ); this.instances = new Resource$Projects$Locations$Instances(this.context); - this.operations = new Resource$Projects$Locations$Operations( - this.context - ); this.osPolicyAssignments = new Resource$Projects$Locations$Ospolicyassignments(this.context); } @@ -3106,619 +2986,6 @@ export namespace osconfig_v1alpha { parent?: string; } - 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`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/osconfig.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const osconfig = google.osconfig('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await osconfig.projects.locations.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'projects/my-project/locations/my-location/operations/my-operation', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, - * }); - * console.log(res.data); - * - * // Example response - * // {} - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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 - ): Promise>; - cancel( - params?: Params$Resource$Projects$Locations$Operations$Cancel, - options?: MethodOptions - ): Promise>; - 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 - | Promise> - | Promise> { - 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://osconfig.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+name}:cancel').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - 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`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/osconfig.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const osconfig = google.osconfig('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await osconfig.projects.locations.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'projects/my-project/locations/my-location/operations/my-operation', - * }); - * console.log(res.data); - * - * // Example response - * // {} - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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 - ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Operations$Delete, - options?: MethodOptions - ): Promise>; - 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 - | Promise> - | Promise> { - 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://osconfig.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - 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. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/osconfig.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const osconfig = google.osconfig('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await osconfig.projects.locations.operations.get({ - * // The name of the operation resource. - * name: 'projects/my-project/locations/my-location/operations/my-operation', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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 - ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Operations$Get, - options?: MethodOptions - ): Promise>; - 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 - | Promise> - | Promise> { - 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://osconfig.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - 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`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/osconfig.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const osconfig = google.osconfig('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await osconfig.projects.locations.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'projects/my-project/locations/my-location', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "operations": [], - * // "unreachable": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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 - ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Operations$List, - options?: MethodOptions - ): Promise>; - 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 - | Promise> - | Promise> { - 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://osconfig.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+name}/operations').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - 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; - /** - * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - */ - returnPartialSuccess?: boolean; - } - export class Resource$Projects$Locations$Ospolicyassignments { context: APIRequestContext; operations: Resource$Projects$Locations$Ospolicyassignments$Operations; diff --git a/src/apis/osconfig/v1beta.ts b/src/apis/osconfig/v1beta.ts index a9ca05468fa..89062df6b5e 100644 --- a/src/apis/osconfig/v1beta.ts +++ b/src/apis/osconfig/v1beta.ts @@ -378,105 +378,6 @@ export namespace osconfig_v1beta { */ object?: string | null; } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1alpha__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; - } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1main__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; - } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1__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; - } /** * OS policy assignment operation metadata provided by OS policy assignment API methods that return long running operations. */ diff --git a/src/apis/osconfig/v2.ts b/src/apis/osconfig/v2.ts index aee17299ce3..0d0c9160881 100644 --- a/src/apis/osconfig/v2.ts +++ b/src/apis/osconfig/v2.ts @@ -149,105 +149,6 @@ export namespace osconfig_v2 { */ percent?: number | null; } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1alpha__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; - } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1main__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; - } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1__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; - } /** * OS policy assignment operation metadata provided by OS policy assignment API methods that return long running operations. */ @@ -464,7 +365,7 @@ export namespace osconfig_v2 { selectors?: Schema$GoogleCloudOsconfigV2_OrchestrationScope_Selector[]; } /** - * PolicyOrchestrator helps managing project+zone level policy resources (e.g. OS Policy Assignments), by providing tools to create, update and delete them across projects and locations, at scale. Policy orchestrator functions as an endless loop. Each iteration orchestrator computes a set of resources that should be affected, then progressively applies changes to them. If for some reason this set of resources changes over time (e.g. new projects are added), the future loop iterations will address that. Orchestrator can either upsert or delete policy resources. For more details, see the description of the `action`, and `orchestrated_resource` fields. Note that policy orchestrator do not "manage" the resources it creates. Every iteration is independent and only minimal history of past actions is retained (apart from Cloud Logging). If orchestrator gets deleted, it does not affect the resources it created in the past. Those will remain where they were. Same applies if projects are removed from the orchestrator's scope. + * A policy orchestrator manages project-level and zone-level policy resources, such as OS policy assignments. It provides methods to create, update, and delete these resources across projects and locations at scale. The policy orchestrator operates as a continuous loop. In each iteration, the orchestrator identifies the set of resources to be modified and progressively applies changes. If the set of resources changes over time (for example, if you add new projects), subsequent iterations address those changes. The orchestrator can either upsert or delete policy resources. For more details, see the `action` and `orchestrated_resource` fields. The policy orchestrator does not manage the lifecycle of the resources it creates. Each iteration is independent and, besides Cloud Logging, the orchestrator retains only a minimal history of past actions. Deleting the orchestrator does not affect previously created resources; these resources remain in their current state. Similarly, removing projects from the orchestrator's scope does not affect existing resources. */ export interface Schema$GoogleCloudOsconfigV2__PolicyOrchestrator { /** @@ -488,7 +389,7 @@ export namespace osconfig_v2 { */ labels?: {[key: string]: string} | null; /** - * Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` */ name?: string | null; /** @@ -504,7 +405,7 @@ export namespace osconfig_v2 { */ orchestrationState?: Schema$GoogleCloudOsconfigV2_PolicyOrchestrator_OrchestrationState; /** - * Output only. Set to true, if the there are ongoing changes being applied by the orchestrator. + * Output only. Set to true, if there are ongoing changes being applied by the orchestrator. */ reconciling?: boolean | null; /** @@ -857,7 +758,7 @@ export namespace osconfig_v2 { */ export interface Schema$OSPolicyResourceFileResource { /** - * A a file with this content. The size of the content is limited to 32KiB. + * A file with this content. The size of the content is limited to 32KiB. */ content?: string | null; /** @@ -1838,7 +1739,7 @@ export namespace osconfig_v2 { * // Do the magic * const res = await osconfig.folders.locations.global.policyOrchestrators.patch( * { - * // Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * // Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` * name: 'folders/my-folder/locations/global/policyOrchestrators/my-policyOrchestrator', * // Optional. The list of fields to merge into the existing policy orchestrator. A special ["*"] field mask can be used to simply replace the entire resource. Otherwise, for all paths referenced in the mask, following merge rules are used: * output only fields are ignored, * primitive fields are replaced, * repeated fields are replaced, * map fields are merged key by key, * message fields are cleared if not set in the request, otherwise they are merged recursively (in particular - message fields set to an empty message has no side effects) If field mask (or its paths) is not specified, it is automatically inferred from the request using following rules: * primitive fields are listed, if set to a non-default value (as there is no way to distinguish between default and unset value), * map and repeated fields are listed, * `google.protobuf.Any` fields are listed, * other message fields are traversed recursively. Note: implicit mask does not allow clearing fields. * updateMask: 'placeholder-value', @@ -2032,7 +1933,7 @@ export namespace osconfig_v2 { } export interface Params$Resource$Folders$Locations$Global$Policyorchestrators$Patch extends StandardParameters { /** - * Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` */ name?: string; /** @@ -3354,7 +3255,7 @@ export namespace osconfig_v2 { * // Do the magic * const res = * await osconfig.organizations.locations.global.policyOrchestrators.patch({ - * // Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * // Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` * name: 'organizations/my-organization/locations/global/policyOrchestrators/my-policyOrchestrator', * // Optional. The list of fields to merge into the existing policy orchestrator. A special ["*"] field mask can be used to simply replace the entire resource. Otherwise, for all paths referenced in the mask, following merge rules are used: * output only fields are ignored, * primitive fields are replaced, * repeated fields are replaced, * map fields are merged key by key, * message fields are cleared if not set in the request, otherwise they are merged recursively (in particular - message fields set to an empty message has no side effects) If field mask (or its paths) is not specified, it is automatically inferred from the request using following rules: * primitive fields are listed, if set to a non-default value (as there is no way to distinguish between default and unset value), * map and repeated fields are listed, * `google.protobuf.Any` fields are listed, * other message fields are traversed recursively. Note: implicit mask does not allow clearing fields. * updateMask: 'placeholder-value', @@ -3547,7 +3448,7 @@ export namespace osconfig_v2 { } export interface Params$Resource$Organizations$Locations$Global$Policyorchestrators$Patch extends StandardParameters { /** - * Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` */ name?: string; /** @@ -4871,7 +4772,7 @@ export namespace osconfig_v2 { * // Do the magic * const res = * await osconfig.projects.locations.global.policyOrchestrators.patch({ - * // Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * // Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` * name: 'projects/my-project/locations/global/policyOrchestrators/my-policyOrchestrator', * // Optional. The list of fields to merge into the existing policy orchestrator. A special ["*"] field mask can be used to simply replace the entire resource. Otherwise, for all paths referenced in the mask, following merge rules are used: * output only fields are ignored, * primitive fields are replaced, * repeated fields are replaced, * map fields are merged key by key, * message fields are cleared if not set in the request, otherwise they are merged recursively (in particular - message fields set to an empty message has no side effects) If field mask (or its paths) is not specified, it is automatically inferred from the request using following rules: * primitive fields are listed, if set to a non-default value (as there is no way to distinguish between default and unset value), * map and repeated fields are listed, * `google.protobuf.Any` fields are listed, * other message fields are traversed recursively. Note: implicit mask does not allow clearing fields. * updateMask: 'placeholder-value', @@ -5064,7 +4965,7 @@ export namespace osconfig_v2 { } export interface Params$Resource$Projects$Locations$Global$Policyorchestrators$Patch extends StandardParameters { /** - * Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` */ name?: string; /** diff --git a/src/apis/osconfig/v2beta.ts b/src/apis/osconfig/v2beta.ts index bc2b2d45ae5..87d96e1b882 100644 --- a/src/apis/osconfig/v2beta.ts +++ b/src/apis/osconfig/v2beta.ts @@ -149,105 +149,6 @@ export namespace osconfig_v2beta { */ percent?: number | null; } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1alpha__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; - } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1main__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; - } - /** - * Represents the metadata of a generic long-running operation. - */ - export interface Schema$GoogleCloudOsconfigCommonV1__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; - } /** * OS policy assignment operation metadata provided by OS policy assignment API methods that return long running operations. */ @@ -431,7 +332,7 @@ export namespace osconfig_v2beta { selectors?: Schema$GoogleCloudOsconfigV2beta_OrchestrationScope_Selector[]; } /** - * PolicyOrchestrator helps managing project+zone level policy resources (e.g. OS Policy Assignments), by providing tools to create, update and delete them across projects and locations, at scale. Policy orchestrator functions as an endless loop. Each iteration orchestrator computes a set of resources that should be affected, then progressively applies changes to them. If for some reason this set of resources changes over time (e.g. new projects are added), the future loop iterations will address that. Orchestrator can either upsert or delete policy resources. For more details, see the description of the `action`, and `orchestrated_resource` fields. Note that policy orchestrator do not "manage" the resources it creates. Every iteration is independent and only minimal history of past actions is retained (apart from Cloud Logging). If orchestrator gets deleted, it does not affect the resources it created in the past. Those will remain where they were. Same applies if projects are removed from the orchestrator's scope. + * A policy orchestrator manages project-level and zone-level policy resources, such as OS policy assignments. It provides methods to create, update, and delete these resources across projects and locations at scale. The policy orchestrator operates as a continuous loop. In each iteration, the orchestrator identifies the set of resources to be modified and progressively applies changes. If the set of resources changes over time (for example, if you add new projects), subsequent iterations address those changes. The orchestrator can either upsert or delete policy resources. For more details, see the `action` and `orchestrated_resource` fields. The policy orchestrator does not manage the lifecycle of the resources it creates. Each iteration is independent and, besides Cloud Logging, the orchestrator retains only a minimal history of past actions. Deleting the orchestrator does not affect previously created resources; these resources remain in their current state. Similarly, removing projects from the orchestrator's scope does not affect existing resources. */ export interface Schema$GoogleCloudOsconfigV2beta__PolicyOrchestrator { /** @@ -455,7 +356,7 @@ export namespace osconfig_v2beta { */ labels?: {[key: string]: string} | null; /** - * Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` */ name?: string | null; /** @@ -471,7 +372,7 @@ export namespace osconfig_v2beta { */ orchestrationState?: Schema$GoogleCloudOsconfigV2beta_PolicyOrchestrator_OrchestrationState; /** - * Output only. Set to true, if the there are ongoing changes being applied by the orchestrator. + * Output only. Set to true, if there are ongoing changes being applied by the orchestrator. */ reconciling?: boolean | null; /** @@ -857,7 +758,7 @@ export namespace osconfig_v2beta { */ export interface Schema$OSPolicyResourceFileResource { /** - * A a file with this content. The size of the content is limited to 32KiB. + * A file with this content. The size of the content is limited to 32KiB. */ content?: string | null; /** @@ -1838,7 +1739,7 @@ export namespace osconfig_v2beta { * // Do the magic * const res = await osconfig.folders.locations.global.policyOrchestrators.patch( * { - * // Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * // Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` * name: 'folders/my-folder/locations/global/policyOrchestrators/my-policyOrchestrator', * // Optional. The list of fields to merge into the existing policy orchestrator. A special ["*"] field mask can be used to simply replace the entire resource. Otherwise, for all paths referenced in the mask, following merge rules are used: * output only fields are ignored, * primitive fields are replaced, * repeated fields are replaced, * map fields are merged key by key, * message fields are cleared if not set in the request, otherwise they are merged recursively (in particular - message fields set to an empty message has no side effects) If field mask (or its paths) is not specified, it is automatically inferred from the request using following rules: * primitive fields are listed, if set to a non-default value (as there is no way to distinguish between default and unset value), * map and repeated fields are listed, * `google.protobuf.Any` fields are listed, * other message fields are traversed recursively. Note: implicit mask does not allow clearing fields. * updateMask: 'placeholder-value', @@ -2032,7 +1933,7 @@ export namespace osconfig_v2beta { } export interface Params$Resource$Folders$Locations$Global$Policyorchestrators$Patch extends StandardParameters { /** - * Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` */ name?: string; /** @@ -3357,7 +3258,7 @@ export namespace osconfig_v2beta { * // Do the magic * const res = * await osconfig.organizations.locations.global.policyOrchestrators.patch({ - * // Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * // Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` * name: 'organizations/my-organization/locations/global/policyOrchestrators/my-policyOrchestrator', * // Optional. The list of fields to merge into the existing policy orchestrator. A special ["*"] field mask can be used to simply replace the entire resource. Otherwise, for all paths referenced in the mask, following merge rules are used: * output only fields are ignored, * primitive fields are replaced, * repeated fields are replaced, * map fields are merged key by key, * message fields are cleared if not set in the request, otherwise they are merged recursively (in particular - message fields set to an empty message has no side effects) If field mask (or its paths) is not specified, it is automatically inferred from the request using following rules: * primitive fields are listed, if set to a non-default value (as there is no way to distinguish between default and unset value), * map and repeated fields are listed, * `google.protobuf.Any` fields are listed, * other message fields are traversed recursively. Note: implicit mask does not allow clearing fields. * updateMask: 'placeholder-value', @@ -3550,7 +3451,7 @@ export namespace osconfig_v2beta { } export interface Params$Resource$Organizations$Locations$Global$Policyorchestrators$Patch extends StandardParameters { /** - * Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` */ name?: string; /** @@ -4877,7 +4778,7 @@ export namespace osconfig_v2beta { * // Do the magic * const res = * await osconfig.projects.locations.global.policyOrchestrators.patch({ - * // Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * // Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` * name: 'projects/my-project/locations/global/policyOrchestrators/my-policyOrchestrator', * // Optional. The list of fields to merge into the existing policy orchestrator. A special ["*"] field mask can be used to simply replace the entire resource. Otherwise, for all paths referenced in the mask, following merge rules are used: * output only fields are ignored, * primitive fields are replaced, * repeated fields are replaced, * map fields are merged key by key, * message fields are cleared if not set in the request, otherwise they are merged recursively (in particular - message fields set to an empty message has no side effects) If field mask (or its paths) is not specified, it is automatically inferred from the request using following rules: * primitive fields are listed, if set to a non-default value (as there is no way to distinguish between default and unset value), * map and repeated fields are listed, * `google.protobuf.Any` fields are listed, * other message fields are traversed recursively. Note: implicit mask does not allow clearing fields. * updateMask: 'placeholder-value', @@ -5070,7 +4971,7 @@ export namespace osconfig_v2beta { } export interface Params$Resource$Projects$Locations$Global$Policyorchestrators$Patch extends StandardParameters { /** - * Immutable. Identifier. In form of * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` + * Immutable. Identifier. In the following format: * `organizations/{organization_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `folders/{folder_id\}/locations/global/policyOrchestrators/{orchestrator_id\}` * `projects/{project_id_or_number\}/locations/global/policyOrchestrators/{orchestrator_id\}` */ name?: string; /** diff --git a/src/apis/parametermanager/v1.ts b/src/apis/parametermanager/v1.ts index 08e1179be66..574694c5240 100644 --- a/src/apis/parametermanager/v1.ts +++ b/src/apis/parametermanager/v1.ts @@ -461,7 +461,7 @@ export namespace parametermanager_v1 { } /** - * Lists information about the supported locations for this service. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -491,7 +491,7 @@ export namespace parametermanager_v1 { * * // Do the magic * const res = await parametermanager.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -618,7 +618,7 @@ export namespace parametermanager_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/paymentsresellersubscription/v1.ts b/src/apis/paymentsresellersubscription/v1.ts index 20b1d765a56..41c020634c6 100644 --- a/src/apis/paymentsresellersubscription/v1.ts +++ b/src/apis/paymentsresellersubscription/v1.ts @@ -654,7 +654,7 @@ export namespace paymentsresellersubscription_v1 { startTime?: string | null; } /** - * A subscription serves as a central billing entity between an external partner and Google. The underlying Google services rely on the subscription state to grant or revoke the user's service entitlement. It's important to note that the subscription state may not always perfectly align with the user's service entitlement. For example, some Google services may continue providing access to the user until the current billing cycle ends, even if the subscription has been immediately canceled. However, other services may not do the same. To fully understand the specific details, please consult the relevant contract or product policy. + * Acts as a central billing entity between an external partner and Google. Google services use the subscription state to grant or revoke the user's service entitlement. Note: The subscription state might not perfectly align with the user's service entitlement. Some services might continue providing access until the current cycle ends, even if the subscription is immediately canceled. Consult the relevant contract or product policy for specific details. */ export interface Schema$Subscription { /** @@ -881,7 +881,12 @@ export namespace paymentsresellersubscription_v1 { /** * Request to suspend a subscription. */ - export interface Schema$SuspendSubscriptionRequest {} + export interface Schema$SuspendSubscriptionRequest { + /** + * Optional. The mode to suspend the subscription. It's required for partners to specify the suspend mode, whether suspend immediately and indefinitely, or cancel the subscription after grace_period_millis or auto_cancel_duration_millis if it's not resumed. + */ + suspendMode?: string | null; + } /** * Response that contains the suspended subscription. */ @@ -905,7 +910,7 @@ export namespace paymentsresellersubscription_v1 { subscription?: Schema$Subscription; } /** - * A user session contains a short-lived token that includes information required to interact with Google Payments Reseller Platform using the following web endpoints. - A user session token should be generated dynamically for an authenticated user. You should refrain from sharing a token directly with a user in an unauthenticated context, such as SMS, or email. - You can re-generate new session tokens repeatedly for same `generate` request if necessary, regardless of the previous tokens being expired or not. You don't need to worry about multiple sessions resulting in duplicate fulfillments as guaranteed by the same subscription id. Please refer to the [Google Managed Signup](/payments/reseller/subscription/reference/index/User.Signup.Integration/Google.Managed.Signup) documentation for additional integration details. + * Contains a short-lived token containing information required to interact with the Google Payments Reseller Platform via web endpoints. - Generate a user session token dynamically for an authenticated user. Do not share a token directly with a user in an unauthenticated context, such as SMS or email. - You can regenerate new session tokens repeatedly for the same `generate` request if necessary, regardless of whether previous tokens have expired. Multiple sessions will not result in duplicate fulfillments because the `subscription ID` guarantees uniqueness. For more integration details, see the [Google Managed Signup](/payments/reseller/subscription/reference/index/User.Signup.Integration/Google.Managed.Signup) documentation. */ export interface Schema$UserSession { /** @@ -2650,7 +2655,9 @@ export namespace paymentsresellersubscription_v1 { * // Request body metadata * requestBody: { * // request body parameters - * // {} + * // { + * // "suspendMode": "my_suspendMode" + * // } * }, * }, * ); diff --git a/src/apis/places/v1.ts b/src/apis/places/v1.ts index d3a86ece76b..c44eb45e476 100644 --- a/src/apis/places/v1.ts +++ b/src/apis/places/v1.ts @@ -233,6 +233,10 @@ export namespace places_v1 { * Optional. Only include results in the specified regions, specified as up to 15 CLDR two-character region codes. An empty set will not restrict the results. If both `location_restriction` and `included_region_codes` are set, the results will be located in the area of intersection. */ includedRegionCodes?: string[] | null; + /** + * Optional. If true, include businesses that are not yet open but will open in the future. + */ + includeFutureOpeningBusinesses?: boolean | null; /** * Optional. Include pure service area businesses if the field is set to true. Pure service area business is a business that visits or delivers to customers directly but does not serve customers at their business address. For example, businesses like cleaning services or plumbers. Those businesses do not have a physical address or location on Google Maps. Places will not return fields including `location`, `plus_code`, and other location related fields for these businesses. */ @@ -773,6 +777,10 @@ export namespace places_v1 { * A summary of points of interest near the place. */ neighborhoodSummary?: Schema$GoogleMapsPlacesV1PlaceNeighborhoodSummary; + /** + * The date this place will open in the future. This field is only populated if the business status is FUTURE_OPENING. + */ + openingDate?: Schema$GoogleTypeDate; /** * Place provides outdoor seating. */ @@ -1465,6 +1473,10 @@ export namespace places_v1 { * Included Place type (eg, "restaurant" or "gas_station") from https://developers.google.com/maps/documentation/places/web-service/place-types. Up to 50 types from [Table A](https://developers.google.com/maps/documentation/places/web-service/place-types#table-a) may be specified. If there are any conflicting types, i.e. a type appears in both included_types and excluded_types, an INVALID_ARGUMENT error is returned. If a Place type is specified with multiple type restrictions, only places that satisfy all of the restrictions are returned. For example, if we have {included_types = ["restaurant"], excluded_primary_types = ["restaurant"]\}, the returned places provide "restaurant" related services but do not operate primarily as "restaurants". */ includedTypes?: string[] | null; + /** + * Optional. If true, include businesses that are not yet open but will open in the future. + */ + includeFutureOpeningBusinesses?: boolean | null; /** * Place details will be displayed with the preferred language if available. If the language code is unspecified or unrecognized, place details of any language may be returned, with a preference for English if such details exist. Current list of supported languages: https://developers.google.com/maps/faq#languagesupport. */ @@ -1524,6 +1536,10 @@ export namespace places_v1 { * The requested place type. Full list of types supported: https://developers.google.com/maps/documentation/places/web-service/place-types. Only support one included type. */ includedType?: string | null; + /** + * Optional. If true, include businesses that are not yet open but will open in the future. + */ + includeFutureOpeningBusinesses?: boolean | null; /** * Optional. Include pure service area businesses if the field is set to true. Pure service area business is a business that visits or delivers to customers directly but does not serve customers at their business address. For example, businesses like cleaning services or plumbers. Those businesses do not have a physical address or location on Google Maps. Places will not return fields including `location`, `plus_code`, and other location related fields for these businesses. */ @@ -1828,6 +1844,7 @@ export namespace places_v1 { * requestBody: { * // request body parameters * // { + * // "includeFutureOpeningBusinesses": false, * // "includePureServiceAreaBusinesses": false, * // "includeQueryPredictions": false, * // "includedPrimaryTypes": [], @@ -2043,6 +2060,7 @@ export namespace places_v1 { * // "name": "my_name", * // "nationalPhoneNumber": "my_nationalPhoneNumber", * // "neighborhoodSummary": {}, + * // "openingDate": {}, * // "outdoorSeating": false, * // "parkingOptions": {}, * // "paymentOptions": {}, @@ -2217,6 +2235,7 @@ export namespace places_v1 { * // { * // "excludedPrimaryTypes": [], * // "excludedTypes": [], + * // "includeFutureOpeningBusinesses": false, * // "includedPrimaryTypes": [], * // "includedTypes": [], * // "languageCode": "my_languageCode", @@ -2382,6 +2401,7 @@ export namespace places_v1 { * // request body parameters * // { * // "evOptions": {}, + * // "includeFutureOpeningBusinesses": false, * // "includePureServiceAreaBusinesses": false, * // "includedType": "my_includedType", * // "languageCode": "my_languageCode", diff --git a/src/apis/playdeveloperreporting/v1alpha1.ts b/src/apis/playdeveloperreporting/v1alpha1.ts index 9d63d45a648..241e0aa0a5d 100644 --- a/src/apis/playdeveloperreporting/v1alpha1.ts +++ b/src/apis/playdeveloperreporting/v1alpha1.ts @@ -128,19 +128,6 @@ export namespace playdeveloperreporting_v1alpha1 { } } - /** - * Profile describing the data handling characteristics of an MCP tool. When used within the McpTool.meta field, this message should be packed into a google.protobuf.Any and associated with the key: "google.com/tool.profiles/data_handling" - */ - export interface Schema$ApiservingMcpMcpToolDataHandlingProfile { - /** - * // The data access level of the tool's inputs. - */ - inputDataAccessLevel?: string | null; - /** - * The data access level of the tool's outputs. - */ - outputDataAccessLevel?: string | null; - } /** * Represents an anomaly detected in a dataset. Our anomaly detection systems flag datapoints in a time series that fall outside of and expected range derived from historical data. Although those expected ranges have an upper and a lower bound, we only flag anomalies when the data has become unexpectedly _worse_, which usually corresponds to the case where the metric crosses the upper bound. Multiple contiguous datapoints in a timeline outside of the expected range will be grouped into a single anomaly. Therefore, an anomaly represents effectively a segment of a metric's timeline. The information stored in the `timeline_spec`, `dimensions` and `metric` can be used to fetch a full timeline with extended ragne for context. **Required permissions**: to access this resource, the calling user needs the _View app information (read-only)_ permission for the app. */ diff --git a/src/apis/playdeveloperreporting/v1beta1.ts b/src/apis/playdeveloperreporting/v1beta1.ts index bd4fd05d4a5..84ef62ed38c 100644 --- a/src/apis/playdeveloperreporting/v1beta1.ts +++ b/src/apis/playdeveloperreporting/v1beta1.ts @@ -128,19 +128,6 @@ export namespace playdeveloperreporting_v1beta1 { } } - /** - * Profile describing the data handling characteristics of an MCP tool. When used within the McpTool.meta field, this message should be packed into a google.protobuf.Any and associated with the key: "google.com/tool.profiles/data_handling" - */ - export interface Schema$ApiservingMcpMcpToolDataHandlingProfile { - /** - * // The data access level of the tool's inputs. - */ - inputDataAccessLevel?: string | null; - /** - * The data access level of the tool's outputs. - */ - outputDataAccessLevel?: string | null; - } /** * Represents an anomaly detected in a dataset. Our anomaly detection systems flag datapoints in a time series that fall outside of and expected range derived from historical data. Although those expected ranges have an upper and a lower bound, we only flag anomalies when the data has become unexpectedly _worse_, which usually corresponds to the case where the metric crosses the upper bound. Multiple contiguous datapoints in a timeline outside of the expected range will be grouped into a single anomaly. Therefore, an anomaly represents effectively a segment of a metric's timeline. The information stored in the `timeline_spec`, `dimensions` and `metric` can be used to fetch a full timeline with extended ragne for context. **Required permissions**: to access this resource, the calling user needs the _View app information (read-only)_ permission for the app. */ diff --git a/src/apis/policysimulator/v1.ts b/src/apis/policysimulator/v1.ts index c911da30795..adecbd7e3d1 100644 --- a/src/apis/policysimulator/v1.ts +++ b/src/apis/policysimulator/v1.ts @@ -135,7 +135,7 @@ export namespace policysimulator_v1 { */ export interface Schema$GoogleCloudOrgpolicyV2AlternatePolicySpec { /** - * Reference to the launch that will be used while audit logging and to control the launch. Should be set only in the alternate policy. + * Reference to the launch that will be used while audit logging and to control the launch. Set only in the alternate policy. */ launch?: string | null; /** @@ -168,7 +168,7 @@ export namespace policysimulator_v1 { */ methodTypes?: string[] | null; /** - * Immutable. Name of the constraint. This is unique within the organization. Format of the name should be * `organizations/{organization_id\}/customConstraints/{custom_constraint_id\}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 70 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id\}/customConstraints/` is not counted. + * Immutable. Name of the constraint. This is unique within the organization. The name must be of the form: * `organizations/{organization_id\}/customConstraints/{custom_constraint_id\}` Example: `organizations/123/customConstraints/custom.createOnlyE2TypeVms` The max length is 71 characters and the minimum length is 1. Note that the prefix `organizations/{organization_id\}/customConstraints/custom.` is not counted. */ name?: string | null; /** @@ -181,7 +181,7 @@ export namespace policysimulator_v1 { updateTime?: string | null; } /** - * Defines an organization policy which is used to specify constraints for configurations of Google Cloud resources. + * Defines an organization policy that is used to specify constraints for configurations of Google Cloud resources. */ export interface Schema$GoogleCloudOrgpolicyV2Policy { /** @@ -193,11 +193,11 @@ export namespace policysimulator_v1 { */ dryRunSpec?: Schema$GoogleCloudOrgpolicyV2PolicySpec; /** - * Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This 'etag' is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. + * Optional. An opaque tag indicating the current state of the policy, used for concurrency control. This entity tag (ETag) is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. */ etag?: string | null; /** - * Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint which this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. + * Immutable. The resource name of the policy. Must be one of the following forms, where `constraint_name` is the name of the constraint that this policy configures: * `projects/{project_number\}/policies/{constraint_name\}` * `folders/{folder_id\}/policies/{constraint_name\}` * `organizations/{organization_id\}/policies/{constraint_name\}` For example, `projects/123/policies/compute.disableSerialPortAccess`. Note: `projects/{project_id\}/policies/{constraint_name\}` is also an acceptable name for API requests, but responses will return the name using the equivalent project number. */ name?: string | null; /** @@ -206,15 +206,15 @@ export namespace policysimulator_v1 { spec?: Schema$GoogleCloudOrgpolicyV2PolicySpec; } /** - * Defines a Google Cloud policy specification which is used to specify constraints for configurations of Google Cloud resources. + * Defines a Google Cloud policy specification that is used to specify constraints for configurations of Google Cloud resources. */ export interface Schema$GoogleCloudOrgpolicyV2PolicySpec { /** - * An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy is returned from either a `GetPolicy` or a `ListPolicies` request, this `etag` indicates the version of the current policySpec to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the `etag` will be unset. + * An opaque tag indicating the current version of the policySpec, used for concurrency control. This field is ignored if used in a `CreatePolicy` request. When the policy is returned from either a `GetPolicy` or a `ListPolicies` request, this entity tag (ETag) indicates the version of the current policySpec to use when executing a read-modify-write loop. When the policy is returned from a `GetEffectivePolicy` request, the ETag will be unset. */ etag?: string | null; /** - * Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies which configure list constraints. + * Determines the inheritance behavior for this policy. If `inherit_from_parent` is true, policy rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the new root for evaluation. This field can be set only for policies that configure list constraints. */ inheritFromParent?: boolean | null; /** @@ -222,7 +222,7 @@ export namespace policysimulator_v1 { */ reset?: boolean | null; /** - * In policies for boolean constraints, the following requirements apply: - There must be one and only one policy rule where condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence. + * In policies for boolean constraints, the following requirements apply: - There must be exactly one policy rule where a condition is unset. - Boolean policy rules with conditions must set `enforced` to the opposite of the policy rule without a condition. - During policy evaluation, policy rules with conditions that are true for a target resource take precedence. */ rules?: Schema$GoogleCloudOrgpolicyV2PolicySpecPolicyRule[]; /** diff --git a/src/apis/policytroubleshooter/v3beta.ts b/src/apis/policytroubleshooter/v3beta.ts index 9a59fb2e42e..c288c6b73a7 100644 --- a/src/apis/policytroubleshooter/v3beta.ts +++ b/src/apis/policytroubleshooter/v3beta.ts @@ -863,7 +863,7 @@ export namespace policytroubleshooter_v3beta { */ annotations?: {[key: string]: string} | null; /** - * Optional. The condition to apply to the policy binding. When set, the `expression` field in the `Expr` must include from 1 to 10 subexpressions, joined by the "||"(Logical OR), "&&"(Logical AND) or "!"(Logical NOT) operators and cannot contain more than 250 characters. The condition is currently only supported when bound to policies of kind principal access boundary. When the bound policy is a principal access boundary policy, the only supported attributes in any subexpression are `principal.type` and `principal.subject`. An example expression is: "principal.type == 'iam.googleapis.com/ServiceAccount'" or "principal.subject == 'bob@example.com'". Allowed operations for `principal.subject`: - `principal.subject == ` - `principal.subject != ` - `principal.subject in []` - `principal.subject.startsWith()` - `principal.subject.endsWith()` Allowed operations for `principal.type`: - `principal.type == ` - `principal.type != ` - `principal.type in []` Supported principal types are Workspace, Workforce Pool, Workload Pool and Service Account. Allowed string must be one of: - iam.googleapis.com/WorkspaceIdentity - iam.googleapis.com/WorkforcePoolIdentity - iam.googleapis.com/WorkloadPoolIdentity - iam.googleapis.com/ServiceAccount + * Optional. The condition to apply to the policy binding. When set, the `expression` field in the `Expr` must include from 1 to 10 subexpressions, joined by the "||"(Logical OR), "&&"(Logical AND) or "!"(Logical NOT) operators and cannot contain more than 250 characters. The condition is currently only supported when bound to policies of kind principal access boundary. When the bound policy is a principal access boundary policy, the only supported attributes in any subexpression are `principal.type` and `principal.subject`. An example expression is: "principal.type == 'iam.googleapis.com/ServiceAccount'" or "principal.subject == 'bob@example.com'". Allowed operations for `principal.subject`: - `principal.subject == ` - `principal.subject != ` - `principal.subject in []` - `principal.subject.startsWith()` - `principal.subject.endsWith()` Allowed operations for `principal.type`: - `principal.type == ` - `principal.type != ` - `principal.type in []` Supported principal types are workspace, workforce pool, workload pool, service account, and agent identity. Allowed string must be one of: - `iam.googleapis.com/WorkspaceIdentity` - `iam.googleapis.com/WorkforcePoolIdentity` - `iam.googleapis.com/WorkloadPoolIdentity` - `iam.googleapis.com/ServiceAccount` - `iam.googleapis.com/AgentPoolIdentity` (available in Preview) */ condition?: Schema$GoogleTypeExpr; /** @@ -982,11 +982,28 @@ export namespace policytroubleshooter_v3beta { * Required. The access relationship of principals to the resources in this rule. */ effect?: string | null; + /** + * Optional. The operation attributes that determine whether this rule applies to a request. If this field is not specified, the rule applies to all operations. + */ + operation?: Schema$GoogleIamV3PrincipalAccessBoundaryPolicyRuleOperation; /** * Required. A list of Resource Manager resources. If a resource is listed in the rule, then the rule applies for that resource and its descendants. The number of resources in a policy is limited to 500 across all rules in the policy. The following resource types are supported: * Organizations, such as `//cloudresourcemanager.googleapis.com/organizations/123`. * Folders, such as `//cloudresourcemanager.googleapis.com/folders/123`. * Projects, such as `//cloudresourcemanager.googleapis.com/projects/123` or `//cloudresourcemanager.googleapis.com/projects/my-project-id`. */ resources?: string[] | null; } + /** + * An operation attribute that defines the permissions applicable to this rule. + */ + export interface Schema$GoogleIamV3PrincipalAccessBoundaryPolicyRuleOperation { + /** + * Optional. Specifies the permissions that this rule excludes from the set of affected permissions given by `permissions`. The number of excluded permission strings in this field is limited to 50. If a permission appears in both `permissions` and `excluded_permissions` then it will _not_ be subject to the policy effect. The excluded permissions can be specified using the same syntax as `permissions`. + */ + excludedPermissions?: string[] | null; + /** + * Optional. The permissions that are explicitly affected by this rule. The number of permission strings in this field is limited to 50. Each permission uses the format `{service_fqdn\}/{resource\}.{verb\}`, where `{service_fqdn\}` is the fully qualified domain name for the service. `*` can be used as a wildcard to match all permissions for a specific service, resource type, or verb. The following formats are supported: * `{service_fqdn\}/{resource\}.{verb\}`: A specific permission. * `{service_fqdn\}/{resource\}.*`: All permissions for a specific resource type. * `{service_fqdn\}/x.*`: All permissions for all resource types under a specific service. * `{service_fqdn\}/x.{verb\}`: All permissions with a specific verb under a specific service. * `*`: All permissions across all services. For example, `compute.googleapis.com/x.setIamPolicy` refers to all setIamPolicy permissions for any compute resource. Wildcards expand only to the permissions specified in the `enforcement_version` of the policy. If the `enforcement_version` is updated, the wildcard will automatically expand to include new permissions in the updated version. + */ + permissions?: 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). */ diff --git a/src/apis/privateca/v1.ts b/src/apis/privateca/v1.ts index 538e00d9473..5b7e5a7bdad 100644 --- a/src/apis/privateca/v1.ts +++ b/src/apis/privateca/v1.ts @@ -1642,7 +1642,7 @@ export namespace privateca_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/privateca/v1beta1.ts b/src/apis/privateca/v1beta1.ts index 7fac2310ce0..90d6c6642dc 100644 --- a/src/apis/privateca/v1beta1.ts +++ b/src/apis/privateca/v1beta1.ts @@ -511,7 +511,7 @@ export namespace privateca_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/pubsub/README.md b/src/apis/pubsub/README.md index a82e924751d..f01913acb0c 100644 --- a/src/apis/pubsub/README.md +++ b/src/apis/pubsub/README.md @@ -4,15 +4,6 @@ > Provides reliable, many-to-many, asynchronous messaging between applications. -## 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/pubsub](https://www.npmjs.com/package/@google-cloud/pubsub) instead. -The [@google-cloud/pubsub](https://www.npmjs.com/package/@google-cloud/pubsub) 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 diff --git a/src/apis/pubsub/v1.ts b/src/apis/pubsub/v1.ts index be0858a882b..fe50bb84be1 100644 --- a/src/apis/pubsub/v1.ts +++ b/src/apis/pubsub/v1.ts @@ -142,7 +142,7 @@ export namespace pubsub_v1 { */ endpoint?: string | null; /** - * Optional. The service account to use to make prediction requests against endpoints. The resource creator or updater that specifies this field must have `iam.serviceAccounts.actAs` permission on the service account. If not specified, the Pub/Sub [service agent]({$universe.dns_names.final_documentation_domain\}/iam/docs/service-agents), service-{project_number\}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. + * Optional. The service account to use to make prediction requests against endpoints. The resource creator or updater that specifies this field must have `iam.serviceAccounts.actAs` permission on the service account. If not specified, the Pub/Sub [service agent](https://cloud.google.com/iam/docs/service-agents), service-{project_number\}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. */ serviceAccountEmail?: string | null; /** @@ -300,6 +300,31 @@ export namespace pubsub_v1 { */ writeMetadata?: boolean | null; } + /** + * Configuration for a Bigtable subscription. The Pub/Sub message will be written to a Bigtable row as follows: - row key: subscription name and message ID delimited by #. - columns: message bytes written to a single column family "data" with an empty-string column qualifier. - cell timestamp: the message publish timestamp. + */ + export interface Schema$BigtableConfig { + /** + * Optional. The app profile to use for the Bigtable writes. If not specified, the "default" application profile will be used. The app profile must use single-cluster routing. + */ + appProfileId?: string | null; + /** + * Optional. The service account to use to write to Bigtable. The subscription creator or updater that specifies this field must have `iam.serviceAccounts.actAs` permission on the service account. If not specified, the Pub/Sub [service agent](https://cloud.google.com/iam/docs/service-agents), service-{project_number\}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. + */ + serviceAccountEmail?: string | null; + /** + * Output only. An output-only field that indicates whether or not the subscription can receive messages. + */ + state?: string | null; + /** + * Optional. The unique name of the table to write messages to. Values are of the form `projects//instances//tables/`. + */ + table?: string | null; + /** + * Optional. When true, write the subscription name, message_id, publish_time, attributes, and ordering_key to additional columns in the table under the pubsub_metadata column family. The subscription name, message_id, and publish_time fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column. + */ + writeMetadata?: boolean | null; + } /** * Associates `members`, or principals, with a `role`. */ @@ -450,7 +475,7 @@ export namespace pubsub_v1 { */ subscription?: string | null; /** - * Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": "marketing" + * Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": "marketing" See https://{$universe.dns_names.final_documentation_domain\}/pubsub/docs/tags for more information on using tags with Pub/Sub resources. */ tags?: {[key: string]: string} | null; } @@ -973,7 +998,7 @@ export namespace pubsub_v1 { topic?: string | null; } /** - * A subscription resource. If none of `push_config`, `bigquery_config`, or `cloud_storage_config` is set, then the subscriber will pull and ack messages using API methods. At most one of these fields may be set. + * A subscription resource. If none of `push_config`, `bigquery_config`, `cloud_storage_config`, or `bigtable_config` is set, then the subscriber will pull and ack messages using API methods. At most one of these fields may be set. */ export interface Schema$Subscription { /** @@ -988,6 +1013,10 @@ export namespace pubsub_v1 { * Optional. If delivery to BigQuery is used with this subscription, this field is used to configure it. */ bigqueryConfig?: Schema$BigQueryConfig; + /** + * Optional. If delivery to Bigtable is used with this subscription, this field is used to configure it. + */ + bigtableConfig?: Schema$BigtableConfig; /** * Optional. If delivery to Google Cloud Storage is used with this subscription, this field is used to configure it. */ @@ -1049,7 +1078,7 @@ export namespace pubsub_v1 { */ state?: string | null; /** - * Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": "marketing" + * Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": "marketing" See https://{$universe.dns_names.final_documentation_domain\}/pubsub/docs/tags for more information on using tags with Pub/Sub resources. */ tags?: {[key: string]: string} | null; /** @@ -1137,7 +1166,7 @@ export namespace pubsub_v1 { */ state?: string | null; /** - * Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": "marketing" + * Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": "marketing" See https://{$universe.dns_names.final_documentation_domain\}/pubsub/docs/tags for more information on using tags with Pub/Sub resources. */ tags?: {[key: string]: string} | null; } @@ -4785,6 +4814,7 @@ export namespace pubsub_v1 { * // "ackDeadlineSeconds": 0, * // "analyticsHubSubscriptionInfo": {}, * // "bigqueryConfig": {}, + * // "bigtableConfig": {}, * // "cloudStorageConfig": {}, * // "deadLetterPolicy": {}, * // "detached": false, @@ -4813,6 +4843,7 @@ export namespace pubsub_v1 { * // "ackDeadlineSeconds": 0, * // "analyticsHubSubscriptionInfo": {}, * // "bigqueryConfig": {}, + * // "bigtableConfig": {}, * // "cloudStorageConfig": {}, * // "deadLetterPolicy": {}, * // "detached": false, @@ -5250,6 +5281,7 @@ export namespace pubsub_v1 { * // "ackDeadlineSeconds": 0, * // "analyticsHubSubscriptionInfo": {}, * // "bigqueryConfig": {}, + * // "bigtableConfig": {}, * // "cloudStorageConfig": {}, * // "deadLetterPolicy": {}, * // "detached": false, @@ -6005,6 +6037,7 @@ export namespace pubsub_v1 { * // "ackDeadlineSeconds": 0, * // "analyticsHubSubscriptionInfo": {}, * // "bigqueryConfig": {}, + * // "bigtableConfig": {}, * // "cloudStorageConfig": {}, * // "deadLetterPolicy": {}, * // "detached": false, diff --git a/src/apis/realtimebidding/v1.ts b/src/apis/realtimebidding/v1.ts index 4514d23c6c9..425f2f400ae 100644 --- a/src/apis/realtimebidding/v1.ts +++ b/src/apis/realtimebidding/v1.ts @@ -387,7 +387,7 @@ export namespace realtimebidding_v1 { */ native?: Schema$NativeContent; /** - * Experimental field that can be used during the [FLEDGE Origin Trial](/authorized-buyers/rtb/fledge-origin-trial). The URL to fetch an interest group ad used in [TURTLEDOVE on-device auction](https://github.com/WICG/turtledove/blob/main/FLEDGE.md#1-browsers-record-interest-groups"). This should be unique among all creatives for a given `accountId`. This URL should be the same as the URL returned by [generateBid()](https://github.com/WICG/turtledove/blob/main/FLEDGE.md#32-on-device-bidding). + * Deprecated: FLEDGE is no longer supported. See: https://privacysandbox.google.com/blog/update-on-plans-for-privacy-sandbox-technologies Experimental field that can be used during the [FLEDGE Origin Trial](/authorized-buyers/rtb/fledge-origin-trial). The URL to fetch an interest group ad used in [TURTLEDOVE on-device auction](https://github.com/WICG/turtledove/blob/main/FLEDGE.md#1-browsers-record-interest-groups"). This should be unique among all creatives for a given `accountId`. This URL should be the same as the URL returned by [generateBid()](https://github.com/WICG/turtledove/blob/main/FLEDGE.md#32-on-device-bidding). */ renderUrl?: string | null; /** @@ -868,11 +868,11 @@ export namespace realtimebidding_v1 { */ export interface Schema$NumericTargetingDimension { /** - * The IDs excluded in a configuration. + * The IDs excluded in a config. */ excludedIds?: string[] | null; /** - * The IDs included in a configuration. + * The IDs included in a config. */ includedIds?: string[] | null; } @@ -948,11 +948,11 @@ export namespace realtimebidding_v1 { httpCookie?: Schema$HttpCookieEvidence; } /** - * Pretargeting configuration: a set of targeting dimensions applied at the pretargeting stage of the RTB funnel. These control which inventory a bidder will receive bid requests for. + * Pretargeting config: a set of targeting dimensions applied at the pretargeting stage of the RTB funnel. These control which inventory a bidder will receive bid requests for. */ export interface Schema$PretargetingConfig { /** - * Targeting modes included by this configuration. A bid request must allow all the specified targeting modes. An unset value allows all bid requests to be sent, regardless of which targeting modes they allow. + * Targeting modes included by this config. A bid request must allow all the specified targeting modes. An unset value allows all bid requests to be sent, regardless of which targeting modes they allow. */ allowedUserTargetingModes?: string[] | null; /** @@ -960,23 +960,23 @@ export namespace realtimebidding_v1 { */ appTargeting?: Schema$AppTargeting; /** - * Output only. The identifier that corresponds to this pretargeting configuration that helps buyers track and attribute their spend across their own arbitrary divisions. If a bid request matches more than one configuration, the buyer chooses which billing_id to attribute each of their bids. + * Output only. The identifier that corresponds to this pretargeting config that helps buyers track and attribute their spend across their own arbitrary divisions. If a bid request matches more than one config, the buyer chooses which billing_id to attribute each of their bids. */ billingId?: string | null; /** - * The diplay name associated with this configuration. This name must be unique among all the pretargeting configurations a bidder has. + * The diplay name associated with this config. This name must be unique among all the pretargeting configs a bidder has. */ displayName?: string | null; /** - * The sensitive content category label IDs excluded in this configuration. Bid requests for inventory with any of the specified content label IDs will not be sent. Refer to this file https://storage.googleapis.com/adx-rtb-dictionaries/content-labels.txt for category IDs. + * The sensitive content category label IDs excluded in this config. Bid requests for inventory with any of the specified content label IDs will not be sent. Refer to this file https://storage.googleapis.com/adx-rtb-dictionaries/content-labels.txt for category IDs. */ excludedContentLabelIds?: string[] | null; /** - * The geos included or excluded in this configuration defined in https://storage.googleapis.com/adx-rtb-dictionaries/geo-table.csv + * The geos included or excluded in this config defined in https://storage.googleapis.com/adx-rtb-dictionaries/geo-table.csv */ geoTargeting?: Schema$NumericTargetingDimension; /** - * Creative dimensions included by this configuration. Only bid requests eligible for at least one of the specified creative dimensions will be sent. An unset value allows all bid requests to be sent, regardless of creative dimension. + * Creative dimensions included by this config. Only bid requests eligible for at least one of the specified creative dimensions will be sent. An unset value allows all bid requests to be sent, regardless of creative dimension. */ includedCreativeDimensions?: Schema$CreativeDimensions[]; /** @@ -984,27 +984,27 @@ export namespace realtimebidding_v1 { */ includedEnvironments?: string[] | null; /** - * Creative formats included by this configuration. Only bid requests eligible for at least one of the specified creative formats will be sent. An unset value will allow all bid requests to be sent, regardless of format. + * Creative formats included by this config. Only bid requests eligible for at least one of the specified creative formats will be sent. An unset value will allow all bid requests to be sent, regardless of format. */ includedFormats?: string[] | null; /** - * The languages included in this configuration, represented by their language code. See https://developers.google.com/adwords/api/docs/appendix/languagecodes. + * The languages included in this config, represented by their language code. See https://developers.google.com/adwords/api/docs/appendix/languagecodes. */ includedLanguages?: string[] | null; /** - * The mobile operating systems included in this configuration as defined in https://storage.googleapis.com/adx-rtb-dictionaries/mobile-os.csv + * The mobile operating systems included in this config as defined in https://storage.googleapis.com/adx-rtb-dictionaries/mobile-os.csv */ includedMobileOperatingSystemIds?: string[] | null; /** - * The platforms included by this configration. Bid requests for devices with the specified platform types will be sent. An unset value allows all bid requests to be sent, regardless of platform. + * The platforms included by this config. Bid requests for devices with the specified platform types will be sent. An unset value allows all bid requests to be sent, regardless of platform. */ includedPlatforms?: string[] | null; /** - * User identifier types included in this configuration. At least one of the user identifier types specified in this list must be available for the bid request to be sent. + * User identifier types included in this config. At least one of the user identifier types specified in this list must be available for the bid request to be sent. */ includedUserIdTypes?: string[] | null; /** - * The interstitial targeting specified for this configuration. The unset value will allow bid requests to be sent regardless of whether they are for interstitials or not. + * The interstitial targeting specified for this config. The unset value will allow bid requests to be sent regardless of whether they are for interstitials or not. */ interstitialTargeting?: string | null; /** @@ -1012,15 +1012,15 @@ export namespace realtimebidding_v1 { */ invalidGeoIds?: string[] | null; /** - * The maximum QPS threshold for this configuration. The bidder should receive no more than this number of bid requests matching this configuration per second across all their bidding endpoints among all trading locations. Further information available at https://developers.google.com/authorized-buyers/rtb/peer-guide + * The maximum QPS threshold for this config. The bidder should receive no more than this number of bid requests matching this config per second across all their bidding endpoints among all trading locations. Further information available at https://developers.google.com/authorized-buyers/rtb/peer-guide */ maximumQps?: string | null; /** - * The targeted minimum viewability decile, ranging in values [0, 10]. A value of 5 means that the configuration will only match adslots for which we predict at least 50% viewability. Values \> 10 will be rounded down to 10. An unset value or a value of 0 indicates that bid requests will be sent regardless of viewability. + * The targeted minimum viewability decile, ranging in values [0, 10]. A value of 5 means that the config will only match adslots for which we predict at least 50% viewability. Values \> 10 will be rounded down to 10. An unset value or a value of 0 indicates that bid requests will be sent regardless of viewability. */ minimumViewabilityDecile?: number | null; /** - * Output only. Name of the pretargeting configuration that must follow the pattern `bidders/{bidder_account_id\}/pretargetingConfigs/{config_id\}` + * Output only. Name of the pretargeting config that must follow the pattern `bidders/{bidder_account_id\}/pretargetingConfigs/{config_id\}` */ name?: string | null; /** @@ -1028,19 +1028,19 @@ export namespace realtimebidding_v1 { */ publisherTargeting?: Schema$StringTargetingDimension; /** - * Output only. The state of this pretargeting configuration. + * Output only. The state of this pretargeting config. */ state?: string | null; /** - * The remarketing lists included or excluded in this configuration as defined in UserList. + * The remarketing lists included or excluded in this config as defined in UserList. */ userListTargeting?: Schema$NumericTargetingDimension; /** - * The verticals included or excluded in this configuration as defined in https://developers.google.com/authorized-buyers/rtb/downloads/publisher-verticals + * The verticals included or excluded in this config as defined in https://developers.google.com/authorized-buyers/rtb/downloads/publisher-verticals */ verticalTargeting?: Schema$NumericTargetingDimension; /** - * Targeting on a subset of site inventory. If WEB is listed in included_environments, the specified targeting is applied. A maximum of 50,000 site URLs can be targeted. An unset value for targeting allows all web-based bid requests to be sent. Sites can either be targeting positively (bid requests will be sent only if the destination site is listed in the targeting dimension) or negatively (bid requests will be sent only if the destination site is not listed in the pretargeting configuration). + * Targeting on a subset of site inventory. If WEB is listed in included_environments, the specified targeting is applied. A maximum of 50,000 site URLs can be targeted. An unset value for targeting allows all web-based bid requests to be sent. Sites can either be targeting positively (bid requests will be sent only if the destination site is listed in the targeting dimension) or negatively (bid requests will be sent only if the destination site is not listed in the pretargeting config). */ webTargeting?: Schema$StringTargetingDimension; } @@ -3720,7 +3720,7 @@ export namespace realtimebidding_v1 { * * // Do the magic * const res = await realtimebidding.bidders.pretargetingConfigs.patch({ - * // Output only. Name of the pretargeting configuration that must follow the pattern `bidders/{bidder_account_id\}/pretargetingConfigs/{config_id\}` + * // Output only. Name of the pretargeting config that must follow the pattern `bidders/{bidder_account_id\}/pretargetingConfigs/{config_id\}` * name: 'bidders/my-bidder/pretargetingConfigs/my-pretargetingConfig', * // Field mask to use for partial in-place updates. * updateMask: 'placeholder-value', @@ -4644,7 +4644,7 @@ export namespace realtimebidding_v1 { } export interface Params$Resource$Bidders$Pretargetingconfigs$Patch extends StandardParameters { /** - * Output only. Name of the pretargeting configuration that must follow the pattern `bidders/{bidder_account_id\}/pretargetingConfigs/{config_id\}` + * Output only. Name of the pretargeting config that must follow the pattern `bidders/{bidder_account_id\}/pretargetingConfigs/{config_id\}` */ name?: string; /** diff --git a/src/apis/recaptchaenterprise/v1.ts b/src/apis/recaptchaenterprise/v1.ts index 96b1cf53888..12bde18149b 100644 --- a/src/apis/recaptchaenterprise/v1.ts +++ b/src/apis/recaptchaenterprise/v1.ts @@ -128,11 +128,50 @@ export namespace recaptchaenterprise_v1 { * Account defender risk assessment. */ export interface Schema$GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessment { + /** + * Output only. Account takeover risk assessment for this request. + */ + accountTakeoverVerdict?: Schema$GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountTakeoverVerdict; /** * Output only. Labels for this request. */ labels?: string[] | null; } + /** + * Risk explainability reasons for account defender. + */ + export interface Schema$GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountRiskReason { + /** + * Output only. A risk reason associated with this request. + */ + reason?: string | null; + } + /** + * Account takeover risk assessment. + */ + export interface Schema$GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountTakeoverVerdict { + /** + * Output only. Account takeover attempt probability. Values are from 0.0 (lowest risk) to 1.0 (highest risk). + */ + risk?: number | null; + /** + * Output only. Unordered list. Reasons why the request appears risky. Risk reasons can be returned even if the risk is low, as trustworthy requests can still have some risk signals. + */ + riskReasons?: Schema$GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountRiskReason[]; + /** + * Output only. Unordered list. Reasons why the request appears trustworthy. Trust reasons can be returned even if the risk is high, as risky requests can still have some trust signals. + */ + trustReasons?: Schema$GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountTrustReason[]; + } + /** + * Trust explainability reasons for account defender. + */ + export interface Schema$GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessmentAccountTrustReason { + /** + * Output only. A trust reason associated with this request. + */ + reason?: string | null; + } /** * Information about account verification, used for identity verification. */ @@ -912,7 +951,7 @@ export namespace recaptchaenterprise_v1 { */ challenge?: string | null; /** - * Output only. Extended verdict reasons to be used for experimentation only. The set of possible reasons is subject to change. + * Output only. Additional reasons contributing to the risk analysis verdict. These reasons are available to Enterprise tier projects only. Contact sales for more information. The set of reasons is subject to change. */ extendedVerdictReasons?: string[] | null; /** @@ -1041,7 +1080,7 @@ export namespace recaptchaenterprise_v1 { */ iosBundleId?: string | null; /** - * Output only. Whether the provided user response token is valid. When valid = false, the reason could be specified in invalid_reason or it could also be due to a user failing to solve a challenge or a sitekey mismatch (i.e the sitekey used to generate the token was different than the one specified in the assessment). + * Output only. Indicates whether the provided user response token is valid. If `false`, the token is invalid, either because the user failed the challenge or for a reason provided in the `invalid_reason` field. */ valid?: boolean | null; } diff --git a/src/apis/recommender/v1beta1.ts b/src/apis/recommender/v1beta1.ts index c9e320ad132..3af4b0d4bf2 100644 --- a/src/apis/recommender/v1beta1.ts +++ b/src/apis/recommender/v1beta1.ts @@ -776,7 +776,7 @@ export namespace recommender_v1beta1 { * * // Do the magic * const res = await recommender.billingAccounts.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -904,7 +904,7 @@ export namespace recommender_v1beta1 { export interface Params$Resource$Billingaccounts$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -3309,7 +3309,7 @@ export namespace recommender_v1beta1 { * * // Do the magic * const res = await recommender.folders.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3437,7 +3437,7 @@ export namespace recommender_v1beta1 { export interface Params$Resource$Folders$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -5305,7 +5305,7 @@ export namespace recommender_v1beta1 { * * // Do the magic * const res = await recommender.organizations.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -5433,7 +5433,7 @@ export namespace recommender_v1beta1 { export interface Params$Resource$Organizations$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -7834,7 +7834,7 @@ export namespace recommender_v1beta1 { * * // Do the magic * const res = await recommender.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -7962,7 +7962,7 @@ export namespace recommender_v1beta1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/redis/v1.ts b/src/apis/redis/v1.ts index 0ab0811d233..83ee7b47bec 100644 --- a/src/apis/redis/v1.ts +++ b/src/apis/redis/v1.ts @@ -124,6 +124,62 @@ export namespace redis_v1 { } } + /** + * The ACL policy resource. + */ + export interface Schema$AclPolicy { + /** + * Output only. Etag for the ACL policy. + */ + etag?: string | null; + /** + * Identifier. Full resource path of the ACL policy. + */ + name?: string | null; + /** + * Required. The ACL rules within the ACL policy. + */ + rules?: Schema$AclRule[]; + /** + * Output only. The state of the ACL policy. + */ + state?: string | null; + /** + * Output only. The version of the ACL policy. Used in drift resolution. + */ + version?: string | null; + } + /** + * A single ACL rule which defines the policy for a user. + */ + export interface Schema$AclRule { + /** + * Required. The rule to be applied to the username. Ex: "on \>password123 ~* +@all" The format of the rule is defined by Redis OSS: https://redis.io/docs/latest/operate/oss_and_stack/management/security/acl/ + */ + rule?: string | null; + /** + * Required. Specifies the IAM user or service account to be added to the ACL policy. This username will be directly set on the Redis OSS. + */ + username?: string | null; + } + /** + * Request message for AddAuthToken. + */ + export interface Schema$AddAuthTokenRequest { + /** + * Required. The auth token to add. + */ + authToken?: Schema$AuthToken; + } + /** + * Request message for AddTokenAuthUser. + */ + export interface Schema$AddTokenAuthUserRequest { + /** + * Required. The id of the token auth user to add. + */ + tokenAuthUser?: string | null; + } /** * Configuration of the AOF based persistence. */ @@ -133,6 +189,27 @@ export namespace redis_v1 { */ appendFsync?: string | null; } + /** + * Auth token for the cluster. + */ + export interface Schema$AuthToken { + /** + * Output only. Create time of the auth token. + */ + createTime?: string | null; + /** + * Identifier. Name of the auth token. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\}/authTokens/{auth_token\} + */ + name?: string | null; + /** + * Output only. State of the auth token. + */ + state?: string | null; + /** + * Output only. The service generated authentication token used to connect to the Redis cluster. + */ + token?: string | null; + } /** * The automated backup config for a cluster. */ @@ -235,7 +312,7 @@ export namespace redis_v1 { uid?: string | null; } /** - * Request for [BackupCluster]. + * Request for `BackupCluster`. */ export interface Schema$BackupClusterRequest { /** @@ -401,6 +478,14 @@ export namespace redis_v1 { * A cluster instance. */ export interface Schema$Cluster { + /** + * Optional. The ACL policy to be applied to the cluster. + */ + aclPolicy?: string | null; + /** + * Optional. Output only. Indicates whether the ACL rules applied to the cluster are in sync with the latest ACL policy rules. This field is only applicable if the ACL policy is set for the cluster. + */ + aclPolicyInSync?: boolean | null; /** * Optional. Immutable. Deprecated, do not use. */ @@ -849,7 +934,7 @@ export namespace redis_v1 { uniqueId?: string | null; } /** - * Common model for database resource instance metadata. Next ID: 31 + * Common model for database resource instance metadata. Next ID: 32 */ export interface Schema$DatabaseResourceMetadata { /** @@ -920,6 +1005,10 @@ export namespace redis_v1 { * Optional. Maintenance info for the resource. */ maintenanceInfo?: Schema$ResourceMaintenanceInfo; + /** + * Optional. The modes of the database resource. + */ + modes?: string[] | null; /** * Identifier for this resource's immediate parent/primary resource if the current resource is a replica or derived form of another Database resource. Else it would be NULL. REQUIRED if the immediate parent exists when first time resource is getting ingested, otherwise optional. */ @@ -1003,9 +1092,13 @@ export namespace redis_v1 { signalType?: string | null; } /** - * Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 7 + * Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 10 */ export interface Schema$DatabaseResourceSignalData { + /** + * Deprecated: Use signal_metadata_list instead. + */ + backupRun?: Schema$BackupRun; /** * Required. Full Resource name of the source resource. */ @@ -1014,14 +1107,22 @@ export namespace redis_v1 { * Required. Last time signal was refreshed */ lastRefreshTime?: string | null; + /** + * Required. Resource location. + */ + location?: string | null; /** * Database resource id. */ resourceId?: Schema$DatabaseResourceId; /** - * Signal data for boolean signals. + * Deprecated: Use signal_metadata_list instead. */ signalBoolValue?: boolean | null; + /** + * This will support array of OneOf signal metadata information for a given signal type. + */ + signalMetadataList?: Schema$SignalMetadata[]; /** * Required. Output only. Signal state of the signal */ @@ -1104,7 +1205,7 @@ export namespace redis_v1 { type?: string | null; } /** - * Request for [ExportBackup]. + * Request for `ExportBackup`. */ export interface Schema$ExportBackupRequest { /** @@ -1342,7 +1443,7 @@ export namespace redis_v1 { */ readReplicasMode?: string | null; /** - * Optional. Redis configuration parameters, according to http://redis.io/topics/config. Currently, the only supported parameters are: Redis version 3.2 and newer: * maxmemory-policy * notify-keyspace-events Redis version 4.0 and newer: * activedefrag * lfu-decay-time * lfu-log-factor * maxmemory-gb Redis version 5.0 and newer: * stream-node-max-bytes * stream-node-max-entries + * Optional. Redis configuration parameters, according to [Redis configuration](https://redis.io/docs/latest/operate/oss_and_stack/management/config/). Currently, the only supported parameters are: Redis version 3.2 and newer: * maxmemory-policy * notify-keyspace-events Redis version 4.0 and newer: * activedefrag * lfu-decay-time * lfu-log-factor * maxmemory-gb Redis version 5.0 and newer: * stream-node-max-bytes * stream-node-max-entries */ redisConfigs?: {[key: string]: string} | null; /** @@ -1431,7 +1532,41 @@ export namespace redis_v1 { resourceName?: string | null; } /** - * Response for [ListBackupCollections]. + * Response for `ListAclPolicies`. + */ + export interface Schema$ListAclPoliciesResponse { + /** + * A list of ACL policies in the project in the specified location, or across all locations. If the `location_id` in the parent field of the request is "-", all regions available to the project are queried, and the results aggregated. + */ + aclPolicies?: Schema$AclPolicy[]; + /** + * Token to retrieve the next page of results, or empty if there are no more results in the list. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Response message for ListAuthTokens. + */ + export interface Schema$ListAuthTokensResponse { + /** + * A list of auth tokens in the project. + */ + authTokens?: Schema$AuthToken[]; + /** + * Token to retrieve the next page of results, or empty if there are no more results in the list. + */ + nextPageToken?: string | null; + /** + * Unordered list. Auth tokens that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Response for `ListBackupCollections`. */ export interface Schema$ListBackupCollectionsResponse { /** @@ -1448,7 +1583,7 @@ export namespace redis_v1 { unreachable?: string[] | null; } /** - * Response for [ListBackups]. + * Response for `ListBackups`. */ export interface Schema$ListBackupsResponse { /** @@ -1465,7 +1600,7 @@ export namespace redis_v1 { unreachable?: string[] | null; } /** - * Response for ListClusters. + * Response for `ListClusters`. */ export interface Schema$ListClustersResponse { /** @@ -1528,6 +1663,23 @@ export namespace redis_v1 { */ unreachable?: string[] | null; } + /** + * Response message for ListTokenAuthUsers. + */ + export interface Schema$ListTokenAuthUsersResponse { + /** + * Token to retrieve the next page of results, or empty if there are no more results in the list. + */ + nextPageToken?: string | null; + /** + * A list of token auth users in the project. + */ + tokenAuthUsers?: Schema$TokenAuthUser[]; + /** + * Unordered list. Token auth users that could not be reached. + */ + unreachable?: string[] | null; + } /** * A resource that represents a Google Cloud location. */ @@ -2099,6 +2251,19 @@ export namespace redis_v1 { */ name?: string | null; } + /** + * SignalMetadata contains one of the signal metadata proto messages associated with a SignalType. This proto will be mapped to SignalMetadata message in storage.proto. Next ID: 3 + */ + export interface Schema$SignalMetadata { + /** + * Signal data for backup runs. + */ + backupRun?: Schema$BackupRun; + /** + * Signal data for boolean signals. + */ + signalBoolValue?: boolean | null; + } /** * Represents additional information about the state of the cluster. */ @@ -2180,6 +2345,19 @@ export namespace redis_v1 { */ sha1Fingerprint?: string | null; } + /** + * Represents a token based auth user for the cluster. + */ + export interface Schema$TokenAuthUser { + /** + * Identifier. The resource name of the token based auth user. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + */ + name?: string | null; + /** + * Output only. The state of the token based auth user. + */ + state?: string | null; + } /** * TypedValue represents the value of a metric type. It can either be a double, an int64, a string or a bool. */ @@ -2288,12 +2466,16 @@ export namespace redis_v1 { export class Resource$Projects$Locations { context: APIRequestContext; + aclPolicies: Resource$Projects$Locations$Aclpolicies; backupCollections: Resource$Projects$Locations$Backupcollections; clusters: Resource$Projects$Locations$Clusters; instances: Resource$Projects$Locations$Instances; operations: Resource$Projects$Locations$Operations; constructor(context: APIRequestContext) { this.context = context; + this.aclPolicies = new Resource$Projects$Locations$Aclpolicies( + this.context + ); this.backupCollections = new Resource$Projects$Locations$Backupcollections(this.context); this.clusters = new Resource$Projects$Locations$Clusters(this.context); @@ -2325,7 +2507,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -2463,7 +2648,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -2589,7 +2777,7 @@ export namespace redis_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2610,7 +2798,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -2619,7 +2810,7 @@ export namespace redis_v1 { * * // Do the magic * const res = await redis.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2751,7 +2942,7 @@ export namespace redis_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -2772,18 +2963,14 @@ export namespace redis_v1 { pageToken?: string; } - export class Resource$Projects$Locations$Backupcollections { + export class Resource$Projects$Locations$Aclpolicies { context: APIRequestContext; - backups: Resource$Projects$Locations$Backupcollections$Backups; constructor(context: APIRequestContext) { this.context = context; - this.backups = new Resource$Projects$Locations$Backupcollections$Backups( - this.context - ); } /** - * Get a backup collection. + * Creates an ACL Policy. The creation is executed synchronously and the policy is available for use immediately after the RPC returns. * @example * ```js * // Before running the sample: @@ -2804,7 +2991,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -2812,23 +3002,35 @@ export namespace redis_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.backupCollections.get({ - * // Required. Redis backupCollection resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` where `location_id` refers to a Google Cloud region. - * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection', + * const res = await redis.projects.locations.aclPolicies.create({ + * // Required. The logical name of the ACL Policy in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location + * aclPolicyId: 'placeholder-value', + * // Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + * parent: 'projects/my-project/locations/my-location', + * // Optional. Idempotent request UUID. . + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "etag": "my_etag", + * // "name": "my_name", + * // "rules": [], + * // "state": "my_state", + * // "version": "my_version" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "cluster": "my_cluster", - * // "clusterUid": "my_clusterUid", - * // "createTime": "my_createTime", - * // "kmsKey": "my_kmsKey", - * // "lastBackupTime": "my_lastBackupTime", + * // "etag": "my_etag", * // "name": "my_name", - * // "totalBackupCount": "my_totalBackupCount", - * // "totalBackupSizeBytes": "my_totalBackupSizeBytes", - * // "uid": "my_uid" + * // "rules": [], + * // "state": "my_state", + * // "version": "my_version" * // } * } * @@ -2844,53 +3046,53 @@ export namespace redis_v1 { * @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$Backupcollections$Get, + create( + params: Params$Resource$Projects$Locations$Aclpolicies$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Backupcollections$Get, + create( + params?: Params$Resource$Projects$Locations$Aclpolicies$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Backupcollections$Get, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Aclpolicies$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Backupcollections$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Aclpolicies$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Backupcollections$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Aclpolicies$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backupcollections$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Aclpolicies$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backupcollections$Get; + {}) as Params$Resource$Projects$Locations$Aclpolicies$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Backupcollections$Get; + params = {} as Params$Resource$Projects$Locations$Aclpolicies$Create; options = {}; } @@ -2903,29 +3105,32 @@ export namespace redis_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+parent}/aclPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists all backup collections owned by a consumer project in either the specified location (region) or all locations. If `location_id` is specified as `-` (wildcard), then all regions available to the project are queried, and the results are aggregated. + * Deletes a specific Acl Policy. This action will delete the Acl Policy and all the rules associated with it. An ACL policy cannot be deleted if it is attached to a cluster. * @example * ```js * // Before running the sample: @@ -2946,7 +3151,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -2954,21 +3162,23 @@ export namespace redis_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.backupCollections.list({ - * // Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. - * pageSize: 'placeholder-value', - * // Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. - * pageToken: 'placeholder-value', - * // Required. The resource name of the backupCollection location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. - * parent: 'projects/my-project/locations/my-location', + * const res = await redis.projects.locations.aclPolicies.delete({ + * // Optional. Etag of the ACL policy. If this is different from the server's etag, the request will fail with an ABORTED error. + * etag: 'placeholder-value', + * // Required. Redis ACL Policy resource name using the form: `projects/{project_id\}/locations/{location_id\}/aclPolicies/{acl_policy_id\}` where `location_id` refers to a GCP region. + * name: 'projects/my-project/locations/my-location/aclPolicies/my-aclPolicie', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "backupCollections": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -2984,58 +3194,53 @@ export namespace redis_v1 { * @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$Backupcollections$List, + delete( + params: Params$Resource$Projects$Locations$Aclpolicies$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Backupcollections$List, + delete( + params?: Params$Resource$Projects$Locations$Aclpolicies$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Backupcollections$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Aclpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Backupcollections$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Backupcollections$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Aclpolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Aclpolicies$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backupcollections$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Aclpolicies$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backupcollections$List; + {}) as Params$Resource$Projects$Locations$Aclpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Backupcollections$List; + params = {} as Params$Resource$Projects$Locations$Aclpolicies$Delete; options = {}; } @@ -3048,62 +3253,29 @@ export namespace redis_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/backupCollections').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Backupcollections$Get extends StandardParameters { - /** - * Required. Redis backupCollection resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` where `location_id` refers to a Google Cloud region. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Backupcollections$List extends StandardParameters { - /** - * Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. - */ - pageSize?: number; - /** - * Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. - */ - pageToken?: string; - /** - * Required. The resource name of the backupCollection location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. - */ - parent?: string; - } - - export class Resource$Projects$Locations$Backupcollections$Backups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes a specific backup. + * Gets the details of a specific Redis Cluster ACL Policy. * @example * ```js * // Before running the sample: @@ -3124,7 +3296,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3132,21 +3307,19 @@ export namespace redis_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.backupCollections.backups.delete({ - * // Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` - * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection/backups/my-backup', - * // Optional. Idempotent request UUID. - * requestId: 'placeholder-value', + * const res = await redis.projects.locations.aclPolicies.get({ + * // Required. Redis ACL Policy resource name using the form: `projects/{project_id\}/locations/{location_id\}/aclPolicies/{acl_policy_id\}` where `location_id` refers to a GCP region. + * name: 'projects/my-project/locations/my-location/aclPolicies/my-aclPolicie', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "etag": "my_etag", * // "name": "my_name", - * // "response": {} + * // "rules": [], + * // "state": "my_state", + * // "version": "my_version" * // } * } * @@ -3162,54 +3335,53 @@ export namespace redis_v1 { * @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$Backupcollections$Backups$Delete, + get( + params: Params$Resource$Projects$Locations$Aclpolicies$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + get( + params?: Params$Resource$Projects$Locations$Aclpolicies$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Aclpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Aclpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Aclpolicies$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backupcollections$Backups$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Aclpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$Delete; + {}) as Params$Resource$Projects$Locations$Aclpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Backupcollections$Backups$Delete; + params = {} as Params$Resource$Projects$Locations$Aclpolicies$Get; options = {}; } @@ -3223,7 +3395,7 @@ export namespace redis_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options @@ -3234,17 +3406,17 @@ export namespace redis_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Exports a specific backup to a customer target Cloud Storage URI. + * Lists all ACL Policies owned by a project in either the specified location (region) or all locations. The location should have the following format: * `projects/{project_id\}/locations/{location_id\}` If `location_id` is specified as `-` (wildcard), then all regions available to the project are queried, and the results are aggregated. * @example * ```js * // Before running the sample: @@ -3265,7 +3437,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3273,27 +3448,21 @@ export namespace redis_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.backupCollections.backups.export({ - * // Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` - * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection/backups/my-backup', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "gcsBucket": "my_gcsBucket" - * // } - * }, + * const res = await redis.projects.locations.aclPolicies.list({ + * // Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more ACL policies left to be queried. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. The `next_page_token` value returned from a previous `ListAclPolicies` request, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "aclPolicies": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -3309,54 +3478,55 @@ export namespace redis_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - export( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + list( + params: Params$Resource$Projects$Locations$Aclpolicies$List, options: StreamMethodOptions ): Promise>; - export( - params?: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + list( + params?: Params$Resource$Projects$Locations$Aclpolicies$List, options?: MethodOptions - ): Promise>; - export( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Aclpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - export( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Aclpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - export( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Aclpolicies$List, + callback: BodyResponseCallback ): void; - export(callback: BodyResponseCallback): void; - export( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backupcollections$Backups$Export - | BodyResponseCallback + | Params$Resource$Projects$Locations$Aclpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$Export; + {}) as Params$Resource$Projects$Locations$Aclpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Backupcollections$Backups$Export; + params = {} as Params$Resource$Projects$Locations$Aclpolicies$List; options = {}; } @@ -3369,29 +3539,32 @@ export namespace redis_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:export').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+parent}/aclPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the details of a specific backup. + * Updates the ACL policy. The operation applies the updated ACL policy to all of the linked clusters. If Memorystore can apply the policy to all clusters, then the operation returns a SUCCESS status. If Memorystore can't apply the policy to all clusters, then to ensure eventual consistency, Memorystore uses reconciliation to apply the policy to the failed clusters. Completed longrunning.Operation will contain the new ACL Policy object in the response field. * @example * ```js * // Before running the sample: @@ -3412,7 +3585,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3420,29 +3596,35 @@ export namespace redis_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.backupCollections.backups.get({ - * // Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` - * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection/backups/my-backup', + * const res = await redis.projects.locations.aclPolicies.patch({ + * // Identifier. Full resource path of the ACL policy. + * name: 'projects/my-project/locations/my-location/aclPolicies/my-aclPolicie', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', + * // Optional. Mask of fields to be updated. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from `AclPolicy`: * `rules` + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "etag": "my_etag", + * // "name": "my_name", + * // "rules": [], + * // "state": "my_state", + * // "version": "my_version" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "backupFiles": [], - * // "backupType": "my_backupType", - * // "cluster": "my_cluster", - * // "clusterUid": "my_clusterUid", - * // "createTime": "my_createTime", - * // "encryptionInfo": {}, - * // "engineVersion": "my_engineVersion", - * // "expireTime": "my_expireTime", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "nodeType": "my_nodeType", - * // "replicaCount": 0, - * // "shardCount": 0, - * // "state": "my_state", - * // "totalSizeBytes": "my_totalSizeBytes", - * // "uid": "my_uid" + * // "response": {} * // } * } * @@ -3458,54 +3640,53 @@ export namespace redis_v1 { * @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$Backupcollections$Backups$Get, + patch( + params: Params$Resource$Projects$Locations$Aclpolicies$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, + patch( + params?: Params$Resource$Projects$Locations$Aclpolicies$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Aclpolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Aclpolicies$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Aclpolicies$Patch, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backupcollections$Backups$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Aclpolicies$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$Get; + {}) as Params$Resource$Projects$Locations$Aclpolicies$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Backupcollections$Backups$Get; + params = {} as Params$Resource$Projects$Locations$Aclpolicies$Patch; options = {}; } @@ -3519,7 +3700,7 @@ export namespace redis_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options @@ -3530,211 +3711,101 @@ export namespace redis_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Aclpolicies$Create extends StandardParameters { /** - * Lists all backups owned by a backup collection. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/redis.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const redis = google.redis('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await redis.projects.locations.backupCollections.backups.list({ - * // Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. - * pageSize: 'placeholder-value', - * // Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. - * pageToken: 'placeholder-value', - * // Required. The resource name of the backupCollection using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` - * parent: - * 'projects/my-project/locations/my-location/backupCollections/my-backupCollection', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "backups": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @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. + * Required. The logical name of the ACL Policy in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location */ - list( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Backupcollections$Backups$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Backupcollections$Backups$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Backupcollections$Backups$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/backups').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - 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$Backupcollections$Backups$Delete extends StandardParameters { + aclPolicyId?: string; /** - * Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + * Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. */ - name?: string; + parent?: string; /** - * Optional. Idempotent request UUID. + * Optional. Idempotent request UUID. . */ requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AclPolicy; } - export interface Params$Resource$Projects$Locations$Backupcollections$Backups$Export extends StandardParameters { + export interface Params$Resource$Projects$Locations$Aclpolicies$Delete extends StandardParameters { /** - * Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + * Optional. Etag of the ACL policy. If this is different from the server's etag, the request will fail with an ABORTED error. + */ + etag?: string; + /** + * Required. Redis ACL Policy resource name using the form: `projects/{project_id\}/locations/{location_id\}/aclPolicies/{acl_policy_id\}` where `location_id` refers to a GCP region. */ name?: string; - /** - * Request body metadata + * Optional. Idempotent request UUID. */ - requestBody?: Schema$ExportBackupRequest; + requestId?: string; } - export interface Params$Resource$Projects$Locations$Backupcollections$Backups$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Aclpolicies$Get extends StandardParameters { /** - * Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + * Required. Redis ACL Policy resource name using the form: `projects/{project_id\}/locations/{location_id\}/aclPolicies/{acl_policy_id\}` where `location_id` refers to a GCP region. */ name?: string; } - export interface Params$Resource$Projects$Locations$Backupcollections$Backups$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Aclpolicies$List extends StandardParameters { /** - * Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + * Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more ACL policies left to be queried. The maximum value is 1000; values above 1000 will be coerced to 1000. */ pageSize?: number; /** - * Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. + * Optional. The `next_page_token` value returned from a previous `ListAclPolicies` request, if any. */ pageToken?: string; /** - * Required. The resource name of the backupCollection using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` + * Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. */ parent?: string; } + export interface Params$Resource$Projects$Locations$Aclpolicies$Patch extends StandardParameters { + /** + * Identifier. Full resource path of the ACL policy. + */ + name?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; + /** + * Optional. Mask of fields to be updated. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from `AclPolicy`: * `rules` + */ + updateMask?: string; - export class Resource$Projects$Locations$Clusters { + /** + * Request body metadata + */ + requestBody?: Schema$AclPolicy; + } + + export class Resource$Projects$Locations$Backupcollections { context: APIRequestContext; + backups: Resource$Projects$Locations$Backupcollections$Backups; constructor(context: APIRequestContext) { this.context = context; + this.backups = new Resource$Projects$Locations$Backupcollections$Backups( + this.context + ); } /** - * Backup Redis Cluster. If this is the first time a backup is being created, a backup collection will be created at the backend, and this backup belongs to this collection. Both collection and backup will have a resource name. Backup will be executed for each shard. A replica (primary if nonHA) will be selected to perform the execution. Backup call will be rejected if there is an ongoing backup or update operation. Be aware that during preview, if the cluster's internal software version is too old, critical update will be performed before actual backup. Once the internal software version is updated to the minimum version required by the backup feature, subsequent backups will not require critical update. After preview, there will be no critical update needed for backup. + * Get a backup collection. * @example * ```js * // Before running the sample: @@ -3755,7 +3826,11 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-only', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3763,28 +3838,23 @@ export namespace redis_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.backup({ - * // Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. - * name: 'projects/my-project/locations/my-location/clusters/my-cluster', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "backupId": "my_backupId", - * // "ttl": "my_ttl" - * // } - * }, + * const res = await redis.projects.locations.backupCollections.get({ + * // Required. Redis backupCollection resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` where `location_id` refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "cluster": "my_cluster", + * // "clusterUid": "my_clusterUid", + * // "createTime": "my_createTime", + * // "kmsKey": "my_kmsKey", + * // "lastBackupTime": "my_lastBackupTime", * // "name": "my_name", - * // "response": {} + * // "totalBackupCount": "my_totalBackupCount", + * // "totalBackupSizeBytes": "my_totalBackupSizeBytes", + * // "uid": "my_uid" * // } * } * @@ -3800,53 +3870,53 @@ export namespace redis_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - backup( - params: Params$Resource$Projects$Locations$Clusters$Backup, + get( + params: Params$Resource$Projects$Locations$Backupcollections$Get, options: StreamMethodOptions ): Promise>; - backup( - params?: Params$Resource$Projects$Locations$Clusters$Backup, + get( + params?: Params$Resource$Projects$Locations$Backupcollections$Get, options?: MethodOptions - ): Promise>; - backup( - params: Params$Resource$Projects$Locations$Clusters$Backup, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Backupcollections$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - backup( - params: Params$Resource$Projects$Locations$Clusters$Backup, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Backupcollections$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - backup( - params: Params$Resource$Projects$Locations$Clusters$Backup, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Backupcollections$Get, + callback: BodyResponseCallback ): void; - backup(callback: BodyResponseCallback): void; - backup( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Backup - | BodyResponseCallback + | Params$Resource$Projects$Locations$Backupcollections$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Backup; + {}) as Params$Resource$Projects$Locations$Backupcollections$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Clusters$Backup; + params = {} as Params$Resource$Projects$Locations$Backupcollections$Get; options = {}; } @@ -3859,8 +3929,8 @@ export namespace redis_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:backup').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options @@ -3871,17 +3941,17 @@ export namespace redis_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a Redis cluster based on the specified properties. The creation is executed asynchronously and callers may check the returned operation to track its progress. Once the operation is completed the Redis cluster will be fully functional. The completed longrunning.Operation will contain the new cluster object in the response field. The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation. + * Lists all backup collections owned by a consumer project in either the specified location (region) or all locations. If `location_id` is specified as `-` (wildcard), then all regions available to the project are queried, and the results are aggregated. * @example * ```js * // Before running the sample: @@ -3902,7 +3972,11 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-only', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3910,63 +3984,192 @@ export namespace redis_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.create({ - * // Required. The logical name of the Redis cluster in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location - * clusterId: 'placeholder-value', - * // Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + * const res = await redis.projects.locations.backupCollections.list({ + * // Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the backupCollection location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "backupCollections": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Backupcollections$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Backupcollections$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Backupcollections$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backupcollections$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backupcollections$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backupcollections$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backupcollections$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Backupcollections$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/backupCollections').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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$Backupcollections$Get extends StandardParameters { + /** + * Required. Redis backupCollection resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` where `location_id` refers to a Google Cloud region. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Backupcollections$List extends StandardParameters { + /** + * Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + */ + pageSize?: number; + /** + * Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. + */ + pageToken?: string; + /** + * Required. The resource name of the backupCollection location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + */ + parent?: string; + } + + export class Resource$Projects$Locations$Backupcollections$Backups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes a specific backup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.backupCollections.backups.delete({ + * // Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection/backups/my-backup', * // Optional. Idempotent request UUID. * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allowFewerZonesDeployment": false, - * // "asyncClusterEndpointsDeletionEnabled": false, - * // "authorizationMode": "my_authorizationMode", - * // "automatedBackupConfig": {}, - * // "availableMaintenanceVersions": [], - * // "backupCollection": "my_backupCollection", - * // "clusterEndpoints": [], - * // "createTime": "my_createTime", - * // "crossClusterReplicationConfig": {}, - * // "deletionProtectionEnabled": false, - * // "discoveryEndpoints": [], - * // "effectiveMaintenanceVersion": "my_effectiveMaintenanceVersion", - * // "encryptionInfo": {}, - * // "gcsSource": {}, - * // "kmsKey": "my_kmsKey", - * // "labels": {}, - * // "maintenancePolicy": {}, - * // "maintenanceSchedule": {}, - * // "maintenanceVersion": "my_maintenanceVersion", - * // "managedBackupSource": {}, - * // "name": "my_name", - * // "nodeType": "my_nodeType", - * // "ondemandMaintenance": false, - * // "persistenceConfig": {}, - * // "preciseSizeGb": {}, - * // "pscConfigs": [], - * // "pscConnections": [], - * // "pscServiceAttachments": [], - * // "redisConfigs": {}, - * // "replicaCount": 0, - * // "rotateServerCertificate": false, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "serverCaMode": "my_serverCaMode", - * // "serverCaPool": "my_serverCaPool", - * // "shardCount": 0, - * // "simulateMaintenanceEvent": false, - * // "sizeGb": 0, - * // "state": "my_state", - * // "stateInfo": {}, - * // "transitEncryptionMode": "my_transitEncryptionMode", - * // "uid": "my_uid", - * // "zoneDistributionConfig": {} - * // } - * }, * }); * console.log(res.data); * @@ -3992,32 +4195,2280 @@ export namespace redis_v1 { * @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, + delete( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backupcollections$Backups$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Backupcollections$Backups$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Exports a specific backup to a customer target Cloud Storage URI. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.backupCollections.backups.export({ + * // Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection/backups/my-backup', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "gcsBucket": "my_gcsBucket" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + export( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + options: StreamMethodOptions + ): Promise>; + export( + params?: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + options?: MethodOptions + ): Promise>; + export( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + export( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + export( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + callback: BodyResponseCallback + ): void; + export(callback: BodyResponseCallback): void; + export( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backupcollections$Backups$Export + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$Export; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Backupcollections$Backups$Export; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:export').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the details of a specific backup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-only', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.backupCollections.backups.get({ + * // Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection/backups/my-backup', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "backupFiles": [], + * // "backupType": "my_backupType", + * // "cluster": "my_cluster", + * // "clusterUid": "my_clusterUid", + * // "createTime": "my_createTime", + * // "encryptionInfo": {}, + * // "engineVersion": "my_engineVersion", + * // "expireTime": "my_expireTime", + * // "name": "my_name", + * // "nodeType": "my_nodeType", + * // "replicaCount": 0, + * // "shardCount": 0, + * // "state": "my_state", + * // "totalSizeBytes": "my_totalSizeBytes", + * // "uid": "my_uid" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Backupcollections$Backups$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backupcollections$Backups$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Backupcollections$Backups$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists all backups owned by a backup collection. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-only', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.backupCollections.backups.list({ + * // Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the backupCollection using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` + * parent: + * 'projects/my-project/locations/my-location/backupCollections/my-backupCollection', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "backups": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Backupcollections$Backups$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Backupcollections$Backups$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backupcollections$Backups$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Backupcollections$Backups$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/backups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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$Backupcollections$Backups$Delete extends StandardParameters { + /** + * Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + */ + name?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Backupcollections$Backups$Export extends StandardParameters { + /** + * Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExportBackupRequest; + } + export interface Params$Resource$Projects$Locations$Backupcollections$Backups$Get extends StandardParameters { + /** + * Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Backupcollections$Backups$List extends StandardParameters { + /** + * Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + */ + pageSize?: number; + /** + * Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. + */ + pageToken?: string; + /** + * Required. The resource name of the backupCollection using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` + */ + parent?: string; + } + + export class Resource$Projects$Locations$Clusters { + context: APIRequestContext; + tokenAuthUsers: Resource$Projects$Locations$Clusters$Tokenauthusers; + constructor(context: APIRequestContext) { + this.context = context; + this.tokenAuthUsers = + new Resource$Projects$Locations$Clusters$Tokenauthusers(this.context); + } + + /** + * Adds a token auth user for a token based auth enabled cluster. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.addTokenAuthUser({ + * // Required. The cluster resource that this token auth user will be added for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\} + * cluster: 'projects/my-project/locations/my-location/clusters/my-cluster', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "tokenAuthUser": "my_tokenAuthUser" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + addTokenAuthUser( + params: Params$Resource$Projects$Locations$Clusters$Addtokenauthuser, + options: StreamMethodOptions + ): Promise>; + addTokenAuthUser( + params?: Params$Resource$Projects$Locations$Clusters$Addtokenauthuser, + options?: MethodOptions + ): Promise>; + addTokenAuthUser( + params: Params$Resource$Projects$Locations$Clusters$Addtokenauthuser, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addTokenAuthUser( + params: Params$Resource$Projects$Locations$Clusters$Addtokenauthuser, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addTokenAuthUser( + params: Params$Resource$Projects$Locations$Clusters$Addtokenauthuser, + callback: BodyResponseCallback + ): void; + addTokenAuthUser(callback: BodyResponseCallback): void; + addTokenAuthUser( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Addtokenauthuser + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Addtokenauthuser; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Addtokenauthuser; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+cluster}:addTokenAuthUser').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['cluster'], + pathParams: ['cluster'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Backup Redis Cluster. If this is the first time a backup is being created, a backup collection will be created at the backend, and this backup belongs to this collection. Both collection and backup will have a resource name. Backup will be executed for each shard. A replica (primary if nonHA) will be selected to perform the execution. Backup call will be rejected if there is an ongoing backup or update operation. Be aware that during preview, if the cluster's internal software version is too old, critical update will be performed before actual backup. Once the internal software version is updated to the minimum version required by the backup feature, subsequent backups will not require critical update. After preview, there will be no critical update needed for backup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.backup({ + * // Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/clusters/my-cluster', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "backupId": "my_backupId", + * // "ttl": "my_ttl" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + backup( + params: Params$Resource$Projects$Locations$Clusters$Backup, + options: StreamMethodOptions + ): Promise>; + backup( + params?: Params$Resource$Projects$Locations$Clusters$Backup, + options?: MethodOptions + ): Promise>; + backup( + params: Params$Resource$Projects$Locations$Clusters$Backup, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + backup( + params: Params$Resource$Projects$Locations$Clusters$Backup, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + backup( + params: Params$Resource$Projects$Locations$Clusters$Backup, + callback: BodyResponseCallback + ): void; + backup(callback: BodyResponseCallback): void; + backup( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Backup + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Backup; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Backup; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:backup').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a Redis cluster based on the specified properties. The creation is executed asynchronously and callers may check the returned operation to track its progress. Once the operation is completed the Redis cluster will be fully functional. The completed longrunning.Operation will contain the new cluster object in the response field. The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.create({ + * // Required. The logical name of the Redis cluster in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location + * clusterId: 'placeholder-value', + * // Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + * parent: 'projects/my-project/locations/my-location', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "aclPolicy": "my_aclPolicy", + * // "aclPolicyInSync": false, + * // "allowFewerZonesDeployment": false, + * // "asyncClusterEndpointsDeletionEnabled": false, + * // "authorizationMode": "my_authorizationMode", + * // "automatedBackupConfig": {}, + * // "availableMaintenanceVersions": [], + * // "backupCollection": "my_backupCollection", + * // "clusterEndpoints": [], + * // "createTime": "my_createTime", + * // "crossClusterReplicationConfig": {}, + * // "deletionProtectionEnabled": false, + * // "discoveryEndpoints": [], + * // "effectiveMaintenanceVersion": "my_effectiveMaintenanceVersion", + * // "encryptionInfo": {}, + * // "gcsSource": {}, + * // "kmsKey": "my_kmsKey", + * // "labels": {}, + * // "maintenancePolicy": {}, + * // "maintenanceSchedule": {}, + * // "maintenanceVersion": "my_maintenanceVersion", + * // "managedBackupSource": {}, + * // "name": "my_name", + * // "nodeType": "my_nodeType", + * // "ondemandMaintenance": false, + * // "persistenceConfig": {}, + * // "preciseSizeGb": {}, + * // "pscConfigs": [], + * // "pscConnections": [], + * // "pscServiceAttachments": [], + * // "redisConfigs": {}, + * // "replicaCount": 0, + * // "rotateServerCertificate": false, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "serverCaMode": "my_serverCaMode", + * // "serverCaPool": "my_serverCaPool", + * // "shardCount": 0, + * // "simulateMaintenanceEvent": false, + * // "sizeGb": 0, + * // "state": "my_state", + * // "stateInfo": {}, + * // "transitEncryptionMode": "my_transitEncryptionMode", + * // "uid": "my_uid", + * // "zoneDistributionConfig": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Clusters$Create, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/clusters').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a specific Redis cluster. Cluster stops serving and data is deleted. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.delete({ + * // Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/clusters/my-cluster', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Clusters$Delete, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the details of a specific Redis cluster. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.get({ + * // Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/clusters/my-cluster', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "aclPolicy": "my_aclPolicy", + * // "aclPolicyInSync": false, + * // "allowFewerZonesDeployment": false, + * // "asyncClusterEndpointsDeletionEnabled": false, + * // "authorizationMode": "my_authorizationMode", + * // "automatedBackupConfig": {}, + * // "availableMaintenanceVersions": [], + * // "backupCollection": "my_backupCollection", + * // "clusterEndpoints": [], + * // "createTime": "my_createTime", + * // "crossClusterReplicationConfig": {}, + * // "deletionProtectionEnabled": false, + * // "discoveryEndpoints": [], + * // "effectiveMaintenanceVersion": "my_effectiveMaintenanceVersion", + * // "encryptionInfo": {}, + * // "gcsSource": {}, + * // "kmsKey": "my_kmsKey", + * // "labels": {}, + * // "maintenancePolicy": {}, + * // "maintenanceSchedule": {}, + * // "maintenanceVersion": "my_maintenanceVersion", + * // "managedBackupSource": {}, + * // "name": "my_name", + * // "nodeType": "my_nodeType", + * // "ondemandMaintenance": false, + * // "persistenceConfig": {}, + * // "preciseSizeGb": {}, + * // "pscConfigs": [], + * // "pscConnections": [], + * // "pscServiceAttachments": [], + * // "redisConfigs": {}, + * // "replicaCount": 0, + * // "rotateServerCertificate": false, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "serverCaMode": "my_serverCaMode", + * // "serverCaPool": "my_serverCaPool", + * // "shardCount": 0, + * // "simulateMaintenanceEvent": false, + * // "sizeGb": 0, + * // "state": "my_state", + * // "stateInfo": {}, + * // "transitEncryptionMode": "my_transitEncryptionMode", + * // "uid": "my_uid", + * // "zoneDistributionConfig": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Clusters$Get, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the details of certificate authority information for Redis cluster. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.getCertificateAuthority({ + * // Required. Redis cluster certificate authority resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}/certificateAuthority` where `location_id` refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/clusters/my-cluster/certificateAuthority', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "managedServerCa": {}, + * // "name": "my_name" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getCertificateAuthority( + params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + options: StreamMethodOptions + ): Promise>; + getCertificateAuthority( + params?: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + options?: MethodOptions + ): Promise>; + getCertificateAuthority( + params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getCertificateAuthority( + params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getCertificateAuthority( + params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + callback: BodyResponseCallback + ): void; + getCertificateAuthority( + callback: BodyResponseCallback + ): void; + getCertificateAuthority( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Getcertificateauthority + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Getcertificateauthority; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Getcertificateauthority; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists all Redis clusters owned by a project in either the specified location (region) or all locations. The location should have the following format: * `projects/{project_id\}/locations/{location_id\}` If `location_id` is specified as `-` (wildcard), then all regions available to the project are queried, and the results are aggregated. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.list({ + * // The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + * pageSize: 'placeholder-value', + * // The `next_page_token` value returned from a previous `ListClusters` request, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clusters": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Clusters$List, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/clusters').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the metadata and configuration of a specific Redis cluster. Completed longrunning.Operation will contain the new cluster object in the response field. The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.patch({ + * // Required. Identifier. Unique name of the resource in this scope including project and location using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` + * name: 'projects/my-project/locations/my-location/clusters/my-cluster', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', + * // Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from Cluster: * `size_gb` * `replica_count` * `cluster_endpoints` + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "aclPolicy": "my_aclPolicy", + * // "aclPolicyInSync": false, + * // "allowFewerZonesDeployment": false, + * // "asyncClusterEndpointsDeletionEnabled": false, + * // "authorizationMode": "my_authorizationMode", + * // "automatedBackupConfig": {}, + * // "availableMaintenanceVersions": [], + * // "backupCollection": "my_backupCollection", + * // "clusterEndpoints": [], + * // "createTime": "my_createTime", + * // "crossClusterReplicationConfig": {}, + * // "deletionProtectionEnabled": false, + * // "discoveryEndpoints": [], + * // "effectiveMaintenanceVersion": "my_effectiveMaintenanceVersion", + * // "encryptionInfo": {}, + * // "gcsSource": {}, + * // "kmsKey": "my_kmsKey", + * // "labels": {}, + * // "maintenancePolicy": {}, + * // "maintenanceSchedule": {}, + * // "maintenanceVersion": "my_maintenanceVersion", + * // "managedBackupSource": {}, + * // "name": "my_name", + * // "nodeType": "my_nodeType", + * // "ondemandMaintenance": false, + * // "persistenceConfig": {}, + * // "preciseSizeGb": {}, + * // "pscConfigs": [], + * // "pscConnections": [], + * // "pscServiceAttachments": [], + * // "redisConfigs": {}, + * // "replicaCount": 0, + * // "rotateServerCertificate": false, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "serverCaMode": "my_serverCaMode", + * // "serverCaPool": "my_serverCaPool", + * // "shardCount": 0, + * // "simulateMaintenanceEvent": false, + * // "sizeGb": 0, + * // "state": "my_state", + * // "stateInfo": {}, + * // "transitEncryptionMode": "my_transitEncryptionMode", + * // "uid": "my_uid", + * // "zoneDistributionConfig": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Clusters$Patch, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Reschedules upcoming maintenance event. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await redis.projects.locations.clusters.rescheduleClusterMaintenance({ + * // Required. Redis Cluster instance resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/clusters/my-cluster', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "rescheduleType": "my_rescheduleType", + * // "scheduleTime": "my_scheduleTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + rescheduleClusterMaintenance( + params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, + options: StreamMethodOptions + ): Promise>; + rescheduleClusterMaintenance( + params?: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, + options?: MethodOptions + ): Promise>; + rescheduleClusterMaintenance( + params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + rescheduleClusterMaintenance( + params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + rescheduleClusterMaintenance( + params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, + callback: BodyResponseCallback + ): void; + rescheduleClusterMaintenance( + callback: BodyResponseCallback + ): void; + rescheduleClusterMaintenance( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:rescheduleClusterMaintenance').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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$Addtokenauthuser extends StandardParameters { + /** + * Required. The cluster resource that this token auth user will be added for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\} + */ + cluster?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AddTokenAuthUserRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Backup extends StandardParameters { + /** + * Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BackupClusterRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Create extends StandardParameters { + /** + * Required. The logical name of the Redis cluster in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location + */ + clusterId?: string; + /** + * Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + */ + parent?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Delete extends StandardParameters { + /** + * Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + */ + name?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Get extends StandardParameters { + /** + * Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Getcertificateauthority extends StandardParameters { + /** + * Required. Redis cluster certificate authority resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}/certificateAuthority` where `location_id` refers to a Google Cloud region. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$List extends StandardParameters { + /** + * The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + */ + pageSize?: number; + /** + * The `next_page_token` value returned from a previous `ListClusters` request, if any. + */ + pageToken?: string; + /** + * Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Patch extends StandardParameters { + /** + * Required. Identifier. Unique name of the resource in this scope including project and location using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` + */ + name?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; + /** + * Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from Cluster: * `size_gb` * `replica_count` * `cluster_endpoints` + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance extends StandardParameters { + /** + * Required. Redis Cluster instance resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RescheduleClusterMaintenanceRequest; + } + + export class Resource$Projects$Locations$Clusters$Tokenauthusers { + context: APIRequestContext; + authTokens: Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens; + constructor(context: APIRequestContext) { + this.context = context; + this.authTokens = + new Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens( + this.context + ); + } + + /** + * Adds a auth token for a user of a token based auth enabled cluster. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await redis.projects.locations.clusters.tokenAuthUsers.addAuthToken({ + * // Required. The name of the token auth user resource that this auth token will be added for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + * tokenAuthUser: + * 'projects/my-project/locations/my-location/clusters/my-cluster/tokenAuthUsers/my-tokenAuthUser', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "authToken": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + addAuthToken( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Clusters$Create, + addAuthToken( + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Projects$Locations$Clusters$Create, + addAuthToken( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Clusters$Create, + addAuthToken( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Clusters$Create, + addAuthToken( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken, callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + addAuthToken(callback: BodyResponseCallback): void; + addAuthToken( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Create + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -4033,12 +6484,13 @@ export namespace redis_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Create; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Clusters$Create; + params = + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken; options = {}; } @@ -4051,7 +6503,7 @@ export namespace redis_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/clusters').replace( + url: (rootUrl + '/v1/{+tokenAuthUser}:addAuthToken').replace( /([^:]\/)\/+/g, '$1' ), @@ -4061,8 +6513,8 @@ export namespace redis_v1 { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['tokenAuthUser'], + pathParams: ['tokenAuthUser'], context: this.context, }; if (callback) { @@ -4076,7 +6528,7 @@ export namespace redis_v1 { } /** - * Deletes a specific Redis cluster. Cluster stops serving and data is deleted. + * Deletes a token auth user for a token based auth enabled cluster. * @example * ```js * // Before running the sample: @@ -4097,7 +6549,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4105,10 +6560,12 @@ export namespace redis_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.delete({ - * // Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. - * name: 'projects/my-project/locations/my-location/clusters/my-cluster', - * // Optional. Idempotent request UUID. + * const res = await redis.projects.locations.clusters.tokenAuthUsers.delete({ + * // Optional. If set to true, any child auth tokens of this user will also be deleted. Otherwise, the request will only work if the user has no auth tokens. + * force: 'placeholder-value', + * // Required. The name of the token auth user to delete. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + * name: 'projects/my-project/locations/my-location/clusters/my-cluster/tokenAuthUsers/my-tokenAuthUser', + * // 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: 'placeholder-value', * }); * console.log(res.data); @@ -4136,31 +6593,31 @@ export namespace redis_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Clusters$Delete, + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Clusters$Delete, + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Clusters$Delete, + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Clusters$Delete, + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Clusters$Delete, + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Delete + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -4176,12 +6633,13 @@ export namespace redis_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Delete; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Clusters$Delete; + params = + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete; options = {}; } @@ -4216,7 +6674,7 @@ export namespace redis_v1 { } /** - * Gets the details of a specific Redis cluster. + * Gets a specific token auth user for a basic auth enabled cluster. * @example * ```js * // Before running the sample: @@ -4237,7 +6695,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4245,57 +6706,16 @@ export namespace redis_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.get({ - * // Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. - * name: 'projects/my-project/locations/my-location/clusters/my-cluster', + * const res = await redis.projects.locations.clusters.tokenAuthUsers.get({ + * // Required. The name of token auth user for a token based auth enabled cluster. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + * name: 'projects/my-project/locations/my-location/clusters/my-cluster/tokenAuthUsers/my-tokenAuthUser', * }); * console.log(res.data); * * // Example response * // { - * // "allowFewerZonesDeployment": false, - * // "asyncClusterEndpointsDeletionEnabled": false, - * // "authorizationMode": "my_authorizationMode", - * // "automatedBackupConfig": {}, - * // "availableMaintenanceVersions": [], - * // "backupCollection": "my_backupCollection", - * // "clusterEndpoints": [], - * // "createTime": "my_createTime", - * // "crossClusterReplicationConfig": {}, - * // "deletionProtectionEnabled": false, - * // "discoveryEndpoints": [], - * // "effectiveMaintenanceVersion": "my_effectiveMaintenanceVersion", - * // "encryptionInfo": {}, - * // "gcsSource": {}, - * // "kmsKey": "my_kmsKey", - * // "labels": {}, - * // "maintenancePolicy": {}, - * // "maintenanceSchedule": {}, - * // "maintenanceVersion": "my_maintenanceVersion", - * // "managedBackupSource": {}, * // "name": "my_name", - * // "nodeType": "my_nodeType", - * // "ondemandMaintenance": false, - * // "persistenceConfig": {}, - * // "preciseSizeGb": {}, - * // "pscConfigs": [], - * // "pscConnections": [], - * // "pscServiceAttachments": [], - * // "redisConfigs": {}, - * // "replicaCount": 0, - * // "rotateServerCertificate": false, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "serverCaMode": "my_serverCaMode", - * // "serverCaPool": "my_serverCaPool", - * // "shardCount": 0, - * // "simulateMaintenanceEvent": false, - * // "sizeGb": 0, - * // "state": "my_state", - * // "stateInfo": {}, - * // "transitEncryptionMode": "my_transitEncryptionMode", - * // "uid": "my_uid", - * // "zoneDistributionConfig": {} + * // "state": "my_state" * // } * } * @@ -4312,52 +6732,53 @@ export namespace redis_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Clusters$Get, + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Clusters$Get, + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Projects$Locations$Clusters$Get, + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Clusters$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Clusters$Get, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Get; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Clusters$Get; + params = + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get; options = {}; } @@ -4382,17 +6803,17 @@ export namespace redis_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the details of certificate authority information for Redis cluster. + * Lists all the token auth users for a token based auth enabled cluster. * @example * ```js * // Before running the sample: @@ -4413,7 +6834,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4421,16 +6845,25 @@ export namespace redis_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.getCertificateAuthority({ - * // Required. Redis cluster certificate authority resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}/certificateAuthority` where `location_id` refers to a Google Cloud region. - * name: 'projects/my-project/locations/my-location/clusters/my-cluster/certificateAuthority', + * const res = await redis.projects.locations.clusters.tokenAuthUsers.list({ + * // Optional. Expression for filtering results. + * filter: 'placeholder-value', + * // Optional. Sort results by a defined order. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's The maximum value is 1000; values above 1000 will be coerced to 1000. `next_page_token` to determine if there are more clusters left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The `next_page_token` value returned from a previous [ListTokenAuthUsers] request, if any. + * pageToken: 'placeholder-value', + * // Required. The parent resource that this token based auth user will be listed for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\} + * parent: 'projects/my-project/locations/my-location/clusters/my-cluster', * }); * console.log(res.data); * * // Example response * // { - * // "managedServerCa": {}, - * // "name": "my_name" + * // "nextPageToken": "my_nextPageToken", + * // "tokenAuthUsers": [], + * // "unreachable": [] * // } * } * @@ -4446,58 +6879,58 @@ export namespace redis_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getCertificateAuthority( - params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List, options: StreamMethodOptions ): Promise>; - getCertificateAuthority( - params?: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + list( + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List, options?: MethodOptions - ): Promise>; - getCertificateAuthority( - params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getCertificateAuthority( - params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getCertificateAuthority( - params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List, + callback: BodyResponseCallback ): void; - getCertificateAuthority( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - getCertificateAuthority( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Getcertificateauthority - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Getcertificateauthority; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Clusters$Getcertificateauthority; + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List; options = {}; } @@ -4510,29 +6943,93 @@ export namespace redis_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+parent}/tokenAuthUsers').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken extends StandardParameters { /** - * Lists all Redis clusters owned by a project in either the specified location (region) or all locations. The location should have the following format: * `projects/{project_id\}/locations/{location_id\}` If `location_id` is specified as `-` (wildcard), then all regions available to the project are queried, and the results are aggregated. + * Required. The name of the token auth user resource that this auth token will be added for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + */ + tokenAuthUser?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AddAuthTokenRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete extends StandardParameters { + /** + * Optional. If set to true, any child auth tokens of this user will also be deleted. Otherwise, the request will only work if the user has no auth tokens. + */ + force?: boolean; + /** + * Required. The name of the token auth user to delete. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_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 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$Tokenauthusers$Get extends StandardParameters { + /** + * Required. The name of token auth user for a token based auth enabled cluster. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List extends StandardParameters { + /** + * Optional. Expression for filtering results. + */ + filter?: string; + /** + * Optional. Sort results by a defined order. + */ + orderBy?: string; + /** + * Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's The maximum value is 1000; values above 1000 will be coerced to 1000. `next_page_token` to determine if there are more clusters left to be queried. + */ + pageSize?: number; + /** + * Optional. The `next_page_token` value returned from a previous [ListTokenAuthUsers] request, if any. + */ + pageToken?: string; + /** + * Required. The parent resource that this token based auth user will be listed for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\} + */ + parent?: string; + } + + export class Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Removes a auth token for a user of a token based auth enabled instance. * @example * ```js * // Before running the sample: @@ -4553,7 +7050,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4561,21 +7061,20 @@ export namespace redis_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.list({ - * // The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. - * pageSize: 'placeholder-value', - * // The `next_page_token` value returned from a previous ListClusters request, if any. - * pageToken: 'placeholder-value', - * // Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = + * await redis.projects.locations.clusters.tokenAuthUsers.authTokens.delete({ + * // Required. The name of the token auth user resource that this auth token will be deleted from. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\}/authTokens/{auth_token\} + * name: 'projects/my-project/locations/my-location/clusters/my-cluster/tokenAuthUsers/my-tokenAuthUser/authTokens/my-authToken', + * }); * console.log(res.data); * * // Example response * // { - * // "clusters": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -4591,55 +7090,54 @@ export namespace redis_v1 { * @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, + delete( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Clusters$List, + delete( + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Clusters$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Clusters$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Clusters$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$List; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Clusters$List; + params = + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete; options = {}; } @@ -4652,32 +7150,29 @@ export namespace redis_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/clusters').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the metadata and configuration of a specific Redis cluster. Completed longrunning.Operation will contain the new cluster object in the response field. The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation. + * Gets a specific auth token for a specific token auth user. * @example * ```js * // Before running the sample: @@ -4698,7 +7193,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4706,73 +7204,19 @@ export namespace redis_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.patch({ - * // Required. Identifier. Unique name of the resource in this scope including project and location using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` - * name: 'projects/my-project/locations/my-location/clusters/my-cluster', - * // Optional. Idempotent request UUID. - * requestId: 'placeholder-value', - * // Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from Cluster: * `size_gb` * `replica_count` * `cluster_endpoints` - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allowFewerZonesDeployment": false, - * // "asyncClusterEndpointsDeletionEnabled": false, - * // "authorizationMode": "my_authorizationMode", - * // "automatedBackupConfig": {}, - * // "availableMaintenanceVersions": [], - * // "backupCollection": "my_backupCollection", - * // "clusterEndpoints": [], - * // "createTime": "my_createTime", - * // "crossClusterReplicationConfig": {}, - * // "deletionProtectionEnabled": false, - * // "discoveryEndpoints": [], - * // "effectiveMaintenanceVersion": "my_effectiveMaintenanceVersion", - * // "encryptionInfo": {}, - * // "gcsSource": {}, - * // "kmsKey": "my_kmsKey", - * // "labels": {}, - * // "maintenancePolicy": {}, - * // "maintenanceSchedule": {}, - * // "maintenanceVersion": "my_maintenanceVersion", - * // "managedBackupSource": {}, - * // "name": "my_name", - * // "nodeType": "my_nodeType", - * // "ondemandMaintenance": false, - * // "persistenceConfig": {}, - * // "preciseSizeGb": {}, - * // "pscConfigs": [], - * // "pscConnections": [], - * // "pscServiceAttachments": [], - * // "redisConfigs": {}, - * // "replicaCount": 0, - * // "rotateServerCertificate": false, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "serverCaMode": "my_serverCaMode", - * // "serverCaPool": "my_serverCaPool", - * // "shardCount": 0, - * // "simulateMaintenanceEvent": false, - * // "sizeGb": 0, - * // "state": "my_state", - * // "stateInfo": {}, - * // "transitEncryptionMode": "my_transitEncryptionMode", - * // "uid": "my_uid", - * // "zoneDistributionConfig": {} - * // } - * }, - * }); + * const res = + * await redis.projects.locations.clusters.tokenAuthUsers.authTokens.get({ + * // Required. The name of auth token for a token based auth enabled cluster. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\}/authTokens/{auth_token\} + * name: 'projects/my-project/locations/my-location/clusters/my-cluster/tokenAuthUsers/my-tokenAuthUser/authTokens/my-authToken', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "createTime": "my_createTime", * // "name": "my_name", - * // "response": {} + * // "state": "my_state", + * // "token": "my_token" * // } * } * @@ -4788,53 +7232,54 @@ export namespace redis_v1 { * @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, + get( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Clusters$Patch, + get( + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Clusters$Patch, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Clusters$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Clusters$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Patch; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Clusters$Patch; + params = + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get; options = {}; } @@ -4848,7 +7293,7 @@ export namespace redis_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -4859,17 +7304,17 @@ export namespace redis_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Reschedules upcoming maintenance event. + * Lists all the auth tokens for a specific token auth user. * @example * ```js * // Before running the sample: @@ -4890,7 +7335,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4899,28 +7347,26 @@ export namespace redis_v1 { * * // Do the magic * const res = - * await redis.projects.locations.clusters.rescheduleClusterMaintenance({ - * // Required. Redis Cluster instance resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. - * name: 'projects/my-project/locations/my-location/clusters/my-cluster', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "rescheduleType": "my_rescheduleType", - * // "scheduleTime": "my_scheduleTime" - * // } - * }, + * await redis.projects.locations.clusters.tokenAuthUsers.authTokens.list({ + * // Optional. Expression for filtering results. + * filter: 'placeholder-value', + * // Optional. Sort results by a defined order. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. The maximum value is 1000; values above 1000 will be coerced to 1000. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The `next_page_token` value returned from a previous [ListTokenAuthUsers] request, if any. + * pageToken: 'placeholder-value', + * // Required. The parent resource that this auth token will be listed for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + * parent: + * 'projects/my-project/locations/my-location/clusters/my-cluster/tokenAuthUsers/my-tokenAuthUser', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "authTokens": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -4936,56 +7382,56 @@ export namespace redis_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - rescheduleClusterMaintenance( - params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List, options: StreamMethodOptions ): Promise>; - rescheduleClusterMaintenance( - params?: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, + list( + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List, options?: MethodOptions - ): Promise>; - rescheduleClusterMaintenance( - params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - rescheduleClusterMaintenance( - params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - rescheduleClusterMaintenance( - params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - rescheduleClusterMaintenance( - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List, + callback: BodyResponseCallback ): void; - rescheduleClusterMaintenance( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance; + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List; options = {}; } @@ -4998,127 +7444,65 @@ export namespace redis_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:rescheduleClusterMaintenance').replace( + url: (rootUrl + '/v1/{+parent}/authTokens').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Projects$Locations$Clusters$Backup extends StandardParameters { + export interface Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete extends StandardParameters { /** - * Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * Required. The name of the token auth user resource that this auth token will be deleted from. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\}/authTokens/{auth_token\} */ name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$BackupClusterRequest; - } - export interface Params$Resource$Projects$Locations$Clusters$Create extends StandardParameters { - /** - * Required. The logical name of the Redis cluster in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location - */ - clusterId?: string; - /** - * Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. - */ - parent?: string; - /** - * Optional. Idempotent request UUID. - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Cluster; } - export interface Params$Resource$Projects$Locations$Clusters$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get extends StandardParameters { /** - * Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * Required. The name of auth token for a token based auth enabled cluster. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\}/authTokens/{auth_token\} */ name?: string; - /** - * Optional. Idempotent request UUID. - */ - requestId?: string; } - export interface Params$Resource$Projects$Locations$Clusters$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List extends StandardParameters { /** - * Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * Optional. Expression for filtering results. */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Clusters$Getcertificateauthority extends StandardParameters { + filter?: string; /** - * Required. Redis cluster certificate authority resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}/certificateAuthority` where `location_id` refers to a Google Cloud region. + * Optional. Sort results by a defined order. */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Clusters$List extends StandardParameters { + orderBy?: string; /** - * The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + * Optional. The maximum number of items to return. The maximum value is 1000; values above 1000 will be coerced to 1000. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. */ pageSize?: number; /** - * The `next_page_token` value returned from a previous ListClusters request, if any. + * Optional. The `next_page_token` value returned from a previous [ListTokenAuthUsers] request, if any. */ pageToken?: string; /** - * Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + * Required. The parent resource that this auth token will be listed for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} */ parent?: string; } - export interface Params$Resource$Projects$Locations$Clusters$Patch extends StandardParameters { - /** - * Required. Identifier. Unique name of the resource in this scope including project and location using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` - */ - name?: string; - /** - * Optional. Idempotent request UUID. - */ - requestId?: string; - /** - * Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from Cluster: * `size_gb` * `replica_count` * `cluster_endpoints` - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Cluster; - } - export interface Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance extends StandardParameters { - /** - * Required. Redis Cluster instance resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RescheduleClusterMaintenanceRequest; - } export class Resource$Projects$Locations$Instances { context: APIRequestContext; @@ -5148,7 +7532,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5336,7 +7723,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5474,7 +7864,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5620,7 +8013,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5769,7 +8165,11 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-only', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5940,7 +8340,11 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-only', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6080,7 +8484,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6226,7 +8633,11 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-only', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6371,7 +8782,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6556,7 +8970,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6709,7 +9126,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6983,7 +9403,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7115,7 +9538,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7247,7 +9673,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7385,7 +9814,10 @@ export namespace redis_v1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls diff --git a/src/apis/redis/v1beta1.ts b/src/apis/redis/v1beta1.ts index 4f5d19cc5e5..184ff301d77 100644 --- a/src/apis/redis/v1beta1.ts +++ b/src/apis/redis/v1beta1.ts @@ -124,6 +124,62 @@ export namespace redis_v1beta1 { } } + /** + * The ACL policy resource. + */ + export interface Schema$AclPolicy { + /** + * Output only. Etag for the ACL policy. + */ + etag?: string | null; + /** + * Identifier. Full resource path of the ACL policy. + */ + name?: string | null; + /** + * Required. The ACL rules within the ACL policy. + */ + rules?: Schema$AclRule[]; + /** + * Output only. The state of the ACL policy. + */ + state?: string | null; + /** + * Output only. The version of the ACL policy. Used in drift resolution. + */ + version?: string | null; + } + /** + * A single ACL rule which defines the policy for a user. + */ + export interface Schema$AclRule { + /** + * Required. The rule to be applied to the username. Ex: "on \>password123 ~* +@all" The format of the rule is defined by Redis OSS: https://redis.io/docs/latest/operate/oss_and_stack/management/security/acl/ + */ + rule?: string | null; + /** + * Required. Specifies the IAM user or service account to be added to the ACL policy. This username will be directly set on the Redis OSS. + */ + username?: string | null; + } + /** + * Request message for AddAuthToken. + */ + export interface Schema$AddAuthTokenRequest { + /** + * Required. The auth token to add. + */ + authToken?: Schema$AuthToken; + } + /** + * Request message for AddTokenAuthUser. + */ + export interface Schema$AddTokenAuthUserRequest { + /** + * Required. The id of the token auth user to add. + */ + tokenAuthUser?: string | null; + } /** * Configuration of the AOF based persistence. */ @@ -133,6 +189,27 @@ export namespace redis_v1beta1 { */ appendFsync?: string | null; } + /** + * Auth token for the cluster. + */ + export interface Schema$AuthToken { + /** + * Output only. Create time of the auth token. + */ + createTime?: string | null; + /** + * Identifier. Name of the auth token. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\}/authTokens/{auth_token\} + */ + name?: string | null; + /** + * Output only. State of the auth token. + */ + state?: string | null; + /** + * Output only. The service generated authentication token used to connect to the Redis cluster. + */ + token?: string | null; + } /** * The automated backup config for a cluster. */ @@ -235,7 +312,7 @@ export namespace redis_v1beta1 { uid?: string | null; } /** - * Request for [BackupCluster]. + * Request for `BackupCluster`. */ export interface Schema$BackupClusterRequest { /** @@ -401,6 +478,14 @@ export namespace redis_v1beta1 { * A cluster instance. */ export interface Schema$Cluster { + /** + * Optional. The ACL policy to be applied to the cluster. + */ + aclPolicy?: string | null; + /** + * Optional. Output only. Indicates whether the ACL rules applied to the cluster are in sync with the latest ACL policy rules. This field is only applicable if the ACL policy is set for the cluster. + */ + aclPolicyInSync?: boolean | null; /** * Optional. Immutable. Deprecated, do not use. */ @@ -849,7 +934,7 @@ export namespace redis_v1beta1 { uniqueId?: string | null; } /** - * Common model for database resource instance metadata. Next ID: 31 + * Common model for database resource instance metadata. Next ID: 32 */ export interface Schema$DatabaseResourceMetadata { /** @@ -920,6 +1005,10 @@ export namespace redis_v1beta1 { * Optional. Maintenance info for the resource. */ maintenanceInfo?: Schema$ResourceMaintenanceInfo; + /** + * Optional. The modes of the database resource. + */ + modes?: string[] | null; /** * Identifier for this resource's immediate parent/primary resource if the current resource is a replica or derived form of another Database resource. Else it would be NULL. REQUIRED if the immediate parent exists when first time resource is getting ingested, otherwise optional. */ @@ -1003,9 +1092,13 @@ export namespace redis_v1beta1 { signalType?: string | null; } /** - * Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 7 + * Database resource signal data. This is used to send signals to Condor which are based on the DB/Instance/Fleet level configurations. These will be used to send signals for all inventory types. Next ID: 10 */ export interface Schema$DatabaseResourceSignalData { + /** + * Deprecated: Use signal_metadata_list instead. + */ + backupRun?: Schema$BackupRun; /** * Required. Full Resource name of the source resource. */ @@ -1014,14 +1107,22 @@ export namespace redis_v1beta1 { * Required. Last time signal was refreshed */ lastRefreshTime?: string | null; + /** + * Required. Resource location. + */ + location?: string | null; /** * Database resource id. */ resourceId?: Schema$DatabaseResourceId; /** - * Signal data for boolean signals. + * Deprecated: Use signal_metadata_list instead. */ signalBoolValue?: boolean | null; + /** + * This will support array of OneOf signal metadata information for a given signal type. + */ + signalMetadataList?: Schema$SignalMetadata[]; /** * Required. Output only. Signal state of the signal */ @@ -1104,7 +1205,7 @@ export namespace redis_v1beta1 { type?: string | null; } /** - * Request for [ExportBackup]. + * Request for `ExportBackup`. */ export interface Schema$ExportBackupRequest { /** @@ -1342,7 +1443,7 @@ export namespace redis_v1beta1 { */ readReplicasMode?: string | null; /** - * Optional. Redis configuration parameters, according to http://redis.io/topics/config. Currently, the only supported parameters are: Redis version 3.2 and newer: * maxmemory-policy * notify-keyspace-events Redis version 4.0 and newer: * activedefrag * lfu-decay-time * lfu-log-factor * maxmemory-gb Redis version 5.0 and newer: * stream-node-max-bytes * stream-node-max-entries + * Optional. Redis configuration parameters, according to [Redis configuration](https://redis.io/docs/latest/operate/oss_and_stack/management/config/). Currently, the only supported parameters are: Redis version 3.2 and newer: * maxmemory-policy * notify-keyspace-events Redis version 4.0 and newer: * activedefrag * lfu-decay-time * lfu-log-factor * maxmemory-gb Redis version 5.0 and newer: * stream-node-max-bytes * stream-node-max-entries */ redisConfigs?: {[key: string]: string} | null; /** @@ -1431,7 +1532,41 @@ export namespace redis_v1beta1 { resourceName?: string | null; } /** - * Response for [ListBackupCollections]. + * Response for `ListAclPolicies`. + */ + export interface Schema$ListAclPoliciesResponse { + /** + * A list of ACL policies in the project in the specified location, or across all locations. If the `location_id` in the parent field of the request is "-", all regions available to the project are queried, and the results aggregated. + */ + aclPolicies?: Schema$AclPolicy[]; + /** + * Token to retrieve the next page of results, or empty if there are no more results in the list. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Response message for ListAuthTokens. + */ + export interface Schema$ListAuthTokensResponse { + /** + * A list of auth tokens in the project. + */ + authTokens?: Schema$AuthToken[]; + /** + * Token to retrieve the next page of results, or empty if there are no more results in the list. + */ + nextPageToken?: string | null; + /** + * Unordered list. Auth tokens that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Response for `ListBackupCollections`. */ export interface Schema$ListBackupCollectionsResponse { /** @@ -1448,7 +1583,7 @@ export namespace redis_v1beta1 { unreachable?: string[] | null; } /** - * Response for [ListBackups]. + * Response for `ListBackups`. */ export interface Schema$ListBackupsResponse { /** @@ -1465,7 +1600,7 @@ export namespace redis_v1beta1 { unreachable?: string[] | null; } /** - * Response for ListClusters. + * Response for `ListClusters`. */ export interface Schema$ListClustersResponse { /** @@ -1528,6 +1663,23 @@ export namespace redis_v1beta1 { */ unreachable?: string[] | null; } + /** + * Response message for ListTokenAuthUsers. + */ + export interface Schema$ListTokenAuthUsersResponse { + /** + * Token to retrieve the next page of results, or empty if there are no more results in the list. + */ + nextPageToken?: string | null; + /** + * A list of token auth users in the project. + */ + tokenAuthUsers?: Schema$TokenAuthUser[]; + /** + * Unordered list. Token auth users that could not be reached. + */ + unreachable?: string[] | null; + } /** * A resource that represents a Google Cloud location. */ @@ -2099,6 +2251,19 @@ export namespace redis_v1beta1 { */ name?: string | null; } + /** + * SignalMetadata contains one of the signal metadata proto messages associated with a SignalType. This proto will be mapped to SignalMetadata message in storage.proto. Next ID: 3 + */ + export interface Schema$SignalMetadata { + /** + * Signal data for backup runs. + */ + backupRun?: Schema$BackupRun; + /** + * Signal data for boolean signals. + */ + signalBoolValue?: boolean | null; + } /** * Represents additional information about the state of the cluster. */ @@ -2180,6 +2345,19 @@ export namespace redis_v1beta1 { */ sha1Fingerprint?: string | null; } + /** + * Represents a token based auth user for the cluster. + */ + export interface Schema$TokenAuthUser { + /** + * Identifier. The resource name of the token based auth user. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + */ + name?: string | null; + /** + * Output only. The state of the token based auth user. + */ + state?: string | null; + } /** * TypedValue represents the value of a metric type. It can either be a double, an int64, a string or a bool. */ @@ -2288,12 +2466,16 @@ export namespace redis_v1beta1 { export class Resource$Projects$Locations { context: APIRequestContext; + aclPolicies: Resource$Projects$Locations$Aclpolicies; backupCollections: Resource$Projects$Locations$Backupcollections; clusters: Resource$Projects$Locations$Clusters; instances: Resource$Projects$Locations$Instances; operations: Resource$Projects$Locations$Operations; constructor(context: APIRequestContext) { this.context = context; + this.aclPolicies = new Resource$Projects$Locations$Aclpolicies( + this.context + ); this.backupCollections = new Resource$Projects$Locations$Backupcollections(this.context); this.clusters = new Resource$Projects$Locations$Clusters(this.context); @@ -2325,7 +2507,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -2463,7 +2648,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -2589,7 +2777,7 @@ export namespace redis_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2610,7 +2798,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -2619,7 +2810,7 @@ export namespace redis_v1beta1 { * * // Do the magic * const res = await redis.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -2751,7 +2942,7 @@ export namespace redis_v1beta1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -2772,18 +2963,14 @@ export namespace redis_v1beta1 { pageToken?: string; } - export class Resource$Projects$Locations$Backupcollections { + export class Resource$Projects$Locations$Aclpolicies { context: APIRequestContext; - backups: Resource$Projects$Locations$Backupcollections$Backups; constructor(context: APIRequestContext) { this.context = context; - this.backups = new Resource$Projects$Locations$Backupcollections$Backups( - this.context - ); } /** - * Get a backup collection. + * Creates an ACL Policy. The creation is executed synchronously and the policy is available for use immediately after the RPC returns. * @example * ```js * // Before running the sample: @@ -2804,7 +2991,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -2812,23 +3002,35 @@ export namespace redis_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.backupCollections.get({ - * // Required. Redis backupCollection resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` where `location_id` refers to a Google Cloud region. - * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection', + * const res = await redis.projects.locations.aclPolicies.create({ + * // Required. The logical name of the ACL Policy in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location + * aclPolicyId: 'placeholder-value', + * // Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + * parent: 'projects/my-project/locations/my-location', + * // Optional. Idempotent request UUID. . + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "etag": "my_etag", + * // "name": "my_name", + * // "rules": [], + * // "state": "my_state", + * // "version": "my_version" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "cluster": "my_cluster", - * // "clusterUid": "my_clusterUid", - * // "createTime": "my_createTime", - * // "kmsKey": "my_kmsKey", - * // "lastBackupTime": "my_lastBackupTime", + * // "etag": "my_etag", * // "name": "my_name", - * // "totalBackupCount": "my_totalBackupCount", - * // "totalBackupSizeBytes": "my_totalBackupSizeBytes", - * // "uid": "my_uid" + * // "rules": [], + * // "state": "my_state", + * // "version": "my_version" * // } * } * @@ -2844,53 +3046,53 @@ export namespace redis_v1beta1 { * @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$Backupcollections$Get, + create( + params: Params$Resource$Projects$Locations$Aclpolicies$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Backupcollections$Get, + create( + params?: Params$Resource$Projects$Locations$Aclpolicies$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Backupcollections$Get, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Aclpolicies$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Backupcollections$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Aclpolicies$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Backupcollections$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Aclpolicies$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backupcollections$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Aclpolicies$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backupcollections$Get; + {}) as Params$Resource$Projects$Locations$Aclpolicies$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Backupcollections$Get; + params = {} as Params$Resource$Projects$Locations$Aclpolicies$Create; options = {}; } @@ -2903,29 +3105,32 @@ export namespace redis_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1beta1/{+parent}/aclPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists all backup collections owned by a consumer project in either the specified location (region) or all locations. If `location_id` is specified as `-` (wildcard), then all regions available to the project are queried, and the results are aggregated. + * Deletes a specific Acl Policy. This action will delete the Acl Policy and all the rules associated with it. An ACL policy cannot be deleted if it is attached to a cluster. * @example * ```js * // Before running the sample: @@ -2946,7 +3151,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -2954,21 +3162,23 @@ export namespace redis_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.backupCollections.list({ - * // Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. - * pageSize: 'placeholder-value', - * // Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. - * pageToken: 'placeholder-value', - * // Required. The resource name of the backupCollection location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. - * parent: 'projects/my-project/locations/my-location', + * const res = await redis.projects.locations.aclPolicies.delete({ + * // Optional. Etag of the ACL policy. If this is different from the server's etag, the request will fail with an ABORTED error. + * etag: 'placeholder-value', + * // Required. Redis ACL Policy resource name using the form: `projects/{project_id\}/locations/{location_id\}/aclPolicies/{acl_policy_id\}` where `location_id` refers to a GCP region. + * name: 'projects/my-project/locations/my-location/aclPolicies/my-aclPolicie', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "backupCollections": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -2984,58 +3194,53 @@ export namespace redis_v1beta1 { * @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$Backupcollections$List, + delete( + params: Params$Resource$Projects$Locations$Aclpolicies$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Backupcollections$List, + delete( + params?: Params$Resource$Projects$Locations$Aclpolicies$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Backupcollections$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Aclpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Backupcollections$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Backupcollections$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Aclpolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Aclpolicies$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backupcollections$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Aclpolicies$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backupcollections$List; + {}) as Params$Resource$Projects$Locations$Aclpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Backupcollections$List; + params = {} as Params$Resource$Projects$Locations$Aclpolicies$Delete; options = {}; } @@ -3048,62 +3253,29 @@ export namespace redis_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/backupCollections').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Backupcollections$Get extends StandardParameters { - /** - * Required. Redis backupCollection resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` where `location_id` refers to a Google Cloud region. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Backupcollections$List extends StandardParameters { - /** - * Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. - */ - pageSize?: number; - /** - * Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. - */ - pageToken?: string; - /** - * Required. The resource name of the backupCollection location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. - */ - parent?: string; - } - - export class Resource$Projects$Locations$Backupcollections$Backups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes a specific backup. + * Gets the details of a specific Redis Cluster ACL Policy. * @example * ```js * // Before running the sample: @@ -3124,7 +3296,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3132,21 +3307,19 @@ export namespace redis_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.backupCollections.backups.delete({ - * // Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` - * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection/backups/my-backup', - * // Optional. Idempotent request UUID. - * requestId: 'placeholder-value', + * const res = await redis.projects.locations.aclPolicies.get({ + * // Required. Redis ACL Policy resource name using the form: `projects/{project_id\}/locations/{location_id\}/aclPolicies/{acl_policy_id\}` where `location_id` refers to a GCP region. + * name: 'projects/my-project/locations/my-location/aclPolicies/my-aclPolicie', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "etag": "my_etag", * // "name": "my_name", - * // "response": {} + * // "rules": [], + * // "state": "my_state", + * // "version": "my_version" * // } * } * @@ -3162,54 +3335,53 @@ export namespace redis_v1beta1 { * @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$Backupcollections$Backups$Delete, + get( + params: Params$Resource$Projects$Locations$Aclpolicies$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + get( + params?: Params$Resource$Projects$Locations$Aclpolicies$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Aclpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Aclpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Aclpolicies$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backupcollections$Backups$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Aclpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$Delete; + {}) as Params$Resource$Projects$Locations$Aclpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Backupcollections$Backups$Delete; + params = {} as Params$Resource$Projects$Locations$Aclpolicies$Get; options = {}; } @@ -3223,7 +3395,7 @@ export namespace redis_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options @@ -3234,17 +3406,17 @@ export namespace redis_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Exports a specific backup to a customer target Cloud Storage URI. + * Lists all ACL Policies owned by a project in either the specified location (region) or all locations. The location should have the following format: * `projects/{project_id\}/locations/{location_id\}` If `location_id` is specified as `-` (wildcard), then all regions available to the project are queried, and the results are aggregated. * @example * ```js * // Before running the sample: @@ -3265,7 +3437,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3273,27 +3448,21 @@ export namespace redis_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.backupCollections.backups.export({ - * // Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` - * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection/backups/my-backup', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "gcsBucket": "my_gcsBucket" - * // } - * }, + * const res = await redis.projects.locations.aclPolicies.list({ + * // Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more ACL policies left to be queried. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. The `next_page_token` value returned from a previous `ListAclPolicies` request, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "aclPolicies": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -3309,54 +3478,55 @@ export namespace redis_v1beta1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - export( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + list( + params: Params$Resource$Projects$Locations$Aclpolicies$List, options: StreamMethodOptions ): Promise>; - export( - params?: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + list( + params?: Params$Resource$Projects$Locations$Aclpolicies$List, options?: MethodOptions - ): Promise>; - export( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Aclpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - export( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Aclpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - export( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Aclpolicies$List, + callback: BodyResponseCallback ): void; - export(callback: BodyResponseCallback): void; - export( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backupcollections$Backups$Export - | BodyResponseCallback + | Params$Resource$Projects$Locations$Aclpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$Export; + {}) as Params$Resource$Projects$Locations$Aclpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Backupcollections$Backups$Export; + params = {} as Params$Resource$Projects$Locations$Aclpolicies$List; options = {}; } @@ -3369,32 +3539,32 @@ export namespace redis_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}:export').replace( + url: (rootUrl + '/v1beta1/{+parent}/aclPolicies').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the details of a specific backup. + * Updates the ACL policy. The operation applies the updated ACL policy to all of the linked clusters. If Memorystore can apply the policy to all clusters, then the operation returns a SUCCESS status. If Memorystore can't apply the policy to all clusters, then to ensure eventual consistency, Memorystore uses reconciliation to apply the policy to the failed clusters. Completed longrunning.Operation will contain the new ACL Policy object in the response field. * @example * ```js * // Before running the sample: @@ -3415,7 +3585,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3423,29 +3596,35 @@ export namespace redis_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.backupCollections.backups.get({ - * // Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` - * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection/backups/my-backup', + * const res = await redis.projects.locations.aclPolicies.patch({ + * // Identifier. Full resource path of the ACL policy. + * name: 'projects/my-project/locations/my-location/aclPolicies/my-aclPolicie', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', + * // Optional. Mask of fields to be updated. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from `AclPolicy`: * `rules` + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "etag": "my_etag", + * // "name": "my_name", + * // "rules": [], + * // "state": "my_state", + * // "version": "my_version" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "backupFiles": [], - * // "backupType": "my_backupType", - * // "cluster": "my_cluster", - * // "clusterUid": "my_clusterUid", - * // "createTime": "my_createTime", - * // "encryptionInfo": {}, - * // "engineVersion": "my_engineVersion", - * // "expireTime": "my_expireTime", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "nodeType": "my_nodeType", - * // "replicaCount": 0, - * // "shardCount": 0, - * // "state": "my_state", - * // "totalSizeBytes": "my_totalSizeBytes", - * // "uid": "my_uid" + * // "response": {} * // } * } * @@ -3461,54 +3640,53 @@ export namespace redis_v1beta1 { * @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$Backupcollections$Backups$Get, + patch( + params: Params$Resource$Projects$Locations$Aclpolicies$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, + patch( + params?: Params$Resource$Projects$Locations$Aclpolicies$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Aclpolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Aclpolicies$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Aclpolicies$Patch, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backupcollections$Backups$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Aclpolicies$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$Get; + {}) as Params$Resource$Projects$Locations$Aclpolicies$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Backupcollections$Backups$Get; + params = {} as Params$Resource$Projects$Locations$Aclpolicies$Patch; options = {}; } @@ -3522,7 +3700,7 @@ export namespace redis_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options @@ -3533,61 +3711,149 @@ export namespace redis_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Aclpolicies$Create extends StandardParameters { /** - * Lists all backups owned by a backup collection. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/redis.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const redis = google.redis('v1beta1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * Required. The logical name of the ACL Policy in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location + */ + aclPolicyId?: string; + /** + * Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + */ + parent?: string; + /** + * Optional. Idempotent request UUID. . + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AclPolicy; + } + export interface Params$Resource$Projects$Locations$Aclpolicies$Delete extends StandardParameters { + /** + * Optional. Etag of the ACL policy. If this is different from the server's etag, the request will fail with an ABORTED error. + */ + etag?: string; + /** + * Required. Redis ACL Policy resource name using the form: `projects/{project_id\}/locations/{location_id\}/aclPolicies/{acl_policy_id\}` where `location_id` refers to a GCP region. + */ + name?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Aclpolicies$Get extends StandardParameters { + /** + * Required. Redis ACL Policy resource name using the form: `projects/{project_id\}/locations/{location_id\}/aclPolicies/{acl_policy_id\}` where `location_id` refers to a GCP region. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Aclpolicies$List extends StandardParameters { + /** + * Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more ACL policies left to be queried. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. The `next_page_token` value returned from a previous `ListAclPolicies` request, if any. + */ + pageToken?: string; + /** + * Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Aclpolicies$Patch extends StandardParameters { + /** + * Identifier. Full resource path of the ACL policy. + */ + name?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; + /** + * Optional. Mask of fields to be updated. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from `AclPolicy`: * `rules` + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AclPolicy; + } + + export class Resource$Projects$Locations$Backupcollections { + context: APIRequestContext; + backups: Resource$Projects$Locations$Backupcollections$Backups; + constructor(context: APIRequestContext) { + this.context = context; + this.backups = new Resource$Projects$Locations$Backupcollections$Backups( + this.context + ); + } + + /** + * Get a backup collection. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.backupCollections.backups.list({ - * // Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. - * pageSize: 'placeholder-value', - * // Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. - * pageToken: 'placeholder-value', - * // Required. The resource name of the backupCollection using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` - * parent: - * 'projects/my-project/locations/my-location/backupCollections/my-backupCollection', + * const res = await redis.projects.locations.backupCollections.get({ + * // Required. Redis backupCollection resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` where `location_id` refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection', * }); * console.log(res.data); * * // Example response * // { - * // "backups": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "cluster": "my_cluster", + * // "clusterUid": "my_clusterUid", + * // "createTime": "my_createTime", + * // "kmsKey": "my_kmsKey", + * // "lastBackupTime": "my_lastBackupTime", + * // "name": "my_name", + * // "totalBackupCount": "my_totalBackupCount", + * // "totalBackupSizeBytes": "my_totalBackupSizeBytes", + * // "uid": "my_uid" * // } * } * @@ -3603,54 +3869,53 @@ export namespace redis_v1beta1 { * @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$Backupcollections$Backups$List, + get( + params: Params$Resource$Projects$Locations$Backupcollections$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Backupcollections$Backups$List, + get( + params?: Params$Resource$Projects$Locations$Backupcollections$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Backupcollections$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Backupcollections$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Backupcollections$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backupcollections$Backups$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Backupcollections$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$List; + {}) as Params$Resource$Projects$Locations$Backupcollections$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Backupcollections$Backups$List; + params = {} as Params$Resource$Projects$Locations$Backupcollections$Get; options = {}; } @@ -3663,59 +3928,188 @@ export namespace redis_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/backups').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Backupcollections$Backups$Delete extends StandardParameters { - /** - * Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` - */ - name?: string; - /** - * Optional. Idempotent request UUID. - */ - requestId?: string; - } - export interface Params$Resource$Projects$Locations$Backupcollections$Backups$Export extends StandardParameters { - /** - * Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` - */ - name?: string; /** - * Request body metadata - */ - requestBody?: Schema$ExportBackupRequest; - } - export interface Params$Resource$Projects$Locations$Backupcollections$Backups$Get extends StandardParameters { - /** - * Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + * Lists all backup collections owned by a consumer project in either the specified location (region) or all locations. If `location_id` is specified as `-` (wildcard), then all regions available to the project are queried, and the results are aggregated. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.backupCollections.list({ + * // Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the backupCollection location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "backupCollections": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. */ - name?: string; + list( + params: Params$Resource$Projects$Locations$Backupcollections$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Backupcollections$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Backupcollections$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backupcollections$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backupcollections$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backupcollections$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backupcollections$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Backupcollections$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/backupCollections').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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$Backupcollections$Backups$List extends StandardParameters { + + export interface Params$Resource$Projects$Locations$Backupcollections$Get extends StandardParameters { + /** + * Required. Redis backupCollection resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` where `location_id` refers to a Google Cloud region. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Backupcollections$List extends StandardParameters { /** * Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. */ @@ -3725,19 +4119,1986 @@ export namespace redis_v1beta1 { */ pageToken?: string; /** - * Required. The resource name of the backupCollection using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` + * Required. The resource name of the backupCollection location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. */ parent?: string; } - export class Resource$Projects$Locations$Clusters { + export class Resource$Projects$Locations$Backupcollections$Backups { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Backup Redis Cluster. If this is the first time a backup is being created, a backup collection will be created at the backend, and this backup belongs to this collection. Both collection and backup will have a resource name. Backup will be executed for each shard. A replica (primary if nonHA) will be selected to perform the execution. Backup call will be rejected if there is an ongoing backup or update operation. Be aware that during preview, if the cluster's internal software version is too old, critical update will be performed before actual backup. Once the internal software version is updated to the minimum version required by the backup feature, subsequent backups will not require critical update. After preview, there will be no critical update needed for backup. + * Deletes a specific backup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.backupCollections.backups.delete({ + * // Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection/backups/my-backup', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Backupcollections$Backups$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backupcollections$Backups$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Backupcollections$Backups$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Exports a specific backup to a customer target Cloud Storage URI. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.backupCollections.backups.export({ + * // Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection/backups/my-backup', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "gcsBucket": "my_gcsBucket" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + export( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + options: StreamMethodOptions + ): Promise>; + export( + params?: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + options?: MethodOptions + ): Promise>; + export( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + export( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + export( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Export, + callback: BodyResponseCallback + ): void; + export(callback: BodyResponseCallback): void; + export( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backupcollections$Backups$Export + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$Export; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Backupcollections$Backups$Export; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}:export').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the details of a specific backup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.backupCollections.backups.get({ + * // Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + * name: 'projects/my-project/locations/my-location/backupCollections/my-backupCollection/backups/my-backup', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "backupFiles": [], + * // "backupType": "my_backupType", + * // "cluster": "my_cluster", + * // "clusterUid": "my_clusterUid", + * // "createTime": "my_createTime", + * // "encryptionInfo": {}, + * // "engineVersion": "my_engineVersion", + * // "expireTime": "my_expireTime", + * // "name": "my_name", + * // "nodeType": "my_nodeType", + * // "replicaCount": 0, + * // "shardCount": 0, + * // "state": "my_state", + * // "totalSizeBytes": "my_totalSizeBytes", + * // "uid": "my_uid" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Backupcollections$Backups$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backupcollections$Backups$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Backupcollections$Backups$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists all backups owned by a backup collection. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.backupCollections.backups.list({ + * // Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the backupCollection using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` + * parent: + * 'projects/my-project/locations/my-location/backupCollections/my-backupCollection', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "backups": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Backupcollections$Backups$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Backupcollections$Backups$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backupcollections$Backups$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backupcollections$Backups$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backupcollections$Backups$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Backupcollections$Backups$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/backups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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$Backupcollections$Backups$Delete extends StandardParameters { + /** + * Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + */ + name?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Backupcollections$Backups$Export extends StandardParameters { + /** + * Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExportBackupRequest; + } + export interface Params$Resource$Projects$Locations$Backupcollections$Backups$Get extends StandardParameters { + /** + * Required. Redis backup resource name using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}/backups/{backup_id\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Backupcollections$Backups$List extends StandardParameters { + /** + * Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + */ + pageSize?: number; + /** + * Optional. The `next_page_token` value returned from a previous [ListBackupCollections] request, if any. + */ + pageToken?: string; + /** + * Required. The resource name of the backupCollection using the form: `projects/{project_id\}/locations/{location_id\}/backupCollections/{backup_collection_id\}` + */ + parent?: string; + } + + export class Resource$Projects$Locations$Clusters { + context: APIRequestContext; + tokenAuthUsers: Resource$Projects$Locations$Clusters$Tokenauthusers; + constructor(context: APIRequestContext) { + this.context = context; + this.tokenAuthUsers = + new Resource$Projects$Locations$Clusters$Tokenauthusers(this.context); + } + + /** + * Adds a token auth user for a token based auth enabled cluster. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.addTokenAuthUser({ + * // Required. The cluster resource that this token auth user will be added for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\} + * cluster: 'projects/my-project/locations/my-location/clusters/my-cluster', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "tokenAuthUser": "my_tokenAuthUser" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + addTokenAuthUser( + params: Params$Resource$Projects$Locations$Clusters$Addtokenauthuser, + options: StreamMethodOptions + ): Promise>; + addTokenAuthUser( + params?: Params$Resource$Projects$Locations$Clusters$Addtokenauthuser, + options?: MethodOptions + ): Promise>; + addTokenAuthUser( + params: Params$Resource$Projects$Locations$Clusters$Addtokenauthuser, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addTokenAuthUser( + params: Params$Resource$Projects$Locations$Clusters$Addtokenauthuser, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addTokenAuthUser( + params: Params$Resource$Projects$Locations$Clusters$Addtokenauthuser, + callback: BodyResponseCallback + ): void; + addTokenAuthUser(callback: BodyResponseCallback): void; + addTokenAuthUser( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Addtokenauthuser + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Addtokenauthuser; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Addtokenauthuser; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+cluster}:addTokenAuthUser').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['cluster'], + pathParams: ['cluster'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Backup Redis Cluster. If this is the first time a backup is being created, a backup collection will be created at the backend, and this backup belongs to this collection. Both collection and backup will have a resource name. Backup will be executed for each shard. A replica (primary if nonHA) will be selected to perform the execution. Backup call will be rejected if there is an ongoing backup or update operation. Be aware that during preview, if the cluster's internal software version is too old, critical update will be performed before actual backup. Once the internal software version is updated to the minimum version required by the backup feature, subsequent backups will not require critical update. After preview, there will be no critical update needed for backup. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.backup({ + * // Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/clusters/my-cluster', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "backupId": "my_backupId", + * // "ttl": "my_ttl" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + backup( + params: Params$Resource$Projects$Locations$Clusters$Backup, + options: StreamMethodOptions + ): Promise>; + backup( + params?: Params$Resource$Projects$Locations$Clusters$Backup, + options?: MethodOptions + ): Promise>; + backup( + params: Params$Resource$Projects$Locations$Clusters$Backup, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + backup( + params: Params$Resource$Projects$Locations$Clusters$Backup, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + backup( + params: Params$Resource$Projects$Locations$Clusters$Backup, + callback: BodyResponseCallback + ): void; + backup(callback: BodyResponseCallback): void; + backup( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Backup + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Backup; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Backup; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}:backup').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a Redis cluster based on the specified properties. The creation is executed asynchronously and callers may check the returned operation to track its progress. Once the operation is completed the Redis cluster will be fully functional. The completed longrunning.Operation will contain the new cluster object in the response field. The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.create({ + * // Required. The logical name of the Redis cluster in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location + * clusterId: 'placeholder-value', + * // Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + * parent: 'projects/my-project/locations/my-location', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "aclPolicy": "my_aclPolicy", + * // "aclPolicyInSync": false, + * // "allowFewerZonesDeployment": false, + * // "asyncClusterEndpointsDeletionEnabled": false, + * // "authorizationMode": "my_authorizationMode", + * // "automatedBackupConfig": {}, + * // "availableMaintenanceVersions": [], + * // "backupCollection": "my_backupCollection", + * // "clusterEndpoints": [], + * // "createTime": "my_createTime", + * // "crossClusterReplicationConfig": {}, + * // "deletionProtectionEnabled": false, + * // "discoveryEndpoints": [], + * // "effectiveMaintenanceVersion": "my_effectiveMaintenanceVersion", + * // "encryptionInfo": {}, + * // "gcsSource": {}, + * // "kmsKey": "my_kmsKey", + * // "labels": {}, + * // "maintenancePolicy": {}, + * // "maintenanceSchedule": {}, + * // "maintenanceVersion": "my_maintenanceVersion", + * // "managedBackupSource": {}, + * // "name": "my_name", + * // "nodeType": "my_nodeType", + * // "ondemandMaintenance": false, + * // "persistenceConfig": {}, + * // "preciseSizeGb": {}, + * // "pscConfigs": [], + * // "pscConnections": [], + * // "pscServiceAttachments": [], + * // "redisConfigs": {}, + * // "replicaCount": 0, + * // "rotateServerCertificate": false, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "serverCaMode": "my_serverCaMode", + * // "serverCaPool": "my_serverCaPool", + * // "shardCount": 0, + * // "simulateMaintenanceEvent": false, + * // "sizeGb": 0, + * // "state": "my_state", + * // "stateInfo": {}, + * // "transitEncryptionMode": "my_transitEncryptionMode", + * // "uid": "my_uid", + * // "zoneDistributionConfig": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Clusters$Create, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/clusters').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a specific Redis cluster. Cluster stops serving and data is deleted. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.delete({ + * // Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/clusters/my-cluster', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Clusters$Delete, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the details of a specific Redis cluster. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.get({ + * // Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/clusters/my-cluster', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "aclPolicy": "my_aclPolicy", + * // "aclPolicyInSync": false, + * // "allowFewerZonesDeployment": false, + * // "asyncClusterEndpointsDeletionEnabled": false, + * // "authorizationMode": "my_authorizationMode", + * // "automatedBackupConfig": {}, + * // "availableMaintenanceVersions": [], + * // "backupCollection": "my_backupCollection", + * // "clusterEndpoints": [], + * // "createTime": "my_createTime", + * // "crossClusterReplicationConfig": {}, + * // "deletionProtectionEnabled": false, + * // "discoveryEndpoints": [], + * // "effectiveMaintenanceVersion": "my_effectiveMaintenanceVersion", + * // "encryptionInfo": {}, + * // "gcsSource": {}, + * // "kmsKey": "my_kmsKey", + * // "labels": {}, + * // "maintenancePolicy": {}, + * // "maintenanceSchedule": {}, + * // "maintenanceVersion": "my_maintenanceVersion", + * // "managedBackupSource": {}, + * // "name": "my_name", + * // "nodeType": "my_nodeType", + * // "ondemandMaintenance": false, + * // "persistenceConfig": {}, + * // "preciseSizeGb": {}, + * // "pscConfigs": [], + * // "pscConnections": [], + * // "pscServiceAttachments": [], + * // "redisConfigs": {}, + * // "replicaCount": 0, + * // "rotateServerCertificate": false, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "serverCaMode": "my_serverCaMode", + * // "serverCaPool": "my_serverCaPool", + * // "shardCount": 0, + * // "simulateMaintenanceEvent": false, + * // "sizeGb": 0, + * // "state": "my_state", + * // "stateInfo": {}, + * // "transitEncryptionMode": "my_transitEncryptionMode", + * // "uid": "my_uid", + * // "zoneDistributionConfig": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Clusters$Get, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the details of certificate authority information for Redis cluster. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.getCertificateAuthority({ + * // Required. Redis cluster certificate authority resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}/certificateAuthority` where `location_id` refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/clusters/my-cluster/certificateAuthority', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "managedServerCa": {}, + * // "name": "my_name" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + getCertificateAuthority( + params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + options: StreamMethodOptions + ): Promise>; + getCertificateAuthority( + params?: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + options?: MethodOptions + ): Promise>; + getCertificateAuthority( + params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getCertificateAuthority( + params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getCertificateAuthority( + params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + callback: BodyResponseCallback + ): void; + getCertificateAuthority( + callback: BodyResponseCallback + ): void; + getCertificateAuthority( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Getcertificateauthority + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Getcertificateauthority; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Getcertificateauthority; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists all Redis clusters owned by a project in either the specified location (region) or all locations. The location should have the following format: * `projects/{project_id\}/locations/{location_id\}` If `location_id` is specified as `-` (wildcard), then all regions available to the project are queried, and the results are aggregated. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.list({ + * // The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + * pageSize: 'placeholder-value', + * // The `next_page_token` value returned from a previous `ListClusters` request, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clusters": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Clusters$List, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/clusters').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the metadata and configuration of a specific Redis cluster. Completed longrunning.Operation will contain the new cluster object in the response field. The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/redis.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const redis = google.redis('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await redis.projects.locations.clusters.patch({ + * // Required. Identifier. Unique name of the resource in this scope including project and location using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` + * name: 'projects/my-project/locations/my-location/clusters/my-cluster', + * // Optional. Idempotent request UUID. + * requestId: 'placeholder-value', + * // Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from Cluster: * `size_gb` * `replica_count` * `cluster_endpoints` + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "aclPolicy": "my_aclPolicy", + * // "aclPolicyInSync": false, + * // "allowFewerZonesDeployment": false, + * // "asyncClusterEndpointsDeletionEnabled": false, + * // "authorizationMode": "my_authorizationMode", + * // "automatedBackupConfig": {}, + * // "availableMaintenanceVersions": [], + * // "backupCollection": "my_backupCollection", + * // "clusterEndpoints": [], + * // "createTime": "my_createTime", + * // "crossClusterReplicationConfig": {}, + * // "deletionProtectionEnabled": false, + * // "discoveryEndpoints": [], + * // "effectiveMaintenanceVersion": "my_effectiveMaintenanceVersion", + * // "encryptionInfo": {}, + * // "gcsSource": {}, + * // "kmsKey": "my_kmsKey", + * // "labels": {}, + * // "maintenancePolicy": {}, + * // "maintenanceSchedule": {}, + * // "maintenanceVersion": "my_maintenanceVersion", + * // "managedBackupSource": {}, + * // "name": "my_name", + * // "nodeType": "my_nodeType", + * // "ondemandMaintenance": false, + * // "persistenceConfig": {}, + * // "preciseSizeGb": {}, + * // "pscConfigs": [], + * // "pscConnections": [], + * // "pscServiceAttachments": [], + * // "redisConfigs": {}, + * // "replicaCount": 0, + * // "rotateServerCertificate": false, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "serverCaMode": "my_serverCaMode", + * // "serverCaPool": "my_serverCaPool", + * // "shardCount": 0, + * // "simulateMaintenanceEvent": false, + * // "sizeGb": 0, + * // "state": "my_state", + * // "stateInfo": {}, + * // "transitEncryptionMode": "my_transitEncryptionMode", + * // "uid": "my_uid", + * // "zoneDistributionConfig": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Clusters$Patch, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Reschedules upcoming maintenance event. * @example * ```js * // Before running the sample: @@ -3758,7 +6119,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3766,19 +6130,20 @@ export namespace redis_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.backup({ - * // Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. - * name: 'projects/my-project/locations/my-location/clusters/my-cluster', + * const res = + * await redis.projects.locations.clusters.rescheduleClusterMaintenance({ + * // Required. Redis Cluster instance resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * name: 'projects/my-project/locations/my-location/clusters/my-cluster', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "backupId": "my_backupId", - * // "ttl": "my_ttl" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "rescheduleType": "my_rescheduleType", + * // "scheduleTime": "my_scheduleTime" + * // } + * }, + * }); * console.log(res.data); * * // Example response @@ -3803,32 +6168,34 @@ export namespace redis_v1beta1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - backup( - params: Params$Resource$Projects$Locations$Clusters$Backup, + rescheduleClusterMaintenance( + params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, options: StreamMethodOptions ): Promise>; - backup( - params?: Params$Resource$Projects$Locations$Clusters$Backup, + rescheduleClusterMaintenance( + params?: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, options?: MethodOptions ): Promise>; - backup( - params: Params$Resource$Projects$Locations$Clusters$Backup, + rescheduleClusterMaintenance( + params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - backup( - params: Params$Resource$Projects$Locations$Clusters$Backup, + rescheduleClusterMaintenance( + params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - backup( - params: Params$Resource$Projects$Locations$Clusters$Backup, + rescheduleClusterMaintenance( + params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, callback: BodyResponseCallback ): void; - backup(callback: BodyResponseCallback): void; - backup( + rescheduleClusterMaintenance( + callback: BodyResponseCallback + ): void; + rescheduleClusterMaintenance( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Backup + | Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -3844,12 +6211,13 @@ export namespace redis_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Backup; + {}) as Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Clusters$Backup; + params = + {} as Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance; options = {}; } @@ -3862,10 +6230,9 @@ export namespace redis_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}:backup').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + '/v1beta1/{+name}:rescheduleClusterMaintenance' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, @@ -3885,9 +6252,129 @@ export namespace redis_v1beta1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Clusters$Addtokenauthuser extends StandardParameters { /** - * Creates a Redis cluster based on the specified properties. The creation is executed asynchronously and callers may check the returned operation to track its progress. Once the operation is completed the Redis cluster will be fully functional. The completed longrunning.Operation will contain the new cluster object in the response field. The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation. + * Required. The cluster resource that this token auth user will be added for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\} + */ + cluster?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AddTokenAuthUserRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Backup extends StandardParameters { + /** + * Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BackupClusterRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Create extends StandardParameters { + /** + * Required. The logical name of the Redis cluster in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location + */ + clusterId?: string; + /** + * Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + */ + parent?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Delete extends StandardParameters { + /** + * Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + */ + name?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Get extends StandardParameters { + /** + * Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Getcertificateauthority extends StandardParameters { + /** + * Required. Redis cluster certificate authority resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}/certificateAuthority` where `location_id` refers to a Google Cloud region. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$List extends StandardParameters { + /** + * The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + */ + pageSize?: number; + /** + * The `next_page_token` value returned from a previous `ListClusters` request, if any. + */ + pageToken?: string; + /** + * Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Patch extends StandardParameters { + /** + * Required. Identifier. Unique name of the resource in this scope including project and location using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` + */ + name?: string; + /** + * Optional. Idempotent request UUID. + */ + requestId?: string; + /** + * Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from Cluster: * `size_gb` * `replica_count` * `cluster_endpoints` + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance extends StandardParameters { + /** + * Required. Redis Cluster instance resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RescheduleClusterMaintenanceRequest; + } + + export class Resource$Projects$Locations$Clusters$Tokenauthusers { + context: APIRequestContext; + authTokens: Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens; + constructor(context: APIRequestContext) { + this.context = context; + this.authTokens = + new Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens( + this.context + ); + } + + /** + * Adds a auth token for a user of a token based auth enabled cluster. * @example * ```js * // Before running the sample: @@ -3908,7 +6395,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3916,64 +6406,20 @@ export namespace redis_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.create({ - * // Required. The logical name of the Redis cluster in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location - * clusterId: 'placeholder-value', - * // Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. - * parent: 'projects/my-project/locations/my-location', - * // Optional. Idempotent request UUID. - * requestId: 'placeholder-value', + * const res = + * await redis.projects.locations.clusters.tokenAuthUsers.addAuthToken({ + * // Required. The name of the token auth user resource that this auth token will be added for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + * tokenAuthUser: + * 'projects/my-project/locations/my-location/clusters/my-cluster/tokenAuthUsers/my-tokenAuthUser', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allowFewerZonesDeployment": false, - * // "asyncClusterEndpointsDeletionEnabled": false, - * // "authorizationMode": "my_authorizationMode", - * // "automatedBackupConfig": {}, - * // "availableMaintenanceVersions": [], - * // "backupCollection": "my_backupCollection", - * // "clusterEndpoints": [], - * // "createTime": "my_createTime", - * // "crossClusterReplicationConfig": {}, - * // "deletionProtectionEnabled": false, - * // "discoveryEndpoints": [], - * // "effectiveMaintenanceVersion": "my_effectiveMaintenanceVersion", - * // "encryptionInfo": {}, - * // "gcsSource": {}, - * // "kmsKey": "my_kmsKey", - * // "labels": {}, - * // "maintenancePolicy": {}, - * // "maintenanceSchedule": {}, - * // "maintenanceVersion": "my_maintenanceVersion", - * // "managedBackupSource": {}, - * // "name": "my_name", - * // "nodeType": "my_nodeType", - * // "ondemandMaintenance": false, - * // "persistenceConfig": {}, - * // "preciseSizeGb": {}, - * // "pscConfigs": [], - * // "pscConnections": [], - * // "pscServiceAttachments": [], - * // "redisConfigs": {}, - * // "replicaCount": 0, - * // "rotateServerCertificate": false, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "serverCaMode": "my_serverCaMode", - * // "serverCaPool": "my_serverCaPool", - * // "shardCount": 0, - * // "simulateMaintenanceEvent": false, - * // "sizeGb": 0, - * // "state": "my_state", - * // "stateInfo": {}, - * // "transitEncryptionMode": "my_transitEncryptionMode", - * // "uid": "my_uid", - * // "zoneDistributionConfig": {} - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "authToken": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response @@ -3998,32 +6444,32 @@ export namespace redis_v1beta1 { * @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, + addAuthToken( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Clusters$Create, + addAuthToken( + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Clusters$Create, + ): Promise>; + addAuthToken( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Clusters$Create, + addAuthToken( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Clusters$Create, + addAuthToken( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken, callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + addAuthToken(callback: BodyResponseCallback): void; + addAuthToken( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Create + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -4039,12 +6485,13 @@ export namespace redis_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Create; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Clusters$Create; + params = + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken; options = {}; } @@ -4057,7 +6504,7 @@ export namespace redis_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/clusters').replace( + url: (rootUrl + '/v1beta1/{+tokenAuthUser}:addAuthToken').replace( /([^:]\/)\/+/g, '$1' ), @@ -4067,8 +6514,8 @@ export namespace redis_v1beta1 { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['tokenAuthUser'], + pathParams: ['tokenAuthUser'], context: this.context, }; if (callback) { @@ -4082,7 +6529,7 @@ export namespace redis_v1beta1 { } /** - * Deletes a specific Redis cluster. Cluster stops serving and data is deleted. + * Deletes a token auth user for a token based auth enabled cluster. * @example * ```js * // Before running the sample: @@ -4103,7 +6550,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4111,10 +6561,12 @@ export namespace redis_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.delete({ - * // Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. - * name: 'projects/my-project/locations/my-location/clusters/my-cluster', - * // Optional. Idempotent request UUID. + * const res = await redis.projects.locations.clusters.tokenAuthUsers.delete({ + * // Optional. If set to true, any child auth tokens of this user will also be deleted. Otherwise, the request will only work if the user has no auth tokens. + * force: 'placeholder-value', + * // Required. The name of the token auth user to delete. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + * name: 'projects/my-project/locations/my-location/clusters/my-cluster/tokenAuthUsers/my-tokenAuthUser', + * // 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: 'placeholder-value', * }); * console.log(res.data); @@ -4142,31 +6594,31 @@ export namespace redis_v1beta1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Clusters$Delete, + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Clusters$Delete, + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Clusters$Delete, + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Clusters$Delete, + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Clusters$Delete, + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Delete + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -4182,12 +6634,13 @@ export namespace redis_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Delete; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Clusters$Delete; + params = + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete; options = {}; } @@ -4222,7 +6675,7 @@ export namespace redis_v1beta1 { } /** - * Gets the details of a specific Redis cluster. + * Gets a specific token auth user for a basic auth enabled cluster. * @example * ```js * // Before running the sample: @@ -4243,7 +6696,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4251,57 +6707,16 @@ export namespace redis_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.get({ - * // Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. - * name: 'projects/my-project/locations/my-location/clusters/my-cluster', + * const res = await redis.projects.locations.clusters.tokenAuthUsers.get({ + * // Required. The name of token auth user for a token based auth enabled cluster. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + * name: 'projects/my-project/locations/my-location/clusters/my-cluster/tokenAuthUsers/my-tokenAuthUser', * }); * console.log(res.data); * * // Example response * // { - * // "allowFewerZonesDeployment": false, - * // "asyncClusterEndpointsDeletionEnabled": false, - * // "authorizationMode": "my_authorizationMode", - * // "automatedBackupConfig": {}, - * // "availableMaintenanceVersions": [], - * // "backupCollection": "my_backupCollection", - * // "clusterEndpoints": [], - * // "createTime": "my_createTime", - * // "crossClusterReplicationConfig": {}, - * // "deletionProtectionEnabled": false, - * // "discoveryEndpoints": [], - * // "effectiveMaintenanceVersion": "my_effectiveMaintenanceVersion", - * // "encryptionInfo": {}, - * // "gcsSource": {}, - * // "kmsKey": "my_kmsKey", - * // "labels": {}, - * // "maintenancePolicy": {}, - * // "maintenanceSchedule": {}, - * // "maintenanceVersion": "my_maintenanceVersion", - * // "managedBackupSource": {}, * // "name": "my_name", - * // "nodeType": "my_nodeType", - * // "ondemandMaintenance": false, - * // "persistenceConfig": {}, - * // "preciseSizeGb": {}, - * // "pscConfigs": [], - * // "pscConnections": [], - * // "pscServiceAttachments": [], - * // "redisConfigs": {}, - * // "replicaCount": 0, - * // "rotateServerCertificate": false, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "serverCaMode": "my_serverCaMode", - * // "serverCaPool": "my_serverCaPool", - * // "shardCount": 0, - * // "simulateMaintenanceEvent": false, - * // "sizeGb": 0, - * // "state": "my_state", - * // "stateInfo": {}, - * // "transitEncryptionMode": "my_transitEncryptionMode", - * // "uid": "my_uid", - * // "zoneDistributionConfig": {} + * // "state": "my_state" * // } * } * @@ -4318,52 +6733,53 @@ export namespace redis_v1beta1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Clusters$Get, + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Clusters$Get, + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Projects$Locations$Clusters$Get, + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Clusters$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Clusters$Get, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Get; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Clusters$Get; + params = + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Get; options = {}; } @@ -4388,17 +6804,17 @@ export namespace redis_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the details of certificate authority information for Redis cluster. + * Lists all the token auth users for a token based auth enabled cluster. * @example * ```js * // Before running the sample: @@ -4419,7 +6835,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4427,16 +6846,25 @@ export namespace redis_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.getCertificateAuthority({ - * // Required. Redis cluster certificate authority resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}/certificateAuthority` where `location_id` refers to a Google Cloud region. - * name: 'projects/my-project/locations/my-location/clusters/my-cluster/certificateAuthority', + * const res = await redis.projects.locations.clusters.tokenAuthUsers.list({ + * // Optional. Expression for filtering results. + * filter: 'placeholder-value', + * // Optional. Sort results by a defined order. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's The maximum value is 1000; values above 1000 will be coerced to 1000. `next_page_token` to determine if there are more clusters left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The `next_page_token` value returned from a previous [ListTokenAuthUsers] request, if any. + * pageToken: 'placeholder-value', + * // Required. The parent resource that this token based auth user will be listed for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\} + * parent: 'projects/my-project/locations/my-location/clusters/my-cluster', * }); * console.log(res.data); * * // Example response * // { - * // "managedServerCa": {}, - * // "name": "my_name" + * // "nextPageToken": "my_nextPageToken", + * // "tokenAuthUsers": [], + * // "unreachable": [] * // } * } * @@ -4452,58 +6880,58 @@ export namespace redis_v1beta1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getCertificateAuthority( - params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List, options: StreamMethodOptions ): Promise>; - getCertificateAuthority( - params?: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + list( + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List, options?: MethodOptions - ): Promise>; - getCertificateAuthority( - params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getCertificateAuthority( - params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getCertificateAuthority( - params: Params$Resource$Projects$Locations$Clusters$Getcertificateauthority, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List, + callback: BodyResponseCallback ): void; - getCertificateAuthority( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - getCertificateAuthority( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Getcertificateauthority - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Getcertificateauthority; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Clusters$Getcertificateauthority; + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List; options = {}; } @@ -4516,29 +6944,93 @@ export namespace redis_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1beta1/{+parent}/tokenAuthUsers').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Addauthtoken extends StandardParameters { /** - * Lists all Redis clusters owned by a project in either the specified location (region) or all locations. The location should have the following format: * `projects/{project_id\}/locations/{location_id\}` If `location_id` is specified as `-` (wildcard), then all regions available to the project are queried, and the results are aggregated. + * Required. The name of the token auth user resource that this auth token will be added for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + */ + tokenAuthUser?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AddAuthTokenRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Delete extends StandardParameters { + /** + * Optional. If set to true, any child auth tokens of this user will also be deleted. Otherwise, the request will only work if the user has no auth tokens. + */ + force?: boolean; + /** + * Required. The name of the token auth user to delete. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_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 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$Tokenauthusers$Get extends StandardParameters { + /** + * Required. The name of token auth user for a token based auth enabled cluster. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Tokenauthusers$List extends StandardParameters { + /** + * Optional. Expression for filtering results. + */ + filter?: string; + /** + * Optional. Sort results by a defined order. + */ + orderBy?: string; + /** + * Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's The maximum value is 1000; values above 1000 will be coerced to 1000. `next_page_token` to determine if there are more clusters left to be queried. + */ + pageSize?: number; + /** + * Optional. The `next_page_token` value returned from a previous [ListTokenAuthUsers] request, if any. + */ + pageToken?: string; + /** + * Required. The parent resource that this token based auth user will be listed for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\} + */ + parent?: string; + } + + export class Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Removes a auth token for a user of a token based auth enabled instance. * @example * ```js * // Before running the sample: @@ -4559,7 +7051,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4567,21 +7062,20 @@ export namespace redis_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.list({ - * // The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. - * pageSize: 'placeholder-value', - * // The `next_page_token` value returned from a previous ListClusters request, if any. - * pageToken: 'placeholder-value', - * // Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = + * await redis.projects.locations.clusters.tokenAuthUsers.authTokens.delete({ + * // Required. The name of the token auth user resource that this auth token will be deleted from. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\}/authTokens/{auth_token\} + * name: 'projects/my-project/locations/my-location/clusters/my-cluster/tokenAuthUsers/my-tokenAuthUser/authTokens/my-authToken', + * }); * console.log(res.data); * * // Example response * // { - * // "clusters": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -4597,55 +7091,54 @@ export namespace redis_v1beta1 { * @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, + delete( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Clusters$List, + delete( + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Clusters$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Clusters$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Clusters$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$List; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Clusters$List; + params = + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete; options = {}; } @@ -4654,36 +7147,33 @@ export namespace redis_v1beta1 { options = {}; } - const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1beta1/{+parent}/clusters').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + const rootUrl = options.rootUrl || 'https://redis.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the metadata and configuration of a specific Redis cluster. Completed longrunning.Operation will contain the new cluster object in the response field. The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation. + * Gets a specific auth token for a specific token auth user. * @example * ```js * // Before running the sample: @@ -4704,7 +7194,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4712,73 +7205,19 @@ export namespace redis_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await redis.projects.locations.clusters.patch({ - * // Required. Identifier. Unique name of the resource in this scope including project and location using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` - * name: 'projects/my-project/locations/my-location/clusters/my-cluster', - * // Optional. Idempotent request UUID. - * requestId: 'placeholder-value', - * // Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from Cluster: * `size_gb` * `replica_count` * `cluster_endpoints` - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allowFewerZonesDeployment": false, - * // "asyncClusterEndpointsDeletionEnabled": false, - * // "authorizationMode": "my_authorizationMode", - * // "automatedBackupConfig": {}, - * // "availableMaintenanceVersions": [], - * // "backupCollection": "my_backupCollection", - * // "clusterEndpoints": [], - * // "createTime": "my_createTime", - * // "crossClusterReplicationConfig": {}, - * // "deletionProtectionEnabled": false, - * // "discoveryEndpoints": [], - * // "effectiveMaintenanceVersion": "my_effectiveMaintenanceVersion", - * // "encryptionInfo": {}, - * // "gcsSource": {}, - * // "kmsKey": "my_kmsKey", - * // "labels": {}, - * // "maintenancePolicy": {}, - * // "maintenanceSchedule": {}, - * // "maintenanceVersion": "my_maintenanceVersion", - * // "managedBackupSource": {}, - * // "name": "my_name", - * // "nodeType": "my_nodeType", - * // "ondemandMaintenance": false, - * // "persistenceConfig": {}, - * // "preciseSizeGb": {}, - * // "pscConfigs": [], - * // "pscConnections": [], - * // "pscServiceAttachments": [], - * // "redisConfigs": {}, - * // "replicaCount": 0, - * // "rotateServerCertificate": false, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "serverCaMode": "my_serverCaMode", - * // "serverCaPool": "my_serverCaPool", - * // "shardCount": 0, - * // "simulateMaintenanceEvent": false, - * // "sizeGb": 0, - * // "state": "my_state", - * // "stateInfo": {}, - * // "transitEncryptionMode": "my_transitEncryptionMode", - * // "uid": "my_uid", - * // "zoneDistributionConfig": {} - * // } - * }, - * }); + * const res = + * await redis.projects.locations.clusters.tokenAuthUsers.authTokens.get({ + * // Required. The name of auth token for a token based auth enabled cluster. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\}/authTokens/{auth_token\} + * name: 'projects/my-project/locations/my-location/clusters/my-cluster/tokenAuthUsers/my-tokenAuthUser/authTokens/my-authToken', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "createTime": "my_createTime", * // "name": "my_name", - * // "response": {} + * // "state": "my_state", + * // "token": "my_token" * // } * } * @@ -4794,53 +7233,54 @@ export namespace redis_v1beta1 { * @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, + get( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Clusters$Patch, + get( + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Clusters$Patch, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Clusters$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Clusters$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Patch; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Clusters$Patch; + params = + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get; options = {}; } @@ -4854,7 +7294,7 @@ export namespace redis_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -4865,17 +7305,17 @@ export namespace redis_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Reschedules upcoming maintenance event. + * Lists all the auth tokens for a specific token auth user. * @example * ```js * // Before running the sample: @@ -4896,7 +7336,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4905,28 +7348,26 @@ export namespace redis_v1beta1 { * * // Do the magic * const res = - * await redis.projects.locations.clusters.rescheduleClusterMaintenance({ - * // Required. Redis Cluster instance resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. - * name: 'projects/my-project/locations/my-location/clusters/my-cluster', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "rescheduleType": "my_rescheduleType", - * // "scheduleTime": "my_scheduleTime" - * // } - * }, + * await redis.projects.locations.clusters.tokenAuthUsers.authTokens.list({ + * // Optional. Expression for filtering results. + * filter: 'placeholder-value', + * // Optional. Sort results by a defined order. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. The maximum value is 1000; values above 1000 will be coerced to 1000. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The `next_page_token` value returned from a previous [ListTokenAuthUsers] request, if any. + * pageToken: 'placeholder-value', + * // Required. The parent resource that this auth token will be listed for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} + * parent: + * 'projects/my-project/locations/my-location/clusters/my-cluster/tokenAuthUsers/my-tokenAuthUser', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "authTokens": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -4942,56 +7383,56 @@ export namespace redis_v1beta1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - rescheduleClusterMaintenance( - params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List, options: StreamMethodOptions ): Promise>; - rescheduleClusterMaintenance( - params?: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, + list( + params?: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List, options?: MethodOptions - ): Promise>; - rescheduleClusterMaintenance( - params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - rescheduleClusterMaintenance( - params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - rescheduleClusterMaintenance( - params: Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - rescheduleClusterMaintenance( - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List, + callback: BodyResponseCallback ): void; - rescheduleClusterMaintenance( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance; + {}) as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance; + {} as Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List; options = {}; } @@ -5004,126 +7445,65 @@ export namespace redis_v1beta1 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v1beta1/{+name}:rescheduleClusterMaintenance' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1beta1/{+parent}/authTokens').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Projects$Locations$Clusters$Backup extends StandardParameters { + export interface Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Delete extends StandardParameters { /** - * Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * Required. The name of the token auth user resource that this auth token will be deleted from. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\}/authTokens/{auth_token\} */ name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$BackupClusterRequest; - } - export interface Params$Resource$Projects$Locations$Clusters$Create extends StandardParameters { - /** - * Required. The logical name of the Redis cluster in the customer project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the customer project / location - */ - clusterId?: string; - /** - * Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. - */ - parent?: string; - /** - * Optional. Idempotent request UUID. - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Cluster; } - export interface Params$Resource$Projects$Locations$Clusters$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$Get extends StandardParameters { /** - * Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * Required. The name of auth token for a token based auth enabled cluster. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\}/authTokens/{auth_token\} */ name?: string; - /** - * Optional. Idempotent request UUID. - */ - requestId?: string; } - export interface Params$Resource$Projects$Locations$Clusters$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Clusters$Tokenauthusers$Authtokens$List extends StandardParameters { /** - * Required. Redis cluster resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. + * Optional. Expression for filtering results. */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Clusters$Getcertificateauthority extends StandardParameters { + filter?: string; /** - * Required. Redis cluster certificate authority resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}/certificateAuthority` where `location_id` refers to a Google Cloud region. + * Optional. Sort results by a defined order. */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Clusters$List extends StandardParameters { + orderBy?: string; /** - * The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. + * Optional. The maximum number of items to return. The maximum value is 1000; values above 1000 will be coerced to 1000. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried. */ pageSize?: number; /** - * The `next_page_token` value returned from a previous ListClusters request, if any. + * Optional. The `next_page_token` value returned from a previous [ListTokenAuthUsers] request, if any. */ pageToken?: string; /** - * Required. The resource name of the cluster location using the form: `projects/{project_id\}/locations/{location_id\}` where `location_id` refers to a Google Cloud region. + * Required. The parent resource that this auth token will be listed for. Format: projects/{project\}/locations/{location\}/clusters/{cluster\}/tokenAuthUsers/{token_auth_user\} */ parent?: string; } - export interface Params$Resource$Projects$Locations$Clusters$Patch extends StandardParameters { - /** - * Required. Identifier. Unique name of the resource in this scope including project and location using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` - */ - name?: string; - /** - * Optional. Idempotent request UUID. - */ - requestId?: string; - /** - * Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from Cluster: * `size_gb` * `replica_count` * `cluster_endpoints` - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Cluster; - } - export interface Params$Resource$Projects$Locations$Clusters$Rescheduleclustermaintenance extends StandardParameters { - /** - * Required. Redis Cluster instance resource name using the form: `projects/{project_id\}/locations/{location_id\}/clusters/{cluster_id\}` where `location_id` refers to a Google Cloud region. - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RescheduleClusterMaintenanceRequest; - } export class Resource$Projects$Locations$Instances { context: APIRequestContext; @@ -5153,7 +7533,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5341,7 +7724,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5479,7 +7865,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5628,7 +8017,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5777,7 +8169,11 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-only', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5948,7 +8344,11 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-only', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6088,7 +8488,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6237,7 +8640,11 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-only', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6382,7 +8789,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6567,7 +8977,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6720,7 +9133,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6994,7 +9410,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7129,7 +9548,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7261,7 +9683,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7399,7 +9824,10 @@ export namespace redis_v1beta1 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/redis.read-write', + * ], * }); * * // Acquire an auth client, and bind it to all future calls diff --git a/src/apis/retail/v2.ts b/src/apis/retail/v2.ts index 23a7ca274e8..bdc197a3ed5 100644 --- a/src/apis/retail/v2.ts +++ b/src/apis/retail/v2.ts @@ -3829,7 +3829,7 @@ export namespace retail_v2 { */ conversationalSearchResult?: Schema$GoogleCloudRetailV2SearchResponseConversationalSearchResult; /** - * Contains the spell corrected query, if found. If the spell correction type is AUTOMATIC, then the search results are based on corrected_query. Otherwise the original query is used for search. + * Contains the spell corrected query, if found. The search results are based on corrected_query by default. However, if SearchRequest.SpellCorrectionSpec.mode is set to SearchRequest.SpellCorrectionSpec.Mode.SUGGESTION_ONLY, the original query is used for search. */ correctedQuery?: string | null; /** diff --git a/src/apis/retail/v2alpha.ts b/src/apis/retail/v2alpha.ts index 337695a5504..c9b7a5061df 100644 --- a/src/apis/retail/v2alpha.ts +++ b/src/apis/retail/v2alpha.ts @@ -3387,7 +3387,7 @@ export namespace retail_v2alpha { */ conversationalSearchResult?: Schema$GoogleCloudRetailV2alphaSearchResponseConversationalSearchResult; /** - * Contains the spell corrected query, if found. If the spell correction type is AUTOMATIC, then the search results are based on corrected_query. Otherwise the original query is used for search. + * Contains the spell corrected query, if found. The search results are based on corrected_query by default. However, if SearchRequest.SpellCorrectionSpec.mode is set to SearchRequest.SpellCorrectionSpec.Mode.SUGGESTION_ONLY, the original query is used for search. */ correctedQuery?: string | null; /** diff --git a/src/apis/retail/v2beta.ts b/src/apis/retail/v2beta.ts index ccbe84dea21..70e7089749e 100644 --- a/src/apis/retail/v2beta.ts +++ b/src/apis/retail/v2beta.ts @@ -3621,7 +3621,7 @@ export namespace retail_v2beta { */ conversationalSearchResult?: Schema$GoogleCloudRetailV2betaSearchResponseConversationalSearchResult; /** - * Contains the spell corrected query, if found. If the spell correction type is AUTOMATIC, then the search results are based on corrected_query. Otherwise the original query is used for search. + * Contains the spell corrected query, if found. The search results are based on corrected_query by default. However, if SearchRequest.SpellCorrectionSpec.mode is set to SearchRequest.SpellCorrectionSpec.Mode.SUGGESTION_ONLY, the original query is used for search. */ correctedQuery?: string | null; /** diff --git a/src/apis/run/v1.ts b/src/apis/run/v1.ts index 6852a0ec952..90ca385c842 100644 --- a/src/apis/run/v1.ts +++ b/src/apis/run/v1.ts @@ -804,6 +804,10 @@ export namespace run_v1 { * Artifacts produced by a build that should be uploaded upon successful completion of all build steps. */ export interface Schema$GoogleDevtoolsCloudbuildV1Artifacts { + /** + * Optional. A list of generic artifacts to be uploaded to Artifact Registry upon successful completion of all build steps. If any artifacts fail to be pushed, the build is marked FAILURE. + */ + genericArtifacts?: Schema$GoogleDevtoolsCloudbuildV1GenericArtifact[]; /** * Optional. A list of Go modules to be uploaded to Artifact Registry upon successful completion of all build steps. If any objects fail to be pushed, the build is marked FAILURE. */ @@ -824,6 +828,10 @@ export namespace run_v1 { * A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the specified Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE. */ objects?: Schema$GoogleDevtoolsCloudbuildV1ArtifactObjects; + /** + * Optional. A list of OCI images to be uploaded to Artifact Registry upon successful completion of all build steps. OCI images in the specified paths will be uploaded to the specified Artifact Registry repository using the builder service account's credentials. If any images fail to be pushed, the build is marked FAILURE. + */ + oci?: Schema$GoogleDevtoolsCloudbuildV1Oci[]; /** * A list of Python packages to be uploaded to Artifact Registry upon successful completion of all build steps. The build service account credentials will be used to perform the upload. If any objects fail to be pushed, the build is marked FAILURE. */ @@ -1105,6 +1113,10 @@ export namespace run_v1 { * Output only. Stores timing information for pulling this build step's builder image only. */ pullTiming?: Schema$GoogleDevtoolsCloudbuildV1TimeSpan; + /** + * Declaration of results for this build step. + */ + results?: Schema$GoogleDevtoolsCloudbuildV1StepResult[]; /** * A shell script to be executed in the step. When script is provided, the user cannot specify the entrypoint or args. */ @@ -1134,6 +1146,15 @@ export namespace run_v1 { */ waitFor?: string[] | null; } + /** + * Results for a build step. + */ + export interface Schema$GoogleDevtoolsCloudbuildV1BuildStepResults { + /** + * Results for a build step. + */ + results?: {[key: string]: string} | null; + } /** * An image built by the pipeline. */ @@ -1150,6 +1171,10 @@ export namespace run_v1 { * Name used to push the container image to Google Container Registry, as presented to `docker push`. */ name?: string | null; + /** + * Output only. The OCI media type of the artifact. Non-OCI images, such as Docker images, will have an unspecified value. + */ + ociMediaType?: string | null; /** * Output only. Stores timing information for pushing the specified image. */ @@ -1180,6 +1205,10 @@ export namespace run_v1 { * If set to true disable all dependency fetching (ignoring the default source as well). */ empty?: boolean | null; + /** + * Represents a generic artifact as a build dependency. + */ + genericArtifact?: Schema$GoogleDevtoolsCloudbuildV1GenericArtifactDependency; /** * Represents a git repository as a build dependency. */ @@ -1224,6 +1253,32 @@ export namespace run_v1 { */ fileHash?: Schema$GoogleDevtoolsCloudbuildV1Hash[]; } + /** + * Generic artifact to upload to Artifact Registry upon successful completion of all build steps. + */ + export interface Schema$GoogleDevtoolsCloudbuildV1GenericArtifact { + /** + * Required. Path to the generic artifact in the build's workspace to be uploaded to Artifact Registry. + */ + folder?: string | null; + /** + * Required. Registry path to upload the generic artifact to, in the form projects/$PROJECT/locations/$LOCATION/repositories/$REPO/packages/$PACKAGE/versions/$VERSION + */ + registryPath?: string | null; + } + /** + * Represents a generic artifact as a build dependency. + */ + export interface Schema$GoogleDevtoolsCloudbuildV1GenericArtifactDependency { + /** + * Required. Where the artifact files should be placed on the worker. + */ + destPath?: string | null; + /** + * Required. The location to download the artifact files from. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1 + */ + resource?: string | null; + } /** * GitConfig is a configuration for git operations. */ @@ -1394,6 +1449,23 @@ export namespace run_v1 { */ repository?: string | null; } + /** + * OCI image to upload to Artifact Registry upon successful completion of all build steps. + */ + export interface Schema$GoogleDevtoolsCloudbuildV1Oci { + /** + * Required. Path on the local file system where to find the container to upload. e.g. /workspace/my-image.tar + */ + file?: string | null; + /** + * Required. Registry path to upload the container to. e.g. us-east1-docker.pkg.dev/my-project/my-repo/my-image + */ + registryPath?: string | null; + /** + * Optional. Tags to apply to the uploaded image. e.g. latest, 1.0.0 + */ + tags?: string[] | null; + } /** * Details about how a build should be executed on a `WorkerPool`. See [running builds in a private pool](https://cloud.google.com/build/docs/private-pools/run-builds-in-private-pool) for more information. */ @@ -1473,6 +1545,16 @@ export namespace run_v1 { * List of build step outputs, produced by builder images, in the order corresponding to build step indices. [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders) can produce this output by writing to `$BUILDER_OUTPUT/output`. Only the first 50KB of data is stored. Note that the `$BUILDER_OUTPUT` variable is read-only and can't be substituted. */ buildStepOutputs?: string[] | null; + /** + * Results for build steps. step_id -\> + */ + buildStepResults?: { + [key: string]: Schema$GoogleDevtoolsCloudbuildV1BuildStepResults; + } | null; + /** + * Output only. Generic artifacts uploaded to Artifact Registry at the end of the build. + */ + genericArtifacts?: Schema$GoogleDevtoolsCloudbuildV1UploadedGenericArtifact[]; /** * Optional. Go module artifacts uploaded to Artifact Registry at the end of the build. */ @@ -1597,6 +1679,23 @@ export namespace run_v1 { */ resolvedStorageSourceManifest?: Schema$GoogleDevtoolsCloudbuildV1StorageSourceManifest; } + /** + * StepResult is the declaration of a result for a build step. + */ + export interface Schema$GoogleDevtoolsCloudbuildV1StepResult { + /** + * Optional. The content of the attestation to be generated. + */ + attestationContent?: string | null; + /** + * Optional. The type of attestation to be generated. + */ + attestationType?: string | null; + /** + * Required. The name of the result. + */ + name?: string | null; + } /** * Location of the source in an archive file in Cloud Storage. */ @@ -1648,6 +1747,33 @@ export namespace run_v1 { */ startTime?: string | null; } + /** + * A generic artifact uploaded to Artifact Registry using the GenericArtifact directive. + */ + export interface Schema$GoogleDevtoolsCloudbuildV1UploadedGenericArtifact { + /** + * Output only. The hash of the whole artifact. + */ + artifactFingerprint?: Schema$GoogleDevtoolsCloudbuildV1FileHashes; + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; + /** + * Output only. The file hashes that make up the generic artifact. + */ + fileHashes?: { + [key: string]: Schema$GoogleDevtoolsCloudbuildV1FileHashes; + } | null; + /** + * Output only. Stores timing information for pushing the specified artifact. + */ + pushTiming?: Schema$GoogleDevtoolsCloudbuildV1TimeSpan; + /** + * Output only. URI of the uploaded artifact. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1 + */ + uri?: string | null; + } /** * A Go module artifact uploaded to Artifact Registry using the GoModule directive. */ @@ -3220,7 +3346,7 @@ export namespace run_v1 { */ readOnly?: boolean | null; /** - * Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + * Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). This field is currently rejected in Secret volume mounts. */ subPath?: string | null; } @@ -5853,6 +5979,162 @@ export namespace run_v1 { } } + /** + * Replace an Instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/run.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const run = google.run('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/run', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await run.namespaces.instances.replaceInstance({ + * // Required. The name of the Instance being replaced. Replace {namespace\} with the project ID or number. It takes the form namespaces/{namespace\}. For example: namespaces/PROJECT_ID + * name: 'namespaces/my-namespace/instances/my-instance', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "apiVersion": "my_apiVersion", + * // "kind": "my_kind", + * // "metadata": {}, + * // "spec": {}, + * // "status": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "apiVersion": "my_apiVersion", + * // "kind": "my_kind", + * // "metadata": {}, + * // "spec": {}, + * // "status": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + replaceInstance( + params: Params$Resource$Namespaces$Instances$Replaceinstance, + options: StreamMethodOptions + ): Promise>; + replaceInstance( + params?: Params$Resource$Namespaces$Instances$Replaceinstance, + options?: MethodOptions + ): Promise>; + replaceInstance( + params: Params$Resource$Namespaces$Instances$Replaceinstance, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + replaceInstance( + params: Params$Resource$Namespaces$Instances$Replaceinstance, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + replaceInstance( + params: Params$Resource$Namespaces$Instances$Replaceinstance, + callback: BodyResponseCallback + ): void; + replaceInstance(callback: BodyResponseCallback): void; + replaceInstance( + paramsOrCallback?: + | Params$Resource$Namespaces$Instances$Replaceinstance + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Namespaces$Instances$Replaceinstance; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Namespaces$Instances$Replaceinstance; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://run.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/apis/run.googleapis.com/v1/{+name}').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'PUT', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Start an Instance which has been stopped. * @example @@ -6222,6 +6504,17 @@ export namespace run_v1 { */ watch?: boolean; } + export interface Params$Resource$Namespaces$Instances$Replaceinstance extends StandardParameters { + /** + * Required. The name of the Instance being replaced. Replace {namespace\} with the project ID or number. It takes the form namespaces/{namespace\}. For example: namespaces/PROJECT_ID + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Instance; + } export interface Params$Resource$Namespaces$Instances$Start extends StandardParameters { /** * Required. The name of the Instance to run. Replace {namespace\} with the project ID or number. It takes the form namespaces/{namespace\}. For example: namespaces/PROJECT_ID @@ -10418,7 +10711,7 @@ export namespace run_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -10452,7 +10745,7 @@ export namespace run_v1 { * * // Do the magic * const res = await run.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -10572,7 +10865,7 @@ export namespace run_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/run/v2.ts b/src/apis/run/v2.ts index bfc5d0d17f8..7b430077128 100644 --- a/src/apis/run/v2.ts +++ b/src/apis/run/v2.ts @@ -762,6 +762,15 @@ export namespace run_v2 { */ tag?: string | null; } + /** + * Inlined source. + */ + export interface Schema$GoogleCloudRunV2InlinedSource { + /** + * Required. Input only. The source code. + */ + sources?: Schema$GoogleCloudRunV2SourceFile[]; + } /** * A Cloud Run Instance represents a single group of containers running in a region. */ @@ -1434,11 +1443,11 @@ export namespace run_v2 { */ export interface Schema$GoogleCloudRunV2RevisionScaling { /** - * Optional. Determines a threshold for concurrency utilization before scaling begins. Accepted values are between `0.1` and `0.95` (inclusive) or `0.0` to disable concurrency utilization as threshold for scaling. + * Optional. Determines a threshold for concurrency utilization before scaling begins. Accepted values are between `0.1` and `0.95` (inclusive) or `0.0` to disable concurrency utilization as threshold for scaling. CPU and concurrency scaling cannot both be disabled. */ concurrencyUtilization?: number | null; /** - * Optional. Determines a threshold for CPU utilization before scaling begins. Accepted values are between `0.1` and `0.95` (inclusive) or `0.0` to disable CPU utilization as threshold for scaling. + * Optional. Determines a threshold for CPU utilization before scaling begins. Accepted values are between `0.1` and `0.95` (inclusive) or `0.0` to disable CPU utilization as threshold for scaling. CPU and concurrency scaling cannot both be disabled. */ cpuUtilization?: number | null; /** @@ -1790,6 +1799,23 @@ export namespace run_v2 { * The source is a Cloud Storage bucket. */ cloudStorageSource?: Schema$GoogleCloudRunV2CloudStorageSource; + /** + * Optional. Input only. Source code inlined in the request. Cloud Run will store the inlined_source to Cloud Storage and replace the field with cloud_storage_source. + */ + inlinedSource?: Schema$GoogleCloudRunV2InlinedSource; + } + /** + * Source file. + */ + export interface Schema$GoogleCloudRunV2SourceFile { + /** + * Required. Input only. Represents the exact, literal, and complete source code of the file. Placeholders like `...` or comments such as `# [rest of code]` should NEVER be used as omission. Every character in this field will be built into the final container. Any omission will result in a broken application. + */ + content?: string | null; + /** + * Required. Input only. The file name for the source code. e.g., `"index.js"` or `"node_modules/dependency.js"`. The filename must be less than 255 characters and cannot contain `..`, `./`, `//`, or end with a `/`. Cloud Run will place the files in the container subdirectories, please use relative path to access the file. + */ + filename?: string | null; } /** * Request message for starting an Instance. @@ -2209,7 +2235,7 @@ export namespace run_v2 { */ name?: string | null; /** - * Optional. Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + * Optional. Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). This field is currently rejected in Secret volume mounts. */ subPath?: string | null; } @@ -2263,7 +2289,7 @@ export namespace run_v2 { */ creator?: string | null; /** - * Not supported, and ignored by Cloud Run. + * Deprecated: Not supported, and ignored by Cloud Run. */ customAudiences?: string[] | null; /** @@ -2484,6 +2510,10 @@ export namespace run_v2 { * Artifacts produced by a build that should be uploaded upon successful completion of all build steps. */ export interface Schema$GoogleDevtoolsCloudbuildV1Artifacts { + /** + * Optional. A list of generic artifacts to be uploaded to Artifact Registry upon successful completion of all build steps. If any artifacts fail to be pushed, the build is marked FAILURE. + */ + genericArtifacts?: Schema$GoogleDevtoolsCloudbuildV1GenericArtifact[]; /** * Optional. A list of Go modules to be uploaded to Artifact Registry upon successful completion of all build steps. If any objects fail to be pushed, the build is marked FAILURE. */ @@ -2504,6 +2534,10 @@ export namespace run_v2 { * A list of objects to be uploaded to Cloud Storage upon successful completion of all build steps. Files in the workspace matching specified paths globs will be uploaded to the specified Cloud Storage location using the builder service account's credentials. The location and generation of the uploaded objects will be stored in the Build resource's results field. If any objects fail to be pushed, the build is marked FAILURE. */ objects?: Schema$GoogleDevtoolsCloudbuildV1ArtifactObjects; + /** + * Optional. A list of OCI images to be uploaded to Artifact Registry upon successful completion of all build steps. OCI images in the specified paths will be uploaded to the specified Artifact Registry repository using the builder service account's credentials. If any images fail to be pushed, the build is marked FAILURE. + */ + oci?: Schema$GoogleDevtoolsCloudbuildV1Oci[]; /** * A list of Python packages to be uploaded to Artifact Registry upon successful completion of all build steps. The build service account credentials will be used to perform the upload. If any objects fail to be pushed, the build is marked FAILURE. */ @@ -2785,6 +2819,10 @@ export namespace run_v2 { * Output only. Stores timing information for pulling this build step's builder image only. */ pullTiming?: Schema$GoogleDevtoolsCloudbuildV1TimeSpan; + /** + * Declaration of results for this build step. + */ + results?: Schema$GoogleDevtoolsCloudbuildV1StepResult[]; /** * A shell script to be executed in the step. When script is provided, the user cannot specify the entrypoint or args. */ @@ -2814,6 +2852,15 @@ export namespace run_v2 { */ waitFor?: string[] | null; } + /** + * Results for a build step. + */ + export interface Schema$GoogleDevtoolsCloudbuildV1BuildStepResults { + /** + * Results for a build step. + */ + results?: {[key: string]: string} | null; + } /** * An image built by the pipeline. */ @@ -2830,6 +2877,10 @@ export namespace run_v2 { * Name used to push the container image to Google Container Registry, as presented to `docker push`. */ name?: string | null; + /** + * Output only. The OCI media type of the artifact. Non-OCI images, such as Docker images, will have an unspecified value. + */ + ociMediaType?: string | null; /** * Output only. Stores timing information for pushing the specified image. */ @@ -2860,6 +2911,10 @@ export namespace run_v2 { * If set to true disable all dependency fetching (ignoring the default source as well). */ empty?: boolean | null; + /** + * Represents a generic artifact as a build dependency. + */ + genericArtifact?: Schema$GoogleDevtoolsCloudbuildV1GenericArtifactDependency; /** * Represents a git repository as a build dependency. */ @@ -2904,6 +2959,32 @@ export namespace run_v2 { */ fileHash?: Schema$GoogleDevtoolsCloudbuildV1Hash[]; } + /** + * Generic artifact to upload to Artifact Registry upon successful completion of all build steps. + */ + export interface Schema$GoogleDevtoolsCloudbuildV1GenericArtifact { + /** + * Required. Path to the generic artifact in the build's workspace to be uploaded to Artifact Registry. + */ + folder?: string | null; + /** + * Required. Registry path to upload the generic artifact to, in the form projects/$PROJECT/locations/$LOCATION/repositories/$REPO/packages/$PACKAGE/versions/$VERSION + */ + registryPath?: string | null; + } + /** + * Represents a generic artifact as a build dependency. + */ + export interface Schema$GoogleDevtoolsCloudbuildV1GenericArtifactDependency { + /** + * Required. Where the artifact files should be placed on the worker. + */ + destPath?: string | null; + /** + * Required. The location to download the artifact files from. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1 + */ + resource?: string | null; + } /** * GitConfig is a configuration for git operations. */ @@ -3074,6 +3155,23 @@ export namespace run_v2 { */ repository?: string | null; } + /** + * OCI image to upload to Artifact Registry upon successful completion of all build steps. + */ + export interface Schema$GoogleDevtoolsCloudbuildV1Oci { + /** + * Required. Path on the local file system where to find the container to upload. e.g. /workspace/my-image.tar + */ + file?: string | null; + /** + * Required. Registry path to upload the container to. e.g. us-east1-docker.pkg.dev/my-project/my-repo/my-image + */ + registryPath?: string | null; + /** + * Optional. Tags to apply to the uploaded image. e.g. latest, 1.0.0 + */ + tags?: string[] | null; + } /** * Details about how a build should be executed on a `WorkerPool`. See [running builds in a private pool](https://cloud.google.com/build/docs/private-pools/run-builds-in-private-pool) for more information. */ @@ -3153,6 +3251,16 @@ export namespace run_v2 { * List of build step outputs, produced by builder images, in the order corresponding to build step indices. [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders) can produce this output by writing to `$BUILDER_OUTPUT/output`. Only the first 50KB of data is stored. Note that the `$BUILDER_OUTPUT` variable is read-only and can't be substituted. */ buildStepOutputs?: string[] | null; + /** + * Results for build steps. step_id -\> + */ + buildStepResults?: { + [key: string]: Schema$GoogleDevtoolsCloudbuildV1BuildStepResults; + } | null; + /** + * Output only. Generic artifacts uploaded to Artifact Registry at the end of the build. + */ + genericArtifacts?: Schema$GoogleDevtoolsCloudbuildV1UploadedGenericArtifact[]; /** * Optional. Go module artifacts uploaded to Artifact Registry at the end of the build. */ @@ -3277,6 +3385,23 @@ export namespace run_v2 { */ resolvedStorageSourceManifest?: Schema$GoogleDevtoolsCloudbuildV1StorageSourceManifest; } + /** + * StepResult is the declaration of a result for a build step. + */ + export interface Schema$GoogleDevtoolsCloudbuildV1StepResult { + /** + * Optional. The content of the attestation to be generated. + */ + attestationContent?: string | null; + /** + * Optional. The type of attestation to be generated. + */ + attestationType?: string | null; + /** + * Required. The name of the result. + */ + name?: string | null; + } /** * Location of the source in an archive file in Cloud Storage. */ @@ -3328,6 +3453,33 @@ export namespace run_v2 { */ startTime?: string | null; } + /** + * A generic artifact uploaded to Artifact Registry using the GenericArtifact directive. + */ + export interface Schema$GoogleDevtoolsCloudbuildV1UploadedGenericArtifact { + /** + * Output only. The hash of the whole artifact. + */ + artifactFingerprint?: Schema$GoogleDevtoolsCloudbuildV1FileHashes; + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; + /** + * Output only. The file hashes that make up the generic artifact. + */ + fileHashes?: { + [key: string]: Schema$GoogleDevtoolsCloudbuildV1FileHashes; + } | null; + /** + * Output only. Stores timing information for pushing the specified artifact. + */ + pushTiming?: Schema$GoogleDevtoolsCloudbuildV1TimeSpan; + /** + * Output only. URI of the uploaded artifact. Ex: projects/p1/locations/us/repositories/r1/packages/p1/versions/v1 + */ + uri?: string | null; + } /** * A Go module artifact uploaded to Artifact Registry using the GoModule directive. */ @@ -5025,7 +5177,7 @@ export namespace run_v2 { } /** - * Lists Instances. Results are sorted by creation time, descending. + * Gets the IAM Access Control policy currently in effect for the given Instance. This result does not include any inherited policies. * @example * ```js * // Before running the sample: @@ -5058,22 +5210,20 @@ export namespace run_v2 { * google.options({auth: authClient}); * * // Do the magic - * const res = await run.projects.locations.instances.list({ - * // Optional. Maximum number of Instances to return in this call. - * pageSize: 'placeholder-value', - * // Optional. A page token received from a previous call to ListInstances. All other parameters must match. - * pageToken: 'placeholder-value', - * // Required. The location and project to list resources on. Format: projects/{project\}/locations/{location\}, where {project\} can be project id or number. - * parent: 'projects/my-project/locations/my-location', - * // Optional. If true, returns deleted (but unexpired) resources along with active ones. - * showDeleted: 'placeholder-value', + * const res = await run.projects.locations.instances.getIamPolicy({ + * // 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': 'placeholder-value', + * // 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: 'projects/my-project/locations/my-location/instances/my-instance', * }); * console.log(res.data); * * // Example response * // { - * // "instances": [], - * // "nextPageToken": "my_nextPageToken" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -5089,61 +5239,56 @@ export namespace run_v2 { * @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$Instances$List, + getIamPolicy( + params: Params$Resource$Projects$Locations$Instances$Getiampolicy, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Instances$List, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Instances$Getiampolicy, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Instances$List, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Instances$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Instances$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Instances$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Instances$List, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Instances$Getiampolicy, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + getIamPolicy( + callback: BodyResponseCallback ): void; - list( + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Instances$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Instances$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Instances$List; + {}) as Params$Resource$Projects$Locations$Instances$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Instances$List; + params = + {} as Params$Resource$Projects$Locations$Instances$Getiampolicy; options = {}; } @@ -5156,7 +5301,7 @@ export namespace run_v2 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v2/{+parent}/instances').replace( + url: (rootUrl + '/v2/{+resource}:getIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), @@ -5166,24 +5311,22 @@ export namespace run_v2 { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Starts an Instance. + * Lists Instances. Results are sorted by creation time, descending. * @example * ```js * // Before running the sample: @@ -5207,6 +5350,7 @@ export namespace run_v2 { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/run', + * 'https://www.googleapis.com/auth/run.readonly', * ], * }); * @@ -5215,28 +5359,22 @@ export namespace run_v2 { * google.options({auth: authClient}); * * // Do the magic - * const res = await run.projects.locations.instances.start({ - * // Required. The name of the Instance to stop. Format: `projects/{project\}/locations/{location\}/instances/{instance\}`, where `{project\}` can be project id or number. - * name: 'projects/my-project/locations/my-location/instances/my-instance', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "etag": "my_etag", - * // "validateOnly": false - * // } - * }, + * const res = await run.projects.locations.instances.list({ + * // Optional. Maximum number of Instances to return in this call. + * pageSize: 'placeholder-value', + * // Optional. A page token received from a previous call to ListInstances. All other parameters must match. + * pageToken: 'placeholder-value', + * // Required. The location and project to list resources on. Format: projects/{project\}/locations/{location\}, where {project\} can be project id or number. + * parent: 'projects/my-project/locations/my-location', + * // Optional. If true, returns deleted (but unexpired) resources along with active ones. + * showDeleted: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "instances": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -5252,57 +5390,61 @@ export namespace run_v2 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - start( - params: Params$Resource$Projects$Locations$Instances$Start, + list( + params: Params$Resource$Projects$Locations$Instances$List, options: StreamMethodOptions ): Promise>; - start( - params?: Params$Resource$Projects$Locations$Instances$Start, + list( + params?: Params$Resource$Projects$Locations$Instances$List, options?: MethodOptions - ): Promise>; - start( - params: Params$Resource$Projects$Locations$Instances$Start, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Instances$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - start( - params: Params$Resource$Projects$Locations$Instances$Start, + list( + params: Params$Resource$Projects$Locations$Instances$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - start( - params: Params$Resource$Projects$Locations$Instances$Start, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Instances$List, + callback: BodyResponseCallback ): void; - start( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - start( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Instances$Start - | BodyResponseCallback + | Params$Resource$Projects$Locations$Instances$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Instances$Start; + {}) as Params$Resource$Projects$Locations$Instances$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Instances$Start; + params = {} as Params$Resource$Projects$Locations$Instances$List; options = {}; } @@ -5315,11 +5457,521 @@ export namespace run_v2 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v2/{+name}:start').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options + url: (rootUrl + '/v2/{+parent}/instances').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates an Instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/run.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const run = google.run('v2'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/run', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await run.projects.locations.instances.patch({ + * // Optional. If set to true, and if the Instance does not exist, it will create a new one. The caller must have 'run.instances.create' permissions if this is set to true and the Instance does not exist. + * allowMissing: 'placeholder-value', + * // The fully qualified name of this Instance. In CreateInstanceRequest, this field is ignored, and instead composed from CreateInstanceRequest.parent and CreateInstanceRequest.instance_id. Format: projects/{project\}/locations/{location\}/instances/{instance_id\} + * name: 'projects/my-project/locations/my-location/instances/my-instance', + * // Optional. The list of fields to be updated. + * updateMask: 'placeholder-value', + * // Optional. Indicates that the request should be validated and default values populated, without persisting the request or updating any resources. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "binaryAuthorization": {}, + * // "client": "my_client", + * // "clientVersion": "my_clientVersion", + * // "conditions": [], + * // "containerStatuses": [], + * // "containers": [], + * // "createTime": "my_createTime", + * // "creator": "my_creator", + * // "deleteTime": "my_deleteTime", + * // "description": "my_description", + * // "encryptionKey": "my_encryptionKey", + * // "encryptionKeyRevocationAction": "my_encryptionKeyRevocationAction", + * // "encryptionKeyShutdownDuration": "my_encryptionKeyShutdownDuration", + * // "etag": "my_etag", + * // "expireTime": "my_expireTime", + * // "generation": "my_generation", + * // "gpuZonalRedundancyDisabled": false, + * // "iapEnabled": false, + * // "ingress": "my_ingress", + * // "invokerIamDisabled": false, + * // "labels": {}, + * // "lastModifier": "my_lastModifier", + * // "launchStage": "my_launchStage", + * // "logUri": "my_logUri", + * // "name": "my_name", + * // "nodeSelector": {}, + * // "observedGeneration": "my_observedGeneration", + * // "reconciling": false, + * // "satisfiesPzs": false, + * // "serviceAccount": "my_serviceAccount", + * // "terminalCondition": {}, + * // "timeout": "my_timeout", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime", + * // "urls": [], + * // "volumes": [], + * // "vpcAccess": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Instances$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Instances$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Instances$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Instances$Patch, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Instances$Patch, + callback: BodyResponseCallback + ): void; + patch( + callback: BodyResponseCallback + ): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Instances$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Instances$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Instances$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://run.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v2/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the IAM Access control policy for the specified Instance. Overwrites any existing policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/run.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const run = google.run('v2'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/run', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await run.projects.locations.instances.setIamPolicy({ + * // 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: 'projects/my-project/locations/my-location/instances/my-instance', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Instances$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Projects$Locations$Instances$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Projects$Locations$Instances$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Instances$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Instances$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy( + callback: BodyResponseCallback + ): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Instances$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Instances$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Instances$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://run.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v2/{+resource}:setIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Starts an Instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/run.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const run = google.run('v2'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/run', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await run.projects.locations.instances.start({ + * // Required. The name of the Instance to stop. Format: `projects/{project\}/locations/{location\}/instances/{instance\}`, where `{project\}` can be project id or number. + * name: 'projects/my-project/locations/my-location/instances/my-instance', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "etag": "my_etag", + * // "validateOnly": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + start( + params: Params$Resource$Projects$Locations$Instances$Start, + options: StreamMethodOptions + ): Promise>; + start( + params?: Params$Resource$Projects$Locations$Instances$Start, + options?: MethodOptions + ): Promise>; + start( + params: Params$Resource$Projects$Locations$Instances$Start, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + start( + params: Params$Resource$Projects$Locations$Instances$Start, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + start( + params: Params$Resource$Projects$Locations$Instances$Start, + callback: BodyResponseCallback + ): void; + start( + callback: BodyResponseCallback + ): void; + start( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Instances$Start + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Instances$Start; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Instances$Start; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://run.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v2/{+name}:start').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options ), params, requiredParams: ['name'], @@ -5489,6 +6141,166 @@ export namespace run_v2 { return createAPIRequest(parameters); } } + + /** + * Returns permissions that a caller has on the specified Project. There are no permissions required for making this API call. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/run.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const run = google.run('v2'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/run', + * 'https://www.googleapis.com/auth/run.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await run.projects.locations.instances.testIamPermissions({ + * // 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: 'projects/my-project/locations/my-location/instances/my-instance', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Instances$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Projects$Locations$Instances$Testiampermissions, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + testIamPermissions( + params: Params$Resource$Projects$Locations$Instances$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Instances$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Instances$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Instances$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Instances$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Instances$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://run.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v2/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + 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$Instances$Create extends StandardParameters { @@ -5530,6 +6342,16 @@ export namespace run_v2 { */ name?: string; } + export interface Params$Resource$Projects$Locations$Instances$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$Instances$List extends StandardParameters { /** * Optional. Maximum number of Instances to return in this call. @@ -5548,6 +6370,40 @@ export namespace run_v2 { */ showDeleted?: boolean; } + export interface Params$Resource$Projects$Locations$Instances$Patch extends StandardParameters { + /** + * Optional. If set to true, and if the Instance does not exist, it will create a new one. The caller must have 'run.instances.create' permissions if this is set to true and the Instance does not exist. + */ + allowMissing?: boolean; + /** + * The fully qualified name of this Instance. In CreateInstanceRequest, this field is ignored, and instead composed from CreateInstanceRequest.parent and CreateInstanceRequest.instance_id. Format: projects/{project\}/locations/{location\}/instances/{instance_id\} + */ + name?: string; + /** + * Optional. The list of fields to be updated. + */ + updateMask?: string; + /** + * Optional. Indicates that the request should be validated and default values populated, without persisting the request or updating any resources. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleCloudRunV2Instance; + } + export interface Params$Resource$Projects$Locations$Instances$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$GoogleIamV1SetIamPolicyRequest; + } export interface Params$Resource$Projects$Locations$Instances$Start extends StandardParameters { /** * Required. The name of the Instance to stop. Format: `projects/{project\}/locations/{location\}/instances/{instance\}`, where `{project\}` can be project id or number. @@ -5570,6 +6426,17 @@ export namespace run_v2 { */ requestBody?: Schema$GoogleCloudRunV2StopInstanceRequest; } + export interface Params$Resource$Projects$Locations$Instances$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$GoogleIamV1TestIamPermissionsRequest; + } export class Resource$Projects$Locations$Jobs { context: APIRequestContext; diff --git a/src/apis/saasservicemgmt/index.ts b/src/apis/saasservicemgmt/index.ts index 6911cb6f460..a2cc391c3f1 100644 --- a/src/apis/saasservicemgmt/index.ts +++ b/src/apis/saasservicemgmt/index.ts @@ -14,27 +14,44 @@ /*! THIS FILE IS AUTO-GENERATED */ import {AuthPlus, getAPI, GoogleConfigurable} from 'googleapis-common'; +import {saasservicemgmt_v1} from './v1'; import {saasservicemgmt_v1beta1} from './v1beta1'; export const VERSIONS = { + v1: saasservicemgmt_v1.Saasservicemgmt, v1beta1: saasservicemgmt_v1beta1.Saasservicemgmt, }; +export function saasservicemgmt( + version: 'v1' +): saasservicemgmt_v1.Saasservicemgmt; +export function saasservicemgmt( + options: saasservicemgmt_v1.Options +): saasservicemgmt_v1.Saasservicemgmt; export function saasservicemgmt( version: 'v1beta1' ): saasservicemgmt_v1beta1.Saasservicemgmt; export function saasservicemgmt( options: saasservicemgmt_v1beta1.Options ): saasservicemgmt_v1beta1.Saasservicemgmt; -export function saasservicemgmt( +export function saasservicemgmt< + T = + | saasservicemgmt_v1.Saasservicemgmt + | saasservicemgmt_v1beta1.Saasservicemgmt, +>( this: GoogleConfigurable, - versionOrOptions: 'v1beta1' | saasservicemgmt_v1beta1.Options + versionOrOptions: + | 'v1' + | saasservicemgmt_v1.Options + | 'v1beta1' + | saasservicemgmt_v1beta1.Options ) { return getAPI('saasservicemgmt', versionOrOptions, VERSIONS, this); } const auth = new AuthPlus(); export {auth}; +export {saasservicemgmt_v1}; export {saasservicemgmt_v1beta1}; export { AuthPlus, diff --git a/src/apis/saasservicemgmt/v1.ts b/src/apis/saasservicemgmt/v1.ts new file mode 100644 index 00000000000..2a5850ed950 --- /dev/null +++ b/src/apis/saasservicemgmt/v1.ts @@ -0,0 +1,8727 @@ +// 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, + GaxiosResponseWithHTTP2, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace saasservicemgmt_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; + } + + /** + * App Lifecycle Manager API + * + * Model, deploy, and operate your SaaS at scale. + * + * @example + * ```js + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * ``` + */ + export class Saasservicemgmt { + context: APIRequestContext; + projects: Resource$Projects; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + + this.projects = new Resource$Projects(this.context); + } + } + + /** + * Represents the aggregation of a set of population of like records by a certain group. For example, a collection of unit counts can be aggregated and grouped by their state. + */ + export interface Schema$Aggregate { + /** + * Required. Number of records in the group. + */ + count?: number | null; + /** + * Required. Group by which to aggregate. + */ + group?: string | null; + } + /** + * Blueprints are OCI Images that contain all of the artifacts needed to provision a unit. Metadata such as, type of the engine used to actuate the blueprint (e.g. terraform, helm etc) and version will come from the image manifest. If the hostname is omitted, it will be assumed to be the regional path to Artifact Registry (eg. us-east1-docker.pkg.dev). + */ + export interface Schema$Blueprint { + /** + * Output only. Type of the engine used to actuate the blueprint. e.g. terraform, helm etc. + */ + engine?: string | null; + /** + * Optional. Immutable. URI to a blueprint used by the Unit (required unless unitKind or release is set). + */ + package?: string | null; + /** + * Output only. Version metadata if present on the blueprint. + */ + version?: string | null; + } + /** + * Dependency represent a single dependency with another unit kind by alias. + */ + export interface Schema$Dependency { + /** + * Required. An alias for the dependency. Used for input variable mapping. + */ + alias?: string | null; + /** + * Required. Immutable. The unit kind of the dependency. + */ + unitKind?: string | null; + } + /** + * Deprovision is the unit operation that deprovision the underlying resources represented by a Unit. Can only execute if the Unit is currently provisioned. + */ + export interface Schema$Deprovision {} + /** + * 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 {} + /** + * The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. + */ + export interface Schema$ErrorBudget { + /** + * Optional. The maximum number of failed units allowed in a location without pausing the rollout. + */ + allowedCount?: number | null; + /** + * Optional. The maximum percentage of units allowed to fail (0, 100] within a location without pausing the rollout. + */ + allowedPercentage?: number | null; + } + /** + * FlagUpdate is a UnitOperation that pushes new flag values to Units. + */ + export interface Schema$FlagUpdate { + /** + * Required. Flag release being applied by UnitOperation. + */ + flagRelease?: string | null; + } + /** + * Output variables whose values will be passed on to dependencies + */ + export interface Schema$FromMapping { + /** + * Required. Alias of the dependency that the outputVariable will pass its value to + */ + dependency?: string | null; + /** + * Required. Name of the outputVariable on the dependency + */ + outputVariable?: 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; + } + /** + * The response message for Locations.ListLocations. + */ + export interface Schema$ListLocationsResponse { + /** + * A list of locations that matches the specified filter in the request. + */ + locations?: Schema$GoogleCloudLocationLocation[]; + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + } + /** + * The response structure for the ListReleases method. + */ + export interface Schema$ListReleasesResponse { + /** + * If present, the next page token can be provided to a subsequent ListReleases call to list the next page. If empty, there are no more pages. + */ + nextPageToken?: string | null; + /** + * The resulting releases. + */ + releases?: Schema$Release[]; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * The response structure for the ListRolloutKinds method. + */ + export interface Schema$ListRolloutKindsResponse { + /** + * If present, the next page token can be provided to a subsequent ListRolloutKinds call to list the next page. If empty, there are no more pages. + */ + nextPageToken?: string | null; + /** + * The resulting rollout kinds. + */ + rolloutKinds?: Schema$RolloutKind[]; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * The response structure for the ListRollouts method. + */ + export interface Schema$ListRolloutsResponse { + /** + * If present, the next page token can be provided to a subsequent ListRollouts call to list the next page. If empty, there are no more pages. + */ + nextPageToken?: string | null; + /** + * The resulting rollouts. + */ + rollouts?: Schema$Rollout[]; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * The response structure for the ListSaas method. + */ + export interface Schema$ListSaasResponse { + /** + * If present, the next page token can be provided to a subsequent ListSaas call to list the next page. If empty, there are no more pages. + */ + nextPageToken?: string | null; + /** + * The resulting saas. + */ + saas?: Schema$Saas[]; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * The response structure for the ListTenants method. + */ + export interface Schema$ListTenantsResponse { + /** + * If present, the next page token can be provided to a subsequent ListTenants call to list the next page. If empty, there are no more pages. + */ + nextPageToken?: string | null; + /** + * The resulting tenants. + */ + tenants?: Schema$Tenant[]; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * The response structure for the ListUnitKinds method. + */ + export interface Schema$ListUnitKindsResponse { + /** + * If present, the next page token can be provided to a subsequent ListUnitKinds call to list the next page. If empty, there are no more pages. + */ + nextPageToken?: string | null; + /** + * The resulting unit kinds. + */ + unitKinds?: Schema$UnitKind[]; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * The response structure for the ListUnitOperations method. + */ + export interface Schema$ListUnitOperationsResponse { + /** + * If present, the next page token can be provided to a subsequent ListUnitOperations call to list the next page. If empty, there are no more pages. + */ + nextPageToken?: string | null; + /** + * The resulting unit operations. + */ + unitOperations?: Schema$UnitOperation[]; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * The response structure for the ListUnits method. + */ + export interface Schema$ListUnitsResponse { + /** + * If present, the next page token can be provided to a subsequent ListUnits call to list the next page. If empty, there are no more pages. + */ + nextPageToken?: string | null; + /** + * The resulting units. + */ + units?: Schema$Unit[]; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Location information that the service is available in. + */ + export interface Schema$Location { + /** + * Optional. Name of location. + */ + name?: string | null; + } + /** + * Captures requested directives for performing future maintenance on the unit. This includes a request for the unit to skip maintenance for a period of time and remain pinned to its current release as well as controls for postponing maintenance scheduled in future. + */ + export interface Schema$MaintenanceSettings { + /** + * Optional. If present, it fixes the release on the unit until the given time; i.e. changes to the release field will be rejected. Rollouts should and will also respect this by not requesting an upgrade in the first place. + */ + pinnedUntilTime?: string | null; + } + /** + * Provision is the unit operation that provision the underlying resources represented by a Unit. Can only execute if the Unit is not currently provisioned. + */ + export interface Schema$Provision { + /** + * Optional. Set of input variables. Maximum 100. (optional) + */ + inputVariables?: Schema$UnitVariable[]; + /** + * Optional. Reference to the Release object to use for the Unit. (optional). + */ + release?: string | null; + } + /** + * A new version to be propagated and deployed to units. This includes pointers to packaged blueprints for actuation (e.g Helm or Terraform configuration packages) via artifact registry. + */ + export interface Schema$Release { + /** + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + */ + annotations?: {[key: string]: string} | null; + /** + * Optional. Blueprints are OCI Images that contain all of the artifacts needed to provision a unit. + */ + blueprint?: Schema$Blueprint; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + /** + * Optional. Mapping of input variables to default values. Maximum 100 + */ + inputVariableDefaults?: Schema$UnitVariable[]; + /** + * Optional. Output only. List of input variables declared on the blueprint and can be present with their values on the unit spec + */ + inputVariables?: Schema$UnitVariable[]; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/releases/{release\}" + */ + name?: string | null; + /** + * Optional. Output only. List of output variables declared on the blueprint and can be present with their values on the unit status + */ + outputVariables?: Schema$UnitVariable[]; + /** + * Optional. Set of requirements to be fulfilled on the Unit when using this Release. + */ + releaseRequirements?: Schema$ReleaseRequirements; + /** + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + */ + uid?: string | null; + /** + * Required. Immutable. Reference to the UnitKind this Release corresponds to (required and immutable once created). + */ + unitKind?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; + } + /** + * Set of requirements to be fulfilled on the Unit when using this Release. + */ + export interface Schema$ReleaseRequirements { + /** + * Optional. A list of releases from which a unit can be upgraded to this one (optional). If left empty no constraints will be applied. When provided, unit upgrade requests to this release will check and enforce this constraint. + */ + upgradeableFromReleases?: string[] | null; + } + /** + * Represents a single rollout execution and its results + */ + export interface Schema$Rollout { + /** + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + */ + annotations?: {[key: string]: string} | null; + /** + * Optional. Requested change to the execution of this rollout. Default RolloutControl.action is ROLLOUT_ACTION_RUN meaning the rollout will be executed to completion while progressing through all natural Rollout States (such as RUNNING -\> SUCCEEDED or RUNNING -\> FAILED). Requests can only be made when the Rollout is in a non-terminal state. + */ + control?: Schema$RolloutControl; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Output only. The timestamp when the resource was marked for deletion (deletion is an asynchronous operation). + */ + deleteTime?: string | null; + /** + * Optional. Output only. Output only snapshot of the effective unit filter at Rollout start time. Contains a CEL(https://github.com/google/cel-spec) expression consisting of a conjunction of Rollout.unit_filter and RolloutKind.unit_filter. This field captures the filter applied by the Rollout to determine the Unit population. If the associated RolloutKind's unit_filter is modified after the rollout is started, it will not be updated here. + */ + effectiveUnitFilter?: string | null; + /** + * Optional. Output only. The time when the rollout finished execution (regardless of success, failure, or cancellation). Will be empty if the rollout hasn't finished yet. Once set, the rollout is in terminal state and all the results are final. + */ + endTime?: string | null; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + /** + * Optional. Immutable. Name of the FlagRelease to be rolled out to the target Units. Release and FlagRelease are mutually exclusive. Note: `release` comment needs to be adjusted to mention that "Release and FlagRelease are mutually exclusive" when visibility restriction will be lifted. + */ + flagRelease?: string | null; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rollout/{rollout_id\}" + */ + name?: string | null; + /** + * Optional. Output only. The direct parent rollout that this rollout is stemming from. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rollouts/{rollout_id\}" + */ + parentRollout?: string | null; + /** + * Optional. Immutable. Name of the Release that gets rolled out to target Units. Required if no other type of release is specified. + */ + release?: string | null; + /** + * Required. Immutable. Name of the RolloutKind this rollout is stemming from and adhering to. + */ + rolloutKind?: string | null; + /** + * Optional. The strategy used for executing this Rollout. This strategy will override whatever strategy is specified in the RolloutKind. If not specified on creation, the strategy from RolloutKind will be used. There are two supported values strategies which are used to control - "Google.Cloud.Simple.AllAtOnce" - "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the targeted UnitKind's Saas Locations. + */ + rolloutOrchestrationStrategy?: string | null; + /** + * Optional. Output only. The root rollout that this rollout is stemming from. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rollouts/{rollout_id\}" + */ + rootRollout?: string | null; + /** + * Optional. Output only. The time when the rollout started executing. Will be empty if the rollout hasn't started yet. + */ + startTime?: string | null; + /** + * Output only. Current state of the rollout. + */ + state?: string | null; + /** + * Output only. Human readable message indicating details about the last state transition. + */ + stateMessage?: string | null; + /** + * Optional. Output only. The time when the rollout transitioned into its current state. + */ + stateTransitionTime?: string | null; + /** + * Optional. Output only. Details about the progress of the rollout. + */ + stats?: Schema$RolloutStats; + /** + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + */ + uid?: string | null; + /** + * Optional. CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout. If not provided, the unit_filter from the RolloutKind will be used. + */ + unitFilter?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; + } + /** + * RolloutControl provides a way to request a change to the execution of a Rollout by pausing or canceling it. + */ + export interface Schema$RolloutControl { + /** + * Required. Action to be performed on the Rollout. The default behavior is to run the rollout until it naturally reaches a terminal state. + */ + action?: string | null; + /** + * Optional. Parameters for the RUN action. It is an error to specify this if the RolloutAction is not set to RUN. By default, the rollout will retry failed operations when resumed. + */ + runParams?: Schema$RunRolloutActionParams; + } + /** + * An object that describes various settings of Rollout execution. Includes built-in policies across GCP and GDC, and customizable policies. + */ + export interface Schema$RolloutKind { + /** + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + */ + annotations?: {[key: string]: string} | null; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Optional. The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. If not set, all units will be attempted to be updated regardless of the number of failures encountered. + */ + errorBudget?: Schema$ErrorBudget; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rolloutKinds/{rollout_kind_id\}" + */ + name?: string | null; + /** + * Optional. The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control - "Google.Cloud.Simple.AllAtOnce" - "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations. + */ + rolloutOrchestrationStrategy?: string | null; + /** + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + */ + uid?: string | null; + /** + * Optional. CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout. + */ + unitFilter?: string | null; + /** + * Required. Immutable. UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts. + */ + unitKind?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; + /** + * Optional. The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. + */ + updateUnitKindStrategy?: string | null; + } + /** + * RolloutStats contains information about the progress of a rollout. + */ + export interface Schema$RolloutStats { + /** + * Optional. Output only. Estimated number of units based. The estimation is computed upon creation of the rollout. + */ + estimatedTotalUnitCount?: string | null; + /** + * Optional. Output only. Unordered list. A breakdown of the progress of operations triggered by the rollout. Provides a count of Operations by their state. This can be used to determine the number of units which have been updated, or are scheduled to be updated. There will be at most one entry per group. Possible values for operation groups are: - "SCHEDULED" - "PENDING" - "RUNNING" - "SUCCEEDED" - "FAILED" - "CANCELLED" + */ + operationsByState?: Schema$Aggregate[]; + } + /** + * Parameters for the RUN action controlling the behavior of the rollout when it is resumed from a PAUSED state. + */ + export interface Schema$RunRolloutActionParams { + /** + * Required. If true, the rollout will retry failed operations when resumed. This is applicable only the current state of the Rollout is PAUSED and the requested action is RUN. + */ + retryFailedOperations?: boolean | null; + } + /** + * Saas is a representation of a SaaS service managed by the Producer. + */ + export interface Schema$Saas { + /** + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + */ + annotations?: {[key: string]: string} | null; + /** + * Output only. A set of conditions which indicate the various conditions this resource can have. + */ + conditions?: Schema$SaasCondition[]; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Output only. If the state is FAILED, the corresponding error code and message. Defaults to code=OK for all other states. + */ + error?: Schema$Status; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Optional. List of locations that the service is available in. Rollout refers to the list to generate a rollout plan. + */ + locations?: Schema$Location[]; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/saas/{saas\}" + */ + name?: string | null; + /** + * Output only. State of the Saas. It is always in ACTIVE state if the application_template is empty. + */ + state?: string | null; + /** + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + */ + uid?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; + } + /** + * SaasCondition describes the status of a Saas. + */ + export interface Schema$SaasCondition { + /** + * Required. Last time the condition transited from one status to another. + */ + lastTransitionTime?: string | null; + /** + * Required. Human readable message indicating details about the last transition. + */ + message?: string | null; + /** + * Required. Brief reason for the condition's last transition. + */ + reason?: string | null; + /** + * Required. Status of the condition. + */ + status?: string | null; + /** + * Required. Type of the condition. + */ + type?: string | null; + } + /** + * A time specification to schedule the maintenance. + */ + export interface Schema$Schedule { + /** + * Optional. Start of operation. If not set, will be set to the start of the next window. (optional) + */ + startTime?: 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; + } + /** + * Tenant represents the service producer side of an instance of the service created based on a request from a consumer. In a typical scenario a Tenant has a one-to-one mapping with a resource given out to a service consumer. Example: tenant: name: "projects/svc1/locations/loc/tenants/inst-068afff8" consumer_resource: "projects/gshoe/locations/loc/shoes/black-shoe" + */ + export interface Schema$Tenant { + /** + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + */ + annotations?: {[key: string]: string} | null; + /** + * Optional. Immutable. A reference to the consumer resource this SaaS Tenant is representing. The relationship with a consumer resource can be used by App Lifecycle Manager for retrieving consumer-defined settings and policies such as maintenance policies (using Unified Maintenance Policy API). + */ + consumerResource?: string | null; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/tenants/{tenant\}" + */ + name?: string | null; + /** + * Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with App Lifecycle Manager. Part of the App Lifecycle Manager common data model. + */ + saas?: string | null; + /** + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + */ + uid?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; + } + /** + * Input variables whose values will be passed on to dependencies + */ + export interface Schema$ToMapping { + /** + * Required. Alias of the dependency that the inputVariable will pass its value to + */ + dependency?: string | null; + /** + * Optional. Tells App Lifecycle Manager if this mapping should be used during lookup or not + */ + ignoreForLookup?: boolean | null; + /** + * Required. Name of the inputVariable on the dependency + */ + inputVariable?: string | null; + } + /** + * A unit of deployment that has its lifecycle via a CRUD API using an actuation engine under the hood (e.g. based on Terraform, Helm or a custom implementation provided by a service producer). A building block of a SaaS Tenant. + */ + export interface Schema$Unit { + /** + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + */ + annotations?: {[key: string]: string} | null; + /** + * Optional. Output only. A set of conditions which indicate the various conditions this resource can have. + */ + conditions?: Schema$UnitCondition[]; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Optional. Output only. Set of dependencies for this unit. Maximum 10. + */ + dependencies?: Schema$UnitDependency[]; + /** + * Optional. Output only. List of Units that depend on this unit. Unit can only be deprovisioned if this list is empty. Maximum 1000. + */ + dependents?: Schema$UnitDependency[]; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + /** + * Optional. Output only. Flag revisions used by this Unit. + */ + flagRevisions?: string[] | null; + /** + * Optional. Output only. Indicates the current input variables deployed by the unit + */ + inputVariables?: Schema$UnitVariable[]; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Optional. Captures requested directives for performing future maintenance on the unit. This includes a request for the unit to skip maintenance for a period of time and remain pinned to its current release as well as controls for postponing maintenance scheduled in future. + */ + maintenance?: Schema$MaintenanceSettings; + /** + * Optional. Immutable. Indicates whether the Unit life cycle is controlled by the user or by the system. Immutable once created. + */ + managementMode?: string | null; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/units/{unit\}" + */ + name?: string | null; + /** + * Optional. Output only. List of concurrent UnitOperations that are operating on this Unit. + */ + ongoingOperations?: string[] | null; + /** + * Optional. Output only. Set of key/value pairs corresponding to output variables from execution of actuation templates. The variables are declared in actuation configs (e.g in helm chart or terraform) and the values are fetched and returned by the actuation engine upon completion of execution. + */ + outputVariables?: Schema$UnitVariable[]; + /** + * Optional. Output only. List of pending (wait to be executed) UnitOperations for this unit. + */ + pendingOperations?: string[] | null; + /** + * Optional. Output only. The current Release object for this Unit. + */ + release?: string | null; + /** + * Output only. Reserved for future use. + */ + satisfiesPzi?: boolean | null; + /** + * Output only. Indicates whether the resource location satisfies Zone Separation constraints. This is false by default. + */ + satisfiesPzs?: boolean | null; + /** + * Optional. Output only. List of scheduled UnitOperations for this unit. + */ + scheduledOperations?: string[] | null; + /** + * Optional. Output only. Current lifecycle state of the resource (e.g. if it's being created or ready to use). + */ + state?: string | null; + /** + * Optional. Output only. If set, indicates the time when the system will start removing the unit. + */ + systemCleanupAt?: string | null; + /** + * Optional. Output only. Indicates the system managed state of the unit. + */ + systemManagedState?: string | null; + /** + * Optional. Reference to the Saas Tenant resource this unit belongs to. This for example informs the maintenance policies to use for scheduling future updates on a unit. (optional and immutable once created) + */ + tenant?: string | null; + /** + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + */ + uid?: string | null; + /** + * Optional. Reference to the UnitKind this Unit belongs to. Immutable once set. + */ + unitKind?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; + } + /** + * UnitCondition describes the status of an Unit. UnitCondition is individual components that contribute to an overall state. + */ + export interface Schema$UnitCondition { + /** + * Required. Last time the condition transited from one status to another. + */ + lastTransitionTime?: string | null; + /** + * Required. Human readable message indicating details about the last transition. + */ + message?: string | null; + /** + * Required. Brief reason for the condition's last transition. + */ + reason?: string | null; + /** + * Required. Status of the condition. + */ + status?: string | null; + /** + * Required. Type of the condition. + */ + type?: string | null; + } + /** + * Set of dependencies for this unit. Maximum 10. + */ + export interface Schema$UnitDependency { + /** + * Output only. Alias for the name of the dependency. + */ + alias?: string | null; + /** + * Output only. A reference to the Unit object. + */ + unit?: string | null; + } + /** + * Definition of a Unit. Units belonging to the same UnitKind are managed together; for example they follow the same release model (blueprints, versions etc.) and are typically rolled out together. + */ + export interface Schema$UnitKind { + /** + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + */ + annotations?: {[key: string]: string} | null; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Optional. Default revisions of flags for this UnitKind. Newly created units will use the flag default_flag_revisions present at the time of creation. + */ + defaultFlagRevisions?: string[] | null; + /** + * Optional. A reference to the Release object to use as default for creating new units of this UnitKind (optional). If not specified, a new unit must explicitly reference which release to use for its creation. + */ + defaultRelease?: string | null; + /** + * Optional. Immutable. List of other unit kinds that this release will depend on. Dependencies will be automatically provisioned if not found. Maximum 10. + */ + dependencies?: Schema$Dependency[]; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + /** + * Optional. List of inputVariables for this release that will either be retrieved from a dependency’s outputVariables, or will be passed on to a dependency’s inputVariables. Maximum 100. + */ + inputVariableMappings?: Schema$VariableMapping[]; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/unitKinds/{unitKind\}" + */ + name?: string | null; + /** + * Optional. List of outputVariables for this unit kind will be passed to this unit's outputVariables. Maximum 100. + */ + outputVariableMappings?: Schema$VariableMapping[]; + /** + * Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with App Lifecycle Manager. Part of the App Lifecycle Manager common data model. Immutable once set. + */ + saas?: string | null; + /** + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + */ + uid?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; + } + /** + * UnitOperation encapsulates the intent of changing/interacting with the service component represented by the specific Unit. Multiple UnitOperations can be created (requested) and scheduled in the future, however only one will be allowed to execute at a time (that can change in the future for non-mutating operations). UnitOperations allow different actors interacting with the same unit to focus only on the change they have requested. This is a base object that contains the common fields in all unit operations. Next: 22 + */ + export interface Schema$UnitOperation { + /** + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + */ + annotations?: {[key: string]: string} | null; + /** + * Optional. When true, attempt to cancel the operation. Cancellation may fail if the operation is already executing. (Optional) + */ + cancel?: boolean | null; + /** + * Optional. Output only. A set of conditions which indicate the various conditions this resource can have. + */ + conditions?: Schema$UnitOperationCondition[]; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Output only. The timestamp when the resource was marked for deletion (deletion is an asynchronous operation). + */ + deleteTime?: string | null; + deprovision?: Schema$Deprovision; + /** + * Optional. Output only. The engine state for on-going deployment engine operation(s). This field is opaque for external usage. + */ + engineState?: string | null; + /** + * Optional. Output only. UnitOperationErrorCategory describe the error category. + */ + errorCategory?: string | null; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + flagUpdate?: Schema$FlagUpdate; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/unitOperations/{unitOperation\}" + */ + name?: string | null; + /** + * Optional. Reference to parent resource: UnitOperation. If an operation needs to create other operations as part of its workflow, each of the child operations should have this field set to the parent. This can be used for tracing. (Optional) + */ + parentUnitOperation?: string | null; + provision?: Schema$Provision; + /** + * Optional. Specifies which rollout created this Unit Operation. This cannot be modified and is used for filtering purposes only. If a dependent unit and unit operation are created as part of another unit operation, they will use the same rolloutId. + */ + rollout?: string | null; + /** + * Optional. When to schedule this operation. + */ + schedule?: Schema$Schedule; + /** + * Optional. Output only. UnitOperationState describes the current state of the unit operation. + */ + state?: string | null; + /** + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + */ + uid?: string | null; + /** + * Required. Immutable. The Unit a given UnitOperation will act upon. + */ + unit?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; + upgrade?: Schema$Upgrade; + } + /** + * UnitOperationCondition describes the status of an Unit Operation. UnitOperationCondition is individual components that contribute to an overall state. + */ + export interface Schema$UnitOperationCondition { + /** + * Required. Last time the condition transited from one status to another. + */ + lastTransitionTime?: string | null; + /** + * Required. Human readable message indicating details about the last transition. + */ + message?: string | null; + /** + * Required. Brief reason for the condition's last transition. + */ + reason?: string | null; + /** + * Required. Status of the condition. + */ + status?: string | null; + /** + * Required. Type of the condition. + */ + type?: string | null; + } + /** + * UnitVariable describes a parameter for a Unit. + */ + export interface Schema$UnitVariable { + /** + * Optional. Immutable. Name of a supported variable type. Supported types are string, int, bool. + */ + type?: string | null; + /** + * Optional. String encoded value for the variable. + */ + value?: string | null; + /** + * Required. Immutable. Name of the variable from actuation configs. + */ + variable?: string | null; + } + /** + * Upgrade is the unit operation that upgrades a provisioned unit, which may also include the underlying resources represented by a Unit. Can only execute if the Unit is currently provisioned. + */ + export interface Schema$Upgrade { + /** + * Optional. Set of input variables. Maximum 100. (optional) + */ + inputVariables?: Schema$UnitVariable[]; + /** + * Optional. Reference to the Release object to use for the Unit. (optional). + */ + release?: string | null; + } + /** + * Mapping of input variables to their respective output variable for depedenencies + */ + export interface Schema$VariableMapping { + /** + * Optional. Output variables which will get their values from dependencies + */ + from?: Schema$FromMapping; + /** + * Optional. Input variables whose values will be passed on to dependencies. + */ + to?: Schema$ToMapping; + /** + * Required. name of the variable + */ + variable?: string | null; + } + + 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; + releases: Resource$Projects$Locations$Releases; + rolloutKinds: Resource$Projects$Locations$Rolloutkinds; + rollouts: Resource$Projects$Locations$Rollouts; + saas: Resource$Projects$Locations$Saas; + tenants: Resource$Projects$Locations$Tenants; + unitKinds: Resource$Projects$Locations$Unitkinds; + unitOperations: Resource$Projects$Locations$Unitoperations; + units: Resource$Projects$Locations$Units; + constructor(context: APIRequestContext) { + this.context = context; + this.releases = new Resource$Projects$Locations$Releases(this.context); + this.rolloutKinds = new Resource$Projects$Locations$Rolloutkinds( + this.context + ); + this.rollouts = new Resource$Projects$Locations$Rollouts(this.context); + this.saas = new Resource$Projects$Locations$Saas(this.context); + this.tenants = new Resource$Projects$Locations$Tenants(this.context); + this.unitKinds = new Resource$Projects$Locations$Unitkinds(this.context); + this.unitOperations = new Resource$Projects$Locations$Unitoperations( + this.context + ); + this.units = new Resource$Projects$Locations$Units(this.context); + } + + /** + * Gets information about a location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.get({ + * // Resource name for the location. + * name: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "displayName": "my_displayName", + * // "labels": {}, + * // "locationId": "my_locationId", + * // "metadata": {}, + * // "name": "my_name" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Get, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + 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. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.list({ + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * extraLocationTypes: 'placeholder-value', + * // 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: 'placeholder-value', + * // The resource that owns the locations collection, if applicable. + * name: 'projects/my-project', + * // The maximum number of results to return. If not set, the service selects a default. + * pageSize: 'placeholder-value', + * // A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "locations": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$List, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}/locations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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 { + /** + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + */ + extraLocationTypes?: string[]; + /** + * 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$Releases { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a new release. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.releases.create({ + * // Required. The parent of the release. + * parent: 'projects/my-project/locations/my-location', + * // Required. The ID value for the new release. + * releaseId: 'placeholder-value', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "blueprint": {}, + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "inputVariableDefaults": [], + * // "inputVariables": [], + * // "labels": {}, + * // "name": "my_name", + * // "outputVariables": [], + * // "releaseRequirements": {}, + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "blueprint": {}, + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "inputVariableDefaults": [], + * // "inputVariables": [], + * // "labels": {}, + * // "name": "my_name", + * // "outputVariables": [], + * // "releaseRequirements": {}, + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Releases$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Releases$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Releases$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Releases$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Releases$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Releases$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Releases$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Releases$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/releases').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a single release. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.releases.delete({ + * // The etag known to the client for the expected state of the release. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the release. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + * etag: 'placeholder-value', + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/releases/my-release', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Releases$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Releases$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Releases$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Releases$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Releases$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Releases$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Releases$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Releases$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a single release. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.releases.get({ + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/releases/my-release', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "blueprint": {}, + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "inputVariableDefaults": [], + * // "inputVariables": [], + * // "labels": {}, + * // "name": "my_name", + * // "outputVariables": [], + * // "releaseRequirements": {}, + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Releases$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Releases$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Releases$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Releases$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Releases$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Releases$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Releases$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Releases$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a collection of releases. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.releases.list({ + * // Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // The maximum number of releases to send per page. + * pageSize: 'placeholder-value', + * // The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent of the release. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "releases": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Releases$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Releases$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Releases$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Releases$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Releases$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Releases$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Releases$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Releases$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/releases').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Update a single release. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.releases.patch({ + * // Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/releases/{release\}" + * name: 'projects/my-project/locations/my-location/releases/my-release', + * // 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: 'placeholder-value', + * // Field mask is used to specify the fields to be overwritten in the Release 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 in the Release will be overwritten. + * updateMask: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "blueprint": {}, + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "inputVariableDefaults": [], + * // "inputVariables": [], + * // "labels": {}, + * // "name": "my_name", + * // "outputVariables": [], + * // "releaseRequirements": {}, + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "blueprint": {}, + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "inputVariableDefaults": [], + * // "inputVariables": [], + * // "labels": {}, + * // "name": "my_name", + * // "outputVariables": [], + * // "releaseRequirements": {}, + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Releases$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Releases$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Releases$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Releases$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Releases$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Releases$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Releases$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Releases$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Releases$Create extends StandardParameters { + /** + * Required. The parent of the release. + */ + parent?: string; + /** + * Required. The ID value for the new release. + */ + releaseId?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Release; + } + export interface Params$Resource$Projects$Locations$Releases$Delete extends StandardParameters { + /** + * The etag known to the client for the expected state of the release. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the release. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + */ + etag?: string; + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Releases$Get extends StandardParameters { + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Releases$List extends StandardParameters { + /** + * Filter the list as specified in https://google.aip.dev/160. + */ + filter?: string; + /** + * Order results as specified in https://google.aip.dev/132. + */ + orderBy?: string; + /** + * The maximum number of releases to send per page. + */ + pageSize?: number; + /** + * The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent of the release. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Releases$Patch extends StandardParameters { + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/releases/{release\}" + */ + name?: string; + /** + * 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; + /** + * Field mask is used to specify the fields to be overwritten in the Release 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 in the Release will be overwritten. + */ + updateMask?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Release; + } + + export class Resource$Projects$Locations$Rolloutkinds { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a new rollout kind. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.rolloutKinds.create({ + * // Required. The parent of the rollout kind. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // Required. The ID value for the new rollout kind. + * rolloutKindId: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "errorBudget": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", + * // "uid": "my_uid", + * // "unitFilter": "my_unitFilter", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime", + * // "updateUnitKindStrategy": "my_updateUnitKindStrategy" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "errorBudget": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", + * // "uid": "my_uid", + * // "unitFilter": "my_unitFilter", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime", + * // "updateUnitKindStrategy": "my_updateUnitKindStrategy" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Rolloutkinds$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Rolloutkinds$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Rolloutkinds$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Rolloutkinds$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Rolloutkinds$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Rolloutkinds$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Rolloutkinds$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Rolloutkinds$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/rolloutKinds').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a single rollout kind. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.rolloutKinds.delete({ + * // The etag known to the client for the expected state of the rollout kind. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the rollout kind. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + * etag: 'placeholder-value', + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/rolloutKinds/my-rolloutKind', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Rolloutkinds$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Rolloutkinds$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Rolloutkinds$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Rolloutkinds$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Rolloutkinds$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Rolloutkinds$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Rolloutkinds$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Rolloutkinds$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a single rollout kind. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.rolloutKinds.get({ + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/rolloutKinds/my-rolloutKind', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "errorBudget": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", + * // "uid": "my_uid", + * // "unitFilter": "my_unitFilter", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime", + * // "updateUnitKindStrategy": "my_updateUnitKindStrategy" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Rolloutkinds$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Rolloutkinds$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Rolloutkinds$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Rolloutkinds$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Rolloutkinds$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Rolloutkinds$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Rolloutkinds$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Rolloutkinds$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a collection of rollout kinds. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.rolloutKinds.list({ + * // Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // The maximum number of rollout kinds to send per page. + * pageSize: 'placeholder-value', + * // The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent of the rollout kind. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "rolloutKinds": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Rolloutkinds$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Rolloutkinds$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Rolloutkinds$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Rolloutkinds$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Rolloutkinds$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Rolloutkinds$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Rolloutkinds$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Rolloutkinds$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/rolloutKinds').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Update a single rollout kind. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.rolloutKinds.patch({ + * // Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rolloutKinds/{rollout_kind_id\}" + * name: 'projects/my-project/locations/my-location/rolloutKinds/my-rolloutKind', + * // 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: 'placeholder-value', + * // Field mask is used to specify the fields to be overwritten in the RolloutKind 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 in the RolloutKind will be overwritten. + * updateMask: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "errorBudget": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", + * // "uid": "my_uid", + * // "unitFilter": "my_unitFilter", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime", + * // "updateUnitKindStrategy": "my_updateUnitKindStrategy" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "errorBudget": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", + * // "uid": "my_uid", + * // "unitFilter": "my_unitFilter", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime", + * // "updateUnitKindStrategy": "my_updateUnitKindStrategy" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Rolloutkinds$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Rolloutkinds$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Rolloutkinds$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Rolloutkinds$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Rolloutkinds$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Rolloutkinds$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Rolloutkinds$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Rolloutkinds$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Rolloutkinds$Create extends StandardParameters { + /** + * Required. The parent of the rollout kind. + */ + parent?: string; + /** + * 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. The ID value for the new rollout kind. + */ + rolloutKindId?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$RolloutKind; + } + export interface Params$Resource$Projects$Locations$Rolloutkinds$Delete extends StandardParameters { + /** + * The etag known to the client for the expected state of the rollout kind. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the rollout kind. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + */ + etag?: string; + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Rolloutkinds$Get extends StandardParameters { + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Rolloutkinds$List extends StandardParameters { + /** + * Filter the list as specified in https://google.aip.dev/160. + */ + filter?: string; + /** + * Order results as specified in https://google.aip.dev/132. + */ + orderBy?: string; + /** + * The maximum number of rollout kinds to send per page. + */ + pageSize?: number; + /** + * The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent of the rollout kind. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Rolloutkinds$Patch extends StandardParameters { + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rolloutKinds/{rollout_kind_id\}" + */ + name?: string; + /** + * 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; + /** + * Field mask is used to specify the fields to be overwritten in the RolloutKind 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 in the RolloutKind will be overwritten. + */ + updateMask?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$RolloutKind; + } + + export class Resource$Projects$Locations$Rollouts { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a new rollout. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.rollouts.create({ + * // Required. The parent of the rollout. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // Required. The ID value for the new rollout. + * rolloutId: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "control": {}, + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "effectiveUnitFilter": "my_effectiveUnitFilter", + * // "endTime": "my_endTime", + * // "etag": "my_etag", + * // "flagRelease": "my_flagRelease", + * // "labels": {}, + * // "name": "my_name", + * // "parentRollout": "my_parentRollout", + * // "release": "my_release", + * // "rolloutKind": "my_rolloutKind", + * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", + * // "rootRollout": "my_rootRollout", + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "stateMessage": "my_stateMessage", + * // "stateTransitionTime": "my_stateTransitionTime", + * // "stats": {}, + * // "uid": "my_uid", + * // "unitFilter": "my_unitFilter", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "control": {}, + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "effectiveUnitFilter": "my_effectiveUnitFilter", + * // "endTime": "my_endTime", + * // "etag": "my_etag", + * // "flagRelease": "my_flagRelease", + * // "labels": {}, + * // "name": "my_name", + * // "parentRollout": "my_parentRollout", + * // "release": "my_release", + * // "rolloutKind": "my_rolloutKind", + * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", + * // "rootRollout": "my_rootRollout", + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "stateMessage": "my_stateMessage", + * // "stateTransitionTime": "my_stateTransitionTime", + * // "stats": {}, + * // "uid": "my_uid", + * // "unitFilter": "my_unitFilter", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Rollouts$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Rollouts$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Rollouts$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Rollouts$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Rollouts$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Rollouts$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Rollouts$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Rollouts$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/rollouts').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a single rollout. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.rollouts.delete({ + * // The etag known to the client for the expected state of the rollout. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the rollout. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + * etag: 'placeholder-value', + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/rollouts/my-rollout', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Rollouts$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Rollouts$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Rollouts$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Rollouts$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Rollouts$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Rollouts$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Rollouts$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Rollouts$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a single rollout. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.rollouts.get({ + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/rollouts/my-rollout', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "control": {}, + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "effectiveUnitFilter": "my_effectiveUnitFilter", + * // "endTime": "my_endTime", + * // "etag": "my_etag", + * // "flagRelease": "my_flagRelease", + * // "labels": {}, + * // "name": "my_name", + * // "parentRollout": "my_parentRollout", + * // "release": "my_release", + * // "rolloutKind": "my_rolloutKind", + * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", + * // "rootRollout": "my_rootRollout", + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "stateMessage": "my_stateMessage", + * // "stateTransitionTime": "my_stateTransitionTime", + * // "stats": {}, + * // "uid": "my_uid", + * // "unitFilter": "my_unitFilter", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Rollouts$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Rollouts$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Rollouts$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Rollouts$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Rollouts$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Rollouts$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Rollouts$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Rollouts$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a collection of rollouts. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.rollouts.list({ + * // Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // The maximum number of rollouts to send per page. + * pageSize: 'placeholder-value', + * // The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent of the rollout. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "rollouts": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Rollouts$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Rollouts$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Rollouts$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Rollouts$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Rollouts$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Rollouts$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Rollouts$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Rollouts$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/rollouts').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Update a single rollout. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.rollouts.patch({ + * // Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rollout/{rollout_id\}" + * name: 'projects/my-project/locations/my-location/rollouts/my-rollout', + * // 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: 'placeholder-value', + * // Field mask is used to specify the fields to be overwritten in the Rollout 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 in the Rollout will be overwritten. + * updateMask: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "control": {}, + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "effectiveUnitFilter": "my_effectiveUnitFilter", + * // "endTime": "my_endTime", + * // "etag": "my_etag", + * // "flagRelease": "my_flagRelease", + * // "labels": {}, + * // "name": "my_name", + * // "parentRollout": "my_parentRollout", + * // "release": "my_release", + * // "rolloutKind": "my_rolloutKind", + * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", + * // "rootRollout": "my_rootRollout", + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "stateMessage": "my_stateMessage", + * // "stateTransitionTime": "my_stateTransitionTime", + * // "stats": {}, + * // "uid": "my_uid", + * // "unitFilter": "my_unitFilter", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "control": {}, + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "effectiveUnitFilter": "my_effectiveUnitFilter", + * // "endTime": "my_endTime", + * // "etag": "my_etag", + * // "flagRelease": "my_flagRelease", + * // "labels": {}, + * // "name": "my_name", + * // "parentRollout": "my_parentRollout", + * // "release": "my_release", + * // "rolloutKind": "my_rolloutKind", + * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", + * // "rootRollout": "my_rootRollout", + * // "startTime": "my_startTime", + * // "state": "my_state", + * // "stateMessage": "my_stateMessage", + * // "stateTransitionTime": "my_stateTransitionTime", + * // "stats": {}, + * // "uid": "my_uid", + * // "unitFilter": "my_unitFilter", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Rollouts$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Rollouts$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Rollouts$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Rollouts$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Rollouts$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Rollouts$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Rollouts$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Rollouts$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Rollouts$Create extends StandardParameters { + /** + * Required. The parent of the rollout. + */ + parent?: string; + /** + * 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. The ID value for the new rollout. + */ + rolloutId?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Rollout; + } + export interface Params$Resource$Projects$Locations$Rollouts$Delete extends StandardParameters { + /** + * The etag known to the client for the expected state of the rollout. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the rollout. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + */ + etag?: string; + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Rollouts$Get extends StandardParameters { + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Rollouts$List extends StandardParameters { + /** + * Filter the list as specified in https://google.aip.dev/160. + */ + filter?: string; + /** + * Order results as specified in https://google.aip.dev/132. + */ + orderBy?: string; + /** + * The maximum number of rollouts to send per page. + */ + pageSize?: number; + /** + * The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent of the rollout. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Rollouts$Patch extends StandardParameters { + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rollout/{rollout_id\}" + */ + name?: string; + /** + * 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; + /** + * Field mask is used to specify the fields to be overwritten in the Rollout 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 in the Rollout will be overwritten. + */ + updateMask?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Rollout; + } + + export class Resource$Projects$Locations$Saas { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a new saas. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.saas.create({ + * // Required. The parent of the saas. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // Required. The ID value for the new saas. + * saasId: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "error": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "locations": [], + * // "name": "my_name", + * // "state": "my_state", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "error": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "locations": [], + * // "name": "my_name", + * // "state": "my_state", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Saas$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Saas$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Saas$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Saas$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Saas$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Saas$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Saas$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Saas$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/saas').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a single saas. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.saas.delete({ + * // The etag known to the client for the expected state of the saas. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the saas. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + * etag: 'placeholder-value', + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/saas/my-saa', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Saas$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Saas$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Saas$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Saas$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Saas$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Saas$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Saas$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Saas$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a single saas. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.saas.get({ + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/saas/my-saa', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "error": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "locations": [], + * // "name": "my_name", + * // "state": "my_state", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Saas$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Saas$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Saas$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Saas$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Saas$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Saas$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Saas$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Saas$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a collection of saas. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.saas.list({ + * // Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // The maximum number of saas to send per page. + * pageSize: 'placeholder-value', + * // The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent of the saas. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "saas": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Saas$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Saas$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Saas$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Saas$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Saas$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Saas$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Saas$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Saas$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/saas').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Update a single saas. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.saas.patch({ + * // Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/saas/{saas\}" + * name: 'projects/my-project/locations/my-location/saas/my-saa', + * // 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: 'placeholder-value', + * // Field mask is used to specify the fields to be overwritten in the Saas 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 in the Saas will be overwritten. + * updateMask: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "error": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "locations": [], + * // "name": "my_name", + * // "state": "my_state", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "error": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "locations": [], + * // "name": "my_name", + * // "state": "my_state", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Saas$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Saas$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Saas$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Saas$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Saas$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Saas$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Saas$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Saas$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Saas$Create extends StandardParameters { + /** + * Required. The parent of the saas. + */ + parent?: string; + /** + * 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. The ID value for the new saas. + */ + saasId?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Saas; + } + export interface Params$Resource$Projects$Locations$Saas$Delete extends StandardParameters { + /** + * The etag known to the client for the expected state of the saas. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the saas. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + */ + etag?: string; + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Saas$Get extends StandardParameters { + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Saas$List extends StandardParameters { + /** + * Filter the list as specified in https://google.aip.dev/160. + */ + filter?: string; + /** + * Order results as specified in https://google.aip.dev/132. + */ + orderBy?: string; + /** + * The maximum number of saas to send per page. + */ + pageSize?: number; + /** + * The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent of the saas. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Saas$Patch extends StandardParameters { + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/saas/{saas\}" + */ + name?: string; + /** + * 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; + /** + * Field mask is used to specify the fields to be overwritten in the Saas 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 in the Saas will be overwritten. + */ + updateMask?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Saas; + } + + export class Resource$Projects$Locations$Tenants { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a new tenant. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.tenants.create({ + * // Required. The parent of the tenant. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // Required. The ID value for the new tenant. + * tenantId: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "consumerResource": "my_consumerResource", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "saas": "my_saas", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "consumerResource": "my_consumerResource", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "saas": "my_saas", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tenants$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Tenants$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Tenants$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Tenants$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Tenants$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tenants$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tenants$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Tenants$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/tenants').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a single tenant. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.tenants.delete({ + * // The etag known to the client for the expected state of the tenant. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the tenant. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + * etag: 'placeholder-value', + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/tenants/my-tenant', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tenants$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Tenants$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Tenants$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tenants$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Tenants$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tenants$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tenants$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Tenants$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a single tenant. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.tenants.get({ + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/tenants/my-tenant', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "consumerResource": "my_consumerResource", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "saas": "my_saas", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tenants$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Tenants$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Tenants$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tenants$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Tenants$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tenants$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tenants$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Tenants$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a collection of tenants. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.tenants.list({ + * // Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // The maximum number of tenants to send per page. + * pageSize: 'placeholder-value', + * // The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent of the tenant. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "tenants": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tenants$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Tenants$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Tenants$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tenants$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Tenants$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tenants$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tenants$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Tenants$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/tenants').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Update a single tenant. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.tenants.patch({ + * // Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/tenants/{tenant\}" + * name: 'projects/my-project/locations/my-location/tenants/my-tenant', + * // 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: 'placeholder-value', + * // Field mask is used to specify the fields to be overwritten in the Tenant 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 in the Tenant will be overwritten. + * updateMask: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "consumerResource": "my_consumerResource", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "saas": "my_saas", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "consumerResource": "my_consumerResource", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "saas": "my_saas", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Tenants$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Tenants$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Tenants$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Tenants$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Tenants$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Tenants$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Tenants$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Tenants$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Tenants$Create extends StandardParameters { + /** + * Required. The parent of the tenant. + */ + parent?: string; + /** + * 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. The ID value for the new tenant. + */ + tenantId?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Tenant; + } + export interface Params$Resource$Projects$Locations$Tenants$Delete extends StandardParameters { + /** + * The etag known to the client for the expected state of the tenant. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the tenant. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + */ + etag?: string; + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Tenants$Get extends StandardParameters { + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Tenants$List extends StandardParameters { + /** + * Filter the list as specified in https://google.aip.dev/160. + */ + filter?: string; + /** + * Order results as specified in https://google.aip.dev/132. + */ + orderBy?: string; + /** + * The maximum number of tenants to send per page. + */ + pageSize?: number; + /** + * The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent of the tenant. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Tenants$Patch extends StandardParameters { + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/tenants/{tenant\}" + */ + name?: string; + /** + * 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; + /** + * Field mask is used to specify the fields to be overwritten in the Tenant 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 in the Tenant will be overwritten. + */ + updateMask?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Tenant; + } + + export class Resource$Projects$Locations$Unitkinds { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a new unit kind. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.unitKinds.create({ + * // Required. The parent of the unit kind. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // Required. The ID value for the new unit kind. + * unitKindId: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "defaultFlagRevisions": [], + * // "defaultRelease": "my_defaultRelease", + * // "dependencies": [], + * // "etag": "my_etag", + * // "inputVariableMappings": [], + * // "labels": {}, + * // "name": "my_name", + * // "outputVariableMappings": [], + * // "saas": "my_saas", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "defaultFlagRevisions": [], + * // "defaultRelease": "my_defaultRelease", + * // "dependencies": [], + * // "etag": "my_etag", + * // "inputVariableMappings": [], + * // "labels": {}, + * // "name": "my_name", + * // "outputVariableMappings": [], + * // "saas": "my_saas", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Unitkinds$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Unitkinds$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Unitkinds$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Unitkinds$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Unitkinds$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Unitkinds$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Unitkinds$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Unitkinds$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/unitKinds').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a single unit kind. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.unitKinds.delete({ + * // The etag known to the client for the expected state of the unit kind. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit kind. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + * etag: 'placeholder-value', + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/unitKinds/my-unitKind', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Unitkinds$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Unitkinds$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Unitkinds$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Unitkinds$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Unitkinds$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Unitkinds$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Unitkinds$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Unitkinds$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a single unit kind. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.unitKinds.get({ + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/unitKinds/my-unitKind', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "defaultFlagRevisions": [], + * // "defaultRelease": "my_defaultRelease", + * // "dependencies": [], + * // "etag": "my_etag", + * // "inputVariableMappings": [], + * // "labels": {}, + * // "name": "my_name", + * // "outputVariableMappings": [], + * // "saas": "my_saas", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Unitkinds$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Unitkinds$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Unitkinds$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Unitkinds$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Unitkinds$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Unitkinds$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Unitkinds$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Unitkinds$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a collection of unit kinds. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.unitKinds.list({ + * // Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // The maximum number of unit kinds to send per page. + * pageSize: 'placeholder-value', + * // The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent of the unit kind. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "unitKinds": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Unitkinds$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Unitkinds$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Unitkinds$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Unitkinds$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Unitkinds$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Unitkinds$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Unitkinds$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Unitkinds$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/unitKinds').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Update a single unit kind. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.unitKinds.patch({ + * // Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/unitKinds/{unitKind\}" + * name: 'projects/my-project/locations/my-location/unitKinds/my-unitKind', + * // 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: 'placeholder-value', + * // Field mask is used to specify the fields to be overwritten in the UnitKind 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 in the UnitKind will be overwritten. + * updateMask: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "defaultFlagRevisions": [], + * // "defaultRelease": "my_defaultRelease", + * // "dependencies": [], + * // "etag": "my_etag", + * // "inputVariableMappings": [], + * // "labels": {}, + * // "name": "my_name", + * // "outputVariableMappings": [], + * // "saas": "my_saas", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "defaultFlagRevisions": [], + * // "defaultRelease": "my_defaultRelease", + * // "dependencies": [], + * // "etag": "my_etag", + * // "inputVariableMappings": [], + * // "labels": {}, + * // "name": "my_name", + * // "outputVariableMappings": [], + * // "saas": "my_saas", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Unitkinds$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Unitkinds$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Unitkinds$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Unitkinds$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Unitkinds$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Unitkinds$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Unitkinds$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Unitkinds$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Unitkinds$Create extends StandardParameters { + /** + * Required. The parent of the unit kind. + */ + parent?: string; + /** + * 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. The ID value for the new unit kind. + */ + unitKindId?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$UnitKind; + } + export interface Params$Resource$Projects$Locations$Unitkinds$Delete extends StandardParameters { + /** + * The etag known to the client for the expected state of the unit kind. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit kind. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + */ + etag?: string; + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Unitkinds$Get extends StandardParameters { + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Unitkinds$List extends StandardParameters { + /** + * Filter the list as specified in https://google.aip.dev/160. + */ + filter?: string; + /** + * Order results as specified in https://google.aip.dev/132. + */ + orderBy?: string; + /** + * The maximum number of unit kinds to send per page. + */ + pageSize?: number; + /** + * The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent of the unit kind. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Unitkinds$Patch extends StandardParameters { + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/unitKinds/{unitKind\}" + */ + name?: string; + /** + * 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; + /** + * Field mask is used to specify the fields to be overwritten in the UnitKind 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 in the UnitKind will be overwritten. + */ + updateMask?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$UnitKind; + } + + export class Resource$Projects$Locations$Unitoperations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a new unit operation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.unitOperations.create({ + * // Required. The parent of the unit operation. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // Required. The ID value for the new unit operation. + * unitOperationId: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "cancel": false, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "deprovision": {}, + * // "engineState": "my_engineState", + * // "errorCategory": "my_errorCategory", + * // "etag": "my_etag", + * // "flagUpdate": {}, + * // "labels": {}, + * // "name": "my_name", + * // "parentUnitOperation": "my_parentUnitOperation", + * // "provision": {}, + * // "rollout": "my_rollout", + * // "schedule": {}, + * // "state": "my_state", + * // "uid": "my_uid", + * // "unit": "my_unit", + * // "updateTime": "my_updateTime", + * // "upgrade": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "cancel": false, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "deprovision": {}, + * // "engineState": "my_engineState", + * // "errorCategory": "my_errorCategory", + * // "etag": "my_etag", + * // "flagUpdate": {}, + * // "labels": {}, + * // "name": "my_name", + * // "parentUnitOperation": "my_parentUnitOperation", + * // "provision": {}, + * // "rollout": "my_rollout", + * // "schedule": {}, + * // "state": "my_state", + * // "uid": "my_uid", + * // "unit": "my_unit", + * // "updateTime": "my_updateTime", + * // "upgrade": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Unitoperations$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Unitoperations$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Unitoperations$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Unitoperations$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Unitoperations$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Unitoperations$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Unitoperations$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Unitoperations$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/unitOperations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a single unit operation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.unitOperations.delete({ + * // The etag known to the client for the expected state of the unit operation. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit operation. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + * etag: 'placeholder-value', + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/unitOperations/my-unitOperation', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Unitoperations$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Unitoperations$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Unitoperations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Unitoperations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Unitoperations$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Unitoperations$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Unitoperations$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Unitoperations$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a single unit operation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.unitOperations.get({ + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/unitOperations/my-unitOperation', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "cancel": false, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "deprovision": {}, + * // "engineState": "my_engineState", + * // "errorCategory": "my_errorCategory", + * // "etag": "my_etag", + * // "flagUpdate": {}, + * // "labels": {}, + * // "name": "my_name", + * // "parentUnitOperation": "my_parentUnitOperation", + * // "provision": {}, + * // "rollout": "my_rollout", + * // "schedule": {}, + * // "state": "my_state", + * // "uid": "my_uid", + * // "unit": "my_unit", + * // "updateTime": "my_updateTime", + * // "upgrade": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Unitoperations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Unitoperations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Unitoperations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Unitoperations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Unitoperations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Unitoperations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Unitoperations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Unitoperations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a collection of unit operations. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.unitOperations.list({ + * // Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // The maximum number of unit operations to send per page. + * pageSize: 'placeholder-value', + * // The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent of the unit operation. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "unitOperations": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Unitoperations$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Unitoperations$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Unitoperations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Unitoperations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Unitoperations$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Unitoperations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Unitoperations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Unitoperations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/unitOperations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Update a single unit operation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.unitOperations.patch({ + * // Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/unitOperations/{unitOperation\}" + * name: 'projects/my-project/locations/my-location/unitOperations/my-unitOperation', + * // 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: 'placeholder-value', + * // Field mask is used to specify the fields to be overwritten in the UnitOperation 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 in the UnitOperation will be overwritten. + * updateMask: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "cancel": false, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "deprovision": {}, + * // "engineState": "my_engineState", + * // "errorCategory": "my_errorCategory", + * // "etag": "my_etag", + * // "flagUpdate": {}, + * // "labels": {}, + * // "name": "my_name", + * // "parentUnitOperation": "my_parentUnitOperation", + * // "provision": {}, + * // "rollout": "my_rollout", + * // "schedule": {}, + * // "state": "my_state", + * // "uid": "my_uid", + * // "unit": "my_unit", + * // "updateTime": "my_updateTime", + * // "upgrade": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "cancel": false, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "deprovision": {}, + * // "engineState": "my_engineState", + * // "errorCategory": "my_errorCategory", + * // "etag": "my_etag", + * // "flagUpdate": {}, + * // "labels": {}, + * // "name": "my_name", + * // "parentUnitOperation": "my_parentUnitOperation", + * // "provision": {}, + * // "rollout": "my_rollout", + * // "schedule": {}, + * // "state": "my_state", + * // "uid": "my_uid", + * // "unit": "my_unit", + * // "updateTime": "my_updateTime", + * // "upgrade": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Unitoperations$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Unitoperations$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Unitoperations$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Unitoperations$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Unitoperations$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Unitoperations$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Unitoperations$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Unitoperations$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Unitoperations$Create extends StandardParameters { + /** + * Required. The parent of the unit operation. + */ + parent?: string; + /** + * 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. The ID value for the new unit operation. + */ + unitOperationId?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$UnitOperation; + } + export interface Params$Resource$Projects$Locations$Unitoperations$Delete extends StandardParameters { + /** + * The etag known to the client for the expected state of the unit operation. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit operation. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + */ + etag?: string; + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Unitoperations$Get extends StandardParameters { + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Unitoperations$List extends StandardParameters { + /** + * Filter the list as specified in https://google.aip.dev/160. + */ + filter?: string; + /** + * Order results as specified in https://google.aip.dev/132. + */ + orderBy?: string; + /** + * The maximum number of unit operations to send per page. + */ + pageSize?: number; + /** + * The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent of the unit operation. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Unitoperations$Patch extends StandardParameters { + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/unitOperations/{unitOperation\}" + */ + name?: string; + /** + * 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; + /** + * Field mask is used to specify the fields to be overwritten in the UnitOperation 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 in the UnitOperation will be overwritten. + */ + updateMask?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$UnitOperation; + } + + export class Resource$Projects$Locations$Units { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a new unit. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.units.create({ + * // Required. The parent of the unit. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // Required. The ID value for the new unit. + * unitId: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "dependencies": [], + * // "dependents": [], + * // "etag": "my_etag", + * // "flagRevisions": [], + * // "inputVariables": [], + * // "labels": {}, + * // "maintenance": {}, + * // "managementMode": "my_managementMode", + * // "name": "my_name", + * // "ongoingOperations": [], + * // "outputVariables": [], + * // "pendingOperations": [], + * // "release": "my_release", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "scheduledOperations": [], + * // "state": "my_state", + * // "systemCleanupAt": "my_systemCleanupAt", + * // "systemManagedState": "my_systemManagedState", + * // "tenant": "my_tenant", + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "dependencies": [], + * // "dependents": [], + * // "etag": "my_etag", + * // "flagRevisions": [], + * // "inputVariables": [], + * // "labels": {}, + * // "maintenance": {}, + * // "managementMode": "my_managementMode", + * // "name": "my_name", + * // "ongoingOperations": [], + * // "outputVariables": [], + * // "pendingOperations": [], + * // "release": "my_release", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "scheduledOperations": [], + * // "state": "my_state", + * // "systemCleanupAt": "my_systemCleanupAt", + * // "systemManagedState": "my_systemManagedState", + * // "tenant": "my_tenant", + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Units$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Units$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Units$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Units$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Units$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Units$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Units$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Units$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/units').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a single unit. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.units.delete({ + * // The etag known to the client for the expected state of the unit. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + * etag: 'placeholder-value', + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/units/my-unit', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Units$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Units$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Units$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Units$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Units$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Units$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Units$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Units$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a single unit. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.units.get({ + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/units/my-unit', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "dependencies": [], + * // "dependents": [], + * // "etag": "my_etag", + * // "flagRevisions": [], + * // "inputVariables": [], + * // "labels": {}, + * // "maintenance": {}, + * // "managementMode": "my_managementMode", + * // "name": "my_name", + * // "ongoingOperations": [], + * // "outputVariables": [], + * // "pendingOperations": [], + * // "release": "my_release", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "scheduledOperations": [], + * // "state": "my_state", + * // "systemCleanupAt": "my_systemCleanupAt", + * // "systemManagedState": "my_systemManagedState", + * // "tenant": "my_tenant", + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Units$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Units$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Units$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Units$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Units$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Units$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Units$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Units$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a collection of units. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.units.list({ + * // Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // The maximum number of units to send per page. + * pageSize: 'placeholder-value', + * // The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent of the unit. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "units": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Units$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Units$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Units$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Units$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Units$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Units$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Units$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Units$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/units').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Update a single unit. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.units.patch({ + * // Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/units/{unit\}" + * name: 'projects/my-project/locations/my-location/units/my-unit', + * // 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: 'placeholder-value', + * // Field mask is used to specify the fields to be overwritten in the Unit 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 in the Unit will be overwritten. + * updateMask: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "dependencies": [], + * // "dependents": [], + * // "etag": "my_etag", + * // "flagRevisions": [], + * // "inputVariables": [], + * // "labels": {}, + * // "maintenance": {}, + * // "managementMode": "my_managementMode", + * // "name": "my_name", + * // "ongoingOperations": [], + * // "outputVariables": [], + * // "pendingOperations": [], + * // "release": "my_release", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "scheduledOperations": [], + * // "state": "my_state", + * // "systemCleanupAt": "my_systemCleanupAt", + * // "systemManagedState": "my_systemManagedState", + * // "tenant": "my_tenant", + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "conditions": [], + * // "createTime": "my_createTime", + * // "dependencies": [], + * // "dependents": [], + * // "etag": "my_etag", + * // "flagRevisions": [], + * // "inputVariables": [], + * // "labels": {}, + * // "maintenance": {}, + * // "managementMode": "my_managementMode", + * // "name": "my_name", + * // "ongoingOperations": [], + * // "outputVariables": [], + * // "pendingOperations": [], + * // "release": "my_release", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "scheduledOperations": [], + * // "state": "my_state", + * // "systemCleanupAt": "my_systemCleanupAt", + * // "systemManagedState": "my_systemManagedState", + * // "tenant": "my_tenant", + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Units$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Units$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Units$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Units$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Units$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Units$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Units$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Units$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Units$Create extends StandardParameters { + /** + * Required. The parent of the unit. + */ + parent?: string; + /** + * 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. The ID value for the new unit. + */ + unitId?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Unit; + } + export interface Params$Resource$Projects$Locations$Units$Delete extends StandardParameters { + /** + * The etag known to the client for the expected state of the unit. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + */ + etag?: string; + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Units$Get extends StandardParameters { + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Units$List extends StandardParameters { + /** + * Filter the list as specified in https://google.aip.dev/160. + */ + filter?: string; + /** + * Order results as specified in https://google.aip.dev/132. + */ + orderBy?: string; + /** + * The maximum number of units to send per page. + */ + pageSize?: number; + /** + * The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent of the unit. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Units$Patch extends StandardParameters { + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/units/{unit\}" + */ + name?: string; + /** + * 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; + /** + * Field mask is used to specify the fields to be overwritten in the Unit 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 in the Unit will be overwritten. + */ + updateMask?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Unit; + } +} diff --git a/src/apis/saasservicemgmt/v1beta1.ts b/src/apis/saasservicemgmt/v1beta1.ts index eca8d03d4fa..89fe095b272 100644 --- a/src/apis/saasservicemgmt/v1beta1.ts +++ b/src/apis/saasservicemgmt/v1beta1.ts @@ -100,7 +100,7 @@ export namespace saasservicemgmt_v1beta1 { } /** - * SaaS Runtime API + * App Lifecycle Manager API * * Model, deploy, and operate your SaaS at scale. * @@ -137,6 +137,53 @@ export namespace saasservicemgmt_v1beta1 { */ group?: string | null; } + /** + * Allocation defines a set of weighted flag variants, specifying how traffic is split based on the randomization unit. + */ + export interface Schema$Allocation { + /** + * Optional. Description of the allocation. Max length: 500 bytes. + */ + description?: string | null; + /** + * Required. Allocation ID. Max length: 128 bytes. + */ + id?: string | null; + /** + * Required. Key of the context attribute that is used for traffic splitting. + */ + randomizedOn?: string | null; + /** + * Required. Slots defines the weighted distribution of variants. + */ + slots?: Schema$AllocationSlot[]; + } + /** + * AllocationSlot specifies a variant and the proportion of traffic allocated to it. + */ + export interface Schema$AllocationSlot { + /** + * Required. Variant of the allocation slot. + */ + variant?: string | null; + /** + * Required. Weight defines the proportion of traffic to allocate to the variant, relative to other slots in the same allocation. + */ + weight?: number | null; + } + /** + * AppParams contains the parameters for creating an AppHub Application. + */ + export interface Schema$AppParams { + /** + * Grouping used to construct the name of the AppHub Application. Multiple UnitKinds can specify the same group to use the same Application across their respective units. Corresponds to the app_boundary_id in the ADC composite ApplicationTemplate. Defaults to UnitKind.name + */ + group?: string | null; + /** + * Corresponds to the scope in the ADC composite ApplicationTemplate. Defaults to TYPE_REGIONAL. + */ + scope?: Schema$Scope; + } /** * Blueprints are OCI Images that contain all of the artifacts needed to provision a unit. Metadata such as, type of the engine used to actuate the blueprint (e.g. terraform, helm etc) and version will come from the image manifest. If the hostname is omitted, it will be assumed to be the regional path to Artifact Registry (eg. us-east1-docker.pkg.dev). */ @@ -154,6 +201,40 @@ export namespace saasservicemgmt_v1beta1 { */ version?: string | null; } + /** + * ComponentRef represents a reference to a component resource. Next ID: 4 + */ + export interface Schema$ComponentRef { + /** + * Name of the component in composite.Components + */ + component?: string | null; + /** + * Reference to the Composite ApplicationTemplate. + */ + compositeRef?: Schema$CompositeRef; + /** + * Revision of the component. If the component does not have a revision, this field will be explicitly set to the revision of the composite ApplicationTemplate. + */ + revision?: string | null; + } + /** + * CompositeRef represents a reference to a composite resource. Next ID: 4 + */ + export interface Schema$CompositeRef { + /** + * Required. Reference to the ApplicationTemplate resource. + */ + applicationTemplate?: string | null; + /** + * Revision of the ApplicationTemplate to use. Changes to revision will trigger manual resynchronization. If empty, ApplicationTemplate will be ignored. + */ + revision?: string | null; + /** + * Output only. Reference to on-going AppTemplate import and replication operation (i.e. the operation_id for the long-running operation). This field is opaque for external usage. + */ + syncOperation?: string | null; + } /** * Dependency represent a single dependency with another unit kind by alias. */ @@ -189,273 +270,223 @@ export namespace saasservicemgmt_v1beta1 { allowedPercentage?: number | null; } /** - * Output variables whose values will be passed on to dependencies + * EvaluationRule defines a single rule for evaluating a feature flag. A rule consists of a condition that, if met, assigns a specific variant or allocation to the user. */ - export interface Schema$FromMapping { + export interface Schema$EvaluationRule { /** - * Required. Alias of the dependency that the outputVariable will pass its value to + * Required. A Common Expression Language (CEL) expression that evaluates to a boolean. The expression is evaluated against the provided context. If it returns true, the rule's target is applied. */ - dependency?: string | null; + condition?: string | null; /** - * Required. Name of the outputVariable on the dependency + * Required. Evaluation rule ID. Max length: 128 bytes. */ - outputVariable?: string | null; + id?: string | null; + /** + * Required. The target variant or allocation to apply if the condition is met. This should match the name of a defined variant or allocation's ID. + */ + target?: string | null; } /** - * A resource that represents a Google Cloud location. + * EvaluationSpec holds rules for evaluating the value of a flag. */ - export interface Schema$GoogleCloudLocationLocation { + export interface Schema$EvaluationSpec { /** - * The friendly name for this location, typically a nearby city name. For example, "Tokyo". + * Optional. A list of allocations. */ - displayName?: string | null; + allocations?: Schema$Allocation[]; /** - * Cross-service attributes for the location. For example {"cloud.googleapis.com/region": "us-east1"\} + * Optional. Names of the context attributes that are used in the evaluation rules and allocations. */ - labels?: {[key: string]: string} | null; + attributes?: string[] | null; /** - * The canonical id for this location. For example: `"us-east1"`. + * Required. Default variant or allocation of the flag. */ - locationId?: string | null; + defaultTarget?: string | null; /** - * Service-specific metadata. For example the available capacity at the given location. + * Optional. Evaluation rules define the logic for evaluating the flag against a given context. The rules are evaluated sequentially in their specified order. */ - metadata?: {[key: string]: any} | null; + rules?: Schema$EvaluationRule[]; /** - * Resource name for the location, which may vary between implementations. For example: `"projects/example-project/locations/us-east1"` + * Optional. A list of variants. */ - name?: string | null; + variants?: Schema$Variant[]; } /** - * The response message for Locations.ListLocations. + * Represents a single Flag. */ - export interface Schema$ListLocationsResponse { - /** - * A list of locations that matches the specified filter in the request. - */ - locations?: Schema$GoogleCloudLocationLocation[]; + export interface Schema$Flag { /** - * The standard List next-page token. + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */ - nextPageToken?: string | null; - } - /** - * The response structure for the ListReleases method. - */ - export interface Schema$ListReleasesResponse { + annotations?: {[key: string]: string} | null; /** - * If present, the next page token can be provided to a subsequent ListReleases call to list the next page. If empty, there are no more pages. + * Output only. The timestamp when the resource was created. */ - nextPageToken?: string | null; + createTime?: string | null; /** - * The resulting releases. + * Optional. Description of the flag. Max length: 500 bytes. */ - releases?: Schema$Release[]; + description?: string | null; /** - * Locations that could not be reached. + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */ - unreachable?: string[] | null; - } - /** - * The response structure for the ListRolloutKinds method. - */ - export interface Schema$ListRolloutKindsResponse { + etag?: string | null; /** - * If present, the next page token can be provided to a subsequent ListRolloutKinds call to list the next page. If empty, there are no more pages. + * Optional. Specification of how the flag value should be evaluated. If a bool flag is created without an evaluation_spec specified, two default variants, "Enabled" (with bool_value = true) and "Disabled" (with bool_value = false), are created by default, and "Disabled" is set as the default_target. */ - nextPageToken?: string | null; + evaluationSpec?: Schema$EvaluationSpec; /** - * The resulting rollout kinds. + * Optional. Flag set this flag belongs to. */ - rolloutKinds?: Schema$RolloutKind[]; + flagSet?: string | null; /** - * Locations that could not be reached. + * Optional. Immutable. Flag value type. */ - unreachable?: string[] | null; - } - /** - * The response structure for the ListRollouts method. - */ - export interface Schema$ListRolloutsResponse { + flagValueType?: string | null; /** - * If present, the next page token can be provided to a subsequent ListRollouts call to list the next page. If empty, there are no more pages. + * Required. Immutable. Flag key used in runtime evaluation APIs (OpenFeature). Max length: 256 bytes. */ - nextPageToken?: string | null; + key?: string | null; /** - * The resulting rollouts. + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */ - rollouts?: Schema$Rollout[]; + labels?: {[key: string]: string} | null; /** - * Locations that could not be reached. + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/flags/{flag_id\}" */ - unreachable?: string[] | null; - } - /** - * The response structure for the ListSaas method. - */ - export interface Schema$ListSaasResponse { + name?: string | null; /** - * If present, the next page token can be provided to a subsequent ListSaas call to list the next page. If empty, there are no more pages. + * Optional. Current state of the flag. */ - nextPageToken?: string | null; + state?: string | null; /** - * The resulting saas. + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */ - saas?: Schema$Saas[]; + uid?: string | null; /** - * Locations that could not be reached. + * Required. Immutable. UnitKind that can consume this flag. */ - unreachable?: string[] | null; - } - /** - * The response structure for the ListTenants method. - */ - export interface Schema$ListTenantsResponse { + unitKind?: string | null; /** - * If present, the next page token can be provided to a subsequent ListTenants call to list the next page. If empty, there are no more pages. + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */ - nextPageToken?: string | null; + updateTime?: string | null; /** - * The resulting tenants. + * Optional. Immutable. Deprecated: Use `flag_value_type` instead. Flag value type. */ - tenants?: Schema$Tenant[]; + valueType?: string | null; /** - * Locations that could not be reached. + * Optional. A list of variants. */ - unreachable?: string[] | null; + variants?: Schema$FlagVariant[]; } /** - * The response structure for the ListUnitKinds method. + * FlagAttribute defines a custom property in the evaluation context. */ - export interface Schema$ListUnitKindsResponse { + export interface Schema$FlagAttribute { /** - * If present, the next page token can be provided to a subsequent ListUnitKinds call to list the next page. If empty, there are no more pages. - */ - nextPageToken?: string | null; - /** - * The resulting unit kinds. + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */ - unitKinds?: Schema$UnitKind[]; + annotations?: {[key: string]: string} | null; /** - * Locations that could not be reached. + * Optional. Immutable. Type of the attribute. */ - unreachable?: string[] | null; - } - /** - * The response structure for the ListUnitOperations method. - */ - export interface Schema$ListUnitOperationsResponse { + attributeValueType?: string | null; /** - * If present, the next page token can be provided to a subsequent ListUnitOperations call to list the next page. If empty, there are no more pages. + * Output only. The timestamp when the resource was created. */ - nextPageToken?: string | null; + createTime?: string | null; /** - * The resulting unit operations. + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */ - unitOperations?: Schema$UnitOperation[]; + etag?: string | null; /** - * Locations that could not be reached. + * Required. Immutable. The identifier for the attribute, used as the key in the evaluation context. The attribute key is referenced in the evaluation rules and used in the OpenFeature evaluation API to specify the attribute context. */ - unreachable?: string[] | null; - } - /** - * The response structure for the ListUnits method. - */ - export interface Schema$ListUnitsResponse { + key?: string | null; /** - * If present, the next page token can be provided to a subsequent ListUnits call to list the next page. If empty, there are no more pages. + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */ - nextPageToken?: string | null; + labels?: {[key: string]: string} | null; /** - * The resulting units. + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/flagAttributes/{flag_attribute_id\}" */ - units?: Schema$Unit[]; + name?: string | null; /** - * Locations that could not be reached. + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */ - unreachable?: string[] | null; - } - /** - * Location information that the service is available in. - */ - export interface Schema$Location { + uid?: string | null; /** - * Optional. Name of location. + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */ - name?: string | null; - } - /** - * Captures requested directives for performing future maintenance on the unit. This includes a request for the unit to skip maintenance for a period of time and remain pinned to its current release as well as controls for postponing maintenance scheduled in future. - */ - export interface Schema$MaintenanceSettings { + updateTime?: string | null; /** - * Optional. If present, it fixes the release on the unit until the given time; i.e. changes to the release field will be rejected. Rollouts should and will also respect this by not requesting an upgrade in the first place. + * Optional. Immutable. Deprecated: Use `attribute_value_type` instead. Type of the attribute. */ - pinnedUntilTime?: string | null; + valueType?: string | null; } /** - * Provision is the unit operation that provision the underlying resources represented by a Unit. Can only execute if the Unit is not currently provisioned. + * A collection of FlagRevisions. */ - export interface Schema$Provision { + export interface Schema$FlagRelease { /** - * Optional. Set of input variables. Maximum 100. (optional) + * Optional. Immutable. DEPRECATED: Use all_flags_release instead. Rollout all flags in the provided UnitKind. Only one of flag_revisions, all_flags, or flag_sets can be set. */ - inputVariables?: Schema$UnitVariable[]; + allFlags?: boolean | null; /** - * Optional. Reference to the Release object to use for the Unit. (optional). + * Optional. Immutable. Specifies the release includes all flags. */ - release?: string | null; - } - /** - * A new version to be propagated and deployed to units. This includes pointers to packaged blueprints for actuation (e.g Helm or Terraform configuration packages) via artifact registry. - */ - export interface Schema$Release { + allFlagsRelease?: boolean | null; /** * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */ annotations?: {[key: string]: string} | null; - /** - * Optional. Blueprints are OCI Images that contain all of the artifacts needed to provision a unit. - */ - blueprint?: Schema$Blueprint; /** * Output only. The timestamp when the resource was created. */ createTime?: string | null; + /** + * Output only. An OUTPUT_ONLY field that contains FlagRevisions to be rolled out. This is the ultimate source of truth of what a Rollout or a UnitOperation carries. + */ + effectiveFlagRevisions?: string[] | null; /** * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */ etag?: string | null; /** - * Optional. Mapping of input variables to default values. Maximum 100 + * Optional. Immutable. DEPRECATED: Use flag_revisions_release instead. FlagRevisions to be rolled out. Only one of flag_revisions, all_flags, or flag_sets can be set. It used to be the ultimate source to truth and has been moved to effective_flag_revisions. */ - inputVariableDefaults?: Schema$UnitVariable[]; + flagRevisions?: string[] | null; /** - * Optional. Output only. List of input variables declared on the blueprint and can be present with their values on the unit spec + * Optional. Immutable. Specifies the release consists of a list of flag revisions. */ - inputVariables?: Schema$UnitVariable[]; + flagRevisionsRelease?: Schema$FlagRevisionList; + /** + * Optional. Immutable. DEPRECATED: Use flag_sets_release instead. Flag sets to be rolled out. Only one of flag_revisions, all_flags, or flag_sets can be set. + */ + flagSets?: string[] | null; + /** + * Optional. Immutable. Specifies the release consists of a list of flag sets. + */ + flagSetsRelease?: Schema$FlagSetList; /** * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */ labels?: {[key: string]: string} | null; /** - * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/releases/{release\}" + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/flagReleases/{flag_release_id\}" */ name?: string | null; /** - * Optional. Output only. List of output variables declared on the blueprint and can be present with their values on the unit status - */ - outputVariables?: Schema$UnitVariable[]; - /** - * Optional. Set of requirements to be fulfilled on the Unit when using this Release. + * Optional. Immutable. Deprecated: Use the 'state' field in the 'Flag' resource to manage the cleanup of flag lifecycles including removal from UnitKind and Units. Flags to be removed from given UnitKind and all related Units. If Flag is provided here, its FlagRevisions will be removed from UnitKind and Units. */ - releaseRequirements?: Schema$ReleaseRequirements; + obsoleteFlags?: string[] | null; /** * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */ uid?: string | null; /** - * Required. Immutable. Reference to the UnitKind this Release corresponds to (required and immutable once created). + * Required. Immutable. The UnitKind this FlagRelease applies to. */ unitKind?: string | null; /** @@ -464,389 +495,450 @@ export namespace saasservicemgmt_v1beta1 { updateTime?: string | null; } /** - * Set of requirements to be fulfilled on the Unit when using this Release. - */ - export interface Schema$ReleaseRequirements { - /** - * Optional. A list of releases from which a unit can be upgraded to this one (optional). If left empty no constraints will be applied. When provided, unit upgrade requests to this release will check and enforce this constraint. - */ - upgradeableFromReleases?: string[] | null; - } - /** - * Represents a single rollout execution and its results + * A snapshot of the EvaluationSpec for the Flag. */ - export interface Schema$Rollout { + export interface Schema$FlagRevision { /** * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */ annotations?: {[key: string]: string} | null; - /** - * Optional. Requested change to the execution of this rollout. Default RolloutControl.action is ROLLOUT_ACTION_RUN meaning the rollout will be executed to completion while progressing through all natural Rollout States (such as RUNNING -\> SUCCEEDED or RUNNING -\> FAILED). Requests can only be made when the Rollout is in a non-terminal state. - */ - control?: Schema$RolloutControl; /** * Output only. The timestamp when the resource was created. */ createTime?: string | null; /** - * Output only. The timestamp when the resource was marked for deletion (deletion is an asynchronous operation). + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */ - deleteTime?: string | null; + etag?: string | null; /** - * Optional. Output only. Output only snapshot of the effective unit filter at Rollout start time. Contains a CEL(https://github.com/google/cel-spec) expression consisting of a conjunction of Rollout.unit_filter and RolloutKind.unit_filter. This field captures the filter applied by the Rollout to determine the Unit population. If the associated RolloutKind's unit_filter is modified after the rollout is started, it will not be updated here. + * Output only. Immutable. Snapshot of the EvaluationSpec for the flag. DEPRECATED: Use snapshot instead. */ - effectiveUnitFilter?: string | null; + evaluationSpec?: Schema$EvaluationSpec; /** - * Optional. Output only. The time when the rollout finished execution (regardless of success, failure, or cancellation). Will be empty if the rollout hasn't finished yet. Once set, the rollout is in terminal state and all the results are final. + * Required. Immutable. Name of the Flag this is a revision of. */ - endTime?: string | null; - /** - * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. - */ - etag?: string | null; + flag?: string | null; /** * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */ labels?: {[key: string]: string} | null; /** - * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rollout/{rollout_id\}" + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/flagRevisions/{flag_revision_id\}" */ name?: string | null; /** - * Optional. Output only. The direct parent rollout that this rollout is stemming from. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rollouts/{rollout_id\}" + * Output only. Immutable. Snapshot of the Flag. */ - parentRollout?: string | null; + snapshot?: Schema$Flag; /** - * Optional. Immutable. Name of the Release that gets rolled out to target Units. Required if no other type of release is specified. + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */ - release?: string | null; + uid?: string | null; /** - * Optional. Immutable. Name of the RolloutKind this rollout is stemming from and adhering to. + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */ - rolloutKind?: string | null; + updateTime?: string | null; + } + /** + * Wrapper for a list of flag revisions. + */ + export interface Schema$FlagRevisionList { /** - * Optional. The strategy used for executing this Rollout. This strategy will override whatever strategy is specified in the RolloutKind. If not specified on creation, the strategy from RolloutKind will be used. There are two supported values strategies which are used to control - "Google.Cloud.Simple.AllAtOnce" - "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the targeted UnitKind's Saas Locations. + * Required. FlagRevisions to be rolled out. */ - rolloutOrchestrationStrategy?: string | null; + revisions?: string[] | null; + } + /** + * Wrapper for a list of flag sets. + */ + export interface Schema$FlagSetList { /** - * Optional. Output only. The root rollout that this rollout is stemming from. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rollouts/{rollout_id\}" + * Required. Flag sets to be rolled out. */ - rootRollout?: string | null; + sets?: string[] | null; + } + /** + * FlagUpdate is a UnitOperation that pushes new flag values to Units. + */ + export interface Schema$FlagUpdate { /** - * Optional. Output only. The time when the rollout started executing. Will be empty if the rollout hasn't started yet. + * Required. Flag release being applied by UnitOperation. */ - startTime?: string | null; + flagRelease?: string | null; + } + /** + * Variant is an identifier for a value (name assigned to a value). + */ + export interface Schema$FlagVariant { /** - * Output only. Current state of the rollout. + * Optional. Boolean variant value. */ - state?: string | null; + booleanValue?: boolean | null; /** - * Output only. Human readable message indicating details about the last state transition. + * Optional. A human-readable description of what this variant does or represents. */ - stateMessage?: string | null; + description?: string | null; /** - * Optional. Output only. The time when the rollout transitioned into its current state. + * Optional. Double variant value. */ - stateTransitionTime?: string | null; + doubleValue?: number | null; /** - * Optional. Output only. Details about the progress of the rollout. + * Required. Variant ID. Max length: 128 bytes. */ - stats?: Schema$RolloutStats; + id?: string | null; /** - * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + * Optional. Integer variant value. */ - uid?: string | null; + integerValue?: string | null; /** - * Optional. CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout. If not provided, the unit_filter from the RolloutKind will be used. + * Optional. String variant value. */ - unitFilter?: string | null; + stringValue?: string | null; /** - * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + * Optional. trackingId is unique depending on name and value of the variant within the scope of the service. It is typically generated by the server and must not be changed. trackingId is used to uniquely identify and track variants. */ - updateTime?: string | null; + trackingId?: string | null; } /** - * RolloutControl provides a way to request a change to the execution of a Rollout by pausing or canceling it. + * Output variables whose values will be passed on to dependencies */ - export interface Schema$RolloutControl { + export interface Schema$FromMapping { /** - * Required. Action to be performed on the Rollout. The default behavior is to run the rollout until it naturally reaches a terminal state. + * Required. Alias of the dependency that the outputVariable will pass its value to */ - action?: string | null; + dependency?: string | null; /** - * Optional. Parameters for the RUN action. It is an error to specify this if the RolloutAction is not set to RUN. By default, the rollout will retry failed operations when resumed. + * Required. Name of the outputVariable on the dependency */ - runParams?: Schema$RunRolloutActionParams; + outputVariable?: string | null; } /** - * An object that describes various settings of Rollout execution. Includes built-in policies across GCP and GDC, and customizable policies. + * A resource that represents a Google Cloud location. */ - export interface Schema$RolloutKind { - /** - * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations - */ - annotations?: {[key: string]: string} | null; - /** - * Output only. The timestamp when the resource was created. - */ - createTime?: string | null; + export interface Schema$GoogleCloudLocationLocation { /** - * Optional. The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. If not set, all units will be attempted to be updated regardless of the number of failures encountered. + * The friendly name for this location, typically a nearby city name. For example, "Tokyo". */ - errorBudget?: Schema$ErrorBudget; + displayName?: string | null; /** - * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + * Cross-service attributes for the location. For example {"cloud.googleapis.com/region": "us-east1"\} */ - etag?: string | null; + labels?: {[key: string]: string} | null; /** - * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + * The canonical id for this location. For example: `"us-east1"`. */ - labels?: {[key: string]: string} | null; + locationId?: string | null; /** - * Optional. Value among strict (enforcing maintenance policy and only looking at Units with maintenance policy), ignore (ignoring maintenance policy) and skip (skipping Units with maintenance policy) + * Service-specific metadata. For example the available capacity at the given location. */ - maintenancePolicyEnforcement?: string | null; + metadata?: {[key: string]: any} | null; /** - * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rolloutKinds/{rollout_kind_id\}" + * Resource name for the location, which may vary between implementations. For example: `"projects/example-project/locations/us-east1"` */ name?: string | null; + } + /** + * The response structure for the ListFlagAttributes method. + */ + export interface Schema$ListFlagAttributesResponse { /** - * Optional. The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control - "Google.Cloud.Simple.AllAtOnce" - "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations. + * The resulting flag attributes. */ - rolloutOrchestrationStrategy?: string | null; + flagAttributes?: Schema$FlagAttribute[]; /** - * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + * If present, the next page token can be provided to a subsequent ListFlagAttributes call to list the next page. If empty, there are no more pages. */ - uid?: string | null; + nextPageToken?: string | null; /** - * Optional. CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout. + * Locations that could not be reached. */ - unitFilter?: string | null; + unreachable?: string[] | null; + } + /** + * The response structure for the ListFlagReleases method. + */ + export interface Schema$ListFlagReleasesResponse { /** - * Required. Immutable. UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts. + * The resulting flag releases. */ - unitKind?: string | null; + flagReleases?: Schema$FlagRelease[]; /** - * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + * If present, the next page token can be provided to a subsequent ListFlagReleases call to list the next page. If empty, there are no more pages. */ - updateTime?: string | null; + nextPageToken?: string | null; /** - * Optional. The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. + * Locations that could not be reached. */ - updateUnitKindStrategy?: string | null; + unreachable?: string[] | null; } /** - * RolloutStats contains information about the progress of a rollout. + * The response structure for the ListFlagRevisions method. */ - export interface Schema$RolloutStats { + export interface Schema$ListFlagRevisionsResponse { /** - * Optional. Output only. Unordered list. A breakdown of the progress of operations triggered by the rollout. Provides a count of Operations by their state. This can be used to determine the number of units which have been updated, or are scheduled to be updated. There will be at most one entry per group. Possible values for operation groups are: - "SCHEDULED" - "PENDING" - "RUNNING" - "SUCCEEDED" - "FAILED" - "CANCELLED" + * The resulting flag revisions. */ - operationsByState?: Schema$Aggregate[]; - } - /** - * Parameters for the RUN action controlling the behavior of the rollout when it is resumed from a PAUSED state. - */ - export interface Schema$RunRolloutActionParams { + flagRevisions?: Schema$FlagRevision[]; /** - * Required. If true, the rollout will retry failed operations when resumed. This is applicable only the current state of the Rollout is PAUSED and the requested action is RUN. + * If present, the next page token can be provided to a subsequent ListFlagRevisions call to list the next page. If empty, there are no more pages. */ - retryFailedOperations?: boolean | null; + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; } /** - * Saas is a representation of a SaaS service managed by the Producer. + * The response structure for the ListFlags method. */ - export interface Schema$Saas { + export interface Schema$ListFlagsResponse { /** - * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + * The resulting flags. */ - annotations?: {[key: string]: string} | null; + flags?: Schema$Flag[]; /** - * Output only. The timestamp when the resource was created. + * If present, the next page token can be provided to a subsequent ListFlags call to list the next page. If empty, there are no more pages. */ - createTime?: string | null; + nextPageToken?: string | null; /** - * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + * Locations that could not be reached. */ - etag?: string | null; + unreachable?: string[] | null; + } + /** + * The response message for Locations.ListLocations. + */ + export interface Schema$ListLocationsResponse { /** - * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + * A list of locations that matches the specified filter in the request. */ - labels?: {[key: string]: string} | null; + locations?: Schema$GoogleCloudLocationLocation[]; /** - * Optional. List of locations that the service is available in. Rollout refers to the list to generate a rollout plan. + * The standard List next-page token. */ - locations?: Schema$Location[]; + nextPageToken?: string | null; + } + /** + * The response structure for the ListReleases method. + */ + export interface Schema$ListReleasesResponse { /** - * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/saas/{saas\}" + * If present, the next page token can be provided to a subsequent ListReleases call to list the next page. If empty, there are no more pages. */ - name?: string | null; + nextPageToken?: string | null; /** - * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + * The resulting releases. */ - uid?: string | null; + releases?: Schema$Release[]; /** - * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + * Locations that could not be reached. */ - updateTime?: string | null; + unreachable?: string[] | null; } /** - * A time specification to schedule the maintenance. + * The response structure for the ListRolloutKinds method. */ - export interface Schema$Schedule { + export interface Schema$ListRolloutKindsResponse { /** - * Optional. Start of operation. If not set, will be set to the start of the next window. (optional) + * If present, the next page token can be provided to a subsequent ListRolloutKinds call to list the next page. If empty, there are no more pages. */ - startTime?: string | null; + nextPageToken?: string | null; + /** + * The resulting rollout kinds. + */ + rolloutKinds?: Schema$RolloutKind[]; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; } /** - * Tenant represents the service producer side of an instance of the service created based on a request from a consumer. In a typical scenario a Tenant has a one-to-one mapping with a resource given out to a service consumer. Example: tenant: name: "projects/svc1/locations/loc/tenants/inst-068afff8" consumer_resource: "projects/gshoe/locations/loc/shoes/black-shoe" + * The response structure for the ListRollouts method. */ - export interface Schema$Tenant { + export interface Schema$ListRolloutsResponse { /** - * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + * If present, the next page token can be provided to a subsequent ListRollouts call to list the next page. If empty, there are no more pages. */ - annotations?: {[key: string]: string} | null; + nextPageToken?: string | null; /** - * Optional. Immutable. A reference to the consumer resource this SaaS Tenant is representing. The relationship with a consumer resource can be used by SaaS Runtime for retrieving consumer-defined settings and policies such as maintenance policies (using Unified Maintenance Policy API). + * The resulting rollouts. */ - consumerResource?: string | null; + rollouts?: Schema$Rollout[]; /** - * Output only. The timestamp when the resource was created. + * Locations that could not be reached. */ - createTime?: string | null; + unreachable?: string[] | null; + } + /** + * The response structure for the ListSaas method. + */ + export interface Schema$ListSaasResponse { /** - * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + * If present, the next page token can be provided to a subsequent ListSaas call to list the next page. If empty, there are no more pages. */ - etag?: string | null; + nextPageToken?: string | null; /** - * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + * The resulting saas. */ - labels?: {[key: string]: string} | null; + saas?: Schema$Saas[]; /** - * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/tenants/{tenant\}" + * Locations that could not be reached. */ - name?: string | null; + unreachable?: string[] | null; + } + /** + * The response structure for the ListTenants method. + */ + export interface Schema$ListTenantsResponse { /** - * Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with SaaS Runtime. Part of the SaaS Runtime common data model. + * If present, the next page token can be provided to a subsequent ListTenants call to list the next page. If empty, there are no more pages. */ - saas?: string | null; + nextPageToken?: string | null; /** - * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + * The resulting tenants. */ - uid?: string | null; + tenants?: Schema$Tenant[]; /** - * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + * Locations that could not be reached. */ - updateTime?: string | null; + unreachable?: string[] | null; } /** - * Input variables whose values will be passed on to dependencies + * The response structure for the ListUnitKinds method. */ - export interface Schema$ToMapping { + export interface Schema$ListUnitKindsResponse { /** - * Required. Alias of the dependency that the inputVariable will pass its value to + * If present, the next page token can be provided to a subsequent ListUnitKinds call to list the next page. If empty, there are no more pages. */ - dependency?: string | null; + nextPageToken?: string | null; /** - * Optional. Tells SaaS Runtime if this mapping should be used during lookup or not + * The resulting unit kinds. */ - ignoreForLookup?: boolean | null; + unitKinds?: Schema$UnitKind[]; /** - * Required. Name of the inputVariable on the dependency + * Locations that could not be reached. */ - inputVariable?: string | null; + unreachable?: string[] | null; } /** - * A unit of deployment that has its lifecycle via a CRUD API using an actuation engine under the hood (e.g. based on Terraform, Helm or a custom implementation provided by a service producer). A building block of a SaaS Tenant. + * The response structure for the ListUnitOperations method. */ - export interface Schema$Unit { + export interface Schema$ListUnitOperationsResponse { /** - * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + * If present, the next page token can be provided to a subsequent ListUnitOperations call to list the next page. If empty, there are no more pages. */ - annotations?: {[key: string]: string} | null; + nextPageToken?: string | null; /** - * Optional. Output only. A set of conditions which indicate the various conditions this resource can have. + * The resulting unit operations. */ - conditions?: Schema$UnitCondition[]; + unitOperations?: Schema$UnitOperation[]; /** - * Output only. The timestamp when the resource was created. + * Locations that could not be reached. */ - createTime?: string | null; + unreachable?: string[] | null; + } + /** + * The response structure for the ListUnits method. + */ + export interface Schema$ListUnitsResponse { /** - * Optional. Output only. Set of dependencies for this unit. Maximum 10. + * If present, the next page token can be provided to a subsequent ListUnits call to list the next page. If empty, there are no more pages. */ - dependencies?: Schema$UnitDependency[]; + nextPageToken?: string | null; /** - * Optional. Output only. List of Units that depend on this unit. Unit can only be deprovisioned if this list is empty. Maximum 1000. + * The resulting units. */ - dependents?: Schema$UnitDependency[]; + units?: Schema$Unit[]; /** - * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + * Locations that could not be reached. */ - etag?: string | null; + unreachable?: string[] | null; + } + /** + * Location information that the service is available in. + */ + export interface Schema$Location { /** - * Optional. Output only. Indicates the current input variables deployed by the unit + * Optional. Name of location. */ - inputVariables?: Schema$UnitVariable[]; + name?: string | null; + } + /** + * Captures requested directives for performing future maintenance on the unit. This includes a request for the unit to skip maintenance for a period of time and remain pinned to its current release as well as controls for postponing maintenance scheduled in future. + */ + export interface Schema$MaintenanceSettings { /** - * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + * Optional. If present, it fixes the release on the unit until the given time; i.e. changes to the release field will be rejected. Rollouts should and will also respect this by not requesting an upgrade in the first place. */ - labels?: {[key: string]: string} | null; + pinnedUntilTime?: string | null; + } + /** + * Provision is the unit operation that provision the underlying resources represented by a Unit. Can only execute if the Unit is not currently provisioned. + */ + export interface Schema$Provision { /** - * Optional. Captures requested directives for performing future maintenance on the unit. This includes a request for the unit to skip maintenance for a period of time and remain pinned to its current release as well as controls for postponing maintenance scheduled in future. + * Optional. Set of input variables. Maximum 100. (optional) */ - maintenance?: Schema$MaintenanceSettings; + inputVariables?: Schema$UnitVariable[]; /** - * Optional. Immutable. Indicates whether the Unit life cycle is controlled by the user or by the system. Immutable once created. + * Optional. Reference to the Release object to use for the Unit. (optional). */ - managementMode?: string | null; + release?: string | null; + } + /** + * A new version to be propagated and deployed to units. This includes pointers to packaged blueprints for actuation (e.g Helm or Terraform configuration packages) via artifact registry. + */ + export interface Schema$Release { /** - * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/units/{unit\}" + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */ - name?: string | null; + annotations?: {[key: string]: string} | null; /** - * Optional. Output only. List of concurrent UnitOperations that are operating on this Unit. + * Output only. Reference to component and revision in a composite ApplicationTemplate. */ - ongoingOperations?: string[] | null; + applicationTemplateComponent?: Schema$ComponentRef; /** - * Optional. Output only. Set of key/value pairs corresponding to output variables from execution of actuation templates. The variables are declared in actuation configs (e.g in helm chart or terraform) and the values are fetched and returned by the actuation engine upon completion of execution. + * Optional. Blueprints are OCI Images that contain all of the artifacts needed to provision a unit. */ - outputVariables?: Schema$UnitVariable[]; + blueprint?: Schema$Blueprint; /** - * Optional. Output only. List of pending (wait to be executed) UnitOperations for this unit. + * Output only. The timestamp when the resource was created. */ - pendingOperations?: string[] | null; + createTime?: string | null; /** - * Optional. Output only. The current Release object for this Unit. + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */ - release?: string | null; + etag?: string | null; /** - * Optional. Output only. List of scheduled UnitOperations for this unit. + * Optional. Mapping of input variables to default values. Maximum 100 */ - scheduledOperations?: string[] | null; + inputVariableDefaults?: Schema$UnitVariable[]; /** - * Optional. Output only. Current lifecycle state of the resource (e.g. if it's being created or ready to use). + * Optional. Output only. List of input variables declared on the blueprint and can be present with their values on the unit spec */ - state?: string | null; + inputVariables?: Schema$UnitVariable[]; /** - * Optional. Output only. If set, indicates the time when the system will start removing the unit. + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */ - systemCleanupAt?: string | null; + labels?: {[key: string]: string} | null; /** - * Optional. Output only. Indicates the system managed state of the unit. + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/releases/{release\}" */ - systemManagedState?: string | null; + name?: string | null; /** - * Optional. Reference to the Saas Tenant resource this unit belongs to. This for example informs the maintenance policies to use for scheduling future updates on a unit. (optional and immutable once created) + * Optional. Output only. List of output variables declared on the blueprint and can be present with their values on the unit status */ - tenant?: string | null; + outputVariables?: Schema$UnitVariable[]; + /** + * Optional. Set of requirements to be fulfilled on the Unit when using this Release. + */ + releaseRequirements?: Schema$ReleaseRequirements; /** * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */ uid?: string | null; /** - * Optional. Reference to the UnitKind this Unit belongs to. Immutable once set. + * Required. Immutable. Reference to the UnitKind this Release corresponds to (required and immutable once created). */ unitKind?: string | null; /** @@ -855,129 +947,140 @@ export namespace saasservicemgmt_v1beta1 { updateTime?: string | null; } /** - * UnitCondition describes the status of an Unit. UnitCondition is individual components that contribute to an overall state. - */ - export interface Schema$UnitCondition { - /** - * Required. Last time the condition transited from one status to another. - */ - lastTransitionTime?: string | null; - /** - * Required. Human readable message indicating details about the last transition. - */ - message?: string | null; - /** - * Required. Brief reason for the condition's last transition. - */ - reason?: string | null; - /** - * Required. Status of the condition. - */ - status?: string | null; - /** - * Required. Type of the condition. - */ - type?: string | null; - } - /** - * Set of dependencies for this unit. Maximum 10. + * Set of requirements to be fulfilled on the Unit when using this Release. */ - export interface Schema$UnitDependency { - /** - * Output only. Alias for the name of the dependency. - */ - alias?: string | null; + export interface Schema$ReleaseRequirements { /** - * Output only. A reference to the Unit object. + * Optional. A list of releases from which a unit can be upgraded to this one (optional). If left empty no constraints will be applied. When provided, unit upgrade requests to this release will check and enforce this constraint. */ - unit?: string | null; + upgradeableFromReleases?: string[] | null; } /** - * Definition of a Unit. Units belonging to the same UnitKind are managed together; for example they follow the same release model (blueprints, versions etc.) and are typically rolled out together. + * Represents a single rollout execution and its results */ - export interface Schema$UnitKind { + export interface Schema$Rollout { /** * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */ annotations?: {[key: string]: string} | null; + /** + * Optional. Requested change to the execution of this rollout. Default RolloutControl.action is ROLLOUT_ACTION_RUN meaning the rollout will be executed to completion while progressing through all natural Rollout States (such as RUNNING -\> SUCCEEDED or RUNNING -\> FAILED). Requests can only be made when the Rollout is in a non-terminal state. + */ + control?: Schema$RolloutControl; /** * Output only. The timestamp when the resource was created. */ createTime?: string | null; /** - * Optional. A reference to the Release object to use as default for creating new units of this UnitKind (optional). If not specified, a new unit must explicitly reference which release to use for its creation. + * Output only. The timestamp when the resource was marked for deletion (deletion is an asynchronous operation). */ - defaultRelease?: string | null; + deleteTime?: string | null; /** - * Optional. Immutable. List of other unit kinds that this release will depend on. Dependencies will be automatically provisioned if not found. Maximum 10. + * Optional. Output only. Output only snapshot of the effective unit filter at Rollout start time. Contains a CEL(https://github.com/google/cel-spec) expression consisting of a conjunction of Rollout.unit_filter and RolloutKind.unit_filter. This field captures the filter applied by the Rollout to determine the Unit population. If the associated RolloutKind's unit_filter is modified after the rollout is started, it will not be updated here. */ - dependencies?: Schema$Dependency[]; + effectiveUnitFilter?: string | null; + /** + * Optional. Output only. The time when the rollout finished execution (regardless of success, failure, or cancellation). Will be empty if the rollout hasn't finished yet. Once set, the rollout is in terminal state and all the results are final. + */ + endTime?: string | null; /** * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */ etag?: string | null; /** - * Optional. List of inputVariables for this release that will either be retrieved from a dependency’s outputVariables, or will be passed on to a dependency’s inputVariables. Maximum 100. + * Optional. Immutable. Name of the FlagRelease to be rolled out to the target Units. Release and FlagRelease are mutually exclusive. Note: `release` comment needs to be adjusted to mention that "Release and FlagRelease are mutually exclusive" when visibility restriction will be lifted. */ - inputVariableMappings?: Schema$VariableMapping[]; + flagRelease?: string | null; /** * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */ labels?: {[key: string]: string} | null; /** - * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/unitKinds/{unitKind\}" + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rollout/{rollout_id\}" */ name?: string | null; /** - * Optional. List of outputVariables for this unit kind will be passed to this unit's outputVariables. Maximum 100. + * Optional. Output only. The direct parent rollout that this rollout is stemming from. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rollouts/{rollout_id\}" */ - outputVariableMappings?: Schema$VariableMapping[]; + parentRollout?: string | null; /** - * Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with SaaS Runtime. Part of the SaaS Runtime common data model. Immutable once set. + * Optional. Immutable. Name of the Release that gets rolled out to target Units. Required if no other type of release is specified. */ - saas?: string | null; + release?: string | null; + /** + * Required. Immutable. Name of the RolloutKind this rollout is stemming from and adhering to. + */ + rolloutKind?: string | null; + /** + * Optional. The strategy used for executing this Rollout. This strategy will override whatever strategy is specified in the RolloutKind. If not specified on creation, the strategy from RolloutKind will be used. There are two supported values strategies which are used to control - "Google.Cloud.Simple.AllAtOnce" - "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the targeted UnitKind's Saas Locations. + */ + rolloutOrchestrationStrategy?: string | null; + /** + * Optional. Output only. The root rollout that this rollout is stemming from. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rollouts/{rollout_id\}" + */ + rootRollout?: string | null; + /** + * Optional. Output only. The time when the rollout started executing. Will be empty if the rollout hasn't started yet. + */ + startTime?: string | null; + /** + * Output only. Current state of the rollout. + */ + state?: string | null; + /** + * Output only. Human readable message indicating details about the last state transition. + */ + stateMessage?: string | null; + /** + * Optional. Output only. The time when the rollout transitioned into its current state. + */ + stateTransitionTime?: string | null; + /** + * Optional. Output only. Details about the progress of the rollout. + */ + stats?: Schema$RolloutStats; /** * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */ uid?: string | null; + /** + * Optional. CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout. If not provided, the unit_filter from the RolloutKind will be used. + */ + unitFilter?: string | null; /** * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */ updateTime?: string | null; } /** - * UnitOperation encapsulates the intent of changing/interacting with the service component represented by the specific Unit. Multiple UnitOperations can be created (requested) and scheduled in the future, however only one will be allowed to execute at a time (that can change in the future for non-mutating operations). UnitOperations allow different actors interacting with the same unit to focus only on the change they have requested. This is a base object that contains the common fields in all unit operations. Next: 22 + * RolloutControl provides a way to request a change to the execution of a Rollout by pausing or canceling it. */ - export interface Schema$UnitOperation { + export interface Schema$RolloutControl { /** - * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + * Required. Action to be performed on the Rollout. The default behavior is to run the rollout until it naturally reaches a terminal state. */ - annotations?: {[key: string]: string} | null; + action?: string | null; /** - * Optional. When true, attempt to cancel the operation. Cancellation may fail if the operation is already executing. (Optional) + * Optional. Parameters for the RUN action. It is an error to specify this if the RolloutAction is not set to RUN. By default, the rollout will retry failed operations when resumed. */ - cancel?: boolean | null; + runParams?: Schema$RunRolloutActionParams; + } + /** + * An object that describes various settings of Rollout execution. Includes built-in policies across GCP and GDC, and customizable policies. + */ + export interface Schema$RolloutKind { /** - * Optional. Output only. A set of conditions which indicate the various conditions this resource can have. + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */ - conditions?: Schema$UnitOperationCondition[]; + annotations?: {[key: string]: string} | null; /** * Output only. The timestamp when the resource was created. */ createTime?: string | null; /** - * Output only. The timestamp when the resource was marked for deletion (deletion is an asynchronous operation). - */ - deleteTime?: string | null; - deprovision?: Schema$Deprovision; - /** - * Optional. Output only. The engine state for on-going deployment engine operation(s). This field is opaque for external usage. - */ - engineState?: string | null; - /** - * Optional. Output only. UnitOperationErrorCategory describe the error category. + * Optional. The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. If not set, all units will be attempted to be updated regardless of the number of failures encountered. */ - errorCategory?: string | null; + errorBudget?: Schema$ErrorBudget; /** * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */ @@ -987,44 +1090,117 @@ export namespace saasservicemgmt_v1beta1 { */ labels?: {[key: string]: string} | null; /** - * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/unitOperations/{unitOperation\}" + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/rolloutKinds/{rollout_kind_id\}" */ name?: string | null; /** - * Optional. Reference to parent resource: UnitOperation. If an operation needs to create other operations as part of its workflow, each of the child operations should have this field set to the parent. This can be used for tracing. (Optional) + * Optional. The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control - "Google.Cloud.Simple.AllAtOnce" - "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations. */ - parentUnitOperation?: string | null; - provision?: Schema$Provision; + rolloutOrchestrationStrategy?: string | null; /** - * Optional. Specifies which rollout created this Unit Operation. This cannot be modified and is used for filtering purposes only. If a dependent unit and unit operation are created as part of another unit operation, they will use the same rolloutId. + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */ - rollout?: string | null; + uid?: string | null; /** - * Optional. When to schedule this operation. + * Optional. CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout. */ - schedule?: Schema$Schedule; + unitFilter?: string | null; /** - * Optional. Output only. UnitOperationState describes the current state of the unit operation. + * Required. Immutable. UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts. + */ + unitKind?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; + /** + * Optional. The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. + */ + updateUnitKindStrategy?: string | null; + } + /** + * RolloutStats contains information about the progress of a rollout. + */ + export interface Schema$RolloutStats { + /** + * Optional. Output only. Estimated number of units based. The estimation is computed upon creation of the rollout. + */ + estimatedTotalUnitCount?: string | null; + /** + * Optional. Output only. Unordered list. A breakdown of the progress of operations triggered by the rollout. Provides a count of Operations by their state. This can be used to determine the number of units which have been updated, or are scheduled to be updated. There will be at most one entry per group. Possible values for operation groups are: - "SCHEDULED" - "PENDING" - "RUNNING" - "SUCCEEDED" - "FAILED" - "CANCELLED" + */ + operationsByState?: Schema$Aggregate[]; + } + /** + * Parameters for the RUN action controlling the behavior of the rollout when it is resumed from a PAUSED state. + */ + export interface Schema$RunRolloutActionParams { + /** + * Required. If true, the rollout will retry failed operations when resumed. This is applicable only the current state of the Rollout is PAUSED and the requested action is RUN. + */ + retryFailedOperations?: boolean | null; + } + /** + * Saas is a representation of a SaaS service managed by the Producer. + */ + export interface Schema$Saas { + /** + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + */ + annotations?: {[key: string]: string} | null; + /** + * Reference to composite ApplicationTemplate. When specified, the template components will be imported into their equivalent UnitKind, Release and Blueprint resources. Deleted references will not delete imported resources. Should only be specified on source regions, and be unspecified on replica regions. + */ + applicationTemplate?: Schema$CompositeRef; + /** + * Output only. Name of repository in Artifact Registry for system-generated Blueprints, eg. Blueprints of imported ApplicationTemplates. + */ + blueprintRepo?: string | null; + /** + * Output only. A set of conditions which indicate the various conditions this resource can have. + */ + conditions?: Schema$SaasCondition[]; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Output only. If the state is FAILED, the corresponding error code and message. Defaults to code=OK for all other states. + */ + error?: Schema$Status; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Optional. List of locations that the service is available in. Rollout refers to the list to generate a rollout plan. + */ + locations?: Schema$Location[]; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/saas/{saas\}" + */ + name?: string | null; + /** + * Output only. State of the Saas. It is always in ACTIVE state if the application_template is empty. */ state?: string | null; /** * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */ uid?: string | null; - /** - * Required. Immutable. The Unit a given UnitOperation will act upon. - */ - unit?: string | null; /** * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */ updateTime?: string | null; - upgrade?: Schema$Upgrade; } /** - * UnitOperationCondition describes the status of an Unit Operation. UnitOperationCondition is individual components that contribute to an overall state. + * SaasCondition describes the status of a Saas. */ - export interface Schema$UnitOperationCondition { + export interface Schema$SaasCondition { /** * Required. Last time the condition transited from one status to another. */ @@ -1047,90 +1223,3987 @@ export namespace saasservicemgmt_v1beta1 { type?: string | null; } /** - * UnitVariable describes a parameter for a Unit. + * A time specification to schedule the maintenance. */ - export interface Schema$UnitVariable { + export interface Schema$Schedule { /** - * Optional. Immutable. Name of a supported variable type. Supported types are string, int, bool. + * Optional. Start of operation. If not set, will be set to the start of the next window. (optional) + */ + startTime?: string | null; + } + /** + * Scope of an application. + */ + export interface Schema$Scope { + /** + * Required. Scope Type. */ type?: 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 { /** - * Optional. String encoded value for the variable. + * The status code, which should be an enum value of google.rpc.Code. */ - value?: string | null; + code?: number | null; /** - * Required. Immutable. Name of the variable from actuation configs. + * A list of messages that carry the error details. There is a common set of message types for APIs to use. */ - variable?: string | null; + 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; } /** - * Upgrade is the unit operation that upgrades a provisioned unit, which may also include the underlying resources represented by a Unit. Can only execute if the Unit is currently provisioned. + * Tenant represents the service producer side of an instance of the service created based on a request from a consumer. In a typical scenario a Tenant has a one-to-one mapping with a resource given out to a service consumer. Example: tenant: name: "projects/svc1/locations/loc/tenants/inst-068afff8" consumer_resource: "projects/gshoe/locations/loc/shoes/black-shoe" */ - export interface Schema$Upgrade { + export interface Schema$Tenant { /** - * Optional. Set of input variables. Maximum 100. (optional) + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */ - inputVariables?: Schema$UnitVariable[]; + annotations?: {[key: string]: string} | null; /** - * Optional. Reference to the Release object to use for the Unit. (optional). + * Optional. Immutable. A reference to the consumer resource this SaaS Tenant is representing. The relationship with a consumer resource can be used by App Lifecycle Manager for retrieving consumer-defined settings and policies such as maintenance policies (using Unified Maintenance Policy API). */ - release?: string | null; + consumerResource?: string | null; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/tenants/{tenant\}" + */ + name?: string | null; + /** + * Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with App Lifecycle Manager. Part of the App Lifecycle Manager common data model. + */ + saas?: string | null; + /** + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + */ + uid?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; } /** - * Mapping of input variables to their respective output variable for depedenencies + * Input variables whose values will be passed on to dependencies */ - export interface Schema$VariableMapping { + export interface Schema$ToMapping { /** - * Optional. Output variables which will get their values from dependencies + * Required. Alias of the dependency that the inputVariable will pass its value to */ - from?: Schema$FromMapping; + dependency?: string | null; /** - * Optional. Input variables whose values will be passed on to dependencies. + * Optional. Tells App Lifecycle Manager if this mapping should be used during lookup or not */ - to?: Schema$ToMapping; + ignoreForLookup?: boolean | null; /** - * Required. name of the variable + * Required. Name of the inputVariable on the dependency */ - variable?: string | null; - } - - export class Resource$Projects { - context: APIRequestContext; - locations: Resource$Projects$Locations; - constructor(context: APIRequestContext) { - this.context = context; - this.locations = new Resource$Projects$Locations(this.context); - } + inputVariable?: string | null; } - - export class Resource$Projects$Locations { - context: APIRequestContext; - releases: Resource$Projects$Locations$Releases; - rolloutKinds: Resource$Projects$Locations$Rolloutkinds; - rollouts: Resource$Projects$Locations$Rollouts; - saas: Resource$Projects$Locations$Saas; - tenants: Resource$Projects$Locations$Tenants; - unitKinds: Resource$Projects$Locations$Unitkinds; - unitOperations: Resource$Projects$Locations$Unitoperations; - units: Resource$Projects$Locations$Units; - constructor(context: APIRequestContext) { - this.context = context; - this.releases = new Resource$Projects$Locations$Releases(this.context); - this.rolloutKinds = new Resource$Projects$Locations$Rolloutkinds( - this.context - ); - this.rollouts = new Resource$Projects$Locations$Rollouts(this.context); - this.saas = new Resource$Projects$Locations$Saas(this.context); - this.tenants = new Resource$Projects$Locations$Tenants(this.context); - this.unitKinds = new Resource$Projects$Locations$Unitkinds(this.context); - this.unitOperations = new Resource$Projects$Locations$Unitoperations( - this.context - ); - this.units = new Resource$Projects$Locations$Units(this.context); + /** + * A unit of deployment that has its lifecycle via a CRUD API using an actuation engine under the hood (e.g. based on Terraform, Helm or a custom implementation provided by a service producer). A building block of a SaaS Tenant. + */ + export interface Schema$Unit { + /** + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + */ + annotations?: {[key: string]: string} | null; + /** + * Optional. Reference to the AppHub Application this unit belongs to. All resources deployed in this Unit will be associated with the specified Application. + */ + application?: string | null; + /** + * Optional. Output only. A set of conditions which indicate the various conditions this resource can have. + */ + conditions?: Schema$UnitCondition[]; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Optional. Output only. Set of dependencies for this unit. Maximum 10. + */ + dependencies?: Schema$UnitDependency[]; + /** + * Optional. Output only. List of Units that depend on this unit. Unit can only be deprovisioned if this list is empty. Maximum 1000. + */ + dependents?: Schema$UnitDependency[]; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + /** + * Output only. This field stores the unique identifier for the flag configuration to be used by this Unit. + */ + flagConfigName?: string | null; + /** + * Optional. Output only. Flag revisions used by this Unit. + */ + flagRevisions?: string[] | null; + /** + * Optional. Output only. Indicates the current input variables deployed by the unit + */ + inputVariables?: Schema$UnitVariable[]; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Optional. Captures requested directives for performing future maintenance on the unit. This includes a request for the unit to skip maintenance for a period of time and remain pinned to its current release as well as controls for postponing maintenance scheduled in future. + */ + maintenance?: Schema$MaintenanceSettings; + /** + * Optional. Immutable. Indicates whether the Unit life cycle is controlled by the user or by the system. Immutable once created. + */ + managementMode?: string | null; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/units/{unit\}" + */ + name?: string | null; + /** + * Optional. Output only. List of concurrent UnitOperations that are operating on this Unit. + */ + ongoingOperations?: string[] | null; + /** + * Optional. Output only. Set of key/value pairs corresponding to output variables from execution of actuation templates. The variables are declared in actuation configs (e.g in helm chart or terraform) and the values are fetched and returned by the actuation engine upon completion of execution. + */ + outputVariables?: Schema$UnitVariable[]; + /** + * Optional. Output only. List of pending (wait to be executed) UnitOperations for this unit. + */ + pendingOperations?: string[] | null; + /** + * Optional. Output only. The current Release object for this Unit. + */ + release?: string | null; + /** + * Output only. Reserved for future use. + */ + satisfiesPzi?: boolean | null; + /** + * Output only. Indicates whether the resource location satisfies Zone Separation constraints. This is false by default. + */ + satisfiesPzs?: boolean | null; + /** + * Optional. Output only. List of scheduled UnitOperations for this unit. + */ + scheduledOperations?: string[] | null; + /** + * Optional. Output only. Current lifecycle state of the resource (e.g. if it's being created or ready to use). + */ + state?: string | null; + /** + * Optional. Output only. If set, indicates the time when the system will start removing the unit. + */ + systemCleanupAt?: string | null; + /** + * Optional. Output only. Indicates the system managed state of the unit. + */ + systemManagedState?: string | null; + /** + * Optional. Reference to the Saas Tenant resource this unit belongs to. This for example informs the maintenance policies to use for scheduling future updates on a unit. (optional and immutable once created) + */ + tenant?: string | null; + /** + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + */ + uid?: string | null; + /** + * Optional. Reference to the UnitKind this Unit belongs to. Immutable once set. + */ + unitKind?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; + } + /** + * UnitCondition describes the status of an Unit. UnitCondition is individual components that contribute to an overall state. + */ + export interface Schema$UnitCondition { + /** + * Required. Last time the condition transited from one status to another. + */ + lastTransitionTime?: string | null; + /** + * Required. Human readable message indicating details about the last transition. + */ + message?: string | null; + /** + * Required. Brief reason for the condition's last transition. + */ + reason?: string | null; + /** + * Required. Status of the condition. + */ + status?: string | null; + /** + * Required. Type of the condition. + */ + type?: string | null; + } + /** + * Set of dependencies for this unit. Maximum 10. + */ + export interface Schema$UnitDependency { + /** + * Output only. Alias for the name of the dependency. + */ + alias?: string | null; + /** + * Output only. A reference to the Unit object. + */ + unit?: string | null; + } + /** + * Definition of a Unit. Units belonging to the same UnitKind are managed together; for example they follow the same release model (blueprints, versions etc.) and are typically rolled out together. + */ + export interface Schema$UnitKind { + /** + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + */ + annotations?: {[key: string]: string} | null; + /** + * Output only. Reference to component and revision in a composite ApplicationTemplate. + */ + applicationTemplateComponent?: Schema$ComponentRef; + /** + * AppParams contains the parameters for creating an AppHub Application. + */ + appParams?: Schema$AppParams; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Optional. Default revisions of flags for this UnitKind. Newly created units will use the flag default_flag_revisions present at the time of creation. + */ + defaultFlagRevisions?: string[] | null; + /** + * Optional. A reference to the Release object to use as default for creating new units of this UnitKind (optional). If not specified, a new unit must explicitly reference which release to use for its creation. + */ + defaultRelease?: string | null; + /** + * Optional. Immutable. List of other unit kinds that this release will depend on. Dependencies will be automatically provisioned if not found. Maximum 10. + */ + dependencies?: Schema$Dependency[]; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + /** + * Optional. List of inputVariables for this release that will either be retrieved from a dependency’s outputVariables, or will be passed on to a dependency’s inputVariables. Maximum 100. + */ + inputVariableMappings?: Schema$VariableMapping[]; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/unitKinds/{unitKind\}" + */ + name?: string | null; + /** + * Optional. List of outputVariables for this unit kind will be passed to this unit's outputVariables. Maximum 100. + */ + outputVariableMappings?: Schema$VariableMapping[]; + /** + * Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with App Lifecycle Manager. Part of the App Lifecycle Manager common data model. Immutable once set. + */ + saas?: string | null; + /** + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + */ + uid?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; + } + /** + * UnitOperation encapsulates the intent of changing/interacting with the service component represented by the specific Unit. Multiple UnitOperations can be created (requested) and scheduled in the future, however only one will be allowed to execute at a time (that can change in the future for non-mutating operations). UnitOperations allow different actors interacting with the same unit to focus only on the change they have requested. This is a base object that contains the common fields in all unit operations. Next: 22 + */ + export interface Schema$UnitOperation { + /** + * Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations + */ + annotations?: {[key: string]: string} | null; + /** + * Optional. When true, attempt to cancel the operation. Cancellation may fail if the operation is already executing. (Optional) + */ + cancel?: boolean | null; + /** + * Optional. Output only. A set of conditions which indicate the various conditions this resource can have. + */ + conditions?: Schema$UnitOperationCondition[]; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Output only. The timestamp when the resource was marked for deletion (deletion is an asynchronous operation). + */ + deleteTime?: string | null; + deprovision?: Schema$Deprovision; + /** + * Optional. Output only. The engine state for on-going deployment engine operation(s). This field is opaque for external usage. + */ + engineState?: string | null; + /** + * Optional. Output only. UnitOperationErrorCategory describe the error category. + */ + errorCategory?: string | null; + /** + * Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. + */ + etag?: string | null; + flagUpdate?: Schema$FlagUpdate; + /** + * Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/unitOperations/{unitOperation\}" + */ + name?: string | null; + /** + * Optional. Reference to parent resource: UnitOperation. If an operation needs to create other operations as part of its workflow, each of the child operations should have this field set to the parent. This can be used for tracing. (Optional) + */ + parentUnitOperation?: string | null; + provision?: Schema$Provision; + /** + * Optional. Specifies which rollout created this Unit Operation. This cannot be modified and is used for filtering purposes only. If a dependent unit and unit operation are created as part of another unit operation, they will use the same rolloutId. + */ + rollout?: string | null; + /** + * Optional. When to schedule this operation. + */ + schedule?: Schema$Schedule; + /** + * Optional. Output only. UnitOperationState describes the current state of the unit operation. + */ + state?: string | null; + /** + * Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. + */ + uid?: string | null; + /** + * Required. Immutable. The Unit a given UnitOperation will act upon. + */ + unit?: string | null; + /** + * Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. + */ + updateTime?: string | null; + upgrade?: Schema$Upgrade; + } + /** + * UnitOperationCondition describes the status of an Unit Operation. UnitOperationCondition is individual components that contribute to an overall state. + */ + export interface Schema$UnitOperationCondition { + /** + * Required. Last time the condition transited from one status to another. + */ + lastTransitionTime?: string | null; + /** + * Required. Human readable message indicating details about the last transition. + */ + message?: string | null; + /** + * Required. Brief reason for the condition's last transition. + */ + reason?: string | null; + /** + * Required. Status of the condition. + */ + status?: string | null; + /** + * Required. Type of the condition. + */ + type?: string | null; + } + /** + * UnitVariable describes a parameter for a Unit. + */ + export interface Schema$UnitVariable { + /** + * Optional. Immutable. Name of a supported variable type. Supported types are string, int, bool. + */ + type?: string | null; + /** + * Optional. String encoded value for the variable. + */ + value?: string | null; + /** + * Required. Immutable. Name of the variable from actuation configs. + */ + variable?: string | null; + } + /** + * Upgrade is the unit operation that upgrades a provisioned unit, which may also include the underlying resources represented by a Unit. Can only execute if the Unit is currently provisioned. + */ + export interface Schema$Upgrade { + /** + * Optional. Set of input variables. Maximum 100. (optional) + */ + inputVariables?: Schema$UnitVariable[]; + /** + * Optional. Reference to the Release object to use for the Unit. (optional). + */ + release?: string | null; + } + /** + * Mapping of input variables to their respective output variable for depedenencies + */ + export interface Schema$VariableMapping { + /** + * Optional. Output variables which will get their values from dependencies + */ + from?: Schema$FromMapping; + /** + * Optional. Input variables whose values will be passed on to dependencies. + */ + to?: Schema$ToMapping; + /** + * Required. name of the variable + */ + variable?: string | null; + } + /** + * Variant is an identifier for a value (name assigned to a value). DEPRECATED: Use Flag.Variants instead. + */ + export interface Schema$Variant { + /** + * Optional. Boolean flag value. + */ + boolValue?: boolean | null; + /** + * Optional. Double flag value. + */ + doubleValue?: number | null; + /** + * Optional. Integer flag value. + */ + intValue?: string | null; + /** + * Required. Name of the variant. Max length: 128 bytes. + */ + name?: string | null; + /** + * Optional. String flag value. + */ + stringValue?: string | null; + } + + 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; + flagAttributes: Resource$Projects$Locations$Flagattributes; + flagReleases: Resource$Projects$Locations$Flagreleases; + flagRevisions: Resource$Projects$Locations$Flagrevisions; + flags: Resource$Projects$Locations$Flags; + releases: Resource$Projects$Locations$Releases; + rolloutKinds: Resource$Projects$Locations$Rolloutkinds; + rollouts: Resource$Projects$Locations$Rollouts; + saas: Resource$Projects$Locations$Saas; + tenants: Resource$Projects$Locations$Tenants; + unitKinds: Resource$Projects$Locations$Unitkinds; + unitOperations: Resource$Projects$Locations$Unitoperations; + units: Resource$Projects$Locations$Units; + constructor(context: APIRequestContext) { + this.context = context; + this.flagAttributes = new Resource$Projects$Locations$Flagattributes( + this.context + ); + this.flagReleases = new Resource$Projects$Locations$Flagreleases( + this.context + ); + this.flagRevisions = new Resource$Projects$Locations$Flagrevisions( + this.context + ); + this.flags = new Resource$Projects$Locations$Flags(this.context); + this.releases = new Resource$Projects$Locations$Releases(this.context); + this.rolloutKinds = new Resource$Projects$Locations$Rolloutkinds( + this.context + ); + this.rollouts = new Resource$Projects$Locations$Rollouts(this.context); + this.saas = new Resource$Projects$Locations$Saas(this.context); + this.tenants = new Resource$Projects$Locations$Tenants(this.context); + this.unitKinds = new Resource$Projects$Locations$Unitkinds(this.context); + this.unitOperations = new Resource$Projects$Locations$Unitoperations( + this.context + ); + this.units = new Resource$Projects$Locations$Units(this.context); + } + + /** + * Gets information about a location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.get({ + * // Resource name for the location. + * name: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "displayName": "my_displayName", + * // "labels": {}, + * // "locationId": "my_locationId", + * // "metadata": {}, + * // "name": "my_name" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Get, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + 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. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.list({ + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * extraLocationTypes: 'placeholder-value', + * // 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: 'placeholder-value', + * // The resource that owns the locations collection, if applicable. + * name: 'projects/my-project', + * // The maximum number of results to return. If not set, the service selects a default. + * pageSize: 'placeholder-value', + * // A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "locations": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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 + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$List, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}/locations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + 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 { + /** + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + */ + extraLocationTypes?: string[]; + /** + * 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$Flagattributes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a new flag attribute. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagAttributes.create({ + * // Required. The ID value for the new flag attribute. + * flagAttributeId: 'placeholder-value', + * // Required. The parent of the flag attribute. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "attributeValueType": "my_attributeValueType", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "key": "my_key", + * // "labels": {}, + * // "name": "my_name", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "attributeValueType": "my_attributeValueType", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "key": "my_key", + * // "labels": {}, + * // "name": "my_name", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagattributes$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Flagattributes$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Flagattributes$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Flagattributes$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Flagattributes$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagattributes$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagattributes$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagattributes$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/flagAttributes').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a single flag attribute. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagAttributes.delete({ + * // The etag known to the client for the expected state of the flag attribute. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the flag attribute. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + * etag: 'placeholder-value', + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/flagAttributes/my-flagAttribute', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagattributes$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Flagattributes$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Flagattributes$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Flagattributes$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Flagattributes$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagattributes$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagattributes$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagattributes$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a single flag attribute. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagAttributes.get({ + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/flagAttributes/my-flagAttribute', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "attributeValueType": "my_attributeValueType", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "key": "my_key", + * // "labels": {}, + * // "name": "my_name", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagattributes$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Flagattributes$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Flagattributes$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Flagattributes$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Flagattributes$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagattributes$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagattributes$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagattributes$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a collection of flag attributes. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagAttributes.list({ + * // Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // The maximum number of flag attributes to send per page. + * pageSize: 'placeholder-value', + * // The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent of the flag attribute. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "flagAttributes": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagattributes$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Flagattributes$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Flagattributes$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Flagattributes$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Flagattributes$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagattributes$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagattributes$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagattributes$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/flagAttributes').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Update a single flag attribute. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagAttributes.patch({ + * // Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/flagAttributes/{flag_attribute_id\}" + * name: 'projects/my-project/locations/my-location/flagAttributes/my-flagAttribute', + * // 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: 'placeholder-value', + * // Field mask is used to specify the fields to be overwritten in the FlagAttribute 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 in the FlagAttribute will be overwritten. + * updateMask: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "attributeValueType": "my_attributeValueType", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "key": "my_key", + * // "labels": {}, + * // "name": "my_name", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "attributeValueType": "my_attributeValueType", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "key": "my_key", + * // "labels": {}, + * // "name": "my_name", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagattributes$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Flagattributes$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Flagattributes$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Flagattributes$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Flagattributes$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagattributes$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagattributes$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagattributes$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Flagattributes$Create extends StandardParameters { + /** + * Required. The ID value for the new flag attribute. + */ + flagAttributeId?: string; + /** + * Required. The parent of the flag attribute. + */ + parent?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$FlagAttribute; + } + export interface Params$Resource$Projects$Locations$Flagattributes$Delete extends StandardParameters { + /** + * The etag known to the client for the expected state of the flag attribute. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the flag attribute. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + */ + etag?: string; + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Flagattributes$Get extends StandardParameters { + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Flagattributes$List extends StandardParameters { + /** + * Filter the list as specified in https://google.aip.dev/160. + */ + filter?: string; + /** + * Order results as specified in https://google.aip.dev/132. + */ + orderBy?: string; + /** + * The maximum number of flag attributes to send per page. + */ + pageSize?: number; + /** + * The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent of the flag attribute. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Flagattributes$Patch extends StandardParameters { + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/flagAttributes/{flag_attribute_id\}" + */ + name?: string; + /** + * 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; + /** + * Field mask is used to specify the fields to be overwritten in the FlagAttribute 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 in the FlagAttribute will be overwritten. + */ + updateMask?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$FlagAttribute; + } + + export class Resource$Projects$Locations$Flagreleases { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a new flag release. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagReleases.create({ + * // Required. The ID value for the new flag release. + * flagReleaseId: 'placeholder-value', + * // Required. The parent of the flag release. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "allFlags": false, + * // "allFlagsRelease": false, + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "effectiveFlagRevisions": [], + * // "etag": "my_etag", + * // "flagRevisions": [], + * // "flagRevisionsRelease": {}, + * // "flagSets": [], + * // "flagSetsRelease": {}, + * // "labels": {}, + * // "name": "my_name", + * // "obsoleteFlags": [], + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "allFlags": false, + * // "allFlagsRelease": false, + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "effectiveFlagRevisions": [], + * // "etag": "my_etag", + * // "flagRevisions": [], + * // "flagRevisionsRelease": {}, + * // "flagSets": [], + * // "flagSetsRelease": {}, + * // "labels": {}, + * // "name": "my_name", + * // "obsoleteFlags": [], + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagreleases$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Flagreleases$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Flagreleases$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Flagreleases$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Flagreleases$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagreleases$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagreleases$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagreleases$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/flagReleases').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a single flag release. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagReleases.delete({ + * // The etag known to the client for the expected state of the flag release. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the flag release. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + * etag: 'placeholder-value', + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/flagReleases/my-flagRelease', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagreleases$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Flagreleases$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Flagreleases$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Flagreleases$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Flagreleases$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagreleases$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagreleases$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagreleases$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a single flag release. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagReleases.get({ + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/flagReleases/my-flagRelease', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "allFlags": false, + * // "allFlagsRelease": false, + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "effectiveFlagRevisions": [], + * // "etag": "my_etag", + * // "flagRevisions": [], + * // "flagRevisionsRelease": {}, + * // "flagSets": [], + * // "flagSetsRelease": {}, + * // "labels": {}, + * // "name": "my_name", + * // "obsoleteFlags": [], + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagreleases$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Flagreleases$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Flagreleases$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Flagreleases$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Flagreleases$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagreleases$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagreleases$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagreleases$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a collection of flag releases. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagReleases.list({ + * // Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // The maximum number of flag releases to send per page. + * pageSize: 'placeholder-value', + * // The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent of the flag release. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "flagReleases": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagreleases$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Flagreleases$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Flagreleases$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Flagreleases$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Flagreleases$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagreleases$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagreleases$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagreleases$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/flagReleases').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Update a single flag release. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagReleases.patch({ + * // Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/flagReleases/{flag_release_id\}" + * name: 'projects/my-project/locations/my-location/flagReleases/my-flagRelease', + * // 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: 'placeholder-value', + * // Field mask is used to specify the fields to be overwritten in the FlagRelease 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 in the FlagRelease will be overwritten. + * updateMask: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "allFlags": false, + * // "allFlagsRelease": false, + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "effectiveFlagRevisions": [], + * // "etag": "my_etag", + * // "flagRevisions": [], + * // "flagRevisionsRelease": {}, + * // "flagSets": [], + * // "flagSetsRelease": {}, + * // "labels": {}, + * // "name": "my_name", + * // "obsoleteFlags": [], + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "allFlags": false, + * // "allFlagsRelease": false, + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "effectiveFlagRevisions": [], + * // "etag": "my_etag", + * // "flagRevisions": [], + * // "flagRevisionsRelease": {}, + * // "flagSets": [], + * // "flagSetsRelease": {}, + * // "labels": {}, + * // "name": "my_name", + * // "obsoleteFlags": [], + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagreleases$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Flagreleases$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Flagreleases$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Flagreleases$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Flagreleases$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagreleases$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagreleases$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagreleases$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Flagreleases$Create extends StandardParameters { + /** + * Required. The ID value for the new flag release. + */ + flagReleaseId?: string; + /** + * Required. The parent of the flag release. + */ + parent?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$FlagRelease; + } + export interface Params$Resource$Projects$Locations$Flagreleases$Delete extends StandardParameters { + /** + * The etag known to the client for the expected state of the flag release. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the flag release. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + */ + etag?: string; + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Flagreleases$Get extends StandardParameters { + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Flagreleases$List extends StandardParameters { + /** + * Filter the list as specified in https://google.aip.dev/160. + */ + filter?: string; + /** + * Order results as specified in https://google.aip.dev/132. + */ + orderBy?: string; + /** + * The maximum number of flag releases to send per page. + */ + pageSize?: number; + /** + * The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent of the flag release. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Flagreleases$Patch extends StandardParameters { + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/flagReleases/{flag_release_id\}" + */ + name?: string; + /** + * 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; + /** + * Field mask is used to specify the fields to be overwritten in the FlagRelease 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 in the FlagRelease will be overwritten. + */ + updateMask?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$FlagRelease; + } + + export class Resource$Projects$Locations$Flagrevisions { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a new flag revision. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagRevisions.create({ + * // Required. The ID value for the new flag revision. + * flagRevisionId: 'placeholder-value', + * // Required. The parent of the flag revision. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "evaluationSpec": {}, + * // "flag": "my_flag", + * // "labels": {}, + * // "name": "my_name", + * // "snapshot": {}, + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "evaluationSpec": {}, + * // "flag": "my_flag", + * // "labels": {}, + * // "name": "my_name", + * // "snapshot": {}, + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagrevisions$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Flagrevisions$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Flagrevisions$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Flagrevisions$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Flagrevisions$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagrevisions$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagrevisions$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagrevisions$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/flagRevisions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a single flag revision. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagRevisions.delete({ + * // The etag known to the client for the expected state of the flag revision. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the flag revision. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + * etag: 'placeholder-value', + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/flagRevisions/my-flagRevision', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagrevisions$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Flagrevisions$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Flagrevisions$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Flagrevisions$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Flagrevisions$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagrevisions$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagrevisions$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagrevisions$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a single flag revision. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagRevisions.get({ + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/flagRevisions/my-flagRevision', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "evaluationSpec": {}, + * // "flag": "my_flag", + * // "labels": {}, + * // "name": "my_name", + * // "snapshot": {}, + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagrevisions$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Flagrevisions$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Flagrevisions$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Flagrevisions$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Flagrevisions$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagrevisions$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagrevisions$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagrevisions$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a collection of flag revisions. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagRevisions.list({ + * // Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // The maximum number of flag revisions to send per page. + * pageSize: 'placeholder-value', + * // The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent of the flag revision. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "flagRevisions": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagrevisions$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Flagrevisions$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Flagrevisions$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Flagrevisions$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Flagrevisions$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagrevisions$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagrevisions$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagrevisions$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/flagRevisions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Update a single flag revision. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flagRevisions.patch({ + * // Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/flagRevisions/{flag_revision_id\}" + * name: 'projects/my-project/locations/my-location/flagRevisions/my-flagRevision', + * // 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: 'placeholder-value', + * // Field mask is used to specify the fields to be overwritten in the FlagRevision 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 in the FlagRevision will be overwritten. + * updateMask: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "evaluationSpec": {}, + * // "flag": "my_flag", + * // "labels": {}, + * // "name": "my_name", + * // "snapshot": {}, + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "evaluationSpec": {}, + * // "flag": "my_flag", + * // "labels": {}, + * // "name": "my_name", + * // "snapshot": {}, + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flagrevisions$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Flagrevisions$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Flagrevisions$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Flagrevisions$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Flagrevisions$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flagrevisions$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flagrevisions$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flagrevisions$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + 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$Flagrevisions$Create extends StandardParameters { + /** + * Required. The ID value for the new flag revision. + */ + flagRevisionId?: string; + /** + * Required. The parent of the flag revision. + */ + parent?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$FlagRevision; + } + export interface Params$Resource$Projects$Locations$Flagrevisions$Delete extends StandardParameters { + /** + * The etag known to the client for the expected state of the flag revision. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the flag revision. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + */ + etag?: string; + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Flagrevisions$Get extends StandardParameters { + /** + * Required. The resource name of the resource within a service. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Flagrevisions$List extends StandardParameters { + /** + * Filter the list as specified in https://google.aip.dev/160. + */ + filter?: string; + /** + * Order results as specified in https://google.aip.dev/132. + */ + orderBy?: string; + /** + * The maximum number of flag revisions to send per page. + */ + pageSize?: number; + /** + * The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent of the flag revision. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Flagrevisions$Patch extends StandardParameters { + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/flagRevisions/{flag_revision_id\}" + */ + name?: string; + /** + * 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; + /** + * Field mask is used to specify the fields to be overwritten in the FlagRevision 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 in the FlagRevision will be overwritten. + */ + updateMask?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$FlagRevision; + } + + export class Resource$Projects$Locations$Flags { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a new flag. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flags.create({ + * // Required. The ID value for the new flag. + * flagId: 'placeholder-value', + * // Required. The parent of the flag. + * parent: 'projects/my-project/locations/my-location', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "evaluationSpec": {}, + * // "flagSet": "my_flagSet", + * // "flagValueType": "my_flagValueType", + * // "key": "my_key", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType", + * // "variants": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "evaluationSpec": {}, + * // "flagSet": "my_flagSet", + * // "flagValueType": "my_flagValueType", + * // "key": "my_key", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType", + * // "variants": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flags$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Flags$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Flags$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Flags$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Flags$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flags$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flags$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flags$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/flags').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a single flag. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flags.delete({ + * // The etag known to the client for the expected state of the flag. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the flag. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + * etag: 'placeholder-value', + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/flags/my-flag', + * // 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: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flags$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Flags$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Flags$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Flags$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Flags$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flags$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flags$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flags$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a single flag. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/saasservicemgmt.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const saasservicemgmt = google.saasservicemgmt('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await saasservicemgmt.projects.locations.flags.get({ + * // Required. The resource name of the resource within a service. + * name: 'projects/my-project/locations/my-location/flags/my-flag', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "evaluationSpec": {}, + * // "flagSet": "my_flagSet", + * // "flagValueType": "my_flagValueType", + * // "key": "my_key", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType", + * // "variants": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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$Flags$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Flags$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Flags$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Flags$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Flags$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Flags$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Flags$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Flags$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://saasservicemgmt.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Gets information about a location. + * Retrieve a collection of flags. * @example * ```js * // Before running the sample: @@ -1159,19 +5232,25 @@ export namespace saasservicemgmt_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await saasservicemgmt.projects.locations.get({ - * // Resource name for the location. - * name: 'projects/my-project/locations/my-location', + * const res = await saasservicemgmt.projects.locations.flags.list({ + * // Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // The maximum number of flags to send per page. + * pageSize: 'placeholder-value', + * // The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent of the flag. + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "displayName": "my_displayName", - * // "labels": {}, - * // "locationId": "my_locationId", - * // "metadata": {}, - * // "name": "my_name" + * // "flags": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -1187,57 +5266,53 @@ export namespace saasservicemgmt_v1beta1 { * @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, + list( + params: Params$Resource$Projects$Locations$Flags$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Get, + list( + params?: Params$Resource$Projects$Locations$Flags$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Get, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Flags$List, 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 + list( + params: Params$Resource$Projects$Locations$Flags$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Flags$List, + callback: BodyResponseCallback ): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Flags$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Get; + {}) as Params$Resource$Projects$Locations$Flags$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Get; + params = {} as Params$Resource$Projects$Locations$Flags$List; options = {}; } @@ -1251,29 +5326,32 @@ export namespace saasservicemgmt_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1beta1/{+parent}/flags').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Update a single flag. * @example * ```js * // Before running the sample: @@ -1302,24 +5380,59 @@ export namespace saasservicemgmt_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await saasservicemgmt.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. - * extraLocationTypes: 'placeholder-value', - * // 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: 'placeholder-value', - * // The resource that owns the locations collection, if applicable. - * name: 'projects/my-project', - * // The maximum number of results to return. If not set, the service selects a default. - * pageSize: 'placeholder-value', - * // A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. - * pageToken: 'placeholder-value', + * const res = await saasservicemgmt.projects.locations.flags.patch({ + * // Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/flags/{flag_id\}" + * name: 'projects/my-project/locations/my-location/flags/my-flag', + * // 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: 'placeholder-value', + * // Field mask is used to specify the fields to be overwritten in the Flag 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 in the Flag will be overwritten. + * updateMask: 'placeholder-value', + * // If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "evaluationSpec": {}, + * // "flagSet": "my_flagSet", + * // "flagValueType": "my_flagValueType", + * // "key": "my_key", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType", + * // "variants": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "locations": [], - * // "nextPageToken": "my_nextPageToken" + * // "annotations": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "evaluationSpec": {}, + * // "flagSet": "my_flagSet", + * // "flagValueType": "my_flagValueType", + * // "key": "my_key", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "uid": "my_uid", + * // "unitKind": "my_unitKind", + * // "updateTime": "my_updateTime", + * // "valueType": "my_valueType", + * // "variants": [] * // } * } * @@ -1335,55 +5448,53 @@ export namespace saasservicemgmt_v1beta1 { * @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, + patch( + params: Params$Resource$Projects$Locations$Flags$Patch, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$List, + patch( + params?: Params$Resource$Projects$Locations$Flags$Patch, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$List, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Flags$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Flags$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$List, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Flags$Patch, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Flags$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$List; + {}) as Params$Resource$Projects$Locations$Flags$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$List; + params = {} as Params$Resource$Projects$Locations$Flags$Patch; options = {}; } @@ -1397,11 +5508,8 @@ export namespace saasservicemgmt_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}/locations').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options @@ -1412,43 +5520,107 @@ export namespace saasservicemgmt_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Projects$Locations$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Flags$Create extends StandardParameters { /** - * Resource name for the location. + * Required. The ID value for the new flag. + */ + flagId?: string; + /** + * Required. The parent of the flag. + */ + parent?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Flag; + } + export interface Params$Resource$Projects$Locations$Flags$Delete extends StandardParameters { + /** + * The etag known to the client for the expected state of the flag. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the flag. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. + */ + etag?: string; + /** + * Required. The resource name of the resource within a service. */ name?: string; + /** + * 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; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; } - export interface Params$Resource$Projects$Locations$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Flags$Get extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Required. The resource name of the resource within a service. */ - extraLocationTypes?: string[]; + name?: string; + } + export interface Params$Resource$Projects$Locations$Flags$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 the list as specified in https://google.aip.dev/160. */ filter?: string; /** - * The resource that owns the locations collection, if applicable. + * Order results as specified in https://google.aip.dev/132. */ - name?: string; + orderBy?: string; /** - * The maximum number of results to return. If not set, the service selects a default. + * The maximum number of flags to send per page. */ pageSize?: number; /** - * A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + * The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. */ pageToken?: string; + /** + * Required. The parent of the flag. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Flags$Patch extends StandardParameters { + /** + * Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project\}/locations/{location\}/flags/{flag_id\}" + */ + name?: string; + /** + * 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; + /** + * Field mask is used to specify the fields to be overwritten in the Flag 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 in the Flag will be overwritten. + */ + updateMask?: string; + /** + * If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Flag; } export class Resource$Projects$Locations$Releases { @@ -1502,6 +5674,7 @@ export namespace saasservicemgmt_v1beta1 { * // request body parameters * // { * // "annotations": {}, + * // "applicationTemplateComponent": {}, * // "blueprint": {}, * // "createTime": "my_createTime", * // "etag": "my_etag", @@ -1522,6 +5695,7 @@ export namespace saasservicemgmt_v1beta1 { * // Example response * // { * // "annotations": {}, + * // "applicationTemplateComponent": {}, * // "blueprint": {}, * // "createTime": "my_createTime", * // "etag": "my_etag", @@ -1811,6 +5985,7 @@ export namespace saasservicemgmt_v1beta1 { * // Example response * // { * // "annotations": {}, + * // "applicationTemplateComponent": {}, * // "blueprint": {}, * // "createTime": "my_createTime", * // "etag": "my_etag", @@ -2114,6 +6289,7 @@ export namespace saasservicemgmt_v1beta1 { * // request body parameters * // { * // "annotations": {}, + * // "applicationTemplateComponent": {}, * // "blueprint": {}, * // "createTime": "my_createTime", * // "etag": "my_etag", @@ -2134,6 +6310,7 @@ export namespace saasservicemgmt_v1beta1 { * // Example response * // { * // "annotations": {}, + * // "applicationTemplateComponent": {}, * // "blueprint": {}, * // "createTime": "my_createTime", * // "etag": "my_etag", @@ -2391,7 +6568,6 @@ export namespace saasservicemgmt_v1beta1 { * // "errorBudget": {}, * // "etag": "my_etag", * // "labels": {}, - * // "maintenancePolicyEnforcement": "my_maintenancePolicyEnforcement", * // "name": "my_name", * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", * // "uid": "my_uid", @@ -2411,7 +6587,6 @@ export namespace saasservicemgmt_v1beta1 { * // "errorBudget": {}, * // "etag": "my_etag", * // "labels": {}, - * // "maintenancePolicyEnforcement": "my_maintenancePolicyEnforcement", * // "name": "my_name", * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", * // "uid": "my_uid", @@ -2700,7 +6875,6 @@ export namespace saasservicemgmt_v1beta1 { * // "errorBudget": {}, * // "etag": "my_etag", * // "labels": {}, - * // "maintenancePolicyEnforcement": "my_maintenancePolicyEnforcement", * // "name": "my_name", * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", * // "uid": "my_uid", @@ -3003,7 +7177,6 @@ export namespace saasservicemgmt_v1beta1 { * // "errorBudget": {}, * // "etag": "my_etag", * // "labels": {}, - * // "maintenancePolicyEnforcement": "my_maintenancePolicyEnforcement", * // "name": "my_name", * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", * // "uid": "my_uid", @@ -3023,7 +7196,6 @@ export namespace saasservicemgmt_v1beta1 { * // "errorBudget": {}, * // "etag": "my_etag", * // "labels": {}, - * // "maintenancePolicyEnforcement": "my_maintenancePolicyEnforcement", * // "name": "my_name", * // "rolloutOrchestrationStrategy": "my_rolloutOrchestrationStrategy", * // "uid": "my_uid", @@ -3278,6 +7450,7 @@ export namespace saasservicemgmt_v1beta1 { * // "effectiveUnitFilter": "my_effectiveUnitFilter", * // "endTime": "my_endTime", * // "etag": "my_etag", + * // "flagRelease": "my_flagRelease", * // "labels": {}, * // "name": "my_name", * // "parentRollout": "my_parentRollout", @@ -3307,6 +7480,7 @@ export namespace saasservicemgmt_v1beta1 { * // "effectiveUnitFilter": "my_effectiveUnitFilter", * // "endTime": "my_endTime", * // "etag": "my_etag", + * // "flagRelease": "my_flagRelease", * // "labels": {}, * // "name": "my_name", * // "parentRollout": "my_parentRollout", @@ -3605,6 +7779,7 @@ export namespace saasservicemgmt_v1beta1 { * // "effectiveUnitFilter": "my_effectiveUnitFilter", * // "endTime": "my_endTime", * // "etag": "my_etag", + * // "flagRelease": "my_flagRelease", * // "labels": {}, * // "name": "my_name", * // "parentRollout": "my_parentRollout", @@ -3917,6 +8092,7 @@ export namespace saasservicemgmt_v1beta1 { * // "effectiveUnitFilter": "my_effectiveUnitFilter", * // "endTime": "my_endTime", * // "etag": "my_etag", + * // "flagRelease": "my_flagRelease", * // "labels": {}, * // "name": "my_name", * // "parentRollout": "my_parentRollout", @@ -3946,6 +8122,7 @@ export namespace saasservicemgmt_v1beta1 { * // "effectiveUnitFilter": "my_effectiveUnitFilter", * // "endTime": "my_endTime", * // "etag": "my_etag", + * // "flagRelease": "my_flagRelease", * // "labels": {}, * // "name": "my_name", * // "parentRollout": "my_parentRollout", @@ -4202,11 +8379,16 @@ export namespace saasservicemgmt_v1beta1 { * // request body parameters * // { * // "annotations": {}, + * // "applicationTemplate": {}, + * // "blueprintRepo": "my_blueprintRepo", + * // "conditions": [], * // "createTime": "my_createTime", + * // "error": {}, * // "etag": "my_etag", * // "labels": {}, * // "locations": [], * // "name": "my_name", + * // "state": "my_state", * // "uid": "my_uid", * // "updateTime": "my_updateTime" * // } @@ -4217,11 +8399,16 @@ export namespace saasservicemgmt_v1beta1 { * // Example response * // { * // "annotations": {}, + * // "applicationTemplate": {}, + * // "blueprintRepo": "my_blueprintRepo", + * // "conditions": [], * // "createTime": "my_createTime", + * // "error": {}, * // "etag": "my_etag", * // "labels": {}, * // "locations": [], * // "name": "my_name", + * // "state": "my_state", * // "uid": "my_uid", * // "updateTime": "my_updateTime" * // } @@ -4501,11 +8688,16 @@ export namespace saasservicemgmt_v1beta1 { * // Example response * // { * // "annotations": {}, + * // "applicationTemplate": {}, + * // "blueprintRepo": "my_blueprintRepo", + * // "conditions": [], * // "createTime": "my_createTime", + * // "error": {}, * // "etag": "my_etag", * // "labels": {}, * // "locations": [], * // "name": "my_name", + * // "state": "my_state", * // "uid": "my_uid", * // "updateTime": "my_updateTime" * // } @@ -4797,11 +8989,16 @@ export namespace saasservicemgmt_v1beta1 { * // request body parameters * // { * // "annotations": {}, + * // "applicationTemplate": {}, + * // "blueprintRepo": "my_blueprintRepo", + * // "conditions": [], * // "createTime": "my_createTime", + * // "error": {}, * // "etag": "my_etag", * // "labels": {}, * // "locations": [], * // "name": "my_name", + * // "state": "my_state", * // "uid": "my_uid", * // "updateTime": "my_updateTime" * // } @@ -4812,11 +9009,16 @@ export namespace saasservicemgmt_v1beta1 { * // Example response * // { * // "annotations": {}, + * // "applicationTemplate": {}, + * // "blueprintRepo": "my_blueprintRepo", + * // "conditions": [], * // "createTime": "my_createTime", + * // "error": {}, * // "etag": "my_etag", * // "labels": {}, * // "locations": [], * // "name": "my_name", + * // "state": "my_state", * // "uid": "my_uid", * // "updateTime": "my_updateTime" * // } @@ -5923,7 +10125,10 @@ export namespace saasservicemgmt_v1beta1 { * // request body parameters * // { * // "annotations": {}, + * // "appParams": {}, + * // "applicationTemplateComponent": {}, * // "createTime": "my_createTime", + * // "defaultFlagRevisions": [], * // "defaultRelease": "my_defaultRelease", * // "dependencies": [], * // "etag": "my_etag", @@ -5942,7 +10147,10 @@ export namespace saasservicemgmt_v1beta1 { * // Example response * // { * // "annotations": {}, + * // "appParams": {}, + * // "applicationTemplateComponent": {}, * // "createTime": "my_createTime", + * // "defaultFlagRevisions": [], * // "defaultRelease": "my_defaultRelease", * // "dependencies": [], * // "etag": "my_etag", @@ -6230,7 +10438,10 @@ export namespace saasservicemgmt_v1beta1 { * // Example response * // { * // "annotations": {}, + * // "appParams": {}, + * // "applicationTemplateComponent": {}, * // "createTime": "my_createTime", + * // "defaultFlagRevisions": [], * // "defaultRelease": "my_defaultRelease", * // "dependencies": [], * // "etag": "my_etag", @@ -6532,7 +10743,10 @@ export namespace saasservicemgmt_v1beta1 { * // request body parameters * // { * // "annotations": {}, + * // "appParams": {}, + * // "applicationTemplateComponent": {}, * // "createTime": "my_createTime", + * // "defaultFlagRevisions": [], * // "defaultRelease": "my_defaultRelease", * // "dependencies": [], * // "etag": "my_etag", @@ -6551,7 +10765,10 @@ export namespace saasservicemgmt_v1beta1 { * // Example response * // { * // "annotations": {}, + * // "appParams": {}, + * // "applicationTemplateComponent": {}, * // "createTime": "my_createTime", + * // "defaultFlagRevisions": [], * // "defaultRelease": "my_defaultRelease", * // "dependencies": [], * // "etag": "my_etag", @@ -6811,6 +11028,7 @@ export namespace saasservicemgmt_v1beta1 { * // "engineState": "my_engineState", * // "errorCategory": "my_errorCategory", * // "etag": "my_etag", + * // "flagUpdate": {}, * // "labels": {}, * // "name": "my_name", * // "parentUnitOperation": "my_parentUnitOperation", @@ -6838,6 +11056,7 @@ export namespace saasservicemgmt_v1beta1 { * // "engineState": "my_engineState", * // "errorCategory": "my_errorCategory", * // "etag": "my_etag", + * // "flagUpdate": {}, * // "labels": {}, * // "name": "my_name", * // "parentUnitOperation": "my_parentUnitOperation", @@ -7134,6 +11353,7 @@ export namespace saasservicemgmt_v1beta1 { * // "engineState": "my_engineState", * // "errorCategory": "my_errorCategory", * // "etag": "my_etag", + * // "flagUpdate": {}, * // "labels": {}, * // "name": "my_name", * // "parentUnitOperation": "my_parentUnitOperation", @@ -7446,6 +11666,7 @@ export namespace saasservicemgmt_v1beta1 { * // "engineState": "my_engineState", * // "errorCategory": "my_errorCategory", * // "etag": "my_etag", + * // "flagUpdate": {}, * // "labels": {}, * // "name": "my_name", * // "parentUnitOperation": "my_parentUnitOperation", @@ -7473,6 +11694,7 @@ export namespace saasservicemgmt_v1beta1 { * // "engineState": "my_engineState", * // "errorCategory": "my_errorCategory", * // "etag": "my_etag", + * // "flagUpdate": {}, * // "labels": {}, * // "name": "my_name", * // "parentUnitOperation": "my_parentUnitOperation", @@ -7725,11 +11947,14 @@ export namespace saasservicemgmt_v1beta1 { * // request body parameters * // { * // "annotations": {}, + * // "application": "my_application", * // "conditions": [], * // "createTime": "my_createTime", * // "dependencies": [], * // "dependents": [], * // "etag": "my_etag", + * // "flagConfigName": "my_flagConfigName", + * // "flagRevisions": [], * // "inputVariables": [], * // "labels": {}, * // "maintenance": {}, @@ -7739,6 +11964,8 @@ export namespace saasservicemgmt_v1beta1 { * // "outputVariables": [], * // "pendingOperations": [], * // "release": "my_release", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "scheduledOperations": [], * // "state": "my_state", * // "systemCleanupAt": "my_systemCleanupAt", @@ -7755,11 +11982,14 @@ export namespace saasservicemgmt_v1beta1 { * // Example response * // { * // "annotations": {}, + * // "application": "my_application", * // "conditions": [], * // "createTime": "my_createTime", * // "dependencies": [], * // "dependents": [], * // "etag": "my_etag", + * // "flagConfigName": "my_flagConfigName", + * // "flagRevisions": [], * // "inputVariables": [], * // "labels": {}, * // "maintenance": {}, @@ -7769,6 +11999,8 @@ export namespace saasservicemgmt_v1beta1 { * // "outputVariables": [], * // "pendingOperations": [], * // "release": "my_release", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "scheduledOperations": [], * // "state": "my_state", * // "systemCleanupAt": "my_systemCleanupAt", @@ -8054,11 +12286,14 @@ export namespace saasservicemgmt_v1beta1 { * // Example response * // { * // "annotations": {}, + * // "application": "my_application", * // "conditions": [], * // "createTime": "my_createTime", * // "dependencies": [], * // "dependents": [], * // "etag": "my_etag", + * // "flagConfigName": "my_flagConfigName", + * // "flagRevisions": [], * // "inputVariables": [], * // "labels": {}, * // "maintenance": {}, @@ -8068,6 +12303,8 @@ export namespace saasservicemgmt_v1beta1 { * // "outputVariables": [], * // "pendingOperations": [], * // "release": "my_release", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "scheduledOperations": [], * // "state": "my_state", * // "systemCleanupAt": "my_systemCleanupAt", @@ -8365,11 +12602,14 @@ export namespace saasservicemgmt_v1beta1 { * // request body parameters * // { * // "annotations": {}, + * // "application": "my_application", * // "conditions": [], * // "createTime": "my_createTime", * // "dependencies": [], * // "dependents": [], * // "etag": "my_etag", + * // "flagConfigName": "my_flagConfigName", + * // "flagRevisions": [], * // "inputVariables": [], * // "labels": {}, * // "maintenance": {}, @@ -8379,6 +12619,8 @@ export namespace saasservicemgmt_v1beta1 { * // "outputVariables": [], * // "pendingOperations": [], * // "release": "my_release", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "scheduledOperations": [], * // "state": "my_state", * // "systemCleanupAt": "my_systemCleanupAt", @@ -8395,11 +12637,14 @@ export namespace saasservicemgmt_v1beta1 { * // Example response * // { * // "annotations": {}, + * // "application": "my_application", * // "conditions": [], * // "createTime": "my_createTime", * // "dependencies": [], * // "dependents": [], * // "etag": "my_etag", + * // "flagConfigName": "my_flagConfigName", + * // "flagRevisions": [], * // "inputVariables": [], * // "labels": {}, * // "maintenance": {}, @@ -8409,6 +12654,8 @@ export namespace saasservicemgmt_v1beta1 { * // "outputVariables": [], * // "pendingOperations": [], * // "release": "my_release", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "scheduledOperations": [], * // "state": "my_state", * // "systemCleanupAt": "my_systemCleanupAt", diff --git a/src/apis/searchads360/v0.ts b/src/apis/searchads360/v0.ts index 66cf60e241e..c0c5252c58f 100644 --- a/src/apis/searchads360/v0.ts +++ b/src/apis/searchads360/v0.ts @@ -458,11 +458,11 @@ export namespace searchads360_v0 { */ allConversionsByConversionDate?: number | null; /** - * The number of times people clicked the "Call" button to call a store during or after clicking an ad. This number doesn't include whether or not calls were connected, or the duration of any calls. This metric applies to feed items only. + * The number of times people clicked the "Call" button to call a business during or after clicking an ad. This number doesn't include whether or not calls were connected, or the duration of any calls. This metric applies to feed items only. */ allConversionsFromClickToCall?: number | null; /** - * The number of times people clicked a "Get directions" button to navigate to a store after clicking an ad. This metric applies to feed items only. + * The number of times people clicked a "Get directions" button to navigate to a business after clicking an ad. This metric applies to feed items only. */ allConversionsFromDirections?: number | null; /** @@ -474,23 +474,23 @@ export namespace searchads360_v0 { */ allConversionsFromInteractionsValuePerInteraction?: number | null; /** - * The number of times people clicked a link to view a store's menu after clicking an ad. This metric applies to feed items only. + * The number of times people clicked a link to view a business's menu after clicking an ad. This metric applies to feed items only. */ allConversionsFromMenu?: number | null; /** - * The number of times people placed an order at a store after clicking an ad. This metric applies to feed items only. + * The number of times people placed an order at a business after clicking an ad. This metric applies to feed items only. */ allConversionsFromOrder?: number | null; /** - * The number of other conversions (for example, posting a review or saving a location for a store) that occurred after people clicked an ad. This metric applies to feed items only. + * The number of other conversions (for example, posting a review or saving a location for a business) that occurred after people clicked an ad. This metric applies to feed items only. */ allConversionsFromOtherEngagement?: number | null; /** - * Estimated number of times people visited a store after clicking an ad. This metric applies to feed items only. + * Estimated number of times people visited a business after clicking an ad. This metric applies to feed items only. */ allConversionsFromStoreVisit?: number | null; /** - * The number of times that people were taken to a store's URL after clicking an ad. This metric applies to feed items only. + * The number of times that people were taken to a business's URL after clicking an ad. This metric applies to feed items only. */ allConversionsFromStoreWebsite?: number | null; /** @@ -997,6 +997,10 @@ export namespace searchads360_v0 { * Segment only fields. */ export interface Schema$GoogleAdsSearchads360V0Common__Segments { + /** + * Ad Format type. + */ + adFormatType?: string | null; /** * Ad network type. */ @@ -1245,6 +1249,42 @@ export namespace searchads360_v0 { * The raw event conversion dimensions. */ rawEventConversionDimensions?: Schema$GoogleAdsSearchads360V0Common__Value[]; + /** + * The display names of participants in an event listing, like performers, speakers, or teams. + */ + verticalAdsEventParticipantDisplayNames?: string | null; + /** + * The class of the hotel. Generally in the range of 1 to 5 stars, but fully customizable in the hotel feed. + */ + verticalAdsHotelClass?: string | null; + /** + * The listing associated with a listing impression, click or conversion. + */ + verticalAdsListing?: string | null; + /** + * The brand associated with a specific listing within a Vertical Ads context, for example, the brand of a car rental, a vacation home, or an event. + */ + verticalAdsListingBrand?: string | null; + /** + * The city where the vertical ads listing is located. + */ + verticalAdsListingCity?: string | null; + /** + * The country where the vertical ads listing is located. + */ + verticalAdsListingCountry?: string | null; + /** + * The region where the vertical ads listing is located. + */ + verticalAdsListingRegion?: string | null; + /** + * A specific partner account within a Partner Center (for example, Hotel Center) that supplies inventory feed data for Vertical Ads. + */ + verticalAdsPartnerAccount?: string | null; + /** + * Type of vertical ad, such as Vacation Rentals, Car Rentals, or Events, used to categorize and segment data in the context of Vertical Ads. + */ + verticalAdsVertical?: string | null; /** * Week as defined as Monday through Sunday, and represented by the date of Monday. Formatted as yyyy-MM-dd. */ @@ -1879,11 +1919,11 @@ export namespace searchads360_v0 { */ targetGoogleSearch?: boolean | null; /** - * Whether ads will be served on the Google Partner Network. This is available only to some select Google partner accounts. + * Whether ads will be served on the partner network. This is available only to some select partner accounts. Unless you have been instructed to use this field, it likely does not apply to your account. This does not control whether ads will be served on Google Search Partners Network; use `target_search_network` for that instead. */ targetPartnerSearchNetwork?: boolean | null; /** - * Whether ads will be served on partner sites in the Google Search Network (requires `target_google_search` to also be `true`). + * Whether ads will be served on sites in the Google Search Partners Network (requires `target_google_search` to also be `true`). */ targetSearchNetwork?: boolean | null; } @@ -2205,7 +2245,7 @@ export namespace searchads360_v0 { */ adRotationMode?: string | null; /** - * The maximum CPC (cost-per-click) bid. + * The maximum CPC (cost-per-click) bid. This field is used when the ad group's effective bidding strategy is Manual CPC. This field is not applicable and will be ignored if the ad group's campaign is using a portfolio bidding strategy. */ cpcBidMicros?: string | null; /** @@ -3262,7 +3302,7 @@ export namespace searchads360_v0 { */ export interface Schema$GoogleAdsSearchads360V0Resources__CampaignBudget { /** - * The amount of the budget, in the local currency for the account. Amount is specified in micros, where one million is equivalent to one currency unit. Monthly spend is capped at 30.4 times this amount. + * The average daily amount to be spent by the campaign. This field is used when the CampaignBudget `period` is set to `DAILY`, which is the default. Amount is specified in micros in the account's local currency. One million micros is equivalent to one currency unit. The effective monthly spend is capped at 30.4 times this daily amount. This field is mutually exclusive with 'total_amount_micros'. Only one of 'amount_micros' or 'total_amount_micros' should be set. */ amountMicros?: string | null; /** @@ -3394,7 +3434,7 @@ export namespace searchads360_v0 { resourceName?: string | null; } /** - * Cart data sales view. + * Cart data sales view. Provides information about the products which were purchased if conversions with cart data is implemented. Performance metrics like revenue, gross profit, lead/cross-sell metrics etc. and Merchant Center attributes such as brand, category etc. are available for products defined in an inventory feed and sold as a result of Google ads. For purchases attributed to clicks on Shopping ads, dimensions of both clicked and sold products can be viewed together. */ export interface Schema$GoogleAdsSearchads360V0Resources__CartDataSalesView { /** @@ -4215,7 +4255,7 @@ export namespace searchads360_v0 { resourceName?: string | null; } /** - * A user list. This is a list of users a customer may target. + * A user list. This is a list of users a customer may target. The unique key of a user list consists of the following fields: `id`. Note that the `name` must also be unique for user lists owned by a given customer, except in some cases where `access_reason` is set to `SHARED`. Violating the unique name constraint produces error: `UserListError.INVALID_NAME`. */ export interface Schema$GoogleAdsSearchads360V0Resources__UserList { /** @@ -4223,7 +4263,7 @@ export namespace searchads360_v0 { */ id?: string | null; /** - * Name of this user list. Depending on its access_reason, the user list name may not be unique (for example, if access_reason=SHARED) + * Name of this user list. Unique per user list, except in some cases where a user list of the same name has `access_reason` set to `SHARED`. */ name?: string | null; /** @@ -4758,6 +4798,1125 @@ export namespace searchads360_v0 { */ totalResultsCount?: string | null; } + /** + * Indicates that a resource's ability to serve in a particular country is constrained. + */ + export interface Schema$GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraint { + /** + * Geo target constant resource name of the country in which serving is constrained. + */ + countryCriterion?: string | null; + } + /** + * A list of countries where a resource's serving is constrained. + */ + export interface Schema$GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraintList { + /** + * Countries in which serving is restricted. + */ + countries?: Schema$GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraint[]; + /** + * Total number of countries targeted by the resource. + */ + totalTargetedCountries?: number | null; + } + /** + * Indicates that a policy topic was constrained due to disapproval of the website for reseller purposes. + */ + export interface Schema$GoogleAdsSearchads360V23Common_PolicyTopicConstraint_ResellerConstraint {} + /** + * Evidence of mismatches between the URLs of a resource. + */ + export interface Schema$GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationMismatch { + /** + * The set of URLs that did not match each other. + */ + urlTypes?: string[] | null; + } + /** + * Evidence details when the destination is returning an HTTP error code or isn't functional in all locations for commonly used devices. + */ + export interface Schema$GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationNotWorking { + /** + * The type of device that failed to load the URL. + */ + device?: string | null; + /** + * The type of DNS error. + */ + dnsErrorType?: string | null; + /** + * The full URL that didn't work. + */ + expandedUrl?: string | null; + /** + * The HTTP error code. + */ + httpErrorCode?: string | null; + /** + * The time the URL was last checked. The format is "YYYY-MM-DD HH:MM:SS". Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + */ + lastCheckedDateTime?: string | null; + } + /** + * A list of strings found in a destination page that caused a policy finding. + */ + export interface Schema$GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationTextList { + /** + * List of text found in the resource's destination page. + */ + destinationTexts?: string[] | null; + } + /** + * A list of fragments of text that violated a policy. + */ + export interface Schema$GoogleAdsSearchads360V23Common_PolicyTopicEvidence_TextList { + /** + * The fragments of text from the resource that caused the policy finding. + */ + texts?: string[] | null; + } + /** + * A list of websites that caused a policy finding. Used for ONE_WEBSITE_PER_AD_GROUP policy topic, for example. In case there are more than five websites, only the top five (those that appear in resources the most) will be listed here. + */ + export interface Schema$GoogleAdsSearchads360V23Common_PolicyTopicEvidence_WebsiteList { + /** + * Websites that caused the policy finding. + */ + websites?: string[] | null; + } + /** + * Describes the effect on serving that a policy topic entry will have. + */ + export interface Schema$GoogleAdsSearchads360V23Common__PolicyTopicConstraint { + /** + * Countries where the resource's domain is not covered by the certificates associated with it. + */ + certificateDomainMismatchInCountryList?: Schema$GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraintList; + /** + * Countries where a certificate is required for serving. + */ + certificateMissingInCountryList?: Schema$GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraintList; + /** + * Countries where the resource cannot serve. + */ + countryConstraintList?: Schema$GoogleAdsSearchads360V23Common_PolicyTopicConstraint_CountryConstraintList; + /** + * Reseller constraint. + */ + resellerConstraint?: Schema$GoogleAdsSearchads360V23Common_PolicyTopicConstraint_ResellerConstraint; + } + /** + * Policy finding attached to a resource (for example, alcohol policy associated with a site that sells alcohol). Each PolicyTopicEntry has a topic that indicates the specific ads policy the entry is about and a type to indicate the effect that the entry will have on serving. It may optionally have one or more evidences that indicate the reason for the finding. It may also optionally have one or more constraints that provide details about how serving may be restricted. + */ + export interface Schema$GoogleAdsSearchads360V23Common__PolicyTopicEntry { + /** + * Indicates how serving of this resource may be affected (for example, not serving in a country). + */ + constraints?: Schema$GoogleAdsSearchads360V23Common__PolicyTopicConstraint[]; + /** + * Additional information that explains policy finding (for example, the brand name for a trademark finding). + */ + evidences?: Schema$GoogleAdsSearchads360V23Common__PolicyTopicEvidence[]; + /** + * Policy topic this finding refers to. For example, "ALCOHOL", "TRADEMARKS_IN_AD_TEXT", or "DESTINATION_NOT_WORKING". The set of possible policy topics is not fixed for a particular API version and may change at any time. + */ + topic?: string | null; + /** + * Describes the negative or positive effect this policy will have on serving. + */ + type?: string | null; + } + /** + * Additional information that explains a policy finding. + */ + export interface Schema$GoogleAdsSearchads360V23Common__PolicyTopicEvidence { + /** + * Mismatch between the destinations of a resource's URLs. + */ + destinationMismatch?: Schema$GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationMismatch; + /** + * Details when the destination is returning an HTTP error code or isn't functional in all locations for commonly used devices. + */ + destinationNotWorking?: Schema$GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationNotWorking; + /** + * The text in the destination of the resource that is causing a policy finding. + */ + destinationTextList?: Schema$GoogleAdsSearchads360V23Common_PolicyTopicEvidence_DestinationTextList; + /** + * The language the resource was detected to be written in. This is an IETF language tag such as "en-US". + */ + languageCode?: string | null; + /** + * List of evidence found in the text of a resource. + */ + textList?: Schema$GoogleAdsSearchads360V23Common_PolicyTopicEvidence_TextList; + /** + * List of websites linked with this resource. + */ + websiteList?: Schema$GoogleAdsSearchads360V23Common_PolicyTopicEvidence_WebsiteList; + } + /** + * Key of the violation. The key is used for referring to a violation when filing an exemption request. + */ + export interface Schema$GoogleAdsSearchads360V23Common__PolicyViolationKey { + /** + * Unique ID of the violated policy. + */ + policyName?: string | null; + /** + * The text that violates the policy if specified. Otherwise, refers to the policy in general (for example, when requesting to be exempt from the whole policy). If not specified for criterion exemptions, the whole policy is implied. Must be specified for ad exemptions. + */ + violatingText?: string | null; + } + /** + * A generic data container. + */ + export interface Schema$GoogleAdsSearchads360V23Common__Value { + /** + * A boolean. + */ + booleanValue?: boolean | null; + /** + * A double. + */ + doubleValue?: number | null; + /** + * A float. + */ + floatValue?: number | null; + /** + * An int64. + */ + int64Value?: string | null; + /** + * A string. + */ + stringValue?: string | null; + } + /** + * A part of a field path. + */ + export interface Schema$GoogleAdsSearchads360V23Errors_ErrorLocation_FieldPathElement { + /** + * The name of a field or a oneof + */ + fieldName?: string | null; + /** + * If field_name is a repeated field, this is the element that failed + */ + index?: number | null; + } + /** + * Error details for a budget below per-day minimum error. + */ + export interface Schema$GoogleAdsSearchads360V23Errors__BudgetPerDayMinimumErrorDetails { + /** + * The minimum budget required by the campaign per day, in micros of the advertiser currency. Applies to both daily and custom budgets. + */ + budgetPerDayMinimumMicros?: string | null; + /** + * The advertiser's currency, represented as a three-letter ISO 4217 currency code (such as "USD"). + */ + currencyCode?: string | null; + /** + * The budget amount value that was rejected as too low, in micros of the advertiser currency. Only set if this error is caused by the amount field value. + */ + failedBudgetAmountMicros?: string | null; + /** + * The budget total_amount value that was rejected as too low, in micros of the advertiser currency. Only set if this error is caused by the total_amount field value. + */ + failedBudgetTotalAmountMicros?: string | null; + /** + * The minimum value for the budget's amount field required by the campaign, in micros of the advertiser currency. Only set if this error is caused by the amount field value. + */ + minimumBudgetAmountMicros?: string | null; + /** + * The minimum value for the budget's total_amount field required by the campaign given its configured start and end time, in micros of the advertiser currency. Only set if this error is caused by the total_amount field value. + */ + minimumBudgetTotalAmountMicros?: string | null; + } + /** + * The error reason represented by type and enum. + */ + export interface Schema$GoogleAdsSearchads360V23Errors__ErrorCode { + /** + * The reasons for the access invitation error + */ + accessInvitationError?: string | null; + /** + * The reasons for account budget proposal errors. + */ + accountBudgetProposalError?: string | null; + /** + * The reasons for the account link status change error + */ + accountLinkError?: string | null; + /** + * The reasons for the ad customizer error + */ + adCustomizerError?: string | null; + /** + * An error with an Ad Group Ad mutate. + */ + adError?: string | null; + /** + * The reasons for the ad group ad error + */ + adGroupAdError?: string | null; + /** + * The reasons for the ad group bid modifier error + */ + adGroupBidModifierError?: string | null; + /** + * The reasons for the ad group criterion customizer error. + */ + adGroupCriterionCustomizerError?: string | null; + /** + * Indicates failure to properly authenticate user. + */ + adGroupCriterionError?: string | null; + /** + * The reasons for the ad group customizer error. + */ + adGroupCustomizerError?: string | null; + /** + * An error with an Ad Group mutate. + */ + adGroupError?: string | null; + /** + * The reasons for the ad group feed error + */ + adGroupFeedError?: string | null; + /** + * The reasons for the ad parameter error + */ + adParameterError?: string | null; + /** + * The reasons for the ad sharing error + */ + adSharingError?: string | null; + /** + * The reasons for the adx error + */ + adxError?: string | null; + /** + * The reasons for the asset error + */ + assetError?: string | null; + /** + * The reasons for the GenAI asset generation error. + */ + assetGenerationError?: string | null; + /** + * The reasons for the asset group asset error + */ + assetGroupAssetError?: string | null; + /** + * The reasons for the asset group error + */ + assetGroupError?: string | null; + /** + * The reasons for the asset group listing group filter error + */ + assetGroupListingGroupFilterError?: string | null; + /** + * The reasons for the asset group hint error + */ + assetGroupSignalError?: string | null; + /** + * The reasons for the asset link error + */ + assetLinkError?: string | null; + /** + * The reasons for the asset set asset error + */ + assetSetAssetError?: string | null; + /** + * The reasons for the asset set error + */ + assetSetError?: string | null; + /** + * The reasons for the asset set link error + */ + assetSetLinkError?: string | null; + /** + * The reasons for the audience error + */ + audienceError?: string | null; + /** + * The reasons for the Audience Insights error + */ + audienceInsightsError?: string | null; + /** + * Indicates failure to properly authenticate user. + */ + authenticationError?: string | null; + /** + * An error encountered when trying to authorize a user. + */ + authorizationError?: string | null; + /** + * The reasons for error in automatically created asset removal action. + */ + automaticallyCreatedAssetRemovalError?: string | null; + /** + * The reasons for the batch job error + */ + batchJobError?: string | null; + /** + * The reasons for the Benchmarks error. + */ + benchmarksError?: string | null; + /** + * The reasons for the bidding errors + */ + biddingError?: string | null; + /** + * An error with a Bidding Strategy mutate. + */ + biddingStrategyError?: string | null; + /** + * The reasons for the billing setup error + */ + billingSetupError?: string | null; + /** + * The reasons for the brand guidelines migration error. + */ + brandGuidelinesMigrationError?: string | null; + /** + * An error with a Campaign Budget mutate. + */ + campaignBudgetError?: string | null; + /** + * The reasons for the campaign conversion goal error + */ + campaignConversionGoalError?: string | null; + /** + * The reasons for the campaign criterion error + */ + campaignCriterionError?: string | null; + /** + * The reasons for the campaign customizer error. + */ + campaignCustomizerError?: string | null; + /** + * The reasons for the campaign draft error + */ + campaignDraftError?: string | null; + /** + * An error with a Campaign mutate. + */ + campaignError?: string | null; + /** + * The reasons for the campaign experiment error + */ + campaignExperimentError?: string | null; + /** + * The reasons for the campaign feed error + */ + campaignFeedError?: string | null; + /** + * The reasons for the campaign goal config error. + */ + campaignGoalConfigError?: string | null; + /** + * The reasons for the campaign lifecycle goal error + */ + campaignLifecycleGoalError?: string | null; + /** + * The reasons for the campaign shared set error + */ + campaignSharedSetError?: string | null; + /** + * The reasons for the change event error + */ + changeEventError?: string | null; + /** + * The reasons for the change status error + */ + changeStatusError?: string | null; + /** + * The reasons for the click view error + */ + clickViewError?: string | null; + /** + * The reasons for the collection size error + */ + collectionSizeError?: string | null; + /** + * The reasons for the context error + */ + contextError?: string | null; + /** + * The reasons for the conversion action error + */ + conversionActionError?: string | null; + /** + * The reasons for the conversion adjustment upload error + */ + conversionAdjustmentUploadError?: string | null; + /** + * The reasons for the conversion custom variable error + */ + conversionCustomVariableError?: string | null; + /** + * The reasons for the conversion goal campaign config error + */ + conversionGoalCampaignConfigError?: string | null; + /** + * The reasons for the conversion upload error + */ + conversionUploadError?: string | null; + /** + * The reasons for the conversion value rule error + */ + conversionValueRuleError?: string | null; + /** + * The reasons for the conversion value rule set error + */ + conversionValueRuleSetError?: string | null; + /** + * The reasons for the country code error + */ + countryCodeError?: string | null; + /** + * The reasons for the criterion error + */ + criterionError?: string | null; + /** + * The reasons for the currency code error + */ + currencyCodeError?: string | null; + /** + * The reasons for the currency errors. + */ + currencyError?: string | null; + /** + * The reasons for the custom audience error + */ + customAudienceError?: string | null; + /** + * The reasons for the custom column error + */ + customColumnError?: string | null; + /** + * The reasons for the custom conversion goal error + */ + customConversionGoalError?: string | null; + /** + * The reasons for the customer client link error + */ + customerClientLinkError?: string | null; + /** + * The reasons for the customer customizer error. + */ + customerCustomizerError?: string | null; + /** + * The reasons for the customer error + */ + customerError?: string | null; + /** + * The reasons for the customer feed error + */ + customerFeedError?: string | null; + /** + * The reasons for the customer lifecycle goal error + */ + customerLifecycleGoalError?: string | null; + /** + * The reasons for the customer manager link error + */ + customerManagerLinkError?: string | null; + /** + * The reasons for the customer SK Ad network conversion value schema error + */ + customerSkAdNetworkConversionValueSchemaError?: string | null; + /** + * The reasons for the customer user access mutate error + */ + customerUserAccessError?: string | null; + /** + * The reasons for the custom interest error + */ + customInterestError?: string | null; + /** + * The reasons for the customizer attribute error. + */ + customizerAttributeError?: string | null; + /** + * The reasons for the database error. + */ + databaseError?: string | null; + /** + * The reasons for the data link error + */ + dataLinkError?: string | null; + /** + * The reasons for the date error + */ + dateError?: string | null; + /** + * The reasons for the date range error + */ + dateRangeError?: string | null; + /** + * The reasons for the distinct error + */ + distinctError?: string | null; + /** + * The reason for enum error. + */ + enumError?: string | null; + /** + * The reasons for the experiment arm error + */ + experimentArmError?: string | null; + /** + * The reasons for the experiment error + */ + experimentError?: string | null; + /** + * The reasons for the extension feed item error + */ + extensionFeedItemError?: string | null; + /** + * The reasons for the extension setting error + */ + extensionSettingError?: string | null; + /** + * The reasons for the feed attribute reference error + */ + feedAttributeReferenceError?: string | null; + /** + * The reasons for the feed error + */ + feedError?: string | null; + /** + * The reasons for the feed item error + */ + feedItemError?: string | null; + /** + * The reasons for the feed item set error + */ + feedItemSetError?: string | null; + /** + * The reasons for the feed item set link error + */ + feedItemSetLinkError?: string | null; + /** + * The reasons for the feed item target error + */ + feedItemTargetError?: string | null; + /** + * The reasons for the feed item validation error + */ + feedItemValidationError?: string | null; + /** + * The reasons for the feed mapping error + */ + feedMappingError?: string | null; + /** + * The reasons for the field error + */ + fieldError?: string | null; + /** + * An error with a field mask + */ + fieldMaskError?: string | null; + /** + * The reasons for the final url expansion asset view error + */ + finalUrlExpansionAssetViewError?: string | null; + /** + * The reasons for the function error + */ + functionError?: string | null; + /** + * The reasons for the function parsing error + */ + functionParsingError?: string | null; + /** + * The reasons for the geo target constant suggestion error. + */ + geoTargetConstantSuggestionError?: string | null; + /** + * The reasons for the goal error. + */ + goalError?: string | null; + /** + * The reasons for the header error. + */ + headerError?: string | null; + /** + * The reasons for an identity verification error. + */ + identityVerificationError?: string | null; + /** + * The reasons for the id error + */ + idError?: string | null; + /** + * The reasons for the image error + */ + imageError?: string | null; + /** + * The reasons for the incentive error + */ + incentiveError?: string | null; + /** + * An unexpected server-side error. + */ + internalError?: string | null; + /** + * The reasons for invalid parameter errors. + */ + invalidParameterError?: string | null; + /** + * The reasons for the invoice error + */ + invoiceError?: string | null; + /** + * The reason for keyword plan ad group error. + */ + keywordPlanAdGroupError?: string | null; + /** + * The reason for keyword plan ad group keyword error. + */ + keywordPlanAdGroupKeywordError?: string | null; + /** + * The reason for keyword plan campaign error. + */ + keywordPlanCampaignError?: string | null; + /** + * The reason for keyword plan campaign keyword error. + */ + keywordPlanCampaignKeywordError?: string | null; + /** + * The reason for keyword plan error. + */ + keywordPlanError?: string | null; + /** + * The reason for keyword idea error. + */ + keywordPlanIdeaError?: string | null; + /** + * The reason for the label error. + */ + labelError?: string | null; + /** + * The reasons for the language code error + */ + languageCodeError?: string | null; + /** + * An error with a list operation. + */ + listOperationError?: string | null; + /** + * The reasons for the manager link error + */ + managerLinkError?: string | null; + /** + * The reasons for the media bundle error + */ + mediaBundleError?: string | null; + /** + * The reasons for the media file error + */ + mediaFileError?: string | null; + /** + * The reasons for media uploading errors. + */ + mediaUploadError?: string | null; + /** + * Container for enum describing possible merchant center errors. + */ + merchantCenterError?: string | null; + /** + * The reasons for the multiplier error + */ + multiplierError?: string | null; + /** + * An error with a mutate + */ + mutateError?: string | null; + /** + * The reasons for the new resource creation error + */ + newResourceCreationError?: string | null; + /** + * The reasons for the not allowlisted error + */ + notAllowlistedError?: string | null; + /** + * The reasons for the not empty error + */ + notEmptyError?: string | null; + /** + * The reasons for the null error + */ + nullError?: string | null; + /** + * The reasons for the offline user data job error. + */ + offlineUserDataJobError?: string | null; + /** + * The reasons for the operation access denied error + */ + operationAccessDeniedError?: string | null; + /** + * The reasons for the operator error + */ + operatorError?: string | null; + /** + * The reasons for the mutate job error + */ + partialFailureError?: string | null; + /** + * The reasons for errors in payments accounts service + */ + paymentsAccountError?: string | null; + /** + * The reasons for the policy finding error. + */ + policyFindingError?: string | null; + /** + * The reasons for the policy validation parameter error + */ + policyValidationParameterError?: string | null; + /** + * The reasons for the policy violation error + */ + policyViolationError?: string | null; + /** + * The reasons for the product link error + */ + productLinkError?: string | null; + /** + * The reasons for the product link invitation error + */ + productLinkInvitationError?: string | null; + /** + * An error with the query + */ + queryError?: string | null; + /** + * An error with the amount of quota remaining. + */ + quotaError?: string | null; + /** + * The reasons for the range error + */ + rangeError?: string | null; + /** + * The reasons for the reach plan error + */ + reachPlanError?: string | null; + /** + * The reasons for error in applying a recommendation + */ + recommendationError?: string | null; + /** + * The reasons for the recommendation subscription error. + */ + recommendationSubscriptionError?: string | null; + /** + * The reasons for the region code error + */ + regionCodeError?: string | null; + /** + * An error caused by the request + */ + requestError?: string | null; + /** + * The reasons for the resource access denied error + */ + resourceAccessDeniedError?: string | null; + /** + * The reasons for the resource count limit exceeded error + */ + resourceCountLimitExceededError?: string | null; + /** + * The reasons for the Search term insight error + */ + searchTermInsightError?: string | null; + /** + * The reasons for the setting error + */ + settingError?: string | null; + /** + * The reasons for the shareable preview error. + */ + shareablePreviewError?: string | null; + /** + * The reasons for the shared criterion error + */ + sharedCriterionError?: string | null; + /** + * The reasons for the shared set error + */ + sharedSetError?: string | null; + /** + * The reasons for error in querying shopping product. + */ + shoppingProductError?: string | null; + /** + * The reasons for the size limit error + */ + sizeLimitError?: string | null; + /** + * The reasons for the Smart campaign error + */ + smartCampaignError?: string | null; + /** + * The reasons for the string format error + */ + stringFormatError?: string | null; + /** + * The reasons for the string length error + */ + stringLengthError?: string | null; + /** + * The reasons for the third party app analytics link mutate error + */ + thirdPartyAppAnalyticsLinkError?: string | null; + /** + * The reasons for the time zone error + */ + timeZoneError?: string | null; + /** + * An error with a URL field mutate. + */ + urlFieldError?: string | null; + /** + * The reasons for the user data error. + */ + userDataError?: string | null; + /** + * The reasons for a user list customer type error. + */ + userListCustomerTypeError?: string | null; + /** + * The reasons for the user list error + */ + userListError?: string | null; + /** + * An error with a Video Campaign mutate. + */ + videoCampaignError?: string | null; + /** + * The reasons for YouTube video registration errors. + */ + youtubeVideoRegistrationError?: string | null; + } + /** + * Additional error details. + */ + export interface Schema$GoogleAdsSearchads360V23Errors__ErrorDetails { + /** + * Details for a budget below per-day minimum error. + */ + budgetPerDayMinimumErrorDetails?: Schema$GoogleAdsSearchads360V23Errors__BudgetPerDayMinimumErrorDetails; + /** + * Describes policy violation findings. + */ + policyFindingDetails?: Schema$GoogleAdsSearchads360V23Errors__PolicyFindingDetails; + /** + * Describes an ad policy violation. + */ + policyViolationDetails?: Schema$GoogleAdsSearchads360V23Errors__PolicyViolationDetails; + /** + * Details on the quota error, including the scope (account or developer), the rate bucket name and the retry delay. + */ + quotaErrorDetails?: Schema$GoogleAdsSearchads360V23Errors__QuotaErrorDetails; + /** + * Details for a resource count limit exceeded error. + */ + resourceCountDetails?: Schema$GoogleAdsSearchads360V23Errors__ResourceCountDetails; + /** + * The error code that should have been returned, but wasn't. This is used when the error code is not published in the client specified version. + */ + unpublishedErrorCode?: string | null; + } + /** + * Describes the part of the request proto that caused the error. + */ + export interface Schema$GoogleAdsSearchads360V23Errors__ErrorLocation { + /** + * A field path that indicates which field was invalid in the request. + */ + fieldPathElements?: Schema$GoogleAdsSearchads360V23Errors_ErrorLocation_FieldPathElement[]; + } + /** + * Error returned as part of a mutate response. This error indicates one or more policy findings in the fields of a resource. + */ + export interface Schema$GoogleAdsSearchads360V23Errors__PolicyFindingDetails { + /** + * The list of policy topics for the resource. Contains the PROHIBITED or FULLY_LIMITED policy topic entries that prevented the resource from being saved (among any other entries the resource may also have). + */ + policyTopicEntries?: Schema$GoogleAdsSearchads360V23Common__PolicyTopicEntry[]; + } + /** + * Error returned as part of a mutate response. This error indicates single policy violation by some text in one of the fields. + */ + export interface Schema$GoogleAdsSearchads360V23Errors__PolicyViolationDetails { + /** + * Human readable description of policy violation. + */ + externalPolicyDescription?: string | null; + /** + * Human readable name of the policy. + */ + externalPolicyName?: string | null; + /** + * Whether user can file an exemption request for this violation. + */ + isExemptible?: boolean | null; + /** + * Unique identifier for this violation. If policy is exemptible, this key may be used to request exemption. + */ + key?: Schema$GoogleAdsSearchads360V23Common__PolicyViolationKey; + } + /** + * Additional quota error details when there is QuotaError. + */ + export interface Schema$GoogleAdsSearchads360V23Errors__QuotaErrorDetails { + /** + * The high level description of the quota bucket. Examples are "Get requests for standard access" or "Requests per account". + */ + rateName?: string | null; + /** + * The rate scope of the quota limit. + */ + rateScope?: string | null; + /** + * Backoff period that customers should wait before sending next request. + */ + retryDelay?: string | null; + } + /** + * Error details returned when an resource count limit was exceeded. + */ + export interface Schema$GoogleAdsSearchads360V23Errors__ResourceCountDetails { + /** + * The ID of the resource whose limit was exceeded. External customer ID if the limit is for a customer. + */ + enclosingId?: string | null; + /** + * The name of the resource ( etc.) whose limit was exceeded. + */ + enclosingResource?: string | null; + /** + * The count of existing entities. + */ + existingCount?: number | null; + /** + * The limit which was exceeded. + */ + limit?: number | null; + /** + * The resource limit type which was exceeded. + */ + limitType?: string | null; + } + /** + * Search Ads 360-specific error. + */ + export interface Schema$GoogleAdsSearchads360V23Errors__SearchAds360Error { + /** + * Additional error details, which are returned by certain error codes. Most error codes do not include details. + */ + details?: Schema$GoogleAdsSearchads360V23Errors__ErrorDetails; + /** + * An enum value that indicates which error occurred. + */ + errorCode?: Schema$GoogleAdsSearchads360V23Errors__ErrorCode; + /** + * Describes the part of the request proto that caused the error. + */ + location?: Schema$GoogleAdsSearchads360V23Errors__ErrorLocation; + /** + * A human-readable description of the error. + */ + message?: string | null; + /** + * The value that triggered the error. + */ + trigger?: Schema$GoogleAdsSearchads360V23Common__Value; + } + /** + * Describes how a Search Ads 360 API call failed. It's returned inside google.rpc.Status.details when a call fails. + */ + export interface Schema$GoogleAdsSearchads360V23Errors__SearchAds360Failure { + /** + * The list of errors that occurred. + */ + errors?: Schema$GoogleAdsSearchads360V23Errors__SearchAds360Error[]; + /** + * The unique ID of the request that is used for debugging purposes. + */ + requestId?: string | null; + } + /** + * Additional information about the batch job. This message is also used as metadata returned in batch job Long Running Operations. + */ + export interface Schema$GoogleAdsSearchads360V23Resources_BatchJob_BatchJobMetadata { + /** + * Output only. The time when this batch job was completed. Formatted as yyyy-MM-dd HH:mm:ss. Example: "2018-03-05 09:16:00" + */ + completionDateTime?: string | null; + /** + * Output only. The time when this batch job was created. Formatted as yyyy-mm-dd hh:mm:ss. Example: "2018-03-05 09:15:00" + */ + creationDateTime?: string | null; + /** + * Output only. The fraction (between 0.0 and 1.0) of mutates that have been processed. This is empty if the job hasn't started running yet. + */ + estimatedCompletionRatio?: number | null; + /** + * Output only. The number of mutate operations executed by the batch job. Present only if the job has started running. + */ + executedOperationCount?: string | null; + /** + * Immutable. The approximate upper bound for how long a batch job can be executed, in seconds. If the job runs more than the given upper bound, the job will be canceled. + */ + executionLimitSeconds?: number | null; + /** + * Output only. The number of mutate operations in the batch job. + */ + operationCount?: string | null; + /** + * Output only. The time when this batch job started running. Formatted as yyyy-mm-dd hh:mm:ss. Example: "2018-03-05 09:15:30" + */ + startDateTime?: string | null; + } + /** + * Metadata of offline user data job. + */ + export interface Schema$GoogleAdsSearchads360V23Resources__OfflineUserDataJobMetadata { + /** + * Output only. Match rate of the Customer Match user list upload. Describes the estimated match rate when the status of the job is "RUNNING" and final match rate when the final match rate is available after the status of the job is "SUCCESS/FAILED". + */ + matchRateRange?: string | null; + } + /** + * The metadata of the promoted experiment. + */ + export interface Schema$GoogleAdsSearchads360V23Services__PromoteExperimentMetadata { + /** + * Required. The promoted experiment. + */ + experiment?: string | null; + } + /** + * The metadata of the scheduled experiment. + */ + export interface Schema$GoogleAdsSearchads360V23Services__ScheduleExperimentMetadata { + /** + * Required. The scheduled experiment. + */ + experiment?: string | null; + } export class Resource$Customers { context: APIRequestContext; @@ -5245,7 +6404,7 @@ export namespace searchads360_v0 { } /** - * Returns all rows that match the search query. List of thrown errors: [AuthenticationError]() [AuthorizationError]() [HeaderError]() [InternalError]() [QueryError]() [QuotaError]() [RequestError]() + * Returns all rows that match the search query. List of thrown errors: [AuthenticationError]() [AuthorizationError]() [ChangeEventError]() [ChangeStatusError]() [ClickViewError]() [HeaderError]() [InternalError]() [QueryError]() [QuotaError]() [RequestError]() * @example * ```js * // Before running the sample: diff --git a/src/apis/secretmanager/v1.ts b/src/apis/secretmanager/v1.ts index bf889041f8a..2ce8aec81a7 100644 --- a/src/apis/secretmanager/v1.ts +++ b/src/apis/secretmanager/v1.ts @@ -383,13 +383,17 @@ export namespace secretmanager_v1 { */ apiVersion?: string | null; /** - * Output only. The time the operation was created. + * Output only. Time the operation was created. */ createTime?: string | null; /** - * Output only. The time the operation finished running. + * Output only. Time the operation finished running. */ endTime?: string | null; + /** + * Output only. Represents the progress of the operation. This field is populated for operations that involve processing multiple secret versions. + */ + progress?: Schema$Progress; /** * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`. */ @@ -428,6 +432,23 @@ export namespace secretmanager_v1 { */ version?: number | null; } + /** + * Represents progress information for operations involving multiple secret versions. + */ + export interface Schema$Progress { + /** + * Output only. Number of secret versions that have been successfully processed so far. + */ + completedVersionCount?: number | null; + /** + * Output only. Number of secret versions that failed to process. + */ + failedVersionCount?: number | null; + /** + * Output only. Provides the total number of secret versions to be processed by the operation. + */ + totalVersionCount?: number | null; + } /** * Represents a Replica for this Secret. */ @@ -843,7 +864,7 @@ export namespace secretmanager_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -873,7 +894,7 @@ export namespace secretmanager_v1 { * * // Do the magic * const res = await secretmanager.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1000,7 +1021,7 @@ export namespace secretmanager_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/secretmanager/v1beta1.ts b/src/apis/secretmanager/v1beta1.ts index 1fe639f5248..e9a406dfad2 100644 --- a/src/apis/secretmanager/v1beta1.ts +++ b/src/apis/secretmanager/v1beta1.ts @@ -336,13 +336,17 @@ export namespace secretmanager_v1beta1 { */ apiVersion?: string | null; /** - * Output only. The time the operation was created. + * Output only. Time the operation was created. */ createTime?: string | null; /** - * Output only. The time the operation finished running. + * Output only. Time the operation finished running. */ endTime?: string | null; + /** + * Output only. Represents the progress of the operation. This field is populated for operations that involve processing multiple secret versions. + */ + progress?: Schema$Progress; /** * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`. */ @@ -381,6 +385,23 @@ export namespace secretmanager_v1beta1 { */ version?: number | null; } + /** + * Represents progress information for operations involving multiple secret versions. + */ + export interface Schema$Progress { + /** + * Output only. Number of secret versions that have been successfully processed so far. + */ + completedVersionCount?: number | null; + /** + * Output only. Number of secret versions that failed to process. + */ + failedVersionCount?: number | null; + /** + * Output only. Provides the total number of secret versions to be processed by the operation. + */ + totalVersionCount?: number | null; + } /** * Represents a Replica for this Secret. */ @@ -673,7 +694,7 @@ export namespace secretmanager_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -703,7 +724,7 @@ export namespace secretmanager_v1beta1 { * * // Do the magic * const res = await secretmanager.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -830,7 +851,7 @@ export namespace secretmanager_v1beta1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/secretmanager/v1beta2.ts b/src/apis/secretmanager/v1beta2.ts index 0aaa97e6615..6b25fc19ef8 100644 --- a/src/apis/secretmanager/v1beta2.ts +++ b/src/apis/secretmanager/v1beta2.ts @@ -383,13 +383,17 @@ export namespace secretmanager_v1beta2 { */ apiVersion?: string | null; /** - * Output only. The time the operation was created. + * Output only. Time the operation was created. */ createTime?: string | null; /** - * Output only. The time the operation finished running. + * Output only. Time the operation finished running. */ endTime?: string | null; + /** + * Output only. Represents the progress of the operation. This field is populated for operations that involve processing multiple secret versions. + */ + progress?: Schema$Progress; /** * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`. */ @@ -428,6 +432,23 @@ export namespace secretmanager_v1beta2 { */ version?: number | null; } + /** + * Represents progress information for operations involving multiple secret versions. + */ + export interface Schema$Progress { + /** + * Output only. Number of secret versions that have been successfully processed so far. + */ + completedVersionCount?: number | null; + /** + * Output only. Number of secret versions that failed to process. + */ + failedVersionCount?: number | null; + /** + * Output only. Provides the total number of secret versions to be processed by the operation. + */ + totalVersionCount?: number | null; + } /** * Represents a Replica for this Secret. */ @@ -843,7 +864,7 @@ export namespace secretmanager_v1beta2 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -873,7 +894,7 @@ export namespace secretmanager_v1beta2 { * * // Do the magic * const res = await secretmanager.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -1000,7 +1021,7 @@ export namespace secretmanager_v1beta2 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/securitycenter/v1.ts b/src/apis/securitycenter/v1.ts index ca4324c4419..7106ef88f2c 100644 --- a/src/apis/securitycenter/v1.ts +++ b/src/apis/securitycenter/v1.ts @@ -259,6 +259,27 @@ export namespace securitycenter_v1 { */ count?: string | null; } + /** + * Details about a data access attempt made by an agent principal not authorized under applicable data security policy. + */ + export interface Schema$AgentDataAccessEvent { + /** + * Unique identifier for data access event. + */ + eventId?: string | null; + /** + * Timestamp of data access event. + */ + eventTime?: string | null; + /** + * The operation performed by the principal to access the data. + */ + operation?: string | null; + /** + * The agent principal that accessed the data. + */ + principalSubject?: string | null; + } /** * Contains information about the AI model associated with the finding. */ @@ -1315,6 +1336,31 @@ export namespace securitycenter_v1 { */ percentPagesMatched?: number | null; } + /** + * Represents discovered, customer managed workload that is not registered with the respective GCP service. + */ + export interface Schema$DiscoveredWorkload { + /** + * The confidence in detection of this workload. + */ + confidence?: string | null; + /** + * A boolean flag set to true if associated hardware strongly predicts the workload type. + */ + detectedRelevantHardware?: boolean | null; + /** + * A boolean flag set to true if associated keywords strongly predict the workload type. + */ + detectedRelevantKeywords?: boolean | null; + /** + * A boolean flag set to true if installed packages strongly predict the workload type. + */ + detectedRelevantPackages?: boolean | null; + /** + * The type of workload. + */ + workloadType?: string | null; + } /** * Contains information about the disk associated with the finding. */ @@ -1517,10 +1563,18 @@ export namespace securitycenter_v1 { * Details about the externally exposed resource associated with the finding. */ export interface Schema$ExternalExposure { + /** + * The full resource name of the load balancer backend bucket, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendBuckets/{name\}" + */ + backendBucket?: string | null; /** * The full resource name of load balancer backend service, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". */ backendService?: string | null; + /** + * The name and version of the exposed web application, for example, "Jenkins 2.184". + */ + exposedApplication?: string | null; /** * The resource which is running the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/zones/{zone\}/instances/{instance\}.” */ @@ -1533,10 +1587,22 @@ export namespace securitycenter_v1 { * The full resource name of the forwarding rule, for example, "//compute.googleapis.com/projects/{project-id\}/global/forwardingRules/{forwarding-rule-name\}". */ forwardingRule?: string | null; + /** + * Hostname of the exposed application, for example, "https://test-app.a.run.app/" + */ + hostnameUri?: string | null; + /** + * The http response returned by the web application. + */ + httpResponse?: Schema$HttpResponse[]; /** * The full resource name of the instance group, for example, "//compute.googleapis.com/projects/{project-id\}/global/instanceGroups/{name\}". */ instanceGroup?: string | null; + /** + * The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". + */ + internalBackendService?: string | null; /** * The full resource name of the load balancer firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". */ @@ -1545,6 +1611,10 @@ export namespace securitycenter_v1 { * The full resource name of the network endpoint group, for example, "//compute.googleapis.com/projects/{project-id\}/global/networkEndpointGroups/{name\}". */ networkEndpointGroup?: string | null; + /** + * The full resource name of the network ingress firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{name\}". + */ + networkIngressFirewallPolicy?: string | null; /** * Private IP address of the exposed endpoint. */ @@ -1553,6 +1623,14 @@ export namespace securitycenter_v1 { * Port number associated with private IP address. */ privatePort?: string | null; + /** + * The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/networkAttachments/{name\}" + */ + pscNetworkAttachment?: string | null; + /** + * The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/serviceAttachments/{name\}" + */ + pscServiceAttachment?: string | null; /** * Public IP address of the exposed endpoint. */ @@ -1628,6 +1706,10 @@ export namespace securitycenter_v1 { * AffectedResources associated with the finding. */ affectedResources?: Schema$AffectedResources; + /** + * Agent data access events associated with the finding. + */ + agentDataAccessEvents?: Schema$AgentDataAccessEvent[]; /** * The AI model associated with the finding. */ @@ -1716,6 +1798,10 @@ export namespace securitycenter_v1 { * Contains more details about the finding. */ description?: string | null; + /** + * DiscoveredWorkload associated with the finding. + */ + discoveredWorkload?: Schema$DiscoveredWorkload; /** * Disk associated with the finding. */ @@ -1838,6 +1924,10 @@ export namespace securitycenter_v1 { * Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics". */ parentDisplayName?: string | null; + /** + * PolicyViolationSummary associated with the finding. + */ + policyViolationSummary?: Schema$PolicyViolationSummary; /** * Represents operating system processes associated with the Finding. */ @@ -2779,6 +2869,27 @@ export namespace securitycenter_v1 { */ count?: string | null; } + /** + * Details about a data access attempt made by an agent principal not authorized under applicable data security policy. + */ + export interface Schema$GoogleCloudSecuritycenterV2AgentDataAccessEvent { + /** + * Unique identifier for data access event. + */ + eventId?: string | null; + /** + * Timestamp of data access event. + */ + eventTime?: string | null; + /** + * The operation performed by the principal to access the data. + */ + operation?: string | null; + /** + * The agent principal that accessed the data. + */ + principalSubject?: string | null; + } /** * Contains information about the AI model associated with the finding. */ @@ -3633,6 +3744,31 @@ export namespace securitycenter_v1 { */ percentPagesMatched?: number | null; } + /** + * Represents discovered, customer managed workload that is not registered with the respective GCP service. + */ + export interface Schema$GoogleCloudSecuritycenterV2DiscoveredWorkload { + /** + * The confidence in detection of this workload. + */ + confidence?: string | null; + /** + * A boolean flag set to true if associated hardware strongly predicts the workload type. + */ + detectedRelevantHardware?: boolean | null; + /** + * A boolean flag set to true if associated keywords strongly predict the workload type. + */ + detectedRelevantKeywords?: boolean | null; + /** + * A boolean flag set to true if installed packages strongly predict the workload type. + */ + detectedRelevantPackages?: boolean | null; + /** + * The type of workload. + */ + workloadType?: string | null; + } /** * Contains information about the disk associated with the finding. */ @@ -3715,10 +3851,18 @@ export namespace securitycenter_v1 { * Details about the externally exposed resource associated with the finding. */ export interface Schema$GoogleCloudSecuritycenterV2ExternalExposure { + /** + * The full resource name of the load balancer backend bucket, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendBuckets/{name\}" + */ + backendBucket?: string | null; /** * The full resource name of load balancer backend service, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". */ backendService?: string | null; + /** + * The name and version of the exposed web application, for example, "Jenkins 2.184". + */ + exposedApplication?: string | null; /** * The resource which is running the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/zones/{zone\}/instances/{instance\}.” */ @@ -3731,10 +3875,22 @@ export namespace securitycenter_v1 { * The full resource name of the forwarding rule, for example, "//compute.googleapis.com/projects/{project-id\}/global/forwardingRules/{forwarding-rule-name\}". */ forwardingRule?: string | null; + /** + * Hostname of the exposed application, for example, "https://test-app.a.run.app/" + */ + hostnameUri?: string | null; + /** + * The http response returned by the web application. + */ + httpResponse?: Schema$GoogleCloudSecuritycenterV2HttpResponse[]; /** * The full resource name of the instance group, for example, "//compute.googleapis.com/projects/{project-id\}/global/instanceGroups/{name\}". */ instanceGroup?: string | null; + /** + * The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". + */ + internalBackendService?: string | null; /** * The full resource name of the load balancer firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". */ @@ -3743,6 +3899,10 @@ export namespace securitycenter_v1 { * The full resource name of the network endpoint group, for example, "//compute.googleapis.com/projects/{project-id\}/global/networkEndpointGroups/{name\}". */ networkEndpointGroup?: string | null; + /** + * The full resource name of the network ingress firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{name\}". + */ + networkIngressFirewallPolicy?: string | null; /** * Private IP address of the exposed endpoint. */ @@ -3751,6 +3911,14 @@ export namespace securitycenter_v1 { * Port number associated with private IP address. */ privatePort?: string | null; + /** + * The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/networkAttachments/{name\}" + */ + pscNetworkAttachment?: string | null; + /** + * The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/serviceAttachments/{name\}" + */ + pscServiceAttachment?: string | null; /** * Public IP address of the exposed endpoint. */ @@ -3875,6 +4043,10 @@ export namespace securitycenter_v1 { * AffectedResources associated with the finding. */ affectedResources?: Schema$GoogleCloudSecuritycenterV2AffectedResources; + /** + * Agent data access events associated with the finding. + */ + agentDataAccessEvents?: Schema$GoogleCloudSecuritycenterV2AgentDataAccessEvent[]; /** * The AI model associated with the finding. */ @@ -3969,6 +4141,10 @@ export namespace securitycenter_v1 { * Contains more details about the finding. */ description?: string | null; + /** + * DiscoveredWorkload associated with the finding. + */ + discoveredWorkload?: Schema$GoogleCloudSecuritycenterV2DiscoveredWorkload; /** * Disk associated with the finding. */ @@ -4091,6 +4267,10 @@ export namespace securitycenter_v1 { * Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics". */ parentDisplayName?: string | null; + /** + * PolicyViolationSummary associated with the finding. + */ + policyViolationSummary?: Schema$GoogleCloudSecuritycenterV2PolicyViolationSummary; /** * Represents operating system processes associated with the Finding. */ @@ -4196,6 +4376,19 @@ export namespace securitycenter_v1 { */ groupType?: string | null; } + /** + * The http response returned by the web application. + */ + export interface Schema$GoogleCloudSecuritycenterV2HttpResponse { + /** + * The http path for which response code was returned by web application, for example, "https://test-app.a.run.app/test". + */ + path?: string | null; + /** + * The http response code returned by the web application, for example, 200. + */ + statusCode?: string | null; + } /** * Represents a particular IAM binding, which captures a member's role addition, removal, or state. */ @@ -5061,6 +5254,27 @@ export namespace securitycenter_v1 { */ field?: string | null; } + /** + * Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control. + */ + export interface Schema$GoogleCloudSecuritycenterV2PolicyViolationSummary { + /** + * Total number of child resources that conform to the policy. + */ + conformantResourcesCount?: string | null; + /** + * Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively "unknown". + */ + evaluationErrorsCount?: string | null; + /** + * Total count of child resources which were not in scope for evaluation. + */ + outOfScopeResourcesCount?: string | null; + /** + * Count of child resources in violation of the policy. + */ + policyViolationsCount?: string | null; + } /** * A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port. */ @@ -5824,6 +6038,19 @@ export namespace securitycenter_v1 { */ properties?: {[key: string]: any} | null; } + /** + * The http response returned by the web application. + */ + export interface Schema$HttpResponse { + /** + * The http path for which response code was returned by web application, for example, "https://test-app.a.run.app/test". + */ + path?: string | null; + /** + * The http response code returned by the web application, for example, 200. + */ + statusCode?: string | null; + } /** * Represents a particular IAM binding, which captures a member's role addition, removal, or state. */ @@ -6632,6 +6859,27 @@ export namespace securitycenter_v1 { */ field?: string | null; } + /** + * Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control. + */ + export interface Schema$PolicyViolationSummary { + /** + * Total number of child resources that conform to the policy. + */ + conformantResourcesCount?: string | null; + /** + * Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively "unknown". + */ + evaluationErrorsCount?: string | null; + /** + * Total count of child resources which were not in scope for evaluation. + */ + outOfScopeResourcesCount?: string | null; + /** + * Count of child resources in violation of the policy. + */ + policyViolationsCount?: string | null; + } /** * A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port. */ @@ -14852,6 +15100,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -14874,6 +15123,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -14904,6 +15154,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -14924,6 +15175,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -14946,6 +15198,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -14976,6 +15229,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -15131,6 +15385,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -15153,6 +15408,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -15183,6 +15439,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -15342,6 +15599,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -15364,6 +15622,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -15394,6 +15653,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -27304,6 +27564,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -27326,6 +27587,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -27356,6 +27618,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -27376,6 +27639,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -27398,6 +27662,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -27428,6 +27693,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -27893,6 +28159,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -27915,6 +28182,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -27945,6 +28213,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -27965,6 +28234,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -27987,6 +28257,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -28017,6 +28288,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -28172,6 +28444,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -28194,6 +28467,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -28224,6 +28498,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -28383,6 +28658,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -28405,6 +28681,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -28435,6 +28712,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -36562,6 +36840,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -36584,6 +36863,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -36614,6 +36894,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -36634,6 +36915,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -36656,6 +36938,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -36686,6 +36969,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -36841,6 +37125,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -36863,6 +37148,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -36893,6 +37179,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, @@ -37052,6 +37339,7 @@ export namespace securitycenter_v1 { * // { * // "access": {}, * // "affectedResources": {}, + * // "agentDataAccessEvents": [], * // "aiModel": {}, * // "application": {}, * // "artifactGuardPolicies": {}, @@ -37074,6 +37362,7 @@ export namespace securitycenter_v1 { * // "dataRetentionDeletionEvents": [], * // "database": {}, * // "description": "my_description", + * // "discoveredWorkload": {}, * // "disk": {}, * // "eventTime": "my_eventTime", * // "exfiltration": {}, @@ -37104,6 +37393,7 @@ export namespace securitycenter_v1 { * // "orgPolicies": [], * // "parent": "my_parent", * // "parentDisplayName": "my_parentDisplayName", + * // "policyViolationSummary": {}, * // "processes": [], * // "resourceName": "my_resourceName", * // "secret": {}, diff --git a/src/apis/securitycenter/v1beta1.ts b/src/apis/securitycenter/v1beta1.ts index 8cb9c0d1b80..f35e1458d80 100644 --- a/src/apis/securitycenter/v1beta1.ts +++ b/src/apis/securitycenter/v1beta1.ts @@ -255,6 +255,27 @@ export namespace securitycenter_v1beta1 { */ count?: string | null; } + /** + * Details about a data access attempt made by an agent principal not authorized under applicable data security policy. + */ + export interface Schema$AgentDataAccessEvent { + /** + * Unique identifier for data access event. + */ + eventId?: string | null; + /** + * Timestamp of data access event. + */ + eventTime?: string | null; + /** + * The operation performed by the principal to access the data. + */ + operation?: string | null; + /** + * The agent principal that accessed the data. + */ + principalSubject?: string | null; + } /** * Contains information about the AI model associated with the finding. */ @@ -1141,6 +1162,31 @@ export namespace securitycenter_v1beta1 { */ percentPagesMatched?: number | null; } + /** + * Represents discovered, customer managed workload that is not registered with the respective GCP service. + */ + export interface Schema$DiscoveredWorkload { + /** + * The confidence in detection of this workload. + */ + confidence?: string | null; + /** + * A boolean flag set to true if associated hardware strongly predicts the workload type. + */ + detectedRelevantHardware?: boolean | null; + /** + * A boolean flag set to true if associated keywords strongly predict the workload type. + */ + detectedRelevantKeywords?: boolean | null; + /** + * A boolean flag set to true if installed packages strongly predict the workload type. + */ + detectedRelevantPackages?: boolean | null; + /** + * The type of workload. + */ + workloadType?: string | null; + } /** * Contains information about the disk associated with the finding. */ @@ -1265,10 +1311,18 @@ export namespace securitycenter_v1beta1 { * Details about the externally exposed resource associated with the finding. */ export interface Schema$ExternalExposure { + /** + * The full resource name of the load balancer backend bucket, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendBuckets/{name\}" + */ + backendBucket?: string | null; /** * The full resource name of load balancer backend service, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". */ backendService?: string | null; + /** + * The name and version of the exposed web application, for example, "Jenkins 2.184". + */ + exposedApplication?: string | null; /** * The resource which is running the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/zones/{zone\}/instances/{instance\}.” */ @@ -1281,10 +1335,22 @@ export namespace securitycenter_v1beta1 { * The full resource name of the forwarding rule, for example, "//compute.googleapis.com/projects/{project-id\}/global/forwardingRules/{forwarding-rule-name\}". */ forwardingRule?: string | null; + /** + * Hostname of the exposed application, for example, "https://test-app.a.run.app/" + */ + hostnameUri?: string | null; + /** + * The http response returned by the web application. + */ + httpResponse?: Schema$HttpResponse[]; /** * The full resource name of the instance group, for example, "//compute.googleapis.com/projects/{project-id\}/global/instanceGroups/{name\}". */ instanceGroup?: string | null; + /** + * The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". + */ + internalBackendService?: string | null; /** * The full resource name of the load balancer firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". */ @@ -1293,6 +1359,10 @@ export namespace securitycenter_v1beta1 { * The full resource name of the network endpoint group, for example, "//compute.googleapis.com/projects/{project-id\}/global/networkEndpointGroups/{name\}". */ networkEndpointGroup?: string | null; + /** + * The full resource name of the network ingress firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{name\}". + */ + networkIngressFirewallPolicy?: string | null; /** * Private IP address of the exposed endpoint. */ @@ -1301,6 +1371,14 @@ export namespace securitycenter_v1beta1 { * Port number associated with private IP address. */ privatePort?: string | null; + /** + * The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/networkAttachments/{name\}" + */ + pscNetworkAttachment?: string | null; + /** + * The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/serviceAttachments/{name\}" + */ + pscServiceAttachment?: string | null; /** * Public IP address of the exposed endpoint. */ @@ -1376,6 +1454,10 @@ export namespace securitycenter_v1beta1 { * AffectedResources associated with the finding. */ affectedResources?: Schema$AffectedResources; + /** + * Agent data access events associated with the finding. + */ + agentDataAccessEvents?: Schema$AgentDataAccessEvent[]; /** * The AI model associated with the finding. */ @@ -1464,6 +1546,10 @@ export namespace securitycenter_v1beta1 { * Contains more details about the finding. */ description?: string | null; + /** + * DiscoveredWorkload associated with the finding. + */ + discoveredWorkload?: Schema$DiscoveredWorkload; /** * Disk associated with the finding. */ @@ -1586,6 +1672,10 @@ export namespace securitycenter_v1beta1 { * Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics". */ parentDisplayName?: string | null; + /** + * PolicyViolationSummary associated with the finding. + */ + policyViolationSummary?: Schema$PolicyViolationSummary; /** * Represents operating system processes associated with the Finding. */ @@ -2585,6 +2675,27 @@ export namespace securitycenter_v1beta1 { */ count?: string | null; } + /** + * Details about a data access attempt made by an agent principal not authorized under applicable data security policy. + */ + export interface Schema$GoogleCloudSecuritycenterV2AgentDataAccessEvent { + /** + * Unique identifier for data access event. + */ + eventId?: string | null; + /** + * Timestamp of data access event. + */ + eventTime?: string | null; + /** + * The operation performed by the principal to access the data. + */ + operation?: string | null; + /** + * The agent principal that accessed the data. + */ + principalSubject?: string | null; + } /** * Contains information about the AI model associated with the finding. */ @@ -3439,6 +3550,31 @@ export namespace securitycenter_v1beta1 { */ percentPagesMatched?: number | null; } + /** + * Represents discovered, customer managed workload that is not registered with the respective GCP service. + */ + export interface Schema$GoogleCloudSecuritycenterV2DiscoveredWorkload { + /** + * The confidence in detection of this workload. + */ + confidence?: string | null; + /** + * A boolean flag set to true if associated hardware strongly predicts the workload type. + */ + detectedRelevantHardware?: boolean | null; + /** + * A boolean flag set to true if associated keywords strongly predict the workload type. + */ + detectedRelevantKeywords?: boolean | null; + /** + * A boolean flag set to true if installed packages strongly predict the workload type. + */ + detectedRelevantPackages?: boolean | null; + /** + * The type of workload. + */ + workloadType?: string | null; + } /** * Contains information about the disk associated with the finding. */ @@ -3521,10 +3657,18 @@ export namespace securitycenter_v1beta1 { * Details about the externally exposed resource associated with the finding. */ export interface Schema$GoogleCloudSecuritycenterV2ExternalExposure { + /** + * The full resource name of the load balancer backend bucket, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendBuckets/{name\}" + */ + backendBucket?: string | null; /** * The full resource name of load balancer backend service, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". */ backendService?: string | null; + /** + * The name and version of the exposed web application, for example, "Jenkins 2.184". + */ + exposedApplication?: string | null; /** * The resource which is running the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/zones/{zone\}/instances/{instance\}.” */ @@ -3537,10 +3681,22 @@ export namespace securitycenter_v1beta1 { * The full resource name of the forwarding rule, for example, "//compute.googleapis.com/projects/{project-id\}/global/forwardingRules/{forwarding-rule-name\}". */ forwardingRule?: string | null; + /** + * Hostname of the exposed application, for example, "https://test-app.a.run.app/" + */ + hostnameUri?: string | null; + /** + * The http response returned by the web application. + */ + httpResponse?: Schema$GoogleCloudSecuritycenterV2HttpResponse[]; /** * The full resource name of the instance group, for example, "//compute.googleapis.com/projects/{project-id\}/global/instanceGroups/{name\}". */ instanceGroup?: string | null; + /** + * The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". + */ + internalBackendService?: string | null; /** * The full resource name of the load balancer firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". */ @@ -3549,6 +3705,10 @@ export namespace securitycenter_v1beta1 { * The full resource name of the network endpoint group, for example, "//compute.googleapis.com/projects/{project-id\}/global/networkEndpointGroups/{name\}". */ networkEndpointGroup?: string | null; + /** + * The full resource name of the network ingress firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{name\}". + */ + networkIngressFirewallPolicy?: string | null; /** * Private IP address of the exposed endpoint. */ @@ -3557,6 +3717,14 @@ export namespace securitycenter_v1beta1 { * Port number associated with private IP address. */ privatePort?: string | null; + /** + * The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/networkAttachments/{name\}" + */ + pscNetworkAttachment?: string | null; + /** + * The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/serviceAttachments/{name\}" + */ + pscServiceAttachment?: string | null; /** * Public IP address of the exposed endpoint. */ @@ -3681,6 +3849,10 @@ export namespace securitycenter_v1beta1 { * AffectedResources associated with the finding. */ affectedResources?: Schema$GoogleCloudSecuritycenterV2AffectedResources; + /** + * Agent data access events associated with the finding. + */ + agentDataAccessEvents?: Schema$GoogleCloudSecuritycenterV2AgentDataAccessEvent[]; /** * The AI model associated with the finding. */ @@ -3775,6 +3947,10 @@ export namespace securitycenter_v1beta1 { * Contains more details about the finding. */ description?: string | null; + /** + * DiscoveredWorkload associated with the finding. + */ + discoveredWorkload?: Schema$GoogleCloudSecuritycenterV2DiscoveredWorkload; /** * Disk associated with the finding. */ @@ -3897,6 +4073,10 @@ export namespace securitycenter_v1beta1 { * Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics". */ parentDisplayName?: string | null; + /** + * PolicyViolationSummary associated with the finding. + */ + policyViolationSummary?: Schema$GoogleCloudSecuritycenterV2PolicyViolationSummary; /** * Represents operating system processes associated with the Finding. */ @@ -4002,6 +4182,19 @@ export namespace securitycenter_v1beta1 { */ groupType?: string | null; } + /** + * The http response returned by the web application. + */ + export interface Schema$GoogleCloudSecuritycenterV2HttpResponse { + /** + * The http path for which response code was returned by web application, for example, "https://test-app.a.run.app/test". + */ + path?: string | null; + /** + * The http response code returned by the web application, for example, 200. + */ + statusCode?: string | null; + } /** * Represents a particular IAM binding, which captures a member's role addition, removal, or state. */ @@ -4867,6 +5060,27 @@ export namespace securitycenter_v1beta1 { */ field?: string | null; } + /** + * Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control. + */ + export interface Schema$GoogleCloudSecuritycenterV2PolicyViolationSummary { + /** + * Total number of child resources that conform to the policy. + */ + conformantResourcesCount?: string | null; + /** + * Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively "unknown". + */ + evaluationErrorsCount?: string | null; + /** + * Total count of child resources which were not in scope for evaluation. + */ + outOfScopeResourcesCount?: string | null; + /** + * Count of child resources in violation of the policy. + */ + policyViolationsCount?: string | null; + } /** * A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port. */ @@ -5618,6 +5832,19 @@ export namespace securitycenter_v1beta1 { */ properties?: {[key: string]: any} | null; } + /** + * The http response returned by the web application. + */ + export interface Schema$HttpResponse { + /** + * The http path for which response code was returned by web application, for example, "https://test-app.a.run.app/test". + */ + path?: string | null; + /** + * The http response code returned by the web application, for example, 200. + */ + statusCode?: string | null; + } /** * Represents a particular IAM binding, which captures a member's role addition, removal, or state. */ @@ -6198,6 +6425,27 @@ export namespace securitycenter_v1beta1 { */ field?: string | null; } + /** + * Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control. + */ + export interface Schema$PolicyViolationSummary { + /** + * Total number of child resources that conform to the policy. + */ + conformantResourcesCount?: string | null; + /** + * Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively "unknown". + */ + evaluationErrorsCount?: string | null; + /** + * Total count of child resources which were not in scope for evaluation. + */ + outOfScopeResourcesCount?: string | null; + /** + * Count of child resources in violation of the policy. + */ + policyViolationsCount?: string | null; + } /** * A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port. */ diff --git a/src/apis/securitycenter/v1beta2.ts b/src/apis/securitycenter/v1beta2.ts index 0794845c42b..64443ebea58 100644 --- a/src/apis/securitycenter/v1beta2.ts +++ b/src/apis/securitycenter/v1beta2.ts @@ -259,6 +259,27 @@ export namespace securitycenter_v1beta2 { */ count?: string | null; } + /** + * Details about a data access attempt made by an agent principal not authorized under applicable data security policy. + */ + export interface Schema$AgentDataAccessEvent { + /** + * Unique identifier for data access event. + */ + eventId?: string | null; + /** + * Timestamp of data access event. + */ + eventTime?: string | null; + /** + * The operation performed by the principal to access the data. + */ + operation?: string | null; + /** + * The agent principal that accessed the data. + */ + principalSubject?: string | null; + } /** * Contains information about the AI model associated with the finding. */ @@ -1111,6 +1132,31 @@ export namespace securitycenter_v1beta2 { */ percentPagesMatched?: number | null; } + /** + * Represents discovered, customer managed workload that is not registered with the respective GCP service. + */ + export interface Schema$DiscoveredWorkload { + /** + * The confidence in detection of this workload. + */ + confidence?: string | null; + /** + * A boolean flag set to true if associated hardware strongly predicts the workload type. + */ + detectedRelevantHardware?: boolean | null; + /** + * A boolean flag set to true if associated keywords strongly predict the workload type. + */ + detectedRelevantKeywords?: boolean | null; + /** + * A boolean flag set to true if installed packages strongly predict the workload type. + */ + detectedRelevantPackages?: boolean | null; + /** + * The type of workload. + */ + workloadType?: string | null; + } /** * Contains information about the disk associated with the finding. */ @@ -1252,10 +1298,18 @@ export namespace securitycenter_v1beta2 { * Details about the externally exposed resource associated with the finding. */ export interface Schema$ExternalExposure { + /** + * The full resource name of the load balancer backend bucket, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendBuckets/{name\}" + */ + backendBucket?: string | null; /** * The full resource name of load balancer backend service, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". */ backendService?: string | null; + /** + * The name and version of the exposed web application, for example, "Jenkins 2.184". + */ + exposedApplication?: string | null; /** * The resource which is running the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/zones/{zone\}/instances/{instance\}.” */ @@ -1268,10 +1322,22 @@ export namespace securitycenter_v1beta2 { * The full resource name of the forwarding rule, for example, "//compute.googleapis.com/projects/{project-id\}/global/forwardingRules/{forwarding-rule-name\}". */ forwardingRule?: string | null; + /** + * Hostname of the exposed application, for example, "https://test-app.a.run.app/" + */ + hostnameUri?: string | null; + /** + * The http response returned by the web application. + */ + httpResponse?: Schema$HttpResponse[]; /** * The full resource name of the instance group, for example, "//compute.googleapis.com/projects/{project-id\}/global/instanceGroups/{name\}". */ instanceGroup?: string | null; + /** + * The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". + */ + internalBackendService?: string | null; /** * The full resource name of the load balancer firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". */ @@ -1280,6 +1346,10 @@ export namespace securitycenter_v1beta2 { * The full resource name of the network endpoint group, for example, "//compute.googleapis.com/projects/{project-id\}/global/networkEndpointGroups/{name\}". */ networkEndpointGroup?: string | null; + /** + * The full resource name of the network ingress firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{name\}". + */ + networkIngressFirewallPolicy?: string | null; /** * Private IP address of the exposed endpoint. */ @@ -1288,6 +1358,14 @@ export namespace securitycenter_v1beta2 { * Port number associated with private IP address. */ privatePort?: string | null; + /** + * The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/networkAttachments/{name\}" + */ + pscNetworkAttachment?: string | null; + /** + * The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/serviceAttachments/{name\}" + */ + pscServiceAttachment?: string | null; /** * Public IP address of the exposed endpoint. */ @@ -1363,6 +1441,10 @@ export namespace securitycenter_v1beta2 { * AffectedResources associated with the finding. */ affectedResources?: Schema$AffectedResources; + /** + * Agent data access events associated with the finding. + */ + agentDataAccessEvents?: Schema$AgentDataAccessEvent[]; /** * The AI model associated with the finding. */ @@ -1451,6 +1533,10 @@ export namespace securitycenter_v1beta2 { * Contains more details about the finding. */ description?: string | null; + /** + * DiscoveredWorkload associated with the finding. + */ + discoveredWorkload?: Schema$DiscoveredWorkload; /** * Disk associated with the finding. */ @@ -1573,6 +1659,10 @@ export namespace securitycenter_v1beta2 { * Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics". */ parentDisplayName?: string | null; + /** + * PolicyViolationSummary associated with the finding. + */ + policyViolationSummary?: Schema$PolicyViolationSummary; /** * Represents operating system processes associated with the Finding. */ @@ -2496,6 +2586,27 @@ export namespace securitycenter_v1beta2 { */ count?: string | null; } + /** + * Details about a data access attempt made by an agent principal not authorized under applicable data security policy. + */ + export interface Schema$GoogleCloudSecuritycenterV2AgentDataAccessEvent { + /** + * Unique identifier for data access event. + */ + eventId?: string | null; + /** + * Timestamp of data access event. + */ + eventTime?: string | null; + /** + * The operation performed by the principal to access the data. + */ + operation?: string | null; + /** + * The agent principal that accessed the data. + */ + principalSubject?: string | null; + } /** * Contains information about the AI model associated with the finding. */ @@ -3350,6 +3461,31 @@ export namespace securitycenter_v1beta2 { */ percentPagesMatched?: number | null; } + /** + * Represents discovered, customer managed workload that is not registered with the respective GCP service. + */ + export interface Schema$GoogleCloudSecuritycenterV2DiscoveredWorkload { + /** + * The confidence in detection of this workload. + */ + confidence?: string | null; + /** + * A boolean flag set to true if associated hardware strongly predicts the workload type. + */ + detectedRelevantHardware?: boolean | null; + /** + * A boolean flag set to true if associated keywords strongly predict the workload type. + */ + detectedRelevantKeywords?: boolean | null; + /** + * A boolean flag set to true if installed packages strongly predict the workload type. + */ + detectedRelevantPackages?: boolean | null; + /** + * The type of workload. + */ + workloadType?: string | null; + } /** * Contains information about the disk associated with the finding. */ @@ -3432,10 +3568,18 @@ export namespace securitycenter_v1beta2 { * Details about the externally exposed resource associated with the finding. */ export interface Schema$GoogleCloudSecuritycenterV2ExternalExposure { + /** + * The full resource name of the load balancer backend bucket, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendBuckets/{name\}" + */ + backendBucket?: string | null; /** * The full resource name of load balancer backend service, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". */ backendService?: string | null; + /** + * The name and version of the exposed web application, for example, "Jenkins 2.184". + */ + exposedApplication?: string | null; /** * The resource which is running the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/zones/{zone\}/instances/{instance\}.” */ @@ -3448,10 +3592,22 @@ export namespace securitycenter_v1beta2 { * The full resource name of the forwarding rule, for example, "//compute.googleapis.com/projects/{project-id\}/global/forwardingRules/{forwarding-rule-name\}". */ forwardingRule?: string | null; + /** + * Hostname of the exposed application, for example, "https://test-app.a.run.app/" + */ + hostnameUri?: string | null; + /** + * The http response returned by the web application. + */ + httpResponse?: Schema$GoogleCloudSecuritycenterV2HttpResponse[]; /** * The full resource name of the instance group, for example, "//compute.googleapis.com/projects/{project-id\}/global/instanceGroups/{name\}". */ instanceGroup?: string | null; + /** + * The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". + */ + internalBackendService?: string | null; /** * The full resource name of the load balancer firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". */ @@ -3460,6 +3616,10 @@ export namespace securitycenter_v1beta2 { * The full resource name of the network endpoint group, for example, "//compute.googleapis.com/projects/{project-id\}/global/networkEndpointGroups/{name\}". */ networkEndpointGroup?: string | null; + /** + * The full resource name of the network ingress firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{name\}". + */ + networkIngressFirewallPolicy?: string | null; /** * Private IP address of the exposed endpoint. */ @@ -3468,6 +3628,14 @@ export namespace securitycenter_v1beta2 { * Port number associated with private IP address. */ privatePort?: string | null; + /** + * The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/networkAttachments/{name\}" + */ + pscNetworkAttachment?: string | null; + /** + * The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/serviceAttachments/{name\}" + */ + pscServiceAttachment?: string | null; /** * Public IP address of the exposed endpoint. */ @@ -3592,6 +3760,10 @@ export namespace securitycenter_v1beta2 { * AffectedResources associated with the finding. */ affectedResources?: Schema$GoogleCloudSecuritycenterV2AffectedResources; + /** + * Agent data access events associated with the finding. + */ + agentDataAccessEvents?: Schema$GoogleCloudSecuritycenterV2AgentDataAccessEvent[]; /** * The AI model associated with the finding. */ @@ -3686,6 +3858,10 @@ export namespace securitycenter_v1beta2 { * Contains more details about the finding. */ description?: string | null; + /** + * DiscoveredWorkload associated with the finding. + */ + discoveredWorkload?: Schema$GoogleCloudSecuritycenterV2DiscoveredWorkload; /** * Disk associated with the finding. */ @@ -3808,6 +3984,10 @@ export namespace securitycenter_v1beta2 { * Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics". */ parentDisplayName?: string | null; + /** + * PolicyViolationSummary associated with the finding. + */ + policyViolationSummary?: Schema$GoogleCloudSecuritycenterV2PolicyViolationSummary; /** * Represents operating system processes associated with the Finding. */ @@ -3913,6 +4093,19 @@ export namespace securitycenter_v1beta2 { */ groupType?: string | null; } + /** + * The http response returned by the web application. + */ + export interface Schema$GoogleCloudSecuritycenterV2HttpResponse { + /** + * The http path for which response code was returned by web application, for example, "https://test-app.a.run.app/test". + */ + path?: string | null; + /** + * The http response code returned by the web application, for example, 200. + */ + statusCode?: string | null; + } /** * Represents a particular IAM binding, which captures a member's role addition, removal, or state. */ @@ -4778,6 +4971,27 @@ export namespace securitycenter_v1beta2 { */ field?: string | null; } + /** + * Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control. + */ + export interface Schema$GoogleCloudSecuritycenterV2PolicyViolationSummary { + /** + * Total number of child resources that conform to the policy. + */ + conformantResourcesCount?: string | null; + /** + * Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively "unknown". + */ + evaluationErrorsCount?: string | null; + /** + * Total count of child resources which were not in scope for evaluation. + */ + outOfScopeResourcesCount?: string | null; + /** + * Count of child resources in violation of the policy. + */ + policyViolationsCount?: string | null; + } /** * A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port. */ @@ -5428,6 +5642,19 @@ export namespace securitycenter_v1beta2 { */ groupType?: string | null; } + /** + * The http response returned by the web application. + */ + export interface Schema$HttpResponse { + /** + * The http path for which response code was returned by web application, for example, "https://test-app.a.run.app/test". + */ + path?: string | null; + /** + * The http response code returned by the web application, for example, 200. + */ + statusCode?: string | null; + } /** * Represents a particular IAM binding, which captures a member's role addition, removal, or state. */ @@ -5860,6 +6087,27 @@ export namespace securitycenter_v1beta2 { */ field?: string | null; } + /** + * Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control. + */ + export interface Schema$PolicyViolationSummary { + /** + * Total number of child resources that conform to the policy. + */ + conformantResourcesCount?: string | null; + /** + * Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively "unknown". + */ + evaluationErrorsCount?: string | null; + /** + * Total count of child resources which were not in scope for evaluation. + */ + outOfScopeResourcesCount?: string | null; + /** + * Count of child resources in violation of the policy. + */ + policyViolationsCount?: string | null; + } /** * A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port. */ diff --git a/src/apis/securityposture/v1.ts b/src/apis/securityposture/v1.ts index dc7232a775c..9c3e1f8e55c 100644 --- a/src/apis/securityposture/v1.ts +++ b/src/apis/securityposture/v1.ts @@ -354,31 +354,6 @@ export namespace securityposture_v1 { */ tfPlan?: string | null; } - /** - * Represents the criteria for considering an IaC validation as a failure. - */ - export interface Schema$IacValidationFailureCriteria { - /** - * Output only. The time at which the resource was created. - */ - createTime?: string | null; - /** - * Optional. The etag for optimistic concurrency. - */ - etag?: string | null; - /** - * Identifier. The resource name of the IacValidationFailureCriteria. Format: organizations/{organization\}/locations/{location\}/iacValidationFailureCriteria - */ - name?: string | null; - /** - * Optional. A list of severity thresholds. An IaC validation fails if any threshold is exceeded. - */ - severityCountThresholds?: Schema$SeverityCountThreshold[]; - /** - * Output only. The time at which the resource was last updated. - */ - updateTime?: string | null; - } /** * Details of an infrastructure-as-code (IaC) validation report. */ @@ -925,19 +900,6 @@ export namespace securityposture_v1 { */ moduleName?: string | null; } - /** - * Represents a threshold for a specific severity. - */ - export interface Schema$SeverityCountThreshold { - /** - * Optional. The severity level, reusing the existing Violation.Severity. - */ - severity?: string | null; - /** - * Optional. If violation count meets or exceeds this threshold, validation fails. - */ - thresholdCount?: number | 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). */ diff --git a/src/apis/serviceconsumermanagement/v1.ts b/src/apis/serviceconsumermanagement/v1.ts index 2f8eed37520..4bbcd6f1589 100644 --- a/src/apis/serviceconsumermanagement/v1.ts +++ b/src/apis/serviceconsumermanagement/v1.ts @@ -358,7 +358,7 @@ export namespace serviceconsumermanagement_v1 { */ overridesByRequestProtocol?: {[key: string]: Schema$BackendRule} | null; /** - * no-lint + * Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details. */ pathTranslation?: string | null; /** @@ -534,7 +534,7 @@ export namespace serviceconsumermanagement_v1 { */ referenceDocsUri?: string | null; /** - * Configuration for which RPCs should be generated in the GAPIC client. + * Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases. */ selectiveGapicGeneration?: Schema$SelectiveGapicGeneration; } @@ -1585,7 +1585,7 @@ export namespace serviceconsumermanagement_v1 { tenancyUnits?: Schema$TenancyUnit[]; } /** - * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. + * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases. */ export interface Schema$SelectiveGapicGeneration { /** @@ -1642,7 +1642,7 @@ export namespace serviceconsumermanagement_v1 { */ documentation?: Schema$Documentation; /** - * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service\}.clients6.google.com`, `content-{service\}.googleapis.com`, and mTLS variants like `{service\}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.). + * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. */ endpoints?: Schema$Endpoint[]; /** @@ -1953,7 +1953,7 @@ export namespace serviceconsumermanagement_v1 { */ export interface Schema$UsageRule { /** - * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. + * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. */ allowUnregisteredCalls?: boolean | null; /** diff --git a/src/apis/serviceconsumermanagement/v1beta1.ts b/src/apis/serviceconsumermanagement/v1beta1.ts index c35035210d1..70b72a86d22 100644 --- a/src/apis/serviceconsumermanagement/v1beta1.ts +++ b/src/apis/serviceconsumermanagement/v1beta1.ts @@ -315,7 +315,7 @@ export namespace serviceconsumermanagement_v1beta1 { */ overridesByRequestProtocol?: {[key: string]: Schema$BackendRule} | null; /** - * no-lint + * Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details. */ pathTranslation?: string | null; /** @@ -478,7 +478,7 @@ export namespace serviceconsumermanagement_v1beta1 { */ referenceDocsUri?: string | null; /** - * Configuration for which RPCs should be generated in the GAPIC client. + * Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases. */ selectiveGapicGeneration?: Schema$SelectiveGapicGeneration; } @@ -1446,7 +1446,7 @@ export namespace serviceconsumermanagement_v1beta1 { common?: Schema$CommonLanguageSettings; } /** - * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. + * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases. */ export interface Schema$SelectiveGapicGeneration { /** @@ -1503,7 +1503,7 @@ export namespace serviceconsumermanagement_v1beta1 { */ documentation?: Schema$Documentation; /** - * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service\}.clients6.google.com`, `content-{service\}.googleapis.com`, and mTLS variants like `{service\}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.). + * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. */ endpoints?: Schema$Endpoint[]; /** @@ -1708,7 +1708,7 @@ export namespace serviceconsumermanagement_v1beta1 { */ export interface Schema$UsageRule { /** - * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. + * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. */ allowUnregisteredCalls?: boolean | null; /** diff --git a/src/apis/servicedirectory/v1.ts b/src/apis/servicedirectory/v1.ts index fe038beda48..800375f5181 100644 --- a/src/apis/servicedirectory/v1.ts +++ b/src/apis/servicedirectory/v1.ts @@ -551,7 +551,7 @@ export namespace servicedirectory_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/servicedirectory/v1beta1.ts b/src/apis/servicedirectory/v1beta1.ts index 9dabc637435..c32c4c4ccfc 100644 --- a/src/apis/servicedirectory/v1beta1.ts +++ b/src/apis/servicedirectory/v1beta1.ts @@ -575,7 +575,7 @@ export namespace servicedirectory_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/servicemanagement/v1.ts b/src/apis/servicemanagement/v1.ts index 04d74afc0d4..de81c5a50ce 100644 --- a/src/apis/servicemanagement/v1.ts +++ b/src/apis/servicemanagement/v1.ts @@ -350,7 +350,7 @@ export namespace servicemanagement_v1 { */ overridesByRequestProtocol?: {[key: string]: Schema$BackendRule} | null; /** - * no-lint + * Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details. */ pathTranslation?: string | null; /** @@ -539,7 +539,7 @@ export namespace servicemanagement_v1 { */ referenceDocsUri?: string | null; /** - * Configuration for which RPCs should be generated in the GAPIC client. + * Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases. */ selectiveGapicGeneration?: Schema$SelectiveGapicGeneration; } @@ -1848,7 +1848,7 @@ export namespace servicemanagement_v1 { common?: Schema$CommonLanguageSettings; } /** - * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. + * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases. */ export interface Schema$SelectiveGapicGeneration { /** @@ -1905,7 +1905,7 @@ export namespace servicemanagement_v1 { */ documentation?: Schema$Documentation; /** - * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service\}.clients6.google.com`, `content-{service\}.googleapis.com`, and mTLS variants like `{service\}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.). + * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. */ endpoints?: Schema$Endpoint[]; /** @@ -2194,7 +2194,7 @@ export namespace servicemanagement_v1 { */ export interface Schema$UsageRule { /** - * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. + * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. */ allowUnregisteredCalls?: boolean | null; /** diff --git a/src/apis/servicenetworking/v1.ts b/src/apis/servicenetworking/v1.ts index 6651e8f1aaa..195e3c9d5d2 100644 --- a/src/apis/servicenetworking/v1.ts +++ b/src/apis/servicenetworking/v1.ts @@ -481,7 +481,7 @@ export namespace servicenetworking_v1 { */ overridesByRequestProtocol?: {[key: string]: Schema$BackendRule} | null; /** - * no-lint + * Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details. */ pathTranslation?: string | null; /** @@ -669,7 +669,7 @@ export namespace servicenetworking_v1 { */ referenceDocsUri?: string | null; /** - * Configuration for which RPCs should be generated in the GAPIC client. + * Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases. */ selectiveGapicGeneration?: Schema$SelectiveGapicGeneration; } @@ -2115,7 +2115,7 @@ export namespace servicenetworking_v1 { requestedAddress?: string | null; } /** - * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. + * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases. */ export interface Schema$SelectiveGapicGeneration { /** @@ -2172,7 +2172,7 @@ export namespace servicenetworking_v1 { */ documentation?: Schema$Documentation; /** - * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service\}.clients6.google.com`, `content-{service\}.googleapis.com`, and mTLS variants like `{service\}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.). + * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. */ endpoints?: Schema$Endpoint[]; /** @@ -2440,7 +2440,7 @@ export namespace servicenetworking_v1 { */ export interface Schema$UsageRule { /** - * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. + * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. */ allowUnregisteredCalls?: boolean | null; /** diff --git a/src/apis/servicenetworking/v1beta.ts b/src/apis/servicenetworking/v1beta.ts index d1bd99755e6..0b27ac1f8d6 100644 --- a/src/apis/servicenetworking/v1beta.ts +++ b/src/apis/servicenetworking/v1beta.ts @@ -386,7 +386,7 @@ export namespace servicenetworking_v1beta { */ overridesByRequestProtocol?: {[key: string]: Schema$BackendRule} | null; /** - * no-lint + * Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details. */ pathTranslation?: string | null; /** @@ -570,7 +570,7 @@ export namespace servicenetworking_v1beta { */ referenceDocsUri?: string | null; /** - * Configuration for which RPCs should be generated in the GAPIC client. + * Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases. */ selectiveGapicGeneration?: Schema$SelectiveGapicGeneration; } @@ -1837,7 +1837,7 @@ export namespace servicenetworking_v1beta { rangeName?: string | null; } /** - * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. + * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases. */ export interface Schema$SelectiveGapicGeneration { /** @@ -1894,7 +1894,7 @@ export namespace servicenetworking_v1beta { */ documentation?: Schema$Documentation; /** - * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service\}.clients6.google.com`, `content-{service\}.googleapis.com`, and mTLS variants like `{service\}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.). + * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. */ endpoints?: Schema$Endpoint[]; /** @@ -2132,7 +2132,7 @@ export namespace servicenetworking_v1beta { */ export interface Schema$UsageRule { /** - * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. + * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. */ allowUnregisteredCalls?: boolean | null; /** diff --git a/src/apis/serviceusage/v1.ts b/src/apis/serviceusage/v1.ts index 2b425cb79ca..6b52c1fb6d2 100644 --- a/src/apis/serviceusage/v1.ts +++ b/src/apis/serviceusage/v1.ts @@ -408,7 +408,7 @@ export namespace serviceusage_v1 { */ overridesByRequestProtocol?: {[key: string]: Schema$BackendRule} | null; /** - * no-lint + * Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details. */ pathTranslation?: string | null; /** @@ -624,7 +624,7 @@ export namespace serviceusage_v1 { */ referenceDocsUri?: string | null; /** - * Configuration for which RPCs should be generated in the GAPIC client. + * Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases. */ selectiveGapicGeneration?: Schema$SelectiveGapicGeneration; } @@ -1155,7 +1155,7 @@ export namespace serviceusage_v1 { */ documentation?: Schema$Documentation; /** - * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service\}.clients6.google.com`, `content-{service\}.googleapis.com`, and mTLS variants like `{service\}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.). + * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. */ endpoints?: Schema$Endpoint[]; /** @@ -1803,49 +1803,6 @@ export namespace serviceusage_v1 { */ totalPollTimeout?: string | null; } - /** - * McpEnableRule contains MCP enablement related rules. - */ - export interface Schema$McpEnableRule { - /** - * List of enabled MCP services. - */ - mcpServices?: Schema$McpService[]; - } - /** - * MCP Consumer Policy is a set of rules that define MCP related policy for a cloud resource hierarchy. - */ - export interface Schema$McpPolicy { - /** - * Output only. The time the policy was created. For singleton policies (such as the `default` policy), this is the first touch of the policy. - */ - createTime?: string | null; - /** - * An opaque tag indicating the current version of the policy, used for concurrency control. - */ - etag?: string | null; - /** - * McpEnableRules contains MCP enablement related rules. - */ - mcpEnableRules?: Schema$McpEnableRule[]; - /** - * Output only. The resource name of the policy. Only the `default` policy is supported. We allow the following formats: `projects/{PROJECT_NUMBER\}/mcpPolicies/default`, `projects/{PROJECT_ID\}/mcpPolicies/default`, `folders/{FOLDER_ID\}/mcpPolicies/default`, `organizations/{ORG_ID\}/mcpPolicies/default`. - */ - name?: string | null; - /** - * Output only. The time the policy was last updated. - */ - updateTime?: string | null; - } - /** - * McpService contains the service names that are enabled for MCP. - */ - export interface Schema$McpService { - /** - * The names of the services that are enabled for MCP. Example: `services/library-example.googleapis.com` - */ - service?: string | null; - } /** * Method represents a method of an API interface. New usages of this message as an alternative to MethodDescriptorProto are strongly discouraged. This message does not reliability preserve all information necessary to model the schema and preserve semantics. Instead make use of FileDescriptorSet which preserves the necessary information. */ @@ -2339,7 +2296,7 @@ export namespace serviceusage_v1 { common?: Schema$CommonLanguageSettings; } /** - * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. + * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases. */ export interface Schema$SelectiveGapicGeneration { /** @@ -2483,10 +2440,6 @@ export namespace serviceusage_v1 { * Metadata for the `UpdateContentSecurityPolicy` method. */ export interface Schema$UpdateContentSecurityPolicyMetadata {} - /** - * Metadata for the `UpdateMcpPolicy` method. - */ - export interface Schema$UpdateMcpPolicyMetadata {} /** * Configuration controlling usage of a service. */ @@ -2509,7 +2462,7 @@ export namespace serviceusage_v1 { */ export interface Schema$UsageRule { /** - * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. + * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. */ allowUnregisteredCalls?: boolean | null; /** diff --git a/src/apis/serviceusage/v1beta1.ts b/src/apis/serviceusage/v1beta1.ts index edb5b62175a..b351b083164 100644 --- a/src/apis/serviceusage/v1beta1.ts +++ b/src/apis/serviceusage/v1beta1.ts @@ -408,7 +408,7 @@ export namespace serviceusage_v1beta1 { */ overridesByRequestProtocol?: {[key: string]: Schema$BackendRule} | null; /** - * no-lint + * Path translation specifies how to combine the backend address with the request path in order to produce the appropriate forwarding URL for the request. See PathTranslation for more details. */ pathTranslation?: string | null; /** @@ -611,7 +611,7 @@ export namespace serviceusage_v1beta1 { */ referenceDocsUri?: string | null; /** - * Configuration for which RPCs should be generated in the GAPIC client. + * Configuration for which RPCs should be generated in the GAPIC client. Note: This field should not be used in most cases. */ selectiveGapicGeneration?: Schema$SelectiveGapicGeneration; } @@ -1195,7 +1195,7 @@ export namespace serviceusage_v1beta1 { */ documentation?: Schema$Documentation; /** - * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. WARNING: Defining any entries in the `endpoints` list disables the automatic generation of default endpoint variations (e.g., `{service\}.clients6.google.com`, `content-{service\}.googleapis.com`, and mTLS variants like `{service\}.mtls.googleapis.com`). To retain these default variations, you are required to explicitly include your main service endpoint (e.g., `myservice.googleapis.com`) in this list alongside any other custom endpoints (like REP, GFE, etc.). + * Configuration for network endpoints. If this is empty, then an endpoint with the same name as the service is automatically generated to service all defined APIs. */ endpoints?: Schema$Endpoint[]; /** @@ -1916,49 +1916,6 @@ export namespace serviceusage_v1beta1 { */ totalPollTimeout?: string | null; } - /** - * McpEnableRule contains MCP enablement related rules. - */ - export interface Schema$McpEnableRule { - /** - * List of enabled MCP services. - */ - mcpServices?: Schema$McpService[]; - } - /** - * MCP Consumer Policy is a set of rules that define MCP related policy for a cloud resource hierarchy. - */ - export interface Schema$McpPolicy { - /** - * Output only. The time the policy was created. For singleton policies (such as the `default` policy), this is the first touch of the policy. - */ - createTime?: string | null; - /** - * An opaque tag indicating the current version of the policy, used for concurrency control. - */ - etag?: string | null; - /** - * McpEnableRules contains MCP enablement related rules. - */ - mcpEnableRules?: Schema$McpEnableRule[]; - /** - * Output only. The resource name of the policy. Only the `default` policy is supported. We allow the following formats: `projects/{PROJECT_NUMBER\}/mcpPolicies/default`, `projects/{PROJECT_ID\}/mcpPolicies/default`, `folders/{FOLDER_ID\}/mcpPolicies/default`, `organizations/{ORG_ID\}/mcpPolicies/default`. - */ - name?: string | null; - /** - * Output only. The time the policy was last updated. - */ - updateTime?: string | null; - } - /** - * McpService contains the service names that are enabled for MCP. - */ - export interface Schema$McpService { - /** - * The names of the services that are enabled for MCP. Example: `services/library-example.googleapis.com` - */ - service?: string | null; - } /** * Method represents a method of an API interface. New usages of this message as an alternative to MethodDescriptorProto are strongly discouraged. This message does not reliability preserve all information necessary to model the schema and preserve semantics. Instead make use of FileDescriptorSet which preserves the necessary information. */ @@ -2536,7 +2493,7 @@ export namespace serviceusage_v1beta1 { common?: Schema$CommonLanguageSettings; } /** - * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. + * This message is used to configure the generation of a subset of the RPCs in a service for client libraries. Note: This feature should not be used in most cases. */ export interface Schema$SelectiveGapicGeneration { /** @@ -2746,10 +2703,6 @@ export namespace serviceusage_v1beta1 { * Metadata for the `UpdateContentSecurityPolicy` method. */ export interface Schema$UpdateContentSecurityPolicyMetadata {} - /** - * Metadata for the `UpdateMcpPolicy` method. - */ - export interface Schema$UpdateMcpPolicyMetadata {} /** * Configuration controlling usage of a service. */ @@ -2772,7 +2725,7 @@ export namespace serviceusage_v1beta1 { */ export interface Schema$UsageRule { /** - * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. + * Use this rule to configure unregistered calls for the service. Unregistered calls are calls that do not contain consumer project identity. (Example: calls that do not contain an API key). WARNING: By default, API methods do not allow unregistered calls, and each method call must be identified by a consumer project identity. */ allowUnregisteredCalls?: boolean | null; /** diff --git a/src/apis/smartdevicemanagement/v1.ts b/src/apis/smartdevicemanagement/v1.ts index 2d2f7d76922..47ed4d3f2f0 100644 --- a/src/apis/smartdevicemanagement/v1.ts +++ b/src/apis/smartdevicemanagement/v1.ts @@ -128,10 +128,6 @@ export namespace smartdevicemanagement_v1 { * Device resource represents an instance of enterprise managed device in the property. */ export interface Schema$GoogleHomeEnterpriseSdmV1Device { - /** - * Output only. The GHP device ID of the device. - */ - ghpName?: string | null; /** * Required. The resource name of the device. For example: "enterprises/XYZ/devices/123". */ @@ -206,10 +202,6 @@ export namespace smartdevicemanagement_v1 { * Output only. The custom name of the relation -- e.g., structure/room where the device is assigned to. */ displayName?: string | null; - /** - * Output only. The GHP name of the relation -- e.g., structure/room where the device is assigned to. For example: "homegraph.googleapis.com/Structure/ABC" or "homegraph.googleapis.com/Room/ABC" - */ - ghpParent?: string | null; /** * Output only. The name of the relation -- e.g., structure/room where the device is assigned to. For example: "enterprises/XYZ/structures/ABC" or "enterprises/XYZ/structures/ABC/rooms/123" */ @@ -232,10 +224,6 @@ export namespace smartdevicemanagement_v1 { * Structure resource represents an instance of enterprise managed home or hotel room. */ export interface Schema$GoogleHomeEnterpriseSdmV1Structure { - /** - * Output only. The unique identifier for the structure in Google Home Platform. Format: homegraph.googleapis.com/Structure/{structure_id\} - */ - ghpName?: string | null; /** * Output only. The resource name of the structure. For example: "enterprises/XYZ/structures/ABC". */ @@ -458,7 +446,6 @@ export namespace smartdevicemanagement_v1 { * * // Example response * // { - * // "ghpName": "my_ghpName", * // "name": "my_name", * // "parentRelations": [], * // "traits": {}, @@ -790,7 +777,6 @@ export namespace smartdevicemanagement_v1 { * * // Example response * // { - * // "ghpName": "my_ghpName", * // "name": "my_name", * // "traits": {} * // } diff --git a/src/apis/spanner/v1.ts b/src/apis/spanner/v1.ts index 98d257c29b8..b782264b38a 100644 --- a/src/apis/spanner/v1.ts +++ b/src/apis/spanner/v1.ts @@ -309,7 +309,7 @@ export namespace spanner_v1 { */ createTime?: string | null; /** - * Required for the CreateBackup operation. Name of the database from which this backup was created. This needs to be in the same instance as the backup. Values are of the form `projects//instances//databases/`. + * Required for the CreateBackup operation. Name of the database from which this backup was created. This needs to be in the same instance as the backup. Values are of the form `projects/{project\}/instances/{instance\}/databases/{database\}`. */ database?: string | null; /** @@ -353,7 +353,7 @@ export namespace spanner_v1 { */ minimumRestorableEdition?: string | null; /** - * Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form `projects//instances//backups/a-z*[a-z0-9]` The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form `projects//instances/`. + * Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form `projects/{project\}/instances/{instance\}/backups/a-z*[a-z0-9]` The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form `projects/{project\}/instances/{instance\}`. */ name?: string | null; /** @@ -361,11 +361,11 @@ export namespace spanner_v1 { */ oldestVersionTime?: string | null; /** - * Output only. The names of the destination backups being created by copying this source backup. The backup names are of the form `projects//instances//backups/`. Referencing backups may exist in different instances. The existence of any referencing backup prevents the backup from being deleted. When the copy operation is done (either successfully completed or cancelled or the destination backup is deleted), the reference to the backup is removed. + * Output only. The names of the destination backups being created by copying this source backup. The backup names are of the form `projects/{project\}/instances/{instance\}/backups/{backup\}`. Referencing backups may exist in different instances. The existence of any referencing backup prevents the backup from being deleted. When the copy operation is done (either successfully completed or cancelled or the destination backup is deleted), the reference to the backup is removed. */ referencingBackups?: string[] | null; /** - * Output only. The names of the restored databases that reference the backup. The database names are of the form `projects//instances//databases/`. Referencing databases may exist in different instances. The existence of any referencing database prevents the backup from being deleted. When a restored database from the backup enters the `READY` state, the reference to the backup is removed. + * Output only. The names of the restored databases that reference the backup. The database names are of the form `projects/{project\}/instances/{instance\}/databases/{database\}`. Referencing databases may exist in different instances. The existence of any referencing database prevents the backup from being deleted. When a restored database from the backup enters the `READY` state, the reference to the backup is removed. */ referencingDatabases?: string[] | null; /** @@ -407,7 +407,7 @@ export namespace spanner_v1 { */ export interface Schema$BackupInstancePartition { /** - * A unique identifier for the instance partition. Values are of the form `projects//instances//instancePartitions/` + * A unique identifier for the instance partition. Values are of the form `projects/{project\}/instances/{instance\}/instancePartitions/{instance_partition_id\}` */ instancePartition?: string | null; } @@ -759,11 +759,11 @@ export namespace spanner_v1 { */ encryptionType?: string | null; /** - * Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects//locations//keyRings//cryptoKeys/`. + * Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects/{project\}/locations/{location\}/keyRings/{key_ring\}/cryptoKeys/{kms_key_name\}`. */ kmsKeyName?: string | null; /** - * Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects//locations//keyRings//cryptoKeys/`. KMS keys specified can be in any order. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations. + * Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects/{project\}/locations/{location\}/keyRings/{key_ring\}/cryptoKeys/{kms_key_name\}`. KMS keys specified can be in any order. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations. */ kmsKeyNames?: string[] | null; } @@ -776,7 +776,7 @@ export namespace spanner_v1 { */ cancelTime?: string | null; /** - * The name of the backup being created through the copy operation. Values are of the form `projects//instances//backups/`. + * The name of the backup being created through the copy operation. Values are of the form `projects/{project\}/instances/{instance\}/backups/{backup\}`. */ name?: string | null; /** @@ -784,7 +784,7 @@ export namespace spanner_v1 { */ progress?: Schema$OperationProgress; /** - * The name of the source backup that is being copied. Values are of the form `projects//instances//backups/`. + * The name of the source backup that is being copied. Values are of the form `projects/{project\}/instances/{instance\}/backups/{backup\}`. */ sourceBackup?: string | null; } @@ -793,7 +793,7 @@ export namespace spanner_v1 { */ export interface Schema$CopyBackupRequest { /** - * Required. The id of the backup copy. The `backup_id` appended to `parent` forms the full backup_uri of the form `projects//instances//backups/`. + * Required. The id of the backup copy. The `backup_id` appended to `parent` forms the full backup_uri of the form `projects/{project\}/instances/{instance\}/backups/{backup\}`. */ backupId?: string | null; /** @@ -805,7 +805,7 @@ export namespace spanner_v1 { */ expireTime?: string | null; /** - * Required. The source backup to be copied. The source backup needs to be in READY state for it to be copied. Once CopyBackup is in progress, the source backup cannot be deleted or cleaned up on expiration until CopyBackup is finished. Values are of the form: `projects//instances//backups/`. + * Required. The source backup to be copied. The source backup needs to be in READY state for it to be copied. Once CopyBackup is in progress, the source backup cannot be deleted or cleaned up on expiration until CopyBackup is finished. Values are of the form: `projects/{project\}/instances/{instance\}/backups/{backup\}`. */ sourceBackup?: string | null; } @@ -818,11 +818,11 @@ export namespace spanner_v1 { */ encryptionType?: string | null; /** - * Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects//locations//keyRings//cryptoKeys/`. + * Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects/{project\}/locations/{location\}/keyRings/{key_ring\}/cryptoKeys/{kms_key_name\}`. */ kmsKeyName?: string | null; /** - * Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects//locations//keyRings//cryptoKeys/`. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations. + * Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects/{project\}/locations/{location\}/keyRings/{key_ring\}/cryptoKeys/{kms_key_name\}`. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations. */ kmsKeyNames?: string[] | null; } @@ -2723,7 +2723,7 @@ export namespace spanner_v1 { */ multiplexedSessionPreviousTransactionId?: string | null; /** - * Read lock mode for the transaction. + * The read lock mode for the transaction. */ readLockMode?: string | null; } @@ -7244,7 +7244,7 @@ export namespace spanner_v1 { * pageSize: 'placeholder-value', * // If non-empty, `page_token` should contain a next_page_token from a previous ListBackupOperationsResponse to the same `parent` and with the same `filter`. * pageToken: 'placeholder-value', - * // Required. The instance of the backup operations. Values are of the form `projects//instances/`. + * // Required. The instance of the backup operations. Values are of the form `projects/{project\}/instances/{instance\}`. * parent: 'projects/my-project/instances/my-instance', * }); * console.log(res.data); @@ -7372,7 +7372,7 @@ export namespace spanner_v1 { */ pageToken?: string; /** - * Required. The instance of the backup operations. Values are of the form `projects//instances/`. + * Required. The instance of the backup operations. Values are of the form `projects/{project\}/instances/{instance\}`. */ parent?: string; } @@ -7421,7 +7421,7 @@ export namespace spanner_v1 { * * // Do the magic * const res = await spanner.projects.instances.backups.copy({ - * // Required. The name of the destination instance that will contain the backup copy. Values are of the form: `projects//instances/`. + * // Required. The name of the destination instance that will contain the backup copy. Values are of the form: `projects/{project\}/instances/{instance\}`. * parent: 'projects/my-project/instances/my-instance', * * // Request body metadata @@ -7576,15 +7576,15 @@ export namespace spanner_v1 { * * // Do the magic * const res = await spanner.projects.instances.backups.create({ - * // Required. The id of the backup to be created. The `backup_id` appended to `parent` forms the full backup name of the form `projects//instances//backups/`. + * // Required. The id of the backup to be created. The `backup_id` appended to `parent` forms the full backup name of the form `projects/{project\}/instances/{instance\}/backups/{backup_id\}`. * backupId: 'placeholder-value', * // Required. The encryption type of the backup. * 'encryptionConfig.encryptionType': 'placeholder-value', - * // Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects//locations//keyRings//cryptoKeys/`. + * // Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects/{project\}/locations/{location\}/keyRings/{key_ring\}/cryptoKeys/{kms_key_name\}`. * 'encryptionConfig.kmsKeyName': 'placeholder-value', - * // Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects//locations//keyRings//cryptoKeys/`. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations. + * // Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects/{project\}/locations/{location\}/keyRings/{key_ring\}/cryptoKeys/{kms_key_name\}`. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations. * 'encryptionConfig.kmsKeyNames': 'placeholder-value', - * // Required. The name of the instance in which the backup is created. This must be the same instance that contains the database the backup is created from. The backup will be stored in the locations specified in the instance configuration of this instance. Values are of the form `projects//instances/`. + * // Required. The name of the instance in which the backup is created. This must be the same instance that contains the database the backup is created from. The backup will be stored in the locations specified in the instance configuration of this instance. Values are of the form `projects/{project\}/instances/{instance\}`. * parent: 'projects/my-project/instances/my-instance', * * // Request body metadata @@ -7755,7 +7755,7 @@ export namespace spanner_v1 { * * // Do the magic * const res = await spanner.projects.instances.backups.delete({ - * // Required. Name of the backup to delete. Values are of the form `projects//instances//backups/`. + * // Required. Name of the backup to delete. Values are of the form `projects/{project\}/instances/{instance\}/backups/{backup\}`. * name: 'projects/my-project/instances/my-instance/backups/my-backup', * }); * console.log(res.data); @@ -7890,7 +7890,7 @@ export namespace spanner_v1 { * * // Do the magic * const res = await spanner.projects.instances.backups.get({ - * // Required. Name of the backup. Values are of the form `projects//instances//backups/`. + * // Required. Name of the backup. Values are of the form `projects/{project\}/instances/{instance\}/backups/{backup\}`. * name: 'projects/my-project/instances/my-instance/backups/my-backup', * }); * console.log(res.data); @@ -8202,7 +8202,7 @@ export namespace spanner_v1 { * pageSize: 'placeholder-value', * // If non-empty, `page_token` should contain a next_page_token from a previous ListBackupsResponse to the same `parent` and with the same `filter`. * pageToken: 'placeholder-value', - * // Required. The instance to list backups from. Values are of the form `projects//instances/`. + * // Required. The instance to list backups from. Values are of the form `projects/{project\}/instances/{instance\}`. * parent: 'projects/my-project/instances/my-instance', * }); * console.log(res.data); @@ -8343,7 +8343,7 @@ export namespace spanner_v1 { * * // Do the magic * const res = await spanner.projects.instances.backups.patch({ - * // Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form `projects//instances//backups/a-z*[a-z0-9]` The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form `projects//instances/`. + * // Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form `projects/{project\}/instances/{instance\}/backups/a-z*[a-z0-9]` The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form `projects/{project\}/instances/{instance\}`. * name: 'projects/my-project/instances/my-instance/backups/my-backup', * // Required. A mask specifying which fields (for example, `expire_time`) in the backup resource should be updated. This mask is relative to the backup resource, not to the request message. The field mask must always be specified; this prevents any future fields from being erased accidentally by clients that do not know about them. * updateMask: 'placeholder-value', @@ -8800,7 +8800,7 @@ export namespace spanner_v1 { export interface Params$Resource$Projects$Instances$Backups$Copy extends StandardParameters { /** - * Required. The name of the destination instance that will contain the backup copy. Values are of the form: `projects//instances/`. + * Required. The name of the destination instance that will contain the backup copy. Values are of the form: `projects/{project\}/instances/{instance\}`. */ parent?: string; @@ -8811,7 +8811,7 @@ export namespace spanner_v1 { } export interface Params$Resource$Projects$Instances$Backups$Create extends StandardParameters { /** - * Required. The id of the backup to be created. The `backup_id` appended to `parent` forms the full backup name of the form `projects//instances//backups/`. + * Required. The id of the backup to be created. The `backup_id` appended to `parent` forms the full backup name of the form `projects/{project\}/instances/{instance\}/backups/{backup_id\}`. */ backupId?: string; /** @@ -8819,15 +8819,15 @@ export namespace spanner_v1 { */ 'encryptionConfig.encryptionType'?: string; /** - * Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects//locations//keyRings//cryptoKeys/`. + * Optional. This field is maintained for backwards compatibility. For new callers, we recommend using `kms_key_names` to specify the KMS key. Only use `kms_key_name` if the location of the KMS key matches the database instance's configuration (location) exactly. For example, if the KMS location is in `us-central1` or `nam3`, then the database instance must also be in `us-central1` or `nam3`. The Cloud KMS key that is used to encrypt and decrypt the restored database. Set this field only when encryption_type is `CUSTOMER_MANAGED_ENCRYPTION`. Values are of the form `projects/{project\}/locations/{location\}/keyRings/{key_ring\}/cryptoKeys/{kms_key_name\}`. */ 'encryptionConfig.kmsKeyName'?: string; /** - * Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects//locations//keyRings//cryptoKeys/`. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations. + * Optional. Specifies the KMS configuration for the one or more keys used to protect the backup. Values are of the form `projects/{project\}/locations/{location\}/keyRings/{key_ring\}/cryptoKeys/{kms_key_name\}`. The keys referenced by `kms_key_names` must fully cover all regions of the backup's instance configuration. Some examples: * For regional (single-region) instance configurations, specify a regional location KMS key. * For multi-region instance configurations of type `GOOGLE_MANAGED`, either specify a multi-region location KMS key or multiple regional location KMS keys that cover all regions in the instance configuration. * For an instance configuration of type `USER_MANAGED`, specify only regional location KMS keys to cover each region in the instance configuration. Multi-region location KMS keys aren't supported for `USER_MANAGED` type instance configurations. */ 'encryptionConfig.kmsKeyNames'?: string[]; /** - * Required. The name of the instance in which the backup is created. This must be the same instance that contains the database the backup is created from. The backup will be stored in the locations specified in the instance configuration of this instance. Values are of the form `projects//instances/`. + * Required. The name of the instance in which the backup is created. This must be the same instance that contains the database the backup is created from. The backup will be stored in the locations specified in the instance configuration of this instance. Values are of the form `projects/{project\}/instances/{instance\}`. */ parent?: string; @@ -8838,13 +8838,13 @@ export namespace spanner_v1 { } export interface Params$Resource$Projects$Instances$Backups$Delete extends StandardParameters { /** - * Required. Name of the backup to delete. Values are of the form `projects//instances//backups/`. + * Required. Name of the backup to delete. Values are of the form `projects/{project\}/instances/{instance\}/backups/{backup\}`. */ name?: string; } export interface Params$Resource$Projects$Instances$Backups$Get extends StandardParameters { /** - * Required. Name of the backup. Values are of the form `projects//instances//backups/`. + * Required. Name of the backup. Values are of the form `projects/{project\}/instances/{instance\}/backups/{backup\}`. */ name?: string; } @@ -8873,13 +8873,13 @@ export namespace spanner_v1 { */ pageToken?: string; /** - * Required. The instance to list backups from. Values are of the form `projects//instances/`. + * Required. The instance to list backups from. Values are of the form `projects/{project\}/instances/{instance\}`. */ parent?: string; } export interface Params$Resource$Projects$Instances$Backups$Patch extends StandardParameters { /** - * Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form `projects//instances//backups/a-z*[a-z0-9]` The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form `projects//instances/`. + * Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form `projects/{project\}/instances/{instance\}/backups/a-z*[a-z0-9]` The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form `projects/{project\}/instances/{instance\}`. */ name?: string; /** diff --git a/src/apis/sqladmin/v1.ts b/src/apis/sqladmin/v1.ts index 32472c7f68d..7b78fa9676c 100644 --- a/src/apis/sqladmin/v1.ts +++ b/src/apis/sqladmin/v1.ts @@ -1147,7 +1147,7 @@ export namespace sqladmin_v1 { */ application?: string | null; /** - * Optional. When set to true, the API caller identity associated with the request is used for database authentication. The API caller must be an IAM user in the database. + * Optional. When set to `true`, the API caller identity associated with the request is used for database authentication. The API caller must be an IAM user in the database. */ autoIamAuthn?: boolean | null; /** @@ -2278,10 +2278,22 @@ export namespace sqladmin_v1 { * Optional. The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, `/projects/myProject/global/networks/default`. */ privateNetwork?: string | null; + /** + * Optional. The region of the target instance where the datasource will be restored. For example: "us-central1". + */ + region?: string | null; /** * Target instance name. */ targetInstance?: string | null; + /** + * Optional. Specifies the instance settings that will be cleared from the source instance. This field is only applicable for cross project PITRs. + */ + targetInstanceClearSettingsFieldNames?: string[] | null; + /** + * Optional. Specifies the instance settings that will be overridden from the source instance. This field is only applicable for cross project PITRs. + */ + targetInstanceSettings?: Schema$DatabaseInstance; } /** * Details of a single read pool node of a read pool. @@ -2367,7 +2379,7 @@ export namespace sqladmin_v1 { */ consumerNetworkStatus?: string | null; /** - * Optional. This is the project ID of consumer service project of this consumer endpoint. Optional. This is only applicable if consumer_network is a shared vpc network. + * Optional. This is the project ID of consumer service project of this consumer endpoint. This is only applicable if `consumer_network` is a shared VPC network. */ consumerProject?: string | null; /** @@ -2395,10 +2407,18 @@ export namespace sqladmin_v1 { * Optional. The list of settings for requested Private Service Connect consumer endpoints that can be used to connect to this Cloud SQL instance. */ pscAutoConnections?: Schema$PscAutoConnectionConfig[]; + /** + * Optional. Indicates whether PSC DNS automation is enabled for this instance. When enabled, Cloud SQL provisions a universal DNS record across all networks configured with Private Service Connect (PSC) auto-connections. This will default to true for new instances when Private Service Connect is enabled. + */ + pscAutoDnsEnabled?: boolean | null; /** * Whether PSC connectivity is enabled for this instance. */ pscEnabled?: boolean | null; + /** + * Optional. Indicates whether PSC write endpoint DNS automation is enabled for this instance. When enabled, Cloud SQL provisions a universal global DNS record across all networks configured with Private Service Connect (PSC) auto-connections that always points to the cluster primary instance. This feature is only supported for Enterprise Plus edition. This will default to true for new Enterprise Plus instances when `psc_auto_dns_enabled` is enabled. + */ + pscWriteEndpointDnsEnabled?: boolean | null; } /** * QueryResult contains the result of executing a single SQL statement. @@ -7323,7 +7343,7 @@ export namespace sqladmin_v1 { * const res = await sql.instances.clone({ * // Required. The ID of the Cloud SQL instance to be cloned (source). This does not include the project ID. * instance: 'placeholder-value', - * // Required. Project ID of the source as well as the clone Cloud SQL instance. + * // Required. Project ID of the source Cloud SQL instance. * project: 'placeholder-value', * * // Request body metadata @@ -9896,7 +9916,10 @@ export namespace sqladmin_v1 { * // "preferredSecondaryZone": "my_preferredSecondaryZone", * // "preferredZone": "my_preferredZone", * // "privateNetwork": "my_privateNetwork", - * // "targetInstance": "my_targetInstance" + * // "region": "my_region", + * // "targetInstance": "my_targetInstance", + * // "targetInstanceClearSettingsFieldNames": [], + * // "targetInstanceSettings": {} * // } * }, * }); @@ -12605,7 +12628,7 @@ export namespace sqladmin_v1 { */ instance?: string; /** - * Required. Project ID of the source as well as the clone Cloud SQL instance. + * Required. Project ID of the source Cloud SQL instance. */ project?: string; diff --git a/src/apis/sqladmin/v1beta4.ts b/src/apis/sqladmin/v1beta4.ts index dcbfcb1a7df..3f5d9d581d2 100644 --- a/src/apis/sqladmin/v1beta4.ts +++ b/src/apis/sqladmin/v1beta4.ts @@ -2281,10 +2281,22 @@ export namespace sqladmin_v1beta4 { * Optional. The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, `/projects/myProject/global/networks/default`. */ privateNetwork?: string | null; + /** + * Optional. The region of the target instance where the datasource will be restored. For example: "us-central1". + */ + region?: string | null; /** * Target instance name. */ targetInstance?: string | null; + /** + * Optional. Specifies the instance settings that will be cleared from the source instance. This field is only applicable for cross project PITRs. + */ + targetInstanceClearSettingsFieldNames?: string[] | null; + /** + * Optional. Specifies the instance settings that will be overridden from the source instance. This field is only applicable for cross project PITRs. + */ + targetInstanceSettings?: Schema$DatabaseInstance; } /** * Details of a single read pool node of a read pool. @@ -2398,10 +2410,18 @@ export namespace sqladmin_v1beta4 { * Optional. The list of settings for requested Private Service Connect consumer endpoints that can be used to connect to this Cloud SQL instance. */ pscAutoConnections?: Schema$PscAutoConnectionConfig[]; + /** + * Optional. Indicates whether PSC DNS automation is enabled for this instance. When enabled, Cloud SQL provisions a universal DNS record across all networks configured with Private Service Connect (PSC) auto-connections. This will default to true for new instances when Private Service Connect is enabled. + */ + pscAutoDnsEnabled?: boolean | null; /** * Whether PSC connectivity is enabled for this instance. */ pscEnabled?: boolean | null; + /** + * Optional. Indicates whether PSC write endpoint DNS automation is enabled for this instance. When enabled, Cloud SQL provisions a universal global DNS record across all networks configured with Private Service Connect (PSC) auto-connections that always points to the cluster primary instance. This feature is only supported for Enterprise Plus edition. This will default to true for new enterprise plus instances when `psc_auto_dns_enabled` is enabled. + */ + pscWriteEndpointDnsEnabled?: boolean | null; } /** * QueryResult contains the result of executing a single SQL statement. @@ -7333,7 +7353,7 @@ export namespace sqladmin_v1beta4 { * const res = await sql.instances.clone({ * // The ID of the Cloud SQL instance to be cloned (source). This does not include the project ID. * instance: 'placeholder-value', - * // Project ID of the source as well as the clone Cloud SQL instance. + * // Project ID of the source Cloud SQL instance. * project: 'placeholder-value', * * // Request body metadata @@ -9910,7 +9930,10 @@ export namespace sqladmin_v1beta4 { * // "preferredSecondaryZone": "my_preferredSecondaryZone", * // "preferredZone": "my_preferredZone", * // "privateNetwork": "my_privateNetwork", - * // "targetInstance": "my_targetInstance" + * // "region": "my_region", + * // "targetInstance": "my_targetInstance", + * // "targetInstanceClearSettingsFieldNames": [], + * // "targetInstanceSettings": {} * // } * }, * }); @@ -12621,7 +12644,7 @@ export namespace sqladmin_v1beta4 { */ instance?: string; /** - * Project ID of the source as well as the clone Cloud SQL instance. + * Project ID of the source Cloud SQL instance. */ project?: string; diff --git a/src/apis/storage/v1.ts b/src/apis/storage/v1.ts index 1e95c6ced06..9f564956a11 100644 --- a/src/apis/storage/v1.ts +++ b/src/apis/storage/v1.ts @@ -176,6 +176,10 @@ export namespace storage_v1 { * The ID of the resource, including the project number, bucket name and anywhere cache ID. */ id?: string | null; + /** + * Specifies whether objects are ingested into the cache upon write. + */ + ingestOnWrite?: boolean | null; /** * The kind of item this is. For Anywhere Cache, this is always storage#anywhereCache. */ @@ -1462,6 +1466,7 @@ export namespace storage_v1 { * // "bucket": "my_bucket", * // "createTime": "my_createTime", * // "id": "my_id", + * // "ingestOnWrite": false, * // "kind": "my_kind", * // "pendingUpdate": false, * // "selfLink": "my_selfLink", @@ -1618,6 +1623,7 @@ export namespace storage_v1 { * // "bucket": "my_bucket", * // "createTime": "my_createTime", * // "id": "my_id", + * // "ingestOnWrite": false, * // "kind": "my_kind", * // "pendingUpdate": false, * // "selfLink": "my_selfLink", @@ -1770,6 +1776,7 @@ export namespace storage_v1 { * // "bucket": "my_bucket", * // "createTime": "my_createTime", * // "id": "my_id", + * // "ingestOnWrite": false, * // "kind": "my_kind", * // "pendingUpdate": false, * // "selfLink": "my_selfLink", @@ -2091,6 +2098,7 @@ export namespace storage_v1 { * // "bucket": "my_bucket", * // "createTime": "my_createTime", * // "id": "my_id", + * // "ingestOnWrite": false, * // "kind": "my_kind", * // "pendingUpdate": false, * // "selfLink": "my_selfLink", @@ -2245,6 +2253,7 @@ export namespace storage_v1 { * // "bucket": "my_bucket", * // "createTime": "my_createTime", * // "id": "my_id", + * // "ingestOnWrite": false, * // "kind": "my_kind", * // "pendingUpdate": false, * // "selfLink": "my_selfLink", @@ -2351,7 +2360,7 @@ export namespace storage_v1 { } /** - * Updates the config(ttl and admissionPolicy) of an Anywhere Cache instance. + * Updates the config of an Anywhere Cache instance. * @example * ```js * // Before running the sample: @@ -2399,6 +2408,7 @@ export namespace storage_v1 { * // "bucket": "my_bucket", * // "createTime": "my_createTime", * // "id": "my_id", + * // "ingestOnWrite": false, * // "kind": "my_kind", * // "pendingUpdate": false, * // "selfLink": "my_selfLink", diff --git a/src/apis/storagebatchoperations/v1.ts b/src/apis/storagebatchoperations/v1.ts index 694dc22e08b..b26426f382b 100644 --- a/src/apis/storagebatchoperations/v1.ts +++ b/src/apis/storagebatchoperations/v1.ts @@ -237,9 +237,21 @@ export namespace storagebatchoperations_v1 { */ export interface Schema$Counters { /** - * Output only. Number of objects failed. + * Output only. The number of objects that failed due to user errors or service errors. */ failedObjectCount?: string | null; + /** + * Output only. Number of object custom contexts created. This field is only populated for jobs with the UpdateObjectCustomContext transformation. + */ + objectCustomContextsCreated?: string | null; + /** + * Output only. Number of object custom contexts deleted. This field is only populated for jobs with the UpdateObjectCustomContext transformation. + */ + objectCustomContextsDeleted?: string | null; + /** + * Output only. Number of object custom contexts updated. This counter tracks custom contexts where the key already existed, but the payload was modified. This field is only populated for jobs with the UpdateObjectCustomContext transformation. + */ + objectCustomContextsUpdated?: string | null; /** * Output only. Number of objects completed. */ @@ -248,6 +260,10 @@ export namespace storagebatchoperations_v1 { * Output only. Number of bytes found from source. This field is only populated for jobs with a prefix list object configuration. */ totalBytesFound?: string | null; + /** + * Output only. The total number of bytes affected by the transformation. For example, this counts bytes deleted for `DeleteObject` operations and bytes rewritten for `RewriteObject` operations. + */ + totalBytesTransformed?: string | null; /** * Output only. Number of objects listed. */ @@ -829,7 +845,7 @@ export namespace storagebatchoperations_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -859,7 +875,7 @@ export namespace storagebatchoperations_v1 { * * // Do the magic * const res = await storagebatchoperations.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -986,7 +1002,7 @@ export namespace storagebatchoperations_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/sts/v1.ts b/src/apis/sts/v1.ts index 8f34004e348..d9e6337691d 100644 --- a/src/apis/sts/v1.ts +++ b/src/apis/sts/v1.ts @@ -231,7 +231,7 @@ export namespace sts_v1 { */ scope?: string | null; /** - * Required. The input token. This token is either an external credential issued by a workload identity pool provider, or a short-lived access token issued by Google. If the token is an OIDC JWT, it must use the JWT format defined in [RFC 7523](https://tools.ietf.org/html/rfc7523), and the `subject_token_type` must be either `urn:ietf:params:oauth:token-type:jwt` or `urn:ietf:params:oauth:token-type:id_token`. The following headers are required: - `kid`: The identifier of the signing key securing the JWT. - `alg`: The cryptographic algorithm securing the JWT. Must be `RS256` or `ES256`. The following payload fields are required. For more information, see [RFC 7523, Section 3](https://tools.ietf.org/html/rfc7523#section-3): - `iss`: The issuer of the token. The issuer must provide a discovery document at the URL `/.well-known/openid-configuration`, where `` is the value of this field. The document must be formatted according to section 4.2 of the [OIDC 1.0 Discovery specification](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfigurationResponse). - `iat`: The issue time, in seconds, since the Unix epoch. Must be in the past. - `exp`: The expiration time, in seconds, since the Unix epoch. Must be less than 48 hours after `iat`. Shorter expiration times are more secure. If possible, we recommend setting an expiration time less than 6 hours. - `sub`: The identity asserted in the JWT. - `aud`: For workload identity pools, this must be a value specified in the allowed audiences for the workload identity pool provider, or one of the audiences allowed by default if no audiences were specified. See https://cloud.google.com/iam/docs/reference/rest/v1/projects.locations.workloadIdentityPools.providers#oidc. For workforce pools, this must match the client ID specified in the provider configuration. See https://cloud.google.com/iam/docs/reference/rest/v1/locations.workforcePools.providers#oidc. Example header: ``` { "alg": "RS256", "kid": "us-east-11" \} ``` Example payload: ``` { "iss": "https://accounts.google.com", "iat": 1517963104, "exp": 1517966704, "aud": "//iam.googleapis.com/projects/1234567890123/locations/global/workloadIdentityPools/my-pool/providers/my-provider", "sub": "113475438248934895348", "my_claims": { "additional_claim": "value" \} \} ``` If `subject_token` is for AWS, it must be a serialized `GetCallerIdentity` token. This token contains the same information as a request to the AWS [`GetCallerIdentity()`](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetCallerIdentity) method, as well as the AWS [signature](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) for the request information. Use Signature Version 4. Format the request as URL-encoded JSON, and set the `subject_token_type` parameter to `urn:ietf:params:aws:token-type:aws4_request`. The following parameters are required: - `url`: The URL of the AWS STS endpoint for `GetCallerIdentity()`, such as `https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15`. Regional endpoints are also supported. - `method`: The HTTP request method: `POST`. - `headers`: The HTTP request headers, which must include: - `Authorization`: The request signature. - `x-amz-date`: The time you will send the request, formatted as an [ISO8601 Basic](https://docs.aws.amazon.com/general/latest/gr/sigv4_elements.html#sigv4_elements_date) string. This value is typically set to the current time and is used to help prevent replay attacks. - `host`: The hostname of the `url` field; for example, `sts.amazonaws.com`. - `x-goog-cloud-target-resource`: The full, canonical resource name of the workload identity pool provider, with or without an `https:` prefix. To help ensure data integrity, we recommend including this header in the `SignedHeaders` field of the signed request. For example: //iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ https://iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ If you are using temporary security credentials provided by AWS, you must also include the header `x-amz-security-token`, with the value set to the session token. The following example shows a `GetCallerIdentity` token: ``` { "headers": [ {"key": "x-amz-date", "value": "20200815T015049Z"\}, {"key": "Authorization", "value": "AWS4-HMAC-SHA256+Credential=$credential,+SignedHeaders=host;x-amz-date;x-goog-cloud-target-resource,+Signature=$signature"\}, {"key": "x-goog-cloud-target-resource", "value": "//iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/"\}, {"key": "host", "value": "sts.amazonaws.com"\} . ], "method": "POST", "url": "https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15" \} ``` If the token is a SAML 2.0 assertion, it must use the format defined in [the SAML 2.0 spec](https://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0-cd-02.pdf), and the `subject_token_type` must be `urn:ietf:params:oauth:token-type:saml2`. See [Verification of external credentials](https://cloud.google.com/iam/docs/using-workload-identity-federation#verification_of_external_credentials) for details on how SAML 2.0 assertions are validated during token exchanges. You can also use a Google-issued OAuth 2.0 access token with this field to obtain an access token with new security attributes applied, such as a Credential Access Boundary. In this case, set `subject_token_type` to `urn:ietf:params:oauth:token-type:access_token`. If an access token already contains security attributes, you cannot apply additional security attributes. If the request is for X.509 certificate-based authentication, the `subject_token` must be a JSON-formatted list of X.509 certificates in DER format, as defined in [RFC 7515](https://www.rfc-editor.org/rfc/rfc7515#section-4.1.6). `subject_token_type` must be `urn:ietf:params:oauth:token-type:mtls`. The following example shows a JSON-formatted list of X.509 certificate in DER format: ``` [\"MIIEYDCCA0i...\", \"MCIFFGAGTT0...\"] ``` + * Required. The input token. This token is either an external credential issued by a workload identity pool provider, or a short-lived access token issued by Google. If the token is an OIDC JWT, it must use the JWT format defined in [RFC 7523](https://tools.ietf.org/html/rfc7523), and the `subject_token_type` must be either `urn:ietf:params:oauth:token-type:jwt` or `urn:ietf:params:oauth:token-type:id_token`. The following headers are required: - `kid`: The identifier of the signing key securing the JWT. - `alg`: The cryptographic algorithm securing the JWT. Must be `RS256` or `ES256`. The following payload fields are required. For more information, see [RFC 7523, Section 3](https://tools.ietf.org/html/rfc7523#section-3): - `iss`: The issuer of the token. The issuer must provide a discovery document at the URL `/.well-known/openid-configuration`, where `` is the value of this field. The document must be formatted according to section 4.2 of the [OIDC 1.0 Discovery specification](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfigurationResponse). - `iat`: The issue time, in seconds, since the Unix epoch. This timestamp must be in the past and no more than 24 hours in the past, or the token will be rejected. Note that this implies the token is only acceptable within a time window of at most 24 hours. - `exp`: The expiration time, in seconds, since the Unix epoch. Shorter expiration times are more secure. If possible, we recommend setting an expiration time less than 6 hours. - `sub`: The identity asserted in the JWT. - `aud`: For workload identity pools, this must be a value specified in the allowed audiences for the workload identity pool provider, or one of the audiences allowed by default if no audiences were specified. See https://cloud.google.com/iam/docs/reference/rest/v1/projects.locations.workloadIdentityPools.providers#oidc. For workforce pools, this must match the client ID specified in the provider configuration. See https://cloud.google.com/iam/docs/reference/rest/v1/locations.workforcePools.providers#oidc. Example header: ``` { "alg": "RS256", "kid": "us-east-11" \} ``` Example payload: ``` { "iss": "https://accounts.google.com", "iat": 1517963104, "exp": 1517966704, "aud": "//iam.googleapis.com/projects/1234567890123/locations/global/workloadIdentityPools/my-pool/providers/my-provider", "sub": "113475438248934895348", "my_claims": { "additional_claim": "value" \} \} ``` If `subject_token` is for AWS, it must be a serialized `GetCallerIdentity` token. This token contains the same information as a request to the AWS [`GetCallerIdentity()`](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetCallerIdentity) method, as well as the AWS [signature](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) for the request information. Use Signature Version 4. Format the request as URL-encoded JSON, and set the `subject_token_type` parameter to `urn:ietf:params:aws:token-type:aws4_request`. The following parameters are required: - `url`: The URL of the AWS STS endpoint for `GetCallerIdentity()`, such as `https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15`. Regional endpoints are also supported. - `method`: The HTTP request method: `POST`. - `headers`: The HTTP request headers, which must include: - `Authorization`: The request signature. - `x-amz-date`: The time you will send the request, formatted as an [ISO8601 Basic](https://docs.aws.amazon.com/general/latest/gr/sigv4_elements.html#sigv4_elements_date) string. This value is typically set to the current time and is used to help prevent replay attacks. - `host`: The hostname of the `url` field; for example, `sts.amazonaws.com`. - `x-goog-cloud-target-resource`: The full, canonical resource name of the workload identity pool provider, with or without an `https:` prefix. To help ensure data integrity, we recommend including this header in the `SignedHeaders` field of the signed request. For example: //iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ https://iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ If you are using temporary security credentials provided by AWS, you must also include the header `x-amz-security-token`, with the value set to the session token. The following example shows a `GetCallerIdentity` token: ``` { "headers": [ {"key": "x-amz-date", "value": "20200815T015049Z"\}, {"key": "Authorization", "value": "AWS4-HMAC-SHA256+Credential=$credential,+SignedHeaders=host;x-amz-date;x-goog-cloud-target-resource,+Signature=$signature"\}, {"key": "x-goog-cloud-target-resource", "value": "//iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/"\}, {"key": "host", "value": "sts.amazonaws.com"\} . ], "method": "POST", "url": "https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15" \} ``` If the token is a SAML 2.0 assertion, it must use the format defined in [the SAML 2.0 spec](https://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0-cd-02.pdf), and the `subject_token_type` must be `urn:ietf:params:oauth:token-type:saml2`. See [Verification of external credentials](https://cloud.google.com/iam/docs/using-workload-identity-federation#verification_of_external_credentials) for details on how SAML 2.0 assertions are validated during token exchanges. You can also use a Google-issued OAuth 2.0 access token with this field to obtain an access token with new security attributes applied, such as a Credential Access Boundary. In this case, set `subject_token_type` to `urn:ietf:params:oauth:token-type:access_token`. If an access token already contains security attributes, you cannot apply additional security attributes. If the request is for X.509 certificate-based authentication, the `subject_token` must be a JSON-formatted list of X.509 certificates in DER format, as defined in [RFC 7515](https://www.rfc-editor.org/rfc/rfc7515#section-4.1.6). `subject_token_type` must be `urn:ietf:params:oauth:token-type:mtls`. The following example shows a JSON-formatted list of X.509 certificate in DER format: ``` [\"MIIEYDCCA0i...\", \"MCIFFGAGTT0...\"] ``` */ subjectToken?: string | null; /** @@ -273,7 +273,7 @@ export namespace sts_v1 { */ accessBoundary?: Schema$GoogleIdentityStsV1AccessBoundary; /** - * The unpadded, base64url-encoded SHA-256 hash of the certificate's DER encoding and it must be 43 characters long. The resulting token will be bound to this value. + * The unpadded, url-escaped, base64-encoded SHA-256 hash of the certificate's DER encoding. It must be 43 characters long. The resulting token will be bound to this value. */ bindCertFingerprint?: string | null; /** diff --git a/src/apis/sts/v1beta.ts b/src/apis/sts/v1beta.ts index 81179a7e372..78bd07f58e1 100644 --- a/src/apis/sts/v1beta.ts +++ b/src/apis/sts/v1beta.ts @@ -218,7 +218,7 @@ export namespace sts_v1beta { */ scope?: string | null; /** - * Required. The input token. This token is either an external credential issued by a workload identity pool provider, or a short-lived access token issued by Google. If the token is an OIDC JWT, it must use the JWT format defined in [RFC 7523](https://tools.ietf.org/html/rfc7523), and the `subject_token_type` must be either `urn:ietf:params:oauth:token-type:jwt` or `urn:ietf:params:oauth:token-type:id_token`. The following headers are required: - `kid`: The identifier of the signing key securing the JWT. - `alg`: The cryptographic algorithm securing the JWT. Must be `RS256` or `ES256`. The following payload fields are required. For more information, see [RFC 7523, Section 3](https://tools.ietf.org/html/rfc7523#section-3): - `iss`: The issuer of the token. The issuer must provide a discovery document at the URL `/.well-known/openid-configuration`, where `` is the value of this field. The document must be formatted according to section 4.2 of the [OIDC 1.0 Discovery specification](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfigurationResponse). - `iat`: The issue time, in seconds, since the Unix epoch. Must be in the past. - `exp`: The expiration time, in seconds, since the Unix epoch. Must be less than 48 hours after `iat`. Shorter expiration times are more secure. If possible, we recommend setting an expiration time less than 6 hours. - `sub`: The identity asserted in the JWT. - `aud`: For workload identity pools, this must be a value specified in the allowed audiences for the workload identity pool provider, or one of the audiences allowed by default if no audiences were specified. See https://cloud.google.com/iam/docs/reference/rest/v1/projects.locations.workloadIdentityPools.providers#oidc Example header: ``` { "alg": "RS256", "kid": "us-east-11" \} ``` Example payload: ``` { "iss": "https://accounts.google.com", "iat": 1517963104, "exp": 1517966704, "aud": "//iam.googleapis.com/projects/1234567890123/locations/global/workloadIdentityPools/my-pool/providers/my-provider", "sub": "113475438248934895348", "my_claims": { "additional_claim": "value" \} \} ``` If `subject_token` is for AWS, it must be a serialized `GetCallerIdentity` token. This token contains the same information as a request to the AWS [`GetCallerIdentity()`](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetCallerIdentity) method, as well as the AWS [signature](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) for the request information. Use Signature Version 4. Format the request as URL-encoded JSON, and set the `subject_token_type` parameter to `urn:ietf:params:aws:token-type:aws4_request`. The following parameters are required: - `url`: The URL of the AWS STS endpoint for `GetCallerIdentity()`, such as `https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15`. Regional endpoints are also supported. - `method`: The HTTP request method: `POST`. - `headers`: The HTTP request headers, which must include: - `Authorization`: The request signature. - `x-amz-date`: The time you will send the request, formatted as an [ISO8601 Basic](https://docs.aws.amazon.com/general/latest/gr/sigv4_elements.html#sigv4_elements_date) string. This value is typically set to the current time and is used to help prevent replay attacks. - `host`: The hostname of the `url` field; for example, `sts.amazonaws.com`. - `x-goog-cloud-target-resource`: The full, canonical resource name of the workload identity pool provider, with or without an `https:` prefix. To help ensure data integrity, we recommend including this header in the `SignedHeaders` field of the signed request. For example: //iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ https://iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ If you are using temporary security credentials provided by AWS, you must also include the header `x-amz-security-token`, with the value set to the session token. The following example shows a `GetCallerIdentity` token: ``` { "headers": [ {"key": "x-amz-date", "value": "20200815T015049Z"\}, {"key": "Authorization", "value": "AWS4-HMAC-SHA256+Credential=$credential,+SignedHeaders=host;x-amz-date;x-goog-cloud-target-resource,+Signature=$signature"\}, {"key": "x-goog-cloud-target-resource", "value": "//iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/"\}, {"key": "host", "value": "sts.amazonaws.com"\} . ], "method": "POST", "url": "https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15" \} ``` You can also use a Google-issued OAuth 2.0 access token with this field to obtain an access token with new security attributes applied, such as a Credential Access Boundary. In this case, set `subject_token_type` to `urn:ietf:params:oauth:token-type:access_token`. If an access token already contains security attributes, you cannot apply additional security attributes. + * Required. The input token. This token is either an external credential issued by a workload identity pool provider, or a short-lived access token issued by Google. If the token is an OIDC JWT, it must use the JWT format defined in [RFC 7523](https://tools.ietf.org/html/rfc7523), and the `subject_token_type` must be either `urn:ietf:params:oauth:token-type:jwt` or `urn:ietf:params:oauth:token-type:id_token`. The following headers are required: - `kid`: The identifier of the signing key securing the JWT. - `alg`: The cryptographic algorithm securing the JWT. Must be `RS256` or `ES256`. The following payload fields are required. For more information, see [RFC 7523, Section 3](https://tools.ietf.org/html/rfc7523#section-3): - `iss`: The issuer of the token. The issuer must provide a discovery document at the URL `/.well-known/openid-configuration`, where `` is the value of this field. The document must be formatted according to section 4.2 of the [OIDC 1.0 Discovery specification](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfigurationResponse). - `iat`: The issue time, in seconds, since the Unix epoch. This timestamp must be in the past and no more than 24 hours in the past, or the token will be rejected. Note that this implies the token is only acceptable within a time window of at most 24 hours. - `exp`: The expiration time, in seconds, since the Unix epoch. Shorter expiration times are more secure. If possible, we recommend setting an expiration time less than 6 hours. - `sub`: The identity asserted in the JWT. - `aud`: For workload identity pools, this must be a value specified in the allowed audiences for the workload identity pool provider, or one of the audiences allowed by default if no audiences were specified. See https://cloud.google.com/iam/docs/reference/rest/v1/projects.locations.workloadIdentityPools.providers#oidc Example header: ``` { "alg": "RS256", "kid": "us-east-11" \} ``` Example payload: ``` { "iss": "https://accounts.google.com", "iat": 1517963104, "exp": 1517966704, "aud": "//iam.googleapis.com/projects/1234567890123/locations/global/workloadIdentityPools/my-pool/providers/my-provider", "sub": "113475438248934895348", "my_claims": { "additional_claim": "value" \} \} ``` If `subject_token` is for AWS, it must be a serialized `GetCallerIdentity` token. This token contains the same information as a request to the AWS [`GetCallerIdentity()`](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetCallerIdentity) method, as well as the AWS [signature](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) for the request information. Use Signature Version 4. Format the request as URL-encoded JSON, and set the `subject_token_type` parameter to `urn:ietf:params:aws:token-type:aws4_request`. The following parameters are required: - `url`: The URL of the AWS STS endpoint for `GetCallerIdentity()`, such as `https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15`. Regional endpoints are also supported. - `method`: The HTTP request method: `POST`. - `headers`: The HTTP request headers, which must include: - `Authorization`: The request signature. - `x-amz-date`: The time you will send the request, formatted as an [ISO8601 Basic](https://docs.aws.amazon.com/general/latest/gr/sigv4_elements.html#sigv4_elements_date) string. This value is typically set to the current time and is used to help prevent replay attacks. - `host`: The hostname of the `url` field; for example, `sts.amazonaws.com`. - `x-goog-cloud-target-resource`: The full, canonical resource name of the workload identity pool provider, with or without an `https:` prefix. To help ensure data integrity, we recommend including this header in the `SignedHeaders` field of the signed request. For example: //iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ https://iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/ If you are using temporary security credentials provided by AWS, you must also include the header `x-amz-security-token`, with the value set to the session token. The following example shows a `GetCallerIdentity` token: ``` { "headers": [ {"key": "x-amz-date", "value": "20200815T015049Z"\}, {"key": "Authorization", "value": "AWS4-HMAC-SHA256+Credential=$credential,+SignedHeaders=host;x-amz-date;x-goog-cloud-target-resource,+Signature=$signature"\}, {"key": "x-goog-cloud-target-resource", "value": "//iam.googleapis.com/projects//locations/global/workloadIdentityPools//providers/"\}, {"key": "host", "value": "sts.amazonaws.com"\} . ], "method": "POST", "url": "https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15" \} ``` You can also use a Google-issued OAuth 2.0 access token with this field to obtain an access token with new security attributes applied, such as a Credential Access Boundary. In this case, set `subject_token_type` to `urn:ietf:params:oauth:token-type:access_token`. If an access token already contains security attributes, you cannot apply additional security attributes. */ subjectToken?: string | null; /** @@ -269,7 +269,7 @@ export namespace sts_v1beta { */ accessBoundary?: Schema$GoogleIdentityStsV1AccessBoundary; /** - * The unpadded, base64url-encoded SHA-256 hash of the certificate's DER encoding and it must be 43 characters long. The resulting token will be bound to this value. + * The unpadded, url-escaped, base64-encoded SHA-256 hash of the certificate's DER encoding. It must be 43 characters long. The resulting token will be bound to this value. */ bindCertFingerprint?: string | null; /** diff --git a/src/apis/tagmanager/v2.ts b/src/apis/tagmanager/v2.ts index 16842eea2f4..9c271718d91 100644 --- a/src/apis/tagmanager/v2.ts +++ b/src/apis/tagmanager/v2.ts @@ -1777,6 +1777,14 @@ export namespace tagmanager_v2 { * The value to convert if a variable value is null. */ convertNullToValue?: Schema$Parameter; + /** + * The option to convert a variable value to a boolean. + */ + convertToBoolean?: boolean | null; + /** + * The option to convert a variable value to a number. + */ + convertToNumber?: string | null; /** * The value to convert if a variable value is true. */ diff --git a/src/apis/texttospeech/v1.ts b/src/apis/texttospeech/v1.ts index 1b5940cd49c..8fa108e6011 100644 --- a/src/apis/texttospeech/v1.ts +++ b/src/apis/texttospeech/v1.ts @@ -143,9 +143,13 @@ export namespace texttospeech_v1 { */ lowLatencyJourneySynthesis?: boolean | null; /** - * Optional. Input only. If true, relaxes safety filters for Gemini TTS. Only supported for accounts linked to Invoiced (Offline) Cloud billing accounts. Otherwise, will return result google.rpc.Code.INVALID_ARGUMENT. + * Optional. Input only. Deprecated, use safety_settings instead. If true, relaxes safety filters for Gemini TTS. */ relaxSafetyFilters?: boolean | null; + /** + * Optional. Input only. This applies to Gemini TTS only. If set, the category specified in the safety setting will be blocked if the harm probability is above the threshold. Otherwise, the safety filter will be disabled by default. + */ + safetySettings?: Schema$SafetySettings; } /** * Description of audio data to be synthesized. @@ -322,6 +326,28 @@ export namespace texttospeech_v1 { */ response?: {[key: string]: any} | null; } + /** + * Safety setting for a single harm category. + */ + export interface Schema$SafetySetting { + /** + * The harm category to apply the safety setting to. + */ + category?: string | null; + /** + * The harm block threshold for the safety setting. + */ + threshold?: string | null; + } + /** + * Safety settings for the request. + */ + export interface Schema$SafetySettings { + /** + * The safety settings for the request. + */ + settings?: Schema$SafetySetting[]; + } /** * 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). */ diff --git a/src/apis/texttospeech/v1beta1.ts b/src/apis/texttospeech/v1beta1.ts index 3478188a559..be3d540cc78 100644 --- a/src/apis/texttospeech/v1beta1.ts +++ b/src/apis/texttospeech/v1beta1.ts @@ -141,9 +141,13 @@ export namespace texttospeech_v1beta1 { */ lowLatencyJourneySynthesis?: boolean | null; /** - * Optional. Input only. If true, relaxes safety filters for Gemini TTS. Only supported for accounts linked to Invoiced (Offline) Cloud billing accounts. Otherwise, will return result google.rpc.Code.INVALID_ARGUMENT. + * Optional. Input only. Deprecated, use safety_settings instead. If true, relaxes safety filters for Gemini TTS. */ relaxSafetyFilters?: boolean | null; + /** + * Optional. Input only. This applies to Gemini TTS only. If set, the category specified in the safety setting will be blocked if the harm probability is above the threshold. Otherwise, the safety filter will be disabled by default. + */ + safetySettings?: Schema$SafetySettings; } /** * Description of audio data to be synthesized. @@ -312,6 +316,28 @@ export namespace texttospeech_v1beta1 { */ response?: {[key: string]: any} | null; } + /** + * Safety setting for a single harm category. + */ + export interface Schema$SafetySetting { + /** + * The harm category to apply the safety setting to. + */ + category?: string | null; + /** + * The harm block threshold for the safety setting. + */ + threshold?: string | null; + } + /** + * Safety settings for the request. + */ + export interface Schema$SafetySettings { + /** + * The safety settings for the request. + */ + settings?: Schema$SafetySetting[]; + } /** * 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). */ diff --git a/src/apis/threatintelligence/v1beta.ts b/src/apis/threatintelligence/v1beta.ts index a2a27eecd9d..59d373b39e2 100644 --- a/src/apis/threatintelligence/v1beta.ts +++ b/src/apis/threatintelligence/v1beta.ts @@ -235,7 +235,7 @@ export namespace threatintelligence_v1beta { */ content?: string | null; /** - * Output only. The time the document was created. + * Output only. The timestamp of the original external publication of the document. */ createTime?: string | null; /** @@ -665,7 +665,7 @@ export namespace threatintelligence_v1beta { */ discoveryDocumentIds?: string[] | null; /** - * Required. Data Leak specific severity This will be the string representation of the DataLeakFindingDetail.Severityenum. (e.g., "LOW", "MEDIUM", "HIGH", "CRITICAL") + * Required. The severity of the Data Leak alert. Allowed values are: * `LOW` * `MEDIUM` * `HIGH` * `CRITICAL` */ severity?: string | null; } @@ -846,7 +846,7 @@ export namespace threatintelligence_v1beta { */ discoveryDocumentIds?: string[] | null; /** - * Required. IAB specific severity + * Required. The severity of the Initial Access Broker (IAB) alert. Allowed values are: * `LOW` * `MEDIUM` * `HIGH` * `CRITICAL` */ severity?: string | null; } @@ -876,7 +876,7 @@ export namespace threatintelligence_v1beta { */ discoveryDocumentIds?: string[] | null; /** - * Required. InsiderThreat specific severity This will be the string representation of the InsiderThreatFindingDetail.Severityenum. (e.g., "LOW", "MEDIUM", "HIGH", "CRITICAL") + * Required. The severity of the Insider Threat alert. Allowed values are: * `LOW` * `MEDIUM` * `HIGH` * `CRITICAL` */ severity?: string | null; } @@ -2263,13 +2263,13 @@ export namespace threatintelligence_v1beta { * * // Do the magic * const res = await threatintelligence.projects.alerts.list({ - * // Optional. Filter criteria. + * // Optional. Filter criteria. Supported fields for filtering include: * `audit.create_time` * `audit.creator` * `audit.update_time` * `audit.updater` * `detail.data_leak.discovery_document_ids` * `detail.data_leak.severity` * `detail.detail_type` * `detail.initial_access_broker.discovery_document_ids` * `detail.initial_access_broker.severity` * `detail.insider_threat.discovery_document_ids` * `detail.insider_threat.severity` * `finding_count` * `priority_analysis.priority_level` * `relevance_analysis.confidence` * `relevance_analysis.relevance_level` * `relevance_analysis.relevant` * `severity_analysis.severity_level` * `state` Examples: * `detail.detail_type = "initial_access_broker"` * `detail.detail_type != "data_leak"` * `detail.insider_threat.severity = "HIGH"` * `audit.create_time \>= "2026-04-03T00:00:00Z" AND audit.create_time < "2026-04-06T00:00:00Z"` * `state = "NEW" OR state = "TRIAGED"` * `severity_analysis.severity_level = "SEVERITY_LEVEL_CRITICAL"` * filter: 'placeholder-value', - * // Optional. Order by criteria in the csv format: "field1,field2 desc" or "field1,field2" or "field1 asc, field2". + * // Optional. Order by criteria in the csv format: "field1, field2 desc" or "field1, field2" or "field1 asc, field2". If a field is specified without `asc` or `desc`, ascending order is used by default. Supported fields for ordering are identical to those supported for filtering. Examples: * `audit.create_time desc` * `audit.update_time asc` * `audit.create_time desc, severity_analysis.severity_level desc` * orderBy: 'placeholder-value', - * // Optional. Page size. + * // Optional. Page size. Default to 100 alerts per page. Maximum is 1000 alerts per page. * pageSize: 'placeholder-value', - * // Optional. Page token. + * // Optional. Page token to retrieve the next page of results. * pageToken: 'placeholder-value', * // Required. Parent of the alerts. Format: projects/{project\} * parent: 'projects/my-project', @@ -3237,19 +3237,19 @@ export namespace threatintelligence_v1beta { } export interface Params$Resource$Projects$Alerts$List extends StandardParameters { /** - * Optional. Filter criteria. + * Optional. Filter criteria. Supported fields for filtering include: * `audit.create_time` * `audit.creator` * `audit.update_time` * `audit.updater` * `detail.data_leak.discovery_document_ids` * `detail.data_leak.severity` * `detail.detail_type` * `detail.initial_access_broker.discovery_document_ids` * `detail.initial_access_broker.severity` * `detail.insider_threat.discovery_document_ids` * `detail.insider_threat.severity` * `finding_count` * `priority_analysis.priority_level` * `relevance_analysis.confidence` * `relevance_analysis.relevance_level` * `relevance_analysis.relevant` * `severity_analysis.severity_level` * `state` Examples: * `detail.detail_type = "initial_access_broker"` * `detail.detail_type != "data_leak"` * `detail.insider_threat.severity = "HIGH"` * `audit.create_time \>= "2026-04-03T00:00:00Z" AND audit.create_time < "2026-04-06T00:00:00Z"` * `state = "NEW" OR state = "TRIAGED"` * `severity_analysis.severity_level = "SEVERITY_LEVEL_CRITICAL"` */ filter?: string; /** - * Optional. Order by criteria in the csv format: "field1,field2 desc" or "field1,field2" or "field1 asc, field2". + * Optional. Order by criteria in the csv format: "field1, field2 desc" or "field1, field2" or "field1 asc, field2". If a field is specified without `asc` or `desc`, ascending order is used by default. Supported fields for ordering are identical to those supported for filtering. Examples: * `audit.create_time desc` * `audit.update_time asc` * `audit.create_time desc, severity_analysis.severity_level desc` */ orderBy?: string; /** - * Optional. Page size. + * Optional. Page size. Default to 100 alerts per page. Maximum is 1000 alerts per page. */ pageSize?: number; /** - * Optional. Page token. + * Optional. Page token to retrieve the next page of results. */ pageToken?: string; /** diff --git a/src/apis/toolresults/v1beta3.ts b/src/apis/toolresults/v1beta3.ts index 5d19f9c0111..28a92956ec6 100644 --- a/src/apis/toolresults/v1beta3.ts +++ b/src/apis/toolresults/v1beta3.ts @@ -500,7 +500,7 @@ export namespace toolresults_v1beta3 { */ export interface Schema$FileReference { /** - * The URI of a file stored in Google Cloud Storage. For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs://mybucket/path/to/test.xml#1360383693690000 An INVALID_ARGUMENT error will be returned if the URI format is not supported. - In response: always set - In create/update request: always set + * The URI of a file stored in Google Cloud Storage. For example: `http://storage.googleapis.com/mybucket/path/to/test.xml` or in Cloud Storage URI format: `gs://mybucket/path/to/test.xml` with version-specific info, `gs://mybucket/path/to/test.xml#1360383693690000` An INVALID_ARGUMENT error will be returned if the URI format is not supported. - In response: always set - In create/update request: always set */ fileUri?: string | null; } @@ -1293,6 +1293,10 @@ export namespace toolresults_v1beta3 { * If the requested OS version doesn't run on the specific device model. */ incompatibleDevice?: boolean | null; + /** + * Indicates that the test could not be scheduled in the requested time because no suitable device was available. + */ + pendingTimeout?: boolean | null; } /** * The details about how to run the execution. @@ -1930,7 +1934,7 @@ export namespace toolresults_v1beta3 { } /** - * Creates resources for settings which have not yet been set. Currently, this creates a single resource: a Google Cloud Storage bucket, to be used as the default bucket for this project. The bucket is created in an FTL-own storage project. Except for in rare cases, calling this method in parallel from multiple clients will only create a single bucket. In order to avoid unnecessary storage charges, the bucket is configured to automatically delete objects older than 90 days. The bucket is created with the following permissions: - Owner access for owners of central storage project (FTL-owned) - Writer access for owners/editors of customer project - Reader access for viewers of customer project The default ACL on objects created in the bucket is: - Owner access for owners of central storage project - Reader access for owners/editors/viewers of customer project See Google Cloud Storage documentation for more details. If there is already a default bucket set and the project can access the bucket, this call does nothing. However, if the project doesn't have the permission to access the bucket or the bucket is deleted, a new bucket will be created. May return any canonical error codes, including the following: - PERMISSION_DENIED - if the user is not authorized to write to project - Any error code raised by Google Cloud Storage + * Creates resources for settings which have not yet been set. Currently, this creates a single resource: a Google Cloud Storage bucket, to be used as the default bucket for this project. The bucket is created in an FTL-own storage project. Except for in rare cases, calling this method in parallel from multiple clients will only create a single bucket. In order to avoid unnecessary storage charges, the bucket is configured to automatically delete objects older than 60 days. The bucket is created with the following permissions: - Owner access for owners of central storage project (FTL-owned) - Writer access for owners/editors of customer project - Reader access for viewers of customer project The default ACL on objects created in the bucket is: - Owner access for owners of central storage project - Reader access for owners/editors/viewers of customer project See Google Cloud Storage documentation for more details. If there is already a default bucket set and the project can access the bucket, this call does nothing. However, if the project doesn't have the permission to access the bucket or the bucket is deleted, a new bucket will be created. May return any canonical error codes, including the following: - PERMISSION_DENIED - if the user is not authorized to write to project - Any error code raised by Google Cloud Storage * @example * ```js * // Before running the sample: diff --git a/src/apis/travelimpactmodel/v1.ts b/src/apis/travelimpactmodel/v1.ts index 0dcedeb4dc1..600e5d131d5 100644 --- a/src/apis/travelimpactmodel/v1.ts +++ b/src/apis/travelimpactmodel/v1.ts @@ -295,7 +295,7 @@ export namespace travelimpactmodel_v1 { */ emissionsGramsPerPax?: Schema$EmissionsGramsPerPax; /** - * Required. Matches the flight identifiers in the request. Note: all IATA codes are capitalized. + * Identifier. Matches the flight identifiers in the request. Note: all IATA codes are capitalized. */ flight?: Schema$Flight; /** @@ -316,28 +316,6 @@ export namespace travelimpactmodel_v1 { */ origin?: string | null; } - /** - * Profile describing the data handling characteristics of an MCP tool. When used within the McpTool.meta field, this message should be packed into a google.protobuf.Any and associated with the key: "google.com/tool.profiles/data_handling" - */ - export interface Schema$McpToolDataHandlingProfile { - /** - * // The data access level of the tool's inputs. - */ - inputDataAccessLevel?: string | null; - /** - * The data access level of the tool's outputs. - */ - outputDataAccessLevel?: string | null; - } - /** - * Profile describing the lifecycle stage of an MCP tool. When used within the McpTool.meta field, this message should be packed into a google.protobuf.Any and associated with the key: "google.com/tool.profiles/lifecycle" - */ - export interface Schema$McpToolLifecycleProfile { - /** - * Output only. The current launch state of the MCP tool. - */ - launchState?: string | null; - } /** * Travel Impact Model version. For more information about the model versioning see [GitHub](https://github.com/google/travel-impact-model/#versioning). */ @@ -364,7 +342,7 @@ export namespace travelimpactmodel_v1 { */ export interface Schema$Scope3FlightEmissions { /** - * Required. Matches the flight identifiers in the request. + * Identifier. Matches the flight identifiers in the request. */ flight?: Schema$Scope3FlightSegment; /** @@ -426,7 +404,7 @@ export namespace travelimpactmodel_v1 { */ emissionsGramsPerPax?: Schema$EmissionsGramsPerPax; /** - * Required. Matches the flight identifiers in the request. Note: all IATA codes are capitalized. + * Identifier. Matches the flight identifiers in the request. Note: all IATA codes are capitalized. */ market?: Schema$Market; } diff --git a/src/apis/videointelligence/v1.ts b/src/apis/videointelligence/v1.ts index 1eefed5bfe5..ec4bc838e90 100644 --- a/src/apis/videointelligence/v1.ts +++ b/src/apis/videointelligence/v1.ts @@ -708,6 +708,10 @@ export namespace videointelligence_v1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -1301,6 +1305,10 @@ export namespace videointelligence_v1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -1894,6 +1902,10 @@ export namespace videointelligence_v1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -2589,6 +2601,10 @@ export namespace videointelligence_v1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -3090,6 +3106,10 @@ export namespace videointelligence_v1 { * Config for SPEECH_TRANSCRIPTION. */ export interface Schema$GoogleCloudVideointelligenceV1_SpeechTranscriptionConfig { + /** + * Optional. Legacy field. This field must be a Cloud Storage URI prefix. (e.g., `gs://bucket/path/`). + */ + audioOutputUriPrefix?: string | null; /** * Optional. For file formats, such as MXF or MKV, supporting multiple audio tracks, specify up to two tracks. Default: track 0. */ @@ -3401,6 +3421,10 @@ export namespace videointelligence_v1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -3430,6 +3454,10 @@ export namespace videointelligence_v1 { * A list of operations that matches the specified filter in the request. */ operations?: Schema$GoogleLongrunning_Operation[]; + /** + * Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations. + */ + unreachable?: string[] | null; } /** * This resource represents a long-running operation that is the result of a network API call. @@ -4445,13 +4473,16 @@ export namespace videointelligence_v1 { * pageSize: 'placeholder-value', * // The standard list page token. * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "operations": [] + * // "operations": [], + * // "unreachable": [] * // } * } * @@ -4602,6 +4633,10 @@ export namespace videointelligence_v1 { * The standard list page token. */ pageToken?: string; + /** + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + */ + returnPartialSuccess?: boolean; } export class Resource$Videos { diff --git a/src/apis/videointelligence/v1beta2.ts b/src/apis/videointelligence/v1beta2.ts index e44ac6213d3..831c7820c00 100644 --- a/src/apis/videointelligence/v1beta2.ts +++ b/src/apis/videointelligence/v1beta2.ts @@ -612,6 +612,10 @@ export namespace videointelligence_v1beta2 { * Config for SPEECH_TRANSCRIPTION. */ export interface Schema$GoogleCloudVideointelligenceV1beta2_SpeechTranscriptionConfig { + /** + * Optional. Legacy field. This field must be a Cloud Storage URI prefix. (e.g., `gs://bucket/path/`). + */ + audioOutputUriPrefix?: string | null; /** * Optional. For file formats, such as MXF or MKV, supporting multiple audio tracks, specify up to two tracks. Default: track 0. */ @@ -923,6 +927,10 @@ export namespace videointelligence_v1beta2 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -1516,6 +1524,10 @@ export namespace videointelligence_v1beta2 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -2109,6 +2121,10 @@ export namespace videointelligence_v1beta2 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -2804,6 +2820,10 @@ export namespace videointelligence_v1beta2 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -3397,6 +3417,10 @@ export namespace videointelligence_v1beta2 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ diff --git a/src/apis/videointelligence/v1p1beta1.ts b/src/apis/videointelligence/v1p1beta1.ts index ca9d56172fd..b5c7c1fa6d2 100644 --- a/src/apis/videointelligence/v1p1beta1.ts +++ b/src/apis/videointelligence/v1p1beta1.ts @@ -704,6 +704,10 @@ export namespace videointelligence_v1p1beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -1205,6 +1209,10 @@ export namespace videointelligence_v1p1beta1 { * Config for SPEECH_TRANSCRIPTION. */ export interface Schema$GoogleCloudVideointelligenceV1p1beta1_SpeechTranscriptionConfig { + /** + * Optional. Legacy field. This field must be a Cloud Storage URI prefix. (e.g., `gs://bucket/path/`). + */ + audioOutputUriPrefix?: string | null; /** * Optional. For file formats, such as MXF or MKV, supporting multiple audio tracks, specify up to two tracks. Default: track 0. */ @@ -1516,6 +1524,10 @@ export namespace videointelligence_v1p1beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -2109,6 +2121,10 @@ export namespace videointelligence_v1p1beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -2804,6 +2820,10 @@ export namespace videointelligence_v1p1beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -3397,6 +3417,10 @@ export namespace videointelligence_v1p1beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ diff --git a/src/apis/videointelligence/v1p2beta1.ts b/src/apis/videointelligence/v1p2beta1.ts index 3c8a4e5dc48..ffbadba86ae 100644 --- a/src/apis/videointelligence/v1p2beta1.ts +++ b/src/apis/videointelligence/v1p2beta1.ts @@ -704,6 +704,10 @@ export namespace videointelligence_v1p2beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -1297,6 +1301,10 @@ export namespace videointelligence_v1p2beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -1798,6 +1806,10 @@ export namespace videointelligence_v1p2beta1 { * Config for SPEECH_TRANSCRIPTION. */ export interface Schema$GoogleCloudVideointelligenceV1p2beta1_SpeechTranscriptionConfig { + /** + * Optional. Legacy field. This field must be a Cloud Storage URI prefix. (e.g., `gs://bucket/path/`). + */ + audioOutputUriPrefix?: string | null; /** * Optional. For file formats, such as MXF or MKV, supporting multiple audio tracks, specify up to two tracks. Default: track 0. */ @@ -2109,6 +2121,10 @@ export namespace videointelligence_v1p2beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -2804,6 +2820,10 @@ export namespace videointelligence_v1p2beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -3397,6 +3417,10 @@ export namespace videointelligence_v1p2beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ diff --git a/src/apis/videointelligence/v1p3beta1.ts b/src/apis/videointelligence/v1p3beta1.ts index 54344d26b5a..e630bae0c95 100644 --- a/src/apis/videointelligence/v1p3beta1.ts +++ b/src/apis/videointelligence/v1p3beta1.ts @@ -704,6 +704,10 @@ export namespace videointelligence_v1p3beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -1297,6 +1301,10 @@ export namespace videointelligence_v1p3beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -1890,6 +1898,10 @@ export namespace videointelligence_v1p3beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -2447,6 +2459,10 @@ export namespace videointelligence_v1p3beta1 { * Config for SPEECH_TRANSCRIPTION. */ export interface Schema$GoogleCloudVideointelligenceV1p3beta1_SpeechTranscriptionConfig { + /** + * Optional. Legacy field. This field must be a Cloud Storage URI prefix. (e.g., `gs://bucket/path/`). + */ + audioOutputUriPrefix?: string | null; /** * Optional. For file formats, such as MXF or MKV, supporting multiple audio tracks, specify up to two tracks. Default: track 0. */ @@ -2804,6 +2820,10 @@ export namespace videointelligence_v1p3beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ @@ -3397,6 +3417,10 @@ export namespace videointelligence_v1p3beta1 { * Time offset relative to the beginning of the audio, and corresponding to the end of the spoken word. This field is only set if `enable_word_time_offsets=true` and only in the top hypothesis. This is an experimental feature and the accuracy of the time offset can vary. */ endTime?: string | null; + /** + * Output only. A distinct string value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. + */ + speakerLabel?: string | null; /** * Output only. A distinct integer value is assigned for every speaker within the audio. This field specifies which one of those speakers was detected to have spoken this word. Value ranges from 1 up to diarization_speaker_count, and is only set if speaker diarization is enabled. */ diff --git a/src/apis/vmmigration/v1.ts b/src/apis/vmmigration/v1.ts index 503aabaa2fa..7792ec74d5c 100644 --- a/src/apis/vmmigration/v1.ts +++ b/src/apis/vmmigration/v1.ts @@ -3092,7 +3092,7 @@ export namespace vmmigration_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3122,7 +3122,7 @@ export namespace vmmigration_v1 { * * // Do the magic * const res = await vmmigration.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3248,7 +3248,7 @@ export namespace vmmigration_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/vmmigration/v1alpha1.ts b/src/apis/vmmigration/v1alpha1.ts index 88e3f5cc62f..ec4b93cd547 100644 --- a/src/apis/vmmigration/v1alpha1.ts +++ b/src/apis/vmmigration/v1alpha1.ts @@ -3258,7 +3258,7 @@ export namespace vmmigration_v1alpha1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -3288,7 +3288,7 @@ export namespace vmmigration_v1alpha1 { * * // Do the magic * const res = await vmmigration.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -3414,7 +3414,7 @@ export namespace vmmigration_v1alpha1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/vmwareengine/v1.ts b/src/apis/vmwareengine/v1.ts index 89fe04bdfad..2fcd0384025 100644 --- a/src/apis/vmwareengine/v1.ts +++ b/src/apis/vmwareengine/v1.ts @@ -1216,6 +1216,10 @@ export namespace vmwareengine_v1 { * Optional. 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean | null; } /** * Network configuration in the consumer project with which the peering has to be done. @@ -1989,6 +1993,10 @@ export namespace vmwareengine_v1 { * Optional. 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean | null; } /** * Describes Private cloud Upgrade. @@ -2491,7 +2499,7 @@ export namespace vmwareengine_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -4225,6 +4233,8 @@ export namespace vmwareengine_v1 { * parent: 'projects/my-project/locations/my-location', * // Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -4835,6 +4845,8 @@ export namespace vmwareengine_v1 { * requestId: 'placeholder-value', * // Required. Field mask is used to specify the fields to be overwritten in the `NetworkPeering` 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: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -4977,6 +4989,10 @@ export namespace vmwareengine_v1 { * Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Request body metadata @@ -5034,6 +5050,10 @@ export namespace vmwareengine_v1 { * Required. Field mask is used to specify the fields to be overwritten in the `NetworkPeering` 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Request body metadata @@ -5266,6 +5286,8 @@ export namespace vmwareengine_v1 { * parent: 'projects/my-project/locations/my-location', * // Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -6020,6 +6042,8 @@ export namespace vmwareengine_v1 { * requestId: 'placeholder-value', * // Required. Field mask is used to specify the fields to be overwritten in the `NetworkPolicy` 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: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -6156,6 +6180,10 @@ export namespace vmwareengine_v1 { * Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Request body metadata @@ -6227,6 +6255,10 @@ export namespace vmwareengine_v1 { * Required. Field mask is used to specify the fields to be overwritten in the `NetworkPolicy` 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Request body metadata @@ -6280,6 +6312,8 @@ export namespace vmwareengine_v1 { * 'projects/my-project/locations/my-location/networkPolicies/my-networkPolicie', * // A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 the 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: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -6901,6 +6935,8 @@ export namespace vmwareengine_v1 { * requestId: 'placeholder-value', * // Required. Field mask is used to specify the fields to be overwritten in the `ExternalAccessRule` 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: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the// request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -7042,6 +7078,10 @@ export namespace vmwareengine_v1 { * A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 the 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Request body metadata @@ -7099,6 +7139,10 @@ export namespace vmwareengine_v1 { * Required. Field mask is used to specify the fields to be overwritten in the `ExternalAccessRule` 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 to `true`, only validates the request but doesn’t execute the// request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Request body metadata @@ -7965,7 +8009,7 @@ export namespace vmwareengine_v1 { * privateCloudId: 'placeholder-value', * // Optional. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Optional. True if you want the request to be validated and not executed; false otherwise. + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. * validateOnly: 'placeholder-value', * * // Request body metadata @@ -8860,6 +8904,8 @@ export namespace vmwareengine_v1 { * requestId: 'placeholder-value', * // Required. Field mask is used to specify the fields to be overwritten in the `PrivateCloud` resource by the update. The fields specified in `updateMask` 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: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -10360,7 +10406,7 @@ export namespace vmwareengine_v1 { */ requestId?: string; /** - * Optional. True if you want the request to be validated and not executed; false otherwise. + * Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. */ validateOnly?: boolean; @@ -10444,6 +10490,10 @@ export namespace vmwareengine_v1 { * Required. Field mask is used to specify the fields to be overwritten in the `PrivateCloud` resource by the update. The fields specified in `updateMask` 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Request body metadata @@ -10601,7 +10651,7 @@ export namespace vmwareengine_v1 { * 'projects/my-project/locations/my-location/privateClouds/my-privateCloud', * // Optional. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Optional. True if you want the request to be validated and not executed; false otherwise. + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. * validateOnly: 'placeholder-value', * * // Request body metadata @@ -11355,7 +11405,8 @@ export namespace vmwareengine_v1 { * // { * // "datastoreMountConfig": {}, * // "ignoreColocation": false, - * // "requestId": "my_requestId" + * // "requestId": "my_requestId", + * // "validateOnly": false * // } * }, * }, @@ -11506,7 +11557,7 @@ export namespace vmwareengine_v1 { * requestId: 'placeholder-value', * // Required. Field mask is used to specify the fields to be overwritten in the `Cluster` resource by the update. The fields specified in the `updateMask` 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: 'placeholder-value', - * // Optional. True if you want the request to be validated and not executed; false otherwise. + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. * validateOnly: 'placeholder-value', * * // Request body metadata @@ -11978,7 +12029,8 @@ export namespace vmwareengine_v1 { * // request body parameters * // { * // "datastore": "my_datastore", - * // "requestId": "my_requestId" + * // "requestId": "my_requestId", + * // "validateOnly": false * // } * }, * }, @@ -12106,7 +12158,7 @@ export namespace vmwareengine_v1 { */ requestId?: string; /** - * Optional. True if you want the request to be validated and not executed; false otherwise. + * Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. */ validateOnly?: boolean; @@ -12188,7 +12240,7 @@ export namespace vmwareengine_v1 { */ updateMask?: string; /** - * Optional. True if you want the request to be validated and not executed; false otherwise. + * Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. */ validateOnly?: boolean; @@ -12592,6 +12644,8 @@ export namespace vmwareengine_v1 { * 'projects/my-project/locations/my-location/privateClouds/my-privateCloud', * // Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 the 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: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -13199,6 +13253,8 @@ export namespace vmwareengine_v1 { * requestId: 'placeholder-value', * // Required. Field mask is used to specify the fields to be overwritten in the `ExternalAddress` 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: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -13335,6 +13391,10 @@ export namespace vmwareengine_v1 { * Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 the 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Request body metadata @@ -13392,6 +13452,10 @@ export namespace vmwareengine_v1 { * Required. Field mask is used to specify the fields to be overwritten in the `ExternalAddress` 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Request body metadata @@ -17311,6 +17375,8 @@ export namespace vmwareengine_v1 { * privateConnectionId: 'placeholder-value', * // Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -17919,6 +17985,8 @@ export namespace vmwareengine_v1 { * requestId: 'placeholder-value', * // Required. Field mask is used to specify the fields to be overwritten in the `PrivateConnection` 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: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -18059,6 +18127,10 @@ export namespace vmwareengine_v1 { * Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Request body metadata @@ -18116,6 +18188,10 @@ export namespace vmwareengine_v1 { * Required. Field mask is used to specify the fields to be overwritten in the `PrivateConnection` 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Request body metadata @@ -18344,6 +18420,8 @@ export namespace vmwareengine_v1 { * parent: 'projects/my-project/locations/my-location', * // Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * // Required. The user-provided identifier of the new VMware Engine network. This identifier must be unique among VMware Engine network resources within the parent and becomes the final token in the name URI. The identifier must meet the following requirements: * For networks of type LEGACY, adheres to the format: `{region-id\}-default`. Replace `{region-id\}` with the region where you want to create the VMware Engine network. For example, "us-central1-default". * Only contains 1-63 alphanumeric characters and hyphens * Begins with an alphabetical character * Ends with a non-hyphen character * Not formatted as a UUID * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) * vmwareEngineNetworkId: 'placeholder-value', * @@ -18955,6 +19033,8 @@ export namespace vmwareengine_v1 { * requestId: 'placeholder-value', * // Required. Field mask is used to specify the fields to be overwritten in the VMware Engine network 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. Only the following fields can be updated: `description`. * updateMask: 'placeholder-value', + * // Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -19087,6 +19167,10 @@ export namespace vmwareengine_v1 { * Optional. A 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 guarantees that a request doesn't result in creation of duplicate commitments for at least 60 minutes. 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 to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Required. The user-provided identifier of the new VMware Engine network. This identifier must be unique among VMware Engine network resources within the parent and becomes the final token in the name URI. The identifier must meet the following requirements: * For networks of type LEGACY, adheres to the format: `{region-id\}-default`. Replace `{region-id\}` with the region where you want to create the VMware Engine network. For example, "us-central1-default". * Only contains 1-63 alphanumeric characters and hyphens * Begins with an alphabetical character * Ends with a non-hyphen character * Not formatted as a UUID * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) */ @@ -19152,6 +19236,10 @@ export namespace vmwareengine_v1 { * Required. Field mask is used to specify the fields to be overwritten in the VMware Engine network 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. Only the following fields can be updated: `description`. */ updateMask?: string; + /** + * Optional. If set to `true`, only validates the request but doesn’t execute the request. If set to `false`, validates and executes the request. + */ + validateOnly?: boolean; /** * Request body metadata diff --git a/src/apis/vpcaccess/v1.ts b/src/apis/vpcaccess/v1.ts index df3c24b5024..08a3595d41b 100644 --- a/src/apis/vpcaccess/v1.ts +++ b/src/apis/vpcaccess/v1.ts @@ -384,7 +384,7 @@ export namespace vpcaccess_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/vpcaccess/v1beta1.ts b/src/apis/vpcaccess/v1beta1.ts index b4ac0c69932..f2b3ac6115d 100644 --- a/src/apis/vpcaccess/v1beta1.ts +++ b/src/apis/vpcaccess/v1beta1.ts @@ -392,7 +392,7 @@ export namespace vpcaccess_v1beta1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: diff --git a/src/apis/walletobjects/v1.ts b/src/apis/walletobjects/v1.ts index a05b5079d80..45dec8f20bb 100644 --- a/src/apis/walletobjects/v1.ts +++ b/src/apis/walletobjects/v1.ts @@ -539,6 +539,10 @@ export namespace walletobjects_v1 { * The content type of the file derived from the file extension of the original file name used by the client. */ fromFileName?: string | null; + /** + * The content type of the file detected by Fusion ID. go/fusionid + */ + fromFusionId?: string | null; /** * The content type of the file as specified in the request headers, multipart headers, or RUPIO start request. */ @@ -547,6 +551,10 @@ export namespace walletobjects_v1 { * The content type of the file derived from the file extension of the URL path. The URL path is assumed to represent a file name (which is typically only true for agents that are providing a REST API). */ fromUrlPath?: string | null; + /** + * Metadata information from Fusion ID detection. Serialized FusionIdDetectionMetadata proto. Only set if from_fusion_id is set. + */ + fusionIdDetectionMetadata?: string | null; } export interface Schema$DateTime { /** diff --git a/src/apis/workflows/v1.ts b/src/apis/workflows/v1.ts index 44cf065d62f..fe21701abc7 100644 --- a/src/apis/workflows/v1.ts +++ b/src/apis/workflows/v1.ts @@ -535,7 +535,7 @@ export namespace workflows_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -565,7 +565,7 @@ export namespace workflows_v1 { * * // Do the magic * const res = await workflows.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -691,7 +691,7 @@ export namespace workflows_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/workflows/v1beta.ts b/src/apis/workflows/v1beta.ts index ee62b3ff593..84887729158 100644 --- a/src/apis/workflows/v1beta.ts +++ b/src/apis/workflows/v1beta.ts @@ -473,7 +473,7 @@ export namespace workflows_v1beta { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -503,7 +503,7 @@ export namespace workflows_v1beta { * * // Do the magic * const res = await workflows.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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: 'placeholder-value', @@ -629,7 +629,7 @@ export namespace workflows_v1beta { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/workloadmanager/README.md b/src/apis/workloadmanager/README.md index 49e53836098..ab071c11c9a 100644 --- a/src/apis/workloadmanager/README.md +++ b/src/apis/workloadmanager/README.md @@ -4,6 +4,15 @@ > Workload Manager is a service that provides tooling for enterprise workloads to automate the deployment and validation of your workloads against best practices and recommendations. +## 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/workloadmanager](https://www.npmjs.com/package/@google-cloud/workloadmanager) instead. +The [@google-cloud/workloadmanager](https://www.npmjs.com/package/@google-cloud/workloadmanager) 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 diff --git a/src/apis/workloadmanager/v1.ts b/src/apis/workloadmanager/v1.ts index c9ad2a65be8..e9ee4eedfae 100644 --- a/src/apis/workloadmanager/v1.ts +++ b/src/apis/workloadmanager/v1.ts @@ -224,15 +224,15 @@ export namespace workloadmanager_v1 { terraformTemplate?: string | null; } /** - * * An AgentCommand specifies a one-time executable program for the agent to run. + * An AgentCommand specifies a one-time executable program for the agent to run. */ export interface Schema$AgentCommand { /** - * command is the name of the agent one-time executable that will be invoked. + * The name of the agent one-time executable that will be invoked. */ command?: string | null; /** - * parameters is a map of key/value pairs that can be used to specify additional one-time executable settings. + * A map of key/value pairs that can be used to specify additional one-time executable settings. */ parameters?: {[key: string]: string} | null; } @@ -481,15 +481,15 @@ export namespace workloadmanager_v1 { latestBackupTime?: string | null; } /** - * Message describing big query destination + * BigQuery destination for evaluation results. */ export interface Schema$BigQueryDestination { /** - * Optional. determine if results will be saved in a new table + * Optional. Determines if a new results table will be created when an Execution is created. */ createNewResultsTable?: boolean | null; /** - * Optional. destination dataset to save evaluation results + * Optional. Destination dataset to save evaluation results. */ destinationDataset?: string | null; } @@ -515,7 +515,7 @@ export namespace workloadmanager_v1 { name?: string | null; } /** - * * Command specifies the type of command to execute. + * Command specifies the type of command to execute. */ export interface Schema$Command { /** @@ -722,15 +722,15 @@ export namespace workloadmanager_v1 { */ export interface Schema$Empty {} /** - * Message describing Evaluation object + * Represents a Workload Manager Evaluation configuration. An Evaluation defines a set of rules to be validated against a scope of Cloud resources. */ export interface Schema$Evaluation { /** - * Optional. BigQuery destination + * Optional. The BigQuery destination for detailed evaluation results. If this field is specified, the results of each evaluation execution are exported to BigQuery. */ bigQueryDestination?: Schema$BigQueryDestination; /** - * Output only. [Output only] Create time stamp + * Output only. [Output only] Create time stamp. */ createTime?: string | null; /** @@ -738,109 +738,105 @@ export namespace workloadmanager_v1 { */ customRulesBucket?: string | null; /** - * Description of the Evaluation + * Description of the Evaluation. */ description?: string | null; /** - * Evaluation type + * Evaluation type. */ evaluationType?: string | null; /** - * Optional. Immutable. Customer-managed encryption key name, in the format projects/x/locations/x/keyRings/x/cryptoKeys/x. + * Optional. Immutable. Customer-managed encryption key name, in the format projects/x/locations/x/keyRings/x/cryptoKeys/x. The key will be used for CMEK encryption of the evaluation resource. */ kmsKey?: string | null; /** - * Labels as key value pairs + * Labels as key value pairs. */ labels?: {[key: string]: string} | null; /** - * name of resource names have the form 'projects/{project_id\}/locations/{location_id\}/evaluations/{evaluation_id\}' + * Name of resource that has the form `projects/{project_id\}/locations/{location_id\}/evaluations/{evaluation_id\}`. */ name?: string | null; /** - * annotations as key value pairs + * Resource filter for an evaluation defining the scope of resources to be evaluated. */ resourceFilter?: Schema$ResourceFilter; /** - * Output only. [Output only] The updated rule ids if exist. + * Output only. [Output only] The current lifecycle state of the evaluation resource. */ resourceStatus?: Schema$ResourceStatus; /** - * the name of the rule + * The names of the rules used for this evaluation. */ ruleNames?: string[] | null; /** - * Output only. [Output only] The updated rule ids if exist. - */ - ruleVersions?: string[] | null; - /** - * crontab format schedule for scheduled evaluation, currently only support the following schedule: "0 x/1 * * *", "0 x/6 * * *", "0 x/12 * * *", "0 0 x/1 * *", "0 0 x/7 * *", + * Crontab format schedule for scheduled evaluation, currently only supports the following fixed schedules: * `0 x/1 * * *` # Hourly * `0 x/6 * * *` # Every 6 hours * `0 x/12 * * *` # Every 12 hours * `0 0 x/1 * *` # Daily * `0 0 x/7 * *` # Weekly * `0 0 x/14 * *` # Every 14 days * `0 0 1 x/1 *` # Monthly */ schedule?: string | null; /** - * Output only. [Output only] Update time stamp + * Output only. [Output only] Update time stamp. */ updateTime?: string | null; } /** - * Message describing Execution object + * Execution that represents a single run of an Evaluation. */ export interface Schema$Execution { /** - * Output only. [Output only] End time stamp + * Output only. [Output only] End time stamp. */ endTime?: string | null; /** - * Optional. Engine + * Optional. Engine. */ engine?: string | null; /** - * Output only. [Output only] Evaluation ID + * Output only. [Output only] Evaluation ID. */ evaluationId?: string | null; /** - * Optional. External data sources + * Optional. External data sources. */ externalDataSources?: Schema$ExternalDataSources[]; /** - * Output only. [Output only] Inventory time stamp + * Output only. [Output only] Inventory time stamp. */ inventoryTime?: string | null; /** - * Labels as key value pairs + * Labels as key value pairs. */ labels?: {[key: string]: string} | null; /** - * The name of execution resource. The format is projects/{project\}/locations/{location\}/evaluations/{evaluation\}/executions/{execution\} + * The name of execution resource. The format is projects/{project\}/locations/{location\}/evaluations/{evaluation\}/executions/{execution\}. */ name?: string | null; /** - * Output only. Additional information generated by the execution + * Output only. Additional information generated by the execution. */ notices?: Schema$Notice[]; /** - * Output only. [Output only] Result summary for the execution + * Output only. [Output only] Result summary for the execution. */ resultSummary?: Schema$Summary; /** - * Output only. execution result summary per rule + * Output only. Execution result summary per rule. */ ruleResults?: Schema$RuleExecutionResult[]; /** - * type represent whether the execution executed directly by user or scheduled according evaluation.schedule field. + * Type which represents whether the execution executed directly by user or scheduled according to the `Evaluation.schedule` field. */ runType?: string | null; /** - * Output only. [Output only] Start time stamp + * Output only. [Output only] Start time stamp. */ startTime?: string | null; /** - * Output only. [Output only] State + * Output only. [Output only] State. */ state?: string | null; } /** - * Message describing the result of an execution + * The result of an execution. */ export interface Schema$ExecutionResult { /** @@ -864,7 +860,7 @@ export namespace workloadmanager_v1 { */ severity?: string | null; /** - * Execution result type of the scanned resource + * Execution result type of the scanned resource. */ type?: string | null; /** @@ -877,7 +873,7 @@ export namespace workloadmanager_v1 { violationMessage?: string | null; } /** - * Message for external data sources + * External data sources for an execution. */ export interface Schema$ExternalDataSources { /** @@ -885,24 +881,24 @@ export namespace workloadmanager_v1 { */ assetType?: string | null; /** - * Optional. Name of external data source. The name will be used inside the rego/sql to refer the external data + * Optional. Name of external data source. The name will be used inside the rego/sql to refer the external data. */ name?: string | null; /** - * Required. Type of external data source + * Required. Type of external data source. */ type?: string | null; /** - * Required. URI of external data source. example of bq table {project_ID\}.{dataset_ID\}.{table_ID\} + * Required. URI of external data source. example of bq table {project_ID\}.{dataset_ID\}.{table_ID\}. */ uri?: string | null; } /** - * Message describing compute engine instance filter + * A filter for matching Compute Engine instances. */ export interface Schema$GceInstanceFilter { /** - * Service account of compute engine + * If non-empty, only Compute Engine instances associated with at least one of the provided service accounts will be included in the evaluation. */ serviceAccounts?: string[] | null; } @@ -1010,36 +1006,6 @@ export namespace workloadmanager_v1 { */ upcomingMaintenanceEvent?: Schema$UpcomingMaintenanceEvent; } - /** - * Message represent an rule that failed to be validated. - */ - export interface Schema$InvalidRule { - /** - * display name of the invalid rule - */ - displayName?: string | null; - /** - * cloud storage destination of the invalid rule - */ - gcsUri?: string | null; - /** - * name of the invalid rule - */ - name?: string | null; - /** - * The error message of valdating rule formats. - */ - valiadtionError?: string | null; - } - /** - * Message wrappes a list of invalid rules. - */ - export interface Schema$InvalidRulesWrapper { - /** - * The invalid rules that failed to be validated. - */ - invalidRules?: Schema$InvalidRule[]; - } /** * The response object from `ListActuations`. */ @@ -1092,11 +1058,11 @@ export namespace workloadmanager_v1 { workloadProfiles?: Schema$WorkloadProfile[]; } /** - * Message for response to listing Evaluations + * Response message for the ListEvaluations RPC. */ export interface Schema$ListEvaluationsResponse { /** - * The list of Evaluation + * The list of evaluations. */ evaluations?: Schema$Evaluation[]; /** @@ -1109,7 +1075,7 @@ export namespace workloadmanager_v1 { unreachable?: string[] | null; } /** - * Message for response of list execution results + * Response message for the ListExecutionResults RPC. */ export interface Schema$ListExecutionResultsResponse { /** @@ -1122,11 +1088,11 @@ export namespace workloadmanager_v1 { nextPageToken?: string | null; } /** - * Message for response to listing Executions + * Response message for the ListExecutions RPC. */ export interface Schema$ListExecutionsResponse { /** - * The list of Execution + * The list of Execution. */ executions?: Schema$Execution[]; /** @@ -1169,20 +1135,16 @@ export namespace workloadmanager_v1 { unreachable?: string[] | null; } /** - * Mesesage of response of list rules + * Response message for the ListRules RPC. */ export interface Schema$ListRulesResponse { /** - * A wrapper of the invalid rules that failed to be validated. - */ - invalidRulesWrapper?: Schema$InvalidRulesWrapper; - /** - * all rules in response + * All rules in response. */ rules?: Schema$Rule[]; } /** - * Message for response to list scanned resources + * Response message for the ListScannedResources RPC. */ export interface Schema$ListScannedResourcesResponse { /** @@ -1190,7 +1152,7 @@ export namespace workloadmanager_v1 { */ nextPageToken?: string | null; /** - * All scanned resources in response + * All scanned resources in response. */ scannedResources?: Schema$ScannedResource[]; } @@ -1270,11 +1232,11 @@ export namespace workloadmanager_v1 { zone2Name?: string | null; } /** - * Message for additional information generated by the execution + * Additional information generated by an execution. */ export interface Schema$Notice { /** - * Output only. Message of the notice + * Output only. Message of the notice. */ message?: string | null; } @@ -1392,7 +1354,7 @@ export namespace workloadmanager_v1 { version?: string | null; } /** - * Message represent resource in execution result + * Resource in execution result. */ export interface Schema$Resource { /** @@ -1409,41 +1371,37 @@ export namespace workloadmanager_v1 { type?: string | null; } /** - * Message describing resource filters + * Resource filter for an evaluation defining the scope of resources to be evaluated. */ export interface Schema$ResourceFilter { /** - * Filter compute engine resource + * Filter compute engine resources. */ gceInstanceFilter?: Schema$GceInstanceFilter; /** - * The label used for filter resource + * Labels to filter resources by. Each key-value pair in the map must exist on the resource for it to be included (e.g. VM instance labels). For example, specifying `{ "env": "prod", "database": "nosql" \}` will only include resources that have labels `env=prod` and `database=nosql`. */ inclusionLabels?: {[key: string]: string} | null; /** - * The id pattern for filter resource + * The pattern to filter resources by their id For example, a pattern of ".*prod-cluster.*" will match all resources that contain "prod-cluster" in their ID. */ resourceIdPatterns?: string[] | null; /** - * The scopes of evaluation resource + * The scopes of evaluation resource. Format: * `projects/{project_id\}` * `folders/{folder_id\}` * `organizations/{organization_id\}` */ scopes?: string[] | null; } /** - * Message describing resource status + * The lifecycle status of an Evaluation resource. */ export interface Schema$ResourceStatus { /** - * Historical: Used before 2023-05-22 the new version of rule id if exists - */ - rulesNewerVersions?: string[] | null; - /** - * State of the resource + * State of the Evaluation resource. */ state?: string | null; } /** - * Message represent a rule + * A rule to be evaluated. */ export interface Schema$Rule { /** @@ -1451,31 +1409,31 @@ export namespace workloadmanager_v1 { */ assetType?: string | null; /** - * descrite rule in plain language + * Describe rule in plain language. */ description?: string | null; /** - * the name display in UI + * The name display in UI. */ displayName?: string | null; /** - * the message template for rule + * The message template for rule. */ errorMessage?: string | null; /** - * rule name + * Rule name. */ name?: string | null; /** - * the primary category + * The primary category. */ primaryCategory?: string | null; /** - * the remediation for the rule + * The remediation for the rule. */ remediation?: string | null; /** - * Output only. the version of the rule + * Output only. The version of the rule. */ revisionId?: string | null; /** @@ -1483,44 +1441,44 @@ export namespace workloadmanager_v1 { */ ruleType?: string | null; /** - * the secondary category + * The secondary category. */ secondaryCategory?: string | null; /** - * the severity of the rule + * The severity of the rule. */ severity?: string | null; /** - * List of user-defined tags + * List of user-defined tags. */ tags?: string[] | null; /** - * the docuement url for the rule + * The document url for the rule. */ uri?: string | null; } /** - * Message for execution result summary per rule + * Execution result summary per rule. */ export interface Schema$RuleExecutionResult { /** - * Execution message, if any + * Execution message, if any. */ message?: string | null; /** - * Number of violations + * Number of violations. */ resultCount?: string | null; /** - * rule name + * Rule name as plain text like `sap-hana-configured`. */ rule?: string | null; /** - * Number of total scanned resources + * Number of total scanned resources. */ scannedResourceCount?: string | null; /** - * Output only. The execution status + * Output only. The execution status. */ state?: string | null; } @@ -1538,15 +1496,15 @@ export namespace workloadmanager_v1 { message?: string | null; } /** - * Message for creating a Execution + * Request message for the RunEvaluation RPC. */ export interface Schema$RunEvaluationRequest { /** - * Required. The resource being created + * Required. The resource being created. */ execution?: Schema$Execution; /** - * Required. Id of the requesting object If auto-generating Id server-side, remove this field and execution_id from the method_signature of Create RPC + * Required. ID of the execution which will be created. */ executionId?: string | null; /** @@ -2073,15 +2031,15 @@ export namespace workloadmanager_v1 { products?: Schema$Product[]; } /** - * Message of scanned resource + * A scanned resource. */ export interface Schema$ScannedResource { /** - * resource name + * Resource name. */ resource?: string | null; /** - * resource type + * Resource type. */ type?: string | null; } @@ -2099,15 +2057,15 @@ export namespace workloadmanager_v1 { state?: string | null; } /** - * * A ShellCommand is invoked via the agent's command line executor + * A ShellCommand is invoked via the agent's command line executor. */ export interface Schema$ShellCommand { /** - * args is a string of arguments to be passed to the command. + * Arguments to be passed to the command. */ args?: string | null; /** - * command is the name of the command to be executed. + * The name of the command to be executed. */ command?: string | null; /** @@ -2290,19 +2248,19 @@ export namespace workloadmanager_v1 { message?: string | null; } /** - * Message for execution summary + * Execution summary. */ export interface Schema$Summary { /** - * Output only. Number of failures + * Output only. Number of failures. */ failures?: string | null; /** - * Output only. Number of new failures compared to the previous execution + * Output only. Number of new failures compared to the previous execution. */ newFailures?: string | null; /** - * Output only. Number of new fixes compared to the previous execution + * Output only. Number of new fixes compared to the previous execution. */ newFixes?: string | null; } @@ -2366,7 +2324,7 @@ export namespace workloadmanager_v1 { type?: string | null; } /** - * Message describing the violation in an evaluation result. + * The violation in an evaluation result. */ export interface Schema$ViolationDetails { /** @@ -2624,7 +2582,7 @@ export namespace workloadmanager_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -4649,9 +4607,9 @@ export namespace workloadmanager_v1 { * * // Do the magic * const res = await workloadmanager.projects.locations.evaluations.create({ - * // Required. Id of the requesting object + * // Required. Id of the requesting object. * evaluationId: 'placeholder-value', - * // Required. The resource prefix of the evaluation location using the form: `projects/{project_id\}/locations/{location_id\}` + * // Required. The resource prefix of the evaluation location using the form: `projects/{project_id\}/locations/{location_id\}`. * parent: 'projects/my-project/locations/my-location', * // 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: 'placeholder-value', @@ -4671,7 +4629,6 @@ export namespace workloadmanager_v1 { * // "resourceFilter": {}, * // "resourceStatus": {}, * // "ruleNames": [], - * // "ruleVersions": [], * // "schedule": "my_schedule", * // "updateTime": "my_updateTime" * // } @@ -4816,9 +4773,9 @@ export namespace workloadmanager_v1 { * * // Do the magic * const res = await workloadmanager.projects.locations.evaluations.delete({ - * // Optional. Followed the best practice from https://aip.dev/135#cascading-delete + * // Optional. Followed the best practice from https://aip.dev/135#cascading-delete. * force: 'placeholder-value', - * // Required. Name of the resource + * // Required. Name of the resource. * name: 'projects/my-project/locations/my-location/evaluations/my-evaluation', * // 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: 'placeholder-value', @@ -4959,7 +4916,7 @@ export namespace workloadmanager_v1 { * * // Do the magic * const res = await workloadmanager.projects.locations.evaluations.get({ - * // Required. Name of the resource + * // Required. Name of the resource. * name: 'projects/my-project/locations/my-location/evaluations/my-evaluation', * }); * console.log(res.data); @@ -4977,7 +4934,6 @@ export namespace workloadmanager_v1 { * // "resourceFilter": {}, * // "resourceStatus": {}, * // "ruleNames": [], - * // "ruleVersions": [], * // "schedule": "my_schedule", * // "updateTime": "my_updateTime" * // } @@ -5109,13 +5065,13 @@ export namespace workloadmanager_v1 { * const res = await workloadmanager.projects.locations.evaluations.list({ * // Filter to be applied when listing the evaluation results. * filter: 'placeholder-value', - * // Hint for how to order the results + * // Hint for how to order the results. * orderBy: 'placeholder-value', * // Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. * pageToken: 'placeholder-value', - * // Required. Parent value for ListEvaluationsRequest + * // Required. Parent value for ListEvaluationsRequest. * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); @@ -5257,7 +5213,7 @@ export namespace workloadmanager_v1 { * * // Do the magic * const res = await workloadmanager.projects.locations.evaluations.patch({ - * // name of resource names have the form 'projects/{project_id\}/locations/{location_id\}/evaluations/{evaluation_id\}' + * // Name of resource that has the form `projects/{project_id\}/locations/{location_id\}/evaluations/{evaluation_id\}`. * name: 'projects/my-project/locations/my-location/evaluations/my-evaluation', * // 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: 'placeholder-value', @@ -5279,7 +5235,6 @@ export namespace workloadmanager_v1 { * // "resourceFilter": {}, * // "resourceStatus": {}, * // "ruleNames": [], - * // "ruleVersions": [], * // "schedule": "my_schedule", * // "updateTime": "my_updateTime" * // } @@ -5393,11 +5348,11 @@ export namespace workloadmanager_v1 { export interface Params$Resource$Projects$Locations$Evaluations$Create extends StandardParameters { /** - * Required. Id of the requesting object + * Required. Id of the requesting object. */ evaluationId?: string; /** - * Required. The resource prefix of the evaluation location using the form: `projects/{project_id\}/locations/{location_id\}` + * Required. The resource prefix of the evaluation location using the form: `projects/{project_id\}/locations/{location_id\}`. */ parent?: string; /** @@ -5412,11 +5367,11 @@ export namespace workloadmanager_v1 { } export interface Params$Resource$Projects$Locations$Evaluations$Delete extends StandardParameters { /** - * Optional. Followed the best practice from https://aip.dev/135#cascading-delete + * Optional. Followed the best practice from https://aip.dev/135#cascading-delete. */ force?: boolean; /** - * Required. Name of the resource + * Required. Name of the resource. */ name?: string; /** @@ -5426,7 +5381,7 @@ export namespace workloadmanager_v1 { } export interface Params$Resource$Projects$Locations$Evaluations$Get extends StandardParameters { /** - * Required. Name of the resource + * Required. Name of the resource. */ name?: string; } @@ -5436,7 +5391,7 @@ export namespace workloadmanager_v1 { */ filter?: string; /** - * Hint for how to order the results + * Hint for how to order the results. */ orderBy?: string; /** @@ -5448,13 +5403,13 @@ export namespace workloadmanager_v1 { */ pageToken?: string; /** - * Required. Parent value for ListEvaluationsRequest + * Required. Parent value for ListEvaluationsRequest. */ parent?: string; } export interface Params$Resource$Projects$Locations$Evaluations$Patch extends StandardParameters { /** - * name of resource names have the form 'projects/{project_id\}/locations/{location_id\}/evaluations/{evaluation_id\}' + * Name of resource that has the form `projects/{project_id\}/locations/{location_id\}/evaluations/{evaluation_id\}`. */ name?: string; /** @@ -5520,7 +5475,7 @@ export namespace workloadmanager_v1 { * // Do the magic * const res = * await workloadmanager.projects.locations.evaluations.executions.delete({ - * // Required. Name of the resource + * // Required. Name of the resource. * name: 'projects/my-project/locations/my-location/evaluations/my-evaluation/executions/my-execution', * // 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: 'placeholder-value', @@ -5663,7 +5618,7 @@ export namespace workloadmanager_v1 { * // Do the magic * const res = * await workloadmanager.projects.locations.evaluations.executions.get({ - * // Required. Name of the resource + * // Required. Name of the resource. * name: 'projects/my-project/locations/my-location/evaluations/my-evaluation/executions/my-execution', * }); * console.log(res.data); @@ -5812,7 +5767,7 @@ export namespace workloadmanager_v1 { * // Do the magic * const res = * await workloadmanager.projects.locations.evaluations.executions.list({ - * // Filtering results + * // Filtering results. * filter: 'placeholder-value', * // Field to sort by. See https://google.aip.dev/132#ordering for more details. * orderBy: 'placeholder-value', @@ -5820,7 +5775,7 @@ export namespace workloadmanager_v1 { * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. * pageToken: 'placeholder-value', - * // Required. The resource prefix of the Execution using the form: 'projects/{project\}/locations/{location\}/evaluations/{evaluation\}' + * // Required. The resource prefix of the Execution using the form: `projects/{project\}/locations/{location\}/evaluations/{evaluation\}`. * parent: * 'projects/my-project/locations/my-location/evaluations/my-evaluation', * }); @@ -5965,7 +5920,7 @@ export namespace workloadmanager_v1 { * // Do the magic * const res = * await workloadmanager.projects.locations.evaluations.executions.run({ - * // Required. The resource name of the Execution using the form: 'projects/{project\}/locations/{location\}/evaluations/{evaluation\}/executions/{execution\}' + * // Required. The resource name of the Evaluation using the form: `projects/{project\}/locations/{location\}/evaluations/{evaluation\}`. * name: 'projects/my-project/locations/my-location/evaluations/my-evaluation', * * // Request body metadata @@ -6090,7 +6045,7 @@ export namespace workloadmanager_v1 { export interface Params$Resource$Projects$Locations$Evaluations$Executions$Delete extends StandardParameters { /** - * Required. Name of the resource + * Required. Name of the resource. */ name?: string; /** @@ -6100,13 +6055,13 @@ export namespace workloadmanager_v1 { } export interface Params$Resource$Projects$Locations$Evaluations$Executions$Get extends StandardParameters { /** - * Required. Name of the resource + * Required. Name of the resource. */ name?: string; } export interface Params$Resource$Projects$Locations$Evaluations$Executions$List extends StandardParameters { /** - * Filtering results + * Filtering results. */ filter?: string; /** @@ -6122,13 +6077,13 @@ export namespace workloadmanager_v1 { */ pageToken?: string; /** - * Required. The resource prefix of the Execution using the form: 'projects/{project\}/locations/{location\}/evaluations/{evaluation\}' + * Required. The resource prefix of the Execution using the form: `projects/{project\}/locations/{location\}/evaluations/{evaluation\}`. */ parent?: string; } export interface Params$Resource$Projects$Locations$Evaluations$Executions$Run extends StandardParameters { /** - * Required. The resource name of the Execution using the form: 'projects/{project\}/locations/{location\}/evaluations/{evaluation\}/executions/{execution\}' + * Required. The resource name of the Evaluation using the form: `projects/{project\}/locations/{location\}/evaluations/{evaluation\}`. */ name?: string; @@ -6177,13 +6132,13 @@ export namespace workloadmanager_v1 { * const res = * await workloadmanager.projects.locations.evaluations.executions.results.list( * { - * // Filtering results + * // Filtering results. * filter: 'placeholder-value', * // Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. * pageToken: 'placeholder-value', - * // Required. The execution results. Format: {parent\}/evaluations/x/executions/x/results + * // Required. The execution results. Format: {parent\}/evaluations/x/executions/x/results. * parent: * 'projects/my-project/locations/my-location/evaluations/my-evaluation/executions/my-execution', * }, @@ -6303,7 +6258,7 @@ export namespace workloadmanager_v1 { export interface Params$Resource$Projects$Locations$Evaluations$Executions$Results$List extends StandardParameters { /** - * Filtering results + * Filtering results. */ filter?: string; /** @@ -6315,7 +6270,7 @@ export namespace workloadmanager_v1 { */ pageToken?: string; /** - * Required. The execution results. Format: {parent\}/evaluations/x/executions/x/results + * Required. The execution results. Format: {parent\}/evaluations/x/executions/x/results. */ parent?: string; } @@ -6359,7 +6314,7 @@ export namespace workloadmanager_v1 { * const res = * await workloadmanager.projects.locations.evaluations.executions.scannedResources.list( * { - * // Filtering results + * // Filtering results. * filter: 'placeholder-value', * // Field to sort by. See https://google.aip.dev/132#ordering for more details. * orderBy: 'placeholder-value', @@ -6367,10 +6322,10 @@ export namespace workloadmanager_v1 { * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. * pageToken: 'placeholder-value', - * // Required. parent for ListScannedResourcesRequest + * // Required. Parent for ListScannedResourcesRequest. * parent: * 'projects/my-project/locations/my-location/evaluations/my-evaluation/executions/my-execution', - * // rule name + * // Rule name. * rule: 'placeholder-value', * }, * ); @@ -6489,7 +6444,7 @@ export namespace workloadmanager_v1 { export interface Params$Resource$Projects$Locations$Evaluations$Executions$Scannedresources$List extends StandardParameters { /** - * Filtering results + * Filtering results. */ filter?: string; /** @@ -6505,11 +6460,11 @@ export namespace workloadmanager_v1 { */ pageToken?: string; /** - * Required. parent for ListScannedResourcesRequest + * Required. Parent for ListScannedResourcesRequest. */ parent?: string; /** - * rule name + * Rule name. */ rule?: string; } @@ -7483,20 +7438,19 @@ export namespace workloadmanager_v1 { * customRulesBucket: 'placeholder-value', * // Optional. The evaluation type of the rules will be applied to. The Cloud Storage bucket name for custom rules. * evaluationType: 'placeholder-value', - * // Filter based on primary_category, secondary_category + * // Filter based on primary_category, secondary_category. * filter: 'placeholder-value', * // Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. * pageToken: 'placeholder-value', - * // Required. The [project] on which to execute the request. The format is: projects/{project_id\}/locations/{location\} Currently, the pre-defined rules are global available to all projects and all regions + * // Required. The [project] on which to execute the request. The format is: projects/{project_id\}/locations/{location\} Currently, the pre-defined rules are global available to all projects and all regions. * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "invalidRulesWrapper": {}, * // "rules": [] * // } * } @@ -7608,7 +7562,7 @@ export namespace workloadmanager_v1 { */ evaluationType?: string; /** - * Filter based on primary_category, secondary_category + * Filter based on primary_category, secondary_category. */ filter?: string; /** @@ -7620,7 +7574,7 @@ export namespace workloadmanager_v1 { */ pageToken?: string; /** - * Required. The [project] on which to execute the request. The format is: projects/{project_id\}/locations/{location\} Currently, the pre-defined rules are global available to all projects and all regions + * Required. The [project] on which to execute the request. The format is: projects/{project_id\}/locations/{location\} Currently, the pre-defined rules are global available to all projects and all regions. */ parent?: string; } diff --git a/src/apis/workspaceevents/v1.ts b/src/apis/workspaceevents/v1.ts index 847a312b05d..c98044803bf 100644 --- a/src/apis/workspaceevents/v1.ts +++ b/src/apis/workspaceevents/v1.ts @@ -445,6 +445,10 @@ export namespace workspaceevents_v1 { * Output only. If `true`, the subscription is in the process of being updated. */ reconciling?: boolean | null; + /** + * Output only. The service account that was used to authorize the creation of the subscription. This service account must be owned by the same Google Cloud project where you created this subscription. Format: `projects/{project_id\}/serviceAccounts/{service_account_id\}` + */ + serviceAccountAuthority?: string | null; /** * Output only. The state of the subscription. Determines whether the subscription can receive events and deliver them to the notification endpoint. */ @@ -469,6 +473,10 @@ export namespace workspaceevents_v1 { * Output only. The last time that the subscription is updated. */ updateTime?: string | null; + /** + * Output only. The user who authorized the creation of the subscription. The user must be able to view the `target_resource`. For Google Workspace users, the `{user\}` value is the [`user.id`](https://developers.google.com/workspace/admin/directory/reference/rest/v1/users#User.FIELDS.id) field from the Directory API. Format: `users/{user\}` + */ + userAuthority?: string | null; } /** * Task is the core unit of action for A2A. It has a current status and when results are created for the task they are stored in the artifact. If there are multiple turns for a task, these are stored in history. @@ -778,6 +786,8 @@ export namespace workspaceevents_v1 { * 'https://www.googleapis.com/auth/chat.messages.readonly', * 'https://www.googleapis.com/auth/chat.spaces', * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/chat.users.readstate', + * 'https://www.googleapis.com/auth/chat.users.readstate.readonly', * 'https://www.googleapis.com/auth/drive', * 'https://www.googleapis.com/auth/drive.file', * 'https://www.googleapis.com/auth/drive.metadata', @@ -916,7 +926,7 @@ export namespace workspaceevents_v1 { } /** - * Creates a Google Workspace subscription. To learn how to use this method, see [Create a Google Workspace subscription](https://developers.google.com/workspace/events/guides/create-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can create a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` and getting one-time administrator approval ([Developer Preview](https://developers.google.com/workspace/preview)). To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). + * Creates a Google Workspace subscription. To learn how to use this method, see [Create a Google Workspace subscription](https://developers.google.com/workspace/events/guides/create-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can create a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` and getting one-time administrator approval. To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). * @example * ```js * // Before running the sample: @@ -939,8 +949,10 @@ export namespace workspaceevents_v1 { * // Scopes can be specified either as an array or as a single, space-delimited string. * scopes: [ * 'https://www.googleapis.com/auth/chat.app.memberships', + * 'https://www.googleapis.com/auth/chat.app.memberships.readonly', * 'https://www.googleapis.com/auth/chat.app.messages.readonly', * 'https://www.googleapis.com/auth/chat.app.spaces', + * 'https://www.googleapis.com/auth/chat.app.spaces.readonly', * 'https://www.googleapis.com/auth/chat.memberships', * 'https://www.googleapis.com/auth/chat.memberships.readonly', * 'https://www.googleapis.com/auth/chat.messages', @@ -949,6 +961,8 @@ export namespace workspaceevents_v1 { * 'https://www.googleapis.com/auth/chat.messages.readonly', * 'https://www.googleapis.com/auth/chat.spaces', * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/chat.users.readstate', + * 'https://www.googleapis.com/auth/chat.users.readstate.readonly', * 'https://www.googleapis.com/auth/drive', * 'https://www.googleapis.com/auth/drive.file', * 'https://www.googleapis.com/auth/drive.metadata', @@ -981,12 +995,14 @@ export namespace workspaceevents_v1 { * // "notificationEndpoint": {}, * // "payloadOptions": {}, * // "reconciling": false, + * // "serviceAccountAuthority": "my_serviceAccountAuthority", * // "state": "my_state", * // "suspensionReason": "my_suspensionReason", * // "targetResource": "my_targetResource", * // "ttl": "my_ttl", * // "uid": "my_uid", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "userAuthority": "my_userAuthority" * // } * }, * }); @@ -1127,6 +1143,8 @@ export namespace workspaceevents_v1 { * 'https://www.googleapis.com/auth/chat.messages.readonly', * 'https://www.googleapis.com/auth/chat.spaces', * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/chat.users.readstate', + * 'https://www.googleapis.com/auth/chat.users.readstate.readonly', * 'https://www.googleapis.com/auth/drive', * 'https://www.googleapis.com/auth/drive.file', * 'https://www.googleapis.com/auth/drive.metadata', @@ -1289,6 +1307,8 @@ export namespace workspaceevents_v1 { * 'https://www.googleapis.com/auth/chat.messages.readonly', * 'https://www.googleapis.com/auth/chat.spaces', * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/chat.users.readstate', + * 'https://www.googleapis.com/auth/chat.users.readstate.readonly', * 'https://www.googleapis.com/auth/drive', * 'https://www.googleapis.com/auth/drive.file', * 'https://www.googleapis.com/auth/drive.metadata', @@ -1321,12 +1341,14 @@ export namespace workspaceevents_v1 { * // "notificationEndpoint": {}, * // "payloadOptions": {}, * // "reconciling": false, + * // "serviceAccountAuthority": "my_serviceAccountAuthority", * // "state": "my_state", * // "suspensionReason": "my_suspensionReason", * // "targetResource": "my_targetResource", * // "ttl": "my_ttl", * // "uid": "my_uid", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "userAuthority": "my_userAuthority" * // } * } * @@ -1455,6 +1477,8 @@ export namespace workspaceevents_v1 { * 'https://www.googleapis.com/auth/chat.messages.readonly', * 'https://www.googleapis.com/auth/chat.spaces', * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/chat.users.readstate', + * 'https://www.googleapis.com/auth/chat.users.readstate.readonly', * 'https://www.googleapis.com/auth/drive', * 'https://www.googleapis.com/auth/drive.file', * 'https://www.googleapis.com/auth/drive.metadata', @@ -1585,7 +1609,7 @@ export namespace workspaceevents_v1 { } /** - * Updates or renews a Google Workspace subscription. To learn how to use this method, see [Update or renew a Google Workspace subscription](https://developers.google.com/workspace/events/guides/update-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can update a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` andgetting one-time administrator approval ([Developer Preview](https://developers.google.com/workspace/preview)). To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). + * Updates or renews a Google Workspace subscription. To learn how to use this method, see [Update or renew a Google Workspace subscription](https://developers.google.com/workspace/events/guides/update-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can update a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` and getting one-time administrator approval. To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). * @example * ```js * // Before running the sample: @@ -1608,8 +1632,10 @@ export namespace workspaceevents_v1 { * // Scopes can be specified either as an array or as a single, space-delimited string. * scopes: [ * 'https://www.googleapis.com/auth/chat.app.memberships', + * 'https://www.googleapis.com/auth/chat.app.memberships.readonly', * 'https://www.googleapis.com/auth/chat.app.messages.readonly', * 'https://www.googleapis.com/auth/chat.app.spaces', + * 'https://www.googleapis.com/auth/chat.app.spaces.readonly', * 'https://www.googleapis.com/auth/chat.memberships', * 'https://www.googleapis.com/auth/chat.memberships.readonly', * 'https://www.googleapis.com/auth/chat.messages', @@ -1618,6 +1644,8 @@ export namespace workspaceevents_v1 { * 'https://www.googleapis.com/auth/chat.messages.readonly', * 'https://www.googleapis.com/auth/chat.spaces', * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/chat.users.readstate', + * 'https://www.googleapis.com/auth/chat.users.readstate.readonly', * 'https://www.googleapis.com/auth/drive', * 'https://www.googleapis.com/auth/drive.file', * 'https://www.googleapis.com/auth/drive.metadata', @@ -1654,12 +1682,14 @@ export namespace workspaceevents_v1 { * // "notificationEndpoint": {}, * // "payloadOptions": {}, * // "reconciling": false, + * // "serviceAccountAuthority": "my_serviceAccountAuthority", * // "state": "my_state", * // "suspensionReason": "my_suspensionReason", * // "targetResource": "my_targetResource", * // "ttl": "my_ttl", * // "uid": "my_uid", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "userAuthority": "my_userAuthority" * // } * }, * }); @@ -1769,7 +1799,7 @@ export namespace workspaceevents_v1 { } /** - * Reactivates a suspended Google Workspace subscription. This method resets your subscription's `State` field to `ACTIVE`. Before you use this method, you must fix the error that suspended the subscription. This method will ignore or reject any subscription that isn't currently in a suspended state. To learn how to use this method, see [Reactivate a Google Workspace subscription](https://developers.google.com/workspace/events/guides/reactivate-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can reactivate a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` andgetting one-time administrator approval ([Developer Preview](https://developers.google.com/workspace/preview)). To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). + * Reactivates a suspended Google Workspace subscription. This method resets your subscription's `State` field to `ACTIVE`. Before you use this method, you must fix the error that suspended the subscription. This method will ignore or reject any subscription that isn't currently in a suspended state. To learn how to use this method, see [Reactivate a Google Workspace subscription](https://developers.google.com/workspace/events/guides/reactivate-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can reactivate a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` and getting one-time administrator approval. To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). * @example * ```js * // Before running the sample: @@ -1792,8 +1822,10 @@ export namespace workspaceevents_v1 { * // Scopes can be specified either as an array or as a single, space-delimited string. * scopes: [ * 'https://www.googleapis.com/auth/chat.app.memberships', + * 'https://www.googleapis.com/auth/chat.app.memberships.readonly', * 'https://www.googleapis.com/auth/chat.app.messages.readonly', * 'https://www.googleapis.com/auth/chat.app.spaces', + * 'https://www.googleapis.com/auth/chat.app.spaces.readonly', * 'https://www.googleapis.com/auth/chat.memberships', * 'https://www.googleapis.com/auth/chat.memberships.readonly', * 'https://www.googleapis.com/auth/chat.messages', @@ -1802,6 +1834,8 @@ export namespace workspaceevents_v1 { * 'https://www.googleapis.com/auth/chat.messages.readonly', * 'https://www.googleapis.com/auth/chat.spaces', * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/chat.users.readstate', + * 'https://www.googleapis.com/auth/chat.users.readstate.readonly', * 'https://www.googleapis.com/auth/drive', * 'https://www.googleapis.com/auth/drive.file', * 'https://www.googleapis.com/auth/drive.metadata', diff --git a/src/apis/workstations/v1.ts b/src/apis/workstations/v1.ts index 01fb066e9e3..ce9569866dc 100644 --- a/src/apis/workstations/v1.ts +++ b/src/apis/workstations/v1.ts @@ -452,6 +452,10 @@ export namespace workstations_v1 { * A Persistent Directory backed by a Compute Engine regional persistent disk. The persistent_directories field is repeated, but it may contain only one entry. It creates a [persistent disk](https://cloud.google.com/compute/docs/disks/persistent-disks) that mounts to the workstation VM at `/home` when the session starts and detaches when the session ends. If this field is empty, workstations created with this configuration do not have a persistent home directory. */ export interface Schema$GceRegionalPersistentDisk { + /** + * Optional. Number of seconds to wait after initially creating or subsequently shutting down the workstation before converting its disk into a snapshot. This generally saves costs at the expense of greater startup time on next workstation start, as the service will need to create a disk from the archival snapshot. A value of `"0s"` indicates that the disk will never be archived. + */ + archiveTimeout?: string | null; /** * Optional. The [type of the persistent disk](https://cloud.google.com/compute/docs/disks#disk-types) for the home directory. Defaults to `"pd-standard"`. */ @@ -851,7 +855,7 @@ export namespace workstations_v1 { */ etag?: string | null; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean | null; } @@ -881,7 +885,7 @@ export namespace workstations_v1 { */ etag?: string | null; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean | null; } @@ -1056,6 +1060,14 @@ export namespace workstations_v1 { * Output only. Time when this workstation cluster was most recently updated. */ updateTime?: string | null; + /** + * Optional. Specifies the redirect URL for unauthorized requests received by workstation VMs in this cluster. Redirects to this endpoint will send a base64 encoded `state` query param containing the target workstation name and original request hostname. The endpoint is responsible for retrieving a token using `GenerateAccessToken` and redirecting back to the original hostname with the token. + */ + workstationAuthorizationUrl?: string | null; + /** + * Optional. Specifies the launch URL for workstations in this cluster. Requests sent to unstarted workstations will be redirected to this URL. Requests redirected to the launch endpoint will be sent with a `workstation` and `project` query parameter containing the full workstation resource name and project ID, respectively. The launch endpoint is responsible for starting the workstation, polling it until it reaches `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL. + */ + workstationLaunchUrl?: string | null; } /** * A workstation configuration resource in the Cloud Workstations API. Workstation configurations act as templates for workstations. The workstation configuration defines details such as the workstation virtual machine (VM) instance type, persistent storage, container image defining environment, which IDE or Code Editor to use, and more. Administrators and platform teams can also use [Identity and Access Management (IAM)](https://cloud.google.com/iam/docs/overview) rules to grant access to teams or to individual developers. @@ -1328,7 +1340,7 @@ export namespace workstations_v1 { } /** - * Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id\}/locations`. This may include public locations as well as private or other locations specifically visible to the project. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2159,7 +2171,7 @@ export namespace workstations_v1 { * const res = await workstations.projects.locations.workstationClusters.create({ * // Required. Parent resource name. * parent: 'projects/my-project/locations/my-location', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * // Required. ID to use for the workstation cluster. * workstationClusterId: 'placeholder-value', @@ -2186,7 +2198,9 @@ export namespace workstations_v1 { * // "subnetwork": "my_subnetwork", * // "tags": {}, * // "uid": "my_uid", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "workstationAuthorizationUrl": "my_workstationAuthorizationUrl", + * // "workstationLaunchUrl": "my_workstationLaunchUrl" * // } * }, * }); @@ -2335,7 +2349,7 @@ export namespace workstations_v1 { * force: 'placeholder-value', * // Required. Name of the workstation cluster to delete. * name: 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster', - * // Optional. If set, validate the request and preview the review, but do not apply it. + * // Optional. If set, validate the request and preview the result, but do not apply it. * validateOnly: 'placeholder-value', * }); * console.log(res.data); @@ -2499,7 +2513,9 @@ export namespace workstations_v1 { * // "subnetwork": "my_subnetwork", * // "tags": {}, * // "uid": "my_uid", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "workstationAuthorizationUrl": "my_workstationAuthorizationUrl", + * // "workstationLaunchUrl": "my_workstationLaunchUrl" * // } * } * @@ -2785,7 +2801,7 @@ export namespace workstations_v1 { * name: 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster', * // Required. Mask that specifies which fields in the workstation cluster should be updated. * updateMask: 'placeholder-value', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * * // Request body metadata @@ -2810,7 +2826,9 @@ export namespace workstations_v1 { * // "subnetwork": "my_subnetwork", * // "tags": {}, * // "uid": "my_uid", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "workstationAuthorizationUrl": "my_workstationAuthorizationUrl", + * // "workstationLaunchUrl": "my_workstationLaunchUrl" * // } * }, * }); @@ -2926,7 +2944,7 @@ export namespace workstations_v1 { */ parent?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; /** @@ -2953,7 +2971,7 @@ export namespace workstations_v1 { */ name?: string; /** - * Optional. If set, validate the request and preview the review, but do not apply it. + * Optional. If set, validate the request and preview the result, but do not apply it. */ validateOnly?: boolean; } @@ -2995,7 +3013,7 @@ export namespace workstations_v1 { */ updateMask?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; @@ -3052,7 +3070,7 @@ export namespace workstations_v1 { * // Required. Parent resource name. * parent: * 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * // Required. ID to use for the workstation configuration. * workstationConfigId: 'placeholder-value', @@ -3238,7 +3256,7 @@ export namespace workstations_v1 { * force: 'placeholder-value', * // Required. Name of the workstation configuration to delete. * name: 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster/workstationConfigs/my-workstationConfig', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * }, * ); @@ -4009,7 +4027,7 @@ export namespace workstations_v1 { * name: 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster/workstationConfigs/my-workstationConfig', * // Required. Mask specifying which fields in the workstation configuration should be updated. * updateMask: 'placeholder-value', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * * // Request body metadata @@ -4466,7 +4484,7 @@ export namespace workstations_v1 { */ parent?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; /** @@ -4493,7 +4511,7 @@ export namespace workstations_v1 { */ name?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; } @@ -4559,7 +4577,7 @@ export namespace workstations_v1 { */ updateMask?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; @@ -4633,7 +4651,7 @@ export namespace workstations_v1 { * // Required. Parent resource name. * parent: * 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster/workstationConfigs/my-workstationConfig', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * // Required. ID to use for the workstation. * workstationId: 'placeholder-value', @@ -4808,7 +4826,7 @@ export namespace workstations_v1 { * etag: 'placeholder-value', * // Required. Name of the workstation to delete. * name: 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster/workstationConfigs/my-workstationConfig/workstations/my-workstation', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * }, * ); @@ -5714,13 +5732,13 @@ export namespace workstations_v1 { * const res = * await workstations.projects.locations.workstationClusters.workstationConfigs.workstations.patch( * { - * // Optional. If set and the workstation configuration is not found, a new workstation configuration is created. In this situation, update_mask is ignored. + * // Optional. If set and the workstation is not found, a new workstation is created. In this situation, update_mask is ignored. * allowMissing: 'placeholder-value', * // Identifier. Full name of this workstation. * name: 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster/workstationConfigs/my-workstationConfig/workstations/my-workstation', - * // Required. Mask specifying which fields in the workstation configuration should be updated. + * // Required. Mask specifying which fields in the workstation should be updated. * updateMask: 'placeholder-value', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * * // Request body metadata @@ -6471,7 +6489,7 @@ export namespace workstations_v1 { */ parent?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; /** @@ -6494,7 +6512,7 @@ export namespace workstations_v1 { */ name?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; } @@ -6559,7 +6577,7 @@ export namespace workstations_v1 { } export interface Params$Resource$Projects$Locations$Workstationclusters$Workstationconfigs$Workstations$Patch extends StandardParameters { /** - * Optional. If set and the workstation configuration is not found, a new workstation configuration is created. In this situation, update_mask is ignored. + * Optional. If set and the workstation is not found, a new workstation is created. In this situation, update_mask is ignored. */ allowMissing?: boolean; /** @@ -6567,11 +6585,11 @@ export namespace workstations_v1 { */ name?: string; /** - * Required. Mask specifying which fields in the workstation configuration should be updated. + * Required. Mask specifying which fields in the workstation should be updated. */ updateMask?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; diff --git a/src/apis/workstations/v1beta.ts b/src/apis/workstations/v1beta.ts index afe92cf5838..b1f21c57eaf 100644 --- a/src/apis/workstations/v1beta.ts +++ b/src/apis/workstations/v1beta.ts @@ -660,6 +660,27 @@ export namespace workstations_v1beta { */ workstations?: Schema$Workstation[]; } + /** + * OAuth token. + */ + export interface Schema$OAuthToken { + /** + * Required. The OAuth token. + */ + accessToken?: string | null; + /** + * Optional. The email address encapsulated in the OAuth token. + */ + email?: string | null; + /** + * Optional. The time the OAuth access token will expire. This should be the time the access token was generated plus the expires_in offset returned from the Access Token Response. + */ + expireTime?: string | null; + /** + * Optional. The scopes encapsulated in the OAuth token. See https://developers.google.com/identity/protocols/oauth2/scopes for more information. + */ + scopes?: string | null; + } /** * This resource represents a long-running operation that is the result of a network API call. */ @@ -790,6 +811,15 @@ export namespace workstations_v1beta { */ serviceAttachmentUri?: string | null; } + /** + * Request message for PushCredentials. + */ + export interface Schema$PushCredentialsRequest { + /** + * Optional. Credentials used by Cloud Client Libraries, Google API Client Libraries, and other tooling within the user conainer: https://cloud.google.com/docs/authentication/application-default-credentials + */ + applicationDefaultCredentials?: Schema$OAuthToken; + } /** * A readiness check to be performed on a workstation. */ @@ -855,7 +885,7 @@ export namespace workstations_v1beta { */ etag?: string | null; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean | null; } @@ -885,7 +915,7 @@ export namespace workstations_v1beta { */ etag?: string | null; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean | null; } @@ -1101,6 +1131,14 @@ export namespace workstations_v1beta { * Output only. Time when this workstation cluster was most recently updated. */ updateTime?: string | null; + /** + * Optional. Specifies the redirect URL for unauthorized requests received by workstation VMs in this cluster. Redirects to this endpoint will send a base64 encoded `state` query param containing the target workstation name and original request hostname. The endpoint is responsible for retrieving a token using `GenerateAccessToken` and redirecting back to the original hostname with the token. + */ + workstationAuthorizationUrl?: string | null; + /** + * Optional. Specifies the launch URL for workstations in this cluster. Requests sent to unstarted workstations will be redirected to this URL. Requests redirected to the launch endpoint will be sent with a `workstation` and `project` query parameter containing the full workstation resource name and project ID, respectively. The launch endpoint is responsible for starting the workstation, polling it until it reaches `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL. + */ + workstationLaunchUrl?: string | null; } /** * A workstation configuration resource in the Cloud Workstations API. Workstation configurations act as templates for workstations. The workstation configuration defines details such as the workstation virtual machine (VM) instance type, persistent storage, container image defining environment, which IDE or Code Editor to use, and more. Administrators and platform teams can also use [Identity and Access Management (IAM)](https://cloud.google.com/iam/docs/overview) rules to grant access to teams or to individual developers. @@ -1146,6 +1184,10 @@ export namespace workstations_v1beta { * Optional. Whether to enable Linux `auditd` logging on the workstation. When enabled, a service_account must also be specified that has `roles/logging.logWriter` and `roles/monitoring.metricWriter` on the project. Operating system audit logging is distinct from [Cloud Audit Logs](https://cloud.google.com/workstations/docs/audit-logging) and [Container output logging](https://cloud.google.com/workstations/docs/container-output-logging#overview). Operating system audit logs are available in the [Cloud Logging](https://cloud.google.com/logging/docs) console by querying: resource.type="gce_instance" log_name:"/logs/linux-auditd" */ enableAuditAgent?: boolean | null; + /** + * Optional. Enables pushing user provided credentials to Workstations by calling workstations.pushCredentials. If application_default_credentials are supplied to pushCredentials, the provided token is returned when tools and applications running in the user container make a request for Default Application Credentials. Please note that any credentials supplied are made available to all users with access to the workstation. + */ + enablePushingCredentials?: boolean | null; /** * Immutable. Encrypts resources of this workstation configuration using a customer-managed encryption key (CMEK). If specified, the boot disk of the Compute Engine instance and the persistent disk are encrypted using this encryption key. If this field is not set, the disks are encrypted using a generated key. Customer-managed encryption keys do not protect disk metadata. If the customer-managed encryption key is rotated, when the workstation instance is stopped, the system attempts to recreate the persistent disk with the new version of the key. Be sure to keep older versions of the key until the persistent disk is recreated. Otherwise, data on the persistent disk might be lost. If the encryption key is revoked, the workstation session automatically stops within 7 hours. Immutable after the workstation configuration is created. */ @@ -1904,7 +1946,7 @@ export namespace workstations_v1beta { * const res = await workstations.projects.locations.workstationClusters.create({ * // Required. Parent resource name. * parent: 'projects/my-project/locations/my-location', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * // Required. ID to use for the workstation cluster. * workstationClusterId: 'placeholder-value', @@ -1933,7 +1975,9 @@ export namespace workstations_v1beta { * // "subnetwork": "my_subnetwork", * // "tags": {}, * // "uid": "my_uid", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "workstationAuthorizationUrl": "my_workstationAuthorizationUrl", + * // "workstationLaunchUrl": "my_workstationLaunchUrl" * // } * }, * }); @@ -2082,7 +2126,7 @@ export namespace workstations_v1beta { * force: 'placeholder-value', * // Required. Name of the workstation cluster to delete. * name: 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster', - * // Optional. If set, validate the request and preview the review, but do not apply it. + * // Optional. If set, validate the request and preview the result, but do not apply it. * validateOnly: 'placeholder-value', * }); * console.log(res.data); @@ -2248,7 +2292,9 @@ export namespace workstations_v1beta { * // "subnetwork": "my_subnetwork", * // "tags": {}, * // "uid": "my_uid", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "workstationAuthorizationUrl": "my_workstationAuthorizationUrl", + * // "workstationLaunchUrl": "my_workstationLaunchUrl" * // } * } * @@ -2534,7 +2580,7 @@ export namespace workstations_v1beta { * name: 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster', * // Required. Mask that specifies which fields in the workstation cluster should be updated. * updateMask: 'placeholder-value', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * * // Request body metadata @@ -2561,7 +2607,9 @@ export namespace workstations_v1beta { * // "subnetwork": "my_subnetwork", * // "tags": {}, * // "uid": "my_uid", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "workstationAuthorizationUrl": "my_workstationAuthorizationUrl", + * // "workstationLaunchUrl": "my_workstationLaunchUrl" * // } * }, * }); @@ -2677,7 +2725,7 @@ export namespace workstations_v1beta { */ parent?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; /** @@ -2704,7 +2752,7 @@ export namespace workstations_v1beta { */ name?: string; /** - * Optional. If set, validate the request and preview the review, but do not apply it. + * Optional. If set, validate the request and preview the result, but do not apply it. */ validateOnly?: boolean; } @@ -2746,7 +2794,7 @@ export namespace workstations_v1beta { */ updateMask?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; @@ -2803,7 +2851,7 @@ export namespace workstations_v1beta { * // Required. Parent resource name. * parent: * 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * // Required. ID to use for the workstation configuration. * workstationConfigId: 'placeholder-value', @@ -2822,6 +2870,7 @@ export namespace workstations_v1beta { * // "disableTcpConnections": false, * // "displayName": "my_displayName", * // "enableAuditAgent": false, + * // "enablePushingCredentials": false, * // "encryptionKey": {}, * // "ephemeralDirectories": [], * // "etag": "my_etag", @@ -2992,7 +3041,7 @@ export namespace workstations_v1beta { * force: 'placeholder-value', * // Required. Name of the workstation configuration to delete. * name: 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster/workstationConfigs/my-workstationConfig', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * }, * ); @@ -3152,6 +3201,7 @@ export namespace workstations_v1beta { * // "disableTcpConnections": false, * // "displayName": "my_displayName", * // "enableAuditAgent": false, + * // "enablePushingCredentials": false, * // "encryptionKey": {}, * // "ephemeralDirectories": [], * // "etag": "my_etag", @@ -3766,7 +3816,7 @@ export namespace workstations_v1beta { * name: 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster/workstationConfigs/my-workstationConfig', * // Required. Mask specifying which fields in the workstation configuration should be updated. * updateMask: 'placeholder-value', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * * // Request body metadata @@ -3783,6 +3833,7 @@ export namespace workstations_v1beta { * // "disableTcpConnections": false, * // "displayName": "my_displayName", * // "enableAuditAgent": false, + * // "enablePushingCredentials": false, * // "encryptionKey": {}, * // "ephemeralDirectories": [], * // "etag": "my_etag", @@ -4226,7 +4277,7 @@ export namespace workstations_v1beta { */ parent?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; /** @@ -4253,7 +4304,7 @@ export namespace workstations_v1beta { */ name?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; } @@ -4319,7 +4370,7 @@ export namespace workstations_v1beta { */ updateMask?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; @@ -4393,7 +4444,7 @@ export namespace workstations_v1beta { * // Required. Parent resource name. * parent: * 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster/workstationConfigs/my-workstationConfig', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * // Required. ID to use for the workstation. * workstationId: 'placeholder-value', @@ -4573,7 +4624,7 @@ export namespace workstations_v1beta { * etag: 'placeholder-value', * // Required. Name of the workstation to delete. * name: 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster/workstationConfigs/my-workstationConfig/workstations/my-workstation', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * }, * ); @@ -5482,13 +5533,13 @@ export namespace workstations_v1beta { * const res = * await workstations.projects.locations.workstationClusters.workstationConfigs.workstations.patch( * { - * // Optional. If set and the workstation configuration is not found, a new workstation configuration is created. In this situation, update_mask is ignored. + * // Optional. If set and the workstation is not found, a new workstation is created. In this situation, update_mask is ignored. * allowMissing: 'placeholder-value', * // Identifier. Full name of this workstation. * name: 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster/workstationConfigs/my-workstationConfig/workstations/my-workstation', - * // Required. Mask specifying which fields in the workstation configuration should be updated. + * // Required. Mask specifying which fields in the workstation should be updated. * updateMask: 'placeholder-value', - * // Optional. If set, validate the request and preview the review, but do not actually apply it. + * // Optional. If set, validate the request and preview the result, but do not actually apply it. * validateOnly: 'placeholder-value', * * // Request body metadata @@ -5626,6 +5677,160 @@ export namespace workstations_v1beta { } } + /** + * Pushes credentials to a running workstation on behalf of a user. Once complete, supported credential types (application_default_credentials) are made available to processes running in the user container. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/workstations.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const workstations = google.workstations('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await workstations.projects.locations.workstationClusters.workstationConfigs.workstations.pushCredentials( + * { + * // Required. Name of the workstation for which the credentials should be pushed. + * workstation: + * 'projects/my-project/locations/my-location/workstationClusters/my-workstationCluster/workstationConfigs/my-workstationConfig/workstations/my-workstation', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "applicationDefaultCredentials": {} + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @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. + */ + pushCredentials( + params: Params$Resource$Projects$Locations$Workstationclusters$Workstationconfigs$Workstations$Pushcredentials, + options: StreamMethodOptions + ): Promise>; + pushCredentials( + params?: Params$Resource$Projects$Locations$Workstationclusters$Workstationconfigs$Workstations$Pushcredentials, + options?: MethodOptions + ): Promise>; + pushCredentials( + params: Params$Resource$Projects$Locations$Workstationclusters$Workstationconfigs$Workstations$Pushcredentials, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + pushCredentials( + params: Params$Resource$Projects$Locations$Workstationclusters$Workstationconfigs$Workstations$Pushcredentials, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + pushCredentials( + params: Params$Resource$Projects$Locations$Workstationclusters$Workstationconfigs$Workstations$Pushcredentials, + callback: BodyResponseCallback + ): void; + pushCredentials(callback: BodyResponseCallback): void; + pushCredentials( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Workstationclusters$Workstationconfigs$Workstations$Pushcredentials + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Workstationclusters$Workstationconfigs$Workstations$Pushcredentials; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Workstationclusters$Workstationconfigs$Workstations$Pushcredentials; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://workstations.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+workstation}:pushCredentials').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['workstation'], + pathParams: ['workstation'], + 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. * @example @@ -6250,7 +6455,7 @@ export namespace workstations_v1beta { */ parent?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; /** @@ -6273,7 +6478,7 @@ export namespace workstations_v1beta { */ name?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; } @@ -6338,7 +6543,7 @@ export namespace workstations_v1beta { } export interface Params$Resource$Projects$Locations$Workstationclusters$Workstationconfigs$Workstations$Patch extends StandardParameters { /** - * Optional. If set and the workstation configuration is not found, a new workstation configuration is created. In this situation, update_mask is ignored. + * Optional. If set and the workstation is not found, a new workstation is created. In this situation, update_mask is ignored. */ allowMissing?: boolean; /** @@ -6346,11 +6551,11 @@ export namespace workstations_v1beta { */ name?: string; /** - * Required. Mask specifying which fields in the workstation configuration should be updated. + * Required. Mask specifying which fields in the workstation should be updated. */ updateMask?: string; /** - * Optional. If set, validate the request and preview the review, but do not actually apply it. + * Optional. If set, validate the request and preview the result, but do not actually apply it. */ validateOnly?: boolean; @@ -6359,6 +6564,17 @@ export namespace workstations_v1beta { */ requestBody?: Schema$Workstation; } + export interface Params$Resource$Projects$Locations$Workstationclusters$Workstationconfigs$Workstations$Pushcredentials extends StandardParameters { + /** + * Required. Name of the workstation for which the credentials should be pushed. + */ + workstation?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$PushCredentialsRequest; + } export interface Params$Resource$Projects$Locations$Workstationclusters$Workstationconfigs$Workstations$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. diff --git a/src/apis/youtube/v3.ts b/src/apis/youtube/v3.ts index 28c205dc674..94e06827190 100644 --- a/src/apis/youtube/v3.ts +++ b/src/apis/youtube/v3.ts @@ -2376,9 +2376,9 @@ export namespace youtube_v3 { */ hasVisualEffect?: boolean | null; /** - * The cost of the gift in jewels. + * The value of the gift in jewels. */ - jewelsCount?: number | null; + jewelsAmount?: number | null; /** * The BCP-47 language code of the gift. */ @@ -16093,6 +16093,8 @@ export namespace youtube_v3 { * const res = await youtube.tests.insert({ * externalChannelId: 'placeholder-value', * + * onBehalfOfContentOwnerChannel: 'placeholder-value', + * * part: 'placeholder-value', * * // Request body metadata @@ -16216,6 +16218,10 @@ export namespace youtube_v3 { * */ externalChannelId?: string; + /** + * + */ + onBehalfOfContentOwnerChannel?: string; /** * */ diff --git a/src/apis/youtubereporting/v1.ts b/src/apis/youtubereporting/v1.ts index 774f41a6d36..557d0b3205f 100644 --- a/src/apis/youtubereporting/v1.ts +++ b/src/apis/youtubereporting/v1.ts @@ -230,6 +230,10 @@ export namespace youtubereporting_v1 { * gdata */ fromFileName?: string | null; + /** + * gdata + */ + fromFusionId?: string | null; /** * gdata */ @@ -238,6 +242,10 @@ export namespace youtubereporting_v1 { * gdata */ fromUrlPath?: string | null; + /** + * gdata + */ + fusionIdDetectionMetadata?: string | null; } /** * gdata diff --git a/src/index.ts b/src/index.ts index 8b15192f14e..3b486b9ce34 100644 --- a/src/index.ts +++ b/src/index.ts @@ -42,6 +42,7 @@ export {adsensehost_v4_1} from './apis/adsensehost/v4.1'; export {adsenseplatform_v1} from './apis/adsenseplatform/v1'; export {adsenseplatform_v1alpha} from './apis/adsenseplatform/v1alpha'; export {advisorynotifications_v1} from './apis/advisorynotifications/v1'; +export {agentregistry_v1alpha} from './apis/agentregistry/v1alpha'; export {aiplatform_v1} from './apis/aiplatform/v1'; export {aiplatform_v1beta1} from './apis/aiplatform/v1beta1'; export {airquality_v1} from './apis/airquality/v1'; @@ -224,6 +225,8 @@ export {deploymentmanager_alpha} from './apis/deploymentmanager/alpha'; export {deploymentmanager_v2} from './apis/deploymentmanager/v2'; export {deploymentmanager_v2beta} from './apis/deploymentmanager/v2beta'; export {developerconnect_v1} from './apis/developerconnect/v1'; +export {developerknowledge_v1} from './apis/developerknowledge/v1'; +export {developerknowledge_v1alpha} from './apis/developerknowledge/v1alpha'; export {dfareporting_v3_3} from './apis/dfareporting/v3.3'; export {dfareporting_v3_4} from './apis/dfareporting/v3.4'; export {dfareporting_v3_5} from './apis/dfareporting/v3.5'; @@ -322,6 +325,7 @@ export {gmailpostmastertools_v1beta1} from './apis/gmailpostmastertools/v1beta1' export {gmailpostmastertools_v2} from './apis/gmailpostmastertools/v2'; export {groupsmigration_v1} from './apis/groupsmigration/v1'; export {groupssettings_v1} from './apis/groupssettings/v1'; +export {health_v4} from './apis/health/v4'; export {healthcare_v1} from './apis/healthcare/v1'; export {healthcare_v1beta1} from './apis/healthcare/v1beta1'; export {homegraph_v1} from './apis/homegraph/v1'; @@ -494,6 +498,7 @@ export {run_v1beta1} from './apis/run/v1beta1'; export {run_v2} from './apis/run/v2'; export {runtimeconfig_v1} from './apis/runtimeconfig/v1'; export {runtimeconfig_v1beta1} from './apis/runtimeconfig/v1beta1'; +export {saasservicemgmt_v1} from './apis/saasservicemgmt/v1'; export {saasservicemgmt_v1beta1} from './apis/saasservicemgmt/v1beta1'; export {safebrowsing_v4} from './apis/safebrowsing/v4'; export {safebrowsing_v5} from './apis/safebrowsing/v5';